diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..dccf841 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,19 @@ +root = true + +[*] +charset=utf-8 +end_of_line=lf +insert_final_newline=true +indent_style=space +indent_size=2 +max_line_length = 100 + +[*.{yml,yaml,json}] +indent_style = space +indent_size = 2 + +[*.md] +trim_trailing_whitespace = false + +[Makefile] +indent_style = tab diff --git a/.env b/.env new file mode 100644 index 0000000..1d989ec --- /dev/null +++ b/.env @@ -0,0 +1,8 @@ +# port +VITE_PORT = 3100 + +# spa-title +VITE_GLOB_APP_TITLE = 平台信息 + +# spa shortname +VITE_GLOB_APP_SHORT_NAME = platform_admin diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..073596f --- /dev/null +++ b/.env.development @@ -0,0 +1,42 @@ +# 是否开启mock数据,关闭时需要自行对接后台接口 +VITE_USE_MOCK = false + +# 资源公共路径,需要以 /开头和结尾 +VITE_PUBLIC_PATH = / + +# 本地开发代理,可以解决跨域及多地址代理 +# 如果接口地址匹配到,则会转发到http://localhost:3000,防止本地出现跨域问题 +# 可以有多个,注意多个不能换行,否则代理将会失效 +# VITE_PROXY = [["/basic-api","http://localhost:3000"],["/upload","http://localhost:3300/upload"]] +# VITE_PROXY=[["/api","https://vvbin.cn/test"]] + +# 是否删除Console.log +VITE_DROP_CONSOLE = false + +# 接口地址 +# 如果没有跨域问题,直接在这里配置即可 +VITE_GLOB_API_URL=http://192.168.0.108:8088 + +# 文件上传接口 可选 +VITE_GLOB_UPLOAD_URL = /system/oss/upload + +# 文件预览接口 可选 +VITE_GLOB_UPLOAD_PREVIEW = http://114.116.210.204:8013/onlinePreview?url= + +#外部url地址 +VITE_GLOB_OUT_LINK_URL = http://localhost:4100 + +#打印项目地址 +VITE_GLOB_PRINT_BASE_URL = http://vue.xjrsoft.com:3300 + +#IM URL 地址 +VITE_GLOB_IM_LINK_URL = http://192.168.0.162:8827 + +#调查问卷地址 +VITE_GLOB_QN_LINK_URL = http://192.168.0.108:3100 + +# 接口地址前缀,有些系统所有接口地址都有前缀,可以在这里统一加,方便切换 +VITE_GLOB_API_URL_PREFIX = + +# 是否启用官网代码 +VITE_GLOB_PRODUCTION = false diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..c070941 --- /dev/null +++ b/.env.production @@ -0,0 +1,47 @@ +# 是否开启mock +VITE_USE_MOCK = true + +# 资源公共路径,需要以 / 开头和结尾 +VITE_PUBLIC_PATH = / + +# 是否删除Console.log +VITE_DROP_CONSOLE = true + +# 打包是否输出gz|br文件 +# 可选: gzip | brotli | none +# 也可以有多个, 例如 ‘gzip’|'brotli',这样会同时生成 .gz和.br文件 +VITE_BUILD_COMPRESS = 'gzip' + +# 使用compress时是否删除源文件,默认false +VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE = false + +# 接口地址 可以由nginx做转发或者直接写实际地址 +VITE_GLOB_API_URL=https://vue.xjrsoft.com/prod-api + + +# 文件上传地址 可以由nginx做转发或者直接写实际地址 +VITE_GLOB_UPLOAD_URL = /system/oss/upload + +# 文件预览接口 可选 +VITE_GLOB_UPLOAD_PREVIEW = http://114.116.210.204:8012/onlinePreview?url= + +#外部url地址 +VITE_GLOB_OUT_LINK_URL = http://vue.xjrsoft.com:3200 + +#打印项目地址 +VITE_GLOB_PRINT_BASE_URL = http://114.116.210.204:3300 + +#IM URL 地址 +VITE_GLOB_IM_LINK_URL = http://localhost:8827 + +#调查问卷地址 +VITE_GLOB_QN_LINK_URL = http://vue.xjrsoft.com:3100 + +# 接口地址前缀,有些系统所有接口地址都有前缀,可以在这里统一加,方便切换 +VITE_GLOB_API_URL_PREFIX = + +# 打包是否开启pwa功能 +VITE_USE_PWA = false + +# 是否启用官网代码 +VITE_GLOB_PRODUCTION = true diff --git a/.env.test b/.env.test new file mode 100644 index 0000000..639d40c --- /dev/null +++ b/.env.test @@ -0,0 +1,48 @@ +NODE_ENV=production +# Whether to open mock +VITE_USE_MOCK = true + +# public path +VITE_PUBLIC_PATH = / + +# Delete console +VITE_DROP_CONSOLE = true + +# Whether to enable gzip or brotli compression +# Optional: gzip | brotli | none +# If you need multiple forms, you can use `,` to separate +VITE_BUILD_COMPRESS = 'none' + +# Whether to delete origin files when using compress, default false +VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE = false + +# Basic interface address SPA +VITE_GLOB_API_URL=/basic-api + +# File upload address, optional +# It can be forwarded by nginx or write the actual address directly +VITE_GLOB_UPLOAD_URL=/upload + +# 文件预览接口 可选 +VITE_GLOB_UPLOAD_PREVIEW = http://114.116.210.204:8012/onlinePreview?url= + +#外部url地址 +VITE_GLOB_OUT_LINK_URL = http://localhost:4100,http://localhost:8827 + +#打印项目地址 +VITE_GLOB_PRINT_BASE_URL = http://114.116.210.204:3300 + +#IM URL 地址 +VITE_GLOB_IM_LINK_URL = http://localhost:8827 + +# Interface prefix +VITE_GLOB_API_URL_PREFIX= + +# Whether to enable image compression +VITE_USE_IMAGEMIN= true + +# use pwa +VITE_USE_PWA = false + +# Is it compatible with older browsers +VITE_LEGACY = false diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..4a2c32c --- /dev/null +++ b/.eslintignore @@ -0,0 +1,16 @@ + +*.sh +node_modules +*.md +*.woff +*.ttf +.vscode +.idea +dist +/public +/docs +.husky +.local +/bin +Dockerfile +/src/components/Designer \ No newline at end of file diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..9aa3e10 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,76 @@ +module.exports = { + root: true, + env: { + browser: true, + node: true, + es6: true, + }, + parser: 'vue-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser', + ecmaVersion: 2020, + sourceType: 'module', + jsxPragma: 'React', + ecmaFeatures: { + jsx: true, + }, + }, + extends: [ + 'plugin:vue/vue3-recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:prettier/recommended', + ], + rules: { + 'vue/script-setup-uses-vars': 'error', + '@typescript-eslint/ban-ts-ignore': 'off', + '@typescript-eslint/explicit-function-return-type': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-var-requires': 'off', + '@typescript-eslint/no-empty-function': 'off', + 'vue/custom-event-name-casing': 'off', + 'no-use-before-define': 'off', + '@typescript-eslint/no-use-before-define': 'off', + '@typescript-eslint/ban-ts-comment': 'off', + '@typescript-eslint/ban-types': 'off', + '@typescript-eslint/no-non-null-assertion': 'off', + '@typescript-eslint/explicit-module-boundary-types': 'off', + '@typescript-eslint/no-unused-vars': [ + 'error', + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_', + }, + ], + 'no-unused-vars': [ + 'error', + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_', + }, + ], + 'space-before-function-paren': 'off', + + 'vue/attributes-order': 'off', + 'vue/one-component-per-file': 'off', + 'vue/html-closing-bracket-newline': 'off', + 'vue/max-attributes-per-line': 'off', + 'vue/multiline-html-element-content-newline': 'off', + 'vue/singleline-html-element-content-newline': 'off', + 'vue/attribute-hyphenation': 'off', + 'vue/require-default-prop': 'off', + 'vue/require-explicit-emits': 'off', + 'vue/html-self-closing': [ + 'error', + { + html: { + void: 'always', + normal: 'never', + component: 'always', + }, + svg: 'always', + math: 'always', + }, + ], + 'vue/multi-word-component-names': 'off', + }, +}; diff --git a/.gitignore b/.gitignore index e6922c4..5e62391 100644 --- a/.gitignore +++ b/.gitignore @@ -27,7 +27,14 @@ pnpm-debug.log* *.njsproj *.sln *.sw? - -package-lock.json +/package-lock.json +/src/views/dev +/src/api/dev +/pnpm-lock.yaml pnpm-lock.yaml - +jinayi +/pnpm-lock.yaml +/src/views/jianyi +/src/api/jianyi +/src/views/code/demo3 +.history \ No newline at end of file diff --git a/.gitpod.yml b/.gitpod.yml new file mode 100644 index 0000000..866381f --- /dev/null +++ b/.gitpod.yml @@ -0,0 +1,6 @@ +ports: + - port: 3344 + onOpen: open-preview +tasks: + - init: pnpm install + command: pnpm run dev diff --git a/.husky/commit-msg b/.husky/commit-msg new file mode 100644 index 0000000..567ff71 --- /dev/null +++ b/.husky/commit-msg @@ -0,0 +1,6 @@ +#!/bin/sh + +# shellcheck source=./_/husky.sh +. "$(dirname "$0")/_/husky.sh" + +npx --no-install commitlint --edit "$1" diff --git a/.husky/common.sh b/.husky/common.sh new file mode 100644 index 0000000..9d5129b --- /dev/null +++ b/.husky/common.sh @@ -0,0 +1,9 @@ +#!/bin/sh +command_exists () { + command -v "$1" >/dev/null 2>&1 +} + +# Workaround for Windows 10, Git Bash and Yarn +if command_exists winpty && test -t 1; then + exec < /dev/tty +fi diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100644 index 0000000..ba6eac1 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,9 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" +. "$(dirname "$0")/common.sh" + +[ -n "$CI" ] && exit 0 + + +# Format and submit code according to lintstagedrc.js configuration +pnpm run lint:lint-staged diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..f7e39e6 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,9 @@ +/dist/* +.local +.output.js +/node_modules/** + +**/*.svg +**/*.sh + +/public/* diff --git a/.stylelintignore b/.stylelintignore new file mode 100644 index 0000000..0517076 --- /dev/null +++ b/.stylelintignore @@ -0,0 +1,3 @@ +/dist/* +/public/* +public/* diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..94dc813 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,13 @@ +{ + "recommendations": [ + "johnsoncodehk.volar", + "dbaeumer.vscode-eslint", + "stylelint.vscode-stylelint", + "esbenp.prettier-vscode", + "mrmlnc.vscode-less", + "lokalise.i18n-ally", + "antfu.iconify", + "mikestead.dotenv", + "heybourn.headwind" + ] +} diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..72e95d0 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,13 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome", + "url": "http://localhost:3100", + "webRoot": "${workspaceFolder}/src", + "sourceMaps": true + } + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..58dc8c2 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,144 @@ +{ + "typescript.tsdk": "./node_modules/typescript/lib", + "volar.tsPlugin": true, + "volar.tsPluginStatus": false, + "npm.packageManager": "pnpm", + "editor.tabSize": 2, + "editor.defaultFormatter": "esbenp.prettier-vscode", + "files.eol": "\n", + "search.exclude": { + "**/node_modules": true, + "**/*.log": true, + "**/*.log*": true, + "**/bower_components": true, + "**/dist": true, + "**/elehukouben": true, + "**/.git": true, + "**/.gitignore": true, + "**/.svn": true, + "**/.DS_Store": true, + "**/.idea": true, + "**/.vscode": false, + "**/yarn.lock": true, + "**/tmp": true, + "out": true, + "dist": true, + "node_modules": true, + "CHANGELOG.md": true, + "examples": true, + "res": true, + "screenshots": true, + "yarn-error.log": true, + "**/.yarn": true + }, + "files.exclude": { + "**/.cache": true, + "**/.editorconfig": true, + "**/.eslintcache": true, + "**/bower_components": true, + "**/.idea": true, + "**/tmp": true, + "**/.git": true, + "**/.svn": true, + "**/.hg": true, + "**/CVS": true, + "**/.DS_Store": true + }, + "files.watcherExclude": { + "**/.git/objects/**": true, + "**/.git/subtree-cache/**": true, + "**/.vscode/**": true, + "**/node_modules/**": true, + "**/tmp/**": true, + "**/bower_components/**": true, + "**/dist/**": true, + "**/yarn.lock": true + }, + "stylelint.enable": true, + "stylelint.validate": ["css", "less", "postcss", "scss", "vue", "sass"], + "path-intellisense.mappings": { + "/@/": "${workspaceRoot}/src" + }, + "[javascriptreact]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[typescript]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[typescriptreact]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[html]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[css]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[less]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[scss]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "[markdown]": { + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "explicit" + }, + "[vue]": { + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "explicit", + "source.fixAll.stylelint": "explicit" + }, + "editor.defaultFormatter": "esbenp.prettier-vscode" + }, + "i18n-ally.localesPaths": ["src/locales/lang"], + "i18n-ally.keystyle": "nested", + "i18n-ally.sortKeys": true, + "i18n-ally.namespace": true, + "i18n-ally.pathMatcher": "{locale}/{namespaces}.{ext}", + "i18n-ally.enabledParsers": ["ts"], + "i18n-ally.sourceLanguage": "zh-CN", + "i18n-ally.displayLanguage": "zh-CN", + "i18n-ally.enabledFrameworks": ["vue", "react"], + "cSpell.words": [ + "vben", + "windi", + "browserslist", + "tailwindcss", + "esnext", + "antv", + "tinymce", + "qrcode", + "sider", + "pinia", + "sider", + "nprogress", + "INTLIFY", + "stylelint", + "esno", + "vitejs", + "sortablejs", + "mockjs", + "codemirror", + "iconify", + "commitlint", + "vditor", + "echarts", + "cropperjs", + "logicflow", + "vueuse", + "zxcvbn", + "lintstagedrc", + "brotli", + "tailwindcss", + "sider", + "pnpm", + "antd" + ], + "files.autoSave": "onFocusChange", + "editor.formatOnSave": true, + "eslint.codeActionsOnSave.rules": null, + "vue3snippets.enable-compile-vue-file-on-did-save-code": true +} diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ba2fe3b --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020-present, Vben + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..b140e02 --- /dev/null +++ b/README.md @@ -0,0 +1,103 @@ +## 技术选型 + +- 开发框架采用 [Vue3](https://v3.cn.vuejs.org/) 版本:3.3.4+ +- 构建工具采用 [Vite](https://vitejs.cn/) 版本: 4.3.8+ +- 包管理采用 [pnpm](https://www.pnpm.cn/)版本 6.20+ +- 多语言框架采用 [i18n](https://vue-i18n.intlify.dev/) 版本 9.2.2 +- ui 框架采用 [Ant-Design-Vue](https://2x.antdv.com/docs/vue/introduce-cn/) 版本:3.0+ +- http 请求库 采用 [axios](https://www.axios-http.cn/) 版本 1.4.0+ +- 代码计算库 采用 [jsbi-calculator](https://www.npmjs.com/package/jsbi-calculator) 版本 0.3.6+ +- 框架开发语言采用 [TypeScript](https://www.typescriptlang.org/) 版本 5.0.4+ +- 工作流组件采用 [bpmn.js](https://bpmn.io/toolkit/bpmn-js/) 版本 8.7+ +- 时间工具库采用 [day.js](https://bpmn.io/toolkit/bpmn-js/) 版本 1.11.0+ +- 状态管理库采用 [pinia ](https://https://pinia.vuejs.org/)版本 2.0.12 + +- 图表库采用 [echarts](https://echarts.apache.org/zh/index.html)版本 5.3.1+ +- excel 操作库采用 [exceljs](https://github.com/exceljs/) 版本 4.3.0+ +- 工具类采用 [lodash-es](https://www.lodashjs.com/) 版本 4.17.21+ +- 工具类采用 [vueuse](https://vueuse.org/) 版本 10.1.2+ +- 打印工具类库 采用 [printjs](https://printjs.crabbly.com/) 版本 1.6.0+ +- 二维码类库 采用 [qrcode](https://www.qrcode.com/zh/) 版本 1.5.0+ +- 拖拽组件 采用 [vuedraggable](https://www.npmjs.com/package/vue-draggable) 版本 4.1.0+ +- 富文本编辑器 采用 [wangeditor](https://www.wangeditor.com/) 版本 4.6.3+ +- 项目 git 提交管理库 采用 [husky](https://github.com/githusky) 版本 8.0.3+ +- 项目框架结构采用 [Vben](https://vvbin.cn/doc-next/guide/introduction.html) 作为基础,搭建而成。 +- 其他技术及版本 以 Vben 文档 以及 package.json 做参考 + +## 特性 + +- **最新技术栈**:使用 Vue3/vite3 等前端前沿技术开发 +- **TypeScript**: 应用程序级 JavaScript 的语言 +- **主题**:可配置的主题 +- **国际化**:内置完善的国际化方案 +- **Mock 数据** 内置 Mock 数据方案 +- **权限** 内置完善的动态路由权限生成方案 +- **组件** 二次封装了多个常用的组件 + +## 准备 + +- [node](http://nodejs.org/) 和 [git](https://git-scm.com/) -项目开发环境 +- [Vite](https://vitejs.dev/) - 熟悉 vite 特性 +- [Vue3](https://v3.vuejs.org/) - 熟悉 Vue 基础语法 +- [TypeScript](https://www.typescriptlang.org/) - 熟悉`TypeScript`基本语法 +- [Es6+](http://es6.ruanyifeng.com/) - 熟悉 es6 基本语法 +- [Vue-Router-Next](https://next.router.vuejs.org/) - 熟悉 vue-router 基本使用 +- [Ant-Design-Vue](https://2x.antdv.com/docs/vue/introduce-cn/) - ui 基本使用 +- [Mock.js](https://github.com/nuysoft/Mock) - mockjs 基本语法 + +## 安装使用 + + + +- 安装依赖 + +```sh +cd xjrsoft-vue3 + +pnpm install + +``` + +- 运行 + +```sh +pnpm dev +``` + +- 打包 + +```sh +pnpm build +``` + +
+ +## Git 贡献提交规范 + +- 参考 [vue](https://github.com/vuejs/vue/blob/dev/.github/COMMIT_CONVENTION.md) 规范 [Angular](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular)) + - `feat` 增加新功能 + - `fix` 修复问题/BUG + - `style` 代码风格相关无影响运行结果的 + - `perf` 优化/性能提升 + - `refactor` 重构 + - `revert` 撤销修改 + - `test` 测试相关 + - `docs` 文档/注释 + - `chore` 依赖更新/脚手架配置修改等 + - `workflow` 工作流改进 + - `ci` 持续集成 + - `types` 类型定义文件更改 + - `wip` 开发中 + +## 相关仓库 + +- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - 用于本地及开发环境数据 mock +- [vite-plugin-html](https://github.com/anncwb/vite-plugin-html) - 用于 html 模版转换及压缩 +- [vite-plugin-style-import](https://github.com/anncwb/vite-plugin-style-import) - 用于组件库样式按需引入 +- [vite-plugin-theme](https://github.com/anncwb/vite-plugin-theme) - 用于在线切换主题色等颜色相关配置 +- [vite-plugin-imagemin](https://github.com/anncwb/vite-plugin-imagemin) - 用于打包压缩图片资源 +- [vite-plugin-compression](https://github.com/anncwb/vite-plugin-compression) - 用于打包输出.gz|.brotil 文件 +- [vite-plugin-svg-icons](https://github.com/anncwb/vite-plugin-svg-icons) - 用于快速生成 svg 雪碧图 diff --git a/alias.js b/alias.js new file mode 100644 index 0000000..51b682e --- /dev/null +++ b/alias.js @@ -0,0 +1,33 @@ +import moment from './node_modules/moment'; + +export const { + fn, + min, + max, + now, + utc, + unix, + months, + isDate, + locale, + invalid, + duration, + isMoment, + weekdays, + parseZone, + localeData, + isDuration, + monthsShort, + weekdaysMin, + defineLocale, + updateLocale, + locales, + weekdaysShort, + normalizeUnits, + relativeTimeRounding, + relativeTimeThreshold, + calendarFormat, + ISO_8601, +} = moment; + +export default moment; diff --git a/build/config/themeConfig.ts b/build/config/themeConfig.ts new file mode 100644 index 0000000..c95dabb --- /dev/null +++ b/build/config/themeConfig.ts @@ -0,0 +1,79 @@ +import { generate } from '@ant-design/colors'; + +export const primaryColor = '#1C8DFF'; + +export const darkMode = 'light'; + +type Fn = (...arg: any) => any; + +type GenerateTheme = 'default' | 'dark'; + +export interface GenerateColorsParams { + mixLighten: Fn; + mixDarken: Fn; + tinycolor: any; + color?: string; +} + +export function generateAntColors(color: string, theme: GenerateTheme = 'default') { + return generate(color, { + theme, + }); +} + +export function getThemeColors(color?: string) { + const tc = color || primaryColor; + const lightColors = generateAntColors(tc); + const primary = lightColors[5]; + const modeColors = generateAntColors(primary, 'dark'); + + return [...lightColors, ...modeColors]; +} + +export function generateColors({ + color = primaryColor, + mixLighten, + mixDarken, + tinycolor, +}: GenerateColorsParams) { + const arr = new Array(19).fill(0); + const lightens = arr.map((_t, i) => { + return mixLighten(color, i / 5); + }); + + const darkens = arr.map((_t, i) => { + return mixDarken(color, i / 5); + }); + + const alphaColors = arr.map((_t, i) => { + return tinycolor(color) + .setAlpha(i / 20) + .toRgbString(); + }); + + const shortAlphaColors = alphaColors.map((item) => item.replace(/\s/g, '').replace(/0\./g, '.')); + + const tinycolorLightens = arr + .map((_t, i) => { + return tinycolor(color) + .lighten(i * 5) + .toHexString(); + }) + .filter((item) => item !== '#ffffff'); + + const tinycolorDarkens = arr + .map((_t, i) => { + return tinycolor(color) + .darken(i * 5) + .toHexString(); + }) + .filter((item) => item !== '#000000'); + return [ + ...lightens, + ...darkens, + ...alphaColors, + ...shortAlphaColors, + ...tinycolorDarkens, + ...tinycolorLightens, + ].filter((item) => !item.includes('-')); +} diff --git a/build/constant.ts b/build/constant.ts new file mode 100644 index 0000000..2c6119c --- /dev/null +++ b/build/constant.ts @@ -0,0 +1,6 @@ +/** + * The name of the configuration file entered in the production environment + */ +export const GLOB_CONFIG_FILE_NAME = '_app.config.js'; + +export const OUTPUT_DIR = 'dist'; diff --git a/build/generate/generateModifyVars.ts b/build/generate/generateModifyVars.ts new file mode 100644 index 0000000..f434ef8 --- /dev/null +++ b/build/generate/generateModifyVars.ts @@ -0,0 +1,39 @@ +import { generateAntColors, primaryColor } from '../config/themeConfig'; +import { getThemeVariables } from 'ant-design-vue/dist/theme'; +import { resolve } from 'path'; + +/** + * less global variable + */ +export function generateModifyVars(dark = false) { + const palettes = generateAntColors(primaryColor); + const primary = palettes[5]; + + const primaryColorObj: Record = {}; + + for (let index = 0; index < 10; index++) { + primaryColorObj[`primary-${index + 1}`] = palettes[index]; + } + + const modifyVars = getThemeVariables({ dark }); + return { + ...modifyVars, + // Used for global import to avoid the need to import each style file separately + // reference: Avoid repeated references + hack: `${modifyVars.hack} @import (reference) "${resolve('src/design/config.less')}";`, + 'primary-color': primary, + ...primaryColorObj, + 'info-color': primary, + 'processing-color': primary, + 'success-color': '#55D187', // Success color + 'error-color': '#ED6F6F', // False color + 'warning-color': '#EFBD47', // Warning color + + 'clear-color': '#ff8989', //清空以及删除 颜色 + //'border-color-base': '#EEEEEE', + 'font-size-base': '14px', // Main font size + 'border-radius-base': '2px', // Component/float fillet + 'link-color': primary, // Link color + 'app-content-background': '#fafafa', // Link color + }; +} diff --git a/build/generate/icon/index.ts b/build/generate/icon/index.ts new file mode 100644 index 0000000..77403ba --- /dev/null +++ b/build/generate/icon/index.ts @@ -0,0 +1,72 @@ +import path from 'path'; +import fs from 'fs-extra'; +import inquirer from 'inquirer'; +import colors from 'picocolors'; +import pkg from '../../../package.json'; + +async function generateIcon() { + const dir = path.resolve(process.cwd(), 'node_modules/@iconify/json'); + + const raw = await fs.readJSON(path.join(dir, 'collections.json')); + + const collections = Object.entries(raw).map(([id, v]) => ({ + ...(v as any), + id, + })); + + const choices = collections.map((item) => ({ key: item.id, value: item.id, name: item.name })); + + inquirer + .prompt([ + { + type: 'list', + name: 'useType', + choices: [ + { key: 'local', value: 'local', name: 'Local' }, + { key: 'onLine', value: 'onLine', name: 'OnLine' }, + ], + message: 'How to use icons?', + }, + { + type: 'list', + name: 'iconSet', + choices: choices, + message: 'Select the icon set that needs to be generated?', + }, + { + type: 'input', + name: 'output', + message: 'Select the icon set that needs to be generated?', + default: 'src/components/Icon/data', + }, + ]) + .then(async (answers) => { + const { iconSet, output, useType } = answers; + const outputDir = path.resolve(process.cwd(), output); + await fs.ensureDir(outputDir); + const genCollections = collections.filter((item) => [iconSet].includes(item.id)); + const prefixSet: string[] = []; + for (const info of genCollections) { + const data = await fs.readJSON(path.join(dir, 'json', `${info.id}.json`)); + if (data) { + const { prefix } = data; + const isLocal = useType === 'local'; + const icons = Object.keys(data.icons).map( + (item) => `${isLocal ? prefix + ':' : ''}${item}`, + ); + + await fs.writeFileSync( + path.join(output, `icons.data.ts`), + `export default ${isLocal ? JSON.stringify(icons) : JSON.stringify({ prefix, icons })}`, + ); + prefixSet.push(prefix); + } + } + await fs.emptyDir(path.join(process.cwd(), 'node_modules/.vite')); + console.log( + `✨ ${colors.cyan(`[${pkg.name}]`)}` + ' - Icon generated successfully:' + `[${prefixSet}]`, + ); + }); +} + +generateIcon(); diff --git a/build/getConfigFileName.ts b/build/getConfigFileName.ts new file mode 100644 index 0000000..d61cd41 --- /dev/null +++ b/build/getConfigFileName.ts @@ -0,0 +1,9 @@ +/** + * Get the configuration file variable name + * @param env + */ +export const getConfigFileName = (env: Record) => { + return `__PRODUCTION__${env.VITE_GLOB_APP_SHORT_NAME || '__APP'}__CONF__` + .toUpperCase() + .replace(/\s/g, ''); +}; diff --git a/build/script/buildConf.ts b/build/script/buildConf.ts new file mode 100644 index 0000000..0c8089c --- /dev/null +++ b/build/script/buildConf.ts @@ -0,0 +1,47 @@ +/** + * Generate additional configuration files when used for packaging. The file can be configured with some global variables, so that it can be changed directly externally without repackaging + */ +import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant'; +import fs, { writeFileSync } from 'fs-extra'; +import colors from 'picocolors'; + +import { getEnvConfig, getRootPath } from '../utils'; +import { getConfigFileName } from '../getConfigFileName'; + +import pkg from '../../package.json'; + +interface CreateConfigParams { + configName: string; + config: any; + configFileName?: string; +} + +function createConfig(params: CreateConfigParams) { + const { configName, config, configFileName } = params; + try { + const windowConf = `window.${configName}`; + // Ensure that the variable will not be modified + let configStr = `${windowConf}=${JSON.stringify(config)};`; + configStr += ` + Object.freeze(${windowConf}); + Object.defineProperty(window, "${configName}", { + configurable: false, + writable: false, + }); + `.replace(/\s/g, ''); + + fs.mkdirp(getRootPath(OUTPUT_DIR)); + writeFileSync(getRootPath(`${OUTPUT_DIR}/${configFileName}`), configStr); + + console.log(colors.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`); + console.log(colors.gray(OUTPUT_DIR + '/' + colors.green(configFileName)) + '\n'); + } catch (error) { + console.log(colors.red('configuration file configuration file failed to package:\n' + error)); + } +} + +export function runBuildConfig() { + const config = getEnvConfig(); + const configFileName = getConfigFileName(config); + createConfig({ config, configName: configFileName, configFileName: GLOB_CONFIG_FILE_NAME }); +} diff --git a/build/script/postBuild.ts b/build/script/postBuild.ts new file mode 100644 index 0000000..42635d8 --- /dev/null +++ b/build/script/postBuild.ts @@ -0,0 +1,23 @@ +// #!/usr/bin/env node + +import { runBuildConfig } from './buildConf'; +import colors from 'picocolors'; + +import pkg from '../../package.json'; + +export const runBuild = async () => { + try { + const argvList = process.argv.splice(2); + + // Generate configuration file + if (!argvList.includes('disabled-config')) { + runBuildConfig(); + } + + console.log(`✨ ${colors.cyan(`[${pkg.name}]`)}` + ' - build successfully!'); + } catch (error) { + console.log(colors.red('vite build error:\n' + error)); + process.exit(1); + } +}; +runBuild(); diff --git a/build/utils.ts b/build/utils.ts new file mode 100644 index 0000000..94a5e17 --- /dev/null +++ b/build/utils.ts @@ -0,0 +1,95 @@ +import fs from 'fs'; +import path from 'path'; +import dotenv from 'dotenv'; + +export function isDevFn(mode: string): boolean { + return mode === 'development'; +} + +export function isProdFn(mode: string): boolean { + return mode === 'production'; +} + +/** + * Whether to generate package preview + */ +export function isReportMode(): boolean { + return process.env.REPORT === 'true'; +} + +// Read all environment variable configuration files to process.env +export function wrapperEnv(envConf: Recordable): ViteEnv { + const ret: any = {}; + + for (const envName of Object.keys(envConf)) { + let realName = envConf[envName].replace(/\\n/g, '\n'); + realName = realName === 'true' ? true : realName === 'false' ? false : realName; + + if (envName === 'VITE_PORT') { + realName = Number(realName); + } + if (envName === 'VITE_PROXY' && realName) { + try { + realName = JSON.parse(realName.replace(/'/g, '"')); + } catch (error) { + realName = ''; + } + } + ret[envName] = realName; + // if (typeof realName === 'string') { + // process.env[envName] = realName; + // } else if (typeof realName === 'object') { + // process.env[envName] = JSON.stringify(realName); + // } + } + return ret; +} + +/** + * 获取当前环境下生效的配置文件名 + */ +function getConfFiles() { + const script = process.env.npm_lifecycle_script; + const reg = new RegExp('--mode ([a-z_\\d]+)'); + const result = reg.exec(script as string) as any; + if (result) { + const mode = result[1] as string; + return ['.env', `.env.${mode}`]; + } + return ['.env', '.env.production']; +} + +/** + * Get the environment variables starting with the specified prefix + * @param match prefix + * @param confFiles ext + */ +export function getEnvConfig(match = 'VITE_GLOB_', confFiles = getConfFiles()) { + let envConfig = {}; + confFiles.forEach((item) => { + try { + const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item))); + envConfig = { ...envConfig, ...env }; + } catch (e) { + console.error(`Error in parsing ${item}`, e); + } + }); + if (match.length > 255) { + throw new Error('字符长度超出255个字符'); + } + const reg = new RegExp(`^(${match})`); + Object.keys(envConfig).forEach((key) => { + if (!reg.test(key)) { + Reflect.deleteProperty(envConfig, key); + } + }); + return envConfig; +} + +/** + * Get user root directory + * @param dir file path + */ +export function getRootPath(...dir: string[]) { + return path.resolve(process.cwd(), ...dir); +} diff --git a/build/vite/optimize.ts b/build/vite/optimize.ts new file mode 100644 index 0000000..30c809f --- /dev/null +++ b/build/vite/optimize.ts @@ -0,0 +1,35 @@ +const include = [ + 'qs', + 'vue', + 'less', + 'axios', + 'pinia', + 'dayjs', + 'qrcode', + 'echarts', + 'intro.js', + 'cropperjs', + 'crypto-js', + 'lodash-es', + 'nprogress', + 'vue-i18n', + 'vue-types', + 'vue-router', + 'sortablejs', + 'echarts/core', + 'echarts/charts', + 'echarts/components', + 'echarts/renderers', + '@vueuse/core', + '@zxcvbn-ts/core', + '@iconify/iconify', + 'ant-design-vue', + 'ant-design-vue/es/style', + 'ant-design-vue/es/locale/zh_CN', + 'ant-design-vue/es/locale/en_US', + 'vite-plugin-windicss', +]; + +const exclude = ['@iconify/json']; + +export { include, exclude }; diff --git a/build/vite/plugin/compress.ts b/build/vite/plugin/compress.ts new file mode 100644 index 0000000..ff4f631 --- /dev/null +++ b/build/vite/plugin/compress.ts @@ -0,0 +1,35 @@ +/** + * Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated + * https://github.com/anncwb/vite-plugin-compression + */ +import type { PluginOption } from 'vite'; +import compressPlugin from 'vite-plugin-compression'; + +export function configCompressPlugin( + compress: 'gzip' | 'brotli' | 'none', + deleteOriginFile = false, +): PluginOption | PluginOption[] { + const compressList = compress.split(','); + + const plugins: PluginOption[] = []; + + if (compressList.includes('gzip')) { + plugins.push( + compressPlugin({ + ext: '.gz', + deleteOriginFile, + }), + ); + } + + if (compressList.includes('brotli')) { + plugins.push( + compressPlugin({ + ext: '.br', + algorithm: 'brotliCompress', + deleteOriginFile, + }), + ); + } + return plugins; +} diff --git a/build/vite/plugin/html.ts b/build/vite/plugin/html.ts new file mode 100644 index 0000000..9146687 --- /dev/null +++ b/build/vite/plugin/html.ts @@ -0,0 +1,40 @@ +/** + * Plugin to minimize and use ejs template syntax in index.html. + * https://github.com/xingyuv/vite-vue-plugin-html + */ +import type { PluginOption } from 'vite'; +import { createHtmlPlugin } from 'vite-vue-plugin-html'; +import pkg from '../../../package.json'; +import { GLOB_CONFIG_FILE_NAME } from '../../constant'; + +export function configHtmlPlugin(env: ViteEnv, isBuild: boolean) { + const { VITE_GLOB_APP_TITLE, VITE_PUBLIC_PATH } = env; + + const path = VITE_PUBLIC_PATH.endsWith('/') ? VITE_PUBLIC_PATH : `${VITE_PUBLIC_PATH}/`; + + const getAppConfigSrc = () => { + return `${path || '/'}${GLOB_CONFIG_FILE_NAME}?v=${pkg.version}-${new Date().getTime()}`; + }; + + const htmlPlugin: PluginOption[] = createHtmlPlugin({ + minify: isBuild, + inject: { + // Inject data into ejs template + data: { + title: VITE_GLOB_APP_TITLE, + }, + // Embed the generated app.config.js file + tags: isBuild + ? [ + { + tag: 'script', + attrs: { + src: getAppConfigSrc(), + }, + }, + ] + : [], + }, + }); + return htmlPlugin; +} diff --git a/build/vite/plugin/imagemin.ts b/build/vite/plugin/imagemin.ts new file mode 100644 index 0000000..d10f869 --- /dev/null +++ b/build/vite/plugin/imagemin.ts @@ -0,0 +1,34 @@ +// // Image resource files used to compress the output of the production environment +// // https://github.com/anncwb/vite-plugin-imagemin +// import viteImagemin from 'vite-plugin-imagemin'; + +// export function configImageminPlugin() { +// const plugin = viteImagemin({ +// gifsicle: { +// optimizationLevel: 7, +// interlaced: false, +// }, +// optipng: { +// optimizationLevel: 7, +// }, +// mozjpeg: { +// quality: 20, +// }, +// pngquant: { +// quality: [0.8, 0.9], +// speed: 4, +// }, +// svgo: { +// plugins: [ +// { +// name: 'removeViewBox', +// }, +// { +// name: 'removeEmptyAttrs', +// active: false, +// }, +// ], +// }, +// }); +// return plugin; +// } diff --git a/build/vite/plugin/index.ts b/build/vite/plugin/index.ts new file mode 100644 index 0000000..8bfe45f --- /dev/null +++ b/build/vite/plugin/index.ts @@ -0,0 +1,70 @@ +import { PluginOption } from 'vite'; +import vue from '@vitejs/plugin-vue'; +import vueJsx from '@vitejs/plugin-vue-jsx'; +import progress from 'vite-plugin-progress'; +import windiCSS from 'vite-plugin-windicss'; +import purgeIcons from 'vite-plugin-purge-icons'; +import VitePluginCertificate from 'vite-plugin-mkcert'; +import vueSetupExtend from 'unplugin-vue-setup-extend-plus/vite'; +import { configPwaConfig } from './pwa'; +import { configMockPlugin } from './mock'; +import { configHtmlPlugin } from './html'; +import { configCompressPlugin } from './compress'; +import { configStyleImportPlugin } from './styleImport'; +import { configVisualizerConfig } from './visualizer'; +import { configThemePlugin } from './theme'; +import { configSvgIconsPlugin } from './svgSprite'; + +export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) { + const { VITE_USE_MOCK, VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE } = viteEnv; + + const vitePlugins: (PluginOption | PluginOption[])[] = [ + // have to + vue(), + // have to + vueJsx(), + // 打包进度条 + progress(), + // support name + vueSetupExtend({}), + VitePluginCertificate({ + source: 'coding', + }), + ]; + + // windiCSS + vitePlugins.push(windiCSS()); + + // vite-plugin-html + vitePlugins.push(configHtmlPlugin(viteEnv, isBuild)); + + // vite-plugin-svg-icons + vitePlugins.push(configSvgIconsPlugin(isBuild)); + + // vite-plugin-mock + VITE_USE_MOCK && vitePlugins.push(configMockPlugin(isBuild)); + + // vite-plugin-purge-icons + vitePlugins.push(purgeIcons()); + + // rollup-plugin-visualizer + vitePlugins.push(configVisualizerConfig()); + + // vite-plugin-vben-theme + vitePlugins.push(configThemePlugin(isBuild)); + + // The following plugins only work in the production environment + if (isBuild) { + // vite-vue-plugin-style-import + vitePlugins.push(configStyleImportPlugin(isBuild)); + // rollup-plugin-gzip + vitePlugins.push( + configCompressPlugin(VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE), + ); + + // vite-plugin-pwa + vitePlugins.push(configPwaConfig(viteEnv)); + } + + return vitePlugins; +} diff --git a/build/vite/plugin/mock.ts b/build/vite/plugin/mock.ts new file mode 100644 index 0000000..d241e26 --- /dev/null +++ b/build/vite/plugin/mock.ts @@ -0,0 +1,19 @@ +/** + * Mock plugin for development and production. + * https://github.com/anncwb/vite-plugin-mock + */ +import { viteMockServe } from 'vite-plugin-mock'; + +export function configMockPlugin(isBuild: boolean) { + return viteMockServe({ + ignore: /^\_/, + mockPath: 'mock', + localEnabled: !isBuild, + prodEnabled: isBuild, + injectCode: ` + import { setupProdMockServer } from '../mock/_createProductionServer'; + + setupProdMockServer(); + `, + }); +} diff --git a/build/vite/plugin/pwa.ts b/build/vite/plugin/pwa.ts new file mode 100644 index 0000000..90ef5bc --- /dev/null +++ b/build/vite/plugin/pwa.ts @@ -0,0 +1,33 @@ +/** + * Zero-config PWA for Vite + * https://github.com/antfu/vite-plugin-pwa + */ +import { VitePWA } from 'vite-plugin-pwa'; + +export function configPwaConfig(env: ViteEnv) { + const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env; + + if (VITE_USE_PWA) { + // vite-plugin-pwa + const pwaPlugin = VitePWA({ + manifest: { + name: VITE_GLOB_APP_TITLE, + short_name: VITE_GLOB_APP_SHORT_NAME, + icons: [ + { + src: './resource/img/pwa-192x192.png', + sizes: '192x192', + type: 'image/png', + }, + { + src: './resource/img/pwa-512x512.png', + sizes: '512x512', + type: 'image/png', + }, + ], + }, + }); + return pwaPlugin; + } + return []; +} diff --git a/build/vite/plugin/styleImport.ts b/build/vite/plugin/styleImport.ts new file mode 100644 index 0000000..f465815 --- /dev/null +++ b/build/vite/plugin/styleImport.ts @@ -0,0 +1,82 @@ +/** + * Introduces component library styles on demand. + * https://github.com/xingyuv/vite-vue-plugin-style-import + */ +import { createStyleImportPlugin } from 'vite-plugin-style-import'; + +export function configStyleImportPlugin(_isBuild: boolean) { + if (!_isBuild) { + return []; + } + const styleImportPlugin = createStyleImportPlugin({ + libs: [ + { + libraryName: 'ant-design-vue', + esModule: true, + resolveStyle: (name) => { + // 这里是无需额外引入样式文件的“子组件”列表 + const ignoreList = [ + 'anchor-link', + 'sub-menu', + 'menu-item', + 'menu-divider', + 'menu-item-group', + 'breadcrumb-item', + 'breadcrumb-separator', + 'form-item', + 'step', + 'select-option', + 'select-opt-group', + 'card-grid', + 'card-meta', + 'collapse-panel', + 'descriptions-item', + 'list-item', + 'list-item-meta', + 'table-column', + 'table-column-group', + 'tab-pane', + 'tab-content', + 'timeline-item', + 'tree-node', + 'skeleton-input', + 'skeleton-avatar', + 'skeleton-title', + 'skeleton-paragraph', + 'skeleton-image', + 'skeleton-button', + ]; + // 这里是需要额外引入样式的子组件列表 + // 单独引入子组件时需引入组件样式,否则会在打包后导致子组件样式丢失 + const replaceList = { + textarea: 'input', + 'typography-text': 'typography', + 'typography-title': 'typography', + 'typography-paragraph': 'typography', + 'typography-link': 'typography', + 'dropdown-button': 'dropdown', + 'input-password': 'input', + 'input-search': 'input', + 'input-group': 'input', + 'radio-group': 'radio', + 'checkbox-group': 'checkbox', + 'layout-sider': 'layout', + 'layout-content': 'layout', + 'layout-footer': 'layout', + 'layout-header': 'layout', + 'month-picker': 'date-picker', + 'range-picker': 'date-picker', + 'image-preview-group': 'image', + }; + + return ignoreList.includes(name) + ? '' + : replaceList.hasOwnProperty(name) + ? `ant-design-vue/es/${replaceList[name]}/style/index` + : `ant-design-vue/es/${name}/style/index`; + }, + }, + ], + }); + return styleImportPlugin; +} diff --git a/build/vite/plugin/svgSprite.ts b/build/vite/plugin/svgSprite.ts new file mode 100644 index 0000000..61f637f --- /dev/null +++ b/build/vite/plugin/svgSprite.ts @@ -0,0 +1,17 @@ +/** + * Vite Plugin for fast creating SVG sprites. + * https://github.com/anncwb/vite-plugin-svg-icons + */ + +import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'; +import path from 'path'; + +export function configSvgIconsPlugin(isBuild: boolean) { + const svgIconsPlugin = createSvgIconsPlugin({ + iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')], + svgoOptions: isBuild, + // default + symbolId: 'icon-[dir]-[name]', + }); + return svgIconsPlugin; +} diff --git a/build/vite/plugin/theme.ts b/build/vite/plugin/theme.ts new file mode 100644 index 0000000..1536559 --- /dev/null +++ b/build/vite/plugin/theme.ts @@ -0,0 +1,89 @@ +/** + * Vite plugin for website theme color switching + * https://github.com/xingyuv/vite-plugin-theme + */ +import type { PluginOption } from 'vite'; +import path from 'path'; +import { + viteThemePlugin, + antdDarkThemePlugin, + mixLighten, + mixDarken, + tinycolor, +} from 'vite-vue-plugin-theme'; +import { getThemeColors, generateColors } from '../../config/themeConfig'; +import { generateModifyVars } from '../../generate/generateModifyVars'; + +export function configThemePlugin(isBuild: boolean): PluginOption[] { + const colors = generateColors({ + mixDarken, + mixLighten, + tinycolor, + }); + const plugin = [ + viteThemePlugin({ + resolveSelector: (s) => { + s = s.trim(); + switch (s) { + case '.ant-steps-item-process .ant-steps-item-icon > .ant-steps-icon': + return '.ant-steps-item-icon > .ant-steps-icon'; + case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)': + case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover': + case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active': + return s; + case '.ant-steps-item-icon > .ant-steps-icon': + return s; + case '.ant-select-item-option-selected:not(.ant-select-item-option-disabled)': + return s; + default: + if (s.indexOf('.ant-btn') >= -1) { + // 按钮被重新定制过,需要过滤掉class防止覆盖 + return s; + } + } + return s.startsWith('[data-theme') ? s : `[data-theme] ${s}`; + }, + colorVariables: [...getThemeColors(), ...colors], + }), + antdDarkThemePlugin({ + preloadFiles: [ + path.resolve(process.cwd(), 'node_modules/ant-design-vue/dist/antd.less'), + //path.resolve(process.cwd(), 'node_modules/ant-design-vue/dist/antd.dark.less'), + path.resolve(process.cwd(), 'src/design/index.less'), + ], + filter: (id) => (isBuild ? !id.endsWith('antd.less') : true), + // extractCss: false, + darkModifyVars: { + ...generateModifyVars(true), + 'text-color': '#c9d1d9', + 'primary-1': 'rgb(255 255 255 / 8%)', + 'text-color-base': '#333', + 'component-background': '#151515', + 'heading-color': 'rgb(255 255 255 / 65%)', + // black: '#0e1117', + // #8b949e + 'text-color-secondary': '#8b949e', + 'border-color-base': '#303030', + // 'border-color-split': '#30363d', + 'item-active-bg': '#111b26', + 'app-content-background': '#1e1e1e', + 'tree-node-selected-bg': '#11263c', + + 'alert-success-border-color': '#274916', + 'alert-success-bg-color': '#162312', + 'alert-success-icon-color': '#49aa19', + 'alert-info-border-color': '#153450', + 'alert-info-bg-color': '#111b26', + 'alert-info-icon-color': '#177ddc', + 'alert-warning-border-color': '#594214', + 'alert-warning-bg-color': '#2b2111', + 'alert-warning-icon-color': '#d89614', + 'alert-error-border-color': '#58181c', + 'alert-error-bg-color': '#2a1215', + 'alert-error-icon-color': '#a61d24', + }, + }), + ]; + + return plugin as unknown as PluginOption[]; +} diff --git a/build/vite/plugin/visualizer.ts b/build/vite/plugin/visualizer.ts new file mode 100644 index 0000000..75d4451 --- /dev/null +++ b/build/vite/plugin/visualizer.ts @@ -0,0 +1,17 @@ +/** + * Package file volume analysis + */ +import visualizer from 'rollup-plugin-visualizer'; +import { isReportMode } from '../../utils'; + +export function configVisualizerConfig() { + if (isReportMode()) { + return visualizer({ + filename: './node_modules/.cache/visualizer/stats.html', + open: true, + gzipSize: true, + brotliSize: true, + }) as Plugin; + } + return []; +} diff --git a/build/vite/proxy.ts b/build/vite/proxy.ts new file mode 100644 index 0000000..d876ae5 --- /dev/null +++ b/build/vite/proxy.ts @@ -0,0 +1,36 @@ +/** + * Used to parse the .env.development proxy configuration + */ +import type { ProxyOptions } from 'vite'; + +type ProxyItem = [string, string]; + +type ProxyList = ProxyItem[]; + +type ProxyTargetList = Record; + +const httpsRE = /^https:\/\//; + +/** + * Generate proxy + * @param list + */ +export function createProxy(list: ProxyList = []) { + const ret: ProxyTargetList = {}; + for (const [prefix, target] of list) { + const isHttps = httpsRE.test(target); + if (prefix.length > 255) { + throw new Error('字符长度超出255个字符'); + } + // https://github.com/http-party/node-http-proxy#options + ret[prefix] = { + target: target, + changeOrigin: true, + ws: true, + rewrite: (path) => path.replace(new RegExp(`^${prefix}`), ''), + // https is require secure=false + ...(isHttps ? { secure: false } : {}), + }; + } + return ret; +} diff --git a/commitlint.config.js b/commitlint.config.js new file mode 100644 index 0000000..5459887 --- /dev/null +++ b/commitlint.config.js @@ -0,0 +1,33 @@ +module.exports = { + ignores: [(commit) => commit.includes('init')], + extends: ['@commitlint/config-conventional'], + rules: { + 'body-leading-blank': [2, 'always'], + 'footer-leading-blank': [1, 'always'], + 'header-max-length': [2, 'always', 108], + 'subject-empty': [2, 'never'], + 'type-empty': [2, 'never'], + 'subject-case': [0], + 'type-enum': [ + 2, + 'always', + [ + 'feat', + 'fix', + 'perf', + 'style', + 'docs', + 'test', + 'refactor', + 'build', + 'ci', + 'chore', + 'revert', + 'wip', + 'workflow', + 'types', + 'release', + ], + ], + }, +}; diff --git a/index.html b/index.html new file mode 100644 index 0000000..95c3056 --- /dev/null +++ b/index.html @@ -0,0 +1,197 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +
+
%VITE_GLOB_APP_TITLE%
+
+
+
+ + + diff --git a/mock/_createProductionServer.ts b/mock/_createProductionServer.ts new file mode 100644 index 0000000..6e3ded7 --- /dev/null +++ b/mock/_createProductionServer.ts @@ -0,0 +1,18 @@ +import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'; + +const modules = import.meta.glob('./**/*.ts', { eager: true }); + +const mockModules: any[] = []; +Object.keys(modules).forEach((key) => { + if (key.includes('/_')) { + return; + } + mockModules.push(...modules[key].default); +}); + +/** + * Used in a production environment. Need to manually import all modules + */ +export function setupProdMockServer() { + createProdMockServer(mockModules); +} diff --git a/mock/_util.ts b/mock/_util.ts new file mode 100644 index 0000000..97c8756 --- /dev/null +++ b/mock/_util.ts @@ -0,0 +1,60 @@ +// Interface data format used to return a unified format + +export function resultSuccess(result: T, { message = 'ok' } = {}) { + return { + code: 0, + result, + message, + type: 'success', + }; +} + +export function resultPageSuccess( + page: number, + pageSize: number, + list: T[], + { message = 'ok' } = {}, +) { + const pageData = pagination(page, pageSize, list); + + return { + ...resultSuccess({ + items: pageData, + total: list.length, + }), + message, + }; +} + +export function resultError(message = 'Request failed', { code = -1, result = null } = {}) { + return { + code, + result, + message, + type: 'error', + }; +} + +export function pagination(pageNo: number, pageSize: number, array: T[]): T[] { + const offset = (pageNo - 1) * Number(pageSize); + const ret = + offset + Number(pageSize) >= array.length + ? array.slice(offset, array.length) + : array.slice(offset, offset + Number(pageSize)); + return ret; +} + +export interface requestParams { + method: string; + body: any; + headers?: { authorization?: string }; + query: any; +} + +/** + * @description 本函数用于从request数据中获取token,请根据项目的实际情况修改 + * + */ +export function getRequestToken({ headers }: requestParams): string | undefined { + return headers?.authorization; +} diff --git a/mock/demo/account.ts b/mock/demo/account.ts new file mode 100644 index 0000000..a392493 --- /dev/null +++ b/mock/demo/account.ts @@ -0,0 +1,71 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { resultSuccess, resultError } from '../_util'; +import { ResultEnum } from '../../src/enums/httpEnum'; + +const userInfo = { + name: 'Vben', + userid: '00000001', + email: 'test@gmail.com', + signature: '海纳百川,有容乃大', + introduction: '微笑着,努力着,欣赏着', + title: '交互专家', + group: '某某某事业群-某某平台部-某某技术部-UED', + tags: [ + { + key: '0', + label: '很有想法的', + }, + { + key: '1', + label: '专注设计', + }, + { + key: '2', + label: '辣~', + }, + { + key: '3', + label: '大长腿', + }, + { + key: '4', + label: '川妹子', + }, + { + key: '5', + label: '海纳百川', + }, + ], + notifyCount: 12, + unreadCount: 11, + country: 'China', + address: 'Xiamen City 77', + phone: '0592-268888888', +}; + +export default [ + { + url: '/basic-api/account/getAccountInfo', + timeout: 1000, + method: 'get', + response: () => { + return resultSuccess(userInfo); + }, + }, + { + url: '/basic-api/user/sessionTimeout', + method: 'post', + statusCode: 401, + response: () => { + return resultError(); + }, + }, + { + url: '/basic-api/user/tokenExpired', + method: 'post', + statusCode: 200, + response: () => { + return resultError('Token Expired!', { code: ResultEnum.TIMEOUT as number }); + }, + }, +] as MockMethod[]; diff --git a/mock/demo/api-cascader.ts b/mock/demo/api-cascader.ts new file mode 100644 index 0000000..6334ef5 --- /dev/null +++ b/mock/demo/api-cascader.ts @@ -0,0 +1,325 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { resultSuccess } from '../_util'; + +const areaList: any[] = [ + { + id: '530825900854620160', + code: '430000', + parentCode: '100000', + levelType: 1, + name: '湖南省', + province: '湖南省', + city: null, + district: null, + town: null, + village: null, + parentPath: '430000', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 16:33:42', + customized: false, + usable: true, + }, + { + id: '530825900883980288', + code: '430100', + parentCode: '430000', + levelType: 2, + name: '长沙市', + province: '湖南省', + city: '长沙市', + district: null, + town: null, + village: null, + parentPath: '430000,430100', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 16:33:42', + customized: false, + usable: true, + }, + { + id: '530825900951089152', + code: '430102', + parentCode: '430100', + levelType: 3, + name: '芙蓉区', + province: '湖南省', + city: '长沙市', + district: '芙蓉区', + town: null, + village: null, + parentPath: '430000,430100,430102', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 16:33:42', + customized: false, + usable: true, + }, + { + id: '530825901014003712', + code: '430104', + parentCode: '430100', + levelType: 3, + name: '岳麓区', + province: '湖南省', + city: '长沙市', + district: '岳麓区', + town: null, + village: null, + parentPath: '430000,430100,430104', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 16:33:42', + customized: false, + usable: true, + }, + { + id: '530825900988837888', + code: '430103', + parentCode: '430100', + levelType: 3, + name: '天心区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: null, + village: null, + parentPath: '430000,430100,430103', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 16:33:42', + customized: false, + usable: true, + }, + { + id: '530826672489115648', + code: '430103002', + parentCode: '430103', + levelType: 4, + name: '坡子街街道', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: null, + parentPath: '430000,430100,430103,430103002', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-12-14 15:26:43', + customized: false, + usable: true, + }, + { + id: '530840241171607552', + code: '430103002001', + parentCode: '430103002', + levelType: 5, + name: '八角亭社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '八角亭社区', + parentPath: '430000,430100,430103,430103002,430103002001', + createTime: '2020-11-30 15:47:31', + updateTime: '2021-01-20 14:07:23', + customized: false, + usable: true, + }, + { + id: '530840241200967680', + code: '430103002002', + parentCode: '430103002', + levelType: 5, + name: '西牌楼社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '西牌楼社区', + parentPath: '430000,430100,430103,430103002,430103002002', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241230327808', + code: '430103002003', + parentCode: '430103002', + levelType: 5, + name: '太平街社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '太平街社区', + parentPath: '430000,430100,430103,430103002,430103002003', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241259687936', + code: '430103002005', + parentCode: '430103002', + levelType: 5, + name: '坡子街社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '坡子街社区', + parentPath: '430000,430100,430103,430103002,430103002005', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241284853760', + code: '430103002006', + parentCode: '430103002', + levelType: 5, + name: '青山祠社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '青山祠社区', + parentPath: '430000,430100,430103,430103002,430103002006', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241310019584', + code: '430103002007', + parentCode: '430103002', + levelType: 5, + name: '沙河社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '沙河社区', + parentPath: '430000,430100,430103,430103002,430103002007', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241381322752', + code: '430103002008', + parentCode: '430103002', + levelType: 5, + name: '碧湘社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '碧湘社区', + parentPath: '430000,430100,430103,430103002,430103002008', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241410682880', + code: '430103002009', + parentCode: '430103002', + levelType: 5, + name: '创远社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '创远社区', + parentPath: '430000,430100,430103,430103002,430103002009', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241431654400', + code: '430103002010', + parentCode: '430103002', + levelType: 5, + name: '楚湘社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '楚湘社区', + parentPath: '430000,430100,430103,430103002,430103002010', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241465208832', + code: '430103002011', + parentCode: '430103002', + levelType: 5, + name: '西湖社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '西湖社区', + parentPath: '430000,430100,430103,430103002,430103002011', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241502957568', + code: '430103002012', + parentCode: '430103002', + levelType: 5, + name: '登仁桥社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '登仁桥社区', + parentPath: '430000,430100,430103,430103002,430103002012', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, + { + id: '530840241553289216', + code: '430103002013', + parentCode: '430103002', + levelType: 5, + name: '文庙坪社区', + province: '湖南省', + city: '长沙市', + district: '天心区', + town: '坡子街街道', + village: '文庙坪社区', + parentPath: '430000,430100,430103,430103002,430103002013', + createTime: '2020-11-30 15:47:31', + updateTime: '2020-11-30 17:30:41', + customized: false, + usable: true, + }, +]; +export default [ + { + url: '/basic-api/cascader/getAreaRecord', + timeout: 1000, + method: 'post', + response: ({ body }) => { + const { parentCode } = body || {}; + if (!parentCode) { + return resultSuccess(areaList.filter((it) => it.code === '430000')); + } + return resultSuccess(areaList.filter((it) => it.parentCode === parentCode)); + }, + }, +] as MockMethod[]; diff --git a/mock/demo/select-demo.ts b/mock/demo/select-demo.ts new file mode 100644 index 0000000..631c6bb --- /dev/null +++ b/mock/demo/select-demo.ts @@ -0,0 +1,28 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { resultSuccess } from '../_util'; + +const demoList = (keyword, count = 20) => { + const result = { + list: [] as any[], + }; + for (let index = 0; index < count; index++) { + result.list.push({ + name: `${keyword ?? ''}选项${index}`, + id: `${index}`, + }); + } + return result; +}; + +export default [ + { + url: '/basic-api/select/getDemoOptions', + timeout: 1000, + method: 'get', + response: ({ query }) => { + const { keyword, count } = query; + console.log(keyword); + return resultSuccess(demoList(keyword, count)); + }, + }, +] as MockMethod[]; diff --git a/mock/demo/system.ts b/mock/demo/system.ts new file mode 100644 index 0000000..c417727 --- /dev/null +++ b/mock/demo/system.ts @@ -0,0 +1,202 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { resultError, resultPageSuccess, resultSuccess } from '../_util'; + +const accountList = (() => { + const result: any[] = []; + for (let index = 0; index < 20; index++) { + result.push({ + id: `${index}`, + account: '@first', + email: '@email', + nickname: '@cname()', + role: '@first', + createTime: '@datetime', + remark: '@cword(10,20)', + 'status|1': ['0', '1'], + }); + } + return result; +})(); + +const roleList = (() => { + const result: any[] = []; + for (let index = 0; index < 4; index++) { + result.push({ + id: index + 1, + orderNo: `${index + 1}`, + roleName: ['超级管理员', '管理员', '文章管理员', '普通用户'][index], + roleValue: '@first', + createTime: '@datetime', + remark: '@cword(10,20)', + menu: [['0', '1', '2'], ['0', '1'], ['0', '2'], ['2']][index], + 'status|1': ['0', '1'], + }); + } + return result; +})(); + +const deptList = (() => { + const result: any[] = []; + for (let index = 0; index < 3; index++) { + result.push({ + id: `${index}`, + deptName: ['华东分部', '华南分部', '西北分部'][index], + orderNo: index + 1, + createTime: '@datetime', + remark: '@cword(10,20)', + 'status|1': ['0', '0', '1'], + children: (() => { + const children: any[] = []; + for (let j = 0; j < 4; j++) { + children.push({ + id: `${index}-${j}`, + deptName: ['研发部', '市场部', '商务部', '财务部'][j], + orderNo: j + 1, + createTime: '@datetime', + remark: '@cword(10,20)', + 'status|1': ['0', '1'], + parentDept: `${index}`, + children: undefined, + }); + } + return children; + })(), + }); + } + return result; +})(); + +const menuList = (() => { + const result: any[] = []; + for (let index = 0; index < 3; index++) { + result.push({ + id: `${index}`, + icon: ['ion:layers-outline', 'ion:git-compare-outline', 'ion:tv-outline'][index], + component: 'LAYOUT', + type: '0', + menuName: ['Dashboard', '权限管理', '功能'][index], + permission: '', + orderNo: index + 1, + createTime: '@datetime', + 'status|1': ['0', '0', '1'], + children: (() => { + const children: any[] = []; + for (let j = 0; j < 4; j++) { + children.push({ + id: `${index}-${j}`, + type: '1', + menuName: ['菜单1', '菜单2', '菜单3', '菜单4'][j], + icon: 'ion:document', + permission: ['menu1:view', 'menu2:add', 'menu3:update', 'menu4:del'][index], + component: [ + '/dashboard/welcome/index', + '/dashboard/analysis/index', + '/dashboard/workbench/index', + '/dashboard/test/index', + ][j], + orderNo: j + 1, + createTime: '@datetime', + 'status|1': ['0', '1'], + parentMenu: `${index}`, + children: (() => { + const children: any[] = []; + for (let k = 0; k < 4; k++) { + children.push({ + id: `${index}-${j}-${k}`, + type: '2', + menuName: '按钮' + (j + 1) + '-' + (k + 1), + icon: '', + permission: + ['menu1:view', 'menu2:add', 'menu3:update', 'menu4:del'][index] + + ':btn' + + (k + 1), + component: [ + '/dashboard/welcome/index', + '/dashboard/analysis/index', + '/dashboard/workbench/index', + '/dashboard/test/index', + ][j], + orderNo: j + 1, + createTime: '@datetime', + 'status|1': ['0', '1'], + parentMenu: `${index}-${j}`, + children: undefined, + }); + } + return children; + })(), + }); + } + return children; + })(), + }); + } + return result; +})(); + +export default [ + { + url: '/basic-api/system/getAccountList', + timeout: 100, + method: 'get', + response: ({ query }) => { + const { page = 1, pageSize = 20 } = query; + return resultPageSuccess(page, pageSize, accountList); + }, + }, + { + url: '/basic-api/system/getRoleListByPage', + timeout: 100, + method: 'get', + response: ({ query }) => { + const { page = 1, pageSize = 20 } = query; + return resultPageSuccess(page, pageSize, roleList); + }, + }, + { + url: '/basic-api/system/setRoleStatus', + timeout: 500, + method: 'post', + response: ({ query }) => { + const { id, status } = query; + return resultSuccess({ id, status }); + }, + }, + { + url: '/basic-api/system/getAllRoleList', + timeout: 100, + method: 'get', + response: () => { + return resultSuccess(roleList); + }, + }, + { + url: '/basic-api/system/getDeptList', + timeout: 100, + method: 'get', + response: () => { + return resultSuccess(deptList); + }, + }, + { + url: '/basic-api/system/getMenuList', + timeout: 100, + method: 'get', + response: () => { + return resultSuccess(menuList); + }, + }, + { + url: '/basic-api/system/accountExist', + timeout: 500, + method: 'post', + response: ({ body }) => { + const { account } = body || {}; + if (account && account.indexOf('admin') !== -1) { + return resultError('该字段不能包含admin'); + } else { + return resultSuccess(`${account} can use`); + } + }, + }, +] as MockMethod[]; diff --git a/mock/demo/table-demo.ts b/mock/demo/table-demo.ts new file mode 100644 index 0000000..f3a0f16 --- /dev/null +++ b/mock/demo/table-demo.ts @@ -0,0 +1,52 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { Random } from 'mockjs'; +import { resultPageSuccess } from '../_util'; + +function getRandomPics(count = 10): string[] { + const arr: string[] = []; + for (let i = 0; i < count; i++) { + arr.push(Random.image('800x600', Random.color(), Random.color(), Random.title())); + } + return arr; +} + +const demoList = (() => { + const result: any[] = []; + for (let index = 0; index < 200; index++) { + result.push({ + id: `${index}`, + beginTime: '@datetime', + endTime: '@datetime', + address: '@city()', + name: '@cname()', + name1: '@cname()', + name2: '@cname()', + name3: '@cname()', + name4: '@cname()', + name5: '@cname()', + name6: '@cname()', + name7: '@cname()', + name8: '@cname()', + avatar: Random.image('400x400', Random.color(), Random.color(), Random.first()), + imgArr: getRandomPics(Math.ceil(Math.random() * 3) + 1), + imgs: getRandomPics(Math.ceil(Math.random() * 3) + 1), + date: `@date('yyyy-MM-dd')`, + time: `@time('HH:mm')`, + 'no|100000-10000000': 100000, + 'status|1': ['normal', 'enable', 'disable'], + }); + } + return result; +})(); + +export default [ + { + url: '/basic-api/table/getDemoList', + timeout: 100, + method: 'get', + response: ({ query }) => { + const { page = 1, pageSize = 20 } = query; + return resultPageSuccess(page, pageSize, demoList); + }, + }, +] as MockMethod[]; diff --git a/mock/demo/tree-demo.ts b/mock/demo/tree-demo.ts new file mode 100644 index 0000000..6fdcb85 --- /dev/null +++ b/mock/demo/tree-demo.ts @@ -0,0 +1,38 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { resultSuccess } from '../_util'; + +const demoTreeList = (keyword) => { + const result = { + list: [] as Recordable[], + }; + for (let index = 0; index < 5; index++) { + const children: Recordable[] = []; + for (let j = 0; j < 3; j++) { + children.push({ + title: `${keyword ?? ''}选项${index}-${j}`, + value: `${index}-${j}`, + key: `${index}-${j}`, + }); + } + result.list.push({ + title: `${keyword ?? ''}选项${index}`, + value: `${index}`, + key: `${index}`, + children, + }); + } + return result; +}; + +export default [ + { + url: '/basic-api/tree/getDemoOptions', + timeout: 1000, + method: 'get', + response: ({ query }) => { + const { keyword } = query; + console.log(keyword); + return resultSuccess(demoTreeList(keyword)); + }, + }, +] as MockMethod[]; diff --git a/mock/sys/menu.ts b/mock/sys/menu.ts new file mode 100644 index 0000000..1c47e66 --- /dev/null +++ b/mock/sys/menu.ts @@ -0,0 +1,270 @@ +import { resultSuccess, resultError, getRequestToken, requestParams } from '../_util'; +import { MockMethod } from 'vite-plugin-mock'; +import { createFakeUserList } from './user'; + +// single +const dashboardRoute = { + path: '/dashboard', + name: 'Dashboard', + component: 'LAYOUT', + redirect: '/dashboard/analysis', + meta: { + title: 'routes.dashboard.dashboard', + hideChildrenInMenu: true, + icon: 'bx:bx-home', + }, + children: [ + { + path: 'analysis', + name: 'Analysis', + component: '/dashboard/analysis/index', + meta: { + hideMenu: true, + hideBreadcrumb: true, + title: 'routes.dashboard.analysis', + currentActiveMenu: '/dashboard', + icon: 'bx:bx-home', + }, + }, + { + path: 'workbench', + name: 'Workbench', + component: '/dashboard/workbench/index', + meta: { + hideMenu: true, + hideBreadcrumb: true, + title: 'routes.dashboard.workbench', + currentActiveMenu: '/dashboard', + icon: 'bx:bx-home', + }, + }, + ], +}; + +const backRoute = { + path: 'back', + name: 'PermissionBackDemo', + meta: { + title: 'routes.demo.permission.back', + }, + + children: [ + { + path: 'page', + name: 'BackAuthPage', + component: '/demo/permission/back/index', + meta: { + title: 'routes.demo.permission.backPage', + }, + }, + { + path: 'btn', + name: 'BackAuthBtn', + component: '/demo/permission/back/Btn', + meta: { + title: 'routes.demo.permission.backBtn', + }, + }, + ], +}; + +const authRoute = { + path: '/permission', + name: 'Permission', + component: 'LAYOUT', + redirect: '/permission/front/page', + meta: { + icon: 'carbon:user-role', + title: 'routes.demo.permission.permission', + }, + children: [backRoute], +}; + +const levelRoute = { + path: '/level', + name: 'Level', + component: 'LAYOUT', + redirect: '/level/menu1/menu1-1', + meta: { + icon: 'carbon:user-role', + title: 'routes.demo.level.level', + }, + + children: [ + { + path: 'menu1', + name: 'Menu1Demo', + meta: { + title: 'Menu1', + }, + children: [ + { + path: 'menu1-1', + name: 'Menu11Demo', + meta: { + title: 'Menu1-1', + }, + children: [ + { + path: 'menu1-1-1', + name: 'Menu111Demo', + component: '/demo/level/Menu111', + meta: { + title: 'Menu111', + }, + }, + ], + }, + { + path: 'menu1-2', + name: 'Menu12Demo', + component: '/demo/level/Menu12', + meta: { + title: 'Menu1-2', + }, + }, + ], + }, + { + path: 'menu2', + name: 'Menu2Demo', + component: '/demo/level/Menu2', + meta: { + title: 'Menu2', + }, + }, + ], +}; + +const sysRoute = { + path: '/system', + name: 'System', + component: 'LAYOUT', + redirect: '/system/account', + meta: { + icon: 'ion:settings-outline', + title: 'routes.demo.system.moduleName', + }, + children: [ + { + path: 'account', + name: 'AccountManagement', + meta: { + title: 'routes.demo.system.account', + ignoreKeepAlive: true, + }, + component: '/demo/system/account/index', + }, + { + path: 'account_detail/:id', + name: 'AccountDetail', + meta: { + hideMenu: true, + title: 'routes.demo.system.account_detail', + ignoreKeepAlive: true, + showMenu: false, + currentActiveMenu: '/system/account', + }, + component: '/demo/system/account/AccountDetail', + }, + { + path: 'role', + name: 'RoleManagement', + meta: { + title: 'routes.demo.system.role', + ignoreKeepAlive: true, + }, + component: '/demo/system/role/index', + }, + + { + path: 'menu', + name: 'MenuManagement', + meta: { + title: 'routes.demo.system.menu', + ignoreKeepAlive: true, + }, + component: '/demo/system/menu/index', + }, + { + path: 'dept', + name: 'DeptManagement', + meta: { + title: 'routes.demo.system.dept', + ignoreKeepAlive: true, + }, + component: '/demo/system/dept/index', + }, + { + path: 'changePassword', + name: 'ChangePassword', + meta: { + title: 'routes.demo.system.password', + ignoreKeepAlive: true, + }, + component: '/demo/system/password/index', + }, + ], +}; + +const linkRoute = { + path: '/link', + name: 'Link', + component: 'LAYOUT', + meta: { + icon: 'ion:tv-outline', + title: 'routes.demo.iframe.frame', + }, + children: [ + { + path: 'doc', + name: 'Doc', + meta: { + title: 'routes.demo.iframe.doc', + frameSrc: 'https://vvbin.cn/doc-next/', + }, + }, + { + path: 'https://vvbin.cn/doc-next/', + name: 'DocExternal', + component: 'LAYOUT', + meta: { + title: 'routes.demo.iframe.docExternal', + }, + }, + ], +}; + +export default [ + { + url: '/basic-api/getMenuList', + timeout: 1000, + method: 'get', + response: (request: requestParams) => { + const token = getRequestToken(request); + if (!token) { + return resultError('Invalid token!'); + } + const checkUser = createFakeUserList().find((item) => item.token === token); + if (!checkUser) { + return resultError('Invalid user token!'); + } + const id = checkUser.userId; + let menu: Object[]; + switch (id) { + case '1': + dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[0].path; + menu = [dashboardRoute, authRoute, levelRoute, sysRoute, linkRoute]; + break; + case '2': + dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[1].path; + menu = [dashboardRoute, authRoute, levelRoute, linkRoute]; + break; + default: + menu = []; + } + + return resultSuccess(menu); + }, + }, +] as MockMethod[]; diff --git a/mock/sys/user.ts b/mock/sys/user.ts new file mode 100644 index 0000000..5b569d4 --- /dev/null +++ b/mock/sys/user.ts @@ -0,0 +1,122 @@ +import { MockMethod } from 'vite-plugin-mock'; +import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util'; + +export function createFakeUserList() { + return [ + { + userId: '1', + username: 'vben', + realName: 'Vben Admin', + avatar: 'https://q1.qlogo.cn/g?b=qq&nk=190848757&s=640', + desc: 'manager', + password: '123456', + token: 'fakeToken1', + homePath: '/dashboard/analysis', + roles: [ + { + roleName: 'Super Admin', + value: 'super', + }, + ], + }, + { + userId: '2', + username: 'test', + password: '123456', + realName: 'test user', + avatar: 'https://q1.qlogo.cn/g?b=qq&nk=339449197&s=640', + desc: 'tester', + token: 'fakeToken2', + homePath: '/dashboard/workbench', + roles: [ + { + roleName: 'Tester', + value: 'test', + }, + ], + }, + ]; +} + +const fakeCodeList: any = { + '1': ['1000', '3000', '5000'], + + '2': ['2000', '4000', '6000'], +}; +export default [ + // mock user login + { + url: '/basic-api/login', + timeout: 200, + method: 'post', + response: ({ body }) => { + const { username, password } = body; + const checkUser = createFakeUserList().find( + (item) => item.username === username && password === item.password, + ); + if (!checkUser) { + return resultError('Incorrect account or password!'); + } + const { userId, username: _username, token, realName, desc, roles } = checkUser; + return resultSuccess({ + roles, + userId, + username: _username, + token, + realName, + desc, + }); + }, + }, + { + url: '/basic-api/getUserInfo', + method: 'get', + response: (request: requestParams) => { + const token = getRequestToken(request); + if (!token) return resultError('Invalid token'); + const checkUser = createFakeUserList().find((item) => item.token === token); + if (!checkUser) { + return resultError('The corresponding user information was not obtained!'); + } + return resultSuccess(checkUser); + }, + }, + { + url: '/basic-api/getPermCode', + timeout: 200, + method: 'get', + response: (request: requestParams) => { + const token = getRequestToken(request); + if (!token) return resultError('Invalid token'); + const checkUser = createFakeUserList().find((item) => item.token === token); + if (!checkUser) { + return resultError('Invalid token!'); + } + const codeList = fakeCodeList[checkUser.userId]; + + return resultSuccess(codeList); + }, + }, + { + url: '/basic-api/logout', + timeout: 200, + method: 'get', + response: (request: requestParams) => { + const token = getRequestToken(request); + if (!token) return resultError('Invalid token'); + const checkUser = createFakeUserList().find((item) => item.token === token); + if (!checkUser) { + return resultError('Invalid token!'); + } + return resultSuccess(undefined, { message: 'Token has been destroyed' }); + }, + }, + { + url: '/basic-api/testRetry', + statusCode: 405, + method: 'get', + response: () => { + return resultError('Error!'); + }, + }, +] as MockMethod[]; diff --git a/package.json b/package.json index fb83f9f..9941f26 100644 --- a/package.json +++ b/package.json @@ -1,18 +1,17 @@ { - "name": "vben-admin", - "version": "2.8.0", + "name": "learun-admin", + "version": "1.0.1", "author": { - "name": "vben", - "email": "anncwb@126.com", - "url": "https://github.com/anncwb" + "name": "learun", + "email": "learun@gmail.com", + "url": "https://www.xjrsoft.com" }, "scripts": { - "commit": "czg", "bootstrap": "pnpm install", "serve": "npm run dev", "dev": "vite", - "build": "cross-env NODE_ENV=production vite build && esno ./build/script/postBuild.ts", - "build:test": "cross-env vite build --mode test && esno ./build/script/postBuild.ts", + "build": "cross-env NODE_ENV=production NODE_OPTIONS=--max-old-space-size=8192 vite build && esno ./build/script/postBuild.ts", + "build:test": "cross-env NODE_OPTIONS=--max-old-space-size=8192 vite build --mode test && esno ./build/script/postBuild.ts", "build:no-cache": "pnpm clean:cache && npm run build", "report": "cross-env REPORT=true npm run build", "type:check": "vue-tsc --noEmit --skipLibCheck", @@ -33,120 +32,154 @@ "gen:icon": "esno ./build/generate/icon/index.ts" }, "dependencies": { - "@ant-design/colors": "^6.0.0", + "@ant-design/colors": "^7.0.0", "@ant-design/icons-vue": "^6.1.0", - "@iconify/iconify": "^2.2.1", - "@logicflow/core": "^1.1.13", - "@logicflow/extension": "^1.1.13", - "@vue/runtime-core": "^3.2.33", - "@vue/shared": "^3.2.33", - "@vueuse/core": "^8.3.0", - "@vueuse/shared": "^8.3.0", - "@zxcvbn-ts/core": "^2.0.1", - "ant-design-vue": "^3.2.0", - "axios": "^0.26.1", - "codemirror": "^5.65.3", + "@dsb-norge/vue-keycloak-js": "^2.4.0", + "@fullcalendar/core": "^6.1.10", + "@fullcalendar/daygrid": "^6.1.10", + "@fullcalendar/interaction": "^6.1.10", + "@fullcalendar/timegrid": "^6.1.10", + "@fullcalendar/vue3": "^6.1.10", + "@grapecity/activereports": "^4.1.1", + "@grapecity/activereports-localization": "^4.1.1", + "@grapecity/activereports-vue": "^4.1.0", + "@iconify/iconify": "^3.1.0", + "@logicflow/core": "^1.2.7", + "@logicflow/extension": "^1.2.7", + "@vue-flow/controls": "^1.1.2", + "@vue-flow/core": "^1.42.0", + "@vue/runtime-core": "3.3.4", + "@vueuse/core": "^10.1.2", + "@zxcvbn-ts/core": "^3.0.1", + "ant-design-vue": "3.2.20", + "axios": "^1.4.0", + "bpmn-js": "^13.1.0", + "bpmn-js-properties-panel": "^1.25.0", + "camunda-bpmn-moddle": "^7.0.1", + "codemirror": "^5.65.2", "cropperjs": "^1.5.12", "crypto-js": "^4.1.1", - "dayjs": "^1.11.1", - "echarts": "^5.3.2", - "intro.js": "^5.1.0", + "dayjs": "^1.11.7", + "diagram-js": "^12.1.1", + "dom-to-image": "^2.6.0", + "echarts": "^5.3.1", + "exceljs": "^4.3.0", + "file-saver": "^2.0.5", + "html2canvas": "^1.0.0", + "inherits": "^2.0.4", + "intro.js": "^5.0.0", + "js-base64": "^3.7.5", + "js-pinyin": "^0.1.9", + "jsbarcode": "^3.11.6", + "jsbi-calculator": "^0.3.6", + "keycloak-js": "^24.0.1", "lodash-es": "^4.17.21", + "luckyexcel": "^1.0.1", + "luckysheet": "^2.1.13", + "min-dash": "^4.0.0", + "min-dom": "^4.0.3", "mockjs": "^1.1.0", + "moment": "^2.29.4", + "node-opencc": "^2.0.1", "nprogress": "^0.2.0", + "nzh": "^1.0.8", "path-to-regexp": "^6.2.0", "pinia": "2.0.12", + "print-js": "^1.6.0", + "qrcode": "^1.5.0", "qs": "^6.10.3", "resize-observer-polyfill": "^1.5.1", "showdown": "^2.1.0", - "sortablejs": "^1.15.0", + "snowflake-id": "^1.1.0", + "sortablejs": "^1.14.0", "tinymce": "^5.10.3", - "unplugin-auto-import": "^0.17.6", - "vditor": "^3.8.13", - "vue": "^3.2.34", - "vue-i18n": "^9.1.9", - "vue-json-pretty": "^2.0.6", - "vue-router": "^4.0.14", - "vue-types": "^4.1.1", - "xlsx": "^0.18.5" + "vditor": "^3.9.2", + "vue": "3.3.4", + "vue-clipboard3": "^2.0.0", + "vue-esign": "^1.1.4", + "vue-grid-layout": "3.0.0-beta1", + "vue-i18n": "^9.2.2", + "vue-json-pretty": "^2.2.4", + "vue-router": "^4.2.1", + "vue-types": "^5.0.3", + "vue3-sfc-loader": "^0.9.5", + "vuedraggable": "^4.1.0", + "wangeditor": "4.6.3", + "xlsx": "^0.18.5", + "xlsx-js-style": "^1.2.0" }, "devDependencies": { - "@commitlint/cli": "^16.2.3", - "@commitlint/config-conventional": "^16.2.1", - "@iconify/json": "^2.1.30", - "@purge-icons/generated": "^0.8.1", - "@types/codemirror": "^5.60.5", + "@commitlint/cli": "^17.6.3", + "@commitlint/config-conventional": "^17.6.3", + "@iconify/json": "^2.2.67", + "@purge-icons/generated": "^0.9.0", + "@types/codemirror": "^5.60.7", "@types/crypto-js": "^4.1.1", - "@types/fs-extra": "^9.0.13", - "@types/inquirer": "^8.2.1", - "@types/intro.js": "^3.0.2", - "@types/lodash-es": "^4.17.6", - "@types/mockjs": "^1.0.6", - "@types/node": "^17.0.25", + "@types/fs-extra": "^11.0.1", + "@types/inquirer": "^9.0.3", + "@types/intro.js": "^5.1.1", + "@types/lodash-es": "^4.17.7", + "@types/mockjs": "^1.0.7", + "@types/node": "^18.16.0", "@types/nprogress": "^0.2.0", + "@types/qrcode": "^1.5.0", "@types/qs": "^6.9.7", - "@types/showdown": "^1.9.4", - "@types/sortablejs": "^1.10.7", - "@typescript-eslint/eslint-plugin": "^5.20.0", - "@typescript-eslint/parser": "^5.20.0", - "@vitejs/plugin-legacy": "^1.8.1", - "@vitejs/plugin-vue": "^2.3.1", - "@vitejs/plugin-vue-jsx": "^1.3.10", - "@vue/compiler-sfc": "^3.2.33", - "@vue/test-utils": "^2.0.0-rc.21", - "autoprefixer": "^10.4.4", + "@types/showdown": "^2.0.1", + "@types/sortablejs": "^1.15.1", + "@typescript-eslint/eslint-plugin": "^5.59.6", + "@typescript-eslint/parser": "^5.59.6", + "@vitejs/plugin-vue": "^4.2.3", + "@vitejs/plugin-vue-jsx": "^3.0.1", + "@vue/compiler-sfc": "3.3.4", + "@vue/test-utils": "^2.3.2", + "autoprefixer": "^10.4.14", "conventional-changelog-cli": "^2.2.2", "cross-env": "^7.0.3", - "cz-git": "^1.3.11", - "czg": "^1.3.11", - "dotenv": "^16.0.0", - "eslint": "^8.13.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-prettier": "^4.0.0", - "eslint-plugin-vue": "^8.6.0", - "esno": "^0.14.1", - "fs-extra": "^10.1.0", - "husky": "^7.0.4", - "inquirer": "^8.2.2", - "less": "^4.1.2", - "lint-staged": "12.3.7", - "npm-run-all": "^4.1.5", + "cz-git": "^1.6.1", + "czg": "^1.6.1", + "dotenv": "^16.0.3", + "eslint": "^8.41.0", + "eslint-config-prettier": "^8.8.0", + "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-vue": "^9.13.0", + "esno": "^0.16.3", + "fs-extra": "^11.1.1", + "husky": "^8.0.3", + "inquirer": "^9.2.6", + "less": "^4.1.3", + "lint-staged": "^13.2.2", "picocolors": "^1.0.0", - "postcss": "^8.4.12", - "postcss-html": "^1.4.1", + "postcss": "^8.4.23", + "postcss-html": "^1.5.0", "postcss-less": "^6.0.0", - "prettier": "^2.6.2", - "rimraf": "^3.0.2", - "rollup": "^2.70.2", - "rollup-plugin-visualizer": "^5.6.0", - "stylelint": "^14.7.1", - "stylelint-config-prettier": "^9.0.3", - "stylelint-config-recommended": "^7.0.0", + "prettier": "^2.8.8", + "rimraf": "^5.0.1", + "rollup": "^3.22.1", + "rollup-plugin-visualizer": "^5.9.0", + "stylelint": "^15.6.2", + "stylelint-config-prettier": "^9.0.5", + "stylelint-config-recommended": "^12.0.0", "stylelint-config-recommended-vue": "^1.4.0", - "stylelint-config-standard": "^25.0.0", - "stylelint-order": "^5.0.0", - "ts-node": "^10.7.0", - "typescript": "^4.6.3", - "vite": "^2.9.5", + "stylelint-config-standard": "^33.0.0", + "stylelint-order": "^6.0.3", + "terser": "^5.17.4", + "ts-node": "^10.9.1", + "typescript": "^5.0.4", + "unplugin-vue-setup-extend-plus": "^1.0.0", + "vite": "^4.3.8", "vite-plugin-compression": "^0.5.1", - "vite-plugin-html": "^3.2.0", - "vite-plugin-imagemin": "^0.6.1", - "vite-plugin-mkcert": "^1.6.0", + "vite-plugin-mkcert": "^1.15.0", "vite-plugin-mock": "^2.9.6", - "vite-plugin-purge-icons": "^0.8.1", - "vite-plugin-pwa": "^0.11.13", + "vite-plugin-progress": "^0.0.7", + "vite-plugin-purge-icons": "^0.9.2", + "vite-plugin-pwa": "^0.15.0", "vite-plugin-style-import": "^2.0.0", "vite-plugin-svg-icons": "^2.0.1", - "vite-plugin-theme": "^0.8.6", - "vite-plugin-vue-setup-extend": "^0.4.0", - "vite-plugin-windicss": "^1.8.4", - "vue-eslint-parser": "^8.3.0", - "vue-tsc": "^0.33.9" - }, - "resolutions": { - "bin-wrapper": "npm:bin-wrapper-china", - "rollup": "^2.56.3", - "gifsicle": "5.2.0" + "vite-plugin-windicss": "^1.9.0", + "vite-vue-plugin-html": "^1.0.1", + "vite-vue-plugin-theme": "^1.0.0", + "vue-eslint-parser": "^9.3.0", + "vue-tsc": "^1.6.5" }, "repository": { "type": "git", @@ -158,7 +191,8 @@ }, "homepage": "https://github.com/anncwb/vue-vben-admin", "engines": { - "node": "^12 || >=14" + "node": ">= 16.0.0", + "pnpm": ">=8.1.0" }, "lint-staged": { "*.{js,jsx,ts,tsx}": [ @@ -177,16 +211,11 @@ "stylelint --fix" ], "*.{scss,less,styl,html}": [ - "stylelint --fix", + "stylelint --fix --allow-empty-input", "prettier --write" ], "*.md": [ "prettier --write" ] - }, - "config": { - "commitizen": { - "path": "node_modules/cz-git" - } } } diff --git a/prettier.config.js b/prettier.config.js index a5bfe16..51f8d01 100644 --- a/prettier.config.js +++ b/prettier.config.js @@ -1,10 +1,10 @@ module.exports = { printWidth: 100, - semi: false, + semi: true, vueIndentScriptAndStyle: true, singleQuote: true, trailingComma: 'all', proseWrap: 'never', htmlWhitespaceSensitivity: 'strict', endOfLine: 'auto', -} +}; diff --git a/public/assets/iconfont/Anton-Regular.ttf b/public/assets/iconfont/Anton-Regular.ttf new file mode 100644 index 0000000..5a582b1 Binary files /dev/null and b/public/assets/iconfont/Anton-Regular.ttf differ diff --git a/public/assets/iconfont/HanaleiFill-Regular.ttf b/public/assets/iconfont/HanaleiFill-Regular.ttf new file mode 100644 index 0000000..b7e94ff Binary files /dev/null and b/public/assets/iconfont/HanaleiFill-Regular.ttf differ diff --git a/public/assets/iconfont/Pacifico-Regular.ttf b/public/assets/iconfont/Pacifico-Regular.ttf new file mode 100644 index 0000000..f85aee0 Binary files /dev/null and b/public/assets/iconfont/Pacifico-Regular.ttf differ diff --git a/public/assets/iconfont/demo.css b/public/assets/iconfont/demo.css new file mode 100644 index 0000000..a67054a --- /dev/null +++ b/public/assets/iconfont/demo.css @@ -0,0 +1,539 @@ +/* Logo 字体 */ +@font-face { + font-family: "iconfont logo"; + src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834'); + src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'), + url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'), + url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'), + url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg'); +} + +.logo { + font-family: "iconfont logo"; + font-size: 160px; + font-style: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +/* tabs */ +.nav-tabs { + position: relative; +} + +.nav-tabs .nav-more { + position: absolute; + right: 0; + bottom: 0; + height: 42px; + line-height: 42px; + color: #666; +} + +#tabs { + border-bottom: 1px solid #eee; +} + +#tabs li { + cursor: pointer; + width: 100px; + height: 40px; + line-height: 40px; + text-align: center; + font-size: 16px; + border-bottom: 2px solid transparent; + position: relative; + z-index: 1; + margin-bottom: -1px; + color: #666; +} + + +#tabs .active { + border-bottom-color: #f00; + color: #222; +} + +.tab-container .content { + display: none; +} + +/* 页面布局 */ +.main { + padding: 30px 100px; + width: 960px; + margin: 0 auto; +} + +.main .logo { + color: #333; + text-align: left; + margin-bottom: 30px; + line-height: 1; + height: 110px; + margin-top: -50px; + overflow: hidden; + *zoom: 1; +} + +.main .logo a { + font-size: 160px; + color: #333; +} + +.helps { + margin-top: 40px; +} + +.helps pre { + padding: 20px; + margin: 10px 0; + border: solid 1px #e7e1cd; + background-color: #fffdef; + overflow: auto; +} + +.icon_lists { + width: 100% !important; + overflow: hidden; + *zoom: 1; +} + +.icon_lists li { + width: 100px; + margin-bottom: 10px; + margin-right: 20px; + text-align: center; + list-style: none !important; + cursor: default; +} + +.icon_lists li .code-name { + line-height: 1.2; +} + +.icon_lists .icon { + display: block; + height: 100px; + line-height: 100px; + font-size: 42px; + margin: 10px auto; + color: #333; + -webkit-transition: font-size 0.25s linear, width 0.25s linear; + -moz-transition: font-size 0.25s linear, width 0.25s linear; + transition: font-size 0.25s linear, width 0.25s linear; +} + +.icon_lists .icon:hover { + font-size: 100px; +} + +.icon_lists .svg-icon { + /* 通过设置 font-size 来改变图标大小 */ + width: 1em; + /* 图标和文字相邻时,垂直对齐 */ + vertical-align: -0.15em; + /* 通过设置 color 来改变 SVG 的颜色/fill */ + fill: currentColor; + /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示 + normalize.css 中也包含这行 */ + overflow: hidden; +} + +.icon_lists li .name, +.icon_lists li .code-name { + color: #666; +} + +/* markdown 样式 */ +.markdown { + color: #666; + font-size: 14px; + line-height: 1.8; +} + +.highlight { + line-height: 1.5; +} + +.markdown img { + vertical-align: middle; + max-width: 100%; +} + +.markdown h1 { + color: #404040; + font-weight: 500; + line-height: 40px; + margin-bottom: 24px; +} + +.markdown h2, +.markdown h3, +.markdown h4, +.markdown h5, +.markdown h6 { + color: #404040; + margin: 1.6em 0 0.6em 0; + font-weight: 500; + clear: both; +} + +.markdown h1 { + font-size: 28px; +} + +.markdown h2 { + font-size: 22px; +} + +.markdown h3 { + font-size: 16px; +} + +.markdown h4 { + font-size: 14px; +} + +.markdown h5 { + font-size: 12px; +} + +.markdown h6 { + font-size: 12px; +} + +.markdown hr { + height: 1px; + border: 0; + background: #e9e9e9; + margin: 16px 0; + clear: both; +} + +.markdown p { + margin: 1em 0; +} + +.markdown>p, +.markdown>blockquote, +.markdown>.highlight, +.markdown>ol, +.markdown>ul { + width: 80%; +} + +.markdown ul>li { + list-style: circle; +} + +.markdown>ul li, +.markdown blockquote ul>li { + margin-left: 20px; + padding-left: 4px; +} + +.markdown>ul li p, +.markdown>ol li p { + margin: 0.6em 0; +} + +.markdown ol>li { + list-style: decimal; +} + +.markdown>ol li, +.markdown blockquote ol>li { + margin-left: 20px; + padding-left: 4px; +} + +.markdown code { + margin: 0 3px; + padding: 0 5px; + background: #eee; + border-radius: 3px; +} + +.markdown strong, +.markdown b { + font-weight: 600; +} + +.markdown>table { + border-collapse: collapse; + border-spacing: 0px; + empty-cells: show; + border: 1px solid #e9e9e9; + width: 95%; + margin-bottom: 24px; +} + +.markdown>table th { + white-space: nowrap; + color: #333; + font-weight: 600; +} + +.markdown>table th, +.markdown>table td { + border: 1px solid #e9e9e9; + padding: 8px 16px; + text-align: left; +} + +.markdown>table th { + background: #F7F7F7; +} + +.markdown blockquote { + font-size: 90%; + color: #999; + border-left: 4px solid #e9e9e9; + padding-left: 0.8em; + margin: 1em 0; +} + +.markdown blockquote p { + margin: 0; +} + +.markdown .anchor { + opacity: 0; + transition: opacity 0.3s ease; + margin-left: 8px; +} + +.markdown .waiting { + color: #ccc; +} + +.markdown h1:hover .anchor, +.markdown h2:hover .anchor, +.markdown h3:hover .anchor, +.markdown h4:hover .anchor, +.markdown h5:hover .anchor, +.markdown h6:hover .anchor { + opacity: 1; + display: inline-block; +} + +.markdown>br, +.markdown>p>br { + clear: both; +} + + +.hljs { + display: block; + background: white; + padding: 0.5em; + color: #333333; + overflow-x: auto; +} + +.hljs-comment, +.hljs-meta { + color: #969896; +} + +.hljs-string, +.hljs-variable, +.hljs-template-variable, +.hljs-strong, +.hljs-emphasis, +.hljs-quote { + color: #df5000; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-type { + color: #a71d5d; +} + +.hljs-literal, +.hljs-symbol, +.hljs-bullet, +.hljs-attribute { + color: #0086b3; +} + +.hljs-section, +.hljs-name { + color: #63a35c; +} + +.hljs-tag { + color: #333333; +} + +.hljs-title, +.hljs-attr, +.hljs-selector-id, +.hljs-selector-class, +.hljs-selector-attr, +.hljs-selector-pseudo { + color: #795da3; +} + +.hljs-addition { + color: #55a532; + background-color: #eaffea; +} + +.hljs-deletion { + color: #bd2c00; + background-color: #ffecec; +} + +.hljs-link { + text-decoration: underline; +} + +/* 代码高亮 */ +/* PrismJS 1.15.0 +https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */ +/** + * prism.js default theme for JavaScript, CSS and HTML + * Based on dabblet (http://dabblet.com) + * @author Lea Verou + */ +code[class*="language-"], +pre[class*="language-"] { + color: black; + background: none; + text-shadow: 0 1px white; + font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + text-align: left; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; +} + +pre[class*="language-"]::-moz-selection, +pre[class*="language-"] ::-moz-selection, +code[class*="language-"]::-moz-selection, +code[class*="language-"] ::-moz-selection { + text-shadow: none; + background: #b3d4fc; +} + +pre[class*="language-"]::selection, +pre[class*="language-"] ::selection, +code[class*="language-"]::selection, +code[class*="language-"] ::selection { + text-shadow: none; + background: #b3d4fc; +} + +@media print { + + code[class*="language-"], + pre[class*="language-"] { + text-shadow: none; + } +} + +/* Code blocks */ +pre[class*="language-"] { + padding: 1em; + margin: .5em 0; + overflow: auto; +} + +:not(pre)>code[class*="language-"], +pre[class*="language-"] { + background: #f5f2f0; +} + +/* Inline code */ +:not(pre)>code[class*="language-"] { + padding: .1em; + border-radius: .3em; + white-space: normal; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: slategray; +} + +.token.punctuation { + color: #999; +} + +.namespace { + opacity: .7; +} + +.token.property, +.token.tag, +.token.boolean, +.token.number, +.token.constant, +.token.symbol, +.token.deleted { + color: #905; +} + +.token.selector, +.token.attr-name, +.token.string, +.token.char, +.token.builtin, +.token.inserted { + color: #690; +} + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string { + color: #9a6e3a; + background: hsla(0, 0%, 100%, .5); +} + +.token.atrule, +.token.attr-value, +.token.keyword { + color: #07a; +} + +.token.function, +.token.class-name { + color: #DD4A68; +} + +.token.regex, +.token.important, +.token.variable { + color: #e90; +} + +.token.important, +.token.bold { + font-weight: bold; +} + +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} diff --git a/public/assets/iconfont/demo_index.html b/public/assets/iconfont/demo_index.html new file mode 100644 index 0000000..b24698a --- /dev/null +++ b/public/assets/iconfont/demo_index.html @@ -0,0 +1,2700 @@ + + + + + IconFont Demo + + + + + + + + + + + +
+

+ +
+
+
    + +
  • + +
    链接
    +
    &#xe7f8;
    +
  • + +
  • + +
    打印区域
    +
    &#xe7f5;
    +
  • + +
  • + +
    打印页面配置
    +
    &#xe7f6;
    +
  • + +
  • + +
    打印标题
    +
    &#xe7f7;
    +
  • + +
  • + +
    分页预览
    +
    &#xe7f2;
    +
  • + +
  • + +
    普通
    +
    &#xe7f3;
    +
  • + +
  • + +
    页面布局
    +
    &#xe7f4;
    +
  • + +
  • + +
    表格锁定
    +
    &#xe7ee;
    +
  • + +
  • + +
    转到
    +
    &#xe7f1;
    +
  • + +
  • + +
    右箭头
    +
    &#xe7ed;
    +
  • + +
  • + +
    菜单
    +
    &#xe7ef;
    +
  • + +
  • + +
    替换
    +
    &#xe7f0;
    +
  • + +
  • + +
    冻结
    +
    &#xe7e1;
    +
  • + +
  • + +
    +
    &#xe7e2;
    +
  • + +
  • + +
    +
    &#xe7e3;
    +
  • + +
  • + +
    溢出
    +
    &#xe7e4;
    +
  • + +
  • + +
    升序
    +
    &#xe7e5;
    +
  • + +
  • + +
    内框线
    +
    &#xe7e6;
    +
  • + +
  • + +
    清除筛选
    +
    &#xe7e7;
    +
  • + +
  • + +
    文本向上
    +
    &#xe7e8;
    +
  • + +
  • + +
    降序
    +
    &#xe7e9;
    +
  • + +
  • + +
    内框横线
    +
    &#xe7ea;
    +
  • + +
  • + +
    内框竖线
    +
    &#xe7eb;
    +
  • + +
  • + +
    自定义排序
    +
    &#xe7ec;
    +
  • + +
  • + +
    logo2
    +
    &#xe7df;
    +
  • + +
  • + +
    logo
    +
    &#xe7e0;
    +
  • + +
  • + +
    文本倾斜
    +
    &#xe7de;
    +
  • + +
  • + +
    加粗
    +
    &#xe7d9;
    +
  • + +
  • + +
    搜索
    +
    &#xe78a;
    +
  • + +
  • + +
    关闭
    +
    &#xe78b;
    +
  • + +
  • + +
    下一个
    +
    &#xe78c;
    +
  • + +
  • + +
    下拉
    +
    &#xe78d;
    +
  • + +
  • + +
    文本颜色
    +
    &#xe78e;
    +
  • + +
  • + +
    上一个
    +
    &#xe78f;
    +
  • + +
  • + +
    数据透视
    +
    &#xe790;
    +
  • + +
  • + +
    填充
    +
    &#xe791;
    +
  • + +
  • + +
    增加小数位
    +
    &#xe792;
    +
  • + +
  • + +
    编辑2
    +
    &#xe793;
    +
  • + +
  • + +
    截屏
    +
    &#xe794;
    +
  • + +
  • + +
    减小小数位
    +
    &#xe796;
    +
  • + +
  • + +
    菜单
    +
    &#xe797;
    +
  • + +
  • + +
    数据库
    +
    &#xe798;
    +
  • + +
  • + +
    无边框
    +
    &#xe799;
    +
  • + +
  • + +
    编辑
    +
    &#xe79a;
    +
  • + +
  • + +
    清除样式
    +
    &#xe79b;
    +
  • + +
  • + +
    删除
    +
    &#xe79c;
    +
  • + +
  • + +
    文本居中对齐
    +
    &#xe79d;
    +
  • + +
  • + +
    打印
    +
    &#xe79e;
    +
  • + +
  • + +
    文本分割
    +
    &#xe79f;
    +
  • + +
  • + +
    函数‘
    +
    &#xe7a0;
    +
  • + +
  • + +
    降序
    +
    &#xe7a1;
    +
  • + +
  • + +
    顶部对齐
    +
    &#xe7a2;
    +
  • + +
  • + +
    图片
    +
    &#xe7a3;
    +
  • + +
  • + +
    向下90
    +
    &#xe7a4;
    +
  • + +
  • + +
    竖排文字
    +
    &#xe7a5;
    +
  • + +
  • + +
    全加边框
    +
    &#xe7a6;
    +
  • + +
  • + +
    升序
    +
    &#xe7a7;
    +
  • + +
  • + +
    裁剪
    +
    &#xe7a8;
    +
  • + +
  • + +
    金额
    +
    &#xe7a9;
    +
  • + +
  • + +
    菜单1
    +
    &#xe7aa;
    +
  • + +
  • + +
    取消合并
    +
    &#xe7ab;
    +
  • + +
  • + +
    文本下划线
    +
    &#xe7ac;
    +
  • + +
  • + +
    上边框
    +
    &#xe7ad;
    +
  • + +
  • + +
    定位
    +
    &#xe7ae;
    +
  • + +
  • + +
    四周加边框
    +
    &#xe7af;
    +
  • + +
  • + +
    侧边栏收起
    +
    &#xe7b0;
    +
  • + +
  • + +
    合并
    +
    &#xe7b1;
    +
  • + +
  • + +
    向上倾斜
    +
    &#xe7b2;
    +
  • + +
  • + +
    水平对齐
    +
    &#xe7b3;
    +
  • + +
  • + +
    文本删除线
    +
    &#xe7b4;
    +
  • + +
  • + +
    文本右对齐
    +
    &#xe7b5;
    +
  • + +
  • + +
    前进
    +
    &#xe7b6;
    +
  • + +
  • + +
    图表
    +
    &#xe7b7;
    +
  • + +
  • + +
    右边框
    +
    &#xe7b8;
    +
  • + +
  • + +
    百分号
    +
    &#xe7b9;
    +
  • + +
  • + +
    格式刷
    +
    &#xe7ba;
    +
  • + +
  • + +
    保存
    +
    &#xe7bb;
    +
  • + +
  • + +
    数据验证
    +
    &#xe7bc;
    +
  • + +
  • + +
    截断
    +
    &#xe7bd;
    +
  • + +
  • + +
    格式条件
    +
    &#xe7be;
    +
  • + +
  • + +
    自动换行
    +
    &#xe7bf;
    +
  • + +
  • + +
    侧边栏展开
    +
    &#xe7c0;
    +
  • + +
  • + +
    筛选2
    +
    &#xe7c1;
    +
  • + +
  • + +
    向下倾斜
    +
    &#xe7c2;
    +
  • + +
  • + +
    溢出
    +
    &#xe7c3;
    +
  • + +
  • + +
    垂直合并
    +
    &#xe7c4;
    +
  • + +
  • + +
    文本分散对齐
    +
    &#xe7c5;
    +
  • + +
  • + +
    左边框
    +
    &#xe7c6;
    +
  • + +
  • + +
    分页查看
    +
    &#xe7c7;
    +
  • + +
  • + +
    运行
    +
    &#xe7c8;
    +
  • + +
  • + +
    +
    &#xe7c9;
    +
  • + +
  • + +
    全屏
    +
    &#xe7ca;
    +
  • + +
  • + +
    筛选
    +
    &#xe7cb;
    +
  • + +
  • + +
    更新
    +
    &#xe7cc;
    +
  • + +
  • + +
    清除
    +
    &#xe7cd;
    +
  • + +
  • + +
    +
    &#xe7ce;
    +
  • + +
  • + +
    注释
    +
    &#xe7cf;
    +
  • + +
  • + +
    +
    &#xe7d0;
    +
  • + +
  • + +
    计算
    +
    &#xe7d1;
    +
  • + +
  • + +
    +
    &#xe7d2;
    +
  • + +
  • + +
    底部对齐
    +
    &#xe7d3;
    +
  • + +
  • + +
    向上90
    +
    &#xe7d4;
    +
  • + +
  • + +
    无选装
    +
    &#xe7d5;
    +
  • + +
  • + +
    显示隐藏网格
    +
    &#xe7d6;
    +
  • + +
  • + +
    冻结
    +
    &#xe7d7;
    +
  • + +
  • + +
    文本左对齐
    +
    &#xe7d8;
    +
  • + +
  • + +
    后退
    +
    &#xe7da;
    +
  • + +
  • + +
    水平合并
    +
    &#xe7db;
    +
  • + +
  • + +
    下边框
    +
    &#xe7dc;
    +
  • + +
  • + +
    设置
    +
    &#xe7dd;
    +
  • + +
+
+

Unicode 引用

+
+ +

Unicode 是字体在网页端最原始的应用方式,特点是:

+
    +
  • 兼容性最好,支持 IE6+,及所有现代浏览器。
  • +
  • 支持按字体的方式去动态调整图标大小,颜色等等。
  • +
  • 但是因为是字体,所以不支持多色。只能使用平台里单色的图标,就算项目里有多色图标也会自动去色。
  • +
+
+

注意:新版 iconfont 支持多色图标,这些多色图标在 Unicode 模式下将不能使用,如果有需求建议使用symbol 的引用方式

+
+

Unicode 使用步骤如下:

+

第一步:拷贝项目下面生成的 @font-face

+
@font-face {
+  font-family: 'iconfont';
+  src: url('iconfont.eot');
+  src: url('iconfont.eot?#iefix') format('embedded-opentype'),
+      url('iconfont.woff2') format('woff2'),
+      url('iconfont.woff') format('woff'),
+      url('iconfont.ttf') format('truetype'),
+      url('iconfont.svg#iconfont') format('svg');
+}
+
+

第二步:定义使用 iconfont 的样式

+
.iconfont {
+  font-family: "iconfont" !important;
+  font-size: 16px;
+  font-style: normal;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+
+

第三步:挑选相应图标并获取字体编码,应用于页面

+
+<span class="iconfont">&#x33;</span>
+
+
+

"iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。

+
+
+
+
+
    + +
  • + +
    + 链接 +
    +
    .luckysheet-iconfont-lianjie +
    +
  • + +
  • + +
    + 打印区域 +
    +
    .luckysheet-iconfont-dayinquyu +
    +
  • + +
  • + +
    + 打印页面配置 +
    +
    .luckysheet-iconfont-dayinyemianpeizhi +
    +
  • + +
  • + +
    + 打印标题 +
    +
    .luckysheet-iconfont-dayinbiaoti +
    +
  • + +
  • + +
    + 分页预览 +
    +
    .luckysheet-iconfont-fenyeyulan +
    +
  • + +
  • + +
    + 普通 +
    +
    .luckysheet-iconfont-putong +
    +
  • + +
  • + +
    + 页面布局 +
    +
    .luckysheet-iconfont-yemianbuju +
    +
  • + +
  • + +
    + 表格锁定 +
    +
    .luckysheet-iconfont-biaogesuoding +
    +
  • + +
  • + +
    + 转到 +
    +
    .luckysheet-iconfont-zhuandao1 +
    +
  • + +
  • + +
    + 右箭头 +
    +
    .luckysheet-iconfont-youjiantou +
    +
  • + +
  • + +
    + 菜单 +
    +
    .luckysheet-iconfont-caidan2 +
    +
  • + +
  • + +
    + 替换 +
    +
    .luckysheet-iconfont-tihuan +
    +
  • + +
  • + +
    + 冻结 +
    +
    .luckysheet-iconfont-dongjie1 +
    +
  • + +
  • + +
    + 剪 +
    +
    .luckysheet-iconfont-jian1 +
    +
  • + +
  • + +
    + 加 +
    +
    .luckysheet-iconfont-jia1 +
    +
  • + +
  • + +
    + 溢出 +
    +
    .luckysheet-iconfont-yichu1 +
    +
  • + +
  • + +
    + 升序 +
    +
    .luckysheet-iconfont-shengxu1 +
    +
  • + +
  • + +
    + 内框线 +
    +
    .luckysheet-iconfont-neikuangxian +
    +
  • + +
  • + +
    + 清除筛选 +
    +
    .luckysheet-iconfont-qingchushaixuan +
    +
  • + +
  • + +
    + 文本向上 +
    +
    .luckysheet-iconfont-wenbenxiangshang +
    +
  • + +
  • + +
    + 降序 +
    +
    .luckysheet-iconfont-jiangxu1 +
    +
  • + +
  • + +
    + 内框横线 +
    +
    .luckysheet-iconfont-neikuanghengxian +
    +
  • + +
  • + +
    + 内框竖线 +
    +
    .luckysheet-iconfont-neikuangshuxian +
    +
  • + +
  • + +
    + 自定义排序 +
    +
    .luckysheet-iconfont-zidingyipaixu +
    +
  • + +
  • + +
    + logo2 +
    +
    .luckysheet-iconfont-logo2 +
    +
  • + +
  • + +
    + logo +
    +
    .luckysheet-iconfont-logo +
    +
  • + +
  • + +
    + 文本倾斜 +
    +
    .luckysheet-iconfont-wenbenqingxie1 +
    +
  • + +
  • + +
    + 加粗 +
    +
    .luckysheet-iconfont-jiacu +
    +
  • + +
  • + +
    + 搜索 +
    +
    .luckysheet-iconfont-sousuo +
    +
  • + +
  • + +
    + 关闭 +
    +
    .luckysheet-iconfont-guanbi +
    +
  • + +
  • + +
    + 下一个 +
    +
    .luckysheet-iconfont-xiayige +
    +
  • + +
  • + +
    + 下拉 +
    +
    .luckysheet-iconfont-xiala +
    +
  • + +
  • + +
    + 文本颜色 +
    +
    .luckysheet-iconfont-wenbenyanse +
    +
  • + +
  • + +
    + 上一个 +
    +
    .luckysheet-iconfont-shangyige +
    +
  • + +
  • + +
    + 数据透视 +
    +
    .luckysheet-iconfont-shujutoushi +
    +
  • + +
  • + +
    + 填充 +
    +
    .luckysheet-iconfont-tianchong +
    +
  • + +
  • + +
    + 增加小数位 +
    +
    .luckysheet-iconfont-zengjiaxiaoshuwei +
    +
  • + +
  • + +
    + 编辑2 +
    +
    .luckysheet-iconfont-bianji2 +
    +
  • + +
  • + +
    + 截屏 +
    +
    .luckysheet-iconfont-jieping +
    +
  • + +
  • + +
    + 减小小数位 +
    +
    .luckysheet-iconfont-jianxiaoxiaoshuwei +
    +
  • + +
  • + +
    + 菜单 +
    +
    .luckysheet-iconfont-caidan +
    +
  • + +
  • + +
    + 数据库 +
    +
    .luckysheet-iconfont-shujuku +
    +
  • + +
  • + +
    + 无边框 +
    +
    .luckysheet-iconfont-wubiankuang +
    +
  • + +
  • + +
    + 编辑 +
    +
    .luckysheet-iconfont-bianji +
    +
  • + +
  • + +
    + 清除样式 +
    +
    .luckysheet-iconfont-qingchuyangshi +
    +
  • + +
  • + +
    + 删除 +
    +
    .luckysheet-iconfont-shanchu +
    +
  • + +
  • + +
    + 文本居中对齐 +
    +
    .luckysheet-iconfont-wenbenjuzhongduiqi +
    +
  • + +
  • + +
    + 打印 +
    +
    .luckysheet-iconfont-dayin +
    +
  • + +
  • + +
    + 文本分割 +
    +
    .luckysheet-iconfont-wenbenfenge +
    +
  • + +
  • + +
    + 函数‘ +
    +
    .luckysheet-iconfont-hanshu +
    +
  • + +
  • + +
    + 降序 +
    +
    .luckysheet-iconfont-jiangxu +
    +
  • + +
  • + +
    + 顶部对齐 +
    +
    .luckysheet-iconfont-dingbuduiqi +
    +
  • + +
  • + +
    + 图片 +
    +
    .luckysheet-iconfont-tupian +
    +
  • + +
  • + +
    + 向下90 +
    +
    .luckysheet-iconfont-xiangxia90 +
    +
  • + +
  • + +
    + 竖排文字 +
    +
    .luckysheet-iconfont-shupaiwenzi +
    +
  • + +
  • + +
    + 全加边框 +
    +
    .luckysheet-iconfont-quanjiabiankuang +
    +
  • + +
  • + +
    + 升序 +
    +
    .luckysheet-iconfont-shengxu +
    +
  • + +
  • + +
    + 裁剪 +
    +
    .luckysheet-iconfont-caijian +
    +
  • + +
  • + +
    + 金额 +
    +
    .luckysheet-iconfont-jine +
    +
  • + +
  • + +
    + 菜单1 +
    +
    .luckysheet-iconfont-caidan1 +
    +
  • + +
  • + +
    + 取消合并 +
    +
    .luckysheet-iconfont-quxiaohebing +
    +
  • + +
  • + +
    + 文本下划线 +
    +
    .luckysheet-iconfont-wenbenxiahuaxian +
    +
  • + +
  • + +
    + 上边框 +
    +
    .luckysheet-iconfont-shangbiankuang +
    +
  • + +
  • + +
    + 定位 +
    +
    .luckysheet-iconfont-dingwei +
    +
  • + +
  • + +
    + 四周加边框 +
    +
    .luckysheet-iconfont-sizhoujiabiankuang +
    +
  • + +
  • + +
    + 侧边栏收起 +
    +
    .luckysheet-iconfont-cebianlanshouqi +
    +
  • + +
  • + +
    + 合并 +
    +
    .luckysheet-iconfont-hebing +
    +
  • + +
  • + +
    + 向上倾斜 +
    +
    .luckysheet-iconfont-xiangshangqingxie +
    +
  • + +
  • + +
    + 水平对齐 +
    +
    .luckysheet-iconfont-shuipingduiqi +
    +
  • + +
  • + +
    + 文本删除线 +
    +
    .luckysheet-iconfont-wenbenshanchuxian +
    +
  • + +
  • + +
    + 文本右对齐 +
    +
    .luckysheet-iconfont-wenbenyouduiqi +
    +
  • + +
  • + +
    + 前进 +
    +
    .luckysheet-iconfont-qianjin +
    +
  • + +
  • + +
    + 图表 +
    +
    .luckysheet-iconfont-tubiao +
    +
  • + +
  • + +
    + 右边框 +
    +
    .luckysheet-iconfont-youbiankuang +
    +
  • + +
  • + +
    + 百分号 +
    +
    .luckysheet-iconfont-baifenhao +
    +
  • + +
  • + +
    + 格式刷 +
    +
    .luckysheet-iconfont-geshishua +
    +
  • + +
  • + +
    + 保存 +
    +
    .luckysheet-iconfont-baocun +
    +
  • + +
  • + +
    + 数据验证 +
    +
    .luckysheet-iconfont-shujuyanzheng +
    +
  • + +
  • + +
    + 截断 +
    +
    .luckysheet-iconfont-jieduan +
    +
  • + +
  • + +
    + 格式条件 +
    +
    .luckysheet-iconfont-geshitiaojian +
    +
  • + +
  • + +
    + 自动换行 +
    +
    .luckysheet-iconfont-zidonghuanhang +
    +
  • + +
  • + +
    + 侧边栏展开 +
    +
    .luckysheet-iconfont-cebianlanzhankai +
    +
  • + +
  • + +
    + 筛选2 +
    +
    .luckysheet-iconfont-shaixuan2 +
    +
  • + +
  • + +
    + 向下倾斜 +
    +
    .luckysheet-iconfont-xiangxiaqingxie +
    +
  • + +
  • + +
    + 溢出 +
    +
    .luckysheet-iconfont-yichu +
    +
  • + +
  • + +
    + 垂直合并 +
    +
    .luckysheet-iconfont-chuizhihebing +
    +
  • + +
  • + +
    + 文本分散对齐 +
    +
    .luckysheet-iconfont-wenbenfensanduiqi +
    +
  • + +
  • + +
    + 左边框 +
    +
    .luckysheet-iconfont-zuobiankuang +
    +
  • + +
  • + +
    + 分页查看 +
    +
    .luckysheet-iconfont-fenyechakan +
    +
  • + +
  • + +
    + 运行 +
    +
    .luckysheet-iconfont-yunhang +
    +
  • + +
  • + +
    + 列 +
    +
    .luckysheet-iconfont-lie +
    +
  • + +
  • + +
    + 全屏 +
    +
    .luckysheet-iconfont-quanping +
    +
  • + +
  • + +
    + 筛选 +
    +
    .luckysheet-iconfont-shaixuan +
    +
  • + +
  • + +
    + 更新 +
    +
    .luckysheet-iconfont-gengxin +
    +
  • + +
  • + +
    + 清除 +
    +
    .luckysheet-iconfont-qingchu +
    +
  • + +
  • + +
    + 行 +
    +
    .luckysheet-iconfont-hang +
    +
  • + +
  • + +
    + 注释 +
    +
    .luckysheet-iconfont-zhushi +
    +
  • + +
  • + +
    + 剪 +
    +
    .luckysheet-iconfont-jian +
    +
  • + +
  • + +
    + 计算 +
    +
    .luckysheet-iconfont-jisuan +
    +
  • + +
  • + +
    + 加 +
    +
    .luckysheet-iconfont-jia +
    +
  • + +
  • + +
    + 底部对齐 +
    +
    .luckysheet-iconfont-dibuduiqi +
    +
  • + +
  • + +
    + 向上90 +
    +
    .luckysheet-iconfont-xiangshang90 +
    +
  • + +
  • + +
    + 无选装 +
    +
    .luckysheet-iconfont-wuxuanzhuang +
    +
  • + +
  • + +
    + 显示隐藏网格 +
    +
    .luckysheet-iconfont-xianshiyincangwangge +
    +
  • + +
  • + +
    + 冻结 +
    +
    .luckysheet-iconfont-dongjie +
    +
  • + +
  • + +
    + 文本左对齐 +
    +
    .luckysheet-iconfont-wenbenzuoduiqi +
    +
  • + +
  • + +
    + 后退 +
    +
    .luckysheet-iconfont-houtui +
    +
  • + +
  • + +
    + 水平合并 +
    +
    .luckysheet-iconfont-shuipinghebing +
    +
  • + +
  • + +
    + 下边框 +
    +
    .luckysheet-iconfont-xiabiankuang +
    +
  • + +
  • + +
    + 设置 +
    +
    .luckysheet-iconfont-shezhi +
    +
  • + +
+
+

font-class 引用

+
+ +

font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。

+

与 Unicode 使用方式相比,具有如下特点:

+
    +
  • 兼容性良好,支持 IE8+,及所有现代浏览器。
  • +
  • 相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。
  • +
  • 因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。
  • +
  • 不过因为本质上还是使用的字体,所以多色图标还是不支持的。
  • +
+

使用步骤如下:

+

第一步:引入项目下面生成的 fontclass 代码:

+
<link rel="stylesheet" href="./iconfont.css">
+
+

第二步:挑选相应图标并获取类名,应用于页面:

+
<span class="iconfont luckysheet-iconfont-xxx"></span>
+
+
+

" + iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。

+
+
+
+
+
    + +
  • + +
    链接
    +
    #luckysheet-iconfont-lianjie
    +
  • + +
  • + +
    打印区域
    +
    #luckysheet-iconfont-dayinquyu
    +
  • + +
  • + +
    打印页面配置
    +
    #luckysheet-iconfont-dayinyemianpeizhi
    +
  • + +
  • + +
    打印标题
    +
    #luckysheet-iconfont-dayinbiaoti
    +
  • + +
  • + +
    分页预览
    +
    #luckysheet-iconfont-fenyeyulan
    +
  • + +
  • + +
    普通
    +
    #luckysheet-iconfont-putong
    +
  • + +
  • + +
    页面布局
    +
    #luckysheet-iconfont-yemianbuju
    +
  • + +
  • + +
    表格锁定
    +
    #luckysheet-iconfont-biaogesuoding
    +
  • + +
  • + +
    转到
    +
    #luckysheet-iconfont-zhuandao1
    +
  • + +
  • + +
    右箭头
    +
    #luckysheet-iconfont-youjiantou
    +
  • + +
  • + +
    菜单
    +
    #luckysheet-iconfont-caidan2
    +
  • + +
  • + +
    替换
    +
    #luckysheet-iconfont-tihuan
    +
  • + +
  • + +
    冻结
    +
    #luckysheet-iconfont-dongjie1
    +
  • + +
  • + +
    +
    #luckysheet-iconfont-jian1
    +
  • + +
  • + +
    +
    #luckysheet-iconfont-jia1
    +
  • + +
  • + +
    溢出
    +
    #luckysheet-iconfont-yichu1
    +
  • + +
  • + +
    升序
    +
    #luckysheet-iconfont-shengxu1
    +
  • + +
  • + +
    内框线
    +
    #luckysheet-iconfont-neikuangxian
    +
  • + +
  • + +
    清除筛选
    +
    #luckysheet-iconfont-qingchushaixuan
    +
  • + +
  • + +
    文本向上
    +
    #luckysheet-iconfont-wenbenxiangshang
    +
  • + +
  • + +
    降序
    +
    #luckysheet-iconfont-jiangxu1
    +
  • + +
  • + +
    内框横线
    +
    #luckysheet-iconfont-neikuanghengxian
    +
  • + +
  • + +
    内框竖线
    +
    #luckysheet-iconfont-neikuangshuxian
    +
  • + +
  • + +
    自定义排序
    +
    #luckysheet-iconfont-zidingyipaixu
    +
  • + +
  • + +
    logo2
    +
    #luckysheet-iconfont-logo2
    +
  • + +
  • + +
    logo
    +
    #luckysheet-iconfont-logo
    +
  • + +
  • + +
    文本倾斜
    +
    #luckysheet-iconfont-wenbenqingxie1
    +
  • + +
  • + +
    加粗
    +
    #luckysheet-iconfont-jiacu
    +
  • + +
  • + +
    搜索
    +
    #luckysheet-iconfont-sousuo
    +
  • + +
  • + +
    关闭
    +
    #luckysheet-iconfont-guanbi
    +
  • + +
  • + +
    下一个
    +
    #luckysheet-iconfont-xiayige
    +
  • + +
  • + +
    下拉
    +
    #luckysheet-iconfont-xiala
    +
  • + +
  • + +
    文本颜色
    +
    #luckysheet-iconfont-wenbenyanse
    +
  • + +
  • + +
    上一个
    +
    #luckysheet-iconfont-shangyige
    +
  • + +
  • + +
    数据透视
    +
    #luckysheet-iconfont-shujutoushi
    +
  • + +
  • + +
    填充
    +
    #luckysheet-iconfont-tianchong
    +
  • + +
  • + +
    增加小数位
    +
    #luckysheet-iconfont-zengjiaxiaoshuwei
    +
  • + +
  • + +
    编辑2
    +
    #luckysheet-iconfont-bianji2
    +
  • + +
  • + +
    截屏
    +
    #luckysheet-iconfont-jieping
    +
  • + +
  • + +
    减小小数位
    +
    #luckysheet-iconfont-jianxiaoxiaoshuwei
    +
  • + +
  • + +
    菜单
    +
    #luckysheet-iconfont-caidan
    +
  • + +
  • + +
    数据库
    +
    #luckysheet-iconfont-shujuku
    +
  • + +
  • + +
    无边框
    +
    #luckysheet-iconfont-wubiankuang
    +
  • + +
  • + +
    编辑
    +
    #luckysheet-iconfont-bianji
    +
  • + +
  • + +
    清除样式
    +
    #luckysheet-iconfont-qingchuyangshi
    +
  • + +
  • + +
    删除
    +
    #luckysheet-iconfont-shanchu
    +
  • + +
  • + +
    文本居中对齐
    +
    #luckysheet-iconfont-wenbenjuzhongduiqi
    +
  • + +
  • + +
    打印
    +
    #luckysheet-iconfont-dayin
    +
  • + +
  • + +
    文本分割
    +
    #luckysheet-iconfont-wenbenfenge
    +
  • + +
  • + +
    函数‘
    +
    #luckysheet-iconfont-hanshu
    +
  • + +
  • + +
    降序
    +
    #luckysheet-iconfont-jiangxu
    +
  • + +
  • + +
    顶部对齐
    +
    #luckysheet-iconfont-dingbuduiqi
    +
  • + +
  • + +
    图片
    +
    #luckysheet-iconfont-tupian
    +
  • + +
  • + +
    向下90
    +
    #luckysheet-iconfont-xiangxia90
    +
  • + +
  • + +
    竖排文字
    +
    #luckysheet-iconfont-shupaiwenzi
    +
  • + +
  • + +
    全加边框
    +
    #luckysheet-iconfont-quanjiabiankuang
    +
  • + +
  • + +
    升序
    +
    #luckysheet-iconfont-shengxu
    +
  • + +
  • + +
    裁剪
    +
    #luckysheet-iconfont-caijian
    +
  • + +
  • + +
    金额
    +
    #luckysheet-iconfont-jine
    +
  • + +
  • + +
    菜单1
    +
    #luckysheet-iconfont-caidan1
    +
  • + +
  • + +
    取消合并
    +
    #luckysheet-iconfont-quxiaohebing
    +
  • + +
  • + +
    文本下划线
    +
    #luckysheet-iconfont-wenbenxiahuaxian
    +
  • + +
  • + +
    上边框
    +
    #luckysheet-iconfont-shangbiankuang
    +
  • + +
  • + +
    定位
    +
    #luckysheet-iconfont-dingwei
    +
  • + +
  • + +
    四周加边框
    +
    #luckysheet-iconfont-sizhoujiabiankuang
    +
  • + +
  • + +
    侧边栏收起
    +
    #luckysheet-iconfont-cebianlanshouqi
    +
  • + +
  • + +
    合并
    +
    #luckysheet-iconfont-hebing
    +
  • + +
  • + +
    向上倾斜
    +
    #luckysheet-iconfont-xiangshangqingxie
    +
  • + +
  • + +
    水平对齐
    +
    #luckysheet-iconfont-shuipingduiqi
    +
  • + +
  • + +
    文本删除线
    +
    #luckysheet-iconfont-wenbenshanchuxian
    +
  • + +
  • + +
    文本右对齐
    +
    #luckysheet-iconfont-wenbenyouduiqi
    +
  • + +
  • + +
    前进
    +
    #luckysheet-iconfont-qianjin
    +
  • + +
  • + +
    图表
    +
    #luckysheet-iconfont-tubiao
    +
  • + +
  • + +
    右边框
    +
    #luckysheet-iconfont-youbiankuang
    +
  • + +
  • + +
    百分号
    +
    #luckysheet-iconfont-baifenhao
    +
  • + +
  • + +
    格式刷
    +
    #luckysheet-iconfont-geshishua
    +
  • + +
  • + +
    保存
    +
    #luckysheet-iconfont-baocun
    +
  • + +
  • + +
    数据验证
    +
    #luckysheet-iconfont-shujuyanzheng
    +
  • + +
  • + +
    截断
    +
    #luckysheet-iconfont-jieduan
    +
  • + +
  • + +
    格式条件
    +
    #luckysheet-iconfont-geshitiaojian
    +
  • + +
  • + +
    自动换行
    +
    #luckysheet-iconfont-zidonghuanhang
    +
  • + +
  • + +
    侧边栏展开
    +
    #luckysheet-iconfont-cebianlanzhankai
    +
  • + +
  • + +
    筛选2
    +
    #luckysheet-iconfont-shaixuan2
    +
  • + +
  • + +
    向下倾斜
    +
    #luckysheet-iconfont-xiangxiaqingxie
    +
  • + +
  • + +
    溢出
    +
    #luckysheet-iconfont-yichu
    +
  • + +
  • + +
    垂直合并
    +
    #luckysheet-iconfont-chuizhihebing
    +
  • + +
  • + +
    文本分散对齐
    +
    #luckysheet-iconfont-wenbenfensanduiqi
    +
  • + +
  • + +
    左边框
    +
    #luckysheet-iconfont-zuobiankuang
    +
  • + +
  • + +
    分页查看
    +
    #luckysheet-iconfont-fenyechakan
    +
  • + +
  • + +
    运行
    +
    #luckysheet-iconfont-yunhang
    +
  • + +
  • + +
    +
    #luckysheet-iconfont-lie
    +
  • + +
  • + +
    全屏
    +
    #luckysheet-iconfont-quanping
    +
  • + +
  • + +
    筛选
    +
    #luckysheet-iconfont-shaixuan
    +
  • + +
  • + +
    更新
    +
    #luckysheet-iconfont-gengxin
    +
  • + +
  • + +
    清除
    +
    #luckysheet-iconfont-qingchu
    +
  • + +
  • + +
    +
    #luckysheet-iconfont-hang
    +
  • + +
  • + +
    注释
    +
    #luckysheet-iconfont-zhushi
    +
  • + +
  • + +
    +
    #luckysheet-iconfont-jian
    +
  • + +
  • + +
    计算
    +
    #luckysheet-iconfont-jisuan
    +
  • + +
  • + +
    +
    #luckysheet-iconfont-jia
    +
  • + +
  • + +
    底部对齐
    +
    #luckysheet-iconfont-dibuduiqi
    +
  • + +
  • + +
    向上90
    +
    #luckysheet-iconfont-xiangshang90
    +
  • + +
  • + +
    无选装
    +
    #luckysheet-iconfont-wuxuanzhuang
    +
  • + +
  • + +
    显示隐藏网格
    +
    #luckysheet-iconfont-xianshiyincangwangge
    +
  • + +
  • + +
    冻结
    +
    #luckysheet-iconfont-dongjie
    +
  • + +
  • + +
    文本左对齐
    +
    #luckysheet-iconfont-wenbenzuoduiqi
    +
  • + +
  • + +
    后退
    +
    #luckysheet-iconfont-houtui
    +
  • + +
  • + +
    水平合并
    +
    #luckysheet-iconfont-shuipinghebing
    +
  • + +
  • + +
    下边框
    +
    #luckysheet-iconfont-xiabiankuang
    +
  • + +
  • + +
    设置
    +
    #luckysheet-iconfont-shezhi
    +
  • + +
+
+

Symbol 引用

+
+ +

这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇文章 + 这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:

+
    +
  • 支持多色图标了,不再受单色限制。
  • +
  • 通过一些技巧,支持像字体那样,通过 font-size, color 来调整样式。
  • +
  • 兼容性较差,支持 IE9+,及现代浏览器。
  • +
  • 浏览器渲染 SVG 的性能一般,还不如 png。
  • +
+

使用步骤如下:

+

第一步:引入项目下面生成的 symbol 代码:

+
<script src="./iconfont.js"></script>
+
+

第二步:加入通用 CSS 代码(引入一次就行):

+
<style>
+.icon {
+  width: 1em;
+  height: 1em;
+  vertical-align: -0.15em;
+  fill: currentColor;
+  overflow: hidden;
+}
+</style>
+
+

第三步:挑选相应图标并获取类名,应用于页面:

+
<svg class="icon" aria-hidden="true">
+  <use xlink:href="#icon-xxx"></use>
+</svg>
+
+
+
+ +
+
+ + + diff --git a/public/assets/iconfont/iconfont.css b/public/assets/iconfont/iconfont.css new file mode 100644 index 0000000..d76bed6 --- /dev/null +++ b/public/assets/iconfont/iconfont.css @@ -0,0 +1,457 @@ +@font-face {font-family: "iconfont"; + src: url('iconfont.eot?t=1605236775724'); /* IE9 */ + src: url('iconfont.eot?t=1605236775724#iefix') format('embedded-opentype'), /* IE6-IE8 */ + url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'), + url('iconfont.woff?t=1605236775724') format('woff'), + url('iconfont.ttf?t=1605236775724') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ + url('iconfont.svg?t=1605236775724#iconfont') format('svg'); /* iOS 4.1- */ +} + +.iconfont { + font-family: "iconfont" !important; + font-size: 16px; + font-style: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.luckysheet-iconfont-lianjie:before { + content: "\e7f8"; +} + +.luckysheet-iconfont-dayinquyu:before { + content: "\e7f5"; +} + +.luckysheet-iconfont-dayinyemianpeizhi:before { + content: "\e7f6"; +} + +.luckysheet-iconfont-dayinbiaoti:before { + content: "\e7f7"; +} + +.luckysheet-iconfont-fenyeyulan:before { + content: "\e7f2"; +} + +.luckysheet-iconfont-putong:before { + content: "\e7f3"; +} + +.luckysheet-iconfont-yemianbuju:before { + content: "\e7f4"; +} + +.luckysheet-iconfont-biaogesuoding:before { + content: "\e7ee"; +} + +.luckysheet-iconfont-zhuandao1:before { + content: "\e7f1"; +} + +.luckysheet-iconfont-youjiantou:before { + content: "\e7ed"; +} + +.luckysheet-iconfont-caidan2:before { + content: "\e7ef"; +} + +.luckysheet-iconfont-tihuan:before { + content: "\e7f0"; +} + +.luckysheet-iconfont-dongjie1:before { + content: "\e7e1"; +} + +.luckysheet-iconfont-jian1:before { + content: "\e7e2"; +} + +.luckysheet-iconfont-jia1:before { + content: "\e7e3"; +} + +.luckysheet-iconfont-yichu1:before { + content: "\e7e4"; +} + +.luckysheet-iconfont-shengxu1:before { + content: "\e7e5"; +} + +.luckysheet-iconfont-neikuangxian:before { + content: "\e7e6"; +} + +.luckysheet-iconfont-qingchushaixuan:before { + content: "\e7e7"; +} + +.luckysheet-iconfont-wenbenxiangshang:before { + content: "\e7e8"; +} + +.luckysheet-iconfont-jiangxu1:before { + content: "\e7e9"; +} + +.luckysheet-iconfont-neikuanghengxian:before { + content: "\e7ea"; +} + +.luckysheet-iconfont-neikuangshuxian:before { + content: "\e7eb"; +} + +.luckysheet-iconfont-zidingyipaixu:before { + content: "\e7ec"; +} + +.luckysheet-iconfont-logo2:before { + content: "\e7df"; +} + +.luckysheet-iconfont-logo:before { + content: "\e7e0"; +} + +.luckysheet-iconfont-wenbenqingxie1:before { + content: "\e7de"; +} + +.luckysheet-iconfont-jiacu:before { + content: "\e7d9"; +} + +.luckysheet-iconfont-sousuo:before { + content: "\e78a"; +} + +.luckysheet-iconfont-guanbi:before { + content: "\e78b"; +} + +.luckysheet-iconfont-xiayige:before { + content: "\e78c"; +} + +.luckysheet-iconfont-xiala:before { + content: "\e78d"; +} + +.luckysheet-iconfont-wenbenyanse:before { + content: "\e78e"; +} + +.luckysheet-iconfont-shangyige:before { + content: "\e78f"; +} + +.luckysheet-iconfont-shujutoushi:before { + content: "\e790"; +} + +.luckysheet-iconfont-tianchong:before { + content: "\e791"; +} + +.luckysheet-iconfont-zengjiaxiaoshuwei:before { + content: "\e792"; +} + +.luckysheet-iconfont-bianji2:before { + content: "\e793"; +} + +.luckysheet-iconfont-jieping:before { + content: "\e794"; +} + +.luckysheet-iconfont-jianxiaoxiaoshuwei:before { + content: "\e796"; +} + +.luckysheet-iconfont-caidan:before { + content: "\e797"; +} + +.luckysheet-iconfont-shujuku:before { + content: "\e798"; +} + +.luckysheet-iconfont-wubiankuang:before { + content: "\e799"; +} + +.luckysheet-iconfont-bianji:before { + content: "\e79a"; +} + +.luckysheet-iconfont-qingchuyangshi:before { + content: "\e79b"; +} + +.luckysheet-iconfont-shanchu:before { + content: "\e79c"; +} + +.luckysheet-iconfont-wenbenjuzhongduiqi:before { + content: "\e79d"; +} + +.luckysheet-iconfont-dayin:before { + content: "\e79e"; +} + +.luckysheet-iconfont-wenbenfenge:before { + content: "\e79f"; +} + +.luckysheet-iconfont-hanshu:before { + content: "\e7a0"; +} + +.luckysheet-iconfont-jiangxu:before { + content: "\e7a1"; +} + +.luckysheet-iconfont-dingbuduiqi:before { + content: "\e7a2"; +} + +.luckysheet-iconfont-tupian:before { + content: "\e7a3"; +} + +.luckysheet-iconfont-xiangxia90:before { + content: "\e7a4"; +} + +.luckysheet-iconfont-shupaiwenzi:before { + content: "\e7a5"; +} + +.luckysheet-iconfont-quanjiabiankuang:before { + content: "\e7a6"; +} + +.luckysheet-iconfont-shengxu:before { + content: "\e7a7"; +} + +.luckysheet-iconfont-caijian:before { + content: "\e7a8"; +} + +.luckysheet-iconfont-jine:before { + content: "\e7a9"; +} + +.luckysheet-iconfont-caidan1:before { + content: "\e7aa"; +} + +.luckysheet-iconfont-quxiaohebing:before { + content: "\e7ab"; +} + +.luckysheet-iconfont-wenbenxiahuaxian:before { + content: "\e7ac"; +} + +.luckysheet-iconfont-shangbiankuang:before { + content: "\e7ad"; +} + +.luckysheet-iconfont-dingwei:before { + content: "\e7ae"; +} + +.luckysheet-iconfont-sizhoujiabiankuang:before { + content: "\e7af"; +} + +.luckysheet-iconfont-cebianlanshouqi:before { + content: "\e7b0"; +} + +.luckysheet-iconfont-hebing:before { + content: "\e7b1"; +} + +.luckysheet-iconfont-xiangshangqingxie:before { + content: "\e7b2"; +} + +.luckysheet-iconfont-shuipingduiqi:before { + content: "\e7b3"; +} + +.luckysheet-iconfont-wenbenshanchuxian:before { + content: "\e7b4"; +} + +.luckysheet-iconfont-wenbenyouduiqi:before { + content: "\e7b5"; +} + +.luckysheet-iconfont-qianjin:before { + content: "\e7b6"; +} + +.luckysheet-iconfont-tubiao:before { + content: "\e7b7"; +} + +.luckysheet-iconfont-youbiankuang:before { + content: "\e7b8"; +} + +.luckysheet-iconfont-baifenhao:before { + content: "\e7b9"; +} + +.luckysheet-iconfont-geshishua:before { + content: "\e7ba"; +} + +.luckysheet-iconfont-baocun:before { + content: "\e7bb"; +} + +.luckysheet-iconfont-shujuyanzheng:before { + content: "\e7bc"; +} + +.luckysheet-iconfont-jieduan:before { + content: "\e7bd"; +} + +.luckysheet-iconfont-geshitiaojian:before { + content: "\e7be"; +} + +.luckysheet-iconfont-zidonghuanhang:before { + content: "\e7bf"; +} + +.luckysheet-iconfont-cebianlanzhankai:before { + content: "\e7c0"; +} + +.luckysheet-iconfont-shaixuan2:before { + content: "\e7c1"; +} + +.luckysheet-iconfont-xiangxiaqingxie:before { + content: "\e7c2"; +} + +.luckysheet-iconfont-yichu:before { + content: "\e7c3"; +} + +.luckysheet-iconfont-chuizhihebing:before { + content: "\e7c4"; +} + +.luckysheet-iconfont-wenbenfensanduiqi:before { + content: "\e7c5"; +} + +.luckysheet-iconfont-zuobiankuang:before { + content: "\e7c6"; +} + +.luckysheet-iconfont-fenyechakan:before { + content: "\e7c7"; +} + +.luckysheet-iconfont-yunhang:before { + content: "\e7c8"; +} + +.luckysheet-iconfont-lie:before { + content: "\e7c9"; +} + +.luckysheet-iconfont-quanping:before { + content: "\e7ca"; +} + +.luckysheet-iconfont-shaixuan:before { + content: "\e7cb"; +} + +.luckysheet-iconfont-gengxin:before { + content: "\e7cc"; +} + +.luckysheet-iconfont-qingchu:before { + content: "\e7cd"; +} + +.luckysheet-iconfont-hang:before { + content: "\e7ce"; +} + +.luckysheet-iconfont-zhushi:before { + content: "\e7cf"; +} + +.luckysheet-iconfont-jian:before { + content: "\e7d0"; +} + +.luckysheet-iconfont-jisuan:before { + content: "\e7d1"; +} + +.luckysheet-iconfont-jia:before { + content: "\e7d2"; +} + +.luckysheet-iconfont-dibuduiqi:before { + content: "\e7d3"; +} + +.luckysheet-iconfont-xiangshang90:before { + content: "\e7d4"; +} + +.luckysheet-iconfont-wuxuanzhuang:before { + content: "\e7d5"; +} + +.luckysheet-iconfont-xianshiyincangwangge:before { + content: "\e7d6"; +} + +.luckysheet-iconfont-dongjie:before { + content: "\e7d7"; +} + +.luckysheet-iconfont-wenbenzuoduiqi:before { + content: "\e7d8"; +} + +.luckysheet-iconfont-houtui:before { + content: "\e7da"; +} + +.luckysheet-iconfont-shuipinghebing:before { + content: "\e7db"; +} + +.luckysheet-iconfont-xiabiankuang:before { + content: "\e7dc"; +} + +.luckysheet-iconfont-shezhi:before { + content: "\e7dd"; +} + diff --git a/public/assets/iconfont/iconfont.eot b/public/assets/iconfont/iconfont.eot new file mode 100644 index 0000000..7cc7413 Binary files /dev/null and b/public/assets/iconfont/iconfont.eot differ diff --git a/public/assets/iconfont/iconfont.js b/public/assets/iconfont/iconfont.js new file mode 100644 index 0000000..803f0f5 --- /dev/null +++ b/public/assets/iconfont/iconfont.js @@ -0,0 +1 @@ +!function(h){var l,a,v,i,t,z,o='',M=(M=document.getElementsByTagName("script"))[M.length-1].getAttribute("data-injectcss");if(M&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(h){console&&console.log(h)}}function e(){t||(t=!0,v())}l=function(){var h,l,a,v;(v=document.createElement("div")).innerHTML=o,o=null,(a=v.getElementsByTagName("svg")[0])&&(a.setAttribute("aria-hidden","true"),a.style.position="absolute",a.style.width=0,a.style.height=0,a.style.overflow="hidden",h=a,(l=document.body).firstChild?(v=h,(a=l.firstChild).parentNode.insertBefore(v,a)):l.appendChild(h))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(l,0):(a=function(){document.removeEventListener("DOMContentLoaded",a,!1),l()},document.addEventListener("DOMContentLoaded",a,!1)):document.attachEvent&&(v=l,i=h.document,t=!1,(z=function(){try{i.documentElement.doScroll("left")}catch(h){return void setTimeout(z,50)}e()})(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,e())})}(window); \ No newline at end of file diff --git a/public/assets/iconfont/iconfont.json b/public/assets/iconfont/iconfont.json new file mode 100644 index 0000000..3d547f7 --- /dev/null +++ b/public/assets/iconfont/iconfont.json @@ -0,0 +1,779 @@ +{ + "id": "1990368", + "name": "lucksheet", + "font_family": "iconfont", + "css_prefix_text": "luckysheet-iconfont-", + "description": "", + "glyphs": [ + { + "icon_id": "17878780", + "name": "链接", + "font_class": "lianjie", + "unicode": "e7f8", + "unicode_decimal": 59384 + }, + { + "icon_id": "17612330", + "name": "打印区域", + "font_class": "dayinquyu", + "unicode": "e7f5", + "unicode_decimal": 59381 + }, + { + "icon_id": "17612331", + "name": "打印页面配置", + "font_class": "dayinyemianpeizhi", + "unicode": "e7f6", + "unicode_decimal": 59382 + }, + { + "icon_id": "17612332", + "name": "打印标题", + "font_class": "dayinbiaoti", + "unicode": "e7f7", + "unicode_decimal": 59383 + }, + { + "icon_id": "17600443", + "name": "分页预览", + "font_class": "fenyeyulan", + "unicode": "e7f2", + "unicode_decimal": 59378 + }, + { + "icon_id": "17600444", + "name": "普通", + "font_class": "putong", + "unicode": "e7f3", + "unicode_decimal": 59379 + }, + { + "icon_id": "17600445", + "name": "页面布局", + "font_class": "yemianbuju", + "unicode": "e7f4", + "unicode_decimal": 59380 + }, + { + "icon_id": "17597312", + "name": "表格锁定", + "font_class": "biaogesuoding", + "unicode": "e7ee", + "unicode_decimal": 59374 + }, + { + "icon_id": "17444514", + "name": "转到", + "font_class": "zhuandao1", + "unicode": "e7f1", + "unicode_decimal": 59377 + }, + { + "icon_id": "17444503", + "name": "右箭头", + "font_class": "youjiantou", + "unicode": "e7ed", + "unicode_decimal": 59373 + }, + { + "icon_id": "17444507", + "name": "菜单", + "font_class": "caidan2", + "unicode": "e7ef", + "unicode_decimal": 59375 + }, + { + "icon_id": "17444508", + "name": "替换", + "font_class": "tihuan", + "unicode": "e7f0", + "unicode_decimal": 59376 + }, + { + "icon_id": "17392794", + "name": "冻结", + "font_class": "dongjie1", + "unicode": "e7e1", + "unicode_decimal": 59361 + }, + { + "icon_id": "17392795", + "name": "剪", + "font_class": "jian1", + "unicode": "e7e2", + "unicode_decimal": 59362 + }, + { + "icon_id": "17392796", + "name": "加", + "font_class": "jia1", + "unicode": "e7e3", + "unicode_decimal": 59363 + }, + { + "icon_id": "17392797", + "name": "溢出", + "font_class": "yichu1", + "unicode": "e7e4", + "unicode_decimal": 59364 + }, + { + "icon_id": "17392798", + "name": "升序", + "font_class": "shengxu1", + "unicode": "e7e5", + "unicode_decimal": 59365 + }, + { + "icon_id": "17392799", + "name": "内框线", + "font_class": "neikuangxian", + "unicode": "e7e6", + "unicode_decimal": 59366 + }, + { + "icon_id": "17392800", + "name": "清除筛选", + "font_class": "qingchushaixuan", + "unicode": "e7e7", + "unicode_decimal": 59367 + }, + { + "icon_id": "17392801", + "name": "文本向上", + "font_class": "wenbenxiangshang", + "unicode": "e7e8", + "unicode_decimal": 59368 + }, + { + "icon_id": "17392802", + "name": "降序", + "font_class": "jiangxu1", + "unicode": "e7e9", + "unicode_decimal": 59369 + }, + { + "icon_id": "17392803", + "name": "内框横线", + "font_class": "neikuanghengxian", + "unicode": "e7ea", + "unicode_decimal": 59370 + }, + { + "icon_id": "17392804", + "name": "内框竖线", + "font_class": "neikuangshuxian", + "unicode": "e7eb", + "unicode_decimal": 59371 + }, + { + "icon_id": "17392805", + "name": "自定义排序", + "font_class": "zidingyipaixu", + "unicode": "e7ec", + "unicode_decimal": 59372 + }, + { + "icon_id": "16746498", + "name": "logo2", + "font_class": "logo2", + "unicode": "e7df", + "unicode_decimal": 59359 + }, + { + "icon_id": "16746532", + "name": "logo", + "font_class": "logo", + "unicode": "e7e0", + "unicode_decimal": 59360 + }, + { + "icon_id": "16730159", + "name": "文本倾斜", + "font_class": "wenbenqingxie1", + "unicode": "e7de", + "unicode_decimal": 59358 + }, + { + "icon_id": "16728412", + "name": "加粗", + "font_class": "jiacu", + "unicode": "e7d9", + "unicode_decimal": 59353 + }, + { + "icon_id": "16728080", + "name": "搜索", + "font_class": "sousuo", + "unicode": "e78a", + "unicode_decimal": 59274 + }, + { + "icon_id": "16728081", + "name": "关闭", + "font_class": "guanbi", + "unicode": "e78b", + "unicode_decimal": 59275 + }, + { + "icon_id": "16728082", + "name": "下一个", + "font_class": "xiayige", + "unicode": "e78c", + "unicode_decimal": 59276 + }, + { + "icon_id": "16728083", + "name": "下拉", + "font_class": "xiala", + "unicode": "e78d", + "unicode_decimal": 59277 + }, + { + "icon_id": "16728084", + "name": "文本颜色", + "font_class": "wenbenyanse", + "unicode": "e78e", + "unicode_decimal": 59278 + }, + { + "icon_id": "16728085", + "name": "上一个", + "font_class": "shangyige", + "unicode": "e78f", + "unicode_decimal": 59279 + }, + { + "icon_id": "16728086", + "name": "数据透视", + "font_class": "shujutoushi", + "unicode": "e790", + "unicode_decimal": 59280 + }, + { + "icon_id": "16728087", + "name": "填充", + "font_class": "tianchong", + "unicode": "e791", + "unicode_decimal": 59281 + }, + { + "icon_id": "16728088", + "name": "增加小数位", + "font_class": "zengjiaxiaoshuwei", + "unicode": "e792", + "unicode_decimal": 59282 + }, + { + "icon_id": "16728089", + "name": "编辑2", + "font_class": "bianji2", + "unicode": "e793", + "unicode_decimal": 59283 + }, + { + "icon_id": "16728090", + "name": "截屏", + "font_class": "jieping", + "unicode": "e794", + "unicode_decimal": 59284 + }, + { + "icon_id": "16728092", + "name": "减小小数位", + "font_class": "jianxiaoxiaoshuwei", + "unicode": "e796", + "unicode_decimal": 59286 + }, + { + "icon_id": "16728093", + "name": "菜单", + "font_class": "caidan", + "unicode": "e797", + "unicode_decimal": 59287 + }, + { + "icon_id": "16728094", + "name": "数据库", + "font_class": "shujuku", + "unicode": "e798", + "unicode_decimal": 59288 + }, + { + "icon_id": "16728095", + "name": "无边框", + "font_class": "wubiankuang", + "unicode": "e799", + "unicode_decimal": 59289 + }, + { + "icon_id": "16728096", + "name": "编辑", + "font_class": "bianji", + "unicode": "e79a", + "unicode_decimal": 59290 + }, + { + "icon_id": "16728097", + "name": "清除样式", + "font_class": "qingchuyangshi", + "unicode": "e79b", + "unicode_decimal": 59291 + }, + { + "icon_id": "16728099", + "name": "删除", + "font_class": "shanchu", + "unicode": "e79c", + "unicode_decimal": 59292 + }, + { + "icon_id": "16728100", + "name": "文本居中对齐", + "font_class": "wenbenjuzhongduiqi", + "unicode": "e79d", + "unicode_decimal": 59293 + }, + { + "icon_id": "16728101", + "name": "打印", + "font_class": "dayin", + "unicode": "e79e", + "unicode_decimal": 59294 + }, + { + "icon_id": "16728102", + "name": "文本分割", + "font_class": "wenbenfenge", + "unicode": "e79f", + "unicode_decimal": 59295 + }, + { + "icon_id": "16728103", + "name": "函数‘", + "font_class": "hanshu", + "unicode": "e7a0", + "unicode_decimal": 59296 + }, + { + "icon_id": "16728104", + "name": "降序", + "font_class": "jiangxu", + "unicode": "e7a1", + "unicode_decimal": 59297 + }, + { + "icon_id": "16728105", + "name": "顶部对齐", + "font_class": "dingbuduiqi", + "unicode": "e7a2", + "unicode_decimal": 59298 + }, + { + "icon_id": "16728106", + "name": "图片", + "font_class": "tupian", + "unicode": "e7a3", + "unicode_decimal": 59299 + }, + { + "icon_id": "16728107", + "name": "向下90", + "font_class": "xiangxia90", + "unicode": "e7a4", + "unicode_decimal": 59300 + }, + { + "icon_id": "16728108", + "name": "竖排文字", + "font_class": "shupaiwenzi", + "unicode": "e7a5", + "unicode_decimal": 59301 + }, + { + "icon_id": "16728109", + "name": "全加边框", + "font_class": "quanjiabiankuang", + "unicode": "e7a6", + "unicode_decimal": 59302 + }, + { + "icon_id": "16728110", + "name": "升序", + "font_class": "shengxu", + "unicode": "e7a7", + "unicode_decimal": 59303 + }, + { + "icon_id": "16728111", + "name": "裁剪", + "font_class": "caijian", + "unicode": "e7a8", + "unicode_decimal": 59304 + }, + { + "icon_id": "16728112", + "name": "金额", + "font_class": "jine", + "unicode": "e7a9", + "unicode_decimal": 59305 + }, + { + "icon_id": "16728113", + "name": "菜单1", + "font_class": "caidan1", + "unicode": "e7aa", + "unicode_decimal": 59306 + }, + { + "icon_id": "16728114", + "name": "取消合并", + "font_class": "quxiaohebing", + "unicode": "e7ab", + "unicode_decimal": 59307 + }, + { + "icon_id": "16728115", + "name": "文本下划线", + "font_class": "wenbenxiahuaxian", + "unicode": "e7ac", + "unicode_decimal": 59308 + }, + { + "icon_id": "16728116", + "name": "上边框", + "font_class": "shangbiankuang", + "unicode": "e7ad", + "unicode_decimal": 59309 + }, + { + "icon_id": "16728117", + "name": "定位", + "font_class": "dingwei", + "unicode": "e7ae", + "unicode_decimal": 59310 + }, + { + "icon_id": "16728118", + "name": "四周加边框", + "font_class": "sizhoujiabiankuang", + "unicode": "e7af", + "unicode_decimal": 59311 + }, + { + "icon_id": "16728119", + "name": "侧边栏收起", + "font_class": "cebianlanshouqi", + "unicode": "e7b0", + "unicode_decimal": 59312 + }, + { + "icon_id": "16728120", + "name": "合并", + "font_class": "hebing", + "unicode": "e7b1", + "unicode_decimal": 59313 + }, + { + "icon_id": "16728121", + "name": "向上倾斜", + "font_class": "xiangshangqingxie", + "unicode": "e7b2", + "unicode_decimal": 59314 + }, + { + "icon_id": "16728122", + "name": "水平对齐", + "font_class": "shuipingduiqi", + "unicode": "e7b3", + "unicode_decimal": 59315 + }, + { + "icon_id": "16728123", + "name": "文本删除线", + "font_class": "wenbenshanchuxian", + "unicode": "e7b4", + "unicode_decimal": 59316 + }, + { + "icon_id": "16728124", + "name": "文本右对齐", + "font_class": "wenbenyouduiqi", + "unicode": "e7b5", + "unicode_decimal": 59317 + }, + { + "icon_id": "16728125", + "name": "前进", + "font_class": "qianjin", + "unicode": "e7b6", + "unicode_decimal": 59318 + }, + { + "icon_id": "16728126", + "name": "图表", + "font_class": "tubiao", + "unicode": "e7b7", + "unicode_decimal": 59319 + }, + { + "icon_id": "16728127", + "name": "右边框", + "font_class": "youbiankuang", + "unicode": "e7b8", + "unicode_decimal": 59320 + }, + { + "icon_id": "16728128", + "name": "百分号", + "font_class": "baifenhao", + "unicode": "e7b9", + "unicode_decimal": 59321 + }, + { + "icon_id": "16728129", + "name": "格式刷", + "font_class": "geshishua", + "unicode": "e7ba", + "unicode_decimal": 59322 + }, + { + "icon_id": "16728130", + "name": "保存", + "font_class": "baocun", + "unicode": "e7bb", + "unicode_decimal": 59323 + }, + { + "icon_id": "16728131", + "name": "数据验证", + "font_class": "shujuyanzheng", + "unicode": "e7bc", + "unicode_decimal": 59324 + }, + { + "icon_id": "16728132", + "name": "截断", + "font_class": "jieduan", + "unicode": "e7bd", + "unicode_decimal": 59325 + }, + { + "icon_id": "16728133", + "name": "格式条件", + "font_class": "geshitiaojian", + "unicode": "e7be", + "unicode_decimal": 59326 + }, + { + "icon_id": "16728134", + "name": "自动换行", + "font_class": "zidonghuanhang", + "unicode": "e7bf", + "unicode_decimal": 59327 + }, + { + "icon_id": "16728135", + "name": "侧边栏展开", + "font_class": "cebianlanzhankai", + "unicode": "e7c0", + "unicode_decimal": 59328 + }, + { + "icon_id": "16728136", + "name": "筛选2", + "font_class": "shaixuan2", + "unicode": "e7c1", + "unicode_decimal": 59329 + }, + { + "icon_id": "16728137", + "name": "向下倾斜", + "font_class": "xiangxiaqingxie", + "unicode": "e7c2", + "unicode_decimal": 59330 + }, + { + "icon_id": "16728138", + "name": "溢出", + "font_class": "yichu", + "unicode": "e7c3", + "unicode_decimal": 59331 + }, + { + "icon_id": "16728139", + "name": "垂直合并", + "font_class": "chuizhihebing", + "unicode": "e7c4", + "unicode_decimal": 59332 + }, + { + "icon_id": "16728140", + "name": "文本分散对齐", + "font_class": "wenbenfensanduiqi", + "unicode": "e7c5", + "unicode_decimal": 59333 + }, + { + "icon_id": "16728141", + "name": "左边框", + "font_class": "zuobiankuang", + "unicode": "e7c6", + "unicode_decimal": 59334 + }, + { + "icon_id": "16728142", + "name": "分页查看", + "font_class": "fenyechakan", + "unicode": "e7c7", + "unicode_decimal": 59335 + }, + { + "icon_id": "16728143", + "name": "运行", + "font_class": "yunhang", + "unicode": "e7c8", + "unicode_decimal": 59336 + }, + { + "icon_id": "16728144", + "name": "列", + "font_class": "lie", + "unicode": "e7c9", + "unicode_decimal": 59337 + }, + { + "icon_id": "16728145", + "name": "全屏", + "font_class": "quanping", + "unicode": "e7ca", + "unicode_decimal": 59338 + }, + { + "icon_id": "16728146", + "name": "筛选", + "font_class": "shaixuan", + "unicode": "e7cb", + "unicode_decimal": 59339 + }, + { + "icon_id": "16728147", + "name": "更新", + "font_class": "gengxin", + "unicode": "e7cc", + "unicode_decimal": 59340 + }, + { + "icon_id": "16728148", + "name": "清除", + "font_class": "qingchu", + "unicode": "e7cd", + "unicode_decimal": 59341 + }, + { + "icon_id": "16728149", + "name": "行", + "font_class": "hang", + "unicode": "e7ce", + "unicode_decimal": 59342 + }, + { + "icon_id": "16728150", + "name": "注释", + "font_class": "zhushi", + "unicode": "e7cf", + "unicode_decimal": 59343 + }, + { + "icon_id": "16728151", + "name": "剪", + "font_class": "jian", + "unicode": "e7d0", + "unicode_decimal": 59344 + }, + { + "icon_id": "16728152", + "name": "计算", + "font_class": "jisuan", + "unicode": "e7d1", + "unicode_decimal": 59345 + }, + { + "icon_id": "16728153", + "name": "加", + "font_class": "jia", + "unicode": "e7d2", + "unicode_decimal": 59346 + }, + { + "icon_id": "16728154", + "name": "底部对齐", + "font_class": "dibuduiqi", + "unicode": "e7d3", + "unicode_decimal": 59347 + }, + { + "icon_id": "16728155", + "name": "向上90", + "font_class": "xiangshang90", + "unicode": "e7d4", + "unicode_decimal": 59348 + }, + { + "icon_id": "16728156", + "name": "无选装", + "font_class": "wuxuanzhuang", + "unicode": "e7d5", + "unicode_decimal": 59349 + }, + { + "icon_id": "16728157", + "name": "显示隐藏网格", + "font_class": "xianshiyincangwangge", + "unicode": "e7d6", + "unicode_decimal": 59350 + }, + { + "icon_id": "16728158", + "name": "冻结", + "font_class": "dongjie", + "unicode": "e7d7", + "unicode_decimal": 59351 + }, + { + "icon_id": "16728159", + "name": "文本左对齐", + "font_class": "wenbenzuoduiqi", + "unicode": "e7d8", + "unicode_decimal": 59352 + }, + { + "icon_id": "16728161", + "name": "后退", + "font_class": "houtui", + "unicode": "e7da", + "unicode_decimal": 59354 + }, + { + "icon_id": "16728162", + "name": "水平合并", + "font_class": "shuipinghebing", + "unicode": "e7db", + "unicode_decimal": 59355 + }, + { + "icon_id": "16728163", + "name": "下边框", + "font_class": "xiabiankuang", + "unicode": "e7dc", + "unicode_decimal": 59356 + }, + { + "icon_id": "16728164", + "name": "设置", + "font_class": "shezhi", + "unicode": "e7dd", + "unicode_decimal": 59357 + } + ] +} diff --git a/public/assets/iconfont/iconfont.svg b/public/assets/iconfont/iconfont.svg new file mode 100644 index 0000000..3964a24 --- /dev/null +++ b/public/assets/iconfont/iconfont.svg @@ -0,0 +1,356 @@ + + + + + +Created by iconfont + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/assets/iconfont/iconfont.ttf b/public/assets/iconfont/iconfont.ttf new file mode 100644 index 0000000..aadcc09 Binary files /dev/null and b/public/assets/iconfont/iconfont.ttf differ diff --git a/public/assets/iconfont/iconfont.woff b/public/assets/iconfont/iconfont.woff new file mode 100644 index 0000000..cebb184 Binary files /dev/null and b/public/assets/iconfont/iconfont.woff differ diff --git a/public/assets/iconfont/iconfont.woff2 b/public/assets/iconfont/iconfont.woff2 new file mode 100644 index 0000000..6a1edbc Binary files /dev/null and b/public/assets/iconfont/iconfont.woff2 differ diff --git a/public/css/EwaAntH.gif b/public/css/EwaAntH.gif new file mode 100644 index 0000000..d593cf0 Binary files /dev/null and b/public/css/EwaAntH.gif differ diff --git a/public/css/EwaAntV.gif b/public/css/EwaAntV.gif new file mode 100644 index 0000000..44d3240 Binary files /dev/null and b/public/css/EwaAntV.gif differ diff --git a/public/css/arrow-down.png b/public/css/arrow-down.png new file mode 100644 index 0000000..89a612f Binary files /dev/null and b/public/css/arrow-down.png differ diff --git a/public/css/loading.gif b/public/css/loading.gif new file mode 100644 index 0000000..7980d81 Binary files /dev/null and b/public/css/loading.gif differ diff --git a/public/css/luckysheet.css b/public/css/luckysheet.css new file mode 100644 index 0000000..7a142e0 --- /dev/null +++ b/public/css/luckysheet.css @@ -0,0 +1 @@ +.luckysheet-icon-img-container.iconfont,.luckysheet-submenu-arrow .iconfont{font-size:24px}.luckysheet-toolbar-combo-button .luckysheet-iconfont-xiayige,.luckysheet-toolbar-menu-button .luckysheet-iconfont-xiayige{font-size:12px;top:-8px;left:-3px}.luckysheet-toolbar-select .luckysheet-iconfont-xiayige{margin-right:4px}#luckysheet-icon-morebtn{position:absolute;right:15px;transform:translate(0,-50%);top:50%}.toolbar .luckysheet-icon-border-all,.toolbar .luckysheet-icon-cell-color,.toolbar .luckysheet-icon-text-color,.toolbar .luckysheet-icon-textwrap,.toolbar .luckysheet-icon-valign{margin-right:-3px}.toolbar .luckysheet-freezen-btn-horizontal,.toolbar .luckysheet-icon-align,.toolbar .luckysheet-icon-function,.toolbar .luckysheet-icon-merge-button,.toolbar .luckysheet-icon-rotation{margin-right:-4px}#luckysheet-icon-morebtn{padding:2px 13px 0 5px}#luckysheet-icon-morebtn .iconfont{top:-9px}.lucky-button-custom{cursor:pointer;display:flex;align-items:center;justify-content:center}.lucky-button-custom:hover{background-color:#e1e4e8}#luckysheet-icon-morebtn-div{border:1px solid #d4d4d4}.luckysheet-sheets-add .iconfont,.luckysheet-sheets-m .iconfont{font-size:21px}#luckysheet-sheets-leftscroll,#luckysheet-sheets-rightscroll{padding:6px 10px}input.luckysheet-mousedown-cancel{border:1px solid #a1a1a1}input.luckysheet-mousedown-cancel:focus{border:1px solid #0188fb;outline:0}.luckysheet-cellFormat-config{display:none}.luckysheet-cellFormat-config .luckysheet-modal-dialog-content{position:relative;height:550px;width:600px}.luckysheet-cellFormat-menu-c{position:absolute;width:100%;height:30px;border-right:1px solid #fff;border-bottom:1px solid #d4d4d4;font-size:12px}.luckysheet-cellFormat-menu{position:relative;display:inline-block;height:30px;width:80px;text-align:center;line-height:30px;border:1px solid #d4d4d4;border-bottom:none;background:#f0f0f0;cursor:pointer}.luckysheet-cellFormat-menu:hover{background:#e7e7e7}.luckysheet-cellFormat-menu-active{background:#fff;cursor:default}.luckysheet-cellFormat-menu-active:hover{background:#fff}.luckysheet-cellFormat-content{position:absolute;top:30px;bottom:0;width:100%;border:1px solid #d4d4d4;border-top:none}.luckysheet-cellFormat-protection{position:relative;margin-top:30px;margin-left:40px}.luckysheet-cellFormat-protection span{font-size:12px;color:#ff2929;padding-left:12px}::-webkit-scrollbar-track{background-color:transparent}.luckysheet-noselected-text{-moz-user-select:-moz-test;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.chart-moveable{cursor:move}.luckysheet{position:absolute;font-size:12px;font-family:"Helvetica Neue",Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Heiti SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;border:1px solid #e5e5e5;background:#fff}.luckysheet *{box-sizing:initial;outline:0}.luckysheetLoaderGif{width:8em;height:8em;position:absolute;top:50%;left:50%;-ms-transform:translate(-50%,-100%);-moz-transform:translate(-50%,-100%);-o-transform:translate(-50%,-100%);transform:translate(-50%,-100%);background-image:url(loading.gif);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.luckysheet-loading-mask{position:absolute;z-index:1000000000;margin:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#fff}.luckysheet-loading-content{position:relative;top:50%;transform:translateY(-50%);width:100%;font-size:14px;color:#409eff;text-align:center}.luckysheet-loading-image{width:8em;height:8em;margin:0 auto}.luckysheet-loading-text{margin-top:1em}.luckysheet-loading-image .image-type{width:100%;height:100%;background-repeat:no-repeat;background-position:center;background-size:100% 100%}.luckysheet-loading-image .path-type{width:100%;height:100%}.luckysheet-work-area{height:90px;width:100%;position:relative}.luckysheet_info_detail{position:relative;left:0;top:0;margin:0;padding:0 17px;height:56px;display:flex;align-items:center;background:#fff;box-shadow:0 -1px 0 0 #e6e7e8;border-bottom:1px solid #d4d4d4}.luckysheet_info_detail .sheet-name{margin:auto}.luckysheet_info_detail div.luckysheet_info_detail_back{font-size:14px;padding:0 8px;margin-right:18px;border-radius:3px;cursor:pointer}.luckysheet_info_detail div.luckysheet_info_detail_back:hover{background:#eee}.luckysheet_info_detail .luckysheet_info_detail_input{border:1px solid transparent;border-radius:3px!important;color:#000;font-size:16px;height:26px;line-height:22px;margin:0;min-width:1px;padding:2px 7px;visibility:hidden}.luckysheet_info_detail .luckysheet_info_detail_input:hover{border:1px solid #e5e5e5}.luckysheet_info_detail .luckysheet_info_detail_input:focus{-webkit-appearance:none;-moz-appearance:none;border:1px solid #0188fb!important;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);color:#000;outline:0}.luckysheet_info_detail_update{color:#cbcbcb;font-size:12px;margin-left:15px}.luckysheet_info_detail_user{font-size:12px;cursor:pointer;margin-left:10px}#luckysheet_info_detail_user_img{vertical-align:middle;height:20px;line-height:20px;border-radius:50%;object-fit:cover}.luckysheet_info_detail_save{color:#828282;font-size:12px;margin:0 5px}.luckysheet-share-logo{height:32px;width:152px;z-index:1;background-image:url(data:image/png;base64,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)}.luckysheet-wa-editor{height:32px;background:#fafafc;position:relative;padding:5px 0 3px 15px;border-bottom:1px solid #d4d4d4;white-space:nowrap;transition:all .2s}.luckysheet-toolbar-left-theme{width:15px;position:absolute;left:0;top:1px;bottom:1px}.luckysheet-inline-block{position:relative;display:-moz-inline-box;display:inline-block}.luckysheet-toolbar-separator{line-height:normal;list-style:none;outline:0;overflow:hidden;padding:0;text-decoration:none;width:0;height:20px;vertical-align:top;border-left:1px solid #e0e0e0;margin:5px 1px}.luckysheet-toolbar-combo-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background:0;border-color:transparent;border-style:solid;border-width:1px;outline:0;padding:0;color:#333;list-style:none;font-size:11px;font-weight:700;text-decoration:none;cursor:default;height:26px;line-height:26px;vertical-align:inherit;margin:0 1px}.luckysheet-toolbar-combo-button:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);background-color:#f8f8f8;background-image:-webkit-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-moz-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-ms-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:-o-linear-gradient(to bottom,#f8f8f8,#f1f1f1);background-image:linear-gradient(to bottom,#f8f8f8,#f1f1f1);border-color:#c6c6c6!important;color:#222;border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.06);background-image:none;cursor:pointer;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-combo-button:hover .luckysheet-toolbar-combo-button-input{border-right-color:rgba(0,0,0,.12)}.luckysheet-toolbar-combo-button-open{color:#222;border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.12);background-image:none;cursor:pointer}.luckysheet-toolbar-combo-button-open .luckysheet-toolbar-combo-button-input{background:0 0;border-right:1px solid transparent!important}.luckysheet-toolbar-combo-button-inner-box,.luckysheet-toolbar-combo-button-outer-box{border:0;vertical-align:top;margin:0;padding:0}.luckysheet-toolbar-zoom-combobox .luckysheet-toolbar-combo-button-caption{width:36px!important}.luckysheet-toolbar-combo-button-caption{padding:0;margin:0 0 0 -3px}.luckysheet-toolbar-combo-button-input{background:0 0;border:1px solid transparent!important;color:#333;font-family:Arial,sans-serif!important;font-size:11px!important;font-weight:700!important;height:20px!important;overflow:hidden!important;color:rgba(0,0,0,.7);height:22px!important;width:22px}.luckysheet-toolbar-combo-button-input:focus{box-shadow:inset 0 1px 2px rgba(0,0,0,.3);background:#fff;outline:0;border:1px solid #0188fb!important}.luckysheet-toolbar-textinput{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px;height:25px;padding:1px 0 1px 8px}.luckysheet-toolbar-combo-button-dropdown{float:right;margin:9px 0 0 0;padding:0 0 0 1px;min-width:7px;opacity:.8;vertical-align:middle;width:5px;height:7px;margin-top:10px}.luckysheet-toolbar-color-menu-button .luckysheet-toolbar-menu-button-caption{top:-2px}.luckysheet-color-menu-button-indicator{position:relative;height:20px}.luckysheet-color-menu-button-indicator .text-color-bar{position:absolute;bottom:0;background-color:#0081f9;height:3px;width:55%;left:30%}.luckysheet-toolbar-button-inner-box .luckysheet-icon,.luckysheet-toolbar-menu-button-caption .luckysheet-color-menu-button-indicator .luckysheet-icon,.luckysheet-toolbar-menu-button-caption .luckysheet-icon{margin-top:0}.luckysheet-toolbar-menu-button-caption{padding:0;margin:0}.luckysheet-toolbar-menu-button-inner-box{margin:0 2px}.luckysheet-toolbar-menu-button-dropdown{float:right;margin:10px 2px 0 3px;padding:0;opacity:.8;vertical-align:middle;width:5px;height:7px;margin-left:4px;margin-right:0;margin-top:10px}.luckysheet-toolbar-button-split-right .luckysheet-toolbar-menu-button-dropdown{padding:0 3px}.luckysheet-toolbar-button-split-left,.luckysheet-toolbar-button-split-left *{border-top-right-radius:0!important;border-bottom-right-radius:0!important;margin-right:0}.luckysheet-toolbar-button-split-right,.luckysheet-toolbar-button-split-right *{border-top-left-radius:0!important;border-bottom-left-radius:0!important;min-width:5px!important;margin-left:0}#luckysheet-icon-merge-menu{margin-right:1px}.luckysheet-toolbar-button,.luckysheet-toolbar-menu-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background:0;border:1px solid transparent;outline:0;padding:0;list-style:none;font-size:11px;text-decoration:none;vertical-align:middle;cursor:default;height:26px;line-height:26px;color:#333}.luckysheet-toolbar-button-hover,.luckysheet-toolbar-button:hover,.luckysheet-toolbar-menu-button:hover{border:1px solid transparent;background-color:rgba(0,0,0,.06);background-image:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-button-split-right.luckysheet-toolbar-menu-button:hover{border-left-color:rgba(0,0,0,.12)!important}.luckysheet-toolbar-button-split-right-hover{border-width:1px;border-color:transparent!important;background-color:rgba(0,0,0,.06);cursor:pointer;box-shadow:none;border-left-color:rgba(0,0,0,.12)!important}.luckysheet-toolbar-button:active,.luckysheet-toolbar-menu-button:active{border:1px solid transparent;background-color:rgba(0,0,0,.12);background-image:none;box-shadow:none;cursor:pointer}.luckysheet-toolbar-button-outer-box,.luckysheet-toolbar-menu-button-outer-box{border:0;vertical-align:top;margin:0;padding:0}.luckysheet-toolbar-button-inner-box,.luckysheet-toolbar-menu-button-inner-box{padding:0 2px;padding:0;text-align:center;height:26px;min-width:26px}.luckysheet-icon{direction:ltr;text-align:center;overflow:hidden;vertical-align:middle;height:26px;width:26px;margin:2px}#luckysheet-icon-fmt-other .luckysheet-toolbar-menu-button-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:55px;margin-left:1px;text-align:center}#luckysheet-icon-font-family .luckysheet-toolbar-menu-button-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:55px;margin-left:1px;text-align:center}#luckysheet-icon-function .luckysheet-toolbar-menu-button-caption{margin-right:5px;margin-left:-5px}#luckysheet-icon-function .luckysheet-icon{margin-right:0}#luckysheet-icon-pivotTable .luckysheet-toolbar-menu-button-caption{color:#0188fb}#luckysheet-icon-chart .luckysheet-toolbar-menu-button-caption{color:#0188fb}.luckysheet-rightgclick-menu-sub .sp-container{background-color:#fff;border:solid 1px #fff}#luckysheet-icon-cell-color-menu-menuButton .sp-palette-container,#luckysheet-icon-text-color-menu-menuButton .sp-palette-container{margin-bottom:-300px}#luckysheet-icon-cell-color-menu-menuButton .sp-palette,#luckysheet-icon-text-color-menu-menuButton .sp-palette{margin-top:-10px}.luckysheet-wa-calculate{height:28px;background:#fff;position:relative;padding-right:44px;border-bottom:1px solid #d4d4d4}.luckysheet-wa-calculate-help{height:100%;width:99px;border-right:1px solid #d4d4d4}.luckysheet-wa-calculate-help-box{height:100%;width:85px;position:absolute;top:0;left:0}#luckysheet-helpbox{left:0;position:absolute;right:0;top:50%;transform:translateY(-50%);resize:none;font-family:arial,sans,sans-serif;font-size:14px;line-height:14px;background-color:#fff;padding:2px 5px}.luckysheet-helpbox-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:nowrap;overflow:hidden;-webkit-transform:translateZ(0);background-color:#fff;word-wrap:break-word;-webkit-nbsp-mode:space;-webkit-line-break:after-white-space}.luckysheet-wa-calculate-help-tool{position:absolute;left:85px;text-align:center;height:100%;width:13px;border-left:1px solid transparent;border-right:1px solid transparent}.luckysheet-wa-calculate-help-tool .fa-caret-down{position:absolute;top:50%;left:3px;transform:translateY(-50%)}.luckysheet-wa-calculate-help-tool:hover{background:#efefef;cursor:pointer;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5}.luckysheet-wa-calculate-size{position:absolute;height:3px;width:100%;left:0;bottom:0;z-index:1000}.luckysheet-wa-calculate-size:hover{background:#5e5e5e;cursor:ns-resize}#luckysheet-wa-functionbox-cancel{left:104px}#luckysheet-wa-functionbox-confirm{left:130px}.luckysheet-wa-functionbox{position:absolute;top:50%;transform:translateY(-50%);text-align:center;left:156px;color:#d6d6d6}.luckysheet-wa-functionbox span{vertical-align:middle;width:30px;height:30px}.luckysheet-wa-functionbox i{font-size:24px}.luckysheet-wa-calculate-active{color:#585858;cursor:pointer}.luckysheet-wa-calculate-active:hover{color:#0188fb}.luckysheet-grid-container{width:100%;position:absolute;top:90px;bottom:0}.luckysheet-stat-area{position:absolute;height:23px;bottom:0;background:#ff00dc;width:100%}.luckysheet-sta-c{height:22px;background-color:#fff;border-top:1px solid #e1e1e1;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-stat-area:hover .luckysheet-sta-c{-moz-user-select:-moz-all;-khtml-user-select:initial;-webkit-user-select:initial;-ms-user-select:initial;user-select:initial}.luckysheet-sta-c .luckysheet-sta-content{height:22px;line-height:22px;text-align:right;white-space:nowrap;overflow:hidden}.luckysheet-sta-c .luckysheet-sta-content span{margin-right:10px}.luckysheet-grid-window{position:absolute;top:0;bottom:23px;left:0;right:0;overflow:hidden;background:#0ff}.luckysheet-sheet-area{width:100%;box-sizing:border-box;position:absolute;right:0;bottom:0;left:0;background-color:#fafafc;color:#444;height:31px;padding:0 0 0 44px;margin:0;-webkit-touch-callout:none;cursor:default;transition:.3s ease all;display:flex;align-items:center;justify-content:space-between}#luckysheet-sheet-content{width:0;flex:3;display:flex;align-items:center}#luckysheet-bottom-pager{width:0;background-color:#fafafc;z-index:1;flex:2;text-align:right;white-space:nowrap}.luckysheet-sheet-area .luckysheet-sheets-item,.luckysheet-sheet-area>div{display:inline-block}div.luckysheet-sheets-scroll{display:none}div.luckysheet-sheets-add:hover,div.luckysheet-sheets-m:hover{color:#2a2a2a}.docs-sheet-fade{position:absolute;display:block;top:0;width:6px;height:100%;z-index:1}.docs-sheet-fade div{background-color:#d7d7d7;width:2px;float:right;position:relative;height:100%}.docs-sheet-fade-left{left:0}.docs-sheet-fade-right{right:0}.docs-sheet-fade1{opacity:.82}.docs-sheet-fade2{opacity:.62}.docs-sheet-fade3{opacity:.4}.luckysheet-sheet-area div.luckysheet-sheet-container{padding:0 0;margin-left:0;position:relative;max-width:70%;vertical-align:bottom;display:inline-block}.luckysheet-sheet-area div.luckysheet-sheet-container div.luckysheet-sheet-container-c{padding:0 0;margin-left:0;overflow:hidden;white-space:nowrap;position:relative;max-width:100%;vertical-align:bottom;display:inline-block}.luckysheet-sheet-container-menu-hide .luckysheet-sheets-item{padding-right:5px!important}.luckysheet-sheet-container-menu-hide .luckysheet-sheets-item-menu{display:none!important}.luckysheet-sheet-area div.luckysheet-sheets-item{padding:2px 6px;height:29px;line-height:29px;background-color:#fafafc;color:#676464;min-width:30px;top:0;position:relative;margin-right:-1px;cursor:pointer;transition:all .1s;font-size:13px;padding:2px 19px 0 5px;box-sizing:border-box;border-left:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0}.luckysheet-sheet-area div.luckysheet-sheets-item:last-child{margin-right:1px}.luckysheet-sheet-area div.luckysheet-sheets-item:hover{background-color:#efefef;color:#490500}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-menu{margin-left:2px;display:inline-block;top:-2px;position:relative;color:#a1a1a1;position:absolute;height:100%;width:15px;right:0;text-align:center}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-menu:hover{color:#2a2a2a;cursor:pointer}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name{padding:0 3px}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name[contenteditable=true]{border:1px solid #d9d9d9;display:inline-block;height:18px;line-height:18px;min-width:8px;margin:-4px -1px;-moz-user-modify:read-write-plaintext-only;-webkit-user-modify:read-write-plaintext-only;-moz-user-select:text!important;-ms-user-select:text!important;-webkit-user-select:text!important}.luckysheet-sheet-area div.luckysheet-sheets-item .luckysheet-sheets-item-name[contenteditable=true]:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);border:1px solid #4d90fe;outline:0}.luckysheet-sheet-area div.luckysheet-sheets-item-active{height:29px;line-height:29px;background-color:#efefef;border-top-color:#fff;color:#222;cursor:default}.luckysheet-sheet-area div.luckysheet-sheets-item-active:hover{background-color:#ececec;color:#222}.luckysheet-grid-window-1{position:absolute;top:0;right:0;bottom:27px;left:0;min-width:200px;background-color:#fff!important;overflow:hidden;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheetTableContent{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;pointer-events:none;-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-grid-window-2{height:100%;width:100%;outline:0;border-collapse:collapse;display:table}.luckysheet-paneswrapper{overflow:hidden;height:1px}.luckysheet-left-top{width:44.5px;height:18.5px;border:solid 0 #dfdfdf;position:relative;padding-top:0;border-width:0 1px 1px 0;margin:-1px 0 0 -1px;padding-left:0;cursor:pointer}.luckysheet-cols-h-c{color:#5e5e5e;overflow:hidden;padding:0;cursor:default;height:19px;outline-style:none;position:relative;-webkit-user-select:none;background:#f3f3f2}.luckysheet-rows-h{position:relative;outline-style:none;color:#5e5e5e;overflow:hidden;padding:0;margin-top:-2px;padding-top:2px;cursor:default;width:38px;background:#f3f3f2}.luckysheet-cols-menu-btn{color:#5e5e5e;cursor:pointer;position:absolute;z-index:12;border:1px solid #5e5e5e;border-radius:1px;top:3px;margin-left:0;display:none;padding:0 2px;font-size:12px;height:12px;opacity:.5}.luckysheet-cols-menu-btn:hover{opacity:1}.luckysheet-cols-h-hover{color:#5e5e5e;cursor:default;position:absolute;z-index:11;border:0 none;bottom:0;height:100%;margin-left:0;display:none;background-color:rgba(194,194,194,.4)}.luckysheet-cols-h-selected{color:#5e5e5e;cursor:default;position:absolute;z-index:10;border-bottom:1px solid #0188fb;bottom:0;height:100%;margin-left:0;display:none;transition:all .1s;background-color:rgba(76,76,76,.1)}.luckysheet-cols-h-cells{margin:0;padding:0;border:none 0;position:relative;height:inherit}.luckysheet-cols-h-cells-c{color:#5e5e5e;cursor:default;width:5000000px;height:inherit}.luckysheet-cols-h-cells-clip{color:#5e5e5e;cursor:default;margin:0;padding:0;border:none 0;position:relative;float:left;direction:ltr;height:inherit;width:2561px;color:#5e5e5e;border-bottom:solid 1px #bbb;position:relative;top:-1px}.luckysheet-cols-h-cell-nosel{position:absolute;cursor:pointer;border:0 solid;border-color:#dfdfdf;display:inline-block;min-height:19px;touch-action:manipulation;border-right-width:1px;height:inherit}.luckysheet-cols-h-cell-sel{direction:ltr;height:inherit;position:absolute;cursor:pointer;border:0 solid;border-color:#bfbfbf;background-color:#e1e1e1;display:inline-block;min-height:19px;color:#0188fb;font-weight:700;touch-action:manipulation;border-right-width:1px}.luckysheet-col-flow-h{float:left;direction:ltr;position:relative;margin:0;padding:0;border:none 0;height:inherit;overflow:hidden}.luckysheet-col-flow-h-sheet{width:inherit;height:inherit;position:relative;float:left;direction:ltr}body:not(.ewa-ipad) .luckysheet-cols-h-cell-nosel:hover,body:not(.ewa-ipad) .luckysheet-cols-h-cell-sel:hover,body:not(.ewa-ipad) .luckysheet-rows-h-cell-nosel:hover,body:not(.ewa-ipad) .luckysheet-rows-h-cell-sel:hover{background-color:#fcc3c3}.luckysheet-cols-h-cell-txt{cursor:pointer;height:inherit;position:relative;text-align:center;overflow:hidden;touch-action:manipulation;font-size:14px;padding-top:2px}.luckysheet-rows-h{position:relative;outline-style:none;color:#5e5e5e;overflow:hidden;padding:0;margin-top:-2px;padding-top:2px;cursor:default;width:45px}.luckysheet-rows-h-hover{position:absolute;z-index:11;border:0 none;right:0;width:100%;margin-top:2px;display:none;background-color:rgba(194,194,194,.4)}.luckysheet-rows-h-selected{position:absolute;z-index:10;border-right:1px solid #0188fb;right:0;width:100%;margin-top:2px;display:none;transition:all .1s;background-color:rgba(76,76,76,.1)}.luckysheet-rows-h-cells{margin:0;padding:0;border:none 0;position:relative;width:100%}.luckysheet-rows-h-cells-c{margin:0;padding:0;border:none 0;position:relative;float:left;direction:ltr;width:100%}.luckysheet-rows-h-cells-clip{cursor:default;color:#5e5e5e;direction:ltr;border-right:solid 1px #bbb;width:inherit;height:inherit;position:relative;left:-1px;height:inherit}.luckysheet-rows-h-cell-nosel{direction:ltr;width:100%;position:absolute;cursor:pointer;border:0 solid;border-color:#dfdfdf;border-bottom-width:1px;touch-action:manipulation}.luckysheet-rows-h-cell-sel{direction:ltr;width:100%;position:absolute;cursor:pointer;border:0 solid;border-color:#bfbfbf;background-color:#e1e1e1;border-bottom-width:1px;color:#0188fb;font-weight:700;touch-action:manipulation}.luckysheet-rows-h-cell-txt{width:100%;position:absolute;bottom:0;text-align:center;padding-bottom:1px;max-height:100%;overflow:hidden;font-size:14px}.luckysheet-cell-loading{width:100%;height:100%;background-color:rgba(255,255,255,.3);position:absolute;overflow:hidden;outline-style:none;cursor:not-allowed;font-size:28px;z-index:2;display:none}.luckysheet-cell-loading-inner{position:relative;top:40%;width:100%;margin:0 auto;text-align:center}.luckysheet-cell-loading-inner span{margin-left:10px}.luckysheet-cell-main{background-color:#fff;width:15px;height:15px;background-color:#f3f3f2;border-collapse:collapse;position:relative;overflow:hidden;outline-style:none;cursor:default}.luckysheet-menu,.luckysheet-scrollbars{scrollbar-base-color:#fff;scrollbar-track-color:#e7e7e7;scrollbar-darkshadow-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-arrow-color:#757778;scrollbar-shadow-color:#bec1c4;scrollbar-highlight-color:#bec1c4;-ms-scroll-chaining:none;overflow:auto}.luckysheet-scrollbar-ltr{position:absolute;overflow:hidden;z-index:1003}.luckysheet-scrollbar-ltr div{height:1px;width:1px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button{height:0;width:0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:start{display:none}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:end{display:block}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button{border:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal{border-width:1px 0 0 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical{border-width:0 0 0 1px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical{border-width:0 1px 0 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment{background:no-repeat url(waffle_sprite.png) -663px -13px;width:15px;padding-left:1px;background-clip:border-box;border:1px solid #d9d9d9;border-width:1px 0 0 0;box-shadow:none;background-color:#f8f8f8;border-bottom:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment:hover{background:no-repeat url(waffle_sprite.png) -395px -62px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:increment:active{background:no-repeat url(waffle_sprite.png) -679px -13px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:decrement{border-left:1px solid #d9d9d9;border-right:1px solid #d9d9d9;background:no-repeat url(waffle_sprite.png) -283px -62px;width:17px;border-bottom:1px solid #d9d9d9}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:hover{background:no-repeat url(waffle_sprite.png) -145px -70px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:horizontal:active{background:no-repeat url(waffle_sprite.png) -552px 0}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment{padding-top:1px;background:no-repeat url(waffle_sprite.png) -531px -24px;border-left:1px solid #d9d9d9;height:15px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment:hover{background:no-repeat url(waffle_sprite.png) -570px -42px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:increment:active{background:no-repeat url(waffle_sprite.png) -83px -46px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement{border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-left:1px solid #d9d9d9;background:no-repeat url(waffle_sprite.png) -631px -27px;height:17px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement:hover{background:no-repeat url(waffle_sprite.png) -180px -58px}.luckysheet-scrollbar-ltr::-webkit-scrollbar-button:vertical:decrement:active{background:no-repeat url(waffle_sprite.png) -776px -28px}.luckysheet-scrollbar-x{bottom:0;left:44px;overflow-x:scroll}.luckysheet-scrollbar-y{right:0;top:0;overflow-y:scroll}.luckysheet-cell-flow{margin:0;padding:0;border:none 0;position:relative;touch-action:manipulation;overflow:hidden}.luckysheet-cell-flow-clip{border-collapse:collapse;cursor:default;width:5000000px;touch-action:manipulation;overflow:hidden}.luckysheet-cell-flow-col{margin:0;padding:0;border:none 0;position:relative;touch-action:manipulation;overflow:hidden;float:left;direction:ltr}.luckysheet-cell-sheettable{position:relative;text-align:left;font-size:11pt;color:#000;text-decoration:none}.luckysheet-bottom-controll-row{position:absolute;height:30px;bottom:38px;left:0;z-index:1000}#luckysheet-bottom-add-row{padding:5px 20px;margin-right:5px;margin-top:-2px}#luckysheet-bottom-add-row-input{width:40px;min-width:40px}#luckysheet-bottom-return-top{padding:5px 6px;margin-left:10px;margin-top:-2px}.luckysheet-cell-flow-column{position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1;touch-action:manipulation}.luckysheet-cell-flow-column-line{position:absolute;border-right:1px solid #d4d4d4;height:inherit}.luckysheet-cell-flow-row{text-align:left;position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1;touch-action:manipulation}.luckysheet-cell-flow-row-line{position:absolute;border-bottom:1px solid #d4d4d4;width:inherit}.luckysheet-cell-selected-focus{position:absolute;pointer-events:none;z-index:14;margin:0;background:rgba(0,80,208,.15);display:none}.luckysheet-selection-copy{position:absolute;pointer-events:none;z-index:18;border:none;margin:0;display:none}.luckysheet-selection-copy .luckysheet-copy{position:absolute;z-index:18;background-color:transparent}.luckysheet-selection-copy-top{left:0;right:0;height:2px;top:0;background-position:bottom;background-image:url(EwaAntH.gif)}.luckysheet-selection-copy-right{top:0;bottom:0;width:2px;right:0;background-image:url(EwaAntV.gif)}.luckysheet-selection-copy-bottom{left:0;right:0;height:2px;bottom:0;background-image:url(EwaAntH.gif)}.luckysheet-selection-copy-left{top:0;bottom:0;width:2px;left:0;background-position:right;background-image:url(EwaAntV.gif)}.luckysheet-selection-copy-hc{position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed #12a5ff;z-index:8}.luckysheet-selection-highlight{position:absolute;z-index:14;border:none;margin:0;display:none}.luckysheet-formula-functionrange-highlight .luckysheet-copy{background-image:none;background:#0188fb;position:absolute;z-index:18;cursor:move;opacity:.9}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-top{top:-2px;border-top:2px solid #fff;border-bottom:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-right{right:-2px;border-left:2px solid #fff;border-right:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-bottom{bottom:-2px;border-top:2px solid #fff;border-bottom:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-left{left:-2px;border-left:2px solid #fff;border-right:2px solid #fff}.luckysheet-formula-functionrange-highlight .luckysheet-selection-copy-hc{border:2px solid #5e5e5e;opacity:.03;z-index:initial}.luckysheet-selection-highlight-topleft{left:-3px;top:-3px;cursor:se-resize}.luckysheet-selection-highlight-topright{right:-3px;top:-3px;cursor:ne-resize}.luckysheet-selection-highlight-bottomleft{left:-3px;bottom:-3px;cursor:ne-resize}.luckysheet-selection-highlight-bottomright{right:-3px;bottom:-3px;cursor:se-resize}.luckysheet-formula-functionrange-highlight .luckysheet-highlight{position:absolute;z-index:19;border:1px solid #fff;background:#0188fb;width:6px;height:6px}.luckysheet-cell-selected-extend{position:absolute;pointer-events:none;z-index:16;border:1px dashed #0188fb;margin:-1px 0 0 -1px;display:none}.luckysheet-cell-selected-move{position:absolute;pointer-events:none;z-index:16;border:2px solid #0188fb;margin:-1px 0 0 -1px;display:none}.luckysheet-cell-selected{position:absolute;pointer-events:none;z-index:15;border:1px solid #0188fb;margin:-1px 0 0 -1px;background:rgba(1,136,251,.15);display:none}.luckysheet-cs-inner-border{pointer-events:none;border:1px solid #fff;position:absolute;top:0;bottom:0;left:0;right:0}.luckysheet-cs-fillhandle{position:absolute;width:6px;height:6px;bottom:-5px;cursor:crosshair;background-color:#0188fb;border:solid 1px #fff;z-index:16;pointer-events:auto;right:-5px}.luckysheet-cs-draghandle{position:absolute;cursor:move;background-color:#fff;opacity:.01;z-index:15;pointer-events:auto;border:2px solid #fff}.luckysheet-cs-draghandle-top{top:-4px;left:-2px;right:-2px;height:2px}.luckysheet-cs-draghandle-bottom{right:0;left:-2px;bottom:-4px;height:2px}.luckysheet-cs-draghandle-left{top:0;left:-4px;bottom:0;width:2px}.luckysheet-cs-draghandle-right{top:0;right:-4px;bottom:0;width:2px}.luckysheet-cs-touchhandle{display:none;position:absolute;width:16px;height:16px;padding:5px;z-index:100;pointer-events:auto;touch-action:auto}.luckysheet-cs-touchhandle:before{content:"";display:block;width:16px;height:16px;border:.5px solid rgba(0,0,0,.15);background-color:#fff;box-sizing:border-box;border-radius:50%}.luckysheet-cs-touchhandle-lt{left:-13px;top:-13px}.luckysheet-cs-touchhandle-lb{left:-13px;bottom:-13px}.luckysheet-cs-touchhandle-rt{right:-13px;top:-13px}.luckysheet-cs-touchhandle-rb{right:-13px;bottom:-13px}.luckysheet-cs-touchhandle .luckysheet-cs-touchhandle-btn{position:absolute;width:10px;height:10px;left:8px;top:8px;background-color:#018ffb;background-position:center;box-sizing:border-box;border-radius:50%;z-index:11}#luckysheet-dynamicArray-hightShow{position:absolute;pointer-events:none;z-index:15;border:1px solid #00f;margin:-1px 0 0 -1px;display:none}.luckysheet-scrollbars::-webkit-scrollbar-track{background-color:#fff;border:1px solid #d9d9d9}.luckysheet-scrollbar-x::-webkit-scrollbar-track{border-left:1px solid #d9d9d9;border-right:none}.luckysheet-scrollbar-y::-webkit-scrollbar-track{border-top:none;border-bottom:none}.luckysheet-scrollbars::-webkit-scrollbar{width:12px;height:12px;background-color:#fff}.luckysheet-scrollbars::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);background-clip:padding-box;border:solid transparent;border-radius:12px;border-width:2px 1px 1px 2px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.1),inset 0 -1px 0 rgba(0,0,0,.07)}.luckysheet-scrollbars::-webkit-scrollbar-thumb:hover{background-color:#969696;border:1px solid #a0a0a0;border-radius:12px}.luckysheet-grdusedrange{position:absolute;visibility:hidden;width:1px;height:1px}.luckysheet-grdblkflowpush{margin:0;padding:0;border:none 0;width:1px}.luckysheet-grdblkpush{margin:0;padding:0;border:none 0;height:1px;float:left;direction:ltr}.luckysheet-cell-flow-data{position:absolute;height:inherit;width:inherit;top:0;left:0;z-index:1}.luckysheet-cell-flow-data-row{position:absolute;width:inherit}.luckysheet-cell-flow-data-cell{position:absolute;height:inherit}.luckysheet-cell-flow-data-value{position:absolute!important;bottom:0;letter-spacing:-.02em;white-space:nowrap;padding-left:2px;overflow:hidden}.luckysheet canvas{position:absolute}.luckysheetcolumeHeader{margin-left:-1px}.luckysheetrowHeader{margin-top:1px}.luckysheetsheettable{margin-left:-1px;margin-top:-1px}.luckysheet-cols-menu{max-height:100%;overflow-y:auto;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-transition:opacity 218ms;-moz-transition:opacity 218ms;-o-transition:opacity 218ms;transition:opacity 218ms;background:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);cursor:default;font-size:13px;margin:0;outline:0;padding:6px 0;position:absolute;z-index:1004;box-sizing:border-box;user-select:none;display:none}.luckysheet-cols-menu .luckysheet-cols-menuitem{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:1px 6em 1px 20px;white-space:nowrap;padding-left:8px;vertical-align:middle;padding-right:24px;user-select:none}.luckysheet-cols-menu .luckysheet-cols-menuitem-hover,.luckysheet-cols-menu .luckysheet-cols-menuitem:hover{background:#efefef}.luckysheet-cols-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:6px 7em 6px 30px;white-space:nowrap;user-select:none}.luckysheet-rightgclick-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{position:relative;color:#333;cursor:pointer;list-style:none;margin:0;padding:6px 15px 6px 20px;white-space:nowrap;user-select:none}#luckysheet-cols-menu .luckysheet-cols-menuitem,#luckysheet-pivotTable-config-option .luckysheet-cols-menuitem,.luckysheet-filter-menu .luckysheet-cols-menuitem{padding-right:10px;padding-left:12px}#luckysheet-pivotTable-config-option-sumtype .luckysheet-cols-menuitem{padding-right:15px;padding-left:12px;padding-top:1px;padding-bottom:1px}#luckysheet-cols-menu .luckysheet-cols-menuitem-content,.luckysheet-filter-menu .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-right:10px;padding-left:12px}#luckysheet-sheet-list .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-right:0;max-width:430px;min-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.luckysheet-filter-menu div.luckysheet-cols-menuitem{padding-top:0;padding-bottom:0}.luckysheet-filter-submenu div.luckysheet-cols-menuitem{padding-top:1px;padding-bottom:1px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem{padding-top:2px;padding-bottom:0;cursor:default}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content{padding-top:2px;padding-bottom:0;cursor:default}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content input{height:24px;width:191px;padding-right:25px;padding-left:3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content input:focus,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content input:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);border:1px solid #4d90fe;outline:0}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem-content .luckysheet-filter-byvalue-input-icon,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem-content .luckysheet-pivotTableFilter-byvalue-input-icon{position:absolute;right:17px;top:7px}.luckysheet-filter-menu .luckysheet-filter-byvalue .luckysheet-cols-menuitem:hover,.luckysheet-filter-menu .luckysheet-pivotTableFilter-byvalue .luckysheet-cols-menuitem:hover{background:#fff}.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child:hover{background:#fff}.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child,.luckysheet-filter-menu .luckysheet-cols-menuitem:last-child .luckysheet-cols-menuitem-content{cursor:default}#luckysheet-filter-byvalue-select,#luckysheet-pivotTableFilter-byvalue-select{min-height:100px;width:200px}.luckysheet-filter-menu .luckysheet-mousedown-filter-byvalue-btn span,.luckysheet-filter-menu .luckysheet-mousedown-pivotTableFilter-byvalue-btn span{color:#00f;cursor:pointer;text-decoration:underline}.luckysheet-filter-menu .luckysheet-mousedown-filter-byvalue-btn div,.luckysheet-filter-menu .luckysheet-mousedown-pivotTableFilter-byvalue-btn div{position:absolute;right:14px;top:0;font-size:18px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input{padding-left:8px;padding-right:8px;margin-top:3px;display:none}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input input{height:24px;width:100%;padding-right:3px;padding-left:3px;margin-left:-3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input2 input,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input2 input{height:24px;width:92px;padding-right:3px;padding-left:3px;margin-left:-3px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border:1px solid #d9d9d9;border-top:1px solid silver;font-size:13px}.luckysheet-filter-menu .luckysheet-filter-bycondition .luckysheet-filter-selected-input2 span,.luckysheet-filter-menu .luckysheet-pivotTableFilter-bycondition .luckysheet-pivotTableFilter-selected-input2 span{margin-left:2px;margin-right:5px}.luckysheet-menuseparator{border-top:1px solid #ebebeb;margin-top:6px;margin-bottom:6px}.luckysheet-submenu-arrow{-webkit-transition:all 218ms;-moz-transition:all 218ms;-o-transition:all 218ms;transition:all 218ms;font-size:12px;left:auto;right:-15px;padding-top:1px;padding-right:0;position:absolute;text-align:right;opacity:.5;color:#000;user-select:none;font-family:Arial;line-height:100%}#luckysheet-pivotTable-config-option-sumtype .luckysheet-submenu-arrow{right:-5px;font-size:16px;padding-top:0;color:#00f}#luckysheet-filter-byvalue-select table,#luckysheet-pivotTableFilter-byvalue-select table{table-layout:fixed}#luckysheet-filter-byvalue-select tr td,#luckysheet-pivotTableFilter-byvalue-select tr td{padding:2px 3px}#luckysheet-filter-byvalue-select tr:hover td,#luckysheet-pivotTableFilter-byvalue-select tr:hover td{background:#e1e1e1}.luckysheet-cols-menu .cf:after,.luckysheet-cols-menu .cf:before{content:"";display:table}.luckysheet-cols-menu .cf:after{clear:both}#luckysheet-filter-byvalue-select .yearBox .monthList,#luckysheet-pivotTableFilter-byvalue-select .yearBox .monthList{padding-left:20px}#luckysheet-filter-byvalue-select .yearBox .dayList,#luckysheet-pivotTableFilter-byvalue-select .yearBox .dayList{padding-left:20px}#luckysheet-filter-byvalue-select .yearBox .fa-caret-right,#luckysheet-pivotTableFilter-byvalue-select .yearBox .fa-caret-right{padding:0 2px;float:left;margin-top:3px;cursor:pointer}#luckysheet-filter-byvalue-select .count,#luckysheet-pivotTableFilter-byvalue-select .count{color:gray;margin-left:5px}#luckysheet-filter-byvalue-select input[type=checkbox],#luckysheet-pivotTableFilter-byvalue-select input[type=checkbox]{width:auto;height:auto;float:left}#luckysheet-filter-orderby-color-submenu{font-size:12px}#luckysheet-filter-orderby-color-submenu .title{padding:10px;font-weight:600;color:#333;background-color:#f4f4f4;text-align:center}#luckysheet-filter-orderby-color-submenu .item{padding:5px 40px 5px 20px;cursor:pointer;position:relative}#luckysheet-filter-orderby-color-submenu .item:hover{background-color:#d3d3d3}#luckysheet-filter-orderby-color-submenu .item label{display:block;width:70px;height:20px;border:1px solid #d1d1d1}#luckysheet-filter-orderby-color-submenu .item input[type=checkbox]{position:absolute;right:10px;top:6px}#luckysheet-copy-content{position:fixed;height:0;width:0;left:-100px;padding-left:999999px}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:4px 8px;font-size:14px;line-height:1.42857143;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;-webkit-box-shadow:none;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#2d7ff9;border-color:transparent}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:transparent}.btn-primary:hover{color:#fff;background-color:#5391ff;border-color:transparent}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#5391ff}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:transparent}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:transparent}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-primary,.label-default,.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{background:#0188fb;border-color:transparent}.btn-primary:focus,.btn-primary:hover{background:#5391ff;border-color:transparent}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.luckysheet-change-size-line,.luckysheet-cols-change-size,.luckysheet-rows-change-size{position:absolute;z-index:12}.luckysheet-cols-change-size{width:5px;height:100%;background:#0188fb;cursor:ew-resize;opacity:0}.luckysheet-rows-change-size{width:100%;height:5px;background:#0188fb;cursor:ns-resize;opacity:0}.luckysheet-change-size-line{border-color:#0188fb;border-style:solid;z-index:15;display:none}.luckysheet-count-show{position:absolute;z-index:15;background:rgba(76,76,76,.8);color:#fff;padding:2px 3px;border-radius:3px;transition:all .3s;display:none;white-space:nowrap}.luckysheet-row-count-show{text-align:center}.luckysheet-row-count-show div{writing-mode:vertical-rl;writing-mode:vertical-rl;-ms-writing-mode:initial}.luckysheet-row-count-show div:last-child{writing-mode:initial}#luckysheet-sheet-list{max-height:60%;overflow:auto}#luckysheet-sheet-list .luckysheet-cols-menuitem{padding-left:0;padding-right:10px}#luckysheet-sheet-list .luckysheet-cols-menuitem .luckysheet-cols-menuitem-content{padding-left:5px}#luckysheet-sheet-list .icon{width:15px;margin-left:4px;display:inline-block}.luckysheet-input-box{position:absolute;font:normal normal 400 13px arial,sans,sans-serif;text-align:left;top:-10000px;max-height:9900px;max-width:9900px;border:2px #5292f7 solid;padding:0 2px;margin:0;z-index:15;resize:none;overflow:auto;overflow:initial;white-space:pre-wrap;outline:0;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.4);-moz-box-shadow:0 2px 5px rgba(0,0,0,.4);box-shadow:0 2px 5px rgba(0,0,0,.4);word-wrap:break-word}.luckysheet-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:pre-wrap;-webkit-transform:translateZ(0)}#luckysheet-rich-text-editor{-webkit-user-modify:read-write}.luckysheet-input-box-index{display:none;position:absolute;height:14px;line-height:16px;font-size:12px;padding:1px 6px;background-color:#5292f7;border-radius:2px;box-shadow:0 1px 2px rgba(0,0,0,.5);color:#fff}.luckysheet-modal-dialog{-webkit-box-shadow:0 4px 16px rgba(0,0,0,.2);-moz-box-shadow:0 4px 16px rgba(0,0,0,.2);box-shadow:0 4px 16px rgba(0,0,0,.2);background:#fff;background-clip:padding-box;border:1px solid #acacac;border:1px solid rgba(0,0,0,.333);outline:0;position:absolute;color:#000;padding:30px 42px;z-index:100002}.luckysheet-modal-dialog-mask{position:absolute;height:100%;width:100%;background:#fff;opacity:.6;display:none;left:0;top:0;z-index:1010}.luckysheet-modal-dialog-title{background-color:#fff;color:#000;cursor:default;font-size:16px;font-weight:400;line-height:24px;margin:0 0 16px}.luckysheet-modal-dialog-title-close{height:11px;opacity:.7;padding:17px;position:absolute;right:0;top:0;width:11px;color:#d4d4d4;outline:0}.luckysheet-modal-dialog-chart{padding:20px 10px;webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.luckysheet-modal-dialog-resize{position:absolute;border:2px solid #0188fb;margin:0;padding:0;top:-2px;left:-2px;bottom:-2px;right:-2px;pointer-events:none}.luckysheet-modal-dialog-resize-item{position:absolute;height:6px;width:6px;background:#fff;border:2px solid #0188fb;pointer-events:all;border-radius:6px}.luckysheet-modal-dialog-resize-item-lt{left:-6px;top:-6px;cursor:se-resize}.luckysheet-modal-dialog-resize-item-mt{left:50%;top:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-modal-dialog-resize-item-rt{right:-6px;top:-6px;cursor:ne-resize}.luckysheet-modal-dialog-resize-item-lm{top:50%;left:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-modal-dialog-resize-item-rm{top:50%;right:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-modal-dialog-resize-item-lb{left:-6px;bottom:-6px;cursor:ne-resize}.luckysheet-modal-dialog-resize-item-mb{left:50%;bottom:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-modal-dialog-resize-item-rb{right:-6px;bottom:-6px;cursor:se-resize}.luckysheet-modal-dialog-controll{position:absolute;margin:0;padding:0;right:-35px;font-size:14px;top:0}.luckysheet-modal-controll-btn{height:13px;padding:8px;width:13px;color:#d4d4d4;outline:0;border:1px solid #b6b6b6;display:block;background:#fff;margin-bottom:3px;cursor:pointer;transition:all .2s;-moz-transition:all .2s;-webkit-transition:all .2s;-o-transition:all .2s}.luckysheet-modal-controll-btn:hover{border:1px solid #a1a1a1;color:#0188fb}.luckysheet-modal-controll-btn:active{border:1px solid #bbb;background:#efefef;color:#0188fb}.luckysheet-modal-controll-del{font-size:16px}.luckysheet-modal-controll-max-close{font-size:22px;width:42px;height:42px;line-height:42px;background:#383838;opacity:.7;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;color:#fff;position:absolute;right:0;top:0;z-index:100000;text-align:center}.luckysheet-modal-controll-max-close:hover{background:#0188fb;cursor:pointer}.luckysheet-sort-item-close{margin-right:3px;font-size:14px;color:#bbb;cursor:pointer}.luckysheet-sort-item-close:hover{color:#494949}.luckysheet-modal-dialog-title-close:hover{color:#5e5e5e;cursor:pointer}.luckysheet-modal-dialog-content{background-color:#fff;line-height:1.4em;word-wrap:break-word}.luckysheet-modal-dialog-buttons{margin-top:10px}.luckysheet-modal-dialog-buttons button{margin-right:10px}.luckysheet-modal-dialog-title-text span{font-family:Arial}.luckysheet-sort-modal{font-size:12px}.luckysheet-sort-modal label input,.luckysheet-sort-modal label span{vertical-align:middle}.luckysheet-sort-modal table,.luckysheet-sort-modal>div{margin-bottom:10px}.luckysheet-sort-modal table tr{margin-bottom:10px}.luckysheet-sort-modal table tr td{padding:5px;white-space:nowrap;border-top:1px solid #ffc6c6}.luckysheet-sort-modal table tr td>div:first-child{margin-bottom:8px}.luckysheet-sort-modal table tr td select{max-width:180px;min-width:50px}.luckysheet-sort-modal table tr:first-child td{border-top:none}.luckysheet-filter-options{color:#897bff;cursor:pointer;position:absolute;z-index:20;border:1px solid #897bff;border-radius:3px;top:3px;margin-left:0;display:none;padding:0 4px;font-size:12px;height:15px;background:#fff}.luckysheet-filter-options:hover{color:#fff;border:1px solid #fff;background:#897bff}.luckysheet-filter-options-active{color:#fff;border:1px solid #897bff;background:#897bff}.luckysheet-flat-menu-button{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;background-color:#f5f5f5;background-image:-webkit-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-moz-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-ms-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:-o-linear-gradient(to bottom,#f5f5f5,#f1f1f1);background-image:linear-gradient(to bottom,#f5f5f5,#f1f1f1);border:1px solid #dcdcdc;color:#333;cursor:default;font-size:11px;font-weight:700;line-height:27px;list-style:none;margin:0 2px;min-width:46px;outline:0;padding:0 18px 0 6px;text-align:left;text-decoration:none;position:relative;padding-left:15px}.luckysheet-flat-menu-button:hover{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;background-color:#f5f5f5;background-image:-webkit-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-moz-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-ms-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:-o-linear-gradient(to bottom,#f1f1f1,#f5f5f5);background-image:linear-gradient(to bottom,#f1f1f1,#f5f5f5);border:1px solid #d0d0d0;color:#000}.luckysheet-flat-menu-button div{display:inline-block;vertical-align:middle;position:absolute;right:15px}.luckysheet-data-visualization{width:60%;min-width:860px}.luckysheet-data-pivotTable-selection,.luckysheet-data-visualization-selection{width:30%;min-width:200px;display:none}.luckysheet-data-visualization-chart{width:50%;height:50%}.luckysheet-data-visualization-chart .luckysheet-modal-dialog-content{width:100%;height:100%;overflow:hidden}.luckysheet-datavisual-modal{font-size:12px;height:100%;width:100%}.luckysheet-datavisual-left{display:inline-block;width:100%;height:100%;position:relative;overflow:hidden}.luckysheet-datavisual-tabs{border-bottom:1px solid #dedede;width:80%;height:26px;padding-left:20px}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab{padding:0 5px;text-align:center;display:inline-block;cursor:pointer;border:1px solid #fff;border-bottom:none;height:24px;line-height:24px;background:#fff;color:#777}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab:hover{color:#000}.luckysheet-datavisual-tabs .luckysheet-datavisual-tab-active{border:1px solid #dedede;border-bottom:none;cursor:default;height:26px;color:#000}.luckysheet-datavisual-tab-content{position:absolute;top:28px;bottom:0;width:100%;display:none}.luckysheet-datavisual-quick-menu{width:90px;overflow:auto;margin-top:5px}.luckysheet-datavisual-quick-menu::-webkit-scrollbar{display:none}.luckysheet-datavisual-quick-menu>div{text-align:left;padding:4px 4px;border-right:3px solid #fff;color:#777;cursor:pointer;line-height:1.4em;word-wrap:break-word}.luckysheet-datavisual-quick-menu>div:hover{color:#000}.luckysheet-datavisual-quick-menu>div i{width:15px}.luckysheet-datavisual-quick-menu>div:hover i{color:#ff7e7e}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active{border-right:3px solid #ff7e7e;color:#000;font-weight:700}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active:hover i{color:#000}.luckysheet-datavisual-quick-range{padding:5px 0}.luckysheet-datavisual-range-container{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:20px;width:100%;max-width:200px;display:inline-block}.luckysheet-datavisual-range-container-focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:0}.luckysheet-datavisual-range-input,.luckysheet-datavisual-range-input:focus{background:0 0!important;border:none!important;box-sizing:border-box;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;height:25px;margin:0;outline:0!important;padding:1px 8px!important;width:100%}.luckysheet-datavisual-range-button-container{overflow:hidden;padding:0 0 0 8px;text-align:right;width:21px}.luckysheet-datavisual-range-button-container div{padding:2px 10px 0 10px;font-size:18px;cursor:pointer;color:#6598f3}.luckysheet-datavisual-range-button-container div:hover{color:#ff7e7e}.luckysheet-datavisual-quick-m{margin-top:5px}.luckysheet-datavisual-quick-list{left:90px;right:0;bottom:0;top:110px;position:absolute;overflow:auto;border-top:1px solid #e5e5e5;padding:5px 3px 35px 3px}.luckysheet-datavisual-quick-list-title{padding:4px 6px;background:#e5e5e5;margin-top:10px}.luckysheet-datavisual-quick-list-ul{overflow:hidden}.luckysheet-datavisual-quick-list-item{display:inline-block;margin:5px 8px;border:1px solid #dadada;width:100px;height:80px}.luckysheet-datavisual-quick-list-item:hover{border:1px solid #ff7e7e;box-shadow:0 0 20px #ff7e7e}.luckysheet-datavisual-quick-list-item img{display:inline-block;width:100px;height:80px}.luckysheet-datavisual-quick-list-item-active{border:1px solid #6598f3;box-shadow:0 0 20px #6598f3}.jfk-tooltip{z-index:300000}.jfk-tooltip-hide{-webkit-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;-moz-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;-o-transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;transition:visibility .13s,opacity .13s ease-out,left 0 linear .13s,top 0 linear .13s;opacity:0;left:20px!important;top:20px!important;visibility:hidden!important}.jfk-tooltip{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-transition:visibility 0,opacity .13s ease-in;-moz-transition:visibility 0,opacity .13s ease-in;-o-transition:visibility 0,opacity .13s ease-in;transition:visibility 0,opacity .13s ease-in;background-color:#2a2a2a;border:1px solid #fff;color:#fff;cursor:default;display:block;font-size:11px;font-weight:700;margin-left:-1px;opacity:1;padding:7px 9px;position:absolute;visibility:visible;white-space:pre-wrap;word-break:break-all;word-break:break-word}.jfk-tooltip-arrowup{top:-6px}.jfk-tooltip-arrow{pointer-events:none;position:absolute}.jfk-tooltip-arrow .jfk-tooltip-arrowimplafter{border:5px solid}.jfk-tooltip-arrow .jfk-tooltip-arrowimplbefore{border:6px solid}.jfk-tooltip-arrow .jfk-tooltip-arrowimplafter,.jfk-tooltip-arrow .jfk-tooltip-arrowimplbefore{content:"";display:block;height:0;position:absolute;width:0}.jfk-tooltip-arrowup .jfk-tooltip-arrowimplafter{border-top-width:0;top:1px}.jfk-tooltip-arrowdown .jfk-tooltip-arrowimplafter,.jfk-tooltip-arrowup .jfk-tooltip-arrowimplafter{border-color:#2a2a2a transparent;left:-5px}.jfk-tooltip-arrowup .jfk-tooltip-arrowimplbefore{border-top-width:0}.jfk-tooltip-arrowdown .jfk-tooltip-arrowimplbefore,.jfk-tooltip-arrowup .jfk-tooltip-arrowimplbefore{border-color:#fff transparent;left:-6px}.luckysheet-datavisual-config{position:relative;width:100%;height:97%;overflow:auto;top:0}.luckysheet-datavisual-config input{outline:0}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-title{position:relative;width:97%;height:33px;background:#f5f5f5;border:1px solid #e5e5e5;margin-top:30px;line-height:30px;font-weight:700;color:#d14836;cursor:pointer}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-title:hover{background:#efefef;border:1px solid #e0e0e0}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content{position:relative;width:97%;border:1px solid #e5e5e5;border-top:1px solid #fff;display:none;color:#505050;padding-bottom:20px}.luckysheet-datavisual-config-input,.luckysheet-datavisual-config-input-no{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:50px;width:90%;display:inline-block;height:24px;line-height:24px;padding:3px}.luckysheet-datavisual-config-input-no:focus,.luckysheet-datavisual-config-input:focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:0}.luckysheet-datavisual-content-row{margin-left:15px;margin-bottom:5px;margin-top:15px;height:30px;line-height:30px}.luckysheet-datavisual-content-column{display:inline-block;position:relative}.luckysheet-datavisual-content-column-title{text-align:left;font-size:14px}.luckysheet-datavisual-content-column-right{text-align:right}.luckysheet-datavisual-content-rowsplit{height:5px;border-top:1px solid #e5e5e5;width:100%;margin-top:25px}.luckysheet-datavisual-content-rowsplit-sub{height:2px;border-top:1px dashed #e5e5e5;width:90%;margin:0 auto;margin-top:18px;text-align:center}.sp-replacer{padding:2px;border:solid 1px #e5e5e5;background:#f5f5f5}.ui-visual-focus{box-shadow:none}.luckysheet-datavisual-config-slider,.luckysheet-datavisual-config-slider-range{width:70%;display:inline-block}.luckysheet-datavisual-config-slider-range .luckysheet-slider-handle{width:45px;height:26px;top:50%;margin-top:-13px;text-align:center;line-height:26px}.luckysheet-datavisual-content-row-subtitle{display:none}.ui-selectmenu-button.ui-button{text-align:left;white-space:nowrap;width:48%}.luckysheet-datavisual-content-column-italic{font-style:italic;font-weight:700;font-family:"Times New Roman",Times,serif}.luckysheetChartAxisShow{display:none}.luckysheet-datavisual-chart-axistitle-show{display:none}.luckysheetChartseriesShow{display:none}#luckysheetswichxy-button,#piecutselect-button{width:70%}.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item-wrapper{padding:.5em 0 .5em 3em}.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item .ui-icon{height:26px;width:26px;top:.1em;background-image:none}#luckysheetscatterselectshow-menu .ui-state-active,#luckysheetswichseries-menu .ui-state-active,#pie0cutselect-menu .ui-state-active,#pie1cutselect-menu .ui-state-active,#pie2cutselect-menu .ui-state-active{border:1px solid #f5f5f5;background:#f5f5f5;color:#333}.ui-front{z-index:100003}.luckysheet-datavisual-skin-menu{top:5px;position:absolute;left:0;width:90%;height:30px}#luckysheet-chart-theme-content{height:21px;width:120px}.luckysheet-datavisual-skin-c{position:absolute;left:0;top:38px;bottom:0;width:100%;overflow:auto}.luckysheet-datavisual-skin-c .luckysheet-datavisual-skin-item{display:inline-block;width:46%;height:152px;margin-right:5px;border:4px solid #efefef;border-radius:4px;position:relative;cursor:pointer}.luckysheet-datavisual-skin-c .luckysheet-datavisual-skin-item-more{display:inline-block;width:94%;height:32px;position:relative;cursor:pointer;font-size:20px;line-height:32px;margin-bottom:20px;text-align:center}.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-canvas,.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-cover{position:absolute;width:100%;height:100%;bottom:0}.luckysheet-datavisual-skin-item .luckysheet-datavisual-skin-cover{background-color:rgba(0,0,0,.4);color:#fff;font-size:14px;height:30%;transition:opacity .15s ease;-moz-transition:opacity .15s ease;-webkit-transition:opacity .15s ease;-o-transition:opacity .15s ease}.luckysheet-datavisual-skin-item:hover .luckysheet-datavisual-skin-cover{opacity:1;z-index:2}.luckysheet-datavisual-skin-cover .luckysheet-datavisual-skin-cover-txt{position:absolute;width:80%;height:80%;top:10%;left:10%;text-align:center}.luckysheet-chart-point-config{position:relative;width:100%;height:100%;margin:0;font-size:12px}.luckysheet-chart-point-config-set{position:absolute;width:60%;height:100%;left:0;top:0}.luckysheet-chart-point-config-left{position:absolute;height:100%;width:50%;left:0;top:0}.luckysheet-chart-point-config-left-top{position:absolute;top:0;height:120px;width:100%}.luckysheet-chart-point-searchcondition{position:absolute;top:10px;bottom:10px;left:10px;right:10px}.luckysheet-chart-point-config-left-mid{position:absolute;top:120px;height:25px;width:100%;text-align:left;margin-left:20px;line-height:35px}.luckysheet-chart-point-config-left-mid span{color:#00f;cursor:pointer;text-decoration:underline;font-size:12px}.luckysheet-chart-point-config-left-bottom{position:absolute;top:0;bottom:0;margin-top:145px;width:100%}.luckysheet-chart-point-searchitem-c{position:absolute;width:100%;height:100%;overflow:hidden;overflow-y:auto;cursor:default}.luckysheet-chart-point-searchitem{display:inline-block;margin-left:5px;margin-top:5px;width:90px;border:2px solid #f5f5f5;background:#fff;text-align:center;padding:5px 0;user-select:none;cursor:default;position:relative}.luckysheet-chart-point-searchitem-selected{position:absolute;color:#616161;left:-6px;top:-10px;font-size:20px;display:none;font-weight:400}.luckysheet-chart-point-searchitem-active{box-shadow:0 0 4px #656565}.luckysheet-chart-point-searchitem-active .luckysheet-chart-point-searchitem-selected{display:block}.luckysheet-chart-point-searchitem-name{font-size:12px;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.luckysheet-chart-point-searchitem-dim{font-size:12px;opacity:.7;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#luckysheet-chart-point-selectedhelp{pointer-events:none;position:absolute;border:1px dotted #535353}.luckysheet-chart-point-config-right{position:absolute;height:100%;width:50%;top:0;right:0}.luckysheet-chart-point-itemconfig{position:absolute;top:10px;bottom:10px;left:10px;right:10px;overflow:auto}.luckysheet-chart-point-config-chart{position:absolute;width:40%;height:100%;right:0;top:0}.luckysheet-chart-point-config-chart-c{width:100%;height:80%;top:10%;position:relative}@media (max-width:776px){.luckysheet-chart-point-config-set{width:90%}.luckysheet-chart-point-config-chart{width:10%}}@media (min-width:768px){.luckysheet-chart-point-config-set{width:80%}.luckysheet-chart-point-config-chart{width:20%}}@media (min-width:1024px){.luckysheet-chart-point-config-set{width:70%}.luckysheet-chart-point-config-chart{width:30%}}@media (min-width:1280px){.luckysheet-chart-point-config-set{width:60%}.luckysheet-chart-point-config-chart{width:40%}}@media (min-width:1680px){.luckysheet-chart-point-config-set{width:50%}.luckysheet-chart-point-config-chart{width:50%}}.luckysheet-modal-dialog-slider{top:1px;bottom:1px;position:absolute;right:0;width:260px;border:1px solid #e5e5e5;z-index:1004;box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title{background:#333;color:#fff;height:39px;width:100%;position:absolute;top:0;left:0;line-height:39px;font-size:13px}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title>span:first-child{margin-left:5px;font-weight:700}.luckysheet-modal-dialog-slider .luckysheet-modal-dialog-slider-title>span:last-child{position:relative;float:right;margin-right:20px;cursor:pointer}.luckysheet-modal-dialog-slider-content{background:#efefef;margin-top:39px;width:100%;position:absolute;top:0;bottom:0;font-size:12px}.luckysheet-modal-dialog-slider-range{background:#e1e1de;color:#1b1b19;height:40px;font-size:13px;line-height:40px}.luckysheet-modal-dialog-slider-range>div:first-child{font-weight:700;overflow:hidden;text-overflow:ellipsis;float:left;max-width:170px;margin-right:10px;margin-left:5px;white-space:nowrap}.luckysheet-modal-dialog-slider-range>div:last-child{color:#00f;cursor:pointer;float:left}.luckysheet-modal-dialog-slider-list{width:250px;height:320px;overflow-y:scroll;margin:5px 0;margin-left:5px;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;background:#fff}.luckysheet-modal-dialog-slider-list-title{height:20px;line-height:25px;padding:0 5px}.luckysheet-modal-dialog-slider-list .luckysheet-modal-dialog-slider-list-item{padding:0 4px;position:relative;width:228px;height:25px;user-select:none;border:1px solid #fff}.luckysheet-modal-dialog-slider-list .luckysheet-modal-dialog-slider-list-item:hover{background:#fff6cb;border:1px solid #ffe463}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-name{cursor:pointer;height:25px;line-height:25px;cursor:move;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;left:22px;right:40px;top:0}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected{width:20px;cursor:pointer;text-align:center;position:absolute;left:0;top:0;height:25px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected i{margin-top:4px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected div{border:1px solid #9c9c9c;top:4px;left:1px;position:absolute;height:14px;width:14px;-moz-box-shadow:1px 1px 1px #dbdbdb inset;-webkit-box-shadow:1px 1px 1px #dbdbdb inset;box-shadow:1px 1px 1px #dbdbdb inset}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-selected div:hover{border:1px solid #5e5e5e}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered{width:20px;cursor:pointer;text-align:center;position:absolute;right:20px;top:2px;height:25px;display:none}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered i{margin-top:2px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered:hover i{color:#fb8686}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filtered i.fa-times{right:0;bottom:3px;color:red;font-size:9px;position:absolute}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter{width:20px;cursor:pointer;text-align:center;position:absolute;right:0;top:0;height:25px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter i{margin-top:2px;font-size:16px}.luckysheet-modal-dialog-slider-list .luckysheet-slider-list-item-filter:hover i{color:#fb8686}.luckysheet-modal-dialog-slider-config-c{width:100%;position:absolute;margin-top:390px;top:0;bottom:3px}.luckysheet-modal-dialog-slider-config{height:50%;width:50%;position:absolute}.luckysheet-modal-dialog-slider-config>div:first-child{color:#1b1b19;font-size:13px;height:20px;line-height:20px;padding-left:5px}.luckysheet-modal-dialog-slider-config>div:first-child span{font-weight:700;font-weight:700;overflow:hidden}.luckysheet-modal-dialog-slider-config .luckysheet-modal-dialog-slider-config-list{position:absolute;margin-top:22px;margin-left:5px;left:0;right:5px;top:0;bottom:3px;border:1px solid #e5e5e5;user-select:none;overflow-y:auto;background:#fff}.luckysheet-modal-dialog-slider-config-list .luckysheet-modal-dialog-slider-config-item{position:relative;height:19px;line-height:19px;font-size:12px;border:1px solid #88adfd;background:#aac1fe;margin:2px}.luckysheet-modal-dialog-slider-config-list .luckysheet-modal-dialog-slider-config-item:hover{border:1px solid #0188fb;background:#5f9afc}.luckysheet-modal-dialog-slider-config-item-txt{position:absolute;height:100%;left:5px;right:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:move}.luckysheet-modal-dialog-slider-config-item-icon{position:absolute;height:100%;width:15px;right:0;top:-4px;cursor:pointer;font-size:14px}.luckysheet-modal-dialog-slider-config-item-icon:hover{color:#fa7272}.luckysheet-modal-dialog-config-filter{top:0;left:0}.luckysheet-modal-dialog-config-column{top:0;left:50%}.luckysheet-modal-dialog-config-row{top:50%;left:0}.luckysheet-modal-dialog-config-value{top:50%;left:50%}#luckysheet-modal-dialog-slider-pivot-move{position:absolute;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px dotted #000;color:#000;font-size:14px;opacity:.6;z-index:1005;padding:3px 8px;pointer-events:none;user-select:none}.luckysheet-modal-dialog-slider-chart{width:445px}.luckysheet-modal-dialog-slider-chart .luckysheet-modal-dialog-slider-title{background:#b94045}.luckysheet-modal-dialog-slider-chart .luckysheet-modal-dialog-slider-content{background:#fff}#luckysheet-dialog-pivotTable-clearitem{color:#00f;cursor:pointer;float:right;margin-right:30px}.luckysheet-freezebar-drop,.luckysheet-freezebar-handle{position:absolute;z-index:999}.luckysheet-freezebar-vertical-handle{width:4px;display:none}.luckysheet-freezebar-vertical-drop{width:4px}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-handle{display:block;z-index:1003}.luckysheet-freezebar-vertical-handle-bar{width:2px;background:#dbe5f7;border-color:#a5c6fe;border-style:solid;border-width:0 1px;opacity:.45;margin-top:19px;top:0;bottom:0}.luckysheet-freezebar-vertical-handle-title{width:4px;background:#9dbefb;opacity:.8;height:19px;top:0}.luckysheet-freezebar-drop-bar,.luckysheet-freezebar-handle-bar{position:absolute;z-index:7}.luckysheet-freezebar-vertical-drop-bar{width:2px;background:rgba(0,0,0,.45);border-width:2px 1px 2px 2px;margin-top:19px;top:0;bottom:0}.luckysheet-freezebar-vertical-drop-title{width:2px;background:#bcbdbc;height:19px;top:0}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-drop-bar,.luckysheet-freezebar-hover .luckysheet-freezebar-vertical-drop-bar{background:#c1c1c1;width:4px}.luckysheet-freezebar-active .luckysheet-freezebar-vertical-drop-title,.luckysheet-freezebar-hover .luckysheet-freezebar-vertical-drop-title{background:#5d88db;width:4px}.luckysheet-freezebar-horizontal-handle{height:4px;display:none}.luckysheet-freezebar-horizontal-drop{height:4px}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-handle{display:block;z-index:1003}.luckysheet-freezebar-horizontal-handle-bar{height:2px;background:#dbe5f7;border-color:#a5c6fe;border-style:solid;border-width:1px 0;opacity:.45;margin-left:45px;left:0;right:0}.luckysheet-freezebar-horizontal-handle-title{height:4px;background:#9dbefb;opacity:.8;width:45px;left:0}.luckysheet-freezebar-horizontal-drop-bar{height:2px;overflow:hidden;background:rgba(0,0,0,.45);border-width:2px 2px 1px 2px;margin-left:45px;left:0;right:0}.luckysheet-freezebar-horizontal-drop-title{height:2px;background:#bcbdbc;width:45px;left:0}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-drop-bar,.luckysheet-freezebar-hover .luckysheet-freezebar-horizontal-drop-bar{background:#c1c1c1;height:4px}.luckysheet-freezebar-active .luckysheet-freezebar-horizontal-drop-title,.luckysheet-freezebar-hover .luckysheet-freezebar-horizontal-drop-title{background:#5d88db;height:4px}#luckysheet-functionbox-container{height:100%;padding-left:10px;overflow:hidden;position:absolute;padding:0;top:0;left:185px;right:10px;border-left:1px solid #e5e5e5}#luckysheet-functionbox-container>div{height:100%;overflow-x:hidden;overflow-y:auto;position:relative}#luckysheet-functionbox{bottom:6px;left:0;position:absolute;right:0;top:6px;resize:none;font-family:arial,sans,sans-serif;font-size:14px;line-height:14px;background-color:#fff;padding:0 5px}#luckysheet-functionbox .luckysheet-functionbox-cell-input{word-wrap:break-word;-webkit-nbsp-mode:space;-webkit-line-break:after-white-space}.luckysheet-functionbox-cell-input{width:100%;height:100%;margin:0;outline:0;cursor:text;-webkit-user-modify:read-write-plaintext-only;white-space:pre-wrap;-webkit-transform:translateZ(0);background-color:#fff}.luckysheet-formula-text-color{color:#000}.luckysheet-formula-text-string{color:#228b22}.luckysheet-formula-search-c{position:absolute;left:50%;top:50%;border:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);color:#535353;font-size:12px;background:#fff;z-index:1003;width:300px;display:none}.luckysheet-formula-search-c .luckysheet-formula-search-item{background:#fff;padding:5px 10px;cursor:pointer}.luckysheet-formula-search-c .luckysheet-formula-search-item .luckysheet-formula-search-detail{display:none;color:#444}.luckysheet-formula-search-c .luckysheet-formula-search-item .luckysheet-formula-search-func{color:#222;font-size:14px}.luckysheet-formula-search-c .luckysheet-formula-search-item-active{display:block;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;background:#f5f5f5}.luckysheet-formula-search-c .luckysheet-formula-search-item-active .luckysheet-formula-search-detail{display:block}.luckysheet-formula-help-c{display:none;position:absolute;left:20%;top:20%;border:1px solid rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);color:#535353;font-size:12px;background:#fff;z-index:1003;width:300px}.luckysheet-formula-help-c .luckysheet-formula-help-content{max-height:300px;overflow-y:scroll}.luckysheet-formula-help-content-example{margin-top:5px}.luckysheet-formula-help-title{display:block;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;background:#f5f5f5;padding:2px 10px;font-size:14px}.luckysheet-formula-help-title-formula{width:250px;word-break:break-word}.luckysheet-arguments-help-section{margin-top:5px;margin-bottom:5px;color:#222}.luckysheet-arguments-help-section-title{padding:1px 10px;color:#666}.luckysheet-arguments-help-parameter-content{padding:1px 10px;display:inline-block;word-wrap:break-word}.luckysheet-arguments-help-formula{padding:1px 10px;font-size:14px}.luckysheet-arguments-help-parameter-active{background-color:#fff9b2}.luckysheet-formula-help-collapse{position:absolute;top:0;right:25px;font-size:16px;cursor:pointer;color:#bbb}.luckysheet-formula-help-close{position:absolute;top:0;right:5px;font-size:16px;cursor:pointer;color:#bbb}.luckysheet-formula-help-close:hover,.luckysheet-formula-help-collapse:hover{color:#555}.luckysheetLoader{font-size:20px;width:1em;height:1em;border-radius:50%;text-indent:-9999em;position:absolute;top:50%;left:50%;animation:load-effect 1s infinite linear}@keyframes load-effect{0%{box-shadow:0 -3em 0 .2em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 0 #0188fb}12.5%{box-shadow:0 -3em 0 0 #0188fb,2em -2em 0 .2em #0188fb,3em 0 0 0 #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}25%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 .2em #0188fb,2em 2em 0 0 #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}37.5%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 0 #0188fb,2em 2em 0 .2em #0188fb,0 3em 0 0 #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}50%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 0 #0188fb,0 3em 0 .2em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 -.5em #0188fb}62.5%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 0 #0188fb,-2em 2em 0 .2em #0188fb,-3em 0 0 0 #0188fb,-2em -2em 0 -.5em #0188fb}75%{box-shadow:0 -3em 0 -.5em #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 .2em #0188fb,-2em -2em 0 0 #0188fb}87.5%{box-shadow:0 -3em 0 0 #0188fb,2em -2em 0 -.5em #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 0 #0188fb,-3em 0 0 0 #0188fb,-2em -2em 0 .2em #0188fb}100%{box-shadow:0 -3em 0 .2em #0188fb,2em -2em 0 0 #0188fb,3em 0 0 -.5em #0188fb,2em 2em 0 -.5em #0188fb,0 3em 0 -.5em #0188fb,-2em 2em 0 -.5em #0188fb,-3em 0 0 -.5em #0188fb,-2em -2em 0 0 #0188fb}}.luckysheetpopover{position:absolute;background:rgba(0,0,0,.65);color:#fff;font-size:18px;padding:20px 100px;text-align:center;z-index:10000;border-radius:4px;user-select:none;display:none}.luckysheetpopover .luckysheetpopover-btn{position:absolute;right:10px;top:50%;margin-top:-12px;border:1px solid #fff;border-radius:4px;padding:2px 4px;cursor:pointer;font-size:14px}.luckysheetpopover .luckysheetpopover-btn:hover{border:1px solid #fea2a2;color:#fea2a2}.luckysheetPaintCursor{cursor:url(paint_24px.ico),auto}#luckysheet-search-replace .tabBox{margin-top:20px;font-size:0}#luckysheet-search-replace .tabBox span{display:inline-block;text-align:center;width:100px;border:1px solid #d4d4d4;font-size:14px;line-height:2}#luckysheet-search-replace .tabBox span.on{background-color:#8c89fe;border-color:#726efe;color:#fff}#luckysheet-search-replace .ctBox{padding:5px 10px;border:solid 1px #d4d4d4;font-size:14px}#luckysheet-search-replace .inputBox{height:90px;position:relative}#luckysheet-search-replace .inputBox .textboxs{height:30px;line-height:30px}#luckysheet-search-replace .inputBox .checkboxs{height:90px;position:absolute;right:0;top:0}#luckysheet-search-replace .inputBox .checkboxs div{height:30px;line-height:30px}#luckysheet-search-replace .inputBox .checkboxs input[type=checkbox]{float:left;margin-top:9px}#luckysheet-search-replace .btnBox{margin-top:10px}#luckysheet-search-replace .btnBox button{margin:0 2.5px}#luckysheet-search-replace #searchAllbox{height:210px;border:1px solid #d4d4d4;margin-top:10px;overflow-y:auto;position:relative}#luckysheet-search-replace #searchAllbox .boxTitle{width:100%;height:30px;line-height:29px;padding:0 5px;background-color:#fff;border-bottom:1px solid #d4d4d4;box-sizing:border-box;position:sticky;left:0;top:0}#luckysheet-search-replace #searchAllbox .boxTitle span{display:inline-block;text-align:center}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(1){width:25%}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(2){width:25%}#luckysheet-search-replace #searchAllbox .boxTitle span:nth-of-type(3){width:50%}#luckysheet-search-replace #searchAllbox .boxMain .boxItem{height:30px;line-height:29px;border-bottom:1px solid #d4d4d4;padding:0 5px;box-sizing:border-box}#luckysheet-search-replace #searchAllbox .boxMain .boxItem.on{background-color:#8c89fe;color:#fff}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span{display:block;text-align:center;float:left}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(1){width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(2){width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-replace #searchAllbox .boxMain .boxItem span:nth-of-type(3){width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula{font-size:12px}#luckysheet-search-formula .inpbox{margin-bottom:5px}#luckysheet-search-formula .inpbox label{display:block;margin-bottom:5px}#luckysheet-search-formula .inpbox input{width:100%;height:24px;line-height:24px;border:1px solid #d4d4d4;padding:0 10px;box-sizing:border-box;font-size:12px}#luckysheet-search-formula .selbox{margin-bottom:5px}#luckysheet-search-formula .selbox select{width:50%;height:24px;line-height:24px;border:1px solid #d4d4d4;box-sizing:border-box;font-size:12px}#luckysheet-search-formula .listbox label{display:block;margin-bottom:5px}#formulaTypeList{width:300px;height:170px;border:1px solid #d4d4d4;overflow-y:scroll}#formulaTypeList .listBox{padding:5px;border-bottom:1px solid #d4d4d4}#formulaTypeList .listBox.on{background-color:#8c89fe;color:#fff}#formulaTypeList .listBox span:nth-of-type(1){display:block}#formulaTypeList .listBox span:nth-of-type(2){display:block}#luckysheet-search-formula-parm{width:502px;font-size:12px}#luckysheet-search-formula-parm .parmListBox{width:500px;padding:5px 0;border:1px solid #d4d4d4}#luckysheet-search-formula-parm .parmBox{height:30px;line-height:30px;margin-bottom:5px}#luckysheet-search-formula-parm .parmBox:last-child{margin-bottom:0}#luckysheet-search-formula-parm .parmBox .name{width:90px;height:30px;padding:0 5px;float:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula-parm .parmBox .txt{width:198px;height:28px;border:1px solid #d4d4d4;float:left}#luckysheet-search-formula-parm .parmBox .txt input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-search-formula-parm .parmBox .txt i{float:right;margin-top:8px;margin-right:5px}#luckysheet-search-formula-parm .fa-table{cursor:pointer;color:#6598f3}#luckysheet-search-formula-parm .fa-table:hover{color:#ff7e7e}#luckysheet-search-formula-parm .parmBox .val{width:190px;height:30px;line-height:30px;padding:0 5px;float:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#luckysheet-search-formula-parm .formulaDetails{padding:5px}#luckysheet-search-formula-parm .parmDetailsBox{max-height:100px;padding:5px 0 5px 20px;overflow-y:scroll}#luckysheet-search-formula-parm .parmDetailsBox span{display:inline-block}#luckysheet-search-formula-parm .result{padding:5px;border-top:1px solid #d4d4d4}#textCellColor{border:1px solid #d4d4d4;padding:5px 10px}#textCellColor .colorbox{height:30px;line-height:30px;margin-bottom:10px}#textCellColor .colorbox input[type=checkbox]{float:left;margin-top:10px}#textCellColor .colorbox label{display:inline-block;width:80px}#luckysheet-multiRange-dialog input,#luckysheet-singleRange-dialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}#luckysheet-conditionformat-dialog{font-size:12px}#luckysheet-conditionformat-dialog .box .boxTitleOne{margin:5px 0;font-weight:600}#luckysheet-conditionformat-dialog .box .inpbox{width:198px;height:28px;border:1px solid #d4d4d4}#luckysheet-conditionformat-dialog .box .inpbox input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-conditionformat-dialog .box .inpbox2{float:left;width:108px;height:28px;border:1px solid #d4d4d4}#luckysheet-conditionformat-dialog .box .inpbox2 input{width:60px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-conditionformat-dialog .box i.fa-table{float:right;margin-top:8px;margin-right:5px}#luckysheet-conditionformat-dialog .box .fa-table{cursor:pointer;color:#6598f3}#luckysheet-conditionformat-dialog .box .fa-table:hover{color:#ff7e7e}#luckysheet-conditionformat-dialog .box #daterange-btn{width:188px;height:28px;padding:0 5px;line-height:28px;border:1px solid #d4d4d4;cursor:pointer}#luckysheet-conditionformat-dialog .box .selectbox{width:150px;height:30px}#luckysheet-icon-dataBar-menuButton .bgImgBox{width:28px;height:26px;background:url(../plugins/images/CFdataBar.png) no-repeat}#luckysheet-icon-colorGradation-menuButton .bgImgBox{width:28px;height:26px;background:url(../plugins/images/CFcolorGradation.png) no-repeat}#luckysheet-administerRule-dialog{font-size:12px}#luckysheet-administerRule-dialog .chooseSheet{height:24px;line-height:24px;margin-bottom:5px}#luckysheet-administerRule-dialog .chooseSheet select{height:24px;padding:0 5px;box-sizing:border-box;font-size:12px}#luckysheet-administerRule-dialog .ruleBox{border:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleBtn{padding:2.5px 5px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleBtn button{margin-right:10px;font-size:12px}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle{height:30px;padding:0 10px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span{display:block;height:100%;line-height:29px;float:left}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(1){width:30%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(2){width:20%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listTitle span:nth-of-type(3){width:45%}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox{height:150px;overflow-y:scroll}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item{height:24px;padding:2.5px 10px;border-bottom:1px solid #d4d4d4}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item.on{background-color:#8c89fe}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleName{width:30%;height:100%;line-height:24px;padding-right:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;float:left;box-sizing:border-box}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item.on .ruleName{color:#fff}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .format{width:20%;height:100%;line-height:24px;float:left;position:relative}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .format .colorbox{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin:3px 5px;cursor:pointer}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange{width:45%;height:100%;border:1px solid #d4d4d4;float:left;margin-left:10px;box-sizing:border-box;background-color:#fff}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange input{width:130px;height:22px;padding:0 5px;border:none;outline-style:none;float:left}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange i.fa-table{float:right;cursor:pointer;color:#6598f3;margin-top:6px;margin-right:5px}#luckysheet-administerRule-dialog .ruleBox .ruleList .listBox .item .ruleRange i.fa-table:hover{color:#ff7e7e}.luckysheet-newEditorRule-dialog{font-size:12px}.luckysheet-newEditorRule-dialog .boxTitle{margin-bottom:5px}.luckysheet-newEditorRule-dialog .ruleTypeBox{border:1px solid #d4d4d4;margin-bottom:10px}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem{padding:3px 5px;cursor:pointer}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem.on{background-color:#7c79fe;color:#fff}.luckysheet-newEditorRule-dialog .ruleTypeBox .ruleTypeItem .icon{font-family:Arial,Helvetica,sans-serif}.luckysheet-newEditorRule-dialog .ruleExplainBox{border:1px solid #d4d4d4;padding:10px}.luckysheet-newEditorRule-dialog .ruleExplainBox .title{display:block;font-weight:600;margin-bottom:5px}.luckysheet-newEditorRule-dialog .ruleExplainBox select{height:30px;font-size:12px;float:left;margin-right:5px}.luckysheet-newEditorRule-dialog .ruleExplainBox .inpbox{width:100px;height:30px;border:1px solid #d4d4d4;box-sizing:border-box;font-size:12px;float:left}.luckysheet-newEditorRule-dialog .ruleExplainBox .inpbox input{width:70px;height:100%;border:none;outline-style:none;padding:0 5px}.luckysheet-newEditorRule-dialog .ruleExplainBox .txt{display:block;height:100%;line-height:30px;float:left;margin:0 5px}.luckysheet-newEditorRule-dialog .ruleExplainBox #isPercent{float:left;margin:9px 0 8px 10px}.luckysheet-newEditorRule-dialog i.fa-table{float:right;margin-top:8px;margin-right:5px}.luckysheet-newEditorRule-dialog .fa-table{cursor:pointer;color:#6598f3}.luckysheet-newEditorRule-dialog .fa-table:hover{color:#ff7e7e}.luckysheet-newEditorRule-dialog .iconsBox{height:30px;margin-bottom:5px;position:relative}.luckysheet-newEditorRule-dialog .iconsBox label{display:block;width:80px;height:30px;line-height:30px;float:left}.luckysheet-newEditorRule-dialog .iconsBox .showbox{width:150px;height:20px;padding:4px 4px 4px 10px;border:1px solid #e5e5e5;background-color:#f5f5f5;float:left;cursor:pointer}.luckysheet-newEditorRule-dialog .iconsBox .showbox .model{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px;float:left}.luckysheet-newEditorRule-dialog .iconsBox ul{display:none;width:164px;max-height:150px;overflow-y:auto;background-color:#fff;border:1px solid #e5e5e5;position:absolute;left:80px;top:30px;list-style:none;margin:0;padding:0}.luckysheet-newEditorRule-dialog .iconsBox ul li{padding:5px 10px;background-color:#fff;cursor:pointer}.luckysheet-newEditorRule-dialog .iconsBox ul li:hover{background-color:#dfdfdf}.luckysheet-newEditorRule-dialog .iconsBox ul li div{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px}#luckysheet-CFicons-dialog .box{padding:10px;border:1px solid #dfdfdf;font-size:14px}#luckysheet-CFicons-dialog .box .title{height:20px;line-height:20px;padding:0 10px;background-color:#ebebeb}#luckysheet-CFicons-dialog .box .list{width:300px;padding:5px 0}#luckysheet-CFicons-dialog .box .list .left{width:50%;float:left}#luckysheet-CFicons-dialog .box .list .right{width:50%;float:right}#luckysheet-CFicons-dialog .box .list .item{width:125px;height:20px;padding:2.5px 10px;background-color:#fff;cursor:pointer}#luckysheet-CFicons-dialog .box .list .item:hover{background-color:#dfdfdf}#luckysheet-CFicons-dialog .box .list .item div{width:125px;height:20px;background:url(../plugins/images/CFicons.png) no-repeat;background-size:256px}#luckysheet-modal-dialog-slider-alternateformat{width:280px;font-size:12px}#luckysheet-modal-dialog-slider-alternateformat .luckysheet-modal-dialog-slider-content{background-color:#fff;overflow-y:scroll}#luckysheet-modal-dialog-slider-alternateformat .textTitle{padding:5px 10px;font-weight:600}#luckysheet-alternateformat-range{width:198px;height:28px;border:1px solid #d4d4d4;margin-left:10px}#luckysheet-alternateformat-range input{width:150px;height:28px;padding:0 10px;border:none;outline-style:none;float:left}#luckysheet-alternateformat-range .fa-table{float:right;margin-top:8px;margin-right:5px;cursor:pointer;color:#6598f3}#luckysheet-alternateformat-range .fa-table:hover{color:#ff7e7e}#luckysheet-alternateformat-checkbox{padding:5px 10px;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4;margin:10px 0}#luckysheet-alternateformat-checkbox div{height:20px;line-height:20px}#luckysheet-alternateformat-checkbox div:first-child{margin-bottom:5px}#luckysheet-alternateformat-checkbox input[type=checkbox]{float:left;cursor:pointer;margin-top:4px}#luckysheet-alternateformat-modelList{padding:0 10px;margin-bottom:10px}#luckysheet-alternateformat-modelCustom{padding:0 10px;margin-bottom:10px}#luckysheet-modal-dialog-slider-alternateformat .modelbox{display:inline-block;width:36px;padding:2px;border:2px solid #fff;box-sizing:border-box;margin-right:4px;margin-bottom:4px;cursor:pointer}#luckysheet-modal-dialog-slider-alternateformat .modelbox.on{border-color:#726efe}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box{width:100%;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box span{display:block;width:100%;height:10px;line-height:9px;text-align:center;border-bottom:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-modal-dialog-slider-alternateformat .modelbox .box span:last-child{line-height:10px;border-bottom:none}#luckysheet-alternateformat-modelToning{padding:10px}#luckysheet-alternateformat-modelToning .toningbox{height:25px;margin-bottom:5px}#luckysheet-alternateformat-modelToning .toningbox .toningShow{width:150px;height:100%;line-height:23px;text-align:center;border:1px solid #d4d4d4;float:left;margin-right:10px}#luckysheet-alternateformat-modelToning .toningbox .luckysheet-color-menu-button-indicator{width:20px;float:left;user-select:none;cursor:pointer}#luckysheet-alternateformat-modelToning .toningbox .luckysheet-color-menu-button-indicator .luckysheet-icon{user-select:none;margin-bottom:-6px}#luckysheet-alternateformat-colorSelect-dialog .currenColor{font-size:12px;margin-bottom:5px}#luckysheet-alternateformat-colorSelect-dialog .currenColor span{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin-left:5px;margin-bottom:-5px;cursor:pointer}#luckysheet-alternateformat-rangeDialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}#luckysheet-ifFormulaGenerator-dialog{font-size:12px}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox{height:30px;margin-bottom:10px}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox label{display:block;width:100px;height:100%;line-height:30px;padding:0 5px;text-align:right;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox{width:150px;height:100%;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox input{width:100px;height:100%;padding:0;border:none;outline-style:none;background:0 0;float:left}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox i.fa-table{font-size:14px;color:#6598f3;float:right;margin-right:0;margin-top:8px;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox .inpBox i.fa-table:hover{color:#ff7e7e}#luckysheet-ifFormulaGenerator-dialog .ifAttr .attrBox span.text{height:100%;line-height:30px;padding:0 5px;float:left}#luckysheet-ifFormulaGenerator-dialog #largeRange,#luckysheet-ifFormulaGenerator-dialog #smallRange{width:100px;height:100%;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog #rangeAssess{height:100%;line-height:30px;float:left;margin-left:20px}#luckysheet-ifFormulaGenerator-dialog #rangeAssess i.fa-table{color:#6598f3;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog #rangeAssess i.fa-table:hover{color:#ff7e7e}#luckysheet-ifFormulaGenerator-dialog #DivisionMethod{width:100px;height:100%;border:1px solid #d4d4d4;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog #DivisionMethodVal{width:120px;height:100%;border:1px solid #d4d4d4;padding:0 10px;box-sizing:border-box;float:left;margin-left:10px}#luckysheet-ifFormulaGenerator-dialog #createBtn{width:100px;height:100%;line-height:30px;border-radius:5px;text-align:center;font-size:14px;color:#fff;background-color:#8c89fe;float:right;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifList{border-top:1px solid #d4d4d4;height:180px;padding:10px;overflow-y:scroll}#luckysheet-ifFormulaGenerator-dialog .ifList .item{height:30px;margin-bottom:10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item input{width:80px;height:100%;border:1px solid #d4d4d4;padding:0 5px;background:0 0;box-sizing:border-box;float:left}#luckysheet-ifFormulaGenerator-dialog .ifList .item input.markText{width:140px}#luckysheet-ifFormulaGenerator-dialog .ifList .item select{width:50px;height:100%;padding:0 5px;border:1px solid #d4d4d4;box-sizing:border-box;float:left;margin:0 10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item span{height:100%;line-height:30px;float:left;margin:0 10px}#luckysheet-ifFormulaGenerator-dialog .ifList .item i.fa-remove{font-size:16px;float:left;margin-left:15px;margin-top:7px;color:#d6d6d6;cursor:pointer}#luckysheet-ifFormulaGenerator-dialog .ifList .item i.fa-remove:hover{color:#333}#luckysheet-ifFormulaGenerator-multiRange-dialog input,#luckysheet-ifFormulaGenerator-singleRange-dialog input{border:1px solid #d4d4d4;padding:0 10px;height:30px}.pictorialBarUploadImg:hover{border:1px solid #ccc!important;background:#efefef}#luckysheet-dropCell-icon #icon_dropCell{width:25px;height:15px;background-image:url(../plugins/images/icon_dropCell.png);background-repeat:no-repeat;background-position:center;background-size:100% 100%}#luckysheet-locationCell-dialog .listbox{border:1px solid #dfdfdf;padding:10px;font-size:14px;color:#000}#luckysheet-locationCell-dialog .listbox .listItem{padding:5px 0}#luckysheet-locationCell-dialog .listbox .listItem input[type=radio]{float:left;margin-top:5px}#luckysheet-locationCell-dialog .listbox .listItem .subbox{height:30px;padding:0 10px}#luckysheet-locationCell-dialog .listbox .listItem .subbox .subItem{float:left;margin-right:5px}#luckysheet-moreFormat-dialog{font-size:14px;color:#000}#luckysheet-moreFormat-dialog .decimal{margin-bottom:5px;height:30px;line-height:30px}#luckysheet-moreFormat-dialog .decimal input{width:80px;height:24px;padding:0 5px}#luckysheet-moreFormat-dialog .listbox{border:1px solid #666;height:240px;overflow-y:auto}#luckysheet-moreFormat-dialog .listbox .listItem{height:30px;padding:0 20px 0 10px;border-bottom:1px solid #dfdfdf}#luckysheet-moreFormat-dialog .listbox .listItem.on{background-color:#7c79fe;color:#fff}#luckysheet-moreFormat-dialog .listbox .listItem .name{line-height:29px;float:left}#luckysheet-moreFormat-dialog .listbox .listItem .value{line-height:30px;float:right;color:gray}#luckysheet-moreFormat-dialog .listbox .listItem.on .value{color:#fff}#luckysheet-splitColumn-dialog{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#luckysheet-splitColumn-dialog .box{font-size:14px}#luckysheet-splitColumn-dialog .box .boxTitle{padding:5px}#luckysheet-splitColumn-dialog .box .boxMain{padding:5px;border:1px solid #dfdfdf}#luckysheet-splitColumn-dialog .box input[type=checkbox]{float:left;margin-top:5px}#luckysheet-splitColumn-dialog .box .boxMain input[type=text]{margin-left:5px;width:50px;padding:0 5px}#luckysheet-splitColumn-dialog .box #splitColumnData{height:100px;overflow-y:auto}#luckysheet-splitColumn-dialog .box #splitColumnData table{border-collapse:collapse}#luckysheet-splitColumn-dialog .box #splitColumnData td{border:1px solid #333}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content:last-child{padding-bottom:100px}.luckysheet-postil-dialog-move{position:absolute;margin:0;padding:0;top:0;left:0;bottom:0;right:0;pointer-events:none}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item{position:absolute;pointer-events:all;cursor:move}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-t{width:100%;height:3px;border-bottom:1px solid #000;left:0;top:-4px}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-r{width:3px;height:100%;border-left:1px solid #000;right:-4px;top:0}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-b{width:100%;height:3px;border-top:1px solid #000;left:0;bottom:-4px}.luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item-l{width:3px;height:100%;border-right:1px solid #000;left:-4px;top:0}.luckysheet-postil-show-active .luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item{border-color:#0188fb}.luckysheet-postil-dialog-resize{position:absolute;margin:0;padding:0;top:-2px;left:-2px;bottom:-2px;right:-2px;pointer-events:none}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item{position:absolute;height:6px;width:6px;border:1px solid #0188fb;pointer-events:all}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lt{left:-6px;top:-6px;cursor:se-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-mt{left:50%;top:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lm{top:50%;left:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rm{top:50%;right:-6px;margin-top:-4px;cursor:w-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rt{right:-6px;top:-6px;cursor:ne-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-lb{left:-6px;bottom:-6px;cursor:ne-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-mb{left:50%;bottom:-6px;margin-left:-4px;cursor:s-resize}.luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item-rb{right:-6px;bottom:-6px;cursor:se-resize}.luckysheet-datavisual-config .luckysheet-datavisual-accordion-content:last-child{padding-bottom:100px}.luckysheet-datavisual-left .el-tabs__content{overflow:auto}#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content{width:100%;height:100%;position:absolute;left:0;top:0;cursor:move;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}#luckysheet-modal-dialog-cropping::before{content:"";outline:1px solid #fff;position:absolute;left:33.3%;right:33.3%;top:0;bottom:0;z-index:1;pointer-events:none}#luckysheet-modal-dialog-cropping::after{content:"";outline:1px solid #fff;position:absolute;left:0;right:0;top:33.3%;bottom:33.3%;z-index:1;pointer-events:none}#luckysheet-modal-dialog-cropping .cropping-mask{filter:brightness(.5);position:absolute;background-size:100% 100%;left:0;top:0}#luckysheet-modal-dialog-cropping .cropping-content{position:absolute;overflow:hidden;background-position:0 0;left:0;top:0;width:100%;height:100%}#luckysheet-modal-dialog-cropping .luckysheet-modal-dialog-resize{border:none;position:absolute;margin:0;padding:0;top:0;left:0;bottom:0;right:0;pointer-events:all}#luckysheet-modal-dialog-cropping .resize-item{width:0;height:0;background:0 0;border:none;position:absolute;z-index:3}#luckysheet-modal-dialog-cropping .resize-item::before{content:"";display:block;position:absolute;background:#000}#luckysheet-modal-dialog-cropping .resize-item::after{content:"";display:block;position:absolute;background:#000}#luckysheet-modal-dialog-cropping .lt{left:0;top:0;cursor:nwse-resize}#luckysheet-modal-dialog-cropping .lt::before{width:18px;height:4px;left:0;top:0;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lt::after{width:4px;height:14px;left:0;top:4px;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .mt{left:50%;top:0;cursor:ns-resize}#luckysheet-modal-dialog-cropping .mt::before{width:18px;height:4px;left:-11px;top:0;border-left:2px solid #fff;border-right:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rt{right:0;top:0;cursor:nesw-resize}#luckysheet-modal-dialog-cropping .rt::before{width:18px;height:4px;right:0;top:0;border-left:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rt::after{width:4px;height:14px;right:0;top:4px;border-left:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lm{left:0;top:50%;cursor:ew-resize}#luckysheet-modal-dialog-cropping .lm::before{width:4px;height:18px;left:0;top:-11px;border-right:2px solid #fff;border-top:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .rm{right:0;top:50%;cursor:ew-resize}#luckysheet-modal-dialog-cropping .rm::before{width:4px;height:18px;right:0;top:-11px;border-left:2px solid #fff;border-top:2px solid #fff;border-bottom:2px solid #fff}#luckysheet-modal-dialog-cropping .lb{left:0;bottom:0;cursor:nesw-resize}#luckysheet-modal-dialog-cropping .lb::before{width:18px;height:4px;left:0;bottom:0;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .lb::after{width:4px;height:14px;left:0;bottom:4px;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .rb{right:0;bottom:0;cursor:nwse-resize}#luckysheet-modal-dialog-cropping .rb::before{width:18px;height:4px;right:0;bottom:0;border-left:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .rb::after{width:4px;height:14px;right:0;bottom:4px;border-left:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-cropping .mb{left:50%;bottom:0;cursor:ns-resize}#luckysheet-modal-dialog-cropping .mb::before{width:18px;height:4px;left:-11px;bottom:0;border-left:2px solid #fff;border-right:2px solid #fff;border-top:2px solid #fff}#luckysheet-modal-dialog-slider-imageCtrl .luckysheet-modal-dialog-slider-content{background-color:#fff}#luckysheet-modal-dialog-slider-imageCtrl .slider-box{border-bottom:1px solid #e1e4e8}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-title{padding:10px 20px;font-weight:600}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-radios{padding:10px 30px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item{margin-bottom:10px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item:last-child{margin-bottom:0}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .radio-item input{vertical-align:sub}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-checkbox{padding:10px 30px;border-top:1px solid #e1e4e8}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-checkbox input{vertical-align:middle}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .slider-box-borderConfig{padding:10px 30px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item{margin-bottom:10px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item:last-child{margin-bottom:0}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item label{display:inline-block;width:40px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item input{width:130px;padding:5px}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item .imgItemBorderColor{display:inline-block;width:20px;height:20px;padding:2px;border:1px solid #e1e4e8;vertical-align:middle;cursor:pointer}#luckysheet-modal-dialog-slider-imageCtrl .slider-box .border-item .imgItemBorderColor span{display:block;width:100%;height:100%}#luckysheet-imageCtrl-colorSelect-dialog .currenColor{font-size:12px;margin-bottom:5px}#luckysheet-imageCtrl-colorSelect-dialog .currenColor span{display:inline-block;width:16px;height:16px;border:solid 1px #d0d0d0;margin-left:5px;margin-bottom:-5px;cursor:pointer}#luckysheet-modal-dialog-activeImage,#luckysheet-modal-dialog-cropping{background:0 0;box-shadow:none}.luckysheet-modal-dialog-image{border:none;box-shadow:none;background:0 0;box-shadow:none;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content,.luckysheet-modal-dialog-image .luckysheet-modal-dialog-content{background:0 0}.cell-date-picker{position:absolute;display:none}#luckysheet-insertLink-dialog{user-select:none}#luckysheet-insertLink-dialog .box{font-size:12px}#luckysheet-insertLink-dialog .box-item{height:30px;line-height:30px;margin-bottom:10px}#luckysheet-insertLink-dialog .box-item label{display:inline-block;width:90px;text-align:right;margin-right:10px}#luckysheet-insertLink-dialog .box-item input{width:200px;height:30px;padding:0 10px;border:1px solid #d4d4d4;outline-style:none;box-sizing:border-box}#luckysheet-insertLink-dialog .box-item select{width:200px;height:30px;padding:0 5px;border:1px solid #d4d4d4;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog{user-select:none}#luckysheet-dataVerification-dialog .box{font-size:12px}#luckysheet-dataVerification-dialog .box select{width:100%;height:30px;border-color:#d4d4d4;outline-style:none}#luckysheet-dataVerification-dialog .box input::-webkit-input-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input:-moz-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input::-moz-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box input:-ms-input-placeholder{color:#d4d4d4}#luckysheet-dataVerification-dialog .box-item{padding:10px;border-bottom:1px solid #e1e4e8}#luckysheet-dataVerification-dialog .box-item .box-item-title{font-size:14px;font-weight:600;margin-bottom:10px}#luckysheet-dataVerification-dialog .box-item .range{width:100%;height:30px;border:1px solid #d4d4d4}#luckysheet-dataVerification-dialog .box-item .range input{width:calc(100% - 30px);height:30px;padding:0 10px;float:left;border:none;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .range i.fa-table{float:right;margin-top:9px;margin-right:5px;cursor:pointer;color:#6598f3}#luckysheet-dataVerification-dialog .box-item .multi{margin-top:10px;line-height:30px;font-size:12px}#luckysheet-dataVerification-dialog .box-item .multi input{vertical-align:text-top}#luckysheet-dataVerification-dialog .box-item .show-box{margin-top:10px}#luckysheet-dataVerification-dialog .box-item .check-box{height:30px;line-height:30px;margin-bottom:10px}#luckysheet-dataVerification-dialog .box-item .check-box:last-child{margin-bottom:0}#luckysheet-dataVerification-dialog .box-item .check-box input{height:30px;padding:0 10px;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .check{line-height:30px}#luckysheet-dataVerification-dialog .box-item .check input{vertical-align:text-top}#luckysheet-dataVerification-dialog .box-item .input{height:30px;line-height:30px;margin-top:10px}#luckysheet-dataVerification-dialog .box-item .input input{height:30px;padding:4px 10px 4px 10px;border:1px solid #d4d4d4;box-sizing:border-box}#luckysheet-dataVerification-dialog .box-item .input1 input{width:150px}#luckysheet-dataVerification-dialog .box-item .input2 input{width:100%}#luckysheet-dataVerification-dialog .box-item .input span{display:inline-block;width:30px;text-align:center}#luckysheet-dataVerification-dialog .data-verification-hint-text{width:100%;height:30px;border:1px solid #d4d4d4;margin-top:10px}#luckysheet-dataVerification-dialog .data-verification-hint-text input{display:block;width:100%;height:100%;padding:0 10px;border:none;outline-style:none;box-sizing:border-box}#luckysheet-dataVerification-dialog .show-box .show-box-item{display:none}#luckysheet-dataVerificationRange-dialog input{height:30px;padding:0 10px;border:1px solid #d4d4d4;outline-style:none}#luckysheet-dataVerification-dropdown-btn{display:none;width:20px;height:20px;background-color:#fff;position:absolute;z-index:10;overflow:hidden}#luckysheet-formula-refresh{display:none;position:absolute;z-index:10}#luckysheet-dataVerification-dropdown-btn::after{content:"";width:10px;height:10px;background:url(arrow-down.png) center no-repeat;position:absolute;left:50%;top:50%;margin-left:-5px;margin-top:-5px}#luckysheet-dataVerification-dropdown-List{display:none;background-color:#fff;border:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.2);position:absolute;z-index:10000;box-sizing:border-box}#luckysheet-dataVerification-dropdown-List .dropdown-List-item{padding:5px 10px;box-sizing:border-box;cursor:pointer}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi{padding-left:0}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi:before{content:"";width:14px;font-family:iconfont!important;font-size:12px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;margin-right:2px}#luckysheet-dataVerification-dropdown-List .dropdown-List-item.multi.checked:before{content:"\e7c8"}#luckysheet-dataVerification-dropdown-List .dropdown-List-item:hover{background-color:#e1e1e1}#luckysheet-dataVerification-showHintBox{display:none;padding:10px;background-color:#fff;border:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.2);position:absolute;z-index:1000;user-select:none;cursor:default;white-space:nowrap}#luckysheet-icon-redo.disabled,#luckysheet-icon-undo.disabled{cursor:default;opacity:.4}#luckysheet-modal-dialog-slider-protection .luckysheet-modal-dialog-slider-content{background:#fff}.luckysheet-slider-protection-config{position:absolute;width:100%}.luckysheet-slider-protection-row{position:relative;width:98%;height:35px;left:1%}.luckysheet-slider-protection-column{position:absolute;height:100%}.luckysheet-protection-rangeItem-dialog input,.luckysheet-protection-rangeItem-dialog textarea,.luckysheet-protection-sheet-validation input,.luckysheet-slider-protection-config input,.luckysheet-slider-protection-config textarea{border:1px solid #d4d4d4;outline:0}.luckysheet-protection-rangeItem-dialog input:focus,.luckysheet-protection-rangeItem-dialog textarea:focus,.luckysheet-protection-sheet-validation input:focus,.luckysheet-slider-protection-config input:focus,.luckysheet-slider-protection-config textarea:focus{border:1px solid #0389fb;outline:0}.luckysheet-protection-input{width:100%;height:19px;position:relative}.luckysheet-protection-textarea{width:100%;height:47px;position:relative;resize:none}.luckysheet-protection-column-2x{width:20%}.luckysheet-protection-column-3x{width:30%}.luckysheet-protection-column-4x{width:40%}.luckysheet-protection-column-5x{width:50%}.luckysheet-protection-column-6x{width:60%}.luckysheet-protection-column-7x{width:70%}.luckysheet-protection-column-8x{width:80%}.luckysheet-protection-column-9x{width:90%}.luckysheet-protection-column-10x{width:100%}.luckysheet-protection-column-left{text-align:left}.luckysheet-protection-column-center{text-align:center}.luckysheet-protection-column-right{text-align:right}.luckysheet-slider-protection-ok{position:absolute;width:100%;height:100%;background:#0188fb;color:#fff;text-align:center;line-height:45px;font-size:16px;cursor:pointer}.luckysheet-slider-protection-ok:hover{background:#0181ee}.luckysheet-slider-protection-ok:active{background:#0074da}.luckysheet-slider-protection-cancel{position:absolute;width:100%;height:100%;background:#e6e6e6;color:#353535;text-align:center;line-height:45px;font-size:16px;cursor:pointer}.luckysheet-slider-protection-cancel:hover{background:#d6d6d6}.luckysheet-slider-protection-cancel:active{background:#c7c7c7}.luckysheet-slider-protection-addRange{line-height:23px;font-size:12px;top:2px;height:23px}.luckysheet-protection-rangeItem{position:relative;width:100%;height:30px;line-height:30px;font-size:12px;overflow:hidden}.luckysheet-protection-rangeItem:hover{background:#d5d5d5}.luckysheet-protection-rangeItem>div{position:absolute;height:100%;text-align:center;overflow:hidden}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del{left:5px;top:5px;height:20px;width:20px;font-size:14px;line-height:20px;cursor:pointer}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-name{left:30px;width:80px;text-align:left}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-range{left:110px;width:120px}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update{left:230px;width:30px;font-size:14px;top:5px;height:20px;width:20px;line-height:20px;cursor:pointer}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del:hover,.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update:hover{background:#0181ee;color:#fff}.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-del:active,.luckysheet-protection-rangeItem .luckysheet-protection-rangeItem-update:active{background:#0074da;color:#fff}.luckysheet-protection-rangeItem-content{position:relative;width:350px;height:270px}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range{width:100%;height:30px;border:1px solid #d4d4d4}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range input{width:calc(100% - 30px);height:30px;padding:0 10px;float:left;border:none;outline-style:none;box-sizing:border-box}#luckysheet-protection-rangeItem-dialog .luckysheet-slider-protection-column .range i.fa-table{float:right;margin-top:9px;margin-right:5px;cursor:pointer;color:#6598f3}.luckysheet-protection-rangeItemTextarea{width:100%;height:120px;position:relative;resize:none}.luckysheet-protection-rangeItemiInput{width:100%;height:23px;position:relative}.luckysheet-protection-sheet-validation{width:390px;height:180px;display:none}.luckysheet-zoom-content{position:relative;float:right;width:210px;height:22px;line-height:22px;text-align:right;padding-right:10px;white-space:nowrap;overflow:hidden;display:flex;align-items:center;user-select:none}.luckysheet-zoom-content .luckysheet-zoom-minus{position:absolute;top:0;left:0;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.luckysheet-zoom-content .luckysheet-zoom-minus-icon{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTRweCIgaGVpZ2h0PSIycHgiIHZpZXdCb3g9IjAgMCAxNCAyIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MyAoOTI0NDUpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPnJpcWlxdWppYW7lpIfku70gNDU8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iMjAyMC8wOC8xNCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IueUu+adv+Wkh+S7vS0yIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcwNC4wMDAwMDAsIC0xMDY0LjAwMDAwMCkiIGZpbGw9IiM0NDRENUEiPgogICAgICAgICAgICA8ZyBpZD0icmlxaXF1amlhbuWkh+S7vS0xMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE2OTkuMDAwMDAwLCAxMDUzLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9Iue8lue7hCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMDAwMDAsIDExLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaIiIHg9IjAiIHk9IjAiIHdpZHRoPSIxNCIgaGVpZ2h0PSIyIj48L3JlY3Q+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==);width:14px;height:2px}.luckysheet-zoom-content .luckysheet-zoom-minus:hover{background-color:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-slider{position:absolute;top:0;left:25px;width:100px;height:100%;display:flex;align-items:center}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-line{position:absolute;top:10px;width:100px;height:2px;background:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-cursor{position:absolute;top:7px;width:8px;height:8px;border-radius:8px;background:#b5bdb8;cursor:pointer;z-index:2;transition:all .3s}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-cursor:hover{transform:scale(1.2);transform-origin:center center;background:#a0a0a0}.luckysheet-zoom-content .luckysheet-zoom-slider .luckysheet-zoom-hundred{position:absolute;top:9px;width:2px;height:4px;left:49px;background:#1e1e1f}.luckysheet-zoom-content .luckysheet-zoom-plus{position:absolute;top:0;left:130px;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.luckysheet-zoom-content .luckysheet-zoom-plus .luckysheet-zoom-plus-icon{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTRweCIgaGVpZ2h0PSIxNHB4IiB2aWV3Qm94PSIwIDAgMTQgMTQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYzICg5MjQ0NSkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+cmlxaXF1amlhbuWkh+S7vSA0NjwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSIyMDIwLzA4LzE0IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i55S75p2/5aSH5Lu9LTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xODQ4LjAwMDAwMCwgLTEwNTguMDAwMDAwKSIgZmlsbD0iIzQ0NEQ1QSI+CiAgICAgICAgICAgIDxnIGlkPSJyaXFpcXVqaWFu5aSH5Lu9LTExOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTg0My4wMDAwMDAsIDEwNTMuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uEIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1LjAwMDAwMCwgNS4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cmVjdCBpZD0i55+p5b2iIiB4PSIwIiB5PSI2IiB3aWR0aD0iMTQiIGhlaWdodD0iMiI+PC9yZWN0PgogICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaLlpIfku70iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDcuMDAwMDAwLCA3LjAwMDAwMCkgcm90YXRlKC0yNzAuMDAwMDAwKSB0cmFuc2xhdGUoLTcuMDAwMDAwLCAtNy4wMDAwMDApICIgeD0iMCIgeT0iNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjIiPjwvcmVjdD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+);width:14px;height:14px}.luckysheet-zoom-content .luckysheet-zoom-plus:hover{background-color:#e1e4e8}.luckysheet-zoom-content .luckysheet-zoom-ratioText{position:absolute;top:0;left:155px;width:60px;color:#1e1e1f;font-size:12px;text-align:left;cursor:pointer}.luckysheet-zoom-content .luckysheet-zoom-ratioText:hover{background-color:#e1e4e8}.flatpickr-calendar{background:0 0;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0,0,0,.08);box-shadow:0 3px 13px rgba(0,0,0,.08)}.flatpickr-calendar.inline,.flatpickr-calendar.open{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-calendar .hasTime .dayContainer,.flatpickr-calendar .hasWeeks .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:after,.flatpickr-calendar:before{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.arrowRight:after,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.rightMost:before{left:auto;right:22px}.flatpickr-calendar.arrowCenter:after,.flatpickr-calendar.arrowCenter:before{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:after,.flatpickr-calendar.arrowTop:before{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1}.flatpickr-calendar.arrowBottom:after,.flatpickr-calendar.arrowBottom:before{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-next-month,.flatpickr-months .flatpickr-prev-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171}.flatpickr-months .flatpickr-next-month.flatpickr-disabled,.flatpickr-months .flatpickr-prev-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-next-month i,.flatpickr-months .flatpickr-prev-month i{position:relative}.flatpickr-months .flatpickr-next-month.flatpickr-prev-month,.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-next-month.flatpickr-next-month,.flatpickr-months .flatpickr-prev-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-next-month:hover,.flatpickr-months .flatpickr-prev-month:hover{color:#bbb}.flatpickr-months .flatpickr-next-month:hover svg,.flatpickr-months .flatpickr-prev-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-next-month svg,.flatpickr-months .flatpickr-prev-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-next-month svg path,.flatpickr-months .flatpickr-prev-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-inner-spin-button,.numInputWrapper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72,72,72,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72,72,72,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72,72,72,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(90,97,113,.5)}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171}.flatpickr-current-month input.cur-year{background:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(90,97,113,.5);background:0 0;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:0;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:active,.flatpickr-current-month .flatpickr-monthDropdown-months:focus{outline:0}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:0;padding:0}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 0 #eceef1}.flatpickr-day{background:0 0;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day.nextMonthDay:focus,.flatpickr-day.nextMonthDay:hover,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.today.inRange,.flatpickr-day:focus,.flatpickr-day:hover{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2}.flatpickr-day.today{border-color:#bbb}.flatpickr-day.today:focus,.flatpickr-day.today:hover{border-color:#bbb;background:#bbb;color:#fff}.flatpickr-day.endRange,.flatpickr-day.endRange.inRange,.flatpickr-day.endRange.nextMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.endRange:focus,.flatpickr-day.endRange:hover,.flatpickr-day.selected,.flatpickr-day.selected.inRange,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.selected:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange,.flatpickr-day.startRange.inRange,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.startRange:focus,.flatpickr-day.startRange:hover{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f}.flatpickr-day.endRange.startRange,.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.endRange.endRange,.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 0 #ff5a5f}.flatpickr-day.endRange.startRange.endRange,.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2;box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.nextMonthDay,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.prevMonthDay{color:rgba(72,72,72,.3);background:0 0;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(72,72,72,.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f;box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(72,72,72,.3);background:0 0;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:0 0;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-am-pm,.flatpickr-time .flatpickr-time-separator{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time .flatpickr-am-pm:focus,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time input:hover{background:#eaeaea}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}span.flatpickr-day.selected{font-weight:700} \ No newline at end of file diff --git a/public/css/menuSprite.svg b/public/css/menuSprite.svg new file mode 100644 index 0000000..b322666 --- /dev/null +++ b/public/css/menuSprite.svg @@ -0,0 +1,505 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diagram_icon_18dp + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Artboard 2 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +slide_18_18 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +ic_process_1_18px + +ic_timeline_1_18px + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/css/paint_16px.ico b/public/css/paint_16px.ico new file mode 100644 index 0000000..7ae58fc Binary files /dev/null and b/public/css/paint_16px.ico differ diff --git a/public/css/paint_24px.ico b/public/css/paint_24px.ico new file mode 100644 index 0000000..c816fcc Binary files /dev/null and b/public/css/paint_24px.ico differ diff --git a/public/css/paint_32px.ico b/public/css/paint_32px.ico new file mode 100644 index 0000000..8044fff Binary files /dev/null and b/public/css/paint_32px.ico differ diff --git a/public/css/sprite38.svg b/public/css/sprite38.svg new file mode 100644 index 0000000..741d72b --- /dev/null +++ b/public/css/sprite38.svg @@ -0,0 +1,528 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diagram_icon_18dp + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +ic_process_1_18px + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +ic_timeline_1_18px + Artboard 2 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + +slide_18_18 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/css/waffle_sprite.png b/public/css/waffle_sprite.png new file mode 100644 index 0000000..336ce4f Binary files /dev/null and b/public/css/waffle_sprite.png differ diff --git a/public/cssIconfont.js b/public/cssIconfont.js new file mode 100644 index 0000000..74c0988 --- /dev/null +++ b/public/cssIconfont.js @@ -0,0 +1 @@ +window._iconfont_svg_string_4687200='',(c=>{var a=(l=(l=document.getElementsByTagName("script"))[l.length-1]).getAttribute("data-injectcss"),l=l.getAttribute("data-disable-injectsvg");if(!l){var h,i,o,v,t,z=function(a,l){l.parentNode.insertBefore(a,l)};if(a&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(a){console&&console.log(a)}}h=function(){var a,l=document.createElement("div");l.innerHTML=c._iconfont_svg_string_4687200,(l=l.getElementsByTagName("svg")[0])&&(l.setAttribute("aria-hidden","true"),l.style.position="absolute",l.style.width=0,l.style.height=0,l.style.overflow="hidden",l=l,(a=document.body).firstChild?z(l,a.firstChild):a.appendChild(l))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(h,0):(i=function(){document.removeEventListener("DOMContentLoaded",i,!1),h()},document.addEventListener("DOMContentLoaded",i,!1)):document.attachEvent&&(o=h,v=c.document,t=!1,s(),v.onreadystatechange=function(){"complete"==v.readyState&&(v.onreadystatechange=null,m())})}function m(){t||(t=!0,o())}function s(){try{v.documentElement.doScroll("left")}catch(a){return void setTimeout(s,50)}m()}})(window); \ No newline at end of file diff --git a/public/demoData/demoFeature.js b/public/demoData/demoFeature.js new file mode 100644 index 0000000..c404cb3 --- /dev/null +++ b/public/demoData/demoFeature.js @@ -0,0 +1,42 @@ + +// Features specially written for demo + +(function() { + + // language + function language(params) { + + var lang = navigator.language||navigator.userLanguage;//常规浏览器语言和IE浏览器 + lang = lang.substr(0, 2);//截取lang前2位字符 + + return lang; + + } + // Tencent Forum Link Button + function supportButton() { + const text = language() === 'zh' ? '反馈' : 'Forum'; + const link = language() === 'zh' ? 'https://support.qq.com/product/288322' : 'https://groups.google.com/g/luckysheet'; + + document.querySelector("body").insertAdjacentHTML('beforeend', ''+ text +''); + } + + supportButton() + + /** + * Get url parameters + */ + function getRequest() { + var vars = {}; + var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, + function(m,key,value) { + vars[key] = value; + }); + return vars; + } + + window.luckysheetDemoUtil = { + language:language, + getRequest:getRequest + } + +})() \ No newline at end of file diff --git a/public/demoData/getTargetData.js b/public/demoData/getTargetData.js new file mode 100644 index 0000000..d980a70 --- /dev/null +++ b/public/demoData/getTargetData.js @@ -0,0 +1,5496 @@ +export const sourceData2 = `分公司 中支名称 业务员代码 出生日期 性别 入司日期 学历 销售额 客户数 +福建 福建泉州 187565152 8/12/72 男 2007/12/5 高中 20163451.32 40 +山东 山东烟台 25271172 7/20/65 女 2004/12/2 高中 18373103.35 11 +湖北 湖北襄阳 210950662 6/21/62 女 2008/3/25 大专 15385947.09 13 +北京 北京海淀 365721352 1/3/82 男 2010/4/1 本科 14402647.34 2 +苏州 苏州张家港 372374712 12/27/64 女 2010/4/28 大专 9735815.7 6 +云南 云南昆明 5063494292 12/29/83 男 2016/1/28 高中 5379570.2 3 +四川 四川青羊 328012912 5/21/84 女 2009/8/29 大专 5141381.55 11 +山东 山东济南 21455372 5/26/74 男 2004/10/25 大专 4029490.88 5 +四川 四川高新 1702542 11/9/71 女 2002/8/15 硕士 3864554.45 19 +` +const remoteT1 = atob('cGF0b0h0bFlqMlJGWThhZks=') +const remoteT2 = atob('M2Y1ZThmNjNlMWM3OTRjN2Y1YjExOWFmNWJlMTg5MjRkOTIzZjc3YTQ3YjZhYWY5OTk2Y2E3NWMyZDU3YWRjNQ==') + +export const sourceData = `分公司 中支名称 业务员代码 出生日期 性别 入司日期 学历 销售额 客户数 +福建 福建泉州 187565152 8/12/72 男 2007/12/5 高中 20163451.32 40 +山东 山东烟台 25271172 7/20/65 女 2004/12/2 高中 18373103.35 11 +湖北 湖北襄阳 210950662 6/21/62 女 2008/3/25 大专 15385947.09 13 +北京 北京海淀 365721352 1/3/82 男 2010/4/1 本科 14402647.34 2 +苏州 苏州张家港 372374712 12/27/64 女 2010/4/28 大专 9735815.7 6 +云南 云南昆明 5063494292 12/29/83 男 2016/1/28 高中 5379570.2 3 +四川 四川青羊 328012912 5/21/84 女 2009/8/29 大专 5141381.55 11 +山东 山东济南 21455372 5/26/74 男 2004/10/25 大专 4029490.88 5 +四川 四川高新 1702542 11/9/71 女 2002/8/15 硕士 3864554.45 19 +北京 北京东城 5185447802 6/2/79 女 2016/6/29 大专 3670000 0 +北京 北京海淀 481509622 5/31/82 女 2012/11/1 硕士 3625797.4 11 +云南 云南昆明 732645692 9/29/81 女 2015/3/31 高中 3596281.2 0 +安徽 安徽阜阳 881266442 8/15/79 女 2015/10/1 本科 3560000 0 +上海 上海陆家嘴 229180522 9/21/78 女 2008/6/5 大专 3242806 10 +辽宁 辽宁沈阳 749820832 12/17/79 女 2015/4/28 大专 2850542.26 7 +北京 北京海淀 388122212 1/21/87 男 2010/8/1 本科 2601133.65 0 +山西 山西阳泉 5026090372 12/12/81 男 2015/11/21 本科 2435016 6 +河北 河北唐山 34038712 1/7/74 男 2005/3/16 本科 2219823.41 6 +北京 北京良乡 648409082 3/8/88 女 2014/7/28 本科 2131949.88 4 +江苏 江苏扬州 670430452 4/13/68 女 2014/9/19 大专 2118555.34 0 +黑龙江 黑龙江双鸭山 5048017842 1/20/76 女 2015/12/18 本科 2057665 0 +宁波 宁波宁海 853590042 9/14/74 女 2015/8/10 高中 2054726.1 7 +浙江 浙江金华 666137192 6/13/92 女 2014/9/2 高中 2036110 3 +江苏 江苏扬州 754872372 8/8/75 女 2015/5/18 大专 2029270 5 +北京 北京平谷 526210572 7/8/90 女 2013/6/1 大专 2027352.14 5 +广西 广西南宁 664312612 3/17/90 男 2014/8/29 大专 2012266 4 +北京 北京良乡 347612 11/15/73 男 2002/1/18 大专 2011441.52 0 +北京 北京东城 879871872 1/27/75 女 2015/9/29 本科 2000000 0 +佛山 佛山禅城 5125907942 1/7/77 女 2016/4/21 大专 2000000 0 +四川 四川绵阳 655505432 4/11/73 男 2014/8/12 大专 1953453.7 2 +辽宁 辽宁沈阳 866310022 8/7/77 女 2015/9/2 中专 1920726.49 2 +四川 四川成都 5242692 1/17/78 男 2003/6/30 本科 1893405.52 3 +辽宁 辽宁沈阳 434225542 12/19/76 女 2011/8/15 大专 1881350.76 9 +黑龙江 黑龙江哈尔滨 799646732 9/7/66 女 2015/7/23 中专 1857990.76 4 +青岛 青岛一支 61985322 3/28/73 女 2005/10/14 大专 1710726.1 1 +北京 北京东城 526611552 6/10/87 女 2013/6/3 大专 1705048.1 1 +山东 山东烟台 95669582 8/26/71 女 2006/9/1 大专 1690131.9 10 +贵州 贵州黔东南 738764232 11/17/65 女 2015/4/9 中专 1608153.5 4 +福建 福建福州 84739982 4/11/48 女 2006/5/17 高中 1558914.59 4 +黑龙江 黑龙江牡丹江 245540722 7/21/77 男 2008/8/11 本科 1542130 11 +江苏 江苏无锡 102036412 12/23/69 女 2006/10/25 高中 1378616.22 4 +四川 四川成都 158559082 10/27/62 女 2007/8/21 高中 1368403.12 2 +四川 四川高新 80506182 10/20/79 男 2006/3/29 大专 1361781.44 7 +北京 北京东城 473511242 8/17/80 女 2012/8/3 大专 1355572.33 13 +北京 北京东城 3649382 8/10/80 男 2003/5/1 大专 1341996.3 4 +北京 北京良乡 51498712 10/16/79 女 2005/7/13 大专 1283734.55 5 +浙江 浙江杭州 684166212 6/10/80 女 2014/11/19 中专 1275636 5 +北京 北京海淀 369271412 10/7/88 女 2010/4/8 大专 1256157.7 144 +四川 四川绵阳 595314212 11/17/86 女 2013/12/23 大专 1244411.43 0 +山东 山东菏泽 398851942 1/20/83 女 2010/10/4 大专 1236442.04 4 +山东 山东日照 63825252 9/1/76 女 2005/10/31 中专 1179056.29 27 +深圳 深圳福田第二 375464062 10/13/79 男 2010/5/17 本科 1177775.16 5 +北京 北京平谷 481850172 6/7/80 女 2012/11/1 本科 1153168 4 +宁波 宁波慈溪 69825572 7/15/53 男 2005/12/20 高中 1141200.31 11 +上海 上海陆家嘴 8009912 8/30/63 女 2003/9/23 高中 1133340.46 21 +四川 四川高新 531276762 12/25/84 男 2013/6/9 本科 1120548.51 7 +云南 云南昆明 148699552 10/30/72 女 2007/7/1 大专 1109034.8 18 +湖北 湖北武汉 757213352 3/19/76 女 2015/5/25 大专 1106842 17 +湖北 湖北十堰 112072492 9/25/70 女 2007/1/1 大专 1101132.13 19 +深圳 深圳福田 19326812 4/24/66 男 2004/9/20 本科 1096309.08 6 +浙江 浙江杭州 357516962 8/10/80 女 2010/1/18 本科 1090662.61 8 +山东 山东烟台 558795732 11/29/84 女 2013/6/28 大专 1071717.5 7 +黑龙江 黑龙江佳木斯 663685532 12/7/68 女 2014/8/28 高中 1069233 4 +深圳 深圳福田第二 92594612 7/22/74 男 2006/8/1 大专 1067440.54 15 +苏州 苏州张家港 5171153422 3/15/86 女 2016/6/14 本科 1062086 3 +山西 山西长治 721783092 3/2/82 女 2015/3/25 高中 1050000 0 +湖北 湖北武汉 864694792 6/29/84 女 2015/8/28 高中 1047450 3 +深圳 深圳福田 546437792 10/6/85 女 2013/6/26 本科 1047254.29 4 +福建 福建厦门 647887512 11/10/73 男 2014/7/28 高中 1046574.03 1 +河南 河南三门峡 316289592 5/7/71 女 2009/7/21 高中 1044516 4 +湖北 湖北随州 193264562 12/27/62 女 2007/12/10 高中 1039192.8 6 +江西 江西新余 726776842 9/25/74 女 2015/3/25 高中 1030000 0 +四川 四川青羊 106951312 11/20/77 女 2006/12/11 高中 1022207.14 1 +辽宁 辽宁葫芦岛 510968592 9/20/78 女 2013/3/26 高中 1013132.79 0 +云南 云南昆明 490030272 1/19/63 女 2012/12/14 大专 1010800 2 +黑龙江 黑龙江齐齐哈尔 188260202 12/13/66 女 2007/12/10 大专 1010000 0 +山西 山西吕梁 496639252 4/7/74 女 2012/12/31 大专 1009963 3 +青岛 青岛开发区 738596192 1/26/68 女 2015/4/9 高中 1005065 2 +四川 四川高新 165229192 7/14/72 女 2007/9/24 本科 1003146.52 6 +四川 四川高新 249542982 7/31/74 女 2008/9/3 大专 949303.75 10 +山东 山东烟台 478144352 1/2/80 女 2012/9/17 大专 892268.19 8 +福建 福建福州 797998432 4/27/73 女 2015/7/21 高中 871458 1 +上海 上海陆家嘴 179572 4/26/67 女 2002/1/1 高中 860489.68 20 +山东 山东潍坊 653862572 5/13/86 男 2014/8/8 高中 835882 5 +湖北 湖北襄阳 630902602 3/31/79 女 2014/5/25 本科 834871.1 10 +天津 天津市区一支 5026121182 4/7/81 女 2015/11/21 本科 801412.5 1 +辽宁 辽宁盘锦 476824592 4/15/73 女 2012/9/1 本科 793434.16 0 +四川 四川青羊 88712 2/28/67 女 2001/12/30 大专 789733.64 14 +四川 四川雅安 83743052 9/30/79 女 2006/4/30 大专 774043.06 4 +四川 四川青羊 241332182 11/17/84 女 2008/7/22 本科 766154.85 7 +湖北 湖北武汉 5184341822 2/18/72 女 2016/6/27 本科 757864 1 +四川 四川青羊 9143212 8/23/67 女 2003/11/28 高中 756171.9 5 +山东 山东烟台 751034382 11/6/89 女 2015/4/30 中专 751794 18 +山东 山东德州 440278482 4/1/72 男 2011/9/28 大专 740054.01 22 +深圳 深圳福田第二 5100761332 12/17/72 女 2016/3/21 本科 724693 9 +四川 四川绵阳 7790652 9/21/76 女 2003/9/17 大专 717472.95 4 +深圳 深圳罗湖 127574072 2/22/67 女 2007/4/1 本科 716770.64 9 +青岛 青岛一支 4675072 4/4/73 女 2003/6/18 大专 700000 0 +陕西 陕西西安 370425502 8/24/75 女 2010/4/19 大专 676587.35 6 +辽宁 辽宁葫芦岛 517063542 8/3/64 男 2013/4/25 大专 672312.58 0 +广西 广西南宁 484638882 6/8/82 女 2012/11/23 高中 666031.7 12 +吉林 吉林辽源 661150552 3/23/63 女 2014/8/25 大专 660164.8 4 +山东 山东烟台 504193942 10/21/75 女 2013/2/25 本科 657509.88 2 +四川 四川青羊 37126662 7/9/63 女 2005/3/31 大专 656166 3 +北京 北京平谷 783513332 10/1/77 女 2015/7/7 大专 650000 0 +北京 北京平谷 113524422 4/15/68 男 2007/1/5 大专 645205 5 +江西 江西南昌 213406092 8/31/63 女 2008/4/1 大专 643087.8 6 +北京 北京海淀 324551342 4/27/87 男 2009/9/1 本科 638417.19 3 +河南 河南郑州 5105796262 10/8/71 女 2016/3/22 高中 638300 4 +四川 四川青羊 5455812 10/17/77 女 2003/7/4 本科 633698.3 11 +辽宁 辽宁盘锦 5127859712 5/20/69 男 2016/4/25 大专 631937.5 4 +四川 四川青羊 14224752 10/25/71 女 2004/6/3 中专 627782.85 3 +广西 广西南宁 412331872 3/30/71 女 2010/12/31 本科 627304.43 16 +苏州 苏州张家港 394090432 7/18/65 女 2010/9/2 高中 623493.54 3 +青岛 青岛一支 692879462 10/7/81 女 2014/12/19 本科 622260.7 3 +福建 福建厦门 195500032 6/8/73 女 2008/1/1 大专 617899.48 13 +苏州 苏州常熟 783220932 1/15/63 女 2015/7/7 高中 610432.77 2 +辽宁 辽宁本溪 5012640952 10/3/70 女 2015/11/8 大专 610020 1 +山东 山东临沂 454857512 4/17/71 男 2012/3/6 初中 586953 6 +浙江 浙江温州 636529302 1/17/79 女 2014/6/13 高中 576026.22 0 +四川 四川青羊 2286912 9/19/70 女 2002/12/2 大专 574443.59 6 +山东 山东潍坊 169909752 6/3/66 女 2007/10/18 中专 574042.09 13 +云南 云南昆明 292559762 12/27/49 女 2009/4/14 大专 573701.21 7 +佛山 佛山顺德龙江 512186882 11/12/79 女 2013/3/29 大专 569506.1 8 +山东 山东日照 92676262 1/8/72 女 2006/8/2 本科 569348.72 24 +上海 上海黄浦 37606222 10/15/77 女 2005/3/31 大专 562473.36 10 +四川 四川高新 650982302 5/31/79 女 2014/8/4 大专 556883 4 +宁波 宁波城区 385719402 11/30/72 女 2010/7/9 大专 554467.91 18 +安徽 安徽合肥 36354432 11/8/76 男 2005/3/1 大专 549712.05 4 +吉林 吉林长春 153032452 6/9/73 女 2007/8/1 大专 549488.53 39 +山东 山东济南 18716482 10/9/69 女 2004/9/1 中专 548464.52 12 +辽宁 辽宁沈阳 6909142 7/13/75 女 2003/8/29 大专 545963.7 6 +四川 四川高新 455066862 3/20/90 女 2012/3/7 高中 542358.44 9 +浙江 浙江绍兴 31489082 4/10/75 女 2005/2/7 高中 540681.86 33 +江苏 江苏无锡 325579402 8/17/60 女 2009/8/24 高中 540229.19 4 +山西 山西吕梁 548331042 3/16/84 女 2013/6/25 大专 532490 2 +北京 北京东城 361292 12/28/67 女 2002/1/18 大专 532300.2 5 +四川 四川高新 647489602 5/11/72 女 2014/7/25 大专 529688.23 17 +河北 河北唐山 5013521152 11/27/85 女 2015/11/8 大专 529464 6 +黑龙江 黑龙江双鸭山 338323942 2/8/67 女 2009/10/25 本科 526188.74 5 +黑龙江 黑龙江双鸭山 742403752 2/20/63 女 2015/4/10 大专 526000 0 +黑龙江 黑龙江哈尔滨 208725802 1/3/71 女 2008/3/20 大专 525063.06 10 +北京 北京平谷 593039802 10/28/69 女 2013/12/18 高中 523318.64 3 +云南 云南昆明 610997782 9/23/66 女 2014/3/4 大专 523224.89 3 +辽宁 辽宁沈阳 878107452 3/15/80 女 2015/9/25 本科 523142 5 +重庆 重庆渝中 637133492 5/13/84 女 2014/6/16 高中 522822.54 6 +北京 北京海淀 200127972 1/27/85 女 2008/1/14 本科 522563.45 1 +黑龙江 黑龙江牡丹江 618937132 2/25/78 女 2014/3/26 高中 522219.5 8 +辽宁 辽宁丹东 561215292 11/20/67 女 2013/6/28 大专 522022 7 +山东 山东济南 65614932 9/1/79 女 2005/11/17 高中 520573.55 9 +山西 山西长治 5217556602 9/22/84 女 2016/8/16 本科 517171.5 17 +大连 大连海川 576789582 9/10/78 女 2013/9/5 本科 517064.25 2 +黑龙江 黑龙江哈尔滨 28114872 1/8/69 女 2005/1/4 本科 516217.09 20 +深圳 深圳福田第二 423741032 4/15/79 女 2011/5/12 中专 512000 0 +浙江 浙江嘉兴 134827852 3/5/73 男 2007/5/11 中专 511424.65 5 +四川 四川高新 631453202 10/12/84 女 2014/5/28 大专 511272.79 3 +山东 山东莱芜 401608282 12/23/69 男 2010/10/25 本科 510288 4 +江西 江西鹰潭 5049942402 1/29/75 女 2015/12/22 高中 508840 1 +江西 江西赣州 708747822 11/14/84 女 2015/2/10 大专 507832.21 4 +黑龙江 黑龙江牡丹江 490373192 9/3/73 男 2012/12/17 初中 506595 1 +四川 四川青羊 484269032 10/12/79 女 2012/11/22 大专 506026.58 0 +黑龙江 黑龙江哈尔滨 881947812 9/9/72 女 2015/10/8 本科 505748.6 1 +广东 广东东莞 805797372 11/7/78 男 2015/7/27 大专 504882 1 +浙江 浙江杭州 672484202 4/6/78 女 2014/9/24 中专 503000 0 +山东 山东济南 126133722 8/20/71 女 2007/3/24 中专 502616 2 +福建 福建龙岩 862955632 12/15/84 女 2015/8/25 大专 502182.7 1 +北京 北京东城 633474152 6/8/83 女 2014/6/5 大专 493763.6 13 +浙江 浙江杭州 89872472 7/29/70 女 2006/6/30 本科 490590.94 5 +四川 四川高新 5044961892 3/14/77 女 2015/12/12 本科 485991.5 51 +山西 山西太原 230510192 5/1/75 男 2008/6/2 高中 485240 2 +四川 四川青羊 7948782 1/11/71 女 2003/9/19 硕士 476347.94 20 +浙江 浙江温州 15657562 8/10/63 女 2004/7/6 中专 474437.64 10 +河南 河南郑州 6897832 3/9/65 女 2003/8/29 大专 471640.47 26 +四川 四川青羊 153392122 9/23/75 女 2007/7/25 高中 470760 9 +湖北 湖北武汉 539292592 2/22/90 男 2013/6/18 大专 470522.65 0 +浙江 浙江金华 504972042 12/8/76 女 2013/2/28 初中 469475.1 13 +山西 山西忻州 562987252 10/8/88 男 2013/6/29 本科 463851.3 12 +辽宁 辽宁丹东 5057524742 2/5/70 女 2016/1/6 本科 462886.8 9 +湖北 湖北武汉 5198919932 2/12/69 女 2016/8/1 大专 461667 10 +四川 四川乐山 757799122 4/22/67 女 2015/5/27 高中 461098 4 +广东 广东广州 503068882 6/11/78 女 2013/2/6 大专 460553.6 12 +河南 河南郑州 458746722 4/16/90 女 2012/3/23 本科 459525.86 4 +吉林 吉林长春 437303582 6/7/75 女 2011/9/9 大专 454799.81 11 +四川 四川高新 447324312 9/12/84 女 2011/12/16 大专 454660.6 15 +四川 四川乐山 31761932 9/24/56 女 2005/2/21 大专 453791.74 4 +河南 河南南阳 100328652 3/8/79 女 2006/10/8 大专 453463.08 5 +宁波 宁波宁海 718754872 10/26/80 女 2015/3/24 大专 451335 23 +四川 四川高新 5061666732 11/19/81 女 2016/1/18 本科 449761.2 17 +四川 四川青羊 100022 3/21/75 女 2001/12/31 大专 449308.28 9 +广东 广东珠海 626089172 8/30/87 女 2014/4/30 本科 449280.05 6 +辽宁 辽宁沈阳 308615982 11/5/69 女 2009/6/25 中专 447876.48 4 +佛山 佛山顺德龙江 742192032 4/4/73 女 2015/4/10 大专 447663.2 5 +浙江 浙江杭州 248891342 8/19/74 女 2008/9/1 高中 446192.86 8 +四川 四川青羊 133792 12/13/68 女 2001/12/30 大专 445609.73 6 +北京 北京东城 21732692 10/29/63 女 2004/11/1 大专 442811.38 22 +四川 四川高新 1659832 5/6/74 男 2002/8/12 大专 442490.46 16 +新疆 新疆昌吉 581999252 7/20/67 男 2013/10/25 高中 440450.27 3 +大连 大连明锐 5003000772 1/30/86 女 2015/10/21 硕士 439430.6 6 +山西 山西太原 235208202 9/14/69 女 2008/6/25 大专 439355.66 7 +山东 山东济南 243986352 6/15/79 女 2008/8/1 本科 438131.2 9 +四川 四川绵阳 5096785232 7/7/85 女 2016/3/16 中专 436198.8 10 +青岛 青岛一支 518815682 11/2/81 男 2013/5/3 本科 434074.05 11 +天津 天津市区二支 684050092 9/24/72 女 2014/11/18 高中 430467 7 +江西 江西赣州 628288072 10/17/66 女 2014/5/13 高中 430332 3 +青岛 青岛即墨 5044645482 12/22/74 女 2015/12/11 大专 428549 4 +福建 福建泉州 793627292 4/10/88 1:00 男 2015/7/17 高中 426948 4 +苏州 苏州常熟 5047615302 3/18/83 男 2015/12/17 高中 424839.9 36 +四川 四川高新 705304672 12/11/77 女 2015/1/21 中专 423249.81 4 +四川 四川青羊 9349492 11/11/78 女 2003/12/11 本科 422445.61 5 +深圳 深圳福田 387940492 3/6/75 女 2010/7/26 本科 420831.67 1 +山东 山东日照 63982682 2/17/72 女 2005/10/31 中专 419975.7 49 +浙江 浙江嘉兴 146927592 5/31/73 男 2007/7/1 初中 414410.24 3 +广西 广西北海 421465922 10/18/74 男 2011/4/15 大专 412363.49 12 +黑龙江 黑龙江哈尔滨 5047715972 6/15/74 女 2015/12/17 大专 410720 2 +黑龙江 黑龙江齐齐哈尔 707377542 2/6/80 女 2015/1/30 大专 410393 2 +佛山 佛山禅城 258523372 9/8/72 女 2008/10/23 高中 407188.77 10 +江西 江西宜春 657473762 9/5/76 男 2014/8/18 本科 406026.22 0 +陕西 陕西西安 534591512 6/13/78 女 2013/6/14 大专 404659 2 +黑龙江 黑龙江牡丹江 5026123952 8/12/65 女 2015/11/21 高中 403645 1 +湖南 湖南永州 5142349892 2/2/86 男 2016/5/19 高中 400000 0 +黑龙江 黑龙江齐齐哈尔 676451292 12/14/68 女 2014/10/10 中专 398498 2 +江苏 江苏南京 5063640242 11/12/82 女 2016/1/29 大专 396111 3 +湖南 湖南郴州 516759562 10/6/86 女 2013/4/24 大专 388338 2 +湖北 湖北武汉 20893192 2/20/69 女 2004/10/17 大专 388127.05 16 +四川 四川青羊 98008192 3/28/73 女 2006/9/22 高中 384521.42 8 +黑龙江 黑龙江鹤岗 472360222 5/31/80 女 2012/7/19 中专 383991.44 0 +山东 山东东营 154460792 11/12/76 女 2007/7/25 初中 380204.31 13 +山东 山东淄博 532106082 10/13/68 女 2013/6/9 大专 378387.55 4 +四川 四川青羊 6706902 2/8/71 女 2003/8/20 高中 377997.11 5 +苏州 苏州新区 466142312 8/13/62 男 2012/5/28 本科 377387.46 0 +大连 大连明锐 6648842 1/1/69 女 2003/8/15 大专 377237.7 7 +河北 河北沧州 634625172 4/16/77 女 2014/6/9 高中 376894 3 +四川 四川成都 5046782182 8/18/64 女 2015/12/15 中专 376723 4 +四川 四川青羊 760872 7/15/63 男 2002/3/8 中专 376002.35 6 +河南 河南南阳 28755632 12/26/63 男 2005/1/8 大专 375897.23 5 +天津 天津市区二支 394910812 9/9/78 女 2010/9/9 本科 375258.3 17 +浙江 浙江杭州 4836272 10/20/76 女 2003/6/20 大专 375079.4 19 +天津 天津市区一支 135160862 2/25/73 女 2007/5/15 高中 373318.34 4 +浙江 浙江杭州 86567632 8/15/78 女 2006/5/31 大专 365789.15 6 +浙江 浙江温州 437464782 9/28/82 女 2011/9/13 高中 362119.39 7 +黑龙江 黑龙江哈尔滨 19379432 12/18/68 男 2004/10/1 大专 360184.42 15 +四川 四川内江 357111242 7/27/76 女 2010/1/13 大专 359709.69 8 +苏州 苏州新区 785830722 6/12/77 女 2015/7/10 大专 358975 1 +四川 四川青羊 337223172 6/8/71 女 2009/10/20 大专 356079.78 5 +山西 山西朔州 5182689152 6/20/91 男 2016/6/24 高中 355170.9 4 +北京 北京良乡 621212512 1/9/76 女 2014/4/1 大专 354332.08 0 +福建 福建南平 636154282 1/20/74 女 2014/6/13 高中 353013.62 0 +陕西 陕西西安 361663402 3/13/70 女 2010/2/24 高中 352603.01 7 +黑龙江 黑龙江哈尔滨 201643132 6/30/63 女 2008/1/22 大专 350464.62 21 +苏州 苏州张家港 360119912 12/1/67 女 2010/2/3 高中 350264 3 +湖北 湖北襄阳 595199762 8/8/80 男 2013/12/23 高中 350093 16 +广东 广东惠州 425891082 12/18/70 男 2011/6/3 大专 350000 0 +北京 北京海淀 3202622 3/20/69 女 2003/3/19 大专 346989 9 +湖南 湖南长沙 140374302 11/9/67 女 2007/7/1 大专 346772.67 15 +佛山 佛山顺德龙江 8517802 1/20/66 女 2003/10/1 高中 344637.97 22 +北京 北京海淀 242148792 3/6/83 女 2008/8/1 本科 344243.01 22 +青岛 青岛城阳 453026792 3/27/83 女 2012/2/24 高中 343435.24 9 +山东 山东烟台 128038552 3/19/75 女 2007/4/1 中专 342908.03 2 +北京 北京海淀 393257072 8/27/87 女 2010/9/1 大专 342500.29 9 +河北 河北石家庄 6968872 11/21/75 女 2003/9/1 大专 341734.7 15 +浙江 浙江绍兴 20416702 6/1/68 女 2004/10/8 本科 340756.98 7 +四川 四川青羊 582694302 6/8/84 男 2013/11/1 本科 340369.46 4 +辽宁 辽宁鞍山 829339342 3/21/75 女 2015/8/5 大专 340353.31 7 +湖南 湖南湘潭 275795512 12/25/60 女 2009/1/6 大专 340074.71 3 +广西 广西柳州 5161683702 6/5/81 女 2016/6/4 高中 340026.3 7 +黑龙江 黑龙江齐齐哈尔 58169522 10/10/69 女 2005/9/13 本科 338386.4 6 +福建 福建福州 362689092 1/25/78 女 2010/3/3 高中 337892.34 3 +山东 山东济南 5193842 12/20/71 女 2003/7/1 本科 337478.29 10 +黑龙江 黑龙江哈尔滨 5129432552 4/22/72 女 2016/4/27 高中 337360 1 +浙江 浙江杭州 261887942 7/15/79 女 2008/11/7 中技 334369.78 8 +山西 山西忻州 613788592 11/13/68 女 2014/3/15 高中 332811.73 5 +北京 北京海淀 394652612 11/14/83 女 2010/9/7 本科 331539 1 +天津 天津市区一支 296532022 4/17/73 女 2009/5/4 本科 330000 0 +吉林 吉林吉林 244760952 2/2/69 男 2008/8/6 中专 329721.73 16 +青岛 青岛即墨 148514762 9/30/56 女 2007/7/10 高中 328482.32 3 +广东 广东汕头 831591832 7/11/73 女 2015/8/6 高中 327453 2 +辽宁 辽宁鞍山 29480412 10/31/61 女 2005/1/20 高中 326761 6 +湖北 湖北武汉 627323512 5/23/88 女 2014/5/8 大专 325581.2 10 +大连 大连海川 5531322 9/6/65 男 2003/7/1 高中 323898.5 7 +陕西 陕西西安 209498732 12/10/83 女 2008/3/22 本科 323704 3 +四川 四川绵阳 74963502 10/19/64 女 2006/2/8 高中 321628.86 4 +辽宁 辽宁盘锦 600543972 5/27/69 女 2013/12/30 本科 321392.05 3 +山东 山东济南 55022812 9/18/76 女 2005/8/17 大专 321145.1 21 +内蒙古 内蒙古通辽 5201365772 5/14/70 女 2016/8/2 高中 321001.82 17 +重庆 重庆渝中 445548582 10/7/76 女 2011/11/29 大专 320608.47 14 +广西 广西梧州 5035400572 12/4/73 女 2015/11/29 高中 320536 5 +北京 北京东城 2944422 1/20/68 女 2003/3/3 硕士 320444.8 2 +云南 云南昆明 372441982 7/29/75 女 2010/5/1 大专 320242.61 1 +四川 四川青羊 96500572 12/21/81 女 2006/9/7 高中 320032 3 +黑龙江 黑龙江双鸭山 5157798232 5/3/84 女 2016/6/1 中专 319160 2 +四川 四川雅安 713140182 11/3/72 女 2015/3/17 中专 315129.3 4 +青岛 青岛一支 738621452 3/27/79 女 2015/4/9 本科 315000 0 +广东 广东东莞 290588362 10/7/84 男 2009/4/2 大专 314918.01 3 +湖南 湖南永州 5074259492 4/16/60 女 2016/3/4 高中 314534 4 +深圳 深圳宝安 190397272 8/24/62 女 2007/12/17 大专 312908.21 3 +北京 北京海淀 240066712 9/5/86 男 2008/7/14 本科 312529.77 10 +青岛 青岛开发区 5167513672 10/30/74 女 2016/6/9 本科 312130.5 4 +山东 山东淄博 108817202 7/25/69 女 2006/12/20 中专 312000.62 17 +辽宁 辽宁本溪 5079028832 12/1/68 女 2016/3/7 本科 311780.5 4 +江西 江西吉安 807237022 10/25/74 女 2015/7/27 大专 311730 4 +山东 山东济南 503809712 4/24/76 女 2013/2/21 大专 310994.41 7 +山东 山东济南 5202082 6/29/73 女 2003/7/1 大专 310737.94 8 +黑龙江 黑龙江牡丹江 717770222 8/28/70 女 2015/3/23 大专 310405.7 6 +黑龙江 黑龙江哈尔滨 528429292 11/29/78 女 2013/6/6 中专 309747 4 +河北 河北石家庄 9266172 11/14/67 女 2003/12/1 大专 309553.97 4 +广东 广东梅州 5786684612 11/7/73 女 2018/6/27 本科 308983.28 9 +山东 山东淄博 431141362 2/27/73 女 2011/7/22 中专 308948.79 6 +四川 四川青羊 5042737192 10/15/65 女 2015/12/7 高中 308688 3 +浙江 浙江杭州 315406682 3/6/76 男 2009/7/17 中专 308472.21 3 +辽宁 辽宁沈阳 5024692492 6/25/86 男 2015/11/20 本科 308073 2 +天津 天津蓟州 829842762 2/2/86 男 2015/8/5 高中 307350 1 +四川 四川青羊 24960352 6/14/70 女 2004/11/30 本科 306821 2 +湖南 湖南株洲 5059520962 12/16/87 男 2016/1/9 本科 306522.6 3 +四川 四川青羊 684395382 12/19/82 男 2014/11/19 本科 306119 3 +北京 北京海淀 204895352 9/17/84 女 2008/2/25 本科 305926.06 32 +深圳 深圳福田第二 590525342 11/8/81 女 2013/12/11 本科 305642 1 +苏州 苏州昆山 61854822 1/25/66 女 2005/7/12 中专 305295.94 7 +四川 四川青羊 61629422 6/10/80 女 2005/10/11 大专 304971.85 11 +深圳 深圳福田第二 8486402 2/10/76 男 2003/10/21 本科 304947.65 6 +北京 北京东城 5109171322 2/12/79 女 2016/3/24 本科 304730 2 +青岛 青岛一支 177857612 11/14/74 女 2007/11/8 大专 304220.97 23 +北京 北京东城 5184336352 5/24/74 女 2016/6/27 本科 303750 6 +四川 四川绵阳 413808092 1/26/70 女 2011/1/10 高中 303600.43 1 +山东 山东淄博 346920102 8/19/64 女 2009/11/30 大专 303499.32 10 +山东 山东烟台 5049889852 8/27/86 女 2015/12/22 中专 303136.9 1 +陕西 陕西渭南 820800272 10/12/83 女 2015/7/31 本科 303000 0 +江西 江西南昌 395786882 5/5/63 女 2010/9/15 本科 302050.48 9 +苏州 苏州新区 5121170312 5/30/62 男 2016/4/14 博士 301756.58 10 +浙江 浙江绍兴 442406342 10/21/76 女 2011/10/24 中专 300344.24 14 +重庆 重庆巴南 5087706212 5/3/70 女 2016/3/10 大专 300000 0 +广东 广东惠州 605756712 9/6/84 女 2014/1/15 本科 300000 0 +福建 福建福州 5036561872 6/1/82 女 2015/11/30 大专 300000 0 +北京 北京东城 43573742 9/16/74 男 2005/5/19 大专 299053.09 16 +北京 北京东城 1212102 5/28/77 女 2002/6/1 大专 298390.47 11 +四川 四川高新 3544842 5/23/77 女 2003/4/11 本科 297530.33 9 +大连 大连海川 5377932 12/15/64 女 2003/7/1 大专 297452.57 7 +湖北 湖北荆州 86081932 8/8/60 男 2006/5/31 大专 297284.78 9 +湖南 湖南郴州 5168244322 11/4/83 男 2016/6/12 高中 297000 0 +山东 山东烟台 252955432 12/15/70 女 2008/9/23 大专 296316.91 27 +大连 大连明锐 51418462 3/26/73 女 2005/7/12 中专 295552.49 7 +浙江 浙江金华 118077282 3/4/71 女 2007/1/25 高中 295102.4 6 +甘肃 甘肃金昌 827565982 10/8/87 男 2015/8/4 大专 293000 0 +黑龙江 黑龙江哈尔滨 253072252 12/25/78 女 2008/9/24 大专 290631 1 +江苏 江苏泰州 360453622 1/6/77 男 2010/2/8 高中 290000 0 +四川 四川高新 65822 3/13/67 男 2001/12/30 本科 289414.66 18 +北京 北京东城 133221562 12/30/76 男 2007/5/1 本科 288562.64 6 +山西 山西太原 155777482 9/24/78 女 2007/8/1 大专 288489.24 15 +苏州 苏州昆山 630330512 6/1/81 女 2014/5/23 大专 288227.82 5 +北京 北京东城 489343732 10/28/76 男 2012/12/12 硕士 285416.8 12 +山西 山西太原 185739872 9/1/83 女 2007/12/1 大专 283659.81 12 +苏州 苏州新区 502265252 10/7/74 男 2013/1/31 初中 282341.84 4 +四川 四川青羊 25344582 1/27/76 女 2004/12/6 高中 282211.53 21 +湖北 湖北十堰 387847262 4/17/66 女 2010/8/1 大专 282079.82 29 +河北 河北承德 784344322 10/26/85 男 2015/7/9 大专 280500 0 +吉林 吉林长春 716707962 11/17/67 女 2015/3/23 高中 279775 8 +河南 河南濮阳 383467882 4/4/86 男 2010/6/25 本科 277688 9 +湖南 湖南长沙 450505492 10/12/69 女 2012/1/1 大专 277411.68 14 +深圳 深圳福田 674672492 4/25/78 女 2014/9/26 本科 277402.47 5 +辽宁 辽宁沈阳 418256412 10/25/62 女 2011/3/18 大专 277235.18 3 +湖北 湖北十堰 263655162 6/9/68 女 2008/11/18 大专 275569.57 6 +江西 江西新余 614903742 1/6/78 女 2014/3/18 高中 275464.08 4 +黑龙江 黑龙江哈尔滨 19380132 10/1/65 女 2004/10/1 大专 274503.24 9 +北京 北京海淀 1356552 4/11/69 男 2002/6/21 大专 273866.04 0 +青岛 青岛即墨 76091632 4/20/64 女 2006/2/25 高中 273229.98 8 +苏州 苏州张家港 5038314172 12/28/52 男 2015/11/30 本科 273044.24 42 +四川 四川高新 75429382 11/26/74 女 2006/2/22 本科 272455.4 25 +福建 福建福州 422463282 12/20/83 女 2011/4/27 大专 272270.53 6 +贵州 贵州贵阳 282912382 10/7/81 男 2009/3/6 本科 270824.61 9 +北京 北京东城 5157125602 2/14/69 女 2016/6/1 硕士 270000 0 +山东 山东烟台 5178863572 10/3/76 女 2016/6/21 中专 270000 0 +四川 四川青羊 2264722 1/9/65 女 2002/11/27 本科 269251.15 5 +大连 大连明锐 635157622 6/1/76 女 2014/6/10 本科 269160.5 14 +山东 山东德州 240401122 1/28/73 女 2008/7/15 大专 268935.19 5 +大连 大连明锐 6649542 8/4/73 女 2003/8/15 大专 268827.64 17 +山东 山东烟台 13392092 1/7/61 女 2004/5/1 高中 267666.51 12 +四川 四川青羊 61365082 11/20/74 女 2005/10/8 中专 267461.48 4 +浙江 浙江嘉兴 40234432 10/24/70 女 2005/4/26 高中 267144.84 5 +四川 四川青羊 611267292 5/19/85 女 2014/3/5 大专 266292.11 18 +河北 河北保定 670587882 8/15/86 女 2014/9/20 本科 265760 4 +山东 山东威海 16320512 8/14/71 女 2004/7/1 大专 265318.92 26 +广西 广西柳州 421195442 9/23/79 女 2011/4/12 大专 264450.71 15 +安徽 安徽芜湖 5196640882 10/3/62 男 2016/7/29 大专 264000 2 +深圳 深圳罗湖 591581732 2/6/78 女 2013/12/13 本科 263854.05 5 +浙江 浙江杭州 4846182 1/13/75 女 2003/6/20 大专 262773.65 9 +天津 天津蓟州 117095972 1/25/78 女 2007/1/24 中专 262300.84 10 +辽宁 辽宁沈阳 741611702 5/12/64 女 2015/4/10 高中 262059.2 12 +云南 云南昆明 711593622 6/15/78 女 2015/3/10 本科 261387.19 2 +黑龙江 黑龙江双鸭山 740197042 7/12/70 女 2015/4/10 高中 261148 4 +北京 北京海淀 530049262 8/23/82 女 2013/6/8 大专 260392 31 +深圳 深圳福田 851721082 11/26/71 男 2015/8/10 本科 260000 0 +福建 福建宁德 5003120412 5/15/72 男 2015/10/21 高中 259260 2 +佛山 佛山南海 571002382 1/11/79 男 2013/7/26 大专 259086.1 7 +山西 山西阳泉 5068738662 2/2/72 女 2016/2/25 大专 258165.92 6 +浙江 浙江温州 340935132 10/22/75 女 2009/11/6 高中 258111.23 13 +山东 山东济南 402465232 9/15/81 女 2010/10/28 大专 257788.34 4 +湖北 湖北襄阳 58055772 8/25/57 女 2005/9/12 大专 257740.61 10 +四川 四川青羊 4357412 8/2/80 女 2003/5/23 本科 257499.35 2 +山东 山东淄博 12874292 2/4/59 女 2004/4/26 本科 256531.6 22 +四川 四川高新 5107959272 7/17/80 男 2016/3/23 本科 256492 17 +江西 江西南昌 189850442 7/26/79 女 2007/12/14 大专 256227.28 13 +四川 四川青羊 251977892 5/24/84 女 2008/9/18 大专 256131 2 +河南 河南南阳 218952812 2/26/65 女 2008/4/25 中专 255984.54 4 +安徽 安徽合肥 22642262 7/6/65 女 2004/11/1 大专 255805.03 13 +广东 广东中山 81274642 11/14/75 女 2006/4/4 大专 255624.7 6 +深圳 深圳福田第二 39379852 9/1/73 女 2005/4/20 大专 254546.97 12 +青岛 青岛一支 603439322 2/27/70 女 2014/1/1 本科 254275.78 6 +重庆 重庆永川 413255122 11/25/68 男 2011/1/4 高中 253923.65 4 +深圳 深圳宝安 49682372 6/28/73 女 2005/6/29 中专 253873.92 26 +安徽 安徽合肥 188864392 12/4/78 男 2007/12/1 中专 253864.19 16 +浙江 浙江嘉兴 18759192 12/26/69 女 2004/9/1 大专 252685.44 2 +黑龙江 黑龙江鹤岗 496895082 7/14/72 女 2012/12/31 中专 252632.69 4 +山西 山西长治 874769812 4/17/76 女 2015/9/20 大专 252135 0 +山东 山东淄博 362774782 2/5/71 女 2010/3/5 中专 252041.93 16 +辽宁 辽宁丹东 34998802 10/7/62 男 2005/3/23 大专 251629.18 5 +山东 山东烟台 823357442 10/22/73 女 2015/8/1 中专 251048 33 +宁波 宁波宁海 5106873232 12/15/82 男 2016/3/23 高中 250000 0 +吉林 吉林延边 5121343472 11/3/80 女 2016/4/14 中专 249461.7 7 +苏州 苏州张家港 135586132 1/27/78 女 2007/5/18 大专 249299.94 34 +安徽 安徽滁州 217132702 5/16/72 女 2008/4/1 高中 248385.18 7 +上海 上海陆家嘴 2456352 7/29/73 女 2003/1/3 高中 246990.75 8 +北京 北京东城 268156102 5/29/81 女 2008/12/3 本科 246304.57 20 +福建 福建漳州 195513982 11/6/73 女 2008/1/1 大专 245799.79 8 +江苏 江苏南京 119793552 2/1/76 女 2007/2/12 大专 245474.37 3 +河北 河北石家庄 6965802 4/5/76 女 2003/9/1 大专 244748.17 30 +苏州 苏州新区 5060853552 1/11/80 女 2016/1/13 高中 244721.5 11 +黑龙江 黑龙江牡丹江 775316482 4/22/73 女 2015/6/26 高中 244233 2 +广西 广西柳州 605549732 2/24/71 女 2014/1/14 中专 244177.8 7 +河北 河北邢台 5031277622 3/13/81 男 2015/11/25 高中 243473.6 3 +重庆 重庆渝中 5072386582 4/20/81 男 2016/3/3 大专 243299 3 +河南 河南郑州 5058533722 8/19/81 女 2016/1/8 大专 243157.5 6 +四川 四川青羊 3833472 9/26/68 女 2003/4/21 大专 242900.64 11 +四川 四川青羊 119577362 9/27/67 女 2007/2/9 本科 242454.55 3 +深圳 深圳福田 561205382 3/10/80 女 2013/6/28 本科 242440.41 1 +苏州 苏州新区 140242132 4/30/56 女 2007/6/15 高中 242227.52 19 +四川 四川雅安 5175568272 10/31/63 女 2016/6/20 大专 241350 1 +湖北 湖北荆州 50629482 10/20/73 女 2005/7/1 本科 241101.99 16 +浙江 浙江杭州 4742342 2/3/65 女 2003/6/20 本科 240961.44 7 +湖北 湖北十堰 388059682 4/7/71 女 2010/8/1 高中 240502.3 11 +四川 四川绵阳 182829872 4/5/76 女 2007/11/23 大专 240229.2 10 +深圳 深圳福田第二 692102762 8/7/68 女 2014/12/18 中专 240000 0 +四川 四川青羊 44332 9/26/73 女 2001/12/30 本科 239103.04 12 +福建 福建福州 429636812 12/7/78 女 2011/6/29 本科 238625.17 3 +辽宁 辽宁阜新 33165712 2/2/63 女 2005/3/7 高中 237833.71 14 +广东 广东东莞 639239162 10/8/74 女 2014/6/20 高中 237365.3 5 +辽宁 辽宁朝阳 708478042 6/25/75 女 2015/2/6 大专 236789 2 +湖北 湖北襄阳 289649762 2/4/65 女 2009/3/25 大专 236174.23 11 +云南 云南昆明 593308612 9/20/83 女 2013/12/19 本科 236023.75 7 +福建 福建龙岩 299802662 6/4/70 女 2009/5/15 中专 235529.25 26 +北京 北京良乡 452769292 12/21/75 女 2012/3/1 大专 235502.49 16 +河南 河南郑州 7044382 7/13/68 男 2003/9/3 本科 235011.86 0 +广东 广东中山 121095862 11/20/73 女 2007/3/1 大专 234819.46 10 +青岛 青岛一支 5184281032 5/29/78 女 2016/6/27 大专 234772.3 3 +云南 云南昆明 829943532 9/8/85 女 2015/8/5 大专 234259 5 +河北 河北廊坊 5017144632 3/20/63 女 2015/11/12 中专 234078 8 +四川 四川青羊 12612322 10/30/69 女 2004/4/16 本科 233882.89 18 +湖北 湖北宜昌 5048264392 3/13/77 女 2015/12/18 高中 233547.5 7 +黑龙江 黑龙江哈尔滨 5046768612 4/10/77 男 2015/12/15 本科 233534.3 7 +四川 四川青羊 1875052 12/16/63 女 2002/9/13 高中 233060.03 9 +四川 四川青羊 474306362 12/22/73 女 2012/8/10 高中 232088 3 +山东 山东日照 182481512 11/26/65 女 2007/11/23 高中 231989.81 11 +重庆 重庆渝中 599311032 11/15/74 女 2013/12/27 中专 231008.02 12 +山东 山东济宁 444068322 12/13/71 女 2011/11/17 高中 230968.94 3 +苏州 苏州新区 360794172 10/26/69 男 2010/2/9 大专 230612.9 1 +山东 山东滨州 647773762 1/4/77 男 2014/7/26 中专 229091.05 12 +辽宁 辽宁沈阳 6177522 11/17/67 男 2003/7/30 大专 228830.09 12 +北京 北京平谷 784670492 10/15/81 女 2015/7/9 本科 228700 2 +四川 四川高新 564812802 9/23/73 女 2013/6/29 中专 228452.65 16 +广东 广东东莞 365548842 4/2/77 女 2010/3/23 高中 228121.61 13 +江西 江西南昌 51424602 8/12/77 女 2005/7/12 大专 227756.45 9 +四川 四川绵阳 213644472 3/30/69 女 2008/4/1 高中 227626.96 7 +吉林 吉林延边 5144131202 1/8/63 女 2016/5/23 大专 227600 1 +浙江 浙江杭州 554642182 4/28/86 女 2013/6/27 高中 226292.9 4 +辽宁 辽宁铁岭 71475272 1/18/78 女 2005/12/30 高中 225872.58 3 +四川 四川青羊 95692472 2/5/80 女 2006/9/1 本科 225424.7 1 +云南 云南昆明 147409522 12/4/68 女 2007/7/1 本科 225373.25 7 +四川 四川雅安 30703172 6/17/72 男 2005/1/1 大专 225316.82 5 +四川 四川雅安 12009802 11/22/65 女 2004/4/1 高中 225078.58 5 +广东 广东广州 524946502 8/29/74 女 2013/5/30 大专 224992.74 7 +青岛 青岛一支 87695762 5/12/79 男 2006/6/22 本科 224852.5 27 +黑龙江 黑龙江大庆 5124248972 7/18/70 女 2016/4/18 大专 223838.8 8 +北京 北京海淀 417289482 1/19/86 女 2011/3/9 大专 223571.02 11 +辽宁 辽宁阜新 82212542 12/12/75 女 2006/4/21 高中 223421.59 4 +重庆 重庆渝中 708102322 3/9/81 女 2015/2/4 本科 223190 6 +山东 山东济南 82226222 11/3/81 女 2006/4/21 大专 223089.55 37 +山东 山东淄博 57257582 5/26/60 女 2005/8/31 高中 222323.51 26 +四川 四川高新 479715472 9/25/90 女 2012/9/29 大专 222205.75 9 +山东 山东威海 169573672 3/17/71 女 2007/10/16 大专 222069.6 18 +浙江 浙江温州 500270262 10/24/71 男 2013/1/21 本科 221274.79 8 +江苏 江苏徐州 122380452 1/20/70 男 2007/3/12 高中 221261.2 6 +安徽 安徽合肥 22508692 10/5/69 女 2004/11/1 大专 221210.67 8 +北京 北京东城 5143073272 8/17/82 女 2016/5/20 硕士 220635 10 +江苏 江苏连云港 591094362 11/29/72 男 2013/12/13 大专 220603.46 0 +北京 北京良乡 803841322 4/9/74 男 2015/7/26 大专 220530 2 +河南 河南洛阳 141324482 12/13/77 女 2007/6/19 高中 220214.36 23 +河南 河南郑州 4992032 4/7/75 女 2003/6/27 大专 220204.04 20 +湖南 湖南娄底 770093832 5/23/74 女 2015/6/24 高中 220000 0 +山西 山西长治 5005739412 1/26/90 男 2015/10/26 大专 220000 0 +贵州 贵州贵阳 376945022 1/5/77 女 2010/5/25 大专 219969 4 +湖南 湖南永州 437367782 10/20/62 女 2011/9/10 高中 219821.53 5 +辽宁 辽宁沈阳 423116322 7/30/80 女 2011/5/4 大专 219544.1 4 +甘肃 甘肃武威 676062592 3/5/74 男 2014/10/8 大专 219440.42 3 +四川 四川青羊 327608862 10/23/82 女 2009/8/28 大专 219034.13 9 +浙江 浙江金华 873340772 10/18/64 男 2015/9/18 高中 218863.2 12 +北京 北京平谷 2711482 4/19/70 女 2003/2/1 大专 218577.22 11 +河北 河北邯郸 232565612 5/20/66 女 2008/6/20 本科 218558.11 15 +甘肃 甘肃兰州 279640342 4/16/68 女 2009/2/18 大专 218285.92 26 +江苏 江苏镇江 179496702 8/23/79 女 2007/11/13 高中 218126.02 3 +浙江 浙江金华 46781582 12/24/71 女 2005/6/10 高中 218027.71 12 +四川 四川乐山 5051505272 4/11/79 女 2015/12/23 大专 217551 2 +江西 江西南昌 433721422 4/6/67 女 2011/8/10 高中 217387.86 3 +山东 山东日照 491275222 4/20/70 女 2012/12/19 中专 217339.68 9 +佛山 佛山禅城 391864872 4/30/85 男 2010/8/23 本科 217243.64 3 +山东 山东济宁 442351352 8/4/71 女 2011/10/22 大专 217182.74 15 +江苏 江苏泰州 592669252 3/28/68 女 2013/12/18 高中 217140.99 20 +北京 北京东城 656062 8/11/70 女 2002/2/22 大专 216946.08 0 +江西 江西南昌 5194660032 5/26/85 女 2016/7/28 高中 216717.5 30 +深圳 深圳福田 851351502 5/29/80 女 2015/8/10 大专 216398 5 +四川 四川高新 776922 9/10/77 女 2002/3/11 大专 216381.8 9 +山东 山东淄博 648254022 8/15/71 女 2014/7/28 高中 216357.77 6 +河北 河北唐山 414022882 7/19/58 女 2011/1/13 高中 216226 4 +山西 山西太原 5004977952 10/1/77 女 2015/10/24 本科 216166.5 2 +黑龙江 黑龙江哈尔滨 5178723022 1/23/88 女 2016/6/21 高中 216094 3 +湖南 湖南永州 467419362 10/22/73 女 2012/6/7 高中 215968.93 8 +安徽 安徽阜阳 5039441962 2/18/81 女 2015/11/30 大专 215854.5 3 +深圳 深圳宝安 588021762 12/19/86 女 2013/12/3 大专 215834.5 13 +黑龙江 黑龙江双鸭山 5010154262 6/29/59 女 2015/11/5 大专 215667.5 4 +江西 江西南昌 5039314082 6/4/79 女 2015/11/30 高中 215604.2 7 +江西 江西南昌 5090524682 2/26/78 女 2016/3/12 高中 215218.7 6 +山东 山东烟台 444211102 3/23/71 女 2011/11/19 中专 214670.76 9 +浙江 浙江台州 58871412 1/23/73 女 2005/9/19 高中 214510.39 11 +宁波 宁波宁海 670831432 3/21/83 女 2014/9/22 大专 214280 2 +山东 山东淄博 656865802 12/10/76 男 2014/8/15 大专 214200.65 9 +四川 四川青羊 5135733952 10/26/82 男 2016/5/9 大专 214081 2 +深圳 深圳福田第二 131105982 9/16/79 女 2007/4/20 本科 213902.16 4 +贵州 贵州贵阳 5153587352 12/25/74 男 2016/5/30 高中 213692.5 2 +湖北 湖北武汉 344482122 2/17/80 女 2009/11/23 大专 213675.06 16 +河南 河南南阳 224949092 11/5/70 女 2008/5/21 高中 213334.06 1 +北京 北京东城 75259942 9/2/70 女 2006/2/17 大专 212726 15 +浙江 浙江杭州 690792912 2/17/79 女 2014/12/15 本科 212459.8 26 +贵州 贵州贵阳 5104206182 9/15/89 女 2016/3/22 大专 212160 3 +陕西 陕西汉中 686435452 7/29/67 女 2014/11/20 高中 212080 7 +青岛 青岛一支 103467822 10/6/74 女 2006/11/14 本科 211771.35 3 +四川 四川高新 690520062 4/19/76 男 2014/12/12 大专 211665 5 +吉林 吉林延边 5104120052 11/10/69 女 2016/3/22 高中 210710 2 +广西 广西南宁 872232462 8/9/88 女 2015/9/16 中专 210478.2 5 +浙江 浙江温州 765560792 12/2/85 女 2015/6/17 高中 210272 3 +山东 山东烟台 262805052 11/13/78 男 2008/11/12 中专 210203.13 12 +湖北 湖北武汉 129339192 10/29/64 女 2007/4/7 高中 210075.61 18 +云南 云南昆明 452354632 11/7/72 女 2012/2/13 中专 210047.5 0 +青岛 青岛一支 507672962 10/31/76 女 2013/3/19 大专 209487 3 +青岛 青岛开发区 642464722 2/18/65 男 2014/6/25 本科 209477.78 1 +黑龙江 黑龙江牡丹江 214166042 3/23/73 女 2008/4/2 大专 209280.99 6 +新疆 新疆乌鲁木齐 230366712 12/19/72 女 2008/6/1 中专 208903.85 41 +福建 福建福州 732029222 2/17/72 女 2015/3/31 中专 208080 2 +佛山 佛山顺德龙江 444463162 6/20/77 女 2011/11/22 大专 207774.89 5 +北京 北京海淀 631844272 10/31/84 女 2014/5/30 本科 207532.63 0 +河北 河北邢台 340063802 5/10/73 女 2009/11/2 中专 207511.3 4 +云南 云南昆明 279600702 11/14/70 女 2009/2/18 中专 207376.55 1 +广东 广东广州 503372 8/26/61 女 2002/1/1 大专 207246.6 6 +湖南 湖南永州 421451272 1/17/67 女 2011/4/15 大专 206785.09 12 +湖北 湖北十堰 810018892 7/26/70 女 2015/7/28 高中 206758.23 5 +贵州 贵州六盘水 746755772 7/21/69 女 2015/4/17 大专 206579 4 +湖北 湖北十堰 167971152 4/17/69 女 2007/10/5 大专 206343.69 21 +广西 广西玉林 701557542 8/20/77 男 2014/12/31 大专 206118 2 +佛山 佛山顺德龙江 8902732 4/18/64 女 2003/10/1 高中 205955.5 8 +青岛 青岛一支 427164362 2/14/76 女 2011/6/17 大专 205949.17 14 +湖南 湖南郴州 5064986472 9/28/79 女 2016/2/4 大专 205783.5 4 +河南 河南周口 356331472 11/10/63 女 2010/1/5 本科 205441.64 15 +山西 山西临汾 760544152 8/24/83 女 2015/6/3 高中 205437.9 2 +山西 山西运城 749179102 3/20/70 女 2015/4/25 高中 205346 2 +安徽 安徽合肥 691343512 10/8/80 男 2014/12/16 中专 205000 0 +四川 四川青羊 80865152 4/6/84 女 2006/3/31 大专 204967 1 +河南 河南郑州 697913552 7/21/91 女 2014/12/24 高中 204637 1 +大连 大连海川 818999282 3/5/66 女 2015/7/31 硕士 204596 1 +江苏 江苏盐城 660680902 12/26/65 男 2014/8/23 大专 204426.54 2 +湖南 湖南长沙 5098499522 4/6/79 女 2016/3/18 中专 204318 1 +江西 江西新余 399866052 7/28/70 女 2010/10/11 高中 204043.26 0 +辽宁 辽宁沈阳 280058072 7/26/70 女 2009/2/20 高中 204034.3 3 +广西 广西南宁 149007302 3/26/72 男 2007/7/11 大专 203966 10 +黑龙江 黑龙江七台河 241399452 3/29/74 女 2008/7/22 高中 203542 1 +湖南 湖南株洲 669826262 3/26/78 女 2014/9/17 高中 203490.2 2 +大连 大连明锐 868815272 8/9/79 女 2015/9/9 大专 203417 1 +河南 河南郑州 646920582 3/3/91 男 2014/7/22 本科 203246.68 6 +陕西 陕西咸阳 681992572 4/30/73 女 2014/11/13 高中 203100 0 +陕西 陕西汉中 620876432 2/28/78 女 2014/3/31 大专 203000 0 +福建 福建厦门 603707432 8/27/71 女 2014/1/1 大专 202901.1 7 +苏州 苏州张家港 284842472 11/1/68 女 2009/3/16 高中 202769.45 3 +四川 四川高新 1628432 11/5/72 女 2002/8/9 硕士 202729 11 +湖南 湖南永州 5147892462 1/9/77 女 2016/5/26 中专 201790.5 2 +黑龙江 黑龙江哈尔滨 336753522 2/21/73 女 2009/10/15 大专 201458 1 +辽宁 辽宁本溪 5134673252 3/18/79 男 2016/5/6 本科 201394 1 +河北 河北石家庄 5161155152 1/16/70 女 2016/6/3 本科 201350 1 +苏州 苏州张家港 444115772 1/4/71 男 2011/11/18 初中 201094 1 +黑龙江 黑龙江鸡西 164415922 4/25/65 女 2007/9/21 中专 200702.1 0 +安徽 安徽马鞍山 295853022 2/27/65 男 2009/5/1 高中 200647.59 5 +河南 河南郑州 452027762 9/10/81 女 2012/2/1 大专 200042.13 9 +江苏 江苏南京 5043156972 10/30/65 男 2015/12/8 大专 200000 0 +江西 江西赣州 740288872 8/15/86 女 2015/4/10 大专 200000 0 +天津 天津蓟州 480848072 11/20/87 女 2012/10/22 大专 200000 0 +江西 江西南昌 5150658312 5/9/75 男 2016/5/27 高中 200000 0 +山西 山西朔州 5152996282 5/7/78 女 2016/5/30 高中 200000 0 +山东 山东济宁 615887422 12/31/94 男 2014/3/20 高中 199563.15 6 +四川 四川内江 739684682 8/9/66 女 2015/4/9 大专 199390.31 20 +山东 山东济宁 5077549322 3/29/89 男 2016/3/7 中专 199240.5 6 +山东 山东济南 55025882 3/23/78 女 2005/8/17 中专 199179.14 14 +重庆 重庆渝中 163377952 8/27/71 男 2007/9/17 大专 198637.26 18 +山东 山东滨州 274660542 2/16/71 女 2009/1/1 中专 198285.97 7 +广东 广东广州 321769742 12/23/72 男 2009/8/3 高中 198153.4 3 +四川 四川青羊 623831512 8/19/69 女 2014/4/18 本科 197178.72 0 +四川 四川青羊 168962 6/22/73 女 2001/12/31 大专 195772.16 5 +山东 山东菏泽 323785252 2/29/64 女 2009/8/12 大专 195480.24 12 +山东 山东威海 305414982 7/9/72 女 2009/6/9 高中 195408.35 7 +山东 山东临沂 33842342 4/13/71 男 2005/3/15 大专 195101.07 13 +北京 北京海淀 390176932 6/4/88 女 2010/8/10 本科 195083.1 6 +辽宁 辽宁盘锦 521720242 10/24/53 女 2013/5/22 大专 194849.53 7 +浙江 浙江温州 222138462 7/19/75 女 2008/5/8 高中 194737.49 4 +江西 江西赣州 65237542 10/2/75 女 2005/10/20 本科 194465.63 11 +山东 山东日照 833723462 2/15/70 女 2015/8/7 中专 194447.5 11 +四川 四川绵阳 23643662 3/3/78 女 2004/11/23 大专 193894.11 19 +四川 四川青羊 89620412 11/2/72 女 2006/6/30 大专 193520.22 12 +北京 北京良乡 690243712 3/8/64 女 2014/12/11 高中 193216.84 6 +山东 山东烟台 482136702 11/26/78 男 2012/11/2 初中 193142.87 4 +浙江 浙江杭州 645606962 2/24/88 男 2014/7/7 大专 192903 4 +山东 山东烟台 612010492 8/13/73 女 2014/3/10 中专 192877.01 34 +浙江 浙江湖州 422951352 5/19/71 女 2011/5/3 高中 192505.59 8 +山东 山东烟台 733196292 12/20/75 女 2015/4/1 本科 192253 9 +辽宁 辽宁营口 5012937352 3/6/76 女 2015/11/8 大专 192243.2 3 +吉林 吉林长春 610843422 4/12/61 女 2014/3/3 大专 191762.41 2 +山东 山东东营 237638642 10/6/77 女 2008/7/1 中专 191700.71 7 +四川 四川高新 5036621692 3/6/83 女 2015/11/30 本科 191347 5 +四川 四川高新 299728552 9/13/71 男 2009/5/15 本科 190760.51 10 +山东 山东烟台 24424132 9/22/62 女 2004/11/29 本科 190664.41 37 +黑龙江 黑龙江齐齐哈尔 73058672 6/23/68 女 2006/1/4 大专 190601.81 13 +浙江 浙江杭州 4766902 12/5/64 女 2003/6/20 本科 189699.41 10 +山东 山东淄博 782305922 10/2/77 女 2015/7/6 高中 189673 11 +苏州 苏州新区 522595612 10/5/80 男 2013/5/24 中专 189662.09 0 +四川 四川青羊 8298542 7/11/72 女 2003/10/9 大专 189388.37 8 +北京 北京海淀 124798612 12/14/83 女 2007/4/1 本科 189182.07 13 +重庆 重庆永川 5154737782 6/2/66 女 2016/5/31 大专 188680 1 +云南 云南昆明 485776922 3/3/80 女 2012/11/26 大专 188654.24 9 +黑龙江 黑龙江哈尔滨 57414042 12/18/65 女 2005/9/5 本科 188538.25 31 +江西 江西南昌 18892062 10/29/76 女 2004/9/16 高中 188509.34 26 +河南 河南郑州 672055862 4/30/86 男 2014/9/24 本科 188159 21 +四川 四川高新 478702762 3/20/86 女 2012/9/24 大专 188036.5 12 +湖北 湖北宜昌 561103912 4/17/85 女 2013/6/28 中专 187801.35 0 +四川 四川青羊 707804482 2/16/74 女 2015/2/2 大专 187759.04 0 +辽宁 辽宁沈阳 5471862 11/11/64 男 2003/7/1 大专 187727.4 0 +山东 山东滨州 273901292 2/23/76 女 2009/1/1 中专 187529.69 2 +河南 河南洛阳 197601232 9/7/70 女 2008/1/2 大专 186825.84 13 +四川 四川高新 34336552 12/7/81 女 2005/3/18 大专 186810.96 0 +新疆 新疆库尔勒 427336172 8/26/81 男 2011/6/20 大专 186544.19 2 +四川 四川高新 117964232 5/30/81 女 2007/1/25 大专 186456.2 11 +浙江 浙江嘉兴 498604512 6/12/89 女 2013/1/6 中专 186384.03 11 +山西 山西临汾 5094428222 8/31/87 女 2016/3/15 大专 186000 0 +深圳 深圳福田第二 275539682 8/15/63 女 2009/1/4 大专 185215.88 9 +青岛 青岛开发区 527128652 8/2/84 女 2013/6/4 大专 185147.4 8 +四川 四川成都 76051022 12/3/70 女 2006/2/24 高中 184946.06 7 +深圳 深圳福田 505000372 5/25/70 女 2013/2/28 大专 184889.36 5 +四川 四川青羊 275266132 6/2/74 女 2009/1/3 本科 184766.69 6 +广东 广东中山 430894742 6/9/74 女 2011/7/19 大专 184725.5 4 +四川 四川高新 604197872 10/28/79 女 2014/1/3 本科 184689.45 5 +湖北 湖北武汉 70093682 7/3/72 女 2005/12/20 本科 184366.54 29 +苏州 苏州张家港 627273962 12/20/82 女 2014/5/8 大专 184160 6 +大连 大连银洲 622464302 4/23/75 女 2014/4/8 大专 183761.42 14 +河南 河南平顶山 777172462 8/24/73 女 2015/6/29 高中 183742.78 5 +山东 山东济宁 43107862 8/28/69 女 2005/5/16 大专 182633.43 6 +山西 山西太原 209789732 11/2/72 女 2008/3/24 本科 182609.15 9 +深圳 深圳罗湖 400030322 4/11/57 女 2010/10/13 本科 182600.19 2 +湖南 湖南郴州 338866032 9/25/75 男 2009/10/1 大专 182282.73 6 +辽宁 辽宁辽阳 399543922 2/19/70 女 2010/10/9 本科 182040.58 17 +福建 福建福州 556590692 6/23/76 女 2013/6/27 高中 181970.26 9 +山东 山东淄博 143328682 9/23/67 女 2007/6/23 大专 181329.39 10 +山东 山东日照 63723782 8/19/74 女 2005/10/31 大专 181182.06 7 +佛山 佛山顺德龙江 389479512 7/22/79 女 2010/8/4 高中 181114.54 15 +浙江 浙江温州 204678462 3/10/78 女 2008/2/23 本科 180896.67 17 +山东 山东淄博 505173852 2/11/77 女 2013/3/2 高中 180820.79 22 +河南 河南郑州 5042552 10/25/68 男 2003/6/27 本科 180655.72 14 +四川 四川绵阳 360031152 5/16/75 女 2010/2/2 大专 180557.33 6 +河南 河南郑州 185892562 2/14/61 女 2007/12/1 大专 180551.48 9 +北京 北京平谷 9425972 7/19/66 女 2003/12/18 大专 180543.1 10 +辽宁 辽宁丹东 502420312 3/29/66 女 2013/2/1 中专 180422.3 4 +陕西 陕西西安 659708532 12/30/77 女 2014/8/21 大专 180160.26 4 +四川 四川高新 5095919502 1/26/84 女 2016/3/16 本科 180014 4 +湖北 湖北武汉 136826612 2/3/74 男 2007/5/24 大专 180001.53 6 +四川 四川成都 5214302082 9/16/78 女 2016/8/12 高中 179908 3 +山东 山东济南 5126081032 4/26/68 女 2016/4/21 中专 179874.5 7 +湖北 湖北武汉 20883282 4/25/70 男 2004/10/16 本科 179394.99 13 +浙江 浙江杭州 227645272 4/24/74 女 2008/6/2 高中 179348.22 10 +重庆 重庆巴南 812741732 3/17/87 女 2015/7/30 高中 179066 6 +安徽 安徽淮南 51231302 9/24/73 女 2005/6/1 大专 179049.43 8 +河北 河北石家庄 73290912 2/18/70 女 2006/1/6 大专 179044.32 29 +深圳 深圳罗湖 284674432 4/1/64 女 2009/3/13 大专 178535.33 2 +广西 广西南宁 5167368622 3/5/69 女 2016/6/8 大专 178444.6 23 +山东 山东德州 479804932 1/21/81 女 2012/9/29 中专 178438.07 5 +湖北 湖北襄阳 845875122 10/4/78 女 2015/8/10 大专 178183 42 +山东 山东潍坊 39215582 3/8/71 男 2005/4/1 中专 178118.1 7 +北京 北京海淀 824267982 2/21/69 女 2015/8/2 本科 178000 0 +广东 广东江门 227872072 5/24/75 女 2008/6/2 大专 177859.45 15 +福建 福建厦门 193141602 9/13/72 女 2007/12/24 高中 177725.56 13 +山东 山东济南 316281082 7/5/79 女 2009/7/21 大专 177508.3 16 +上海 上海陆家嘴 638960442 1/1/70 2014/6/20 本科 177470.5 1954 +河北 河北唐山 329311182 3/27/74 女 2009/9/7 高中 176894.17 9 +浙江 浙江杭州 19708672 11/7/67 女 2004/9/27 大专 176587.8 17 +四川 四川高新 190775362 8/20/82 女 2007/12/18 大专 176063.63 11 +山西 山西太原 215364512 1/10/64 女 2008/4/9 中专 175483.48 5 +江苏 江苏泰州 53144642 9/5/65 女 2005/7/28 大专 175373.22 13 +四川 四川绵阳 7799862 8/27/76 女 2003/9/17 本科 175136 9 +湖北 湖北武汉 20825222 6/1/74 男 2004/10/14 大专 174923.19 2 +河南 河南郑州 134457302 9/9/69 女 2007/5/9 大专 174740.17 6 +河南 河南安阳 207515052 2/27/70 女 2008/3/14 高中 174542.24 9 +大连 大连银洲 633369612 9/17/70 女 2014/6/5 本科 174473.01 8 +江苏 江苏无锡 866320902 2/9/85 女 2015/9/2 大专 174158 2 +佛山 佛山禅城 446184872 4/29/72 女 2011/12/6 高中 174128.94 11 +江西 江西南昌 605982812 6/15/66 女 2014/1/17 高中 174050 3 +浙江 浙江杭州 611520052 1/16/73 女 2014/3/6 大专 173745.91 6 +新疆 新疆乌鲁木齐 238822462 4/24/58 女 2008/6/1 高中 173521.7 1 +江苏 江苏泰州 151291892 4/4/70 女 2007/7/20 高中 173397.83 7 +河南 河南安阳 214626752 5/18/66 女 2008/4/3 高中 173051 11 +云南 云南昆明 372409882 2/16/78 男 2010/5/1 中专 172835.75 3 +山东 山东枣庄 5160153442 8/19/74 女 2016/6/3 中专 172488.73 2 +湖北 湖北武汉 591237142 10/1/79 女 2013/12/13 中专 171972.56 12 +甘肃 甘肃酒泉 516905412 2/5/73 女 2013/4/24 高中 171845.87 6 +浙江 浙江温州 133466782 8/30/87 女 2007/5/1 高中 171635.95 16 +四川 四川青羊 1604842 8/29/71 女 2002/8/7 大专 171632.96 5 +四川 四川青羊 623414482 6/2/75 女 2014/4/15 本科 171574.74 18 +北京 北京海淀 425099032 10/23/89 女 2011/6/1 高中 171406.9 15 +大连 大连海川 193584592 7/13/75 女 2007/12/25 大专 170982.33 21 +佛山 佛山顺德龙江 290026182 11/27/80 女 2009/4/1 大专 170950.95 6 +四川 四川高新 464585842 1/6/70 女 2012/5/14 高中 170664.79 5 +佛山 佛山顺德龙江 562366312 4/15/71 女 2013/6/29 中专 170501.99 9 +北京 北京海淀 130002142 4/27/81 女 2007/4/13 本科 170360.74 17 +天津 天津蓟州 5064781602 5/25/88 女 2016/2/3 大专 170000 0 +深圳 深圳福田第二 468023552 10/25/74 女 2012/6/14 本科 170000 0 +四川 四川青羊 3130882 1/9/74 女 2003/3/17 大专 169903.43 7 +四川 四川青羊 554641482 1/7/77 女 2013/6/27 本科 169544.42 6 +上海 上海黄浦 1072392 6/4/69 男 2002/4/28 大专 169532.27 1 +四川 四川青羊 32293412 2/22/64 女 2005/2/28 大专 169475.8 7 +江苏 江苏南京 5063683792 8/1/78 女 2016/1/29 高中 169384.8 2 +四川 四川内江 9383962 4/15/71 女 2003/12/15 大专 169251.23 11 +辽宁 辽宁盘锦 5067462222 11/13/78 男 2016/2/23 中专 169176 3 +黑龙江 黑龙江哈尔滨 30221242 2/5/74 女 2005/1/28 本科 168872.77 12 +黑龙江 黑龙江牡丹江 5046024322 6/11/71 女 2015/12/14 本科 168784 15 +河南 河南郑州 319756332 7/7/66 女 2009/7/29 大专 168695.49 12 +四川 四川青羊 97922 2/14/68 女 2001/12/31 大专 168613.16 9 +浙江 浙江杭州 465805532 10/3/73 女 2012/5/25 中专 168594.67 27 +江苏 江苏徐州 613600732 1/20/71 男 2014/3/14 大专 168510.17 18 +江苏 江苏无锡 38938262 8/21/69 女 2005/4/18 高中 168377.81 8 +四川 四川高新 5199463852 5/29/84 女 2016/8/1 本科 167799 3 +福建 福建厦门 116492482 4/5/71 女 2007/1/21 本科 167784.71 8 +北京 北京海淀 3187272 1/24/73 男 2003/4/1 本科 167767 9 +陕西 陕西西安 157108822 12/7/73 女 2007/8/1 大专 167512.52 10 +湖北 湖北十堰 487182102 5/12/74 女 2012/12/3 高中 167305.9 23 +上海 上海陆家嘴 8407822 10/16/78 女 2003/10/16 大专 167304 21 +安徽 安徽合肥 5126611382 6/1/80 女 2016/4/22 中专 167300 13 +云南 云南昆明 658174952 11/24/82 男 2014/8/19 大专 167287.37 1 +四川 四川高新 5005569922 11/21/75 女 2015/10/26 大专 167261 3 +黑龙江 黑龙江哈尔滨 25970962 2/26/72 女 2004/12/14 大专 167250.92 21 +黑龙江 黑龙江哈尔滨 846128852 8/14/74 女 2015/8/10 大专 167207 3 +江西 江西新余 122029022 12/18/72 女 2007/3/7 中专 167163.05 9 +大连 大连明锐 5350302 2/22/75 女 2003/7/1 本科 167047.49 6 +北京 北京东城 704333972 9/26/77 女 2015/1/15 硕士 166476 4 +山东 山东济宁 43140662 2/18/68 女 2005/5/16 中专 166342.4 15 +山东 山东日照 184337492 4/25/71 女 2007/11/25 高中 166090.54 10 +浙江 浙江嘉兴 668743212 12/19/77 女 2014/9/12 大专 166088.37 14 +广东 广东珠海 396866862 9/18/72 女 2010/9/21 大专 165754.33 4 +浙江 浙江杭州 454378652 1/6/81 女 2012/3/5 本科 165684.34 2 +广东 广东汕头 169794332 2/24/73 女 2007/10/18 大专 165628.34 11 +四川 四川高新 40925712 3/30/82 女 2005/4/29 本科 165520.83 21 +北京 北京良乡 194234562 6/22/72 女 2007/12/25 高中 165350.41 10 +山东 山东济南 443833982 3/31/77 女 2011/11/14 本科 165321.59 9 +浙江 浙江嘉兴 5145995042 12/25/70 女 2016/5/25 高中 165196 17 +云南 云南昆明 269826592 3/13/83 女 2008/12/1 本科 164991 3 +四川 四川高新 2554052 11/29/65 女 2003/1/21 大专 164911.15 24 +河南 河南郑州 300307482 5/26/74 女 2009/5/18 中专 164658.57 1 +山东 山东威海 696698332 7/2/87 女 2014/12/23 大专 164640 17 +湖北 湖北荆州 664052042 10/5/76 女 2014/8/29 大专 164419 4 +青岛 青岛一支 465397712 11/20/81 女 2012/5/22 本科 164112.63 8 +北京 北京海淀 365640402 10/24/85 男 2010/4/1 本科 163403.4 9 +四川 四川高新 738613912 6/26/80 女 2015/4/9 大专 163200 2 +广东 广东茂名 412636552 7/11/55 女 2011/1/1 大专 163168.13 5 +广东 广东广州 575322302 9/18/86 女 2013/8/30 大专 163144.4 10 +山东 山东烟台 127071622 6/14/71 女 2007/3/25 高中 163140.64 16 +山东 山东烟台 172711172 7/27/75 女 2007/10/25 大专 163135.03 12 +北京 北京东城 46504262 2/6/75 女 2005/6/7 大专 162841.22 13 +山东 山东威海 707217042 8/1/83 女 2015/1/29 高中 162816.1 17 +四川 四川高新 708763872 5/26/75 女 2015/2/10 大专 162799.5 16 +辽宁 辽宁铁岭 449945682 8/16/75 女 2012/1/1 高中 162747.13 16 +湖南 湖南长沙 178809192 9/12/75 女 2007/11/9 大专 162706.2 7 +四川 四川眉山 151069562 10/30/73 女 2007/7/19 高中 162616 2 +山东 山东德州 286107242 5/2/77 女 2009/3/20 中专 162615.45 11 +黑龙江 黑龙江哈尔滨 363753022 11/12/62 女 2010/3/15 本科 162456 10 +广西 广西玉林 612526892 1/24/84 女 2014/3/11 本科 162435.5 12 +北京 北京海淀 452905232 9/22/86 男 2012/3/1 本科 162372 2 +浙江 浙江杭州 5192817032 5/11/86 女 2016/7/26 大专 162346.8 13 +四川 四川青羊 69005192 9/7/73 女 2005/12/10 大专 162304.97 3 +四川 四川高新 570028612 7/19/64 男 2013/7/22 本科 162285.88 3 +江苏 江苏扬州 26936222 11/22/72 女 2004/12/24 中专 162277.32 6 +四川 四川高新 432554352 12/23/74 女 2011/8/2 本科 162073.71 20 +四川 四川高新 5033972782 4/14/72 女 2015/11/27 本科 161935 8 +大连 大连明锐 5152821322 8/9/76 男 2016/5/30 大专 161931 4 +浙江 浙江杭州 412401242 3/4/69 女 2010/12/31 大专 161817.04 5 +河北 河北唐山 461938512 5/2/79 女 2012/4/12 高中 161552.65 10 +黑龙江 黑龙江牡丹江 45061542 5/1/71 女 2005/6/1 大专 161247.36 10 +四川 四川青羊 76704062 10/17/81 男 2006/2/28 大专 160879 2 +山东 山东济南 15855332 3/29/73 女 2004/7/1 大专 160428.83 3 +湖南 湖南长沙 733915902 12/10/90 男 2015/4/2 本科 160340.7 0 +山西 山西太原 196026342 4/22/72 女 2008/1/1 高中 160313.3 14 +北京 北京海淀 492049822 6/10/88 女 2013/1/1 本科 160177.74 9 +广东 广东广州 258104942 11/15/84 女 2008/10/21 大专 159980.41 16 +陕西 陕西咸阳 456040632 4/30/70 女 2012/3/12 高中 159925.5 1 +辽宁 辽宁阜新 175178182 12/4/65 女 2007/11/3 高中 159718.73 3 +浙江 浙江杭州 5360212 3/11/69 女 2003/7/3 高中 159708.21 10 +吉林 吉林四平 572130512 4/14/72 男 2013/8/2 大专 159687 6 +辽宁 辽宁营口 675897622 12/14/73 男 2014/10/7 本科 159247.13 10 +广东 广东广州 731123422 12/16/80 女 2015/3/31 本科 159174.5 39 +四川 四川青羊 250612 8/10/75 女 2001/12/31 本科 159112.12 11 +山东 山东济南 143691422 3/21/79 女 2007/6/25 中专 158754.47 16 +山东 山东威海 855916642 5/17/69 女 2015/8/10 中专 158747.5 6 +广东 广东惠州 18389612 3/6/63 男 2004/9/2 本科 158309.9 6 +湖北 湖北武汉 5072089212 9/14/76 女 2016/3/2 硕士 158303 3 +黑龙江 黑龙江牡丹江 5220151092 4/15/64 女 2016/8/19 大专 158211 2 +湖北 湖北武汉 20877142 3/15/72 男 2004/10/16 大专 158195.33 11 +江西 江西南昌 455535812 12/30/74 女 2012/3/9 高中 158035 11 +四川 四川青羊 882399042 6/12/80 女 2015/10/9 本科 157465 8 +深圳 深圳福田 106574892 11/12/69 女 2006/12/7 大专 157291.21 10 +河南 河南洛阳 57468332 6/8/67 女 2005/9/5 大专 157216.98 5 +浙江 浙江湖州 249478782 1/29/70 女 2008/9/2 大专 156926.74 8 +辽宁 辽宁阜新 714669292 11/28/71 女 2015/3/20 大专 156832 3 +山东 山东威海 199895732 9/21/67 女 2008/1/13 大专 156699.05 7 +黑龙江 黑龙江哈尔滨 429856772 9/6/71 女 2011/6/30 本科 156377.2 8 +浙江 浙江嘉兴 576959022 9/20/79 女 2013/9/6 大专 156279.35 12 +山西 山西朔州 583789632 9/5/63 女 2013/11/12 大专 156224.5 5 +吉林 吉林吉林 5201252432 12/28/71 男 2016/8/2 大专 155762.8 2 +北京 北京东城 120998862 11/23/76 女 2007/3/1 大专 155596.08 15 +山东 山东济南 235984202 12/18/79 女 2008/6/25 本科 155537.21 12 +云南 云南昆明 343298302 7/10/75 女 2009/11/16 大专 155521.82 0 +山东 山东威海 514048032 4/22/72 女 2013/4/3 中专 155406.14 10 +山东 山东威海 429915532 4/28/81 女 2011/6/30 高中 155158.19 3 +江苏 江苏泰州 375723932 12/17/68 男 2010/5/18 高中 154971.36 3 +佛山 佛山顺德龙江 281572802 3/13/79 女 2009/3/1 中专 154889.69 13 +辽宁 辽宁营口 9995692 11/15/67 女 2004/1/30 本科 154882.47 10 +四川 四川高新 5101017922 1/4/72 男 2016/3/21 本科 154832.5 13 +苏州 苏州张家港 457800312 5/10/63 女 2012/3/21 初中 154819.73 7 +北京 北京良乡 466952782 8/26/76 女 2012/6/4 大专 154800.78 27 +大连 大连明锐 608956042 7/10/67 女 2014/2/8 本科 154785 4 +陕西 陕西西安 5019027512 10/23/68 女 2015/11/15 本科 154703 3 +黑龙江 黑龙江七台河 847957202 12/24/77 女 2015/8/10 高中 154590 1 +深圳 深圳南山 523794782 5/7/69 女 2013/5/27 大专 154554.55 0 +湖北 湖北襄阳 340669392 9/5/82 男 2009/11/5 大专 154500.91 13 +福建 福建福州 362702072 12/31/79 女 2010/3/4 中专 154444.52 16 +山东 山东烟台 772574522 9/5/80 女 2015/6/25 大专 154252 3 +佛山 佛山顺德龙江 115370492 12/1/70 女 2007/1/15 高中 154209.64 2 +陕西 陕西宝鸡 717631212 3/1/71 女 2015/3/23 高中 154155.2 8 +黑龙江 黑龙江齐齐哈尔 57456052 4/4/68 女 2005/9/5 大专 153903.46 8 +四川 四川青羊 496122152 10/21/70 男 2012/12/29 本科 153839.67 10 +山西 山西忻州 591152422 11/21/66 女 2013/12/13 大专 153579.82 9 +北京 北京海淀 523528072 3/20/89 女 2013/5/31 本科 153567.5 10 +山东 山东威海 127250272 10/25/68 女 2007/3/25 大专 153489.14 14 +浙江 浙江台州 77977342 10/19/73 女 2006/3/1 高中 153452.46 21 +深圳 深圳罗湖 5785201502 4/23/74 女 2018/6/26 本科 153440.69 0 +山东 山东烟台 438457672 8/16/77 女 2011/9/20 中专 153217.1 36 +黑龙江 黑龙江佳木斯 5176421332 8/20/67 男 2016/6/20 本科 153205 1 +四川 四川青羊 61608902 7/17/72 女 2005/10/11 高中 153066.6 4 +苏州 苏州张家港 261870222 10/5/70 女 2008/11/7 大专 152957.93 7 +湖北 湖北武汉 230505722 7/8/76 女 2008/6/11 大专 152658.1 14 +湖北 湖北襄阳 570100352 7/26/86 男 2013/7/22 中专 152549 11 +浙江 浙江杭州 216639192 2/16/74 女 2008/4/16 中专 152548.68 8 +湖北 湖北荆门 381426142 2/8/68 女 2010/6/1 大专 152126.01 7 +陕西 陕西西安 398132332 3/15/75 女 2010/10/1 本科 152049.43 5 +四川 四川高新 13414282 3/3/75 女 2004/5/9 高中 152024.86 11 +湖北 湖北武汉 5044868492 6/12/79 女 2015/12/11 本科 151900.2 16 +宁波 宁波象山 365205922 11/19/69 女 2010/3/22 高中 151779.52 7 +河南 河南南阳 92585402 3/30/59 女 2006/8/1 高中 151752.25 11 +福建 福建龙岩 319383682 9/12/69 女 2009/7/28 高中 151742.9 1 +河南 河南郑州 139919032 8/8/74 女 2007/6/14 大专 151654.35 8 +四川 四川绵阳 7768462 4/2/70 女 2003/9/17 本科 151582.82 7 +山东 山东济南 5200682 4/20/76 女 2003/7/1 大专 151498.33 12 +青岛 青岛一支 4665162 9/17/61 女 2003/6/18 大专 151447.35 12 +青岛 青岛即墨 5123801082 1/10/77 男 2016/4/18 大专 151350 1 +辽宁 辽宁盘锦 9736792 3/3/78 女 2004/1/9 本科 151253.88 13 +浙江 浙江杭州 848360552 9/6/74 女 2015/8/10 高中 151109.69 7 +青岛 青岛一支 4639202 1/27/65 女 2003/6/18 大专 151004.53 15 +安徽 安徽淮南 51108342 6/15/57 女 2005/6/1 高中 150924.05 8 +云南 云南昆明 282270922 5/18/77 男 2009/3/3 大专 150876.03 8 +福建 福建龙岩 714879342 4/5/78 女 2015/3/20 高中 150791.2 28 +河北 河北沧州 176395772 7/9/55 女 2007/11/5 大专 150603.91 0 +苏州 苏州张家港 731636752 4/14/78 女 2015/3/31 高中 150511 5 +黑龙江 黑龙江哈尔滨 317233632 5/2/71 女 2009/7/24 大专 150484.8 11 +北京 北京平谷 133090092 11/18/74 男 2007/5/1 中专 150270.78 18 +四川 四川青羊 336343332 8/17/57 女 2009/10/12 高中 150213.8 15 +辽宁 辽宁葫芦岛 808196412 3/9/87 男 2015/7/28 大专 150000 0 +北京 北京海淀 361522022 8/30/88 女 2010/3/1 本科 149994.77 10 +山西 山西吕梁 456839522 10/13/84 女 2012/3/15 初中 149987.97 0 +浙江 浙江杭州 18468192 4/30/81 女 2004/9/6 大专 149963.83 10 +广西 广西南宁 494119622 7/10/84 女 2012/12/25 大专 149902.93 7 +深圳 深圳龙岗 212723322 5/20/75 女 2008/3/25 高中 149518.51 0 +山东 山东济宁 569117372 11/2/70 女 2013/7/9 中专 149032.01 7 +北京 北京海淀 430443242 9/11/89 女 2011/7/12 高中 148965.5 18 +河南 河南郑州 135311182 5/9/81 男 2007/5/17 大专 148768.15 4 +四川 四川青羊 208716592 10/19/86 女 2008/3/20 大专 148697.77 4 +湖北 湖北襄阳 77773432 6/15/77 女 2006/3/11 高中 148574.62 29 +山东 山东烟台 171747312 4/9/69 女 2007/10/25 大专 148380.15 7 +江西 江西抚州 298012282 11/10/72 女 2009/5/7 高中 147884.63 3 +北京 北京海淀 5147908802 11/19/89 女 2016/5/26 大专 147867.3 2 +北京 北京东城 583250342 8/10/83 女 2013/11/6 本科 147836.16 13 +山东 山东烟台 142868942 1/22/71 女 2007/6/22 高中 147750.19 5 +四川 四川高新 71962 3/21/76 女 2001/12/30 大专 147708.21 16 +北京 北京东城 445444742 1/14/90 女 2011/12/1 大专 147573.81 5 +山东 山东淄博 295287072 2/21/77 女 2009/4/25 大专 147551.38 9 +山东 山东东营 270555142 3/29/66 女 2008/12/16 大专 147398.64 5 +浙江 浙江金华 650098692 7/19/73 女 2014/8/1 高中 147357.35 17 +福建 福建宁德 477414132 9/30/85 女 2012/9/6 本科 147309.04 10 +山东 山东烟台 435444532 6/10/73 女 2011/8/25 中专 147203.45 9 +江苏 江苏盐城 417956202 4/8/77 男 2011/3/16 初中 146980.22 12 +江苏 江苏南京 626031112 3/31/77 女 2014/4/29 本科 146942.98 16 +湖南 湖南常德 585798302 4/11/65 男 2013/11/25 大专 146908.34 12 +北京 北京海淀 370252022 11/12/86 女 2010/5/1 本科 146850.73 6 +四川 四川青羊 7667692 6/11/78 女 2003/9/17 大专 146692.02 6 +陕西 陕西西安 354324202 5/16/72 女 2010/1/1 大专 146563.36 3 +苏州 苏州昆山 5160332972 2/1/74 男 2016/6/3 中专 146394 2 +浙江 浙江杭州 41048672 10/3/71 女 2005/4/29 高中 146354.86 15 +山西 山西忻州 656974112 7/21/64 女 2014/8/15 高中 146334.81 7 +黑龙江 黑龙江哈尔滨 435587312 3/13/77 女 2011/8/25 大专 146247 3 +广东 广东中山 162817172 2/26/75 女 2007/9/12 本科 146142.54 6 +山东 山东济南 593156622 1/29/81 女 2013/12/19 本科 146112.31 12 +北京 北京东城 2619922 4/9/72 女 2003/2/1 大专 146018.45 12 +山西 山西太原 191130562 11/21/71 女 2007/12/19 大专 145492.66 3 +广东 广东江门 324357342 4/18/83 女 2009/8/17 大专 145481.06 21 +山东 山东威海 31855862 1/28/67 女 2005/2/23 本科 145469.11 7 +山东 山东临沂 221480952 3/23/71 女 2008/5/5 大专 145455.6 10 +四川 四川绵阳 277876892 1/1/83 女 2009/1/20 大专 145422.99 12 +黑龙江 黑龙江哈尔滨 117159202 7/2/80 女 2007/1/24 本科 145022.88 15 +青岛 青岛一支 720521392 4/9/79 男 2015/3/24 本科 144950 9 +山东 山东枣庄 196519852 4/2/76 女 2008/1/1 中专 144824.02 7 +辽宁 辽宁铁岭 5077234782 11/12/74 女 2016/3/7 大专 144721.6 1 +四川 四川青羊 108039802 9/5/77 女 2006/12/18 大专 144632.14 5 +宁波 宁波城区 5183709972 7/28/79 女 2016/6/26 大专 144202.5 25 +天津 天津市区一支 619230502 3/7/86 女 2014/3/27 本科 144086.05 14 +陕西 陕西安康 486139662 2/19/72 女 2012/12/1 大专 144082.14 9 +大连 大连开发区 134110612 3/15/76 女 2007/5/8 初中 143941.1 9 +浙江 浙江嘉兴 5198625262 12/31/69 女 2016/8/1 高中 143936 15 +四川 四川绵阳 181627632 8/30/75 女 2007/11/21 中专 143802.84 8 +河北 河北保定 379605332 3/16/65 女 2010/6/8 高中 143730.32 15 +四川 四川青羊 144197912 7/3/78 女 2007/6/25 大专 143687.05 1 +广东 广东中山 600144392 2/20/75 女 2013/12/30 大专 143675.01 11 +天津 天津市区二支 312391172 9/9/71 女 2009/7/1 大专 143540.13 4 +河南 河南周口 214669462 9/4/70 女 2008/4/4 高中 143481.58 6 +深圳 深圳罗湖 556976322 10/21/77 女 2013/6/27 本科 143394.42 19 +青岛 青岛一支 191408582 6/10/73 男 2007/12/19 高中 143150.31 15 +黑龙江 黑龙江哈尔滨 5157795532 9/30/74 女 2016/6/1 高中 143115.7 4 +四川 四川内江 87053332 9/5/71 女 2006/6/13 中专 143038.56 24 +苏州 苏州常熟 5165157562 9/10/94 女 2016/6/7 大专 142917 9 +深圳 深圳南山 399999892 3/13/76 女 2010/10/12 本科 142681.65 1 +广西 广西南宁 230399512 10/4/73 女 2008/6/11 高中 142677.54 7 +广西 广西南宁 227187902 8/20/61 女 2008/5/27 大专 142512.78 10 +云南 云南玉溪 817816162 11/15/80 女 2015/7/31 大专 142483.1 10 +黑龙江 黑龙江牡丹江 45034882 4/7/68 女 2005/6/1 高中 142124.86 7 +山东 山东济南 747900652 5/13/78 女 2015/4/22 大专 142071.3 4 +云南 云南昆明 304332632 8/20/83 女 2009/6/1 高中 141997.93 7 +湖北 湖北荆州 5142796812 7/29/68 女 2016/5/19 大专 141830.5 11 +北京 北京海淀 507629282 9/25/85 女 2013/3/19 大专 141807.43 13 +广东 广东惠州 7197072 3/8/71 女 2003/9/5 大专 141792.03 11 +广东 广东惠州 7183392 9/7/70 女 2003/8/31 高中 141673.06 1 +陕西 陕西西安 244200172 4/12/80 女 2008/8/1 高中 141616.15 4 +北京 北京东城 328776632 10/23/73 女 2009/9/1 本科 141591.95 4 +浙江 浙江杭州 505016422 12/4/80 女 2013/2/28 硕士 141526.39 10 +云南 云南昆明 583595632 2/22/74 女 2013/11/11 本科 141448.73 6 +吉林 吉林吉林 240843412 7/20/74 女 2008/7/18 本科 141447.22 11 +辽宁 辽宁营口 90755382 11/11/59 男 2006/7/7 高中 141393.15 4 +山东 山东烟台 446548312 11/15/74 女 2011/12/9 初中 141237.47 8 +青岛 青岛一支 877183232 2/3/76 男 2015/9/24 大专 141000 0 +江西 江西南昌 5173171382 8/16/69 女 2016/6/16 高中 140835.5 3 +河南 河南郑州 187494112 8/15/68 女 2007/12/5 大专 140772.22 21 +湖北 湖北武汉 132338652 1/9/74 男 2007/4/25 中专 140757.2 5 +浙江 浙江杭州 12270102 3/16/69 女 2004/4/9 本科 140699.39 7 +河南 河南驻马店 12336672 8/3/62 女 2004/4/11 大专 140524.12 19 +苏州 苏州张家港 66952142 1/11/63 女 2005/11/28 高中 140427.27 3 +四川 四川青羊 702920982 5/28/72 女 2015/1/7 本科 140000 0 +苏州 苏州新区 882704692 9/3/74 男 2015/10/10 中专 140000 0 +江西 江西宜春 805145032 2/23/72 女 2015/7/27 大专 140000 0 +苏州 苏州昆山 731127192 6/1/77 女 2015/3/31 高中 139916 8 +福建 福建龙岩 5193718142 11/26/77 男 2016/7/27 高中 139817.5 30 +四川 四川巴中 331383352 2/18/63 女 2009/9/22 高中 139602.43 7 +宁波 宁波宁海 192653532 2/11/79 女 2007/12/23 初中 139559.86 11 +四川 四川成都 482626172 4/13/83 女 2012/11/9 大专 139494.05 22 +辽宁 辽宁沈阳 392867672 4/27/75 女 2010/8/25 高中 139408.32 11 +辽宁 辽宁沈阳 433451912 7/4/80 女 2011/8/9 本科 139011.95 5 +浙江 浙江金华 188412192 4/26/75 女 2007/12/10 高中 138952.4 8 +陕西 陕西西安 579971462 1/26/83 女 2013/9/29 中专 138937.6 6 +江西 江西赣州 658108382 11/15/75 女 2014/8/18 本科 138880.49 8 +山西 山西太原 5067538382 1/16/78 女 2016/2/23 本科 138863.9 4 +四川 四川青羊 272792282 10/28/79 男 2008/12/25 本科 138860.3 17 +佛山 佛山禅城 508611562 8/15/84 男 2013/3/22 本科 138688 3 +湖北 湖北襄阳 532456812 3/29/67 女 2013/6/10 高中 138422.58 11 +江苏 江苏泰州 451562582 3/30/72 女 2012/1/17 初中 138395.61 12 +吉林 吉林长春 451206682 7/31/73 女 2012/1/11 本科 138229.73 13 +广西 广西南宁 149123422 12/30/74 女 2007/7/11 大专 138222.15 13 +四川 四川泸州 689908332 11/19/75 女 2014/12/10 中专 138010 3 +浙江 浙江金华 686858622 5/24/79 女 2014/11/24 高中 137916.8 9 +江西 江西南昌 19112022 12/8/68 女 2004/9/19 高中 137874.12 7 +黑龙江 黑龙江哈尔滨 300794852 4/17/68 女 2009/5/19 高中 137807 13 +四川 四川高新 67222 8/20/70 男 2001/12/30 大专 137763.32 5 +陕西 陕西西安 146237982 6/23/64 女 2007/6/25 高中 137687.66 4 +山东 山东东营 134300842 10/18/75 女 2007/5/8 初中 137409.3 8 +湖北 湖北十堰 5069710462 2/9/68 男 2016/2/29 高中 137406 6 +山东 山东烟台 729135272 2/13/84 女 2015/3/27 本科 137273 12 +河北 河北唐山 414015072 10/19/71 女 2011/1/13 大专 137207.46 13 +福建 福建福州 653135422 2/6/78 女 2014/8/7 本科 137062.11 7 +浙江 浙江金华 5108741642 8/23/65 女 2016/3/24 高中 136935 12 +陕西 陕西西安 325350232 9/23/70 女 2009/8/21 中技 136827.68 5 +吉林 吉林长春 153754162 5/29/78 女 2007/8/1 大专 136775.6 8 +河南 河南郑州 4994402 6/13/74 女 2003/6/27 大专 136700.11 18 +山东 山东烟台 773128192 10/11/81 女 2015/6/25 高中 136605 5 +广西 广西玉林 284999902 7/14/71 女 2009/3/16 大专 136532.59 13 +安徽 安徽滁州 169505702 2/10/71 女 2007/10/1 高中 136163 10 +辽宁 辽宁辽阳 5137963082 2/15/63 女 2016/5/12 本科 136162.8 1 +北京 北京海淀 488328652 11/28/87 女 2012/12/10 本科 136089.2 16 +山东 山东烟台 438482932 1/1/82 女 2011/9/20 本科 136075.28 20 +江西 江西抚州 613783152 4/6/62 女 2014/3/15 高中 136044.44 12 +山东 山东威海 182661832 10/2/73 女 2007/11/23 初中 136001.02 18 +深圳 深圳福田第二 433007252 10/10/80 男 2011/8/4 大专 135966 11 +佛山 佛山禅城 5814782 11/26/71 男 2003/7/29 本科 135893.53 2 +黑龙江 黑龙江哈尔滨 5028774662 5/19/73 女 2015/11/24 高中 135785 4 +天津 天津市区二支 830683662 1/17/83 女 2015/8/5 本科 135743.5 12 +浙江 浙江杭州 5057025202 5/7/80 女 2016/1/5 大专 135542 16 +湖北 湖北十堰 853700022 9/27/86 男 2015/8/10 高中 135516 7 +重庆 重庆永川 516259212 10/31/69 女 2013/4/23 大专 135496.5 4 +四川 四川青羊 5171835122 2/10/81 女 2016/6/15 大专 135466 16 +广东 广东中山 5096136142 7/13/81 女 2016/3/16 大专 135450 4 +辽宁 辽宁锦州 741457342 7/25/82 男 2015/4/10 大专 135225.4 4 +上海 上海黄浦 452252192 11/15/76 女 2012/2/9 大专 135208.5 16 +河南 河南开封 872369102 2/12/84 女 2015/9/16 中专 135000 0 +浙江 浙江杭州 34030202 9/9/72 女 2005/3/15 大专 134973.14 11 +河南 河南郑州 342275682 12/3/72 女 2009/11/11 大专 134608.38 14 +苏州 苏州姑苏 5192552342 8/28/74 女 2016/7/26 高中 134546.7 10 +四川 四川高新 87158842 9/29/81 女 2006/6/14 本科 134519.1 35 +四川 四川青羊 197968712 11/2/71 女 2008/1/4 大专 134220 7 +黑龙江 黑龙江哈尔滨 32701232 9/24/71 男 2005/3/1 大专 134129.16 13 +苏州 苏州张家港 414506212 10/6/68 女 2011/1/21 高中 134123.53 3 +山东 山东烟台 92899292 10/15/68 女 2006/8/4 高中 134101.5 10 +湖南 湖南长沙 685345562 10/28/77 男 2014/11/20 大专 134061.8 39 +青岛 青岛一支 26287922 11/24/55 女 2004/12/17 本科 134047.38 7 +湖北 湖北武汉 101238222 5/2/77 女 2006/10/20 高中 134008.3 30 +深圳 深圳宝安 633335142 9/14/73 男 2014/6/5 硕士 133861.56 9 +青岛 青岛一支 240004882 9/10/71 女 2008/7/14 大专 133804.42 12 +云南 云南昆明 566755872 5/17/79 女 2013/6/30 大专 133761.36 6 +黑龙江 黑龙江牡丹江 468002062 2/10/63 男 2012/6/14 大专 133693 7 +青岛 青岛一支 5050606932 3/25/77 女 2015/12/22 本科 133623.31 6 +佛山 佛山顺德龙江 193004962 8/11/66 女 2007/12/24 高中 133616.4 14 +四川 四川高新 756013482 7/20/91 男 2015/5/22 本科 133597 13 +云南 云南昆明 269327912 12/4/83 女 2008/12/10 高中 133492.69 5 +河北 河北邢台 802569712 12/19/85 男 2015/7/25 大专 133319.6 3 +山西 山西长治 5078663472 5/15/75 女 2016/3/7 高中 133159 2 +北京 北京东城 77360172 4/9/72 女 2006/3/6 本科 133137.4 3 +山东 山东日照 593677492 1/19/66 女 2013/12/20 中专 132920 8 +安徽 安徽合肥 37062462 9/23/61 女 2005/3/1 大专 132895.08 10 +湖北 湖北武汉 838941642 8/11/66 女 2015/8/8 本科 132872 26 +重庆 重庆渝中 163551162 7/14/84 男 2007/9/17 本科 132841.49 18 +四川 四川青羊 615906542 1/5/77 女 2014/3/20 大专 132670 8 +吉林 吉林白山 531229312 3/17/74 女 2013/6/9 本科 132513 12 +深圳 深圳福田第二 492552272 2/29/72 女 2012/12/21 本科 132212.65 10 +江西 江西抚州 807611342 8/12/67 女 2015/7/28 高中 132020 3 +北京 北京良乡 758812802 11/12/71 女 2015/5/29 大专 131933 9 +四川 四川德阳 740746242 3/8/76 男 2015/4/10 高中 131918 8 +山东 山东烟台 13165292 5/14/70 女 2004/5/1 本科 131728.6 14 +四川 四川高新 260541252 8/28/70 女 2008/11/3 高中 131618.43 13 +湖南 湖南常德 527683022 8/28/77 女 2013/6/5 大专 131494.53 2 +安徽 安徽合肥 503742442 8/19/72 女 2013/2/20 大专 131403.75 0 +江苏 江苏南京 5027403022 5/7/78 女 2015/11/23 大专 131399 4 +四川 四川绵阳 637289252 6/25/67 女 2014/6/16 本科 131301.65 4 +辽宁 辽宁营口 734978162 7/9/54 男 2015/4/3 大专 131287.83 5 +重庆 重庆渝中 270849212 4/25/64 女 2008/12/18 中专 131244.18 14 +四川 四川青羊 663038632 12/31/80 女 2014/8/27 大专 130862.96 4 +浙江 浙江嘉兴 292061782 8/27/70 女 2009/4/10 高中 130748.1 16 +湖北 湖北十堰 361695502 11/6/64 女 2010/2/24 高中 130676 3 +安徽 安徽亳州 363068852 2/10/70 女 2010/3/1 大专 130661.09 31 +黑龙江 黑龙江哈尔滨 429921672 8/2/77 女 2011/7/1 大专 130577.3 4 +甘肃 甘肃酒泉 5086736212 7/30/69 女 2016/3/10 高中 130419 6 +河南 河南郑州 5185456872 5/19/80 女 2016/6/29 大专 130343.5 9 +山东 山东潍坊 831205232 7/19/82 女 2015/8/6 本科 130274.4 0 +青岛 青岛一支 252241262 6/18/85 女 2008/9/19 本科 130257.5 31 +四川 四川高新 73362 5/23/76 男 2001/12/30 大专 130125.14 11 +山东 山东德州 858349182 10/8/74 男 2015/8/12 高中 130119.8 43 +辽宁 辽宁沈阳 746569312 2/8/78 女 2015/4/17 大专 130000 0 +山东 山东东营 417197922 11/6/69 女 2011/3/8 小学 129955.68 3 +四川 四川成都 602178322 3/14/73 女 2013/12/31 高中 129840 3 +四川 四川绵阳 294856362 3/8/85 女 2009/4/24 大专 129759.58 5 +广西 广西梧州 350670302 12/24/71 女 2009/12/20 大专 129639.41 11 +四川 四川乐山 5159255032 1/12/88 女 2016/6/2 高中 129611 16 +青岛 青岛一支 5037056842 2/10/81 男 2015/11/30 本科 129430 7 +山东 山东烟台 366840272 12/22/74 女 2010/3/25 初中 129323.9 4 +深圳 深圳南山 5215022832 4/19/68 女 2016/8/13 大专 129299 5 +湖北 湖北十堰 699989492 11/18/68 男 2014/12/30 高中 129191 21 +山东 山东威海 200506762 4/1/78 女 2008/1/15 大专 129061.43 12 +宁波 宁波城区 829307242 7/27/79 女 2015/8/5 本科 128939 9 +山东 山东淄博 198284972 3/15/70 男 2008/1/5 大专 128918.8 14 +湖北 湖北十堰 427018512 4/13/56 女 2011/6/15 高中 128810.5 7 +山西 山西太原 195927942 10/4/72 女 2008/1/1 中专 128573.57 7 +四川 四川高新 1595632 4/28/80 女 2002/8/6 本科 128559.44 4 +宁波 宁波城区 375864342 4/6/78 女 2010/5/19 高中 128508 7 +深圳 深圳福田第二 49341822 12/1/75 女 2005/6/29 本科 128471.44 6 +云南 云南昆明 148598782 1/3/78 女 2007/7/1 大专 128355.52 10 +新疆 新疆乌鲁木齐 621087182 9/27/78 女 2014/3/31 高中 128257.4 14 +河南 河南南阳 370225362 12/18/69 女 2010/4/16 本科 128168.02 10 +山东 山东滨州 407501692 10/28/75 女 2010/12/3 大专 128154.05 9 +河北 河北石家庄 5144121232 7/16/79 女 2016/5/23 本科 128056.2 1 +陕西 陕西西安 544425082 6/25/84 女 2013/6/21 高中 127970.05 1 +湖北 湖北宜昌 810141852 11/13/75 女 2015/7/29 高中 127923 7 +山东 山东淄博 12915602 3/1/74 女 2004/4/26 大专 127639.25 22 +山东 山东济南 5199090322 5/26/84 女 2016/8/1 大专 127609.5 5 +浙江 浙江杭州 4748482 6/15/71 女 2003/6/20 本科 127606.6 7 +四川 四川高新 271617672 10/24/74 女 2008/12/23 大专 127536.68 9 +四川 四川高新 5217597382 11/4/76 男 2016/8/17 硕士 127488.5 16 +重庆 重庆永川 759031092 11/9/77 女 2015/5/29 高中 127486 8 +北京 北京海淀 507236812 12/10/90 女 2013/3/18 本科 127485.11 1 +青岛 青岛开发区 397596112 5/14/80 女 2010/9/25 大专 127442.96 5 +浙江 浙江金华 425466512 4/19/80 女 2011/5/30 高中 127441.17 13 +湖南 湖南益阳 843975732 1/9/93 女 2015/8/10 大专 127282.24 1 +四川 四川绵阳 168378272 5/9/75 女 2007/10/8 高中 127233.59 14 +辽宁 辽宁营口 698204552 7/19/67 女 2014/12/25 大专 127209.84 1 +黑龙江 黑龙江佳木斯 216967732 10/1/77 女 2008/4/18 大专 127183.64 6 +广西 广西玉林 606489032 5/17/85 女 2014/1/20 大专 127070.4 12 +福建 福建泉州 229916882 8/12/66 女 2008/6/1 高中 127016.8 5 +山东 山东临沂 5154395062 12/13/79 男 2016/5/31 高中 126964 30 +辽宁 辽宁铁岭 5009232312 2/9/82 女 2015/11/4 高中 126900 1 +江西 江西南昌 336650382 5/12/63 女 2009/10/14 本科 126881.31 11 +青岛 青岛一支 9461842 5/3/70 女 2003/12/22 大专 126794.29 3 +深圳 深圳龙岗 537312952 1/9/94 女 2013/6/17 高中 126739.87 0 +吉林 吉林四平 663159222 6/19/72 女 2014/8/27 大专 126722.05 8 +北京 北京海淀 422520642 1/8/84 男 2011/5/1 大专 126650.86 6 +湖北 湖北襄阳 58097782 2/2/68 女 2005/9/12 大专 126569.42 14 +重庆 重庆渝中 5159506152 2/12/95 男 2016/6/2 大专 126453 6 +湖北 湖北荆州 5176370582 9/30/79 女 2016/6/20 本科 126435 20 +山东 山东济南 756989622 3/2/88 女 2015/5/25 中专 126408 12 +浙江 浙江金华 380200312 8/11/80 男 2010/6/12 大专 126323.22 13 +辽宁 辽宁铁岭 5076841312 4/22/79 女 2016/3/6 本科 126210 2 +辽宁 辽宁沈阳 398146982 11/24/68 女 2010/9/26 本科 126198.49 10 +四川 四川青羊 661322362 7/16/77 女 2014/8/25 高中 126106.2 9 +山东 山东济南 617663152 1/3/70 女 2014/3/25 本科 125931.8 6 +北京 北京海淀 492426242 12/4/80 男 2012/12/21 本科 125921.27 0 +辽宁 辽宁沈阳 370805962 5/21/78 女 2010/4/21 大专 125911.16 7 +福建 福建泉州 421138082 11/2/71 男 2011/4/12 高中 125898.3 4 +深圳 深圳福田 495732752 9/15/77 女 2012/12/28 本科 125808.32 2 +黑龙江 黑龙江哈尔滨 444201192 5/12/68 女 2011/11/18 大专 125787.6 8 +江苏 江苏常州 5206244782 7/17/81 女 2016/8/5 高中 125723.4 7 +四川 四川青羊 579690372 9/21/76 女 2013/9/26 本科 125669.32 4 +浙江 浙江温州 5049657772 9/17/67 男 2015/12/22 高中 125631.5 12 +山东 山东烟台 594893412 3/13/71 女 2013/12/23 本科 125454 2 +佛山 佛山顺德龙江 8076212 11/7/74 女 2003/9/25 大专 125405.39 14 +浙江 浙江杭州 865168212 9/1/87 女 2015/8/31 大专 125276 11 +贵州 贵州贵阳 5084058292 1/21/78 女 2016/3/10 本科 125212 18 +四川 四川绵阳 506895292 11/28/85 男 2013/3/15 高中 125058.66 0 +广东 广东东莞 117754182 9/6/72 女 2007/1/25 大专 124828.43 6 +青岛 青岛一支 24708292 7/23/72 女 2004/11/30 大专 124810.67 9 +湖北 湖北黄石 246838292 6/7/75 女 2008/8/20 高中 124713.9 23 +吉林 吉林延边 440471782 4/20/76 女 2011/9/29 高中 124648.65 7 +福建 福建福州 617733492 4/18/79 女 2014/3/25 中专 124590 1 +陕西 陕西咸阳 5075772512 2/6/76 女 2016/3/5 高中 124552 2 +山东 山东烟台 508782672 3/7/82 女 2013/3/22 大专 124531.25 17 +北京 北京海淀 808836472 9/11/81 女 2015/7/28 本科 124510 1 +江西 江西赣州 614782182 10/8/64 男 2014/3/17 大专 124505.59 2 +苏州 苏州太仓 368455772 10/12/66 女 2010/4/1 高中 124468.43 2 +四川 四川高新 835161712 3/10/86 女 2015/8/7 高中 124394 2 +河北 河北保定 449890692 2/19/73 女 2012/1/1 大专 124389.86 2 +陕西 陕西安康 663410582 12/22/78 女 2014/8/27 大专 124328.79 4 +天津 天津滨海新区 335814922 1/20/70 女 2009/10/9 高中 124220.82 7 +大连 大连明锐 242941542 10/10/83 男 2008/7/25 大专 124210.14 13 +四川 四川高新 638771882 11/29/77 男 2014/6/20 大专 124207.88 8 +辽宁 辽宁鞍山 545958932 3/6/87 女 2013/6/24 大专 124094 2 +河南 河南南阳 277866982 10/17/60 女 2009/1/20 大专 124000 0 +湖北 湖北武汉 68814262 10/28/78 女 2005/12/7 大专 123963.3 5 +黑龙江 黑龙江伊春 430755732 3/4/69 女 2011/7/18 中专 123949 3 +四川 四川青羊 5204856872 1/20/87 女 2016/8/4 大专 123948 22 +四川 四川青羊 98622 11/3/63 女 2001/12/30 大专 123731.22 10 +云南 云南昆明 147469952 11/23/67 女 2007/7/1 本科 123724.02 4 +四川 四川青羊 338606432 12/8/85 女 2009/10/25 高中 123703.85 12 +四川 四川青羊 151110872 7/9/79 女 2007/7/20 大专 123698.3 9 +黑龙江 黑龙江牡丹江 537686302 3/22/87 男 2013/6/17 初中 123616.03 0 +湖南 湖南长沙 141246602 11/28/67 女 2007/7/1 大专 123614.78 6 +辽宁 辽宁营口 585925032 10/5/75 女 2013/11/25 大专 123583.9 9 +江西 江西南昌 275395232 9/23/60 女 2009/1/3 高中 123536.48 5 +新疆 新疆石河子 568929512 12/26/62 女 2013/7/5 大专 123516.43 9 +北京 北京海淀 129431722 2/22/85 女 2007/7/1 本科 123514.61 11 +黑龙江 黑龙江哈尔滨 313953082 5/27/80 女 2009/7/10 大专 123482 15 +佛山 佛山禅城 6438792 10/18/74 女 2003/8/11 中专 123457.67 11 +河北 河北秦皇岛 564170372 5/10/72 女 2013/6/29 大专 123404.92 2 +青岛 青岛开发区 46686952 3/26/76 女 2005/6/8 高中 123387.65 6 +佛山 佛山顺德龙江 86880822 12/3/79 女 2006/6/9 本科 123296.67 10 +四川 四川青羊 917332 8/14/70 女 2002/4/2 大专 123129.59 6 +江西 江西新余 807811482 6/27/64 女 2015/7/28 高中 123082.19 1 +山西 山西太原 155330722 12/8/75 女 2007/8/1 大专 123059.55 9 +大连 大连银洲 629864632 4/20/74 女 2014/5/22 大专 123046.05 12 +辽宁 辽宁本溪 701961592 7/26/72 女 2014/12/31 中专 122871.03 5 +四川 四川青羊 593491032 9/9/75 女 2013/12/19 大专 122756.66 1 +辽宁 辽宁沈阳 468874362 5/16/70 女 2012/6/21 本科 122744 6 +浙江 浙江杭州 249375642 7/2/63 女 2008/9/1 本科 122679.14 6 +苏州 苏州新区 628306492 1/22/85 女 2014/5/13 高中 122660 7 +陕西 陕西汉中 5175896452 2/5/85 女 2016/6/20 本科 122601.5 17 +河北 河北沧州 516546442 3/1/62 男 2013/4/24 高中 122567.2 13 +大连 大连海川 5376262 2/9/63 男 2003/7/1 本科 122396.61 3 +青岛 青岛城阳 838170112 11/5/85 女 2015/8/8 大专 122350 1 +山东 山东济南 154026042 12/2/79 女 2007/7/25 中专 122255.61 15 +四川 四川乐山 701436952 2/27/78 女 2014/12/31 大专 122195.8 1 +北京 北京东城 96592132 10/2/66 女 2006/9/8 大专 122187.12 11 +深圳 深圳福田第二 314128932 3/8/81 男 2009/7/10 大专 122153.9 8 +四川 四川高新 98609312 6/17/73 女 2006/9/25 本科 122053.93 13 +辽宁 辽宁葫芦岛 5077622782 10/12/83 男 2016/3/7 大专 121996.8 3 +浙江 浙江绍兴 5199166482 10/23/76 男 2016/8/1 高中 121841.5 21 +广东 广东广州 101004582 8/21/80 男 2006/10/18 中专 121672.97 28 +四川 四川青羊 500302 5/22/63 女 2001/12/31 高中 121583.04 6 +广西 广西北海 378004482 8/11/78 女 2010/5/28 大专 121578.93 17 +广东 广东广州 468368842 4/20/82 女 2012/6/18 高中 121397.91 9 +浙江 浙江温州 759932422 4/7/75 女 2015/6/2 高中 121387.29 7 +天津 天津市区一支 554003792 8/28/85 女 2013/6/26 大专 121370.9 3 +山东 山东济南 438908202 8/28/76 女 2011/9/22 中专 121307.38 3 +苏州 苏州张家港 5029172632 12/14/79 女 2015/11/24 中专 121264 2 +浙江 浙江金华 321644412 4/4/73 女 2009/8/3 高中 121204.04 7 +山西 山西阳泉 322728162 10/18/73 女 2009/8/6 中专 121194.95 4 +福建 福建漳州 5178546262 2/27/67 女 2016/6/21 中专 121112.1 5 +河南 河南洛阳 378470362 8/29/73 女 2010/5/31 高中 121105.68 5 +河南 河南南阳 5209635212 6/16/86 女 2016/8/8 本科 120969.1 5 +山东 山东淄博 15830072 3/11/72 男 2004/6/1 中专 120942.43 6 +四川 四川高新 5205980022 8/13/77 女 2016/8/5 硕士 120914 11 +吉林 吉林延边 5106746322 10/13/68 男 2016/3/23 本科 120747.5 6 +河北 河北秦皇岛 5060898902 8/17/78 男 2016/1/14 大专 120610 1 +辽宁 辽宁阜新 5079832942 7/22/75 男 2016/3/7 大专 120540 2 +深圳 深圳罗湖 5046280912 10/31/76 女 2015/12/14 本科 120530 5 +四川 四川青羊 264292 3/17/65 女 2001/12/31 硕士 120512.1 9 +河南 河南驻马店 5144515602 7/9/78 女 2016/5/23 大专 120506 17 +辽宁 辽宁沈阳 824900232 4/3/73 女 2015/8/3 大专 120471 6 +苏州 苏州昆山 586992032 8/3/87 女 2013/11/29 大专 120443.76 7 +浙江 浙江杭州 522446692 4/16/72 女 2013/5/24 高中 120436.22 3 +上海 上海黄浦 515279302 2/27/89 女 2013/4/16 大专 120405.5 13 +广东 广东江门 239711512 4/12/66 女 2008/7/10 初中 120285.23 3 +湖南 湖南岳阳 412580862 3/21/78 女 2011/1/1 大专 120155.75 19 +浙江 浙江嘉兴 269895262 6/14/74 女 2008/12/12 大专 120026.35 7 +吉林 吉林吉林 830121482 4/3/70 男 2015/8/5 大专 120017.5 6 +辽宁 辽宁盘锦 449985322 4/9/79 女 2012/1/1 大专 120000 0 +北京 北京海淀 5171876872 9/6/86 女 2016/6/15 本科 119975 7 +苏州 苏州张家港 181629032 7/11/75 女 2007/11/21 高中 119915.16 9 +北京 北京东城 710327182 4/11/71 女 2015/2/27 本科 119901 19 +河北 河北廊坊 304996282 3/20/64 女 2009/6/1 高中 119676.62 6 +山东 山东潍坊 24927552 1/19/70 男 2004/11/30 大专 119650.8 37 +青岛 青岛一支 756701692 4/17/75 女 2015/5/25 大专 119589 7 +浙江 浙江杭州 5123665102 1/5/77 女 2016/4/18 大专 119530.5 7 +辽宁 辽宁锦州 5013000842 6/5/81 男 2015/11/8 中专 119487.1 3 +江西 江西景德镇 400221252 9/14/71 女 2010/10/12 高中 119461.75 3 +四川 四川高新 192289122 7/27/80 女 2007/12/21 本科 119399.47 10 +黑龙江 黑龙江哈尔滨 224188442 3/28/74 女 2008/5/19 高中 119263.24 4 +贵州 贵州六盘水 503203152 2/21/79 女 2013/2/6 高中 119142.06 16 +北京 北京海淀 97662202 11/24/82 男 2006/10/1 本科 119101.82 10 +山东 山东东营 5100195672 7/2/78 女 2016/3/19 中专 119052.9 29 +大连 大连开发区 578664682 9/15/62 女 2013/9/23 高中 119000 0 +福建 福建厦门 323552312 9/16/74 女 2009/8/11 本科 118960.7 33 +安徽 安徽阜阳 660929892 12/23/93 女 2014/8/25 高中 118874 26 +四川 四川高新 11717132 2/9/63 女 2004/3/31 本科 118839.4 5 +陕西 陕西西安 448403592 12/27/88 女 2011/12/23 本科 118782.78 3 +佛山 佛山南海 626802642 6/25/82 女 2014/5/5 大专 118736.49 6 +辽宁 辽宁营口 5059305152 5/20/80 女 2016/1/8 本科 118704 3 +四川 四川高新 279445642 12/10/83 女 2009/2/17 大专 118554.94 23 +辽宁 辽宁铁岭 725052062 9/20/69 女 2015/3/25 大专 118497.65 18 +四川 四川青羊 75431752 7/13/67 女 2006/2/22 中专 118433.89 9 +山东 山东烟台 13177572 12/6/64 女 2004/5/1 大专 118417.28 14 +山东 山东威海 756037072 11/29/82 女 2015/5/22 中专 118365.9 7 +四川 四川高新 416925072 5/30/90 女 2011/3/5 高中 118292.77 3 +山东 山东济南 302534712 8/13/77 女 2009/5/21 高中 118061.3 1 +河南 河南安阳 129017762 7/2/66 女 2007/4/5 高中 117971.74 3 +河北 河北唐山 432345972 3/16/75 女 2011/8/1 初中 117921.67 6 +辽宁 辽宁营口 695117302 9/15/75 女 2014/12/22 大专 117907 8 +黑龙江 黑龙江哈尔滨 499223082 3/14/68 女 2013/1/11 中专 117898.3 9 +北京 北京东城 5117783482 11/2/72 男 2016/4/7 本科 117897.4 14 +四川 四川高新 121481492 6/30/70 女 2007/3/6 大专 117884.52 10 +四川 四川内江 7652342 3/5/63 女 2003/9/17 大专 117865.42 3 +陕西 陕西渭南 555204362 3/27/58 女 2013/6/27 中专 117861.36 0 +青岛 青岛一支 548554072 10/9/81 女 2013/6/25 本科 117825.5 12 +湖北 湖北宜昌 5019721952 11/10/62 女 2015/11/16 高中 117752 5 +深圳 深圳福田第二 353482602 6/21/70 女 2009/12/30 大专 117697.48 5 +河南 河南驻马店 15007592 3/18/72 女 2004/6/28 大专 117693.12 18 +天津 天津市区二支 5172990052 1/31/74 女 2016/6/15 大专 117693 15 +北京 北京东城 5113247122 6/18/79 男 2016/3/28 大专 117674 12 +河南 河南郑州 252926402 9/29/74 女 2008/9/23 大专 117591.5 12 +河北 河北石家庄 258247722 9/5/77 男 2008/10/22 大专 117576.56 16 +苏州 苏州新区 20446432 8/10/68 女 2004/10/8 高中 117321.4 2 +山东 山东枣庄 362968782 6/20/73 女 2010/3/8 中专 117176.97 14 +广东 广东广州 617810672 7/28/75 女 2014/3/25 大专 117142.8 20 +四川 四川绵阳 513333162 12/4/73 女 2013/4/1 高中 117104.3 7 +天津 天津市区二支 275442682 4/22/84 女 2009/1/4 本科 116975.14 10 +深圳 深圳福田第二 613156072 10/14/80 女 2014/3/13 大专 116880.38 12 +山东 山东淄博 184641472 6/5/73 女 2007/11/25 高中 116832.24 13 +广西 广西南宁 393798732 8/23/77 女 2010/9/1 本科 116821.08 5 +北京 北京海淀 390076862 9/17/79 男 2010/8/10 本科 116820.59 10 +苏州 苏州张家港 776940222 12/18/68 女 2015/6/29 高中 116686 2 +河北 河北唐山 475549912 4/7/77 男 2012/8/24 高中 116665.97 11 +广东 广东珠海 115948722 10/5/69 女 2007/1/17 大专 116649.01 3 +苏州 苏州昆山 5206229342 8/5/81 女 2016/8/5 本科 116429.5 12 +福建 福建宁德 426054652 4/17/64 女 2011/6/3 大专 116350.2 18 +山东 山东威海 467064162 1/12/66 女 2012/6/4 高中 116261.97 3 +青岛 青岛一支 163237272 2/3/73 女 2007/9/17 大专 116159.72 1 +北京 北京平谷 7539292 10/20/57 女 2003/9/11 大专 116105.54 3 +吉林 吉林吉林 416110132 11/12/76 男 2011/2/25 大专 116067.88 9 +北京 北京海淀 250532802 1/2/87 女 2008/9/9 大专 115996.82 25 +广西 广西南宁 711303322 4/5/82 女 2015/3/6 大专 115990 3 +河北 河北沧州 327033702 4/5/89 男 2009/8/25 高中 115879.4 18 +黑龙江 黑龙江哈尔滨 299973772 10/1/73 女 2009/5/15 高中 115869.13 11 +青岛 青岛一支 27345712 2/8/63 女 2004/12/29 大专 115847.93 6 +四川 四川高新 755757652 10/25/69 女 2015/5/21 大专 115785.52 15 +青岛 青岛一支 357117382 10/23/80 女 2010/1/13 本科 115770.27 19 +苏州 苏州张家港 70478612 9/19/64 女 2005/12/23 高中 115629.53 3 +黑龙江 黑龙江鹤岗 118691382 9/27/59 女 2007/2/1 大专 115588.44 7 +山东 山东烟台 851288972 11/7/75 女 2015/8/10 大专 115525 4 +苏州 苏州新区 464456742 5/25/71 女 2012/5/11 本科 115413.03 6 +湖北 湖北荆州 251653122 5/15/77 女 2008/9/17 中专 115386.93 10 +江苏 江苏泰州 162457502 11/1/58 女 2007/9/10 高中 115315.54 4 +河北 河北唐山 304664942 3/19/60 男 2009/5/31 高中 115231.25 3 +辽宁 辽宁沈阳 5013738762 10/10/77 女 2015/11/9 大专 115221 4 +湖北 湖北襄阳 242083892 12/23/79 女 2008/7/24 大专 115149.03 16 +青岛 青岛一支 322679312 8/6/75 女 2009/8/6 本科 115134.99 9 +河南 河南南阳 12555932 5/27/71 女 2004/4/15 中专 115101.6 2 +山东 山东济南 5088630932 9/14/79 男 2016/3/11 本科 115000 19 +四川 四川高新 116611672 10/5/70 男 2007/1/22 大专 114965.9 11 +湖北 湖北十堰 5194118882 1/21/88 女 2016/7/27 高中 114960.9 24 +湖北 湖北襄阳 5126069262 2/29/84 女 2016/4/21 高中 114871.5 4 +辽宁 辽宁盘锦 5079899062 9/16/69 女 2016/3/7 大专 114866.9 18 +佛山 佛山顺德龙江 185701632 11/7/69 女 2007/12/1 高中 114819.34 7 +江苏 江苏泰州 65132032 5/10/58 女 2005/11/11 高中 114800.52 8 +湖北 湖北武汉 334930342 4/16/76 女 2009/10/1 大专 114734.55 10 +浙江 浙江绍兴 5143414122 6/17/88 女 2016/5/20 本科 114734.5 2 +山东 山东烟台 5160400962 5/3/81 女 2016/6/3 中专 114561 9 +上海 上海陆家嘴 504625352 3/23/80 女 2013/2/26 大专 114420.01 11 +山东 山东济宁 5163305492 4/20/82 男 2016/6/6 高中 114406.1 2 +深圳 深圳南山 713445832 10/18/74 女 2015/3/18 中专 114025 11 +黑龙江 黑龙江哈尔滨 264689362 12/5/71 男 2008/11/21 本科 114019.9 11 +江苏 江苏南京 18620182 6/14/64 女 2004/9/9 高中 113860.63 3 +广西 广西南宁 5160062812 9/10/79 女 2016/6/2 本科 113717 10 +四川 四川南充 285563482 10/22/81 男 2009/3/18 本科 113700 2 +山东 山东烟台 43331592 12/13/73 女 2005/5/17 中专 113669.32 19 +四川 四川高新 663763412 8/19/81 女 2014/8/28 本科 113621.66 8 +北京 北京平谷 703275212 6/27/75 女 2015/1/8 中专 113608 4 +山东 山东潍坊 336470062 8/7/72 女 2009/10/13 高中 113558.83 27 +江西 江西赣州 810862862 4/17/84 女 2015/7/29 大专 113505.13 23 +深圳 深圳宝安 93040672 7/2/68 女 2006/8/8 大专 113463.16 4 +浙江 浙江杭州 6751982 11/27/70 女 2003/8/22 大专 113447.63 6 +广西 广西桂林 477409662 8/26/63 女 2012/9/6 大专 113420.3 15 +广东 广东广州 505128772 6/30/69 女 2013/3/1 高中 113305.92 15 +江苏 江苏无锡 659387802 8/7/72 女 2014/8/21 大专 113259.42 1 +宁波 宁波城区 5157707602 9/15/70 女 2016/6/1 大专 113243 8 +北京 北京良乡 251858702 3/28/86 男 2008/10/1 本科 113241.55 4 +山东 山东枣庄 250488422 8/29/67 女 2008/9/10 大专 113076.61 8 +湖北 湖北武汉 470917502 4/6/82 女 2012/6/28 本科 113040.08 10 +青岛 青岛即墨 583620892 5/15/78 男 2013/11/11 高中 113013.05 0 +辽宁 辽宁铁岭 5058818352 12/8/71 女 2016/1/8 高中 112759 4 +福建 福建福州 5002276422 11/4/71 女 2015/10/17 高中 112754.3 25 +吉林 吉林吉林 5137617732 4/15/72 女 2016/5/12 高中 112750 3 +黑龙江 黑龙江七台河 221284582 5/26/69 女 2008/5/5 大专 112708.37 3 +四川 四川青羊 370385862 1/29/76 女 2010/4/19 本科 112708.06 13 +河南 河南南阳 533556612 7/24/82 女 2013/6/13 高中 112702.96 0 +四川 四川青羊 16892602 10/10/75 女 2004/8/4 高中 112692.04 3 +四川 四川高新 157076722 4/15/75 女 2007/8/10 大专 112680.56 13 +北京 北京良乡 37858282 7/25/76 女 2005/4/4 大专 112668 2 +湖北 湖北武汉 838152662 12/19/74 女 2015/8/8 大专 112570 19 +上海 上海陆家嘴 5132689772 8/19/82 女 2016/5/4 本科 112449 16 +福建 福建厦门 218254692 4/13/63 女 2008/4/23 高中 112385.02 11 +四川 四川高新 5027434802 10/23/82 女 2015/11/23 大专 112320 7 +安徽 安徽合肥 206267032 3/2/62 女 2008/3/1 本科 112250.77 10 +福建 福建福州 92683102 11/15/69 女 2006/8/2 大专 112187.01 29 +湖北 湖北十堰 590788982 11/24/76 女 2013/12/12 高中 112143 6 +山西 山西晋中 669865202 11/7/66 女 2014/9/17 高中 112100 2 +青岛 青岛一支 875811552 10/27/76 女 2015/9/22 大专 112075.9 5 +福建 福建福州 631175182 8/3/76 女 2014/5/26 中专 112058.88 9 +辽宁 辽宁沈阳 482442082 3/26/81 女 2012/11/7 本科 112043 10 +江西 江西南昌 816538412 12/8/90 女 2015/7/30 大专 112025 16 +山东 山东枣庄 302881402 2/22/62 女 2009/5/24 中专 111838.58 1 +苏州 苏州园区 788728442 6/8/80 女 2015/7/14 大专 111832 12 +苏州 苏州吴江 434891562 7/13/62 女 2011/8/22 大专 111826.05 11 +山西 山西吕梁 5043858612 11/4/86 女 2015/12/10 中专 111783.6 3 +重庆 重庆渝中 5172203182 11/15/83 女 2016/6/15 本科 111744.8 17 +山东 山东烟台 750405902 4/10/83 女 2015/4/29 大专 111627.3 6 +山西 山西朔州 850148562 11/24/73 女 2015/8/10 本科 111607 4 +山东 山东东营 145756752 11/19/68 女 2007/6/25 本科 111504.32 15 +山东 山东威海 207748962 1/5/60 女 2008/3/17 中专 111388 10 +湖北 湖北武汉 5217393412 8/31/75 女 2016/8/16 本科 111355.4 15 +四川 四川青羊 77035672 1/19/77 女 2006/3/1 大专 111340.62 1 +云南 云南昆明 346055612 5/21/57 女 2009/11/26 大专 111324.62 13 +吉林 吉林辽源 548145552 1/1/63 女 2013/6/24 大专 111301.19 2 +四川 四川高新 153316612 9/2/71 女 2007/7/25 大专 111286.1 10 +陕西 陕西宝鸡 500675982 12/23/68 女 2013/1/23 大专 111272.71 9 +四川 四川青羊 1511612 2/26/63 女 2002/7/23 大专 111137.63 3 +江苏 江苏泰州 549008642 12/23/78 女 2013/6/25 中专 111114.04 4 +吉林 吉林长春 572624722 12/5/76 女 2013/8/7 大专 111072.88 1 +北京 北京东城 11565142 5/4/72 女 2004/4/1 大专 111005.53 15 +江苏 江苏泰州 757105742 4/7/79 女 2015/5/25 高中 111000 2 +湖南 湖南永州 499297192 4/9/66 女 2013/1/14 高中 110996.95 8 +福建 福建漳州 195533802 3/31/79 女 2008/1/1 本科 110918.48 38 +新疆 新疆库尔勒 407267082 2/25/65 女 2010/12/2 大专 110898.78 16 +北京 北京海淀 1902682 4/11/71 女 2002/9/6 硕士 110861.86 1 +上海 上海黄浦 430923772 12/8/71 女 2011/7/20 本科 110840.03 1 +北京 北京海淀 216382662 10/3/85 女 2008/4/14 高中 110774.87 16 +四川 四川高新 754930432 3/2/74 女 2015/5/19 本科 110691.7 11 +北京 北京海淀 587594822 10/3/83 女 2013/12/2 硕士 110614 1 +深圳 深圳福田第二 590897292 11/3/84 女 2013/12/12 本科 110611 9 +深圳 深圳福田第二 446183202 1/30/77 女 2011/12/6 大专 110532.92 8 +浙江 浙江衢州 806829202 7/23/81 女 2015/7/27 高中 110520 1 +河北 河北保定 5073952152 9/11/80 女 2016/3/4 中专 110476.2 3 +四川 四川青羊 839452 6/28/73 女 2002/3/21 中专 110409.58 11 +河南 河南三门峡 203772662 3/28/66 女 2008/2/10 高中 110374.33 3 +四川 四川青羊 5028789132 7/30/81 女 2015/11/24 大专 110367 20 +新疆 新疆乌鲁木齐 251991572 2/10/71 女 2008/9/18 大专 110280.5 32 +湖北 湖北荆州 216740932 8/29/71 女 2008/4/17 大专 110229.4 7 +四川 四川青羊 346132792 6/12/66 女 2009/11/26 中专 110126.02 12 +青岛 青岛一支 881393172 9/4/73 女 2015/10/4 大专 110072.8 3 +黑龙江 黑龙江牡丹江 45725192 8/24/79 男 2005/6/1 大专 110058 4 +佛山 佛山顺德龙江 818578482 1/31/91 男 2015/7/31 大专 110040 3 +广东 广东中山 7239082 8/14/73 女 2003/8/31 中专 110014.67 11 +河南 河南南阳 260606152 9/13/66 男 2008/11/3 高中 110002.13 15 +天津 天津市区二支 5074564062 8/4/66 女 2016/3/4 大专 110000 0 +青岛 青岛即墨 200769432 10/9/71 女 2008/1/16 大专 109956.1 6 +天津 天津市区一支 24772492 9/9/75 男 2004/11/30 大专 109888.86 13 +山东 山东枣庄 858116242 11/8/83 女 2015/8/11 中专 109822 2 +重庆 重庆渝中 766677342 11/12/78 男 2015/6/19 中专 109782.9 2 +吉林 吉林长春 763437402 11/10/70 女 2015/6/11 本科 109712 3 +新疆 新疆库尔勒 5198654272 8/22/64 女 2016/8/1 大专 109697 20 +山东 山东烟台 723457352 7/7/82 女 2015/3/25 大专 109687.5 6 +山东 山东烟台 829712962 3/11/71 女 2015/8/5 中专 109665 16 +辽宁 辽宁鞍山 585733402 10/14/77 女 2013/11/25 大专 109620.09 13 +青岛 青岛开发区 202435182 8/19/68 女 2008/1/25 中专 109573.74 5 +上海 上海黄浦 484499872 9/30/66 女 2009/1/12 高中 109560.2 10 +重庆 重庆渝中 5079032432 1/14/86 女 2016/3/7 本科 109559.5 8 +辽宁 辽宁沈阳 450152662 4/4/79 女 2012/1/1 本科 109498.7 14 +黑龙江 黑龙江双鸭山 377039922 12/25/57 男 2010/5/25 高中 109477.96 0 +黑龙江 黑龙江牡丹江 5064313842 8/18/71 男 2016/2/1 高中 109419 4 +浙江 浙江温州 208714222 3/15/82 女 2008/3/20 大专 109410 5 +辽宁 辽宁营口 754398952 12/4/86 女 2015/5/15 中专 109353.22 0 +青岛 青岛即墨 26359662 10/20/76 女 2004/12/17 高中 109351.51 5 +辽宁 辽宁沈阳 9165402 7/13/66 女 2003/11/28 大专 109349.33 13 +四川 四川成都 3289712 10/10/71 女 2003/3/25 本科 109300.68 5 +河南 河南南阳 627531192 7/4/78 女 2014/5/9 高中 109300 0 +广西 广西钦州 871876562 1/1/85 女 2015/9/15 中专 109270 1 +宁波 宁波城区 5115497162 2/17/77 女 2016/4/1 大专 109141 8 +吉林 吉林吉林 669111392 2/22/81 男 2014/9/15 高中 109060 1 +佛山 佛山禅城 658256602 2/23/69 女 2014/8/19 大专 109039.27 0 +北京 北京东城 868741162 1/17/79 女 2015/9/9 大专 109000 0 +山东 山东济南 713605362 2/6/82 女 2015/3/18 硕士 108910 2 +深圳 深圳宝安 350445872 8/13/72 女 2009/12/18 高中 108881.11 15 +深圳 深圳南山 5718068432 1/27/74 男 2018/5/15 高中 108840.07 1 +深圳 深圳宝安 830091752 1/17/87 女 2015/8/5 高中 108831.3 3 +青岛 青岛一支 5214180642 10/10/92 女 2016/8/12 本科 108696.5 20 +苏州 苏州张家港 5203446252 12/8/65 女 2016/8/3 中专 108606 15 +辽宁 辽宁阜新 472929242 12/27/72 女 2012/7/27 大专 108570.14 2 +福建 福建泉州 180284982 2/10/69 女 2007/11/17 中专 108564.6 14 +辽宁 辽宁葫芦岛 72833272 11/12/70 女 2005/12/31 大专 108427.75 19 +河南 河南三门峡 170579542 2/14/76 女 2007/10/22 大专 108416.25 6 +四川 四川乐山 7654712 3/16/69 女 2003/9/17 大专 108406.78 3 +四川 四川内江 7783812 4/10/72 女 2003/9/17 大专 108391.73 3 +浙江 浙江杭州 273777632 3/25/75 女 2008/12/30 本科 108366.45 7 +北京 北京良乡 708159682 12/21/69 女 2015/2/4 大专 108315.94 2 +浙江 浙江嘉兴 547521542 3/7/72 女 2013/6/24 初中 108284.44 1 +上海 上海黄浦 486035822 2/20/78 男 2012/11/27 本科 108261.46 2 +湖南 湖南长沙 5113140152 4/4/75 男 2016/3/28 大专 108236 3 +浙江 浙江温州 498758872 8/10/81 女 2013/1/7 高中 108232.64 7 +黑龙江 黑龙江哈尔滨 655825462 2/3/79 女 2014/8/13 大专 108207.02 2 +湖北 湖北武汉 81850502 4/13/76 女 2006/4/14 高中 108122.68 18 +青海 西宁 5193011032 5/17/77 女 2016/7/26 高中 108078.7 7 +安徽 安徽芜湖 391489852 11/30/81 女 2010/8/1 大专 108043.63 7 +辽宁 辽宁盘锦 335956032 3/15/61 女 2009/10/5 本科 107825.86 4 +重庆 重庆渝中 481706692 7/31/79 女 2012/10/30 大专 107787.04 9 +宁波 宁波城区 643443932 5/12/79 女 2014/6/27 高中 107712.5 17 +河北 河北沧州 149788742 10/1/58 女 2007/7/16 高中 107667.85 4 +辽宁 辽宁阜新 98866812 11/22/71 女 2006/9/25 本科 107657.28 15 +山东 山东烟台 270959192 4/24/67 女 2008/12/18 高中 107644.39 14 +山西 山西长治 622943162 3/6/90 女 2014/4/10 高中 107622.7 2 +浙江 浙江温州 511523932 10/23/78 女 2013/3/28 大专 107585.15 2 +深圳 深圳福田 276043802 6/5/68 男 2009/1/6 硕士 107545.11 4 +辽宁 辽宁本溪 708549082 11/18/78 女 2015/2/7 大专 107470.9 4 +河南 河南许昌 238263352 10/24/64 男 2008/7/2 大专 107394.5 16 +深圳 深圳南山 508111212 1/12/73 男 2013/3/20 本科 107365.48 6 +福建 福建福州 83177102 12/7/74 女 2006/4/27 本科 107363.85 17 +浙江 浙江杭州 142648982 11/19/75 女 2007/6/22 高中 107316.42 10 +黑龙江 黑龙江佳木斯 63367882 9/5/70 女 2005/11/1 本科 107265.38 15 +河南 河南周口 218263902 9/13/77 女 2008/4/23 大专 107235.7 14 +重庆 重庆渝中 879381432 1/17/82 男 2015/9/28 中专 107231.5 19 +辽宁 辽宁沈阳 692160822 12/26/80 女 2014/12/18 大专 107179.53 4 +四川 四川乐山 5051446352 5/16/70 女 2015/12/23 高中 107173 1 +广东 广东肇庆 643590482 10/15/82 女 2014/6/27 大专 107152.09 2 +四川 四川青羊 203164702 8/11/66 女 2008/2/1 大专 107109.82 7 +山西 山西阳泉 327465112 11/26/73 女 2009/8/26 中专 107103.43 3 +苏州 苏州新区 255808072 8/21/79 男 2008/10/8 大专 107054.16 10 +山东 山东日照 540434402 3/1/76 男 2013/6/19 中专 107000.73 1 +吉林 吉林长春 497471912 12/17/64 女 2012/12/31 高中 106971.05 6 +河南 河南南阳 803343342 10/6/81 女 2015/7/26 高中 106961 2 +辽宁 辽宁盘锦 864202952 9/20/69 男 2015/8/27 高中 106914.43 1 +大连 大连明锐 321558022 9/15/71 女 2009/8/3 初中 106874.2 4 +辽宁 辽宁朝阳 5203055552 7/2/75 男 2016/8/2 高中 106841.1 8 +吉林 吉林延边 412054552 7/26/77 女 2010/12/29 高中 106742.05 2 +山东 山东烟台 460199352 1/7/71 女 2012/3/28 高中 106658.7 3 +山西 山西临汾 736348442 2/9/65 女 2015/4/7 高中 106650.5 5 +山东 山东烟台 5112361452 4/8/64 女 2016/3/25 高中 106644 3 +大连 大连开发区 167488522 3/3/74 女 2007/10/5 大专 106597.71 10 +青岛 青岛一支 826919782 2/16/75 女 2015/8/4 博士 106475 8 +山东 山东烟台 408320402 3/4/81 女 2010/12/9 中专 106386 13 +深圳 深圳宝安 46164412 2/4/65 女 2005/6/3 本科 106347.87 6 +山东 山东淄博 198264182 10/22/61 女 2008/1/5 中专 106309.21 18 +辽宁 辽宁沈阳 5008248742 11/12/93 男 2015/11/2 本科 106306.4 16 +重庆 重庆永川 498960412 5/22/72 女 2013/1/9 本科 106254.92 30 +四川 四川高新 741251062 2/16/81 女 2015/4/10 本科 106222.1 19 +辽宁 辽宁丹东 831637612 9/28/58 女 2015/8/6 大专 106200 6 +四川 四川青羊 2265422 2/28/80 女 2002/11/27 中专 106159.62 4 +辽宁 辽宁铁岭 104004742 12/15/69 女 2006/11/20 大专 106136.2 10 +上海 上海陆家嘴 622541482 1/6/85 男 2014/4/8 高中 106116.39 14 +辽宁 辽宁盘锦 877177092 10/25/71 女 2015/9/24 大专 106101.8 13 +重庆 重庆永川 815980972 12/13/65 女 2015/7/30 高中 106075.54 30 +贵州 贵州贵阳 5193953892 10/9/65 女 2016/7/27 大专 106001 13 +北京 北京海淀 363176462 4/9/79 女 2010/3/10 大专 105918.9 9 +云南 云南昆明 506605962 4/8/57 女 2013/3/13 大专 105902.86 2 +河南 河南郑州 104812842 5/30/69 女 2006/11/24 中专 105894 2 +江苏 江苏镇江 854093462 9/18/72 女 2015/8/10 高中 105835 1 +福建 福建福州 746320322 5/1/65 女 2015/4/16 高中 105780 1 +湖北 湖北武汉 61245192 5/4/70 女 2005/10/7 高中 105749.43 9 +四川 四川青羊 5113250792 7/21/91 女 2016/3/28 本科 105746 1 +河北 河北唐山 532940142 4/10/83 男 2013/6/12 大专 105714.17 1 +天津 天津市区二支 79390332 9/30/84 女 2006/3/24 大专 105586.41 15 +山东 山东泰安 652192082 5/4/74 女 2014/8/6 大专 105564.8 12 +北京 北京良乡 394605162 9/16/76 女 2010/9/7 初中 105491.46 5 +黑龙江 黑龙江哈尔滨 363810382 11/15/76 男 2010/3/15 本科 105452.94 3 +重庆 重庆永川 500052672 5/20/71 女 2013/1/18 高中 105449.28 22 +安徽 安徽合肥 5121413262 2/21/75 女 2016/4/14 大专 105393.1 15 +浙江 浙江嘉兴 137803452 3/25/72 女 2007/6/1 大专 105353.73 4 +浙江 浙江杭州 258732722 2/17/70 女 2008/10/24 高中 105346.07 8 +云南 云南昆明 212685082 12/26/68 女 2008/4/1 高中 105309.19 11 +苏州 苏州新区 20683142 6/23/61 女 2004/10/12 大专 105246.84 1 +江苏 江苏南京 701351262 5/15/82 男 2014/12/31 硕士 105241 9 +青岛 青岛一支 4659022 4/22/48 女 2003/6/18 大专 105220.91 14 +新疆 新疆乌鲁木齐 5088289112 3/21/84 女 2016/3/11 本科 105211 17 +四川 四川高新 230457572 8/19/75 女 2008/6/11 大专 105194.26 21 +云南 云南昆明 680336732 10/27/81 女 2014/11/5 大专 105157 1 +青岛 青岛一支 752502362 7/18/81 女 2015/5/7 大专 105075.5 11 +青岛 青岛一支 5097001942 2/26/84 女 2016/3/16 本科 105000.5 3 +浙江 浙江温州 759647562 10/8/80 女 2015/6/1 高中 104868.51 5 +宁波 宁波宁海 5072071072 11/25/81 女 2016/3/2 中专 104866 3 +湖北 湖北黄冈 457593332 1/13/72 女 2012/3/20 高中 104863.51 12 +湖南 湖南郴州 5092193622 3/11/97 男 2016/3/14 高中 104850 2 +黑龙江 黑龙江哈尔滨 5178792882 6/7/68 女 2016/6/21 高中 104758 3 +山东 山东威海 181515282 1/28/70 男 2007/11/21 本科 104737.02 4 +广西 广西南宁 293880222 7/14/78 女 2009/4/21 中专 104712.77 1 +四川 四川高新 330413352 3/4/80 女 2009/9/14 大专 104677.75 10 +北京 北京东城 804417182 2/2/81 女 2015/7/26 本科 104614 1 +四川 四川青羊 336743612 6/16/54 女 2009/10/15 本科 104488.77 2 +吉林 吉林辽源 5010357332 7/11/83 女 2015/11/5 大专 104486.5 2 +北京 北京海淀 547132842 11/24/91 女 2013/6/30 本科 104479.48 7 +浙江 浙江金华 379169182 2/24/73 女 2010/6/5 高中 104398.05 7 +大连 大连海川 5154270922 2/14/68 女 2016/5/31 本科 104277 2 +深圳 深圳福田 613855862 5/17/86 女 2014/3/15 本科 104268.05 5 +安徽 安徽滁州 5139672872 8/4/68 女 2016/5/16 大专 104208.8 10 +山西 山西长治 273416292 8/11/74 女 2009/1/1 大专 104203.6 10 +青岛 青岛一支 681109662 2/8/67 女 2014/11/10 本科 104190 2 +苏州 苏州昆山 61580572 12/3/71 女 2005/10/10 高中 104153.1 3 +辽宁 辽宁阜新 71510442 10/28/69 女 2005/12/30 大专 104151.32 8 +北京 北京海淀 394760222 10/23/87 男 2010/9/8 本科 104140.11 13 +山东 山东菏泽 491738032 10/20/77 女 2012/12/20 本科 104121.5 6 +北京 北京良乡 460874582 12/4/84 女 2012/4/1 中专 104092.34 15 +河南 河南南阳 574691452 3/19/80 女 2013/8/26 中专 104000 0 +江苏 江苏泰州 5143823932 11/16/78 女 2016/5/21 高中 103993 13 +苏州 苏州新区 485193252 8/14/69 女 2012/11/25 大专 103775.9 4 +四川 四川高新 206082242 12/19/78 女 2008/3/6 大专 103703.6 7 +宁波 宁波慈溪 634496072 2/20/68 女 2014/6/9 高中 103669.22 4 +河北 河北唐山 61391042 3/28/75 女 2005/10/8 大专 103642 19 +河南 河南郑州 540946062 2/8/71 女 2013/6/19 大专 103639.52 2 +河南 河南洛阳 696591422 2/7/70 女 2014/12/23 高中 103591 1 +山东 山东临沂 18346902 4/8/63 男 2004/9/1 大专 103589.75 12 +山东 山东济宁 442349952 10/22/63 女 2011/10/21 大专 103569.35 10 +重庆 重庆渝中 5024636272 2/12/80 女 2015/11/20 大专 103555 3 +安徽 安徽合肥 670525082 6/1/81 女 2014/9/19 大专 103541.5 7 +大连 大连明锐 708995142 6/1/81 女 2015/2/11 大专 103522 9 +山东 山东济南 5195594722 2/28/81 女 2016/7/28 博士 103514 9 +吉林 吉林辽源 739348602 8/8/55 男 2015/4/9 中专 103498.5 1 +重庆 重庆渝中 451314292 7/9/75 女 2012/1/13 大专 103428 15 +山西 山西太原 325457142 7/27/77 女 2009/8/24 本科 103363.06 7 +青岛 青岛一支 742065302 9/20/82 男 2015/4/10 高中 103276.5 6 +广西 广西柳州 348891502 1/16/71 女 2009/12/10 高中 103214 3 +四川 四川雅安 5141825912 12/31/73 女 2016/5/18 大专 103152.7 6 +山东 山东枣庄 208136962 11/30/74 女 2008/3/17 大专 103128.63 8 +北京 北京平谷 5032257592 3/27/86 女 2015/11/26 大专 103114 5 +青岛 青岛一支 881385632 4/7/69 男 2015/10/4 大专 103095 2 +青岛 青岛即墨 586063342 3/30/71 女 2013/11/25 高中 103013.11 0 +河南 河南濮阳 600220872 11/8/79 女 2013/12/30 本科 103000 0 +广东 广东东莞 814186822 10/25/81 女 2015/7/30 高中 103000 0 +山东 山东临沂 378277062 3/10/68 女 2010/5/31 大专 102994.68 7 +湖北 湖北武汉 101938712 12/3/69 女 2006/10/25 大专 102966.96 6 +四川 四川高新 5177226342 8/5/75 女 2016/6/21 中专 102928 27 +山东 山东济南 5107083572 10/29/81 女 2016/3/23 本科 102874 3 +四川 四川宜宾 5081232622 11/16/87 男 2016/3/8 大专 102860 2 +山东 山东烟台 285215122 11/5/71 女 2009/3/17 高中 102856.19 9 +浙江 浙江嘉兴 870665112 6/16/85 女 2015/9/10 高中 102816.5 8 +辽宁 辽宁葫芦岛 564557672 9/13/79 女 2013/6/29 大专 102782.4 17 +广西 广西桂林 665997482 10/4/86 女 2014/9/2 中专 102778 12 +四川 四川青羊 5124936072 8/18/83 女 2016/4/19 大专 102700 2 +山西 山西太原 861276902 9/21/76 女 2015/8/19 大专 102627 7 +江苏 江苏南京 13842892 9/18/74 男 2004/5/25 本科 102472.67 2 +辽宁 辽宁沈阳 44110662 11/6/73 女 2005/5/25 大专 102472.01 15 +四川 四川乐山 5047811102 10/24/81 女 2015/12/17 高中 102433.59 0 +四川 四川高新 414961482 8/6/85 女 2011/1/26 大专 102410.4 22 +福建 福建福州 5063372852 3/19/84 女 2016/1/28 大专 102368.13 22 +山东 山东威海 199065442 4/13/81 女 2008/1/8 高中 102350.5 25 +四川 四川内江 158450772 9/8/69 女 2007/8/21 大专 102329 21 +青岛 青岛一支 583701842 9/24/76 女 2013/11/11 大专 102270.25 12 +江西 江西南昌 456539312 3/2/78 女 2012/3/14 本科 102270 4 +上海 上海黄浦 680202192 8/29/89 女 2014/11/4 本科 102256.2 24 +湖北 湖北十堰 5017890722 10/29/84 男 2015/11/13 高中 102186 1 +湖北 湖北荆州 782853452 10/13/74 女 2015/7/7 高中 102182 18 +山东 山东枣庄 250193652 9/28/68 女 2008/9/8 中专 102093.77 10 +湖北 湖北黄冈 509003332 11/6/68 女 2013/3/22 中专 102077.67 12 +山东 山东临沂 531058202 3/1/78 女 2013/6/9 高中 101984.67 7 +山东 山东济宁 271482432 10/20/62 女 2008/12/22 大专 101974.47 7 +浙江 浙江湖州 5014913632 10/25/89 男 2015/11/10 本科 101954.6 12 +湖北 湖北十堰 716066232 8/26/83 女 2015/3/21 中专 101909 1 +大连 大连开发区 42111902 3/20/65 女 2005/5/6 本科 101907.69 6 +福建 福建泉州 480989452 8/4/66 女 2012/10/23 高中 101897.41 7 +辽宁 辽宁沈阳 535180352 10/27/78 女 2013/6/14 本科 101881.79 8 +云南 云南昆明 527623562 9/2/88 女 2013/6/5 大专 101856.27 1 +湖北 湖北武汉 32686852 10/11/77 女 2005/3/1 大专 101776.39 14 +河南 河南南阳 12554262 1/16/75 女 2004/4/15 高中 101763.71 14 +黑龙江 黑龙江佳木斯 314869762 6/9/77 女 2009/7/15 中专 101749.3 13 +吉林 吉林四平 439640792 6/25/65 女 2011/9/26 大专 101710.29 15 +江西 江西赣州 816605682 3/14/81 女 2015/7/30 中专 101702.57 0 +山东 山东德州 238018132 9/2/71 女 2008/7/2 高中 101694.09 7 +山东 山东菏泽 421201582 7/6/64 男 2011/4/12 高中 101688.28 6 +黑龙江 黑龙江鹤岗 273967862 6/18/60 女 2009/1/1 大专 101685.1 9 +湖北 湖北荆州 378425282 11/3/62 男 2010/6/1 大专 101668.49 12 +广东 广东江门 51680432 4/9/65 女 2005/7/15 高中 101598.03 10 +黑龙江 黑龙江黑河 5031848752 4/29/65 女 2015/11/26 中专 101558 1 +广西 广西桂林 377728832 4/2/72 男 2010/5/26 大专 101546.84 10 +浙江 浙江台州 412730482 6/22/73 女 2011/1/1 高中 101522.84 14 +浙江 浙江杭州 235763542 5/23/62 女 2008/6/25 高中 101499.73 4 +佛山 佛山顺德龙江 683312332 12/30/88 女 2014/11/17 高中 101485.42 9 +河南 河南南阳 730605622 6/24/72 女 2015/3/30 高中 101350 1 +河南 河南开封 5008158042 12/27/91 男 2015/11/2 本科 101350 1 +四川 四川高新 687482632 4/16/78 女 2014/11/26 大专 101350 1 +四川 四川高新 449170382 10/25/76 女 2011/12/26 大专 101328.73 9 +山东 山东滨州 5197310812 12/2/68 女 2016/7/30 大专 101300.9 13 +山东 山东淄博 5158733822 12/27/79 男 2016/6/1 中专 101239.5 7 +黑龙江 黑龙江牡丹江 272340082 12/10/52 女 2009/1/1 高中 101189 1 +云南 云南昆明 410700322 1/25/74 女 2010/12/23 大专 101182.96 1 +青岛 青岛一支 11510152 9/27/73 男 2004/3/27 大专 101132 6 +深圳 深圳宝安 5175297212 9/10/79 女 2016/6/18 中专 101110 7 +广东 广东广州 605816172 11/11/74 女 2014/1/16 中专 101078 1 +浙江 浙江杭州 390844352 10/19/81 女 2010/8/16 高中 101064.28 11 +山东 山东济南 9966662 8/27/69 女 2004/2/1 大专 101050.02 4 +浙江 浙江杭州 881510962 5/6/82 女 2015/10/6 高中 101027.6 6 +四川 四川高新 5077567462 4/15/75 女 2016/3/7 本科 101000 0 +山东 山东济南 5203463492 10/17/78 男 2016/8/3 本科 100972 11 +苏州 苏州新区 716769792 12/1/66 女 2015/3/23 本科 100947.16 11 +四川 四川高新 4153502 1/8/78 女 2003/5/20 大专 100845.99 12 +山东 山东威海 516520482 3/2/71 女 2013/4/24 高中 100761.89 25 +重庆 重庆渝中 447542872 9/28/78 女 2011/12/19 大专 100758.57 15 +辽宁 辽宁丹东 36292602 12/27/67 男 2005/3/30 本科 100738.55 4 +福建 福建福州 5150163342 2/20/76 女 2016/5/27 高中 100704 10 +山东 山东临沂 5158820852 11/12/78 女 2016/6/2 中专 100610.4 11 +浙江 浙江杭州 128256142 5/9/72 男 2007/4/2 高中 100598.36 4 +北京 北京良乡 105363442 1/8/64 女 2006/12/1 大专 100598.31 1 +浙江 浙江嘉兴 771765722 1/3/76 女 2015/6/24 高中 100508.5 2 +陕西 陕西西安 627520582 4/19/75 男 2014/5/9 大专 100466.61 19 +四川 四川乐山 104357572 1/23/69 女 2006/11/23 大专 100438.38 10 +大连 大连明锐 735132522 6/25/79 男 2015/4/3 本科 100378.1 7 +福建 福建福州 424286462 4/4/72 女 2011/5/17 高中 100368.25 9 +广西 广西南宁 766007552 2/18/86 男 2015/6/18 大专 100332.5 1 +山东 山东烟台 486451182 7/22/65 女 2012/11/29 大专 100302.02 12 +辽宁 辽宁鞍山 750884762 7/16/77 男 2015/4/30 高中 100204 1 +北京 北京海淀 667183672 10/7/71 男 2014/9/5 大专 100188.17 3 +河北 河北廊坊 80743862 8/25/53 女 2006/3/30 中专 100130.25 4 +黑龙江 黑龙江齐齐哈尔 5079040602 5/12/64 女 2016/3/7 本科 100060 6 +浙江 浙江杭州 17451712 3/21/77 男 2004/8/18 大专 100028.49 4 +山东 山东烟台 272740362 6/26/65 女 2008/12/25 大专 100013 5 +辽宁 辽宁鞍山 5012221172 5/22/66 女 2015/11/7 高中 100000 0 +江西 江西上饶 5084345692 11/15/92 男 2016/3/10 高中 100000 0 +山东 山东烟台 711815952 7/29/74 女 2015/3/11 中专 100000 0 +苏州 苏州张家港 454346552 2/21/77 女 2012/3/5 初中 100000 0 +湖南 湖南长沙 824684042 6/8/81 女 2015/8/3 高中 100000 0 +苏州 苏州张家港 788590132 11/13/84 男 2015/7/14 硕士 100000 0 +广东 广东广州 739385172 9/19/88 女 2015/4/9 高中 100000 0 +广东 广东广州 825439522 7/10/76 女 2015/8/3 大专 100000 0 +天津 天津滨海新区 5120805922 10/8/85 女 2016/4/13 中专 100000 0 +黑龙江 黑龙江哈尔滨 677205102 10/5/84 女 2014/10/16 中专 100000 0 +苏州 苏州张家港 5130221222 9/5/70 女 2016/4/29 高中 100000 0 +青岛 青岛一支 5084474402 10/31/81 女 2016/3/10 本科 100000 0 +广西 广西百色 5157119232 8/13/84 女 2016/6/1 高中 100000 0 +山西 山西运城 5068218282 9/5/93 男 2016/2/25 高中 100000 0 +福建 福建龙岩 5007522592 2/11/94 男 2015/10/30 本科 100000 0 +湖南 湖南益阳 5068602682 4/16/82 女 2016/2/25 中专 100000 0 +山西 山西朔州 5005257112 8/30/81 女 2015/10/25 高中 100000 0 +江苏 江苏镇江 790091882 10/28/59 女 2015/7/15 大专 100000 0 +广东 广东珠海 787721872 1/4/80 女 2015/7/13 高中 100000 0 +河北 河北秦皇岛 477007982 2/5/83 男 2012/9/3 大专 100000 0 +广西 广西南宁 619091492 7/13/86 女 2014/3/27 本科 100000 0 +四川 四川高新 544863602 1/11/81 女 2013/6/22 本科 100000 0 +山东 山东日照 870103902 9/27/79 男 2015/9/10 大专 100000 0 +黑龙江 黑龙江鸡西 741606262 11/11/72 女 2015/4/10 大专 100000 0 +苏州 苏州张家港 5066721602 11/4/75 女 2016/2/18 大专 100000 0 +江西 江西新余 5150028262 11/26/72 女 2016/5/27 本科 100000 0 +湖北 湖北鄂州 738425082 7/12/86 女 2015/4/9 本科 100000 0 +辽宁 辽宁本溪 5137243302 1/23/78 女 2016/5/12 高中 100000 0 +广西 广西南宁 760167732 9/2/76 女 2015/6/3 中专 100000 0 +辽宁 辽宁本溪 695719122 11/10/63 男 2014/12/22 高中 100000 0 +广西 广西北海 873819632 4/22/89 女 2015/9/18 中专 100000 0 +四川 四川乐山 682619652 2/1/77 女 2014/11/14 中专 100000 0 +陕西 陕西西安 237249942 1/19/64 女 2008/7/1 高中 99804.59 5 +河北 河北保定 5207285472 5/6/70 女 2016/8/6 大专 99781 19 +四川 四川青羊 3623422 9/21/79 女 2003/4/14 本科 99673.06 11 +黑龙江 黑龙江牡丹江 342895922 6/5/71 男 2009/11/14 中专 99611.7 1 +重庆 重庆渝中 5179357642 2/3/83 女 2016/6/21 大专 99584.1 15 +四川 四川高新 4860832 3/22/78 女 2003/6/23 大专 99566.68 13 +深圳 深圳宝安 554190952 1/27/82 女 2013/6/26 大专 99530.08 9 +四川 四川高新 517031442 11/28/74 女 2013/4/25 大专 99529.19 17 +内蒙古 内蒙古包头 593070232 11/3/77 男 2013/12/19 高中 99444 3 +广东 广东广州 415488492 2/9/87 女 2011/2/14 大专 99409.37 10 +浙江 浙江杭州 4808912 12/11/70 女 2003/6/20 大专 99306.36 4 +山东 山东威海 26398602 7/9/69 女 2004/12/18 高中 99204.15 12 +山东 山东潍坊 132806902 10/26/70 女 2007/4/25 高中 99174.8 23 +浙江 浙江杭州 506074212 9/19/69 女 2013/3/11 高中 99143.5 7 +黑龙江 黑龙江哈尔滨 71578412 1/27/68 女 2005/12/30 大专 99125.38 13 +深圳 深圳宝安 5005955152 5/29/82 女 2015/10/26 本科 99069.76 10 +辽宁 辽宁铁岭 517219302 10/17/80 女 2013/4/25 中专 99003.41 7 +四川 四川内江 290108802 3/5/72 女 2009/4/1 高中 98999.2 9 +新疆 新疆库尔勒 516093542 11/1/80 女 2013/4/22 本科 98972.98 12 +四川 四川高新 447248802 5/24/80 女 2011/12/16 高中 98965.05 14 +北京 北京海淀 819587422 1/19/78 男 2015/7/31 硕士 98889 17 +江苏 江苏常州 484964082 2/29/64 女 2012/11/24 高中 98876.2 6 +陕西 陕西咸阳 548466282 1/15/81 男 2013/6/25 高中 98771 10 +深圳 深圳宝安 5004716862 11/28/75 女 2015/10/24 高中 98721 7 +浙江 浙江杭州 795940912 4/8/70 女 2015/7/20 高中 98705 17 +上海 上海黄浦 499778422 2/12/80 女 2013/1/15 本科 98599 7 +大连 大连明锐 135751102 3/29/83 女 2007/5/21 大专 98538.68 3 +四川 四川青羊 144947952 12/8/65 女 2007/6/25 初中 98499.63 10 +北京 北京海淀 390068352 2/22/83 女 2010/8/10 大专 98481.86 7 +黑龙江 黑龙江哈尔滨 135527372 9/17/77 女 2007/5/18 本科 98420.85 19 +四川 四川青羊 36107812 11/23/78 女 2005/3/29 大专 98401.8 9 +山东 山东济南 87583412 10/27/78 女 2006/6/21 大专 98305.83 13 +黑龙江 黑龙江牡丹江 443346612 12/25/72 女 2011/11/4 中专 98225 4 +山东 山东济南 153760302 10/20/78 女 2007/7/25 本科 98218.69 9 +北京 北京东城 319840352 9/10/89 男 2009/8/1 中专 98169.1 2 +广东 广东中山 223070222 8/24/74 女 2008/5/13 中专 98114.68 13 +佛山 佛山顺德龙江 5191142692 2/20/74 男 2016/7/22 高中 98081 6 +安徽 安徽合肥 638251712 12/19/80 女 2014/6/18 高中 98047.05 12 +浙江 浙江温州 5029416482 10/20/70 女 2015/11/24 高中 97976.7 8 +山东 山东烟台 147737092 10/16/64 女 2007/7/4 高中 97890 6 +四川 四川成都 588863362 12/18/76 女 2013/12/5 高中 97870.67 12 +重庆 重庆渝中 163286122 12/30/75 女 2007/9/17 本科 97837.06 9 +山东 山东德州 352413232 5/27/79 女 2009/12/25 初中 97730.62 18 +北京 北京东城 5033551202 2/15/74 男 2015/11/27 本科 97657 5 +山东 山东烟台 78641962 1/26/73 女 2006/3/22 中专 97638.85 24 +湖北 湖北十堰 5227545802 11/8/88 女 2016/8/31 大专 97633 9 +浙江 浙江金华 96543282 8/16/77 女 2006/9/7 高中 97604.35 18 +河南 河南洛阳 16789462 9/18/68 女 2004/8/2 高中 97576.98 4 +贵州 贵州贵阳 276847162 11/1/73 女 2009/1/13 本科 97530.44 11 +江西 江西南昌 507063332 3/27/76 女 2013/3/15 大专 97526.61 9 +青岛 青岛即墨 151794342 6/25/70 女 2007/7/23 中专 97495.91 1 +山东 山东东营 64554772 9/13/76 女 2005/11/3 大专 97494.9 3 +青岛 青岛一支 5142622 5/22/70 男 2003/6/28 大专 97432 5 +山东 山东济南 4971512 4/23/70 女 2003/7/1 大专 97312.81 6 +深圳 深圳南山 726207822 6/2/65 女 2015/3/25 高中 97291.96 12 +宁波 宁波城区 243628082 5/6/71 女 2008/8/1 大专 97267.04 6 +辽宁 辽宁沈阳 5183067182 10/2/82 男 2016/6/25 硕士 97249 15 +湖南 湖南永州 431968582 6/28/68 女 2011/7/28 高中 97209.62 8 +湖南 湖南长沙 5032996412 7/23/76 女 2015/11/27 高中 97151.6 12 +四川 四川成都 3338562 4/27/69 女 2003/3/27 高中 97122.65 5 +海南 海南海口 446654522 1/18/83 女 2011/12/12 高中 97074.89 0 +四川 四川高新 477749512 8/15/72 女 2012/9/11 大专 97048 6 +广西 广西玉林 5168807282 9/1/83 女 2016/6/12 大专 97015.4 15 +黑龙江 黑龙江哈尔滨 338913482 5/26/72 女 2009/10/26 大专 96932.4 9 +湖南 湖南株洲 845298562 10/12/80 女 2015/8/10 中专 96879.5 3 +深圳 深圳福田 548682472 9/29/86 女 2013/6/25 大专 96814.14 10 +山东 山东潍坊 20426612 1/24/58 女 2004/10/8 高中 96805.89 18 +山东 山东威海 5201885182 7/16/85 女 2016/8/2 中专 96581.5 12 +四川 四川高新 5203846022 7/27/75 男 2016/8/3 硕士 96358 11 +江苏 江苏泰州 329168402 4/30/64 女 2009/9/4 高中 96353.12 9 +湖北 湖北襄阳 5200646892 10/24/81 男 2016/8/2 高中 96219.9 18 +黑龙江 黑龙江哈尔滨 559981922 1/27/60 女 2013/6/28 大专 96186.63 11 +湖北 湖北襄阳 639633302 9/23/68 女 2014/6/22 高中 96175.83 15 +上海 上海黄浦 681514412 10/19/76 女 2014/11/11 高中 96160.3 17 +苏州 苏州新区 497412182 2/28/70 女 2012/12/31 本科 96150.58 5 +山东 山东烟台 475028072 5/2/65 男 2012/8/18 本科 96148.09 5 +浙江 浙江杭州 269198812 8/10/71 女 2008/12/10 高中 96053.47 4 +新疆 新疆石河子 351640302 3/14/80 女 2009/12/24 大专 96046.52 11 +大连 大连明锐 5209345112 4/18/61 女 2016/8/8 大专 96021 12 +上海 上海黄浦 655760562 2/5/92 男 2014/8/13 高中 95894.04 3 +四川 四川青羊 650428632 11/14/72 女 2014/8/1 大专 95818.6 15 +辽宁 辽宁营口 596035222 6/24/67 女 2013/12/24 中专 95817 4 +苏州 苏州昆山 473952832 12/15/79 女 2012/8/7 高中 95747.6 6 +广东 广东广州 638737412 10/24/82 女 2014/6/20 大专 95740.23 7 +吉林 吉林四平 487337162 10/31/67 女 2012/12/4 大专 95630.1 4 +河北 河北衡水 375831542 9/26/68 女 2010/5/19 大专 95592.7 9 +四川 四川高新 5096543182 1/9/82 女 2016/3/16 高中 95569 7 +山东 山东菏泽 364142692 4/17/70 女 2010/3/15 大专 95557.77 13 +深圳 深圳宝安 5231282552 3/1/77 女 2016/9/8 高中 95526.5 8 +江苏 江苏南京 455447052 6/8/79 女 2012/3/8 本科 95469.9 12 +浙江 浙江绍兴 736120942 8/25/86 女 2015/4/7 本科 95447.5 8 +山西 山西运城 481106272 8/16/78 女 2012/10/24 大专 95426.29 1 +河北 河北唐山 51922582 10/5/54 女 2005/7/18 高中 95421.73 9 +云南 云南昆明 378657522 2/1/82 男 2010/6/1 大专 95393.7 7 +浙江 浙江金华 650882232 3/27/72 女 2014/8/4 大专 95374.55 9 +青岛 青岛一支 103518072 5/12/60 女 2006/11/15 本科 95373.96 9 +辽宁 辽宁鞍山 600708942 2/11/75 女 2013/12/30 高中 95342.9 12 +大连 大连海川 551412152 10/21/55 女 2013/6/25 本科 95321.3 3 +青岛 青岛一支 5125018602 11/12/78 男 2016/4/19 硕士 95319.7 16 +湖南 湖南衡阳 5205793292 3/18/68 男 2016/8/5 高中 95287.3 16 +河南 河南焦作 362609812 5/19/71 女 2010/3/2 高中 95257.82 4 +云南 云南昆明 469996352 6/20/70 女 2012/6/25 高中 95256.42 11 +四川 四川青羊 753338792 11/26/71 女 2015/5/11 大专 95106.83 13 +北京 北京海淀 456621932 5/23/88 女 2012/3/14 本科 95096.47 5 +四川 四川高新 459468432 8/22/85 女 2012/3/25 高中 95085.5 9 +山东 山东烟台 5220037822 11/8/85 女 2016/8/19 中专 95057.5 16 +上海 上海陆家嘴 5203570462 12/10/87 男 2016/8/3 高中 95023.5 13 +四川 四川青羊 4844782 12/19/73 女 2003/6/23 大专 95019.67 5 +浙江 浙江杭州 25036832 1/23/75 女 2004/11/30 高中 94987.05 13 +四川 四川高新 8675932 12/8/70 女 2003/10/29 大专 94928.42 2 +河南 河南南阳 507040442 4/25/70 女 2013/3/15 大专 94910.29 5 +黑龙江 黑龙江哈尔滨 763221212 6/3/75 女 2015/6/10 本科 94887.41 11 +山东 山东烟台 506767862 1/16/79 女 2013/3/14 大专 94880.2 9 +山东 山东淄博 464700292 4/26/81 女 2012/5/14 大专 94785.91 17 +四川 四川青羊 5218597292 5/20/88 男 2016/8/18 本科 94734 14 +浙江 浙江绍兴 5154556452 11/10/60 女 2016/5/31 大专 94732.6 16 +四川 四川高新 674932092 5/24/73 女 2014/9/29 本科 94690.5 15 +湖南 湖南长沙 623500872 7/13/76 女 2014/4/15 本科 94663.45 8 +江西 江西上饶 803194422 6/30/73 女 2015/7/26 大专 94621 2 +山东 山东威海 5097559432 8/5/80 女 2016/3/17 大专 94593.8 14 +山东 山东烟台 64658612 4/17/74 女 2005/11/4 中专 94590.65 19 +山东 山东烟台 345866082 3/23/71 男 2009/11/25 大专 94577.62 14 +广东 广东珠海 87243562 1/10/73 女 2006/6/16 大专 94572.05 10 +四川 四川青羊 657561552 7/8/78 女 2014/8/18 本科 94520.96 22 +浙江 浙江绍兴 464707132 9/26/67 女 2012/5/15 初中 94505.57 11 +河北 河北沧州 5153855712 10/23/63 女 2016/5/30 高中 94428.7 21 +山东 山东烟台 675805092 9/19/82 女 2014/10/5 大专 94387 13 +湖南 湖南长沙 427070432 4/19/72 男 2011/6/16 本科 94323.82 5 +上海 上海黄浦 5117294882 4/21/79 女 2016/4/6 本科 94269 10 +北京 北京海淀 324269552 5/15/85 女 2009/8/17 本科 94185.97 16 +湖北 湖北武汉 20867232 8/31/68 女 2004/10/15 本科 94160.08 11 +湖北 湖北武汉 85274532 2/19/75 女 2006/5/24 中专 94149.9 5 +山东 山东威海 344538782 9/13/74 女 2009/11/23 中专 94133.9 11 +苏州 苏州昆山 659999532 7/23/73 女 2014/8/22 高中 94105.9 7 +青岛 青岛一支 5032034582 3/21/79 女 2015/11/26 大专 94064.5 5 +佛山 佛山顺德龙江 476289072 12/23/76 女 2012/8/30 初中 94059.37 9 +辽宁 辽宁阜新 472876622 5/20/71 女 2012/7/26 本科 94058.64 6 +四川 四川高新 131792522 12/27/84 女 2007/4/24 大专 94040.36 17 +广东 广东湛江 702191462 6/29/88 女 2015/1/2 本科 93992.8 4 +北京 北京海淀 527336332 6/25/90 女 2013/6/3 大专 93953.05 9 +河北 河北保定 144027502 2/4/70 男 2007/6/25 高中 93945.7 7 +山西 山西临汾 5191599582 7/1/68 女 2016/7/24 大专 93939.2 23 +山东 山东泰安 281850822 4/11/75 女 2009/3/2 大专 93930.28 14 +浙江 浙江杭州 12249582 11/18/80 男 2004/4/8 大专 93923.35 10 +湖北 湖北武汉 488880922 2/11/91 男 2012/12/10 本科 93919.13 0 +辽宁 辽宁葫芦岛 544102952 6/2/61 女 2013/6/21 大专 93886.8 0 +北京 北京东城 557197952 10/8/86 男 2013/6/27 本科 93875.02 0 +佛山 佛山禅城 5080375962 5/24/81 女 2016/3/8 高中 93802 18 +河北 河北唐山 334361322 3/5/67 女 2009/9/26 大专 93751.23 5 +广东 广东东莞 735061482 12/10/80 女 2015/4/3 大专 93732.4 16 +云南 云南昆明 228354972 12/15/70 女 2008/6/1 中专 93700.53 6 +深圳 深圳南山 5188369572 12/7/79 男 2016/7/12 高中 93605.6 17 +浙江 浙江衢州 5199211832 5/29/74 女 2016/8/1 高中 93562.3 7 +北京 北京东城 74730562 3/10/79 女 2006/2/5 大专 93546.29 11 +河南 河南郑州 5160008392 8/1/80 男 2016/6/2 大专 93545.5 17 +福建 福建厦门 141435162 8/4/75 女 2007/6/19 高中 93486.36 24 +湖北 湖北宜昌 768699962 7/19/76 女 2015/6/23 本科 93477 13 +北京 北京良乡 5207101442 2/11/85 女 2016/8/6 大专 93463 16 +山西 山西阳泉 322746582 4/18/62 女 2009/8/6 大专 93452.88 4 +江苏 江苏徐州 767181462 3/5/77 女 2015/6/19 高中 93427 2 +福建 福建泉州 91697052 7/12/72 女 2006/7/24 高中 93392.69 8 +北京 北京东城 569442842 9/13/85 女 2013/7/15 本科 93330.44 19 +大连 大连海川 5367052 4/8/63 女 2003/7/1 大专 93323.98 4 +浙江 浙江杭州 398293532 11/20/89 男 2010/9/28 大专 93234.42 5 +福建 福建漳州 5032428952 1/4/60 男 2015/11/26 高中 93171 11 +大连 大连明锐 5111716932 12/22/87 女 2016/3/25 本科 93131.5 20 +四川 四川高新 655901942 9/24/74 女 2014/8/13 本科 93123.11 5 +佛山 佛山顺德龙江 473792332 1/5/83 女 2012/8/6 高中 93121.24 6 +江西 江西上饶 5148744622 11/8/75 女 2016/5/26 高中 93120 1 +甘肃 甘肃兰州 243823752 7/11/74 女 2008/8/1 本科 93108.1 8 +新疆 新疆库尔勒 629744742 8/12/69 女 2014/5/21 中专 93094.09 12 +黑龙江 黑龙江佳木斯 501825332 9/21/61 女 2013/1/29 高中 93056 6 +云南 云南昆明 5188833732 5/26/78 女 2016/7/14 高中 93053 10 +湖北 湖北武汉 5030019322 11/5/83 女 2015/11/25 大专 92982 10 +辽宁 辽宁丹东 465895692 11/30/72 女 2012/5/25 大专 92973 5 +福建 福建厦门 869942702 6/1/77 男 2015/9/10 高中 92946 12 +浙江 浙江杭州 391283572 11/11/67 女 2010/8/18 大专 92923.22 2 +广东 广东珠海 7107882 3/17/66 女 2003/9/5 大专 92852.91 9 +佛山 佛山顺德龙江 637009832 10/2/86 女 2014/6/16 高中 92844.5 4 +青岛 青岛开发区 508306882 8/3/76 女 2013/3/21 大专 92837.66 14 +湖北 湖北十堰 309086332 12/14/81 女 2009/6/25 本科 92752.03 13 +辽宁 辽宁丹东 432215202 10/3/65 女 2011/8/1 高中 92698.99 3 +山东 山东日照 172617242 12/2/79 女 2007/10/25 本科 92656.6 14 +重庆 重庆渝中 5201038492 2/27/75 男 2016/8/2 大专 92654 21 +山东 山东淄博 629855422 12/15/70 女 2014/5/22 高中 92610.18 7 +四川 四川青羊 292768142 9/23/83 女 2009/4/15 本科 92589.49 17 +福建 福建泉州 91538222 8/15/74 女 2006/7/24 大专 92581.29 6 +黑龙江 黑龙江牡丹江 120111212 1/16/79 男 2007/2/14 中专 92569.53 2 +浙江 浙江温州 637962112 7/5/80 女 2014/6/18 本科 92483.88 2 +重庆 重庆渝中 426365472 8/18/81 女 2011/6/8 本科 92441 14 +福建 福建龙岩 589269782 5/24/79 女 2013/12/7 大专 92347.97 18 +陕西 陕西西安 669299252 3/22/81 女 2014/9/16 本科 92346.5 10 +重庆 重庆渝中 227137382 12/21/72 男 2008/6/1 大专 92309.94 17 +北京 北京海淀 1918732 6/27/66 男 2002/9/17 大专 92247.46 2 +四川 四川青羊 599340062 3/7/83 女 2013/12/27 大专 92242.4 6 +宁波 宁波象山 5196663522 3/27/86 女 2016/7/29 本科 92237 14 +湖北 湖北宜昌 5031497932 11/19/79 女 2015/11/25 中专 92225.5 17 +辽宁 辽宁沈阳 5177257152 9/10/79 女 2016/6/21 中技 92217 11 +四川 四川绵阳 82790772 9/11/74 女 2006/4/25 大专 92183.97 4 +深圳 深圳福田第二 5228670822 3/3/74 女 2016/9/2 本科 92176 8 +浙江 浙江杭州 727719212 10/30/79 男 2015/3/25 本科 92102.5 9 +青岛 青岛一支 265418882 6/16/80 女 2008/11/24 大专 92100.37 10 +天津 天津市区一支 727509162 11/1/92 女 2015/3/25 本科 92000 0 +四川 四川青羊 9289062 8/16/67 女 2003/12/5 大专 91984.11 11 +辽宁 辽宁本溪 625705912 2/9/72 女 2014/4/28 大专 91872.03 11 +浙江 浙江金华 50410222 7/17/72 女 2005/6/30 大专 91862.85 6 +重庆 重庆永川 5098238432 1/20/69 女 2016/3/17 高中 91857.5 25 +湖北 湖北黄冈 545442532 9/12/77 女 2013/6/23 高中 91831.11 7 +湖北 湖北武汉 633934862 7/24/79 女 2014/6/6 本科 91829 14 +山东 山东济南 465902532 2/1/86 女 2012/5/25 本科 91752.3 25 +黑龙江 黑龙江哈尔滨 523551932 1/2/74 女 2013/5/27 本科 91710.01 0 +青岛 青岛一支 718702952 1/5/77 男 2015/3/24 大专 91691.02 13 +四川 四川高新 359755502 2/28/89 男 2010/1/29 高中 91580.37 3 +北京 北京东城 334473672 6/3/82 女 2009/10/1 本科 91525.1 4 +山东 山东淄博 235809322 10/19/71 女 2008/6/25 高中 91504.74 10 +陕西 陕西汉中 778112732 11/29/85 女 2015/6/30 大专 91494 7 +佛山 佛山顺德龙江 653737242 3/9/78 女 2014/8/8 中专 91478.55 6 +河北 河北唐山 519962932 11/7/79 女 2013/5/13 中专 91458.27 2 +辽宁 辽宁营口 70415112 12/2/78 女 2005/12/23 初中 91450.32 9 +山东 山东济南 811464682 12/16/87 女 2015/7/29 本科 91415.2 18 +江西 江西南昌 514131352 4/4/63 女 2013/4/3 本科 91406.55 2 +四川 四川青羊 15583452 7/2/69 女 2004/7/1 大专 91406.5 20 +深圳 深圳南山 572200852 4/10/89 女 2013/8/4 中专 91278.09 6 +海南 海南海口 498577852 9/21/81 女 2013/1/6 本科 91277.63 14 +山东 山东烟台 5129839592 1/22/75 女 2016/4/28 中专 91233.9 9 +四川 四川高新 5196345312 2/10/82 女 2016/7/29 本科 91187 16 +山西 山西长治 429633742 12/5/82 女 2011/6/29 本科 91177.2 4 +四川 四川青羊 584077562 11/1/90 男 2013/11/14 大专 91159.45 6 +江苏 江苏连云港 241982152 6/2/72 女 2008/7/24 高中 91114.57 1 +深圳 深圳福田第二 790523292 7/14/81 女 2015/7/15 大专 91091 8 +辽宁 辽宁沈阳 374739282 8/20/71 女 2010/5/12 本科 91089.16 7 +宁波 宁波宁海 707703712 4/3/77 女 2015/2/2 高中 91000 0 +福建 福建莆田 383636622 4/14/80 女 2010/6/25 高中 90949.85 5 +四川 四川绵阳 5211370342 5/30/71 女 2016/8/9 高中 90934.3 10 +江西 江西赣州 5171226882 3/6/73 女 2016/6/15 大专 90916.7 14 +福建 福建福州 730666752 8/10/82 女 2015/3/30 中专 90854.4 13 +宁波 宁波城区 5069851912 1/15/93 女 2016/3/1 大专 90836 9 +河南 河南郑州 540622262 10/21/83 女 2013/6/19 本科 90831.26 18 +辽宁 辽宁沈阳 6736632 10/14/58 女 2003/8/21 大专 90811.91 12 +北京 北京东城 54242 7/20/68 男 2001/12/20 大专 90774.4 1 +青海 西宁 652403802 9/1/78 女 2014/8/6 中专 90746.99 6 +黑龙江 黑龙江佳木斯 699047822 3/29/62 女 2014/12/26 大专 90729.7 4 +四川 四川青羊 3528792 3/18/71 女 2003/4/10 大专 90724.54 2 +湖北 湖北武汉 5734793212 5/12/78 女 2018/5/28 大专 90678.24 4 +山东 山东日照 5205520432 11/13/80 女 2016/8/4 中专 90666 10 +深圳 深圳福田 4342062 7/7/66 男 2003/5/22 本科 90640.14 2 +辽宁 辽宁营口 710040922 5/12/83 女 2015/2/25 本科 90577.25 5 +四川 四川青羊 569343472 5/25/85 男 2013/7/12 大专 90514.58 0 +四川 四川青羊 626756862 7/25/83 女 2014/5/5 大专 90506.31 8 +江苏 江苏无锡 736483682 9/17/79 女 2015/4/7 高中 90502.5 9 +苏州 苏州张家港 482494972 4/13/62 女 2012/11/8 高中 90490.08 25 +河北 河北邯郸 5172713592 2/18/67 女 2016/6/15 中专 90490 4 +辽宁 辽宁沈阳 96343142 3/18/63 女 2006/9/6 大专 90489.07 7 +山东 山东菏泽 679873922 10/1/83 女 2014/11/3 大专 90476.5 21 +浙江 浙江杭州 5027552642 6/29/75 女 2015/11/23 高中 90465.6 13 +河南 河南郑州 150147712 8/18/78 男 2007/7/17 大专 90416.36 8 +河南 河南洛阳 316101732 3/16/65 女 2009/7/20 高中 90398.7 0 +四川 四川青羊 416859472 5/1/74 女 2011/3/4 大专 90393.3 0 +山西 山西长治 273291932 7/14/66 女 2009/1/1 本科 90356.34 4 +安徽 安徽合肥 418718522 9/18/63 女 2011/3/1 高中 90245.28 5 +浙江 浙江杭州 311507562 9/3/81 男 2009/6/29 大专 90180.7 10 +辽宁 辽宁盘锦 607784502 4/5/69 女 2014/1/26 本科 90143.62 14 +山东 山东烟台 543396322 11/14/81 女 2013/6/21 初中 90140 14 +黑龙江 黑龙江七台河 5035937222 8/31/72 女 2015/11/30 高中 90139.9 3 +黑龙江 黑龙江哈尔滨 805420952 5/5/81 男 2015/7/27 本科 90139 1 +广东 广东东莞 260774192 10/29/76 女 2008/11/3 大专 90022.24 9 +山东 山东潍坊 524510352 2/5/82 女 2013/5/29 大专 90000 0 +黑龙江 黑龙江佳木斯 5066351742 3/3/65 男 2016/2/16 大专 90000 0 +辽宁 辽宁沈阳 880929662 6/9/76 女 2015/9/30 本科 90000 0 +湖南 湖南衡阳 833682152 10/4/68 女 2015/8/7 中专 89993 14 +河南 河南三门峡 462401322 10/13/68 女 2012/4/21 高中 89985.27 5 +四川 四川青羊 5219831082 12/11/88 女 2016/8/19 大专 89938 13 +宁波 宁波宁海 731220422 11/30/75 女 2015/3/31 高中 89936 2 +北京 北京东城 569286112 9/9/82 女 2013/7/11 大专 89890 10 +辽宁 辽宁盘锦 295230682 6/26/76 女 2009/4/25 大专 89862.82 11 +四川 四川高新 14944092 4/29/68 女 2004/6/25 本科 89859.71 4 +河南 河南南阳 213697092 12/27/82 女 2008/4/1 高中 89813.6 14 +山东 山东德州 264780222 2/25/64 女 2008/11/21 中专 89776.79 11 +广东 广东中山 691604782 12/4/73 女 2014/12/17 大专 89654.7 10 +重庆 重庆渝中 879069912 7/23/87 男 2015/9/26 本科 89649 13 +四川 四川高新 573224172 3/16/82 女 2013/8/12 大专 89647.08 11 +天津 天津市区一支 5206507672 9/8/81 男 2016/8/5 本科 89635 7 +苏州 苏州张家港 417483482 1/27/65 女 2011/3/11 初中 89628.61 4 +重庆 重庆江津 497202132 8/10/76 女 2012/12/31 高中 89617 19 +山东 山东莱芜 433655822 5/27/80 男 2011/8/10 大专 89579.7 11 +河南 河南南阳 513928142 10/31/69 女 2013/4/3 本科 89550.66 2 +四川 四川高新 216688042 9/14/78 女 2008/4/17 大专 89548.56 10 +山东 山东东营 422305152 8/8/83 女 2011/4/25 初中 89539.9 8 +吉林 吉林长春 720964382 1/9/86 女 2015/3/24 本科 89489.5 7 +黑龙江 黑龙江佳木斯 343933892 5/16/78 女 2009/11/19 高中 89464.95 21 +浙江 浙江金华 379127172 4/2/68 男 2010/6/4 高中 89463.38 6 +山东 山东临沂 90727052 11/13/77 女 2006/7/6 中专 89454.62 13 +新疆 新疆昌吉 584126412 9/3/70 男 2013/11/14 高中 89377.99 13 +黑龙江 黑龙江哈尔滨 174668892 5/29/55 女 2007/11/2 本科 89343.96 2 +河北 河北唐山 5008806232 11/8/87 女 2015/11/3 大专 89330 8 +北京 北京东城 511351152 8/7/78 女 2013/4/1 大专 89322.5 4 +广东 广东汕头 148474152 11/7/78 女 2007/7/6 高中 89301.56 8 +辽宁 辽宁丹东 543759062 3/21/65 女 2013/6/21 本科 89270 2 +北京 北京东城 12510852 5/31/69 男 2004/4/15 大专 89269.13 3 +广东 广东广州 583091512 8/25/73 女 2013/11/5 大专 89261.33 5 +云南 云南昆明 282365552 9/24/81 女 2009/3/4 大专 89160.81 8 +辽宁 辽宁铁岭 468277982 2/27/69 女 2012/6/18 高中 89102.08 8 +浙江 浙江台州 47387172 12/2/58 女 2005/6/18 大专 89094.92 1 +大连 大连明锐 637143402 6/28/80 女 2014/6/16 本科 89082.61 5 +广西 广西贵港 483375512 12/15/84 女 2012/11/17 本科 89073 8 +湖北 湖北荆州 694713252 10/8/76 女 2014/12/22 大专 89012.5 15 +四川 四川雅安 5107785212 1/9/82 女 2016/3/23 高中 89000 0 +广西 广西柳州 5205188652 10/18/81 女 2016/8/4 中专 88986.2 25 +北京 北京平谷 22262772 9/4/68 女 2004/11/4 大专 88974.85 18 +上海 上海陆家嘴 185781882 7/22/70 女 2007/12/1 高中 88941.5 5 +山东 山东滨州 5066430602 9/10/86 女 2016/2/16 大专 88921.1 4 +四川 四川青羊 21408892 8/1/75 女 2004/10/25 高中 88870.9 3 +山西 山西吕梁 496661442 12/26/72 女 2012/12/31 大专 88829.36 9 +四川 四川成都 5182542302 10/11/77 女 2016/6/24 大专 88799.6 3 +青岛 青岛一支 279633502 5/23/78 女 2009/2/18 大专 88799.1 13 +四川 四川泸州 5187898142 3/6/79 女 2016/7/8 高中 88783.2 53 +福建 福建福州 5148003032 10/16/75 女 2016/5/26 本科 88743.9 15 +山东 山东济南 249557362 3/26/81 女 2008/9/3 中专 88731.69 15 +苏州 苏州常熟 426936862 10/14/65 女 2011/6/15 高中 88715.48 4 +黑龙江 黑龙江佳木斯 136670852 3/12/72 女 2007/5/24 大专 88672.07 8 +福建 福建福州 113741312 4/30/68 女 2007/1/8 高中 88612.49 13 +山东 山东淄博 5187942592 3/16/81 女 2016/7/8 大专 88541 12 +北京 北京海淀 515395422 9/8/89 男 2013/4/16 本科 88530 5 +山东 山东烟台 648559672 8/4/78 女 2014/7/29 大专 88505 12 +辽宁 辽宁丹东 5124698592 7/14/73 男 2016/4/19 高中 88486.5 20 +北京 北京东城 375025812 2/7/73 女 2010/5/14 大专 88470.1 5 +湖北 湖北襄阳 286999362 10/30/79 女 2009/3/23 高中 88450.99 24 +佛山 佛山禅城 706912362 11/23/87 女 2015/1/27 大专 88348.28 4 +山东 山东烟台 162600282 10/29/62 女 2007/9/11 高中 88232.16 6 +陕西 陕西西安 381075682 4/9/80 女 2010/6/21 大专 88203.27 5 +河南 河南三门峡 686045082 10/24/65 女 2014/11/20 大专 88202 12 +山东 山东济南 651870652 7/17/76 女 2014/8/5 高中 88180.69 13 +山东 山东烟台 5076462382 5/28/79 女 2016/3/5 大专 88175.4 17 +山东 山东泰安 140462092 9/2/73 女 2007/6/17 大专 88135.98 8 +黑龙江 黑龙江鹤岗 118314962 12/16/70 女 2007/2/1 大专 88129.38 8 +广东 广东中山 454891982 9/4/72 女 2012/3/7 高中 88088.82 12 +苏州 苏州张家港 346991142 5/20/65 女 2009/12/1 高中 87923.45 5 +北京 北京海淀 130507932 1/19/85 男 2007/7/1 本科 87921.47 7 +北京 北京平谷 391607372 10/20/74 女 2010/9/1 本科 87918 -1 +四川 四川高新 708050402 4/12/77 男 2015/2/4 大专 87859.4 14 +广东 广东广州 467456902 8/5/79 女 2012/6/7 本科 87853.79 2 +山西 山西长治 5128024702 4/28/90 男 2016/4/25 高中 87804.4 19 +北京 北京海淀 335678982 12/26/80 女 2009/10/7 大专 87650.39 6 +福建 福建厦门 116382502 8/17/69 女 2007/1/20 中专 87592.12 11 +陕西 陕西西安 220180042 6/5/77 女 2008/5/1 本科 87572.31 5 +湖北 湖北武汉 21193402 5/3/70 女 2004/10/20 大专 87540.92 7 +福建 福建漳州 404537402 9/20/76 女 2010/11/17 高中 87539.24 14 +浙江 浙江杭州 27471742 9/15/77 女 2004/12/30 本科 87536.06 10 +深圳 深圳宝安 5163641842 2/14/63 女 2016/6/6 中专 87480 11 +河北 河北廊坊 5165678842 10/30/69 男 2016/6/8 中专 87476 2 +山东 山东威海 5061706612 8/18/81 女 2016/1/18 中专 87460 13 +福建 福建福州 434981722 2/17/73 女 2011/8/22 高中 87441.29 2 +江西 江西南昌 337947252 8/23/83 女 2009/10/23 大专 87432.85 8 +浙江 浙江温州 377105522 2/28/76 女 2010/5/25 中专 87376.14 9 +新疆 新疆库尔勒 374423022 10/8/70 女 2010/5/10 本科 87360.09 8 +云南 云南昆明 5228155912 2/23/79 女 2016/9/1 大专 87353.5 19 +四川 四川青羊 318466302 3/30/86 女 2009/7/25 高中 87323.57 6 +北京 北京海淀 840927422 5/22/93 男 2015/8/9 本科 87212 8 +黑龙江 黑龙江大庆 173224502 5/12/72 女 2007/10/25 大专 87144.82 8 +福建 福建泉州 169103052 1/30/77 女 2007/10/11 高中 87095.7 10 +江苏 江苏常州 457879862 8/2/62 女 2012/3/21 高中 87043.32 13 +深圳 深圳福田 158597322 1/17/62 男 2007/8/21 大专 87011 10 +山东 山东烟台 684344162 7/11/73 女 2014/11/19 中专 86986.4 8 +山东 山东威海 708066452 12/21/77 女 2015/2/4 高中 86969.2 4 +江西 江西南昌 18919692 12/28/71 男 2004/9/16 中专 86915.78 10 +江苏 江苏无锡 62851482 5/8/74 女 2005/10/26 大专 86912 9 +陕西 陕西西安 146375322 1/12/70 女 2007/6/26 中专 86819.42 6 +黑龙江 黑龙江黑河 482949272 4/14/72 女 2012/11/13 高中 86803.26 6 +天津 天津市区二支 323737102 12/8/84 女 2009/8/12 大专 86770.04 11 +山西 山西临汾 233200232 4/24/69 女 2008/6/23 高中 86763.74 9 +上海 上海黄浦 379537362 11/23/70 女 2010/6/8 本科 86759.52 7 +浙江 浙江温州 5210890812 8/1/88 男 2016/8/9 本科 86702.9 13 +湖北 湖北武汉 370432342 3/15/80 女 2010/4/19 大专 86692.59 22 +大连 大连海川 481491202 10/28/77 女 2012/10/26 本科 86661.35 9 +山东 山东济南 452638792 1/14/76 女 2012/2/17 大专 86602.92 13 +山东 山东德州 5206589232 10/9/66 男 2016/8/5 中专 86586.3 16 +山东 山东临沂 536370312 7/21/74 女 2013/6/15 初中 86551.35 11 +四川 四川自贡 5196632712 1/26/76 男 2016/7/29 高中 86516 18 +深圳 深圳罗湖 284942542 3/19/75 女 2009/3/16 大专 86497.53 3 +辽宁 辽宁沈阳 5048954262 6/16/66 女 2015/12/21 大专 86495 10 +山东 山东威海 79360602 7/6/82 男 2006/3/24 大专 86488.19 8 +甘肃 甘肃金昌 801294062 12/24/78 男 2015/7/24 大专 86481.5 2 +黑龙江 黑龙江哈尔滨 253105052 12/30/69 女 2008/9/24 大专 86470.8 6 +吉林 吉林白城 5032130682 3/8/64 女 2015/11/26 大专 86458 19 +湖北 湖北荆州 237624962 8/9/75 女 2008/7/1 高中 86448.48 10 +北京 北京良乡 118334782 4/8/66 女 2007/2/1 大专 86413.17 2 +浙江 浙江杭州 364349672 10/4/87 男 2010/3/16 大专 86403 12 +四川 四川青羊 38528072 7/5/75 女 2005/4/14 大专 86395.8 7 +北京 北京良乡 115745512 1/15/78 女 2007/1/12 大专 86376.36 3 +黑龙江 黑龙江黑河 5149999252 4/17/70 女 2016/5/27 本科 86346 16 +北京 北京海淀 528953232 3/10/90 女 2013/6/6 本科 86309.65 3 +山东 山东济宁 476947552 9/27/80 女 2012/9/1 中专 86302.77 7 +山东 山东威海 424795052 9/29/73 女 2011/5/24 中专 86300.08 15 +河南 河南郑州 138741352 12/16/71 女 2007/6/6 大专 86297.52 18 +四川 四川乐山 7641732 8/11/70 女 2003/9/17 本科 86224.09 5 +福建 福建莆田 196114132 4/11/77 女 2008/1/1 大专 86181.49 13 +浙江 浙江杭州 650854872 7/9/74 女 2014/8/4 中专 86179.51 4 +四川 四川高新 5211046732 12/20/77 男 2016/8/9 本科 86159 11 +黑龙江 黑龙江佳木斯 81620632 4/12/55 女 2006/4/11 大专 86133.31 3 +四川 四川高新 5066380752 11/28/67 女 2016/2/16 大专 86115 10 +广西 广西桂林 291372872 12/4/63 女 2009/4/7 大专 86036.36 12 +山东 山东淄博 96054512 9/30/66 女 2006/9/4 中专 85960.37 7 +广东 广东广州 500354282 11/25/64 女 2013/1/21 大专 85902.48 8 +四川 四川绵阳 5208730502 9/23/78 男 2016/8/8 高中 85879.5 14 +苏州 苏州张家港 598507672 12/17/75 男 2013/12/26 高中 85773.2 12 +四川 四川青羊 104413262 6/4/78 女 2006/11/23 大专 85758.14 2 +四川 四川高新 290605112 7/22/80 女 2009/4/2 大专 85729.5 33 +辽宁 辽宁营口 485573712 7/9/68 女 2012/11/25 中专 85710.19 24 +河南 河南郑州 762636142 3/29/80 女 2015/6/9 高中 85647.9 19 +四川 四川高新 5125753822 2/28/86 女 2016/4/21 大专 85642 7 +陕西 陕西西安 398561642 11/2/76 男 2010/10/1 本科 85623.03 5 +辽宁 辽宁营口 792054772 5/29/82 女 2015/7/16 大专 85579.45 16 +四川 四川成都 105791082 9/5/75 女 2006/12/1 中专 85542.37 7 +四川 四川成都 3297252 4/22/66 女 2003/3/25 高中 85528.31 5 +湖北 湖北武汉 115294982 11/14/70 女 2007/1/12 大专 85514.95 18 +山东 山东临沂 5165026082 3/3/74 女 2016/6/7 中专 85494.5 16 +安徽 安徽合肥 517726492 7/27/83 女 2013/4/26 大专 85490.64 16 +福建 福建厦门 609176972 6/23/79 女 2014/2/13 大专 85452.53 18 +山东 山东济南 5329782 1/18/57 女 2003/7/1 高中 85448.44 9 +青岛 青岛一支 292486352 4/1/78 女 2009/4/14 大专 85375.66 13 +山东 山东济南 5017564342 2/13/71 男 2015/11/13 大专 85361.16 8 +辽宁 辽宁沈阳 608428332 3/19/77 女 2014/1/28 高中 85349 7 +辽宁 辽宁沈阳 516576172 5/9/70 女 2013/4/24 大专 85270 8 +浙江 浙江金华 506542462 1/31/80 男 2013/3/13 中专 85235.92 5 +苏州 苏州张家港 76463582 9/29/62 女 2006/2/27 高中 85135.19 3 +河南 河南洛阳 226160542 8/27/70 女 2008/5/24 高中 85117.77 11 +山东 山东烟台 581207202 5/11/82 女 2013/10/21 中专 85051.14 17 +内蒙古 内蒙古通辽 696660092 7/30/76 女 2014/12/23 大专 85018 6 +江苏 江苏南京 515550482 7/7/67 女 2013/4/18 大专 85010 8 +青岛 青岛一支 5214177942 2/28/68 男 2016/8/12 本科 84981.5 11 +山东 山东淄博 73488682 3/8/64 女 2006/1/13 高中 84967.11 16 +湖北 湖北恩施 5215824172 2/9/71 女 2016/8/15 高中 84945.8 17 +山东 山东淄博 651863812 2/19/76 女 2014/8/5 中专 84910.11 4 +福建 福建福州 138947632 10/31/78 女 2007/6/6 本科 84891.72 6 +广西 广西桂林 526287752 1/29/68 女 2013/6/3 大专 84872.29 9 +广东 广东东莞 5204225922 4/9/79 男 2016/8/3 中专 84859.7 16 +浙江 浙江杭州 18588082 2/21/70 女 2004/9/8 高中 84801.45 9 +湖南 湖南邵阳 260130362 5/5/61 女 2008/11/1 高中 84780.93 3 +河北 河北保定 497959982 8/12/57 女 2013/1/1 大专 84773.41 20 +云南 云南昆明 213530722 6/20/68 女 2008/4/1 高中 84765.29 7 +福建 福建龙岩 758061092 1/22/85 男 2015/5/27 中专 84764.5 18 +黑龙江 黑龙江哈尔滨 370518732 10/5/76 男 2010/4/19 高中 84725.56 2 +辽宁 辽宁朝阳 385081712 11/27/56 女 2010/7/1 大专 84719.86 12 +安徽 安徽合肥 5194875842 9/20/78 男 2016/7/28 高中 84638.3 6 +山东 山东淄博 143307192 2/13/60 女 2007/6/23 本科 84594.36 9 +河南 河南周口 293069052 8/14/66 男 2009/4/17 高中 84590 16 +福建 福建福州 83636142 12/21/77 女 2006/4/30 大专 84577.48 9 +苏州 苏州昆山 5204654702 10/4/71 女 2016/8/4 大专 84539.5 17 +广西 广西梧州 599970212 12/10/76 女 2013/12/29 中专 84501.1 3 +苏州 苏州昆山 159223702 1/6/75 女 2007/8/24 高中 84477.69 10 +山东 山东临沂 5198984252 7/3/74 男 2016/8/1 高中 84430 15 +深圳 深圳南山 5205017292 7/30/87 男 2016/8/4 大专 84339.4 11 +山东 山东烟台 5205215862 12/20/81 女 2016/8/4 中专 84323.6 12 +佛山 佛山顺德龙江 8566652 3/30/74 女 2003/10/1 中专 84309.26 13 +苏州 苏州常熟 425260232 8/15/62 女 2011/5/26 高中 84122.89 6 +黑龙江 黑龙江七台河 586579742 2/24/75 男 2013/11/27 本科 84099.2 1 +湖北 湖北武汉 5072203452 1/15/80 女 2016/3/2 本科 84094 8 +四川 四川青羊 533201412 5/9/83 女 2013/6/13 大专 84048.15 16 +北京 北京海淀 317176272 6/29/86 男 2009/8/1 本科 84041.51 5 +山东 山东威海 5145992342 6/25/78 女 2016/5/25 中专 84040.1 12 +佛山 佛山顺德龙江 179787702 12/26/74 女 2007/11/14 高中 84004.48 10 +重庆 重庆江津 440587902 10/10/68 女 2011/9/30 大专 84001.64 11 +大连 大连开发区 236359222 8/25/71 女 2008/6/25 大专 83965.77 0 +辽宁 辽宁葫芦岛 739928232 8/22/84 男 2015/4/9 本科 83930.64 1 +湖北 湖北武汉 5110850232 7/2/79 女 2016/3/25 大专 83904 9 +四川 四川青羊 14720362 1/14/82 女 2004/6/21 本科 83880.52 9 +苏州 苏州张家港 5095297622 8/3/74 女 2016/3/15 高中 83831 9 +浙江 浙江杭州 430301162 6/2/76 女 2011/7/8 高中 83822.97 4 +辽宁 辽宁本溪 5064674632 8/9/77 女 2016/2/2 中专 83800 1 +四川 四川青羊 660802 12/16/64 女 2002/2/25 本科 83790.82 5 +北京 北京东城 3933542 7/15/68 女 2003/5/1 本科 83768.08 1 +天津 天津滨海新区 576804932 1/25/71 女 2013/9/5 大专 83749 5 +北京 北京海淀 291572042 6/15/84 女 2009/4/8 本科 83698.19 1 +山东 山东临沂 18819622 3/27/72 女 2004/9/1 高中 83689.26 7 +河南 河南周口 5198026022 10/17/80 女 2016/8/1 大专 83673.4 14 +广东 广东珠海 296632092 7/4/67 女 2009/5/4 大专 83666.46 12 +云南 云南昆明 753989462 10/30/71 女 2015/5/14 本科 83663 15 +湖北 湖北武汉 876387412 9/8/84 男 2015/9/22 大专 83653 8 +云南 云南昆明 5151106132 4/26/84 女 2016/5/28 大专 83600 14 +苏州 苏州张家港 134709362 9/30/75 女 2007/5/11 大专 83565.76 2 +北京 北京良乡 286171442 9/7/59 女 2009/4/1 高中 83512.32 9 +苏州 苏州昆山 658261072 9/26/79 女 2014/8/19 中专 83476.05 2 +辽宁 辽宁沈阳 761351552 2/5/80 女 2015/6/5 大专 83451.46 10 +浙江 浙江金华 638446412 9/23/69 女 2014/6/19 高中 83413.9 6 +青岛 青岛开发区 349898072 10/3/63 女 2009/12/15 大专 83394.27 11 +山东 山东滨州 328005102 3/17/76 女 2009/8/29 大专 83375.3 13 +江西 江西南昌 5032389972 7/1/83 女 2015/11/26 高中 83367.5 11 +安徽 安徽淮南 51103872 1/1/59 女 2005/6/1 大专 83358.5 9 +辽宁 辽宁沈阳 5008957652 2/11/79 女 2015/11/3 本科 83344.5 13 +福建 福建福州 71069822 11/14/62 女 2005/12/29 大专 83313.13 5 +青岛 青岛一支 58947892 9/4/75 女 2005/9/19 本科 83303.66 17 +北京 北京海淀 526893342 1/13/90 女 2013/6/3 本科 83290 8 +江西 江西南昌 425134202 12/19/58 女 2011/5/25 高中 83289.3 5 +湖北 湖北武汉 207326492 10/29/81 女 2008/3/14 中专 83244.85 6 +福建 福建福州 362559292 6/19/82 女 2010/3/2 大专 83233.44 6 +河南 河南三门峡 449008482 9/29/73 女 2011/12/25 高中 83222.07 7 +辽宁 辽宁沈阳 5449672 6/20/54 女 2003/7/1 大专 83151 7 +江西 江西南昌 532971542 8/9/67 女 2013/6/13 大专 83146.75 4 +黑龙江 黑龙江哈尔滨 210968112 7/23/70 女 2008/3/25 大专 83097.83 4 +青岛 青岛一支 807662562 8/1/72 女 2015/7/28 硕士 83063.2 20 +安徽 安徽合肥 77666522 10/8/71 女 2006/3/1 大专 83055.39 10 +陕西 陕西汉中 486527662 9/22/75 女 2012/12/1 本科 83037.87 10 +北京 北京海淀 571932742 8/21/90 男 2013/8/1 大专 82990 1 +湖北 湖北十堰 611285712 9/5/79 女 2014/3/5 本科 82890.38 13 +四川 四川巴中 758929622 3/9/78 女 2015/5/29 中专 82837 16 +苏州 苏州常熟 495202672 6/18/78 男 2012/12/26 初中 82824.91 3 +江西 江西赣州 812711032 4/1/77 女 2015/7/29 高中 82809 14 +四川 四川高新 141660562 10/24/80 男 2007/6/20 本科 82778.3 19 +北京 北京平谷 373519592 11/7/68 女 2010/5/5 高中 82752 12 +河南 河南平顶山 16158612 3/21/56 男 2004/7/20 大专 82723.52 9 +湖北 湖北荆州 588067542 7/8/64 男 2013/12/3 高中 82719.4 23 +四川 四川青羊 672201712 7/11/76 女 2014/9/24 高中 82687 14 +山西 山西太原 731760412 11/20/76 女 2015/3/31 中专 82649.5 5 +四川 四川青羊 553333032 10/10/86 女 2013/6/26 高中 82618.1 8 +宁波 宁波象山 226053632 1/15/70 女 2008/5/23 中专 82501.64 7 +苏州 苏州姑苏 29084872 2/21/78 女 2005/1/14 中专 82447.02 8 +四川 四川高新 432285542 8/26/80 女 2011/8/1 大专 82416.36 16 +苏州 苏州昆山 5217735162 12/14/87 女 2016/8/17 大专 82354.3 15 +辽宁 辽宁丹东 634685602 6/23/72 女 2014/6/10 大专 82351.58 8 +浙江 浙江杭州 313628582 1/12/83 女 2009/7/8 大专 82325.45 7 +四川 四川高新 833939652 10/30/87 男 2015/8/7 硕士 82240.5 9 +四川 四川高新 28950332 7/9/79 女 2005/1/12 大专 82220.09 7 +四川 四川高新 312375122 12/6/84 男 2009/7/1 本科 82218.93 23 +苏州 苏州吴江 714683942 4/5/82 女 2015/3/20 中专 82217 5 +上海 上海陆家嘴 710167652 2/9/77 女 2015/2/26 本科 82206 9 +青岛 青岛一支 684892662 2/12/86 女 2014/11/19 本科 82160 8 +山东 山东日照 518810242 8/15/85 女 2013/5/3 中专 82126.5 16 +安徽 安徽合肥 260756742 1/28/81 女 2008/11/1 大专 82080.25 2 +山东 山东烟台 71284342 1/13/80 女 2005/12/29 大专 82056.32 4 +安徽 安徽池州 860540542 6/15/76 女 2015/8/17 高中 82046.9 10 +重庆 重庆永川 5154484862 12/20/85 女 2016/5/31 中专 81998 21 +湖北 湖北武汉 5198642502 5/6/85 男 2016/8/1 高中 81981 19 +苏州 苏州昆山 5098822232 4/24/75 女 2016/3/18 高中 81951 19 +山东 山东济南 679256752 9/12/82 女 2014/10/29 大专 81941 15 +青岛 青岛城阳 5171303942 6/23/64 女 2016/6/15 大专 81940.5 10 +河北 河北廊坊 646585202 5/20/64 女 2014/7/18 高中 81936 2 +河北 河北廊坊 47145022 12/24/61 女 2005/6/13 高中 81835.1 10 +广西 广西南宁 506982382 4/2/77 女 2013/3/15 大专 81820.68 6 +广东 广东中山 251226182 7/17/73 女 2008/9/12 大专 81808.69 14 +辽宁 辽宁辽阳 5042009242 12/29/57 女 2015/12/5 中专 81798.33 4 +浙江 浙江杭州 556349242 12/16/77 女 2013/6/27 高中 81786.64 16 +天津 天津蓟州 124511382 6/6/73 女 2007/3/21 高中 81785.41 15 +江苏 江苏镇江 85113332 6/14/70 女 2006/5/23 初中 81784.85 10 +青岛 青岛一支 5218728772 12/26/69 女 2016/8/18 大专 81722.5 8 +福建 福建福州 401724402 11/16/68 女 2010/10/25 高中 81710 13 +贵州 贵州贵阳 5159069202 10/31/77 女 2016/6/2 大专 81663.13 11 +苏州 苏州张家港 5164847522 10/7/83 女 2016/6/7 高中 81651.5 18 +四川 四川青羊 119985182 4/16/79 女 2007/2/14 本科 81627.71 13 +深圳 深圳宝安 107488232 2/27/71 女 2006/12/14 大专 81609.11 2 +湖北 湖北武汉 35567822 8/2/74 男 2005/3/25 大专 81557.21 16 +辽宁 辽宁本溪 625710382 9/28/69 男 2014/4/28 大专 81549 2 +山东 山东临沂 831941592 12/25/75 女 2015/8/6 中专 81536.98 13 +苏州 苏州姑苏 256264042 12/21/79 女 2008/10/10 初中 81504.95 2 +天津 天津市区一支 23964392 9/25/66 女 2004/11/26 大专 81499.53 9 +山东 山东泰安 431115402 5/4/81 女 2011/7/22 高中 81414.09 9 +重庆 重庆渝中 5207523922 5/18/76 女 2016/8/6 高中 81403 22 +天津 天津市区二支 22560612 5/29/57 男 2004/11/10 大专 81402.98 7 +山东 山东济南 5164319942 3/16/76 男 2016/6/7 本科 81401 6 +深圳 深圳宝安 729246922 6/22/82 女 2015/3/27 高中 81395.04 9 +河北 河北石家庄 5162798752 8/21/68 男 2016/6/6 大专 81366 8 +湖北 湖北襄阳 5018123702 4/2/72 女 2015/11/13 高中 81350 1 +黑龙江 黑龙江牡丹江 684299082 11/7/79 女 2014/11/19 大专 81341 1 +重庆 重庆渝中 498771852 10/11/83 女 2013/1/7 本科 81337.77 9 +山东 山东泰安 5168318682 11/19/77 女 2016/6/12 高中 81336 10 +黑龙江 黑龙江大庆 458210502 5/27/82 女 2012/3/22 大专 81325 8 +深圳 深圳南山 321757462 4/12/81 女 2009/8/3 本科 81303.63 7 +北京 北京东城 572473432 9/16/89 男 2013/8/6 本科 81299.83 0 +四川 四川高新 5144102192 12/11/76 女 2016/5/23 大专 81270 6 +安徽 安徽合肥 23242682 1/4/64 女 2004/11/1 高中 81193.59 16 +青岛 青岛一支 558812482 10/8/77 女 2013/6/28 中专 81137.73 8 +上海 上海黄浦 5063362882 10/21/84 女 2016/1/28 本科 81094 8 +四川 四川青羊 5113053122 10/17/72 女 2016/3/28 大专 81092 6 +宁波 宁波象山 5199675022 11/18/75 男 2016/8/1 高中 81071.5 12 +湖北 湖北武汉 262519492 8/7/79 女 2008/11/11 大专 81049.14 9 +河南 河南郑州 491457912 10/28/69 女 2012/12/19 本科 81044.06 14 +广西 广西南宁 281158842 8/3/75 男 2009/2/25 大专 81010.43 13 +四川 四川内江 65945572 10/7/76 女 2005/11/21 中专 81001.1 13 +云南 云南昆明 380083492 10/23/68 女 2010/6/11 大专 80975.45 12 +山东 山东枣庄 285233542 5/10/73 女 2009/3/17 大专 80925.91 14 +山东 山东淄博 5209643382 7/19/70 女 2016/8/8 高中 80913 10 +广东 广东广州 5187777602 12/20/86 女 2016/7/7 中专 80883.9 12 +吉林 吉林长春 164004062 10/3/66 女 2007/9/19 大专 80874.5 12 +黑龙江 黑龙江齐齐哈尔 45508302 10/16/57 女 2005/6/1 大专 80869.8 7 +河南 河南开封 290177472 5/27/66 女 2009/4/1 大专 80851.12 10 +黑龙江 黑龙江哈尔滨 625665302 5/15/85 女 2014/4/28 本科 80845.83 1 +云南 云南昆明 148656842 8/8/76 女 2007/7/1 本科 80840.18 2 +福建 福建龙岩 5003223782 12/13/77 女 2015/10/21 大专 80833.5 9 +湖北 湖北十堰 5172695452 8/14/82 女 2016/6/15 大专 80823 4 +四川 四川绵阳 5180735582 5/12/86 女 2016/6/23 高中 80796.5 17 +山西 山西长治 273298772 9/29/54 男 2009/1/1 大专 80779 7 +重庆 重庆渝中 749833812 11/21/78 女 2015/4/28 本科 80763.8 10 +深圳 深圳福田 17716752 4/26/67 女 2004/8/24 本科 80729.13 5 +安徽 安徽芜湖 337625822 10/3/66 女 2009/10/1 高中 80701.61 7 +云南 云南昆明 5234543372 11/5/81 女 2016/9/18 本科 80701 8 +河南 河南商丘 717922212 7/8/75 男 2015/3/23 高中 80693.8 9 +四川 四川南充 76362812 12/29/70 女 2006/2/25 高中 80646.84 5 +湖南 湖南长沙 5154642582 8/3/63 男 2016/5/31 本科 80627 7 +福建 福建泉州 239149332 5/19/76 女 2008/7/6 高中 80621.11 13 +浙江 浙江温州 703644092 4/6/82 男 2015/1/10 高中 80606.1 5 +青岛 青岛一支 5031736312 12/11/78 女 2015/11/26 本科 80539 11 +深圳 深圳宝安 72851692 11/22/80 女 2006/1/4 高中 80497.39 11 +江苏 江苏泰州 99538972 1/17/65 女 2006/10/1 大专 80478.01 5 +山西 山西临汾 255753082 11/20/68 女 2008/10/7 高中 80462.3 8 +山东 山东烟台 538978702 4/21/83 女 2013/6/18 中专 80432.53 7 +辽宁 辽宁本溪 187279592 8/4/56 女 2007/12/5 大专 80379.41 3 +江西 江西南昌 451034872 1/6/80 女 2012/1/8 高中 80349.61 4 +山东 山东菏泽 5215158812 6/8/78 女 2016/8/14 高中 80326 5 +江苏 江苏南京 664935922 12/10/75 男 2014/8/30 大专 80259 3 +山东 山东济南 10792212 11/22/76 女 2004/3/1 中专 80226.59 10 +山东 山东济宁 183896872 9/16/77 女 2007/11/24 中专 80210.45 12 +深圳 深圳宝安 5115086522 2/20/78 女 2016/3/31 大专 80168 6 +江西 江西南昌 103656382 8/4/65 男 2006/11/1 大专 80167.22 5 +黑龙江 黑龙江牡丹江 427167432 10/5/73 女 2011/6/17 大专 80085.18 9 +北京 北京东城 5113955132 4/15/77 女 2016/3/29 本科 80043.91 10 +重庆 重庆巴南 580140202 1/15/72 女 2013/9/30 高中 80011 8 +广东 广东广州 5210926122 10/17/83 女 2016/8/9 高中 80008 5 +湖南 湖南郴州 829705152 3/16/89 女 2015/8/5 高中 80000 0 +北京 北京良乡 5099597332 8/24/63 女 2016/3/18 大专 80000 0 +辽宁 辽宁本溪 5069695022 4/16/70 女 2016/2/29 大专 80000 0 +四川 四川高新 751202422 3/2/92 女 2015/4/30 本科 80000 0 +河南 河南濮阳 546681342 1/3/87 女 2013/6/24 高中 80000 0 +天津 天津蓟州 5096151582 3/10/80 女 2016/3/16 大专 79950 1 +广西 广西南宁 346020442 4/12/81 女 2009/11/26 大专 79802.11 7 +山东 山东烟台 597047232 10/18/63 女 2013/12/25 大专 79798.83 3 +山东 山东德州 627042422 4/20/67 女 2014/5/6 高中 79795 4 +山西 山西运城 5110141322 3/1/77 女 2016/3/24 高中 79778.5 7 +大连 大连明锐 550371112 5/6/53 男 2013/6/25 大专 79765.5 1 +福建 福建泉州 5007210752 3/22/78 女 2015/10/30 高中 79762 10 +山东 山东临沂 831544382 4/2/88 女 2015/8/6 中专 79758.5 26 +四川 四川青羊 116746912 1/12/82 男 2007/1/22 本科 79747.55 9 +上海 上海陆家嘴 249123582 5/15/78 女 2008/9/1 高中 79729.2 4 +广东 广东中山 696141592 8/18/79 女 2014/12/23 大专 79727.3 7 +北京 北京海淀 571230852 8/8/91 女 2013/7/31 高中 79701.6 2 +天津 天津市区二支 848338362 4/12/80 女 2015/8/10 本科 79653.5 17 +深圳 深圳福田第二 409943442 6/3/92 女 2010/12/20 中专 79621.43 12 +广东 广东中山 681551952 1/30/82 女 2014/11/12 硕士 79610 4 +佛山 佛山禅城 95383052 6/4/71 男 2006/8/30 大专 79594.74 6 +山东 山东潍坊 671575332 3/29/87 女 2014/9/23 中专 79584 13 +重庆 重庆渝中 522765052 12/22/89 女 2013/5/24 大专 79571.02 10 +陕西 陕西西安 237233892 11/28/69 男 2008/7/1 高中 79547.85 1 +青岛 青岛一支 550452062 6/28/81 女 2013/6/25 本科 79507.86 9 +黑龙江 黑龙江哈尔滨 412034732 4/20/76 女 2010/12/29 大专 79479.73 11 +湖北 湖北武汉 498487692 11/8/77 男 2013/1/5 本科 79471.05 5 +山东 山东济南 5144038772 7/16/81 女 2016/5/23 中专 79463.3 10 +山东 山东日照 769109182 3/2/76 女 2015/6/23 中专 79440 8 +广东 广东惠州 9361772 8/10/70 女 2003/12/12 大专 79398.95 4 +四川 四川内江 262475112 7/15/68 女 2008/11/10 中专 79349.88 8 +四川 四川青羊 151147442 3/1/70 女 2007/7/20 本科 79300.94 8 +北京 北京海淀 689035332 11/30/77 女 2014/12/5 大专 79290.5 19 +重庆 重庆永川 755094702 12/15/76 女 2015/5/19 大专 79286 17 +黑龙江 黑龙江哈尔滨 492165942 9/26/66 女 2012/12/20 大专 79273 4 +湖北 湖北武汉 5015286192 10/10/73 女 2015/11/10 高中 79272.8 20 +云南 云南昆明 380085862 12/17/66 女 2010/6/11 本科 79240.57 6 +北京 北京平谷 5205904832 8/31/86 男 2016/8/5 本科 79221 21 +上海 上海陆家嘴 5120820392 6/8/76 男 2016/4/13 高中 79215.3 10 +山东 山东淄博 5177680532 3/22/86 男 2016/6/21 大专 79182.3 10 +广东 广东惠州 5203392802 2/1/57 女 2016/8/3 大专 79168.5 6 +安徽 安徽合肥 483169232 8/17/81 男 2012/11/15 大专 79153.55 25 +河南 河南郑州 866071912 7/16/77 女 2015/9/2 本科 79145.6 11 +辽宁 辽宁沈阳 605350292 7/21/73 女 2014/1/11 高中 79144.14 3 +浙江 浙江绍兴 5146242562 4/12/62 女 2016/5/25 大专 79117 5 +云南 云南昆明 5002202062 5/20/78 女 2015/10/16 大专 79090 1 +四川 四川德阳 26726172 11/12/73 女 2004/12/22 高中 79060.53 8 +四川 四川高新 5044923812 2/5/86 女 2015/12/12 大专 79050.3 7 +山东 山东淄博 272907702 11/8/72 女 2008/12/25 高中 79041.29 6 +四川 四川雅安 5189152842 6/7/77 男 2016/7/15 大专 79024.2 13 +大连 大连海川 496005332 1/7/79 男 2012/12/28 本科 79020 2 +广西 广西南宁 5114339532 11/6/80 女 2016/3/30 中专 79009.4 6 +陕西 陕西汉中 818778622 4/24/86 女 2015/7/31 大专 79000 0 +湖北 湖北孝感 556773112 7/8/76 男 2013/6/27 大专 78910 7 +山东 山东临沂 268142422 5/7/63 女 2008/12/3 大专 78870.65 9 +山东 山东枣庄 395903702 5/4/66 男 2010/9/16 高中 78869.44 7 +湖北 湖北襄阳 5078972612 12/3/76 女 2016/3/7 高中 78867 2 +福建 福建龙岩 257358672 6/2/76 女 2008/10/17 高中 78837.38 9 +辽宁 辽宁沈阳 5008257812 8/22/80 男 2015/11/2 本科 78833 21 +江西 江西萍乡 708229052 10/1/74 女 2015/2/5 本科 78829.5 8 +浙江 浙江台州 251086472 3/13/68 女 2008/9/11 高中 78828.48 9 +四川 四川青羊 483775792 9/13/79 女 2012/11/20 中专 78815.79 6 +四川 四川青羊 177734652 9/13/69 女 2007/11/8 大专 78803.29 8 +江苏 江苏常州 18111592 10/13/67 女 2004/8/31 高中 78794.07 8 +湖北 湖北黄冈 836632762 5/10/69 女 2015/8/8 高中 78770 3 +四川 四川青羊 5196424172 5/29/80 女 2016/7/29 大专 78754 9 +湖南 湖南长沙 5174719782 5/22/64 男 2016/6/17 本科 78747.7 15 +四川 四川高新 192911732 2/14/79 女 2007/12/24 高中 78707.57 1 +北京 北京良乡 5205790592 5/6/88 男 2016/8/5 大专 78698 6 +深圳 深圳福田 4510102 3/22/69 女 2003/6/3 本科 78689.77 5 +湖北 湖北十堰 5019741892 3/20/73 女 2015/11/16 高中 78619.5 15 +黑龙江 黑龙江绥化 432504802 1/9/74 女 2011/8/2 高中 78612.93 3 +山东 山东烟台 5216530382 9/22/88 男 2016/8/15 大专 78612 8 +湖北 湖北黄石 93041372 4/27/79 女 2006/8/8 高中 78504.4 17 +黑龙江 黑龙江大庆 593889912 2/25/78 女 2013/12/20 本科 78504 9 +浙江 浙江杭州 790390422 10/27/94 男 2015/7/15 大专 78485 3 +重庆 重庆渝中 225213432 1/6/77 女 2008/5/22 本科 78460.41 18 +福建 福建厦门 5103836322 9/30/90 女 2016/3/22 本科 78448 6 +江西 江西赣州 363688122 5/1/71 女 2010/3/15 初中 78442.91 6 +辽宁 辽宁沈阳 668446072 3/3/83 女 2014/9/11 大专 78436.4 11 +辽宁 辽宁丹东 21817412 10/31/58 女 2004/10/29 中专 78405.33 4 +湖北 湖北宜昌 467908132 2/5/80 女 2012/6/13 大专 78402.69 14 +云南 云南昆明 864513772 10/6/83 女 2015/8/28 高中 78384.1 2 +大连 大连银洲 623450352 6/3/87 男 2014/4/15 本科 78339.3 0 +浙江 浙江湖州 327233842 10/30/70 女 2009/8/27 初中 78316.71 2 +黑龙江 黑龙江黑河 629790522 11/1/78 女 2014/5/22 大专 78309.45 0 +四川 四川青羊 380722852 6/9/84 女 2010/6/18 本科 78264.6 12 +辽宁 辽宁沈阳 311844342 12/12/70 女 2009/6/30 大专 78262.86 3 +佛山 佛山顺德龙江 443345912 5/1/76 女 2011/11/4 大专 78254.59 6 +河南 河南郑州 5207142222 6/2/78 男 2016/8/6 大专 78250.5 9 +山东 山东临沂 709363322 9/20/92 男 2015/2/13 大专 78205.1 28 +黑龙江 黑龙江齐齐哈尔 353766762 10/25/60 女 2010/1/1 大专 78183.36 4 +湖北 湖北襄阳 625553922 7/10/86 女 2014/4/28 中专 78170.2 23 +黑龙江 黑龙江齐齐哈尔 712706402 6/23/72 女 2015/3/17 高中 78153 2 +重庆 重庆渝中 5161288432 9/10/74 女 2016/6/3 高中 78149.5 23 +深圳 深圳宝安 588087362 5/5/74 女 2013/12/3 大专 78072.75 14 +山东 山东济南 5074011072 4/29/82 女 2016/3/4 大专 78063.1 7 +浙江 浙江杭州 710678612 8/31/81 女 2015/2/28 大专 78063 8 +重庆 重庆江津 5092333202 9/14/72 女 2016/3/14 高中 78047 8 +深圳 深圳福田 5005515502 8/29/78 女 2015/10/26 大专 78034.29 4 +上海 上海黄浦 4176392 6/26/60 女 2003/5/31 大专 78020.21 7 +山东 山东潍坊 651018172 2/18/70 女 2014/8/4 中专 78013.17 11 +深圳 深圳福田 5153977152 10/12/69 女 2016/5/30 高中 78000 0 +深圳 深圳福田第二 299224432 4/17/82 女 2009/5/13 本科 77896 10 +天津 天津滨海新区 580086882 7/13/80 女 2013/9/30 大专 77850.62 7 +河南 河南郑州 28916832 11/17/72 女 2005/1/11 大专 77840.2 13 +北京 北京良乡 462612072 6/7/77 女 2012/5/1 高中 77829.74 0 +山东 山东潍坊 5228488592 6/10/64 女 2016/9/2 高中 77820 2 +湖北 湖北武汉 417178802 6/12/86 女 2011/3/8 高中 77794.28 16 +安徽 安徽合肥 392992032 3/12/77 女 2010/9/1 中专 77767.5 5 +山东 山东威海 722385882 6/26/78 男 2015/3/25 大专 77767 11 +青岛 青岛一支 421885052 10/26/69 女 2011/4/22 大专 77754.95 18 +河南 河南南阳 201170412 10/25/76 女 2008/1/18 大专 77749.61 9 +北京 北京良乡 655715482 11/11/82 女 2014/8/13 大专 77744.05 0 +云南 云南昆明 149885742 4/12/76 女 2007/7/1 大专 77736.87 4 +浙江 浙江绍兴 5198578112 11/8/71 女 2016/8/1 大专 77678 13 +吉林 吉林吉林 527713722 1/8/69 男 2013/6/5 大专 77674.84 5 +山东 山东淄博 263262692 6/14/81 女 2008/11/14 中专 77672.07 4 +广东 广东广州 697727092 10/8/70 女 2014/12/24 本科 77648.69 8 +广东 广东惠州 373448552 10/11/80 女 2010/5/5 大专 77628.02 14 +山东 山东济南 5227989052 12/24/75 女 2016/9/1 大专 77614.5 9 +山东 山东滨州 273892082 12/3/69 女 2009/1/1 中专 77609.02 9 +江苏 江苏南京 8462812 3/22/71 女 2003/10/20 本科 77607.84 11 +辽宁 辽宁铁岭 5192684722 3/18/84 女 2016/7/26 大专 77604.7 13 +浙江 浙江杭州 158272822 10/23/70 女 2007/8/20 大专 77603.53 5 +湖北 湖北十堰 137215312 3/15/63 女 2007/5/25 大专 77593.69 14 +广东 广东广州 265672342 4/12/75 女 2008/11/24 大专 77593.61 9 +天津 天津市区二支 396236712 1/5/69 女 2010/9/18 大专 77575.58 11 +江西 江西南昌 5153987122 12/4/81 女 2016/5/30 高中 77545.5 5 +四川 四川青羊 5222875262 11/23/84 女 2016/8/24 本科 77511 16 +广东 广东广州 738630662 3/11/68 女 2015/4/9 高中 77503.33 5 +北京 北京东城 769112 10/2/67 女 2002/3/8 本科 77502.12 2 +北京 北京海淀 509067532 2/26/91 男 2013/4/1 本科 77500 2 +山东 山东滨州 5194107042 5/11/77 女 2016/7/27 大专 77492 22 +湖北 湖北十堰 472408372 6/5/90 女 2012/7/19 大专 77435 10 +深圳 深圳罗湖 127551182 4/24/64 男 2007/4/1 本科 77428.78 5 +北京 北京海淀 213232882 1/3/82 女 2008/4/1 高中 77343.2 6 +山东 山东烟台 174004272 1/3/79 女 2007/11/1 大专 77316.89 15 +河北 河北石家庄 608142772 5/12/67 女 2014/1/27 高中 77315 3 +四川 四川高新 462062 11/27/73 女 2001/12/31 本科 77288.05 7 +广东 广东阳江 5006028612 11/4/88 女 2015/10/27 高中 77224.9 11 +四川 四川青羊 714263842 9/10/79 女 2015/3/19 大专 77212.7 8 +河北 河北石家庄 680822432 5/1/84 女 2014/11/8 大专 77154.5 13 +陕西 陕西西安 702202072 10/10/82 男 2015/1/3 大专 77131.5 4 +北京 北京海淀 295953092 11/29/81 男 2009/5/1 硕士 77102.35 5 +青岛 青岛一支 5187406842 4/24/68 女 2016/7/5 本科 77091.5 6 +湖北 湖北襄阳 5126149022 7/2/77 女 2016/4/21 高中 77080 7 +河北 河北石家庄 657527082 9/6/77 女 2014/8/18 本科 77063.67 12 +浙江 浙江嘉兴 422774102 4/1/90 女 2011/4/29 大专 77054.2 9 +河南 河南南阳 588108852 3/25/81 女 2013/12/3 大专 77012 11 +重庆 重庆渝中 764761902 10/11/78 女 2015/6/15 中专 76926.5 10 +青岛 青岛一支 386684932 3/4/73 女 2010/7/20 本科 76919.01 12 +四川 四川高新 616208152 4/8/67 男 2014/3/21 硕士 76916.31 1 +四川 四川高新 876729632 12/21/78 女 2015/9/23 本科 76890.5 17 +黑龙江 黑龙江哈尔滨 292599402 10/25/73 女 2009/4/14 高中 76821.32 15 +深圳 深圳福田第二 334723362 2/16/77 女 2009/9/29 大专 76793.36 10 +四川 四川高新 572126742 5/17/75 女 2013/8/2 大专 76791.21 13 +北京 北京平谷 192873492 6/10/75 男 2007/12/24 高中 76775.61 9 +河南 河南开封 667325752 12/31/85 女 2014/9/5 大专 76732.46 15 +湖北 湖北武汉 177157122 11/12/61 女 2007/11/7 中专 76723.82 7 +青岛 青岛一支 265958872 11/30/72 女 2008/11/25 本科 76723.63 11 +深圳 深圳宝安 691375612 7/23/73 女 2014/12/16 大专 76716.22 6 +重庆 重庆渝中 760135632 5/26/91 男 2015/6/3 本科 76701 23 +福建 福建泉州 5163578352 9/4/74 女 2016/6/6 中专 76693 15 +广东 广东珠海 61682042 9/23/74 女 2005/10/12 大专 76669.24 15 +大连 大连银洲 680191582 3/12/69 男 2014/11/4 本科 76650 7 +贵州 贵州贵阳 694282542 2/10/68 女 2014/12/22 本科 76638.9 17 +黑龙江 黑龙江哈尔滨 217392302 11/30/74 女 2008/4/21 大专 76633.97 11 +重庆 重庆渝中 437078182 9/5/79 女 2011/9/8 大专 76615.83 12 +广东 广东惠州 150916872 10/19/68 女 2007/7/19 中专 76586.03 3 +四川 四川青羊 862666032 9/14/86 男 2015/8/24 本科 76537 7 +河北 河北衡水 524330032 9/20/83 女 2013/5/29 中专 76536.57 3 +宁波 宁波城区 397357032 12/1/74 女 2010/9/25 中专 76535.08 9 +北京 北京海淀 52053082 10/31/59 女 2005/7/20 大专 76489.52 4 +湖北 湖北武汉 5155231852 10/22/84 女 2016/5/31 大专 76473 3 +辽宁 辽宁鞍山 590629182 3/24/70 男 2013/12/12 高中 76464.64 11 +四川 四川高新 613109592 5/9/84 女 2014/3/13 大专 76430.77 10 +四川 四川高新 757789212 5/10/83 女 2015/5/27 本科 76421.6 15 +重庆 重庆渝中 5032044552 2/18/84 女 2015/11/26 本科 76316 15 +贵州 贵州遵义 5196847552 3/2/82 女 2016/7/29 中专 76314.1 24 +湖北 湖北十堰 5043997292 1/2/80 女 2015/12/10 高中 76306 3 +四川 四川青羊 330740222 12/15/82 女 2009/9/17 大专 76301.1 3 +北京 北京海淀 28205732 1/5/79 男 2005/1/4 本科 76291.49 3 +上海 上海黄浦 452033902 8/21/86 女 2012/2/1 大专 76249.49 0 +山东 山东济宁 718916772 8/9/83 女 2015/3/24 高中 76238.7 8 +广东 广东惠州 203145582 4/8/81 男 2008/2/1 中专 76227.52 13 +四川 四川高新 5084877842 8/12/80 男 2016/3/10 本科 76221.6 13 +福建 福建福州 166761372 1/1/78 女 2007/9/25 高中 76217.3 10 +福建 福建漳州 507146652 1/2/75 女 2013/3/16 本科 76212.84 17 +四川 四川乐山 684496152 8/1/66 女 2014/11/19 高中 76193 3 +黑龙江 黑龙江哈尔滨 307553452 9/28/73 女 2009/6/22 大专 76187.97 5 +安徽 安徽亳州 5186739612 3/28/89 女 2016/7/1 高中 76155 18 +湖北 湖北武汉 417022072 2/4/77 女 2011/3/7 大专 76145.22 12 +江西 江西赣州 5190426512 5/2/70 男 2016/7/20 高中 76134 9 +重庆 重庆永川 5186742312 10/20/84 女 2016/7/1 本科 76111.9 23 +四川 四川高新 5101742202 6/14/82 女 2016/3/21 大专 76073 7 +佛山 佛山顺德龙江 841630982 12/22/85 女 2015/8/9 高中 76000 0 +湖北 湖北十堰 651677352 3/29/75 女 2014/8/5 大专 75970.17 8 +深圳 深圳南山 5204928462 1/20/94 男 2016/8/4 高中 75960.5 9 +山东 山东烟台 5023361702 5/5/80 男 2015/11/19 高中 75909.7 9 +江西 江西南昌 5176593592 3/10/89 女 2016/6/20 高中 75902 9 +四川 四川成都 713580102 8/19/72 女 2015/3/18 大专 75831.5 12 +江苏 江苏扬州 295329082 1/13/70 女 2009/4/25 高中 75813.05 11 +广西 广西南宁 5199600732 11/29/78 女 2016/8/1 本科 75796.9 12 +江西 江西南昌 288502512 9/21/82 男 2009/3/25 本科 75774.47 5 +青岛 青岛城阳 686352132 2/12/82 男 2014/11/20 大专 75759.5 6 +河北 河北沧州 688071472 7/10/69 男 2014/11/30 高中 75752 7 +陕西 陕西汉中 5063610332 12/10/76 女 2016/1/29 大专 75749.5 7 +四川 四川青羊 249912 1/18/69 女 2001/12/31 大专 75743.48 11 +辽宁 辽宁沈阳 5203189732 9/4/76 女 2016/8/3 大专 75742.5 17 +河北 河北保定 5196158582 5/21/63 男 2016/7/29 中专 75740.2 19 +山东 山东济南 582221582 11/4/80 女 2013/10/28 本科 75731.91 18 +吉林 吉林长春 449531722 5/30/80 女 2011/12/31 大专 75694.13 1 +湖南 湖南永州 429669612 9/5/73 女 2011/6/28 中专 75674.12 12 +河北 河北石家庄 865017892 10/1/74 女 2015/8/31 高中 75670.5 21 +福建 福建南平 5023928262 8/4/69 男 2015/11/19 中专 75668.6 7 +四川 四川高新 24807662 1/21/69 男 2004/11/30 本科 75644.99 4 +四川 四川高新 5047913572 7/7/87 女 2015/12/18 大专 75640.4 8 +广东 广东珠海 7152962 9/16/70 女 2003/8/31 中专 75608.96 16 +北京 北京海淀 322665632 9/27/86 男 2009/8/6 本科 75525.63 12 +湖北 湖北荆州 228016522 9/15/73 男 2008/6/2 中专 75496.86 15 +四川 四川青羊 659531282 4/14/87 男 2014/8/21 本科 75492.45 0 +四川 四川青羊 5094589612 1/1/76 女 2016/3/15 大专 75457.3 14 +山东 山东临沂 5110288172 1/28/76 女 2016/3/24 中专 75455 20 +山东 山东济南 30299122 2/16/69 女 2005/1/28 高中 75446.77 6 +陕西 陕西西安 146162202 2/26/70 女 2007/6/25 本科 75443.76 5 +青岛 青岛一支 5213610412 3/21/84 女 2016/8/11 本科 75437.5 21 +天津 天津市区一支 471565102 12/12/89 女 2012/7/2 本科 75422.26 7 +山西 山西太原 828824612 1/17/73 女 2015/8/5 高中 75389.9 9 +黑龙江 黑龙江鹤岗 844981602 4/22/65 男 2015/8/10 大专 75369 2 +四川 四川青羊 663239472 1/4/82 女 2014/8/27 高中 75326.85 0 +浙江 浙江嘉兴 280326182 2/6/84 女 2009/2/23 大专 75320.05 2 +广东 广东汕头 492134542 2/7/74 男 2012/12/20 高中 75221.65 12 +青岛 青岛一支 430777922 11/23/74 女 2011/7/18 本科 75174.96 7 +广西 广西南宁 605023422 8/13/79 女 2014/1/9 本科 75171.97 4 +河北 河北保定 5101469342 10/24/69 女 2016/3/21 大专 75163.1 14 +广东 广东中山 96214042 10/9/79 女 2006/9/5 大专 75162.36 3 +四川 四川青羊 521615702 5/30/88 男 2013/5/22 本科 75114.7 21 +浙江 浙江温州 5192196052 7/28/76 女 2016/7/25 本科 75100.8 9 +佛山 佛山顺德龙江 722833342 1/4/89 女 2015/3/25 本科 75098.74 0 +四川 四川内江 292110632 11/3/81 男 2009/4/10 大专 75094.4 16 +福建 福建厦门 116459682 11/1/73 女 2007/1/21 高中 75088.17 13 +云南 云南昆明 609147942 6/9/68 女 2014/2/13 大专 75086.73 10 +广西 广西南宁 312354602 1/16/75 女 2009/7/1 大专 75083.95 2 +苏州 苏州新区 77324302 10/22/64 女 2006/3/6 高中 75080.85 2 +四川 四川青羊 461115062 6/27/70 女 2012/3/31 中专 75078.72 0 +苏州 苏州昆山 5185320892 4/11/82 女 2016/6/29 高中 75068.5 13 +湖北 湖北十堰 279322682 2/15/67 女 2009/2/13 大专 75065 6 +佛山 佛山顺德龙江 723209062 12/24/84 女 2015/3/25 高中 75001.4 12 +四川 四川青羊 158684412 11/16/82 女 2007/8/22 本科 74976.85 8 +广西 广西南宁 222291152 12/28/67 男 2008/5/9 大专 74965.56 15 +河南 河南焦作 255860962 1/9/57 男 2008/4/25 高中 74936.22 3 +山东 山东东营 75236082 8/17/57 女 2006/2/16 中专 74931.83 3 +黑龙江 黑龙江牡丹江 200541932 7/15/62 女 2008/1/15 大专 74928.04 10 +黑龙江 黑龙江哈尔滨 50344622 6/29/53 女 2005/6/30 中专 74919.55 1 +四川 四川高新 660311052 6/20/90 女 2014/8/22 本科 74905.7 14 +天津 天津蓟州 487806112 4/22/71 女 2012/12/6 高中 74890 5 +广东 广东惠州 77030232 5/5/78 女 2006/3/1 大专 74887.3 11 +四川 四川高新 27102862 4/1/73 女 2004/12/27 本科 74842.32 10 +湖南 湖南长沙 5186713302 8/6/93 男 2016/7/1 本科 74842 7 +四川 四川德阳 7825822 11/20/71 女 2003/9/18 大专 74833.52 3 +浙江 浙江金华 340317262 7/3/75 女 2009/11/3 高中 74833.43 6 +广东 广东韶关 486446712 11/3/78 女 2012/11/29 大专 74792.04 18 +黑龙江 黑龙江哈尔滨 54803552 8/1/66 女 2005/8/15 中专 74784.8 10 +四川 四川雅安 5138760892 10/28/81 女 2016/5/13 本科 74767.9 22 +四川 四川高新 5199170082 10/3/85 女 2016/8/1 大专 74759.5 13 +北京 北京海淀 509954212 1/7/88 女 2013/4/1 本科 74756.58 3 +青岛 青岛一支 639451582 11/2/78 女 2014/6/21 大专 74751.46 4 +山东 山东临沂 651969052 12/30/71 女 2014/8/5 高中 74737 8 +四川 四川成都 592167502 3/5/68 女 2013/12/16 高中 74728.39 9 +青岛 青岛一支 288425332 1/16/72 女 2009/3/25 大专 74719.73 10 +辽宁 辽宁本溪 5058855532 11/20/70 女 2016/1/8 本科 74700 1 +深圳 深圳福田 158696692 10/17/80 女 2007/8/22 本科 74698.27 9 +浙江 浙江温州 765883892 11/19/74 女 2015/6/18 高中 74690 5 +浙江 浙江绍兴 5148240582 10/11/68 女 2016/5/26 中专 74629.5 9 +云南 云南昆明 5117669242 8/14/82 女 2016/4/7 大专 74598.3 6 +山东 山东济南 5145858162 3/19/88 男 2016/5/25 大专 74580 2 +广东 广东广州 342446792 1/5/75 女 2009/11/12 高中 74557.13 3 +湖北 湖北武汉 465228972 1/14/71 女 2012/5/21 大专 74523 15 +山东 山东济宁 505457042 11/21/67 男 2013/3/5 大专 74492.34 10 +重庆 重庆永川 869698182 3/8/88 女 2015/9/10 中专 74471 21 +四川 四川青羊 354664052 2/17/90 女 2009/12/31 本科 74437.13 8 +湖北 湖北襄阳 112569772 4/8/66 女 2007/1/1 中专 74418 12 +山东 山东烟台 334927272 11/3/71 女 2009/9/30 高中 74407.56 6 +河北 河北石家庄 520404252 3/9/63 女 2013/5/15 高中 74405.74 5 +四川 四川高新 611177132 3/16/86 女 2014/3/5 大专 74361.8 13 +浙江 浙江金华 702526842 2/19/79 女 2015/1/5 高中 74340 8 +广东 广东广州 756326672 8/9/65 女 2015/5/23 高中 74330 6 +辽宁 辽宁铁岭 5135829082 10/10/77 女 2016/5/9 本科 74256.3 16 +深圳 深圳罗湖 128754122 6/25/72 女 2007/4/3 本科 74208.36 3 +江苏 江苏连云港 302280282 1/17/85 女 2009/5/20 高中 74207.2 8 +北京 北京海淀 5221414862 5/5/71 女 2016/8/22 本科 74200 7 +青岛 青岛一支 93347722 7/6/70 女 2006/8/14 高中 74176.61 9 +浙江 浙江杭州 5191682042 11/10/70 女 2016/7/25 高中 74153 9 +四川 四川高新 5001065272 10/11/79 男 2015/10/13 本科 74130 8 +山东 山东淄博 5048982372 5/29/81 女 2015/12/21 中专 74120.3 12 +吉林 吉林延边 866695922 8/25/73 男 2015/9/5 高中 74118 1 +浙江 浙江金华 276515822 12/5/69 女 2009/1/9 大专 74097.16 3 +山东 山东威海 5100321682 8/14/72 女 2016/3/19 大专 74092 4 +山西 山西临汾 232364772 6/13/70 女 2008/6/19 大专 74089.9 2 +山东 山东聊城 164707622 12/16/67 女 2007/9/22 中专 74082.73 9 +河北 河北唐山 435021362 10/27/72 男 2011/8/23 本科 74078.94 13 +青岛 青岛一支 183466862 7/14/77 女 2007/11/24 大专 74074.24 17 +湖北 湖北武汉 418551182 8/4/76 女 2011/3/22 大专 74070.32 13 +福建 福建泉州 91658112 9/8/69 女 2006/7/24 高中 74057.81 9 +北京 北京良乡 5114446502 1/26/84 男 2016/3/30 大专 74055.6 15 +重庆 重庆江津 433111092 3/18/70 女 2011/8/8 大专 74053.3 20 +江西 江西上饶 606456232 1/9/71 女 2014/1/20 大专 74046 2 +湖北 湖北随州 483588632 6/18/69 女 2012/11/19 高中 74033.57 11 +山东 山东威海 531011722 9/15/83 女 2013/6/9 中专 74017.05 14 +浙江 浙江杭州 5191115482 1/28/71 女 2016/7/22 高中 74016.5 9 +四川 四川高新 5199779292 7/8/80 女 2016/8/1 大专 74014.6 10 +青岛 青岛一支 675624072 8/13/82 女 2014/10/2 大专 74010 3 +四川 四川青羊 271147052 8/26/79 女 2008/12/19 大专 74007.8 7 +四川 四川乐山 640032882 5/1/74 女 2014/6/23 大专 73999.15 3 +山东 山东德州 238108292 11/5/70 女 2008/7/2 高中 73974.82 1 +陕西 陕西汉中 625333962 3/21/70 女 2014/4/25 高中 73955.84 10 +云南 云南昆明 482194762 5/18/68 女 2012/11/5 大专 73950.69 5 +辽宁 辽宁铁岭 5066898362 12/19/80 女 2016/2/19 本科 73935.2 12 +四川 四川青羊 5020692852 11/24/72 女 2015/11/17 大专 73924 8 +山东 山东威海 62849112 11/11/65 女 2005/10/26 高中 73893.47 13 +江苏 江苏无锡 592493672 7/16/75 女 2013/12/17 大专 73881.35 7 +湖北 湖北武汉 20884952 10/27/63 女 2004/10/16 大专 73873.55 9 +北京 北京海淀 389295422 11/11/86 男 2010/8/4 本科 73839.85 0 +北京 北京平谷 372381552 7/20/71 女 2010/5/1 高中 73838.88 11 +四川 四川高新 189942972 11/7/78 女 2007/12/14 大专 73832.08 9 +山东 山东淄博 592581462 2/13/78 女 2013/12/17 中专 73830.28 6 +辽宁 辽宁沈阳 665623162 3/20/56 女 2014/9/1 本科 73789.09 6 +天津 天津滨海新区 668492822 7/22/57 女 2014/9/11 大专 73775.18 5 +大连 大连开发区 19415302 8/16/72 男 2004/9/23 大专 73774.87 10 +苏州 苏州昆山 440608422 12/2/79 女 2011/9/30 中专 73773.06 6 +四川 四川青羊 5178399412 8/3/74 女 2016/6/21 大专 73771 9 +河南 河南洛阳 253246432 12/6/69 女 2008/9/24 高中 73767.16 11 +安徽 安徽合肥 449872272 4/3/82 女 2012/1/1 大专 73747.17 10 +吉林 吉林长春 166875122 10/24/78 女 2007/9/25 大专 73743 6 +山东 山东枣庄 395943342 10/12/63 女 2010/9/16 大专 73732.49 4 +广东 广东广州 369477692 1/2/79 女 2010/4/11 大专 73724.73 3 +青岛 青岛开发区 831956942 5/3/78 男 2015/8/6 高中 73703 6 +广西 广西桂林 582207902 9/29/76 女 2013/10/28 大专 73670.73 4 +江苏 江苏南京 5149197912 12/5/80 女 2016/5/27 本科 73645.1 8 +四川 四川青羊 5204299312 4/27/74 女 2016/8/3 大专 73628 3 +广东 广东广州 5208876452 3/30/73 女 2016/8/8 大专 73612 8 +广东 广东广州 477412 4/18/70 女 2002/1/23 本科 73599.91 7 +湖北 湖北武汉 126018302 12/14/78 女 2007/3/24 中专 73570.19 11 +云南 云南昆明 407073082 8/13/72 女 2010/12/1 大专 73564.51 7 +浙江 浙江杭州 640821862 6/23/88 女 2014/6/24 本科 73561.55 11 +广东 广东广州 5161354622 12/13/87 女 2016/6/3 本科 73559.3 1 +陕西 陕西安康 486176232 10/18/75 女 2012/12/1 高中 73521.5 9 +黑龙江 黑龙江哈尔滨 424571322 10/16/81 女 2011/5/20 本科 73506.95 2 +四川 四川德阳 7883882 12/7/68 女 2003/9/18 大专 73490.66 2 +重庆 重庆渝中 474282772 5/31/82 女 2012/8/10 大专 73489.76 7 +苏州 苏州新区 189979542 10/25/83 女 2007/12/14 大专 73480.98 8 +广东 广东江门 298691282 12/15/80 女 2009/5/11 中专 73438.36 16 +吉林 吉林吉林 265051402 12/13/65 女 2008/11/23 高中 73425.11 8 +甘肃 甘肃金昌 574527182 11/15/66 女 2013/8/25 大专 73417.6 6 +天津 天津市区二支 5204312952 7/7/87 女 2016/8/3 本科 73416.5 16 +天津 天津市区一支 580386122 12/29/69 女 2013/10/8 高中 73398.11 14 +浙江 浙江杭州 364480172 3/9/67 女 2010/3/17 高中 73367.76 7 +四川 四川乐山 5007835332 7/29/65 男 2015/10/31 中专 73336 11 +广东 广东中山 5167511872 1/26/77 女 2016/6/9 中专 73323.8 9 +北京 北京海淀 568982132 4/11/90 女 2013/7/8 大专 73323 9 +江苏 江苏南京 513740282 10/13/67 女 2013/4/2 大专 73302.86 6 +黑龙江 黑龙江哈尔滨 5143200182 5/20/71 女 2016/5/20 本科 73293.5 13 +北京 北京海淀 46131612 11/3/62 男 2005/6/3 大专 73231.57 5 +陕西 陕西渭南 413918072 9/10/62 男 2011/1/11 高中 73216 1 +吉林 吉林吉林 243586072 2/27/55 女 2008/8/1 大专 73179.79 6 +山东 山东威海 405048362 10/27/73 女 2010/11/22 初中 73172.52 12 +广东 广东韶关 507858452 4/6/82 女 2013/3/19 大专 73172.19 16 +浙江 浙江杭州 5137402892 2/6/78 女 2016/5/12 大专 73157 5 +浙江 浙江金华 591395272 4/10/79 女 2013/12/13 高中 73124 7 +山东 山东东营 460556922 12/25/72 女 2012/3/30 大专 73122.63 3 +贵州 贵州遵义 625940252 10/30/73 女 2014/4/29 高中 73120.93 11 +河南 河南郑州 75473762 10/2/78 男 2006/2/22 大专 73100.67 12 +江苏 江苏无锡 5202221532 12/13/76 女 2016/8/2 高中 73095.4 11 +湖北 湖北荆州 344220152 7/25/72 女 2009/11/20 高中 73058.84 15 +大连 大连明锐 729626412 1/22/61 女 2015/3/27 高中 73050 4 +山东 山东潍坊 281018162 6/27/80 女 2009/2/25 中专 73030.52 13 +山东 山东临沂 715147452 11/14/77 女 2015/3/20 高中 73018.6 16 +四川 四川青羊 619335042 9/27/76 女 2014/3/27 大专 72982.51 14 +山东 山东烟台 849218202 4/28/68 女 2015/8/10 中专 72911.5 5 +湖北 湖北襄阳 75595052 9/22/73 女 2006/2/23 中技 72910.5 18 +安徽 安徽合肥 5159959442 3/18/76 女 2016/6/2 本科 72904 10 +四川 四川绵阳 733754702 3/22/84 女 2015/4/1 大专 72900 5 +四川 四川高新 5160390022 6/16/78 女 2016/6/3 中专 72880 4 +四川 四川青羊 309372 4/27/69 女 2001/12/31 大专 72875.84 6 +北京 北京海淀 368922352 5/10/88 女 2010/4/6 本科 72868.05 7 +湖北 湖北武汉 251844052 11/23/72 女 2008/9/17 本科 72852.74 9 +浙江 浙江衢州 5144745882 5/1/90 男 2016/5/24 高中 72843 9 +江苏 江苏镇江 70634372 5/7/69 女 2005/12/26 高中 72836.78 10 +湖北 湖北十堰 167995712 12/11/78 女 2007/10/5 中专 72833.03 7 +安徽 安徽亳州 338405592 8/15/57 男 2009/10/1 高中 72763.55 5 +浙江 浙江衢州 625846322 9/24/81 女 2014/4/29 高中 72763.11 4 +湖南 湖南长沙 783959392 2/1/64 女 2015/7/8 高中 72762.5 2 +四川 四川高新 877428452 5/19/77 男 2015/9/24 大专 72740 33 +广东 广东珠海 110037862 7/28/71 女 2006/12/24 大专 72730.2 6 +四川 四川绵阳 609763442 7/1/85 女 2014/2/24 本科 72712.11 4 +四川 四川青羊 5096767092 8/9/85 女 2016/3/16 本科 72708.7 15 +湖北 湖北武汉 5176050572 1/10/84 女 2016/6/20 中专 72703 9 +山东 山东淄博 823567492 10/28/81 男 2015/8/1 大专 72699.5 7 +深圳 深圳南山 5185845772 10/6/95 女 2016/6/30 高中 72686 7 +河北 河北承德 5166232732 11/22/76 女 2016/6/8 高中 72672 8 +黑龙江 黑龙江哈尔滨 145229742 1/6/77 女 2007/6/25 本科 72633.52 9 +山东 山东日照 536033532 7/22/75 女 2013/6/15 大专 72598.91 9 +贵州 贵州遵义 497220552 3/13/79 女 2012/12/31 大专 72575 5 +广东 广东东莞 384700552 3/10/73 女 2010/6/29 大专 72561.8 3 +辽宁 辽宁营口 855905062 10/17/83 女 2015/8/10 大专 72554.79 5 +佛山 佛山顺德龙江 673233542 11/18/84 女 2014/9/25 高中 72553 4 +陕西 陕西渭南 402156782 11/29/73 女 2010/10/25 高中 72544.36 4 +辽宁 辽宁辽阳 618815842 5/28/58 女 2014/3/26 大专 72520.07 6 +重庆 重庆渝中 5002778662 10/1/79 女 2015/10/20 本科 72511.7 7 +辽宁 辽宁抚顺 5077533952 1/6/60 男 2016/3/7 大专 72503.4 3 +河南 河南郑州 6761892 9/21/71 男 2003/8/25 大专 72498.95 13 +四川 四川高新 5080197332 1/6/81 女 2016/3/8 大专 72493 23 +浙江 浙江杭州 240654852 1/18/76 女 2008/7/16 大专 72441.3 17 +山东 山东淄博 155881322 12/22/69 女 2007/8/2 大专 72440.57 12 +天津 天津市区二支 5049157332 3/18/76 女 2015/12/21 大专 72418.5 9 +江西 江西南昌 476398352 7/17/76 女 2012/8/30 高中 72391.7 7 +山东 山东德州 330725842 7/1/73 女 2009/9/16 大专 72382.96 12 +湖北 湖北恩施 572930102 12/21/70 女 2013/8/9 大专 72339.31 5 +四川 四川青羊 160709132 1/2/80 女 2007/9/1 本科 72323.28 0 +河北 河北衡水 562195202 10/10/77 女 2013/6/29 高中 72307.4 1 +陕西 陕西西安 237227752 2/27/77 女 2008/7/1 大专 72301.41 9 +四川 四川绵阳 266886862 9/29/86 男 2008/11/25 中专 72285.02 2 +广西 广西南宁 149144912 8/24/68 女 2007/7/11 大专 72250.84 2 +辽宁 辽宁营口 485557662 3/15/65 女 2012/11/25 高中 72247.2 9 +四川 四川青羊 76490242 3/17/71 女 2006/2/27 大专 72236.14 10 +四川 四川高新 845352852 7/8/86 女 2015/8/10 大专 72235.5 20 +河北 河北石家庄 5123978812 12/13/82 女 2016/4/18 本科 72211 9 +广东 广东广州 75370622 1/10/62 女 2006/2/21 大专 72195.01 12 +浙江 浙江金华 487589222 9/13/66 女 2012/12/5 高中 72177.29 4 +辽宁 辽宁盘锦 283047622 4/6/79 女 2009/3/6 大专 72165.82 12 +上海 上海黄浦 322185102 11/5/81 男 2009/8/4 本科 72156 19 +天津 天津市区一支 5125167252 2/9/83 女 2016/4/20 中专 72150 5 +浙江 浙江金华 5076136972 5/15/70 男 2016/3/5 大专 72140.8 7 +湖北 湖北武汉 90890622 4/9/76 女 2006/7/12 中专 72091.5 1 +辽宁 辽宁营口 291932682 3/11/76 女 2009/4/9 高中 72081.6 5 +贵州 贵州贵阳 235926142 12/2/68 男 2008/6/25 大专 72038.3 17 +辽宁 辽宁沈阳 504860662 12/28/80 女 2013/2/28 高中 72021 15 +安徽 安徽芜湖 532255972 12/6/79 女 2013/6/10 中专 72016.8 14 +新疆 新疆伊犁 5167771092 12/5/83 女 2016/6/10 高中 72015 4 +天津 天津市区二支 672361242 1/28/91 男 2014/9/24 本科 72000 0 +重庆 重庆永川 5149357432 5/5/71 女 2016/5/27 大专 71988 20 +河南 河南驻马店 115036782 11/24/71 男 2007/1/10 大专 71959 14 +湖北 湖北十堰 5193877732 11/24/76 女 2016/7/27 高中 71941 15 +浙江 浙江金华 732123152 9/27/75 女 2015/3/31 高中 71935.8 5 +四川 四川高新 5019599542 10/29/78 女 2015/11/16 本科 71884.2 17 +吉林 吉林长春 478537792 8/29/78 女 2012/9/21 本科 71857 5 +湖北 湖北荆州 141545142 2/15/79 女 2007/6/20 大专 71809.69 12 +四川 四川高新 461296082 8/7/87 女 2012/3/31 大专 71809.5 15 +重庆 重庆渝中 163445922 1/6/77 男 2007/9/17 本科 71791.13 12 +广西 广西南宁 749266192 5/23/82 女 2015/4/25 本科 71775.2 10 +山东 山东烟台 533414532 6/21/81 女 2013/6/13 中专 71755.21 7 +苏州 苏州昆山 5222780062 10/6/76 女 2016/8/24 高中 71744.5 7 +云南 云南昆明 228563352 10/1/83 男 2008/6/1 本科 71718.76 3 +四川 四川成都 5213919552 7/17/82 女 2016/8/12 高中 71706.5 14 +山东 山东济南 18703502 3/5/65 女 2004/9/1 中专 71682.72 11 +广东 广东惠州 162799722 4/26/77 女 2007/9/12 高中 71676.53 14 +四川 四川青羊 180289452 7/17/74 女 2007/11/17 中专 71666.28 4 +深圳 深圳福田 5103645022 4/20/80 女 2016/3/22 高中 71589 9 +湖北 湖北咸宁 422086862 10/29/81 女 2011/4/25 本科 71588.61 10 +苏州 苏州张家港 164563172 8/18/48 女 2007/9/21 大专 71578.63 2 +北京 北京良乡 5063345642 3/23/72 女 2016/1/27 大专 71573 4 +黑龙江 黑龙江佳木斯 151692872 8/19/62 女 2007/7/23 中专 71570.27 1 +福建 福建福州 5123870942 10/27/84 女 2016/4/18 高中 71564 12 +江苏 江苏徐州 5072047532 3/2/66 女 2016/3/2 高中 71563.5 5 +四川 四川高新 515147132 9/12/73 女 2013/4/15 大专 71555.05 11 +天津 天津武清 5177551822 1/5/76 男 2016/6/21 高中 71548 7 +四川 四川雅安 679998282 5/9/83 女 2014/11/3 高中 71537.9 6 +深圳 深圳福田第二 576915612 12/17/86 女 2013/9/6 中专 71510.14 5 +辽宁 辽宁本溪 5012960962 12/10/76 女 2015/11/8 本科 71504 1 +四川 四川青羊 881964562 10/4/87 女 2015/10/8 大专 71491.5 4 +黑龙江 黑龙江绥化 404101252 6/26/71 女 2010/11/12 大专 71483.74 11 +贵州 贵州贵阳 480922182 12/13/89 男 2012/10/23 本科 71466.49 14 +江西 江西上饶 345612622 12/18/75 女 2009/11/25 高中 71462.17 10 +河南 河南南阳 742820782 10/20/81 男 2015/4/10 大专 71460.2 17 +广东 广东广州 344400472 10/17/79 女 2009/11/23 大专 71459.7 7 +北京 北京海淀 65950042 10/26/77 女 2005/11/21 大专 71433.13 4 +天津 天津市区二支 398323262 12/6/61 女 2010/9/28 高中 71422.98 7 +内蒙古 内蒙呼和浩特 824871202 3/11/70 女 2015/8/3 高中 71408.9 8 +河北 河北保定 5141210332 10/25/77 女 2016/5/18 大专 71408 2 +河南 河南南阳 168644982 11/19/64 女 2007/10/8 高中 71396.63 18 +安徽 安徽合肥 5137871552 2/14/78 女 2016/5/12 中专 71379.1 9 +福建 福建福州 322014962 10/13/76 女 2009/8/3 中专 71357.93 7 +浙江 浙江温州 21839602 10/17/77 男 2004/10/29 大专 71356.78 8 +四川 四川高新 678252 1/13/76 女 2002/3/1 大专 71353.4 5 +青岛 青岛一支 5168584272 3/21/66 女 2016/6/12 大专 71350 1 +河南 河南南阳 606075072 9/5/80 女 2014/1/18 本科 71229 4 +广东 广东东莞 239651082 12/15/81 男 2008/7/10 中专 71228.61 7 +浙江 浙江湖州 494387732 2/10/70 女 2012/12/25 大专 71216.21 12 +山西 山西临汾 561741602 12/3/90 男 2013/6/28 大专 71192.33 3 +吉林 吉林延边 5171914952 2/22/68 男 2016/6/15 大专 71152.6 41 +山东 山东济南 712654482 4/6/80 女 2015/3/17 本科 71145.6 11 +河北 河北邢台 5198964312 4/3/64 男 2016/8/1 高中 71143.9 8 +四川 四川高新 5199536342 1/15/91 男 2016/8/1 本科 71109 7 +山东 山东烟台 5221795592 12/8/80 女 2016/8/23 本科 71079 13 +甘肃 甘肃酒泉 547752112 7/15/78 男 2013/6/24 高中 71069 1 +四川 四川青羊 5230212852 7/1/92 女 2016/9/5 本科 71053 3 +辽宁 辽宁沈阳 721676182 3/5/65 男 2015/3/25 高中 71019.8 7 +青岛 青岛一支 5129216812 4/6/78 女 2016/4/27 本科 71000 0 +山东 山东淄博 235831512 10/22/62 女 2008/6/25 高中 70983.5 8 +广东 广东广州 736839582 11/15/72 男 2015/4/7 高中 70941.5 15 +青岛 青岛一支 5069968852 11/2/79 男 2016/3/1 大专 70930 13 +湖北 湖北荆州 5122675162 8/13/72 男 2016/4/16 大专 70921.2 18 +海南 海南海口 555648052 5/3/73 女 2013/6/27 大专 70916.19 4 +安徽 安徽合肥 463144522 5/2/79 女 2012/5/2 本科 70912.89 4 +大连 大连开发区 333092782 2/25/65 女 2009/9/25 高中 70832.17 9 +内蒙古 内蒙古通辽 569491692 3/28/65 女 2013/7/16 本科 70831.12 5 +山东 山东威海 719178742 2/21/69 女 2015/3/24 大专 70819.5 12 +北京 北京海淀 659744402 8/18/93 男 2014/8/21 大专 70807.5 4 +河南 河南郑州 824854452 1/15/75 女 2015/8/3 本科 70791.58 1 +河北 河北石家庄 610926742 8/22/65 女 2014/3/4 高中 70780 2 +四川 四川高新 425454232 12/4/90 女 2011/5/30 中专 70774.2 8 +福建 福建福州 543747752 9/4/68 女 2013/6/21 高中 70747.08 5 +广东 广东广州 38374682 11/5/69 女 2005/4/11 本科 70738.6 16 +北京 北京平谷 729994592 1/12/81 女 2015/3/30 大专 70720 1 +安徽 安徽合肥 573004212 8/13/84 女 2013/8/9 大专 70719.67 6 +青岛 青岛开发区 242666592 11/11/81 女 2008/7/25 初中 70698.14 4 +天津 天津市区一支 796951252 2/2/80 女 2015/7/21 中专 70692 5 +上海 上海黄浦 462979552 11/1/79 女 2012/4/28 本科 70685.52 8 +北京 北京东城 519030202 9/24/86 女 2013/5/3 大专 70657.32 7 +四川 四川青羊 480514362 9/9/79 女 2012/10/16 中专 70611.7 4 +四川 四川青羊 808092572 10/10/81 女 2015/7/28 大专 70611.36 12 +云南 云南昆明 5193379092 12/12/67 女 2016/7/27 本科 70609 8 +河南 河南郑州 14355252 3/15/64 女 2004/6/8 大专 70603 15 +山东 山东临沂 5165304412 8/10/77 女 2016/6/7 中专 70591 24 +大连 大连海川 18030642 3/27/55 女 2004/8/30 大专 70568 3 +四川 四川青羊 398317122 3/20/70 女 2010/9/28 高中 70561.62 11 +辽宁 辽宁营口 695069152 2/4/76 女 2014/12/22 大专 70537.93 13 +新疆 鄯善 5040324932 7/14/75 女 2015/12/1 高中 70522 8 +江苏 江苏南京 426824512 6/18/75 女 2011/6/14 中专 70506 12 +北京 北京海淀 555030182 12/23/88 女 2013/6/30 大专 70496.3 6 +上海 上海黄浦 3010022 6/26/65 女 2003/3/10 中专 70493.83 10 +辽宁 辽宁沈阳 880387302 1/24/72 女 2015/9/30 高中 70483 7 +山东 山东德州 705393162 9/15/76 女 2015/1/21 中专 70475.5 16 +安徽 安徽合肥 243579232 12/1/73 女 2008/8/1 高中 70462.19 4 +北京 北京良乡 412068232 7/29/62 女 2011/1/1 高中 70456.41 4 +湖北 湖北宜昌 544729062 2/20/87 女 2013/6/22 大专 70447.18 9 +黑龙江 黑龙江佳木斯 311987122 10/12/67 女 2009/6/30 初中 70435.5 10 +陕西 陕西西安 809507932 12/28/76 女 2015/7/28 本科 70389.48 8 +山东 山东烟台 583860672 1/10/80 女 2013/11/12 高中 70383.48 11 +福建 福建福州 5111744072 1/11/74 男 2016/3/25 大专 70358 7 +河南 河南信阳 75460782 5/4/62 女 2006/2/22 大专 70347.39 9 +浙江 浙江嘉兴 871392262 10/2/56 女 2015/9/14 中专 70300 1 +浙江 浙江金华 5061714782 12/17/90 女 2016/1/18 高中 70277.5 16 +黑龙江 黑龙江黑河 455150882 8/31/57 男 2012/3/7 本科 70267.42 0 +湖北 湖北武汉 167496062 11/14/67 女 2007/10/1 本科 70254.9 18 +四川 四川高新 8960792 9/15/64 女 2003/11/17 大专 70252.83 10 +辽宁 辽宁本溪 874095282 3/8/70 女 2015/9/19 大专 70248 9 +辽宁 辽宁本溪 285708632 1/5/85 女 2009/3/18 中专 70237.28 1 +浙江 浙江温州 5191678442 1/24/79 女 2016/7/25 高中 70189 14 +河南 河南郑州 84786462 2/23/70 女 2006/5/18 本科 70174.12 20 +上海 上海黄浦 689776162 10/14/77 女 2014/12/9 大专 70160.2 16 +安徽 安徽合肥 25126022 8/17/71 女 2004/11/1 大专 70158.96 3 +浙江 浙江金华 612756762 8/28/74 女 2014/3/12 高中 70144.5 9 +山东 山东临沂 335615482 9/18/64 女 2009/10/6 中专 70125.7 4 +深圳 深圳福田第二 29825702 4/3/71 女 2005/1/26 大专 70087.94 1 +甘肃 甘肃陇南 5207852032 7/11/65 女 2016/8/6 高中 70087.5 10 +北京 北京海淀 702485532 5/6/95 女 2015/1/5 高中 70067 7 +深圳 深圳宝安 83757702 1/6/72 女 2006/4/30 高中 70061.74 7 +山东 山东威海 559363082 5/13/80 男 2013/6/28 初中 70061.46 16 +北京 北京海淀 862557722 3/11/94 男 2015/8/24 大专 70030.2 6 +湖北 湖北黄石 62597052 4/6/75 女 2005/10/25 中专 70022.97 19 +江西 江西宜春 241521712 9/23/73 女 2008/7/22 中专 70018.38 4 +广西 广西桂林 880398882 9/20/89 女 2015/9/30 高中 70000 0 +江西 江西九江 5086705402 4/14/90 女 2016/3/10 高中 70000 0 +河北 河北秦皇岛 696915222 12/23/68 女 2014/12/23 大专 70000 0 +大连 大连明锐 709634502 4/8/74 女 2015/2/15 中专 70000 0 +四川 四川绵阳 5039392042 7/14/67 女 2015/11/30 高中 69971.3 8 +辽宁 辽宁本溪 876876182 7/27/64 男 2015/9/23 大专 69960.6 4 +湖南 湖南郴州 628509702 11/11/74 女 2014/5/14 大专 69949.37 11 +四川 四川绵阳 5197355192 9/15/77 女 2016/7/30 高中 69949.3 14 +深圳 深圳福田第二 445910622 5/23/72 女 2011/12/2 硕士 69927.14 2 +广东 广东茂名 372952942 10/7/75 女 2010/4/30 大专 69914.01 6 +四川 四川绵阳 552333302 4/13/75 女 2013/6/26 高中 69899.3 16 +安徽 安徽合肥 473761902 7/29/83 女 2012/8/6 大专 69885.07 27 +江西 江西南昌 5173975492 10/15/83 女 2016/6/16 高中 69873.8 11 +江苏 江苏连云港 241092402 3/23/66 女 2008/7/21 高中 69861.19 8 +山东 山东淄博 627909282 7/29/79 女 2014/5/12 中专 69860.21 10 +河北 河北秦皇岛 5113995982 4/12/80 女 2016/3/29 高中 69858.8 8 +浙江 浙江绍兴 5069696892 11/21/82 女 2016/2/29 大专 69822 10 +甘肃 甘肃张掖 369387532 10/5/75 女 2010/4/9 大专 69820.19 8 +江苏 江苏无锡 5190839922 9/15/92 男 2016/7/22 大专 69807.8 6 +江苏 江苏扬州 91772832 8/24/68 女 2006/7/24 高中 69792.57 5 +山东 山东济南 5169038462 12/2/81 女 2016/6/13 本科 69787 7 +苏州 苏州昆山 5126176232 12/19/70 女 2016/4/22 高中 69767.5 6 +广东 广东广州 209417782 10/22/77 男 2008/3/21 大专 69759.51 3 +浙江 浙江金华 474654722 1/9/75 女 2012/8/15 大专 69736.55 8 +苏州 苏州张家港 5193687332 3/3/85 女 2016/7/27 本科 69724.32 10 +福建 福建厦门 5064852292 1/4/78 女 2016/2/3 本科 69723 8 +山东 山东烟台 548725182 12/22/80 女 2013/6/25 初中 69708.29 7 +河北 河北唐山 636339072 3/17/86 男 2014/6/13 大专 69703.9 10 +吉林 吉林长春 343635082 8/15/76 男 2009/11/17 大专 69699.81 0 +江苏 江苏南京 789699142 11/29/81 女 2015/7/14 大专 69695 9 +山东 山东烟台 5155627052 11/16/71 女 2016/5/31 中专 69693.4 12 +河南 河南三门峡 5088807692 4/7/74 男 2016/3/11 大专 69680 8 +安徽 安徽合肥 5069130262 9/12/77 女 2016/2/27 大专 69652.5 20 +四川 四川成都 683688052 2/5/78 女 2014/11/18 大专 69650 13 +重庆 重庆永川 656406762 11/30/77 女 2014/8/14 高中 69649.27 10 +湖北 湖北襄阳 58125142 6/24/67 女 2005/9/12 高中 69627.76 17 +浙江 浙江金华 5199898032 8/31/93 女 2016/8/1 高中 69621.5 6 +青岛 青岛开发区 148036602 6/21/74 女 2007/7/10 高中 69604.99 6 +福建 福建福州 336196782 1/17/73 女 2009/10/10 大专 69591.75 10 +湖北 湖北恩施 5216805042 3/20/76 女 2016/8/16 高中 69573.9 15 +江苏 江苏常州 274547492 8/15/64 女 2009/1/1 高中 69514.73 2 +海南 海南三亚 585329352 5/1/88 男 2013/11/21 大专 69512.3 2 +大连 大连明锐 336570132 2/22/76 女 2009/10/14 大专 69498.32 3 +湖北 湖北武汉 5152718922 12/1/82 女 2016/5/30 大专 69498 13 +天津 天津蓟州 296601662 6/21/68 女 2009/5/4 高中 69442.4 2 +江西 江西南昌 69121312 1/31/78 男 2005/12/12 高中 69440.34 7 +黑龙江 黑龙江哈尔滨 627419812 2/28/74 女 2014/5/8 大专 69428 3 +四川 四川青羊 650486692 5/21/82 女 2014/8/1 本科 69416.81 7 +四川 四川高新 676036632 8/21/79 女 2014/10/8 中专 69414.4 10 +北京 北京海淀 590470352 4/14/88 女 2013/12/11 大专 69408.95 4 +湖北 湖北武汉 45973482 10/23/69 男 2005/6/1 大专 69335.09 8 +贵州 贵州遵义 5197289972 6/18/66 女 2016/7/30 大专 69316 9 +浙江 浙江温州 874645182 9/21/84 女 2015/9/20 高中 69304 7 +山东 山东菏泽 342376452 10/30/78 男 2009/11/11 大专 69298.91 13 +辽宁 辽宁盘锦 5137331232 6/16/78 女 2016/5/12 本科 69272 5 +四川 四川青羊 87003782 7/27/79 女 2006/6/12 高中 69268.9 18 +山东 山东济南 5126282302 11/9/80 女 2016/4/22 大专 69251.5 15 +江西 江西南昌 5029682072 10/13/76 女 2015/11/24 高中 69240.5 18 +云南 云南曲靖 5163656312 9/8/74 女 2016/6/6 高中 69195 7 +上海 上海黄浦 5173749782 11/13/77 女 2016/6/16 本科 69191 6 +青岛 青岛一支 141774312 3/10/79 女 2007/6/20 中专 69152.45 12 +吉林 吉林四平 5189012292 5/31/75 男 2016/7/15 高中 69132.5 7 +山东 山东东营 107298972 10/25/79 女 2006/12/13 中专 69078.01 13 +佛山 佛山禅城 298780742 9/12/75 女 2009/5/11 高中 69070.48 8 +四川 四川高新 160898662 2/7/83 女 2007/9/3 大专 69040.8 8 +四川 四川德阳 18949422 10/4/54 女 2004/9/16 中专 69026.55 9 +江苏 江苏泰州 5147684892 7/10/65 女 2016/5/26 高中 68981 5 +山东 山东威海 5179257942 1/26/66 女 2016/6/21 高中 68980 7 +山西 山西阳泉 628804472 10/16/64 女 2014/5/16 高中 68931.74 6 +四川 四川青羊 3582112 2/13/69 女 2003/4/14 高中 68930.83 14 +甘肃 甘肃武威 5041209702 12/11/73 女 2015/12/3 高中 68899.9 3 +江苏 江苏南京 680639042 8/5/78 女 2014/11/7 中专 68899.4 15 +浙江 浙江嘉兴 318494632 4/30/70 男 2009/7/25 中专 68872.33 5 +山东 山东济宁 442350652 1/2/76 女 2011/10/22 中专 68862.29 8 +山西 山西阳泉 340883212 1/12/72 女 2009/11/6 大专 68859.36 2 +北京 北京海淀 651248042 8/8/91 女 2014/8/4 本科 68848.45 3 +苏州 苏州张家港 61805972 5/6/71 女 2005/7/26 高中 68838.96 9 +福建 福建福州 644956022 9/6/88 女 2014/6/30 大专 68836.2 6 +福建 福建漳州 615105282 7/8/79 女 2014/3/18 本科 68823 6 +四川 四川高新 745462672 8/16/80 女 2015/4/14 大专 68810 21 +四川 四川雅安 488389782 2/4/82 女 2012/12/7 大专 68800.29 9 +北京 北京东城 499290352 6/3/86 女 2013/1/13 大专 68800.09 0 +山东 山东威海 517199482 11/23/76 女 2013/4/25 初中 68790.9 15 +内蒙古 内蒙呼和浩特 5140709962 1/17/82 女 2016/5/17 高中 68767 5 +河南 河南驻马店 5125874362 11/12/80 男 2016/4/21 本科 68758 4 +四川 四川青羊 660156962 6/1/85 女 2014/8/22 本科 68754.15 15 +浙江 浙江温州 5188817392 10/30/81 男 2016/7/14 高中 68750 17 +河北 河北廊坊 5158253322 9/1/83 女 2016/6/1 高中 68746 10 +四川 四川青羊 5134659682 6/20/72 女 2016/5/6 大专 68738.5 6 +四川 四川青羊 380164442 9/19/74 女 2010/6/12 大专 68724.09 5 +四川 四川绵阳 457078602 5/5/76 男 2012/3/16 大专 68714.51 5 +上海 上海黄浦 5219011602 12/24/73 女 2016/8/18 大专 68710 4 +青岛 青岛一支 94361132 1/1/78 女 2006/8/24 本科 68700.16 14 +天津 天津蓟州 5178762972 10/26/73 男 2016/6/21 中专 68700 2 +青岛 青岛一支 614746312 10/8/82 男 2014/3/17 本科 68668.78 6 +山西 山西忻州 825576162 2/20/73 女 2015/8/3 大专 68663.6 3 +浙江 浙江绍兴 5092136502 6/30/78 女 2016/3/14 本科 68658.5 11 +江苏 江苏南京 5070045912 4/27/84 男 2016/3/1 本科 68652 8 +大连 大连明锐 761478282 2/27/67 女 2015/6/5 本科 68646.4 19 +北京 北京海淀 489677442 5/23/85 男 2012/12/13 大专 68618.8 0 +湖北 湖北武汉 5072176242 3/5/87 男 2016/3/2 本科 68615.7 10 +浙江 浙江金华 34976612 9/4/58 女 2005/3/25 高中 68609.87 10 +辽宁 辽宁沈阳 103952822 3/10/76 男 2006/11/20 大专 68599.3 18 +甘肃 甘肃金昌 576422102 1/16/78 女 2013/9/4 中专 68582.68 5 +大连 大连海川 5387842 2/9/69 女 2003/7/1 大专 68576.95 11 +湖北 湖北襄阳 429806252 5/15/72 女 2011/7/1 大专 68565.68 16 +福建 福建宁德 5105661182 8/7/75 男 2016/3/22 高中 68558.2 6 +深圳 深圳宝安 533363312 6/15/67 女 2013/6/13 大专 68552.17 10 +福建 福建南平 5159498952 3/5/63 女 2016/6/2 高中 68529.3 3 +黑龙江 黑龙江绥化 385650732 8/13/64 女 2010/7/8 中专 68512.23 4 +湖北 湖北荆州 215384332 7/15/66 女 2008/4/8 高中 68512.01 11 +宁波 宁波城区 108072602 6/27/80 女 2006/12/18 大专 68507.25 3 +苏州 苏州昆山 5194793312 2/24/73 女 2016/7/28 高中 68475 10 +广西 广西南宁 5087663632 1/23/84 男 2016/3/10 本科 68466.3 9 +苏州 苏州张家港 5225896802 4/19/82 女 2016/8/30 高中 68454 20 +深圳 深圳福田 591964292 9/16/76 男 2013/12/15 大专 68442.19 7 +江西 江西赣州 440829082 1/24/71 女 2011/9/30 高中 68442.03 3 +北京 北京海淀 453005302 4/2/91 女 2012/3/1 高中 68441.3 7 +湖南 湖南长沙 825075112 2/12/74 男 2015/8/3 中专 68421 1 +浙江 浙江金华 552344882 8/28/71 女 2013/6/26 大专 68412.08 5 +四川 四川高新 5190636852 10/26/71 女 2016/7/21 高中 68411.2 13 +江苏 江苏泰州 699746642 10/8/68 女 2014/12/29 初中 68411.1 9 +四川 四川青羊 141383242 3/13/83 女 2007/6/19 本科 68410.11 17 +福建 福建泉州 420076522 5/17/77 女 2011/3/29 大专 68355.73 1 +内蒙古 内蒙呼和浩特 5199995032 8/16/75 女 2016/8/1 大专 68346.2 10 +浙江 浙江杭州 850921492 12/8/72 女 2015/8/10 高中 68337 4 +上海 上海黄浦 5028588832 3/8/76 女 2015/11/24 中专 68310.68 9 +大连 大连开发区 74031742 2/8/69 女 2006/1/23 初中 68302.26 1 +大连 大连海川 597099152 6/20/77 女 2013/12/25 大专 68294.55 12 +青岛 青岛一支 300166102 11/23/80 女 2009/5/16 大专 68288.51 9 +苏州 苏州新区 22288732 2/2/64 女 2004/11/5 本科 68280.16 4 +辽宁 辽宁沈阳 472721562 4/24/77 男 2012/7/25 本科 68262.75 9 +青岛 青岛一支 5213390102 6/9/71 男 2016/8/11 大专 68254.5 7 +北京 北京海淀 352082 3/4/78 男 2002/1/18 大专 68250.29 4 +广西 广西南宁 603824252 10/26/74 男 2014/1/1 大专 68232.9 14 +湖北 湖北襄阳 5022333682 5/6/73 男 2015/11/18 高中 68224.3 11 +河北 河北唐山 759811832 10/3/81 女 2015/6/2 中专 68220 8 +广东 广东广州 353597052 9/18/82 女 2009/12/30 大专 68200.34 18 +吉林 吉林通化 5136276972 5/15/80 女 2016/5/10 高中 68174 7 +四川 四川高新 488216302 12/15/88 女 2012/12/7 高中 68169.5 11 +江西 江西南昌 5147089252 1/30/84 女 2016/5/26 高中 68155.6 12 +广东 广东惠州 622542182 7/13/74 女 2014/4/8 大专 68143.5 3 +河南 河南周口 93572152 4/14/63 女 2006/8/16 高中 68123 10 +广西 广西南宁 856451192 8/5/77 女 2015/8/10 中专 68120.5 20 +天津 天津滨海新区 408504492 10/16/53 女 2010/12/10 大专 68114.26 4 +重庆 重庆永川 5130403452 12/14/78 女 2016/4/29 中专 68112 13 +青岛 青岛一支 757800792 10/13/81 女 2015/5/27 大专 68107 7 +浙江 浙江绍兴 5145107572 8/28/82 女 2016/5/24 大专 68086.9 4 +广东 广东惠州 23035702 5/17/72 男 2004/11/16 大专 68084.22 1 +河南 河南三门峡 162540822 12/15/67 男 2007/9/11 高中 68081 10 +四川 四川高新 394977112 10/14/87 女 2010/9/9 大专 68072 8 +辽宁 辽宁本溪 749084472 6/17/69 女 2015/4/25 高中 68063.5 4 +云南 云南昆明 695434262 8/10/70 男 2014/12/22 大专 68058 4 +辽宁 辽宁营口 544258712 10/26/84 女 2013/6/21 中专 68044 11 +天津 天津市区二支 631582302 11/4/82 女 2014/5/28 大专 68014.5 11 +湖北 湖北武汉 337667832 2/12/71 女 2009/10/22 高中 68011 8 +江西 江西南昌 534460042 8/16/79 女 2013/6/14 高中 68010.6 7 +辽宁 辽宁营口 408893192 11/25/67 女 2010/12/14 高中 68000.43 3 +四川 四川青羊 605380022 6/26/79 男 2014/1/13 大专 67977.1 6 +广西 广西南宁 5211435632 5/8/81 女 2016/8/9 高中 67974 13 +新疆 新疆昌吉 296154902 12/25/72 女 2009/5/1 本科 67971.35 8 +湖北 湖北襄阳 403181772 10/4/78 女 2010/11/4 高中 67944.8 21 +辽宁 辽宁沈阳 543729332 7/19/82 女 2013/6/21 本科 67933 3 +四川 四川高新 327257432 4/26/72 女 2009/8/27 大专 67915.69 21 +山东 山东枣庄 285698722 10/8/75 女 2009/3/18 大专 67910.99 10 +重庆 重庆永川 645374722 6/4/73 男 2014/7/2 中专 67874.5 19 +湖南 湖南长沙 173516202 5/23/68 女 2007/11/1 大专 67863.17 9 +大连 大连开发区 745798752 6/22/63 女 2015/4/15 初中 67862.5 14 +大连 大连开发区 80657472 5/2/69 女 2006/3/30 高中 67856.45 4 +湖北 湖北宜昌 5122375092 9/30/74 女 2016/4/15 高中 67846.5 16 +山东 山东泰安 184860732 11/11/69 女 2007/11/25 高中 67840.63 12 +山东 山东济南 378458082 10/16/75 女 2010/5/31 大专 67838.89 10 +山东 山东潍坊 849929302 4/22/66 女 2015/8/10 中专 67836.5 12 +深圳 深圳南山 5143443132 2/7/87 男 2016/5/20 高中 67830.7 7 +四川 四川高新 1643782 12/29/70 女 2002/8/9 本科 67824.15 0 +山东 山东济南 55072362 3/15/71 女 2005/8/17 大专 67815.55 14 +湖北 湖北武汉 46426382 9/30/71 女 2005/6/7 大专 67804.11 18 +苏州 苏州新区 260054852 10/29/82 女 2008/11/1 大专 67803.46 3 +福建 福建龙岩 260067832 6/8/77 女 2008/11/1 大专 67800.05 2 +北京 北京良乡 5223224282 4/14/72 女 2016/8/25 大专 67790 10 +山东 山东济南 5175595482 6/7/77 女 2016/6/20 大专 67783 12 +湖北 湖北襄阳 590399312 7/16/80 女 2013/12/11 中专 67758.88 18 +四川 四川高新 247528872 5/11/74 女 2008/8/25 大专 67756.25 14 +河北 河北邢台 801397202 6/16/72 男 2015/7/24 高中 67750 6 +深圳 深圳罗湖 5216945592 12/28/63 女 2016/8/16 本科 67750 1 +山东 山东烟台 307950662 7/20/80 女 2009/6/24 大专 67735.64 17 +山东 山东滨州 311378462 3/26/80 女 2009/6/27 中专 67718.53 14 +青岛 青岛一支 566854272 10/11/55 女 2013/6/30 大专 67713.05 3 +山西 山西太原 230519402 4/8/76 女 2008/6/10 高中 67711.34 8 +山东 山东济南 621806792 3/11/84 女 2014/4/2 本科 67693 16 +宁波 宁波城区 279767072 4/28/63 女 2009/2/19 高中 67684.61 2 +青岛 青岛一支 615001442 11/16/82 女 2014/3/18 大专 67663.45 13 +湖南 湖南郴州 5020628462 7/20/74 女 2015/11/17 大专 67660 8 +湖北 湖北荆门 244809802 4/18/75 女 2008/8/6 大专 67627.1 7 +云南 云南昆明 527937452 7/9/83 女 2013/6/5 大专 67625.04 9 +四川 四川成都 9333442 11/24/64 女 2003/12/9 高中 67608.9 7 +湖北 湖北襄阳 5140901192 4/4/80 女 2016/5/17 高中 67608 8 +浙江 浙江杭州 5117169772 6/23/84 男 2016/4/6 大专 67592 14 +新疆 新疆乌鲁木齐 230445292 5/17/70 女 2008/6/1 大专 67560.88 4 +河南 河南三门峡 649030022 7/3/72 女 2014/7/30 大专 67553.4 11 +四川 四川青羊 420679042 3/27/85 男 2011/4/1 本科 67551.57 3 +浙江 浙江杭州 234939392 6/1/79 女 2008/6/25 大专 67550.69 7 +山东 山东济南 281921862 8/1/77 女 2009/3/2 大专 67544 10 +山西 山西太原 286090492 9/11/69 男 2009/3/20 大专 67488.4 5 +大连 大连明锐 694877522 11/22/72 女 2014/12/22 大专 67464.5 5 +辽宁 辽宁铁岭 5019880572 10/19/71 女 2015/11/16 大专 67462 6 +四川 四川青羊 7865462 2/16/69 女 2003/9/18 大专 67460.15 15 +四川 四川高新 345464402 12/4/77 女 2009/11/25 本科 67447.5 9 +浙江 浙江杭州 399487262 10/18/87 女 2010/10/9 本科 67419.95 3 +山西 山西忻州 660530312 12/25/64 女 2014/8/23 高中 67395.91 3 +四川 四川青羊 3635702 8/1/72 女 2003/4/15 大专 67395.62 13 +贵州 贵州六盘水 5153217492 7/19/81 女 2016/5/30 本科 67385.9 14 +辽宁 辽宁盘锦 94846132 8/7/74 女 2006/8/25 本科 67366.73 5 +广西 广西南宁 614149932 9/5/88 女 2014/3/17 大专 67363.75 15 +河南 河南郑州 604427742 9/27/81 女 2014/1/6 大专 67353.8 2 +广东 广东东莞 739832902 12/22/76 女 2015/4/9 高中 67351.5 7 +湖北 湖北武汉 20901702 3/16/63 女 2004/10/17 大专 67342.96 14 +大连 大连海川 233173572 12/26/62 女 2008/6/23 大专 67342.25 7 +湖北 湖北荆州 340768762 12/23/83 女 2009/11/5 高中 67320.59 10 +江苏 江苏南京 710493822 8/3/88 女 2015/2/28 本科 67284.6 15 +甘肃 甘肃兰州 338655282 9/17/71 女 2009/10/25 大专 67274.87 10 +湖北 湖北武汉 131156232 4/12/76 女 2007/4/20 本科 67269 14 +甘肃 甘肃兰州 312381262 10/19/70 女 2009/7/1 中专 67254 6 +四川 四川高新 5088222022 8/3/92 男 2016/3/11 大专 67240.1 14 +宁波 宁波象山 818026212 3/9/79 男 2015/7/31 大专 67229.21 6 +深圳 深圳南山 5181677472 9/10/91 男 2016/6/24 高中 67215.4 11 +浙江 浙江杭州 571426252 10/26/84 女 2013/7/30 大专 67212.5 4 +深圳 深圳罗湖 5175253732 10/26/73 女 2016/6/18 高中 67190 10 +云南 云南昆明 5075618392 12/9/82 女 2016/3/4 本科 67189 10 +黑龙江 黑龙江绥化 778735072 6/12/83 女 2015/6/30 大专 67189 1 +天津 天津市区一支 25397202 9/29/72 女 2004/12/6 中专 67179.38 10 +云南 云南昆明 471548352 4/9/78 女 2012/7/2 大专 67174.33 4 +山东 山东滨州 754252132 8/1/70 女 2015/5/15 大专 67162 6 +四川 四川高新 130213862 10/27/77 女 2007/4/17 大专 67148.23 9 +云南 云南昆明 264420552 3/9/72 女 2008/11/1 大专 67135.51 7 +福建 福建南平 537208142 6/13/65 女 2013/6/16 初中 67130.55 12 +湖北 湖北襄阳 450083022 6/12/80 女 2012/1/1 高中 67127.51 15 +青海 西宁 5098904762 5/6/70 女 2016/3/18 大专 67125 7 +内蒙古 内蒙古赤峰 358194292 12/5/70 女 2010/1/22 本科 67121 2 +青岛 青岛即墨 24184352 12/22/68 女 2004/11/28 高中 67106.35 1 +黑龙江 黑龙江哈尔滨 75538662 4/26/77 女 2006/2/23 本科 67099.29 8 +四川 四川绵阳 701779872 4/1/83 男 2014/12/31 大专 67098 3 +河南 河南驻马店 556218742 1/5/66 女 2013/6/27 高中 67091 12 +北京 北京东城 5147451912 10/18/92 男 2016/5/26 本科 67031 4 +山东 山东威海 532025132 3/24/78 女 2013/6/9 大专 67013.24 15 +内蒙古 内蒙呼和浩特 347128752 2/15/74 女 2009/12/1 高中 66994.61 10 +山东 山东烟台 5209435812 3/16/87 女 2016/8/8 大专 66960.5 23 +苏州 苏州新区 5199467452 4/2/71 男 2016/8/1 本科 66931.5 15 +陕西 陕西渭南 375209902 8/8/69 女 2010/5/15 大专 66925.89 4 +山东 山东泰安 616010382 7/11/85 女 2014/3/20 中专 66920.22 14 +湖北 湖北武汉 299431412 1/14/69 女 2009/5/14 高中 66890.6 13 +北京 北京东城 5163567482 10/26/66 女 2016/6/6 本科 66878 8 +山东 山东烟台 95538112 12/22/68 女 2006/9/1 中专 66868.36 16 +四川 四川青羊 555226552 7/24/86 女 2013/6/27 本科 66866.59 6 +河南 河南洛阳 355971802 10/2/78 女 2010/1/4 大专 66839.24 2 +重庆 重庆渝中 5136673072 9/28/88 女 2016/5/11 本科 66820.3 16 +云南 云南昆明 484041532 12/19/76 女 2012/11/21 高中 66816.9 4 +河南 河南周口 37738392 2/3/66 女 2005/4/1 大专 66806.31 12 +海南 海南海口 415730642 8/18/75 女 2011/3/1 本科 66775.61 0 +浙江 浙江台州 667787862 8/20/71 女 2014/9/9 高中 66759.75 1 +辽宁 辽宁沈阳 212163512 10/2/70 女 2008/3/25 硕士 66748.27 4 +河北 河北石家庄 647603352 8/20/76 女 2014/7/25 中专 66719 5 +湖南 湖南长沙 140481212 10/21/77 女 2007/7/1 大专 66708.41 6 +四川 四川成都 71763202 4/6/69 男 2005/12/30 高中 66693.38 5 +浙江 浙江杭州 5137422832 5/30/70 男 2016/5/12 本科 66672 8 +浙江 浙江杭州 752302222 3/14/65 女 2015/5/6 高中 66665.5 9 +青岛 青岛一支 690415522 5/26/72 男 2014/12/12 大专 66651.8 3 +苏州 苏州昆山 700745672 1/25/79 女 2014/12/30 大专 66635.3 18 +广东 广东广州 5213635822 7/27/81 女 2016/8/11 大专 66627.5 25 +山东 山东烟台 730019852 10/20/81 女 2015/3/30 本科 66622 13 +湖北 湖北荆州 5188786582 8/21/70 女 2016/7/14 高中 66615.3 18 +山东 山东烟台 272810702 12/1/82 女 2008/12/25 大专 66600.61 21 +北京 北京良乡 795585712 3/24/71 女 2015/7/20 大专 66570.5 2 +湖北 湖北武汉 5123694112 8/17/55 女 2016/4/18 硕士 66563.7 6 +四川 四川成都 882424302 2/4/71 女 2015/10/9 高中 66563.2 21 +上海 上海陆家嘴 616519942 2/21/83 女 2014/3/21 本科 66555 1 +江苏 江苏徐州 5140012822 4/6/77 女 2016/5/16 本科 66554.1 8 +山东 山东烟台 95547322 1/8/80 女 2006/9/1 中专 66537 7 +贵州 贵州贵阳 492603492 3/21/69 女 2012/12/21 高中 66527.19 11 +广东 广东惠州 364520782 6/13/83 女 2010/3/17 大专 66521.03 12 +福建 福建厦门 515912522 10/22/77 女 2013/4/22 中专 66512 6 +福建 福建漳州 5122351552 1/23/65 女 2016/4/15 高中 66509.6 10 +北京 北京平谷 673972972 3/6/77 女 2014/9/25 大专 66496 2 +苏州 苏州张家港 484596872 9/22/65 女 2012/11/23 高中 66495.07 4 +浙江 浙江湖州 5199797432 3/14/85 女 2016/8/1 大专 66494 11 +苏州 苏州新区 5003513882 8/24/87 男 2015/10/22 本科 66492 5 +北京 北京平谷 65956182 10/13/70 女 2005/11/21 大专 66452.29 12 +四川 四川成都 301793882 10/21/81 女 2009/5/20 高中 66435.87 5 +深圳 深圳宝安 303121182 5/16/70 女 2009/5/25 大专 66400.37 4 +福建 福建福州 5218007122 5/15/72 男 2016/8/17 高中 66398.9 9 +山西 山西运城 5200731152 7/1/73 女 2016/8/2 高中 66383.5 9 +苏州 苏州昆山 798463612 7/8/74 女 2015/7/22 大专 66355.81 6 +黑龙江 黑龙江哈尔滨 28138462 2/27/68 男 2005/1/4 大专 66355.03 14 +广东 广东广州 184692692 11/14/76 女 2007/11/25 大专 66351.54 10 +山西 山西大同 5173599262 8/23/70 女 2016/6/16 高中 66344 2 +重庆 重庆巴南 5129373632 4/25/84 女 2016/4/27 大专 66340.7 18 +浙江 浙江杭州 5199507332 9/19/78 女 2016/8/1 大专 66339 5 +四川 四川青羊 23300742 10/15/73 女 2004/11/19 大专 66326.45 8 +上海 上海黄浦 576244152 2/5/87 女 2013/9/3 中专 66326 6 +陕西 陕西汉中 5043085312 1/26/76 女 2015/12/8 高中 66304.5 5 +北京 北京良乡 5088423292 2/10/74 女 2016/3/11 大专 66298.11 1 +陕西 陕西西安 420726492 6/7/78 女 2011/4/2 大专 66297.5 6 +四川 四川青羊 391027742 5/2/80 女 2010/8/17 本科 66279 6 +江西 江西赣州 5063769922 2/6/80 女 2016/1/29 中专 66260.36 4 +江苏 江苏扬州 5214234092 8/20/64 女 2016/8/12 高中 66260 2 +佛山 佛山南海 5122722312 1/27/76 女 2016/4/16 大专 66259.5 12 +山东 山东威海 5209028772 11/29/82 女 2016/8/8 中专 66259 6 +江西 江西南昌 5195757912 8/17/78 女 2016/7/28 高中 66241 7 +辽宁 辽宁本溪 660843502 10/16/77 女 2014/8/24 中专 66238.32 11 +浙江 浙江温州 5214791652 8/17/78 女 2016/8/12 中专 66229 8 +四川 四川青羊 134492 7/16/63 女 2001/12/30 高中 66213.29 5 +湖南 湖南益阳 450007512 8/8/68 女 2012/1/1 中专 66211 13 +江苏 江苏无锡 5143964412 4/30/76 女 2016/5/22 高中 66202.5 5 +辽宁 辽宁本溪 38896252 5/22/64 女 2005/4/17 高中 66199.51 17 +福建 福建泉州 431271162 12/1/82 男 2011/7/25 大专 66179.8 5 +河南 河南安阳 147356902 7/13/62 男 2007/7/2 高中 66166.46 4 +浙江 浙江金华 673337382 1/7/91 女 2014/9/25 中专 66151 6 +重庆 重庆万州 591461842 7/14/81 女 2013/12/13 大专 66138.47 8 +河北 河北沧州 851115492 3/21/82 男 2015/8/10 大专 66060 2 +黑龙江 黑龙江牡丹江 129792092 4/19/71 女 2007/4/11 大专 66026.5 20 +江西 江西上饶 399419292 10/5/85 女 2010/10/8 大专 66018.08 1 +辽宁 辽宁鞍山 433138722 9/25/73 女 2011/8/8 大专 66004.21 13 +河南 河南周口 507868362 2/25/76 女 2013/3/19 高中 66002 4 +河南 河南濮阳 482030492 9/15/84 女 2012/11/1 高中 66000 0 +吉林 吉林长春 312506592 10/8/56 女 2009/7/1 大专 65996.1 2 +广东 广东广州 636347582 1/22/82 女 2014/6/13 高中 65995 3 +吉林 吉林长春 290353052 5/17/73 男 2009/4/1 本科 65981.93 8 +浙江 浙江杭州 5150354642 12/17/93 女 2016/5/27 本科 65979 8 +云南 云南昆明 468470312 3/2/71 男 2012/6/19 高中 65939.5 10 +吉林 吉林辽源 5175325322 8/4/67 女 2016/6/19 高中 65936 14 +四川 四川德阳 136928082 2/28/82 男 2007/5/25 本科 65921.02 4 +青岛 青岛一支 150574652 10/13/79 女 2007/7/18 大专 65919.04 7 +重庆 重庆涪陵 591744332 8/23/70 女 2013/12/14 本科 65869.45 12 +山西 山西临汾 613901642 12/8/63 女 2014/3/15 高中 65748.02 14 +辽宁 辽宁营口 88838272 12/25/65 女 2006/6/25 大专 65736.98 9 +四川 四川青羊 5175714222 9/7/70 男 2016/6/20 本科 65717 8 +广西 广西玉林 541031752 3/8/72 女 2013/6/18 高中 65714.11 1 +云南 云南大理 5090788472 12/21/72 女 2016/3/12 中专 65680 2 +湖北 湖北随州 769950082 8/10/64 男 2015/6/24 大专 65676 8 +四川 四川德阳 5088873882 9/1/89 女 2016/3/11 中专 65655 6 +上海 上海黄浦 400006732 10/7/77 女 2010/10/12 大专 65646.91 8 +北京 北京海淀 649491432 6/13/89 男 2014/7/31 本科 65640 3 +辽宁 辽宁朝阳 50706662 11/3/68 男 2005/7/1 大专 65636.72 4 +四川 四川泸州 522278652 4/7/72 女 2013/5/26 大专 65636.07 11 +福建 福建漳州 324065642 8/18/81 女 2009/8/14 中专 65631.73 9 +浙江 浙江嘉兴 134275582 5/16/77 女 2007/5/8 大专 65621.21 2 +湖北 湖北荆州 822633362 11/5/84 女 2015/8/1 本科 65619.3 3 +大连 大连开发区 5152750632 9/4/76 女 2016/5/30 初中 65610 3 +陕西 陕西安康 486320682 5/17/73 女 2012/12/1 高中 65604.5 10 +吉林 吉林松原 864041752 2/9/72 女 2015/8/27 大专 65561 6 +广西 广西百色 603402752 7/26/69 男 2014/1/1 本科 65550.1 14 +湖北 湖北荆州 69753832 8/24/66 女 2005/12/20 中专 65536.98 18 +四川 四川绵阳 5154222872 1/6/76 女 2016/5/30 大专 65531 8 +大连 大连开发区 23689442 4/8/61 女 2004/11/23 初中 65523.43 4 +山东 山东淄博 745979772 7/23/62 男 2015/4/15 本科 65523 1 +江苏 江苏无锡 789850432 10/26/81 男 2015/7/15 高中 65520 8 +深圳 深圳南山 407325142 9/7/86 女 2010/12/2 高中 65520 2 +四川 四川眉山 835851322 12/27/77 女 2015/8/7 中专 65498 4 +湖北 湖北随州 192389192 7/8/78 女 2007/12/10 高中 65488.68 8 +浙江 浙江绍兴 488487482 9/26/74 女 2012/12/10 高中 65476.36 8 +河北 河北邢台 423891622 8/1/67 男 2011/5/13 本科 65436.5 7 +四川 四川绵阳 667026242 10/27/80 女 2014/9/5 大专 65433.11 1 +青岛 青岛城阳 377418712 5/20/79 女 2010/5/25 本科 65406.92 12 +河南 河南商丘 214365482 4/14/71 女 2008/4/2 大专 65398.89 14 +青岛 青岛城阳 641294582 3/28/87 女 2014/6/24 大专 65397.03 10 +辽宁 辽宁盘锦 777953902 5/1/73 女 2015/6/30 大专 65390 4 +安徽 安徽合肥 764004052 11/2/77 女 2015/6/12 高中 65385.5 2 +深圳 深圳龙岗 5097351862 4/26/96 女 2016/3/17 高中 65385 6 +四川 四川高新 5108264812 9/4/83 女 2016/3/24 大专 65382.99 9 +安徽 安徽合肥 62495582 7/4/71 女 2005/10/1 高中 65377.11 9 +四川 四川成都 503889962 2/26/72 女 2013/2/22 高中 65373 4 +重庆 重庆江津 5158070192 10/9/77 女 2016/6/1 大专 65339.2 19 +山西 山西太原 5117173372 7/6/81 女 2016/4/6 大专 65287.5 12 +四川 四川绵阳 299948512 8/2/82 女 2009/5/15 本科 65281.26 19 +浙江 浙江嘉兴 135625072 11/8/83 男 2007/5/18 高中 65271 7 +湖北 湖北武汉 20890122 3/5/61 女 2004/10/16 大专 65261.65 23 +四川 四川青羊 5073909572 6/10/83 女 2016/3/4 大专 65212.55 1 +浙江 浙江温州 5015840082 3/27/80 女 2015/11/11 高中 65143.82 4 +山东 山东日照 502323312 6/18/70 男 2013/1/31 中专 65141.5 8 +四川 四川高新 5165946232 3/10/84 女 2016/6/8 本科 65127.7 15 +山东 山东济宁 830890642 3/21/63 女 2015/8/5 高中 65120 0 +吉林 吉林长春 629110822 1/17/68 男 2014/5/19 大专 65118.38 6 +福建 福建泉州 420529422 5/11/71 女 2011/3/31 高中 65115.67 6 +辽宁 辽宁盘锦 286255462 3/19/79 女 2009/3/20 大专 65115.4 3 +山东 山东淄博 675604252 4/18/70 女 2014/10/1 大专 65099 3 +浙江 浙江金华 871633712 3/30/79 男 2015/9/15 高中 65081.8 3 +安徽 安徽合肥 61167312 4/19/66 女 2005/10/1 高中 65076.55 11 +苏州 苏州昆山 5187919952 1/8/82 女 2016/7/8 硕士 65027.5 14 +青岛 青岛一支 5171937592 7/3/81 女 2016/6/15 大专 65023 6 +苏州 苏州常熟 284645402 10/26/72 女 2009/3/13 高中 65012.49 3 +青岛 青岛开发区 184966942 12/20/70 女 2007/11/25 高中 64982.54 10 +四川 四川高新 838311492 8/4/83 女 2015/8/8 大专 64944.21 25 +山东 山东淄博 5185786852 4/16/71 女 2016/6/30 中专 64913.5 17 +四川 四川高新 416880962 6/24/87 女 2011/3/5 大专 64908.1 0 +湖北 湖北荆州 50632552 9/2/72 女 2005/7/1 大专 64905.2 14 +河北 河北石家庄 5158032112 11/10/70 女 2016/6/1 大专 64895 6 +山东 山东济南 330848802 5/16/81 女 2009/9/16 大专 64884.7 10 +黑龙江 黑龙江牡丹江 477833532 11/8/72 女 2012/9/12 高中 64874.61 6 +河南 河南三门峡 5207342592 6/26/65 女 2016/8/6 高中 64857.8 15 +重庆 重庆巴南 5192808932 1/11/87 女 2016/7/26 本科 64856 8 +河北 河北邢台 5147301392 8/23/64 女 2016/5/26 高中 64853.54 1 +黑龙江 黑龙江牡丹江 5141433342 7/17/98 男 2016/5/18 高中 64849 14 +大连 大连明锐 811695252 4/7/69 女 2015/7/29 高中 64840 1 +黑龙江 黑龙江哈尔滨 153718292 9/8/78 女 2007/7/25 大专 64828.93 2 +四川 四川成都 52690072 7/9/70 女 2005/7/26 大专 64823.58 7 +广东 广东清远 636037462 2/2/71 女 2014/6/12 高中 64818.9 21 +青岛 青岛即墨 292438202 12/2/75 女 2009/4/14 初中 64803.2 13 +黑龙江 黑龙江哈尔滨 795573432 10/22/80 女 2015/7/20 本科 64801.9 8 +河南 河南郑州 99037922 10/28/65 女 2006/10/1 大专 64782.92 8 +天津 天津市区二支 708617052 3/23/64 男 2015/2/9 中专 64769 11 +宁波 宁波宁海 5167079422 1/4/71 女 2016/6/8 初中 64754.5 9 +云南 云南昆明 420509602 1/6/77 女 2011/4/1 高中 64749.95 2 +山东 山东淄博 800489032 10/30/79 女 2015/7/24 中专 64745.9 14 +江西 江西南昌 428705752 8/12/83 女 2011/6/25 高中 64745.15 5 +江苏 江苏南京 583309102 5/29/88 女 2013/11/7 大专 64742.05 6 +山西 山西临汾 370872262 9/27/60 女 2010/4/21 大专 64735.24 5 +浙江 浙江嘉兴 507551402 3/19/70 男 2013/3/18 高中 64730.44 3 +辽宁 辽宁辽阳 5200614212 9/1/80 女 2016/8/2 大专 64721 15 +广西 广西南宁 5039843532 2/18/76 男 2015/11/30 高中 64703 6 +山东 山东济宁 5208184782 9/3/74 男 2016/8/7 大专 64698 10 +黑龙江 黑龙江哈尔滨 376230152 10/25/71 女 2010/5/21 大专 64696.48 9 +浙江 浙江杭州 378179362 3/18/74 女 2010/5/31 本科 64659.34 3 +重庆 重庆永川 347343272 1/2/80 女 2009/12/2 高中 64651.4 0 +湖北 湖北武汉 838914982 8/28/74 女 2015/8/8 高中 64645 4 +吉林 吉林通化 553070362 12/27/76 男 2013/6/26 大专 64642.38 2 +北京 北京平谷 5142666232 5/19/87 女 2016/5/19 大专 64639 8 +浙江 浙江杭州 5013853902 10/28/69 女 2015/11/9 中专 64635 4 +湖南 湖南郴州 5205858582 10/5/79 女 2016/8/5 本科 64628.4 18 +云南 云南昆明 5176233702 1/12/88 女 2016/6/20 大专 64624 5 +宁波 宁波城区 385725542 11/26/81 女 2010/7/9 大专 64617.26 2 +北京 北京海淀 452122392 7/12/91 男 2012/2/3 大专 64610 8 +浙江 浙江金华 425305312 1/28/74 男 2011/5/26 高中 64607.11 7 +湖北 湖北荆州 5061651292 12/12/72 女 2016/1/16 高中 64605 11 +福建 福建福州 5101944372 11/9/84 女 2016/3/21 大专 64604.5 10 +四川 四川高新 363198652 2/17/74 男 2010/3/10 大专 64603.9 10 +四川 四川成都 3511072 5/30/74 女 2003/4/8 中专 64583.56 9 +广东 广东韶关 847324952 12/9/76 女 2015/8/10 高中 64564 17 +浙江 浙江杭州 498759572 6/7/76 女 2013/1/7 大专 64552.49 5 +黑龙江 黑龙江哈尔滨 859074932 12/7/72 女 2015/8/13 大专 64549.5 4 +山东 山东威海 506337852 9/16/79 女 2013/3/12 大专 64508.24 4 +四川 四川绵阳 158344562 10/25/77 女 2007/8/20 大专 64504.13 7 +深圳 深圳南山 5233643162 1/5/95 男 2016/9/14 中专 64502.7 3 +北京 北京平谷 579904192 9/22/56 女 2013/9/30 大专 64501.89 13 +青岛 青岛一支 640814052 9/8/87 女 2014/6/24 本科 64481.05 9 +河南 河南周口 73400892 4/5/78 女 2006/1/10 大专 64464.8 13 +河南 河南驻马店 322620552 9/1/73 女 2009/8/6 高中 64436.77 14 +青岛 青岛即墨 204877902 1/29/58 女 2008/2/25 高中 64430.34 4 +四川 四川青羊 682324882 11/17/88 女 2014/11/14 大专 64428 2 +广东 广东东莞 701609462 12/4/77 男 2014/12/31 本科 64425.5 8 +山东 山东烟台 5008061042 8/19/78 男 2015/11/2 本科 64424 14 +深圳 深圳福田 255879112 1/5/78 女 2008/10/8 本科 64421.4 4 +湖南 湖南长沙 521108512 7/18/86 男 2013/5/20 本科 64397.62 3 +北京 北京东城 394680942 7/26/86 女 2010/9/7 大专 64387.6 5 +四川 四川青羊 5184378032 8/25/76 女 2016/6/27 大专 64382.5 9 +山东 山东淄博 227376462 5/29/74 女 2008/6/1 大专 64373.1 9 +浙江 浙江温州 546841842 1/2/84 女 2013/6/24 本科 64365.72 5 +黑龙江 黑龙江哈尔滨 89830462 5/24/70 女 2006/6/30 大专 64347.91 3 +江西 江西抚州 5189605162 12/10/72 女 2016/7/19 高中 64344 18 +宁波 宁波宁海 5015709572 10/4/79 女 2015/11/11 中专 64338.4 10 +四川 四川德阳 728772532 3/5/86 男 2015/3/26 大专 64321.22 6 +山东 山东日照 287437882 1/2/66 男 2009/3/24 高中 64272.97 8 +河北 河北石家庄 229074312 8/15/75 女 2008/6/5 本科 64267.23 8 +安徽 安徽合肥 350944552 4/23/64 男 2009/12/1 高中 64250.2 11 +北京 北京海淀 648866722 2/9/90 男 2014/7/29 高中 64240 6 +湖南 湖南永州 5129247622 5/20/68 女 2016/4/27 高中 64207 8 +山东 山东淄博 422851282 11/3/76 女 2011/5/2 大专 64206.41 14 +四川 四川青羊 16010392 11/18/72 女 2004/7/19 本科 64205.11 3 +四川 四川青羊 5194771572 4/28/93 女 2016/7/28 本科 64196 4 +辽宁 辽宁沈阳 134659812 2/17/68 男 2007/5/10 本科 64186.11 4 +江苏 江苏无锡 633597112 12/7/91 男 2014/6/6 大专 64178.78 0 +湖南 湖南长沙 566011972 10/3/74 女 2013/6/29 高中 64174 8 +江西 江西赣州 5063707332 8/9/72 女 2016/1/29 大专 64160 3 +黑龙江 黑龙江哈尔滨 19471962 4/30/76 女 2004/10/1 大专 64136.65 10 +福建 福建福州 5138734582 7/5/91 女 2016/5/13 大专 64136 12 +浙江 浙江温州 725601262 9/19/79 女 2015/3/25 大专 64122 4 +河北 河北唐山 261073702 6/24/73 女 2008/11/4 高中 64119.73 18 +青岛 青岛一支 272590742 11/3/69 女 2008/12/25 大专 64093.02 3 +辽宁 辽宁盘锦 53557902 3/27/77 女 2005/7/29 高中 64071.86 10 +福建 福建莆田 542187242 9/22/72 女 2013/6/20 初中 64032.81 3 +江苏 江苏无锡 5152423352 2/6/61 女 2016/5/30 高中 64030 11 +陕西 陕西渭南 633787342 4/16/74 女 2014/6/6 高中 64014 1 +四川 四川高新 735246272 12/18/75 女 2015/4/3 高中 63997.5 10 +云南 云南昆明 5224702892 3/17/71 女 2016/8/26 本科 63980 7 +深圳 深圳福田 590569722 7/10/79 女 2013/12/11 本科 63944.01 1 +浙江 浙江嘉兴 510012272 3/29/51 男 2013/3/25 初中 63926.22 5 +深圳 深圳福田 390395222 6/21/79 女 2010/8/11 大专 63901.42 5 +辽宁 辽宁沈阳 5149242292 12/10/66 女 2016/5/27 大专 63898.8 8 +江苏 江苏无锡 5105871522 11/30/87 女 2016/3/23 大专 63881.6 9 +云南 云南昆明 5169987622 5/25/71 女 2016/6/14 本科 63870 12 +江苏 江苏常州 664170532 10/3/71 女 2014/8/29 高中 63861 12 +辽宁 辽宁营口 5189570752 12/22/80 男 2016/7/19 本科 63860 16 +浙江 浙江嘉兴 5234732872 7/3/75 女 2016/9/18 高中 63850 3 +黑龙江 黑龙江哈尔滨 520525812 4/3/77 女 2013/5/15 本科 63836 4 +黑龙江 黑龙江哈尔滨 5091959742 10/24/88 女 2016/3/14 高中 63834 10 +苏州 苏州新区 409145252 3/2/75 女 2010/12/15 大专 63802 6 +湖北 湖北宜昌 5195005452 8/19/76 女 2016/7/28 中专 63768.5 15 +北京 北京东城 828070802 8/22/65 男 2015/8/4 大专 63750 2 +江苏 江苏扬州 492286532 6/18/86 女 2012/12/20 高中 63740 7 +四川 四川青羊 5140668212 3/19/84 女 2016/5/17 本科 63732.9 16 +北京 北京东城 4058872 4/23/77 女 2003/5/13 大专 63728.03 4 +上海 上海黄浦 66339712 6/14/78 女 2005/11/24 本科 63719.66 9 +四川 四川高新 5147149072 5/8/72 女 2016/5/26 大专 63712.6 16 +山东 山东临沂 5051113672 4/16/78 女 2015/12/23 中专 63689.26 8 +深圳 深圳宝安 5205412562 10/10/74 女 2016/8/4 大专 63685.5 11 +北京 北京东城 1196052 2/25/67 女 2002/5/23 大专 63682.6 6 +云南 云南曲靖 247389862 4/16/75 女 2008/8/24 大专 63678.54 9 +福建 福建福州 722964812 1/27/82 女 2015/3/25 高中 63660.5 10 +四川 四川高新 5110542962 6/3/82 男 2016/3/25 大专 63660 18 +山西 山西长治 375513882 5/1/57 女 2010/5/17 硕士 63641 5 +宁波 宁波城区 5078148562 10/4/73 女 2016/3/7 大专 63631.5 10 +北京 北京海淀 803358692 7/13/87 女 2015/7/26 本科 63618 9 +山东 山东济南 587442832 10/20/85 女 2013/11/30 大专 63598.31 12 +内蒙古 内蒙呼和浩特 249501672 1/31/74 男 2008/9/1 大专 63591.05 2 +浙江 浙江杭州 5203516042 11/9/69 男 2016/8/3 中专 63590 12 +山东 山东济南 356189392 4/5/68 女 2010/1/5 中专 63588.25 13 +深圳 深圳福田第二 517703602 2/7/81 女 2013/4/26 大专 63583.32 1 +陕西 陕西西安 395176552 10/20/73 女 2010/9/13 高中 63577.44 0 +江苏 江苏南京 196020202 3/23/77 女 2008/1/1 高中 63520.25 10 +浙江 浙江杭州 499735712 7/11/79 女 2013/1/16 大专 63519.13 11 +吉林 吉林吉林 243595282 10/27/62 女 2008/8/1 大专 63517.33 6 +安徽 安徽芜湖 5146516322 6/17/69 女 2016/5/25 高中 63511 9 +重庆 重庆永川 799052452 6/18/73 女 2015/7/22 高中 63441.23 17 +江苏 江苏南京 445467632 9/3/81 女 2011/11/28 大专 63428.22 7 +贵州 贵州贵阳 248407042 8/25/84 女 2008/8/26 本科 63426.79 0 +河南 河南郑州 544648112 6/3/82 男 2013/6/22 本科 63420 8 +山东 山东济南 651641482 8/27/72 男 2014/8/5 本科 63401.11 8 +山东 山东德州 535335412 10/10/76 女 2013/6/14 中专 63397.44 10 +黑龙江 黑龙江齐齐哈尔 718932822 5/24/83 女 2015/3/24 大专 63380.56 10 +浙江 浙江温州 5190684902 11/29/82 女 2016/7/21 高中 63380 16 +青岛 青岛一支 784341252 10/4/86 女 2015/7/9 大专 63353.3 8 +山东 山东济南 183261282 7/27/77 女 2007/11/23 大专 63333 3 +上海 上海陆家嘴 308592122 9/2/81 女 2009/6/25 中专 63331.12 13 +山东 山东日照 5160597662 8/1/76 男 2016/6/3 中专 63324.2 12 +重庆 重庆永川 5201624092 3/5/93 女 2016/8/2 大专 63319 28 +湖北 湖北襄阳 5122405972 6/10/73 女 2016/4/15 本科 63318 13 +江苏 江苏无锡 324470392 4/5/65 女 2009/8/18 高中 63316.41 7 +辽宁 辽宁丹东 432449812 3/31/57 男 2011/8/2 高中 63303.96 15 +吉林 吉林长春 492352132 8/11/67 女 2012/12/21 高中 63295.78 7 +佛山 佛山顺德龙江 5206858492 1/1/85 女 2016/8/5 高中 63277.7 13 +陕西 陕西渭南 5082873452 2/25/64 男 2016/3/9 高中 63256.5 17 +辽宁 辽宁铁岭 5192788022 10/26/67 女 2016/7/26 本科 63254.9 14 +四川 四川青羊 700202612 11/3/82 女 2014/12/30 本科 63220 7 +甘肃 甘肃兰州 611981462 7/1/90 男 2014/3/10 本科 63218.81 29 +山东 山东淄博 168730402 2/2/69 女 2007/10/9 初中 63215 11 +黑龙江 黑龙江佳木斯 5149729092 4/8/70 女 2016/5/27 中专 63191.5 3 +四川 四川巴中 5145594372 9/5/71 男 2016/5/24 高中 63182 11 +浙江 浙江杭州 574665492 10/17/87 女 2013/8/26 大专 63173.71 4 +宁波 宁波象山 828197532 6/21/80 男 2015/8/4 高中 63161 4 +北京 北京平谷 866793622 8/4/81 女 2015/9/6 本科 63161 2 +安徽 安徽滁州 5156023222 8/4/71 女 2016/5/31 大专 63156 13 +广东 广东湛江 306742282 7/11/55 女 2009/6/22 大专 63155.91 1 +湖北 湖北荆州 853406922 12/19/71 女 2015/8/10 高中 63151.5 12 +黑龙江 黑龙江七台河 5190343082 1/10/87 男 2016/7/20 大专 63136 1 +四川 四川高新 460012192 12/8/87 女 2012/3/27 本科 63133.32 14 +北京 北京海淀 437497582 1/20/88 男 2011/9/13 本科 63130.65 7 +安徽 安徽合肥 864417472 4/23/86 女 2015/8/28 大专 63103.7 7 +四川 四川高新 5108181382 1/7/72 女 2016/3/24 大专 63102.4 12 +广西 广西南宁 539523162 8/2/76 女 2013/6/18 高中 63094.3 7 +四川 四川高新 5142389772 3/26/83 女 2016/5/19 硕士 63083.4 9 +重庆 重庆渝中 388385852 5/10/71 女 2010/7/29 大专 63045.43 5 +宁波 宁波城区 363765302 7/3/71 女 2010/3/15 中专 63037.17 2 +浙江 浙江金华 323293412 5/23/80 女 2009/8/10 中专 63020.37 6 +山东 山东淄博 105946142 4/10/67 女 2006/12/4 大专 63017.77 9 +山东 山东威海 92587772 4/20/76 女 2006/8/1 中专 63013.4 9 +山西 山西忻州 596695102 10/11/80 女 2013/12/24 高中 63013.26 0 +山东 山东滨州 374875222 12/2/68 女 2010/5/13 中专 63009.9 14 +山西 山西临汾 694438302 10/13/87 女 2014/12/22 大专 63000 0 +河南 河南周口 530137052 2/11/69 女 2013/6/8 高中 63000 0 +山西 山西临汾 871907962 7/5/77 男 2015/9/15 大专 63000 0 +辽宁 辽宁阜新 48199042 10/1/70 女 2005/6/23 大专 62993.07 4 +江苏 江苏盐城 16693162 6/6/67 女 2004/7/31 大专 62984.98 10 +重庆 重庆渝中 5201392982 4/12/82 女 2016/8/2 大专 62961.1 12 +江西 江西抚州 397204342 1/4/83 女 2010/9/25 中专 62954.56 8 +苏州 苏州张家港 497352722 5/4/71 女 2012/12/31 初中 62946 4 +湖北 湖北襄阳 82321822 10/26/67 女 2006/4/22 高中 62924.53 21 +四川 四川成都 5224289482 7/2/81 女 2016/8/26 中专 62919.9 11 +青岛 青岛一支 5213555092 2/16/84 女 2016/8/11 大专 62899.5 14 +江苏 江苏徐州 5071005942 9/29/83 女 2016/3/2 高中 62899.5 4 +深圳 深圳宝安 508977372 1/13/80 男 2013/3/22 大专 62875.31 5 +北京 北京海淀 122583662 10/3/72 女 2007/3/13 大专 62864.17 4 +湖南 湖南长沙 216173312 1/29/73 女 2008/4/14 高中 62848.78 13 +四川 四川青羊 520282962 7/8/83 男 2013/5/14 大专 62837.47 3 +广西 广西柳州 5204606652 7/2/75 女 2016/8/3 高中 62824 16 +福建 福建厦门 339030302 3/17/78 女 2009/10/27 中专 62803.3 21 +青岛 青岛一支 516797802 2/27/81 女 2013/4/24 大专 62787.55 6 +辽宁 辽宁丹东 231868192 5/31/66 男 2008/6/18 本科 62779.01 7 +安徽 安徽马鞍山 689072872 10/25/73 女 2014/12/5 中专 62773 7 +广西 广西南宁 5210347792 6/13/82 女 2016/8/9 中专 62772.7 11 +重庆 重庆渝中 541543412 1/21/88 男 2013/6/20 本科 62755.93 12 +湖北 湖北武汉 788948402 8/29/70 男 2015/7/14 高中 62744.2 13 +湖南 湖南长沙 456754802 2/21/63 女 2012/3/15 大专 62710.5 7 +山东 山东威海 414104532 4/16/74 女 2011/1/14 高中 62708.85 8 +湖北 湖北十堰 5142841192 1/15/76 女 2016/5/19 高中 62700 2 +吉林 吉林长春 284690482 11/11/76 男 2009/3/13 大专 62699.5 6 +山东 山东济南 450766762 8/12/77 女 2012/1/4 本科 62696 3 +湖北 湖北襄阳 5145593472 1/9/74 男 2016/5/24 高中 62695.5 16 +江西 江西赣州 5151926582 6/18/83 女 2016/5/29 高中 62694.8 6 +辽宁 辽宁沈阳 5125900672 3/1/82 男 2016/4/21 本科 62689 1 +山东 山东济南 5205152 8/16/65 女 2003/7/1 本科 62664.98 7 +河北 河北唐山 254469192 3/9/71 女 2008/9/25 高中 62660.11 11 +浙江 浙江金华 5067913712 4/12/72 男 2016/2/24 高中 62655.6 8 +四川 四川高新 491800832 11/23/70 女 2012/12/20 大专 62645.3 10 +北京 北京海淀 167728302 10/2/82 女 2007/10/1 本科 62634.71 7 +山东 山东淄博 724831402 4/4/85 女 2015/3/25 大专 62631.3 14 +湖南 湖南长沙 5152466902 2/26/92 女 2016/5/30 本科 62626 5 +福建 福建福州 821930772 6/16/71 男 2015/7/31 高中 62618 3 +北京 北京海淀 511557432 6/11/90 男 2013/4/1 大专 62612.15 0 +河南 河南平顶山 545987962 9/2/59 男 2013/6/24 高中 62594.75 0 +山东 山东济宁 5207725122 12/24/68 男 2016/8/6 大专 62589.4 17 +湖北 湖北黄石 297037812 9/12/73 男 2009/5/4 大专 62583.83 15 +深圳 深圳宝安 637268732 6/9/81 女 2014/6/16 高中 62579.38 2 +内蒙古 内蒙古通辽 569503972 2/23/76 女 2013/7/16 大专 62578.54 0 +四川 四川绵阳 580988912 7/1/78 女 2013/10/16 大专 62552.55 8 +北京 北京平谷 621671552 6/15/89 女 2014/4/1 高中 62548.5 2 +苏州 苏州太仓 5223277802 3/25/86 女 2016/8/25 大专 62543 9 +广东 广东广州 833017802 10/26/79 女 2015/8/6 大专 62511.5 4 +江西 江西新余 173901132 11/30/64 女 2007/11/1 高中 62509.34 3 +山西 山西临汾 559117162 7/29/70 女 2013/6/28 本科 62489.61 2 +江西 江西南昌 727506092 9/13/87 女 2015/3/25 高中 62479.9 27 +黑龙江 黑龙江佳木斯 5169558842 7/29/76 女 2016/6/13 中专 62474.4 8 +四川 四川青羊 99322 8/7/69 女 2001/12/30 大专 62462.25 2 +贵州 贵州贵阳 665939422 4/23/85 女 2014/9/2 本科 62461 17 +福建 福建厦门 682842682 8/27/78 女 2014/11/17 中专 62449 16 +北京 北京海淀 648788842 7/15/91 男 2014/7/29 大专 62433 5 +广东 广东珠海 572478872 1/11/81 女 2013/8/6 本科 62432.97 8 +北京 北京海淀 556514212 9/25/87 女 2013/6/30 本科 62432.8 5 +广东 广东惠州 18670702 12/14/64 女 2004/9/10 大专 62428.28 5 +山西 山西太原 173836232 8/1/62 女 2007/11/1 大专 62419.88 13 +河南 河南南阳 15769912 10/15/71 男 2004/7/1 大专 62356.75 0 +湖北 湖北黄石 123065592 3/8/60 女 2007/3/18 中专 62316.88 12 +上海 上海陆家嘴 250418082 5/1/73 男 2008/9/9 大专 62314.11 12 +四川 四川高新 5033760642 6/18/71 男 2015/11/27 大专 62313.7 9 +四川 四川高新 5013833962 6/7/77 男 2015/11/9 大专 62288 4 +湖北 湖北武汉 5058572702 1/28/74 女 2016/1/8 大专 62282 13 +云南 云南昆明 5227800522 3/29/79 女 2016/8/31 中专 62256.5 8 +佛山 佛山顺德龙江 402608982 5/11/88 女 2010/10/29 中专 62253.05 6 +甘肃 甘肃金昌 408130172 11/15/68 女 2010/12/8 本科 62248.65 6 +湖北 湖北荆州 47394982 11/26/75 女 2005/6/18 大专 62229.55 14 +浙江 浙江杭州 5074307542 1/26/91 女 2016/3/4 本科 62220 4 +湖南 湖南株洲 5146617892 7/13/79 男 2016/5/25 大专 62215.5 6 +贵州 贵州贵阳 5196496732 1/20/82 女 2016/7/29 本科 62212 11 +四川 四川高新 5203867832 6/26/72 女 2016/8/3 大专 62206 8 +四川 四川高新 246149382 10/17/85 女 2008/8/15 本科 62202.85 14 +浙江 浙江湖州 18811112 11/7/71 女 2004/9/17 高中 62177.52 8 +湖北 湖北武汉 206603112 3/14/82 女 2008/3/10 大专 62177.29 13 +黑龙江 黑龙江哈尔滨 505289972 2/27/74 女 2013/3/4 大专 62173 12 +山东 山东烟台 745057922 3/3/83 女 2015/4/13 高中 62163.2 5 +陕西 陕西安康 572356612 6/24/67 女 2013/8/6 高中 62147.15 3 +陕西 陕西宝鸡 5163612832 6/12/66 男 2016/6/6 高中 62146.44 4 +河北 河北保定 853648102 8/10/69 女 2015/8/10 高中 62135.6 13 +河北 河北石家庄 681191312 1/20/77 女 2014/11/10 高中 62132.5 12 +四川 四川高新 5205831372 10/10/71 女 2016/8/5 高中 62129 9 +河北 河北承德 665352952 8/25/72 男 2014/8/31 中专 62128.24 8 +北京 北京海淀 281605602 7/24/86 女 2009/3/1 本科 62098.94 4 +云南 云南昆明 152482552 12/10/71 女 2007/7/24 中专 62098.53 9 +湖北 湖北武汉 623736882 1/24/83 女 2014/4/17 大专 62089.5 7 +湖北 湖北襄阳 58648382 10/14/69 女 2005/9/15 大专 62073.96 15 +上海 上海黄浦 5157854452 1/12/85 女 2016/6/1 硕士 62071.5 13 +深圳 深圳福田第二 621098762 1/6/82 女 2014/3/31 本科 62052.22 14 +四川 四川高新 5188908022 4/11/84 女 2016/7/15 本科 62047 19 +山东 山东威海 16431192 7/27/74 女 2004/7/1 高中 62046.39 9 +四川 四川青羊 663375412 7/31/84 女 2014/8/27 硕士 62039 3 +山东 山东临沂 251418782 12/31/66 女 2008/9/12 高中 61989.9 8 +河北 河北石家庄 668394152 9/30/71 男 2014/9/11 中专 61979.6 12 +湖南 湖南长沙 390584752 11/5/73 女 2010/8/12 高中 61977.71 10 +北京 北京海淀 426929052 7/21/88 女 2011/6/15 大专 61960 5 +云南 云南昆明 317680392 5/11/77 女 2009/7/24 大专 61954.5 7 +贵州 贵州黔南 5155561832 5/4/83 女 2016/5/31 中专 61953.2 20 +山东 山东潍坊 5214739032 4/10/65 男 2016/8/12 高中 61947 16 +广西 广西南宁 5205225832 6/15/71 女 2016/8/4 本科 61909.1 23 +山东 山东临沂 271364912 10/14/78 女 2008/12/21 大专 61882.9 5 +湖北 湖北武汉 678175102 8/8/83 女 2014/10/23 本科 61881.7 11 +大连 大连海川 554165692 10/30/79 男 2013/6/26 中专 61880.66 0 +青岛 青岛一支 5150355542 3/26/70 女 2016/5/27 本科 61872 11 +广东 广东惠州 533285432 10/29/77 女 2013/6/13 大专 61860.23 0 +湖南 湖南常德 558725392 12/28/67 女 2013/6/28 高中 61851.22 0 +苏州 苏州新区 254813782 2/9/84 女 2008/10/1 中专 61849 13 +江西 江西景德镇 400260192 11/21/75 女 2010/10/12 大专 61848.74 12 +山东 山东淄博 695150102 9/2/73 男 2014/12/22 高中 61844.2 10 +江西 江西南昌 871316752 4/5/88 女 2015/9/14 高中 61826 14 +辽宁 辽宁阜新 113180802 3/11/63 女 2007/1/4 高中 61821.14 6 +山东 山东威海 293613782 5/23/79 女 2009/4/20 大专 61816.18 6 +山西 山西临汾 5199941582 11/4/70 女 2016/8/1 高中 61815.1 15 +河南 河南三门峡 95574952 2/22/69 女 2006/9/1 本科 61812.22 0 +河南 河南商丘 406004682 5/22/74 女 2010/11/25 高中 61808.7 5 +云南 云南昆明 503586682 1/22/78 女 2013/2/18 大专 61802.02 6 +广东 广东广州 5104405652 1/20/73 女 2016/3/22 高中 61793 5 +四川 四川青羊 609117242 1/21/72 女 2014/2/12 大专 61786.25 8 +辽宁 辽宁沈阳 694867612 7/17/85 男 2014/12/22 大专 61783.2 16 +河北 河北唐山 189668722 5/1/75 女 2007/12/13 高中 61772.76 7 +云南 云南昆明 437171412 10/3/80 女 2011/9/9 中专 61770.38 4 +湖南 湖南长沙 731992652 4/18/79 女 2015/3/31 本科 61762.5 11 +湖南 湖南郴州 5185012652 10/9/65 女 2016/6/29 高中 61762 7 +河南 河南商丘 483064692 3/4/67 女 2012/11/14 高中 61756.92 9 +山东 山东临沂 5221029562 3/11/87 女 2016/8/22 中专 61733 7 +山东 山东菏泽 536942402 12/2/72 女 2013/6/15 中专 61730.75 11 +四川 四川青羊 592554802 1/27/88 男 2013/12/17 硕士 61727 3 +安徽 安徽宿州 477439392 10/2/61 女 2012/9/7 大专 61715.7 16 +江苏 江苏南京 774842092 3/12/84 女 2015/6/26 大专 61697.7 6 +黑龙江 黑龙江佳木斯 132804532 10/13/62 女 2007/4/25 本科 61675 2 +青岛 青岛一支 616276122 4/12/81 女 2014/3/21 本科 61674 12 +湖北 湖北荆门 838016722 10/28/66 女 2015/8/8 高中 61670.5 6 +四川 四川青羊 575698022 3/23/82 女 2013/8/30 大专 61670.05 7 +四川 四川高新 737974552 8/21/86 女 2015/4/8 本科 61640.1 9 +浙江 浙江杭州 585867942 11/20/82 男 2013/11/25 高中 61630.76 3 +陕西 陕西西安 516469262 10/11/68 男 2013/4/24 大专 61622.91 4 +福建 福建福州 269085762 10/30/87 女 2008/12/9 高中 61598.99 7 +四川 四川德阳 582231492 9/27/90 女 2013/10/28 高中 61595.81 15 +湖北 湖北黄冈 5021515032 11/10/73 女 2015/11/18 中专 61595.7 7 +河北 河北承德 5157378522 5/6/63 女 2016/6/1 高中 61595 5 +深圳 深圳南山 824944612 3/2/92 男 2015/8/3 本科 61578 7 +湖北 湖北十堰 810007312 2/1/80 女 2015/7/28 高中 61573.8 3 +安徽 安徽阜阳 682186572 9/16/81 女 2014/11/13 高中 61568.4 7 +山东 山东滨州 446478942 3/27/83 女 2011/12/8 中专 61565.05 4 +江西 江西新余 5084925892 1/8/79 女 2016/3/10 高中 61549.3 1 +黑龙江 黑龙江哈尔滨 32702902 11/18/74 男 2005/3/1 大专 61526.18 7 +浙江 浙江杭州 5150242202 9/9/71 女 2016/5/27 大专 61508.35 9 +江西 江西南昌 44666702 10/10/63 女 2005/5/27 高中 61501.96 5 +四川 四川绵阳 350972882 10/20/81 女 2009/12/21 大专 61491.13 7 +山东 山东临沂 274424532 6/6/69 女 2009/1/1 中专 61455.25 9 +湖北 湖北武汉 613374632 11/7/86 女 2014/3/13 高中 61439.2 17 +四川 四川高新 673681972 11/11/83 女 2014/9/25 大专 61433.1 8 +浙江 浙江杭州 5175351632 6/26/78 女 2016/6/19 大专 61423.5 12 +青岛 青岛一支 862526322 12/19/80 女 2015/8/24 本科 61416 1 +广东 广东广州 5173493192 5/13/80 男 2016/6/16 高中 61412 9 +河南 河南郑州 690662142 2/18/93 男 2014/12/13 本科 61396 11 +江西 江西南昌 5193607572 9/20/64 男 2016/7/27 高中 61382.2 11 +江苏 江苏南京 602170782 10/19/80 女 2013/12/31 大专 61378.5 8 +河南 河南三门峡 41772752 8/22/72 女 2005/5/1 大专 61376.65 10 +福建 福建福州 5116731922 11/20/74 女 2016/4/5 本科 61349 10 +四川 四川高新 347622962 1/3/75 女 2009/12/4 大专 61305.77 11 +山东 山东淄博 866125232 10/9/85 男 2015/9/2 高中 61301.4 18 +河北 河北石家庄 609362462 4/16/75 女 2014/2/18 大专 61299.02 7 +广西 广西梧州 5118258512 6/8/77 女 2016/4/8 高中 61280.5 24 +天津 天津市区二支 504543702 8/1/74 男 2013/2/26 本科 61278.05 2 +江苏 江苏镇江 496888242 10/17/63 女 2012/12/31 本科 61269.47 3 +浙江 浙江嘉兴 422928462 1/10/89 女 2011/5/3 大专 61260.64 10 +河南 河南郑州 808903742 11/2/75 女 2015/7/28 高中 61252 12 +内蒙古 内蒙呼和浩特 249499302 6/9/69 女 2008/9/1 高中 61248.56 4 +广西 广西南宁 230444592 4/25/77 女 2008/6/11 本科 61241.08 10 +云南 云南昆明 691712392 7/8/72 女 2014/12/17 大专 61233.5 11 +北京 北京海淀 529890432 8/28/88 男 2013/6/8 本科 61230.82 0 +青岛 青岛一支 32453912 10/17/78 女 2005/2/28 大专 61219.7 10 +四川 四川青羊 380744072 5/2/76 男 2010/6/18 大专 61216.52 10 +河北 河北石家庄 9282222 6/2/76 女 2003/12/1 大专 61214.81 9 +山东 山东威海 327440822 9/12/78 女 2009/8/28 大专 61194.81 11 +辽宁 辽宁沈阳 5136281472 11/8/78 女 2016/5/10 硕士 61189.89 10 +江苏 江苏泰州 5190308672 12/25/77 男 2016/7/20 高中 61184.2 16 +上海 上海陆家嘴 363805912 4/11/79 男 2010/3/15 大专 61182.29 5 +黑龙江 黑龙江哈尔滨 226239122 7/15/77 女 2008/5/24 大专 61162.6 9 +深圳 深圳福田 5030302152 2/11/87 女 2015/11/25 大专 61160 5 +河南 河南南阳 462325812 11/2/78 女 2012/4/19 本科 61145.66 7 +山西 山西朔州 5152933762 9/8/72 男 2016/5/30 高中 61144.7 3 +天津 天津市区二支 649632812 7/27/74 女 2014/7/31 高中 61137.52 5 +江苏 江苏宿迁 521843202 3/10/80 女 2013/5/22 高中 61134.63 7 +河北 河北保定 157810712 12/11/64 女 2007/8/16 高中 61134 3 +广西 广西桂林 433908582 10/2/79 男 2011/8/11 大专 61120.83 10 +四川 四川青羊 659625212 2/3/70 女 2014/8/21 本科 61111.94 3 +四川 四川高新 277266562 2/5/79 女 2009/1/17 本科 61096.6 3 +新疆 新疆昌吉 297484572 5/11/68 女 2009/5/5 大专 61095.54 12 +四川 四川高新 5041134442 3/15/72 女 2015/12/3 大专 61079.5 10 +浙江 浙江杭州 289933922 4/8/73 男 2009/3/30 高中 61054 3 +河北 河北石家庄 451818412 8/28/69 男 2012/1/1 中专 61053.71 2 +江西 江西南昌 5148950392 12/24/81 女 2016/5/26 高中 61050 12 +深圳 深圳宝安 15259652 4/15/71 女 2004/6/30 高中 61046.53 2 +青岛 青岛开发区 564412522 11/20/79 女 2013/6/29 中专 61034.95 15 +大连 大连海川 75955692 3/28/63 女 2006/2/24 大专 61021.82 7 +福建 福建泉州 5146283342 6/10/66 女 2016/5/25 高中 61001 9 +湖北 湖北黄石 654010792 10/13/70 女 2014/8/9 高中 60981.75 9 +安徽 安徽芜湖 5027201822 12/24/76 女 2015/11/23 高中 60976.76 6 +重庆 重庆永川 5203159822 10/29/82 女 2016/8/2 本科 60964.6 13 +山东 山东淄博 415713892 3/21/71 女 2011/2/17 大专 60964.54 8 +湖南 湖南长沙 141245902 10/2/61 女 2007/7/1 高中 60959.92 3 +山东 山东烟台 5134752112 12/7/81 女 2016/5/6 本科 60937.6 15 +上海 上海黄浦 5096695502 8/24/72 女 2016/3/16 中专 60915 5 +广东 广东广州 5049827262 1/15/69 女 2015/12/22 高中 60910 6 +黑龙江 黑龙江牡丹江 500572842 5/13/76 女 2013/1/23 高中 60905.97 3 +深圳 深圳福田 5031878662 6/14/72 女 2015/11/26 大专 60881 11 +湖北 湖北襄阳 207828242 4/26/82 男 2008/3/18 高中 60861.5 17 +黑龙江 黑龙江哈尔滨 5066885692 2/26/88 男 2016/2/19 中专 60857 5 +山西 山西太原 155254242 3/12/68 女 2007/8/1 高中 60839.85 13 +广东 广东江门 5182029192 12/1/66 男 2016/6/24 高中 60816 4 +山东 山东日照 72119102 4/7/73 女 2005/12/31 高中 60815.19 2 +黑龙江 黑龙江牡丹江 817986572 5/20/77 女 2015/7/31 大专 60814 4 +甘肃 甘肃武威 736267492 1/12/87 女 2015/4/7 中专 60810.2 4 +青岛 青岛一支 5021683692 10/28/81 女 2015/11/18 大专 60799 20 +北京 北京东城 93290362 11/21/76 女 2006/8/11 大专 60798.24 12 +江西 江西南昌 5194422552 2/27/70 男 2016/7/28 高中 60762.5 10 +内蒙古 内蒙古通辽 569478712 5/18/67 女 2013/7/16 中专 60738.57 1 +陕西 陕西西安 705657502 8/28/74 女 2015/1/22 本科 60738.5 2 +山东 山东德州 343891882 6/25/72 女 2009/11/19 本科 60702.35 6 +贵州 贵州贵阳 622223822 3/9/76 女 2014/4/4 本科 60689.7 10 +湖北 湖北恩施 5217141392 10/5/67 女 2016/8/16 高中 60687.6 13 +安徽 安徽宿州 379153132 1/1/64 女 2010/6/1 本科 60681.14 10 +四川 四川青羊 211214032 10/14/83 女 2008/3/25 大专 60678.36 6 +湖南 湖南长沙 433163982 9/5/73 女 2011/8/8 大专 60673.46 5 +山东 山东威海 385862182 3/3/82 女 2010/7/12 中专 60672.73 17 +广西 广西梧州 353449802 4/24/68 女 2009/12/30 中专 60660.41 13 +北京 北京平谷 550754642 10/16/67 女 2013/6/30 高中 60658.24 15 +四川 四川高新 380627252 10/15/87 女 2010/6/17 高中 60644 21 +广东 广东广州 353606262 7/22/66 女 2009/12/30 中专 60639.75 12 +青岛 青岛一支 326216392 7/14/71 女 2009/8/25 大专 60629.84 15 +广西 广西玉林 408047822 12/22/77 女 2010/12/8 高中 60624.64 8 +四川 四川青羊 250446412 2/3/64 女 2008/9/9 高中 60620.2 5 +福建 福建福州 5225005662 5/13/94 女 2016/8/29 高中 60608.6 2 +河南 河南周口 40527802 9/11/71 女 2005/4/28 高中 60600 3 +山东 山东日照 468732282 6/16/78 男 2012/6/20 大专 60599.1 9 +云南 云南昆明 168535702 11/11/73 女 2007/10/8 中专 60593.52 2 +湖北 湖北武汉 168057542 1/1/79 男 2007/10/6 大专 60572.36 6 +河南 河南郑州 5161194132 9/20/68 女 2016/6/3 大专 60557.83 16 +广东 广东惠州 471679822 12/1/88 女 2012/7/4 大专 60546.3 9 +山东 山东淄博 551595542 10/9/79 女 2013/6/25 高中 60530 7 +苏州 苏州新区 5124784722 4/18/78 女 2016/4/19 本科 60524.88 4 +河南 河南郑州 649928282 8/10/63 女 2014/7/31 本科 60513.6 10 +浙江 浙江金华 5028753822 2/18/78 女 2015/11/24 大专 60502.5 8 +辽宁 辽宁沈阳 829641922 9/26/65 女 2015/8/5 大专 60500.51 1 +黑龙江 黑龙江哈尔滨 627668802 2/14/72 男 2014/5/9 本科 60475.84 5 +北京 北京海淀 213474062 11/1/81 男 2008/4/1 高中 60468.41 5 +云南 云南昆明 5103979572 11/17/72 男 2016/3/22 本科 60457.5 7 +苏州 苏州吴江 5048870902 10/7/73 女 2015/12/21 高中 60444.37 3 +四川 四川青羊 21091932 3/21/73 男 2004/10/19 高中 60423.99 10 +浙江 浙江温州 691144072 11/27/72 女 2014/12/16 大专 60419.5 12 +浙江 浙江杭州 335096982 5/18/74 女 2009/9/30 中专 60414.93 5 +广东 广东广州 5783628662 6/5/84 女 2018/6/25 大专 60389.05 3 +深圳 深圳罗湖 385247382 8/26/67 女 2010/7/5 本科 60378.35 4 +四川 四川雅安 689364572 1/18/95 女 2014/12/8 高中 60374.85 5 +苏州 苏州姑苏 575203112 6/13/82 女 2013/8/29 大专 60366.64 6 +河北 河北唐山 633271912 5/28/78 女 2014/6/5 大专 60346.34 14 +海南 海南海口 464620042 10/11/79 女 2012/5/14 大专 60345.88 10 +山东 山东淄博 5156955142 6/8/88 女 2016/6/1 本科 60333 5 +重庆 重庆巴南 258975572 3/1/66 女 2008/10/24 大专 60314.9 8 +安徽 安徽合肥 244249022 1/1/62 女 2008/8/1 高中 60304.57 11 +广西 广西北海 539101662 7/7/81 女 2013/6/18 中专 60293.05 3 +云南 云南昆明 394157702 8/15/77 女 2010/9/2 本科 60287.89 5 +四川 四川高新 407844612 2/11/81 女 2010/12/7 高中 60263 11 +广西 广西南宁 441638852 6/5/84 男 2011/10/10 大专 60252.26 5 +青岛 青岛一支 480833692 4/15/79 女 2012/10/22 大专 60246.68 8 +四川 四川成都 228265512 10/21/66 女 2008/6/3 高中 60235.87 16 +湖北 湖北襄阳 284506392 3/20/72 女 2009/3/12 大专 60234.44 10 +辽宁 辽宁丹东 372355592 6/28/78 女 2010/4/28 大专 60231.11 9 +浙江 浙江温州 20365482 2/14/75 女 2004/9/30 大专 60227.58 4 +浙江 浙江金华 5015136642 4/30/74 男 2015/11/10 高中 60218.5 10 +辽宁 辽宁营口 198206122 6/26/69 女 2008/1/4 大专 60214 16 +山西 山西临汾 5189845412 5/10/76 女 2016/7/19 高中 60207.1 9 +青岛 青岛一支 5218750512 12/13/78 女 2016/8/18 大专 60205.9 12 +山东 山东泰安 5168372132 8/29/78 女 2016/6/12 大专 60190.65 6 +苏州 苏州新区 5028979532 9/16/67 女 2015/11/24 高中 60184 7 +福建 福建福州 304677922 12/23/81 女 2009/6/1 本科 60175.47 8 +湖北 湖北荆州 5062975782 3/17/87 女 2016/1/25 高中 60174.2 10 +北京 北京海淀 311460112 7/29/86 男 2009/7/1 本科 60171.02 7 +陕西 陕西西安 5194133352 9/11/82 女 2016/7/27 本科 60163.3 14 +福建 福建福州 765512642 7/14/79 女 2015/6/17 高中 60131.2 19 +四川 四川高新 5170290392 7/30/85 男 2016/6/14 大专 60130 14 +福建 福建三明 731692442 12/12/64 女 2015/3/31 高中 60130 1 +四川 四川高新 5084851532 2/7/79 女 2016/3/10 高中 60127 9 +江苏 江苏徐州 787780632 11/6/69 女 2015/7/13 大专 60115.5 3 +四川 四川高新 457888102 2/6/88 女 2012/3/21 本科 60114.17 8 +江西 江西南昌 5150901262 6/9/91 女 2016/5/27 高中 60104.4 11 +四川 四川高新 5132683402 9/10/80 女 2016/5/4 本科 60100 3 +重庆 重庆渝中 163306912 2/24/68 女 2007/9/17 大专 60077.37 10 +山东 山东滨州 454648162 10/15/75 女 2012/3/6 中专 60076.78 7 +大连 大连海川 701136742 3/3/75 女 2014/12/31 本科 60075.5 9 +广西 广西南宁 346091482 12/3/73 女 2009/11/26 本科 60072.7 0 +青岛 青岛一支 5015907172 9/12/76 女 2015/11/11 大专 60071 8 +重庆 重庆永川 704066562 11/8/71 女 2015/1/13 高中 60066.5 13 +福建 福建龙岩 257653442 9/25/71 女 2008/10/20 大专 60064.07 1 +湖北 湖北武汉 582237632 6/21/86 女 2013/10/28 高中 60035 14 +宁波 宁波宁海 5193725412 7/26/87 女 2016/7/27 高中 60032.5 9 +福建 福建福州 429619092 5/5/79 女 2011/6/29 中专 60022.5 14 +四川 四川青羊 582251312 9/12/71 女 2013/10/29 大专 60012.36 5 +山西 山西长治 325429782 5/26/75 女 2009/8/24 本科 60011.44 2 +四川 四川高新 513561632 12/10/75 男 2013/4/2 大专 60004.15 6 +黑龙江 黑龙江佳木斯 5104468172 10/24/84 男 2016/3/22 大专 60000 0 +佛山 佛山禅城 648554232 1/16/70 女 2014/7/29 高中 60000 0 +云南 云南昆明 5075497852 8/1/76 男 2016/3/4 中技 60000 0 +黑龙江 黑龙江黑河 484472242 4/11/81 女 2012/11/22 高中 60000 0 +广东 广东中山 522535182 6/16/81 女 2013/5/24 大专 60000 0 +四川 四川高新 752059372 11/24/70 男 2015/5/5 大专 60000 0 +湖北 湖北十堰 577259232 10/12/85 女 2013/9/7 大专 60000 0 +广东 广东惠州 452448562 9/7/72 女 2012/2/14 高中 60000 0 +黑龙江 黑龙江伊春 875374702 11/24/83 女 2015/9/21 本科 60000 0 +山东 山东济南 603606662 5/15/69 女 2014/1/1 中专 60000 0 +黑龙江 黑龙江哈尔滨 729159832 3/25/75 男 2015/3/27 大专 60000 0 +大连 大连银洲 5048094902 6/11/78 女 2015/12/18 中专 60000 0 +河北 河北沧州 328308382 8/23/64 女 2009/8/31 高中 59972.6 17 +四川 四川高新 5033391682 9/12/85 男 2015/11/27 大专 59969 5 +宁波 宁波宁海 813247252 8/19/76 女 2015/7/30 高中 59968 9 +山东 山东日照 286044712 10/17/84 女 2009/3/19 中专 59958.65 3 +四川 四川高新 427694442 4/10/71 女 2011/6/22 中专 59949 3 +浙江 浙江温州 873215442 9/1/77 男 2015/9/17 高中 59945 4 +浙江 浙江温州 82040732 6/12/81 女 2006/4/19 大专 59940.74 3 +河南 河南郑州 868281422 5/14/72 女 2015/9/8 大专 59917.12 17 +山东 山东淄博 716654372 9/26/86 男 2015/3/23 本科 59906 19 +广东 广东惠州 7351432 12/8/80 女 2003/8/31 中专 59895.15 9 +黑龙江 黑龙江哈尔滨 96603712 6/7/72 女 2006/9/8 本科 59887.72 0 +四川 四川高新 132314092 6/21/82 女 2007/4/25 中专 59881.58 18 +四川 四川高新 745049412 4/19/79 女 2015/4/13 本科 59869.83 10 +湖北 湖北荆门 5146129222 10/31/59 女 2016/5/25 大专 59850 10 +湖北 湖北武汉 5015122102 5/12/79 女 2015/11/10 大专 59847.8 7 +甘肃 甘肃酒泉 426598412 11/1/67 女 2011/6/10 高中 59846.87 1 +湖北 湖北十堰 5197980742 7/2/62 男 2016/8/1 高中 59846.5 8 +宁波 宁波宁海 520111852 2/17/68 女 2013/5/13 高中 59841 7 +黑龙江 黑龙江哈尔滨 317251082 9/27/63 女 2009/7/24 大专 59831.05 10 +浙江 浙江湖州 106065332 2/19/77 女 2006/12/4 大专 59830.34 6 +重庆 重庆渝中 676596442 2/15/91 女 2014/10/10 大专 59829 10 +贵州 贵州遵义 5158659462 4/25/84 女 2016/6/1 高中 59827.4 17 +黑龙江 黑龙江牡丹江 143438662 7/12/70 女 2007/6/24 大专 59800.9 2 +云南 云南昆明 441095792 7/3/70 女 2011/10/8 高中 59800.13 3 +山东 山东烟台 408803032 6/30/79 女 2010/12/13 初中 59799 6 +大连 大连海川 482248082 1/2/79 女 2012/11/5 本科 59790 3 +山东 山东济南 653623492 9/10/86 女 2014/8/8 本科 59789.66 4 +陕西 陕西西安 5036105882 6/16/80 女 2015/11/30 中专 59788.7 12 +山东 山东威海 728557042 10/18/83 男 2015/3/26 中专 59783 5 +河南 河南焦作 397762752 12/27/64 女 2010/9/25 高中 59749.81 4 +青岛 青岛一支 404466362 7/20/81 女 2010/11/16 本科 59746.46 17 +重庆 重庆巴南 5193249482 9/18/87 男 2016/7/26 大专 59728 7 +云南 云南昆明 528145132 10/7/76 女 2013/6/5 中技 59727.12 7 +宁波 宁波宁海 620669452 10/30/72 女 2014/3/31 高中 59702.57 5 +山东 山东烟台 546677572 3/1/65 女 2013/6/24 初中 59700.1 4 +广西 广西南宁 484221852 12/29/74 女 2012/11/22 大专 59695.64 3 +辽宁 辽宁沈阳 5143799422 7/26/79 女 2016/5/21 中专 59694.69 9 +青岛 青岛一支 5014771282 8/29/54 男 2015/11/10 本科 59688 1 +四川 四川高新 5222470022 3/24/91 男 2016/8/24 本科 59686 7 +江苏 江苏无锡 323692022 9/20/67 女 2009/8/12 高中 59685.92 5 +湖南 湖南永州 5113097572 1/30/93 男 2016/3/28 高中 59674.16 13 +江西 江西鹰潭 676665112 1/4/76 女 2014/10/10 高中 59670.22 11 +青岛 青岛即墨 370467512 4/24/69 女 2010/4/19 高中 59649.72 5 +广西 广西南宁 577262302 11/26/78 女 2013/9/7 大专 59635.54 13 +山东 山东日照 441593772 8/25/77 女 2011/10/10 中专 59596.91 11 +重庆 重庆永川 5203393702 12/3/73 男 2016/8/3 高中 59582.5 16 +重庆 重庆渝中 5128760822 4/22/82 男 2016/4/26 本科 59549.5 5 +山东 山东济宁 5211319592 4/15/73 女 2016/8/9 高中 59548 14 +青岛 青岛开发区 186069812 8/24/69 男 2007/12/1 大专 59541.16 6 +山西 山西临汾 5034256512 1/2/75 男 2015/11/27 中专 59540 4 +北京 北京海淀 475168752 8/14/91 男 2012/9/1 大专 59528.2 2 +河南 河南周口 102876612 12/15/70 女 2006/11/7 大专 59492.65 7 +四川 四川绵阳 448342462 2/22/81 女 2011/12/23 大专 59482.93 3 +北京 北京海淀 221560232 11/22/85 女 2008/6/1 本科 59481.53 9 +广东 广东广州 5088840302 4/1/83 女 2016/3/11 高中 59474.3 11 +山东 山东威海 413769152 9/15/71 女 2011/1/10 高中 59468.95 10 +贵州 贵州贵阳 334767742 5/7/89 女 2009/9/29 大专 59467.8 10 +江苏 江苏泰州 5204647432 9/26/88 女 2016/8/4 高中 59459 9 +山西 山西太原 796282162 1/8/79 女 2015/7/20 中专 59457 7 +山东 山东威海 181018972 10/27/77 女 2007/11/20 高中 59452 7 +山东 山东菏泽 374576682 12/15/73 女 2010/5/10 中专 59451.94 0 +湖北 湖北武汉 734417652 8/21/82 女 2015/4/2 大专 59438.8 4 +山东 山东烟台 60382102 8/8/76 女 2005/9/29 大专 59417.18 9 +浙江 浙江杭州 5047343342 10/21/84 女 2015/12/16 本科 59416.1 3 +山东 山东临沂 625873952 1/2/72 女 2014/4/29 中专 59410.9 11 +北京 北京海淀 5181662032 1/17/94 女 2016/6/24 大专 59410.6 26 +北京 北京海淀 785614532 10/16/92 男 2015/7/10 本科 59410 7 +山东 山东烟台 142568732 7/31/73 女 2007/6/22 高中 59397.7 22 +青岛 青岛一支 551678862 10/30/81 男 2013/6/25 大专 59389.8 6 +广东 广东惠州 7149892 10/12/77 男 2003/9/5 大专 59382.67 1 +江西 江西南昌 534345592 12/9/89 女 2013/6/14 大专 59374.56 13 +湖北 湖北十堰 813457302 7/1/78 女 2015/7/30 大专 59354.5 11 +湖北 湖北襄阳 5087160492 1/8/81 女 2016/3/10 高中 59350 2 +苏州 苏州昆山 5027162842 3/11/74 女 2015/11/23 高中 59321 5 +山西 山西太原 5154548282 11/26/71 女 2016/5/31 大专 59319 4 +重庆 重庆江津 554575882 7/8/75 女 2013/6/27 中专 59309.3 15 +江西 江西宜春 493345022 7/14/60 女 2012/12/24 高中 59305.4 4 +重庆 重庆永川 596721062 4/26/85 男 2013/12/24 本科 59290 16 +陕西 陕西宝鸡 573030172 11/9/70 女 2013/8/9 中专 59284.65 6 +佛山 佛山顺德龙江 482590302 5/9/76 女 2012/11/9 中专 59269.45 15 +河北 河北唐山 5148638552 11/2/69 男 2016/5/26 中专 59262 4 +山东 山东烟台 5231139302 4/26/67 女 2016/9/7 大专 59255 6 +陕西 陕西西安 260867422 9/24/69 女 2008/11/1 大专 59245.98 8 +黑龙江 黑龙江哈尔滨 5198583582 12/4/93 女 2016/8/1 本科 59237.3 9 +湖北 湖北武汉 5176783022 1/18/80 男 2016/6/20 本科 59227.7 6 +湖北 湖北武汉 20881882 11/11/53 男 2004/10/16 本科 59220.64 3 +重庆 重庆巴南 5222765592 9/20/85 女 2016/8/24 大专 59212.2 12 +辽宁 辽宁葫芦岛 453704122 8/10/78 女 2012/3/1 大专 59195.05 2 +北京 北京海淀 508269342 10/14/91 女 2013/4/1 大专 59192 1 +辽宁 辽宁营口 532630022 6/9/74 女 2013/6/10 初中 59189.88 9 +江苏 江苏镇江 5203353822 12/26/83 女 2016/8/3 中专 59186 12 +辽宁 辽宁朝阳 364346602 6/19/59 女 2010/3/16 大专 59173.2 1 +山东 山东烟台 5216030912 11/8/88 女 2016/8/15 本科 59172.7 5 +广东 广东茂名 728736662 8/26/88 女 2015/3/26 本科 59171 17 +大连 大连海川 5107128922 5/12/82 女 2016/3/23 本科 59155 11 +湖北 湖北黄石 58693462 8/12/60 女 2005/9/16 高中 59142.93 10 +北京 北京东城 678399802 8/20/85 女 2014/10/24 本科 59129 10 +广东 广东广州 79655372 4/11/76 女 2006/3/24 大专 59128.2 4 +重庆 重庆渝中 5184330952 2/23/90 女 2016/6/27 硕士 59124.4 16 +辽宁 辽宁沈阳 482659942 5/2/66 女 2012/11/9 高中 59106.62 1 +浙江 浙江湖州 5163610062 10/28/68 女 2016/6/6 高中 59095 14 +湖北 湖北十堰 5176941712 10/10/70 女 2016/6/20 中专 59081 5 +湖北 湖北黄石 5112335142 10/6/68 女 2016/3/25 高中 59064 9 +四川 四川高新 5216967332 2/8/80 女 2016/8/16 高中 59061 18 +辽宁 辽宁沈阳 9692412 10/13/71 女 2004/1/5 大专 59059.5 6 +安徽 安徽合肥 133262872 1/11/69 女 2007/5/1 高中 59057.86 8 +浙江 浙江金华 5202515232 6/19/64 男 2016/8/2 中专 59049.5 9 +吉林 吉林辽源 480408152 4/16/64 女 2012/10/12 高中 59039.9 14 +四川 四川青羊 190706692 10/14/73 女 2007/12/18 大专 59039.7 4 +四川 四川绵阳 434885422 8/22/74 女 2011/8/22 高中 59021.4 9 +辽宁 辽宁朝阳 209344372 3/28/77 女 2008/3/21 大专 59020.97 11 +湖北 湖北恩施 858805152 8/21/78 女 2015/8/12 高中 59010.2 22 +湖北 湖北武汉 569876622 7/12/83 女 2013/7/19 本科 59003.71 6 +山东 山东日照 63734392 9/12/72 女 2005/10/31 高中 59001.85 8 +四川 四川绵阳 5205173212 5/3/73 男 2016/8/4 中专 59001 10 +山东 山东泰安 822943482 9/11/82 男 2015/8/1 高中 58996.97 8 +深圳 深圳福田第二 693898312 11/27/82 女 2014/12/20 本科 58995.6 8 +辽宁 辽宁沈阳 279425822 2/2/68 女 2009/2/16 高中 58957.94 6 +湖北 湖北武汉 5164565592 10/27/74 女 2016/6/7 大专 58950 9 +青岛 青岛一支 8033502 9/1/56 女 2003/9/23 大专 58941.98 6 +广东 广东广州 5176073212 3/6/77 女 2016/6/20 大专 58907.5 8 +湖北 湖北襄阳 388281042 1/10/81 女 2010/8/1 中专 58900.51 13 +山东 山东威海 5102170082 12/19/76 男 2016/3/21 中专 58897 14 +山东 山东德州 287314922 5/30/77 女 2009/3/24 本科 58864.38 11 +山东 山东威海 5202045672 1/24/79 女 2016/8/2 中专 58863.1 10 +四川 四川高新 5069526432 8/3/84 男 2016/2/29 本科 58862 7 +安徽 安徽安庆 780389512 10/23/81 女 2015/7/1 高中 58861.5 12 +湖北 湖北荆门 532874542 5/1/62 女 2013/6/11 高中 58858.64 8 +贵州 贵州黔东南 736339232 10/4/63 女 2015/4/7 中专 58834.1 17 +江西 江西赣州 5151954692 9/27/76 女 2016/5/29 高中 58815 15 +北京 北京良乡 670739872 5/20/84 女 2014/9/22 高中 58791.5 13 +安徽 安徽合肥 468245882 7/26/80 女 2012/6/18 中专 58790.43 12 +佛山 佛山顺德龙江 797123062 9/21/82 女 2015/7/21 高中 58781.6 12 +湖北 湖北襄阳 95835252 12/8/54 女 2006/9/1 大专 58764.01 10 +四川 四川成都 207866482 7/23/70 女 2008/3/17 中专 58759.4 10 +四川 四川绵阳 332089982 7/29/79 男 2009/9/23 中专 58748.03 6 +云南 云南昆明 836245462 2/1/75 女 2015/8/7 大专 58729.22 6 +四川 四川巴中 486141062 6/9/73 男 2012/11/28 高中 58710 8 +重庆 重庆江津 689760112 3/19/71 女 2014/12/9 高中 58705.6 10 +苏州 苏州新区 180407942 11/11/62 女 2007/11/16 高中 58685.56 0 +浙江 浙江温州 5784388322 7/31/86 女 2018/6/25 高中 58683.8 7 +河南 河南许昌 325758052 12/1/70 男 2009/8/24 大专 58680.7 8 +广东 广东广州 5219240982 6/25/92 女 2016/8/18 本科 58670 25 +北京 北京良乡 859425392 9/6/80 男 2015/8/14 大专 58669 13 +河北 河北唐山 513521022 11/11/80 女 2013/4/2 高中 58668 5 +湖北 湖北恩施 5196911942 10/24/87 女 2016/7/29 高中 58650.4 13 +湖北 湖北鄂州 502503632 1/15/82 女 2013/2/1 高中 58628.42 5 +陕西 陕西西安 645732022 8/25/76 女 2014/7/9 大专 58627.74 8 +湖北 湖北荆州 84485552 11/9/75 女 2006/5/12 高中 58606.64 11 +浙江 浙江温州 576114352 10/17/85 男 2013/9/2 本科 58601.98 4 +山东 山东威海 823244392 8/5/67 女 2015/8/1 本科 58591.5 13 +苏州 苏州太仓 244736392 1/11/64 女 2008/8/6 高中 58590.41 5 +黑龙江 黑龙江绥化 881900362 7/2/78 女 2015/10/8 大专 58540.2 13 +四川 四川高新 188346592 8/16/77 男 2007/12/10 大专 58535.06 15 +辽宁 辽宁沈阳 5201453702 6/16/75 男 2016/8/2 本科 58529 11 +广东 广东惠州 432718622 4/7/71 女 2011/8/3 高中 58524.51 6 +苏州 苏州张家港 617907672 8/25/89 女 2014/3/25 本科 58512.42 0 +河北 河北唐山 34046252 8/25/68 女 2005/3/16 中专 58510 9 +湖南 湖南邵阳 5130345432 4/15/62 女 2016/4/29 高中 58506.33 9 +山东 山东烟台 472001252 8/29/80 女 2012/7/11 本科 58484.8 9 +山东 山东临沂 274372612 7/8/70 女 2009/1/1 高中 58479.1 11 +浙江 浙江杭州 5199096692 8/2/62 男 2016/8/1 大专 58478 11 +江苏 江苏南京 789697742 10/6/83 女 2015/7/14 中专 58460.8 2 +湖北 湖北武汉 767209792 8/7/76 女 2015/6/19 中专 58459.86 3 +山西 山西临汾 692490762 2/14/69 女 2014/12/18 大专 58456.5 6 +宁波 宁波象山 31601432 9/28/68 女 2005/2/16 本科 58445.41 4 +北京 北京东城 261564842 7/2/82 女 2008/11/6 高中 58442.06 11 +四川 四川绵阳 97609582 3/3/74 女 2006/9/19 本科 58441.67 3 +四川 四川青羊 76976912 1/23/70 男 2006/3/1 大专 58430.6 5 +河北 河北廊坊 369436382 10/17/62 男 2010/4/10 本科 58429.71 2 +福建 福建南平 454884172 10/16/82 女 2012/3/7 中专 58398 2 +山东 山东潍坊 669272592 10/27/79 女 2014/9/16 中专 58374.52 13 +山东 山东烟台 123752132 10/2/69 女 2007/3/19 高中 58372.99 10 +山东 山东济南 877971512 7/19/88 女 2015/9/24 中专 58343 6 +四川 四川成都 22370382 5/28/62 女 2004/11/8 高中 58332.2 8 +福建 福建福州 502263852 9/30/75 女 2013/1/31 高中 58314.7 7 +青岛 青岛一支 5187405942 9/1/68 女 2016/7/5 大专 58310.5 5 +广西 广西柳州 839212822 11/27/82 女 2015/8/8 高中 58309 3 +山东 山东日照 347105862 3/21/78 女 2009/12/1 高中 58308.25 23 +青岛 青岛一支 404596162 5/17/62 女 2010/11/18 大专 58299.86 5 +安徽 安徽六安 5191963072 5/11/92 女 2016/7/25 高中 58278.93 8 +山东 山东烟台 664214912 4/8/84 女 2014/8/29 本科 58273.05 8 +深圳 深圳福田 613825162 12/5/80 女 2014/3/15 中专 58262.26 7 +江苏 江苏扬州 5042651062 6/27/63 女 2015/12/7 高中 58248 3 +福建 福建厦门 250015702 1/16/84 女 2008/9/8 中专 58246.73 22 +四川 四川绵阳 5197397842 9/6/88 女 2016/7/30 本科 58246 13 +四川 四川高新 646518902 1/9/86 男 2014/7/18 本科 58235.14 7 +湖北 湖北十堰 203786342 4/13/69 男 2008/2/12 本科 58234.8 14 +辽宁 辽宁沈阳 404556522 11/16/81 男 2010/11/17 大专 58222.5 15 +江西 江西南昌 430985602 5/3/87 女 2011/7/21 高中 58202.29 8 +四川 四川高新 538989312 1/7/74 女 2013/6/18 大专 58179.27 7 +湖北 湖北武汉 121739692 1/24/71 女 2007/3/7 大专 58175 6 +青岛 青岛一支 5213974872 11/4/75 女 2016/8/12 大专 58170.5 12 +山东 山东济南 418713082 7/17/80 女 2011/3/23 大专 58166.36 14 +河南 河南南阳 739572332 3/11/77 女 2015/4/9 中专 58157.5 8 +山东 山东临沂 458163052 12/2/68 男 2012/3/22 初中 58121 5 +河南 河南郑州 618047382 9/24/89 女 2014/3/25 大专 58119.34 12 +浙江 浙江金华 691245812 2/12/84 女 2014/12/16 本科 58090.5 2 +天津 天津市区一支 541973422 1/9/84 女 2013/6/20 本科 58074.8 5 +辽宁 辽宁营口 5115266952 9/19/70 女 2016/3/31 本科 58070 1 +山东 山东威海 39260662 7/25/73 女 2005/4/19 中专 58064.47 10 +湖北 湖北恩施 5197695142 4/15/66 女 2016/7/31 大专 58062 9 +山东 山东日照 496191792 10/6/73 男 2012/12/29 中专 58060.95 5 +广东 广东肇庆 825276922 8/4/85 女 2015/8/3 本科 58056.6 9 +辽宁 辽宁沈阳 628093372 7/29/71 女 2014/5/12 本科 58055.3 13 +湖南 湖南株洲 5198348802 8/21/86 女 2016/8/1 中专 58054.3 11 +福建 福建福州 5211230762 7/13/77 女 2016/8/9 初中 58029 10 +苏州 苏州新区 578999092 11/22/80 男 2013/9/24 本科 58028.7 10 +山东 山东烟台 531153802 11/12/86 女 2013/6/9 中专 58019.23 10 +广西 广西玉林 285102072 11/1/63 女 2009/3/16 大专 58013.71 10 +山东 山东临沂 477154532 11/29/85 女 2012/9/4 中专 58001.6 21 +山东 山东济宁 5125697602 3/19/92 女 2016/4/21 中专 58000 0 +深圳 深圳福田 292631502 7/19/78 女 2009/4/15 本科 57993.45 6 +黑龙江 黑龙江绥化 732816802 11/7/78 女 2015/3/31 本科 57992.2 2 +山东 山东东营 105947812 10/17/75 男 2006/12/4 大专 57989.69 8 +广东 广东广州 408575532 2/26/76 女 2010/12/10 中专 57988.5 1 +宁波 宁波宁海 495604352 12/21/79 女 2012/12/28 高中 57986.6 1 +辽宁 辽宁沈阳 628083462 10/19/78 男 2014/5/12 本科 57986.02 3 +湖南 湖南常德 428477282 7/27/71 男 2011/6/24 大专 57976.39 8 +湖南 湖南长沙 206226692 11/28/63 女 2008/3/7 大专 57962.65 7 +四川 四川青羊 296729092 11/30/71 女 2009/5/4 大专 57955.96 3 +山东 山东济南 640785022 3/6/82 女 2014/6/24 大专 57938.56 11 +河北 河北石家庄 5175864742 6/24/77 女 2016/6/20 本科 57910 12 +四川 四川眉山 415223452 10/29/71 女 2011/1/30 本科 57887 11 +四川 四川高新 5202677522 9/6/66 女 2016/8/2 本科 57857 16 +北京 北京海淀 648608522 9/10/88 男 2014/7/29 本科 57850 1 +浙江 浙江金华 635729712 11/19/80 女 2014/6/12 高中 57833.97 9 +四川 四川高新 752185402 1/29/88 女 2015/5/6 本科 57827.3 4 +浙江 浙江绍兴 874687192 8/6/76 女 2015/9/20 中专 57825 6 +山西 山西大同 385783602 1/10/75 女 2010/7/9 高中 57820.7 5 +四川 四川青羊 5174342652 3/23/73 女 2016/6/17 大专 57805 8 +湖北 湖北武汉 257617572 4/23/79 女 2008/10/20 中专 57798.93 8 +广西 广西梧州 5177779332 5/25/72 女 2016/6/21 高中 57795.1 16 +深圳 深圳罗湖 770215122 12/23/82 女 2015/6/24 本科 57784.95 6 +江西 江西南昌 5193464322 9/6/94 女 2016/7/27 高中 57782 7 +贵州 贵州贵阳 660103372 3/27/78 女 2014/8/22 中专 57771 8 +北京 北京良乡 554834782 2/21/73 女 2013/6/30 本科 57767.66 9 +黑龙江 黑龙江绥化 273556972 1/21/69 女 2009/1/1 大专 57762.06 6 +山东 山东济南 577030062 11/22/77 女 2013/9/6 大专 57743 13 +广东 广东东莞 669953962 4/10/79 男 2014/9/18 高中 57740.5 6 +湖北 湖北荆州 5198192882 11/1/74 男 2016/8/1 高中 57736.6 16 +山东 山东德州 832440272 10/27/68 女 2015/8/6 大专 57728 1 +江西 江西南昌 652913092 2/23/87 女 2014/8/7 大专 57708.94 12 +河南 河南驻马店 155965342 1/6/63 男 2007/8/3 高中 57702.6 15 +陕西 陕西西安 582670712 9/24/70 女 2013/11/1 大专 57696 2 +云南 云南昆明 435714042 2/10/78 女 2011/9/1 大专 57690.72 4 +吉林 吉林吉林 5148081962 2/5/82 女 2016/5/26 大专 57686 3 +浙江 浙江绍兴 31482242 11/11/62 女 2005/2/7 高中 57674.4 4 +河北 河北邢台 449459982 1/29/75 女 2011/12/30 高中 57664.93 7 +河北 河北唐山 5011953782 11/4/63 女 2015/11/7 大专 57661 14 +苏州 苏州新区 870908932 11/2/63 女 2015/9/11 高中 57654 8 +安徽 安徽蚌埠 91667322 7/14/60 女 2006/7/1 大专 57652.38 11 +黑龙江 黑龙江齐齐哈尔 5159386512 3/20/74 女 2016/6/2 大专 57628 7 +四川 四川青羊 5124849042 12/21/80 女 2016/4/19 本科 57610 9 +河南 河南南阳 252785022 2/28/75 女 2008/9/23 中专 57608.11 6 +广东 广东惠州 241164142 9/3/81 男 2008/7/21 高中 57593 7 +山东 山东济南 490897132 2/12/76 女 2012/12/18 本科 57588.39 10 +苏州 苏州昆山 5189689492 3/21/70 女 2016/7/19 中专 57587 10 +浙江 浙江温州 455731212 3/30/82 女 2012/3/9 本科 57579.3 8 +山东 山东淄博 475884322 12/30/68 男 2012/8/27 高中 57569.72 10 +新疆 新疆石河子 478486572 6/21/75 女 2012/9/21 高中 57531.16 4 +四川 四川高新 776215442 10/18/88 女 2015/6/29 本科 57525.71 13 +山东 山东临沂 516837442 11/28/73 女 2013/4/24 初中 57519.4 7 +青岛 青岛即墨 467406382 10/19/67 女 2012/6/7 中专 57466.36 9 +江西 江西南昌 751283372 1/29/83 女 2015/4/30 大专 57448 6 +辽宁 辽宁营口 283561652 6/21/70 女 2009/3/10 中专 57442.4 14 +北京 北京良乡 455611322 8/4/80 女 2012/3/9 大专 57402.09 0 +北京 北京东城 167663402 3/15/82 男 2007/10/1 本科 57396.75 4 +山东 山东济宁 492898262 3/20/73 男 2012/12/22 本科 57360 4 +云南 云南昆明 384925952 4/14/70 女 2010/6/30 高中 57358.59 1 +青岛 青岛一支 357071602 4/19/65 女 2010/1/12 大专 57358.48 4 +安徽 安徽滁州 5192382852 3/21/69 男 2016/7/26 高中 57348.5 8 +湖南 湖南衡阳 5060799132 12/5/75 女 2016/1/13 高中 57339.7 15 +江西 江西赣州 5019261392 1/8/76 男 2015/11/15 大专 57330 3 +重庆 重庆渝中 607965522 6/22/74 女 2014/1/27 大专 57329.54 5 +四川 四川青羊 5196384292 6/13/86 女 2016/7/29 大专 57314 15 +四川 四川成都 5217352632 11/20/78 女 2016/8/16 高中 57313 11 +湖北 湖北宜昌 38752772 7/22/68 女 2005/4/15 大专 57308.73 2 +山东 山东临沂 55796442 2/8/66 女 2005/8/25 高中 57274 9 +湖北 湖北荆州 620071402 5/13/78 女 2014/3/29 高中 57272 15 +苏州 苏州常熟 872928212 1/27/66 女 2015/9/17 高中 57259.11 3 +福建 福建厦门 601969942 8/31/81 女 2013/12/31 大专 57257.08 17 +新疆 新疆库尔勒 374722532 12/25/66 女 2010/5/12 大专 57249.16 4 +四川 四川青羊 5106084562 12/17/75 女 2016/3/23 大专 57241 6 +四川 四川宜宾 232128762 11/14/69 女 2008/6/19 中技 57231.05 4 +黑龙江 黑龙江齐齐哈尔 676285622 11/26/62 女 2014/10/9 高中 57220.7 6 +湖北 湖北武汉 282142522 6/3/75 女 2009/3/3 本科 57217.66 7 +四川 四川高新 521068872 5/11/72 女 2013/5/20 高中 57217.5 11 +山西 山西阳泉 680943022 6/14/72 女 2014/11/10 高中 57217 9 +黑龙江 黑龙江绥化 385645292 6/26/72 女 2010/7/8 本科 57207.66 15 +吉林 吉林长春 5124677752 12/23/62 女 2016/4/19 中专 57200 1 +山西 山西太原 466303512 8/10/79 女 2012/5/29 大专 57194.17 3 +山东 山东威海 181987302 4/16/73 女 2007/11/22 高中 57192.62 8 +重庆 重庆江津 5091430292 1/18/75 女 2016/3/14 高中 57180 12 +四川 四川高新 817427462 2/14/82 男 2015/7/31 大专 57177 10 +湖南 湖南益阳 540540612 4/11/79 女 2013/6/19 高中 57158.07 8 +佛山 佛山顺德龙江 508707862 5/23/88 女 2013/3/22 大专 57156.07 12 +湖北 湖北荆州 404358752 2/28/74 男 2010/11/15 大专 57149.5 12 +青岛 青岛开发区 366968672 4/21/76 女 2010/3/25 高中 57147.41 8 +湖北 湖北襄阳 5211341332 11/20/74 男 2016/8/9 高中 57129.5 12 +河南 河南周口 5211849942 4/1/69 女 2016/8/10 大专 57125 7 +山东 山东济南 10701352 11/5/72 女 2004/3/1 大专 57104.96 11 +山东 山东济南 71246102 4/26/66 女 2005/12/29 大专 57096.3 9 +佛山 佛山顺德龙江 5079638942 11/19/72 女 2016/3/7 高中 57083.5 7 +黑龙江 黑龙江哈尔滨 489763832 12/16/78 女 2012/12/13 高中 57081.73 14 +辽宁 辽宁沈阳 496357462 10/6/75 女 2012/12/30 大专 57078.74 6 +广东 广东广州 529426922 8/25/63 女 2013/6/7 中专 57072.67 4 +山东 山东济宁 536352862 8/23/83 女 2013/6/15 大专 57067.9 24 +云南 云南昆明 148194732 6/18/78 女 2007/7/1 本科 57060.99 8 +山东 山东济南 8183122 9/22/69 女 2003/3/1 中专 57056.29 10 +河南 河南驻马店 798314692 11/18/74 男 2015/7/22 高中 57053.5 6 +青岛 青岛一支 5214259502 10/28/80 女 2016/8/12 大专 57053 13 +吉林 吉林延边 602520542 3/5/73 女 2013/12/31 高中 57002.62 8 +青岛 青岛城阳 740324742 2/9/92 男 2015/4/10 大专 56994 12 +浙江 浙江嘉兴 636195592 1/25/82 女 2014/6/13 本科 56987 8 +山东 山东济南 365818352 5/27/78 女 2010/3/24 大专 56971.65 9 +浙江 浙江金华 5120403382 11/17/82 女 2016/4/12 高中 56951 12 +浙江 浙江金华 276583792 5/8/64 女 2009/1/9 高中 56948.96 3 +四川 四川青羊 134477122 9/3/78 女 2007/5/9 大专 56944.6 2 +贵州 贵州贵阳 5126569702 4/10/80 女 2016/4/22 大专 56934.4 9 +浙江 浙江温州 615965302 7/13/89 女 2014/3/20 高中 56931.68 7 +福建 福建福州 5199789262 4/1/84 女 2016/8/1 高中 56931.5 9 +云南 云南昆明 265182872 6/30/70 女 2008/11/24 本科 56931.46 2 +青岛 青岛一支 5154384192 8/12/71 女 2016/5/31 大专 56926 15 +江苏 江苏泰州 864996402 12/25/78 女 2015/8/31 大专 56860 4 +湖南 湖南长沙 537510722 11/25/75 女 2013/6/17 本科 56838.81 9 +四川 四川乐山 827526072 10/3/75 女 2015/8/4 本科 56810 2 +宁波 宁波慈溪 101966072 2/8/59 女 2006/10/25 高中 56807.58 5 +湖北 湖北武汉 20876442 1/19/76 男 2004/10/16 中专 56800.14 11 +广东 广东广州 695343402 8/11/76 女 2014/12/22 本科 56791.3 6 +四川 四川高新 5192494322 2/7/90 女 2016/7/26 大专 56790.1 11 +北京 北京良乡 5207094172 9/19/75 女 2016/8/6 大专 56786.5 12 +山东 山东威海 430642682 11/10/82 女 2011/7/15 中专 56775.14 11 +浙江 浙江杭州 814722072 6/30/95 女 2015/7/30 高中 56775 5 +湖北 湖北武汉 158649242 7/21/82 男 2007/8/22 大专 56768.42 6 +苏州 苏州昆山 5106187932 9/10/84 女 2016/3/23 大专 56767.5 9 +四川 四川绵阳 5197350692 8/1/85 女 2016/7/30 高中 56761.8 11 +浙江 浙江杭州 5199126602 3/20/77 女 2016/8/1 中专 56745.5 13 +山东 山东济南 5123666972 7/29/84 女 2016/4/18 大专 56744 14 +北京 北京海淀 806687122 2/27/84 女 2015/7/27 大专 56743.5 9 +山东 山东济南 709573372 11/3/72 女 2015/2/15 大专 56739.7 13 +重庆 重庆江津 5034783192 2/12/73 女 2015/11/28 高中 56721 2 +广东 广东中山 123198462 11/30/83 女 2007/3/19 高中 56720.55 2 +天津 天津滨海新区 862317942 4/2/80 男 2015/8/21 本科 56694.4 2 +佛山 佛山顺德龙江 519783312 11/12/84 女 2013/5/10 高中 56672.04 11 +新疆 新疆哈密 5165766772 2/14/84 女 2016/6/8 中专 56670 8 +四川 四川南充 688198202 4/23/88 女 2014/12/1 本科 56665.2 11 +辽宁 辽宁沈阳 5188834632 11/18/76 女 2016/7/14 大专 56661 1 +江西 江西上饶 5190232512 3/11/69 男 2016/7/20 本科 56656.5 10 +辽宁 辽宁朝阳 442732512 6/5/61 女 2011/10/26 大专 56653.19 6 +浙江 浙江杭州 375318212 11/14/87 女 2010/5/17 本科 56652.6 0 +山东 山东烟台 202230572 5/28/72 女 2008/1/25 大专 56650.73 5 +黑龙江 黑龙江绥化 5042630222 2/21/86 男 2015/12/7 大专 56641 2 +辽宁 辽宁锦州 43041292 10/25/63 男 2005/5/16 大专 56633.23 14 +山东 山东东营 497652932 11/7/70 男 2012/12/31 大专 56628.91 0 +安徽 安徽滁州 5178247092 2/28/72 女 2016/6/21 高中 56620 3 +贵州 贵州贵阳 5089210162 7/11/84 女 2016/3/11 大专 56616 3 +浙江 浙江嘉兴 82054412 2/13/72 女 2006/4/19 高中 56612.92 4 +湖北 湖北武汉 457924942 8/3/68 女 2012/3/21 大专 56605.7 10 +大连 大连明锐 5126194372 4/28/73 男 2016/4/22 大专 56579 6 +广东 广东广州 677675722 6/20/75 女 2014/10/21 大专 56574 8 +重庆 重庆渝中 5154272722 9/13/79 女 2016/5/31 大专 56565 16 +山东 山东东营 514422352 3/17/85 女 2013/4/8 大专 56555.02 7 +湖北 湖北武汉 336840612 9/21/64 女 2009/10/16 高中 56551.94 5 +苏州 苏州姑苏 454409082 6/21/82 女 2012/3/5 高中 56545.81 6 +湖北 湖北黄石 5139158862 12/15/80 女 2016/5/14 高中 56543.5 6 +四川 四川青羊 214779442 10/14/85 女 2008/4/7 大专 56541.5 9 +上海 上海陆家嘴 147838832 1/4/60 女 2007/7/4 高中 56539.52 5 +北京 北京东城 320085572 8/9/88 男 2009/8/1 高中 56535.17 5 +湖北 湖北恩施 763026512 6/14/69 男 2015/6/10 高中 56534 3 +湖南 湖南娄底 750906952 5/5/73 女 2015/4/30 高中 56519.3 4 +宁波 宁波宁海 43299492 1/15/75 女 2005/5/17 中专 56500.71 6 +山东 山东临沂 780100882 6/28/85 女 2015/6/30 高中 56498.6 23 +天津 天津市区二支 423523442 3/17/68 女 2011/5/9 高中 56491.35 9 +北京 北京海淀 473760232 10/10/89 女 2012/8/7 本科 56487 7 +四川 四川高新 192273072 5/18/65 男 2007/12/21 本科 56465.99 8 +吉林 吉林四平 440195162 7/18/67 女 2011/9/26 中专 56461.4 7 +浙江 浙江杭州 5145278932 11/19/76 女 2016/5/24 中专 56452.2 7 +湖南 湖南益阳 5146028622 8/17/77 女 2016/5/25 高中 56442.2 6 +北京 北京海淀 248572982 9/18/88 男 2008/9/1 大专 56425.3 5 +河北 河北石家庄 584857332 5/9/82 女 2013/11/19 本科 56421.6 16 +辽宁 辽宁沈阳 754629522 4/10/66 女 2015/5/18 大专 56420 1 +河南 河南三门峡 522035802 7/24/66 男 2013/5/23 大专 56415 3 +江西 江西南昌 5177592602 12/3/68 女 2016/6/21 高中 56399.5 7 +北京 北京海淀 544225912 12/1/88 女 2013/6/30 大专 56391.37 6 +河南 河南郑州 5208510192 4/19/83 女 2016/8/8 本科 56391 16 +苏州 苏州新区 5171273062 3/4/70 女 2016/6/15 高中 56375.88 2 +江苏 江苏泰州 486688862 8/24/58 女 2012/11/30 大专 56374.88 8 +广东 广东广州 8333712 11/10/84 女 2003/10/10 中专 56373.33 13 +四川 四川青羊 192788772 2/12/73 女 2007/12/24 大专 56372.94 11 +四川 四川青羊 818085942 1/8/86 女 2015/7/31 本科 56362.67 2 +新疆 新疆昌吉 474547812 5/22/63 女 2012/8/14 大专 56355.16 20 +四川 四川内江 5123675072 8/28/71 男 2016/4/18 高中 56350 1 +浙江 浙江温州 5177646052 8/1/77 女 2016/6/21 高中 56330 12 +浙江 浙江金华 568912762 8/3/76 女 2013/7/4 高中 56320.68 0 +北京 北京海淀 5143058802 4/18/66 女 2016/5/20 本科 56318 3 +湖北 湖北武汉 241261142 10/1/69 女 2008/7/21 中专 56307.88 9 +辽宁 辽宁沈阳 477510432 3/14/53 女 2012/9/7 高中 56261.22 0 +江西 江西赣州 582570642 9/24/70 男 2013/10/31 高中 56230.5 1 +河南 河南郑州 202006842 11/30/76 女 2008/1/24 大专 56227.18 9 +浙江 浙江金华 5189023162 9/25/82 女 2016/7/15 高中 56226.8 12 +深圳 深圳福田第二 49332612 12/30/71 女 2005/6/29 大专 56226.02 6 +山东 山东滨州 277265862 8/27/67 男 2009/1/1 中专 56224.48 1 +广东 广东广州 5048359592 2/2/78 女 2015/12/18 高中 56219.5 15 +山东 山东烟台 366906842 11/28/78 女 2010/3/25 中专 56210.5 5 +山东 山东威海 453425402 10/11/82 女 2012/2/28 中专 56208 12 +云南 云南昆明 5075614792 6/11/71 女 2016/3/4 高中 56200 16 +湖北 湖北荆州 486476442 3/8/72 女 2012/11/29 大专 56194.72 14 +广东 广东珠海 5047649782 1/26/76 女 2015/12/17 大专 56176.4 9 +四川 四川青羊 464380262 11/10/73 女 2012/5/11 大专 56167.38 3 +陕西 陕西西安 5019140852 8/25/79 女 2015/11/15 本科 56166 6 +黑龙江 黑龙江齐齐哈尔 764835042 3/21/66 女 2015/6/15 高中 56161 2 +四川 四川高新 5031756252 7/5/84 男 2015/11/26 本科 56158 10 +湖北 湖北黄冈 5193960192 5/13/79 女 2016/7/27 高中 56150.5 10 +山东 山东日照 451820782 1/16/62 女 2012/1/20 高中 56136.18 8 +黑龙江 黑龙江齐齐哈尔 176200102 2/16/64 女 2007/11/5 高中 56135.97 3 +四川 四川青羊 666882762 11/22/78 女 2014/9/4 大专 56119.05 8 +黑龙江 黑龙江佳木斯 617311022 8/28/87 女 2014/3/24 高中 56114.76 6 +上海 上海陆家嘴 10093392 10/17/60 女 2004/2/23 大专 56112.89 1 +浙江 浙江湖州 28228622 9/13/69 女 2005/1/5 高中 56106.76 2 +深圳 深圳福田第二 657346062 11/6/78 女 2014/8/17 大专 56091.13 6 +四川 四川内江 738488582 2/18/82 女 2015/4/9 本科 56090.2 10 +云南 云南玉溪 325650442 10/2/72 女 2009/8/24 高中 56087.26 5 +上海 上海黄浦 585030812 8/31/69 女 2013/11/19 大专 56083.17 6 +大连 大连开发区 179658602 9/14/70 男 2007/11/14 大专 56082.78 1 +山东 山东烟台 5047921742 11/1/73 男 2015/12/18 本科 56081 5 +北京 北京东城 346912 5/16/48 女 2002/1/18 中专 56069.1 9 +湖南 湖南长沙 5217666272 7/24/68 男 2016/8/17 大专 56058.1 14 +青岛 青岛一支 705498672 7/21/64 女 2015/1/22 大专 56036.5 8 +苏州 苏州张家港 5226408042 11/21/65 女 2016/8/30 高中 56033.4 6 +江苏 江苏南京 9399042 8/19/75 女 2003/12/16 大专 56033.02 3 +甘肃 甘肃张掖 665857772 6/26/77 男 2014/9/1 大专 56026.1 0 +甘肃 甘肃酒泉 608978232 6/7/63 男 2014/2/9 大专 56011.59 0 +河南 河南周口 5165523822 8/19/78 女 2016/6/8 大专 56004 6 +湖南 湖南岳阳 5043470612 5/5/69 女 2015/12/9 高中 56001 9 +北京 北京海淀 702465712 11/7/90 女 2015/1/5 高中 56000 0 +天津 天津武清 425924852 4/28/82 女 2011/6/3 高中 56000 0 +天津 天津市区一支 5144661552 4/20/82 女 2016/5/24 大专 56000 0 +湖南 湖南岳阳 687595682 10/19/90 男 2014/11/27 本科 56000 0 +北京 北京良乡 792732102 10/25/72 女 2015/7/17 大专 56000 0 +青岛 青岛开发区 356830152 9/2/67 女 2010/1/11 高中 55999.68 6 +广东 广东广州 664056782 5/22/77 女 2014/8/29 大专 55998.21 13 +山东 山东枣庄 5200052152 9/3/80 女 2016/8/1 中专 55994.5 9 +北京 北京海淀 5086879462 8/25/90 男 2016/3/10 大专 55992 4 +辽宁 辽宁沈阳 5166508292 3/31/89 男 2016/6/8 大专 55977 2 +安徽 安徽滁州 5132212942 9/4/71 女 2016/5/3 大专 55973 7 +江西 江西南昌 433093642 10/22/82 女 2011/8/8 中专 55969.72 10 +贵州 贵州遵义 308558622 9/2/64 女 2009/6/26 大专 55965.17 2 +湖南 湖南株洲 5198302552 12/24/77 女 2016/8/1 高中 55946.6 12 +北京 北京海淀 127793332 6/1/81 男 2007/4/1 本科 55941.11 6 +浙江 浙江温州 126291852 1/22/79 女 2007/3/25 大专 55935.93 6 +重庆 重庆渝中 734618492 12/15/78 女 2015/4/3 本科 55926 16 +陕西 陕西西安 5177842822 5/8/70 女 2016/6/21 高中 55926 13 +河北 河北保定 161820512 10/1/68 女 2007/9/6 高中 55921.73 7 +四川 四川青羊 477460882 10/19/87 女 2012/9/7 本科 55917.2 13 +四川 四川高新 5216887572 3/24/81 女 2016/8/16 本科 55910.8 16 +山东 山东潍坊 284565152 4/20/76 女 2009/3/13 高中 55890.73 16 +河北 河北保定 498529702 5/20/85 女 2013/1/5 大专 55879.55 3 +北京 北京海淀 425758212 9/30/87 男 2011/6/1 大专 55879 7 +湖北 湖北黄冈 5143898222 2/6/89 女 2016/5/21 高中 55858 17 +福建 福建泉州 570051502 1/20/84 男 2013/7/22 大专 55854.06 7 +四川 四川成都 5048193702 6/4/77 女 2015/12/18 大专 55853.6 9 +广东 广东湛江 271798692 11/30/66 女 2008/12/24 高中 55851.25 11 +江苏 江苏南京 539417922 6/27/85 女 2013/6/18 大专 55848 5 +湖北 湖北十堰 294339262 12/1/73 女 2009/4/23 高中 55847.21 12 +苏州 苏州新区 870847802 9/15/80 女 2015/9/11 大专 55834 7 +福建 福建福州 517028372 10/7/71 男 2013/4/25 高中 55829.23 10 +苏州 苏州姑苏 5172672812 12/23/78 女 2016/6/15 中专 55826 4 +湖北 湖北襄阳 58276432 7/28/64 女 2005/9/13 高中 55825.12 11 +云南 云南大理 586928802 10/8/79 女 2013/11/28 中专 55822.14 7 +北京 北京海淀 473099652 11/3/89 男 2012/8/1 本科 55822.11 4 +山东 山东潍坊 541845022 12/24/74 男 2013/6/20 中专 55815.39 8 +佛山 佛山禅城 883069802 5/15/85 女 2015/10/10 高中 55811 4 +山东 山东烟台 335848422 4/8/74 女 2009/10/9 高中 55808.13 7 +苏州 苏州太仓 255988392 6/29/70 女 2008/10/9 高中 55787.54 4 +广东 广东广州 2314272 9/4/68 女 2002/12/9 大专 55784.71 9 +广西 广西柳州 746761912 9/10/74 男 2015/4/17 中专 55775.59 11 +苏州 苏州常熟 5086707202 9/11/81 女 2016/3/10 大专 55765 2 +四川 四川高新 189502082 11/19/84 女 2007/12/12 大专 55762.6 29 +山东 山东淄博 5228247442 2/18/87 女 2016/9/1 本科 55759 2 +辽宁 辽宁营口 5188897152 2/13/72 女 2016/7/15 本科 55748 8 +安徽 安徽马鞍山 150197262 8/21/72 男 2007/7/1 高中 55745.73 2 +广东 广东肇庆 534296742 8/4/69 女 2013/6/14 中专 55715.07 6 +山东 山东济南 569136492 3/12/80 女 2013/7/10 大专 55691.3 7 +广东 广东广州 5046275442 2/5/80 女 2015/12/14 本科 55685 2 +苏州 苏州昆山 95931552 9/9/76 女 2006/9/4 高中 55679.5 8 +四川 四川青羊 5188396782 6/9/94 女 2016/7/12 本科 55670.4 6 +北京 北京海淀 661689842 5/30/83 男 2014/8/25 本科 55662.5 5 +江苏 江苏南通 395223032 12/30/64 女 2010/9/13 高中 55652.63 4 +大连 大连开发区 273467512 3/25/69 女 2009/1/1 高中 55645.98 9 +安徽 安徽滁州 781718482 2/23/95 男 2015/7/3 高中 55641.46 3 +江苏 江苏无锡 5190835352 1/17/82 女 2016/7/22 高中 55636.5 9 +山东 山东烟台 602783212 6/20/70 女 2013/12/31 中专 55631.32 7 +广东 广东清远 755317732 7/7/70 女 2015/5/20 大专 55630.1 2 +山东 山东济宁 378142792 2/11/72 男 2010/5/31 大专 55619.42 4 +黑龙江 黑龙江大庆 48756752 7/6/73 女 2005/6/3 大专 55615.22 6 +四川 四川高新 718516492 1/23/83 女 2015/3/24 大专 55611.5 2 +黑龙江 黑龙江牡丹江 5162329122 3/26/83 女 2016/6/6 高中 55610 3 +云南 云南昆明 387874892 8/10/57 女 2010/7/26 大专 55591.3 9 +湖北 湖北十堰 5141661822 10/30/74 女 2016/5/18 高中 55588 8 +青岛 青岛城阳 5111698792 5/15/87 女 2016/3/25 大专 55580 3 +云南 云南昆明 622666812 11/27/75 女 2014/4/9 中专 55578.72 3 +广西 广西梧州 350657322 8/27/70 女 2009/12/20 大专 55573.87 7 +河北 河北保定 5196175822 4/2/63 男 2016/7/29 高中 55566.1 13 +江西 江西赣州 214040982 3/21/73 女 2008/4/1 大专 55561.11 2 +佛山 佛山顺德龙江 85324082 1/29/66 女 2006/5/24 高中 55556.01 12 +大连 大连海川 645651072 7/22/80 女 2014/7/8 大专 55552.64 7 +山东 山东淄博 505161572 6/19/77 女 2013/3/2 初中 55535 8 +浙江 浙江温州 477838972 11/21/85 女 2012/9/12 高中 55530.7 11 +四川 四川乐山 841148082 1/9/83 女 2015/8/9 大专 55527.33 3 +天津 天津市区二支 827813302 4/18/80 女 2015/8/4 大专 55520.59 0 +陕西 陕西西安 279678582 6/14/60 男 2009/2/18 大专 55515.68 2 +广东 广东广州 489265852 8/2/79 女 2012/12/11 大专 55509.35 7 +四川 四川内江 233735752 10/5/67 男 2008/6/24 大专 55507.46 8 +苏州 苏州昆山 870683532 2/10/82 女 2015/9/11 大专 55506 9 +河南 河南平顶山 5208039732 10/20/66 男 2016/8/7 高中 55501 16 +湖北 湖北武汉 511326862 10/22/76 男 2013/3/27 中专 55499.14 10 +江苏 江苏南京 5191889682 8/27/85 女 2016/7/25 大专 55486.5 13 +苏州 苏州姑苏 550007672 6/28/88 女 2013/6/25 大专 55486.1 5 +湖北 湖北武汉 625056642 12/8/85 女 2014/4/25 大专 55484 14 +青岛 青岛一支 5087951932 10/15/69 女 2016/3/11 本科 55479 10 +江西 江西南昌 94187922 10/2/71 女 2006/8/22 大专 55476.91 6 +吉林 吉林延边 339562752 4/27/68 女 2009/10/30 大专 55475.83 12 +四川 四川高新 790113102 12/1/85 女 2015/7/15 本科 55472.65 13 +浙江 浙江温州 5156241732 8/29/75 女 2016/5/31 大专 55470 9 +重庆 重庆永川 5126698412 5/23/72 女 2016/4/22 大专 55465.9 16 +江苏 江苏盐城 19826192 11/26/59 女 2004/9/28 高中 55460.16 7 +四川 四川高新 783790652 12/15/76 女 2015/7/8 大专 55456 9 +青岛 青岛一支 5212268752 10/20/84 女 2016/8/10 大专 55430.1 12 +四川 四川青羊 15242902 5/11/73 女 2004/6/29 大专 55428.9 4 +江西 江西南昌 21067372 10/16/73 男 2004/10/18 大专 55417.25 4 +云南 云南昆明 646541792 7/2/79 女 2014/7/18 大专 55411.9 1 +山西 山西太原 155600232 7/5/77 女 2007/8/1 大专 55404.43 4 +天津 天津市区一支 870716332 11/4/87 女 2015/9/11 大专 55404 3 +苏州 苏州昆山 5223787242 10/19/81 女 2016/8/25 高中 55396.5 9 +山东 山东济南 626711782 3/18/78 女 2014/5/4 本科 55395 11 +湖南 湖南湘潭 442032022 12/10/68 女 2011/10/11 高中 55388.63 7 +湖北 湖北随州 515331222 8/24/76 女 2013/4/16 中专 55381 6 +山东 山东烟台 5218006222 2/24/83 女 2016/8/17 大专 55376 12 +四川 四川高新 5038332312 10/8/83 女 2015/11/30 大专 55371 8 +北京 北京东城 22446862 12/10/75 男 2004/11/9 大专 55366.96 8 +辽宁 辽宁葫芦岛 5202311262 4/3/75 女 2016/8/2 大专 55360.3 11 +四川 四川高新 620176912 11/28/85 女 2014/3/29 大专 55359.05 8 +云南 云南昆明 372408212 11/12/76 女 2010/5/1 大专 55345.2 3 +湖北 湖北武汉 572547542 9/26/69 男 2013/8/7 中专 55343.48 8 +四川 四川青羊 67783132 3/11/74 女 2005/11/30 大专 55337.85 8 +山东 山东日照 5172776112 1/20/82 女 2016/6/15 中专 55324.5 15 +上海 上海陆家嘴 615390142 4/18/85 女 2014/3/19 硕士 55316.5 5 +四川 四川雅安 5143598152 5/23/92 男 2016/5/20 大专 55309 2 +江苏 江苏南京 5147471852 9/9/82 女 2016/5/26 本科 55293 9 +四川 四川高新 738446572 1/21/67 女 2015/4/9 中专 55280 28 +山东 山东烟台 531340962 11/13/76 女 2013/6/9 高中 55278.68 1 +浙江 浙江金华 668907482 12/24/92 女 2014/9/15 高中 55264.95 7 +河南 河南濮阳 5026147492 6/18/74 女 2015/11/21 中专 55262 2 +苏州 苏州昆山 759429972 3/29/80 女 2015/6/1 大专 55240 5 +苏州 苏州新区 498309742 2/2/76 女 2013/1/4 大专 55199.5 4 +山东 山东烟台 5037409462 12/29/86 男 2015/11/30 本科 55196.5 3 +山东 山东淄博 100437932 10/28/67 女 2006/10/9 中专 55190.36 10 +湖北 湖北武汉 422827692 8/12/81 女 2011/5/1 硕士 55178.9 11 +江苏 江苏泰州 525158922 4/10/66 女 2013/5/30 高中 55168 5 +黑龙江 黑龙江佳木斯 131408292 5/8/70 女 2007/4/23 大专 55166.84 16 +山东 山东烟台 13163892 7/26/57 女 2004/5/1 本科 55166.23 11 +福建 福建泉州 187569892 5/1/82 男 2007/12/5 高中 55159.34 5 +湖北 湖北武汉 738785722 2/22/82 女 2015/4/9 本科 55147.2 14 +浙江 浙江杭州 290147742 9/12/80 女 2009/4/1 本科 55145.63 6 +江苏 江苏盐城 586881352 7/21/75 女 2013/11/28 高中 55143.6 16 +四川 四川绵阳 708840082 12/31/85 女 2015/2/10 本科 55129.63 12 +山东 山东菏泽 5195395252 6/5/76 女 2016/7/28 高中 55111.1 20 +山东 山东烟台 196467932 5/14/79 女 2008/1/1 中专 55106.42 11 +湖北 湖北武汉 5120188542 12/14/81 女 2016/4/12 本科 55090 19 +安徽 铜陵 222571542 8/30/63 女 2008/5/1 高中 55087.7 4 +江西 江西新余 300832122 4/25/73 女 2009/5/19 高中 55086.34 7 +四川 四川高新 866061032 8/26/86 女 2015/9/2 大专 55081.5 13 +山东 山东菏泽 5217190342 8/16/73 女 2016/8/16 高中 55080 9 +四川 四川青羊 104231542 5/21/75 女 2006/11/22 高中 55078.17 4 +天津 天津蓟州 122701182 8/5/72 女 2007/3/14 高中 55070 7 +四川 四川宜宾 811409692 5/18/81 女 2015/7/29 高中 55053.3 6 +山东 山东济宁 704511922 3/5/78 男 2015/1/16 高中 55052 7 +河北 河北唐山 5197447692 7/1/77 男 2016/7/30 中专 55051 9 +苏州 苏州新区 5169143632 9/26/82 女 2016/6/13 高中 55044.4 13 +河南 河南郑州 158020762 1/15/70 男 2007/8/17 本科 55035.42 1 +湖南 湖南郴州 338934972 10/14/63 女 2009/10/1 高中 55030.43 3 +浙江 浙江金华 825874972 3/11/74 女 2015/8/3 高中 55030 5 +黑龙江 黑龙江七台河 5136493612 9/28/64 女 2016/5/11 大专 55028.6 3 +湖北 湖北武汉 5182203252 2/24/72 男 2016/6/24 高中 55016.5 9 +天津 天津市区二支 800052182 12/3/82 男 2015/7/23 大专 55000 0 +深圳 深圳福田 641068482 1/31/91 女 2014/6/24 大专 55000 0 +北京 北京东城 610374472 6/19/83 男 2014/2/27 本科 55000 0 +陕西 陕西西安 5213767232 11/8/72 女 2016/8/11 本科 54996.5 8 +山东 山东淄博 5198644302 2/13/74 男 2016/8/1 大专 54996 10 +广东 广东惠州 557448342 4/16/81 女 2013/6/27 大专 54993.54 8 +青岛 青岛一支 376043962 1/21/78 女 2010/5/20 大专 54984.93 11 +四川 四川青羊 5113696812 3/4/79 女 2016/3/29 本科 54958.5 7 +安徽 安徽安庆 630953822 12/19/80 女 2014/5/25 高中 54951.32 11 +黑龙江 黑龙江哈尔滨 267481842 8/21/76 女 2008/12/1 中专 54949.9 12 +四川 四川雅安 189628112 3/11/65 男 2007/12/13 大专 54949.85 10 +新疆 新疆昌吉 5091517322 8/11/84 女 2016/3/14 大专 54943.1 8 +湖北 湖北襄阳 58056472 2/26/74 女 2005/9/12 高中 54931.6 8 +深圳 深圳福田第二 622050342 12/21/68 女 2014/4/3 大专 54921.2 10 +浙江 浙江金华 726388842 3/19/80 女 2015/3/25 高中 54893.79 5 +广东 广东惠州 17251572 4/22/71 女 2004/8/13 大专 54871.76 2 +福建 福建泉州 465064702 2/9/71 男 2012/5/18 中专 54857.77 8 +吉林 吉林通化 591047882 3/13/71 女 2013/12/13 本科 54854 9 +江苏 江苏连云港 5202687492 2/17/83 男 2016/8/2 高中 54843.5 11 +山东 山东滨州 443880462 5/12/72 男 2011/11/14 中专 54840.55 5 +四川 四川高新 526358792 4/3/82 女 2013/6/3 本科 54835.99 1 +湖南 湖南长沙 558027272 1/25/74 女 2013/6/27 高中 54823.01 4 +福建 福建福州 756134072 1/30/93 男 2015/5/22 本科 54818 2 +广西 广西梧州 548791752 1/5/68 女 2013/6/25 高中 54811 3 +苏州 苏州昆山 5028339512 1/24/74 女 2015/11/24 高中 54810 2 +四川 四川青羊 5175039792 2/22/86 女 2016/6/17 本科 54804 3 +深圳 深圳罗湖 864746712 6/6/82 女 2015/8/28 本科 54794.36 13 +江苏 江苏泰州 5173538542 11/11/74 男 2016/6/16 高中 54780 3 +青岛 青岛一支 627002782 11/8/79 女 2014/5/6 本科 54777.11 5 +四川 四川高新 104762 2/16/74 女 2001/12/30 大专 54772.74 7 +北京 北京海淀 571420112 7/5/89 男 2013/7/31 大专 54762 7 +北京 北京平谷 404084502 3/8/74 女 2010/11/12 高中 54742.1 7 +四川 四川高新 125647052 7/30/72 女 2007/3/23 大专 54705.65 12 +河南 河南郑州 495765552 8/14/75 女 2012/12/28 大专 54704.55 9 +福建 福建福州 157908412 1/9/77 女 2007/8/17 高中 54693.92 8 +河南 河南洛阳 5216854962 12/19/80 女 2016/8/16 大专 54689 11 +云南 云南昆明 149685602 6/12/76 女 2007/7/1 大专 54683.1 4 +广东 广东广州 2898642 8/8/67 女 2003/3/1 本科 54681.58 5 +重庆 重庆涪陵 5203389132 6/3/74 女 2016/8/3 大专 54676.5 19 +贵州 贵州贵阳 5081033152 6/30/79 男 2016/3/8 大专 54672 17 +苏州 苏州张家港 783871602 11/9/66 女 2015/7/8 本科 54664 14 +山西 山西忻州 730909602 10/21/85 女 2015/3/30 高中 54662 8 +山东 山东威海 532090032 2/26/73 女 2013/6/9 高中 54656.7 13 +四川 四川高新 668376702 9/7/85 女 2014/9/11 大专 54653.82 11 +河北 河北廊坊 81389092 12/11/63 男 2006/4/5 中专 54648.1 12 +福建 福建福州 5051083762 9/9/84 女 2015/12/23 大专 54640 8 +浙江 浙江嘉兴 676935592 2/28/84 女 2014/10/11 大专 54639.8 10 +山东 山东日照 834017532 7/11/75 男 2015/8/7 中专 54631 8 +佛山 佛山顺德龙江 5053502392 11/20/83 女 2015/12/28 大专 54625.5 9 +宁波 宁波城区 5091864542 12/20/79 女 2016/3/14 大专 54610 3 +山东 山东潍坊 385660642 11/12/68 男 2010/7/9 中专 54589.75 8 +辽宁 辽宁沈阳 416833512 6/9/77 女 2011/3/4 大专 54578 4 +青岛 青岛开发区 672350632 1/22/86 女 2014/9/24 本科 54573 11 +广西 广西玉林 579756942 10/4/65 女 2013/9/26 高中 54573 2 +山东 山东临沂 5205926572 7/27/76 女 2016/8/5 高中 54544.5 13 +上海 上海黄浦 863714882 3/16/80 女 2015/8/26 高中 54539 2 +贵州 贵州贵阳 5193773462 6/13/78 男 2016/7/27 中专 54534.8 11 +湖北 湖北荆州 403039692 1/28/72 女 2010/11/3 高中 54521 11 +河南 河南驻马店 177402342 12/25/73 女 2007/11/7 中专 54519.74 11 +山东 山东东营 802141102 8/20/85 女 2015/7/25 中专 54512.9 7 +北京 北京海淀 474910552 8/20/89 男 2012/8/16 本科 54510.5 5 +山西 山西朔州 5149914022 2/10/75 女 2016/5/27 高中 54508.5 16 +湖北 湖北十堰 5122803942 11/17/77 女 2016/4/16 中专 54507 8 +湖北 湖北十堰 5192771752 11/8/81 女 2016/7/26 高中 54503.5 13 +浙江 浙江湖州 5030752742 3/26/83 女 2015/11/25 本科 54500.6 3 +四川 四川高新 688555772 1/8/81 女 2014/12/3 大专 54499.8 13 +四川 四川绵阳 5173114262 11/12/82 女 2016/6/16 大专 54485 7 +北京 北京海淀 5081218082 7/20/91 男 2016/3/8 大专 54478.6 2 +大连 大连明锐 5162599282 4/7/80 女 2016/6/6 中专 54473 11 +河南 河南南阳 12613022 7/16/75 女 2004/4/15 大专 54472.5 7 +浙江 浙江杭州 813224362 8/21/66 男 2015/7/30 高中 54469.5 11 +江西 江西吉安 5152201242 1/9/86 女 2016/5/29 高中 54450 2 +河北 河北唐山 5195037162 1/14/85 女 2016/7/28 中专 54426 11 +黑龙江 黑龙江佳木斯 5126521652 8/30/73 女 2016/4/22 高中 54407 10 +黑龙江 黑龙江黑河 450841572 2/26/77 女 2012/1/5 中专 54397.22 2 +四川 四川青羊 5190385732 7/21/83 女 2016/7/20 本科 54394.5 13 +山东 山东济南 5225942 1/9/59 女 2003/7/1 中专 54388.86 0 +湖北 湖北黄石 363905982 12/17/69 女 2010/3/15 高中 54388.69 16 +山东 山东德州 581326392 6/30/76 女 2013/10/22 中专 54374.7 3 +深圳 深圳罗湖 5209074052 12/8/89 男 2016/8/8 本科 54371 11 +黑龙江 黑龙江佳木斯 523542722 11/22/75 女 2013/5/27 中专 54363.05 1 +福建 福建福州 669651382 6/23/72 女 2014/9/17 高中 54360.31 7 +北京 北京海淀 621650062 2/28/90 男 2014/4/1 高中 54360 10 +江苏 江苏南京 521129032 10/20/85 女 2013/5/20 中专 54347.3 11 +四川 四川绵阳 5185035292 10/8/73 女 2016/6/29 大专 54337 12 +辽宁 辽宁营口 5015164752 7/15/85 女 2015/11/10 本科 54335 8 +苏州 苏州新区 289187652 4/12/72 女 2009/3/25 本科 54329.82 10 +天津 天津市区一支 415006562 2/14/79 女 2011/1/27 本科 54310.97 5 +河北 河北承德 5198230962 9/28/69 女 2016/8/1 中专 54305.9 7 +河南 河南南阳 5015185592 3/12/69 女 2015/11/10 高中 54299 4 +广东 广东汕头 511686532 5/20/65 女 2013/3/28 初中 54286.03 6 +河北 河北石家庄 681000382 12/4/80 女 2014/11/10 大专 54278 6 +青岛 青岛一支 759071702 9/16/82 女 2015/5/30 本科 54274.5 2 +辽宁 辽宁营口 5143892822 2/15/77 女 2016/5/21 高中 54270 2 +重庆 重庆永川 5179381182 11/24/86 女 2016/6/21 大专 54264 7 +湖北 湖北武汉 432722392 10/5/80 女 2011/8/1 高中 54260.1 15 +湖北 湖北襄阳 5018178052 3/7/75 女 2015/11/13 高中 54254 14 +河北 河北廊坊 494869662 8/12/78 女 2012/12/25 本科 54240.64 4 +山东 山东临沂 861991772 5/1/63 男 2015/8/21 中专 54233 5 +河北 河北沧州 401766412 1/24/76 男 2010/10/25 高中 54223 10 +山东 山东济南 651570442 7/29/81 女 2014/8/5 高中 54211.1 11 +山东 山东济南 5169258772 7/4/81 女 2016/6/13 本科 54204.5 13 +黑龙江 黑龙江哈尔滨 19488712 7/12/64 女 2004/10/1 大专 54193.23 14 +四川 四川青羊 4628592 10/5/58 女 2003/6/11 高中 54180.82 0 +四川 四川青羊 5179862582 10/3/74 女 2016/6/22 高中 54177 14 +天津 天津市区二支 854273782 3/15/61 女 2015/8/10 高中 54176.5 5 +苏州 苏州新区 5145180062 10/14/78 男 2016/5/24 大专 54175 5 +四川 四川高新 5041592232 11/18/88 男 2015/12/4 硕士 54172.6 2 +四川 四川雅安 18505732 7/21/69 女 2004/9/1 本科 54161.6 10 +深圳 深圳福田 849444302 8/21/89 女 2015/8/10 本科 54156.1 2 +上海 上海陆家嘴 5213469932 9/15/82 女 2016/8/11 本科 54155.5 5 +四川 四川高新 837804302 8/31/75 男 2015/8/8 本科 54154.5 10 +江西 江西宜春 5002570122 1/16/85 女 2015/10/19 本科 54153 13 +四川 四川青羊 5193665592 9/14/87 女 2016/7/27 本科 54139 10 +陕西 陕西汉中 5156054032 10/20/71 女 2016/5/31 大专 54134 13 +湖北 湖北十堰 388899882 8/19/70 女 2010/8/1 大专 54130.27 12 +深圳 深圳南山 5184790542 9/24/82 女 2016/6/28 中专 54110 8 +黑龙江 黑龙江哈尔滨 223906652 7/21/64 女 2008/5/16 大专 54109.2 11 +深圳 深圳罗湖 5141693532 9/6/77 男 2016/5/18 本科 54106 5 +山东 山东日照 63860422 12/29/70 女 2005/10/31 高中 54105.16 9 +青岛 青岛一支 5209126672 3/28/63 女 2016/8/8 大专 54105 10 +山东 山东淄博 272962692 5/9/70 女 2008/12/25 大专 54074.86 5 +苏州 苏州昆山 5154307132 7/12/76 女 2016/5/31 大专 54064 4 +湖南 湖南永州 421507932 5/23/84 女 2011/4/16 高中 54061.91 10 +甘肃 甘肃兰州 793285072 10/13/78 女 2015/7/17 高中 54052.18 2 +苏州 苏州昆山 5204827862 6/10/83 女 2016/8/4 硕士 54048.5 16 +江西 江西南昌 93951912 2/13/64 女 2006/8/21 高中 54026.72 3 +天津 天津市区一支 834409302 1/2/83 女 2015/8/7 高中 54013.5 5 +山东 山东泰安 486560462 4/5/69 女 2012/11/30 大专 54013.26 0 +上海 上海陆家嘴 5066650912 12/11/80 男 2016/2/17 中技 54012.5 4 +青岛 青岛一支 740909812 5/23/76 女 2015/4/10 硕士 54010 10 +湖北 湖北武汉 5236946632 10/15/63 男 2016/9/20 本科 54010 4 +浙江 浙江杭州 5199474722 6/27/81 女 2016/8/1 本科 53990 14 +广西 广西柳州 604752242 12/7/80 女 2014/1/8 大专 53983.5 15 +四川 四川青羊 556328722 3/20/77 女 2013/6/27 高中 53968.95 9 +河北 河北石家庄 67378382 6/18/78 女 2005/11/29 中专 53967.25 1 +山东 山东滨州 5207030752 9/1/69 男 2016/8/5 中专 53966.7 11 +广东 广东东莞 5187729552 4/26/75 女 2016/7/7 大专 53949.4 10 +安徽 安徽合肥 5194842262 3/10/87 男 2016/7/28 高中 53946.5 8 +山西 山西朔州 5185889252 9/3/67 男 2016/6/30 高中 53932.1 6 +浙江 浙江金华 5198744972 3/10/74 男 2016/8/1 高中 53915.5 14 +山东 山东济南 685055262 2/15/81 女 2014/11/19 中专 53904 11 +河南 河南南阳 186924392 12/9/63 女 2007/12/4 大专 53891.27 11 +安徽 安徽合肥 99953632 10/29/75 女 2006/10/1 中专 53878.24 9 +安徽 安徽滁州 150305842 4/8/64 女 2007/7/1 高中 53870.73 8 +四川 四川青羊 5173414332 8/23/88 女 2016/6/16 高中 53868 10 +广东 广东广州 5177994172 10/5/80 女 2016/6/21 高中 53867.6 7 +辽宁 辽宁沈阳 646011712 1/5/75 男 2014/7/11 本科 53859 6 +浙江 浙江温州 5129824152 5/18/83 男 2016/4/28 大专 53857.8 10 +四川 四川青羊 478678202 6/20/89 女 2012/9/24 大专 53838.6 11 +山东 山东临沂 5183182322 7/18/75 男 2016/6/25 高中 53834.1 10 +佛山 佛山顺德龙江 90293272 5/22/76 女 2006/6/30 中专 53828.39 9 +山西 山西阳泉 327932662 5/17/79 女 2009/8/26 中专 53813.82 0 +云南 云南昆明 5117780782 12/4/77 男 2016/4/7 大专 53807 2 +黑龙江 黑龙江哈尔滨 287273612 8/11/73 女 2009/3/24 中专 53802.7 6 +苏州 苏州新区 5094944032 12/8/77 女 2016/3/15 中专 53796.5 4 +广东 广东惠州 225693962 12/25/78 女 2008/5/23 本科 53787.51 3 +黑龙江 黑龙江哈尔滨 5214256802 8/14/78 男 2016/8/12 本科 53773.6 16 +四川 四川乐山 5212482692 7/20/64 女 2016/8/10 高中 53761.5 9 +湖北 湖北武汉 439492572 7/30/79 女 2011/9/24 大专 53761.38 6 +河南 河南安阳 284234512 8/16/76 女 2009/3/11 高中 53747.99 5 +云南 云南昆明 466423402 10/28/79 女 2012/6/1 本科 53744.04 0 +广西 广西贵港 483309912 11/14/74 女 2012/11/16 大专 53729.74 13 +北京 北京良乡 221187582 7/18/81 女 2008/5/5 大专 53717.72 6 +四川 四川绵阳 54601042 12/8/74 女 2005/8/10 高中 53716.46 5 +青岛 青岛城阳 5221240802 8/4/70 女 2016/8/22 大专 53709 7 +山东 山东淄博 5040685722 8/6/94 女 2015/12/2 高中 53707 2 +山东 山东济南 5066951882 9/2/84 男 2016/2/19 大专 53700 2 +浙江 浙江温州 119327672 3/18/85 女 2007/2/6 大专 53698.78 5 +辽宁 辽宁营口 5137812632 7/19/75 女 2016/5/12 本科 53690 1 +辽宁 辽宁丹东 627933842 5/6/74 女 2014/5/12 中专 53675.44 7 +辽宁 辽宁营口 5012784132 5/8/79 女 2015/11/8 大专 53662.9 8 +广西 广西玉林 638690932 7/8/77 女 2014/6/19 中专 53660 13 +重庆 重庆永川 5063942112 3/22/76 女 2016/1/30 高中 53647 20 +福建 福建福州 616617642 10/23/77 女 2014/3/21 中专 53621.25 3 +四川 四川成都 5230106782 4/10/67 女 2016/9/5 高中 53620 5 +浙江 浙江衢州 650372942 1/4/65 女 2014/8/1 高中 53614.5 4 +佛山 佛山顺德龙江 417754662 2/18/82 女 2011/3/15 大专 53610.5 10 +浙江 浙江杭州 427626472 5/15/78 女 2011/6/21 高中 53609.69 6 +黑龙江 黑龙江哈尔滨 602157802 12/28/75 女 2013/12/31 大专 53601.69 12 +海南 海南海口 5187426782 6/23/71 女 2016/7/6 高中 53596.8 8 +天津 天津市区二支 119580432 12/30/61 男 2007/2/9 高中 53586.43 6 +广东 广东广州 691765982 9/7/82 男 2014/12/17 大专 53582.5 3 +山东 山东烟台 477288102 10/7/81 女 2012/9/5 初中 53581.8 9 +山东 山东烟台 225906112 10/13/64 女 2008/5/23 高中 53580.43 17 +云南 云南昆明 530241862 10/3/77 女 2013/6/8 大专 53580.25 9 +北京 北京海淀 444401332 6/23/89 女 2011/11/22 大专 53578.4 11 +河北 河北石家庄 815821172 5/17/60 女 2015/7/30 中专 53570 4 +四川 四川宜宾 394178222 8/22/75 女 2010/9/3 中专 53562 7 +河南 河南郑州 5161663762 2/21/66 女 2016/6/3 本科 53560 3 +深圳 深圳宝安 127624592 4/8/68 女 2007/4/1 大专 53544.8 2 +安徽 安徽滁州 5201279642 11/28/82 女 2016/8/2 高中 53538.8 9 +山西 山西晋中 647362872 10/1/67 男 2014/7/24 中专 53514.05 4 +河南 河南三门峡 5207132252 6/13/68 女 2016/8/6 高中 53508 6 +四川 四川绵阳 300385362 2/19/82 女 2009/5/18 本科 53503.27 6 +苏州 苏州姑苏 660101972 11/14/72 女 2014/8/22 高中 53498.42 5 +四川 四川绵阳 86499662 2/19/68 女 2006/6/5 大专 53497.36 4 +北京 北京海淀 589805032 9/25/89 女 2013/12/9 本科 53495.05 7 +湖北 湖北襄阳 106268542 5/18/66 女 2006/12/6 高中 53494.24 11 +四川 四川成都 70403802 7/2/71 女 2005/12/23 高中 53485.25 6 +云南 云南昆明 297223302 2/28/76 女 2009/5/5 本科 53477.34 3 +辽宁 辽宁葫芦岛 117479232 8/22/78 女 2007/1/25 高中 53468.67 6 +山东 山东济南 345347582 10/25/77 女 2009/11/25 大专 53459.88 8 +湖南 湖南长沙 139908422 12/25/75 女 2007/7/1 大专 53458.35 4 +黑龙江 黑龙江哈尔滨 5202153542 3/20/69 女 2016/8/2 大专 53454.5 18 +云南 云南红河 5048745792 7/17/88 男 2015/12/20 本科 53450.4 6 +湖南 湖南长沙 5113100272 6/1/75 男 2016/3/28 高中 53441.2 6 +辽宁 辽宁葫芦岛 46644942 4/4/65 女 2005/6/9 高中 53438.6 9 +新疆 新疆昌吉 818963412 5/8/73 女 2015/7/31 高中 53434.5 15 +浙江 浙江杭州 667648852 7/19/68 女 2014/9/9 高中 53424 6 +重庆 重庆巴南 261620532 7/6/69 男 2008/11/6 大专 53413.57 10 +河南 河南周口 37737692 1/19/70 女 2005/4/1 大专 53406 6 +四川 四川青羊 5017695822 9/4/84 男 2015/11/13 大专 53386 7 +大连 大连明锐 831758202 8/10/78 女 2015/8/6 大专 53383 5 +湖北 湖北随州 5216196802 9/23/69 男 2016/8/15 大专 53382.6 18 +湖北 湖北武汉 222599872 8/12/78 女 2008/5/10 大专 53378.34 14 +山东 山东烟台 500686592 10/19/68 女 2013/1/23 高中 53373.64 9 +湖北 湖北武汉 5149223252 7/23/77 女 2016/5/27 高中 53347.5 10 +江苏 江苏无锡 790538642 4/30/83 女 2015/7/15 高中 53345 8 +福建 福建泉州 5002277322 6/17/85 女 2015/10/17 高中 53339.7 12 +云南 云南昆明 5169539802 10/15/87 女 2016/6/13 本科 53334 10 +江苏 江苏无锡 481456032 11/28/83 女 2012/10/26 大专 53324.43 2 +佛山 佛山顺德龙江 875158512 3/16/87 女 2015/9/21 高中 53314.8 11 +四川 四川巴中 402966282 4/23/63 女 2010/11/2 大专 53312.9 9 +青岛 青岛即墨 148098432 7/28/69 女 2007/7/10 中专 53308.77 4 +大连 大连海川 5153319962 9/10/83 女 2016/5/30 中专 53300 4 +贵州 贵州贵阳 5149571372 6/24/69 女 2016/5/27 大专 53291 9 +深圳 深圳罗湖 5063085452 9/30/83 女 2016/1/26 本科 53286.5 9 +四川 四川青羊 71751892 7/29/70 女 2005/12/30 大专 53277.19 8 +陕西 陕西西安 501993372 5/17/77 女 2013/1/30 中专 53272.51 5 +苏州 苏州新区 5095087282 1/25/80 女 2016/3/15 大专 53269.5 7 +广东 广东广州 637343542 2/18/77 女 2014/6/16 大专 53266.98 9 +浙江 浙江温州 725092672 6/4/71 女 2015/3/25 高中 53263 5 +广西 广西南宁 5005439342 8/13/75 男 2015/10/26 本科 53259 8 +宁波 宁波城区 439165702 11/10/72 男 2011/9/23 大专 53249 6 +天津 天津市区二支 490889592 10/7/60 女 2012/12/18 大专 53243.23 4 +云南 云南昆明 835128912 4/25/91 男 2015/8/7 高中 53232.5 6 +河北 河北沧州 5190880702 10/21/81 男 2016/7/22 高中 53230 4 +深圳 深圳福田第二 5007294112 10/8/84 女 2015/10/30 大专 53229.5 10 +安徽 安徽合肥 30295352 6/27/54 女 2005/1/1 大专 53195.75 5 +黑龙江 黑龙江牡丹江 255264312 9/18/74 女 2008/10/6 高中 53187.5 11 +浙江 浙江金华 5220137522 10/29/73 女 2016/8/19 高中 53186 3 +大连 大连明锐 5151274792 11/14/84 男 2016/5/28 大专 53177.9 1 +吉林 吉林长春 157629692 8/3/49 女 2007/8/15 初中 53177.77 10 +黑龙江 黑龙江牡丹江 599815152 2/17/82 女 2013/12/28 大专 53164 1 +浙江 浙江金华 490397752 10/3/64 女 2012/12/17 高中 53163.5 6 +江西 江西上饶 248717162 4/23/71 女 2008/9/1 大专 53155.56 3 +湖北 湖北荆州 5070498232 10/4/82 女 2016/3/1 高中 53136 7 +江苏 江苏南京 21051322 6/4/61 女 2004/10/19 大专 53132.47 10 +河北 河北邢台 276066692 9/10/60 女 2009/1/6 高中 53118.62 9 +四川 四川乐山 15182472 4/4/69 女 2004/6/29 高中 53108.24 22 +河南 河南南阳 132815142 12/5/73 女 2007/4/25 高中 53085.65 9 +广东 广东广州 5160230502 2/18/75 女 2016/6/3 高中 53085.5 13 +江西 江西吉安 231701822 11/13/74 女 2008/6/18 本科 53084.18 3 +广东 广东东莞 500590292 11/19/85 女 2013/1/23 中专 53074.8 4 +河南 河南郑州 444385282 8/21/79 男 2011/11/22 大专 53070.05 7 +四川 四川乐山 291843222 9/7/69 女 2009/4/9 初中 53056.07 8 +甘肃 甘肃兰州 635948972 10/12/83 女 2014/6/12 大专 53055.05 4 +湖南 湖南娄底 749994042 4/26/68 女 2015/4/28 大专 53035 7 +湖北 湖北十堰 5064029142 3/5/72 女 2016/1/30 高中 53034.8 9 +广东 广东广州 5092237102 6/27/94 女 2016/3/14 大专 53025.5 4 +黑龙江 黑龙江大庆 220943062 9/2/70 女 2008/5/4 高中 53023.08 11 +江西 江西南昌 263167092 3/21/74 女 2008/11/14 大专 53022.84 6 +江西 江西景德镇 763900212 6/22/80 女 2015/6/12 中专 53022.74 7 +河北 河北石家庄 711128442 9/27/68 女 2015/3/5 大专 53019 7 +四川 四川青羊 679922 12/13/68 女 2002/3/1 高中 53016.2 5 +青岛 青岛开发区 664923642 8/6/85 女 2014/8/30 中专 53013.38 0 +陕西 陕西渭南 427935892 5/5/86 女 2011/6/23 本科 53013.23 8 +山西 山西忻州 661300172 10/22/84 女 2014/8/25 高中 53013.11 0 +浙江 浙江温州 648775862 2/20/79 女 2014/7/29 本科 53013.05 0 +苏州 苏州昆山 5092258912 9/10/80 女 2016/3/14 大专 53009.1 6 +山东 山东烟台 5080095832 3/3/69 女 2016/3/8 高中 53002 8 +广东 广东中山 664553092 11/29/69 男 2014/8/29 高中 53000 0 +山西 山西太原 298102442 2/10/72 女 2009/5/8 大专 52989.32 8 +苏州 苏州张家港 5188777512 4/9/80 男 2016/7/14 大专 52988.3 12 +吉林 吉林吉林 683677442 9/19/69 女 2014/11/18 大专 52986 8 +江西 江西南昌 5030182512 3/4/83 女 2015/11/25 高中 52950 8 +湖北 湖北武汉 852899732 11/3/79 男 2015/8/10 中专 52949 7 +福建 福建泉州 151680592 2/28/81 女 2007/7/23 高中 52940.39 7 +山东 山东滨州 648737622 5/6/83 男 2014/7/29 高中 52938.03 6 +宁波 宁波象山 593918942 3/11/89 女 2013/12/20 大专 52936.17 18 +山东 山东菏泽 345869152 1/9/68 女 2009/11/25 大专 52934.43 15 +江西 江西南昌 61636262 11/27/63 女 2005/9/1 高中 52930.56 10 +湖北 湖北随州 190422532 2/10/74 男 2007/12/10 高中 52926.52 4 +大连 大连明锐 636382752 10/29/90 男 2014/6/13 大专 52905 5 +四川 四川青羊 5173985462 12/20/78 女 2016/6/16 大专 52902.5 5 +湖北 湖北荆州 5127331162 7/4/82 女 2016/4/24 中专 52894 15 +河南 河南驻马店 206539882 5/6/63 女 2008/3/10 高中 52882.12 16 +陕西 陕西西安 604179452 12/20/68 女 2014/1/3 硕士 52861.92 4 +四川 四川青羊 378508602 11/20/76 女 2010/6/1 本科 52842.01 9 +北京 北京海淀 367947882 4/10/88 1:00 男 2010/4/1 高中 52838.1 8 +大连 大连海川 5573332 10/5/58 女 2003/7/1 高中 52804.79 2 +湖南 湖南永州 805544612 12/25/85 女 2015/7/27 高中 52804 4 +江西 江西吉安 5005203662 6/19/87 女 2015/10/25 高中 52800 3 +福建 福建福州 100139122 7/5/70 女 2006/10/8 高中 52793.56 12 +广西 广西南宁 5161941122 2/8/72 女 2016/6/4 高中 52786.5 6 +福建 福建福州 5180057482 4/12/78 女 2016/6/22 大专 52784 10 +山东 山东潍坊 207323422 3/2/67 女 2008/3/14 高中 52783.9 1 +佛山 佛山顺德龙江 512358692 12/17/84 女 2013/3/29 大专 52779.49 6 +大连 大连开发区 551302172 3/4/80 女 2013/6/25 高中 52777.98 6 +四川 四川内江 5041758122 12/10/69 女 2015/12/4 高中 52774.88 13 +四川 四川高新 5230505652 8/12/79 女 2016/9/6 大专 52774 7 +重庆 重庆渝中 5152844932 4/28/87 女 2016/5/30 大专 52768.3 13 +深圳 深圳福田 595083642 10/15/75 男 2013/12/23 大专 52767.47 4 +江西 江西赣州 770296072 1/6/81 女 2015/6/24 高中 52762.5 8 +山东 山东烟台 776731842 1/3/83 女 2015/6/29 大专 52740 1 +福建 福建泉州 238889732 9/3/76 男 2008/7/1 中专 52736.99 5 +湖北 湖北武汉 5018085622 4/27/80 男 2015/11/13 本科 52727.5 15 +四川 四川高新 604730052 4/14/82 女 2014/1/8 大专 52722.7 0 +山东 山东济南 658634692 9/29/80 男 2014/8/19 大专 52712.8 8 +青岛 青岛城阳 5129941092 1/4/89 女 2016/4/28 大专 52710 5 +辽宁 辽宁营口 73062442 5/5/73 女 2006/1/4 大专 52709.2 13 +重庆 重庆巴南 5111674282 5/12/93 女 2016/3/25 高中 52704.2 8 +苏州 苏州昆山 846325922 12/24/80 女 2015/8/10 本科 52703.5 9 +浙江 浙江杭州 5019071962 4/25/88 女 2015/11/15 大专 52700 2 +重庆 重庆渝中 728321032 4/28/85 女 2015/3/26 本科 52696.3 16 +四川 四川高新 752040252 6/28/78 女 2015/5/5 大专 52688 1 +上海 上海陆家嘴 724681782 1/10/73 男 2015/3/25 大专 52675.7 7 +山东 山东泰安 693855602 10/15/88 女 2014/12/20 中专 52670.6 3 +山东 山东临沂 675845702 3/21/83 女 2014/10/6 高中 52664.93 12 +广东 广东广州 670467022 10/10/86 女 2014/9/19 高中 52661 5 +河北 河北石家庄 5197507512 4/16/82 女 2016/7/30 大专 52660 13 +四川 四川绵阳 219473682 9/28/64 女 2008/4/25 大专 52642.95 7 +山东 山东济宁 649313482 8/15/67 女 2014/7/30 本科 52640.97 2 +宁波 宁波宁海 500358052 8/23/83 女 2013/1/21 高中 52638.11 6 +陕西 陕西宝鸡 239726862 3/1/80 女 2008/7/10 大专 52617.17 12 +重庆 重庆渝中 5201756472 1/27/87 女 2016/8/2 本科 52585 15 +苏州 苏州新区 521961692 4/24/81 女 2013/5/23 中专 52585 8 +河北 河北秦皇岛 525416152 7/6/55 男 2013/5/31 大专 52582.61 0 +浙江 浙江金华 5044081622 8/9/75 女 2015/12/10 高中 52581 7 +云南 云南昆明 5235313972 12/16/87 女 2016/9/19 中专 52578 1 +江西 江西南昌 5176744042 6/22/87 男 2016/6/20 高中 52577 8 +吉林 吉林松原 5142229282 6/4/82 女 2016/5/19 本科 52573 9 +海南 海南三亚 5196856622 10/30/85 女 2016/7/29 高中 52564.14 5 +浙江 浙江舟山 5050857082 1/4/71 女 2015/12/22 高中 52560 3 +山东 山东威海 5064278462 11/17/83 女 2016/2/1 硕士 52559.5 6 +山东 山东威海 258599852 1/2/76 女 2008/10/23 高中 52545.35 4 +江苏 江苏无锡 284395712 12/13/77 女 2009/3/12 大专 52544.23 6 +浙江 浙江湖州 5199737612 9/10/81 女 2016/8/1 高中 52538.5 14 +四川 四川高新 5153082412 7/13/92 男 2016/5/30 大专 52534 2 +大连 大连海川 744094762 8/10/83 女 2015/4/11 大专 52533 11 +青岛 青岛一支 5192198822 11/4/79 男 2016/7/25 大专 52524 3 +山东 山东济南 89234782 2/14/76 女 2006/6/29 大专 52519.41 10 +山东 山东济宁 43163552 4/10/71 女 2005/5/16 本科 52512.59 5 +浙江 浙江绍兴 360805752 5/7/69 女 2010/2/9 大专 52509.37 5 +河北 河北唐山 5145949762 8/10/78 男 2016/5/25 高中 52500 5 +浙江 浙江嘉兴 5134761182 9/8/73 女 2016/5/6 大专 52500 5 +湖北 湖北随州 877949322 2/4/70 女 2015/9/24 中专 52500 1 +河北 河北邯郸 5094227922 5/28/84 女 2016/3/15 高中 52499 10 +贵州 贵州遵义 707722832 2/12/82 女 2015/2/2 大专 52496 11 +广东 广东清远 827965292 5/8/64 女 2015/8/4 高中 52482 1 +广西 广西柳州 840754912 5/31/81 男 2015/8/9 高中 52474 9 +山东 山东威海 5122182962 12/12/83 女 2016/4/15 大专 52470 10 +湖北 湖北武汉 32710442 12/25/79 女 2005/3/1 大专 52468.44 6 +深圳 深圳福田第二 693684492 4/28/73 女 2014/12/20 本科 52458.76 6 +辽宁 辽宁丹东 614617212 5/28/65 女 2014/3/17 本科 52453.82 7 +四川 四川成都 193303502 12/5/70 女 2007/12/24 高中 52453.5 14 +广西 广西百色 637484922 8/21/86 女 2014/6/17 高中 52444.9 14 +辽宁 辽宁锦州 5141438812 5/3/79 女 2016/5/18 本科 52429 10 +河南 河南焦作 651137362 10/18/86 女 2014/8/4 大专 52391.21 1 +黑龙江 黑龙江鹤岗 490928532 12/19/71 女 2012/12/18 高中 52388.32 8 +山西 山西临汾 433203622 7/26/70 女 2011/8/8 大专 52375.12 5 +山东 山东济南 504727792 10/10/81 男 2013/2/27 本科 52362.9 10 +内蒙古 内蒙古赤峰 744840062 3/11/66 女 2015/4/11 中专 52359 5 +苏州 苏州新区 5208374212 9/11/84 女 2016/8/8 大专 52358.6 16 +四川 四川青羊 5195148702 11/1/79 女 2016/7/28 本科 52358.4 9 +苏州 苏州张家港 61844912 11/29/64 女 2005/8/2 高中 52355.55 7 +山东 山东威海 199074652 1/26/75 女 2008/1/8 大专 52349.25 6 +内蒙古 内蒙古通辽 5146005982 1/5/70 女 2016/5/25 高中 52347.9 7 +四川 四川高新 709614682 12/24/81 女 2015/2/15 本科 52345 1 +山东 山东临沂 5067900072 11/14/87 女 2016/2/24 中专 52331.6 22 +青岛 青岛一支 4686652 12/12/69 女 2003/6/18 大专 52289 9 +苏州 苏州新区 5075341932 1/6/84 女 2016/3/4 本科 52286 9 +北京 北京海淀 691012872 12/26/78 男 2014/12/15 大专 52272.5 9 +河南 河南南阳 328531412 12/23/63 女 2009/8/31 大专 52264.08 10 +四川 四川高新 5229992542 4/12/83 女 2016/9/5 本科 52232.4 7 +福建 福建厦门 5062505252 6/4/87 男 2016/1/21 大专 52229.5 10 +山东 山东枣庄 250609982 6/25/70 女 2008/9/10 中专 52221.06 8 +辽宁 辽宁鞍山 5020049162 1/22/77 女 2015/11/16 高中 52211 10 +江西 江西赣州 748000722 7/10/85 女 2015/4/22 中专 52206 21 +安徽 安徽合肥 22679802 12/17/72 女 2004/11/1 大专 52201.37 7 +四川 四川成都 5124940642 3/15/81 女 2016/4/19 大专 52200.4 4 +山东 山东枣庄 5199745782 4/18/86 女 2016/8/1 中专 52195.6 13 +深圳 深圳福田第二 733337672 12/21/90 男 2015/4/1 本科 52180 5 +青岛 青岛一支 5211371242 12/25/74 女 2016/8/9 大专 52179.8 11 +湖北 湖北孝感 5192682922 12/15/80 男 2016/7/26 高中 52170 17 +湖南 湖南长沙 214799262 2/11/71 女 2008/4/7 中专 52161.43 4 +湖南 湖南长沙 141280102 8/23/77 女 2007/7/1 本科 52159.07 4 +福建 福建龙岩 5080517342 11/6/81 女 2016/3/8 本科 52153 6 +四川 四川高新 631589142 11/4/69 女 2014/5/28 大专 52145.2 9 +吉林 吉林长春 5063924942 4/2/79 女 2016/1/30 本科 52142.4 1 +江西 江西赣州 5151876732 3/16/77 女 2016/5/28 高中 52134.2 11 +广西 广西柳州 5079596292 10/22/74 女 2016/3/7 高中 52131 3 +云南 云南曲靖 5229086932 2/16/85 女 2016/9/2 大专 52120 13 +河北 河北石家庄 643241422 4/20/83 女 2014/6/26 大专 52114.5 7 +江苏 江苏南京 5157393962 1/22/95 女 2016/6/1 本科 52099 11 +四川 四川高新 225139322 3/2/78 女 2008/5/21 大专 52093.3 10 +黑龙江 黑龙江哈尔滨 101281902 1/7/71 女 2006/10/19 大专 52093.06 9 +辽宁 辽宁沈阳 5546672 9/19/60 女 2003/7/1 大专 52085.21 7 +山东 山东济南 5157372152 11/20/82 男 2016/6/1 本科 52085.1 2 +浙江 浙江金华 5067750522 12/31/90 女 2016/2/24 高中 52076 8 +湖北 湖北宜昌 97251312 9/20/73 女 2006/9/16 中专 52075.75 9 +大连 大连明锐 5084283102 2/23/87 女 2016/3/10 本科 52071 5 +重庆 重庆永川 5210065862 12/11/75 男 2016/8/8 大专 52069 16 +湖北 湖北宜昌 226093272 10/24/73 女 2008/5/23 中专 52063.27 9 +福建 福建福州 5065072602 10/20/75 女 2016/2/4 高中 52059 5 +深圳 深圳龙岗 580233432 2/10/64 女 2013/9/30 中专 52048 7 +山东 山东潍坊 537451962 9/30/72 女 2013/6/17 中专 52047.5 11 +山东 山东烟台 241593452 8/5/73 女 2008/7/22 高中 52047.48 10 +辽宁 辽宁沈阳 692726772 1/25/72 女 2014/12/19 大专 52045.13 5 +宁波 宁波城区 160628182 12/12/67 女 2007/9/1 高中 52039.6 1 +山东 山东烟台 5055042622 12/16/86 女 2016/1/1 中专 52030.5 16 +山西 山西晋城 584421182 7/9/80 女 2013/11/15 中专 52026.46 0 +湖北 湖北黄石 661064162 7/26/64 女 2014/8/25 高中 52010.3 11 +辽宁 辽宁鞍山 798255932 1/3/92 女 2015/7/22 高中 52000 0 +辽宁 辽宁沈阳 5137956782 3/12/79 女 2016/5/12 大专 52000 0 +山东 山东烟台 5120286442 7/26/80 女 2016/4/12 中专 51980.5 12 +湖南 湖南衡阳 5217864842 8/15/88 男 2016/8/17 高中 51973.5 7 +四川 四川青羊 573685582 1/26/78 女 2013/8/19 大专 51962.05 5 +江苏 江苏南京 457227522 9/29/78 女 2012/3/19 大专 51956.05 8 +苏州 苏州张家港 5209358752 11/4/76 女 2016/8/8 中专 51952.2 4 +黑龙江 黑龙江七台河 5047622572 9/22/75 女 2015/12/17 高中 51950 1 +山东 山东烟台 44583382 11/20/68 女 2005/5/27 高中 51937.32 10 +北京 北京海淀 586135082 5/27/87 男 2013/11/30 大专 51927 6 +四川 四川高新 558629092 9/30/80 女 2013/6/28 大专 51925.06 11 +重庆 重庆渝中 5015848252 5/11/77 女 2015/11/11 中专 51922.5 12 +河南 河南周口 298787582 9/26/76 女 2009/5/11 本科 51917.5 16 +苏州 苏州新区 875649652 5/26/77 男 2015/9/22 高中 51910 3 +湖南 湖南株洲 5107593982 10/19/75 女 2016/3/23 高中 51909 6 +江苏 江苏南京 675904462 1/19/80 女 2014/10/7 本科 51908 11 +山西 山西太原 509825112 8/22/79 女 2013/3/25 大专 51902.89 4 +苏州 苏州太仓 454759812 6/24/72 女 2012/3/6 高中 51891.46 2 +新疆 新疆库尔勒 5200084832 7/29/74 女 2016/8/1 本科 51875.9 11 +江苏 江苏镇江 5037204592 3/7/79 女 2015/11/30 高中 51866 5 +苏州 苏州新区 489310932 9/3/69 女 2012/12/12 高中 51857.21 5 +四川 四川高新 571250672 11/24/81 女 2013/7/29 本科 51856.28 10 +重庆 重庆渝中 440423632 7/8/80 女 2011/9/29 大专 51854.4 11 +黑龙江 黑龙江哈尔滨 556057542 2/8/75 女 2013/6/27 本科 51853 8 +河南 河南平顶山 5165672472 9/29/66 男 2016/6/8 高中 51852 16 +湖北 湖北武汉 171923862 11/17/74 女 2007/10/25 高中 51846.21 4 +江西 江西吉安 656026302 9/30/70 男 2014/8/13 高中 51845 1 +重庆 重庆渝中 5179349472 2/23/83 女 2016/6/21 本科 51835 10 +江苏 江苏泰州 5043322862 12/2/78 女 2015/12/8 高中 51830 2 +四川 四川青羊 14221682 6/3/82 女 2004/6/3 大专 51812.41 4 +河南 河南洛阳 5147091052 8/30/81 女 2016/5/26 大专 51791.6 19 +湖北 湖北武汉 5199785662 5/5/78 女 2016/8/1 大专 51785.8 11 +湖北 湖北武汉 837758522 11/13/74 男 2015/8/8 高中 51757 15 +青岛 青岛即墨 859297962 3/13/74 女 2015/8/14 高中 51753.3 2 +河南 河南周口 5153703392 2/21/81 男 2016/5/30 本科 51741.1 8 +辽宁 辽宁沈阳 5164866562 10/12/78 女 2016/6/7 中专 51740.5 7 +北京 北京海淀 5194812352 3/16/79 女 2016/7/28 本科 51740 10 +四川 四川高新 733796712 2/4/83 女 2015/4/2 本科 51737 11 +广东 广东广州 570503702 9/29/79 女 2013/7/24 大专 51733 4 +青岛 青岛城阳 5077606442 1/2/85 女 2016/3/7 大专 51731.9 10 +四川 四川青羊 5225307532 9/28/82 男 2016/8/29 本科 51723 6 +山东 山东临沂 5207497612 1/15/77 女 2016/8/6 中专 51714.5 15 +新疆 新疆伊犁 5198413122 11/15/73 男 2016/8/1 高中 51710 14 +北京 北京东城 5165412282 12/26/86 女 2016/6/7 硕士 51691 5 +宁波 宁波城区 666036422 11/21/72 男 2014/9/2 本科 51679 8 +河北 河北保定 5142668032 4/27/60 女 2016/5/19 高中 51670 1 +山东 山东威海 728504422 4/18/70 男 2015/3/26 本科 51657.5 8 +辽宁 辽宁营口 5126240622 10/20/88 女 2016/4/22 大专 51655.7 12 +湖北 湖北武汉 256502422 1/14/70 女 2008/10/10 高中 51655 7 +广西 广西南宁 674889382 3/26/79 女 2014/9/29 大专 51653.7 16 +四川 四川青羊 5108734372 7/17/90 男 2016/3/24 大专 51640 2 +湖北 湖北武汉 615880582 8/25/82 女 2014/3/20 高中 51630 1 +深圳 深圳福田 460961672 8/30/79 女 2012/3/31 本科 51625.6 10 +浙江 浙江金华 454343482 1/13/84 女 2012/3/5 大专 51619.63 1 +广东 广东广州 517641772 9/22/81 女 2013/4/26 中专 51613 7 +四川 四川青羊 7578232 6/25/71 女 2003/9/15 大专 51605 5 +山东 山东济南 752905712 7/22/86 女 2015/5/8 中专 51588.9 13 +吉林 吉林吉林 5136416552 4/21/78 男 2016/5/10 大专 51559.7 15 +宁波 宁波宁海 692123282 11/10/79 女 2014/12/18 本科 51542 3 +山东 山东威海 569397762 10/15/84 女 2013/7/15 中专 51537 3 +四川 四川青羊 271921652 7/11/83 女 2008/12/24 本科 51531.29 15 +大连 大连开发区 20691652 6/14/74 女 2004/10/12 高中 51528.5 8 +黑龙江 黑龙江鹤岗 441502912 4/29/82 女 2011/10/10 高中 51515.26 11 +山东 山东威海 837436122 8/19/84 女 2015/8/8 中专 51493 13 +四川 四川青羊 271457172 12/22/61 女 2008/12/22 大专 51478 8 +湖北 湖北黄石 5195281982 11/2/85 男 2016/7/28 高中 51448 7 +陕西 陕西咸阳 676891212 11/15/82 女 2014/10/10 高中 51438.1 4 +山东 山东滨州 648969862 11/12/83 女 2014/7/29 本科 51437.11 4 +湖北 湖北武汉 101820222 8/21/78 女 2006/10/25 大专 51432.58 11 +浙江 浙江杭州 5074541422 12/11/76 女 2016/3/4 大专 51423 11 +山东 山东临沂 5162228522 6/7/74 男 2016/6/5 中专 51415.1 7 +浙江 浙江嘉兴 5198680582 11/22/83 女 2016/8/1 中专 51407.8 6 +苏州 苏州张家港 882508322 5/6/69 女 2015/10/9 高中 51405 4 +山东 山东枣庄 286961122 5/13/79 女 2009/3/23 中专 51402.4 5 +苏州 苏州昆山 5017623262 10/4/89 女 2015/11/13 高中 51399.5 2 +山东 山东枣庄 844166662 10/21/73 女 2015/8/10 本科 51399.37 11 +北京 北京良乡 173972172 3/7/64 女 2007/11/1 高中 51395.28 4 +浙江 浙江杭州 5178199042 3/9/84 女 2016/6/21 本科 51395 10 +江苏 江苏南京 534968902 4/2/78 女 2013/6/14 大专 51391.55 7 +山东 山东临沂 482587232 10/27/67 女 2012/11/9 初中 51374.81 7 +新疆 新疆石河子 612300792 2/26/72 女 2014/3/10 大专 51373.78 5 +湖北 湖北武汉 137596472 12/20/68 男 2007/6/1 本科 51360.17 8 +重庆 重庆渝中 5119726182 11/6/85 男 2016/4/11 大专 51358 5 +辽宁 辽宁沈阳 822543202 6/9/76 男 2015/8/1 大专 51353.92 10 +山西 山西长治 707517252 8/21/93 女 2015/1/30 高中 51350 1 +青岛 青岛一支 5145163792 11/3/75 女 2016/5/24 硕士 51350 1 +山西 山西阳泉 789055312 7/25/92 男 2015/7/14 本科 51350 1 +四川 四川高新 745885842 1/30/90 女 2015/4/15 高中 51345 7 +黑龙江 黑龙江哈尔滨 731466342 5/1/80 女 2015/3/31 本科 51342 7 +河南 河南郑州 322329552 1/12/69 女 2009/8/5 大专 51319.72 10 +江苏 江苏无锡 73298452 7/28/64 女 2006/1/7 高中 51312.68 5 +河南 河南开封 714946612 9/28/92 女 2015/3/20 高中 51305 10 +苏州 苏州张家港 5218024362 6/15/74 男 2016/8/17 高中 51293 8 +山东 山东临沂 5161668262 5/13/81 女 2016/6/4 中专 51281 8 +苏州 苏州昆山 5043835972 11/26/78 女 2015/12/10 高中 51277.5 3 +甘肃 甘肃武威 583703242 4/18/81 女 2013/11/11 大专 51269.5 4 +四川 四川高新 5176474852 3/2/90 女 2016/6/20 大专 51261 10 +山东 山东烟台 755259672 5/6/86 女 2015/5/20 本科 51250 12 +山西 山西运城 5190701172 7/22/81 男 2016/7/21 大专 51243.2 6 +福建 福建福州 5225026502 7/8/81 女 2016/8/29 高中 51241 7 +辽宁 辽宁沈阳 563705192 9/17/78 女 2013/6/29 中专 51234 7 +云南 云南昆明 372602212 11/21/75 女 2010/5/1 中专 51231.35 4 +四川 四川青羊 666151842 6/9/82 女 2014/9/2 大专 51223.68 0 +山东 山东菏泽 654267322 5/7/78 男 2014/8/10 中专 51221.91 0 +山东 山东烟台 706804752 1/21/66 女 2015/1/26 中专 51220.3 18 +贵州 贵州贵阳 681528092 11/10/77 女 2014/11/12 高中 51215 14 +山东 山东烟台 5209745852 7/6/60 女 2016/8/8 中专 51210.9 10 +浙江 浙江金华 863700232 2/28/81 男 2015/8/26 大专 51192.5 10 +江苏 江苏南京 520295942 3/16/84 女 2013/5/14 大专 51192.1 10 +北京 北京海淀 578357632 10/30/88 女 2013/9/30 本科 51189 1 +福建 福建福州 775290522 8/19/79 女 2015/6/26 高中 51189 1 +四川 四川绵阳 753964202 12/10/81 女 2015/5/13 高中 51188.5 4 +河南 河南郑州 816851602 11/27/78 女 2015/7/31 大专 51181.09 6 +河北 河北沧州 359132192 9/15/65 女 2010/1/25 高中 51177.7 6 +大连 大连海川 593924112 2/6/76 女 2013/12/20 大专 51177.05 8 +重庆 重庆渝中 5163485922 3/8/84 女 2016/6/6 大专 51177 6 +山东 山东滨州 783006142 5/11/83 女 2015/7/7 高中 51175 2 +四川 四川高新 5044924712 2/18/80 女 2015/12/12 高中 51172.4 11 +福建 福建三明 5119887572 6/22/68 男 2016/4/11 高中 51160 2 +安徽 安徽合肥 531766232 8/10/66 女 2013/6/9 高中 51151.3 5 +山东 山东烟台 5080595302 2/3/84 男 2016/3/8 本科 51148.6 24 +福建 福建福州 603482032 2/20/86 女 2014/1/1 大专 51118.29 10 +山西 山西大同 5014733202 9/4/73 女 2015/11/10 高中 51106.8 16 +湖北 湖北襄阳 662675892 7/23/84 女 2014/8/26 高中 51098.05 16 +山东 山东枣庄 746922142 6/17/79 女 2015/4/18 大专 51097.5 10 +山东 山东威海 701290132 4/8/70 女 2014/12/31 本科 51097.2 7 +河南 河南郑州 750140862 8/17/72 女 2015/4/29 本科 51089.5 11 +北京 北京东城 5172209552 3/29/74 女 2016/6/15 大专 51086 11 +河南 河南周口 713578702 10/10/69 女 2015/3/18 中专 51080 4 +河南 河南洛阳 340133172 11/19/69 女 2009/11/2 高中 51072 4 +江西 江西南昌 535472052 7/14/78 女 2013/6/14 中专 51066.96 4 +湖北 湖北武汉 576062432 10/27/89 男 2013/9/2 大专 51061.38 0 +河南 河南南阳 30002952 11/19/68 女 2005/1/27 中技 51060.67 0 +深圳 深圳罗湖 476625152 1/8/78 女 2012/8/31 大专 51050 1 +黑龙江 黑龙江双鸭山 267480172 10/22/64 女 2008/12/1 高中 51044.85 4 +江苏 江苏南京 44269492 9/23/76 男 2005/5/26 本科 51036.2 7 +江苏 江苏南京 724050932 11/21/94 女 2015/3/25 大专 51025 4 +江苏 江苏常州 274580292 8/13/71 女 2009/1/1 高中 51019.56 7 +山东 山东济南 73416942 9/18/74 女 2006/1/11 本科 51016.81 10 +河北 河北石家庄 523893182 6/20/76 男 2013/5/28 本科 51014 10 +天津 天津市区二支 47854722 3/21/64 女 2005/6/21 大专 51012.57 14 +山东 山东临沂 5156159202 4/18/78 女 2016/5/31 大专 51011.4 9 +山东 山东济南 185569462 3/10/80 男 2007/11/25 高中 51002.5 9 +深圳 深圳福田第二 636402572 9/11/81 女 2014/6/13 本科 51002.2 0 +江西 江西新余 820283172 12/11/74 女 2015/7/31 高中 51001.98 0 +佛山 佛山禅城 831039562 1/16/78 女 2015/8/5 大专 51000 0 +新疆 新疆石河子 734705582 1/20/89 女 2015/4/3 大专 50998.94 3 +四川 四川乐山 640191712 12/20/79 女 2014/6/23 中专 50996.91 4 +辽宁 辽宁沈阳 5050463682 12/5/81 女 2015/12/22 本科 50991 6 +湖北 湖北武汉 5192888692 12/7/77 女 2016/7/26 大专 50989 9 +广东 广东广州 5154989802 10/14/75 女 2016/5/31 中专 50985.5 6 +四川 四川青羊 649045372 4/19/73 女 2014/7/30 本科 50968.14 14 +大连 大连明锐 821023302 1/9/74 女 2015/7/31 大专 50956 9 +青岛 青岛一支 51745332 6/8/73 女 2005/7/15 大专 50948.75 9 +苏州 苏州太仓 5164899172 3/23/87 男 2016/6/7 本科 50945 2 +四川 四川高新 575225302 11/3/82 男 2013/8/29 本科 50937.35 16 +湖北 湖北荆州 5090668832 1/20/88 男 2016/3/12 高中 50933 7 +山东 山东淄博 5198611692 12/15/75 女 2016/8/1 中专 50929.4 11 +山东 山东潍坊 865205752 8/8/72 男 2015/8/31 本科 50928.2 6 +河南 河南南阳 341597382 4/5/76 女 2009/11/10 初中 50909.79 6 +四川 四川成都 5222786432 10/9/74 女 2016/8/24 中专 50894 6 +大连 大连明锐 131108082 9/12/82 女 2007/4/20 本科 50893.75 7 +山东 山东济宁 74488412 9/20/71 女 2006/1/26 大专 50886.97 5 +山东 山东淄博 5019747292 12/4/85 女 2015/11/16 大专 50883 11 +山西 山西晋中 274329902 11/19/80 女 2009/1/1 中专 50879.98 1 +北京 北京海淀 247118682 10/9/75 女 2008/8/22 硕士 50875.46 5 +贵州 贵州贵阳 5193920312 9/27/85 女 2016/7/27 中专 50874.9 16 +深圳 深圳罗湖 5216031812 9/10/83 女 2016/8/15 大专 50870 13 +新疆 新疆石河子 5175618122 11/10/86 女 2016/6/20 高中 50866.5 9 +青岛 青岛一支 343786372 8/18/82 女 2009/11/18 大专 50850.48 8 +安徽 安徽亳州 678754032 1/14/73 男 2014/10/25 中专 50850 3 +河北 河北石家庄 5160675622 4/13/70 女 2016/6/3 高中 50849 9 +天津 天津市区一支 627725192 3/3/65 女 2014/5/9 高中 50843.1 8 +江苏 江苏南通 5179359442 2/10/66 女 2016/6/21 高中 50840.7 3 +江西 江西南昌 735434132 12/8/69 男 2015/4/3 高中 50831 7 +江苏 江苏泰州 5230897252 11/22/78 女 2016/9/7 高中 50820 5 +山东 山东烟台 5195567512 11/9/80 女 2016/7/28 本科 50810.6 6 +湖南 湖南永州 5177469292 1/16/63 女 2016/6/21 中专 50810 3 +黑龙江 黑龙江牡丹江 458086842 3/17/78 女 2012/3/22 中专 50798.92 5 +广西 广西南宁 5198139362 4/2/86 女 2016/8/1 本科 50798 7 +山东 山东淄博 5185925532 11/11/81 男 2016/6/30 高中 50791 3 +内蒙古 内蒙呼和浩特 248772152 7/24/74 男 2008/9/1 大专 50770.9 8 +福建 福建泉州 868900962 8/7/76 男 2015/9/9 高中 50768.4 5 +山东 山东菏泽 497854472 12/2/70 女 2012/12/31 中专 50766.5 11 +苏州 苏州新区 689068132 5/19/75 女 2014/12/5 本科 50759 5 +浙江 浙江嘉兴 871897082 2/29/84 女 2015/9/15 大专 50752 9 +河南 河南南阳 479683372 9/1/73 男 2012/9/29 本科 50745 1 +山东 山东济南 5065289242 3/30/63 男 2016/2/5 高中 50743.5 10 +天津 天津市区二支 656263982 7/28/78 女 2014/8/14 中专 50724.5 7 +广东 广东清远 5217371672 6/15/79 女 2016/8/16 中专 50724.3 9 +青岛 青岛一支 462060772 9/20/57 男 2012/4/16 大专 50721.48 7 +辽宁 辽宁丹东 399213982 11/10/73 女 2010/10/8 中专 50706.06 8 +青岛 青岛一支 480936832 10/25/70 男 2012/10/23 大专 50699.6 8 +四川 四川青羊 605648132 9/24/73 男 2014/1/15 大专 50692.68 4 +湖南 湖南邵阳 5207035252 3/4/80 男 2016/8/5 高中 50688 8 +北京 北京东城 792060912 4/15/82 女 2015/7/16 本科 50687 14 +江苏 江苏徐州 533620812 8/21/76 男 2013/6/13 高中 50686 6 +山东 山东烟台 535322432 7/7/83 女 2013/6/14 中专 50685.2 10 +云南 云南曲靖 5190227042 10/10/87 女 2016/7/20 本科 50682.4 10 +广东 广东茂名 376334962 10/17/54 男 2010/5/21 高中 50681.34 1 +四川 四川高新 5096011032 4/2/85 女 2016/3/16 中专 50674.5 16 +江苏 江苏常州 86977822 6/12/66 女 2006/6/12 高中 50672.58 5 +江苏 江苏南京 345328462 5/14/88 男 2009/11/25 大专 50669.7 8 +深圳 深圳宝安 121795382 12/3/79 女 2007/3/7 大专 50669.35 8 +佛山 佛山顺德龙江 841947942 6/7/84 男 2015/8/9 高中 50668.4 6 +山东 山东烟台 444227152 1/18/72 男 2011/11/19 中专 50649.13 2 +浙江 浙江金华 518569762 5/11/77 女 2013/5/2 高中 50637.05 12 +湖北 湖北十堰 515047062 10/6/80 女 2013/4/12 中专 50634.4 13 +北京 北京东城 5189423902 8/19/71 女 2016/7/18 硕士 50610 7 +浙江 浙江温州 706792472 10/6/78 女 2015/1/26 高中 50599.3 6 +安徽 安徽滁州 348538672 3/9/68 女 2009/12/1 高中 50598.5 9 +佛山 佛山禅城 797135342 2/9/68 女 2015/7/21 高中 50593 8 +青岛 青岛一支 79235272 1/17/78 女 2006/3/24 大专 50587.47 8 +福建 福建漳州 5202059242 2/21/77 男 2016/8/2 大专 50585.1 8 +四川 四川泸州 704591202 2/28/79 女 2015/1/16 中专 50547.5 7 +河北 河北石家庄 799449662 5/11/61 女 2015/7/23 本科 50544 14 +福建 福建福州 583280072 8/15/73 女 2013/11/7 高中 50526.64 10 +吉林 吉林延边 582798142 11/4/78 女 2013/11/1 中专 50525.22 11 +黑龙江 黑龙江哈尔滨 217409052 3/21/64 女 2008/4/21 本科 50525.21 17 +山东 山东威海 415353252 11/27/80 女 2011/2/8 中专 50524.6 15 +黑龙江 黑龙江牡丹江 224145732 4/23/62 女 2008/5/19 大专 50521.89 4 +湖北 湖北咸宁 5210407612 9/3/82 女 2016/8/9 硕士 50514 8 +宁波 宁波宁海 5173775122 2/5/78 女 2016/6/16 初中 50511.6 8 +福建 福建漳州 577507522 3/3/63 男 2013/9/9 大专 50501.46 8 +吉林 吉林四平 748002122 1/3/67 女 2015/4/22 高中 50500.8 6 +山东 山东济南 5105375652 11/12/82 女 2016/3/22 本科 50497.5 9 +山东 山东济宁 579540752 12/1/71 男 2013/9/25 中专 50485.07 4 +云南 云南昆明 282230312 9/2/79 女 2009/3/3 大专 50482.3 5 +山东 山东东营 444752762 12/3/81 女 2011/11/24 大专 50481.44 10 +福建 福建福州 302512522 10/15/78 女 2009/5/21 初中 50470.75 7 +苏州 苏州园区 707292822 9/10/84 女 2015/1/29 大专 50467.5 1 +湖南 湖南永州 5180468122 8/13/93 男 2016/6/23 高中 50467 8 +福建 福建泉州 602665692 8/24/76 女 2013/12/31 高中 50466.6 4 +青岛 青岛即墨 5213260492 3/29/77 女 2016/8/11 大专 50466.3 8 +山东 山东滨州 605702422 8/18/76 女 2014/1/15 大专 50466 1 +` + +export const companyTargetData = `区域 分公司 销售目标(万元) +中心区 青岛 2360 +北区 内蒙古 400 +中心区 佛山 450 +北区 安徽 1810 +北区 河北 2210 +中心区 北京 2160 +省会 青海 40 +南区 福建 1200 +南区 浙江 2060 +南区 江西 2660 +南区 湖南 1460 +中心区 天津 750 +北区 山东 7280 +中心区 深圳 1410 +省会 陕西 1000 +北区 辽宁 2210 +中心区 上海 1000 +南区 江苏 2760 +北区 黑龙江 5720 +南区 广西 1100 +省会 新疆 600 +北区 河南 2710 +省会 四川 7330 +南区 湖北 5170 +北区 吉林 1560 +省会 重庆 1610 +中心区 苏州 2060 +中心区 宁波 500 +省会 云南 1960 +省会 贵州 600 +北区 山西 1660 +南区 广东 3060 +省会 甘肃 450 +中心区 大连 550 +省会 海南 170 +` +export const companyTargetData10 = `区域 分公司 销售目标(万元) +中心区 青岛 2360 +北区 内蒙古 400 +中心区 佛山 450 +北区 安徽 1810 +北区 河北 2210 +中心区 北京 2160 +省会 青海 40 +南区 福建 1200 +南区 浙江 2060 +南区 江西 2660 +南区 湖南 1460 +中心区 天津 750 +北区 山东 7280 +中心区 深圳 1410 +省会 陕西 1000 +北区 辽宁 2210 +中心区 上海 1000 +南区 江苏 2760 +北区 黑龙江 5720 +南区 广西 1100 +省会 新疆 600 +北区 河南 2710 +省会 四川 7330 +南区 湖北 5170 +北区 吉林 1560 +省会 重庆 1610 +中心区 苏州 2060 +中心区 宁波 500 +省会 云南 1960 +省会 贵州 600 +北区 山西 1660 +南区 广东 3060 +省会 甘肃 450 +中心区 大连 550 +省会 海南 170 +` +export const companyTargetData11 = `区域 分公司 销售目标(万元) +中心区 青岛 3240 +北区 内蒙古 1280 +中心区 佛山 1330 +北区 安徽 2690 +北区 河北 3090 +中心区 北京 3040 +省会 青海 920 +南区 福建 2080 +南区 浙江 2940 +南区 江西 3540 +南区 湖南 2340 +中心区 天津 1630 +北区 山东 8160 +中心区 深圳 2290 +省会 陕西 1880 +北区 辽宁 3090 +中心区 上海 1880 +南区 江苏 3640 +北区 黑龙江 6600 +南区 广西 1980 +省会 新疆 1480 +北区 河南 3590 +省会 四川 8210 +南区 湖北 6050 +北区 吉林 2440 +省会 重庆 2490 +中心区 苏州 2940 +中心区 宁波 1380 +省会 云南 2840 +省会 贵州 1480 +北区 山西 2540 +南区 广东 3940 +省会 甘肃 1330 +中心区 大连 1430 +省会 海南 1050 + +` +export const companyTargetData12 = `区域 分公司 销售目标(万元) +中心区 青岛 4760 +北区 内蒙古 2800 +中心区 佛山 2850 +北区 安徽 4210 +北区 河北 4610 +中心区 北京 4560 +省会 青海 2440 +南区 福建 3600 +南区 浙江 4460 +南区 江西 5060 +南区 湖南 3860 +中心区 天津 3150 +北区 山东 9680 +中心区 深圳 3810 +省会 陕西 3400 +北区 辽宁 4610 +中心区 上海 3400 +南区 江苏 5160 +北区 黑龙江 8120 +南区 广西 3500 +省会 新疆 3000 +北区 河南 5110 +省会 四川 9730 +南区 湖北 7570 +北区 吉林 3960 +省会 重庆 4010 +中心区 苏州 4460 +中心区 宁波 2900 +省会 云南 4360 +省会 贵州 3000 +北区 山西 4060 +南区 广东 5460 +省会 甘肃 2850 +中心区 大连 2950 +省会 海南 2570 +` + + +export function excelToLuckyArray(excelData) { + const rows = excelData.trim().split('\n').map(row => row.trim().split('\t')); + const header = rows[0].map(col => ({ v: col })); + const data = rows.slice(1).map(row => row.map(col => ({ v: col }))); + return [header, ...data]; +} + +export function excelToArray(excelData) { + const rows = excelData.trim().split('\n').map(row => row.trim().split('\t')); + const header = rows[0] + const data = rows.slice(1).map(row => row.map(col => (col))); + return [header, ...data]; +} + +// 生成表1 +export function pivotTable(data, config) { + const headers = data.shift(); + const rows = config.rows; + const values = config.values; + const result = []; + + // Helper function to calculate sum or count based on type + function getCellValue(type, values) { + switch (type) { + case "sum": + return values.reduce((sum, curr) => sum + (parseFloat(curr) || 0), 0); + case "count": + return values.length; + default: + return null; + } + } + + // Filter and sort data based on row columns + const sortedData = data + .filter((row) => row[rows[0]] != undefined) + .sort((a, b) => { + if (a[rows[0]] < b[rows[0]]) return -1; + if (a[rows[0]] > b[rows[0]]) return 1; + return 0; + }); + + // Loop through the sorted data and group rows by row columns + let currentRowValue = null; + let currentRowIndex = -1; + sortedData.forEach((row) => { + if (row[rows[0]] !== currentRowValue) { + currentRowIndex++; + currentRowValue = row[rows[0]]; + result[currentRowIndex] = [{ v: currentRowValue }]; + for (let i = 0; i < values.length; i++) { + result[currentRowIndex].push({ v: "" }); + } + } + + // Calculate cell values based on type + for (let i = 0; i < values.length; i++) { + const column = values[i].column; + const type = values[i].type; + const value = row[column]; + const cellValue = getCellValue(type, [value]) + if (result[currentRowIndex][i + 1].v === "") { + + result[currentRowIndex][i + 1].v = cellValue; + } else { + result[currentRowIndex][i + 1].v += cellValue; + } + } + }); + + // Add header row + result.unshift( + [{ v: headers[rows[0]] }].concat( + values.map((value) => ({ v: `${headers[value.column]}` })) + ) + ); + + return result; +} + +// 添加排名 +export function sortTable(data) { + + // 按照销售额从高到底排序 + data.sort(function (a, b) { + // 四舍五入 + b[1].v = Math.round(b[1].v) || b[1].v || 0 + a[1].v = Math.round(a[1].v) || a[1].v || 0 + return b[1].v - a[1].v; + }); + + // 添加排名列 + data[0].unshift({ v: "排名" }); + for (var i = 1; i < data.length; i++) { + data[i].unshift({ "v": i }); + } + + return data +} + +// 表1基础上增加一列“销售目标” +export function addSalesTargetToTable(table, salesTargetData) { + table[0].splice(1, 0, { v: salesTargetData[0][0] }); + table[0].push({ v: salesTargetData[0][2] }); + + // 将销售目标数据转换为对象 + const salesTargetObj = {}; + for (let i = 1; i < salesTargetData.length; i++) { + salesTargetObj[salesTargetData[i][1]] = { + area: salesTargetData[i][0], + salesTarget: salesTargetData[i][2] + }; + } + + // 遍历结果表,为每个“分公司”添加“销售目标”列 + for (let i = 1; i < table.length; i++) { + const companyName = table[i][1].v; + const area = salesTargetObj[companyName].area || ""; + const salesTarget = parseFloat(salesTargetObj[companyName].salesTarget) || 0; + table[i].splice(1, 0, { v: area }); + table[i].push({ v: salesTarget }); + } + + return table; +} + +// 汇总所有区域数据,带分公司 +export function summary(data) { + // 获取需要汇总的列数 + const colCount = data[0].length - 1; + + // 计算汇总数据 + const summaryRow = [{ v: "" }, { v: "合计" }, { v: "" }]; + for (let i = 3; i <= colCount; i++) { + let sum = 0; + for (let j = 1; j < data.length; j++) { + sum += parseInt(data[j][i]['v']) || 0; + } + summaryRow.push({ "v": parseInt(sum) || 0 }); + } + + // 插入汇总数据到第二行 + data.splice(1, 0, summaryRow); + return data +} + +// 汇总所有区域数据,不带分公司 +export function summaryAll(data) { + // 获取需要汇总的列数 + const colCount = data[0].length - 1; + + // 计算汇总数据 + const summaryRow = [{ v: "" }, { v: "合计" }]; + for (let i = 2; i <= colCount; i++) { + let sum = 0; + for (let j = 1; j < data.length; j++) { + sum += parseInt(data[j][i]['v']) || 0; + } + summaryRow.push({ "v": parseInt(sum) || 0 }); + } + + // 插入汇总数据到第二行 + data.splice(1, 0, summaryRow); + return data +} + +// 汇总各个区域数据 +export function summaryArea(data) { + // 获取所有的区域 + const regions = []; + for (let i = 3; i < data.length; i++) { + const region = data[i][1]['v']; + if (!regions.includes(region)) { + regions.push(region); + } + } + + // 按区域汇总数据 + for (let i = 0; i < regions.length; i++) { + const region = regions[i]; + let sumSales = 0; + let sumCustomers = 0; + let countSalesmen = 0; + let sumTargets = 0; + for (let j = 3; j < data.length; j++) { + if (data[j][1]['v'] === region) { + sumSales += parseInt(data[j][3]['v']) || 0; + sumCustomers += parseInt(data[j][4]['v']) || 0; + countSalesmen += parseInt(data[j][5]['v']) || 0; + sumTargets += parseInt(data[j][6]['v']) || 0; + } + } + const summary = [{ "v": "" }, { "v": region }, { v: "" }, { "v": parseInt(sumSales) || 0 }, { "v": sumCustomers }, { "v": countSalesmen }, { "v": sumTargets }]; + data.splice(2, 0, summary); + } + + return data +} + +// 添加达成率 +export function targetRate(data, title = '达成率(销售额/销售目标)') { + data[0].push({ v: title }) + // 计算并添加达成率列 + for (let i = 1; i < data.length; i++) { + const sumSales = data[i][3].v; // 第四列 + const salesTarget = data[i][6].v * 10000; // 第七列 + const achievementRate = ((sumSales / salesTarget) * 100).toFixed(0) + "%"; // 计算并格式化达成率 + data[i].push({ v: achievementRate }); // 添加达成率列 + } + + return data +} + +// 计算结果 +export function askAIData(data, salesTargetData) { + + const config = { + rows: [0], + values: [ + { + column: data[0].length - 2, + type: "sum", + }, + { + column: data[0].length - 1, + type: "sum", + }, + { + column: 2, + type: "count", + }, + ], + }; + + let resultTable = pivotTable(data, config) + resultTable = sortTable(resultTable) + + let saleTarget = false + // 只有分公司才能执行vlookup查询 + if(resultTable[0][1].v === '分公司'){ + saleTarget = true + resultTable = addSalesTargetToTable(resultTable, salesTargetData); // 添加“销售目标”列 + } + if(saleTarget){ + + resultTable = summary(resultTable) + }else{ + resultTable = summaryAll(resultTable) + } + + if(saleTarget){ + resultTable = summaryArea(resultTable) + resultTable = targetRate(resultTable) + } + + if(!saleTarget && resultTable[0] && resultTable[0][4] && resultTable[0][4].v === '客户数'){ + resultTable[0][4].v = '销售员人数' + } + return resultTable +} + +function getAjax(url, data = {}, success, error) { + $.ajax({ + url, + data, + beforeSend: function (request) { + request.setRequestHeader("Authorization", `Bearer ${remoteT1}.${remoteT2}`) + }, + success(res) { + success?.(res) + }, + error(err) { + error?.(err) + } + }) +} + + +export function getAirTable(url, columnId = 0, sort = 1, success,fail) { + const host = 'https://api.airtable.com' + const urls = url.replace('https://airtable.com/', '').split('/') + const baseId = urls[0] + const tableId = urls[1] + const viewId = urls[2].split('?')[0] + let direction = 'asc' + if (!sort) { + direction = 'desc' + } + + const tablesUrl = `${host}/v0/meta/bases/${baseId}/tables` + getAjax(tablesUrl, {}, (res) => { + const table = res.tables.find(item => item.id === tableId) + const fields = table.fields + + const tableUrl = `${host}/v0/${baseId}/${tableId}` + const query = { + view: viewId, + sort: [{ + field: fields[columnId].name, + direction + }] + } + getAjax(tableUrl, query, (result) => { + const records = result.records + const data = new Array() + data.length = records.length + for (let i = 0; i < records.length; i++) { + data[i] = [] + for (let j = 0; j < fields.length; j++) { + const record = records[i].fields[fields[j].name] + if (record) { + data[i].push(record) + } else { + data[i].push(null) + } + } + } + success && success(data) + }, (err) => { + console.dir(err) + fail && fail(err) + }) + }, (err) => { + console.dir(err) + fail && fail(err) + }) + +} \ No newline at end of file diff --git a/public/demoData/sheetCell.js b/public/demoData/sheetCell.js new file mode 100644 index 0000000..b9d7e0f --- /dev/null +++ b/public/demoData/sheetCell.js @@ -0,0 +1,1578 @@ +window.sheetCell = { + "name": "Cell", + "config": { + "merge": { + "13_5": { + "r": 13, + "c": 5, + "rs": 3, + "cs": 1 + }, + "13_7": { + "r": 13, + "c": 7, + "rs": 3, + "cs": 2 + }, + "14_2": { + "r": 14, + "c": 2, + "rs": 1, + "cs": 2 + }, + "15_10": { + "r": 15, + "c": 10, + "rs": 4, + "cs": 3 + } + }, + "borderInfo": [ + { + "rangeType": "cell", + "value": { + "row_index": 3, + "col_index": 3, + "l": { + "style": 10, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 10, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 10, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 10, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 3, + "col_index": 4, + "l": { + "style": 10, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 10, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 10, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 10, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 3, + "col_index": 5, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 3, + "col_index": 6, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 3, + "col_index": 7, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 3, + "col_index": 8, + "l": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 1, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 2, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 3, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 4, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 5, + "l": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 6, + "l": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 1, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 7, + "l": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 1, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 1, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 5, + "col_index": 8, + "l": { + "style": 2, + "color": "rgb(255, 0, 0)" + }, + "r": { + "style": 2, + "color": "rgb(255, 0, 0)" + }, + "t": { + "style": 2, + "color": "rgb(255, 0, 0)" + }, + "b": { + "style": 2, + "color": "rgb(255, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 2, + "l": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "r": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "t": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "b": { + "style": 9, + "color": "rgb(0, 0, 255)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 3, + "l": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "r": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "t": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "b": { + "style": 9, + "color": "rgb(0, 0, 255)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 5, + "l": { + "style": 2, + "color": "rgb(154, 205, 50)" + }, + "t": { + "style": 2, + "color": "rgb(154, 205, 50)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 6, + "r": { + "style": 2, + "color": "rgb(154, 205, 50)" + }, + "t": { + "style": 2, + "color": "rgb(154, 205, 50)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 8, + "r": { + "style": 9, + "color": "rgb(0, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(0, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 9, + "l": { + "style": 9, + "color": "rgb(0, 0, 0)" + }, + "b": { + "style": 9, + "color": "rgb(0, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 8, + "col_index": 2, + "l": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "r": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "t": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "b": { + "style": 9, + "color": "rgb(0, 0, 255)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 8, + "col_index": 3, + "l": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "r": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "t": { + "style": 9, + "color": "rgb(0, 0, 255)" + }, + "b": { + "style": 9, + "color": "rgb(0, 0, 255)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 8, + "col_index": 5, + "l": { + "style": 2, + "color": "rgb(154, 205, 50)" + }, + "b": { + "style": 2, + "color": "rgb(154, 205, 50)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 8, + "col_index": 6, + "r": { + "style": 2, + "color": "rgb(154, 205, 50)" + }, + "b": { + "style": 2, + "color": "rgb(154, 205, 50)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 8, + "col_index": 8, + "r": { + "style": 9, + "color": "rgb(0, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(0, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 8, + "col_index": 9, + "l": { + "style": 9, + "color": "rgb(0, 0, 0)" + }, + "t": { + "style": 9, + "color": "rgb(0, 0, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 2, + "l": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "t": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "b": { + "style": 1, + "color": "rgb(144, 238, 144)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 3, + "r": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "t": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "b": { + "style": 1, + "color": "rgb(144, 238, 144)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 5, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "t": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 6, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "t": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 7, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "t": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 11, + "col_index": 2, + "l": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "t": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "b": { + "style": 1, + "color": "rgb(144, 238, 144)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 11, + "col_index": 3, + "r": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "t": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "b": { + "style": 1, + "color": "rgb(144, 238, 144)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 11, + "col_index": 5, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 11, + "col_index": 6, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 11, + "col_index": 7, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 12, + "col_index": 2, + "l": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "t": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "b": { + "style": 1, + "color": "rgb(144, 238, 144)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 12, + "col_index": 3, + "r": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "t": { + "style": 1, + "color": "rgb(144, 238, 144)" + }, + "b": { + "style": 1, + "color": "rgb(144, 238, 144)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 12, + "col_index": 5, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "b": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 12, + "col_index": 6, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "b": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 12, + "col_index": 7, + "l": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "r": { + "style": 1, + "color": "rgb(205, 205, 0)" + }, + "b": { + "style": 1, + "color": "rgb(205, 205, 0)" + } + } + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "2", + "color": "#000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 3, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 3, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "4", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 4, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "3", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 4, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "3", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 3, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 3, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 5, + 5 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 8, + 8 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 3, + 8 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "4", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 7, + 7 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "1", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 8, + 8 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "5", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 6, + 6 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "6", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 5, + 5 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "3", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 4, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "3", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 4, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 3, + 3 + ], + "column": [ + 3, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "2", + "color": "#ff0000", + "range": [ + { + "row": [ + 5, + 5 + ], + "column": [ + 2, + 9 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "9", + "color": "#ff0000", + "range": [ + { + "row": [ + 5, + 5 + ], + "column": [ + 5, + 5 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "8", + "color": "#ff0000", + "range": [ + { + "row": [ + 5, + 5 + ], + "column": [ + 6, + 6 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "13", + "color": "#ff0000", + "range": [ + { + "row": [ + 5, + 5 + ], + "column": [ + 7, + 7 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "13", + "color": "#ff0000", + "range": [ + { + "row": [ + 6, + 6 + ], + "column": [ + 11, + 11 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "10", + "color": "#ff0000", + "range": [ + { + "row": [ + 5, + 5 + ], + "column": [ + 4, + 4 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "11", + "color": "#ff0000", + "range": [ + { + "row": [ + 5, + 5 + ], + "column": [ + 3, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "11", + "color": "#ff0000", + "range": [ + { + "row": [ + 7, + 8 + ], + "column": [ + 2, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-all", + "style": "3", + "color": "#0000ff", + "range": [ + { + "row": [ + 7, + 8 + ], + "column": [ + 2, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-inside", + "style": "3", + "color": "#0000ff", + "range": [ + { + "row": [ + 7, + 8 + ], + "column": [ + 8, + 9 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-inside", + "style": "9", + "color": "#0000ff", + "range": [ + { + "row": [ + 7, + 8 + ], + "column": [ + 8, + 9 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-inside", + "style": "2", + "color": "#0000ff", + "range": [ + { + "row": [ + 7, + 8 + ], + "column": [ + 8, + 9 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-inside", + "style": "9", + "color": "#0000ff", + "range": [ + { + "row": [ + 7, + 8 + ], + "column": [ + 8, + 9 + ] + } + ] + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 10, + "l": { + "color": "#ff0000", + "style": "13" + }, + "r": { + "color": "#ff0000", + "style": "13" + }, + "t": { + "color": "#ff0000", + "style": "13" + }, + "b": { + "color": "#ff0000", + "style": "13" + } + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 6, + "col_index": 11, + "l": null, + "r": null, + "t": null, + "b": null + } + }, + { + "rangeType": "cell", + "value": { + "row_index": 10, + "col_index": 10, + "l": null, + "r": null, + "t": null, + "b": null + } + }, + { + "rangeType": "range", + "borderType": "border-outside", + "style": "13", + "color": "#00ff00", + "range": [ + { + "row": [ + 10, + 12 + ], + "column": [ + 2, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-horizontal", + "style": "13", + "color": "#00ff00", + "range": [ + { + "row": [ + 10, + 12 + ], + "column": [ + 2, + 3 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-vertical", + "style": "13", + "color": "#ff9900", + "range": [ + { + "row": [ + 10, + 12 + ], + "column": [ + 5, + 7 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-outside", + "style": "13", + "color": "#ff9900", + "range": [ + { + "row": [ + 10, + 12 + ], + "column": [ + 5, + 7 + ] + } + ] + }, + { + "rangeType": "range", + "borderType": "border-none", + "style": "1", + "color": "#ff9900", + "range": [ + { + "row": [ + 19, + 19 + ], + "column": [ + 6, + 6 + ] + } + ] + } + ], + "rowlen": { + "0": 20, + "1": 20, + "2": 20, + "3": 20, + "4": 20, + "5": 20, + "6": 20, + "7": 20, + "8": 20, + "9": 20, + "10": 20, + "11": 20, + "12": 20, + "13": 20, + "14": 20, + "15": 20, + "16": 20, + "17": 31, + "18": 20, + "19": 20, + "20": 20, + "21": 20, + "22": 20, + "23": 20, + "24": 20, + "25": 79, + "26": 20, + "27": 20, + "28": 80, + "29": 36 + }, + "columnlen": { + "0": 131, + "2": 153, + "3": 128, + "4": 136, + "5": 122, + "6": 138, + "7": 131, + "8": 128, + "9": 140, + "10": 144 + }, + "rowhidden": { + "30": 0, + "31": 0 + }, + "customHeight": { + "29": 1 + }, + "customWidth": { + "2": 1 + } + }, + "index": "0", + "zoomRatio": 1, + "order": "0", + "column": 18, + "row": 36, + "status": 1, + "celldata": [{"r":0,"c":0,"v":{"customKey":{a:1},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":1,"ct":{"fa":"General","t":"n"},"m":"1"}},{"r":0,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":2,"ct":{"fa":"General","t":"n"},"m":"2"}},{"r":0,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":3,"ct":{"fa":"General","t":"n"},"m":"3"}},{"r":0,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":0,"ct":{"fa":"General","t":"n"},"m":"0","f":"=Formula!D3+Formula!D4"}},{"r":0,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":0,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":0,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":0,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":0,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":0,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":0,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":0,"v":{"v":"Background","ct":{"fa":"General","t":"g"},"m":"Background","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":2,"v":{"bg":"rgb(30, 144, 255)","bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":4,"v":{"bg":"rgb(0, 255, 0)","bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":1,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":2,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":0,"v":{"v":"Border","ct":{"fa":"General","t":"g"},"m":"Border","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":3,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":4,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"ct":{"fa":"General","t":"inlineStr","s":[{"ff":"Arial","fc":"rgb(255, 0, 0)","fs":12,"cl":0,"un":0,"bl":0,"it":0,"v":"Inline"},{"ff":"Arial","fc":"#000000","fs":12,"cl":0,"un":0,"bl":0,"it":0,"v":" "},{"ff":"Arial","fc":"#000000","fs":16,"cl":1,"un":0,"bl":0,"it":1,"v":"Style"},{"ff":"Arial","fc":"#000000","fs":12,"cl":0,"un":0,"bl":0,"it":0,"v":" "},{"ff":"Arial","fc":"#000000","fs":12,"cl":0,"un":0,"bl":1,"it":0,"v":"Cell"}]}}},{"r":5,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":5,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":6,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":7,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":8,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":9,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":10,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":11,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":12,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":13,"c":5,"rs":3,"cs":1}}},{"r":13,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":13,"c":7,"rs":3,"cs":2}}},{"r":13,"c":8,"v":{"mc":{"r":13,"c":7}}},{"r":13,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":13,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":14,"c":0,"v":{"v":"Span","ct":{"fa":"General","t":"g"},"m":"Span","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":14,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":14,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":14,"c":2,"rs":1,"cs":2}}},{"r":14,"c":3,"v":{"mc":{"r":14,"c":2}}},{"r":14,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":14,"c":5,"v":{"mc":{"r":13,"c":5}}},{"r":14,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":14,"c":7,"v":{"mc":{"r":13,"c":7}}},{"r":14,"c":8,"v":{"mc":{"r":13,"c":7}}},{"r":14,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":14,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":5,"v":{"mc":{"r":13,"c":5}}},{"r":15,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":7,"v":{"mc":{"r":13,"c":7}}},{"r":15,"c":8,"v":{"mc":{"r":13,"c":7}}},{"r":15,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":15,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":15,"c":10,"rs":4,"cs":3}}},{"r":15,"c":11,"v":{"mc":{"r":15,"c":10}}},{"r":15,"c":12,"v":{"mc":{"r":15,"c":10}}},{"r":16,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":16,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":15,"c":10}}},{"r":16,"c":11,"v":{"mc":{"r":15,"c":10}}},{"r":16,"c":12,"v":{"mc":{"r":15,"c":10}}},{"r":17,"c":0,"v":{"v":"Font","ct":{"fa":"General","t":"g"},"m":"Font","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":17,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":17,"c":2,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":"11","fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":17,"c":3,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":13,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":17,"c":4,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":9,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":17,"c":5,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":13,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":17,"c":6,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":"rgb(255, 215, 0)","bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":17,"c":7,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(67, 110, 238)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":17,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":17,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":17,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":15,"c":10}}},{"r":17,"c":11,"v":{"mc":{"r":15,"c":10}}},{"r":17,"c":12,"v":{"mc":{"r":15,"c":10}}},{"r":18,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":18,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"mc":{"r":15,"c":10}}},{"r":18,"c":11,"v":{"mc":{"r":15,"c":10}}},{"r":18,"c":12,"v":{"mc":{"r":15,"c":10}}},{"r":19,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":19,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":19,"c":2,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":"rgb(67, 110, 238)","bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(255, 215, 0)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":19,"c":3,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":1,"it":0,"ff":0,"fs":"10","fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":19,"c":4,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":1,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"Luckysheet"}},{"r":19,"c":5,"v":{"v":"Luckysheet","ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"cl":1,"m":"Luckysheet"}},{"r":19,"c":6,"v":{"ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"1","vt":"0","cl":1}},{"r":19,"c":7,"v":{"ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":19,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":19,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":19,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":20,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":21,"c":0,"v":{"v":"Format","ct":{"fa":"General","t":"g"},"m":"Format","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":21,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":21,"c":2,"v":{"ct":{"fa":"##0.00","t":"n"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"0.25","v":0.25}},{"r":21,"c":3,"v":{"ct":{"fa":"$#,##0.00_);($#,##0.00)","t":"n"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"$0.25 ","v":0.25}},{"r":21,"c":4,"v":{"ct":{"fa":"\"$\" 0.00","t":"n"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"$ 0.25","v":0.25}},{"r":21,"c":5,"v":{"ct":{"fa":"0%","t":"n"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"25%","v":0.25}},{"r":21,"c":6,"v":{"ct":{"fa":"# ?/?","t":"n"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":" 1/4","v":0.25}},{"r":21,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":21,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":21,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":21,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":22,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":2,"v":{"ct":{"fa":"0.00E+00","t":"n"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"m":"2.50E-01","v":0.25}},{"r":23,"c":3,"v":{"v":0.25,"ct":{"fa":"0.00","t":"n"},"m":"0.25","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":4,"v":{"ct":{"fa":"AM/PM h:mm:ss","t":"d"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":44032,"m":"AM 12:00:00"}},{"r":23,"c":5,"v":{"ct":{"fa":"yyyy/MM/dd","t":"d"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":44032,"m":"2020/07/20"}},{"r":23,"c":6,"v":{"ct":{"fa":"yyyy\"年\"M\"月\"d\"日\"","t":"d"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"v":44032,"m":"2020年7月20日"}},{"r":23,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":23,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":24,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":25,"c":0,"v":{"v":"Alignment","ct":{"fa":"General","t":"g"},"m":"Alignment","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":25,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":25,"c":2,"v":{"v":"Top Left","ct":{"fa":"General","t":"g"},"m":"Top Left","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"1","vt":"1"}},{"r":25,"c":3,"v":{"v":"Top Center","ct":{"fa":"General","t":"g"},"m":"Top Center","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"0","vt":"1"}},{"r":25,"c":4,"v":{"v":"Top Right","ct":{"fa":"General","t":"g"},"m":"Top Right","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"2","vt":"1"}},{"r":25,"c":5,"v":{"v":"Center Left","ct":{"fa":"General","t":"g"},"m":"Center Left","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"1","vt":"0"}},{"r":25,"c":6,"v":{"v":"Center Center","ct":{"fa":"General","t":"g"},"m":"Center Center","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"0","vt":"0"}},{"r":25,"c":7,"v":{"v":"Center Right","ct":{"fa":"General","t":"g"},"m":"Center Right","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"2","vt":"0"}},{"r":25,"c":8,"v":{"v":"Bottom Left","ct":{"fa":"General","t":"g"},"m":"Bottom Left","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"1","vt":"2"}},{"r":25,"c":9,"v":{"v":"Bottom Center","ct":{"fa":"General","t":"g"},"m":"Bottom Center","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"0","vt":"2"}},{"r":25,"c":10,"v":{"v":"Bottom Right","ct":{"fa":"General","t":"g"},"m":"Bottom Right","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":"2","vt":"2"}},{"r":26,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":26,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":0,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":2,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":3,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":27,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":0,"v":{"v":"WordWrap","ct":{"fa":"General","t":"g"},"m":"WordWrap","bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":1,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":2,"v":{"v":"ABCDEFGHIJKLMNOPQRSTUVWXYZ","ct":{"fa":"General","t":"g"},"m":"ABCDEFGHIJKLMNOPQRSTUVWXYZ","bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"tb":"2"}},{"r":28,"c":3,"v":{"ct":{"fa":"General","t":"g"},"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1,"tb":"1"}},{"r":28,"c":4,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":5,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":6,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":7,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":8,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":9,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":28,"c":10,"v":{"bg":null,"bl":0,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}},{"r":29,"c":0,"v":{"ct":{"fa":"General","t":"inlineStr","s":[{"ff":"\"times new roman\"","fc":"rgb(51, 51, 51)","fs":"12","cl":0,"un":0,"bl":1,"it":0,"v":"TextRotate"}]},"ht":"1","vt":"0"}},{"r":29,"c":2,"v":{"ct":{"fa":"General","t":"g"},"v":"I am Luckysheet text rotate style","m":"I am Luckysheet text rotate style","tr":"1","tb":"2","ht":"1","fs":"12"}},{"r":29,"c":3,"v":{"ct":{"fa":"General","t":"g"},"v":"I am Luckysheet text rotate style","m":"I am Luckysheet text rotate style","tr":"2","tb":"2","ht":"0","fs":"12"}},{"r":29,"c":4,"v":{"ct":{"fa":"General","t":"g"},"v":"I am Luckysheet text rotate style","m":"I am Luckysheet text rotate style","tr":"4","tb":"2","ht":"1","fs":"12","vt":"2"}},{"r":29,"c":5,"v":{"ct":{"fa":"General","t":"g"},"v":"I am Luckysheet text rotate style","m":"I am Luckysheet text rotate style","tr":"5","tb":"2","ht":"1","fs":"12"}},{"r":29,"c":6,"v":{"ct":{"fa":"General","t":"g"},"v":"I am Luckysheet text rotate style","m":"I am Luckysheet text rotate style","tr":"1","tb":"1","ht":"1","fs":"12","vt":"0"}},{"r":30,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"hidden1","m":"hidden1"}},{"r":31,"c":0,"v":{"m":"hidden2","ct":{"fa":"General","t":"g"},"v":"hidden2"}},{"r":33,"c":0,"v":{"ct":{"fa":"General","t":"g"},"bg":null,"bl":1,"it":0,"ff":0,"fs":11,"fc":"rgb(51, 51, 51)","ht":1,"vt":1}}], + "ch_width": 2361, + "rh_height": 936, + "luckysheet_select_save": [ + { + "left": 741, + "width": 138, + "top": 796, + "height": 19, + "left_move": 741, + "width_move": 138, + "top_move": 796, + "height_move": 19, + "row": [ + 33, + 33 + ], + "column": [ + 6, + 6 + ], + "row_focus": 33, + "column_focus": 6 + } + ], + "calcChain": [ + { + "r": 0, + "c": 3, + "index": "0", + "func": [ + true, + 3, + "=Formula!A1+Formula!B1" + ], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + } + ], + "scrollLeft": 0, + "scrollTop": 0 +} +// export default sheetCell \ No newline at end of file diff --git a/public/demoData/sheetChart.js b/public/demoData/sheetChart.js new file mode 100644 index 0000000..4d10493 --- /dev/null +++ b/public/demoData/sheetChart.js @@ -0,0 +1,4918 @@ +window.sheetChart = { + "name": "Chart", + "color": "", + "status": 0, + "order": 8, + "index": "Sheet_6az6nei65t1i_1596209937084", + "celldata": [{ + "r": 0, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 1, + "v": { + "v": "Mon", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Mon", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 2, + "v": { + "v": "Tues", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Tues", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 3, + "v": { + "v": "Wed", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Wed", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 4, + "v": { + "v": "Thur", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Thur", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 5, + "v": { + "v": "Fri", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fri", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 6, + "v": { + "v": "Sat", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sat", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 7, + "v": { + "v": "Sun", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sun", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 0, + "v": { + "v": "BUS", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "BUS", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 1, + "v": { + "v": 320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 2, + "v": { + "v": 302, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "302", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 3, + "v": { + "v": 301, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "301", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 4, + "v": { + "v": 334, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "334", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 5, + "v": { + "v": 390, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "390", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 6, + "v": { + "v": 330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 7, + "v": { + "v": 320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 0, + "v": { + "v": "UBER", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "UBER", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 1, + "v": { + "v": 120, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "120", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 2, + "v": { + "v": 132, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "132", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 3, + "v": { + "v": 101, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "101", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 4, + "v": { + "v": 134, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "134", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 5, + "v": { + "v": 90, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "90", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 6, + "v": { + "v": 230, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "230", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 7, + "v": { + "v": 210, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "210", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 0, + "v": { + "v": "TAXI", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "TAXI", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 1, + "v": { + "v": 220, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "220", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 2, + "v": { + "v": 182, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "182", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 3, + "v": { + "v": 191, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "191", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 4, + "v": { + "v": 234, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "234", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 5, + "v": { + "v": 290, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "290", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 6, + "v": { + "v": 330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 7, + "v": { + "v": 310, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "310", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 0, + "v": { + "v": "SUBWAY", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "SUBWAY", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 1, + "v": { + "v": 820, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "820", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 2, + "v": { + "v": 832, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "832", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 3, + "v": { + "v": 901, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "901", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 4, + "v": { + "v": 934, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "934", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 5, + "v": { + "v": 1290, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1290", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 6, + "v": { + "v": 1330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 7, + "v": { + "v": 1320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 0, + "v": { + "v": "country", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "country", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 1, + "v": { + "v": "Population", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Population", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 0, + "v": { + "v": "India", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "India", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 1, + "v": { + "v": 1354051854, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1354051854", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 24, + "c": 0, + "v": { + "v": "Pakistan", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Pakistan", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 24, + "c": 1, + "v": { + "v": 200813818, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "200813818", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 0, + "v": { + "v": "China", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "China", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 1, + "v": { + "v": 1415045928, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1415045928", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 26, + "c": 0, + "v": { + "v": "Japan", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Japan", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 26, + "c": 1, + "v": { + "v": 127185332, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "127185332", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 27, + "c": 0, + "v": { + "v": "South-Eastern", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "South-Eastern", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 27, + "c": 1, + "v": { + "v": 655636576, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "655636576", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 28, + "c": 0, + "v": { + "v": "Western", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Western", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 28, + "c": 1, + "v": { + "v": 272298399, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "272298399", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 29, + "c": 0, + "v": { + "v": "Eastern", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Eastern", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 29, + "c": 1, + "v": { + "v": 433643132, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "433643132", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 30, + "c": 0, + "v": { + "v": "Western", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Western", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 30, + "c": 1, + "v": { + "v": 381980688, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "381980688", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 31, + "c": 0, + "v": { + "v": "Northern", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Northern", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 31, + "c": 1, + "v": { + "v": 237784677, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "237784677", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 32, + "c": 0, + "v": { + "v": "Others", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Others", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 32, + "c": 1, + "v": { + "v": 234512021, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "234512021", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 33, + "c": 0, + "v": { + "v": "Europe", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Europe", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 33, + "c": 1, + "v": { + "v": 742648010, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "742648010", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }], + "row": 84, + "column": 60, + "config": { + "merge": {}, + "rowlen": { + "0": 20, + "1": 20, + "2": 20, + "3": 20, + "4": 20, + "22": 20, + "23": 20, + "24": 20, + "25": 20, + "26": 20, + "27": 20, + "28": 20, + "29": 20, + "30": 20, + "31": 20, + "32": 20, + "33": 20 + } + }, + "pivotTable": null, + "isPivotTable": false, + "ch_width": 4560, + "rh_height": 1807, + "luckysheet_select_save": [{ + "left": 0, + "width": 73, + "top": 445, + "height": 20, + "left_move": 0, + "width_move": 147, + "top_move": 445, + "height_move": 251, + "row": [22, 33], + "column": [0, 1], + "row_focus": 22, + "column_focus": 0 + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 185, + "chart": [{ + "chart_id": "chart_p145W6i73otw_1596209943446", + "width": 400, + "height": 250, + "left": 20, + "top": 120, + "sheetIndex": "Sheet_6az6nei65t1i_1596209937084", + "needRangeShow": true, + "chartOptions": { + "chart_id": "chart_p145W6i73otw_1596209943446", + "chartAllType": "echarts|column|default", + "chartPro": "echarts", + "chartType": "pie", + "chartStyle": "default", + "chartData": [ + [{ + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Mon", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Mon", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Tues", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Tues", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Wed", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Wed", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Thur", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Thur", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Fri", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fri", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Sat", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sat", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Sun", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sun", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "BUS", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "BUS", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 302, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "302", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 301, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "301", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 334, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "334", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 390, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "390", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "UBER", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "UBER", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 120, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "120", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 132, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "132", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 101, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "101", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 134, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "134", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 90, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "90", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 230, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "230", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 210, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "210", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "TAXI", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "TAXI", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 220, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "220", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 182, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "182", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 191, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "191", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 234, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "234", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 290, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "290", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 310, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "310", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "SUBWAY", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "SUBWAY", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 820, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "820", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 832, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "832", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 901, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "901", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 934, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "934", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1290, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1290", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }] + ], + "rangeArray": [{ + "row": [0, 4], + "column": [0, 7] + }], + "rangeTxt": "A1:H5", + "rangeColCheck": { + "exits": true, + "range": [0, 0] + }, + "rangeRowCheck": { + "exits": true, + "range": [0, 0] + }, + "rangeConfigCheck": false, + "rangeSplitArray": { + "title": { + "row": [0, 0], + "column": [0, 0] + }, + "rowtitle": { + "row": [0, 0], + "column": [1, 7] + }, + "coltitle": { + "row": [1, 4], + "column": [0, 0] + }, + "content": { + "row": [1, 4], + "column": [1, 7] + }, + "type": "normal", + "range": { + "row": [0, 4], + "column": [0, 7] + } + }, + "chartDataCache": { + "label": ["Mon", "Tues", "Wed", "Thur", "Fri", "Sat", "Sun"], + "xAxis": ["BUS", "UBER", "TAXI", "SUBWAY"], + "series": [ + [320, 302, 301, 334, 390, 330, 320], + [120, 132, 101, 134, 90, 230, 210], + [220, 182, 191, 234, 290, 330, 310], + [820, 832, 901, 934, 1290, 1330, 1320] + ], + "series_tpye": { + "0": "num", + "1": "num", + "2": "num", + "3": "num", + "4": "num", + "5": "num", + "6": "num" + } + }, + "chartDataSeriesOrder": { + "0": 0, + "1": 1, + "2": 2, + "3": 3, + "4": 4, + "5": 5, + "6": 6, + "length": 7 + }, + "defaultOption": { + "title": { + "show": false, + "text": "默认标题", + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "position": { + "value": "left-top", + "offsetX": 40, + "offsetY": 50 + } + }, + "subtitle": { + "show": false, + "text": "", + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "distance": { + "value": "auto", + "cusGap": 40 + } + }, + "config": { + "color": "transparent", + "fontFamily": "Sans-serif", + "grid": { + "value": "normal", + "top": 5, + "left": 10, + "right": 20, + "bottom": 10 + } + }, + "legend": { + "show": true, + "selectMode": "multiple", + "selected": [{ + "seriesName": "衣服", + "isShow": true + }, { + "seriesName": "食材", + "isShow": true + }, { + "seriesName": "图书", + "isShow": true + }], + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "position": { + "value": "left-top", + "offsetX": 40, + "offsetY": 50, + "direction": "horizontal" + }, + "width": { + "value": "auto", + "cusSize": 25 + }, + "height": { + "value": "auto", + "cusSize": 14 + }, + "distance": { + "value": "auto", + "cusGap": 10 + }, + "itemGap": 10, + "data": ["Mon", "Tues", "Wed", "Thur", "Fri", "Sat", "Sun"] + }, + "tooltip": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "backgroundColor": "rgba(50,50,50,0.7)", + "triggerOn": "mousemove", + "triggerType": "item", + "axisPointer": { + "type": "line", + "style": { + "color": "#555", + "width": "normal", + "type": "solid" + } + }, + "format": [{ + "seriesName": "衣服", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, { + "seriesName": "食材", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, { + "seriesName": "图书", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }], + "position": "auto" + }, + "axis": { + "axisType": "xAxisDown", + "xAxisUp": { + "show": false, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示X轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "prefix": "", + "suffix": "", + "optimize": 0, + "distance": 0, + "min": "auto", + "max": "auto", + "ratio": 1, + "digit": "auto" + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "axisLine": { + "onZero": false + } + }, + "xAxisDown": { + "show": true, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示X轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "prefix": "", + "suffix": "", + "optimize": 0, + "distance": 0, + "min": null, + "max": null, + "ratio": 1, + "digit": "auto" + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "data": ["BUS", "UBER", "TAXI", "SUBWAY"], + "type": "category" + }, + "yAxisLeft": { + "show": true, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示Y轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "formatter": { + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, + "split": 5, + "min": null, + "max": null, + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto", + "distance": 0 + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "type": "value" + }, + "yAxisRight": { + "show": false, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示Y轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "formatter": { + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, + "split": 5, + "min": null, + "max": null, + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto", + "distance": 0 + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + } + } + }, + "series": [{ + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [320, 120, 220, 820], + "type": "bar", + "name": "Mon", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [302, 132, 182, 832], + "type": "bar", + "name": "Tues", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [301, 101, 191, 901], + "type": "bar", + "name": "Wed", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [334, 134, 234, 934], + "type": "bar", + "name": "Thur", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [390, 90, 290, 1290], + "type": "bar", + "name": "Fri", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [330, 230, 330, 1330], + "type": "bar", + "name": "Sat", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [320, 210, 310, 1320], + "type": "bar", + "name": "Sun", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }], + "seriesData": [ + [320, 120, 220, 820], + [302, 132, 182, 832], + [301, 101, 191, 901], + [334, 134, 234, 934], + [390, 90, 290, 1290], + [330, 230, 330, 1330], + [320, 210, 310, 1320] + ] + } + } + }, { + "chart_id": "chart_lpiiaae1543z_1596209948642", + "width": 400, + "height": 250, + "left": 500, + "top": 120, + "sheetIndex": "Sheet_6az6nei65t1i_1596209937084", + "needRangeShow": false, + "chartOptions": { + "chart_id": "chart_lpiiaae1543z_1596209948642", + "chartAllType": "echarts|line|default", + "chartPro": "echarts", + "chartType": "pie", + "chartStyle": "default", + "chartData": [ + [{ + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Mon", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Mon", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Tues", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Tues", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Wed", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Wed", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Thur", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Thur", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Fri", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fri", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Sat", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sat", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Sun", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sun", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "BUS", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "BUS", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 302, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "302", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 301, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "301", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 334, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "334", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 390, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "390", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "UBER", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "UBER", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 120, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "120", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 132, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "132", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 101, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "101", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 134, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "134", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 90, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "90", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 230, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "230", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 210, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "210", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "TAXI", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "TAXI", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 220, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "220", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 182, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "182", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 191, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "191", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 234, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "234", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 290, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "290", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 310, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "310", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "SUBWAY", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "SUBWAY", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 820, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "820", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 832, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "832", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 901, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "901", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 934, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "934", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1290, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1290", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1330, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1330", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1320, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1320", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }] + ], + "rangeArray": [{ + "left": 0, + "width": 73, + "top": 0, + "height": 20, + "left_move": 0, + "width_move": 591, + "top_move": 0, + "height_move": 104, + "row": [0, 4], + "column": [0, 7], + "row_focus": 0, + "column_focus": 0 + }], + "rangeTxt": "A1:H5", + "rangeColCheck": { + "exits": true, + "range": [0, 0] + }, + "rangeRowCheck": { + "exits": true, + "range": [0, 0] + }, + "rangeConfigCheck": false, + "rangeSplitArray": { + "title": { + "row": [0, 0], + "column": [0, 0] + }, + "rowtitle": { + "row": [0, 0], + "column": [1, 7] + }, + "coltitle": { + "row": [1, 4], + "column": [0, 0] + }, + "content": { + "row": [1, 4], + "column": [1, 7] + }, + "type": "normal", + "range": { + "left": 0, + "width": 73, + "top": 0, + "height": 20, + "left_move": 0, + "width_move": 591, + "top_move": 0, + "height_move": 104, + "row": [0, 4], + "column": [0, 7], + "row_focus": 0, + "column_focus": 0 + } + }, + "chartDataCache": { + "label": ["Mon", "Tues", "Wed", "Thur", "Fri", "Sat", "Sun"], + "xAxis": ["BUS", "UBER", "TAXI", "SUBWAY"], + "series": [ + [320, 302, 301, 334, 390, 330, 320], + [120, 132, 101, 134, 90, 230, 210], + [220, 182, 191, 234, 290, 330, 310], + [820, 832, 901, 934, 1290, 1330, 1320] + ], + "series_tpye": { + "0": "num", + "1": "num", + "2": "num", + "3": "num", + "4": "num", + "5": "num", + "6": "num" + } + }, + "chartDataSeriesOrder": { + "0": 0, + "1": 1, + "2": 2, + "3": 3, + "4": 4, + "5": 5, + "6": 6, + "length": 7 + }, + "defaultOption": { + "title": { + "show": false, + "text": "默认标题", + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "position": { + "value": "left-top", + "offsetX": 40, + "offsetY": 50 + } + }, + "subtitle": { + "show": false, + "text": "", + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "distance": { + "value": "auto", + "cusGap": 40 + } + }, + "config": { + "color": "transparent", + "fontFamily": "Sans-serif", + "grid": { + "value": "normal", + "top": 5, + "left": 10, + "right": 20, + "bottom": 10 + } + }, + "legend": { + "show": true, + "selectMode": "multiple", + "selected": [{ + "seriesName": "衣服", + "isShow": true + }, { + "seriesName": "食材", + "isShow": true + }, { + "seriesName": "图书", + "isShow": true + }], + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "position": { + "value": "left-top", + "offsetX": 40, + "offsetY": 50, + "direction": "horizontal" + }, + "width": { + "value": "auto", + "cusSize": 25 + }, + "height": { + "value": "auto", + "cusSize": 14 + }, + "distance": { + "value": "auto", + "cusGap": 10 + }, + "itemGap": 10, + "data": ["Mon", "Tues", "Wed", "Thur", "Fri", "Sat", "Sun"] + }, + "tooltip": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "backgroundColor": "rgba(50,50,50,0.7)", + "triggerOn": "mousemove", + "triggerType": "item", + "axisPointer": { + "type": "line", + "style": { + "color": "#555", + "width": "normal", + "type": "solid" + } + }, + "format": [{ + "seriesName": "衣服", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, { + "seriesName": "食材", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, { + "seriesName": "图书", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }], + "position": "auto" + }, + "axis": { + "axisType": "xAxisDown", + "xAxisUp": { + "show": false, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示X轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "prefix": "", + "suffix": "", + "optimize": 0, + "distance": 0, + "min": "auto", + "max": "auto", + "ratio": 1, + "digit": "auto" + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "axisLine": { + "onZero": false + } + }, + "xAxisDown": { + "show": true, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示X轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "prefix": "", + "suffix": "", + "optimize": 0, + "distance": 0, + "min": null, + "max": null, + "ratio": 1, + "digit": "auto" + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "data": ["BUS", "UBER", "TAXI", "SUBWAY"], + "type": "category" + }, + "yAxisLeft": { + "show": true, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示Y轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "formatter": { + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, + "split": 5, + "min": null, + "max": null, + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto", + "distance": 0 + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "type": "value" + }, + "yAxisRight": { + "show": false, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示Y轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "formatter": { + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, + "split": 5, + "min": null, + "max": null, + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto", + "distance": 0 + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + } + } + }, + "series": [{ + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [320, 120, 220, 820], + "type": "line", + "name": "Mon", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [302, 132, 182, 832], + "type": "line", + "name": "Tues", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [301, 101, 191, 901], + "type": "line", + "name": "Wed", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [334, 134, 234, 934], + "type": "line", + "name": "Thur", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [390, 90, 290, 1290], + "type": "line", + "name": "Fri", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [330, 230, 330, 1330], + "type": "line", + "name": "Sat", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }, { + "itemStyle": { + "color": null, + "borderColor": "#000", + "borderType": "solid", + "borderWidth": 1 + }, + "lineStyle": { + "color": null, + "width": 1, + "type": "solid" + }, + "data": [320, 210, 310, 1320], + "type": "line", + "name": "Sun", + "markPoint": { + "data": [] + }, + "markLine": { + "data": [] + }, + "markArea": { + "data": [] + } + }], + "seriesData": [ + [320, 120, 220, 820], + [302, 132, 182, 832], + [301, 101, 191, 901], + [334, 134, 234, 934], + [390, 90, 290, 1290], + [330, 230, 330, 1330], + [320, 210, 310, 1320] + ] + } + } + }, { + "chart_id": "chart_ei765e0iKkoe_1596210011748", + "width": 600, + "height": 250, + "left": 150, + "top": 450, + "sheetIndex": "Sheet_6az6nei65t1i_1596209937084", + "needRangeShow": false, + "chartOptions": { + "chart_id": "chart_ei765e0iKkoe_1596210011748", + "chartAllType": "echarts|pie|default", + "chartPro": "echarts", + "chartType": "pie", + "chartStyle": "default", + "chartData": [ + [{ + "v": "country", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "country", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": "Population", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Population", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "India", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "India", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1354051854, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1354051854", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Pakistan", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Pakistan", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 200813818, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "200813818", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "China", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "China", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 1415045928, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1415045928", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Japan", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Japan", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 127185332, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "127185332", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "South-Eastern", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "South-Eastern", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 655636576, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "655636576", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Western", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Western", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 272298399, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "272298399", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Eastern", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Eastern", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 433643132, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "433643132", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Western", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Western", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 381980688, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "381980688", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Northern", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Northern", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 237784677, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "237784677", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Others", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Others", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 234512021, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "234512021", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }], + [{ + "v": "Europe", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Europe", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }, { + "v": 742648010, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "742648010", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + }] + ], + "rangeArray": [{ + "left": 0, + "width": 73, + "top": 445, + "height": 20, + "left_move": 0, + "width_move": 147, + "top_move": 445, + "height_move": 251, + "row": [22, 33], + "column": [0, 1], + "row_focus": 22, + "column_focus": 0 + }], + "rangeTxt": "A23:B34", + "rangeColCheck": { + "exits": true, + "range": [0, 0] + }, + "rangeRowCheck": { + "exits": true, + "range": [0, 0] + }, + "rangeConfigCheck": false, + "rangeSplitArray": { + "title": { + "row": [0, 0], + "column": [0, 0] + }, + "rowtitle": { + "row": [0, 0], + "column": [1, 1] + }, + "coltitle": { + "row": [1, 11], + "column": [0, 0] + }, + "content": { + "row": [1, 11], + "column": [1, 1] + }, + "type": "normal", + "range": { + "left": 0, + "width": 73, + "top": 445, + "height": 20, + "left_move": 0, + "width_move": 147, + "top_move": 445, + "height_move": 251, + "row": [22, 33], + "column": [0, 1], + "row_focus": 22, + "column_focus": 0 + } + }, + "chartDataCache": { + "label": ["Population"], + "xAxis": ["India", "Pakistan", "China", "Japan", "South-Eastern", "Western", "Eastern", "Western", "Northern", "Others", "Europe"], + "series": [ + [1354051854], + [200813818], + [1415045928], + [127185332], + [655636576], + [272298399], + [433643132], + [381980688], + [237784677], + [234512021], + [742648010] + ], + "series_tpye": { + "0": "num" + } + }, + "chartDataSeriesOrder": { + "0": 0, + "length": 1 + }, + "defaultOption": { + "title": { + "show": false, + "text": "默认标题", + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "position": { + "value": "left-top", + "offsetX": 40, + "offsetY": 50 + } + }, + "subtitle": { + "show": false, + "text": "", + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "distance": { + "value": "auto", + "cusGap": 40 + } + }, + "config": { + "color": "transparent", + "fontFamily": "Sans-serif", + "grid": { + "value": "normal", + "top": 5, + "left": 10, + "right": 20, + "bottom": 10 + } + }, + "legend": { + "show": true, + "selectMode": "multiple", + "selected": [{ + "seriesName": "衣服", + "isShow": true + }, { + "seriesName": "食材", + "isShow": true + }, { + "seriesName": "图书", + "isShow": true + }], + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "position": { + "value": "left-top", + "offsetX": 40, + "offsetY": 50, + "direction": "horizontal" + }, + "width": { + "value": "auto", + "cusSize": 25 + }, + "height": { + "value": "auto", + "cusSize": 14 + }, + "distance": { + "value": "auto", + "cusGap": 10 + }, + "itemGap": 10, + "data": [{ + "name": "India", + "textStyle": { + "color": null + }, + "value": 1354051854 + }, { + "name": "Pakistan", + "textStyle": { + "color": null + }, + "value": 200813818 + }, { + "name": "China", + "textStyle": { + "color": null + }, + "value": 1415045928 + }, { + "name": "Japan", + "textStyle": { + "color": null + }, + "value": 127185332 + }, { + "name": "South-Eastern", + "textStyle": { + "color": null + }, + "value": 655636576 + }, { + "name": "Western", + "textStyle": { + "color": null + }, + "value": 272298399 + }, { + "name": "Eastern", + "textStyle": { + "color": null + }, + "value": 433643132 + }, { + "name": "Western", + "textStyle": { + "color": null + }, + "value": 381980688 + }, { + "name": "Northern", + "textStyle": { + "color": null + }, + "value": 237784677 + }, { + "name": "Others", + "textStyle": { + "color": null + }, + "value": 234512021 + }, { + "name": "Europe", + "textStyle": { + "color": null + }, + "value": 742648010 + }] + }, + "tooltip": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "backgroundColor": "rgba(50,50,50,0.7)", + "triggerOn": "mousemove", + "triggerType": "item", + "axisPointer": { + "type": "line", + "style": { + "color": "#555", + "width": "normal", + "type": "solid" + } + }, + "format": [{ + "seriesName": "衣服", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, { + "seriesName": "食材", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, { + "seriesName": "图书", + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }], + "position": "auto" + }, + "axis": { + "axisType": "xAxisDown", + "xAxisUp": { + "show": false, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示X轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "prefix": "", + "suffix": "", + "optimize": 0, + "distance": 0, + "min": "auto", + "max": "auto", + "ratio": 1, + "digit": "auto" + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "axisLine": { + "onZero": false + } + }, + "xAxisDown": { + "show": true, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示X轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "prefix": "", + "suffix": "", + "optimize": 0, + "distance": 0, + "min": null, + "max": null, + "ratio": 1, + "digit": "auto" + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "data": ["India", "Pakistan", "China", "Japan", "South-Eastern", "Western", "Eastern", "Western", "Northern", "Others", "Europe"], + "type": "category" + }, + "yAxisLeft": { + "show": true, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示Y轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "formatter": { + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, + "split": 5, + "min": null, + "max": null, + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto", + "distance": 0 + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + }, + "type": "value" + }, + "yAxisRight": { + "show": false, + "title": { + "showTitle": false, + "text": "", + "nameGap": 15, + "rotate": 0, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "fzPosition": "end" + }, + "name": "显示Y轴", + "inverse": false, + "tickLine": { + "show": true, + "width": 1, + "color": "auto" + }, + "tick": { + "show": true, + "position": "outside", + "length": 5, + "width": 1, + "color": "auto" + }, + "tickLabel": { + "show": true, + "label": { + "fontSize": 12, + "color": "#333", + "fontFamily": "sans-serif", + "fontGroup": [], + "cusFontSize": 12 + }, + "rotate": 0, + "formatter": { + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto" + }, + "split": 5, + "min": null, + "max": null, + "prefix": "", + "suffix": "", + "ratio": 1, + "digit": "auto", + "distance": 0 + }, + "netLine": { + "show": false, + "width": 1, + "type": "solid", + "color": "auto", + "interval": { + "value": "auto", + "cusNumber": 0 + } + }, + "netArea": { + "show": false, + "interval": { + "value": "auto", + "cusNumber": 0 + }, + "colorOne": "auto", + "colorTwo": "auto" + } + } + }, + "series": [{ + "name": "Population", + "type": "pie", + "radius": ["0%", "75%"], + "data": [{ + "value": 1354051854, + "name": "India", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 200813818, + "name": "Pakistan", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 1415045928, + "name": "China", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 127185332, + "name": "Japan", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 655636576, + "name": "South-Eastern", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 272298399, + "name": "Western", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 433643132, + "name": "Eastern", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 381980688, + "name": "Western", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 237784677, + "name": "Northern", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 234512021, + "name": "Others", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }, { + "value": 742648010, + "name": "Europe", + "label": {}, + "labelLine": { + "lineStyle": {} + }, + "itemStyle": {} + }], + "dataLabels": {}, + "seLabel": {}, + "seLine": {}, + "roseType": false + }], + "seriesData": [ + [1354051854, 200813818, 1415045928, 127185332, 655636576, 272298399, 433643132, 381980688, 237784677, 234512021, 742648010] + ] + } + } + }] +} + +// export default sheetChart \ No newline at end of file diff --git a/public/demoData/sheetComment.js b/public/demoData/sheetComment.js new file mode 100644 index 0000000..326d9a9 --- /dev/null +++ b/public/demoData/sheetComment.js @@ -0,0 +1,67 @@ +window.sheetComment = { + "name": "Comment", + "color": "", + "config": { + "columnlen": { + "2": 102 + } + }, + "index": "5", + "chart": [], + "status": 0, + "order": "5", + "column": 18, + "row": 36, + "celldata": [{ + "r": 2, + "c": 2, + "v": { + "m": "HoverShown", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "HoverShown", + "bl": 1, + "ps": { + "left": null, + "top": null, + "width": null, + "height": null, + "value": "Hello world!", + "isshow": false + } + } + }, { + "r": 7, + "c": 2, + "v": { + "m": "Size", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Size", + "bl": 1, + "ps": { + "left": null, + "top": null, + "width": null, + "height": null, + "value": "Hello,world!", + "isshow": true + } + } + }], + "ch_width": 4748, + "rh_height": 1790, + "luckysheet_select_save": [{ + "row": [0, 0], + "column": [0, 0] + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 0 +} + +// export default sheetComment; \ No newline at end of file diff --git a/public/demoData/sheetConditionFormat.js b/public/demoData/sheetConditionFormat.js new file mode 100644 index 0000000..f46bbb7 --- /dev/null +++ b/public/demoData/sheetConditionFormat.js @@ -0,0 +1,6568 @@ +window.sheetConditionFormat = { + "name": "Conditional Format", + "color": "", + "zoomRatio":1, + "config": { + "merge": { + "8_10": { + "rs": 1, + "cs": 2, + "r": 8, + "c": 10 + }, + "18_2": { + "rs": 1, + "cs": 10, + "r": 18, + "c": 2 + }, + "24_2": { + "rs": 1, + "cs": 10, + "r": 24, + "c": 2 + }, + "2_10": { + "rs": 1, + "cs": 2, + "r": 2, + "c": 10 + }, + "3_10": { + "rs": 1, + "cs": 2, + "r": 3, + "c": 10 + }, + "6_10": { + "rs": 1, + "cs": 2, + "r": 6, + "c": 10 + }, + "7_10": { + "rs": 1, + "cs": 2, + "r": 7, + "c": 10 + }, + "4_10": { + "rs": 1, + "cs": 2, + "r": 4, + "c": 10 + }, + "5_10": { + "rs": 1, + "cs": 2, + "r": 5, + "c": 10 + }, + "9_10": { + "rs": 1, + "cs": 2, + "r": 9, + "c": 10 + }, + "10_10": { + "rs": 1, + "cs": 2, + "r": 10, + "c": 10 + }, + "11_10": { + "rs": 1, + "cs": 2, + "r": 11, + "c": 10 + }, + "12_10": { + "rs": 1, + "cs": 2, + "r": 12, + "c": 10 + }, + "13_10": { + "rs": 1, + "cs": 2, + "r": 13, + "c": 10 + }, + "14_10": { + "rs": 1, + "cs": 2, + "r": 14, + "c": 10 + }, + "15_10": { + "rs": 1, + "cs": 2, + "r": 15, + "c": 10 + }, + "1_10": { + "r": 1, + "c": 10, + "rs": 1, + "cs": 2 + } + }, + "rowlen": { + "0": 20, + "1": 20, + "2": 20, + "3": 20, + "4": 20, + "5": 20, + "6": 20, + "7": 20, + "8": 20, + "9": 20, + "10": 20, + "11": 20, + "12": 20, + "13": 20, + "14": 20, + "15": 20, + "16": 20, + "17": 20, + "18": 20, + "19": 20, + "20": 20, + "21": 20, + "22": 20, + "23": 20, + "24": 20, + "25": 20, + "26": 20, + "27": 20, + "28": 20, + "29": 20 + }, + "columnlen": { + "0": 30, + "1": 30, + "2": 86, + "3": 85, + "4": 92, + "5": 93, + "6": 100, + "7": 100, + "8": 99, + "9": 90, + "10": 96, + "11": 96 + } + }, + "index": "2", + "chart": [], + "status": 0, + "order": "2", + "column": 18, + "row": 36, + "celldata": [{ + "r": 0, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 2, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 4, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 6, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 8, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 10, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 0, + "c": 11, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 2, + "v": { + "v": "Cell Value", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Cell Value", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": 1 + } + }, { + "r": 1, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 4, + "v": { + "v": "Specific Text", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Specific Text", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 6, + "v": { + "v": "Unique", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Unique", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 8, + "v": { + "v": "Duplicate", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Duplicate", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 1, + "c": 10, + "v": { + "v": "Date Occurring", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Date Occurring", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0", + "mc": { + "r": 1, + "c": 10, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 1, + "c": 11, + "v": { + "mc": { + "r": 1, + "c": 10 + } + } + }, { + "r": 2, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 2, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 2, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 4, + "v": { + "v": "test", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "test", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 2, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 6, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 2, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 8, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 2, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 10, + "v": { + "v": 44033.77921296296, + "ct": { + "fa": "yyyy-MM-dd hh:mm", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "0", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 2, + "c": 10 + }, + "m": "2020-07-21 18:42" + } + }, { + "r": 2, + "c": 11, + "v": { + "mc": { + "r": 2, + "c": 10 + }, + "ht": "0", + "vt": "0", + "fs": "10" + } + }, { + "r": 3, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 2, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 3, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 4, + "v": { + "v": "bad", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "bad", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 3, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 6, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 3, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 8, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 3, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 10, + "v": { + "v": 44034.77921296296, + "ct": { + "fa": "yyyy-MM-dd hh:mm", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "0", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 3, + "c": 10 + }, + "m": "2020-07-22 18:42" + } + }, { + "r": 3, + "c": 11, + "v": { + "mc": { + "r": 3, + "c": 10 + }, + "ht": "0", + "vt": "0", + "fs": "10" + } + }, { + "r": 4, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 2, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 4, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 4, + "v": { + "v": "good", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "good", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 4, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 6, + "v": { + "v": 11, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "11", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 4, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 8, + "v": { + "v": 11, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "11", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 4, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 10, + "v": { + "v": 44039.77921296296, + "ct": { + "fa": "yyyy-MM-dd hh:mm", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "0", + "vt": "0", + "m": "2020-07-27 18:42", + "mc": { + "rs": 1, + "cs": 2, + "r": 4, + "c": 10 + } + } + }, { + "r": 4, + "c": 11, + "v": { + "mc": { + "r": 4, + "c": 10 + } + } + }, { + "r": 5, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 5, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 5, + "c": 2, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 5, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 5, + "c": 4, + "v": { + "v": "testing", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "testing", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 5, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 5, + "c": 6, + "v": { + "v": 5, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "5", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 5, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 5, + "c": 8, + "v": { + "v": 5, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "5", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 5, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 5, + "c": 10, + "v": { + "v": 44040.77921296296, + "ct": { + "fa": "yyyy-MM-dd hh:mm", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "0", + "vt": "0", + "m": "2020-07-28 18:42", + "mc": { + "rs": 1, + "cs": 2, + "r": 5, + "c": 10 + } + } + }, { + "r": 5, + "c": 11, + "v": { + "mc": { + "r": 5, + "c": 10 + } + } + }, { + "r": 6, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 6, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 6, + "c": 2, + "v": { + "v": 4, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "4", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 6, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 6, + "c": 4, + "v": { + "v": "tested", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "tested", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 6, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 6, + "c": 6, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 6, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 6, + "c": 8, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 6, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 6, + "c": 10, + "v": { + "v": 44047.77921296296, + "ct": { + "fa": "yyyy-MM-dd hh:mm", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "0", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 6, + "c": 10 + }, + "m": "2020-08-04 18:42" + } + }, { + "r": 6, + "c": 11, + "v": { + "mc": { + "r": 6, + "c": 10 + }, + "ht": "0", + "vt": "0", + "fs": "10" + } + }, { + "r": 7, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 2, + "v": { + "v": 5, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "5", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 7, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 4, + "v": { + "v": "general", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "general", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 7, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 6, + "v": { + "v": 120, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "120", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 7, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 8, + "v": { + "v": 120, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "120", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 7, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 10, + "v": { + "v": 44055.77921296296, + "ct": { + "fa": "yyyy-MM-dd hh:mm", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "0", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 7, + "c": 10 + }, + "m": "2020-08-12 18:42" + } + }, { + "r": 7, + "c": 11, + "v": { + "mc": { + "r": 7, + "c": 10 + }, + "ht": "0", + "vt": "0", + "fs": "10" + } + }, { + "r": 8, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 2, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": 1 + } + }, { + "r": 8, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 4, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 6, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "ct": { + "fa": "General", + "t": "n" + } + } + }, { + "r": 8, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 8, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 10, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "rs": 1, + "cs": 2, + "r": 8, + "c": 10 + } + } + }, { + "r": 8, + "c": 11, + "v": { + "mc": { + "r": 8, + "c": 10 + } + } + }, { + "r": 9, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 2, + "v": { + "v": "Top/Bottom", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Top/Bottom", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 9, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 4, + "v": { + "v": "Average", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Average", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 9, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 6, + "v": { + "v": "2-Color Scale", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "2-Color Scale", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 9, + "c": 8, + "v": { + "v": "3-Color Scale", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "3-Color Scale", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0" + } + }, { + "r": 9, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 10, + "v": { + "v": "Data Bar", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Data Bar", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 9, + "c": 10 + } + } + }, { + "r": 9, + "c": 11, + "v": { + "mc": { + "r": 9, + "c": 10 + } + } + }, { + "r": 10, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 2, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 10, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 4, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 10, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 6, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 10, + "c": 8, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 10, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 10, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 10, + "c": 10 + } + } + }, { + "r": 10, + "c": 11, + "v": { + "mc": { + "r": 10, + "c": 10 + } + } + }, { + "r": 11, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 11, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 11, + "c": 2, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 11, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 11, + "c": 4, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 11, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 11, + "c": 6, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 11, + "c": 8, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 11, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 11, + "c": 10, + "v": { + "v": 15, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "15", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 11, + "c": 10 + } + } + }, { + "r": 11, + "c": 11, + "v": { + "mc": { + "r": 11, + "c": 10 + } + } + }, { + "r": 12, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 12, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 12, + "c": 2, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 12, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 12, + "c": 4, + "v": { + "v": 100, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "100", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 12, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 12, + "c": 6, + "v": { + "v": 100, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "100", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 12, + "c": 8, + "v": { + "v": 100, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "100", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 12, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 12, + "c": 10, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 12, + "c": 10 + } + } + }, { + "r": 12, + "c": 11, + "v": { + "mc": { + "r": 12, + "c": 10 + } + } + }, { + "r": 13, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 13, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 13, + "c": 2, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 13, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 13, + "c": 4, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 13, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 13, + "c": 6, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 13, + "c": 8, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 13, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 13, + "c": 10, + "v": { + "v": -1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 13, + "c": 10 + } + } + }, { + "r": 13, + "c": 11, + "v": { + "mc": { + "r": 13, + "c": 10 + } + } + }, { + "r": 14, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 2, + "v": { + "v": 4, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "4", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 14, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 4, + "v": { + "v": 60, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "60", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 14, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 6, + "v": { + "v": 60, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "60", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 14, + "c": 8, + "v": { + "v": 60, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "60", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 14, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 10, + "v": { + "v": -15, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-15", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 14, + "c": 10 + } + } + }, { + "r": 14, + "c": 11, + "v": { + "mc": { + "r": 14, + "c": 10 + } + } + }, { + "r": 15, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 15, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 15, + "c": 2, + "v": { + "v": 5, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "5", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 15, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 15, + "c": 4, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 15, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 15, + "c": 6, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 15, + "c": 8, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 15, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 15, + "c": 10, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "mc": { + "rs": 1, + "cs": 2, + "r": 15, + "c": 10 + } + } + }, { + "r": 15, + "c": 11, + "v": { + "mc": { + "r": 15, + "c": 10 + } + } + }, { + "r": 16, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 2, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 4, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0", + "ct": { + "fa": "General", + "t": "n" + } + } + }, { + "r": 16, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 6, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 8, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 10, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 11, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 2, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 4, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 5, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 6, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 7, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 8, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 10, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 11, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 18, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 18, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 18, + "c": 2, + "v": { + "v": "Icon Set", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Icon Set", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "1", + "vt": "0", + "mc": { + "rs": 1, + "cs": 10, + "r": 18, + "c": 2 + } + } + }, { + "r": 18, + "c": 3, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 4, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 5, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 6, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 7, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 8, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 9, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 10, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 18, + "c": 11, + "v": { + "mc": { + "r": 18, + "c": 2 + }, + "ht": "1", + "vt": "0", + "fs": "10" + } + }, { + "r": 19, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 19, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 19, + "c": 2, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 3, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 4, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 5, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 6, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 7, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 8, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 9, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 10, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 19, + "c": 11, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 20, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 20, + "c": 2, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 3, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 4, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 5, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 6, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 7, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 8, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 9, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 10, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 20, + "c": 11, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 21, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 21, + "c": 2, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 3, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 4, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 5, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 6, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 7, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 8, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 9, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 10, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 21, + "c": 11, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 2, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 3, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 4, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 5, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 6, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 7, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 8, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 9, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 10, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 22, + "c": 11, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 2, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 3, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 4, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 5, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 6, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 7, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 8, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 9, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 10, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 23, + "c": 11, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 24, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 24, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 24, + "c": 2, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "rs": 1, + "cs": 10, + "r": 24, + "c": 2 + } + } + }, { + "r": 24, + "c": 3, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 4, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 5, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 6, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 7, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 8, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 9, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 10, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 24, + "c": 11, + "v": { + "mc": { + "r": 24, + "c": 2 + }, + "fs": "10" + } + }, { + "r": 25, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 2, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 3, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 4, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 5, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 6, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 7, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 8, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 9, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 10, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 25, + "c": 11, + "v": { + "v": -50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 26, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 26, + "c": 2, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 3, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 4, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 5, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 6, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 7, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 8, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 9, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 10, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 26, + "c": 11, + "v": { + "v": -25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 27, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 27, + "c": 2, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 3, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 4, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 5, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 6, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 7, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 8, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 9, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 10, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 27, + "c": 11, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 28, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 28, + "c": 2, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 3, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 4, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 5, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 6, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 7, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 8, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 9, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 10, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 28, + "c": 11, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 29, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 29, + "c": 2, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 3, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 4, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 5, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 6, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 7, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 8, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 9, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 10, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }, { + "r": 29, + "c": 11, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(51, 51, 51)", + "ht": "2", + "vt": "0" + } + }], + "ch_width": 4748, + "rh_height": 1790, + "luckysheet_select_save": [{ + "row": [0, 0], + "column": [0, 0] + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 0, + "luckysheet_conditionformat_save": [{ + "type": "default", + "cellrange": [{ + "row": [2, 7], + "column": [2, 2] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "betweenness", + "conditionRange": [{ + "row": [4, 4], + "column": [2, 2] + }, { + "row": [6, 6], + "column": [2, 2] + }], + "conditionValue": [2, 4] + }, { + "type": "default", + "cellrange": [{ + "row": [2, 7], + "column": [4, 4] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "textContains", + "conditionRange": [{ + "row": [2, 2], + "column": [4, 4] + }], + "conditionValue": ["test"] + }, { + "type": "default", + "cellrange": [{ + "row": [2, 7], + "column": [6, 6] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "duplicateValue", + "conditionRange": [], + "conditionValue": ["1"] + }, { + "type": "default", + "cellrange": [{ + "row": [2, 7], + "column": [8, 8] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "duplicateValue", + "conditionRange": [], + "conditionValue": ["0"] + }, { + "type": "default", + "cellrange": [{ + "row": [10, 15], + "column": [2, 2] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "greaterThan", + "conditionRange": [{ + "row": [11, 11], + "column": [2, 2] + }], + "conditionValue": [1] + }, { + "type": "default", + "cellrange": [{ + "row": [10, 15], + "column": [4, 4] + }], + "format": { + "textColor": null, + "cellColor": "#ff0000" + }, + "conditionName": "AboveAverage", + "conditionRange": [], + "conditionValue": ["AboveAverage"] + }, { + "type": "dataBar", + "cellrange": [{ + "row": [10, 15], + "column": [10, 11] + }], + "format": ["#6aa84f", "#ffffff"] + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [2, 2] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "0" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [3, 3] + }], + "format": { + "len": "3", + "leftMin": "5", + "top": "0" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [4, 4] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "1" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [5, 5] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "9" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [6, 6] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "8" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [7, 7] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "4" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [8, 8] + }], + "format": { + "len": "3", + "leftMin": "5", + "top": "4" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [9, 9] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "5" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [10, 10] + }], + "format": { + "len": "3", + "leftMin": "0", + "top": "7" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [19, 23], + "column": [11, 11] + }], + "format": { + "len": "3", + "leftMin": "5", + "top": "7" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [2, 2] + }], + "format": { + "len": "4", + "leftMin": "0", + "top": "2" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [3, 3] + }], + "format": { + "len": "4", + "leftMin": "5", + "top": "1" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [4, 4] + }], + "format": { + "len": "4", + "leftMin": "0", + "top": "6" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [5, 5] + }], + "format": { + "len": "4", + "leftMin": "5", + "top": "9" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [6, 6] + }], + "format": { + "len": "4", + "leftMin": "0", + "top": "6" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [6, 6] + }], + "format": { + "len": "4", + "leftMin": "5", + "top": "5" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [7, 7] + }], + "format": { + "len": "5", + "leftMin": "0", + "top": "3" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [8, 8] + }], + "format": { + "len": "5", + "leftMin": "5", + "top": "2" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [9, 9] + }], + "format": { + "len": "5", + "leftMin": "5", + "top": "10" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [10, 10] + }], + "format": { + "len": "5", + "leftMin": "0", + "top": "10" + } + }, { + "type": "icons", + "cellrange": [{ + "row": [25, 29], + "column": [11, 11] + }], + "format": { + "len": "5", + "leftMin": "0", + "top": "11" + } + }, { + "type": "default", + "cellrange": [{ + "row": [2, 7], + "column": [10, 11] + }], + "format": { + "textColor": null, + "cellColor": "#ff0000" + }, + "conditionName": "occurrenceDate", + "conditionRange": [], + "conditionValue": ["2020/07/23 - 2020/07/29"] + },{ + "type": "default", + "cellrange": [{ + "row": [10, 19], + "column": [0, 0] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "regExp", + "conditionRange": [], + "conditionValue": [/^\d{1,}\.\d{1,}$/] + },{ + "type": "default", + "cellrange": [{ + "row": [0, 9], + "column": [0, 0] + }], + "format": { + "textColor": "#000000", + "cellColor": "#ff0000" + }, + "conditionName": "sort", + "conditionRange": [], + "conditionValue": ['desc'] + }, + { + "type": "colorGradation", + "cellrange": [{ + "left": 422, + "width": 100, + "top": 210, + "height": 20, + "left_move": 422, + "width_move": 100, + "top_move": 210, + "height_move": 125, + "row": [10, 15], + "column": [6, 6], + "row_focus": 10, + "column_focus": 6 + }], + "format": ["rgb(99, 190, 123)", "rgb(255, 235, 132)", "rgb(248, 105, 107)"] + }, { + "type": "colorGradation", + "cellrange": [{ + "left": 422, + "width": 100, + "top": 210, + "height": 20, + "left_move": 422, + "width_move": 100, + "top_move": 210, + "height_move": 125, + "row": [10, 15], + "column": [6, 6], + "row_focus": 10, + "column_focus": 6 + }], + "format": ["rgb(248, 105, 107)", "rgb(255, 235, 132)", "rgb(99, 190, 123)"] + }, { + "type": "colorGradation", + "cellrange": [{ + "left": 422, + "width": 100, + "top": 210, + "height": 20, + "left_move": 422, + "width_move": 100, + "top_move": 210, + "height_move": 125, + "row": [10, 15], + "column": [6, 6], + "row_focus": 10, + "column_focus": 6 + }], + "format": ["rgb(99, 190, 123)", "rgb(255, 235, 132)", "rgb(248, 105, 107)"] + }, { + "type": "colorGradation", + "cellrange": [{ + "left": 422, + "width": 100, + "top": 210, + "height": 20, + "left_move": 422, + "width_move": 100, + "top_move": 210, + "height_move": 125, + "row": [10, 15], + "column": [6, 6], + "row_focus": 10, + "column_focus": 6 + }], + "format": ["rgb(99, 190, 123)", "rgb(255, 235, 132)"] + }, { + "type": "colorGradation", + "cellrange": [{ + "left": 624, + "width": 99, + "top": 210, + "height": 20, + "left_move": 624, + "width_move": 99, + "top_move": 210, + "height_move": 125, + "row": [10, 15], + "column": [8, 8], + "row_focus": 10, + "column_focus": 8 + }], + "format": ["rgb(248, 105, 107)", "rgb(255, 235, 132)", "rgb(99, 190, 123)"] + }] +} + +// export default sheetConditionFormat; \ No newline at end of file diff --git a/public/demoData/sheetDataVerification.js b/public/demoData/sheetDataVerification.js new file mode 100644 index 0000000..ee93a91 --- /dev/null +++ b/public/demoData/sheetDataVerification.js @@ -0,0 +1,579 @@ +window.sheetDataVerification = { + "name": "Data Verification", + "index": "Sheet_pdolzzie5xwi_1600927444446", + "celldata": [{"r":0,"c":0,"v":{"ct":{"fa":"General","t":"g"},"m":"Drop Down List","v":"Drop Down List","bl":1}},{"r":0,"c":1,"v":{"m":"Checkbox","ct":{"fa":"General","t":"g"},"v":"Checkbox","bl":1}},{"r":0,"c":2,"v":{"ct":{"fa":"General","t":"g"},"v":"Number between 1-10","bl":1,"m":"Number between 1-10"}},{"r":0,"c":3,"v":{"m":"Text content include Luckysheet","ct":{"fa":"General","t":"g"},"v":"Text content include Luckysheet","bl":1}},{"r":0,"c":4,"v":{"ct":{"fa":"General","t":"g"},"v":"Text length between 1-5","m":"Text length between 1-5","bl":1}},{"r":0,"c":5,"v":{"m":"Date","ct":{"fa":"General","t":"g"},"v":"Date","bl":1}},{"r":0,"c":6,"v":{"m":"Identification Number","ct":{"fa":"General","t":"g"},"v":"Identification Number","bl":1}},{"r":0,"c":7,"v":{"m":"Phone Number","ct":{"fa":"General","t":"g"},"v":"Phone Number","bl":1}},{"r":1,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"Fix","m":"Fix"}},{"r":1,"c":1,"v":{"m":"Fail","ct":{"fa":"General","t":"g"},"v":"Fail"}},{"r":1,"c":2,"v":{"v":1,"ct":{"fa":"General","t":"n"},"m":"1"}},{"r":1,"c":3,"v":{"m":"Luckysheet is good","ct":{"fa":"General","t":"g"},"v":"Luckysheet is good"}},{"r":1,"c":4,"v":{"m":"Welcome","ct":{"fa":"General","t":"g"},"v":"Welcome"}},{"r":1,"c":5,"v":{"m":"2020-09-24","ct":{"fa":"yyyy-MM-dd","t":"d"},"v":44098}},{"r":1,"c":6,"v":{"v":"311414199009138910","ct":{"fa":"@","t":"s"},"m":"311414199009138910"}},{"r":1,"c":7,"v":{"v":13678765439,"ct":{"fa":"General","t":"n"},"m":"13678765439"}},{"r":2,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"Done","m":"Done"}},{"r":2,"c":1,"v":{"m":"Pass","ct":{"fa":"General","t":"g"},"v":"Pass"}},{"r":2,"c":2,"v":{"v":2,"ct":{"fa":"General","t":"n"},"m":"2"}},{"r":2,"c":3,"v":{"m":"I am Luckysheet","ct":{"fa":"General","t":"g"},"v":"I am Luckysheet"}},{"r":2,"c":4,"v":{"m":"Good","ct":{"fa":"General","t":"g"},"v":"Good"}},{"r":2,"c":5,"v":{"ct":{"fa":"General","t":"g"},"v":"Time","m":"Time"}},{"r":2,"c":6,"v":{"v":"31141419900913891","ct":{"fa":"@","t":"s"},"m":"31141419900913891"}},{"r":2,"c":7,"v":{"v":1367876544,"ct":{"fa":"General","t":"n"},"m":"1367876544"}},{"r":3,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"Develop","m":"Develop"}},{"r":3,"c":1,"v":{"m":"Fail","ct":{"fa":"General","t":"g"},"v":"Fail"}},{"r":3,"c":2,"v":{"v":5,"ct":{"fa":"General","t":"n"},"m":"5"}},{"r":3,"c":3,"v":{"ct":{"fa":"General","t":"g"},"v":"I am luckyDemo","m":"I am luckyDemo"}},{"r":3,"c":4,"v":{"m":"Nice","ct":{"fa":"General","t":"g"},"v":"Nice"}},{"r":3,"c":5,"v":{"m":"2020-09-26","ct":{"fa":"yyyy-MM-dd","t":"d"},"v":44100}},{"r":3,"c":6,"v":{"v":"3114141990091389102","ct":{"fa":"@","t":"s"},"m":"3114141990091389102"}},{"r":3,"c":7,"v":{"v":136787654412,"ct":{"fa":"##0","t":"n"},"m":"136787654412"}},{"r":4,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"Doing","m":"Doing"}},{"r":4,"c":1,"v":{"m":"Fail","ct":{"fa":"General","t":"g"},"v":"Fail"}},{"r":4,"c":2,"v":{"v":11,"ct":{"fa":"General","t":"n"},"m":"11"}},{"r":4,"c":3,"v":{"ct":{"fa":"General","t":"g"},"v":"Luckysheet Documentation","m":"Luckysheet Documentation"}},{"r":4,"c":4,"v":{"ct":{"fa":"General","t":"g"},"v":"Morning","m":"Morning"}},{"r":4,"c":5,"v":{"m":"2020-09-27","ct":{"fa":"yyyy-MM-dd","t":"d"},"v":44101}},{"r":4,"c":6,"v":{"v":"31141419900913891X","ct":{"fa":"@","t":"s"},"m":"31141419900913891X"}},{"r":4,"c":7,"v":{"v":49865342456,"ct":{"fa":"General","t":"n"},"m":"49865342456"}},{"r":5,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"Develop","m":"Develop"}},{"r":5,"c":1,"v":{"m":"Fail","ct":{"fa":"General","t":"g"},"v":"Fail"}},{"r":5,"c":2,"v":{"v":3,"ct":{"fa":"General","t":"n"},"m":"3"}},{"r":5,"c":3,"v":{"m":"Luckyexcel","ct":{"fa":"General","t":"g"},"v":"Luckyexcel"}},{"r":5,"c":4,"v":{"ct":{"fa":"General","t":"g"},"v":"Tomorrow","m":"Tomorrow"}},{"r":5,"c":5,"v":{"ct":{"fa":"yyyy-MM-dd","t":"d"},"v":44071,"m":"2020-08-28"}},{"r":5,"c":6,"v":{"v":"Number","ct":{"fa":"@","t":"s"},"m":"Number"}},{"r":5,"c":7,"v":{"v":"Number","ct":{"fa":"General","t":"g"},"m":"Number"}},{"r":6,"c":0,"v":{"ct":{"fa":"General","t":"g"},"v":"Done","m":"Done"}},{"r":6,"c":1,"v":{"m":"Pass","ct":{"fa":"General","t":"g"},"v":"Pass"}},{"r":6,"c":2,"v":{"v":0,"ct":{"fa":"General","t":"n"},"m":"0"}},{"r":6,"c":3,"v":{"m":"Luckysheet Online","ct":{"fa":"General","t":"g"},"v":"Luckysheet Online"}},{"r":6,"c":4,"v":{"m":"Three","ct":{"fa":"General","t":"g"},"v":"Three"}},{"r":6,"c":5,"v":{"m":"2020-09-29","ct":{"fa":"yyyy-MM-dd","t":"d"},"v":44103}},{"r":6,"c":6,"v":{"v":"311414199301118910","ct":{"fa":"@","t":"s"},"m":"311414199301118910"}},{"r":6,"c":7,"v":{"v":23309873564,"ct":{"fa":"General","t":"n"},"m":"23309873564"}},{"r":7,"c":8,"v":{"v":null,"ct":{"fa":"General","t":"g"},"bl":1}}], + "row": 84, + "column": 60, + "config": { + "merge": {}, + "rowlen": {}, + "columnlen": { + "0": 109, + "2": 143, + "3": 200, + "4": 180, + "6": 178, + "7": 125 + }, + "customWidth": { + "2": 1, + "3": 1, + "4": 1, + "6": 1, + "7": 1 + } + }, + "luckysheet_select_save": [ + { + "left": 963, + "width": 125, + "top": 240, + "height": 19, + "left_move": 963, + "width_move": 125, + "top_move": 240, + "height_move": 19, + "row": [ + 12, + 12 + ], + "column": [ + 7, + 7 + ], + "row_focus": 12, + "column_focus": 7 + } + ], + "dataVerification": { + "1_0": { + "type": "dropdown", + "type2": null, + "value1": "Develop,Fix,Done", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "2_0": { + "type": "dropdown", + "type2": null, + "value1": "Develop,Fix,Done", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "3_0": { + "type": "dropdown", + "type2": null, + "value1": "Develop,Fix,Done", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "4_0": { + "type": "dropdown", + "type2": null, + "value1": "Develop,Fix,Done", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "5_0": { + "type": "dropdown", + "type2": null, + "value1": "Develop,Fix,Done", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "6_0": { + "type": "dropdown", + "type2": null, + "value1": "Develop,Fix,Done", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "1_1": { + "type": "checkbox", + "type2": null, + "value1": "Pass", + "value2": "Fail", + "checked": false, + "remote": true, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "2_1": { + "type": "checkbox", + "type2": null, + "value1": "Pass", + "value2": "Fail", + "checked": true, + "remote": true, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "3_1": { + "type": "checkbox", + "type2": null, + "value1": "Pass", + "value2": "Fail", + "checked": false, + "remote": true, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "4_1": { + "type": "checkbox", + "type2": null, + "value1": "Pass", + "value2": "Fail", + "checked": false, + "remote": true, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "5_1": { + "type": "checkbox", + "type2": null, + "value1": "Pass", + "value2": "Fail", + "checked": false, + "remote": true, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "6_1": { + "type": "checkbox", + "type2": null, + "value1": "Pass", + "value2": "Fail", + "checked": true, + "remote": true, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "1_2": { + "type": "number", + "type2": "bw", + "value1": "1", + "value2": "10", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "2_2": { + "type": "number", + "type2": "bw", + "value1": "1", + "value2": "10", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "3_2": { + "type": "number", + "type2": "bw", + "value1": "1", + "value2": "10", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "4_2": { + "type": "number", + "type2": "bw", + "value1": "1", + "value2": "10", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "5_2": { + "type": "number", + "type2": "bw", + "value1": "1", + "value2": "10", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "6_2": { + "type": "number", + "type2": "bw", + "value1": "1", + "value2": "10", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "1_3": { + "type": "text_content", + "type2": "include", + "value1": "Luckysheet", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": true, + "hintText": "include Luckysheet" + }, + "2_3": { + "type": "text_content", + "type2": "include", + "value1": "Luckysheet", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": true, + "hintText": "include Luckysheet" + }, + "3_3": { + "type": "text_content", + "type2": "include", + "value1": "Luckysheet", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": true, + "hintText": "include Luckysheet" + }, + "4_3": { + "type": "text_content", + "type2": "include", + "value1": "Luckysheet", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": true, + "hintText": "include Luckysheet" + }, + "5_3": { + "type": "text_content", + "type2": "include", + "value1": "Luckysheet", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": true, + "hintText": "include Luckysheet" + }, + "6_3": { + "type": "text_content", + "type2": "include", + "value1": "Luckysheet", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": true, + "hintText": "include Luckysheet" + }, + "1_4": { + "type": "text_length", + "type2": "bw", + "value1": "1", + "value2": "5", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "2_4": { + "type": "text_length", + "type2": "bw", + "value1": "1", + "value2": "5", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "3_4": { + "type": "text_length", + "type2": "bw", + "value1": "1", + "value2": "5", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "4_4": { + "type": "text_length", + "type2": "bw", + "value1": "1", + "value2": "5", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "5_4": { + "type": "text_length", + "type2": "bw", + "value1": "1", + "value2": "5", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "6_4": { + "type": "text_length", + "type2": "bw", + "value1": "1", + "value2": "5", + "checked": false, + "remote": false, + "prohibitInput": true, + "hintShow": false, + "hintText": "" + }, + "1_5": { + "type": "date", + "type2": "bw", + "value1": "2020-09-23", + "value2": "2020-10-10", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "2_5": { + "type": "date", + "type2": "bw", + "value1": "2020-09-23", + "value2": "2020-10-10", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "3_5": { + "type": "date", + "type2": "bw", + "value1": "2020-09-23", + "value2": "2020-10-10", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "4_5": { + "type": "date", + "type2": "bw", + "value1": "2020-09-23", + "value2": "2020-10-10", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "5_5": { + "type": "date", + "type2": "bw", + "value1": "2020-09-23", + "value2": "2020-10-10", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "6_5": { + "type": "date", + "type2": "bw", + "value1": "2020-09-23", + "value2": "2020-10-10", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "1_6": { + "type": "validity", + "type2": "card", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "2_6": { + "type": "validity", + "type2": "card", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "3_6": { + "type": "validity", + "type2": "card", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "4_6": { + "type": "validity", + "type2": "card", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "5_6": { + "type": "validity", + "type2": "card", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "6_6": { + "type": "validity", + "type2": "card", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "1_7": { + "type": "validity", + "type2": "phone", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "2_7": { + "type": "validity", + "type2": "phone", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "3_7": { + "type": "validity", + "type2": "phone", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "4_7": { + "type": "validity", + "type2": "phone", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "5_7": { + "type": "validity", + "type2": "phone", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + }, + "6_7": { + "type": "validity", + "type2": "phone", + "value1": "", + "value2": "", + "checked": false, + "remote": false, + "prohibitInput": false, + "hintShow": false, + "hintText": "" + } + } +} +// export default sheetDataVerification; \ No newline at end of file diff --git a/public/demoData/sheetFormula.js b/public/demoData/sheetFormula.js new file mode 100644 index 0000000..1f1ee36 --- /dev/null +++ b/public/demoData/sheetFormula.js @@ -0,0 +1,6600 @@ + window.sheetFormula = { + "name": "Formula", + "color": "", + "config": { + "merge": { + "12_2": { + "rs": 1, + "cs": 6, + "r": 12, + "c": 2 + }, + "19_2": { + "rs": 1, + "cs": 6, + "r": 19, + "c": 2 + }, + "20_6": { + "rs": 1, + "cs": 5, + "r": 20, + "c": 6 + }, + "22_6": { + "rs": 1, + "cs": 2, + "r": 22, + "c": 6 + }, + "23_6": { + "rs": 1, + "cs": 2, + "r": 23, + "c": 6 + }, + "28_2": { + "rs": 1, + "cs": 6, + "r": 28, + "c": 2 + }, + "31_6": { + "rs": 1, + "cs": 3, + "r": 31, + "c": 6 + }, + "33_6": { + "rs": 1, + "cs": 3, + "r": 33, + "c": 6 + }, + "35_6": { + "rs": 1, + "cs": 3, + "r": 35, + "c": 6 + }, + "37_6": { + "rs": 1, + "cs": 3, + "r": 37, + "c": 6 + }, + "29_6": { + "r": 29, + "c": 6, + "rs": 1, + "cs": 3 + } + }, + "rowlen": {}, + "columnlen": { + "0": 111, + "2": 105, + "3": 82, + "4": 71, + "5": 84, + "6": 123, + "7": 48, + "8": 192, + "9": 56, + "10": 56 + } + }, + "index": "1", + "chart": [], + "order": "1", + "column": 18, + "row": 45, + "celldata": [{ + "r": 0, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 0, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 0, + "v": { + "v": "Basic Function", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Basic Function", + "bg": null, + "bl": 1, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 2, + "v": { + "v": "Name", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Name", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 3, + "v": { + "v": "Age", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Age", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 6, + "v": { + "v": "Indirect Function", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Indirect Function", + "bg": null, + "bl": 1, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 8, + "v": { + "v": "J2", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "J2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 9, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 1, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 2, + "v": { + "v": "Jack", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Jack", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 3, + "v": { + "v": 17, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "17", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 8, + "v": { + "v": "I", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "I", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 9, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 2, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 2, + "v": { + "v": "Lily", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Lily", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 3, + "v": { + "v": 23, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "23", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 8, + "v": { + "v": "J", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "J", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 9, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 3, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 2, + "v": { + "v": "Bob", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Bob", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 3, + "v": { + "v": 30, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "30", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 4, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 2, + "v": { + "v": "Mary", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Mary", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 3, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 8, + "v": { + "v": "=INDIRECT(\"I2\")", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "=INDIRECT(\"I2\")", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 5, + "c": 9, + "v": { + "v": "J2", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "J2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=INDIRECT(\"I2\")" + } + }, { + "r": 5, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 2, + "v": { + "v": "Average Age:", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Average Age:", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 3, + "v": { + "v": 23.75, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "23.75", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=AVERAGE(D3:D6)" + } + }, { + "r": 6, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 8, + "v": { + "v": "=INDIRECT(I2)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "=INDIRECT(I2)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 6, + "c": 9, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=INDIRECT(I2)" + } + }, { + "r": 6, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 2, + "v": { + "v": "Max Age:", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Max Age:", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 3, + "v": { + "v": 30, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "30", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=MAX(D3:D6)" + } + }, { + "r": 7, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 8, + "v": { + "v": "=INDIRECT(\"I\"&(1+2))", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "=INDIRECT(\"I\"&(1+2))", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 7, + "c": 9, + "v": { + "v": "I", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "I", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=INDIRECT(\"I\"&(1+2))" + } + }, { + "r": 7, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 2, + "v": { + "v": "Min Age:", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Min Age:", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 3, + "v": { + "v": 17, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "17", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=MIN(D3:D6)" + } + }, { + "r": 8, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 8, + "v": { + "v": "=INDIRECT(I4&J3)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "=INDIRECT(I4&J3)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 8, + "c": 9, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=INDIRECT(I4&J3)" + } + }, { + "r": 8, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 8, + "v": { + "v": "=INDIRECT(\"Formula!\"&I2)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "=INDIRECT(\"Formula!\"&I2)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 9, + "c": 9, + "v": { + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "v": 1, + "m": "1", + "f": "=INDIRECT(\"Formula!\"&I2)" + } + }, { + "r": 9, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 8, + "v": { + "v": "=INDIRECT(\"Formula!I2\")", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "=INDIRECT(\"Formula!I2\")", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 10, + "c": 9, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "m": "J2", + "v": "J2", + "f": "=INDIRECT(\"Formula!I2\")" + } + }, { + "r": 10, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 11, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 12, + "c": 0, + "v": { + "v": "Array Formula", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Array Formula", + "bg": null, + "bl": 1, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 12, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 12, + "c": 2, + "v": { + "v": "Calculation", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Calculation", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 6, + "r": 12, + "c": 2 + } + } + }, { + "r": 12, + "c": 3, + "v": { + "mc": { + "r": 12, + "c": 2 + } + } + }, { + "r": 12, + "c": 4, + "v": { + "mc": { + "r": 12, + "c": 2 + } + } + }, { + "r": 12, + "c": 5, + "v": { + "mc": { + "r": 12, + "c": 2 + } + } + }, { + "r": 12, + "c": 6, + "v": { + "mc": { + "r": 12, + "c": 2 + } + } + }, { + "r": 12, + "c": 7, + "v": { + "mc": { + "r": 12, + "c": 2 + } + } + }, { + "r": 12, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 12, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 12, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 3, + "v": { + "v": "Match", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Match", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 4, + "v": { + "v": "Physical", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Physical", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 5, + "v": { + "v": "Chemistry", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Chemistry", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 6, + "v": { + "v": "Alex", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Alex", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 7, + "v": { + "v": "Sum", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sum", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 13, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 2, + "v": { + "v": "Alice", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Alice", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 3, + "v": { + "v": 97, + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "m": "97" + } + }, { + "r": 14, + "c": 4, + "v": { + "v": 61, + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "m": "61" + } + }, { + "r": 14, + "c": 5, + "v": { + "v": 53, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "53", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 6, + "v": { + "v": 43, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "43", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 7, + "v": { + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "v": 207, + "m": "207", + "f": "=SUBTOTAL(9,OFFSET($D$15,ROW($D$15:$D$18)-ROW($D$15),1,3))" + } + }, { + "r": 14, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 14, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 2, + "v": { + "v": "John", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "John", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 3, + "v": { + "v": 65, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "65", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 4, + "v": { + "v": 76, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "76", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 5, + "v": { + "v": 65, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "65", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 6, + "v": { + "v": 55, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "55", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 7, + "v": { + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "v": 182, + "m": "182", + "f": "=SUBTOTAL(9,OFFSET(E15,ROW(E15:E18)-ROW(E15),1,3))" + } + }, { + "r": 15, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "ct": { + "fa": "General", + "t": "n" + } + } + }, { + "r": 15, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 15, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 2, + "v": { + "v": "Bob", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Bob", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 3, + "v": { + "v": 55, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "55", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 4, + "v": { + "v": 70, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "70", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 5, + "v": { + "v": 64, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "64", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 6, + "v": { + "v": 54, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "54", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 7, + "v": { + "v": 152, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "152", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUBTOTAL(9,OFFSET(F15,ROW(F15:F18)-ROW(F15),1,3))" + } + }, { + "r": 16, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 16, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 2, + "v": { + "v": "Jack", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Jack", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 3, + "v": { + "v": 89, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "89", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 4, + "v": { + "v": 77, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "77", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 5, + "v": { + "v": 73, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "73", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 6, + "v": { + "v": 73, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "73", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 7, + "v": { + "v": 541, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "541", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUBTOTAL(9,OFFSET(G15,ROW(G15:G18)-ROW(G15),1,3))" + } + }, { + "r": 17, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 17, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 18, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 19, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 19, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 19, + "c": 2, + "v": { + "v": "Search", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Search", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 6, + "r": 19, + "c": 2 + } + } + }, { + "r": 19, + "c": 3, + "v": { + "mc": { + "r": 19, + "c": 2 + } + } + }, { + "r": 19, + "c": 4, + "v": { + "mc": { + "r": 19, + "c": 2 + } + } + }, { + "r": 19, + "c": 5, + "v": { + "mc": { + "r": 19, + "c": 2 + } + } + }, { + "r": 19, + "c": 6, + "v": { + "mc": { + "r": 19, + "c": 2 + } + } + }, { + "r": 19, + "c": 7, + "v": { + "mc": { + "r": 19, + "c": 2 + } + } + }, { + "r": 19, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 19, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 19, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 2, + "v": { + "v": "apple", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "apple", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 3, + "v": { + "v": "apple", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "apple", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 20, + "c": 6, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 5, + "r": 20, + "c": 6 + } + } + }, { + "r": 20, + "c": 7, + "v": { + "mc": { + "r": 20, + "c": 6 + } + } + }, { + "r": 20, + "c": 8, + "v": { + "mc": { + "r": 20, + "c": 6 + } + } + }, { + "r": 20, + "c": 9, + "v": { + "mc": { + "r": 20, + "c": 6 + } + } + }, { + "r": 20, + "c": 10, + "v": { + "mc": { + "r": 20, + "c": 6 + } + } + }, { + "r": 21, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 2, + "v": { + "v": "banana", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "banana", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 3, + "v": { + "v": "pear", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "pear", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 21, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 2, + "v": { + "v": "pear", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "pear", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 3, + "v": { + "v": "potato", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "potato", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 22, + "c": 6, + "v": { + "v": "ArrayFormula Result:", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "ArrayFormula Result:", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 2, + "r": 22, + "c": 6 + } + } + }, { + "r": 22, + "c": 7, + "v": { + "mc": { + "r": 22, + "c": 6 + } + } + }, { + "r": 22, + "c": 8, + "v": { + "v": "dumpling", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "dumpling", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=INDEX(D21:D25,MATCH(\"dumpling\",D21:D25),1)" + } + }, { + "r": 22, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "ct": { + "fa": "General", + "t": "b" + } + } + }, { + "r": 22, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "ct": { + "fa": "General", + "t": "n" + } + } + }, { + "r": 23, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 23, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 23, + "c": 2, + "v": { + "v": "tomato", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "tomato", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 23, + "c": 3, + "v": { + "v": "potato", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "potato", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 23, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 23, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 23, + "c": 6, + "v": { + "v": "NomalFormula Result:", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "NomalFormula Result:", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 2, + "r": 23, + "c": 6 + } + } + }, { + "r": 23, + "c": 7, + "v": { + "mc": { + "r": 23, + "c": 6 + } + } + }, { + "r": 23, + "c": 8, + "v": { + "ct": { + "fa": "General", + "t": "b" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "m": "FALSE", + "v": false, + "f": "=ISNA(MATCH(D21:D25,C21:C27,0))" + } + }, { + "r": 23, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "ct": { + "fa": "General", + "t": "b" + } + } + }, { + "r": 23, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 2, + "v": { + "v": "potato", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "potato", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 3, + "v": { + "v": "dumpling", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "dumpling", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "ct": { + "fa": "General", + "t": "e" + } + } + }, { + "r": 24, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 24, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 2, + "v": { + "v": "cake", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "cake", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 25, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 2, + "v": { + "v": "noodel", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "noodel", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 26, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 3, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 4, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 6, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 27, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 28, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 28, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 28, + "c": 2, + "v": { + "v": "Statistics", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Statistics", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 6, + "r": 28, + "c": 2 + } + } + }, { + "r": 28, + "c": 3, + "v": { + "mc": { + "r": 28, + "c": 2 + } + } + }, { + "r": 28, + "c": 4, + "v": { + "mc": { + "r": 28, + "c": 2 + } + } + }, { + "r": 28, + "c": 5, + "v": { + "mc": { + "r": 28, + "c": 2 + } + } + }, { + "r": 28, + "c": 6, + "v": { + "mc": { + "r": 28, + "c": 2 + } + } + }, { + "r": 28, + "c": 7, + "v": { + "mc": { + "r": 28, + "c": 2 + } + } + }, { + "r": 28, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 28, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 28, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 2, + "v": { + "v": "Product", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Product", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 3, + "v": { + "v": "Salesman", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Salesman", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 4, + "v": { + "v": "Units Sold", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Units Sold", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 6, + "v": { + "v": "Summing Sales: Faxes Sold By Brown", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Summing Sales: Faxes Sold By Brown", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "r": 29, + "c": 6, + "rs": 1, + "cs": 3 + } + } + }, { + "r": 29, + "c": 7, + "v": { + "mc": { + "r": 29, + "c": 6 + } + } + }, { + "r": 29, + "c": 8, + "v": { + "mc": { + "r": 29, + "c": 6 + } + } + }, { + "r": 29, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 29, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 2, + "v": { + "v": "Fax", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fax", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 3, + "v": { + "v": "Brown", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Brown", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 4, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 6, + "v": { + "v": 61, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "61", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUM((C31:C39=\"Fax\")*(D31:D39=\"Brown\")*(E31:E39))" + } + }, { + "r": 30, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 30, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 2, + "v": { + "v": "Phone", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Phone", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 3, + "v": { + "v": "Smith", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Smith", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 4, + "v": { + "v": 10, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "10", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 6, + "v": { + "v": "Logical AND (Faxes And Brown)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Logical AND (Faxes And Brown)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 3, + "r": 31, + "c": 6 + } + } + }, { + "r": 31, + "c": 7, + "v": { + "mc": { + "r": 31, + "c": 6 + } + } + }, { + "r": 31, + "c": 8, + "v": { + "mc": { + "r": 31, + "c": 6 + } + } + }, { + "r": 31, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 31, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 2, + "v": { + "v": "Fax", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fax", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 3, + "v": { + "v": "Jones", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Jones", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 4, + "v": { + "v": 20, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "20", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 6, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUM((C31:C39=\"Fax\")*(D31:D39=\"Brown\"))" + } + }, { + "r": 32, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 32, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 2, + "v": { + "v": "Fax", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fax", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 3, + "v": { + "v": "Smith", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Smith", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 4, + "v": { + "v": 30, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "30", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 6, + "v": { + "v": "Logical OR (Faxes Or Jones)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Logical OR (Faxes Or Jones)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 3, + "r": 33, + "c": 6 + } + } + }, { + "r": 33, + "c": 7, + "v": { + "mc": { + "r": 33, + "c": 6 + } + } + }, { + "r": 33, + "c": 8, + "v": { + "mc": { + "r": 33, + "c": 6 + } + } + }, { + "r": 33, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 33, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 2, + "v": { + "v": "Phone", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Phone", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 3, + "v": { + "v": "Jones", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Jones", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 4, + "v": { + "v": 40, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "40", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 6, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUM(IF((C31:C39=\"Fax\")+(D31:D39=\"Jones\"),1,0))" + } + }, { + "r": 34, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 34, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 2, + "v": { + "v": "PC", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "PC", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 3, + "v": { + "v": "Smith", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Smith", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 4, + "v": { + "v": 50, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "50", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 6, + "v": { + "v": "Logical XOR (Fax Or Jones but not both)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Logical XOR (Fax Or Jones but not both)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 3, + "r": 35, + "c": 6 + } + } + }, { + "r": 35, + "c": 7, + "v": { + "mc": { + "r": 35, + "c": 6 + } + } + }, { + "r": 35, + "c": 8, + "v": { + "mc": { + "r": 35, + "c": 6 + } + } + }, { + "r": 35, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 35, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 2, + "v": { + "v": "Fax", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Fax", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 3, + "v": { + "v": "Brown", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Brown", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 4, + "v": { + "v": 60, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "60", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 6, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUM(IF(MOD((C31:C39=\"Fax\")+(D31:D39=\"Jones\"),2),1,0))" + } + }, { + "r": 36, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 36, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 2, + "v": { + "v": "Phone", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Phone", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 3, + "v": { + "v": "Davis", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Davis", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 4, + "v": { + "v": 70, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "70", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 6, + "v": { + "v": "Logical NAND (All Sales Except Fax And Jones)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Logical NAND (All Sales Except Fax And Jones)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "mc": { + "rs": 1, + "cs": 3, + "r": 37, + "c": 6 + } + } + }, { + "r": 37, + "c": 7, + "v": { + "mc": { + "r": 37, + "c": 6 + } + } + }, { + "r": 37, + "c": 8, + "v": { + "mc": { + "r": 37, + "c": 6 + } + } + }, { + "r": 37, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 37, + "c": 10, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 0, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 1, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 2, + "v": { + "v": "PC", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "PC", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 3, + "v": { + "v": "Jones", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Jones", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 4, + "v": { + "v": 80, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "80", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 5, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 6, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0, + "f": "=SUM(IF((C31:C39=\"Fax\")+(D31:D39=\"Jones\")<>2,1,0))" + } + }, { + "r": 38, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 8, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 9, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 10, + "fc": "rgb(0, 0, 0)", + "ht": 1, + "vt": 0 + } + }, { + "r": 38, + "c": 10, + "v": {} + }], + "calcChain": [{ + "r": 6, + "c": 3, + "index": 1, + // "func": [true, 23.75, "=AVERAGE(D3:D6)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 7, + "c": 3, + "index": 1, + // "func": [true, 30, "=MAX(D3:D6)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 8, + "c": 3, + "index": 1, + // "func": [true, 17, "=MIN(D3:D6)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 5, + "c": 9, + "index": 1, + // "func": [true, "J2", "=INDIRECT(\"I2\")"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 6, + "c": 9, + "index": 1, + // "func": [true, 1, "=INDIRECT(I2)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 7, + "c": 9, + "index": 1, + // "func": [true, "I", "=INDIRECT(\"I\"&(1+2))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 8, + "c": 9, + "index": 1, + // "func": [true, 1, "=INDIRECT(I4&J3)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 16, + "c": 7, + "index": 1, + // "func": [true, 152, "=SUBTOTAL(9,OFFSET(F15,ROW(F15:F18)-ROW(F15),1,3))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 17, + "c": 7, + "index": 1, + // "func": [true, 541, "=SUBTOTAL(9,OFFSET(G15,ROW(G15:G18)-ROW(G15),1,3))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 22, + "c": 8, + "index": 1, + // "func": [true, "dumpling", "=INDEX(D21:D25,MATCH(\"dumpling\",D21:D25),1)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 38, + "c": 6, + "index": 1, + // "func": [true, 1, "=SUM(IF((C31:C39=\"Fax\")+(D31:D39=\"Jones\")<>2,1,0))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 30, + "c": 6, + "index": 1, + // "func": [true, "#NAME?", "=SUM((C31:C39=\"Fax\")*(D31:D39=\"Brown\")*(E31:E39))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 32, + "c": 6, + "index": 1, + // "func": [true, "#NAME?", "=SUM((C31:C39=\"Fax\")*(D31:D39=\"Brown\"))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 34, + "c": 6, + "index": 1, + // "func": [true, 1, "=SUM(IF((C31:C39=\"Fax\")+(D31:D39=\"Jones\"),1,0))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 36, + "c": 6, + "index": 1, + // "func": [true, 1, "=SUM(IF(MOD((C31:C39=\"Fax\")+(D31:D39=\"Jones\"),2),1,0))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 9, + "c": 9, + "index": 1, + // "func": [true, 1, "=INDIRECT(\"Formula!\"&I2)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 10, + "c": 9, + "index": 1, + // "func": [true, "J2", "=INDIRECT(\"Formula!I2\")"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 14, + "c": 7, + "index": 1, + // "func": [true, 207, "=SUBTOTAL(9,OFFSET($D$15,ROW($D$15:$D$18)-ROW($D$15),1,3))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 15, + "c": 7, + "index": 1, + // "func": [true, 182, "=SUBTOTAL(9,OFFSET(E15,ROW(E15:E18)-ROW(E15),1,3))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 23, + "c": 8, + "index": 1, + // "func": [true, false, "=ISNA(MATCH(D21:D25,C21:C27,0))"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }], + "ch_width": 1723, + "rh_height": 1010, + "luckysheet_select_save": [{ + "left": 532, + "width": 123, + "top": 780, + "height": 19, + "left_move": 532, + "width_move": 123, + "top_move": 780, + "height_move": 19, + "row": [39, 39], + "column": [6, 6], + "row_focus": 39, + "column_focus": 6 + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 0, + "frozen": {"type":"row"} +} + +// export default sheetFormula \ No newline at end of file diff --git a/public/demoData/sheetPicture.js b/public/demoData/sheetPicture.js new file mode 100644 index 0000000..c328988 --- /dev/null +++ b/public/demoData/sheetPicture.js @@ -0,0 +1,159 @@ +window.sheetPicture = { + "name": "Picture", + "index": "Sheet_3e4oe25C757r_1600925108337", + "celldata": [], + "row": 84, + "column": 60, + "config": { + "rowlen": { + "2": 31, + "4": 66 + }, + "customHeight": { + "2": 1, + "4": 1 + }, + "merge": {}, + "columnlen": { + "8": 105 + }, + "customWidth": { + "8": 1 + } + }, + celldata:[{"r":0,"c":0,"v":{"v":null,"bl":1}},{"r":1,"c":1,"v":{"ct":{"fa":"General","t":"g"},"v":"Border","bl":1,"tb":"1","m":"Border"}},{"r":1,"c":8,"v":{"m":"Fixed Position","ct":{"fa":"General","t":"g"},"v":"Fixed Position","bl":1}},{"r":4,"c":8,"v":{}},{"r":5,"c":1,"v":{"ct":{"fa":"General","t":"g"},"v":"Move and resize cells","bl":1,"tb":"1","m":"Move and resize cells"}},{"r":5,"c":8,"v":{"m":"Move and don't resize the cell","ct":{"fa":"General","t":"g"},"v":"Move and don't resize the cell","bl":1,"tb":"1"}},{"r":6,"c":0,"v":{"v":"","ct":{"fa":"General","t":"g"},"m":""}}], + "luckysheet_select_save": [ + { + "left": 444, + "width": 73, + "top": 239, + "height": 19, + "left_move": 444, + "width_move": 73, + "top_move": 239, + "height_move": 19, + "row": [ + 9, + 9 + ], + "column": [ + 6, + 6 + ], + "row_focus": 9, + "column_focus": 6 + } + ], + "images": { + "img_wx5a6n0A1ael_1600925814407": { + "type": "3", + "src": "data:image/png;base64,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", + "originWidth": 304, + "originHeight": 64, + "default": { + "width": 304, + "height": 64, + "left": 80, + "top": 45 + }, + "crop": { + "width": 304, + "height": 64, + "offsetLeft": 0, + "offsetTop": 0 + }, + "isFixedPos": false, + "fixedLeft": 268, + "fixedTop": 297, + "border": { + "width": 2, + "radius": "dashed", + "style": "solid", + "color": "#ff0000" + } + }, + "img_5034067dpM6W_1600925833775": { + "type": "1", + "src": "data:image/png;base64,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", + "originWidth": 304, + "originHeight": 64, + "default": { + "width": 304, + "height": 64, + "left": 79, + "top": 187 + }, + "crop": { + "width": 304, + "height": 64, + "offsetLeft": 0, + "offsetTop": 0 + }, + "isFixedPos": false, + "fixedLeft": 268, + "fixedTop": 297, + "border": { + "width": 0, + "radius": 0, + "style": "solid", + "color": "#000" + } + }, + "img_8s8lnsidWmWo_1600925835996": { + "type": "3", + "src": "data:image/png;base64,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", + "originWidth": 304, + "originHeight": 64, + "default": { + "width": 304, + "height": 64, + "left": 563, + "top": 50 + }, + "crop": { + "width": 304, + "height": 64, + "offsetLeft": 0, + "offsetTop": 0 + }, + "isFixedPos": true, + "fixedLeft": 641, + "fixedTop": 193, + "border": { + "width": 0, + "radius": 0, + "style": "solid", + "color": "#000" + } + }, + "img_ni1an0tek2ko_1600926607293": { + "type": "2", + "src": "data:image/png;base64,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", + "originWidth": 304, + "originHeight": 64, + "default": { + "width": 304, + "height": 64, + "left": 598, + "top": 187 + }, + "crop": { + "width": 304, + "height": 64, + "offsetLeft": 0, + "offsetTop": 0 + }, + "isFixedPos": false, + "fixedLeft": 638, + "fixedTop": 309, + "border": { + "width": 0, + "radius": 0, + "style": "solid", + "color": "#000" + } + } + } +} + +// export default sheetPicture; \ No newline at end of file diff --git a/public/demoData/sheetPivotTable.js b/public/demoData/sheetPivotTable.js new file mode 100644 index 0000000..b938b41 --- /dev/null +++ b/public/demoData/sheetPivotTable.js @@ -0,0 +1,189 @@ +window.sheetPivotTable = { + "name": "PivotTable", + "color": "", + "config": {}, + "index": "7", + "chart": [], + "status": 0, + "order": "7", + "column": 18, + "row": 36, + "celldata": [{ + "r": 0, + "c": 0, + "v": "count:score" + }, { + "r": 0, + "c": 1, + "v": "science" + }, { + "r": 0, + "c": 2, + "v": "mathematics" + }, { + "r": 0, + "c": 3, + "v": "foreign language" + }, { + "r": 0, + "c": 4, + "v": "English" + }, { + "r": 0, + "c": 5, + "v": "total" + }, { + "r": 1, + "c": 0, + "v": "Alex" + }, { + "r": 1, + "c": 1, + "v": 1 + }, { + "r": 1, + "c": 2, + "v": 1 + }, { + "r": 1, + "c": 3, + "v": 1 + }, { + "r": 1, + "c": 4, + "v": 1 + }, { + "r": 1, + "c": 5, + "v": 4 + }, { + "r": 2, + "c": 0, + "v": "Joy" + }, { + "r": 2, + "c": 1, + "v": 1 + }, { + "r": 2, + "c": 2, + "v": 1 + }, { + "r": 2, + "c": 3, + "v": 1 + }, { + "r": 2, + "c": 4, + "v": 1 + }, { + "r": 2, + "c": 5, + "v": 4 + }, { + "r": 3, + "c": 0, + "v": "Tim" + }, { + "r": 3, + "c": 1, + "v": 1 + }, { + "r": 3, + "c": 2, + "v": 1 + }, { + "r": 3, + "c": 3, + "v": 1 + }, { + "r": 3, + "c": 4, + "v": 1 + }, { + "r": 3, + "c": 5, + "v": 4 + }, { + "r": 4, + "c": 0, + "v": "total" + }, { + "r": 4, + "c": 1, + "v": 3 + }, { + "r": 4, + "c": 2, + "v": 3 + }, { + "r": 4, + "c": 3, + "v": 3 + }, { + "r": 4, + "c": 4, + "v": 3 + }, { + "r": 4, + "c": 5, + "v": 12 + }], + "ch_width": 4748, + "rh_height": 1790, + "luckysheet_select_save": [{ + "row": [0, 0], + "column": [0, 0] + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 0, + "isPivotTable": true, + "pivotTable": { + "pivot_select_save": { + "left": 0, + "width": 73, + "top": 0, + "height": 19, + "left_move": 0, + "width_move": 369, + "top_move": 0, + "height_move": 259, + "row": [0, 12], + "column": [0, 4], + "row_focus": 0, + "column_focus": 0 + }, + "pivotDataSheetIndex": 6, //The sheet index where the source data is located + "column": [{ + "index": 3, + "name": "subject", + "fullname": "subject" + }], + "row": [{ + "index": 1, + "name": "student", + "fullname": "student" + }], + "filter": [], + "values": [{ + "index": 4, + "name": "score", + "fullname": "count:score", + "sumtype": "COUNTA", + "nameindex": 0 + }], + "showType": "column", + "pivotDatas": [ + ["count:score", "science", "mathematics", "foreign language", "English", "total"], + ["Alex", 1, 1, 1, 1, 4], + ["Joy", 1, 1, 1, 1, 4], + ["Tim", 1, 1, 1, 1, 4], + ["total", 3, 3, 3, 3, 12] + ], + "drawPivotTable": false, + "pivotTableBoundary": [5, 6] + } +} + +// export default sheetPivotTable; \ No newline at end of file diff --git a/public/demoData/sheetPivotTableData.js b/public/demoData/sheetPivotTableData.js new file mode 100644 index 0000000..3e3407c --- /dev/null +++ b/public/demoData/sheetPivotTableData.js @@ -0,0 +1,741 @@ +window.sheetPivotTableData = { + "name": "PivotTableData", + "color": "", + "config": { + "merge": {} + }, + "index": "6", + "chart": [], + "status": 0, + "order": "6", + "hide": 0, + "column": 18, + "row": 36, + "celldata": [{ + "r": 0, + "c": 0, + "v": { + "m": "Mock test", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Mock test" + } + }, { + "r": 0, + "c": 1, + "v": { + "m": "student", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "student" + } + }, { + "r": 0, + "c": 2, + "v": { + "m": "class", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "class" + } + }, { + "r": 0, + "c": 3, + "v": { + "m": "subject", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "subject" + } + }, { + "r": 0, + "c": 4, + "v": { + "m": "score", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "score" + } + }, { + "r": 1, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 1, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Joy", + "m": "Joy" + } + }, { + "r": 1, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 1, + "c": 3, + "v": { + "m": "English", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "English" + } + }, { + "r": 1, + "c": 4, + "v": { + "v": 96, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "96" + } + }, { + "r": 2, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 2, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Joy", + "m": "Joy" + } + }, { + "r": 2, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 2, + "c": 3, + "v": { + "m": "mathematics", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "mathematics" + } + }, { + "r": 2, + "c": 4, + "v": { + "v": 110, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "110" + } + }, { + "r": 3, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 3, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Joy", + "m": "Joy" + } + }, { + "r": 3, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 3, + "c": 3, + "v": { + "m": "foreign language", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "foreign language" + } + }, { + "r": 3, + "c": 4, + "v": { + "v": 87, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "87" + } + }, { + "r": 4, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 4, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Joy", + "m": "Joy" + } + }, { + "r": 4, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 4, + "c": 3, + "v": { + "m": "science", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "science" + } + }, { + "r": 4, + "c": 4, + "v": { + "v": 266, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "266" + } + }, { + "r": 5, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 5, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Tim", + "m": "Tim" + } + }, { + "r": 5, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 5, + "c": 3, + "v": { + "m": "English", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "English" + } + }, { + "r": 5, + "c": 4, + "v": { + "v": 92, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "92" + } + }, { + "r": 6, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 6, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Tim", + "m": "Tim" + } + }, { + "r": 6, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 6, + "c": 3, + "v": { + "m": "mathematics", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "mathematics" + } + }, { + "r": 6, + "c": 4, + "v": { + "v": 100, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "100" + } + }, { + "r": 7, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 7, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Tim", + "m": "Tim" + } + }, { + "r": 7, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 7, + "c": 3, + "v": { + "m": "foreign language", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "foreign language" + } + }, { + "r": 7, + "c": 4, + "v": { + "v": 90, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "90" + } + }, { + "r": 8, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 8, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Tim", + "m": "Tim" + } + }, { + "r": 8, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 8, + "c": 3, + "v": { + "m": "science", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "science" + } + }, { + "r": 8, + "c": 4, + "v": { + "v": 255, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "255" + } + }, { + "r": 9, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 9, + "c": 1, + "v": { + "m": "Alex", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Alex" + } + }, { + "r": 9, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 9, + "c": 3, + "v": { + "m": "English", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "English" + } + }, { + "r": 9, + "c": 4, + "v": { + "v": 108, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "108" + } + }, { + "r": 10, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 10, + "c": 1, + "v": { + "m": "Alex", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Alex" + } + }, { + "r": 10, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 10, + "c": 3, + "v": { + "m": "mathematics", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "mathematics" + } + }, { + "r": 10, + "c": 4, + "v": { + "v": 117, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "117" + } + }, { + "r": 11, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 11, + "c": 1, + "v": { + "m": "Alex", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Alex" + } + }, { + "r": 11, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 11, + "c": 3, + "v": { + "m": "foreign language", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "foreign language" + } + }, { + "r": 11, + "c": 4, + "v": { + "v": 88, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "88" + } + }, { + "r": 12, + "c": 0, + "v": { + "m": "first round", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "first round" + } + }, { + "r": 12, + "c": 1, + "v": { + "m": "Alex", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Alex" + } + }, { + "r": 12, + "c": 2, + "v": { + "m": "Class one", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Class one" + } + }, { + "r": 12, + "c": 3, + "v": { + "m": "science", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "science" + } + }, { + "r": 12, + "c": 4, + "v": { + "v": 278, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "278" + } + }], + "ch_width": 4748, + "rh_height": 1790, + "luckysheet_select_save": [{ + "row": [0, 0], + "column": [0, 0] + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 0 +} + +// export default sheetPivotTableData; \ No newline at end of file diff --git a/public/demoData/sheetSparkline.js b/public/demoData/sheetSparkline.js new file mode 100644 index 0000000..031c445 --- /dev/null +++ b/public/demoData/sheetSparkline.js @@ -0,0 +1,7066 @@ +window.sheetSparkline = { + "name": "Sparkline", + "color": "", + "config": { + "merge": { + "1_2": { + "r": 1, + "c": 2, + "rs": 1, + "cs": 2 + }, + "1_4": { + "r": 1, + "c": 4, + "rs": 1, + "cs": 2 + }, + "0_0": { + "r": 0, + "c": 0, + "rs": 1, + "cs": 6 + }, + "2_2": { + "r": 2, + "c": 2, + "rs": 3, + "cs": 2 + }, + "2_4": { + "r": 2, + "c": 4, + "rs": 3, + "cs": 2 + }, + "6_0": { + "r": 6, + "c": 0, + "rs": 1, + "cs": 5 + }, + "7_2": { + "r": 7, + "c": 2, + "rs": 1, + "cs": 2 + }, + "8_2": { + "r": 8, + "c": 2, + "rs": 3, + "cs": 2 + }, + "12_0": { + "r": 12, + "c": 0, + "rs": 1, + "cs": 5 + }, + "13_2": { + "r": 13, + "c": 2, + "rs": 1, + "cs": 3 + }, + "14_2": { + "r": 14, + "c": 2, + "rs": 4, + "cs": 3 + }, + "19_0": { + "r": 19, + "c": 0, + "rs": 1, + "cs": 5 + }, + "0_9": { + "r": 0, + "c": 9, + "rs": 1, + "cs": 5 + }, + "1_12": { + "r": 1, + "c": 12, + "rs": 1, + "cs": 2 + }, + "2_12": { + "r": 2, + "c": 12, + "rs": 1, + "cs": 2 + }, + "3_12": { + "r": 3, + "c": 12, + "rs": 1, + "cs": 2 + }, + "4_12": { + "r": 4, + "c": 12, + "rs": 1, + "cs": 2 + }, + "6_6": { + "r": 6, + "c": 6, + "rs": 1, + "cs": 8 + }, + "7_6": { + "r": 7, + "c": 6, + "rs": 1, + "cs": 2 + }, + "7_11": { + "r": 7, + "c": 11, + "rs": 1, + "cs": 3 + }, + "8_6": { + "r": 8, + "c": 6, + "rs": 1, + "cs": 2 + }, + "9_6": { + "r": 9, + "c": 6, + "rs": 1, + "cs": 2 + }, + "10_6": { + "r": 10, + "c": 6, + "rs": 1, + "cs": 2 + }, + "8_11": { + "r": 8, + "c": 11, + "rs": 3, + "cs": 3 + }, + "13_6": { + "r": 13, + "c": 6, + "rs": 1, + "cs": 7 + }, + "14_7": { + "r": 14, + "c": 7, + "rs": 1, + "cs": 2 + }, + "14_9": { + "r": 14, + "c": 9, + "rs": 1, + "cs": 2 + }, + "14_11": { + "r": 14, + "c": 11, + "rs": 1, + "cs": 2 + }, + "15_6": { + "r": 15, + "c": 6, + "rs": 2, + "cs": 1 + }, + "17_7": { + "r": 17, + "c": 7, + "rs": 1, + "cs": 2 + }, + "17_9": { + "r": 17, + "c": 9, + "rs": 1, + "cs": 2 + }, + "17_11": { + "r": 17, + "c": 11, + "rs": 1, + "cs": 2 + }, + "18_7": { + "r": 18, + "c": 7, + "rs": 1, + "cs": 2 + }, + "18_9": { + "r": 18, + "c": 9, + "rs": 1, + "cs": 2 + }, + "18_11": { + "r": 18, + "c": 11, + "rs": 1, + "cs": 2 + }, + "19_7": { + "r": 19, + "c": 7, + "rs": 1, + "cs": 2 + }, + "19_9": { + "r": 19, + "c": 9, + "rs": 1, + "cs": 2 + }, + "19_11": { + "r": 19, + "c": 11, + "rs": 1, + "cs": 2 + }, + "20_7": { + "r": 20, + "c": 7, + "rs": 1, + "cs": 2 + }, + "20_9": { + "r": 20, + "c": 9, + "rs": 1, + "cs": 2 + }, + "20_11": { + "r": 20, + "c": 11, + "rs": 1, + "cs": 2 + }, + "21_7": { + "r": 21, + "c": 7, + "rs": 1, + "cs": 2 + }, + "21_9": { + "r": 21, + "c": 9, + "rs": 1, + "cs": 2 + }, + "21_11": { + "r": 21, + "c": 11, + "rs": 1, + "cs": 2 + }, + "15_7": { + "r": 15, + "c": 7, + "rs": 2, + "cs": 7 + }, + "20_0": { + "r": 20, + "c": 0, + "rs": 1, + "cs": 5 + }, + "21_3": { + "r": 21, + "c": 3, + "rs": 1, + "cs": 2 + }, + "22_3": { + "r": 22, + "c": 3, + "rs": 3, + "cs": 2 + }, + "27_2": { + "r": 27, + "c": 2, + "rs": 1, + "cs": 3 + } + }, + "rowlen": { + "0": 29, + "1": 20, + "2": 20, + "3": 20, + "4": 20, + "6": 29, + "7": 20, + "8": 20, + "9": 20, + "10": 20, + "12": 29, + "13": 29, + "14": 20, + "15": 20, + "16": 26, + "17": 20, + "18": 20, + "19": 29, + "20": 29, + "21": 20, + "22": 20, + "23": 20, + "24": 20, + "25": 20, + "27": 100, + "28": 20, + "29": 20, + "30": 20, + "31": 20, + "32": 20, + "33": 20, + "34": 26, + "35": 20, + "36": 20, + "37": 20, + "38": 20, + "39": 20, + "40": 20, + "41": 20, + "42": 20, + "43": 20, + "44": 20, + "45": 20, + "46": 20, + "47": 20, + "48": 20, + "49": 20, + "50": 20, + "51": 20, + "52": 20, + "53": 20, + "54": 20, + "55": 20, + "56": 20, + "57": 20 + }, + "columnlen": { + "0": 101, + "2": 131, + "3": 30, + "4": 90 + }, + "borderInfo": [{ + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 6, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 7, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 8, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 9, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 10, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 11, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 12, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }, { + "rangeType": "cell", + "value": { + "row_index": 7, + "col_index": 13, + "b": { + "style": 13, + "color": "rgb(0, 0, 0)" + } + } + }] + }, + "index": "4", + "chart": [], + "status": 0, + "order": "4", + "column": 18, + "row": 36, + "celldata": [{ + "r": 0, + "c": 0, + "v": { + "v": "The company revenue in 2014", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "The company revenue in 2014", + "mc": { + "r": 0, + "c": 0, + "rs": 1, + "cs": 6 + }, + "fs": "14", + "ht": "0", + "vt": "0" + } + }, { + "r": 0, + "c": 1, + "v": { + "mc": { + "r": 0, + "c": 0 + }, + "fs": "14", + "ht": "0", + "vt": "0" + } + }, { + "r": 0, + "c": 2, + "v": { + "mc": { + "r": 0, + "c": 0 + }, + "fs": "14", + "ht": "0", + "vt": "0" + } + }, { + "r": 0, + "c": 3, + "v": { + "mc": { + "r": 0, + "c": 0 + }, + "fs": "14", + "ht": "0", + "vt": "0" + } + }, { + "r": 0, + "c": 4, + "v": { + "mc": { + "r": 0, + "c": 0 + }, + "fs": "14", + "ht": "0", + "vt": "0" + } + }, { + "r": 0, + "c": 5, + "v": { + "mc": { + "r": 0, + "c": 0 + }, + "fs": "14", + "ht": "0", + "vt": "0" + } + }, { + "r": 0, + "c": 9, + "v": { + "v": "Mobile Phone Contrast", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Mobile Phone Contrast", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 16, + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 0, + "c": 9, + "rs": 1, + "cs": 5 + } + } + }, { + "r": 0, + "c": 10, + "v": { + "mc": { + "r": 0, + "c": 9 + } + } + }, { + "r": 0, + "c": 11, + "v": { + "mc": { + "r": 0, + "c": 9 + } + } + }, { + "r": 0, + "c": 12, + "v": { + "mc": { + "r": 0, + "c": 9 + } + } + }, { + "r": 0, + "c": 13, + "v": { + "mc": { + "r": 0, + "c": 9 + } + } + }, { + "r": 1, + "c": 0, + "v": { + "m": "Month", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Month", + "bg": "#f1c232", + "fc": "#ffffff", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 1, + "v": { + "m": "Revenue", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Revenue", + "bg": "#f1c232", + "fc": "#ffffff", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 2, + "v": { + "m": "Diagram 1", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Diagram 1", + "mc": { + "r": 1, + "c": 2, + "rs": 1, + "cs": 2 + }, + "bg": "#f1c232", + "fc": "#ffffff", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 3, + "v": { + "mc": { + "r": 1, + "c": 2 + }, + "bg": "#f1c232", + "fc": "#ffffff", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 4, + "v": { + "m": "Diagram 2", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Diagram 2", + "mc": { + "r": 1, + "c": 4, + "rs": 1, + "cs": 2 + }, + "bg": "#f1c232", + "fc": "#ffffff", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 5, + "v": { + "mc": { + "r": 1, + "c": 4 + }, + "bg": "#f1c232", + "fc": "#ffffff", + "ht": "1", + "vt": "0" + } + }, { + "r": 1, + "c": 9, + "v": { + "v": null, + "m": "", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 1, + "c": 10, + "v": { + "v": "Phone I", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Phone I", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 1, + "c": 11, + "v": { + "v": "Phone II", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Phone II", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 1, + "c": 12, + "v": { + "v": "Diagram", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Diagram", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0, + "mc": { + "r": 1, + "c": 12, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 1, + "c": 13, + "v": { + "mc": { + "r": 1, + "c": 12 + } + } + }, { + "r": 2, + "c": 0, + "v": { + "m": "2014-02-01", + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "v": 41671 + } + }, { + "r": 2, + "c": 1, + "v": { + "v": 30, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "30", + "ht": "0", + "vt": "0" + } + }, { + "r": 2, + "c": 2, + "v": { + "mc": { + "r": 2, + "c": 2, + "rs": 3, + "cs": 2 + }, + "f": "=LINESPLINES(B3:B5,'pink',4,'avg','yellow','red','green',3)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Shape", + "args": [0, [ + [0, 21], + [0, 21], + [80, 54], + [159, 3] + ], "pink", null, 4] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, null, 159, null, null, "yellow"] + }, + "2": { + "id": 2, + "type": "Circle", + "args": [2, 80, 54, 3, null, "green", null] + }, + "3": { + "id": 3, + "type": "Circle", + "args": [3, 159, 3, 3, null, "red", null] + } + }, + "shapeseq": [0, 1, 2, 3], + "offsetX": 0, + "offsetY": 5, + "pixelWidth": 162, + "pixelHeight": 58 + } + } + }, { + "r": 2, + "c": 3, + "v": { + "mc": { + "r": 2, + "c": 2 + } + } + }, { + "r": 2, + "c": 4, + "v": { + "mc": { + "r": 2, + "c": 4, + "rs": 3, + "cs": 2 + }, + "f": "=COLUMNSPLINES(B3:B5,35,'red','green','auto','brown')", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 108, 1, 18, 29, "red", "red"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 54, 31, 18, 21, "green", "green"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 0, 20, 18, 10, "brown", "brown"] + } + }, + "shapeseq": [0, 1, 2], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 164, + "pixelHeight": 63 + } + } + }, { + "r": 2, + "c": 5, + "v": { + "mc": { + "r": 2, + "c": 4 + } + } + }, { + "r": 2, + "c": 9, + "v": { + "v": "Size(inch)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Size(inch)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 10, + "v": { + "v": 5, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "5", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 2, + "c": 11, + "v": { + "v": 3.7, + "ct": { + "fa": "0.0", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "3.7" + } + }, { + "r": 2, + "c": 12, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 2, + "c": 12, + "rs": 1, + "cs": 2 + }, + "f": "=STACKBARSPLINES(K3:L3)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 10, 107, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 0, 145, 8, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 147, + "pixelHeight": 21 + }, + "ct": { + "fa": "General", + "t": "n" + } + } + }, { + "r": 2, + "c": 13, + "v": { + "mc": { + "r": 2, + "c": 12 + } + } + }, { + "r": 3, + "c": 0, + "v": { + "m": "2014-03-01", + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "v": 41699 + } + }, { + "r": 3, + "c": 1, + "v": { + "v": -60, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "-60", + "ht": "0", + "vt": "0" + } + }, { + "r": 3, + "c": 2, + "v": { + "mc": { + "r": 2, + "c": 2 + } + } + }, { + "r": 3, + "c": 3, + "v": { + "mc": { + "r": 2, + "c": 2 + } + } + }, { + "r": 3, + "c": 4, + "v": { + "mc": { + "r": 2, + "c": 4 + } + } + }, { + "r": 3, + "c": 5, + "v": { + "mc": { + "r": 2, + "c": 4 + } + } + }, { + "r": 3, + "c": 9, + "v": { + "v": "RAM(G)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "RAM(G)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 10, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 11, + "v": { + "v": 1, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 3, + "c": 12, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 3, + "c": 12, + "rs": 1, + "cs": 2 + }, + "f": "=STACKBARSPLINES(K4:L4)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 10, 47, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 0, 145, 8, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 147, + "pixelHeight": 21 + } + } + }, { + "r": 3, + "c": 13, + "v": { + "mc": { + "r": 3, + "c": 12 + } + } + }, { + "r": 4, + "c": 0, + "v": { + "m": "2014-04-01", + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "v": 41730 + } + }, { + "r": 4, + "c": 1, + "v": { + "v": 80, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "80", + "ht": "0", + "vt": "0" + } + }, { + "r": 4, + "c": 2, + "v": { + "mc": { + "r": 2, + "c": 2 + } + } + }, { + "r": 4, + "c": 3, + "v": { + "mc": { + "r": 2, + "c": 2 + } + } + }, { + "r": 4, + "c": 4, + "v": { + "mc": { + "r": 2, + "c": 4 + } + } + }, { + "r": 4, + "c": 5, + "v": { + "mc": { + "r": 2, + "c": 4 + } + } + }, { + "r": 4, + "c": 9, + "v": { + "v": "Weight(g)", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Weight(g)", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 10, + "v": { + "v": 149, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "149", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 11, + "v": { + "v": 129, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "129", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 4, + "c": 12, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 4, + "c": 12, + "rs": 1, + "cs": 2 + }, + "f": "=STACKBARSPLINES(K5:L5)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 10, 125, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 0, 145, 8, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 147, + "pixelHeight": 21 + } + } + }, { + "r": 4, + "c": 13, + "v": { + "mc": { + "r": 4, + "c": 12 + } + } + }, { + "r": 6, + "c": 0, + "v": { + "v": "My Assets", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "My Assets", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": "14", + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 6, + "c": 0, + "rs": 1, + "cs": 5 + } + } + }, { + "r": 6, + "c": 1, + "v": { + "mc": { + "r": 6, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 6, + "c": 2, + "v": { + "mc": { + "r": 6, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 6, + "c": 3, + "v": { + "mc": { + "r": 6, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 6, + "c": 4, + "v": { + "mc": { + "r": 6, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 6, + "c": 6, + "v": { + "v": "Checkbook Register", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Checkbook Register", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 16, + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 6, + "c": 6, + "rs": 1, + "cs": 8 + } + } + }, { + "r": 6, + "c": 7, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 6, + "c": 8, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 6, + "c": 9, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 6, + "c": 10, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 6, + "c": 11, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 6, + "c": 12, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 6, + "c": 13, + "v": { + "mc": { + "r": 6, + "c": 6 + } + } + }, { + "r": 7, + "c": 0, + "v": { + "v": "Asset Type", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Asset Type", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": "0" + } + }, { + "r": 7, + "c": 1, + "v": { + "v": "Amount", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Amount", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": "0" + } + }, { + "r": 7, + "c": 2, + "v": { + "v": "Diagram", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Diagram", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": "0", + "mc": { + "r": 7, + "c": 2, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 7, + "c": 3, + "v": { + "mc": { + "r": 7, + "c": 2 + }, + "fs": "10", + "ht": "1", + "vt": "0" + } + }, { + "r": 7, + "c": 4, + "v": { + "v": "Note", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Note", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": "10", + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": "0" + } + }, { + "r": 7, + "c": 6, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 7, + "c": 6, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 7, + "c": 7, + "v": { + "mc": { + "r": 7, + "c": 6 + } + } + }, { + "r": 7, + "c": 8, + "v": { + "v": "InitialValue", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "InitialValue", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 9, + "v": { + "v": 815.25, + "ct": { + "fa": "0.00", + "t": "n" + }, + "m": "815.25", + "bg": null, + "bl": 1, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 7, + "c": 10, + "v": { + "v": "Σ", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Σ", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 1 + } + }, { + "r": 7, + "c": 11, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 7, + "c": 11, + "rs": 1, + "cs": 3 + } + } + }, { + "r": 7, + "c": 12, + "v": { + "mc": { + "r": 7, + "c": 11 + } + } + }, { + "r": 7, + "c": 13, + "v": { + "mc": { + "r": 7, + "c": 11 + } + } + }, { + "r": 8, + "c": 0, + "v": { + "v": "Savings", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Savings", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 1, + "v": { + "v": 25000, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 25000" + } + }, { + "r": 8, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 8, + "c": 2, + "rs": 3, + "cs": 2 + }, + "f": "=PIESPLINES(B9:B11)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "PieSlice", + "args": [0, 31, 31, 31, 5.291103416572283, 6.283185307179586, null, "#5ab1ef"] + }, + "1": { + "id": 1, + "type": "PieSlice", + "args": [1, 31, 31, 31, 1.6534698176788385, 5.291103416572283, null, "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "PieSlice", + "args": [2, 31, 31, 31, 0, 1.6534698176788385, null, "#2ec7c9"] + } + }, + "shapeseq": [0, 1, 2], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 162, + "pixelHeight": 63 + } + } + }, { + "r": 8, + "c": 3, + "v": { + "mc": { + "r": 8, + "c": 2 + } + } + }, { + "r": 8, + "c": 4, + "v": { + "v": 0.2631578947368421, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0.263157895", + "bg": "rgb(145, 159, 129)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "f": "=B9/SUM(B9:B11)" + } + }, { + "r": 8, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 8, + "c": 6, + "v": { + "v": "12/11/2012", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "12/11/2012", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 8, + "c": 6, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 8, + "c": 7, + "v": { + "mc": { + "r": 8, + "c": 6 + } + } + }, { + "r": 8, + "c": 8, + "v": { + "v": "CVS", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "CVS", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 9, + "v": { + "v": -200, + "ct": { + "fa": "0.00", + "t": "n" + }, + "m": "-200.00", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 10, + "v": { + "v": 615.25, + "ct": { + "fa": "0.00", + "t": "n" + }, + "m": "615.25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 8, + "c": 11, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "f": "=BARSPLINES(J9:J11)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 56, 42, 53, 19, "#97b552", "#97b552"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 110, 21, 108, 19, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 89, 0, 20, 19, "#97b552", "#97b552"] + } + }, + "shapeseq": [0, 1, 2], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 221, + "pixelHeight": 63 + }, + "mc": { + "r": 8, + "c": 11, + "rs": 3, + "cs": 3 + } + } + }, { + "r": 8, + "c": 12, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 8, + "c": 13, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 9, + "c": 0, + "v": { + "v": "401k", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "401k", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 1, + "v": { + "v": 55000, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 55000" + } + }, { + "r": 9, + "c": 2, + "v": { + "mc": { + "r": 8, + "c": 2 + } + } + }, { + "r": 9, + "c": 3, + "v": { + "mc": { + "r": 8, + "c": 2 + } + } + }, { + "r": 9, + "c": 4, + "v": { + "v": 0.5789473684210527, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0.578947368", + "bg": "rgb(215, 145, 62)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "f": "=B10/SUM(B9:B11)" + } + }, { + "r": 9, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 9, + "c": 6, + "v": { + "v": "12/12/2012", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "12/12/2012", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 9, + "c": 6, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 9, + "c": 7, + "v": { + "mc": { + "r": 9, + "c": 6 + } + } + }, { + "r": 9, + "c": 8, + "v": { + "v": "Bank", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Bank", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 9, + "v": { + "v": 1000.12, + "ct": { + "fa": "#,##0.00", + "t": "n" + }, + "m": "1,000.12", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 10, + "v": { + "v": 1615.37, + "ct": { + "fa": "#,##0.00", + "t": "n" + }, + "m": "1,615.37", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 9, + "c": 11, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 9, + "c": 12, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 9, + "c": 13, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 10, + "c": 0, + "v": { + "v": "Stocks", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Stocks", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 1, + "v": { + "v": 15000, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 15000" + } + }, { + "r": 10, + "c": 2, + "v": { + "mc": { + "r": 8, + "c": 2 + } + } + }, { + "r": 10, + "c": 3, + "v": { + "mc": { + "r": 8, + "c": 2 + } + } + }, { + "r": 10, + "c": 4, + "v": { + "v": 0.15789473684210525, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0.157894737", + "bg": "rgb(206, 167, 34)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "f": "=B11/SUM(B9:B11)" + } + }, { + "r": 10, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 10, + "c": 6, + "v": { + "v": "12/13/2012", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "12/13/2012", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 10, + "c": 6, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 10, + "c": 7, + "v": { + "mc": { + "r": 10, + "c": 6 + } + } + }, { + "r": 10, + "c": 8, + "v": { + "v": "Starbucks", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Starbucks", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 9, + "v": { + "v": -500.43, + "ct": { + "fa": "0.00", + "t": "n" + }, + "m": "-500.43", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 10, + "v": { + "v": 1114.94, + "ct": { + "fa": "#,##0.00", + "t": "n" + }, + "m": "1,114.94", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 10, + "c": 11, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 10, + "c": 12, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 10, + "c": 13, + "v": { + "mc": { + "r": 8, + "c": 11 + } + } + }, { + "r": 12, + "c": 0, + "v": { + "v": "Sales by State", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sales by State", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": "14", + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 12, + "c": 0, + "rs": 1, + "cs": 5 + } + } + }, { + "r": 12, + "c": 1, + "v": { + "mc": { + "r": 12, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 12, + "c": 2, + "v": { + "mc": { + "r": 12, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 12, + "c": 3, + "v": { + "mc": { + "r": 12, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 12, + "c": 4, + "v": { + "mc": { + "r": 12, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 13, + "c": 0, + "v": { + "v": "State", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "State", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": 1 + } + }, { + "r": 13, + "c": 1, + "v": { + "v": "Sales", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Sales", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": 1 + } + }, { + "r": 13, + "c": 2, + "v": { + "v": "Diagram", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Diagram", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": "1", + "vt": 1, + "mc": { + "r": 13, + "c": 2, + "rs": 1, + "cs": 3 + } + } + }, { + "r": 13, + "c": 3, + "v": { + "mc": { + "r": 13, + "c": 2 + }, + "ht": "1" + } + }, { + "r": 13, + "c": 4, + "v": { + "mc": { + "r": 13, + "c": 2 + }, + "ht": "1" + } + }, { + "r": 13, + "c": 6, + "v": { + "v": "Student Grade Statistics", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Student Grade Statistics", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 16, + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 13, + "c": 6, + "rs": 1, + "cs": 7 + } + } + }, { + "r": 13, + "c": 7, + "v": { + "mc": { + "r": 13, + "c": 6 + } + } + }, { + "r": 13, + "c": 8, + "v": { + "mc": { + "r": 13, + "c": 6 + } + } + }, { + "r": 13, + "c": 9, + "v": { + "mc": { + "r": 13, + "c": 6 + } + } + }, { + "r": 13, + "c": 10, + "v": { + "mc": { + "r": 13, + "c": 6 + } + } + }, { + "r": 13, + "c": 11, + "v": { + "mc": { + "r": 13, + "c": 6 + } + } + }, { + "r": 13, + "c": 12, + "v": { + "mc": { + "r": 13, + "c": 6 + } + } + }, { + "r": 13, + "c": 13, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 0, + "v": { + "v": "Idaho", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Idaho", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 14, + "c": 1, + "v": { + "v": 3500, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 3500" + } + }, { + "r": 14, + "c": 2, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 14, + "c": 2, + "rs": 4, + "cs": 3 + }, + "f": "=AREASPLINES(B15:B18)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Shape", + "args": [0, [ + [0, 87], + [0, 61], + [84, 0], + [169, 87], + [253, 35], + [253, 87] + ], "#CCF3F4", "#CCF3F4", null] + }, + "1": { + "id": 1, + "type": "Shape", + "args": [1, [ + [0, 61], + [0, 61], + [84, 0], + [169, 87], + [253, 35] + ], "#2ec7c9", null, 1] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 2, + "pixelWidth": 253, + "pixelHeight": 88 + } + } + }, { + "r": 14, + "c": 3, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 14, + "c": 4, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 14, + "c": 6, + "v": { + "v": "Name", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Name", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 14, + "c": 7, + "v": { + "v": "Chinese", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Chinese", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0, + "mc": { + "r": 14, + "c": 7, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 14, + "c": 8, + "v": { + "mc": { + "r": 14, + "c": 7 + } + } + }, { + "r": 14, + "c": 9, + "v": { + "v": "Math", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Math", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0, + "mc": { + "r": 14, + "c": 9, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 14, + "c": 10, + "v": { + "mc": { + "r": 14, + "c": 9 + } + } + }, { + "r": 14, + "c": 11, + "v": { + "v": "English", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "English", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0, + "mc": { + "r": 14, + "c": 11, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 14, + "c": 12, + "v": { + "mc": { + "r": 14, + "c": 11 + } + } + }, { + "r": 14, + "c": 13, + "v": { + "v": "Total", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Total", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 15, + "c": 0, + "v": { + "v": "Montana", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Montana", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 15, + "c": 1, + "v": { + "v": 7000, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 7000" + } + }, { + "r": 15, + "c": 2, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 15, + "c": 3, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 15, + "c": 4, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 15, + "c": 6, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 15, + "c": 6, + "rs": 2, + "cs": 1 + } + } + }, { + "r": 15, + "c": 7, + "v": { + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "ct": { + "fa": "General", + "t": "g" + }, + "f": "=TRISTATESPLINES(H18:N22,10)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 476, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 462, 23, 3, 1, "#999", "#999"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 448, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 434, 23, 3, 1, "#999", "#999"] + }, + "4": { + "id": 4, + "type": "Rect", + "args": [4, 420, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "5": { + "id": 5, + "type": "Rect", + "args": [5, 406, 23, 3, 1, "#999", "#999"] + }, + "6": { + "id": 6, + "type": "Rect", + "args": [6, 392, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "7": { + "id": 7, + "type": "Rect", + "args": [7, 378, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "8": { + "id": 8, + "type": "Rect", + "args": [8, 364, 23, 3, 1, "#999", "#999"] + }, + "9": { + "id": 9, + "type": "Rect", + "args": [9, 350, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "10": { + "id": 10, + "type": "Rect", + "args": [10, 336, 23, 3, 1, "#999", "#999"] + }, + "11": { + "id": 11, + "type": "Rect", + "args": [11, 322, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "12": { + "id": 12, + "type": "Rect", + "args": [12, 308, 23, 3, 1, "#999", "#999"] + }, + "13": { + "id": 13, + "type": "Rect", + "args": [13, 294, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "14": { + "id": 14, + "type": "Rect", + "args": [14, 280, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "15": { + "id": 15, + "type": "Rect", + "args": [15, 266, 23, 3, 1, "#999", "#999"] + }, + "16": { + "id": 16, + "type": "Rect", + "args": [16, 252, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "17": { + "id": 17, + "type": "Rect", + "args": [17, 238, 23, 3, 1, "#999", "#999"] + }, + "18": { + "id": 18, + "type": "Rect", + "args": [18, 224, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "19": { + "id": 19, + "type": "Rect", + "args": [19, 210, 23, 3, 1, "#999", "#999"] + }, + "20": { + "id": 20, + "type": "Rect", + "args": [20, 196, 24, 3, 22, "#97b552", "#97b552"] + }, + "21": { + "id": 21, + "type": "Rect", + "args": [21, 182, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "22": { + "id": 22, + "type": "Rect", + "args": [22, 168, 23, 3, 1, "#999", "#999"] + }, + "23": { + "id": 23, + "type": "Rect", + "args": [23, 154, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "24": { + "id": 24, + "type": "Rect", + "args": [24, 140, 23, 3, 1, "#999", "#999"] + }, + "25": { + "id": 25, + "type": "Rect", + "args": [25, 126, 24, 3, 22, "#97b552", "#97b552"] + }, + "26": { + "id": 26, + "type": "Rect", + "args": [26, 112, 23, 3, 1, "#999", "#999"] + }, + "27": { + "id": 27, + "type": "Rect", + "args": [27, 98, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "28": { + "id": 28, + "type": "Rect", + "args": [28, 84, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "29": { + "id": 29, + "type": "Rect", + "args": [29, 70, 23, 3, 1, "#999", "#999"] + }, + "30": { + "id": 30, + "type": "Rect", + "args": [30, 56, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "31": { + "id": 31, + "type": "Rect", + "args": [31, 42, 23, 3, 1, "#999", "#999"] + }, + "32": { + "id": 32, + "type": "Rect", + "args": [32, 28, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "33": { + "id": 33, + "type": "Rect", + "args": [33, 14, 23, 3, 1, "#999", "#999"] + }, + "34": { + "id": 34, + "type": "Rect", + "args": [34, 0, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 517, + "pixelHeight": 48 + }, + "mc": { + "r": 15, + "c": 7, + "rs": 2, + "cs": 7 + } + } + }, { + "r": 15, + "c": 8, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 15, + "c": 9, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 15, + "c": 10, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 15, + "c": 11, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 15, + "c": 12, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 15, + "c": 13, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 0, + "v": { + "v": "Oregon", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Oregon", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 16, + "c": 1, + "v": { + "v": 2000, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 2000" + } + }, { + "r": 16, + "c": 2, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 16, + "c": 3, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 16, + "c": 4, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 16, + "c": 6, + "v": { + "mc": { + "r": 15, + "c": 6 + } + } + }, { + "r": 16, + "c": 7, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 8, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 9, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 10, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 11, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 12, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 16, + "c": 13, + "v": { + "mc": { + "r": 15, + "c": 7 + } + } + }, { + "r": 17, + "c": 0, + "v": { + "v": "Washington", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Washington", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 1, + "v": { + "v": 5000, + "ct": { + "fa": "\"$\" #", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "$ 5000" + } + }, { + "r": 17, + "c": 2, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 17, + "c": 3, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 17, + "c": 4, + "v": { + "mc": { + "r": 14, + "c": 2 + } + } + }, { + "r": 17, + "c": 6, + "v": { + "v": "Student 1", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Student 1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 17, + "c": 7, + "v": { + "v": 70, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "70", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 17, + "c": 7, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 17, + "c": 8, + "v": { + "mc": { + "r": 17, + "c": 7 + } + } + }, { + "r": 17, + "c": 9, + "v": { + "v": 90, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "90", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 17, + "c": 9, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 17, + "c": 10, + "v": { + "mc": { + "r": 17, + "c": 9 + } + } + }, { + "r": 17, + "c": 11, + "v": { + "v": 51, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "51", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 17, + "c": 11, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 17, + "c": 12, + "v": { + "mc": { + "r": 17, + "c": 11 + } + } + }, { + "r": 17, + "c": 13, + "v": { + "v": 211, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "211", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 18, + "c": 6, + "v": { + "v": "Student 2", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Student 2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 18, + "c": 7, + "v": { + "v": 99, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "99", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 18, + "c": 7, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 18, + "c": 8, + "v": { + "mc": { + "r": 18, + "c": 7 + } + } + }, { + "r": 18, + "c": 9, + "v": { + "v": -59, + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 18, + "c": 9, + "rs": 1, + "cs": 2 + }, + "m": "-59" + } + }, { + "r": 18, + "c": 10, + "v": { + "mc": { + "r": 18, + "c": 9 + } + } + }, { + "r": 18, + "c": 11, + "v": { + "v": 63, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "63", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 18, + "c": 11, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 18, + "c": 12, + "v": { + "mc": { + "r": 18, + "c": 11 + } + } + }, { + "r": 18, + "c": 13, + "v": { + "v": 221, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "221", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 19, + "c": 0, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": "14", + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 19, + "c": 0, + "rs": 1, + "cs": 5 + } + } + }, { + "r": 19, + "c": 1, + "v": { + "mc": { + "r": 19, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 19, + "c": 2, + "v": { + "mc": { + "r": 19, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 19, + "c": 3, + "v": { + "mc": { + "r": 19, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 19, + "c": 4, + "v": { + "mc": { + "r": 19, + "c": 0 + }, + "fs": "14" + } + }, { + "r": 19, + "c": 6, + "v": { + "v": "Student 3", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Student 3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 19, + "c": 7, + "v": { + "v": -90, + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 19, + "c": 7, + "rs": 1, + "cs": 2 + }, + "m": "-90" + } + }, { + "r": 19, + "c": 8, + "v": { + "mc": { + "r": 19, + "c": 7 + } + } + }, { + "r": 19, + "c": 9, + "v": { + "v": 128, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "128", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 19, + "c": 9, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 19, + "c": 10, + "v": { + "mc": { + "r": 19, + "c": 9 + } + } + }, { + "r": 19, + "c": 11, + "v": { + "v": 74, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "74", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 19, + "c": 11, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 19, + "c": 12, + "v": { + "mc": { + "r": 19, + "c": 11 + } + } + }, { + "r": 19, + "c": 13, + "v": { + "v": 291, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "291", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 20, + "c": 0, + "v": { + "v": "Employee KPI", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Employee KPI", + "bg": null, + "bl": 0, + "it": 0, + "ff": 9, + "fs": 16, + "fc": "rgb(51, 51, 51)", + "ht": 0, + "vt": 0, + "mc": { + "r": 20, + "c": 0, + "rs": 1, + "cs": 5 + } + } + }, { + "r": 20, + "c": 1, + "v": { + "mc": { + "r": 20, + "c": 0 + } + } + }, { + "r": 20, + "c": 2, + "v": { + "mc": { + "r": 20, + "c": 0 + } + } + }, { + "r": 20, + "c": 3, + "v": { + "mc": { + "r": 20, + "c": 0 + } + } + }, { + "r": 20, + "c": 4, + "v": { + "mc": { + "r": 20, + "c": 0 + } + } + }, { + "r": 20, + "c": 6, + "v": { + "v": "Student 4", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Student 4", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 20, + "c": 7, + "v": { + "v": 93, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "93", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 20, + "c": 7, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 20, + "c": 8, + "v": { + "mc": { + "r": 20, + "c": 7 + } + } + }, { + "r": 20, + "c": 9, + "v": { + "v": 61, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "61", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 20, + "c": 9, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 20, + "c": 10, + "v": { + "mc": { + "r": 20, + "c": 9 + } + } + }, { + "r": 20, + "c": 11, + "v": { + "v": 53, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "53", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 20, + "c": 11, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 20, + "c": 12, + "v": { + "mc": { + "r": 20, + "c": 11 + } + } + }, { + "r": 20, + "c": 13, + "v": { + "v": 207, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "207", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 21, + "c": 0, + "v": { + "v": "Name", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Name", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 21, + "c": 1, + "v": { + "v": "Forecast", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Forecast", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 21, + "c": 2, + "v": { + "v": "Actuality", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Actuality", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0 + } + }, { + "r": 21, + "c": 3, + "v": { + "v": "Diagram", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Diagram", + "bg": "rgb(255, 192, 0)", + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(255, 255, 255)", + "ht": 0, + "vt": 0, + "mc": { + "r": 21, + "c": 3, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 21, + "c": 4, + "v": { + "mc": { + "r": 21, + "c": 3 + } + } + }, { + "r": 21, + "c": 6, + "v": { + "v": "Student 5", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Student 5", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 21, + "c": 7, + "v": { + "v": 106, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "106", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 21, + "c": 7, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 21, + "c": 8, + "v": { + "mc": { + "r": 21, + "c": 7 + } + } + }, { + "r": 21, + "c": 9, + "v": { + "v": 82, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "82", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 21, + "c": 9, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 21, + "c": 10, + "v": { + "mc": { + "r": 21, + "c": 9 + } + } + }, { + "r": 21, + "c": 11, + "v": { + "v": 80, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "80", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "mc": { + "r": 21, + "c": 11, + "rs": 1, + "cs": 2 + } + } + }, { + "r": 21, + "c": 12, + "v": { + "mc": { + "r": 21, + "c": 11 + } + } + }, { + "r": 21, + "c": 13, + "v": { + "v": 268, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "268", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 0, + "v": { + "v": "Employee 1", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Employee 1", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 1, + "v": { + "v": 6, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "6", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 22, + "c": 2, + "v": { + "v": 2, + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2" + } + }, { + "r": 22, + "c": 3, + "v": { + "mc": { + "r": 22, + "c": 3, + "rs": 3, + "cs": 2 + }, + "f": "=STACKCOLUMNSPLINES(B23:C25)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 60, 57, 58, 5, "#2ec7c9", "#2ec7c9"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 60, 36, 58, 20, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 60, 27, 58, 8, "#5ab1ef", "#5ab1ef"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 0, 45, 58, 17, "#2ec7c9", "#2ec7c9"] + }, + "4": { + "id": 4, + "type": "Rect", + "args": [4, 0, 21, 58, 23, "#fc5c5c", "#fc5c5c"] + }, + "5": { + "id": 5, + "type": "Rect", + "args": [5, 0, 3, 58, 17, "#5ab1ef", "#5ab1ef"] + } + }, + "shapeseq": [0, 1, 2, 3, 4, 5], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 121, + "pixelHeight": 63 + } + } + }, { + "r": 22, + "c": 4, + "v": { + "mc": { + "r": 22, + "c": 3 + } + } + }, { + "r": 23, + "c": 0, + "v": { + "v": "Employee 2", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Employee 2", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 1, + "v": { + "v": 8, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "8", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 2, + "v": { + "v": 7, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "7", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 23, + "c": 3, + "v": { + "mc": { + "r": 22, + "c": 3 + } + } + }, { + "r": 23, + "c": 4, + "v": { + "mc": { + "r": 22, + "c": 3 + } + } + }, { + "r": 23, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 24, + "c": 0, + "v": { + "v": "Employee 3", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Employee 3", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 24, + "c": 1, + "v": { + "v": 6, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "6", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 24, + "c": 2, + "v": { + "v": 3, + "ct": { + "fa": "General", + "t": "n" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "3" + } + }, { + "r": 24, + "c": 3, + "v": { + "mc": { + "r": 22, + "c": 3 + } + } + }, { + "r": 24, + "c": 4, + "v": { + "mc": { + "r": 22, + "c": 3 + } + } + }, { + "r": 25, + "c": 0, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 1, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 2, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 3, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 25, + "c": 4, + "v": { + "v": null, + "m": "", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 27, + "c": 0, + "v": { + "v": 42370, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-01" + } + }, { + "r": 27, + "c": 1, + "v": { + "v": 12, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "12", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 27, + "c": 2, + "v": { + "f": "=DISCRETESPLINES(B28:B58,30)", + "spl": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 240, 14, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 232, 55, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 224, 57, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 216, 49, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "4": { + "id": 4, + "type": "Rect", + "args": [4, 208, 68, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "5": { + "id": 5, + "type": "Rect", + "args": [5, 200, 71, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "6": { + "id": 6, + "type": "Rect", + "args": [6, 192, 45, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "7": { + "id": 7, + "type": "Rect", + "args": [7, 184, 64, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "8": { + "id": 8, + "type": "Rect", + "args": [8, 176, 30, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "9": { + "id": 9, + "type": "Rect", + "args": [9, 168, 32, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "10": { + "id": 10, + "type": "Rect", + "args": [10, 160, 14, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "11": { + "id": 11, + "type": "Rect", + "args": [11, 152, 12, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "12": { + "id": 12, + "type": "Rect", + "args": [12, 144, 0, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "13": { + "id": 13, + "type": "Rect", + "args": [13, 136, 65, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "14": { + "id": 14, + "type": "Rect", + "args": [14, 128, 7, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "15": { + "id": 15, + "type": "Rect", + "args": [15, 120, 9, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "16": { + "id": 16, + "type": "Rect", + "args": [16, 112, 54, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "17": { + "id": 17, + "type": "Rect", + "args": [17, 104, 3, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "18": { + "id": 18, + "type": "Rect", + "args": [18, 96, 33, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "19": { + "id": 19, + "type": "Rect", + "args": [19, 88, 1, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "20": { + "id": 20, + "type": "Rect", + "args": [20, 80, 53, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "21": { + "id": 21, + "type": "Rect", + "args": [21, 72, 7, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "22": { + "id": 22, + "type": "Rect", + "args": [22, 64, 25, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "23": { + "id": 23, + "type": "Rect", + "args": [23, 56, 8, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "24": { + "id": 24, + "type": "Rect", + "args": [24, 48, 59, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "25": { + "id": 25, + "type": "Rect", + "args": [25, 40, 22, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "26": { + "id": 26, + "type": "Rect", + "args": [26, 32, 46, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "27": { + "id": 27, + "type": "Rect", + "args": [27, 24, 60, 6, 30, "#fc5c5c", "#fc5c5c"] + }, + "28": { + "id": 28, + "type": "Rect", + "args": [28, 16, 32, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "29": { + "id": 29, + "type": "Rect", + "args": [29, 8, 25, 6, 30, "#2ec7c9", "#2ec7c9"] + }, + "30": { + "id": 30, + "type": "Rect", + "args": [30, 0, 62, 6, 30, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 253, + "pixelHeight": 101 + }, + "mc": { + "r": 27, + "c": 2, + "rs": 1, + "cs": 3 + } + } + }, { + "r": 27, + "c": 3, + "v": { + "mc": { + "r": 27, + "c": 2 + } + } + }, { + "r": 27, + "c": 4, + "v": { + "mc": { + "r": 27, + "c": 2 + } + } + }, { + "r": 28, + "c": 0, + "v": { + "v": 42371, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-02" + } + }, { + "r": 28, + "c": 1, + "v": { + "v": 64, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "64", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 29, + "c": 0, + "v": { + "v": 42372, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-03" + } + }, { + "r": 29, + "c": 1, + "v": { + "v": 54, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "54", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 30, + "c": 0, + "v": { + "v": 42373, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-04" + } + }, { + "r": 30, + "c": 1, + "v": { + "v": 15, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "15", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 31, + "c": 0, + "v": { + "v": 42374, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-05" + } + }, { + "r": 31, + "c": 1, + "v": { + "v": 35, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "35", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 31, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 32, + "c": 0, + "v": { + "v": 42375, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-06" + } + }, { + "r": 32, + "c": 1, + "v": { + "v": 67, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "67", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 32, + "c": 2, + "v": { + "f": "=BARSPLINES(B22:B25)" + } + }, { + "r": 32, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 33, + "c": 0, + "v": { + "v": 42376, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-07" + } + }, { + "r": 33, + "c": 1, + "v": { + "v": 16, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "16", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 33, + "c": 2, + "v": { + "f": "=STACKBARSPLINES(B22:B25)" + } + }, { + "r": 33, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 34, + "c": 0, + "v": { + "v": 42377, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-08" + } + }, { + "r": 34, + "c": 1, + "v": { + "v": 87, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "87", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 34, + "c": 2, + "v": { + "f": "=DISCRETESPLINES(B22:B25)" + } + }, { + "r": 34, + "c": 5, + "v": { + "ct": { + "fa": "General", + "t": "g" + } + } + }, { + "r": 34, + "c": 7, + "v": { + "ct": { + "fa": "General", + "t": "n" + } + } + }, { + "r": 35, + "c": 0, + "v": { + "v": 42378, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-09" + } + }, { + "r": 35, + "c": 1, + "v": { + "v": 64, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "64", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 35, + "c": 2, + "v": { + "f": "=TRISTATESPLINES(B22:B25)" + } + }, { + "r": 36, + "c": 0, + "v": { + "v": 42379, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-10" + } + }, { + "r": 36, + "c": 1, + "v": { + "v": 88, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "88", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 36, + "c": 2, + "v": { + "ct": { + "fa": "General", + "t": "e" + } + } + }, { + "r": 37, + "c": 0, + "v": { + "v": 42380, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-11" + } + }, { + "r": 37, + "c": 1, + "v": { + "v": 25, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "25", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 38, + "c": 0, + "v": { + "v": 42381, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-12" + } + }, { + "r": 38, + "c": 1, + "v": { + "v": 96, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "96", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 39, + "c": 0, + "v": { + "v": 42382, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-13" + } + }, { + "r": 39, + "c": 1, + "v": { + "v": 53, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "53", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 40, + "c": 0, + "v": { + "v": 42383, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-14" + } + }, { + "r": 40, + "c": 1, + "v": { + "v": 94, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "94", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 41, + "c": 0, + "v": { + "v": 42384, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-15" + } + }, { + "r": 41, + "c": 1, + "v": { + "v": 23, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "23", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 42, + "c": 0, + "v": { + "v": 42385, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-16" + } + }, { + "r": 42, + "c": 1, + "v": { + "v": 85, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "85", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 43, + "c": 0, + "v": { + "v": 42386, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-17" + } + }, { + "r": 43, + "c": 1, + "v": { + "v": 89, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "89", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 44, + "c": 0, + "v": { + "v": 42387, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-18" + } + }, { + "r": 44, + "c": 1, + "v": { + "v": 8, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "8", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 45, + "c": 0, + "v": { + "v": 42388, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-19" + } + }, { + "r": 45, + "c": 1, + "v": { + "v": 98, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "98", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 46, + "c": 0, + "v": { + "v": 42389, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-20" + } + }, { + "r": 46, + "c": 1, + "v": { + "v": 82, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "82", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 47, + "c": 0, + "v": { + "v": 42390, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-21" + } + }, { + "r": 47, + "c": 1, + "v": { + "v": 79, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "79", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 48, + "c": 0, + "v": { + "v": 42391, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-22" + } + }, { + "r": 48, + "c": 1, + "v": { + "v": 54, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "54", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 49, + "c": 0, + "v": { + "v": 42392, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-23" + } + }, { + "r": 49, + "c": 1, + "v": { + "v": 56, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "56", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 50, + "c": 0, + "v": { + "v": 42393, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-24" + } + }, { + "r": 50, + "c": 1, + "v": { + "v": 10, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "10", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 51, + "c": 0, + "v": { + "v": 42394, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-25" + } + }, { + "r": 51, + "c": 1, + "v": { + "v": 36, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "36", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 52, + "c": 0, + "v": { + "v": 42395, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-26" + } + }, { + "r": 52, + "c": 1, + "v": { + "v": 0, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "0", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 53, + "c": 0, + "v": { + "v": 42396, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-27" + } + }, { + "r": 53, + "c": 1, + "v": { + "v": 4, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "4", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 54, + "c": 0, + "v": { + "v": 42397, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-28" + } + }, { + "r": 54, + "c": 1, + "v": { + "v": 31, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "31", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 55, + "c": 0, + "v": { + "v": 42398, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-29" + } + }, { + "r": 55, + "c": 1, + "v": { + "v": 19, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "19", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 56, + "c": 0, + "v": { + "v": 42399, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-30" + } + }, { + "r": 56, + "c": 1, + "v": { + "v": 22, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "22", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }, { + "r": 57, + "c": 0, + "v": { + "v": 42400, + "ct": { + "fa": "yyyy-MM-dd", + "t": "d" + }, + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1, + "m": "2016-01-31" + } + }, { + "r": 57, + "c": 1, + "v": { + "v": 78, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "78", + "bg": null, + "bl": 0, + "it": 0, + "ff": 0, + "fs": 11, + "fc": "rgb(51, 51, 51)", + "ht": 1, + "vt": 1 + } + }], + "ch_width": 1524, + "rh_height": 1571, + "luckysheet_select_save": [{ + "left": 504, + "width": 73, + "top": 746, + "height": 20, + "left_move": 504, + "width_move": 73, + "top_move": 746, + "height_move": 20, + "row": [29, 29], + "column": [6, 6], + "row_focus": 29, + "column_focus": 6 + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 562, + "calcChain": [{ + "r": 2, + "c": 2, + "index": "4", + "func": [true, "", "=LINESPLINES(B3:B5,'pink',4,'avg','yellow','red','green',3)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Shape", + "args": [0, [ + [0, 21], + [0, 21], + [80, 54], + [159, 3] + ], "pink", null, 4] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, null, 159, null, null, "yellow"] + }, + "2": { + "id": 2, + "type": "Circle", + "args": [2, 80, 54, 3, null, "green", null] + }, + "3": { + "id": 3, + "type": "Circle", + "args": [3, 159, 3, 3, null, "red", null] + } + }, + "shapeseq": [0, 1, 2, 3], + "offsetX": 0, + "offsetY": 5, + "pixelWidth": 162, + "pixelHeight": 58 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 2, + "c": 4, + "index": "4", + "func": [true, "", "=COLUMNSPLINES(B3:B5,35,'red','green','auto','brown')", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 108, 1, 18, 29, "red", "red"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 54, 31, 18, 21, "green", "green"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 0, 20, 18, 10, "brown", "brown"] + } + }, + "shapeseq": [0, 1, 2], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 164, + "pixelHeight": 63 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 8, + "c": 4, + "index": 4, + "func": [true, 0.2631578947368421, "=B9/SUM(B9:B11)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 9, + "c": 4, + "index": 4, + "func": [true, 0.5789473684210527, "=B10/SUM(B9:B11)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 10, + "c": 4, + "index": 4, + "func": [true, 0.15789473684210525, "=B11/SUM(B9:B11)"], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 8, + "c": 2, + "index": 4, + "func": [true, "", "=PIESPLINES(B9:B11)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "PieSlice", + "args": [0, 31, 31, 31, 5.291103416572283, 6.283185307179586, null, "#5ab1ef"] + }, + "1": { + "id": 1, + "type": "PieSlice", + "args": [1, 31, 31, 31, 1.6534698176788385, 5.291103416572283, null, "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "PieSlice", + "args": [2, 31, 31, 31, 0, 1.6534698176788385, null, "#2ec7c9"] + } + }, + "shapeseq": [0, 1, 2], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 162, + "pixelHeight": 63 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 14, + "c": 2, + "index": 4, + "func": [true, "", "=AREASPLINES(B15:B18)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Shape", + "args": [0, [ + [0, 87], + [0, 61], + [84, 0], + [169, 87], + [253, 35], + [253, 87] + ], "#CCF3F4", "#CCF3F4", null] + }, + "1": { + "id": 1, + "type": "Shape", + "args": [1, [ + [0, 61], + [0, 61], + [84, 0], + [169, 87], + [253, 35] + ], "#2ec7c9", null, 1] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 2, + "pixelWidth": 253, + "pixelHeight": 88 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 32, + "c": 2, + "index": 4, + "func": [true, "", "=BARSPLINES(B22:B25)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 15, 129, 3, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 10, 129, 3, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 0, 5, 129, 3, "#fc5c5c", "#fc5c5c"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 0, 0, 129, 3, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1, 2, 3], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 131, + "pixelHeight": 20 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 33, + "c": 2, + "index": 4, + "func": [true, "", "=STACKBARSPLINES(B22:B25)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 0, 129, 18, "#2ec7c9", "#2ec7c9"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 130, 0, 129, 18, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 260, 0, 129, 18, "#5ab1ef", "#5ab1ef"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 390, 0, 129, 18, "#ffb980", "#ffb980"] + } + }, + "shapeseq": [0, 1, 2, 3], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 131, + "pixelHeight": 20 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 34, + "c": 2, + "index": 4, + "func": [true, "", "=DISCRETESPLINES(B22:B25)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 96, null, 30, 6, "#2ec7c9", "#2ec7c9"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 64, null, 30, 6, "#2ec7c9", "#2ec7c9"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 32, null, 30, 6, "#2ec7c9", "#2ec7c9"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 0, null, 30, 6, "#2ec7c9", "#2ec7c9"] + } + }, + "shapeseq": [0, 1, 2, 3], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 131, + "pixelHeight": 20 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 35, + "c": 2, + "index": 4, + "func": [true, "", "=TRISTATESPLINES(B22:B25)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 15, 0, 3, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 10, 0, 3, 8, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 5, 0, 3, 8, "#fc5c5c", "#fc5c5c"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 0, 9, 3, 1, "#999", "#999"] + } + }, + "shapeseq": [0, 1, 2, 3], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 131, + "pixelHeight": 20 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 2, + "c": 12, + "index": 4, + "func": [true, "", "=STACKBARSPLINES(K3:L3)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 10, 107, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 0, 145, 8, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 147, + "pixelHeight": 21 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 27, + "c": 2, + "index": 4, + "func": [true, "", "=DISCRETESPLINES(B28:B58,30)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 120, 3, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 116, 10, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 112, 10, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 108, 9, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "4": { + "id": 4, + "type": "Rect", + "args": [4, 104, 12, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "5": { + "id": 5, + "type": "Rect", + "args": [5, 100, 13, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "6": { + "id": 6, + "type": "Rect", + "args": [6, 96, 8, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "7": { + "id": 7, + "type": "Rect", + "args": [7, 92, 12, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "8": { + "id": 8, + "type": "Rect", + "args": [8, 88, 6, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "9": { + "id": 9, + "type": "Rect", + "args": [9, 84, 6, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "10": { + "id": 10, + "type": "Rect", + "args": [10, 80, 3, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "11": { + "id": 11, + "type": "Rect", + "args": [11, 76, 2, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "12": { + "id": 12, + "type": "Rect", + "args": [12, 72, 0, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "13": { + "id": 13, + "type": "Rect", + "args": [13, 68, 12, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "14": { + "id": 14, + "type": "Rect", + "args": [14, 64, 1, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "15": { + "id": 15, + "type": "Rect", + "args": [15, 60, 2, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "16": { + "id": 16, + "type": "Rect", + "args": [16, 56, 10, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "17": { + "id": 17, + "type": "Rect", + "args": [17, 52, 1, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "18": { + "id": 18, + "type": "Rect", + "args": [18, 48, 6, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "19": { + "id": 19, + "type": "Rect", + "args": [19, 44, 0, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "20": { + "id": 20, + "type": "Rect", + "args": [20, 40, 10, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "21": { + "id": 21, + "type": "Rect", + "args": [21, 36, 1, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "22": { + "id": 22, + "type": "Rect", + "args": [22, 32, 5, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "23": { + "id": 23, + "type": "Rect", + "args": [23, 28, 1, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "24": { + "id": 24, + "type": "Rect", + "args": [24, 24, 11, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "25": { + "id": 25, + "type": "Rect", + "args": [25, 20, 4, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "26": { + "id": 26, + "type": "Rect", + "args": [26, 16, 8, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "27": { + "id": 27, + "type": "Rect", + "args": [27, 12, 11, 2, 6, "#fc5c5c", "#fc5c5c"] + }, + "28": { + "id": 28, + "type": "Rect", + "args": [28, 8, 6, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "29": { + "id": 29, + "type": "Rect", + "args": [29, 4, 5, 2, 6, "#2ec7c9", "#2ec7c9"] + }, + "30": { + "id": 30, + "type": "Rect", + "args": [30, 0, 11, 2, 6, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 131, + "pixelHeight": 19 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 3, + "c": 12, + "index": 4, + "func": [true, "", "=STACKBARSPLINES(K4:L4)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 10, 47, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 0, 145, 8, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 147, + "pixelHeight": 21 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 4, + "c": 12, + "index": 4, + "func": [true, "", "=STACKBARSPLINES(K5:L5)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 0, 10, 125, 8, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 0, 0, 145, 8, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 147, + "pixelHeight": 21 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 8, + "c": 11, + "index": 4, + "func": [true, "", "=BARSPLINES(J9:J11)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 56, 42, 53, 19, "#97b552", "#97b552"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 110, 21, 108, 19, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 89, 0, 20, 19, "#97b552", "#97b552"] + } + }, + "shapeseq": [0, 1, 2], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 221, + "pixelHeight": 63 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 15, + "c": 7, + "index": 4, + "func": [true, "", "=TRISTATESPLINES(H18:N22,10)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 476, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 462, 23, 3, 1, "#999", "#999"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 448, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 434, 23, 3, 1, "#999", "#999"] + }, + "4": { + "id": 4, + "type": "Rect", + "args": [4, 420, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "5": { + "id": 5, + "type": "Rect", + "args": [5, 406, 23, 3, 1, "#999", "#999"] + }, + "6": { + "id": 6, + "type": "Rect", + "args": [6, 392, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "7": { + "id": 7, + "type": "Rect", + "args": [7, 378, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "8": { + "id": 8, + "type": "Rect", + "args": [8, 364, 23, 3, 1, "#999", "#999"] + }, + "9": { + "id": 9, + "type": "Rect", + "args": [9, 350, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "10": { + "id": 10, + "type": "Rect", + "args": [10, 336, 23, 3, 1, "#999", "#999"] + }, + "11": { + "id": 11, + "type": "Rect", + "args": [11, 322, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "12": { + "id": 12, + "type": "Rect", + "args": [12, 308, 23, 3, 1, "#999", "#999"] + }, + "13": { + "id": 13, + "type": "Rect", + "args": [13, 294, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "14": { + "id": 14, + "type": "Rect", + "args": [14, 280, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "15": { + "id": 15, + "type": "Rect", + "args": [15, 266, 23, 3, 1, "#999", "#999"] + }, + "16": { + "id": 16, + "type": "Rect", + "args": [16, 252, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "17": { + "id": 17, + "type": "Rect", + "args": [17, 238, 23, 3, 1, "#999", "#999"] + }, + "18": { + "id": 18, + "type": "Rect", + "args": [18, 224, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "19": { + "id": 19, + "type": "Rect", + "args": [19, 210, 23, 3, 1, "#999", "#999"] + }, + "20": { + "id": 20, + "type": "Rect", + "args": [20, 196, 24, 3, 22, "#97b552", "#97b552"] + }, + "21": { + "id": 21, + "type": "Rect", + "args": [21, 182, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "22": { + "id": 22, + "type": "Rect", + "args": [22, 168, 23, 3, 1, "#999", "#999"] + }, + "23": { + "id": 23, + "type": "Rect", + "args": [23, 154, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "24": { + "id": 24, + "type": "Rect", + "args": [24, 140, 23, 3, 1, "#999", "#999"] + }, + "25": { + "id": 25, + "type": "Rect", + "args": [25, 126, 24, 3, 22, "#97b552", "#97b552"] + }, + "26": { + "id": 26, + "type": "Rect", + "args": [26, 112, 23, 3, 1, "#999", "#999"] + }, + "27": { + "id": 27, + "type": "Rect", + "args": [27, 98, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "28": { + "id": 28, + "type": "Rect", + "args": [28, 84, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "29": { + "id": 29, + "type": "Rect", + "args": [29, 70, 23, 3, 1, "#999", "#999"] + }, + "30": { + "id": 30, + "type": "Rect", + "args": [30, 56, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "31": { + "id": 31, + "type": "Rect", + "args": [31, 42, 23, 3, 1, "#999", "#999"] + }, + "32": { + "id": 32, + "type": "Rect", + "args": [32, 28, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + }, + "33": { + "id": 33, + "type": "Rect", + "args": [33, 14, 23, 3, 1, "#999", "#999"] + }, + "34": { + "id": 34, + "type": "Rect", + "args": [34, 0, 0, 3, 22, "#fc5c5c", "#fc5c5c"] + } + }, + "shapeseq": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 517, + "pixelHeight": 48 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }, { + "r": 22, + "c": 3, + "index": 4, + "func": [true, "", "=STACKCOLUMNSPLINES(B23:C25)", { + "type": "sparklines", + "data": { + "shapes": { + "0": { + "id": 0, + "type": "Rect", + "args": [0, 60, 57, 58, 5, "#2ec7c9", "#2ec7c9"] + }, + "1": { + "id": 1, + "type": "Rect", + "args": [1, 60, 36, 58, 20, "#fc5c5c", "#fc5c5c"] + }, + "2": { + "id": 2, + "type": "Rect", + "args": [2, 60, 27, 58, 8, "#5ab1ef", "#5ab1ef"] + }, + "3": { + "id": 3, + "type": "Rect", + "args": [3, 0, 45, 58, 17, "#2ec7c9", "#2ec7c9"] + }, + "4": { + "id": 4, + "type": "Rect", + "args": [4, 0, 21, 58, 23, "#fc5c5c", "#fc5c5c"] + }, + "5": { + "id": 5, + "type": "Rect", + "args": [5, 0, 3, 58, 17, "#5ab1ef", "#5ab1ef"] + } + }, + "shapeseq": [0, 1, 2, 3, 4, 5], + "offsetX": 0, + "offsetY": 0, + "pixelWidth": 121, + "pixelHeight": 63 + } + }], + "color": "w", + "parent": null, + "chidren": {}, + "times": 0 + }], + "luckysheet_conditionformat_save": [], + "filter_select": null, + "filter": null, + "luckysheet_alternateformat_save": [] +} + +// export default sheetSparkline; \ No newline at end of file diff --git a/public/demoData/sheetTable.js b/public/demoData/sheetTable.js new file mode 100644 index 0000000..c3ba4ba --- /dev/null +++ b/public/demoData/sheetTable.js @@ -0,0 +1,1068 @@ +window.sheetTable = { + "name": "Table", + "color": "", + "config": { + "merge": { + "0_1": { + "r": 0, + "c": 1, + "rs": 1, + "cs": 5 + }, + "0_8": { + "r": 0, + "c": 8, + "rs": 1, + "cs": 5 + }, + "8_1": { + "r": 8, + "c": 1, + "rs": 1, + "cs": 5 + }, + "16_1": { + "r": 16, + "c": 1, + "rs": 1, + "cs": 5 + }, + "8_8": { + "r": 8, + "c": 8, + "rs": 1, + "cs": 5 + }, + "16_8": { + "r": 16, + "c": 8, + "rs": 1, + "cs": 5 + } + } + }, + "index": "3", + "chart": [], + "status": 0, + "order": "3", + "column": 18, + "row": 36, + "celldata": [{ + "r": 0, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Table Style - light3, Filter", + "mc": { + "r": 0, + "c": 1, + "rs": 1, + "cs": 5 + }, + "bl": 1, + "m": "Table Style - light3, Filter" + } + }, { + "r": 0, + "c": 2, + "v": { + "mc": { + "r": 0, + "c": 1 + }, + "bl": 1 + } + }, { + "r": 0, + "c": 3, + "v": { + "mc": { + "r": 0, + "c": 1 + }, + "bl": 1 + } + }, { + "r": 0, + "c": 4, + "v": { + "mc": { + "r": 0, + "c": 1 + }, + "bl": 1 + } + }, { + "r": 0, + "c": 5, + "v": { + "mc": { + "r": 0, + "c": 1 + }, + "bl": 1 + } + }, { + "r": 0, + "c": 8, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "mc": { + "r": 0, + "c": 8, + "rs": 1, + "cs": 5 + }, + "bl": 1, + "m": "Table Style - light6", + "v": "Table Style - light6" + } + }, { + "r": 0, + "c": 9, + "v": { + "mc": { + "r": 0, + "c": 8 + } + } + }, { + "r": 0, + "c": 10, + "v": { + "mc": { + "r": 0, + "c": 8 + } + } + }, { + "r": 0, + "c": 11, + "v": { + "mc": { + "r": 0, + "c": 8 + } + } + }, { + "r": 0, + "c": 12, + "v": { + "mc": { + "r": 0, + "c": 8 + } + } + }, { + "r": 1, + "c": 1, + "v": { + "v": "Column1", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column1" + } + }, { + "r": 1, + "c": 2, + "v": { + "v": "Column2", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column2" + } + }, { + "r": 1, + "c": 3, + "v": { + "v": "Column3", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column3" + } + }, { + "r": 1, + "c": 4, + "v": { + "v": "Column4", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column4" + } + }, { + "r": 1, + "c": 5, + "v": { + "v": "Column5", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column5" + } + }, { + "r": 8, + "c": 1, + "v": { + "v": "Table Style - medium3,Header", + "ct": { + "fa": "General", + "t": "g" + }, + "mc": { + "r": 8, + "c": 1, + "rs": 1, + "cs": 5 + }, + "bl": 1, + "m": "Table Style - medium3,Header" + } + }, { + "r": 8, + "c": 2, + "v": { + "mc": { + "r": 8, + "c": 1 + } + } + }, { + "r": 8, + "c": 3, + "v": { + "mc": { + "r": 8, + "c": 1 + } + } + }, { + "r": 8, + "c": 4, + "v": { + "mc": { + "r": 8, + "c": 1 + } + } + }, { + "r": 8, + "c": 5, + "v": { + "mc": { + "r": 8, + "c": 1 + } + } + }, { + "r": 8, + "c": 8, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Table Style - medium8,Footer", + "mc": { + "r": 8, + "c": 8, + "rs": 1, + "cs": 5 + }, + "bl": 1, + "m": "Table Style - medium8,Footer" + } + }, { + "r": 8, + "c": 9, + "v": { + "mc": { + "r": 8, + "c": 8 + } + } + }, { + "r": 8, + "c": 10, + "v": { + "mc": { + "r": 8, + "c": 8 + } + } + }, { + "r": 8, + "c": 11, + "v": { + "mc": { + "r": 8, + "c": 8 + } + } + }, { + "r": 8, + "c": 12, + "v": { + "mc": { + "r": 8, + "c": 8 + } + } + }, { + "r": 9, + "c": 1, + "v": { + "v": "Column1", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column1" + } + }, { + "r": 9, + "c": 2, + "v": { + "v": "Column2", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column2" + } + }, { + "r": 9, + "c": 3, + "v": { + "v": "Column3", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column3" + } + }, { + "r": 9, + "c": 4, + "v": { + "v": "Column4", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column4" + } + }, { + "r": 9, + "c": 5, + "v": { + "v": "Column5", + "ct": { + "fa": "General", + "t": "g" + }, + "m": "Column5" + } + }, { + "r": 16, + "c": 1, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Table Style - medium6,Header,Footer", + "mc": { + "r": 16, + "c": 1, + "rs": 1, + "cs": 5 + }, + "bl": 1, + "m": "Table Style - medium6,Header,Footer" + } + }, { + "r": 16, + "c": 2, + "v": { + "mc": { + "r": 16, + "c": 1 + } + } + }, { + "r": 16, + "c": 3, + "v": { + "mc": { + "r": 16, + "c": 1 + } + } + }, { + "r": 16, + "c": 4, + "v": { + "mc": { + "r": 16, + "c": 1 + } + } + }, { + "r": 16, + "c": 5, + "v": { + "mc": { + "r": 16, + "c": 1 + } + } + }, { + "r": 16, + "c": 8, + "v": { + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Table Style - medium10,Header,Footer", + "mc": { + "r": 16, + "c": 8, + "rs": 1, + "cs": 5 + }, + "bl": 1, + "m": "Table Style - medium10,Header,Footer" + } + }, { + "r": 16, + "c": 9, + "v": { + "mc": { + "r": 16, + "c": 8 + } + } + }, { + "r": 16, + "c": 10, + "v": { + "mc": { + "r": 16, + "c": 8 + } + } + }, { + "r": 16, + "c": 11, + "v": { + "mc": { + "r": 16, + "c": 8 + } + } + }, { + "r": 16, + "c": 12, + "v": { + "mc": { + "r": 16, + "c": 8 + } + } + }, { + "r": 17, + "c": 1, + "v": { + "m": "Column1", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Column1" + } + }, { + "r": 17, + "c": 2, + "v": { + "m": "Column2", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Column2" + } + }, { + "r": 17, + "c": 3, + "v": { + "m": "Column3", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Column3" + } + }, { + "r": 17, + "c": 4, + "v": { + "m": "Column4", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Column4" + } + }, { + "r": 17, + "c": 5, + "v": { + "m": "Column5", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Column5" + } + }, { + "r": 17, + "c": 8, + "v": { + "m": "Name", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Name" + } + }, { + "r": 17, + "c": 9, + "v": { + "m": "Age", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Age" + } + }, { + "r": 17, + "c": 10, + "v": { + "m": "Sex", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Sex" + } + }, { + "r": 17, + "c": 11, + "v": { + "m": "Address", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Address" + } + }, { + "r": 17, + "c": 12, + "v": { + "m": "Score", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Score" + } + }, { + "r": 18, + "c": 8, + "v": { + "m": "bob", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "bob" + } + }, { + "r": 18, + "c": 9, + "v": { + "v": 36, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "36" + } + }, { + "r": 18, + "c": 10, + "v": { + "m": "man", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "man" + } + }, { + "r": 18, + "c": 11, + "v": { + "m": "Beijing", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Beijing" + } + }, { + "r": 18, + "c": 12, + "v": { + "v": 80, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "80" + } + }, { + "r": 19, + "c": 8, + "v": { + "m": "Betty", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Betty" + } + }, { + "r": 19, + "c": 9, + "v": { + "v": 28, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "28" + } + }, { + "r": 19, + "c": 10, + "v": { + "m": "woman", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "woman" + } + }, { + "r": 19, + "c": 11, + "v": { + "m": "Xi'an", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Xi'an" + } + }, { + "r": 19, + "c": 12, + "v": { + "v": 52, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "52" + } + }, { + "r": 20, + "c": 8, + "v": { + "m": "Gary", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Gary" + } + }, { + "r": 20, + "c": 9, + "v": { + "v": 23, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "23" + } + }, { + "r": 20, + "c": 10, + "v": { + "m": "man", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "man" + } + }, { + "r": 20, + "c": 11, + "v": { + "m": "NewYork", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "NewYork" + } + }, { + "r": 20, + "c": 12, + "v": { + "v": 63, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "63" + } + }, { + "r": 21, + "c": 8, + "v": { + "m": "Hunk", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Hunk" + } + }, { + "r": 21, + "c": 9, + "v": { + "v": 45, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "45" + } + }, { + "r": 21, + "c": 10, + "v": { + "m": "man", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "man" + } + }, { + "r": 21, + "c": 11, + "v": { + "m": "Beijing", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Beijing" + } + }, { + "r": 21, + "c": 12, + "v": { + "v": 80, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "80" + } + }, { + "r": 22, + "c": 8, + "v": { + "m": "Cherry", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Cherry" + } + }, { + "r": 22, + "c": 9, + "v": { + "v": 37, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "37" + } + }, { + "r": 22, + "c": 10, + "v": { + "m": "woman", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "woman" + } + }, { + "r": 22, + "c": 11, + "v": { + "m": "Shanghai", + "ct": { + "fa": "General", + "t": "g" + }, + "v": "Shanghai" + } + }, { + "r": 22, + "c": 12, + "v": { + "v": 58, + "ct": { + "fa": "General", + "t": "n" + }, + "m": "58" + } + }], + "ch_width": 4748, + "rh_height": 1790, + "luckysheet_select_save": [{ + "row": [0, 0], + "column": [0, 0] + }], + "luckysheet_selection_range": [], + "scrollLeft": 0, + "scrollTop": 0, + "filter_select": { + "left": 74, + "width": 73, + "top": 20, + "height": 19, + "left_move": 74, + "width_move": 369, + "top_move": 20, + "height_move": 119, + "row": [1, 6], + "column": [1, 5], + "row_focus": 1, + "column_focus": 1 + }, + "luckysheet_alternateformat_save": [{ + "cellrange": { + "row": [1, 6], + "column": [1, 5] + }, + "format": { + "head": { + "fc": "#000", + "bc": "#5ed593" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#e5fbee" + }, + "foot": { + "fc": "#000", + "bc": "#a5efcc" + } + }, + "hasRowHeader": false, + "hasRowFooter": false + }, { + "cellrange": { + "row": [1, 6], + "column": [8, 12] + }, + "format": { + "head": { + "fc": "#000", + "bc": "#5599fc" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#ecf2fe" + }, + "foot": { + "fc": "#000", + "bc": "#afcbfa" + } + }, + "hasRowHeader": false, + "hasRowFooter": false + }, { + "cellrange": { + "row": [9, 14], + "column": [1, 5] + }, + "format": { + "head": { + "fc": "#000", + "bc": "#5ed593" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#e5fbee" + }, + "foot": { + "fc": "#000", + "bc": "#a5efcc" + } + }, + "hasRowHeader": true, + "hasRowFooter": false + }, { + "cellrange": { + "row": [17, 22], + "column": [1, 5] + }, + "format": { + "head": { + "fc": "#000", + "bc": "#5599fc" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#ecf2fe" + }, + "foot": { + "fc": "#000", + "bc": "#afcbfa" + } + }, + "hasRowHeader": true, + "hasRowFooter": true + }, { + "cellrange": { + "row": [9, 14], + "column": [8, 12] + }, + "format": { + "head": { + "fc": "#000", + "bc": "#7a939a" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#f0eff7" + }, + "foot": { + "fc": "#000", + "bc": "#bdcad0" + } + }, + "hasRowHeader": false, + "hasRowFooter": true + }, { + "cellrange": { + "row": [17, 22], + "column": [8, 12] + }, + "format": { + "head": { + "fc": "#000", + "bc": "#89c54b" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#f1f7e9" + }, + "foot": { + "fc": "#000", + "bc": "#c5e3a7" + } + }, + "hasRowHeader": true, + "hasRowFooter": true + }], + "luckysheet_alternateformat_save_modelCustom": [{ + "head": { + "fc": "#6aa84f", + "bc": "#ffffff" + }, + "one": { + "fc": "#000", + "bc": "#ffffff" + }, + "two": { + "fc": "#000", + "bc": "#e5fbee" + }, + "foot": { + "fc": "#000", + "bc": "#a5efcc" + } + }] +} + +// export default sheetTable; \ No newline at end of file diff --git a/public/desktopIconfont.js b/public/desktopIconfont.js new file mode 100644 index 0000000..a8d4191 --- /dev/null +++ b/public/desktopIconfont.js @@ -0,0 +1 @@ +window._iconfont_svg_string_3948837='',(t=>{var h=(l=(l=document.getElementsByTagName("script"))[l.length-1]).getAttribute("data-injectcss"),l=l.getAttribute("data-disable-injectsvg");if(!l){var i,a,o,c,v,e=function(h,l){l.parentNode.insertBefore(h,l)};if(h&&!t.__iconfont__svg__cssinject__){t.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(h){console&&console.log(h)}}i=function(){var h,l=document.createElement("div");l.innerHTML=t._iconfont_svg_string_3948837,(l=l.getElementsByTagName("svg")[0])&&(l.setAttribute("aria-hidden","true"),l.style.position="absolute",l.style.width=0,l.style.height=0,l.style.overflow="hidden",l=l,(h=document.body).firstChild?e(l,h.firstChild):h.appendChild(l))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(i,0):(a=function(){document.removeEventListener("DOMContentLoaded",a,!1),i()},document.addEventListener("DOMContentLoaded",a,!1)):document.attachEvent&&(o=i,c=t.document,v=!1,p(),c.onreadystatechange=function(){"complete"==c.readyState&&(c.onreadystatechange=null,d())})}function d(){v||(v=!0,o())}function p(){try{c.documentElement.doScroll("left")}catch(h){return void setTimeout(p,50)}d()}})(window); \ No newline at end of file diff --git a/public/expendPlugins/chart/chartmix.css b/public/expendPlugins/chart/chartmix.css new file mode 100644 index 0000000..11517bd --- /dev/null +++ b/public/expendPlugins/chart/chartmix.css @@ -0,0 +1 @@ +.luckysheet-datavisual-quick-menu{width:120px;overflow:auto;margin-top:15px}.luckysheet-datavisual-quick-menu::-webkit-scrollbar{display:none}.luckysheet-datavisual-quick-menu>div{text-align:left;padding:4px 4px;border-right:3px solid #fff;color:#777;cursor:pointer;line-height:1.4em;word-wrap:break-word}.luckysheet-datavisual-quick-menu>div:hover{color:#000}.luckysheet-datavisual-quick-menu>div i{width:15px}.luckysheet-datavisual-quick-menu>div:hover i{color:#ff7e7e}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active{border-right:3px solid #ff7e7e;color:#000;font-weight:700}.luckysheet-datavisual-quick-menu>div.luckysheet-datavisual-quick-menu-active:hover i{color:#000}.luckysheet-datavisual-quick-range{padding:5px 0}.luckysheet-datavisual-range-container{background:#fff;border:1px solid #d9d9d9;border-top:1px solid silver;min-width:20px;width:100%;max-width:200px;display:inline-block}.luckysheet-datavisual-range-container-focus{border:1px solid #4d90fe;box-shadow:inset 0 1px 2px rgba(0,0,0,.3);outline:none}.luckysheet-datavisual-range-input,.luckysheet-datavisual-range-input:focus{background:transparent!important;border:none!important;box-sizing:border-box;box-shadow:none;height:25px;margin:0;outline:none!important;padding:1px 8px!important;width:100%}.luckysheet-datavisual-range-button-container{overflow:hidden;padding:0 0 0 8px;text-align:right;width:21px}.luckysheet-datavisual-range-button-container div{padding:2px 10px 0 10px;font-size:18px;cursor:pointer;color:#6598f3}.luckysheet-datavisual-range-button-container div:hover{color:#ff7e7e}.luckysheet-datavisual-quick-m{margin-top:5px;min-height:500px;top:50px;font-size:12px}.luckysheet-datavisual-quick-list{left:110px;right:0;bottom:0;top:80px;position:absolute;overflow:auto;border-top:1px solid #e5e5e5;padding:5px 3px 35px 3px}.luckysheet-datavisual-quick-list-title{padding:4px 6px;background:#e5e5e5;margin-top:10px}.luckysheet-datavisual-quick-list-ul{overflow:hidden}.luckysheet-datavisual-quick-list-item{display:inline-block;margin:5px 8px;border:1px solid #dadada;width:100px;height:80px}.luckysheet-datavisual-quick-list-item:hover{border:1px solid #ff7e7e;box-shadow:0 0 20px #ff7e7e}.luckysheet-datavisual-quick-list-item img{display:inline-block;width:100px;height:80px}.luckysheet-datavisual-quick-list-item-active{border:1px solid #6598f3;box-shadow:0 0 20px #6598f3}.chart-base-slider .el-slider__runway.show-input{margin-right:72px}.chart-base-slider .el-slider__input.el-input-number--mini{width:56px}.chart-base-slider .input_content{margin:6px 0 0 5px}.title{font-weight:700}.el-row{font-size:12px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chartSetting{width:100%;height:100%} \ No newline at end of file diff --git a/public/expendPlugins/chart/chartmix.umd.min.js b/public/expendPlugins/chart/chartmix.umd.min.js new file mode 100644 index 0000000..8b36c41 --- /dev/null +++ b/public/expendPlugins/chart/chartmix.umd.min.js @@ -0,0 +1,12 @@ +(function(t,e){"object"===typeof exports&&"object"===typeof module?module.exports=e(require("echarts"),require("Vuex"),require("Vue")):"function"===typeof define&&define.amd?define(["echarts","Vuex","Vue"],e):"object"===typeof exports?exports["chartmix"]=e(require("echarts"),require("Vuex"),require("Vue")):t["chartmix"]=e(t["echarts"],t["Vuex"],t["Vue"])})("undefined"!==typeof self?self:this,(function(t,e,n){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="fb15")}({"00fd":function(t,e,n){var r=n("9e69"),i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;function l(t){var e=a.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(l){}var i=o.call(t);return r&&(e?t[s]=n:delete t[s]),i}t.exports=l},"03dd":function(t,e,n){var r=n("eac5"),i=n("57a5"),a=Object.prototype,o=a.hasOwnProperty;function s(t){if(!r(t))return i(t);var e=[];for(var n in Object(t))o.call(t,n)&&"constructor"!=n&&e.push(n);return e}t.exports=s},"04f8":function(t,e,n){var r=n("2d00"),i=n("d039"),a=n("da84"),o=a.String;t.exports=!!Object.getOwnPropertySymbols&&!i((function(){var t=Symbol();return!o(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},"0644":function(t,e,n){var r=n("3818"),i=1,a=4;function o(t){return r(t,i|a)}t.exports=o},"06cf":function(t,e,n){var r=n("83ab"),i=n("c65b"),a=n("d1e7"),o=n("5c6c"),s=n("fc6a"),l=n("a04b"),c=n("1a2d"),u=n("0cfb"),h=Object.getOwnPropertyDescriptor;e.f=r?h:function(t,e){if(t=s(t),e=l(e),u)try{return h(t,e)}catch(n){}if(c(t,e))return o(!i(a.f,t,e),t[e])}},"07c7":function(t,e){function n(){return!1}t.exports=n},"07fa":function(t,e,n){var r=n("50c4");t.exports=function(t){return r(t.length)}},"087d":function(t,e){function n(t,e){var n=-1,r=e.length,i=t.length;while(++n0&&e-1 in t)}function I(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()}O.fn=O.prototype={jquery:S,constructor:O,length:0,toArray:function(){return l.call(this)},get:function(t){return null==t?l.call(this):t<0?this[t+this.length]:this[t]},pushStack:function(t){var e=O.merge(this.constructor(),t);return e.prevObject=this,e},each:function(t){return O.each(this,t)},map:function(t){return this.pushStack(O.map(this,(function(e,n){return t.call(e,n,e)})))},slice:function(){return this.pushStack(l.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(O.grep(this,(function(t,e){return(e+1)%2})))},odd:function(){return this.pushStack(O.grep(this,(function(t,e){return e%2})))},eq:function(t){var e=this.length,n=+t+(t<0?e:0);return this.pushStack(n>=0&&n+~]|"+G+")"+G+"*"),Q=new RegExp(G+"|>"),W=new RegExp(M),F=new RegExp("^"+T+"$"),q={ID:new RegExp("^#("+T+")"),CLASS:new RegExp("^\\.("+T+")"),TAG:new RegExp("^("+T+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+G+"*(even|odd|(([+-]|)(\\d*)n|)"+G+"*(?:([+-]|)"+G+"*(\\d+)|))"+G+"*\\)|)","i"),bool:new RegExp("^(?:"+k+")$","i"),needsContext:new RegExp("^"+G+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+G+"*((?:-\\d)?\\d*)"+G+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,H=/^h\d$/i,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,J=/[+~]/,U=new RegExp("\\\\[\\da-fA-F]{1,6}"+G+"?|\\\\([^\\r\\n\\f])","g"),Y=function(t,e){var n="0x"+t.slice(1)-65536;return e||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},K=function(){ct()},_=pt((function(t){return!0===t.disabled&&I(t,"fieldset")}),{dir:"parentNode",next:"legend"});function $(){try{return s.activeElement}catch(t){}}try{g.apply(o=l.call(R.childNodes),R.childNodes),o[R.childNodes.length].nodeType}catch(wt){g={apply:function(t,e){B.apply(t,l.call(e))},call:function(t){B.apply(t,l.call(arguments,1))}}}function tt(t,e,n,r){var i,a,o,l,c,h,p,d=e&&e.ownerDocument,v=e?e.nodeType:9;if(n=n||[],"string"!==typeof t||!t||1!==v&&9!==v&&11!==v)return n;if(!r&&(ct(e),e=e||s,u)){if(11!==v&&(c=Z.exec(t)))if(i=c[1]){if(9===v){if(!(o=e.getElementById(i)))return n;if(o.id===i)return g.call(n,o),n}else if(d&&(o=d.getElementById(i))&&tt.contains(e,o)&&o.id===i)return g.call(n,o),n}else{if(c[2])return g.apply(n,e.getElementsByTagName(t)),n;if((i=c[3])&&e.getElementsByClassName)return g.apply(n,e.getElementsByClassName(i)),n}if(!C[t+" "]&&(!f||!f.test(t))){if(p=t,d=e,1===v&&(Q.test(t)||z.test(t))){d=J.test(t)&<(e.parentNode)||e,d==e&&b.scope||((l=e.getAttribute("id"))?l=O.escapeSelector(l):e.setAttribute("id",l=m)),h=ht(t),a=h.length;while(a--)h[a]=(l?"#"+l:":scope")+" "+ft(h[a]);p=h.join(",")}try{return g.apply(n,d.querySelectorAll(p)),n}catch(y){C(t,!0)}finally{l===m&&e.removeAttribute("id")}}}return At(t.replace(j,"$1"),e,n,r)}function et(){var t=[];function n(r,i){return t.push(r+" ")>e.cacheLength&&delete n[t.shift()],n[r+" "]=i}return n}function nt(t){return t[m]=!0,t}function rt(t){var e=s.createElement("fieldset");try{return!!t(e)}catch(wt){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function it(t){return function(e){return I(e,"input")&&e.type===t}}function at(t){return function(e){return(I(e,"input")||I(e,"button"))&&e.type===t}}function ot(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&_(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function st(t){return nt((function(e){return e=+e,nt((function(n,r){var i,a=t([],n.length,e),o=a.length;while(o--)n[i=a[o]]&&(n[i]=!(r[i]=n[i]))}))}))}function lt(t){return t&&"undefined"!==typeof t.getElementsByTagName&&t}function ct(t){var n,r=t?t.ownerDocument||t:R;return r!=s&&9===r.nodeType&&r.documentElement?(s=r,c=s.documentElement,u=!O.isXMLDoc(s),p=c.matches||c.webkitMatchesSelector||c.msMatchesSelector,R!=s&&(n=s.defaultView)&&n.top!==n&&n.addEventListener("unload",K),b.getById=rt((function(t){return c.appendChild(t).id=O.expando,!s.getElementsByName||!s.getElementsByName(O.expando).length})),b.disconnectedMatch=rt((function(t){return p.call(t,"*")})),b.scope=rt((function(){return s.querySelectorAll(":scope")})),b.cssHas=rt((function(){try{return s.querySelector(":has(*,:jqfake)"),!1}catch(wt){return!0}})),b.getById?(e.filter.ID=function(t){var e=t.replace(U,Y);return function(t){return t.getAttribute("id")===e}},e.find.ID=function(t,e){if("undefined"!==typeof e.getElementById&&u){var n=e.getElementById(t);return n?[n]:[]}}):(e.filter.ID=function(t){var e=t.replace(U,Y);return function(t){var n="undefined"!==typeof t.getAttributeNode&&t.getAttributeNode("id");return n&&n.value===e}},e.find.ID=function(t,e){if("undefined"!==typeof e.getElementById&&u){var n,r,i,a=e.getElementById(t);if(a){if(n=a.getAttributeNode("id"),n&&n.value===t)return[a];i=e.getElementsByName(t),r=0;while(a=i[r++])if(n=a.getAttributeNode("id"),n&&n.value===t)return[a]}return[]}}),e.find.TAG=function(t,e){return"undefined"!==typeof e.getElementsByTagName?e.getElementsByTagName(t):e.querySelectorAll(t)},e.find.CLASS=function(t,e){if("undefined"!==typeof e.getElementsByClassName&&u)return e.getElementsByClassName(t)},f=[],rt((function(t){var e;c.appendChild(t).innerHTML="",t.querySelectorAll("[selected]").length||f.push("\\["+G+"*(?:value|"+k+")"),t.querySelectorAll("[id~="+m+"-]").length||f.push("~="),t.querySelectorAll("a#"+m+"+*").length||f.push(".#.+[+~]"),t.querySelectorAll(":checked").length||f.push(":checked"),e=s.createElement("input"),e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),c.appendChild(t).disabled=!0,2!==t.querySelectorAll(":disabled").length&&f.push(":enabled",":disabled"),e=s.createElement("input"),e.setAttribute("name",""),t.appendChild(e),t.querySelectorAll("[name='']").length||f.push("\\["+G+"*name"+G+"*="+G+"*(?:''|\"\")")})),b.cssHas||f.push(":has"),f=f.length&&new RegExp(f.join("|")),S=function(t,e){if(t===e)return a=!0,0;var n=!t.compareDocumentPosition-!e.compareDocumentPosition;return n||(n=(t.ownerDocument||t)==(e.ownerDocument||e)?t.compareDocumentPosition(e):1,1&n||!b.sortDetached&&e.compareDocumentPosition(t)===n?t===s||t.ownerDocument==R&&tt.contains(R,t)?-1:e===s||e.ownerDocument==R&&tt.contains(R,e)?1:i?h.call(i,t)-h.call(i,e):0:4&n?-1:1)},s):s}for(t in tt.matches=function(t,e){return tt(t,null,null,e)},tt.matchesSelector=function(t,e){if(ct(t),u&&!C[e+" "]&&(!f||!f.test(e)))try{var n=p.call(t,e);if(n||b.disconnectedMatch||t.document&&11!==t.document.nodeType)return n}catch(wt){C(e,!0)}return tt(e,s,null,[t]).length>0},tt.contains=function(t,e){return(t.ownerDocument||t)!=s&&ct(t),O.contains(t,e)},tt.attr=function(t,n){(t.ownerDocument||t)!=s&&ct(t);var r=e.attrHandle[n.toLowerCase()],i=r&&d.call(e.attrHandle,n.toLowerCase())?r(t,n,!u):void 0;return void 0!==i?i:t.getAttribute(n)},tt.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},O.uniqueSort=function(t){var e,n=[],r=0,o=0;if(a=!b.sortStable,i=!b.sortStable&&l.call(t,0),D.call(t,S),a){while(e=t[o++])e===t[o]&&(r=n.push(o));while(r--)L.call(t,n[r],1)}return i=null,t},O.fn.uniqueSort=function(){return this.pushStack(O.uniqueSort(l.apply(this)))},e=O.expr={cacheLength:50,createPseudo:nt,match:q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(U,Y),t[3]=(t[3]||t[4]||t[5]||"").replace(U,Y),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||tt.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&tt.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return q.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&W.test(n)&&(e=ht(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(U,Y).toLowerCase();return"*"===t?function(){return!0}:function(t){return I(t,e)}},CLASS:function(t){var e=x[t+" "];return e||(e=new RegExp("(^|"+G+")"+t+"("+G+"|$)"))&&x(t,(function(t){return e.test("string"===typeof t.className&&t.className||"undefined"!==typeof t.getAttribute&&t.getAttribute("class")||"")}))},ATTR:function(t,e,n){return function(r){var i=tt.attr(r,t);return null==i?"!="===e:!e||(i+="","="===e?i===n:"!="===e?i!==n:"^="===e?n&&0===i.indexOf(n):"*="===e?n&&i.indexOf(n)>-1:"$="===e?n&&i.slice(-n.length)===n:"~="===e?(" "+i.replace(V," ")+" ").indexOf(n)>-1:"|="===e&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(t,e,n,r,i){var a="nth"!==t.slice(0,3),o="last"!==t.slice(-4),s="of-type"===e;return 1===r&&0===i?function(t){return!!t.parentNode}:function(e,n,l){var c,u,h,f,p,d=a!==o?"nextSibling":"previousSibling",g=e.parentNode,b=s&&e.nodeName.toLowerCase(),y=!l&&!s,x=!1;if(g){if(a){while(d){h=e;while(h=h[d])if(s?I(h,b):1===h.nodeType)return!1;p=d="only"===t&&!p&&"nextSibling"}return!0}if(p=[o?g.firstChild:g.lastChild],o&&y){u=g[m]||(g[m]={}),c=u[t]||[],f=c[0]===v&&c[1],x=f&&c[2],h=f&&g.childNodes[f];while(h=++f&&h&&h[d]||(x=f=0)||p.pop())if(1===h.nodeType&&++x&&h===e){u[t]=[v,f,x];break}}else if(y&&(u=e[m]||(e[m]={}),c=u[t]||[],f=c[0]===v&&c[1],x=f),!1===x)while(h=++f&&h&&h[d]||(x=f=0)||p.pop())if((s?I(h,b):1===h.nodeType)&&++x&&(y&&(u=h[m]||(h[m]={}),u[t]=[v,x]),h===e))break;return x-=i,x===r||x%r===0&&x/r>=0}}},PSEUDO:function(t,n){var r,i=e.pseudos[t]||e.setFilters[t.toLowerCase()]||tt.error("unsupported pseudo: "+t);return i[m]?i(n):i.length>1?(r=[t,t,"",n],e.setFilters.hasOwnProperty(t.toLowerCase())?nt((function(t,e){var r,a=i(t,n),o=a.length;while(o--)r=h.call(t,a[o]),t[r]=!(e[r]=a[o])})):function(t){return i(t,0,r)}):i}},pseudos:{not:nt((function(t){var e=[],n=[],r=xt(t.replace(j,"$1"));return r[m]?nt((function(t,e,n,i){var a,o=r(t,null,i,[]),s=t.length;while(s--)(a=o[s])&&(t[s]=!(e[s]=a))})):function(t,i,a){return e[0]=t,r(e,null,a,n),e[0]=null,!n.pop()}})),has:nt((function(t){return function(e){return tt(t,e).length>0}})),contains:nt((function(t){return t=t.replace(U,Y),function(e){return(e.textContent||O.text(e)).indexOf(t)>-1}})),lang:nt((function(t){return F.test(t||"")||tt.error("unsupported lang: "+t),t=t.replace(U,Y).toLowerCase(),function(e){var n;do{if(n=u?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return n=n.toLowerCase(),n===t||0===n.indexOf(t+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}})),target:function(t){var e=n.location&&n.location.hash;return e&&e.slice(1)===t.id},root:function(t){return t===c},focus:function(t){return t===$()&&s.hasFocus()&&!!(t.type||t.href||~t.tabIndex)},enabled:ot(!1),disabled:ot(!0),checked:function(t){return I(t,"input")&&!!t.checked||I(t,"option")&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!e.pseudos.empty(t)},header:function(t){return H.test(t.nodeName)},input:function(t){return X.test(t.nodeName)},button:function(t){return I(t,"input")&&"button"===t.type||I(t,"button")},text:function(t){var e;return I(t,"input")&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:st((function(){return[0]})),last:st((function(t,e){return[e-1]})),eq:st((function(t,e,n){return[n<0?n+e:n]})),even:st((function(t,e){for(var n=0;ne?e:n;--r>=0;)t.push(r);return t})),gt:st((function(t,e,n){for(var r=n<0?n+e:n;++r1?function(e,n,r){var i=t.length;while(i--)if(!t[i](e,n,r))return!1;return!0}:t[0]}function gt(t,e,n){for(var r=0,i=e.length;r-1&&(a[c]=!(o[c]=f))}}else p=mt(p===o?p.splice(b,p.length):p),i?i(null,o,p,l):g.apply(o,p)}))}function vt(t){for(var n,i,a,o=t.length,s=e.relative[t[0].type],l=s||e.relative[" "],c=s?1:0,u=pt((function(t){return t===n}),l,!0),f=pt((function(t){return h.call(n,t)>-1}),l,!0),p=[function(t,e,i){var a=!s&&(i||e!=r)||((n=e).nodeType?u(t,e,i):f(t,e,i));return n=null,a}];c1&&dt(p),c>1&&ft(t.slice(0,c-1).concat({value:" "===t[c-2].type?"*":""})).replace(j,"$1"),i,c0,a=t.length>0,o=function(o,l,c,h,f){var p,d,m,b=0,y="0",x=o&&[],A=[],w=r,C=o||a&&e.find.TAG("*",f),S=v+=null==w?1:Math.random()||.1,k=C.length;for(f&&(r=l==s||l||f);y!==k&&null!=(p=C[y]);y++){if(a&&p){d=0,l||p.ownerDocument==s||(ct(p),c=!u);while(m=t[d++])if(m(p,l||s,c)){g.call(h,p);break}f&&(v=S)}i&&((p=!m&&p)&&b--,o&&x.push(p))}if(b+=y,i&&y!==b){d=0;while(m=n[d++])m(x,A,l,c);if(o){if(b>0)while(y--)x[y]||A[y]||(A[y]=E.call(h));A=mt(A)}g.apply(h,A),f&&!o&&A.length>0&&b+n.length>1&&O.uniqueSort(h)}return f&&(v=S,r=w),x};return i?nt(o):o}function xt(t,e){var n,r=[],i=[],a=w[t+" "];if(!a){e||(e=ht(t)),n=e.length;while(n--)a=vt(e[n]),a[m]?r.push(a):i.push(a);a=w(t,yt(i,r)),a.selector=t}return a}function At(t,n,r,i){var a,o,s,l,c,h="function"===typeof t&&t,f=!i&&ht(t=h.selector||t);if(r=r||[],1===f.length){if(o=f[0]=f[0].slice(0),o.length>2&&"ID"===(s=o[0]).type&&9===n.nodeType&&u&&e.relative[o[1].type]){if(n=(e.find.ID(s.matches[0].replace(U,Y),n)||[])[0],!n)return r;h&&(n=n.parentNode),t=t.slice(o.shift().value.length)}a=q.needsContext.test(t)?0:o.length;while(a--){if(s=o[a],e.relative[l=s.type])break;if((c=e.find[l])&&(i=c(s.matches[0].replace(U,Y),J.test(o[0].type)&<(n.parentNode)||n))){if(o.splice(a,1),t=i.length&&ft(o),!t)return g.apply(r,i),r;break}}}return(h||xt(t,f))(i,n,!u,r,!n||J.test(t)&<(n.parentNode)||n),r}ut.prototype=e.filters=e.pseudos,e.setFilters=new ut,b.sortStable=m.split("").sort(S).join("")===m,ct(),b.sortDetached=rt((function(t){return 1&t.compareDocumentPosition(s.createElement("fieldset"))})),O.find=tt,O.expr[":"]=O.expr.pseudos,O.unique=O.uniqueSort,tt.compile=xt,tt.select=At,tt.setDocument=ct,tt.escape=O.escapeSelector,tt.getText=O.text,tt.isXML=O.isXMLDoc,tt.selectors=O.expr,tt.support=O.support,tt.uniqueSort=O.uniqueSort})();var V=function(t,e,n){var r=[],i=void 0!==n;while((t=t[e])&&9!==t.nodeType)if(1===t.nodeType){if(i&&O(t).is(n))break;r.push(t)}return r},P=function(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n},z=O.expr.match.needsContext,Q=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function W(t,e,n){return v(e)?O.grep(t,(function(t,r){return!!e.call(t,r,t)!==n})):e.nodeType?O.grep(t,(function(t){return t===e!==n})):"string"!==typeof e?O.grep(t,(function(t){return h.call(e,t)>-1!==n})):O.filter(e,t,n)}O.filter=function(t,e,n){var r=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===r.nodeType?O.find.matchesSelector(r,t)?[r]:[]:O.find.matches(t,O.grep(e,(function(t){return 1===t.nodeType})))},O.fn.extend({find:function(t){var e,n,r=this.length,i=this;if("string"!==typeof t)return this.pushStack(O(t).filter((function(){for(e=0;e1?O.uniqueSort(n):n},filter:function(t){return this.pushStack(W(this,t||[],!1))},not:function(t){return this.pushStack(W(this,t||[],!0))},is:function(t){return!!W(this,"string"===typeof t&&z.test(t)?O(t):t||[],!1).length}});var F,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,X=O.fn.init=function(t,e,n){var r,i;if(!t)return this;if(n=n||F,"string"===typeof t){if(r="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:q.exec(t),!r||!r[1]&&e)return!e||e.jquery?(e||n).find(t):this.constructor(e).find(t);if(r[1]){if(e=e instanceof O?e[0]:e,O.merge(this,O.parseHTML(r[1],e&&e.nodeType?e.ownerDocument||e:x,!0)),Q.test(r[1])&&O.isPlainObject(e))for(r in e)v(this[r])?this[r](e[r]):this.attr(r,e[r]);return this}return i=x.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return t.nodeType?(this[0]=t,this.length=1,this):v(t)?void 0!==n.ready?n.ready(t):t(O):O.makeArray(t,this)};X.prototype=O.fn,F=O(x);var H=/^(?:parents|prev(?:Until|All))/,Z={children:!0,contents:!0,next:!0,prev:!0};function J(t,e){while((t=t[e])&&1!==t.nodeType);return t}O.fn.extend({has:function(t){var e=O(t,this),n=e.length;return this.filter((function(){for(var t=0;t-1:1===n.nodeType&&O.find.matchesSelector(n,t))){a.push(n);break}return this.pushStack(a.length>1?O.uniqueSort(a):a)},index:function(t){return t?"string"===typeof t?h.call(O(t),this[0]):h.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(O.uniqueSort(O.merge(this.get(),O(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),O.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return V(t,"parentNode")},parentsUntil:function(t,e,n){return V(t,"parentNode",n)},next:function(t){return J(t,"nextSibling")},prev:function(t){return J(t,"previousSibling")},nextAll:function(t){return V(t,"nextSibling")},prevAll:function(t){return V(t,"previousSibling")},nextUntil:function(t,e,n){return V(t,"nextSibling",n)},prevUntil:function(t,e,n){return V(t,"previousSibling",n)},siblings:function(t){return P((t.parentNode||{}).firstChild,t)},children:function(t){return P(t.firstChild)},contents:function(t){return null!=t.contentDocument&&s(t.contentDocument)?t.contentDocument:(I(t,"template")&&(t=t.content||t),O.merge([],t.childNodes))}},(function(t,e){O.fn[t]=function(n,r){var i=O.map(this,e,n);return"Until"!==t.slice(-5)&&(r=n),r&&"string"===typeof r&&(i=O.filter(r,i)),this.length>1&&(Z[t]||O.uniqueSort(i),H.test(t)&&i.reverse()),this.pushStack(i)}}));var U=/[^\x20\t\r\n\f]+/g;function Y(t){var e={};return O.each(t.match(U)||[],(function(t,n){e[n]=!0})),e}function K(t){return t}function _(t){throw t}function $(t,e,n,r){var i;try{t&&v(i=t.promise)?i.call(t).done(e).fail(n):t&&v(i=t.then)?i.call(t,e,n):e.apply(void 0,[t].slice(r))}catch(t){n.apply(void 0,[t])}}O.Callbacks=function(t){t="string"===typeof t?Y(t):O.extend({},t);var e,n,r,i,a=[],o=[],s=-1,l=function(){for(i=i||t.once,r=e=!0;o.length;s=-1){n=o.shift();while(++s-1)a.splice(n,1),n<=s&&s--})),this},has:function(t){return t?O.inArray(t,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return i=o=[],a=n="",this},disabled:function(){return!a},lock:function(){return i=o=[],n||e||(a=n=""),this},locked:function(){return!!i},fireWith:function(t,n){return i||(n=n||[],n=[t,n.slice?n.slice():n],o.push(n),e||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},O.extend({Deferred:function(t){var e=[["notify","progress",O.Callbacks("memory"),O.Callbacks("memory"),2],["resolve","done",O.Callbacks("once memory"),O.Callbacks("once memory"),0,"resolved"],["reject","fail",O.Callbacks("once memory"),O.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return a.done(arguments).fail(arguments),this},catch:function(t){return i.then(null,t)},pipe:function(){var t=arguments;return O.Deferred((function(n){O.each(e,(function(e,r){var i=v(t[r[4]])&&t[r[4]];a[r[1]]((function(){var t=i&&i.apply(this,arguments);t&&v(t.promise)?t.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[t]:arguments)}))})),t=null})).promise()},then:function(t,r,i){var a=0;function o(t,e,r,i){return function(){var s=this,l=arguments,c=function(){var n,c;if(!(t=a&&(r!==_&&(s=void 0,l=[n]),e.rejectWith(s,l))}};t?u():(O.Deferred.getErrorHook?u.error=O.Deferred.getErrorHook():O.Deferred.getStackHook&&(u.error=O.Deferred.getStackHook()),n.setTimeout(u))}}return O.Deferred((function(n){e[0][3].add(o(0,n,v(i)?i:K,n.notifyWith)),e[1][3].add(o(0,n,v(t)?t:K)),e[2][3].add(o(0,n,v(r)?r:_))})).promise()},promise:function(t){return null!=t?O.extend(t,i):i}},a={};return O.each(e,(function(t,n){var o=n[2],s=n[5];i[n[1]]=o.add,s&&o.add((function(){r=s}),e[3-t][2].disable,e[3-t][3].disable,e[0][2].lock,e[0][3].lock),o.add(n[3].fire),a[n[0]]=function(){return a[n[0]+"With"](this===a?void 0:this,arguments),this},a[n[0]+"With"]=o.fireWith})),i.promise(a),t&&t.call(a,a),a},when:function(t){var e=arguments.length,n=e,r=Array(n),i=l.call(arguments),a=O.Deferred(),o=function(t){return function(n){r[t]=this,i[t]=arguments.length>1?l.call(arguments):n,--e||a.resolveWith(r,i)}};if(e<=1&&($(t,a.done(o(n)).resolve,a.reject,!e),"pending"===a.state()||v(i[n]&&i[n].then)))return a.then();while(n--)$(i[n],o(n),a.reject);return a.promise()}});var tt=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;O.Deferred.exceptionHook=function(t,e){n.console&&n.console.warn&&t&&tt.test(t.name)&&n.console.warn("jQuery.Deferred exception: "+t.message,t.stack,e)},O.readyException=function(t){n.setTimeout((function(){throw t}))};var et=O.Deferred();function nt(){x.removeEventListener("DOMContentLoaded",nt),n.removeEventListener("load",nt),O.ready()}O.fn.ready=function(t){return et.then(t).catch((function(t){O.readyException(t)})),this},O.extend({isReady:!1,readyWait:1,ready:function(t){(!0===t?--O.readyWait:O.isReady)||(O.isReady=!0,!0!==t&&--O.readyWait>0||et.resolveWith(x,[O]))}}),O.ready.then=et.then,"complete"===x.readyState||"loading"!==x.readyState&&!x.documentElement.doScroll?n.setTimeout(O.ready):(x.addEventListener("DOMContentLoaded",nt),n.addEventListener("load",nt));var rt=function(t,e,n,r,i,a,o){var s=0,l=t.length,c=null==n;if("object"===C(n))for(s in i=!0,n)rt(t,e,s,n[s],!0,a,o);else if(void 0!==r&&(i=!0,v(r)||(o=!0),c&&(o?(e.call(t,r),e=null):(c=e,e=function(t,e,n){return c.call(O(t),n)})),e))for(;s1,null,!0)},removeData:function(t){return this.each((function(){ht.remove(this,t)}))}}),O.extend({queue:function(t,e,n){var r;if(t)return e=(e||"fx")+"queue",r=ut.get(t,e),n&&(!r||Array.isArray(n)?r=ut.access(t,e,O.makeArray(n)):r.push(n)),r||[]},dequeue:function(t,e){e=e||"fx";var n=O.queue(t,e),r=n.length,i=n.shift(),a=O._queueHooks(t,e),o=function(){O.dequeue(t,e)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===e&&n.unshift("inprogress"),delete a.stop,i.call(t,o,a)),!r&&a&&a.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return ut.get(t,n)||ut.access(t,n,{empty:O.Callbacks("once memory").add((function(){ut.remove(t,[e+"queue",n])}))})}}),O.fn.extend({queue:function(t,e){var n=2;return"string"!==typeof t&&(e=t,t="fx",n--),arguments.length\x20\t\r\n\f]*)/i,Et=/^$|^module$|\/(?:java|ecma)script/i;(function(){var t=x.createDocumentFragment(),e=t.appendChild(x.createElement("div")),n=x.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),e.appendChild(n),b.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",b.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue,e.innerHTML="",b.option=!!e.lastChild})();var Dt={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Lt(t,e){var n;return n="undefined"!==typeof t.getElementsByTagName?t.getElementsByTagName(e||"*"):"undefined"!==typeof t.querySelectorAll?t.querySelectorAll(e||"*"):[],void 0===e||e&&I(t,e)?O.merge([t],n):n}function Gt(t,e){for(var n=0,r=t.length;n",""]);var jt=/<|&#?\w+;/;function Nt(t,e,n,r,i){for(var a,o,s,l,c,u,h=e.createDocumentFragment(),f=[],p=0,d=t.length;p-1)i&&i.push(a);else if(c=xt(a),o=Lt(h.appendChild(a),"script"),c&&Gt(o),n){u=0;while(a=o[u++])Et.test(a.type||"")&&n.push(a)}return h}var Mt=/^([^.]*)(?:\.(.+)|)/;function Rt(){return!0}function Bt(){return!1}function Vt(t,e,n,r,i,a){var o,s;if("object"===typeof e){for(s in"string"!==typeof n&&(r=r||n,n=void 0),e)Vt(t,s,n,r,e[s],a);return t}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"===typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Bt;else if(!i)return t;return 1===a&&(o=i,i=function(t){return O().off(t),o.apply(this,arguments)},i.guid=o.guid||(o.guid=O.guid++)),t.each((function(){O.event.add(this,e,i,r,n)}))}function Pt(t,e,n){n?(ut.set(t,e,!1),O.event.add(t,e,{namespace:!1,handler:function(t){var n,r=ut.get(this,e);if(1&t.isTrigger&&this[e]){if(r)(O.event.special[e]||{}).delegateType&&t.stopPropagation();else if(r=l.call(arguments),ut.set(this,e,r),this[e](),n=ut.get(this,e),ut.set(this,e,!1),r!==n)return t.stopImmediatePropagation(),t.preventDefault(),n}else r&&(ut.set(this,e,O.event.trigger(r[0],r.slice(1),this)),t.stopPropagation(),t.isImmediatePropagationStopped=Rt)}})):void 0===ut.get(t,e)&&O.event.add(t,e,Rt)}O.event={global:{},add:function(t,e,n,r,i){var a,o,s,l,c,u,h,f,p,d,g,m=ut.get(t);if(lt(t)){n.handler&&(a=n,n=a.handler,i=a.selector),i&&O.find.matchesSelector(yt,i),n.guid||(n.guid=O.guid++),(l=m.events)||(l=m.events=Object.create(null)),(o=m.handle)||(o=m.handle=function(e){return"undefined"!==typeof O&&O.event.triggered!==e.type?O.event.dispatch.apply(t,arguments):void 0}),e=(e||"").match(U)||[""],c=e.length;while(c--)s=Mt.exec(e[c])||[],p=g=s[1],d=(s[2]||"").split(".").sort(),p&&(h=O.event.special[p]||{},p=(i?h.delegateType:h.bindType)||p,h=O.event.special[p]||{},u=O.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&O.expr.match.needsContext.test(i),namespace:d.join(".")},a),(f=l[p])||(f=l[p]=[],f.delegateCount=0,h.setup&&!1!==h.setup.call(t,r,d,o)||t.addEventListener&&t.addEventListener(p,o)),h.add&&(h.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),i?f.splice(f.delegateCount++,0,u):f.push(u),O.event.global[p]=!0)}},remove:function(t,e,n,r,i){var a,o,s,l,c,u,h,f,p,d,g,m=ut.hasData(t)&&ut.get(t);if(m&&(l=m.events)){e=(e||"").match(U)||[""],c=e.length;while(c--)if(s=Mt.exec(e[c])||[],p=g=s[1],d=(s[2]||"").split(".").sort(),p){h=O.event.special[p]||{},p=(r?h.delegateType:h.bindType)||p,f=l[p]||[],s=s[2]&&new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=a=f.length;while(a--)u=f[a],!i&&g!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(f.splice(a,1),u.selector&&f.delegateCount--,h.remove&&h.remove.call(t,u));o&&!f.length&&(h.teardown&&!1!==h.teardown.call(t,d,m.handle)||O.removeEvent(t,p,m.handle),delete l[p])}else for(p in l)O.event.remove(t,p+e[c],n,r,!0);O.isEmptyObject(l)&&ut.remove(t,"handle events")}},dispatch:function(t){var e,n,r,i,a,o,s=new Array(arguments.length),l=O.event.fix(t),c=(ut.get(this,"events")||Object.create(null))[l.type]||[],u=O.event.special[l.type]||{};for(s[0]=l,e=1;e=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==t.type||!0!==c.disabled)){for(a=[],o={},n=0;n-1:O.find(i,this,null,[c]).length),o[i]&&a.push(r);a.length&&s.push({elem:c,handlers:a})}return c=this,l\s*$/g;function Ft(t,e){return I(t,"table")&&I(11!==e.nodeType?e:e.firstChild,"tr")&&O(t).children("tbody")[0]||t}function qt(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function Xt(t){return"true/"===(t.type||"").slice(0,5)?t.type=t.type.slice(5):t.removeAttribute("type"),t}function Ht(t,e){var n,r,i,a,o,s,l;if(1===e.nodeType){if(ut.hasData(t)&&(a=ut.get(t),l=a.events,l))for(i in ut.remove(e,"handle events"),l)for(n=0,r=l[i].length;n1&&"string"===typeof d&&!b.checkClone&&Qt.test(d))return t.each((function(i){var a=t.eq(i);g&&(e[0]=d.call(this,i,a.html())),Jt(a,e,n,r)}));if(f&&(i=Nt(e,t[0].ownerDocument,!1,t,r),a=i.firstChild,1===i.childNodes.length&&(i=a),a||r)){for(o=O.map(Lt(i,"script"),qt),s=o.length;h0&&Gt(o,!l&&Lt(t,"script")),s},cleanData:function(t){for(var e,n,r,i=O.event.special,a=0;void 0!==(n=t[a]);a++)if(lt(n)){if(e=n[ut.expando]){if(e.events)for(r in e.events)i[r]?O.event.remove(n,r):O.removeEvent(n,r,e.handle);n[ut.expando]=void 0}n[ht.expando]&&(n[ht.expando]=void 0)}}}),O.fn.extend({detach:function(t){return Ut(this,t,!0)},remove:function(t){return Ut(this,t)},text:function(t){return rt(this,(function(t){return void 0===t?O.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)}))}),null,t,arguments.length)},append:function(){return Jt(this,arguments,(function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=Ft(this,t);e.appendChild(t)}}))},prepend:function(){return Jt(this,arguments,(function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=Ft(this,t);e.insertBefore(t,e.firstChild)}}))},before:function(){return Jt(this,arguments,(function(t){this.parentNode&&this.parentNode.insertBefore(t,this)}))},after:function(){return Jt(this,arguments,(function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)}))},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(O.cleanData(Lt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map((function(){return O.clone(this,t,e)}))},html:function(t){return rt(this,(function(t){var e=this[0]||{},n=0,r=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"===typeof t&&!zt.test(t)&&!Dt[(It.exec(t)||["",""])[1].toLowerCase()]){t=O.htmlPrefilter(t);try{for(;n=0&&(l+=Math.max(0,Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-a-l-s-.5))||0),l+c}function pe(t,e,n){var r=_t(t),i=!b.boxSizingReliable()||n,a=i&&"border-box"===O.css(t,"boxSizing",!1,r),o=a,s=ee(t,e,r),l="offset"+e[0].toUpperCase()+e.slice(1);if(Yt.test(s)){if(!n)return s;s="auto"}return(!b.boxSizingReliable()&&a||!b.reliableTrDimensions()&&I(t,"tr")||"auto"===s||!parseFloat(s)&&"inline"===O.css(t,"display",!1,r))&&t.getClientRects().length&&(a="border-box"===O.css(t,"boxSizing",!1,r),o=l in t,o&&(s=t[l])),s=parseFloat(s)||0,s+fe(t,e,n||(a?"border":"content"),o,r,s)+"px"}function de(t,e,n,r,i){return new de.prototype.init(t,e,n,r,i)}O.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=ee(t,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,aspectRatio:!0,borderImageSlice:!0,columnCount:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,scale:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeMiterlimit:!0,strokeOpacity:!0},cssProps:{},style:function(t,e,n,r){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var i,a,o,s=st(e),l=Kt.test(e),c=t.style;if(l||(e=se(s)),o=O.cssHooks[e]||O.cssHooks[s],void 0===n)return o&&"get"in o&&void 0!==(i=o.get(t,!1,r))?i:c[e];a=typeof n,"string"===a&&(i=bt.exec(n))&&i[1]&&(n=Ct(t,e,i),a="number"),null!=n&&n===n&&("number"!==a||l||(n+=i&&i[3]||(O.cssNumber[s]?"":"px")),b.clearCloneStyle||""!==n||0!==e.indexOf("background")||(c[e]="inherit"),o&&"set"in o&&void 0===(n=o.set(t,n,r))||(l?c.setProperty(e,n):c[e]=n))}},css:function(t,e,n,r){var i,a,o,s=st(e),l=Kt.test(e);return l||(e=se(s)),o=O.cssHooks[e]||O.cssHooks[s],o&&"get"in o&&(i=o.get(t,!0,n)),void 0===i&&(i=ee(t,e,r)),"normal"===i&&e in ue&&(i=ue[e]),""===n||n?(a=parseFloat(i),!0===n||isFinite(a)?a||0:i):i}}),O.each(["height","width"],(function(t,e){O.cssHooks[e]={get:function(t,n,r){if(n)return!le.test(O.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?pe(t,e,r):$t(t,ce,(function(){return pe(t,e,r)}))},set:function(t,n,r){var i,a=_t(t),o=!b.scrollboxSize()&&"absolute"===a.position,s=o||r,l=s&&"border-box"===O.css(t,"boxSizing",!1,a),c=r?fe(t,e,r,l,a):0;return l&&o&&(c-=Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-parseFloat(a[e])-fe(t,e,"border",!1,a)-.5)),c&&(i=bt.exec(n))&&"px"!==(i[3]||"px")&&(t.style[e]=n,n=O.css(t,e)),he(t,n,c)}}})),O.cssHooks.marginLeft=ne(b.reliableMarginLeft,(function(t,e){if(e)return(parseFloat(ee(t,"marginLeft"))||t.getBoundingClientRect().left-$t(t,{marginLeft:0},(function(){return t.getBoundingClientRect().left})))+"px"})),O.each({margin:"",padding:"",border:"Width"},(function(t,e){O.cssHooks[t+e]={expand:function(n){for(var r=0,i={},a="string"===typeof n?n.split(" "):[n];r<4;r++)i[t+vt[r]+e]=a[r]||a[r-2]||a[0];return i}},"margin"!==t&&(O.cssHooks[t+e].set=he)})),O.fn.extend({css:function(t,e){return rt(this,(function(t,e,n){var r,i,a={},o=0;if(Array.isArray(e)){for(r=_t(t),i=e.length;o1)}}),O.Tween=de,de.prototype={constructor:de,init:function(t,e,n,r,i,a){this.elem=t,this.prop=n,this.easing=i||O.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=r,this.unit=a||(O.cssNumber[n]?"":"px")},cur:function(){var t=de.propHooks[this.prop];return t&&t.get?t.get(this):de.propHooks._default.get(this)},run:function(t){var e,n=de.propHooks[this.prop];return this.options.duration?this.pos=e=O.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):de.propHooks._default.set(this),this}},de.prototype.init.prototype=de.prototype,de.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=O.css(t.elem,t.prop,""),e&&"auto"!==e?e:0)},set:function(t){O.fx.step[t.prop]?O.fx.step[t.prop](t):1!==t.elem.nodeType||!O.cssHooks[t.prop]&&null==t.elem.style[se(t.prop)]?t.elem[t.prop]=t.now:O.style(t.elem,t.prop,t.now+t.unit)}}},de.propHooks.scrollTop=de.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},O.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},O.fx=de.prototype.init,O.fx.step={};var ge,me,be=/^(?:toggle|show|hide)$/,ve=/queueHooks$/;function ye(){me&&(!1===x.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(ye):n.setTimeout(ye,O.fx.interval),O.fx.tick())}function xe(){return n.setTimeout((function(){ge=void 0})),ge=Date.now()}function Ae(t,e){var n,r=0,i={height:t};for(e=e?1:0;r<4;r+=2-e)n=vt[r],i["margin"+n]=i["padding"+n]=t;return e&&(i.opacity=i.width=t),i}function we(t,e,n){for(var r,i=(ke.tweeners[e]||[]).concat(ke.tweeners["*"]),a=0,o=i.length;a1)},removeAttr:function(t){return this.each((function(){O.removeAttr(this,t)}))}}),O.extend({attr:function(t,e,n){var r,i,a=t.nodeType;if(3!==a&&8!==a&&2!==a)return"undefined"===typeof t.getAttribute?O.prop(t,e,n):(1===a&&O.isXMLDoc(t)||(i=O.attrHooks[e.toLowerCase()]||(O.expr.match.bool.test(e)?Oe:void 0)),void 0!==n?null===n?void O.removeAttr(t,e):i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:(t.setAttribute(e,n+""),n):i&&"get"in i&&null!==(r=i.get(t,e))?r:(r=O.find.attr(t,e),null==r?void 0:r))},attrHooks:{type:{set:function(t,e){if(!b.radioValue&&"radio"===e&&I(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,r=0,i=e&&e.match(U);if(i&&1===t.nodeType)while(n=i[r++])t.removeAttribute(n)}}),Oe={set:function(t,e,n){return!1===e?O.removeAttr(t,n):t.setAttribute(n,n),n}},O.each(O.expr.match.bool.source.match(/\w+/g),(function(t,e){var n=Te[e]||O.find.attr;Te[e]=function(t,e,r){var i,a,o=e.toLowerCase();return r||(a=Te[o],Te[o]=i,i=null!=n(t,e,r)?o:null,Te[o]=a),i}}));var Ie=/^(?:input|select|textarea|button)$/i,Ee=/^(?:a|area)$/i;function De(t){var e=t.match(U)||[];return e.join(" ")}function Le(t){return t.getAttribute&&t.getAttribute("class")||""}function Ge(t){return Array.isArray(t)?t:"string"===typeof t&&t.match(U)||[]}O.fn.extend({prop:function(t,e){return rt(this,O.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each((function(){delete this[O.propFix[t]||t]}))}}),O.extend({prop:function(t,e,n){var r,i,a=t.nodeType;if(3!==a&&8!==a&&2!==a)return 1===a&&O.isXMLDoc(t)||(e=O.propFix[e]||e,i=O.propHooks[e]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:t[e]=n:i&&"get"in i&&null!==(r=i.get(t,e))?r:t[e]},propHooks:{tabIndex:{get:function(t){var e=O.find.attr(t,"tabindex");return e?parseInt(e,10):Ie.test(t.nodeName)||Ee.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),b.optSelected||(O.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),O.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){O.propFix[this.toLowerCase()]=this})),O.fn.extend({addClass:function(t){var e,n,r,i,a,o;return v(t)?this.each((function(e){O(this).addClass(t.call(this,e,Le(this)))})):(e=Ge(t),e.length?this.each((function(){if(r=Le(this),n=1===this.nodeType&&" "+De(r)+" ",n){for(a=0;a-1)n=n.replace(" "+i+" "," ")}o=De(n),r!==o&&this.setAttribute("class",o)}})):this):this.attr("class","")},toggleClass:function(t,e){var n,r,i,a,o=typeof t,s="string"===o||Array.isArray(t);return v(t)?this.each((function(n){O(this).toggleClass(t.call(this,n,Le(this),e),e)})):"boolean"===typeof e&&s?e?this.addClass(t):this.removeClass(t):(n=Ge(t),this.each((function(){if(s)for(a=O(this),i=0;i-1)return!0;return!1}});var je=/\r/g;O.fn.extend({val:function(t){var e,n,r,i=this[0];return arguments.length?(r=v(t),this.each((function(n){var i;1===this.nodeType&&(i=r?t.call(this,n,O(this).val()):t,null==i?i="":"number"===typeof i?i+="":Array.isArray(i)&&(i=O.map(i,(function(t){return null==t?"":t+""}))),e=O.valHooks[this.type]||O.valHooks[this.nodeName.toLowerCase()],e&&"set"in e&&void 0!==e.set(this,i,"value")||(this.value=i))}))):i?(e=O.valHooks[i.type]||O.valHooks[i.nodeName.toLowerCase()],e&&"get"in e&&void 0!==(n=e.get(i,"value"))?n:(n=i.value,"string"===typeof n?n.replace(je,""):null==n?"":n)):void 0}}),O.extend({valHooks:{option:{get:function(t){var e=O.find.attr(t,"value");return null!=e?e:De(O.text(t))}},select:{get:function(t){var e,n,r,i=t.options,a=t.selectedIndex,o="select-one"===t.type,s=o?null:[],l=o?a+1:i.length;for(r=a<0?l:o?a:0;r-1)&&(n=!0);return n||(t.selectedIndex=-1),a}}}}),O.each(["radio","checkbox"],(function(){O.valHooks[this]={set:function(t,e){if(Array.isArray(e))return t.checked=O.inArray(O(t).val(),e)>-1}},b.checkOn||(O.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})}));var Ne=n.location,Me={guid:Date.now()},Re=/\?/;O.parseXML=function(t){var e,r;if(!t||"string"!==typeof t)return null;try{e=(new n.DOMParser).parseFromString(t,"text/xml")}catch(i){}return r=e&&e.getElementsByTagName("parsererror")[0],e&&!r||O.error("Invalid XML: "+(r?O.map(r.childNodes,(function(t){return t.textContent})).join("\n"):t)),e};var Be=/^(?:focusinfocus|focusoutblur)$/,Ve=function(t){t.stopPropagation()};O.extend(O.event,{trigger:function(t,e,r,i){var a,o,s,l,c,u,h,f,p=[r||x],g=d.call(t,"type")?t.type:t,m=d.call(t,"namespace")?t.namespace.split("."):[];if(o=f=s=r=r||x,3!==r.nodeType&&8!==r.nodeType&&!Be.test(g+O.event.triggered)&&(g.indexOf(".")>-1&&(m=g.split("."),g=m.shift(),m.sort()),c=g.indexOf(":")<0&&"on"+g,t=t[O.expando]?t:new O.Event(g,"object"===typeof t&&t),t.isTrigger=i?2:3,t.namespace=m.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),e=null==e?[t]:O.makeArray(e,[t]),h=O.event.special[g]||{},i||!h.trigger||!1!==h.trigger.apply(r,e))){if(!i&&!h.noBubble&&!y(r)){for(l=h.delegateType||g,Be.test(l+g)||(o=o.parentNode);o;o=o.parentNode)p.push(o),s=o;s===(r.ownerDocument||x)&&p.push(s.defaultView||s.parentWindow||n)}a=0;while((o=p[a++])&&!t.isPropagationStopped())f=o,t.type=a>1?l:h.bindType||g,u=(ut.get(o,"events")||Object.create(null))[t.type]&&ut.get(o,"handle"),u&&u.apply(o,e),u=c&&o[c],u&&u.apply&<(o)&&(t.result=u.apply(o,e),!1===t.result&&t.preventDefault());return t.type=g,i||t.isDefaultPrevented()||h._default&&!1!==h._default.apply(p.pop(),e)||!lt(r)||c&&v(r[g])&&!y(r)&&(s=r[c],s&&(r[c]=null),O.event.triggered=g,t.isPropagationStopped()&&f.addEventListener(g,Ve),r[g](),t.isPropagationStopped()&&f.removeEventListener(g,Ve),O.event.triggered=void 0,s&&(r[c]=s)),t.result}},simulate:function(t,e,n){var r=O.extend(new O.Event,n,{type:t,isSimulated:!0});O.event.trigger(r,null,e)}}),O.fn.extend({trigger:function(t,e){return this.each((function(){O.event.trigger(t,e,this)}))},triggerHandler:function(t,e){var n=this[0];if(n)return O.event.trigger(t,e,n,!0)}});var Pe=/\[\]$/,ze=/\r?\n/g,Qe=/^(?:submit|button|image|reset|file)$/i,We=/^(?:input|select|textarea|keygen)/i;function Fe(t,e,n,r){var i;if(Array.isArray(e))O.each(e,(function(e,i){n||Pe.test(t)?r(t,i):Fe(t+"["+("object"===typeof i&&null!=i?e:"")+"]",i,n,r)}));else if(n||"object"!==C(e))r(t,e);else for(i in e)Fe(t+"["+i+"]",e[i],n,r)}O.param=function(t,e){var n,r=[],i=function(t,e){var n=v(e)?e():e;r[r.length]=encodeURIComponent(t)+"="+encodeURIComponent(null==n?"":n)};if(null==t)return"";if(Array.isArray(t)||t.jquery&&!O.isPlainObject(t))O.each(t,(function(){i(this.name,this.value)}));else for(n in t)Fe(n,t[n],e,i);return r.join("&")},O.fn.extend({serialize:function(){return O.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var t=O.prop(this,"elements");return t?O.makeArray(t):this})).filter((function(){var t=this.type;return this.name&&!O(this).is(":disabled")&&We.test(this.nodeName)&&!Qe.test(t)&&(this.checked||!Tt.test(t))})).map((function(t,e){var n=O(this).val();return null==n?null:Array.isArray(n)?O.map(n,(function(t){return{name:e.name,value:t.replace(ze,"\r\n")}})):{name:e.name,value:n.replace(ze,"\r\n")}})).get()}});var qe=/%20/g,Xe=/#.*$/,He=/([?&])_=[^&]*/,Ze=/^(.*?):[ \t]*([^\r\n]*)$/gm,Je=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ue=/^(?:GET|HEAD)$/,Ye=/^\/\//,Ke={},_e={},$e="*/".concat("*"),tn=x.createElement("a");function en(t){return function(e,n){"string"!==typeof e&&(n=e,e="*");var r,i=0,a=e.toLowerCase().match(U)||[];if(v(n))while(r=a[i++])"+"===r[0]?(r=r.slice(1)||"*",(t[r]=t[r]||[]).unshift(n)):(t[r]=t[r]||[]).push(n)}}function nn(t,e,n,r){var i={},a=t===_e;function o(s){var l;return i[s]=!0,O.each(t[s]||[],(function(t,s){var c=s(e,n,r);return"string"!==typeof c||a||i[c]?a?!(l=c):void 0:(e.dataTypes.unshift(c),o(c),!1)})),l}return o(e.dataTypes[0])||!i["*"]&&o("*")}function rn(t,e){var n,r,i=O.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((i[n]?t:r||(r={}))[n]=e[n]);return r&&O.extend(!0,t,r),t}function an(t,e,n){var r,i,a,o,s=t.contents,l=t.dataTypes;while("*"===l[0])l.shift(),void 0===r&&(r=t.mimeType||e.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){l.unshift(i);break}if(l[0]in n)a=l[0];else{for(i in n){if(!l[0]||t.converters[i+" "+l[0]]){a=i;break}o||(o=i)}a=a||o}if(a)return a!==l[0]&&l.unshift(a),n[a]}function on(t,e,n,r){var i,a,o,s,l,c={},u=t.dataTypes.slice();if(u[1])for(o in t.converters)c[o.toLowerCase()]=t.converters[o];a=u.shift();while(a)if(t.responseFields[a]&&(n[t.responseFields[a]]=e),!l&&r&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),l=a,a=u.shift(),a)if("*"===a)a=l;else if("*"!==l&&l!==a){if(o=c[l+" "+a]||c["* "+a],!o)for(i in c)if(s=i.split(" "),s[1]===a&&(o=c[l+" "+s[0]]||c["* "+s[0]],o)){!0===o?o=c[i]:!0!==c[i]&&(a=s[0],u.unshift(s[1]));break}if(!0!==o)if(o&&t.throws)e=o(e);else try{e=o(e)}catch(h){return{state:"parsererror",error:o?h:"No conversion from "+l+" to "+a}}}return{state:"success",data:e}}tn.href=Ne.href,O.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Ne.href,type:"GET",isLocal:Je.test(Ne.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$e,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":O.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?rn(rn(t,O.ajaxSettings),e):rn(O.ajaxSettings,t)},ajaxPrefilter:en(Ke),ajaxTransport:en(_e),ajax:function(t,e){"object"===typeof t&&(e=t,t=void 0),e=e||{};var r,i,a,o,s,l,c,u,h,f,p=O.ajaxSetup({},e),d=p.context||p,g=p.context&&(d.nodeType||d.jquery)?O(d):O.event,m=O.Deferred(),b=O.Callbacks("once memory"),v=p.statusCode||{},y={},A={},w="canceled",C={readyState:0,getResponseHeader:function(t){var e;if(c){if(!o){o={};while(e=Ze.exec(a))o[e[1].toLowerCase()+" "]=(o[e[1].toLowerCase()+" "]||[]).concat(e[2])}e=o[t.toLowerCase()+" "]}return null==e?null:e.join(", ")},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(t,e){return null==c&&(t=A[t.toLowerCase()]=A[t.toLowerCase()]||t,y[t]=e),this},overrideMimeType:function(t){return null==c&&(p.mimeType=t),this},statusCode:function(t){var e;if(t)if(c)C.always(t[C.status]);else for(e in t)v[e]=[v[e],t[e]];return this},abort:function(t){var e=t||w;return r&&r.abort(e),S(0,e),this}};if(m.promise(C),p.url=((t||p.url||Ne.href)+"").replace(Ye,Ne.protocol+"//"),p.type=e.method||e.type||p.method||p.type,p.dataTypes=(p.dataType||"*").toLowerCase().match(U)||[""],null==p.crossDomain){l=x.createElement("a");try{l.href=p.url,l.href=l.href,p.crossDomain=tn.protocol+"//"+tn.host!==l.protocol+"//"+l.host}catch(k){p.crossDomain=!0}}if(p.data&&p.processData&&"string"!==typeof p.data&&(p.data=O.param(p.data,p.traditional)),nn(Ke,p,e,C),c)return C;for(h in u=O.event&&p.global,u&&0===O.active++&&O.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Ue.test(p.type),i=p.url.replace(Xe,""),p.hasContent?p.data&&p.processData&&0===(p.contentType||"").indexOf("application/x-www-form-urlencoded")&&(p.data=p.data.replace(qe,"+")):(f=p.url.slice(i.length),p.data&&(p.processData||"string"===typeof p.data)&&(i+=(Re.test(i)?"&":"?")+p.data,delete p.data),!1===p.cache&&(i=i.replace(He,"$1"),f=(Re.test(i)?"&":"?")+"_="+Me.guid+++f),p.url=i+f),p.ifModified&&(O.lastModified[i]&&C.setRequestHeader("If-Modified-Since",O.lastModified[i]),O.etag[i]&&C.setRequestHeader("If-None-Match",O.etag[i])),(p.data&&p.hasContent&&!1!==p.contentType||e.contentType)&&C.setRequestHeader("Content-Type",p.contentType),C.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+$e+"; q=0.01":""):p.accepts["*"]),p.headers)C.setRequestHeader(h,p.headers[h]);if(p.beforeSend&&(!1===p.beforeSend.call(d,C,p)||c))return C.abort();if(w="abort",b.add(p.complete),C.done(p.success),C.fail(p.error),r=nn(_e,p,e,C),r){if(C.readyState=1,u&&g.trigger("ajaxSend",[C,p]),c)return C;p.async&&p.timeout>0&&(s=n.setTimeout((function(){C.abort("timeout")}),p.timeout));try{c=!1,r.send(y,S)}catch(k){if(c)throw k;S(-1,k)}}else S(-1,"No Transport");function S(t,e,o,l){var h,f,y,x,A,w=e;c||(c=!0,s&&n.clearTimeout(s),r=void 0,a=l||"",C.readyState=t>0?4:0,h=t>=200&&t<300||304===t,o&&(x=an(p,C,o)),!h&&O.inArray("script",p.dataTypes)>-1&&O.inArray("json",p.dataTypes)<0&&(p.converters["text script"]=function(){}),x=on(p,x,C,h),h?(p.ifModified&&(A=C.getResponseHeader("Last-Modified"),A&&(O.lastModified[i]=A),A=C.getResponseHeader("etag"),A&&(O.etag[i]=A)),204===t||"HEAD"===p.type?w="nocontent":304===t?w="notmodified":(w=x.state,f=x.data,y=x.error,h=!y)):(y=w,!t&&w||(w="error",t<0&&(t=0))),C.status=t,C.statusText=(e||w)+"",h?m.resolveWith(d,[f,w,C]):m.rejectWith(d,[C,w,y]),C.statusCode(v),v=void 0,u&&g.trigger(h?"ajaxSuccess":"ajaxError",[C,p,h?f:y]),b.fireWith(d,[C,w]),u&&(g.trigger("ajaxComplete",[C,p]),--O.active||O.event.trigger("ajaxStop")))}return C},getJSON:function(t,e,n){return O.get(t,e,n,"json")},getScript:function(t,e){return O.get(t,void 0,e,"script")}}),O.each(["get","post"],(function(t,e){O[e]=function(t,n,r,i){return v(n)&&(i=i||r,r=n,n=void 0),O.ajax(O.extend({url:t,type:e,dataType:i,data:n,success:r},O.isPlainObject(t)&&t))}})),O.ajaxPrefilter((function(t){var e;for(e in t.headers)"content-type"===e.toLowerCase()&&(t.contentType=t.headers[e]||"")})),O._evalUrl=function(t,e,n){return O.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(t){O.globalEval(t,e,n)}})},O.fn.extend({wrapAll:function(t){var e;return this[0]&&(v(t)&&(t=t.call(this[0])),e=O(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map((function(){var t=this;while(t.firstElementChild)t=t.firstElementChild;return t})).append(this)),this},wrapInner:function(t){return v(t)?this.each((function(e){O(this).wrapInner(t.call(this,e))})):this.each((function(){var e=O(this),n=e.contents();n.length?n.wrapAll(t):e.append(t)}))},wrap:function(t){var e=v(t);return this.each((function(n){O(this).wrapAll(e?t.call(this,n):t)}))},unwrap:function(t){return this.parent(t).not("body").each((function(){O(this).replaceWith(this.childNodes)})),this}}),O.expr.pseudos.hidden=function(t){return!O.expr.pseudos.visible(t)},O.expr.pseudos.visible=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},O.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(t){}};var sn={0:200,1223:204},ln=O.ajaxSettings.xhr();b.cors=!!ln&&"withCredentials"in ln,b.ajax=ln=!!ln,O.ajaxTransport((function(t){var e,r;if(b.cors||ln&&!t.crossDomain)return{send:function(i,a){var o,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(o in t.xhrFields)s[o]=t.xhrFields[o];for(o in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(o,i[o]);e=function(t){return function(){e&&(e=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===t?s.abort():"error"===t?"number"!==typeof s.status?a(0,"error"):a(s.status,s.statusText):a(sn[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!==typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=e(),r=s.onerror=s.ontimeout=e("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout((function(){e&&r()}))},e=e("abort");try{s.send(t.hasContent&&t.data||null)}catch(l){if(e)throw l}},abort:function(){e&&e()}}})),O.ajaxPrefilter((function(t){t.crossDomain&&(t.contents.script=!1)})),O.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return O.globalEval(t),t}}}),O.ajaxPrefilter("script",(function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")})),O.ajaxTransport("script",(function(t){var e,n;if(t.crossDomain||t.scriptAttrs)return{send:function(r,i){e=O("\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartList.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./ChartList.vue?vue&type=template&id=d01548cc&\"\nimport script from \"./ChartList.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChartList.vue?vue&type=style&index=0&id=d01548cc&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-collapse-item',{attrs:{\"name\":\"1\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.setItem.modalName)+\" \"),_c('i',{staticClass:\"iconfont icon-biaoti\"})]),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.title.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.title, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.title, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.show))])]),_c('chart-base-input',{attrs:{\"inputValue\":_vm.title.text,\"placeholder\":_vm.setItem.placeholder},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.title, \"text\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.title, \"text\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.text))])]),_c('chart-base-label',{attrs:{\"router\":_vm.router + '/label',\"baseLabelOption\":_vm.title.label},on:{\"update:baseLabelOption\":function($event){return _vm.$set(_vm.title, \"label\", $event)},\"update:base-label-option\":function($event){return _vm.$set(_vm.title, \"label\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.label))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.positionData,\"selectValue\":_vm.title.position.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.title.position, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.title.position, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.position))])]),(_vm.title.position.value === 'custom')?_c('el-row',[_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.title.position.offsetX,\"unit\":'%',\"content\":_vm.setItem.offsetL},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.title.position, \"offsetX\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.title.position, \"offsetX\", $event)}}}),_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.title.position.offsetY,\"unit\":'%',\"content\":_vm.setItem.offsetT},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.title.position, \"offsetY\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.title.position, \"offsetY\", $event)}}})],1):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":8}},[_vm._t(\"title\")],2),_c('el-col',{attrs:{\"span\":16}},[_c('chart-base-box',{attrs:{\"boxData\":_vm.baseLabelOptionData.fontGroup,\"checkboxOption\":_vm.fontStyleObj},on:{\"update:boxData\":function($event){return _vm.$set(_vm.baseLabelOptionData, \"fontGroup\", $event)},\"update:box-data\":function($event){return _vm.$set(_vm.baseLabelOptionData, \"fontGroup\", $event)}}}),_c('el-row',{staticStyle:{\"margin-top\":\"5px\"}},[_c('el-col',{attrs:{\"span\":12}},[_c('chart-base-select',{attrs:{\"hideCol\":true,\"tooltip\":'选择字体大小',\"selectOption\":_vm.fontSizeList,\"selectValue\":_vm.baseLabelOptionData.fontSize},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.baseLabelOptionData, \"fontSize\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.baseLabelOptionData, \"fontSize\", $event)}}})],1),_c('el-col',{attrs:{\"span\":8,\"offset\":2}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},on:{\"change\":_vm.changeStyle},model:{value:(_vm.baseLabelOptionData.color),callback:function ($$v) {_vm.$set(_vm.baseLabelOptionData, \"color\", $$v)},expression:\"baseLabelOptionData.color\"}})],1)],1)],1)],1),(_vm.baseLabelOptionData.fontSize === 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.baseLabelOptionData.cusFontSize,\"unit\":'px',\"content\":'滑动修改字体大小'},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.baseLabelOptionData, \"cusFontSize\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.baseLabelOptionData, \"cusFontSize\", $event)}}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseLabel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseLabel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartBaseLabel.vue?vue&type=template&id=0c8b0a05&\"\nimport script from \"./ChartBaseLabel.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartBaseLabel.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":8}},[_vm._t(\"title\")],2),_c('el-col',{attrs:{\"span\":16}},[_c('el-switch',{attrs:{\"active-color\":\"#13ce66\",\"inactive-color\":\"#d8d8d8\"},on:{\"change\":_vm.changeSwitch},model:{value:(_vm.switchData),callback:function ($$v) {_vm.switchData=$$v},expression:\"switchData\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseSwitch.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseSwitch.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartBaseSwitch.vue?vue&type=template&id=a5ec903c&\"\nimport script from \"./ChartBaseSwitch.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartBaseSwitch.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.hideCol)?_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":8}},[_vm._t(\"input\")],2),_c('el-col',{attrs:{\"span\":16}},[_c('el-input',{attrs:{\"placeholder\":_vm.placeholder,\"size\":\"mini\",\"suffix-icon\":\"el-icon-edit\",\"type\":_vm.type?_vm.type:'text'},on:{\"change\":_vm.changeInput},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})],1)],1):_c('el-input',{attrs:{\"type\":_vm.type?_vm.type:'text',\"placeholder\":_vm.placeholder,\"size\":\"mini\"},on:{\"change\":_vm.changeInput},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartBaseInput.vue?vue&type=template&id=260eed3e&\"\nimport script from \"./ChartBaseInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartBaseInput.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (!_vm.hideCol)?_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":8}},[_vm._t(\"select\")],2),_c('el-col',{attrs:{\"span\":16}},[_c('el-tooltip',{attrs:{\"disabled\":!_vm.tooltip,\"open-delay\":500,\"content\":_vm.tooltip,\"effect\":\"dark\",\"placement\":\"bottom\"}},[_c('el-select',{attrs:{\"size\":\"mini\"},on:{\"change\":_vm.changeSelect},model:{value:(_vm.select),callback:function ($$v) {_vm.select=$$v},expression:\"select\"}},_vm._l((_vm.selectOption),function(item,i){return _c('el-option',{key:i,attrs:{\"label\":item.label,\"value\":item.value}})}),1)],1)],1)],1):_c('el-tooltip',{attrs:{\"disabled\":!_vm.tooltip,\"open-delay\":500,\"content\":_vm.tooltip,\"effect\":\"dark\",\"placement\":\"bottom\"}},[_c('el-select',{attrs:{\"size\":\"mini\"},on:{\"change\":_vm.changeSelect},model:{value:(_vm.select),callback:function ($$v) {_vm.select=$$v},expression:\"select\"}},_vm._l((_vm.selectOption),function(item,i){return _c('el-option',{key:i,attrs:{\"label\":item.label,\"value\":item.value}})}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseSelect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartBaseSelect.vue?vue&type=template&id=2d1fdc6e&\"\nimport script from \"./ChartBaseSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartBaseSelect.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.hideCol)?_c('el-row',{staticClass:\"chart-base-slider\",staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{attrs:{\"span\":22}},[_c('el-tooltip',{attrs:{\"open-delay\":500,\"content\":_vm.content,\"placement\":\"top\"}},[_c('el-slider',{staticStyle:{\"padding-left\":\"12px\"},attrs:{\"show-input-controls\":false,\"min\":_vm.min,\"max\":_vm.max,\"input-size\":\"mini\",\"show-input\":\"\",\"format-tooltip\":_vm.format?_vm.formatter:null},on:{\"change\":_vm.handlerChange},model:{value:(_vm.baseSliderData),callback:function ($$v) {_vm.baseSliderData=$$v},expression:\"baseSliderData\"}})],1)],1),_c('el-col',{staticClass:\"input_content\",attrs:{\"span\":1}},[_vm._v(_vm._s(_vm.unit))])],1):_c('el-row',{staticClass:\"chart-base-slider\",staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{attrs:{\"span\":6}},[_vm._t(\"title\")],2),_c('el-col',{attrs:{\"span\":17}},[_c('el-tooltip',{attrs:{\"open-delay\":500,\"content\":_vm.content,\"placement\":\"top\"}},[_c('el-slider',{staticStyle:{\"padding-left\":\"12px\"},attrs:{\"show-input-controls\":false,\"min\":_vm.min,\"max\":_vm.max,\"input-size\":\"mini\",\"show-input\":\"\",\"format-tooltip\":_vm.format?_vm.formatter:null},on:{\"change\":_vm.handlerChange},model:{value:(_vm.baseSliderData),callback:function ($$v) {_vm.baseSliderData=$$v},expression:\"baseSliderData\"}})],1)],1),_c('el-col',{staticClass:\"input_content\",attrs:{\"span\":1}},[_vm._v(_vm._s(_vm.unit))])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseSlider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseSlider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartBaseSlider.vue?vue&type=template&id=d0824222&\"\nimport script from \"./ChartBaseSlider.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartBaseSlider.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChartBaseSlider.vue?vue&type=style&index=0&id=d0824222&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-row',[_c('el-checkbox-group',{attrs:{\"size\":\"mini\"},on:{\"change\":_vm.changeStyle},model:{value:(_vm.boxValue),callback:function ($$v) {_vm.boxValue=$$v},expression:\"boxValue\"}},_vm._l((_vm.checkboxOption),function(value,name){return _c('el-tooltip',{key:name,attrs:{\"open-delay\":500,\"content\":value.des,\"effect\":\"dark\",\"placement\":\"bottom\"}},[_c('el-checkbox-button',{attrs:{\"label\":name}},[_vm._v(\" \"+_vm._s(value.text)+\" \")])],1)}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseBox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartBaseBox.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartBaseBox.vue?vue&type=template&id=db8b1a32&\"\nimport script from \"./ChartBaseBox.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartBaseBox.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 复用的组件和方法\r\n// const ChartBaseLabel = () => import('@/packages/ChartMix/chartChips/base/ChartBaseLabel')\r\n// const ChartBaseSwitch = () => import('@/packages/ChartMix/chartChips/base/ChartBaseSwitch')\r\n// const ChartBaseInput = () => import('@/packages/ChartMix/chartChips/base/ChartBaseInput')\r\n// const ChartBaseSelect = () => import('@/packages/ChartMix/chartChips/base/ChartBaseSelect')\r\n// const ChartBaseSlider = () => import('@/packages/ChartMix/chartChips/base/ChartBaseSlider')\r\n// const ChartBaseBox = () => import('@/packages/ChartMix/chartChips/base/ChartBaseBox')\r\n\r\nimport { mapActions } from 'vuex'\r\nimport { deepCopy } from '@/utils/util'\r\nimport isEqual from 'lodash/isEqual'\r\n// import { isEqual } from 'lodash'\r\n\r\nimport ChartBaseLabel from '@/packages/ChartMix/chartChips/base/ChartBaseLabel'\r\nimport ChartBaseSwitch from '@/packages/ChartMix/chartChips/base/ChartBaseSwitch'\r\nimport ChartBaseInput from '@/packages/ChartMix/chartChips/base/ChartBaseInput'\r\nimport ChartBaseSelect from '@/packages/ChartMix/chartChips/base/ChartBaseSelect'\r\nimport ChartBaseSlider from '@/packages/ChartMix/chartChips/base/ChartBaseSlider'\r\nimport ChartBaseBox from '@/packages/ChartMix/chartChips/base/ChartBaseBox'\r\n\r\n\r\n// 重复引入的组件\r\nconst importComp = function(t){\r\n return {\r\n 'chart-base-label': t.ChartBaseLabel,\r\n 'chart-base-input': t.ChartBaseInput,\r\n 'chart-base-switch': t.ChartBaseSwitch,\r\n 'chart-base-slider': t.ChartBaseSlider,\r\n 'chart-base-select': t.ChartBaseSelect\r\n }\r\n}\r\n\r\nexport {\r\n ChartBaseLabel,\r\n ChartBaseSwitch,\r\n ChartBaseInput,\r\n ChartBaseSelect,\r\n ChartBaseSlider,\r\n ChartBaseBox,\r\n deepCopy,\r\n isEqual,\r\n importComp,\r\n mapActions\r\n}","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartTitle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartTitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartTitle.vue?vue&type=template&id=0fa20870&\"\nimport script from \"./ChartTitle.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartTitle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-collapse-item',{attrs:{\"name\":\"2\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.setItem.modalName)+\"     \"),_c('i',{staticClass:\"iconfont icon-biaoti\"})]),_c('chart-base-input',{attrs:{\"inputValue\":_vm.subTitle.text,\"placeholder\":_vm.setItem.placeholder},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.subTitle, \"text\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.subTitle, \"text\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.text))])]),_c('chart-base-label',{attrs:{\"router\":_vm.router + '/label',\"baseLabelOption\":_vm.subTitle.label}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.label))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.distanceOption,\"selectValue\":_vm.subTitle.distance.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.subTitle.distance, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.subTitle.distance, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.gap))])]),(_vm.subTitle.distance.value === 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.subTitle.distance.cusGap,\"unit\":'px',\"content\":_vm.setItem.content},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.subTitle.distance, \"cusGap\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.subTitle.distance, \"cusGap\", $event)}}}):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartSubTitle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartSubTitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartSubTitle.vue?vue&type=template&id=18f1cac1&\"\nimport script from \"./ChartSubTitle.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartSubTitle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-collapse-item',{attrs:{\"name\":\"4\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.setItem.modalName)+\" \"),_c('i',{staticClass:\"iconfont icon-biaoti\"})]),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.cursor.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.cursor, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.cursor, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.show))])]),_c('chart-base-label',{attrs:{\"router\":_vm.router + '/label',\"baseLabelOption\":_vm.cursor.label}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.label))])]),_c('el-row',{staticStyle:{\"margin-top\":\"10px\"}},[_c('el-col',{attrs:{\"span\":6}},[_vm._v(_vm._s(_vm.setItem.background))]),_c('el-col',{attrs:{\"span\":3}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},model:{value:(_vm.cursor.backgroundColor),callback:function ($$v) {_vm.$set(_vm.cursor, \"backgroundColor\", $$v)},expression:\"cursor.backgroundColor\"}})],1)],1),_c('chart-base-select',{attrs:{\"selectOption\":_vm.triggerMethodArr,\"selectValue\":_vm.cursor.triggerOn},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor, \"triggerOn\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor, \"triggerOn\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.trigger))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.triggerTypeArr,\"selectValue\":_vm.cursor.triggerType},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor, \"triggerType\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor, \"triggerType\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.type))])]),(_vm.cursor.triggerType != 'item')?_c('div',[_c('chart-base-select',{attrs:{\"selectOption\":_vm.lineStyleOption,\"selectValue\":_vm.cursor.axisPointer.style.type},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor.axisPointer.style, \"type\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor.axisPointer.style, \"type\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.lineType))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.lineWeightOption,\"selectValue\":_vm.cursor.axisPointer.style.width},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor.axisPointer.style, \"width\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor.axisPointer.style, \"width\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.lineWidth))])]),_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{attrs:{\"span\":6}},[_vm._v(_vm._s(_vm.setItem.color))]),_c('el-col',{attrs:{\"span\":3}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},model:{value:(_vm.cursor.axisPointer.style.color),callback:function ($$v) {_vm.$set(_vm.cursor.axisPointer.style, \"color\", $$v)},expression:\"cursor.axisPointer.style.color\"}})],1)],1),_c('chart-base-select',{attrs:{\"selectOption\":_vm.axisPointerArr,\"selectValue\":_vm.cursor.axisPointer.type},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor.axisPointer, \"type\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor.axisPointer, \"type\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.axisType))])])],1):_vm._e(),(_vm.cursor.triggerType == 'item')?_c('chart-base-select',{attrs:{\"selectOption\":_vm.posOption,\"selectValue\":_vm.cursor.position},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor, \"position\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor, \"position\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.position))])]):_vm._e(),_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{attrs:{\"span\":2}},[_c('i',{staticClass:\"el-icon-menu\"})]),_c('el-col',{attrs:{\"span\":8}},[_vm._v(_vm._s(_vm.setItem.suffix))])],1),_vm._l((_vm.seriesOption),function(item,i){return _c('el-row',{key:i,staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{attrs:{\"span\":6}},[_vm._v(_vm._s(item))]),_c('el-col',{attrs:{\"span\":4}},[_c('chart-base-input',{attrs:{\"hideCol\":true,\"placeholder\":_vm.setItem.placeholder}})],1),_c('el-col',{attrs:{\"span\":6}},[_c('chart-base-select',{attrs:{\"tooltip\":_vm.setItem.ratio,\"selectOption\":_vm.ratioOption,\"selectValue\":_vm.cursor.format[i].ratio,\"hideCol\":true},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor.format[i], \"ratio\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor.format[i], \"ratio\", $event)}}})],1),_c('el-col',{attrs:{\"span\":6}},[_c('chart-base-select',{attrs:{\"tooltip\":_vm.setItem.digit,\"selectOption\":_vm.digitOption,\"selectValue\":_vm.cursor.format[i].digit,\"hideCol\":true},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.cursor.format[i], \"digit\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.cursor.format[i], \"digit\", $event)}}})],1)],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartCursor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartCursor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartCursor.vue?vue&type=template&id=754b950d&\"\nimport script from \"./ChartCursor.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartCursor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-collapse-item',{attrs:{\"name\":\"3\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.setItem.modalName)+\" \"),_c('i',{staticClass:\"iconfont icon-biaoti\"})]),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.legend.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.legend, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.legend, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(\"显示图例\")])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.legend.show),expression:\"legend.show\"}]},[_c('chart-base-label',{attrs:{\"router\":_vm.router + '/label',\"baseLabelOption\":_vm.legend.label},on:{\"update:baseLabelOption\":function($event){return _vm.$set(_vm.legend, \"label\", $event)},\"update:base-label-option\":function($event){return _vm.$set(_vm.legend, \"label\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(\"图例样式\")])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.positionOption,\"selectValue\":_vm.legend.position.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.legend.position, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.legend.position, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(\"图例位置\")])]),(_vm.legend.position.value === 'custom')?_c('el-row',[_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.legend.position.offsetX,\"unit\":'%',\"content\":'滑动修改水平偏移量'},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.legend.position, \"offsetX\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.legend.position, \"offsetX\", $event)}}}),_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.legend.position.offsetY,\"unit\":'%',\"content\":'滑动修改垂直偏移量'},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.legend.position, \"offsetY\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.legend.position, \"offsetY\", $event)}}})],1):_vm._e(),_c('chart-base-select',{attrs:{\"selectOption\":_vm.dirOptions,\"selectValue\":_vm.legend.position.direction},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.legend.position, \"direction\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.legend.position, \"direction\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(\"图例朝向\")])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.sizeOption,\"selectValue\":_vm.legend.width.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.legend.width, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.legend.width, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(\"图例宽度\")])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.sizeOption,\"selectValue\":_vm.legend.height.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.legend.height, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.legend.height, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(\"图例高度\")])]),(_vm.legend.width.value == 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.legend.width.cusSize,\"unit\":'px',\"content\":'滑动修改图例宽度'},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.legend.width, \"cusSize\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.legend.width, \"cusSize\", $event)}}}):_vm._e(),(_vm.legend.height.value == 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.legend.height.cusSize,\"unit\":'px',\"content\":'滑动修改图例高度'},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.legend.height, \"cusSize\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.legend.height, \"cusSize\", $event)}}}):_vm._e(),_c('chart-base-select',{attrs:{\"selectOption\":_vm.distanceOption,\"selectValue\":_vm.legend.distance.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.legend.distance, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.legend.distance, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(\"图例间距\")])]),(_vm.legend.distance.value == 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.legend.distance.cusGap,\"unit\":'px',\"content\":'滑动修改图例间距'},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.legend.distance, \"cusGap\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.legend.distance, \"cusGap\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(\"图例间距\")])]):_vm._e()],1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartLegend.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartLegend.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartLegend.vue?vue&type=template&id=57cb40f1&\"\nimport script from \"./ChartLegend.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartLegend.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-collapse-item',{attrs:{\"name\":\"6\"}},[_c('template',{slot:\"title\"},[_vm._v(\" \"+_vm._s(_vm.setItem.modalName)+\" \"),_c('i',{staticClass:\"iconfont icon-biaoti\"})]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.axisGroup,\"selectValue\":_vm.axis.axisType},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.axis, \"axisType\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.axis, \"axisType\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.select))])]),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.series.name))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.series.show),expression:\"series.show\"}]},[_c('chart-base-input',{attrs:{\"inputValue\":_vm.series.title.text,\"placeholder\":_vm.setItem.placeholder},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.series.title, \"text\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.series.title, \"text\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.text))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.series.title.text),expression:\"series.title.text\"}],staticStyle:{\"margin-top\":\"15px\"}},[_c('chart-base-label',{attrs:{\"router\":_vm.router + '/label',\"baseLabelOption\":_vm.series.title.label},on:{\"update:baseLabelOption\":function($event){return _vm.$set(_vm.series.title, \"label\", $event)},\"update:base-label-option\":function($event){return _vm.$set(_vm.series.title, \"label\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.label))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.fzPosOption,\"selectValue\":_vm.series.title.fzPosition},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.title, \"fzPosition\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.title, \"fzPosition\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.align))])])],1),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.inverse},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series, \"inverse\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series, \"inverse\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.reverse))])]),_c('chart-base-slider',{attrs:{\"hideCol\":true,\"max\":10,\"baseSliderOption\":_vm.series.tickLabel.optimize,\"unit\":'个',\"content\":_vm.setItem.content},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.tickLabel, \"optimize\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.tickLabel, \"optimize\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.intenval))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.series.title.text),expression:\"series.title.text\"}]},[_c('chart-base-slider',{attrs:{\"hideCol\":true,\"baseSliderOption\":_vm.series.title.nameGap,\"unit\":'px',\"content\":_vm.setItem.content1},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.title, \"nameGap\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.title, \"nameGap\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.gap))])]),_c('chart-base-slider',{attrs:{\"hideCol\":true,\"format\":_vm.formatRotation+'',\"max\":180,\"min\":-180,\"baseSliderOption\":_vm.series.title.rotate,\"unit\":'°',\"content\":_vm.setItem.content2},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.title, \"rotate\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.title, \"rotate\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.title))])])],1),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.tickLine.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series.tickLine, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series.tickLine, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.showLine))])]),_c('chart-base-slider',{attrs:{\"hideCol\":true,\"min\":1,\"baseSliderOption\":_vm.series.tickLine.width,\"unit\":'px',\"content\":_vm.setItem.content3},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.tickLine, \"width\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.tickLine, \"width\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.lineWidth))])]),_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":7}},[_vm._v(_vm._s(_vm.setItem.lineColor))]),_c('el-col',{attrs:{\"push\":14,\"span\":3}},[_c('el-tooltip',{attrs:{\"open-delay\":500,\"content\":_vm.setItem.lineColor,\"effect\":\"dark\",\"placement\":\"bottom\"}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},model:{value:(_vm.series.tickLine.color),callback:function ($$v) {_vm.$set(_vm.series.tickLine, \"color\", $$v)},expression:\"series.tickLine.color\"}})],1)],1)],1),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.tick.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series.tick, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series.tick, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.showTick))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.orient,\"selectValue\":_vm.series.tick.position},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.tick, \"position\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.tick, \"position\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.position))])]),_c('chart-base-slider',{attrs:{\"hideCol\":true,\"min\":1,\"baseSliderOption\":_vm.series.tick.length,\"unit\":'px',\"content\":_vm.setItem.content4},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.tick, \"length\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.tick, \"length\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.tickLength))])]),_c('chart-base-slider',{attrs:{\"hideCol\":true,\"max\":20,\"min\":1,\"baseSliderOption\":_vm.series.tick.width,\"unit\":'px',\"content\":_vm.setItem.content5},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.tick, \"width\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.tick, \"width\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.tickWidth))])]),_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":6}},[_vm._v(_vm._s(_vm.setItem.tickColor))]),_c('el-col',{attrs:{\"push\":14,\"span\":4}},[_c('el-tooltip',{attrs:{\"open-delay\":500,\"content\":_vm.setItem.tickColor,\"effect\":\"dark\",\"placement\":\"bottom\"}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},model:{value:(_vm.series.tick.color),callback:function ($$v) {_vm.$set(_vm.series.tick, \"color\", $$v)},expression:\"series.tick.color\"}})],1)],1)],1),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.tickLabel.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.showLabel))])]),_c('chart-base-slider',{attrs:{\"hideCol\":true,\"format\":_vm.formatRotation,\"max\":180,\"min\":-180,\"baseSliderOption\":_vm.series.tickLabel.rotate,\"unit\":'°',\"content\":_vm.setItem.content6},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.tickLabel, \"rotate\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.tickLabel, \"rotate\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.rotate))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showLabel),expression:\"showLabel\"}]},[_c('chart-base-input',{attrs:{\"type\":'text',\"inputValue\":_vm.series.tickLabel.min,\"placeholder\":_vm.setItem.content7},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"min\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"min\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.min))])]),_c('chart-base-input',{attrs:{\"type\":'text',\"inputValue\":_vm.series.tickLabel.max,\"placeholder\":_vm.setItem.content8},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"max\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"max\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.max))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.ratioOption,\"selectValue\":_vm.series.tickLabel.ratio},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"ratio\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"ratio\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.ratio))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.digitOption,\"selectValue\":_vm.series.tickLabel.digit},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"digit\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"digit\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.digit))])])],1),_c('chart-base-input',{attrs:{\"inputValue\":_vm.series.tickLabel.prefix,\"placeholder\":_vm.setItem.content9},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"prefix\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"prefix\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.prefix))])]),_c('chart-base-input',{attrs:{\"inputValue\":_vm.series.tickLabel.suffix,\"placeholder\":_vm.setItem.content10},on:{\"update:inputValue\":function($event){return _vm.$set(_vm.series.tickLabel, \"suffix\", $event)},\"update:input-value\":function($event){return _vm.$set(_vm.series.tickLabel, \"suffix\", $event)}}},[_c('div',{attrs:{\"slot\":\"input\"},slot:\"input\"},[_vm._v(_vm._s(_vm.setItem.suffix))])]),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.netLine.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series.netLine, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series.netLine, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.showNet))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.series.netLine.show),expression:\"series.netLine.show\"}]},[_c('chart-base-slider',{attrs:{\"hideCol\":true,\"max\":20,\"min\":1,\"baseSliderOption\":_vm.series.netLine.width,\"unit\":'px',\"content\":_vm.setItem.content11},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.netLine, \"width\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.netLine, \"width\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.netWidth))])]),_c('chart-base-select',{attrs:{\"selectOption\":_vm.lineStyleOption,\"selectValue\":_vm.series.netLine.type},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.netLine, \"type\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.netLine, \"type\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.netType))])]),_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{staticClass:\"title\",attrs:{\"span\":8}},[_vm._v(_vm._s(_vm.setItem.netColor))]),_c('el-col',{attrs:{\"push\":13,\"span\":3}},[_c('el-tooltip',{attrs:{\"open-delay\":500,\"content\":_vm.setItem.netColor,\"effect\":\"dark\",\"placement\":\"bottom\"}},[_c('el-color-picker',{attrs:{\"label\":true,\"size\":\"mini\"},model:{value:(_vm.series.netLine.color),callback:function ($$v) {_vm.$set(_vm.series.netLine, \"color\", $$v)},expression:\"series.netLine.color\"}})],1)],1)],1),_c('chart-base-select',{attrs:{\"selectOption\":_vm.intervalOption,\"selectValue\":_vm.series.netLine.interval.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.netLine.interval, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.netLine.interval, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.netInterval))])]),(_vm.series.netLine.interval.value == 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.series.netLine.interval.cusNumber,\"unit\":'个',\"content\":_vm.setItem.content12},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.netLine.interval, \"cusNumber\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.netLine.interval, \"cusNumber\", $event)}}}):_vm._e()],1),_c('chart-base-switch',{attrs:{\"switchValue\":_vm.series.netArea.show},on:{\"update:switchValue\":function($event){return _vm.$set(_vm.series.netArea, \"show\", $event)},\"update:switch-value\":function($event){return _vm.$set(_vm.series.netArea, \"show\", $event)}}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.setItem.showArea))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.series.netArea.show),expression:\"series.netArea.show\"}]},[_c('chart-base-select',{attrs:{\"selectOption\":_vm.intervalOption,\"selectValue\":_vm.series.netArea.interval.value},on:{\"update:selectValue\":function($event){return _vm.$set(_vm.series.netArea.interval, \"value\", $event)},\"update:select-value\":function($event){return _vm.$set(_vm.series.netArea.interval, \"value\", $event)}}},[_c('div',{attrs:{\"slot\":\"select\"},slot:\"select\"},[_vm._v(_vm._s(_vm.setItem.areaInterval))])]),(_vm.series.netArea.interval.value == 'custom')?_c('chart-base-slider',{attrs:{\"baseSliderOption\":_vm.series.netArea.interval.cusNumber,\"unit\":'个',\"content\":_vm.setItem.content12},on:{\"update:baseSliderOption\":function($event){return _vm.$set(_vm.series.netArea.interval, \"cusNumber\", $event)},\"update:base-slider-option\":function($event){return _vm.$set(_vm.series.netArea.interval, \"cusNumber\", $event)}}}):_vm._e(),_c('el-row',{staticStyle:{\"margin-top\":\"15px\"}},[_c('el-col',{attrs:{\"span\":6}},[_vm._v(_vm._s(_vm.setItem.area1))]),_c('el-col',{attrs:{\"span\":3}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},model:{value:(_vm.series.netArea.colorOne),callback:function ($$v) {_vm.$set(_vm.series.netArea, \"colorOne\", $$v)},expression:\"series.netArea.colorOne\"}})],1),_c('el-col',{attrs:{\"span\":6}},[_vm._v(_vm._s(_vm.setItem.area2))]),_c('el-col',{attrs:{\"span\":3}},[_c('el-color-picker',{attrs:{\"size\":\"mini\"},model:{value:(_vm.series.netArea.colorTwo),callback:function ($$v) {_vm.$set(_vm.series.netArea, \"colorTwo\", $$v)},expression:\"series.netArea.colorTwo\"}})],1)],1)],1)],1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartAxis.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartAxis.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartAxis.vue?vue&type=template&id=73317029&\"\nimport script from \"./ChartAxis.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartAxis.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartSetting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartSetting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartSetting.vue?vue&type=template&id=dc2be93c&\"\nimport script from \"./ChartSetting.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartSetting.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChartSetting.vue?vue&type=style&index=0&id=dc2be93c&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"chartRender\"})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartRender.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartRender.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChartRender.vue?vue&type=template&id=4be53480&scoped=true&\"\nimport script from \"./ChartRender.vue?vue&type=script&lang=js&\"\nexport * from \"./ChartRender.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4be53480\",\n null\n \n)\n\nexport default component.exports","import store from '../store'\r\nimport Vue from 'vue'\r\nimport { generateRandomKey, deepCopy, getRowColCheck, getRangeSplitArray, getChartDataCache, getChartDataSeriesOrder, addDataToOption } from '../utils/util'\r\nimport { changeChartRange , changeChartCellData , renderChart } from '../utils/chartUtil'\r\nimport { chartOptions } from '../data/chartJson'\r\nimport echarts from 'echarts'\r\nimport $ from 'jquery'\r\n\r\nconst ChartSetting = store.state.chartSetting\r\n\r\n// init chart\r\nfunction initChart(outDom, lang) {\r\n let dom = document.createElement('div')\r\n dom.id = 'chartmix'\r\n outDom.appendChild(dom);\r\n\r\n new Vue({\r\n el: '#chartmix',\r\n store,\r\n data() {\r\n return {\r\n lang\r\n }\r\n },\r\n computed: {\r\n chartOptions() {\r\n if (!ChartSetting.currentChartIndex) {\r\n return null\r\n }\r\n return ChartSetting.chartLists[ChartSetting.currentChartIndex].chartOptions\r\n }\r\n },\r\n template: ``\r\n })\r\n\r\n}\r\n\r\n/**\r\n * \r\n * @param {*} render 插入图表的容器\r\n * @param {*} chartData 框选的数据\r\n * @param {*} chart_id 图表ID\r\n * 返回容器/id/chart_json图表配置\r\n */\r\nfunction createChart(render, chartData, chart_id, rangeArray, rangeTxt) {\r\n\r\n let chart_Id = chart_id ? chart_id : generateRandomKey('chart')\r\n render.id = chart_Id\r\n\r\n chartOptions.defaultOption.series = []\r\n\r\n // 随机生成图表\r\n let ratio = Math.random() * 10\r\n if (ratio > 5) {\r\n chartOptions.chartAllType = 'echarts|pie|default'\r\n } else {\r\n chartOptions.chartAllType = 'echarts|line|default'\r\n }\r\n\r\n // 生成图表数据结构\r\n let chartOption = insertNewChart(chartOptions, chart_Id, chartOptions.chartAllType, chartData, rangeArray, rangeTxt)\r\n\r\n let renderDom = document.createElement('div')\r\n renderDom.id = 'render' + chart_Id\r\n render.appendChild(renderDom)\r\n\r\n let chart_json = {\r\n 'chart_id': chart_Id,\r\n 'active': true,\r\n 'chartOptions': deepCopy(chartOption)\r\n }\r\n\r\n ChartSetting.currentChartIndex = ChartSetting.chartLists.length\r\n ChartSetting.chartLists.push(chart_json)\r\n\r\n console.dir(chart_json)\r\n\r\n new Vue({\r\n el: '#render' + chart_Id,\r\n store,\r\n data() {\r\n return {\r\n chart_Id\r\n }\r\n },\r\n computed: {\r\n options() {\r\n let chartJson = ChartSetting.chartLists.find(item => item.chart_id == this.chart_Id)\r\n if (chartJson) {\r\n return chartJson.chartOptions\r\n } else {\r\n return null\r\n }\r\n },\r\n active() {\r\n let chartJson = ChartSetting.chartLists.find(item => item.chart_id == this.chart_Id)\r\n if (chartJson) {\r\n return chartJson.active\r\n } else {\r\n return null\r\n }\r\n }\r\n },\r\n template: ``\r\n })\r\n\r\n return {\r\n render,\r\n chart_Id,\r\n chart_json\r\n }\r\n}\r\n\r\n// insert chart\r\nfunction insertNewChart(\r\n chartOptions,\r\n chart_id,\r\n chartAllType,\r\n chartData,\r\n rangeArray,\r\n rangeTxt,\r\n chartTheme,\r\n height,\r\n width,\r\n left,\r\n top\r\n) {\r\n var chart_json = {}\r\n\r\n var chartAllTypeArray = chartAllType.split('|')\r\n\r\n var chartPro = chartAllTypeArray[0],\r\n chartType = chartAllTypeArray[1],\r\n chartStyle = chartAllTypeArray[2]\r\n\r\n chart_json.chart_id = chart_id\r\n chart_json.chartAllType = chartAllType\r\n chart_json.chartPro = chartPro\r\n chart_json.chartType = chartType\r\n chart_json.chartStyle = chartStyle\r\n\r\n chart_json.height = height\r\n chart_json.width = width\r\n chart_json.left = left\r\n chart_json.top = top\r\n\r\n //按照图表类型得到图表的默认设置\r\n var defaultOptionIni = chartOptions.defaultOption\r\n //数据的sheet索引\r\n chart_json.chartData = chartData\r\n chart_json.rangeArray = rangeArray\r\n chart_json.rangeTxt = rangeTxt\r\n\r\n //根据数据集得到按钮状态,rangeColCheck表示首列是否标题,rangeRowCheck表示首行是否标题,rangeConfigCheck表示是否转置。\r\n var rowColCheck = getRowColCheck(chartData)\r\n var rangeRowCheck = rowColCheck[0],\r\n rangeColCheck = rowColCheck[1],\r\n rangeConfigCheck = false\r\n\r\n chart_json.rangeColCheck = rangeColCheck\r\n chart_json.rangeRowCheck = rangeRowCheck\r\n chart_json.rangeConfigCheck = rangeConfigCheck\r\n\r\n //按照数据范围文字得到具体数据范围\r\n var rangeSplitArray = getRangeSplitArray(\r\n chartData,\r\n rangeArray,\r\n rangeColCheck,\r\n rangeRowCheck\r\n )\r\n chart_json.rangeSplitArray = rangeSplitArray\r\n\r\n //根据数据集、功能按钮状态、图表类型,得到图表可操作的数据格式,例如:{ \"x\":[], \"y\":[], series:[] },可以按照次格式渲染数据页中的系列和轴控件。\r\n //数据为一行且为汉字的时候,chartDataCache的series为空数组\r\n var chartDataCache = getChartDataCache(\r\n chartData,\r\n rangeSplitArray,\r\n chartPro,\r\n chartType,\r\n chartStyle\r\n )\r\n chart_json.chartDataCache = chartDataCache\r\n\r\n //生成默认的系列顺序,默认根据series数组的位置,用户可以在界面上操作更改这个位置。\r\n var chartDataSeriesOrder = getChartDataSeriesOrder(\r\n chartDataCache.series[0].length\r\n )\r\n\r\n chart_json.chartDataSeriesOrder = chartDataSeriesOrder\r\n\r\n //设置图表皮肤\r\n chart_json.chartTheme = chartTheme\r\n\r\n //根据图表的默认设置、图表数据、图表系列顺序,等到一个完整的图表配置串。\r\n var defaultOption = addDataToOption(\r\n defaultOptionIni,\r\n chartDataCache,\r\n chartDataSeriesOrder,\r\n chartPro,\r\n chartType,\r\n chartStyle\r\n )\r\n\r\n //根据图表厂商选择渲染引擎,并根据设置渲染出图表\r\n chart_json.defaultOption = defaultOption\r\n return chart_json\r\n}\r\n\r\n// highlight current chart\r\nfunction highlightChart(chart_id) {\r\n let index = ChartSetting.chartLists.findIndex(item => item.chart_id == chart_id)\r\n ChartSetting.currentChartIndex = index\r\n return ChartSetting.chartLists[ChartSetting.currentChartIndex].chartOptions\r\n}\r\n\r\n// resize chart\r\nfunction resizeChart(chart_id) {\r\n let index = ChartSetting.chartLists.findIndex(item => item.chart_id == chart_id)\r\n var chartAllType = ChartSetting.chartLists[index].chartOptions.chartAllType;\r\n var chartAllTypeArray = chartAllType.split(\"|\");\r\n var chartPro = chartAllTypeArray[0],\r\n chartType = chartAllTypeArray[1],\r\n chartStyle = chartAllTypeArray[2];\r\n\r\n if (chartPro == \"echarts\") {\r\n echarts.getInstanceById($(\"#\" + chart_id).attr(\"_echarts_instance_\")).resize();\r\n } \r\n}\r\n\r\nfunction resizeChartAll(){\r\n for(let i = 0; i < ChartSetting.chartLists.length; i++){\r\n let chartJson = ChartSetting.chartLists[i].chartOptions\r\n if(chartJson.chartAllType.split('|')[0] == 'echarts'){\r\n echarts.getInstanceById($('#' + chartJson.chart_id).attr('_echarts_instance_')).resize()\r\n }\r\n }\r\n}\r\n\r\n// delete chart\r\nfunction deleteChart(chart_id) {\r\n let index = ChartSetting.chartLists.findIndex(item => item.chart_id == chart_id)\r\n ChartSetting.chartLists.splice(index, 1)\r\n ChartSetting.currentChartIndex--\r\n if (ChartSetting.currentChartIndex < 0) {\r\n if (ChartSetting.chartLists[0]) {\r\n ChartSetting.currentChartIndex = 0\r\n return\r\n }\r\n ChartSetting.currentChartIndex = null\r\n }\r\n}\r\n\r\nfunction getChartJson(chart_id){\r\n let index = ChartSetting.chartLists.findIndex(item => item.chart_id == chart_id)\r\n return ChartSetting.chartLists[index].chartOptions;\r\n}\r\n\r\nfunction insertToStore(chart_json){\r\n ChartSetting.chartLists.push(chart_json)\r\n}\r\n\r\nexport {\r\n initChart,\r\n createChart,\r\n highlightChart,\r\n deleteChart,\r\n resizeChart,\r\n resizeChartAll,\r\n changeChartRange,\r\n changeChartCellData,\r\n getChartJson,\r\n renderChart,\r\n insertToStore\r\n}","// import single vue component\r\nimport ChartSetting from './ChartMix/ChartSetting.vue'\r\nimport chartSetting from '../store/modules/chartSetting'\r\nimport ChartRender from './ChartMix/ChartRender.vue'\r\nimport { initChart , createChart , renderChart , highlightChart , deleteChart, insertToStore , resizeChart , changeChartRange , changeChartCellData , getChartJson } from '../utils/exportUtil'\r\n\r\n// all components\r\nconst components = [\r\n ChartSetting,\r\n ChartRender\r\n]\r\n\r\n/**\r\n * define install function\r\n *\r\n * @param {Object} Vue \r\n * @param {Object} [options={}] \r\n */\r\nconst install = function (Vue, options = {}) {\r\n if (!install.componentInstalled) {\r\n // map and register all global components\r\n components.map(component => {\r\n Vue.component(component.name, component)\r\n })\r\n\r\n install.componentInstalled = true\r\n }\r\n\r\n if (!install.storeRegistered) {\r\n // register store\r\n if (!options.store) {\r\n console.log('Please provide a store!!')\r\n } else {\r\n options.store.registerModule('chartSetting', chartSetting)\r\n\r\n install.storeRegistered = true;\r\n }\r\n }\r\n\r\n}\r\n\r\nif (typeof window !== 'undefined' && window.Vue) {\r\n install(window.Vue)\r\n}\r\n\r\nexport default {\r\n // must use install function\r\n install,\r\n // components list\r\n ...components,\r\n initChart,\r\n createChart,\r\n highlightChart,\r\n deleteChart,\r\n resizeChart,\r\n changeChartRange,\r\n changeChartCellData,\r\n renderChart,\r\n getChartJson,\r\n insertToStore\r\n // ChartSetting,\r\n // ChartRender\r\n}","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n"],"sourceRoot":""} \ No newline at end of file diff --git a/public/expendPlugins/print/print.css b/public/expendPlugins/print/print.css new file mode 100644 index 0000000..56d3a49 --- /dev/null +++ b/public/expendPlugins/print/print.css @@ -0,0 +1,46 @@ +.luckysheet-print span[role="heading"] { + font-size: 30px; + font-weight: bold; +} + +.luckysheet-print-suggest { + font-size: 12px; +} + +.luckysheet-print-title { + font-weight: bold; + font-size: 18px; +} + +.luckysheet-print-radio { + display: flex; +} + +.luckysheet-print-radio > div { + width: 50%; +} + +.luckysheet-print select { + height: 30px; +} + +.luckysheet-print .luckysheet-modal-dialog-buttons { + display: flex; + flex-direction: row-reverse; +} + +.luckysheet-print-box canvas { + display: block; +} + +@media print { + :not(html, head, body, .luckysheet-print-preview, .luckysheet-print-preview *) { + display: none; + } + .luckysheet-print-break { + page-break-after: always; + } + #print-layout-options { + display: none; + } +} diff --git a/public/expendPlugins/print/print.js b/public/expendPlugins/print/print.js new file mode 100644 index 0000000..e69de29 diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..6f0befb Binary files /dev/null and b/public/favicon.ico differ diff --git a/public/fonts/FontAwesome.otf b/public/fonts/FontAwesome.otf new file mode 100644 index 0000000..401ec0f Binary files /dev/null and b/public/fonts/FontAwesome.otf differ diff --git a/public/fonts/fontawesome-webfont.eot b/public/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000..e9f60ca Binary files /dev/null and b/public/fonts/fontawesome-webfont.eot differ diff --git a/public/fonts/fontawesome-webfont.svg b/public/fonts/fontawesome-webfont.svg new file mode 100644 index 0000000..855c845 --- /dev/null +++ b/public/fonts/fontawesome-webfont.svg @@ -0,0 +1,2671 @@ + + + + +Created by FontForge 20120731 at Mon Oct 24 17:37:40 2016 + By ,,, +Copyright Dave Gandy 2016. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/fonts/fontawesome-webfont.ttf b/public/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000..35acda2 Binary files /dev/null and b/public/fonts/fontawesome-webfont.ttf differ diff --git a/public/fonts/fontawesome-webfont.woff b/public/fonts/fontawesome-webfont.woff new file mode 100644 index 0000000..400014a Binary files /dev/null and b/public/fonts/fontawesome-webfont.woff differ diff --git a/public/fonts/fontawesome-webfont.woff2 b/public/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000..4d13fc6 Binary files /dev/null and b/public/fonts/fontawesome-webfont.woff2 differ diff --git a/public/iconfont.js b/public/iconfont.js new file mode 100644 index 0000000..dc78d59 --- /dev/null +++ b/public/iconfont.js @@ -0,0 +1 @@ +window._iconfont_svg_string_3741435='',(l=>{var c=(a=(a=document.getElementsByTagName("script"))[a.length-1]).getAttribute("data-injectcss"),a=a.getAttribute("data-disable-injectsvg");if(!a){var h,i,o,z,v,t=function(c,a){a.parentNode.insertBefore(c,a)};if(c&&!l.__iconfont__svg__cssinject__){l.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(c){console&&console.log(c)}}h=function(){var c,a=document.createElement("div");a.innerHTML=l._iconfont_svg_string_3741435,(a=a.getElementsByTagName("svg")[0])&&(a.setAttribute("aria-hidden","true"),a.style.position="absolute",a.style.width=0,a.style.height=0,a.style.overflow="hidden",a=a,(c=document.body).firstChild?t(a,c.firstChild):c.appendChild(a))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(h,0):(i=function(){document.removeEventListener("DOMContentLoaded",i,!1),h()},document.addEventListener("DOMContentLoaded",i,!1)):document.attachEvent&&(o=h,z=l.document,v=!1,s(),z.onreadystatechange=function(){"complete"==z.readyState&&(z.onreadystatechange=null,m())})}function m(){v||(v=!0,o())}function s(){try{z.documentElement.doScroll("left")}catch(c){return void setTimeout(s,50)}m()}})(window); \ No newline at end of file diff --git a/public/jsencrypt.min.js b/public/jsencrypt.min.js new file mode 100644 index 0000000..174916b --- /dev/null +++ b/public/jsencrypt.min.js @@ -0,0 +1,2 @@ +/*! For license information please see jsencrypt.min.js.LICENSE.txt */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.JSEncrypt=e():t.JSEncrypt=e()}(window,(()=>(()=>{var t={155:t=>{var e,i,r=t.exports={};function n(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function o(t){if(e===setTimeout)return setTimeout(t,0);if((e===n||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(i){try{return e.call(null,t,0)}catch(i){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:n}catch(t){e=n}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(t){i=s}}();var h,a=[],u=!1,c=-1;function f(){u&&h&&(u=!1,h.length?a=h.concat(a):c=-1,a.length&&l())}function l(){if(!u){var t=o(f);u=!0;for(var e=a.length;e;){for(h=a,a=[];++c1)for(var i=1;i{for(var r in e)i.o(e,r)&&!i.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var r={};return(()=>{"use strict";function t(t){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(t)}function e(t,e){return t&e}function n(t,e){return t|e}function s(t,e){return t^e}function o(t,e){return t&~e}function h(t){if(0==t)return-1;var e=0;return 0==(65535&t)&&(t>>=16,e+=16),0==(255&t)&&(t>>=8,e+=8),0==(15&t)&&(t>>=4,e+=4),0==(3&t)&&(t>>=2,e+=2),0==(1&t)&&++e,e}function a(t){for(var e=0;0!=t;)t&=t-1,++e;return e}i.d(r,{default:()=>ot});var u,c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function f(t){var e,i,r="";for(e=0;e+3<=t.length;e+=3)i=parseInt(t.substring(e,e+3),16),r+=c.charAt(i>>6)+c.charAt(63&i);for(e+1==t.length?(i=parseInt(t.substring(e,e+1),16),r+=c.charAt(i<<2)):e+2==t.length&&(i=parseInt(t.substring(e,e+2),16),r+=c.charAt(i>>2)+c.charAt((3&i)<<4));(3&r.length)>0;)r+="=";return r}function l(e){var i,r="",n=0,s=0;for(i=0;i>2),s=3&o,n=1):1==n?(r+=t(s<<2|o>>4),s=15&o,n=2):2==n?(r+=t(s),r+=t(o>>2),s=3&o,n=3):(r+=t(s<<2|o>>4),r+=t(15&o),n=0))}return 1==n&&(r+=t(s<<2)),r}var p,g={decode:function(t){var e;if(void 0===p){var i="= \f\n\r\t \u2028\u2029";for(p=Object.create(null),e=0;e<64;++e)p["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e)]=e;for(p["-"]=62,p._=63,e=0;e=4?(r[r.length]=n>>16,r[r.length]=n>>8&255,r[r.length]=255&n,n=0,s=0):n<<=6}}switch(s){case 1:throw new Error("Base64 encoding incomplete: at least 2 bits missing");case 2:r[r.length]=n>>10;break;case 3:r[r.length]=n>>16,r[r.length]=n>>8&255}return r},re:/-----BEGIN [^-]+-----([A-Za-z0-9+\/=\s]+)-----END [^-]+-----|begin-base64[^\n]+\n([A-Za-z0-9+\/=\s]+)====/,unarmor:function(t){var e=g.re.exec(t);if(e)if(e[1])t=e[1];else{if(!e[2])throw new Error("RegExp out of sync");t=e[2]}return g.decode(t)}},d=1e13,v=function(){function t(t){this.buf=[+t||0]}return t.prototype.mulAdd=function(t,e){var i,r,n=this.buf,s=n.length;for(i=0;i0&&(n[i]=e)},t.prototype.sub=function(t){var e,i,r=this.buf,n=r.length;for(e=0;e=0;--r)i+=(d+e[r]).toString().substring(1);return i},t.prototype.valueOf=function(){for(var t=this.buf,e=0,i=t.length-1;i>=0;--i)e=e*d+t[i];return e},t.prototype.simplify=function(){var t=this.buf;return 1==t.length?t[0]:this},t}(),m=/^(\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/,y=/^(\d\d\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/;function b(t,e){return t.length>e&&(t=t.substring(0,e)+"…"),t}var T,S=function(){function t(e,i){this.hexDigits="0123456789ABCDEF",e instanceof t?(this.enc=e.enc,this.pos=e.pos):(this.enc=e,this.pos=i)}return t.prototype.get=function(t){if(void 0===t&&(t=this.pos++),t>=this.enc.length)throw new Error("Requesting byte offset ".concat(t," on a stream of length ").concat(this.enc.length));return"string"==typeof this.enc?this.enc.charCodeAt(t):this.enc[t]},t.prototype.hexByte=function(t){return this.hexDigits.charAt(t>>4&15)+this.hexDigits.charAt(15&t)},t.prototype.hexDump=function(t,e,i){for(var r="",n=t;n176)return!1}return!0},t.prototype.parseStringISO=function(t,e){for(var i="",r=t;r191&&n<224?String.fromCharCode((31&n)<<6|63&this.get(r++)):String.fromCharCode((15&n)<<12|(63&this.get(r++))<<6|63&this.get(r++))}return i},t.prototype.parseStringBMP=function(t,e){for(var i,r,n="",s=t;s127,s=n?255:0,o="";r==s&&++t4){for(o=r,i<<=3;0==(128&(+o^s));)o=+o<<1,--i;o="("+i+" bit)\n"}n&&(r-=256);for(var h=new v(r),a=t+1;a=a;--u)s+=h>>u&1?"1":"0";if(s.length>i)return n+b(s,i)}return n+s},t.prototype.parseOctetString=function(t,e,i){if(this.isASCII(t,e))return b(this.parseStringISO(t,e),i);var r=e-t,n="("+r+" byte)\n";r>(i/=2)&&(e=t+i);for(var s=t;si&&(n+="…"),n},t.prototype.parseOID=function(t,e,i){for(var r="",n=new v,s=0,o=t;oi)return b(r,i);n=new v,s=0}}return s>0&&(r+=".incomplete"),r},t}(),E=function(){function t(t,e,i,r,n){if(!(r instanceof w))throw new Error("Invalid tag value.");this.stream=t,this.header=e,this.length=i,this.tag=r,this.sub=n}return t.prototype.typeName=function(){switch(this.tag.tagClass){case 0:switch(this.tag.tagNumber){case 0:return"EOC";case 1:return"BOOLEAN";case 2:return"INTEGER";case 3:return"BIT_STRING";case 4:return"OCTET_STRING";case 5:return"NULL";case 6:return"OBJECT_IDENTIFIER";case 7:return"ObjectDescriptor";case 8:return"EXTERNAL";case 9:return"REAL";case 10:return"ENUMERATED";case 11:return"EMBEDDED_PDV";case 12:return"UTF8String";case 16:return"SEQUENCE";case 17:return"SET";case 18:return"NumericString";case 19:return"PrintableString";case 20:return"TeletexString";case 21:return"VideotexString";case 22:return"IA5String";case 23:return"UTCTime";case 24:return"GeneralizedTime";case 25:return"GraphicString";case 26:return"VisibleString";case 27:return"GeneralString";case 28:return"UniversalString";case 30:return"BMPString"}return"Universal_"+this.tag.tagNumber.toString();case 1:return"Application_"+this.tag.tagNumber.toString();case 2:return"["+this.tag.tagNumber.toString()+"]";case 3:return"Private_"+this.tag.tagNumber.toString()}},t.prototype.content=function(t){if(void 0===this.tag)return null;void 0===t&&(t=1/0);var e=this.posContent(),i=Math.abs(this.length);if(!this.tag.isUniversal())return null!==this.sub?"("+this.sub.length+" elem)":this.stream.parseOctetString(e,e+i,t);switch(this.tag.tagNumber){case 1:return 0===this.stream.get(e)?"false":"true";case 2:return this.stream.parseInteger(e,e+i);case 3:return this.sub?"("+this.sub.length+" elem)":this.stream.parseBitString(e,e+i,t);case 4:return this.sub?"("+this.sub.length+" elem)":this.stream.parseOctetString(e,e+i,t);case 6:return this.stream.parseOID(e,e+i,t);case 16:case 17:return null!==this.sub?"("+this.sub.length+" elem)":"(no elem)";case 12:return b(this.stream.parseStringUTF(e,e+i),t);case 18:case 19:case 20:case 21:case 22:case 26:return b(this.stream.parseStringISO(e,e+i),t);case 30:return b(this.stream.parseStringBMP(e,e+i),t);case 23:case 24:return this.stream.parseTime(e,e+i,23==this.tag.tagNumber)}return null},t.prototype.toString=function(){return this.typeName()+"@"+this.stream.pos+"[header:"+this.header+",length:"+this.length+",sub:"+(null===this.sub?"null":this.sub.length)+"]"},t.prototype.toPrettyString=function(t){void 0===t&&(t="");var e=t+this.typeName()+" @"+this.stream.pos;if(this.length>=0&&(e+="+"),e+=this.length,this.tag.tagConstructed?e+=" (constructed)":!this.tag.isUniversal()||3!=this.tag.tagNumber&&4!=this.tag.tagNumber||null===this.sub||(e+=" (encapsulates)"),e+="\n",null!==this.sub){t+=" ";for(var i=0,r=this.sub.length;i6)throw new Error("Length over 48 bits not supported at position "+(t.pos-1));if(0===i)return null;e=0;for(var r=0;r>6,this.tagConstructed=0!=(32&e),this.tagNumber=31&e,31==this.tagNumber){var i=new v;do{e=t.get(),i.mulAdd(128,127&e)}while(128&e);this.tagNumber=i.simplify()}}return t.prototype.isUniversal=function(){return 0===this.tagClass},t.prototype.isEOC=function(){return 0===this.tagClass&&0===this.tagNumber},t}(),D=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],x=(1<<26)/D[D.length-1],R=function(){function i(t,e,i){null!=t&&("number"==typeof t?this.fromNumber(t,e,i):null==e&&"string"!=typeof t?this.fromString(t,256):this.fromString(t,e))}return i.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var i;if(16==e)i=4;else if(8==e)i=3;else if(2==e)i=1;else if(32==e)i=5;else{if(4!=e)return this.toRadix(e);i=2}var r,n=(1<0)for(a>a)>0&&(s=!0,o=t(r));h>=0;)a>(a+=this.DB-i)):(r=this[h]>>(a-=i)&n,a<=0&&(a+=this.DB,--h)),r>0&&(s=!0),s&&(o+=t(r));return s?o:"0"},i.prototype.negate=function(){var t=I();return i.ZERO.subTo(this,t),t},i.prototype.abs=function(){return this.s<0?this.negate():this},i.prototype.compareTo=function(t){var e=this.s-t.s;if(0!=e)return e;var i=this.t;if(0!=(e=i-t.t))return this.s<0?-e:e;for(;--i>=0;)if(0!=(e=this[i]-t[i]))return e;return 0},i.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+C(this[this.t-1]^this.s&this.DM)},i.prototype.mod=function(t){var e=I();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(i.ZERO)>0&&t.subTo(e,e),e},i.prototype.modPowInt=function(t,e){var i;return i=t<256||e.isEven()?new O(e):new A(e),this.exp(t,i)},i.prototype.clone=function(){var t=I();return this.copyTo(t),t},i.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this[0];if(0==this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<>24},i.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},i.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},i.prototype.toByteArray=function(){var t=this.t,e=[];e[0]=this.s;var i,r=this.DB-t*this.DB%8,n=0;if(t-- >0)for(r>r)!=(this.s&this.DM)>>r&&(e[n++]=i|this.s<=0;)r<8?(i=(this[t]&(1<>(r+=this.DB-8)):(i=this[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),0!=(128&i)&&(i|=-256),0==n&&(128&this.s)!=(128&i)&&++n,(n>0||i!=this.s)&&(e[n++]=i);return e},i.prototype.equals=function(t){return 0==this.compareTo(t)},i.prototype.min=function(t){return this.compareTo(t)<0?this:t},i.prototype.max=function(t){return this.compareTo(t)>0?this:t},i.prototype.and=function(t){var i=I();return this.bitwiseTo(t,e,i),i},i.prototype.or=function(t){var e=I();return this.bitwiseTo(t,n,e),e},i.prototype.xor=function(t){var e=I();return this.bitwiseTo(t,s,e),e},i.prototype.andNot=function(t){var e=I();return this.bitwiseTo(t,o,e),e},i.prototype.not=function(){for(var t=I(),e=0;e=this.t?0!=this.s:0!=(this[e]&1<1){var c=I();for(r.sqrTo(o[1],c);h<=u;)o[h]=I(),r.mulTo(c,o[h-2],o[h]),h+=2}var f,l,p=t.t-1,g=!0,d=I();for(n=C(t[p])-1;p>=0;){for(n>=a?f=t[p]>>n-a&u:(f=(t[p]&(1<0&&(f|=t[p-1]>>this.DB+n-a)),h=i;0==(1&f);)f>>=1,--h;if((n-=h)<0&&(n+=this.DB,--p),g)o[f].copyTo(s),g=!1;else{for(;h>1;)r.sqrTo(s,d),r.sqrTo(d,s),h-=2;h>0?r.sqrTo(s,d):(l=s,s=d,d=l),r.mulTo(d,o[f],s)}for(;p>=0&&0==(t[p]&1<=0?(r.subTo(n,r),e&&s.subTo(h,s),o.subTo(a,o)):(n.subTo(r,n),e&&h.subTo(s,h),a.subTo(o,a))}return 0!=n.compareTo(i.ONE)?i.ZERO:a.compareTo(t)>=0?a.subtract(t):a.signum()<0?(a.addTo(t,a),a.signum()<0?a.add(t):a):a},i.prototype.pow=function(t){return this.exp(t,new B)},i.prototype.gcd=function(t){var e=this.s<0?this.negate():this.clone(),i=t.s<0?t.negate():t.clone();if(e.compareTo(i)<0){var r=e;e=i,i=r}var n=e.getLowestSetBit(),s=i.getLowestSetBit();if(s<0)return e;for(n0&&(e.rShiftTo(s,e),i.rShiftTo(s,i));e.signum()>0;)(n=e.getLowestSetBit())>0&&e.rShiftTo(n,e),(n=i.getLowestSetBit())>0&&i.rShiftTo(n,i),e.compareTo(i)>=0?(e.subTo(i,e),e.rShiftTo(1,e)):(i.subTo(e,i),i.rShiftTo(1,i));return s>0&&i.lShiftTo(s,i),i},i.prototype.isProbablePrime=function(t){var e,i=this.abs();if(1==i.t&&i[0]<=D[D.length-1]){for(e=0;e=0;--e)t[e]=this[e];t.t=this.t,t.s=this.s},i.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,t>0?this[0]=t:t<-1?this[0]=t+this.DV:this.t=0},i.prototype.fromString=function(t,e){var r;if(16==e)r=4;else if(8==e)r=3;else if(256==e)r=8;else if(2==e)r=1;else if(32==e)r=5;else{if(4!=e)return void this.fromRadix(t,e);r=2}this.t=0,this.s=0;for(var n=t.length,s=!1,o=0;--n>=0;){var h=8==r?255&+t[n]:q(t,n);h<0?"-"==t.charAt(n)&&(s=!0):(s=!1,0==o?this[this.t++]=h:o+r>this.DB?(this[this.t-1]|=(h&(1<>this.DB-o):this[this.t-1]|=h<=this.DB&&(o-=this.DB))}8==r&&0!=(128&+t[0])&&(this.s=-1,o>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==t;)--this.t},i.prototype.dlShiftTo=function(t,e){var i;for(i=this.t-1;i>=0;--i)e[i+t]=this[i];for(i=t-1;i>=0;--i)e[i]=0;e.t=this.t+t,e.s=this.s},i.prototype.drShiftTo=function(t,e){for(var i=t;i=0;--h)e[h+s+1]=this[h]>>r|o,o=(this[h]&n)<=0;--h)e[h]=0;e[s]=o,e.t=this.t+s+1,e.s=this.s,e.clamp()},i.prototype.rShiftTo=function(t,e){e.s=this.s;var i=Math.floor(t/this.DB);if(i>=this.t)e.t=0;else{var r=t%this.DB,n=this.DB-r,s=(1<>r;for(var o=i+1;o>r;r>0&&(e[this.t-i-1]|=(this.s&s)<>=this.DB;if(t.t>=this.DB;r+=this.s}else{for(r+=this.s;i>=this.DB;r-=t.s}e.s=r<0?-1:0,r<-1?e[i++]=this.DV+r:r>0&&(e[i++]=r),e.t=i,e.clamp()},i.prototype.multiplyTo=function(t,e){var r=this.abs(),n=t.abs(),s=r.t;for(e.t=s+n.t;--s>=0;)e[s]=0;for(s=0;s=0;)t[i]=0;for(i=0;i=e.DV&&(t[i+e.t]-=e.DV,t[i+e.t+1]=1)}t.t>0&&(t[t.t-1]+=e.am(i,e[i],t,2*i,0,1)),t.s=0,t.clamp()},i.prototype.divRemTo=function(t,e,r){var n=t.abs();if(!(n.t<=0)){var s=this.abs();if(s.t0?(n.lShiftTo(u,o),s.lShiftTo(u,r)):(n.copyTo(o),s.copyTo(r));var c=o.t,f=o[c-1];if(0!=f){var l=f*(1<1?o[c-2]>>this.F2:0),p=this.FV/l,g=(1<=0&&(r[r.t++]=1,r.subTo(y,r)),i.ONE.dlShiftTo(c,y),y.subTo(o,o);o.t=0;){var b=r[--v]==f?this.DM:Math.floor(r[v]*p+(r[v-1]+d)*g);if((r[v]+=o.am(0,b,r,m,0,c))0&&r.rShiftTo(u,r),h<0&&i.ZERO.subTo(r,r)}}},i.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(0==(1&t))return 0;var e=3&t;return(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)>0?this.DV-e:-e},i.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},i.prototype.exp=function(t,e){if(t>4294967295||t<1)return i.ONE;var r=I(),n=I(),s=e.convert(this),o=C(t)-1;for(s.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<0)e.mulTo(n,s,r);else{var h=r;r=n,n=h}return e.revert(r)},i.prototype.chunkSize=function(t){return Math.floor(Math.LN2*this.DB/Math.log(t))},i.prototype.toRadix=function(t){if(null==t&&(t=10),0==this.signum()||t<2||t>36)return"0";var e=this.chunkSize(t),i=Math.pow(t,e),r=H(i),n=I(),s=I(),o="";for(this.divRemTo(r,n,s);n.signum()>0;)o=(i+s.intValue()).toString(t).substr(1)+o,n.divRemTo(r,n,s);return s.intValue().toString(t)+o},i.prototype.fromRadix=function(t,e){this.fromInt(0),null==e&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),s=!1,o=0,h=0,a=0;a=r&&(this.dMultiply(n),this.dAddOffset(h,0),o=0,h=0))}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(h,0)),s&&i.ZERO.subTo(this,this)},i.prototype.fromNumber=function(t,e,r){if("number"==typeof e)if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(i.ONE.shiftLeft(t-1),n,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(i.ONE.shiftLeft(t-1),this);else{var s=[],o=7&t;s.length=1+(t>>3),e.nextBytes(s),o>0?s[0]&=(1<>=this.DB;if(t.t>=this.DB;r+=this.s}else{for(r+=this.s;i>=this.DB;r+=t.s}e.s=r<0?-1:0,r>0?e[i++]=r:r<-1&&(e[i++]=this.DV+r),e.t=i,e.clamp()},i.prototype.dMultiply=function(t){this[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()},i.prototype.dAddOffset=function(t,e){if(0!=t){for(;this.t<=e;)this[this.t++]=0;for(this[e]+=t;this[e]>=this.DV;)this[e]-=this.DV,++e>=this.t&&(this[this.t++]=0),++this[e]}},i.prototype.multiplyLowerTo=function(t,e,i){var r=Math.min(this.t+t.t,e);for(i.s=0,i.t=r;r>0;)i[--r]=0;for(var n=i.t-this.t;r=0;)i[r]=0;for(r=Math.max(e-this.t,0);r0)if(0==e)i=this[0]%t;else for(var r=this.t-1;r>=0;--r)i=(e*i+this[r])%t;return i},i.prototype.millerRabin=function(t){var e=this.subtract(i.ONE),r=e.getLowestSetBit();if(r<=0)return!1;var n=e.shiftRight(r);(t=t+1>>1)>D.length&&(t=D.length);for(var s=I(),o=0;o0&&(i.rShiftTo(o,i),r.rShiftTo(o,r));var h=function(){(s=i.getLowestSetBit())>0&&i.rShiftTo(s,i),(s=r.getLowestSetBit())>0&&r.rShiftTo(s,r),i.compareTo(r)>=0?(i.subTo(r,i),i.rShiftTo(1,i)):(r.subTo(i,r),r.rShiftTo(1,r)),i.signum()>0?setTimeout(h,0):(o>0&&r.lShiftTo(o,r),setTimeout((function(){e(r)}),0))};setTimeout(h,10)}},i.prototype.fromNumberAsync=function(t,e,r,s){if("number"==typeof e)if(t<2)this.fromInt(1);else{this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(i.ONE.shiftLeft(t-1),n,this),this.isEven()&&this.dAddOffset(1,0);var o=this,h=function(){o.dAddOffset(2,0),o.bitLength()>t&&o.subTo(i.ONE.shiftLeft(t-1),o),o.isProbablePrime(e)?setTimeout((function(){s()}),0):setTimeout(h,0)};setTimeout(h,0)}else{var a=[],u=7&t;a.length=1+(t>>3),e.nextBytes(a),u>0?a[0]&=(1<=0?t.mod(this.m):t},t.prototype.revert=function(t){return t},t.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i),this.reduce(i)},t.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t}(),A=function(){function t(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(e,e),e},t.prototype.revert=function(t){var e=I();return t.copyTo(e),this.reduce(e),e},t.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e>15)*this.mpl&this.um)<<15)&t.DM;for(t[i=e+this.m.t]+=this.m.am(0,r,t,e,0,this.m.t);t[i]>=t.DV;)t[i]-=t.DV,t[++i]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i),this.reduce(i)},t.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t}(),V=function(){function t(t){this.m=t,this.r2=I(),this.q3=I(),R.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t)}return t.prototype.convert=function(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=I();return t.copyTo(e),this.reduce(e),e},t.prototype.revert=function(t){return t},t.prototype.reduce=function(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i),this.reduce(i)},t.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t}();function I(){return new R(null)}function N(t,e){return new R(t,e)}var P="undefined"!=typeof navigator;P&&"Microsoft Internet Explorer"==navigator.appName?(R.prototype.am=function(t,e,i,r,n,s){for(var o=32767&e,h=e>>15;--s>=0;){var a=32767&this[t],u=this[t++]>>15,c=h*a+u*o;n=((a=o*a+((32767&c)<<15)+i[r]+(1073741823&n))>>>30)+(c>>>15)+h*u+(n>>>30),i[r++]=1073741823&a}return n},T=30):P&&"Netscape"!=navigator.appName?(R.prototype.am=function(t,e,i,r,n,s){for(;--s>=0;){var o=e*this[t++]+i[r]+n;n=Math.floor(o/67108864),i[r++]=67108863&o}return n},T=26):(R.prototype.am=function(t,e,i,r,n,s){for(var o=16383&e,h=e>>14;--s>=0;){var a=16383&this[t],u=this[t++]>>14,c=h*a+u*o;n=((a=o*a+((16383&c)<<14)+i[r]+n)>>28)+(c>>14)+h*u,i[r++]=268435455&a}return n},T=28),R.prototype.DB=T,R.prototype.DM=(1<>>16)&&(t=e,i+=16),0!=(e=t>>8)&&(t=e,i+=8),0!=(e=t>>4)&&(t=e,i+=4),0!=(e=t>>2)&&(t=e,i+=2),0!=(e=t>>1)&&(t=e,i+=1),i}R.ZERO=H(0),R.ONE=H(1);var F,U,K=function(){function t(){this.i=0,this.j=0,this.S=[]}return t.prototype.init=function(t){var e,i,r;for(e=0;e<256;++e)this.S[e]=e;for(i=0,e=0;e<256;++e)i=i+this.S[e]+t[e%t.length]&255,r=this.S[e],this.S[e]=this.S[i],this.S[i]=r;this.i=0,this.j=0},t.prototype.next=function(){var t;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,t=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=t,this.S[t+this.S[this.i]&255]},t}(),k=null;if(null==k){k=[],U=0;var _=void 0;if("undefined"!=typeof window&&window.crypto&&window.crypto.getRandomValues){var z=new Uint32Array(256);for(window.crypto.getRandomValues(z),_=0;_=256||U>=256)window.removeEventListener?window.removeEventListener("mousemove",G,!1):window.detachEvent&&window.detachEvent("onmousemove",G);else try{var e=t.x+t.y;k[U++]=255&e,Z+=1}catch(t){}};"undefined"!=typeof window&&(window.addEventListener?window.addEventListener("mousemove",G,!1):window.attachEvent&&window.attachEvent("onmousemove",G))}function $(){if(null==F){for(F=new K;U<256;){var t=Math.floor(65536*Math.random());k[U++]=255&t}for(F.init(k),U=0;U0&&e.length>0?(this.n=N(t,16),this.e=parseInt(e,16)):console.error("Invalid RSA public key")},t.prototype.encrypt=function(t){var e=this.n.bitLength()+7>>3,i=function(t,e){if(e=0&&e>0;){var n=t.charCodeAt(r--);n<128?i[--e]=n:n>127&&n<2048?(i[--e]=63&n|128,i[--e]=n>>6|192):(i[--e]=63&n|128,i[--e]=n>>6&63|128,i[--e]=n>>12|224)}i[--e]=0;for(var s=new Y,o=[];e>2;){for(o[0]=0;0==o[0];)s.nextBytes(o);i[--e]=o[0]}return i[--e]=2,i[--e]=0,new R(i)}(t,e);if(null==i)return null;var r=this.doPublic(i);if(null==r)return null;for(var n=r.toString(16),s=n.length,o=0;o<2*e-s;o++)n="0"+n;return n},t.prototype.setPrivate=function(t,e,i){null!=t&&null!=e&&t.length>0&&e.length>0?(this.n=N(t,16),this.e=parseInt(e,16),this.d=N(i,16)):console.error("Invalid RSA private key")},t.prototype.setPrivateEx=function(t,e,i,r,n,s,o,h){null!=t&&null!=e&&t.length>0&&e.length>0?(this.n=N(t,16),this.e=parseInt(e,16),this.d=N(i,16),this.p=N(r,16),this.q=N(n,16),this.dmp1=N(s,16),this.dmq1=N(o,16),this.coeff=N(h,16)):console.error("Invalid RSA private key")},t.prototype.generate=function(t,e){var i=new Y,r=t>>1;this.e=parseInt(e,16);for(var n=new R(e,16);;){for(;this.p=new R(t-r,1,i),0!=this.p.subtract(R.ONE).gcd(n).compareTo(R.ONE)||!this.p.isProbablePrime(10););for(;this.q=new R(r,1,i),0!=this.q.subtract(R.ONE).gcd(n).compareTo(R.ONE)||!this.q.isProbablePrime(10););if(this.p.compareTo(this.q)<=0){var s=this.p;this.p=this.q,this.q=s}var o=this.p.subtract(R.ONE),h=this.q.subtract(R.ONE),a=o.multiply(h);if(0==a.gcd(n).compareTo(R.ONE)){this.n=this.p.multiply(this.q),this.d=n.modInverse(a),this.dmp1=this.d.mod(o),this.dmq1=this.d.mod(h),this.coeff=this.q.modInverse(this.p);break}}},t.prototype.decrypt=function(t){var e=N(t,16),i=this.doPrivate(e);return null==i?null:function(t,e){for(var i=t.toByteArray(),r=0;r=i.length)return null;for(var n="";++r191&&s<224?(n+=String.fromCharCode((31&s)<<6|63&i[r+1]),++r):(n+=String.fromCharCode((15&s)<<12|(63&i[r+1])<<6|63&i[r+2]),r+=2)}return n}(i,this.n.bitLength()+7>>3)},t.prototype.generateAsync=function(t,e,i){var r=new Y,n=t>>1;this.e=parseInt(e,16);var s=new R(e,16),o=this,h=function(){var e=function(){if(o.p.compareTo(o.q)<=0){var t=o.p;o.p=o.q,o.q=t}var e=o.p.subtract(R.ONE),r=o.q.subtract(R.ONE),n=e.multiply(r);0==n.gcd(s).compareTo(R.ONE)?(o.n=o.p.multiply(o.q),o.d=s.modInverse(n),o.dmp1=o.d.mod(e),o.dmq1=o.d.mod(r),o.coeff=o.q.modInverse(o.p),setTimeout((function(){i()}),0)):setTimeout(h,0)},a=function(){o.q=I(),o.q.fromNumberAsync(n,1,r,(function(){o.q.subtract(R.ONE).gcda(s,(function(t){0==t.compareTo(R.ONE)&&o.q.isProbablePrime(10)?setTimeout(e,0):setTimeout(a,0)}))}))},u=function(){o.p=I(),o.p.fromNumberAsync(t-n,1,r,(function(){o.p.subtract(R.ONE).gcda(s,(function(t){0==t.compareTo(R.ONE)&&o.p.isProbablePrime(10)?setTimeout(a,0):setTimeout(u,0)}))}))};setTimeout(u,0)};setTimeout(h,0)},t.prototype.sign=function(t,e,i){var r=function(t,e){if(e15)throw"ASN.1 length too long to represent by 8x: n = "+t.toString(16);return(128+i).toString(16)+e},this.getEncodedHex=function(){return(null==this.hTLV||this.isModified)&&(this.hV=this.getFreshValueHex(),this.hL=this.getLengthHexFromValue(),this.hTLV=this.hT+this.hL+this.hV,this.isModified=!1),this.hTLV},this.getValueHex=function(){return this.getEncodedHex(),this.hV},this.getFreshValueHex=function(){return""}},W.asn1.DERAbstractString=function(t){W.asn1.DERAbstractString.superclass.constructor.call(this),this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=stohex(this.s)},this.setStringHex=function(t){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&("string"==typeof t?this.setString(t):void 0!==t.str?this.setString(t.str):void 0!==t.hex&&this.setStringHex(t.hex))},Q.lang.extend(W.asn1.DERAbstractString,W.asn1.ASN1Object),W.asn1.DERAbstractTime=function(t){W.asn1.DERAbstractTime.superclass.constructor.call(this),this.localDateToUTC=function(t){return utc=t.getTime()+6e4*t.getTimezoneOffset(),new Date(utc)},this.formatDate=function(t,e,i){var r=this.zeroPadding,n=this.localDateToUTC(t),s=String(n.getFullYear());"utc"==e&&(s=s.substr(2,2));var o=s+r(String(n.getMonth()+1),2)+r(String(n.getDate()),2)+r(String(n.getHours()),2)+r(String(n.getMinutes()),2)+r(String(n.getSeconds()),2);if(!0===i){var h=n.getMilliseconds();if(0!=h){var a=r(String(h),3);o=o+"."+(a=a.replace(/[0]+$/,""))}}return o+"Z"},this.zeroPadding=function(t,e){return t.length>=e?t:new Array(e-t.length+1).join("0")+t},this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=stohex(t)},this.setByDateValue=function(t,e,i,r,n,s){var o=new Date(Date.UTC(t,e-1,i,r,n,s,0));this.setByDate(o)},this.getFreshValueHex=function(){return this.hV}},Q.lang.extend(W.asn1.DERAbstractTime,W.asn1.ASN1Object),W.asn1.DERAbstractStructured=function(t){W.asn1.DERAbstractString.superclass.constructor.call(this),this.setByASN1ObjectArray=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array=t},this.appendASN1Object=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array.push(t)},this.asn1Array=new Array,void 0!==t&&void 0!==t.array&&(this.asn1Array=t.array)},Q.lang.extend(W.asn1.DERAbstractStructured,W.asn1.ASN1Object),W.asn1.DERBoolean=function(){W.asn1.DERBoolean.superclass.constructor.call(this),this.hT="01",this.hTLV="0101ff"},Q.lang.extend(W.asn1.DERBoolean,W.asn1.ASN1Object),W.asn1.DERInteger=function(t){W.asn1.DERInteger.superclass.constructor.call(this),this.hT="02",this.setByBigInteger=function(t){this.hTLV=null,this.isModified=!0,this.hV=W.asn1.ASN1Util.bigIntToMinTwosComplementsHex(t)},this.setByInteger=function(t){var e=new R(String(t),10);this.setByBigInteger(e)},this.setValueHex=function(t){this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&(void 0!==t.bigint?this.setByBigInteger(t.bigint):void 0!==t.int?this.setByInteger(t.int):"number"==typeof t?this.setByInteger(t):void 0!==t.hex&&this.setValueHex(t.hex))},Q.lang.extend(W.asn1.DERInteger,W.asn1.ASN1Object),W.asn1.DERBitString=function(t){if(void 0!==t&&void 0!==t.obj){var e=W.asn1.ASN1Util.newObject(t.obj);t.hex="00"+e.getEncodedHex()}W.asn1.DERBitString.superclass.constructor.call(this),this.hT="03",this.setHexValueIncludingUnusedBits=function(t){this.hTLV=null,this.isModified=!0,this.hV=t},this.setUnusedBitsAndHexValue=function(t,e){if(t<0||7=2?(n[n.length]=s,s=0,o=0):s<<=4}}if(o)throw new Error("Hex encoding incomplete: 4 bits missing");return n}(t):g.unarmor(t),n=E.decode(r);if(3===n.sub.length&&(n=n.sub[2].sub[0]),9===n.sub.length){e=n.sub[1].getHexStringValue(),this.n=N(e,16),i=n.sub[2].getHexStringValue(),this.e=parseInt(i,16);var s=n.sub[3].getHexStringValue();this.d=N(s,16);var o=n.sub[4].getHexStringValue();this.p=N(o,16);var h=n.sub[5].getHexStringValue();this.q=N(h,16);var a=n.sub[6].getHexStringValue();this.dmp1=N(a,16);var c=n.sub[7].getHexStringValue();this.dmq1=N(c,16);var f=n.sub[8].getHexStringValue();this.coeff=N(f,16)}else{if(2!==n.sub.length)return!1;if(n.sub[0].sub){var l=n.sub[1].sub[0];e=l.sub[0].getHexStringValue(),this.n=N(e,16),i=l.sub[1].getHexStringValue(),this.e=parseInt(i,16)}else e=n.sub[0].getHexStringValue(),this.n=N(e,16),i=n.sub[1].getHexStringValue(),this.e=parseInt(i,16)}return!0}catch(t){return!1}},e.prototype.getPrivateBaseKey=function(){var t={array:[new W.asn1.DERInteger({int:0}),new W.asn1.DERInteger({bigint:this.n}),new W.asn1.DERInteger({int:this.e}),new W.asn1.DERInteger({bigint:this.d}),new W.asn1.DERInteger({bigint:this.p}),new W.asn1.DERInteger({bigint:this.q}),new W.asn1.DERInteger({bigint:this.dmp1}),new W.asn1.DERInteger({bigint:this.dmq1}),new W.asn1.DERInteger({bigint:this.coeff})]};return new W.asn1.DERSequence(t).getEncodedHex()},e.prototype.getPrivateBaseKeyB64=function(){return f(this.getPrivateBaseKey())},e.prototype.getPublicBaseKey=function(){var t=new W.asn1.DERSequence({array:[new W.asn1.DERObjectIdentifier({oid:"1.2.840.113549.1.1.1"}),new W.asn1.DERNull]}),e=new W.asn1.DERSequence({array:[new W.asn1.DERInteger({bigint:this.n}),new W.asn1.DERInteger({int:this.e})]}),i=new W.asn1.DERBitString({hex:"00"+e.getEncodedHex()});return new W.asn1.DERSequence({array:[t,i]}).getEncodedHex()},e.prototype.getPublicBaseKeyB64=function(){return f(this.getPublicBaseKey())},e.wordwrap=function(t,e){if(!t)return t;var i="(.{1,"+(e=e||64)+"})( +|$\n?)|(.{1,"+e+"})";return t.match(RegExp(i,"g")).join("\n")},e.prototype.getPrivateKey=function(){var t="-----BEGIN RSA PRIVATE KEY-----\n";return(t+=e.wordwrap(this.getPrivateBaseKeyB64())+"\n")+"-----END RSA PRIVATE KEY-----"},e.prototype.getPublicKey=function(){var t="-----BEGIN PUBLIC KEY-----\n";return(t+=e.wordwrap(this.getPublicBaseKeyB64())+"\n")+"-----END PUBLIC KEY-----"},e.hasPublicKeyProperty=function(t){return(t=t||{}).hasOwnProperty("n")&&t.hasOwnProperty("e")},e.hasPrivateKeyProperty=function(t){return(t=t||{}).hasOwnProperty("n")&&t.hasOwnProperty("e")&&t.hasOwnProperty("d")&&t.hasOwnProperty("p")&&t.hasOwnProperty("q")&&t.hasOwnProperty("dmp1")&&t.hasOwnProperty("dmq1")&&t.hasOwnProperty("coeff")},e.prototype.parsePropertiesFrom=function(t){this.n=t.n,this.e=t.e,t.hasOwnProperty("d")&&(this.d=t.d,this.p=t.p,this.q=t.q,this.dmp1=t.dmp1,this.dmq1=t.dmq1,this.coeff=t.coeff)},e}(J),nt=i(155),st=void 0!==nt?null===(et=nt.env)||void 0===et?void 0:"3.3.1":void 0;const ot=function(){function t(t){void 0===t&&(t={}),t=t||{},this.default_key_size=t.default_key_size?parseInt(t.default_key_size,10):1024,this.default_public_exponent=t.default_public_exponent||"010001",this.log=t.log||!1,this.key=null}return t.prototype.setKey=function(t){this.log&&this.key&&console.warn("A key was already set, overriding existing."),this.key=new rt(t)},t.prototype.setPrivateKey=function(t){this.setKey(t)},t.prototype.setPublicKey=function(t){this.setKey(t)},t.prototype.decrypt=function(t){try{return this.getKey().decrypt(l(t))}catch(t){return!1}},t.prototype.encrypt=function(t){try{return f(this.getKey().encrypt(t))}catch(t){return!1}},t.prototype.sign=function(t,e,i){try{return f(this.getKey().sign(t,e,i))}catch(t){return!1}},t.prototype.verify=function(t,e,i){try{return this.getKey().verify(t,l(e),i)}catch(t){return!1}},t.prototype.getKey=function(t){if(!this.key){if(this.key=new rt,t&&"[object Function]"==={}.toString.call(t))return void this.key.generateAsync(this.default_key_size,this.default_public_exponent,t);this.key.generate(this.default_key_size,this.default_public_exponent)}return this.key},t.prototype.getPrivateKey=function(){return this.getKey().getPrivateKey()},t.prototype.getPrivateKeyB64=function(){return this.getKey().getPrivateBaseKeyB64()},t.prototype.getPublicKey=function(){return this.getKey().getPublicKey()},t.prototype.getPublicKeyB64=function(){return this.getKey().getPublicBaseKeyB64()},t.version=st,t}()})(),r.default})())); \ No newline at end of file diff --git a/public/luckysheet.umd.js b/public/luckysheet.umd.js new file mode 100644 index 0000000..00c3b08 --- /dev/null +++ b/public/luckysheet.umd.js @@ -0,0 +1,4318 @@ +/*! @preserve + * luckysheet + * version: 2.1.13 + * https://github.com/mengshukeji/Luckysheet + */ +var luckysheet=(()=>{var D1=Object.create,oi=Object.defineProperty,M1=Object.defineProperties,F1=Object.getOwnPropertyDescriptor,E1=Object.getOwnPropertyDescriptors,N1=Object.getOwnPropertyNames,su=Object.getOwnPropertySymbols,P1=Object.getPrototypeOf,cu=Object.prototype.hasOwnProperty,L1=Object.prototype.propertyIsEnumerable;var uu=(e,n,t)=>n in e?oi(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Ue=(e,n)=>{for(var t in n||(n={}))cu.call(n,t)&&uu(e,t,n[t]);if(su)for(var t of su(n))L1.call(n,t)&&uu(e,t,n[t]);return e},hu=(e,n)=>M1(e,E1(n)),z1=e=>oi(e,"__esModule",{value:!0});var $e=(e,n)=>()=>(e&&(n=e(e=0)),n),kl=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),O1=(e,n)=>{for(var t in n)oi(e,t,{get:n[t],enumerable:!0})},B1=(e,n,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let l of N1(n))!cu.call(e,l)&&l!=="default"&&oi(e,l,{get:()=>n[l],enumerable:!(t=F1(n,l))||t.enumerable});return e},El=e=>B1(z1(oi(e!=null?D1(P1(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var H1,me,Sl=$e(()=>{H1={autoFormatw:!1,accuracy:void 0,total:0,allowCopy:!0,showtoolbar:!0,showinfobar:!0,showsheetbar:!0,showstatisticBar:!0,pointEdit:!1,pointEditUpdate:null,pointEditZoom:1,userInfo:!1,userMenuItem:[],myFolderUrl:null,functionButton:null,showConfigWindowResize:!0,enableAddRow:!0,addRowCount:100,enableAddBackTop:!0,enablePage:!0,pageInfo:null,editMode:!1,beforeCreateDom:null,workbookCreateBefore:null,workbookCreateAfter:null,remoteFunction:null,fireMousedown:null,plugins:[],forceCalculation:!1,defaultColWidth:73,defaultRowHeight:19,defaultTextColor:"#000",defaultCellColor:"#fff"},me=H1});var V1,h,Xe=$e(()=>{V1={container:null,loadingObj:{},luckysheetfile:null,defaultcolumnNum:60,defaultrowNum:84,fullscreenmode:!0,devicePixelRatio:1,currentSheetIndex:0,calculateSheetIndex:0,flowdata:[],config:{},visibledatarow:[],visibledatacolumn:[],ch_width:0,rh_height:0,cellmainWidth:0,cellmainHeight:0,toolbarHeight:0,infobarHeight:0,calculatebarHeight:0,rowHeaderWidth:46,columnHeaderHeight:20,cellMainSrollBarSize:12,sheetBarHeight:31,statisticBarHeight:23,luckysheetTableContentHW:[0,0],defaultcollen:73,defaultrowlen:19,jfcountfuncTimeout:null,jfautoscrollTimeout:null,luckysheet_select_status:!1,luckysheet_select_save:[{row:[0,0],column:[0,0]}],luckysheet_selection_range:[],luckysheet_copy_save:{},luckysheet_paste_iscut:!1,filterchage:!0,luckysheet_filter_save:{row:[],column:[]},luckysheet_sheet_move_status:!1,luckysheet_sheet_move_data:[],luckysheet_scroll_status:!1,luckysheetisrefreshdetail:!0,luckysheetisrefreshtheme:!0,luckysheetcurrentisPivotTable:!1,luckysheet_rows_selected_status:!1,luckysheet_cols_selected_status:!1,luckysheet_rows_change_size:!1,luckysheet_rows_change_size_start:[],luckysheet_cols_change_size:!1,luckysheet_cols_change_size_start:[],luckysheet_cols_dbclick_timeout:null,luckysheet_cols_dbclick_times:0,luckysheetCellUpdate:[],luckysheet_shiftpositon:null,iscopyself:!0,orderbyindex:0,luckysheet_model_move_state:!1,luckysheet_model_xy:[0,0],luckysheet_model_move_obj:null,luckysheet_cell_selected_move:!1,luckysheet_cell_selected_move_index:[],luckysheet_cell_selected_extend:!1,luckysheet_cell_selected_extend_index:[],luckysheet_cell_selected_extend_time:null,clearjfundo:!0,jfundo:[],jfredo:[],lang:"en",createChart:"",highlightChart:"",zIndex:15,chartparam:{luckysheetCurrentChart:null,luckysheetCurrentChartActive:!1,luckysheetCurrentChartMove:null,luckysheetCurrentChartMoveTimeout:null,luckysheetCurrentChartMoveObj:null,luckysheetCurrentChartMoveXy:null,luckysheetCurrentChartMoveWinH:null,luckysheetCurrentChartMoveWinW:null,luckysheetCurrentChartResize:null,luckysheetCurrentChartResizeObj:null,luckysheetCurrentChartResizeXy:null,luckysheetCurrentChartResizeWinH:null,luckysheetCurrentChartResizeWinW:null,luckysheetInsertChartTosheetChange:!0,luckysheetCurrentChartZIndexRank:100,luckysheet_chart_redo_click:!1,luckysheetCurrentChartMaxState:!1,jfrefreshchartall:"",changeChartCellData:"",renderChart:"",getChartJson:""},functionList:null,luckysheet_function:null,chart_selection:{},currentChart:"",scrollRefreshSwitch:!0,measureTextCache:{},measureTextCellInfoCache:{},measureTextCacheTimeOut:null,cellOverflowMapCache:{},zoomRatio:1,visibledatacolumn_unique:null,visibledatarow_unique:null,showGridLines:!0,toobarObject:{},inlineStringEditCache:null,inlineStringEditRange:null,fontList:[],defaultFontSize:10,currentSheetView:"viewNormal",cooperativeEdit:{usernameTimeout:{},changeCollaborationSize:[],allDataColumnlen:[],merge_range:{},checkoutData:[]},asyncLoad:["core"],defaultCell:{bg:null,bl:0,ct:{fa:"General",t:"n"},fc:"rgb(51, 51, 51)",ff:0,fs:11,ht:1,it:0,vt:1,m:"",v:""},conditionFormatCells:{}},h=V1});function de(e){return e==null||e.toString().replace(/\s/g,"")==""}function B(e){return!(e==null||e.toString().replace(/\s/g,"")===""||typeof e=="boolean"||isNaN(e))}function H(e){let n=!1;for(let t in Me)if(e==Me[t]){n=!0;break}return n}function $n(e){return!!/[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/gi.exec(e)}function fe(){return!!me.editMode}function Nl(){return!!h.allowEdit}function Nt(e,n,t,l,a){let o=!1;for(let s in h.config.merge){let u=e.merge[s];if(n=u.r&&t=u.c&&l<=u.c+u.cs-1){o=!0;break}else if(a>=u.c&&a<=u.c+u.cs-1){o=!0;break}else if(lu.c+u.cs-1){o=!0;break}}else if(t>=u.r&&t==u.r+u.rs-1){if(l>u.c&&lu.c&&au.c&&a==u.c+u.cs-1){o=!0;break}}else if(t>u.r+u.rs-1){if(l>u.c&&l<=u.c+u.cs-1){o=!0;break}else if(a>=u.c&&au.c&&a==u.c+u.cs-1){o=!0;break}}}else if(n==u.r){if(t=u.c&&l<=u.c+u.cs-1){o=!0;break}else if(a>=u.c&&a<=u.c+u.cs-1){o=!0;break}else if(lu.c+u.cs-1){o=!0;break}}else if(t>=u.r+u.rs-1){if(l>u.c&&l<=u.c+u.cs-1){o=!0;break}else if(a>=u.c&&au.c&&a==u.c+u.cs-1){o=!0;break}}}else if(n<=u.r+u.rs-1){if(l>=u.c&&l<=u.c+u.cs-1){o=!0;break}else if(a>=u.c&&a<=u.c+u.cs-1){o=!0;break}else if(lu.c+u.cs-1){o=!0;break}}}return o}function ls(e){return Math.ceil(e.charCodeAt().toString(2).length/8)}var Me,Pt=$e(()=>{Sl();Xe();Me={v:"#VALUE!",n:"#NAME?",na:"#N/A",r:"#REF!",d:"#DIV/0!",nm:"#NUM!",nl:"#NULL!",sp:"#SPILL!"}});function q1(e){return Math.floor(e)===e}function fu(e){var n={times:1,num:0};if(q1(e))return n.num=e,n;var t=e+"",l=t.indexOf("."),a=t.substr(l+1).length,o=Math.pow(10,a),s=parseInt(e*o+.5,10);return n.times=o,n.num=s,n}function si(e,n,t){var l=fu(e),a=fu(n),o=l.num,s=a.num,u=l.times,f=a.times,d=u>f?u:f,m=null;switch(t){case"add":return u===f?m=o+s:u>f?m=o+s*(u/f):m=o*(f/u)+s,m/d;case"subtract":return u===f?m=o-s:u>f?m=o-s*(u/f):m=o*(f/u)-s,m/d;case"multiply":return m=o*s/(u*f),m;case"divide":return m=function(){var g=o/s,y=f/u;return si(g,y,"multiply")}()}}function j1(e,n){if(n||(n=2),!B(e))return e;let t=e.toFixed(n),l=t.indexOf("."),a=t.substring(0,l),o=t.substring(l+1,t.length);if(o)for(let s=o.length-1;s!=0&&!(o.charAt(s)!="0"&&s==o.length-1);s--)o=o.substring(0,s);return Number(a+"."+o)}var du=$e(()=>{Pt();Number.prototype.add=function(e){let n=parseFloat(e);if(typeof n!="number"||Number.isNaN(n))throw new Error("\u8BF7\u8F93\u5165\u6570\u5B57\u6216\u8005\u6570\u5B57\u5B57\u7B26\u4E32\uFF5E");return si(this,n,"add")};Number.prototype.subtract=function(e){let n=parseFloat(e);if(typeof n!="number"||Number.isNaN(n))throw new Error("\u8BF7\u8F93\u5165\u6570\u5B57\u6216\u8005\u6570\u5B57\u5B57\u7B26\u4E32\uFF5E");return si(this,n,"subtract")};Number.prototype.multiply=function(e){let n=parseFloat(e);if(typeof n!="number"||Number.isNaN(n))throw new Error("\u8BF7\u8F93\u5165\u6570\u5B57\u6216\u8005\u6570\u5B57\u5B57\u7B26\u4E32\uFF5E");return si(this,n,"multiply")};Number.prototype.divide=function(e){let n=parseFloat(e);if(typeof n!="number"||Number.isNaN(n))throw new Error("\u8BF7\u8F93\u5165\u6570\u5B57\u6216\u8005\u6570\u5B57\u5B57\u7B26\u4E32\uFF5E");return si(this,n,"divide")};Number.prototype.tofixed=function(e){let n=parseFloat(e);if(typeof n!="number"||Number.isNaN(n))throw new Error("\u8BF7\u8F93\u5165\u6570\u5B57\u6216\u8005\u6570\u5B57\u5B57\u7B26\u4E32\uFF5E");return j1(this,n)}});var mu,pu=$e(()=>{mu={container:"luckysheet",loading:{},column:60,row:84,allowCopy:!0,showtoolbar:!0,showinfobar:!0,showsheetbar:!0,showstatisticBar:!0,pointEdit:!1,pointEditUpdate:null,pointEditZoom:1,data:[{name:"Sheet1",color:"",status:"1",order:"0",data:[],config:{},index:0},{name:"Sheet2",color:"",status:"0",order:"1",data:[],config:{},index:1},{name:"Sheet3",color:"",status:"0",order:"2",data:[],config:{},index:2}],title:"Luckysheet Demo",userInfo:!1,userMenuItem:[{url:"www.baidu.com",icon:'',name:"\u6211\u7684\u8868\u683C"},{url:"www.baidu.com",icon:'',name:"\u9000\u51FA\u767B\u9646"}],myFolderUrl:"www.baidu.com",config:{},fullscreenmode:!0,devicePixelRatio:window.devicePixelRatio,allowEdit:!0,loadUrl:"",loadSheetUrl:"",gridKey:"",updateUrl:"",updateImageUrl:"",allowUpdate:!1,functionButton:"",showConfigWindowResize:!0,enableAddRow:!0,enableAddBackTop:!0,autoFormatw:!1,accuracy:void 0,pageInfo:{queryExps:"",reportId:"",fields:"",mobile:"",frezon:"",currentPage:"",totalPage:10,pageUrl:""},editMode:!1,beforeCreateDom:null,fireMousedown:null,lang:"en",plugins:[],forceCalculation:!1,rowHeaderWidth:46,columnHeaderHeight:20,defaultColWidth:73,defaultRowHeight:19,defaultFontSize:10,limitSheetNameLength:!0,defaultSheetNameMaxLength:31,sheetFormulaBar:!0,showtoolbarConfig:{},showsheetbarConfig:{},showstatisticBarConfig:{},cellRightClickConfig:{},sheetRightClickConfig:{},imageUpdateMethodConfig:{}}});var gu,yu=$e(()=>{gu={functionlist:{SUMIF:{d:"Returns a conditional sum across a range.",a:"A conditional sum across a range.",p:[{name:"range",detail:"The range which is tested against `criterion`."},{name:"criterion",detail:"The pattern or test to apply to `range`."},{name:"sum_range",detail:"The range to be summed, if different from `range`."}]},TAN:{d:"Returns the tangent of an angle provided in radians.",a:"Tangent of an angle provided in radians.",p:[{name:"angle",detail:"The angle to find the tangent of, in radians."}]},TANH:{d:"Returns the hyperbolic tangent of any real number.",a:"Hyperbolic tangent of any real number.",p:[{name:"value",detail:"Any real value to calculate the hyperbolic tangent of."}]},CEILING:{d:"Rounds a number up to the nearest integer multiple of specified significance `factor`.",a:"Rounds number up to nearest multiple of a factor.",p:[{name:"value",detail:"The value to round up to the nearest integer multiple of `factor`."},{name:"factor",detail:"The number to whose multiples `value` will be rounded."}]},ATAN:{d:"Returns the inverse tangent of a value, in radians.",a:"Inverse tangent of a value, in radians.",p:[{name:"value",detail:"The value for which to calculate the inverse tangent."}]},ASINH:{d:"Returns the inverse hyperbolic sine of a number.",a:"Inverse hyperbolic sine of a number.",p:[{name:"value",detail:"The value for which to calculate the inverse hyperbolic sine."}]},ABS:{d:"Returns the absolute value of a number.",a:"Absolute value of a number.",p:[{name:"value",detail:"The number of which to return the absolute value."}]},ACOS:{d:"Returns the inverse cosine of a value, in radians.",a:"Inverse cosine of a value, in radians.",p:[{name:"value",detail:"The value for which to calculate the inverse cosine. Must be between `-1` and `1`, inclusive."}]},ACOSH:{d:"Returns the inverse hyperbolic cosine of a number.",a:"Inverse hyperbolic cosine of a number.",p:[{name:"value",detail:"The value for which to calculate the inverse hyperbolic cosine. Must be greater than or equal to `1`."}]},MULTINOMIAL:{d:"Returns the factorial of the sum of values divided by the product of the values' factorials.",a:"Multinomial distribution function.",p:[{name:"value1",detail:"The first value or range to consider."},{name:"value2",detail:"Additional values or ranges to consider."}]},ATANH:{d:"Returns the inverse hyperbolic tangent of a number.",a:"Inverse hyperbolic tangent of a number.",p:[{name:"value",detail:"The value for which to calculate the inverse hyperbolic tangent. Must be between -1 and 1, exclusive."}]},ATAN2:{d:"Returns the angle between the x-axis and a line segment from the origin (0,0) to specified coordinate pair (`x`,`y`), in radians.",a:"Arctangent of a value.",p:[{name:"x",detail:"The x coordinate of the endpoint of the line segment for which to calculate the angle from the x-axis."},{name:"y",detail:"The y coordinate of the endpoint of the line segment for which to calculate the angle from the x-axis."}]},COUNTBLANK:{d:"Returns the number of empty values in a list of values and ranges.",a:"Number of empty values.",p:[{name:"value1",detail:"The first value or range in which to count the number of blanks."}]},COSH:{d:"Returns the hyperbolic cosine of any real number.",a:"Hyperbolic cosine of any real number.",p:[{name:"value",detail:"Any real value to calculate the hyperbolic cosine of."}]},INT:{d:"Rounds a number down to the nearest integer that is less than or equal to it.",a:"Rounds number down to nearest integer.",p:[{name:"value",detail:"The value to round down to the nearest integer."}]},ISEVEN:{d:"Checks whether the provided value is even.",a:"Whether the provided value is even.",p:[{name:"value",detail:"The value to be verified as even."}]},ISODD:{d:"Checks whether the provided value is odd.",a:"Whether the provided value is odd.",p:[{name:"value",detail:"The value to be verified as odd."}]},LCM:{d:"Returns the least common multiple of one or more integers.",a:"Least common multiple of one or more integers.",p:[{name:"value1",detail:"The first value or range whose factors to consider in a calculation to find the least common multiple."},{name:"value2",detail:"Additional values or ranges whose factors to consider to find the least common multiple."}]},LN:{d:"Returns the logarithm of a number, base e (Euler's number).",a:"The logarithm of a number, base e (euler's number).",p:[{name:"value",detail:"The value for which to calculate the logarithm, base e."}]},LOG:{d:"Returns the logarithm of a number with respect to a base.",a:"The logarithm of a number with respect to a base.",p:[{name:"value",detail:"The value for which to calculate the logarithm."},{name:"base",detail:"The base to use for calculation of the logarithm."}]},LOG10:{d:"Returns the logarithm of a number, base 10.",a:"The logarithm of a number, base 10.",p:[{name:"value",detail:"The value for which to calculate the logarithm, base 10."}]},MOD:{d:"Returns the result of the modulo operator, the remainder after a division operation.",a:"Modulo (remainder) operator.",p:[{name:"dividend",detail:"The number to be divided to find the remainder."},{name:"divisor",detail:"The number to divide by."}]},MROUND:{d:"Rounds one number to the nearest integer multiple of another.",a:"Rounds a number to the nearest integer multiple.",p:[{name:"value",detail:"The number to round to the nearest integer multiple of another."},{name:"factor",detail:"The number to whose multiples `value` will be rounded."}]},ODD:{d:"Rounds a number up to the nearest odd integer.",a:"Rounds a number up to the nearest odd integer.",p:[{name:"value",detail:"The value to round to the next greatest odd number."}]},SUMSQ:{d:"Returns the sum of the squares of a series of numbers and/or cells.",a:"Sum of squares.",p:[{name:"value1",detail:"The first number or range whose squares to add together."},{name:"value2",detail:"Additional numbers or ranges whose squares to add to the square(s) of `value1`."}]},COMBIN:{d:"Returns the number of ways to choose some number of objects from a pool of a given size of objects.",a:"Number of combinations from a set of objects.",p:[{name:"n",detail:"The size of the pool of objects to choose from."},{name:"k",detail:"The number of objects to choose."}]},SUM:{d:"Returns the sum of a series of numbers and/or cells.",a:"Sum of a series of numbers and/or cells.",p:[{name:"value1",detail:"The first number or range to add together."},{name:"value2",detail:"Additional numbers or ranges to add to `value1`."}]},SUBTOTAL:{d:"Returns a subtotal for a vertical range of cells using a specified aggregation function.",a:"Subtotal for a range using a specific function.",p:[{name:"function_code",detail:"The function to use in subtotal aggregation."},{name:"range1",detail:"The first range over which to calculate a subtotal."},{name:"range2",detail:"Additional ranges over which to calculate subtotals."}]},ASIN:{d:"Returns the inverse sine of a value, in radians.",a:"Inverse sine of a value, in radians.",p:[{name:"value",detail:"The value for which to calculate the inverse sine. Must be between `-1` and `1`, inclusive."}]},COUNTIF:{d:"Returns a conditional count across a range.",a:"A conditional count across a range.",p:[{name:"range",detail:"The range that is tested against `criterion`."},{name:"criterion",detail:"The pattern or test to apply to `range`."}]},RADIANS:{d:"Converts an angle value in degrees to radians.",a:"Converts an angle value in degrees to radians.",p:[{name:"angle",detail:"The angle to convert from degrees to radians."}]},RAND:{d:"Returns a random number between 0 inclusive and 1 exclusive.",a:"A random number between 0 inclusive and 1 exclusive.",p:[]},COUNTUNIQUE:{d:"Counts the number of unique values in a list of specified values and ranges.",a:"Counts number of unique values in a range.",p:[{name:"value1",detail:"The first value or range to consider for uniqueness."},{name:"value2",detail:"Additional values or ranges to consider for uniqueness."}]},DEGREES:{d:"Converts an angle value in radians to degrees.",a:"Converts an angle value in radians to degrees.",p:[{name:"angle",detail:"The angle to convert from radians to degrees."}]},ERFC:{d:"Returns the complementary Gauss error function of a value.",a:"Complementary gauss error function of a value.",p:[{name:"z",detail:"The number for which to calculate the complementary Gauss error function."}]},EVEN:{d:"Rounds a number up to the nearest even integer.",a:"Rounds a number up to the nearest even integer.",p:[{name:"value",detail:"The value to round to the next greatest even number."}]},EXP:{d:"Returns Euler's number, e (~2.718) raised to a power.",a:"Euler's number, e (~2.718) raised to a power.",p:[{name:"exponent",detail:"The exponent to raise e to."}]},FACT:{d:"Returns the factorial of a number.",a:"Factorial of a number.",p:[{name:"value",detail:"The number or reference to a number whose factorial will be calculated and returned."}]},FACTDOUBLE:{d:'Returns the "double factorial" of a number.',a:'"double factorial" of a number.',p:[{name:"value",detail:"The number or reference to a number whose double factorial will be calculated and returned."}]},PI:{d:"Returns the value of Pi to 14 decimal places.",a:"The number pi.",p:[]},FLOOR:{d:"Rounds a number down to the nearest integer multiple of specified significance `factor`.",a:"Rounds number down to nearest multiple of a factor.",p:[{name:"value",detail:"The value to round down to the nearest integer multiple of `factor`."},{name:"factor",detail:"The number to whose multiples `value` will be rounded."}]},GCD:{d:"Returns the greatest common divisor of one or more integers.",a:"Greatest common divisor of one or more integers.",p:[{name:"value1",detail:"The first value or range whose factors to consider in a calculation to find the greatest common divisor."},{name:"value2",detail:"Additional values or ranges whose factors to consider to find the greatest common divisor."}]},RANDBETWEEN:{d:"Returns a uniformly random integer between two values, inclusive.",a:"Random integer between two values, inclusive.",p:[{name:"low",detail:"The low end of the random range."},{name:"high",detail:"The high end of the random range."}]},ROUND:{d:"Rounds a number to a certain number of decimal places according to standard rules.",a:"Rounds a number according to standard rules.",p:[{name:"value",detail:"The value to round to `places` number of places."},{name:"places",detail:"The number of decimal places to which to round."}]},ROUNDDOWN:{d:"Rounds a number to a certain number of decimal places, always rounding down to the next valid increment.",a:"Rounds down a number.",p:[{name:"value",detail:"The value to round to `places` number of places, always rounding down."},{name:"places",detail:"The number of decimal places to which to round."}]},ROUNDUP:{d:"Rounds a number to a certain number of decimal places, always rounding up to the next valid increment.",a:"Rounds up a number.",p:[{name:"value",detail:"The value to round to `places` number of places, always rounding up."},{name:"places",detail:"The number of decimal places to which to round."}]},SERIESSUM:{d:"Given parameters `x`, `n`, `m`, and `a`, returns the power series sum a",a:"Sum of a power series.",p:[{name:"x",detail:"The input to the power series. Varies depending on the type of approximation, may be angle, exponent, or some other value."},{name:"n",detail:"The initial power to which to raise `x` in the power series."},{name:"m",detail:"The additive increment by which to increase `x`."},{name:"a",detail:"The array or range containing the coefficients of the power series."}]},SIGN:{d:"Given an input number, returns `-1` if it is negative, `1` if positive, and `0` if it is zero.",a:"Sign of a provided number (+/-/0).",p:[{name:"value",detail:"The value whose sign will be evaluated."}]},SIN:{d:"Returns the sine of an angle provided in radians.",a:"Sine of an angle provided in radians.",p:[{name:"angle",detail:"The angle to find the sine of, in radians."}]},SINH:{d:"Returns the hyperbolic sine of any real number.",a:"Hyperbolic sine of any real number.",p:[{name:"value",detail:"Any real value to calculate the hyperbolic sine of."}]},SQRT:{d:"Returns the positive square root of a positive number.",a:"Positive square root of a positive number.",p:[{name:"value",detail:"The number for which to calculate the positive square root."}]},SQRTPI:{d:"Returns the positive square root of the product of Pi and the given positive number.",a:"Square root of the product of pi and number.",p:[{name:"value",detail:"The number which will be multiplied by Pi and have the product's square root returned"}]},GAMMALN:{d:"Returns the logarithm of a specified Gamma function, base e (Euler's number).",a:"Logarithm of gamma function.",p:[{name:"value",detail:"The input to the Gamma function. The natural logarithm of Gamma(`value`) will be returned."}]},COS:{d:"Returns the cosine of an angle provided in radians.",a:"Cosine of an angle provided in radians.",p:[{name:"angle",detail:"The angle to find the cosine of, in radians."}]},TRUNC:{d:"Truncates a number to a certain number of significant digits by omitting less significant digits.",a:"Truncates a number.",p:[{name:"value",detail:"The value to be truncated."},{name:"places",detail:"The number of significant digits to the right of the decimal point to retain."}]},QUOTIENT:{d:"Returns one number divided by another.",a:"One number divided by another.",p:[{name:"dividend",detail:"The number to be divided."},{name:"divisor",detail:"The number to divide by."}]},POWER:{d:"Returns a number raised to a power.",a:"A number raised to a power.",p:[{name:"base",detail:"The number to raise to the `exponent` power."},{name:"exponent",detail:"The exponent to raise `base` to."}]},SUMIFS:{d:"Returns the sum of a range depending on multiple criteria.",a:"Sums a range depending on multiple criteria.",p:[{name:"sum_range",detail:"The range to sum."},{name:"criteria_range1",detail:"The range to check against criterion1."},{name:"criterion1",detail:"The pattern or test to apply to criteria_range1."},{name:"criteria_range2",detail:"Additional ranges to check."}]},GET_TARGET:{d:"Query target data.",a:"Query target data.",p:[]},GET_AIRTABLE_DATA:{d:"Query AirTable data.",a:"Query AirTable data.",p:[{name:"AirTable url",detail:"AirTable url address."},{name:"sort_column",detail:"The index of the column in current AirTable view containing the values by which to sort."},{name:"is_ascending",detail:"[Optional] - 1 or 0 indicating whether to sort `sort_column` in ascending order. 0 sorts in descending order.1 sorts in ascending order."}]},ASK_AI:{d:"Ask the AI questions.",a:"Ask the AI questions.",p:[{name:"question",detail:"Consult AI for the data you want."},{name:"criteria_range",detail:"In which range to process the data."}]},COUNTIFS:{d:"Returns the count of a range depending on multiple criteria.",a:"Count values depending on multiple criteria.",p:[{name:"criteria_range1",detail:"The range to check against `criterion1`."},{name:"criterion1",detail:"The pattern or test to apply to `criteria_range1`."},{name:"criteria_range2",detail:"Additional ranges to check."}]},PRODUCT:{d:"Returns the result of multiplying a series of numbers together.",a:"Result of multiplying a series of numbers together.",p:[{name:"factor1",detail:"The first number or range to calculate for the product."},{name:"factor2",detail:"More numbers or ranges to calculate for the product."}]},HARMEAN:{d:"Calculates the harmonic mean of a dataset.",a:"The harmonic mean of a dataset.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},HYPGEOMDIST:{d:"Calculates the probability of drawing a certain number of successes in a certain number of tries given a population of a certain size containing a certain number of successes, without replacement of draws.",a:"Hypergeometric distribution probability.",p:[{name:"num_successes",detail:"The desired number of successes."},{name:"num_draws",detail:"The number of permitted draws."},{name:"successes_in_pop",detail:"The total number of successes in the population."},{name:"pop_size",detail:"The total size of the population"},{name:"cumulative",detail:`Determine the logical value of the function form. + +If cumulative is TRUE(), HYPGEOM.DIST returns the cumulative distribution function; + +if FALSE(), it returns the probability density function.`}]},INTERCEPT:{d:"Calculates the y-value at which the line resulting from linear regression of a dataset will intersect the y-axis (x=0).",a:"Y-intercept of line derived via linear regression.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},KURT:{d:'Calculates the kurtosis of a dataset, which describes the shape, and in particular the "peakedness" of that dataset.',a:"Kurtosis of a dataset.",p:[{name:"value1",detail:"The first value or range of the dataset."},{name:"value2",detail:"Additional values or ranges to include in the dataset."}]},LARGE:{d:"Returns the nth largest element from a data set, where n is user-defined.",a:"Nth largest element from a data set.",p:[{name:"data",detail:"Array or range containing the dataset to consider."},{name:"n",detail:"The rank from largest to smallest of the element to return."}]},STDEVA:{d:"Calculates the standard deviation based on a sample, setting text to the value `0`.",a:"Standard deviation of sample (text as 0).",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},STDEVP:{d:"Calculates the standard deviation based on an entire population.",a:"Standard deviation of an entire population.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},GEOMEAN:{d:"Calculates the geometric mean of a dataset.",a:"The geometric mean of a dataset.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},RANK_EQ:{d:"Returns the rank of a specified value in a dataset. If there is more than one entry of the same value in the dataset, the top rank of the entries will be returned.",a:"Top rank of a specified value in a dataset.",p:[{name:"value",detail:"The value whose rank will be determined."},{name:"data",detail:"The array or range containing the dataset to consider."},{name:"is_ascending",detail:"Whether to consider the values in `data` in descending or ascending order. If omitted, the default is descending (FALSE)."}]},RANK_AVG:{d:"Returns the rank of a specified value in a dataset. If there is more than one entry of the same value in the dataset, the average rank of the entries will be returned.",a:"Average rank of a specified value in a dataset.",p:[{name:"value",detail:"The value whose rank will be determined."},{name:"data",detail:"The array or range containing the dataset to consider."},{name:"is_ascending",detail:"Whether to consider the values in `data` in descending or ascending order. If omitted, the default is descending (FALSE)."}]},PERCENTRANK_EXC:{d:"Returns the percentage rank (percentile) from 0 to 1 exclusive of a specified value in a dataset.",a:"Percentage rank (percentile) from 0 to 1 exclusive.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"value",detail:"The value whose percentage rank will be determined."},{name:"significant_digits",detail:"The number of significant figures to use in the calculation. Default is 3."}]},PERCENTRANK_INC:{d:"Returns the percentage rank (percentile) from 0 to 1 inclusive of a specified value in a dataset.",a:"Percentage rank (percentile) from 0 to 1 inclusive.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"value",detail:"The value whose percentage rank will be determined."},{name:"significant_digits",detail:"The number of significant figures to use in the calculation. Default is 3."}]},FORECAST:{d:"Calculates the expected y-value for a specified x based on a linear regression of a dataset.",a:"Expected y-value based of linear regression.",p:[{name:"x",detail:"The value on the x-axis to forecast."},{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},FISHERINV:{d:"Returns the inverse Fisher transformation of a specified value.",a:"Inverse fisher transformation of a specified value.",p:[{name:"value",detail:"The value for which to calculate the inverse Fisher transformation."}]},FISHER:{d:"Returns the Fisher transformation of a specified value.",a:"Fisher transformation of a specified value.",p:[{name:"value",detail:"The value for which to calculate the Fisher transformation."}]},MODE_SNGL:{d:"Returns the most commonly occurring value in a dataset.",a:"Most commonly occurring value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating mode."},{name:"value2",detail:"Additional values or ranges to consider when calculating mode."}]},WEIBULL_DIST:{d:"Returns the value of the Weibull distribution function (or Weibull cumulative distribution function) for a specified shape and scale.",a:"Weibull distribution function.",p:[{name:"x",detail:"The input to the Weibull distribution function."},{name:"shape",detail:"The shape parameter of the Weibull distribution function."},{name:"scale",detail:"The scale parameter of the Weibull distribution function."},{name:"cumulative",detail:"Whether to use the cumulative distribution function."}]},COUNT:{d:"Returns the number of numeric values in a dataset.",a:"The number of numeric values in dataset.",p:[{name:"value1",detail:"The first value or range to consider when counting."},{name:"value2",detail:"Additional values or ranges to consider when counting."}]},COUNTA:{d:"Returns the number of values in a dataset.",a:"The number of values in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when counting."},{name:"value2",detail:"Additional values or ranges to consider when counting."}]},AVEDEV:{d:"Calculates the average of the magnitudes of deviations of data from a dataset's mean.",a:"Average magnitude of deviations from mean.",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},AVERAGE:{d:"Returns the numerical average value in a dataset, ignoring text.",a:"Numerical average value in a dataset, ignoring text.",p:[{name:"value1",detail:"The first value or range to consider when calculating the average value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the average value."}]},AVERAGEA:{d:"Returns the numerical average value in a dataset.",a:"Numerical average value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the average value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the average value."}]},BINOM_DIST:{d:"Calculates the probability of drawing a certain number of successes (or a maximum number of successes) in a certain number of tries given a population of a certain size containing a certain number of successes, with replacement of draws.",a:"Binomial distribution probability.",p:[{name:"num_successes",detail:"The number of successes for which to calculate the probability in `num_trials` trials."},{name:"num_trials",detail:"The number of independent trials."},{name:"prob_success",detail:"The probability of success in any given trial."},{name:"cumulative",detail:"Whether to use the binomial cumulative distribution."}]},BINOM_INV:{d:"Calculates the smallest value for which the cumulative binomial distribution is greater than or equal to a specified criteria.",a:"Inverse cumulative binomial distribution function.",p:[{name:"num_trials",detail:"The number of independent trials."},{name:"prob_success",detail:"The probability of success in any given trial."},{name:"target_prob",detail:"The desired threshold probability."}]},CONFIDENCE_NORM:{d:"Calculates the width of half the confidence interval for a normal distribution.",a:"Confidence interval for a normal distribution.",p:[{name:"alpha",detail:"One minus the desired confidence level. E.g. `0.1` for `0.9`, or 90%, confidence."},{name:"standard_deviation",detail:"The standard deviation of the population."},{name:"pop_size",detail:"The size of the population."}]},CORREL:{d:"Calculates r, the Pearson product-moment correlation coefficient of a dataset.",a:"Pearson Product-Moment Correlation Coefficient.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},COVARIANCE_P:{d:"Calculates the covariance of a dataset.",a:"The covariance of a dataset.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},COVARIANCE_S:{d:"Calculates the sample covariance of a dataset.",a:"The sample covariance of a dataset.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},DEVSQ:{d:"Calculates the sum of squares of deviations based on a sample.",a:"The sum of squares of deviations based on a sample.",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},EXPON_DIST:{d:"Returns the value of the exponential distribution function with a specified lambda at a specified value.",a:"Exponential distribution function.",p:[{name:"x",detail:"The input to the exponential distribution function."},{name:"lambda",detail:"The lambda to specify the exponential distribution function."},{name:"cumulative",detail:"Whether to use the exponential cumulative distribution."}]},AVERAGEIF:{d:"Returns the average of a range depending on criteria.",a:"Average of values depending on criteria.",p:[{name:"criteria_range",detail:"The range to check against `criterion`."},{name:"criterion",detail:"The pattern or test to apply to `criteria_range`."},{name:"average_range",detail:"The range to average. If not included, `criteria_range` is used for the average instead."}]},AVERAGEIFS:{d:"Returns the average of a range depending on multiple criteria.",a:"Average of values depending on multiple criteria.",p:[{name:"average_range",detail:"The range to average."},{name:"criteria_range1",detail:"The range to check against `criterion1`."},{name:"criterion1",detail:"The pattern or test to apply to `criteria_range1`."},{name:"criteria_range2",detail:"Additional ranges to check."}]},PERMUT:{d:"Returns the number of ways to choose some number of objects from a pool of a given size of objects, considering order.",a:"Number of permutations from a number of objects.",p:[{name:"n",detail:"The size of the pool of objects to choose from."},{name:"k",detail:"The number of objects to choose."}]},TRIMMEAN:{d:"Calculates the mean of a dataset excluding some proportion of data from the high and low ends of the dataset.",a:"Mean of a dataset excluding high/low ends.",p:[{name:"data",detail:"Array or range containing the dataset to consider."},{name:"exclude_proportion",detail:"The proportion of the dataset to exclude, from the extremities of the set."}]},PERCENTILE_EXC:{d:"Returns the value at a given percentile of a dataset exclusive of 0 and 1.",a:"Value at a given percentile of a dataset exclusive of 0 and 1.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"percentile",detail:"The percentile, exclusive of 0 and 1, whose value within 'data' will be calculated and returned."}]},PERCENTILE_INC:{d:"Returns the value at a given percentile of a dataset.",a:"Value at a given percentile of a dataset.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"percentile",detail:"The percentile whose value within `data` will be calculated and returned.`"}]},PEARSON:{d:"Calculates r, the Pearson product-moment correlation coefficient of a dataset.",a:"Pearson Product-Moment Correlation Coefficient.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},NORM_S_INV:{d:"Returns the value of the inverse standard normal distribution function for a specified value.",a:"Inverse standard normal distribution function.",p:[{name:"x",detail:"The input to the inverse standard normal distribution function."}]},NORM_S_DIST:{d:"Returns the value of the standard normal cumulative distribution function for a specified value.",a:"Standard normal cumulative distribution function.",p:[{name:"x",detail:"The input to the standard normal cumulative distribution function."},{name:"cumulative",detail:`Determine the logical value of the function form. + +If TRUE(), it returns the cumulative distribution function; + +If it is FALSE(), it returns the probability density function.`}]},NORM_INV:{d:"Returns the value of the inverse normal distribution function for a specified value, mean, and standard deviation.",a:"Inverse normal distribution function.",p:[{name:"x",detail:"The input to the inverse normal distribution function."},{name:"mean",detail:"The mean (mu) of the normal distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the normal distribution function."}]},NORM_DIST:{d:"Returns the value of the normal distribution function (or normal cumulative distribution function) for a specified value, mean, and standard deviation.",a:"Normal distribution function.",p:[{name:"x",detail:"The input to the normal distribution function."},{name:"mean",detail:"The mean (mu) of the normal distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the normal distribution function."},{name:"cumulative",detail:"Whether to use the normal cumulative distribution function rather than the distribution function."}]},NEGBINOM_DIST:{d:"Calculates the probability of drawing a certain number of failures before a certain number of successes given a probability of success in independent trials.",a:"Negative binomial distribution probability.",p:[{name:"num_failures",detail:"The number of failures to model."},{name:"num_successes",detail:"The number of successes to model."},{name:"prob_success",detail:"The probability of success in any given trial."},{name:"cumulative",detail:`Determine the logical value of the function form. + +If TRUE(), it returns the cumulative distribution function; + +If it is FALSE(), it returns the probability density function.`}]},MINA:{d:"Returns the minimum numeric value in a dataset.",a:"Minimum numeric value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the minimum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the minimum value."}]},MIN:{d:"Returns the minimum value in a numeric dataset.",a:"Minimum value in a numeric dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the minimum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the minimum value."}]},MEDIAN:{d:"Returns the median value in a numeric dataset.",a:"Median value in a numeric dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the median value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the median value."}]},MAXA:{d:"Returns the maximum numeric value in a dataset.",a:"Maximum numeric value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the maximum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the maximum value."}]},MAX:{d:"Returns the maximum value in a numeric dataset.",a:"Maximum value in a numeric dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the maximum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the maximum value."}]},LOGNORM_INV:{d:"Returns the value of the inverse log-normal cumulative distribution with given mean and standard deviation at a specified value.",a:"Inverse log-normal cumulative distribution function.",p:[{name:"x",detail:"The input to the inverse log-normal cumulative distribution function."},{name:"mean",detail:"The mean (mu) of the inverse log-normal cumulative distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the inverse log-normal cumulative distribution function."}]},LOGNORM_DIST:{d:"Returns the value of the log-normal cumulative distribution with given mean and standard deviation at a specified value.",a:"Log-normal cumulative distribution probability.",p:[{name:"x",detail:"The input to the log-normal cumulative distribution function."},{name:"mean",detail:"The mean (mu) of the log-normal cumulative distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the log-normal cumulative distribution function."},{name:"cumulative",detail:`Determine the logical value of the function form. + +If TRUE(), it returns the cumulative distribution function; + +If it is FALSE(), it returns the probability density function.`}]},Z_TEST:{d:"Returns the one-tailed p-value of a Z-test with standard distribution.",a:"One-tailed p-value of a z-test.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"value",detail:"The test statistic to use in the Z-test."},{name:"standard_deviation",detail:"The standard deviation to assume for the Z-test. If this is not provided, the standard deviation of the data will be used."}]},PROB:{d:"Given a set of values and corresponding probabilities, calculates the probability that a value chosen at random falls between two limits.",a:"Probability values lie in a range.",p:[{name:"data",detail:"Array or range containing the dataset to consider."},{name:"probabilities",detail:"Array or range containing probabilities corresponding to `data`."},{name:"low_limit",detail:"The lower bound on the value range for which to calculate the probability."},{name:"high_limit",detail:"The upper bound on the value range for which to calculate the probability."}]},QUARTILE_EXC:{d:"Returns a value nearest to a specified quartile of a dataset exclusive of 0 and 4.",a:"Value nearest to a specific quartile of a dataset exclusive of 0 and 4.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"quartile_number",detail:"Which quartile to return."}]},QUARTILE_INC:{d:"Returns a value nearest to a specified quartile of a dataset.",a:"Value nearest to a specific quartile of a dataset.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"quartile_number",detail:"Which quartile value to return."}]},POISSON_DIST:{d:"Returns the value of the Poisson distribution function (or Poisson cumulative distribution function) for a specified value and mean.",a:"Poisson distribution function.",p:[{name:"x",detail:"The input to the Poisson distribution function."},{name:"mean",detail:"The mean (mu) of the Poisson distribution function."},{name:"cumulative",detail:"Whether to use the Poisson cumulative distribution function rather than the distribution function."}]},RSQ:{d:"Calculates the square of r, the Pearson product-moment correlation coefficient of a dataset.",a:"Square of the correlation coefficient.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},T_DIST:{d:"Calculates the left tail probability for a Student's t-distribution with a given input (x).",a:"The left-tailed Student's t-distribution",p:[{name:"x",detail:"The input to the t-distribution function."},{name:"degrees_freedom",detail:"The number of degrees of freedom."},{name:"cumulative",detail:"If cumulative is TRUE, T.DIST returns the cumulative distribution function; if FALSE, it returns the probability density function."}]},T_DIST_2T:{d:"Calculates the probability for two tailed Student's t-distribution with a given input (x).",a:"The two tailed Student's t-distribution",p:[{name:"x",detail:"The input to the t-distribution function."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_DIST_RT:{d:"Calculates the right tail probability for a Student's t-distribution with a given input (x).",a:"The right-tailed Student's t-distribution",p:[{name:"x",detail:"The input to the t-distribution function."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_INV:{d:"Calculates the negative inverse of the one-tailed TDIST function.",a:"T.INV",p:[{name:"probability",detail:"The probability associated with the two-tailed t-distribution."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_INV_2T:{d:"Calculates the inverse of the two-tailed TDIST function.",a:"T.INV.2T",p:[{name:"probability",detail:"The probability associated with the two-tailed t-distribution."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_TEST:{d:"t-test. Returns the probability associated with Student's t-test. Determines whether two samples are likely to have come from the same two underlying populations that have the same mean.",a:"Returns the probability associated with t-test.",p:[{name:"range1",detail:"The first sample of data or group of cells to consider for the t-test."},{name:"range2",detail:"The second sample of data or group of cells to consider for the t-test."},{name:"tails",detail:"Specifies the number of distribution tails."},{name:"type",detail:"Specifies the type of t-test."}]},F_DIST:{d:"Calculates the left-tailed F probability distribution (degree of diversity) for two data sets with given input x. Alternately called Fisher-Snedecor distribution or Snedecor's F distribution.",a:"F probability distribution (left-tailed).",p:[{name:"x",detail:"The input to the F probability distribution function. The value at which to evaluate the function."},{name:"degrees_freedom1",detail:"The numerator of the number of degrees of freedom."},{name:"degrees_freedom2",detail:"The denominator of the number of degrees of freedom."},{name:"cumulative",detail:"Logical value that determines the form of the function."}]},F_DIST_RT:{d:"Calculates the right-tailed F probability distribution (degree of diversity) for two data sets with given input x. Alternately called Fisher-Snedecor distribution or Snedecor's F distribution.",a:"F probability distribution.",p:[{name:"x",detail:"The input to the F probability distribution function. The value at which to evaluate the function."},{name:"degrees_freedom1",detail:"The numerator of the number of degrees of freedom."},{name:"degrees_freedom2",detail:"The denominator of the number of degrees of freedom."}]},VAR_P:{d:"Calculates the variance based on an entire population.",a:"Variance of entire population.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},VAR_S:{d:"Calculates the variance based on a sample.",a:"Variance.",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},VARA:{d:"Calculates the variance based on a sample, setting text to the value `0`.",a:"Variance of sample (text as 0).",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},VARPA:{d:"Calculates the variance based on an entire population, setting text to the value `0`.",a:"Variance of entire population (text as 0).",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},STEYX:{d:"Calculates the standard error of the predicted y-value for each x in the regression of a dataset.",a:"Standard error of predicted y-values in regression.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},STANDARDIZE:{d:"Calculates the normalized equivalent of a random variable given mean and standard deviation of the distribution.",a:"Normalized equivalent of a random variable.",p:[{name:"value",detail:"The value of the random variable to normalize."},{name:"mean",detail:"The mean of the distribution."},{name:"standard_deviation",detail:"The standard deviation of the distribution."}]},SMALL:{d:"Returns the nth smallest element from a data set, where n is user-defined.",a:"Nth smallest element in a data set.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"n",detail:"The rank from smallest to largest of the element to return."}]},SLOPE:{d:"Calculates the slope of the line resulting from linear regression of a dataset.",a:"Slope of line from linear regression of data.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},SKEW:{d:"Calculates the skewness of a dataset, which describes the symmetry of that dataset about the mean.",a:"Skewness of a dataset.",p:[{name:"value1",detail:"The first value or range of the dataset."},{name:"value2",detail:"Additional values or ranges to include in the dataset."}]},SKEW_P:{d:"Calculates the skewness of a dataset, which describes the symmetry of that dataset about the mean. This assumes the dataset is for the population.",a:"Skewness of a population's dataset.",p:[{name:"value1",detail:"The first value or range of the dataset."},{name:"value2",detail:"Additional values or ranges to include in the dataset."}]},VLOOKUP:{d:"Vertical lookup. Searches down the first column of a range for a key and returns the value of a specified cell in the row found.",a:"Vertical lookup.",p:[{name:"search_key",detail:'The value to search for. For example, `42`, `"Cats"`, or `I24`.'},{name:"range",detail:"The range to consider for the search. The first column in the range is searched for the key specified in `search_key`."},{name:"index",detail:"The column index of the value to be returned, where the first column in `range` is numbered 1."},{name:"is_sorted",detail:"Indicates whether the column to be searched (the first column of the specified range) is sorted, in which case the closest match for `search_key` will be returned."}]},HLOOKUP:{d:"Horizontal lookup. Searches across the first row of a range for a key and returns the value of a specified cell in the column found.",a:"Horizontal lookup",p:[{name:"search_key",detail:'The value to search for. For example, `42`, `"Cats"`, or `I24`.'},{name:"range",detail:"The range to consider for the search. The first row in the range is searched for the key specified in `search_key`."},{name:"index",detail:"The row index of the value to be returned, where the first row in `range` is numbered 1."},{name:"is_sorted",detail:"Indicates whether the row to be searched (the first row of the specified range) is sorted."}]},LOOKUP:{d:"Looks through a sorted row or column for a key and returns the value of the cell in a result range located in the same position as the search row or column.",a:"Look up a value.",p:[{name:"search_key",detail:'The value to search for in the row or column. For example, `42`, `"Cats"`, or `I24`.'},{name:"search_range|search_result_array",detail:"One method of using this function is to provide a single sorted row or column `search_range` to look through for the `search_key` with a second argument `result_range`. The other way is to combine these two arguments into one `search_result_array` where the first row or column is searched and a value is returned from the last row or column in the array. If `search_key` is not found, a non-exact match may be returned."},{name:"result_range",detail:"The range from which to return a result. The value returned corresponds to the location where `search_key` is found in `search_range`. This range must be only a single row or column and should not be used if using the `search_result_array` method."}]},ADDRESS:{d:"Returns a cell reference as a string.",a:"Cell reference as a string.",p:[{name:"row",detail:"The row number of the cell reference"},{name:"column",detail:"The column number (not name) of the cell reference. `A` is column number `1`."},{name:"absolute_relative_mode",detail:"An indicator of whether the reference is row/column absolute. `1` is row and column absolute (e.g. $A$1), `2` is row absolute and column relative (e.g. A$1), `3` is row relative and column absolute (e.g. $A1), and `4` is row and column relative (e.g. A1)."},{name:"use_a1_notation",detail:"A boolean indicating whether to use `A1` style notation (TRUE) or `R1C1` style notation (FALSE)."},{name:"sheet",detail:"Text indicating the name of the sheet into which the address points."}]},INDIRECT:{d:"Returns a cell reference specified by a string.",a:"A cell reference specified by a string.",p:[{name:"cell_reference_as_string",detail:"A cell reference, written as a string with surrounding quotation marks."},{name:"is_A1_notation",detail:"Indicates if the cell reference is in A1 notation (TRUE) or R1C1 notation (FALSE)."}]},ROW:{d:"Returns the row number of a specified cell.",a:"Row number of a specified cell.",p:[{name:"cell_reference",detail:"The cell whose row number will be returned."}]},ROWS:{d:"Returns the number of rows in a specified array or range.",a:"Number of rows in a specified array or range.",p:[{name:"range",detail:"The range whose row count will be returned."}]},COLUMN:{d:"Returns the column number of a specified cell, with `A=1`.",a:"Column number of a specified cell.",p:[{name:"cell_reference",detail:"The cell whose column number will be returned. Column `A` corresponds to `1`."}]},COLUMNS:{d:"Returns the number of columns in a specified array or range.",a:"Number of columns in a specified array or range.",p:[{name:"range",detail:"The range whose column count will be returned."}]},OFFSET:{d:"Returns a range reference shifted a specified number of rows and columns from a starting cell reference.",a:"A range reference offset relative to a cell.",p:[{name:"cell_reference",detail:"The starting point from which to count the offset rows and columns."},{name:"offset_rows",detail:"The number of rows to offset by."},{name:"offset_columns",detail:"The number of columns to offset by."},{name:"height",detail:"The height of the range to return starting at the offset target."},{name:"width",detail:"The width of the range to return starting at the offset target."}]},MATCH:{d:"Returns the relative position of an item in a range that matches a specified value.",a:"Position of item in range that matches value.",p:[{name:"search_key",detail:'The value to search for. For example, `42`, `"Cats"`, or `I24`.'},{name:"range",detail:"The one-dimensional array to be searched."},{name:"search_type",detail:"The search method. `1` (default) finds the largest value less than or equal to `search_key` when `range` is sorted in ascending order. `0` finds the exact value when `range` is unsorted. `-1` finds the smallest value greater than or equal to `search_key` when `range` is sorted in descending order."}]},INDEX:{d:"Returns the content of a cell, specified by row and column offset.",a:"Content of cell specified by row and column offset.",p:[{name:"reference",detail:"The array of cells to be offset into."},{name:"row",detail:"The number of offset rows."},{name:"column",detail:"The number of offset columns."}]},GETPIVOTDATA:{d:"Extracts an aggregated value from a pivot table that corresponds to the specified row and column headings.",a:"Extracts an aggregated value from a pivot table that corresponds to the specified row and column headings.",p:[{name:"value_name",detail:"The name of the value in the pivot table for which you want to get data."},{name:"any_pivot_table_cell",detail:"Any reference to a cell in the desired pivot table (top corner recommended)."},{name:"original_column",detail:"The name of the column in the original data set (not the pivot table)."},{name:"pivot_item",detail:"The name of the row or column shown in the pivot table corresponding to *original_column* that you want to retrieve."}]},CHOOSE:{d:"Returns an element from a list of choices based on index.",a:"An element from a list of choices based on index.",p:[{name:"index",detail:"Which choice (of the up to 30 provided) to return."},{name:"choice1",detail:"A potential value to return. Required. May be a reference to a cell or an individual value."},{name:"choice2",detail:"Additional values among which to choose."}]},HYPERLINK:{d:"Creates a hyperlink inside a cell.",a:"Creates a hyperlink inside a cell.",p:[{name:"url",detail:"The full URL of the link location enclosed in quotation marks, or a reference to a cell containing such a URL."},{name:"link_label",detail:"The text to display in the cell as the link, enclosed in quotation marks, or a reference to a cell containing such a label."}]},TIME:{d:"Converts a provided hour, minute, and second into a time.",a:"Converts hour/minute/second into a time.",p:[{name:"hour",detail:"The hour component of the time."},{name:"minute",detail:"The minute component of the time."},{name:"second",detail:"The second component of the time."}]},TIMEVALUE:{d:"Returns the fraction of a 24-hour day the time represents.",a:"Converts a time string into its serial number representation.",p:[{name:"time_string",detail:"The string that holds the time representation."}]},EOMONTH:{d:"Returns a date on the last day of a month that falls a specified number of months before or after another date.",a:"Last day of a month before or after a date.",p:[{name:"start_date",detail:"The date from which to calculate the result."},{name:"months",detail:"The number of months before (negative) or after (positive) 'start_date' to consider."}]},EDATE:{d:"Returns a date a specified number of months before or after another date.",a:"Date a number of months before/after another date.",p:[{name:"start_date",detail:"The date from which to calculate the result."},{name:"months",detail:"The number of months before (negative) or after (positive) 'start_date' to calculate."}]},SECOND:{d:"Returns the second component of a specific time, in numeric format.",a:"Second component of a specific time.",p:[{name:"time",detail:"The time from which to calculate the second component"}]},MINUTE:{d:"Returns the minute component of a specific time, in numeric format.",a:"Minute component of a specific time.",p:[{name:"time",detail:"The time from which to calculate the minute component."}]},HOUR:{d:"Returns the hour component of a specific time, in numeric format.",a:"Hour component of a specific time.",p:[{name:"time",detail:"The time from which to calculate the hour component."}]},NOW:{d:"Returns the current date and time as a date value.",a:"Current date and time as a date value.",p:[]},NETWORKDAYS:{d:"Returns the number of net working days between two provided days.",a:"Net working days between two provided days.",p:[{name:"start_date",detail:"The start date of the period from which to calculate the number of net working days."},{name:"end_date",detail:"The end date of the period from which to calculate the number of net working days."},{name:"holidays",detail:"A range or array constant containing the date serial numbers to consider holidays."}]},NETWORKDAYS_INTL:{d:"Returns the number of net working days between two provided days excluding specified weekend days and holidays.",a:"Net working days between two dates (specifying weekends).",p:[{name:"start_date",detail:"The start date of the period from which to calculate the number of net working days."},{name:"end_date",detail:"The end date of the period from which to calculate the number of net working days."},{name:"weekend",detail:"A number or string representing which days of the week are considered weekends."},{name:"holidays",detail:"A range or array constant containing the dates to consider as holidays."}]},ISOWEEKNUM:{d:"Returns a number representing the ISO week of the year where the provided date falls.",a:"ISO week number of the year.",p:[{name:"date",detail:"The date for which to determine the ISO week number. Must be a reference to a cell containing a date, a function returning a date type, or a number."}]},WEEKNUM:{d:"Returns a number representing the week of the year where the provided date falls.",a:"Week number of the year.",p:[{name:"date",detail:"The date for which to determine the week number. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"type",detail:"A number representing the day that a week starts on. Sunday = 1."}]},WEEKDAY:{d:"Returns a number representing the day of the week of the date provided.",a:"Day of the week of the date provided (as number).",p:[{name:"date",detail:"The date for which to determine the day of the week. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"type",detail:"A number indicating which numbering system to use to represent weekdays. By default, counts starting with Sunday = 1."}]},DAY:{d:"Returns the day of the month that a specific date falls on, in numeric format.",a:"Day of the month that a specific date falls on.",p:[{name:"date",detail:"The date from which to extract the day."}]},DAYS:{d:"Returns the number of days between two dates.",a:"Number of days between two dates.",p:[{name:"end_date",detail:"The end of the date range."},{name:"start_date",detail:"The start of the date range."}]},DAYS360:{d:"Returns the difference between two days based on the 360 day year used in some financial interest calculations.",a:"Days between two dates on a 360-day year.",p:[{name:"start_date",detail:"The start date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"end_date",detail:"The end date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"method",detail:"An indicator of what day count method to use."}]},DATE:{d:"Converts a provided year, month, and day into a date.",a:"Converts year/month/day into a date.",p:[{name:"year",detail:"The year component of the date."},{name:"month",detail:"The month component of the date."},{name:"day",detail:"The day component of the date."}]},DATEVALUE:{d:"Converts a provided date string in a known format to a date value.",a:"Converts a date string to a date value.",p:[{name:"date_string",detail:"The string representing the date."}]},DATEDIF:{d:"Calculates the number of days, months, or years between two dates.",a:"Date Difference.",p:[{name:"start_date",detail:"The start date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"end_date",detail:"The end date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"unit",detail:'A string abbreviation for unit of time. For example, "M" for month. Accepted values are "Y","M","D","MD","YM","YD".'}]},WORKDAY:{d:"Calculates the date after a number of working days from a specified start date.",a:"Number of working days from start date.",p:[{name:"start_date",detail:"The date from which to begin counting."},{name:"num_days",detail:"The number of working days to advance from `start_date`. If negative, counts backwards."},{name:"holidays",detail:"A range or array constant containing the dates to consider holidays."}]},WORKDAY_INTL:{d:"Calculates the date after a specified number of workdays excluding specified weekend days and holidays.",a:"Date after a number of workdays (specifying weekends).",p:[{name:"start_date",detail:"The date from which to begin counting."},{name:"num_days",detail:"The number of working days to advance from `start_date`. If negative, counts backwards."},{name:"weekend",detail:"A number or string representing which days of the week are considered weekends."},{name:"holidays",detail:"A range or array constant containing the dates to consider holidays."}]},YEAR:{d:"Returns the year specified by a given date.",a:"Year specified by a given date.",p:[{name:"date",detail:"The date from which to extract the year."}]},YEARFRAC:{d:"Returns the number of years, including fractional years, between two dates using a specified day count convention.",a:"Exact number of years between two dates.",p:[{name:"start_date",detail:"The start date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"end_date",detail:"The end date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},TODAY:{d:"Returns the current date as a date value.",a:"Current date as a date value.",p:[]},MONTH:{d:"Returns the month of the year a specific date falls in, in numeric format.",a:"Month of the year a specific date falls in.",p:[{name:"date",detail:"The date from which to extract the month."}]},EFFECT:{d:"Calculates the annual effective interest rate given the nominal rate and number of compounding periods per year.",a:"Annual effective interest rate.",p:[{name:"nominal_rate",detail:"The nominal interest rate per year."},{name:"periods_per_year",detail:"The number of compounding periods per year."}]},DOLLAR:{d:"Formats a number into the currency specific to your spreadsheet locale.",a:"Formats a number as currency specific to your spreadsheet locale.",p:[{name:"number",detail:"The value to be formatted."},{name:"number_of_places",detail:"The number of decimal places to display."}]},DOLLARDE:{d:"Converts a price quotation given as a decimal fraction into a decimal value.",a:"Converts a decimal fraction to decimal value.",p:[{name:"fractional_price",detail:"The price quotation given using fractional decimal conventions."},{name:"unit",detail:"The units of the fraction, e.g. `8` for 1/8ths or `32` for 1/32nds."}]},DOLLARFR:{d:"Converts a price quotation given as a decimal value into a decimal fraction.",a:"Converts a decimal value to decimal fraction.",p:[{name:"decimal_price",detail:"The price quotation given as a decimal value."},{name:"unit",detail:"The units of the desired fraction, e.g. `8` for 1/8ths or `32` for 1/32nds."}]},DB:{d:"Calculates the depreciation of an asset for a specified period using the arithmetic declining balance method.",a:"Depreciation via declining balance method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."},{name:"period",detail:"The single period within `life` for which to calculate depreciation."},{name:"month",detail:"The number of months in the first year of depreciation."}]},DDB:{d:"Calculates the depreciation of an asset for a specified period using the double-declining balance method.",a:"Depreciation via double-declining balance method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."},{name:"period",detail:"The single period within `life` for which to calculate depreciation."},{name:"factor",detail:"The factor by which depreciation decreases."}]},RATE:{d:"Calculates the interest rate of an annuity investment based on constant-amount periodic payments and the assumption of a constant interest rate.",a:"Interest rate of an annuity investment.",p:[{name:"number_of_periods",detail:"The number of payments to be made."},{name:"payment_per_period",detail:"The amount per period to be paid."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."},{name:"rate_guess",detail:"An estimate for what the interest rate will be."}]},CUMPRINC:{d:"Calculates the cumulative principal paid over a range of payment periods for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Cumulative principal paid over a set of periods.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"first_period",detail:"The number of the payment period to begin the cumulative calculation."},{name:"last_period",detail:"The number of the payment period to end the cumulative calculation."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},COUPNUM:{d:"Calculates the number of coupons, or interest payments, between the settlement date and the maturity date of the investment.",a:"Number of coupons between settlement and maturity.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},SYD:{d:"Calculates the depreciation of an asset for a specified period using the sum of years digits method.",a:"Depreciation via sum of years digits method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."},{name:"period",detail:"The single period within `life` for which to calculate depreciation."}]},TBILLEQ:{d:"Calculates the equivalent annualized rate of return of a US Treasury Bill based on discount rate.",a:"Equivalent rate of return for a Treasury bill.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"discount",detail:"The discount rate of the bill at time of purchase."}]},TBILLYIELD:{d:"Calculates the yield of a US Treasury Bill based on price.",a:"The yield of a us treasury bill based on price.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"price",detail:"The price at which the security is bought per 100 face value."}]},TBILLPRICE:{d:"Calculates the price of a US Treasury Bill based on discount rate.",a:"Price of US treasury bill.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"discount",detail:"The discount rate of the bill at time of purchase."}]},PV:{d:"Calculates the present value of an annuity investment based on constant-amount periodic payments and a constant interest rate.",a:"Present value of an annuity investment.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"payment_amount",detail:"The amount per period to be paid."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},ACCRINT:{d:"Calculates the accrued interest of a security that has periodic payments.",a:"Accrued interest of security with periodic payments.",p:[{name:"issue",detail:"The date the security was initially issued."},{name:"first_payment",detail:"The first date interest will be paid."},{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"rate",detail:"The annualized rate of interest."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."},{name:"calc_method",detail:`[Optional-defaults to TRUE()] - A logical value that specifies the method used to calculate the total accrued interest when the settlement date is later than the first interest accrual date. + +If the value is TRUE, the total accrued interest from the issue date to the settlement date is returned. + +If the value is FALSE, return the accrued interest from the first interest accrual date to the settlement date.`}]},ACCRINTM:{d:"Calculates the accrued interest of a security that pays interest at maturity.",a:"Accrued interest of security paying at maturity.",p:[{name:"issue",detail:"The date the security was initially issued."},{name:"maturity",detail:"The maturity date of the security."},{name:"rate",detail:"The annualized rate of interest."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPDAYBS:{d:"Calculates the number of days from the first coupon, or interest payment, until settlement.",a:"Number of days from first coupon to settlement.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPDAYS:{d:"Calculates the number of days in the coupon, or interest payment, period that contains the specified settlement date.",a:"Days in coupon period containing settlement date.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPDAYSNC:{d:"Calculates the number of days from the settlement date until the next coupon, or interest payment.",a:"Days from settlement until next coupon.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPNCD:{d:"Calculates next coupon, or interest payment, date after the settlement date.",a:"Next coupon date after the settlement date.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPPCD:{d:"Calculates last coupon, or interest payment, date before the settlement date.",a:"Last coupon date before settlement date.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},FV:{d:"Calculates the future value of an annuity investment based on constant-amount periodic payments and a constant interest rate.",a:"Future value of an annuity investment.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"payment_amount",detail:"The amount per period to be paid."},{name:"present_value",detail:"The current value of the annuity."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},FVSCHEDULE:{d:"Calculates the future value of some principal based on a specified series of potentially varying interest rates.",a:"Future value of principal from series of rates.",p:[{name:"principal",detail:"The amount of initial capital or value to compound against."},{name:"rate_schedule",detail:"A series of interest rates to compound against the `principal`."}]},YIELD:{d:"Calculates the annual yield of a security paying periodic interest, such as a US Treasury Bond, based on price.",a:"Annual yield of a security paying periodic interest.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"price",detail:"The price at which the security is bought per 100 face value."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},YIELDDISC:{d:"Calculates the annual yield of a discount (non-interest-bearing) security, based on price.",a:"Annual yield of a discount security.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"price",detail:"The price at which the security is bought per 100 face value."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},NOMINAL:{d:"Calculates the annual nominal interest rate given the effective rate and number of compounding periods per year.",a:"Annual nominal interest rate.",p:[{name:"effective_rate",detail:"The effective interest rate per year."},{name:"periods_per_year",detail:"The number of compounding periods per year."}]},XIRR:{d:"Calculates the internal rate of return of an investment based on a specified series of potentially irregularly spaced cash flows.",a:"Internal rate of return given non-periodic cashflows.",p:[{name:"cashflow_amounts",detail:"An array or range containing the income or payments associated with the investment."},{name:"cashflow_dates",detail:"An array or range with dates corresponding to the cash flows in `cashflow_amounts`."},{name:"rate_guess",detail:"An estimate for what the internal rate of return will be."}]},MIRR:{d:"Calculates the modified internal rate of return on an investment based on a series of periodic cash flows and the difference between the interest rate paid on financing versus the return received on reinvested income.",a:"Modified internal rate of return.",p:[{name:"cashflow_amounts",detail:"An array or range containing the income or payments associated with the investment."},{name:"financing_rate",detail:"The interest rate paid on funds invested."},{name:"reinvestment_return_rate",detail:"The return (as a percentage) earned on reinvestment of income received from the investment."}]},IRR:{d:"Calculates the internal rate of return on an investment based on a series of periodic cash flows.",a:"Internal rate of return given periodic cashflows.",p:[{name:"cashflow_amounts",detail:"An array or range containing the income or payments associated with the investment."},{name:"rate_guess",detail:"An estimate for what the internal rate of return will be."}]},NPV:{d:"Calculates the net present value of an investment based on a series of periodic cash flows and a discount rate.",a:"The net present value of an investment based on a series of periodic cash flows and a discount rate.",p:[{name:"discount",detail:"The discount rate of the investment over one period."},{name:"cashflow1",detail:"The first future cash flow."},{name:"cashflow2",detail:"Additional future cash flows."}]},XNPV:{d:"Calculates the net present value of an investment based on a specified series of potentially irregularly spaced cash flows and a discount rate.",a:"Net present value given non-periodic cashflows.",p:[{name:"discount",detail:"The discount rate of the investment over one period."},{name:"cashflow_amounts",detail:"A range of cells containing the income or payments associated with the investment."},{name:"cashflow_dates",detail:"A range of cells with dates corresponding to the cash flows in `cashflow_amounts`."}]},CUMIPMT:{d:"Calculates the cumulative interest over a range of payment periods for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Cumulative interest paid over a set of periods.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"first_period",detail:"The number of the payment period to begin the cumulative calculation."},{name:"last_period",detail:"The number of the payment period to end the cumulative calculation."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},PMT:{d:"Calculates the periodic payment for an annuity investment based on constant-amount periodic payments and a constant interest rate.",a:"Periodic payment for an annuity investment.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},IPMT:{d:"Calculates the payment on interest for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Payment on interest for an investment.",p:[{name:"rate",detail:"The interest rate."},{name:"period",detail:"The amortization period, in terms of number of periods."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},PPMT:{d:"Calculates the payment on the principal of an investment based on constant-amount periodic payments and a constant interest rate.",a:"Payment on the principal of an investment.",p:[{name:"rate",detail:"The interest rate."},{name:"period",detail:"The amortization period, in terms of number of periods."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},INTRATE:{d:"Calculates the effective interest rate generated when an investment is purchased at one price and sold at another with no interest or dividends generated by the investment itself.",a:"Calculates effective interest rate.",p:[{name:"buy_date",detail:"The date of purchase of the investment."},{name:"sell_date",detail:"The date of sale of the investment."},{name:"buy_price",detail:"The price at which the investment was purchased."},{name:"sell_price",detail:"The price at which the investment was sold."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},PRICE:{d:"Calculates the price of a security paying periodic interest, such as a US Treasury Bond, based on expected yield.",a:"Price of a security paying periodic interest.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},PRICEDISC:{d:"Calculates the price of a discount (non-interest-bearing) security, based on expected yield.",a:"Price of a discount security.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"discount",detail:"The discount rate of the security at time of purchase."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},PRICEMAT:{d:"Calculates the price of a security paying interest at maturity, based on expected yield.",a:"Price of security paying interest at maturity.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"issue",detail:"The date the security was initially issued."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},RECEIVED:{d:"Calculates the amount received at maturity for an investment in fixed-income securities purchased on a given date.",a:"Amount received at maturity for a security.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"investment",detail:"The amount invested (irrespective of face value of each security)."},{name:"discount",detail:"The discount rate of the security invested in."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},DISC:{d:"Calculates the discount rate of a security based on price.",a:"The discount rate of a security based on price.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"price",detail:"The price at which the security is bought per 100 face value."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},NPER:{d:"Calculates the number of payment periods for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Number of payment periods for an investment.",p:[{name:"rate",detail:"The interest rate."},{name:"payment_amount",detail:"The amount of each payment made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},SLN:{d:"Calculates the depreciation of an asset for one period using the straight-line method.",a:"Depreciation of asset using the straight-line method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."}]},DURATION:{d:"Calculates the number of compounding periods required for an investment of a specified present value appreciating at a given rate to reach a target value.",a:"Number of periods for an investment to reach a value.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},MDURATION:{d:"Calculates the modified Macaulay duration of a security paying periodic interest, such as a US Treasury Bond, based on expected yield.",a:"Modified Macaulay duration.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},BIN2DEC:{d:"Converts a signed binary number to decimal format.",a:"Converts a signed binary number to decimal format.",p:[{name:"signed_binary_number",detail:"The signed 10-bit binary value to be converted to decimal, provided as a string."}]},BIN2HEX:{d:"Converts a signed binary number to signed hexadecimal format.",a:"Converts a binary number to hexadecimal.",p:[{name:"signed_binary_number",detail:"The signed 10-bit binary value to be converted to signed hexademical, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},BIN2OCT:{d:"Converts a signed binary number to signed octal format.",a:"Converts a binary number to octal.",p:[{name:"signed_binary_number",detail:"The signed 10-bit binary value to be converted to signed octal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},DEC2BIN:{d:"Converts a decimal number to signed binary format.",a:"Converts a decimal number to signed binary format.",p:[{name:"decimal_number",detail:"The decimal value to be converted to signed binary, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},DEC2HEX:{d:"Converts a decimal number to signed hexadecimal format.",a:"Converts a decimal number to hexadecimal.",p:[{name:"decimal_number",detail:"The decimal value to be converted to signed hexadecimal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},DEC2OCT:{d:"Converts a decimal number to signed octal format.",a:"Converts a decimal number to signed octal format.",p:[{name:"decimal_number",detail:"The decimal value to be converted to signed octal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},HEX2BIN:{d:"Converts a signed hexadecimal number to signed binary format.",a:"Converts a hexadecimal number to binary.",p:[{name:"signed_hexadecimal_number",detail:"The signed 40-bit hexadecimal value to be converted to signed binary, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},HEX2DEC:{d:"Converts a signed hexadecimal number to decimal format.",a:"Converts a hexadecimal number to decimal.",p:[{name:"signed_hexadecimal_number",detail:"The signed 40-bit hexadecimal value to be converted to decimal, provided as a string."}]},HEX2OCT:{d:"Converts a signed hexadecimal number to signed octal format.",a:"Converts a hexadecimal number to octal.",p:[{name:"signed_hexadecimal_number",detail:"The signed 40-bit hexadecimal value to be converted to signed octal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},OCT2BIN:{d:"Converts a signed octal number to signed binary format.",a:"Converts an octal number to binary.",p:[{name:"signed_octal_number",detail:"The signed 30-bit octal value to be converted to signed binary, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},OCT2DEC:{d:"Converts a signed octal number to decimal format.",a:"Converts a signed octal number to decimal format.",p:[{name:"signed_octal_number",detail:"The signed 30-bit octal value to be converted to decimal, provided as a string."}]},OCT2HEX:{d:"Converts a signed octal number to signed hexadecimal format.",a:"Converts an octal number to hexadecimal.",p:[{name:"signed_octal_number",detail:"The signed 30-bit octal value to be converted to signed hexadecimal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},COMPLEX:{d:"Creates a complex number given real and imaginary coefficients.",a:"Creates a complex number.",p:[{name:"real_part",detail:"The real coefficient."},{name:"imaginary_part",detail:"The imaginary coefficient."},{name:"suffix",detail:"The suffix for the imaginary coefficient, can only be 'i' or 'j'. If omitted, 'i' will be used."}]},IMREAL:{d:"Returns the real coefficient of a complex number.",a:"The real coefficient of a complex number.",p:[{name:"complex_number",detail:"The complex number, in the a+bi or a+bj format."}]},IMAGINARY:{d:"Returns the imaginary coefficient of a complex number.",a:"The imaginary coefficient of a complex number.",p:[{name:"complex_number",detail:"The complex number, in the a+bi or a+bj format."}]},IMCONJUGATE:{d:"Returns the complex conjugate of a number.",a:"The complex conjugate of a number.",p:[{name:"number",detail:"The complex number to calculate the conjugate for."}]},IMABS:{d:"Returns absolute value (or modulus) of a complex number.",a:"The absolute value of a complex number.",p:[{name:"number",detail:"The complex number to calculate the absolute value of."}]},DELTA:{d:"Compare two numeric values, returning 1 if they're equal.",a:"Compare two numeric values.",p:[{name:"number1",detail:"The first number to compare."},{name:"number2",detail:"The second number to compare."}]},IMSUM:{d:"Returns the sum of a series of complex numbers.",a:"Sum of a series of complex numbers.",p:[{name:"value1",detail:"The first complex number or range to add together."},{name:"value2",detail:"Additional complex numbers or ranges to add to `value1`."}]},IMSUB:{d:"Returns the difference between two complex numbers.",a:"The difference between two complex numbers.",p:[{name:"first_number",detail:"The complex number to subtract second_number from."},{name:"second_number",detail:"The complex number to subtract from first_number."}]},IMPRODUCT:{d:"Returns the result of multiplying a series of complex numbers together.",a:"Result of multiplying a series of complex numbers together.",p:[{name:"factor1",detail:"The first number or range to calculate for the product."},{name:"factor2",detail:"Additional complex numbers or ranges to calculate for the product."}]},IMDIV:{d:"Returns one complex number divided by another.",a:"One complex number divided by another.",p:[{name:"dividend",detail:"The complex number to be divided."},{name:"divisor",detail:"The complex number to divide by."}]},NOT:{d:"Returns the opposite of a logical value - `NOT(TRUE)` returns `FALSE`; `NOT(FALSE)` returns `TRUE`.",a:"Returns opposite of provided logical value.",p:[{name:"logical_expression",detail:"An expression or reference to a cell holding an expression that represents some logical value."}]},TRUE:{d:"Returns the logical value `TRUE`.",a:"Logical value `true`.",p:[]},FALSE:{d:"Returns the logical value `FALSE`.",a:"Logical value `false`.",p:[]},AND:{d:"Returns true if all of the provided arguments are logically true, and false if any of the provided arguments are logically false.",a:"Logical `and` operator.",p:[{name:"logical_expression1",detail:"An expression or reference to a cell containing an expression that represents some logical value, i.e. `TRUE` or `FALSE`, or an expression that can be coerced to a logical value."},{name:"logical_expression2",detail:"More expressions that represent logical values."}]},IFERROR:{d:"Returns the first argument if it is not an error value, otherwise returns the second argument if present, or a blank if the second argument is absent.",a:"Value if it is not an error, otherwise 2nd argument.",p:[{name:"value",detail:"The value to return if `value` itself is not an error."},{name:"value_if_error",detail:"The value the function returns if `value` is an error."}]},IF:{d:"Returns one value if a logical expression is `TRUE` and another if it is `FALSE`.",a:"Returns value depending on logical expression.",p:[{name:"logical_expression",detail:"An expression or reference to a cell containing an expression that represents some logical value, i.e. `TRUE` or `FALSE`."},{name:"value_if_true",detail:"The value the function returns if `logical_expression` is `TRUE`."},{name:"value_if_false",detail:"The value the function returns if `logical_expression` is `FALSE`."}]},OR:{d:"Returns true if any of the provided arguments are logically true, and false if all of the provided arguments are logically false.",a:"Logical `or` operator.",p:[{name:"logical_expression1",detail:"An expression or reference to a cell containing an expression that represents some logical value, i.e. `TRUE` or `FALSE`, or an expression that can be coerced to a logical value."},{name:"logical_expression2",detail:"More expressions that evaluate to logical values."}]},NE:{d:"Returns `TRUE` if two specified values are not equal and `FALSE` otherwise. Equivalent to the `!=` operator.",a:"Not equal.",p:[{name:"value1",detail:"The first value."},{name:"value2",detail:"The value to test against `value1` for inequality."}]},EQ:{d:"Returns `TRUE` if two specified values are equal and `FALSE` otherwise. Equivalent to the `==` operator.",a:"Equal.",p:[{name:"value1",detail:"The first value."},{name:"value2",detail:"The value to test against `value1` for equality."}]},GT:{d:"Returns `TRUE` if the first argument is strictly greater than the second, and `FALSE` otherwise. Equivalent to the `>` operator.",a:"Strictly greater than.",p:[{name:"value1",detail:"The value to test as being greater than `value2`."},{name:"value2",detail:"The second value."}]},GTE:{d:"Returns `TRUE` if the first argument is greater than or equal to the second, and `FALSE` otherwise. Equivalent to the `>=` operator.",a:"Greater than or equal to.",p:[{name:"value1",detail:"The value to test as being greater than or equal to `value2`."},{name:"value2",detail:"The second value."}]},LT:{d:"Returns `TRUE` if the first argument is strictly less than the second, and `FALSE` otherwise. Equivalent to the `<` operator.",a:"Less than.",p:[{name:"value1",detail:"The value to test as being less than `value2`."},{name:"value2",detail:"The second value."}]},LTE:{d:"Returns `TRUE` if the first argument is less than or equal to the second, and `FALSE` otherwise. Equivalent to the `<=` operator.",a:"Less than or equal to.",p:[{name:"value1",detail:"The value to test as being less than or equal to `value2`."},{name:"value2",detail:"The second value."}]},ADD:{d:"Returns the sum of two numbers. Equivalent to the `+` operator.",a:"Sum of two numbers",p:[{name:"value1",detail:"The first addend."},{name:"value2",detail:"The second addend."}]},MINUS:{d:"Returns the difference of two numbers. Equivalent to the `-` operator.",a:"Difference of two numbers",p:[{name:"value1",detail:"The minuend, or number to be subtracted from."},{name:"value2",detail:"The subtrahend, or number to subtract from `value1`."}]},MULTIPLY:{d:"Returns the product of two numbers. Equivalent to the `*` operator.",a:"Product of two numbers",p:[{name:"factor1",detail:"The first multiplicand."},{name:"factor2",detail:"The second multiplicand."}]},DIVIDE:{d:"Returns one number divided by another. Equivalent to the `/` operator.",a:"One number divided by another",p:[{name:"dividend",detail:"The number to be divided."},{name:"divisor",detail:"The number to divide by."}]},CONCAT:{d:"Returns the concatenation of two values. Equivalent to the `&` operator.",a:"Concatenation of two values",p:[{name:"value1",detail:"The value to which `value2` will be appended."},{name:"value2",detail:"The value to append to `value1`."}]},UNARY_PERCENT:{d:"Returns a value interpreted as a percentage; that is, `UNARY_PERCENT(100)` equals `1`.",a:"Value interpreted as a percentage.",p:[{name:"percentage",detail:"The value to interpret as a percentage."}]},CONCATENATE:{d:"Appends strings to one another.",a:"Appends strings to one another.",p:[{name:"string1",detail:"The initial string."},{name:"string2",detail:"More strings to append in sequence."}]},CODE:{d:"Returns the numeric Unicode map value of the first character in the string provided.",a:"Numeric unicode map value of character.",p:[{name:"string",detail:"The string whose first character's Unicode map value will be returned."}]},CHAR:{d:"Convert a number into a character according to the current Unicode table.",a:"Gets character associated with number.",p:[{name:"table_number",detail:"The number of the character to look up from the current Unicode table in decimal format."}]},ARABIC:{d:"Computes the value of a Roman numeral.",a:"Computes the value of a roman numeral.",p:[{name:"roman_numeral",detail:"The Roman numeral to format, whose value must be between 1 and 3999, inclusive."}]},ROMAN:{d:"Formats a number in Roman numerals.",a:"Formats a number in Roman numerals.",p:[{name:"number",detail:"The number to format, between 1 and 3999, inclusive."}]},REGEXEXTRACT:{d:"Extracts matching substrings according to a regular expression.",a:"Extracts matching substrings with regular expression.",p:[{name:"text",detail:"The input text."},{name:"regular_expression",detail:"The first part of `text` that matches this expression will be returned."}]},REGEXMATCH:{d:"Whether a piece of text matches a regular expression.",a:"Whether a piece of text matches regular expression.",p:[{name:"text",detail:"The text to be tested against the regular expression."},{name:"regular_expression",detail:"The regular expression to test the text against."}]},REGEXREPLACE:{d:"Replaces part of a text string with a different text string using regular expressions.",a:"Replaces text with regular expressions.",p:[{name:"text",detail:"The text, a part of which will be replaced."},{name:"regular_expression",detail:"The regular expression. All matching instances in `text` will be replaced."},{name:"replacement",detail:"The text which will be inserted into the original text."}]},T:{d:"Returns string arguments as text, or the empty string if the value is not text.",a:"String arguments as text.",p:[{name:"value",detail:"The argument to be converted to text."}]},FIXED:{d:"Formats a number with a fixed number of decimal places.",a:"Formats number with fixed number of decimal places.",p:[{name:"number",detail:"The number to format."},{name:"number_of_places",detail:"The number of decimal places to display in the result."},{name:"suppress_separator",detail:"Whether or not to suppress the thousands separator used in some locales (e.g. `1,000` becomes `1000`). Separators will be present if this value is 0 or omitted, and absent otherwise."}]},FIND:{d:"Returns the position at which a string is first found within text where the capitalization of letters matters. Returns `#VALUE!` if the string is not found.",a:"First position of string found in text, case-sensitive.",p:[{name:"search_for",detail:"The string to look for within `text_to_search`."},{name:"text_to_search",detail:"The text to search for the first occurrence of `search_for`."},{name:"starting_at",detail:"The character within `text_to_search` at which to start the search."}]},FINDB:{d:"Returns the position at which a string is first found within text counting each double-character as 2.",a:"Position at which a string is first found within text (binary).",p:[{name:"search_for",detail:"The string to look for within `text_to_search`."},{name:"text_to_search",detail:"The text to search for the first occurrence of `search_for`."},{name:"starting_at",detail:"The character within `text_to_search` at which to start the search."}]},JOIN:{d:"Concatenates the elements of one or more one-dimensional arrays using a specified delimiter.",a:"Concatenates elements of arrays with delimiter.",p:[{name:"delimiter",detail:"The character or string to place between each concatenated value."},{name:"value_or_array1",detail:"The value or values to be appended using `delimiter`."},{name:"value_or_array2",detail:"More values to be appended using `delimiter`."}]},LEFT:{d:"Returns a substring from the beginning of a specified string.",a:"Substring from beginning of specified string.",p:[{name:"string",detail:"The string from which the left portion will be returned."},{name:"number_of_characters",detail:"The number of characters to return from the left side of `string`."}]},RIGHT:{d:"Returns a substring from the end of a specified string.",a:"A substring from the end of a specified string.",p:[{name:"string",detail:"The string from which the right portion will be returned."},{name:"number_of_characters",detail:"The number of characters to return from the right side of `string`."}]},MID:{d:"Returns a segment of a string.",a:"A segment of a string.",p:[{name:"string",detail:"The string to extract a segment from."},{name:"starting_at",detail:"The index from the left of `string` from which to begin extracting. The first character in `string` has the index 1."},{name:"extract_length",detail:"The length of the segment to extract."}]},LEN:{d:"Returns the length of a string.",a:"Length of a string.",p:[{name:"text",detail:"The string whose length will be returned."}]},LENB:{d:"Returns the length of a string in bytes.",a:"Length of a string in bytes.",p:[{name:"text",detail:"The string whose length will be returned."}]},LOWER:{d:"Converts a specified string to lowercase.",a:"Converts a specified string to lowercase.",p:[{name:"text",detail:"The string to convert to lowercase."}]},UPPER:{d:"Converts a specified string to uppercase.",a:"Converts a specified string to uppercase.",p:[{name:"text",detail:"The string to convert to uppercase."}]},EXACT:{d:"Tests whether two strings are identical.",a:"Tests whether two strings are identical.",p:[{name:"string1",detail:"The first string to compare"},{name:"string2",detail:"The second string to compare"}]},REPLACE:{d:"Replaces part of a text string with a different text string.",a:"Replaces part of a text string with different text.",p:[{name:"text",detail:"The text, a part of which will be replaced."},{name:"position",detail:"The position where the replacement will begin (starting from 1)."},{name:"length",detail:"The number of characters in the text to be replaced."},{name:"new_text",detail:"The text which will be inserted into the original text."}]},REPT:{d:"Returns specified text repeated a number of times.",a:"Specified text repeated a number of times.",p:[{name:"text_to_repeat",detail:"The character or string to repeat."},{name:"number_of_repetitions",detail:"The number of times `text_to_repeat` should appear in the value returned."}]},SEARCH:{d:"Returns the position at which a string is first found within text and ignores capitalization of letters. Returns `#VALUE!` if the string is not found.",a:"First position of string found in text, ignoring case.",p:[{name:"search_for",detail:"The string to look for within `text_to_search`."},{name:"text_to_search",detail:"The text to search for the first occurrence of `search_for`."},{name:"starting_at",detail:"The character within `text_to_search` at which to start the search."}]},SUBSTITUTE:{d:"Replaces existing text with new text in a string.",a:"Replaces existing text with new text in a string.",p:[{name:"text_to_search",detail:"The text within which to search and replace."},{name:"search_for",detail:"The string to search for within `text_to_search`."},{name:"replace_with",detail:"The string that will replace `search_for`."},{name:"occurrence_number",detail:"The instance of `search_for` within `text_to_search` to replace with `replace_with`. By default, all occurrences of `search_for` are replaced; however, if `occurrence_number` is specified, only the indicated instance of `search_for` is replaced."}]},CLEAN:{d:"Returns the text with the non-printable ASCII characters removed.",a:"Removes non-printable characters from a piece of text.",p:[{name:"text",detail:"The text whose non-printable characters are to be removed."}]},TEXT:{d:"Converts a number into text according to a specified format.",a:"Formats a number into text.",p:[{name:"number",detail:"The number, date, or time to format."},{name:"format",detail:"The pattern by which to format the number, enclosed in quotation marks."}]},TRIM:{d:"Removes leading, trailing, and repeated spaces in text.",a:"Removes space characters.",p:[{name:"text",detail:"The text or reference to a cell containing text to be trimmed."}]},VALUE:{d:"Converts a string in any of the date, time or number formats that Google Sheets understands into a number.",a:"Converts a date/time/number string into a number.",p:[{name:"text",detail:"The string containing the value to be converted."}]},PROPER:{d:"Capitalizes each word in a specified string.",a:"Capitalizes each word in a specified string.",p:[{name:"text_to_capitalize",detail:"The text which will be returned with the first letter of each word in uppercase and all other letters in lowercase."}]},CONVERT:{d:"Converts a numeric value to a different unit of measure.",a:"Unit conversion for numbers.",p:[{name:"value",detail:"The numeric value in `start_unit` to convert to `end_unit`."},{name:"start_unit",detail:"The starting unit, the unit currently assigned to `value`."},{name:"end_unit",detail:"The unit of measure into which to convert the argument, `value`."}]},SUMX2MY2:{d:"Calculates the sum of the differences of the squares of values in two arrays.",a:"Sum of the differences of squares.",p:[{name:"array_x",detail:"The array or range of values whose squares will be reduced by the squares of corresponding entries in `array_y` and added together."},{name:"array_y",detail:"The array or range of values whose squares will be subtracted from the squares of corresponding entries in `array_x` and added together."}]},SUMX2PY2:{d:"Calculates the sum of the sums of the squares of values in two arrays.",a:"Sum of the sums of squares.",p:[{name:"array_x",detail:"The array or range of values whose squares will be added to the squares of corresponding entries in `array_y` and added together."},{name:"array_y",detail:"The array or range of values whose squares will be added to the squares of corresponding entries in `array_x` and added together."}]},SUMXMY2:{d:"Calculates the sum of the squares of differences of values in two arrays.",a:"Sum of the squares of differences.",p:[{name:"array_x",detail:"The array or range of values that will be reduced by corresponding entries in `array_y`, squared, and added together."},{name:"array_y",detail:"The array or range of values that will be subtracted from corresponding entries in `array_x`, the result squared, and all such results added together."}]},TRANSPOSE:{d:"Transposes the rows and columns of an array or range of cells.",a:"Transposes the rows and columns of an array.",p:[{name:"array_or_range",detail:"The array or range whose rows and columns will be swapped."}]},TREND:{d:"Given partial data about a linear trend, fits an ideal linear trend using the least squares method and/or predicts further values.",a:"Fits points to linear trend derived via least-squares.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal linear trend."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"new_data_x",detail:"The data points to return the `y` values for on the ideal curve fit."},{name:"b",detail:"Given a general linear form of `y = m*x+b` for a curve fit, calculates `b` if `TRUE` or forces `b` to be `0` and only calculates the `m` values if `FALSE`, i.e. forces the curve fit to pass through the origin."}]},FREQUENCY:{d:"Calculates the frequency distribution of a one-column array into specified classes.",a:"The frequency distribution of array.",p:[{name:"data",detail:"The array or range containing the values to be counted."},{name:"classes",detail:"The array or range containing the set of classes."}]},GROWTH:{d:"Given partial data about an exponential growth trend, fits an ideal exponential growth trend and/or predicts further values.",a:"Fits points to exponential growth trend.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal exponential growth curve."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"new_data_x",detail:"The data points to return the `y` values for on the ideal curve fit."},{name:"b",detail:"Given a general exponential form of `y = b*m^x` for a curve fit, calculates `b` if `TRUE` or forces `b` to be `1` and only calculates the `m` values if `FALSE`."}]},LINEST:{d:"Given partial data about a linear trend, calculates various parameters about the ideal linear trend using the least-squares method.",a:"Best-fit linear trend via least-squares.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal linear trend."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"calculate_b",detail:"Given a linear form of `y = m*x+b`, calculates the y-intercept (`b`) if `TRUE`. Otherwise, forces `b` to be `0` and only calculates the `m` values if `FALSE`, i.e. forces the curve fit to pass through the origin."},{name:"verbose",detail:"A flag specifying whether to return additional regression statistics or only the linear coefficients and the y-intercept (default)."}]},LOGEST:{d:"Given partial data about an exponential growth curve, calculates various parameters about the best fit ideal exponential growth curve.",a:"Best-fit exponential growth curve.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal exponential growth curve."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"b",detail:"Given a general exponential form of `y = b*m^x` for a curve fit, calculates `b` if `TRUE` or forces `b` to be `1` and only calculates the `m` values if `FALSE`."},{name:"verbose",detail:"A flag specifying whether to return additional regression statistics or only the calculated coefficient and exponents."}]},MDETERM:{d:"Returns the matrix determinant of a square matrix specified as an array or range.",a:"Matrix determinant of a square matrix.",p:[{name:"square_matrix",detail:"An array or range with an equal number of rows and columns representing a matrix whose determinant will be calculated."}]},MINVERSE:{d:"Returns the multiplicative inverse of a square matrix specified as an array or range.",a:"Multiplicative inverse of square matrix.",p:[{name:"square_matrix",detail:"An array or range with an equal number of rows and columns representing a matrix whose multiplicative inverse will be calculated."}]},MMULT:{d:"Calculates the matrix product of two matrices specified as arrays or ranges.",a:"The matrix product of two matrices.",p:[{name:"matrix1",detail:"The first matrix in the matrix multiplication operation, represented as an array or range."},{name:"matrix2",detail:"The second matrix in the matrix multiplication operation, represented as an array or range."}]},SUMPRODUCT:{d:"Calculates the sum of the products of corresponding entries in two equal-sized arrays or ranges.",a:"Sum of products of elements in two arrays.",p:[{name:"array1",detail:"The first array or range whose entries will be multiplied with corresponding entries in the second such array or range."},{name:"array2",detail:"The second array or range whose entries will be multiplied with corresponding entries in the first such array or range."}]},ISFORMULA:{d:"Checks whether a value is a formula.",a:"Whether a value is a formula.",p:[{name:"cell",detail:"The cell to be verified as containing a formula."}]},CELL:{d:"Returns the requested information about the specified cell.",a:"Gets information about a cell.",p:[{name:"info_type",detail:"The type of information requested (see article for available types)"},{name:"reference",detail:"The reference to the cell."}]},NA:{d:'Returns the "value not available" error, `#N/A`.',a:"The `#N/A` error.",p:[]},ERROR_TYPE:{d:"Returns a number corresponding to the error value in a different cell.",a:"Error value of cell (as number).",p:[{name:"reference",detail:"The cell to find the error number for although you can also provide the error value directly."}]},ISBLANK:{d:"Checks whether the referenced cell is empty.",a:"Whether the referenced cell is empty.",p:[{name:"value",detail:"Reference to the cell that will be checked for emptiness."}]},ISERR:{d:"Checks whether a value is an error other than `#N/A`.",a:"Whether a value is an error other than `#n/a`.",p:[{name:"value",detail:"The value to be verified as an error type other than `#N/A`."}]},ISERROR:{d:"Checks whether a value is an error.",a:"Whether a value is an error.",p:[{name:"value",detail:"The value to be verified as an error type."}]},ISLOGICAL:{d:"Checks whether a value is `TRUE` or `FALSE`.",a:"Whether a value is `true` or `false`.",p:[{name:"value",detail:"The value to be verified as a logical `TRUE` or `FALSE`."}]},ISNA:{d:"Checks whether a value is the error `#N/A`.",a:"Whether a value is the error `#n/a`.",p:[{name:"value",detail:"The value to be compared with the error value `#N/A`."}]},ISNONTEXT:{d:"Checks whether a value is non-textual.",a:"Whether a value is non-textual.",p:[{name:"value",detail:"The value to be checked."}]},ISNUMBER:{d:"Checks whether a value is a number.",a:"Whether a value is a number.",p:[{name:"value",detail:"The value to be verified as a number."}]},ISREF:{d:"Checks whether a value is a valid cell reference.",a:"Whether a value is a valid cell reference.",p:[{name:"value",detail:"The value to be verified as a cell reference."}]},ISTEXT:{d:"Checks whether a value is text.",a:"Whether a value is text.",p:[{name:"value",detail:"The value to be verified as text."}]},TYPE:{d:"Returns a number associated with the type of data passed into the function.",a:"Get the type of a value.",p:[{name:"value",detail:"The value whose type is to be determined."}]},N:{d:"Returns the argument provided as a number. Text is converted to 0 and errors are returned as-is.",a:"Argument provided as a number.",p:[{name:"value",detail:"The argument to be converted to a number."}]},TO_DATE:{d:"Converts a provided number to a date.",a:"Converts a provided number to a date.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a date."}]},TO_PURE_NUMBER:{d:"Converts a provided date/time, percentage, currency or other formatted numeric value to a pure number without formatting.",a:"Converts any numeric value to a pure number.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a pure number."}]},TO_TEXT:{d:"Converts a provided numeric value to a text value.",a:"Converts a provided numeric value to a text value.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to text."}]},TO_DOLLARS:{d:"Converts a provided number to a dollar value.",a:"Converts a provided number to a dollar value.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a dollar value."}]},TO_PERCENT:{d:"Converts a provided number to a percentage.",a:"Converts a provided number to a percentage.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a percentage."}]},DGET:{d:"Returns a single value from a database table-like array or range using a SQL-like query.",a:"Single value from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DMAX:{d:"Returns the maximum value selected from a database table-like array or range using a SQL-like query.",a:"Maximum of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DMIN:{d:"Returns the minimum value selected from a database table-like array or range using a SQL-like query.",a:"Minimum of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DAVERAGE:{d:"Returns the average of a set of values selected from a database table-like array or range using a SQL-like query.",a:"Average of a set of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DCOUNT:{d:"Counts numeric values selected from a database table-like array or range using a SQL-like query.",a:"Counts values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DCOUNTA:{d:"Counts values, including text, selected from a database table-like array or range using a SQL-like query.",a:"Counts values and text from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DPRODUCT:{d:"Returns the product of values selected from a database table-like array or range using a SQL-like query.",a:"Product of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DSTDEV:{d:"Returns the standard deviation of a population sample selected from a database table-like array or range using a SQL-like query.",a:"Standard deviation of population sample from table.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DSTDEVP:{d:"Returns the standard deviation of an entire population selected from a database table-like array or range using a SQL-like query.",a:"Standard deviation of entire population from table.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DSUM:{d:"Returns the sum of values selected from a database table-like array or range using a SQL-like query.",a:"Sum of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DVAR:{d:"Returns the variance of a population sample selected from a database table-like array or range using a SQL-like query.",a:"Variance of population sample from table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DVARP:{d:"Returns the variance of an entire population selected from a database table-like array or range using a SQL-like query.",a:"Variance of a population from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},AGE_BY_IDCARD:{d:"Calculate the age based on the Chinese ID number. Support 15 or 18",a:"Get age based on ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."},{name:"Deadline",detail:"The deadline or range of age calculation. The default is the current day."}]},SEX_BY_IDCARD:{d:"Calculate gender based on Chinese ID number. Support 15 or 18",a:"Get gender based on ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},BIRTHDAY_BY_IDCARD:{d:"Calculate the birthday based on the Chinese ID number. Support 15 or 18",a:"Get the birthday based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."},{name:"Birthday format",detail:"Date type, default:0:[1900/01/01], 1:[1900-01-01], 2:[1900\u5E741\u67081\u65E5]"}]},PROVINCE_BY_IDCARD:{d:"Calculate the province of birthplace based on the Chinese ID number. Support 15 or 18",a:"Get the province of birthplace based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},CITY_BY_IDCARD:{d:"Calculate the city of birthplace based on the Chinese ID number. Support 15 or 18",a:"Get the city of birthplace based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},STAR_BY_IDCARD:{d:"Calculate the constellation based on the Chinese ID number. Support 15 or 18",a:"Get the constellation based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},ANIMAL_BY_IDCARD:{d:"Calculate the zodiac (rat, ox, tiger, rabbit...) based on the Chinese ID number. Support 15 or 18",a:"Get the zodiac according to the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},ISIDCARD:{d:"Verify that the format of the ID card is correct. Support 15 or 18",a:"Verify the correctness of the ID card format.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},DM_TEXT_CUTWORD:{d:"Text segmentation. Split a series of words into a series of individual words",a:"Chinese text segmentation.",p:[{name:"Text",detail:"Any text that needs word segmentation."},{name:"Word segmentation mode",detail:"The default is 0[precision mode], 1[full mode], 2[search engine mode]."}]},DM_TEXT_TFIDF:{d:"Use tf-idf algorithm for keyword extraction. Identify keywords from a series of text",a:"tf-idf keyword recognition.",p:[{name:"Text",detail:"Any text that needs word segmentation."},{name:"Number of keywords",detail:"The number of keywords returned by the algorithm, the default is 20"},{name:"Corpus",detail:"Select a corpus in a specific field, the default is 0[General], 1[Finance], 2[Medical]"}]},DM_TEXT_TEXTRANK:{d:"Use TextRank algorithm to extract keywords. Identify keywords from a series of text",a:"TextRank keyword recognition.",p:[{name:"Text",detail:"Any text that needs word segmentation."},{name:"Number of keywords",detail:"The number of keywords returned by the algorithm, the default is 20"},{name:"Corpus",detail:"Select a corpus in a specific field, the default is 0[General], 1[Finance], 2[Medical]"}]},DATA_CN_STOCK_CLOSE:{d:"According to the stock code and date, return the corresponding stock closing price of A shares.",a:"Returns the closing price of stock.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_OPEN:{d:"According to the stock code and date, return the opening price of stock.",a:"Return the opening price of a shares.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_MAX:{d:"According to the stock code and date, return the highest price of stock.",a:"Return the highest price of stock.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_MIN:{d:"According to the stock code and date, return the lowest price of stock.",a:"Returns the lowest price of stock.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_VOLUMN:{d:"According to the stock code and date, return the corresponding stock trading volume of A shares.",a:"Returns the corresponding stock trading volume of A shares.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_AMOUNT:{d:"According to the stock code and date, return the corresponding stock turnover of A shares.",a:"Returns the corresponding stock turnover of A shares.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},ISDATE:{d:"Returns whether a value is a date.",a:"Whether a value is a date.",p:[{name:"value",detail:"The value to be verified as a date."}]},LINESPLINES:{d:"Generate sparklines embedded in the cell to describe the continuous trend of data",a:"Generate sparklines line chart",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Line color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #2ec7c9"},{name:"Line thickness",detail:"Line thickness of the line graph, the default is 1px"},{name:"Auxiliary line",detail:"A horizontal line, which can be min, max, avg, median, range or custom value, default 0 none"},{name:"Auxiliary line color",detail:"Color setting of auxiliary line, same as line color configuration, default #000"},{name:"Maximum mark",detail:"Identifies the maximum value of the line graph, the same line color configuration, default 0 does not display"},{name:"Minimum mark",detail:"Identify the minimum value of the line graph, the same line color configuration, default 0 does not display"},{name:"Mark size",detail:"The maximum and minimum mark size settings, the default is 1.5"}]},AREASPLINES:{d:"Generate sparklines embedded in the cell area chart, generally used to describe the continuous cumulative value trend of the data",a:"Generate sparklines area chart",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Line color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #2ec7c9"},{name:"Fill color",detail:"Form an area chart, the same line color configuration, default 0 does not display"},{name:"Line thickness",detail:"Line thickness of the line graph, the default is 1px"},{name:"Auxiliary line",detail:"A horizontal line, which can be min, max, avg, median, range or custom value, default 0 none"},{name:"Auxiliary line color",detail:"Color setting of auxiliary line, same as line color configuration, default #000"}]},COLUMNSPLINES:{d:"Generate sparklines embedded in the vertical histogram of cells, generally used to describe the size of discrete data",a:"Generate sparklines vertical histogram",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Bar color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #fc5c5c"},{name:"Negative bar color",detail:"Negative bar color setting, representing the color of negative value, same as the bar color configuration, default #97b552"},{name:"Max",detail:"The maximum value of the bar chart, used to standardize the length of the bar chart, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can set the color of each bar individually, multiple settings can be set, and two formats are supported: 1 color such as #000, which means that the color of the first bar is black; 2 value range: color, such as -2:# 000 indicates that the bar with a value of -2 is black, 0:5:#000 indicates that the bar with a value of 0-5 is black, and the default is empty"}]},STACKCOLUMNSPLINES:{d:"Generate sparklines, a cumulative vertical histogram embedded in a cell, generally used to describe the numerical size of multiple dimensions of discrete data",a:"Generate sparklines cumulative vertical histogram",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Stack by column",detail:"If you need to stack by row, set this item to false or 0, the default is 1"},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Max",detail:"The maximum value of the cumulative bar, used to regulate the length of the bar, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can individually set the bar color of each dimension, which can be set to the range of A1:A10, etc. The default is #2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BARSPLINES:{d:"Generate sparklines embedded in the cell, generally used to describe the size of discrete data",a:"Generate sparklines horizontal bar graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Bar color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #fc5c5c"},{name:"Negative bar color",detail:"Negative bar color setting, representing the color of negative value, same as the bar color configuration, default #97b552"},{name:"Max",detail:"The maximum value of the bar chart, used to standardize the length of the bar chart, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can set the color of each bar individually, multiple settings can be set, and two formats are supported: 1 color such as #000, which means that the color of the first bar is black; 2 value range: color, such as -2:# 000 indicates that the bar with a value of -2 is black, 0:5:#000 indicates that the bar with a value of 0-5 is black, and the default is empty"}]},STACKBARSPLINES:{d:"Generate sparklines, a cumulative horizontal bar graph embedded in a cell, which is generally used to describe the numerical size of multiple dimensions of discrete data",a:"Generate sparklines cumulative horizontal bar graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Stack by column",detail:"If you need to stack by row, set this item to false or 0, the default is 1"},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Max",detail:"The maximum value of the cumulative bar, used to regulate the length of the bar, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can individually set the bar color of each dimension, which can be set to the range of A1:A10, etc. The default is #2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},DISCRETESPLINES:{d:"Generate sparklines embedded in the cell, generally used to describe the trend of discrete data",a:"Generate sparklines discrete graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Segmentation threshold",detail:"Discrete graph column color distinction, for example: if the value is 0, blue is greater than 0, red is less than 0, and the default is 0"},{name:"Above threshold color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #2ec7c9"},{name:"Below threshold color",detail:"The color setting of the bar below the threshold, the same as the color above the threshold, default #fc5c5c"}]},TRISTATESPLINES:{d:"Generate sparklines, a three-state graph embedded in the cell, which is generally used to describe the trend of three situations, such as winning, losing, or drawing.",a:"Generate sparklines three-state graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Bar color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #fc5c5c"},{name:"Negative bar color",detail:"Negative bar color setting, representing the color of negative value, same as the bar color configuration, default #97b552"},{name:"Zero value bar color",detail:"Zero value bar color setting, representing 0 value color, the same color configuration of the bar, default #999"},{name:"Color palette",detail:"The color palette can set the color of each bar individually, multiple settings can be set, and two formats are supported: 1 color such as #000, which means that the color of the first bar is black; 2 value range: color, such as -2:# 000 indicates that the bar with a value of -2 is black, 0:5:#000 indicates that the bar with a value of 0-5 is black, and the default is empty"}]},PIESPLINES:{d:"Generate sparklines pie chart embedded in the cell, generally used to describe the proportion of data",a:"Generate sparklines pie chart",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Rotation angle",detail:"The rotation angle of the pie chart, the default is 0"},{name:"border",detail:"Pie chart border size, default is none 0"},{name:"Border color",detail:"The border color of the pie chart, the default is #000"},{name:"Color palette",detail:"The color of the slice can be set in the palette, which can be set to the range of A1:A10, etc. The default is #2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BOXSPLINES:{d:"Generate sparklines embedded in the cell box plot, generally used to describe the statistical distribution of the data set",a:"Generate sparklines box plot",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Outlier ratio",detail:"The threshold range of outliers, if it is 0 or false, it will not be displayed, the default is 1.5 times"},{name:"Target value",detail:"The target value setting on the box plot, the default is false and does not display"},{name:"Point size",detail:"The radius of the target point and outlier is set, the default is 1.5"}]},BULLETSPLINES:{d:"Generate sparklines embedded in the cell, generally used to describe the task achievement rate",a:"Generating sparklines bullets",p:[{name:"Target",detail:"The numerical value can be calculated effectively for the achieved target value, such as A1, 100, etc."},{name:"achieved",detail:"Only when the value is completed can the value be calculated effectively, such as A1, 100, etc."},{name:"Contrast",detail:"Comparative values, such as excess, minimum, and bottom line for awards, can be effectively calculated, such as A1, 100, etc. You can set up to 9 comparison values"}]},COMPOSESPLINES:{d:"Support multiple types of pictures in the same cell, each parameter represents a sparklines diagram",a:"Combine sparklines graphs into one cell",p:[{name:"config",detail:"Sparklines chart settings, such as A1:A20, a completed pie chart, line chart settings, etc."}]},SORT:{d:"Sorts the rows of a given array or range by the values in one or more columns.",a:"Sorts rows of range by specified column.",p:[{name:"range",detail:"The data to be sorted."},{name:"sort_column",detail:"The index of the column in `range` or a range outside of `range` containing the values by which to sort."},{name:"is_ascending",detail:"`TRUE` or `FALSE` indicating whether to sort `sort_column` in ascending order. `FALSE` sorts in descending order."},{name:"sort_column2",detail:"Additional columns."}]},FILTER:{d:"Returns a filtered version of the source range, returning only rows or columns which meet the specified conditions.",a:"Filters a range based off provided conditions.",p:[{name:"range",detail:"The data to be filtered."},{name:"condition1",detail:"A column or row containing true or false values corresponding to the first column or row of `range`, or an array formula evaluating to true or false."},{name:"condition2",detail:"Additional rows or columns containing boolean values `TRUE` or `FALSE` indicating whether the corresponding row or column in `range` should pass through `FILTER`. Can also contain array formula expressions which evaluate to such rows or columns. All conditions must be of the same type (row or column). Mixing row conditions and column conditions is not permitted."}]},UNIQUE:{d:"Returns unique rows in the provided source range, discarding duplicates. Rows are returned in the order in which they first appear in the source range.",a:"Unique rows in the provided source range.",p:[{name:"range",detail:"The data to filter by unique entries."},{name:"by_col",detail:"[Option] - Logical value, indicating how to compare; by row = FALSE() or omitted; by column = TRUE()."},{name:"occurs_once",detail:"[Option] - Logical value, only one occurrence in the unique value is returned = TRUE(); including all unique values = FALSE() or omitted."}]},RANDARRAY:{d:"Returns a grid of random numbers between 0 inclusive and 1 exclusive. The grid size will match the provided rows and columns arguments. If neither rows nor columns are provided, then the grid will be size 1 x 1.",a:"Returns a grid of random numbers.",p:[{name:"rows",detail:"The number of rows to populate with a random number."},{name:"columns",detail:"The number of columns to populate with a random number."}]},SEQUENCE:{d:"Returns a grid of sequential numbers starting at a specified start value and increasing by a specified step size. By default, the sequence starts at and increases by 1.",a:"Returns a grid of sequential numbers.",p:[{name:"rows",detail:"The number of rows in the function's resulting grid."},{name:"columns",detail:"The number of columns in the function's resulting grid. If omitted, the result grid will have 1 column."},{name:"start",detail:"The number, at which to start the sequence. If omitted, the sequence will start at 1."},{name:"step",detail:"The amount each value in the sequence will differ by. If omitted, each value will differ by 1."}]},EVALUATE:{d:"Evaluate a formula or expression expressed in words and return the result",a:"Evaluate according to literal formula or expression.",p:[{name:"expression",detail:"Formula or expression"}]},REMOTE:{d:"Calls a function on a remote server",a:"Calls a function on a remote back end server/API.",p:[{name:"remote_expression",detail:"Formula"}]}},toolbar:{undo:"Undo",redo:"Redo",paintFormat:"Paint format",currencyFormat:"Format as currency",percentageFormat:"Format as percent",numberDecrease:"Decrease decimal places",numberIncrease:"Increase decimal places",moreFormats:"More formats",font:"Font",fontSize:"Font size",bold:"Bold (Ctrl+B)",italic:"Italic (Ctrl+I)",strikethrough:"Strikethrough (Alt+Shift+5)",underline:"Underline",textColor:"Text color",chooseColor:"choose color",resetColor:"Reset",customColor:"CUSTOM",alternatingColors:"Alternating colors",confirmColor:"OK",cancelColor:"Cancel",collapse:"Collapse",fillColor:"Fill color",border:"Border",borderStyle:"Border style",mergeCell:"Merge cells",chooseMergeType:"Choose merge type",horizontalAlign:"Horizontal align",verticalAlign:"Vertical align",alignment:"Alignment",textWrap:"Text wrap",textWrapMode:"Text wrap mode",textRotate:"Text rotate",textRotateMode:"Text rotate mode",freezeTopRow:"Freeze first row",sortAndFilter:"Sort and filter",findAndReplace:"Find and replace",sum:"SUM",autoSum:"Auto SUM",moreFunction:"More functions",conditionalFormat:"Conditional format",postil:"Comment",pivotTable:"Pivot Table",chart:"Chart",screenshot:"Screenshot",splitColumn:"Split text",insertImage:"Insert image",exportXlsx:"Export Xlsx",insertLink:"Insert link",dataVerification:"Data verification",protection:"Protect the sheet",clearText:"Clear color",noColorSelectedText:"No color is selected",toolMore:"More",toolLess:"Less",toolClose:"Close",toolMoreTip:"More features",moreOptions:"More options",cellFormat:"Cell format config",print:"Print"},alternatingColors:{applyRange:"Apply to range",selectRange:"Select a data range",header:"Header",footer:"Footer",errorInfo:"Cannot perform this operation on multiple selection areas, please select a single area and try again",textTitle:"Format style",custom:"CUSTOM",close:"close",selectionTextColor:"Click to select text color",selectionCellColor:"Click to select cell color",removeColor:"Remove alternating colors",colorShow:"color",currentColor:"Current",tipSelectRange:"Please select the range of alternating colors",errorNoRange:"No range is selected",errorExistColors:"Alternating colors already exist and cannot be edited"},button:{confirm:"OK",cancel:"Cancel",close:"Close",update:"Update",delete:"Delete",insert:"Insert",prevPage:"Previous",nextPage:"Next",total:"total:"},paint:{start:"Paint format start",end:"ESC",tipSelectRange:"Please select the range to be copied",tipNotMulti:"Cannot perform this operation on multiple selection ranges"},format:{moreCurrency:"More currency formats",moreDateTime:"More date and time formats",moreNumber:"More number formats",titleCurrency:"Currency formats",decimalPlaces:"Decimal places",titleDateTime:"Date and time formats",titleNumber:"Number formats"},info:{detailUpdate:"New opened",detailSave:"Local cache restored",row:"",column:"",loading:"Loading...",copy:"Copy",return:"Exit",rename:"Rename",tips:"WorkBook rename",noName:"Untitled spreadsheet",wait:"waiting for update",add:"Add",addLast:"more rows at bottom",backTop:"Back to the top",pageInfo:"Total ${total}\uFF0C${totalPage} page\uFF0Ccurrent ${currentPage}",nextPage:"Next",tipInputNumber:"Please enter the number",tipInputNumberLimit:"The increase range is limited to 1-100",tipRowHeightLimit:"Row height must be between 0 ~ 545",tipColumnWidthLimit:"The column width must be between 0 ~ 2038",pageInfoFull:"Total ${total}\uFF0C${totalPage} page\uFF0CAll data displayed"},currencyDetail:{RMB:"RMB",USdollar:"US dollar",EUR:"EUR",GBP:"GBP",HK:"HK",JPY:"JPY",AlbanianLek:"Albanian Lek",AlgerianDinar:"Algerian Dinar",Afghani:"Afghani",ArgentinePeso:"Argentine Peso",UnitedArabEmiratesDirham:"United Arab Emirates Dirham",ArubanFlorin:"Aruban Florin",OmaniRial:"Omani Rial",Azerbaijanimanat:"Azerbaijani manat",EgyptianPound:"Egyptian Pound",EthiopianBirr:"Ethiopian Birr",AngolaKwanza:"Angola Kwanza",AustralianDollar:"Australian Dollar",Patacas:"Patacas",BarbadosDollar:"Barbados Dollar",PapuaNewGuineaKina:"Papua New Guinea Kina",BahamianDollar:"Bahamian Dollar",PakistanRupee:"Pakistan Rupee",ParaguayanGuarani:"Paraguayan Guarani",BahrainiDinar:"Bahraini Dinar",PanamanianBalboa:"Panamanian Balboa",Brazilianreal:"Brazilian real",Belarusianruble:"Belarusian ruble",BermudianDollar:"Bermudian Dollar",BulgarianLev:"Bulgarian Lev",IcelandKrona:"Iceland Krona",BosniaHerzegovinaConvertibleMark:"Bosnia-Herzegovina Convertible Mark",PolishZloty:"Polish Zloty",Boliviano:"Boliviano",BelizeDollar:"Belize Dollar",BotswanaPula:"Botswana Pula",NotDannuzhamu:"Not Dannuzhamu",BurundiFranc:"Burundi Franc",NorthKoreanWon:"North Korean Won",DanishKrone:"Danish Krone",EastCaribbeanDollar:"East Caribbean Dollar",DominicaPeso:"Dominica Peso",RussianRuble:"Russian Ruble",EritreanNakfa:"Eritrean Nakfa",CFAfranc:"CFA franc",PhilippinePeso:"Philippine Peso",FijiDollar:"Fiji Dollar",CapeVerdeEscudo:"Cape Verde Escudo",FalklandIslandsPound:"Falkland Islands Pound",GambianDalasi:"Gambian Dalasi",Congolesefranc:"Congolese franc",ColombianPeso:"Colombian Peso",CostaRicanColon:"Costa Rican Colon",CubanPeso:"Cuban Peso",Cubanconvertiblepeso:"Cuban convertible peso",GuyanaDollar:"Guyana Dollar",KazakhstanTenge:"Kazakhstan Tenge",Haitiangourde:"Haitian gourde",won:"won",NetherlandsAntillesGuilder:"Netherlands Antilles Guilder",Honduraslempiras:"Honduras lempiras",DjiboutiFranc:"Djibouti Franc",KyrgyzstanSom:"Kyrgyzstan Som",GuineaFranc:"Guinea Franc",CanadianDollar:"Canadian Dollar",GhanaianCedi:"Ghanaian Cedi",Cambodianriel:"Cambodian riel",CzechKoruna:"Czech Koruna",ZimbabweDollar:"Zimbabwe Dollar",QatariRiyal:"Qatari Riyal",CaymanIslandsDollar:"Cayman Islands Dollar",Comorianfranc:"Comorian franc",KuwaitiDinar:"Kuwaiti Dinar",CroatianKuna:"Croatian Kuna",KenyanShilling:"Kenyan Shilling",LesothoLoti:"Lesotho Loti",LaoKip:"Lao Kip",LebanesePound:"Lebanese Pound",Lithuanianlitas:"Lithuanian litas",LibyanDinar:"Libyan Dinar",LiberianDollar:"Liberian Dollar",RwandaFranc:"Rwanda Franc",RomanianLeu:"Romanian Leu",MalagasyAriary:"Malagasy Ariary",MaldivianRufiyaa:"Maldivian Rufiyaa",MalawiKwacha:"Malawi Kwacha",MalaysianRinggit:"Malaysian Ringgit",MacedoniawearingDinar:"Macedonia wearing Dinar",MauritiusRupee:"Mauritius Rupee",MauritanianOuguiya:"Mauritanian Ouguiya",MongolianTugrik:"Mongolian Tugrik",BangladeshiTaka:"Bangladeshi Taka",PeruvianNuevoSol:"Peruvian Nuevo Sol",MyanmarKyat:"Myanmar Kyat",MoldovanLeu:"Moldovan Leu",MoroccanDirham:"Moroccan Dirham",MozambiqueMetical:"Mozambique Metical",MexicanPeso:"Mexican Peso",NamibianDollar:"Namibian Dollar",SouthAfricanRand:"South African Rand",SouthSudanesePound:"South Sudanese Pound",NicaraguaCordoba:"Nicaragua Cordoba",NepaleseRupee:"Nepalese Rupee",NigerianNaira:"Nigerian Naira",NorwegianKrone:"Norwegian Krone",GeorgianLari:"Georgian Lari",RMBOffshore:"RMB (Offshore)",SwedishKrona:"Swedish Krona",SwissFranc:"Swiss Franc",SerbianDinar:"Serbian Dinar",SierraLeone:"Sierra Leone",SeychellesRupee:"Seychelles Rupee",SaudiRiyal:"Saudi Riyal",SaoTomeDobra:"Sao Tome Dobra",SaintHelenapound:"Saint Helena pound",SriLankaRupee:"Sri Lanka Rupee",SwazilandLilangeni:"Swaziland Lilangeni",SudanesePound:"Sudanese Pound",Surinamesedollar:"Surinamese dollar",SolomonIslandsDollar:"Solomon Islands Dollar",SomaliShilling:"Somali Shilling",TajikistanSomoni:"Tajikistan Somoni",PacificFranc:"Pacific Franc",ThaiBaht:"Thai Baht",TanzanianShilling:"Tanzanian Shilling",TonganPaanga:"Tongan Pa'anga",TrinidadandTobagoDollar:"Trinidad and Tobago Dollar",TunisianDinar:"Tunisian Dinar",TurkishLira:"Turkish Lira",VanuatuVatu:"Vanuatu Vatu",GuatemalanQuetzal:"Guatemalan Quetzal",CommissionBolivar:"Commission Bolivar",BruneiDollar:"Brunei Dollar",UgandanShilling:"Ugandan Shilling",UkrainianHryvnia:"Ukrainian Hryvnia",UruguayanPeso:"Uruguayan Peso",Uzbekistansom:"Uzbekistan som",WesternSamoaTala:"Western Samoa Tala",SingaporeDollar:"Singapore Dollar",NT:"NT",NewZealandDollar:"New Zealand Dollar",HungarianForint:"Hungarian Forint",SyrianPound:"Syrian Pound",JamaicanDollar:"Jamaican Dollar",ArmenianDram:"Armenian Dram",YemeniRial:"Yemeni Rial",IraqiDinar:"Iraqi Dinar",IranianRial:"Iranian Rial",NewIsraeliShekel:"New Israeli Shekel",IndianRupee:"Indian Rupee",IndonesianRupiah:"Indonesian Rupiah",JordanianDinar:"Jordanian Dinar",VND:"VND",ZambianKwacha:"Zambian Kwacha",GibraltarPound:"Gibraltar Pound",ChileanPeso:"Chilean Peso",CFAFrancBEAC:"CFA Franc BEAC"},defaultFmt:[{text:"Automatic",value:"General",example:""},{text:"Plain text",value:"@",example:""},{text:"",value:"split",example:""},{text:"Number",value:"##0.00",example:"1000.12"},{text:"Percent",value:"#0.00%",example:"12.21%"},{text:"Scientific",value:"0.00E+00",example:"1.01E+5"},{text:"",value:"split",example:""},{text:"Accounting",value:"\xA5(0.00)",example:"\xA5(1200.09)"},{text:"Currency",value:"\xA50.00",example:"\xA51200.09"},{text:"",value:"split",example:""},{text:"Date",value:"yyyy-MM-dd",example:"2017-11-29"},{text:"Time",value:"hh:mm AM/PM",example:"3:00 PM"},{text:"Time 24H",value:"hh:mm",example:"15:00"},{text:"Date time",value:"yyyy-MM-dd hh:mm AM/PM",example:"2017-11-29 3:00 PM"},{text:"Date time 24 H",value:"yyyy-MM-dd hh:mm",example:"2017-11-29 15:00"},{text:"",value:"split",example:""},{text:"Custom formats",value:"fmtOtherSelf",example:"more"}],dateFmtList:[{name:"1930-08-05",value:"yyyy-MM-dd"},{name:"1930/8/5",value:"yyyy/MM/dd"},{name:"08-05",value:"MM-dd"},{name:"8-5",value:"M-d"},{name:"13:30:30",value:"h:mm:ss"},{name:"13:30",value:"h:mm"},{name:"PM 01:30",value:"AM/PM hh:mm"},{name:"PM 1:30",value:"AM/PM h:mm"},{name:"PM 1:30:30",value:"AM/PM h:mm:ss"},{name:"08-05 PM 01:30",value:"MM-dd AM/PM hh:mm"}],fontFamily:{MicrosoftYaHei:"YaHei"},fontarray:["Times New Roman","Arial","Tahoma","Verdana"],fontjson:{"times new roman":0,arial:1,tahoma:2,verdana:3},border:{borderTop:"borderTop",borderBottom:"borderBottom",borderLeft:"borderLeft",borderRight:"borderRight",borderNone:"borderNone",borderAll:"borderAll",borderOutside:"borderOutside",borderInside:"borderInside",borderHorizontal:"borderHorizontal",borderVertical:"borderVertical",borderColor:"borderColor",borderSize:"borderSize"},merge:{mergeAll:"Merge all",mergeV:"Vertically",mergeH:"Horizontally",mergeCancel:"Unmerge",overlappingError:"Cannot merge overlapping areas",partiallyError:"Cannot perform this operation on partially merged cells"},align:{left:"left",center:"center",right:"right",top:"Top",middle:"Middle",bottom:"Bottom"},textWrap:{overflow:"Overflow",wrap:"Wrap",clip:"Clip"},rotation:{none:"None",angleup:"Tilt Up",angledown:"Tilt Down",vertical:"Stack Vertically",rotationUp:"Rotate Up",rotationDown:"Rotate Down"},freezen:{default:"Freeze",freezenRow:"First Row",freezenColumn:"First Column",freezenRC:"Both",freezenRowRange:"Freezen row range",freezenColumnRange:"Freezen column range",freezenRCRange:"Freezen both range",freezenCancel:"Cancel",noSeletionError:"No Range to be selected",rangeRCOverErrorTitle:"Freeze reminder",rangeRCOverError:"The frozen pane is beyond the visible range, which will lead to abnormal operation. Please reset the frozen area."},sort:{asc:"Ascending ",desc:"Descending ",custom:"Custom sort",hasTitle:"Data has a header row",sortBy:"Sort by",addOthers:"Add another sort column",close:"close",confirm:"sort",columnOperation:"Column",secondaryTitle:"then by",sortTitle:"Sort range",sortRangeTitle:"Sort range from",sortRangeTitleTo:"to",noRangeError:"Cannot perform this operation on multiple selection areas, please select a single range and try again",mergeError:"There are merged cells in the selection, this operation cannot be performed!",columnSortMergeError:"Column sorting will extend to the entire table selection. There are merged cells, this operation cannot be performed. Please use the sort feature in the toolbar."},filter:{filter:"create filter",sortByAsc:"Sort A-Z",sortByDesc:"Sort Z-A",filterByColor:"Filter by color",filterByCondition:"Filter by condition",filterByValues:"Filter by values",filiterInputNone:"None",filiterInputTip:"Enter filter value",filiterRangeStart:"",filiterRangeStartTip:"Value for formula",filiterRangeEnd:"and",filiterRangeEndTip:"Value for formula",filterValueByAllBtn:"Check all",filterValueByClearBtn:"Clear",filterValueByInverseBtn:"Inverse",filterValueByTip:"filter By Values",filterConform:"Confirm",filterCancel:"Cancel",clearFilter:"Clear filter",conditionNone:"None",conditionCellIsNull:"Is empty",conditionCellNotNull:"Is not empty",conditionCellTextContain:"Text contains",conditionCellTextNotContain:"Text does not contain",conditionCellTextStart:"Text starts with",conditionCellTextEnd:"Text ends with",conditionCellTextEqual:"Text is exactly",conditionCellDateEqual:"Date is",conditionCellDateBefore:"Date is before",conditionCellDateAfter:"Date is after",conditionCellGreater:"Greater than",conditionCellGreaterEqual:"Greater than or equal to",conditionCellLess:"Less than",conditionCellLessEqual:"Less than or equal to",conditionCellEqual:"Is equal to",conditionCellNotEqual:"Is not equal to",conditionCellBetween:"Is between",conditionCellNotBetween:"Is not between",filiterMoreDataTip:"Big amount of data! please wait",filiterMonthText:"Month",filiterYearText:"Year",filiterByColorTip:"Filter by cell color",filiterByTextColorTip:"Filter by font color",filterContainerOneColorTip:"This column contains only one color",filterDateFormatTip:"Date format",valueBlank:"(Null)",mergeError:"There are merged cells in the filter selection, this operation cannot be performed!"},rightclick:{copy:"Copy",copyAs:"Copy as",paste:"Paste",insert:"Insert",delete:"Delete",deleteCell:"Delete cell",deleteSelected:"Delete selected ",hide:"Hide",hideSelected:"Hide selected ",showHide:"Show hidden ",to:"Towards",left:"Left",right:"Right",top:"Top",bottom:"Bottom",moveLeft:"Move left",moveUp:"Move up",add:"Add",row:"Row",column:"Column",width:"Width",height:"Height",number:"Number",confirm:"Confirm",orderAZ:"A-Z order",orderZA:"Z-A order",clearContent:"Clear content",matrix:"Matrix operation",sortSelection:"Sort",filterSelection:"Filter",chartGeneration:"Create chart",firstLineTitle:"first line title",untitled:"untitled",array1:"One-dimensional array",array2:"Two-dimensional array",array3:"Multidimensional Arrays",diagonal:"Diagonal",antiDiagonal:"Anti-diagonal",diagonalOffset:"Diagonal offset",offset:"Offset",boolean:"Boolean",flip:"Flip",upAndDown:"Up and down",leftAndRight:"Left and right",clockwise:"Clockwise",counterclockwise:"Counterclockwise",transpose:"Transpose",matrixCalculation:"Matrix calculation",plus:"Plus",minus:"Minus",multiply:"Multiply",divided:"Divided",power:"Power",root:"Root",log:"Log",delete0:"Delete 0 values at both ends",removeDuplicate:"Remove duplicate values",byRow:"By row",byCol:"By column",generateNewMatrix:"Generate new matrix"},comment:{insert:"Insert",edit:"Edit",delete:"Delete",showOne:"Show/Hide",showAll:"Show/Hide All"},screenshot:{screenshotTipNoSelection:"Please select the scope of the screenshot",screenshotTipTitle:"Warning\uFF01",screenshotTipHasMerge:"This operation cannot be performed on merged cells",screenshotTipHasMulti:"This operation cannot be performed on multiple selection regions",screenshotTipSuccess:"Successful",screenshotImageName:"Screenshot",downLoadClose:"Close",downLoadCopy:"Copy to clipboard",downLoadBtn:"Download",browserNotTip:"not supported by IE browser!",rightclickTip:'Please right-click "copy" on the picture',successTip:'Successfully (if pasting fails, please right-click on the image to "copy image")'},splitText:{splitDelimiters:"Delimiters",splitOther:"Other",splitContinueSymbol:"Consecutive separators are treated as a single",splitDataPreview:"Preview",splitTextTitle:"Split text",splitConfirmToExe:"There is already data here, do you want to replace it?",tipNoMulti:"Cannot perform this operation on multiple selection areas, please select a single area and try again",tipNoMultiColumn:"Only one column of data can be converted at a time. The selected area can have multiple rows but not multiple columns. Please try again after selecting a single column range"},imageText:{imageSetting:"Image setting",close:"Close",conventional:"Conventional",moveCell1:"Move and resize cells",moveCell2:"Move and do not resize the cell",moveCell3:"Do not move and resize the cell",fixedPos:"Fixed position",border:"Border",width:"Width",radius:"Radius",style:"Style",solid:"Solid",dashed:"Dashed",dotted:"Dotted",double:"Double",color:"Color"},punctuation:{tab:"Tab",semicolon:"semicolon",comma:"comma",space:"space"},findAndReplace:{find:"Find",replace:"Replace",goto:"Go to",location:"Location",formula:"Formula",date:"Date",number:"Number",string:"String",error:"Error",condition:"Condition",rowSpan:"Row span",columnSpan:"Column span",locationExample:"Location",lessTwoRowTip:"Please select at least two rows",lessTwoColumnTip:"Please select at least two columns",findTextbox:"Find Content",replaceTextbox:"Replace Content",regexTextbox:"Regular Expression",wholeTextbox:"Whole word",distinguishTextbox:"Case sensitive",allReplaceBtn:"Replace All",replaceBtn:"Replace",allFindBtn:"Find All",findBtn:"Find next",noFindTip:"The content was not found",modeTip:"This operation is not available in this mode",searchTargetSheet:"Sheet",searchTargetCell:"Cell",searchTargetValue:"Value",searchInputTip:"Please enter the search content",noReplceTip:"There is nothing to replace",noMatchTip:"No match found",successTip:"${xlength} items found",locationConstant:"Constant",locationFormula:"Formula",locationDate:"Date",locationDigital:"Number",locationString:"String",locationBool:"Logical",locationError:"Error",locationNull:"Null",locationCondition:"Conditional format",locationRowSpan:"Row span",locationColumnSpan:"Column span",locationTiplessTwoRow:"Please select at least two rows",locationTiplessTwoColumn:"Please select at least two columns",locationTipNotFindCell:"Cell not found"},sheetconfig:{delete:"Delete",copy:"Copy",rename:"Rename",changeColor:"Change color",hide:"Hide",unhide:"Unhide",moveLeft:"Move left",moveRight:"Move right",resetColor:"Reset color",cancelText:"Cancel",chooseText:"Confirm color",tipNameRepeat:"The name of the tab page cannot be repeated! Please revise",noMoreSheet:"The workbook contains at least one visual worksheet. To delete the selected worksheet, please insert a new worksheet or show a hidden worksheet.",confirmDelete:"Are you sure to delete",redoDelete:"Can be undo by Ctrl+Z",noHide:"Can't hide, at least keep one sheet tag",chartEditNoOpt:"This operation is not allowed in chart editing mode!",sheetNameSpecCharError:`The name cannot contain:[ ] : ? * / ' "`,sheetNamecannotIsEmptyError:"Sheet name cannot be empty"},conditionformat:{conditionformat_greaterThan:"Conditionformat-GreaterThan",conditionformat_greaterThan_title:"Format cells greater than",conditionformat_lessThan:"Conditionformat-LessThan",conditionformat_lessThan_title:"Format cells smaller than",conditionformat_betweenness:"Conditionformat-Betweenness",conditionformat_betweenness_title:"Format cells with values between",conditionformat_equal:"Conditionformat-Equal",conditionformat_equal_title:"Format cells equal to",conditionformat_textContains:"Conditionformat-TextContains",conditionformat_textContains_title:"Format cells containing the following text",conditionformat_occurrenceDate:"Conditionformat-OccurrenceDate",conditionformat_occurrenceDate_title:"Format cells containing the following dates",conditionformat_duplicateValue:"Conditionformat-DuplicateValue",conditionformat_duplicateValue_title:"Format cells containing the following types of values",conditionformat_top10:"Conditionformat-Top10",conditionformat_top10_percent:"Conditionformat-Top10%",conditionformat_top10_title:"Format the cells with the highest value",conditionformat_last10:"Conditionformat-Last10",conditionformat_last10_percent:"Conditionformat-Last10%",conditionformat_last10_title:"Format the cells with the smallest value",conditionformat_AboveAverage:"Conditionformat-AboveAverage",conditionformat_AboveAverage_title:"Format cells above average",conditionformat_SubAverage:"Conditionformat-SubAverage",conditionformat_SubAverage_title:"Format cells below average",rule:"Rule",newRule:"New rule",editRule:"Edit rule",deleteRule:"Delete rule",deleteCellRule:"Delete cell rule",deleteSheetRule:"Delete sheet rule",manageRules:"Management rules",showRules:"Show its formatting rules",highlightCellRules:"Highlight cell rules",itemSelectionRules:"Item selection rules",conditionformatManageRules:"Conditional Formatting Rule Manager",format:"Format",setFormat:"Set format",setAs:"Set as",setAsByArea:"For the selected area, set to",applyRange:"Apply range",selectRange:"Select application range",selectRange_percent:"Percentage of selected range",selectRange_average:"Average value of selected range",selectRange_value:"Value in the selected range",pleaseSelectRange:"Please select application range",selectDataRange:"Select data range",selectCell:"select cell",pleaseSelectCell:"Please select cell",pleaseSelectADate:"Please select a date",pleaseEnterInteger:"Please enter an integer between 1 and 1000",onlySingleCell:"Only a single cell can be referenced",conditionValueCanOnly:"The condition value can only be a number or a single cell",ruleTypeItem1:"Format all cells based on their respective values",ruleTypeItem2:"Only format cells that contain",ruleTypeItem2_title:"Only for cells that meet the following conditions",ruleTypeItem3:"Format only the top or bottom numbers",ruleTypeItem3_title:"Is the value in the following ranking",ruleTypeItem4:"Format only values above or below the average",ruleTypeItem4_title:"Is a value that satisfies the following conditions",ruleTypeItem5:"Format only unique or repeated values",ruleTypeItem6:"Use formulas to determine which cells to format",formula:"Formula",textColor:"Text color",cellColor:"Cell color",confirm:"Confirm",confirmColor:"Confirm color",cancel:"Cancel",close:"Close",clearColorSelect:"Clear color select",sheet:"Sheet",currentSheet:"Current Sheet",dataBar:"data bar",dataBarColor:"data bar color",gradientDataBar_1:"Blue-white gradient data bar",gradientDataBar_2:"Green-white gradient data bar",gradientDataBar_3:"Red-white gradient data bar",gradientDataBar_4:"Orange-white gradient stripes",gradientDataBar_5:"Light blue-white gradient stripes",gradientDataBar_6:"Purple-white gradient data bar",solidColorDataBar_1:"Blue data bar",solidColorDataBar_2:"Green data bar",solidColorDataBar_3:"Red data bar",solidColorDataBar_4:"Orange data bar",solidColorDataBar_5:"Light blue data bar",solidColorDataBar_6:"Purple data bar",colorGradation:"color gradation",colorGradation_1:"Green-yellow-red color gradation",colorGradation_2:"Red-yellow-green color gradation",colorGradation_3:"Green-white-red color gradation",colorGradation_4:"Red-white-green color gradation",colorGradation_5:"Blue-white-red color gradation",colorGradation_6:"Red-white-blue color gradation",colorGradation_7:"White-red color gradation",colorGradation_8:"Red-white color gradation",colorGradation_9:"Green-white color gradation",colorGradation_10:"White-green color gradation",colorGradation_11:"Green-yellow color gradation",colorGradation_12:"Yellow-green color gradation",icons:"icons",pleaseSelectIcon:"Please click to select a group of icons:",cellValue:"Cell value",specificText:"Specific text",occurrence:"Date",greaterThan:"Greater than",lessThan:"Less than",between:"Between",equal:"Equal",in:"In",between2:"",contain:"Contain",textContains:"Text contains",duplicateValue:"Duplicate value",uniqueValue:"Unique value",top:"Top",top10:"Top 10",top10_percent:"Top 10%",last:"Last",last10:"Last 10",last10_percent:"Last 10%",oneself:"",above:"Above",aboveAverage:"Above average",below:"Below",belowAverage:"Below average",all:"All",yesterday:"YTD",today:"Today",tomorrow:"Tomorrow",lastWeek:"Last week",thisWeek:"This week",lastMonth:"Last month",thisMonth:"This month",lastYear:"Last year",thisYear:"This year",last7days:"Last 7 days",last30days:"Last 30 days",next7days:"Next 7 days",next30days:"Next 30 days",next60days:"Next 60 days",chooseRuleType:"Choose rule type",editRuleDescription:"Edit rule description",newFormatRule:"New format rule",editFormatRule:"Edit format rule",formatStyle:"Style",fillType:"Fill",color:"Color",twocolor:"Two-color",tricolor:"Tricolor",multicolor:"Multi color",grayColor:"Gray color",gradient:"Gradient",solid:"Solid",maxValue:"Max value",medianValue:"Median value",minValue:"Min value",direction:"Direction",threeWayArrow:"Three-way arrow",fourWayArrow:"Four-way arrow",fiveWayArrow:"Five-way arrow",threeTriangles:"Three triangles",shape:"Shape",threeColorTrafficLight:"Three-color traffic light",fourColorTrafficLight:"Four-color traffic light",threeSigns:"Three signs",greenRedBlackGradient:"Green-red-black gradient",rimless:"Rimless",bordered:"Bordered",mark:"Mark",threeSymbols:"Three symbols",tricolorFlag:"Tricolor flag",circled:"Circled",noCircle:"No circle",grade:"Grade",grade4:"4 Grade",grade5:"5 Grade",threeStars:"3 Stars",fiveQuadrantDiagram:"Five-quadrant diagram",fiveBoxes:"5 Boxes"},insertLink:{linkText:"Text",linkType:"Link type",external:"External link",internal:"Internal link",linkAddress:"Link address",linkSheet:"Worksheet",linkCell:"Cell reference",linkTooltip:"Tooltip",placeholder1:"Please enter the web link address",placeholder2:"Please enter the cell to be quoted, example A1",placeholder3:"Please enter the prompt content",tooltipInfo1:"Please enter a valid link",tooltipInfo2:"Please enter the correct cell reference"},dataVerification:{cellRange:"Cell range",selectCellRange:"Click to select a cell range",selectCellRange2:"Please select a range of cells",verificationCondition:"Verification condition",allowMultiSelect:"Allow multiple selection",dropdown:"drop-down list",checkbox:"Checkbox",number:"Number",number_integer:"Number-integer",number_decimal:"Number-decimal",text_content:"Text-content",text_length:"Text-length",date:"Date",validity:"Effectiveness",placeholder1:"Please enter the options, separated by commas, such as 1,2,3,4,5",placeholder2:"Please enter content",placeholder3:"Numeric value, such as 10",placeholder4:"Please enter the specified text",placeholder5:"Please enter the prompt displayed when the cell is selected",selected:"Selected",notSelected:"Not selected",between:"Between",notBetween:"Not between",equal:"Equal",notEqualTo:"Not equal to",moreThanThe:"More than the",lessThan:"Less than",greaterOrEqualTo:"Greater or equal to",lessThanOrEqualTo:"Less than or equal to",include:"Include",exclude:"Exclude",earlierThan:"Earlier than",noEarlierThan:"No earlier than",laterThan:"Later than",noLaterThan:"No later than",identificationNumber:"Identification number",phoneNumber:"Phone number",remote:"Automatic remote acquisition option",prohibitInput:"Prohibit input when input data is invalid",hintShow:"Show prompt when the cell is selected",deleteVerification:"Delete verification",tooltipInfo1:"The drop-down list option cannot be empty",tooltipInfo2:"Checkbox content cannot be empty",tooltipInfo3:"The value entered is not a numeric type",tooltipInfo4:"The value 2 cannot be less than the value 1",tooltipInfo5:"The text content cannot be empty",tooltipInfo6:"The value entered is not a date type",tooltipInfo7:"Date 2 cannot be less than date 1",textlengthInteger:"Text length must be an integer greater than or equal to 0"},formula:{sum:"Sum",average:"Average",count:"Count",max:"Max",min:"Min",ifGenerate:"If formula generator",find:"Learn more",tipNotBelongToIf:"This cell function does not belong to the if formula!",tipSelectCell:"Please select the cell to insert the function",ifGenCompareValueTitle:"Comparison value",ifGenSelectCellTitle:"Click to select cell",ifGenRangeTitle:"Range",ifGenRangeTo:"to",ifGenRangeEvaluate:"Range evaluate",ifGenSelectRangeTitle:"Click to select range",ifGenCutWay:"Partition way",ifGenCutSame:"Same Partition value",ifGenCutNpiece:"Partition by N",ifGenCutCustom:"Custom",ifGenCutConfirm:"Confirm",ifGenTipSelectCell:"Select cells",ifGenTipSelectCellPlace:"Please select cells",ifGenTipSelectRange:"Select range",ifGenTipSelectRangePlace:"Please select range",ifGenTipNotNullValue:"The comparison value cannot be empty!",ifGenTipLableTitile:"Label",ifGenTipRangeNotforNull:"The range cannot be empty!",ifGenTipCutValueNotforNull:"The partition value cannot be empty!",ifGenTipNotGenCondition:"No conditions are available for generation!"},formulaMore:{valueTitle:"Value",tipSelectDataRange:"Select data range",tipDataRangeTile:"Data range",findFunctionTitle:"Search function",tipInputFunctionName:"Function name or brief description of function",Array:"Array",Database:"Database",Date:"Date",Engineering:"Engineering",Filter:"Filter",Financial:"Financial",luckysheet:"Luckysheet",other:"Other",Logical:"Logical",Lookup:"Lookup",Math:"Math",Operator:"Operator",Parser:"Parser",Statistical:"Statistical",Text:"Text",dataMining:"Data Mining",selectFunctionTitle:"Select a function",calculationResult:"Result",tipSuccessText:"Success",tipParamErrorText:"Parameter type error",helpClose:"Close",helpCollapse:"Collapse",helpExample:"Example",helpAbstract:"Abstract",execfunctionError:"Error in the formula",execfunctionSelfError:"The formula cannot refer to its own cell",execfunctionSelfErrorResult:"The formula cannot refer to its own cell, which will lead to inaccurate calculation results",allowRepeatText:"Repeat",allowOptionText:"Option",selectCategory:"Or select a category"},drag:{noMerge:"Cannot perform this operation on merged cells",affectPivot:"This change cannot be made to the selected cell because it will affect the pivot table!",noMulti:"Cannot perform this operation on multiple selection areas, please select a single area",noPaste:"Unable to paste this content here, please select a cell in the paste area and try to paste again",noPartMerge:"Cannot perform this operation on partially merged cells",inputCorrect:"Please enter the correct value",notLessOne:"The number of rows and columns cannot be less than 1",offsetColumnLessZero:"The offset column cannot be negative!",pasteMustKeybordAlert:"Copy and paste in the Sheet: Ctrl + C to copy, Ctrl + V to paste, Ctrl + X to cut",pasteMustKeybordAlertHTMLTitle:"Copy and paste in the Sheet",pasteMustKeybordAlertHTML:"Ctrl + C  to copy
Ctrl + V  to paste
Ctrl + X  to cut"},paste:{warning:"Warning",errorNotAllowMulti:"Cannot perform this operation on multiple selection areas, please select a single range and try again",errorNotAllowMerged:"Cannot make partial changes to merged cells"},pivotTable:{title:"Pivot Table",closePannel:"Close",editRange:"Range",tipPivotFieldSelected:"Select the fields",tipClearSelectedField:"Clear all fields",btnClearSelectedField:"Clear",btnFilter:"Filter",titleRow:"Row",titleColumn:"Column",titleValue:"Value",tipShowColumn:"Statistics fields are displayed as columns",tipShowRow:"Statistics fields are displayed as rows",titleSelectionDataRange:"Select range",titleDataRange:"Data range",valueSum:"SUM",valueStatisticsSUM:"Sum",valueStatisticsCOUNT:"Count",valueStatisticsCOUNTA:"Count A",valueStatisticsCOUNTUNIQUE:"Count Unique",valueStatisticsAVERAGE:"Average",valueStatisticsMAX:"Max",valueStatisticsMIN:"Min",valueStatisticsMEDIAN:"Median",valueStatisticsPRODUCT:"Product",valueStatisticsSTDEV:"Stdev",valueStatisticsSTDEVP:"Stdevp",valueStatisticslet:"Var",valueStatisticsVARP:"VarP",errorNotAllowEdit:"This operation is prohibited in non-editing mode!",errorNotAllowMulti:"Cannot perform this operation on multiple selection areas, please select a single range and try again",errorSelectRange:"Please select the range of the new pivot table",errorIsDamage:"The source data of this pivot table is corrupted!",errorNotAllowPivotData:"Cannot select pivot table as source data!",errorSelectionRange:"Selection failed, wrong input range!",errorIncreaseRange:"Please expand the selected range!",titleAddColumn:"Add column to pivot table",titleMoveColumn:"Move the column to the white box below",titleClearColumnFilter:"Clear the filter for this column",titleFilterColumn:"Filter",titleSort:"Sort",titleNoSort:"No sort",titleSortAsc:"ASC",titleSortDesc:"DESC",titleSortBy:"Sort by",titleShowSum:"Show total",titleStasticTrue:"Yes",titleStasticFalse:"No"},dropCell:{copyCell:"Copy",sequence:"Sequence",onlyFormat:"Only format",noFormat:"Not format",day:"Day",workDay:"Work Day",month:"Month",year:"Year",chineseNumber:"Chinese numbers"},imageCtrl:{borderTile:"Image border color",borderCur:"Color"},protection:{protectiontTitle:"Protection",enterPassword:"Enter a password (optional)",enterHintTitle:"Prompt when editing is prohibited (optional)",enterHint:"The cell or chart you are trying to change is in a protected worksheet. If you want to change it, please unprotect the worksheet. You may need to enter a password",swichProtectionTip:"Protect the sheet and contents of locked cells",authorityTitle:"Allow users of this sheet to:",selectLockedCells:"Select locked cells",selectunLockedCells:"Select unlocked cells",formatCells:"Format cells",formatColumns:"Format columns",formatRows:"Format rows",insertColumns:"Insert columns",insertRows:"Insert rows",insertHyperlinks:"Insert hyperlinks",deleteColumns:"Delete columns",deleteRows:"Delete rows",sort:"Sort",filter:"Filter",usePivotTablereports:"Use Pivot Table reports",editObjects:"Edit objects",editScenarios:"Edit scenarios",allowRangeTitle:"Allow users of range to:",allowRangeAdd:"New...",allowRangeAddTitle:"Title",allowRangeAddSqrf:"Reference",selectCellRange:"Click to select a cell range",selectCellRangeHolder:"Cell range",allowRangeAddTitlePassword:"Password",allowRangeAddTitleHint:"Prompt",allowRangeAddTitleHintTitle:"Prompt when a password is set (optional)",allowRangeAddtitleDefault:"Input range name",rangeItemDblclick:"Double click to edit",rangeItemHasPassword:"Has password",rangeItemErrorTitleNull:"Title is null",rangeItemErrorRangeNull:"Reference is null",rangeItemErrorRange:"Reference is error",validationTitle:"Password validation",validationTips:"Need to enter a password to unlock the protection of the worksheet",validationInputHint:"Enter a password",checkPasswordNullalert:"Password is required!",checkPasswordWrongalert:"Incorrect password, please try again!",checkPasswordSucceedalert:"Unlock Succeed!",defaultRangeHintText:"The cell is being password protected.",defaultSheetHintText:"The cell or chart is in a protected worksheet. To make changes, please unprotect the worksheet. You may need to enter a password"},cellFormat:{cellFormatTitle:"Format cells",protection:"Protection",locked:"Locked",hidden:"Hidden",protectionTips:"To lock cells or hide formulas, protect the worksheet. On the toolbar, Click Protect Sheet Button",tipsPart:"Partial checked",tipsAll:"All checked",selectionIsNullAlert:"Selection is required!",sheetDataIsNullAlert:"error, Data is none!"},print:{normalBtn:"Normal",layoutBtn:"Page Layout",pageBtn:"Page\u2002break\u2002preview",menuItemPrint:"Print (Ctrl+P)",menuItemAreas:"Print areas",menuItemRows:"Print title rows",menuItemColumns:"Print title columns",suggest:"Any suggestions for the print function?",range:"Print Range",size:"Paper Size",direction:"Print Direction",horizontal:"Horizontal",vertical:"Vertical",title:"Print Setup",current:"Current Sheet",area:"Selected Range",letter:"letter",paper:"tabloid paper",law:"official paper",admin:"administrative paper",expire:"expired",remain:"remaining days",error:"error",showLine:"show grid line",show:"show",hide:"hide",preview:"preview"},edit:{typing:"typing"},websocket:{success:"WebSocket connection success",refresh:"An error occurred in the WebSocket connection, please refresh the page!",wait:"An error occurred in the WebSocket connection, please be patient!",close:"WebSocket connection closed",contact:"Server communication error occurred, please refresh the page and try again, if not, please contact the administrator!",support:"The current browser does not support WebSocket"},exportXlsx:{notice:"Please configure the export plugin",serverError:"server is under maintenance",title:"Export XLSX",range:"Range",currentSheet:"Current sheet",allSheets:"All sheets"}}});var vu,ku=$e(()=>{vu={functionlist:{SUMIF:{d:"\u5BF9\u8303\u56F4\u4E2D\u7B26\u5408\u6307\u5B9A\u6761\u4EF6\u7684\u503C\u6C42\u548C\u3002",a:"\u5BF9\u8303\u56F4\u4E2D\u7B26\u5408\u6307\u5B9A\u6761\u4EF6\u7684\u503C\u6C42\u548C\u3002",p:[{name:"\u8303\u56F4",detail:"\u8981\u6839\u636E\u6761\u4EF6\u8FDB\u884C\u68C0\u6D4B\u7684\u8303\u56F4\u3002"},{name:"\u6761\u4EF6",detail:`\u8981\u5E94\u7528\u4E8E\u8303\u56F4\u7684\u6A21\u5F0F\u6216\u6D4B\u8BD5\u6761\u4EF6\u3002 + +\u5982\u679C\u8303\u56F4\u5305\u542B\u7684\u662F\u8981\u68C0\u6D4B\u7684\u6587\u672C\uFF0C\u5219\u6761\u4EF6\u5FC5\u987B\u4E3A\u5B57\u7B26\u4E32\u3002\u6761\u4EF6\u53EF\u4EE5\u5305\u542B\u901A\u914D\u7B26\uFF0C\u5305\u62EC\u7528\u4E8E\u5339\u914D\u5355\u4E2A\u5B57\u7B26\u7684?\u6216\u7528\u4E8E\u5339\u914D\u96F6\u4E2A\u6216\u8FDE\u7EED\u591A\u4E2A\u5B57\u7B26\u7684*\u3002\u8981\u5339\u914D\u95EE\u53F7\u661F\u53F7\u672C\u8EAB\uFF0C\u8BF7\u5728\u8BE5\u5B57\u7B26\u524D\u9762\u52A0\u4E0A\u6CE2\u6D6A\u53F7(~)\u524D\u7F00\uFF08\u5373~?\u548C~*\uFF09\u3002\u5B57\u7B26\u4E32\u6761\u4EF6\u5FC5\u987B\u7528\u5F15\u53F7\u62EC\u8D77\u6765\u3002\u51FD\u6570\u4F1A\u68C0\u67E5\u8303\u56F4\u4E2D\u7684\u6BCF\u4E2A\u5355\u5143\u683C\u4E0E\u6761\u4EF6\u662F\u5426\u76F8\u7B49\u6216\u5339\u914D\uFF08\u5982\u679C\u4F7F\u7528\u4E86\u901A\u914D\u7B26\uFF09\u3002 + +\u5982\u679C\u8303\u56F4\u5305\u542B\u7684\u662F\u8981\u68C0\u6D4B\u7684\u6570\u5B57\uFF0C\u5219\u6761\u4EF6\u53EF\u4EE5\u662F\u5B57\u7B26\u4E32\u4E5F\u53EF\u4EE5\u662F\u6570\u5B57\u3002\u5982\u679C\u7ED9\u5B9A\u7684\u6761\u4EF6\u662F\u4E00\u4E2A\u6570\u5B57\uFF0C\u5219\u68C0\u67E5\u8303\u56F4\u4E2D\u7684\u6BCF\u4E2A\u5355\u5143\u683C\u662F\u5426\u7B49\u4E8E\u6761\u4EF6\u3002\u53E6\u5916\uFF0C\u6761\u4EF6\u4E5F\u53EF\u80FD\u662F\u5305\u542B\u6570\u5B57\u7684\u5B57\u7B26\u4E32\uFF08\u4E5F\u5C06\u5BF9\u5176\u8FDB\u884C\u76F8\u7B49\u68C0\u6D4B\uFF09\uFF0C\u6216\u8005\u5E26\u6709\u4EE5\u4E0B\u524D\u7F00\u7684\u6570\u5B57\uFF1A=\uFF08\u68C0\u67E5\u662F\u5426\u76F8\u7B49\uFF09\u3001>\uFF08\u68C0\u67E5\u8303\u56F4\u5355\u5143\u683C\u7684\u503C\u662F\u5426\u5927\u4E8E\u6761\u4EF6\u503C\uFF09\u6216<\uFF08\u68C0\u67E5\u8303\u56F4\u5355\u5143\u683C\u7684\u503C\u662F\u5426\u5C0F\u4E8E\u6761\u4EF6\u503C\uFF09`},{name:"\u6C42\u548C\u8303\u56F4",detail:"\u8981\u6C42\u548C\u7684\u8303\u56F4\uFF08\u5982\u679C\u4E0E\u8303\u56F4\u4E0D\u540C\uFF09\u3002"}]},TAN:{d:"\u8FD4\u56DE\u5DF2\u77E5\u89D2\u5EA6\u7684\u6B63\u5207\u503C\u3002",a:"\u8FD4\u56DE\u5DF2\u77E5\u89D2\u5EA6\u7684\u6B63\u5207\u503C\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u6C42\u5176\u6B63\u5207\u503C\u7684\u89D2\u5EA6\uFF0C\u4EE5\u5F27\u5EA6\u8868\u793A\u3002"}]},TANH:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u5B9E\u6570\u7684\u53CC\u66F2\u6B63\u5207\u503C\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u5B9E\u6570\u7684\u53CC\u66F2\u6B63\u5207\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CC\u66F2\u6B63\u5207\u503C\u7684\u5B9E\u6570\u3002"}]},CEILING:{d:"\u5C06\u6570\u503C\u5411\u4E0A\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u6307\u5B9A\u56E0\u6570\u7684\u500D\u6570\u3002",a:"\u5C06\u6570\u503C\u5411\u4E0A\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u6307\u5B9A\u56E0\u6570\u7684\u500D\u6570\u3002",p:[{name:"\u503C",detail:"\u8981\u5411\u4E0A\u820D\u5165\u7684\u6570\u503C\u3002"},{name:"\u56E0\u6570",detail:"\u8981\u5C06\u503C\u820D\u5165\u5230\u6B64\u6570\u7684\u6574\u6570\u500D\u3002"}]},ATAN:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u6B63\u5207\u503C\uFF0C\u4EE5\u5F27\u5EA6\u8868\u793A\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u6B63\u5207\u503C",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CD\u6B63\u5207\u503C\u7684\u6570\u503C\u3002"}]},ASINH:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u53CC\u66F2\u6B63\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u53CC\u66F2\u6B63\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CD\u53CC\u66F2\u6B63\u5F26\u503C\u7684\u6570\u503C\u3002"}]},ABS:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u7EDD\u5BF9\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u7EDD\u5BF9\u503C\u3002",p:[{name:"value",detail:"\u8981\u8FD4\u56DE\u5176\u7EDD\u5BF9\u503C\u7684\u6570\u3002"}]},ACOS:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u4F59\u5F26\u503C\uFF0C\u4EE5\u5F27\u5EA6\u8868\u793A\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u4F59\u5F26\u503C",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CD\u4F59\u5F26\u503C\u7684\u6570\u503C\u3002\u5FC5\u987B\u4ECB\u4E8E-1\u548C1\u4E4B\u95F4\uFF0C\u5305\u62EC\u4E24\u7AEF\u503C\u3002"}]},ACOSH:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u53CC\u66F2\u4F59\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u53CC\u66F2\u4F59\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CD\u53CC\u66F2\u4F59\u5F26\u503C\u7684\u6570\u503C\u3002\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E1\u3002"}]},MULTINOMIAL:{d:"\u8FD4\u56DE\u53C2\u6570\u548C\u7684\u9636\u4E58\u9664\u4EE5\u5404\u53C2\u6570\u9636\u4E58\u7684\u4E58\u79EF\u540E\u5F97\u5230\u7684\u503C\u3002",a:"\u8FD4\u56DE\u53C2\u6570\u548C\u7684\u9636\u4E58\u9664\u4EE5\u5404\u53C2\u6570\u9636\u4E58\u7684\u4E58\u79EF\u540E\u5F97\u5230\u7684\u503C\u3002",p:[{name:"\u503C1",detail:"\u7528\u4E8E\u8BA1\u7B97\u7684\u7B2C\u4E00\u9879\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"\u7528\u4E8E\u8BA1\u7B97\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},ATANH:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u53CC\u66F2\u6B63\u5207\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u53CC\u66F2\u6B63\u5207\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CD\u53CC\u66F2\u6B63\u5207\u503C\u7684\u6570\u503C\u3002\u5FC5\u987B\u4ECB\u4E8E-1\u548C1\u4E4B\u95F4\uFF08\u4E0D\u5305\u62EC-1\u548C1\uFF09\u3002"}]},ATAN2:{d:"\u4EE5\u5F27\u5EA6\u4E3A\u5355\u4F4D\u8FD4\u56DE x \u8F74\u4E0E\u4ECE\u539F\u70B9 (0,0) \u5230\u6307\u5B9A\u5750\u6807\u70B9 (`x`,`y`) \u4E4B\u95F4\u8FDE\u7EBF\u7684\u5939\u89D2\u3002",a:"\u4EE5\u5F27\u5EA6\u4E3A\u5355\u4F4D\u8FD4\u56DE x \u8F74\u4E0E\u4ECE\u539F\u70B9 (0,0) \u5230\u6307\u5B9A\u5750\u6807\u70B9 (`x`,`y`) \u4E4B\u95F4\u8FDE\u7EBF\u7684\u5939\u89D2\u3002",p:[{name:"x",detail:"\u8981\u8BA1\u7B97\u5176\u4E0Ex\u8F74\u5939\u89D2\u5927\u5C0F\u7684\u7EBF\u6BB5\u7684\u7EC8\u70B9x\u5750\u6807\u3002"},{name:"y",detail:"\u8981\u8BA1\u7B97\u5176\u4E0Ex\u8F74\u5939\u89D2\u5927\u5C0F\u7684\u7EBF\u6BB5\u7684\u7EC8\u70B9y\u5750\u6807\u3002"}]},COUNTBLANK:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u8303\u56F4\u5185\u7684\u7A7A\u5355\u5143\u683C\u6570\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u8303\u56F4\u5185\u7684\u7A7A\u5355\u5143\u683C\u6570\u3002",p:[{name:"\u8303\u56F4",detail:"\u8981\u7EDF\u8BA1\u7A7A\u767D\u5355\u5143\u683C\u6570\u91CF\u7684\u8303\u56F4\u3002"}]},COSH:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u5B9E\u6570\u7684\u53CC\u66F2\u4F59\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u5B9E\u6570\u7684\u53CC\u66F2\u4F59\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CC\u66F2\u4F59\u5F26\u503C\u7684\u5B9E\u6570\u503C\u3002"}]},INT:{d:"\u5C06\u6570\u503C\u5411\u4E0B\u53D6\u6574\u4E3A\u5C0F\u4E8E\u6216\u7B49\u4E8E\u8BE5\u6570\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6570\u3002",a:"\u5C06\u6570\u503C\u5411\u4E0B\u53D6\u6574\u4E3A\u5C0F\u4E8E\u6216\u7B49\u4E8E\u8BE5\u6570\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6570\u3002",p:[{name:"\u503C",detail:"\u8981\u5411\u4E0B\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u6574\u6570\u7684\u6570\u503C\u3002"}]},ISEVEN:{d:"\u68C0\u67E5\u6240\u63D0\u4F9B\u7684\u6570\u503C\u662F\u5426\u4E3A\u5076\u6570\u3002",a:"\u68C0\u67E5\u6240\u63D0\u4F9B\u7684\u6570\u503C\u662F\u5426\u4E3A\u5076\u6570\u3002",p:[{name:"\u503C",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A\u5076\u6570\u7684\u6570\u503C\u3002 + +\u5982\u679C\u503C\u4E3A\u5076\u6570\u6216\u6307\u5411\u5305\u542B\u5076\u6570\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CISEVEN\u5C06\u8FD4\u56DETRUE\uFF0C\u5426\u5219\u8FD4\u56DEFALSE\u3002`}]},ISODD:{d:"\u68C0\u67E5\u6240\u63D0\u4F9B\u7684\u6570\u503C\u662F\u5426\u4E3A\u5947\u6570\u3002",a:"\u68C0\u67E5\u6240\u63D0\u4F9B\u7684\u6570\u503C\u662F\u5426\u4E3A\u5947\u6570\u3002",p:[{name:"\u503C",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A\u5947\u6570\u7684\u6570\u503C\u3002 + +\u5982\u679C\u503C\u4E3A\u5947\u6570\u6216\u6307\u5411\u5305\u542B\u5947\u6570\u7684\u5355\u5143\u683C\uFF0CISODD\u5C06\u8FD4\u56DETRUE\uFF0C\u5426\u5219\u8FD4\u56DEFALSE\u3002`}]},LCM:{d:"\u8FD4\u56DE\u4E00\u4E2A\u6216\u591A\u4E2A\u6574\u6570\u7684\u6700\u5C0F\u516C\u500D\u6570\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u6216\u591A\u4E2A\u6574\u6570\u7684\u6700\u5C0F\u516C\u500D\u6570\u3002",p:[{name:"\u503C1",detail:"\u8981\u5728\u6C42\u6700\u5C0F\u516C\u500D\u6570\u6570\u7684\u8BA1\u7B97\u4E2D\u68C0\u67E5\u5176\u56E0\u6570\u7684\u7B2C\u4E00\u9879\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u5728\u6C42\u6700\u5C0F\u516C\u500D\u6570\u65F6\u8981\u8003\u8651\u5176\u56E0\u6570\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},LN:{d:"\u8FD4\u56DE\u6570\u503C\u4EE5 e\uFF08\u6B27\u62C9\u6570\uFF09\u4E3A\u5E95\u7684\u5BF9\u6570\u3002",a:"\u8FD4\u56DE\u6570\u503C\u4EE5 e\uFF08\u6B27\u62C9\u6570\uFF09\u4E3A\u5E95\u7684\u5BF9\u6570\u3002",p:[{name:"\u503C",detail:`\u8981\u4EE5 e \u4E3A\u5E95\u6570\u8BA1\u7B97\u5176\u5BF9\u6570\u7684\u503C\u3002 + +\u503C\u5FC5\u987B\u4E3A\u6B63\u6570\u3002`}]},LOG:{d:"\u6839\u636E\u6307\u5B9A\u5E95\u6570\u8FD4\u56DE\u6570\u5B57\u7684\u5BF9\u6570\u3002",a:"\u6839\u636E\u6307\u5B9A\u5E95\u6570\u8FD4\u56DE\u6570\u5B57\u7684\u5BF9\u6570\u3002",p:[{name:"\u503C",detail:"\u60F3\u8981\u8BA1\u7B97\u5176\u5BF9\u6570\u7684\u6B63\u5B9E\u6570\u3002"},{name:"\u5E95\u6570",detail:"[\u53EF\u9009] - \u5BF9\u6570\u7684\u5E95\u6570\u3002"}]},LOG10:{d:"\u8FD4\u56DE\u6570\u503C\u4EE510\u4E3A\u5E95\u7684\u5BF9\u6570\u3002",a:"\u8FD4\u56DE\u6570\u503C\u4EE510\u4E3A\u5E95\u7684\u5BF9\u6570\u3002",p:[{name:"\u503C",detail:`\u8981\u8BA1\u7B97\u5176\u4EE510\u4E3A\u5E95\u7684\u5BF9\u6570\u7684\u6570\u503C\u3002 + +\u503C\u5FC5\u987B\u4E3A\u6B63\u503C\u3002`}]},MOD:{d:"\u8FD4\u56DE\u4E24\u6570\u76F8\u9664\u7684\u4F59\u6570, \u7ED3\u679C\u7684\u7B26\u53F7\u4E0E\u9664\u6570\u76F8\u540C\u3002",a:"\u8FD4\u56DE\u4E24\u6570\u76F8\u9664\u7684\u4F59\u6570\u3002",p:[{name:"\u88AB\u9664\u6570",detail:"\u8981\u5C06\u5176\u76F8\u9664\u4EE5\u5F97\u5230\u4F59\u6570\u7684\u6570\u503C\u3002"},{name:"\u9664\u6570",detail:"\u7528\u4E8E\u9664\u5176\u4ED6\u6570\u7684\u6570\u503C\u3002"}]},MROUND:{d:"\u5C06\u6570\u503C\u53D6\u6574\u4E3A\u53E6\u4E00\u6574\u6570\u6700\u63A5\u8FD1\u7684\u6574\u6570\u500D\u3002",a:"\u5C06\u6570\u503C\u53D6\u6574\u4E3A\u53E6\u4E00\u6574\u6570\u6700\u63A5\u8FD1\u7684\u6574\u6570\u500D\u3002",p:[{name:"\u503C",detail:"\u8981\u53D6\u6574\u4E3A\u53E6\u4E00\u6574\u6570\u6700\u63A5\u8FD1\u7684\u6574\u6570\u500D\u7684\u6570\u503C\u3002"},{name:"\u56E0\u6570",detail:"\u503C\u5C06\u53D6\u6B64\u56E0\u6570\u7684\u6574\u6570\u500D\u3002"}]},ODD:{d:"\u5C06\u6570\u503C\u5411\u4E0A\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u5947\u6574\u6570\u3002",a:"\u5C06\u6570\u503C\u5411\u4E0A\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u5947\u6574\u6570\u3002",p:[{name:"\u503C",detail:`\u8981\u5411\u4E0A\u53D6\u6574\u7684\u6570\u503C\uFF0C\u53D6\u6574\u503C\u4E3A\u5927\u4E8E\u6B64\u503C\u7684\u6700\u63A5\u8FD1\u7684\u5947\u6570\u3002 + +\u5982\u679C\u503C\u4E3A\u8D1F\u6570\uFF0C\u5219\u5C06\u5176\u53D6\u6574\u4E3A\u7EDD\u5BF9\u503C\u5927\u4E8E\u8BE5\u503C\u7684\u76F8\u90BB\u8D1F\u5947\u6570\u3002`}]},SUMSQ:{d:"\u8FD4\u56DE\u4E00\u7EC4\u6570\u503C\u548C/\u6216\u5355\u5143\u683C\u7684\u5E73\u65B9\u603B\u548C\u3002",a:"\u8FD4\u56DE\u4E00\u7EC4\u6570\u503C\u548C/\u6216\u5355\u5143\u683C\u7684\u5E73\u65B9\u603B\u548C\u3002",p:[{name:"\u503C1",detail:"\u8981\u5C06\u5176\u5E73\u65B9\u76F8\u52A0\u7684\u7B2C\u4E00\u4E2A\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u8981\u5C06\u5176\u5E73\u65B9\u4E0E\u503C1\u7684\u5E73\u65B9\u76F8\u52A0\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},COMBIN:{d:"\u7ED9\u5B9A\u96C6\u5408\u4E2D\u7684\u5BF9\u8C61\u603B\u6570\u548C\u8981\u9009\u62E9\u7684\u5BF9\u8C61\u6570\u91CF\uFF0C\u8FD4\u56DE\u5171\u6709\u591A\u5C11\u79CD\u4E0D\u540C\u9009\u62E9\u65B9\u5F0F\u3002",a:"\u7ED9\u5B9A\u96C6\u5408\u4E2D\u7684\u5BF9\u8C61\u603B\u6570\u548C\u8981\u9009\u62E9\u7684\u5BF9\u8C61\u6570\u91CF",p:[{name:"n",detail:"\u8981\u4ECE\u4E2D\u8FDB\u884C\u9009\u62E9\u7684\u5BF9\u8C61\u96C6\u5408\u7684\u5927\u5C0F\u3002"},{name:"k",detail:"\u8981\u9009\u62E9\u7684\u5BF9\u8C61\u6570\u91CF\u3002"}]},SUM:{d:"\u8FD4\u56DE\u4E00\u7EC4\u6570\u503C\u548C/\u6216\u5355\u5143\u683C\u7684\u603B\u548C\u3002",a:"\u8FD4\u56DE\u4E00\u7EC4\u6570\u503C\u548C/\u6216\u5355\u5143\u683C\u7684\u603B\u548C\u3002",p:[{name:"\u503C1",detail:"\u8981\u76F8\u52A0\u7684\u7B2C\u4E00\u4E2A\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u8981\u76F8\u52A0\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},SUBTOTAL:{d:"\u4F7F\u7528\u6307\u5B9A\u7684\u6C47\u603B\u51FD\u6570\uFF0C\u8FD4\u56DE\u4E00\u7CFB\u5217\u7EB5\u5411\u5355\u5143\u683C\u7684\u5206\u7C7B\u6C47\u603B\u3002",a:"\u4F7F\u7528\u6307\u5B9A\u7684\u6C47\u603B\u51FD\u6570",p:[{name:"\u51FD\u6570\u4EE3\u7801",detail:`\u7528\u4E8E\u8BA1\u7B97\u5206\u7C7B\u6C47\u603B\u7684\u51FD\u6570\u3002 + +1\u4EE3\u8868AVERAGE + +2\u4EE3\u8868COUNT + +3\u4EE3\u8868COUNTA + +4\u4EE3\u8868MAX + +5\u4EE3\u8868MIN + +6\u4EE3\u8868PRODUCT + +7\u4EE3\u8868STDEV + +8\u4EE3\u8868STDEVP + +9\u4EE3\u8868SUM + +10\u4EE3\u8868VAR + +11\u4EE3\u8868VARP + +\u901A\u8FC7\u5728\u8FD9\u4E9B2\u4F4D\u4EE3\u7801\u524D\u9644\u52A010\uFF08\u5BF9\u4E8E1\u4F4D\u4EE3\u7801\uFF09\u62161\uFF08\u5BF9\u4E8E2\u4F4D\u4EE3\u7801\uFF09\uFF0C\u53EF\u4EE5\u5C06\u9690\u85CF\u503C\u5FFD\u7565\u3002\u4F8B\u5982\uFF0C102\u4EE3\u8868\u5FFD\u7565\u9690\u85CF\u5355\u5143\u683C\u7684COUNT\uFF0C\u800C110\u5219\u4EE3\u8868\u5FFD\u7565\u9690\u85CF\u503C\u7684VAR\u3002`},{name:"\u8303\u56F41",detail:"\u8981\u8BA1\u7B97\u5206\u7C7B\u6C47\u603B\u7684\u7B2C\u4E00\u4E2A\u8303\u56F4\u3002"},{name:"\u8303\u56F42",detail:"[\u53EF\u9009] - \u8981\u8BA1\u7B97\u5206\u7C7B\u6C47\u603B\u7684\u5176\u4ED6\u8303\u56F4\u3002"}]},ASIN:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u6B63\u5F26\u503C\uFF0C\u4EE5\u5F27\u5EA6\u8868\u793A\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u53CD\u6B63\u5F26\u503C",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CD\u6B63\u5F26\u503C\u7684\u6570\u503C\u3002\u5FC5\u987B\u4ECB\u4E8E-1\u548C1\u4E4B\u95F4\uFF0C\u5305\u62EC\u4E24\u7AEF\u503C\u3002"}]},COUNTIF:{d:"\u8FD4\u56DE\u8303\u56F4\u5185\u6EE1\u8DB3\u67D0\u4E2A\u6761\u4EF6\u7684\u5355\u5143\u683C\u7684\u6570\u91CF\u3002",a:"\u8FD4\u56DE\u8303\u56F4\u5185\u6EE1\u8DB3\u67D0\u4E2A\u6761\u4EF6\u7684\u5355\u5143\u683C\u7684\u6570\u91CF\u3002",p:[{name:"\u8303\u56F4",detail:"\u8981\u6839\u636E\u6761\u4EF6\u8FDB\u884C\u68C0\u6D4B\u7684\u8303\u56F4\u3002"},{name:"\u6761\u4EF6",detail:`\u8981\u5E94\u7528\u4E8E\u8303\u56F4\u7684\u6A21\u5F0F\u6216\u6D4B\u8BD5\u6761\u4EF6\u3002 + +\u5982\u679C\u8303\u56F4\u5305\u542B\u7684\u662F\u8981\u68C0\u6D4B\u7684\u6587\u672C\uFF0C\u5219\u6761\u4EF6\u5FC5\u987B\u4E3A\u5B57\u7B26\u4E32\u3002\u6761\u4EF6\u53EF\u4EE5\u5305\u542B\u901A\u914D\u7B26\uFF0C\u5305\u62EC\u7528\u4E8E\u5339\u914D\u5355\u4E2A\u5B57\u7B26\u7684?\u6216\u7528\u4E8E\u5339\u914D\u96F6\u4E2A\u6216\u8FDE\u7EED\u591A\u4E2A\u5B57\u7B26\u7684*\u3002\u8981\u5339\u914D\u95EE\u53F7\u661F\u53F7\u672C\u8EAB\uFF0C\u8BF7\u5728\u8BE5\u5B57\u7B26\u524D\u9762\u52A0\u4E0A\u6CE2\u6D6A\u53F7(~)\u524D\u7F00\uFF08\u5373~?\u548C~*\uFF09\u3002\u5B57\u7B26\u4E32\u6761\u4EF6\u5FC5\u987B\u7528\u5F15\u53F7\u62EC\u8D77\u6765\u3002\u51FD\u6570\u4F1A\u68C0\u67E5\u8303\u56F4\u4E2D\u7684\u6BCF\u4E2A\u5355\u5143\u683C\u4E0E\u6761\u4EF6\u662F\u5426\u76F8\u7B49\u6216\u5339\u914D\uFF08\u5982\u679C\u4F7F\u7528\u4E86\u901A\u914D\u7B26\uFF09\u3002 + +\u5982\u679C\u8303\u56F4\u5305\u542B\u7684\u662F\u8981\u68C0\u6D4B\u7684\u6570\u5B57\uFF0C\u5219\u6761\u4EF6\u53EF\u4EE5\u662F\u5B57\u7B26\u4E32\u4E5F\u53EF\u4EE5\u662F\u6570\u5B57\u3002\u5982\u679C\u7ED9\u5B9A\u7684\u6761\u4EF6\u662F\u4E00\u4E2A\u6570\u5B57\uFF0C\u5219\u68C0\u67E5\u8303\u56F4\u4E2D\u7684\u6BCF\u4E2A\u5355\u5143\u683C\u662F\u5426\u7B49\u4E8E\u6761\u4EF6\u3002\u53E6\u5916\uFF0C\u6761\u4EF6\u4E5F\u53EF\u80FD\u662F\u5305\u542B\u6570\u5B57\u7684\u5B57\u7B26\u4E32\uFF08\u4E5F\u5C06\u5BF9\u5176\u8FDB\u884C\u76F8\u7B49\u68C0\u6D4B\uFF09\uFF0C\u6216\u8005\u5E26\u6709\u4EE5\u4E0B\u524D\u7F00\u7684\u6570\u5B57\uFF1A=\u3001>\u3001>=\u3001<\u6216<=\uFF0C\u8FD9\u4E9B\u6761\u4EF6\u5C06\u5206\u522B\u7528\u4E8E\u68C0\u67E5\u8303\u56F4\u4E2D\u7684\u5355\u5143\u683C\u662F\u5426\u7B49\u4E8E\u3001\u5927\u4E8E\u3001\u5927\u4E8E\u7B49\u4E8E\u3001\u5C0F\u4E8E\u3001\u5C0F\u4E8E\u7B49\u4E8E\u6761\u4EF6\u503C\u3002`}]},RADIANS:{d:"\u5C06\u4EE5\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F6C\u6362\u4E3A\u5F27\u5EA6\u3002",a:"\u5C06\u4EE5\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F6C\u6362\u4E3A\u5F27\u5EA6\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u4ECE\u5EA6\u8F6C\u6362\u4E3A\u5F27\u5EA6\u7684\u89D2\u5EA6\u3002"}]},RAND:{d:"\u8FD4\u56DE\u4E00\u4E2A\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF08\u5305\u62EC0\u4F46\u4E0D\u5305\u62EC1\uFF09\u7684\u968F\u673A\u6570\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF08\u5305\u62EC0\u4F46\u4E0D\u5305\u62EC1\uFF09\u7684\u968F\u673A\u6570\u3002",p:[]},COUNTUNIQUE:{d:"\u8BA1\u7B97\u4E00\u5217\u6307\u5B9A\u503C\u548C\u8303\u56F4\u4E2D\u4E0D\u91CD\u590D\u6570\u503C\u7684\u4E2A\u6570\u3002",a:"\u8BA1\u7B97\u4E00\u5217\u6307\u5B9A\u503C\u548C\u8303\u56F4\u4E2D\u4E0D\u91CD\u590D\u6570\u503C\u7684\u4E2A\u6570\u3002",p:[{name:"\u503C1",detail:"\u8981\u68C0\u67E5\u5176\u662F\u5426\u552F\u4E00\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u8981\u68C0\u67E5\u662F\u5426\u552F\u4E00\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},DEGREES:{d:"\u5C06\u4EE5\u5F27\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F6C\u6362\u4E3A\u5EA6\u3002",a:"\u5C06\u4EE5\u5F27\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F6C\u6362\u4E3A\u5EA6\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u4ECE\u5F27\u5EA6\u8F6C\u6362\u4E3A\u5EA6\u7684\u89D2\u5EA6\u3002"}]},ERFC:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u4E92\u8865\u9AD8\u65AF\u8BEF\u5DEE\u51FD\u6570\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u4E92\u8865\u9AD8\u65AF\u8BEF\u5DEE\u51FD\u6570\u3002",p:[{name:"z",detail:"\u8981\u4E3A\u5176\u8BA1\u7B97\u4E92\u8865\u9AD8\u65AF\u8BEF\u5DEE\u51FD\u6570\u7684\u6570\u503C\u3002"}]},EVEN:{d:"\u5C06\u6570\u503C\u5411\u4E0A\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u5076\u6574\u6570\u3002",a:"\u5C06\u6570\u503C\u5411\u4E0A\u53D6\u6574\u4E3A\u6700\u63A5\u8FD1\u7684\u5076\u6574\u6570\u3002",p:[{name:"\u503C",detail:`\u8981\u5411\u4E0A\u53D6\u6574\u7684\u6570\u503C\uFF0C\u53D6\u6574\u503C\u4E3A\u5927\u4E8E\u6B64\u503C\u7684\u6700\u63A5\u8FD1\u7684\u5076\u6570\u3002 + +\u5982\u679C\u503C\u4E3A\u8D1F\u6570\uFF0C\u5219\u5C06\u5176\u53D6\u6574\u4E3A\u7EDD\u5BF9\u503C\u5927\u4E8E\u8BE5\u503C\u7684\u76F8\u90BB\u8D1F\u5076\u6570\u3002`}]},EXP:{d:"\u8FD4\u56DE\u6B27\u62C9\u6570 e (~2.718) \u7684\u6307\u5B9A\u6B21\u5E42\u3002",a:"\u8FD4\u56DE\u6B27\u62C9\u6570 e (~2.718) \u7684\u6307\u5B9A\u6B21\u5E42\u3002",p:[{name:"\u6307\u6570",detail:"\u6307\u5B9Ae\u7684\u81EA\u4E58\u5E42\u6B21\u503C\u3002"}]},FACT:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u9636\u4E58\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u9636\u4E58\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5E76\u8FD4\u56DE\u5176\u9636\u4E58\u7684\u6570\u5B57\u6216\u5BF9\u6570\u5B57\uFF08\u6240\u5728\u5355\u5143\u683C\uFF09\u7684\u5F15\u7528\u3002"}]},FACTDOUBLE:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u201C\u53CC\u9636\u4E58\u201D\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u201C\u53CC\u9636\u4E58\u201D\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5E76\u8FD4\u56DE\u5176\u53CC\u9636\u4E58\u7684\u6570\u5B57\u6216\u5BF9\u6570\u5B57\uFF08\u6240\u5728\u5355\u5143\u683C\uFF09\u7684\u5F15\u7528\u3002"}]},PI:{d:"\u8FD4\u56DE\u5E26\u670914\u4F4D\u5C0F\u6570\u7684 PI \u503C\u3002",a:"\u8FD4\u56DE\u5E26\u670914\u4F4D\u5C0F\u6570\u7684 PI \u503C\u3002",p:[]},FLOOR:{d:"\u5C06\u6570\u503C\u5411\u4E0B\u53D6\u6574\u4E3A\u6307\u5B9A\u56E0\u6570\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6570\u500D\u3002",a:"\u5C06\u6570\u503C\u5411\u4E0B\u53D6\u6574\u4E3A\u6307\u5B9A\u56E0\u6570\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6570\u500D\u3002",p:[{name:"\u503C",detail:"\u8981\u5411\u4E0B\u820D\u5165\u4E3A\u56E0\u6570\u7684\u6700\u63A5\u8FD1\u6574\u6570\u500D\u7684\u6570\u503C\u3002"},{name:"\u56E0\u6570",detail:`\u8981\u5C06\u503C\u820D\u5165\u5230\u6B64\u6570\u7684\u6574\u6570\u500D\u3002 + +\u56E0\u6570\u4E0D\u5F97\u4E3A0\u3002`}]},GCD:{d:"\u8FD4\u56DE\u4E00\u4E2A\u6216\u591A\u4E2A\u6574\u6570\u7684\u6700\u5927\u516C\u7EA6\u6570\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u6216\u591A\u4E2A\u6574\u6570\u7684\u6700\u5927\u516C\u7EA6\u6570\u3002",p:[{name:"\u503C1",detail:"\u8981\u5728\u67E5\u627E\u6700\u5927\u516C\u7EA6\u6570\u7684\u8BA1\u7B97\u4E2D\u68C0\u67E5\u5176\u56E0\u6570\u7684\u7B2C\u4E00\u9879\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u5728\u6C42\u6700\u5927\u516C\u7EA6\u6570\u65F6\u8981\u8003\u8651\u5176\u56E0\u6570\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},RANDBETWEEN:{d:"\u8FD4\u56DE\u4ECB\u4E8E\u4E24\u4E2A\u6574\u6570\u4E4B\u95F4\uFF08\u5305\u62EC\u8FD9\u4E24\u4E2A\u6574\u6570\uFF09\u7684\u968F\u673A\u6570\u3002",a:"\u8FD4\u56DE\u4ECB\u4E8E\u4E24\u4E2A\u6574\u6570\u4E4B\u95F4\uFF08\u5305\u62EC\u8FD9\u4E24\u4E2A\u6574\u6570\uFF09\u7684\u968F\u673A\u6570\u3002",p:[{name:"\u4E0B\u754C",detail:"\u968F\u673A\u503C\u8303\u56F4\u7684\u4E0B\u754C\u3002"},{name:"\u4E0A\u754C",detail:"\u968F\u673A\u503C\u8303\u56F4\u7684\u4E0A\u754C\u3002"}]},ROUND:{d:"\u5C06\u6570\u5B57\u56DB\u820D\u4E94\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6570\u3002",a:"\u5C06\u6570\u5B57\u56DB\u820D\u4E94\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6570\u3002",p:[{name:"\u503C",detail:"\u8981\u56DB\u820D\u4E94\u5165\u7684\u6570\u5B57\u3002"},{name:"\u4F4D\u6570",detail:`\u8981\u8FDB\u884C\u56DB\u820D\u4E94\u5165\u8FD0\u7B97\u7684\u4F4D\u6570\u3002 + +\u4F4D\u6570\u53EF\u4EE5\u53D6\u8D1F\u503C\uFF0C\u5728\u8FD9\u79CD\u60C5\u51B5\u4E0B\u4F1A\u5C06\u503C\u7684\u5C0F\u6570\u70B9\u5DE6\u4FA7\u90E8\u5206\u820D\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6570\u3002`}]},ROUNDDOWN:{d:"\u671D\u7740\u96F6\u7684\u65B9\u5411\u5C06\u6570\u5B57\u8FDB\u884C\u5411\u4E0B\u820D\u5165\u3002",a:"\u671D\u7740\u96F6\u7684\u65B9\u5411\u5C06\u6570\u5B57\u8FDB\u884C\u5411\u4E0B\u820D\u5165\u3002",p:[{name:"\u503C",detail:"\u9700\u8981\u5411\u4E0B\u820D\u5165\u7684\u4EFB\u610F\u5B9E\u6570\u3002"},{name:"\u4F4D\u6570",detail:`\u8981\u901A\u8FC7\u820D\u5165\u8FBE\u5230\u7684\u5C0F\u6570\u4F4D\u6570\u3002 + +\u4F4D\u6570\u53EF\u4EE5\u53D6\u8D1F\u503C\uFF0C\u5728\u8FD9\u79CD\u60C5\u51B5\u4E0B\u4F1A\u5C06\u503C\u7684\u5C0F\u6570\u70B9\u5DE6\u4FA7\u90E8\u5206\u820D\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6570\u3002`}]},ROUNDUP:{d:"\u671D\u7740\u8FDC\u79BB 0\uFF08\u96F6\uFF09\u7684\u65B9\u5411\u5C06\u6570\u5B57\u8FDB\u884C\u5411\u4E0A\u820D\u5165\u3002",a:"\u671D\u7740\u8FDC\u79BB 0\uFF08\u96F6\uFF09\u7684\u65B9\u5411\u5C06\u6570\u5B57\u8FDB\u884C\u5411\u4E0A\u820D\u5165\u3002",p:[{name:"\u503C",detail:"\u8981\u5C06\u5176\u820D\u5165\u4E3A\u4F4D\u6570\u4F4D\u6570\u5B57\u7684\u503C\uFF0C\u59CB\u7EC8\u5411\u4E0A\u820D\u5165\u3002"},{name:"\u4F4D\u6570",detail:`\u8981\u901A\u8FC7\u820D\u5165\u8FBE\u5230\u7684\u5C0F\u6570\u4F4D\u6570\u3002 + +\u4F4D\u6570\u53EF\u4EE5\u53D6\u8D1F\u503C\uFF0C\u5728\u8FD9\u79CD\u60C5\u51B5\u4E0B\u4F1A\u5C06\u503C\u7684\u5C0F\u6570\u70B9\u5DE6\u4FA7\u90E8\u5206\u820D\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6570\u3002`}]},SERIESSUM:{d:"\u7ED9\u5B9A\u53C2\u6570 x\u3001n\u3001m \u548C a\uFF0C\u8FD4\u56DE\u5E42\u7EA7\u6570\u7684\u548C a1xn + a2x(n+m) + ... + aix(n+(i-1)m)\uFF0C\u5176\u4E2D i \u4E3A\u8303\u56F4 a \u4E2D\u7684\u9879\u6570\u3002",a:"\u7ED9\u5B9A\u53C2\u6570 x\u3001n\u3001m \u548C a",p:[{name:"x",detail:"\u5E42\u7EA7\u6570\u7684\u8F93\u5165\u503C\u3002\u968F\u76F8\u5E94\u7684\u8FD1\u4F3C\u7C7B\u578B\u800C\u53D8\uFF0C\u6709\u53EF\u80FD\u4E3A\u89D2\u5EA6\u3001\u6307\u6570\u6216\u5176\u4ED6\u4E00\u4E9B\u503C\u3002"},{name:"n",detail:"\u5728\u5E42\u7EA7\u6570\u4E2Dx\u7684\u521D\u59CB\u81EA\u4E58\u5E42\u6B21\u3002"},{name:"m",detail:"x\u7684\u5E42\u6B21\u4E2D\u7684\u9644\u52A0\u589E\u91CF\u3002"},{name:"a",detail:"\u5305\u542B\u5E42\u7EA7\u6570\u7CFB\u6570\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"}]},SIGN:{d:"\u7ED9\u5B9A\u8F93\u5165\u6570\u503C\uFF0C\u5982\u679C\u4E3A\u8D1F\u8FD4\u56DE-1\uFF1B\u5982\u679C\u4E3A\u6B63\u8FD4\u56DE1\uFF1B\u5982\u679C\u4E3A\u96F6\u5219\u8FD4\u56DE0\u3002",a:"\u7ED9\u5B9A\u8F93\u5165\u6570\u503C",p:[{name:"\u503C",detail:"\u8981\u8FD4\u56DE\u5176\u7B26\u53F7\u7684\u6570\u503C\u3002"}]},SIN:{d:"\u7ED9\u5B9A\u89D2\u5EA6\uFF08\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09\uFF0C\u8FD4\u56DE\u5176\u6B63\u5F26\u503C\u3002",a:"\u7ED9\u5B9A\u89D2\u5EA6\uFF08\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u8FD4\u56DE\u5176\u6B63\u5F26\u503C\u7684\u89D2\u5EA6\uFF0C\u4EE5\u5F27\u5EA6\u8868\u793A\u3002"}]},SINH:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u5B9E\u6570\u7684\u53CC\u66F2\u6B63\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u5B9E\u6570\u7684\u53CC\u66F2\u6B63\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8BA1\u7B97\u5176\u53CC\u66F2\u6B63\u5F26\u503C\u7684\u5B9E\u6570\u503C\u3002"}]},SQRT:{d:"\u8FD4\u56DE\u4E00\u4E2A\u6B63\u6570\u7684\u6B63\u5E73\u65B9\u6839\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u6B63\u6570\u7684\u6B63\u5E73\u65B9\u6839\u3002",p:[{name:"\u503C",detail:`\u8981\u8BA1\u7B97\u5176\u6B63\u5E73\u65B9\u6839\u7684\u6570\u503C\u3002 + +\u503C\u5FC5\u987B\u4E3A\u6B63\u6570\uFF1B\u5982\u679C\u4E3A\u8D1F\uFF0CSQRT \u5C06\u8FD4\u56DE #NUM! \u9519\u8BEF\u3002`}]},SQRTPI:{d:"\u8FD4\u56DE PI \u4E0E\u7ED9\u5B9A\u6B63\u6570\u4E58\u79EF\u7684\u6B63\u5E73\u65B9\u6839\u3002",a:"\u8FD4\u56DE PI \u4E0E\u7ED9\u5B9A\u6B63\u6570\u4E58\u79EF\u7684\u6B63\u5E73\u65B9\u6839\u3002",p:[{name:"\u503C",detail:`\u8981\u5C06\u5176\u4E0E PI \u76F8\u4E58\u5E76\u8FD4\u56DE\u8BE5\u4E58\u79EF\u7684\u5E73\u65B9\u6839\u7684\u6570\u503C + +\u503C\u5FC5\u987B\u4E3A\u6B63\u6570\uFF1B\u5982\u679C\u4E3A\u8D1F\u6570\uFF0CSQRTPI \u5C06\u8FD4\u56DE #NUM! \u9519\u8BEF\u3002`}]},GAMMALN:{d:"\u8FD4\u56DE\u6307\u5B9A\u4F3D\u739B\u51FD\u6570\u7684\u4EE5 e\uFF08\u6B27\u62C9\u6570\uFF09\u4E3A\u5E95\u7684\u5BF9\u6570\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u4F3D\u739B\u51FD\u6570\u7684\u4EE5 e\uFF08\u6B27\u62C9\u6570\uFF09\u4E3A\u5E95\u7684\u5BF9\u6570\u3002",p:[{name:"\u503C",detail:`\u4F3D\u739B\u51FD\u6570\u7684\u8F93\u5165\u503C\u3002\u8FD4\u56DE\u7684\u5C06\u662F\u4F3D\u739B (\u503C) \u7684\u81EA\u7136\u5BF9\u6570\u3002 + +\u503C\u5FC5\u987B\u4E3A\u6B63\u6570\u3002`}]},COS:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u89D2\u5EA6\u7684\u4F59\u5F26\u503C\uFF08\u89D2\u5EA6\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u89D2\u5EA6\u7684\u4F59\u5F26\u503C\uFF08\u89D2\u5EA6\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u53D6\u5176\u4F59\u5F26\u503C\u7684\u89D2\u5EA6\uFF0C\u4EE5\u5F27\u5EA6\u8868\u793A\u3002"}]},TRUNC:{d:"\u622A\u9664\u6307\u5B9A\u6709\u6548\u4F4D\u4E4B\u5916\u7684\u90E8\u5206\uFF0C\u53D6\u6570\u636E\u7684\u6307\u5B9A\u6709\u6548\u4F4D\u3002",a:"\u622A\u9664\u6307\u5B9A\u6709\u6548\u4F4D\u4E4B\u5916\u7684\u90E8\u5206",p:[{name:"\u503C",detail:"\u8981\u622A\u53D6\u7684\u6570\u636E\u3002"},{name:"\u4F4D\u6570",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0] - \u5C0F\u6570\u70B9\u53F3\u4FA7\u8981\u4FDD\u7559\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u4F4D\u6570\u5927\u4E8E\u503C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5C06\u201C\u503C\u201D\u539F\u6837\u8FD4\u56DE\u3002 + +\u4F4D\u6570\u53EF\u4EE5\u53D6\u8D1F\u503C\uFF0C\u5728\u8FD9\u79CD\u60C5\u51B5\u4E0B\u4F1A\u5C06\u5C0F\u6570\u70B9\u5DE6\u4FA7\u6307\u5B9A\u4F4D\u6570\u7684\u503C\u66F4\u6539\u4E3A\u96F6\u3002\u5C0F\u6570\u70B9\u53F3\u4FA7\u7684\u6240\u6709\u4F4D\u6570\u90FD\u4F1A\u88AB\u820D\u5F03\u3002\u5982\u679C\u503C\u7684\u6240\u6709\u4F4D\u90FD\u88AB\u66F4\u6539\u4E3A\u96F6\uFF0C\u5219TRUNC\u4F1A\u8FD4\u56DE0\u3002`}]},QUOTIENT:{d:"\u8FD4\u56DE\u4EE5\u4E00\u4E2A\u6570\u9664\u4EE5\u53E6\u4E00\u4E2A\u6570\u6240\u5F97\u7684\u7ED3\u679C\uFF0C\u4E0D\u5305\u542B\u4F59\u6570\u3002",a:"\u8FD4\u56DE\u4EE5\u4E00\u4E2A\u6570\u9664\u4EE5\u53E6\u4E00\u4E2A\u6570\u6240\u5F97\u7684\u7ED3\u679C",p:[{name:"\u88AB\u9664\u6570",detail:"\u8981\u88AB\u9664\u7684\u6570\u503C\u3002"},{name:"\u9664\u6570",detail:`\u7528\u4E8E\u9664\u5176\u4ED6\u6570\u7684\u6570\u503C\u3002 + +\u9664\u6570\u4E0D\u5F97\u4E3A0\u3002`}]},POWER:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u6307\u5B9A\u6B21\u5E42\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u6307\u5B9A\u6B21\u5E42\u3002",p:[{name:"\u5E95\u6570",detail:`\u8981\u8BA1\u7B97\u5176\u6307\u6570\u6B21\u5E42\u7684\u6570\u503C\u3002 + +\u5982\u679C\u5E95\u6570\u4E3A\u8D1F\uFF0C\u5219\u6307\u6570\u5FC5\u987B\u4E3A\u6574\u6570\u3002`},{name:"\u6307\u6570",detail:"\u6307\u5B9A\u5E95\u6570\u7684\u81EA\u4E58\u5E42\u6B21\u503C\u3002"}]},SUMIFS:{d:"\u6839\u636E\u591A\u9879\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u4E4B\u548C\u3002",a:"\u6839\u636E\u591A\u9879\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u4E4B\u548C\u3002",p:[{name:"\u6C42\u548C\u8303\u56F4",detail:"\u8981\u5BF9\u5176\u6C42\u548C\u7684\u8303\u56F4\u3002"},{name:"\u6761\u4EF6\u8303\u56F41",detail:"\u8981\u5728\u54EA\u4E2A\u8303\u56F4\u5185\u68C0\u67E5\u6761\u4EF61\u3002"},{name:"\u6761\u4EF61",detail:"\u8981\u5E94\u7528\u4E8E\u6761\u4EF6\u8303\u56F41\u7684\u6A21\u5F0F\u6216\u6D4B\u8BD5\u6761\u4EF6\u3002"},{name:"\u6761\u4EF6\u8303\u56F42, \u6761\u4EF62...",detail:"[ \u53EF\u9009 ] - \u8981\u68C0\u67E5\u7684\u5176\u4ED6\u8303\u56F4\u548C\u6761\u4EF6\u3002"}]},GET_TARGET:{d:"\u67E5\u8BE2\u76EE\u6807\u6570\u636E\u3002",a:"\u67E5\u8BE2\u76EE\u6807\u6570\u636E\u3002",p:[]},GET_AIRTABLE_DATA:{d:"\u67E5\u8BE2AirTable\u6570\u636E\u3002",a:"\u67E5\u8BE2AirTable\u6570\u636E\u3002",p:[{name:"AirTable \u5730\u5740",detail:"AirTable URL\u94FE\u63A5\u5730\u5740"},{name:"\u6392\u5E8F\u5217",detail:"\u8868\u793A\u8981\u6392\u5E8F\u7684\u5217\u7684\u6570\u5B57\u3002"},{name:"\u662F\u5426\u5347\u5E8F",detail:"[\u53EF\u9009] - 1 \u6216 0 \u8868\u793A\u662F\u5426\u6309\u5347\u5E8F\u5BF9 `\u6392\u5E8F\u5217` \u8FDB\u884C\u6392\u5E8F\u3002 0 \u6309\u964D\u5E8F\u6392\u5217\uFF0C1 \u6309\u5347\u5E8F\u6392\u5217\u3002"}]},ASK_AI:{d:"\u5411AI\u63D0\u95EE\u3002",a:"\u5411AI\u63D0\u95EE\u3002",p:[{name:"\u95EE\u9898",detail:"\u5411AI\u54A8\u8BE2\uFF0C\u4F60\u60F3\u5F97\u5230\u7684\u6570\u636E\u3002"},{name:"\u6761\u4EF6\u8303\u56F4",detail:"\u8981\u5728\u54EA\u4E2A\u8303\u56F4\u5185\u5904\u7406\u6570\u636E\u3002"}]},COUNTIFS:{d:"\u6839\u636E\u591A\u9879\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u4E2D\u7684\u5355\u5143\u683C\u6570\u91CF\u3002",a:"\u6839\u636E\u591A\u9879\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u4E2D\u7684\u5355\u5143\u683C\u6570\u91CF\u3002",p:[{name:"\u6761\u4EF6\u8303\u56F41",detail:"\u8981\u5728\u54EA\u4E2A\u8303\u56F4\u5185\u68C0\u67E5\u6761\u4EF61\u3002"},{name:"\u6761\u4EF61",detail:"\u8981\u5E94\u7528\u4E8E\u6761\u4EF6\u8303\u56F41\u7684\u6A21\u5F0F\u6216\u6D4B\u8BD5\u6761\u4EF6\u3002"},{name:"\u6761\u4EF6\u8303\u56F42, \u6761\u4EF62...",detail:"[ \u53EF\u9009 ] - \u8981\u68C0\u67E5\u7684\u5176\u4ED6\u8303\u56F4\u548C\u6761\u4EF6\uFF0C\u53EF\u91CD\u590D\u3002"}]},PRODUCT:{d:"\u8FD4\u56DE\u5C06\u4E00\u7EC4\u6570\u76F8\u4E58\u6240\u5F97\u7684\u7ED3\u679C\u3002",a:"\u8FD4\u56DE\u5C06\u4E00\u7EC4\u6570\u76F8\u4E58\u6240\u5F97\u7684\u7ED3\u679C\u3002",p:[{name:"\u4E58\u65701",detail:"\u7528\u4E8E\u8BA1\u7B97\u4E58\u79EF\u7684\u7B2C\u4E00\u4E2A\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u4E58\u65702 ... \u4E58\u657030",detail:"[\u53EF\u9009] - \u8981\u76F8\u4E58\u7684\u5176\u4ED6\u6570\u503C\u3002"}]},HARMEAN:{d:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u8C03\u548C\u5E73\u5747\u503C\u3002",a:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u8C03\u548C\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},HYPGEOMDIST:{d:"\u8FD4\u56DE\u8D85\u51E0\u4F55\u5206\u5E03\u3002 \u5982\u679C\u5DF2\u77E5\u6837\u672C\u91CF\u3001\u603B\u4F53\u6210\u529F\u6B21\u6570\u548C\u603B\u4F53\u5927\u5C0F\uFF0C\u5219 HYPGEOM.DIST \u8FD4\u56DE\u6837\u672C\u53D6\u5F97\u5DF2\u77E5\u6210\u529F\u6B21\u6570\u7684\u6982\u7387\u3002",a:"\u8FD4\u56DE\u8D85\u51E0\u4F55\u5206\u5E03\u3002",p:[{name:"Sample_s",detail:"\u6837\u672C\u4E2D\u6210\u529F\u7684\u6B21\u6570\u3002"},{name:"Number_sample",detail:"\u6837\u672C\u91CF\u3002"},{name:"Population_s",detail:"\u603B\u4F53\u4E2D\u6210\u529F\u7684\u6B21\u6570\u3002"},{name:"Number_pop",detail:"\u603B\u4F53\u5927\u5C0F\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002 + +\u5982\u679C cumulative \u4E3A TRUE()\uFF0C\u5219 HYPGEOM.DIST \u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},INTERCEPT:{d:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u7EBF\u6027\u56DE\u5F52\u65B9\u7A0B\u76F4\u7EBF\u4E0E Y \u8F74\u7684\u76F8\u4EA4\u70B9 (x=0) \u7684 y \u503C\u3002",a:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u7EBF\u6027\u56DE\u5F52\u65B9\u7A0B\u76F4\u7EBF\u4E0E Y \u8F74\u7684\u76F8\u4EA4\u70B9 (x=0) \u7684 y \u503C\u3002",p:[{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},KURT:{d:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u5CED\u5EA6\uFF0C\u8BE5\u6307\u6807\u6307\u793A\u6570\u636E\u96C6\uFF08\u5206\u5E03\uFF09\u7684\u5F62\u6001\uFF0C\u5C24\u5176\u662F\u8BE5\u5F62\u6001\u7684\u9661\u5CED\u7A0B\u5EA6\u3002",a:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u5CED\u5EA6",p:[{name:"\u503C1",detail:"\u6570\u636E\u96C6\u4E2D\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},LARGE:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7B2C n \u4E2A\u6700\u5927\u5143\u7D20\uFF0Cn \u7531\u7528\u6237\u6307\u5B9A\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7B2C n \u4E2A\u6700\u5927\u5143\u7D20",p:[{name:"\u6570\u636E",detail:"\u5305\u542B\u76F8\u5173\u6570\u636E\u96C6\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"n",detail:`\u8981\u8FD4\u56DE\u7684\u5143\u7D20\u7684\u6392\u884C\u4F4D\u7F6E\uFF08\u4ECE\u5927\u5230\u5C0F\u987A\u5E8F\uFF09\u3002 + +\u4F8B\u5982\uFF0C\u5C06n\u8BBE\u4E3A4\u5C06\u4F7FLARGE\u8FD4\u56DE\u6570\u636E\u4E2D\u6392\u540D\u7B2C4\u7684\u6700\u5927\u5143\u7D20\u3002`}]},STDEVA:{d:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u6807\u51C6\u504F\u5DEE\uFF0C\u5C06\u6587\u672C\u53D6\u503C\u4E3A0\u3002",a:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u6807\u51C6\u504F\u5DEE",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2,\u2026",detail:"[\u53EF\u9009] - \u6837\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},STDEVP:{d:"\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u6807\u51C6\u504F\u5DEE\u3002",a:"\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u6807\u51C6\u504F\u5DEE\u3002",p:[{name:"\u503C1",detail:"\u6570\u636E\u96C6\u4E2D\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},GEOMEAN:{d:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u51E0\u4F55\u5E73\u5747\u503C\u3002",a:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u51E0\u4F55\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},RANK_EQ:{d:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6570\u636E\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6570\u636E\u96C6\u4E2D\u5B58\u5728\u591A\u9879\uFF0C\u5219\u8FD4\u56DE\u5176\u4E2D\u7684\u6700\u9AD8\u6392\u540D\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6570\u636E\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6570\u636E\u96C6\u4E2D\u5B58\u5728\u591A\u9879\uFF0C\u5219\u8FD4\u56DE\u5176\u4E2D\u7684\u6700\u9AD8\u6392\u540D\u3002",p:[{name:"number",detail:"\u8981\u786E\u5B9A\u5176\u6392\u540D\u7684\u503C\u3002"},{name:"ref",detail:"\u5305\u542B\u76F8\u5173\u6570\u636E\u96C6\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"order",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A\u6309\u964D\u5E8F (FALSE()) ] - \u8981\u6309\u5347\u5E8F\u8FD8\u662F\u6309\u964D\u5E8F\u8003\u8651\u201Cdata\u201D\u4E2D\u7684\u503C\u3002"}]},RANK_AVG:{d:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6570\u636E\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6570\u636E\u96C6\u4E2D\u5B58\u5728\u591A\u9879\uFF0C\u5219\u8FD4\u56DE\u8FD9\u4E9B\u9879\u6392\u540D\u7684\u5E73\u5747\u503C\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6570\u636E\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6570\u636E\u96C6\u4E2D\u5B58\u5728\u591A\u9879\uFF0C\u5219\u8FD4\u56DE\u8FD9\u4E9B\u9879\u6392\u540D\u7684\u5E73\u5747\u503C\u3002",p:[{name:"number",detail:"\u8981\u786E\u5B9A\u5176\u6392\u540D\u7684\u503C\u3002"},{name:"ref",detail:"\u5305\u542B\u76F8\u5173\u6570\u636E\u96C6\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"order",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A\u6309\u964D\u5E8F (FALSE()) ] - \u8981\u6309\u5347\u5E8F\u8FD8\u662F\u6309\u964D\u5E8F\u8003\u8651\u201Cdata\u201D\u4E2D\u7684\u503C\u3002"}]},PERCENTRANK_EXC:{d:"\u4EE5\u767E\u5206\u6570\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7ED9\u5B9A\u6570\u636E\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF0C\u4E0D\u5305\u62EC\u4E24\u7AEF\u503C\uFF09\u3002",a:"\u4EE5\u767E\u5206\u6570\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7ED9\u5B9A\u6570\u636E\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF0C\u4E0D\u5305\u62EC\u4E24\u7AEF\u503C\uFF09\u3002",p:[{name:"data",detail:"\u5305\u542B\u76F8\u5173\u6570\u636E\u96C6\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"x",detail:"\u8981\u786E\u5B9A\u5176\u767E\u5206\u6BD4\u6392\u4F4D\u7684\u503C\u3002"},{name:"significance",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 3] - \u8981\u5728\u8BA1\u7B97\u4E2D\u4F7F\u7528\u7684\u6709\u6548\u4F4D\u6570\u3002"}]},PERCENTRANK_INC:{d:"\u4EE5\u767E\u5206\u6BD4\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7ED9\u5B9A\u6570\u636E\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF0C\u5305\u62EC\u4E24\u7AEF\u503C\uFF09\u3002",a:"\u4EE5\u767E\u5206\u6BD4\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7ED9\u5B9A\u6570\u636E\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF0C\u5305\u62EC\u4E24\u7AEF\u503C\uFF09\u3002",p:[{name:"data",detail:"\u5305\u542B\u76F8\u5173\u6570\u636E\u96C6\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"x",detail:"\u8981\u786E\u5B9A\u5176\u767E\u5206\u6BD4\u6392\u4F4D\u7684\u503C\u3002"},{name:"significance",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 3] - \u8981\u5728\u8BA1\u7B97\u4E2D\u4F7F\u7528\u7684\u6709\u6548\u4F4D\u6570\u3002"}]},FORECAST:{d:"\u57FA\u4E8E\u6570\u636E\u96C6\u7684\u7EBF\u6027\u56DE\u5F52\uFF0C\u8BA1\u7B97\u6307\u5B9A x \u7684\u9884\u671F y \u503C\u3002",a:"\u57FA\u4E8E\u6570\u636E\u96C6\u7684\u7EBF\u6027\u56DE\u5F52",p:[{name:"x",detail:"x\u8F74\u4E0A\u7528\u4E8E\u9884\u6D4B\u7684\u503C\u3002"},{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},FISHERINV:{d:"\u8FD4\u56DE\u6307\u5B9A\u6570\u503C\u7684 Fisher \u9006\u53D8\u6362\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6570\u503C\u7684 Fisher \u9006\u53D8\u6362\u3002",p:[{name:"y",detail:"\u8981\u8BA1\u7B97\u5176Fisher\u9006\u53D8\u6362\u7684\u6570\u503C\u3002"}]},FISHER:{d:"\u8FD4\u56DE\u6307\u5B9A\u6570\u503C\u7684 Fisher \u53D8\u6362\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6570\u503C\u7684 Fisher \u53D8\u6362\u3002",p:[{name:"x",detail:"\u8981\u8BA1\u7B97\u5176Fisher\u53D8\u6362\u7684\u6570\u503C\u3002"}]},MODE_SNGL:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u51FA\u73B0\u6B21\u6570\u6700\u591A\u7684\u503C\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u51FA\u73B0\u6B21\u6570\u6700\u591A\u7684\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u6A21\u5F0F\u65F6\u8981\u68C0\u67E5\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u6A21\u5F0F\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},WEIBULL_DIST:{d:"\u7ED9\u5B9A\u5F62\u72B6\u548C\u5C3A\u5EA6\uFF0C\u8FD4\u56DE\u97E6\u4F2F\u5206\u5E03\u51FD\u6570\uFF08\u6216\u97E6\u4F2F\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF09\u7684\u503C\u3002",a:"\u7ED9\u5B9A\u5F62\u72B6\u548C\u5C3A\u5EA6",p:[{name:"x",detail:"WEIBULL \u5206\u5E03\u51FD\u6570\u7684\u8F93\u5165\u503C\u3002"},{name:"alpha",detail:`Weibull \u5206\u5E03\u51FD\u6570\u7684\u5F62\u72B6\u53C2\u6570\u3002 + +alpha \u503C\u5FC5\u987B\u5927\u4E8E 0\u3002`},{name:"beta",detail:`Weibull \u5206\u5E03\u51FD\u6570\u7684\u5C3A\u5EA6\u53C2\u6570\u3002 + +beta \u503C\u5FC5\u987B\u5927\u4E8E 0\u3002`},{name:"cumulative",detail:"TRUE() \u8868\u793A\u4F7F\u7528\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF0CFALSE() \u5219\u8868\u793A\u4F7F\u7528\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002"}]},COUNT:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u6570\u503C\u7684\u4E2A\u6570\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u6570\u503C\u7684\u4E2A\u6570\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u6570\u65F6\u8981\u68C0\u67E5\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u5728\u8BA1\u6570\u65F6\u8981\u68C0\u67E5\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},COUNTA:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u503C\u7684\u6570\u91CF\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u503C\u7684\u6570\u91CF\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u6570\u65F6\u8981\u68C0\u67E5\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u5728\u8BA1\u6570\u65F6\u8981\u68C0\u67E5\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},AVEDEV:{d:"\u8BA1\u7B97\u6570\u636E\u4E0E\u6570\u636E\u96C6\u5747\u503C\u4E4B\u95F4\u7684\u504F\u5DEE\u5927\u5C0F\u7684\u5E73\u5747\u503C\u3002",a:"\u8BA1\u7B97\u6570\u636E\u4E0E\u6570\u636E\u96C6\u5747\u503C\u4E4B\u95F4\u7684\u504F\u5DEE\u5927\u5C0F\u7684\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6837\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},AVERAGE:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u7B97\u672F\u5E73\u5747\u503C\uFF0C\u5BF9\u6587\u672C\u5FFD\u7565\u4E0D\u8BA1\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u7B97\u672F\u5E73\u5747\u503C",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u5E73\u5747\u503C\u65F6\u7528\u5230\u7684\u7B2C\u4E00\u4E2A\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u5E73\u5747\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},AVERAGEA:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u7B97\u672F\u5E73\u5747\u503C\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u7B97\u672F\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u5E73\u5747\u503C\u65F6\u7528\u5230\u7684\u7B2C\u4E00\u4E2A\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u5E73\u5747\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},BINOM_DIST:{d:"\u8FD4\u56DE\u4E00\u5143\u4E8C\u9879\u5F0F\u5206\u5E03\u7684\u6982\u7387\u3002",a:"\u8FD4\u56DE\u4E00\u5143\u4E8C\u9879\u5F0F\u5206\u5E03\u7684\u6982\u7387\u3002",p:[{name:"number_s",detail:"\u8BD5\u9A8C\u7684\u6210\u529F\u6B21\u6570\u3002"},{name:"trials",detail:"\u72EC\u7ACB\u68C0\u9A8C\u7684\u6B21\u6570\u3002"},{name:"probability_s",detail:"\u4EFB\u4E00\u7ED9\u5B9A\u68C0\u9A8C\u7684\u6210\u529F\u6982\u7387\u3002"},{name:"cumulative",detail:"\u662F\u5426\u4F7F\u7528\u4E8C\u9879\u5F0F\u7D2F\u79EF\u5206\u5E03\u3002"}]},BINOM_INV:{d:"\u8BA1\u7B97\u7D2F\u79EF\u4E8C\u9879\u5F0F\u5206\u5E03\u5927\u4E8E\u6216\u7B49\u4E8E\u6307\u5B9A\u6761\u4EF6\u7684\u6700\u5C0F\u503C\u3002",a:"\u8BA1\u7B97\u7D2F\u79EF\u4E8C\u9879\u5F0F\u5206\u5E03\u5927\u4E8E\u6216\u7B49\u4E8E\u6307\u5B9A\u6761\u4EF6\u7684\u6700\u5C0F\u503C\u3002",p:[{name:"trials",detail:"\u8D1D\u52AA\u5229\u8BD5\u9A8C\u6B21\u6570\u3002"},{name:"probability_s",detail:"\u4EFB\u4E00\u6B21\u7ED9\u5B9A\u68C0\u9A8C\u7684\u6210\u529F\u6982\u7387\u3002"},{name:"alpha",detail:"\u671F\u671B\u7684\u4E34\u754C\u6982\u7387\u3002"}]},CONFIDENCE_NORM:{d:"\u8BA1\u7B97\u6B63\u6001\u5206\u5E03\u7684\u7F6E\u4FE1\u533A\u95F4\u7684\u4E00\u534A\u5BBD\u5EA6\u3002",a:"\u8BA1\u7B97\u6B63\u6001\u5206\u5E03\u7684\u7F6E\u4FE1\u533A\u95F4\u7684\u4E00\u534A\u5BBD\u5EA6\u3002",p:[{name:"alpha",detail:`\u7528\u6765\u8BA1\u7B97\u7F6E\u4FE1\u6C34\u5E73\u7684\u663E\u8457\u6027\u6C34\u5E73\u3002 + +\u7F6E\u4FE1\u6C34\u5E73\u7B49\u4E8E 100*(1 - alpha)%\uFF0C\u4EA6\u5373\uFF0C\u5982\u679C alpha \u4E3A 0.05\uFF0C\u5219\u7F6E\u4FE1\u6C34\u5E73\u4E3A 95%\u3002`},{name:"standard_dev",detail:"\u6570\u636E\u533A\u57DF\u7684\u603B\u4F53\u6807\u51C6\u504F\u5DEE\u3002"},{name:"size",detail:"\u6837\u672C\u603B\u91CF\u7684\u5927\u5C0F\u3002"}]},CORREL:{d:"\u8BA1\u7B97\u7ED9\u5B9A\u6570\u636E\u96C6\u7684\u76AE\u5C14\u900A\u79EF\u77E9\u76F8\u5173\u7CFB\u6570 r\u3002",a:"\u8BA1\u7B97\u7ED9\u5B9A\u6570\u636E\u96C6\u7684\u76AE\u5C14\u900A\u79EF\u77E9\u76F8\u5173\u7CFB\u6570 r\u3002",p:[{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},COVARIANCE_P:{d:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u603B\u4F53\u534F\u65B9\u5DEE\u3002",a:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u603B\u4F53\u534F\u65B9\u5DEE\u3002",p:[{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},COVARIANCE_S:{d:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u6837\u672C\u534F\u65B9\u5DEE\u3002",a:"\u8BA1\u7B97\u6570\u636E\u96C6\u7684\u6837\u672C\u534F\u65B9\u5DEE\u3002",p:[{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},DEVSQ:{d:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u5176\u504F\u5DEE\u7684\u5E73\u65B9\u548C\u3002",a:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u5176\u504F\u5DEE\u7684\u5E73\u65B9\u548C\u3002",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6837\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},EXPON_DIST:{d:"\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A Lambda \u548C\u6307\u5B9A\u503C\u7684\u6307\u6570\u5206\u5E03\u51FD\u6570\u7684\u503C\u3002",a:"\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A Lambda \u548C\u6307\u5B9A\u503C\u7684\u6307\u6570\u5206\u5E03\u51FD\u6570\u7684\u503C\u3002",p:[{name:"x",detail:"\u6307\u6570\u5206\u5E03\u51FD\u6570\u7684\u8F93\u5165\u503C\u3002"},{name:"lambda",detail:"\u7528\u4E8E\u6307\u5B9A\u6307\u6570\u5206\u5E03\u51FD\u6570\u7684 lambda \u503C\u3002"},{name:"cumulative",detail:"\u662F\u5426\u4F7F\u7528\u6307\u6570\u7D2F\u79EF\u5206\u5E03\u3002"}]},AVERAGEIF:{d:"\u6839\u636E\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u7684\u5E73\u5747\u503C\u3002",a:"\u6839\u636E\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u7684\u5E73\u5747\u503C\u3002",p:[{name:"criteria_range",detail:"\u8981\u5BF9\u5176\u68C0\u67E5 criterion \u7684\u8303\u56F4\u3002"},{name:"criterion",detail:`\u8981\u5E94\u7528\u4E8E criteria_range \u7684\u6A21\u5F0F\u6216\u6D4B\u8BD5\u6761\u4EF6\u3002 + +\u7B49\u4E8E\uFF1A"\u6587\u672C" \u6216 1 \u6216 "=\u6587\u672C" \u6216 "=1" + +\u5927\u4E8E\uFF1A">1" + +\u5927\u4E8E\u7B49\u4E8E\uFF1A">=1" + +\u5C0F\u4E8E\uFF1A"<1" + +\u5C0F\u4E8E\u7B49\u4E8E\uFF1A"<=1" + +\u4E0D\u7B49\u4E8E\uFF1A"<>1"\u6216"<>\u6587\u672C"`},{name:"average_range",detail:"[\u53EF\u9009] - \u8981\u8BA1\u7B97\u5E73\u5747\u503C\u7684\u8303\u56F4\u3002\u5982\u679C\u672A\u63D0\u4F9B\u6B64\u53C2\u6570\uFF0C\u5219\u6539\u7528 criteria_range \u6765\u8BA1\u7B97\u5E73\u5747\u503C\u3002"}]},AVERAGEIFS:{d:"\u6839\u636E\u591A\u9879\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u7684\u5E73\u5747\u503C\u3002",a:"\u6839\u636E\u591A\u9879\u6761\u4EF6\u8FD4\u56DE\u8303\u56F4\u7684\u5E73\u5747\u503C\u3002",p:[{name:"average_range",detail:"\u8981\u8BA1\u7B97\u5E73\u5747\u503C\u7684\u8303\u56F4\u3002"},{name:"criteria_range1",detail:"\u8981\u5BF9\u5176\u68C0\u67E5 criterion1 \u7684\u8303\u56F4\u3002"},{name:"criterion1",detail:"\u8981\u5E94\u7528\u4E8E criteria_range1 \u7684\u6A21\u5F0F\u6216\u6D4B\u8BD5\u6761\u4EF6\u3002"},{name:"criteria_range2, criterion2, ...",detail:"[\u53EF\u9009] - \u8981\u68C0\u67E5\u7684\u5176\u4ED6\u8303\u56F4\u548C\u6761\u4EF6\u3002"}]},PERMUT:{d:"\u8FD4\u56DE\u53EF\u4ECE\u6570\u5B57\u5BF9\u8C61\u4E2D\u9009\u62E9\u7684\u7ED9\u5B9A\u6570\u76EE\u5BF9\u8C61\u7684\u6392\u5217\u6570\u3002",a:"\u8FD4\u56DE\u53EF\u4ECE\u6570\u5B57\u5BF9\u8C61\u4E2D\u9009\u62E9\u7684\u7ED9\u5B9A\u6570\u76EE\u5BF9\u8C61\u7684\u6392\u5217\u6570\u3002",p:[{name:"number",detail:"\u8868\u793A\u5BF9\u8C61\u4E2A\u6570\u7684\u6574\u6570\u3002"},{name:"number_chosen",detail:"\u8868\u793A\u6BCF\u4E2A\u6392\u5217\u4E2D\u5BF9\u8C61\u4E2A\u6570\u7684\u6574\u6570\u3002"}]},TRIMMEAN:{d:"\u5728\u6392\u9664\u6570\u636E\u96C6\u9AD8\u4F4E\u4E24\u7AEF\u7684\u90E8\u5206\u6570\u636E\u4E4B\u540E\u8BA1\u7B97\u6240\u5F97\u7684\u5747\u503C\u3002",a:"\u5728\u6392\u9664\u6570\u636E\u96C6\u9AD8\u4F4E\u4E24\u7AEF\u7684\u90E8\u5206\u6570\u636E\u4E4B\u540E\u8BA1\u7B97\u6240\u5F97\u7684\u5747\u503C\u3002",p:[{name:"\u6570\u636E",detail:"\u5305\u542B\u76F8\u5173\u6570\u636E\u96C6\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"\u6392\u9664\u6BD4\u4F8B",detail:`\u8981\u4ECE\u6570\u636E\u96C6\u7684\u6781\u503C\u90E8\u5206\u6392\u9664\u7684\u6570\u636E\u5360\u6570\u636E\u96C6\u7684\u6BD4\u4F8B\u3002 + +\u6392\u9664\u6BD4\u4F8B\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E0\u4E14\u5C0F\u4E8E1\u3002`}]},PERCENTILE_EXC:{d:"\u8FD4\u56DE\u6570\u7EC4\u7684 K \u767E\u5206\u70B9\u503C\uFF0CK \u4ECB\u4E8E 0 \u5230 1 \u4E4B\u95F4\uFF0C\u4E0D\u542B 0 \u4E0E 1\u3002",a:"\u8FD4\u56DE\u6570\u7EC4\u7684 K \u767E\u5206\u70B9\u503C\uFF0CK \u4ECB\u4E8E 0 \u5230 1 \u4E4B\u95F4\uFF0C\u4E0D\u542B 0 \u4E0E 1\u3002",p:[{name:"array",detail:"\u5B9A\u4E49\u76F8\u5BF9\u4F4D\u7F6E\u7684\u6570\u7EC4\u6216\u6570\u636E\u533A\u57DF\u3002"},{name:"k",detail:"0 \u5230 1 \u4E4B\u95F4\u7684\u767E\u5206\u70B9\u503C\uFF0C\u4E0D\u5305\u542B 0 \u548C 1\u3002"}]},PERCENTILE_INC:{d:"\u8FD4\u56DE\u6570\u7EC4\u7684 K \u767E\u5206\u70B9\u503C\uFF0CK \u4ECB\u4E8E 0 \u5230 1 \u4E4B\u95F4\uFF0C\u5305\u542B 0 \u4E0E 1\u3002",a:"\u8FD4\u56DE\u6570\u7EC4\u7684 K \u767E\u5206\u70B9\u503C\uFF0CK \u4ECB\u4E8E 0 \u5230 1 \u4E4B\u95F4\uFF0C\u5305\u542B 0 \u4E0E 1\u3002",p:[{name:"array",detail:"\u5B9A\u4E49\u76F8\u5BF9\u4F4D\u7F6E\u7684\u6570\u7EC4\u6216\u6570\u636E\u533A\u57DF\u3002"},{name:"k",detail:"0 \u5230 1 \u4E4B\u95F4\u7684\u767E\u5206\u70B9\u503C\uFF0C\u5305\u542B 0 \u548C 1\u3002"}]},PEARSON:{d:"\u8FD4\u56DE\u76AE\u5C14\u751F(Pearson)\u4E58\u79EF\u77E9\u76F8\u5173\u7CFB\u6570 r\u3002",a:"\u8FD4\u56DE\u76AE\u5C14\u751F(Pearson)\u4E58\u79EF\u77E9\u76F8\u5173\u7CFB\u6570 r\u3002",p:[{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},NORM_S_INV:{d:"\u8FD4\u56DE\u6807\u51C6\u6B63\u6001\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u7684\u53CD\u51FD\u6570\u503C\u3002 \u8BE5\u5206\u5E03\u7684\u5E73\u5747\u503C\u4E3A 0\uFF0C\u6807\u51C6\u504F\u5DEE\u4E3A 1\u3002",a:"\u8FD4\u56DE\u6807\u51C6\u6B63\u6001\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u7684\u53CD\u51FD\u6570\u503C\u3002 \u8BE5\u5206\u5E03\u7684\u5E73\u5747\u503C\u4E3A 0\uFF0C\u6807\u51C6\u504F\u5DEE\u4E3A 1\u3002",p:[{name:"probability",detail:"\u5BF9\u5E94\u4E8E\u6B63\u6001\u5206\u5E03\u7684\u6982\u7387\u3002"}]},NORM_S_DIST:{d:"\u8FD4\u56DE\u6807\u51C6\u6B63\u6001\u5206\u5E03\u51FD\u6570\uFF08\u8BE5\u5206\u5E03\u7684\u5E73\u5747\u503C\u4E3A 0\uFF0C\u6807\u51C6\u504F\u5DEE\u4E3A 1\uFF09\u3002",a:"\u8FD4\u56DE\u6807\u51C6\u6B63\u6001\u5206\u5E03\u51FD\u6570\uFF08\u8BE5\u5206\u5E03\u7684\u5E73\u5747\u503C\u4E3A 0\uFF0C\u6807\u51C6\u504F\u5DEE\u4E3A 1\uFF09\u3002",p:[{name:"z",detail:"\u9700\u8981\u8BA1\u7B97\u5176\u5206\u5E03\u7684\u6570\u503C\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002 + +\u5982\u679C\u4E3A TRUE()\uFF0C\u5219\u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},NORM_INV:{d:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6807\u51C6\u504F\u5DEE\u7684\u6B63\u6001\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u7684\u53CD\u51FD\u6570\u503C\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6807\u51C6\u504F\u5DEE\u7684\u6B63\u6001\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u7684\u53CD\u51FD\u6570\u503C\u3002",p:[{name:"probability",detail:"\u5BF9\u5E94\u4E8E\u6B63\u6001\u5206\u5E03\u7684\u6982\u7387\u3002"},{name:"mean",detail:"\u5206\u5E03\u7684\u7B97\u672F\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"\u5206\u5E03\u7684\u6807\u51C6\u504F\u5DEE\u3002"}]},NORM_DIST:{d:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6807\u51C6\u504F\u5DEE\u7684\u6B63\u6001\u5206\u5E03\u51FD\u6570\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6807\u51C6\u504F\u5DEE\u7684\u6B63\u6001\u5206\u5E03\u51FD\u6570\u3002",p:[{name:"x",detail:"\u9700\u8981\u8BA1\u7B97\u5176\u5206\u5E03\u7684\u6570\u503C\u3002"},{name:"mean",detail:"\u5206\u5E03\u7684\u7B97\u672F\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"\u5206\u5E03\u7684\u6807\u51C6\u504F\u5DEE\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002 + +\u5982\u679C\u4E3A TRUE()\uFF0C\u5219\u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},NEGBINOM_DIST:{d:"\u8FD4\u56DE\u8D1F\u4E8C\u9879\u5F0F\u5206\u5E03\u3002",a:"\u8FD4\u56DE\u8D1F\u4E8C\u9879\u5F0F\u5206\u5E03\u3002",p:[{name:"number_f",detail:"\u8981\u6A21\u62DF\u7684\u5931\u8D25\u6B21\u6570\u3002"},{name:"number_s",detail:"\u8981\u6A21\u62DF\u7684\u6210\u529F\u6B21\u6570\u3002"},{name:"probability_s",detail:"\u4EFB\u4E00\u6B21\u7ED9\u5B9A\u68C0\u9A8C\u7684\u6210\u529F\u6982\u7387\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002 + +\u5982\u679C\u4E3A TRUE()\uFF0C\u5219\u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},MINA:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5C0F\u6570\u503C\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5C0F\u6570\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u6700\u5C0F\u503C\u65F6\u6240\u7528\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u6700\u5C0F\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},MIN:{d:"\u8FD4\u56DE\u6570\u503C\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5C0F\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5C0F\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u6700\u5C0F\u503C\u65F6\u6240\u7528\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u6700\u5C0F\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},MEDIAN:{d:"\u8FD4\u56DE\u6570\u503C\u6570\u636E\u96C6\u4E2D\u7684\u4E2D\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u6570\u636E\u96C6\u4E2D\u7684\u4E2D\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u4E2D\u503C\u65F6\u6240\u7528\u7684\u7B2C\u4E00\u4E2A\u6570\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u4E2D\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},MAXA:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5927\u6570\u503C\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5927\u6570\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u6700\u5927\u503C\u65F6\u6240\u7528\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u6700\u5927\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},MAX:{d:"\u8FD4\u56DE\u6570\u503C\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5927\u503C\u3002",a:"\u8FD4\u56DE\u6570\u503C\u6570\u636E\u96C6\u4E2D\u7684\u6700\u5927\u503C\u3002",p:[{name:"\u503C1",detail:"\u8BA1\u7B97\u6700\u5927\u503C\u65F6\u6240\u7528\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2",detail:"[\u53EF\u9009] - \u5728\u8BA1\u7B97\u6700\u5927\u503C\u65F6\u8981\u8003\u8651\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},LOGNORM_INV:{d:"\u8FD4\u56DE x \u7684\u5BF9\u6570\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u7684\u53CD\u51FD\u6570\u503C\u3002",a:"\u8FD4\u56DE x \u7684\u5BF9\u6570\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u7684\u53CD\u51FD\u6570\u503C\u3002",p:[{name:"probability",detail:"\u4E0E\u5BF9\u6570\u5206\u5E03\u76F8\u5173\u7684\u6982\u7387\uFF0C\u4ECB\u4E8E 0 \u4E0E 1 \u4E4B\u95F4\uFF08\u4E0D\u542B 0 \u4E0E 1\uFF09\u3002"},{name:"mean",detail:"ln(x) \u7684\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"ln(x) \u7684\u6807\u51C6\u504F\u5DEE\uFF0C\u6B63\u6570\u3002"}]},LOGNORM_DIST:{d:"\u8FD4\u56DE x \u7684\u5BF9\u6570\u5206\u5E03\u51FD\u6570\u3002",a:"\u8FD4\u56DE x \u7684\u5BF9\u6570\u5206\u5E03\u51FD\u6570\u3002",p:[{name:"x",detail:"\u7528\u6765\u8BA1\u7B97\u51FD\u6570\u7684\u503C\u3002"},{name:"mean",detail:"ln(x) \u7684\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"ln(x) \u7684\u6807\u51C6\u504F\u5DEE\uFF0C\u6B63\u6570\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002 + +\u5982\u679C\u4E3A TRUE()\uFF0C\u5219\u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},Z_TEST:{d:"\u8FD4\u56DE z \u68C0\u9A8C\u7684\u5355\u5C3E P \u503C\u3002",a:"\u8FD4\u56DE z \u68C0\u9A8C\u7684\u5355\u5C3E P \u503C\u3002",p:[{name:"array",detail:"\u7528\u6765\u68C0\u9A8C x \u7684\u6570\u7EC4\u6216\u6570\u636E\u533A\u57DF\u3002"},{name:"x",detail:"\u8981\u6D4B\u8BD5\u7684\u503C\u3002"},{name:"sigma",detail:"[\u53EF\u9009] - \u603B\u4F53\uFF08\u5DF2\u77E5\uFF09\u6807\u51C6\u504F\u5DEE\u3002 \u5982\u679C\u7701\u7565\uFF0C\u5219\u4F7F\u7528\u6837\u672C\u6807\u51C6\u504F\u5DEE\u3002"}]},PROB:{d:"\u8FD4\u56DE\u533A\u57DF\u4E2D\u7684\u6570\u503C\u843D\u5728\u6307\u5B9A\u533A\u95F4\u5185\u7684\u6982\u7387\u3002",a:"\u8FD4\u56DE\u533A\u57DF\u4E2D\u7684\u6570\u503C\u843D\u5728\u6307\u5B9A\u533A\u95F4\u5185\u7684\u6982\u7387\u3002",p:[{name:"x_range",detail:"\u5177\u6709\u5404\u81EA\u76F8\u5E94\u6982\u7387\u503C\u7684 x \u6570\u503C\u533A\u57DF\u3002"},{name:"prob_range",detail:"\u4E0E x_range \u4E2D\u7684\u503C\u76F8\u5173\u8054\u7684\u4E00\u7EC4\u6982\u7387\u503C\u3002"},{name:"lower_limit",detail:"\u8981\u8BA1\u7B97\u5176\u6982\u7387\u7684\u6570\u503C\u4E0B\u754C\u3002"},{name:"upper_limit",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A\u4E0B\u754C] - \u8981\u8BA1\u7B97\u5176\u6982\u7387\u7684\u53EF\u9009\u6570\u503C\u4E0A\u754C\u3002 + +\u5982\u679C\u7701\u7565\u4E0A\u754C\uFF0CPROB\u5219\u8BA1\u7B97\u968F\u673A\u9009\u53D6\u76F8\u5E94\u503C\u7684\u6B21\u6570\u6070\u597D\u7B49\u4E8E\u4E0B\u754C\u7684\u6982\u7387\u3002`}]},QUARTILE_EXC:{d:"\u57FA\u4E8E 0 \u5230 1 \u4E4B\u95F4\uFF08\u4E0D\u5305\u62EC 0 \u548C 1\uFF09\u7684\u767E\u5206\u70B9\u503C\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u56DB\u5206\u4F4D\u6570\u3002",a:"\u57FA\u4E8E 0 \u5230 1 \u4E4B\u95F4\uFF08\u4E0D\u5305\u62EC 0 \u548C 1\uFF09\u7684\u767E\u5206\u70B9\u503C\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u56DB\u5206\u4F4D\u6570\u3002",p:[{name:"array",detail:"\u8981\u6C42\u5F97\u56DB\u5206\u4F4D\u6570\u503C\u7684\u6570\u7EC4\u6216\u6570\u5B57\u578B\u5355\u5143\u683C\u533A\u57DF\u3002"},{name:"quart",detail:`\u8981\u8FD4\u56DE\u7B2C\u51E0\u4E2A\u56DB\u5206\u4F4D\u503C\u3002 + +1\u8FD4\u56DE\u6570\u636E\u4E2D\u6700\u9760\u8FD1\u7B2C\u4E00\u4E2A\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0825%\u6807\u8BB0\uFF09\u3002 + +2\u8FD4\u56DE\u6570\u636E\u4E2D\u6700\u63A5\u8FD1\u4E2D\u503C\u7684\u503C\uFF0850%\u6807\u8BB0\uFF09\u3002 + +3\u8FD4\u56DE\u6570\u636E\u4E2D\u6700\u63A5\u8FD1\u7B2C\u4E09\u4E2A\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0875%\u6807\u8BB0\uFF09\u3002`}]},QUARTILE_INC:{d:"\u6839\u636E 0 \u5230 1 \u4E4B\u95F4\u7684\u767E\u5206\u70B9\u503C\uFF08\u5305\u542B 0 \u548C 1\uFF09\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u56DB\u5206\u4F4D\u6570\u3002",a:"\u6839\u636E 0 \u5230 1 \u4E4B\u95F4\u7684\u767E\u5206\u70B9\u503C\uFF08\u5305\u542B 0 \u548C 1\uFF09\u8FD4\u56DE\u6570\u636E\u96C6\u7684\u56DB\u5206\u4F4D\u6570\u3002",p:[{name:"array",detail:"\u8981\u6C42\u5F97\u56DB\u5206\u4F4D\u6570\u503C\u7684\u6570\u7EC4\u6216\u6570\u5B57\u578B\u5355\u5143\u683C\u533A\u57DF\u3002"},{name:"quart",detail:`\u8981\u8FD4\u56DE\u7B2C\u51E0\u4E2A\u56DB\u5206\u4F4D\u503C\u3002 + +0\u8FD4\u56DE\u6570\u636E\u4E2D\u7684\u6700\u5C0F\u503C\uFF080%\u6807\u8BB0\uFF09\u3002 + +1\u8FD4\u56DE\u6570\u636E\u4E2D\u6700\u9760\u8FD1\u7B2C\u4E00\u4E2A\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0825%\u6807\u8BB0\uFF09\u3002 + +2\u8FD4\u56DE\u6570\u636E\u4E2D\u6700\u63A5\u8FD1\u4E2D\u503C\u7684\u503C\uFF0850%\u6807\u8BB0\uFF09\u3002 + +3\u8FD4\u56DE\u6570\u636E\u4E2D\u6700\u63A5\u8FD1\u7B2C\u4E09\u4E2A\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0875%\u6807\u8BB0\uFF09\u3002 + +4\u8FD4\u56DE\u6570\u636E\u4E2D\u7684\u6700\u5927\u503C\uFF08100%\u6807\u8BB0\uFF09\u3002`}]},POISSON_DIST:{d:"\u8FD4\u56DE\u6CCA\u677E\u5206\u5E03\u3002",a:"\u8FD4\u56DE\u6CCA\u677E\u5206\u5E03\u3002",p:[{name:"x",detail:"\u4E8B\u4EF6\u6570\u3002"},{name:"mean",detail:"\u671F\u671B\u503C\u3002\u975E\u8D1F\u6570"},{name:"cumulative",detail:`\u4E00\u903B\u8F91\u503C\uFF0C\u786E\u5B9A\u6240\u8FD4\u56DE\u7684\u6982\u7387\u5206\u5E03\u7684\u5F62\u5F0F\u3002 + +\u5982\u679C\u4E3A TRUE()\uFF0C\u5219\u8FD4\u56DE\u53D1\u751F\u7684\u968F\u673A\u4E8B\u4EF6\u6570\u5728\u96F6\uFF08\u542B\u96F6\uFF09\u548C x\uFF08\u542B x\uFF09\u4E4B\u95F4\u7684\u7D2F\u79EF\u6CCA\u677E\u6982\u7387\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u53D1\u751F\u7684\u4E8B\u4EF6\u6570\u6B63\u597D\u662F x \u7684\u6CCA\u677E\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},RSQ:{d:"\u8FD4\u56DE\u76AE\u5C14\u751F(Pearson)\u4E58\u79EF\u77E9\u76F8\u5173\u7CFB\u6570 r \u7684\u5E73\u65B9\u3002",a:"\u8FD4\u56DE\u76AE\u5C14\u751F(Pearson)\u4E58\u79EF\u77E9\u76F8\u5173\u7CFB\u6570 r \u7684\u5E73\u65B9\u3002",p:[{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},T_DIST:{d:"\u8FD4\u56DE\u5B66\u751F\u7684\u5DE6\u5C3E t \u5206\u5E03\u3002",a:"\u8FD4\u56DE\u5B66\u751F\u7684\u5DE6\u5C3E t \u5206\u5E03\u3002",p:[{name:"x",detail:"T-\u5206\u5E03\u51FD\u6570\u7684\u8F93\u5165\u3002"},{name:"degrees_freedom",detail:"\u81EA\u7531\u5EA6\u6570\u503C\u3002"},{name:"tails",detail:`\u51B3\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002 + +\u5982\u679C cumulative \u4E3A TRUE()\uFF0C\u5219 HYPGEOM.DIST \u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\uFF1B + +\u5982\u679C\u4E3A FALSE()\uFF0C\u5219\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u3002`}]},T_DIST_2T:{d:"\u8FD4\u56DE\u5B66\u751F\u7684\u53CC\u5C3E t \u5206\u5E03\u3002",a:"\u8FD4\u56DE\u5B66\u751F\u7684\u53CC\u5C3E t \u5206\u5E03\u3002",p:[{name:"x",detail:"T-\u5206\u5E03\u51FD\u6570\u7684\u8F93\u5165\u3002"},{name:"degrees_freedom",detail:"\u81EA\u7531\u5EA6\u6570\u503C\u3002"}]},T_DIST_RT:{d:"\u8FD4\u56DE\u5B66\u751F\u7684\u53F3\u5C3E t \u5206\u5E03\u3002",a:"\u8FD4\u56DE\u5B66\u751F\u7684\u53F3\u5C3E t \u5206\u5E03\u3002",p:[{name:"x",detail:"T-\u5206\u5E03\u51FD\u6570\u7684\u8F93\u5165\u3002"},{name:"degrees_freedom",detail:"\u81EA\u7531\u5EA6\u6570\u503C\u3002"}]},T_INV:{d:"\u8FD4\u56DE\u5B66\u751F\u7684 t \u5206\u5E03\u7684\u5DE6\u5C3E\u53CD\u51FD\u6570\u3002",a:"\u8FD4\u56DE\u5B66\u751F\u7684 t \u5206\u5E03\u7684\u5DE6\u5C3E\u53CD\u51FD\u6570\u3002",p:[{name:"probability",detail:`\u4E0E\u5B66\u751F\u7684 t \u5206\u5E03\u76F8\u5173\u7684\u6982\u7387\u3002 + +\u5FC5\u987B\u5927\u4E8E 0 \u4E14\u5C0F\u4E8E 1\u3002`},{name:"deg_freedom",detail:`\u81EA\u7531\u5EA6\u6570\u503C\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u53C2\u6570\u4E0D\u662F\u6574\u6570\uFF0C\u5C06\u622A\u53D6\u5176\u6574\u6570\u90E8\u5206\u3002 + +\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E 1\u3002`}]},T_INV_2T:{d:"\u8FD4\u56DE\u5B66\u751F t \u5206\u5E03\u7684\u53CC\u5C3E\u53CD\u51FD\u6570\u3002",a:"\u8FD4\u56DE\u5B66\u751F t \u5206\u5E03\u7684\u53CC\u5C3E\u53CD\u51FD\u6570\u3002",p:[{name:"probability",detail:`\u4E0E\u5B66\u751F\u7684 t \u5206\u5E03\u76F8\u5173\u7684\u6982\u7387\u3002 + +\u5FC5\u987B\u5927\u4E8E 0 \u4E14\u5C0F\u4E8E1\u3002`},{name:"deg_freedom",detail:`\u81EA\u7531\u5EA6\u6570\u503C\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u53C2\u6570\u4E0D\u662F\u6574\u6570\uFF0C\u5C06\u622A\u53D6\u5176\u6574\u6570\u90E8\u5206\u3002 + +\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E 1\u3002`}]},T_TEST:{d:"\u8FD4\u56DE\u4E0Et-\u68C0\u9A8C\u76F8\u5173\u7684\u6982\u7387\u3002\u7528\u4E8E\u5224\u65AD\u4E24\u4E2A\u6837\u672C\u662F\u5426\u53EF\u80FD\u662F\u51FA\u81EA\u5E73\u5747\u503C\u76F8\u540C\u7684\u4E24\u4E2A\u6837\u672C\u603B\u4F53\u3002",a:"\u8FD4\u56DE\u4E0Et-\u68C0\u9A8C\u76F8\u5173\u7684\u6982\u7387\u3002\u7528\u4E8E\u5224\u65AD\u4E24\u4E2A\u6837\u672C\u662F\u5426\u53EF\u80FD\u662F\u51FA\u81EA\u5E73\u5747\u503C\u76F8\u540C\u7684\u4E24\u4E2A\u6837\u672C\u603B\u4F53\u3002",p:[{name:"array1",detail:"\u5C06\u7528\u4E8E t \u68C0\u9A8C\u7684\u7B2C\u4E00\u4E2A\u6570\u636E\u6837\u672C\u6216\u7B2C\u4E00\u7EC4\u5355\u5143\u683C\u3002"},{name:"array2",detail:"\u5C06\u7528\u4E8E t \u68C0\u9A8C\u7684\u7B2C\u4E8C\u4E2A\u6570\u636E\u6837\u672C\u6216\u7B2C\u4E8C\u7EC4\u5355\u5143\u683C\u3002"},{name:"tails",detail:`\u6307\u5B9A\u5206\u5E03\u7684\u5C3E\u6570\u3002 + +\u5982\u679C\u4E3A 1\uFF1A\u4F7F\u7528\u5355\u5C3E\u5206\u5E03\u3002 + +\u5982\u679C\u4E3A 2\uFF1A\u4F7F\u7528\u53CC\u5C3E\u5206\u5E03\u3002`},{name:"type",detail:`\u6307\u5B9A t \u68C0\u9A8C\u7684\u7C7B\u578B\u3002 + +\u5982\u679C\u4E3A 1\uFF1A\u6267\u884C\u914D\u5BF9\u68C0\u9A8C\u3002 + +\u5982\u679C\u4E3A 2\uFF1A\u6267\u884C\u53CC\u6837\u672C\u7B49\u65B9\u5DEE\uFF08\u540C\u65B9\u5DEE\uFF09\u68C0\u9A8C\u3002 + +\u5982\u679C\u4E3A3\uFF1A\u6267\u884C\u53CC\u6837\u672C\u4E0D\u7B49\u65B9\u5DEE\uFF08\u5F02\u65B9\u5DEE\uFF09\u68C0\u9A8C\u3002`}]},F_DIST:{d:"\u7ED9\u5B9A\u8F93\u5165\u503C x\uFF0C\u8BA1\u7B97\u4E24\u4E2A\u6570\u636E\u96C6\u7684\u5DE6\u5C3E F \u6982\u7387\u5206\u5E03\uFF08\u5DEE\u5F02\u7A0B\u5EA6\uFF09\u3002\u6B64\u5206\u5E03\u4E5F\u79F0\u4E3A Fisher-Snedecor \u5206\u5E03\u6216 Snedecor F \u5206\u5E03\u3002",a:"\u7ED9\u5B9A\u8F93\u5165\u503C x",p:[{name:"x",detail:"\u7528\u6765\u8BA1\u7B97\u51FD\u6570\u7684\u503C\u3002"},{name:"degrees_freedom1",detail:"\u5206\u5B50\u81EA\u7531\u5EA6\u3002"},{name:"degrees_freedom2",detail:"\u5206\u6BCD\u81EA\u7531\u5EA6\u3002"},{name:"cumulative",detail:`\u7528\u4E8E\u786E\u5B9A\u51FD\u6570\u5F62\u5F0F\u7684\u903B\u8F91\u503C\u3002\u9ED8\u8BA4\u503C\u4E3A FALSE\u3002 + +\u5982\u679C\u4E3A TRUE()\uFF1AF.DIST \u5C06\u8FD4\u56DE\u7D2F\u79EF\u5206\u5E03\u51FD\u6570\u503C\u3002 + +\u5982\u679C\u4E3A FALSE()\uFF1AF.DIST \u5C06\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6570\u503C\u3002`}]},F_DIST_RT:{d:"\u7ED9\u5B9A\u8F93\u5165x\uFF0C\u8BA1\u7B97\u4E24\u4E2A\u6570\u636E\u96C6\u7684\u53F3\u5C3EF\u6982\u7387\u5206\u5E03\uFF08\u5DEE\u5F02\u7A0B\u5EA6\uFF09\u3002 \u6B64\u5206\u5E03\u4E5F\u79F0\u4E3AFisher-Snedecor\u5206\u5E03\u6216Snedecor F\u5206\u5E03\u3002",a:"\u7ED9\u5B9A\u8F93\u5165x",p:[{name:"x",detail:"\u7528\u6765\u8BA1\u7B97\u51FD\u6570\u7684\u503C\u3002"},{name:"degrees_freedom1",detail:"\u5206\u5B50\u81EA\u7531\u5EA6\u3002"},{name:"degrees_freedom2",detail:"\u5206\u6BCD\u81EA\u7531\u5EA6\u3002"}]},VAR_P:{d:"\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u65B9\u5DEE\u3002",a:"\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u65B9\u5DEE\u3002",p:[{name:"\u503C1",detail:"\u6570\u636E\u96C6\u4E2D\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, \u2026",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},VAR_S:{d:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u65B9\u5DEE\u3002",a:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u65B9\u5DEE\u3002",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, \u2026",detail:"[\u53EF\u9009] - \u6837\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},VARA:{d:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u65B9\u5DEE\uFF0C\u5C06\u6587\u672C\u53D6\u503C\u4E3A0\u3002",a:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u65B9\u5DEE",p:[{name:"value1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"value2, ...",detail:"[\u53EF\u9009] - \u6837\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},VARPA:{d:"\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u65B9\u5DEE\uFF0C\u5C06\u6587\u672C\u53D6\u503C\u4E3A0\u3002",a:"\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u65B9\u5DEE",p:[{name:"\u503C1",detail:"\u6837\u672C\u4E2D\u7684\u7B2C\u4E00\u9879\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u6570\u503C\u6216\u8303\u56F4\u3002"}]},STEYX:{d:"\u8FD4\u56DE\u901A\u8FC7\u7EBF\u6027\u56DE\u5F52\u6CD5\u9884\u6D4B\u6BCF\u4E2A x \u7684 y \u503C\u65F6\u6240\u4EA7\u751F\u7684\u6807\u51C6\u8BEF\u5DEE\u3002",a:"\u8FD4\u56DE\u901A\u8FC7\u7EBF\u6027\u56DE\u5F52\u6CD5\u9884\u6D4B\u6BCF\u4E2A x \u7684 y \u503C\u65F6\u6240\u4EA7\u751F\u7684\u6807\u51C6\u8BEF\u5DEE\u3002",p:[{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},STANDARDIZE:{d:"\u7ED9\u5B9A\u5206\u5E03\u7684\u5747\u503C\u548C\u6807\u51C6\u504F\u5DEE\uFF0C\u8BA1\u7B97\u4E00\u4E2A\u968F\u673A\u53D8\u91CF\u6B63\u6001\u5316\u7684\u76F8\u5E94\u503C\u3002",a:"\u7ED9\u5B9A\u5206\u5E03\u7684\u5747\u503C\u548C\u6807\u51C6\u504F\u5DEE\uFF0C\u8BA1\u7B97\u4E00\u4E2A\u968F\u673A\u53D8\u91CF\u6B63\u6001\u5316\u7684\u76F8\u5E94\u503C\u3002",p:[{name:"x",detail:"\u8981\u6B63\u6001\u5316\u7684\u968F\u673A\u53D8\u91CF\u503C\u3002"},{name:"mean",detail:"\u5206\u5E03\u7684\u5747\u503C\u3002"},{name:"standard_dev",detail:"\u5206\u5E03\u7684\u6807\u51C6\u504F\u5DEE\u3002"}]},SMALL:{d:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7684\u7B2C k \u4E2A\u6700\u5C0F\u503C\u3002",a:"\u8FD4\u56DE\u6570\u636E\u96C6\u4E2D\u7684\u7B2C k \u4E2A\u6700\u5C0F\u503C\u3002",p:[{name:"array",detail:"\u9700\u8981\u627E\u5230\u7B2C k \u4E2A\u6700\u5C0F\u503C\u7684\u6570\u7EC4\u6216\u6570\u503C\u6570\u636E\u533A\u57DF\u3002"},{name:"k",detail:"\u8981\u8FD4\u56DE\u7684\u6570\u636E\u5728\u6570\u7EC4\u6216\u6570\u636E\u533A\u57DF\u91CC\u7684\u4F4D\u7F6E\uFF08\u4ECE\u5C0F\u5230\u5927\uFF09\u3002"}]},SLOPE:{d:"\u8BA1\u7B97\u901A\u8FC7\u6570\u636E\u96C6\u7684\u7EBF\u6027\u56DE\u5F52\u5F97\u5230\u7684\u76F4\u7EBF\u7684\u659C\u7387\u3002",a:"\u8BA1\u7B97\u901A\u8FC7\u6570\u636E\u96C6\u7684\u7EBF\u6027\u56DE\u5F52\u5F97\u5230\u7684\u76F4\u7EBF\u7684\u659C\u7387\u3002",p:[{name:"\u6570\u636E_y",detail:"\u4EE3\u8868\u56E0\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"},{name:"\u6570\u636E_x",detail:"\u4EE3\u8868\u81EA\u53D8\u91CF\u6570\u636E\u6570\u7EC4\u6216\u77E9\u9635\u7684\u8303\u56F4\u3002"}]},SKEW:{d:"\u8FD4\u56DE\u5206\u5E03\u7684\u504F\u659C\u5EA6\u3002 \u504F\u659C\u5EA6\u8868\u660E\u5206\u5E03\u76F8\u5BF9\u4E8E\u5E73\u5747\u503C\u7684\u4E0D\u5BF9\u79F0\u7A0B\u5EA6\u3002 \u6B63\u504F\u659C\u5EA6\u8868\u660E\u5206\u5E03\u7684\u4E0D\u5BF9\u79F0\u5C3E\u90E8\u8D8B\u5411\u4E8E\u66F4\u591A\u6B63\u503C\u3002 \u8D1F\u504F\u659C\u5EA6\u8868\u660E\u5206\u5E03\u7684\u4E0D\u5BF9\u79F0\u5C3E\u90E8\u8D8B\u5411\u4E8E\u66F4\u591A\u8D1F\u503C\u3002",a:"\u8FD4\u56DE\u5206\u5E03\u7684\u504F\u659C\u5EA6\u3002",p:[{name:"\u503C1",detail:"\u6570\u636E\u96C6\u4E2D\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},SKEW_P:{d:"\u8FD4\u56DE\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u7684\u5206\u5E03\u4E0D\u5BF9\u79F0\u5EA6\uFF1A\u8868\u660E\u5206\u5E03\u76F8\u5BF9\u4E8E\u5E73\u5747\u503C\u7684\u4E0D\u5BF9\u79F0\u7A0B\u5EA6\u3002",a:"\u8FD4\u56DE\u57FA\u4E8E\u6837\u672C\u603B\u4F53\u7684\u5206\u5E03\u4E0D\u5BF9\u79F0\u5EA6\uFF1A\u8868\u660E\u5206\u5E03\u76F8\u5BF9\u4E8E\u5E73\u5747\u503C\u7684\u4E0D\u5BF9\u79F0\u7A0B\u5EA6\u3002",p:[{name:"\u503C1",detail:"\u6570\u636E\u96C6\u4E2D\u7684\u7B2C\u4E00\u4E2A\u503C\u6216\u8303\u56F4\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9009] - \u6570\u636E\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u8303\u56F4\u3002"}]},VLOOKUP:{d:"\u7EB5\u5411\u67E5\u627E\u3002\u5728\u8303\u56F4\u7684\u7B2C\u4E00\u5217\u4E2D\u81EA\u4E0A\u800C\u4E0B\u641C\u7D22\u67D0\u4E2A\u952E\u503C\uFF0C\u5E76\u8FD4\u56DE\u6240\u627E\u5230\u7684\u884C\u4E2D\u6307\u5B9A\u5355\u5143\u683C\u7684\u503C\u3002",a:"\u7EB5\u5411\u67E5\u627E\u3002\u5728\u8303\u56F4\u7684\u7B2C\u4E00\u5217\u4E2D\u81EA\u4E0A\u800C\u4E0B\u641C\u7D22\u67D0\u4E2A\u952E\u503C",p:[{name:"\u641C\u7D22\u952E\u503C",detail:'\u8981\u641C\u7D22\u7684\u503C\uFF0C\u5982 42\u3001"Cats" \u6216 I24\u3002'},{name:"\u8303\u56F4",detail:"\u8981\u8FDB\u884C\u641C\u7D22\u7684\u8303\u56F4\u3002VLOOKUP \u5C06\u5728\u8BE5\u8303\u56F4\u7684\u7B2C\u4E00\u5217\u4E2D\u641C\u7D22\u641C\u7D22\u952E\u503C\u4E2D\u6307\u5B9A\u7684\u952E\u503C\u3002"},{name:"\u7D22\u5F15",detail:`\u8981\u8FD4\u56DE\u7684\u503C\u7684\u5217\u7D22\u5F15\uFF0C\u8303\u56F4\u4E2D\u7684\u7B2C\u4E00\u5217\u7F16\u53F7\u4E3A 1\u3002 + +\u5982\u679C\u7D22\u5F15\u4E0D\u662F\u4ECB\u4E8E 1 \u548C\u8303\u56F4\u4E2D\u7684\u5217\u6570\u4E4B\u95F4\uFF0C\u5C06\u8FD4\u56DE #VALUE! \u3002`},{name:"\u5DF2\u6392\u5E8F",detail:`[\u9ED8\u8BA4\u503C\u4E3A TRUE() ] - \u6307\u793A\u8981\u641C\u7D22\u7684\u5217\uFF08\u6307\u5B9A\u8303\u56F4\u7684\u7B2C\u4E00\u5217\uFF09\u662F\u5426\u5DF2\u6392\u5E8F\u3002\u5927\u591A\u6570\u60C5\u51B5\u4E0B\uFF0C\u5EFA\u8BAE\u8BBE\u4E3A FALSE()\u3002 + +\u5EFA\u8BAE\u5C06\u5DF2\u6392\u5E8F\u8BBE\u4E3A FALSE\u3002\u5982\u679C\u8BBE\u4E3A FALSE\uFF0C\u5C06\u8FD4\u56DE\u5B8C\u5168\u5339\u914D\u9879\u3002\u5982\u679C\u5B58\u5728\u591A\u4E2A\u5339\u914D\u503C\uFF0C\u5C06\u8FD4\u56DE\u627E\u5230\u7684\u7B2C\u4E00\u4E2A\u503C\u5BF9\u5E94\u7684\u5355\u5143\u683C\u7684\u5185\u5BB9\uFF0C\u5982\u679C\u627E\u4E0D\u5230\u5339\u914D\u503C\uFF0C\u5219\u8FD4\u56DE #N/A\u3002 + +\u5982\u679C\u5C06\u5DF2\u6392\u5E8F\u8BBE\u4E3A TRUE \u6216\u7701\u7565\uFF0C\u5C06\u8FD4\u56DE\uFF08\u5C0F\u4E8E\u6216\u7B49\u4E8E\u641C\u7D22\u952E\u503C\u7684\uFF09\u6700\u63A5\u8FD1\u7684\u5339\u914D\u9879\u3002\u5982\u679C\u641C\u7D22\u7684\u5217\u4E2D\u6240\u6709\u7684\u503C\u5747\u5927\u4E8E\u641C\u7D22\u952E\u503C\uFF0C\u5219\u8FD4\u56DE #N/A\u3002`}]},HLOOKUP:{d:"\u6A2A\u5411\u67E5\u627E\u3002\u5728\u8303\u56F4\u7684\u7B2C\u4E00\u884C\u4E2D\u641C\u7D22\u67D0\u4E2A\u952E\u503C\uFF0C\u5E76\u8FD4\u56DE\u6240\u627E\u5230\u7684\u5217\u4E2D\u6307\u5B9A\u5355\u5143\u683C\u7684\u503C\u3002",a:"\u6A2A\u5411\u67E5\u627E\u3002\u5728\u8303\u56F4\u7684\u7B2C\u4E00\u884C\u4E2D\u641C\u7D22\u67D0\u4E2A\u952E\u503C",p:[{name:"\u641C\u7D22\u952E\u503C",detail:'\u8981\u641C\u7D22\u7684\u503C\u3002\u4F8B\u5982\uFF0C42\u3001"Cats"\u6216I24\u3002'},{name:"\u8303\u56F4",detail:"\u8981\u8FDB\u884C\u641C\u7D22\u7684\u8303\u56F4\u3002\u5C06\u5728\u8BE5\u8303\u56F4\u7684\u7B2C\u4E00\u884C\u4E2D\u641C\u7D22\u5728\u641C\u7D22\u952E\u503C\u4E2D\u6307\u5B9A\u7684\u952E\u503C\u3002"},{name:"\u7D22\u5F15",detail:`\u8981\u8FD4\u56DE\u7684\u503C\u7684\u884C\u7D22\u5F15\uFF0C\u8303\u56F4\u4E2D\u7684\u7B2C\u4E00\u884C\u7F16\u53F7\u4E3A1\u3002 + +\u5982\u679C\u7D22\u5F15\u4E0D\u662F\u4ECB\u4E8E1\u548C\u8303\u56F4\u4E2D\u7684\u884C\u6570\u4E4B\u95F4\uFF0C\u5C06\u8FD4\u56DE#VALUE!\u3002`},{name:"\u5DF2\u6392\u5E8F",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] - \u6307\u793A\u8981\u641C\u7D22\u7684\u884C\uFF08\u6307\u5B9A\u8303\u56F4\u7684\u7B2C\u4E00\u884C\uFF09\u662F\u5426\u5DF2\u6392\u5E8F\u3002 + +\u5982\u679C\u5C06\u5DF2\u6392\u5E8F\u8BBE\u4E3ATRUE\u6216\u7701\u7565\uFF0C\u5C06\u8FD4\u56DE\u6700\u63A5\u8FD1\u7684\u5339\u914D\u503C\uFF08\u5C0F\u4E8E\u6216\u7B49\u4E8E\u641C\u7D22\u952E\u503C\uFF09\u3002\u5982\u679C\u5728\u641C\u7D22\u7684\u884C\u4E2D\u6240\u6709\u7684\u503C\u5747\u5927\u4E8E\u641C\u7D22\u952E\u503C\uFF0C\u5219\u8FD4\u56DE#N/A\u3002 + +\u5982\u679C\u5C06\u5DF2\u6392\u5E8F\u8BBE\u4E3ATRUE\u6216\u5C06\u5176\u7701\u7565\uFF0C\u800C\u8303\u56F4\u7684\u9996\u884C\u5E76\u975E\u5904\u4E8E\u5DF2\u6392\u5E8F\u72B6\u6001\uFF0C\u5219\u8FD4\u56DE\u503C\u53EF\u80FD\u4F1A\u662F\u9519\u8BEF\u7684\u3002 + +\u5982\u679C\u5C06\u5DF2\u6392\u5E8F\u8BBE\u4E3AFALSE\uFF0C\u5219\u4EC5\u8FD4\u56DE\u5B8C\u5168\u5339\u914D\u3002\u5982\u679C\u5B58\u5728\u591A\u4E2A\u5339\u914D\u503C\uFF0C\u5C06\u8FD4\u56DE\u4E0E\u627E\u5230\u7684\u7B2C\u4E00\u4E2A\u503C\u5BF9\u5E94\u7684\u5355\u5143\u683C\u7684\u5185\u5BB9\uFF0C\u5982\u679C\u627E\u4E0D\u5230\u5339\u914D\u503C\u5219\u8FD4\u56DE#N/A\u3002`}]},LOOKUP:{d:"\u5728\u884C\u6216\u5217\u4E2D\u67E5\u627E\u76F8\u5E94\u952E\uFF0C\u5E76\u5C06\u76F8\u5E94\u5355\u5143\u683C\u7684\u503C\u8FD4\u56DE\u5230\u4E0E\u641C\u7D22\u884C\u6216\u5217\u6240\u5728\u4F4D\u7F6E\u76F8\u540C\u7684\u7ED3\u679C\u8303\u56F4\u4E2D\u3002",a:"\u5728\u884C\u6216\u5217\u4E2D\u67E5\u627E\u76F8\u5E94\u952E",p:[{name:"\u641C\u7D22\u952E\u503C",detail:'\u8981\u5728\u884C\u6216\u5217\u4E2D\u641C\u7D22\u7684\u503C\u3002\u4F8B\u5982\uFF0C42\u3001"Cats" \u6216 I24\u3002'},{name:"\u641C\u7D22\u8303\u56F4 | \u641C\u7D22\u7ED3\u679C\u6570\u7EC4",detail:"\u4F7F\u7528 LOOKUP \u7684\u4E00\u79CD\u65B9\u6CD5\u662F\u7ED9\u5B9A\u5355\u884C\u6216\u5355\u5217\u5F62\u5F0F\u7684\u641C\u7D22\u8303\u56F4\u8FDB\u884C\u641C\u7D22\u67E5\u627E\uFF0C\u8FD9\u79CD\u65B9\u5F0F\u8981\u7528\u5230\u53E6\u4E00\u4E2A\u53C2\u6570\u7ED3\u679C\u8303\u56F4\u3002\u53E6\u4E00\u79CD\u65B9\u5F0F\u662F\u5C06\u8FD9\u4E24\u4E2A\u53C2\u6570\u5408\u5E76\u4E3A\u4E00\u4E2A\u641C\u7D22\u7ED3\u679C\u6570\u7EC4\uFF0C\u5176\u4E2D\u7B2C\u4E00\u884C\u6216\u7B2C\u4E00\u5217\u7528\u4E8E\u641C\u7D22\uFF0C\u5E76\u5C06\u8FD4\u56DE\u503C\u653E\u5728\u8BE5\u6570\u7EC4\u7684\u6700\u540E\u4E00\u884C\u6216\u6700\u540E\u4E00\u5217\u4E2D\u3002"},{name:"\u7ED3\u679C\u8303\u56F4",detail:"[ \u53EF\u9009 ] - \u7528\u4E8E\u5B58\u653E\u8FD4\u56DE\u7ED3\u679C\u7684\u8303\u56F4\u3002\u8FD4\u56DE\u503C\u5BF9\u5E94\u4E8E\u5728\u641C\u7D22\u8303\u56F4\u4E2D\u627E\u5230\u641C\u7D22\u952E\u503C\u7684\u4F4D\u7F6E\u3002\u6B64\u8303\u56F4\u5FC5\u987B\u4EC5\u4E3A\u5355\u884C\u6216\u5355\u5217\uFF0C\u800C\u5982\u679C\u60A8\u4F7F\u7528\u7684\u662F\u641C\u7D22\u7ED3\u679C\u6570\u7EC4\u65B9\u5F0F\uFF0C\u5219\u4E0D\u5E94\u63D0\u4F9B\u6B64\u53C2\u6570\u3002"}]},ADDRESS:{d:"\u8FD4\u56DE\u5B57\u7B26\u4E32\u5F62\u5F0F\u7684\u5355\u5143\u683C\u5F15\u7528\u3002",a:"\u8FD4\u56DE\u5B57\u7B26\u4E32\u5F62\u5F0F\u7684\u5355\u5143\u683C\u5F15\u7528\u3002",p:[{name:"row_num",detail:"\u4E00\u4E2A\u6570\u503C\uFF0C\u6307\u5B9A\u8981\u5728\u5355\u5143\u683C\u5F15\u7528\u4E2D\u4F7F\u7528\u7684\u884C\u53F7\u3002"},{name:"column_num",detail:"\u4E00\u4E2A\u6570\u503C\uFF0C\u6307\u5B9A\u8981\u5728\u5355\u5143\u683C\u5F15\u7528\u4E2D\u4F7F\u7528\u7684\u5217\u53F7\uFF08\u800C\u975E\u540D\u79F0\uFF09\u3002A\u5217\u7684\u7F16\u53F7\u4E3A1\u3002"},{name:"abs_num",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u4E00\u4E2A\u6570\u503C\uFF0C\u6307\u5B9A\u8981\u8FD4\u56DE\u7684\u5F15\u7528\u7C7B\u578B\u3002 + +1 \u8868\u793A\u884C\u5217\u5747\u91C7\u7528\u7EDD\u5BF9\u503C\uFF08\u4F8B\u5982$A$1\uFF09\uFF1B + +2 \u8868\u793A\u91C7\u7528\u7EDD\u5BF9\u884C\u53F7\uFF0C\u76F8\u5BF9\u5217\u6807\uFF08\u4F8B\u5982A$1\uFF09\uFF1B + +3 \u8868\u793A\u91C7\u7528\u76F8\u5BF9\u884C\u53F7\uFF0C\u7EDD\u5BF9\u5217\u6807\uFF08\u4F8B\u5982$A1\uFF09\uFF1B + +4 \u8868\u793A\u884C\u5217\u5747\u91C7\u7528\u76F8\u5BF9\u503C\uFF08\u4F8B\u5982A1\uFF09\u3002`},{name:"A1",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] - \u4E00\u4E2A\u5E03\u5C14\u503C\uFF0C\u6307\u793A\u91C7\u7528A1\u6807\u8BB0\u5F62\u5F0F(TRUE)\u8FD8\u662FR1C1\u6807\u8BB0\u5F62\u5F0F(FALSE)\u3002"},{name:"sheet_text",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u7F3A\u7701] - \u7528\u4E8E\u6307\u5B9A\u5730\u5740\u6240\u6307\u5411\u7684\u5DE5\u4F5C\u8868\u540D\u79F0\u3002"}]},INDIRECT:{d:"\u8FD4\u56DE\u4EE5\u5B57\u7B26\u4E32\u6307\u5B9A\u7684\u5355\u5143\u683C\u5F15\u7528\u3002",a:"\u8FD4\u56DE\u4EE5\u5B57\u7B26\u4E32\u6307\u5B9A\u7684\u5355\u5143\u683C\u5F15\u7528\u3002",p:[{name:"ref_text",detail:"\u4EE5\u5E26\u5F15\u53F7\u7684\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\u7684\u5355\u5143\u683C\u5F15\u7528\u3002"},{name:"A1",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] - \u4E00\u4E2A\u5E03\u5C14\u503C\uFF0C\u6307\u793A\u91C7\u7528A1\u6807\u8BB0\u5F62\u5F0F(TRUE)\u8FD8\u662FR1C1\u6807\u8BB0\u5F62\u5F0F(FALSE)\u3002"}]},ROW:{d:"\u8FD4\u56DE\u6307\u5B9A\u5355\u5143\u683C\u7684\u884C\u53F7",a:"\u8FD4\u56DE\u6307\u5B9A\u5355\u5143\u683C\u7684\u884C\u53F7",p:[{name:"reference",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A\u6B64\u516C\u5F0F\u6240\u5728\u7684\u5355\u5143\u683C] - \u8981\u8FD4\u56DE\u5176\u884C\u53F7\u7684\u5355\u5143\u683C\u3002 + +\u5982\u679C\u5355\u5143\u683C\u5F15\u7528\u6307\u5411\u7684\u8303\u56F4\u5176\u5BBD\u5EA6\u5927\u4E8E\u4E00\u4E2A\u5355\u5143\u683C\uFF0C\u800C\u6B64\u516C\u5F0F\u4E0D\u662F\u7528\u4F5C\u6570\u7EC4\u516C\u5F0F\u7684\uFF0C\u8FD9\u65F6\u4F1A\u4EC5\u8FD4\u56DE\u5355\u5143\u683C\u5F15\u7528\u4E2D\u9996\u884C\u7684\u7F16\u53F7\u503C\u3002`}]},ROWS:{d:"\u8FD4\u56DE\u6307\u5B9A\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u884C\u6570\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u884C\u6570\u3002",p:[{name:"array",detail:"\u8981\u8FD4\u56DE\u5176\u884C\u6570\u7684\u8303\u56F4\u3002"}]},COLUMN:{d:"\u6309\u7167 `A=1` \u7684\u89C4\u5219\u8FD4\u56DE\u6307\u5B9A\u5355\u5143\u683C\u7684\u5217\u53F7\u3002",a:"\u6309\u7167 `A=1` \u7684\u89C4\u5219\u8FD4\u56DE\u6307\u5B9A\u5355\u5143\u683C\u7684\u5217\u53F7\u3002",p:[{name:"reference",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A\u5305\u542B\u6B64\u516C\u5F0F\u7684\u5355\u5143\u683C] - \u8981\u8FD4\u56DE\u5176\u5217\u53F7\u7684\u5355\u5143\u683C\u3002A\u5217\u5BF9\u5E94\u7684\u7F16\u53F7\u4E3A1\u3002 + +\u5982\u679C\u5355\u5143\u683C\u5F15\u7528\u662F\u5BBD\u5EA6\u8D85\u8FC7\u4E00\u4E2A\u5355\u5143\u683C\u7684\u8303\u56F4\uFF0C\u800C\u6B64\u516C\u5F0F\u4E0D\u662F\u4F5C\u4E3A\u6570\u7EC4\u516C\u5F0F\u6765\u4F7F\u7528\u7684\uFF0C\u56E0\u6B64\u5C06\u8FD4\u56DE\u5355\u5143\u683C\u5F15\u7528\u4E2D\u7684\u7B2C\u4E00\u5217\u7684\u4F4D\u7F6E\u3002`}]},COLUMNS:{d:"\u8FD4\u56DE\u6307\u5B9A\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u5217\u6570\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u5217\u6570\u3002",p:[{name:"array",detail:"\u8981\u8FD4\u56DE\u5176\u5217\u6570\u7684\u8303\u56F4\u3002"}]},OFFSET:{d:"\u7ED9\u5B9A\u67D0\u8303\u56F4\u7684\u8D77\u59CB\u5355\u5143\u683C\u5F15\u7528\u4EE5\u53CA\u8BE5\u8303\u56F4\u6DB5\u76D6\u7684\u884C\u5217\u6570\u91CF\uFF0C\u8FD4\u56DE\u8BE5\u8303\u56F4\u7684\u5F15\u7528\u3002",a:"\u7ED9\u5B9A\u67D0\u8303\u56F4\u7684\u8D77\u59CB\u5355\u5143\u683C\u5F15\u7528\u4EE5\u53CA\u8BE5\u8303\u56F4\u6DB5\u76D6\u7684\u884C\u5217\u6570\u91CF\uFF0C\u8FD4\u56DE\u8BE5\u8303\u56F4\u7684\u5F15\u7528\u3002",p:[{name:"reference",detail:"\u7528\u4E8E\u8BA1\u7B97\u884C\u5217\u504F\u79FB\u91CF\u7684\u8D77\u70B9\u3002"},{name:"rows",detail:`\u8981\u504F\u79FB\u7684\u884C\u6570\u3002 + +\u884C\u504F\u79FB\u91CF\u5FC5\u987B\u662F\u6574\u6570\uFF0C\u4F46\u4E5F\u53EF\u4EE5\u662F\u8D1F\u6570\u3002\u5982\u679C\u63D0\u4F9B\u7684\u53C2\u6570\u5E26\u6709\u5C0F\u6570\uFF0C\u5C0F\u6570\u90E8\u5206\u5C06\u88AB\u622A\u53BB\u3002`},{name:"cols",detail:`\u8981\u504F\u79FB\u7684\u5217\u6570\u3002 + +\u5217\u504F\u79FB\u91CF\u5FC5\u987B\u662F\u6574\u6570\uFF0C\u4F46\u4E5F\u53EF\u4EE5\u662F\u8D1F\u6570\u3002\u5982\u679C\u63D0\u4F9B\u7684\u53C2\u6570\u5E26\u6709\u5C0F\u6570\uFF0C\u5C0F\u6570\u90E8\u5206\u5C06\u88AB\u622A\u53BB\u3002`},{name:"height",detail:"[\u53EF\u9009] - \u8981\u4ECE\u504F\u79FB\u76EE\u6807\u5F00\u59CB\u8FD4\u56DE\u7684\u8303\u56F4\u7684\u9AD8\u5EA6\u3002"},{name:"width",detail:"[\u53EF\u9009] - \u8981\u4ECE\u504F\u79FB\u76EE\u6807\u5F00\u59CB\u8FD4\u56DE\u7684\u8303\u56F4\u7684\u5BBD\u5EA6\u3002"}]},MATCH:{d:"\u5728\u5355\u5143\u683C\u4E2D\u641C\u7D22\u6307\u5B9A\u9879\uFF0C\u7136\u540E\u8FD4\u56DE\u8BE5\u9879\u5728\u5355\u5143\u683C\u533A\u57DF\u4E2D\u7684\u76F8\u5BF9\u4F4D\u7F6E\u3002",a:"\u5728\u5355\u5143\u683C\u4E2D\u641C\u7D22\u6307\u5B9A\u9879\uFF0C\u7136\u540E\u8FD4\u56DE\u8BE5\u9879\u5728\u5355\u5143\u683C\u533A\u57DF\u4E2D\u7684\u76F8\u5BF9\u4F4D\u7F6E\u3002",p:[{name:"lookup_value",detail:"\u8981\u5728 lookup_array \u4E2D\u5339\u914D\u7684\u503C\u3002"},{name:"lookup_array",detail:`\u8981\u641C\u7D22\u7684\u5355\u5143\u683C\u533A\u57DF\u3002 + +\u5982\u679C\u6240\u7528\u7684\u8303\u56F4\u7684\u9AD8\u5EA6\u548C\u5BBD\u5EA6\u5747\u5927\u4E8E1\uFF0CMATCH\u5C06\u8FD4\u56DE#N/A!\u3002`},{name:"match_type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u8981\u91C7\u7528\u7684\u641C\u7D22\u65B9\u5F0F\u3002 + +1\u4E3A\u9ED8\u8BA4\u7C7B\u578B\uFF0C\u6B64\u65F6MATCH\u4F1A\u5047\u8BBE\u8303\u56F4\u5DF2\u6309\u5347\u5E8F\u6392\u5E8F\uFF0C\u5E76\u8FD4\u56DE\u5C0F\u4E8E\u7B49\u4E8E\u641C\u7D22\u952E\u503C\u7684\u6700\u5927\u503C\u3002 + +0\u8868\u793A\u5B8C\u5168\u5339\u914D\uFF0C\u5728\u8303\u56F4\u672A\u6392\u5E8F\u7684\u60C5\u51B5\u4E0B\u9700\u8981\u4F7F\u7528\u6B64\u65B9\u5F0F\u3002 + +-1\u8BA9MATCH\u5047\u8BBE\u8303\u56F4\u662F\u6309\u964D\u5E8F\u6392\u5E8F\u7684\uFF0C\u5E76\u8FD4\u56DE\u5927\u4E8E\u7B49\u4E8E\u641C\u7D22\u952E\u503C\u7684\u6700\u5C0F\u503C\u3002`}]},INDEX:{d:"\u8FD4\u56DE\u8868\u683C\u6216\u4E2D\u7684\u5143\u7D20\u503C\uFF0C\u6B64\u5143\u7D20\u7531\u884C\u53F7\u548C\u5217\u53F7\u7684\u7D22\u5F15\u503C\u7ED9\u5B9A\u3002",a:"\u8FD4\u56DE\u8868\u683C\u6216\u4E2D\u7684\u5143\u7D20\u503C\uFF0C\u6B64\u5143\u7D20\u7531\u884C\u53F7\u548C\u5217\u53F7\u7684\u7D22\u5F15\u503C\u7ED9\u5B9A\u3002",p:[{name:"array",detail:"\u5355\u5143\u683C\u533A\u57DF\u6216\u6570\u7EC4\u5E38\u91CF\u3002"},{name:"row_num",detail:"\u9009\u62E9\u6570\u7EC4\u4E2D\u7684\u67D0\u884C\uFF0C\u51FD\u6570\u4ECE\u8BE5\u884C\u8FD4\u56DE\u6570\u503C\u3002"},{name:"column_num",detail:"\u9009\u62E9\u6570\u7EC4\u4E2D\u7684\u67D0\u5217\uFF0C\u51FD\u6570\u4ECE\u8BE5\u5217\u8FD4\u56DE\u6570\u503C\u3002"}]},GETPIVOTDATA:{d:"\u4ECE\u4E0E\u6307\u5B9A\u884C\u548C\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6570\u636E\u900F\u89C6\u8868\u4E2D\u63D0\u53D6\u6C47\u603B\u503C\u3002",a:"\u4ECE\u4E0E\u6307\u5B9A\u884C\u548C\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6570\u636E\u900F\u89C6\u8868\u4E2D\u63D0\u53D6\u6C47\u603B\u503C\u3002",p:[{name:"data_field",detail:`\u60A8\u60F3\u4ECE\u6570\u636E\u900F\u89C6\u8868\u4E2D\u83B7\u53D6\u5176\u6570\u636E\u7684\u503C\u540D\u79F0\u3002 +\u503C\u540D\u79F0\u5FC5\u987B\u62EC\u5728\u5F15\u53F7\u4E2D\u6216\u662F\u6307\u5411\u5305\u542B\u76F8\u5173\u6587\u672C\u7684\u4EFB\u4F55\u5355\u5143\u683C\u7684\u5F15\u7528\u3002 +\u5982\u679C\u6709\u591A\u4E2A\u503C\u5B57\u6BB5\uFF0C\u5219\u5FC5\u987B\u4F7F\u7528\u6570\u636E\u900F\u89C6\u8868\u4E2D\u663E\u793A\u7684\u786E\u5207\u540D\u79F0\uFF08\u5982\u201C\u9500\u552E\u603B\u989D\u201D\uFF09\u3002`},{name:"pivot_table",detail:"\u76EE\u6807\u6570\u636E\u900F\u89C6\u8868\u4E2D\u7684\u4EFB\u4F55\u5355\u5143\u683C\u7684\u5F15\u7528\uFF08\u63A8\u8350\u4F4D\u4E8E\u9876\u89D2\u7684\u5355\u5143\u683C\uFF09\u3002"},{name:"field1",detail:"[\u53EF\u9009] - \u6E90\u6570\u636E\u96C6\uFF08\u4E0D\u662F\u6570\u636E\u900F\u89C6\u8868\uFF09\u4E2D\u5217\u7684\u540D\u79F0\u3002"},{name:"item1",detail:"[\u53EF\u9009] - \u6570\u636E\u900F\u89C6\u8868\u4E2D\u663E\u793A\u7684\u4E0E\u60A8\u8981\u68C0\u7D22\u7684\u5B57\u6BB5\u540D\u79F0 1 \u76F8\u5BF9\u5E94\u7684\u884C\u6216\u5217\u7684\u540D\u79F0\u3002"}]},CHOOSE:{d:"\u57FA\u4E8E\u7D22\u5F15\u8FD4\u56DE\u9009\u9879\u5217\u8868\u4E2D\u7684\u5143\u7D20\u3002",a:"\u57FA\u4E8E\u7D22\u5F15\u8FD4\u56DE\u9009\u9879\u5217\u8868\u4E2D\u7684\u5143\u7D20\u3002",p:[{name:"index_num",detail:`\u6307\u5B9A\u8981\u8FD4\u56DE\u54EA\u4E00\u9879\u3002 + +\u5982\u679C\u7D22\u5F15\u4E3A\u96F6\u3001\u8D1F\u503C\u6216\u5927\u4E8E\u63D0\u4F9B\u7684\u9009\u62E9\u6570\u91CF\uFF0C\u5C06\u8FD4\u56DE#VALUE!\u9519\u8BEF\u3002`},{name:"value1",detail:"\u4E00\u9879\u53EF\u80FD\u7684\u8FD4\u56DE\u503C\u3002\u5FC5\u987B\u63D0\u4F9B\u3002\u53EF\u4EE5\u662F\u5355\u5143\u683C\u5F15\u7528\u6216\u5355\u72EC\u7684\u503C\u3002"},{name:"value2",detail:"[\u53EF\u9009] - \u5176\u4ED6\u53EF\u4EE5\u9009\u62E9\u7684\u503C\u3002\u9009\u62E9"}]},HYPERLINK:{d:"\u5728\u5355\u5143\u683C\u5185\u521B\u5EFA\u4E00\u4E2A\u8D85\u94FE\u63A5\u3002",a:"\u5728\u5355\u5143\u683C\u5185\u521B\u5EFA\u4E00\u4E2A\u8D85\u94FE\u63A5\u3002",p:[{name:"\u7F51\u5740",detail:`\u4EE5\u5F15\u53F7\u62EC\u4F4F\u7684\u94FE\u63A5\u4F4D\u7F6E\u7684\u5B8C\u6574\u7F51\u5740\uFF0C\u6216\u5BF9\u5305\u542B\u8FD9\u79CD\u7F51\u5740\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3002 + +\u4EC5\u5141\u8BB8\u67D0\u4E9B\u94FE\u63A5\u7C7B\u578B\u3002\u5176\u4E2D\u5305\u62EC\uFF1Ahttp://\u3001https://\u3001mailto:\u3001aim:\u3001ftp://\u3001gopher://\u3001telnet://\u548Cnews://\uFF0C\u660E\u786E\u7981\u7528\u4F7F\u7528\u5176\u4ED6\u534F\u8BAE\u3002\u5982\u679C\u6307\u5B9A\u7684\u662F\u5176\u4ED6\u534F\u8BAE\uFF0C\u5C06\u4F1A\u5728\u5355\u5143\u683C\u4E2D\u663E\u793A\u94FE\u63A5\u6807\u7B7E\uFF0C\u4F46\u8BE5\u6807\u7B7E\u4E0D\u4F1A\u4EE5\u94FE\u63A5\u5F62\u5F0F\u5448\u73B0\u3002 + +\u5982\u679C\u672A\u6307\u5B9A\u534F\u8BAE\uFF0C\u5219\u5047\u8BBE\u4F7F\u7528http://\uFF0C\u5E76\u5C06\u5176\u4F5C\u4E3A\u7F51\u5740\u7684\u524D\u7F00\u3002`},{name:"\u94FE\u63A5\u6807\u7B7E",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A\u7F51\u5740] - \u8981\u5728\u5355\u5143\u683C\u4E2D\u4F5C\u4E3A\u94FE\u63A5\u663E\u793A\u7684\u6587\u672C\uFF08\u7528\u5F15\u53F7\u62EC\u8D77\u6765\u7684\uFF09\uFF0C\u6216\u8005\u6307\u5411\u5305\u542B\u8FD9\u79CD\u6807\u7B7E\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3002 + +\u5982\u679C\u94FE\u63A5\u6807\u7B7E\u662F\u6307\u5411\u67D0\u4E2A\u7A7A\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5982\u679C\u7F51\u5740\u6709\u6548\uFF0C\u5C31\u5C06\u5176\u4F5C\u4E3A\u94FE\u63A5\u663E\u793A\uFF0C\u5426\u5219\u4F5C\u4E3A\u7EAF\u6587\u672C\u663E\u793A\u3002 + +\u5982\u679C\u94FE\u63A5\u6807\u7B7E\u4E3A\u7A7A\u5B57\u7B26\u4E32\u5E38\u91CF("")\uFF0C\u6240\u5728\u5355\u5143\u683C\u663E\u793A\u7684\u5185\u5BB9\u5C06\u4E3A\u7A7A\u767D\uFF0C\u4F46\u901A\u8FC7\u70B9\u51FB\u8BE5\u5355\u5143\u683C\u6216\u8F6C\u5165\u8BE5\u5355\u5143\u683C\u4ECD\u7136\u53EF\u4EE5\u8BBF\u95EE\u94FE\u63A5\u3002`}]},TIME:{d:"\u5C06\u7ED9\u5B9A\u7684\u5C0F\u65F6\u3001\u5206\u949F\u548C\u79D2\u8F6C\u6362\u4E3A\u65F6\u95F4\u3002",a:"\u5C06\u7ED9\u5B9A\u7684\u5C0F\u65F6\u3001\u5206\u949F\u548C\u79D2\u8F6C\u6362\u4E3A\u65F6\u95F4\u3002",p:[{name:"\u5C0F\u65F6",detail:`0\uFF08\u96F6\uFF09\u5230 32767 \u4E4B\u95F4\u7684\u6570\u5B57\uFF0C\u4EE3\u8868\u5C0F\u65F6\u3002 + +\u4EFB\u4F55\u5927\u4E8E 23 \u7684\u503C\u90FD\u4F1A\u9664\u4EE5 24\uFF0C\u4F59\u6570\u5C06\u4F5C\u4E3A\u5C0F\u65F6\u503C\u3002`},{name:"\u5206\u949F",detail:`0\uFF08\u96F6\uFF09\u5230 32767 \u4E4B\u95F4\u7684\u6570\u5B57\uFF0C\u4EE3\u8868\u5206\u949F\u3002 + +\u4EFB\u4F55\u5927\u4E8E 59 \u7684\u503C\u5C06\u8F6C\u6362\u4E3A\u5C0F\u65F6\u548C\u5206\u949F\u3002`},{name:"\u79D2",detail:`0\uFF08\u96F6\uFF09\u5230 32767 \u4E4B\u95F4\u7684\u6570\u5B57\uFF0C\u4EE3\u8868\u79D2\u3002 + +\u4EFB\u4F55\u5927\u4E8E 59 \u7684\u503C\u5C06\u8F6C\u6362\u4E3A\u5C0F\u65F6\u3001\u5206\u949F\u548C\u79D2\u3002`}]},TIMEVALUE:{d:"\u6309\u4E00\u592924\u5C0F\u65F6\u8FD4\u56DE\u8BE5\u65F6\u95F4\u7684\u5206\u6570\u8868\u793A\u3002",a:"\u6309\u4E00\u592924\u5C0F\u65F6\u8FD4\u56DE\u8BE5\u65F6\u95F4\u7684\u5206\u6570\u8868\u793A\u3002",p:[{name:"time_text",detail:"\u7528\u4E8E\u8868\u793A\u65F6\u95F4\u7684\u5B57\u7B26\u4E32\u3002"}]},EOMONTH:{d:"\u8FD4\u56DE\u67D0\u4E2A\u6708\u4EFD\u6700\u540E\u4E00\u5929\u7684\u5E8F\u5217\u53F7\uFF0C\u8BE5\u6708\u4EFD\u5728\u53E6\u4E00\u4E2A\u65E5\u671F\u4E4B\u524D\u6216\u4E4B\u540E\u7684\u6570\u4E2A\u6708\uFF08\u6708\u6570\u7531\u53C2\u6570\u6307\u5B9A\uFF09\u3002",a:"\u8FD4\u56DE\u67D0\u4E2A\u6708\u4EFD\u6700\u540E\u4E00\u5929\u7684\u5E8F\u5217\u53F7",p:[{name:"start_date",detail:"\u7528\u4E8E\u8BA1\u7B97\u7ED3\u679C\u7684\u53C2\u7167\u65E5\u671F\u3002"},{name:"months",detail:"\u7528\u4E8E\u8BA1\u7B97\u7684\u8D77\u59CB\u65E5\u671F\u4E4B\u524D\uFF08\u8D1F\uFF09\u6216\u4E4B\u540E\uFF08\u6B63\uFF09\u7684\u6708\u6570\u3002\u8FD4\u56DE\u7684\u662F\u8BA1\u7B97\u6240\u5F97\u6708\u4EFD\u7684\u6700\u540E\u90A3\u5929\u3002"}]},EDATE:{d:"\u8FD4\u56DE\u8868\u793A\u67D0\u4E2A\u65E5\u671F\u7684\u5E8F\u5217\u53F7\uFF0C\u8BE5\u65E5\u671F\u5728\u53E6\u4E00\u4E2A\u65E5\u671F\u7684\u6570\u6708\u4E4B\u524D/\u4E4B\u540E\u3002",a:"\u8FD4\u56DE\u8868\u793A\u67D0\u4E2A\u65E5\u671F\u7684\u5E8F\u5217\u53F7",p:[{name:"start_date",detail:"\u7528\u4E8E\u8BA1\u7B97\u7ED3\u679C\u7684\u53C2\u7167\u65E5\u671F\u3002"},{name:"months",detail:"\u7528\u4E8E\u8BA1\u7B97\u7684\u8D77\u59CB\u65E5\u671F\u4E4B\u524D\uFF08\u8D1F\uFF09\u6216\u4E4B\u540E\uFF08\u6B63\uFF09\u7684\u6708\u6570\u3002"}]},SECOND:{d:"\u8FD4\u56DE\u65F6\u95F4\u503C\u7684\u79D2\u6570\u3002 \u79D2\u6570\u662F 0\uFF08\u96F6\uFF09\u5230 59 \u8303\u56F4\u5185\u7684\u6574\u6570\u3002",a:"\u8FD4\u56DE\u65F6\u95F4\u503C\u7684\u79D2\u6570\u3002 \u79D2\u6570\u662F 0\uFF08\u96F6\uFF09\u5230 59 \u8303\u56F4\u5185\u7684\u6574\u6570\u3002",p:[{name:"\u65F6\u95F4",detail:"\u7528\u4E8E\u8BA1\u7B97\u79D2\u949F\u90E8\u5206\u7684\u65F6\u95F4\u3002\u5FC5\u987B\u4E3A\u4EE5\u4E0B\u503C\u4E4B\u4E00\uFF1A\u6307\u5411\u5305\u542B\u65E5\u671F/\u65F6\u95F4\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F/\u65F6\u95F4\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},MINUTE:{d:"\u4EE5\u6570\u5B57\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65F6\u95F4\u7684\u5206\u949F\u90E8\u5206\u3002",a:"\u4EE5\u6570\u5B57\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65F6\u95F4\u7684\u5206\u949F\u90E8\u5206\u3002",p:[{name:"\u65F6\u95F4",detail:"\u7528\u4E8E\u8BA1\u7B97\u5206\u949F\u90E8\u5206\u7684\u65F6\u95F4\u3002\u5FC5\u987B\u4E3A\u4EE5\u4E0B\u503C\u4E4B\u4E00\uFF1A\u6307\u5411\u5305\u542B\u65E5\u671F/\u65F6\u95F4\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F/\u65F6\u95F4\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},HOUR:{d:"\u4EE5\u6570\u5B57\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65F6\u95F4\u7684\u5C0F\u65F6\u90E8\u5206\u3002",a:"\u4EE5\u6570\u5B57\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65F6\u95F4\u7684\u5C0F\u65F6\u90E8\u5206\u3002",p:[{name:"\u65F6\u95F4",detail:"\u7528\u4E8E\u8BA1\u7B97\u5C0F\u65F6\u90E8\u5206\u7684\u65F6\u95F4\u3002\u5FC5\u987B\u4E3A\u4EE5\u4E0B\u503C\u4E4B\u4E00\uFF1A\u6307\u5411\u5305\u542B\u65E5\u671F/\u65F6\u95F4\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F/\u65F6\u95F4\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},NOW:{d:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u5F53\u524D\u65E5\u671F\u548C\u65F6\u95F4\u3002",a:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u5F53\u524D\u65E5\u671F\u548C\u65F6\u95F4\u3002",p:[]},NETWORKDAYS:{d:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\u3002",a:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\u3002",p:[{name:"start_date",detail:"\u7528\u4E8E\u8BA1\u7B97\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\u7684\u65F6\u95F4\u6BB5\u5F00\u59CB\u65E5\u671F\u3002"},{name:"end_date",detail:"\u7528\u4E8E\u8BA1\u7B97\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\u7684\u65F6\u95F4\u6BB5\u7ED3\u675F\u65E5\u671F\u3002"},{name:"holidays",detail:`[\u53EF\u9009] - \u4E00\u4E2A\u8303\u56F4\u6216\u6570\u7EC4\u5E38\u91CF\uFF0C\u5176\u4E2D\u5305\u542B\u4F5C\u4E3A\u8282\u5047\u65E5\u7684\u65E5\u671F\u5E8F\u53F7\u3002 + +\u5728\u8282\u5047\u65E5\u6570\u7EC4\u4E2D\u63D0\u4F9B\u7684\u503C\u5FC5\u987B\u662F\u65E5\u671F\u5E8F\u53F7\u503C\uFF08\u4F8B\u5982\u7531N\u6240\u8FD4\u56DE\u7684\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982\u7531DATE\u3001DATEVALUE\u6216TO_DATE\u8FD4\u56DE\u7684\u503C\uFF09\u3002\u7531\u8303\u56F4\u6307\u5B9A\u7684\u503C\u5E94\u8BE5\u662F\u6807\u51C6\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6570\u503C\u3002`}]},NETWORKDAYS_INTL:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u7684\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\uFF08\u6392\u9664\u6307\u5B9A\u7684\u5468\u672B\u548C\u8282\u5047\u65E5\uFF09\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u7684\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\uFF08\u6392\u9664\u6307\u5B9A\u7684\u5468\u672B\u548C\u8282\u5047\u65E5\uFF09\u3002",p:[{name:"start_date",detail:"\u7528\u4E8E\u8BA1\u7B97\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\u7684\u65F6\u95F4\u6BB5\u5F00\u59CB\u65E5\u671F\u3002"},{name:"end_date",detail:"\u7528\u4E8E\u8BA1\u7B97\u51C0\u5DE5\u4F5C\u65E5\u5929\u6570\u7684\u65F6\u95F4\u6BB5\u7ED3\u675F\u65E5\u671F\u3002"},{name:"weekend",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u7528\u4E8E\u8868\u793A\u54EA\u4E9B\u5929\u4E3A\u5468\u672B\u7684\u6570\u5B57\u6216\u5B57\u7B26\u4E32\u3002 +\u5B57\u7B26\u4E32\u65B9\u5F0F\uFF1A\u53EF\u4EE5\u4F7F\u7528\u75310\u548C1\u7EC4\u6210\u7684\u5B57\u7B26\u4E32\u6765\u6307\u5B9A\u5468\u672B\uFF0C\u4E32\u4E2D\u7684\u7B2C\u4E00\u4E2A\u6570\u5B57\u5B57\u7B26\u4EE3\u8868\u5468\u4E00\uFF0C\u6700\u540E\u4E00\u4E2A\u5219\u4EE3\u8868\u5468\u65E5\u3002\u96F6\u8868\u793A\u8FD9\u4E00\u5929\u662F\u5DE5\u4F5C\u65E5\uFF0C1\u8868\u793A\u8FD9\u4E00\u5929\u4E3A\u5468\u672B\u3002\u4F8B\u5982\uFF0C\u201C0000011\u201D\u8868\u793A\u5C06\u5468\u516D\u548C\u5468\u65E5\u4F5C\u4E3A\u5468\u672B\u3002 +\u6570\u5B57\u65B9\u5F0F\uFF1A\u8FD9\u79CD\u65B9\u5F0F\u4E0D\u4F7F\u7528\u4E0A\u8FF0\u5B57\u7B26\u4E32\u5F62\u5F0F\uFF0C\u800C\u662F\u4F7F\u7528\u4E00\u4E2A\u6570\u5B57\u30021 =\u5468\u516D/\u5468\u65E5\u4E3A\u5468\u672B\uFF0C2 =\u5468\u65E5/\u5468\u4E00\u4E3A\u5468\u672B\uFF0C\u4F9D\u6B64\u7C7B\u63A8\u52197 =\u5468\u4E94/\u5468\u516D\u300211 =\u5468\u65E5\u4E3A\u552F\u4E00\u5468\u672B\uFF0C12 =\u5468\u4E00\u4E3A\u552F\u4E00\u5468\u672B\uFF0C\u4F9D\u6B64\u7C7B\u63A8\u521917 =\u5468\u516D\u4E3A\u552F\u4E00\u5468\u672B\u3002`},{name:"holidays",detail:`[ \u53EF\u9009 ] - \u8FD9\u662F\u4E00\u4E2A\u8303\u56F4\u6216\u6570\u7EC4\u5E38\u91CF\uFF0C\u5176\u4E2D\u5305\u542B\u4F5C\u4E3A\u8282\u5047\u65E5\u7684\u65E5\u671F\u3002 +\u5728\u8282\u5047\u65E5\u6570\u7EC4\u5185\u63D0\u4F9B\u7684\u503C\u5FC5\u987B\u4E3A\u65E5\u671F\u5E8F\u6570\u503C\uFF08\u4F8B\u5982N\u7684\u8FD4\u56DE\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982DATE\u3001DATEVALUE\u6216TO_DATE\u7684\u8FD4\u56DE\u503C\uFF09\u3002\u7531\u8303\u56F4\u6307\u5B9A\u7684\u503C\u5E94\u8BE5\u662F\u6807\u51C6\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6570\u503C\u3002`}]},ISOWEEKNUM:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u65E5\u671F\u5728\u5168\u5E74\u4E2D\u7684 ISO \u5468\u6570\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u65E5\u671F\u5728\u5168\u5E74\u4E2D\u7684 ISO \u5468\u6570\u3002",p:[{name:"date",detail:"\u7528\u4E8E\u65E5\u671F\u548C\u65F6\u95F4\u8BA1\u7B97\u7684\u65E5\u671F-\u65F6\u95F4\u4EE3\u7801\u3002"}]},WEEKNUM:{d:"\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u7684\u5468\u6570\u3002",a:"\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u7684\u5468\u6570\u3002",p:[{name:"serial_number",detail:"\u8981\u786E\u5B9A\u5176\u4F4D\u4E8E\u7B2C\u51E0\u5468\u7684\u65E5\u671F\uFF0C\u5FC5\u987B\u662F\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"return_type",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 1 ] - \u4EE3\u8868\u4E00\u5468\u8D77\u59CB\u65E5\u7684\u6570\u5B57\uFF0C\u7CFB\u7EDF\u4E5F\u4F7F\u7528\u8BE5\u6570\u5B57\u6765\u786E\u5B9A\u4E00\u5E74\u7684\u7B2C\u4E00\u5468\uFF081=\u5468\u65E5\uFF0C2=\u5468\u4E00\uFF09\u3002"}]},WEEKDAY:{d:"\u8FD4\u56DE\u4E00\u4E2A\u6570\u5B57\uFF0C\u5BF9\u5E94\u4E8E\u7ED9\u5B9A\u65E5\u671F\u6240\u5728\u7684\u661F\u671F\u51E0\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u6570\u5B57\uFF0C\u5BF9\u5E94\u4E8E\u7ED9\u5B9A\u65E5\u671F\u6240\u5728\u7684\u661F\u671F\u51E0\u3002",p:[{name:"serial_number",detail:"\u8981\u4E3A\u5176\u786E\u5B9A\u661F\u671F\u51E0\u7684\u65E5\u671F\u3002\u5FC5\u987B\u662F\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"return_type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 1] - \u4EE5\u6570\u5B57\u6307\u793A\u4F7F\u7528\u54EA\u79CD\u7F16\u53F7\u987A\u5E8F\u6765\u8868\u793A\u661F\u671F\u51E0\u3002\u9ED8\u8BA4\u60C5\u51B5\u4E0B\uFF0C\u6309\u661F\u671F\u65E5 (= 1) \u5F00\u59CB\u8BA1\u7B97\u3002 + +\u5982\u679C\u7C7B\u578B\u4E3A 1\uFF0C\u5219\u661F\u671F\u503C\u5C06\u4ECE\u661F\u671F\u65E5\u5F00\u59CB\u7B97\u8D77\uFF0C\u5E76\u4E14\u661F\u671F\u65E5\u7684\u503C\u4E3A 1\uFF0C\u56E0\u6B64\u661F\u671F\u516D\u7684\u503C\u5C31\u662F 7\u3002 + +\u5982\u679C\u7C7B\u578B\u4E3A 2\uFF0C\u5219\u661F\u671F\u503C\u5C06\u4ECE\u661F\u671F\u4E00\u5F00\u59CB\u7B97\u8D77\uFF0C\u5E76\u4E14\u661F\u671F\u4E00\u7684\u503C\u4E3A 1\uFF0C\u56E0\u6B64\u661F\u671F\u65E5\u7684\u503C\u5C31\u662F 7\u3002 + +\u5982\u679C\u7C7B\u578B\u4E3A 3\uFF0C\u5219\u661F\u671F\u503C\u5C06\u4ECE\u661F\u671F\u4E00\u7B97\u8D77\uFF0C\u5E76\u4E14\u661F\u671F\u4E00\u7684\u503C\u4E3A 0\uFF0C\u56E0\u6B64\u661F\u671F\u65E5\u7684\u503C\u5C31\u662F 6\u3002`}]},DAY:{d:"\u4EE5\u6570\u5B57\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u6240\u5728\u7684\u5F53\u6708\u51E0\u53F7\u3002",a:"\u4EE5\u6570\u5B57\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u6240\u5728\u7684\u5F53\u6708\u51E0\u53F7\u3002",p:[{name:"serial_number",detail:"\u8981\u4ECE\u4E2D\u63D0\u53D6\u5177\u4F53\u51E0\u53F7\u7684\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},DAYS:{d:"\u8FD4\u56DE\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\u3002",p:[{name:"end_date",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7ED3\u675F\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"start_date",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u5F00\u59CB\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},DAYS360:{d:"\u6309\u7167\u6BCF\u5E74360\u5929\uFF0C\u8FD4\u56DE\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u5DEE\uFF08\u7528\u4E8E\u8BA1\u7B97\u5229\u606F\uFF09\u3002",a:"\u6309\u7167\u6BCF\u5E74360\u5929\uFF0C\u8FD4\u56DE\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u5DEE\uFF08\u7528\u4E8E\u8BA1\u7B97\u5229\u606F\uFF09\u3002",p:[{name:"start_date",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u5F00\u59CB\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"end_date",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7ED3\u675F\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"method",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3AFALSE()] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +FALSE - \u91C7\u7528\u7F8E\u56FD (NASD) \u65B9\u6CD5\u65F6\uFF0C\u5982\u679C\u8D77\u59CB\u65E5\u671F\u4E3A\u67D0\u6708\u7684\u6700\u540E\u4E00\u5929\uFF0C\u4E3A\u4FBF\u4E8E\u8BA1\u7B97\uFF0C\u4F1A\u5C06\u8D77\u59CB\u65E5\u671F\u7684\u5F53\u6708\u51E0\u53F7\u66F4\u6539\u4E3A30\u3002\u6B64\u5916\uFF0C\u5982\u679C\u7ED3\u675F\u65E5\u671F\u662F\u6240\u5728\u6708\u4EFD\u7684\u6700\u540E\u4E00\u5929\uFF0C\u800C\u4E14\u8D77\u59CB\u65E5\u671F\u5728\u5176\u6240\u5728\u6708\u768430\u53F7\u4E4B\u524D\uFF0C\u5219\u5C06\u7ED3\u675F\u65E5\u671F\u66F4\u6539\u4E3A\u7ED3\u675F\u65E5\u671F\u4E4B\u540E\u90A3\u4E2A\u6708\u7684\u7B2C\u4E00\u5929\uFF0C\u5426\u5219\u5C06\u7ED3\u675F\u65E5\u671F\u66F4\u6539\u4E3A\u8BE5\u6708\u768430\u53F7\u3002 + +TRUE - \u91C7\u7528\u6B27\u6D32\u65B9\u6CD5\u65F6\uFF0C\u4F1A\u5C06\u6240\u6709\u65E5\u671F\u572831\u53F7\u7684\u8D77\u59CB\u65E5\u671F\u6216\u7ED3\u675F\u65E5\u671F\u66F4\u6539\u4E3A\u5F53\u6708\u768430\u53F7\u3002`}]},DATE:{d:"\u5C06\u63D0\u4F9B\u7684\u5E74\u3001\u6708\u3001\u65E5\u8F6C\u6362\u4E3A\u65E5\u671F\u3002",a:"\u5C06\u63D0\u4F9B\u7684\u5E74\u3001\u6708\u3001\u65E5\u8F6C\u6362\u4E3A\u65E5\u671F\u3002",p:[{name:"year",detail:`\u65E5\u671F\u7684\u5E74\u4EFD\u90E8\u5206\uFF0C\u5305\u542B\u4E00\u5230\u56DB\u4F4D\u6570\u5B57\u3002 + +\u4ECB\u4E8E 0\uFF08\u96F6\uFF09\u5230 1899 \u4E4B\u95F4\uFF0C\u4F1A\u5C06\u8BE5\u503C\u4E0E 1900 \u76F8\u52A0\u6765\u8BA1\u7B97\u5E74\u4EFD\uFF1B + +\u4ECB\u4E8E 1900 \u5230 9999 \u4E4B\u95F4\uFF0C\u5C06\u4F7F\u7528\u8BE5\u6570\u503C\u4F5C\u4E3A\u5E74\u4EFD\uFF1B + +\u5C0F\u4E8E 0 \u6216\u5927\u4E8E\u7B49\u4E8E 10000\uFF0C\u8FD4\u56DE \u9519\u8BEF\u503C #NUM!\u3002`},{name:"month",detail:`\u65E5\u671F\u7684\u6708\u4EFD\u90E8\u5206\uFF0C\u4E00\u4E2A\u6B63\u6574\u6570\u6216\u8D1F\u6574\u6570\u3002 + +\u5982\u679C month \u5927\u4E8E 12\uFF0C\u5219 month \u4F1A\u5C06\u8BE5\u6708\u4EFD\u6570\u4E0E\u6307\u5B9A\u5E74\u4E2D\u7684\u7B2C\u4E00\u4E2A\u6708\u76F8\u52A0\u3002 + +\u5982\u679C month \u5C0F\u4E8E 1\uFF0Cmonth \u5219\u4ECE\u6307\u5B9A\u5E74\u4EFD\u7684\u4E00\u6708\u4EFD\u5F00\u59CB\u9012\u51CF\u8BE5\u6708\u4EFD\u6570\uFF0C\u7136\u540E\u518D\u52A0\u4E0A 1 \u4E2A\u6708\u3002`},{name:"day",detail:`\u65E5\u671F\u7684\u65E5\u90E8\u5206\uFF0C\u4E00\u4E2A\u6B63\u6574\u6570\u6216\u8D1F\u6574\u6570\u3002 + +\u5982\u679C day \u5927\u4E8E\u6708\u4E2D\u6307\u5B9A\u7684\u5929\u6570\uFF0C\u5219 day \u4F1A\u5C06\u5929\u6570\u4E0E\u8BE5\u6708\u4E2D\u7684\u7B2C\u4E00\u5929\u76F8\u52A0\u3002 + +\u5982\u679C day \u5C0F\u4E8E 1\uFF0C\u5219 day \u4ECE\u6307\u5B9A\u6708\u4EFD\u7684\u7B2C\u4E00\u5929\u5F00\u59CB\u9012\u51CF\u8BE5\u5929\u6570\uFF0C\u7136\u540E\u518D\u52A0\u4E0A 1 \u5929\u3002`}]},DATEVALUE:{d:"\u5C06\u63D0\u4F9B\u7684\u65E5\u671F\u5B57\u7B26\u4E32\u8F6C\u6362\u4E3A\u65E5\u671F\u7684\u5E8F\u5217\u53F7\u3002",a:"\u5C06\u63D0\u4F9B\u7684\u65E5\u671F\u5B57\u7B26\u4E32\u8F6C\u6362\u4E3A\u65E5\u671F\u7684\u5E8F\u5217\u53F7\u3002",p:[{name:"date_text",detail:"\u8868\u793A\u65E5\u671F\u7684\u5B57\u7B26\u4E32\u3002"}]},DATEDIF:{d:"\u8BA1\u7B97\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\u3001\u6708\u6570\u6216\u5E74\u6570\u3002",a:"\u8BA1\u7B97\u4E24\u4E2A\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\u3001\u6708\u6570\u6216\u5E74\u6570\u3002",p:[{name:"\u8D77\u59CB\u65E5\u671F",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u5F00\u59CB\u65E5\u671F\u3002\u5FC5\u987B\u662F\u5BF9\u5305\u542BDATE\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DEDATE\u7C7B\u578B\u7684\u51FD\u6570\u6216\u6570\u5B57\u3002"},{name:"\u7ED3\u675F\u65E5\u671F",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7ED3\u675F\u65E5\u671F\u3002\u5FC5\u987B\u662F\u5BF9\u5305\u542BDATE\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DEDATE\u7C7B\u578B\u7684\u51FD\u6570\u6216\u6570\u5B57\u3002"},{name:"\u5355\u4F4D",detail:`\u65F6\u95F4\u5355\u4F4D\u7684\u7F29\u5199\u6587\u5B57\u3002\u4F8B\u5982 "M" \u4EE3\u8868\u6708\u3002\u6709\u6548\u503C\u5305\u62EC\uFF1A"Y"\u3001"M"\u3001"D"\u3001"MD"\u3001"YM" \u548C "YD"\u3002 + +"Y"\uFF1A\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u4E4B\u95F4\u7684\u6574\u5E74\u6570\u3002 + +"M"\uFF1A\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u4E4B\u95F4\u7684\u6574\u6708\u6570\u3002 + +"D"\uFF1A\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\u3002 + +"MD"\uFF1A\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\uFF08\u4E0D\u8BA1\u6574\u6708\u6570\uFF09\u3002 + +"YM"\uFF1A\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u4E4B\u95F4\u7684\u6574\u6708\u6570\uFF08\u4E0D\u8BA1\u6574\u5E74\u6570\uFF09\u3002 + +"YD"\uFF1A\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\uFF08\u5047\u8BBE\u8D77\u59CB\u65E5\u671F\u548C\u7ED3\u675F\u65E5\u671F\u7684\u95F4\u9694\u4E0D\u8D85\u8FC7\u4E00\u5E74\uFF09\u3002`}]},WORKDAY:{d:"\u6307\u5B9A\u5DE5\u4F5C\u65E5\u5929\u6570\uFF0C\u8BA1\u7B97\u7ED3\u675F\u65E5\u671F\u3002",a:"\u6307\u5B9A\u5DE5\u4F5C\u65E5\u5929\u6570\uFF0C\u8BA1\u7B97\u7ED3\u675F\u65E5\u671F\u3002",p:[{name:"start_date",detail:"\u8BA1\u7B97\u7684\u5F00\u59CB\u65E5\u671F\u3002"},{name:"days",detail:`start_date \u4E4B\u524D\u6216\u4E4B\u540E\u4E0D\u542B\u5468\u672B\u53CA\u8282\u5047\u65E5\u7684\u5929\u6570\u3002 + +\u4E3A\u6B63\u503C\u5C06\u751F\u6210\u672A\u6765\u65E5\u671F\uFF1B + +\u4E3A\u8D1F\u503C\u751F\u6210\u8FC7\u53BB\u65E5\u671F\u3002`},{name:"holidays",detail:`[\u53EF\u9009] - \u4E00\u4E2A\u8303\u56F4\u6216\u6570\u7EC4\u5E38\u91CF\uFF0C\u5176\u4E2D\u5305\u542B\u4F5C\u4E3A\u8282\u5047\u65E5\u7684\u65E5\u671F\u5E8F\u53F7\u3002 + +\u5728\u8282\u5047\u65E5\u6570\u7EC4\u4E2D\u63D0\u4F9B\u7684\u503C\u5FC5\u987B\u662F\u65E5\u671F\u5E8F\u53F7\u503C\uFF08\u4F8B\u5982\u7531N\u6240\u8FD4\u56DE\u7684\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982\u7531DATE\u3001DATEVALUE\u6216TO_DATE\u8FD4\u56DE\u7684\u503C\uFF09\u3002\u7531\u8303\u56F4\u6307\u5B9A\u7684\u503C\u5E94\u8BE5\u662F\u6807\u51C6\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6570\u503C\u3002`}]},WORKDAY_INTL:{d:"\u8FD4\u56DE\u6307\u5B9A\u7684\u82E5\u5E72\u4E2A\u5DE5\u4F5C\u65E5\u4E4B\u524D\u6216\u4E4B\u540E\u7684\u65E5\u671F\u7684\u5E8F\u5217\u53F7\uFF08\u4F7F\u7528\u81EA\u5B9A\u4E49\u5468\u672B\u53C2\u6570\uFF09\u3002 ",a:"\u8FD4\u56DE\u6307\u5B9A\u7684\u82E5\u5E72\u4E2A\u5DE5\u4F5C\u65E5\u4E4B\u524D\u6216\u4E4B\u540E\u7684\u65E5\u671F\u7684\u5E8F\u5217\u53F7\uFF08\u4F7F\u7528\u81EA\u5B9A\u4E49\u5468\u672B\u53C2\u6570\uFF09\u3002 ",p:[{name:"start_date",detail:"\u5F00\u59CB\u65E5\u671F\uFF08\u5C06\u88AB\u622A\u5C3E\u53D6\u6574\uFF09\u3002"},{name:"days",detail:`start_date \u4E4B\u524D\u6216\u4E4B\u540E\u7684\u5DE5\u4F5C\u65E5\u7684\u5929\u6570\u3002 + +\u6B63\u503C\u8868\u793A\u672A\u6765\u65E5\u671F\uFF1B + +\u8D1F\u503C\u8868\u793A\u8FC7\u53BB\u65E5\u671F\uFF1B + +\u96F6\u503C\u8868\u793A\u5F00\u59CB\u65E5\u671F\u3002`},{name:"weekend",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u7528\u4E8E\u8868\u793A\u54EA\u4E9B\u5929\u4E3A\u5468\u672B\u7684\u6570\u5B57\u6216\u5B57\u7B26\u4E32\u3002 +\u5B57\u7B26\u4E32\u65B9\u5F0F\uFF1A\u53EF\u4EE5\u4F7F\u7528\u75310\u548C1\u7EC4\u6210\u7684\u5B57\u7B26\u4E32\u6765\u6307\u5B9A\u5468\u672B\uFF0C\u4E32\u4E2D\u7684\u7B2C\u4E00\u4E2A\u6570\u5B57\u5B57\u7B26\u4EE3\u8868\u5468\u4E00\uFF0C\u6700\u540E\u4E00\u4E2A\u5219\u4EE3\u8868\u5468\u65E5\u3002\u96F6\u8868\u793A\u8FD9\u4E00\u5929\u662F\u5DE5\u4F5C\u65E5\uFF0C1\u8868\u793A\u8FD9\u4E00\u5929\u4E3A\u5468\u672B\u3002\u4F8B\u5982\uFF0C\u201C0000011\u201D\u8868\u793A\u5C06\u5468\u516D\u548C\u5468\u65E5\u4F5C\u4E3A\u5468\u672B\u3002 +\u6570\u5B57\u65B9\u5F0F\uFF1A\u8FD9\u79CD\u65B9\u5F0F\u4E0D\u4F7F\u7528\u4E0A\u8FF0\u5B57\u7B26\u4E32\u5F62\u5F0F\uFF0C\u800C\u662F\u4F7F\u7528\u4E00\u4E2A\u6570\u5B57\u30021 =\u5468\u516D/\u5468\u65E5\u4E3A\u5468\u672B\uFF0C2 =\u5468\u65E5/\u5468\u4E00\u4E3A\u5468\u672B\uFF0C\u4F9D\u6B64\u7C7B\u63A8\u52197 =\u5468\u4E94/\u5468\u516D\u300211 =\u5468\u65E5\u4E3A\u552F\u4E00\u5468\u672B\uFF0C12 =\u5468\u4E00\u4E3A\u552F\u4E00\u5468\u672B\uFF0C\u4F9D\u6B64\u7C7B\u63A8\u521917 =\u5468\u516D\u4E3A\u552F\u4E00\u5468\u672B\u3002`},{name:"holidays",detail:`[ \u53EF\u9009 ] - \u8FD9\u662F\u4E00\u4E2A\u8303\u56F4\u6216\u6570\u7EC4\u5E38\u91CF\uFF0C\u5176\u4E2D\u5305\u542B\u4F5C\u4E3A\u8282\u5047\u65E5\u7684\u65E5\u671F\u3002 +\u5728\u8282\u5047\u65E5\u6570\u7EC4\u5185\u63D0\u4F9B\u7684\u503C\u5FC5\u987B\u4E3A\u65E5\u671F\u5E8F\u6570\u503C\uFF08\u4F8B\u5982N\u7684\u8FD4\u56DE\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982DATE\u3001DATEVALUE\u6216TO_DATE\u7684\u8FD4\u56DE\u503C\uFF09\u3002\u7531\u8303\u56F4\u6307\u5B9A\u7684\u503C\u5E94\u8BE5\u662F\u6807\u51C6\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6570\u503C\u3002`}]},YEAR:{d:"\u8FD4\u56DE\u5BF9\u5E94\u4E8E\u67D0\u4E2A\u65E5\u671F\u7684\u5E74\u4EFD\u3002 Year \u4F5C\u4E3A 1900 - 9999 \u4E4B\u95F4\u7684\u6574\u6570\u8FD4\u56DE\u3002",a:"\u8FD4\u56DE\u5BF9\u5E94\u4E8E\u67D0\u4E2A\u65E5\u671F\u7684\u5E74\u4EFD\u3002 Year \u4F5C\u4E3A 1900 - 9999 \u4E4B\u95F4\u7684\u6574\u6570\u8FD4\u56DE\u3002",p:[{name:"serial_number",detail:"\u7528\u4E8E\u8BA1\u7B97\u5E74\u4EFD\u7684\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},YEARFRAC:{d:"\u8FD4\u56DE start_date \u548C end_date \u4E4B\u95F4\u7684\u5929\u6570\u5360\u5168\u5E74\u5929\u6570\u7684\u767E\u5206\u6BD4\u3002",a:"\u8FD4\u56DE start_date \u548C end_date \u4E4B\u95F4\u7684\u5929\u6570\u5360\u5168\u5E74\u5929\u6570\u7684\u767E\u5206\u6BD4\u3002",p:[{name:"start_date",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u5F00\u59CB\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"end_date",detail:"\u8BA1\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7ED3\u675F\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u8981\u4F7F\u7528\u7684\u65E5\u8BA1\u6570\u57FA\u51C6\u7C7B\u578B\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},TODAY:{d:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u5F53\u524D\u65E5\u671F\u3002",a:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u5F53\u524D\u65E5\u671F\u3002",p:[]},MONTH:{d:"\u8FD4\u56DE\u65E5\u671F\uFF08\u4EE5\u5E8F\u5217\u6570\u8868\u793A\uFF09\u4E2D\u7684\u6708\u4EFD\u3002 \u6708\u4EFD\u662F\u4ECB\u4E8E 1\uFF08\u4E00\u6708\uFF09\u5230 12\uFF08\u5341\u4E8C\u6708\uFF09\u4E4B\u95F4\u7684\u6574\u6570\u3002",a:"\u8FD4\u56DE\u65E5\u671F\uFF08\u4EE5\u5E8F\u5217\u6570\u8868\u793A\uFF09\u4E2D\u7684\u6708\u4EFD\u3002 \u6708\u4EFD\u662F\u4ECB\u4E8E 1\uFF08\u4E00\u6708\uFF09\u5230 12\uFF08\u5341\u4E8C\u6708\uFF09\u4E4B\u95F4\u7684\u6574\u6570\u3002",p:[{name:"serial_number",detail:"\u8981\u4ECE\u4E2D\u63D0\u53D6\u6708\u4EFD\u7684\u65E5\u671F\u3002\u5FC5\u987B\u662F\u4EE5\u4E0B\u4E00\u79CD\uFF1A\u5BF9\u5305\u542B\u65E5\u671F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u7C7B\u578B\u7684\u51FD\u6570\u6216\u8005\u6570\u5B57\u3002"}]},EFFECT:{d:"\u6839\u636E\u540D\u4E49\u5229\u7387\u53CA\u6BCF\u5E74\u7684\u590D\u5229\u8BA1\u606F\u671F\u6570\u6765\u8BA1\u7B97\u5B9E\u9645\u5E74\u5229\u7387\u3002",a:"\u6839\u636E\u540D\u4E49\u5229\u7387\u53CA\u6BCF\u5E74\u7684\u590D\u5229\u8BA1\u606F\u671F\u6570\u6765\u8BA1\u7B97\u5B9E\u9645\u5E74\u5229\u7387\u3002",p:[{name:"nominal_rate",detail:"\u6BCF\u5E74\u7684\u540D\u4E49\u5229\u7387\u3002"},{name:"npery",detail:"\u6BCF\u5E74\u7684\u590D\u5229\u8BA1\u7B97\u671F\u6570\u3002"}]},DOLLAR:{d:"\u5C06\u6570\u5B57\u683C\u5F0F\u8BBE\u7F6E\u4E3A\u4E0E\u8BED\u8A00\u533A\u57DF\u76F8\u5BF9\u5E94\u7684\u8D27\u5E01\u683C\u5F0F\u3002",a:"\u5C06\u6570\u5B57\u683C\u5F0F\u8BBE\u7F6E\u4E3A\u4E0E\u8BED\u8A00\u533A\u57DF\u76F8\u5BF9\u5E94\u7684\u8D27\u5E01\u683C\u5F0F\u3002",p:[{name:"number",detail:"\u8981\u8BBE\u7F6E\u683C\u5F0F\u7684\u503C\u3002"},{name:"decimals",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 2] - \u8981\u663E\u793A\u7684\u5C0F\u6570\u4F4D\u6570\u3002 + +\u5982\u679C\u8FD9\u662F\u8D1F\u6570\uFF0C\u5219\u5C06\u6570\u5B57\u56DB\u820D\u4E94\u5165\u5230\u5C0F\u6570\u70B9\u5DE6\u4FA7\u3002`}]},DOLLARDE:{d:"\u5C06\u4EE5\u6574\u6570\u90E8\u5206\u548C\u5206\u6570\u90E8\u5206\u8F6C\u6362\u4E3A\u4EE5\u5C0F\u6570\u90E8\u5206\u8868\u793A\u7684\u91D1\u989D\u6570\u5B57",a:"\u5C06\u4EE5\u6574\u6570\u90E8\u5206\u548C\u5206\u6570\u90E8\u5206\u8F6C\u6362\u4E3A\u4EE5\u5C0F\u6570\u90E8\u5206\u8868\u793A\u7684\u91D1\u989D\u6570\u5B57",p:[{name:"fractional_dollar",detail:"\u4EE5\u6574\u6570\u90E8\u4EFD\u548C\u5206\u6570\u90E8\u5206\u8868\u793A\u7684\u6570\u5B57\uFF0C\u7528\u5C0F\u6570\u70B9\u9694\u5F00\u3002"},{name:"fraction",detail:"\u7528\u4F5C\u5206\u6570\u4E2D\u7684\u5206\u6BCD\u7684\u6574\u6570\u3002"}]},DOLLARFR:{d:"\u5C06\u5C0F\u6570\u8F6C\u6362\u4E3A\u5206\u6570\u8868\u793A\u7684\u91D1\u989D\u6570\u5B57\u3002",a:"\u5C06\u5C0F\u6570\u8F6C\u6362\u4E3A\u5206\u6570\u8868\u793A\u7684\u91D1\u989D\u6570\u5B57\u3002",p:[{name:"decimal_dollar",detail:"\u5C0F\u6570\u3002"},{name:"fraction",detail:"\u7528\u4F5C\u5206\u6570\u4E2D\u7684\u5206\u6BCD\u7684\u6574\u6570\u3002"}]},DB:{d:"\u4F7F\u7528\u56FA\u5B9A\u4F59\u989D\u9012\u51CF\u6CD5\uFF0C\u8FD4\u56DE\u6307\u5B9A\u671F\u95F4\u5185\u67D0\u9879\u56FA\u5B9A\u8D44\u4EA7\u7684\u6298\u65E7\u503C\u3002",a:"\u4F7F\u7528\u56FA\u5B9A\u4F59\u989D\u9012\u51CF\u6CD5\uFF0C\u8FD4\u56DE\u6307\u5B9A\u671F\u95F4\u5185\u67D0\u9879\u56FA\u5B9A\u8D44\u4EA7\u7684\u6298\u65E7\u503C\u3002",p:[{name:"cost",detail:"\u8D44\u4EA7\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u65E7\u672B\u5C3E\u65F6\u7684\u503C\uFF08\u6709\u65F6\u4E5F\u79F0\u4E3A\u8D44\u4EA7\u6B8B\u503C\uFF09\u3002"},{name:"life",detail:"\u8D44\u4EA7\u7684\u6298\u65E7\u671F\u6570\uFF08\u6709\u65F6\u4E5F\u79F0\u4F5C\u8D44\u4EA7\u7684\u4F7F\u7528\u5BFF\u547D\uFF09\u3002"},{name:"period",detail:"\u5728\u4F7F\u7528\u671F\u9650\u5185\u8981\u8BA1\u7B97\u6298\u65E7\u7684\u6298\u65E7\u671F\u3002"},{name:"month",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A12] - \u6298\u65E7\u7B2C\u4E00\u5E74\u4E2D\u7684\u6708\u6570\u3002"}]},DDB:{d:"\u7528\u53CC\u500D\u4F59\u989D\u9012\u51CF\u6CD5\uFF0C\u8FD4\u56DE\u6307\u5B9A\u671F\u95F4\u5185\u67D0\u9879\u56FA\u5B9A\u8D44\u4EA7\u7684\u6298\u65E7\u503C\u3002",a:"\u7528\u53CC\u500D\u4F59\u989D\u9012\u51CF\u6CD5\uFF0C\u8FD4\u56DE\u6307\u5B9A\u671F\u95F4\u5185\u67D0\u9879\u56FA\u5B9A\u8D44\u4EA7\u7684\u6298\u65E7\u503C\u3002",p:[{name:"cost",detail:"\u8D44\u4EA7\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u65E7\u672B\u5C3E\u65F6\u7684\u503C\uFF08\u6709\u65F6\u4E5F\u79F0\u4E3A\u8D44\u4EA7\u6B8B\u503C\uFF09\u3002"},{name:"life",detail:"\u8D44\u4EA7\u7684\u6298\u65E7\u671F\u6570\uFF08\u6709\u65F6\u4E5F\u79F0\u4F5C\u8D44\u4EA7\u7684\u4F7F\u7528\u5BFF\u547D\uFF09\u3002"},{name:"period",detail:"\u5728\u4F7F\u7528\u671F\u9650\u5185\u8981\u8BA1\u7B97\u6298\u65E7\u7684\u6298\u65E7\u671F\u3002"},{name:"factor",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A2] - \u6298\u65E7\u7684\u9012\u51CF\u7CFB\u6570\u3002"}]},RATE:{d:"\u8FD4\u56DE\u5E74\u91D1\u6BCF\u671F\u7684\u5229\u7387\u3002",a:"\u8FD4\u56DE\u5E74\u91D1\u6BCF\u671F\u7684\u5229\u7387\u3002",p:[{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u603B\u671F\u6570\u3002"},{name:"pmt",detail:"\u6BCF\u671F\u7684\u4ED8\u6B3E\u91D1\u989D\uFF0C\u5728\u5E74\u91D1\u5468\u671F\u5185\u4E0D\u80FD\u66F4\u6539\u3002"},{name:"pv",detail:"\u73B0\u503C\u5373\u4E00\u7CFB\u5217\u672A\u6765\u4ED8\u6B3E\u5F53\u524D\u503C\u7684\u603B\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0] - \u672A\u6765\u503C\uFF0C\u6216\u5728\u6700\u540E\u4E00\u6B21\u4ED8\u6B3E\u540E\u5E0C\u671B\u5F97\u5230\u7684\u73B0\u91D1\u4F59\u989D\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`},{name:"guess",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0.1] - \u9884\u671F\u5229\u7387\u3002"}]},CUMPRINC:{d:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u6295\u8D44\u5728\u591A\u4E2A\u4ED8\u6B3E\u671F\u5185\u7684\u7D2F\u8BA1\u672C\u91D1\u507F\u8FD8\u989D\u3002",a:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u6295\u8D44\u5728\u591A\u4E2A\u4ED8\u6B3E\u671F\u5185\u7684\u7D2F\u8BA1\u672C\u91D1\u507F\u8FD8\u989D\u3002",p:[{name:"rate",detail:"\u5229\u7387\u3002"},{name:"nper",detail:"\u603B\u4ED8\u6B3E\u671F\u6570\u3002"},{name:"pv",detail:"\u5E74\u91D1\u7684\u73B0\u503C\u3002"},{name:"start_period",detail:`\u5F00\u59CB\u7D2F\u8BA1\u8BA1\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u53F7\u3002 + +\u9996\u671F\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E1\u3002`},{name:"end_period",detail:`\u7ED3\u675F\u7D2F\u8BA1\u8BA1\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u53F7\u3002 + +\u672B\u671F\u5FC5\u987B\u5927\u4E8E\u9996\u671F\u3002`},{name:"type",detail:`\u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},COUPNUM:{d:"\u8FD4\u56DE\u5728\u7ED3\u7B97\u65E5\u548C\u5230\u671F\u65E5\u4E4B\u95F4\u7684\u4ED8\u606F\u6B21\u6570\uFF0C\u5411\u4E0A\u820D\u5165\u5230\u6700\u8FD1\u7684\u6574\u6570\u3002",a:"\u8FD4\u56DE\u5728\u7ED3\u7B97\u65E5\u548C\u5230\u671F\u65E5\u4E4B\u95F4\u7684\u4ED8\u606F\u6B21\u6570\uFF0C\u5411\u4E0A\u820D\u5165\u5230\u6700\u8FD1\u7684\u6574\u6570\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002\u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},SYD:{d:"\u8FD4\u56DE\u5728\u6307\u5B9A\u671F\u95F4\u5185\u8D44\u4EA7\u6309\u5E74\u9650\u603B\u548C\u6298\u65E7\u6CD5\u8BA1\u7B97\u7684\u6298\u65E7\u3002",a:"\u8FD4\u56DE\u5728\u6307\u5B9A\u671F\u95F4\u5185\u8D44\u4EA7\u6309\u5E74\u9650\u603B\u548C\u6298\u65E7\u6CD5\u8BA1\u7B97\u7684\u6298\u65E7\u3002",p:[{name:"cost",detail:"\u8D44\u4EA7\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u65E7\u672B\u5C3E\u65F6\u7684\u503C\uFF08\u6709\u65F6\u4E5F\u79F0\u4E3A\u8D44\u4EA7\u6B8B\u503C\uFF09\u3002"},{name:"life",detail:"\u8D44\u4EA7\u7684\u6298\u65E7\u671F\u6570\uFF08\u6709\u65F6\u4E5F\u79F0\u4F5C\u8D44\u4EA7\u7684\u4F7F\u7528\u5BFF\u547D\uFF09\u3002"},{name:"period",detail:"\u5728\u4F7F\u7528\u671F\u9650\u5185\u8981\u8BA1\u7B97\u6298\u65E7\u7684\u6298\u65E7\u671F\u3002"}]},TBILLEQ:{d:"\u57FA\u4E8E\u8D34\u73B0\u7387\u8BA1\u7B97\u7F8E\u56FD\u653F\u5E9C\u77ED\u671F\u503A\u5238\u7684\u7B49\u6548\u5E74\u5316\u6536\u76CA\u7387\u3002",a:"\u57FA\u4E8E\u8D34\u73B0\u7387\u8BA1\u7B97\u7F8E\u56FD\u653F\u5E9C\u77ED\u671F\u503A\u5238\u7684\u7B49\u6548\u5E74\u5316\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u503A\u5238\u7684\u7ED3\u7B97\u65E5\u671F\uFF0C\u6B64\u65E5\u671F\u4E3A\u503A\u5238\u53D1\u884C\u540E\u4EA4\u4ED8\u7ED9\u4E70\u5BB6\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u503A\u5238\u7684\u5230\u671F\u6216\u7ED3\u675F\u65E5\u671F\uFF0C\u5C4A\u65F6\u53EF\u5C06\u5176\u4EE5\u9762\u503C\u6216\u7968\u9762\u4EF7\u503C\u8D4E\u56DE\u3002"},{name:"discount",detail:"\u503A\u5238\u8D2D\u4E70\u65F6\u7684\u8D34\u73B0\u7387\u3002"}]},TBILLYIELD:{d:"\u57FA\u4E8E\u4EF7\u683C\u8BA1\u7B97\u7F8E\u56FD\u653F\u5E9C\u77ED\u671F\u503A\u5238\u7684\u6536\u76CA\u7387\u3002",a:"\u57FA\u4E8E\u4EF7\u683C\u8BA1\u7B97\u7F8E\u56FD\u653F\u5E9C\u77ED\u671F\u503A\u5238\u7684\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u503A\u5238\u7684\u7ED3\u7B97\u65E5\u671F\uFF0C\u6B64\u65E5\u671F\u4E3A\u503A\u5238\u53D1\u884C\u540E\u4EA4\u4ED8\u7ED9\u4E70\u5BB6\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u503A\u5238\u7684\u5230\u671F\u6216\u7ED3\u675F\u65E5\u671F\uFF0C\u5C4A\u65F6\u53EF\u5C06\u5176\u4EE5\u9762\u503C\u6216\u7968\u9762\u4EF7\u503C\u8D4E\u56DE\u3002"},{name:"pr",detail:"\u503A\u5238\u7684\u8D2D\u4E70\u4EF7\u683C\u3002"}]},TBILLPRICE:{d:"\u57FA\u4E8E\u8D34\u73B0\u7387\u8BA1\u7B97\u7F8E\u56FD\u653F\u5E9C\u77ED\u671F\u503A\u5238\u7684\u4EF7\u683C\u3002",a:"\u57FA\u4E8E\u8D34\u73B0\u7387\u8BA1\u7B97\u7F8E\u56FD\u653F\u5E9C\u77ED\u671F\u503A\u5238\u7684\u4EF7\u683C\u3002",p:[{name:"settlement",detail:"\u503A\u5238\u7684\u7ED3\u7B97\u65E5\u671F\uFF0C\u6B64\u65E5\u671F\u4E3A\u503A\u5238\u53D1\u884C\u540E\u4EA4\u4ED8\u7ED9\u4E70\u5BB6\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u503A\u5238\u7684\u5230\u671F\u6216\u7ED3\u675F\u65E5\u671F\uFF0C\u5C4A\u65F6\u53EF\u5C06\u5176\u4EE5\u9762\u503C\u6216\u7968\u9762\u4EF7\u503C\u8D4E\u56DE\u3002"},{name:"discount",detail:"\u503A\u5238\u8D2D\u4E70\u65F6\u7684\u8D34\u73B0\u7387\u3002"}]},PV:{d:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u5E74\u91D1\u6295\u8D44\u7684\u73B0\u503C\u3002",a:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u5E74\u91D1\u6295\u8D44\u7684\u73B0\u503C\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u603B\u671F\u6570\u3002"},{name:"pmt",detail:"\u6BCF\u671F\u7684\u4ED8\u6B3E\u91D1\u989D\uFF0C\u5728\u5E74\u91D1\u5468\u671F\u5185\u4E0D\u80FD\u66F4\u6539\u3002"},{name:"fv",detail:"[\u53EF\u9009] - \u672A\u6765\u503C\uFF0C\u6216\u5728\u6700\u540E\u4E00\u6B21\u4ED8\u6B3E\u540E\u5E0C\u671B\u5F97\u5230\u7684\u73B0\u91D1\u4F59\u989D\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},ACCRINT:{d:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u8BC1\u5238\u7684\u5E94\u8BA1\u5229\u606F\u3002",a:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u8BC1\u5238\u7684\u5E94\u8BA1\u5229\u606F\u3002",p:[{name:"issue",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u53D1\u884C\u65E5\u3002"},{name:"first_interest",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u9996\u6B21\u8BA1\u606F\u65E5\u3002"},{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"rate",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"par",detail:"\u8BC1\u5238\u7684\u7968\u9762\u503C\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5\u201D - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`},{name:"calc_method",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3ATRUE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u6307\u5B9A\u5F53\u7ED3\u7B97\u65E5\u671F\u665A\u4E8E\u9996\u6B21\u8BA1\u606F\u65E5\u671F\u65F6\u7528\u4E8E\u8BA1\u7B97\u603B\u5E94\u8BA1\u5229\u606F\u7684\u65B9\u6CD5\u3002 + +\u5982\u679C\u503C\u4E3A TRUE\uFF0C\u5219\u8FD4\u56DE\u4ECE\u53D1\u884C\u65E5\u5230\u7ED3\u7B97\u65E5\u7684\u603B\u5E94\u8BA1\u5229\u606F\u3002 + +\u5982\u679C\u503C\u4E3A FALSE\uFF0C\u5219\u8FD4\u56DE\u4ECE\u9996\u6B21\u8BA1\u606F\u65E5\u5230\u7ED3\u7B97\u65E5\u7684\u5E94\u8BA1\u5229\u606F\u3002`}]},ACCRINTM:{d:"\u8FD4\u56DE\u5728\u5230\u671F\u65E5\u652F\u4ED8\u5229\u606F\u7684\u6709\u4EF7\u8BC1\u5238\u7684\u5E94\u8BA1\u5229\u606F\u3002",a:"\u8FD4\u56DE\u5728\u5230\u671F\u65E5\u652F\u4ED8\u5229\u606F\u7684\u6709\u4EF7\u8BC1\u5238\u7684\u5E94\u8BA1\u5229\u606F\u3002",p:[{name:"issue",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u53D1\u884C\u65E5\u3002"},{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002"},{name:"rate",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"par",detail:"\u8BC1\u5238\u7684\u7968\u9762\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},COUPDAYBS:{d:"\u8FD4\u56DE\u4ECE\u4ED8\u606F\u671F\u5F00\u59CB\u5230\u7ED3\u7B97\u65E5\u7684\u5929\u6570\u3002",a:"\u8FD4\u56DE\u4ECE\u4ED8\u606F\u671F\u5F00\u59CB\u5230\u7ED3\u7B97\u65E5\u7684\u5929\u6570\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},COUPDAYS:{d:"\u8FD4\u56DE\u7ED3\u7B97\u65E5\u6240\u5728\u7684\u4ED8\u606F\u671F\u7684\u5929\u6570\u3002",a:"\u8FD4\u56DE\u7ED3\u7B97\u65E5\u6240\u5728\u7684\u4ED8\u606F\u671F\u7684\u5929\u6570\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},COUPDAYSNC:{d:"\u8FD4\u56DE\u4ECE\u7ED3\u7B97\u65E5\u5230\u4E0B\u4E00\u7968\u606F\u652F\u4ED8\u65E5\u4E4B\u95F4\u7684\u5929\u6570\u3002",a:"\u8FD4\u56DE\u4ECE\u7ED3\u7B97\u65E5\u5230\u4E0B\u4E00\u7968\u606F\u652F\u4ED8\u65E5\u4E4B\u95F4\u7684\u5929\u6570\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},COUPNCD:{d:"\u8BA1\u7B97\u7ED3\u7B97\u65E5\u4E4B\u540E\u7684\u4E0B\u4E00\u7968\u606F\u6216\u5229\u606F\u6D3E\u53D1\u65E5\u671F\u3002",a:"\u8BA1\u7B97\u7ED3\u7B97\u65E5\u4E4B\u540E\u7684\u4E0B\u4E00\u7968\u606F\u6216\u5229\u606F\u6D3E\u53D1\u65E5\u671F\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},COUPPCD:{d:"\u8BA1\u7B97\u7ED3\u7B97\u65E5\u4E4B\u524D\u7684\u6700\u540E\u4E00\u4E2A\u7968\u606F\u6216\u5229\u606F\u652F\u4ED8\u65E5\u3002",a:"\u8BA1\u7B97\u7ED3\u7B97\u65E5\u4E4B\u524D\u7684\u6700\u540E\u4E00\u4E2A\u7968\u606F\u6216\u5229\u606F\u652F\u4ED8\u65E5\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},FV:{d:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u5E74\u91D1\u6295\u8D44\u7684\u672A\u6765\u4EF7\u503C\u3002",a:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u5E74\u91D1\u6295\u8D44\u7684\u672A\u6765\u4EF7\u503C\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u603B\u671F\u6570\u3002"},{name:"pmt",detail:"\u5404\u671F\u6240\u5E94\u652F\u4ED8\u7684\u91D1\u989D\uFF0C\u5728\u6574\u4E2A\u5E74\u91D1\u671F\u95F4\u4FDD\u6301\u4E0D\u53D8\u3002"},{name:"pv",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0 ] - \u73B0\u503C\uFF0C\u6216\u4E00\u7CFB\u5217\u672A\u6765\u4ED8\u6B3E\u7684\u5F53\u524D\u503C\u7684\u7D2F\u79EF\u548C\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0 ] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},FVSCHEDULE:{d:"\u8FD4\u56DE\u5E94\u7528\u4E00\u7CFB\u5217\u590D\u5229\u7387\u8BA1\u7B97\u7684\u521D\u59CB\u672C\u91D1\u7684\u672A\u6765\u503C\u3002",a:"\u8FD4\u56DE\u5E94\u7528\u4E00\u7CFB\u5217\u590D\u5229\u7387\u8BA1\u7B97\u7684\u521D\u59CB\u672C\u91D1\u7684\u672A\u6765\u503C\u3002",p:[{name:"principal",detail:"\u73B0\u503C\u3002"},{name:"schedule",detail:`\u7528\u4E8E\u8BA1\u7B97\u672C\u91D1\u590D\u5229\u7684\u4E00\u7EC4\u5229\u7387\u3002 + +\u5229\u7387\u8868\u5FC5\u987B\u662F\u8303\u56F4\u6216\u6570\u7EC4\uFF0C\u5176\u4E2D\u5305\u542B\u8981\u7528\u4E8E\u8BA1\u7B97\u590D\u5229\u7684\u4E00\u7EC4\u5229\u7387\u3002\u8FD9\u4E9B\u5229\u7387\u503C\u5E94\u8BE5\u4EE5\u5341\u8FDB\u5236\u5C0F\u6570\u5F62\u5F0F\u8868\u793A\uFF0C\u6216\u8005\u4F7F\u7528UNARY_PERCENT\u4EE5\u767E\u5206\u6BD4\u5F62\u5F0F\u8868\u793A\uFF0C\u5373\u8868\u793A\u4E3A0.09\u6216UNARY_PERCENT(9)\uFF0C\u800C\u4E0D\u8981\u8868\u793A\u4E3A9\u3002`}]},YIELD:{d:"\u8FD4\u56DE\u5B9A\u671F\u652F\u4ED8\u5229\u606F\u7684\u503A\u5238\u7684\u6536\u76CA\u7387\u3002",a:"\u8FD4\u56DE\u5B9A\u671F\u652F\u4ED8\u5229\u606F\u7684\u503A\u5238\u7684\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"rate",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"pr",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002"},{name:"redemption",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u6E05\u507F\u4EF7\u503C\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},YIELDDISC:{d:"\u57FA\u4E8E\u4EF7\u683C\u8BA1\u7B97\u6298\u4EF7\u53D1\u884C\u7684\uFF08\u4E0D\u5E26\u606F\uFF09\u503A\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002",a:"\u57FA\u4E8E\u4EF7\u683C\u8BA1\u7B97\u6298\u4EF7\u53D1\u884C\u7684\uFF08\u4E0D\u5E26\u606F\uFF09\u503A\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"pr",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002"},{name:"redemption",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u6E05\u507F\u4EF7\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},NOMINAL:{d:"\u57FA\u4E8E\u7ED9\u5B9A\u7684\u5B9E\u9645\u5229\u7387\u548C\u5E74\u590D\u5229\u671F\u6570\uFF0C\u8FD4\u56DE\u540D\u4E49\u5E74\u5229\u7387\u3002",a:"\u57FA\u4E8E\u7ED9\u5B9A\u7684\u5B9E\u9645\u5229\u7387\u548C\u5E74\u590D\u5229\u671F\u6570\uFF0C\u8FD4\u56DE\u540D\u4E49\u5E74\u5229\u7387\u3002",p:[{name:"effect_rate",detail:"\u6BCF\u5E74\u7684\u5B9E\u9645\u5229\u7387\u3002"},{name:"npery",detail:"\u6BCF\u5E74\u7684\u590D\u5229\u671F\u6570\u3002"}]},XIRR:{d:"\u8FD4\u56DE\u4E00\u7EC4\u4E0D\u4E00\u5B9A\u5B9A\u671F\u53D1\u751F\u7684\u73B0\u91D1\u6D41\u7684\u5185\u90E8\u6536\u76CA\u7387\u3002",a:"\u8FD4\u56DE\u4E00\u7EC4\u4E0D\u4E00\u5B9A\u5B9A\u671F\u53D1\u751F\u7684\u73B0\u91D1\u6D41\u7684\u5185\u90E8\u6536\u76CA\u7387\u3002",p:[{name:"values",detail:`\u5176\u4E2D\u542B\u6709\u6295\u8D44\u76F8\u5173\u6536\u76CA\u6216\u652F\u51FA\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002 + +\u73B0\u91D1\u6D41\u6570\u989D\u4E2D\u5FC5\u987B\u81F3\u5C11\u5305\u542B\u4E00\u9879\u8D1F\u7684\u548C\u4E00\u9879\u6B63\u7684\u73B0\u91D1\u6D41\u91D1\u989D\u624D\u80FD\u8BA1\u7B97\u56DE\u62A5\u7387\u3002`},{name:"dates",detail:"\u4E0E\u73B0\u91D1\u6D41\u6570\u989D\u53C2\u6570\u4E2D\u7684\u73B0\u91D1\u6D41\u5BF9\u5E94\u7684\u65E5\u671F\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"guess",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0.1] - \u5BF9\u5185\u90E8\u56DE\u62A5\u7387\u7684\u4F30\u7B97\u503C\u3002"}]},MIRR:{d:"\u8FD4\u56DE\u4E00\u7CFB\u5217\u5B9A\u671F\u73B0\u91D1\u6D41\u7684\u4FEE\u6539\u540E\u5185\u90E8\u6536\u76CA\u7387\u3002",a:"\u8FD4\u56DE\u4E00\u7CFB\u5217\u5B9A\u671F\u73B0\u91D1\u6D41\u7684\u4FEE\u6539\u540E\u5185\u90E8\u6536\u76CA\u7387\u3002",p:[{name:"values",detail:`\u5176\u4E2D\u542B\u6709\u6295\u8D44\u76F8\u5173\u6536\u76CA\u6216\u652F\u51FA\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002 + +\u73B0\u91D1\u6D41\u6570\u989D\u4E2D\u5FC5\u987B\u81F3\u5C11\u5305\u542B\u4E00\u9879\u8D1F\u7684\u548C\u4E00\u9879\u6B63\u7684\u73B0\u91D1\u6D41\u91D1\u989D\u624D\u80FD\u8BA1\u7B97\u56DE\u62A5\u7387\u3002`},{name:"finance_rate",detail:"\u73B0\u91D1\u6D41\u4E2D\u4F7F\u7528\u7684\u8D44\u91D1\u652F\u4ED8\u7684\u5229\u7387\u3002"},{name:"reinvest_rate",detail:"\u5C06\u73B0\u91D1\u6D41\u518D\u6295\u8D44\u7684\u6536\u76CA\u7387\u3002"}]},IRR:{d:"\u8FD4\u56DE\u7531\u503C\u4E2D\u7684\u6570\u5B57\u8868\u793A\u7684\u4E00\u7CFB\u5217\u73B0\u91D1\u6D41\u7684\u5185\u90E8\u6536\u76CA\u7387\u3002 ",a:"\u8FD4\u56DE\u7531\u503C\u4E2D\u7684\u6570\u5B57\u8868\u793A\u7684\u4E00\u7CFB\u5217\u73B0\u91D1\u6D41\u7684\u5185\u90E8\u6536\u76CA\u7387\u3002 ",p:[{name:"values",detail:`\u5176\u4E2D\u542B\u6709\u6295\u8D44\u76F8\u5173\u6536\u76CA\u6216\u652F\u51FA\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002 + +\u73B0\u91D1\u6D41\u6570\u989D\u4E2D\u5FC5\u987B\u81F3\u5C11\u5305\u542B\u4E00\u9879\u8D1F\u7684\u548C\u4E00\u9879\u6B63\u7684\u73B0\u91D1\u6D41\u91D1\u989D\u624D\u80FD\u8BA1\u7B97\u56DE\u62A5\u7387\u3002`},{name:"guess",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A 0.1] - \u5185\u90E8\u6536\u76CA\u7387\u7684\u4F30\u503C\u3002"}]},NPV:{d:"\u4F7F\u7528\u8D34\u73B0\u7387\u548C\u4E00\u7CFB\u5217\u672A\u6765\u652F\u51FA\uFF08\u8D1F\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u6765\u8BA1\u7B97\u4E00\u9879\u6295\u8D44\u7684\u51C0\u73B0\u503C\u3002",a:"\u4F7F\u7528\u8D34\u73B0\u7387\u548C\u4E00\u7CFB\u5217\u672A\u6765\u652F\u51FA\uFF08\u8D1F\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u6765\u8BA1\u7B97\u4E00\u9879\u6295\u8D44\u7684\u51C0\u73B0\u503C\u3002",p:[{name:"rate",detail:"\u67D0\u4E00\u671F\u95F4\u7684\u8D34\u73B0\u7387\u3002"},{name:"value1",detail:"\u7B2C\u4E00\u7B14\u652F\u51FA\uFF08\u8D1F\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u3002"},{name:"value2, ...",detail:"[\u53EF\u9009] - \u5176\u4ED6\u652F\u51FA\uFF08\u8D1F\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u3002"}]},XNPV:{d:"\u8FD4\u56DE\u4E00\u7EC4\u73B0\u91D1\u6D41\u7684\u51C0\u73B0\u503C\uFF0C\u8FD9\u4E9B\u73B0\u91D1\u6D41\u4E0D\u4E00\u5B9A\u5B9A\u671F\u53D1\u751F\u3002",a:"\u8FD4\u56DE\u4E00\u7EC4\u73B0\u91D1\u6D41\u7684\u51C0\u73B0\u503C\uFF0C\u8FD9\u4E9B\u73B0\u91D1\u6D41\u4E0D\u4E00\u5B9A\u5B9A\u671F\u53D1\u751F\u3002",p:[{name:"rate",detail:"\u5E94\u7528\u4E8E\u73B0\u91D1\u6D41\u7684\u8D34\u73B0\u7387\u3002"},{name:"values",detail:"\u4E0E dates \u4E2D\u7684\u652F\u4ED8\u65F6\u95F4\u76F8\u5BF9\u5E94\u7684\u4E00\u7CFB\u5217\u73B0\u91D1\u6D41\u3002"},{name:"dates",detail:"\u4E0E\u73B0\u91D1\u6D41\u652F\u4ED8\u76F8\u5BF9\u5E94\u7684\u652F\u4ED8\u65E5\u671F\u8868\u3002"}]},CUMIPMT:{d:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u6295\u8D44\u5728\u4E00\u7CFB\u5217\u4ED8\u6B3E\u671F\u5185\u7684\u7D2F\u8BA1\u5229\u606F\u3002",a:"\u57FA\u4E8E\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\uFF0C\u8BA1\u7B97\u6295\u8D44\u5728\u4E00\u7CFB\u5217\u4ED8\u6B3E\u671F\u5185\u7684\u7D2F\u8BA1\u5229\u606F\u3002",p:[{name:"rate",detail:"\u5229\u606F\u7387\u3002"},{name:"nper",detail:"\u603B\u4ED8\u6B3E\u671F\u6570\u3002"},{name:"pv",detail:"\u73B0\u503C\u3002"},{name:"start_period",detail:`\u5F00\u59CB\u7D2F\u8BA1\u8BA1\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u53F7\u3002 + +\u9996\u671F\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E1\u3002`},{name:"end_period",detail:`\u7ED3\u675F\u7D2F\u8BA1\u8BA1\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u53F7\u3002 + +\u672B\u671F\u5FC5\u987B\u5927\u4E8E\u9996\u671F\u3002`},{name:"type",detail:`\u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},PMT:{d:"\u7528\u4E8E\u6839\u636E\u56FA\u5B9A\u4ED8\u6B3E\u989D\u548C\u56FA\u5B9A\u5229\u7387\u8BA1\u7B97\u8D37\u6B3E\u7684\u4ED8\u6B3E\u989D\u3002",a:"\u7528\u4E8E\u6839\u636E\u56FA\u5B9A\u4ED8\u6B3E\u989D\u548C\u56FA\u5B9A\u5229\u7387\u8BA1\u7B97\u8D37\u6B3E\u7684\u4ED8\u6B3E\u989D\u3002",p:[{name:"rate",detail:"\u8D37\u6B3E\u5229\u7387\u3002"},{name:"nper",detail:"\u8BE5\u9879\u8D37\u6B3E\u7684\u4ED8\u6B3E\u603B\u6570\u3002"},{name:"pv",detail:"\u73B0\u503C\uFF0C\u6216\u4E00\u7CFB\u5217\u672A\u6765\u4ED8\u6B3E\u989D\u73B0\u5728\u6240\u503C\u7684\u603B\u989D\uFF0C\u4E5F\u53EB\u672C\u91D1\u3002"},{name:"fv",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0] - \u672A\u6765\u503C\uFF0C\u6216\u5728\u6700\u540E\u4E00\u6B21\u4ED8\u6B3E\u540E\u5E0C\u671B\u5F97\u5230\u7684\u73B0\u91D1\u4F59\u989D\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},IPMT:{d:"\u57FA\u4E8E\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u65B9\u5F0F\uFF0C\u8FD4\u56DE\u7ED9\u5B9A\u671F\u6570\u5185\u5BF9\u6295\u8D44\u7684\u5229\u606F\u507F\u8FD8\u989D\u3002",a:"\u57FA\u4E8E\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u65B9\u5F0F\uFF0C\u8FD4\u56DE\u7ED9\u5B9A\u671F\u6570\u5185\u5BF9\u6295\u8D44\u7684\u5229\u606F\u507F\u8FD8\u989D\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"per",detail:"\u7528\u4E8E\u8BA1\u7B97\u5176\u5229\u606F\u6570\u989D\u7684\u671F\u6570\uFF0C\u5FC5\u987B\u5728 1 \u5230 nper \u4E4B\u95F4\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u603B\u671F\u6570\u3002"},{name:"pv",detail:"\u73B0\u503C\uFF0C\u6216\u4E00\u7CFB\u5217\u672A\u6765\u4ED8\u6B3E\u7684\u5F53\u524D\u503C\u7684\u7D2F\u79EF\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0] - \u672A\u6765\u503C\uFF0C\u6216\u5728\u6700\u540E\u4E00\u6B21\u4ED8\u6B3E\u540E\u5E0C\u671B\u5F97\u5230\u7684\u73B0\u91D1\u4F59\u989D\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},PPMT:{d:"\u8FD4\u56DE\u6839\u636E\u5B9A\u671F\u56FA\u5B9A\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\u800C\u5B9A\u7684\u6295\u8D44\u5728\u5DF2\u77E5\u671F\u95F4\u5185\u7684\u672C\u91D1\u507F\u4ED8\u989D\u3002",a:"\u8FD4\u56DE\u6839\u636E\u5B9A\u671F\u56FA\u5B9A\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\u800C\u5B9A\u7684\u6295\u8D44\u5728\u5DF2\u77E5\u671F\u95F4\u5185\u7684\u672C\u91D1\u507F\u4ED8\u989D\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"per",detail:"\u6307\u5B9A\u671F\u6570\uFF0C\u8BE5\u503C\u5FC5\u987B\u5728 1 \u5230 nper \u8303\u56F4\u5185\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u603B\u671F\u6570\u3002"},{name:"pv",detail:"\u73B0\u503C\u5373\u4E00\u7CFB\u5217\u672A\u6765\u4ED8\u6B3E\u5F53\u524D\u503C\u7684\u603B\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0] - \u672A\u6765\u503C\uFF0C\u6216\u5728\u6700\u540E\u4E00\u6B21\u4ED8\u6B3E\u540E\u5E0C\u671B\u5F97\u5230\u7684\u73B0\u91D1\u4F59\u989D\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},INTRATE:{d:"\u8FD4\u56DE\u5B8C\u5168\u6295\u8D44\u578B\u8BC1\u5238\u7684\u5229\u7387\u3002",a:"\u8FD4\u56DE\u5B8C\u5168\u6295\u8D44\u578B\u8BC1\u5238\u7684\u5229\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"investment",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u6295\u8D44\u989D\u3002"},{name:"redemption",detail:"\u6709\u4EF7\u8BC1\u5238\u5230\u671F\u65F6\u7684\u5151\u6362\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},PRICE:{d:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u7684\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002",a:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u7684\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"rate",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"redemption",detail:"\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u6E05\u507F\u4EF7\u503C\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},PRICEDISC:{d:"\u8FD4\u56DE\u6298\u4EF7\u53D1\u884C\u7684\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002",a:"\u8FD4\u56DE\u6298\u4EF7\u53D1\u884C\u7684\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"discount",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u8D34\u73B0\u7387\u3002"},{name:"redemption",detail:"\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u6E05\u507F\u4EF7\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},PRICEMAT:{d:"\u8FD4\u56DE\u5230\u671F\u4ED8\u606F\u7684\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002",a:"\u8FD4\u56DE\u5230\u671F\u4ED8\u606F\u7684\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"issue",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u53D1\u884C\u65E5\u3002"},{name:"rate",detail:"\u6709\u4EF7\u8BC1\u5238\u5728\u53D1\u884C\u65E5\u7684\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},RECEIVED:{d:"\u8FD4\u56DE\u4E00\u6B21\u6027\u4ED8\u606F\u7684\u6709\u4EF7\u8BC1\u5238\u5230\u671F\u6536\u56DE\u7684\u91D1\u989D\u3002",a:"\u8FD4\u56DE\u4E00\u6B21\u6027\u4ED8\u606F\u7684\u6709\u4EF7\u8BC1\u5238\u5230\u671F\u6536\u56DE\u7684\u91D1\u989D\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"investment",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u6295\u8D44\u989D\u3002"},{name:"discount",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u8D34\u73B0\u7387\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},DISC:{d:"\u8FD4\u56DE\u6709\u4EF7\u8BC1\u5238\u7684\u8D34\u73B0\u7387\u3002",a:"\u8FD4\u56DE\u6709\u4EF7\u8BC1\u5238\u7684\u8D34\u73B0\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"pr",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u4EF7\u683C\uFF08\u6309\u9762\u503C\u4E3A \uFFE5100 \u8BA1\u7B97\uFF09\u3002"},{name:"redemption",detail:"\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684\u6E05\u507F\u4EF7\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},NPER:{d:"\u57FA\u4E8E\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u65B9\u5F0F\uFF0C\u8FD4\u56DE\u67D0\u9879\u6295\u8D44\u7684\u603B\u671F\u6570\u3002",a:"\u57FA\u4E8E\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u989D\u5206\u671F\u4ED8\u6B3E\u65B9\u5F0F\uFF0C\u8FD4\u56DE\u67D0\u9879\u6295\u8D44\u7684\u603B\u671F\u6570\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"pmt",detail:"\u5404\u671F\u6240\u5E94\u652F\u4ED8\u7684\u91D1\u989D\uFF0C\u5728\u6574\u4E2A\u5E74\u91D1\u671F\u95F4\u4FDD\u6301\u4E0D\u53D8\u3002"},{name:"pv",detail:"\u73B0\u503C\uFF0C\u6216\u4E00\u7CFB\u5217\u672A\u6765\u4ED8\u6B3E\u7684\u5F53\u524D\u503C\u7684\u7D2F\u79EF\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0] - \u672A\u6765\u503C\uFF0C\u6216\u5728\u6700\u540E\u4E00\u6B21\u4ED8\u6B3E\u540E\u5E0C\u671B\u5F97\u5230\u7684\u73B0\u91D1\u4F59\u989D\u3002"},{name:"type",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u65F6\u95F4\u662F\u5728\u671F\u521D\u8FD8\u662F\u671F\u672B\u3002 + +0 \u8868\u793A\u671F\u672B\uFF1B + +1 \u8868\u793A\u671F\u521D\u3002`}]},SLN:{d:"\u8FD4\u56DE\u4E00\u4E2A\u671F\u95F4\u5185\u7684\u8D44\u4EA7\u7684\u76F4\u7EBF\u6298\u65E7\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u671F\u95F4\u5185\u7684\u8D44\u4EA7\u7684\u76F4\u7EBF\u6298\u65E7\u3002",p:[{name:"cost",detail:"\u8D44\u4EA7\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u65E7\u672B\u5C3E\u65F6\u7684\u503C\uFF08\u6709\u65F6\u4E5F\u79F0\u4E3A\u8D44\u4EA7\u6B8B\u503C\uFF09\u3002"},{name:"life",detail:"\u8D44\u4EA7\u7684\u6298\u65E7\u671F\u6570\uFF08\u6709\u65F6\u4E5F\u79F0\u4F5C\u8D44\u4EA7\u7684\u4F7F\u7528\u5BFF\u547D\uFF09\u3002"}]},DURATION:{d:"\u8FD4\u56DE\u5047\u8BBE\u9762\u503C \uFFE5100 \u7684\u5B9A\u671F\u4ED8\u606F\u6709\u4EF7\u8BC1\u5238\u7684\u4FEE\u6B63\u671F\u9650\u3002",a:"\u8FD4\u56DE\u5047\u8BBE\u9762\u503C \uFFE5100 \u7684\u5B9A\u671F\u4ED8\u606F\u6709\u4EF7\u8BC1\u5238\u7684\u4FEE\u6B63\u671F\u9650\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"coupon",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},MDURATION:{d:"\u8FD4\u56DE\u5047\u8BBE\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684 Macauley \u4FEE\u6B63\u671F\u9650\u3002",a:"\u8FD4\u56DE\u5047\u8BBE\u9762\u503C \uFFE5100 \u7684\u6709\u4EF7\u8BC1\u5238\u7684 Macauley \u4FEE\u6B63\u671F\u9650\u3002",p:[{name:"settlement",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u7ED3\u7B97\u65E5\u3002 \u6709\u4EF7\u8BC1\u5238\u7ED3\u7B97\u65E5\u662F\u5728\u53D1\u884C\u65E5\u4E4B\u540E\uFF0C\u6709\u4EF7\u8BC1\u5238\u5356\u7ED9\u8D2D\u4E70\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5230\u671F\u65E5\u3002 \u5230\u671F\u65E5\u662F\u6709\u4EF7\u8BC1\u5238\u6709\u6548\u671F\u622A\u6B62\u65F6\u7684\u65E5\u671F\u3002"},{name:"coupon",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6570\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8\uFF0Cfrequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8\uFF0Cfrequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8\uFF0Cfrequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A0] - \u6307\u793A\u8981\u4F7F\u7528\u54EA\u79CD\u5929\u6570\u8BA1\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A\u201C\u7F8E\u56FD(NASD) 30/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u56FD\u5168\u56FD\u8BC1\u5238\u4EA4\u6613\u5546\u534F\u4F1A\u6807\u51C6\uFF0C\u5047\u8BBE\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\uFF0C\u5E76\u5BF9\u6240\u8F93\u5165\u7684\u6708\u672B\u65E5\u671F\u8FDB\u884C\u5177\u4F53\u8C03\u6574\u3002 + +1\u8868\u793A\u201C\u5B9E\u9645/\u5B9E\u9645\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8BA1\u7B97\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u4E8E\u7F8E\u56FD\u957F\u671F\u503A\u5238\uFF0C\u4E5F\u662F\u5728\u975E\u8D22\u7ECF\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A\u201C\u5B9E\u9645/360\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A360\u5929\u3002 + +3\u8868\u793A\u201C\u5B9E\u9645/365\u201D\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u4E8E\u6307\u5B9A\u65E5\u671F\u4E4B\u95F4\u7684\u5B9E\u9645\u5929\u6570\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u5047\u5B9A\u6BCF\u5E74\u4E3A365\u5929\u3002 + +4\u8868\u793A\u201C\u6B27\u6D3230/360\u201D\u65B9\u6CD5 - \u7C7B\u4F3C\u4E8E0\uFF0C\u6B64\u65B9\u6CD5\u57FA\u4E8E\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u8FDB\u884C\u8BA1\u7B97\uFF0C\u4F46\u6309\u7167\u6B27\u6D32\u91D1\u878D\u60EF\u4F8B\u5BF9\u6708\u672B\u65E5\u671F\u8FDB\u884C\u8C03\u6574\u3002`}]},BIN2DEC:{d:"\u5C06\u4E8C\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u3002",a:"\u5C06\u4E8C\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768410\u4F4D\u4E8C\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u5BF9\u4E8E\u6B64\u51FD\u6570\uFF0C\u6700\u5927\u7684\u6B63\u6570\u8F93\u5165\u503C\u4E3A0111111111\uFF0C\u6700\u5C0F\u7684\u8D1F\u6570\u8F93\u5165\u503C\u4E3A1000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u4E8C\u8FDB\u5236\u6570\uFF0C\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CBIN2DEC(100)\u548CBIN2DEC("100")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A4\u3002`}]},BIN2HEX:{d:"\u5C06\u4E8C\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u516D\u8FDB\u5236\u6570\u3002",a:"\u5C06\u4E8C\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u516D\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768410\u4F4D\u4E8C\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u5BF9\u4E8E\u6B64\u51FD\u6570\uFF0C\u6700\u5927\u7684\u6B63\u6570\u8F93\u5165\u503C\u4E3A0111111111\uFF0C\u6700\u5C0F\u7684\u8D1F\u6570\u8F93\u5165\u503C\u4E3A1000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u4E8C\u8FDB\u5236\u6570\uFF0C\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CBIN2HEX(11111)\u548CBIN2HEX("11111")\u5F97\u51FA \u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A1F\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002\u4F8B\u5982\uFF0CBIN2HEX("11111",8)\u6240\u5F97\u7684\u7ED3\u679C\u503C\u4E3A0000001F\u3002 + +\u5982\u679C\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u4E3A1\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u5F53\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u5927\u4E8E\u7B49\u4E8E1000000000\u65F6\u5FFD\u7565\u6B64\u503C\u3002`}]},BIN2OCT:{d:"\u5C06\u4E8C\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u516B\u8FDB\u5236\u6570\u3002",a:"\u5C06\u4E8C\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u516B\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768410\u4F4D\u4E8C\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u5BF9\u4E8E\u6B64\u51FD\u6570\uFF0C\u6700\u5927\u7684\u6B63\u6570\u8F93\u5165\u503C\u4E3A0111111111\uFF0C\u6700\u5C0F\u7684\u8D1F\u6570\u8F93\u5165\u503C\u4E3A1000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u4E8C\u8FDB\u5236\u6570\uFF0C\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CBIN2OCT(11111)\u548CBIN2OCT("11111")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A37\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002\u4F8B\u5982\uFF0CBIN2OCT("11111")\u5F97\u5230\u7684\u7ED3\u679C\u503C\u4E3A00000037\u3002 + +\u5982\u679C\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u4E3A1\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u5F53\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u5927\u4E8E\u7B49\u4E8E1000000000\u65F6\u5FFD\u7565\u6B64\u503C\u3002`}]},DEC2BIN:{d:"\u5C06\u5341\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u4E8C\u8FDB\u5236\u6570\u3002",a:"\u5C06\u5341\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u4E8C\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u5341\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5BF9\u4E8E\u6B64\u51FD\u6570\uFF0C\u6700\u5927\u7684\u6B63\u6570\u8F93\u5165\u503C\u4E3A511\uFF0C\u6700\u5C0F\u7684\u8D1F\u6570\u8F93\u5165\u503C\u4E3A-512\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5341\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u5341\u8FDB\u5236\u6570\uFF0C\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CDEC2BIN(199)\u548CDEC2BIN("199")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A11000111\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5341\u8FDB\u5236\u6570\u4E3A\u8D1F\u6570\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\u3002`}]},DEC2HEX:{d:"\u5C06\u5341\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u516D\u8FDB\u5236\u6570\u3002",a:"\u5C06\u5341\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u516D\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u5341\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A549755813887\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3A-549755814888\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5341\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u5341\u8FDB\u5236\u6570\uFF0C\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CDEC2HEX(100)\u548CDEC2HEX("100")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A64\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5341\u8FDB\u5236\u6570\u4E3A\u8D1F\u6570\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\u3002`}]},DEC2OCT:{d:"\u5C06\u5341\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u516B\u8FDB\u5236\u6570\u3002",a:"\u5C06\u5341\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u516B\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u7684\u5341\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A536870911\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3A-53687092\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5341\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u5341\u8FDB\u5236\u6570\uFF0C\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CDEC2OCT(199)\u548CDEC2OCT("199")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A307\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5341\u8FDB\u5236\u6570\u4E3A\u8D1F\u6570\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\u3002`}]},HEX2BIN:{d:"\u5C06\u5341\u516D\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u4E8C\u8FDB\u5236\u6570\u3002",a:"\u5C06\u5341\u516D\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u4E8C\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768440\u4F4D\u5341\u516D\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A1FF\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3AFFFFFFFE00\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u5341\u516D\u8FDB\u5236\u6570\uFF0C\u51FD\u6570\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CHEX2BIN(199)\u548CHEX2BIN("199")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A110011001\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u4E3A1\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u5F53\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u5927\u4E8E\u7B49\u4E8E8000000000\u65F6\u5FFD\u7565\u6B64\u503C\u3002`}]},HEX2DEC:{d:"\u5C06\u5341\u516D\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u3002",a:"\u5C06\u5341\u516D\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768440\u4F4D\u5341\u516D\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A7fffffffff\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3A8000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u5341\u516D\u8FDB\u5236\u6570\uFF0C\u51FD\u6570\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CHEX2DEC(199)\u548CHEX2DEC("199")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A409\u3002`}]},HEX2OCT:{d:"\u5C06\u5341\u516D\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u516B\u8FDB\u5236\u6570\u3002",a:"\u5C06\u5341\u516D\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u516B\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768440\u4F4D\u5341\u516D\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A1FFFFFFF\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3AFFE0000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u5341\u516D\u8FDB\u5236\u6570\uFF0C\u51FD\u6570\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0CHEX2OCT(199)\u548CHEX2OCT("199")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A631\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u4E3A1\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u5F53\u7ED9\u5B9A\u7684\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u5927\u4E8E\u7B49\u4E8E8000000000\u65F6\u5FFD\u7565\u6B64\u503C\u3002`}]},OCT2BIN:{d:"\u5C06\u516B\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u4E8C\u8FDB\u5236\u6570\u3002",a:"\u5C06\u516B\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u4E8C\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u4E8C\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768430\u4F4D\u516B\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A777\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3A7777777000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u516B\u8FDB\u5236\u6570\uFF0C\u51FD\u6570\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0COCT2BIN(177)\u548COCT2BIN("177")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A1111111\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u4E3A1\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u5F53\u7ED9\u5B9A\u7684\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u5927\u4E8E\u7B49\u4E8E4000000000\u65F6\u5FFD\u7565\u6B64\u503C\u3002`}]},OCT2DEC:{d:"\u5C06\u516B\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u3002",a:"\u5C06\u516B\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5341\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768430\u4F4D\u516B\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684ba\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A3777777777\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3A4000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u516B\u8FDB\u5236\u6570\uFF0C\u51FD\u6570\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0COCT2DEC(177)\u548COCT2DEC("177")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A127\u3002`}]},OCT2HEX:{d:"\u5C06\u516B\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u516D\u8FDB\u5236\u6570\u3002",a:"\u5C06\u516B\u8FDB\u5236\u6570\u8F6C\u6362\u4E3A\u5341\u516D\u8FDB\u5236\u6570\u3002",p:[{name:"number",detail:`\u8981\u8F6C\u6362\u4E3A\u5E26\u7B26\u53F7\u7684\u5341\u516D\u8FDB\u5236\u6570\u7684\u5E26\u7B26\u53F7\u768430\u4F4D\u516B\u8FDB\u5236\u6570\u503C\uFF08\u4EE5\u5B57\u7B26\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E26\u7B26\u53F7\u7684ba\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u53F7\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8BF4\uFF0C\u8D1F\u6570\u662F\u4EE5\u4E8C\u7684\u8865\u7801\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6570\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6570\u503C\u4E3A3777777777\uFF0C\u6700\u5C0F\u8D1F\u6570\u503C\u4E3A4000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u662F\u6709\u6548\u7684\u516B\u8FDB\u5236\u6570\uFF0C\u51FD\u6570\u4F1A\u81EA\u52A8\u5C06\u5176\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u5B57\u7B26\u4E32\u8F93\u5165\u3002\u4F8B\u5982\uFF0COCT2HEX(177)\u548COCT2HEX("177")\u5F97\u51FA\u7684\u7ED3\u679C\u76F8\u540C\uFF0C\u5747\u4E3A7F\u3002`},{name:"places",detail:`[ \u53EF\u9009 ] - \u7ED3\u679C\u4E2D\u8981\u786E\u4FDD\u7684\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u8BBE\u7F6E\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u7ED3\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6570\uFF0C\u5219\u5728\u7ED3\u679C\u7684\u5DE6\u4FA7\u586B\u51450\uFF0C\u4F7F\u603B\u6709\u6548\u4F4D\u6570\u8FBE\u5230\u6709\u6548\u4F4D\u6570\u3002 + +\u5982\u679C\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u7684\u6700\u9AD8\u4F4D\u4E3A1\uFF0C\u5219\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u5F53\u7ED9\u5B9A\u7684\u5E26\u7B26\u53F7\u7684\u516B\u8FDB\u5236\u6570\u5927\u4E8E\u7B49\u4E8E4000000000\u65F6\u5FFD\u7565\u6B64\u503C\u3002`}]},COMPLEX:{d:"\u5C06\u5B9E\u7CFB\u6570\u53CA\u865A\u7CFB\u6570\u8F6C\u6362\u4E3A x+yi \u6216 x+yj \u5F62\u5F0F\u7684\u590D\u6570\u3002",a:"\u5C06\u5B9E\u7CFB\u6570\u53CA\u865A\u7CFB\u6570\u8F6C\u6362\u4E3A x+yi \u6216 x+yj \u5F62\u5F0F\u7684\u590D\u6570\u3002",p:[{name:"real_num",detail:"\u590D\u6570\u7684\u5B9E\u7CFB\u6570\u3002"},{name:"i_num",detail:"\u590D\u6570\u7684\u865A\u7CFB\u6570\u3002"},{name:"suffix",detail:'[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A "i"] - \u590D\u6570\u4E2D\u865A\u7CFB\u6570\u7684\u540E\u7F00\u3002'}]},IMREAL:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u5B9E\u7CFB\u6570\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u5B9E\u7CFB\u6570\u3002",p:[{name:"inumber",detail:"\u9700\u8981\u8BA1\u7B97\u5176\u5B9E\u7CFB\u6570\u7684\u590D\u6570\u3002"}]},IMAGINARY:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u865A\u7CFB\u6570\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u865A\u7CFB\u6570\u3002",p:[{name:"inumber",detail:"\u9700\u8981\u8BA1\u7B97\u5176\u865A\u7CFB\u6570\u7684\u590D\u6570\u3002"}]},IMCONJUGATE:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u5171\u8F6D\u590D\u6570\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u5171\u8F6D\u590D\u6570\u3002",p:[{name:"inumber",detail:"\u9700\u8981\u8BA1\u7B97\u5176\u5171\u8F6D\u6570\u7684\u590D\u6570\u3002"}]},IMABS:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u7EDD\u5BF9\u503C\uFF08\u6A21\uFF09\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u590D\u6570\u7684\u7EDD\u5BF9\u503C\uFF08\u6A21\uFF09\u3002",p:[{name:"inumber",detail:"\u8981\u8BA1\u7B97\u5176\u7EDD\u5BF9\u503C\u7684\u590D\u6570\u3002"}]},DELTA:{d:"\u68C0\u9A8C\u4E24\u4E2A\u503C\u662F\u5426\u76F8\u7B49\u3002 \u5982\u679C number1=number2\uFF0C\u5219\u8FD4\u56DE 1\uFF1B\u5426\u5219\u8FD4\u56DE 0\u3002",a:"\u68C0\u9A8C\u4E24\u4E2A\u503C\u662F\u5426\u76F8\u7B49\u3002 \u5982\u679C number1=number2\uFF0C\u5219\u8FD4\u56DE 1\uFF1B\u5426\u5219\u8FD4\u56DE 0\u3002",p:[{name:"number1",detail:"\u7B2C\u4E00\u4E2A\u6570\u5B57\u3002"},{name:"number2",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A 0] - \u7B2C\u4E8C\u4E2A\u6570\u5B57\u3002"}]},IMSUM:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u4E2A\u590D\u6570\u7684\u548C\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u4E2A\u590D\u6570\u7684\u548C\u3002",p:[{name:"inumber1",detail:"\u8981\u76F8\u52A0\u7684\u7B2C\u4E00\u4E2A\u590D\u6570"},{name:"inumber2, \u2026",detail:"[\u53EF\u9009] - \u8981\u4E0E\u503C1 \u76F8\u52A0\u7684\u5176\u4ED6\u590D\u6570"}]},IMSUB:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u4E24\u4E2A\u590D\u6570\u7684\u5DEE\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u4E24\u4E2A\u590D\u6570\u7684\u5DEE\u3002",p:[{name:"inumber1",detail:"\u4ECE\uFF08\u590D\uFF09\u6570\u4E2D\u51CF\u53BB inumber2\u3002"},{name:"inumber2",detail:"\u4ECE inumber1 \u4E2D\u51CF\uFF08\u590D\uFF09\u6570\u3002"}]},IMPRODUCT:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u4E2A\u590D\u6570\u7684\u4E58\u79EF\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u4E2A\u590D\u6570\u7684\u4E58\u79EF\u3002",p:[{name:"inumber1",detail:"\u7528\u4E8E\u8BA1\u7B97\u4E58\u79EF\u7684\u7B2C\u4E00\u4E2A\u590D\u6570"},{name:"inumber2, \u2026",detail:"[\u53EF\u9009] - \u8981\u76F8\u4E58\u7684\u5176\u4ED6\u590D\u6570\u3002"}]},IMDIV:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u4E24\u4E2A\u590D\u6570\u7684\u5546\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u4E24\u4E2A\u590D\u6570\u7684\u5546\u3002",p:[{name:"inumber1",detail:"\u590D\u6570\u5206\u5B50\u6216\u88AB\u9664\u6570\u3002"},{name:"inumber2",detail:"\u590D\u6570\u5206\u6BCD\u6216\u9664\u6570\u3002"}]},NOT:{d:"\u8FD4\u56DE\u67D0\u4E2A\u903B\u8F91\u503C\u7684\u76F8\u53CD\u503C - \u201CNOT(TRUE())\u201D\u5C06\u8FD4\u56DE FALSE\uFF1B\u201CNOT(FALSE())\u201D\u5C06\u8FD4\u56DE TRUE\u3002",a:"\u8FD4\u56DE\u67D0\u4E2A\u903B\u8F91\u503C\u7684\u76F8\u53CD\u503C - \u201CNOT(TRUE())\u201D\u5C06\u8FD4\u56DE FALSE\uFF1B\u201CNOT(FALSE())\u201D\u5C06\u8FD4\u56DE TRUE\u3002",p:[{name:"logical",detail:"\u8BA1\u7B97\u7ED3\u679C\u4E3A TRUE \u6216 FALSE \u7684\u4EFB\u4F55\u503C\u6216\u8868\u8FBE\u5F0F\u3002"}]},TRUE:{d:"\u8FD4\u56DE\u903B\u8F91\u503C TRUE\u3002",a:"\u8FD4\u56DE\u903B\u8F91\u503C TRUE\u3002",p:[]},FALSE:{d:"\u8FD4\u56DE\u903B\u8F91\u503C FALSE\u3002",a:"\u8FD4\u56DE\u903B\u8F91\u503C FALSE\u3002",p:[]},AND:{d:"\u6240\u6709\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A TRUE \u65F6\uFF0C\u8FD4\u56DE TRUE\uFF1B\u53EA\u8981\u6709\u4E00\u4E2A\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A FALSE\uFF0C\u5373\u8FD4\u56DE FALSE\u3002",a:"\u6240\u6709\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A TRUE \u65F6\uFF0C\u8FD4\u56DE TRUE\uFF1B\u53EA\u8981\u6709\u4E00\u4E2A\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A FALSE\uFF0C\u5373\u8FD4\u56DE FALSE\u3002",p:[{name:"logical1",detail:"\u8981\u6D4B\u8BD5\u7684\u7B2C\u4E00\u4E2A\u6761\u4EF6\uFF0C\u5176\u8BA1\u7B97\u7ED3\u679C\u53EF\u4EE5\u4E3A TRUE \u6216 FALSE\u3002"},{name:"logical2,...",detail:"[\u53EF\u9009] - \u8981\u6D4B\u8BD5\u7684\u5176\u4ED6\u6761\u4EF6\uFF0C\u5176\u8BA1\u7B97\u7ED3\u679C\u53EF\u4EE5\u4E3A TRUE \u6216 FALSE\uFF0C\u6700\u591A\u53EF\u5305\u542B 255 \u4E2A\u6761\u4EF6\u3002"}]},IFERROR:{d:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u4E0D\u662F\u9519\u8BEF\u503C\uFF0C\u5C31\u8FD4\u56DE\u7B2C\u4E00\u4E2A\u53C2\u6570\uFF1B\u5426\u5219\uFF0C\u8FD4\u56DE\u7B2C\u4E8C\u4E2A\u53C2\u6570\u3002",a:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u4E0D\u662F\u9519\u8BEF\u503C",p:[{name:"value",detail:"\u68C0\u67E5\u662F\u5426\u5B58\u5728\u9519\u8BEF\u7684\u53C2\u6570\u3002"},{name:"value_if_error",detail:"\u516C\u5F0F\u7684\u8BA1\u7B97\u7ED3\u679C\u9519\u8BEF\u65F6\u8FD4\u56DE\u7684\u503C\u3002 \u8BA1\u7B97\u4EE5\u4E0B\u9519\u8BEF\u7C7B\u578B\uFF1A#N/A\u3001#VALUE!\u3001#REF!\u3001#DIV/0!\u3001#NUM!\u3001#NAME? \u6216 #NULL!\u3002"}]},IF:{d:"\u5F53\u903B\u8F91\u8868\u8FBE\u5F0F\u7684\u503C\u4E3A TRUE \u65F6\u8FD4\u56DE\u4E00\u4E2A\u503C\uFF0C\u800C\u5F53\u5176\u4E3A FALSE \u65F6\u8FD4\u56DE\u53E6\u4E00\u4E2A\u503C\u3002",a:"\u5F53\u903B\u8F91\u8868\u8FBE\u5F0F\u7684\u503C\u4E3A TRUE \u65F6\u8FD4\u56DE\u4E00\u4E2A\u503C\uFF0C\u800C\u5F53\u5176\u4E3A FALSE \u65F6\u8FD4\u56DE\u53E6\u4E00\u4E2A\u503C\u3002",p:[{name:"logical_test",detail:"\u4E00\u4E2A\u8868\u8FBE\u5F0F\u6216\u5BF9\u5305\u542B\u8868\u8FBE\u5F0F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u8BE5\u8868\u8FBE\u5F0F\u4EE3\u8868\u67D0\u79CD\u903B\u8F91\u503C\uFF08\u5373TRUE\u6216FALSE\uFF09\u3002"},{name:"value_if_true",detail:"\u5F53\u903B\u8F91\u8868\u8FBE\u5F0F\u4E3ATRUE\u65F6\u7684\u8FD4\u56DE\u503C\u3002"},{name:"value_if_false",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E3A\u7A7A\u767D] - \u5F53\u903B\u8F91\u8868\u8FBE\u5F0F\u7B49\u4E8EFALSE\u65F6\u7684\u51FD\u6570\u8FD4\u56DE\u503C\u3002"}]},OR:{d:"\u53EA\u8981\u6709\u4E00\u4E2A\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A TRUE \u65F6\uFF0C\u8FD4\u56DE TRUE\uFF1B\u6240\u6709\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A FALSE\uFF0C\u5373\u8FD4\u56DE FALSE\u3002",a:"\u53EA\u8981\u6709\u4E00\u4E2A\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A TRUE \u65F6\uFF0C\u8FD4\u56DE TRUE\uFF1B\u6240\u6709\u53C2\u6570\u7684\u8BA1\u7B97\u7ED3\u679C\u4E3A FALSE\uFF0C\u5373\u8FD4\u56DE FALSE\u3002",p:[{name:"logical1",detail:"\u8981\u6D4B\u8BD5\u7684\u7B2C\u4E00\u4E2A\u6761\u4EF6\uFF0C\u5176\u8BA1\u7B97\u7ED3\u679C\u53EF\u4EE5\u4E3A TRUE \u6216 FALSE\u3002"},{name:"\u903B\u8F91\u8868\u8FBE\u5F0F2",detail:"[\u53EF\u9009] - \u5176\u4ED6\u8868\u8FBE\u5F0F\u6216\u5BF9\u5305\u542B\u8868\u8FBE\u5F0F\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u8FD9\u4E9B\u8868\u8FBE\u5F0F\u4EE3\u8868\u67D0\u79CD\u903B\u8F91\u503C\uFF08\u5373TRUE\u6216FALSE\uFF09\u6216\u8005\u53EF\u4EE5\u5F3A\u5236\u8F6C\u6362\u4E3A\u903B\u8F91\u503C\u3002"}]},NE:{d:"\u5982\u679C\u6307\u5B9A\u7684\u503C\u4E0D\u76F8\u7B49\uFF0C\u5219\u8FD4\u56DE\u201CTRUE\u201D\uFF1B\u5426\u5219\u8FD4\u56DE\u201CFALSE\u201D\u3002\u76F8\u5F53\u4E8E\u201C<>\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u5982\u679C\u6307\u5B9A\u7684\u503C\u4E0D\u76F8\u7B49\uFF0C\u5219\u8FD4\u56DE\u201CTRUE\u201D\uFF1B\u5426\u5219\u8FD4\u56DE\u201CFALSE\u201D\u3002\u76F8\u5F53\u4E8E\u201C<>\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u7B2C\u4E00\u4E2A\u503C\u3002"},{name:"value2",detail:"\u8981\u68C0\u67E5\u662F\u5426\u4E0E value1 \u4E0D\u76F8\u7B49\u7684\u503C\u3002"}]},EQ:{d:"\u5982\u679C\u6307\u5B9A\u7684\u503C\u76F8\u7B49\uFF0C\u5219\u8FD4\u56DE\u201CTRUE\u201D\uFF1B\u5426\u5219\u8FD4\u56DE\u201CFALSE\u201D\u3002\u76F8\u5F53\u4E8E\u201C=\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u5982\u679C\u6307\u5B9A\u7684\u503C\u76F8\u7B49\uFF0C\u5219\u8FD4\u56DE\u201CTRUE\u201D\uFF1B\u5426\u5219\u8FD4\u56DE\u201CFALSE\u201D\u3002\u76F8\u5F53\u4E8E\u201C=\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u7B2C\u4E00\u4E2A\u503C\u3002"},{name:"value2",detail:"\u8981\u68C0\u67E5\u662F\u5426\u4E0E value1 \u76F8\u7B49\u7684\u503C\u3002"}]},GT:{d:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u4E25\u683C\u5927\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C>\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u4E25\u683C\u5927\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C>\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5927\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u4E2A\u503C\u3002"}]},GTE:{d:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u5927\u4E8E\u6216\u7B49\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C>=\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u5927\u4E8E\u6216\u7B49\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C>=\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5927\u4E8E\u7B49\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u4E2A\u503C\u3002"}]},LT:{d:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u4E25\u683C\u5C0F\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C<\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u4E25\u683C\u5C0F\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C<\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5C0F\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u4E2A\u503C\u3002"}]},LTE:{d:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u5C0F\u4E8E\u6216\u7B49\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C<=\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u5982\u679C\u7B2C\u4E00\u4E2A\u53C2\u6570\u5C0F\u4E8E\u6216\u7B49\u4E8E\u7B2C\u4E8C\u4E2A\uFF0C\u5219\u8FD4\u56DE TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002\u76F8\u5F53\u4E8E\u201C<=\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5C0F\u4E8E\u7B49\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u4E2A\u503C\u3002"}]},ADD:{d:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u503C\u4E4B\u548C\u3002\u76F8\u5F53\u4E8E `+` \u8FD0\u7B97\u7B26\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u503C\u4E4B\u548C\u3002\u76F8\u5F53\u4E8E `+` \u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u7B2C\u4E00\u4E2A\u52A0\u6570\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u4E2A\u52A0\u6570\u3002"}]},MINUS:{d:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u503C\u4E4B\u5DEE\u3002\u76F8\u5F53\u4E8E\u201C-\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u503C\u4E4B\u5DEE\u3002\u76F8\u5F53\u4E8E\u201C-\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u88AB\u51CF\u6570\uFF0C\u5373\u8981\u5BF9\u5176\u8BA1\u51CF\u7684\u6570\u503C\u3002"},{name:"value2",detail:"\u51CF\u6570\uFF0C\u5373\u8981\u4ECE value1 \u4E2D\u51CF\u9664\u7684\u6570\u503C\u3002"}]},MULTIPLY:{d:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u7684\u4E58\u79EF\u3002\u76F8\u5F53\u4E8E\u201C*\u201D\u8FD0\u7B97\u7B26\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u7684\u4E58\u79EF\u3002\u76F8\u5F53\u4E8E\u201C*\u201D\u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u7B2C\u4E00\u4E2A\u4E58\u6570\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u4E2A\u4E58\u6570\u3002"}]},DIVIDE:{d:"\u8FD4\u56DE\u4E24\u4E2A\u53C2\u6570\u76F8\u9664\u6240\u5F97\u7684\u7ED3\u679C\u3002\u76F8\u5F53\u4E8E `/` \u8FD0\u7B97\u7B26\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u53C2\u6570\u76F8\u9664\u6240\u5F97\u7684\u7ED3\u679C\u3002\u76F8\u5F53\u4E8E `/` \u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"\u8981\u88AB\u9664\u7684\u6570\u503C\u3002"},{name:"value2",detail:`\u7528\u4E8E\u9664\u5176\u4ED6\u6570\u7684\u6570\u503C\u3002 + +\u9664\u6570\u4E0D\u5F97\u4E3A0\u3002`}]},CONCAT:{d:"\u8FD4\u56DE\u4E24\u4E2A\u503C\u7684\u4E32\u8054\u3002\u76F8\u5F53\u4E8E `&` \u8FD0\u7B97\u7B26\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u503C\u7684\u4E32\u8054\u3002\u76F8\u5F53\u4E8E `&` \u8FD0\u7B97\u7B26\u3002",p:[{name:"value1",detail:"value2 \u5C06\u9644\u4E8E\u5176\u540E\u7684\u503C\u3002"},{name:"value2",detail:"\u8981\u9644\u4E8E value1 \u4E4B\u540E\u7684\u503C\u3002"}]},UNARY_PERCENT:{d:"\u8FD4\u56DE\u6309\u767E\u5206\u6BD4\u89E3\u91CA\u7684\u6570\u503C\u3002\u4F8B\u5982\uFF0C\u201CUNARY_PERCENT(100)\u201D\u7B49\u4E8E1\u3002",a:"\u8FD4\u56DE\u6309\u767E\u5206\u6BD4\u89E3\u91CA\u7684\u6570\u503C\u3002\u4F8B\u5982\uFF0C\u201CUNARY_PERCENT(100)\u201D\u7B49\u4E8E1\u3002",p:[{name:"number",detail:"\u8981\u4F5C\u4E3A\u767E\u5206\u6BD4\u89E3\u91CA\u7684\u6570\u503C\u3002"}]},CONCATENATE:{d:"\u5C06\u4E24\u4E2A\u6216\u591A\u4E2A\u6587\u672C\u5B57\u7B26\u4E32\u8054\u63A5\u4E3A\u4E00\u4E2A\u5B57\u7B26\u4E32\u3002",a:"\u5C06\u4E24\u4E2A\u6216\u591A\u4E2A\u6587\u672C\u5B57\u7B26\u4E32\u8054\u63A5\u4E3A\u4E00\u4E2A\u5B57\u7B26\u4E32\u3002",p:[{name:"text1",detail:"\u521D\u59CB\u5B57\u7B26\u4E32\u3002"},{name:"text2 ...",detail:"[\u53EF\u9009] - \u8981\u6309\u987A\u5E8F\u8FDE\u63A5\u5728\u4E00\u8D77\u7684\u5176\u4ED6\u5B57\u7B26\u4E32\u3002"}]},CODE:{d:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u5B57\u7B26\u4E32\u4E2D\u9996\u5B57\u7B26\u7684 Unicode \u6620\u5C04\u503C\u3002",a:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u5B57\u7B26\u4E32\u4E2D\u9996\u5B57\u7B26\u7684 Unicode \u6620\u5C04\u503C\u3002",p:[{name:"text",detail:"\u8981\u8FD4\u56DE\u5176\u9996\u5B57\u7B26\u7684Unicode\u6620\u5C04\u503C\u7684\u5B57\u7B26\u4E32\u3002"}]},CHAR:{d:"\u6309\u7167\u5F53\u524D Unicode \u7F16\u7801\u8868\uFF0C\u5C06\u6570\u5B57\u8F6C\u6362\u4E3A\u5BF9\u5E94\u7684\u5B57\u7B26\u3002",a:"\u6309\u7167\u5F53\u524D Unicode \u7F16\u7801\u8868\uFF0C\u5C06\u6570\u5B57\u8F6C\u6362\u4E3A\u5BF9\u5E94\u7684\u5B57\u7B26\u3002",p:[{name:"number",detail:"\u4ECB\u4E8E 1 \u5230 255 \u4E4B\u95F4\u7684\u6570\u5B57\u3002"}]},ARABIC:{d:"\u5C06\u7F57\u9A6C\u6570\u5B57\u8F6C\u6362\u4E3A\u963F\u62C9\u4F2F\u6570\u5B57\u3002",a:"\u5C06\u7F57\u9A6C\u6570\u5B57\u8F6C\u6362\u4E3A\u963F\u62C9\u4F2F\u6570\u5B57\u3002",p:[{name:"text",detail:"\u8981\u8F6C\u6362\u683C\u5F0F\u7684\u7F57\u9A6C\u6570\u5B57"}]},ROMAN:{d:"\u5C06\u6570\u5B57\u683C\u5F0F\u8BBE\u7F6E\u4E3A\u7F57\u9A6C\u6570\u5B57\u5F62\u5F0F\u3002",a:"\u5C06\u6570\u5B57\u683C\u5F0F\u8BBE\u7F6E\u4E3A\u7F57\u9A6C\u6570\u5B57\u5F62\u5F0F\u3002",p:[{name:"number",detail:"\u8981\u8BBE\u7F6E\u683C\u5F0F\u7684\u6570\u5B57\uFF0C\u4ECB\u4E8E1\u52303999\u4E4B\u95F4\uFF08\u5305\u62EC\u8FD9\u4E24\u4E2A\u6570\u5B57\uFF09\u3002"}]},REGEXEXTRACT:{d:"\u6309\u7167\u6B63\u5219\u8868\u8FBE\u5F0F\u63D0\u53D6\u5339\u914D\u7684\u5B50\u4E32\u3002",a:"\u6309\u7167\u6B63\u5219\u8868\u8FBE\u5F0F\u63D0\u53D6\u5339\u914D\u7684\u5B50\u4E32\u3002",p:[{name:"text",detail:"\u8F93\u5165\u6587\u672C\u3002"},{name:"regular_expression",detail:"\u6B64\u51FD\u6570\u5C06\u8FD4\u56DE\u6587\u672C\u4E2D\u7B26\u5408\u6B64\u8868\u8FBE\u5F0F\u7684\u7B2C\u4E00\u4E2A\u5B50\u4E32\u3002"}]},REGEXMATCH:{d:"\u5224\u65AD\u4E00\u6BB5\u6587\u672C\u662F\u5426\u4E0E\u6B63\u5219\u8868\u8FBE\u5F0F\u76F8\u5339\u914D\u3002",a:"\u5224\u65AD\u4E00\u6BB5\u6587\u672C\u662F\u5426\u4E0E\u6B63\u5219\u8868\u8FBE\u5F0F\u76F8\u5339\u914D\u3002",p:[{name:"text",detail:"\u8981\u7528\u6B63\u5219\u8868\u8FBE\u5F0F\u6D4B\u8BD5\u7684\u6587\u672C\u3002"},{name:"regular_expression",detail:"\u7528\u6765\u6D4B\u8BD5\u6587\u672C\u7684\u6B63\u5219\u8868\u8FBE\u5F0F\u3002"}]},REGEXREPLACE:{d:"\u4F7F\u7528\u6B63\u5219\u8868\u8FBE\u5F0F\u5C06\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u7684\u4E00\u90E8\u5206\u66FF\u6362\u4E3A\u5176\u4ED6\u6587\u672C\u5B57\u7B26\u4E32\u3002",a:"\u4F7F\u7528\u6B63\u5219\u8868\u8FBE\u5F0F\u5C06\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u7684\u4E00\u90E8\u5206\u66FF\u6362\u4E3A\u5176\u4ED6\u6587\u672C\u5B57\u7B26\u4E32\u3002",p:[{name:"text",detail:"\u8981\u5BF9\u5176\u5C40\u90E8\u8FDB\u884C\u66FF\u6362\u64CD\u4F5C\u7684\u6587\u672C\u3002"},{name:"regular_expression",detail:"\u6B63\u5219\u8868\u8FBE\u5F0F\u3002 text \u4E2D\u6240\u6709\u5339\u914D\u7684\u5B9E\u4F8B\u90FD\u5C06\u88AB\u66FF\u6362\u3002"},{name:"replacement",detail:"\u8981\u63D2\u5165\u5230\u539F\u6709\u6587\u672C\u4E2D\u7684\u6587\u672C\u3002"}]},T:{d:"\u8FD4\u56DE\u6587\u672C\u683C\u5F0F\u7684\u5B57\u7B26\u4E32\u53C2\u6570\u3002",a:"\u8FD4\u56DE\u6587\u672C\u683C\u5F0F\u7684\u5B57\u7B26\u4E32\u53C2\u6570\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u6587\u672C\u7684\u53C2\u6570\u3002 + +\u5982\u679C\u503C\u4E3A\u6587\u672C\uFF0CT\u5C06\u8FD4\u56DE\u503C\u672C\u8EAB\u3002 + +\u5982\u679C\u503C\u4E3A\u6307\u5411\u5305\u542B\u6587\u672C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CT\u5C06\u8FD4\u56DE\u503C\u4E2D\u7684\u5185\u5BB9\u3002 + +\u5982\u679C\u503C\u4E3A\u9519\u8BEF\u503C\u6216\u5305\u542B\u9519\u8BEF\u503C\u7684\u5355\u5143\u683C\uFF0CT\u5C06\u8FD4\u56DE\u8BE5\u9519\u8BEF\u503C\u3002 + +\u5BF9\u4E8E\u6240\u6709\u5176\u4ED6\u60C5\u51B5\uFF0CT\u5C06\u8FD4\u56DE\u7A7A\u4E32\u3002`}]},FIXED:{d:"\u4EE5\u56FA\u5B9A\u7684\u5C0F\u6570\u4F4D\u6570\u8BBE\u7F6E\u6570\u5B57\u7684\u683C\u5F0F\u3002",a:"\u4EE5\u56FA\u5B9A\u7684\u5C0F\u6570\u4F4D\u6570\u8BBE\u7F6E\u6570\u5B57\u7684\u683C\u5F0F\u3002",p:[{name:"number",detail:"\u8981\u8FDB\u884C\u820D\u5165\u5E76\u8F6C\u6362\u4E3A\u6587\u672C\u7684\u6570\u5B57\u3002"},{name:"decimals",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A2] - \u7ED3\u679C\u4E2D\u8981\u663E\u793A\u7684\u5C0F\u6570\u4F4D\u6570\u3002 + +\u5982\u679C\u6570\u503C\u7684\u6709\u6548\u4F4D\u6570\u5C0F\u4E8E\u5C0F\u6570\u4F4D\u6570\uFF0C\u5C06\u4EE5\u96F6\u586B\u5145\u3002\u5982\u679C\u6570\u503C\u7684\u6709\u6548\u4F4D\u6570\u5927\u4E8E\u5C0F\u6570\u4F4D\u6570\uFF0C\u5219\u5C06\u5176\u820D\u5165\u5230\u6240\u9700\u7684\u5C0F\u6570\u4F4D\u6570\u800C\u4E0D\u662F\u5C06\u5176\u622A\u65AD\u3002`},{name:"no_commas",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3AFALSE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u5982\u679C\u4E3A TRUE()\uFF0C\u5219\u4F1A\u7981\u6B62 FIXED \u5728\u8FD4\u56DE\u7684\u6587\u672C\u4E2D\u5305\u542B\u9017\u53F7\u3002"}]},FIND:{d:"\u8FD4\u56DE\u5B57\u7B26\u4E32\u5728\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u4F4D\u7F6E\uFF08\u533A\u5206\u5927\u5C0F\u5199\uFF09\u3002",a:"\u8FD4\u56DE\u5B57\u7B26\u4E32\u5728\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u4F4D\u7F6E\uFF08\u533A\u5206\u5927\u5C0F\u5199\uFF09\u3002",p:[{name:"find_text",detail:"\u8981\u5728\u8981\u641C\u7D22\u7684\u6587\u672C\u4E2D\u67E5\u627E\u7684\u5B57\u7B26\u4E32\u3002"},{name:"within_text",detail:"\u8981\u5728\u5176\u4E2D\u641C\u7D22\u641C\u7D22\u5B57\u7B26\u4E32\u7684\u9996\u6B21\u51FA\u73B0\u4F4D\u7F6E\u7684\u6587\u672C\u3002"},{name:"start_num",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u8981\u5728\u8981\u641C\u7D22\u7684\u6587\u672C\u4E2D\u5F00\u59CB\u641C\u7D22\u7684\u5B57\u7B26\u4F4D\u7F6E\u3002"}]},FINDB:{d:"\u8FD4\u56DE\u67D0\u4E2A\u5B57\u7B26\u4E32\u5728\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u4F4D\u7F6E\uFF08\u6BCF\u4E2A\u53CC\u5B57\u8282\u5B57\u7B26\u5360\u4E24\u4E2A\u4F4D\u7F6E\uFF09\u3002",a:"\u8FD4\u56DE\u67D0\u4E2A\u5B57\u7B26\u4E32\u5728\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u4F4D\u7F6E\uFF08\u6BCF\u4E2A\u53CC\u5B57\u8282\u5B57\u7B26\u5360\u4E24\u4E2A\u4F4D\u7F6E\uFF09\u3002",p:[{name:"find_text",detail:"\u8981\u5728\u8981\u641C\u7D22\u7684\u6587\u672C\u4E2D\u67E5\u627E\u7684\u5B57\u7B26\u4E32\u3002"},{name:"within_text",detail:"\u8981\u5728\u5176\u4E2D\u641C\u7D22\u641C\u7D22\u5B57\u7B26\u4E32\u7684\u9996\u6B21\u51FA\u73B0\u4F4D\u7F6E\u7684\u6587\u672C\u3002"},{name:"start_num",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A 1] - \u8981\u5728\u8981\u641C\u7D22\u7684\u6587\u672C\u4E2D\u5F00\u59CB\u641C\u7D22\u7684\u5B57\u7B26\u4F4D\u7F6E\u3002"}]},JOIN:{d:"\u5C06\u4E00\u4E2A\u6216\u591A\u4E2A\u4F7F\u7528\u6307\u5B9A\u5B9A\u754C\u7B26\u7684\u4E00\u7EF4\u6570\u7EC4\u7684\u5143\u7D20\u8FDE\u63A5\u5230\u4E00\u8D77\u3002",a:"\u5C06\u4E00\u4E2A\u6216\u591A\u4E2A\u4F7F\u7528\u6307\u5B9A\u5B9A\u754C\u7B26\u7684\u4E00\u7EF4\u6570\u7EC4\u7684\u5143\u7D20\u8FDE\u63A5\u5230\u4E00\u8D77\u3002",p:[{name:"separator",detail:`\u7F6E\u4E8E\u76F8\u4E92\u8FDE\u63A5\u7684\u503C\u4E4B\u95F4\u7684\u5B57\u7B26\u6216\u5B57\u7B26\u4E32\u3002 + +\u5B9A\u754C\u7B26\u53EF\u4EE5\u4E3A\u7A7A\uFF0C\u4F8B\u5982JOIN(,{1,2,3})\u3002`},{name:"array1",detail:"\u8981\u4F7F\u7528\u5B9A\u754C\u7B26\u8FDE\u63A5\u7684\u4E00\u4E2A\u6216\u591A\u4E2A\u503C\u3002"},{name:"array2, ...",detail:"[\u53EF\u9009] - \u8981\u4F7F\u7528\u5B9A\u754C\u7B26\u8FDE\u63A5\u7684\u5176\u4ED6\u503C\u6216\u6570\u7EC4\u3002"}]},LEFT:{d:"\u4ECE\u6587\u672C\u5B57\u7B26\u4E32\u7684\u7B2C\u4E00\u4E2A\u5B57\u7B26\u5F00\u59CB\u8FD4\u56DE\u6307\u5B9A\u4E2A\u6570\u7684\u5B57\u7B26\u3002",a:"\u4ECE\u6587\u672C\u5B57\u7B26\u4E32\u7684\u7B2C\u4E00\u4E2A\u5B57\u7B26\u5F00\u59CB\u8FD4\u56DE\u6307\u5B9A\u4E2A\u6570\u7684\u5B57\u7B26\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u63D0\u53D6\u7684\u5B57\u7B26\u7684\u6587\u672C\u5B57\u7B26\u4E32\u3002"},{name:"num_chars",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u6307\u5B9A\u8981\u7531 LEFT \u63D0\u53D6\u7684\u5B57\u7B26\u7684\u6570\u91CF\u3002"}]},RIGHT:{d:"\u6839\u636E\u6240\u6307\u5B9A\u7684\u5B57\u7B26\u6570\u8FD4\u56DE\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u6700\u540E\u4E00\u4E2A\u6216\u591A\u4E2A\u5B57\u7B26\u3002",a:"\u6839\u636E\u6240\u6307\u5B9A\u7684\u5B57\u7B26\u6570\u8FD4\u56DE\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u6700\u540E\u4E00\u4E2A\u6216\u591A\u4E2A\u5B57\u7B26\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u63D0\u53D6\u7684\u5B57\u7B26\u7684\u6587\u672C\u5B57\u7B26\u4E32\u3002"},{name:"num_chars",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1] - \u6307\u5B9A\u8981\u7531 RIGHT \u63D0\u53D6\u7684\u5B57\u7B26\u7684\u6570\u91CF\u3002"}]},MID:{d:"\u8FD4\u56DE\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u4ECE\u6307\u5B9A\u4F4D\u7F6E\u5F00\u59CB\u7684\u7279\u5B9A\u6570\u76EE\u7684\u5B57\u7B26\u3002",a:"\u8FD4\u56DE\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u4ECE\u6307\u5B9A\u4F4D\u7F6E\u5F00\u59CB\u7684\u7279\u5B9A\u6570\u76EE\u7684\u5B57\u7B26\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u63D0\u53D6\u7684\u5B57\u7B26\u7684\u6587\u672C\u5B57\u7B26\u4E32\u3002"},{name:"start_num",detail:"\u8981\u4ECE\u5B57\u7B26\u4E32\u4E2D\u5F00\u59CB\u63D0\u53D6\u7684\u4F4D\u7F6E\u3002\u5B57\u7B26\u4E32\u4E2D\u7B2C\u4E00\u4E2A\u5B57\u7B26\u7684\u7D22\u5F15\u4E3A1\u3002"},{name:"num_chars",detail:`\u6307\u5B9A\u8981\u7531 MID \u63D0\u53D6\u7684\u5B57\u7B26\u7684\u6570\u91CF\u3002 + +\u5982\u679C\u63D0\u53D6\u7684\u5B57\u7B26\u6570\u5C1A\u4E0D\u8DB3\u63D0\u53D6\u957F\u5EA6\u4E2A\u5B57\u7B26\u65F6\u5C31\u5230\u8FBE\u4E86\u5B57\u7B26\u4E32\u5C3E\u90E8\uFF0C\u5219MID\u8FD4\u56DE\u4ECE\u5F00\u59CB\u4F4D\u7F6E\u5230\u5B57\u7B26\u4E32\u5C3E\u90E8\u7684\u5B57\u7B26\u3002`}]},LEN:{d:"\u8FD4\u56DE\u7ED9\u5B9A\u5B57\u7B26\u4E32\u7684\u957F\u5EA6\u3002",a:"\u8FD4\u56DE\u7ED9\u5B9A\u5B57\u7B26\u4E32\u7684\u957F\u5EA6\u3002",p:[{name:"text",detail:"\u8981\u8FD4\u56DE\u5176\u957F\u5EA6\u7684\u5B57\u7B26\u4E32\u3002"}]},LENB:{d:"\u8FD4\u56DE\u6587\u672C\u4E2D\u6240\u5305\u542B\u7684\u5B57\u7B26\u6570\u3002\u4E0E\u53CC\u5B57\u8282\u5B57\u7B26\u96C6(DBCS)\u4E00\u8D77\u4F7F\u7528\u3002",a:"\u8FD4\u56DE\u6587\u672C\u4E2D\u6240\u5305\u542B\u7684\u5B57\u7B26\u6570\u3002\u4E0E\u53CC\u5B57\u8282\u5B57\u7B26\u96C6(DBCS)\u4E00\u8D77\u4F7F\u7528\u3002",p:[{name:"text",detail:"\u8981\u8FD4\u56DE\u5176\u5B57\u8282\u6570\u7684\u5B57\u7B26\u4E32\u3002\uFF08\u4E00\u4E2A\u6C49\u5B57\u4E3A\u4E24\u4E2A\u5B57\u8282\u6570\uFF09"}]},LOWER:{d:"\u5C06\u6307\u5B9A\u5B57\u7B26\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F6C\u6362\u4E3A\u5C0F\u5199\u3002",a:"\u5C06\u6307\u5B9A\u5B57\u7B26\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F6C\u6362\u4E3A\u5C0F\u5199\u3002",p:[{name:"text",detail:"\u8981\u8F6C\u6362\u4E3A\u5C0F\u5199\u7684\u5B57\u7B26\u4E32\u3002"}]},UPPER:{d:"\u5C06\u6307\u5B9A\u5B57\u7B26\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F6C\u6362\u4E3A\u5927\u5199\u3002",a:"\u5C06\u6307\u5B9A\u5B57\u7B26\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F6C\u6362\u4E3A\u5927\u5199\u3002",p:[{name:"text",detail:"\u8981\u8F6C\u6362\u4E3A\u5927\u5199\u7684\u5B57\u7B26\u4E32\u3002"}]},EXACT:{d:"\u6BD4\u8F83\u4E24\u4E2A\u5B57\u7B26\u4E32\u662F\u5426\u76F8\u540C\u3002",a:"\u6BD4\u8F83\u4E24\u4E2A\u5B57\u7B26\u4E32\u662F\u5426\u76F8\u540C\u3002",p:[{name:"text1",detail:"\u8981\u6BD4\u8F83\u7684\u7B2C\u4E00\u4E2A\u5B57\u7B26\u4E32\u3002"},{name:"text2",detail:"\u8981\u6BD4\u8F83\u7684\u7B2C\u4E8C\u4E2A\u5B57\u7B26\u4E32\u3002"}]},REPLACE:{d:"\u5C06\u6587\u672C\u5B57\u7B26\u4E32\u7684\u4E00\u90E8\u5206\u66FF\u6362\u4E3A\u5176\u4ED6\u6587\u672C\u5B57\u7B26\u4E32\u3002",a:"\u5C06\u6587\u672C\u5B57\u7B26\u4E32\u7684\u4E00\u90E8\u5206\u66FF\u6362\u4E3A\u5176\u4ED6\u6587\u672C\u5B57\u7B26\u4E32\u3002",p:[{name:"old_text",detail:"\u8981\u5BF9\u5176\u5C40\u90E8\u8FDB\u884C\u66FF\u6362\u64CD\u4F5C\u7684\u6587\u672C\u3002"},{name:"start_num",detail:"\u5F00\u59CB\u8FDB\u884C\u66FF\u6362\u64CD\u4F5C\u7684\u4F4D\u7F6E\uFF08\u6587\u672C\u5F00\u5934\u4F4D\u7F6E\u4E3A 1\uFF09\u3002"},{name:"num_chars",detail:"\u8981\u5728\u6587\u672C\u4E2D\u66FF\u6362\u7684\u5B57\u7B26\u4E2A\u6570\u3002"},{name:"new_text",detail:"\u8981\u63D2\u5165\u5230\u539F\u6709\u6587\u672C\u4E2D\u7684\u6587\u672C\u3002"}]},REPT:{d:"\u8FD4\u56DE\u6307\u5B9A\u6587\u672C\u7684\u591A\u6B21\u91CD\u590D\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6587\u672C\u7684\u591A\u6B21\u91CD\u590D\u3002",p:[{name:"text",detail:"\u8981\u91CD\u590D\u7684\u5B57\u7B26\u6216\u5B57\u7B26\u4E32\u3002"},{name:"number_times",detail:`\u8981\u91CD\u590D\u7684\u6587\u672C\u8981\u5728\u8FD4\u56DE\u503C\u4E2D\u51FA\u73B0\u7684\u6B21\u6570\u3002 + +\u6700\u5927\u91CD\u590D\u6B21\u6570\u4E3A100\u3002\u5373\u4F7F\u91CD\u590D\u6B21\u6570\u5927\u4E8E100\uFF0CREPT\u4E5F\u4EC5\u5C06\u76F8\u5E94\u6587\u672C\u91CD\u590D100\u6B21\u3002`}]},SEARCH:{d:"\u8FD4\u56DE\u5B57\u7B26\u4E32\u5728\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u4F4D\u7F6E\uFF08\u4E0D\u533A\u5206\u5927\u5C0F\u5199\uFF09\u3002",a:"\u8FD4\u56DE\u5B57\u7B26\u4E32\u5728\u6587\u672C\u4E2D\u9996\u6B21\u51FA\u73B0\u7684\u4F4D\u7F6E\uFF08\u4E0D\u533A\u5206\u5927\u5C0F\u5199\uFF09\u3002",p:[{name:"find_text",detail:"\u8981\u5728\u8981\u641C\u7D22\u7684\u6587\u672C\u4E2D\u67E5\u627E\u7684\u5B57\u7B26\u4E32\u3002"},{name:"within_text",detail:"\u8981\u5728\u5176\u4E2D\u641C\u7D22\u641C\u7D22\u5B57\u7B26\u4E32\u7684\u9996\u6B21\u51FA\u73B0\u4F4D\u7F6E\u7684\u6587\u672C\u3002"},{name:"start_num",detail:"[ \u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3A1 ] - \u8981\u5728\u8981\u641C\u7D22\u7684\u6587\u672C\u4E2D\u5F00\u59CB\u641C\u7D22\u7684\u5B57\u7B26\u4F4D\u7F6E\u3002"}]},SUBSTITUTE:{d:"\u5728\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u7528 new_text \u66FF\u6362 old_text\u3002",a:"\u5728\u6587\u672C\u5B57\u7B26\u4E32\u4E2D\u7528 new_text \u66FF\u6362 old_text\u3002",p:[{name:"text",detail:"\u9700\u8981\u66FF\u6362\u5176\u4E2D\u5B57\u7B26\u7684\u6587\u672C\uFF0C\u6216\u5BF9\u542B\u6709\u6587\u672C\uFF08\u9700\u8981\u66FF\u6362\u5176\u4E2D\u5B57\u7B26\uFF09\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3002"},{name:"old_text",detail:"\u9700\u8981\u66FF\u6362\u7684\u6587\u672C\u3002"},{name:"new_text",detail:"\u7528\u4E8E\u66FF\u6362 old_text \u7684\u6587\u672C\u3002"},{name:"instance_num",detail:"[ \u53EF\u9009 ] - \u6307\u5B9A\u8981\u7528 new_text \u66FF\u6362 old_text \u7684\u4E8B\u4EF6\u3002 \u5982\u679C\u6307\u5B9A\u4E86 instance_num\uFF0C\u5219\u53EA\u6709\u6EE1\u8DB3\u8981\u6C42\u7684 old_text \u88AB\u66FF\u6362\u3002 \u5426\u5219\uFF0C\u6587\u672C\u4E2D\u51FA\u73B0\u7684\u6240\u6709 old_text \u90FD\u4F1A\u66F4\u6539\u4E3A new_text\u3002"}]},CLEAN:{d:"\u79FB\u9664\u6587\u672C\u4E2D\u7684\u4E0D\u53EF\u6253\u5370 ASCII \u5B57\u7B26\u540E\u5C06\u5176\u8FD4\u56DE\u3002",a:"\u79FB\u9664\u6587\u672C\u4E2D\u7684\u4E0D\u53EF\u6253\u5370 ASCII \u5B57\u7B26\u540E\u5C06\u5176\u8FD4\u56DE\u3002",p:[{name:"text",detail:"\u8981\u79FB\u9664\u5176\u4E2D\u4E0D\u53EF\u6253\u5370\u5B57\u7B26\u7684\u6587\u672C\u3002"}]},TEXT:{d:"\u6309\u7167\u6307\u5B9A\u683C\u5F0F\u5C06\u6570\u5B57\u8F6C\u6362\u4E3A\u6587\u672C\u3002",a:"\u6309\u7167\u6307\u5B9A\u683C\u5F0F\u5C06\u6570\u5B57\u8F6C\u6362\u4E3A\u6587\u672C\u3002",p:[{name:"value",detail:"\u8981\u8BBE\u7F6E\u683C\u5F0F\u7684\u6570\u5B57\u3001\u65E5\u671F\u6216\u65F6\u95F4\u3002"},{name:"format_text",detail:`\u4EE5\u62EC\u53F7\u62EC\u8D77\u6765\u7684\u6A21\u5F0F\u4E32\uFF0C\u5C06\u6309\u8BE5\u6A21\u5F0F\u8BBE\u7F6E\u6570\u5B57\u7684\u683C\u5F0F\u3002 + +0\u8868\u793A\u5728\u6570\u503C\u4F4D\u6570\u5C11\u4E8E\u683C\u5F0F\u6307\u5B9A\u7684\u4F4D\u6570\u65F6\u5FC5\u5B9A\u4EE5\u96F6\u586B\u5145\u3002\u4F8B\u5982\uFF0CTEXT(12.3,"000.00")\u5C06\u8FD4\u56DE012.30\u3002\u5F53\u6570\u503C\u7684\u5C0F\u6570\u4F4D\u6570\u8D85\u8FC7\u6A21\u5F0F\u6307\u5B9A\u7684\u5C0F\u6570\u4F4D\u6570\u65F6\uFF0C\u56DB\u820D\u4E94\u5165\u4E3A\u6307\u5B9A\u7684\u5C0F\u6570\u4F4D\u6570\u3002\u4F8B\u5982\uFF0CTEXT(12.305,"00.00")\u5C06\u8FD4\u56DE12.31\u3002 + +#\u7C7B\u4F3C\u4E8E0\uFF0C\u4F46\u5E76\u4E0D\u662F\u5728\u5C0F\u6570\u70B9\u7684\u4E24\u4FA7\u90FD\u4EE5\u96F6\u586B\u5145\u3002\u4F8B\u5982\uFF0CTEXT(12.3,"###.##")\u5C06\u8FD4\u56DE12.3\u3002`}]},TRIM:{d:"\u5220\u9664\u6307\u5B9A\u5B57\u7B26\u4E32\u524D\u540E\u7684\u7A7A\u683C\u3002",a:"\u5220\u9664\u6307\u5B9A\u5B57\u7B26\u4E32\u524D\u540E\u7684\u7A7A\u683C\u3002",p:[{name:"text",detail:"\u8981\u4FEE\u526A\u7684\u5B57\u7B26\u4E32\u6216\u6307\u5411\u5305\u542B\u8BE5\u5B57\u7B26\u4E32\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3002"}]},VALUE:{d:"\u5C06\u53EF\u8BC6\u522B\u7684\u4EFB\u4F55\u65E5\u671F\u3001\u65F6\u95F4\u6216\u6570\u5B57\u683C\u5F0F\u7684\u5B57\u7B26\u4E32\u8F6C\u6362\u4E3A\u6570\u5B57\u3002",a:"\u5C06\u53EF\u8BC6\u522B\u7684\u4EFB\u4F55\u65E5\u671F\u3001\u65F6\u95F4\u6216\u6570\u5B57\u683C\u5F0F\u7684\u5B57\u7B26\u4E32\u8F6C\u6362\u4E3A\u6570\u5B57\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u8F6C\u6362\u7684\u503C\u7684\u5B57\u7B26\u4E32\u3002"}]},PROPER:{d:"\u5C06\u6307\u5B9A\u5B57\u7B26\u4E32\u4E2D\u6BCF\u4E2A\u5355\u8BCD\u7684\u9996\u5B57\u6BCD\u8F6C\u4E3A\u5927\u5199\u3002",a:"\u5C06\u6307\u5B9A\u5B57\u7B26\u4E32\u4E2D\u6BCF\u4E2A\u5355\u8BCD\u7684\u9996\u5B57\u6BCD\u8F6C\u4E3A\u5927\u5199\u3002",p:[{name:"text",detail:"\u8981\u8F6C\u6362\u7684\u6587\u672C\uFF0C\u5176\u4E2D\u6BCF\u4E2A\u5355\u8BCD\u7684\u9996\u5B57\u6BCD\u90FD\u5C06\u8F6C\u4E3A\u5927\u5199\uFF0C\u6240\u6709\u5176\u4ED6\u5B57\u6BCD\u5219\u8F6C\u4E3A\u5C0F\u5199\u3002"}]},CONVERT:{d:"\u5C06\u6570\u5B57\u4ECE\u4E00\u79CD\u5EA6\u91CF\u7CFB\u7EDF\u8F6C\u6362\u4E3A\u53E6\u4E00\u79CD\u5EA6\u91CF\u7CFB\u7EDF\u3002",a:"\u5C06\u6570\u5B57\u4ECE\u4E00\u79CD\u5EA6\u91CF\u7CFB\u7EDF\u8F6C\u6362\u4E3A\u53E6\u4E00\u79CD\u5EA6\u91CF\u7CFB\u7EDF\u3002",p:[{name:"number",detail:"\u662F\u4EE5 from_unit \u4E3A\u5355\u4F4D\u7684\u9700\u8981\u8FDB\u884C\u8F6C\u6362\u7684\u6570\u503C\u3002"},{name:"from_unit",detail:"\u662F\u6570\u503C\u7684\u5355\u4F4D\u3002"},{name:"to_unit",detail:"\u662F\u7ED3\u679C\u7684\u5355\u4F4D\u3002"}]},SUMX2MY2:{d:"\u8FD4\u56DE\u4E24\u6570\u7EC4\u4E2D\u5BF9\u5E94\u6570\u503C\u7684\u5E73\u65B9\u5DEE\u4E4B\u548C\u3002",a:"\u8FD4\u56DE\u4E24\u6570\u7EC4\u4E2D\u5BF9\u5E94\u6570\u503C\u7684\u5E73\u65B9\u5DEE\u4E4B\u548C\u3002",p:[{name:"array_x",detail:"\u7B2C\u4E00\u4E2A\u6570\u7EC4\u6216\u6570\u503C\u533A\u57DF\u3002"},{name:"array_y",detail:"\u7B2C\u4E8C\u4E2A\u6570\u7EC4\u6216\u6570\u503C\u533A\u57DF\u3002"}]},SUMX2PY2:{d:"\u8FD4\u56DE\u4E24\u6570\u7EC4\u4E2D\u5BF9\u5E94\u6570\u503C\u7684\u5E73\u65B9\u548C\u4E4B\u548C\u3002",a:"\u8FD4\u56DE\u4E24\u6570\u7EC4\u4E2D\u5BF9\u5E94\u6570\u503C\u7684\u5E73\u65B9\u548C\u4E4B\u548C\u3002",p:[{name:"array_x",detail:"\u7B2C\u4E00\u4E2A\u6570\u7EC4\u6216\u6570\u503C\u533A\u57DF\u3002"},{name:"array_y",detail:"\u7B2C\u4E8C\u4E2A\u6570\u7EC4\u6216\u6570\u503C\u533A\u57DF\u3002"}]},SUMXMY2:{d:"\u8FD4\u56DE\u4E24\u6570\u7EC4\u4E2D\u5BF9\u5E94\u6570\u503C\u4E4B\u5DEE\u7684\u5E73\u65B9\u548C\u3002",a:"\u8FD4\u56DE\u4E24\u6570\u7EC4\u4E2D\u5BF9\u5E94\u6570\u503C\u4E4B\u5DEE\u7684\u5E73\u65B9\u548C\u3002",p:[{name:"array_x",detail:"\u7B2C\u4E00\u4E2A\u6570\u7EC4\u6216\u6570\u503C\u533A\u57DF\u3002"},{name:"array_y",detail:"\u7B2C\u4E8C\u4E2A\u6570\u7EC4\u6216\u6570\u503C\u533A\u57DF\u3002"}]},TRANSPOSE:{d:"\u5C06\u6570\u7EC4\u6216\u5355\u5143\u683C\u8303\u56F4\u7684\u884C\u5217\u8F6C\u7F6E\u3002",a:"\u5C06\u6570\u7EC4\u6216\u5355\u5143\u683C\u8303\u56F4\u7684\u884C\u5217\u8F6C\u7F6E\u3002",p:[{name:"array",detail:"\u8981\u5C06\u5176\u884C\u5217\u4E92\u6362\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"}]},TREND:{d:"\u8FD4\u56DE\u7EBF\u6027\u8D8B\u52BF\u503C\u3002",a:"\u8FD4\u56DE\u7EBF\u6027\u8D8B\u52BF\u503C\u3002",p:[{name:"known_y",detail:`\u5173\u7CFB\u8868\u8FBE\u5F0F y = mx + b \u4E2D\u5DF2\u77E5\u7684 y \u503C\u96C6\u5408\u3002 + +\u5982\u679C known_y \u4E3A\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0C\u5219 known_x \u7684\u7EF4\u6570\u5FC5\u987B\u4E0E\u4E4B\u76F8\u540C\uFF0C\u6216\u8005\u7701\u7565\u6B64\u53C2\u6570\u3002 + +\u5982\u679C known_y \u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0Cknown_x \u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C known_y \u4E3A\u5355\u884C\uFF0C\u5219\u5C06 known_x \u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E known_y \u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u8BE5\u6570\u7EC4\u4E3A{1,2,3,...},\u5176\u5927\u5C0F\u4E0E known_y \u76F8\u540C] - \u5173\u7CFB\u8868\u8FBE\u5F0F y = mx + b \u4E2D\u5DF2\u77E5\u7684\u53EF\u9009 x \u503C\u96C6\u5408\u3002 + +\u5982\u679C known_y \u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0Cknown_x \u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C known_y \u4E3A\u5355\u884C\uFF0C\u5219\u5C06 known_x \u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E known_y \u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"new_x",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E0E known_x \u76F8\u540C] - \u9700\u8981\u51FD\u6570 TREND \u8FD4\u56DE\u5BF9\u5E94 y \u503C\u7684\u65B0 x \u503C\u3002"},{name:"const",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u7528\u4E8E\u6307\u5B9A\u662F\u5426\u5C06\u5E38\u91CF b \u5F3A\u5236\u8BBE\u4E3A 0\u3002 + +TRUE() \u8868\u793A b \u5C06\u6309\u6B63\u5E38\u8BA1\u7B97\uFF1B + +FALSE() \u8868\u793A b \u5C06\u88AB\u8BBE\u4E3A 0\uFF08\u96F6\uFF09\uFF0Cm \u5C06\u88AB\u8C03\u6574\u4EE5\u4F7F y = mx\u3002`}]},FREQUENCY:{d:"\u8BA1\u7B97\u6570\u503C\u5728\u67D0\u4E2A\u533A\u57DF\u5185\u7684\u51FA\u73B0\u9891\u7387\uFF0C\u7136\u540E\u8FD4\u56DE\u4E00\u4E2A\u5782\u76F4\u6570\u7EC4\u3002",a:"\u8BA1\u7B97\u6570\u503C\u5728\u67D0\u4E2A\u533A\u57DF\u5185\u7684\u51FA\u73B0\u9891\u7387\uFF0C\u7136\u540E\u8FD4\u56DE\u4E00\u4E2A\u5782\u76F4\u6570\u7EC4\u3002",p:[{name:"data_array",detail:"\u8981\u5BF9\u5176\u9891\u7387\u8FDB\u884C\u8BA1\u6570\u7684\u4E00\u7EC4\u6570\u503C\u6216\u5BF9\u8FD9\u7EC4\u6570\u503C\u7684\u5F15\u7528\u3002"},{name:"bins_array",detail:`\u8981\u5C06 data_array \u4E2D\u7684\u503C\u63D2\u5165\u5230\u7684\u95F4\u9694\u6570\u7EC4\u6216\u5BF9\u95F4\u9694\u7684\u5F15\u7528\u3002 + +\u4E3A\u6E05\u6670\u8D77\u89C1\uFF0C\u5E94\u5C06\u7C7B\u522B\u6392\u5E8F\uFF0C\u4F46\u5982\u679C\u672A\u6392\u5E8F\uFF0CFREQUENCY\u4F1A\u5728\u5185\u90E8\u5BF9\u8FD9\u4E9B\u6307\u5B9A\u7684\u503C\u8FDB\u884C\u6392\u5E8F\u5E76\u8FD4\u56DE\u6B63\u786E\u7ED3\u679C\u3002`}]},GROWTH:{d:"\u4F7F\u7528\u73B0\u6709\u6570\u636E\u8BA1\u7B97\u9884\u6D4B\u7684\u6307\u6570\u7B49\u6BD4\u3002",a:"\u4F7F\u7528\u73B0\u6709\u6570\u636E\u8BA1\u7B97\u9884\u6D4B\u7684\u6307\u6570\u7B49\u6BD4\u3002",p:[{name:"known_y",detail:`\u5173\u7CFB\u8868\u8FBE\u5F0F y = b*m^x \u4E2D\u5DF2\u77E5\u7684 y \u503C\u96C6\u5408\u3002 + +\u5982\u679C\u5DF2\u77E5\u6570\u636E_y\u4E3A\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0C\u5219\u5DF2\u77E5\u6570\u636E_x\u7684\u7EF4\u6570\u5FC5\u987B\u4E0E\u4E4B\u76F8\u540C\uFF0C\u6216\u8005\u7701\u7565\u6B64\u53C2\u6570\u3002 + +\u5982\u679C\u5DF2\u77E5\u6570\u636E_y\u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0C\u5DF2\u77E5\u6570\u636E_x\u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C\u5DF2\u77E5\u6570\u636E_y\u4E3A\u5355\u884C\uFF0C\u5219\u5C06\u5DF2\u77E5\u6570\u636E_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E\u5DF2\u77E5\u6570\u636E_y\u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u8BE5\u6570\u7EC4\u4E3A{1,2,3,...},\u5176\u5927\u5C0F\u4E0E known_y \u76F8\u540C] - \u5173\u7CFB\u8868\u8FBE\u5F0F y = b*m^x \u4E2D\u5DF2\u77E5\u7684\u53EF\u9009 x \u503C\u96C6\u5408\u3002 + +\u5982\u679C\u5DF2\u77E5\u6570\u636E_y\u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0C\u5DF2\u77E5\u6570\u636E_x\u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C\u5DF2\u77E5\u6570\u636E_y\u4E3A\u5355\u884C\uFF0C\u5219\u5C06\u5DF2\u77E5\u6570\u636E_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E\u5DF2\u77E5\u6570\u636E_y\u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"new_x",detail:"[\u53EF\u9009 - \u9ED8\u8BA4\u4E0E known_x \u76F8\u540C] - \u9700\u8981\u51FD\u6570 GROWTH \u8FD4\u56DE\u5BF9\u5E94 y \u503C\u7684\u65B0 x \u503C\u3002"},{name:"const",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] -\u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u7528\u4E8E\u6307\u5B9A\u662F\u5426\u5C06\u5E38\u91CF b \u5F3A\u5236\u8BBE\u4E3A 1\u3002 + +TRUE() \u8868\u793A b \u5C06\u6309\u6B63\u5E38\u8BA1\u7B97\uFF1B + +FALSE() \u8868\u793A b \u5C06\u88AB\u8BBE\u4E3A 1\uFF0Cm \u5C06\u88AB\u8C03\u6574\u4EE5\u4F7F y = m^x\u3002`}]},LINEST:{d:"\u53EF\u901A\u8FC7\u4F7F\u7528\u6700\u5C0F\u4E8C\u4E58\u6CD5\u8BA1\u7B97\u4E0E\u73B0\u6709\u6570\u636E\u6700\u4F73\u62DF\u5408\u7684\u76F4\u7EBF\uFF0C\u6765\u8BA1\u7B97\u67D0\u76F4\u7EBF\u7684\u7EDF\u8BA1\u503C\uFF0C\u7136\u540E\u8FD4\u56DE\u63CF\u8FF0\u6B64\u76F4\u7EBF\u7684\u6570\u7EC4\u3002",a:"\u53EF\u901A\u8FC7\u4F7F\u7528\u6700\u5C0F\u4E8C\u4E58\u6CD5\u8BA1\u7B97\u4E0E\u73B0\u6709\u6570\u636E\u6700\u4F73\u62DF\u5408\u7684\u76F4\u7EBF\uFF0C\u6765\u8BA1\u7B97\u67D0\u76F4\u7EBF\u7684\u7EDF\u8BA1\u503C\uFF0C\u7136\u540E\u8FD4\u56DE\u63CF\u8FF0\u6B64\u76F4\u7EBF\u7684\u6570\u7EC4\u3002",p:[{name:"known_y",detail:`\u5173\u7CFB\u8868\u8FBE\u5F0F y = mx + b \u4E2D\u5DF2\u77E5\u7684 y \u503C\u96C6\u5408\u3002 + +\u5982\u679C known_y \u4E3A\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0C\u5219 known_x \u7684\u7EF4\u6570\u5FC5\u987B\u4E0E\u4E4B\u76F8\u540C\uFF0C\u6216\u8005\u7701\u7565\u6B64\u53C2\u6570\u3002 + +\u5982\u679C known_y \u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0Cknown_x \u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C known_y \u4E3A\u5355\u884C\uFF0C\u5219\u5C06 known_x \u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E known_y \u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u8BE5\u6570\u7EC4\u4E3A{1,2,3,...},\u5176\u5927\u5C0F\u4E0E known_y \u76F8\u540C] - \u5173\u7CFB\u8868\u8FBE\u5F0F y = mx + b \u4E2D\u5DF2\u77E5\u7684\u53EF\u9009 x \u503C\u96C6\u5408\u3002 + +\u5982\u679C known_y \u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0Cknown_x \u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C known_y \u4E3A\u5355\u884C\uFF0C\u5219\u5C06 known_x \u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E known_y \u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"const",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u7528\u4E8E\u6307\u5B9A\u662F\u5426\u5C06\u5E38\u91CF b \u5F3A\u5236\u8BBE\u4E3A 0\u3002 + +TRUE() \u8868\u793A b \u5C06\u6309\u6B63\u5E38\u8BA1\u7B97\uFF1B + +FALSE() \u8868\u793A b \u5C06\u88AB\u8BBE\u4E3A 0\uFF08\u96F6\uFF09\uFF0Cm \u5C06\u88AB\u8C03\u6574\u4EE5\u4F7F y = mx\u3002`},{name:"stats",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3AFALSE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u7528\u4E8E\u6307\u5B9A\u662F\u5426\u8FD4\u56DE\u9644\u52A0\u56DE\u5F52\u7EDF\u8BA1\u503C\u3002 + +\u5982\u679C\u8BE6\u7EC6\u4E3ATRUE\uFF0C\u9664\u4E86\u5BF9\u5E94\u4E8E\u6BCF\u4E2A\u81EA\u53D8\u91CF\u7684\u4E00\u7EC4\u7EBF\u6027\u7CFB\u6570\u548Cy\u622A\u8DDD\u4E4B\u5916\uFF0CLINEST\u8FD8\u8FD4\u56DE\u4EE5\u4E0B\u4FE1\u606F\uFF1A + +\u6BCF\u9879\u7CFB\u6570\u548C\u622A\u8DDD\u7684\u6807\u51C6\u8BEF\u5DEE\u3001 + +\u9650\u5B9A\u7CFB\u6570\uFF08\u4ECB\u4E8E0\u548C1\u4E4B\u95F4\uFF0C1\u8868\u793A\u5B8C\u5168\u76F8\u5173\uFF09\u3001 + +\u56E0\u53D8\u91CF\u503C\u7684\u6807\u51C6\u8BEF\u5DEE\u3001 + +F\u7EDF\u8BA1\u6216F\u89C2\u6D4B\u503C\uFF0C\u6307\u793A\u6240\u89C2\u6D4B\u5230\u7684\u56E0\u53D8\u91CF\u548C\u81EA\u53D8\u91CF\u53D8\u91CF\u4E4B\u95F4\u7684\u5173\u7CFB\u662F\u968F\u673A\u7684\u8FD8\u662F\u7EBF\u6027\u7684\u3001 + +\u81EA\u7531\u5EA6\uFF0C\u7528\u4E8E\u5728\u53C2\u7167\u8868\u4E2D\u67E5\u627EF\u7EDF\u8BA1\u503C\u4EE5\u4F30\u7B97\u53EF\u4FE1\u5EA6\u3001 + +\u56DE\u5F52\u5E73\u65B9\u548C\uFF0C\u4EE5\u53CA + +\u6B8B\u5DEE\u5E73\u65B9\u548C\u3002`}]},LOGEST:{d:"\u5728\u56DE\u5F52\u5206\u6790\u4E2D\uFF0C\u8BA1\u7B97\u6700\u7B26\u5408\u6570\u636E\u7684\u6307\u6570\u56DE\u5F52\u62DF\u5408\u66F2\u7EBF\uFF0C\u5E76\u8FD4\u56DE\u63CF\u8FF0\u8BE5\u66F2\u7EBF\u7684\u6570\u503C\u6570\u7EC4\u3002",a:"\u5728\u56DE\u5F52\u5206\u6790\u4E2D\uFF0C\u8BA1\u7B97\u6700\u7B26\u5408\u6570\u636E\u7684\u6307\u6570\u56DE\u5F52\u62DF\u5408\u66F2\u7EBF\uFF0C\u5E76\u8FD4\u56DE\u63CF\u8FF0\u8BE5\u66F2\u7EBF\u7684\u6570\u503C\u6570\u7EC4\u3002",p:[{name:"known_y",detail:`\u5173\u7CFB\u8868\u8FBE\u5F0F y = mx + b \u4E2D\u5DF2\u77E5\u7684 y \u503C\u96C6\u5408\u3002 + +\u5982\u679C known_y \u4E3A\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0C\u5219 known_x \u7684\u7EF4\u6570\u5FC5\u987B\u4E0E\u4E4B\u76F8\u540C\uFF0C\u6216\u8005\u7701\u7565\u6B64\u53C2\u6570\u3002 + +\u5982\u679C known_y \u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0Cknown_x \u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C known_y \u4E3A\u5355\u884C\uFF0C\u5219\u5C06 known_x \u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E known_y \u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u8BE5\u6570\u7EC4\u4E3A{1,2,3,...},\u5176\u5927\u5C0F\u4E0E known_y \u76F8\u540C] - \u5173\u7CFB\u8868\u8FBE\u5F0F y = mx + b \u4E2D\u5DF2\u77E5\u7684\u53EF\u9009 x \u503C\u96C6\u5408\u3002 + +\u5982\u679C known_y \u4E3A\u4E00\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\uFF0Cknown_x \u5219\u53EF\u4EE3\u8868\u4E8C\u7EF4\u6570\u7EC4\u6216\u8303\u56F4\u4E2D\u7684\u591A\u4E2A\u81EA\u53D8\u91CF\u3002\u4E5F\u5C31\u662F\u8BF4\uFF0C\u5982\u679C known_y \u4E3A\u5355\u884C\uFF0C\u5219\u5C06 known_x \u4E2D\u7684\u6BCF\u884C\u89E3\u91CA\u4E3A\u5404\u81EA\u72EC\u7ACB\u7684\u503C\uFF0C\u7C7B\u4F3C\u60C5\u51B5\u4E5F\u9002\u7528\u4E8E known_y \u4E3A\u5355\u5217\u7684\u60C5\u51B5\u3002`},{name:"const",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3ATRUE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u7528\u4E8E\u6307\u5B9A\u662F\u5426\u5C06\u5E38\u91CF b \u5F3A\u5236\u8BBE\u4E3A 0\u3002 + +TRUE() \u8868\u793A b \u5C06\u6309\u6B63\u5E38\u8BA1\u7B97\uFF1B + +FALSE() \u8868\u793A b \u5C06\u88AB\u8BBE\u4E3A 0\uFF08\u96F6\uFF09\uFF0Cm \u5C06\u88AB\u8C03\u6574\u4EE5\u4F7F y = mx\u3002`},{name:"stats",detail:`[\u53EF\u9009 - \u9ED8\u8BA4\u503C\u4E3AFALSE()] - \u4E00\u4E2A\u903B\u8F91\u503C\uFF0C\u7528\u4E8E\u6307\u5B9A\u662F\u5426\u8FD4\u56DE\u9644\u52A0\u56DE\u5F52\u7EDF\u8BA1\u503C\u3002 + +\u5982\u679C\u8BE6\u7EC6\u4E3ATRUE\uFF0C\u5219\u9664\u4E86\u4E3A\u6BCF\u4E2A\u81EA\u53D8\u91CF\u548C\u7CFB\u6570 b \u8FD4\u56DE\u4E00\u7EC4\u6307\u6570\u503C\u4E4B\u5916\uFF0CLOGEST \u8FD8\u5C06\u8FD4\u56DE\u4EE5\u4E0B\u6570\u636E\uFF1A + +\u6BCF\u9879\u6307\u6570\u548C\u7CFB\u6570\u7684\u6807\u51C6\u8BEF\u5DEE\u3001 + +\u9650\u5B9A\u7CFB\u6570\uFF08\u4ECB\u4E8E 0 \u548C 1 \u4E4B\u95F4\uFF0C1 \u8868\u793A\u5B8C\u5168\u76F8\u5173\uFF09\u3001 + +\u56E0\u53D8\u91CF\u503C\u7684\u6807\u51C6\u8BEF\u5DEE\u3001 + +F \u7EDF\u8BA1\u6216 F \u89C2\u6D4B\u503C\uFF0C\u6307\u793A\u6240\u89C2\u6D4B\u5230\u7684\u56E0\u53D8\u91CF\u548C\u81EA\u53D8\u91CF\u4E4B\u95F4\u7684\u5173\u7CFB\u662F\u968F\u673A\u7684\u8FD8\u662F\u6307\u6570\u7684\u3001 + +\u81EA\u7531\u5EA6 - \u7528\u4E8E\u5728\u53C2\u7167\u8868\u4E2D\u67E5\u627E F \u7EDF\u8BA1\u503C\u4EE5\u4F30\u7B97\u53EF\u4FE1\u5EA6\u3001 + +\u56DE\u5F52\u5E73\u65B9\u548C\uFF0C\u4EE5\u53CA + +\u6B8B\u5DEE\u5E73\u65B9\u548C\u3002`}]},MDETERM:{d:"\u8FD4\u56DE\u4E00\u4E2A\u6570\u7EC4\u7684\u77E9\u9635\u884C\u5217\u5F0F\u7684\u503C\u3002",a:"\u8FD4\u56DE\u4E00\u4E2A\u6570\u7EC4\u7684\u77E9\u9635\u884C\u5217\u5F0F\u7684\u503C\u3002",p:[{name:"array",detail:"\u884C\u6570\u548C\u5217\u6570\u76F8\u7B49\u7684\u6570\u503C\u6570\u7EC4\u3002"}]},MINVERSE:{d:"\u8FD4\u56DE\u6570\u7EC4\u4E2D\u5B58\u50A8\u7684\u77E9\u9635\u7684\u9006\u77E9\u9635\u3002",a:"\u8FD4\u56DE\u6570\u7EC4\u4E2D\u5B58\u50A8\u7684\u77E9\u9635\u7684\u9006\u77E9\u9635\u3002",p:[{name:"array",detail:"\u884C\u6570\u548C\u5217\u6570\u76F8\u7B49\u7684\u6570\u503C\u6570\u7EC4\u3002"}]},MMULT:{d:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u7EC4\u7684\u77E9\u9635\u4E58\u79EF\u3002\u7ED3\u679C\u77E9\u9635\u7684\u884C\u6570\u4E0E array1 \u7684\u884C\u6570\u76F8\u540C\uFF0C\u77E9\u9635\u7684\u5217\u6570\u4E0E array2 \u7684\u5217\u6570\u76F8\u540C\u3002",a:"\u8FD4\u56DE\u4E24\u4E2A\u6570\u7EC4\u7684\u77E9\u9635\u4E58\u79EF\u3002\u7ED3\u679C\u77E9\u9635\u7684\u884C\u6570\u4E0E array1 \u7684\u884C\u6570\u76F8\u540C\uFF0C\u77E9\u9635\u7684\u5217\u6570\u4E0E array2 \u7684\u5217\u6570\u76F8\u540C\u3002",p:[{name:"array1",detail:`\u8981\u8FDB\u884C\u77E9\u9635\u4E58\u6CD5\u8FD0\u7B97\u7684\u7B2C\u4E00\u4E2A\u77E9\u9635\u6570\u7EC4\u3002 + +array1 \u5217\u6570\u5FC5\u987B\u4E0E array2 \u7684\u884C\u6570\u76F8\u540C`},{name:"array2",detail:`\u8981\u8FDB\u884C\u77E9\u9635\u4E58\u6CD5\u8FD0\u7B97\u7684\u7B2C\u4E8C\u4E2A\u77E9\u9635\u6570\u7EC4\u3002 + +array2 \u7684\u884C\u6570\u5FC5\u987B\u4E0E array1 \u5217\u6570\u76F8\u540C`}]},SUMPRODUCT:{d:"\u5728\u7ED9\u5B9A\u7684\u51E0\u7EC4\u6570\u7EC4\u4E2D\uFF0C\u5C06\u6570\u7EC4\u95F4\u5BF9\u5E94\u7684\u5143\u7D20\u76F8\u4E58\uFF0C\u5E76\u8FD4\u56DE\u4E58\u79EF\u4E4B\u548C\u3002",a:"\u5728\u7ED9\u5B9A\u7684\u51E0\u7EC4\u6570\u7EC4\u4E2D\uFF0C\u5C06\u6570\u7EC4\u95F4\u5BF9\u5E94\u7684\u5143\u7D20\u76F8\u4E58\uFF0C\u5E76\u8FD4\u56DE\u4E58\u79EF\u4E4B\u548C\u3002",p:[{name:"array1",detail:"\u5176\u76F8\u5E94\u5143\u7D20\u9700\u8981\u8FDB\u884C\u76F8\u4E58\u5E76\u6C42\u548C\u7684\u7B2C\u4E00\u4E2A\u6570\u7EC4\u53C2\u6570\u3002"},{name:"array2",detail:"[\u53EF\u9009] - \u5176\u76F8\u5E94\u5143\u7D20\u9700\u8981\u8FDB\u884C\u76F8\u4E58\u5E76\u6C42\u548C\u7684\u5176\u5B83\u6570\u7EC4\u53C2\u6570\u3002"}]},ISFORMULA:{d:"\u68C0\u67E5\u516C\u5F0F\u662F\u5426\u4F4D\u4E8E\u5F15\u7528\u7684\u5355\u5143\u683C\u4E2D\u3002",a:"\u68C0\u67E5\u516C\u5F0F\u662F\u5426\u4F4D\u4E8E\u5F15\u7528\u7684\u5355\u5143\u683C\u4E2D\u3002",p:[{name:"cell",detail:`\u8981\u68C0\u67E5\u662F\u5426\u5B58\u5728\u516C\u5F0F\u7684\u5355\u5143\u683C\u3002 + +\u5982\u679C cell \u4E3A\u5305\u542B\u516C\u5F0F\u7684\u5355\u5143\u683C\uFF0C\u5219 ISFORMULA \u5C06\u8FD4\u56DE TRUE\u3002\u5982\u679C cell \u4E3A\u76F8\u5E94\u5355\u5143\u683C\u8303\u56F4\uFF0C\u5219\u5F53\u8BE5\u8303\u56F4\u5185\u7684\u9996\u4E2A\u5355\u5143\u683C\u5305\u542B\u516C\u5F0F\u65F6\uFF0C\u7CFB\u7EDF\u4F1A\u8FD4\u56DE TRUE\u3002\u5982\u679C\u662F\u4EFB\u4F55\u5176\u4ED6\u503C\uFF0C\u7CFB\u7EDF\u90FD\u5C06\u8FD4\u56DE FALSE\u3002`}]},CELL:{d:"\u8FD4\u56DE\u6709\u5173\u5355\u5143\u683C\u7684\u683C\u5F0F\u3001\u4F4D\u7F6E\u6216\u5185\u5BB9\u7684\u4FE1\u606F\u3002",a:"\u8FD4\u56DE\u6709\u5173\u5355\u5143\u683C\u7684\u683C\u5F0F\u3001\u4F4D\u7F6E\u6216\u5185\u5BB9\u7684\u4FE1\u606F\u3002",p:[{name:"info_type",detail:"\u4E00\u4E2A\u6587\u672C\u503C\uFF0C\u6307\u5B9A\u8981\u8FD4\u56DE\u7684\u5355\u5143\u683C\u4FE1\u606F\u7684\u7C7B\u578B\u3002"},{name:"reference",detail:"\u9700\u8981\u5176\u76F8\u5173\u4FE1\u606F\u7684\u5355\u5143\u683C\u3002"}]},NA:{d:"\u8FD4\u56DE\u9519\u8BEF\u503C #N/A\u3002",a:"\u8FD4\u56DE\u9519\u8BEF\u503C #N/A\u3002",p:[]},ERROR_TYPE:{d:"\u8FD4\u56DE\u4E0E\u5176\u4ED6\u5355\u5143\u683C\u4E2D\u7684\u9519\u8BEF\u503C\u76F8\u5BF9\u5E94\u7684\u6570\u5B57\u3002",a:"\u8FD4\u56DE\u4E0E\u5176\u4ED6\u5355\u5143\u683C\u4E2D\u7684\u9519\u8BEF\u503C\u76F8\u5BF9\u5E94\u7684\u6570\u5B57\u3002",p:[{name:"error_val",detail:"\u7528\u4E8E\u67E5\u627E\u9519\u8BEF\u53F7\u7684\u5355\u5143\u683C\uFF0C\u867D\u7136\u60A8\u4E5F\u53EF\u4EE5\u76F4\u63A5\u63D0\u4F9B\u9519\u8BEF\u503C\u3002"}]},ISBLANK:{d:"\u68C0\u67E5\u6240\u5F15\u7528\u7684\u5355\u5143\u683C\u662F\u5426\u4E3A\u7A7A\u3002",a:"\u68C0\u67E5\u6240\u5F15\u7528\u7684\u5355\u5143\u683C\u662F\u5426\u4E3A\u7A7A\u3002",p:[{name:"value",detail:`\u5BF9\u8981\u68C0\u67E5\u5176\u662F\u5426\u4E3A\u7A7A\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\u3002 + +\u5982\u679C\u662F\u7A7A\u5355\u5143\u683C\uFF0C\u5219 TRUE\uFF1B\u5426\u5219\u8FD4\u56DE FALSE\u3002`}]},ISERR:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A #N/A \u4EE5\u5916\u7684\u9519\u8BEF\u503C\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A #N/A \u4EE5\u5916\u7684\u9519\u8BEF\u503C\u3002",p:[{name:"value",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A#N/A\u4EE5\u5916\u7684\u9519\u8BEF\u7C7B\u578B\u7684\u503C\u3002 + +\u5982\u679C\u503C\u662F\u9664#N/A\u4E4B\u5916\u7684\u4EFB\u4F55\u9519\u8BEF\uFF08\u5305\u62EC#DIV/0!\u3001#NAME?\u3001#NULL!\u3001#NUM!\u3001#VALUE!\u548C#REF!\uFF09\uFF0CISERR\u5C06\u8FD4\u56DETRUE\u3002`}]},ISERROR:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u9519\u8BEF\u503C\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u9519\u8BEF\u503C\u3002",p:[{name:"value",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A\u9519\u8BEF\u7C7B\u578B\u7684\u503C\u3002 + +\u53EA\u8981\u503C\u662F\u67D0\u79CD\u9519\u8BEF\u503C\uFF08\u5305\u62EC#DIV/0!\u3001#N/A\u3001#NAME?\u3001#NULL!\u3001#NUM!\u3001#VALUE!\u548C#REF!\uFF09\uFF0CISERROR\u5C31\u4F1A\u8FD4\u56DETRUE\u3002`}]},ISLOGICAL:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F TRUE \u8FD8\u662F FALSE\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F TRUE \u8FD8\u662F FALSE\u3002",p:[{name:"value",detail:`\u8981\u9A8C\u8BC1\u5176\u4E3A\u903B\u8F91TRUE\u8FD8\u662F\u903B\u8F91FALSE\u7684\u503C\u3002 + +*\u5982\u679C\u503C\u4E3ATRUE\u6216FALSE\uFF0C\u6216\u4E3A\u6307\u5411\u503C\u4E3ATRUE\u6216FALSE\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CISLOGICAL\u5C06\u8FD4\u56DETRUE\u3002`}]},ISNA:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u9519\u8BEF\u503C #N/A\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u9519\u8BEF\u503C #N/A\u3002",p:[{name:"value",detail:`\u8981\u4E0E\u9519\u8BEF\u503C#N/A\u8FDB\u884C\u6BD4\u8F83\u7684\u503C\u3002 + +*\u5982\u679C\u503C\u4E3A#N/A\u6216\u6307\u5411\u5305\u542B#N/A\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5219ISNA\u5C06\u8FD4\u56DETRUE\uFF0C\u5426\u5219\u8FD4\u56DEFALSE\u3002`}]},ISNONTEXT:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u975E\u6587\u672C\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u975E\u6587\u672C\u3002",p:[{name:"value",detail:`\u8981\u68C0\u67E5\u7684\u6587\u672C\u3002 + +*\u5982\u679C\u53C2\u6570\u4E3A\u6587\u672C\u503C\u6216\u6307\u5411\u5305\u542B\u6587\u672C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CISNONTEXT\u5C06\u8FD4\u56DEFALSE\uFF0C\u5426\u5219\u8FD4\u56DETRUE\u3002 + +\u5F53\u503C\u4E3A\u6307\u5411\u7A7A\u5355\u5143\u683C\u7684\u5F15\u7528\u65F6\uFF0CISNONTEXT\u4F1A\u8FD4\u56DETRUE\u3002 + +\u5F53\u503C\u4E3A\u7A7A\u5B57\u7B26\u4E32\u65F6\uFF0CISNONTEXT\u5C06\u8FD4\u56DEFALSE\uFF0C\u56E0\u4E3A\u7A7A\u4E32\u88AB\u89C6\u4F5C\u6587\u672C\u3002`}]},ISNUMBER:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u6570\u5B57\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u6570\u5B57\u3002",p:[{name:"value",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A\u6570\u5B57\u7684\u503C\u3002 + +*\u5982\u679C\u53C2\u6570\u4E3A\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u5B57\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CISNUMBER\u5C06\u8FD4\u56DETRUE\uFF0C\u5426\u5219\u8FD4\u56DEFALSE\u3002`}]},ISREF:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u6709\u6548\u7684\u5355\u5143\u683C\u5F15\u7528\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u6709\u6548\u7684\u5355\u5143\u683C\u5F15\u7528\u3002",p:[{name:"value",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A\u5355\u5143\u683C\u5F15\u7528\u7684\u503C\u3002 + +*\u5982\u679C\u53C2\u6570\u662F\u6709\u6548\u7684\u5355\u5143\u683C\u5F15\u7528\uFF0CISREF\u5C06\u8FD4\u56DETRUE\uFF0C\u5426\u5219\u8FD4\u56DEFALSE\u3002`}]},ISTEXT:{d:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u6587\u672C\u3002",a:"\u68C0\u67E5\u67D0\u4E2A\u503C\u662F\u5426\u4E3A\u6587\u672C\u3002",p:[{name:"value",detail:`\u8981\u9A8C\u8BC1\u5176\u662F\u5426\u4E3A\u6587\u672C\u7684\u503C\u3002 + +\u5982\u679C\u53C2\u6570\u4E3A\u6587\u672C\u503C\u6216\u6307\u5411\u5305\u542B\u6587\u672C\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CISTEXT\u5C06\u8FD4\u56DETRUE\uFF0C\u5426\u5219\u8FD4\u56DEFALSE\u3002`}]},TYPE:{d:"\u8FD4\u56DE\u6570\u503C\u7684\u7C7B\u578B\u3002",a:"\u8FD4\u56DE\u6570\u503C\u7684\u7C7B\u578B\u3002",p:[{name:"value",detail:`\u8981\u786E\u5B9A\u5176\u7C7B\u578B\u7684\u6570\u636E\u3002 + +\u6570\u5B57 \u8FD4\u56DE 1; + +\u6587\u672C \u8FD4\u56DE 2; + +\u903B\u8F91\u503C \u8FD4\u56DE 4; + +\u9519\u8BEF\u503C \u8FD4\u56DE 16; + +\u6570\u7EC4 \u8FD4\u56DE 64;`}]},N:{d:"\u8FD4\u56DE\u8F6C\u5316\u4E3A\u6570\u503C\u540E\u7684\u503C\u3002",a:"\u8FD4\u56DE\u8F6C\u5316\u4E3A\u6570\u503C\u540E\u7684\u503C\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u6570\u5B57\u7684\u53C2\u6570\u3002 + +\u5982\u679C\u503C\u4E3A\u6570\u5B57\uFF0C\u5219\u8FD4\u56DE\u8BE5\u6570\u5B57\u3002 + +\u5982\u679C\u503C\u4E3A\u65E5\u671F\uFF0C\u5219\u8FD4\u56DE\u8BE5\u65E5\u671F\u7684\u5E8F\u5217\u53F7\u3002 + +\u5982\u679C\u503C\u4E3ATRUE\uFF0C\u5219\u8FD4\u56DE1\u3002 + +\u5982\u679C\u503C\u4E3AFALSE\uFF0C\u5219\u8FD4\u56DE0\u3002 + +\u5982\u679C\u503C\u4E3A\u9519\u8BEF\u503C\uFF0C\u5219\u8FD4\u56DE\u9519\u8BEF\u503C\u3002 + +\u5982\u679C\u503C\u4E3A\u5176\u4ED6\u503C\uFF0C\u5219\u8FD4\u56DE0\u3002`}]},TO_DATE:{d:"\u5C06\u6307\u5B9A\u7684\u6570\u5B57\u8F6C\u6362\u4E3A\u65E5\u671F\u3002",a:"\u5C06\u6307\u5B9A\u7684\u6570\u5B57\u8F6C\u6362\u4E3A\u65E5\u671F\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u65E5\u671F\u7684\u53C2\u6570\u6216\u5176\u5355\u5143\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u4E3A\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CTO_DATE\u4F1A\u5C06\u503C\u8F6C\u6362\u4E3A\u76F8\u5E94\u7684\u65E5\u671F\u5E76\u8FD4\u56DE\uFF0C\u503C\u4EE3\u8868\u4ECE\u5341\u4E8C\u670830\u65E5\u5230\u5BF9\u5E94\u7684\u65E5\u671F\u4E4B\u95F4\u7684\u5929\u6570\uFF0C + +\u8D1F\u503C\u8868\u793A\u5BF9\u5E94\u7684\u65E5\u671F\u5728\u5341\u4E8C\u670830\u65E5\u4E4B\u524D\uFF0C\u800C\u5C0F\u6570\u503C\u5219\u4EE3\u8868\u4E00\u5929\u4E2D\u4ECE\u5348\u591C\u7B97\u8D77\u7684\u65F6\u95F4\u3002 +\u5982\u679C\u503C\u4E0D\u662F\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5219TO_DATE\u5C06\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_PURE_NUMBER:{d:"\u5C06\u7ED9\u5B9A\u7684\u65E5\u671F/\u65F6\u95F4\u3001\u767E\u5206\u6BD4\u3001\u8D27\u5E01\u91D1\u989D\u6216\u5176\u4ED6\u683C\u5F0F\u7684\u6570\u503C\u8F6C\u6362\u4E3A\u4E0D\u5E26\u683C\u5F0F\u7684\u7EAF\u6570\u5B57\u3002",a:"\u5C06\u7ED9\u5B9A\u7684\u65E5\u671F/\u65F6\u95F4\u3001\u767E\u5206\u6BD4\u3001\u8D27\u5E01\u91D1\u989D\u6216\u5176\u4ED6\u683C\u5F0F\u7684\u6570\u503C\u8F6C\u6362\u4E3A\u4E0D\u5E26\u683C\u5F0F\u7684\u7EAF\u6570\u5B57\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u7EAF\u6570\u5B57\u7684\u53C2\u6570\u6216\u5176\u5355\u5143\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u4E3A\u6570\u5B57\u6216\u6307\u5411\u5305\u542B\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CTO_PURE_NUMBER\u5C06\u4EE5\u4E0D\u5E26\u4EFB\u4F55\u683C\u5F0F\u4E0E\u89E3\u91CA\u7684\u5F62\u5F0F\u8FD4\u56DE\u503C\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5219TO_PERCENT\u5C06\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_TEXT:{d:"\u5C06\u7ED9\u5B9A\u7684\u6570\u5B57\u503C\u8F6C\u6362\u4E3A\u6587\u672C\u683C\u5F0F\u3002",a:"\u5C06\u7ED9\u5B9A\u7684\u6570\u5B57\u503C\u8F6C\u6362\u4E3A\u6587\u672C\u683C\u5F0F\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u6587\u672C\u7684\u53C2\u6570\u6216\u5176\u5355\u5143\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u4E3A\u6570\u5B57\u6216\u6307\u5411\u5305\u542B\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CTO_TEXT\u5C06\u8FD4\u56DE\u5B57\u7B26\u4E32\u5F62\u5F0F\u7684\u503C\uFF0C\u5E76\u4FDD\u6301\u73B0\u6709\u683C\u5F0F\u3002\u5373\u539F\u4E3A\u8D27\u5E01\u7684\u4ECD\u4E3A\u8D27\u5E01\uFF0C\u539F\u4E3A\u5341\u8FDB\u5236\u6570\u7684\u4ECD\u4E3A\u5341\u8FDB\u5236\u6570\uFF0C\u539F\u4E3A\u767E\u5206\u6BD4\u7684\u4ECD\u4E3A\u767E\u5206\u6BD4\uFF0C\u539F\u4E3A\u65E5\u671F\u7684\u4ECD\u4E3A\u65E5\u671F\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5219TO_TEXT\u5C06\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_DOLLARS:{d:"\u5C06\u6307\u5B9A\u7684\u6570\u5B57\u8F6C\u6362\u4E3A\u7F8E\u5143\u91D1\u989D\u3002",a:"\u5C06\u6307\u5B9A\u7684\u6570\u5B57\u8F6C\u6362\u4E3A\u7F8E\u5143\u91D1\u989D\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u7F8E\u5143\u91D1\u989D\u7684\u53C2\u6570\u6216\u5176\u5355\u5143\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5219 TO_DOLLARS \u5C06\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_PERCENT:{d:"\u5C06\u6307\u5B9A\u7684\u6570\u5B57\u8F6C\u6362\u4E3A\u767E\u5206\u6BD4\u3002",a:"\u5C06\u6307\u5B9A\u7684\u6570\u5B57\u8F6C\u6362\u4E3A\u767E\u5206\u6BD4\u3002",p:[{name:"value",detail:`\u8981\u8F6C\u6362\u4E3A\u767E\u5206\u6BD4\u7684\u53C2\u6570\u6216\u5176\u5355\u5143\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u4E3A\u6570\u5B57\u6216\u6307\u5411\u5305\u542B\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0CTO_PERCENT\u4F1A\u4EE51 = 100%\u4E3A\u6807\u51C6\uFF0C\u5C06\u503C\u8F6C\u6362\u4E3A\u767E\u5206\u6BD4\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6570\u5B57\u6216\u6307\u5411\u5185\u5BB9\u4E3A\u6570\u503C\u7684\u5355\u5143\u683C\u7684\u5F15\u7528\uFF0C\u5219TO_PERCENT\u5C06\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},DGET:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u4ECE\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5217\u4E2D\u63D0\u53D6\u7B26\u5408\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u4E2A\u503C\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u4ECE\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5217\u4E2D\u63D0\u53D6\u7B26\u5408\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u4E2A\u503C\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DMAX:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5927\u6570\u5B57\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5927\u6570\u5B57\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DMIN:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5C0F\u6570\u5B57\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5C0F\u6570\u5B57\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DAVERAGE:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u5BF9\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u503C\u6C42\u5E73\u5747\u503C\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u5BF9\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u503C\u6C42\u5E73\u5747\u503C\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DCOUNT:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u5305\u542B\u6570\u5B57\u7684\u5355\u5143\u683C\u7684\u4E2A\u6570\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u5305\u542B\u6570\u5B57\u7684\u5355\u5143\u683C\u7684\u4E2A\u6570\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DCOUNTA:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u975E\u7A7A\u5355\u5143\u683C\u7684\u4E2A\u6570\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u975E\u7A7A\u5355\u5143\u683C\u7684\u4E2A\u6570\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DPRODUCT:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u503C\u7684\u4E58\u79EF\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u503C\u7684\u4E58\u79EF\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DSTDEV:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5229\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4F5C\u4E3A\u4E00\u4E2A\u6837\u672C\u4F30\u7B97\u51FA\u7684\u603B\u4F53\u6807\u51C6\u504F\u5DEE\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5229\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4F5C\u4E3A\u4E00\u4E2A\u6837\u672C\u4F30\u7B97\u51FA\u7684\u603B\u4F53\u6807\u51C6\u504F\u5DEE\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DSTDEVP:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5229\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4F5C\u4E3A\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u51FA\u7684\u603B\u4F53\u6807\u51C6\u504F\u5DEE\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5229\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4F5C\u4E3A\u6837\u672C\u603B\u4F53\u8BA1\u7B97\u51FA\u7684\u603B\u4F53\u6807\u51C6\u504F\u5DEE\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DSUM:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4E4B\u548C\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4E4B\u548C\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DVAR:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5229\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4F5C\u4E3A\u4E00\u4E2A\u6837\u672C\u4F30\u7B97\u51FA\u7684\u603B\u4F53\u65B9\u5DEE\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u8FD4\u56DE\u5229\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u4F5C\u4E3A\u4E00\u4E2A\u6837\u672C\u4F30\u7B97\u51FA\u7684\u603B\u4F53\u65B9\u5DEE\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},DVARP:{d:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u901A\u8FC7\u4F7F\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u8BA1\u7B97\u6837\u672C\u603B\u4F53\u7684\u6837\u672C\u603B\u4F53\u65B9\u5DEE\u3002",a:"\u4F7F\u7528 SQL \u5F0F\u67E5\u8BE2\uFF0C\u901A\u8FC7\u4F7F\u7528\u5217\u8868\u6216\u6570\u636E\u5E93\u4E2D\u6EE1\u8DB3\u6307\u5B9A\u6761\u4EF6\u7684\u8BB0\u5F55\u5B57\u6BB5\uFF08\u5217\uFF09\u4E2D\u7684\u6570\u5B57\u8BA1\u7B97\u6837\u672C\u603B\u4F53\u7684\u6837\u672C\u603B\u4F53\u65B9\u5DEE\u3002",p:[{name:"database",detail:"\u6784\u6210\u5217\u8868\u6216\u6570\u636E\u5E93\u7684\u5355\u5143\u683C\u533A\u57DF\uFF0C\u5217\u8868\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6807\u7B7E\u3002"},{name:"field",detail:`\u6307\u5B9A database \u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u63D0\u53D6\u548C\u7528\u4E8E\u8BA1\u7B97\u7684\u503C\u3002 + +field \u53EF\u4EE5\u662F\u4E0E database \u7B2C\u4E00\u884C\u4E2D\u67D0\u4E2A\u5217\u6807\u9898\u5BF9\u5E94\u7684\u6587\u672C\u6807\u7B7E\uFF0C\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u5173\u5217\u7684\u6570\u5B57\u7D22\u5F15\uFF0C\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u4E3A 1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u6761\u4EF6\u7684\u5355\u5143\u683C\u533A\u57DF\u3002\u8BA1\u7B97\u4E4B\u524D\u5C06\u4F7F\u7528\u8FD9\u4E9B\u6761\u4EF6\u6765\u8FC7\u6EE4 database \u4E2D\u7684\u503C\u3002"}]},AGE_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u5E74\u9F84\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u5E74\u9F84\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"},{name:"\u622A\u6B62\u65E5\u671F",detail:"\u5E74\u9F84\u8BA1\u7B97\u7684\u622A\u6B62\u65E5\u671F\u6216\u8303\u56F4\uFF0C\u9ED8\u8BA4\u4E3A\u5F53\u65E5\u3002"}]},SEX_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u6027\u522B\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u6027\u522B\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"}]},BIRTHDAY_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u751F\u65E5\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u751F\u65E5\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"},{name:"\u751F\u65E5\u683C\u5F0F",detail:"\u65E5\u671F\u7C7B\u578B,\u9ED8\u8BA40:[1900/01/01], 1:[1900-01-01], 2:[1900\u5E741\u67081\u65E5]"}]},PROVINCE_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u7C4D\u8D2F\u7684\u7701\u4EFD\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u7C4D\u8D2F\u7684\u7701\u4EFD\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"}]},CITY_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u7C4D\u8D2F\u7684\u57CE\u5E02\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u7C4D\u8D2F\u7684\u57CE\u5E02\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"}]},STAR_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u661F\u5EA7\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u661F\u5EA7\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"}]},ANIMAL_BY_IDCARD:{d:"\u6839\u636E\u4E2D\u56FD\u8EAB\u4EFD\u8BC1\u53F7\u8BA1\u7B97\u51FA\u751F\u8096\uFF08\u9F20\u3001\u725B\u3001\u864E\u3001\u5154...\uFF09\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u6839\u636E\u8EAB\u4EFD\u8BC1\u53F7\u5F97\u5230\u751F\u8096\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"}]},ISIDCARD:{d:"\u9A8C\u8BC1\u8EAB\u4EFD\u8BC1\u7684\u683C\u5F0F\u662F\u5426\u6B63\u786E\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8BC1",a:"\u9A8C\u8BC1\u8EAB\u4EFD\u8BC1\u683C\u5F0F\u6B63\u786E\u6027\u3002",p:[{name:"\u8EAB\u4EFD\u8BC1\u53F7",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8BC1\u53F7\u6216\u8303\u56F4\u3002"}]},DM_TEXT_CUTWORD:{d:"\u6587\u672C\u5206\u8BCD\u3002\u628A\u4E00\u8FDE\u4E32\u6587\u5B57\u62C6\u5206\u4E3A\u4E00\u7CFB\u5217\u5355\u72EC\u8BCD\u8BED",a:"\u4E2D\u6587\u6587\u672C\u5206\u8BCD\u3002",p:[{name:"\u6587\u672C",detail:"\u4EFB\u610F\u9700\u8981\u5206\u8BCD\u7684\u6587\u672C\u3002"},{name:"\u5206\u8BCD\u6A21\u5F0F",detail:"\u9ED8\u8BA4\u4E3A0[\u7CBE\u786E\u6A21\u5F0F], 1[\u5168\u6A21\u5F0F], 2[\u641C\u7D22\u5F15\u64CE\u6A21\u5F0F]\u3002"}]},DM_TEXT_TFIDF:{d:"\u91C7\u7528tf-idf\u7B97\u6CD5\u8FDB\u884C\u5173\u952E\u8BCD\u63D0\u53D6\u3002\u4ECE\u4E00\u8FDE\u4E32\u6587\u5B57\u4E2D\u8BC6\u522B\u5173\u952E\u8BCD",a:"tf-idf\u5173\u952E\u8BCD\u8BC6\u522B\u3002",p:[{name:"\u6587\u672C",detail:"\u4EFB\u610F\u9700\u8981\u5206\u8BCD\u7684\u6587\u672C\u3002"},{name:"\u5173\u952E\u8BCD\u4E2A\u6570",detail:"\u7B97\u6CD5\u8FD4\u56DE\u7684\u5173\u952E\u8BCD\u4E2A\u6570\uFF0C\u9ED8\u8BA420"},{name:"\u8BED\u6599\u5E93",detail:"\u9009\u62E9\u7279\u5B9A\u9886\u57DF\u7684\u8BED\u6599\u5E93\uFF0C\u9ED8\u8BA40[\u901A\u7528], 1[\u91D1\u878D], 2[\u533B\u7597]"}]},DM_TEXT_TEXTRANK:{d:"\u91C7\u7528TextRank\u7B97\u6CD5\u8FDB\u884C\u5173\u952E\u8BCD\u63D0\u53D6\u3002\u4ECE\u4E00\u8FDE\u4E32\u6587\u5B57\u4E2D\u8BC6\u522B\u5173\u952E\u8BCD",a:"TextRank\u5173\u952E\u8BCD\u8BC6\u522B\u3002",p:[{name:"\u6587\u672C",detail:"\u4EFB\u610F\u9700\u8981\u5206\u8BCD\u7684\u6587\u672C\u3002"},{name:"\u5173\u952E\u8BCD\u4E2A\u6570",detail:"\u7B97\u6CD5\u8FD4\u56DE\u7684\u5173\u952E\u8BCD\u4E2A\u6570\uFF0C\u9ED8\u8BA420"},{name:"\u8BED\u6599\u5E93",detail:"\u9009\u62E9\u7279\u5B9A\u9886\u57DF\u7684\u8BED\u6599\u5E93\uFF0C\u9ED8\u8BA40[\u901A\u7528], 1[\u91D1\u878D], 2[\u533B\u7597]"}]},DATA_CN_STOCK_CLOSE:{d:"\u6839\u636E\u80A1\u7968\u4EE3\u7801\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6536\u76D8\u4EF7\u3002",a:"\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6536\u76D8\u4EF7\u3002",p:[{name:"\u80A1\u7968\u4EE3\u7801",detail:"6\u4F4D\u80A1\u7968\u4EE3\u7801\uFF0C\u5FC5\u586B\u9879\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u590D\u6743\u9664\u6743",detail:"\u9009\u62E9\u80A1\u7968\u7684\u9664\u6743\u590D\u6743\u7C7B\u578B\uFF0C\u9ED8\u8BA40[\u524D\u590D\u6743], 1[\u539F\u59CB\u4EF7\u683C], 2[\u540E\u590D\u6743]"}]},DATA_CN_STOCK_OPEN:{d:"\u6839\u636E\u80A1\u7968\u4EE3\u7801\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u5F00\u76D8\u4EF7\u3002",a:"\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u5F00\u76D8\u4EF7\u3002",p:[{name:"\u80A1\u7968\u4EE3\u7801",detail:"6\u4F4D\u80A1\u7968\u4EE3\u7801\uFF0C\u5FC5\u586B\u9879\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u590D\u6743\u9664\u6743",detail:"\u9009\u62E9\u80A1\u7968\u7684\u9664\u6743\u590D\u6743\u7C7B\u578B\uFF0C\u9ED8\u8BA40[\u524D\u590D\u6743], 1[\u539F\u59CB\u4EF7\u683C], 2[\u540E\u590D\u6743]"}]},DATA_CN_STOCK_MAX:{d:"\u6839\u636E\u80A1\u7968\u4EE3\u7801\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6700\u9AD8\u4EF7\u3002",a:"\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6700\u9AD8\u4EF7\u3002",p:[{name:"\u80A1\u7968\u4EE3\u7801",detail:"6\u4F4D\u80A1\u7968\u4EE3\u7801\uFF0C\u5FC5\u586B\u9879\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u590D\u6743\u9664\u6743",detail:"\u9009\u62E9\u80A1\u7968\u7684\u9664\u6743\u590D\u6743\u7C7B\u578B\uFF0C\u9ED8\u8BA40[\u524D\u590D\u6743], 1[\u539F\u59CB\u4EF7\u683C], 2[\u540E\u590D\u6743]"}]},DATA_CN_STOCK_MIN:{d:"\u6839\u636E\u80A1\u7968\u4EE3\u7801\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6700\u4F4E\u4EF7\u3002",a:"\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6700\u4F4E\u4EF7\u3002",p:[{name:"\u80A1\u7968\u4EE3\u7801",detail:"6\u4F4D\u80A1\u7968\u4EE3\u7801\uFF0C\u5FC5\u586B\u9879\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u590D\u6743\u9664\u6743",detail:"\u9009\u62E9\u80A1\u7968\u7684\u9664\u6743\u590D\u6743\u7C7B\u578B\uFF0C\u9ED8\u8BA40[\u524D\u590D\u6743], 1[\u539F\u59CB\u4EF7\u683C], 2[\u540E\u590D\u6743]"}]},DATA_CN_STOCK_VOLUMN:{d:"\u6839\u636E\u80A1\u7968\u4EE3\u7801\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6210\u4EA4\u91CF\u3002",a:"\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6210\u4EA4\u91CF\u3002",p:[{name:"\u80A1\u7968\u4EE3\u7801",detail:"6\u4F4D\u80A1\u7968\u4EE3\u7801\uFF0C\u5FC5\u586B\u9879\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u590D\u6743\u9664\u6743",detail:"\u9009\u62E9\u80A1\u7968\u7684\u9664\u6743\u590D\u6743\u7C7B\u578B\uFF0C\u9ED8\u8BA40[\u524D\u590D\u6743], 1[\u539F\u59CB\u4EF7\u683C], 2[\u540E\u590D\u6743]"}]},DATA_CN_STOCK_AMOUNT:{d:"\u6839\u636E\u80A1\u7968\u4EE3\u7801\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6210\u4EA4\u989D\u3002",a:"\u8FD4\u56DEA\u80A1\u5BF9\u5E94\u80A1\u7968\u6210\u4EA4\u989D\u3002",p:[{name:"\u80A1\u7968\u4EE3\u7801",detail:"6\u4F4D\u80A1\u7968\u4EE3\u7801\uFF0C\u5FC5\u586B\u9879\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u590D\u6743\u9664\u6743",detail:"\u9009\u62E9\u80A1\u7968\u7684\u9664\u6743\u590D\u6743\u7C7B\u578B\uFF0C\u9ED8\u8BA40[\u524D\u590D\u6743], 1[\u539F\u59CB\u4EF7\u683C], 2[\u540E\u590D\u6743]"}]},ISDATE:{d:"\u9A8C\u8BC1\u65E5\u671F\u7684\u683C\u5F0F\u662F\u5426\u6B63\u786E\u3002\u652F\u6301\u591A\u79CD\u65E5\u671F\u683C\u5F0F",a:"\u9A8C\u8BC1\u65E5\u671F\u683C\u5F0F\u6B63\u786E\u6027\u3002",p:[{name:"\u65E5\u671F",detail:"\u65E5\u671F\u503C\uFF0C\u4F8B\u59821990/01/01, 1990\u5E741\u67081\u65E5\u7B49\u3002"}]},LINESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u6298\u7EBF\u56FEsparklines\uFF0C\u7528\u4E8E\u63CF\u8FF0\u6570\u636E\u7684\u8FDE\u7EED\u8D70\u52BF",a:"\u751F\u6210\u5355\u5143\u683C\u6298\u7EBF\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u7EBF\u6761\u989C\u8272",detail:"\u7EBF\u56FE\u7684\u7EBF\u6761\u989C\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u4E2A\u8303\u56F4A1\u3001\u8272\u8868\u7D22\u5F15\u6570\u503C\u6216\u8005\u5177\u4F53\u989C\u8272\u503C\uFF0C\u8BBE\u7F6E\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8BA4#2ec7c9"},{name:"\u7EBF\u6761\u7C97\u7EC6",detail:"\u6298\u7EBF\u56FE\u7EBF\u6BB5\u7C97\u7EC6\uFF0C\u9ED8\u8BA4\u4E3A1px"},{name:"\u8F85\u52A9\u7EBF",detail:"\u4E00\u6761\u6A2A\u7EBF\uFF0C\u53EF\u4EE5\u662Fmin\u3001max\u3001avg\u3001median\u3001\u8303\u56F4\u6216\u81EA\u5B9A\u4E49\u6570\u503C\uFF0C\u9ED8\u8BA40\u65E0"},{name:"\u8F85\u52A9\u7EBF\u989C\u8272",detail:"\u8F85\u52A9\u7EBF\u7684\u989C\u8272\u8BBE\u7F6E\uFF0C\u540C\u7EBF\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA4#000"},{name:"\u6700\u5927\u503C\u6807\u8BC6",detail:"\u6807\u8BC6\u7EBF\u56FE\u6700\u5927\u503C\uFF0C\u540C\u7EBF\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA40\u4E0D\u663E\u793A"},{name:"\u6700\u5C0F\u503C\u6807\u8BC6",detail:"\u6807\u8BC6\u7EBF\u56FE\u6700\u5C0F\u503C\uFF0C\u540C\u7EBF\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA40\u4E0D\u663E\u793A"},{name:"\u6807\u8BC6\u5927\u5C0F",detail:"\u6700\u5927\u503C\u548C\u6700\u5C0F\u503C\u7684\u6807\u8BC6\u5927\u5C0F\u8BBE\u7F6E\uFF0C\u9ED8\u8BA4\u4E3A1.5"}]},AREASPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u9762\u79EF\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u6570\u636E\u7684\u8FDE\u7EED\u7D2F\u79EF\u503C\u8D70\u52BF",a:"\u751F\u6210\u5355\u5143\u683C\u9762\u79EF\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u7EBF\u6761\u989C\u8272",detail:"\u7EBF\u56FE\u7684\u7EBF\u6761\u989C\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u4E2A\u8303\u56F4A1\u3001\u8272\u8868\u7D22\u5F15\u6570\u503C\u6216\u8005\u5177\u4F53\u989C\u8272\u503C\uFF0C\u8BBE\u7F6E\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8BA4#2ec7c9"},{name:"\u586B\u5145\u989C\u8272",detail:"\u5F62\u6210\u9762\u79EF\u56FE\uFF0C\u540C\u7EBF\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA40\u4E0D\u663E\u793A"},{name:"\u7EBF\u6761\u7C97\u7EC6",detail:"\u6298\u7EBF\u56FE\u7EBF\u6BB5\u7C97\u7EC6\uFF0C\u9ED8\u8BA4\u4E3A1px"},{name:"\u8F85\u52A9\u7EBF",detail:"\u4E00\u6761\u6A2A\u7EBF\uFF0C\u53EF\u4EE5\u662Fmin\u3001max\u3001avg\u3001median\u3001\u8303\u56F4\u6216\u81EA\u5B9A\u4E49\u6570\u503C\uFF0C\u9ED8\u8BA40\u65E0"},{name:"\u8F85\u52A9\u7EBF\u989C\u8272",detail:"\u8F85\u52A9\u7EBF\u7684\u989C\u8272\u8BBE\u7F6E\uFF0C\u540C\u7EBF\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA4#000"}]},COLUMNSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u5782\u76F4\u67F1\u72B6\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u79BB\u6563\u6570\u636E\u4E4B\u95F4\u7684\u5927\u5C0F\u60C5\u51B5",a:"\u751F\u6210\u5355\u5143\u683C\u5782\u76F4\u67F1\u72B6\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u67F1\u6761\u95F4\u9694",detail:"\u67F1\u6761\u4E4B\u95F4\u7684\u95F4\u9694\u8DDD\u79BB\uFF0C\u9ED8\u8BA4\u4E3A1"},{name:"\u67F1\u6761\u989C\u8272",detail:"\u7EBF\u56FE\u7684\u7EBF\u6761\u989C\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u4E2A\u8303\u56F4A1\u3001\u8272\u8868\u7D22\u5F15\u6570\u503C\u6216\u8005\u5177\u4F53\u989C\u8272\u503C\uFF0C\u8BBE\u7F6E\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8BA4#fc5c5c"},{name:"\u8D1F\u5411\u67F1\u6761\u989C\u8272",detail:"\u8D1F\u5411\u67F1\u6761\u989C\u8272\u8BBE\u7F6E\uFF0C\u4EE3\u8868\u8D1F\u503C\u7684\u989C\u8272\uFF0C\u540C\u67F1\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA4#97b552"},{name:"\u6700\u5927\u503C",detail:"\u67F1\u56FE\u6700\u5927\u503C\uFF0C\u7528\u4E8E\u89C4\u8303\u67F1\u56FE\u957F\u5EA6\uFF0C\u9ED8\u8BA4\u4E3A\u81EA\u52A8\u8BA1\u7B97false\u3001auto\u3001null"},{name:"\u8272\u677F",detail:"\u8C03\u8272\u677F\u53EF\u4EE5\u5355\u72EC\u8BBE\u7F6E\u6BCF\u4E2A\u67F1\u6761\u7684\u989C\u8272\uFF0C\u53EF\u8BBE\u7F6E\u591A\u4E2A\uFF0C\u652F\u6301\u4E24\u79CD\u683C\u5F0F\uFF1A1\u989C\u8272\u4F8B\u5982#000\uFF0C\u4EE3\u8868\u7B2C\u4E00\u4E2A\u67F1\u7684\u989C\u8272\u662F\u9ED1\u8272\uFF1B2\u6570\u503C\u8303\u56F4:\u989C\u8272\uFF0C\u4F8B\u5982-2:#000\u8868\u793A\u6570\u503C\u4E3A-2\u7684\u67F1\u4E3A\u9ED1\u8272\uFF0C0:5:#000\u8868\u793A\u6570\u503C0-5\u7684\u67F1\u4E3A\u9ED1\u8272\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A"}]},STACKCOLUMNSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u7D2F\u79EF\u5782\u76F4\u67F1\u72B6\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u79BB\u6563\u6570\u636E\u591A\u4E2A\u7EF4\u5EA6\u7684\u6570\u503C\u5927\u5C0F",a:"\u751F\u6210\u5355\u5143\u683C\u7D2F\u79EF\u5782\u76F4\u67F1\u72B6\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u6309\u5217\u5806\u79EF",detail:"\u5982\u679C\u9700\u8981\u6309\u884C\u5806\u79EF\u5219\u672C\u9879\u8BBE\u4E3Afalse\u62160\uFF0C\u9ED8\u8BA4\u4E3A\u662F1"},{name:"\u67F1\u6761\u95F4\u9694",detail:"\u67F1\u6761\u4E4B\u95F4\u7684\u95F4\u9694\u8DDD\u79BB\uFF0C\u9ED8\u8BA4\u4E3A1"},{name:"\u6700\u5927\u503C",detail:"\u7D2F\u79EF\u67F1\u56FE\u6700\u5927\u503C\uFF0C\u7528\u4E8E\u89C4\u8303\u67F1\u56FE\u957F\u5EA6\uFF0C\u9ED8\u8BA4\u4E3A\u81EA\u52A8\u8BA1\u7B97false\u3001auto\u3001null"},{name:"\u7D2F\u79EF\u8272\u677F",detail:"\u8C03\u8272\u677F\u53EF\u4EE5\u5355\u72EC\u8BBE\u7F6E\u6BCF\u4E2A\u7EF4\u5EA6\u7684\u67F1\u6761\u989C\u8272\uFF0C\u53EF\u8BBE\u7F6E\u4E3AA1:A10\u7B49\u8303\u56F4\uFF0C\u9ED8\u8BA4\u4E3A#2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BARSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u6A2A\u5411\u6761\u5F62\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u79BB\u6563\u6570\u636E\u4E4B\u95F4\u7684\u5927\u5C0F\u60C5\u51B5",a:"\u751F\u6210\u5355\u5143\u683C\u6A2A\u5411\u6761\u5F62\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u67F1\u6761\u95F4\u9694",detail:"\u67F1\u6761\u4E4B\u95F4\u7684\u95F4\u9694\u8DDD\u79BB\uFF0C\u9ED8\u8BA4\u4E3A1"},{name:"\u67F1\u6761\u989C\u8272",detail:"\u7EBF\u56FE\u7684\u7EBF\u6761\u989C\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u4E2A\u8303\u56F4A1\u3001\u8272\u8868\u7D22\u5F15\u6570\u503C\u6216\u8005\u5177\u4F53\u989C\u8272\u503C\uFF0C\u8BBE\u7F6E\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8BA4#fc5c5c"},{name:"\u8D1F\u5411\u67F1\u6761\u989C\u8272",detail:"\u8D1F\u5411\u67F1\u6761\u989C\u8272\u8BBE\u7F6E\uFF0C\u4EE3\u8868\u8D1F\u503C\u7684\u989C\u8272\uFF0C\u540C\u67F1\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA4#97b552"},{name:"\u6700\u5927\u503C",detail:"\u67F1\u56FE\u6700\u5927\u503C\uFF0C\u7528\u4E8E\u89C4\u8303\u67F1\u56FE\u957F\u5EA6\uFF0C\u9ED8\u8BA4\u4E3A\u81EA\u52A8\u8BA1\u7B97false\u3001auto\u3001null"},{name:"\u8272\u677F",detail:"\u8C03\u8272\u677F\u53EF\u4EE5\u5355\u72EC\u8BBE\u7F6E\u6BCF\u4E2A\u67F1\u6761\u7684\u989C\u8272\uFF0C\u53EF\u8BBE\u7F6E\u591A\u4E2A\uFF0C\u652F\u6301\u4E24\u79CD\u683C\u5F0F\uFF1A1\u989C\u8272\u4F8B\u5982#000\uFF0C\u4EE3\u8868\u7B2C\u4E00\u4E2A\u67F1\u7684\u989C\u8272\u662F\u9ED1\u8272\uFF1B2\u6570\u503C\u8303\u56F4:\u989C\u8272\uFF0C\u4F8B\u5982-2:#000\u8868\u793A\u6570\u503C\u4E3A-2\u7684\u67F1\u4E3A\u9ED1\u8272\uFF0C0:5:#000\u8868\u793A\u6570\u503C0-5\u7684\u67F1\u4E3A\u9ED1\u8272\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A"}]},STACKBARSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u7D2F\u79EF\u6A2A\u5411\u6761\u5F62\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u79BB\u6563\u6570\u636E\u591A\u4E2A\u7EF4\u5EA6\u7684\u6570\u503C\u5927\u5C0F",a:"\u751F\u6210\u5355\u5143\u683C\u7D2F\u79EF\u6A2A\u5411\u6761\u5F62\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u6309\u5217\u5806\u79EF",detail:"\u5982\u679C\u9700\u8981\u6309\u884C\u5806\u79EF\u5219\u672C\u9879\u8BBE\u4E3Afalse\u62160\uFF0C\u9ED8\u8BA4\u4E3A\u662F1"},{name:"\u67F1\u6761\u95F4\u9694",detail:"\u67F1\u6761\u4E4B\u95F4\u7684\u95F4\u9694\u8DDD\u79BB\uFF0C\u9ED8\u8BA4\u4E3A1"},{name:"\u6700\u5927\u503C",detail:"\u7D2F\u79EF\u67F1\u56FE\u6700\u5927\u503C\uFF0C\u7528\u4E8E\u89C4\u8303\u67F1\u56FE\u957F\u5EA6\uFF0C\u9ED8\u8BA4\u4E3A\u81EA\u52A8\u8BA1\u7B97false\u3001auto\u3001null"},{name:"\u7D2F\u79EF\u8272\u677F",detail:"\u8C03\u8272\u677F\u53EF\u4EE5\u5355\u72EC\u8BBE\u7F6E\u6BCF\u4E2A\u7EF4\u5EA6\u7684\u67F1\u6761\u989C\u8272\uFF0C\u53EF\u8BBE\u7F6E\u4E3AA1:A10\u7B49\u8303\u56F4\uFF0C\u9ED8\u8BA4\u4E3A#2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},DISCRETESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u79BB\u6563\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u79BB\u6563\u6570\u636E\u8D70\u52BF",a:"\u751F\u6210\u5355\u5143\u683C\u79BB\u6563\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u5206\u5272\u9608\u503C",detail:"\u79BB\u6563\u56FE\u67F1\u5F62\u989C\u8272\u7684\u533A\u5206\uFF0C\u4F8B\u5982\uFF1A\u8BE5\u503C\u4E3A0\uFF0C\u5219\u5927\u4E8E0\u4E3A\u84DD\u8272\uFF0C\u5C0F\u4E8E0\u4E3A\u7EA2\u8272\uFF0C\u9ED8\u8BA4\u4E3A0"},{name:"\u9608\u503C\u4EE5\u4E0A\u989C\u8272",detail:"\u7EBF\u56FE\u7684\u7EBF\u6761\u989C\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u4E2A\u8303\u56F4A1\u3001\u8272\u8868\u7D22\u5F15\u6570\u503C\u6216\u8005\u5177\u4F53\u989C\u8272\u503C\uFF0C\u8BBE\u7F6E\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8BA4#2ec7c9"},{name:"\u9608\u503C\u4EE5\u4E0B\u989C\u8272",detail:"\u9608\u503C\u4EE5\u4E0B\u67F1\u6761\u989C\u8272\u8BBE\u7F6E\uFF0C\u540C\u9608\u503C\u4EE5\u4E0A\u989C\u8272\uFF0C\u9ED8\u8BA4#fc5c5c"}]},TRISTATESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u4E09\u6001\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u4E09\u79CD\u6001\u52BF\u7684\u8D70\u52BF\u4F8B\u5982\u80DC\u8D1F\u5E73",a:"\u751F\u6210\u5355\u5143\u683C\u4E09\u6001\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u67F1\u6761\u95F4\u9694",detail:"\u67F1\u6761\u4E4B\u95F4\u7684\u95F4\u9694\u8DDD\u79BB\uFF0C\u9ED8\u8BA4\u4E3A1"},{name:"\u67F1\u6761\u989C\u8272",detail:"\u7EBF\u56FE\u7684\u7EBF\u6761\u989C\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u4E2A\u8303\u56F4A1\u3001\u8272\u8868\u7D22\u5F15\u6570\u503C\u6216\u8005\u5177\u4F53\u989C\u8272\u503C\uFF0C\u8BBE\u7F6E\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8BA4#fc5c5c"},{name:"\u8D1F\u5411\u67F1\u6761\u989C\u8272",detail:"\u8D1F\u5411\u67F1\u6761\u989C\u8272\u8BBE\u7F6E\uFF0C\u4EE3\u8868\u8D1F\u503C\u7684\u989C\u8272\uFF0C\u540C\u67F1\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA4#97b552"},{name:"\u96F6\u503C\u67F1\u6761\u989C\u8272",detail:"\u96F6\u503C\u67F1\u6761\u989C\u8272\u8BBE\u7F6E\uFF0C\u4EE3\u88680\u503C\u989C\u8272\uFF0C\u540C\u67F1\u6761\u989C\u8272\u914D\u7F6E\uFF0C\u9ED8\u8BA4#999"},{name:"\u8272\u677F",detail:"\u8C03\u8272\u677F\u53EF\u4EE5\u5355\u72EC\u8BBE\u7F6E\u6BCF\u4E2A\u67F1\u6761\u7684\u989C\u8272\uFF0C\u53EF\u8BBE\u7F6E\u591A\u4E2A\uFF0C\u652F\u6301\u4E24\u79CD\u683C\u5F0F\uFF1A1\u989C\u8272\u4F8B\u5982#000\uFF0C\u4EE3\u8868\u7B2C\u4E00\u4E2A\u67F1\u7684\u989C\u8272\u662F\u9ED1\u8272\uFF1B2\u6570\u503C\u8303\u56F4:\u989C\u8272\uFF0C\u4F8B\u5982-2:#000\u8868\u793A\u6570\u503C\u4E3A-2\u7684\u67F1\u4E3A\u9ED1\u8272\uFF0C0-5:#000\u8868\u793A\u6570\u503C0-5\u7684\u67F1\u4E3A\u9ED1\u8272\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A"}]},PIESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u997C\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u6570\u636E\u5360\u6BD4",a:"\u751F\u6210\u5355\u5143\u683C\u997C\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u65CB\u8F6C\u89D2\u5EA6",detail:"\u997C\u56FE\u7684\u65CB\u8F6C\u89D2\u5EA6\uFF0C\u9ED8\u8BA4\u4E3A0"},{name:"\u997C\u56FE\u8FB9\u6846",detail:"\u997C\u56FE\u8FB9\u6846\u5927\u5C0F\uFF0C\u9ED8\u8BA4\u4E3A\u65E00"},{name:"\u8FB9\u6846\u989C\u8272",detail:"\u997C\u56FE\u8FB9\u6846\u989C\u8272\uFF0C\u9ED8\u8BA4\u4E3A#000"},{name:"\u997C\u56FE\u8272\u677F",detail:"\u8C03\u8272\u677F\u53EF\u4EE5\u8BBE\u7F6E\u5207\u7247\u7684\u989C\u8272\uFF0C\u53EF\u8BBE\u7F6E\u4E3AA1:A10\u7B49\u8303\u56F4\uFF0C\u9ED8\u8BA4\u4E3A#2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BOXSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u7BB1\u7EBF\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u6570\u636E\u96C6\u7684\u7EDF\u8BA1\u5206\u5E03",a:"\u751F\u6210\u5355\u5143\u683C\u7BB1\u7EBF\u56FE",p:[{name:"\u6570\u636E\u8303\u56F4",detail:"\u6570\u636E\u8303\u56F4\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C {1,2,3,4,5}\u7B49\u3002"},{name:"\u79BB\u7FA4\u70B9\u6BD4\u4F8B",detail:"\u79BB\u7FA4\u70B9\u7684\u9608\u503C\u8303\u56F4\uFF0C\u5982\u679C\u4E3A0\u6216false\u5219\u4E0D\u663E\u793A\uFF0C\u9ED8\u8BA4\u4E3A1.5\u500D"},{name:"\u76EE\u6807\u70B9\u503C",detail:"\u7BB1\u7EBF\u56FE\u4E0A\u7684\u76EE\u6807\u503C\u8BBE\u7F6E\uFF0C\u9ED8\u8BA4\u4E3Afalse\u4E0D\u663E\u793A"},{name:"\u6570\u636E\u70B9\u5927\u5C0F",detail:"\u76EE\u6807\u70B9\u548C\u79BB\u7FA4\u70B9\u7684\u534A\u5F84\u5927\u5C0F\u8BBE\u7F6E\uFF0C\u9ED8\u8BA4\u4E3A1.5"}]},BULLETSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5355\u5143\u683C\u5185\u7684\u5B50\u5F39\u56FEsparklines\uFF0C\u4E00\u822C\u7528\u4E8E\u63CF\u8FF0\u4EFB\u52A1\u8FBE\u6210\u7387",a:"\u751F\u6210\u5355\u5143\u683C\u5B50\u5F39\u56FE",p:[{name:"\u76EE\u6807",detail:"\u8FBE\u6210\u7684\u76EE\u6807\u503C\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1\uFF0C 100\u7B49\u3002"},{name:"\u5B9E\u9645\u5B8C\u6210",detail:"\u76EE\u524D\u5B8C\u6210\u503C\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1\uFF0C 100\u7B49\u3002"},{name:"\u5BF9\u6BD4\u503C",detail:"\u5BF9\u6BD4\u503C\uFF0C\u4F8B\u5982\u8D85\u989D\u3001\u6700\u4F4E\u3001\u83B7\u5956\u5E95\u7EBF\u7B49\uFF0C\u6570\u503C\u624D\u80FD\u88AB\u6709\u6548\u8BA1\u7B97\uFF0C\u4F8B\u5982A1\uFF0C 100\u7B49\u3002\u53EF\u4EE5\u8BBE\u7F6E\u6700\u591A9\u4E2A\u5BF9\u6BD4\u503C"}]},COMPOSESPLINES:{d:"\u652F\u6301\u591A\u4E2A\u7C7B\u578B\u7684\u56FE\u753B\u5728\u540C\u4E00\u4E2A\u5355\u5143\u683C,\u6BCF\u4E2A\u53C2\u6570\u4EE3\u8868\u4E00\u4E2Asparklines\u56FE",a:"\u7EC4\u5408sparklines\u56FE\u5230\u4E00\u4E2A\u5355\u5143\u683C",p:[{name:"\u56FE\u8BBE\u7F6E",detail:"sparklines\u56FE\u8BBE\u7F6E\uFF0C\u4F8B\u5982A1:A20\uFF0C \u4E00\u4E2A\u5B8C\u6210\u7684\u997C\u56FE\u3001\u7EBF\u56FE\u8BBE\u7F6E\u7B49\u3002"}]},SORT:{d:"\u8FD4\u56DE\u6570\u7EC4\u4E2D\u5143\u7D20\u7684\u6392\u5E8F\u6570\u7EC4\u3002\u8FD4\u56DE\u7684\u6570\u7EC4\u4E0E\u63D0\u4F9B\u7684\u6570\u7EC4\u53C2\u6570\u5F62\u72B6\u76F8\u540C\u3002",a:"\u8FD4\u56DE\u6570\u7EC4\u4E2D\u5143\u7D20\u7684\u6392\u5E8F\u6570\u7EC4\u3002\u8FD4\u56DE\u7684\u6570\u7EC4\u4E0E\u63D0\u4F9B\u7684\u6570\u7EC4\u53C2\u6570\u5F62\u72B6\u76F8\u540C\u3002",p:[{name:"array",detail:"\u8981\u6392\u5E8F\u7684\u8303\u56F4\u6216\u6570\u7EC4\u3002"},{name:"sort_index",detail:"[\u53EF\u9009] - \u8868\u793A\u8981\u6392\u5E8F\u7684\u884C\u6216\u5217\u7684\u6570\u5B57\u3002\uFF08\u9ED8\u8BA4row1/col1\uFF09"},{name:"sort_order",detail:"[\u53EF\u9009] - \u8868\u793A\u6240\u9700\u6392\u5E8F\u987A\u5E8F\u7684\u6570\u5B57\uFF1B1\u8868\u793A\u5347\u5E8F\uFF08\u9ED8\u8BA4\uFF09\uFF0C-1\u8868\u793A\u964D\u5E8F\u3002"},{name:"by_col",detail:"[\u53EF\u9009] - \u8868\u793A\u6240\u9700\u6392\u5E8F\u65B9\u5411\u7684\u903B\u8F91\u503C\uFF1B\u6309\u884C\u6392\u5E8F\u4E3AFALSE()\uFF08\u9ED8\u8BA4\uFF09\uFF0C\u6309\u5217\u6392\u5E8F\u4E3ATRUE()\u3002"}]},FILTER:{d:"\u57FA\u4E8E\u4E00\u4E2A\u5E03\u5C14\uFF08\u771F/\u5047\uFF09\u6570\u7EC4\u8FC7\u6EE4\u4E00\u4E2A\u6570\u7EC4\u3002",a:"\u57FA\u4E8E\u4E00\u4E2A\u5E03\u5C14\uFF08\u771F/\u5047\uFF09\u6570\u7EC4\u8FC7\u6EE4\u4E00\u4E2A\u6570\u7EC4\u3002",p:[{name:"array",detail:"\u8981\u7B5B\u9009\u7684\u6570\u7EC4\u6216\u8303\u56F4\u3002"},{name:"include",detail:"\u5E03\u5C14\u6570\u7EC4\uFF0C\u5176\u9AD8\u5EA6\u6216\u5BBD\u5EA6\u4E0E\u6570\u7EC4\u76F8\u540C"},{name:"if_empty",detail:"[\u53EF\u9009] - \u5982\u679C\u5305\u542B\u6570\u7EC4\u4E2D\u7684\u6240\u6709\u503C\u90FD\u4E3A\u7A7A(filter\u4E0D\u8FD4\u56DE\u4EFB\u4F55\u503C)\uFF0C\u5219\u8FD4\u56DE\u7684\u503C\u3002"}]},UNIQUE:{d:"\u8FD4\u56DE\u5217\u8868\u6216\u533A\u57DF\u4E2D\u7684\u552F\u4E00\u503C\u7684\u5217\u8868\u3002",a:"\u8FD4\u56DE\u5217\u8868\u6216\u533A\u57DF\u4E2D\u7684\u552F\u4E00\u503C\u7684\u5217\u8868\u3002",p:[{name:"array",detail:"\u4ECE\u5176\u8FD4\u56DE\u552F\u4E00\u503C\u7684\u6570\u7EC4\u6216\u533A\u57DF\u3002"},{name:"by_col",detail:"[\u53EF\u9009] - \u903B\u8F91\u503C\uFF0C\u6307\u793A\u5982\u4F55\u6BD4\u8F83\uFF1B\u6309\u884C = FALSE() \u6216\u7701\u7565\uFF1B\u6309\u5217 = TRUE()\u3002"},{name:"occurs_once",detail:"[\u53EF\u9009] - \u903B\u8F91\u503C\uFF0C\u4EC5\u8FD4\u56DE\u552F\u4E00\u503C\u4E2D\u51FA\u73B0\u4E00\u6B21 = TRUE()\uFF1B\u5305\u62EC\u6240\u6709\u552F\u4E00\u503C = FALSE() \u6216\u7701\u7565\u3002"}]},RANDARRAY:{d:"\u8FD4\u56DE 0 \u5230 1 \u4E4B\u95F4\u7684\u968F\u673A\u6570\u5B57\u6570\u7EC4\u3002",a:"\u8FD4\u56DE 0 \u5230 1 \u4E4B\u95F4\u7684\u968F\u673A\u6570\u5B57\u6570\u7EC4\u3002",p:[{name:"rows",detail:"[\u53EF\u9009] - \u8981\u8FD4\u56DE\u7684\u884C\u6570\u3002"},{name:"cols",detail:"[\u53EF\u9009] - \u8981\u8FD4\u56DE\u7684\u5217\u6570\u3002"}]},SEQUENCE:{d:"\u751F\u6210\u6570\u5B57\u5E8F\u5217\u7684\u5217\u8868\u3002",a:"\u751F\u6210\u6570\u5B57\u5E8F\u5217\u7684\u5217\u8868\u3002",p:[{name:"rows",detail:"\u8981\u8FD4\u56DE\u7684\u884C\u6570\u3002"},{name:"cols",detail:"[\u53EF\u9009] - \u8981\u8FD4\u56DE\u7684\u5217\u6570\u3002"},{name:"start",detail:"[\u53EF\u9009] - \u5E8F\u5217\u4E2D\u7684\u7B2C\u4E00\u4E2A\u6570\u5B57\u3002"},{name:"step",detail:"[\u53EF\u9009] - \u5E8F\u5217\u4E2D\u6BCF\u4E2A\u5E8F\u5217\u503C\u7684\u589E\u91CF\u3002"}]},EVALUATE:{d:"\u5BF9\u4EE5\u6587\u5B57\u8868\u793A\u7684\u516C\u5F0F\u6216\u8005\u8868\u8FBE\u5F0F\u6C42\u503C\uFF0C\u5E76\u8FD4\u56DE\u7ED3\u679C\u3002",a:"\u6839\u636E\u6587\u5B57\u516C\u5F0F\u6216\u8005\u8868\u8FBE\u5F0F\u6C42\u503C\u3002",p:[{name:"\u516C\u5F0F",detail:"\u516C\u5F0F\u6216\u8868\u8FBE\u5F0F"}]},REMOTE:{d:"Calls a function on a remote server",a:"Calls a function on a remote back end server/API.",p:[{name:"remote_expression",detail:"Formula"}]}},toolbar:{undo:"\u64A4\u9500",redo:"\u91CD\u505A",paintFormat:"\u683C\u5F0F\u5237",currencyFormat:"\u8D27\u5E01\u683C\u5F0F",percentageFormat:"\u767E\u5206\u6BD4\u683C\u5F0F",numberDecrease:"\u51CF\u5C11\u5C0F\u6570\u4F4D\u6570",numberIncrease:"\u589E\u52A0\u5C0F\u6570\u4F4D\u6570",moreFormats:"\u66F4\u591A\u683C\u5F0F",font:"\u5B57\u4F53",fontSize:"\u5B57\u53F7\u5927\u5C0F",bold:"\u7C97\u4F53 (Ctrl+B)",italic:"\u659C\u4F53 (Ctrl+I)",strikethrough:"\u5220\u9664\u7EBF (Alt+Shift+5)",underline:"\u4E0B\u5212\u7EBF",textColor:"\u6587\u672C\u989C\u8272",chooseColor:"\u989C\u8272\u9009\u62E9",resetColor:"\u91CD\u7F6E\u989C\u8272",customColor:"\u81EA\u5B9A\u4E49",alternatingColors:"\u4EA4\u66FF\u989C\u8272",confirmColor:"\u786E\u5B9A\u989C\u8272",cancelColor:"\u53D6\u6D88",collapse:"\u6536\u8D77",fillColor:"\u5355\u5143\u683C\u989C\u8272",border:"\u8FB9\u6846",borderStyle:"\u8FB9\u6846\u7C7B\u578B",mergeCell:"\u5408\u5E76\u5355\u5143\u683C",chooseMergeType:"\u9009\u62E9\u5408\u5E76\u7C7B\u578B",horizontalAlign:"\u6C34\u5E73\u5BF9\u9F50",verticalAlign:"\u5782\u76F4\u5BF9\u9F50",alignment:"\u5BF9\u9F50\u65B9\u5F0F",textWrap:"\u6587\u672C\u6362\u884C",textWrapMode:"\u6362\u884C\u65B9\u5F0F",textRotate:"\u6587\u672C\u65CB\u8F6C",textRotateMode:"\u65CB\u8F6C\u65B9\u5F0F",freezeTopRow:"\u51BB\u7ED3\u7B2C\u4E00\u884C",sortAndFilter:"\u6392\u5E8F\u548C\u7B5B\u9009",findAndReplace:"\u67E5\u627E\u66FF\u6362",sum:"\u6C42\u548C",autoSum:"\u81EA\u52A8\u6C42\u548C",moreFunction:"\u66F4\u591A\u51FD\u6570",conditionalFormat:"\u6761\u4EF6\u683C\u5F0F",postil:"\u6279\u6CE8",pivotTable:"\u6570\u636E\u900F\u89C6\u8868",chart:"\u56FE\u8868",screenshot:"\u622A\u56FE",splitColumn:"\u5206\u5217",insertImage:"\u63D2\u5165\u56FE\u7247",exportXlsx:"\u5BFC\u51FAXlsx",insertLink:"\u63D2\u5165\u94FE\u63A5",dataVerification:"\u6570\u636E\u9A8C\u8BC1",protection:"\u4FDD\u62A4\u5DE5\u4F5C\u8868\u5185\u5BB9",clearText:"\u6E05\u9664\u989C\u8272\u9009\u62E9",noColorSelectedText:"\u6CA1\u6709\u989C\u8272\u88AB\u9009\u62E9",toolMore:"\u66F4\u591A",toolLess:"\u5C11\u4E8E",toolClose:"\u6536\u8D77",toolMoreTip:"\u66F4\u591A\u529F\u80FD",moreOptions:"\u66F4\u591A\u9009\u9879",cellFormat:"\u8BBE\u7F6E\u5355\u5143\u683C\u683C\u5F0F",print:"\u6253\u5370"},alternatingColors:{applyRange:"\u5E94\u7528\u8303\u56F4",selectRange:"\u9009\u62E9\u5E94\u7528\u8303\u56F4",header:"\u9875\u7709",footer:"\u9875\u811A",errorInfo:"\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF\uFF0C\u7136\u540E\u518D\u8BD5",textTitle:"\u683C\u5F0F\u6837\u5F0F",custom:"\u81EA\u5B9A\u4E49",close:"\u5173\u95ED",selectionTextColor:"\u9009\u62E9\u6587\u672C\u989C\u8272",selectionCellColor:"\u9009\u62E9\u5355\u5143\u683C\u989C\u8272",removeColor:"\u79FB\u9664\u4EA4\u66FF\u989C\u8272",colorShow:"\u989C\u8272",currentColor:"\u5F53\u524D\u989C\u8272",tipSelectRange:"\u8BF7\u9009\u62E9\u4EA4\u66FF\u989C\u8272\u5E94\u7528\u8303\u56F4",errorNoRange:"\u60A8\u9009\u62E9\u7684\u5E94\u7528\u8303\u56F4\u4E0D\u662F\u9009\u533A\uFF01",errorExistColors:"\u60A8\u9009\u62E9\u7684\u5E94\u7528\u8303\u56F4\u5DF2\u5B58\u5728\u4EA4\u66FF\u989C\u8272\u4E14\u4E0D\u5C5E\u4E8E\u4F60\u8981\u7F16\u8F91\u7684\u5E94\u7528\u8303\u56F4\uFF01"},button:{confirm:"\u786E\u5B9A",cancel:"\u53D6\u6D88",close:"\u5173\u95ED",update:"\u66F4\u65B0",delete:"\u5220\u9664",insert:"\u65B0\u5EFA",prevPage:"\u4E0A\u4E00\u9875",nextPage:"\u4E0B\u4E00\u9875",total:"\u603B\u5171\uFF1A"},paint:{start:"\u683C\u5F0F\u5237\u5F00\u542F",end:"ESC\u952E\u9000\u51FA",tipSelectRange:"\u8BF7\u9009\u62E9\u9700\u8981\u590D\u5236\u683C\u5F0F\u7684\u533A\u57DF",tipNotMulti:"\u65E0\u6CD5\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C"},format:{moreCurrency:"\u66F4\u591A\u8D27\u5E01\u683C\u5F0F",moreDateTime:"\u66F4\u591A\u65E5\u671F\u4E0E\u65F6\u95F4\u683C\u5F0F",moreNumber:"\u66F4\u591A\u6570\u5B57\u683C\u5F0F",titleCurrency:"\u8D27\u5E01\u683C\u5F0F",decimalPlaces:"\u5C0F\u6570\u4F4D\u6570",titleDateTime:"\u65E5\u671F\u4E0E\u65F6\u95F4\u683C\u5F0F",titleNumber:"\u6570\u5B57\u683C\u5F0F"},info:{detailUpdate:"\u65B0\u6253\u5F00",detailSave:"\u5DF2\u6062\u590D\u672C\u5730\u7F13\u5B58",row:"\u884C",column:"\u5217",loading:"\u6E32\u67D3\u4E2D\xB7\xB7\xB7",copy:"\u526F\u672C",return:"\u8FD4\u56DE",rename:"\u91CD\u547D\u540D",tips:"\u8868\u683C\u91CD\u547D\u540D",noName:"\u65E0\u6807\u9898\u7684\u7535\u5B50\u8868\u683C",wait:"\u5F85\u66F4\u65B0",add:"\u6DFB\u52A0",addLast:"\u5728\u5E95\u90E8\u6DFB\u52A0",backTop:"\u56DE\u5230\u9876\u90E8",pageInfo:"\u5171${total}\u6761\uFF0C${totalPage}\u9875\uFF0C\u5F53\u524D\u5DF2\u663E\u793A${currentPage}\u9875",nextPage:"\u4E0B\u4E00\u9875",tipInputNumber:"\u8BF7\u8F93\u5165\u6570\u5B57",tipInputNumberLimit:"\u589E\u52A0\u8303\u56F4\u9650\u5236\u57281-100",tipRowHeightLimit:"\u884C\u9AD8\u5FC5\u987B\u57280 ~ 545\u4E4B\u95F4",tipColumnWidthLimit:"\u5217\u5BBD\u5FC5\u987B\u57280 ~ 2038\u4E4B\u95F4",pageInfoFull:"\u5171${total}\u6761\uFF0C${totalPage}\u9875\uFF0C\u5DF2\u663E\u793A\u5168\u90E8\u6570\u636E"},currencyDetail:{RMB:"\u4EBA\u6C11\u5E01",USdollar:"\u7F8E\u5143",EUR:"\u6B27\u5143",GBP:"\u82F1\u9551",HK:"\u6E2F\u5143",JPY:"\u65E5\u5143",AlbanianLek:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u5217\u514B",AlgerianDinar:"\u963F\u5C14\u53CA\u5229\u4E9A\u7B2C\u7EB3\u5C14",Afghani:"\u963F\u5BCC\u6C57\u5C3C",ArgentinePeso:"\u963F\u6839\u5EF7\u6BD4\u7D22",UnitedArabEmiratesDirham:"\u963F\u62C9\u4F2F\u8054\u5408\u914B\u957F\u56FD\u8FEA\u62C9\u59C6",ArubanFlorin:"\u963F\u9C81\u5DF4\u5F17\u7F57\u6797",OmaniRial:"\u963F\u66FC\u91CC\u4E9A\u5C14",Azerbaijanimanat:"\u963F\u585E\u62DC\u7586\u9A6C\u7EB3\u7279",EgyptianPound:"\u57C3\u53CA\u9551",EthiopianBirr:"\u57C3\u585E\u4FC4\u6BD4\u4E9A\u6BD4\u5C14",AngolaKwanza:"\u5B89\u54E5\u62C9\u5BBD\u624E",AustralianDollar:"\u6FB3\u5927\u5229\u4E9A\u5143",Patacas:"\u6FB3\u95E8\u5143",BarbadosDollar:"\u5DF4\u5DF4\u591A\u65AF\u5143",PapuaNewGuineaKina:"\u5DF4\u5E03\u4E9A\u65B0\u51E0\u5185\u4E9A\u57FA\u90A3",BahamianDollar:"\u5DF4\u54C8\u9A6C\u5143",PakistanRupee:"\u5DF4\u57FA\u65AF\u5766\u5362\u6BD4",ParaguayanGuarani:"\u5DF4\u62C9\u572D\u74DC\u62C9\u5C3C",BahrainiDinar:"\u5DF4\u6797\u7B2C\u7EB3\u5C14",PanamanianBalboa:"\u5DF4\u62FF\u9A6C\u5DF4\u6CE2\u4E9A",Brazilianreal:"\u5DF4\u897F\u91CC\u4E9A\u4F0A",Belarusianruble:"\u767D\u4FC4\u7F57\u65AF\u5362\u5E03",BermudianDollar:"\u767E\u6155\u5927\u5143",BulgarianLev:"\u4FDD\u52A0\u5229\u4E9A\u5217\u5F17",IcelandKrona:"\u51B0\u5C9B\u514B\u6717",BosniaHerzegovinaConvertibleMark:"\u6CE2\u9ED1\u53EF\u5151\u6362\u9A6C\u514B",PolishZloty:"\u6CE2\u5170\u5179\u7F57\u63D0",Boliviano:"\u73BB\u5229\u7EF4\u4E9A\u8BFA",BelizeDollar:"\u4F2F\u5229\u5179\u5143",BotswanaPula:"\u535A\u8328\u74E6\u7EB3\u666E\u62C9",NotDannuzhamu:"\u4E0D\u4E39\u52AA\u624E\u59C6",BurundiFranc:"\u5E03\u9686\u8FEA\u6CD5\u90CE",NorthKoreanWon:"\u671D\u9C9C\u5706",DanishKrone:"\u4E39\u9EA6\u514B\u6717",EastCaribbeanDollar:"\u4E1C\u52A0\u52D2\u6BD4\u5143",DominicaPeso:"\u591A\u7C73\u5C3C\u52A0\u6BD4\u7D22",RussianRuble:"\u4FC4\u56FD\u5362\u5E03",EritreanNakfa:"\u5384\u7ACB\u7279\u91CC\u4E9A\u7EB3\u514B\u6CD5",CFAfranc:"\u975E\u6D32\u91D1\u878D\u5171\u540C\u4F53\u6CD5\u90CE",PhilippinePeso:"\u83F2\u5F8B\u5BBE\u6BD4\u7D22",FijiDollar:"\u6590\u6D4E\u5143",CapeVerdeEscudo:"\u4F5B\u5F97\u89D2\u57C3\u65AF\u5E93\u591A",FalklandIslandsPound:"\u798F\u514B\u5170\u7FA4\u5C9B\u9551",GambianDalasi:"\u5188\u6BD4\u4E9A\u8FBE\u62C9\u897F",Congolesefranc:"\u521A\u679C\u6CD5\u90CE",ColombianPeso:"\u54E5\u4F26\u6BD4\u4E9A\u6BD4\u7D22",CostaRicanColon:"\u54E5\u65AF\u8FBE\u9ECE\u52A0\u79D1\u6717",CubanPeso:"\u53E4\u5DF4\u6BD4\u7D22",Cubanconvertiblepeso:"\u53E4\u5DF4\u53EF\u5151\u6362\u6BD4\u7D22",GuyanaDollar:"\u572D\u4E9A\u90A3\u5143",KazakhstanTenge:"\u54C8\u8428\u514B\u65AF\u5766\u575A\u6208",Haitiangourde:"\u6D77\u5730\u53E4\u5FB7",won:"\u97E9\u5143",NetherlandsAntillesGuilder:"\u8377\u5C5E\u5B89\u7684\u5217\u65AF\u76FE",Honduraslempiras:"\u6D2A\u90FD\u62C9\u65AF\u62C9\u4F26\u76AE\u62C9",DjiboutiFranc:"\u5409\u5E03\u63D0\u6CD5\u90CE",KyrgyzstanSom:"\u5409\u5C14\u5409\u65AF\u65AF\u5766\u7D22\u59C6",GuineaFranc:"\u51E0\u5185\u4E9A\u6CD5\u90CE",CanadianDollar:"\u52A0\u62FF\u5927\u5143",GhanaianCedi:"\u52A0\u7EB3\u585E\u5730",Cambodianriel:"\u67EC\u57D4\u5BE8\u745E\u5C14",CzechKoruna:"\u6377\u514B\u514B\u6717",ZimbabweDollar:"\u6D25\u5DF4\u5E03\u97E6\u5143",QatariRiyal:"\u5361\u5854\u5C14\u91CC\u4E9A\u5C14",CaymanIslandsDollar:"\u5F00\u66FC\u7FA4\u5C9B\u5143",Comorianfranc:"\u79D1\u6469\u7F57\u6CD5\u90CE",KuwaitiDinar:"\u79D1\u5A01\u7279\u7B2C\u7EB3\u5C14",CroatianKuna:"\u514B\u7F57\u5730\u4E9A\u5E93\u7EB3",KenyanShilling:"\u80AF\u5C3C\u4E9A\u5148\u4EE4",LesothoLoti:"\u83B1\u7D22\u6258\u6D1B\u8482",LaoKip:"\u8001\u631D\u57FA\u666E",LebanesePound:"\u9ECE\u5DF4\u5AE9\u9551",Lithuanianlitas:"\u7ACB\u9676\u5B9B\u7ACB\u7279",LibyanDinar:"\u5229\u6BD4\u4E9A\u7B2C\u7EB3\u5C14",LiberianDollar:"\u5229\u6BD4\u4E9A\u5143",RwandaFranc:"\u5362\u65FA\u8FBE\u6CD5\u90CE",RomanianLeu:"\u7F57\u9A6C\u5C3C\u4E9A\u5217\u4F0A",MalagasyAriary:"\u9A6C\u8FBE\u52A0\u65AF\u52A0\u963F\u91CC\u4E9A\u91CC",MaldivianRufiyaa:"\u9A6C\u5C14\u4EE3\u592B\u62C9\u83F2\u4E9A",MalawiKwacha:"\u9A6C\u62C9\u7EF4\u514B\u74E6\u67E5",MalaysianRinggit:"\u9A6C\u6765\u897F\u4E9A\u6797\u5409\u7279",MacedoniawearingDinar:"\u9A6C\u5176\u987F\u6234\u7B2C\u7EB3\u5C14",MauritiusRupee:"\u6BDB\u91CC\u6C42\u65AF\u5362\u6BD4",MauritanianOuguiya:"\u6BDB\u91CC\u5854\u5C3C\u4E9A\u4E4C\u5409\u4E9A",MongolianTugrik:"\u8499\u53E4\u56FE\u683C\u91CC\u514B",BangladeshiTaka:"\u5B5F\u52A0\u62C9\u5854\u5361",PeruvianNuevoSol:"\u79D8\u9C81\u65B0\u7D22\u5C14",MyanmarKyat:"\u7F05\u7538\u5F00\u4E9A\u7279",MoldovanLeu:"\u6469\u5C14\u591A\u74E6\u5217\u4F0A",MoroccanDirham:"\u6469\u6D1B\u54E5\u8FEA\u62C9\u59C6",MozambiqueMetical:"\u83AB\u6851\u6BD4\u514B\u6885\u8482\u5361\u5C14",MexicanPeso:"\u58A8\u897F\u54E5\u6BD4\u7D22",NamibianDollar:"\u7EB3\u7C73\u6BD4\u4E9A\u5143",SouthAfricanRand:"\u5357\u975E\u5170\u7279",SouthSudanesePound:"\u5357\u82CF\u4E39\u9551",NicaraguaCordoba:"\u5C3C\u52A0\u62C9\u74DC\u79D1\u591A\u5DF4",NepaleseRupee:"\u5C3C\u6CCA\u5C14\u5362\u6BD4",NigerianNaira:"\u5C3C\u65E5\u5229\u4E9A\u5948\u62C9",NorwegianKrone:"\u632A\u5A01\u514B\u6717",GeorgianLari:"\u4E54\u6CBB\u4E9A\u62C9\u745E",RMBOffshore:"\u4EBA\u6C11\u5E01\uFF08\u79BB\u5CB8\uFF09",SwedishKrona:"\u745E\u5178\u514B\u6717",SwissFranc:"\u745E\u58EB\u6CD5\u90CE",SerbianDinar:"\u585E\u5C14\u7EF4\u4E9A\u7B2C\u7EB3\u5C14",SierraLeone:"\u585E\u62C9\u5229\u6602\u5229\u6602",SeychellesRupee:"\u585E\u820C\u5C14\u5362\u6BD4",SaudiRiyal:"\u6C99\u7279\u91CC\u4E9A\u5C14",SaoTomeDobra:"\u5723\u591A\u7F8E\u591A\u5E03\u62C9",SaintHelenapound:"\u5723\u8D6B\u52D2\u62FF\u7FA4\u5C9B\u78C5",SriLankaRupee:"\u65AF\u91CC\u5170\u5361\u5362\u6BD4",SwazilandLilangeni:"\u65AF\u5A01\u58EB\u5170\u91CC\u5170\u5409\u5C3C",SudanesePound:"\u82CF\u4E39\u9551",Surinamesedollar:"\u82CF\u91CC\u5357\u5143",SolomonIslandsDollar:"\u6240\u7F57\u95E8\u7FA4\u5C9B\u5143",SomaliShilling:"\u7D22\u9A6C\u91CC\u5148\u4EE4",TajikistanSomoni:"\u5854\u5409\u514B\u65AF\u5766\u7D22\u83AB\u5C3C",PacificFranc:"\u592A\u5E73\u6D0B\u6CD5\u90CE",ThaiBaht:"\u6CF0\u56FD\u94E2",TanzanianShilling:"\u5766\u6851\u5C3C\u4E9A\u5148\u4EE4",TonganPaanga:"\u6C64\u52A0\u6F58\u52A0",TrinidadandTobagoDollar:"\u7279\u7ACB\u5C3C\u8FBE\u548C\u591A\u5DF4\u54E5\u5143",TunisianDinar:"\u7A81\u5C3C\u65AF\u7B2C\u7EB3\u5C14",TurkishLira:"\u571F\u8033\u5176\u91CC\u62C9",VanuatuVatu:"\u74E6\u52AA\u963F\u56FE\u74E6\u56FE",GuatemalanQuetzal:"\u5371\u5730\u9A6C\u62C9\u683C\u67E5\u5C14",CommissionBolivar:"\u59D4\u5185\u745E\u62C9\u535A\u5229\u74E6",BruneiDollar:"\u6587\u83B1\u5143",UgandanShilling:"\u4E4C\u5E72\u8FBE\u5148\u4EE4",UkrainianHryvnia:"\u4E4C\u514B\u5170\u683C\u91CC\u592B\u5C3C\u4E9A",UruguayanPeso:"\u4E4C\u62C9\u572D\u6BD4\u7D22",Uzbekistansom:"\u4E4C\u5179\u522B\u514B\u65AF\u5766\u82CF\u59C6",WesternSamoaTala:"\u897F\u8428\u6469\u4E9A\u5854\u62C9",SingaporeDollar:"\u65B0\u52A0\u5761\u5143",NT:"\u65B0\u53F0\u5E01",NewZealandDollar:"\u65B0\u897F\u5170\u5143",HungarianForint:"\u5308\u7259\u5229\u798F\u6797",SyrianPound:"\u53D9\u5229\u4E9A\u9551",JamaicanDollar:"\u7259\u4E70\u52A0\u5143",ArmenianDram:"\u4E9A\u7F8E\u5C3C\u4E9A\u5FB7\u62C9\u59C6",YemeniRial:"\u4E5F\u95E8\u91CC\u4E9A\u5C14",IraqiDinar:"\u4F0A\u62C9\u514B\u7B2C\u7EB3\u5C14",IranianRial:"\u4F0A\u6717\u91CC\u4E9A\u5C14",NewIsraeliShekel:"\u4EE5\u8272\u5217\u65B0\u8C22\u514B\u5C14",IndianRupee:"\u5370\u5EA6\u5362\u6BD4",IndonesianRupiah:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u5362\u6BD4",JordanianDinar:"\u7EA6\u65E6\u7B2C\u7EB3\u5C14",VND:"\u8D8A\u5357\u76FE",ZambianKwacha:"\u8D5E\u6BD4\u4E9A\u514B\u74E6\u67E5",GibraltarPound:"\u76F4\u5E03\u7F57\u9640\u9551",ChileanPeso:"\u667A\u5229\u6BD4\u7D22",CFAFrancBEAC:"\u4E2D\u975E\u91D1\u878D\u5408\u4F5C\u6CD5\u90CE"},defaultFmt:[{text:"\u81EA\u52A8",value:"General",example:""},{text:"\u7EAF\u6587\u672C",value:"@",example:""},{text:"",value:"split",example:""},{text:"\u6570\u5B57",value:"##0.00",example:"1000.12"},{text:"\u767E\u5206\u6BD4",value:"#0.00%",example:"12.21%"},{text:"\u79D1\u5B66\u8BA1\u6570",value:"0.00E+00",example:"1.01E+5"},{text:"",value:"split",example:""},{text:"\u4F1A\u8BA1",value:"\xA5(0.00)",example:"\xA5(1200.09)"},{text:"\u4E07\u5143",value:"w",example:"1\u4EBF2000\u4E072500"},{text:"\u8D27\u5E01",value:"\xA50.00",example:"\xA51200.09"},{text:"\u4E07\u51432\u4F4D\u5C0F\u6570",value:"w0.00",example:"2\u4E072500.55"},{text:"",value:"split",example:""},{text:"\u65E5\u671F",value:"yyyy-MM-dd",example:"2017-11-29"},{text:"\u65F6\u95F4",value:"hh:mm AM/PM",example:"3:00 PM"},{text:"\u65F6\u95F424H",value:"hh:mm",example:"15:00"},{text:"\u65E5\u671F\u65F6\u95F4",value:"yyyy-MM-dd hh:mm AM/PM",example:"2017-11-29 3:00 PM"},{text:"\u65E5\u671F\u65F6\u95F424H",value:"yyyy-MM-dd hh:mm",example:"2017-11-29 15:00"},{text:"",value:"split",example:""},{text:"\u81EA\u5B9A\u4E49\u683C\u5F0F",value:"fmtOtherSelf",example:"more"}],dateFmtList:[{name:"1930-08-05",value:"yyyy-MM-dd"},{name:"1930/8/5",value:"yyyy/MM/dd"},{name:"1930\u5E748\u67085\u65E5",value:'yyyy"\u5E74"M"\u6708"d"\u65E5"'},{name:"08-05",value:"MM-dd"},{name:"8-5",value:"M-d"},{name:"8\u67085\u65E5",value:'M"\u6708"d"\u65E5"'},{name:"13:30:30",value:"h:mm:ss"},{name:"13:30",value:"h:mm"},{name:"\u4E0B\u534801:30",value:"\u4E0A\u5348/\u4E0B\u5348 hh:mm"},{name:"\u4E0B\u53481:30",value:"\u4E0A\u5348/\u4E0B\u5348 h:mm"},{name:"\u4E0B\u53481:30:30",value:"\u4E0A\u5348/\u4E0B\u5348 h:mm:ss"},{name:"08-05 \u4E0B\u534801:30",value:"MM-dd \u4E0A\u5348/\u4E0B\u5348 hh:mm"}],fontFamily:{MicrosoftYaHei:"Microsoft YaHei"},fontarray:["Times New Roman","Arial","Tahoma","Verdana","\u5FAE\u8F6F\u96C5\u9ED1","\u5B8B\u4F53","\u9ED1\u4F53","\u6977\u4F53","\u4EFF\u5B8B","\u65B0\u5B8B\u4F53","\u534E\u6587\u65B0\u9B4F","\u534E\u6587\u884C\u6977","\u534E\u6587\u96B6\u4E66"],fontjson:{"times new roman":0,arial:1,tahoma:2,verdana:3,\u5FAE\u8F6F\u96C5\u9ED1:4,"microsoft yahei":4,\u5B8B\u4F53:5,simsun:5,\u9ED1\u4F53:6,simhei:6,\u6977\u4F53:7,kaiti:7,\u4EFF\u5B8B:8,fangsong:8,\u65B0\u5B8B\u4F53:9,nsimsun:9,\u534E\u6587\u65B0\u9B4F:10,stxinwei:10,\u534E\u6587\u884C\u6977:11,stxingkai:11,\u534E\u6587\u96B6\u4E66:12,stliti:12},border:{borderTop:"\u4E0A\u6846\u7EBF",borderBottom:"\u4E0B\u6846\u7EBF",borderLeft:"\u5DE6\u6846\u7EBF",borderRight:"\u53F3\u6846\u7EBF",borderNone:"\u65E0",borderAll:"\u6240\u6709",borderOutside:"\u5916\u4FA7",borderInside:"\u5185\u4FA7",borderHorizontal:"\u5185\u4FA7\u6A2A\u7EBF",borderVertical:"\u5185\u4FA7\u7AD6\u7EBF",borderColor:"\u8FB9\u6846\u989C\u8272",borderSize:"\u8FB9\u6846\u7C97\u7EC6"},merge:{mergeAll:"\u5168\u90E8\u5408\u5E76",mergeV:"\u5782\u76F4\u5408\u5E76",mergeH:"\u6C34\u5E73\u5408\u5E76",mergeCancel:"\u53D6\u6D88\u5408\u5E76",overlappingError:"\u4E0D\u80FD\u5408\u5E76\u91CD\u53E0\u533A\u57DF",partiallyError:"\u65E0\u6CD5\u5BF9\u90E8\u5206\u5408\u5E76\u5355\u5143\u683C\u6267\u884C\u6B64\u64CD\u4F5C"},align:{left:"\u5DE6\u5BF9\u9F50",center:"\u4E2D\u95F4\u5BF9\u9F50",right:"\u53F3\u5BF9\u9F50",top:"\u9876\u90E8\u5BF9\u9F50",middle:"\u5C45\u4E2D\u5BF9\u9F50",bottom:"\u5E95\u90E8\u5BF9\u9F50"},textWrap:{overflow:"\u6EA2\u51FA",wrap:"\u81EA\u52A8\u6362\u884C",clip:"\u622A\u65AD"},rotation:{none:"\u65E0\u65CB\u8F6C",angleup:"\u5411\u4E0A\u503E\u659C",angledown:"\u5411\u4E0B\u503E\u659C",vertical:"\u7AD6\u6392\u6587\u5B57",rotationUp:"\u5411\u4E0A90\xB0",rotationDown:"\u5411\u4E0B90\xB0"},freezen:{default:"\u51BB\u7ED3\u7B2C\u4E00\u884C",freezenRow:"\u51BB\u7ED3\u7B2C\u4E00\u884C",freezenColumn:"\u51BB\u7ED3\u7B2CA\u5217",freezenRC:"\u51BB\u7ED3\u7B2C\u4E00\u884C\u7B2CA\u5217",freezenRowRange:"\u51BB\u7ED3\u884C\u5230\u9009\u533A",freezenColumnRange:"\u51BB\u7ED3\u5217\u5230\u9009\u533A",freezenRCRange:"\u51BB\u7ED3\u884C\u5217\u5230\u9009\u533A",freezenCancel:"\u53D6\u6D88\u51BB\u7ED3",noSeletionError:"\u6CA1\u6709\u9009\u533A",rangeRCOverErrorTitle:"\u51BB\u7ED3\u63D0\u9192",rangeRCOverError:"\u51BB\u7ED3\u7A97\u683C\u8D85\u8FC7\u53EF\u89C1\u8303\u56F4\uFF0C\u4F1A\u5BFC\u81F4\u65E0\u6CD5\u6B63\u5E38\u64CD\u4F5C\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E\u51BB\u7ED3\u533A\u57DF\u3002"},sort:{asc:"\u5347\u5E8F",desc:"\u964D\u5E8F",custom:"\u81EA\u5B9A\u4E49\u6392\u5E8F",hasTitle:"\u6570\u636E\u5177\u6709\u6807\u9898\u884C",sortBy:"\u6392\u5E8F\u4F9D\u636E",addOthers:"\u6DFB\u52A0\u5176\u4ED6\u6392\u5E8F\u5217",close:"\u5173\u95ED",confirm:"\u6392\u5E8F",columnOperation:"\u5217",secondaryTitle:"\u6B21\u8981\u6392\u5E8F",sortTitle:"\u6392\u5E8F\u8303\u56F4",sortRangeTitle:"\u6392\u5E8F\u8303\u56F4\u4ECE",sortRangeTitleTo:"\u5230",noRangeError:"\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF\uFF0C\u7136\u540E\u518D\u8BD5",mergeError:"\u9009\u533A\u6709\u5408\u5E76\u5355\u5143\u683C\uFF0C\u65E0\u6CD5\u6267\u884C\u6B64\u64CD\u4F5C\uFF01",columnSortMergeError:"\u5217\u6392\u5E8F\u4F1A\u6269\u5C55\u81F3\u6574\u4E2A\u8868\u683C\u9009\u533A\uFF0C\u9009\u533A\u6709\u5408\u5E76\u5355\u5143\u683C\uFF0C\u65E0\u6CD5\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u529F\u80FD\u680F\u6392\u5E8F\u529F\u80FD\uFF01"},filter:{filter:"\u7B5B\u9009",clearFilter:"\u6E05\u9664\u7B5B\u9009",sortByAsc:"\u4EE5A-Z\u5347\u5E8F\u6392\u5217",sortByDesc:"\u4EE5Z-A\u964D\u5E8F\u6392\u5217",filterByColor:"\u6309\u989C\u8272\u7B5B\u9009",filterByCondition:"\u6309\u6761\u4EF6\u8FC7\u6EE4",filterByValues:"\u6309\u503C\u8FC7\u6EE4",filiterInputNone:"\u65E0",filiterInputTip:"\u8F93\u5165\u7B5B\u9009\u503C",filiterRangeStart:"\u4ECE",filiterRangeStartTip:"\u8303\u56F4\u5F00\u59CB",filiterRangeEnd:"\u5230",filiterRangeEndTip:"\u8303\u56F4\u7ED3\u675F",filterValueByAllBtn:"\u5168\u9009",filterValueByClearBtn:"\u6E05\u9664",filterValueByInverseBtn:"\u53CD\u9009",filterValueByTip:"\u6309\u7167\u503C\u8FDB\u884C\u7B5B\u9009",filterConform:"\u786E \u8BA4",filterCancel:"\u53D6 \u6D88",conditionNone:"\u65E0",conditionCellIsNull:"\u5355\u5143\u683C\u4E3A\u7A7A",conditionCellNotNull:"\u5355\u5143\u683C\u6709\u6570\u636E",conditionCellTextContain:"\u6587\u672C\u5305\u542B",conditionCellTextNotContain:"\u6587\u672C\u4E0D\u5305\u542B",conditionCellTextStart:"\u6587\u672C\u5F00\u5934\u4E3A",conditionCellTextEnd:"\u6587\u672C\u7ED3\u5C3E\u4E3A",conditionCellTextEqual:"\u6587\u672C\u7B49\u4E8E",conditionCellDateEqual:"\u65E5\u671F\u7B49\u4E8E",conditionCellDateBefore:"\u65E5\u671F\u65E9\u4E8E",conditionCellDateAfter:"\u65E5\u671F\u665A\u4E8E",conditionCellGreater:"\u5927\u4E8E",conditionCellGreaterEqual:"\u5927\u4E8E\u7B49\u4E8E",conditionCellLess:"\u5C0F\u4E8E",conditionCellLessEqual:"\u5C0F\u4E8E\u7B49\u4E8E",conditionCellEqual:"\u7B49\u4E8E",conditionCellNotEqual:"\u4E0D\u7B49\u4E8E",conditionCellBetween:"\u4ECB\u4E8E",conditionCellNotBetween:"\u4E0D\u5728\u5176\u4E2D",filiterMoreDataTip:"\u6570\u636E\u91CF\u5927\uFF01\u8BF7\u7A0D\u540E",filiterMonthText:"\u6708",filiterYearText:"\u5E74",filiterByColorTip:"\u6309\u5355\u5143\u683C\u989C\u8272\u7B5B\u9009",filiterByTextColorTip:"\u6309\u5355\u5143\u683C\u5B57\u4F53\u989C\u8272\u7B5B\u9009",filterContainerOneColorTip:"\u672C\u5217\u4EC5\u5305\u542B\u4E00\u79CD\u989C\u8272",filterDateFormatTip:"\u65E5\u671F\u683C\u5F0F",valueBlank:"(\u7A7A\u767D)",mergeError:"\u7B5B\u9009\u9009\u533A\u6709\u5408\u5E76\u5355\u5143\u683C\uFF0C\u65E0\u6CD5\u6267\u884C\u6B64\u64CD\u4F5C\uFF01"},rightclick:{copy:"\u590D\u5236",copyAs:"\u590D\u5236\u4E3A",paste:"\u7C98\u8D34",insert:"\u63D2\u5165",delete:"\u5220\u9664",deleteCell:"\u5220\u9664\u5355\u5143\u683C",deleteSelected:"\u5220\u9664\u9009\u4E2D",hide:"\u9690\u85CF",hideSelected:"\u9690\u85CF\u9009\u4E2D",showHide:"\u663E\u793A\u9690\u85CF",to:"\u5411",left:"\u5DE6",right:"\u53F3",top:"\u4E0A",bottom:"\u4E0B",moveLeft:"\u5DE6\u79FB",moveUp:"\u4E0A\u79FB",add:"\u589E\u52A0",row:"\u884C",column:"\u5217",width:"\u5BBD",height:"\u9AD8",number:"\u6570\u5B57",confirm:"\u786E\u8BA4",orderAZ:"A-Z\u987A\u5E8F\u6392\u5217",orderZA:"Z-A\u964D\u5E8F\u6392\u5217",clearContent:"\u6E05\u9664\u5185\u5BB9",matrix:"\u77E9\u9635\u64CD\u4F5C\u9009\u533A",sortSelection:"\u6392\u5E8F\u9009\u533A",filterSelection:"\u7B5B\u9009\u9009\u533A",chartGeneration:"\u56FE\u8868\u751F\u6210",firstLineTitle:"\u9996\u884C\u4E3A\u6807\u9898",untitled:"\u65E0\u6807\u9898",array1:"\u4E00\u7EF4\u6570\u7EC4",array2:"\u4E8C\u7EF4\u6570\u7EC4",array3:"\u591A\u7EF4\u6570\u7EC4",diagonal:"\u5BF9\u89D2\u7EBF",antiDiagonal:"\u53CD\u5BF9\u89D2\u7EBF",diagonalOffset:"\u5BF9\u89D2\u504F\u79FB",offset:"\u504F\u79FB\u91CF",boolean:"\u5E03\u5C14\u503C",flip:"\u7FFB\u8F6C",upAndDown:"\u4E0A\u4E0B",leftAndRight:"\u5DE6\u53F3",clockwise:"\u987A\u65F6\u9488",counterclockwise:"\u9006\u65F6\u9488",transpose:"\u8F6C\u7F6E",matrixCalculation:"\u77E9\u9635\u8BA1\u7B97",plus:"\u52A0",minus:"\u51CF",multiply:"\u4E58",divided:"\u9664",power:"\u6B21\u65B9",root:"\u6B21\u65B9\u6839",log:"log",delete0:"\u5220\u9664\u4E24\u7AEF0\u503C",removeDuplicate:"\u5220\u9664\u91CD\u590D\u503C",byRow:"\u6309\u884C",byCol:"\u6309\u5217",generateNewMatrix:"\u751F\u6210\u65B0\u77E9\u9635"},comment:{insert:"\u65B0\u5EFA\u6279\u6CE8",edit:"\u7F16\u8F91\u6279\u6CE8",delete:"\u5220\u9664",showOne:"\u663E\u793A/\u9690\u85CF\u6279\u6CE8",showAll:"\u663E\u793A/\u9690\u85CF\u6240\u6709\u6279\u6CE8"},screenshot:{screenshotTipNoSelection:"\u8BF7\u6846\u9009\u9700\u8981\u622A\u56FE\u7684\u8303\u56F4",screenshotTipTitle:"\u63D0\u793A\uFF01",screenshotTipHasMerge:"\u65E0\u6CD5\u5BF9\u5408\u5E76\u5355\u5143\u683C\u6267\u884C\u6B64\u64CD\u4F5C",screenshotTipHasMulti:"\u65E0\u6CD5\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C",screenshotTipSuccess:"\u622A\u53D6\u6210\u529F",screenshotImageName:"\u622A\u56FE",downLoadClose:"\u5173\u95ED",downLoadCopy:"\u590D\u5236\u5230\u526A\u5207\u677F",downLoadBtn:"\u4E0B\u8F7D",browserNotTip:"\u4E0B\u8F7D\u529F\u80FDIE\u6D4F\u89C8\u5668\u4E0D\u652F\u6301\uFF01",rightclickTip:"\u8BF7\u5728\u56FE\u7247\u4E0A\u53F3\u952E\u70B9\u51FB'\u590D\u5236'",successTip:"\u5DF2\u6210\u529F\u590D\u5236\uFF08\u5982\u679C\u7C98\u8D34\u5931\u8D25\uFF0C\u8BF7\u5728\u56FE\u7247\u4E0A\u53F3\u952E\u70B9\u51FB'\u590D\u5236\u56FE\u7247'\uFF09"},splitText:{splitDelimiters:"\u5206\u5272\u7B26\u53F7",splitOther:"\u5176\u5B83",splitContinueSymbol:"\u8FDE\u7EED\u5206\u9694\u7B26\u53F7\u89C6\u4E3A\u5355\u4E2A\u5904\u7406",splitDataPreview:"\u6570\u636E\u9884\u89C8",splitTextTitle:"\u6587\u672C\u5206\u5217",splitConfirmToExe:"\u6B64\u5904\u5DF2\u6709\u6570\u636E\uFF0C\u662F\u5426\u66FF\u6362\u5B83\uFF1F",tipNoMulti:"\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF\uFF0C\u7136\u540E\u518D\u8BD5",tipNoMultiColumn:"\u4E00\u6B21\u53EA\u80FD\u8F6C\u6362\u4E00\u5217\u6570\u636E\uFF0C\u9009\u5B9A\u533A\u57DF\u53EF\u4EE5\u6709\u591A\u884C\uFF0C\u4F46\u4E0D\u80FD\u6709\u591A\u5217\uFF0C\u8BF7\u5728\u9009\u5B9A\u5355\u5217\u533A\u57DF\u4EE5\u540E\u518D\u8BD5"},imageText:{imageSetting:"\u56FE\u7247\u8BBE\u7F6E",close:"\u5173\u95ED",conventional:"\u5E38\u89C4",moveCell1:"\u79FB\u52A8\u5E76\u8C03\u6574\u5355\u5143\u683C\u5927\u5C0F",moveCell2:"\u79FB\u52A8\u5E76\u4E14\u4E0D\u8C03\u6574\u5355\u5143\u683C\u7684\u5927\u5C0F",moveCell3:"\u4E0D\u8981\u79FB\u52A8\u5355\u5143\u683C\u5E76\u8C03\u6574\u5176\u5927\u5C0F",fixedPos:"\u56FA\u5B9A\u4F4D\u7F6E",border:"\u8FB9\u6846",width:"\u5BBD\u5EA6",radius:"\u534A\u5F84",style:"\u6837\u5F0F",solid:"\u5B9E\u7EBF",dashed:"\u865A\u7EBF",dotted:"\u70B9\u72B6",double:"\u53CC\u7EBF",color:"\u989C\u8272"},punctuation:{tab:"Tab \u952E",semicolon:"\u5206\u53F7",comma:"\u9017\u53F7",space:"\u7A7A\u683C"},findAndReplace:{find:"\u67E5\u627E",replace:"\u66FF\u6362",goto:"\u8F6C\u5230",location:"\u5B9A\u4F4D\u6761\u4EF6",formula:"\u516C\u5F0F",date:"\u65E5\u671F",number:"\u6570\u5B57",string:"\u5B57\u7B26",error:"\u9519\u8BEF",condition:"\u6761\u4EF6\u683C\u5F0F",rowSpan:"\u95F4\u9694\u884C",columnSpan:"\u95F4\u9694\u5217",locationExample:"\u5B9A\u4F4D",lessTwoRowTip:"\u8BF7\u9009\u62E9\u6700\u5C11\u4E24\u884C",lessTwoColumnTip:"\u8BF7\u9009\u62E9\u6700\u5C11\u4E24\u884C",findTextbox:"\u67E5\u627E\u5185\u5BB9",replaceTextbox:"\u66FF\u6362\u5185\u5BB9",regexTextbox:"\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D",wholeTextbox:"\u6574\u8BCD\u5339\u914D",distinguishTextbox:"\u533A\u5206\u5927\u5C0F\u5199\u5339\u914D",allReplaceBtn:"\u5168\u90E8\u66FF\u6362",replaceBtn:"\u66FF\u6362",allFindBtn:"\u67E5\u627E\u5168\u90E8",findBtn:"\u67E5\u627E\u4E0B\u4E00\u4E2A",noFindTip:"\u6CA1\u6709\u67E5\u627E\u5230\u8BE5\u5185\u5BB9",modeTip:"\u8BE5\u6A21\u5F0F\u4E0B\u4E0D\u53EF\u8FDB\u884C\u6B64\u64CD\u4F5C",searchTargetSheet:"\u5DE5\u4F5C\u8868",searchTargetCell:"\u5355\u5143\u683C",searchTargetValue:"\u503C",searchInputTip:"\u8BF7\u8F93\u5165\u67E5\u627E\u5185\u5BB9",noReplceTip:"\u6CA1\u6709\u53EF\u66FF\u6362\u7684\u5185\u5BB9",noMatchTip:"\u627E\u4E0D\u5230\u5339\u914D\u9879",successTip:"\u5DF2\u7ECF\u5E2E\u60A8\u641C\u7D22\u5E76\u8FDB\u884C\u4E86${xlength}\u5904\u66FF\u6362",locationConstant:"\u5E38\u91CF",locationFormula:"\u516C\u5F0F",locationDate:"\u65E5\u671F",locationDigital:"\u6570\u5B57",locationString:"\u5B57\u7B26",locationBool:"\u903B\u8F91\u503C",locationError:"\u9519\u8BEF",locationNull:"\u7A7A\u503C",locationCondition:"\u6761\u4EF6\u683C\u5F0F",locationRowSpan:"\u95F4\u9694\u884C",locationColumnSpan:"\u95F4\u9694\u5217",locationTiplessTwoRow:"\u8BF7\u9009\u62E9\u6700\u5C11\u4E24\u884C",locationTiplessTwoColumn:"\u8BF7\u9009\u62E9\u6700\u5C11\u4E24\u5217",locationTipNotFindCell:"\u672A\u627E\u5230\u5355\u5143\u683C"},sheetconfig:{delete:"\u5220\u9664",copy:"\u590D\u5236",rename:"\u91CD\u547D\u540D",changeColor:"\u66F4\u6539\u989C\u8272",hide:"\u9690\u85CF",unhide:"\u53D6\u6D88\u9690\u85CF",moveLeft:"\u5411\u5DE6\u79FB",moveRight:"\u5411\u53F3\u79FB",resetColor:"\u91CD\u7F6E\u989C\u8272",cancelText:"\u53D6\u6D88",chooseText:"\u786E\u5B9A\u989C\u8272",tipNameRepeat:"\u6807\u7B7E\u9875\u7684\u540D\u79F0\u4E0D\u80FD\u91CD\u590D\uFF01\u8BF7\u91CD\u65B0\u4FEE\u6539",noMoreSheet:"\u5DE5\u4F5C\u8584\u5185\u81F3\u5C11\u542B\u6709\u4E00\u5F20\u53EF\u89C6\u5DE5\u4F5C\u8868\u3002\u82E5\u9700\u5220\u9664\u9009\u5B9A\u7684\u5DE5\u4F5C\u8868\uFF0C\u8BF7\u5148\u63D2\u5165\u4E00\u5F20\u65B0\u5DE5\u4F5C\u8868\u6216\u663E\u793A\u4E00\u5F20\u9690\u85CF\u7684\u5DE5\u4F5C\u8868\u3002",confirmDelete:"\u662F\u5426\u5220\u9664",redoDelete:"\u53EF\u4EE5\u901A\u8FC7Ctrl+Z\u64A4\u9500\u5220\u9664",noHide:"\u4E0D\u80FD\u9690\u85CF, \u81F3\u5C11\u4FDD\u7559\u4E00\u4E2Asheet\u6807\u7B7E",chartEditNoOpt:"\u56FE\u8868\u7F16\u8F91\u6A21\u5F0F\u4E0B\u4E0D\u5141\u8BB8\u8BE5\u64CD\u4F5C\uFF01",sheetNameSpecCharError:`\u540D\u79F0\u4E0D\u80FD\u8D85\u8FC731\u4E2A\u5B57\u7B26\uFF0C\u9996\u5C3E\u4E0D\u80FD\u662F' \u4E14\u540D\u79F0\u4E0D\u80FD\u5305\u542B:\r +[ ] : \\ ? * /`,sheetNamecannotIsEmptyError:"\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A!"},conditionformat:{conditionformat_greaterThan:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u5927\u4E8E",conditionformat_greaterThan_title:"\u4E3A\u5927\u4E8E\u4EE5\u4E0B\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_lessThan:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u5C0F\u4E8E",conditionformat_lessThan_title:"\u4E3A\u5C0F\u4E8E\u4EE5\u4E0B\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_betweenness:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u4ECB\u4E8E",conditionformat_betweenness_title:"\u4E3A\u4ECB\u4E8E\u4EE5\u4E0B\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_equal:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u7B49\u4E8E",conditionformat_equal_title:"\u4E3A\u7B49\u4E8E\u4EE5\u4E0B\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_textContains:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u6587\u672C\u5305\u542B",conditionformat_textContains_title:"\u4E3A\u5305\u542B\u4EE5\u4E0B\u6587\u672C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_occurrenceDate:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u53D1\u751F\u65E5\u671F",conditionformat_occurrenceDate_title:"\u4E3A\u5305\u542B\u4EE5\u4E0B\u65E5\u671F\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_duplicateValue:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u91CD\u590D\u503C",conditionformat_duplicateValue_title:"\u4E3A\u5305\u542B\u4EE5\u4E0B\u7C7B\u578B\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_top10:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u524D 10 \u9879",conditionformat_top10_percent:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u524D 10%",conditionformat_top10_title:"\u4E3A\u503C\u6700\u5927\u7684\u90A3\u4E9B\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_last10:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u6700\u540E 10 \u9879",conditionformat_last10_percent:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u6700\u540E 10%",conditionformat_last10_title:"\u4E3A\u503C\u6700\u5C0F\u7684\u90A3\u4E9B\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_AboveAverage:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u9AD8\u4E8E\u5E73\u5747\u503C",conditionformat_AboveAverage_title:"\u4E3A\u9AD8\u4E8E\u5E73\u5747\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",conditionformat_SubAverage:"\u6761\u4EF6\u683C\u5F0F\u2014\u2014\u4F4E\u4E8E\u5E73\u5747\u503C",conditionformat_SubAverage_title:"\u4E3A\u4F4E\u4E8E\u5E73\u5747\u503C\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",rule:"\u89C4\u5219",newRule:"\u65B0\u5EFA\u89C4\u5219",editRule:"\u7F16\u8F91\u89C4\u5219",deleteRule:"\u5220\u9664\u89C4\u5219",deleteCellRule:"\u6E05\u9664\u6240\u9009\u5355\u5143\u683C\u7684\u89C4\u5219",deleteSheetRule:"\u6E05\u9664\u6574\u4E2A\u5DE5\u4F5C\u8868\u7684\u89C4\u5219",manageRules:"\u7BA1\u7406\u89C4\u5219",showRules:"\u663E\u793A\u5176\u683C\u5F0F\u89C4\u5219",highlightCellRules:"\u7A81\u51FA\u663E\u793A\u5355\u5143\u683C\u89C4\u5219",itemSelectionRules:"\u9879\u76EE\u9009\u53D6\u89C4\u5219",conditionformatManageRules:"\u6761\u4EF6\u683C\u5F0F\u89C4\u5219\u7BA1\u7406\u5668",format:"\u683C\u5F0F",setFormat:"\u8BBE\u7F6E\u683C\u5F0F",setAs:"\u8BBE\u7F6E\u4E3A",setAsByArea:"\u9488\u5BF9\u9009\u5B9A\u533A\u57DF\uFF0C\u8BBE\u7F6E\u4E3A",applyRange:"\u5E94\u7528\u8303\u56F4",selectRange:"\u70B9\u51FB\u9009\u62E9\u5E94\u7528\u8303\u56F4",selectRange_percent:"\u6240\u9009\u8303\u56F4\u7684\u767E\u5206\u6BD4",selectRange_average:"\u9009\u5B9A\u8303\u56F4\u7684\u5E73\u5747\u503C",selectRange_value:"\u9009\u5B9A\u8303\u56F4\u4E2D\u7684\u6570\u503C",pleaseSelectRange:"\u8BF7\u9009\u62E9\u5E94\u7528\u8303\u56F4",selectDataRange:"\u70B9\u51FB\u9009\u62E9\u6570\u636E\u8303\u56F4",selectCell:"\u9009\u62E9\u5355\u5143\u683C",pleaseSelectCell:"\u8BF7\u9009\u62E9\u5355\u5143\u683C",pleaseSelectADate:"\u8BF7\u9009\u62E9\u65E5\u671F",pleaseEnterInteger:"\u8BF7\u8F93\u5165\u4E00\u4E2A\u4ECB\u4E8E 1 \u548C 1000 \u4E4B\u95F4\u7684\u6574\u6570",onlySingleCell:"\u53EA\u80FD\u5BF9\u5355\u4E2A\u5355\u5143\u683C\u8FDB\u884C\u5F15\u7528",conditionValueCanOnly:"\u6761\u4EF6\u503C\u53EA\u80FD\u662F\u6570\u5B57\u6216\u8005\u5355\u4E2A\u5355\u5143\u683C",ruleTypeItem1:"\u57FA\u4E8E\u5404\u81EA\u503C\u8BBE\u7F6E\u6240\u6709\u5355\u5143\u683C\u7684\u683C\u5F0F",ruleTypeItem2:"\u53EA\u4E3A\u5305\u542B\u4EE5\u4E0B\u5185\u5BB9\u7684\u5355\u5143\u683C\u8BBE\u7F6E\u683C\u5F0F",ruleTypeItem2_title:"\u53EA\u4E3A\u6EE1\u8DB3\u4EE5\u4E0B\u6761\u4EF6\u7684\u5355\u5143\u683C",ruleTypeItem3:"\u4EC5\u5BF9\u6392\u540D\u9760\u524D\u6216\u9760\u540E\u7684\u6570\u503C\u8BBE\u7F6E\u683C\u5F0F",ruleTypeItem3_title:"\u4E3A\u4EE5\u4E0B\u6392\u540D\u5185\u7684\u503C",ruleTypeItem4:"\u4EC5\u5BF9\u9AD8\u4E8E\u6216\u4F4E\u4E8E\u5E73\u5747\u503C\u7684\u6570\u503C\u8BBE\u7F6E\u683C\u5F0F",ruleTypeItem4_title:"\u4E3A\u6EE1\u8DB3\u4EE5\u4E0B\u6761\u4EF6\u7684\u503C",ruleTypeItem5:"\u4EC5\u5BF9\u552F\u4E00\u503C\u6216\u91CD\u590D\u503C\u8BBE\u7F6E\u683C\u5F0F",ruleTypeItem6:"\u4F7F\u7528\u516C\u5F0F\u786E\u5B9A\u8981\u8BBE\u7F6E\u683C\u5F0F\u7684\u5355\u5143\u683C",formula:"\u516C\u5F0F",textColor:"\u6587\u672C\u989C\u8272",cellColor:"\u5355\u5143\u683C\u989C\u8272",confirm:"\u786E\u5B9A",confirmColor:"\u786E\u5B9A\u989C\u8272",cancel:"\u53D6\u6D88",close:"\u5173\u95ED",clearColorSelect:"\u6E05\u9664\u989C\u8272\u9009\u62E9",sheet:"\u8868",currentSheet:"\u5F53\u524D\u5DE5\u4F5C\u8868",dataBar:"\u6570\u636E\u6761",dataBarColor:"\u6570\u636E\u6761\u989C\u8272",gradientDataBar_1:"\u84DD-\u767D\u6E10\u53D8\u6570\u636E\u6761",gradientDataBar_2:"\u7EFF-\u767D\u6E10\u53D8\u6570\u636E\u6761",gradientDataBar_3:"\u7EA2-\u767D\u6E10\u53D8\u6570\u636E\u6761",gradientDataBar_4:"\u6A59-\u767D\u6E10\u53D8\u6570\u636E\u6761",gradientDataBar_5:"\u6D45\u84DD-\u767D\u6E10\u53D8\u6570\u636E\u6761",gradientDataBar_6:"\u7D2B-\u767D\u6E10\u53D8\u6570\u636E\u6761",solidColorDataBar_1:"\u84DD\u8272\u6570\u636E\u6761",solidColorDataBar_2:"\u7EFF\u8272\u6570\u636E\u6761",solidColorDataBar_3:"\u7EA2\u8272\u6570\u636E\u6761",solidColorDataBar_4:"\u6A59\u8272\u6570\u636E\u6761",solidColorDataBar_5:"\u6D45\u84DD\u8272\u6570\u636E\u6761",solidColorDataBar_6:"\u7D2B\u8272\u6570\u636E\u6761",colorGradation:"\u8272\u9636",colorGradation_1:"\u7EFF-\u9EC4-\u7EA2\u8272\u9636",colorGradation_2:"\u7EA2-\u9EC4-\u7EFF\u8272\u9636",colorGradation_3:"\u7EFF-\u767D-\u7EA2\u8272\u9636",colorGradation_4:"\u7EA2-\u767D-\u7EFF\u8272\u9636",colorGradation_5:"\u84DD-\u767D-\u7EA2\u8272\u9636",colorGradation_6:"\u7EA2-\u767D-\u84DD\u8272\u9636",colorGradation_7:"\u767D-\u7EA2\u8272\u9636",colorGradation_8:"\u7EA2-\u767D\u8272\u9636",colorGradation_9:"\u7EFF-\u767D\u8272\u9636",colorGradation_10:"\u767D-\u7EFF\u8272\u9636",colorGradation_11:"\u7EFF-\u9EC4\u8272\u9636",colorGradation_12:"\u9EC4-\u7EFF\u8272\u9636",icons:"\u56FE\u6807\u96C6",pleaseSelectIcon:"\u8BF7\u70B9\u51FB\u9009\u62E9\u4E00\u7EC4\u56FE\u6807\uFF1A",cellValue:"\u5355\u5143\u683C\u503C",specificText:"\u7279\u5B9A\u6587\u672C",occurrence:"\u53D1\u751F\u65E5\u671F",greaterThan:"\u5927\u4E8E",lessThan:"\u5C0F\u4E8E",between:"\u4ECB\u4E8E",equal:"\u7B49\u4E8E",in:"\u548C",to:"\u5230",between2:"\u4E4B\u95F4",contain:"\u5305\u542B",textContains:"\u6587\u672C\u5305\u542B",duplicateValue:"\u91CD\u590D\u503C",uniqueValue:"\u552F\u4E00\u503C",top:"\u524D",top10:"\u524D 10 \u9879",top10_percent:"\u524D 10%",last:"\u540E",last10:"\u540E 10 \u9879",last10_percent:"\u540E 10%",oneself:"\u4E2A",above:"\u9AD8\u4E8E",aboveAverage:"\u9AD8\u4E8E\u5E73\u5747\u503C",below:"\u4F4E\u4E8E",belowAverage:"\u4F4E\u4E8E\u5E73\u5747\u503C",all:"\u5168\u90E8",yesterday:"\u6628\u5929",today:"\u4ECA\u5929",tomorrow:"\u660E\u5929",lastWeek:"\u4E0A\u5468",thisWeek:"\u672C\u5468",lastMonth:"\u4E0A\u6708",thisMonth:"\u672C\u6708",lastYear:"\u53BB\u5E74",thisYear:"\u672C\u5E74",last7days:"\u6700\u8FD17\u5929",last30days:"\u6700\u8FD130\u5929",next7days:"\u672A\u67657\u5929",next30days:"\u672A\u676530\u5929",next60days:"\u672A\u676560\u5929",chooseRuleType:"\u9009\u62E9\u89C4\u5219\u7C7B\u578B",editRuleDescription:"\u7F16\u8F91\u89C4\u5219\u8BF4\u660E",newFormatRule:"\u65B0\u5EFA\u683C\u5F0F\u89C4\u5219",editFormatRule:"\u7F16\u8F91\u683C\u5F0F\u89C4\u5219",formatStyle:"\u683C\u5F0F\u6837\u5F0F",fillType:"\u586B\u5145\u7C7B\u578B",color:"\u989C\u8272",twocolor:"\u53CC\u8272",tricolor:"\u4E09\u8272",multicolor:"\u5F69\u8272",grayColor:"\u7070\u8272",gradient:"\u6E10\u53D8",solid:"\u5B9E\u5FC3",maxValue:"\u6700\u5927\u503C",medianValue:"\u4E2D\u95F4\u503C",minValue:"\u6700\u5C0F\u503C",direction:"\u65B9\u5411",threeWayArrow:"\u4E09\u5411\u7BAD\u5934",fourWayArrow:"\u56DB\u5411\u7BAD\u5934",fiveWayArrow:"\u4E94\u5411\u7BAD\u5934",threeTriangles:"3\u4E2A\u4E09\u89D2\u5F62",shape:"\u5F62\u72B6",threeColorTrafficLight:"\u4E09\u8272\u4EA4\u901A\u706F",fourColorTrafficLight:"\u56DB\u8272\u4EA4\u901A\u706F",threeSigns:"\u4E09\u6807\u5FD7",greenRedBlackGradient:"\u7EFF-\u7EA2-\u9ED1\u6E10\u53D8",rimless:"\u65E0\u8FB9\u6846",bordered:"\u6709\u8FB9\u6846",mark:"\u6807\u8BB0",threeSymbols:"\u4E09\u4E2A\u7B26\u53F7",tricolorFlag:"\u4E09\u8272\u65D7",circled:"\u6709\u5706\u5708",noCircle:"\u65E0\u5706\u5708",grade:"\u7B49\u7EA7",grade4:"\u56DB\u7B49\u7EA7",grade5:"\u4E94\u7B49\u7EA7",threeStars:"3\u4E2A\u661F\u5F62",fiveQuadrantDiagram:"\u4E94\u8C61\u9650\u56FE",fiveBoxes:"5\u4E2A\u6846"},insertLink:{linkText:"\u6587\u672C",linkType:"\u94FE\u63A5\u7C7B\u578B",external:"\u5916\u90E8\u94FE\u63A5",internal:"\u5185\u90E8\u94FE\u63A5",linkAddress:"\u94FE\u63A5\u5730\u5740",linkSheet:"\u5DE5\u4F5C\u8868",linkCell:"\u5355\u5143\u683C\u5F15\u7528",linkTooltip:"\u63D0\u793A",placeholder1:"\u8BF7\u8F93\u5165\u7F51\u9875\u94FE\u63A5\u5730\u5740",placeholder2:"\u8BF7\u8F93\u5165\u8981\u5F15\u7528\u7684\u5355\u5143\u683C\uFF0C\u4F8BA1",placeholder3:"\u8BF7\u8F93\u5165\u63D0\u793A\u5185\u5BB9",tooltipInfo1:"\u8BF7\u8F93\u5165\u6709\u6548\u7684\u94FE\u63A5",tooltipInfo2:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u5355\u5143\u683C\u5F15\u7528"},dataVerification:{cellRange:"\u5355\u5143\u683C\u8303\u56F4",selectCellRange:"\u70B9\u51FB\u9009\u62E9\u5355\u5143\u683C\u8303\u56F4",selectCellRange2:"\u8BF7\u9009\u62E9\u5355\u5143\u683C\u8303\u56F4",verificationCondition:"\u9A8C\u8BC1\u6761\u4EF6",allowMultiSelect:"\u662F\u5426\u5141\u8BB8\u591A\u9009",dropdown:"\u4E0B\u62C9\u5217\u8868",checkbox:"\u590D\u9009\u6846",number:"\u6570\u5B57",number_integer:"\u6570\u5B57-\u6574\u6570",number_decimal:"\u6570\u5B57-\u5C0F\u6570",text_content:"\u6587\u672C-\u5185\u5BB9",text_length:"\u6587\u672C-\u957F\u5EA6",date:"\u65E5\u671F",validity:"\u6709\u6548\u6027",placeholder1:"\u8BF7\u8F93\u5165\u9009\u9879\uFF0C\u4EE5\u82F1\u6587\u9017\u53F7\u5206\u9694\uFF0C\u59821,2,3,4,5",placeholder2:"\u8BF7\u8F93\u5165\u5185\u5BB9",placeholder3:"\u6570\u503C\uFF0C\u598210",placeholder4:"\u8BF7\u8F93\u5165\u6307\u5B9A\u7684\u6587\u672C",placeholder5:"\u8BF7\u8F93\u5165\u9009\u4E2D\u5355\u5143\u683C\u65F6\u663E\u793A\u7684\u63D0\u793A\u8BED",selected:"\u9009\u62E9\u65F6",notSelected:"\u672A\u9009\u62E9",between:"\u4ECB\u4E8E",notBetween:"\u4E0D\u4ECB\u4E8E",equal:"\u7B49\u4E8E",notEqualTo:"\u4E0D\u7B49\u4E8E",moreThanThe:"\u5927\u4E8E",lessThan:"\u5C0F\u4E8E",greaterOrEqualTo:"\u5927\u4E8E\u7B49\u4E8E",lessThanOrEqualTo:"\u5C0F\u4E8E\u7B49\u4E8E",include:"\u5305\u62EC",exclude:"\u4E0D\u5305\u62EC",earlierThan:"\u65E9\u4E8E",noEarlierThan:"\u4E0D\u65E9\u4E8E",laterThan:"\u665A\u4E8E",noLaterThan:"\u4E0D\u665A\u4E8E",identificationNumber:"\u8EAB\u4EFD\u8BC1\u53F7\u7801",phoneNumber:"\u624B\u673A\u53F7",remote:"\u81EA\u52A8\u8FDC\u7A0B\u83B7\u53D6\u9009\u9879",prohibitInput:"\u8F93\u5165\u6570\u636E\u65E0\u6548\u65F6\u7981\u6B62\u8F93\u5165",hintShow:"\u9009\u4E2D\u5355\u5143\u683C\u65F6\u663E\u793A\u63D0\u793A\u8BED",deleteVerification:"\u5220\u9664\u9A8C\u8BC1",tooltipInfo1:"\u4E0B\u62C9\u5217\u8868\u9009\u9879\u4E0D\u53EF\u4E3A\u7A7A",tooltipInfo2:"\u590D\u9009\u6846\u5185\u5BB9\u4E0D\u53EF\u4E3A\u7A7A",tooltipInfo3:"\u8F93\u5165\u7684\u503C\u4E0D\u662F\u6570\u503C\u7C7B\u578B",tooltipInfo4:"\u6570\u503C2\u4E0D\u80FD\u5C0F\u4E8E\u6570\u503C1",tooltipInfo5:"\u6587\u672C\u5185\u5BB9\u4E0D\u80FD\u4E3A\u7A7A",tooltipInfo6:"\u8F93\u5165\u7684\u503C\u4E0D\u662F\u65E5\u671F\u7C7B\u578B",tooltipInfo7:"\u65E5\u671F2\u4E0D\u80FD\u5C0F\u4E8E\u65E5\u671F1",textlengthInteger:"\u6587\u672C\u957F\u5EA6\u5FC5\u987B\u662F\u5927\u4E8E\u7B49\u4E8E0\u7684\u6574\u6570"},formula:{sum:"\u6C42\u548C",average:"\u5E73\u5747\u503C",count:"\u8BA1\u6570",max:"\u6700\u5927\u503C",min:"\u6700\u5C0F\u503C",ifGenerate:"if\u516C\u5F0F\u751F\u6210\u5668",find:"\u66F4\u591A\u51FD\u6570",tipNotBelongToIf:"\u8BE5\u5355\u5143\u683C\u51FD\u6570\u4E0D\u5C5E\u4E8Eif\u516C\u5F0F\uFF01",tipSelectCell:"\u8BF7\u9009\u62E9\u5355\u5143\u683C\u63D2\u5165\u51FD\u6570",ifGenCompareValueTitle:"\u6BD4\u8F83\u503C",ifGenSelectCellTitle:"\u70B9\u51FB\u9009\u62E9\u5355\u5143\u683C",ifGenRangeTitle:"\u8303\u56F4",ifGenRangeTo:"\u81F3",ifGenRangeEvaluate:"\u8303\u56F4\u8BC4\u4F30",ifGenSelectRangeTitle:"\u70B9\u51FB\u9009\u62E9\u8303\u56F4",ifGenCutWay:"\u5212\u5206\u65B9\u5F0F",ifGenCutSame:"\u5212\u5206\u503C\u76F8\u540C",ifGenCutNpiece:"\u5212\u5206\u4E3AN\u4EFD",ifGenCutCustom:"\u81EA\u5B9A\u4E49\u8F93\u5165",ifGenCutConfirm:"\u751F\u6210",ifGenTipSelectCell:"\u9009\u62E9\u5355\u5143\u683C",ifGenTipSelectCellPlace:"\u8BF7\u9009\u62E9\u5355\u5143\u683C",ifGenTipSelectRange:"\u9009\u62E9\u5355\u8303\u56F4",ifGenTipSelectRangePlace:"\u8BF7\u9009\u62E9\u8303\u56F4",ifGenTipNotNullValue:"\u6BD4\u8F83\u503C\u4E0D\u80FD\u4E3A\u7A7A\uFF01",ifGenTipLableTitile:"\u6807\u7B7E",ifGenTipRangeNotforNull:"\u8303\u56F4\u4E0D\u80FD\u4E3A\u7A7A\uFF01",ifGenTipCutValueNotforNull:"\u5212\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A\uFF01",ifGenTipNotGenCondition:"\u6CA1\u6709\u751F\u6210\u53EF\u7528\u7684\u6761\u4EF6\uFF01"},formulaMore:{valueTitle:"\u503C",tipSelectDataRange:"\u9009\u53D6\u6570\u636E\u8303\u56F4",tipDataRangeTile:"\u6570\u636E\u8303\u56F4",findFunctionTitle:"\u67E5\u627E\u51FD\u6570",tipInputFunctionName:"\u8BF7\u8F93\u5165\u60A8\u8981\u67E5\u627E\u7684\u51FD\u6570\u540D\u79F0\u6216\u51FD\u6570\u529F\u80FD\u7684\u7B80\u8981\u63CF\u8FF0",Array:"\u6570\u7EC4",Database:"\u6570\u636E\u6E90",Date:"\u65E5\u671F",Engineering:"\u5DE5\u7A0B\u8BA1\u7B97",Filter:"\u8FC7\u6EE4\u5668",Financial:"\u8D22\u52A1",luckysheet:"Luckysheet\u5185\u7F6E",other:"\u5176\u5B83",Logical:"\u903B\u8F91",Lookup:"\u67E5\u627E",Math:"\u6570\u5B66",Operator:"\u8FD0\u7B97\u7B26",Parser:"\u8F6C\u6362\u5DE5\u5177",Statistical:"\u7EDF\u8BA1",Text:"\u6587\u672C",dataMining:"\u6570\u636E\u6316\u6398",selectFunctionTitle:"\u9009\u62E9\u51FD\u6570",calculationResult:"\u8BA1\u7B97\u7ED3\u679C",tipSuccessText:"\u6210\u529F",tipParamErrorText:"\u53C2\u6570\u7C7B\u578B\u9519\u8BEF",helpClose:"\u5173\u95ED",helpCollapse:"\u6536\u8D77",helpExample:"\u793A\u4F8B",helpAbstract:"\u6458\u8981",execfunctionError:'\u63D0\u793A", "\u516C\u5F0F\u5B58\u5728\u9519\u8BEF',execfunctionSelfError:"\u516C\u5F0F\u4E0D\u53EF\u5F15\u7528\u5176\u672C\u8EAB\u7684\u5355\u5143\u683C",execfunctionSelfErrorResult:"\u516C\u5F0F\u4E0D\u53EF\u5F15\u7528\u5176\u672C\u8EAB\u7684\u5355\u5143\u683C\uFF0C\u4F1A\u5BFC\u81F4\u8BA1\u7B97\u7ED3\u679C\u4E0D\u51C6\u786E",allowRepeatText:"\u53EF\u91CD\u590D",allowOptionText:"\u53EF\u9009",selectCategory:"\u6216\u9009\u62E9\u7C7B\u522B"},drag:{noMerge:"\u65E0\u6CD5\u5BF9\u5408\u5E76\u5355\u5143\u683C\u6267\u884C\u6B64\u64CD\u4F5C",affectPivot:"\u65E0\u6CD5\u5BF9\u6240\u9009\u5355\u5143\u683C\u8FDB\u884C\u6B64\u66F4\u6539\uFF0C\u56E0\u4E3A\u5B83\u4F1A\u5F71\u54CD\u6570\u636E\u900F\u89C6\u8868\uFF01",noMulti:"\u65E0\u6CD5\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C,\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF",noPaste:"\u65E0\u6CD5\u5728\u6B64\u5904\u7C98\u8D34\u6B64\u5185\u5BB9\uFF0C\u8BF7\u9009\u62E9\u7C98\u8D34\u533A\u57DF\u7684\u4E00\u4E2A\u5355\u5143\u683C\uFF0C\u7136\u540E\u518D\u6B21\u5C1D\u8BD5\u7C98\u8D34",noPartMerge:"\u65E0\u6CD5\u5BF9\u90E8\u5206\u5408\u5E76\u5355\u5143\u683C\u6267\u884C\u6B64\u64CD\u4F5C",inputCorrect:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u6570\u503C",notLessOne:"\u884C\u5217\u6570\u4E0D\u80FD\u5C0F\u4E8E1",offsetColumnLessZero:"\u504F\u79FB\u5217\u4E0D\u80FD\u4E3A\u8D1F\u6570\uFF01",pasteMustKeybordAlert:"Copy and paste in the Sheet: Ctrl + C to copy, Ctrl + V to paste, Ctrl + X to cut",pasteMustKeybordAlertHTMLTitle:"Copy and paste in the Sheet",pasteMustKeybordAlertHTML:"Ctrl + C  to copy
Ctrl + V  to paste
Ctrl + X  to cut"},paste:{warning:"\u63D0\u793A",errorNotAllowMulti:"\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF\uFF0C\u7136\u540E\u518D\u8BD5",errorNotAllowMerged:"\u4E0D\u80FD\u5BF9\u5408\u5E76\u5355\u5143\u683C\u505A\u90E8\u5206\u66F4\u6539"},pivotTable:{title:"\u6570\u636E\u900F\u89C6\u8868",closePannel:"\u5173\u95ED",editRange:"\u7F16\u8F91\u8303\u56F4",tipPivotFieldSelected:"\u9009\u62E9\u9700\u8981\u6DFB\u52A0\u5230\u6570\u636E\u900F\u89C6\u8868\u7684\u5B57\u6BB5",tipClearSelectedField:"\u6E05\u9664\u6240\u6709\u5DF2\u9009\u5B57\u6BB5",btnClearSelectedField:"\u6E05\u9664",btnFilter:"\u7B5B\u9009",titleRow:"\u884C",titleColumn:"\u5217",titleValue:"\u6570\u503C",tipShowColumn:"\u7EDF\u8BA1\u5B57\u6BB5\u663E\u793A\u4E3A\u5217",tipShowRow:"\u7EDF\u8BA1\u5B57\u6BB5\u663E\u793A\u4E3A\u884C",titleSelectionDataRange:"\u9009\u53D6\u6570\u636E\u8303\u56F4",titleDataRange:"\u6570\u636E\u8303\u56F4",valueSum:"\u603B\u8BA1",valueStatisticsSUM:"\u6C42\u548C",valueStatisticsCOUNT:"\u6570\u503C\u8BA1\u6570",valueStatisticsCOUNTA:"\u8BA1\u6570",valueStatisticsCOUNTUNIQUE:"\u53BB\u91CD\u8BA1\u6570",valueStatisticsAVERAGE:"\u5E73\u5747\u503C",valueStatisticsMAX:"\u6700\u5927\u503C",valueStatisticsMIN:"\u6700\u5C0F\u503C",valueStatisticsMEDIAN:"\u4E2D\u4F4D\u6570",valueStatisticsPRODUCT:"\u4E58\u79EF",valueStatisticsSTDEV:"\u6807\u51C6\u5DEE",valueStatisticsSTDEVP:"\u6574\u4F53\u6807\u51C6\u5DEE",valueStatisticslet:"\u65B9\u5DEE",valueStatisticsVARP:"\u6574\u4F53\u65B9\u5DEE",errorNotAllowEdit:"\u975E\u7F16\u8F91\u6A21\u5F0F\u4E0B\u7981\u6B62\u8BE5\u64CD\u4F5C\uFF01",errorNotAllowMulti:"\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF\uFF0C\u7136\u540E\u518D\u8BD5",errorSelectRange:"\u8BF7\u9009\u62E9\u65B0\u5EFA\u900F\u89C6\u8868\u7684\u533A\u57DF",errorIsDamage:"\u6B64\u6570\u636E\u900F\u89C6\u8868\u7684\u6E90\u6570\u636E\u5DF2\u635F\u574F\uFF01",errorNotAllowPivotData:"\u4E0D\u53EF\u9009\u62E9\u6570\u636E\u900F\u89C6\u8868\u4E3A\u6E90\u6570\u636E\uFF01",errorSelectionRange:"\u9009\u62E9\u5931\u8D25, \u8F93\u5165\u8303\u56F4\u9519\u8BEF\uFF01",errorIncreaseRange:"\u8BF7\u6269\u5927\u9009\u62E9\u7684\u6570\u636E\u8303\u56F4!",titleAddColumn:"\u6DFB\u52A0\u5217\u5230\u6570\u636E\u900F\u89C6\u8868",titleMoveColumn:"\u79FB\u52A8\u8BE5\u5217\u5230\u4E0B\u65B9\u767D\u6846",titleClearColumnFilter:"\u6E05\u9664\u8BE5\u5217\u7684\u7B5B\u9009\u6761\u4EF6",titleFilterColumn:"\u7B5B\u9009\u8BE5\u5217",titleSort:"\u6392\u5E8F",titleNoSort:"\u65E0\u6392\u5E8F",titleSortAsc:"\u5347\u5E8F",titleSortDesc:"\u964D\u5E8F",titleSortBy:"\u6392\u5E8F\u4F9D\u636E",titleShowSum:"\u663E\u793A\u603B\u8BA1",titleStasticTrue:"\u662F",titleStasticFalse:"\u5426"},dropCell:{copyCell:"\u590D\u5236\u5355\u5143\u683C",sequence:"\u586B\u5145\u5E8F\u5217",onlyFormat:"\u4EC5\u586B\u5145\u683C\u5F0F",noFormat:"\u4E0D\u5E26\u683C\u5F0F\u586B\u5145",day:"\u4EE5\u5929\u6570\u586B\u5145",workDay:"\u4EE5\u5DE5\u4F5C\u65E5\u586B\u5145",month:"\u4EE5\u6708\u586B\u5145",year:"\u4EE5\u5E74\u586B\u5145",chineseNumber:"\u4EE5\u4E2D\u6587\u5C0F\u5199\u6570\u5B57\u586B\u5145"},imageCtrl:{borderTile:"\u56FE\u7247\u8FB9\u6846\u989C\u8272\u9009\u62E9",borderCur:"\u5F53\u524D\u989C\u8272"},protection:{protectiontTitle:"\u4FDD\u62A4\u5DE5\u4F5C\u8868",enterPassword:"\u8BF7\u8F93\u5165\u5BC6\u7801\uFF08\u53EF\u7559\u7A7A\uFF09",enterHint:"\u60A8\u8BD5\u56FE\u66F4\u6539\u7684\u5355\u5143\u683C\u6216\u56FE\u8868\u4F4D\u4E8E\u53D7\u4FDD\u62A4\u7684\u5DE5\u4F5C\u8868\u4E2D\u3002\u82E5\u8981\u66F4\u6539\uFF0C\u8BF7\u53D6\u6D88\u5DE5\u4F5C\u8868\u4FDD\u62A4\u3002\u60A8\u53EF\u80FD\u9700\u8981\u8F93\u5165\u5BC6\u7801",swichProtectionTip:"\u4FDD\u62A4\u5DE5\u4F5C\u8868\u53CA\u9501\u5B9A\u7684\u5355\u5143\u683C\u5185\u5BB9",authorityTitle:"\u5141\u8BB8\u6B64\u5DE5\u4F5C\u8868\u7684\u7528\u6237\u8FDB\u884C:",selectLockedCells:"\u9009\u5B9A\u9501\u5B9A\u5355\u5143\u683C",selectunLockedCells:"\u9009\u5B9A\u89E3\u9664\u9501\u5B9A\u7684\u5355\u5143\u683C",formatCells:"\u8BBE\u7F6E\u5355\u5143\u683C\u683C\u5F0F",formatColumns:"\u8BBE\u7F6E\u5217\u683C\u5F0F",formatRows:"\u8BBE\u7F6E\u884C\u683C\u5F0F",insertColumns:"\u63D2\u5165\u5217",insertRows:"\u63D2\u5165\u884C",insertHyperlinks:"\u63D2\u5165\u8D85\u94FE\u63A5",deleteColumns:"\u5220\u9664\u5217",deleteRows:"\u5220\u9664\u884C",sort:"\u6392\u5E8F",filter:"\u4F7F\u7528\u81EA\u52A8\u7B5B\u9009",usePivotTablereports:"\u4F7F\u7528\u6570\u636E\u900F\u89C6\u8868\u548C\u62A5\u8868",editObjects:"\u7F16\u8F91\u5BF9\u8C61",editScenarios:"\u7F16\u8F91\u65B9\u6848",allowRangeTitle:"\u5141\u8BB8\u7528\u6237\u7F16\u8F91\u533A\u57DF",allowRangeAdd:"\u65B0\u5EFA...",allowRangeAddTitle:"\u6807\u9898",allowRangeAddSqrf:"\u5F15\u7528\u5355\u5143\u683C",selectCellRange:"\u70B9\u51FB\u9009\u62E9\u5355\u5143\u683C\u8303\u56F4",selectCellRangeHolder:"\u8BF7\u8F93\u5165\u5355\u5143\u683C\u8303\u56F4",allowRangeAddTitlePassword:"\u5BC6\u7801",allowRangeAddTitleHint:"\u63D0\u793A",allowRangeAddTitleHintTitle:"\u8BBE\u7F6E\u5BC6\u7801\u540E\uFF0C\u63D0\u793A\u7528\u6237\u8F93\u5165\u5BC6\u7801(\u53EF\u7559\u7A7A)",allowRangeAddtitleDefault:"\u8BF7\u8F93\u5165\u533A\u57DF\u540D\u79F0",rangeItemDblclick:"\u53CC\u51FB\u8FDB\u884C\u7F16\u8F91",rangeItemHasPassword:"\u5DF2\u8BBE\u7F6E\u5BC6\u7801",rangeItemErrorTitleNull:"\u6807\u9898\u4E0D\u80FD\u4E3A\u7A7A",rangeItemErrorRangeNull:"\u5355\u5143\u683C\u8303\u56F4\u4E0D\u80FD\u4E3A\u7A7A",rangeItemErrorRange:"\u5355\u5143\u683C\u8303\u56F4\u683C\u5F0F\u9519\u8BEF",validationTitle:"\u9A8C\u8BC1\u63D0\u793A",validationTips:"\u9700\u8981\u8F93\u5165\u5BC6\u7801\u6765\u64A4\u9500\u5DE5\u4F5C\u8868\u7684\u4FDD\u62A4",validationInputHint:"\u8BF7\u8F93\u5165\u5BC6\u7801",checkPasswordNullalert:"\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A\uFF01",checkPasswordWrongalert:"\u5BC6\u7801\u9519\u8BEF\uFF0C\u8BF7\u91CD\u8BD5\uFF01",checkPasswordSucceedalert:"\u89E3\u9501\u6210\u529F\uFF0C\u53EF\u4EE5\u7F16\u8F91\u8BE5\u533A\u57DF!",defaultRangeHintText:"\u8BE5\u5355\u5143\u683C\u6B63\u5728\u53D7\u5BC6\u7801\u4FDD\u62A4\u3002",defaultSheetHintText:"\u8BE5\u5355\u5143\u683C\u6216\u56FE\u8868\u4F4D\u4E8E\u53D7\u4FDD\u62A4\u7684\u5DE5\u4F5C\u8868\u4E2D\uFF0C\u82E5\u8981\u8FDB\u884C\u66F4\u6539\uFF0C\u8BF7\u53D6\u6D88\u5DE5\u4F5C\u8868\u4FDD\u62A4\uFF0C\u60A8\u53EF\u80FD\u9700\u8981\u8F93\u5165\u5BC6\u7801\u3002"},cellFormat:{cellFormatTitle:"\u8BBE\u7F6E\u5355\u5143\u683C\u683C\u5F0F",protection:"\u4FDD\u62A4",locked:"\u9501\u5B9A\u5355\u5143\u683C",hidden:"\u9690\u85CF\u516C\u5F0F",protectionTips:"\u53EA\u6709\u4FDD\u62A4\u5DE5\u4F5C\u8868\u529F\u80FD(\u5728\u83DC\u5355\u680F\u70B9\u51FB\u4FDD\u62A4\u5DE5\u4F5C\u8868\u6309\u94AE\u8FDB\u884C\u8BBE\u7F6E)\u5F00\u542F\u540E\uFF0C\u9501\u5B9A\u5355\u5143\u683C\u6216\u9690\u85CF\u516C\u5F0F\u624D\u80FD\u751F\u6548",tipsPart:"\u90E8\u5206\u9009\u4E2D",tipsAll:"\u5168\u90E8\u9009\u4E2D",selectionIsNullAlert:"\u8BF7\u9009\u62E9\u4E00\u4E2A\u8303\u56F4\uFF01",sheetDataIsNullAlert:"\u6570\u636E\u4E3A\u7A7A\u65E0\u6CD5\u8BBE\u7F6E\uFF01"},print:{normalBtn:"\u5E38\u89C4\u89C6\u56FE",layoutBtn:"\u9875\u9762\u5E03\u5C40",pageBtn:"\u5206\u9875\u9884\u89C8",menuItemPrint:"\u6253\u5370(Ctrl+P)",menuItemAreas:"\u6253\u5370\u533A\u57DF",menuItemRows:"\u6253\u5370\u6807\u9898\u884C",menuItemColumns:"\u6253\u5370\u6807\u9898\u5217",suggest:"\u5BF9\u6253\u5370\u529F\u80FD\u6709\u4EC0\u4E48\u5EFA\u8BAE\uFF1F",range:"\u6253\u5370\u8303\u56F4",size:"\u7EB8\u5F20\u5927\u5C0F",direction:"\u6253\u5370\u65B9\u5411",horizontal:"\u6A2A\u5411",vertical:"\u7EB5\u5411",title:"\u6253\u5370\u8BBE\u7F6E",current:"\u5F53\u524D\u5DE5\u4F5C\u8868",area:"\u9009\u4E2D\u533A\u57DF",letter:"\u4FE1\u5C01",paper:"\u5C0F\u62A5\u7528\u7EB8",law:"\u6CD5\u5B9A\u7528\u7EB8",admin:"\u884C\u653F\u7528\u7EB8",expire:"\u5DF2\u8FC7\u671F",remain:"\u5269\u4F59\u5929\u6570",error:"\u9519\u8BEF",showLine:"\u663E\u793A\u7F51\u683C\u7EBF",show:"\u663E\u793A",hide:"\u9690\u85CF",preview:"\u9884\u89C8"},edit:{typing:"\u6B63\u5728\u8F93\u5165"},websocket:{success:"WebSocket\u8FDE\u63A5\u6210\u529F",refresh:"WebSocket\u8FDE\u63A5\u53D1\u751F\u9519\u8BEF, \u8BF7\u5237\u65B0\u9875\u9762\uFF01",wait:"WebSocket\u8FDE\u63A5\u53D1\u751F\u9519\u8BEF, \u8BF7\u8010\u5FC3\u7B49\u5F85\uFF01",close:"WebSocket\u8FDE\u63A5\u5173\u95ED",contact:"\u670D\u52A1\u5668\u901A\u4FE1\u53D1\u751F\u9519\u8BEF\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u540E\u518D\u8BD5\uFF0C\u5982\u82E5\u4E0D\u884C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\uFF01",support:"\u5F53\u524D\u6D4F\u89C8\u5668\u4E0D\u652F\u6301WebSocket"},exportXlsx:{notice:"\u8BF7\u914D\u7F6E\u5BFC\u51FA\u63D2\u4EF6",serverError:"\u670D\u52A1\u5668\u6B63\u5728\u7EF4\u62A4",title:"\u5BFC\u51FAXLSX",range:"\u8303\u56F4",currentSheet:"\u5F53\u524D\u5DE5\u4F5C\u8868",allSheets:"\u6240\u6709\u5DE5\u4F5C\u8868"}}});var bu,wu=$e(()=>{bu={functionlist:{SUMIF:{d:"Returns a conditional sum across a range.",a:"A conditional sum across a range.",p:[{name:"range",detail:"The range which is tested against `criterion`."},{name:"criterion",detail:"The pattern or test to apply to `range`."},{name:"sum_range",detail:"The range to be summed, if different from `range`."}]},TAN:{d:"Returns the tangent of an angle provided in radians.",a:"Tangent of an angle provided in radians.",p:[{name:"angle",detail:"The angle to find the tangent of, in radians."}]},TANH:{d:"Returns the hyperbolic tangent of any real number.",a:"Hyperbolic tangent of any real number.",p:[{name:"value",detail:"Any real value to calculate the hyperbolic tangent of."}]},CEILING:{d:"Rounds a number up to the nearest integer multiple of specified significance `factor`.",a:"Rounds number up to nearest multiple of a factor.",p:[{name:"value",detail:"The value to round up to the nearest integer multiple of `factor`."},{name:"factor",detail:"The number to whose multiples `value` will be rounded."}]},ATAN:{d:"Returns the inverse tangent of a value, in radians.",a:"Inverse tangent of a value, in radians.",p:[{name:"value",detail:"The value for which to calculate the inverse tangent."}]},ASINH:{d:"Returns the inverse hyperbolic sine of a number.",a:"Inverse hyperbolic sine of a number.",p:[{name:"value",detail:"The value for which to calculate the inverse hyperbolic sine."}]},ABS:{d:"Returns the absolute value of a number.",a:"Absolute value of a number.",p:[{name:"value",detail:"The number of which to return the absolute value."}]},ACOS:{d:"Returns the inverse cosine of a value, in radians.",a:"Inverse cosine of a value, in radians.",p:[{name:"value",detail:"The value for which to calculate the inverse cosine. Must be between `-1` and `1`, inclusive."}]},ACOSH:{d:"Returns the inverse hyperbolic cosine of a number.",a:"Inverse hyperbolic cosine of a number.",p:[{name:"value",detail:"The value for which to calculate the inverse hyperbolic cosine. Must be greater than or equal to `1`."}]},MULTINOMIAL:{d:"Returns the factorial of the sum of values divided by the product of the values' factorials.",a:"Multinomial distribution function.",p:[{name:"value1",detail:"The first value or range to consider."},{name:"value2",detail:"Additional values or ranges to consider."}]},ATANH:{d:"Returns the inverse hyperbolic tangent of a number.",a:"Inverse hyperbolic tangent of a number.",p:[{name:"value",detail:"The value for which to calculate the inverse hyperbolic tangent. Must be between -1 and 1, exclusive."}]},ATAN2:{d:"Returns the angle between the x-axis and a line segment from the origin (0,0) to specified coordinate pair (`x`,`y`), in radians.",a:"Arctangent of a value.",p:[{name:"x",detail:"The x coordinate of the endpoint of the line segment for which to calculate the angle from the x-axis."},{name:"y",detail:"The y coordinate of the endpoint of the line segment for which to calculate the angle from the x-axis."}]},COUNTBLANK:{d:"Returns the number of empty values in a list of values and ranges.",a:"Number of empty values.",p:[{name:"value1",detail:"The first value or range in which to count the number of blanks."}]},COSH:{d:"Returns the hyperbolic cosine of any real number.",a:"Hyperbolic cosine of any real number.",p:[{name:"value",detail:"Any real value to calculate the hyperbolic cosine of."}]},INT:{d:"Rounds a number down to the nearest integer that is less than or equal to it.",a:"Rounds number down to nearest integer.",p:[{name:"value",detail:"The value to round down to the nearest integer."}]},ISEVEN:{d:"Checks whether the provided value is even.",a:"Whether the provided value is even.",p:[{name:"value",detail:"The value to be verified as even."}]},ISODD:{d:"Checks whether the provided value is odd.",a:"Whether the provided value is odd.",p:[{name:"value",detail:"The value to be verified as odd."}]},LCM:{d:"Returns the least common multiple of one or more integers.",a:"Least common multiple of one or more integers.",p:[{name:"value1",detail:"The first value or range whose factors to consider in a calculation to find the least common multiple."},{name:"value2",detail:"Additional values or ranges whose factors to consider to find the least common multiple."}]},LN:{d:"Returns the logarithm of a number, base e (Euler's number).",a:"The logarithm of a number, base e (euler's number).",p:[{name:"value",detail:"The value for which to calculate the logarithm, base e."}]},LOG:{d:"Returns the logarithm of a number with respect to a base.",a:"The logarithm of a number with respect to a base.",p:[{name:"value",detail:"The value for which to calculate the logarithm."},{name:"base",detail:"The base to use for calculation of the logarithm."}]},LOG10:{d:"Returns the logarithm of a number, base 10.",a:"The logarithm of a number, base 10.",p:[{name:"value",detail:"The value for which to calculate the logarithm, base 10."}]},MOD:{d:"Returns the result of the modulo operator, the remainder after a division operation.",a:"Modulo (remainder) operator.",p:[{name:"dividend",detail:"The number to be divided to find the remainder."},{name:"divisor",detail:"The number to divide by."}]},MROUND:{d:"Rounds one number to the nearest integer multiple of another.",a:"Rounds a number to the nearest integer multiple.",p:[{name:"value",detail:"The number to round to the nearest integer multiple of another."},{name:"factor",detail:"The number to whose multiples `value` will be rounded."}]},ODD:{d:"Rounds a number up to the nearest odd integer.",a:"Rounds a number up to the nearest odd integer.",p:[{name:"value",detail:"The value to round to the next greatest odd number."}]},SUMSQ:{d:"Returns the sum of the squares of a series of numbers and/or cells.",a:"Sum of squares.",p:[{name:"value1",detail:"The first number or range whose squares to add together."},{name:"value2",detail:"Additional numbers or ranges whose squares to add to the square(s) of `value1`."}]},COMBIN:{d:"Returns the number of ways to choose some number of objects from a pool of a given size of objects.",a:"Number of combinations from a set of objects.",p:[{name:"n",detail:"The size of the pool of objects to choose from."},{name:"k",detail:"The number of objects to choose."}]},SUM:{d:"Returns the sum of a series of numbers and/or cells.",a:"Sum of a series of numbers and/or cells.",p:[{name:"value1",detail:"The first number or range to add together."},{name:"value2",detail:"Additional numbers or ranges to add to `value1`."}]},SUBTOTAL:{d:"Returns a subtotal for a vertical range of cells using a specified aggregation function.",a:"Subtotal for a range using a specific function.",p:[{name:"function_code",detail:"The function to use in subtotal aggregation."},{name:"range1",detail:"The first range over which to calculate a subtotal."},{name:"range2",detail:"Additional ranges over which to calculate subtotals."}]},ASIN:{d:"Returns the inverse sine of a value, in radians.",a:"Inverse sine of a value, in radians.",p:[{name:"value",detail:"The value for which to calculate the inverse sine. Must be between `-1` and `1`, inclusive."}]},COUNTIF:{d:"Returns a conditional count across a range.",a:"A conditional count across a range.",p:[{name:"range",detail:"The range that is tested against `criterion`."},{name:"criterion",detail:"The pattern or test to apply to `range`."}]},RADIANS:{d:"Converts an angle value in degrees to radians.",a:"Converts an angle value in degrees to radians.",p:[{name:"angle",detail:"The angle to convert from degrees to radians."}]},RAND:{d:"Returns a random number between 0 inclusive and 1 exclusive.",a:"A random number between 0 inclusive and 1 exclusive.",p:[]},COUNTUNIQUE:{d:"Counts the number of unique values in a list of specified values and ranges.",a:"Counts number of unique values in a range.",p:[{name:"value1",detail:"The first value or range to consider for uniqueness."},{name:"value2",detail:"Additional values or ranges to consider for uniqueness."}]},DEGREES:{d:"Converts an angle value in radians to degrees.",a:"Converts an angle value in radians to degrees.",p:[{name:"angle",detail:"The angle to convert from radians to degrees."}]},ERFC:{d:"Returns the complementary Gauss error function of a value.",a:"Complementary gauss error function of a value.",p:[{name:"z",detail:"The number for which to calculate the complementary Gauss error function."}]},EVEN:{d:"Rounds a number up to the nearest even integer.",a:"Rounds a number up to the nearest even integer.",p:[{name:"value",detail:"The value to round to the next greatest even number."}]},EXP:{d:"Returns Euler's number, e (~2.718) raised to a power.",a:"Euler's number, e (~2.718) raised to a power.",p:[{name:"exponent",detail:"The exponent to raise e to."}]},FACT:{d:"Returns the factorial of a number.",a:"Factorial of a number.",p:[{name:"value",detail:"The number or reference to a number whose factorial will be calculated and returned."}]},FACTDOUBLE:{d:'Returns the "double factorial" of a number.',a:'"double factorial" of a number.',p:[{name:"value",detail:"The number or reference to a number whose double factorial will be calculated and returned."}]},PI:{d:"Returns the value of Pi to 14 decimal places.",a:"The number pi.",p:[]},FLOOR:{d:"Rounds a number down to the nearest integer multiple of specified significance `factor`.",a:"Rounds number down to nearest multiple of a factor.",p:[{name:"value",detail:"The value to round down to the nearest integer multiple of `factor`."},{name:"factor",detail:"The number to whose multiples `value` will be rounded."}]},GCD:{d:"Returns the greatest common divisor of one or more integers.",a:"Greatest common divisor of one or more integers.",p:[{name:"value1",detail:"The first value or range whose factors to consider in a calculation to find the greatest common divisor."},{name:"value2",detail:"Additional values or ranges whose factors to consider to find the greatest common divisor."}]},RANDBETWEEN:{d:"Returns a uniformly random integer between two values, inclusive.",a:"Random integer between two values, inclusive.",p:[{name:"low",detail:"The low end of the random range."},{name:"high",detail:"The high end of the random range."}]},ROUND:{d:"Rounds a number to a certain number of decimal places according to standard rules.",a:"Rounds a number according to standard rules.",p:[{name:"value",detail:"The value to round to `places` number of places."},{name:"places",detail:"The number of decimal places to which to round."}]},ROUNDDOWN:{d:"Rounds a number to a certain number of decimal places, always rounding down to the next valid increment.",a:"Rounds down a number.",p:[{name:"value",detail:"The value to round to `places` number of places, always rounding down."},{name:"places",detail:"The number of decimal places to which to round."}]},ROUNDUP:{d:"Rounds a number to a certain number of decimal places, always rounding up to the next valid increment.",a:"Rounds up a number.",p:[{name:"value",detail:"The value to round to `places` number of places, always rounding up."},{name:"places",detail:"The number of decimal places to which to round."}]},SERIESSUM:{d:"Given parameters `x`, `n`, `m`, and `a`, returns the power series sum a",a:"Sum of a power series.",p:[{name:"x",detail:"The input to the power series. Varies depending on the type of approximation, may be angle, exponent, or some other value."},{name:"n",detail:"The initial power to which to raise `x` in the power series."},{name:"m",detail:"The additive increment by which to increase `x`."},{name:"a",detail:"The array or range containing the coefficients of the power series."}]},SIGN:{d:"Given an input number, returns `-1` if it is negative, `1` if positive, and `0` if it is zero.",a:"Sign of a provided number (+/-/0).",p:[{name:"value",detail:"The value whose sign will be evaluated."}]},SIN:{d:"Returns the sine of an angle provided in radians.",a:"Sine of an angle provided in radians.",p:[{name:"angle",detail:"The angle to find the sine of, in radians."}]},SINH:{d:"Returns the hyperbolic sine of any real number.",a:"Hyperbolic sine of any real number.",p:[{name:"value",detail:"Any real value to calculate the hyperbolic sine of."}]},SQRT:{d:"Returns the positive square root of a positive number.",a:"Positive square root of a positive number.",p:[{name:"value",detail:"The number for which to calculate the positive square root."}]},SQRTPI:{d:"Returns the positive square root of the product of Pi and the given positive number.",a:"Square root of the product of pi and number.",p:[{name:"value",detail:"The number which will be multiplied by Pi and have the product's square root returned"}]},GAMMALN:{d:"Returns the logarithm of a specified Gamma function, base e (Euler's number).",a:"Logarithm of gamma function.",p:[{name:"value",detail:"The input to the Gamma function. The natural logarithm of Gamma(`value`) will be returned."}]},COS:{d:"Returns the cosine of an angle provided in radians.",a:"Cosine of an angle provided in radians.",p:[{name:"angle",detail:"The angle to find the cosine of, in radians."}]},TRUNC:{d:"Truncates a number to a certain number of significant digits by omitting less significant digits.",a:"Truncates a number.",p:[{name:"value",detail:"The value to be truncated."},{name:"places",detail:"The number of significant digits to the right of the decimal point to retain."}]},QUOTIENT:{d:"Returns one number divided by another.",a:"One number divided by another.",p:[{name:"dividend",detail:"The number to be divided."},{name:"divisor",detail:"The number to divide by."}]},POWER:{d:"Returns a number raised to a power.",a:"A number raised to a power.",p:[{name:"base",detail:"The number to raise to the `exponent` power."},{name:"exponent",detail:"The exponent to raise `base` to."}]},SUMIFS:{d:"Returns the sum of a range depending on multiple criteria.",a:"Sums a range depending on multiple criteria.",p:[{name:"sum_range",detail:"The range to sum."},{name:"criteria_range1",detail:"The range to check against criterion1."},{name:"criterion1",detail:"The pattern or test to apply to criteria_range1."},{name:"criteria_range2",detail:"Additional ranges to check."}]},COUNTIFS:{d:"Returns the count of a range depending on multiple criteria.",a:"Count values depending on multiple criteria.",p:[{name:"criteria_range1",detail:"The range to check against `criterion1`."},{name:"criterion1",detail:"The pattern or test to apply to `criteria_range1`."},{name:"criteria_range2",detail:"Additional ranges to check."}]},PRODUCT:{d:"Returns the result of multiplying a series of numbers together.",a:"Result of multiplying a series of numbers together.",p:[{name:"factor1",detail:"The first number or range to calculate for the product."},{name:"factor2",detail:"More numbers or ranges to calculate for the product."}]},HARMEAN:{d:"Calculates the harmonic mean of a dataset.",a:"The harmonic mean of a dataset.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},HYPGEOMDIST:{d:"Calculates the probability of drawing a certain number of successes in a certain number of tries given a population of a certain size containing a certain number of successes, without replacement of draws.",a:"Hypergeometric distribution probability.",p:[{name:"num_successes",detail:"The desired number of successes."},{name:"num_draws",detail:"The number of permitted draws."},{name:"successes_in_pop",detail:"The total number of successes in the population."},{name:"pop_size",detail:"The total size of the population"},{name:"cumulative",detail:`Determine the logical value of the function form. + +If cumulative is TRUE(), HYPGEOM.DIST returns the cumulative distribution function; + +if FALSE(), it returns the probability density function.`}]},INTERCEPT:{d:"Calculates the y-value at which the line resulting from linear regression of a dataset will intersect the y-axis (x=0).",a:"Y-intercept of line derived via linear regression.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},KURT:{d:'Calculates the kurtosis of a dataset, which describes the shape, and in particular the "peakedness" of that dataset.',a:"Kurtosis of a dataset.",p:[{name:"value1",detail:"The first value or range of the dataset."},{name:"value2",detail:"Additional values or ranges to include in the dataset."}]},LARGE:{d:"Returns the nth largest element from a data set, where n is user-defined.",a:"Nth largest element from a data set.",p:[{name:"data",detail:"Array or range containing the dataset to consider."},{name:"n",detail:"The rank from largest to smallest of the element to return."}]},STDEVA:{d:"Calculates the standard deviation based on a sample, setting text to the value `0`.",a:"Standard deviation of sample (text as 0).",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},STDEVP:{d:"Calculates the standard deviation based on an entire population.",a:"Standard deviation of an entire population.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},GEOMEAN:{d:"Calculates the geometric mean of a dataset.",a:"The geometric mean of a dataset.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},RANK_EQ:{d:"Returns the rank of a specified value in a dataset. If there is more than one entry of the same value in the dataset, the top rank of the entries will be returned.",a:"Top rank of a specified value in a dataset.",p:[{name:"value",detail:"The value whose rank will be determined."},{name:"data",detail:"The array or range containing the dataset to consider."},{name:"is_ascending",detail:"Whether to consider the values in `data` in descending or ascending order. If omitted, the default is descending (FALSE)."}]},RANK_AVG:{d:"Returns the rank of a specified value in a dataset. If there is more than one entry of the same value in the dataset, the average rank of the entries will be returned.",a:"Average rank of a specified value in a dataset.",p:[{name:"value",detail:"The value whose rank will be determined."},{name:"data",detail:"The array or range containing the dataset to consider."},{name:"is_ascending",detail:"Whether to consider the values in `data` in descending or ascending order. If omitted, the default is descending (FALSE)."}]},PERCENTRANK_EXC:{d:"Returns the percentage rank (percentile) from 0 to 1 exclusive of a specified value in a dataset.",a:"Percentage rank (percentile) from 0 to 1 exclusive.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"value",detail:"The value whose percentage rank will be determined."},{name:"significant_digits",detail:"The number of significant figures to use in the calculation. Default is 3."}]},PERCENTRANK_INC:{d:"Returns the percentage rank (percentile) from 0 to 1 inclusive of a specified value in a dataset.",a:"Percentage rank (percentile) from 0 to 1 inclusive.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"value",detail:"The value whose percentage rank will be determined."},{name:"significant_digits",detail:"The number of significant figures to use in the calculation. Default is 3."}]},FORECAST:{d:"Calculates the expected y-value for a specified x based on a linear regression of a dataset.",a:"Expected y-value based of linear regression.",p:[{name:"x",detail:"The value on the x-axis to forecast."},{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},FISHERINV:{d:"Returns the inverse Fisher transformation of a specified value.",a:"Inverse fisher transformation of a specified value.",p:[{name:"value",detail:"The value for which to calculate the inverse Fisher transformation."}]},FISHER:{d:"Returns the Fisher transformation of a specified value.",a:"Fisher transformation of a specified value.",p:[{name:"value",detail:"The value for which to calculate the Fisher transformation."}]},MODE_SNGL:{d:"Returns the most commonly occurring value in a dataset.",a:"Most commonly occurring value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating mode."},{name:"value2",detail:"Additional values or ranges to consider when calculating mode."}]},WEIBULL_DIST:{d:"Returns the value of the Weibull distribution function (or Weibull cumulative distribution function) for a specified shape and scale.",a:"Weibull distribution function.",p:[{name:"x",detail:"The input to the Weibull distribution function."},{name:"shape",detail:"The shape parameter of the Weibull distribution function."},{name:"scale",detail:"The scale parameter of the Weibull distribution function."},{name:"cumulative",detail:"Whether to use the cumulative distribution function."}]},COUNT:{d:"Returns the number of numeric values in a dataset.",a:"The number of numeric values in dataset.",p:[{name:"value1",detail:"The first value or range to consider when counting."},{name:"value2",detail:"Additional values or ranges to consider when counting."}]},COUNTA:{d:"Returns the number of values in a dataset.",a:"The number of values in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when counting."},{name:"value2",detail:"Additional values or ranges to consider when counting."}]},AVEDEV:{d:"Calculates the average of the magnitudes of deviations of data from a dataset's mean.",a:"Average magnitude of deviations from mean.",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},AVERAGE:{d:"Returns the numerical average value in a dataset, ignoring text.",a:"Numerical average value in a dataset, ignoring text.",p:[{name:"value1",detail:"The first value or range to consider when calculating the average value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the average value."}]},AVERAGEA:{d:"Returns the numerical average value in a dataset.",a:"Numerical average value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the average value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the average value."}]},BINOM_DIST:{d:"Calculates the probability of drawing a certain number of successes (or a maximum number of successes) in a certain number of tries given a population of a certain size containing a certain number of successes, with replacement of draws.",a:"Binomial distribution probability.",p:[{name:"num_successes",detail:"The number of successes for which to calculate the probability in `num_trials` trials."},{name:"num_trials",detail:"The number of independent trials."},{name:"prob_success",detail:"The probability of success in any given trial."},{name:"cumulative",detail:"Whether to use the binomial cumulative distribution."}]},BINOM_INV:{d:"Calculates the smallest value for which the cumulative binomial distribution is greater than or equal to a specified criteria.",a:"Inverse cumulative binomial distribution function.",p:[{name:"num_trials",detail:"The number of independent trials."},{name:"prob_success",detail:"The probability of success in any given trial."},{name:"target_prob",detail:"The desired threshold probability."}]},CONFIDENCE_NORM:{d:"Calculates the width of half the confidence interval for a normal distribution.",a:"Confidence interval for a normal distribution.",p:[{name:"alpha",detail:"One minus the desired confidence level. E.g. `0.1` for `0.9`, or 90%, confidence."},{name:"standard_deviation",detail:"The standard deviation of the population."},{name:"pop_size",detail:"The size of the population."}]},CORREL:{d:"Calculates r, the Pearson product-moment correlation coefficient of a dataset.",a:"Pearson Product-Moment Correlation Coefficient.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},COVARIANCE_P:{d:"Calculates the covariance of a dataset.",a:"The covariance of a dataset.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},COVARIANCE_S:{d:"Calculates the sample covariance of a dataset.",a:"The sample covariance of a dataset.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},DEVSQ:{d:"Calculates the sum of squares of deviations based on a sample.",a:"The sum of squares of deviations based on a sample.",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},EXPON_DIST:{d:"Returns the value of the exponential distribution function with a specified lambda at a specified value.",a:"Exponential distribution function.",p:[{name:"x",detail:"The input to the exponential distribution function."},{name:"lambda",detail:"The lambda to specify the exponential distribution function."},{name:"cumulative",detail:"Whether to use the exponential cumulative distribution."}]},AVERAGEIF:{d:"Returns the average of a range depending on criteria.",a:"Average of values depending on criteria.",p:[{name:"criteria_range",detail:"The range to check against `criterion`."},{name:"criterion",detail:"The pattern or test to apply to `criteria_range`."},{name:"average_range",detail:"The range to average. If not included, `criteria_range` is used for the average instead."}]},AVERAGEIFS:{d:"Returns the average of a range depending on multiple criteria.",a:"Average of values depending on multiple criteria.",p:[{name:"average_range",detail:"The range to average."},{name:"criteria_range1",detail:"The range to check against `criterion1`."},{name:"criterion1",detail:"The pattern or test to apply to `criteria_range1`."},{name:"criteria_range2",detail:"Additional ranges to check."}]},PERMUT:{d:"Returns the number of ways to choose some number of objects from a pool of a given size of objects, considering order.",a:"Number of permutations from a number of objects.",p:[{name:"n",detail:"The size of the pool of objects to choose from."},{name:"k",detail:"The number of objects to choose."}]},TRIMMEAN:{d:"Calculates the mean of a dataset excluding some proportion of data from the high and low ends of the dataset.",a:"Mean of a dataset excluding high/low ends.",p:[{name:"data",detail:"Array or range containing the dataset to consider."},{name:"exclude_proportion",detail:"The proportion of the dataset to exclude, from the extremities of the set."}]},PERCENTILE_EXC:{d:"Returns the value at a given percentile of a dataset exclusive of 0 and 1.",a:"Value at a given percentile of a dataset exclusive of 0 and 1.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"percentile",detail:"The percentile, exclusive of 0 and 1, whose value within 'data' will be calculated and returned."}]},PERCENTILE_INC:{d:"Returns the value at a given percentile of a dataset.",a:"Value at a given percentile of a dataset.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"percentile",detail:"The percentile whose value within `data` will be calculated and returned.`"}]},PEARSON:{d:"Calculates r, the Pearson product-moment correlation coefficient of a dataset.",a:"Pearson Product-Moment Correlation Coefficient.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},NORM_S_INV:{d:"Returns the value of the inverse standard normal distribution function for a specified value.",a:"Inverse standard normal distribution function.",p:[{name:"x",detail:"The input to the inverse standard normal distribution function."}]},NORM_S_DIST:{d:"Returns the value of the standard normal cumulative distribution function for a specified value.",a:"Standard normal cumulative distribution function.",p:[{name:"x",detail:"The input to the standard normal cumulative distribution function."},{name:"cumulative",detail:`Determine the logical value of the function form. + +If TRUE(), it returns the cumulative distribution function; + +If it is FALSE(), it returns the probability density function.`}]},NORM_INV:{d:"Returns the value of the inverse normal distribution function for a specified value, mean, and standard deviation.",a:"Inverse normal distribution function.",p:[{name:"x",detail:"The input to the inverse normal distribution function."},{name:"mean",detail:"The mean (mu) of the normal distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the normal distribution function."}]},NORM_DIST:{d:"Returns the value of the normal distribution function (or normal cumulative distribution function) for a specified value, mean, and standard deviation.",a:"Normal distribution function.",p:[{name:"x",detail:"The input to the normal distribution function."},{name:"mean",detail:"The mean (mu) of the normal distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the normal distribution function."},{name:"cumulative",detail:"Whether to use the normal cumulative distribution function rather than the distribution function."}]},NEGBINOM_DIST:{d:"Calculates the probability of drawing a certain number of failures before a certain number of successes given a probability of success in independent trials.",a:"Negative binomial distribution probability.",p:[{name:"num_failures",detail:"The number of failures to model."},{name:"num_successes",detail:"The number of successes to model."},{name:"prob_success",detail:"The probability of success in any given trial."},{name:"cumulative",detail:`Determine the logical value of the function form. + +If TRUE(), it returns the cumulative distribution function; + +If it is FALSE(), it returns the probability density function.`}]},MINA:{d:"Returns the minimum numeric value in a dataset.",a:"Minimum numeric value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the minimum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the minimum value."}]},MIN:{d:"Returns the minimum value in a numeric dataset.",a:"Minimum value in a numeric dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the minimum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the minimum value."}]},MEDIAN:{d:"Returns the median value in a numeric dataset.",a:"Median value in a numeric dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the median value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the median value."}]},MAXA:{d:"Returns the maximum numeric value in a dataset.",a:"Maximum numeric value in a dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the maximum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the maximum value."}]},MAX:{d:"Returns the maximum value in a numeric dataset.",a:"Maximum value in a numeric dataset.",p:[{name:"value1",detail:"The first value or range to consider when calculating the maximum value."},{name:"value2",detail:"Additional values or ranges to consider when calculating the maximum value."}]},LOGNORM_INV:{d:"Returns the value of the inverse log-normal cumulative distribution with given mean and standard deviation at a specified value.",a:"Inverse log-normal cumulative distribution function.",p:[{name:"x",detail:"The input to the inverse log-normal cumulative distribution function."},{name:"mean",detail:"The mean (mu) of the inverse log-normal cumulative distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the inverse log-normal cumulative distribution function."}]},LOGNORM_DIST:{d:"Returns the value of the log-normal cumulative distribution with given mean and standard deviation at a specified value.",a:"Log-normal cumulative distribution probability.",p:[{name:"x",detail:"The input to the log-normal cumulative distribution function."},{name:"mean",detail:"The mean (mu) of the log-normal cumulative distribution function."},{name:"standard_deviation",detail:"The standard deviation (sigma) of the log-normal cumulative distribution function."},{name:"cumulative",detail:`Determine the logical value of the function form. + +If TRUE(), it returns the cumulative distribution function; + +If it is FALSE(), it returns the probability density function.`}]},Z_TEST:{d:"Returns the one-tailed p-value of a Z-test with standard distribution.",a:"One-tailed p-value of a z-test.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"value",detail:"The test statistic to use in the Z-test."},{name:"standard_deviation",detail:"The standard deviation to assume for the Z-test. If this is not provided, the standard deviation of the data will be used."}]},PROB:{d:"Given a set of values and corresponding probabilities, calculates the probability that a value chosen at random falls between two limits.",a:"Probability values lie in a range.",p:[{name:"data",detail:"Array or range containing the dataset to consider."},{name:"probabilities",detail:"Array or range containing probabilities corresponding to `data`."},{name:"low_limit",detail:"The lower bound on the value range for which to calculate the probability."},{name:"high_limit",detail:"The upper bound on the value range for which to calculate the probability."}]},QUARTILE_EXC:{d:"Returns a value nearest to a specified quartile of a dataset exclusive of 0 and 4.",a:"Value nearest to a specific quartile of a dataset exclusive of 0 and 4.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"quartile_number",detail:"Which quartile to return."}]},QUARTILE_INC:{d:"Returns a value nearest to a specified quartile of a dataset.",a:"Value nearest to a specific quartile of a dataset.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"quartile_number",detail:"Which quartile value to return."}]},POISSON_DIST:{d:"Returns the value of the Poisson distribution function (or Poisson cumulative distribution function) for a specified value and mean.",a:"Poisson distribution function.",p:[{name:"x",detail:"The input to the Poisson distribution function."},{name:"mean",detail:"The mean (mu) of the Poisson distribution function."},{name:"cumulative",detail:"Whether to use the Poisson cumulative distribution function rather than the distribution function."}]},RSQ:{d:"Calculates the square of r, the Pearson product-moment correlation coefficient of a dataset.",a:"Square of the correlation coefficient.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},T_DIST:{d:"Calculates the left tail probability for a Student's t-distribution with a given input (x).",a:"The left-tailed Student's t-distribution",p:[{name:"x",detail:"The input to the t-distribution function."},{name:"degrees_freedom",detail:"The number of degrees of freedom."},{name:"cumulative",detail:"If cumulative is TRUE, T.DIST returns the cumulative distribution function; if FALSE, it returns the probability density function."}]},T_DIST_2T:{d:"Calculates the probability for two tailed Student's t-distribution with a given input (x).",a:"The two tailed Student's t-distribution",p:[{name:"x",detail:"The input to the t-distribution function."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_DIST_RT:{d:"Calculates the right tail probability for a Student's t-distribution with a given input (x).",a:"The right-tailed Student's t-distribution",p:[{name:"x",detail:"The input to the t-distribution function."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_INV:{d:"Calculates the negative inverse of the one-tailed TDIST function.",a:"T.INV",p:[{name:"probability",detail:"The probability associated with the two-tailed t-distribution."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_INV_2T:{d:"Calculates the inverse of the two-tailed TDIST function.",a:"T.INV.2T",p:[{name:"probability",detail:"The probability associated with the two-tailed t-distribution."},{name:"degrees_freedom",detail:"The number of degrees of freedom."}]},T_TEST:{d:"t-test. Returns the probability associated with Student's t-test. Determines whether two samples are likely to have come from the same two underlying populations that have the same mean.",a:"Returns the probability associated with t-test.",p:[{name:"range1",detail:"The first sample of data or group of cells to consider for the t-test."},{name:"range2",detail:"The second sample of data or group of cells to consider for the t-test."},{name:"tails",detail:"Specifies the number of distribution tails."},{name:"type",detail:"Specifies the type of t-test."}]},F_DIST:{d:"Calculates the left-tailed F probability distribution (degree of diversity) for two data sets with given input x. Alternately called Fisher-Snedecor distribution or Snedecor's F distribution.",a:"F probability distribution (left-tailed).",p:[{name:"x",detail:"The input to the F probability distribution function. The value at which to evaluate the function."},{name:"degrees_freedom1",detail:"The numerator of the number of degrees of freedom."},{name:"degrees_freedom2",detail:"The denominator of the number of degrees of freedom."},{name:"cumulative",detail:"Logical value that determines the form of the function."}]},F_DIST_RT:{d:"Calculates the right-tailed F probability distribution (degree of diversity) for two data sets with given input x. Alternately called Fisher-Snedecor distribution or Snedecor's F distribution.",a:"F probability distribution.",p:[{name:"x",detail:"The input to the F probability distribution function. The value at which to evaluate the function."},{name:"degrees_freedom1",detail:"The numerator of the number of degrees of freedom."},{name:"degrees_freedom2",detail:"The denominator of the number of degrees of freedom."}]},VAR_P:{d:"Calculates the variance based on an entire population.",a:"Variance of entire population.",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},VAR_S:{d:"Calculates the variance based on a sample.",a:"Variance.",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},VARA:{d:"Calculates the variance based on a sample, setting text to the value `0`.",a:"Variance of sample (text as 0).",p:[{name:"value1",detail:"The first value or range of the sample."},{name:"value2",detail:"Additional values or ranges to include in the sample."}]},VARPA:{d:"Calculates the variance based on an entire population, setting text to the value `0`.",a:"Variance of entire population (text as 0).",p:[{name:"value1",detail:"The first value or range of the population."},{name:"value2",detail:"Additional values or ranges to include in the population."}]},STEYX:{d:"Calculates the standard error of the predicted y-value for each x in the regression of a dataset.",a:"Standard error of predicted y-values in regression.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},STANDARDIZE:{d:"Calculates the normalized equivalent of a random variable given mean and standard deviation of the distribution.",a:"Normalized equivalent of a random variable.",p:[{name:"value",detail:"The value of the random variable to normalize."},{name:"mean",detail:"The mean of the distribution."},{name:"standard_deviation",detail:"The standard deviation of the distribution."}]},SMALL:{d:"Returns the nth smallest element from a data set, where n is user-defined.",a:"Nth smallest element in a data set.",p:[{name:"data",detail:"The array or range containing the dataset to consider."},{name:"n",detail:"The rank from smallest to largest of the element to return."}]},SLOPE:{d:"Calculates the slope of the line resulting from linear regression of a dataset.",a:"Slope of line from linear regression of data.",p:[{name:"data_y",detail:"The range representing the array or matrix of dependent data."},{name:"data_x",detail:"The range representing the array or matrix of independent data."}]},SKEW:{d:"Calculates the skewness of a dataset, which describes the symmetry of that dataset about the mean.",a:"Skewness of a dataset.",p:[{name:"value1",detail:"The first value or range of the dataset."},{name:"value2",detail:"Additional values or ranges to include in the dataset."}]},SKEW_P:{d:"Calculates the skewness of a dataset, which describes the symmetry of that dataset about the mean. This assumes the dataset is for the population.",a:"Skewness of a population's dataset.",p:[{name:"value1",detail:"The first value or range of the dataset."},{name:"value2",detail:"Additional values or ranges to include in the dataset."}]},VLOOKUP:{d:"Vertical lookup. Searches down the first column of a range for a key and returns the value of a specified cell in the row found.",a:"Vertical lookup.",p:[{name:"search_key",detail:'The value to search for. For example, `42`, `"Cats"`, or `I24`.'},{name:"range",detail:"The range to consider for the search. The first column in the range is searched for the key specified in `search_key`."},{name:"index",detail:"The column index of the value to be returned, where the first column in `range` is numbered 1."},{name:"is_sorted",detail:"Indicates whether the column to be searched (the first column of the specified range) is sorted, in which case the closest match for `search_key` will be returned."}]},HLOOKUP:{d:"Horizontal lookup. Searches across the first row of a range for a key and returns the value of a specified cell in the column found.",a:"Horizontal lookup",p:[{name:"search_key",detail:'The value to search for. For example, `42`, `"Cats"`, or `I24`.'},{name:"range",detail:"The range to consider for the search. The first row in the range is searched for the key specified in `search_key`."},{name:"index",detail:"The row index of the value to be returned, where the first row in `range` is numbered 1."},{name:"is_sorted",detail:"Indicates whether the row to be searched (the first row of the specified range) is sorted."}]},LOOKUP:{d:"Looks through a sorted row or column for a key and returns the value of the cell in a result range located in the same position as the search row or column.",a:"Look up a value.",p:[{name:"search_key",detail:'The value to search for in the row or column. For example, `42`, `"Cats"`, or `I24`.'},{name:"search_range|search_result_array",detail:"One method of using this function is to provide a single sorted row or column `search_range` to look through for the `search_key` with a second argument `result_range`. The other way is to combine these two arguments into one `search_result_array` where the first row or column is searched and a value is returned from the last row or column in the array. If `search_key` is not found, a non-exact match may be returned."},{name:"result_range",detail:"The range from which to return a result. The value returned corresponds to the location where `search_key` is found in `search_range`. This range must be only a single row or column and should not be used if using the `search_result_array` method."}]},ADDRESS:{d:"Returns a cell reference as a string.",a:"Cell reference as a string.",p:[{name:"row",detail:"The row number of the cell reference"},{name:"column",detail:"The column number (not name) of the cell reference. `A` is column number `1`."},{name:"absolute_relative_mode",detail:"An indicator of whether the reference is row/column absolute. `1` is row and column absolute (e.g. $A$1), `2` is row absolute and column relative (e.g. A$1), `3` is row relative and column absolute (e.g. $A1), and `4` is row and column relative (e.g. A1)."},{name:"use_a1_notation",detail:"A boolean indicating whether to use `A1` style notation (TRUE) or `R1C1` style notation (FALSE)."},{name:"sheet",detail:"Text indicating the name of the sheet into which the address points."}]},INDIRECT:{d:"Returns a cell reference specified by a string.",a:"A cell reference specified by a string.",p:[{name:"cell_reference_as_string",detail:"A cell reference, written as a string with surrounding quotation marks."},{name:"is_A1_notation",detail:"Indicates if the cell reference is in A1 notation (TRUE) or R1C1 notation (FALSE)."}]},ROW:{d:"Returns the row number of a specified cell.",a:"Row number of a specified cell.",p:[{name:"cell_reference",detail:"The cell whose row number will be returned."}]},ROWS:{d:"Returns the number of rows in a specified array or range.",a:"Number of rows in a specified array or range.",p:[{name:"range",detail:"The range whose row count will be returned."}]},COLUMN:{d:"Returns the column number of a specified cell, with `A=1`.",a:"Column number of a specified cell.",p:[{name:"cell_reference",detail:"The cell whose column number will be returned. Column `A` corresponds to `1`."}]},COLUMNS:{d:"Returns the number of columns in a specified array or range.",a:"Number of columns in a specified array or range.",p:[{name:"range",detail:"The range whose column count will be returned."}]},OFFSET:{d:"Returns a range reference shifted a specified number of rows and columns from a starting cell reference.",a:"A range reference offset relative to a cell.",p:[{name:"cell_reference",detail:"The starting point from which to count the offset rows and columns."},{name:"offset_rows",detail:"The number of rows to offset by."},{name:"offset_columns",detail:"The number of columns to offset by."},{name:"height",detail:"The height of the range to return starting at the offset target."},{name:"width",detail:"The width of the range to return starting at the offset target."}]},MATCH:{d:"Returns the relative position of an item in a range that matches a specified value.",a:"Position of item in range that matches value.",p:[{name:"search_key",detail:'The value to search for. For example, `42`, `"Cats"`, or `I24`.'},{name:"range",detail:"The one-dimensional array to be searched."},{name:"search_type",detail:"The search method. `1` (default) finds the largest value less than or equal to `search_key` when `range` is sorted in ascending order. `0` finds the exact value when `range` is unsorted. `-1` finds the smallest value greater than or equal to `search_key` when `range` is sorted in descending order."}]},INDEX:{d:"Returns the content of a cell, specified by row and column offset.",a:"Content of cell specified by row and column offset.",p:[{name:"reference",detail:"The array of cells to be offset into."},{name:"row",detail:"The number of offset rows."},{name:"column",detail:"The number of offset columns."}]},GETPIVOTDATA:{d:"Extracts an aggregated value from a pivot table that corresponds to the specified row and column headings.",a:"Extracts an aggregated value from a pivot table that corresponds to the specified row and column headings.",p:[{name:"value_name",detail:"The name of the value in the pivot table for which you want to get data."},{name:"any_pivot_table_cell",detail:"Any reference to a cell in the desired pivot table (top corner recommended)."},{name:"original_column",detail:"The name of the column in the original data set (not the pivot table)."},{name:"pivot_item",detail:"The name of the row or column shown in the pivot table corresponding to *original_column* that you want to retrieve."}]},CHOOSE:{d:"Returns an element from a list of choices based on index.",a:"An element from a list of choices based on index.",p:[{name:"index",detail:"Which choice (of the up to 30 provided) to return."},{name:"choice1",detail:"A potential value to return. Required. May be a reference to a cell or an individual value."},{name:"choice2",detail:"Additional values among which to choose."}]},HYPERLINK:{d:"Creates a hyperlink inside a cell.",a:"Creates a hyperlink inside a cell.",p:[{name:"url",detail:"The full URL of the link location enclosed in quotation marks, or a reference to a cell containing such a URL."},{name:"link_label",detail:"The text to display in the cell as the link, enclosed in quotation marks, or a reference to a cell containing such a label."}]},TIME:{d:"Converts a provided hour, minute, and second into a time.",a:"Converts hour/minute/second into a time.",p:[{name:"hour",detail:"The hour component of the time."},{name:"minute",detail:"The minute component of the time."},{name:"second",detail:"The second component of the time."}]},TIMEVALUE:{d:"Returns the fraction of a 24-hour day the time represents.",a:"Converts a time string into its serial number representation.",p:[{name:"time_string",detail:"The string that holds the time representation."}]},EOMONTH:{d:"Returns a date on the last day of a month that falls a specified number of months before or after another date.",a:"Last day of a month before or after a date.",p:[{name:"start_date",detail:"The date from which to calculate the result."},{name:"months",detail:"The number of months before (negative) or after (positive) 'start_date' to consider."}]},EDATE:{d:"Returns a date a specified number of months before or after another date.",a:"Date a number of months before/after another date.",p:[{name:"start_date",detail:"The date from which to calculate the result."},{name:"months",detail:"The number of months before (negative) or after (positive) 'start_date' to calculate."}]},SECOND:{d:"Returns the second component of a specific time, in numeric format.",a:"Second component of a specific time.",p:[{name:"time",detail:"The time from which to calculate the second component"}]},MINUTE:{d:"Returns the minute component of a specific time, in numeric format.",a:"Minute component of a specific time.",p:[{name:"time",detail:"The time from which to calculate the minute component."}]},HOUR:{d:"Returns the hour component of a specific time, in numeric format.",a:"Hour component of a specific time.",p:[{name:"time",detail:"The time from which to calculate the hour component."}]},NOW:{d:"Returns the current date and time as a date value.",a:"Current date and time as a date value.",p:[]},NETWORKDAYS:{d:"Returns the number of net working days between two provided days.",a:"Net working days between two provided days.",p:[{name:"start_date",detail:"The start date of the period from which to calculate the number of net working days."},{name:"end_date",detail:"The end date of the period from which to calculate the number of net working days."},{name:"holidays",detail:"A range or array constant containing the date serial numbers to consider holidays."}]},NETWORKDAYS_INTL:{d:"Returns the number of net working days between two provided days excluding specified weekend days and holidays.",a:"Net working days between two dates (specifying weekends).",p:[{name:"start_date",detail:"The start date of the period from which to calculate the number of net working days."},{name:"end_date",detail:"The end date of the period from which to calculate the number of net working days."},{name:"weekend",detail:"A number or string representing which days of the week are considered weekends."},{name:"holidays",detail:"A range or array constant containing the dates to consider as holidays."}]},ISOWEEKNUM:{d:"Returns a number representing the ISO week of the year where the provided date falls.",a:"ISO week number of the year.",p:[{name:"date",detail:"The date for which to determine the ISO week number. Must be a reference to a cell containing a date, a function returning a date type, or a number."}]},WEEKNUM:{d:"Returns a number representing the week of the year where the provided date falls.",a:"Week number of the year.",p:[{name:"date",detail:"The date for which to determine the week number. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"type",detail:"A number representing the day that a week starts on. Sunday = 1."}]},WEEKDAY:{d:"Returns a number representing the day of the week of the date provided.",a:"Day of the week of the date provided (as number).",p:[{name:"date",detail:"The date for which to determine the day of the week. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"type",detail:"A number indicating which numbering system to use to represent weekdays. By default, counts starting with Sunday = 1."}]},DAY:{d:"Returns the day of the month that a specific date falls on, in numeric format.",a:"Day of the month that a specific date falls on.",p:[{name:"date",detail:"The date from which to extract the day."}]},DAYS:{d:"Returns the number of days between two dates.",a:"Number of days between two dates.",p:[{name:"end_date",detail:"The end of the date range."},{name:"start_date",detail:"The start of the date range."}]},DAYS360:{d:"Returns the difference between two days based on the 360 day year used in some financial interest calculations.",a:"Days between two dates on a 360-day year.",p:[{name:"start_date",detail:"The start date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"end_date",detail:"The end date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"method",detail:"An indicator of what day count method to use."}]},DATE:{d:"Converts a provided year, month, and day into a date.",a:"Converts year/month/day into a date.",p:[{name:"year",detail:"The year component of the date."},{name:"month",detail:"The month component of the date."},{name:"day",detail:"The day component of the date."}]},DATEVALUE:{d:"Converts a provided date string in a known format to a date value.",a:"Converts a date string to a date value.",p:[{name:"date_string",detail:"The string representing the date."}]},DATEDIF:{d:"Calculates the number of days, months, or years between two dates.",a:"Date Difference.",p:[{name:"start_date",detail:"The start date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"end_date",detail:"The end date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"unit",detail:'A string abbreviation for unit of time. For example, "M" for month. Accepted values are "Y","M","D","MD","YM","YD".'}]},WORKDAY:{d:"Calculates the date after a number of working days from a specified start date.",a:"Number of working days from start date.",p:[{name:"start_date",detail:"The date from which to begin counting."},{name:"num_days",detail:"The number of working days to advance from `start_date`. If negative, counts backwards."},{name:"holidays",detail:"A range or array constant containing the dates to consider holidays."}]},WORKDAY_INTL:{d:"Calculates the date after a specified number of workdays excluding specified weekend days and holidays.",a:"Date after a number of workdays (specifying weekends).",p:[{name:"start_date",detail:"The date from which to begin counting."},{name:"num_days",detail:"The number of working days to advance from `start_date`. If negative, counts backwards."},{name:"weekend",detail:"A number or string representing which days of the week are considered weekends."},{name:"holidays",detail:"A range or array constant containing the dates to consider holidays."}]},YEAR:{d:"Returns the year specified by a given date.",a:"Year specified by a given date.",p:[{name:"date",detail:"The date from which to extract the year."}]},YEARFRAC:{d:"Returns the number of years, including fractional years, between two dates using a specified day count convention.",a:"Exact number of years between two dates.",p:[{name:"start_date",detail:"The start date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"end_date",detail:"The end date to consider in the calculation. Must be a reference to a cell containing a date, a function returning a date type, or a number."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},TODAY:{d:"Returns the current date as a date value.",a:"Current date as a date value.",p:[]},MONTH:{d:"Returns the month of the year a specific date falls in, in numeric format.",a:"Month of the year a specific date falls in.",p:[{name:"date",detail:"The date from which to extract the month."}]},EFFECT:{d:"Calculates the annual effective interest rate given the nominal rate and number of compounding periods per year.",a:"Annual effective interest rate.",p:[{name:"nominal_rate",detail:"The nominal interest rate per year."},{name:"periods_per_year",detail:"The number of compounding periods per year."}]},DOLLAR:{d:"Formats a number into the currency specific to your spreadsheet locale.",a:"Formats a number as currency specific to your spreadsheet locale.",p:[{name:"number",detail:"The value to be formatted."},{name:"number_of_places",detail:"The number of decimal places to display."}]},DOLLARDE:{d:"Converts a price quotation given as a decimal fraction into a decimal value.",a:"Converts a decimal fraction to decimal value.",p:[{name:"fractional_price",detail:"The price quotation given using fractional decimal conventions."},{name:"unit",detail:"The units of the fraction, e.g. `8` for 1/8ths or `32` for 1/32nds."}]},DOLLARFR:{d:"Converts a price quotation given as a decimal value into a decimal fraction.",a:"Converts a decimal value to decimal fraction.",p:[{name:"decimal_price",detail:"The price quotation given as a decimal value."},{name:"unit",detail:"The units of the desired fraction, e.g. `8` for 1/8ths or `32` for 1/32nds."}]},DB:{d:"Calculates the depreciation of an asset for a specified period using the arithmetic declining balance method.",a:"Depreciation via declining balance method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."},{name:"period",detail:"The single period within `life` for which to calculate depreciation."},{name:"month",detail:"The number of months in the first year of depreciation."}]},DDB:{d:"Calculates the depreciation of an asset for a specified period using the double-declining balance method.",a:"Depreciation via double-declining balance method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."},{name:"period",detail:"The single period within `life` for which to calculate depreciation."},{name:"factor",detail:"The factor by which depreciation decreases."}]},RATE:{d:"Calculates the interest rate of an annuity investment based on constant-amount periodic payments and the assumption of a constant interest rate.",a:"Interest rate of an annuity investment.",p:[{name:"number_of_periods",detail:"The number of payments to be made."},{name:"payment_per_period",detail:"The amount per period to be paid."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."},{name:"rate_guess",detail:"An estimate for what the interest rate will be."}]},CUMPRINC:{d:"Calculates the cumulative principal paid over a range of payment periods for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Cumulative principal paid over a set of periods.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"first_period",detail:"The number of the payment period to begin the cumulative calculation."},{name:"last_period",detail:"The number of the payment period to end the cumulative calculation."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},COUPNUM:{d:"Calculates the number of coupons, or interest payments, between the settlement date and the maturity date of the investment.",a:"Number of coupons between settlement and maturity.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},SYD:{d:"Calculates the depreciation of an asset for a specified period using the sum of years digits method.",a:"Depreciation via sum of years digits method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."},{name:"period",detail:"The single period within `life` for which to calculate depreciation."}]},TBILLEQ:{d:"Calculates the equivalent annualized rate of return of a US Treasury Bill based on discount rate.",a:"Equivalent rate of return for a Treasury bill.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"discount",detail:"The discount rate of the bill at time of purchase."}]},TBILLYIELD:{d:"Calculates the yield of a US Treasury Bill based on price.",a:"The yield of a us treasury bill based on price.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"price",detail:"The price at which the security is bought per 100 face value."}]},TBILLPRICE:{d:"Calculates the price of a US Treasury Bill based on discount rate.",a:"Price of US treasury bill.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"discount",detail:"The discount rate of the bill at time of purchase."}]},PV:{d:"Calculates the present value of an annuity investment based on constant-amount periodic payments and a constant interest rate.",a:"Present value of an annuity investment.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"payment_amount",detail:"The amount per period to be paid."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},ACCRINT:{d:"Calculates the accrued interest of a security that has periodic payments.",a:"Accrued interest of security with periodic payments.",p:[{name:"issue",detail:"The date the security was initially issued."},{name:"first_payment",detail:"The first date interest will be paid."},{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"rate",detail:"The annualized rate of interest."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."},{name:"calc_method",detail:`[Optional-defaults to TRUE()] - A logical value that specifies the method used to calculate the total accrued interest when the settlement date is later than the first interest accrual date. + +If the value is TRUE, the total accrued interest from the issue date to the settlement date is returned. + +If the value is FALSE, return the accrued interest from the first interest accrual date to the settlement date.`}]},ACCRINTM:{d:"Calculates the accrued interest of a security that pays interest at maturity.",a:"Accrued interest of security paying at maturity.",p:[{name:"issue",detail:"The date the security was initially issued."},{name:"maturity",detail:"The maturity date of the security."},{name:"rate",detail:"The annualized rate of interest."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPDAYBS:{d:"Calculates the number of days from the first coupon, or interest payment, until settlement.",a:"Number of days from first coupon to settlement.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPDAYS:{d:"Calculates the number of days in the coupon, or interest payment, period that contains the specified settlement date.",a:"Days in coupon period containing settlement date.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPDAYSNC:{d:"Calculates the number of days from the settlement date until the next coupon, or interest payment.",a:"Days from settlement until next coupon.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPNCD:{d:"Calculates next coupon, or interest payment, date after the settlement date.",a:"Next coupon date after the settlement date.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},COUPPCD:{d:"Calculates last coupon, or interest payment, date before the settlement date.",a:"Last coupon date before settlement date.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},FV:{d:"Calculates the future value of an annuity investment based on constant-amount periodic payments and a constant interest rate.",a:"Future value of an annuity investment.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"payment_amount",detail:"The amount per period to be paid."},{name:"present_value",detail:"The current value of the annuity."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},FVSCHEDULE:{d:"Calculates the future value of some principal based on a specified series of potentially varying interest rates.",a:"Future value of principal from series of rates.",p:[{name:"principal",detail:"The amount of initial capital or value to compound against."},{name:"rate_schedule",detail:"A series of interest rates to compound against the `principal`."}]},YIELD:{d:"Calculates the annual yield of a security paying periodic interest, such as a US Treasury Bond, based on price.",a:"Annual yield of a security paying periodic interest.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"price",detail:"The price at which the security is bought per 100 face value."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},YIELDDISC:{d:"Calculates the annual yield of a discount (non-interest-bearing) security, based on price.",a:"Annual yield of a discount security.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"price",detail:"The price at which the security is bought per 100 face value."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},NOMINAL:{d:"Calculates the annual nominal interest rate given the effective rate and number of compounding periods per year.",a:"Annual nominal interest rate.",p:[{name:"effective_rate",detail:"The effective interest rate per year."},{name:"periods_per_year",detail:"The number of compounding periods per year."}]},XIRR:{d:"Calculates the internal rate of return of an investment based on a specified series of potentially irregularly spaced cash flows.",a:"Internal rate of return given non-periodic cashflows.",p:[{name:"cashflow_amounts",detail:"An array or range containing the income or payments associated with the investment."},{name:"cashflow_dates",detail:"An array or range with dates corresponding to the cash flows in `cashflow_amounts`."},{name:"rate_guess",detail:"An estimate for what the internal rate of return will be."}]},MIRR:{d:"Calculates the modified internal rate of return on an investment based on a series of periodic cash flows and the difference between the interest rate paid on financing versus the return received on reinvested income.",a:"Modified internal rate of return.",p:[{name:"cashflow_amounts",detail:"An array or range containing the income or payments associated with the investment."},{name:"financing_rate",detail:"The interest rate paid on funds invested."},{name:"reinvestment_return_rate",detail:"The return (as a percentage) earned on reinvestment of income received from the investment."}]},IRR:{d:"Calculates the internal rate of return on an investment based on a series of periodic cash flows.",a:"Internal rate of return given periodic cashflows.",p:[{name:"cashflow_amounts",detail:"An array or range containing the income or payments associated with the investment."},{name:"rate_guess",detail:"An estimate for what the internal rate of return will be."}]},NPV:{d:"Calculates the net present value of an investment based on a series of periodic cash flows and a discount rate.",a:"The net present value of an investment based on a series of periodic cash flows and a discount rate.",p:[{name:"discount",detail:"The discount rate of the investment over one period."},{name:"cashflow1",detail:"The first future cash flow."},{name:"cashflow2",detail:"Additional future cash flows."}]},XNPV:{d:"Calculates the net present value of an investment based on a specified series of potentially irregularly spaced cash flows and a discount rate.",a:"Net present value given non-periodic cashflows.",p:[{name:"discount",detail:"The discount rate of the investment over one period."},{name:"cashflow_amounts",detail:"A range of cells containing the income or payments associated with the investment."},{name:"cashflow_dates",detail:"A range of cells with dates corresponding to the cash flows in `cashflow_amounts`."}]},CUMIPMT:{d:"Calculates the cumulative interest over a range of payment periods for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Cumulative interest paid over a set of periods.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"first_period",detail:"The number of the payment period to begin the cumulative calculation."},{name:"last_period",detail:"The number of the payment period to end the cumulative calculation."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},PMT:{d:"Calculates the periodic payment for an annuity investment based on constant-amount periodic payments and a constant interest rate.",a:"Periodic payment for an annuity investment.",p:[{name:"rate",detail:"The interest rate."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},IPMT:{d:"Calculates the payment on interest for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Payment on interest for an investment.",p:[{name:"rate",detail:"The interest rate."},{name:"period",detail:"The amortization period, in terms of number of periods."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},PPMT:{d:"Calculates the payment on the principal of an investment based on constant-amount periodic payments and a constant interest rate.",a:"Payment on the principal of an investment.",p:[{name:"rate",detail:"The interest rate."},{name:"period",detail:"The amortization period, in terms of number of periods."},{name:"number_of_periods",detail:"The number of payments to be made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},INTRATE:{d:"Calculates the effective interest rate generated when an investment is purchased at one price and sold at another with no interest or dividends generated by the investment itself.",a:"Calculates effective interest rate.",p:[{name:"buy_date",detail:"The date of purchase of the investment."},{name:"sell_date",detail:"The date of sale of the investment."},{name:"buy_price",detail:"The price at which the investment was purchased."},{name:"sell_price",detail:"The price at which the investment was sold."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},PRICE:{d:"Calculates the price of a security paying periodic interest, such as a US Treasury Bond, based on expected yield.",a:"Price of a security paying periodic interest.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},PRICEDISC:{d:"Calculates the price of a discount (non-interest-bearing) security, based on expected yield.",a:"Price of a discount security.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"discount",detail:"The discount rate of the security at time of purchase."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},PRICEMAT:{d:"Calculates the price of a security paying interest at maturity, based on expected yield.",a:"Price of security paying interest at maturity.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"issue",detail:"The date the security was initially issued."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},RECEIVED:{d:"Calculates the amount received at maturity for an investment in fixed-income securities purchased on a given date.",a:"Amount received at maturity for a security.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"investment",detail:"The amount invested (irrespective of face value of each security)."},{name:"discount",detail:"The discount rate of the security invested in."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},DISC:{d:"Calculates the discount rate of a security based on price.",a:"The discount rate of a security based on price.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"price",detail:"The price at which the security is bought per 100 face value."},{name:"redemption",detail:"The redemption amount per 100 face value, or par."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},NPER:{d:"Calculates the number of payment periods for an investment based on constant-amount periodic payments and a constant interest rate.",a:"Number of payment periods for an investment.",p:[{name:"rate",detail:"The interest rate."},{name:"payment_amount",detail:"The amount of each payment made."},{name:"present_value",detail:"The current value of the annuity."},{name:"future_value",detail:"The future value remaining after the final payment has been made."},{name:"end_or_beginning",detail:"Whether payments are due at the end (`0`) or beginning (`1`) of each period."}]},SLN:{d:"Calculates the depreciation of an asset for one period using the straight-line method.",a:"Depreciation of asset using the straight-line method.",p:[{name:"cost",detail:"The initial cost of the asset."},{name:"salvage",detail:"The value of the asset at the end of depreciation."},{name:"life",detail:"The number of periods over which the asset is depreciated."}]},DURATION:{d:"Calculates the number of compounding periods required for an investment of a specified present value appreciating at a given rate to reach a target value.",a:"Number of periods for an investment to reach a value.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},MDURATION:{d:"Calculates the modified Macaulay duration of a security paying periodic interest, such as a US Treasury Bond, based on expected yield.",a:"Modified Macaulay duration.",p:[{name:"settlement",detail:"The settlement date of the security, the date after issuance when the security is delivered to the buyer."},{name:"maturity",detail:"The maturity or end date of the security, when it can be redeemed at face, or par value."},{name:"rate",detail:"The annualized rate of interest."},{name:"yield",detail:"The expected annual yield of the security."},{name:"frequency",detail:"The number of interest or coupon payments per year (1, 2, or 4)."},{name:"day_count_convention",detail:"An indicator of what day count method to use."}]},BIN2DEC:{d:"Converts a signed binary number to decimal format.",a:"Converts a signed binary number to decimal format.",p:[{name:"signed_binary_number",detail:"The signed 10-bit binary value to be converted to decimal, provided as a string."}]},BIN2HEX:{d:"Converts a signed binary number to signed hexadecimal format.",a:"Converts a binary number to hexadecimal.",p:[{name:"signed_binary_number",detail:"The signed 10-bit binary value to be converted to signed hexademical, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},BIN2OCT:{d:"Converts a signed binary number to signed octal format.",a:"Converts a binary number to octal.",p:[{name:"signed_binary_number",detail:"The signed 10-bit binary value to be converted to signed octal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},DEC2BIN:{d:"Converts a decimal number to signed binary format.",a:"Converts a decimal number to signed binary format.",p:[{name:"decimal_number",detail:"The decimal value to be converted to signed binary, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},DEC2HEX:{d:"Converts a decimal number to signed hexadecimal format.",a:"Converts a decimal number to hexadecimal.",p:[{name:"decimal_number",detail:"The decimal value to be converted to signed hexadecimal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},DEC2OCT:{d:"Converts a decimal number to signed octal format.",a:"Converts a decimal number to signed octal format.",p:[{name:"decimal_number",detail:"The decimal value to be converted to signed octal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},HEX2BIN:{d:"Converts a signed hexadecimal number to signed binary format.",a:"Converts a hexadecimal number to binary.",p:[{name:"signed_hexadecimal_number",detail:"The signed 40-bit hexadecimal value to be converted to signed binary, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},HEX2DEC:{d:"Converts a signed hexadecimal number to decimal format.",a:"Converts a hexadecimal number to decimal.",p:[{name:"signed_hexadecimal_number",detail:"The signed 40-bit hexadecimal value to be converted to decimal, provided as a string."}]},HEX2OCT:{d:"Converts a signed hexadecimal number to signed octal format.",a:"Converts a hexadecimal number to octal.",p:[{name:"signed_hexadecimal_number",detail:"The signed 40-bit hexadecimal value to be converted to signed octal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},OCT2BIN:{d:"Converts a signed octal number to signed binary format.",a:"Converts an octal number to binary.",p:[{name:"signed_octal_number",detail:"The signed 30-bit octal value to be converted to signed binary, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},OCT2DEC:{d:"Converts a signed octal number to decimal format.",a:"Converts a signed octal number to decimal format.",p:[{name:"signed_octal_number",detail:"The signed 30-bit octal value to be converted to decimal, provided as a string."}]},OCT2HEX:{d:"Converts a signed octal number to signed hexadecimal format.",a:"Converts an octal number to hexadecimal.",p:[{name:"signed_octal_number",detail:"The signed 30-bit octal value to be converted to signed hexadecimal, provided as a string."},{name:"significant_digits",detail:"The number of significant digits to ensure in the result."}]},COMPLEX:{d:"Creates a complex number given real and imaginary coefficients.",a:"Creates a complex number.",p:[{name:"real_part",detail:"The real coefficient."},{name:"imaginary_part",detail:"The imaginary coefficient."},{name:"suffix",detail:"The suffix for the imaginary coefficient, can only be 'i' or 'j'. If omitted, 'i' will be used."}]},IMREAL:{d:"Returns the real coefficient of a complex number.",a:"The real coefficient of a complex number.",p:[{name:"complex_number",detail:"The complex number, in the a+bi or a+bj format."}]},IMAGINARY:{d:"Returns the imaginary coefficient of a complex number.",a:"The imaginary coefficient of a complex number.",p:[{name:"complex_number",detail:"The complex number, in the a+bi or a+bj format."}]},IMCONJUGATE:{d:"Returns the complex conjugate of a number.",a:"The complex conjugate of a number.",p:[{name:"number",detail:"The complex number to calculate the conjugate for."}]},IMABS:{d:"Returns absolute value (or modulus) of a complex number.",a:"The absolute value of a complex number.",p:[{name:"number",detail:"The complex number to calculate the absolute value of."}]},DELTA:{d:"Compare two numeric values, returning 1 if they're equal.",a:"Compare two numeric values.",p:[{name:"number1",detail:"The first number to compare."},{name:"number2",detail:"The second number to compare."}]},IMSUM:{d:"Returns the sum of a series of complex numbers.",a:"Sum of a series of complex numbers.",p:[{name:"value1",detail:"The first complex number or range to add together."},{name:"value2",detail:"Additional complex numbers or ranges to add to `value1`."}]},IMSUB:{d:"Returns the difference between two complex numbers.",a:"The difference between two complex numbers.",p:[{name:"first_number",detail:"The complex number to subtract second_number from."},{name:"second_number",detail:"The complex number to subtract from first_number."}]},IMPRODUCT:{d:"Returns the result of multiplying a series of complex numbers together.",a:"Result of multiplying a series of complex numbers together.",p:[{name:"factor1",detail:"The first number or range to calculate for the product."},{name:"factor2",detail:"Additional complex numbers or ranges to calculate for the product."}]},IMDIV:{d:"Returns one complex number divided by another.",a:"One complex number divided by another.",p:[{name:"dividend",detail:"The complex number to be divided."},{name:"divisor",detail:"The complex number to divide by."}]},NOT:{d:"Returns the opposite of a logical value - `NOT(TRUE)` returns `FALSE`; `NOT(FALSE)` returns `TRUE`.",a:"Returns opposite of provided logical value.",p:[{name:"logical_expression",detail:"An expression or reference to a cell holding an expression that represents some logical value."}]},TRUE:{d:"Returns the logical value `TRUE`.",a:"Logical value `true`.",p:[]},FALSE:{d:"Returns the logical value `FALSE`.",a:"Logical value `false`.",p:[]},AND:{d:"Returns true if all of the provided arguments are logically true, and false if any of the provided arguments are logically false.",a:"Logical `and` operator.",p:[{name:"logical_expression1",detail:"An expression or reference to a cell containing an expression that represents some logical value, i.e. `TRUE` or `FALSE`, or an expression that can be coerced to a logical value."},{name:"logical_expression2",detail:"More expressions that represent logical values."}]},IFERROR:{d:"Returns the first argument if it is not an error value, otherwise returns the second argument if present, or a blank if the second argument is absent.",a:"Value if it is not an error, otherwise 2nd argument.",p:[{name:"value",detail:"The value to return if `value` itself is not an error."},{name:"value_if_error",detail:"The value the function returns if `value` is an error."}]},IF:{d:"Returns one value if a logical expression is `TRUE` and another if it is `FALSE`.",a:"Returns value depending on logical expression.",p:[{name:"logical_expression",detail:"An expression or reference to a cell containing an expression that represents some logical value, i.e. `TRUE` or `FALSE`."},{name:"value_if_true",detail:"The value the function returns if `logical_expression` is `TRUE`."},{name:"value_if_false",detail:"The value the function returns if `logical_expression` is `FALSE`."}]},OR:{d:"Returns true if any of the provided arguments are logically true, and false if all of the provided arguments are logically false.",a:"Logical `or` operator.",p:[{name:"logical_expression1",detail:"An expression or reference to a cell containing an expression that represents some logical value, i.e. `TRUE` or `FALSE`, or an expression that can be coerced to a logical value."},{name:"logical_expression2",detail:"More expressions that evaluate to logical values."}]},NE:{d:"Returns `TRUE` if two specified values are not equal and `FALSE` otherwise. Equivalent to the `!=` operator.",a:"Not equal.",p:[{name:"value1",detail:"The first value."},{name:"value2",detail:"The value to test against `value1` for inequality."}]},EQ:{d:"Returns `TRUE` if two specified values are equal and `FALSE` otherwise. Equivalent to the `==` operator.",a:"Equal.",p:[{name:"value1",detail:"The first value."},{name:"value2",detail:"The value to test against `value1` for equality."}]},GT:{d:"Returns `TRUE` if the first argument is strictly greater than the second, and `FALSE` otherwise. Equivalent to the `>` operator.",a:"Strictly greater than.",p:[{name:"value1",detail:"The value to test as being greater than `value2`."},{name:"value2",detail:"The second value."}]},GTE:{d:"Returns `TRUE` if the first argument is greater than or equal to the second, and `FALSE` otherwise. Equivalent to the `>=` operator.",a:"Greater than or equal to.",p:[{name:"value1",detail:"The value to test as being greater than or equal to `value2`."},{name:"value2",detail:"The second value."}]},LT:{d:"Returns `TRUE` if the first argument is strictly less than the second, and `FALSE` otherwise. Equivalent to the `<` operator.",a:"Less than.",p:[{name:"value1",detail:"The value to test as being less than `value2`."},{name:"value2",detail:"The second value."}]},LTE:{d:"Returns `TRUE` if the first argument is less than or equal to the second, and `FALSE` otherwise. Equivalent to the `<=` operator.",a:"Less than or equal to.",p:[{name:"value1",detail:"The value to test as being less than or equal to `value2`."},{name:"value2",detail:"The second value."}]},ADD:{d:"Returns the sum of two numbers. Equivalent to the `+` operator.",a:"Sum of two numbers",p:[{name:"value1",detail:"The first addend."},{name:"value2",detail:"The second addend."}]},MINUS:{d:"Returns the difference of two numbers. Equivalent to the `-` operator.",a:"Difference of two numbers",p:[{name:"value1",detail:"The minuend, or number to be subtracted from."},{name:"value2",detail:"The subtrahend, or number to subtract from `value1`."}]},MULTIPLY:{d:"Returns the product of two numbers. Equivalent to the `*` operator.",a:"Product of two numbers",p:[{name:"factor1",detail:"The first multiplicand."},{name:"factor2",detail:"The second multiplicand."}]},DIVIDE:{d:"Returns one number divided by another. Equivalent to the `/` operator.",a:"One number divided by another",p:[{name:"dividend",detail:"The number to be divided."},{name:"divisor",detail:"The number to divide by."}]},CONCAT:{d:"Returns the concatenation of two values. Equivalent to the `&` operator.",a:"Concatenation of two values",p:[{name:"value1",detail:"The value to which `value2` will be appended."},{name:"value2",detail:"The value to append to `value1`."}]},UNARY_PERCENT:{d:"Returns a value interpreted as a percentage; that is, `UNARY_PERCENT(100)` equals `1`.",a:"Value interpreted as a percentage.",p:[{name:"percentage",detail:"The value to interpret as a percentage."}]},CONCATENATE:{d:"Appends strings to one another.",a:"Appends strings to one another.",p:[{name:"string1",detail:"The initial string."},{name:"string2",detail:"More strings to append in sequence."}]},CODE:{d:"Returns the numeric Unicode map value of the first character in the string provided.",a:"Numeric unicode map value of character.",p:[{name:"string",detail:"The string whose first character's Unicode map value will be returned."}]},CHAR:{d:"Convert a number into a character according to the current Unicode table.",a:"Gets character associated with number.",p:[{name:"table_number",detail:"The number of the character to look up from the current Unicode table in decimal format."}]},ARABIC:{d:"Computes the value of a Roman numeral.",a:"Computes the value of a roman numeral.",p:[{name:"roman_numeral",detail:"The Roman numeral to format, whose value must be between 1 and 3999, inclusive."}]},ROMAN:{d:"Formats a number in Roman numerals.",a:"Formats a number in Roman numerals.",p:[{name:"number",detail:"The number to format, between 1 and 3999, inclusive."}]},REGEXEXTRACT:{d:"Extracts matching substrings according to a regular expression.",a:"Extracts matching substrings with regular expression.",p:[{name:"text",detail:"The input text."},{name:"regular_expression",detail:"The first part of `text` that matches this expression will be returned."}]},REGEXMATCH:{d:"Whether a piece of text matches a regular expression.",a:"Whether a piece of text matches regular expression.",p:[{name:"text",detail:"The text to be tested against the regular expression."},{name:"regular_expression",detail:"The regular expression to test the text against."}]},REGEXREPLACE:{d:"Replaces part of a text string with a different text string using regular expressions.",a:"Replaces text with regular expressions.",p:[{name:"text",detail:"The text, a part of which will be replaced."},{name:"regular_expression",detail:"The regular expression. All matching instances in `text` will be replaced."},{name:"replacement",detail:"The text which will be inserted into the original text."}]},T:{d:"Returns string arguments as text, or the empty string if the value is not text.",a:"String arguments as text.",p:[{name:"value",detail:"The argument to be converted to text."}]},FIXED:{d:"Formats a number with a fixed number of decimal places.",a:"Formats number with fixed number of decimal places.",p:[{name:"number",detail:"The number to format."},{name:"number_of_places",detail:"The number of decimal places to display in the result."},{name:"suppress_separator",detail:"Whether or not to suppress the thousands separator used in some locales (e.g. `1,000` becomes `1000`). Separators will be present if this value is 0 or omitted, and absent otherwise."}]},FIND:{d:"Returns the position at which a string is first found within text where the capitalization of letters matters. Returns `#VALUE!` if the string is not found.",a:"First position of string found in text, case-sensitive.",p:[{name:"search_for",detail:"The string to look for within `text_to_search`."},{name:"text_to_search",detail:"The text to search for the first occurrence of `search_for`."},{name:"starting_at",detail:"The character within `text_to_search` at which to start the search."}]},FINDB:{d:"Returns the position at which a string is first found within text counting each double-character as 2.",a:"Position at which a string is first found within text (binary).",p:[{name:"search_for",detail:"The string to look for within `text_to_search`."},{name:"text_to_search",detail:"The text to search for the first occurrence of `search_for`."},{name:"starting_at",detail:"The character within `text_to_search` at which to start the search."}]},JOIN:{d:"Concatenates the elements of one or more one-dimensional arrays using a specified delimiter.",a:"Concatenates elements of arrays with delimiter.",p:[{name:"delimiter",detail:"The character or string to place between each concatenated value."},{name:"value_or_array1",detail:"The value or values to be appended using `delimiter`."},{name:"value_or_array2",detail:"More values to be appended using `delimiter`."}]},LEFT:{d:"Returns a substring from the beginning of a specified string.",a:"Substring from beginning of specified string.",p:[{name:"string",detail:"The string from which the left portion will be returned."},{name:"number_of_characters",detail:"The number of characters to return from the left side of `string`."}]},RIGHT:{d:"Returns a substring from the end of a specified string.",a:"A substring from the end of a specified string.",p:[{name:"string",detail:"The string from which the right portion will be returned."},{name:"number_of_characters",detail:"The number of characters to return from the right side of `string`."}]},MID:{d:"Returns a segment of a string.",a:"A segment of a string.",p:[{name:"string",detail:"The string to extract a segment from."},{name:"starting_at",detail:"The index from the left of `string` from which to begin extracting. The first character in `string` has the index 1."},{name:"extract_length",detail:"The length of the segment to extract."}]},LEN:{d:"Returns the length of a string.",a:"Length of a string.",p:[{name:"text",detail:"The string whose length will be returned."}]},LENB:{d:"Returns the length of a string in bytes.",a:"Length of a string in bytes.",p:[{name:"text",detail:"The string whose length will be returned."}]},LOWER:{d:"Converts a specified string to lowercase.",a:"Converts a specified string to lowercase.",p:[{name:"text",detail:"The string to convert to lowercase."}]},UPPER:{d:"Converts a specified string to uppercase.",a:"Converts a specified string to uppercase.",p:[{name:"text",detail:"The string to convert to uppercase."}]},EXACT:{d:"Tests whether two strings are identical.",a:"Tests whether two strings are identical.",p:[{name:"string1",detail:"The first string to compare"},{name:"string2",detail:"The second string to compare"}]},REPLACE:{d:"Replaces part of a text string with a different text string.",a:"Replaces part of a text string with different text.",p:[{name:"text",detail:"The text, a part of which will be replaced."},{name:"position",detail:"The position where the replacement will begin (starting from 1)."},{name:"length",detail:"The number of characters in the text to be replaced."},{name:"new_text",detail:"The text which will be inserted into the original text."}]},REPT:{d:"Returns specified text repeated a number of times.",a:"Specified text repeated a number of times.",p:[{name:"text_to_repeat",detail:"The character or string to repeat."},{name:"number_of_repetitions",detail:"The number of times `text_to_repeat` should appear in the value returned."}]},SEARCH:{d:"Returns the position at which a string is first found within text and ignores capitalization of letters. Returns `#VALUE!` if the string is not found.",a:"First position of string found in text, ignoring case.",p:[{name:"search_for",detail:"The string to look for within `text_to_search`."},{name:"text_to_search",detail:"The text to search for the first occurrence of `search_for`."},{name:"starting_at",detail:"The character within `text_to_search` at which to start the search."}]},SUBSTITUTE:{d:"Replaces existing text with new text in a string.",a:"Replaces existing text with new text in a string.",p:[{name:"text_to_search",detail:"The text within which to search and replace."},{name:"search_for",detail:"The string to search for within `text_to_search`."},{name:"replace_with",detail:"The string that will replace `search_for`."},{name:"occurrence_number",detail:"The instance of `search_for` within `text_to_search` to replace with `replace_with`. By default, all occurrences of `search_for` are replaced; however, if `occurrence_number` is specified, only the indicated instance of `search_for` is replaced."}]},CLEAN:{d:"Returns the text with the non-printable ASCII characters removed.",a:"Removes non-printable characters from a piece of text.",p:[{name:"text",detail:"The text whose non-printable characters are to be removed."}]},TEXT:{d:"Converts a number into text according to a specified format.",a:"Formats a number into text.",p:[{name:"number",detail:"The number, date, or time to format."},{name:"format",detail:"The pattern by which to format the number, enclosed in quotation marks."}]},TRIM:{d:"Removes leading, trailing, and repeated spaces in text.",a:"Removes space characters.",p:[{name:"text",detail:"The text or reference to a cell containing text to be trimmed."}]},VALUE:{d:"Converts a string in any of the date, time or number formats that Google Sheets understands into a number.",a:"Converts a date/time/number string into a number.",p:[{name:"text",detail:"The string containing the value to be converted."}]},PROPER:{d:"Capitalizes each word in a specified string.",a:"Capitalizes each word in a specified string.",p:[{name:"text_to_capitalize",detail:"The text which will be returned with the first letter of each word in uppercase and all other letters in lowercase."}]},CONVERT:{d:"Converts a numeric value to a different unit of measure.",a:"Unit conversion for numbers.",p:[{name:"value",detail:"The numeric value in `start_unit` to convert to `end_unit`."},{name:"start_unit",detail:"The starting unit, the unit currently assigned to `value`."},{name:"end_unit",detail:"The unit of measure into which to convert the argument, `value`."}]},SUMX2MY2:{d:"Calculates the sum of the differences of the squares of values in two arrays.",a:"Sum of the differences of squares.",p:[{name:"array_x",detail:"The array or range of values whose squares will be reduced by the squares of corresponding entries in `array_y` and added together."},{name:"array_y",detail:"The array or range of values whose squares will be subtracted from the squares of corresponding entries in `array_x` and added together."}]},SUMX2PY2:{d:"Calculates the sum of the sums of the squares of values in two arrays.",a:"Sum of the sums of squares.",p:[{name:"array_x",detail:"The array or range of values whose squares will be added to the squares of corresponding entries in `array_y` and added together."},{name:"array_y",detail:"The array or range of values whose squares will be added to the squares of corresponding entries in `array_x` and added together."}]},SUMXMY2:{d:"Calculates the sum of the squares of differences of values in two arrays.",a:"Sum of the squares of differences.",p:[{name:"array_x",detail:"The array or range of values that will be reduced by corresponding entries in `array_y`, squared, and added together."},{name:"array_y",detail:"The array or range of values that will be subtracted from corresponding entries in `array_x`, the result squared, and all such results added together."}]},TRANSPOSE:{d:"Transposes the rows and columns of an array or range of cells.",a:"Transposes the rows and columns of an array.",p:[{name:"array_or_range",detail:"The array or range whose rows and columns will be swapped."}]},TREND:{d:"Given partial data about a linear trend, fits an ideal linear trend using the least squares method and/or predicts further values.",a:"Fits points to linear trend derived via least-squares.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal linear trend."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"new_data_x",detail:"The data points to return the `y` values for on the ideal curve fit."},{name:"b",detail:"Given a general linear form of `y = m*x+b` for a curve fit, calculates `b` if `TRUE` or forces `b` to be `0` and only calculates the `m` values if `FALSE`, i.e. forces the curve fit to pass through the origin."}]},FREQUENCY:{d:"Calculates the frequency distribution of a one-column array into specified classes.",a:"The frequency distribution of array.",p:[{name:"data",detail:"The array or range containing the values to be counted."},{name:"classes",detail:"The array or range containing the set of classes."}]},GROWTH:{d:"Given partial data about an exponential growth trend, fits an ideal exponential growth trend and/or predicts further values.",a:"Fits points to exponential growth trend.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal exponential growth curve."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"new_data_x",detail:"The data points to return the `y` values for on the ideal curve fit."},{name:"b",detail:"Given a general exponential form of `y = b*m^x` for a curve fit, calculates `b` if `TRUE` or forces `b` to be `1` and only calculates the `m` values if `FALSE`."}]},LINEST:{d:"Given partial data about a linear trend, calculates various parameters about the ideal linear trend using the least-squares method.",a:"Best-fit linear trend via least-squares.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal linear trend."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"calculate_b",detail:"Given a linear form of `y = m*x+b`, calculates the y-intercept (`b`) if `TRUE`. Otherwise, forces `b` to be `0` and only calculates the `m` values if `FALSE`, i.e. forces the curve fit to pass through the origin."},{name:"verbose",detail:"A flag specifying whether to return additional regression statistics or only the linear coefficients and the y-intercept (default)."}]},LOGEST:{d:"Given partial data about an exponential growth curve, calculates various parameters about the best fit ideal exponential growth curve.",a:"Best-fit exponential growth curve.",p:[{name:"known_data_y",detail:"The array or range containing dependent (y) values that are already known, used to curve fit an ideal exponential growth curve."},{name:"known_data_x",detail:"The values of the independent variable(s) corresponding with `known_data_y`."},{name:"b",detail:"Given a general exponential form of `y = b*m^x` for a curve fit, calculates `b` if `TRUE` or forces `b` to be `1` and only calculates the `m` values if `FALSE`."},{name:"verbose",detail:"A flag specifying whether to return additional regression statistics or only the calculated coefficient and exponents."}]},MDETERM:{d:"Returns the matrix determinant of a square matrix specified as an array or range.",a:"Matrix determinant of a square matrix.",p:[{name:"square_matrix",detail:"An array or range with an equal number of rows and columns representing a matrix whose determinant will be calculated."}]},MINVERSE:{d:"Returns the multiplicative inverse of a square matrix specified as an array or range.",a:"Multiplicative inverse of square matrix.",p:[{name:"square_matrix",detail:"An array or range with an equal number of rows and columns representing a matrix whose multiplicative inverse will be calculated."}]},MMULT:{d:"Calculates the matrix product of two matrices specified as arrays or ranges.",a:"The matrix product of two matrices.",p:[{name:"matrix1",detail:"The first matrix in the matrix multiplication operation, represented as an array or range."},{name:"matrix2",detail:"The second matrix in the matrix multiplication operation, represented as an array or range."}]},SUMPRODUCT:{d:"Calculates the sum of the products of corresponding entries in two equal-sized arrays or ranges.",a:"Sum of products of elements in two arrays.",p:[{name:"array1",detail:"The first array or range whose entries will be multiplied with corresponding entries in the second such array or range."},{name:"array2",detail:"The second array or range whose entries will be multiplied with corresponding entries in the first such array or range."}]},ISFORMULA:{d:"Checks whether a value is a formula.",a:"Whether a value is a formula.",p:[{name:"cell",detail:"The cell to be verified as containing a formula."}]},CELL:{d:"Returns the requested information about the specified cell.",a:"Gets information about a cell.",p:[{name:"info_type",detail:"The type of information requested (see article for available types)"},{name:"reference",detail:"The reference to the cell."}]},NA:{d:'Returns the "value not available" error, `#N/A`.',a:"The `#N/A` error.",p:[]},ERROR_TYPE:{d:"Returns a number corresponding to the error value in a different cell.",a:"Error value of cell (as number).",p:[{name:"reference",detail:"The cell to find the error number for although you can also provide the error value directly."}]},ISBLANK:{d:"Checks whether the referenced cell is empty.",a:"Whether the referenced cell is empty.",p:[{name:"value",detail:"Reference to the cell that will be checked for emptiness."}]},ISERR:{d:"Checks whether a value is an error other than `#N/A`.",a:"Whether a value is an error other than `#n/a`.",p:[{name:"value",detail:"The value to be verified as an error type other than `#N/A`."}]},ISERROR:{d:"Checks whether a value is an error.",a:"Whether a value is an error.",p:[{name:"value",detail:"The value to be verified as an error type."}]},ISLOGICAL:{d:"Checks whether a value is `TRUE` or `FALSE`.",a:"Whether a value is `true` or `false`.",p:[{name:"value",detail:"The value to be verified as a logical `TRUE` or `FALSE`."}]},ISNA:{d:"Checks whether a value is the error `#N/A`.",a:"Whether a value is the error `#n/a`.",p:[{name:"value",detail:"The value to be compared with the error value `#N/A`."}]},ISNONTEXT:{d:"Checks whether a value is non-textual.",a:"Whether a value is non-textual.",p:[{name:"value",detail:"The value to be checked."}]},ISNUMBER:{d:"Checks whether a value is a number.",a:"Whether a value is a number.",p:[{name:"value",detail:"The value to be verified as a number."}]},ISREF:{d:"Checks whether a value is a valid cell reference.",a:"Whether a value is a valid cell reference.",p:[{name:"value",detail:"The value to be verified as a cell reference."}]},ISTEXT:{d:"Checks whether a value is text.",a:"Whether a value is text.",p:[{name:"value",detail:"The value to be verified as text."}]},TYPE:{d:"Returns a number associated with the type of data passed into the function.",a:"Get the type of a value.",p:[{name:"value",detail:"The value whose type is to be determined."}]},N:{d:"Returns the argument provided as a number. Text is converted to 0 and errors are returned as-is.",a:"Argument provided as a number.",p:[{name:"value",detail:"The argument to be converted to a number."}]},TO_DATE:{d:"Converts a provided number to a date.",a:"Converts a provided number to a date.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a date."}]},TO_PURE_NUMBER:{d:"Converts a provided date/time, percentage, currency or other formatted numeric value to a pure number without formatting.",a:"Converts any numeric value to a pure number.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a pure number."}]},TO_TEXT:{d:"Converts a provided numeric value to a text value.",a:"Converts a provided numeric value to a text value.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to text."}]},TO_DOLLARS:{d:"Converts a provided number to a dollar value.",a:"Converts a provided number to a dollar value.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a dollar value."}]},TO_PERCENT:{d:"Converts a provided number to a percentage.",a:"Converts a provided number to a percentage.",p:[{name:"value",detail:"The argument or reference to a cell to be converted to a percentage."}]},DGET:{d:"Returns a single value from a database table-like array or range using a SQL-like query.",a:"Single value from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DMAX:{d:"Returns the maximum value selected from a database table-like array or range using a SQL-like query.",a:"Maximum of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DMIN:{d:"Returns the minimum value selected from a database table-like array or range using a SQL-like query.",a:"Minimum of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DAVERAGE:{d:"Returns the average of a set of values selected from a database table-like array or range using a SQL-like query.",a:"Average of a set of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DCOUNT:{d:"Counts numeric values selected from a database table-like array or range using a SQL-like query.",a:"Counts values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DCOUNTA:{d:"Counts values, including text, selected from a database table-like array or range using a SQL-like query.",a:"Counts values and text from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DPRODUCT:{d:"Returns the product of values selected from a database table-like array or range using a SQL-like query.",a:"Product of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DSTDEV:{d:"Returns the standard deviation of a population sample selected from a database table-like array or range using a SQL-like query.",a:"Standard deviation of population sample from table.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DSTDEVP:{d:"Returns the standard deviation of an entire population selected from a database table-like array or range using a SQL-like query.",a:"Standard deviation of entire population from table.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DSUM:{d:"Returns the sum of values selected from a database table-like array or range using a SQL-like query.",a:"Sum of values from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DVAR:{d:"Returns the variance of a population sample selected from a database table-like array or range using a SQL-like query.",a:"Variance of population sample from table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},DVARP:{d:"Returns the variance of an entire population selected from a database table-like array or range using a SQL-like query.",a:"Variance of a population from a table-like range.",p:[{name:"database",detail:"The array or range containing the data to consider, structured in such a way that the first row contains the labels for each column's values."},{name:"field",detail:"Indicates which column in `database` contains the values to be extracted and operated on."},{name:"criteria",detail:"An array or range containing zero or more criteria to filter the `database` values by before operating."}]},AGE_BY_IDCARD:{d:"Calculate the age based on the Chinese ID number. Support 15 or 18",a:"Get age based on ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."},{name:"Deadline",detail:"The deadline or range of age calculation. The default is the current day."}]},SEX_BY_IDCARD:{d:"Calculate gender based on Chinese ID number. Support 15 or 18",a:"Get gender based on ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},BIRTHDAY_BY_IDCARD:{d:"Calculate the birthday based on the Chinese ID number. Support 15 or 18",a:"Get the birthday based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."},{name:"Birthday format",detail:"Date type, default:0:[1900/01/01], 1:[1900-01-01], 2:[1900\u5E741\u67081\u65E5]"}]},PROVINCE_BY_IDCARD:{d:"Calculate the province of birthplace based on the Chinese ID number. Support 15 or 18",a:"Get the province of birthplace based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},CITY_BY_IDCARD:{d:"Calculate the city of birthplace based on the Chinese ID number. Support 15 or 18",a:"Get the city of birthplace based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},STAR_BY_IDCARD:{d:"Calculate the constellation based on the Chinese ID number. Support 15 or 18",a:"Get the constellation based on the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},ANIMAL_BY_IDCARD:{d:"Calculate the zodiac (rat, ox, tiger, rabbit...) based on the Chinese ID number. Support 15 or 18",a:"Get the zodiac according to the ID number.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},ISIDCARD:{d:"Verify that the format of the ID card is correct. Support 15 or 18",a:"Verify the correctness of the ID card format.",p:[{name:"ID number",detail:"15-digit or 18-digit ID number or range."}]},DM_TEXT_CUTWORD:{d:"Text segmentation. Split a series of words into a series of individual words",a:"Chinese text segmentation.",p:[{name:"Text",detail:"Any text that needs word segmentation."},{name:"Word segmentation mode",detail:"The default is 0[precision mode], 1[full mode], 2[search engine mode]."}]},DM_TEXT_TFIDF:{d:"Use tf-idf algorithm for keyword extraction. Identify keywords from a series of text",a:"tf-idf keyword recognition.",p:[{name:"Text",detail:"Any text that needs word segmentation."},{name:"Number of keywords",detail:"The number of keywords returned by the algorithm, the default is 20"},{name:"Corpus",detail:"Select a corpus in a specific field, the default is 0[General], 1[Finance], 2[Medical]"}]},DM_TEXT_TEXTRANK:{d:"Use TextRank algorithm to extract keywords. Identify keywords from a series of text",a:"TextRank keyword recognition.",p:[{name:"Text",detail:"Any text that needs word segmentation."},{name:"Number of keywords",detail:"The number of keywords returned by the algorithm, the default is 20"},{name:"Corpus",detail:"Select a corpus in a specific field, the default is 0[General], 1[Finance], 2[Medical]"}]},DATA_CN_STOCK_CLOSE:{d:"According to the stock code and date, return the corresponding stock closing price of A shares.",a:"Returns the closing price of stock.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_OPEN:{d:"According to the stock code and date, return the opening price of stock.",a:"Return the opening price of a shares.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_MAX:{d:"According to the stock code and date, return the highest price of stock.",a:"Return the highest price of stock.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_MIN:{d:"According to the stock code and date, return the lowest price of stock.",a:"Returns the lowest price of stock.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_VOLUMN:{d:"According to the stock code and date, return the corresponding stock trading volume of A shares.",a:"Returns the corresponding stock trading volume of A shares.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},DATA_CN_STOCK_AMOUNT:{d:"According to the stock code and date, return the corresponding stock turnover of A shares.",a:"Returns the corresponding stock turnover of A shares.",p:[{name:"Stock code",detail:"6-digit stock code, required."},{name:"Date",detail:"The trading day of the stock, the default is the latest trading day"},{name:"Reversion and exclusion",detail:"Select the ex right restoration type of the stock, default to 0 [former reversion], 1 [original price], 2 [post reversion]"}]},ISDATE:{d:"Returns whether a value is a date.",a:"Whether a value is a date.",p:[{name:"value",detail:"The value to be verified as a date."}]},LINESPLINES:{d:"Generate sparklines embedded in the cell to describe the continuous trend of data",a:"Generate sparklines line chart",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Line color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #2ec7c9"},{name:"Line thickness",detail:"Line thickness of the line graph, the default is 1px"},{name:"Auxiliary line",detail:"A horizontal line, which can be min, max, avg, median, range or custom value, default 0 none"},{name:"Auxiliary line color",detail:"Color setting of auxiliary line, same as line color configuration, default #000"},{name:"Maximum mark",detail:"Identifies the maximum value of the line graph, the same line color configuration, default 0 does not display"},{name:"Minimum mark",detail:"Identify the minimum value of the line graph, the same line color configuration, default 0 does not display"},{name:"Mark size",detail:"The maximum and minimum mark size settings, the default is 1.5"}]},AREASPLINES:{d:"Generate sparklines embedded in the cell area chart, generally used to describe the continuous cumulative value trend of the data",a:"Generate sparklines area chart",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Line color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #2ec7c9"},{name:"Fill color",detail:"Form an area chart, the same line color configuration, default 0 does not display"},{name:"Line thickness",detail:"Line thickness of the line graph, the default is 1px"},{name:"Auxiliary line",detail:"A horizontal line, which can be min, max, avg, median, range or custom value, default 0 none"},{name:"Auxiliary line color",detail:"Color setting of auxiliary line, same as line color configuration, default #000"}]},COLUMNSPLINES:{d:"Generate sparklines embedded in the vertical histogram of cells, generally used to describe the size of discrete data",a:"Generate sparklines vertical histogram",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Bar color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #fc5c5c"},{name:"Negative bar color",detail:"Negative bar color setting, representing the color of negative value, same as the bar color configuration, default #97b552"},{name:"Max",detail:"The maximum value of the bar chart, used to standardize the length of the bar chart, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can set the color of each bar individually, multiple settings can be set, and two formats are supported: 1 color such as #000, which means that the color of the first bar is black; 2 value range: color, such as -2:# 000 indicates that the bar with a value of -2 is black, 0:5:#000 indicates that the bar with a value of 0-5 is black, and the default is empty"}]},STACKCOLUMNSPLINES:{d:"Generate sparklines, a cumulative vertical histogram embedded in a cell, generally used to describe the numerical size of multiple dimensions of discrete data",a:"Generate sparklines cumulative vertical histogram",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Stack by column",detail:"If you need to stack by row, set this item to false or 0, the default is 1"},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Max",detail:"The maximum value of the cumulative bar, used to regulate the length of the bar, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can individually set the bar color of each dimension, which can be set to the range of A1:A10, etc. The default is #2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BARSPLINES:{d:"Generate sparklines embedded in the cell, generally used to describe the size of discrete data",a:"Generate sparklines horizontal bar graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Bar color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #fc5c5c"},{name:"Negative bar color",detail:"Negative bar color setting, representing the color of negative value, same as the bar color configuration, default #97b552"},{name:"Max",detail:"The maximum value of the bar chart, used to standardize the length of the bar chart, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can set the color of each bar individually, multiple settings can be set, and two formats are supported: 1 color such as #000, which means that the color of the first bar is black; 2 value range: color, such as -2:# 000 indicates that the bar with a value of -2 is black, 0:5:#000 indicates that the bar with a value of 0-5 is black, and the default is empty"}]},STACKBARSPLINES:{d:"Generate sparklines, a cumulative horizontal bar graph embedded in a cell, which is generally used to describe the numerical size of multiple dimensions of discrete data",a:"Generate sparklines cumulative horizontal bar graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Stack by column",detail:"If you need to stack by row, set this item to false or 0, the default is 1"},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Max",detail:"The maximum value of the cumulative bar, used to regulate the length of the bar, the default is to automatically calculate false, auto, null"},{name:"Color palette",detail:"The color palette can individually set the bar color of each dimension, which can be set to the range of A1:A10, etc. The default is #2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},DISCRETESPLINES:{d:"Generate sparklines embedded in the cell, generally used to describe the trend of discrete data",a:"Generate sparklines discrete graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Segmentation threshold",detail:"Discrete graph column color distinction, for example: if the value is 0, blue is greater than 0, red is less than 0, and the default is 0"},{name:"Above threshold color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #2ec7c9"},{name:"Below threshold color",detail:"The color setting of the bar below the threshold, the same as the color above the threshold, default #fc5c5c"}]},TRISTATESPLINES:{d:"Generate sparklines, a three-state graph embedded in the cell, which is generally used to describe the trend of three situations, such as winning, losing, or drawing.",a:"Generate sparklines three-state graph",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Bar interval",detail:"The distance between bars, the default is 1"},{name:"Bar color",detail:"The line color of the line graph can be range A1, color table index value or specific color value. Set it to 0 or false to not display it. It supports regx, rgb, rgba, etc. Default #fc5c5c"},{name:"Negative bar color",detail:"Negative bar color setting, representing the color of negative value, same as the bar color configuration, default #97b552"},{name:"Zero value bar color",detail:"Zero value bar color setting, representing 0 value color, the same color configuration of the bar, default #999"},{name:"Color palette",detail:"The color palette can set the color of each bar individually, multiple settings can be set, and two formats are supported: 1 color such as #000, which means that the color of the first bar is black; 2 value range: color, such as -2:# 000 indicates that the bar with a value of -2 is black, 0:5:#000 indicates that the bar with a value of 0-5 is black, and the default is empty"}]},PIESPLINES:{d:"Generate sparklines pie chart embedded in the cell, generally used to describe the proportion of data",a:"Generate sparklines pie chart",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Rotation angle",detail:"The rotation angle of the pie chart, the default is 0"},{name:"border",detail:"Pie chart border size, default is none 0"},{name:"Border color",detail:"The border color of the pie chart, the default is #000"},{name:"Color palette",detail:"The color of the slice can be set in the palette, which can be set to the range of A1:A10, etc. The default is #2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BOXSPLINES:{d:"Generate sparklines embedded in the cell box plot, generally used to describe the statistical distribution of the data set",a:"Generate sparklines box plot",p:[{name:"Range",detail:"Range\uFF0CValues can be calculated effectively, such as A1:A20, {1,2,3,4,5}, etc."},{name:"Outlier ratio",detail:"The threshold range of outliers, if it is 0 or false, it will not be displayed, the default is 1.5 times"},{name:"Target value",detail:"The target value setting on the box plot, the default is false and does not display"},{name:"Point size",detail:"The radius of the target point and outlier is set, the default is 1.5"}]},BULLETSPLINES:{d:"Generate sparklines embedded in the cell, generally used to describe the task achievement rate",a:"Generating sparklines bullets",p:[{name:"Target",detail:"The numerical value can be calculated effectively for the achieved target value, such as A1, 100, etc."},{name:"achieved",detail:"Only when the value is completed can the value be calculated effectively, such as A1, 100, etc."},{name:"Contrast",detail:"Comparative values, such as excess, minimum, and bottom line for awards, can be effectively calculated, such as A1, 100, etc. You can set up to 9 comparison values"}]},COMPOSESPLINES:{d:"Support multiple types of pictures in the same cell, each parameter represents a sparklines diagram",a:"Combine sparklines graphs into one cell",p:[{name:"config",detail:"Sparklines chart settings, such as A1:A20, a completed pie chart, line chart settings, etc."}]},SORT:{d:"Sorts the rows of a given array or range by the values in one or more columns.",a:"Sorts rows of range by specified column.",p:[{name:"range",detail:"The data to be sorted."},{name:"sort_column",detail:"The index of the column in `range` or a range outside of `range` containing the values by which to sort."},{name:"is_ascending",detail:"`TRUE` or `FALSE` indicating whether to sort `sort_column` in ascending order. `FALSE` sorts in descending order."},{name:"sort_column2",detail:"Additional columns."}]},FILTER:{d:"Returns a filtered version of the source range, returning only rows or columns which meet the specified conditions.",a:"Filters a range based off provided conditions.",p:[{name:"range",detail:"The data to be filtered."},{name:"condition1",detail:"A column or row containing true or false values corresponding to the first column or row of `range`, or an array formula evaluating to true or false."},{name:"condition2",detail:"Additional rows or columns containing boolean values `TRUE` or `FALSE` indicating whether the corresponding row or column in `range` should pass through `FILTER`. Can also contain array formula expressions which evaluate to such rows or columns. All conditions must be of the same type (row or column). Mixing row conditions and column conditions is not permitted."}]},UNIQUE:{d:"Returns unique rows in the provided source range, discarding duplicates. Rows are returned in the order in which they first appear in the source range.",a:"Unique rows in the provided source range.",p:[{name:"range",detail:"The data to filter by unique entries."},{name:"by_col",detail:"[Option] - Logical value, indicating how to compare; by row = FALSE() or omitted; by column = TRUE()."},{name:"occurs_once",detail:"[Option] - Logical value, only one occurrence in the unique value is returned = TRUE(); including all unique values = FALSE() or omitted."}]},RANDARRAY:{d:"Returns a grid of random numbers between 0 inclusive and 1 exclusive. The grid size will match the provided rows and columns arguments. If neither rows nor columns are provided, then the grid will be size 1 x 1.",a:"Returns a grid of random numbers.",p:[{name:"rows",detail:"The number of rows to populate with a random number."},{name:"columns",detail:"The number of columns to populate with a random number."}]},SEQUENCE:{d:"Returns a grid of sequential numbers starting at a specified start value and increasing by a specified step size. By default, the sequence starts at and increases by 1.",a:"Returns a grid of sequential numbers.",p:[{name:"rows",detail:"The number of rows in the function's resulting grid."},{name:"columns",detail:"The number of columns in the function's resulting grid. If omitted, the result grid will have 1 column."},{name:"start",detail:"The number, at which to start the sequence. If omitted, the sequence will start at 1."},{name:"step",detail:"The amount each value in the sequence will differ by. If omitted, each value will differ by 1."}]},EVALUATE:{d:"Evaluate a formula or expression expressed in words and return the result",a:"Evaluate according to literal formula or expression.",p:[{name:"expression",detail:"Formula or expression"}]},REMOTE:{d:"Calls a function on a remote server",a:"Calls a function on a remote back end server/API.",p:[{name:"remote_expression",detail:"Formula"}]}},toolbar:{undo:"Deshacer",redo:"Rehacer",paintFormat:"Clonar formato",currencyFormat:"Formato de moneda",percentageFormat:"Formato de porcentaje",numberDecrease:"Menos decimales",numberIncrease:"M\xE1s decimales",moreFormats:"M\xE1s formatos",font:"Fuente",fontSize:"Tama\xF1o Fuente",bold:"Negrita (Ctrl+B)",italic:"It\xE1lica (Ctrl+I)",strikethrough:"Tachar (Alt+Shift+5)",underline:"Guion bajo",textColor:"Color texto",chooseColor:"elegir color",resetColor:"Reinicializar",customColor:"PERSONALIZADO",alternatingColors:"Colores alternos",confirmColor:"Vale",cancelColor:"Cancelar",collapse:"Recoger",fillColor:"Color de relleno",border:"Borde",borderStyle:"Estilo Borde",mergeCell:"Juntar celdas",chooseMergeType:"Elegir tipo de uni\xF3n",horizontalAlign:"Alineaci\xF3n Horizontal",verticalAlign:"Alineaci\xF3n Vertical",alignment:"Alineaci\xF3n",textWrap:"Ajuste de texto",textWrapMode:"Modo de ajuste de texto",textRotate:"Rotar texto",textRotateMode:"Modo de rotar texto",freezeTopRow:"Fijar fila superior",sortAndFilter:"Ordenar y filtrar",findAndReplace:"Buscar y reemplazar",sum:"SUMA",autoSum:"SUMA autom\xE1tica",moreFunction:"M\xE1s funciones",conditionalFormat:"Formato condicional",postil:"Comentario",pivotTable:"Tabla Din\xE1mica",chart:"Gr\xE1fica",screenshot:"Captura de pantalla",splitColumn:"Separar texto",insertImage:"Insertar imagen",exportXlsx:"Exportar Xlsx",dataVerification:"Verificaci\xF3n de datos",protection:"Proteger la hoja",clearText:"Limpiar color",noColorSelectedText:"Ning\xFAn color seleccionado",toolMore:"M\xE1s",toolLess:"Menos",toolClose:"Cerrar",toolMoreTip:"M\xE1s funcionalidades",moreOptions:"M\xE1s opciones",cellFormat:"Configuraci\xF3n formato de celda",print:"Imprimir"},alternatingColors:{applyRange:"Aplicar a rango",selectRange:"Seleccionar un rango de datos",header:"Cabecera",footer:"Pie",errorInfo:"No se puede realizar esta operaci\xF3n en varias \xE1reas de selecci\xF3n, selecciona una sola \xE1rea y vuelve a intentarlo",textTitle:"Estilo Formato",custom:"PERSONALIZADO",close:"cerrar",selectionTextColor:"Haz clic para seleccionar el color del texto",selectionCellColor:"Haz clic para seleccionar el color de la celda",removeColor:"Eliminar colores alternos",colorShow:"color",currentColor:"Actual",tipSelectRange:"Selecciona la gama de colores alternos",errorNoRange:"No hay ning\xFAn rango seleccionado",errorExistColors:"Los colores alternos ya existen y no se pueden editar"},button:{confirm:"Vale",cancel:"Cancelar",close:"Cerrar",update:"Actualizar",delete:"Eliminar",insert:"Insertar",prevPage:"Previous",nextPage:"Next",total:"total:"},paint:{start:"Inicio clonar formato",end:"ESC",tipSelectRange:"Selecciona el rango que quieres copiar",tipNotMulti:"No se puede realizar esta operaci\xF3n en un rango de selecci\xF3n m\xFAltiple"},format:{moreCurrency:"M\xE1s formatos de moneda",moreDateTime:"M\xE1s formatos de fecha y hora",moreNumber:"M\xE1s formatos de n\xFAmero",titleCurrency:"Formatos de moneda",decimalPlaces:"Decimales",titleDateTime:"Formatos de fecha y hora",titleNumber:"Formatos de n\xFAmeros"},info:{detailUpdate:"Nuevo abierto",detailSave:"Cache local restaurado",row:"",column:"",loading:"Cargando...",copy:"Copiar",return:"Salir",rename:"Renombrar",tips:"Renombrar Libro",noName:"Hoja sin t\xEDtulo",wait:"esperando actualizaci\xF3n",add:"A\xF1adir",addLast:"m\xE1s filas al final",backTop:"Volver arriba",pageInfo:"Total ${total}\uFF0Cp\xE1gina ${totalPage}\uFF0Cactual ${currentPage}",nextPage:"Siguiente",tipInputNumber:"Introduce el n\xFAmero",tipInputNumberLimit:"El rango de aumento est\xE1 limitado a 1-100",tipRowHeightLimit:"La altura de la fila debe estar entre 0 ~ 545",tipColumnWidthLimit:"El ancho de la columna debe estar entre 0 ~ 2038",pageInfoFull:"Total ${total}\uFF0Cp\xE1gina ${totalPage}\uFF0CSe muestran todos los datos"},currencyDetail:{RMB:"RMB",USdollar:"D\xF3lar US",EUR:"EUR",GBP:"GBP",HK:"HK",JPY:"JPY",AlbanianLek:"Albanian Lek",AlgerianDinar:"Algerian Dinar",Afghani:"Afghani",ArgentinePeso:"Argentine Peso",UnitedArabEmiratesDirham:"United Arab Emirates Dirham",ArubanFlorin:"Aruban Florin",OmaniRial:"Omani Rial",Azerbaijanimanat:"Azerbaijani manat",EgyptianPound:"Egyptian Pound",EthiopianBirr:"Ethiopian Birr",AngolaKwanza:"Angola Kwanza",AustralianDollar:"Australian Dollar",Patacas:"Patacas",BarbadosDollar:"Barbados Dollar",PapuaNewGuineaKina:"Papua New Guinea Kina",BahamianDollar:"Bahamian Dollar",PakistanRupee:"Pakistan Rupee",ParaguayanGuarani:"Paraguayan Guarani",BahrainiDinar:"Bahraini Dinar",PanamanianBalboa:"Panamanian Balboa",Brazilianreal:"Brazilian real",Belarusianruble:"Belarusian ruble",BermudianDollar:"Bermudian Dollar",BulgarianLev:"Bulgarian Lev",IcelandKrona:"Iceland Krona",BosniaHerzegovinaConvertibleMark:"Bosnia-Herzegovina Convertible Mark",PolishZloty:"Polish Zloty",Boliviano:"Boliviano",BelizeDollar:"Belize Dollar",BotswanaPula:"Botswana Pula",NotDannuzhamu:"Not Dannuzhamu",BurundiFranc:"Burundi Franc",NorthKoreanWon:"North Korean Won",DanishKrone:"Danish Krone",EastCaribbeanDollar:"East Caribbean Dollar",DominicaPeso:"Dominica Peso",RussianRuble:"Russian Ruble",EritreanNakfa:"Eritrean Nakfa",CFAfranc:"CFA franc",PhilippinePeso:"Philippine Peso",FijiDollar:"Fiji Dollar",CapeVerdeEscudo:"Cape Verde Escudo",FalklandIslandsPound:"Falkland Islands Pound",GambianDalasi:"Gambian Dalasi",Congolesefranc:"Congolese franc",ColombianPeso:"Colombian Peso",CostaRicanColon:"Costa Rican Colon",CubanPeso:"Cuban Peso",Cubanconvertiblepeso:"Cuban convertible peso",GuyanaDollar:"Guyana Dollar",KazakhstanTenge:"Kazakhstan Tenge",Haitiangourde:"Haitian gourde",won:"won",NetherlandsAntillesGuilder:"Netherlands Antilles Guilder",Honduraslempiras:"Honduras lempiras",DjiboutiFranc:"Djibouti Franc",KyrgyzstanSom:"Kyrgyzstan Som",GuineaFranc:"Guinea Franc",CanadianDollar:"Canadian Dollar",GhanaianCedi:"Ghanaian Cedi",Cambodianriel:"Cambodian riel",CzechKoruna:"Czech Koruna",ZimbabweDollar:"Zimbabwe Dollar",QatariRiyal:"Qatari Riyal",CaymanIslandsDollar:"Cayman Islands Dollar",Comorianfranc:"Comorian franc",KuwaitiDinar:"Kuwaiti Dinar",CroatianKuna:"Croatian Kuna",KenyanShilling:"Kenyan Shilling",LesothoLoti:"Lesotho Loti",LaoKip:"Lao Kip",LebanesePound:"Lebanese Pound",Lithuanianlitas:"Lithuanian litas",LibyanDinar:"Libyan Dinar",LiberianDollar:"Liberian Dollar",RwandaFranc:"Rwanda Franc",RomanianLeu:"Romanian Leu",MalagasyAriary:"Malagasy Ariary",MaldivianRufiyaa:"Maldivian Rufiyaa",MalawiKwacha:"Malawi Kwacha",MalaysianRinggit:"Malaysian Ringgit",MacedoniawearingDinar:"Macedonia wearing Dinar",MauritiusRupee:"Mauritius Rupee",MauritanianOuguiya:"Mauritanian Ouguiya",MongolianTugrik:"Mongolian Tugrik",BangladeshiTaka:"Bangladeshi Taka",PeruvianNuevoSol:"Peruvian Nuevo Sol",MyanmarKyat:"Myanmar Kyat",MoldovanLeu:"Moldovan Leu",MoroccanDirham:"Moroccan Dirham",MozambiqueMetical:"Mozambique Metical",MexicanPeso:"Mexican Peso",NamibianDollar:"Namibian Dollar",SouthAfricanRand:"South African Rand",SouthSudanesePound:"South Sudanese Pound",NicaraguaCordoba:"Nicaragua Cordoba",NepaleseRupee:"Nepalese Rupee",NigerianNaira:"Nigerian Naira",NorwegianKrone:"Norwegian Krone",GeorgianLari:"Georgian Lari",RMBOffshore:"RMB (Offshore)",SwedishKrona:"Swedish Krona",SwissFranc:"Swiss Franc",SerbianDinar:"Serbian Dinar",SierraLeone:"Sierra Leone",SeychellesRupee:"Seychelles Rupee",SaudiRiyal:"Saudi Riyal",SaoTomeDobra:"Sao Tome Dobra",SaintHelenapound:"Saint Helena pound",SriLankaRupee:"Sri Lanka Rupee",SwazilandLilangeni:"Swaziland Lilangeni",SudanesePound:"Sudanese Pound",Surinamesedollar:"Surinamese dollar",SolomonIslandsDollar:"Solomon Islands Dollar",SomaliShilling:"Somali Shilling",TajikistanSomoni:"Tajikistan Somoni",PacificFranc:"Pacific Franc",ThaiBaht:"Thai Baht",TanzanianShilling:"Tanzanian Shilling",TonganPaanga:"Tongan Pa'anga",TrinidadandTobagoDollar:"Trinidad and Tobago Dollar",TunisianDinar:"Tunisian Dinar",TurkishLira:"Turkish Lira",VanuatuVatu:"Vanuatu Vatu",GuatemalanQuetzal:"Guatemalan Quetzal",CommissionBolivar:"Commission Bolivar",BruneiDollar:"Brunei Dollar",UgandanShilling:"Ugandan Shilling",UkrainianHryvnia:"Ukrainian Hryvnia",UruguayanPeso:"Uruguayan Peso",Uzbekistansom:"Uzbekistan som",WesternSamoaTala:"Western Samoa Tala",SingaporeDollar:"Singapore Dollar",NT:"NT",NewZealandDollar:"New Zealand Dollar",HungarianForint:"Hungarian Forint",SyrianPound:"Syrian Pound",JamaicanDollar:"Jamaican Dollar",ArmenianDram:"Armenian Dram",YemeniRial:"Yemeni Rial",IraqiDinar:"Iraqi Dinar",IranianRial:"Iranian Rial",NewIsraeliShekel:"New Israeli Shekel",IndianRupee:"Indian Rupee",IndonesianRupiah:"Indonesian Rupiah",JordanianDinar:"Jordanian Dinar",VND:"VND",ZambianKwacha:"Zambian Kwacha",GibraltarPound:"Gibraltar Pound",ChileanPeso:"Chilean Peso",CFAFrancBEAC:"CFA Franc BEAC"},defaultFmt:[{text:"Autom\xE1tico",value:"General",example:""},{text:"Texto",value:"@",example:""},{text:"",value:"partir",example:""},{text:"N\xFAmero",value:"##0.00",example:"1000.12"},{text:"Porcentaje",value:"#0.00%",example:"12.21%"},{text:"Cient\xEDfico",value:"0.00E+00",example:"1.01E+5"},{text:"",value:"split",example:""},{text:"Contabilidad",value:"\xA5(0.00)",example:"\xA5(1200.09)"},{text:"Moneda",value:"\xA50.00",example:"\xA51200.09"},{text:"",value:"partir",example:""},{text:"Fecha",value:"yyyy-MM-dd",example:"2017-11-29"},{text:"Hora",value:"hh:mm AM/PM",example:"3:00 PM"},{text:"Hora 24H",value:"hh:mm",example:"15:00"},{text:"Fecha Hora",value:"yyyy-MM-dd hh:mm AM/PM",example:"2017-11-29 3:00 PM"},{text:"Fecha Hora 24 H",value:"yyyy-MM-dd hh:mm",example:"2017-11-29 15:00"},{text:"",value:"partir",example:""},{text:"Formatos personalizados",value:"fmtOtherSelf",example:"m\xE1s"}],dateFmtList:[{name:"1930-08-05",value:"yyyy-MM-dd"},{name:"1930/8/5",value:"yyyy/MM/dd"},{name:"08-05",value:"MM-dd"},{name:"8-5",value:"M-d"},{name:"13:30:30",value:"h:mm:ss"},{name:"13:30",value:"h:mm"},{name:"PM 01:30",value:"AM/PM hh:mm"},{name:"PM 1:30",value:"AM/PM h:mm"},{name:"PM 1:30:30",value:"AM/PM h:mm:ss"},{name:"08-05 PM 01:30",value:"MM-dd AM/PM hh:mm"}],fontFamily:{MicrosoftYaHei:"YaHei"},fontarray:["Times New Roman","Arial","Tahoma","Verdana"],fontjson:{"times new roman":0,arial:1,tahoma:2,verdana:3},border:{borderTop:"borderTop",borderBottom:"borderBottom",borderLeft:"borderLeft",borderRight:"borderRight",borderNone:"borderNone",borderAll:"borderAll",borderOutside:"borderOutside",borderInside:"borderInside",borderHorizontal:"borderHorizontal",borderVertical:"borderVertical",borderColor:"borderColor",borderSize:"borderSize"},merge:{mergeAll:"Unir todo",mergeV:"Verticalmente",mergeH:"Horizontalmente",mergeCancel:"Separar",overlappingError:"No se pueden fusionar \xE1reas superpuestas",partiallyError:"No se puede realizar esta operaci\xF3n en celdas parcialmente unidas"},align:{left:"izquierda",center:"centro",right:"derecha",top:"Arriba",middle:"Centro",bottom:"Abajo"},textWrap:{overflow:"Desbordar",wrap:"Ajustar",clip:"Cortar"},rotation:{none:"Ninguno",angleup:"Ladear Arriba",angledown:"Ladear Abajo",vertical:"Apilar Verticalmente",rotationUp:"Rotar Arriba",rotationDown:"Rotar Abajo"},freezen:{default:"Fijar",freezenRow:"Primera Fila",freezenColumn:"Primera Columna",freezenRC:"Ambas",freezenRowRange:"Fijar rango filas",freezenColumnRange:"Fijar rango columnas",freezenRCRange:"Fijar ambos rangos",freezenCancel:"Cancelar",noSeletionError:"No hay rango para seleccionar",rangeRCOverErrorTitle:"Recordatorio de congelaci\xF3n",rangeRCOverError:"El panel de congelaci\xF3n excede el rango visible y puede causar que no funcione correctamente. Reinicie el \xE1rea de congelaci\xF3n."},sort:{asc:"Ascendente ",desc:"Descendente ",custom:"Ordenaci\xF3n personalizada",hasTitle:"Los datos tienen una fila de encabezado",sortBy:"Ordenar por",addOthers:"A\xF1adir otra columna de ordenaci\xF3n",close:"cerrar",confirm:"ordenar",columnOperation:"Columna",secondaryTitle:"y despu\xE9s por",sortTitle:"Ordenar rango",sortRangeTitle:"Ordenar rango de",sortRangeTitleTo:"a",noRangeError:"No se puede realizar esta operaci\xF3n en m\xFAltiples \xE1reas de selecci\xF3n, selecciona un solo rango e intenta nuevamente",mergeError:"Hay celdas combinadas en la selecci\xF3n, \xA1esta operaci\xF3n no se puede realizar!",columnSortMergeError:"La ordenaci\xF3n de las columnas se extiende a toda la selecci\xF3n de la tabla. Esta operaci\xF3n no puede realizarse si hay celdas fusionadas. Utilice la funci\xF3n de clasificaci\xF3n de la barra de herramientas."},filter:{filter:"crear filtro",sortByAsc:"Ordenar A-Z",sortByDesc:"Ordenar Z-A",filterByColor:"Filtrar por color",filterByCondition:"Filtrar por condici\xF3n",filterByValues:"Filtrar por valores",filiterInputNone:"Ninguno",filiterInputTip:"Introduce valor de filtro",filiterRangeStart:"",filiterRangeStartTip:"Valor para f\xF3rmula",filiterRangeEnd:"e",filiterRangeEndTip:"Valor para f\xF3rmula",filterValueByAllBtn:"Seleccionar todos",filterValueByClearBtn:"Limpiar",filterValueByInverseBtn:"Invertir",filterValueByTip:"filtrar por valores",filterConform:"Confirmar",filterCancel:"Cancelar",clearFilter:"Quitar filtro",conditionNone:"Ninguno",conditionCellIsNull:"Est\xE1 vac\xEDo",conditionCellNotNull:"No est\xE1 vac\xEDo",conditionCellTextContain:"El texto contiene",conditionCellTextNotContain:"El texto no contiene",conditionCellTextStart:"El texto empieza con",conditionCellTextEnd:"El texto termina con",conditionCellTextEqual:"El texto es exactamente",conditionCellDateEqual:"La fecha es",conditionCellDateBefore:"La fecha es anterior",conditionCellDateAfter:"La fecha es posterior",conditionCellGreater:"Mayor que",conditionCellGreaterEqual:"Mayor o igual que",conditionCellLess:"Menor que",conditionCellLessEqual:"Menor o igual que",conditionCellEqual:"Es igual a",conditionCellNotEqual:"No es igual a",conditionCellBetween:"Est\xE1 entre",conditionCellNotBetween:"No est\xE1 entre",filiterMoreDataTip:"\xA1Gran cantidad de datos! por favor espera",filiterMonthText:"Mes",filiterYearText:"A\xF1o",filiterByColorTip:"Filtrar por color de celda",filiterByTextColorTip:"Filtrar por color de fuente",filterContainerOneColorTip:"Esta columna contiene solo un color",filterDateFormatTip:"Format fecha",valueBlank:"(Nulo)",mergeError:"Hay celdas combinadas en la selecci\xF3n del filtro, \xA1esta operaci\xF3n no se puede realizar!"},rightclick:{copy:"Copiar",copyAs:"Copiar como",paste:"Pegar",insert:"Insertar",delete:"Eliminar",deleteCell:"Eliminar celda",deleteSelected:"Eliminar seleccionado ",hide:"Esconder",hideSelected:"Esconder seleccionado ",showHide:"Mostrar ocultos ",to:"Hacia",left:"Izquierda",right:"Derecha",top:"Arriba",bottom:"Abajo",moveLeft:"Mover izquierda",moveUp:"Mover arriba",add:"A\xF1adir",row:"Fila",column:"Columna",width:"Ancho",height:"Alto",number:"N\xFAmero",confirm:"Confirmar",orderAZ:"Ordenar A-Z",orderZA:"Ordenar Z-A",clearContent:"Limpiar contenido",matrix:"Operaci\xF3n de Matriz",sortSelection:"Ordenar",filterSelection:"Filtrar",chartGeneration:"Crear gr\xE1fico",firstLineTitle:"t\xEDtulo primera l\xEDnea",untitled:"sin t\xEDtulo",array1:"Matriz unidimensional",array2:"Matriz bidimensional",array3:"Matrices multidimensionales",diagonal:"Diagonal",antiDiagonal:"Anti-diagonal",diagonalOffset:"Desplazamiento Diagonal",offset:"Desplazamiento",boolean:"Booleana",flip:"Voltear",upAndDown:"Arriba y abajo",leftAndRight:"Izquierda y derecha",clockwise:"Sentido horario",counterclockwise:"Sentido anti-horario",transpose:"Transponer",matrixCalculation:"C\xE1lculo de matrices",plus:"Suma",minus:"Resta",multiply:"Multiplicaci\xF3n",divided:"Divisi\xF3n",power:"Exponenciaci\xF3n",root:"Ra\xEDz Cuadrada",log:"Logaritmo",delete0:"Eliminar valores nulos en ambos extremos",removeDuplicate:"Eliminar valores duplicados",byRow:"Por fila",byCol:"Por columna",generateNewMatrix:"Generar nueva matriz"},comment:{insert:"Insertar",edit:"Editar",delete:"Elimiar",showOne:"Mostrar/Ocular",showAll:"Mostrar/Ocular Todo"},screenshot:{screenshotTipNoSelection:"Selecciona el alcance de la captura de pantalla",screenshotTipTitle:"\xA1Advertencia!",screenshotTipHasMerge:"Esta operaci\xF3n no se puede realizar en celdas combinadas",screenshotTipHasMulti:"Esta operaci\xF3n no se puede realizar en varios rangos de selecci\xF3n",screenshotTipSuccess:"Exitoso",screenshotImageName:"Captura de pantalla",downLoadClose:"Cerrar",downLoadCopy:"Copiar al portapapeles",downLoadBtn:"Descargar",browserNotTip:"no es compatible con el navegador IE.",rightclickTip:'Haz clic con el bot\xF3n derecho en la imagen y selecciona "copiar"',successTip:'Con \xE9xito (si falla el pegado, haz clic con el bot\xF3n derecho en la imagen para "copiar imagen")'},splitText:{splitDelimiters:"Delimitadores",splitOther:"Otros",splitContinueSymbol:"Los separadores consecutivos se tratan como uno solo",splitDataPreview:"Previsualizar",splitTextTitle:"Partir texto",splitConfirmToExe:"Ya hay datos aqu\xED, \xBFquieres reemplazarlos?",tipNoMulti:"No se puede realizar esta operaci\xF3n en varias \xE1reas de selecci\xF3n, selecciona una \xFAnica \xE1rea y vuelve a intentarlo",tipNoMultiColumn:"Solo se puede convertir una columna de datos a la vez. El \xE1rea seleccionado puede tener varias filas, pero no varias columnas. Vuelve a intentarlo despu\xE9s de seleccionar un solo rango de columnas"},imageText:{imageSetting:"Configuraci\xF3n de imagen",close:"Cerrar",conventional:"Convencional",moveCell1:"Mover y cambiar el tama\xF1o de las celdas",moveCell2:"Mover y no cambiar el tama\xF1o de la celda",moveCell3:"No mover ni cambiar el tama\xF1o de la celda",fixedPos:"Posici\xF3n fija",border:"Borde",width:"Ancho",radius:"Radio",style:"Estilo",solid:"S\xF3lido",dashed:"Discontinua",dotted:"Punteado",double:"Doble",color:"Color"},punctuation:{tab:"Tabulaci\xF3n",semicolon:"punto y coma",comma:"coma",space:"espacio"},findAndReplace:{find:"Encontrar",replace:"Reemplazar",goto:"Ir a",location:"Ubicaci\xF3n",formula:"F\xF3rmula",date:"Fecha",number:"N\xFAmero",string:"Texto",error:"Error",condition:"Condici\xF3n",rowSpan:"Intervalo de filas",columnSpan:"Intervalo de columnas",locationExample:"Ubicaci\xF3n",lessTwoRowTip:"Selecciona al menos dos filas",lessTwoColumnTip:"Selecciona al menos dos columnas",findTextbox:"Encontrar Contenido",replaceTextbox:"Reemplazar Contenido",regexTextbox:"Expresi\xF3n Regular",wholeTextbox:"Palabra entera",distinguishTextbox:"Distingue may\xFAsculas y min\xFAsculas",allReplaceBtn:"Reemplazar Todo",replaceBtn:"Reemplazar",allFindBtn:"Encontrar Todo",findBtn:"Encontrar siguiente",noFindTip:"No se encontr\xF3 el contenido",modeTip:"Esta operaci\xF3n no est\xE1 disponible en este modo",searchTargetSheet:"Hoja",searchTargetCell:"Celda",searchTargetValue:"Valor",searchInputTip:"Introduce el contenido de la b\xFAsqueda",noReplceTip:"No hay nada que reemplazar",noMatchTip:"No se encontraron coincidencias",successTip:"${xlength} elementos encontrados",locationConstant:"Constante",locationFormula:"F\xF3rmula",locationDate:"Fecha",locationDigital:"N\xFAmero",locationString:"Texto",locationBool:"L\xF3gicos",locationError:"Error",locationNull:"Nulo",locationCondition:"Formato condicional",locationRowSpan:"Intervalo fila",locationColumnSpan:"Intervalo columna",locationTiplessTwoRow:"Selecciona al menos dos filas",locationTiplessTwoColumn:"Selecciona al menos dos columnas",locationTipNotFindCell:"Celda no encontrada"},sheetconfig:{delete:"Eliminar",copy:"Copiar",rename:"Renombrar",changeColor:"Cambiar color",hide:"Ocultar",unhide:"Mostrar",moveLeft:"Mover izquierda",moveRight:"Mover derecja",resetColor:"Reiniciar color",cancelText:"Cancelar",chooseText:"Confirmar color",tipNameRepeat:"\xA1El nombre de la p\xE1gina de la pesta\xF1a no se puede repetir! Rev\xEDsalo",noMoreSheet:"El libro de trabajo contiene al menos una hoja de trabajo visual. Para eliminar la hoja de trabajo seleccionada, inserta una nueva hoja de trabajo o muestra una hoja de trabajo oculta",confirmDelete:"\xBFEst\xE1s seguro de eliminar",redoDelete:"Se puede deshacer con Ctrl+Z",noHide:"No se puede ocultar, al menos conserva una etiqueta de hoja",chartEditNoOpt:"\xA1Esta operaci\xF3n no est\xE1 permitida en el modo de edici\xF3n de gr\xE1ficos!",sheetNameSpecCharError:`El nombre no puede contener:[ ] : ? * / ' "`,sheetNamecannotIsEmptyError:"El nombre de la hoja no puede estar vac\xEDo"},conditionformat:{conditionformat_greaterThan:"Conditionformat-GreaterThan",conditionformat_greaterThan_title:"Dar formato a celdas mayores que",conditionformat_lessThan:"Conditionformat-LessThan",conditionformat_lessThan_title:"Dar formato a celdas m\xE1s peque\xF1as que",conditionformat_betweenness:"Conditionformat-Betweenness",conditionformat_betweenness_title:"Dar formato a celdas con valores entre",conditionformat_equal:"Conditionformat-Equal",conditionformat_equal_title:"Dar formato a celdas iguales a",conditionformat_textContains:"Conditionformat-TextContains",conditionformat_textContains_title:"Dar formato a las celdas que contienen el siguiente texto",conditionformat_occurrenceDate:"Conditionformat-OccurrenceDate",conditionformat_occurrenceDate_title:"Dar formato a celdas que contienen las siguientes fechas",conditionformat_duplicateValue:"Conditionformat-DuplicateValue",conditionformat_duplicateValue_title:"Dar formato a celdas que contienen los siguientes tipos de valores",conditionformat_top10:"Conditionformat-Top10",conditionformat_top10_percent:"Conditionformat-Top10%",conditionformat_top10_title:"Formatea las celdas con el valor m\xE1s alto",conditionformat_last10:"Conditionformat-Last10",conditionformat_last10_percent:"Conditionformat-Last10%",conditionformat_last10_title:"Formatea las celdas con el valor m\xE1s peque\xF1o",conditionformat_AboveAverage:"Conditionformat-AboveAverage",conditionformat_AboveAverage_title:"Dar formato a celdas por encima del promedio",conditionformat_SubAverage:"Conditionformat-SubAverage",conditionformat_SubAverage_title:"Dar formato a celdas por debajo del promedio",rule:"Regla",newRule:"Nueva regla",editRule:"Editar regla",deleteRule:"Eliminar regla",deleteCellRule:"Eliminar regla de celda",deleteSheetRule:"Eliminar regla de hoja",manageRules:"Reglas administraci\xF3n",showRules:"Muestra sus reglas de formato",highlightCellRules:"Resaltar reglas de celda",itemSelectionRules:"Reglas de selecci\xF3n de elementos",conditionformatManageRules:"Administrador de reglas de formato condicional",format:"Formatear",setFormat:"Establecer formato",setAs:"Establecer como",setAsByArea:"Para el \xE1rea seleccionada, establecer",applyRange:"Aplicar rango",selectRange:"Seleccionar rango de aplicaci\xF3n",selectRange_percent:"Porcentaje del rango seleccionado",selectRange_average:"Valor promedio del rango seleccionado",selectRange_value:"Valor en el rango seleccionado",pleaseSelectRange:"Selecciona el rango de aplicaci\xF3n",selectDataRange:"Seleccionar rango de datos",selectCell:"seleccionar celda",pleaseSelectCell:"Selecciona una celda",pleaseSelectADate:"Selecciona una fecha",pleaseEnterInteger:"Introduzca un n\xFAmero entero entre 1 y 1000",onlySingleCell:"Solo se puede hacer referencia a una sola celda",conditionValueCanOnly:"El valor de la condici\xF3n solo puede ser un n\xFAmero o una sola celda",ruleTypeItem1:"Aplicar formato a todas las celdas seg\xFAn sus valores respectivos",ruleTypeItem2:"Solo formatear celdas que contengan",ruleTypeItem2_title:"Solo para celdas que cumplan las siguientes condiciones",ruleTypeItem3:"Aplicar formato solo a los n\xFAmeros superiores o inferiores",ruleTypeItem3_title:"Es el valor en la siguiente clasificaci\xF3n",ruleTypeItem4:"Aplicar formato solo a los valores superiores o inferiores al promedio",ruleTypeItem4_title:"Es un valor que cumple las siguientes condiciones",ruleTypeItem5:"Aplicar formato solo a valores \xFAnicos o repetidos",ruleTypeItem6:"Use f\xF3rmulas para determinar qu\xE9 celdas formatear",formula:"f\xF3rmula",textColor:"Color Texto",cellColor:"Color Celda",confirm:"Confirma",confirmColor:"Confirma color",cancel:"Cancela",close:"Cierra",clearColorSelect:"Limpiar selecci\xF3n de color",sheet:"Hoja",currentSheet:"Hoja actual",dataBar:"Barra de datos",dataBarColor:"Color barra de datos",gradientDataBar_1:"Barra de datos de degradado azul-blanco",gradientDataBar_2:"Barra de datos de degradado verde-blanco",gradientDataBar_3:"Barra de datos de degradado rojo-blanco",gradientDataBar_4:"Rayas de degradado de color naranja-blanco",gradientDataBar_5:"Rayas de degradado azul claro-blancas",gradientDataBar_6:"Barra de datos de degradado p\xFArpura-blanco",solidColorDataBar_1:"Barra de datos azul",solidColorDataBar_2:"Barra de datos verde",solidColorDataBar_3:"Barra de datos roja",solidColorDataBar_4:"Barra de datos naranja",solidColorDataBar_5:"Barra de datos azul claro",solidColorDataBar_6:"Barra de datos p\xFArpura",colorGradation:"Degradado de color",colorGradation_1:"Gradaci\xF3n de color verde-amarillo-rojo",colorGradation_2:"Gradaci\xF3n de color rojo-amarillo-verde",colorGradation_3:"Gradaci\xF3n de color verde-blanco-rojo",colorGradation_4:"Gradaci\xF3n de color rojo-blanco-verde",colorGradation_5:"Gradaci\xF3n de color azul-blanco-rojo",colorGradation_6:"Gradaci\xF3n de color rojo-blanco-azul",colorGradation_7:"Gradaci\xF3n de color blanco-rojo",colorGradation_8:"Gradaci\xF3n de color rojo-blanco",colorGradation_9:"Gradaci\xF3n de color verde-blanco",colorGradation_10:"Gradaci\xF3n de color blanco-verde",colorGradation_11:"Gradaci\xF3n de color verde-amarillo",colorGradation_12:"Gradaci\xF3n de color amarillo-verde",icons:"iconos",pleaseSelectIcon:"Haz clic para seleccionar un grupo de iconos:",cellValue:"Valor de celda",specificText:"Texto espec\xEDfico",occurrence:"Fecha",greaterThan:"Mayor que",lessThan:"Menor que",between:"Entre",equal:"Igual",in:"En",between2:"",contain:"Contiene",textContains:"Texto contiene",duplicateValue:"Valor duplicado",uniqueValue:"Valor Unico",top:"Mejor",top10:"10 mejores",top10_percent:"10% mejores",last:"Ultimo",last10:"Ultimos 10",last10_percent:"Ultimos 10%",oneself:"",above:"Encima",aboveAverage:"Encima media",below:"Debajo",belowAverage:"Debajo media",all:"Todos",yesterday:"A\xF1o a fecha",today:"Hoy",tomorrow:"Ma\xF1ana",lastWeek:"Ultima semana",thisWeek:"Esta semana",lastMonth:"Ultimo mes",thisMonth:"Este mes",lastYear:"Ultimo a\xF1o",thisYear:"Este a\xF1o",last7days:"Ultimos 7 d\xEDas",last30days:"Ultimos 30 d\xEDas",next7days:"Siguientes 7 d\xEDas",next30days:"Siguientes 30 d\xEDas",next60days:"Siguientes 60 d\xEDas",chooseRuleType:"Elige el tipo de regla",editRuleDescription:"Editar descripci\xF3n de regla",newFormatRule:"Nueva regla de formato",editFormatRule:"Editar regla de formato",formatStyle:"Estilo",fillType:"Rellenar",color:"Color",twocolor:"Dos colores",tricolor:"Tricolor",multicolor:"Multi color",grayColor:"Color gris",gradient:"Gradiente",solid:"S\xF3lido",maxValue:"Valor m\xE1ximo",medianValue:"Valor mediano",minValue:"Valor m\xEDnimo",direction:"Direcci\xF3n",threeWayArrow:"Flecha de tres direcciones",fourWayArrow:"Flecha de cuatro direcciones",fiveWayArrow:"Flecha de cinco direcciones",threeTriangles:"Tres tri\xE1ngulos",shape:"Forma",threeColorTrafficLight:"Sem\xE1foro de tres colores",fourColorTrafficLight:"Sem\xE1foro de cuatro colores",threeSigns:"Tres signos",greenRedBlackGradient:"Gradiente verde-rojo-negro",rimless:"Sin aros",bordered:"Bordeado",mark:"Marcar",threeSymbols:"Tres s\xEDmbolos",tricolorFlag:"Bandera tricolor",circled:"Rodeado",noCircle:"Sin c\xEDrculo",grade:"Grado",grade4:"4 Grado",grade5:"5 Grado",threeStars:"3 Estrellas",fiveQuadrantDiagram:"Diagrama de cinco cuadrantes",fiveBoxes:"5 Cajas"},dataVerification:{cellRange:"Rango celdas",selectCellRange:"Haz clic para seleccionar un rango de celdas",selectCellRange2:"Selecciona un rango de celdas",verificationCondition:"Condici\xF3n de verificaci\xF3n",allowMultiSelect:"Permitir selecci\xF3n m\xFAltiple",dropdown:"lista desplegable",checkbox:"Casilla de verificaci\xF3n",number:"N\xFAmero",number_integer:"N\xFAmero entero",number_decimal:"N\xFAmero decimal",text_content:"Contenido texto",text_length:"Longitud texto",date:"Fecha",validity:"Eficacia",placeholder1:"Introduce las opciones, separadas por comas, como 1,2,3,4,5",placeholder2:"Introduce contenido",placeholder3:"Valor num\xE9rico, como 10",placeholder4:"Introduce el texto especificado",placeholder5:"Introduce el mensaje que se muestra cuando se selecciona la celda",selected:"Seleccionado",notSelected:"No seleccionado",between:"Entre",notBetween:"No entre",equal:"Iqual",notEqualTo:"No iqual a",moreThanThe:"M\xE1s que el",lessThan:"Menos que",greaterOrEqualTo:"Mayor o igual a",lessThanOrEqualTo:"Menor o igual a",include:"Incluir",exclude:"Excluir",earlierThan:"Antes de",noEarlierThan:"No antes de",laterThan:"Despu\xE9s de",noLaterThan:"No despu\xE9s de",identificationNumber:"N\xFAmero de identificaci\xF3n",phoneNumber:"N\xFAmero de tel\xE9fono",remote:"Opci\xF3n de adquisici\xF3n remota autom\xE1tica",prohibitInput:"Prohibir la entrada cuando los datos de entrada no son v\xE1lidos",hintShow:"Mostrar mensaje cuando se selecciona la celda",deleteVerification:"Eliminar verificaci\xF3n",tooltipInfo1:"La opci\xF3n de la lista desplegable no puede estar vac\xEDa",tooltipInfo2:"El contenido de la casilla de verificaci\xF3n no puede estar vac\xEDo",tooltipInfo3:"El valor ingresado no es un tipo num\xE9rico",tooltipInfo4:"El segundo valor no puede ser menor que el primero",tooltipInfo5:"El contenido del texto no puede estar vac\xEDo",tooltipInfo6:"El valor ingresado no es una fecha",tooltipInfo7:"La segunda fecha no puede ser menor que la primera",textlengthInteger:"La longitud del texto debe ser un entero mayor o igual a 0"},formula:{sum:"Suma",average:"Media",count:"Contar",max:"M\xE1x",min:"M\xEDn",ifGenerate:"Generador de f\xF3rmula SI",find:"Aprender m\xE1s",tipNotBelongToIf:"\xA1Esta funci\xF3n de celda no pertenece a la f\xF3rmula SI!",tipSelectCell:"Selecciona la celda para insertar la funci\xF3n",ifGenCompareValueTitle:"Valor de comparaci\xF3n",ifGenSelectCellTitle:"Haz click para seleccionar una celda",ifGenRangeTitle:"Rango",ifGenRangeTo:"a",ifGenRangeEvaluate:"Evaluar rango",ifGenSelectRangeTitle:"Haz click para seleccionar rango",ifGenCutWay:"Forma particionado",ifGenCutSame:"Mismo valor de particionado",ifGenCutNpiece:"Particionar por N",ifGenCutCustom:"Personalizado",ifGenCutConfirm:"Confirma",ifGenTipSelectCell:"Selecciona celdas",ifGenTipSelectCellPlace:"Por favor selecciona celdas",ifGenTipSelectRange:"Selecciona rango",ifGenTipSelectRangePlace:"Por favor selecciona rango",ifGenTipNotNullValue:"El valor de comparaci\xF3n no puede ser vac\xEDo!",ifGenTipLableTitile:"Etiqueta",ifGenTipRangeNotforNull:"El rango no puede quedar vac\xEDo!",ifGenTipCutValueNotforNull:"El valor de partici\xF3n no puede ser vac\xEDo!",ifGenTipNotGenCondition:"No hay condiciones disponibles para la generaci\xF3n!"},formulaMore:{valueTitle:"Valor",tipSelectDataRange:"Selecciona rango de datos",tipDataRangeTile:"Rango de datos",findFunctionTitle:"Funci\xF3n de b\xFAsqueda",tipInputFunctionName:"Nombre o breve descripci\xF3n de la funci\xF3n",Array:"Vector",Database:"Base de datos",Date:"Fecha",Engineering:"Ingenier\xEDa",Filter:"Filtro",Financial:"Financiero",luckysheet:"Luckysheet",other:"Otro",Logical:"L\xF3gica",Lookup:"B\xFAsqueda",Math:"Matem\xE1tico",Operator:"Operadores",Parser:"Compilador",Statistical:"Estad\xEDstico",Text:"Texto",dataMining:"Miner\xEDa de datos",selectFunctionTitle:"Selecciona una funci\xF3n",calculationResult:"Resultado",tipSuccessText:"Exito",tipParamErrorText:"Par\xE1metro err\xF3neo",helpClose:"Cerrar",helpCollapse:"Recoger",helpExample:"Ejemplo",helpAbstract:"Resumen",execfunctionError:"Error en la f\xF3rmula",execfunctionSelfError:"La f\xF3rmula no puede hacer referencia a su propia celda",execfunctionSelfErrorResult:"La f\xF3rmula no puede hacer referencia a su propia celda, lo que dar\xE1 lugar a resultados de c\xE1lculo inexactos",allowRepeatText:"Repetir",allowOptionText:"Opci\xF3n",selectCategory:"O selecciona una categor\xEDa"},drag:{noMerge:"No se puede realizar esta operaci\xF3n en celdas combinadas",afectarPivot:"\xA1Este cambio no se puede realizar en la celda seleccionada porque afectar\xE1 a la tabla din\xE1mica!",noMulti:"No se puede realizar esta operaci\xF3n en varias \xE1reas de selecci\xF3n, selecciona una sola \xE1rea",noPaste:"No se puede pegar este contenido aqu\xED, selecciona una celda en el \xE1rea de pegado e intenta pegar nuevamente",noPartMerge:"No se puede realizar esta operaci\xF3n en celdas parcialmente fusionadas",inputCorrect:"Introduce el valor correcto",notLessOne:"El n\xFAmero de filas y columnas no puede ser inferior a 1",offsetColumnLessZero:"\xA1La columna de desplazamiento no puede ser negativa!",pasteMustKeybordAlert:"\u5728\u8868\u683C\u4E2D\u8FDB\u884C\u590D\u5236\u7C98\u8D34: Ctrl + C \u8FDB\u884C\u590D\u5236, Ctrl + V \u8FDB\u884C\u7C98\u8D34, Ctrl + X \u8FDB\u884C\u526A\u5207",pasteMustKeybordAlertHTMLTitle:"\u5728\u8868\u683C\u4E2D\u8FDB\u884C\u590D\u5236\u7C98\u8D34",pasteMustKeybordAlertHTML:"Ctrl + C  \u8FDB\u884C\u590D\u5236
Ctrl + V  \u8FDB\u884C\u7C98\u8D34
Ctrl + X  \u8FDB\u884C\u526A\u5207"},paste:{warning:"Advertencia",errorNotAllowMulti:"No se puede realizar esta operaci\xF3n en varias \xE1reas de selecci\xF3n, selecciona un solo rango y vuelve a intentarlo",errorNotAllowMerged:"No se pueden realizar cambios parciales en las celdas fusionadas"},pivotTable:{title:"Tabla Din\xE1mica",closePannel:"Cerrar",editRange:"Rango",tipPivotFieldSelected:"Selecciona los campos",tipClearSelectedField:"Limpiar todos los campos",btnClearSelectedField:"Limpiar",btnFilter:"Filtrar",titleRow:"Fila",titleColumn:"Columna",titleValue:"Valor",tipShowColumn:"Los campos de estad\xEDsticas se muestran como columnas",tipShowRow:"Los campos de estad\xEDsticas se muestran como filas",titleSelectionDataRange:"Selecciona rango",titleDataRange:"Rango de datos",valueSum:"SUMA",valueStatisticsSUM:"Suma",valueStatisticsCOUNT:"Contar",valueStatisticsCOUNTA:"Contar A",valueStatisticsCOUNTUNIQUE:"Contar Distintos",valueStatisticsAVERAGE:"Media",valueStatisticsMAX:"M\xE1x",valueStatisticsMIN:"M\xEDn",valueStatisticsMEDIAN:"Mediana",valueStatisticsPRODUCT:"Producto",valueStatisticsSTDEV:"Desviaci\xF3n Est\xE1ndar",valueStatisticsSTDEVP:"Stdevp",valueStatisticslet:"Varianza",valueStatisticsVARP:"VarP",errorNotAllowEdit:"\xA1Esta operaci\xF3n est\xE1 prohibida en el modo sin edici\xF3n!",errorNotAllowMulti:"No se puede realizar esta operaci\xF3n en varias \xE1reas de selecci\xF3n, selecciona un solo rango y vuelve a intentarlo",errorSelectRange:"Seleccione el rango de la nueva tabla din\xE1mica",errorIsDamage:"\xA1Los datos de origen de esta tabla din\xE1mica est\xE1n da\xF1ados!",errorNotAllowPivotData:"\xA1No se puede seleccionar la tabla din\xE1mica como datos de origen!",errorSelectionRange:"\xA1La selecci\xF3n fall\xF3, rango de entrada incorrecto!",errorIncreaseRange:"\xA1Por favor, expande el rango seleccionado!",titleAddColumn:"A\xF1adir columna a la tabla din\xE1mica",titleMoveColumn:"Muever la columna a la celda en blanco de abajo",titleClearColumnFilter:"Quitar el filtro de esta columna",titleFilterColumn:"Filtro",titleSort:"Ordenar",titleNoSort:"No Ordenar",titleSortAsc:"ASC",titleSortDesc:"DESC",titleSortBy:"Ordenar por",titleShowSum:"Mostrar total",titleStasticTrue:"S\xED",titleStasticFalse:"No"},dropCell:{copyCell:"Copiar",sequence:"Secuencia",onlyFormat:"Solo formato",noFormat:"Sin formato",day:"D\xEDa",workDay:"D\xEDa Laborable",month:"Mes",year:"A\xF1o",chineseNumber:"N\xFAmeros Chinos"},imageCtrl:{borderTile:"Color de borde de imagen",borderCur:"Color"},protection:{protectiontTitle:"Protecci\xF3n",enterPassword:"Introduce una contrase\xF1a (opcional)",enterHintTitle:"Preguntar cuando la edici\xF3n est\xE1 prohibida (opcional)",enterHint:"La celda o el gr\xE1fico que est\xE1s intentando cambiar se encuentra en una hoja de trabajo protegida. Si quieres cambiarlo, desprotege la hoja de trabajo. Es posible que tengas que ingresar una contrase\xF1a",swichProtectionTip:"Protege la hoja y el contenido de las celdas bloqueadas",authorityTitle:"Permitir a los usuarios de esta hoja:",selectLockedCells:"Selecciona celdas bloqueadas",selectunLockedCells:"Selecciona celdas desbloqueadas",formatCells:"Formatear celdas",formatColumns:"Formatear columnas",formatRows:"Formatear filas",insertColumns:"Insertar columnas",insertRows:"Insertar filas",insertHyperlinks:"Insertar enlaces",deleteColumns:"Eliminar columnas",deleteRows:"Eliminar filas",sort:"Ordenar",filter:"Filtrar",usePivotTablereports:"Usar informes de tabla din\xE1mica",editObjects:"Editar objetos",editScenarios:"Editar escenarios",allowRangeTitle:"Permitir a los usuarios del rango:",allowRangeAdd:"Nuevo...",allowRangeAddTitle:"T\xEDtulo",allowRangeAddSqrf:"Referencia",selectCellRange:"Haz clic para seleccionar un rango de celdas",selectCellRangeHolder:"Rango de celdas",allowRangeAddTitlePassword:"Contrase\xF1a",allowRangeAddTitleHint:"Pregunta",allowRangeAddTitleHintTitle:"Preguntar cuando hay una contrase\xF1a (opcional)",allowRangeAddtitleDefault:"Nombre del rango de entrada",rangeItemDblclick:"Haz doble clic para editar",rangeItemHasPassword:"Tiene contrase\xF1a",rangeItemErrorTitleNull:"El t\xEDtulo es nulo",rangeItemErrorRangeNull:"La referencia es nula",rangeItemErrorRange:"La reference tiene un error",validationTitle:"Validaci\xF3n de contrase\xF1a",validationTips:"Hay que ingresar una contrase\xF1a para desbloquear la protecci\xF3n de la hoja de trabajo",validationInputHint:"Introduce una contrase\xF1a",checkPasswordNullalert:"Contrase\xF1a requerida!",checkPasswordWrongalert:"\xA1Contrase\xF1a incorrecta. Por favor, prueba de nuevo!",checkPasswordSucceedalert:"Desbloqueo conseguido!",defaultRangeHintText:"La celda est\xE1 protegida con contrase\xF1a.",defaultSheetHintText:"La celda o el gr\xE1fico est\xE1n en una hoja de trabajo protegida. Para realizar cambios, desprotege la hoja de trabajo. Es posible que tengas que ingresar una contrase\xF1a"},cellFormat:{cellFormatTitle:"Formatear celdas",protection:"Protecci\xF3n",locked:"Bloqueado",hidden:"Escondido",protectionTips:"Para bloquear celdas u ocultar f\xF3rmulas, protege la hoja de trabajo. En la barra de herramientas, haz clic en el bot\xF3n Proteger hoja",tipsPart:"Comprobado parcial",tipsAll:"Todo seleccionado",selectionIsNullAlert:"Se requiere una selecci\xF3n!",sheetDataIsNullAlert:"error, no hay datos!"},print:{normalBtn:"Normal",layoutBtn:"Disposici\xF3n de p\xE1gina",pageBtn:"Previsualizaci\xF3n de saltos de p\xE1gina",menuItemPrint:"Imprimir (Ctrl+P)",menuItemAreas:"Imprimir \xE1reas",menuItemRows:"Imprimir t\xEDtulos de filas",menuItemColumns:"Imprimir t\xEDtulos de columnas"},edit:{typing:"mecanograf\xEDa"},websocket:{success:"\xC9xito de la conexi\xF3n de WebSocket",refresh:"Se produjo un error en la conexi\xF3n de WebSocket, \xA1actualice la p\xE1gina!",wait:"Se produjo un error en la conexi\xF3n de WebSocket, \xA1tenga paciencia!",close:"Conexi\xF3n WebSocket cerrada",contact:"Ocurri\xF3 un error de comunicaci\xF3n con el servidor, actualice la p\xE1gina y vuelva a intentarlo; de lo contrario, comun\xEDquese con el administrador.",support:"El navegador actual no es compatible con WebSocket"},exportXlsx:{notice:"Configure el complemento de exportaci\xF3n",serverError:"El servidor est\xE1 en mantenimiento",title:"Exportar XLSX",range:"alcance",currentSheet:"Hoja de trabajo actual",allSheets:"Todas las hojas"}}});var xu,_u=$e(()=>{xu={functionlist:{SUMIF:{d:"\u5C0D\u7BC4\u570D\u4E2D\u7B26\u5408\u6307\u5B9A\u689D\u4EF6\u7684\u503C\u6C42\u548C\u3002",a:"\u5C0D\u7BC4\u570D\u4E2D\u7B26\u5408\u6307\u5B9A\u689D\u4EF6\u7684\u503C\u6C42\u548C\u3002",p:[{name:"\u7BC4\u570D",detail:"\u8981\u6839\u64DA\u689D\u4EF6\u9032\u884C\u6AA2\u6E2C\u7684\u7BC4\u570D\u3002"},{name:"\u689D\u4EF6",detail:`\u8981\u61C9\u7528\u65BC\u7BC4\u570D\u7684\u6A21\u5F0F\u6216\u6E2C\u8A66\u689D\u4EF6\u3002 + +\u5982\u679C\u7BC4\u570D\u5305\u542B\u7684\u662F\u8981\u6AA2\u6E2C\u7684\u6587\u5B57,\u5247\u689D\u4EF6\u5FC5\u9808\u70BA\u5B57\u4E32\u3002\u689D\u4EF6\u53EF\u4EE5\u5305\u542B\u842C\u7528\u5B57\u5143,\u5305\u62EC\u7528\u65BC\u5339\u914D\u55AE\u500B\u5B57\u5143\u7684\uFF1F\u6216\u7528\u65BC\u5339\u914D\u96F6\u500B\u6216\u9023\u7E8C\u591A\u500B\u5B57\u5143\u7684*\u3002\u8981\u5339\u914D\u554F\u865F\u661F\u865F\u672C\u8EAB,\u8ACB\u5728\u8A72\u5B57\u5143\u524D\u9762\u52A0\u4E0A\u6CE2\u6D6A\u865F\uFF08~\uFF09\u9996\u78BC\uFF08\u5373~\uFF1F\u548C~*\uFF09\u3002\u5B57\u4E32\u689D\u4EF6\u5FC5\u9808\u7528\u5F15\u865F\u62EC\u8D77\u4F86\u3002\u51FD\u6578\u6703\u6AA2\u67E5\u7BC4\u570D\u4E2D\u7684\u6BCF\u500B\u5132\u5B58\u683C\u8207\u689D\u4EF6\u662F\u5426\u76F8\u7B49\u6216\u5339\u914D\uFF08\u5982\u679C\u4F7F\u7528\u4E86\u842C\u7528\u5B57\u5143\uFF09\u3002 + +\u5982\u679C\u7BC4\u570D\u5305\u542B\u7684\u662F\u8981\u6AA2\u6E2C\u7684\u6578\u4F4D,\u5247\u689D\u4EF6\u53EF\u4EE5\u662F\u5B57\u4E32\u4E5F\u53EF\u4EE5\u662F\u6578\u4F4D\u3002\u5982\u679C\u7D66\u5B9A\u7684\u689D\u4EF6\u662F\u4E00\u500B\u6578\u4F4D,\u5247\u6AA2\u67E5\u7BC4\u570D\u4E2D\u7684\u6BCF\u500B\u5132\u5B58\u683C\u662F\u5426\u7B49\u65BC\u689D\u4EF6\u3002\u53E6\u5916,\u689D\u4EF6\u4E5F\u53EF\u80FD\u662F\u5305\u542B\u6578\u4F4D\u7684\u5B57\u4E32\uFF08\u4E5F\u5C07\u5C0D\u5176\u9032\u884C\u76F8\u7B49\u6AA2\u6E2C\uFF09,\u6216\u8005\u5E36\u6709\u4EE5\u4E0B\u9996\u78BC\u7684\u6578\u4F4D:=\uFF08\u6AA2\u67E5\u662F\u5426\u76F8\u7B49\uFF09\u3001>\uFF08\u6AA2\u67E5\u7BC4\u570D\u5132\u5B58\u683C\u7684\u503C\u662F\u5426\u5927\u65BC\u689D\u4EF6\u503C\uFF09\u6216<\uFF08\u6AA2\u67E5\u7BC4\u570D\u5132\u5B58\u683C\u7684\u503C\u662F\u5426\u5C0F\u65BC\u689D\u4EF6\u503C\uFF09`},{name:"\u6C42\u548C\u7BC4\u570D",detail:"\u8981\u6C42\u548C\u7684\u7BC4\u570D\uFF08\u5982\u679C\u8207\u7BC4\u570D\u4E0D\u540C\uFF09\u3002"}]},TAN:{d:"\u8FD4\u56DE\u5DF2\u77E5\u89D2\u5EA6\u7684\u6B63\u5207\u503C\u3002",a:"\u8FD4\u56DE\u5DF2\u77E5\u89D2\u5EA6\u7684\u6B63\u5207\u503C\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u6C42\u5176\u6B63\u5207\u503C\u7684\u89D2\u5EA6,\u4EE5\u5F27\u5EA6\u8868\u793A\u3002"}]},TANH:{d:"\u8FD4\u56DE\u7D66\u5B9A\u5BE6\u6578\u7684\u96D9\u66F2\u6B63\u5207\u503C\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u5BE6\u6578\u7684\u96D9\u66F2\u6B63\u5207\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u96D9\u66F2\u6B63\u5207\u503C\u7684\u5BE6\u6578\u3002"}]},CEILING:{d:"\u5C07\u6578\u503C\u5411\u4E0A\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u6307\u5B9A\u56E0\u6578\u7684\u500D\u6578\u3002",a:"\u5C07\u6578\u503C\u5411\u4E0A\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u6307\u5B9A\u56E0\u6578\u7684\u500D\u6578\u3002",p:[{name:"\u503C",detail:"\u8981\u5411\u4E0A\u820D\u5165\u7684\u6578\u503C\u3002"},{name:"\u56E0\u6578",detail:"\u8981\u5C07\u503C\u820D\u5165\u5230\u6B64\u6578\u7684\u6574\u6578\u500D\u3002"}]},ATAN:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u6B63\u5207\u503C,\u4EE5\u5F27\u5EA6\u8868\u793A\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u6B63\u5207\u503C",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u53CD\u6B63\u5207\u503C\u7684\u6578\u503C\u3002"}]},ASINH:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u96D9\u66F2\u6B63\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u96D9\u66F2\u6B63\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u53CD\u96D9\u66F2\u6B63\u5F26\u503C\u7684\u6578\u503C\u3002"}]},ABS:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u7D55\u5C0D\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u7D55\u5C0D\u503C\u3002",p:[{name:"value",detail:"\u8981\u8FD4\u56DE\u5176\u7D55\u5C0D\u503C\u7684\u6578\u3002"}]},ACOS:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u4F59\u5F26\u503C,\u4EE5\u5F27\u5EA6\u8868\u793A\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u4F59\u5F26\u503C",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u53CD\u4F59\u5F26\u503C\u7684\u6578\u503C\u3002\u5FC5\u9808\u4ECB\u65BC-1\u548C1\u4E4B\u9593,\u5305\u62EC\u5169\u7AEF\u503C\u3002"}]},ACOSH:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u96D9\u66F2\u4F59\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u96D9\u66F2\u4F59\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u53CD\u96D9\u66F2\u4F59\u5F26\u503C\u7684\u6578\u503C\u3002\u5FC5\u9808\u5927\u65BC\u7B49\u65BC1\u3002"}]},MULTINOMIAL:{d:"\u8FD4\u56DE\u53C3\u6578\u548C\u7684\u968E\u4E58\u9664\u4EE5\u5404\u53C3\u6578\u968E\u4E58\u7684\u4E58\u7A4D\u5F8C\u5F97\u5230\u7684\u503C\u3002",a:"\u8FD4\u56DE\u53C3\u6578\u548C\u7684\u968E\u4E58\u9664\u4EE5\u5404\u53C3\u6578\u968E\u4E58\u7684\u4E58\u7A4D\u5F8C\u5F97\u5230\u7684\u503C\u3002",p:[{name:"\u503C1",detail:"\u7528\u65BC\u8A08\u7B97\u7684\u7B2C\u4E00\u9805\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"\u7528\u65BC\u8A08\u7B97\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},ATANH:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u96D9\u66F2\u6B63\u5207\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u96D9\u66F2\u6B63\u5207\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u53CD\u96D9\u66F2\u6B63\u5207\u503C\u7684\u6578\u503C\u3002\u5FC5\u9808\u4ECB\u65BC-1\u548C1\u4E4B\u9593\uFF08\u4E0D\u5305\u62EC-1\u548C1\uFF09\u3002"}]},ATAN2:{d:"\u4EE5\u5F27\u5EA6\u70BA\u7D44\u7E54\u8FD4\u56DEx\u8EF8\u8207\u5F9E\u539F\u9EDE\uFF080,0\uFF09\u5230\u6307\u5B9A\u5EA7\u6A19\u9EDE\uFF08`x`,`y`\uFF09\u4E4B\u9593\u9023\u7DDA\u7684\u593E\u89D2\u3002",a:"\u4EE5\u5F27\u5EA6\u70BA\u7D44\u7E54\u8FD4\u56DEx\u8EF8\u8207\u5F9E\u539F\u9EDE\uFF080,0\uFF09\u5230\u6307\u5B9A\u5EA7\u6A19\u9EDE\uFF08`x`,`y`\uFF09\u4E4B\u9593\u9023\u7DDA\u7684\u593E\u89D2\u3002",p:[{name:"x",detail:"\u8981\u8A08\u7B97\u5176\u8207x\u8EF8\u593E\u89D2\u5927\u5C0F\u7684\u7DDA\u6BB5\u7684\u7D42\u9EDEx\u5EA7\u6A19\u3002"},{name:"y",detail:"\u8981\u8A08\u7B97\u5176\u8207x\u8EF8\u593E\u89D2\u5927\u5C0F\u7684\u7DDA\u6BB5\u7684\u7D42\u9EDEy\u5EA7\u6A19\u3002"}]},COUNTBLANK:{d:"\u8FD4\u56DE\u7D66\u5B9A\u7BC4\u570D\u5167\u7684\u7A7A\u5132\u5B58\u683C\u6578\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u7BC4\u570D\u5167\u7684\u7A7A\u5132\u5B58\u683C\u6578\u3002",p:[{name:"\u7BC4\u570D",detail:"\u8981\u7D71\u8A08\u7A7A\u767D\u5132\u5B58\u683C\u6578\u91CF\u7684\u7BC4\u570D\u3002"}]},COSH:{d:"\u8FD4\u56DE\u7D66\u5B9A\u5BE6\u6578\u7684\u96D9\u66F2\u4F59\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u5BE6\u6578\u7684\u96D9\u66F2\u4F59\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u96D9\u66F2\u4F59\u5F26\u503C\u7684\u5BE6\u6578\u503C\u3002"}]},INT:{d:"\u6578\u503C\u5411\u4E0B\u53D6\u6574\u70BA\u5C0F\u65BC\u6216\u7B49\u65BC\u8A72\u6578\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6578\u3002",a:"\u6578\u503C\u5411\u4E0B\u53D6\u6574\u70BA\u5C0F\u65BC\u6216\u7B49\u65BC\u8A72\u6578\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6578\u3002",p:[{name:"\u503C",detail:"\u8981\u5411\u4E0B\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u6574\u6578\u7684\u6578\u503C\u3002"}]},ISEVEN:{d:"\u6AA2\u67E5\u6240\u63D0\u4F9B\u7684\u6578\u503C\u662F\u5426\u70BA\u5076\u6578\u3002",a:"\u6AA2\u67E5\u6240\u63D0\u4F9B\u7684\u6578\u503C\u662F\u5426\u70BA\u5076\u6578\u3002",p:[{name:"\u503C",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA\u5076\u6578\u7684\u6578\u503C\u3002 + +\u5982\u679C\u503C\u70BA\u5076\u6578\u6216\u6307\u5411\u5305\u542B\u5076\u6578\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,ISEVEN\u5C07\u8FD4\u56DETRUE,\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},ISODD:{d:"\u6AA2\u67E5\u6240\u63D0\u4F9B\u7684\u6578\u503C\u662F\u5426\u70BA\u5947\u6578\u3002",a:"\u6AA2\u67E5\u6240\u63D0\u4F9B\u7684\u6578\u503C\u662F\u5426\u70BA\u5947\u6578\u3002",p:[{name:"\u503C",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA\u5947\u6578\u7684\u6578\u503C\u3002 + +\u5982\u679C\u503C\u70BA\u5947\u6578\u6216\u6307\u5411\u5305\u542B\u5947\u6578\u7684\u5132\u5B58\u683C,ISODD\u5C07\u8FD4\u56DETRUE,\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},LCM:{d:"\u8FD4\u56DE\u4E00\u500B\u6216\u591A\u500B\u6574\u6578\u7684\u6700\u5C0F\u516C\u500D\u6578\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u6216\u591A\u500B\u6574\u6578\u7684\u6700\u5C0F\u516C\u500D\u6578\u3002",p:[{name:"\u503C1",detail:"\u8981\u5728\u6C42\u6700\u5C0F\u516C\u500D\u6578\u6578\u7684\u8A08\u7B97\u4E2D\u6AA2\u67E5\u5176\u56E0\u6578\u7684\u7B2C\u4E00\u9805\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u5728\u6C42\u6700\u5C0F\u516C\u500D\u6578\u6642\u8981\u8003\u616E\u5176\u56E0\u6578\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},LN:{d:"\u8FD4\u56DE\u6578\u503C\u4EE5e\uFF08\u6B50\u62C9\u6578\uFF09\u70BA\u5E95\u7684\u5C0D\u6578\u3002",a:"\u8FD4\u56DE\u6578\u503C\u4EE5e\uFF08\u6B50\u62C9\u6578\uFF09\u70BA\u5E95\u7684\u5C0D\u6578\u3002",p:[{name:"\u503C",detail:`\u8981\u4EE5e\u70BA\u5E95\u6578\u8A08\u7B97\u5176\u5C0D\u6578\u7684\u503C\u3002 + +\u503C\u5FC5\u9808\u70BA\u6B63\u6578\u3002`}]},LOG:{d:"\u6839\u64DA\u6307\u5B9A\u5E95\u6578\u8FD4\u56DE\u6578\u4F4D\u7684\u5C0D\u6578\u3002",a:"\u6839\u64DA\u6307\u5B9A\u5E95\u6578\u8FD4\u56DE\u6578\u4F4D\u7684\u5C0D\u6578\u3002",p:[{name:"\u503C",detail:"\u60F3\u8981\u8A08\u7B97\u5176\u5C0D\u6578\u7684\u6B63\u5BE6\u6578\u3002"},{name:"\u5E95\u6578",detail:"[\u53EF\u9078] - \u5C0D\u6578\u7684\u5E95\u6578\u3002"}]},LOG10:{d:"\u8FD4\u56DE\u6578\u503C\u4EE510\u70BA\u5E95\u7684\u5C0D\u6578\u3002",a:"\u8FD4\u56DE\u6578\u503C\u4EE510\u70BA\u5E95\u7684\u5C0D\u6578\u3002",p:[{name:"\u503C",detail:`\u8981\u8A08\u7B97\u5176\u4EE510\u70BA\u5E95\u7684\u5C0D\u6578\u7684\u6578\u503C\u3002 + +\u503C\u5FC5\u9808\u70BA\u6B63\u503C\u3002`}]},MOD:{d:"\u8FD4\u56DE\u5169\u6578\u76F8\u9664\u7684\u9918\u6578,\u7D50\u679C\u7684\u7B26\u865F\u8207\u9664\u6578\u76F8\u540C\u3002",a:"\u8FD4\u56DE\u5169\u6578\u76F8\u9664\u7684\u9918\u6578\u3002",p:[{name:"\u88AB\u9664\u6578",detail:"\u8981\u5C07\u5176\u76F8\u9664\u4EE5\u5F97\u5230\u9918\u6578\u7684\u6578\u503C\u3002"},{name:"\u9664\u6578",detail:"\u7528\u65BC\u9664\u5176\u4ED6\u6578\u7684\u6578\u503C\u3002"}]},MROUND:{d:"\u5C07\u6578\u503C\u53D6\u6574\u70BA\u53E6\u4E00\u6574\u6578\u6700\u63A5\u8FD1\u7684\u6574\u6578\u500D\u3002",a:"\u5C07\u6578\u503C\u53D6\u6574\u70BA\u53E6\u4E00\u6574\u6578\u6700\u63A5\u8FD1\u7684\u6574\u6578\u500D\u3002",p:[{name:"\u503C",detail:"\u8981\u53D6\u6574\u70BA\u53E6\u4E00\u6574\u6578\u6700\u63A5\u8FD1\u7684\u6574\u6578\u500D\u7684\u6578\u503C\u3002"},{name:"\u56E0\u6578",detail:"\u503C\u5C07\u53D6\u6B64\u56E0\u6578\u7684\u6574\u6578\u500D\u3002"}]},ODD:{d:"\u5C07\u6578\u503C\u5411\u4E0A\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u5947\u6574\u6578\u3002",a:"\u5C07\u6578\u503C\u5411\u4E0A\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u5947\u6574\u6578\u3002",p:[{name:"\u503C",detail:`\u8981\u5411\u4E0A\u53D6\u6574\u7684\u6578\u503C,\u53D6\u6574\u503C\u70BA\u5927\u65BC\u6B64\u503C\u7684\u6700\u63A5\u8FD1\u7684\u5947\u6578\u3002 + +\u5982\u679C\u503C\u70BA\u8CA0\u6578,\u5247\u5C07\u5176\u53D6\u6574\u70BA\u7D55\u5C0D\u503C\u5927\u65BC\u8A72\u503C\u7684\u76F8\u9130\u8CA0\u5947\u6578`}]},SUMSQ:{d:"\u8FD4\u56DE\u4E00\u7D44\u6578\u503C\u548C/\u6216\u5132\u5B58\u683C\u7684\u5E73\u65B9\u7E3D\u548C\u3002",a:"\u8FD4\u56DE\u4E00\u7D44\u6578\u503C\u548C/\u6216\u5132\u5B58\u683C\u7684\u5E73\u65B9\u7E3D\u548C\u3002",p:[{name:"\u503C1",detail:"\u8981\u5C07\u5176\u5E73\u65B9\u76F8\u52A0\u7684\u7B2C\u4E00\u500B\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u8981\u5C07\u5176\u5E73\u65B9\u8207\u503C1\u7684\u5E73\u65B9\u76F8\u52A0\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},COMBIN:{d:"\u7D66\u5B9A\u96C6\u5408\u4E2D\u7684\u5C0D\u8C61\u7E3D\u6578\u548C\u8981\u9078\u64C7\u7684\u5C0D\u8C61\u6578\u91CF,\u8FD4\u56DE\u5171\u6709\u591A\u5C11\u7A2E\u4E0D\u540C\u9078\u64C7\u7BA1\u9053\u3002",a:"\u7D66\u5B9A\u96C6\u5408\u4E2D\u7684\u5C0D\u8C61\u7E3D\u6578\u548C\u8981\u9078\u64C7\u7684\u5C0D\u8C61\u6578\u91CF",p:[{name:"n",detail:"\u8981\u5F9E\u4E2D\u9032\u884C\u9078\u64C7\u7684\u5C0D\u8C61\u96C6\u5408\u7684\u5927\u5C0F\u3002"},{name:"k",detail:"\u8981\u9078\u64C7\u7684\u5C0D\u8C61\u6578\u91CF\u3002"}]},SUM:{d:"\u8FD4\u56DE\u4E00\u7D44\u6578\u503C\u548C/\u6216\u5132\u5B58\u683C\u7684\u7E3D\u548C\u3002",a:"\u8FD4\u56DE\u4E00\u7D44\u6578\u503C\u548C/\u6216\u5132\u5B58\u683C\u7684\u7E3D\u548C\u3002",p:[{name:"\u503C1",detail:"\u8981\u76F8\u52A0\u7684\u7B2C\u4E00\u500B\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u8981\u76F8\u52A0\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},SUBTOTAL:{d:"\u4F7F\u7528\u6307\u5B9A\u7684\u532F\u7E3D\u51FD\u6578,\u8FD4\u56DE\u4E00\u7CFB\u5217\u7E31\u5411\u5132\u5B58\u683C\u7684\u5206\u985E\u532F\u7E3D\u3002",a:"\u4F7F\u7528\u6307\u5B9A\u7684\u532F\u7E3D\u51FD\u6578",p:[{name:"\u51FD\u6578\u7A0B\u5F0F\u78BC",detail:`\u7528\u65BC\u8A08\u7B97\u5206\u985E\u532F\u7E3D\u7684\u51FD\u6578\u3002 + +1\u4EE3\u8868AVERAGE + +2\u4EE3\u8868COUNT + +3\u4EE3\u8868COUNTA + +4\u4EE3\u8868MAX + +5\u4EE3\u8868MIN + +6\u4EE3\u8868PRODUCT + +7\u4EE3\u8868STDEV + +8\u4EE3\u8868STDEVP + +9\u4EE3\u8868SUM + +10\u4EE3\u8868VAR + +11\u4EE3\u8868VARP + +\u901A\u904E\u5728\u9019\u4E9B2\u4F4D\u7A0B\u5F0F\u78BC\u524D\u9644\u52A010\uFF08\u5C0D\u65BC1\u4F4D\u7A0B\u5F0F\u78BC\uFF09\u62161\uFF08\u5C0D\u65BC2\u4F4D\u7A0B\u5F0F\u78BC\uFF09,\u53EF\u4EE5\u5C07\u96B1\u85CF\u503C\u5FFD\u7565\u3002\u4F8B\u5982,102\u4EE3\u8868\u5FFD\u7565\u96B1\u85CF\u5132\u5B58\u683C\u7684COUNT,\u800C110\u5247\u4EE3\u8868\u5FFD\u7565\u96B1\u85CF\u503C\u7684VAR\u3002`},{name:"\u7BC4\u570D1",detail:"\u8981\u8A08\u7B97\u5206\u985E\u532F\u7E3D\u7684\u7B2C\u4E00\u500B\u7BC4\u570D\u3002"},{name:"\u7BC4\u570D2",detail:"[\u53EF\u9078] - \u8981\u8A08\u7B97\u5206\u985E\u532F\u7E3D\u7684\u5176\u4ED6\u7BC4\u570D\u3002"}]},ASIN:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u6B63\u5F26\u503C,\u4EE5\u5F27\u5EA6\u8868\u793A\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u53CD\u6B63\u5F26\u503C",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u53CD\u6B63\u5F26\u503C\u7684\u6578\u503C\u3002\u5FC5\u9808\u4ECB\u65BC-1\u548C1\u4E4B\u9593,\u5305\u62EC\u5169\u7AEF\u503C\u3002"}]},COUNTIF:{d:"\u8FD4\u56DE\u7BC4\u570D\u5167\u6EFF\u8DB3\u67D0\u500B\u689D\u4EF6\u7684\u5132\u5B58\u683C\u7684\u6578\u91CF\u3002",a:"\u8FD4\u56DE\u7BC4\u570D\u5167\u6EFF\u8DB3\u67D0\u500B\u689D\u4EF6\u7684\u5132\u5B58\u683C\u7684\u6578\u91CF\u3002",p:[{name:"\u7BC4\u570D",detail:"\u8981\u6839\u64DA\u689D\u4EF6\u9032\u884C\u6AA2\u6E2C\u7684\u7BC4\u570D\u3002"},{name:"\u689D\u4EF6",detail:`\u8981\u61C9\u7528\u65BC\u7BC4\u570D\u7684\u6A21\u5F0F\u6216\u6E2C\u8A66\u689D\u4EF6\u3002 + +\u5982\u679C\u7BC4\u570D\u5305\u542B\u7684\u662F\u8981\u6AA2\u6E2C\u7684\u6587\u5B57,\u5247\u689D\u4EF6\u5FC5\u9808\u70BA\u5B57\u4E32\u3002\u689D\u4EF6\u53EF\u4EE5\u5305\u542B\u842C\u7528\u5B57\u5143,\u5305\u62EC\u7528\u65BC\u5339\u914D\u55AE\u500B\u5B57\u5143\u7684\uFF1F\u6216\u7528\u65BC\u5339\u914D\u96F6\u500B\u6216\u9023\u7E8C\u591A\u500B\u5B57\u5143\u7684*\u3002\u8981\u5339\u914D\u554F\u865F\u661F\u865F\u672C\u8EAB,\u8ACB\u5728\u8A72\u5B57\u5143\u524D\u9762\u52A0\u4E0A\u6CE2\u6D6A\u865F\uFF08~\uFF09\u9996\u78BC\uFF08\u5373~\uFF1F\u548C~*\uFF09\u3002\u5B57\u4E32\u689D\u4EF6\u5FC5\u9808\u7528\u5F15\u865F\u62EC\u8D77\u4F86\u3002\u51FD\u6578\u6703\u6AA2\u67E5\u7BC4\u570D\u4E2D\u7684\u6BCF\u500B\u5132\u5B58\u683C\u8207\u689D\u4EF6\u662F\u5426\u76F8\u7B49\u6216\u5339\u914D\uFF08\u5982\u679C\u4F7F\u7528\u4E86\u842C\u7528\u5B57\u5143\uFF09\u3002 + +\u5982\u679C\u7BC4\u570D\u5305\u542B\u7684\u662F\u8981\u6AA2\u6E2C\u7684\u6578\u4F4D,\u5247\u689D\u4EF6\u53EF\u4EE5\u662F\u5B57\u4E32\u4E5F\u53EF\u4EE5\u662F\u6578\u4F4D\u3002\u5982\u679C\u7D66\u5B9A\u7684\u689D\u4EF6\u662F\u4E00\u500B\u6578\u4F4D,\u5247\u6AA2\u67E5\u7BC4\u570D\u4E2D\u7684\u6BCF\u500B\u5132\u5B58\u683C\u662F\u5426\u7B49\u65BC\u689D\u4EF6\u3002\u53E6\u5916,\u689D\u4EF6\u4E5F\u53EF\u80FD\u662F\u5305\u542B\u6578\u4F4D\u7684\u5B57\u4E32\uFF08\u4E5F\u5C07\u5C0D\u5176\u9032\u884C\u76F8\u7B49\u6AA2\u6E2C\uFF09,\u6216\u8005\u5E36\u6709\u4EE5\u4E0B\u9996\u78BC\u7684\u6578\u4F4D:=\u3001>\u3001>=\u3001<\u6216<=,\u9019\u4E9B\u689D\u4EF6\u5C07\u5206\u5225\u7528\u65BC\u6AA2\u67E5\u7BC4\u570D\u4E2D\u7684\u5132\u5B58\u683C\u662F\u5426\u7B49\u65BC\u3001\u5927\u65BC\u3001\u5927\u65BC\u7B49\u65BC\u3001\u5C0F\u65BC\u3001\u5C0F\u65BC\u7B49\u65BC\u689D\u4EF6\u503C\u3002`}]},RADIANS:{d:"\u5C07\u4EE5\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F49\u63DB\u70BA\u5F27\u5EA6\u3002",a:"\u5C07\u4EE5\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F49\u63DB\u70BA\u5F27\u5EA6\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u5F9E\u5EA6\u8F49\u63DB\u70BA\u5F27\u5EA6\u7684\u89D2\u5EA6\u3002"}]},RAND:{d:"\u8FD4\u56DE\u4E00\u500B\u4ECB\u65BC0\u548C1\u4E4B\u9593\uFF08\u5305\u62EC0\u4F46\u4E0D\u5305\u62EC1\uFF09\u7684\u4E82\u6578\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u4ECB\u65BC0\u548C1\u4E4B\u9593\uFF08\u5305\u62EC0\u4F46\u4E0D\u5305\u62EC1\uFF09\u7684\u4E82\u6578\u3002",p:[]},COUNTUNIQUE:{d:"\u8A08\u7B97\u4E00\u5217\u6307\u5B9A\u503C\u548C\u7BC4\u570D\u4E2D\u4E0D\u91CD\u8907\u6578\u503C\u7684\u500B\u6578\u3002",a:"\u8A08\u7B97\u4E00\u5217\u6307\u5B9A\u503C\u548C\u7BC4\u570D\u4E2D\u4E0D\u91CD\u8907\u6578\u503C\u7684\u500B\u6578\u3002",p:[{name:"\u503C1",detail:"\u8981\u6AA2\u67E5\u5176\u662F\u5426\u552F\u4E00\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u8981\u6AA2\u67E5\u662F\u5426\u552F\u4E00\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},DEGREES:{d:"\u5C07\u4EE5\u5F27\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F49\u63DB\u70BA\u5EA6\u3002",a:"\u5C07\u4EE5\u5F27\u5EA6\u8868\u793A\u7684\u89D2\u5EA6\u503C\u8F49\u63DB\u70BA\u5EA6\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u5F9E\u5F27\u5EA6\u8F49\u63DB\u70BA\u5EA6\u7684\u89D2\u5EA6\u3002"}]},ERFC:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u4E92\u88DC\u9AD8\u65AF\u8AA4\u5DEE\u51FD\u6578\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u4E92\u88DC\u9AD8\u65AF\u8AA4\u5DEE\u51FD\u6578\u3002",p:[{name:"z",detail:"\u8981\u70BA\u5176\u8A08\u7B97\u4E92\u88DC\u9AD8\u65AF\u8AA4\u5DEE\u51FD\u6578\u7684\u6578\u503C\u3002"}]},EVEN:{d:"\u5C07\u6578\u503C\u5411\u4E0A\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u5076\u6574\u6578\u3002",a:"\u5C07\u6578\u503C\u5411\u4E0A\u53D6\u6574\u70BA\u6700\u63A5\u8FD1\u7684\u5076\u6574\u6578\u3002",p:[{name:"\u503C",detail:`\u8981\u5411\u4E0A\u53D6\u6574\u7684\u6578\u503C,\u53D6\u6574\u503C\u70BA\u5927\u65BC\u6B64\u503C\u7684\u6700\u63A5\u8FD1\u7684\u5076\u6578\u3002 + +\u5982\u679C\u503C\u70BA\u8CA0\u6578,\u5247\u5C07\u5176\u53D6\u6574\u70BA\u7D55\u5C0D\u503C\u5927\u65BC\u8A72\u503C\u7684\u76F8\u9130\u8CA0\u5076\u6578\u3002`}]},EXP:{d:"\u8FD4\u56DE\u6B50\u62C9\u6578e\uFF08~2.718\uFF09\u7684\u6307\u5B9A\u6B21\u5E42\u3002",a:"\u8FD4\u56DE\u6B50\u62C9\u6578e\uFF08~2.718\uFF09\u7684\u6307\u5B9A\u6B21\u5E42\u3002",p:[{name:"\u6307\u6578",detail:"\u6307\u5B9Ae\u7684\u81EA\u4E58\u5E42\u6B21\u503C\u3002"}]},FACT:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u968E\u4E58\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u968E\u4E58\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u4E26\u8FD4\u56DE\u5176\u968E\u4E58\u7684\u6578\u4F4D\u6216\u5C0D\u6578\u4F4D\uFF08\u6240\u5728\u5132\u5B58\u683C\uFF09\u7684\u5F15\u7528\u3002"}]},FACTDOUBLE:{d:'\u8FD4\u56DE\u6578\u503C\u7684"\u96D9\u968E\u4E58"\u3002',a:'\u8FD4\u56DE\u6578\u503C\u7684"\u96D9\u968E\u4E58"\u3002',p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u4E26\u8FD4\u56DE\u5176\u96D9\u968E\u4E58\u7684\u6578\u4F4D\u6216\u5C0D\u6578\u4F4D\uFF08\u6240\u5728\u5132\u5B58\u683C\uFF09\u7684\u5F15\u7528\u3002"}]},PI:{d:"\u8FD4\u56DE\u5E36\u670914\u4F4D\u5C0F\u6578\u7684PI\u503C\u3002",a:"\u8FD4\u56DE\u5E36\u670914\u4F4D\u5C0F\u6578\u7684PI\u503C\u3002",p:[]},FLOOR:{d:"\u5C07\u6578\u503C\u5411\u4E0B\u53D6\u6574\u70BA\u6307\u5B9A\u56E0\u6578\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6578\u500D\u3002",a:"\u5C07\u6578\u503C\u5411\u4E0B\u53D6\u6574\u70BA\u6307\u5B9A\u56E0\u6578\u7684\u6700\u63A5\u8FD1\u7684\u6574\u6578\u500D\u3002",p:[{name:"\u503C",detail:"\u8981\u5411\u4E0B\u820D\u5165\u70BA\u56E0\u6578\u7684\u6700\u63A5\u8FD1\u6574\u6578\u500D\u7684\u6578\u503C\u3002"},{name:"\u56E0\u6578",detail:`\u8981\u5C07\u503C\u820D\u5165\u5230\u6B64\u6578\u7684\u6574\u6578\u500D\u3002 + +\u56E0\u6578\u4E0D\u5F97\u70BA0\u3002`}]},GCD:{d:"\u8FD4\u56DE\u4E00\u500B\u6216\u591A\u500B\u6574\u6578\u7684\u6700\u5927\u516C\u7D04\u6578\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u6216\u591A\u500B\u6574\u6578\u7684\u6700\u5927\u516C\u7D04\u6578\u3002",p:[{name:"\u503C1",detail:"\u8981\u5728\u67E5\u627E\u6700\u5927\u516C\u7D04\u6578\u7684\u8A08\u7B97\u4E2D\u6AA2\u67E5\u5176\u56E0\u6578\u7684\u7B2C\u4E00\u9805\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u5728\u6C42\u6700\u5927\u516C\u7D04\u6578\u6642\u8981\u8003\u616E\u5176\u56E0\u6578\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},RANDBETWEEN:{d:"\u8FD4\u56DE\u4ECB\u65BC\u5169\u500B\u6574\u6578\u4E4B\u9593\uFF08\u5305\u62EC\u9019\u5169\u500B\u6574\u6578\uFF09\u7684\u4E82\u6578\u3002",a:"\u8FD4\u56DE\u4ECB\u65BC\u5169\u500B\u6574\u6578\u4E4B\u9593\uFF08\u5305\u62EC\u9019\u5169\u500B\u6574\u6578\uFF09\u7684\u4E82\u6578\u3002",p:[{name:"\u4E0B\u754C",detail:"\u96A8\u6A5F\u503C\u7BC4\u570D\u7684\u4E0B\u754C\u3002"},{name:"\u4E0A\u754C",detail:"\u96A8\u6A5F\u503C\u7BC4\u570D\u7684\u4E0A\u754C\u3002"}]},ROUND:{d:"\u5C07\u6578\u4F4D\u56DB\u6368\u4E94\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6578\u3002",a:"\u5C07\u6578\u4F4D\u56DB\u6368\u4E94\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6578\u3002",p:[{name:"\u503C",detail:"\u8981\u56DB\u6368\u4E94\u5165\u7684\u6578\u4F4D\u3002"},{name:"\u4F4D\u6578",detail:`\u8981\u9032\u884C\u56DB\u6368\u4E94\u5165\u904B\u7B97\u7684\u4F4D\u6578\u3002 + +\u4F4D\u6578\u53EF\u4EE5\u53D6\u8CA0\u503C,\u5728\u9019\u7A2E\u60C5\u6CC1\u4E0B\u6703\u5C07\u503C\u7684\u5C0F\u6578\u9EDE\u5DE6\u5074\u90E8\u5206\u820D\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6578\u3002`}]},ROUNDDOWN:{d:"\u671D\u8457\u96F6\u7684\u65B9\u5411\u5C07\u6578\u4F4D\u9032\u884C\u5411\u4E0B\u820D\u5165\u3002",a:"\u671D\u8457\u96F6\u7684\u65B9\u5411\u5C07\u6578\u4F4D\u9032\u884C\u5411\u4E0B\u820D\u5165\u3002",p:[{name:"\u503C",detail:"\u9700\u8981\u5411\u4E0B\u820D\u5165\u7684\u4EFB\u610F\u5BE6\u6578\u3002"},{name:"\u4F4D\u6578",detail:`\u8981\u901A\u904E\u820D\u5165\u9054\u5230\u7684\u5C0F\u6578\u4F4D\u6578\u3002 + +\u4F4D\u6578\u53EF\u4EE5\u53D6\u8CA0\u503C,\u5728\u9019\u7A2E\u60C5\u6CC1\u4E0B\u6703\u5C07\u503C\u7684\u5C0F\u6578\u9EDE\u5DE6\u5074\u90E8\u5206\u820D\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6578\u3002`}]},ROUNDUP:{d:"\u671D\u8457\u9060\u96E20\uFF08\u96F6\uFF09\u7684\u65B9\u5411\u5C07\u6578\u4F4D\u9032\u884C\u5411\u4E0A\u820D\u5165\u3002",a:"\u671D\u8457\u9060\u96E20\uFF08\u96F6\uFF09\u7684\u65B9\u5411\u5C07\u6578\u4F4D\u9032\u884C\u5411\u4E0A\u820D\u5165\u3002",p:[{name:"\u503C",detail:"\u8981\u5C07\u5176\u820D\u5165\u70BA\u4F4D\u6578\u4F4D\u6578\u4F4D\u7684\u503C,\u59CB\u7D42\u5411\u4E0A\u820D\u5165\u3002"},{name:"\u4F4D\u6578",detail:`\u8981\u901A\u904E\u820D\u5165\u9054\u5230\u7684\u5C0F\u6578\u4F4D\u6578\u3002 + +\u4F4D\u6578\u53EF\u4EE5\u53D6\u8CA0\u503C,\u5728\u9019\u7A2E\u60C5\u6CC1\u4E0B\u6703\u5C07\u503C\u7684\u5C0F\u6578\u9EDE\u5DE6\u5074\u90E8\u5206\u820D\u5165\u5230\u6307\u5B9A\u7684\u4F4D\u6578\u3002`}]},SERIESSUM:{d:"\u7D66\u5B9A\u53C3\u6578x\u3001n\u3001m\u548Ca,\u8FD4\u56DE\u5E42\u7D1A\u6578\u7684\u548Ca1xn + a2x\uFF08n+m\uFF09+\u2026+ aix\uFF08n+\uFF08i-1\uFF09m\uFF09,\u5176\u4E2Di\u70BA\u7BC4\u570Da\u4E2D\u7684\u9805\u6578\u3002",a:"\u7D66\u5B9A\u53C3\u6578x\u3001n\u3001m\u548Ca",p:[{name:"x",detail:"\u5E42\u7D1A\u6578\u7684\u8F38\u5165\u503C\u3002\u96A8\u76F8\u61C9\u7684\u8FD1\u4F3C\u985E\u578B\u800C\u8B8A,\u6709\u53EF\u80FD\u70BA\u89D2\u5EA6\u3001\u6307\u6578\u6216\u5176\u4ED6\u4E00\u4E9B\u503C\u3002"},{name:"n",detail:"\u5728\u5E42\u7D1A\u6578\u4E2Dx\u7684\u521D\u59CB\u81EA\u4E58\u5E42\u6B21\u3002"},{name:"m",detail:"x\u7684\u5E42\u6B21\u4E2D\u7684\u9644\u52A0\u589E\u91CF\u3002"},{name:"a",detail:"\u5305\u542B\u5E42\u7D1A\u6578\u4FC2\u6578\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"}]},SIGN:{d:"\u7D66\u5B9A\u8F38\u5165\u6578\u503C,\u5982\u679C\u70BA\u8CA0\u8FD4\u56DE-1\uFF1B\u5982\u679C\u70BA\u6B63\u8FD4\u56DE1\uFF1B\u5982\u679C\u70BA\u96F6\u5247\u8FD4\u56DE0\u3002",a:"\u7D66\u5B9A\u8F38\u5165\u6578\u503C",p:[{name:"\u503C",detail:"\u8981\u8FD4\u56DE\u5176\u7B26\u865F\u7684\u6578\u503C\u3002"}]},SIN:{d:"\u7D66\u5B9A\u89D2\u5EA6\uFF08\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09,\u8FD4\u56DE\u5176\u6B63\u5F26\u503C\u3002",a:"\u7D66\u5B9A\u89D2\u5EA6\uFF08\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u8FD4\u56DE\u5176\u6B63\u5F26\u503C\u7684\u89D2\u5EA6,\u4EE5\u5F27\u5EA6\u8868\u793A\u3002"}]},SINH:{d:"\u8FD4\u56DE\u7D66\u5B9A\u5BE6\u6578\u7684\u96D9\u66F2\u6B63\u5F26\u503C\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u5BE6\u6578\u7684\u96D9\u66F2\u6B63\u5F26\u503C\u3002",p:[{name:"\u503C",detail:"\u8981\u8A08\u7B97\u5176\u96D9\u66F2\u6B63\u5F26\u503C\u7684\u5BE6\u6578\u503C\u3002"}]},SQRT:{d:"\u8FD4\u56DE\u4E00\u500B\u6B63\u6578\u7684\u6B63\u5E73\u65B9\u6839\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u6B63\u6578\u7684\u6B63\u5E73\u65B9\u6839\u3002",p:[{name:"\u503C",detail:`\u8981\u8A08\u7B97\u5176\u6B63\u5E73\u65B9\u6839\u7684\u6578\u503C\u3002 + +\u503C\u5FC5\u9808\u70BA\u6B63\u6578\uFF1B\u5982\u679C\u70BA\u8CA0,SQRT\u5C07\u8FD4\u56DE#NUM\uFF01\u932F\u8AA4\u3002`}]},SQRTPI:{d:"\u8FD4\u56DEPI\u8207\u7D66\u5B9A\u6B63\u6578\u4E58\u7A4D\u7684\u6B63\u5E73\u65B9\u6839\u3002",a:"\u8FD4\u56DEPI\u8207\u7D66\u5B9A\u6B63\u6578\u4E58\u7A4D\u7684\u6B63\u5E73\u65B9\u6839\u3002",p:[{name:"\u503C",detail:`\u8981\u5C07\u5176\u8207PI\u76F8\u4E58\u4E26\u8FD4\u56DE\u8A72\u4E58\u7A4D\u7684\u5E73\u65B9\u6839\u7684\u6578\u503C + +\u503C\u5FC5\u9808\u70BA\u6B63\u6578\uFF1B\u5982\u679C\u70BA\u8CA0\u6578,SQRTPI\u5C07\u8FD4\u56DE#NUM\uFF01\u932F\u8AA4\u3002`}]},GAMMALN:{d:"\u8FD4\u56DE\u6307\u5B9A\u4F3D\u746A\u51FD\u6578\u7684\u4EE5e\uFF08\u6B50\u62C9\u6578\uFF09\u70BA\u5E95\u7684\u5C0D\u6578\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u4F3D\u746A\u51FD\u6578\u7684\u4EE5e\uFF08\u6B50\u62C9\u6578\uFF09\u70BA\u5E95\u7684\u5C0D\u6578\u3002",p:[{name:"\u503C",detail:`\u4F3D\u746A\u51FD\u6578\u7684\u8F38\u5165\u503C\u3002\u8FD4\u56DE\u7684\u5C07\u662F\u4F3D\u746A\uFF08\u503C\uFF09\u7684\u81EA\u7136\u5C0D\u6578\u3002 + +\u503C\u5FC5\u9808\u70BA\u6B63\u6578\u3002`}]},COS:{d:"\u8FD4\u56DE\u7D66\u5B9A\u89D2\u5EA6\u7684\u4F59\u5F26\u503C\uFF08\u89D2\u5EA6\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u89D2\u5EA6\u7684\u4F59\u5F26\u503C\uFF08\u89D2\u5EA6\u4EE5\u5F27\u5EA6\u8868\u793A\uFF09\u3002",p:[{name:"\u89D2\u5EA6",detail:"\u8981\u53D6\u5176\u4F59\u5F26\u503C\u7684\u89D2\u5EA6,\u4EE5\u5F27\u5EA6\u8868\u793A\u3002"}]},TRUNC:{d:"\u9664\u6307\u5B9A\u6709\u6548\u4F4D\u4E4B\u5916\u7684\u90E8\u5206,\u53D6\u6578\u64DA\u7684\u6307\u5B9A\u6709\u6548\u4F4D\u3002",a:"\u9664\u6307\u5B9A\u6709\u6548\u4F4D\u4E4B\u5916\u7684\u90E8\u5206",p:[{name:"\u503C",detail:"\u8981\u622A\u53D6\u7684\u6578\u64DA\u3002"},{name:"\u4F4D\u6578",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u5C0F\u6578\u9EDE\u53F3\u5074\u8981\u4FDD\u7559\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u4F4D\u6578\u5927\u65BC\u503C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5C07"\u503C"\u539F\u6A23\u8FD4\u56DE\u3002 + +\u4F4D\u6578\u53EF\u4EE5\u53D6\u8CA0\u503C,\u5728\u9019\u7A2E\u60C5\u6CC1\u4E0B\u6703\u5C07\u5C0F\u6578\u9EDE\u5DE6\u5074\u6307\u5B9A\u4F4D\u6578\u7684\u503C\u66F4\u6539\u70BA\u96F6\u3002\u5C0F\u6578\u9EDE\u53F3\u5074\u7684\u6240\u6709\u4F4D\u6578\u90FD\u6703\u88AB\u6368\u68C4\u3002\u5982\u679C\u503C\u7684\u6240\u6709\u4F4D\u90FD\u88AB\u66F4\u6539\u70BA\u96F6,\u5247TRUNC\u6703\u8FD4\u56DE0\u3002`}]},QUOTIENT:{d:"\u8FD4\u56DE\u4EE5\u4E00\u500B\u6578\u9664\u4EE5\u53E6\u4E00\u500B\u6578\u6240\u5F97\u7684\u7D50\u679C,\u4E0D\u5305\u542B\u9918\u6578\u3002",a:"\u8FD4\u56DE\u4EE5\u4E00\u500B\u6578\u9664\u4EE5\u53E6\u4E00\u500B\u6578\u6240\u5F97\u7684\u7D50\u679C",p:[{name:"\u88AB\u9664\u6578",detail:"\u8981\u88AB\u9664\u7684\u6578\u503C\u3002"},{name:"\u9664\u6578",detail:`\u7528\u65BC\u9664\u5176\u4ED6\u6578\u7684\u6578\u503C\u3002 + +\u9664\u6578\u4E0D\u5F97\u70BA0`}]},POWER:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u6307\u5B9A\u6B21\u5E42\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u6307\u5B9A\u6B21\u5E42\u3002",p:[{name:"\u5E95\u6578",detail:`\u8981\u8A08\u7B97\u5176\u6307\u6578\u6B21\u5E42\u7684\u6578\u503C\u3002 + +\u5982\u679C\u5E95\u6578\u70BA\u8CA0,\u5247\u6307\u6578\u5FC5\u9808\u70BA\u6574\u6578\u3002`},{name:"\u6307\u6578",detail:"\u6307\u5B9A\u5E95\u6578\u7684\u81EA\u4E58\u5E42\u6B21\u503C\u3002"}]},SUMIFS:{d:"\u6839\u64DA\u591A\u9805\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u4E4B\u548C\u3002",a:"\u6839\u64DA\u591A\u9805\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u4E4B\u548C\u3002",p:[{name:"\u6C42\u548C\u7BC4\u570D",detail:"\u8981\u5C0D\u5176\u6C42\u548C\u7684\u7BC4\u570D\u3002"},{name:"\u689D\u4EF6\u7BC4\u570D1",detail:"\u8981\u5728\u54EA\u500B\u7BC4\u570D\u5167\u6AA2\u67E5\u689D\u4EF61\u3002"},{name:"\u689D\u4EF61",detail:"\u8981\u61C9\u7528\u65BC\u689D\u4EF6\u7BC4\u570D1\u7684\u6A21\u5F0F\u6216\u6E2C\u8A66\u689D\u4EF6\u3002"},{name:"\u689D\u4EF6\u7BC4\u570D2,\u689D\u4EF62\u2026",detail:"[ \u53EF\u9078 ] - \u8981\u6AA2\u67E5\u7684\u5176\u4ED6\u7BC4\u570D\u548C\u689D\u4EF6\u3002"}]},COUNTIFS:{d:"\u6839\u64DA\u591A\u9805\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u4E2D\u7684\u5132\u5B58\u683C\u6578\u91CF\u3002",a:"\u6839\u64DA\u591A\u9805\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u4E2D\u7684\u5132\u5B58\u683C\u6578\u91CF\u3002",p:[{name:"\u689D\u4EF6\u7BC4\u570D1",detail:"\u8981\u5728\u54EA\u500B\u7BC4\u570D\u5167\u6AA2\u67E5\u689D\u4EF61\u3002"},{name:"\u689D\u4EF61",detail:"\u8981\u61C9\u7528\u65BC\u689D\u4EF6\u7BC4\u570D1\u7684\u6A21\u5F0F\u6216\u6E2C\u8A66\u689D\u4EF6\u3002"},{name:"\u689D\u4EF6\u7BC4\u570D2,\u689D\u4EF62\u2026",detail:"[ \u53EF\u9078 ] - \u8981\u6AA2\u67E5\u7684\u5176\u4ED6\u7BC4\u570D\u548C\u689D\u4EF6,\u53EF\u91CD\u8907\u3002"}]},PRODUCT:{d:"\u8FD4\u56DE\u5C07\u4E00\u7D44\u6578\u76F8\u4E58\u6240\u5F97\u7684\u7D50\u679C\u3002",a:"\u8FD4\u56DE\u5C07\u4E00\u7D44\u6578\u76F8\u4E58\u6240\u5F97\u7684\u7D50\u679C\u3002",p:[{name:"\u4E58\u65781",detail:"\u7528\u65BC\u8A08\u7B97\u4E58\u7A4D\u7684\u7B2C\u4E00\u500B\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u4E58\u65782 ... \u4E58\u657830",detail:"[\u53EF\u9078] - \u8981\u76F8\u4E58\u7684\u5176\u4ED6\u6578\u503C"}]},HARMEAN:{d:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u8ABF\u548C\u5E73\u5747\u503C\u3002",a:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u8ABF\u548C\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},HYPGEOMDIST:{d:"\u8FD4\u56DE\u8D85\u5E7E\u4F55\u5206\u4F48\u3002\u5982\u679C\u5DF2\u77E5\u6A23\u672C\u91CF\u3001\u7E3D\u9AD4\u6210\u529F\u6B21\u6578\u548C\u7E3D\u9AD4\u5927\u5C0F,\u5247 HYPGEOM.DIST \u8FD4\u56DE\u6A23\u672C\u53D6\u5F97\u5DF2\u77E5\u6210\u529F\u6B21\u6578\u7684\u6982\u7387\u3002",a:"\u8FD4\u56DE\u8D85\u5E7E\u4F55\u5206\u4F48\u3002",p:[{name:"Sample_s",detail:"\u6A23\u672C\u4E2D\u6210\u529F\u7684\u6B21\u6578\u3002"},{name:"Number_sample",detail:"\u6A23\u672C\u91CF\u3002"},{name:"Population_s",detail:"\u7E3D\u9AD4\u4E2D\u6210\u529F\u7684\u6B21\u6578\u3002"},{name:"Number_pop",detail:"\u7E3D\u9AD4\u5927\u5C0F\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002 + +\u5982\u679Ccumulative\u70BATRUE\uFF08\uFF09,\u5247HYPGEOM.DIST\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},INTERCEPT:{d:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u7DDA\u6027\u56DE\u6B78\u65B9\u7A0B\u76F4\u7DDA\u8207 Y \u8EF8\u7684\u76F8\u4EA4\u9EDE\uFF08x=0\uFF09\u7684y\u503C\u3002",a:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u7DDA\u6027\u56DE\u6B78\u65B9\u7A0B\u76F4\u7DDA\u8207 Y \u8EF8\u7684\u76F8\u4EA4\u9EDE\uFF08x=0\uFF09\u7684y\u503C\u3002",p:[{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},KURT:{d:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u5CED\u5EA6,\u8A72\u540D\u984D\u8A13\u793A\u6578\u64DA\u96C6\uFF08\u5206\u4F48\uFF09\u7684\u5F62\u614B,\u5C24\u5176\u662F\u8A72\u5F62\u614B\u7684\u9661\u5CED\u7A0B\u5EA6\u3002",a:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u5CED\u5EA6",p:[{name:"\u503C1",detail:"\u6578\u64DA\u96C6\u4E2D\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},LARGE:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7B2C n \u500B\u6700\u5927\u5143\u7D20,n \u7531\u7528\u6236\u6307\u5B9A\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7B2C n \u500B\u6700\u5927\u5143\u7D20",p:[{name:"\u6578\u64DA",detail:"\u5305\u542B\u76F8\u95DC\u6578\u64DA\u96C6\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"n",detail:`\u8981\u8FD4\u56DE\u7684\u5143\u7D20\u7684\u6392\u884C\u4F4D\u7F6E\uFF08\u5F9E\u5927\u5230\u5C0F\u9806\u5E8F\uFF09\u3002 + +\u4F8B\u5982,\u5C07n\u8A2D\u70BA4\u5C07\u4F7FLARGE\u8FD4\u56DE\u6578\u64DA\u4E2D\u6392\u540D\u7B2C4\u7684\u6700\u5927\u5143\u7D20\u3002`}]},STDEVA:{d:"\u57FA\u65BC\u6A23\u672C\u8A08\u7B97\u6A19\u6E96\u5DEE,\u5C07\u6587\u5B57\u53D6\u503C\u70BA0\u3002",a:"\u57FA\u65BC\u6A23\u672C\u8A08\u7B97\u6A19\u6E96\u5DEE",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2,\u2026",detail:"[\u53EF\u9078] - \u6A23\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},STDEVP:{d:"\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u6A19\u6E96\u5DEE\u3002",a:"\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u6A19\u6E96\u5DEE\u3002",p:[{name:"\u503C1",detail:"\u6578\u64DA\u96C6\u4E2D\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},GEOMEAN:{d:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u5E7E\u4F55\u5E73\u5747\u503C\u3002",a:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u5E7E\u4F55\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},RANK_EQ:{d:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u5B58\u5728\u591A\u9805,\u5247\u8FD4\u56DE\u5176\u4E2D\u7684\u6700\u9AD8\u6392\u540D\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u5B58\u5728\u591A\u9805,\u5247\u8FD4\u56DE\u5176\u4E2D\u7684\u6700\u9AD8\u6392\u540D\u3002",p:[{name:"number",detail:"\u8981\u78BA\u5B9A\u5176\u6392\u540D\u7684\u503C\u3002"},{name:"ref",detail:"\u5305\u542B\u76F8\u95DC\u6578\u64DA\u96C6\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"order",detail:'[\u53EF\u9078-\u9ED8\u8A8D\u70BA\u6309\u964D\u5E8F\uFF08FALSE\uFF08\uFF09\uFF09] - \u8981\u6309\u6607\u51AA\u9084\u662F\u6309\u964D\u5E8F\u8003\u616E"data"\u4E2D\u7684\u503C\u3002'}]},RANK_AVG:{d:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u5B58\u5728\u591A\u9805,\u5247\u8FD4\u56DE\u9019\u4E9B\u9805\u6392\u540D\u7684\u5E73\u5747\u503C\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u7684\u6392\u540D\u3002\u5982\u679C\u76F8\u540C\u7684\u503C\u5728\u6578\u64DA\u96C6\u4E2D\u5B58\u5728\u591A\u9805,\u5247\u8FD4\u56DE\u9019\u4E9B\u9805\u6392\u540D\u7684\u5E73\u5747\u503C\u3002",p:[{name:"number",detail:"\u8981\u78BA\u5B9A\u5176\u6392\u540D\u7684\u503C\u3002"},{name:"ref",detail:"\u5305\u542B\u76F8\u95DC\u6578\u64DA\u96C6\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"order",detail:'[\u53EF\u9078-\u9ED8\u8A8D\u70BA\u6309\u964D\u5E8F\uFF08FALSE\uFF08\uFF09\uFF09] - \u8981\u6309\u6607\u51AA\u9084\u662F\u6309\u964D\u5E8F\u8003\u616E"data"\u4E2D\u7684\u503C\u3002'}]},PERCENTRANK_EXC:{d:"\u4EE5\u767E\u5206\u6578\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7D66\u5B9A\u6578\u64DA\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u65BC0\u548C1\u4E4B\u9593,\u4E0D\u5305\u62EC\u5169\u7AEF\u503C\uFF09\u3002",a:"\u4EE5\u767E\u5206\u6578\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7D66\u5B9A\u6578\u64DA\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u65BC0\u548C1\u4E4B\u9593,\u4E0D\u5305\u62EC\u5169\u7AEF\u503C\uFF09\u3002",p:[{name:"data",detail:"\u5305\u542B\u76F8\u95DC\u6578\u64DA\u96C6\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"x",detail:"\u8981\u78BA\u5B9A\u5176\u767E\u5206\u6BD4\u6392\u4F4D\u7684\u503C\u3002"},{name:"significance",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA3] - \u8981\u5728\u8A08\u7B97\u4E2D\u4F7F\u7528\u7684\u6709\u6548\u4F4D\u6578\u3002"}]},PERCENTRANK_INC:{d:"\u4EE5\u767E\u5206\u6BD4\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7D66\u5B9A\u6578\u64DA\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u65BC0\u548C1\u4E4B\u9593,\u5305\u62EC\u5169\u7AEF\u503C\uFF09\u3002",a:"\u4EE5\u767E\u5206\u6BD4\u5F62\u5F0F\u8FD4\u56DE\u6307\u5B9A\u503C\u5728\u7D66\u5B9A\u6578\u64DA\u96C6\u4E2D\u7684\u767E\u5206\u6BD4\u6392\u540D\uFF08\u4ECB\u65BC0\u548C1\u4E4B\u9593,\u5305\u62EC\u5169\u7AEF\u503C\uFF09\u3002",p:[{name:"data",detail:"\u5305\u542B\u76F8\u95DC\u6578\u64DA\u96C6\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"x",detail:"\u8981\u78BA\u5B9A\u5176\u767E\u5206\u6BD4\u6392\u4F4D\u7684\u503C\u3002"},{name:"significance",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA3] - \u8981\u5728\u8A08\u7B97\u4E2D\u4F7F\u7528\u7684\u6709\u6548\u4F4D\u6578\u3002"}]},FORECAST:{d:"\u57FA\u65BC\u6578\u64DA\u96C6\u7684\u7DDA\u6027\u56DE\u6B78,\u8A08\u7B97\u6307\u5B9A x \u7684\u9810\u671F y \u503C\u3002",a:"\u57FA\u65BC\u6578\u64DA\u96C6\u7684\u7DDA\u6027\u56DE\u6B78",p:[{name:"x",detail:"x\u8EF8\u4E0A\u7528\u65BC\u9810\u6E2C\u7684\u503C\u3002"},{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},FISHERINV:{d:"\u8FD4\u56DE\u6307\u5B9A\u6578\u503C\u7684 Fisher \u9006\u8B8A\u63DB\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6578\u503C\u7684 Fisher \u9006\u8B8A\u63DB\u3002",p:[{name:"y",detail:"\u8981\u8A08\u7B97\u5176Fisher\u9006\u8B8A\u63DB\u7684\u6578\u503C\u3002"}]},FISHER:{d:"\u8FD4\u56DE\u6307\u5B9A\u6578\u503C\u7684 Fisher \u8B8A\u63DB\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6578\u503C\u7684 Fisher \u8B8A\u63DB\u3002",p:[{name:"x",detail:"\u8981\u8A08\u7B97\u5176Fisher\u8B8A\u63DB\u7684\u6578\u503C\u3002"}]},MODE_SNGL:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u51FA\u73FE\u6B21\u6578\u6700\u591A\u7684\u503C\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u51FA\u73FE\u6B21\u6578\u6700\u591A\u7684\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u6A21\u5F0F\u6642\u8981\u6AA2\u67E5\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u6A21\u5F0F\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},WEIBULL_DIST:{d:"\u7D66\u5B9A\u5F62\u72C0\u548C\u5C3A\u5EA6,\u8FD4\u56DE\u97CB\u4F2F\u5206\u4F48\u51FD\u6578\uFF08\u6216\u97CB\u4F2F\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF09\u7684\u503C\u3002",a:"\u7D66\u5B9A\u5F62\u72C0\u548C\u5C3A\u5EA6",p:[{name:"x",detail:"WEIBULL \u5206\u4F48\u51FD\u6578\u7684\u8F38\u5165\u503C\u3002"},{name:"alpha",detail:`Weibull \u5206\u4F48\u51FD\u6578\u7684\u5F62\u72C0\u53C3\u6578\u3002 + + alpha\u503C\u5FC5\u9808\u5927\u65BC0\u3002`},{name:"beta",detail:`Weibull \u5206\u4F48\u51FD\u6578\u7684\u5C3A\u5EA6\u53C3\u6578\u3002 + + beta\u503C\u5FC5\u9808\u5927\u65BC0\u3002`},{name:"cumulative",detail:"TRUE\uFF08\uFF09\u8868\u793A\u4F7F\u7528\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578,FALSE\uFF08\uFF09\u5247\u8868\u793A\u4F7F\u7528\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002"}]},COUNT:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u6578\u503C\u7684\u500B\u6578\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u6578\u503C\u7684\u500B\u6578\u3002",p:[{name:"\u503C1",detail:"\u8A08\u6578\u6642\u8981\u6AA2\u67E5\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u5728\u8A08\u6578\u6642\u8981\u6AA2\u67E5\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},COUNTA:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u503C\u7684\u6578\u91CF\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u503C\u7684\u6578\u91CF\u3002",p:[{name:"\u503C1",detail:"\u8A08\u6578\u6642\u8981\u6AA2\u67E5\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u5728\u8A08\u6578\u6642\u8981\u6AA2\u67E5\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},AVEDEV:{d:"\u8A08\u7B97\u6578\u64DA\u8207\u6578\u64DA\u96C6\u5E73\u5747\u503C\u4E4B\u9593\u7684\u504F\u5DEE\u5927\u5C0F\u7684\u5E73\u5747\u503C\u3002",a:"\u8A08\u7B97\u6578\u64DA\u8207\u6578\u64DA\u96C6\u5E73\u5747\u503C\u4E4B\u9593\u7684\u504F\u5DEE\u5927\u5C0F\u7684\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6A23\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},AVERAGE:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u7B97\u8853\u5E73\u5747\u503C,\u5C0D\u6587\u5B57\u5FFD\u7565\u4E0D\u8A08\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u7B97\u8853\u5E73\u5747\u503C",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u5E73\u5747\u503C\u6642\u7528\u5230\u7684\u7B2C\u4E00\u500B\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u5E73\u5747\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},AVERAGEA:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u7B97\u8853\u5E73\u5747\u503C\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u7B97\u8853\u5E73\u5747\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u5E73\u5747\u503C\u6642\u7528\u5230\u7684\u7B2C\u4E00\u500B\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u5E73\u5747\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},BINOM_DIST:{d:"\u8FD4\u56DE\u4E00\u5143\u4E8C\u9805\u5F0F\u5206\u4F48\u7684\u6982\u7387\u3002",a:"\u8FD4\u56DE\u4E00\u5143\u4E8C\u9805\u5F0F\u5206\u4F48\u7684\u6982\u7387\u3002",p:[{name:"number_s",detail:"\u8A66\u9A57\u7684\u6210\u529F\u6B21\u6578\u3002"},{name:"trials",detail:"\u7368\u7ACB\u6AA2\u9A57\u7684\u6B21\u6578\u3002"},{name:"probability_s",detail:"\u4EFB\u4E00\u7D66\u5B9A\u6AA2\u9A57\u7684\u6210\u529F\u6982\u7387\u3002"},{name:"cumulative",detail:"\u662F\u5426\u4F7F\u7528\u4E8C\u9805\u5F0F\u7D2F\u7A4D\u5206\u4F48\u3002"}]},BINOM_INV:{d:"\u8A08\u7B97\u7D2F\u7A4D\u4E8C\u9805\u5F0F\u5206\u4F48\u5927\u65BC\u6216\u7B49\u65BC\u6307\u5B9A\u689D\u4EF6\u7684\u6700\u5C0F\u503C\u3002",a:"\u8A08\u7B97\u7D2F\u7A4D\u4E8C\u9805\u5F0F\u5206\u4F48\u5927\u65BC\u6216\u7B49\u65BC\u6307\u5B9A\u689D\u4EF6\u7684\u6700\u5C0F\u503C\u3002",p:[{name:"trials",detail:"\u8C9D\u52AA\u5229\u8A66\u9A57\u6B21\u6578\u3002"},{name:"probability_s",detail:"\u4EFB\u4E00\u6B21\u7D66\u5B9A\u6AA2\u9A57\u7684\u6210\u529F\u6982\u7387\u3002"},{name:"alpha",detail:"\u671F\u671B\u7684\u81E8\u754C\u6982\u7387\u3002"}]},CONFIDENCE_NORM:{d:"\u8A08\u7B97\u5E38\u6001\u5206\u914D\u7684\u7F6E\u4FE1\u5340\u9593\u7684\u4E00\u534A\u5BEC\u5EA6\u3002",a:"\u8A08\u7B97\u5E38\u6001\u5206\u914D\u7684\u7F6E\u4FE1\u5340\u9593\u7684\u4E00\u534A\u5BEC\u5EA6\u3002",p:[{name:"alpha",detail:`\u7528\u4F86\u8A08\u7B97\u7F6E\u4FE1\u6C34\u51C6\u7684\u986F\u8457\u6027\u6C34\u51C6\u3002 + +\u7F6E\u4FE1\u6C34\u51C6\u7B49\u65BC100*\uFF081 - alpha\uFF09%,\u4EA6\u5373,\u5982\u679C alpha \u70BA0.05,\u5247\u7F6E\u4FE1\u6C34\u51C6\u70BA 95%\u3002`},{name:"standard_dev",detail:"\u6578\u64DA\u5340\u57DF\u7684\u7E3D\u9AD4\u6A19\u6E96\u5DEE\u3002"},{name:"size",detail:"\u6A23\u672C\u7E3D\u91CF\u7684\u5927\u5C0F\u3002"}]},CORREL:{d:"\u8A08\u7B97\u7D66\u5B9A\u6578\u64DA\u96C6\u7684\u76AE\u723E\u905C\u7A4D\u77E9\u76F8\u95DC\u4FC2\u6578 r\u3002",a:"\u8A08\u7B97\u7D66\u5B9A\u6578\u64DA\u96C6\u7684\u76AE\u723E\u905C\u7A4D\u77E9\u76F8\u95DC\u4FC2\u6578 r\u3002",p:[{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},COVARIANCE_P:{d:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u7E3D\u9AD4\u5354\u65B9\u5DEE\u3002",a:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u7E3D\u9AD4\u5354\u65B9\u5DEE\u3002",p:[{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},COVARIANCE_S:{d:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u6A23\u672C\u5354\u65B9\u5DEE\u3002",a:"\u8A08\u7B97\u6578\u64DA\u96C6\u7684\u6A23\u672C\u5354\u65B9\u5DEE\u3002",p:[{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},DEVSQ:{d:"\u57FA\u65BC\u6A23\u672C\u8A08\u7B97\u5176\u504F\u5DEE\u7684\u5E73\u65B9\u548C\u3002",a:"\u57FA\u65BC\u6A23\u672C\u8A08\u7B97\u5176\u504F\u5DEE\u7684\u5E73\u65B9\u548C\u3002",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6A23\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},EXPON_DIST:{d:"\u8FD4\u56DE\u5E36\u6709\u6307\u5B9A Lambda \u548C\u6307\u5B9A\u503C\u7684\u6307\u6578\u5206\u4F48\u51FD\u6578\u7684\u503C\u3002",a:"\u8FD4\u56DE\u5E36\u6709\u6307\u5B9A Lambda \u548C\u6307\u5B9A\u503C\u7684\u6307\u6578\u5206\u4F48\u51FD\u6578\u7684\u503C\u3002",p:[{name:"x",detail:"\u6307\u6578\u5206\u4F48\u51FD\u6578\u7684\u8F38\u5165\u503C\u3002"},{name:"lambda",detail:"\u7528\u65BC\u6307\u5B9A\u6307\u6578\u5206\u4F48\u51FD\u6578\u7684 lambda \u503C\u3002"},{name:"cumulative",detail:"\u662F\u5426\u4F7F\u7528\u6307\u6578\u7D2F\u7A4D\u5206\u4F48\u3002"}]},AVERAGEIF:{d:"\u6839\u64DA\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u7684\u5E73\u5747\u503C\u3002",a:"\u6839\u64DA\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u7684\u5E73\u5747\u503C\u3002",p:[{name:"criteria_range",detail:"\u8981\u5C0D\u5176\u6AA2\u67E5 criterion \u7684\u7BC4\u570D\u3002"},{name:"criterion",detail:`\u8981\u61C9\u7528\u65BCcriteria_range\u7684\u6A21\u5F0F\u6216\u6E2C\u8A66\u689D\u4EF6\u3002 + +\u7B49\u65BC:"\u6587\u5B57" \u6216 1 \u6216 "=\u6587\u5B57" \u6216 "=1" + +\u5927\u65BC:">1" + +\u5927\u65BC\u7B49\u65BC:">=1" + +\u5C0F\u65BC:"<1" + +\u5C0F\u65BC\u7B49\u65BC:"<=1" + +\u4E0D\u7B49\u65BC:"<>1"\u6216"<>\u6587\u5B57"`},{name:"average_range",detail:"[\u53EF\u9078] - \u8981\u8A08\u7B97\u5E73\u5747\u503C\u7684\u7BC4\u570D\u3002\u5982\u679C\u672A\u63D0\u4F9B\u6B64\u53C3\u6578,\u5247\u6539\u7528criteria_range\u4F86\u8A08\u7B97\u5E73\u5747\u503C\u3002"}]},AVERAGEIFS:{d:"\u6839\u64DA\u591A\u9805\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u7684\u5E73\u5747\u503C\u3002",a:"\u6839\u64DA\u591A\u9805\u689D\u4EF6\u8FD4\u56DE\u7BC4\u570D\u7684\u5E73\u5747\u503C\u3002",p:[{name:"average_range",detail:"\u8981\u8A08\u7B97\u5E73\u5747\u503C\u7684\u7BC4\u570D\u3002"},{name:"criteria_range1",detail:"\u8981\u5C0D\u5176\u6AA2\u67E5 criterion1 \u7684\u7BC4\u570D\u3002"},{name:"criterion1",detail:"\u8981\u61C9\u7528\u65BCcriteria_range1\u7684\u6A21\u5F0F\u6216\u6E2C\u8A66\u689D\u4EF6\u3002"},{name:"criteria_range2, criterion2, ...",detail:"[\u53EF\u9078] - \u8981\u6AA2\u67E5\u7684\u5176\u4ED6\u7BC4\u570D\u548C\u689D\u4EF6\u3002"}]},PERMUT:{d:"\u8FD4\u56DE\u53EF\u5F9E\u6578\u4F4D\u5C0D\u8C61\u4E2D\u9078\u64C7\u7684\u7D66\u5B9A\u6578\u76EE\u5C0D\u8C61\u7684\u6392\u5217\u6578\u3002",a:"\u8FD4\u56DE\u53EF\u5F9E\u6578\u4F4D\u5C0D\u8C61\u4E2D\u9078\u64C7\u7684\u7D66\u5B9A\u6578\u76EE\u5C0D\u8C61\u7684\u6392\u5217\u6578\u3002",p:[{name:"number",detail:"\u8868\u793A\u5C0D\u8C61\u500B\u6578\u7684\u6574\u6578\u3002"},{name:"number_chosen",detail:"\u8868\u793A\u6BCF\u500B\u6392\u5217\u4E2D\u5C0D\u8C61\u500B\u6578\u7684\u6574\u6578\u3002"}]},TRIMMEAN:{d:"\u5728\u6392\u9664\u6578\u64DA\u96C6\u9AD8\u4F4E\u5169\u7AEF\u7684\u90E8\u5206\u6578\u64DA\u4E4B\u5F8C\u8A08\u7B97\u6240\u5F97\u7684\u5E73\u5747\u503C\u3002",a:"\u5728\u6392\u9664\u6578\u64DA\u96C6\u9AD8\u4F4E\u5169\u7AEF\u7684\u90E8\u5206\u6578\u64DA\u4E4B\u5F8C\u8A08\u7B97\u6240\u5F97\u7684\u5E73\u5747\u503C\u3002",p:[{name:"\u6578\u64DA",detail:"\u5305\u542B\u76F8\u95DC\u6578\u64DA\u96C6\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"\u6392\u9664\u6BD4\u4F8B",detail:`\u8981\u5F9E\u6578\u64DA\u96C6\u7684\u6975\u503C\u90E8\u5206\u6392\u9664\u7684\u6578\u64DA\u5360\u6578\u64DA\u96C6\u7684\u6BD4\u4F8B\u3002 + +\u6392\u9664\u6BD4\u4F8B\u5FC5\u9808\u5927\u65BC\u7B49\u65BC0\u4E14\u5C0F\u65BC1\u3002`}]},PERCENTILE_EXC:{d:"\u8FD4\u56DE\u6578\u7D44\u7684 K \u767E\u5206\u9EDE\u503C,K \u4ECB\u65BC0\u52301\u4E4B\u9593,\u4E0D\u542B0\u82071\u3002",a:"\u8FD4\u56DE\u6578\u7D44\u7684 K \u767E\u5206\u9EDE\u503C,K \u4ECB\u65BC0\u52301\u4E4B\u9593,\u4E0D\u542B0\u82071\u3002",p:[{name:"array",detail:"\u5B9A\u7FA9\u76F8\u5C0D\u4F4D\u7F6E\u7684\u6578\u7D44\u6216\u6578\u64DA\u5340\u57DF\u3002"},{name:"k",detail:"0 \u5230 1 \u4E4B\u9593\u7684\u767E\u5206\u9EDE\u503C,\u4E0D\u5305\u542B 0 \u548C 1\u3002"}]},PERCENTILE_INC:{d:"\u8FD4\u56DE\u6578\u7D44\u7684 K \u767E\u5206\u9EDE\u503C,K \u4ECB\u65BC 0 \u5230 1 \u4E4B\u9593,\u5305\u542B 0 \u8207 1\u3002",a:"\u8FD4\u56DE\u6578\u7D44\u7684 K \u767E\u5206\u9EDE\u503C,K \u4ECB\u65BC 0 \u5230 1 \u4E4B\u9593,\u5305\u542B 0 \u8207 1\u3002",p:[{name:"array",detail:"\u5B9A\u7FA9\u76F8\u5C0D\u4F4D\u7F6E\u7684\u6578\u7D44\u6216\u6578\u64DA\u5340\u57DF\u3002"},{name:"k",detail:"0 \u5230 1 \u4E4B\u9593\u7684\u767E\u5206\u9EDE\u503C,\u5305\u542B 0 \u548C 1\u3002"}]},PEARSON:{d:"\u56DE\u76AE\u723E\u751F\uFF08Pearson\uFF09\u4E58\u7A4D\u77E9\u76F8\u95DC\u4FC2\u6578 r\u3002",a:"\u56DE\u76AE\u723E\u751F\uFF08Pearson\uFF09\u4E58\u7A4D\u77E9\u76F8\u95DC\u4FC2\u6578 r\u3002",p:[{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},NORM_S_INV:{d:"\u8FD4\u56DE\u6A19\u6E96\u6B63\u614B\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u7684\u53CD\u51FD\u6578\u503C\u3002\u8A72\u5206\u4F48\u7684\u5E73\u5747\u503C\u70BA0,\u6A19\u6E96\u5DEE\u70BA1\u3002",a:"\u8FD4\u56DE\u6A19\u6E96\u6B63\u614B\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u7684\u53CD\u51FD\u6578\u503C\u3002\u8A72\u5206\u4F48\u7684\u5E73\u5747\u503C\u70BA0,\u6A19\u6E96\u5DEE\u70BA1\u3002",p:[{name:"probability",detail:"\u5C0D\u61C9\u65BC\u5E38\u6001\u5206\u914D\u7684\u6982\u7387\u3002"}]},NORM_S_DIST:{d:"\u8FD4\u56DE\u6A19\u6E96\u5E38\u6001\u5206\u914D\u51FD\u6578\uFF08\u8A72\u5206\u4F48\u7684\u5E73\u5747\u503C\u70BA0,\u6A19\u6E96\u5DEE\u70BA1\uFF09\u3002",a:"\u8FD4\u56DE\u6A19\u6E96\u5E38\u6001\u5206\u914D\u51FD\u6578\uFF08\u8A72\u5206\u4F48\u7684\u5E73\u5747\u503C\u70BA0,\u6A19\u6E96\u5DEE\u70BA1\uFF09\u3002",p:[{name:"z",detail:"\u9700\u8981\u8A08\u7B97\u5176\u5206\u4F48\u7684\u6578\u503C\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002 + +\u5982\u679C\u70BATRUE\uFF08\uFF09,\u5247\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},NORM_INV:{d:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6A19\u6E96\u5DEE\u7684\u6B63\u614B\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u7684\u53CD\u51FD\u6578\u503C\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6A19\u6E96\u5DEE\u7684\u6B63\u614B\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u7684\u53CD\u51FD\u6578\u503C\u3002",p:[{name:"probability",detail:"\u5C0D\u61C9\u65BC\u5E38\u6001\u5206\u914D\u7684\u6982\u7387\u3002"},{name:"mean",detail:"\u5206\u4F48\u7684\u7B97\u8853\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"\u5206\u4F48\u7684\u6A19\u6E96\u5DEE\u3002"}]},NORM_DIST:{d:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6A19\u6E96\u5DEE\u7684\u5E38\u6001\u5206\u914D\u51FD\u6578\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u5E73\u5747\u503C\u548C\u6A19\u6E96\u5DEE\u7684\u5E38\u6001\u5206\u914D\u51FD\u6578\u3002",p:[{name:"x",detail:"\u9700\u8981\u8A08\u7B97\u5176\u5206\u4F48\u7684\u6578\u503C\u3002"},{name:"mean",detail:"\u5206\u4F48\u7684\u7B97\u8853\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"\u5206\u4F48\u7684\u6A19\u6E96\u5DEE\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002 + +\u5982\u679C\u70BATRUE\uFF08\uFF09,\u5247\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},NEGBINOM_DIST:{d:"\u8FD4\u56DE\u8CA0\u4E8C\u9805\u5F0F\u5206\u4F48\u3002",a:"\u8FD4\u56DE\u8CA0\u4E8C\u9805\u5F0F\u5206\u4F48\u3002",p:[{name:"number_f",detail:"\u8981\u985E\u6BD4\u7684\u5931\u6557\u6B21\u6578\u3002"},{name:"number_s",detail:"\u8981\u985E\u6BD4\u7684\u6210\u529F\u6B21\u6578\u3002"},{name:"probability_s",detail:"\u4EFB\u4E00\u6B21\u7D66\u5B9A\u6AA2\u9A57\u7684\u6210\u529F\u6982\u7387\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002 + +\u5982\u679C\u70BATRUE\uFF08\uFF09,\u5247\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},MINA:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5C0F\u6578\u503C\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5C0F\u6578\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u6700\u5C0F\u503C\u6642\u6240\u7528\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u6700\u5C0F\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},MIN:{d:"\u8FD4\u56DE\u6578\u503C\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5C0F\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5C0F\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u6700\u5C0F\u503C\u6642\u6240\u7528\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u6700\u5C0F\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},MEDIAN:{d:"\u8FD4\u56DE\u6578\u503C\u6578\u64DA\u96C6\u4E2D\u7684\u4E2D\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u6578\u64DA\u96C6\u4E2D\u7684\u4E2D\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u4E2D\u503C\u6642\u6240\u7528\u7684\u7B2C\u4E00\u500B\u6578\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u4E2D\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},MAXA:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5927\u6578\u503C\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5927\u6578\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u6700\u5927\u503C\u6642\u6240\u7528\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u6700\u5927\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},MAX:{d:"\u8FD4\u56DE\u6578\u503C\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5927\u503C\u3002",a:"\u8FD4\u56DE\u6578\u503C\u6578\u64DA\u96C6\u4E2D\u7684\u6700\u5927\u503C\u3002",p:[{name:"\u503C1",detail:"\u8A08\u7B97\u6700\u5927\u503C\u6642\u6240\u7528\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2",detail:"[\u53EF\u9078] - \u5728\u8A08\u7B97\u6700\u5927\u503C\u6642\u8981\u8003\u616E\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},LOGNORM_INV:{d:"\u8FD4\u56DE x \u7684\u5C0D\u6578\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u7684\u53CD\u51FD\u6578\u503C\u3002",a:"\u8FD4\u56DE x \u7684\u5C0D\u6578\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u7684\u53CD\u51FD\u6578\u503C\u3002",p:[{name:"probability",detail:"\u8207\u5C0D\u6578\u5206\u4F48\u76F8\u95DC\u7684\u6982\u7387,\u4ECB\u65BC0\u82071\u4E4B\u9593\uFF08\u4E0D\u542B0\u82071\uFF09\u3002"},{name:"mean",detail:"ln(x) \u7684\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"ln(x) \u7684\u6A19\u6E96\u5DEE,\u6B63\u6578\u3002"}]},LOGNORM_DIST:{d:"\u8FD4\u56DE x \u7684\u5C0D\u6578\u5206\u4F48\u51FD\u6578\u3002",a:"\u8FD4\u56DE x \u7684\u5C0D\u6578\u5206\u4F48\u51FD\u6578\u3002",p:[{name:"x",detail:"\u7528\u4F86\u8A08\u7B97\u51FD\u6578\u7684\u503C\u3002"},{name:"mean",detail:"ln(x) \u7684\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"ln(x) \u7684\u6A19\u6E96\u5DEE,\u6B63\u6578\u3002"},{name:"cumulative",detail:`\u51B3\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002 + +\u5982\u679C\u70BATRUE\uFF08\uFF09,\u5247\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},Z_TEST:{d:"\u8FD4\u56DE z \u6AA2\u9A57\u7684\u55AE\u5C3E P \u503C\u3002",a:"\u8FD4\u56DE z \u6AA2\u9A57\u7684\u55AE\u5C3E P \u503C\u3002",p:[{name:"array",detail:"\u7528\u4F86\u6AA2\u9A57 x \u7684\u6578\u7D44\u6216\u6578\u64DA\u5340\u57DF\u3002"},{name:"x",detail:"\u8981\u6E2C\u8A66\u7684\u503C\u3002"},{name:"sigma",detail:"[\u53EF\u9078] - \u7E3D\u9AD4\uFF08\u5DF2\u77E5\uFF09\u6A19\u6E96\u5DEE\u3002\u5982\u679C\u7701\u7565,\u5247\u4F7F\u7528\u6A23\u672C\u6A19\u6E96\u5DEE\u3002"}]},PROB:{d:"\u8FD4\u56DE\u5340\u57DF\u4E2D\u7684\u6578\u503C\u843D\u5728\u6307\u5B9A\u5340\u9593\u5167\u7684\u6982\u7387\u3002",a:"\u8FD4\u56DE\u5340\u57DF\u4E2D\u7684\u6578\u503C\u843D\u5728\u6307\u5B9A\u5340\u9593\u5167\u7684\u6982\u7387\u3002",p:[{name:"x_range",detail:"\u5177\u6709\u5404\u81EA\u76F8\u61C9\u6982\u7387\u503C\u7684 x \u6578\u503C\u5340\u57DF\u3002"},{name:"prob_range",detail:"\u8207 x_range \u4E2D\u7684\u503C\u76F8\u95DC\u806F\u7684\u4E00\u7D44\u6982\u7387\u503C\u3002"},{name:"lower_limit",detail:"\u8981\u8A08\u7B97\u5176\u6982\u7387\u7684\u6578\u503C\u4E0B\u754C\u3002"},{name:"upper_limit",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA\u4E0B\u754C] - \u8981\u8A08\u7B97\u5176\u6982\u7387\u7684\u53EF\u9078\u6578\u503C\u4E0A\u754C\u3002 + +\u5982\u679C\u7701\u7565\u4E0A\u754C,PROB\u5247\u8A08\u7B97\u96A8\u6A5F\u9078\u53D6\u76F8\u61C9\u503C\u7684\u6B21\u6578\u6070\u597D\u7B49\u65BC\u4E0B\u754C\u7684\u6982\u7387\u3002`}]},QUARTILE_EXC:{d:"\u57FA\u65BC 0 \u5230 1 \u4E4B\u9593\uFF08\u4E0D\u5305\u62EC 0 \u548C 1\uFF09\u7684\u767E\u5206\u9EDE\u503C\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u56DB\u5206\u4F4D\u6578\u3002",a:"\u57FA\u65BC 0 \u5230 1 \u4E4B\u9593\uFF08\u4E0D\u5305\u62EC 0 \u548C 1\uFF09\u7684\u767E\u5206\u9EDE\u503C\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u56DB\u5206\u4F4D\u6578\u3002",p:[{name:"array",detail:"\u8981\u6C42\u5F97\u56DB\u5206\u4F4D\u6578\u503C\u7684\u6578\u7D44\u6216\u6578\u5B57\u578B\u5132\u5B58\u683C\u5340\u57DF\u3002"},{name:"quart",detail:`\u8981\u8FD4\u56DE\u7B2C\u5E7E\u500B\u56DB\u5206\u4F4D\u503C\u3002 + +1\u8FD4\u56DE\u6578\u64DA\u4E2D\u6700\u9760\u8FD1\u7B2C\u4E00\u500B\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0825%\u6A19\u8A18\uFF09\u3002 + +2\u8FD4\u56DE\u6578\u64DA\u4E2D\u6700\u63A5\u8FD1\u4E2D\u503C\u7684\u503C\uFF0850%\u6A19\u8A18\uFF09\u3002 + +3\u8FD4\u56DE\u6578\u64DA\u4E2D\u6700\u63A5\u8FD1\u7B2C\u4E09\u500B\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0875%\u6A19\u8A18\uFF09\u3002`}]},QUARTILE_INC:{d:"\u6839\u64DA 0 \u5230 1 \u4E4B\u9593\u7684\u767E\u5206\u9EDE\u503C\uFF08\u5305\u542B 0 \u548C 1\uFF09\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u56DB\u5206\u4F4D\u6578\u3002",a:"\u6839\u64DA 0 \u5230 1 \u4E4B\u9593\u7684\u767E\u5206\u9EDE\u503C\uFF08\u5305\u542B 0 \u548C 1\uFF09\u8FD4\u56DE\u6578\u64DA\u96C6\u7684\u56DB\u5206\u4F4D\u6578\u3002",p:[{name:"array",detail:"\u8981\u6C42\u5F97\u56DB\u5206\u4F4D\u6578\u503C\u7684\u6578\u7D44\u6216\u6578\u5B57\u578B\u5132\u5B58\u683C\u5340\u57DF\u3002"},{name:"quart",detail:`\u8981\u8FD4\u56DE\u7B2C\u5E7E\u500B\u56DB\u5206\u4F4D\u503C\u3002 + +0\u8FD4\u56DE\u6578\u64DA\u4E2D\u7684\u6700\u5C0F\u503C\uFF080%\u6A19\u8A18\uFF09\u3002 + +1\u8FD4\u56DE\u6578\u64DA\u4E2D\u6700\u9760\u8FD1\u7B2C\u4E00\u500B\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0825%\u6A19\u8A18\uFF09\u3002 + +2\u8FD4\u56DE\u6578\u64DA\u4E2D\u6700\u63A5\u8FD1\u4E2D\u503C\u7684\u503C\uFF0850%\u6A19\u8A18\uFF09\u3002 + +3\u8FD4\u56DE\u6578\u64DA\u4E2D\u6700\u63A5\u8FD1\u7B2C\u4E09\u500B\u56DB\u5206\u4F4D\u503C\u7684\u503C\uFF0875%\u6A19\u8A18\uFF09\u3002 + +4\u8FD4\u56DE\u6578\u64DA\u4E2D\u7684\u6700\u5927\u503C\uFF08100%\u6A19\u8A18\uFF09\u3002`}]},POISSON_DIST:{d:"\u8FD4\u56DE\u6CCA\u677E\u5206\u5E03\u3002",a:"\u8FD4\u56DE\u6CCA\u677E\u5206\u5E03\u3002",p:[{name:"x",detail:"\u4E8B\u4EF6\u6578\u3002"},{name:"mean",detail:"\u671F\u671B\u503C\u3002\u975E\u8CA0\u6578"},{name:"cumulative",detail:`\u4E00 \u908F\u8F2F\u503C,\u78BA\u5B9A\u6240\u8FD4\u56DE\u7684\u6982\u7387\u5206\u4F48\u7684\u5F62\u5F0F\u3002 + +\u5982\u679C\u70BATRUE\uFF08\uFF09,\u5247\u8FD4\u56DE\u767C\u751F\u7684\u96A8\u6A5F\u4E8B\u4EF6\u6578\u5728\u96F6\uFF08\u542B\u96F6\uFF09\u548Cx\uFF08\u542Bx\uFF09\u4E4B\u9593\u7684\u7D2F\u7A4D\u6CCA\u677E\u6982\u7387\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u767C\u751F\u7684\u4E8B\u4EF6\u6578\u6B63\u597D\u662Fx\u7684\u6CCA\u677E\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},RSQ:{d:"\u8FD4\u56DE\u76AE\u723E\u751F(Pearson)\u4E58\u7A4D\u77E9\u76F8\u95DC\u4FC2\u6578r\u7684\u5E73\u65B9\u3002",a:"\u8FD4\u56DE\u76AE\u723E\u751F(Pearson)\u4E58\u7A4D\u77E9\u76F8\u95DC\u4FC2\u6578r\u7684\u5E73\u65B9\u3002",p:[{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},T_DIST:{d:"\u8FD4\u56DE\u5B78\u751F\u7684\u5DE6\u5C3E t \u5206\u4F48\u3002",a:"\u8FD4\u56DE\u5B78\u751F\u7684\u5DE6\u5C3E t \u5206\u4F48\u3002",p:[{name:"x",detail:"T-\u5206\u4F48\u51FD\u6578\u7684\u8F38\u5165\u3002"},{name:"degrees_freedom",detail:"\u81EA\u7531\u5EA6\u6578\u503C\u3002"},{name:"tails",detail:`\u51B3\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002 + +\u5982\u679Ccumulative\u70BATRUE\uFF08\uFF09,\u5247HYPGEOM.DIST\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\uFF1B + +\u5982\u679C\u70BAFALSE\uFF08\uFF09,\u5247\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u3002`}]},T_DIST_2T:{d:"\u8FD4\u56DE\u5B78\u751F\u7684\u96D9\u5C3E t \u5206\u4F48\u3002",a:"\u8FD4\u56DE\u5B78\u751F\u7684\u96D9\u5C3E t \u5206\u4F48\u3002",p:[{name:"x",detail:"T-\u5206\u4F48\u51FD\u6578\u7684\u8F38\u5165\u3002"},{name:"degrees_freedom",detail:"\u81EA\u7531\u5EA6\u6578\u503C\u3002"}]},T_DIST_RT:{d:"\u8FD4\u56DE\u5B78\u751F\u7684\u53F3\u5C3E t \u5206\u4F48\u3002",a:"\u8FD4\u56DE\u5B78\u751F\u7684\u53F3\u5C3E t \u5206\u4F48\u3002",p:[{name:"x",detail:"T-\u5206\u4F48\u51FD\u6578\u7684\u8F38\u5165\u3002"},{name:"degrees_freedom",detail:"\u81EA\u7531\u5EA6\u6578\u503C\u3002"}]},T_INV:{d:"\u8FD4\u56DE\u5B78\u751F\u7684 t \u5206\u4F48\u7684\u5DE6\u5C3E\u53CD\u51FD\u6578\u3002",a:"\u8FD4\u56DE\u5B78\u751F\u7684 t \u5206\u4F48\u7684\u5DE6\u5C3E\u53CD\u51FD\u6578\u3002",p:[{name:"probability",detail:`\u8207\u5B78\u751F\u7684 t \u5206\u4F48\u76F8\u95DC\u7684\u6982\u7387\u3002 + +\u5FC5\u9808\u5927\u65BC 0 \u4E14\u5C0F\u65BC 1\u3002`},{name:"deg_freedom",detail:`\u81EA\u7531\u5EA6\u6578\u503C\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u53C3\u6578\u4E0D\u662F\u6574\u6578,\u5C07\u622A\u53D6\u5176\u6574\u6578\u90E8\u5206\u3002 + +\u5FC5\u9808\u5927\u65BC\u7B49\u65BC1\u3002`}]},T_INV_2T:{d:"\u8FD4\u56DE\u5B78\u751F t \u5206\u4F48\u7684\u96D9\u5C3E\u53CD\u51FD\u6578\u3002",a:"\u8FD4\u56DE\u5B78\u751F t \u5206\u4F48\u7684\u96D9\u5C3E\u53CD\u51FD\u6578\u3002",p:[{name:"probability",detail:`\u8207\u5B78\u751F\u7684t\u5206\u4F48\u76F8\u95DC\u7684\u6982\u7387\u3002 + +\u5FC5\u9808\u5927\u65BC 0 \u4E14\u5C0F\u65BC 1\u3002`},{name:"deg_freedom",detail:`\u81EA\u7531\u5EA6\u6578\u503C\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u53C3\u6578\u4E0D\u662F\u6574\u6578,\u5C07\u622A\u53D6\u5176\u6574\u6578\u90E8\u5206\u3002 + +\u5FC5\u9808\u5927\u65BC\u7B49\u65BC1\u3002`}]},T_TEST:{d:"\u8FD4\u56DE\u8207t-\u6AA2\u9A57\u76F8\u95DC\u7684\u6982\u7387\u3002\u7528\u65BC\u5224\u65B7\u5169\u500B\u6A23\u672C\u662F\u5426\u53EF\u80FD\u662F\u51FA\u81EA\u5E73\u5747\u503C\u76F8\u540C\u7684\u5169\u500B\u6A23\u672C\u7E3D\u9AD4\u3002",a:"\u8FD4\u56DE\u8207t-\u6AA2\u9A57\u76F8\u95DC\u7684\u6982\u7387\u3002\u7528\u65BC\u5224\u65B7\u5169\u500B\u6A23\u672C\u662F\u5426\u53EF\u80FD\u662F\u51FA\u81EA\u5E73\u5747\u503C\u76F8\u540C\u7684\u5169\u500B\u6A23\u672C\u7E3D\u9AD4\u3002",p:[{name:"array1",detail:"\u5C07\u7528\u65BCt\u6AA2\u9A57\u7684\u7B2C\u4E00\u500B\u6578\u64DA\u6A23\u672C\u6216\u7B2C\u4E00\u7D44\u5132\u5B58\u683C\u3002"},{name:"array2",detail:"\u5C07\u7528\u65BCt\u6AA2\u9A57\u7684\u7B2C\u4E8C\u500B\u6578\u64DA\u6A23\u672C\u6216\u7B2C\u4E8C\u7D44\u5132\u5B58\u683C\u3002"},{name:"tails",detail:`\u6307\u5B9A\u5206\u4F48\u7684\u5C3E\u6578\u3002 + +\u5982\u679C\u70BA 1:\u4F7F\u7528\u55AE\u5C3E\u5206\u4F48\u3002 + +\u5982\u679C\u70BA 2:\u4F7F\u7528\u96D9\u5C3E\u5206\u4F48\u3002`},{name:"type",detail:`\u6307\u5B9At\u6AA2\u9A57\u7684\u985E\u578B\u3002 + +\u5982\u679C\u70BA 1:\u57F7\u884C\u914D\u5C0D\u6AA2\u9A57\u3002 + +\u5982\u679C\u70BA 2:\u57F7\u884C\u96D9\u6A23\u672C\u7B49\u65B9\u5DEE\uFF08\u540C\u65B9\u5DEE\uFF09\u6AA2\u9A57\u3002 + +\u5982\u679C\u70BA 3:\u57F7\u884C\u96D9\u6A23\u672C\u4E0D\u7B49\u65B9\u5DEE\uFF08\u5F02\u65B9\u5DEE\uFF09\u6AA2\u9A57\u3002`}]},F_DIST:{d:"\u7D66\u5B9A\u8F38\u5165\u503C x,\u8A08\u7B97\u5169\u500B\u6578\u64DA\u96C6\u7684\u5DE6\u5C3E F \u6982\u7387\u5206\u4F48\uFF08\u5DEE\u5F02\u7A0B\u5EA6\uFF09\u3002\u6B64\u5206\u4F48\u4E5F\u7A31\u70BA Fisher-Snedecor \u5206\u4F48\u6216Snedecor F \u5206\u4F48\u3002",a:"\u7D66\u5B9A\u8F38\u5165\u503C x",p:[{name:"x",detail:"\u7528\u4F86\u8A08\u7B97\u51FD\u6578\u7684\u503C\u3002"},{name:"degrees_freedom1",detail:"\u5206\u5B50\u81EA\u7531\u5EA6\u3002"},{name:"degrees_freedom2",detail:"\u5206\u6BCD\u81EA\u7531\u5EA6\u3002"},{name:"cumulative",detail:`\u7528\u65BC\u78BA\u5B9A\u51FD\u6578\u5F62\u5F0F\u7684\u908F\u8F2F\u503C\u3002\u9810\u8A2D\u503C\u70BA FALSE\u3002 + +\u5982\u679C\u70BA TRUE\uFF08\uFF09:F.DIST\u5C07\u8FD4\u56DE\u7D2F\u7A4D\u5206\u4F48\u51FD\u6578\u503C\u3002 + +\u5982\u679C\u70BAFALSE\uFF08\uFF09:F.DIST\u5C07\u8FD4\u56DE\u6982\u7387\u5BC6\u5EA6\u51FD\u6578\u503C\u3002`}]},F_DIST_RT:{d:"\u7D66\u5B9A\u8F38\u5165x,\u8A08\u7B97\u5169\u500B\u6578\u64DA\u96C6\u7684\u53F3\u5C3EF\u6982\u7387\u5206\u4F48\uFF08\u5DEE\u5F02\u7A0B\u5EA6\uFF09\u3002\u6B64\u5206\u4F48\u4E5F\u7A31\u70BAFisher-Snedecor\u5206\u4F48\u6216Snedecor F\u5206\u4F48\u3002",a:"\u7D66\u5B9A\u8F38\u5165 x",p:[{name:"x",detail:"\u7528\u4F86\u8A08\u7B97\u51FD\u6578\u7684\u503C\u3002"},{name:"degrees_freedom1",detail:"\u5206\u5B50\u81EA\u7531\u5EA6\u3002"},{name:"degrees_freedom2",detail:"\u5206\u6BCD\u81EA\u7531\u5EA6\u3002"}]},VAR_P:{d:"\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u65B9\u5DEE\u3002",a:"\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u65B9\u5DEE\u3002",p:[{name:"\u503C1",detail:"\u6578\u64DA\u96C6\u4E2D\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, \u2026",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},VAR_S:{d:"\u57FA\u65BC\u6A23\u672C\u8A08\u7B97\u65B9\u5DEE\u3002",a:"\u57FA\u65BC\u6A23\u672C\u8A08\u7B97\u65B9\u5DEE\u3002",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, \u2026",detail:"[\u53EF\u9078] - \u6A23\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},VARA:{d:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u65B9\u5DEE,\u5C06\u6587\u672C\u53D6\u503C\u4E3A0\u3002",a:"\u57FA\u4E8E\u6837\u672C\u8BA1\u7B97\u65B9\u5DEE",p:[{name:"value1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"value2, ...",detail:"[\u53EF\u9078] - \u6A23\u672C\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},VARPA:{d:"\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u65B9\u5DEE,\u5C07\u6587\u5B57\u53D6\u503C\u70BA0\u3002",a:"\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u65B9\u5DEE",p:[{name:"\u503C1",detail:"\u6A23\u672C\u4E2D\u7684\u7B2C\u4E00\u9805\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u6578\u503C\u6216\u7BC4\u570D\u3002"}]},STEYX:{d:"\u8FD4\u56DE\u901A\u904E\u7DDA\u6027\u56DE\u6B78\u6CD5\u9810\u6E2C\u6BCF\u500B x \u7684 y \u503C\u6642\u6240\u7522\u751F\u7684\u6A19\u6E96\u8AA4\u5DEE\u3002",a:"\u8FD4\u56DE\u901A\u904E\u7DDA\u6027\u56DE\u6B78\u6CD5\u9810\u6E2C\u6BCF\u500B x \u7684 y \u503C\u6642\u6240\u7522\u751F\u7684\u6A19\u6E96\u8AA4\u5DEE\u3002",p:[{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},STANDARDIZE:{d:"\u7D66\u5B9A\u5206\u4F48\u7684\u5E73\u5747\u503C\u548C\u6A19\u6E96\u5DEE,\u8A08\u7B97\u4E00\u500B\u96A8\u6A5F\u8B8A\u6578\u6B63\u614B\u5316\u7684\u76F8\u61C9\u503C\u3002",a:"\u7D66\u5B9A\u5206\u4F48\u7684\u5E73\u5747\u503C\u548C\u6A19\u6E96\u5DEE,\u8A08\u7B97\u4E00\u500B\u96A8\u6A5F\u8B8A\u6578\u6B63\u614B\u5316\u7684\u76F8\u61C9\u503C\u3002",p:[{name:"x",detail:"\u8981\u6B63\u614B\u5316\u7684\u96A8\u6A5F\u8B8A\u6578\u503C\u3002"},{name:"mean",detail:"\u5206\u4F48\u7684\u5E73\u5747\u503C\u3002"},{name:"standard_dev",detail:"\u5206\u4F48\u7684\u6A19\u6E96\u5DEE\u3002"}]},SMALL:{d:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7684\u7B2Ck\u500B\u6700\u5C0F\u503C\u3002",a:"\u8FD4\u56DE\u6578\u64DA\u96C6\u4E2D\u7684\u7B2Ck\u500B\u6700\u5C0F\u503C\u3002",p:[{name:"array",detail:"\u9700\u8981\u627E\u5230\u7B2Ck\u500B\u6700\u5C0F\u503C\u7684\u6578\u7D44\u6216\u6578\u503C\u6578\u64DA\u5340\u57DF\u3002"},{name:"k",detail:"\u8981\u8FD4\u56DE\u7684\u6578\u64DA\u5728\u6578\u7D44\u6216\u6578\u64DA\u5340\u57DF\u88CF\u7684\u4F4D\u7F6E\uFF08\u5F9E\u5C0F\u5230\u5927\uFF09\u3002"}]},SLOPE:{d:"\u8A08\u7B97\u901A\u904E\u6578\u64DA\u96C6\u7684\u7DDA\u6027\u56DE\u6B78\u5F97\u5230\u7684\u76F4\u7DDA\u7684\u659C\u7387\u3002",a:"\u8A08\u7B97\u901A\u904E\u6578\u64DA\u96C6\u7684\u7DDA\u6027\u56DE\u6B78\u5F97\u5230\u7684\u76F4\u7DDA\u7684\u659C\u7387\u3002",p:[{name:"\u6578\u64DA_y",detail:"\u4EE3\u8868\u56E0\u8B8A\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"},{name:"\u6578\u64DA_x",detail:"\u4EE3\u8868\u5F15\u6578\u6578\u64DA\u6578\u7D44\u6216\u77E9\u9663\u7684\u7BC4\u570D\u3002"}]},SKEW:{d:"\u8FD4\u56DE\u5206\u4F48\u7684\u504F\u659C\u5EA6\u3002\u504F\u659C\u5EA6\u8868\u660E\u5206\u4F48\u76F8\u5C0D\u65BC\u5E73\u5747\u503C\u7684\u4E0D\u5C0D\u7A31\u7A0B\u5EA6\u3002\u6B63\u504F\u659C\u5EA6\u8868\u660E\u5206\u4F48\u7684\u4E0D\u5C0D\u7A31\u5C3E\u90E8\u8DA8\u5411\u65BC\u66F4\u591A\u6B63\u503C\u3002\u8CA0\u504F\u659C\u5EA6\u8868\u660E\u5206\u4F48\u7684\u4E0D\u5C0D\u7A31\u5C3E\u90E8\u8DA8\u5411\u65BC\u66F4\u591A\u8CA0\u503C\u3002",a:"\u8FD4\u56DE\u5206\u4F48\u7684\u504F\u659C\u5EA6\u3002",p:[{name:"\u503C1",detail:"\u6578\u64DA\u96C6\u4E2D\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},SKEW_P:{d:"\u8FD4\u56DE\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u7684\u5206\u4F48\u4E0D\u5C0D\u7A31\u5EA6:\u8868\u660E\u5206\u4F48\u76F8\u5C0D\u65BC\u5E73\u5747\u503C\u7684\u4E0D\u5C0D\u7A31\u7A0B\u5EA6\u3002",a:"\u8FD4\u56DE\u57FA\u65BC\u6A23\u672C\u7E3D\u9AD4\u7684\u5206\u4F48\u4E0D\u5C0D\u7A31\u5EA6:\u8868\u660E\u5206\u4F48\u76F8\u5C0D\u65BC\u5E73\u5747\u503C\u7684\u4E0D\u5C0D\u7A31\u7A0B\u5EA6\u3002",p:[{name:"\u503C1",detail:"\u6578\u64DA\u96C6\u4E2D\u7684\u7B2C\u4E00\u500B\u503C\u6216\u7BC4\u570D\u3002"},{name:"\u503C2, ...",detail:"[\u53EF\u9078] - \u6578\u64DA\u96C6\u4E2D\u5305\u542B\u7684\u5176\u4ED6\u503C\u6216\u7BC4\u570D\u3002"}]},VLOOKUP:{d:"\u7E31\u5411\u67E5\u627E\u3002\u5728\u7BC4\u570D\u7684\u7B2C\u4E00\u5217\u4E2D\u81EA\u4E0A\u800C\u4E0B\u8490\u7D22\u67D0\u500B\u9375\u503C,\u4E26\u8FD4\u56DE\u6240\u627E\u5230\u7684\u884C\u4E2D\u6307\u5B9A\u5132\u5B58\u683C\u7684\u503C\u3002",a:"\u7E31\u5411\u67E5\u627E\u3002\u5728\u7BC4\u570D\u7684\u7B2C\u4E00\u5217\u4E2D\u81EA\u4E0A\u800C\u4E0B\u8490\u7D22\u67D0\u500B\u9375\u503C",p:[{name:"\u8490\u7D22\u9375\u503C",detail:'\u8981\u8490\u7D22\u7684\u503C,\u5982 42\u3001"Cats" \u6216 I24\u3002'},{name:"\u7BC4\u570D",detail:"\u8981\u9032\u884C\u8490\u7D22\u7684\u7BC4\u570D\u3002VLOOKUP \u5C07\u5728\u8A72\u7BC4\u570D\u7684\u7B2C\u4E00\u5217\u4E2D\u8490\u7D22\u8490\u7D22\u9375\u503C\u4E2D\u6307\u5B9A\u7684\u9375\u503C\u3002"},{name:"\u7D22\u5F15",detail:`\u8981\u8FD4\u56DE\u7684\u503C\u7684\u5217\u7D22\u5F15,\u7BC4\u570D\u4E2D\u7684\u7B2C\u4E00\u5217\u7DE8\u865F\u70BA1\u3002 + +\u5982\u679C\u7D22\u5F15\u4E0D\u662F\u4ECB\u65BC1\u548C\u7BC4\u570D\u4E2D\u7684\u5217\u6578\u4E4B\u9593,\u5C07\u8FD4\u56DE#VALUE\uFF01\u3002`},{name:"\u5DF2\u6392\u5E8F",detail:`[\u9810\u8A2D\u503C\u70BATRUE()] -\u8A13\u793A\u8981\u8490\u7D22\u7684\u5217\uFF08\u6307\u5B9A\u7BC4\u570D\u7684\u7B2C\u4E00\u5217\uFF09\u662F\u5426\u5DF2\u6392\u5E8F\u3002\u5927\u591A\u6578\u60C5\u51B5\u4E0B,\u5EFA\u8B70\u8A2D\u70BAFALSE\uFF08\uFF09\u3002 + +\u5EFA\u8B70\u5C07\u5DF2\u6392\u5E8F\u8A2D\u70BAFALSE\u3002\u5982\u679C\u8A2D\u70BAFALSE,\u5C07\u8FD4\u56DE\u5B8C\u5168\u5339\u914D\u9805\u3002\u5982\u679C\u5B58\u5728\u591A\u500B\u5339\u914D\u503C,\u5C07\u8FD4\u56DE\u627E\u5230\u7684\u7B2C\u4E00\u500B\u503C\u5C0D\u61C9\u7684\u5132\u5B58\u683C\u7684\u5167\u5BB9,\u5982\u679C\u627E\u4E0D\u5230\u5339\u914D\u503C,\u5247\u8FD4\u56DE#N/A\u3002 + +\u5982\u679C\u5C07\u5DF2\u6392\u5E8F\u8A2D\u70BATRUE\u6216\u7701\u7565,\u5C07\u8FD4\u56DE\uFF08\u5C0F\u65BC\u6216\u7B49\u65BC\u8490\u7D22\u9375\u503C\u7684\uFF09\u6700\u63A5\u8FD1\u7684\u5339\u914D\u9805\u3002\u5982\u679C\u8490\u7D22\u7684\u5217\u4E2D\u6240\u6709\u7684\u503C\u5747\u5927\u65BC\u8490\u7D22\u9375\u503C,\u5247\u8FD4\u56DE#N/A\u3002`}]},HLOOKUP:{d:"\u6A6B\u5411\u67E5\u627E\u3002\u5728\u7BC4\u570D\u7684\u7B2C\u4E00\u884C\u4E2D\u8490\u7D22\u67D0\u500B\u9375\u503C,\u4E26\u8FD4\u56DE\u6240\u627E\u5230\u7684\u5217\u4E2D\u6307\u5B9A\u5132\u5B58\u683C\u7684\u503C\u3002",a:"\u6A6B\u5411\u67E5\u627E\u3002\u5728\u7BC4\u570D\u7684\u7B2C\u4E00\u884C\u4E2D\u8490\u7D22\u67D0\u500B\u9375\u503C",p:[{name:"\u8490\u7D22\u9375\u503C",detail:'\u8981\u8490\u7D22\u7684\u503C\u3002\u4F8B\u5982,42\u3001"Cats"\u6216I24\u3002'},{name:"\u7BC4\u570D",detail:"\u8981\u9032\u884C\u8490\u7D22\u7684\u7BC4\u570D\u3002\u5C07\u5728\u8A72\u7BC4\u570D\u7684\u7B2C\u4E00\u884C\u4E2D\u8490\u7D22\u5728\u8490\u7D22\u9375\u503C\u4E2D\u6307\u5B9A\u7684\u9375\u503C\u3002"},{name:"\u7D22\u5F15",detail:`\u8981\u8FD4\u56DE\u7684\u503C\u7684\u884C\u7D22\u5F15,\u7BC4\u570D\u4E2D\u7684\u7B2C\u4E00\u884C\u7DE8\u865F\u70BA1\u3002 + +\u5982\u679C\u7D22\u5F15\u4E0D\u662F\u4ECB\u65BC1\u548C\u7BC4\u570D\u4E2D\u7684\u884C\u6578\u4E4B\u9593,\u5C07\u8FD4\u56DE#VALUE\uFF01\u3002`},{name:"\u5DF2\u6392\u5E8F",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE()] - \u8A13\u793A\u8981\u8490\u7D22\u7684\u884C\uFF08\u6307\u5B9A\u7BC4\u570D\u7684\u7B2C\u4E00\u884C\uFF09\u662F\u5426\u5DF2\u6392\u5E8F\u3002 + +\u5982\u679C\u5C07\u5DF2\u6392\u5E8F\u8A2D\u70BATRUE\u6216\u7701\u7565,\u5C07\u8FD4\u56DE\u6700\u63A5\u8FD1\u7684\u5339\u914D\u503C\uFF08\u5C0F\u65BC\u6216\u7B49\u65BC\u8490\u7D22\u9375\u503C\uFF09\u3002\u5982\u679C\u5728\u8490\u7D22\u7684\u884C\u4E2D\u6240\u6709\u7684\u503C\u5747\u5927\u65BC\u8490\u7D22\u9375\u503C,\u5247\u8FD4\u56DE#N/A\u3002 + +\u5982\u679C\u5C07\u5DF2\u6392\u5E8F\u8A2D\u70BATRUE\u6216\u5C07\u5176\u7701\u7565,\u800C\u7BC4\u570D\u7684\u9996\u884C\u4E26\u975E\u8655\u65BC\u5DF2\u6392\u5E8F\u72C0\u614B,\u5247\u8FD4\u56DE\u503C\u53EF\u80FD\u6703\u662F\u932F\u8AA4\u7684\u3002 + +\u5982\u679C\u5C07\u5DF2\u6392\u5E8F\u8A2D\u70BAFALSE,\u5247\u50C5\u8FD4\u56DE\u5B8C\u5168\u5339\u914D\u3002\u5982\u679C\u5B58\u5728\u591A\u500B\u5339\u914D\u503C,\u5C07\u8FD4\u56DE\u8207\u627E\u5230\u7684\u7B2C\u4E00\u500B\u503C\u5C0D\u61C9\u7684\u5132\u5B58\u683C\u7684\u5167\u5BB9,\u5982\u679C\u627E\u4E0D\u5230\u5339\u914D\u503C\u5247\u8FD4\u56DE#N/A\u3002`}]},LOOKUP:{d:"\u5728\u884C\u6216\u5217\u4E2D\u67E5\u627E\u76F8\u61C9\u9375,\u4E26\u5C07\u76F8\u61C9\u5132\u5B58\u683C\u7684\u503C\u8FD4\u56DE\u5230\u8207\u8490\u7D22\u884C\u6216\u5217\u6240\u5728\u4F4D\u7F6E\u76F8\u540C\u7684\u7D50\u679C\u7BC4\u570D\u4E2D\u3002",a:"\u5728\u884C\u6216\u5217\u4E2D\u67E5\u627E\u76F8\u61C9\u9375",p:[{name:"\u8490\u7D22\u9375\u503C",detail:'\u8981\u5728\u884C\u6216\u5217\u4E2D\u8490\u7D22\u7684\u503C\u3002\u4F8B\u5982,42\u3001"Cats" \u6216 I24\u3002'},{name:"\u641C\u7D22\u7BC4\u570D | \u641C\u7D22\u7D50\u679C\u6578\u7D44",detail:"\u4F7F\u7528LOOKUP\u7684\u4E00\u7A2E\u65B9\u6CD5\u662F\u7D66\u5B9A\u55AE\u884C\u6216\u55AE\u5217\u5F62\u5F0F\u7684\u641C\u7D22\u7BC4\u570D\u9032\u884C\u8490\u7D22\u67E5\u627E,\u9019\u7A2E\u7BA1\u9053\u8981\u7528\u5230\u53E6\u4E00\u500B\u53C3\u6578\u7D50\u679C\u7BC4\u570D\u3002\u53E6\u4E00\u7A2E\u7BA1\u9053\u662F\u5C07\u9019\u5169\u500B\u53C3\u6578\u5408\u4F75\u70BA\u4E00\u500B\u641C\u7D22\u7D50\u679C\u6578\u7D44,\u5176\u4E2D\u7B2C\u4E00\u884C\u6216\u7B2C\u4E00\u5217\u7528\u65BC\u8490\u7D22,\u4E26\u5C07\u8FD4\u56DE\u503C\u653E\u5728\u8A72\u6578\u7D44\u7684\u6700\u5F8C\u4E00\u884C\u6216\u6700\u5F8C\u4E00\u5217\u4E2D\u3002"},{name:"\u7D50\u679C\u7BC4\u570D",detail:"[ \u53EF\u9078 ] - \u7528\u65BC\u5B58\u653E\u8FD4\u56DE\u7D50\u679C\u7684\u7BC4\u570D\u3002\u8FD4\u56DE\u503C\u5C0D\u61C9\u65BC\u5728\u641C\u7D22\u7BC4\u570D\u4E2D\u627E\u5230\u8490\u7D22\u9375\u503C\u7684\u4F4D\u7F6E\u3002\u6B64\u7BC4\u570D\u5FC5\u9808\u50C5\u70BA\u55AE\u884C\u6216\u55AE\u5217,\u800C\u5982\u679C\u60A8\u4F7F\u7528\u7684\u662F\u641C\u7D22\u7D50\u679C\u6578\u7D44\u7BA1\u9053,\u5247\u4E0D\u61C9\u63D0\u4F9B\u6B64\u53C3\u6578\u3002"}]},ADDRESS:{d:"\u8FD4\u56DE\u5B57\u4E32\u5F62\u5F0F\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002",a:"\u8FD4\u56DE\u5B57\u4E32\u5F62\u5F0F\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002",p:[{name:"row_num",detail:"\u4E00\u500B\u6578\u503C,\u6307\u5B9A\u8981\u5728\u5132\u5B58\u683C\u5F15\u7528\u4E2D\u4F7F\u7528\u7684\u884C\u865F\u3002"},{name:"column_num",detail:"\u4E00\u500B\u6578\u503C,\u6307\u5B9A\u8981\u5728\u5132\u5B58\u683C\u5F15\u7528\u4E2D\u4F7F\u7528\u7684\u5217\u865F\uFF08\u800C\u975E\u540D\u7A31\uFF09\u3002A\u5217\u7684\u7DE8\u865F\u70BA1\u3002"},{name:"abs_num",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA1] - \u4E00\u500B\u6578\u503C,\u6307\u5B9A\u8981\u8FD4\u56DE\u7684\u53C3\u8003\u985E\u578B\u3002 + +1\u8868\u793A\u884C\u5217\u5747\u63A1\u7528\u7D55\u5C0D\u503C\uFF08\u4F8B\u5982$A$1\uFF09\uFF1B + +2\u8868\u793A\u63A1\u7528\u7D55\u5C0D\u884C\u865F,\u76F8\u5C0D\u5217\u6A19\uFF08\u4F8B\u5982A$1\uFF09\uFF1B + +3\u8868\u793A\u63A1\u7528\u76F8\u5C0D\u884C\u865F,\u7D55\u5C0D\u5217\u6A19\uFF08\u4F8B\u5982$A1\uFF09\uFF1B + +4\u8868\u793A\u884C\u5217\u5747\u63A1\u7528\u76F8\u5C0D\u503C\uFF08\u4F8B\u5982A1\uFF09\u3002`},{name:"A1",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u5E03\u6797\u503C,\u8A13\u793A\u63A1\u7528A1\u6A19\u8A18\u5F62\u5F0F\uFF08TRUE\uFF09\u9084\u662FR1C1\u6A19\u8A18\u5F62\u5F0F\uFF08FALSE\uFF09\u3002"},{name:"sheet_text",detail:"[\u53EF\u9078 - \u9ED8\u8A8D\u9810\u8A2D] - \u7528\u65BC\u6307\u5B9A\u5730\u5740\u6240\u6307\u5411\u7684\u5DE5\u4F5C\u8868\u540D\u7A31\u3002"}]},INDIRECT:{d:"\u8FD4\u56DE\u4EE5\u5B57\u4E32\u6307\u5B9A\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002",a:"\u8FD4\u56DE\u4EE5\u5B57\u4E32\u6307\u5B9A\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002",p:[{name:"ref_text",detail:"\u4EE5\u5E36\u5F15\u865F\u7684\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002"},{name:"A1",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u5E03\u6797\u503C,\u8A13\u793A\u63A1\u7528A1\u6A19\u8A18\u5F62\u5F0F\uFF08TRUE\uFF09\u9084\u662FR1C1\u6A19\u8A18\u5F62\u5F0F\uFF08FALSE\uFF09\u3002"}]},ROW:{d:"\u8FD4\u56DE\u6307\u5B9A\u5132\u5B58\u683C\u7684\u884C\u865F",a:"\u8FD4\u56DE\u6307\u5B9A\u5132\u5B58\u683C\u7684\u884C\u865F",p:[{name:"reference",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA\u6B64\u516C\u5F0F\u6240\u5728\u7684\u5132\u5B58\u683C] - \u8981\u8FD4\u56DE\u5176\u884C\u865F\u7684\u5132\u5B58\u683C\u3002 + +\u5982\u679C\u5132\u5B58\u683C\u5F15\u7528\u6307\u5411\u7684\u7BC4\u570D\u5176\u5BEC\u5EA6\u5927\u65BC\u4E00\u500B\u5132\u5B58\u683C,\u800C\u6B64\u516C\u5F0F\u4E0D\u662F\u7528\u4F5C\u6578\u7D44\u516C\u5F0F\u7684,\u9019\u6642\u6703\u50C5\u8FD4\u56DE\u5132\u5B58\u683C\u5F15\u7528\u4E2D\u9996\u884C\u7684\u7DE8\u865F\u503C\u3002`}]},ROWS:{d:"\u8FD4\u56DE\u6307\u5B9A\u6578\u7D44\u6216\u7BC4\u570D\u4E2D\u7684\u884C\u6578\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6578\u7D44\u6216\u7BC4\u570D\u4E2D\u7684\u884C\u6578\u3002",p:[{name:"array",detail:"\u8981\u8FD4\u56DE\u5176\u884C\u6578\u7684\u7BC4\u570D\u3002"}]},COLUMN:{d:"\u6309\u7167 `A=1` \u7684\u898F\u5247\u8FD4\u56DE\u6307\u5B9A\u5132\u5B58\u683C\u7684\u5217\u865F\u3002",a:"\u6309\u7167 `A=1` \u7684\u898F\u5247\u8FD4\u56DE\u6307\u5B9A\u5132\u5B58\u683C\u7684\u5217\u865F\u3002",p:[{name:"reference",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA\u5305\u542B\u6B64\u516C\u5F0F\u7684\u5132\u5B58\u683C] - \u8981\u8FD4\u56DE\u5176\u5217\u865F\u7684\u5132\u5B58\u683C\u3002A\u5217\u5C0D\u61C9\u7684\u7DE8\u865F\u70BA1\u3002 + +\u5982\u679C\u5132\u5B58\u683C\u5F15\u7528\u662F\u5BEC\u5EA6\u8D85\u904E\u4E00\u500B\u5132\u5B58\u683C\u7684\u7BC4\u570D,\u800C\u6B64\u516C\u5F0F\u4E0D\u662F\u4F5C\u70BA\u6578\u7D44\u516C\u5F0F\u4F86\u4F7F\u7528\u7684,\u56D9\u6B64\u5C07\u8FD4\u56DE\u5132\u5B58\u683C\u5F15\u7528\u4E2D\u7684\u7B2C\u4E00\u5217\u7684\u4F4D\u7F6E\u3002`}]},COLUMNS:{d:"\u8FD4\u56DE\u6307\u5B9A\u6578\u7D44\u6216\u7BC4\u570D\u4E2D\u7684\u5217\u6578\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6578\u7D44\u6216\u7BC4\u570D\u4E2D\u7684\u5217\u6578\u3002",p:[{name:"array",detail:"\u8981\u8FD4\u56DE\u5176\u5217\u6578\u7684\u7BC4\u570D\u3002"}]},OFFSET:{d:"\u7D66\u5B9A\u67D0\u7BC4\u570D\u7684\u8D77\u59CB\u5132\u5B58\u683C\u5F15\u7528\u4EE5\u53CA\u8A72\u7BC4\u570D\u6DB5\u84CB\u7684\u884C\u5217\u6578\u91CF,\u8FD4\u56DE\u8A72\u7BC4\u570D\u7684\u5F15\u7528\u3002",a:"\u7D66\u5B9A\u67D0\u7BC4\u570D\u7684\u8D77\u59CB\u5132\u5B58\u683C\u5F15\u7528\u4EE5\u53CA\u8A72\u7BC4\u570D\u6DB5\u84CB\u7684\u884C\u5217\u6578\u91CF,\u8FD4\u56DE\u8A72\u7BC4\u570D\u7684\u5F15\u7528\u3002",p:[{name:"reference",detail:"\u7528\u65BC\u8A08\u7B97\u884C\u5217\u504F\u79FB\u91CF\u7684\u8D77\u9EDE\u3002"},{name:"rows",detail:`\u8981\u504F\u79FB\u7684\u884C\u6578\u3002 + +\u884C\u504F\u79FB\u91CF\u5FC5\u9808\u662F\u6574\u6578,\u4F46\u4E5F\u53EF\u4EE5\u662F\u8CA0\u6578\u3002\u5982\u679C\u63D0\u4F9B\u7684\u53C3\u6578\u5E36\u6709\u5C0F\u6578,\u5C0F\u6578\u90E8\u5206\u5C07\u88AB\u622A\u53BB\u3002`},{name:"cols",detail:`\u8981\u504F\u79FB\u7684\u5217\u6578\u3002 + +\u5217\u504F\u79FB\u91CF\u5FC5\u9808\u662F\u6574\u6578,\u4F46\u4E5F\u53EF\u4EE5\u662F\u8CA0\u6578\u3002\u5982\u679C\u63D0\u4F9B\u7684\u53C3\u6578\u5E36\u6709\u5C0F\u6578,\u5C0F\u6578\u90E8\u5206\u5C07\u88AB\u622A\u53BB\u3002`},{name:"height",detail:"[\u53EF\u9078] - \u8981\u5F9E\u504F\u79FB\u76EE\u6A19\u958B\u59CB\u8FD4\u56DE\u7684\u7BC4\u570D\u7684\u9AD8\u5EA6\u3002"},{name:"width",detail:"[\u53EF\u9078] - \u8981\u5F9E\u504F\u79FB\u76EE\u6A19\u958B\u59CB\u8FD4\u56DE\u7684\u7BC4\u570D\u7684\u5BEC\u5EA6\u3002"}]},MATCH:{d:"\u5728\u5132\u5B58\u683C\u4E2D\u8490\u7D22\u6307\u5B9A\u9805,\u7136\u5F8C\u8FD4\u56DE\u8A72\u9805\u5728\u5132\u5B58\u683C\u5340\u57DF\u4E2D\u7684\u76F8\u5C0D\u4F4D\u7F6E\u3002",a:"\u5728\u5132\u5B58\u683C\u4E2D\u8490\u7D22\u6307\u5B9A\u9805,\u7136\u5F8C\u8FD4\u56DE\u8A72\u9805\u5728\u5132\u5B58\u683C\u5340\u57DF\u4E2D\u7684\u76F8\u5C0D\u4F4D\u7F6E\u3002",p:[{name:"lookup_value",detail:"\u8981\u5728 lookup_array \u4E2D\u5339\u914D\u7684\u503C\u3002"},{name:"lookup_array",detail:`\u8981\u8490\u7D22\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002 + +\u5982\u679C\u6240\u7528\u7684\u7BC4\u570D\u7684\u9AD8\u5EA6\u548C\u5BEC\u5EA6\u5747\u5927\u65BC1,MATCH\u5C07\u8FD4\u56DE#N/A\uFF01\u3002`},{name:"match_type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA1] - \u8981\u63A1\u7528\u7684\u8490\u7D22\u7BA1\u9053\u3002 + +1\u70BA\u9ED8\u8A8D\u985E\u578B,\u6B64\u6642MATCH\u6703\u5047\u8A2D\u7BC4\u570D\u5DF2\u6309\u6607\u51AA\u6392\u5E8F,\u4E26\u8FD4\u56DE\u5C0F\u65BC\u7B49\u65BC\u8490\u7D22\u9375\u503C\u7684\u6700\u5927\u503C\u3002 + +0\u8868\u793A\u5B8C\u5168\u5339\u914D,\u5728\u7BC4\u570D\u672A\u6392\u5E8F\u7684\u60C5\u51B5\u4E0B\u9700\u8981\u4F7F\u7528\u6B64\u7BA1\u9053\u3002 + +-1\u8B93MATCH\u5047\u8A2D\u7BC4\u570D\u662F\u6309\u964D\u5E8F\u6392\u5E8F\u7684,\u4E26\u8FD4\u56DE\u5927\u65BC\u7B49\u65BC\u8490\u7D22\u9375\u503C\u7684\u6700\u5C0F\u503C\u3002`}]},INDEX:{d:"\u8FD4\u56DE\u8868\u683C\u6216\u4E2D\u7684\u5143\u7D20\u503C,\u6B64\u5143\u7D20\u7531\u884C\u865F\u548C\u5217\u865F\u7684\u7D22\u5F15\u503C\u7D66\u5B9A\u3002",a:"\u8FD4\u56DE\u8868\u683C\u6216\u4E2D\u7684\u5143\u7D20\u503C,\u6B64\u5143\u7D20\u7531\u884C\u865F\u548C\u5217\u865F\u7684\u7D22\u5F15\u503C\u7D66\u5B9A\u3002",p:[{name:"array",detail:"\u5132\u5B58\u683C\u5340\u57DF\u6216\u6578\u7D44\u5E38\u6578\u3002"},{name:"row_num",detail:"\u9078\u64C7\u6578\u7D44\u4E2D\u7684\u67D0\u884C,\u51FD\u6578\u5F9E\u8A72\u884C\u8FD4\u56DE\u6578\u503C\u3002"},{name:"column_num",detail:"\u9078\u64C7\u6578\u7D44\u4E2D\u7684\u67D0\u5217,\u51FD\u6578\u5F9E\u8A72\u5217\u8FD4\u56DE\u6578\u503C\u3002"}]},GETPIVOTDATA:{d:"\u5F9E\u8207\u6307\u5B9A\u884C\u548C\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6578\u64DA\u900F\u8996\u9336\u4E2D\u9078\u53D6\u532F\u7E3D\u503C\u3002",a:"\u5F9E\u8207\u6307\u5B9A\u884C\u548C\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6578\u64DA\u900F\u8996\u9336\u4E2D\u9078\u53D6\u532F\u7E3D\u503C\u3002",p:[{name:"data_field",detail:`\u60A8\u60F3\u5F9E\u6578\u64DA\u900F\u8996\u9336\u4E2D\u7372\u53D6\u5176\u6578\u64DA\u7684\u503C\u540D\u7A31\u3002 +\u503C\u540D\u7A31\u5FC5\u9808\u62EC\u5728\u5F15\u865F\u4E2D\u6216\u662F\u6307\u5411\u5305\u542B\u76F8\u95DC\u6587\u5B57\u7684\u4EFB\u4F55\u5132\u5B58\u683C\u7684\u5F15\u7528\u3002 +\u5982\u679C\u6709\u591A\u500B\u503C\u6B04\u4F4D,\u5247\u5FC5\u9808\u4F7F\u7528\u6578\u64DA\u900F\u8996\u9336\u4E2D\u986F\u793A\u7684\u78BA\u5207\u540D\u7A31\uFF08\u5982"\u92B7\u552E\u7E3D\u984D"\uFF09\u3002`},{name:"pivot_table",detail:"\u76EE\u6A19\u6578\u64DA\u900F\u8996\u9336\u4E2D\u7684\u4EFB\u4F55\u5132\u5B58\u683C\u7684\u5F15\u7528\uFF08\u63A8\u85A6\u4F4D\u65BC\u9802\u89D2\u7684\u5132\u5B58\u683C\uFF09\u3002"},{name:"field1",detail:"[\u53EF\u9078] - \u6E90\u6578\u64DA\u96C6\uFF08\u4E0D\u662F\u6578\u64DA\u900F\u8996\u9336\uFF09\u4E2D\u5217\u7684\u540D\u7A31\u3002"},{name:"item1",detail:"[\u53EF\u9078] - \u6578\u64DA\u900F\u8996\u9336\u4E2D\u986F\u793A\u7684\u8207\u60A8\u8981\u6AA2\u7D22\u7684\u6B04\u4F4D\u540D\u7A311\u76F8\u5C0D\u61C9\u7684\u884C\u6216\u5217\u7684\u540D\u7A31\u3002"}]},CHOOSE:{d:"\u57FA\u65BC\u7D22\u5F15\u8FD4\u56DE\u9078\u9805\u6E05\u55AE\u4E2D\u7684\u5143\u7D20\u3002",a:"\u57FA\u65BC\u7D22\u5F15\u8FD4\u56DE\u9078\u9805\u6E05\u55AE\u4E2D\u7684\u5143\u7D20\u3002",p:[{name:"index_num",detail:`\u6307\u5B9A\u8981\u8FD4\u56DE\u54EA\u4E00\u9805\u3002 + +\u5982\u679C\u7D22\u5F15\u70BA\u96F6\u3001\u8CA0\u503C\u6216\u5927\u65BC\u63D0\u4F9B\u7684\u9078\u64C7\u6578\u91CF,\u5C07\u8FD4\u56DE#VALUE\uFF01\u932F\u8AA4\u3002`},{name:"value1",detail:"\u4E00\u9805\u53EF\u80FD\u7684\u8FD4\u56DE\u503C\u3002\u5FC5\u9808\u63D0\u4F9B\u3002\u53EF\u4EE5\u662F\u5132\u5B58\u683C\u5F15\u7528\u6216\u55AE\u7368\u7684\u503C\u3002"},{name:"value2",detail:"[\u53EF\u9078] - \u5176\u4ED6\u53EF\u4EE5\u9078\u64C7\u7684\u503C\u3002\u9078\u64C7"}]},HYPERLINK:{d:"\u5728\u5132\u5B58\u683C\u5167\u5275\u5EFA\u4E00\u500B\u8D85\u9023\u7D50\u3002",a:"\u5728\u5132\u5B58\u683C\u5167\u5275\u5EFA\u4E00\u500B\u8D85\u9023\u7D50\u3002",p:[{name:"\u7DB2\u5740",detail:`\u4EE5\u5F15\u865F\u62EC\u4F4F\u7684\u9023\u7D50\u4F4D\u7F6E\u7684\u5B8C\u6574\u7DB2\u5740,\u6216\u5C0D\u5305\u542B\u9019\u7A2E\u7DB2\u5740\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3002 + +\u50C5\u5141\u8A31\u67D0\u4E9B\u9023\u7D50\u985E\u578B\u3002\u5176\u4E2D\u5305\u62EC:http://\u3001https://\u3001mailto:\u3001aim:\u3001ftp://\u3001gopher://\u3001telnet://\u548Cnews://,\u660E\u78BA\u7981\u7528\u4F7F\u7528\u5176\u4ED6\u5354\u5B9A\u3002\u5982\u679C\u6307\u5B9A\u7684\u662F\u5176\u4ED6\u5354\u5B9A,\u5C07\u6703\u5728\u5132\u5B58\u683C\u4E2D\u986F\u793A\u9023\u7D50\u6A19\u7C64,\u4F46\u8A72\u6A19\u7C64\u4E0D\u6703\u4EE5\u9023\u7D50\u5F62\u5F0F\u5448\u73FE\u3002 + +\u5982\u679C\u672A\u6307\u5B9A\u5354\u5B9A,\u5247\u5047\u8A2D\u4F7F\u7528http://,\u4E26\u5C07\u5176\u4F5C\u70BA\u7DB2\u5740\u7684\u9996\u78BC\u3002`},{name:"\u9023\u7D50\u6A19\u7C64",detail:`[\u53EF\u9078-\u9ED8\u8A8D\u70BA\u7DB2\u5740] - \u8981\u5728\u5132\u5B58\u683C\u4E2D\u4F5C\u70BA\u9023\u7D50\u986F\u793A\u7684\u6587\u5B57\uFF08\u7528\u5F15\u865F\u62EC\u8D77\u4F86\u7684\uFF09,\u6216\u8005\u6307\u5411\u5305\u542B\u9019\u7A2E\u6A19\u7C64\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3002 + +\u5982\u679C\u9023\u7D50\u6A19\u7C64\u662F\u6307\u5411\u67D0\u500B\u7A7A\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5982\u679C\u7DB2\u5740\u6709\u6548,\u5C31\u5C07\u5176\u4F5C\u70BA\u9023\u7D50\u986F\u793A,\u5426\u5247\u4F5C\u70BA\u7D14\u6587\u5B57\u986F\u793A\u3002 + +\u5982\u679C\u9023\u7D50\u6A19\u7C64\u70BA\u7A7A\u5B57\u4E32\u5E38\u6578\uFF08""\uFF09,\u6240\u5728\u5132\u5B58\u683C\u986F\u793A\u7684\u5167\u5BB9\u5C07\u70BA\u7A7A\u767D,\u4F46\u901A\u904E\u9EDE\u64CA\u8A72\u5132\u5B58\u683C\u6216\u8F49\u5165\u8A72\u5132\u5B58\u683C\u4ECD\u7136\u53EF\u4EE5\u8A2A\u554F\u9023\u7D50\u3002`}]},TIME:{d:"\u5C07\u7D66\u5B9A\u7684\u5C0F\u6642\u3001\u5206\u9418\u548C\u79D2\u8F49\u63DB\u70BA\u6642\u9593\u3002",a:"\u5C07\u7D66\u5B9A\u7684\u5C0F\u6642\u3001\u5206\u9418\u548C\u79D2\u8F49\u63DB\u70BA\u6642\u9593\u3002",p:[{name:"\u5C0F\u6642",detail:`0\uFF08\u96F6\uFF09\u5230 32767 \u4E4B\u9593\u7684\u6578\u4F4D,\u4EE3\u8868\u5C0F\u6642\u3002 + +\u4EFB\u4F55\u5927\u65BC 23 \u7684\u503C\u90FD\u6703\u9664\u4EE524,\u9918\u6578\u5C07\u4F5C\u70BA\u5C0F\u6642\u503C\u3002`},{name:"\u5206\u9418",detail:`0\uFF08\u96F6\uFF09\u5230 32767 \u4E4B\u9593\u7684\u6578\u4F4D,\u4EE3\u8868\u5206\u9418\u3002 + +\u4EFB\u4F55\u5927\u65BC 59 \u7684\u503C\u5C07\u8F49\u63DB\u70BA\u5C0F\u6642\u548C\u5206\u9418\u3002`},{name:"\u79D2",detail:`0\uFF08\u96F6\uFF09\u5230 32767 \u4E4B\u9593\u7684\u6578\u4F4D,\u4EE3\u8868\u79D2\u3002 + +\u4EFB\u4F55\u5927\u65BC 59 \u7684\u503C\u5C07\u8F49\u63DB\u70BA\u5C0F\u6642\u3001\u5206\u9418\u548C\u79D2\u3002`}]},TIMEVALUE:{d:"\u6309\u4E00\u592924\u5C0F\u6642\u8FD4\u56DE\u8A72\u6642\u9593\u7684\u5206\u6578\u8868\u793A\u3002",a:"\u6309\u4E00\u592924\u5C0F\u6642\u8FD4\u56DE\u8A72\u6642\u9593\u7684\u5206\u6578\u8868\u793A\u3002",p:[{name:"time_text",detail:"\u7528\u65BC\u8868\u793A\u6642\u9593\u7684\u5B57\u4E32\u3002"}]},EOMONTH:{d:"\u8FD4\u56DE\u67D0\u500B\u6708\u4EFD\u6700\u5F8C\u4E00\u5929\u7684\u5E8F\u865F,\u8A72\u6708\u4EFD\u5728\u53E6\u4E00\u500B\u65E5\u671F\u4E4B\u524D\u6216\u4E4B\u5F8C\u7684\u6578\u500B\u6708\uFF08\u6708\u6578\u7531\u53C3\u6578\u6307\u5B9A\uFF09\u3002",a:"\u8FD4\u56DE\u67D0\u500B\u6708\u4EFD\u6700\u5F8C\u4E00\u5929\u7684\u5E8F\u865F",p:[{name:"start_date",detail:"\u7528\u65BC\u8A08\u7B97\u7D50\u679C\u7684\u53C3\u7167\u65E5\u671F\u3002"},{name:"months",detail:"\u7528\u65BC\u8A08\u7B97\u7684\u8D77\u59CB\u65E5\u671F\u4E4B\u524D\uFF08\u8CA0\uFF09\u6216\u4E4B\u5F8C\uFF08\u6B63\uFF09\u7684\u6708\u6578\u3002\u8FD4\u56DE\u7684\u662F\u8A08\u7B97\u6240\u5F97\u6708\u4EFD\u7684\u6700\u5F8C\u90A3\u5929\u3002"}]},EDATE:{d:"\u8FD4\u56DE\u8868\u793A\u67D0\u500B\u65E5\u671F\u7684\u5E8F\u865F,\u8A72\u65E5\u671F\u5728\u53E6\u4E00\u500B\u65E5\u671F\u7684\u6578\u6708\u4E4B\u524D/\u4E4B\u5F8C\u3002",a:"\u8FD4\u56DE\u8868\u793A\u67D0\u500B\u65E5\u671F\u7684\u5E8F\u865F",p:[{name:"start_date",detail:"\u7528\u65BC\u8A08\u7B97\u7D50\u679C\u7684\u53C3\u7167\u65E5\u671F\u3002"},{name:"months",detail:"\u7528\u65BC\u8A08\u7B97\u7684\u8D77\u59CB\u65E5\u671F\u4E4B\u524D\uFF08\u8CA0\uFF09\u6216\u4E4B\u5F8C\uFF08\u6B63\uFF09\u7684\u6708\u6578\u3002"}]},SECOND:{d:"\u8FD4\u56DE\u6642\u9593\u503C\u7684\u79D2\u6578\u3002\u79D2\u6578\u662F0\uFF08\u96F6\uFF09\u523059\u7BC4\u570D\u5167\u7684\u6574\u6578\u3002",a:"\u8FD4\u56DE\u6642\u9593\u503C\u7684\u79D2\u6578\u3002\u79D2\u6578\u662F0\uFF08\u96F6\uFF09\u523059\u7BC4\u570D\u5167\u7684\u6574\u6578\u3002",p:[{name:"\u6642\u9593",detail:"\u7528\u65BC\u8A08\u7B97\u79D2\u9418\u90E8\u5206\u7684\u6642\u9593\u3002\u5FC5\u9808\u70BA\u4EE5\u4E0B\u503C\u4E4B\u4E00:\u6307\u5411\u5305\u542B\u65E5\u671F/\u6642\u9593\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F/\u6642\u9593\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},MINUTE:{d:"\u4EE5\u6578\u4F4D\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u6642\u9593\u7684\u5206\u9418\u90E8\u5206\u3002",a:"\u4EE5\u6578\u4F4D\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u6642\u9593\u7684\u5206\u9418\u90E8\u5206\u3002",p:[{name:"\u6642\u9593",detail:"\u7528\u65BC\u8A08\u7B97\u5206\u9418\u90E8\u5206\u7684\u6642\u9593\u3002\u5FC5\u9808\u70BA\u4EE5\u4E0B\u503C\u4E4B\u4E00:\u6307\u5411\u5305\u542B\u65E5\u671F/\u6642\u9593\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F/\u6642\u9593\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},HOUR:{d:"\u4EE5\u6578\u4F4D\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u6642\u9593\u7684\u5C0F\u6642\u90E8\u5206\u3002",a:"\u4EE5\u6578\u4F4D\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u6642\u9593\u7684\u5C0F\u6642\u90E8\u5206\u3002",p:[{name:"\u6642\u9593",detail:"\u7528\u65BC\u8A08\u7B97\u5C0F\u6642\u90E8\u5206\u7684\u6642\u9593\u3002\u5FC5\u9808\u70BA\u4EE5\u4E0B\u503C\u4E4B\u4E00:\u6307\u5411\u5305\u542B\u65E5\u671F/\u6642\u9593\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F/\u6642\u9593\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},NOW:{d:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u7576\u524D\u65E5\u671F\u548C\u6642\u9593\u3002",a:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u7576\u524D\u65E5\u671F\u548C\u6642\u9593\u3002",p:[]},NETWORKDAYS:{d:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\u3002",a:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\u3002",p:[{name:"start_date",detail:"\u7528\u65BC\u8A08\u7B97\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\u7684\u6642\u9593\u6BB5\u958B\u59CB\u65E5\u671F\u3002"},{name:"end_date",detail:"\u7528\u65BC\u8A08\u7B97\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\u7684\u6642\u9593\u6BB5\u7D50\u675F\u65E5\u671F\u3002"},{name:"holidays",detail:`[\u53EF\u9078] - \u4E00\u500B\u7BC4\u570D\u6216\u6578\u7D44\u5E38\u6578,\u5176\u4E2D\u5305\u542B\u4F5C\u70BA\u7BC0\u5047\u65E5\u7684\u65E5\u671F\u5E8F\u865F\u3002 + +\u5728\u7BC0\u5047\u65E5\u6578\u7D44\u4E2D\u63D0\u4F9B\u7684\u503C\u5FC5\u9808\u662F\u65E5\u671F\u5E8F\u865F\u503C\uFF08\u4F8B\u5982\u7531N\u6240\u8FD4\u56DE\u7684\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982\u7531DATE\u3001DATEVALUE\u6216TO_DATE\u8FD4\u56DE\u7684\u503C\uFF09\u3002\u7531\u7BC4\u570D\u6307\u5B9A\u7684\u503C\u61C9\u8A72\u662F\u6A19\u6E96\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6578\u503C\u3002`}]},NETWORKDAYS_INTL:{d:"\u8FD4\u56DE\u7D66\u5B9A\u7684\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\uFF08\u6392\u9664\u6307\u5B9A\u7684\u9031\u672B\u548C\u7BC0\u5047\u65E5\uFF09\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u7684\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\uFF08\u6392\u9664\u6307\u5B9A\u7684\u9031\u672B\u548C\u7BC0\u5047\u65E5\uFF09\u3002",p:[{name:"start_date",detail:"\u7528\u65BC\u8A08\u7B97\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\u7684\u6642\u9593\u6BB5\u958B\u59CB\u65E5\u671F\u3002"},{name:"end_date",detail:"\u7528\u65BC\u8A08\u7B97\u6DE8\u5DE5\u4F5C\u65E5\u5929\u6578\u7684\u6642\u9593\u6BB5\u7D50\u675F\u65E5\u671F\u3002"},{name:"weekend",detail:`[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1] - \u7528\u65BC\u8868\u793A\u54EA\u4E9B\u5929\u70BA\u9031\u672B\u7684\u6578\u4F4D\u6216\u5B57\u4E32\u3002 +\u5B57\u4E32\u7BA1\u9053:\u53EF\u4EE5\u4F7F\u7528\u75310\u548C1\u7D44\u6210\u7684\u5B57\u4E32\u4F86\u6307\u5B9A\u9031\u672B,\u4E32\u4E2D\u7684\u7B2C\u4E00\u500B\u6578\u4F4D\u5B57\u5143\u4EE3\u8868\u9031\u4E00,\u6700\u5F8C\u4E00\u500B\u5247\u4EE3\u8868\u5468\u65E5\u3002\u96F6\u8868\u793A\u9019\u4E00\u5929\u662F\u5DE5\u4F5C\u65E5,1 \u8868\u793A\u9019\u4E00\u5929\u70BA\u9031\u672B\u3002\u4F8B\u5982,"0000011"\u8868\u793A\u5C07\u9031\u516D\u548C\u5468\u65E5\u4F5C\u70BA\u9031\u672B\u3002 +\u6578\u4F4D\u7BA1\u9053:\u9019\u7A2E\u7BA1\u9053\u4E0D\u4F7F\u7528\u4E0A\u8FF0\u5B57\u4E32\u5F62\u5F0F,\u800C\u662F\u4F7F\u7528\u4E00\u500B\u6578\u4F4D\u30021 =\u9031\u516D/\u5468\u65E5\u70BA\u9031\u672B,2 =\u5468\u65E5/\u9031\u4E00\u70BA\u9031\u672B,\u4F9D\u6B64\u985E\u63A8\u52477 =\u9031\u4E94/\u9031\u516D\u300211 =\u5468\u65E5\u70BA\u552F\u4E00\u9031\u672B,12 =\u9031\u4E00\u70BA\u552F\u4E00\u9031\u672B,\u4F9D\u6B64\u985E\u63A8\u524717 =\u9031\u516D\u70BA\u552F\u4E00\u9031\u672B\u3002`},{name:"holidays",detail:`[\u53EF\u9078] - \u9019\u662F\u4E00\u500B\u7BC4\u570D\u6216\u6578\u7D44\u5E38\u6578,\u5176\u4E2D\u5305\u542B\u4F5C\u70BA\u7BC0\u5047\u65E5\u7684\u65E5\u671F\u3002 +\u5728\u7BC0\u5047\u65E5\u6578\u7D44\u5167\u63D0\u4F9B\u7684\u503C\u5FC5\u9808\u70BA\u65E5\u671F\u5E8F\u6578\u503C\uFF08\u4F8B\u5982N\u7684\u8FD4\u56DE\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982DATE\u3001DATEVALUE\u6216TO_DATE\u7684\u8FD4\u56DE\u503C\uFF09\u3002\u7531\u7BC4\u570D\u6307\u5B9A\u7684\u503C\u61C9\u8A72\u662F\u6A19\u6E96\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6578\u503C\u3002`}]},ISOWEEKNUM:{d:"\u8FD4\u56DE\u7D66\u5B9A\u65E5\u671F\u5728\u5168\u5E74\u4E2D\u7684 ISO \u5468\u6578\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u65E5\u671F\u5728\u5168\u5E74\u4E2D\u7684 ISO \u5468\u6578\u3002",p:[{name:"date",detail:"\u7528\u65BC\u65E5\u671F\u548C\u6642\u9593\u8A08\u7B97\u7684\u65E5\u671F-\u6642\u9593\u7A0B\u5F0F\u78BC\u3002"}]},WEEKNUM:{d:"\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u7684\u5468\u6578\u3002",a:"\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u7684\u5468\u6578\u3002",p:[{name:"serial_number",detail:"\u8981\u78BA\u5B9A\u5176\u4F4D\u65BC\u7B2C\u5E7E\u5468\u7684\u65E5\u671F,\u5FC5\u9808\u662F\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"return_type",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1 ] - \u4EE3\u8868\u4E00\u5468\u8D77\u59CB\u65E5\u7684\u6578\u4F4D,\u7CFB\u7D71\u4E5F\u4F7F\u7528\u8A72\u6578\u4F4D\u4F86\u78BA\u5B9A\u4E00\u5E74\u7684\u7B2C\u4E00\u5468\uFF081=\u5468\u65E5,2=\u9031\u4E00\uFF09\u3002"}]},WEEKDAY:{d:"\u8FD4\u56DE\u4E00\u500B\u6578\u4F4D,\u5C0D\u61C9\u65BC\u7D66\u5B9A\u65E5\u671F\u6240\u5728\u7684\u661F\u671F\u5E7E\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u6578\u4F4D,\u5C0D\u61C9\u65BC\u7D66\u5B9A\u65E5\u671F\u6240\u5728\u7684\u661F\u671F\u5E7E\u3002",p:[{name:"serial_number",detail:"\u8981\u70BA\u5176\u78BA\u5B9A\u661F\u671F\u5E7E\u7684\u65E5\u671F\u3002\u5FC5\u9808\u662F\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"return_type",detail:`[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1] -\u4EE5\u6578\u4F4D\u8A13\u793A\u4F7F\u7528\u54EA\u7A2E\u7DE8\u865F\u9806\u5E8F\u4F86\u8868\u793A\u661F\u671F\u5E7E\u3002\u9ED8\u8A8D\u60C5\u51B5\u4E0B,\u6309\u661F\u671F\u65E5\uFF08= 1\uFF09\u958B\u59CB\u8A08\u7B97\u3002 + +\u5982\u679C\u985E\u578B\u70BA1,\u5247\u661F\u671F\u503C\u5C07\u5F9E\u661F\u671F\u65E5\u958B\u59CB\u7B97\u8D77,\u4E26\u4E14\u661F\u671F\u65E5\u7684\u503C\u70BA1,\u56D9\u6B64\u661F\u671F\u516D\u7684\u503C\u5C31\u662F7\u3002 + +\u5982\u679C\u985E\u578B\u70BA2,\u5247\u661F\u671F\u503C\u5C07\u5F9E\u661F\u671F\u4E00\u958B\u59CB\u7B97\u8D77,\u4E26\u4E14\u661F\u671F\u4E00\u7684\u503C\u70BA1,\u56D9\u6B64\u661F\u671F\u65E5\u7684\u503C\u5C31\u662F7\u3002 + +\u5982\u679C\u985E\u578B\u70BA3,\u5247\u661F\u671F\u503C\u5C07\u5F9E\u661F\u671F\u4E00\u7B97\u8D77,\u4E26\u4E14\u661F\u671F\u4E00\u7684\u503C\u70BA0,\u56D9\u6B64\u661F\u671F\u65E5\u7684\u503C\u5C31\u662F6\u3002`}]},DAY:{d:"\u4EE5\u6578\u4F4D\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u6240\u5728\u7684\u7576\u6708\u5E7E\u865F\u3002",a:"\u4EE5\u6578\u4F4D\u683C\u5F0F\u8FD4\u56DE\u7279\u5B9A\u65E5\u671F\u6240\u5728\u7684\u7576\u6708\u5E7E\u865F\u3002",p:[{name:"serial_number",detail:"\u8981\u5F9E\u4E2D\u9078\u53D6\u5177\u9AD4\u5E7E\u865F\u7684\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},DAYS:{d:"\u8FD4\u56DE\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\u3002",a:"\u8FD4\u56DE\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\u3002",p:[{name:"end_date",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7D50\u675F\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"start_date",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u958B\u59CB\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},DAYS360:{d:"\u6309\u7167\u6BCF\u5E74360\u5929,\u8FD4\u56DE\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u5DEE\uFF08\u7528\u65BC\u8A08\u7B97\u5229\u606F\uFF09\u3002",a:"\u6309\u7167\u6BCF\u5E74360\u5929,\u8FD4\u56DE\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u5DEE\uFF08\u7528\u65BC\u8A08\u7B97\u5229\u606F\uFF09\u3002",p:[{name:"start_date",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u958B\u59CB\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"end_date",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7D50\u675F\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"method",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BAFALSE\uFF08\uFF09] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +FALSE -\u63A1\u7528\u7F8E\u570B\uFF08NASD\uFF09\u65B9\u6CD5\u6642,\u5982\u679C\u8D77\u59CB\u65E5\u671F\u70BA\u67D0\u6708\u7684\u6700\u5F8C\u4E00\u5929,\u70BA\u4FBF\u65BC\u8A08\u7B97,\u6703\u5C07\u8D77\u59CB\u65E5\u671F\u7684\u7576\u6708\u5E7E\u865F\u66F4\u6539\u70BA30\u3002\u6B64\u5916,\u5982\u679C\u7D50\u675F\u65E5\u671F\u662F\u6240\u5728\u6708\u4EFD\u7684\u6700\u5F8C\u4E00\u5929,\u800C\u4E14\u8D77\u59CB\u65E5\u671F\u5728\u5176\u6240\u5728\u6708\u768430\u865F\u4E4B\u524D,\u5247\u5C07\u7D50\u675F\u65E5\u671F\u66F4\u6539\u70BA\u7D50\u675F\u65E5\u671F\u4E4B\u5F8C\u90A3\u500B\u6708\u7684\u7B2C\u4E00\u5929,\u5426\u5247\u5C07\u7D50\u675F\u65E5\u671F\u66F4\u6539\u70BA\u8A72\u6708\u768430\u865F\u3002 + +TRUE -\u63A1\u7528\u6B50\u6D32\u65B9\u6CD5\u6642,\u6703\u5C07\u6240\u6709\u65E5\u671F\u572831\u865F\u7684\u8D77\u59CB\u65E5\u671F\u6216\u7D50\u675F\u65E5\u671F\u66F4\u6539\u70BA\u7576\u6708\u768430\u865F\u3002`}]},DATE:{d:"\u5C07\u63D0\u4F9B\u7684\u5E74\u3001\u6708\u3001\u65E5\u8F49\u63DB\u70BA\u65E5\u671F\u3002",a:"\u5C07\u63D0\u4F9B\u7684\u5E74\u3001\u6708\u3001\u65E5\u8F49\u63DB\u70BA\u65E5\u671F\u3002",p:[{name:"year",detail:`\u65E5\u671F\u7684\u5E74\u4EFD\u90E8\u5206,\u5305\u542B\u4E00\u5230\u56DB\u4F4D\u6578\u4F4D\u3002 + +\u4ECB\u65BC0\uFF08\u96F6\uFF09\u5230 1899 \u4E4B\u9593,\u6703\u5C07\u8A72\u503C\u8207 1900 \u76F8\u52A0\u4F86\u8A08\u7B97\u5E74\u4EFD\uFF1B + +\u4ECB\u65BC 1900 \u5230 9999 \u4E4B\u9593,\u5C07\u4F7F\u7528\u8A72\u6578\u503C\u4F5C\u70BA\u5E74\u4EFD\uFF1B + +\u5C0F\u65BC0\u6216\u5927\u65BC\u7B49\u65BC 10000,\u8FD4\u56DE\u932F\u8AA4\u503C#NUM\uFF01\u3002`},{name:"month",detail:`\u65E5\u671F\u7684\u6708\u4EFD\u90E8\u5206,\u4E00\u500B\u6B63\u6574\u6578\u6216\u8CA0\u6574\u6578\u3002 + +\u5982\u679C month \u5927\u65BC 12,\u5247 month \u6703\u5C07\u8A72\u6708\u4EFD\u6578\u8207\u6307\u5B9A\u5E74\u4E2D\u7684\u7B2C\u4E00\u500B\u6708\u76F8\u52A0\u3002 + +\u5982\u679C month \u5C0F\u65BC 1,month \u5247\u5F9E\u6307\u5B9A\u5E74\u4EFD\u7684\u4E00\u6708\u4EFD\u958B\u59CB\u905E\u6E1B\u8A72\u6708\u4EFD\u6578,\u7136\u5F8C\u518D\u52A0\u4E0A 1 \u500B\u6708\u3002`},{name:"day",detail:`\u65E5\u671F\u7684\u65E5\u90E8\u5206,\u4E00\u500B\u6B63\u6574\u6578\u6216\u8CA0\u6574\u6578\u3002 + +\u5982\u679C day \u5927\u65BC\u6708\u4E2D\u6307\u5B9A\u7684\u5929\u6578,\u5247 day \u6703\u5C07\u5929\u6578\u8207\u8A72\u6708\u4E2D\u7684\u7B2C\u4E00\u5929\u76F8\u52A0\u3002 + +\u5982\u679C day \u5C0F\u65BC1,\u5247 day \u5F9E\u6307\u5B9A\u6708\u4EFD\u7684\u7B2C\u4E00\u5929\u958B\u59CB\u905E\u6E1B\u8A72\u5929\u6578,\u7136\u5F8C\u518D\u52A0\u4E0A 1 \u5929\u3002`}]},DATEVALUE:{d:"\u5C07\u63D0\u4F9B\u7684\u65E5\u671F\u5B57\u4E32\u8F49\u63DB\u70BA\u65E5\u671F\u7684\u5E8F\u865F\u3002",a:"\u5C07\u63D0\u4F9B\u7684\u65E5\u671F\u5B57\u4E32\u8F49\u63DB\u70BA\u65E5\u671F\u7684\u5E8F\u865F\u3002",p:[{name:"date_text",detail:"\u8868\u793A\u65E5\u671F\u7684\u5B57\u4E32\u3002"}]},DATEDIF:{d:"\u8A08\u7B97\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\u3001\u6708\u6578\u6216\u5E74\u6578\u3002",a:"\u8A08\u7B97\u5169\u500B\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\u3001\u6708\u6578\u6216\u5E74\u6578\u3002",p:[{name:"\u8D77\u59CB\u65E5\u671F",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u958B\u59CB\u65E5\u671F\u3002\u5FC5\u9808\u662F\u5C0D\u5305\u542BDATE\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DEDATE\u985E\u578B\u7684\u51FD\u6578\u6216\u6578\u4F4D\u3002"},{name:"\u7D50\u675F\u65E5\u671F",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7D50\u675F\u65E5\u671F\u3002\u5FC5\u9808\u662F\u5C0D\u5305\u542BDATE\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DEDATE\u985E\u578B\u7684\u51FD\u6578\u6216\u6578\u4F4D\u3002"},{name:"\u7D44\u7E54",detail:`\u6642\u9593\u7D44\u7E54\u7684\u7E2E\u5BEB\u6587\u5B57\u3002\u4F8B\u5982"M"\u4EE3\u8868\u6708\u3002\u6709\u6548\u503C\u5305\u62EC:"Y"\u3001"M"\u3001"D"\u3001"MD"\u3001"YM"\u548C"YD"\u3002 + +"Y":\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u4E4B\u9593\u7684\u6574\u5E74\u6578\u3002 + +"M":\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u4E4B\u9593\u7684\u6574\u6708\u6578\u3002 + +"D":\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\u3002 + +"MD":\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\uFF08\u4E0D\u8A08\u6574\u6708\u6578\uFF09\u3002 + +"YM":\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u4E4B\u9593\u7684\u6574\u6708\u6578\uFF08\u4E0D\u8A08\u6574\u5E74\u6578\uFF09\u3002 + +"YD":\u8FD4\u56DE\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578\uFF08\u5047\u8A2D\u8D77\u59CB\u65E5\u671F\u548C\u7D50\u675F\u65E5\u671F\u7684\u9593\u9694\u4E0D\u8D85\u904E\u4E00\u5E74\uFF09\u3002`}]},WORKDAY:{d:"\u6307\u5B9A\u5DE5\u4F5C\u65E5\u5929\u6578,\u8A08\u7B97\u7D50\u675F\u65E5\u671F\u3002",a:"\u6307\u5B9A\u5DE5\u4F5C\u65E5\u5929\u6578,\u8A08\u7B97\u7D50\u675F\u65E5\u671F\u3002",p:[{name:"start_date",detail:"\u8A08\u7B97\u7684\u958B\u59CB\u65E5\u671F\u3002"},{name:"days",detail:`start_date\u4E4B\u524D\u6216\u4E4B\u5F8C\u4E0D\u542B\u9031\u672B\u53CA\u7BC0\u5047\u65E5\u7684\u5929\u6578\u3002 + +\u70BA\u6B63\u503C\u5C07\u751F\u6210\u672A\u4F86\u65E5\u671F\uFF1B + +\u70BA\u8CA0\u503C\u751F\u6210\u904E\u53BB\u65E5\u671F\u3002`},{name:"holidays",detail:`[\u53EF\u9078] - \u4E00\u500B\u7BC4\u570D\u6216\u6578\u7D44\u5E38\u6578,\u5176\u4E2D\u5305\u542B\u4F5C\u70BA\u7BC0\u5047\u65E5\u7684\u65E5\u671F\u5E8F\u865F\u3002 + +\u5728\u7BC0\u5047\u65E5\u6578\u7D44\u4E2D\u63D0\u4F9B\u7684\u503C\u5FC5\u9808\u662F\u65E5\u671F\u5E8F\u865F\u503C\uFF08\u4F8B\u5982\u7531N\u6240\u8FD4\u56DE\u7684\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982\u7531DATE\u3001DATEVALUE\u6216TO_DATE\u8FD4\u56DE\u7684\u503C\uFF09\u3002\u7531\u7BC4\u570D\u6307\u5B9A\u7684\u503C\u61C9\u8A72\u662F\u6A19\u6E96\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6578\u503C\u3002`}]},WORKDAY_INTL:{d:"\u8FD4\u56DE\u6307\u5B9A\u7684\u82E5\u5E72\u500B\u5DE5\u4F5C\u65E5\u4E4B\u524D\u6216\u4E4B\u5F8C\u7684\u65E5\u671F\u7684\u5E8F\u865F\uFF08\u4F7F\u7528\u81EA\u5B9A\u7FA9\u9031\u672B\u53C3\u6578\uFF09\u3002 ",a:"\u8FD4\u56DE\u6307\u5B9A\u7684\u82E5\u5E72\u500B\u5DE5\u4F5C\u65E5\u4E4B\u524D\u6216\u4E4B\u5F8C\u7684\u65E5\u671F\u7684\u5E8F\u865F\uFF08\u4F7F\u7528\u81EA\u5B9A\u7FA9\u9031\u672B\u53C3\u6578\uFF09\u3002 ",p:[{name:"start_date",detail:"\u958B\u59CB\u65E5\u671F\uFF08\u5C07\u88AB\u622A\u5C3E\u53D6\u6574\uFF09\u3002"},{name:"days",detail:`start_date\u4E4B\u524D\u6216\u4E4B\u5F8C\u7684\u5DE5\u4F5C\u65E5\u7684\u5929\u6578\u3002 + +\u6B63\u503C\u8868\u793A\u672A\u4F86\u65E5\u671F\uFF1B + +\u8CA0\u503C\u8868\u793A\u904E\u53BB\u65E5\u671F\uFF1B + +\u96F6\u503C\u8868\u793A\u958B\u59CB\u65E5\u671F\u3002`},{name:"weekend",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA1] - \u7528\u65BC\u8868\u793A\u54EA\u4E9B\u5929\u70BA\u9031\u672B\u7684\u6578\u4F4D\u6216\u5B57\u4E32\u3002 +\u5B57\u4E32\u7BA1\u9053:\u53EF\u4EE5\u4F7F\u7528\u75310\u548C1\u7D44\u6210\u7684\u5B57\u4E32\u4F86\u6307\u5B9A\u9031\u672B,\u4E32\u4E2D\u7684\u7B2C\u4E00\u500B\u6578\u4F4D\u5B57\u5143\u4EE3\u8868\u9031\u4E00,\u6700\u5F8C\u4E00\u500B\u5247\u4EE3\u8868\u5468\u65E5\u3002\u96F6\u8868\u793A\u9019\u4E00\u5929\u662F\u5DE5\u4F5C\u65E5,1\u8868\u793A\u9019\u4E00\u5929\u70BA\u9031\u672B\u3002\u4F8B\u5982,"0000011"\u8868\u793A\u5C07\u9031\u516D\u548C\u5468\u65E5\u4F5C\u70BA\u9031\u672B\u3002 +\u6578\u4F4D\u7BA1\u9053:\u9019\u7A2E\u7BA1\u9053\u4E0D\u4F7F\u7528\u4E0A\u8FF0\u5B57\u4E32\u5F62\u5F0F,\u800C\u662F\u4F7F\u7528\u4E00\u500B\u6578\u4F4D\u30021 =\u9031\u516D/\u5468\u65E5\u70BA\u9031\u672B,2 =\u5468\u65E5/\u9031\u4E00\u70BA\u9031\u672B,\u4F9D\u6B64\u985E\u63A8\u52477 =\u9031\u4E94/\u9031\u516D\u300211 =\u5468\u65E5\u70BA\u552F\u4E00\u9031\u672B,12 =\u9031\u4E00\u70BA\u552F\u4E00\u9031\u672B,\u4F9D\u6B64\u985E\u63A8\u524717 =\u9031\u516D\u70BA\u552F\u4E00\u9031\u672B\u3002`},{name:"holidays",detail:`[\u53EF\u9078] - \u9019\u662F\u4E00\u500B\u7BC4\u570D\u6216\u6578\u7D44\u5E38\u6578,\u5176\u4E2D\u5305\u542B\u4F5C\u70BA\u7BC0\u5047\u65E5\u7684\u65E5\u671F\u3002 +\u5728\u7BC0\u5047\u65E5\u6578\u7D44\u5167\u63D0\u4F9B\u7684\u503C\u5FC5\u9808\u70BA\u65E5\u671F\u5E8F\u6578\u503C\uFF08\u4F8B\u5982N\u7684\u8FD4\u56DE\u503C\uFF09\u6216\u65E5\u671F\u503C\uFF08\u4F8B\u5982DATE\u3001DATEVALUE\u6216TO_DATE\u7684\u8FD4\u56DE\u503C\uFF09\u3002\u7531\u7BC4\u570D\u6307\u5B9A\u7684\u503C\u61C9\u8A72\u662F\u6A19\u6E96\u7684\u65E5\u671F\u503C\u6216\u65E5\u671F\u5E8F\u6578\u503C\u3002`}]},YEAR:{d:"\u8FD4\u56DE\u5C0D\u61C9\u65BC\u67D0\u500B\u65E5\u671F\u7684\u5E74\u4EFD\u3002Year\u4F5C\u70BA 1900 - 9999 \u4E4B\u9593\u7684\u6574\u6578\u8FD4\u56DE\u3002",a:"\u8FD4\u56DE\u5C0D\u61C9\u65BC\u67D0\u500B\u65E5\u671F\u7684\u5E74\u4EFD\u3002Year\u4F5C\u70BA 1900 - 9999 \u4E4B\u9593\u7684\u6574\u6578\u8FD4\u56DE\u3002",p:[{name:"serial_number",detail:"\u7528\u65BC\u8A08\u7B97\u5E74\u4EFD\u7684\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},YEARFRAC:{d:"\u8FD4\u56DE start_date \u548C end_date \u4E4B\u9593\u7684\u5929\u6578\u5360\u5168\u5E74\u5929\u6578\u7684\u767E\u5206\u6BD4\u3002",a:"\u8FD4\u56DE start_date \u548C end_date \u4E4B\u9593\u7684\u5929\u6578\u5360\u5168\u5E74\u5929\u6578\u7684\u767E\u5206\u6BD4\u3002",p:[{name:"start_date",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u958B\u59CB\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"end_date",detail:"\u8A08\u7B97\u4E2D\u8981\u4F7F\u7528\u7684\u7D50\u675F\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8981\u4F7F\u7528\u7684\u65E5\u8A08\u6578\u57FA\u6E96\u985E\u578B\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},TODAY:{d:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u7576\u524D\u65E5\u671F\u3002",a:"\u4EE5\u65E5\u671F\u503C\u683C\u5F0F\u8FD4\u56DE\u7576\u524D\u65E5\u671F\u3002",p:[]},MONTH:{d:"\u8FD4\u56DE\u65E5\u671F\uFF08\u4EE5\u5E8F\u5217\u6578\u8868\u793A\uFF09\u4E2D\u7684\u6708\u4EFD\u3002\u6708\u4EFD\u662F\u4ECB\u65BC1\uFF08\u4E00\u6708\uFF09\u523012\uFF08\u5341\u4E8C\u6708\uFF09\u4E4B\u9593\u7684\u6574\u6578\u3002",a:"\u8FD4\u56DE\u65E5\u671F\uFF08\u4EE5\u5E8F\u5217\u6578\u8868\u793A\uFF09\u4E2D\u7684\u6708\u4EFD\u3002\u6708\u4EFD\u662F\u4ECB\u65BC1\uFF08\u4E00\u6708\uFF09\u523012\uFF08\u5341\u4E8C\u6708\uFF09\u4E4B\u9593\u7684\u6574\u6578\u3002",p:[{name:"serial_number",detail:"\u8981\u5F9E\u4E2D\u9078\u53D6\u6708\u4EFD\u7684\u65E5\u671F\u3002\u5FC5\u9808\u662F\u4EE5\u4E0B\u4E00\u7A2E:\u5C0D\u5305\u542B\u65E5\u671F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3001\u8FD4\u56DE\u65E5\u671F\u985E\u578B\u7684\u51FD\u6578\u6216\u8005\u6578\u4F4D\u3002"}]},EFFECT:{d:"\u6839\u64DA\u540D\u7FA9\u5229\u7387\u53CA\u6BCF\u5E74\u7684\u8907\u5229\u8A08\u606F\u671F\u6578\u4F86\u8A08\u7B97\u5BE6\u969B\u5E74\u5229\u7387\u3002",a:"\u6839\u64DA\u540D\u7FA9\u5229\u7387\u53CA\u6BCF\u5E74\u7684\u8907\u5229\u8A08\u606F\u671F\u6578\u4F86\u8A08\u7B97\u5BE6\u969B\u5E74\u5229\u7387\u3002",p:[{name:"nominal_rate",detail:"\u6BCF\u5E74\u7684\u540D\u7FA9\u5229\u7387\u3002"},{name:"npery",detail:"\u6BCF\u5E74\u7684\u8907\u5229\u8A08\u7B97\u671F\u6578\u3002"}]},DOLLAR:{d:"\u5C07\u6578\u4F4D\u683C\u5F0F\u8A2D\u5B9A\u70BA\u8207\u8A9E\u8A00\u5340\u57DF\u76F8\u5C0D\u61C9\u7684\u8CA8\u5E63\u683C\u5F0F\u3002",a:"\u5C07\u6578\u4F4D\u683C\u5F0F\u8A2D\u5B9A\u70BA\u8207\u8A9E\u8A00\u5340\u57DF\u76F8\u5C0D\u61C9\u7684\u8CA8\u5E63\u683C\u5F0F\u3002",p:[{name:"number",detail:"\u8981\u8A2D\u5B9A\u683C\u5F0F\u7684\u503C\u3002"},{name:"decimals",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA2] - \u8981\u986F\u793A\u7684\u5C0F\u6578\u4F4D\u6578\u3002 + +\u5982\u679C\u9019\u662F\u8CA0\u6578,\u5247\u5C07\u6578\u4F4D\u56DB\u6368\u4E94\u5165\u5230\u5C0F\u6578\u9EDE\u5DE6\u5074\u3002`}]},DOLLARDE:{d:"\u5C07\u4EE5\u6574\u6578\u90E8\u5206\u548C\u5206\u6578\u90E8\u5206\u8F49\u63DB\u70BA\u4EE5\u5C0F\u6578\u90E8\u5206\u8868\u793A\u7684\u91D1\u984D\u6578\u4F4D",a:"\u5C07\u4EE5\u6574\u6578\u90E8\u5206\u548C\u5206\u6578\u90E8\u5206\u8F49\u63DB\u70BA\u4EE5\u5C0F\u6578\u90E8\u5206\u8868\u793A\u7684\u91D1\u984D\u6578\u4F4D",p:[{name:"fractional_dollar",detail:"\u4EE5\u6574\u6578\u90E8\u4EFD\u548C\u5206\u6578\u90E8\u5206\u8868\u793A\u7684\u6578\u4F4D,\u7528\u5C0F\u6578\u9EDE\u9694\u958B\u3002"},{name:"fraction",detail:"\u7528\u4F5C\u5206\u6578\u4E2D\u7684\u5206\u6BCD\u7684\u6574\u6578\u3002"}]},DOLLARFR:{d:"\u5C07\u5C0F\u6578\u8F49\u63DB\u70BA\u5206\u6578\u8868\u793A\u7684\u91D1\u984D\u6578\u4F4D\u3002",a:"\u5C07\u5C0F\u6578\u8F49\u63DB\u70BA\u5206\u6578\u8868\u793A\u7684\u91D1\u984D\u6578\u4F4D\u3002",p:[{name:"decimal_dollar",detail:"\u5C0F\u6578\u3002"},{name:"fraction",detail:"\u7528\u4F5C\u5206\u6578\u4E2D\u7684\u5206\u6BCD\u7684\u6574\u6578\u3002"}]},DB:{d:"\u4F7F\u7528\u56FA\u5B9A\u9918\u984D\u905E\u6E1B\u6CD5,\u8FD4\u56DE\u6307\u5B9A\u671F\u9593\u5167\u67D0\u9805\u56FA\u5B9A\u8CC7\u7522\u7684\u6298\u820A\u503C\u3002",a:"\u4F7F\u7528\u56FA\u5B9A\u9918\u984D\u905E\u6E1B\u6CD5,\u8FD4\u56DE\u6307\u5B9A\u671F\u9593\u5167\u67D0\u9805\u56FA\u5B9A\u8CC7\u7522\u7684\u6298\u820A\u503C\u3002",p:[{name:"cost",detail:"\u8CC7\u7522\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u820A\u672B\u5C3E\u6642\u7684\u503C\uFF08\u6709\u6642\u4E5F\u7A31\u70BA\u8CC7\u7522\u6B98\u503C\uFF09\u3002"},{name:"life",detail:"\u8CC7\u7522\u7684\u6298\u820A\u671F\u6578\uFF08\u6709\u6642\u4E5F\u7A31\u4F5C\u8CC7\u7522\u7684\u4F7F\u7528\u58FD\u547D\uFF09\u3002"},{name:"period",detail:"\u5728\u4F7F\u7528\u671F\u9650\u5167\u8981\u8A08\u7B97\u6298\u820A\u7684\u6298\u820A\u671F\u3002"},{name:"month",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA12] - \u6298\u820A\u7B2C\u4E00\u5E74\u4E2D\u7684\u6708\u6578\u3002"}]},DDB:{d:"\u7528\u96D9\u500D\u9918\u984D\u905E\u6E1B\u6CD5,\u8FD4\u56DE\u6307\u5B9A\u671F\u9593\u5167\u67D0\u9805\u56FA\u5B9A\u8CC7\u7522\u7684\u6298\u820A\u503C\u3002",a:"\u7528\u96D9\u500D\u9918\u984D\u905E\u6E1B\u6CD5,\u8FD4\u56DE\u6307\u5B9A\u671F\u9593\u5167\u67D0\u9805\u56FA\u5B9A\u8CC7\u7522\u7684\u6298\u820A\u503C\u3002",p:[{name:"cost",detail:"\u8D44\u4EA7\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u820A\u672B\u5C3E\u6642\u7684\u503C\uFF08\u6709\u6642\u4E5F\u7A31\u70BA\u8CC7\u7522\u6B98\u503C\uFF09\u3002"},{name:"life",detail:"\u8CC7\u7522\u7684\u6298\u820A\u671F\u6578\uFF08\u6709\u6642\u4E5F\u7A31\u4F5C\u8CC7\u7522\u7684\u4F7F\u7528\u58FD\u547D\uFF09\u3002"},{name:"period",detail:"\u5728\u4F7F\u7528\u671F\u9650\u5167\u8981\u8A08\u7B97\u6298\u820A\u7684\u6298\u820A\u671F\u3002"},{name:"factor",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA2] - \u6298\u820A\u7684\u905E\u6E1B\u4FC2\u6578\u3002"}]},RATE:{d:"\u8FD4\u56DE\u5E74\u91D1\u6BCF\u671F\u7684\u5229\u7387\u3002",a:"\u8FD4\u56DE\u5E74\u91D1\u6BCF\u671F\u7684\u5229\u7387\u3002",p:[{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u7E3D\u671F\u6578\u3002"},{name:"pmt",detail:"\u6BCF\u671F\u7684\u4ED8\u6B3E\u91D1\u984D,\u5728\u5E74\u91D1\u9031\u671F\u5167\u4E0D\u80FD\u66F4\u6539\u3002"},{name:"pv",detail:"\u73FE\u503C\u5373\u4E00\u7CFB\u5217\u672A\u4F86\u4ED8\u6B3E\u7576\u524D\u503C\u7684\u7E3D\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u672A\u4F86\u503C,\u6216\u5728\u6700\u5F8C\u4E00\u6B21\u4ED8\u6B3E\u5F8C\u5E0C\u671B\u5F97\u5230\u7684\u73FE\u91D1\u9918\u984D\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`},{name:"guess",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0.1] - \u9810\u671F\u5229\u7387\u3002"}]},CUMPRINC:{d:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u6295\u8CC7\u5728\u591A\u500B\u4ED8\u6B3E\u671F\u5167\u7684\u7D2F\u8A08\u672C\u91D1\u511F\u9084\u984D\u3002",a:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u6295\u8CC7\u5728\u591A\u500B\u4ED8\u6B3E\u671F\u5167\u7684\u7D2F\u8A08\u672C\u91D1\u511F\u9084\u984D\u3002",p:[{name:"rate",detail:"\u5229\u7387\u3002"},{name:"nper",detail:"\u7E3D\u4ED8\u6B3E\u671F\u6578\u3002"},{name:"pv",detail:"\u5E74\u91D1\u7684\u73FE\u503C\u3002"},{name:"start_period",detail:`\u958B\u59CB\u7D2F\u8A08\u8A08\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u865F\u3002 + +\u9996\u671F\u5FC5\u9808\u5927\u65BC\u7B49\u65BC1\u3002`},{name:"end_period",detail:`\u7D50\u675F\u7D2F\u8A08\u8A08\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u865F\u3002 + +\u672B\u671F\u5FC5\u9808\u5927\u65BC\u9996\u671F\u3002`},{name:"type",detail:`\u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},COUPNUM:{d:"\u8FD4\u56DE\u5728\u7D50\u7B97\u65E5\u548C\u5230\u671F\u65E5\u4E4B\u9593\u7684\u4ED8\u606F\u6B21\u6578\uFF0C\u5411\u4E0A\u820D\u5165\u5230\u6700\u8FD1\u7684\u6574\u6578",a:"\u8FD4\u56DE\u5728\u7D50\u7B97\u65E5\u548C\u5230\u671F\u65E5\u4E4B\u9593\u7684\u4ED8\u606F\u6B21\u6578\uFF0C\u5411\u4E0A\u820D\u5165\u5230\u6700\u8FD1\u7684\u6574\u6578",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},SYD:{d:"\u8FD4\u56DE\u5728\u6307\u5B9A\u671F\u9593\u5167\u8CC7\u7522\u6309\u5E74\u9650\u7E3D\u548C\u6298\u820A\u6CD5\u8A08\u7B97\u7684\u6298\u820A\u3002",a:"\u8FD4\u56DE\u5728\u6307\u5B9A\u671F\u9593\u5167\u8CC7\u7522\u6309\u5E74\u9650\u7E3D\u548C\u6298\u820A\u6CD5\u8A08\u7B97\u7684\u6298\u820A\u3002",p:[{name:"cost",detail:"\u8CC7\u7522\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u820A\u672B\u5C3E\u6642\u7684\u503C\uFF08\u6709\u6642\u4E5F\u7A31\u70BA\u8CC7\u7522\u6B98\u503C\uFF09\u3002"},{name:"life",detail:"\u8CC7\u7522\u7684\u6298\u820A\u671F\u6578\uFF08\u6709\u6642\u4E5F\u7A31\u4F5C\u8CC7\u7522\u7684\u4F7F\u7528\u58FD\u547D\uFF09\u3002"},{name:"period",detail:"\u5728\u4F7F\u7528\u671F\u9650\u5167\u8981\u8A08\u7B97\u6298\u820A\u7684\u6298\u820A\u671F\u3002"}]},TBILLEQ:{d:"\u57FA\u65BC\u8CBC\u73FE\u7387\u8A08\u7B97\u7F8E\u570B\u653F\u5E9C\u77ED\u671F\u50B5\u5238\u7684\u7B49\u6548\u5E74\u5316\u6536\u76CA\u7387\u3002",a:"\u57FA\u65BC\u8CBC\u73FE\u7387\u8A08\u7B97\u7F8E\u570B\u653F\u5E9C\u77ED\u671F\u50B5\u5238\u7684\u7B49\u6548\u5E74\u5316\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u50B5\u5238\u7684\u7D50\u7B97\u65E5\u671F,\u6B64\u65E5\u671F\u70BA\u50B5\u5238\u767C\u884C\u5F8C\u4EA4\u4ED8\u7D66\u8CB7\u5BB6\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u50B5\u5238\u7684\u5230\u671F\u6216\u7D50\u675F\u65E5\u671F,\u5C4A\u6642\u53EF\u5C07\u5176\u4EE5\u9762\u503C\u6216\u7968\u9762\u50F9\u503C\u8D16\u56DE\u3002"},{name:"discount",detail:"\u50B5\u5238\u8CFC\u8CB7\u6642\u7684\u8CBC\u73FE\u7387\u3002"}]},TBILLYIELD:{d:"\u57FA\u65BC\u50F9\u683C\u8A08\u7B97\u7F8E\u570B\u653F\u5E9C\u77ED\u671F\u50B5\u5238\u7684\u6536\u76CA\u7387\u3002",a:"\u57FA\u65BC\u50F9\u683C\u8A08\u7B97\u7F8E\u570B\u653F\u5E9C\u77ED\u671F\u50B5\u5238\u7684\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u50B5\u5238\u7684\u7D50\u7B97\u65E5\u671F,\u6B64\u65E5\u671F\u70BA\u50B5\u5238\u767C\u884C\u5F8C\u4EA4\u4ED8\u7D66\u8CB7\u5BB6\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u50B5\u5238\u7684\u5230\u671F\u6216\u7D50\u675F\u65E5\u671F,\u5C4A\u6642\u53EF\u5C07\u5176\u4EE5\u9762\u503C\u6216\u7968\u9762\u50F9\u503C\u8D16\u56DE\u3002"},{name:"pr",detail:"\u50B5\u5238\u7684\u8CFC\u8CB7\u50F9\u683C\u3002"}]},TBILLPRICE:{d:"\u57FA\u65BC\u8CBC\u73FE\u7387\u8A08\u7B97\u7F8E\u570B\u653F\u5E9C\u77ED\u671F\u50B5\u5238\u7684\u50F9\u683C\u3002",a:"\u57FA\u65BC\u8CBC\u73FE\u7387\u8A08\u7B97\u7F8E\u570B\u653F\u5E9C\u77ED\u671F\u50B5\u5238\u7684\u50F9\u683C\u3002",p:[{name:"settlement",detail:"\u50B5\u5238\u7684\u7D50\u7B97\u65E5\u671F,\u6B64\u65E5\u671F\u70BA\u50B5\u5238\u767C\u884C\u5F8C\u4EA4\u4ED8\u7D66\u8CB7\u5BB6\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u50B5\u5238\u7684\u5230\u671F\u6216\u7D50\u675F\u65E5\u671F,\u5C4A\u6642\u53EF\u5C07\u5176\u4EE5\u9762\u503C\u6216\u7968\u9762\u50F9\u503C\u8D16\u56DE\u3002"},{name:"discount",detail:"\u50B5\u5238\u8CFC\u8CB7\u6642\u7684\u8CBC\u73FE\u7387\u3002"}]},PV:{d:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u5E74\u91D1\u6295\u8CC7\u7684\u73FE\u503C\u3002",a:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u5E74\u91D1\u6295\u8CC7\u7684\u73FE\u503C\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u7E3D\u671F\u6578\u3002"},{name:"pmt",detail:"\u6BCF\u671F\u7684\u4ED8\u6B3E\u91D1\u984D,\u5728\u5E74\u91D1\u9031\u671F\u5167\u4E0D\u80FD\u66F4\u6539\u3002"},{name:"fv",detail:"[\u53EF\u9078] - \u672A\u4F86\u503C,\u6216\u5728\u6700\u5F8C\u4E00\u6B21\u4ED8\u6B3E\u5F8C\u5E0C\u671B\u5F97\u5230\u7684\u73FE\u91D1\u9918\u984D\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},ACCRINT:{d:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u8B49\u5238\u7684\u61C9\u8A08\u5229\u606F\u3002",a:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u8B49\u5238\u7684\u61C9\u8A08\u5229\u606F\u3002",p:[{name:"issue",detail:"\u6709\u50F9\u8B49\u5238\u7684\u767C\u884C\u65E5\u3002"},{name:"first_interest",detail:"\u6709\u50F9\u8B49\u5238\u7684\u9996\u6B21\u8A08\u606F\u65E5\u3002"},{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"rate",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"par",detail:"\u8B49\u5238\u7684\u7968\u9762\u503C\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A""\u6B50\u6D3230/360"\u65B9\u6CD5"-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`},{name:"calc_method",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u6307\u5B9A\u7576\u7D50\u7B97\u65E5\u671F\u665A\u65BC\u9996\u6B21\u8A08\u606F\u65E5\u671F\u6642\u7528\u65BC\u8A08\u7B97\u7E3D\u61C9\u8A08\u5229\u606F\u7684\u65B9\u6CD5\u3002 + +\u5982\u679C\u503C\u70BATRUE,\u5247\u8FD4\u56DE\u5F9E\u767C\u884C\u65E5\u5230\u7D50\u7B97\u65E5\u7684\u7E3D\u61C9\u8A08\u5229\u606F\u3002 + +\u5982\u679C\u503C\u70BAFALSE,\u5247\u8FD4\u56DE\u5F9E\u9996\u6B21\u8A08\u606F\u65E5\u5230\u7D50\u7B97\u65E5\u7684\u61C9\u8A08\u5229\u606F\u3002`}]},ACCRINTM:{d:"\u8FD4\u56DE\u5728\u5230\u671F\u65E5\u652F\u4ED8\u5229\u606F\u7684\u6709\u50F9\u8B49\u5238\u7684\u61C9\u8A08\u5229\u606F\u3002",a:"\u8FD4\u56DE\u5728\u5230\u671F\u65E5\u652F\u4ED8\u5229\u606F\u7684\u6709\u50F9\u8B49\u5238\u7684\u61C9\u8A08\u5229\u606F\u3002",p:[{name:"issue",detail:"\u6709\u50F9\u8B49\u5238\u7684\u767C\u884C\u65E5\u3002"},{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002"},{name:"rate",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"par",detail:"\u8B49\u5238\u7684\u7968\u9762\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},COUPDAYBS:{d:"\u8FD4\u56DE\u5F9E\u4ED8\u606F\u671F\u958B\u59CB\u5230\u7D50\u7B97\u65E5\u7684\u5929\u6578\u3002",a:"\u8FD4\u56DE\u5F9E\u4ED8\u606F\u671F\u958B\u59CB\u5230\u7D50\u7B97\u65E5\u7684\u5929\u6578\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},COUPDAYS:{d:"\u8FD4\u56DE\u7D50\u7B97\u65E5\u6240\u5728\u7684\u4ED8\u606F\u671F\u7684\u5929\u6578\u3002",a:"\u8FD4\u56DE\u7D50\u7B97\u65E5\u6240\u5728\u7684\u4ED8\u606F\u671F\u7684\u5929\u6578\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] -\u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},COUPDAYSNC:{d:"\u8FD4\u56DE\u5F9E\u7D50\u7B97\u65E5\u5230\u4E0B\u4E00\u7968\u606F\u652F\u4ED8\u65E5\u4E4B\u9593\u7684\u5929\u6578\u3002",a:"\u8FD4\u56DE\u5F9E\u7D50\u7B97\u65E5\u5230\u4E0B\u4E00\u7968\u606F\u652F\u4ED8\u65E5\u4E4B\u9593\u7684\u5929\u6578\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},COUPNCD:{d:"\u8A08\u7B97\u7D50\u7B97\u65E5\u4E4B\u5F8C\u7684\u4E0B\u4E00\u7968\u606F\u6216\u5229\u606F\u6D3E\u767C\u65E5\u671F\u3002",a:"\u8A08\u7B97\u7D50\u7B97\u65E5\u4E4B\u5F8C\u7684\u4E0B\u4E00\u7968\u606F\u6216\u5229\u606F\u6D3E\u767C\u65E5\u671F\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},COUPPCD:{d:"\u8A08\u7B97\u7D50\u7B97\u65E5\u4E4B\u524D\u7684\u6700\u5F8C\u4E00\u500B\u7968\u606F\u6216\u5229\u606F\u652F\u4ED8\u65E5\u3002",a:"\u8A08\u7B97\u7D50\u7B97\u65E5\u4E4B\u524D\u7684\u6700\u5F8C\u4E00\u500B\u7968\u606F\u6216\u5229\u606F\u652F\u4ED8\u65E5\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4 \u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},FV:{d:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u5E74\u91D1\u6295\u8CC7\u7684\u672A\u4F86\u50F9\u503C\u3002",a:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u5E74\u91D1\u6295\u8CC7\u7684\u672A\u4F86\u50F9\u503C\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u7E3D\u671F\u6578\u3002"},{name:"pmt",detail:"\u5404\u671F\u6240\u61C9\u652F\u4ED8\u7684\u91D1\u984D,\u5728\u6574\u500B\u5E74\u91D1\u671F\u9593\u4FDD\u6301\u4E0D\u8B8A\u3002"},{name:"pv",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0 ] - \u73FE\u503C,\u6216\u4E00\u7CFB\u5217\u672A\u4F86\u4ED8\u6B3E\u7684\u7576\u524D\u503C\u7684\u7D2F\u7A4D\u548C\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0 ] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},FVSCHEDULE:{d:"\u8FD4\u56DE\u61C9\u7528\u4E00\u7CFB\u5217\u8907\u5229\u7387\u8A08\u7B97\u7684\u521D\u59CB\u672C\u91D1\u7684\u672A\u4F86\u503C\u3002",a:"\u8FD4\u56DE\u61C9\u7528\u4E00\u7CFB\u5217\u8907\u5229\u7387\u8A08\u7B97\u7684\u521D\u59CB\u672C\u91D1\u7684\u672A\u4F86\u503C\u3002",p:[{name:"principal",detail:"\u73FE\u503C\u3002"},{name:"schedule",detail:`\u7528\u65BC\u8A08\u7B97\u672C\u91D1\u8907\u5229\u7684\u4E00\u7D44\u5229\u7387\u3002 + +\u5229\u7387\u9336\u5FC5\u9808\u662F\u7BC4\u570D\u6216\u6578\u7D44,\u5176\u4E2D\u5305\u542B\u8981\u7528\u65BC\u8A08\u7B97\u8907\u5229\u7684\u4E00\u7D44\u5229\u7387\u3002\u9019\u4E9B\u5229\u7387\u503C\u61C9\u8A72\u4EE5\u5341\u9032\u4F4D\u5C0F\u6578\u5F62\u5F0F\u8868\u793A,\u6216\u8005\u4F7F\u7528UNARY_PERCENT\u4EE5\u767E\u5206\u6BD4\u5F62\u5F0F\u8868\u793A,\u5373\u8868\u793A\u70BA0.09\u6216UNARY_PERCENT\uFF089\uFF09,\u800C\u4E0D\u8981\u8868\u793A\u70BA9\u3002`}]},YIELD:{d:"\u8FD4\u56DE\u5B9A\u671F\u652F\u4ED8\u5229\u606F\u7684\u50B5\u5238\u7684\u6536\u76CA\u7387\u3002",a:"\u8FD4\u56DE\u5B9A\u671F\u652F\u4ED8\u5229\u606F\u7684\u50B5\u5238\u7684\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"rate",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"pr",detail:"\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002"},{name:"redemption",detail:"\u6709\u50F9\u8B49\u5238\u7684\u6E05\u511F\u50F9\u503C\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},YIELDDISC:{d:"\u57FA\u65BC\u50F9\u683C\u8A08\u7B97\u6298\u50F9\u767C\u884C\u7684\uFF08\u4E0D\u5E36\u606F\uFF09\u50B5\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002",a:"\u57FA\u65BC\u50F9\u683C\u8A08\u7B97\u6298\u50F9\u767C\u884C\u7684\uFF08\u4E0D\u5E36\u606F\uFF09\u50B5\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"pr",detail:"\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002"},{name:"redemption",detail:"\u6709\u50F9\u8B49\u5238\u7684\u6E05\u511F\u50F9\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},NOMINAL:{d:"\u57FA\u65BC\u7D66\u5B9A\u7684\u5BE6\u969B\u5229\u7387\u548C\u5E74\u8907\u5229\u671F\u6578,\u8FD4\u56DE\u540D\u7FA9\u5E74\u5229\u7387\u3002",a:"\u57FA\u65BC\u7D66\u5B9A\u7684\u5BE6\u969B\u5229\u7387\u548C\u5E74\u8907\u5229\u671F\u6578,\u8FD4\u56DE\u540D\u7FA9\u5E74\u5229\u7387\u3002",p:[{name:"effect_rate",detail:"\u6BCF\u5E74\u7684\u5BE6\u969B\u5229\u7387\u3002"},{name:"npery",detail:"\u6BCF\u5E74\u7684\u8907\u5229\u671F\u6578\u3002"}]},XIRR:{d:"\u8FD4\u56DE\u4E00\u7D44\u4E0D\u4E00\u5B9A\u5B9A\u671F\u767C\u751F\u7684\u73FE\u91D1\u6D41\u7684\u5167\u90E8\u6536\u76CA\u7387\u3002",a:"\u8FD4\u56DE\u4E00\u7D44\u4E0D\u4E00\u5B9A\u5B9A\u671F\u767C\u751F\u7684\u73FE\u91D1\u6D41\u7684\u5167\u90E8\u6536\u76CA\u7387\u3002",p:[{name:"values",detail:`\u5176\u4E2D\u542B\u6709\u6295\u8CC7\u76F8\u95DC\u6536\u76CA\u6216\u652F\u51FA\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002 + +\u73FE\u91D1\u6D41\u6578\u984D\u4E2D\u5FC5\u9808\u81F3\u5C11\u5305\u542B\u4E00\u9805\u8CA0\u7684\u548C\u4E00\u9805\u6B63\u7684\u73FE\u91D1\u6D41\u91D1\u984D\u624D\u80FD\u8A08\u7B97\u56DE\u5831\u7387\u3002`},{name:"dates",detail:"\u8207\u73FE\u91D1\u6D41\u6578\u984D\u53C3\u6578\u4E2D\u7684\u73FE\u91D1\u6D41\u5C0D\u61C9\u7684\u65E5\u671F\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"guess",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0.1] - \u5C0D\u5167\u90E8\u56DE\u5831\u7387\u7684\u4F30\u7B97\u503C\u3002"}]},MIRR:{d:"\u8FD4\u56DE\u4E00\u7CFB\u5217\u5B9A\u671F\u73FE\u91D1\u6D41\u7684\u4FEE\u6539\u5F8C\u5167\u90E8\u6536\u76CA\u7387\u3002",a:"\u8FD4\u56DE\u4E00\u7CFB\u5217\u5B9A\u671F\u73FE\u91D1\u6D41\u7684\u4FEE\u6539\u5F8C\u5167\u90E8\u6536\u76CA\u7387\u3002",p:[{name:"values",detail:`\u5176\u4E2D\u542B\u6709\u6295\u8CC7\u76F8\u95DC\u6536\u76CA\u6216\u652F\u51FA\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002 + +\u73FE\u91D1\u6D41\u6578\u984D\u4E2D\u5FC5\u9808\u81F3\u5C11\u5305\u542B\u4E00\u9805\u8CA0\u7684\u548C\u4E00\u9805\u6B63\u7684\u73FE\u91D1\u6D41\u91D1\u984D\u624D\u80FD\u8A08\u7B97\u56DE\u5831\u7387\u3002`},{name:"finance_rate",detail:"\u73FE\u91D1\u6D41\u4E2D\u4F7F\u7528\u7684\u8CC7\u91D1\u652F\u4ED8\u7684\u5229\u7387\u3002"},{name:"reinvest_rate",detail:"\u5C07\u73FE\u91D1\u6D41\u518D\u6295\u8CC7\u7684\u6536\u76CA\u7387\u3002"}]},IRR:{d:"\u8FD4\u56DE\u7531\u503C\u4E2D\u7684\u6578\u4F4D\u8868\u793A\u7684\u4E00\u7CFB\u5217\u73FE\u91D1\u6D41\u7684\u5167\u90E8\u6536\u76CA\u7387\u3002 ",a:"\u8FD4\u56DE\u7531\u503C\u4E2D\u7684\u6578\u4F4D\u8868\u793A\u7684\u4E00\u7CFB\u5217\u73FE\u91D1\u6D41\u7684\u5167\u90E8\u6536\u76CA\u7387\u3002 ",p:[{name:"values",detail:`\u5176\u4E2D\u542B\u6709\u6295\u8CC7\u76F8\u95DC\u6536\u76CA\u6216\u652F\u51FA\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002 + +\u73FE\u91D1\u6D41\u6578\u984D\u4E2D\u5FC5\u9808\u81F3\u5C11\u5305\u542B\u4E00\u9805\u8CA0\u7684\u548C\u4E00\u9805\u6B63\u7684\u73FE\u91D1\u6D41\u91D1\u984D\u624D\u80FD\u8A08\u7B97\u56DE\u5831\u7387\u3002`},{name:"guess",detail:"[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0.1] - \u5167\u90E8\u6536\u76CA\u7387\u7684\u4F30\u503C\u3002"}]},NPV:{d:"\u4F7F\u7528\u8CBC\u73FE\u7387\u548C\u4E00\u7CFB\u5217\u672A\u4F86\u652F\u51FA\uFF08\u8CA0\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u4F86\u8A08\u7B97\u4E00\u9805\u6295\u8CC7\u7684\u6DE8\u73FE\u503C\u3002",a:"\u4F7F\u7528\u8CBC\u73FE\u7387\u548C\u4E00\u7CFB\u5217\u672A\u4F86\u652F\u51FA\uFF08\u8CA0\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u4F86\u8A08\u7B97\u4E00\u9805\u6295\u8CC7\u7684\u6DE8\u73FE\u503C\u3002",p:[{name:"rate",detail:"\u67D0\u4E00\u671F\u9593\u7684\u8CBC\u73FE\u7387\u3002"},{name:"value1",detail:"\u7B2C\u4E00\u7B46\u652F\u51FA\uFF08\u8CA0\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u3002"},{name:"value2, ...",detail:"[\u53EF\u9078] - \u5176\u4ED6\u652F\u51FA\uFF08\u8CA0\u503C\uFF09\u548C\u6536\u76CA\uFF08\u6B63\u503C\uFF09\u3002"}]},XNPV:{d:"\u8FD4\u56DE\u4E00\u7D44\u73FE\u91D1\u6D41\u7684\u6DE8\u73FE\u503C,\u9019\u4E9B\u73FE\u91D1\u6D41\u4E0D\u4E00\u5B9A\u5B9A\u671F\u767C\u751F\u3002",a:"\u8FD4\u56DE\u4E00\u7D44\u73FE\u91D1\u6D41\u7684\u6DE8\u73FE\u503C,\u9019\u4E9B\u73FE\u91D1\u6D41\u4E0D\u4E00\u5B9A\u5B9A\u671F\u767C\u751F\u3002",p:[{name:"rate",detail:"\u61C9\u7528\u65BC\u73FE\u91D1\u6D41\u7684\u8CBC\u73FE\u7387\u3002"},{name:"values",detail:"\u8207dates\u4E2D\u7684\u652F\u4ED8\u6642\u9593\u76F8\u5C0D\u61C9\u7684\u4E00\u7CFB\u5217\u73FE\u91D1\u6D41\u3002"},{name:"dates",detail:"\u8207\u73FE\u91D1\u6D41\u652F\u4ED8\u76F8\u5C0D\u61C9\u7684\u652F\u4ED8\u65E5\u671F\u9336\u3002"}]},CUMIPMT:{d:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u6295\u8CC7\u5728\u4E00\u7CFB\u5217\u4ED8\u6B3E\u671F\u5167\u7684\u7D2F\u8A08\u5229\u606F\u3002",a:"\u57FA\u65BC\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387,\u8A08\u7B97\u6295\u8CC7\u5728\u4E00\u7CFB\u5217\u4ED8\u6B3E\u671F\u5167\u7684\u7D2F\u8A08\u5229\u606F\u3002",p:[{name:"rate",detail:"\u5229\u606F\u7387\u3002"},{name:"nper",detail:"\u7E3D\u4ED8\u6B3E\u671F\u6578\u3002"},{name:"pv",detail:"\u73FE\u503C\u3002"},{name:"start_period",detail:`\u958B\u59CB\u7D2F\u8A08\u8A08\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u865F\u3002 + +\u9996\u671F\u5FC5\u9808\u5927\u65BC\u7B49\u65BC1\u3002`},{name:"end_period",detail:`\u7D50\u675F\u7D2F\u8A08\u8A08\u7B97\u7684\u4ED8\u6B3E\u671F\u5E8F\u865F\u3002 + +\u672B\u671F\u5FC5\u9808\u5927\u65BC\u9996\u671F\u3002`},{name:"type",detail:`\u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},PMT:{d:"\u7528\u65BC\u6839\u64DA\u56FA\u5B9A\u4ED8\u6B3E\u984D\u548C\u56FA\u5B9A\u5229\u7387\u8A08\u7B97\u8CB8\u6B3E\u7684\u4ED8\u6B3E\u984D\u3002",a:"\u7528\u65BC\u6839\u64DA\u56FA\u5B9A\u4ED8\u6B3E\u984D\u548C\u56FA\u5B9A\u5229\u7387\u8A08\u7B97\u8CB8\u6B3E\u7684\u4ED8\u6B3E\u984D\u3002",p:[{name:"rate",detail:"\u8CB8\u6B3E\u5229\u7387\u3002"},{name:"nper",detail:"\u8A72\u9805\u8CB8\u6B3E\u7684\u4ED8\u6B3E\u7E3D\u6578\u3002"},{name:"pv",detail:"\u73FE\u503C,\u6216\u4E00\u7CFB\u5217\u672A\u4F86\u4ED8\u6B3E\u984D\u73FE\u5728\u6240\u503C\u7684\u7E3D\u984D,\u4E5F\u53EB\u672C\u91D1\u3002"},{name:"fv",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u672A\u4F86\u503C,\u6216\u5728\u6700\u5F8C\u4E00\u6B21\u4ED8\u6B3E\u5F8C\u5E0C\u671B\u5F97\u5230\u7684\u73FE\u91D1\u9918\u984D\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},IPMT:{d:"\u57FA\u65BC\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u7BA1\u9053,\u8FD4\u56DE\u7D66\u5B9A\u671F\u6578\u5167\u5C0D\u6295\u8CC7\u7684\u5229\u606F\u511F\u9084\u984D\u3002",a:"\u57FA\u65BC\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u7BA1\u9053,\u8FD4\u56DE\u7D66\u5B9A\u671F\u6578\u5167\u5C0D\u6295\u8CC7\u7684\u5229\u606F\u511F\u9084\u984D\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"per",detail:"\u7528\u65BC\u8A08\u7B97\u5176\u5229\u606F\u6578\u984D\u7684\u671F\u6578,\u5FC5\u9808\u57281\u5230nper\u4E4B\u9593\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u7E3D\u671F\u6578\u3002"},{name:"pv",detail:"\u73FE\u503C,\u6216\u4E00\u7CFB\u5217\u672A\u4F86\u4ED8\u6B3E\u7684\u7576\u524D\u503C\u7684\u7D2F\u7A4D\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u672A\u4F86\u503C,\u6216\u5728\u6700\u5F8C\u4E00\u6B21\u4ED8\u6B3E\u5F8C\u5E0C\u671B\u5F97\u5230\u7684\u73FE\u91D1\u9918\u984D\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},PPMT:{d:"\u8FD4\u56DE\u6839\u64DA\u5B9A\u671F\u56FA\u5B9A\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\u800C\u5B9A\u7684\u6295\u8CC7\u5728\u5DF2\u77E5\u671F\u9593\u5167\u7684\u672C\u91D1\u511F\u4ED8\u984D\u3002",a:"\u8FD4\u56DE\u6839\u64DA\u5B9A\u671F\u56FA\u5B9A\u4ED8\u6B3E\u548C\u56FA\u5B9A\u5229\u7387\u800C\u5B9A\u7684\u6295\u8CC7\u5728\u5DF2\u77E5\u671F\u9593\u5167\u7684\u672C\u91D1\u511F\u4ED8\u984D\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"per",detail:"\u6307\u5B9A\u671F\u6578,\u8A72\u503C\u5FC5\u9808\u5728 1 \u5230 nper \u7BC4\u570D\u5167\u3002"},{name:"nper",detail:"\u5E74\u91D1\u7684\u4ED8\u6B3E\u7E3D\u671F\u6578\u3002"},{name:"pv",detail:"\u73FE\u503C\u5373\u4E00\u7CFB\u5217\u672A\u4F86\u4ED8\u6B3E\u7576\u524D\u503C\u7684\u7E3D\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u672A\u4F86\u503C,\u6216\u5728\u6700\u5F8C\u4E00\u6B21\u4ED8\u6B3E\u5F8C\u5E0C\u671B\u5F97\u5230\u7684\u73FE\u91D1\u9918\u984D\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},INTRATE:{d:"\u8FD4\u56DE\u5B8C\u5168\u6295\u8CC7\u578B\u8B49\u5238\u7684\u5229\u7387\u3002",a:"\u8FD4\u56DE\u5B8C\u5168\u6295\u8CC7\u578B\u8B49\u5238\u7684\u5229\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"investment",detail:"\u6709\u50F9\u8B49\u5238\u7684\u6295\u8CC7\u984D\u3002"},{name:"redemption",detail:"\u6709\u50F9\u8B49\u5238\u5230\u671F\u6642\u7684\u514C\u63DB\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},PRICE:{d:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u7684\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002",a:"\u8FD4\u56DE\u5B9A\u671F\u4ED8\u606F\u7684\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"rate",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"redemption",detail:"\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u6E05\u511F\u50F9\u503C\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},PRICEDISC:{d:"\u8FD4\u56DE\u6298\u50F9\u767C\u884C\u7684\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002",a:"\u8FD4\u56DE\u6298\u50F9\u767C\u884C\u7684\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"discount",detail:"\u6709\u4EF7\u8BC1\u5238\u7684\u8D34\u73B0\u7387\u3002"},{name:"redemption",detail:"\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u6E05\u511F\u50F9\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},PRICEMAT:{d:"\u8FD4\u56DE\u5230\u671F\u4ED8\u606F\u7684\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002",a:"\u8FD4\u56DE\u5230\u671F\u4ED8\u606F\u7684\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"issue",detail:"\u6709\u50F9\u8B49\u5238\u7684\u767C\u884C\u65E5\u3002"},{name:"rate",detail:"\u6709\u50F9\u8B49\u5238\u5728\u767C\u884C\u65E5\u7684\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},RECEIVED:{d:"\u8FD4\u56DE\u4E00\u6B21\u6027\u4ED8\u606F\u7684\u6709\u50F9\u8B49\u5238\u5230\u671F\u6536\u56DE\u7684\u91D1\u984D\u3002",a:"\u8FD4\u56DE\u4E00\u6B21\u6027\u4ED8\u606F\u7684\u6709\u50F9\u8B49\u5238\u5230\u671F\u6536\u56DE\u7684\u91D1\u984D\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"investment",detail:"\u6709\u50F9\u8B49\u5238\u7684\u6295\u8CC7\u984D\u3002"},{name:"discount",detail:"\u6709\u50F9\u8B49\u5238\u7684\u8CBC\u73FE\u7387\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},DISC:{d:"\u8FD4\u56DE\u6709\u50F9\u8B49\u5238\u7684\u8CBC\u73FE\u7387\u3002",a:"\u8FD4\u56DE\u6709\u50F9\u8B49\u5238\u7684\u8CBC\u73FE\u7387\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"pr",detail:"\u6709\u50F9\u8B49\u5238\u7684\u50F9\u683C\uFF08\u6309\u9762\u503C\u70BA\uFFE5100\u8A08\u7B97\uFF09\u3002"},{name:"redemption",detail:"\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684\u6E05\u511F\u50F9\u503C\u3002"},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},NPER:{d:"\u57FA\u65BC\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u7BA1\u9053,\u8FD4\u56DE\u67D0\u9805\u6295\u8CC7\u7684\u7E3D\u671F\u6578\u3002",a:"\u57FA\u65BC\u56FA\u5B9A\u5229\u7387\u53CA\u7B49\u984D\u5206\u671F\u4ED8\u6B3E\u7BA1\u9053,\u8FD4\u56DE\u67D0\u9805\u6295\u8CC7\u7684\u7E3D\u671F\u6578\u3002",p:[{name:"rate",detail:"\u5404\u671F\u5229\u7387\u3002"},{name:"pmt",detail:"\u5404\u671F\u6240\u61C9\u652F\u4ED8\u7684\u91D1\u984D,\u5728\u6574\u500B\u5E74\u91D1\u671F\u9593\u4FDD\u6301\u4E0D\u8B8A\u3002"},{name:"pv",detail:"\u73FE\u503C,\u6216\u4E00\u7CFB\u5217\u672A\u4F86\u4ED8\u6B3E\u7684\u7576\u524D\u503C\u7684\u7D2F\u7A4D\u548C\u3002"},{name:"fv",detail:"[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u672A\u4F86\u503C,\u6216\u5728\u6700\u5F8C\u4E00\u6B21\u4ED8\u6B3E\u5F8C\u5E0C\u671B\u5F97\u5230\u7684\u73FE\u91D1\u9918\u984D\u3002"},{name:"type",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BA0] - \u6307\u5B9A\u5404\u671F\u7684\u4ED8\u6B3E\u6642\u9593\u662F\u5728\u671F\u521D\u9084\u662F\u671F\u672B\u3002 + +0\u8868\u793A\u671F\u672B\uFF1B + +1\u8868\u793A\u671F\u521D\u3002`}]},SLN:{d:"\u8FD4\u56DE\u4E00\u500B\u671F\u9593\u5167\u7684\u8CC7\u7522\u7684\u76F4\u7DDA\u6298\u820A\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u671F\u9593\u5167\u7684\u8CC7\u7522\u7684\u76F4\u7DDA\u6298\u820A\u3002",p:[{name:"cost",detail:"\u8CC7\u7522\u539F\u503C\u3002"},{name:"salvage",detail:"\u6298\u820A\u672B\u5C3E\u6642\u7684\u503C\uFF08\u6709\u6642\u4E5F\u7A31\u70BA\u8CC7\u7522\u6B98\u503C\uFF09\u3002"},{name:"life",detail:"\u8CC7\u7522\u7684\u6298\u820A\u671F\u6578\uFF08\u6709\u6642\u4E5F\u7A31\u4F5C\u8CC7\u7522\u7684\u4F7F\u7528\u58FD\u547D\uFF09\u3002"}]},DURATION:{d:"\u8FD4\u56DE\u5047\u8A2D\u9762\u503C\uFFE5100\u7684\u5B9A\u671F\u4ED8\u606F\u6709\u50F9\u8B49\u5238\u7684\u4FEE\u6B63\u671F\u9650\u3002",a:"\u8FD4\u56DE\u5047\u8A2D\u9762\u503C\uFFE5100\u7684\u5B9A\u671F\u4ED8\u606F\u6709\u50F9\u8B49\u5238\u7684\u4FEE\u6B63\u671F\u9650\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"coupon",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},MDURATION:{d:"\u8FD4\u56DE\u5047\u8A2D\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684Macauley\u4FEE\u6B63\u671F\u9650\u3002",a:"\u8FD4\u56DE\u5047\u8A2D\u9762\u503C\uFFE5100\u7684\u6709\u50F9\u8B49\u5238\u7684Macauley\u4FEE\u6B63\u671F\u9650\u3002",p:[{name:"settlement",detail:"\u6709\u50F9\u8B49\u5238\u7684\u7D50\u7B97\u65E5\u3002\u6709\u50F9\u8B49\u5238\u7D50\u7B97\u65E5\u662F\u5728\u767C\u884C\u65E5\u4E4B\u5F8C,\u6709\u50F9\u8B49\u5238\u8CE3\u7D66\u8CFC\u8CB7\u8005\u7684\u65E5\u671F\u3002"},{name:"maturity",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5230\u671F\u65E5\u3002\u5230\u671F\u65E5\u662F\u6709\u50F9\u8B49\u5238\u6709\u6548\u671F\u622A\u6B62\u6642\u7684\u65E5\u671F\u3002"},{name:"coupon",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u606F\u7968\u5229\u7387\u3002"},{name:"yld",detail:"\u6709\u50F9\u8B49\u5238\u7684\u5E74\u6536\u76CA\u7387\u3002"},{name:"frequency",detail:`\u5E74\u4ED8\u606F\u6B21\u6578\u3002 + +\u5982\u679C\u6309\u5E74\u652F\u4ED8,frequency = 1\uFF1B + +\u6309\u534A\u5E74\u671F\u652F\u4ED8,frequency = 2\uFF1B + +\u6309\u5B63\u652F\u4ED8,frequency = 4\u3002`},{name:"basis",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u8A13\u793A\u8981\u4F7F\u7528\u54EA\u7A2E\u5929\u6578\u8A08\u7B97\u65B9\u6CD5\u3002 + +0\u8868\u793A"\u7F8E\u570B\uFF08NASD\uFF0930/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u6309\u7167\u7F8E\u570B\u5168\u570B\u8B49\u5238\u4EA4\u6613\u5546\u5354\u6703\u6A19\u6E96,\u5047\u8A2D\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929,\u4E26\u5C0D\u6240\u8F38\u5165\u7684\u6708\u672B\u65E5\u671F\u9032\u884C\u5177\u9AD4\u8ABF\u6574\u3002 + +1\u8868\u793A"\u5BE6\u969B/\u5BE6\u969B"\u65B9\u6CD5-\u6B64\u65B9\u6CD5\u8A08\u7B97\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u548C\u6240\u6D89\u53CA\u7684\u5E74\u4EFD\u4E2D\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97\u3002\u6B64\u65B9\u6CD5\u7528\u65BC\u7F8E\u570B\u9577\u671F\u50B5\u5238,\u4E5F\u662F\u5728\u975E\u8CA1\u7D93\u7528\u9014\u65B9\u9762\u4F7F\u7528\u6700\u591A\u7684\u65B9\u6CD5\u3002 + +2\u8868\u793A"\u5BE6\u969B/360"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97, \u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA360\u5929\u3002 + +3\u8868\u793A"\u5BE6\u969B/365"\u65B9\u6CD5 - \u6B64\u65B9\u6CD5\u57FA\u65BC\u6307\u5B9A\u65E5\u671F\u4E4B\u9593\u7684\u5BE6\u969B\u5929\u6578\u9032\u884C\u8A08\u7B97,\u4F46\u5047\u5B9A\u6BCF\u5E74\u70BA365\u5929\u3002 + +4\u8868\u793A"\u6B50\u6D3230 / 360"\u65B9\u6CD5-\u985E\u4F3C\u65BC0,\u6B64\u65B9\u6CD5\u57FA\u65BC\u6BCF\u670830\u5929\u3001\u6BCF\u5E74360\u5929\u9032\u884C\u8A08\u7B97,\u4F46\u6309\u7167\u6B50\u6D32\u91D1\u878D\u6163\u4F8B\u5C0D\u6708\u672B\u65E5\u671F\u9032\u884C\u8ABF\u6574\u3002`}]},BIN2DEC:{d:"\u5C07\u4E8C\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u3002",a:"\u5C07\u4E8C\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768410\u4F4D\u4E8C\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u5C0D\u65BC\u6B64\u51FD\u6578,\u6700\u5927\u7684\u6B63\u6578\u8F38\u5165\u503C\u70BA0111111111,\u6700\u5C0F\u7684\u8CA0\u6578\u8F38\u5165\u503C\u70BA1000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u4E8C\u9032\u4F4D\u6578,\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,BIN2DEC\uFF08100\uFF09\u548CBIN2DEC\uFF08"100"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA4\u3002`}]},BIN2HEX:{d:"\u5C07\u4E8C\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u516D\u9032\u4F4D\u6578\u3002",a:"\u5C07\u4E8C\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u516D\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768410\u4F4D\u4E8C\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u5C0D\u65BC\u6B64\u51FD\u6578,\u6700\u5927\u7684\u6B63\u6578\u8F38\u5165\u503C\u70BA0111111111,\u6700\u5C0F\u7684\u8CA0\u6578\u8F38\u5165\u503C\u70BA1000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u4E8C\u9032\u4F4D\u6578,\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,BIN2HEX\uFF0811111\uFF09\u548CBIN2HEX\uFF08"11111"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA1F\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] -\u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002\u4F8B\u5982,BIN2HEX\uFF08"11111",8\uFF09\u6240\u5F97\u7684\u7D50\u679C\u503C\u70BA0000001F\u3002 + +\u5982\u679C\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u70BA1,\u5247\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u7576\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u5927\u65BC\u7B49\u65BC1000000000\u6642\u5FFD\u7565\u6B64\u503C\u3002`}]},BIN2OCT:{d:"\u4E8C\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u516B\u9032\u5236\u6578\u3002",a:"\u4E8C\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u516B\u9032\u5236\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u7684\u5E36\u7B26\u865F\u768410\u4F4D\u4E8C\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u5C0D\u65BC\u6B64\u51FD\u6578,\u6700\u5927\u7684\u6B63\u6578\u8F38\u5165\u503C\u70BA0111111111,\u6700\u5C0F\u7684\u8CA0\u6578\u8F38\u5165\u503C\u70BA1000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u4E8C\u9032\u4F4D\u6578,\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,BIN2OCT\uFF0811111\uFF09\u548CBIN2OCT\uFF08"11111"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA37\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002\u4F8B\u5982,BIN2OCT\uFF08"11111"\uFF09\u5F97\u5230\u7684\u7D50\u679C\u503C\u70BA00000037\u3002 + +\u5982\u679C\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u70BA1,\u5247\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u7576\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u5927\u65BC\u7B49\u65BC1000000000\u6642\u5FFD\u7565\u6B64\u503C\u3002`}]},DEC2BIN:{d:"\u5C07\u5341\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u4E8C\u9032\u4F4D\u6578\u3002",a:"\u5C07\u5341\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u4E8C\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u5341\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5C0D\u65BC\u6B64\u51FD\u6578,\u6700\u5927\u7684\u6B63\u6578\u8F38\u5165\u503C\u70BA511,\u6700\u5C0F\u7684\u8CA0\u6578\u8F38\u5165\u503C\u70BA-512\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5341\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u5341\u9032\u4F4D\u6578,\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,DEC2BIN\uFF08199\uFF09\u548CDEC2BIN\uFF08"199"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA11000111\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5341\u9032\u4F4D\u6578\u70BA\u8CA0\u6578,\u5247\u5FFD\u7565\u6B64\u503C\u3002`}]},DEC2HEX:{d:"\u5C07\u5341\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u516D\u9032\u4F4D\u6578\u3002",a:"\u5C07\u5341\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u516D\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u5341\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA549755813887,\u6700\u5C0F\u8CA0\u6578\u503C\u70BA-549755814888\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5341\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u5341\u9032\u4F4D\u6578,\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,DEC2HEX\uFF08100\uFF09\u548CDEC2HEX\uFF08"100"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA64\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5341\u9032\u4F4D\u6578\u70BA\u8CA0\u6578,\u5247\u5FFD\u7565\u6B64\u503C\u3002`}]},DEC2OCT:{d:"\u5C07\u5341\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u516B\u9032\u5236\u6578\u3002",a:"\u5C07\u5341\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u516B\u9032\u5236\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u7684\u5341\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA536870911,\u6700\u5C0F\u8CA0\u6578\u503C\u70BA-53687092\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5341\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u5341\u9032\u4F4D\u6578,\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,DEC2OCT\uFF08199\uFF09\u548CDEC2OCT\uFF08"199"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA307\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] -\u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5341\u9032\u4F4D\u6578\u70BA\u8CA0\u6578,\u5247\u5FFD\u7565\u6B64\u503C \u3002`}]},HEX2BIN:{d:"\u5C07\u5341\u516D\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u4E8C\u9032\u4F4D\u6578\u3002",a:"\u5C07\u5341\u516D\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u4E8C\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768440\u4F4D\u5341\u516D\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA1FF,\u6700\u5C0F\u8CA0\u6578\u503C\u70BAFFFFFFFE00\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u5341\u516D\u9032\u4F4D\u6578,\u51FD\u6578\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,HEX2BIN\uFF08199\uFF09\u548CHEX2BIN\uFF08"199"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA110011001\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u70BA1,\u5247\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u7576\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u5927\u65BC\u7B49\u65BC8000000000\u6642\u5FFD\u7565\u6B64\u503C\u3002`}]},HEX2DEC:{d:"\u5C07\u5341\u516D\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u3002",a:"\u5C07\u5341\u516D\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768440\u4F4D\u5341\u516D\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA7fffffffff,\u6700\u5C0F\u8CA0\u6578\u503C\u70BA8000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u5341\u516D\u9032\u4F4D\u6578,\u51FD\u6578\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,HEX2DEC\uFF08199\uFF09\u548CHEX2DEC\uFF08"199"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA409 \u3002`}]},HEX2OCT:{d:"\u5C07\u5341\u516D\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u516B\u9032\u5236\u6578\u3002",a:"\u5C07\u5341\u516D\u9032\u4F4D\u6578\u8F49\u63DB\u70BA\u516B\u9032\u5236\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u7684\u5E36\u7B26\u865F\u768440\u4F4D\u5341\u516D\u9032\u4F4D\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA1FFFFFFF,\u6700\u5C0F\u8CA0\u6578\u503C\u70BAFFE0000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u662F\u6709\u6548\u7684\u5341\u516D\u9032\u4F4D\u6578,\u51FD\u6578\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,HEX2OCT\uFF08199\uFF09\u548CHEX2OCT\uFF08"199"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA631\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u6700\u9AD8\u4F4D\u70BA1,\u5247\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u7576\u7D66\u5B9A\u7684\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u5927\u65BC\u7B49\u65BC8000000000\u6642\u5FFD\u7565\u6B64\u503C\u3002`}]},OCT2BIN:{d:"\u5C07\u516B\u9032\u5236\u6578\u8F49\u63DB\u70BA\u4E8C\u9032\u4F4D\u6578\u3002",a:"\u5C07\u516B\u9032\u5236\u6578\u8F49\u63DB\u70BA\u4E8C\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u4E8C\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768430\u4F4D\u516B\u9032\u5236\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA777,\u6700\u5C0F\u8CA0\u6578\u503C\u70BA7777777000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u662F\u6709\u6548\u7684\u516B\u9032\u5236\u6578,\u51FD\u6578\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,OCT2BIN\uFF08177\uFF09\u548COCT2BIN\uFF08"177"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA1111111\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u7684\u6700\u9AD8\u4F4D\u70BA1,\u5247\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u7576\u7D66\u5B9A\u7684\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u5927\u65BC\u7B49\u65BC4000000000\u6642\u5FFD\u7565\u6B64\u503C\u3002`}]},OCT2DEC:{d:"\u5C07\u516B\u9032\u5236\u6578\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u3002",a:"\u5C07\u516B\u9032\u5236\u6578\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5341\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768430\u4F4D\u516B\u9032\u5236\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684ba\u9032\u5236\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA3777777777,\u6700\u5C0F\u8CA0\u6578\u503C\u70BA4000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u662F\u6709\u6548\u7684\u516B\u9032\u5236\u6578,\u51FD\u6578\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,OCT2DEC\uFF08177\uFF09\u548COCT2DEC\uFF08"177"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA127\u3002`}]},OCT2HEX:{d:"\u5C07\u516B\u9032\u5236\u6578\u8F49\u63DB\u70BA\u5341\u516D\u9032\u4F4D\u6578\u3002",a:"\u5C07\u516B\u9032\u5236\u6578\u8F49\u63DB\u70BA\u5341\u516D\u9032\u4F4D\u6578\u3002",p:[{name:"number",detail:`\u8981\u8F49\u63DB\u70BA\u5E36\u7B26\u865F\u7684\u5341\u516D\u9032\u4F4D\u6578\u7684\u5E36\u7B26\u865F\u768430\u4F4D\u516B\u9032\u5236\u6578\u503C\uFF08\u4EE5\u5B57\u4E32\u5F62\u5F0F\u63D0\u4F9B\uFF09\u3002 + +\u5E36\u7B26\u865F\u7684ba\u9032\u5236\u6578\u7684\u6700\u9AD8\u4F4D\u662F\u7B26\u865F\u4F4D\uFF1B\u4E5F\u5C31\u662F\u8AAA,\u8CA0\u6578\u662F\u4EE5\u4E8C\u7684\u88DC\u6578\u5F62\u5F0F\u8868\u793A\u7684\u3002 + +\u6B64\u51FD\u6578\u53EF\u63A5\u53D7\u7684\u6700\u5927\u6B63\u6578\u503C\u70BA3777777777,\u6700\u5C0F\u8CA0\u6578\u503C\u70BA4000000000\u3002 + +\u5982\u679C\u6240\u63D0\u4F9B\u7684\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u662F\u6709\u6548\u7684\u516B\u9032\u5236\u6578,\u51FD\u6578\u6703\u81EA\u52D5\u5C07\u5176\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u5B57\u4E32\u8F38\u5165\u3002\u4F8B\u5982,OCT2HEX\uFF08177\uFF09\u548COCT2HEX\uFF08"177"\uFF09\u5F97\u51FA\u7684\u7D50\u679C\u76F8\u540C,\u5747\u70BA7F\u3002`},{name:"places",detail:`[ \u53EF\u9078 ] - \u7D50\u679C\u4E2D\u8981\u78BA\u4FDD\u7684\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u8A2D\u5B9A\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u7D50\u679C\u4E2D\u7684\u6709\u6548\u4F4D\u6578,\u5247\u5728\u7D50\u679C\u7684\u5DE6\u5074\u586B\u51450,\u4F7F\u7E3D\u6709\u6548\u4F4D\u6578\u9054\u5230\u6709\u6548\u4F4D\u6578\u3002 + +\u5982\u679C\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u7684\u6700\u9AD8\u4F4D\u70BA1,\u5247\u5FFD\u7565\u6B64\u503C\uFF1B\u5373\u7576\u7D66\u5B9A\u7684\u5E36\u7B26\u865F\u7684\u516B\u9032\u5236\u6578\u5927\u65BC\u7B49\u65BC4000000000\u6642\u5FFD\u7565\u6B64\u503C\u3002`}]},COMPLEX:{d:"\u5C07\u5BE6\u4FC2\u6578\u53CA\u865B\u4FC2\u6578\u8F49\u63DB\u70BA x+yi \u6216 x+yj \u5F62\u5F0F\u7684\u8907\u6578\u3002",a:"\u5C07\u5BE6\u4FC2\u6578\u53CA\u865B\u4FC2\u6578\u8F49\u63DB\u70BA x+yi \u6216 x+yj \u5F62\u5F0F\u7684\u8907\u6578\u3002",p:[{name:"real_num",detail:"\u8907\u6578\u7684\u5BE6\u4FC2\u6578\u3002"},{name:"i_num",detail:"\u8907\u6578\u7684\u865B\u4FC2\u6578\u3002"},{name:"suffix",detail:'[\u53EF\u9078 - \u9ED8\u8A8D\u70BA"i"] - \u8907\u6578\u4E2D\u865B\u4FC2\u6578\u7684\u5C3E\u78BC\u3002'}]},IMREAL:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u5BE6\u4FC2\u6578\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u5BE6\u4FC2\u6578\u3002",p:[{name:"inumber",detail:"\u9700\u8981\u8A08\u7B97\u5176\u5BE6\u4FC2\u6578\u7684\u8907\u6578\u3002"}]},IMAGINARY:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u865B\u4FC2\u6578\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u865B\u4FC2\u6578\u3002",p:[{name:"inumber",detail:"\u9700\u8981\u8A08\u7B97\u5176\u865B\u4FC2\u6578\u7684\u8907\u6578\u3002"}]},IMCONJUGATE:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u5171\u8EDB\u8907\u6578\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u5171\u8EDB\u8907\u6578\u3002",p:[{name:"inumber",detail:"\u9700\u8981\u8A08\u7B97\u5176\u5171\u8EDB\u6578\u7684\u8907\u6578\u3002"}]},IMABS:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u7D55\u5C0D\u503C\uFF08\u6A21\uFF09\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u8907\u6578\u7684\u7D55\u5C0D\u503C\uFF08\u6A21\uFF09\u3002",p:[{name:"inumber",detail:"\u8981\u8A08\u7B97\u5176\u7D55\u5C0D\u503C\u7684\u8907\u6578\u3002"}]},DELTA:{d:"\u6AA2\u9A57\u5169\u500B\u503C\u662F\u5426\u76F8\u7B49\u3002\u5982\u679C number1=number2,\u5247\u8FD4\u56DE1\uFF1B\u5426\u5247\u8FD4\u56DE0\u3002",a:"\u6AA2\u9A57\u5169\u500B\u503C\u662F\u5426\u76F8\u7B49\u3002\u5982\u679C number1=number2,\u5247\u8FD4\u56DE1\uFF1B\u5426\u5247\u8FD4\u56DE0\u3002",p:[{name:"number1",detail:"\u7B2C\u4E00\u500B\u6578\u4F4D\u3002"},{name:"number2",detail:"[\u53EF\u9078 - \u9ED8\u8A8D\u70BA0] - \u7B2C\u4E8C\u500B\u6578\u4F4D\u3002"}]},IMSUM:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u500B\u8907\u6578\u7684\u548C\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u500B\u8907\u6578\u7684\u548C\u3002",p:[{name:"inumber1",detail:"\u8981\u76F8\u52A0\u7684\u7B2C\u4E00\u500B\u8907\u6578"},{name:"inumber2, \u2026",detail:"[\u53EF\u9078] -\u8981\u8207\u503C1\u76F8\u52A0\u7684\u5176\u4ED6\u8907\u6578"}]},IMSUB:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u5169\u500B\u8907\u6578\u7684\u5DEE\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u5169\u500B\u8907\u6578\u7684\u5DEE\u3002",p:[{name:"inumber1",detail:"\u5F9E\uFF08\u8907\uFF09\u6578\u4E2D\u51CF\u53BB inumber2\u3002"},{name:"inumber2",detail:"\u5F9E inumber1 \u4E2D\u51CF\uFF08\u8907\uFF09\u6578\u3002"}]},IMPRODUCT:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u500B\u8907\u6578\u7684\u4E58\u7A4D\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684 1 \u81F3 255 \u500B\u8907\u6578\u7684\u4E58\u7A4D\u3002",p:[{name:"inumber1",detail:"\u7528\u65BC\u8A08\u7B97\u4E58\u7A4D\u7684\u7B2C\u4E00\u500B\u8907\u6578"},{name:"inumber2, \u2026",detail:"[\u53EF\u9078] -\u8981\u76F8\u4E58\u7684\u5176\u4ED6\u8907\u6578\u3002"}]},IMDIV:{d:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u5169\u500B\u8907\u6578\u7684\u5546\u3002",a:"\u8FD4\u56DE\u4EE5 x+yi \u6216 x+yj \u6587\u672C\u683C\u5F0F\u8868\u793A\u7684\u5169\u500B\u8907\u6578\u7684\u5546\u3002",p:[{name:"inumber1",detail:"\u8907\u6578\u5206\u5B50\u6216\u88AB\u9664\u6578\u3002"},{name:"inumber2",detail:"\u8907\u6578\u5206\u6BCD\u6216\u9664\u6578\u3002"}]},NOT:{d:'\u8FD4\u56DE\u67D0\u500B\u908F\u8F2F\u503C\u7684\u76F8\u53CD\u503C-"NOT\uFF08TRUE\uFF08\uFF09\uFF09"\u5C07\u8FD4\u56DEFALSE\uFF1B"NOT\uFF08FALSE\uFF08\uFF09\uFF09"\u5C07\u8FD4\u56DETRUE\u3002',a:'\u8FD4\u56DE\u67D0\u500B\u908F\u8F2F\u503C\u7684\u76F8\u53CD\u503C-"NOT\uFF08TRUE\uFF08\uFF09\uFF09"\u5C07\u8FD4\u56DEFALSE\uFF1B"NOT\uFF08FALSE\uFF08\uFF09\uFF09"\u5C07\u8FD4\u56DETRUE\u3002',p:[{name:"logical",detail:"\u8A08\u7B97\u7D50\u679C\u70BATRUE\u6216FALSE\u7684\u4EFB\u4F55\u503C\u6216\u904B\u7B97\u5F0F\u3002"}]},TRUE:{d:"\u8FD4\u56DE\u908F\u8F2F\u503C TRUE\u3002",a:"\u8FD4\u56DE\u908F\u8F2F\u503C TRUE\u3002",p:[]},FALSE:{d:"\u8FD4\u56DE\u908F\u8F2F\u503C FALSE\u3002",a:"\u8FD4\u56DE\u908F\u8F2F\u503C FALSE\u3002",p:[]},AND:{d:"\u6240\u6709\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BATRUE\u6642,\u8FD4\u56DETRUE\uFF1B\u53EA\u8981\u6709\u4E00\u500B\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BAFALSE,\u5373\u8FD4\u56DEFALSE\u3002",a:"\u6240\u6709\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BATRUE\u6642,\u8FD4\u56DETRUE\uFF1B\u53EA\u8981\u6709\u4E00\u500B\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BAFALSE,\u5373\u8FD4\u56DEFALSE\u3002",p:[{name:"logical1",detail:"\u8981\u6E2C\u8A66\u7684\u7B2C\u4E00\u500B\u689D\u4EF6,\u5176\u8A08\u7B97\u7D50\u679C\u53EF\u4EE5\u70BATRUE\u6216FALSE\u3002"},{name:"logical2,...",detail:"[\u53EF\u9078] - \u8981\u6E2C\u8A66\u7684\u5176\u4ED6\u689D\u4EF6,\u5176\u8A08\u7B97\u7D50\u679C\u53EF\u4EE5\u70BATRUE\u6216FALSE,\u6700\u591A\u53EF\u5305\u542B255\u500B\u689D\u4EF6\u3002"}]},IFERROR:{d:"\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u4E0D\u662F\u932F\u8AA4\u503C,\u5C31\u8FD4\u56DE\u7B2C\u4E00\u500B\u53C3\u6578\uFF1B\u5426\u5247,\u8FD4\u56DE\u7B2C\u4E8C\u500B\u53C3\u6578\u3002",a:"\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u4E0D\u662F\u932F\u8AA4\u503C",p:[{name:"value",detail:"\u6AA2\u67E5\u662F\u5426\u5B58\u5728\u932F\u8AA4\u7684\u53C3\u6578\u3002"},{name:"value_if_error",detail:"\u516C\u5F0F\u7684\u8A08\u7B97\u7D50\u679C\u932F\u8AA4\u6642\u8FD4\u56DE\u7684\u503C\u3002\u8A08\u7B97\u4EE5\u4E0B\u932F\u8AA4\u985E\u578B:#N/A\u3001#VALUE\uFF01\u3001#REF\uFF01\u3001#DIV/0\uFF01\u3001#NUM\uFF01\u3001#NAME\uFF1F\u6216#NULL\uFF01\u3002"}]},IF:{d:"\u7576\u908F\u8F2F\u904B\u7B97\u5F0F\u7684\u503C\u70BATRUE\u6642\u8FD4\u56DE\u4E00\u500B\u503C,\u800C\u7576\u5176\u70BAFALSE\u6642\u8FD4\u56DE\u53E6\u4E00\u500B\u503C\u3002",a:"\u7576\u908F\u8F2F\u904B\u7B97\u5F0F\u7684\u503C\u70BATRUE\u6642\u8FD4\u56DE\u4E00\u500B\u503C,\u800C\u7576\u5176\u70BAFALSE\u6642\u8FD4\u56DE\u53E6\u4E00\u500B\u503C\u3002",p:[{name:"logical_test",detail:"\u4E00\u500B\u904B\u7B97\u5F0F\u6216\u5C0D\u5305\u542B\u904B\u7B97\u5F0F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u8A72\u904B\u7B97\u5F0F\u4EE3\u8868\u67D0\u7A2E\u908F\u8F2F\u503C\uFF08\u5373TRUE\u6216FALSE\uFF09\u3002"},{name:"value_if_true",detail:"\u7576\u908F\u8F2F\u904B\u7B97\u5F0F\u70BATRUE\u6642\u7684\u8FD4\u56DE\u503C\u3002"},{name:"value_if_false",detail:"[\u53EF\u9078 - \u9ED8\u8A8D\u70BA\u7A7A\u767D] - \u7576\u908F\u8F2F\u904B\u7B97\u5F0F\u7B49\u65BCFALSE\u6642\u7684\u51FD\u6578\u8FD4\u56DE\u503C\u3002"}]},OR:{d:"\u53EA\u8981\u6709\u4E00\u500B\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BATRUE\u6642,\u8FD4\u56DETRUE\uFF1B\u6240\u6709\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BAFALSE,\u5373\u8FD4\u56DEFALSE\u3002",a:"\u53EA\u8981\u6709\u4E00\u500B\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BATRUE\u6642,\u8FD4\u56DETRUE\uFF1B\u6240\u6709\u53C3\u6578\u7684\u8A08\u7B97\u7D50\u679C\u70BAFALSE,\u5373\u8FD4\u56DEFALSE\u3002",p:[{name:"logical1",detail:"\u8981\u6E2C\u8A66\u7684\u7B2C\u4E00\u500B\u689D\u4EF6,\u5176\u8A08\u7B97\u7D50\u679C\u53EF\u4EE5\u70BATRUE\u6216FALSE\u3002"},{name:"\u908F\u8F2F\u904B\u7B97\u5F0F2",detail:"[\u53EF\u9078] - \u5176\u4ED6\u904B\u7B97\u5F0F\u6216\u5C0D\u5305\u542B\u904B\u7B97\u5F0F\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u9019\u4E9B\u904B\u7B97\u5F0F\u4EE3\u8868\u67D0\u7A2E\u908F\u8F2F\u503C\uFF08\u5373TRUE\u6216FALSE\uFF09\u6216\u8005\u53EF\u4EE5\u5F37\u5236\u8F49\u63DB\u70BA\u908F\u8F2F\u503C\u3002"}]},NE:{d:'\u5982\u679C\u6307\u5B9A\u7684\u503C\u4E0D\u76F8\u7B49,\u5247\u8FD4\u56DE"TRUE"\uFF1B\u5426\u5247\u8FD4\u56DE"FALSE"\u3002\u76F8\u7576\u65BC"<>"\u904B\u7B97\u5B50\u3002',a:'\u5982\u679C\u6307\u5B9A\u7684\u503C\u4E0D\u76F8\u7B49,\u5247\u8FD4\u56DE"TRUE"\uFF1B\u5426\u5247\u8FD4\u56DE"FALSE"\u3002\u76F8\u7576\u65BC"<>"\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u7B2C\u4E00\u500B\u503C\u3002"},{name:"value2",detail:"\u8981\u6AA2\u67E5\u662F\u5426\u8207 value1 \u4E0D\u76F8\u7B49\u7684\u503C\u3002"}]},EQ:{d:'\u5982\u679C\u6307\u5B9A\u7684\u503C\u76F8\u7B49,\u5247\u8FD4\u56DE"TRUE"\uFF1B\u5426\u5247\u8FD4\u56DE"FALSE"\u3002\u76F8\u7576\u65BC"="\u904B\u7B97\u5B50\u3002',a:'\u5982\u679C\u6307\u5B9A\u7684\u503C\u76F8\u7B49,\u5247\u8FD4\u56DE"TRUE"\uFF1B\u5426\u5247\u8FD4\u56DE"FALSE"\u3002\u76F8\u7576\u65BC"="\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u7B2C\u4E00\u500B\u503C\u3002"},{name:"value2",detail:"\u8981\u6AA2\u67E5\u662F\u5426\u8207value1\u76F8\u7B49\u7684\u503C\u3002"}]},GT:{d:!1,a:!1,p:[{name:"value1",detail:"\u8981\u6E2C\u8A66\u5176\u662F\u5426\u5927\u65BC value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u500B\u503C\u3002"}]},GTE:{d:'\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u5927\u65BC\u6216\u7B49\u65BC\u7B2C\u4E8C\u500B\uFF0C\u5247\u8FD4\u56DETRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002\u76F8\u7576\u65BC">="\u904B\u7B97\u5B50\u3002',a:'\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u5927\u65BC\u6216\u7B49\u65BC\u7B2C\u4E8C\u500B\uFF0C\u5247\u8FD4\u56DETRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002\u76F8\u7576\u65BC">="\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5927\u4E8E\u7B49\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u500B\u503C\u3002"}]},LT:{d:'\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u56B4\u683C\u5C0F\u65BC\u7B2C\u4E8C\u500B\uFF0C\u5247\u8FD4\u56DETRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002\u76F8\u7576\u65BC"<"\u904B\u7B97\u5B50\u3002',a:'\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u56B4\u683C\u5C0F\u65BC\u7B2C\u4E8C\u500B\uFF0C\u5247\u8FD4\u56DETRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002\u76F8\u7576\u65BC"<"\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5C0F\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u500B\u503C\u3002"}]},LTE:{d:'\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u5C0F\u65BC\u6216\u7B49\u65BC\u7B2C\u4E8C\u500B\uFF0C\u5247\u8FD4\u56DETRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002\u76F8\u7576\u65BC"<="\u904B\u7B97\u5B50\u3002',a:'\u5982\u679C\u7B2C\u4E00\u500B\u53C3\u6578\u5C0F\u65BC\u6216\u7B49\u65BC\u7B2C\u4E8C\u500B\uFF0C\u5247\u8FD4\u56DETRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002\u76F8\u7576\u65BC"<="\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u8981\u6D4B\u8BD5\u5176\u662F\u5426\u5C0F\u4E8E\u7B49\u4E8E value2 \u7684\u503C\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u500B\u503C\u3002"}]},ADD:{d:'\u8FD4\u56DE\u5169\u500B\u6578\u503C\u4E4B\u548C\u3002\u76F8\u7576\u65BC"+"\u904B\u7B97\u5B50\u3002',a:'\u8FD4\u56DE\u5169\u500B\u6578\u503C\u4E4B\u548C\u3002\u76F8\u7576\u65BC"+"\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u7B2C\u4E00\u500B\u52A0\u6578\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u500B\u52A0\u6578\u3002"}]},MINUS:{d:'\u8FD4\u56DE\u5169\u500B\u6578\u503C\u4E4B\u5DEE\u3002\u76F8\u7576\u65BC"-"\u904B\u7B97\u5B50\u3002',a:'\u8FD4\u56DE\u5169\u500B\u6578\u503C\u4E4B\u5DEE\u3002\u76F8\u7576\u65BC"-"\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u88AB\u6E1B\u6578,\u5373\u8981\u5C0D\u5176\u8A08\u51CF\u7684\u6578\u503C\u3002"},{name:"value2",detail:"\u6E1B\u6578,\u5373\u8981\u5F9Evalue1\u4E2D\u51CF\u9664\u7684\u6578\u503C\u3002"}]},MULTIPLY:{d:'\u8FD4\u56DE\u5169\u500B\u6578\u7684\u4E58\u7A4D\u3002\u76F8\u7576\u65BC"*"\u904B\u7B97\u5B50\u3002',a:'\u8FD4\u56DE\u5169\u500B\u6578\u7684\u4E58\u7A4D\u3002\u76F8\u7576\u65BC"*"\u904B\u7B97\u5B50\u3002',p:[{name:"value1",detail:"\u7B2C\u4E00\u500B\u4E58\u6578\u3002"},{name:"value2",detail:"\u7B2C\u4E8C\u500B\u4E58\u6578\u3002"}]},DIVIDE:{d:"\u8FD4\u56DE\u5169\u500B\u53C3\u6578\u76F8\u9664\u6240\u5F97\u7684\u7D50\u679C\u3002\u76F8\u7576\u65BC`/`\u904B\u7B97\u5B50\u3002",a:"\u8FD4\u56DE\u5169\u500B\u53C3\u6578\u76F8\u9664\u6240\u5F97\u7684\u7D50\u679C\u3002\u76F8\u7576\u65BC`/`\u904B\u7B97\u5B50\u3002",p:[{name:"value1",detail:"\u8981\u88AB\u9664\u7684\u6578\u503C\u3002"},{name:"value2",detail:`\u7528\u65BC\u9664\u5176\u4ED6\u6578\u7684\u6578\u503C\u3002 + +\u9664\u6578\u4E0D\u5F97\u70BA0\u3002`}]},CONCAT:{d:"\u8FD4\u56DE\u5169\u500B\u503C\u7684\u4E32\u806F\u3002\u76F8\u7576\u65BC`&`\u904B\u7B97\u5B50\u3002",a:"\u8FD4\u56DE\u5169\u500B\u503C\u7684\u4E32\u806F\u3002\u76F8\u7576\u65BC`&`\u904B\u7B97\u5B50\u3002",p:[{name:"value1",detail:"value2 \u5C07\u9644\u65BC\u5176\u5F8C\u7684\u503C\u3002"},{name:"value2",detail:"\u8981\u9644\u65BC value1 \u4E4B\u5F8C\u7684\u503C\u3002"}]},UNARY_PERCENT:{d:'\u8FD4\u56DE\u6309\u767E\u5206\u6BD4\u89E3\u91CB\u7684\u6578\u503C\u3002\u4F8B\u5982,"UNARY_PERCENT\uFF08100\uFF09"\u7B49\u65BC1\u3002',a:'\u8FD4\u56DE\u6309\u767E\u5206\u6BD4\u89E3\u91CB\u7684\u6578\u503C\u3002\u4F8B\u5982,"UNARY_PERCENT\uFF08100\uFF09"\u7B49\u65BC1\u3002',p:[{name:"number",detail:"\u8981\u4F5C\u70BA\u767E\u5206\u6BD4\u89E3\u91CB\u7684\u6578\u503C\u3002"}]},CONCATENATE:{d:"\u5C07\u5169\u500B\u6216\u591A\u500B\u6587\u5B57\u5B57\u4E32\u806F\u63A5\u70BA\u4E00\u500B\u5B57\u4E32\u3002",a:"\u5C07\u5169\u500B\u6216\u591A\u500B\u6587\u5B57\u5B57\u4E32\u806F\u63A5\u70BA\u4E00\u500B\u5B57\u4E32\u3002",p:[{name:"text1",detail:"\u521D\u59CB\u5B57\u4E32\u3002"},{name:"text2\u2026",detail:"[\u53EF\u9078] - \u8981\u6309\u9806\u5E8F\u9023\u63A5\u5728\u4E00\u8D77\u7684\u5176\u4ED6\u5B57\u4E32\u3002"}]},CODE:{d:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u5B57\u4E32\u4E2D\u9996\u5B57\u5143\u7684Unicode\u6620\u5C04\u503C\u3002",a:"\u8FD4\u56DE\u6240\u63D0\u4F9B\u7684\u5B57\u4E32\u4E2D\u9996\u5B57\u5143\u7684Unicode\u6620\u5C04\u503C\u3002",p:[{name:"text",detail:"\u8981\u8FD4\u56DE\u5176\u9996\u5B57\u5143\u7684Unicode\u6620\u5C04\u503C\u7684\u5B57\u4E32\u3002"}]},CHAR:{d:"\u6309\u7167\u7576\u524DUnicode\u7DE8\u78BC\u8868,\u5C07\u6578\u4F4D\u8F49\u63DB\u70BA\u5C0D\u61C9\u7684\u5B57\u5143\u3002",a:"\u6309\u7167\u7576\u524DUnicode\u7DE8\u78BC\u8868,\u5C07\u6578\u4F4D\u8F49\u63DB\u70BA\u5C0D\u61C9\u7684\u5B57\u5143\u3002",p:[{name:"number",detail:"\u4ECB\u65BC1\u5230255\u4E4B\u9593\u7684\u6578\u4F4D\u3002"}]},ARABIC:{d:"\u5C07\u7F85\u99AC\u6578\u5B57\u8F49\u63DB\u70BA\u963F\u62C9\u4F2F\u6578\u5B57\u3002",a:"\u5C07\u7F85\u99AC\u6578\u5B57\u8F49\u63DB\u70BA\u963F\u62C9\u4F2F\u6578\u5B57\u3002",p:[{name:"text",detail:"\u8981\u8F49\u63DB\u683C\u5F0F\u7684\u7F85\u99AC\u6578\u5B57"}]},ROMAN:{d:"\u5C07\u6578\u4F4D\u683C\u5F0F\u8A2D\u5B9A\u70BA\u7F85\u99AC\u6578\u5B57\u5F62\u5F0F\u3002",a:"\u5C07\u6578\u4F4D\u683C\u5F0F\u8A2D\u5B9A\u70BA\u7F85\u99AC\u6578\u5B57\u5F62\u5F0F\u3002",p:[{name:"number",detail:"\u8981\u8A2D\u5B9A\u683C\u5F0F\u7684\u6578\u4F4D,\u4ECB\u65BC1\u52303999\u4E4B\u9593\uFF08\u5305\u62EC\u9019\u5169\u500B\u6578\u4F4D\uFF09\u3002"}]},REGEXEXTRACT:{d:"\u6309\u7167\u898F\u5247\u904B\u7B97\u5F0F\u9078\u53D6\u5339\u914D\u7684\u5B50\u4E32\u3002",a:"\u6309\u7167\u898F\u5247\u904B\u7B97\u5F0F\u9078\u53D6\u5339\u914D\u7684\u5B50\u4E32\u3002",p:[{name:"text",detail:"\u8F38\u5165\u6587\u5B57\u3002"},{name:"regular_expression",detail:"\u6B64\u51FD\u6578\u5C07\u8FD4\u56DE\u6587\u5B57\u4E2D\u7B26\u5408\u6B64\u904B\u7B97\u5F0F\u7684\u7B2C\u4E00\u500B\u5B50\u4E32\u3002"}]},REGEXMATCH:{d:"\u5224\u65B7\u4E00\u6BB5\u6587\u5B57\u662F\u5426\u8207\u898F\u5247\u904B\u7B97\u5F0F\u76F8\u5339\u914D\u3002",a:"\u5224\u65B7\u4E00\u6BB5\u6587\u5B57\u662F\u5426\u8207\u898F\u5247\u904B\u7B97\u5F0F\u76F8\u5339\u914D\u3002",p:[{name:"text",detail:"\u8981\u7528\u898F\u5247\u904B\u7B97\u5F0F\u6E2C\u8A66\u7684\u6587\u5B57\u3002"},{name:"regular_expression",detail:"\u7528\u4F86\u6E2C\u8A66\u6587\u5B57\u7684\u898F\u5247\u904B\u7B97\u5F0F\u3002"}]},REGEXREPLACE:{d:"\u4F7F\u7528\u898F\u5247\u904B\u7B97\u5F0F\u5C07\u6587\u5B57\u5B57\u4E32\u4E2D\u7684\u4E00\u90E8\u5206\u66FF\u63DB\u70BA\u5176\u4ED6\u6587\u5B57\u5B57\u4E32\u3002",a:"\u4F7F\u7528\u898F\u5247\u904B\u7B97\u5F0F\u5C07\u6587\u5B57\u5B57\u4E32\u4E2D\u7684\u4E00\u90E8\u5206\u66FF\u63DB\u70BA\u5176\u4ED6\u6587\u5B57\u5B57\u4E32\u3002",p:[{name:"text",detail:"\u8981\u5C0D\u5176\u5C40\u90E8\u9032\u884C\u66FF\u63DB\u64CD\u4F5C\u7684\u6587\u5B57\u3002"},{name:"regular_expression",detail:"\u898F\u5247\u904B\u7B97\u5F0F\u3002text\u4E2D\u6240\u6709\u5339\u914D\u7684\u5BE6\u4F8B\u90FD\u5C07\u88AB\u66FF\u63DB\u3002"},{name:"replacement",detail:"\u8981\u63D2\u5165\u5230\u539F\u6709\u6587\u5B57\u4E2D\u7684\u6587\u5B57\u3002"}]},T:{d:"\u8FD4\u56DE\u6587\u672C\u683C\u5F0F\u7684\u5B57\u4E32\u53C3\u6578\u3002",a:"\u8FD4\u56DE\u6587\u672C\u683C\u5F0F\u7684\u5B57\u4E32\u53C3\u6578\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u6587\u5B57\u7684\u53C3\u6578\u3002 + +\u5982\u679C\u503C\u70BA\u6587\u5B57,T\u5C07\u8FD4\u56DE\u503C\u672C\u8EAB\u3002 + +\u5982\u679C\u503C\u70BA\u6307\u5411\u5305\u542B\u6587\u5B57\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,T\u5C07\u8FD4\u56DE\u503C\u4E2D\u7684\u5167\u5BB9\u3002 + +\u5982\u679C\u503C\u70BA\u932F\u8AA4\u503C\u6216\u5305\u542B\u932F\u8AA4\u503C\u7684\u5132\u5B58\u683C,T\u5C07\u8FD4\u56DE\u8A72\u932F\u8AA4\u503C\u3002 + +\u5C0D\u65BC\u6240\u6709\u5176\u4ED6\u60C5\u51B5,T\u5C07\u8FD4\u56DE\u7A7A\u4E32\u3002`}]},FIXED:{d:"\u4EE5\u56FA\u5B9A\u7684\u5C0F\u6578\u4F4D\u6578\u8A2D\u5B9A\u6578\u4F4D\u7684\u683C\u5F0F\u3002",a:"\u4EE5\u56FA\u5B9A\u7684\u5C0F\u6578\u4F4D\u6578\u8A2D\u5B9A\u6578\u4F4D\u7684\u683C\u5F0F\u3002",p:[{name:"number",detail:"\u8981\u9032\u884C\u820D\u5165\u4E26\u8F49\u63DB\u70BA\u6587\u5B57\u7684\u6578\u4F4D\u3002"},{name:"decimals",detail:`[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA2] - \u7D50\u679C\u4E2D\u8981\u986F\u793A\u7684\u5C0F\u6578\u4F4D\u6578\u3002 + +\u5982\u679C\u6578\u503C\u7684\u6709\u6548\u4F4D\u6578\u5C0F\u65BC\u5C0F\u6578\u4F4D\u6578,\u5C07\u4EE5\u96F6\u586B\u5145\u3002\u5982\u679C\u6578\u503C\u7684\u6709\u6548\u4F4D\u6578\u5927\u65BC\u5C0F\u6578\u4F4D\u6578,\u5247\u5C07\u5176\u820D\u5165\u5230\u6240\u9700\u7684\u5C0F\u6578\u4F4D\u6578\u800C\u4E0D\u662F\u5C07\u5176\u622A\u65B7\u3002`},{name:"no_commas",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BAFALSE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u5982\u679C\u70BATRUE\uFF08\uFF09,\u5247\u6703\u7981\u6B62FIXED\u5728\u8FD4\u56DE\u7684\u6587\u5B57\u4E2D\u5305\u542B\u9017\u865F\u3002"}]},FIND:{d:"\u8FD4\u56DE\u5B57\u4E32\u5728\u6587\u5B57\u4E2D\u9996\u6B21\u51FA\u73FE\u7684\u4F4D\u7F6E\uFF08\u5340\u5206\u5927\u5C0F\u5BEB\uFF09\u3002",a:"\u8FD4\u56DE\u5B57\u4E32\u5728\u6587\u5B57\u4E2D\u9996\u6B21\u51FA\u73FE\u7684\u4F4D\u7F6E\uFF08\u5340\u5206\u5927\u5C0F\u5BEB\uFF09\u3002",p:[{name:"find_text",detail:"\u8981\u5728\u8981\u8490\u7D22\u7684\u6587\u5B57\u4E2D\u67E5\u627E\u7684\u5B57\u4E32\u3002"},{name:"within_text",detail:"\u8981\u5728\u5176\u4E2D\u8490\u7D22\u8490\u7D22\u5B57\u4E32\u7684\u9996\u6B21\u51FA\u73FE\u4F4D\u7F6E\u7684\u6587\u5B57\u3002"},{name:"start_num",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1] - \u8981\u5728\u8981\u8490\u7D22\u7684\u6587\u5B57\u4E2D\u958B\u59CB\u8490\u7D22\u7684\u5B57\u5143\u4F4D\u7F6E\u3002"}]},FINDB:{d:"\u8FD4\u56DE\u67D0\u500B\u5B57\u4E32\u5728\u6587\u5B57\u4E2D\u9996\u6B21\u51FA\u73FE\u7684\u4F4D\u7F6E\uFF08\u6BCF\u500B\u96D9\u4F4D\u5143\u7D44\u5B57\u5143\u5360\u5169\u500B\u4F4D\u7F6E\uFF09\u3002",a:"\u8FD4\u56DE\u67D0\u500B\u5B57\u4E32\u5728\u6587\u5B57\u4E2D\u9996\u6B21\u51FA\u73FE\u7684\u4F4D\u7F6E\uFF08\u6BCF\u500B\u96D9\u4F4D\u5143\u7D44\u5B57\u5143\u5360\u5169\u500B\u4F4D\u7F6E\uFF09\u3002",p:[{name:"find_text",detail:"\u8981\u5728\u8981\u8490\u7D22\u7684\u6587\u5B57\u4E2D\u67E5\u627E\u7684\u5B57\u4E32\u3002"},{name:"within_text",detail:"\u8981\u5728\u5176\u4E2D\u8490\u7D22\u8490\u7D22\u5B57\u4E32\u7684\u9996\u6B21\u51FA\u73FE\u4F4D\u7F6E\u7684\u6587\u5B57\u3002"},{name:"start_num",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1] - \u8981\u5728\u8981\u8490\u7D22\u7684\u6587\u5B57\u4E2D\u958B\u59CB\u8490\u7D22\u7684\u5B57\u5143\u4F4D\u7F6E\u3002"}]},JOIN:{d:"\u5C07\u4E00\u500B\u6216\u591A\u500B\u4F7F\u7528\u6307\u5B9A\u5B9A\u754C\u7B26\u7684\u4E00\u7DAD\u6578\u7D44\u7684\u5143\u7D20\u9023\u63A5\u5230\u4E00\u8D77\u3002",a:"\u5C07\u4E00\u500B\u6216\u591A\u500B\u4F7F\u7528\u6307\u5B9A\u5B9A\u754C\u7B26\u7684\u4E00\u7DAD\u6578\u7D44\u7684\u5143\u7D20\u9023\u63A5\u5230\u4E00\u8D77\u3002",p:[{name:"separator",detail:`\u7F6E\u65BC\u76F8\u4E92\u9023\u63A5\u7684\u503C\u4E4B\u9593\u7684\u5B57\u5143\u6216\u5B57\u4E32\u3002 + +\u5B9A\u754C\u7B26\u53EF\u4EE5\u70BA\u7A7A,\u4F8B\u5982JOIN\uFF08,{1,2,3}\uFF09\u3002`},{name:"array1",detail:"\u8981\u4F7F\u7528\u5B9A\u754C\u7B26\u9023\u63A5\u7684\u4E00\u500B\u6216\u591A\u500B\u503C\u3002"},{name:"array2,\u2026",detail:"[\u53EF\u9078] - \u8981\u4F7F\u7528\u5B9A\u754C\u7B26\u9023\u63A5\u7684\u5176\u4ED6\u503C\u6216\u6578\u7D44\u3002"}]},LEFT:{d:"\u5F9E\u6587\u5B57\u5B57\u4E32\u7684\u7B2C\u4E00\u500B\u5B57\u5143\u958B\u59CB\u8FD4\u56DE\u6307\u5B9A\u500B\u6578\u7684\u5B57\u5143\u3002",a:"\u5F9E\u6587\u5B57\u5B57\u4E32\u7684\u7B2C\u4E00\u500B\u5B57\u5143\u958B\u59CB\u8FD4\u56DE\u6307\u5B9A\u500B\u6578\u7684\u5B57\u5143\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u9078\u53D6\u7684\u5B57\u5143\u7684\u6587\u5B57\u5B57\u4E32\u3002"},{name:"num_chars",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1] - \u6307\u5B9A\u8981\u7531LEFT\u9078\u53D6\u7684\u5B57\u5143\u7684\u6578\u91CF\u3002"}]},RIGHT:{d:"\u6839\u64DA\u6240\u6307\u5B9A\u7684\u5B57\u5143\u6578\u8FD4\u56DE\u6587\u5B57\u5B57\u4E32\u4E2D\u6700\u5F8C\u4E00\u500B\u6216\u591A\u500B\u5B57\u5143\u3002",a:"\u6839\u64DA\u6240\u6307\u5B9A\u7684\u5B57\u5143\u6578\u8FD4\u56DE\u6587\u5B57\u5B57\u4E32\u4E2D\u6700\u5F8C\u4E00\u500B\u6216\u591A\u500B\u5B57\u5143\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u9078\u53D6\u7684\u5B57\u5143\u7684\u6587\u5B57\u5B57\u4E32\u3002"},{name:"num_chars",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1] - \u6307\u5B9A\u8981\u7531RIGHT\u9078\u53D6\u7684\u5B57\u5143\u7684\u6578\u91CF\u3002"}]},MID:{d:"\u8FD4\u56DE\u6587\u5B57\u5B57\u4E32\u4E2D\u5F9E\u6307\u5B9A\u4F4D\u7F6E\u958B\u59CB\u7684\u7279\u5B9A\u6578\u76EE\u7684\u5B57\u5143\u3002",a:"\u8FD4\u56DE\u6587\u5B57\u5B57\u4E32\u4E2D\u5F9E\u6307\u5B9A\u4F4D\u7F6E\u958B\u59CB\u7684\u7279\u5B9A\u6578\u76EE\u7684\u5B57\u5143\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u9078\u53D6\u7684\u5B57\u5143\u7684\u6587\u5B57\u5B57\u4E32\u3002"},{name:"start_num",detail:"\u8981\u5F9E\u5B57\u4E32\u4E2D\u958B\u59CB\u9078\u53D6\u7684\u4F4D\u7F6E\u3002\u5B57\u4E32\u4E2D\u7B2C\u4E00\u500B\u5B57\u5143\u7684\u7D22\u5F15\u70BA1\u3002"},{name:"num_chars",detail:`\u6307\u5B9A\u8981\u7531MID\u9078\u53D6\u7684\u5B57\u5143\u7684\u6578\u91CF\u3002 + +\u5982\u679C\u9078\u53D6\u7684\u5B57\u5143\u6578\u5C1A\u4E0D\u8DB3\u9078\u53D6\u9577\u5EA6\u500B\u5B57\u5143\u6642\u5C31\u5230\u9054\u4E86\u5B57\u4E32\u5C3E\u90E8,\u5247MID\u8FD4\u56DE\u5F9E\u958B\u59CB\u4F4D\u7F6E\u5230\u5B57\u4E32\u5C3E\u90E8\u7684\u5B57\u5143\u3002`}]},LEN:{d:"\u8FD4\u56DE\u7D66\u5B9A\u5B57\u4E32\u7684\u9577\u5EA6\u3002",a:"\u8FD4\u56DE\u7D66\u5B9A\u5B57\u4E32\u7684\u9577\u5EA6\u3002",p:[{name:"text",detail:"\u8981\u8FD4\u56DE\u5176\u9577\u5EA6\u7684\u5B57\u4E32\u3002"}]},LENB:{d:"\u8FD4\u56DE\u6587\u5B57\u4E2D\u6240\u5305\u542B\u7684\u5B57\u5143\u6578\u3002\u8207\u96D9\u4F4D\u5143\u7D44\u5B57\u5143\u96C6\uFF08DBCS\uFF09\u4E00\u8D77\u4F7F\u7528\u3002",a:"\u8FD4\u56DE\u6587\u5B57\u4E2D\u6240\u5305\u542B\u7684\u5B57\u5143\u6578\u3002\u8207\u96D9\u4F4D\u5143\u7D44\u5B57\u5143\u96C6\uFF08DBCS\uFF09\u4E00\u8D77\u4F7F\u7528\u3002",p:[{name:"text",detail:"\u8981\u8FD4\u56DE\u5176\u4F4D\u5143\u7D44\u6578\u7684\u5B57\u4E32\u3002\uFF08\u4E00\u500B\u6F22\u5B57\u70BA\u5169\u500B\u4F4D\u5143\u7D44\u6578\uFF09"}]},LOWER:{d:"\u5C07\u6307\u5B9A\u5B57\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F49\u63DB\u70BA\u5C0F\u5BEB\u3002",a:"\u5C07\u6307\u5B9A\u5B57\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F49\u63DB\u70BA\u5C0F\u5BEB\u3002",p:[{name:"text",detail:"\u8981\u8F49\u63DB\u70BA\u5C0F\u5BEB\u7684\u5B57\u4E32\u3002"}]},UPPER:{d:"\u5C07\u6307\u5B9A\u5B57\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F49\u63DB\u70BA\u5927\u5BEB\u3002",a:"\u5C07\u6307\u5B9A\u5B57\u4E32\u4E2D\u7684\u5B57\u6BCD\u8F49\u63DB\u70BA\u5927\u5BEB\u3002",p:[{name:"text",detail:"\u8981\u8F49\u63DB\u70BA\u5927\u5BEB\u7684\u5B57\u4E32\u3002"}]},EXACT:{d:"\u6BD4\u8F03\u5169\u500B\u5B57\u4E32\u662F\u5426\u76F8\u540C\u3002",a:"\u6BD4\u8F03\u5169\u500B\u5B57\u4E32\u662F\u5426\u76F8\u540C\u3002",p:[{name:"text1",detail:"\u8981\u6BD4\u8F03\u7684\u7B2C\u4E00\u500B\u5B57\u4E32\u3002"},{name:"text2",detail:"\u8981\u6BD4\u8F03\u7684\u7B2C\u4E8C\u500B\u5B57\u4E32\u3002"}]},REPLACE:{d:"\u5C07\u6587\u5B57\u5B57\u4E32\u7684\u4E00\u90E8\u5206\u66FF\u63DB\u70BA\u5176\u4ED6\u6587\u5B57\u5B57\u4E32\u3002",a:"\u5C07\u6587\u5B57\u5B57\u4E32\u7684\u4E00\u90E8\u5206\u66FF\u63DB\u70BA\u5176\u4ED6\u6587\u5B57\u5B57\u4E32\u3002",p:[{name:"old_text",detail:"\u8981\u5C0D\u5176\u5C40\u90E8\u9032\u884C\u66FF\u63DB\u64CD\u4F5C\u7684\u6587\u5B57\u3002"},{name:"start_num",detail:"\u958B\u59CB\u9032\u884C\u66FF\u63DB\u64CD\u4F5C\u7684\u4F4D\u7F6E\uFF08\u6587\u5B57\u958B\u982D\u4F4D\u7F6E\u70BA1\uFF09\u3002"},{name:"num_chars",detail:"\u8981\u5728\u6587\u5B57\u4E2D\u66FF\u63DB\u7684\u5B57\u5143\u500B\u6578\u3002"},{name:"new_text",detail:"\u8981\u63D2\u5165\u5230\u539F\u6709\u6587\u5B57\u4E2D\u7684\u6587\u5B57\u3002"}]},REPT:{d:"\u8FD4\u56DE\u6307\u5B9A\u6587\u5B57\u7684\u591A\u6B21\u91CD\u8907\u3002",a:"\u8FD4\u56DE\u6307\u5B9A\u6587\u5B57\u7684\u591A\u6B21\u91CD\u8907\u3002",p:[{name:"text",detail:"\u8981\u91CD\u8907\u7684\u5B57\u5143\u6216\u5B57\u4E32\u3002"},{name:"number_times",detail:`\u8981\u91CD\u8907\u7684\u6587\u5B57\u8981\u5728\u8FD4\u56DE\u503C\u4E2D\u51FA\u73FE\u7684\u6B21\u6578\u3002 + +\u6700\u5927\u91CD\u8907\u6B21\u6578\u70BA100\u3002\u5373\u4F7F\u91CD\u8907\u6B21\u6578\u5927\u65BC100,REPT\u4E5F\u50C5\u5C07\u76F8\u61C9\u6587\u5B57\u91CD\u8907100\u6B21\u3002`}]},SEARCH:{d:"\u8FD4\u56DE\u5B57\u4E32\u5728\u6587\u5B57\u4E2D\u9996\u6B21\u51FA\u73FE\u7684\u4F4D\u7F6E\uFF08\u4E0D\u5340\u5206\u5927\u5C0F\u5BEB\uFF09\u3002",a:"\u8FD4\u56DE\u5B57\u4E32\u5728\u6587\u5B57\u4E2D\u9996\u6B21\u51FA\u73FE\u7684\u4F4D\u7F6E\uFF08\u4E0D\u5340\u5206\u5927\u5C0F\u5BEB\uFF09\u3002",p:[{name:"find_text",detail:"\u8981\u5728\u8981\u8490\u7D22\u7684\u6587\u5B57\u4E2D\u67E5\u627E\u7684\u5B57\u4E32\u3002"},{name:"within_text",detail:"\u8981\u5728\u5176\u4E2D\u8490\u7D22\u8490\u7D22\u5B57\u4E32\u7684\u9996\u6B21\u51FA\u73FE\u4F4D\u7F6E\u7684\u6587\u5B57\u3002"},{name:"start_num",detail:"[\u53EF\u9078-\u9810\u8A2D\u503C\u70BA1 ] - \u8981\u5728\u8981\u8490\u7D22\u7684\u6587\u5B57\u4E2D\u958B\u59CB\u8490\u7D22\u7684\u5B57\u5143\u4F4D\u7F6E\u3002"}]},SUBSTITUTE:{d:"\u5728\u6587\u5B57\u5B57\u4E32\u4E2D\u7528new_text\u66FF\u63DBold_text\u3002",a:"\u5728\u6587\u5B57\u5B57\u4E32\u4E2D\u7528new_text\u66FF\u63DBold_text\u3002",p:[{name:"text",detail:"\u9700\u8981\u66FF\u63DB\u5176\u4E2D\u5B57\u5143\u7684\u6587\u5B57,\u6216\u5C0D\u542B\u6709\u6587\u5B57\uFF08\u9700\u8981\u66FF\u63DB\u5176\u4E2D\u5B57\u5143\uFF09\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3002"},{name:"old_text",detail:"\u9700\u8981\u66FF\u63DB\u7684\u6587\u5B57\u3002"},{name:"new_text",detail:"\u7528\u65BC\u66FF\u63DBold_text\u7684\u6587\u5B57\u3002"},{name:"instance_num",detail:"[\u53EF\u9078] - \u6307\u5B9A\u8981\u7528new_text\u66FF\u63DBold_text\u7684\u4E8B\u4EF6\u3002\u5982\u679C\u6307\u5B9A\u4E86instance_num,\u5247\u53EA\u6709\u6EFF\u8DB3\u8981\u6C42\u7684old_text\u88AB\u66FF\u63DB\u3002\u5426\u5247,\u6587\u5B57\u4E2D\u51FA\u73FE\u7684\u6240\u6709old_text\u90FD\u6703\u66F4\u6539\u70BAnew_text\u3002"}]},CLEAN:{d:"\u79FB\u9664\u6587\u5B57\u4E2D\u7684\u4E0D\u53EF\u5217\u5370ASCII\u5B57\u5143\u5F8C\u5C07\u5176\u8FD4\u56DE\u3002",a:"\u79FB\u9664\u6587\u5B57\u4E2D\u7684\u4E0D\u53EF\u5217\u5370ASCII\u5B57\u5143\u5F8C\u5C07\u5176\u8FD4\u56DE\u3002",p:[{name:"text",detail:"\u8981\u79FB\u9664\u5176\u4E2D\u4E0D\u53EF\u5217\u5370\u5B57\u5143\u7684\u6587\u5B57\u3002"}]},TEXT:{d:"\u6309\u7167\u6307\u5B9A\u683C\u5F0F\u5C07\u6578\u4F4D\u8F49\u63DB\u70BA\u6587\u5B57\u3002",a:"\u6309\u7167\u6307\u5B9A\u683C\u5F0F\u5C07\u6578\u4F4D\u8F49\u63DB\u70BA\u6587\u5B57\u3002",p:[{name:"value",detail:"\u8981\u8A2D\u5B9A\u683C\u5F0F\u7684\u6578\u4F4D\u3001\u65E5\u671F\u6216\u6642\u9593\u3002"},{name:"format_text",detail:`\u4EE5\u62EC\u5F27\u62EC\u8D77\u4F86\u7684\u6A21\u5F0F\u4E32,\u5C07\u6309\u8A72\u6A21\u5F0F\u8A2D\u5B9A\u6578\u4F4D\u7684\u683C\u5F0F\u3002 + +0\u8868\u793A\u5728\u6578\u503C\u4F4D\u6578\u5C11\u65BC\u683C\u5F0F\u6307\u5B9A\u7684\u4F4D\u6578\u6642\u5FC5\u5B9A\u4EE5\u96F6\u586B\u5145\u3002\u4F8B\u5982,TEXT\uFF0812.3,\u201C000.00"\uFF09\u5C07\u8FD4\u56DE012.30\u3002\u7576\u6578\u503C\u7684\u5C0F\u6578\u4F4D\u6578\u8D85\u904E\u6A21\u5F0F\u6307\u5B9A\u7684\u5C0F\u6578\u4F4D\u6578\u6642,\u56DB\u6368\u4E94\u5165\u70BA\u6307\u5B9A\u7684\u5C0F\u6578\u4F4D\u6578\u3002\u4F8B\u5982,TEXT\uFF0812.305,\u201C00.00"\uFF09\u5C07\u8FD4\u56DE12.31\u3002 + +#\u985E\u4F3C\u65BC0,\u4F46\u4E26\u4E0D\u662F\u5728\u5C0F\u6578\u9EDE\u7684\u5169\u5074\u90FD\u4EE5\u96F6\u586B\u5145\u3002\u4F8B\u5982,TEXT\uFF0812.3,\u201C###.##"\uFF09\u5C07\u8FD4\u56DE12.3\u3002`}]},TRIM:{d:"\u5220\u9664\u6307\u5B9A\u5B57\u4E32\u524D\u5F8C\u7684\u7A7A\u683C\u3002",a:"\u5220\u9664\u6307\u5B9A\u5B57\u4E32\u524D\u5F8C\u7684\u7A7A\u683C\u3002",p:[{name:"text",detail:"\u8981\u4FEE\u526A\u7684\u5B57\u4E32\u6216\u6307\u5411\u5305\u542B\u8A72\u5B57\u4E32\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3002"}]},VALUE:{d:"\u5C07\u53EF\u8B58\u5225\u7684\u4EFB\u4F55\u65E5\u671F\u3001\u6642\u9593\u6216\u6578\u4F4D\u683C\u5F0F\u7684\u5B57\u4E32\u8F49\u63DB\u70BA\u6578\u4F4D\u3002",a:"\u5C07\u53EF\u8B58\u5225\u7684\u4EFB\u4F55\u65E5\u671F\u3001\u6642\u9593\u6216\u6578\u4F4D\u683C\u5F0F\u7684\u5B57\u4E32\u8F49\u63DB\u70BA\u6578\u4F4D\u3002",p:[{name:"text",detail:"\u5305\u542B\u8981\u8F49\u63DB\u7684\u503C\u7684\u5B57\u4E32\u3002"}]},PROPER:{d:"\u5C07\u6307\u5B9A\u5B57\u4E32\u4E2D\u6BCF\u500B\u55AE\u8A5E\u7684\u9996\u5B57\u6BCD\u8F49\u70BA\u5927\u5BEB\u3002",a:"\u5C07\u6307\u5B9A\u5B57\u4E32\u4E2D\u6BCF\u500B\u55AE\u8A5E\u7684\u9996\u5B57\u6BCD\u8F49\u70BA\u5927\u5BEB\u3002",p:[{name:"text",detail:"\u8981\u8F49\u63DB\u7684\u6587\u5B57,\u5176\u4E2D\u6BCF\u500B\u55AE\u8A5E\u7684\u9996\u5B57\u6BCD\u90FD\u5C07\u8F49\u70BA\u5927\u5BEB,\u6240\u6709\u5176\u4ED6\u5B57\u6BCD\u5247\u8F49\u70BA\u5C0F\u5BEB\u3002"}]},CONVERT:{d:"\u5C07\u6578\u4F4D\u5F9E\u4E00\u7A2E\u5EA6\u91CF\u7CFB\u7D71\u8F49\u63DB\u70BA\u53E6\u4E00\u7A2E\u5EA6\u91CF\u7CFB\u7D71\u3002",a:"\u5C07\u6578\u4F4D\u5F9E\u4E00\u7A2E\u5EA6\u91CF\u7CFB\u7D71\u8F49\u63DB\u70BA\u53E6\u4E00\u7A2E\u5EA6\u91CF\u7CFB\u7D71\u3002",p:[{name:"number",detail:"\u662F\u4EE5from_unit\u70BA\u7D44\u7E54\u7684\u9700\u8981\u9032\u884C\u8F49\u63DB\u7684\u6578\u503C\u3002"},{name:"from_unit",detail:"\u662F\u6578\u503C\u7684\u7D44\u7E54\u3002"},{name:"to_unit",detail:"\u662F\u7D50\u679C\u7684\u7D44\u7E54\u3002"}]},SUMX2MY2:{d:"\u8FD4\u56DE\u5169\u6578\u7D44\u4E2D\u5C0D\u61C9\u6578\u503C\u7684\u5E73\u65B9\u5DEE\u4E4B\u548C\u3002",a:"\u8FD4\u56DE\u5169\u6578\u7D44\u4E2D\u5C0D\u61C9\u6578\u503C\u7684\u5E73\u65B9\u5DEE\u4E4B\u548C\u3002",p:[{name:"array_x",detail:"\u7B2C\u4E00\u500B\u6578\u7D44\u6216\u6578\u503C\u5340\u57DF\u3002"},{name:"array_y",detail:"\u7B2C\u4E8C\u500B\u6578\u7D44\u6216\u6578\u503C\u5340\u57DF\u3002"}]},SUMX2PY2:{d:"\u8FD4\u56DE\u5169\u6578\u7D44\u4E2D\u5C0D\u61C9\u6578\u503C\u7684\u5E73\u65B9\u548C\u4E4B\u548C\u3002",a:"\u8FD4\u56DE\u5169\u6578\u7D44\u4E2D\u5C0D\u61C9\u6578\u503C\u7684\u5E73\u65B9\u548C\u4E4B\u548C\u3002",p:[{name:"array_x",detail:"\u7B2C\u4E00\u500B\u6578\u7D44\u6216\u6578\u503C\u5340\u57DF\u3002"},{name:"array_y",detail:"\u7B2C\u4E8C\u500B\u6578\u7D44\u6216\u6578\u503C\u5340\u57DF\u3002"}]},SUMXMY2:{d:"\u8FD4\u56DE\u5169\u6578\u7D44\u4E2D\u5C0D\u61C9\u6578\u503C\u4E4B\u5DEE\u7684\u5E73\u65B9\u548C\u3002",a:"\u8FD4\u56DE\u5169\u6578\u7D44\u4E2D\u5C0D\u61C9\u6578\u503C\u4E4B\u5DEE\u7684\u5E73\u65B9\u548C\u3002",p:[{name:"array_x",detail:"\u7B2C\u4E00\u500B\u6578\u7D44\u6216\u6578\u503C\u5340\u57DF\u3002"},{name:"array_y",detail:"\u7B2C\u4E8C\u500B\u6578\u7D44\u6216\u6578\u503C\u5340\u57DF\u3002"}]},TRANSPOSE:{d:"\u5C07\u6578\u7D44\u6216\u5132\u5B58\u683C\u7BC4\u570D\u7684\u884C\u5217\u8F49\u7F6E\u3002",a:"\u5C07\u6578\u7D44\u6216\u5132\u5B58\u683C\u7BC4\u570D\u7684\u884C\u5217\u8F49\u7F6E\u3002",p:[{name:"array",detail:"\u8981\u5C07\u5176\u884C\u5217\u4E92\u63DB\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"}]},TREND:{d:"\u8FD4\u56DE\u7DDA\u6027\u8DA8\u52E2\u503C\u3002",a:"\u8FD4\u56DE\u7DDA\u6027\u8DA8\u52E2\u503C\u3002",p:[{name:"known_y",detail:`\u95DC\u4FC2\u904B\u7B97\u5F0Fy = mx + b \u4E2D\u5DF2\u77E5\u7684y\u503C\u96C6\u5408\u3002 + +\u5982\u679Cknown_y\u70BA\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D,\u5247known_x\u7684\u7DAD\u6578\u5FC5\u9808\u8207\u4E4B\u76F8\u540C,\u6216\u8005\u7701\u7565\u6B64\u53C3\u6578\u3002 + +\u5982\u679Cknown_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,known_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679Cknown_y\u70BA\u55AE\u884C,\u5247\u5C07known_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BCknown_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9078-\u9ED8\u8A8D\u8A72\u6578\u7D44\u70BA{1,2,3,\u2026},\u5176\u5927\u5C0F\u8207known_y\u76F8\u540C] -\u95DC\u4FC2\u904B\u7B97\u5F0Fy = mx + b \u4E2D\u5DF2\u77E5\u7684\u53EF\u9078x\u503C\u96C6\u5408\u3002 + +\u5982\u679Cknown_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,known_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679Cknown_y\u70BA\u55AE\u884C,\u5247\u5C07known_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BCknown_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"new_x",detail:"[\u53EF\u9078 - \u9ED8\u8A8D\u8207known_x\u76F8\u540C] - \u9700\u8981\u51FD\u6578TREND\u8FD4\u56DE\u5C0D\u61C9y\u503C\u7684\u65B0x\u503C\u3002"},{name:"const",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u7528\u65BC\u6307\u5B9A\u662F\u5426\u5C07\u5E38\u6578b\u5F37\u5236\u8A2D\u70BA0\u3002 + +TRUE\uFF08\uFF09\u8868\u793Ab\u5C07\u6309\u6B63\u5E38\u8A08\u7B97\uFF1B + +FALSE\uFF08\uFF09\u8868\u793Ab\u5C07\u88AB\u8A2D\u70BA0\uFF08\u96F6\uFF09,m \u5C07\u88AB\u8ABF\u6574\u4EE5\u4F7Fy = mx\u3002`}]},FREQUENCY:{d:"\u8A08\u7B97\u6578\u503C\u5728\u67D0\u500B\u5340\u57DF\u5167\u7684\u51FA\u73FE\u983B\u7387,\u7136\u5F8C\u8FD4\u56DE\u4E00\u500B\u5782\u76F4\u6578\u7D44\u3002",a:"\u8A08\u7B97\u6578\u503C\u5728\u67D0\u500B\u5340\u57DF\u5167\u7684\u51FA\u73FE\u983B\u7387,\u7136\u5F8C\u8FD4\u56DE\u4E00\u500B\u5782\u76F4\u6578\u7D44\u3002",p:[{name:"data_array",detail:"\u8981\u5C0D\u5176\u983B\u7387\u9032\u884C\u8A08\u6578\u7684\u4E00\u7D44\u6578\u503C\u6216\u5C0D\u9019\u7D44\u6578\u503C\u7684\u5F15\u7528\u3002"},{name:"bins_array",detail:`\u8981\u5C07data_array\u4E2D\u7684\u503C\u63D2\u5165\u5230\u7684\u9593\u9694\u6578\u7D44\u6216\u5C0D\u9593\u9694\u7684\u5F15\u7528\u3002 + +\u70BA\u6E05\u6670\u8D77\u898B,\u61C9\u5C07\u985E\u5225\u6392\u5E8F,\u4F46\u5982\u679C\u672A\u6392\u5E8F,FREQUENCY\u6703\u5728\u5167\u90E8\u5C0D\u9019\u4E9B\u6307\u5B9A\u7684\u503C\u9032\u884C\u6392\u5E8F\u4E26\u8FD4\u56DE\u6B63\u78BA\u7D50\u679C\u3002`}]},GROWTH:{d:"\u4F7F\u7528\u73FE\u6709\u6578\u64DA\u8A08\u7B97\u9810\u6E2C\u7684\u6307\u6578\u7B49\u6BD4\u3002",a:"\u4F7F\u7528\u73FE\u6709\u6578\u64DA\u8A08\u7B97\u9810\u6E2C\u7684\u6307\u6578\u7B49\u6BD4\u3002",p:[{name:"known_y",detail:`\u95DC\u4FC2\u904B\u7B97\u5F0Fy = b*m^x \u4E2D\u5DF2\u77E5\u7684y\u503C\u96C6\u5408\u3002 + +\u5982\u679C\u5DF2\u77E5\u6578\u64DA_y\u70BA\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D,\u5247\u5DF2\u77E5\u6578\u64DA_x\u7684\u7DAD\u6578\u5FC5\u9808\u8207\u4E4B\u76F8\u540C,\u6216\u8005\u7701\u7565\u6B64\u53C3\u6578\u3002 + +\u5982\u679C\u5DF2\u77E5\u6578\u64DA_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,\u5DF2\u77E5\u6578\u64DA_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679C\u5DF2\u77E5\u6578\u64DA_y\u70BA\u55AE\u884C,\u5247\u5C07\u5DF2\u77E5\u6578\u64DA_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BC\u5DF2\u77E5\u6578\u64DA_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u8A72\u6578\u7D44\u70BA{1,2,3,\u2026},\u5176\u5927\u5C0F\u8207known_y\u76F8\u540C] - \u95DC\u4FC2\u904B\u7B97\u5F0Fy = b*m^x \u4E2D\u5DF2\u77E5\u7684\u53EF\u9078x\u503C\u96C6\u5408\u3002 + +\u5982\u679C\u5DF2\u77E5\u6578\u64DA_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,\u5DF2\u77E5\u6578\u64DA_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679C\u5DF2\u77E5\u6578\u64DA_y\u70BA\u55AE\u884C,\u5247\u5C07\u5DF2\u77E5\u6578\u64DA_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BC\u5DF2\u77E5\u6578\u64DA_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"new_x",detail:"[\u53EF\u9078 - \u9ED8\u8A8D\u8207known_x\u76F8\u540C] - \u9700\u8981\u51FD\u6578GROWTH\u8FD4\u56DE\u5C0D\u61C9y\u503C\u7684\u65B0x\u503C\u3002"},{name:"const",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u7528\u65BC\u6307\u5B9A\u662F\u5426\u5C07\u5E38\u6578b\u5F37\u5236\u8A2D\u70BA1\u3002 + +TRUE\uFF08\uFF09\u8868\u793Ab\u5C07\u6309\u6B63\u5E38\u8A08\u7B97\uFF1B + +FALSE\uFF08\uFF09\u8868\u793Ab\u5C07\u88AB\u8A2D\u70BA1,m\u5C07\u88AB\u8ABF\u6574\u4EE5\u4F7Fy = m^x\u3002`}]},LINEST:{d:"\u53EF\u901A\u904E\u4F7F\u7528\u6700\u5C0F\u4E8C\u4E58\u6CD5\u8A08\u7B97\u8207\u73FE\u6709\u6578\u64DA\u6700\u4F73\u64EC\u5408\u7684\u76F4\u7DDA,\u4F86\u8A08\u7B97\u67D0\u76F4\u7DDA\u7684\u7D71\u8A08\u503C,\u7136\u5F8C\u8FD4\u56DE\u63CF\u8FF0\u6B64\u76F4\u7DDA\u7684\u6578\u7D44\u3002",a:"\u53EF\u901A\u904E\u4F7F\u7528\u6700\u5C0F\u4E8C\u4E58\u6CD5\u8A08\u7B97\u8207\u73FE\u6709\u6578\u64DA\u6700\u4F73\u64EC\u5408\u7684\u76F4\u7DDA,\u4F86\u8A08\u7B97\u67D0\u76F4\u7DDA\u7684\u7D71\u8A08\u503C,\u7136\u5F8C\u8FD4\u56DE\u63CF\u8FF0\u6B64\u76F4\u7DDA\u7684\u6578\u7D44\u3002",p:[{name:"known_y",detail:`\u95DC\u4FC2\u904B\u7B97\u5F0Fy = mx + b \u4E2D\u5DF2\u77E5\u7684y\u503C\u96C6\u5408\u3002 + +\u5982\u679Cknown_y\u70BA\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D,\u5247known_x\u7684\u7DAD\u6578\u5FC5\u9808\u8207\u4E4B\u76F8\u540C,\u6216\u8005\u7701\u7565\u6B64\u53C3\u6578\u3002 + +\u5982\u679Cknown_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,known_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679Cknown_y\u70BA\u55AE\u884C,\u5247\u5C07known_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BCknown_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u8A72\u6578\u7D44\u70BA{1,2,3,\u2026},\u5176\u5927\u5C0F\u8207known_y\u76F8\u540C] - \u95DC\u4FC2\u904B\u7B97\u5F0Fy = mx + b\u4E2D\u5DF2\u77E5\u7684\u53EF\u9078x\u503C\u96C6\u5408\u3002 + +\u5982\u679Cknown_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,known_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679Cknown_y\u70BA\u55AE\u884C,\u5247\u5C07known_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BCknown_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"const",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u7528\u65BC\u6307\u5B9A\u662F\u5426\u5C07\u5E38\u6578b\u5F37\u5236\u8A2D\u70BA0\u3002 + +TRUE\uFF08\uFF09\u8868\u793Ab\u5C07\u6309\u6B63\u5E38\u8A08\u7B97\uFF1B + +FALSE\uFF08\uFF09\u8868\u793Ab\u5C07\u88AB\u8A2D\u70BA0\uFF08\u96F6\uFF09,m\u5C07\u88AB\u8ABF\u6574\u4EE5\u4F7Fy = mx\u3002`},{name:"stats",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BAFALSE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u7528\u65BC\u6307\u5B9A\u662F\u5426\u8FD4\u56DE\u9644\u52A0\u56DE\u6B78\u7D71\u8A08\u503C\u3002 + +\u5982\u679C\u8A73\u7D30\u70BATRUE,\u9664\u4E86\u5C0D\u61C9\u65BC\u6BCF\u500B\u5F15\u6578\u7684\u4E00\u7D44\u7DDA\u6027\u4FC2\u6578\u548Cy\u622A\u8DDD\u4E4B\u5916,LINEST\u9084\u8FD4\u56DE\u4EE5\u4E0B\u8CC7\u8A0A: + +\u6BCF\u9805\u4FC2\u6578\u548C\u622A\u8DDD\u7684\u6A19\u6E96\u8AA4\u5DEE\u3001 + +\u9650\u5B9A\u4FC2\u6578\uFF08\u4ECB\u65BC0\u548C1\u4E4B\u9593,1\u8868\u793A\u5B8C\u5168\u76F8\u95DC\uFF09\u3001 + +\u56E0\u8B8A\u6578\u503C\u7684\u6A19\u51C6\u8AA4\u5DEE\u3001 + +F\u7D71\u8A08\u6216F\u89C0\u6E2C\u503C,\u8A13\u793A\u6240\u89C0\u6E2C\u5230\u7684\u56E0\u8B8A\u6578\u548C\u5F15\u6578\u8B8A\u6578\u4E4B\u9593\u7684\u95DC\u4FC2\u662F\u96A8\u6A5F\u7684\u9084\u662F\u7DDA\u6027\u7684\u3001 + +\u81EA\u7531\u5EA6,\u7528\u65BC\u5728\u53C3\u7167\u9336\u4E2D\u67E5\u627EF\u7D71\u8A08\u503C\u4EE5\u4F30\u7B97\u53EF\u4FE1\u5EA6\u3001 + +\u56DE\u6B78\u5E73\u65B9\u548C,\u4EE5\u53CA + +\u6B98\u5DEE\u5E73\u65B9\u548C\u3002`}]},LOGEST:{d:"\u5728\u56DE\u6B78\u5206\u6790\u4E2D,\u8A08\u7B97\u6700\u7B26\u5408\u6578\u64DA\u7684\u6307\u6578\u56DE\u6B78\u64EC\u5408\u66F2\u7DDA,\u4E26\u8FD4\u56DE\u63CF\u8FF0\u8A72\u66F2\u7DDA\u7684\u6578\u503C\u6578\u7D44\u3002",a:"\u5728\u56DE\u6B78\u5206\u6790\u4E2D,\u8A08\u7B97\u6700\u7B26\u5408\u6578\u64DA\u7684\u6307\u6578\u56DE\u6B78\u64EC\u5408\u66F2\u7DDA,\u4E26\u8FD4\u56DE\u63CF\u8FF0\u8A72\u66F2\u7DDA\u7684\u6578\u503C\u6578\u7D44\u3002",p:[{name:"known_y",detail:`\u95DC\u4FC2\u904B\u7B97\u5F0Fy = mx + b \u4E2D\u5DF2\u77E5\u7684y\u503C\u96C6\u5408\u3002 + +\u5982\u679Cknown_y\u70BA\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D,\u5247known_x\u7684\u7DAD\u6578\u5FC5\u9808\u8207\u4E4B\u76F8\u540C,\u6216\u8005\u7701\u7565\u6B64\u53C3\u6578\u3002 + +\u5982\u679Cknown_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,known_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679Cknown_y\u70BA\u55AE\u884C,\u5247\u5C07known_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BCknown_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"known_x",detail:`[\u53EF\u9078 - \u9ED8\u8A8D\u8A72\u6578\u7D44\u70BA{1,2,3,\u2026},\u5176\u5927\u5C0F\u8207known_y\u76F8\u540C] - \u95DC\u4FC2\u904B\u7B97\u5F0Fy = mx + b\u4E2D\u5DF2\u77E5\u7684\u53EF\u9078x\u503C\u96C6\u5408\u3002 + +\u5982\u679Cknown_y\u70BA\u4E00\u7DAD\u6578\u7D44\u6216\u7BC4\u570D,known_x\u5247\u53EF\u4EE3\u8868\u4E8C\u7DAD\u9663\u5217\u6216\u7BC4\u570D\u4E2D\u7684\u591A\u500B\u5F15\u6578\u3002\u4E5F\u5C31\u662F\u8AAA,\u5982\u679Cknown_y\u70BA\u55AE\u884C,\u5247\u5C07known_x\u4E2D\u7684\u6BCF\u884C\u89E3\u91CB\u70BA\u5404\u81EA\u7368\u7ACB\u7684\u503C,\u985E\u4F3C\u60C5\u51B5\u4E5F\u9069\u7528\u65BCknown_y\u70BA\u55AE\u5217\u7684\u60C5\u51B5\u3002`},{name:"const",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BATRUE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u7528\u65BC\u6307\u5B9A\u662F\u5426\u5C07\u5E38\u6578b\u5F37\u5236\u8A2D\u70BA0\u3002 + +TRUE\uFF08\uFF09\u8868\u793Ab\u5C07\u6309\u6B63\u5E38\u8A08\u7B97\uFF1B + +FALSE\uFF08\uFF09\u8868\u793Ab\u5C07\u88AB\u8A2D\u70BA0\uFF08\u96F6\uFF09,m\u5C07\u88AB\u8ABF\u6574\u4EE5\u4F7Fy = mx\u3002`},{name:"stats",detail:`[\u53EF\u9078 - \u9810\u8A2D\u503C\u70BAFALSE\uFF08\uFF09] - \u4E00\u500B\u908F\u8F2F\u503C,\u7528\u65BC\u6307\u5B9A\u662F\u5426\u8FD4\u56DE\u9644\u52A0\u56DE\u6B78\u7D71\u8A08\u503C\u3002 + +\u5982\u679C\u8A73\u7D30\u70BATRUE,\u5247\u9664\u4E86\u70BA\u6BCF\u500B\u5F15\u6578\u548C\u4FC2\u6578b\u8FD4\u56DE\u4E00\u7D44\u6307\u6578\u503C\u4E4B\u5916,LOGEST\u9084\u5C07\u8FD4\u56DE\u4EE5\u4E0B\u6578\u64DA: + +\u6BCF\u9805\u6307\u6578\u548C\u4FC2\u6578\u7684\u6A19\u6E96\u8AA4\u5DEE\u3001 + +\u9650\u5B9A\u4FC2\u6578\uFF08\u4ECB\u65BC0\u548C1\u4E4B\u9593,1\u8868\u793A\u5B8C\u5168\u76F8\u95DC\uFF09\u3001 + +\u56E0\u8B8A\u6578\u503C\u7684\u6A19\u51C6\u8AA4\u5DEE\u3001 + +F\u7D71\u8A08\u6216F\u89C0\u6E2C\u503C,\u8A13\u793A\u6240\u89C0\u6E2C\u5230\u7684\u56E0\u8B8A\u6578\u548C\u5F15\u6578\u4E4B\u9593\u7684\u95DC\u4FC2\u662F\u96A8\u6A5F\u7684\u9084\u662F\u6307\u6578\u7684\u3001 + +\u81EA\u7531\u5EA6-\u7528\u65BC\u5728\u53C3\u7167\u9336\u4E2D\u67E5\u627EF\u7D71\u8A08\u503C\u4EE5\u4F30\u7B97\u53EF\u4FE1\u5EA6\u3001 + +\u56DE\u6B78\u5E73\u65B9\u548C,\u4EE5\u53CA + +\u6B98\u5DEE\u5E73\u65B9\u548C\u3002`}]},MDETERM:{d:"\u8FD4\u56DE\u4E00\u500B\u6578\u7D44\u7684\u77E9\u9663\u884C\u5217\u5F0F\u7684\u503C\u3002",a:"\u8FD4\u56DE\u4E00\u500B\u6578\u7D44\u7684\u77E9\u9663\u884C\u5217\u5F0F\u7684\u503C\u3002",p:[{name:"array",detail:"\u884C\u6578\u548C\u5217\u6578\u76F8\u7B49\u7684\u6578\u503C\u6578\u7D44\u3002"}]},MINVERSE:{d:"\u8FD4\u56DE\u6578\u7D44\u4E2D\u5B58\u5132\u7684\u77E9\u9663\u7684\u9006\u77E9\u9663\u3002",a:"\u8FD4\u56DE\u6578\u7D44\u4E2D\u5B58\u5132\u7684\u77E9\u9663\u7684\u9006\u77E9\u9663\u3002",p:[{name:"array",detail:"\u884C\u6578\u548C\u5217\u6578\u76F8\u7B49\u7684\u6578\u503C\u6578\u7D44\u3002"}]},MMULT:{d:"\u8FD4\u56DE\u5169\u500B\u6578\u7D44\u7684\u77E9\u9663\u4E58\u7A4D\u3002\u7D50\u679C\u77E9\u9663\u7684\u884C\u6578\u8207array1\u7684\u884C\u6578\u76F8\u540C,\u77E9\u9663\u7684\u5217\u6578\u8207array2\u7684\u5217\u6578\u76F8\u540C\u3002",a:"\u8FD4\u56DE\u5169\u500B\u6578\u7D44\u7684\u77E9\u9663\u4E58\u7A4D\u3002\u7D50\u679C\u77E9\u9663\u7684\u884C\u6578\u8207array1\u7684\u884C\u6578\u76F8\u540C,\u77E9\u9663\u7684\u5217\u6578\u8207array2\u7684\u5217\u6578\u76F8\u540C\u3002",p:[{name:"array1",detail:`\u8981\u9032\u884C\u77E9\u9663\u4E58\u6CD5\u904B\u7B97\u7684\u7B2C\u4E00\u500B\u77E9\u9663\u6578\u7D44\u3002 + +array1\u5217\u6578\u5FC5\u9808\u8207array2\u7684\u884C\u6578\u76F8\u540C`},{name:"array2",detail:`\u8981\u9032\u884C\u77E9\u9663\u4E58\u6CD5\u904B\u7B97\u7684\u7B2C\u4E8C\u500B\u77E9\u9663\u6578\u7D44\u3002 + +array2\u7684\u884C\u6578\u5FC5\u9808\u8207array1\u5217\u6578\u76F8\u540C`}]},SUMPRODUCT:{d:"\u5728\u7D66\u5B9A\u7684\u5E7E\u7D44\u6578\u7D44\u4E2D,\u5C07\u6578\u7D44\u9593\u5C0D\u61C9\u7684\u5143\u7D20\u76F8\u4E58,\u4E26\u8FD4\u56DE\u4E58\u7A4D\u4E4B\u548C\u3002",a:"\u5728\u7D66\u5B9A\u7684\u5E7E\u7D44\u6578\u7D44\u4E2D,\u5C07\u6578\u7D44\u9593\u5C0D\u61C9\u7684\u5143\u7D20\u76F8\u4E58,\u4E26\u8FD4\u56DE\u4E58\u7A4D\u4E4B\u548C\u3002",p:[{name:"array1",detail:"\u5176\u76F8\u61C9\u5143\u7D20\u9700\u8981\u9032\u884C\u76F8\u4E58\u4E26\u6C42\u548C\u7684\u7B2C\u4E00\u500B\u6578\u7D44\u53C3\u6578\u3002"},{name:"array2",detail:"[\u53EF\u9078] - \u5176\u76F8\u61C9\u5143\u7D20\u9700\u8981\u9032\u884C\u76F8\u4E58\u4E26\u6C42\u548C\u7684\u5176\u5B83\u6578\u7D44\u53C3\u6578\u3002"}]},ISFORMULA:{d:"\u6AA2\u67E5\u516C\u5F0F\u662F\u5426\u4F4D\u65BC\u5F15\u7528\u7684\u5132\u5B58\u683C\u4E2D\u3002",a:"\u6AA2\u67E5\u516C\u5F0F\u662F\u5426\u4F4D\u65BC\u5F15\u7528\u7684\u5132\u5B58\u683C\u4E2D\u3002",p:[{name:"cell",detail:`\u8981\u6AA2\u67E5\u662F\u5426\u5B58\u5728\u516C\u5F0F\u7684\u5132\u5B58\u683C\u3002 + +\u5982\u679C cell \u70BA\u5305\u542B\u516C\u5F0F\u7684\u5132\u5B58\u683C,\u5247 ISFORMULA \u5C07\u8FD4\u56DETRUE\u3002\u5982\u679C cell \u70BA\u76F8\u61C9\u5132\u5B58\u683C\u7BC4\u570D,\u5247\u7576\u8A72\u7BC4\u570D\u5167\u7684\u9996\u500B\u5132\u5B58\u683C\u5305\u542B\u516C\u5F0F\u6642,\u7CFB\u7D71\u6703\u8FD4\u56DETRUE\u3002\u5982\u679C\u662F\u4EFB\u4F55\u5176\u4ED6\u503C,\u7CFB\u7D71\u90FD\u5C07\u8FD4\u56DEFALSE\u3002`}]},CELL:{d:"\u8FD4\u56DE\u6709\u95DC\u5132\u5B58\u683C\u7684\u683C\u5F0F\u3001\u4F4D\u7F6E\u6216\u5167\u5BB9\u7684\u8CC7\u8A0A\u3002",a:"\u8FD4\u56DE\u6709\u95DC\u5132\u5B58\u683C\u7684\u683C\u5F0F\u3001\u4F4D\u7F6E\u6216\u5167\u5BB9\u7684\u8CC7\u8A0A\u3002",p:[{name:"info_type",detail:"\u4E00\u500B\u6587\u5B57\u503C,\u6307\u5B9A\u8981\u8FD4\u56DE\u7684\u5132\u5B58\u683C\u8CC7\u8A0A\u7684\u985E\u578B\u3002"},{name:"reference",detail:"\u9700\u8981\u5176\u76F8\u95DC\u8CC7\u8A0A\u7684\u5132\u5B58\u683C\u3002"}]},NA:{d:"\u8FD4\u56DE\u932F\u8AA4\u503C#N/A\u3002",a:"\u8FD4\u56DE\u932F\u8AA4\u503C#N/A\u3002",p:[]},ERROR_TYPE:{d:"\u8FD4\u56DE\u8207\u5176\u4ED6\u5132\u5B58\u683C\u4E2D\u7684\u932F\u8AA4\u503C\u76F8\u5C0D\u61C9\u7684\u6578\u4F4D\u3002",a:"\u8FD4\u56DE\u8207\u5176\u4ED6\u5132\u5B58\u683C\u4E2D\u7684\u932F\u8AA4\u503C\u76F8\u5C0D\u61C9\u7684\u6578\u4F4D\u3002",p:[{name:"error_val",detail:"\u7528\u65BC\u67E5\u627E\u932F\u8AA4\u865F\u7684\u5132\u5B58\u683C,\u96D6\u7136\u60A8\u4E5F\u53EF\u4EE5\u76F4\u63A5\u63D0\u4F9B\u932F\u8AA4\u503C\u3002"}]},ISBLANK:{d:"\u6AA2\u67E5\u6240\u5F15\u7528\u7684\u5132\u5B58\u683C\u662F\u5426\u70BA\u7A7A\u3002",a:"\u6AA2\u67E5\u6240\u5F15\u7528\u7684\u5132\u5B58\u683C\u662F\u5426\u70BA\u7A7A\u3002",p:[{name:"value",detail:`\u5C0D\u8981\u6AA2\u67E5\u5176\u662F\u5426\u70BA\u7A7A\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528\u3002 + +\u5982\u679C\u662F\u7A7A\u5132\u5B58\u683C,\u5247TRUE\uFF1B\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},ISERR:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA#N/A\u4EE5\u5916\u7684\u932F\u8AA4\u503C\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA#N/A\u4EE5\u5916\u7684\u932F\u8AA4\u503C\u3002",p:[{name:"value",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA#N/A\u4EE5\u5916\u7684\u932F\u8AA4\u985E\u578B\u7684\u503C\u3002 + +\u5982\u679C\u503C\u662F\u9664#N/A\u4E4B\u5916\u7684\u4EFB\u4F55\u932F\u8AA4\uFF08\u5305\u62EC#DIV/0\uFF01\u3001#NAME\uFF1F\u3001#NULL\uFF01\u3001#NUM\uFF01\u3001#VALUE\uFF01\u548C#REF\uFF01\uFF09,ISERR\u5C07\u8FD4\u56DETRUE\u3002`}]},ISERROR:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u932F\u8AA4\u503C\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u932F\u8AA4\u503C\u3002",p:[{name:"value",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA\u932F\u8AA4\u985E\u578B\u7684\u503C\u3002 + +\u53EA\u8981\u503C\u662F\u67D0\u7A2E\u932F\u8AA4\u503C\uFF08\u5305\u62EC#DIV/0\uFF01\u3001#N/A\u3001#NAME\uFF1F\u3001#NULL\uFF01\u3001#NUM\uFF01\u3001#VALUE\uFF01\u548C#REF\uFF01\uFF09,ISERROR\u5C31\u6703\u8FD4\u56DETRUE\u3002`}]},ISLOGICAL:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662FTRUE\u9084\u662FFALSE\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662FTRUE\u9084\u662FFALSE\u3002",p:[{name:"value",detail:`\u8981\u9A57\u8B49\u5176\u70BA\u908F\u8F2F TRUE \u9084\u662F\u908F\u8F2F FALSE \u7684\u503C\u3002 + +*\u5982\u679C\u503C\u70BATRUE\u6216FALSE,\u6216\u70BA\u6307\u5411\u503C\u70BATRUE\u6216FALSE\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,ISLOGICAL\u5C07\u8FD4\u56DETRUE\u3002`}]},ISNA:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u932F\u8AA4\u503C#N/A\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u932F\u8AA4\u503C#N/A\u3002",p:[{name:"value",detail:`\u8981\u8207\u932F\u8AA4\u503C#N/A\u9032\u884C\u6BD4\u8F03\u7684\u503C\u3002 + +*\u5982\u679C\u503C\u70BA#N/A\u6216\u6307\u5411\u5305\u542B#N/A\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5247ISNA\u5C07\u8FD4\u56DETRUE,\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},ISNONTEXT:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u975E\u6587\u5B57\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u975E\u6587\u5B57\u3002",p:[{name:"value",detail:`\u8981\u6AA2\u67E5\u7684\u6587\u5B57\u3002 + +*\u5982\u679C\u53C3\u6578\u70BA\u6587\u5B57\u503C\u6216\u6307\u5411\u5305\u542B\u6587\u5B57\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,ISNONTEXT\u5C07\u8FD4\u56DEFALSE,\u5426\u5247\u8FD4\u56DETRUE\u3002 + +\u7576\u503C\u70BA\u6307\u5411\u7A7A\u5132\u5B58\u683C\u7684\u5F15\u7528\u6642,ISNONTEXT\u6703\u8FD4\u56DETRUE\u3002 + +\u7576\u503C\u70BA\u7A7A\u5B57\u4E32\u6642,ISNONTEXT\u5C07\u8FD4\u56DEFALSE,\u56E0\u70BA\u7A7A\u4E32\u88AB\u8996\u4F5C\u6587\u5B57\u3002`}]},ISNUMBER:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u6578\u4F4D\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u6578\u4F4D\u3002",p:[{name:"value",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA\u6578\u4F4D\u7684\u503C\u3002 + +*\u5982\u679C\u53C3\u6578\u70BA\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u4F4D\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,ISNUMBER\u5C07\u8FD4\u56DETRUE,\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},ISREF:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u6709\u6548\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u6709\u6548\u7684\u5132\u5B58\u683C\u5F15\u7528\u3002",p:[{name:"value",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA\u5132\u5B58\u683C\u5F15\u7528\u7684\u503C\u3002 + +*\u5982\u679C\u53C3\u6578\u662F\u6709\u6548\u7684\u5132\u5B58\u683C\u5F15\u7528,ISREF\u5C07\u8FD4\u56DETRUE,\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},ISTEXT:{d:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u6587\u5B57\u3002",a:"\u6AA2\u67E5\u67D0\u500B\u503C\u662F\u5426\u70BA\u6587\u5B57\u3002",p:[{name:"value",detail:`\u8981\u9A57\u8B49\u5176\u662F\u5426\u70BA\u6587\u5B57\u7684\u503C\u3002 + +\u5982\u679C\u53C3\u6578\u70BA\u6587\u5B57\u503C\u6216\u6307\u5411\u5305\u542B\u6587\u5B57\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,ISTEXT\u5C07\u8FD4\u56DETRUE,\u5426\u5247\u8FD4\u56DEFALSE\u3002`}]},TYPE:{d:"\u8FD4\u56DE\u6578\u503C\u7684\u985E\u578B\u3002",a:"\u8FD4\u56DE\u6578\u503C\u7684\u985E\u578B\u3002",p:[{name:"value",detail:`\u8981\u78BA\u5B9A\u5176\u985E\u578B\u7684\u6578\u64DA\u3002 + +\u6578\u4F4D\u8FD4\u56DE1\uFF1B + +\u6587\u5B57\u8FD4\u56DE2\uFF1B + +\u908F\u8F2F\u503C\u8FD4\u56DE4\uFF1B + +\u932F\u8AA4\u503C\u8FD4\u56DE16\uFF1B + +\u6578\u7D44\u8FD4\u56DE64\uFF1B`}]},N:{d:"\u8FD4\u56DE\u8F49\u5316\u70BA\u6578\u503C\u5F8C\u7684\u503C\u3002",a:"\u8FD4\u56DE\u8F49\u5316\u70BA\u6578\u503C\u5F8C\u7684\u503C\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u6578\u4F4D\u7684\u53C3\u6578\u3002 + +\u5982\u679C\u503C\u70BA\u6578\u4F4D,\u5247\u8FD4\u56DE\u8A72\u6578\u4F4D\u3002 + +\u5982\u679C\u503C\u70BA\u65E5\u671F,\u5247\u8FD4\u56DE\u8A72\u65E5\u671F\u7684\u5E8F\u865F\u3002 + +\u5982\u679C\u503C\u70BATRUE,\u5247\u8FD4\u56DE1\u3002 + +\u5982\u679C\u503C\u70BAFALSE,\u5247\u8FD4\u56DE0\u3002 + +\u5982\u679C\u503C\u70BA\u932F\u8AA4\u503C,\u5247\u8FD4\u56DE\u932F\u8AA4\u503C\u3002 + +\u5982\u679C\u503C\u70BA\u5176\u4ED6\u503C,\u5247\u8FD4\u56DE0\u3002`}]},TO_DATE:{d:"\u5C07\u6307\u5B9A\u7684\u6578\u4F4D\u8F49\u63DB\u70BA\u65E5\u671F\u3002",a:"\u5C07\u6307\u5B9A\u7684\u6578\u4F4D\u8F49\u63DB\u70BA\u65E5\u671F\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u65E5\u671F\u7684\u53C3\u6578\u6216\u5176\u5132\u5B58\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u70BA\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,TO_DATE\u6703\u5C07\u503C\u8F49\u63DB\u70BA\u76F8\u61C9\u7684\u65E5\u671F\u4E26\u8FD4\u56DE,\u503C\u4EE3\u8868\u5F9E\u5341\u4E8C\u670830\u65E5\u5230\u5C0D\u61C9\u7684\u65E5\u671F\u4E4B\u9593\u7684\u5929\u6578, + +\u8CA0\u503C\u8868\u793A\u5C0D\u61C9\u7684\u65E5\u671F\u5728\u5341\u4E8C\u670830\u65E5\u4E4B\u524D,\u800C\u5C0F\u6578\u503C\u5247\u4EE3\u8868\u4E00\u5929\u4E2D\u5F9E\u5348\u591C\u7B97\u8D77\u7684\u6642\u9593\u3002 +\u5982\u679C\u503C\u4E0D\u662F\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5247TO_DATE\u5C07\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_PURE_NUMBER:{d:"\u5C07\u7D66\u5B9A\u7684\u65E5\u671F/\u6642\u9593\u3001\u767E\u5206\u6BD4\u3001\u8CA8\u5E63\u91D1\u984D\u6216\u5176\u4ED6\u683C\u5F0F\u7684\u6578\u503C\u8F49\u63DB\u70BA\u4E0D\u5E36\u683C\u5F0F\u7684\u7D14\u6578\u4F4D\u3002",a:"\u5C07\u7D66\u5B9A\u7684\u65E5\u671F/\u6642\u9593\u3001\u767E\u5206\u6BD4\u3001\u8CA8\u5E63\u91D1\u984D\u6216\u5176\u4ED6\u683C\u5F0F\u7684\u6578\u503C\u8F49\u63DB\u70BA\u4E0D\u5E36\u683C\u5F0F\u7684\u7D14\u6578\u4F4D\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u7D14\u6578\u4F4D\u7684\u53C3\u6578\u6216\u5176\u5132\u5B58\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u70BA\u6578\u4F4D\u6216\u6307\u5411\u5305\u542B\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,TO_PURE_NUMBER\u5C07\u4EE5\u4E0D\u5E36\u4EFB\u4F55\u683C\u5F0F\u8207\u89E3\u91CB\u7684\u5F62\u5F0F\u8FD4\u56DE\u503C\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5247TO_PERCENT\u5C07\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_TEXT:{d:"\u5C07\u7D66\u5B9A\u7684\u6578\u4F4D\u503C\u8F49\u63DB\u70BA\u6587\u672C\u683C\u5F0F\u3002",a:"\u5C07\u7D66\u5B9A\u7684\u6578\u4F4D\u503C\u8F49\u63DB\u70BA\u6587\u672C\u683C\u5F0F\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u6587\u5B57\u7684\u53C3\u6578\u6216\u5176\u5132\u5B58\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u70BA\u6578\u4F4D\u6216\u6307\u5411\u5305\u542B\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,TO_TEXT\u5C07\u8FD4\u56DE\u5B57\u4E32\u5F62\u5F0F\u7684\u503C,\u4E26\u4FDD\u6301\u73FE\u6709\u683C\u5F0F\u3002\u5373\u539F\u70BA\u8CA8\u5E63\u7684\u4ECD\u70BA\u8CA8\u5E63,\u539F\u70BA\u5341\u9032\u4F4D\u6578\u7684\u4ECD\u70BA\u5341\u9032\u4F4D\u6578,\u539F\u70BA\u767E\u5206\u6BD4\u7684\u4ECD\u70BA\u767E\u5206\u6BD4,\u539F\u70BA\u65E5\u671F\u7684\u4ECD\u70BA\u65E5\u671F\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5247TO_TEXT\u5C07\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_DOLLARS:{d:"\u5C07\u6307\u5B9A\u7684\u6578\u4F4D\u8F49\u63DB\u70BA\u7F8E\u5143\u91D1\u984D\u3002",a:"\u5C07\u6307\u5B9A\u7684\u6578\u4F4D\u8F49\u63DB\u70BA\u7F8E\u5143\u91D1\u984D\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u7F8E\u5143\u91D1\u984D\u7684\u53C3\u6578\u6216\u5176\u5132\u5B58\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5247TO_DOLLARS\u5C07\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},TO_PERCENT:{d:"\u5C07\u6307\u5B9A\u7684\u6578\u4F4D\u8F49\u63DB\u70BA\u767E\u5206\u6BD4\u3002",a:"\u5C07\u6307\u5B9A\u7684\u6578\u4F4D\u8F49\u63DB\u70BA\u767E\u5206\u6BD4\u3002",p:[{name:"value",detail:`\u8981\u8F49\u63DB\u70BA\u767E\u5206\u6BD4\u7684\u53C3\u6578\u6216\u5176\u5132\u5B58\u683C\u5F15\u7528\u3002 + +\u5982\u679C\u503C\u70BA\u6578\u4F4D\u6216\u6307\u5411\u5305\u542B\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,TO_PERCENT\u6703\u4EE51 = 100%\u70BA\u6A19\u6E96,\u5C07\u503C\u8F49\u63DB\u70BA\u767E\u5206\u6BD4\u3002 + +\u5982\u679C\u503C\u4E0D\u662F\u6578\u4F4D\u6216\u6307\u5411\u5167\u5BB9\u70BA\u6578\u503C\u7684\u5132\u5B58\u683C\u7684\u5F15\u7528,\u5247TO_PERCENT\u5C07\u5728\u4E0D\u505A\u4EFB\u4F55\u4FEE\u6539\u7684\u60C5\u51B5\u4E0B\u8FD4\u56DE\u503C\u3002`}]},DGET:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u5F9E\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5217\u4E2D\u9078\u53D6\u7B26\u5408\u6307\u5B9A\u689D\u4EF6\u7684\u55AE\u500B\u503C\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u5F9E\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5217\u4E2D\u9078\u53D6\u7B26\u5408\u6307\u5B9A\u689D\u4EF6\u7684\u55AE\u500B\u503C\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DMAX:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5927\u6578\u4F4D\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5927\u6578\u4F4D\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DMIN:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5C0F\u6578\u4F4D\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6700\u5C0F\u6578\u4F4D\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DAVERAGE:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u5C0D\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u503C\u6C42\u5E73\u5747\u503C\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u5C0D\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u503C\u6C42\u5E73\u5747\u503C\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DCOUNT:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u5305\u542B\u6578\u4F4D\u7684\u5132\u5B58\u683C\u7684\u500B\u6578\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u5305\u542B\u6578\u4F4D\u7684\u5132\u5B58\u683C\u7684\u500B\u6578\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DCOUNTA:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u975E\u7A7A\u5132\u5B58\u683C\u7684\u500B\u6578\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u975E\u7A7A\u5132\u5B58\u683C\u7684\u500B\u6578\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DPRODUCT:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u503C\u7684\u4E58\u7A4D\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u503C\u7684\u4E58\u7A4D\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DSTDEV:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5229\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4F5C\u70BA\u4E00\u500B\u6A23\u672C\u4F30\u7B97\u51FA\u7684\u7E3D\u9AD4\u6A19\u6E96\u5DEE\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5229\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4F5C\u70BA\u4E00\u500B\u6A23\u672C\u4F30\u7B97\u51FA\u7684\u7E3D\u9AD4\u6A19\u6E96\u5DEE\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DSTDEVP:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5229\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4F5C\u70BA\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u51FA\u7684\u7E3D\u9AD4\u6A19\u6E96\u5DEE\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5229\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4F5C\u70BA\u6A23\u672C\u7E3D\u9AD4\u8A08\u7B97\u51FA\u7684\u7E3D\u9AD4\u6A19\u6E96\u5DEE\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DSUM:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4E4B\u548C\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5217\u8868\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4E4B\u548C\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DVAR:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5229\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4F5C\u70BA\u4E00\u500B\u6A23\u672C\u4F30\u7B97\u51FA\u7684\u7E3D\u9AD4\u65B9\u5DEE\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u8FD4\u56DE\u5229\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u4F5C\u70BA\u4E00\u500B\u6A23\u672C\u4F30\u7B97\u51FA\u7684\u7E3D\u9AD4\u65B9\u5DEE\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},DVARP:{d:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u901A\u904E\u4F7F\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u8A08\u7B97\u6A23\u672C\u7E3D\u9AD4\u7684\u6A23\u672C\u7E3D\u9AD4\u65B9\u5DEE\u3002",a:"\u4F7F\u7528SQL\u5F0F\u67FB\u8A62,\u901A\u904E\u4F7F\u7528\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u4E2D\u6EFF\u8DB3\u6307\u5B9A\u689D\u4EF6\u7684\u8A18\u9304\u6B04\u4F4D\uFF08\u5217\uFF09\u4E2D\u7684\u6578\u4F4D\u8A08\u7B97\u6A23\u672C\u7E3D\u9AD4\u7684\u6A23\u672C\u7E3D\u9AD4\u65B9\u5DEE\u3002",p:[{name:"database",detail:"\u69CB\u6210\u6E05\u55AE\u6216\u8CC7\u6599\u5EAB\u7684\u5132\u5B58\u683C\u5340\u57DF,\u6E05\u55AE\u7684\u7B2C\u4E00\u884C\u5305\u542B\u6BCF\u4E00\u5217\u7684\u6A19\u7C64\u3002"},{name:"field",detail:`\u6307\u5B9Adatabase\u4E2D\u7684\u54EA\u4E00\u5217\u5305\u542B\u8981\u9078\u53D6\u548C\u7528\u65BC\u8A08\u7B97\u7684\u503C\u3002 + +field\u53EF\u4EE5\u662F\u8207database\u7B2C\u4E00\u884C\u4E2D\u67D0\u500B\u5217\u6A19\u984C\u5C0D\u61C9\u7684\u6587\u5B57\u6A19\u7C64,\u4E5F\u53EF\u4EE5\u662F\u6307\u5B9A\u76F8\u95DC\u5217\u7684\u6578\u4F4D\u7D22\u5F15,\u7B2C\u4E00\u5217\u7684\u7D22\u5F15\u503C\u70BA1\u3002`},{name:"criteria",detail:"\u5305\u542B\u6240\u6307\u5B9A\u689D\u4EF6\u7684\u5132\u5B58\u683C\u5340\u57DF\u3002\u8A08\u7B97\u4E4B\u524D\u5C07\u4F7F\u7528\u9019\u4E9B\u689D\u4EF6\u4F86\u904E\u6FFEdatabase\u4E2D\u7684\u503C\u3002"}]},AGE_BY_IDCARD:{d:"\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u5E74\u9F61\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u5E74\u9F61",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"},{name:"\u622A\u6B62\u65E5\u671F",detail:"\u5E74\u9F61\u8A08\u7B97\u7684\u622A\u6B62\u65E5\u671F\u6216\u7BC4\u570D,\u9ED8\u8A8D\u70BA\u7576\u65E5\u3002"}]},SEX_BY_IDCARD:{d:"\u6839\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u6027\u5225\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u6839\u64DA\u8EAB\u4EFD\u8B49\u865F\u5F97\u5230\u6027\u5225\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"}]},BIRTHDAY_BY_IDCARD:{d:"\u6839\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u751F\u65E5\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u6839\u64DA\u8EAB\u4EFD\u8B49\u865F\u5F97\u5230\u751F\u65E5\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"},{name:"\u751F\u65E5\u683C\u5F0F",detail:"\u65E5\u671F\u985E\u578B,\u9ED8\u8A8D0:[1900/01/01],1:[1900-01-01],2:[1900\u5E741\u67081\u65E5]"}]},PROVINCE_BY_IDCARD:{d:"\u6839\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u7C4D\u8CAB\u7684\u7701\u4EFD\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u6839\u64DA\u8EAB\u4EFD\u8B49\u865F\u5F97\u5230\u7C4D\u8CAB\u7684\u7701\u4EFD\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"}]},CITY_BY_IDCARD:{d:"\u6839\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u7C4D\u8CAB\u7684\u90FD\u5E02\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u6839\u64DA\u8EAB\u4EFD\u8B49\u865F\u5F97\u5230\u7C4D\u8CAB\u7684\u90FD\u5E02\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"}]},STAR_BY_IDCARD:{d:"\u6839\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u661F\u5EA7\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u6839\u64DA\u8EAB\u4EFD\u8B49\u865F\u5F97\u5230\u661F\u5EA7\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"}]},ANIMAL_BY_IDCARD:{d:"\u6839\u64DA\u4E2D\u570B\u8EAB\u4EFD\u8B49\u865F\u8A08\u7B97\u51FA\u751F\u8096\uFF08\u9F20\u3001\u725B\u3001\u864E\u3001\u5154\u2026\uFF09\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u6839\u64DA\u8EAB\u4EFD\u8B49\u865F\u5F97\u5230\u751F\u8096\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"}]},ISIDCARD:{d:"\u9A57\u8B49\u8EAB\u4EFD\u8B49\u7684\u683C\u5F0F\u662F\u5426\u6B63\u78BA\u3002\u652F\u630115\u4F4D\u621618\u4F4D\u8EAB\u4EFD\u8B49",a:"\u9A57\u8B49\u8EAB\u4EFD\u8B49\u683C\u5F0F\u6B63\u78BA\u6027\u3002",p:[{name:"\u8EAB\u4EFD\u8B49\u865F",detail:"15\u4F4D\u6216\u800518\u4F4D\u7684\u8EAB\u4EFD\u8B49\u865F\u6216\u7BC4\u570D\u3002"}]},DM_TEXT_CUTWORD:{d:"\u6587\u5B57\u5206\u8A5E\u3002\u628A\u4E00\u9023\u4E32\u6587\u5B57\u6298\u958B\u70BA\u4E00\u7CFB\u5217\u55AE\u7368\u8A5E\u8A9E",a:"\u4E2D\u6587\u6587\u5B57\u5206\u8A5E\u3002",p:[{name:"\u6587\u5B57",detail:"\u4EFB\u610F\u9700\u8981\u5206\u8A5E\u7684\u6587\u5B57\u3002"},{name:"\u5206\u8A5E\u6A21\u5F0F",detail:"\u9ED8\u8A8D\u70BA0[\u7CBE\u78BA\u6A21\u5F0F]\uFF0C1[\u5168\u6A21\u5F0F]\uFF0C2[\u641C\u5C0B\u5F15\u64CE\u6A21\u5F0F]\u3002"}]},DM_TEXT_TFIDF:{d:"\u63A1\u7528tf-idf\u7B97\u704B\u9032\u884C\u95DC\u9375\u5B57\u9078\u53D6\u3002\u5F9E\u4E00\u9023\u4E32\u6587\u5B57\u4E2D\u8B58\u5225\u95DC\u9375\u5B57",a:"tf-idf\u95DC\u9375\u5B57\u8B58\u5225\u3002",p:[{name:"\u6587\u5B57",detail:"\u4EFB\u610F\u9700\u8981\u5206\u8A5E\u7684\u6587\u5B57\u3002"},{name:"\u95DC\u9375\u5B57\u500B\u6578",detail:"\u7B97\u704B\u8FD4\u56DE\u7684\u95DC\u9375\u5B57\u500B\u6578\uFF0C\u9ED8\u8A8D20"},{name:"\u8A9E\u6599\u5EAB",detail:"\u9078\u64C7\u7279\u5B9A\u9818\u57DF\u7684\u8A9E\u6599\u5EAB\uFF0C\u9ED8\u8A8D0[\u901A\u7528]\uFF0C1[\u91D1\u878D]\uFF0C2[\u91AB\u7642]"}]},DM_TEXT_TEXTRANK:{d:"\u63A1\u7528TextRank\u7B97\u704B\u9032\u884C\u95DC\u9375\u5B57\u9078\u53D6\u3002\u5F9E\u4E00\u9023\u4E32\u6587\u5B57\u4E2D\u8B58\u5225\u95DC\u9375\u5B57",a:"TextRank\u95DC\u9375\u5B57\u8B58\u5225\u3002",p:[{name:"\u6587\u5B57",detail:"\u4EFB\u610F\u9700\u8981\u5206\u8A5E\u7684\u6587\u5B57\u3002"},{name:"\u95DC\u9375\u5B57\u500B\u6578",detail:"\u7B97\u704B\u8FD4\u56DE\u7684\u95DC\u9375\u5B57\u500B\u6578\uFF0C\u9ED8\u8A8D20"},{name:"\u8A9E\u6599\u5EAB",detail:"\u9078\u64C7\u7279\u5B9A\u9818\u57DF\u7684\u8A9E\u6599\u5EAB\uFF0C\u9ED8\u8A8D0[\u901A\u7528]\uFF0C1[\u91D1\u878D]\uFF0C2[\u91AB\u7642]"}]},DATA_CN_STOCK_CLOSE:{d:"\u6839\u64DA\u80A1\u7968\u4EE3\u78BC\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6536\u76E4\u50F9\u3002",a:"\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6536\u76E4\u50F9\u3002",p:[{name:"\u80A1\u7968\u4EE3\u78BC",detail:"6\u4F4D\u80A1\u7968\u4EE3\u78BC\uFF0C\u5FC5\u586B\u9805\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8A8D\u70BA\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u8907\u6B0A\u9664\u6B0A",detail:"\u9078\u64C7\u80A1\u7968\u7684\u9664\u6B0A\u8907\u6B0A\u985E\u578B\uFF0C\u9ED8\u8A8D0[\u524D\u8907\u6B0A]\uFF0C1[\u539F\u59CB\u50F9\u683C]\uFF0C2[\u5F8C\u8907\u6B0A]"}]},DATA_CN_STOCK_OPEN:{d:"\u6839\u64DA\u80A1\u7968\u4EE3\u78BC\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u958B\u76E4\u50F9\u3002",a:"\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u958B\u76E4\u50F9\u3002",p:[{name:"\u80A1\u7968\u4EE3\u78BC",detail:"6\u4F4D\u80A1\u7968\u4EE3\u78BC\uFF0C\u5FC5\u586B\u9805\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8A8D\u70BA\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u8907\u6B0A\u9664\u6B0A",detail:"\u9078\u64C7\u80A1\u7968\u7684\u9664\u6B0A\u8907\u6B0A\u985E\u578B\uFF0C\u9ED8\u8A8D0[\u524D\u8907\u6B0A]\uFF0C1[\u539F\u59CB\u50F9\u683C]\uFF0C2[\u5F8C\u8907\u6B0A]"}]},DATA_CN_STOCK_MAX:{d:"\u6839\u64DA\u80A1\u7968\u4EE3\u78BC\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6700\u9AD8\u50F9\u3002",a:"\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6700\u9AD8\u50F9\u3002",p:[{name:"\u80A1\u7968\u4EE3\u78BC",detail:"6\u4F4D\u80A1\u7968\u4EE3\u78BC\uFF0C\u5FC5\u586B\u9805\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8A8D\u70BA\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u8907\u6B0A\u9664\u6B0A",detail:"\u9078\u64C7\u80A1\u7968\u7684\u9664\u6B0A\u8907\u6B0A\u985E\u578B\uFF0C\u9ED8\u8A8D0[\u524D\u8907\u6B0A]\uFF0C1[\u539F\u59CB\u50F9\u683C]\uFF0C2[\u5F8C\u8907\u6B0A]"}]},DATA_CN_STOCK_MIN:{d:"\u6839\u64DA\u80A1\u7968\u4EE3\u78BC\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6700\u4F4E\u50F9\u3002",a:"\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6700\u4F4E\u50F9\u3002",p:[{name:"\u80A1\u7968\u4EE3\u78BC",detail:"6\u4F4D\u80A1\u7968\u4EE3\u78BC\uFF0C\u5FC5\u586B\u9805\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5,\u9ED8\u8BA4\u4E3A\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u8907\u6B0A\u9664\u6B0A",detail:"\u9078\u64C7\u80A1\u7968\u7684\u9664\u6B0A\u8907\u6B0A\u985E\u578B\uFF0C\u9ED8\u8A8D0[\u524D\u8907\u6B0A]\uFF0C1[\u539F\u59CB\u50F9\u683C]\uFF0C2[\u5F8C\u8907\u6B0A]"}]},DATA_CN_STOCK_VOLUMN:{d:"\u6839\u64DA\u80A1\u7968\u4EE3\u78BC\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6210\u4EA4\u91CF\u3002",a:"\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6210\u4EA4\u91CF\u3002",p:[{name:"\u80A1\u7968\u4EE3\u78BC",detail:"6\u4F4D\u80A1\u7968\u4EE3\u78BC\uFF0C\u5FC5\u586B\u9805\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8A8D\u70BA\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u8907\u6B0A\u9664\u6B0A",detail:"\u9078\u64C7\u80A1\u7968\u7684\u9664\u6B0A\u8907\u6B0A\u985E\u578B\uFF0C\u9ED8\u8A8D0[\u524D\u8907\u6B0A]\uFF0C1[\u539F\u59CB\u50F9\u683C]\uFF0C2[\u5F8C\u8907\u6B0A]"}]},DATA_CN_STOCK_AMOUNT:{d:"\u6839\u64DA\u80A1\u7968\u4EE3\u78BC\u548C\u65E5\u671F\uFF0C\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6210\u4EA4\u984D\u3002",a:"\u8FD4\u56DEA\u80A1\u5C0D\u61C9\u80A1\u7968\u6210\u4EA4\u984D\u3002",p:[{name:"\u80A1\u7968\u4EE3\u78BC",detail:"6\u4F4D\u80A1\u7968\u4EE3\u78BC\uFF0C\u5FC5\u586B\u9805\u3002"},{name:"\u65E5\u671F",detail:"\u80A1\u7968\u7684\u4EA4\u6613\u65E5\uFF0C\u9ED8\u8A8D\u70BA\u6700\u65B0\u4EA4\u6613\u65E5"},{name:"\u8907\u6B0A\u9664\u6B0A",detail:"\u9078\u64C7\u80A1\u7968\u7684\u9664\u6B0A\u8907\u6B0A\u985E\u578B\uFF0C\u9ED8\u8A8D0[\u524D\u8907\u6B0A]\uFF0C1[\u539F\u59CB\u50F9\u683C]\uFF0C2[\u5F8C\u8907\u6B0A]"}]},ISDATE:{d:"\u9A57\u8B49\u65E5\u671F\u7684\u683C\u5F0F\u662F\u5426\u6B63\u78BA\u3002\u652F\u6301\u591A\u7A2E\u65E5\u671F\u683C\u5F0F",a:"\u9A57\u8B49\u65E5\u671F\u683C\u5F0F\u6B63\u78BA\u6027\u3002",p:[{name:"\u65E5\u671F",detail:"\u65E5\u671F\u503C,\u4F8B\u59821990/01/01, 1990\u5E741\u67081\u65E5\u7B49\u3002"}]},LINESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u6298\u7DDA\u5716sparklines\uFF0C\u7528\u65BC\u63CF\u8FF0\u6578\u64DA\u7684\u9023\u7E8C\u8D70\u52E2",a:"\u751F\u6210\u5132\u5B58\u683C\u6298\u7DDA\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C{1,2,3,4,5}\u7B49\u3002"},{name:"\u7DDA\u689D\u984F\u8272",detail:"\u7DDA\u5716\u7684\u7DDA\u689D\u984F\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u500B\u7BC4\u570DA1\u3001\u8272\u9336\u7D22\u5F15\u6578\u503C\u6216\u8005\u5177\u9AD4\u984F\u8272\u503C\uFF0C\u8A2D\u5B9A\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8A8D#2ec7c9"},{name:"\u7DDA\u689D\u7C97\u7D30",detail:"\u6298\u7DDA\u5716\u7DDA\u6BB5\u7C97\u7D30\uFF0C\u9ED8\u8A8D\u70BA1px"},{name:"\u8F14\u52A9\u7DDA",detail:"\u4E00\u689D\u6A6B\u7DDA\uFF0C\u53EF\u4EE5\u662Fmin\u3001max\u3001avg\u3001median\u3001\u7BC4\u570D\u6216\u81EA\u5B9A\u7FA9\u6578\u503C\uFF0C\u9ED8\u8A8D0\u7121"},{name:"\u8F14\u52A9\u7DDA\u984F\u8272",detail:"\u8F14\u52A9\u7DDA\u7684\u984F\u8272\u8A2D\u5B9A\uFF0C\u540C\u7DDA\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D#000"},{name:"\u6700\u5927\u503C\u6A19\u8B58",detail:"\u6A19\u8B58\u7DDA\u5716\u6700\u5927\u503C\uFF0C\u540C\u7DDA\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D0\u4E0D\u986F\u793A"},{name:"\u6700\u5C0F\u503C\u6A19\u8B58",detail:"\u6A19\u8B58\u7DDA\u5716\u6700\u5C0F\u503C\uFF0C\u540C\u7DDA\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D0\u4E0D\u986F\u793A"},{name:"\u6A19\u8B58\u5927\u5C0F",detail:"\u6700\u5927\u503C\u548C\u6700\u5C0F\u503C\u7684\u6A19\u8B58\u5927\u5C0F\u8A2D\u5B9A\uFF0C\u9ED8\u8A8D\u70BA1.5"}]},AREASPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u9762\u7A4D\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u6578\u64DA\u7684\u9023\u7E8C\u7D2F\u7A4D\u503C\u8D70\u52E2",a:"\u751F\u6210\u5132\u5B58\u683C\u9762\u7A4D\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C{1,2,3,4,5}\u7B49\u3002"},{name:"\u7DDA\u689D\u984F\u8272",detail:"\u7DDA\u5716\u7684\u7DDA\u689D\u984F\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u500B\u7BC4\u570DA1\u3001\u8272\u9336\u7D22\u5F15\u6578\u503C\u6216\u8005\u5177\u9AD4\u984F\u8272\u503C\uFF0C\u8A2D\u5B9A\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8A8D#2ec7c9"},{name:"\u586B\u5145\u984F\u8272",detail:"\u5F62\u6210\u9762\u7A4D\u5716\uFF0C\u540C\u7DDA\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D0\u4E0D\u986F\u793A"},{name:"\u7DDA\u689D\u7C97\u7D30",detail:"\u6298\u7DDA\u5716\u7DDA\u6BB5\u7C97\u7D30\uFF0C\u9ED8\u8A8D\u70BA1px"},{name:"\u8F14\u52A9\u7DDA",detail:"\u4E00\u689D\u6A6B\u7DDA\uFF0C\u53EF\u4EE5\u662Fmin\u3001max\u3001avg\u3001median\u3001\u7BC4\u570D\u6216\u81EA\u5B9A\u7FA9\u6578\u503C\uFF0C\u9ED8\u8A8D0\u7121"},{name:"\u8F14\u52A9\u7DDA\u984F\u8272",detail:"\u8F14\u52A9\u7DDA\u7684\u984F\u8272\u8A2D\u5B9A\uFF0C\u540C\u7DDA\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D#000"}]},COLUMNSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u5782\u76F4\u67F1\u72C0\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u96E2\u6563\u6578\u64DA\u4E4B\u9593\u7684\u5927\u5C0F\u60C5\u51B5",a:"\u751F\u6210\u5132\u5B58\u683C\u5782\u76F4\u67F1\u72C0\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C{1,2,3,4,5}\u7B49\u3002"},{name:"\u67F1\u689D\u9593\u9694",detail:"\u67F1\u689D\u4E4B\u9593\u7684\u9593\u9694\u8DDD\u96E2\uFF0C\u9ED8\u8A8D\u70BA1"},{name:"\u67F1\u689D\u984F\u8272",detail:"\u7DDA\u5716\u7684\u7DDA\u689D\u984F\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u500B\u7BC4\u570DA1\u3001\u8272\u9336\u7D22\u5F15\u6578\u503C\u6216\u8005\u5177\u9AD4\u984F\u8272\u503C\uFF0C\u8A2D\u5B9A\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8A8D#fc5c5c"},{name:"\u8CA0\u5411\u67F1\u689D\u984F\u8272",detail:"\u8CA0\u5411\u67F1\u689D\u984F\u8272\u8A2D\u5B9A\uFF0C\u4EE3\u8868\u8CA0\u503C\u7684\u984F\u8272\uFF0C\u540C\u67F1\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D#97b552"},{name:"\u6700\u5927\u503C",detail:"\u67F1\u5716\u6700\u5927\u503C\uFF0C\u7528\u65BC\u898F\u7BC4\u67F1\u5716\u9577\u5EA6\uFF0C\u9ED8\u8A8D\u70BA\u81EA\u52D5\u8A08\u7B97false\u3001auto\u3001null"},{name:"\u8272\u677F",detail:"\u8ABF\u8272\u677F\u53EF\u4EE5\u55AE\u7368\u8A2D\u5B9A\u6BCF\u500B\u67F1\u689D\u7684\u984F\u8272\uFF0C\u53EF\u8A2D\u5B9A\u591A\u500B\uFF0C\u652F\u6301\u5169\u7A2E\u683C\u5F0F:1\u984F\u8272\u4F8B\u5982#000\uFF0C\u4EE3\u8868\u7B2C\u4E00\u500B\u67F1\u7684\u984F\u8272\u662F\u9ED1\u8272\uFF1B2\u6578\u503C\u7BC4\u570D:\u984F\u8272\uFF0C\u4F8B\u5982-2:#000\u8868\u793A\u6578\u503C\u70BA-2\u7684\u67F1\u70BA\u9ED1\u8272\uFF0C0:5:#000\u8868\u793A\u6578\u503C0-5\u7684\u67F1\u70BA\u9ED1\u8272\uFF0C\u9ED8\u8A8D\u70BA\u7A7A"}]},STACKCOLUMNSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u7D2F\u7A4D\u5782\u76F4\u67F1\u72C0\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u96E2\u6563\u6578\u64DA\u591A\u500B\u7DAD\u5EA6\u7684\u6578\u503C\u5927\u5C0F",a:"\u751F\u6210\u5132\u5B58\u683C\u7D2F\u7A4D\u5782\u76F4\u67F1\u72C0\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20\uFF0C{1,2,3,4,5}\u7B49\u3002"},{name:"\u6309\u5217\u5806\u7A4D",detail:"\u5982\u679C\u9700\u8981\u6309\u884C\u5806\u7A4D\u5247\u672C\u9805\u8A2D\u70BAfalse\u62160\uFF0C\u9ED8\u8A8D\u70BA\u662F1"},{name:"\u67F1\u689D\u9593\u9694",detail:"\u67F1\u689D\u4E4B\u9593\u7684\u9593\u9694\u8DDD\u96E2\uFF0C\u9ED8\u8A8D\u70BA1"},{name:"\u6700\u5927\u503C",detail:"\u7D2F\u7A4D\u67F1\u5716\u6700\u5927\u503C\uFF0C\u7528\u65BC\u898F\u7BC4\u67F1\u5716\u9577\u5EA6\uFF0C\u9ED8\u8A8D\u70BA\u81EA\u52D5\u8A08\u7B97false\u3001auto\u3001null"},{name:"\u7D2F\u7A4D\u8272\u677F",detail:"\u8ABF\u8272\u677F\u53EF\u4EE5\u55AE\u7368\u8A2D\u5B9A\u6BCF\u500B\u7DAD\u5EA6\u7684\u67F1\u689D\u984F\u8272\uFF0C\u53EF\u8A2D\u5B9A\u70BAA1:A10\u7B49\u7BC4\u570D\uFF0C\u9ED8\u8A8D\u70BA#2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BARSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u6A6B\u5411\u689D\u5F62\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u96E2\u6563\u6578\u64DA\u4E4B\u9593\u7684\u5927\u5C0F\u60C5\u51B5",a:"\u751F\u6210\u5132\u5B58\u683C\u6A6B\u5411\u689D\u5F62\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D,\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20, {1,2,3,4,5}\u7B49\u3002"},{name:"\u67F1\u689D\u9593\u9694",detail:"\u67F1\u689D\u4E4B\u9593\u7684\u9593\u9694\u8DDD\u96E2\uFF0C\u9ED8\u8A8D\u70BA1"},{name:"\u67F1\u689D\u984F\u8272",detail:"\u7DDA\u5716\u7684\u7DDA\u689D\u984F\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u500B\u7BC4\u570DA1\u3001\u8272\u9336\u7D22\u5F15\u6578\u503C\u6216\u8005\u5177\u9AD4\u984F\u8272\u503C\uFF0C\u8A2D\u5B9A\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8A8D#fc5c5c"},{name:"\u8CA0\u5411\u67F1\u689D\u984F\u8272",detail:"\u8CA0\u5411\u67F1\u689D\u984F\u8272\u8A2D\u5B9A\uFF0C\u4EE3\u8868\u8CA0\u503C\u7684\u984F\u8272\uFF0C\u540C\u67F1\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D#97b552"},{name:"\u6700\u5927\u503C",detail:"\u67F1\u5716\u6700\u5927\u503C\uFF0C\u7528\u65BC\u898F\u7BC4\u67F1\u5716\u9577\u5EA6\uFF0C\u9ED8\u8A8D\u70BA\u81EA\u52D5\u8A08\u7B97false\u3001auto\u3001null"},{name:"\u8272\u677F",detail:"\u8ABF\u8272\u677F\u53EF\u4EE5\u55AE\u7368\u8A2D\u5B9A\u6BCF\u500B\u67F1\u689D\u7684\u984F\u8272\uFF0C\u53EF\u8A2D\u5B9A\u591A\u500B\uFF0C\u652F\u6301\u5169\u7A2E\u683C\u5F0F:1\u984F\u8272\u4F8B\u5982#000\uFF0C\u4EE3\u8868\u7B2C\u4E00\u500B\u67F1\u7684\u984F\u8272\u662F\u9ED1\u8272\uFF1B2\u6578\u503C\u7BC4\u570D:\u984F\u8272\uFF0C\u4F8B\u5982-2:#000\u8868\u793A\u6578\u503C\u70BA-2\u7684\u67F1\u70BA\u9ED1\u8272\uFF0C0:5:#000\u8868\u793A\u6578\u503C0-5\u7684\u67F1\u70BA\u9ED1\u8272\uFF0C\u9ED8\u8A8D\u70BA\u7A7A"}]},STACKBARSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u7D2F\u7A4D\u6A6B\u5411\u689D\u5F62\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u96E2\u6563\u6578\u64DA\u591A\u500B\u7DAD\u5EA6\u7684\u6578\u503C\u5927\u5C0F",a:"\u751F\u6210\u5132\u5B58\u683C\u7D2F\u7A4D\u6A6B\u5411\u689D\u5F62\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D,\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20, {1,2,3,4,5}\u7B49\u3002"},{name:"\u6309\u5217\u5806\u7A4D",detail:"\u5982\u679C\u9700\u8981\u6309\u884C\u5806\u7A4D\u5247\u672C\u9805\u8A2D\u70BAfalse\u62160\uFF0C\u9ED8\u8A8D\u70BA\u662F1"},{name:"\u67F1\u689D\u9593\u9694",detail:"\u67F1\u689D\u4E4B\u9593\u7684\u9593\u9694\u8DDD\u96E2\uFF0C\u9ED8\u8A8D\u70BA1"},{name:"\u6700\u5927\u503C",detail:"\u7D2F\u7A4D\u67F1\u5716\u6700\u5927\u503C\uFF0C\u7528\u65BC\u898F\u7BC4\u67F1\u5716\u9577\u5EA6\uFF0C\u9ED8\u8A8D\u70BA\u81EA\u52D5\u8A08\u7B97false\u3001auto\u3001null"},{name:"\u7D2F\u7A4D\u8272\u677F",detail:"\u8ABF\u8272\u677F\u53EF\u4EE5\u55AE\u7368\u8A2D\u5B9A\u6BCF\u500B\u7DAD\u5EA6\u7684\u67F1\u689D\u984F\u8272\uFF0C\u53EF\u8A2D\u5B9A\u70BAA1:A10\u7B49\u7BC4\u570D\uFF0C\u9ED8\u8A8D\u70BA#2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},DISCRETESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u96E2\u6563\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u96E2\u6563\u6578\u64DA\u8D70\u52E2",a:"\u751F\u6210\u5132\u5B58\u683C\u96E2\u6563\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D,\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20, {1,2,3,4,5}\u7B49\u3002"},{name:"\u5206\u5272\u95BE\u503C",detail:"\u96E2\u6563\u5716\u67F1\u5F62\u984F\u8272\u7684\u5340\u5206\uFF0C\u4F8B\u5982:\u8A72\u503C\u70BA0\uFF0C\u5247\u5927\u65BC0\u70BA\u85CD\u8272\uFF0C\u5C0F\u65BC0\u70BA\u7D05\u8272\uFF0C\u9ED8\u8A8D\u70BA0"},{name:"\u95BE\u503C\u4EE5\u4E0A\u984F\u8272",detail:"\u7DDA\u5716\u7684\u7DDA\u689D\u984F\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u500B\u7BC4\u570DA1\u3001\u8272\u9336\u7D22\u5F15\u6578\u503C\u6216\u8005\u5177\u9AD4\u984F\u8272\u503C\uFF0C\u8A2D\u5B9A\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8A8D#2ec7c9"},{name:"\u95BE\u503C\u4EE5\u4E0B\u984F\u8272",detail:"\u95BE\u503C\u4EE5\u4E0B\u67F1\u689D\u984F\u8272\u8A2D\u5B9A\uFF0C\u540C\u95BE\u503C\u4EE5\u4E0A\u984F\u8272\uFF0C\u9ED8\u8A8D#fc5c5c"}]},TRISTATESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u4E09\u614B\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u4E09\u7A2E\u614B\u52E2\u7684\u8D70\u52E2\u4F8B\u5982\u52DD\u8CA0\u5E73",a:"\u751F\u6210\u5132\u5B58\u683C\u4E09\u614B\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D,\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20, {1,2,3,4,5}\u7B49\u3002"},{name:"\u67F1\u689D\u9593\u9694",detail:"\u67F1\u689D\u4E4B\u9593\u7684\u9593\u9694\u8DDD\u96E2\uFF0C\u9ED8\u8A8D\u70BA1"},{name:"\u67F1\u689D\u984F\u8272",detail:"\u7DDA\u5716\u7684\u7DDA\u689D\u984F\u8272\uFF0C\u53EF\u4EE5\u662F\u5426\u500B\u7BC4\u570DA1\u3001\u8272\u9336\u7D22\u5F15\u6578\u503C\u6216\u8005\u5177\u9AD4\u984F\u8272\u503C\uFF0C\u8A2D\u5B9A\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u652F\u6301regx\u3001rgb\u3001rgba\u7B49\u3002\u9ED8\u8A8D#fc5c5c"},{name:"\u8D1F\u5411\u67F1\u689D\u984F\u8272",detail:"\u8CA0\u5411\u67F1\u689D\u984F\u8272\u8A2D\u5B9A\uFF0C\u4EE3\u8868\u8CA0\u503C\u7684\u984F\u8272\uFF0C\u540C\u67F1\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D#97b552"},{name:"\u96F6\u503C\u67F1\u689D\u984F\u8272",detail:"\u96F6\u503C\u67F1\u689D\u984F\u8272\u8A2D\u5B9A\uFF0C\u4EE3\u88680\u503C\u984F\u8272\uFF0C\u540C\u67F1\u689D\u984F\u8272\u914D\u5BD8\uFF0C\u9ED8\u8A8D#999"},{name:"\u8272\u677F",detail:"\u8ABF\u8272\u677F\u53EF\u4EE5\u55AE\u7368\u8A2D\u5B9A\u6BCF\u500B\u67F1\u689D\u7684\u984F\u8272\uFF0C\u53EF\u8A2D\u5B9A\u591A\u500B\uFF0C\u652F\u6301\u5169\u7A2E\u683C\u5F0F:1\u984F\u8272\u4F8B\u5982#000\uFF0C\u4EE3\u8868\u7B2C\u4E00\u500B\u67F1\u7684\u984F\u8272\u662F\u9ED1\u8272\uFF1B2\u6578\u503C\u7BC4\u570D:\u984F\u8272\uFF0C\u4F8B\u5982-2:#000\u8868\u793A\u6578\u503C\u70BA-2\u7684\u67F1\u70BA\u9ED1\u8272\uFF0C0-5:#000\u8868\u793A\u6578\u503C0-5\u7684\u67F1\u70BA\u9ED1\u8272\uFF0C\u9ED8\u8A8D\u70BA\u7A7A"}]},PIESPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u9905\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u6578\u64DA\u5360\u6BD4",a:"\u751F\u6210\u5132\u5B58\u683C\u9905\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D,\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20, {1,2,3,4,5}\u7B49\u3002"},{name:"\u65CB\u8F49\u89D2\u5EA6",detail:"\u9905\u5716\u7684\u65CB\u8F49\u89D2\u5EA6\uFF0C\u9ED8\u8A8D\u70BA0"},{name:"\u9905\u5716\u908A\u6846",detail:"\u9905\u5716\u908A\u6846\u5927\u5C0F\uFF0C\u9ED8\u8A8D\u70BA\u71210"},{name:"\u908A\u6846\u984F\u8272",detail:"\u9905\u5716\u908A\u6846\u984F\u8272\uFF0C\u9ED8\u8A8D\u70BA#000"},{name:"\u9905\u5716\u8272\u677F",detail:"\u8ABF\u8272\u677F\u53EF\u4EE5\u8A2D\u5B9A\u5207\u7247\u7684\u984F\u8272\uFF0C\u53EF\u8A2D\u5B9A\u70BAA1:A10\u7B49\u7BC4\u570D\uFF0C\u9ED8\u8A8D\u70BA#2ec7c9, #fc5c5c, #5ab1ef, #ffb980..."}]},BOXSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u7BB1\u7DDA\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u6578\u64DA\u96C6\u7684\u7D71\u8A08\u5206\u4F48",a:"\u751F\u6210\u5132\u5B58\u683C\u7BB1\u7DDA\u5716",p:[{name:"\u6578\u64DA\u7BC4\u570D",detail:"\u6578\u64DA\u7BC4\u570D,\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1:A20, {1,2,3,4,5}\u7B49\u3002"},{name:"\u96E2\u7FA4\u9EDE\u6BD4\u4F8B",detail:"\u96E2\u7FA4\u9EDE\u7684\u95BE\u503C\u7BC4\u570D\uFF0C\u5982\u679C\u70BA0\u6216false\u5247\u4E0D\u986F\u793A\uFF0C\u9ED8\u8A8D\u70BA1.5\u500D"},{name:"\u76EE\u6A19\u9EDE\u503C",detail:"\u7BB1\u7DDA\u5716\u4E0A\u7684\u76EE\u6A19\u503C\u8A2D\u5B9A\uFF0C\u9ED8\u8A8D\u70BAfalse\u4E0D\u986F\u793A"},{name:"\u6578\u64DA\u9EDE\u5927\u5C0F",detail:"\u76EE\u6A19\u9EDE\u548C\u96E2\u7FA4\u9EDE\u7684\u534A\u5F91\u5927\u5C0F\u8A2D\u5B9A\uFF0C\u9ED8\u8A8D\u70BA1.5"}]},BULLETSPLINES:{d:"\u751F\u6210\u5D4C\u5165\u5728\u5132\u5B58\u683C\u5167\u7684\u5B50\u5F48\u5716sparklines\uFF0C\u4E00\u822C\u7528\u65BC\u63CF\u8FF0\u4EFB\u52D9\u9054\u6210\u7387",a:"\u751F\u6210\u5132\u5B58\u683C\u5B50\u5F48\u5716",p:[{name:"\u76EE\u6A19",detail:"\u9054\u6210\u7684\u76EE\u6A19\u503C\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1\uFF0C100\u7B49\u3002"},{name:"\u5BE6\u969B\u5B8C\u6210",detail:"\u73FE\u6642\u5B8C\u6210\u503C\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1\uFF0C100\u7B49\u3002"},{name:"\u5C0D\u6BD4\u503C",detail:"\u5C0D\u6BD4\u503C\uFF0C\u4F8B\u5982\u8D85\u984D\u3001\u6700\u4F4E\u3001\u7372\u734E\u5E95\u7DDA\u7B49\uFF0C\u6578\u503C\u624D\u80FD\u88AB\u6709\u6548\u8A08\u7B97\uFF0C\u4F8B\u5982A1\uFF0C100\u7B49\u3002\u53EF\u4EE5\u8A2D\u5B9A\u6700\u591A9\u500B\u5C0D\u6BD4\u503C"}]},COMPOSESPLINES:{d:"\u652F\u6301\u591A\u500B\u985E\u578B\u7684\u5716\u756B\u5728\u540C\u4E00\u500B\u5132\u5B58\u683C\uFF0C\u6BCF\u500B\u53C3\u6578\u4EE3\u8868\u4E00\u500Bsparklines\u5716",a:"\u7D44\u5408sparklines\u5716\u5230\u4E00\u500B\u5132\u5B58\u683C",p:[{name:"\u5716\u8A2D\u5B9A",detail:"sparklines\u5716\u8A2D\u5B9A\uFF0C\u4F8B\u5982A1:A20\uFF0C\u4E00\u500B\u5B8C\u6210\u7684\u9905\u5716\u3001\u7DDA\u5716\u8A2D\u5B9A\u7B49\u3002"}]},SORT:{d:"\u8FD4\u56DE\u6578\u7D44\u4E2D\u5143\u7D20\u7684\u6392\u5E8F\u6578\u7D44\u3002\u8FD4\u56DE\u7684\u6578\u7D44\u8207\u63D0\u4F9B\u7684\u6578\u7D44\u53C3\u6578\u5F62\u72C0\u76F8\u540C\u3002",a:"\u8FD4\u56DE\u6578\u7D44\u4E2D\u5143\u7D20\u7684\u6392\u5E8F\u6578\u7D44\u3002\u8FD4\u56DE\u7684\u6578\u7D44\u8207\u63D0\u4F9B\u7684\u6578\u7D44\u53C3\u6578\u5F62\u72C0\u76F8\u540C\u3002",p:[{name:"array",detail:"\u8981\u6392\u5E8F\u7684\u7BC4\u570D\u6216\u6578\u7D44\u3002"},{name:"sort_index",detail:"[\u53EF\u9078] - \u8868\u793A\u8981\u6392\u5E8F\u7684\u884C\u6216\u5217\u7684\u6578\u4F4D\u3002\uFF08\u9ED8\u8A8Drow1/col1\uFF09"},{name:"sort_order",detail:"[\u53EF\u9078] - \u8868\u793A\u6240\u9700\u6392\u5E8F\u9806\u5E8F\u7684\u6578\u4F4D\uFF1B1\u8868\u793A\u6607\u51AA\uFF08\u9ED8\u8A8D\uFF09\uFF0C-1\u8868\u793A\u964D\u5E8F\u3002"},{name:"by_col",detail:"[\u53EF\u9078] - \u8868\u793A\u6240\u9700\u6392\u5E8F\u65B9\u5411\u7684\u908F\u8F2F\u503C\uFF1B\u6309\u884C\u6392\u5E8F\u70BAFALSE\uFF08\uFF09\uFF08\u9ED8\u8A8D\uFF09\uFF0C\u6309\u5217\u6392\u5E8F\u70BATRUE\uFF08\uFF09\u3002"}]},FILTER:{d:"\u57FA\u65BC\u4E00\u500B\u5E03\u6797\uFF08\u771F/\u5047\uFF09\u6578\u7D44\u904E\u6FFE\u4E00\u500B\u6578\u7D44\u3002",a:"\u57FA\u65BC\u4E00\u500B\u5E03\u6797\uFF08\u771F/\u5047\uFF09\u6578\u7D44\u904E\u6FFE\u4E00\u500B\u6578\u7D44\u3002",p:[{name:"array",detail:"\u8981\u7BE9\u9078\u7684\u6578\u7D44\u6216\u7BC4\u570D\u3002"},{name:"include",detail:"\u5E03\u6797\u6578\u7D44\uFF0C\u5176\u9AD8\u5EA6\u6216\u5BEC\u5EA6\u8207\u6578\u7D44\u76F8\u540C"},{name:"if_empty",detail:"[\u53EF\u9078] - \u5982\u679C\u5305\u542B\u6578\u7D44\u4E2D\u7684\u6240\u6709\u503C\u90FD\u70BA\u7A7A\uFF08filter\u4E0D\u8FD4\u56DE\u4EFB\u4F55\u503C\uFF09\uFF0C\u5247\u8FD4\u56DE\u7684\u503C\u3002"}]},UNIQUE:{d:"\u8FD4\u56DE\u5217\u8868\u6216\u5340\u57DF\u4E2D\u7684\u552F\u4E00\u503C\u7684\u6E05\u55AE\u3002",a:"\u8FD4\u56DE\u5217\u8868\u6216\u5340\u57DF\u4E2D\u7684\u552F\u4E00\u503C\u7684\u6E05\u55AE\u3002",p:[{name:"array",detail:"\u5F9E\u5176\u8FD4\u56DE\u552F\u4E00\u503C\u7684\u6578\u7D44\u6216\u5340\u57DF\u3002"},{name:"by_col",detail:"[\u53EF\u9078] - \u908F\u8F2F\u503C\uFF0C\u8A13\u793A\u5982\u4F55\u6BD4\u8F03\uFF1B\u6309\u884C= FALSE\uFF08\uFF09\u6216\u7701\u7565\uFF1B\u6309\u5217= TRUE\uFF08\uFF09\u3002"},{name:"occurs_once",detail:"[\u53EF\u9078] - \u908F\u8F2F\u503C\uFF0C\u50C5\u8FD4\u56DE\u552F\u4E00\u503C\u4E2D\u51FA\u73FE\u4E00\u6B21= TRUE\uFF08\uFF09\uFF1B\u5305\u62EC\u6240\u6709\u552F\u4E00\u503C= FALSE\uFF08\uFF09\u6216\u7701\u7565\u3002"}]},RANDARRAY:{d:"\u8FD4\u56DE0\u52301\u4E4B\u9593\u7684\u96A8\u6A5F\u6578\u4F4D\u6578\u7D44\u3002",a:"\u8FD4\u56DE0\u52301\u4E4B\u9593\u7684\u96A8\u6A5F\u6578\u4F4D\u6578\u7D44",p:[{name:"rows",detail:"[\u53EF\u9078] - \u8981\u8FD4\u56DE\u7684\u884C\u6578\u3002"},{name:"cols",detail:"[\u53EF\u9078] - \u8981\u8FD4\u56DE\u7684\u5217\u6578\u3002"}]},SEQUENCE:{d:"\u751F\u6210\u6578\u4F4D\u5E8F\u5217\u7684\u6E05\u55AE\u3002",a:"\u751F\u6210\u6578\u4F4D\u5E8F\u5217\u7684\u6E05\u55AE\u3002",p:[{name:"rows",detail:"\u8981\u8FD4\u56DE\u7684\u884C\u6578\u3002"},{name:"cols",detail:"[\u53EF\u9078] - \u8981\u8FD4\u56DE\u7684\u5217\u6578\u3002"},{name:"start",detail:"[\u53EF\u9078] - \u5E8F\u5217\u4E2D\u7684\u7B2C\u4E00\u500B\u6578\u4F4D\u3002"},{name:"step",detail:"[\u53EF\u9078] -\u5E8F\u5217\u4E2D\u6BCF\u500B\u5E8F\u5217\u503C\u7684\u589E\u91CF\u3002"}]},EVALUATE:{d:"\u5C0D\u4EE5\u6587\u5B57\u8868\u793A\u7684\u516C\u5F0F\u6216\u8005\u8868\u9054\u5F0F\u6C42\u503C\uFF0C\u4E26\u8FD4\u56DE\u7D50\u679C\u3002",a:"\u6839\u64DA\u6587\u5B57\u516C\u5F0F\u6216\u8005\u8868\u9054\u5F0F\u6C42\u503C\u3002",p:[{name:"\u516C\u5F0F",detail:"\u516C\u5F0F\u6216\u8868\u9054\u5F0F"}]},REMOTE:{d:"Calls a function on a remote server",a:"Calls a function on a remote back end server/API.",p:[{name:"remote_expression",detail:"Formula"}]}},toolbar:{undo:"\u64A4\u92B7",redo:"\u91CD\u505A",paintFormat:"\u683C\u5F0F\u5237",currencyFormat:"\u8CA8\u5E63\u683C\u5F0F",percentageFormat:"\u767E\u5206\u6BD4\u683C\u5F0F",numberDecrease:"\u51CF\u5C11\u5C0F\u6578\u4F4D\u6578",numberIncrease:"\u65B0\u589E\u5C0F\u6578\u4F4D\u6578",moreFormats:"\u66F4\u591A\u683C\u5F0F",font:"\u5B57\u9AD4",fontSize:"\u5B57\u578B\u5927\u5C0F",bold:"\u7C97\u9AD4\uFF08Ctrl+B\uFF09",italic:"\u659C\u9AD4\uFF08Ctrl+I\uFF09",strikethrough:"\u5220\u9664\u7DDA\uFF08Alt+Shift+5\uFF09",underline:"\u5E95\u7DDA",textColor:"\u6587\u5B57\u984F\u8272",chooseColor:"\u984F\u8272\u9078\u64C7",resetColor:"\u91CD\u7F6E\u984F\u8272",customColor:"\u81EA\u5B9A\u7FA9",alternatingColors:"\u4EA4\u66FF\u984F\u8272",confirmColor:"\u78BA\u5B9A\u984F\u8272",cancelColor:"\u53D6\u6D88",collapse:"\u6536\u8D77",fillColor:"\u5132\u5B58\u683C\u984F\u8272",border:"\u908A\u6846",borderStyle:"\u908A\u6846\u985E\u578B",mergeCell:"\u5408\u4F75\u5132\u5B58\u683C",chooseMergeType:"\u9078\u64C7\u5408\u4F75\u985E\u578B",horizontalAlign:"\u6C34\u51C6\u5C0D\u9F4A",verticalAlign:"\u5782\u76F4\u5C0D\u9F4A",alignment:"\u5C0D\u9F4A\u7BA1\u9053",textWrap:"\u6587\u5B57\u63DB\u884C",textWrapMode:"\u63DB\u884C\u7BA1\u9053",textRotate:"\u6587\u5B57\u65CB\u8F49",textRotateMode:"\u65CB\u8F49\u7BA1\u9053",freezeTopRow:"\u51CD\u7D50\u7B2C\u4E00\u884C",sortAndFilter:"\u6392\u5E8F\u548C\u7BE9\u9078",findAndReplace:"\u67E5\u627E\u66FF\u63DB",sum:"\u6C42\u548C",autoSum:"\u81EA\u52D5\u6C42\u548C",moreFunction:"\u66F4\u591A\u51FD\u6578",conditionalFormat:"\u689D\u4EF6\u683C\u5F0F",postil:"\u6279\u8A3B",pivotTable:"\u6578\u64DA\u900F\u8996\u9336",chart:"\u5716\u8868",screenshot:"\u622A\u5716",splitColumn:"\u5206\u5217",insertImage:"\u63D2\u5165\u5716\u7247",exportXlsx:"\u5C0E\u51FAXlsx",insertLink:"\u63D2\u5165\u9023\u7D50",dataVerification:"\u6578\u64DA\u9A57\u8B49",protection:"\u4FDD\u8B77\u5DE5\u4F5C\u8868\u5167\u5BB9",clearText:"\u6E05\u9664\u984F\u8272\u9078\u64C7",noColorSelectedText:"\u6C92\u6709\u984F\u8272\u88AB\u9078\u64C7",toolMore:"\u66F4\u591A",toolLess:"\u5C11\u65BC",toolClose:"\u6536\u8D77",toolMoreTip:"\u66F4\u591A\u529F\u80FD",moreOptions:"\u66F4\u591A\u9078\u9805",cellFormat:"\u8A2D\u5B9A\u5132\u5B58\u683C\u683C\u5F0F",print:"\u5217\u5370"},alternatingColors:{applyRange:"\u61C9\u7528\u7BC4\u570D",selectRange:"\u9078\u64C7\u61C9\u7528\u7BC4\u570D",header:"\u9801\u7709",footer:"\u9801\u8173",errorInfo:"\u4E0D\u80FD\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C,\u8ACB\u9078\u64C7\u55AE\u500B\u5340\u57DF,\u7136\u5F8C\u518D\u8A66",textTitle:"\u683C\u5F0F\u6A23\u5F0F",custom:"\u81EA\u5B9A\u7FA9",close:"\u95DC\u9589",selectionTextColor:"\u9078\u64C7\u6587\u5B57\u984F\u8272",selectionCellColor:"\u9078\u64C7\u5132\u5B58\u683C\u984F\u8272",removeColor:"\u79FB\u9664\u4EA4\u66FF\u984F\u8272",colorShow:"\u984F\u8272",currentColor:"\u7576\u524D\u984F\u8272",tipSelectRange:"\u8ACB\u9078\u64C7\u4EA4\u66FF\u984F\u8272\u61C9\u7528\u7BC4\u570D",errorNoRange:"\u60A8\u9078\u64C7\u7684\u61C9\u7528\u7BC4\u570D\u4E0D\u662F\u9078\u5340\uFF01",errorExistColors:"\u60A8\u9078\u64C7\u7684\u61C9\u7528\u7BC4\u570D\u5DF2\u5B58\u5728\u4EA4\u66FF\u984F\u8272\u4E14\u4E0D\u5C6C\u65BC\u4F60\u8981\u7DE8\u8F2F\u7684\u61C9\u7528\u7BC4\u570D\uFF01"},button:{confirm:"\u78BA\u5B9A",cancel:"\u53D6\u6D88",close:"\u95DC\u9589",update:"Update",delete:"Delete",insert:"\u65B0\u5EFA",prevPage:"\u4E0A\u4E00\u9801",nextPage:"\u4E0B\u4E00\u9801",total:"\u7E3D\u5171\uFF1A"},paint:{start:"\u683C\u5F0F\u5237\u958B\u555F",end:"ESC\u9375\u9000\u51FA",tipSelectRange:"\u8ACB\u9078\u64C7\u9700\u8981\u8907\u88FD\u683C\u5F0F\u7684\u5340\u57DF",tipNotMulti:"\u7121\u6CD5\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C"},format:{moreCurrency:"\u66F4\u591A\u8CA8\u5E63\u683C\u5F0F",moreDateTime:"\u66F4\u591A\u65E5\u671F\u8207\u6642\u9593\u683C\u5F0F",moreNumber:"\u66F4\u591A\u6578\u4F4D\u683C\u5F0F",titleCurrency:"\u8CA8\u5E63\u683C\u5F0F",decimalPlaces:"\u5C0F\u6578\u4F4D\u6578",titleDateTime:"\u65E5\u671F\u8207\u6642\u9593\u683C\u5F0F",titleNumber:"\u6578\u4F4D\u683C\u5F0F"},info:{detailUpdate:"\u65B0\u6253\u958B",detailSave:"\u5DF2\u6062\u5FA9\u672C\u5730\u7DE9\u5B58",row:"\u884C",column:"\u5217",loading:"\u6E32\u67D3\u4E2D\xB7\xB7\xB7",copy:"\u526F\u672C",return:"\u8FD4\u56DE",rename:"\u91CD\u547D\u540D",tips:"\u8868\u683C\u91CD\u547D\u540D",noName:"\u7121\u6A19\u984C\u7684\u8A66\u7B97\u8868",wait:"\u5F85\u66F4\u65B0",add:"\u6DFB\u52A0",addLast:"\u5728\u5E95\u90E8\u6DFB\u52A0",backTop:"\u56DE\u5230\u9802\u90E8",pageInfo:"\u5171${total}\u689D,${totalPage}\u9801,\u7576\u524D\u5DF2\u986F\u793A${currentPage}\u9801",nextPage:"\u4E0B\u4E00\u9801",tipInputNumber:"\u8ACB\u8F38\u5165\u6578\u4F4D",tipInputNumberLimit:"\u65B0\u589E\u7BC4\u570D\u9650\u5236\u57281-100",tipRowHeightLimit:"\u884C\u9AD8\u5FC5\u9808\u57280 ~ 545\u4E4B\u9593",tipColumnWidthLimit:"\u5217\u5BEC\u5FC5\u9808\u57280 ~ 2038\u4E4B\u9593",pageInfoFull:"\u5171${total}\u689D,${totalPage}\u9801,\u5DF2\u986F\u793A\u5168\u90E8\u6578\u64DA"},currencyDetail:{RMB:"\u4EBA\u6C11\u5E63",USdollar:"\u7F8E\u5143",EUR:"\u6B50\u5143",GBP:"\u82F1\u938A",HK:"\u6E2F\u5143",JPY:"\u65E5\u5143",AlbanianLek:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u5217\u514B",AlgerianDinar:"\u963F\u723E\u53CA\u5229\u4E9E\u7B2C\u7D0D\u723E",Afghani:"\u963F\u5BCC\u6C57\u5C3C",ArgentinePeso:"\u963F\u6839\u5EF7\u6BD4\u7D22",UnitedArabEmiratesDirham:"\u963F\u62C9\u4F2F\u806F\u5408\u5927\u516C\u570B\u8FEA\u62C9\u59C6",ArubanFlorin:"\u963F\u9B6F\u5DF4\u5F17\u7F85\u6797",OmaniRial:"\u963F\u66FC\u88E1\u4E9E\u723E",Azerbaijanimanat:"\u963F\u585E\u62DC\u7586\u99AC\u7D0D\u7279",EgyptianPound:"\u57C3\u53CA\u938A",EthiopianBirr:"\u8863\u7D22\u6BD4\u4E9E\u6BD4\u723E",AngolaKwanza:"\u5B89\u54E5\u62C9\u5BEC\u7D2E",AustralianDollar:"\u6FB3\u5927\u5229\u4E9E\u5143",Patacas:"\u6FB3\u9580\u5143",BarbadosDollar:"\u5DF4\u5DF4\u591A\u65AF\u5143",PapuaNewGuineaKina:"\u5DF4\u5E03\u4E9E\u65B0\u5E7E\u5167\u4E9E\u57FA\u90A3",BahamianDollar:"\u5DF4\u54C8\u99AC\u5143",PakistanRupee:"\u5DF4\u57FA\u65AF\u5766\u76E7\u6BD4",ParaguayanGuarani:"\u5DF4\u62C9\u572D\u74DC\u62C9\u5C3C",BahrainiDinar:"\u5DF4\u6797\u7B2C\u7D0D\u723E",PanamanianBalboa:"\u5DF4\u62FF\u99AC\u5DF4\u6CE2\u4E9E",Brazilianreal:"\u5DF4\u897F\u88CF\u4E9E\u4F0A",Belarusianruble:"\u767D\u4FC4\u7F85\u65AF\u76E7\u5E03",BermudianDollar:"\u767E\u6155\u5927\u5143",BulgarianLev:"\u4FDD\u52A0\u5229\u4E9E\u5217\u5F17",IcelandKrona:"\u51B0\u5CF6\u514B\u6717",BosniaHerzegovinaConvertibleMark:"\u6CE2\u9ED1\u53EF\u514C\u63DB\u99AC\u514B",PolishZloty:"\u6CE2\u862D\u8332\u7F85\u63D0",Boliviano:"\u73BB\u5229\u7DAD\u4E9E\u8AFE",BelizeDollar:"\u8C9D\u88E1\u65AF\u5143",BotswanaPula:"\u6CE2\u5284\u90A3\u666E\u62C9",NotDannuzhamu:"\u4E0D\u4E39\u52AA\u7D2E\u59C6",BurundiFranc:"\u5E03\u9686\u8FEA\u6CD5\u90CE",NorthKoreanWon:"\u671D\u9BAE\u5713",DanishKrone:"\u4E39\u9EA5\u514B\u6717",EastCaribbeanDollar:"\u6771\u52A0\u52D2\u6BD4\u5143",DominicaPeso:"\u591A\u660E\u5C3C\u52A0\u6BD4\u7D22",RussianRuble:"\u4FC4\u570B\u76E7\u5E03",EritreanNakfa:"\u5384\u5229\u5782\u4E9E\u7D0D\u514B\u6CD5",CFAfranc:"\u975E\u6D32\u91D1\u878D\u5171\u540C\u9AD4\u6CD5\u90CE",PhilippinePeso:"\u83F2\u5F8B\u8CD3\u6BD4\u7D22",FijiDollar:"\u6590\u6FDF\u5143",CapeVerdeEscudo:"\u4F5B\u5F97\u89D2\u57C3\u65AF\u5EAB\u591A",FalklandIslandsPound:"\u798F\u514B\u862D\u7FA4\u5CF6\u938A",GambianDalasi:"\u5CA1\u6BD4\u4E9E\u9054\u62C9\u897F",Congolesefranc:"\u525B\u679C\u6CD5\u90CE",ColombianPeso:"\u54E5\u502B\u6BD4\u4E9E\u6BD4\u7D22",CostaRicanColon:"\u54E5\u65AF\u5927\u9ECE\u52A0\u79D1\u6717",CubanPeso:"\u53E4\u5DF4\u6BD4\u7D22",Cubanconvertiblepeso:"\u53E4\u5DF4\u53EF\u514C\u63DB\u6BD4\u7D22",GuyanaDollar:"\u84CB\u4E9E\u90A3\u5143",KazakhstanTenge:"\u54C8\u85A9\u514B\u5171\u548C\u570B\u5805\u6208",Haitiangourde:"\u6D77\u5730\u53E4\u5FB7",won:"\u97D3\u5143",NetherlandsAntillesGuilder:"\u8377\u5C6C\u5B89\u7684\u5217\u65AF\u76FE",Honduraslempiras:"\u6D2A\u90FD\u62C9\u65AF\u62C9\u502B\u76AE\u62C9",DjiboutiFranc:"\u5409\u5E03\u63D0\u6CD5\u90CE",KyrgyzstanSom:"\u5409\u723E\u5409\u65AF\u65AF\u5766\u7D22\u59C6",GuineaFranc:"\u5E7E\u5167\u4E9E\u6CD5\u90CE",CanadianDollar:"\u52A0\u62FF\u5927\u5143",GhanaianCedi:"\u52A0\u7D0D\u585E\u5730",Cambodianriel:"\u9AD8\u68C9\u745E\u723E",CzechKoruna:"\u6377\u514B\u514B\u6717",ZimbabweDollar:"\u8F9B\u5DF4\u5A01\u5143",QatariRiyal:"\u5361\u5854\u723E\u88E1\u4E9E\u723E",CaymanIslandsDollar:"\u958B\u66FC\u7FA4\u5CF6\u5143",Comorianfranc:"\u79D1\u6469\u7F85\u6CD5\u90CE",KuwaitiDinar:"\u79D1\u5A01\u7279\u7B2C\u7D0D\u723E",CroatianKuna:"\u514B\u7F85\u5730\u4E9E\u5EAB\u7D0D",KenyanShilling:"\u80AF\u96C5\u5148\u4EE4",LesothoLoti:"\u840A\u7D22\u6258\u6D1B\u8482",LaoKip:"\u8001\u64BE\u57FA\u666E",LebanesePound:"\u9ECE\u5DF4\u5AE9\u938A",Lithuanianlitas:"\u7ACB\u9676\u5B9B\u7ACB\u7279",LibyanDinar:"\u5229\u6BD4\u4E9E\u7B2C\u7D0D\u723E",LiberianDollar:"\u5229\u6BD4\u4E9E\u5143",RwandaFranc:"\u76E7\u5B89\u9054\u6CD5\u90CE",RomanianLeu:"\u7F85\u99AC\u5C3C\u4E9E\u5217\u4F0A",MalagasyAriary:"\u99AC\u62C9\u52A0\u897F\u963F\u88CF\u4E9E\u88CF",MaldivianRufiyaa:"\u746A\u5F8B\u5730\u592B\u62C9\u83F2\u4E9E",MalawiKwacha:"\u99AC\u62C9\u5A01\u514B\u74E6\u67E5",MalaysianRinggit:"\u99AC\u4F86\u897F\u4E9E\u6797\u5409\u7279",MacedoniawearingDinar:"\u99AC\u5176\u9813\u6234\u7B2C\u7D0D\u723E",MauritiusRupee:"\u6A21\u88E1\u897F\u65AF\u76E7\u6BD4",MauritanianOuguiya:"\u8305\u5229\u5854\u5C3C\u4E9E\u70CF\u5409\u4E9E",MongolianTugrik:"\u8499\u53E4\u5716\u683C\u88E1\u514B",BangladeshiTaka:"\u5B5F\u52A0\u62C9\u5854\u5361",PeruvianNuevoSol:"\u79D8\u9B6F\u65B0\u7D22\u723E",MyanmarKyat:"\u7DEC\u7538\u958B\u4E9E\u7279",MoldovanLeu:"\u83AB\u723E\u9054\u74E6\u5217\u4F0A",MoroccanDirham:"\u6469\u6D1B\u54E5\u8FEA\u62C9\u59C6",MozambiqueMetical:"\u83AB\u4E09\u6BD4\u514B\u6885\u8482\u5361\u723E",MexicanPeso:"\u58A8\u897F\u54E5\u6BD4\u7D22",NamibianDollar:"\u7D0D\u7C73\u6BD4\u4E9E\u5143",SouthAfricanRand:"\u5357\u975E\u862D\u7279",SouthSudanesePound:"\u5357\u8607\u4E39\u938A",NicaraguaCordoba:"\u5C3C\u52A0\u62C9\u74DC\u79D1\u591A\u5DF4",NepaleseRupee:"\u5C3C\u6CCA\u723E\u76E7\u6BD4",NigerianNaira:"\u5948\u53CA\u5229\u4E9E\u5948\u62C9",NorwegianKrone:"\u632A\u5A01\u514B\u6717",GeorgianLari:"\u55AC\u6CBB\u4E9E\u62C9\u745E",RMBOffshore:"\u4EBA\u6C11\u5E63\uFF08\u96E2\u5CB8\uFF09",SwedishKrona:"\u745E\u5178\u514B\u6717",SwissFranc:"\u745E\u58EB\u6CD5\u90CE",SerbianDinar:"\u585E\u723E\u7DAD\u4E9E\u7B2C\u7D0D\u723E",SierraLeone:"\u585E\u62C9\u91CC\u6602\u5229\u6602",SeychellesRupee:"\u585E\u820C\u8033\u76E7\u6BD4",SaudiRiyal:"\u6C99\u7279\u88E1\u4E9E\u723E",SaoTomeDobra:"\u8056\u591A\u7F8E\u591A\u5E03\u62C9",SaintHelenapound:"\u8056\u8D6B\u502B\u90A3\u7FA4\u5CF6\u78C5",SriLankaRupee:"\u65AF\u91CC\u862D\u5361\u76E7\u6BD4",SwazilandLilangeni:"\u53F2\u74E6\u6FDF\u862D\u88CF\u862D\u5409\u5C3C",SudanesePound:"\u8607\u4E39\u938A",Surinamesedollar:"\u8607\u5229\u5357\u5143",SolomonIslandsDollar:"\u6240\u7F85\u9580\u7FA4\u5CF6\u5143",SomaliShilling:"\u7D22\u99AC\u5229\u4E9E\u5148\u4EE4",TajikistanSomoni:"\u5854\u5409\u514B\u5171\u548C\u570B\u7D22\u83AB\u5C3C",PacificFranc:"\u592A\u5E73\u6D0B\u6CD5\u90CE",ThaiBaht:"\u6CF0\u570B\u9296",TanzanianShilling:"\u5766\u5C1A\u5C3C\u4E9E\u5148\u4EE4",TonganPaanga:"\u6771\u52A0\u6F58\u52A0",TrinidadandTobagoDollar:"\u5343\u88E1\u9054\u6258\u8C9D\u54E5\u5143",TunisianDinar:"\u7A81\u5C3C\u65AF\u7B2C\u7D0D\u723E",TurkishLira:"\u571F\u8033\u5176\u91CC\u62C9",VanuatuVatu:"\u74E6\u52AA\u963F\u5716\u74E6\u5716",GuatemalanQuetzal:"\u74DC\u5730\u99AC\u62C9\u683C\u67E5\u723E",CommissionBolivar:"\u59D4\u5167\u745E\u62C9\u535A\u5229\u74E6",BruneiDollar:"\u6C76\u840A\u5143",UgandanShilling:"\u70CF\u5E72\u9054\u5148\u4EE4",UkrainianHryvnia:"\u70CF\u514B\u862D\u683C\u88E1\u592B\u5C3C\u4E9E",UruguayanPeso:"\u70CF\u62C9\u572D\u6BD4\u7D22",Uzbekistansom:"\u70CF\u8332\u5225\u514B\u8607\u59C6",WesternSamoaTala:"\u85A9\u6469\u4E9E\u5854\u62C9",SingaporeDollar:"\u65B0\u52A0\u5761\u5143",NT:"\u65B0\u81FA\u5E63",NewZealandDollar:"\u65B0\u897F\u862D\u5143",HungarianForint:"\u5308\u7259\u5229\u798F\u6797",SyrianPound:"\u6558\u5229\u4E9E\u938A",JamaicanDollar:"\u7259\u8CB7\u52A0\u5143",ArmenianDram:"\u4E9E\u7F8E\u5C3C\u4E9E\u5FB7\u62C9\u59C6",YemeniRial:"\u8449\u9580\u88E1\u4E9E\u723E",IraqiDinar:"\u4F0A\u62C9\u514B\u7B2C\u7D0D\u723E",IranianRial:"\u4F0A\u6717\u88E1\u4E9E\u723E",NewIsraeliShekel:"\u4EE5\u8272\u5217\u65B0\u8B1D\u514B\u723E",IndianRupee:"\u5370\u5EA6\u76E7\u6BD4",IndonesianRupiah:"\u5370\u5C3C\u76E7\u6BD4",JordanianDinar:"\u7D04\u65E6\u7B2C\u7D0D\u723E",VND:"\u8D8A\u5357\u76FE",ZambianKwacha:"\u5C1A\u6BD4\u4E9E\u514B\u74E6\u67E5",GibraltarPound:"\u76F4\u5E03\u7F85\u9640\u938A",ChileanPeso:"\u667A\u5229\u6BD4\u7D22",CFAFrancBEAC:"\u4E2D\u975E\u91D1\u878D\u5408\u4F5C\u6CD5\u90CE"},defaultFmt:[{text:"\u81EA\u52D5",value:"General",example:""},{text:"\u7D14\u6587\u5B57",value:"@",example:""},{text:"",value:"split",example:""},{text:"\u6578\u4F4D",value:"##0.00",example:"1000.12"},{text:"\u767E\u5206\u6BD4",value:"#0.00%",example:"12.21%"},{text:"\u79D1\u5B78\u8A08\u6578",value:"0.00E+00",example:"1.01E+5"},{text:"",value:"split",example:""},{text:"\u6703\u8A08",value:"\xA5(0.00)",example:"\xA5(1200.09)"},{text:"\u842C\u5143",value:"w",example:"1\u4EBF2000\u4E072500"},{text:"\u8CA8\u5E63",value:"\xA50.00",example:"\xA51200.09"},{text:"\u842C\u51432\u4F4D\u5C0F\u6578",value:"w0.00",example:"2\u4E072500.55"},{text:"",value:"split",example:""},{text:"\u65E5\u671F",value:"yyyy-MM-dd",example:"2017-11-29"},{text:"\u6642\u9593",value:"hh:mm AM/PM",example:"3:00 PM"},{text:"\u6642\u959324H",value:"hh:mm",example:"15:00"},{text:"\u65E5\u671F\u6642\u9593",value:"yyyy-MM-dd hh:mm AM/PM",example:"2017-11-29 3:00 PM"},{text:"\u65E5\u671F\u6642\u959324H",value:"yyyy-MM-dd hh:mm",example:"2017-11-29 15:00"},{text:"",value:"split",example:""},{text:"\u81EA\u5B9A\u7FA9\u683C\u5F0F",value:"fmtOtherSelf",example:"more"}],dateFmtList:[{name:"1930-08-05",value:"yyyy-MM-dd"},{name:"1930/8/5",value:"yyyy/MM/dd"},{name:"1930\u5E748\u67085\u65E5",value:'yyyy"\u5E74"M"\u6708"d"\u65E5"'},{name:"08-05",value:"MM-dd"},{name:"8-5",value:"M-d"},{name:"8\u67085\u65E5",value:'M"\u6708"d"\u65E5"'},{name:"13:30:30",value:"h:mm:ss"},{name:"13:30",value:"h:mm"},{name:"\u4E0B\u534801:30",value:"\u4E0A\u5348/\u4E0B\u5348 hh:mm"},{name:"\u4E0B\u53481:30",value:"\u4E0A\u5348/\u4E0B\u5348 h:mm"},{name:"\u4E0B\u53481:30:30",value:"\u4E0A\u5348/\u4E0B\u5348 h:mm:ss"},{name:"08-05 \u4E0B\u534801:30",value:"MM-dd \u4E0A\u5348/\u4E0B\u5348 hh:mm"}],fontFamily:{MicrosoftYaHei:"Microsoft YaHei"},fontarray:["Times New Roman","Arial","Tahoma","Verdana","\u5FAE\u8EDF\u96C5\u9ED1","\u5B8B\u9AD4","\u9ED1\u9AD4","\u6977\u9AD4","\u4EFF\u5B8B","\u65B0\u5B8B\u9AD4","\u83EF\u6587\u65B0\u9B4F","\u83EF\u6587\u884C\u6977","\u83EF\u6587\u96B8\u66F8"],fontjson:{"times new roman":0,arial:1,tahoma:2,verdana:3,\u5FAE\u8EDF\u96C5\u9ED1:4,"microsoft yahei":4,\u5B8B\u9AD4:5,simsun:5,\u9ED1\u9AD4:6,simhei:6,\u6977\u9AD4:7,kaiti:7,\u4EFF\u5B8B:8,fangsong:8,\u65B0\u5B8B\u9AD4:9,nsimsun:9,\u83EF\u6587\u65B0\u9B4F:10,stxinwei:10,\u83EF\u6587\u884C\u6977:11,stxingkai:11,\u83EF\u6587\u96B8\u66F8:12,stliti:12},border:{borderTop:"\u4E0A\u6846\u7DDA",borderBottom:"\u4E0B\u6846\u7DDA",borderLeft:"\u5DE6\u6846\u7DDA",borderRight:"\u53F3\u6846\u7DDA",borderNone:"\u7121",borderAll:"\u6240\u6709",borderOutside:"\u5916\u5074",borderInside:"\u5167\u5074",borderHorizontal:"\u5167\u5074\u6A6B\u7DDA",borderVertical:"\u5167\u5074\u5206\u9694\u865F",borderColor:"\u908A\u6846\u984F\u8272",borderSize:"\u908A\u6846\u7C97\u7D30"},merge:{mergeAll:"\u5168\u90E8\u5408\u4F75",mergeV:"\u5782\u76F4\u5408\u4F75",mergeH:"\u6C34\u5E73\u5408\u4F75",mergeCancel:"\u53D6\u6D88\u5408\u4F75",overlappingError:"\u4E0D\u80FD\u5408\u4F75\u91CD\u758A\u5340\u57DF",partiallyError:"\u7121\u6CD5\u5C0D\u90E8\u5206\u5408\u4F75\u5132\u5B58\u683C\u57F7\u884C\u6B64\u64CD\u4F5C"},align:{left:"\u5DE6\u5C0D\u9F4A",center:"\u4E2D\u9593\u5C0D\u9F4A",right:"\u53F3\u5C0D\u9F4A",top:"\u9802\u90E8\u5C0D\u9F4A",middle:"\u5C45\u4E2D\u5C0D\u9F4A",bottom:"\u5E95\u90E8\u5C0D\u9F4A"},textWrap:{overflow:"\u6EA2\u51FA",wrap:"\u81EA\u52D5\u63DB\u884C",clip:"\u622A\u65B7"},rotation:{none:"\u7121\u65CB\u8F49",angleup:"\u5411\u4E0A\u50BE\u659C",angledown:"\u5411\u4E0B\u50BE\u659C",vertical:"\u8C4E\u6392\u6587\u5B57",rotationUp:"\u5411\u4E0A90\xB0",rotationDown:"\u5411\u4E0B90\xB0"},freezen:{default:"\u51CD\u7D50\u7B2C\u4E00\u884C",freezenRow:"\u51CD\u7D50\u7B2C\u4E00\u884C",freezenColumn:"\u51CD\u7D50\u7B2CA\u5217",freezenRC:"\u51CD\u7D50\u884C\u5217",freezenRowRange:"\u51CD\u7D50\u884C\u5230\u9078\u5340",freezenColumnRange:"\u51CD\u7D50\u5217\u5230\u9078\u5340",freezenRCRange:"\u51CD\u7D50\u884C\u5217\u5230\u9078\u5340",freezenCancel:"\u53D6\u6D88\u51CD\u7D50",noSeletionError:"\u6CA1\u6709\u9078\u5340",rangeRCOverErrorTitle:"\u51CD\u7D50\u63D0\u9192",rangeRCOverError:"\u51CD\u7D50\u7A97\u683C\u8D85\u904E\u53EF\u898B\u7BC4\u570D\uFF0C\u6703\u5C0E\u81F4\u7121\u6CD5\u6B63\u5E38\u64CD\u4F5C\uFF0C\u8ACB\u91CD\u65B0\u8A2D\u5B9A\u51CD\u7D50\u5340\u57DF\u3002"},sort:{asc:"\u6607\u51AA",desc:"\u964D\u5E8F",custom:"\u81EA\u5B9A\u7FA9\u6392\u5E8F",hasTitle:"\u6578\u64DA\u5177\u6709\u6A19\u984C\u884C",sortBy:"\u6392\u5E8F\u4F9D\u64DA",addOthers:"\u6DFB\u52A0\u5176\u4ED6\u6392\u5E8F\u5217",close:"\u95DC\u9589",confirm:"\u6392\u5E8F",columnOperation:"\u5217",secondaryTitle:"\u6B21\u8981\u6392\u5E8F",sortTitle:"\u6392\u5E8F\u7BC4\u570D",sortRangeTitle:"\u6392\u5E8F\u7BC4\u570D\u5F9E",sortRangeTitleTo:"\u5230",noRangeError:"\u4E0D\u80FD\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C,\u8ACB\u9078\u64C7\u55AE\u500B\u5340\u57DF,\u7136\u5F8C\u518D\u8A66",mergeError:"\u9078\u5340\u6709\u5408\u4F75\u5132\u5B58\u683C,\u7121\u6CD5\u57F7\u884C\u6B64\u64CD\u4F5C\uFF01",columnSortMergeError:"\u5217\u6392\u5E8F\u6703\u64F4\u5C55\u81F3\u6574\u500B\u8868\u683C\u9078\u5340\uFF0C\u9078\u5340\u6709\u5408\u4E26\u55AE\u5143\u683C\uFF0C\u7121\u6CD5\u57F7\u884C\u6B64\u64CD\u4F5C\uFF0C\u8ACB\u9078\u64C7\u529F\u80FD\u6B04\u6392\u5E8F\u529F\u80FD\uFF01"},filter:{filter:"\u7BE9\u9078",clearFilter:"\u6E05\u9664\u7BE9\u9078",sortByAsc:"\u4EE5A-Z\u6607\u51AA\u6392\u5217",sortByDesc:"\u4EE5Z-A\u964D\u5E8F\u6392\u5217",filterByColor:"\u6309\u984F\u8272\u7BE9\u9078",filterByCondition:"\u6309\u689D\u4EF6\u904E\u6FFE",filterByValues:"\u6309\u503C\u904E\u6FFE",filiterInputNone:"\u7121",filiterInputTip:"\u8F38\u5165\u7BE9\u9078\u503C",filiterRangeStart:"\u5F9E",filiterRangeStartTip:"\u7BC4\u570D\u958B\u59CB",filiterRangeEnd:"\u5230",filiterRangeEndTip:"\u7BC4\u570D\u7ED3\u675F",filterValueByAllBtn:"\u5168\u9078",filterValueByClearBtn:"\u6E05\u9664",filterValueByInverseBtn:"\u53CD\u9078",filterValueByTip:"\u6309\u7167\u503C\u9032\u884C\u7BE9\u9078",filterConform:"\u78BA \u8A8D",filterCancel:"\u53D6 \u6D88",conditionNone:"\u7121",conditionCellIsNull:"\u5132\u5B58\u683C\u70BA\u7A7A",conditionCellNotNull:"\u5132\u5B58\u683C\u6709\u6578\u64DA",conditionCellTextContain:"\u6587\u5B57\u5305\u542B",conditionCellTextNotContain:"\u6587\u5B57\u4E0D\u5305\u542B",conditionCellTextStart:"\u6587\u5B57\u958B\u982D\u70BA",conditionCellTextEnd:"\u6587\u5B57\u7D50\u5C3E\u70BA",conditionCellTextEqual:"\u6587\u5B57\u7B49\u65BC",conditionCellDateEqual:"\u65E5\u671F\u7B49\u65BC",conditionCellDateBefore:"\u65E5\u671F\u65E9\u65BC",conditionCellDateAfter:"\u65E5\u671F\u665A\u65BC",conditionCellGreater:"\u5927\u65BC",conditionCellGreaterEqual:"\u5927\u65BC\u7B49\u65BC",conditionCellLess:"\u5C0F\u65BC",conditionCellLessEqual:"\u5C0F\u4E8E\u7B49\u65BC",conditionCellEqual:"\u7B49\u65BC",conditionCellNotEqual:"\u4E0D\u7B49\u65BC",conditionCellBetween:"\u4ECB\u65BC",conditionCellNotBetween:"\u4E0D\u5728\u5176\u4E2D",filiterMoreDataTip:"\u6578\u64DA\u91CF\u5927\uFF01\u8ACB\u7A0D\u5F8C",filiterMonthText:"\u6708",filiterYearText:"\u5E74",filiterByColorTip:"\u6309\u5132\u5B58\u683C\u984F\u8272\u7BE9\u9078",filiterByTextColorTip:"\u6309\u5132\u5B58\u683C\u5B57\u9AD4\u984F\u8272\u7BE9\u9078",filterContainerOneColorTip:"\u672C\u5217\u50C5\u5305\u542B\u4E00\u7A2E\u984F\u8272",filterDateFormatTip:"\u65E5\u671F\u683C\u5F0F",valueBlank:"(\u7A7A\u767D)",mergeError:"\u7BE9\u9078\u9078\u5340\u6709\u5408\u4F75\u5132\u5B58\u683C,\u7121\u6CD5\u57F7\u884C\u6B64\u64CD\u4F5C\uFF01"},rightclick:{copy:"\u8907\u88FD",copyAs:"\u8907\u88FD\u70BA",paste:"\u7C98\u8CBC",insert:"\u63D2\u5165",delete:"\u5220\u9664",deleteCell:"\u5220\u9664\u5132\u5B58\u683C",deleteSelected:"\u5220\u9664\u9078\u4E2D",hide:"\u96B1\u85CF",hideSelected:"\u96B1\u85CF\u9078\u4E2D",showHide:"\u986F\u793A\u96B1\u85CF",to:"\u5411",left:"\u5DE6",right:"\u53F3",top:"\u4E0A",bottom:"\u4E0B",moveLeft:"\u5DE6\u79FB",moveUp:"\u4E0A\u79FB",add:"\u65B0\u589E",row:"\u884C",column:"\u5217",width:"\u5BEC",height:"\u9AD8",number:"\u6578\u4F4D",confirm:"\u78BA\u8A8D",orderAZ:"A-Z\u9806\u5E8F\u6392\u5217",orderZA:"Z-A\u964D\u5E8F\u6392\u5217",clearContent:"\u6E05\u9664\u5167\u5BB9",matrix:"\u77E9\u9663\u64CD\u4F5C\u9078\u5340",sortSelection:"\u6392\u5E8F\u9078\u5340",filterSelection:"\u7BE9\u9078\u9078\u5340",chartGeneration:"\u5716\u8868\u751F\u6210",firstLineTitle:"\u9996\u884C\u70BA\u6A19\u984C",untitled:"\u7121\u6A19\u984C",array1:"\u4E00\u7DAD\u6578\u7D44",array2:"\u4E8C\u7DAD\u9663\u5217",array3:"\u591A\u5143\u6578\u7D44",diagonal:"\u5C0D\u89D2\u7DDA",antiDiagonal:"\u53CD\u5C0D\u89D2\u7DDA",diagonalOffset:"\u5C0D\u89D2\u504F\u79FB",offset:"\u504F\u79FB\u91CF",boolean:"\u5E03\u6797\u503C",flip:"\u7FFB\u8F49",upAndDown:"\u4E0A\u4E0B",leftAndRight:"\u5DE6\u53F3",clockwise:"\u9806\u6642\u91DD",counterclockwise:"\u9006\u6642\u91DD",transpose:"\u8F49\u7F6E",matrixCalculation:"\u77E9\u9663\u8A08\u7B97",plus:"\u52A0",minus:"\u51CF",multiply:"\u4E58",divided:"\u9664",power:"\u6B21\u65B9",root:"\u6B21\u65B9\u6839",log:"log",delete0:"\u5220\u9664\u5169\u7AEF0\u503C",removeDuplicate:"\u5220\u9664\u91CD\u8907\u503C",byRow:"\u6309\u884C",byCol:"\u6309\u5217",generateNewMatrix:"\u751F\u6210\u65B0\u77E9\u9663"},comment:{insert:"\u65B0\u5EFA\u6279\u8A3B",edit:"\u7DE8\u8F2F\u6279\u8A3B",delete:"\u5220\u9664",showOne:"\u986F\u793A/\u96B1\u85CF\u6279\u8A3B",showAll:"\u986F\u793A/\u96B1\u85CF\u6240\u6709\u6279\u8A3B"},screenshot:{screenshotTipNoSelection:"\u8ACB\u6846\u9078\u9700\u8981\u622A\u5716\u7684\u7BC4\u570D",screenshotTipTitle:"\u63D0\u793A\uFF01",screenshotTipHasMerge:"\u7121\u6CD5\u5C0D\u5408\u4F75\u5132\u5B58\u683C\u57F7\u884C\u6B64\u64CD\u4F5C",screenshotTipHasMulti:"\u7121\u6CD5\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C",screenshotTipSuccess:"\u622A\u53D6\u6210\u529F",screenshotImageName:"\u622A\u5716",downLoadClose:"\u95DC\u9589",downLoadCopy:"\u8907\u88FD\u5230\u526A\u5207\u677F",downLoadBtn:"\u4E0B\u8F09",browserNotTip:"\u4E0B\u8F09\u529F\u80FDIE\u700F\u89BD\u5668\u4E0D\u652F\u6301\uFF01",rightclickTip:"\u8ACB\u5728\u5716\u7247\u4E0A\u53F3\u9375\u9EDE\u64CA'\u8907\u88FD'",successTip:"\u5DF2\u6210\u529F\u8907\u88FD\uFF08\u5982\u679C\u7C98\u8CBC\u5931\u6557,\u8ACB\u5728\u5716\u7247\u4E0A\u53F3\u9375\u9EDE\u64CA'\u8907\u88FD\u5716\u7247'\uFF09"},splitText:{splitDelimiters:"\u5206\u5272\u7B26\u865F",splitOther:"\u5176\u5B83",splitContinueSymbol:"\u9023\u7E8C\u5206\u9694\u7B26\u865F\u8996\u70BA\u55AE\u500B\u8655\u7406",splitDataPreview:"\u6578\u64DA\u9810\u89BD",splitTextTitle:"\u6587\u5B57\u5206\u5217",splitConfirmToExe:"\u6B64\u8655\u5DF2\u6709\u6578\u64DA,\u662F\u5426\u66FF\u63DB\u5B83\uFF1F",tipNoMulti:"\u80FD\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C,\u8ACB\u9078\u64C7\u55AE\u500B\u5340\u57DF,\u7136\u5F8C\u518D\u8A66",tipNoMultiColumn:"\u4E00\u6B21\u53EA\u80FD\u8F49\u63DB\u4E00\u5217\u6578\u64DA,\u9078\u5B9A\u5340\u57DF\u53EF\u4EE5\u6709\u591A\u884C,\u4F46\u4E0D\u80FD\u6709\u591A\u5217,\u8ACB\u5728\u9078\u5B9A\u55AE\u5217\u5340\u57DF\u4EE5\u5F8C\u518D\u8A66"},imageText:{imageSetting:"\u5716\u7247\u8A2D\u5B9A",close:"\u95DC\u9589",conventional:"\u5E38\u898F",moveCell1:"\u79FB\u52D5\u4E26\u8ABF\u6574\u5132\u5B58\u683C\u5927\u5C0F",moveCell2:"\u79FB\u52D5\u4E26\u4E14\u4E0D\u8ABF\u6574\u5132\u5B58\u683C\u7684\u5927\u5C0F",moveCell3:"\u4E0D\u8981\u79FB\u52D5\u5132\u5B58\u683C\u4E26\u8ABF\u6574\u5176\u5927\u5C0F",fixedPos:"\u56FA\u5B9A\u4F4D\u7F6E",border:"\u908A\u6846",width:"\u5BEC\u5EA6",radius:"\u534A\u5F91",style:"\u6A23\u5F0F",solid:"\u5BE6\u7DDA",dashed:"\u865B\u7DDA",dotted:"\u9EDE\u72C0",double:"\u96D9\u7DDA",color:"\u984F\u8272"},punctuation:{tab:"Tab \u9375",semicolon:"\u5206\u865F",comma:"\u9017\u865F",space:"\u7A7A\u683C"},findAndReplace:{find:"\u67E5\u627E",replace:"\u66FF\u63DB",goto:"\u8F49\u5230",location:"\u5B9A\u4F4D\u689D\u4EF6",formula:"\u516C\u5F0F",date:"\u65E5\u671F",number:"\u6578\u4F4D",string:"\u5B57\u5143",error:"\u932F\u8AA4",condition:"\u689D\u4EF6\u683C\u5F0F",rowSpan:"\u9593\u9694\u884C",columnSpan:"\u9593\u9694\u5217",locationExample:"\u5B9A\u4F4D",lessTwoRowTip:"\u8ACB\u9078\u64C7\u6700\u5C11\u5169\u884C",lessTwoColumnTip:"\u8ACB\u9078\u64C7\u6700\u5C11\u5169\u884C",findTextbox:"\u67E5\u627E\u5185\u5BB9",replaceTextbox:"\u66FF\u63DB\u5167\u5BB9",regexTextbox:"\u898F\u5247\u904B\u7B97\u5F0F\u5339\u914D",wholeTextbox:"\u6574\u8A5E\u5339\u914D",distinguishTextbox:"\u5340\u5206\u5927\u5C0F\u5BEB\u5339\u914D",allReplaceBtn:"\u5168\u90E8\u66FF\u63DB",replaceBtn:"\u66FF\u63DB",allFindBtn:"\u67E5\u627E\u5168\u90E8",findBtn:"\u67E5\u627E\u4E0B\u4E00\u500B",noFindTip:"\u6C92\u6709\u67E5\u627E\u5230\u8A72\u5167\u5BB9",modeTip:"\u8A72\u6A21\u5F0F\u4E0B\u4E0D\u53EF\u9032\u884C\u6B64\u64CD\u4F5C",searchTargetSheet:"\u5DE5\u4F5C\u8868",searchTargetCell:"\u5132\u5B58\u683C",searchTargetValue:"\u503C",searchInputTip:"\u8ACB\u8F38\u5165\u67E5\u627E\u5167\u5BB9",noReplceTip:"\u6C92\u6709\u53EF\u66FF\u63DB\u7684\u5167\u5BB9",noMatchTip:"\u627E\u4E0D\u5230\u5339\u914D\u9805",successTip:"\u5DF2\u7D93\u5E6B\u60A8\u8490\u7D22\u4E26\u9032\u884C\u4E86${xlength}\u8655\u66FF\u63DB",locationConstant:"\u5E38\u6578",locationFormula:"\u516C\u5F0F",locationDate:"\u65E5\u671F",locationDigital:"\u6578\u4F4D",locationString:"\u5B57\u5143",locationBool:"\u908F\u8F2F\u503C",locationError:"\u932F\u8AA4",locationNull:"\u7A7A\u503C",locationCondition:"\u689D\u4EF6\u683C\u5F0F",locationRowSpan:"\u9593\u9694\u884C",locationColumnSpan:"\u9593\u9694\u5217",locationTiplessTwoRow:"\u8ACB\u9078\u64C7\u6700\u5C11\u5169\u884C",locationTiplessTwoColumn:"\u8ACB\u9078\u64C7\u6700\u5C11\u5169\u5217",locationTipNotFindCell:"\u672A\u627E\u5230\u5132\u5B58\u683C"},sheetconfig:{delete:"\u5220\u9664",copy:"\u8907\u88FD",rename:"\u91CD\u547D\u540D",changeColor:"\u66F4\u6539\u984F\u8272",hide:"\u96B1\u85CF",unhide:"\u53D6\u6D88\u96B1\u85CF",moveLeft:"\u5411\u5DE6\u79FB",moveRight:"\u5411\u53F3\u79FB",resetColor:"\u91CD\u7F6E\u984F\u8272",cancelText:"\u53D6\u6D88",chooseText:"\u78BA\u5B9A\u984F\u8272",tipNameRepeat:"\u7C64\u9801\u7684\u540D\u7A31\u4E0D\u80FD\u91CD\u8907\uFF01\u8ACB\u91CD\u65B0\u4FEE\u6539",noMoreSheet:"\u5DE5\u4F5C\u8584\u5167\u81F3\u5C11\u542B\u6709\u4E00\u5F35\u53EF\u8996\u5DE5\u4F5C\u8868\u3002\u82E5\u9700\u5220\u9664\u9078\u5B9A\u7684\u5DE5\u4F5C\u8868,\u8ACB\u5148\u63D2\u5165\u4E00\u5F35\u65B0\u5DE5\u4F5C\u8868\u6216\u986F\u793A\u4E00\u5F35\u96B1\u85CF\u7684\u5DE5\u4F5C\u8868\u3002\u3002",confirmDelete:"\u662F\u5426\u5220\u9664",redoDelete:"\u53EF\u4EE5\u901A\u904ECtrl+Z\u64A4\u92B7\u5220\u9664",noHide:"\u4E0D\u80FD\u96B1\u85CF,\u81F3\u5C11\u4FDD\u7559\u4E00\u500Bsheet\u6A19\u7C64",chartEditNoOpt:"\u5716\u8868\u7DE8\u8F2F\u6A21\u5F0F\u4E0B\u4E0D\u5141\u8A31\u8A72\u64CD\u4F5C\uFF01",sheetNameSpecCharError:`\u540D\u7A31\u4E0D\u80FD\u5305\u542B:[ ] : ? * / ' "`,sheetNamecannotIsEmptyError:"\u540D\u7A31\u4E0D\u80FD\u70BA\u7A7A"},conditionformat:{conditionformat_greaterThan:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u5927\u65BC",conditionformat_greaterThan_title:"\u70BA\u5927\u65BC\u4EE5\u4E0B\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_lessThan:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u5C0F\u65BC",conditionformat_lessThan_title:"\u70BA\u5C0F\u65BC\u4EE5\u4E0B\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_betweenness:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u4ECB\u65BC",conditionformat_betweenness_title:"\u70BA\u4ECB\u65BC\u4EE5\u4E0B\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_equal:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u7B49\u65BC",conditionformat_equal_title:"\u70BA\u7B49\u65BC\u4EE5\u4E0B\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_textContains:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u6587\u5B57\u5305\u542B",conditionformat_textContains_title:"\u70BA\u5305\u542B\u4EE5\u4E0B\u6587\u5B57\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_occurrenceDate:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u767C\u751F\u65E5\u671F",conditionformat_occurrenceDate_title:"\u70BA\u5305\u542B\u4EE5\u4E0B\u65E5\u671F\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_duplicateValue:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u91CD\u8907\u503C",conditionformat_duplicateValue_title:"\u70BA\u5305\u542B\u4EE5\u4E0B\u985E\u578B\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_top10:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u524D10\u9805",conditionformat_top10_percent:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u524D10%",conditionformat_top10_title:"\u70BA\u503C\u6700\u5927\u7684\u90A3\u4E9B\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_last10:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u6700\u5F8C10\u9805",conditionformat_last10_percent:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u6700\u5F8C10%",conditionformat_last10_title:"\u70BA\u503C\u6700\u5C0F\u7684\u90A3\u4E9B\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_AboveAverage:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u9AD8\u65BC\u5E73\u5747\u503C",conditionformat_AboveAverage_title:"\u70BA\u9AD8\u65BC\u5E73\u5747\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",conditionformat_SubAverage:"\u689D\u4EF6\u683C\u5F0F\u2014\u2014\u4F4E\u65BC\u5E73\u5747\u503C",conditionformat_SubAverage_title:"\u70BA\u4F4E\u65BC\u5E73\u5747\u503C\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",rule:"\u898F\u5247",newRule:"\u65B0\u5EFA\u898F\u5247",editRule:"\u7DE8\u8F2F\u898F\u5247",deleteRule:"\u5220\u9664\u898F\u5247",deleteCellRule:"\u6E05\u9664\u6240\u9078\u5132\u5B58\u683C\u7684\u898F\u5247",deleteSheetRule:"\u6E05\u9664\u6574\u500B\u5DE5\u4F5C\u8868\u7684\u898F\u5247",manageRules:"\u7BA1\u7406\u898F\u5247",showRules:"\u986F\u793A\u5176\u683C\u5F0F\u898F\u5247",highlightCellRules:"\u7A81\u51FA\u986F\u793A\u5132\u5B58\u683C\u898F\u5247",itemSelectionRules:"\u9805\u76EE\u9078\u53D6\u898F\u5247",conditionformatManageRules:"\u689D\u4EF6\u683C\u5F0F\u898F\u5247\u7BA1\u7406\u5668",format:"\u683C\u5F0F",setFormat:"\u8A2D\u5B9A\u683C\u5F0F",setAs:"\u8A2D\u5B9A\u70BA",setAsByArea:"\u91DD\u5C0D\u9078\u5B9A\u5340\u57DF,\u8A2D\u5B9A\u70BA",applyRange:"\u61C9\u7528\u7BC4\u570D",selectRange:"\u9EDE\u64CA\u9078\u64C7\u61C9\u7528\u7BC4\u570D",selectRange_percent:"\u6240\u9078\u7BC4\u570D\u7684\u767E\u5206\u6BD4",selectRange_average:"\u9078\u5B9A\u7BC4\u570D\u7684\u5E73\u5747\u503C",selectRange_value:"\u9078\u5B9A\u7BC4\u570D\u4E2D\u7684\u6578\u503C",pleaseSelectRange:"\u8ACB\u9078\u64C7\u61C9\u7528\u7BC4\u570D",selectDataRange:"\u9EDE\u64CA\u9078\u64C7\u6578\u64DA\u7BC4\u570D",selectCell:"\u9078\u64C7\u5132\u5B58\u683C",pleaseSelectCell:"\u8ACB\u9078\u64C7\u5132\u5B58\u683C",pleaseSelectADate:"\u8ACB\u9078\u64C7\u65E5\u671F",pleaseEnterInteger:"\u8ACB\u8F38\u5165\u4E00\u500B\u4ECB\u65BC1\u548C1000\u4E4B\u9593\u7684\u6574\u6578",onlySingleCell:"\u53EA\u80FD\u5C0D\u55AE\u500B\u5132\u5B58\u683C\u9032\u884C\u5F15\u7528",conditionValueCanOnly:"\u689D\u4EF6\u503C\u53EA\u80FD\u662F\u6578\u4F4D\u6216\u8005\u55AE\u500B\u5132\u5B58\u683C",ruleTypeItem1:"\u57FA\u65BC\u5404\u81EA\u503C\u8A2D\u5B9A\u6240\u6709\u5132\u5B58\u683C\u7684\u683C\u5F0F",ruleTypeItem2:"\u53EA\u70BA\u5305\u542B\u4EE5\u4E0B\u5167\u5BB9\u7684\u5132\u5B58\u683C\u8A2D\u5B9A\u683C\u5F0F",ruleTypeItem2_title:"\u53EA\u70BA\u6EFF\u8DB3\u4EE5\u4E0B\u689D\u4EF6\u7684\u5132\u5B58\u683C",ruleTypeItem3:"\u50C5\u5C0D\u6392\u540D\u9760\u524D\u6216\u9760\u5F8C\u7684\u6578\u503C\u8A2D\u5B9A\u683C\u5F0F",ruleTypeItem3_title:"\u70BA\u4EE5\u4E0B\u6392\u540D\u5167\u7684\u503C",ruleTypeItem4:"\u50C5\u5C0D\u9AD8\u65BC\u6216\u4F4E\u65BC\u5E73\u5747\u503C\u7684\u6578\u503C\u8A2D\u5B9A\u683C\u5F0F",ruleTypeItem4_title:"\u70BA\u6EFF\u8DB3\u4EE5\u4E0B\u689D\u4EF6\u7684\u503C",ruleTypeItem5:"\u50C5\u5C0D\u552F\u4E00\u503C\u6216\u91CD\u8907\u503C\u8A2D\u5B9A\u683C\u5F0F",ruleTypeItem6:"\u4F7F\u7528\u516C\u5F0F\u78BA\u5B9A\u8981\u8A2D\u7F6E\u683C\u5F0F\u7684\u55AE\u5143\u683C",formula:"\u516C\u5F0F",textColor:"\u6587\u5B57\u984F\u8272",cellColor:"\u5132\u5B58\u683C\u984F\u8272",confirm:"\u78BA\u5B9A",confirmColor:"\u78BA\u5B9A\u984F\u8272",cancel:"\u53D6\u6D88",close:"\u95DC\u9589",clearColorSelect:"\u6E05\u9664\u984F\u8272\u9078\u64C7",sheet:"\u9336",currentSheet:"\u7576\u524D\u5DE5\u4F5C\u8868",dataBar:"\u6578\u64DA\u689D",dataBarColor:"\u6578\u64DA\u689D\u984F\u8272",gradientDataBar_1:"\u85CD-\u767D\u6F38\u8B8A\u6578\u64DA\u689D",gradientDataBar_2:"\u7DA0-\u767D\u6F38\u8B8A\u6578\u64DA\u689D",gradientDataBar_3:"\u7D05-\u767D\u6F38\u8B8A\u6578\u64DA\u689D",gradientDataBar_4:"\u67F3\u4E01-\u767D\u6F38\u8B8A\u6578\u64DA\u689D",gradientDataBar_5:"\u6DFA\u85CD-\u767D\u6F38\u8B8A\u6578\u64DA\u689D",gradientDataBar_6:"\u7D2B-\u767D\u6F38\u8B8A\u6578\u64DA\u689D",solidColorDataBar_1:"\u85CD\u8272\u6578\u64DA\u689D",solidColorDataBar_2:"\u7DA0\u8272\u6578\u64DA\u689D",solidColorDataBar_3:"\u7D05\u8272\u6578\u64DA\u689D",solidColorDataBar_4:"\u6A59\u8272\u6578\u64DA\u689D",solidColorDataBar_5:"\u6DFA\u85CD\u8272\u6578\u64DA\u689D",solidColorDataBar_6:"\u7D2B\u8272\u6578\u64DA\u689D",colorGradation:"\u8272\u968E",colorGradation_1:"\u7DA0-\u9EC3-\u7D05\u8272\u968E",colorGradation_2:"\u7D05-\u9EC3-\u7DA0\u8272\u968E",colorGradation_3:"\u7DA0-\u767D-\u7D05\u8272\u968E",colorGradation_4:"\u7D05-\u767D-\u7DA0\u8272\u968E",colorGradation_5:"\u85CD-\u767D-\u7D05\u8272\u968E",colorGradation_6:"\u7D05-\u767D-\u85CD\u8272\u968E",colorGradation_7:"\u767D-\u7D05\u8272\u968E",colorGradation_8:"\u7D05-\u767D\u8272\u968E",colorGradation_9:"\u7DA0-\u767D\u8272\u968E",colorGradation_10:"\u767D-\u7DA0\u8272\u968E",colorGradation_11:"\u7DA0-\u9EC3\u8272\u968E",colorGradation_12:"\u9EC3-\u7DA0\u8272\u968E",icons:"\u5716\u6A19\u96C6",pleaseSelectIcon:"\u8ACB\u9EDE\u64CA\u9078\u64C7\u4E00\u7D44\u5716\u6A19:",cellValue:"\u5132\u5B58\u683C\u503C",specificText:"\u7279\u5B9A\u6587\u5B57",occurrence:"\u767C\u751F\u65E5\u671F",greaterThan:"\u5927\u65BC",lessThan:"\u5C0F\u65BC",between:"\u4ECB\u65BC",equal:"\u7B49\u65BC",in:"\u548C",to:"\u5230",between2:"\u4E4B\u9593",contain:"\u5305\u542B",textContains:"\u6587\u5B57\u5305\u542B",duplicateValue:"\u91CD\u8907\u503C",uniqueValue:"\u552F\u4E00\u503C",top:"\u524D",top10:"\u524D10\u9805",top10_percent:"\u524D10%",last:"\u5F8C",last10:"\u5F8C10\u9805",last10_percent:"\u5F8C10%",oneself:"\u500B",above:"\u9AD8\u65BC",aboveAverage:"\u9AD8\u65BC\u5E73\u5747\u503C",below:"\u4F4E\u65BC",belowAverage:"\u4F4E\u65BC\u5E73\u5747\u503C",all:"\u5168\u90E8",yesterday:"\u6628\u5929",today:"\u4ECA\u5929",tomorrow:"\u660E\u5929",lastWeek:"\u4E0A\u5468",thisWeek:"\u672C\u5468",lastMonth:"\u4E0A\u6708",thisMonth:"\u672C\u6708",lastYear:"\u53BB\u5E74",thisYear:"\u672C\u5E74",last7days:"\u6700\u8FD17\u5929",last30days:"\u6700\u8FD130\u5929",next7days:"\u672A\u4F867\u5929",next30days:"\u672A\u4F8630\u5929",next60days:"\u672A\u4F8660\u5929",chooseRuleType:"\u9078\u64C7\u898F\u5247\u985E\u578B",editRuleDescription:"\u7DE8\u8F2F\u898F\u5247\u8AAA\u660E",newFormatRule:"\u65B0\u5EFA\u683C\u5F0F\u898F\u5247",editFormatRule:"\u7DE8\u8F2F\u683C\u5F0F\u898F\u5247",formatStyle:"\u683C\u5F0F\u6A23\u5F0F",fillType:"\u586B\u5145\u985E\u578B",color:"\u984F\u8272",twocolor:"\u96D9\u8272",tricolor:"\u4E09\u8272",multicolor:"\u5F69\u8272",grayColor:"\u7070\u8272",gradient:"\u6F38\u8B8A",solid:"\u5BE6\u5FC3",maxValue:"\u6700\u5927\u503C",medianValue:"\u4E2D\u9593\u503C",minValue:"\u6700\u5C0F\u503C",direction:"\u65B9\u5411",threeWayArrow:"\u4E09\u5411\u7BAD\u982D",fourWayArrow:"\u56DB\u5411\u7BAD\u982D",fiveWayArrow:"\u4E94\u5411\u7BAD\u982D",threeTriangles:"3\u500B\u4E09\u89D2\u5F62",shape:"\u5F62\u72C0",threeColorTrafficLight:"\u4E09\u8272\u4EA4\u901A\u71C8",fourColorTrafficLight:"\u56DB\u8272\u4EA4\u901A\u71C8",threeSigns:"\u4E09\u6A19\u8A8C",greenRedBlackGradient:"\u7DA0-\u7D05-\u9ED1\u6F38\u8B8A",rimless:"\u7121\u908A\u6846",bordered:"\u6709\u908A\u6846",mark:"\u6A19\u8A18",threeSymbols:"\u4E09\u500B\u7B26\u865F",tricolorFlag:"\u4E09\u8272\u65D7",circled:"\u6709\u5713\u5708",noCircle:"\u7121\u5713\u5708",grade:"\u7B49\u7D1A",grade4:"\u56DB\u7B49\u7D1A",grade5:"\u4E94\u7B49\u7D1A",threeStars:"3\u500B\u661F\u5F62",fiveQuadrantDiagram:"\u4E94\u8C61\u9650\u5716",fiveBoxes:"5\u500B\u6846"},insertLink:{linkText:"\u6587\u5B57",linkType:"\u9023\u7D50\u985E\u578B",external:"\u5916\u90E8\u9023\u7D50",internal:"\u5185\u90E8\u9023\u7D50",linkAddress:"\u9023\u7D50\u5730\u5740",linkSheet:"\u5DE5\u4F5C\u8868",linkCell:"\u5132\u5B58\u683C\u5F15\u7528",linkTooltip:"\u63D0\u793A",placeholder1:"\u8ACB\u8F38\u5165\u7DB2\u9801\u9023\u7D50\u4F4D\u5740",placeholder2:"\u8ACB\u8F38\u5165\u8981\u5F15\u7528\u7684\u5132\u5B58\u683C,\u4F8BA1",placeholder3:"\u8ACB\u8F38\u5165\u63D0\u793A\u5167\u5BB9",tooltipInfo1:"\u8ACB\u8F38\u5165\u6709\u6548\u7684\u9023\u7D50",tooltipInfo2:"\u8ACB\u8F38\u5165\u6B63\u78BA\u7684\u5132\u5B58\u683C\u5F15\u7528"},dataVerification:{cellRange:"\u5132\u5B58\u683C\u7BC4\u570D",selectCellRange:"\u9EDE\u64CA\u9078\u64C7\u5132\u5B58\u683C\u7BC4\u570D",selectCellRange2:"\u8ACB\u9078\u64C7\u5132\u5B58\u683C\u7BC4\u570D",verificationCondition:"\u9A57\u8B49\u689D\u4EF6",allowMultiSelect:"\u662F\u5426\u5141\u8A31\u591A\u9078",dropdown:"\u4E0B\u62C9\u6E05\u55AE",checkbox:"\u6838\u53D6\u65B9\u584A",number:"\u6578\u4F4D",number_integer:"\u6578\u4F4D-\u6574\u6578",number_decimal:"\u6578\u4F4D-\u5C0F\u6578",text_content:"\u6587\u5B57-\u5167\u5BB9",text_length:"\u6587\u5B57-\u9577\u5EA6",date:"\u65E5\u671F",validity:"\u6709\u6548\u6027",placeholder1:"\u8ACB\u8F38\u5165\u9078\u9805,\u4EE5\u82F1\u6587\u9017\u865F\u5206\u9694,\u59821,2,3,4,5",placeholder2:"\u8ACB\u8F38\u5165\u5167\u5BB9",placeholder3:"\u6578\u503C,\u598210",placeholder4:"\u8ACB\u8F38\u5165\u6307\u5B9A\u7684\u6587\u5B57",placeholder5:"\u8ACB\u8F38\u5165\u9078\u4E2D\u5132\u5B58\u683C\u6642\u986F\u793A\u7684\u63D0\u793A\u8A9E",selected:"\u9078\u64C7\u6642",notSelected:"\u672A\u9078\u64C7",between:"\u4ECB\u65BC",notBetween:"\u4E0D\u4ECB\u65BC",equal:"\u7B49\u65BC",notEqualTo:"\u4E0D\u7B49\u65BC",moreThanThe:"\u5927\u65BC",lessThan:"\u5C0F\u65BC",greaterOrEqualTo:"\u5927\u65BC\u7B49\u65BC",lessThanOrEqualTo:"\u5C0F\u65BC\u7B49\u65BC",include:"\u5305\u62EC",exclude:"\u4E0D\u5305\u62EC",earlierThan:"\u65E9\u65BC",noEarlierThan:"\u4E0D\u65E9\u65BC",laterThan:"\u665A\u65BC",noLaterThan:"\u4E0D\u665A\u65BC",identificationNumber:"\u8EAB\u4EFD\u8B49\u865F\u78BC",phoneNumber:"\u624B\u6A5F\u865F",remote:"\u81EA\u52D5\u9060\u7A0B\u7372\u53D6\u9078\u9805",prohibitInput:"\u8F38\u5165\u6578\u64DA\u7121\u6548\u6642\u7981\u6B62\u8F38\u5165",hintShow:"\u9078\u4E2D\u5132\u5B58\u683C\u6642\u986F\u793A\u63D0\u793A\u8A9E",deleteVerification:"\u5220\u9664\u9A57\u8B49",tooltipInfo1:"\u4E0B\u62C9\u6E05\u55AE\u9078\u9805\u4E0D\u53EF\u70BA\u7A7A",tooltipInfo2:"\u6838\u53D6\u65B9\u584A\u5167\u5BB9\u4E0D\u53EF\u70BA\u7A7A",tooltipInfo3:"\u8F38\u5165\u7684\u503C\u4E0D\u662F\u6578\u503C\u985E\u578B",tooltipInfo4:"\u6578\u503C2\u4E0D\u80FD\u5C0F\u65BC\u6578\u503C1",tooltipInfo5:"\u6587\u5B57\u5167\u5BB9\u4E0D\u80FD\u70BA\u7A7A",tooltipInfo6:"\u8F38\u5165\u7684\u503C\u4E0D\u662F\u65E5\u671F\u985E\u578B",tooltipInfo7:"\u65E5\u671F2\u4E0D\u80FD\u5C0F\u65BC\u65E5\u671F1",textlengthInteger:"\u6587\u5B57\u9577\u5EA6\u5FC5\u9808\u662F\u5927\u65BC\u7B49\u65BC0\u7684\u6574\u6578"},formula:{sum:"\u6C42\u548C",average:"\u5E73\u5747\u503C",count:"\u8A08\u6578",max:"\u6700\u5927\u503C",min:"\u6700\u5C0F\u503C",ifGenerate:"if\u516C\u5F0F\u751F\u6210\u5668",find:"\u66F4\u591A\u51FD\u6578",tipNotBelongToIf:"\u8A72\u5132\u5B58\u683C\u51FD\u6578\u4E0D\u5C6C\u65BCif\u516C\u5F0F!",tipSelectCell:"\u8ACB\u9078\u64C7\u5132\u5B58\u683C\u63D2\u5165\u51FD\u6578",ifGenCompareValueTitle:"\u6BD4\u8F83\u503C",ifGenSelectCellTitle:"\u9EDE\u64CA\u9078\u64C7\u5132\u5B58\u683C",ifGenRangeTitle:"\u7BC4\u570D",ifGenRangeTo:"\u81F3",ifGenRangeEvaluate:"\u7BC4\u570D\u8A55\u4F30",ifGenSelectRangeTitle:"\u9EDE\u64CA\u9078\u64C7\u7BC4\u570D",ifGenCutWay:"\u5283\u5206\u7BA1\u9053",ifGenCutSame:"\u5283\u5206\u503C\u76F8\u540C",ifGenCutNpiece:"\u5283\u5206\u4E3AN\u4EFD",ifGenCutCustom:"\u81EA\u5B9A\u7FA9\u8F38\u5165",ifGenCutConfirm:"\u751F\u6210",ifGenTipSelectCell:"\u9078\u64C7\u5132\u5B58\u683C",ifGenTipSelectCellPlace:"\u8ACB\u9078\u64C7\u5132\u5B58\u683C",ifGenTipSelectRange:"\u9078\u64C7\u55AE\u7BC4\u570D",ifGenTipSelectRangePlace:"\u8ACB\u9078\u64C7\u7BC4\u570D",ifGenTipNotNullValue:"\u6BD4\u8F03\u503C\u4E0D\u80FD\u70BA\u7A7A!",ifGenTipLableTitile:"\u6A19\u7C64",ifGenTipRangeNotforNull:"\u7BC4\u570D\u4E0D\u80FD\u70BA\u7A7A!",ifGenTipCutValueNotforNull:"\u5283\u5206\u503C\u4E0D\u80FD\u70BA\u7A7A\uFF01",ifGenTipNotGenCondition:"\u6C92\u6709\u751F\u6210\u53EF\u7528\u7684\u689D\u4EF6\uFF01"},formulaMore:{valueTitle:"\u503C",tipSelectDataRange:"\u9078\u53D6\u6578\u64DA\u7BC4\u570D",tipDataRangeTile:"\u6578\u64DA\u7BC4\u570D",findFunctionTitle:"\u67E5\u627E\u51FD\u6578",tipInputFunctionName:"\u8ACB\u8F38\u5165\u60A8\u8981\u67E5\u627E\u7684\u51FD\u6578\u540D\u7A31\u6216\u51FD\u6578\u529F\u80FD\u7684\u7C21\u8981\u63CF\u8FF0",Array:"\u6578\u7D44",Database:"\u8CC7\u6599\u4F86\u6E90",Date:"\u65E5\u671F",Engineering:"\u5DE5\u7A0B\u8A08\u7B97",Filter:"\u7BE9\u6AA2\u7A0B\u5F0F",Financial:"\u8CA1\u52D9",luckysheet:"Luckysheet\u5167\u5BD8",other:"\u5176\u5B83",Logical:"\u908F\u8F2F",Lookup:"\u67E5\u627E",Math:"\u6578\u5B78",Operator:"\u904B\u7B97\u5B50",Parser:"\u8F49\u63DB\u5DE5\u5177",Statistical:"\u7D71\u8A08",Text:"\u6587\u5B57",dataMining:"\u8CC7\u6599\u6316\u6398",selectFunctionTitle:"\u9078\u64C7\u51FD\u6578",calculationResult:"\u8A08\u7B97\u7D50\u679C",tipSuccessText:"\u6210\u529F",tipParamErrorText:"\u53C3\u6578\u985E\u578B\u932F\u8AA4",helpClose:"\u95DC\u9589",helpCollapse:"\u6536\u8D77",helpExample:"\u793A\u4F8B",helpAbstract:"\u6458\u8981",execfunctionError:'\u63D0\u793A", "\u516C\u5F0F\u5B58\u5728\u932F\u8AA4',execfunctionSelfError:"\u516C\u5F0F\u4E0D\u53EF\u5F15\u7528\u5176\u672C\u8EAB\u7684\u5132\u5B58\u683C",execfunctionSelfErrorResult:"\u516C\u5F0F\u4E0D\u53EF\u5F15\u7528\u5176\u672C\u8EAB\u7684\u5132\u5B58\u683C,\u6703\u5C0E\u81F4\u8A08\u7B97\u7D50\u679C\u4E0D\u6E96\u78BA",allowRepeatText:"\u53EF\u91CD\u8907",allowOptionText:"\u53EF\u9078",selectCategory:"\u6216\u9078\u64C7\u985E\u5225"},drag:{noMerge:"\u7121\u6CD5\u5C0D\u5408\u4F75\u5132\u5B58\u683C\u57F7\u884C\u6B64\u64CD\u4F5C",affectPivot:"\u7121\u6CD5\u5C0D\u6240\u9078\u5132\u5B58\u683C\u9032\u884C\u6B64\u66F4\u6539,\u56E0\u70BA\u5B83\u6703\u5F71\u97FF\u6578\u64DA\u900F\u8996\u9336\uFF01",noMulti:"\u7121\u6CD5\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C,\u8ACB\u9078\u64C7\u55AE\u500B\u5340\u57DF",noPaste:"\u7121\u6CD5\u5728\u6B64\u8655\u7C98\u8CBC\u6B64\u5167\u5BB9,\u8ACB\u9078\u64C7\u7C98\u8CBC\u5340\u57DF\u7684\u4E00\u500B\u5132\u5B58\u683C,\u7136\u5F8C\u518D\u6B21\u5617\u8A66\u7C98\u8CBC",noPartMerge:"\u7121\u6CD5\u5C0D\u90E8\u5206\u5408\u4F75\u5132\u5B58\u683C\u57F7\u884C\u6B64\u64CD\u4F5C",inputCorrect:"\u8ACB\u8F38\u5165\u6B63\u78BA\u7684\u6578\u503C",notLessOne:"\u884C\u5217\u6578\u4E0D\u80FD\u5C0F\u65BC1",offsetColumnLessZero:"\u504F\u79FB\u5217\u4E0D\u80FD\u70BA\u8CA0\u6578\uFF01",pasteMustKeybordAlert:"Copy and paste in the Sheet: Ctrl + C to copy, Ctrl + V to paste, Ctrl + X to cut",pasteMustKeybordAlertHTMLTitle:"Copy and paste in the Sheet",pasteMustKeybordAlertHTML:"Ctrl + C  to copy
Ctrl + V  to paste
Ctrl + X  to cut"},paste:{warning:"\u63D0\u793A",errorNotAllowMulti:"\u4E0D\u80FD\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C,\u8ACB\u9078\u64C7\u55AE\u500B\u5340\u57DF,\u7136\u5F8C\u518D\u8A66",errorNotAllowMerged:"\u4E0D\u80FD\u5BF9\u5408\u5E76\u5355\u5143\u683C\u505A\u90E8\u5206\u66F4\u6539"},pivotTable:{title:"\u6578\u64DA\u900F\u8996\u9336",closePannel:"\u95DC\u9589",editRange:"\u7DE8\u8F2F\u7BC4\u570D",tipPivotFieldSelected:"\u9078\u64C7\u9700\u8981\u6DFB\u52A0\u5230\u6578\u64DA\u900F\u8996\u9336\u7684\u6B04\u4F4D",tipClearSelectedField:"\u6E05\u9664\u6240\u6709\u5DF2\u9078\u6B04\u4F4D",btnClearSelectedField:"\u6E05\u9664",btnFilter:"\u7BE9\u9078",titleRow:"\u884C",titleColumn:"\u5217",titleValue:"\u6578\u503C",tipShowColumn:"\u7D71\u8A08\u6B04\u4F4D\u986F\u793A\u70BA\u5217",tipShowRow:"\u7D71\u8A08\u6B04\u4F4D\u986F\u793A\u70BA\u884C",titleSelectionDataRange:"\u9078\u53D6\u6578\u64DA\u7BC4\u570D",titleDataRange:"\u6578\u64DA\u7BC4\u570D",valueSum:"\u7E3D\u8A08",valueStatisticsSUM:"\u6C42\u548C",valueStatisticsCOUNT:"\u6578\u503C\u8A08\u6578",valueStatisticsCOUNTA:"\u8A08\u6578",valueStatisticsCOUNTUNIQUE:"\u53BB\u91CD\u8A08\u6578",valueStatisticsAVERAGE:"\u5E73\u5747\u503C",valueStatisticsMAX:"\u6700\u5927\u503C",valueStatisticsMIN:"\u6700\u5C0F\u503C",valueStatisticsMEDIAN:"\u4E2D\u4F4D\u6578",valueStatisticsPRODUCT:"\u4E58\u7A4D",valueStatisticsSTDEV:"\u6A19\u6E96\u5DEE",valueStatisticsSTDEVP:"\u6574\u9AD4\u6A19\u6E96\u5DEE",valueStatisticslet:"\u65B9\u5DEE",valueStatisticsVARP:"\u6574\u9AD4\u65B9\u5DEE",errorNotAllowEdit:"\u975E\u7DE8\u8F2F\u6A21\u5F0F\u4E0B\u7981\u6B62\u8A72\u64CD\u4F5C!",errorNotAllowMulti:"\u4E0D\u80FD\u5C0D\u591A\u91CD\u9078\u64C7\u5340\u57DF\u57F7\u884C\u6B64\u64CD\u4F5C,\u8ACB\u9078\u64C7\u55AE\u500B\u5340\u57DF,\u7136\u5F8C\u518D\u8A66",errorSelectRange:"\u8ACB\u9078\u64C7\u65B0\u5EFA\u900F\u8996\u9336\u7684\u5340\u57DF",errorIsDamage:"\u6B64\u6578\u64DA\u900F\u8996\u9336\u7684\u6E90\u6578\u64DA\u5DF2\u640D\u58DE\uFF01",errorNotAllowPivotData:"\u4E0D\u53EF\u9078\u64C7\u6578\u64DA\u900F\u8996\u9336\u70BA\u6E90\u6578\u64DA!",errorSelectionRange:"\u9078\u64C7\u5931\u6557,\u8F38\u5165\u7BC4\u570D\u932F\u8AA4\uFF01",errorIncreaseRange:"\u8ACB\u64F4\u5927\u9078\u64C7\u7684\u6578\u64DA\u7BC4\u570D!",titleAddColumn:"\u6DFB\u52A0\u5217\u5230\u6578\u64DA\u900F\u8996\u9336",titleMoveColumn:"\u79FB\u52D5\u8A72\u5217\u5230\u4E0B\u65B9\u767D\u6846",titleClearColumnFilter:"\u6E05\u9664\u8A72\u5217\u7684\u7BE9\u9078\u689D\u4EF6",titleFilterColumn:"\u7BE9\u9078\u8A72\u5217",titleSort:"\u6392\u5E8F",titleNoSort:"\u7121\u6392\u5E8F",titleSortAsc:"\u6607\u51AA",titleSortDesc:"\u964D\u5E8F",titleSortBy:"\u6392\u5E8F\u4F9D\u64DA",titleShowSum:"\u986F\u793A\u7E3D\u8A08",titleStasticTrue:"\u662F",titleStasticFalse:"\u5426"},dropCell:{copyCell:"\u8907\u88FD\u5132\u5B58\u683C",sequence:"\u586B\u5145\u5E8F\u5217",onlyFormat:"\u50C5\u586B\u5145\u683C\u5F0F",noFormat:"\u4E0D\u5E36\u683C\u5F0F\u586B\u5145",day:"\u4EE5\u5929\u6578\u586B\u5145",workDay:"\u4EE5\u5DE5\u4F5C\u65E5\u586B\u5145",month:"\u4EE5\u6708\u586B\u5145",year:"\u4EE5\u5E74\u586B\u5145",chineseNumber:"\u4EE5\u4E2D\u6587\u5C0F\u5BEB\u6578\u4F4D\u586B\u5145"},imageCtrl:{borderTile:"\u5716\u7247\u908A\u6846\u984F\u8272\u9078\u64C7",borderCur:"\u7576\u524D\u984F\u8272"},protection:{protectiontTitle:"\u4FDD\u8B77\u5DE5\u4F5C\u8868",enterPassword:"\u8ACB\u8F38\u5165\u5BC6\u78BC\uFF08\u53EF\u7559\u7A7A\uFF09",enterHint:"\u60A8\u8A66\u5716\u66F4\u6539\u7684\u5132\u5B58\u683C\u6216\u5716\u8868\u4F4D\u65BC\u53D7\u4FDD\u8B77\u7684\u5DE5\u4F5C\u8868\u4E2D\u3002\u82E5\u8981\u66F4\u6539,\u8ACB\u53D6\u6D88\u5DE5\u4F5C\u8868\u4FDD\u8B77\u3002\u60A8\u53EF\u80FD\u9700\u8981\u8F38\u5165\u5BC6\u78BC",swichProtectionTip:"\u4FDD\u8B77\u5DE5\u4F5C\u8868\u53CA\u9396\u5B9A\u7684\u5132\u5B58\u683C\u5167\u5BB9",authorityTitle:"\u5141\u8A31\u6B64\u5DE5\u4F5C\u8868\u7684\u7528\u6236\u9032\u884C:",selectLockedCells:"\u5B9A\u9396\u5B9A\u5132\u5B58\u683C",selectunLockedCells:"\u9078\u5B9A\u89E3\u9664\u9396\u5B9A\u7684\u5132\u5B58\u683C",formatCells:"\u8A2D\u5B9A\u5132\u5B58\u683C\u683C\u5F0F",formatColumns:"\u8A2D\u5B9A\u5217\u683C\u5F0F",formatRows:"\u8A2D\u5B9A\u884C\u683C\u5F0F",insertColumns:"\u63D2\u5165\u5217",insertRows:"\u63D2\u5165\u884C",insertHyperlinks:"\u63D2\u5165\u8D85\u9023\u7D50",deleteColumns:"\u5220\u9664\u5217",deleteRows:"\u5220\u9664\u884C",sort:"\u6392\u5E8F",filter:"\u4F7F\u7528\u81EA\u52D5\u7BE9\u9078",usePivotTablereports:"\u4F7F\u7528\u6578\u64DA\u900F\u8996\u9336\u548C\u5831\u8868",editObjects:"\u7DE8\u8F2F\u5C0D\u8C61",editScenarios:"\u7DE8\u8F2F\u65B9\u6848",allowRangeTitle:"\u5141\u8A31\u7528\u6236\u7DE8\u8F2F\u5340\u57DF",allowRangeAdd:"\u65B0\u5EFA...",allowRangeAddTitle:"\u6A19\u984C",allowRangeAddSqrf:"\u5F15\u7528\u5132\u5B58\u683C",selectCellRange:"\u9EDE\u64CA\u9078\u64C7\u5132\u5B58\u683C\u7BC4\u570D",selectCellRangeHolder:"\u8ACB\u8F38\u5165\u5132\u5B58\u683C\u7BC4\u570D",allowRangeAddTitlePassword:"\u5BC6\u78BC",allowRangeAddTitleHint:"\u63D0\u793A",allowRangeAddTitleHintTitle:"\u8A2D\u7F6E\u5BC6\u78BC\u5F8C,\u63D0\u793A\u7528\u6236\u8F38\u5165\u5BC6\u78BC\uFF08\u53EF\u7559\u7A7A\uFF09",allowRangeAddtitleDefault:"\u8ACB\u8F38\u5165\u5340\u57DF\u540D\u7A31",rangeItemDblclick:"\u6309\u5169\u4E0B\u9032\u884C\u7DE8\u8F2F",rangeItemHasPassword:"\u5DF2\u8A2D\u7F6E\u5BC6\u78BC",rangeItemErrorTitleNull:"\u6A19\u984C\u4E0D\u80FD\u70BA\u7A7A",rangeItemErrorRangeNull:"\u5132\u5B58\u683C\u7BC4\u570D\u4E0D\u80FD\u70BA\u7A7A",rangeItemErrorRange:"\u5132\u5B58\u683C\u7BC4\u570D\u683C\u5F0F\u932F\u8AA4",validationTitle:"\u9A57\u8B49\u63D0\u793A",validationTips:"\u9700\u8981\u8F38\u5165\u5BC6\u78BC\u4F86\u64A4\u92B7\u5DE5\u4F5C\u8868\u7684\u4FDD\u8B77",validationInputHint:"\u8ACB\u8F38\u5165\u5BC6\u78BC",checkPasswordNullalert:"\u5BC6\u78BC\u4E0D\u80FD\u70BA\u7A7A!",checkPasswordWrongalert:"\u5BC6\u78BC\u932F\u8AA4,\u8ACB\u91CD\u8A66\uFF01",checkPasswordSucceedalert:"\u89E3\u9396\u6210\u529F,\u53EF\u4EE5\u7DE8\u8F2F\u8A72\u5340\u57DF!",defaultRangeHintText:"\u8A72\u5132\u5B58\u683C\u6B63\u5728\u53D7\u5BC6\u78BC\u4FDD\u8B77",defaultSheetHintText:"\u8A72\u5132\u5B58\u683C\u6216\u5716\u8868\u4F4D\u65BC\u53D7\u4FDD\u8B77\u7684\u5DE5\u4F5C\u8868\u4E2D,\u82E5\u8981\u9032\u884C\u66F4\u6539,\u8ACB\u53D6\u6D88\u5DE5\u4F5C\u8868\u4FDD\u8B77,\u60A8\u53EF\u80FD\u9700\u8981\u8F38\u5165\u5BC6\u78BC\u3002"},cellFormat:{cellFormatTitle:"\u8A2D\u5B9A\u5132\u5B58\u683C\u683C\u5F0F",protection:"\u4FDD\u8B77",locked:"\u9396\u5B9A\u5132\u5B58\u683C",hidden:"\u96B1\u85CF\u516C\u5F0F",protectionTips:"\u53EA\u6709\u4FDD\u8B77\u5DE5\u4F5C\u8868\u529F\u80FD\uFF08\u5728\u529F\u80FD\u8868\u5217\u9EDE\u64CA\u4FDD\u8B77\u5DE5\u4F5C\u8868\u6309\u9215\u9032\u884C\u8A2D\u5B9A\uFF09\u958B\u555F\u5F8C,\u9396\u5B9A\u5132\u5B58\u683C\u6216\u96B1\u85CF\u516C\u5F0F\u624D\u80FD\u751F\u6548",tipsPart:"\u90E8\u5206\u9078\u4E2D",tipsAll:"\u5168\u90E8\u9078\u4E2D",selectionIsNullAlert:"\u8ACB\u9078\u64C7\u4E00\u500B\u7BC4\u570D\uFF01",sheetDataIsNullAlert:"\u6578\u64DA\u70BA\u7A7A\u7121\u6CD5\u8A2D\u5B9A\uFF01"},print:{normalBtn:"\u5E38\u898F\u8996\u5716",layoutBtn:"\u9801\u9762\u4F48\u5C40",pageBtn:"\u5206\u9801\u9810\u89BD",menuItemPrint:"\u5217\u5370(Ctrl+P)",menuItemAreas:"\u5217\u5370\u5340\u57DF",menuItemRows:"\u5217\u5370\u6A19\u984C\u884C",menuItemColumns:"\u5217\u5370\u6A19\u984C\u5217"},edit:{typing:"\u6B63\u5728\u8F38\u5165"},websocket:{success:"WebSocket\u9023\u63A5\u6210\u529F",refresh:"WebSocket\u9023\u63A5\u767C\u751F\u932F\u8AA4,\u8ACB\u5237\u65B0\u9801\u9762\uFF01",wait:"WebSocket\u9023\u63A5\u767C\u751F\u932F\u8AA4,\u8ACB\u8010\u5FC3\u7B49\u5F85\uFF01",close:"WebSocket\u9023\u63A5\u95DC\u9589",contact:"\u670D\u52D9\u5668\u901A\u4FE1\u767C\u751F\u932F\u8AA4,\u8ACB\u5237\u65B0\u9801\u9762\u5F8C\u518D\u8A66,\u5982\u82E5\u4E0D\u884C\u8ACB\u806F\u7CFB\u7BA1\u7406\u54E1\uFF01",support:"\u7576\u524D\u700F\u89BD\u5668\u4E0D\u652F\u6301WebSocket"},exportXlsx:{notice:"\u8ACB\u914D\u7F6E\u5C0E\u51FA\u63D2\u4EF6",serverError:"\u670D\u52D9\u5668\u6B63\u5728\u7DAD\u8B77",title:"\u5C0E\u51FAXLSX",range:"\u7BC4\u570D",currentSheet:"\u7576\u524D\u5DE5\u4F5C\u8868",allSheets:"\u6240\u6709\u5DE5\u4F5C\u8868"}}});function U1(){return rs[h.lang]}var rs,Q,vt=$e(()=>{yu();ku();wu();_u();Xe();rs={en:gu,zh:vu,es:bu,zh_tw:xu};Q=U1});function Cu(){let e=Q().toolbar,n=Q().fontarray,t=Q().defaultFmt,l={undo:`
+
+
+
+ +
+
+
+
`,redo:`
+
+
+
+ +
+
+
+
`,paintFormat:`
+
+
+
+ +
+
+
+
`,currencyFormat:`
+
+
+
+ +
+
+
+
`,percentageFormat:`
+
+
+
+ +
+
+
+
`,numberDecrease:`
+
+
+
+ +
+
+
+
`,numberIncrease:`
+
+
+
+ +
+
+
+
`,moreFormats:`
+
+
+
+ ${t[0].text} +
+
+
+
+
+
`,font:`
+
+
+
+ ${n[0]} +
+
+
+
+
+
`,fontSize:`
+
+
+
+ +
+
+
+
+
+
`,bold:`
+
+
+
+ +
+
+
+
`,italic:`
+
+
+
+ +
+
+
+
`,strikethrough:`
+
+
+
+ +
+
+
+
`,underline:`
+
+
+
+ +
+
+
+
`,textColor:`
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
`,fillColor:`
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
`,border:`
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
`,mergeCell:`
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
`,horizontalAlignMode:`
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
`,verticalAlignMode:`
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
`,textWrapMode:`
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
`,textRotateMode:`
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
`,image:`
+
+
+
+
+ +
+
+
+
+
`,link:``,chart:`
+
+
+
+
+ +
+
+
+
+
`,postil:`
+
+
+
+
+
+
+
+
+
`,pivotTable:`
+
+
+
+
+ +
+
+
+
+
`,function:`
+
+
+
+ +
+
+ ${e.sum} +
+
+
+
+
+
+
+
+
+
+
+
`,frozenMode:`
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
+
+
+
+
+
`,sortAndFilter:`
+
+
+
+ +
+
+
+
+
+
`,conditionalFormat:`
+
+
+ +
+ +
+
+
+
+
+
`,dataVerification:`
+
+
+
+
+ +
+
+
+
+
`,splitColumn:`
+
+
+
+
+ +
+
+
+
+
`,screenshot:`
+
+
+
+
+ +
+
+
+
+
`,findAndReplace:`
+
+
+ +
+ +
+
+
+
+
+
`,protection:`
+
+
+
+
+ +
+
+
+
+
`,print:`
+
+
+ +
+ +
+
+
+
+
+
`,exportXlsx:`
+
+
+
+
+ +
+
+
+
+
`},a=me.showtoolbar,o=me.showtoolbarConfig,s=['
'];if(P(o)==="array"){if(!a)return"";let f=0;return o.forEach(function(d,m){if(d==="|"){let g=o[m-1];g!=="|"&&s.push(`
`)}else s.push(l[d])}),s.join("")}let u=Er.reduce(function(f,d){return d!=="|"&&(f[d]=!0),f},{});if(!a)for(let f in u)u[f]=!1;JSON.stringify(o)!=="{}"&&(o.hasOwnProperty("undoRedo")&&(u.undo=u.redo=o.undoRedo),Object.assign(u,o));for(let f=0;f`)}else s.push(l[d])}return s.join("")}var Er,ns,as=$e(()=>{vt();Sl();ht();Er=["undo","redo","paintFormat","|","currencyFormat","percentageFormat","numberIncrease","numberDecrease","moreFormats","|","font","|","fontSize","|","bold","italic","strikethrough","underline","textColor","|","fillColor","border","mergeCell","|","horizontalAlignMode","verticalAlignMode","textWrapMode","textRotateMode","|","image","link","chart","postil","pivotTable","|","function","frozenMode","sortAndFilter","conditionalFormat","dataVerification","splitColumn","screenshot","findAndReplace","protection","print","exportXlsx"],ns={undo:"#luckysheet-icon-undo",redo:"#luckysheet-icon-redo",paintFormat:["#luckysheet-icon-paintformat"],currencyFormat:"#luckysheet-icon-currency",percentageFormat:"#luckysheet-icon-percent",numberDecrease:"#luckysheet-icon-fmt-decimal-decrease",numberIncrease:"#luckysheet-icon-fmt-decimal-increase",moreFormats:"#luckysheet-icon-fmt-other",font:"#luckysheet-icon-font-family",fontSize:"#luckysheet-icon-font-size",bold:"#luckysheet-icon-bold",italic:"#luckysheet-icon-italic",strikethrough:"#luckysheet-icon-strikethrough",underline:"#luckysheet-icon-underline",textColor:["#luckysheet-icon-text-color","#luckysheet-icon-text-color-menu"],fillColor:["#luckysheet-icon-cell-color","#luckysheet-icon-cell-color-menu"],border:["#luckysheet-icon-border-all","#luckysheet-icon-border-menu"],mergeCell:["#luckysheet-icon-merge-button","#luckysheet-icon-merge-menu"],horizontalAlignMode:["#luckysheet-icon-align","#luckysheet-icon-align-menu"],verticalAlignMode:["#luckysheet-icon-valign","#luckysheet-icon-valign-menu"],textWrapMode:["#luckysheet-icon-textwrap","#luckysheet-icon-textwrap-menu"],textRotateMode:["#luckysheet-icon-rotation","#luckysheet-icon-rotation-menu"],image:"#luckysheet-insertImg-btn-title",link:"#luckysheet-insertLink-btn-title",chart:"#luckysheet-chart-btn-title",postil:"#luckysheet-icon-postil",pivotTable:["#luckysheet-pivot-btn-title"],function:["#luckysheet-icon-function","#luckysheet-icon-function-menu"],frozenMode:["#luckysheet-freezen-btn-horizontal","#luckysheet-icon-freezen-menu"],sortAndFilter:"#luckysheet-icon-autofilter",conditionalFormat:"#luckysheet-icon-conditionformat",dataVerification:"#luckysheet-dataVerification-btn-title",splitColumn:"#luckysheet-splitColumn-btn-title",screenshot:"#luckysheet-chart-btn-screenshot",findAndReplace:"#luckysheet-icon-seachmore",protection:"#luckysheet-icon-protection",print:"#luckysheet-icon-print",exportXlsx:"#luckysheet-exportXlsx-btn-title"}});function Iu(){let e=Q(),n=e.rightclick,t=e.toolbar,l=Y1(),a=!0;!l.insertRow&&!l.insertColumn&&!l.deleteRow&&!l.deleteColumn&&!l.deleteCell&&(a=!1);let o=!0;!l.clear&&!l.matrix&&!l.sort&&!l.filter&&!l.chart&&!l.image&&!l.link&&!l.data&&!l.cellFormat&&(o=!1);let s=(l.customs||[]).map((f,d)=>` +
+
+ ${f.title} +
+
`).join("");return`
+
+
${n.copy}
+
+
+
+ ${n.copyAs} +
+
+
+
${n.paste}
+
+
+ +
+
+ ${n.insert}${n.row} +
+
+
+
+ ${n.insert}${n.column} +
+
+
+
+ ${n.deleteSelected}${n.row} +
+
+
+
+ ${n.deleteSelected}${n.column} +
+
+ +
+
+ ${n.deleteCell} +
+
+
+
+ +
+
+ ${n.to} + ${n.left} + ${n.add} + + ${n.column} +
+
+
+
+ ${n.to} + ${n.right} + ${n.add} + + ${n.column} +
+
+
+
+ ${n.deleteSelected} + ${n.column} +
+
+
+
+ ${n.hideSelected} + ${n.column} +
+
+
+
+ ${n.showHide} + ${n.column} +
+
+
+
+ ${n.column} + ${n.width} + + px +
+
+
+
+ +
+
${n.orderAZ}
+
+
+
${n.orderZA}
+
+
+
+ +
+
${n.clearContent}
+
+
+
+ ${n.matrix} +
+
+
+
${n.sortSelection}
+
+
+
${n.filterSelection}
+
+
+
${n.chartGeneration}
+
+
+
${t.insertImage}
+
+ +
+
${t.dataVerification}
+
+
+
${t.cellFormat}
+
+ ${s} +
+
+
+
+
Json ${n.firstLineTitle}
+
+
+
Json ${n.untitled}
+
+
+
${n.array1}
+
+
+
${n.array2}
+
+
+
+ ${n.array3} + + \xD7 + +
+
+ +
+
${n.diagonal}
+
+
+
${n.antiDiagonal}
+
+
+
+ ${n.diagonalOffset} + + ${n.column} +
+
+
+
${n.boolean}
+
+
+ + + + + + + +
+
+
+ ${n.moveLeft} +
+
+
+
+ ${n.moveUp} +
+
+
+
+
+
+ ${n.flip} + + +
+
+
+
+ ${n.flip} + + +
+
+
+
${n.transpose}
+
+ +
+
+
${n.matrixCalculation}
+
+ + +
+
+
+
+
+ ${n.delete0} + + +
+
+
+
+ ${n.removeDuplicate} + + +
+
+
`}function Pu(){let e=Q().sheetconfig,n=X1();if(Object.values(n).every(o=>!o))return $("#luckysheet-sheet-container-c").addClass("luckysheet-sheet-container-menu-hide"),"";let t=!0,l=!0;return!n.delete&&!n.copy&&!n.rename&&!n.color&&(t=!1,n.hide||(l=!1)),n.hide||(t=!1),n.move||(l=!1),`
+
+
${e.delete}
+
+
+
${e.copy}
+
+
+
${e.rename}
+
+
+
+ ${e.changeColor} +
+
+ +
+
${e.hide}
+
+
+
${e.unhide}
+
+ +
+
${e.moveLeft}
+
+
+
${e.moveRight}
+
+
+
+
+
${e.resetColor}
+
+
+
+ +
+
+
`}function Yi(){let n=Q().filter;return`
${n.sortByAsc}
${n.sortByDesc}
${n.filterByColor}
${n.filterByCondition}
${n.filterByValues}
${n.filterValueByAllBtn} - ${n.filterValueByClearBtn} - ${n.filterValueByInverseBtn}
${n.filterConform}
${n.filterCancel}
${n.clearFilter}
`}function Xi(){let n=Q().filter;return`
${n.conditionNone}
${n.conditionCellIsNull}
${n.conditionCellNotNull}
${n.conditionCellTextContain}
${n.conditionCellTextNotContain}
${n.conditionCellTextStart}
${n.conditionCellTextEnd}
${n.conditionCellTextEqual}
${n.conditionCellDateEqual}
${n.conditionCellDateBefore}
${n.conditionCellDateAfter}
${n.conditionCellGreater}
${n.conditionCellGreaterEqual}
${n.conditionCellLess}
${n.conditionCellLessEqual}
${n.conditionCellEqual}
${n.conditionCellNotEqual}
${n.conditionCellBetween}
${n.conditionCellNotBetween}
`}function zu(){let e=Q(),n=e.alternatingColors,t=e.toolbar;return'
'+t.alternatingColors+'
'+n.applyRange+'
'+n.textTitle+'
'+n.custom+'
'+n.header+'
'+n.colorShow+'1
'+n.colorShow+'2
"}function Hu(){return Cu()}function G1(){let n=Q().info,t={enable:!0,image:()=>` + + `,text:n.loading,viewBox:"32 32 64 64",imageClass:"",textClass:"",customClass:""};return JSON.stringify(me.loading)!=="{}"&&Object.assign(t,me.loading),t}function Y1(){let e={copy:!0,copyAs:!0,paste:!0,insertRow:!0,insertColumn:!0,deleteRow:!0,deleteColumn:!0,deleteCell:!0,hideRow:!0,hideColumn:!0,rowHeight:!0,columnWidth:!0,clear:!0,matrix:!0,sort:!0,filter:!0,chart:!0,image:!0,link:!0,data:!0,cellFormat:!0};return JSON.stringify(me.cellRightClickConfig)!=="{}"&&Object.assign(e,me.cellRightClickConfig),me.cellRightClickConfig=e,e}function X1(){let e={delete:!0,copy:!0,rename:!0,color:!0,hide:!0,move:!0};return JSON.stringify(me.sheetRightClickConfig)!=="{}"&&Object.assign(e,me.sheetRightClickConfig),me.sheetRightClickConfig=e,e}var Tu,Su,$u,Ru,Au,Ql,Du,Mu,Fu,Eu,dt,Nu,Lu,Ou,Bu,W1,Nr,Yl,at,$l,Kn,_a,en,Wt=$e(()=>{vt();Xe();Sl();ht();as();Tu=function(){let e=Q(),n=e.info,t=e.print,l=me.userInfo===!0?' Lucky':me.userInfo;return`
+ +
+
+
+ +
+ +
+ +
+
${n.detailUpdate}
+
${n.wait}
+ + \${functionButton} + + ${P(l)==="string"?`
+ ${l}
`:""} + + ${P(l)==="object"?`
+ + ${l.userName} +
`:""} + +
+
\${menu}
+
+
+
+
+
+
+
+
+
+ +
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + +
+
+
+
+
+
+
+
+
+
\${columnHeader} +
+
+
+
+
+
+
+
\${rowHeader} +
+
+
+
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + +
+
+ +
+
+
+
+
+
+
+
\${flow} +
+
+
+
+
+
+
+
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
100%
+
+
+ +
+
+
+
+ +
+
`},Su='
${flow}
',$u="";Ru=function(){let n=Q().pivotTable;return'
'+n.titleSort+'
'+n.titleSortBy+'
'+n.titleShowSum+'
"},Au=function(){let n=Q().pivotTable;return'
'+n.valueStatisticsSUM+'
'+n.valueStatisticsCOUNT+'
'+n.valueStatisticsCOUNTA+'
'+n.valueStatisticsCOUNTUNIQUE+'
'+n.valueStatisticsAVERAGE+'
'+n.valueStatisticsMAX+'
'+n.valueStatisticsMIN+'
'+n.valueStatisticsMEDIAN+'
'+n.valueStatisticsPRODUCT+'
'+n.valueStatisticsSTDEV+'
'+n.valueStatisticsSTDEVP+'
'+n.valueStatisticslet+'
'+n.valueStatisticsVARP+'
'},Ql='
${name} ${colorset}
',Du='
${column}
',Mu='
${item}
',Fu='
${icon}${name}
',Eu='
',dt='',Nu='
';Lu=function(){let n=Q().pivotTable;return` +
+
${n.title}
+
+
+
+
${n.editRange}
+
+
${n.tipPivotFieldSelected} ${n.btnClearSelectedField}
+
+
+
+
${n.btnFilter}
+
+
+
+
${n.titleRow}
+
+
+
+
${n.titleColumn}
+
+
+
+
${n.titleValue}
+
+
+
+
+
+ `};Ou='
\u9009\u62E9\u7EF4\u5EA6
\u6392\u5E8F
\u5168\u9009 - \u6E05\u9664 - \u53CD\u9009\u53EF\u4EE5\u76F4\u63A5\u6846\u9009\u6570\u636E\u70B9
\u6570\u636E\u70B9\u8BBE\u7F6E
\u56FE\u5F62\u989C\u8272
\u56FE\u5F62\u5927\u5C0F
\u56FE\u5F62\u5F62\u72B6
\u8FB9\u6846\u7C97\u7EC6
\u8FB9\u6846\u6837\u5F0F
\u8FB9\u6846\u989C\u8272
\u6587\u5B57\u6807\u7B7E
\u6570\u503C\u6BD4\u4F8B
\u5C0F\u6570\u4F4D\u6570
\u6807\u7B7E\u683C\u5F0F
\u6570\u636E\u540D\u79F0
\u6807\u7B7E\u4F4D\u7F6E
',Bu='';W1=function(e){if(typeof e.image=="function")return e.image();let t=new RegExp("^(image|path)://").exec(e.image),l="";if(t!==null){let a=t[0],o=t[1],s=t.input.substring(a.length);switch(o){case"image":l=`
`;break;case"path":let u=document.createElementNS("http://www.w3.org/2000/svg","svg");u.setAttribute("class","path-type"),u.setAttribute("viewBox",e.viewBox);let f=document.createElementNS("http://www.w3.org/2000/svg","path");f.setAttribute("d",s),f.setAttribute("fill","currentColor"),u.appendChild(f),l=u.outerHTML;break;default:break}}return l},Nr=function(e,n){if(!e)return;let t=G1();if(n&&JSON.stringify(n)!=="{}"&&Object.assign(t,n),typeof t.enable=="boolean"&&t.enable===!1)return{el:"",show:u,close:f};let l=W1(t),a="luckysheet-loading-"+uuid.v4(),o=` +
+
+ ${l} +
+
+ ${t.text} +
+
`,s=document.createElement("div");s.id=a,s.className="luckysheet-loading-mask "+t.customClass,$(s).html(o),$(e).append(s);function u(){a&&$("#"+a).show()}function f(){a&&$("#"+a).hide()}return{el:s,show:u,close:f}},Yl=["#c1232b","#27727b","#fcce10","#e87c25","#b5c334","#fe8463","#9bca63","#fad860","#f3a43b","#60c0dd","#d7504b","#c6e579","#f4e001","#f0805a","#26c0c0","#c12e34","#e6b600","#0098d9","#2b821d","#005eaa","#339ca8","#cda819","#32a487","#3fb1e3","#6be6c1","#626c91","#a0a7e6","#c4ebad","#96dee8"],at={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,PAUSE:19,CAPSLOCK:20,ESC:27,SPACE:33,PAGEUP:33,PAGEDOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,INSERT:45,DELETE:46,WIN:91,WIN_R:92,MENU:93,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SCROLLLOCK:145},$l={fillStyle:"#000000",textBaseline:"middle",strokeStyle:"#dfdfdf",rowFillStyle:"#5e5e5e",textAlign:"center"},Kn=function(){return"normal normal normal "+h.defaultFontSize+"pt "+Q().fontarray[0]+', "Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "WenQuanYi Micro Hei", sans-serif'},_a=new Image;_a.src="data:image/png;base64,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";en={border:{"border-top":" iconfont luckysheet-iconfont-shangbiankuang","border-bottom":" iconfont luckysheet-iconfont-xiabiankuang","border-left":" iconfont luckysheet-iconfont-zuobiankuang","border-right":" iconfont luckysheet-iconfont-youbiankuang","border-none":" iconfont luckysheet-iconfont-wubiankuang","border-all":" iconfont luckysheet-iconfont-quanjiabiankuang","border-outside":" iconfont luckysheet-iconfont-sizhoujiabiankuang","border-inside":" iconfont luckysheet-iconfont-neikuangxian","border-horizontal":" iconfont luckysheet-iconfont-neikuanghengxian","border-vertical":" iconfont luckysheet-iconfont-neikuangshuxian"},align:{left:" iconfont luckysheet-iconfont-wenbenzuoduiqi",center:" iconfont luckysheet-iconfont-wenbenjuzhongduiqi",right:" iconfont luckysheet-iconfont-wenbenyouduiqi",top:" iconfont luckysheet-iconfont-dingbuduiqi",middle:" iconfont luckysheet-iconfont-shuipingduiqi",bottom:" iconfont luckysheet-iconfont-dibuduiqi"},textWrap:{overflow:" iconfont luckysheet-iconfont-yichu1",wrap:" iconfont luckysheet-iconfont-zidonghuanhang",clip:" iconfont luckysheet-iconfont-jieduan"},rotation:{none:" iconfont luckysheet-iconfont-wuxuanzhuang",angleup:" iconfont luckysheet-iconfont-xiangshangqingxie",angledown:" iconfont luckysheet-iconfont-xiangxiaqingxie",vertical:" iconfont luckysheet-iconfont-shupaiwenzi","rotation-up":" iconfont luckysheet-iconfont-wenbenxiangshang","rotation-down":" iconfont luckysheet-iconfont-xiangxia90"}}});function K(e){for(let n=0;n{n.chart&&n.chart.forEach(t=>{let l=h.getChartJson(t.chart_id);t.chartOptions=l})}),h.luckysheetfile}function qu(){return h.config}function Ki(){return h.visibledatarow}function Zi(){return h.visibledatacolumn}function ju(){return h.conditionFormatCells}var Dt=$e(()=>{ht();Xe()});function Uu(e){h.luckysheet_select_save=e}function tn(e){h.luckysheet_scroll_status=e}function Zn(e){h.luckysheetfile=e}var Rn=$e(()=>{Dt();Xe()});var K1,dr,Ca=$e(()=>{K1={mobilecheck:function(){var e=!1;return function(n){("ongestureend"in window||/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(n)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(n.substr(0,4)))&&(e=!0)}(navigator.userAgent||navigator.vendor||window.opera),document.body&&document.body.clientWidth&&document.body.clientHeight&&document.body.clientWidth<350&&document.body.clientHeight<500&&(e=!0),e},iphoneCheck:function(){var e=!1;return/iPhone/i.test(navigator.userAgent)&&(e=!0),!0},isWeixin:function(){var e=navigator.userAgent.toLowerCase();return e.match(/MicroMessenger/i)=="micromessenger"},isAndroid:function(){var e=navigator.userAgent,n=(navigator.appVersion,e.indexOf("Android")>-1||e.indexOf("Linux")>-1);return n},tabletCheck:function(){var e=/ipad|android|android 3.0|xoom|sch-i800|playbook|tablet|kindle/i.test(navigator.userAgent.toLowerCase());return e},BrowserType:function(){var e=navigator.userAgent,n=e.indexOf("Opera")>-1,t=e.indexOf("compatible")>-1&&e.indexOf("MSIE")>-1&&!n,l=e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1,a=e.indexOf("Edge")>-1,o=e.indexOf("Firefox")>-1,s=e.indexOf("Safari")>-1&&e.indexOf("Chrome")==-1,u=e.indexOf("Chrome")>-1&&e.indexOf("Safari")>-1;if(t){var f=new RegExp("MSIE (\\d+\\.\\d+);");f.test(e);var d=parseFloat(RegExp.$1);return d==7?"IE7":d==8?"IE8":d==9?"IE9":d==10?"IE10":"0"}if(o)return"FF";if(n)return"Opera";if(s)return"Safari";if(u)return"Chrome";if(a)return"Edge";if(l)return"IE11"},isIE:function(){var e=navigator.userAgent,n=e.indexOf("Opera")>-1,t=e.indexOf("compatible")>-1&&e.indexOf("MSIE")>-1&&!n,l=e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1;return t||l?"1":"-1"},IEVersion:function(){var e=navigator.userAgent,n=e.indexOf("Opera")>-1,t=e.indexOf("compatible")>-1&&e.indexOf("MSIE")>-1&&!n,l=e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1,a=e.indexOf("Windows NT 6.1; Trident/7.0;")>-1&&!t;if(t){var o=new RegExp("MSIE (\\d+\\.\\d+);");o.test(e);var s=parseFloat(RegExp.$1);return s==7?"IE7":s==8?"IE8":s==9?"IE9":s==10?"IE10":"0"}else return a?"Edge":l?"IE11":"-1"},luckysheetrefreshfixednum:null,luckysheetrefreshfixed:function(){var e=this;return e.luckysheetrefreshfixednum==null&&(e.BrowserType()=="FF"?e.luckysheetrefreshfixednum=5:e.luckysheetrefreshfixednum=0),e.luckysheetrefreshfixednum},detectOS(){var e=navigator.userAgent,n=navigator.platform=="Win32"||navigator.platform=="Windows",t=navigator.platform=="Mac68K"||navigator.platform=="MacPPC"||navigator.platform=="Macintosh"||navigator.platform=="MacIntel";if(t)return"Mac";var l=navigator.platform=="X11"&&!n&&!t;if(l)return"Unix";var a=String(navigator.platform).indexOf("Linux")>-1;if(a)return"Linux";if(n){var o=e.indexOf("Windows NT 5.0")>-1||e.indexOf("Windows 2000")>-1;if(o)return"Win2000";var s=e.indexOf("Windows NT 5.1")>-1||e.indexOf("Windows XP")>-1;if(s)return"WinXP";var u=e.indexOf("Windows NT 5.2")>-1||e.indexOf("Windows 2003")>-1;if(u)return"Win2003";var f=e.indexOf("Windows NT 6.0")>-1||e.indexOf("Windows Vista")>-1;if(f)return"WinVista";var d=e.indexOf("Windows NT 6.1")>-1||e.indexOf("Windows 7")>-1;if(d)return"Win7"}return"other"}},dr=K1});var dn=kl(Xl=>{"use strict";var Z1=typeof Uint8Array!="undefined"&&typeof Uint16Array!="undefined"&&typeof Int32Array!="undefined";function J1(e,n){return Object.prototype.hasOwnProperty.call(e,n)}Xl.assign=function(e){for(var n=Array.prototype.slice.call(arguments,1);n.length;){var t=n.shift();if(!!t){if(typeof t!="object")throw new TypeError(t+"must be non-object");for(var l in t)J1(t,l)&&(e[l]=t[l])}}return e};Xl.shrinkBuf=function(e,n){return e.length===n?e:e.subarray?e.subarray(0,n):(e.length=n,e)};var Q1={arraySet:function(e,n,t,l,a){if(n.subarray&&e.subarray){e.set(n.subarray(t,t+l),a);return}for(var o=0;o{"use strict";var t0=dn(),l0=4,Gu=0,Wu=1,r0=2;function Ta(e){for(var n=e.length;--n>=0;)e[n]=0}var n0=0,Yu=1,a0=2,i0=3,o0=258,is=29,ci=256,ui=ci+1+is,Sa=30,os=19,Xu=2*ui+1,Jn=15,ss=16,s0=7,cs=256,Ku=16,Zu=17,Ju=18,us=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Ji=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],c0=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Qu=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],u0=512,mn=new Array((ui+2)*2);Ta(mn);var hi=new Array(Sa*2);Ta(hi);var fi=new Array(u0);Ta(fi);var di=new Array(o0-i0+1);Ta(di);var hs=new Array(is);Ta(hs);var Qi=new Array(Sa);Ta(Qi);function fs(e,n,t,l,a){this.static_tree=e,this.extra_bits=n,this.extra_base=t,this.elems=l,this.max_length=a,this.has_stree=e&&e.length}var eh,th,lh;function ds(e,n){this.dyn_tree=e,this.max_code=0,this.stat_desc=n}function rh(e){return e<256?fi[e]:fi[256+(e>>>7)]}function mi(e,n){e.pending_buf[e.pending++]=n&255,e.pending_buf[e.pending++]=n>>>8&255}function er(e,n,t){e.bi_valid>ss-t?(e.bi_buf|=n<>ss-e.bi_valid,e.bi_valid+=t-ss):(e.bi_buf|=n<>>=1,t<<=1;while(--n>0);return t>>>1}function h0(e){e.bi_valid===16?(mi(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)}function f0(e,n){var t=n.dyn_tree,l=n.max_code,a=n.stat_desc.static_tree,o=n.stat_desc.has_stree,s=n.stat_desc.extra_bits,u=n.stat_desc.extra_base,f=n.stat_desc.max_length,d,m,g,y,v,k,b=0;for(y=0;y<=Jn;y++)e.bl_count[y]=0;for(t[e.heap[e.heap_max]*2+1]=0,d=e.heap_max+1;df&&(y=f,b++),t[m*2+1]=y,!(m>l)&&(e.bl_count[y]++,v=0,m>=u&&(v=s[m-u]),k=t[m*2],e.opt_len+=k*(y+v),o&&(e.static_len+=k*(a[m*2+1]+v)));if(b!==0){do{for(y=f-1;e.bl_count[y]===0;)y--;e.bl_count[y]--,e.bl_count[y+1]+=2,e.bl_count[f]--,b-=2}while(b>0);for(y=f;y!==0;y--)for(m=e.bl_count[y];m!==0;)g=e.heap[--d],!(g>l)&&(t[g*2+1]!==y&&(e.opt_len+=(y-t[g*2+1])*t[g*2],t[g*2+1]=y),m--)}}function ah(e,n,t){var l=new Array(Jn+1),a=0,o,s;for(o=1;o<=Jn;o++)l[o]=a=a+t[o-1]<<1;for(s=0;s<=n;s++){var u=e[s*2+1];u!==0&&(e[s*2]=nh(l[u]++,u))}}function d0(){var e,n,t,l,a,o=new Array(Jn+1);for(t=0,l=0;l>=7;l8?mi(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function m0(e,n,t,l){oh(e),l&&(mi(e,t),mi(e,~t)),t0.arraySet(e.pending_buf,e.window,n,t,e.pending),e.pending+=t}function sh(e,n,t,l){var a=n*2,o=t*2;return e[a]>1;s>=1;s--)ms(e,t,s);d=o;do s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ms(e,t,1),u=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=u,t[d*2]=t[s*2]+t[u*2],e.depth[d]=(e.depth[s]>=e.depth[u]?e.depth[s]:e.depth[u])+1,t[s*2+1]=t[u*2+1]=d,e.heap[1]=d++,ms(e,t,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],f0(e,n),ah(t,f,e.bl_count)}function uh(e,n,t){var l,a=-1,o,s=n[0*2+1],u=0,f=7,d=4;for(s===0&&(f=138,d=3),n[(t+1)*2+1]=65535,l=0;l<=t;l++)o=s,s=n[(l+1)*2+1],!(++u=3&&e.bl_tree[Qu[n]*2+1]===0;n--);return e.opt_len+=3*(n+1)+5+5+4,n}function g0(e,n,t,l){var a;for(er(e,n-257,5),er(e,t-1,5),er(e,l-4,4),a=0;a>>=1)if(n&1&&e.dyn_ltree[t*2]!==0)return Gu;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return Wu;for(t=32;t0?(e.strm.data_type===r0&&(e.strm.data_type=y0(e)),ps(e,e.l_desc),ps(e,e.d_desc),s=p0(e),a=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=a&&(a=o)):a=o=t+5,t+4<=a&&n!==-1?dh(e,n,t,l):e.strategy===l0||o===a?(er(e,(Yu<<1)+(l?1:0),3),ch(e,mn,hi)):(er(e,(a0<<1)+(l?1:0),3),g0(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),ch(e,e.dyn_ltree,e.dyn_dtree)),ih(e),l&&oh(e)}function w0(e,n,t){return e.pending_buf[e.d_buf+e.last_lit*2]=n>>>8&255,e.pending_buf[e.d_buf+e.last_lit*2+1]=n&255,e.pending_buf[e.l_buf+e.last_lit]=t&255,e.last_lit++,n===0?e.dyn_ltree[t*2]++:(e.matches++,n--,e.dyn_ltree[(di[t]+ci+1)*2]++,e.dyn_dtree[rh(n)*2]++),e.last_lit===e.lit_bufsize-1}$a._tr_init=v0;$a._tr_stored_block=dh;$a._tr_flush_block=b0;$a._tr_tally=w0;$a._tr_align=k0});var gs=kl((Kv,ph)=>{"use strict";function x0(e,n,t,l){for(var a=e&65535|0,o=e>>>16&65535|0,s=0;t!==0;){s=t>2e3?2e3:t,t-=s;do a=a+n[l++]|0,o=o+a|0;while(--s);a%=65521,o%=65521}return a|o<<16|0}ph.exports=x0});var ys=kl((Zv,gh)=>{"use strict";function _0(){for(var e,n=[],t=0;t<256;t++){e=t;for(var l=0;l<8;l++)e=e&1?3988292384^e>>>1:e>>>1;n[t]=e}return n}var C0=_0();function T0(e,n,t,l){var a=C0,o=l+t;e^=-1;for(var s=l;s>>8^a[(e^n[s])&255];return e^-1}gh.exports=T0});var eo=kl((Jv,yh)=>{"use strict";yh.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var Sh=kl(an=>{"use strict";var Kl=dn(),wr=mh(),vh=gs(),An=ys(),S0=eo(),Qn=0,$0=1,I0=3,Dn=4,kh=5,rn=0,bh=1,xr=-2,R0=-3,vs=-5,A0=-1,D0=1,to=2,M0=3,F0=4,E0=0,N0=2,lo=8,P0=9,L0=15,z0=8,O0=29,B0=256,ks=B0+1+O0,H0=30,V0=19,q0=2*ks+1,j0=15,Ut=3,Mn=258,Pr=Mn+Ut+1,U0=32,ro=42,bs=69,no=73,ao=91,io=103,ea=113,pi=666,Il=1,gi=2,ta=3,Ia=4,G0=3;function Fn(e,n){return e.msg=S0[n],n}function wh(e){return(e<<1)-(e>4?9:0)}function En(e){for(var n=e.length;--n>=0;)e[n]=0}function Nn(e){var n=e.state,t=n.pending;t>e.avail_out&&(t=e.avail_out),t!==0&&(Kl.arraySet(e.output,n.pending_buf,n.pending_out,t,e.next_out),e.next_out+=t,n.pending_out+=t,e.total_out+=t,e.avail_out-=t,n.pending-=t,n.pending===0&&(n.pending_out=0))}function Pl(e,n){wr._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,n),e.block_start=e.strstart,Nn(e.strm)}function Yt(e,n){e.pending_buf[e.pending++]=n}function yi(e,n){e.pending_buf[e.pending++]=n>>>8&255,e.pending_buf[e.pending++]=n&255}function W0(e,n,t,l){var a=e.avail_in;return a>l&&(a=l),a===0?0:(e.avail_in-=a,Kl.arraySet(n,e.input,e.next_in,a,t),e.state.wrap===1?e.adler=vh(e.adler,n,a,t):e.state.wrap===2&&(e.adler=An(e.adler,n,a,t)),e.next_in+=a,e.total_in+=a,a)}function xh(e,n){var t=e.max_chain_length,l=e.strstart,a,o,s=e.prev_length,u=e.nice_match,f=e.strstart>e.w_size-Pr?e.strstart-(e.w_size-Pr):0,d=e.window,m=e.w_mask,g=e.prev,y=e.strstart+Mn,v=d[l+s-1],k=d[l+s];e.prev_length>=e.good_match&&(t>>=2),u>e.lookahead&&(u=e.lookahead);do if(a=n,!(d[a+s]!==k||d[a+s-1]!==v||d[a]!==d[l]||d[++a]!==d[l+1])){l+=2,a++;do;while(d[++l]===d[++a]&&d[++l]===d[++a]&&d[++l]===d[++a]&&d[++l]===d[++a]&&d[++l]===d[++a]&&d[++l]===d[++a]&&d[++l]===d[++a]&&d[++l]===d[++a]&&ls){if(e.match_start=n,s=o,o>=u)break;v=d[l+s-1],k=d[l+s]}}while((n=g[n&m])>f&&--t!=0);return s<=e.lookahead?s:e.lookahead}function la(e){var n=e.w_size,t,l,a,o,s;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=n+(n-Pr)){Kl.arraySet(e.window,e.window,n,n,0),e.match_start-=n,e.strstart-=n,e.block_start-=n,l=e.hash_size,t=l;do a=e.head[--t],e.head[t]=a>=n?a-n:0;while(--l);l=n,t=l;do a=e.prev[--t],e.prev[t]=a>=n?a-n:0;while(--l);o+=n}if(e.strm.avail_in===0)break;if(l=W0(e.strm,e.window,e.strstart+e.lookahead,o),e.lookahead+=l,e.lookahead+e.insert>=Ut)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<e.pending_buf_size-5&&(t=e.pending_buf_size-5);;){if(e.lookahead<=1){if(la(e),e.lookahead===0&&n===Qn)return Il;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var l=e.block_start+t;if((e.strstart===0||e.strstart>=l)&&(e.lookahead=e.strstart-l,e.strstart=l,Pl(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-Pr&&(Pl(e,!1),e.strm.avail_out===0))return Il}return e.insert=0,n===Dn?(Pl(e,!0),e.strm.avail_out===0?ta:Ia):(e.strstart>e.block_start&&(Pl(e,!1),e.strm.avail_out===0),Il)}function ws(e,n){for(var t,l;;){if(e.lookahead=Ut&&(e.ins_h=(e.ins_h<=Ut)if(l=wr._tr_tally(e,e.strstart-e.match_start,e.match_length-Ut),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=Ut){e.match_length--;do e.strstart++,e.ins_h=(e.ins_h<=Ut&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=Ut-1)),e.prev_length>=Ut&&e.match_length<=e.prev_length){a=e.strstart+e.lookahead-Ut,l=wr._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-Ut),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=a&&(e.ins_h=(e.ins_h<=Ut&&e.strstart>0&&(a=e.strstart-1,l=s[a],l===s[++a]&&l===s[++a]&&l===s[++a])){o=e.strstart+Mn;do;while(l===s[++a]&&l===s[++a]&&l===s[++a]&&l===s[++a]&&l===s[++a]&&l===s[++a]&&l===s[++a]&&l===s[++a]&&ae.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=Ut?(t=wr._tr_tally(e,1,e.match_length-Ut),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(t=wr._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),t&&(Pl(e,!1),e.strm.avail_out===0))return Il}return e.insert=0,n===Dn?(Pl(e,!0),e.strm.avail_out===0?ta:Ia):e.last_lit&&(Pl(e,!1),e.strm.avail_out===0)?Il:gi}function K0(e,n){for(var t;;){if(e.lookahead===0&&(la(e),e.lookahead===0)){if(n===Qn)return Il;break}if(e.match_length=0,t=wr._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,t&&(Pl(e,!1),e.strm.avail_out===0))return Il}return e.insert=0,n===Dn?(Pl(e,!0),e.strm.avail_out===0?ta:Ia):e.last_lit&&(Pl(e,!1),e.strm.avail_out===0)?Il:gi}function nn(e,n,t,l,a){this.good_length=e,this.max_lazy=n,this.nice_length=t,this.max_chain=l,this.func=a}var Aa;Aa=[new nn(0,0,0,0,Y0),new nn(4,4,8,4,ws),new nn(4,5,16,8,ws),new nn(4,6,32,32,ws),new nn(4,4,16,16,Ra),new nn(8,16,32,32,Ra),new nn(8,16,128,128,Ra),new nn(8,32,128,256,Ra),new nn(32,128,258,1024,Ra),new nn(32,258,258,4096,Ra)];function Z0(e){e.window_size=2*e.w_size,En(e.head),e.max_lazy_match=Aa[e.level].max_lazy,e.good_match=Aa[e.level].good_length,e.nice_match=Aa[e.level].nice_length,e.max_chain_length=Aa[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=Ut-1,e.match_available=0,e.ins_h=0}function J0(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=lo,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Kl.Buf16(q0*2),this.dyn_dtree=new Kl.Buf16((2*H0+1)*2),this.bl_tree=new Kl.Buf16((2*V0+1)*2),En(this.dyn_ltree),En(this.dyn_dtree),En(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Kl.Buf16(j0+1),this.heap=new Kl.Buf16(2*ks+1),En(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Kl.Buf16(2*ks+1),En(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function _h(e){var n;return!e||!e.state?Fn(e,xr):(e.total_in=e.total_out=0,e.data_type=N0,n=e.state,n.pending=0,n.pending_out=0,n.wrap<0&&(n.wrap=-n.wrap),n.status=n.wrap?ro:ea,e.adler=n.wrap===2?0:1,n.last_flush=Qn,wr._tr_init(n),rn)}function Ch(e){var n=_h(e);return n===rn&&Z0(e.state),n}function Q0(e,n){return!e||!e.state||e.state.wrap!==2?xr:(e.state.gzhead=n,rn)}function Th(e,n,t,l,a,o){if(!e)return xr;var s=1;if(n===A0&&(n=6),l<0?(s=0,l=-l):l>15&&(s=2,l-=16),a<1||a>P0||t!==lo||l<8||l>15||n<0||n>9||o<0||o>F0)return Fn(e,xr);l===8&&(l=9);var u=new J0;return e.state=u,u.strm=e,u.wrap=s,u.gzhead=null,u.w_bits=l,u.w_size=1<kh||n<0)return e?Fn(e,xr):xr;if(l=e.state,!e.output||!e.input&&e.avail_in!==0||l.status===pi&&n!==Dn)return Fn(e,e.avail_out===0?vs:xr);if(l.strm=e,t=l.last_flush,l.last_flush=n,l.status===ro)if(l.wrap===2)e.adler=0,Yt(l,31),Yt(l,139),Yt(l,8),l.gzhead?(Yt(l,(l.gzhead.text?1:0)+(l.gzhead.hcrc?2:0)+(l.gzhead.extra?4:0)+(l.gzhead.name?8:0)+(l.gzhead.comment?16:0)),Yt(l,l.gzhead.time&255),Yt(l,l.gzhead.time>>8&255),Yt(l,l.gzhead.time>>16&255),Yt(l,l.gzhead.time>>24&255),Yt(l,l.level===9?2:l.strategy>=to||l.level<2?4:0),Yt(l,l.gzhead.os&255),l.gzhead.extra&&l.gzhead.extra.length&&(Yt(l,l.gzhead.extra.length&255),Yt(l,l.gzhead.extra.length>>8&255)),l.gzhead.hcrc&&(e.adler=An(e.adler,l.pending_buf,l.pending,0)),l.gzindex=0,l.status=bs):(Yt(l,0),Yt(l,0),Yt(l,0),Yt(l,0),Yt(l,0),Yt(l,l.level===9?2:l.strategy>=to||l.level<2?4:0),Yt(l,G0),l.status=ea);else{var s=lo+(l.w_bits-8<<4)<<8,u=-1;l.strategy>=to||l.level<2?u=0:l.level<6?u=1:l.level===6?u=2:u=3,s|=u<<6,l.strstart!==0&&(s|=U0),s+=31-s%31,l.status=ea,yi(l,s),l.strstart!==0&&(yi(l,e.adler>>>16),yi(l,e.adler&65535)),e.adler=1}if(l.status===bs)if(l.gzhead.extra){for(a=l.pending;l.gzindex<(l.gzhead.extra.length&65535)&&!(l.pending===l.pending_buf_size&&(l.gzhead.hcrc&&l.pending>a&&(e.adler=An(e.adler,l.pending_buf,l.pending-a,a)),Nn(e),a=l.pending,l.pending===l.pending_buf_size));)Yt(l,l.gzhead.extra[l.gzindex]&255),l.gzindex++;l.gzhead.hcrc&&l.pending>a&&(e.adler=An(e.adler,l.pending_buf,l.pending-a,a)),l.gzindex===l.gzhead.extra.length&&(l.gzindex=0,l.status=no)}else l.status=no;if(l.status===no)if(l.gzhead.name){a=l.pending;do{if(l.pending===l.pending_buf_size&&(l.gzhead.hcrc&&l.pending>a&&(e.adler=An(e.adler,l.pending_buf,l.pending-a,a)),Nn(e),a=l.pending,l.pending===l.pending_buf_size)){o=1;break}l.gzindexa&&(e.adler=An(e.adler,l.pending_buf,l.pending-a,a)),o===0&&(l.gzindex=0,l.status=ao)}else l.status=ao;if(l.status===ao)if(l.gzhead.comment){a=l.pending;do{if(l.pending===l.pending_buf_size&&(l.gzhead.hcrc&&l.pending>a&&(e.adler=An(e.adler,l.pending_buf,l.pending-a,a)),Nn(e),a=l.pending,l.pending===l.pending_buf_size)){o=1;break}l.gzindexa&&(e.adler=An(e.adler,l.pending_buf,l.pending-a,a)),o===0&&(l.status=io)}else l.status=io;if(l.status===io&&(l.gzhead.hcrc?(l.pending+2>l.pending_buf_size&&Nn(e),l.pending+2<=l.pending_buf_size&&(Yt(l,e.adler&255),Yt(l,e.adler>>8&255),e.adler=0,l.status=ea)):l.status=ea),l.pending!==0){if(Nn(e),e.avail_out===0)return l.last_flush=-1,rn}else if(e.avail_in===0&&wh(n)<=wh(t)&&n!==Dn)return Fn(e,vs);if(l.status===pi&&e.avail_in!==0)return Fn(e,vs);if(e.avail_in!==0||l.lookahead!==0||n!==Qn&&l.status!==pi){var f=l.strategy===to?K0(l,n):l.strategy===M0?X0(l,n):Aa[l.level].func(l,n);if((f===ta||f===Ia)&&(l.status=pi),f===Il||f===ta)return e.avail_out===0&&(l.last_flush=-1),rn;if(f===gi&&(n===$0?wr._tr_align(l):n!==kh&&(wr._tr_stored_block(l,0,0,!1),n===I0&&(En(l.head),l.lookahead===0&&(l.strstart=0,l.block_start=0,l.insert=0))),Nn(e),e.avail_out===0))return l.last_flush=-1,rn}return n!==Dn?rn:l.wrap<=0?bh:(l.wrap===2?(Yt(l,e.adler&255),Yt(l,e.adler>>8&255),Yt(l,e.adler>>16&255),Yt(l,e.adler>>24&255),Yt(l,e.total_in&255),Yt(l,e.total_in>>8&255),Yt(l,e.total_in>>16&255),Yt(l,e.total_in>>24&255)):(yi(l,e.adler>>>16),yi(l,e.adler&65535)),Nn(e),l.wrap>0&&(l.wrap=-l.wrap),l.pending!==0?rn:bh)}function lp(e){var n;return!e||!e.state?xr:(n=e.state.status,n!==ro&&n!==bs&&n!==no&&n!==ao&&n!==io&&n!==ea&&n!==pi?Fn(e,xr):(e.state=null,n===ea?Fn(e,R0):rn))}function rp(e,n){var t=n.length,l,a,o,s,u,f,d,m;if(!e||!e.state||(l=e.state,s=l.wrap,s===2||s===1&&l.status!==ro||l.lookahead))return xr;for(s===1&&(e.adler=vh(e.adler,n,t,0)),l.wrap=0,t>=l.w_size&&(s===0&&(En(l.head),l.strstart=0,l.block_start=0,l.insert=0),m=new Kl.Buf8(l.w_size),Kl.arraySet(m,n,t-l.w_size,l.w_size,0),n=m,t=l.w_size),u=e.avail_in,f=e.next_in,d=e.input,e.avail_in=t,e.next_in=0,e.input=n,la(l);l.lookahead>=Ut;){a=l.strstart,o=l.lookahead-(Ut-1);do l.ins_h=(l.ins_h<{"use strict";var oo=dn(),$h=!0,Ih=!0;try{String.fromCharCode.apply(null,[0])}catch(e){$h=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){Ih=!1}var vi=new oo.Buf8(256);for(var Pn=0;Pn<256;Pn++)vi[Pn]=Pn>=252?6:Pn>=248?5:Pn>=240?4:Pn>=224?3:Pn>=192?2:1;vi[254]=vi[254]=1;Da.string2buf=function(e){var n,t,l,a,o,s=e.length,u=0;for(a=0;a>>6,n[o++]=128|t&63):t<65536?(n[o++]=224|t>>>12,n[o++]=128|t>>>6&63,n[o++]=128|t&63):(n[o++]=240|t>>>18,n[o++]=128|t>>>12&63,n[o++]=128|t>>>6&63,n[o++]=128|t&63);return n};function Rh(e,n){if(n<65534&&(e.subarray&&Ih||!e.subarray&&$h))return String.fromCharCode.apply(null,oo.shrinkBuf(e,n));for(var t="",l=0;l4){u[l++]=65533,t+=o-1;continue}for(a&=o===2?31:o===3?15:7;o>1&&t1){u[l++]=65533;continue}a<65536?u[l++]=a:(a-=65536,u[l++]=55296|a>>10&1023,u[l++]=56320|a&1023)}return Rh(u,l)};Da.utf8border=function(e,n){var t;for(n=n||e.length,n>e.length&&(n=e.length),t=n-1;t>=0&&(e[t]&192)==128;)t--;return t<0||t===0?n:t+vi[e[t]]>n?t:n}});var _s=kl((t5,Ah)=>{"use strict";function np(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}Ah.exports=np});var Eh=kl(wi=>{"use strict";var ki=Sh(),bi=dn(),Cs=xs(),Ts=eo(),ap=_s(),Dh=Object.prototype.toString,ip=0,Ss=4,Ma=0,Mh=1,Fh=2,op=-1,sp=0,cp=8;function ra(e){if(!(this instanceof ra))return new ra(e);this.options=bi.assign({level:op,method:cp,chunkSize:16384,windowBits:15,memLevel:8,strategy:sp,to:""},e||{});var n=this.options;n.raw&&n.windowBits>0?n.windowBits=-n.windowBits:n.gzip&&n.windowBits>0&&n.windowBits<16&&(n.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ap,this.strm.avail_out=0;var t=ki.deflateInit2(this.strm,n.level,n.method,n.windowBits,n.memLevel,n.strategy);if(t!==Ma)throw new Error(Ts[t]);if(n.header&&ki.deflateSetHeader(this.strm,n.header),n.dictionary){var l;if(typeof n.dictionary=="string"?l=Cs.string2buf(n.dictionary):Dh.call(n.dictionary)==="[object ArrayBuffer]"?l=new Uint8Array(n.dictionary):l=n.dictionary,t=ki.deflateSetDictionary(this.strm,l),t!==Ma)throw new Error(Ts[t]);this._dict_set=!0}}ra.prototype.push=function(e,n){var t=this.strm,l=this.options.chunkSize,a,o;if(this.ended)return!1;o=n===~~n?n:n===!0?Ss:ip,typeof e=="string"?t.input=Cs.string2buf(e):Dh.call(e)==="[object ArrayBuffer]"?t.input=new Uint8Array(e):t.input=e,t.next_in=0,t.avail_in=t.input.length;do{if(t.avail_out===0&&(t.output=new bi.Buf8(l),t.next_out=0,t.avail_out=l),a=ki.deflate(t,o),a!==Mh&&a!==Ma)return this.onEnd(a),this.ended=!0,!1;(t.avail_out===0||t.avail_in===0&&(o===Ss||o===Fh))&&(this.options.to==="string"?this.onData(Cs.buf2binstring(bi.shrinkBuf(t.output,t.next_out))):this.onData(bi.shrinkBuf(t.output,t.next_out)))}while((t.avail_in>0||t.avail_out===0)&&a!==Mh);return o===Ss?(a=ki.deflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===Ma):(o===Fh&&(this.onEnd(Ma),t.avail_out=0),!0)};ra.prototype.onData=function(e){this.chunks.push(e)};ra.prototype.onEnd=function(e){e===Ma&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=bi.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function $s(e,n){var t=new ra(n);if(t.push(e,!0),t.err)throw t.msg||Ts[t.err];return t.result}function up(e,n){return n=n||{},n.raw=!0,$s(e,n)}function hp(e,n){return n=n||{},n.gzip=!0,$s(e,n)}wi.Deflate=ra;wi.deflate=$s;wi.deflateRaw=up;wi.gzip=hp});var Ph=kl((r5,Nh)=>{"use strict";var so=30,fp=12;Nh.exports=function(n,t){var l,a,o,s,u,f,d,m,g,y,v,k,b,w,x,C,S,_,T,A,R,I,N,L,M;l=n.state,a=n.next_in,L=n.input,o=a+(n.avail_in-5),s=n.next_out,M=n.output,u=s-(t-n.avail_out),f=s+(n.avail_out-257),d=l.dmax,m=l.wsize,g=l.whave,y=l.wnext,v=l.window,k=l.hold,b=l.bits,w=l.lencode,x=l.distcode,C=(1<>>24,k>>>=T,b-=T,T=_>>>16&255,T===0)M[s++]=_&65535;else if(T&16){A=_&65535,T&=15,T&&(b>>=T,b-=T),b<15&&(k+=L[a++]<>>24,k>>>=T,b-=T,T=_>>>16&255,T&16){if(R=_&65535,T&=15,bd){n.msg="invalid distance too far back",l.mode=so;break e}if(k>>>=T,b-=T,T=s-u,R>T){if(T=R-T,T>g&&l.sane){n.msg="invalid distance too far back",l.mode=so;break e}if(I=0,N=v,y===0){if(I+=m-T,T2;)M[s++]=N[I++],M[s++]=N[I++],M[s++]=N[I++],A-=3;A&&(M[s++]=N[I++],A>1&&(M[s++]=N[I++]))}else{I=s-R;do M[s++]=M[I++],M[s++]=M[I++],M[s++]=M[I++],A-=3;while(A>2);A&&(M[s++]=M[I++],A>1&&(M[s++]=M[I++]))}}else if((T&64)==0){_=x[(_&65535)+(k&(1<>3,a-=A,b-=A<<3,k&=(1<{"use strict";var Lh=dn(),Fa=15,zh=852,Oh=592,Bh=0,Is=1,Hh=2,dp=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],mp=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],pp=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],gp=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];Vh.exports=function(n,t,l,a,o,s,u,f){var d=f.bits,m=0,g=0,y=0,v=0,k=0,b=0,w=0,x=0,C=0,S=0,_,T,A,R,I,N=null,L=0,M,F=new Lh.Buf16(Fa+1),E=new Lh.Buf16(Fa+1),z=null,O=0,V,q,W;for(m=0;m<=Fa;m++)F[m]=0;for(g=0;g=1&&F[v]===0;v--);if(k>v&&(k=v),v===0)return o[s++]=1<<24|64<<16|0,o[s++]=1<<24|64<<16|0,f.bits=1,0;for(y=1;y0&&(n===Bh||v!==1))return-1;for(E[1]=0,m=1;mzh||n===Hh&&C>Oh)return 1;for(;;){V=m-w,u[g]M?(q=z[O+u[g]],W=N[L+u[g]]):(q=32+64,W=0),_=1<>w)+T]=V<<24|q<<16|W|0;while(T!==0);for(_=1<>=1;if(_!==0?(S&=_-1,S+=_):S=0,g++,--F[m]==0){if(m===v)break;m=t[l+u[g]]}if(m>k&&(S&R)!==A){for(w===0&&(w=k),I+=y,b=m-w,x=1<zh||n===Hh&&C>Oh)return 1;A=S&R,o[A]=k<<24|b<<16|I-s|0}}return S!==0&&(o[I+S]=m-w<<24|64<<16|0),f.bits=k,0}});var Tf=kl(Lr=>{"use strict";var mr=dn(),Rs=gs(),on=ys(),yp=Ph(),xi=qh(),vp=0,jh=1,Uh=2,Gh=4,kp=5,co=6,na=0,bp=1,wp=2,_r=-2,Wh=-3,As=-4,xp=-5,Yh=8,Xh=1,Kh=2,Zh=3,Jh=4,Qh=5,ef=6,tf=7,lf=8,rf=9,nf=10,uo=11,pn=12,Ds=13,af=14,Ms=15,of=16,sf=17,cf=18,uf=19,ho=20,fo=21,hf=22,ff=23,df=24,mf=25,pf=26,Fs=27,gf=28,yf=29,dl=30,Es=31,_p=32,Cp=852,Tp=592,Sp=15,$p=Sp;function vf(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function Ip(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new mr.Buf16(320),this.work=new mr.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function kf(e){var n;return!e||!e.state?_r:(n=e.state,e.total_in=e.total_out=n.total=0,e.msg="",n.wrap&&(e.adler=n.wrap&1),n.mode=Xh,n.last=0,n.havedict=0,n.dmax=32768,n.head=null,n.hold=0,n.bits=0,n.lencode=n.lendyn=new mr.Buf32(Cp),n.distcode=n.distdyn=new mr.Buf32(Tp),n.sane=1,n.back=-1,na)}function bf(e){var n;return!e||!e.state?_r:(n=e.state,n.wsize=0,n.whave=0,n.wnext=0,kf(e))}function wf(e,n){var t,l;return!e||!e.state||(l=e.state,n<0?(t=0,n=-n):(t=(n>>4)+1,n<48&&(n&=15)),n&&(n<8||n>15))?_r:(l.window!==null&&l.wbits!==n&&(l.window=null),l.wrap=t,l.wbits=n,bf(e))}function xf(e,n){var t,l;return e?(l=new Ip,e.state=l,l.window=null,t=wf(e,n),t!==na&&(e.state=null),t):_r}function Rp(e){return xf(e,$p)}var _f=!0,Ns,Ps;function Ap(e){if(_f){var n;for(Ns=new mr.Buf32(512),Ps=new mr.Buf32(32),n=0;n<144;)e.lens[n++]=8;for(;n<256;)e.lens[n++]=9;for(;n<280;)e.lens[n++]=7;for(;n<288;)e.lens[n++]=8;for(xi(jh,e.lens,0,288,Ns,0,e.work,{bits:9}),n=0;n<32;)e.lens[n++]=5;xi(Uh,e.lens,0,32,Ps,0,e.work,{bits:5}),_f=!1}e.lencode=Ns,e.lenbits=9,e.distcode=Ps,e.distbits=5}function Cf(e,n,t,l){var a,o=e.state;return o.window===null&&(o.wsize=1<=o.wsize?(mr.arraySet(o.window,n,t-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(a=o.wsize-o.wnext,a>l&&(a=l),mr.arraySet(o.window,n,t-l,a,o.wnext),l-=a,l?(mr.arraySet(o.window,n,t-l,l,0),o.wnext=l,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,t.check=on(t.check,N,2,0),d=0,m=0,t.mode=Kh;break}if(t.flags=0,t.head&&(t.head.done=!1),!(t.wrap&1)||(((d&255)<<8)+(d>>8))%31){e.msg="incorrect header check",t.mode=dl;break}if((d&15)!==Yh){e.msg="unknown compression method",t.mode=dl;break}if(d>>>=4,m-=4,R=(d&15)+8,t.wbits===0)t.wbits=R;else if(R>t.wbits){e.msg="invalid window size",t.mode=dl;break}t.dmax=1<>8&1),t.flags&512&&(N[0]=d&255,N[1]=d>>>8&255,t.check=on(t.check,N,2,0)),d=0,m=0,t.mode=Zh;case Zh:for(;m<32;){if(u===0)break e;u--,d+=l[o++]<>>8&255,N[2]=d>>>16&255,N[3]=d>>>24&255,t.check=on(t.check,N,4,0)),d=0,m=0,t.mode=Jh;case Jh:for(;m<16;){if(u===0)break e;u--,d+=l[o++]<>8),t.flags&512&&(N[0]=d&255,N[1]=d>>>8&255,t.check=on(t.check,N,2,0)),d=0,m=0,t.mode=Qh;case Qh:if(t.flags&1024){for(;m<16;){if(u===0)break e;u--,d+=l[o++]<>>8&255,t.check=on(t.check,N,2,0)),d=0,m=0}else t.head&&(t.head.extra=null);t.mode=ef;case ef:if(t.flags&1024&&(v=t.length,v>u&&(v=u),v&&(t.head&&(R=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Array(t.head.extra_len)),mr.arraySet(t.head.extra,l,o,v,R)),t.flags&512&&(t.check=on(t.check,l,v,o)),u-=v,o+=v,t.length-=v),t.length))break e;t.length=0,t.mode=tf;case tf:if(t.flags&2048){if(u===0)break e;v=0;do R=l[o+v++],t.head&&R&&t.length<65536&&(t.head.name+=String.fromCharCode(R));while(R&&v>9&1,t.head.done=!0),e.adler=t.check=0,t.mode=pn;break;case nf:for(;m<32;){if(u===0)break e;u--,d+=l[o++]<>>=m&7,m-=m&7,t.mode=Fs;break}for(;m<3;){if(u===0)break e;u--,d+=l[o++]<>>=1,m-=1,d&3){case 0:t.mode=af;break;case 1:if(Ap(t),t.mode=ho,n===co){d>>>=2,m-=2;break e}break;case 2:t.mode=sf;break;case 3:e.msg="invalid block type",t.mode=dl}d>>>=2,m-=2;break;case af:for(d>>>=m&7,m-=m&7;m<32;){if(u===0)break e;u--,d+=l[o++]<>>16^65535)){e.msg="invalid stored block lengths",t.mode=dl;break}if(t.length=d&65535,d=0,m=0,t.mode=Ms,n===co)break e;case Ms:t.mode=of;case of:if(v=t.length,v){if(v>u&&(v=u),v>f&&(v=f),v===0)break e;mr.arraySet(a,l,o,v,s),u-=v,o+=v,f-=v,s+=v,t.length-=v;break}t.mode=pn;break;case sf:for(;m<14;){if(u===0)break e;u--,d+=l[o++]<>>=5,m-=5,t.ndist=(d&31)+1,d>>>=5,m-=5,t.ncode=(d&15)+4,d>>>=4,m-=4,t.nlen>286||t.ndist>30){e.msg="too many length or distance symbols",t.mode=dl;break}t.have=0,t.mode=cf;case cf:for(;t.have>>=3,m-=3}for(;t.have<19;)t.lens[F[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,L={bits:t.lenbits},I=xi(vp,t.lens,0,19,t.lencode,0,t.work,L),t.lenbits=L.bits,I){e.msg="invalid code lengths set",t.mode=dl;break}t.have=0,t.mode=uf;case uf:for(;t.have>>24,C=w>>>16&255,S=w&65535,!(x<=m);){if(u===0)break e;u--,d+=l[o++]<>>=x,m-=x,t.lens[t.have++]=S;else{if(S===16){for(M=x+2;m>>=x,m-=x,t.have===0){e.msg="invalid bit length repeat",t.mode=dl;break}R=t.lens[t.have-1],v=3+(d&3),d>>>=2,m-=2}else if(S===17){for(M=x+3;m>>=x,m-=x,R=0,v=3+(d&7),d>>>=3,m-=3}else{for(M=x+7;m>>=x,m-=x,R=0,v=11+(d&127),d>>>=7,m-=7}if(t.have+v>t.nlen+t.ndist){e.msg="invalid bit length repeat",t.mode=dl;break}for(;v--;)t.lens[t.have++]=R}}if(t.mode===dl)break;if(t.lens[256]===0){e.msg="invalid code -- missing end-of-block",t.mode=dl;break}if(t.lenbits=9,L={bits:t.lenbits},I=xi(jh,t.lens,0,t.nlen,t.lencode,0,t.work,L),t.lenbits=L.bits,I){e.msg="invalid literal/lengths set",t.mode=dl;break}if(t.distbits=6,t.distcode=t.distdyn,L={bits:t.distbits},I=xi(Uh,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,L),t.distbits=L.bits,I){e.msg="invalid distances set",t.mode=dl;break}if(t.mode=ho,n===co)break e;case ho:t.mode=fo;case fo:if(u>=6&&f>=258){e.next_out=s,e.avail_out=f,e.next_in=o,e.avail_in=u,t.hold=d,t.bits=m,yp(e,y),s=e.next_out,a=e.output,f=e.avail_out,o=e.next_in,l=e.input,u=e.avail_in,d=t.hold,m=t.bits,t.mode===pn&&(t.back=-1);break}for(t.back=0;w=t.lencode[d&(1<>>24,C=w>>>16&255,S=w&65535,!(x<=m);){if(u===0)break e;u--,d+=l[o++]<>_)],x=w>>>24,C=w>>>16&255,S=w&65535,!(_+x<=m);){if(u===0)break e;u--,d+=l[o++]<>>=_,m-=_,t.back+=_}if(d>>>=x,m-=x,t.back+=x,t.length=S,C===0){t.mode=pf;break}if(C&32){t.back=-1,t.mode=pn;break}if(C&64){e.msg="invalid literal/length code",t.mode=dl;break}t.extra=C&15,t.mode=hf;case hf:if(t.extra){for(M=t.extra;m>>=t.extra,m-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=ff;case ff:for(;w=t.distcode[d&(1<>>24,C=w>>>16&255,S=w&65535,!(x<=m);){if(u===0)break e;u--,d+=l[o++]<>_)],x=w>>>24,C=w>>>16&255,S=w&65535,!(_+x<=m);){if(u===0)break e;u--,d+=l[o++]<>>=_,m-=_,t.back+=_}if(d>>>=x,m-=x,t.back+=x,C&64){e.msg="invalid distance code",t.mode=dl;break}t.offset=S,t.extra=C&15,t.mode=df;case df:if(t.extra){for(M=t.extra;m>>=t.extra,m-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){e.msg="invalid distance too far back",t.mode=dl;break}t.mode=mf;case mf:if(f===0)break e;if(v=y-f,t.offset>v){if(v=t.offset-v,v>t.whave&&t.sane){e.msg="invalid distance too far back",t.mode=dl;break}v>t.wnext?(v-=t.wnext,k=t.wsize-v):k=t.wnext-v,v>t.length&&(v=t.length),b=t.window}else b=a,k=s-t.offset,v=t.length;v>f&&(v=f),f-=v,t.length-=v;do a[s++]=b[k++];while(--v);t.length===0&&(t.mode=fo);break;case pf:if(f===0)break e;a[s++]=t.length,f--,t.mode=fo;break;case Fs:if(t.wrap){for(;m<32;){if(u===0)break e;u--,d|=l[o++]<{"use strict";Sf.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var If=kl((o5,$f)=>{"use strict";function Np(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}$f.exports=Np});var Af=kl(Ci=>{"use strict";var Ea=Tf(),_i=dn(),mo=xs(),bl=Ls(),zs=eo(),Pp=_s(),Lp=If(),Rf=Object.prototype.toString;function aa(e){if(!(this instanceof aa))return new aa(e);this.options=_i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var n=this.options;n.raw&&n.windowBits>=0&&n.windowBits<16&&(n.windowBits=-n.windowBits,n.windowBits===0&&(n.windowBits=-15)),n.windowBits>=0&&n.windowBits<16&&!(e&&e.windowBits)&&(n.windowBits+=32),n.windowBits>15&&n.windowBits<48&&(n.windowBits&15)==0&&(n.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Pp,this.strm.avail_out=0;var t=Ea.inflateInit2(this.strm,n.windowBits);if(t!==bl.Z_OK)throw new Error(zs[t]);if(this.header=new Lp,Ea.inflateGetHeader(this.strm,this.header),n.dictionary&&(typeof n.dictionary=="string"?n.dictionary=mo.string2buf(n.dictionary):Rf.call(n.dictionary)==="[object ArrayBuffer]"&&(n.dictionary=new Uint8Array(n.dictionary)),n.raw&&(t=Ea.inflateSetDictionary(this.strm,n.dictionary),t!==bl.Z_OK)))throw new Error(zs[t])}aa.prototype.push=function(e,n){var t=this.strm,l=this.options.chunkSize,a=this.options.dictionary,o,s,u,f,d,m=!1;if(this.ended)return!1;s=n===~~n?n:n===!0?bl.Z_FINISH:bl.Z_NO_FLUSH,typeof e=="string"?t.input=mo.binstring2buf(e):Rf.call(e)==="[object ArrayBuffer]"?t.input=new Uint8Array(e):t.input=e,t.next_in=0,t.avail_in=t.input.length;do{if(t.avail_out===0&&(t.output=new _i.Buf8(l),t.next_out=0,t.avail_out=l),o=Ea.inflate(t,bl.Z_NO_FLUSH),o===bl.Z_NEED_DICT&&a&&(o=Ea.inflateSetDictionary(this.strm,a)),o===bl.Z_BUF_ERROR&&m===!0&&(o=bl.Z_OK,m=!1),o!==bl.Z_STREAM_END&&o!==bl.Z_OK)return this.onEnd(o),this.ended=!0,!1;t.next_out&&(t.avail_out===0||o===bl.Z_STREAM_END||t.avail_in===0&&(s===bl.Z_FINISH||s===bl.Z_SYNC_FLUSH))&&(this.options.to==="string"?(u=mo.utf8border(t.output,t.next_out),f=t.next_out-u,d=mo.buf2string(t.output,u),t.next_out=f,t.avail_out=l-f,f&&_i.arraySet(t.output,t.output,u,f,0),this.onData(d)):this.onData(_i.shrinkBuf(t.output,t.next_out))),t.avail_in===0&&t.avail_out===0&&(m=!0)}while((t.avail_in>0||t.avail_out===0)&&o!==bl.Z_STREAM_END);return o===bl.Z_STREAM_END&&(s=bl.Z_FINISH),s===bl.Z_FINISH?(o=Ea.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,o===bl.Z_OK):(s===bl.Z_SYNC_FLUSH&&(this.onEnd(bl.Z_OK),t.avail_out=0),!0)};aa.prototype.onData=function(e){this.chunks.push(e)};aa.prototype.onEnd=function(e){e===bl.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=_i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function Os(e,n){var t=new aa(n);if(t.push(e,!0),t.err)throw t.msg||zs[t.err];return t.result}function zp(e,n){return n=n||{},n.raw=!0,Os(e,n)}Ci.Inflate=aa;Ci.inflate=Os;Ci.inflateRaw=zp;Ci.ungzip=Os});var Ff=kl((c5,Mf)=>{"use strict";var Op=dn().assign,Bp=Eh(),Hp=Af(),Vp=Ls(),Df={};Op(Df,Bp,Hp,Vp);Mf.exports=Df});function Na(e){$("#luckysheet-cell-loading").find("span").text(e).end().show()}function Ti(){$("#luckysheet-cell-loading").hide()}var Bs=$e(()=>{});var qp,we,Qt=$e(()=>{Ca();qt();Zt();Xt();Dt();Xe();qp={deepCopyFlowDataState:!1,deepCopyFlowDataCache:"",deepCopyFlowDataWorker:null,deepCopyFlowData:function(e){let n=this;return n.deepCopyFlowDataState?(n.deepCopyFlowDataWorker!=null&&n.deepCopyFlowDataWorker.terminate(),n.deepCopyFlowDataCache):(e==null&&(e=h.flowdata),$.extend(!0,[],e))},webWorkerFlowDataCache:function(e){let n=this;try{n.deepCopyFlowDataWorker!=null&&n.deepCopyFlowDataWorker.terminate();let t="data:text/javascript;chartset=US-ASCII,onmessage = function (e) { postMessage(e.data); };";n.deepCopyFlowDataState=!1;let l;if(dr.isIE()==1){let a="self.onmessage=function(e){postMessage(e.data);}";l=new Worker("./plugins/Worker-helper.js"),l.postMessage(a)}else l=new Worker(t);n.deepCopyFlowDataWorker=l,l.postMessage(e),l.onmessage=function(a){n.deepCopyFlowDataCache=a.data,n.deepCopyFlowDataState=!0}}catch(t){n.deepCopyFlowDataCache=$.extend(!0,[],e)}},controlHandler:function(e,n){let l=this.deepCopyFlowData(h.flowdata),a=n||h.luckysheet_select_save[h.luckysheet_select_save.length-1],o=a.row==null?0:a.row[0],s=a.column==null?0:a.column[0],u=e.length,f=e[0].length,d=o+u-l.length,m=s+f-l[0].length;(d>0||m>0)&&(l=Vt([].concat(l),d,m,!0));for(let g=0;g0||m>0?Rl(l[0].length,l.length,l,null,h.luckysheet_select_save,"datachangeAll"):Pa(l,h.luckysheet_select_save)},clearRangeByindex:function(e,n,t,l,a){let o=K(a),s=$.extend(!0,[],h.luckysheetfile[o].data);for(let u=e;u<=n;u++){let f=[].concat(s[u]);for(let d=t;d<=l;d++)p.delFunctionGroup(u,d),p.execFunctionGroup(u,d,""),f[d]=null;s[u]=f}if(a==h.currentSheetIndex){let u=n-e+1,f=l-t+1;u>5e3?Ke(s,[{row:[e,n],column:[t,l]}]):Pa(s,{row:[e,n],column:[t,l]})}else h.luckysheetfile[o].data=s},controlHandlerD:function(e){let t=this.deepCopyFlowData(h.flowdata),l=h.luckysheet_select_save[h.luckysheet_select_save.length-1],a=l.row[0],o=l.row[1],s=l.column[0],u=l.column[1],f=e.length,d=e[0].length,m=a+f-t.length,g=s+d-t[0].length;(m>0||g>0)&&(t=Vt([].concat(t),m,g,!0));for(let v=a;v<=o;v++)for(let k=s;k<=u;k++)t[v][k]=null;for(let v=0;v{ht();Dt();Xe()});function Cr(e){let n;if(document.createRange)if(e.innerHTML!=e.innerText||e.innerHTML=="")e.focus(),n=window.getSelection(),n.selectAllChildren(e),n.collapseToEnd();else{let t=e.innerText.length;n=document.createRange(),n.selectNodeContents(e),n.setStart(e.childNodes[0],t),n.collapse(!0);let l=window.getSelection();l.removeAllRanges(),l.addRange(n)}else document.selection&&(n=document.body.createTextRange(),n.moveToElementText(e),n.collapse(!1),n.select())}function Tr(e){e.target.classList&&(e.target.classList.contains("luckysheet-cols-rows-shift-left")||e.target.classList.contains("luckysheet-cols-rows-shift-right"))||!$(e.target).hasClass("luckysheet-mousedown-cancel")&&$(e.target).filter("[class*='sp-palette']").length==0&&$(e.target).filter("[class*='sp-thumb']").length==0&&$(e.target).filter("[class*='sp-']").length==0&&($("#luckysheet-rightclick-menu").hide(),$("#luckysheet-cols-h-hover").hide(),$("#luckysheet-cols-menu-btn").hide(),$("#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu, #luckysheet-user-menu").hide(),$("body > .luckysheet-filter-menu, body > .luckysheet-filter-submenu, body > .luckysheet-cols-menu").hide(),h.luckysheet_cols_menu_status=!1)}function Nf(e){if(window.getSelection){let n=document.createRange();n.selectNodeContents(e),n.startContainer&&go(n.startContainer)&&(window.getSelection().removeAllRanges(),window.getSelection().addRange(n))}else if(document.selection){let n=document.body.createTextRange();n.moveToElementText(e),n.select()}}function Pf(e){if(window.getSelection){let t=document.createRange();var n=e.firstChild;t.setStart(n,0),t.setEnd(n,n.length),t.startContainer&&go(t.startContainer)&&(window.getSelection().removeAllRanges(),window.getSelection().addRange(t))}else if(document.selection){let t=document.body.createTextRange();t.moveToElementText(e),t.select()}}function Lf(e,n){if(window.getSelection){let a=document.createRange();var t=e.firstChild,l=n.firstChild;a.setStart(t,0),a.setEnd(l,l.length),a.startContainer&&go(a.startContainer)&&(window.getSelection().removeAllRanges(),window.getSelection().addRange(a))}}function zf(e,n){if(window.getSelection){let l=document.createRange();var t=e.firstChild;n>t.length?n=t.length:n<0&&(n=0),l.setStart(t,n),l.collapse(!0),l.startContainer&&go(l.startContainer)&&(window.getSelection().removeAllRanges(),window.getSelection().addRange(l))}}function go(e){return e===document.body?!1:document.body.contains(e)}var gn=$e(()=>{Xe()});function xl(e){return e&&e.ct!=null&&e.ct.t=="inlineStr"&&e.ct.s!=null&&e.ct.s.length>0}function La(e){return e!=null&&e.t=="inlineStr"&&e.s!=null&&e.s.length>0}function Hf(e,n,t,l){var a=window.getSelection(),o;a.type=="None"?o=h.inlineStringEditRange:o=a.getRangeAt(0);let s=o.commonAncestorContainer,u;s.id=="luckysheet-rich-text-editor"?u=$(s):u=$(s).closest("#luckysheet-rich-text-editor");let f=$(s).closest("#luckysheet-functionbox-cell");if(u.length==0&&f.length==0&&h.inlineStringEditRange!=null&&(o=h.inlineStringEditRange,s=o.commonAncestorContainer,s.id=="luckysheet-rich-text-editor"?u=$(s):u=$(s).closest("#luckysheet-rich-text-editor"),f=$(s).closest("#luckysheet-functionbox-cell")),o.collapsed===!0)return;let d=o.endContainer,m=o.startContainer,g=o.endOffset,y=o.startOffset;if(u.length>0){if(m===d){let v=m.parentNode,k,b=!1,w=v.innerText;u.html().substr(0,5)!=""+C+""}if(S!=""){let M=yo(v.style.cssText,n,t);if(b){let F=$(v).closest("#luckysheet-input-box").get(0);F!=null&&(M=Vs(F.style.cssText,M))}N+=""+S+""}if(_!=""){let M=v.style.cssText;if(b){let F=$(v).closest("#luckysheet-input-box").get(0);F!=null&&(M=Vs(F.style.cssText,M))}N+=""+_+""}m.parentNode.tagName=="SPAN"?(k=u.find("span").index(v),$(v).replaceWith(N)):(k=0,$(v).html(N));let L=0;T==A?L=k:L=k+1,Pf(u.find("span").get(L))}else if(m.parentNode.tagName=="SPAN"&&d.parentNode.tagName=="SPAN"){let v=m.parentNode,k,b=d.parentNode,w;k=u.find("span").index(v),w=u.find("span").index(b);let x=v.innerHTML,C=b.innerHTML,S="",_="",T="",A="",R=0,I=y,N=g,L=C.length;S=x.substring(R,I),_=x.substring(I,x.length),T=C.substring(0,N),A=C.substring(N,L);let M=u.find("span"),F=M.slice(k,w+1),E="";for(let V=0;V"+W+""}if(S!=""&&(E+=""+S+""),_!=""){let V=yo(v.style.cssText,n,t);E+=""+_+""}if(k"+W+""}if(T!=""){let V=yo(b.style.cssText,n,t);E+=""+T+""}A!=""&&(E+=""+A+"");for(let V=w+1;V"+W+""}u.html(E);let z,O;R==I?(z=k,O=w):(z=k+1,O=w+1),M=u.find("span"),Lf(M.get(z),M.get(O))}}else f.length>0}function Vf(e){var n=window.getSelection();if(n.type=="None")return;var t=n.getRangeAt(0);let l=t.commonAncestorContainer,a;l.id=="luckysheet-rich-text-editor"?a=$(l):a=$(l).closest("#luckysheet-rich-text-editor");let o=$(l).closest("#luckysheet-functionbox-cell"),s=t.endContainer,u=t.startContainer,f=t.endOffset,d=t.startOffset;if(a.length>0){let m=u.parentNode;u.id=="luckysheet-rich-text-editor"&&(m=$(u).find("span"),m.length==0&&(u.innerHTML=`${u.innerText}`,m=$(u).find("span")),m=m.get(m.length-1),d=m.innerHTML.length),t.collapsed===!1&&t.deleteContents();let g=m.innerText,y="",v="",k=0,b=d;y=g.substring(k,b),v=g.substring(b,g.length);let w,x;if(u.parentNode.tagName=="SPAN"){let C=a.find("span");if(w=C.index(m),w==C.length-1&&v==""){let S=C[w].innerHTML;S.substr(S.length-1,1)==` +`?x=""+y+` +`:x=""+y+` + +`}else x=""+y+` +`+v+"";$(m).replaceWith(x)}else{let C=m.style.cssText;if(v==""?x=""+y+` + +`:x=""+y+` +`+v+"",u.id=="luckysheet-rich-text-editor"){$(m).replaceWith(x);let S=a.find("span");w=S.length-1,d=S.get(w).innerHTML.length-1}else $(m).html(x),w=0}zf(a.find("span").get(w),d+1)}else o.length>0}function qf(e,n,t){if(e.ct==null)return;let l=e.ct.s;if(l!=null)for(let a=0;a{s=s.toLowerCase();let u=Ll(s.substr(0,s.indexOf(":"))),f=Ll(s.substr(s.indexOf(":")+1));if(u=="font-weight"&&(f=="bold"?o.bl=1:o.bl=0),u=="font-style"&&(f=="italic"?o.it=1:o.it=0),u=="font-family"){let d=a[f];d==null?o.ff=f:o.ff=d}u=="font-size"&&(o.fs=parseInt(f)),u=="color"&&(o.fc=f),u=="text-decoration"&&(o.cl=1),u=="border-bottom"&&(o.un=1),u=="lucky-strike"&&(o.cl=f),u=="lucky-underline"&&(o.un=f)}),o}function Gf(e,n){let t=e.split(";");if(n==null||n.length==0)return e;if(e.indexOf(n)>-1)for(let l=0;l-1)for(let o=0;o0&&(a+=u+":"+f+";")}else n.length>0&&(e+=n+":"+t+";",a=e);return a}function Wp(e,n){let t=e.split(";"),l="",a=n;if(n==null||n.length==0)return e;if(n in Uf&&(n=Uf[n]),e.indexOf(n)>-1)for(let o=0;o0&&(l+=u+":"+f+";")}else l=e;return l}function yo(e,n,t){let l={};if(l[n]=t,n=="un"){let u=Gf(e,"color");u==""&&(u="#000000");let f=Gf(e,"font-size");f==""&&(f=11),f=parseInt(f),l._fontSize=f,l._color=u}let a=$i(l,void 0,void 0,!1),o=Ll(a.substr(0,a.indexOf(":"))),s=Ll(a.substr(a.indexOf(":")+1));return s=s.substr(0,s.length-1),e=Wp(e,n),e=Gp(e,o,s),e}function Vs(e,n,t=!0){let l=e.split(";"),a=n.split(";"),o="",s={};for(let u=0;u{Zt();gn();vt();Xe();Of={bl:1,it:1,ff:1,cl:1,un:1,fs:1,fc:1},Bf={"font-weight":1,"font-style":1,"font-family":1,"text-decoration":1,"border-bottom":1,"font-size":1,color:1};Uf={bl:"font-weight",it:"font-style",ff:"font-family",fs:"font-size",fc:"color",cl:"text-decoration",un:"border-bottom"}});function zt(e,n){if(e==null&&(e=h.luckysheet_select_save[0]),e.row==null||e.row.length==0)return[];let t,l;n!=null&&n!=h.currentSheetIndex?(t=h.luckysheetfile[K(n)].data,l=h.luckysheetfile[K(n)].config):(t=we.deepCopyFlowData(h.flowdata),l=h.config);let a=[];for(let o=e.row[0];o<=e.row[1];o++){if(t[o]==null||l.rowhidden!=null&&l.rowhidden[o]!=null)continue;let s=[];for(let u=e.column[0];u<=e.column[1];u++)s.push(t[o][u]);a.push(s)}return a}function ia(e,n){if(n==null||n.row==null||n.row.length==0)return[];let t=Si(h.luckysheetfile[K(h.currentSheetIndex)].dynamicArray),l=[];if(e==null)return l;for(let a=n.row[0];a<=n.row[1];a++){if(e[a]==null)continue;let o=[];for(let s=n.column[0];s<=n.column[1];s++){let u;a+"_"+s in t?u=t[a+"_"+s]:u=e[a][s],o.push(u)}l.push(o)}return l}function Wf(e){if(e==null||e.row==null||e.row.length==0)return[];let n=[];for(let t=e.row[0];t<=e.row[1];t++){let l=[];if(!(h.config.rowhidden!=null&&h.config.rowhidden[t]!=null)){for(let a=e.column[0];a<=e.column[1];a++){let o="";h.flowdata[t]!=null&&h.flowdata[t][a]!=null&&(o=h.flowdata[t][a]),l.push(o)}n.push(l)}}return n}function ze(e,n,t,l){l==null&&(l="v"),t==null&&(t=h.flowdata);let a;if(e!=null&&n!=null)a=t[e][n];else if(e!=null)a=t[e];else if(n!=null)a=t[0].map(function(u,f){return t.map(function(d){return d[f]})})[n];else return t;let o=a;return P(a)=="object"&&(o=a[l],l=="f"&&o!=null?o=p.functionHTMLGenerate(o):l=="f"&&(o=a.v)),o==null&&(o=null),o}function Vt(e,n,t,l){if(n<=0&&t<=0)return e;n<=0&&(n=0),t<=0&&(t=0);let a=0;e.length==0?(e=[],a=0):a=e[0].length;let o=[];for(let u=0;u"+f.v+""}}return s}return""}function $i(e,n,t,l=!0){if(e==null)return;let a="",s=Q().fontarray;for(let u in e){let f=e[u];if(l&&(f=Sr(e,u)),u=="bl"&&f!="0"&&(a+="font-weight: bold;"),u=="it"&&f!="0"&&(a+="font-style:italic;"),u=="ff"){let d=f;isNaN(parseInt(f))?d=f:d=s[parseInt(f)],a+="font-family: "+d+";"}u=="fs"&&(a+="font-size: "+f+"pt;"),(u=="fc"&&f!="#000000"||n!=null||t!=null&&t.textColor!=null)&&(t!=null&&t.textColor!=null?a+="color: "+t.textColor+";":n!=null?a+="color: "+n[0]+";":a+="color: "+f+";"),u=="cl"&&f!="0"&&(a+="text-decoration: line-through;")}return a}function Sr(e,n){let t=e;return n in{bl:1,it:1,ff:1,cl:1,un:1}||n=="fs"&&xl(e)?t==null?t="0":(t=t[n],t==null&&(t="0")):n=="fc"?t==null?t="#000000":(t=t[n],t==null&&(t="#000000"),t.indexOf("rgba")>-1&&(t=Ln(t))):n=="bg"?t==null?t=null:(t=t[n],t==null?t=null:t.toString().indexOf("rgba")>-1&&(t=Ln(t))):n.substr(0,2)=="bs"?t==null?t="none":(t=t[n],t==null&&(t="none")):n.substr(0,2)=="bc"?t==null?t="#000000":(t=t[n],t==null&&(t="#000000")):n=="ht"?(t==null?t="1":(t=t[n],t==null&&(t="1")),["0","1","2"].indexOf(t.toString())==-1&&(t="1")):n=="vt"?(t==null?t="0":(t=t[n],t==null&&(t="0")),["0","1","2"].indexOf(t.toString())==-1&&(t="0")):n=="ct"?t==null?t=null:(t=t[n],t==null&&(t=null)):n=="fs"?t==null?t=String(h.defaultFontSize):(t=t[n],t==null&&(t=String(h.defaultFontSize))):n=="tb"||n=="tr"?t==null?t="0":(t=t[n],t==null&&(t="0")):n=="rt"&&(t==null?t=null:(t=t[n],t==null&&(t=null))),t}function Ll(e){return e==null||e.length==0?e:e.replace(/^\s+|\s+$/gm,"")}var Zt=$e(()=>{ht();Dt();ll();qt();Qt();po();gl();yn();vt();Xe()});function Xp(e,n){let t=0,l=e.length-1;for(;t<=l;){let a=parseInt((l+t)/2);if(n=e[a-1]))return a;if(n>=e[a])t=a+1;else if(n=0&&s>=t;){if(l=e[s],s==0?a=0:a=e[s-1],n>=a&&n=a&&n=e[t-20]?t=Kp(e,n):t=Xp(e,n),t}var zr=$e(()=>{});function rl(e){let n=0,t=0;return n=h.visibledatarow[e],e==0?t=0:t=h.visibledatarow[e-1],[t,n,e]}function _t(e){let n=st(h.visibledatarow,e);return n==-1&&e>0?n=h.visibledatarow.length-1:n==-1&&e<=0&&(n=0),rl(n)}function Mt(e){let n=0,t=0;return n=h.visibledatacolumn[e],e==0?t=0:t=h.visibledatacolumn[e-1],[t,n,e]}function Kf(e,n){let t=0,l=0;return t=h.visibledatacolumn[e+n-1],e==0?l=0:l=h.visibledatacolumn[e-1],[l,t,e]}function wt(e){let n=st(h.visibledatacolumn,e);return n==-1&&e>0?n=h.visibledatacolumn.length-1:n==-1&&e<=0&&(n=0),Mt(n)}function nt(e,n){let t=$("#"+h.container).offset(),l=e-t.left-h.rowHeaderWidth,a=n-t.top-h.infobarHeight-h.toolbarHeight-h.calculatebarHeight-h.columnHeaderHeight;return[l,a]}var Zl=$e(()=>{zr();Xe()});function yl(e,n,t,l){var s;let a=$.extend(!0,{},l);a.rowlen==null&&(a.rowlen={}),a.customHeight==null&&(a.customHeight={});let o=$("#luckysheetTableContent").get(0).getContext("2d");o.textBaseline="top";for(let u=n;u<=t;u++){if(a.rowhidden!=null&&a.rowhidden[u]!=null)continue;let f=h.defaultrowlen;if(a.customHeight[u]!=1){delete a.rowlen[u];for(let d=0;df&&(f=v)}}f=f/h.zoomRatio,f!=h.defaultrowlen?a.rowlen[u]=f:((s=l.rowlen)==null?void 0:s[u])&&(a.rowlen[u]=l.rowlen[u])}}return a}function Zf(e,n){let t=0,l=$("#luckysheetTableContent").get(0).getContext("2d");l.textBaseline="top";for(let a=0;at&&(t=f)}}return t}function Zp(e,n){let t=Mt(n);return e.mc&&e.mc.cs!==1&&(t=Kf(n,e.mc.cs)),t[1]-t[0]-2}function Jf(e,n,t){let l=0,a=vo(t,n),o=$("#luckysheetTableContent").get(0).getContext("2d");o.textBaseline="top";for(var s=0;sl&&(l=m)}}return l}function vo(e,n){let t=[],l=0;for(let a=0;a180||k<0)&&(k=0),k=parseInt(k),k>90&&(k=90-k,b=0,w=1),n.textAlign="start";let x={};x.values=[];let C,S="0",_="0",T=11,A=!1,R,I=[];if(xl(e)){let N=e.ct.s,L=0;for(let M=0;Ma&&E[M]!=null&&(z.push(F-oe),F=oe,M+=1),W==I.length-1&&z.push(F),E[M]==null&&(E[M]=[]);let ue={content:te,style:X,width:ce,height:oe,left:0,top:0,colIndex:M,asc:se.actualBoundingBoxAscent,desc:se.actualBoundingBoxDescent,inline:!0};X.wrap===!0&&(ue.wrap=!0),E[M].push(ue),console.log("normal",W,M,X,q,E),q=X}}else{let q=Or(R,n),W=q.actualBoundingBoxDescent+q.actualBoundingBoxAscent;R=R.toString();let X=[];R.length>1?X=R.split(""):X.push(R);let ee=Or(X[0],n).width;for(let te=0;tea&&E[M]!=null&&(z.push(F-ce),F=ce,M+=1),te==X.length-1&&z.push(F),E[M]==null&&(E[M]=[]),E[M].push({content:X[te],style:C,width:se,height:ce,left:0,top:0,colIndex:M,asc:q.actualBoundingBoxAscent,desc:q.actualBoundingBoxDescent})}}let O=[];for(let q=0;q1)for(let qe=0;qea),ot+d>a&&O[E]!=null&&y=="2"&&oe!=I.length)if(Z!=null&&Zl&&O[E]!=null&&y=="2"&&oe!=I.length)if(Z!=null&&Za&&O[E]!=null&&oe!=R.length)he!=null&&he.indexl&&O[E]!=null&&oe!=R.length)he!=null&&he.index=0;Rt--){let ot=et[Rt],bt,qe;if(k!=0){let Te,Ze=ie+kt.asc;if(Te=ie/Math.tan(ae)-Ae+F,m=="0"){let Fe=M/Math.sin(ae);g=="0"?(bt=Te+l/2-L/2+je*Math.cos(ae)/2,qe=Ze+a/2-M/2-je*Math.cos(ae)/2):g=="1"?(bt=Te+l/2-L/2,qe=Ze-(M/2-Le/2)):g=="2"&&(bt=Te+l/2-L/2+je*Math.cos(ae),qe=Ze+a-Le/2-M/2-je*Math.cos(ae))}else m=="1"?g=="0"?(bt=Te-Le*Math.sin(ae)/2+je*Math.cos(ae)/2,qe=Ze+a/2+Le*Math.cos(ae)/2-je*Math.cos(ae)/2):g=="1"?(bt=Te-Le*Math.sin(ae),qe=Ze+Le*Math.cos(ae)):g=="2"&&(bt=Te+je*Math.cos(ae),qe=Ze+a-je*Math.cos(ae)):m=="2"&&(g=="0"?(bt=Te+l-Ce/2-(F/2+M/2/Math.tan(ae))+je*Math.cos(ae)/2,qe=Ze+a/2-M/2-je*Math.cos(ae)/2):g=="1"?(bt=Te+l-L+Ge,qe=Ze-M):g=="2"&&(bt=Te+l-Ce*Math.cos(ae)+je*Math.cos(ae),qe=Ze+a-Ce*Math.sin(ae)-je*Math.cos(ae)))}ot.left=bt,ot.top=qe,Ii(ot,S,_,{width:ot.width,height:ot.height,left:bt-ot.width,top:qe,asc:kt.asc,desc:kt.desc,fs:ot.fs}),x.values.push(ot),Ae+=ot.width}ie+=kt.height}}else for(let Ne=0;Ne{ht();ol();Zt();Zl();Pt();yn();Xe()});function vn(e,n){if(Qp(),e!=null){h.visibledatarow=[],h.rh_height=0;for(let t=0;t300?a=300:a{Xe();pr();Sl()});var kn=kl((js,Us)=>{(function(e,n){typeof js=="object"&&typeof Us!="undefined"?Us.exports=n():typeof define=="function"&&define.amd?define(n):(e=typeof globalThis!="undefined"?globalThis:e||self).dayjs=n()})(js,function(){"use strict";var e=1e3,n=6e4,t=36e5,l="millisecond",a="second",o="minute",s="hour",u="day",f="week",d="month",m="quarter",g="year",y="date",v="Invalid Date",k=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,w={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var F=["th","st","nd","rd"],E=M%100;return"["+M+(F[(E-20)%10]||F[E]||F[0])+"]"}},x=function(M,F,E){var z=String(M);return!z||z.length>=F?M:""+Array(F+1-z.length).join(E)+M},C={s:x,z:function(M){var F=-M.utcOffset(),E=Math.abs(F),z=Math.floor(E/60),O=E%60;return(F<=0?"+":"-")+x(z,2,"0")+":"+x(O,2,"0")},m:function M(F,E){if(F.date()1)return M(q[0])}else{var W=F.name;_[W]=F,O=W}return!z&&O&&(S=O),O||!z&&S},R=function(M,F){if(T(M))return M.clone();var E=typeof F=="object"?F:{};return E.date=M,E.args=arguments,new N(E)},I=C;I.l=A,I.i=T,I.w=function(M,F){return R(M,{locale:F.$L,utc:F.$u,x:F.$x,$offset:F.$offset})};var N=function(){function M(E){this.$L=A(E.locale,null,!0),this.parse(E)}var F=M.prototype;return F.parse=function(E){this.$d=function(z){var O=z.date,V=z.utc;if(O===null)return new Date(NaN);if(I.u(O))return new Date;if(O instanceof Date)return new Date(O);if(typeof O=="string"&&!/Z$/i.test(O)){var q=O.match(k);if(q){var W=q[2]-1||0,X=(q[7]||"0").substring(0,3);return V?new Date(Date.UTC(q[1],W,q[3]||1,q[4]||0,q[5]||0,q[6]||0,X)):new Date(q[1],W,q[3]||1,q[4]||0,q[5]||0,q[6]||0,X)}}return new Date(O)}(E),this.$x=E.x||{},this.init()},F.init=function(){var E=this.$d;this.$y=E.getFullYear(),this.$M=E.getMonth(),this.$D=E.getDate(),this.$W=E.getDay(),this.$H=E.getHours(),this.$m=E.getMinutes(),this.$s=E.getSeconds(),this.$ms=E.getMilliseconds()},F.$utils=function(){return I},F.isValid=function(){return this.$d.toString()!==v},F.isSame=function(E,z){var O=R(E);return this.startOf(z)<=O&&O<=this.endOf(z)},F.isAfter=function(E,z){return R(E)12||u>31)return!1;if(s==2){if(new Date(o,1,29).getDate()==29&&u>29)return!1;if(new Date(o,1,29).getDate()!=29&&u>28)return!1}return!0}}function ul(e,n){return(0,Gs.default)(e).diff((0,Gs.default)(n))}function zn(e){let n={};return Ot(e)&&(n.date=!0),!isNaN(parseFloat(e))&&!$n(e)&&(n.num=!0),n}function tr(e){let n="string";return Ot(e)?n="date":!isNaN(parseFloat(e))&&!$n(e)&&(n="num"),n}var Gs,Br=$e(()=>{Pt();Gs=El(kn())});var sa=kl((Qf,ko)=>{(function(e,n){typeof define=="function"&&define.amd?define(n):typeof ko=="object"&&ko.exports?ko.exports=n():e.numeral=n()})(Qf,function(){var e,n,t="2.0.6",l={},a={},o={currentLocale:"en",zeroFormat:null,nullFormat:null,defaultFormat:"0,0",scalePercentBy100:!0},s={currentLocale:o.currentLocale,zeroFormat:o.zeroFormat,nullFormat:o.nullFormat,defaultFormat:o.defaultFormat,scalePercentBy100:o.scalePercentBy100};function u(f,d){this._input=f,this._value=d}return e=function(f){var d,m,g,y;if(e.isNumeral(f))d=f.value();else if(f===0||typeof f=="undefined")d=0;else if(f===null||n.isNaN(f))d=null;else if(typeof f=="string")if(s.zeroFormat&&f===s.zeroFormat)d=0;else if(s.nullFormat&&f===s.nullFormat||!f.replace(/[^0-9]+/g,"").length)d=null;else{for(m in l)if(y=typeof l[m].regexps.unformat=="function"?l[m].regexps.unformat():l[m].regexps.unformat,y&&f.match(y)){g=l[m].unformat;break}g=g||e._.stringToNumber,d=g(f)}else d=Number(f)||null;return new u(f,d)},e.version=t,e.isNumeral=function(f){return f instanceof u},e._=n={numberToFormat:function(f,d,m){var g=a[e.options.currentLocale],y=!1,v=!1,k=0,b="",w=1e12,x=1e9,C=1e6,S=1e3,_="",T=!1,A,R,I,N,L,M,F,E,z,O;if(f=f||0,R=Math.abs(f),e._.includes(d,"(")?(y=!0,d=d.replace(/[\(|\)]/g,"")):(e._.includes(d,"+")||e._.includes(d,"-"))&&(E=e._.includes(d,"+")?d.indexOf("+"):f<0?d.indexOf("-"):-1,d=d.replace(/[\+|\-]/g,"")),e._.includes(d,"a")&&(A=d.match(/a(k|m|b|t)?/),A=A?A[1]:!1,e._.includes(d," a")&&(b=" "),d=d.replace(new RegExp(b+"a[kmbt]?"),""),R>=w&&!A||A==="t"?(b+=g.abbreviations.trillion,f=f/w):R=x&&!A||A==="b"?(b+=g.abbreviations.billion,f=f/x):R=C&&!A||A==="m"?(b+=g.abbreviations.million,f=f/C):(R=S&&!A||A==="k")&&(b+=g.abbreviations.thousand,f=f/S)),e._.includes(d,"[.]")&&(v=!0,d=d.replace("[.]",".")),M=f.toString().split(".")[0],F=d.split(".")[1],z=d.indexOf(","),k=(d.split(".")[0].split(",")[0].match(/0/g)||[]).length,F?(e._.includes(F,"[")?(F=F.replace("]",""),F=F.split("["),_=e._.toFixed(f,F[0].length+F[1].length,m,F[1].length)):_=e._.toFixed(f,F.length,m),M=_.split(".")[0],e._.includes(_,".")?_=g.delimiters.decimal+_.split(".")[1]:_="",v&&Number(_.slice(1))===0&&(_="")):M=e._.toFixed(f,0,m),b&&!A&&Number(M)>=1e3&&b!==g.abbreviations.trillion)switch(M=String(Number(M)/1e3),b){case g.abbreviations.thousand:b=g.abbreviations.million;break;case g.abbreviations.million:b=g.abbreviations.billion;break;case g.abbreviations.billion:b=g.abbreviations.trillion;break}if(e._.includes(M,"-")&&(M=M.slice(1),T=!0),M.length0;V--)M="0"+M;return z>-1&&(M=M.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+g.delimiters.thousands)),d.indexOf(".")===0&&(M=""),O=M+_+(b||""),y?O=(y&&T?"(":"")+O+(y&&T?")":""):E>=0?O=E===0?(T?"-":"+")+O:O+(T?"-":"+"):T&&(O="-"+O),O},stringToNumber:function(f){var d=a[s.currentLocale],m=f,g={thousand:3,million:6,billion:9,trillion:12},y,v,k,b;if(s.zeroFormat&&f===s.zeroFormat)v=0;else if(s.nullFormat&&f===s.nullFormat||!f.replace(/[^0-9]+/g,"").length)v=null;else{v=1,d.delimiters.decimal!=="."&&(f=f.replace(/\./g,"").replace(d.delimiters.decimal,"."));for(y in g)if(b=new RegExp("[^a-zA-Z]"+d.abbreviations[y]+"(?:\\)|(\\"+d.currency.symbol+")?(?:\\))?)?$"),m.match(b)){v*=Math.pow(10,g[y]);break}v*=(f.split("-").length+Math.min(f.split("(").length-1,f.split(")").length-1))%2?1:-1,f=f.replace(/[^0-9\.]+/g,""),v*=Number(f)}return v},isNaN:function(f){return typeof f=="number"&&isNaN(f)},includes:function(f,d){return f.indexOf(d)!==-1},insert:function(f,d,m){return f.slice(0,m)+d+f.slice(m)},reduce:function(f,d){if(this===null)throw new TypeError("Array.prototype.reduce called on null or undefined");if(typeof d!="function")throw new TypeError(d+" is not a function");var m=Object(f),g=m.length>>>0,y=0,v;if(arguments.length===3)v=arguments[2];else{for(;y=g)throw new TypeError("Reduce of empty array with no initial value");v=m[y++]}for(;yg?d:g},1)},toFixed:function(f,d,m,g){var y=f.toString().split("."),v=d-(g||0),k,b,w,x;return y.length===2?k=Math.min(Math.max(y[1].length,v),d):k=v,w=Math.pow(10,k),x=(m(f+"e+"+k)/w).toFixed(k),g>d-k&&(b=new RegExp("\\.?0{1,"+(g-(d-k))+"}$"),x=x.replace(b,"")),x}},e.options=s,e.formats=l,e.locales=a,e.locale=function(f){return f&&(s.currentLocale=f.toLowerCase()),s.currentLocale},e.localeData=function(f){if(!f)return a[s.currentLocale];if(f=f.toLowerCase(),!a[f])throw new Error("Unknown locale : "+f);return a[f]},e.reset=function(){for(var f in o)s[f]=o[f]},e.zeroFormat=function(f){s.zeroFormat=typeof f=="string"?f:null},e.nullFormat=function(f){s.nullFormat=typeof f=="string"?f:null},e.defaultFormat=function(f){s.defaultFormat=typeof f=="string"?f:"0.0"},e.register=function(f,d,m){if(d=d.toLowerCase(),this[f+"s"][d])throw new TypeError(d+" "+f+" already registered.");return this[f+"s"][d]=m,m},e.validate=function(f,d){var m,g,y,v,k,b,w,x;if(typeof f!="string"&&(f+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",f)),f=f.trim(),f.match(/^\d+$/))return!0;if(f==="")return!1;try{w=e.localeData(d)}catch(C){w=e.localeData(e.locale())}return y=w.currency.symbol,k=w.abbreviations,m=w.delimiters.decimal,w.delimiters.thousands==="."?g="\\.":g=w.delimiters.thousands,x=f.match(/^[^\d]+/),x!==null&&(f=f.substr(1),x[0]!==y)||(x=f.match(/[^\d]+$/),x!==null&&(f=f.slice(0,-1),x[0]!==k.thousand&&x[0]!==k.million&&x[0]!==k.billion&&x[0]!==k.trillion))?!1:(b=new RegExp(g+"{2}"),f.match(/[^\d.,]/g)?!1:(v=f.split(m),v.length>2?!1:v.length<2?!!v[0].match(/^\d+.*\d$/)&&!v[0].match(b):v[0].length===1?!!v[0].match(/^\d+$/)&&!v[0].match(b)&&!!v[1].match(/^\d+$/):!!v[0].match(/^\d+.*\d$/)&&!v[0].match(b)&&!!v[1].match(/^\d+$/)))},e.fn=u.prototype={clone:function(){return e(this)},format:function(f,d){var m=this._value,g=f||s.defaultFormat,y,v,k;if(d=d||Math.round,m===0&&s.zeroFormat!==null)v=s.zeroFormat;else if(m===null&&s.nullFormat!==null)v=s.nullFormat;else{for(y in l)if(g.match(l[y].regexps.format)){k=l[y].format;break}k=k||e._.numberToFormat,v=k(m,g,d)}return v},value:function(){return this._value},input:function(){return this._input},set:function(f){return this._value=Number(f),this},add:function(f){var d=n.correctionFactor.call(null,this._value,f);function m(g,y,v,k){return g+Math.round(d*y)}return this._value=n.reduce([this._value,f],m,0)/d,this},subtract:function(f){var d=n.correctionFactor.call(null,this._value,f);function m(g,y,v,k){return g-Math.round(d*y)}return this._value=n.reduce([f],m,Math.round(this._value*d))/d,this},multiply:function(f){function d(m,g,y,v){var k=n.correctionFactor(m,g);return Math.round(m*k)*Math.round(g*k)/Math.round(k*k)}return this._value=n.reduce([this._value,f],d,1),this},divide:function(f){function d(m,g,y,v){var k=n.correctionFactor(m,g);return Math.round(m*k)/Math.round(g*k)}return this._value=n.reduce([this._value,f],d),this},difference:function(f){return Math.abs(e(this._value).subtract(f).value())}},e.register("locale","en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(f){var d=f%10;return~~(f%100/10)==1?"th":d===1?"st":d===2?"nd":d===3?"rd":"th"},currency:{symbol:"$"}}),function(){e.register("format","bps",{regexps:{format:/(BPS)/,unformat:/(BPS)/},format:function(f,d,m){var g=e._.includes(d," BPS")?" ":"",y;return f=f*1e4,d=d.replace(/\s?BPS/,""),y=e._.numberToFormat(f,d,m),e._.includes(y,")")?(y=y.split(""),y.splice(-1,0,g+"BPS"),y=y.join("")):y=y+g+"BPS",y},unformat:function(f){return+(e._.stringToNumber(f)*1e-4).toFixed(15)}})}(),function(){var f={base:1e3,suffixes:["B","KB","MB","GB","TB","PB","EB","ZB","YB"]},d={base:1024,suffixes:["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"]},m=f.suffixes.concat(d.suffixes.filter(function(y){return f.suffixes.indexOf(y)<0})),g=m.join("|");g="("+g.replace("B","B(?!PS)")+")",e.register("format","bytes",{regexps:{format:/([0\s]i?b)/,unformat:new RegExp(g)},format:function(y,v,k){var b,w=e._.includes(v,"ib")?d:f,x=e._.includes(v," b")||e._.includes(v," ib")?" ":"",C,S,_;for(v=v.replace(/\s?i?b/,""),C=0;C<=w.suffixes.length;C++)if(S=Math.pow(w.base,C),_=Math.pow(w.base,C+1),y===null||y===0||y>=S&&y<_){x+=w.suffixes[C],S>0&&(y=y/S);break}return b=e._.numberToFormat(y,v,k),b+x},unformat:function(y){var v=e._.stringToNumber(y),k,b;if(v){for(k=f.suffixes.length-1;k>=0;k--){if(e._.includes(y,f.suffixes[k])){b=Math.pow(f.base,k);break}if(e._.includes(y,d.suffixes[k])){b=Math.pow(d.base,k);break}}v*=b||1}return v}})}(),function(){e.register("format","currency",{regexps:{format:/(\$)/},format:function(f,d,m){var g=e.locales[e.options.currentLocale],y={before:d.match(/^([\+|\-|\(|\s|\$]*)/)[0],after:d.match(/([\+|\-|\)|\s|\$]*)$/)[0]},v,k,b;for(d=d.replace(/\s?\$\s?/,""),v=e._.numberToFormat(f,d,m),f>=0?(y.before=y.before.replace(/[\-\(]/,""),y.after=y.after.replace(/[\-\)]/,"")):f<0&&!e._.includes(y.before,"-")&&!e._.includes(y.before,"(")&&(y.before="-"+y.before),b=0;b=0;b--)switch(k=y.after[b],k){case"$":v=b===y.after.length-1?v+g.currency.symbol:e._.insert(v,g.currency.symbol,-(y.after.length-(1+b)));break;case" ":v=b===y.after.length-1?v+" ":e._.insert(v," ",-(y.after.length-(1+b)+g.currency.symbol.length-1));break}return v}})}(),function(){e.register("format","exponential",{regexps:{format:/(e\+|e-)/,unformat:/(e\+|e-)/},format:function(f,d,m){var g,y=typeof f=="number"&&!e._.isNaN(f)?f.toExponential():"0e+0",v=y.split("e");return d=d.replace(/e[\+|\-]{1}0/,""),g=e._.numberToFormat(Number(v[0]),d,m),g+"e"+v[1]},unformat:function(f){var d=e._.includes(f,"e+")?f.split("e+"):f.split("e-"),m=Number(d[0]),g=Number(d[1]);g=e._.includes(f,"e-")?g*=-1:g;function y(v,k,b,w){var x=e._.correctionFactor(v,k),C=v*x*(k*x)/(x*x);return C}return e._.reduce([m,Math.pow(10,g)],y,1)}})}(),function(){e.register("format","ordinal",{regexps:{format:/(o)/},format:function(f,d,m){var g=e.locales[e.options.currentLocale],y,v=e._.includes(d," o")?" ":"";return d=d.replace(/\s?o/,""),v+=g.ordinal(f),y=e._.numberToFormat(f,d,m),y+v}})}(),function(){e.register("format","percentage",{regexps:{format:/(%)/,unformat:/(%)/},format:function(f,d,m){var g=e._.includes(d," %")?" ":"",y;return e.options.scalePercentBy100&&(f=f*100),d=d.replace(/\s?\%/,""),y=e._.numberToFormat(f,d,m),e._.includes(y,")")?(y=y.split(""),y.splice(-1,0,g+"%"),y=y.join("")):y=y+g+"%",y},unformat:function(f){var d=e._.stringToNumber(f);return e.options.scalePercentBy100?d*.01:d}})}(),function(){e.register("format","time",{regexps:{format:/(:)/,unformat:/(:)/},format:function(f,d,m){var g=Math.floor(f/60/60),y=Math.floor((f-g*60*60)/60),v=Math.round(f-g*60*60-y*60);return g+":"+(y<10?"0"+y:y)+":"+(v<10?"0"+v:v)},unformat:function(f){var d=f.split(":"),m=0;return d.length===3?(m=m+Number(d[0])*60*60,m=m+Number(d[1])*60,m=m+Number(d[2])):d.length===2&&(m=m+Number(d[0])*60,m=m+Number(d[1])),Number(m)}})}(),e})});function Ws(e,n){var t=Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds()),l=Date.UTC(1899,11,31,0,0,0);return n?t-=1461*24*60*60*1e3:e>=l2&&(t+=24*60*60*1e3),(t-l)/(24*60*60*1e3)}function n2(e,n){var t=new Date(e);if(r2)return n>0?t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3):n<0&&t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3),t;if(e instanceof Date)return e;if(bo.getFullYear()==1917&&!isNaN(t.getFullYear())){var l=t.getFullYear();return e.indexOf(""+l)>-1||t.setFullYear(t.getFullYear()+100),t}var a=e.match(/\d+/g)||["2017","2","19","0","0","0"],o=new Date(+a[0],+a[1]-1,+a[2],+a[3]||0,+a[4]||0,+a[5]||0);return e.indexOf("Z")>-1&&(o=new Date(o.getTime()-o.getTimezoneOffset()*60*1e3)),o}function a2(e){var n=Number(e);if(typeof e=="number")return e;if(!isNaN(n))return n;var t=1,l=e.replace(/([\d]),([\d])/g,"$1$2").replace(/[$]/g,"").replace(/[%]/g,function(){return t*=100,""});return!isNaN(n=Number(l))||(l=l.replace(/[(](.*)[)]/,function(a,o){return t=-t,o}),!isNaN(n=Number(l)))?n/t:n}function it(e){var n=[],t=null,l={},a=e;if(e==null)return null;if(/^-?[0-9]{1,}[,][0-9]{3}(.[0-9]{1,2})?$/.test(e)){t=e,a=Number(e.split(".")[0].replace(",",""));let x="#,##0";if(e.split(".")[1]){x="#,##0.";for(let C=0;C0&&(Math.abs(parseFloat(e))>=1e11||Math.abs(parseFloat(e))<1e-9))if(e.length>16)a=e,l={fa:"@",t:"s"},t=vl.format(l.fa,a);else{a=(0,Hr.default)(e).value();var o=a.toExponential();if(o.indexOf(".")>-1){var s=o.split(".")[1].split("e")[0].length;s>5&&(s=5),l={fa:"#0."+new Array(s+1).join("0")+"E+00",t:"n"}}else l={fa:"#0.E+00",t:"n"};t=vl.format(l.fa,a)}else if(e.toString().indexOf("%")>-1){var u=e.toString().indexOf("%"),f=e.toString().substr(0,u),d=f.replace(/,/g,"");if(u==e.toString().length-1&&B(d))if(f.indexOf(".")>-1)if(f.indexOf(".")==f.lastIndexOf(".")){var m=f.split(".")[0],g=f.split(".")[1],y=g.length;if(y>9&&(y=9),m.indexOf(",")>-1){for(var v=!0,k=m.split(","),b=1;b-1){for(var v=!0,k=f.split(","),b=1;b-1)if(e.toString().indexOf(".")==e.toString().lastIndexOf(".")){var w=e.toString().split(".")[0],f=e.toString().split(".")[1],y=f.length;if(y>9&&(y=9),w.indexOf(",")>-1){for(var v=!0,k=w.split(","),b=1;b-1||e.toString().indexOf(":")>-1||e.toString().length<16)?(a=Ws(n2(e.toString().replace(/-/g,"/"))),a.toString().indexOf(".")>-1?e.toString().length>18?l.fa="yyyy-MM-dd hh:mm:ss":e.toString().length>11?l.fa="yyyy-MM-dd hh:mm":l.fa="yyyy-MM-dd":l.fa="yyyy-MM-dd",l.t="d",t=vl.format(l.fa,a)):(t=e,l.fa="General",l.t="g");return[t,l,a]}function mt(e,n){return vl.format(e,n)}function ed(e,n){return vl.is_date(e,n)}function bn(e,n,t){var l=ze(e,n,t,"m");return l==null?l=ze(e,n,t,"v"):isNaN(a2(l))?t[e][n].ct!=null&&t[e][n].ct.t=="d"||t[e][n].ct!=null&&t[e][n].ct.t=="b"||(l=ze(e,n,t,"v")):typeof l=="string"&&l.indexOf("%")>-1||(l=ze(e,n,t,"v")),l}var Hr,vl,e2,sk,ck,t2,uk,l2,bo,r2,Ml=$e(()=>{Pt();Br();Zt();Hr=El(sa()),vl={},e2=function(n){n.version="0.11.2";function t(Z){for(var G="",le=Z.length-1;le>=0;)G+=Z.charAt(le--);return G}function l(Z,G){for(var le="";le.length=G?le:l("0",G-le.length)+le}function o(Z,G){var le=""+Z;return le.length>=G?le:l(" ",G-le.length)+le}function s(Z,G){var le=""+Z;return le.length>=G?le:le+l(" ",G-le.length)}function u(Z,G){var le=""+Math.round(Z);return le.length>=G?le:l("0",G-le.length)+le}function f(Z,G){var le=""+Z;return le.length>=G?le:l("0",G-le.length)+le}var d=Math.pow(2,32);function m(Z,G){if(Z>d||Z<-d)return u(Z,G);var le=Math.round(Z);return f(le,G)}function g(Z,G){return G=G||0,Z.length>=7+G&&(Z.charCodeAt(G)|32)==103&&(Z.charCodeAt(G+1)|32)==101&&(Z.charCodeAt(G+2)|32)==110&&(Z.charCodeAt(G+3)|32)==101&&(Z.charCodeAt(G+4)|32)==114&&(Z.charCodeAt(G+5)|32)==97&&(Z.charCodeAt(G+6)|32)==108}var y=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]],v=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function k(Z){Z[0]="General",Z[1]="0",Z[2]="0.00",Z[3]="#,##0",Z[4]="#,##0.00",Z[9]="0%",Z[10]="0.00%",Z[11]="0.00E+00",Z[12]="# ?/?",Z[13]="# ??/??",Z[14]="m/d/yy",Z[15]="d-mmm-yy",Z[16]="d-mmm",Z[17]="mmm-yy",Z[18]="h:mm AM/PM",Z[19]="h:mm:ss AM/PM",Z[20]="h:mm",Z[21]="h:mm:ss",Z[22]="m/d/yy h:mm",Z[37]="#,##0 ;(#,##0)",Z[38]="#,##0 ;[Red](#,##0)",Z[39]="#,##0.00;(#,##0.00)",Z[40]="#,##0.00;[Red](#,##0.00)",Z[45]="mm:ss",Z[46]="[h]:mm:ss",Z[47]="mmss.0",Z[48]="##0.0E+0",Z[49]="@",Z[56]='"\u4E0A\u5348/\u4E0B\u5348 "hh"\u6642"mm"\u5206"ss"\u79D2 "',Z[65535]="General"}var b={};k(b);var w=[],x=0;for(x=5;x<=8;++x)w[x]=32+x;for(x=23;x<=26;++x)w[x]=0;for(x=27;x<=31;++x)w[x]=14;for(x=50;x<=58;++x)w[x]=14;for(x=59;x<=62;++x)w[x]=x-58;for(x=67;x<=68;++x)w[x]=x-58;for(x=72;x<=75;++x)w[x]=x-58;for(x=67;x<=68;++x)w[x]=x-57;for(x=76;x<=78;++x)w[x]=x-56;for(x=79;x<=81;++x)w[x]=x-34;var C=[];C[5]=C[63]='"$"#,##0_);\\("$"#,##0\\)',C[6]=C[64]='"$"#,##0_);[Red]\\("$"#,##0\\)',C[7]=C[65]='"$"#,##0.00_);\\("$"#,##0.00\\)',C[8]=C[66]='"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',C[41]='_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',C[42]='_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',C[43]='_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',C[44]='_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)';function S(Z,G,le){for(var pe=Z<0?-1:1,ie=Z*pe,Ae=0,ae=1,Ee=0,je=1,Ce=0,Le=0,Ge=Math.floor(ie);CeG&&(Ce>G?(Le=je,Ee=Ae):(Le=Ce,Ee=ae)),!le)return[0,pe*Ee,Le];var Ne=Math.floor(pe*Ee/Le);return[Ne,pe*Ee-Ne*Le,Le]}function _(Z,G,le){if(Z>2958465||Z<0)return null;var pe=Z|0,ie=Math.floor(86400*(Z-pe)),Ae=0,ae=[],Ee={D:pe,T:ie,u:86400*(Z-pe)-ie,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(Ee.u)<1e-6&&(Ee.u=0),G&&G.date1904&&(pe+=1462),Ee.u>.9999&&(Ee.u=0,++ie==86400&&(Ee.T=ie=0,++pe,++Ee.D)),pe===60)ae=le?[1317,10,29]:[1900,2,29],Ae=3;else if(pe===0)ae=le?[1317,8,29]:[1900,1,0],Ae=6;else{pe>60&&--pe;var je=new Date(1900,0,1);je.setDate(je.getDate()+pe-1),ae=[je.getFullYear(),je.getMonth()+1,je.getDate()],Ae=je.getDay(),pe<60&&(Ae=(Ae+6)%7),le&&(Ae=F(je,ae))}return Ee.y=ae[0],Ee.m=ae[1],Ee.d=ae[2],Ee.S=ie%60,ie=Math.floor(ie/60),Ee.M=ie%60,ie=Math.floor(ie/60),Ee.H=ie,Ee.q=Ae,Ee}n.parse_date_code=_;var T=new Date(1899,11,31,0,0,0),A=T.getTime(),R=new Date(1900,2,1,0,0,0);function I(Z,G){var le=Z.getTime();return G?le-=1461*24*60*60*1e3:Z>=R&&(le+=24*60*60*1e3),(le-(A+(Z.getTimezoneOffset()-T.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function N(Z){return Z.toString(10)}n._general_int=N;var L=function(){var G=/(?:\.0*|(\.\d*[1-9])0+)$/;function le(Ce){return Ce.indexOf(".")==-1?Ce:Ce.replace(G,"$1")}var pe=/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,ie=/(E[+-])(\d)$/;function Ae(Ce){return Ce.indexOf("E")==-1?Ce:Ce.replace(pe,"$1E").replace(ie,"$10$2")}function ae(Ce){var Le=Ce<0?12:11,Ge=le(Ce.toFixed(12));return Ge.length<=Le||(Ge=Ce.toPrecision(10),Ge.length<=Le)?Ge:Ce.toExponential(5)}function Ee(Ce){var Le=le(Ce.toFixed(11));return Le.length>(Ce<0?12:11)||Le==="0"||Le==="-0"?Ce.toPrecision(6):Le}function je(Ce){var Le=Math.floor(Math.log(Math.abs(Ce))*Math.LOG10E),Ge;return Le>=-4&&Le<=-1?Ge=Ce.toPrecision(10+Le):Math.abs(Le)<=9?Ge=ae(Ce):Le===10?Ge=Ce.toFixed(10).substr(0,12):Ge=Ee(Ce),le(Ae(Ge.toUpperCase()))}return je}();n._general_num=L;function M(Z,G){switch(typeof Z){case"string":return Z;case"boolean":return Z?"TRUE":"FALSE";case"number":return(Z|0)===Z?Z.toString(10):L(Z);case"undefined":return"";case"object":if(Z==null)return"";if(Z instanceof Date)return ue(14,I(Z,G&&G.date1904),G)}throw new Error("unsupported value in General format: "+Z)}n._general=M;function F(Z,G){G[0]-=581;var le=Z.getDay();return Z<60&&(le=(le+6)%7),le}var E="\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59".split("");function z(Z,G,le,pe){var ie="",Ae=0,ae=0,Ee=le.y,je,Ce=0;switch(Z){case 98:Ee=le.y+543;case 121:switch(G.length){case 1:case 2:je=Ee%100,Ce=2;break;default:je=Ee%1e4,Ce=4;break}break;case 109:switch(G.length){case 1:case 2:je=le.m,Ce=G.length;break;case 3:return v[le.m-1][1];case 5:return v[le.m-1][0];default:return v[le.m-1][2]}break;case 100:switch(G.length){case 1:case 2:je=le.d,Ce=G.length;break;case 3:return y[le.q][0];default:return y[le.q][1]}break;case 104:switch(G.length){case 1:case 2:je=1+(le.H+11)%12,Ce=G.length;break;default:throw"bad hour format: "+G}break;case 72:switch(G.length){case 1:case 2:je=le.H,Ce=G.length;break;default:throw"bad hour format: "+G}break;case 77:switch(G.length){case 1:case 2:je=le.M,Ce=G.length;break;default:throw"bad minute format: "+G}break;case 115:if(G!="s"&&G!="ss"&&G!=".0"&&G!=".00"&&G!=".000")throw"bad second format: "+G;return le.u===0&&(G=="s"||G=="ss")?a(le.S,G.length):(pe>=2?ae=pe===3?1e3:100:ae=pe===1?10:1,Ae=Math.round(ae*(le.S+le.u)),Ae>=60*ae&&(Ae=0),G==="s"?Ae===0?"0":""+Ae/ae:(ie=a(Ae,2+pe),G==="ss"?ie.substr(0,2):"."+ie.substr(2,G.length-1)));case 90:switch(G){case"[h]":case"[hh]":je=le.D*24+le.H;break;case"[m]":case"[mm]":je=(le.D*24+le.H)*60+le.M;break;case"[s]":case"[ss]":je=((le.D*24+le.H)*60+le.M)*60+Math.round(le.S+le.u);break;default:throw"bad abstime format: "+G}Ce=G.length===3?1:2;break;case 101:je=Ee,Ce=1;break}var Le=Ce>0?a(je,Ce):"";return Le}function O(Z){var G=3;if(Z.length<=G)return Z;for(var le=Z.length%G,pe=Z.substr(0,le);le!=Z.length;le+=G)pe+=(pe.length>0?",":"")+Z.substr(le,G);return pe}var V=function(){var G=/%/g;function le(Fe,ye,ke){var ft=ye.replace(G,""),De=ye.length-ft.length;return V(Fe,ft,ke*Math.pow(10,2*De))+l("%",De)}function pe(Fe,ye,ke){for(var ft=ye.length-1;ye.charCodeAt(ft-1)===44;)--ft;return V(Fe,ye.substr(0,ft),ke/Math.pow(10,3*(ye.length-ft)))}function ie(Fe,ye){var ke,ft=Fe.indexOf("E")-Fe.indexOf(".")-1;if(Fe.match(/^#+0.0E\+0$/)){if(ye==0)return"0.0E+0";if(ye<0)return"-"+ie(Fe,-ye);var De=Fe.indexOf(".");De===-1&&(De=Fe.indexOf("E"));var Pe=Math.floor(Math.log(ye)*Math.LOG10E)%De;if(Pe<0&&(Pe+=De),ke=(ye/Math.pow(10,Pe)).toPrecision(ft+1+(De+Pe)%De),ke.indexOf("e")===-1){var Et=Math.floor(Math.log(ye)*Math.LOG10E);for(ke.indexOf(".")===-1?ke=ke.charAt(0)+"."+ke.substr(1)+"E+"+(Et-ke.length+Pe):ke+="E+"+(Et-Pe);ke.substr(0,2)==="0.";)ke=ke.charAt(0)+ke.substr(2,De)+"."+ke.substr(2+De),ke=ke.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.");ke=ke.replace(/\+-/,"-")}ke=ke.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(gt,sl,cl,jt){return sl+cl+jt.substr(0,(De+Pe)%De)+"."+jt.substr(Pe)+"E"})}else ke=ye.toExponential(ft);return Fe.match(/E\+00$/)&&ke.match(/e[+-]\d$/)&&(ke=ke.substr(0,ke.length-1)+"0"+ke.charAt(ke.length-1)),Fe.match(/E\-/)&&ke.match(/e\+/)&&(ke=ke.replace(/e\+/,"e")),ke.replace("e","E")}var Ae=/# (\?+)( ?)\/( ?)(\d+)/;function ae(Fe,ye,ke){var ft=parseInt(Fe[4],10),De=Math.round(ye*ft),Pe=Math.floor(De/ft),Et=De-Pe*ft,gt=ft;return ke+(Pe===0?"":""+Pe)+" "+(Et===0?l(" ",Fe[1].length+1+Fe[4].length):o(Et,Fe[1].length)+Fe[2]+"/"+Fe[3]+a(gt,Fe[4].length))}function Ee(Fe,ye,ke){return ke+(ye===0?"":""+ye)+l(" ",Fe[1].length+2+Fe[4].length)}var je=/^#*0*\.([0#]+)/,Ce=/\).*[0#]/,Le=/\(###\) ###\\?-####/;function Ge(Fe){for(var ye="",ke,ft=0;ft!=Fe.length;++ft)switch(ke=Fe.charCodeAt(ft)){case 35:break;case 63:ye+=" ";break;case 48:ye+="0";break;default:ye+=String.fromCharCode(ke)}return ye}function Ne(Fe,ye){var ke=Math.pow(10,ye);return""+Math.round(Fe*ke)/ke}function et(Fe,ye){var ke=Fe-Math.floor(Fe),ft=Math.pow(10,ye);return ye<(""+Math.round(ke*ft)).length?0:Math.round(ke*ft)}function kt(Fe,ye){return ye<(""+Math.round((Fe-Math.floor(Fe))*Math.pow(10,ye))).length?1:0}function Rt(Fe){return Fe<2147483647&&Fe>-2147483648?""+(Fe>=0?Fe|0:Fe-1|0):""+Math.floor(Fe)}function ot(Fe,ye,ke){if(Fe.charCodeAt(0)===40&&!ye.match(Ce)){var ft=ye.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return ke>=0?ot("n",ft,ke):"("+ot("n",ft,-ke)+")"}if(ye.charCodeAt(ye.length-1)===44)return pe(Fe,ye,ke);if(ye.indexOf("%")!==-1)return le(Fe,ye,ke);if(ye.indexOf("E")!==-1)return ie(ye,ke);if(ye.charCodeAt(0)===36)return"$"+ot(Fe,ye.substr(ye.charAt(1)==" "?2:1),ke);var De,Pe,Et,gt,sl=Math.abs(ke),cl=ke<0?"-":"";if(ye.match(/^00+$/))return cl+m(sl,ye.length);if(ye.match(/^[#?]+$/))return De=m(ke,0),De==="0"&&(De=""),De.length>ye.length?De:Ge(ye.substr(0,ye.length-De.length))+De;if(Pe=ye.match(Ae))return ae(Pe,sl,cl);if(ye.match(/^#+0+$/))return cl+m(sl,ye.length-ye.indexOf("0"));if(Pe=ye.match(je))return De=Ne(ke,Pe[1].length).replace(/^([^\.]+)$/,"$1."+Ge(Pe[1])).replace(/\.$/,"."+Ge(Pe[1])).replace(/\.(\d*)$/,function(Wl,Xn){return"."+Xn+l("0",Ge(Pe[1]).length-Xn.length)}),ye.indexOf("0.")!==-1?De:De.replace(/^0\./,".");if(ye=ye.replace(/^#+([0.])/,"$1"),Pe=ye.match(/^(0*)\.(#*)$/))return cl+Ne(sl,Pe[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,Pe[1].length?"0.":".");if(Pe=ye.match(/^#{1,3},##0(\.?)$/))return cl+O(m(sl,0));if(Pe=ye.match(/^#,##0\.([#0]*0)$/))return ke<0?"-"+ot(Fe,ye,-ke):O(""+(Math.floor(ke)+kt(ke,Pe[1].length)))+"."+a(et(ke,Pe[1].length),Pe[1].length);if(Pe=ye.match(/^#,#*,#0/))return ot(Fe,ye.replace(/^#,#*,/,""),ke);if(Pe=ye.match(/^([0#]+)(\\?-([0#]+))+$/))return De=t(ot(Fe,ye.replace(/[\\-]/g,""),ke)),Et=0,t(t(ye.replace(/\\/g,"")).replace(/[0#]/g,function(Wl){return Et=0?Ze("n",ft,ke):"("+Ze("n",ft,-ke)+")"}if(ye.charCodeAt(ye.length-1)===44)return bt(Fe,ye,ke);if(ye.indexOf("%")!==-1)return qe(Fe,ye,ke);if(ye.indexOf("E")!==-1)return Te(ye,ke);if(ye.charCodeAt(0)===36)return"$"+Ze(Fe,ye.substr(ye.charAt(1)==" "?2:1),ke);var De,Pe,Et,gt,sl=Math.abs(ke),cl=ke<0?"-":"";if(ye.match(/^00+$/))return cl+a(sl,ye.length);if(ye.match(/^[#?]+$/))return De=""+ke,ke===0&&(De=""),De.length>ye.length?De:Ge(ye.substr(0,ye.length-De.length))+De;if(Pe=ye.match(Ae))return Ee(Pe,sl,cl);if(ye.match(/^#+0+$/))return cl+a(sl,ye.length-ye.indexOf("0"));if(Pe=ye.match(je))return De=(""+ke).replace(/^([^\.]+)$/,"$1."+Ge(Pe[1])).replace(/\.$/,"."+Ge(Pe[1])),De=De.replace(/\.(\d*)$/,function(Wl,Xn){return"."+Xn+l("0",Ge(Pe[1]).length-Xn.length)}),ye.indexOf("0.")!==-1?De:De.replace(/^0\./,".");if(ye=ye.replace(/^#+([0.])/,"$1"),Pe=ye.match(/^(0*)\.(#*)$/))return cl+(""+sl).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,Pe[1].length?"0.":".");if(Pe=ye.match(/^#{1,3},##0(\.?)$/))return cl+O(""+sl);if(Pe=ye.match(/^#,##0\.([#0]*0)$/))return ke<0?"-"+Ze(Fe,ye,-ke):O(""+ke)+"."+l("0",Pe[1].length);if(Pe=ye.match(/^#,#*,#0/))return Ze(Fe,ye.replace(/^#,#*,/,""),ke);if(Pe=ye.match(/^([0#]+)(\\?-([0#]+))+$/))return De=t(Ze(Fe,ye.replace(/[\\-]/g,""),ke)),Et=0,t(t(ye.replace(/\\/g,"")).replace(/[0#]/g,function(Wl){return Et-1||le=="\\"&&Z.charAt(G+1)=="-"&&"0#".indexOf(Z.charAt(G+2))>-1););break;case"?":for(;Z.charAt(++G)===le;);break;case"*":++G,(Z.charAt(G)==" "||Z.charAt(G)=="*")&&++G;break;case"(":case")":++G;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(;G-1;);break;case" ":++G;break;default:++G;break}return!1}n.is_date=X;function ee(Z,G,le,pe){for(var ie=[],Ae="",ae=0,Ee="",je="t",Ce,Le,Ge,Ne="H";ae=12?"P":"A"),Rt.t="T",Ne="h",ae+=3):Z.substr(ae,5).toUpperCase()==="AM/PM"?(Ce!=null&&(Rt.v=Ce.H>=12?"PM":"AM"),Rt.t="T",ae+=5,Ne="h"):Z.substr(ae,5).toUpperCase()==="\u4E0A\u5348/\u4E0B\u5348"?(Ce!=null&&(Rt.v=Ce.H>=12?"\u4E0B\u5348":"\u4E0A\u5348"),Rt.t="T",ae+=5,Ne="h"):(Rt.t="t",++ae),Ce==null&&Rt.t==="T")return"";ie[ie.length]=Rt,je=Ee;break;case"[":for(Ae=Ee;Z.charAt(ae++)!=="]"&&ae-1&&(Ae=(Ae.match(/\$([^-\[\]]*)/)||[])[1]||"$",X(Z)||(ie[ie.length]={t:"t",v:Ae}));break;case".":if(Ce!=null){for(Ae=Ee;++ae-1;)Ae+=Ee;ie[ie.length]={t:"n",v:Ae};break;case"?":for(Ae=Ee;Z.charAt(++ae)===Ee;)Ae+=Ee;ie[ie.length]={t:Ee,v:Ae},je=Ee;break;case"*":++ae,(Z.charAt(ae)==" "||Z.charAt(ae)=="*")&&++ae;break;case"(":case")":ie[ie.length]={t:pe===1?"t":Ee,v:Ee},++ae;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(Ae=Ee;ae-1;)Ae+=Z.charAt(ae);ie[ie.length]={t:"D",v:Ae};break;case" ":ie[ie.length]={t:Ee,v:Ee},++ae;break;case"$":ie[ie.length]={t:"t",v:"$"},++ae;break;default:if("\xA4\u0E3FBsBr\u20B5\u20A1\u20AB\u0192FtRs.\u20ADkr\xA3\u20A4Lm\u20A5\u20A6\u20B1PQRSkRp\u09F2\u09F3R$S/.\u3012\u20AE\u20A9\xA5NT\uFFE5z\u0142\u20B4\u20AA\u17DB\u0440\u0443\u0431\u20AC\uFF04,$-+/():!^&'~{}<>=\u20ACacfijklopqrtuvwxzP$\uFFE5LekdinAf$dhAflRial?\uFFE1BirrKzMOPPGKRsGsB/R$\u0440\u0440levkrKMzBsPNuFBuKPkrRD$NfkCFA?CVEGMDFrCDHTGNAfLFdjKGSFGGHSRielKCFknKshLSLL\uFFE1LtRFRONArRfMWKRMMURsMROS/KMDLMTnRC$kr\u20ACGELCHFSLLSCRDbSZLSDGSOSSomFCFPTShT$VUVQUGX\u0433\u0440\u043DsomWSTNT$FtDramRpZMWFCFA".indexOf(Ee)===-1)throw new Error("unrecognized character "+Ee+" in "+Z);ie[ie.length]={t:"t",v:Ee},++ae;break}var ot=0,bt=0,qe;for(ae=ie.length-1,je="t";ae>=0;--ae)switch(ie[ae].t){case"h":case"H":ie[ae].t=Ne,je="h",ot<1&&(ot=1);break;case"s":(qe=ie[ae].v.match(/\.0+$/))&&(bt=Math.max(bt,qe[0].length-1)),ot<3&&(ot=3);case"d":case"y":case"M":case"e":je=ie[ae].t;break;case"m":je==="s"&&(ie[ae].t="M",ot<2&&(ot=2));break;case"X":break;case"Z":ot<1&&ie[ae].v.match(/[Hh]/)&&(ot=1),ot<2&&ie[ae].v.match(/[Mm]/)&&(ot=2),ot<3&&ie[ae].v.match(/[Ss]/)&&(ot=3)}switch(ot){case 0:break;case 1:Ce.u>=.5&&(Ce.u=0,++Ce.S),Ce.S>=60&&(Ce.S=0,++Ce.M),Ce.M>=60&&(Ce.M=0,++Ce.H);break;case 2:Ce.u>=.5&&(Ce.u=0,++Ce.S),Ce.S>=60&&(Ce.S=0,++Ce.M);break}var Te="",Ze;for(ae=0;ae0){Te.charCodeAt(0)==40?(ye=G<0&&Te.charCodeAt(0)===45?-G:G,ke=V("n",Te,ye)):(ye=G<0&&pe>1?-G:G,ke=V("n",Te,ye),ye<0&&ie[0]&&ie[0].t=="t"&&(ke=ke.substr(1),ie[0].v="-"+ie[0].v)),Ze=ke.length-1;var ft=ie.length;for(ae=0;ae-1){ft=ae;break}var De=ie.length;if(ft===ie.length&&ke.indexOf("E")===-1){for(ae=ie.length-1;ae>=0;--ae)ie[ae]==null||"n?".indexOf(ie[ae].t)===-1||(Ze>=ie[ae].v.length-1?(Ze-=ie[ae].v.length,ie[ae].v=ke.substr(Ze+1,ie[ae].v.length)):Ze<0?ie[ae].v="":(ie[ae].v=ke.substr(0,Ze+1),Ze=-1),ie[ae].t="t",De=ae);Ze>=0&&De=0;--ae)if(!(ie[ae]==null||"n?".indexOf(ie[ae].t)===-1)){for(Le=ie[ae].v.indexOf(".")>-1&&ae===ft?ie[ae].v.indexOf(".")-1:ie[ae].v.length-1,Fe=ie[ae].v.substr(Le+1);Le>=0;--Le)Ze>=0&&(ie[ae].v.charAt(Le)==="0"||ie[ae].v.charAt(Le)==="#")&&(Fe=ke.charAt(Ze--)+Fe);ie[ae].v=Fe,ie[ae].t="t",De=ae}for(Ze>=0&&De-1&&ae===ft?ie[ae].v.indexOf(".")+1:0,Fe=ie[ae].v.substr(0,Le);Le-1&&(ye=pe>1&&G<0&&ae>0&&ie[ae-1].v==="-"?-G:G,ie[ae].v=V(ie[ae].t,ie[ae].v,ye),ie[ae].t="t");var Pe="";for(ae=0;ae!==ie.length;++ae)ie[ae]!=null&&(Pe+=ie[ae].v);return Pe}n._eval=ee;var te=/\[[=<>]/,se=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function ce(Z,G){if(G==null)return!1;var le=parseFloat(G[2]);switch(G[1]){case"=":if(Z==le)return!0;break;case">":if(Z>le)return!0;break;case"<":if(Z":if(Z!=le)return!0;break;case">=":if(Z>=le)return!0;break;case"<=":if(Z<=le)return!0;break}return!1}function oe(Z,G){var le=q(Z),pe=le.length,ie=le[pe-1].indexOf("@");if(pe<4&&ie>-1&&--pe,le.length>4)throw new Error("cannot find right format for |"+le.join("|")+"|");if(typeof G!="number")return[4,le.length===4||ie>-1?le[le.length-1]:"@"];switch(le.length){case 1:le=ie>-1?["General","General","General",le[0]]:[le[0],le[0],le[0],"@"];break;case 2:le=ie>-1?[le[0],le[0],le[0],le[1]]:[le[0],le[1],le[0],"@"];break;case 3:le=ie>-1?[le[0],le[1],le[0],le[2]]:[le[0],le[1],le[2],"@"];break;case 4:break}var Ae=G>0?le[0]:G<0?le[1]:le[2];if(le[0].indexOf("[")===-1&&le[1].indexOf("[")===-1)return[pe,Ae];if(le[0].match(te)!=null||le[1].match(te)!=null){var ae=le[0].match(se),Ee=le[1].match(se);return ce(G,ae)?[pe,le[0]]:ce(G,Ee)?[pe,le[1]]:[pe,le[ae!=null&&Ee!=null?2:1]]}return[pe,Ae]}function ue(Z,G,le){le==null&&(le={});var pe="";switch(typeof Z){case"string":Z=="m/d/yy"&&le.dateNF?pe=le.dateNF:pe=Z;break;case"number":Z==14&&le.dateNF?pe=le.dateNF:pe=(le.table!=null?le.table:b)[Z],pe==null&&(pe=le.table&&le.table[w[Z]]||b[w[Z]]),pe==null&&(pe=C[Z]||"General");break}var ie=/^(w|W)((0?)|(0\.0+))$/;if(pe.match(ie)){if(isNaN(G))return G;var Ae=pe.slice(1),ae=!1;!isNaN(G)&&Number(G)<0&&(ae=!0,G=Math.abs(G));var Ee=parseInt(G),je=Ee.toString().length;if(je>4){if(je>8){var Ce=parseInt(G/1e8),Le=parseInt(parseFloat(G).subtract(Ce*1e8)/1e4),Ge=parseFloat(G).subtract(Ce*1e8+Le*1e4);Ae!=""&&(Ge=(0,Hr.default)(Ge).format(Ae)),G=Ce+"\u4EBF"+Le+"\u4E07"+Ge}else{var Le=parseInt(G/1e4),Ge=parseFloat(G).subtract(Le*1e4);Ae!=""&&(Ge=(0,Hr.default)(Ge).format(Ae)),G=Le+"\u4E07"+Ge}if(G.indexOf("\u4EBF0\u4E070")!=-1?G=G.replace("0\u4E070",""):G.indexOf("\u4EBF0\u4E07")!=-1?G=G.replace("0\u4E07",""):G.indexOf("\u4E070")!=-1&&(G=G.replace("\u4E070","\u4E07")),G.indexOf("\u4EBF")!=-1&&G.indexOf("\u4E07")==-1){var Ne=G.substring(G.indexOf("\u4EBF")+1);if(Ne.substring(0,1)!=="."&&Ne!=""){switch((parseInt(Ne)+"").length){case 1:Ne="000"+Ne;break;case 2:Ne="00"+Ne;break;case 3:Ne="0"+Ne;break}G=G.substring(0,G.indexOf("\u4EBF")+1)+Ne}}else if(G.indexOf("\u4EBF")==-1&&G.indexOf("\u4E07")!=-1){var et=G.substring(G.indexOf("\u4E07")+1);if(et.substring(0,1)!=="."&&et!=""){switch((parseInt(et)+"").length){case 1:et="000"+et;break;case 2:et="00"+et;break;case 3:et="0"+et;break}G=G.substring(0,G.indexOf("\u4E07")+1)+et}}else if(G.indexOf("\u4EBF")!=-1&&G.indexOf("\u4E07")!=-1){var Ne=G.substring(G.indexOf("\u4EBF")+1,G.indexOf("\u4E07")),et=G.substring(G.indexOf("\u4E07")+1);switch((parseInt(Ne)+"").length){case 1:Ne="000"+Ne;break;case 2:Ne="00"+Ne;break;case 3:Ne="0"+Ne;break}if(G=G.substring(0,G.indexOf("\u4EBF")+1)+Ne+G.substring(G.indexOf("\u4E07")),et.substring(0,1)!=="."&&et!=""){switch((parseInt(et)+"").length){case 1:et="000"+et;break;case 2:et="00"+et;break;case 3:et="0"+et;break}G=G.substring(0,G.indexOf("\u4E07")+1)+et}}}else Ae!=""&&(G=(0,Hr.default)(G).format(Ae));return ae?"-"+G:G}if(g(pe,0))return M(G,le);G instanceof Date&&(G=I(G,le.date1904));var kt=oe(pe,G);if(g(kt[1]))return M(G,le);if(G===!0)G="TRUE";else if(G===!1)G="FALSE";else if(G===""||G==null)return"";return ee(kt[1],G,le,kt[0])}function he(Z,G){if(typeof G!="number"){G=+G||-1;for(var le=0;le<392;++le){if(b[le]==null){G<0&&(G=le);continue}if(b[le]==Z){G=le;break}}G<0&&(G=391)}return b[G]=Z,G}n.load=he,n._table=b,n.get_table=function(){return b},n.load_table=function(G){for(var le=0;le!=392;++le)G[le]!==void 0&&he(G[le],le)},n.init_table=k,n.format=ue};e2(vl);sk={"General Number":"General","General Date":vl._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":vl._table[15],"Short Date":vl._table[14],"Long Time":vl._table[19],"Medium Time":vl._table[18],"Short Time":vl._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:vl._table[2],Standard:vl._table[4],Percent:vl._table[10],Scientific:vl._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'},ck=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/g,n=/_x([\da-fA-F]{4})_/g;return function t(l){var a=l+"",o=a.indexOf("-1?16:10))||u}).replace(n,function(u,f){return String.fromCharCode(parseInt(f,16))});var s=a.indexOf("]]>");return t(a.slice(0,o))+a.slice(o+9,s)+t(a.slice(s+3))}}(),t2=new Date(1899,11,31,0,0,0),uk=t2.getTime(),l2=new Date(1900,2,1,0,0,0);bo=new Date("2017-02-19T19:06:09.000Z");isNaN(bo.getFullYear())&&(bo=new Date("2/19/17"));r2=bo.getFullYear()==2017});function Ft(e,n,t,l){t==null&&(t=h.flowdata);let a=t[e][n],o;if(P(l)=="object"?(a==null?a=l:(l.f!=null?a.f=l.f:a.hasOwnProperty("f")&&delete a.f,l.spl!=null&&(a.spl=l.spl),l.ct!=null&&(a.ct=l.ct)),P(l.v)=="object"?o=l.v.v:o=l.v):o=l,o==null)return P(a)=="object"?(delete a.m,delete a.v):a=null,t[e][n]=a,a;(de(a)||(P(a)==="string"||P(a)==="number")&&a===l)&&(a={});let s=o.toString();if(s.substr(0,1)=="'")a.m=s.substr(1),a.ct={fa:"@",t:"s"},a.v=s.substr(1),a.qp=1;else if(a.qp==1)a.m=s,a.ct={fa:"@",t:"s"},a.v=s;else if(s.toUpperCase()==="TRUE")a.m="TRUE",a.ct={fa:"General",t:"b"},a.v=!0;else if(s.toUpperCase()==="FALSE")a.m="FALSE",a.ct={fa:"General",t:"b"},a.v=!1;else if(s.substr(-1)==="%"&&B(s.substring(0,s.length-1)))a.ct={fa:"0%",t:"n"},a.v=s.substring(0,s.length-1)/100,a.m=o;else if(H(o))a.m=s,a.ct!=null?a.ct.t="e":a.ct={fa:"General",t:"e"},a.v=o;else if(a.f!=null&&B(o)&&!/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(o))if(a.v=parseFloat(o),a.ct==null&&(a.ct={fa:"General",t:"n"}),a.v==Infinity||a.v==-Infinity)a.m=a.v.toString();else if(a.v.toString().indexOf("e")>-1){let u;a.v.toString().split(".").length==1?u=0:u=a.v.toString().split(".")[1].split("e")[0].length,u>5&&(u=5),a.m=a.v.toExponential(u).toString()}else{let u=Math.round(a.v*1e9)/1e9;if(a.ct==null){let f=it(u);a.m=f[0].toString()}else{let f=mt(a.ct.fa,u);a.m=f.toString()}}else if(a.ct!=null&&a.ct.fa=="@")a.m=s,a.v=o;else if(a.ct!=null&&a.ct.fa!=null&&a.ct.fa!="General"){B(o)&&(o=parseFloat(o));let u=mt(a.ct.fa,o);u===o?(u=it(o),a.m=u[0].toString(),a.ct=u[1],a.v=u[2]):(a.m=u.toString(),a.v=o)}else if(B(o)&&!/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(o))if(typeof o=="string"&&(o.split("").every(f=>f=="0"||f==".")||o.length<18)&&(o=parseFloat(o)),a.v=o,a.ct={fa:"General",t:"n"},a.v==Infinity||a.v==-Infinity)a.m=a.v.toString();else{let u=it(a.v);a.m=u[0].toString()}else{let u=it(o);a.m=u[0].toString(),a.ct=u[1],a.v=u[2]}if(!ne.allowUpdate&&!me.pointEdit&&a.ct!=null&&/^(w|W)((0?)|(0\.0+))$/.test(a.ct.fa)==!1&&a.ct.t=="n"&&a.v!=null&&parseInt(a.v).toString().length>4){let u=me.autoFormatw.toString().toUpperCase(),f=me.accuracy,d=i2(u,f);d!="General"&&(a.ct.fa=d,a.m=mt(d,a.v))}return t[e][n]=a,a}function i2(e,n){let t="0.",l;if(e=="TRUE"){if(n==null)return"w";{let a=parseInt(n);if(a==0)return"w0";t="w0.";for(let o=0;o{ht();Pt();Ml();ll();Sl();Xe()});function wl(){if(h.luckysheet_select_save.length==0)return;let e=Infinity,n=-Infinity,t=0,l=0,a=0;for(let u=0;un&&(n=g))}}let o=Q().formula,s="";s+=""+o.count+":"+l+"",(isFinite(n)||isFinite(e))&&(s+=""+o.sum+":"+mt("w",t)+"",s+=""+o.average+":"+mt("w",Math.round(t/l*1e4)/1e4)+""),isFinite(n)&&(s+=""+o.max+":"+mt("w",n)+""),isFinite(e)&&(s+=""+o.min+":"+mt("w",e)+""),$("#luckysheet-sta-content").html(s)}var za=$e(()=>{Xe();Zt();Pt();Ml();vt()});function Oa(e,n,t,l,a){t==null&&(t=!0),e||(e="down"),n||(n="cell"),a==null&&(a=!1);let o=h.luckysheet_select_save[h.luckysheet_select_save.length-1],s=o.row==null?0:o.row[0],u=o.column==null?0:o.column[0],f=o.row==null?0:o.row[0],d=o.column==null?0:o.column[0],m=o.row==null?0:o.row[1],g=o.column==null?0:o.column[1];if(p.fucntionboxshow(s,u),n=="range"){var y=h.luckysheet_shiftpositon.row[0],v=h.luckysheet_shiftpositon.column[0];let S=h.luckysheet_shiftpositon.row[1],_=h.luckysheet_shiftpositon.column[1];e=="down"||e=="up"?Sf?s=o.row==null?0:o.row[0]:S==m&&y==f&&(e=="down"?s=o.row==null?0:o.row[1]:s=o.row==null?0:o.row[0]):(e=="right"||e=="left")&&(_d?u=o.column==null?0:o.column[0]:_==g&&v==d&&(e=="right"?u=o.column==null?0:o.column[1]:u=o.column==null?0:o.column[0]))}let k=h.flowdata.length,b=h.flowdata[0].length,w=h.flowdata,x="",C=0;if(e=="up"){if(s==0)return;{let S=[],_=null,T=0,A=null;for(let R=d;R<=g;R++){S=[],T=0;for(let I=s-1;I>=0;I--){let N=w[I][R];if(P(N)=="object"&&de(N.v)||de(N)?S.push(!1):S.push(!0),S.length>1){if(S[T]==!0&&S[T-1]==!1){_=I;break}else if(S[T]==!1&&S[T-1]==!0){_=I+1;break}}T++}_==null&&(_=0),(A==null||_1){if(S[T]==!0&&S[T-1]==!1){_=I;break}else if(S[T]==!1&&S[T-1]==!0){_=I-1;break}}T++}_==null&&(_=w.length-1),(A==null||_>A)&&(A=_)}x="down",C=A-s}}else if(e=="left"){if(u==0)return;{let S=[],_=null,T=0,A=null;for(let R=f;R<=m;R++){S=[],T=0;for(let I=u-1;I>=0;I--){let N=w[R][I];if(P(N)=="object"&&de(N.v)||de(N)?S.push(!1):S.push(!0),S.length>1){if(S[T]==!0&&S[T-1]==!1){_=I;break}else if(S[T]==!1&&S[T-1]==!0){_=I+1;break}}T++}_==null&&(_=0),(A==null||_1){if(S[T]==!0&&S[T-1]==!1){_=I;break}else if(S[T]==!1&&S[T-1]==!0){_=I-1;break}}T++}_==null&&(_=w[0].length-1),(A==null||_>A)&&(A=_)}x="right",C=A-u}}if(n=="range"&&(e=="up"?p_endRf&&C+s>y&&(C=y-s):e=="left"?p_endCd&&C+u>v&&(C=v-u),l!=null&&Math.abs(C)>Math.abs(l)&&(C=l)),!a)n=="cell"?Gt(x,C,"rangeOfSelect",t):n=="range"&&On(x,C,"rangeOfSelect",t);else return C}function Gt(e,n,t,l){l==null&&(l=!0),e||e=="down";let a=h.flowdata.length,o=h.flowdata[0].length,s,u,f,d,m,g,y,v;if(t=="rangeOfSelect"){let _=h.luckysheet_select_save[h.luckysheet_select_save.length-1],T;_.row_focus==null?T=_.row[0]:T=_.row_focus;let A;_.column_focus==null?A=_.column[0]:A=_.column_focus;let R=be.mergeborer(h.flowdata,T,A);if(R){let M=R.row[2],F=R.row[3],E=R.column[2],z=R.column[3];n>0?e=="down"?(T=F,A=E):e=="right"&&(T=M,A=z):(T=M,A=E)}let I=_.moveXY==null?T:_.moveXY.x,N=_.moveXY==null?A:_.moveXY.y;e=="down"?(T+=n,I=T):e=="right"&&(A+=n,N=A),T>=a&&(T=a-1,I=T),T<0&&(T=0,I=T),A>=o&&(A=o-1,N=A),A<0&&(A=0,N=A);let L=be.mergeborer(h.flowdata,T,A);L?(s=L.row[1],u=L.row[0],f=L.row[2],d=L.row[3],m=L.column[1],g=L.column[0],y=L.column[2],v=L.column[3]):(s=h.visibledatarow[I],u=I-1==-1?0:h.visibledatarow[I-1],m=h.visibledatacolumn[N],g=N-1==-1?0:h.visibledatacolumn[N-1],f=d=T,y=v=A),_.row=[f,d],_.column=[y,v],_.row_focus=f,_.column_focus=y,_.moveXY={x:I,y:N},tt(),Oe.pivotclick(f,y),p.fucntionboxshow(f,y)}else if(t=="rangeOfFormula"){let _=p.func_selectedrange,T;_.row_focus==null?T=_.row[0]:T=_.row_focus;let A;_.column_focus==null?A=_.column[0]:A=_.column_focus;let R=be.mergeborer(h.flowdata,T,A);if(R){let M=R.row[2],F=R.row[3],E=R.column[2],z=R.column[3];n>0?e=="down"?(T=F,A=E):e=="right"&&(T=M,A=z):(T=M,A=E)}let I=_.moveXY==null?T:_.moveXY.x,N=_.moveXY==null?A:_.moveXY.y;e=="down"?(T+=n,I=T):e=="right"&&(A+=n,N=A),T>=a&&(T=a-1,I=T),T<0&&(T=0,I=T),A>=o&&(A=o-1,N=A),A<0&&(A=0,N=A);let L=be.mergeborer(h.flowdata,T,A);L?(s=L.row[1],u=L.row[0],f=L.row[2],d=L.row[3],m=L.column[1],g=L.column[0],y=L.column[2],v=L.column[3]):(s=h.visibledatarow[I],u=I-1==-1?0:h.visibledatarow[I-1],f=I,d=I,m=h.visibledatacolumn[N],g=N-1==-1?0:h.visibledatacolumn[N-1],y=N,v=N),p.func_selectedrange={left:g,width:m-g-1,top:u,height:s-u-1,left_move:g,width_move:m-g-1,top_move:u,height_move:s-u-1,row:[f,d],column:[y,v],row_focus:f,column_focus:y,moveXY:{x:I,y:N}},$("#luckysheet-formula-functionrange-select").css({left:g,width:m-g-1,top:u,height:s-u-1}).show(),p.rangeSetValue({row:[f,d],column:[y,v]})}let k=$("#luckysheet-cell-main").scrollLeft(),b=$("#luckysheet-cell-main").scrollTop(),w=$("#luckysheet-cell-main").height(),x=$("#luckysheet-cell-main").width(),C=0,S=0;m-k-x+20>0?(C=m-x+20,l&&$("#luckysheet-scrollbar-x").scrollLeft(C)):g-k-20<0&&(C=g-20,l&&$("#luckysheet-scrollbar-x").scrollLeft(C)),s-b-w+20>0?(S=s-w+20,l&&$("#luckysheet-scrollbar-y").scrollTop(S)):u-b-20<0&&(S=u-20,l&&$("#luckysheet-scrollbar-y").scrollTop(S)),clearTimeout(h.countfuncTimeout),wl(),ne.saveParam("mv",h.currentSheetIndex,h.luckysheet_select_save)}function ca(e,n,t){t||(t=!0);let l,a,o,s;if(n=="rangeOfSelect"){let v=h.luckysheet_select_save[h.luckysheet_select_save.length-1],k=v.row_focus,b=v.column_focus,w=!1,x={};if(h.config.merge!=null&&k+"_"+b in h.config.merge&&(w=!0,x=h.config.merge[k+"_"+b]),e=="down"){if(k==h.flowdata.length-1)return;w?k=pt("down",b,x.r+x.rs-1,h.flowdata.length-1):k=pt("down",b,k,h.flowdata.length-1)}else if(e=="up"){if(k==0)return;w?k=pt("up",b,0,x.r):k=pt("up",b,0,k)}else if(e=="right"){if(b==h.flowdata[0].length-1)return;w?b=pt("right",k,x.c+x.cs-1,h.flowdata[0].length-1):b=pt("right",k,b,h.flowdata[0].length-1)}else if(e=="left"){if(b==0)return;w?b=pt("left",k,0,x.c):b=pt("left",k,0,b)}let C=[k,k],S=[b,b];l=h.visibledatarow[k],a=k-1==-1?0:h.visibledatarow[k-1],o=h.visibledatacolumn[b],s=b-1==-1?0:h.visibledatacolumn[b-1];let _=be.mergeMoveMain(S,C,v,a,l-a-1,s,o-s-1);_!=null&&(S=_[0],C=_[1]),h.luckysheet_select_save=[{row:C,column:S}],tt(),Oe.pivotclick(k,b),p.fucntionboxshow(k,b)}else if(n=="rangeOfFormula"){let v=p.func_selectedrange,k=v.row_focus,b=v.column_focus,w=!1,x={};if(h.config.merge!=null&&k+"_"+b in h.config.merge&&(w=!0,x=h.config.merge[k+"_"+b]),e=="down"){if(k==h.flowdata.length-1)return;w?k=pt("down",b,x.r+x.rs-1,h.flowdata.length-1):k=pt("down",b,k,h.flowdata.length-1)}else if(e=="up"){if(k==0)return;w?k=pt("up",b,0,x.r):k=pt("up",b,0,k)}else if(e=="right"){if(b==h.flowdata[0].length-1)return;w?b=pt("right",k,x.c+x.cs-1,h.flowdata[0].length-1):b=pt("right",k,b,h.flowdata[0].length-1)}else if(e=="left"){if(b==0)return;w?b=pt("left",k,0,x.c):b=pt("left",k,0,b)}let C=[k,k],S=[b,b];l=h.visibledatarow[k],a=k-1==-1?0:h.visibledatarow[k-1],o=h.visibledatacolumn[b],s=b-1==-1?0:h.visibledatacolumn[b-1];let _=a,T=l-a-1,A=s,R=o-s-1,I=be.mergeMoveMain(S,C,v,_,T,A,R);I!=null&&(S=I[0],C=I[1],_=I[2],T=I[3],A=I[4],R=I[5]),p.func_selectedrange={left:A,width:R,top:_,height:T,left_move:A,width_move:R,top_move:_,height_move:T,row:C,column:S,row_focus:k,column_focus:b},$("#luckysheet-formula-functionrange-select").css({left:A,width:R,top:_,height:T}).show(),p.rangeSetValue({row:C,column:S})}let u=$("#luckysheet-cell-main").scrollLeft(),f=$("#luckysheet-cell-main").scrollTop(),d=$("#luckysheet-cell-main").height(),m=$("#luckysheet-cell-main").width(),g=0,y=0;o-u-m+20>0?(g=o-m+20,t&&$("#luckysheet-scrollbar-x").scrollLeft(g)):s-u-20<0&&(g=s-20,t&&$("#luckysheet-scrollbar-x").scrollLeft(g)),l-f-d+20>0?(y=l-d+20,t&&$("#luckysheet-scrollbar-y").scrollTop(y)):a-f-20<0&&(y=a-20,t&&$("#luckysheet-scrollbar-y").scrollTop(y)),clearTimeout(h.countfuncTimeout),wl()}function On(e,n,t,l){l==null&&(l=!0),e||e=="down";let a,o,s,u;if(t=="rangeOfSelect"){let k=h.luckysheet_select_save[h.luckysheet_select_save.length-1],b=k.row[0],w=k.row[1],x=k.column[0],C=k.column[1],S=k.row_focus,_=k.column_focus,T=h.flowdata.length,A=h.flowdata[0].length;if(e=="down"){if(Bl(S,x,C)){let L=lr(S,x,C),M=L[0],F=L[1];M>b&&F==w?(n>0&&Bl(b,x,C)&&(b=lr(b,x,C)[1]),b+=n):F0?w+=n:b+=n}else S>b&&S==w?(n>0&&Bl(b,x,C)&&(b=lr(b,x,C)[1]),b+=n):S0?w+=n:b+=n);w>=T&&(w=T-1),w<0&&(w=0),b>=T&&(b=T-1),b<0&&(b=0)}else{if(Hl(_,b,w)){let L=rr(_,b,w),M=L[0],F=L[1];M>x&&F==C?(n>0&&Hl(x,b,w)&&(x=rr(x,b,w)[1]),x+=n):F0?C+=n:x+=n}else _>x&&_==C?(n>0&&Hl(x,b,w)&&(x=rr(x,b,w)[1]),x+=n):_0?C+=n:x+=n);C>=A&&(C=A-1),C<0&&(C=0),x>=A&&(x=A-1),x<0&&(x=0)}let R=[b,w],I=[x,C];a=h.visibledatarow[w],o=b-1==-1?0:h.visibledatarow[b-1],s=h.visibledatacolumn[C],u=x-1==-1?0:h.visibledatacolumn[x-1];let N=be.mergeMoveMain(I,R,k,o,a-o-1,u,s-u-1);N!=null&&(I=N[0],R=N[1]),k.row=R,k.column=I,tt()}else if(t=="rangeOfFormula"){let k=p.func_selectedrange,b=k.row[0],w=k.row[1],x=k.column[0],C=k.column[1],S=k.row_focus,_=k.column_focus,T=h.flowdata.length,A=h.flowdata[0].length;if(e=="down"){if(Bl(S,x,C)){let z=lr(S,x,C),O=z[0],V=z[1];O>b&&V==w?(n>0&&Bl(b,x,C)&&(b=lr(b,x,C)[1]),b+=n):V0?w+=n:b+=n}else S>b&&S==w?(n>0&&Bl(b,x,C)&&(b=lr(b,x,C)[1]),b+=n):S0?w+=n:b+=n);w>=T&&(w=T-1),w<0&&(w=0),b>=T&&(b=T-1),b<0&&(b=0)}else{if(Hl(_,b,w)){let z=rr(_,b,w),O=z[0],V=z[1];O>x&&V==C?(n>0&&Hl(x,b,w)&&(x=rr(x,b,w)[1]),x+=n):V0?C+=n:x+=n}else _>x&&_==C?(n>0&&Hl(x,b,w)&&(x=rr(x,b,w)[1]),x+=n):_0?C+=n:x+=n);C>=A&&(C=A-1),C<0&&(C=0),x>=A&&(x=A-1),x<0&&(x=0)}let R=[b,w],I=[x,C];a=h.visibledatarow[w],o=b-1==-1?0:h.visibledatarow[b-1],s=h.visibledatacolumn[C],u=x-1==-1?0:h.visibledatacolumn[x-1];let N=o,L=a-o-1,M=u,F=s-u-1,E=be.mergeMoveMain(I,R,k,N,L,M,F);E!=null&&(I=E[0],R=E[1],N=E[2],L=E[3],M=E[4],F=E[5]),p.func_selectedrange={left:M,width:F,top:N,height:L,left_move:M,width_move:F,top_move:N,height_move:L,row:R,column:I,row_focus:S,column_focus:_},$("#luckysheet-formula-functionrange-select").css({left:M,width:F,top:N,height:L}).show(),p.rangeSetValue({row:R,column:I})}let f=$("#luckysheet-cell-main").scrollLeft(),d=$("#luckysheet-cell-main").scrollTop(),m=$("#luckysheet-cell-main").height(),g=$("#luckysheet-cell-main").width(),y=0,v=0;s-f-g+20>0?(y=s-g+20,l&&$("#luckysheet-scrollbar-x").scrollLeft(y)):u-f-20<0&&(y=u-20,l&&$("#luckysheet-scrollbar-x").scrollLeft(y)),a-d-m+20>0?(v=a-m+20,l&&$("#luckysheet-scrollbar-y").scrollTop(v)):o-d-20<0&&(v=o-20,l&&$("#luckysheet-scrollbar-y").scrollTop(v)),clearTimeout(h.countfuncTimeout),wl()}function sn(e,n,t){t||(t=!0);let l,a,o,s;if(n=="rangeOfSelect"){let v=h.luckysheet_select_save[h.luckysheet_select_save.length-1],k=v.row_focus,b=v.column_focus,w=v.row[0],x=v.row[1],C=v.column[0],S=v.column[1];if(e=="down"){if(x==h.flowdata.length-1)return;if(Bl(k,C,S)){let R=lr(k,C,S),I=R[0],N=R[1];I>w&&N==x?w=pt("down",b,w,x):x=pt("down",b,x,h.flowdata.length-1)}else k>w&&k==x?w=pt("down",b,w,x):x=pt("down",b,x,h.flowdata.length-1)}else if(e=="up"){if(w==0)return;if(Bl(k,C,S)){let R=lr(k,C,S),I=R[0];R[1]C&&N==S?C=pt("right",k,C,S):S=pt("right",k,S,h.flowdata[0].length-1)}else b>C&&b==S?C=pt("right",k,C,S):S=pt("right",k,S,h.flowdata[0].length-1)}else if(e=="left"){if(C==0)return;if(Hl(b,w,x)){let R=rr(b,w,x),I=R[0];R[1]w&&E==x?w=pt("down",b,w,x):x=pt("down",b,x,h.flowdata.length-1)}else k>w&&k==x?w=pt("down",b,w,x):x=pt("down",b,x,h.flowdata.length-1)}else if(e=="up"){if(w==0)return;if(Bl(k,C,S)){let M=lr(k,C,S),F=M[0];M[1]C&&E==S?C=pt("right",k,C,S):S=pt("right",k,S,h.flowdata[0].length-1)}else b>C&&b==S?C=pt("right",k,C,S):S=pt("right",k,S,h.flowdata[0].length-1)}else if(e=="left"){if(C==0)return;if(Hl(b,w,x)){let M=rr(b,w,x),F=M[0];M[1]0?(g=o-m+20,t&&$("#luckysheet-scrollbar-x").scrollLeft(g)):s-u-20<0&&(g=s-20,t&&$("#luckysheet-scrollbar-x").scrollLeft(g)),l-f-d+20>0?(y=l-d+20,t&&$("#luckysheet-scrollbar-y").scrollTop(y)):a-f-20<0&&(y=a-20,t&&$("#luckysheet-scrollbar-y").scrollTop(y)),clearTimeout(h.countfuncTimeout),wl()}function Bl(e,n,t){let l=!1;for(let a=n;a<=t;a++){let o=h.flowdata[e][a];if(P(o)=="object"&&"mc"in o){l=!0;break}}return l}function Hl(e,n,t){let l=!1;for(let a=n;a<=t;a++){let o=h.flowdata[a][e];if(P(o)=="object"&&"mc"in o){l=!0;break}}return l}function lr(e,n,t){let l=0,a=h.flowdata.length-1,o=null;if(e>l)for(let u=e;u>=l;u--){for(let f=n;f<=t;f++){let d=h.flowdata[u][f];if(P(d)=="object"&&"mc"in d){let m=h.config.merge[d.mc.r+"_"+d.mc.c];(o==null||m.rl)u=o;else break}else o=l;let s=null;if(es)&&(s=m.r+m.rs-1)}}if(Bl(s+1,n,t)&&sl)for(let u=e;u>=l;u--){for(let f=n;f<=t;f++){let d=h.flowdata[f][u];if(P(d)=="object"&&"mc"in d){let m=h.config.merge[d.mc.r+"_"+d.mc.c];(o==null||m.cl)u=o;else break}else o=l;let s=null;if(es)&&(s=m.c+m.cs-1)}}if(Hl(s+1,n,t)&&s1){if(o&&u[f]==!1){a=t+f+1;break}else if(!o){if(u[f]==!1&&u[f-1]==!0){a=t+f+1;break}else if(u[f]==!0&&u[f-1]==!1){a=t+f;break}}}d==l&&(a=l),f++}}else if(e=="up"){let s=h.flowdata[l][n];P(s)=="object"&&de(s.v)||de(s)?o=!0:o=!1;let u=[],f=0;for(let d=l-1;d>=t;d--){let m=h.flowdata[d][n];if(P(m)=="object"&&de(m.v)||de(m)?u.push(!0):u.push(!1),u.length==1&&o&&u[f]==!1){a=l-(f+1);break}else if(u.length>1){if(o&&u[f]==!1){a=l-(f+1);break}else if(!o){if(u[f]==!1&&u[f-1]==!0){a=l-(f+1);break}else if(u[f]==!0&&u[f-1]==!1){a=l-f;break}}}d==t&&(a=t),f++}}else if(e=="right"){let s=h.flowdata[n][t];P(s)=="object"&&de(s.v)||de(s)?o=!0:o=!1;let u=[],f=0;for(let d=t+1;d<=l;d++){let m=h.flowdata[n][d];if(P(m)=="object"&&de(m.v)||de(m)?u.push(!0):u.push(!1),u.length==1&&o&&u[f]==!1){a=t+f+1;break}else if(u.length>1){if(o&&u[f]==!1){a=t+f+1;break}else if(!o){if(u[f]==!1&&u[f-1]==!0){a=t+f+1;break}else if(u[f]==!0&&u[f-1]==!1){a=t+f;break}}}d==l&&(a=l),f++}}else if(e=="left"){let s=h.flowdata[n][l];P(s)=="object"&&de(s.v)||de(s)?o=!0:o=!1;let u=[],f=0;for(let d=l-1;d>=t;d--){let m=h.flowdata[n][d];if(P(m)=="object"&&de(m.v)||de(m)?u.push(!0):u.push(!1),u.length==1&&o&&u[f]==!1){a=l-(f+1);break}else if(u.length>1){if(o&&u[f]==!1){a=l-(f+1);break}else if(!o){if(u[f]==!1&&u[f-1]==!0){a=l-(f+1);break}else if(u[f]==!0&&u[f-1]==!1){a=l-f;break}}}d==t&&(a=t),f++}}return a}var Ba=$e(()=>{ht();qt();Pt();za();ol();Jt();cn();Xe();ll()});var o2,el,Ha=$e(()=>{Dt();ht();qt();Pt();tl();Xt();Wt();nr();ll();Jt();Xe();vt();o2={rangefocus:!1,modelfocusIndex:null,FixedModelColor:[{head:{fc:"#000",bc:"#bfbdbe"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f8f3f7"},foot:{fc:"#000",bc:"#dde2de"}},{head:{fc:"#000",bc:"#4bd4e7"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#eaf7ff"},foot:{fc:"#000",bc:"#aae9f8"}},{head:{fc:"#000",bc:"#5ed593"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#e5fbee"},foot:{fc:"#000",bc:"#a5efcc"}},{head:{fc:"#000",bc:"#f6cb4b"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#fff9e7"},foot:{fc:"#000",bc:"#ffebac"}},{head:{fc:"#000",bc:"#f96420"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#ffe5d9"},foot:{fc:"#000",bc:"#ffcfba"}},{head:{fc:"#000",bc:"#5599fc"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#ecf2fe"},foot:{fc:"#000",bc:"#afcbfa"}},{head:{fc:"#000",bc:"#22a69b"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#dff2f8"},foot:{fc:"#000",bc:"#8dd4d0"}},{head:{fc:"#000",bc:"#7a939a"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f0eff7"},foot:{fc:"#000",bc:"#bdcad0"}},{head:{fc:"#000",bc:"#d7a270"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#fdf3f1"},foot:{fc:"#000",bc:"#ead2b6"}},{head:{fc:"#000",bc:"#89c54b"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f1f7e9"},foot:{fc:"#000",bc:"#c5e3a7"}},{head:{fc:"#000",bc:"#8f88f0"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f0e5ff"},foot:{fc:"#000",bc:"#c6c4f6"}},{head:{fc:"#000",bc:"#fd1664"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#feddee"},foot:{fc:"#000",bc:"#f98ab5"}},{head:{fc:"#000",bc:"#da96d3"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#fce8fb"},foot:{fc:"#000",bc:"#f2caee"}},{head:{fc:"#000",bc:"#b49191"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f5ebe8"},foot:{fc:"#000",bc:"#d8c3c3"}},{head:{fc:"#000",bc:"#91b493"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f0fbf0"},foot:{fc:"#000",bc:"#b4cfb6"}},{head:{fc:"#000",bc:"#b4a891"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f8f6f1"},foot:{fc:"#000",bc:"#d3cab8"}},{head:{fc:"#000",bc:"#91abb4"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#eff7fa"},foot:{fc:"#000",bc:"#b7cbd3"}},{head:{fc:"#000",bc:"#b7ba82"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#fafbeb"},foot:{fc:"#000",bc:"#dadcb4"}},{head:{fc:"#000",bc:"#df3e3e"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#fde9e9"},foot:{fc:"#000",bc:"#f89292"}},{head:{fc:"#000",bc:"#f2711c"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#fef0d7"},foot:{fc:"#000",bc:"#fbb335"}},{head:{fc:"#000",bc:"#b5cc18"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f9fbd4"},foot:{fc:"#000",bc:"#e2ed2a"}},{head:{fc:"#000",bc:"#00b5ad"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#ccfaf9"},foot:{fc:"#000",bc:"#00e4df"}},{head:{fc:"#000",bc:"#2185d0"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#d8f3fc"},foot:{fc:"#000",bc:"#3cc4f0"}},{head:{fc:"#000",bc:"#a5673f"},one:{fc:"#000",bc:"#ffffff"},two:{fc:"#000",bc:"#f6ede5"},foot:{fc:"#000",bc:"#d3a47c"}}],getModelBox:function(e,n){let t=this;$("#luckysheet-modal-dialog-slider-alternateformat #luckysheet-alternateformat-modelList").empty(),$("#luckysheet-modal-dialog-slider-alternateformat #luckysheet-alternateformat-modelCustom").empty();let l="";for(let o=0;o
\u2014 \u2014 \u2014 \u2014
'}$("#luckysheet-modal-dialog-slider-alternateformat #luckysheet-alternateformat-modelList").append(l);let a=h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_alternateformat_save_modelCustom;if(a!=null&&a.length>0){let o="";for(let s=0;s
\u2014 \u2014 \u2014 \u2014
'}$("#luckysheet-modal-dialog-slider-alternateformat #luckysheet-alternateformat-modelCustom").append(o)}},init:function(){let e=this;$("#luckysheet-modal-dialog-slider-alternateformat").remove(),$("body").append(zu()),$t(),$("#luckysheet-modal-dialog-slider-alternateformat .luckysheet-model-close-btn").click(function(){$("#luckysheet-modal-dialog-slider-alternateformat").hide(),$t()}),$(document).off("focus.AFrangeInput").on("focus.AFrangeInput","#luckysheet-alternateformat-range input",function(){e.rangefocus=!0}),$(document).off("blur.AFrangeInput").on("blur.AFrangeInput","#luckysheet-alternateformat-range input",function(){e.rangefocus=!1}),$(document).off("keydown.AFrangeInput").on("keydown.AFrangeInput","#luckysheet-alternateformat-range input",function(n){let t=$(this).val().trim();n.keyCode==13&&e.update()}),$(document).off("click.AFrangeIcon").on("click.AFrangeIcon","#luckysheet-alternateformat-range .fa-table",function(){$("#luckysheet-modal-dialog-slider-alternateformat").hide(),$t();let n=$(this).parents("#luckysheet-alternateformat-range").find("input").val().trim();e.rangeDialog(n)}),$(document).off("click.AFrDCf").on("click.AFrDCf","#luckysheet-alternateformat-rangeDialog-confirm",function(){let n=$(this).parents("#luckysheet-alternateformat-rangeDialog").find("input").val().trim();$("#luckysheet-modal-dialog-slider-alternateformat #luckysheet-alternateformat-range input").val(n),$(this).parents("#luckysheet-alternateformat-rangeDialog").hide(),$("#luckysheet-modal-dialog-slider-alternateformat").show(),$t(),e.update()}),$(document).off("click.AFrDCl").on("click.AFrDCl","#luckysheet-alternateformat-rangeDialog-close",function(){$(this).parents("#luckysheet-alternateformat-rangeDialog").hide(),$("#luckysheet-modal-dialog-slider-alternateformat").show(),$t()}),$(document).off("click.AFrDTitle").on("click.AFrDTitle","#luckysheet-alternateformat-rangeDialog .luckysheet-modal-dialog-title-close",function(){$(this).parents("#luckysheet-alternateformat-rangeDialog").hide(),$("#luckysheet-modal-dialog-slider-alternateformat").show(),$t()}),$(document).off("change.AFrowHeader").on("change.AFrowHeader","#luckysheet-alternateformat-rowHeader",function(){let n;$(this).is(":checked")?n=!0:n=!1;let t;$("#luckysheet-alternateformat-rowFooter").is(":checked")?t=!0:t=!1,e.checkboxChange(n,t),e.modelboxOn(),e.update()}),$(document).off("change.AFrowFooter").on("change.AFrowFooter","#luckysheet-alternateformat-rowFooter",function(){let n;$("#luckysheet-alternateformat-rowHeader").is(":checked")?n=!0:n=!1;let t;$(this).is(":checked")?t=!0:t=!1,e.checkboxChange(n,t),e.modelboxOn(),e.update()}),$(document).off("click.AFmodelbox").on("click.AFmodelbox","#luckysheet-modal-dialog-slider-alternateformat .modelbox",function(){let n=$(this).index(),t=$(this).parents(".cf").attr("id");if(t=="luckysheet-alternateformat-modelList")e.modelfocusIndex=n;else if(t=="luckysheet-alternateformat-modelCustom"){let l=e.FixedModelColor.length;e.modelfocusIndex=n+l}e.modelboxOn(),e.update()}),$(document).off("click.AFselectColor").on("click.AFselectColor","#luckysheet-modal-dialog-slider-alternateformat .luckysheet-color-menu-button-indicator",function(){let n=$(this).closest(".toningbox"),t,l;$(this).find(".luckysheet-icon-img").hasClass("luckysheet-icon-text-color")?(t="fc",l=n.find(".toningShow").data("fc")):$(this).find(".luckysheet-icon-img").hasClass("luckysheet-icon-cell-color")&&(t="bc",l=n.find(".toningShow").data("bc"));let a;n.hasClass("header")?a="0":n.hasClass("ctOne")?a="1":n.hasClass("ctTwo")?a="2":n.hasClass("footer")&&(a="3"),e.colorSelectDialog(l,t,a)}),$(document).off("click.AFselectColorConfirm").on("click.AFselectColorConfirm","#luckysheet-alternateformat-colorSelect-dialog-confirm",function(){let n=$(this).parents("#luckysheet-alternateformat-colorSelect-dialog"),l=Q().alternatingColors;$("#luckysheet-modal-dialog-mask").hide(),n.hide();let a=n.find(".currenColor span").attr("title"),o;n.find(".luckysheet-modal-dialog-title-text").text()==l.selectionTextColor?o="fc":n.find(".luckysheet-modal-dialog-title-text").text()==l.selectionCellColor&&(o="bc");let s=n.find(".currenColor").attr("data-source");s=="0"?(o=="fc"&&($("#luckysheet-alternateformat-modelToning .header .toningShow").css("color",a),$("#luckysheet-alternateformat-modelToning .header .toningShow").data("fc",a),$("#luckysheet-alternateformat-modelToning .header .luckysheet-icon-text-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a)),o=="bc"&&($("#luckysheet-alternateformat-modelToning .header .toningShow").css("background-color",a),$("#luckysheet-alternateformat-modelToning .header .toningShow").data("bc",a),$("#luckysheet-alternateformat-modelToning .header .luckysheet-icon-cell-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a))):s=="1"?(o=="fc"&&($("#luckysheet-alternateformat-modelToning .ctOne .toningShow").css("color",a),$("#luckysheet-alternateformat-modelToning .ctOne .toningShow").data("fc",a),$("#luckysheet-alternateformat-modelToning .ctOne .luckysheet-icon-text-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a)),o=="bc"&&($("#luckysheet-alternateformat-modelToning .ctOne .toningShow").css("background-color",a),$("#luckysheet-alternateformat-modelToning .ctOne .toningShow").data("bc",a),$("#luckysheet-alternateformat-modelToning .ctOne .luckysheet-icon-cell-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a))):s=="2"?(o=="fc"&&($("#luckysheet-alternateformat-modelToning .ctTwo .toningShow").css("color",a),$("#luckysheet-alternateformat-modelToning .ctTwo .toningShow").data("fc",a),$("#luckysheet-alternateformat-modelToning .ctTwo .luckysheet-icon-text-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a)),o=="bc"&&($("#luckysheet-alternateformat-modelToning .ctTwo .toningShow").css("background-color",a),$("#luckysheet-alternateformat-modelToning .ctTwo .toningShow").data("bc",a),$("#luckysheet-alternateformat-modelToning .ctTwo .luckysheet-icon-cell-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a))):s=="3"&&(o=="fc"&&($("#luckysheet-alternateformat-modelToning .footer .toningShow").css("color",a),$("#luckysheet-alternateformat-modelToning .footer .toningShow").data("fc",a),$("#luckysheet-alternateformat-modelToning .footer .luckysheet-icon-text-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a)),o=="bc"&&($("#luckysheet-alternateformat-modelToning .footer .toningShow").css("background-color",a),$("#luckysheet-alternateformat-modelToning .footer .toningShow").data("bc",a),$("#luckysheet-alternateformat-modelToning .footer .luckysheet-icon-cell-color").parents(".luckysheet-color-menu-button-indicator").css("border-bottom-color",a)));let u;$("#luckysheet-alternateformat-rowHeader").is(":checked")?u=!0:u=!1;let f;$("#luckysheet-alternateformat-rowFooter").is(":checked")?f=!0:f=!1;let d=e.modelfocusIndex,m=e.FixedModelColor.length,g,y;if(d1?l.splice(n,1):l=[];let o=$.extend(!0,[],l);e.ref(a,o),ne.allowUpdate&&ne.saveParam("all",h.currentSheetIndex,l,{k:"luckysheet_alternateformat_save"}),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-modal-dialog-slider-alternateformat").hide(),$t()})},perfect:function(){let e=this,n=$.extend(!0,{},h.luckysheet_select_save[0]),t=e.rangeIsExists(n)[1],l=$.extend(!0,{},h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_alternateformat_save[t]),a=l.cellrange;$("#luckysheet-alternateformat-range input").val(xt(h.currentSheetIndex,{row:a.row,column:a.column},h.currentSheetIndex)),h.luckysheet_select_save=[{row:a.row,column:a.column}],tt();let o=l.hasRowHeader,s=l.hasRowFooter,u=l.format;e.modelfocusIndex=e.getIndexByFormat(u),e.modelfocusIndex==null&&(e.addCustomModel(u),e.modelfocusIndex=e.getIndexByFormat(u)),e.checkboxChange(o,s),e.modelboxOn(),$("#luckysheet-alternateformat-remove").data("index",t)},checkboxChange:function(e,n){e?($("#luckysheet-alternateformat-rowHeader").prop("checked",!0),$("#luckysheet-alternateformat-modelToning .header").show()):($("#luckysheet-alternateformat-rowHeader").removeAttr("checked"),$("#luckysheet-alternateformat-modelToning .header").hide()),n?($("#luckysheet-alternateformat-rowFooter").prop("checked",!0),$("#luckysheet-alternateformat-modelToning .footer").show()):($("#luckysheet-alternateformat-rowFooter").removeAttr("checked"),$("#luckysheet-alternateformat-modelToning .footer").hide()),this.getModelBox(e,n)},modelboxOn:function(){let e=this;$("#luckysheet-modal-dialog-slider-alternateformat .modelbox").removeClass("on");let n=e.modelfocusIndex,t=e.FixedModelColor.length;n"+a.currentColor+"\uFF1A
",botton:'",style:"z-index:100003"}));let f=$("#luckysheet-alternateformat-colorSelect-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),d=f.outerHeight(),m=f.outerWidth(),g=$(window).width(),y=$(window).height(),v=$(document).scrollLeft(),k=$(document).scrollTop();$("#luckysheet-alternateformat-colorSelect-dialog").css({left:(g+v-m)/2,top:(y+k-d)/3}).show(),$("#luckysheet-alternateformat-colorSelect-dialog").find(".colorshowbox").spectrum({showPalette:!0,showPaletteOnly:!0,preferredFormat:"hex",clickoutFiresChange:!1,showInitial:!0,showInput:!0,flat:!0,hideAfterPaletteSelect:!0,showSelectionPalette:!0,showButtons:!1,maxPaletteSize:8,maxSelectionSize:8,color:e,cancelText:o.cancel,chooseText:s.confirmColor,togglePaletteMoreText:s.customColor,togglePaletteLessText:s.collapse,togglePaletteOnly:!0,clearText:s.clearText,noColorSelectedText:s.noColorSelectedText,localStorageKey:"spectrum.textcolor"+ne.gridKey,palette:[["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],["#f00","#f90","#ff0","#0f0","#0ff","#00f","#90f","#f0f"],["#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d0e0e3","#cfe2f3","#d9d2e9","#ead1dc"],["#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#9fc5e8","#b4a7d6","#d5a6bd"],["#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6fa8dc","#8e7cc3","#c27ba0"],["#c00","#e69138","#f1c232","#6aa84f","#45818e","#3d85c6","#674ea7","#a64d79"],["#900","#b45f06","#bf9000","#38761d","#134f5c","#0b5394","#351c75","#741b47"],["#600","#783f04","#7f6000","#274e13","#0c343d","#073763","#20124d","#4c1130"]],move:function(b){b!=null?b=b.toHexString():b="#000",$("#luckysheet-alternateformat-colorSelect-dialog .currenColor span").css("background-color",b).attr("title",b)}})},rangeDialog:function(e){$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-alternateformat-rangeDialog").remove();let n=Q(),t=n.alternatingColors,l=n.button;$("body").append(_e(dt,{id:"luckysheet-alternateformat-rangeDialog",addclass:"luckysheet-alternateformat-rangeDialog",title:t.selectRange,content:'',botton:'",style:"z-index:100003"}));let a=$("#luckysheet-alternateformat-rangeDialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),o=a.outerHeight(),s=a.outerWidth(),u=$(window).width(),f=$(window).height(),d=$(document).scrollLeft(),m=$(document).scrollTop();$("#luckysheet-alternateformat-rangeDialog").css({left:(u+d-s)/2,top:(f+m-o)/3}).show()},rangeIsExists:function(e,n){let t=this,l=!1,a=null,o=$.extend(!0,[],h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_alternateformat_save);if(n!=null&&n!=null&&(o.length>1?o.splice(n,1):o=[]),o.length>0){let s=[];for(let f=0;f0)for(let o=0;o0)for(let t=0;t1)for(let g=u+1;gu)for(let g=d;g<=m;g++)n[f+"_"+g]=[a.foot.fc,a.foot.bc]}else if(o){for(let g=d;g<=m;g++)n[u+"_"+g]=[a.head.fc,a.head.bc];if(f>u)for(let g=u+1;g<=f;g++){let y,v;(g-u)%2!=0?(y=a.one.fc,v=a.one.bc):(y=a.two.fc,v=a.two.bc);for(let k=d;k<=m;k++)n[g+"_"+k]=[y,v]}}else if(s){if(f>u)for(let g=u;g{ht();s2={parseJsonParm:function(e){if(e==null)return{};if(P(e)=="string")try{return new Function("return "+e)()}catch(n){return{}}else return e},hasKey:function(e){let t=this.parseJsonParm(e);for(let l in t)return!0;return!1}},Bn=s2});function Hn(e,n,t,l,a,o,s,u,f,d){if(n?(e.addClass("luckysheet-filter-options-active").data("rowhidden",JSON.stringify(t)).data("caljs",JSON.stringify(l)).html(''),l!=null&&(e.data("byconditionvalue",l.value).data("byconditiontype",l.type).data("byconditiontext",l.text),l.value1!=null&&e.data("byconditionvalue1",l.value1),l.value2!=null&&e.data("byconditionvalue2",l.value2))):(e.removeClass("luckysheet-filter-options-active").data("rowhidden","").data("caljs","").html(''),e.data("byconditionvalue","null").data("byconditiontype","0").data("byconditiontext","\u65E0").data("byconditionvalue1","").data("byconditionvalue2","")),a){let m=h.luckysheetfile[K(h.currentSheetIndex)];if(m.filter==null&&(m.filter={}),n){let g={caljs:l,rowhidden:t,optionstate:n,str:o,edr:s,cindex:u,stc:f,edc:d};m.filter[u-f]=g}else delete m.filter[u-f];ne.saveParam("all",h.currentSheetIndex,m.filter,{k:"filter"})}}function td(e,n,t,l,a,o){let s=we.deepCopyFlowData(h.flowdata);e=e+1;let u=!1,f=[];for(let m=e;m<=t;m++){let g=[];for(let y=n;y<=l;y++){if(s[m][y]!=null&&s[m][y].mc!=null){u=!0;break}g.push(s[m][y])}f.push(g)}if(u){let m=Q().filter;fe()?alert(m.mergeError):U.info(m.mergeError,"");return}f=Vr(f,a-n,o);for(let m=e;m<=t;m++)for(let g=n;g<=l;g++)s[m][g]=f[m-e][g-n];let d={};if(h.config.rowlen!=null){let m=$.extend(!0,{},h.config);m=yl(s,e,t,m),d={cfg:m,RowlChange:!0}}Ke(s,[{row:[e,t],column:[n,l]}],d)}function Ai(){if(!It(h.currentSheetIndex,"filter"))return;if(h.luckysheet_select_save.length>1){$("#luckysheet-rightclick-menu").hide(),$("#luckysheet-filter-menu, #luckysheet-filter-submenu").hide(),$("#"+h.container).attr("tabindex",0).focus();let n=Q().splitText;fe()?alert(n.tipNoMulti):U.info(n.tipNoMulti,"");return}if(h.luckysheetfile[K(h.currentSheetIndex)].isPivotTable)return;$("#luckysheet-filter-selected-sheet"+h.currentSheetIndex+", #luckysheet-filter-options-sheet"+h.currentSheetIndex).remove();let e=h.luckysheet_select_save[0];if(e.row[0]==e.row[1]&&e.column[0]==e.column[1]){let n,t,l=e.row[1];for(let a=0;a';$("#luckysheet-cell-main").append(m);let g="";for(let v=a;v<=o;v++)if(n==null||n[v-a]==null)g+='
';else{let k;if(n[v-a].caljs!=null){let b;n[v-a].caljs.value1!=null?b='data-byconditionvalue1="'+n[v-a].caljs.value1+'" ':b="";let w;n[v-a].caljs.value2!=null?w='data-byconditionvalue2="'+n[v-a].caljs.value2+'" ':w="",k='data-caljs="'+JSON.stringify(n[v-a].caljs)+'" data-byconditionvalue="'+n[v-a].caljs.value+'" data-byconditiontype="'+n[v-a].caljs.type+'" data-byconditiontext="'+n[v-a].caljs.text+'" '+b+w}else k="";g+='
'}$("#luckysheet-cell-main").append('
'+g+"
"),$("#luckysheet-rightclick-menu").hide(),$("#luckysheet-filter-menu, #luckysheet-filter-submenu").hide(),$("#luckysheet-cell-main").scrollTop()>e.top_move&&$("#luckysheet-scrollbar-y").scrollTop(e.top_move);let y=h.luckysheetfile[K(h.currentSheetIndex)];y.filter_select=e}function ld(){let e=null,n=Q(),t=n.filter,l=n.button;$("#luckysheetfilter").click(Ai);let a=null,o=null;$(".luckysheet-cols-menu .luckysheet-cols-submenu").hover(function(){let s=$(this),u=s.attr("id"),f=$("#"+u+"_sub"),d=s.parent(),m=$(window).width(),g=$(window).height(),y=d.width(),v=f.height()+25,k=f.width()+5,b=s.offset(),w=b.top,x=b.left+y;x+k>m&&(x=b.left-k),w+v>g&&(w=g-v),f.css({top:w,left:x}).show(),o=s},function(){let s=$(this),u=s.attr("id"),f=$("#"+u+"_sub");a=setTimeout(function(){f.hide()},200)}),$(".luckysheet-rightgclick-menu-sub").hover(function(){o.addClass("luckysheet-cols-menuitem-hover"),clearTimeout(a)},function(){o.removeClass("luckysheet-cols-menuitem-hover"),$(this).hide()}),$("#luckysheet-filter-menu").mouseover(function(){clearTimeout(e),e=setTimeout(function(){$("#luckysheet-filter-submenu").hide()},500)}),$("#luckysheet-filter-submenu").mouseover(function(){clearTimeout(e)}).find(".luckysheet-cols-menuitem").click(function(s){$("#luckysheet-filter-selected span").html($(this).find(".luckysheet-cols-menuitem-content").text()).data("value",$(this).data("value")),$("#luckysheet-filter-menu .luckysheet-filter-selected-input").hide();let u=$(this).data("type"),f=$(this).attr("data-value");u=="2"?($("#luckysheet-filter-selected span").data("type","2"),$("#luckysheet-filter-menu .luckysheet-filter-selected-input2").show(),$("#luckysheet-filter-menu .luckysheet-filter-selected-input input").prop("type","number")):u=="0"?$("#luckysheet-filter-selected span").data("type","0"):($("#luckysheet-filter-selected span").data("type","1"),$("#luckysheet-filter-menu .luckysheet-filter-selected-input").eq(0).show(),f=="dateequal"||f=="datelessthan"||f=="datemorethan"?$("#luckysheet-filter-menu .luckysheet-filter-selected-input input").prop("type","date"):f=="morethan"||f=="moreequalthan"||f=="lessthan"||f=="lessequalthan"||f=="equal"||f=="noequal"?$("#luckysheet-filter-menu .luckysheet-filter-selected-input input").prop("type","number"):$("#luckysheet-filter-menu .luckysheet-filter-selected-input input").prop("type","text")),$("#luckysheet-filter-byvalue").next().slideUp(),$("#luckysheet-filter-submenu").hide()}),$("#luckysheet-filter-bycondition, #luckysheet-filter-byvalue").click(function(){let s=$(this);s.next().slideToggle(200),setTimeout(function(){s.attr("id")=="luckysheet-filter-bycondition"&&$("#luckysheet-filter-bycondition").next().is(":visible")&&$("#luckysheet-filter-selected span").text()!=t.filiterInputNone&&$("#luckysheet-filter-byvalue").next().slideUp(200),s.is($("#luckysheet-filter-bycondition"))&&$("#luckysheet-filter-bycondition").next().is(":hidden")&&$("#luckysheet-filter-byvalue").next().is(":hidden")&&$("#luckysheet-filter-byvalue").next().slideDown(200)},300)}),$("#luckysheet-filter-selected").click(function(){let s=$(this),u=s.offset(),f=$("#luckysheet-filter-submenu");f.hide();let d=$(window).height(),m=$(window).width(),g=f.width(),y=f.height(),v=u.top,k=u.left,b=d-u.top-20;u.left+g>m&&(k=u.left-g),u.top>d/2&&(v=d-u.top,v<0&&(v=0),b=u.top-20),f.css({top:v,left:k,height:b}).show(),clearTimeout(e)}),$("#luckysheet-cell-main").on("click",".luckysheet-filter-options",function(s){if(!It(h.currentSheetIndex,"filter"))return;let u=$(s.currentTarget),f=u.offset(),d=$("#luckysheet-filter-menu"),m=$(window).height(),g=$(window).width(),y=u.data("str"),v=u.data("edr"),k=u.data("cindex"),b=u.data("stc"),w=u.data("edc"),x=u.data("rowhidden")==""?{}:JSON.parse(u.data("rowhidden").replace(/\'/g,'"'));$("body .luckysheet-cols-menu").hide(),$("#luckysheet-filter-menu, #luckysheet-filter-submenu").hide(),$("#luckysheet-filter-byvalue-input").val(""),$("#luckysheet-filter-bycondition").next().hide(),$("#luckysheet-filter-byvalue").next().show(),d.data("str",y),d.data("edr",v),d.data("cindex",k),d.data("stc",b),d.data("edc",w),$("#luckysheet-filter-menu .luckysheet-filter-selected-input").hide().find("input").val(),$("#luckysheet-filter-selected span").data("type","0").data("type",null).text(t.filiterInputNone);let C=u.data("byconditiontype");if($("#luckysheet-filter-selected span").data("value",u.data("byconditionvalue")).data("type",C).text(u.data("byconditiontext")),C=="2"){let A=$("#luckysheet-filter-menu .luckysheet-filter-selected-input2").show().find("input");A.eq(0).val(u.data("byconditionvalue1")),A.eq(1).val(u.data("byconditionvalue2"))}else C=="1"&&$("#luckysheet-filter-menu .luckysheet-filter-selected-input").eq(0).show().find("input").val(u.data("byconditionvalue1"));$("#luckysheet-filter-orderby-asc").off("click").on("click",function(){td(y,b,v,w,k,!0)}),$("#luckysheet-filter-orderby-desc").off("click").on("click",function(){td(y,b,v,w,k,!1)});let S=Nr("#luckysheet-filter-byvalue-select",{text:t.filiterMoreDataTip});$("#luckysheet-filter-byvalue-select").empty().append(S.el);let _={};$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").not(this).each(function(){let A=$(this),R=A.data("rowhidden");if(R=="")return!0;R=JSON.parse(R.replace(/\'/g,'"'));for(let I in R)_[I]=0});let T=h.flowdata;return setTimeout(function(){let A={},R={},I={},N={};for(let F=y+1;F<=v;F++){if(F in _||h.flowdata[F]==null)continue;let E=h.flowdata[F][k];if(E!=null&&!de(E.v)&&E.ct!=null&&E.ct.t=="d"){let z=mt("YYYY-MM-DD",E.v),O=z.split("-")[0],V=z.split("-")[1],q=z.split("-")[2];O in A||(A[O]={}),V in A[O]||(A[O][V]={}),q in A[O][V]||(A[O][V][q]=0),A[O][V][q]++,F in x&&(R[O]=0,R[V]=0,R[q]=0)}else{let z,O;if((E==null||de(E.v))&&(E==null?void 0:E.mc)){let{r:V,c:q}=E.mc,W=h.flowdata[V][q];z=W.v,O=W.m}else E==null||de(E.v)?(z=null,O=null):(z=E.v,O=E.m);z in I||(I[z]={}),O in I[z]||(I[z][O]=0),I[z][O]++,F in x&&(N[z+"#$$$#"+O]=0)}}let L=[];if(JSON.stringify(A).length>2)for(let F in A){let E=0,z="";for(let V in A[F]){let q=0,W="";for(let ee in A[F][V]){let te=A[F][V][ee];q+=te;let se;Number(V)<10?se="0"+Number(V):se=V;let ce;Number(ee)<10?ce="0"+Number(ee):ce=ee,F in R&&V in R&&ee in R?W+='
( '+te+" )
":W+='
( '+te+" )
"}E+=q;let X;Number(V)<10?X="0"+Number(V):X=V,F in R&&V in R?z+='
( '+q+' )
'+W+"
":z+='
( '+q+' )
'+W+"
"}let O;F in R?O='
( '+E+' )
'+z+"
":O='
( '+E+' )
'+z+"
",L.unshift(O)}if(JSON.stringify(I).length>2){let F=Object.keys(I);F=wo(F,!0);for(let E=0;E( '+I[z][O]+" )":q='
( '+I[z][O]+" )
",L.push(q)}}}let M=m-f.top-350;M<0&&(M=100),$("#luckysheet-filter-byvalue-select").append("
"+L.join("")+"
"),S.close()},1),un(d,f.left,f.top+20),s.stopPropagation(),!1}),$("#luckysheet-filter-orderby-color").hover(function(){let s=$("#luckysheet-filter-menu"),u=s.data("str"),f=s.data("edr"),d=s.data("cindex"),m=s.data("stc"),g=s.data("edc"),y={},v={},k=el.getComputeMap(),b=Se.getComputeMap();for(let E=u+1;E<=f;E++){let z=h.flowdata[E][d],O=be.checkstatus(h.flowdata,E,d,"bg");O==null&&(O="#ffffff");let V=el.checksAF(E,d,k);V!=null&&(O=V[1]);let q=Se.checksCF(E,d,b);q!=null&&q.cellColor!=null&&(O=q.cellColor),O.indexOf("rgb")>-1&&(O=Ln(O)),O.length==4&&(O=O.substr(0,1)+O.substr(1,1).repeat(2)+O.substr(2,1).repeat(2)+O.substr(3,1).repeat(2));let W=be.checkstatus(h.flowdata,E,d,"fc");V!=null&&(W=V[0]),q!=null&&q.textColor!=null&&(W=q.textColor),W.indexOf("rgb")>-1&&(W=Ln(W)),W.length==4&&(W=W.substr(0,1)+W.substr(1,1).repeat(2)+W.substr(2,1).repeat(2)+W.substr(3,1).repeat(2)),h.config!=null&&h.config.rowhidden!=null&&E in h.config.rowhidden?(y[O]=1,z!=null&&!de(z.v)&&(v[W]=1)):(y[O]=0,z!=null&&!de(z.v)&&(v[W]=0))}let w="";if(JSON.stringify(y).length>2&&Object.keys(y).length>1){let E="";for(let z in y)y[z]==0?E+='
':E+='
';w='
'+t.filiterByColorTip+'
'+E+"
"}let x="";if(JSON.stringify(v).length>2&&Object.keys(v).length>1){let E="";for(let z in v)v[z]==0?E+='
':E+='
';x='
'+t.filiterByTextColorTip+'
'+E+"
"}let C;w==""&&x==""?C='
'+t.filterContainerOneColorTip+"
":C=w+x+'
",$("#luckysheet-filter-orderby-color-submenu").remove(),$("body").append('
'+C+"
");let S=$("#luckysheet-filter-orderby-color-submenu").end(),_=$(this).parent(),T=$(window).width(),A=$(window).height(),R=_.width(),I=S.height()+25,N=S.width()+5,L=$(this).offset(),M=L.top,F=L.left+R;F+N>T&&(F=L.left-N),M+I>A&&(M=A-I),$("#luckysheet-filter-orderby-color-submenu").css({top:M,left:F}).show()},function(){a=setTimeout(function(){$("#luckysheet-filter-orderby-color-submenu").hide()},200)}),$(document).on("mouseover mouseleave","#luckysheet-filter-orderby-color-submenu",function(s){s.type==="mouseover"?clearTimeout(a):$(this).hide()}),$(document).on("click","#luckysheet-filter-orderby-color-submenu .item label",function(){$(this).siblings("input[type='checkbox']").click()}),$(document).off("click.orderbyColorConfirm").on("click.orderbyColorConfirm","#luckysheet-filter-orderby-color-submenu #luckysheet-filter-orderby-color-confirm",function(){let s={},u={};$("#luckysheet-filter-orderby-color-submenu .item").each(function(M,F){if($(F).find("input[type='checkbox']").is(":checked")){let E=$(this).find("label").attr("title"),z=$(this).closest(".box").attr("id");z=="filterBgColor"?s[E]=0:z=="filterFcColor"&&(u[E]=0)}});let f;$("#luckysheet-filter-orderby-color-submenu #filterBgColor").length>0?f=!0:f=!1;let d;$("#luckysheet-filter-orderby-color-submenu #filterFcColor").length>0?d=!0:d=!1;let m=$("#luckysheet-filter-menu"),g=m.data("str"),y=m.data("edr"),v=m.data("cindex"),k=m.data("stc"),b=m.data("edc"),w={};$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").not($("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").eq(v-k).get(0)).each(function(){let M=$(this),F=M.data("rowhidden");if(F=="")return!0;F=JSON.parse(F);for(let E in F)w[E]=0});let x={},C={},S={},_=el.getComputeMap(),T=Se.getComputeMap();for(let M=g+1;M<=y;M++){if(M in w||h.flowdata[M]==null)continue;let F=h.flowdata[M][v],E=be.checkstatus(h.flowdata,M,v,"bg"),z=el.checksAF(M,v,_);z!=null&&(E=z[1]);let O=Se.checksCF(M,v,T);O!=null&&O.cellColor!=null&&(E=O.cellColor),E=E==null?"#ffffff":E,E.indexOf("rgb")>-1&&(E=Ln(E)),E.length==4&&(E=E.substr(0,1)+E.substr(1,1).repeat(2)+E.substr(2,1).repeat(2)+E.substr(3,1).repeat(2));let V=be.checkstatus(h.flowdata,M,v,"fc");z!=null&&(V=z[0]),O!=null&&O.textColor!=null&&(V=O.textColor),V.indexOf("rgb")>-1&&(V=Ln(V)),V.length==4&&(V=V.substr(0,1)+V.substr(1,1).repeat(2)+V.substr(2,1).repeat(2)+V.substr(3,1).repeat(2)),f&&d?!(E in s)&&(!(V in u)||F==null||de(F.v))&&(C[M]=0):f?E in s||(C[M]=0):d&&(!(V in u)||F==null||de(F.v))&&(C[M]=0)}let A=$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").eq(v-k),R=Object.keys(C).length>0,I=$.extend(!0,w,C),N=Bn.parseJsonParm(A.data("rowhidden"));Hn(A,R,C,S,!0,g,y,v,k,b);let L=$.extend(!0,{},h.config);if(L.rowhidden=I,h.clearjfundo){let M={};M.type="datachangeAll_filter",M.sheetIndex=h.currentSheetIndex,M.config=$.extend(!0,{},h.config),M.curconfig=L,M.optionstate=R,M.optionsindex=v-k,M.rowhidden=$.extend(!0,{},C),M.rowhidenPre=$.extend(!0,{},N),S!=null&&(M.caljs=S),h.jfundo.length=0,h.jfredo.push(M)}h.config=L,h.luckysheetfile[K(h.currentSheetIndex)].config=h.config,ne.saveParam("cg",h.currentSheetIndex,L.rowhidden,{k:"rowhidden"}),St(h.flowdata.length,h.flowdata[0].length),$("#luckysheet-filter-menu, #luckysheet-filter-submenu, #luckysheet-filter-orderby-color-submenu").hide(),nl()}),$(document).off("click.filterCheckbox1").on("click.filterCheckbox1","#luckysheet-filter-byvalue-select .textBox",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).find("input[type='checkbox']").prop("checked",!0))}),$(document).off("click.filterCheckbox2").on("click.filterCheckbox2","#luckysheet-filter-byvalue-select .year",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).parents(".yearBox").find(".month").attr("data-check","false"),$(this).parents(".yearBox").find(".day").attr("data-check","false"),$(this).parents(".yearBox").find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).parents(".yearBox").find(".month").attr("data-check","true"),$(this).parents(".yearBox").find(".day").attr("data-check","true"),$(this).parents(".yearBox").find("input[type='checkbox']").prop("checked",!0))}),$(document).off("click.filterCheckbox3").on("click.filterCheckbox3","#luckysheet-filter-byvalue-select .month",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).parents(".monthBox").find(".day").attr("data-check","false"),$(this).parents(".monthBox").find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).parents(".monthBox").find(".day").attr("data-check","true"),$(this).parents(".monthBox").find("input[type='checkbox']").prop("checked",!0));let s=!0;$(this).parents(".yearBox").find(".day").each(function(f,d){$(d).attr("data-check")=="true"||(s=!1)}),s?($(this).parents(".yearBox").find(".year").attr("data-check","true"),$(this).parents(".yearBox").find(".year input[type='checkbox']").prop("checked",!0)):($(this).parents(".yearBox").find(".year").attr("data-check","false"),$(this).parents(".yearBox").find(".year input[type='checkbox']").removeAttr("checked"))}),$(document).off("click.filterCheckbox4").on("click.filterCheckbox4","#luckysheet-filter-byvalue-select .day",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).find("input[type='checkbox']").prop("checked",!0));let s=!0;$(this).parents(".monthBox").find(".day").each(function(m,g){$(g).attr("data-check")=="true"||(s=!1)}),s?($(this).parents(".monthBox").find(".month").attr("data-check","true"),$(this).parents(".monthBox").find(".month input[type='checkbox']").prop("checked",!0)):($(this).parents(".monthBox").find(".month").attr("data-check","false"),$(this).parents(".monthBox").find(".month input[type='checkbox']").removeAttr("checked"));let f=!0;$(this).parents(".yearBox").find(".day").each(function(m,g){$(g).attr("data-check")=="true"||(f=!1)}),f?($(this).parents(".yearBox").find(".year").attr("data-check","true"),$(this).parents(".yearBox").find(".year input[type='checkbox']").prop("checked",!0)):($(this).parents(".yearBox").find(".year").attr("data-check","false"),$(this).parents(".yearBox").find(".year input[type='checkbox']").removeAttr("checked"))}),$(document).off("click.filterYearDropdown").on("click.filterYearDropdown","#luckysheet-filter-byvalue-select .yearBox .fa-caret-right",function(s){let u=$(this).parents(".luckysheet-mousedown-cancel");u.hasClass("year")&&$(this).parents(".yearBox").find(".monthList").slideToggle(),u.hasClass("month")&&$(this).parents(".monthBox").find(".dayList").slideToggle(),s.stopPropagation()}),$("#luckysheet-filter-byvalue-btn-all").click(function(){$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").prop("checked",!0),$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").parents(".luckysheet-mousedown-cancel").attr("data-check","true")}),$("#luckysheet-filter-byvalue-btn-clear").click(function(){$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").removeAttr("checked"),$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").parents(".luckysheet-mousedown-cancel").attr("data-check","false")}),$("#luckysheet-filter-byvalue-btn-contra").click(function(){$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").each(function(d,m){$(m).is(":checked")?($(m).removeAttr("checked"),$(m).parents(".luckysheet-mousedown-cancel").attr("data-check","false")):($(m).prop("checked",!0),$(m).parents(".luckysheet-mousedown-cancel").attr("data-check","true"))}),$("#luckysheet-filter-byvalue-select .ListBox .monthBox").each(function(d,m){let g=!0;$(m).find(".day input[type='checkbox']").each(function(v,k){$(k).is(":checked")||(g=!1)}),g?($(m).find(".month input[type='checkbox']").prop("checked",!0),$(m).attr("data-check","true")):($(m).find(".month input[type='checkbox']").removeAttr("checked"),$(m).attr("data-check","false"))}),$("#luckysheet-filter-byvalue-select .ListBox .yearBox").each(function(d,m){let g=!0;$(m).find(".day input[type='checkbox']").each(function(v,k){$(k).is(":checked")||(g=!1)}),g?($(m).find(".year input[type='checkbox']").prop("checked",!0),$(m).attr("data-check","true")):($(m).find(".year input[type='checkbox']").removeAttr("checked"),$(m).attr("data-check","false"))})}),$("#luckysheet-filter-initial").click(function(){if(!It(h.currentSheetIndex,"filter"))return;$("#luckysheet-filter-menu .luckysheet-filter-selected-input").hide().find("input").val(),$("#luckysheet-filter-selected span").data("type","0").data("type",null).text(t.conditionNone);let s={};s.type="datachangeAll_filter_clear",s.sheetIndex=h.currentSheetIndex,s.config=$.extend(!0,{},h.config),h.config.rowhidden={},s.curconfig=$.extend(!0,{},h.config),s.filter_save=$.extend(!0,{},h.luckysheet_filter_save);let u=[];$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").each(function(){let f=$(this),d=f.hasClass("luckysheet-filter-options-active"),m=Bn.parseJsonParm(f.data("rowhidden")),g=Bn.parseJsonParm(f.data("caljs"));u.push({optionstate:d,rowhidden:m,caljs:g,str:f.data("str"),edr:f.data("edr"),cindex:f.data("cindex"),stc:f.data("stc"),edc:f.data("edc")})}),s.optiongroups=u,h.jfundo.length=0,h.jfredo.push(s),$("#luckysheet-filter-selected-sheet"+h.currentSheetIndex+", #luckysheet-filter-options-sheet"+h.currentSheetIndex).remove(),$("#luckysheet-filter-menu, #luckysheet-filter-submenu").hide(),h.luckysheetfile[K(h.currentSheetIndex)].filter=null,h.luckysheetfile[K(h.currentSheetIndex)].filter_select=null,ne.saveParam("fsc",h.currentSheetIndex,null),h.luckysheetfile[K(h.currentSheetIndex)].config=h.config,ne.saveParam("cg",h.currentSheetIndex,{},{k:"rowhidden"}),St(h.flowdata.length,h.flowdata[0].length)}),$("#luckysheet-filter-byvalue-input").on("input propertychange",function(){let s=$(this).val().toString();$("#luckysheet-filter-byvalue-select .ListBox .luckysheet-mousedown-cancel").show(),s!=""&&$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").each(function(u,f){if($(f).closest(".day").length>0){let d=$(f).siblings("label").text().toString(),m=$(f).closest(".monthBox").find(".month label").text().toString();($(f).closest(".yearBox").find(".year label").text().toString()+"-"+m+"-"+d).indexOf(s)==-1&&($(f).closest(".day").hide(),$(f).closest(".dayList").find(".day:visible").length==0&&$(f).closest(".monthBox").find(".month").hide(),$(f).closest(".monthList").find(".day:visible").length==0&&$(f).closest(".yearBox").find(".year").hide())}$(f).closest(".textBox").length>0&&$(f).siblings("label").text().toString().indexOf(s)==-1&&$(f).parents(".textBox").hide()})}),$("#luckysheet-filter-cancel").click(function(){$("#luckysheet-filter-menu, #luckysheet-filter-submenu").hide()}),$("#luckysheet-filter-confirm").click(function(){let s=$("#luckysheet-filter-menu"),u=s.data("str"),f=s.data("edr"),d=s.data("cindex"),m=s.data("stc"),g=s.data("edc"),y={};$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").not($("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").eq(d-m).get(0)).each(function(){let T=$(this),A=T.data("rowhidden");if(A=="")return!0;A=JSON.parse(A.replace(/\'/g,'"'));for(let R in A)y[R]=0});let v={},k={},b={};if($("#luckysheet-filter-bycondition").next().is(":visible")&&$("#luckysheet-filter-byvalue").next().is(":hidden")&&$("#luckysheet-filter-selected span").data("value")!="null"){let T=$("#luckysheet-filter-selected span"),A=T.data("type"),R=T.data("value");if(b.value=R,b.text=T.text(),A=="0")b.type="0";else if(A=="2"){let I=$("#luckysheet-filter-menu .luckysheet-filter-selected-input2 input");b.type="2",b.value1=I.eq(0).val(),b.value2=I.eq(1).val()}else b.type="1",b.value1=$("#luckysheet-filter-menu .luckysheet-filter-selected-input").eq(0).find("input").val();for(let I=u+1;I<=f;I++){if(I in y||h.flowdata[I]==null)continue;let N=h.flowdata[I][d];if(R=="cellnull")N!=null&&!de(N.v)&&(k[I]=0);else if(R=="cellnonull")(N==null||de(N.v))&&(k[I]=0);else if(R=="textinclude"){let L=b.value1;(N==null||de(N.v)||N.m.indexOf(L)==-1)&&(k[I]=0)}else if(R=="textnotinclude"){let L=b.value1;N==null||de(N.v)||N.m.indexOf(L)>-1&&(k[I]=0)}else if(R=="textstart"){let L=b.value1,M=L.length;(N==null||de(N.v)||N.m.substr(0,M)!=L)&&(k[I]=0)}else if(R=="textend"){let L=b.value1,M=L.length;(N==null||de(N.v)||M>N.m.length||N.m.substr(N.m.length-M,M)!=L)&&(k[I]=0)}else if(R=="textequal"){let L=b.value1;(N==null||de(N.v)||N.m!=L)&&(k[I]=0)}else if(R=="dateequal"){let L=it(b.value1)[2];N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="d"?parseInt(N.v)!=L&&(k[I]=0):k[I]=0}else if(R=="datelessthan"){let L=it(b.value1)[2];N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="d"?parseInt(N.v)>=L&&(k[I]=0):k[I]=0}else if(R=="datemorethan"){let L=it(b.value1)[2];N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="d"?parseInt(N.v)<=L&&(k[I]=0):k[I]=0}else if(R=="morethan"){let L=parseFloat(b.value1);N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="n"?N.v<=L&&(k[I]=0):k[I]=0}else if(R=="moreequalthan"){let L=parseFloat(b.value1);N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="n"?N.v=L&&(k[I]=0):k[I]=0}else if(R=="lessequalthan"){let L=parseFloat(b.value1);N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="n"?N.v>L&&(k[I]=0):k[I]=0}else if(R=="equal"){let L=parseFloat(b.value1);N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="n"?N.v!=L&&(k[I]=0):k[I]=0}else if(R=="noequal"){let L=parseFloat(b.value1);N==null||de(N.v)?k[I]=0:N.ct!=null&&N.ct.t=="n"?N.v==L&&(k[I]=0):k[I]=0}else if(R=="include"){let L=parseFloat(b.value1),M=parseFloat(b.value2),F,E;LE)&&(k[I]=0):k[I]=0}else if(R=="noinclude"){let L=parseFloat(b.value1),M=parseFloat(b.value2),F,E;L=F&&N.v<=E&&(k[I]=0):k[I]=0}}}else{$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']").each(function(T,A){if($(A).is(":visible")&&$(A).is(":checked"))return!0;if($(A).closest(".day").length>0){let R=$(A).siblings("label").text();Number(R)<10&&(R="0"+Number(R));let I=$(A).closest(".monthBox").find(".month label").text().replace(t.filiterMonthText,"");Number(I)<10&&(I="0"+Number(I));let N=$(A).closest(".yearBox").find(".year label").text().replace(t.filiterYearText,""),L=t.filterDateFormatTip+"#$$$#"+N+"-"+I+"-"+R;v[L]="1"}if($(A).closest(".textBox").length>0){let R=$(A).closest(".textBox").data("filter");v[R]="1"}});for(let T=u+1;T<=f;T++){if(T in y||h.flowdata[T]==null)continue;let A=h.flowdata[T][d],R;if((A==null||de(A.v))&&(A==null?void 0:A.mc)){let{r:I,c:N}=A.mc,L=h.flowdata[I][N];R=L.v+"#$$$#"+L.m}else if(A==null||de(A.v))R="null#$$$#null";else if(A.ct!=null&&A.ct.t=="d"){let I=mt("YYYY-MM-DD",A.v);R=t.filterDateFormatTip+"#$$$#"+I}else R=A.v+"#$$$#"+A.m;R in v&&(k[T]=0)}}let w=$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").eq(d-m),x=$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']:visible:checked").length<$("#luckysheet-filter-byvalue-select .ListBox input[type='checkbox']:visible").length||$("#luckysheet-filter-byvalue-input").val().length>0||$("#luckysheet-filter-bycondition").next().is(":visible")&&$("#luckysheet-filter-byvalue").next().is(":hidden")&&$("#luckysheet-filter-selected span").data("value")!="null",C=$.extend(!0,y,k),S=Bn.parseJsonParm(w.data("rowhidden"));Hn(w,x,k,b,!0,u,f,d,m,g);let _=$.extend(!0,{},h.config);if(_.rowhidden=C,h.clearjfundo){let T={};T.type="datachangeAll_filter",T.sheetIndex=h.currentSheetIndex,T.config=$.extend(!0,{},h.config),T.curconfig=_,T.optionstate=x,T.optionsindex=d-m,T.rowhidden=$.extend(!0,{},k),T.rowhidenPre=$.extend(!0,{},S),b!=null&&(T.caljs=b),h.jfundo.length=0,h.jfredo.push(T)}h.config=_,h.luckysheetfile[K(h.currentSheetIndex)].config=h.config,ne.saveParam("cg",h.currentSheetIndex,_.rowhidden,{k:"rowhidden"}),St(h.flowdata.length,h.flowdata[0].length),$("#luckysheet-filter-menu, #luckysheet-filter-submenu").hide(),nl()})}var wn=$e(()=>{Dt();Qt();Pt();tl();pr();Jt();Ba();Wt();ll();vt();Xe();ol();yr();Ha();_l();ht();qr();Xt();ua();Va();Ml()});var Ys,Ie,jr=$e(()=>{Zl();ll();nr();Wt();_l();Dt();Rn();ht();Xe();vt();tl();zl();Ys={imgItem:{type:"3",src:"",originWidth:null,originHeight:null,default:{width:null,height:null,left:null,top:null},crop:{width:null,height:null,offsetLeft:0,offsetTop:0},isFixedPos:!1,fixedLeft:null,fixedTop:null,border:{width:0,radius:0,style:"solid",color:"#000"}},images:null,currentImgId:null,currentWinW:null,currentWinH:null,resize:null,resizeXY:null,move:!1,moveXY:null,cropChange:null,cropChangeXY:null,cropChangeObj:null,copyImgItemObj:null,insertImg:function(e){let n=h.toJsonOptions&&h.toJsonOptions.uploadImage;if(typeof n=="function")n(e).then(t=>{Ys._insertImg(t)}).catch(t=>{U.info('',"\u56FE\u7247\u4E0A\u4F20\u5931\u8D25")});else{let t=new FileReader;t.readAsDataURL(e),t.onload=function(l){let a=l.target.result;Ys._insertImg(a),$("#luckysheet-imgUpload").val("")}}},_insertImg:function(e){let n=this,t=h.luckysheet_select_save[h.luckysheet_select_save.length-1],l=t.row_focus||0,a=t.column_focus||0,o=a==0?0:h.visibledatacolumn[a-1],s=l==0?0:h.visibledatarow[l-1],u=new Image;u.onload=function(){let d=u.width,m=u.height,g={src:e,left:o,top:s,originWidth:d,originHeight:m};n.addImgItem(g)};let f=h.toJsonOptions&&h.toJsonOptions.imageUrlHandle;u.src=typeof f=="function"?f(e):e},generateRandomId:function(e){e==null&&(e="img");let n=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split(""),t="";for(let a=0;a<12;a++)t+=n[Math.round(Math.random()*(n.length-1))];let l=new Date().getTime();return e+"_"+t+"_"+l},modelHtml:function(e,n){let t=this,l=h.toJsonOptions&&h.toJsonOptions.imageUrlHandle,a=typeof l=="function"?l(n.src):n.src,o=t.getImgItemParam(n),s=o.width,u=o.height,f=o.left,d=o.top,m=o.position,g=n.border.width;return`
+
+ +
+
+
`},getSliderHtml:function(){let e=Q().imageText;return`
+
+ ${e.imageSetting} + + + +
+
+
+
${e.conventional}
+
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+
+
+
${e.border}
+
+
+ + +
+
+ + +
+
+ + +
+
+ +
+ +
+
+
+
+
+
`},sliderHtmlShow:function(){let e=this;$("#luckysheet-modal-dialog-slider-imageCtrl").remove();let n=e.getSliderHtml();$("body").append(n),$t();let t=e.images[e.currentImgId],l=t.type;$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemType"+l).prop("checked",!0);let a=t.isFixedPos;$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemIsFixedPos").prop("checked",a);let o=t.border;$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemBorderWidth").val(o.width),$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemBorderRadius").val(o.radius),$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemBorderStyle").val(o.style),$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemBorderColor span").css("background-color",o.color).attr("title",o.color),e.init()},colorSelectDialog:function(e){let n=Q(),t=n.button,l=n.toolbar,a=n.imageCtrl;$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-imageCtrl-colorSelect-dialog").remove(),$("body").append(_e(dt,{id:"luckysheet-imageCtrl-colorSelect-dialog",addclass:"luckysheet-imageCtrl-colorSelect-dialog",title:a.borderTile,content:`
+ ${a.borderCur}: +
+
`,botton:` + `,style:"z-index:100003"}));let o=$("#luckysheet-imageCtrl-colorSelect-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),s=o.outerHeight(),u=o.outerWidth(),f=$(window).width(),d=$(window).height(),m=$(document).scrollLeft(),g=$(document).scrollTop();$("#luckysheet-imageCtrl-colorSelect-dialog").css({left:(f+m-u)/2,top:(d+g-s)/3}).show(),$("#luckysheet-imageCtrl-colorSelect-dialog").find(".colorshowbox").spectrum({showPalette:!0,showPaletteOnly:!0,preferredFormat:"hex",clickoutFiresChange:!1,showInitial:!0,showInput:!0,flat:!0,hideAfterPaletteSelect:!0,showSelectionPalette:!0,showButtons:!1,maxPaletteSize:8,maxSelectionSize:8,color:e,cancelText:t.cancel,chooseText:l.confirmColor,togglePaletteMoreText:l.customColor,togglePaletteLessText:l.collapse,togglePaletteOnly:!0,clearText:l.clearText,noColorSelectedText:l.noColorSelectedText,localStorageKey:"spectrum.textcolor"+ne.gridKey,palette:[["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],["#f00","#f90","#ff0","#0f0","#0ff","#00f","#90f","#f0f"],["#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d0e0e3","#cfe2f3","#d9d2e9","#ead1dc"],["#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#9fc5e8","#b4a7d6","#d5a6bd"],["#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6fa8dc","#8e7cc3","#c27ba0"],["#c00","#e69138","#f1c232","#6aa84f","#45818e","#3d85c6","#674ea7","#a64d79"],["#900","#b45f06","#bf9000","#38761d","#134f5c","#0b5394","#351c75","#741b47"],["#600","#783f04","#7f6000","#274e13","#0c343d","#073763","#20124d","#4c1130"]],move:function(y){y!=null?y=y.toHexString():y="#000",$("#luckysheet-imageCtrl-colorSelect-dialog .currenColor span").css("background-color",y).attr("title",y)}})},init:function(){let e=this;$("#luckysheet-modal-dialog-slider-imageCtrl .luckysheet-model-close-btn").click(function(){$("#luckysheet-modal-dialog-slider-imageCtrl").hide(),$t()}),$("#luckysheet-modal-dialog-slider-imageCtrl").off("change.radio").on("change.radio",".radio-item input[type=radio][name=imgItemType]",function(){e.configChange("type",this.value)}),$("#luckysheet-modal-dialog-slider-imageCtrl").off("change.checkbox").on("change.checkbox",".slider-box-checkbox input[type=checkbox]",function(){e.configChange("fixedPos",this.checked)}),$("#luckysheet-modal-dialog-slider-imageCtrl").off("change.borderWidth").on("change.borderWidth","#imgItemBorderWidth",function(){e.configChange("border-width",this.valueAsNumber)}),$("#luckysheet-modal-dialog-slider-imageCtrl").off("change.borderRadius").on("change.borderRadius","#imgItemBorderRadius",function(){e.configChange("border-radius",this.valueAsNumber)}),$("#luckysheet-modal-dialog-slider-imageCtrl").off("change.borderStyle").on("change.borderStyle","#imgItemBorderStyle",function(){e.configChange("border-style",this.value)}),$("#luckysheet-modal-dialog-slider-imageCtrl").off("click.color").on("click.color","#imgItemBorderColor",function(){let n=$(this).find("span").attr("title");e.colorSelectDialog(n)}),$(document).off("click.selectColorConfirm").on("click.selectColorConfirm","#luckysheet-imageCtrl-colorSelect-dialog-confirm",function(){let n=$(this).parents("#luckysheet-imageCtrl-colorSelect-dialog");$("#luckysheet-modal-dialog-mask").hide(),n.hide();let t=n.find(".currenColor span").attr("title");$("#luckysheet-modal-dialog-slider-imageCtrl #imgItemBorderColor span").css("background-color",t).attr("title",t),e.configChange("border-color",t)}),$("#luckysheet-image-showBoxs").off("mousedown.active").on("mousedown.active",".luckysheet-modal-dialog-image",function(n){if(!It(h.currentSheetIndex,"editObjects",!1))return;$(this).hide();let t=$(this).attr("id");e.currentImgId!=null&&e.currentImgId!=t&&e.cancelActiveImgItem(),e.currentImgId=t;let l=e.images[t],a=e.getImgItemParam(l),o=a.width,s=a.height,u=a.left,f=a.top,d=a.position;$("#luckysheet-modal-dialog-activeImage").show().css({width:o,height:s,left:u,top:f,position:d});let m=h.toJsonOptions&&h.toJsonOptions.imageUrlHandle,g=typeof m=="function"?m(l.src):l.src;$("#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-content").css({"background-image":"url("+g+")","background-size":l.default.width*h.zoomRatio+"px "+l.default.height*h.zoomRatio+"px","background-position":-l.crop.offsetLeft*h.zoomRatio+"px "+-l.crop.offsetTop*h.zoomRatio+"px"}),$("#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-border").css({"border-width":l.border.width*h.zoomRatio,"border-style":l.border.style,"border-color":l.border.color,"border-radius":l.border.radius*h.zoomRatio,left:-l.border.width*h.zoomRatio,right:-l.border.width*h.zoomRatio,top:-l.border.width*h.zoomRatio,bottom:-l.border.width*h.zoomRatio}),e.sliderHtmlShow(),n.stopPropagation()}),$("#luckysheet-modal-dialog-activeImage").off("mousedown.move").on("mousedown.move",".luckysheet-modal-dialog-content",function(n){if(!It(h.currentSheetIndex,"editObjects",!1))return;$("#luckysheet-modal-dialog-slider-imageCtrl").is(":visible")||e.sliderHtmlShow(),e.move=!0,e.currentWinW=$("#luckysheet-cell-main")[0].scrollWidth,e.currentWinH=$("#luckysheet-cell-main")[0].scrollHeight;let t=$("#luckysheet-modal-dialog-activeImage").offset();e.moveXY=[n.pageX-t.left,n.pageY-t.top],tn(!0),n.stopPropagation()}),$("#luckysheet-modal-dialog-activeImage").off("mousedown.resize").on("mousedown.resize",".luckysheet-modal-dialog-resize-item",function(n){if(!It(h.currentSheetIndex,"editObjects",!1))return;e.currentWinW=$("#luckysheet-cell-main")[0].scrollWidth,e.currentWinH=$("#luckysheet-cell-main")[0].scrollHeight,e.resize=$(this).data("type");let t=$("#luckysheet-cell-main").scrollTop(),l=$("#luckysheet-cell-main").scrollLeft(),a=nt(n.pageX,n.pageY),o=a[0]+l,s=a[1]+t,u=$("#luckysheet-modal-dialog-activeImage").position(),f=$("#luckysheet-modal-dialog-activeImage").width(),d=$("#luckysheet-modal-dialog-activeImage").height();e.resizeXY=[o,s,f,d,u.left+l,u.top+t,l,t],tn(!0),n.stopPropagation()}),$("#luckysheet-modal-dialog-activeImage").off("mousedown.croppingEnter").on("mousedown.croppingEnter",".luckysheet-modal-controll-crop",function(n){e.croppingEnter(),n.stopPropagation()}),$("#luckysheet-modal-dialog-cropping").off("mousedown.croppingExit").on("mousedown.croppingExit",".luckysheet-modal-controll-crop",function(n){e.croppingExit(),n.stopPropagation()}),$("#luckysheet-modal-dialog-cropping").off("mousedown.cropChange").on("mousedown.cropChange",".resize-item",function(n){e.cropChange=$(this).data("type");let t=$("#luckysheet-cell-main").scrollTop(),l=$("#luckysheet-cell-main").scrollLeft(),a=nt(n.pageX,n.pageY),o=a[0]+l,s=a[1]+t;e.cropChangeXY=[o,s],tn(!0),n.stopPropagation()}),$("#luckysheet-image-showBoxs").off("mousedown.restore").on("mousedown.restore",".luckysheet-modal-controll-restore",function(n){e.restoreImgItem(),n.stopPropagation()}),$("#luckysheet-image-showBoxs").off("mousedown.delete").on("mousedown.delete",".luckysheet-modal-controll-del",function(n){e.removeImgItem(),n.stopPropagation()})},configChange:function(e,n){let t=this,l=t.images[t.currentImgId];switch(e){case"type":l.type=n;break;case"fixedPos":l.isFixedPos=n;let a=t.getImgItemParam(l),o=a.width,s=a.height,u=a.left,f=a.top,d=a.position;$("#luckysheet-modal-dialog-activeImage").show().css({width:o,height:s,left:u,top:f,position:d});break;case"border-width":l.border.width=n,$("#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-border").css({"border-width":n,left:-n,right:-n,top:-n,bottom:-n});break;case"border-radius":l.border.radius=n,$("#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-border").css("border-radius",n);break;case"border-style":l.border.style=n,$("#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-border").css("border-style",n);break;case"border-color":l.border.color=n,$("#luckysheet-modal-dialog-activeImage .luckysheet-modal-dialog-border").css("border-color",n);break}t.ref()},getImgItemParam(e){let n=e.isFixedPos,t=e.default.width*h.zoomRatio,l=e.default.height*h.zoomRatio,a=e.default.left*h.zoomRatio,o=e.default.top*h.zoomRatio;(e.crop.width!=t||e.crop.height!=l)&&(t=e.crop.width*h.zoomRatio,l=e.crop.height*h.zoomRatio,a+=e.crop.offsetLeft*h.zoomRatio,o+=e.crop.offsetTop*h.zoomRatio);let s="absolute";if(n){s="fixed",a=e.fixedLeft+e.crop.offsetLeft,o=e.fixedTop+e.crop.offsetTop;let u=h.rowHeaderWidth,f=h.infobarHeight+h.toolbarHeight+h.calculatebarHeight+h.columnHeaderHeight;a=(a-u)*h.zoomRatio+u,o=(o-f)*h.zoomRatio+f}return{width:t,height:l,left:a,top:o,position:s}},cancelActiveImgItem:function(){let e=this;$("#luckysheet-modal-dialog-activeImage").hide(),$("#luckysheet-modal-dialog-cropping").hide(),$("#luckysheet-modal-dialog-slider-imageCtrl").hide();let n=e.images[e.currentImgId],t=e.getImgItemParam(n),l=t.width,a=t.height,o=t.left,s=t.top,u=t.position;$("#"+e.currentImgId).show().css({width:l,height:a,left:o,top:s,position:u}),$("#"+e.currentImgId+" img").css({width:n.default.width*h.zoomRatio,height:n.default.height*h.zoomRatio,left:-n.crop.offsetLeft*h.zoomRatio,top:-n.crop.offsetTop*h.zoomRatio}),$("#"+e.currentImgId+" .luckysheet-modal-dialog-border").css({"border-width":n.border.width*h.zoomRatio,"border-style":n.border.style,"border-color":n.border.color,"border-radius":n.border.radius*h.zoomRatio,left:-n.border.width*h.zoomRatio,right:-n.border.width*h.zoomRatio,top:-n.border.width*h.zoomRatio,bottom:-n.border.width*h.zoomRatio}),e.currentImgId=null},addImgItem:function(e){let n=this,t,l,a=400;e.originHeight=o)d.default.top=m.top+u-d.crop.offsetTop;else if(m.top+m.height>=o-2)if(m.topo+u){let y=1/m.height;d.default.height=Math.round(d.default.height*y),d.crop.height=Math.round(d.crop.height*y),d.crop.offsetTop=Math.round(d.crop.offsetTop*y),d.default.top=o+u-d.crop.offsetTop}else if(m.top+m.height>o+u){let y=(o+u-m.top)/m.height;d.default.height=Math.round(d.default.height*y),d.crop.height=Math.round(d.crop.height*y),d.crop.offsetTop=Math.round(d.crop.offsetTop*y)}}else g=="2"&&(m.top>=o?d.default.top=m.top+u-d.crop.offsetTop:m.top>o+u&&(d.default.top=o+u-d.crop.offsetTop))}}else if(e=="column"){let o=h.visibledatacolumn[n],s=n-1==-1?0:h.visibledatacolumn[n-1],u=t-(o-s-1);for(let f in a){let d=a[f],m=l.getImgItemParam(d),g=d.type;if(g=="1"){if(m.left>=o)d.default.left=m.left+u-d.crop.offsetLeft;else if(m.left+m.width>=o-2)if(m.lefto+u){let y=1/m.width;d.default.width=Math.round(d.default.width*y),d.crop.width=Math.round(d.crop.width*y),d.crop.offsetLeft=Math.round(d.crop.offsetLeft*y),d.default.left=o+u-d.crop.offsetLeft}else if(m.left+m.width>o+u){let y=(o+u-m.left)/m.width;d.default.width=Math.round(d.default.width*y),d.crop.width=Math.round(d.crop.width*y),d.crop.offsetLeft=Math.round(d.crop.offsetLeft*y)}}else g=="2"&&(m.left>=o?d.default.left=m.left+u-d.crop.offsetLeft:m.left>o+u&&(d.default.left=o+u-d.crop.offsetLeft))}}return a},ref:function(){let e=this,n=h.luckysheetfile[K(h.currentSheetIndex)],t=e.images;h.clearjfundo&&(h.jfundo.length=0,h.jfredo.push({type:"imageCtrl",sheetIndex:h.currentSheetIndex,images:n.images==null?null:$.extend(!0,{},n.images),curImages:t})),n.images=$.extend(!0,{},t),ne.saveParam("all",h.currentSheetIndex,n.images,{k:"images"})}},Ie=Ys});function u2(e){var n=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;if(n.test(e)){if(e.length==18){for(var t=new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2),l=new Array(1,0,10,9,8,7,6,5,4,3,2),a=0,o=0;o<17;o++)a+=e.substring(o,o+1)*t[o];var s=a%11,u=e.substring(17);return s==2?u=="X"||u=="x":u==l[s]}}else return!1}var c2,Ye,vr=$e(()=>{ht();qt();Pt();Br();Xt();tl();gr();Zt();Qt();Wt();Jt();ll();ol();gl();Dt();vt();Xe();c2={defaultItem:{type:"dropdown",type2:null,value1:"",value2:"",checked:!1,remote:!1,prohibitInput:!1,hintShow:!1,hintText:""},curItem:null,dataVerification:null,selectRange:[],selectStatus:!1,optionLabel:{number:"\u6570\u503C",number_integer:"\u6574\u6570",number_decimal:"\u5C0F\u6570",bw:"\u4ECB\u4E8E",nb:"\u4E0D\u4ECB\u4E8E",eq:"\u7B49\u4E8E",ne:"\u4E0D\u7B49\u4E8E",gt:"\u5927\u4E8E",lt:"\u5C0F\u4E8E",gte:"\u5927\u4E8E\u7B49\u4E8E",lte:"\u5C0F\u4E8E\u7B49\u4E8E",include:"\u5305\u62EC",exclude:"\u4E0D\u5305\u62EC",equal:"\u7B49\u4E8E",bf:"\u65E9\u4E8E",nbf:"\u4E0D\u65E9\u4E8E",af:"\u665A\u4E8E",naf:"\u4E0D\u665A\u4E8E",card:"\u8EAB\u4EFD\u8BC1\u53F7\u7801",phone:"\u624B\u673A\u53F7"},optionLabel_en:{number:"numeric",number_integer:"integer",number_decimal:"decimal",bw:"between",nb:"not between",eq:"equal to",ne:"not equal to",gt:"greater",lt:"less than",gte:"greater or equal to",lte:"less than or equal to",include:"include",exclude:"not include",equal:"equal to",bf:"earlier than",nbf:"not earlier than",af:"later than",naf:"not later than",card:"identification number",phone:"phone number"},createDialog:function(){let e=this,n=Q(),t=n.dataVerification,l=n.toolbar,a=n.button;$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-dataVerification-dialog").remove();let o=`
+
+
${t.cellRange}
+
+ + +
+
+
+
${t.verificationCondition}
+ +
+
+
+ + +
+
+ + +
+
+
+
+ ${t.selected} \u2014\u2014 + +
+
+ ${t.notSelected} \u2014\u2014 + +
+
+
+ +
+ + - + +
+
+ +
+
+
+ +
+ +
+
+
+ +
+ + - + +
+
+ +
+
+
+ +
+ + - + +
+
+ +
+
+
+ +
+
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+
`;$("body").append(_e(dt,{id:"luckysheet-dataVerification-dialog",addclass:"luckysheet-dataVerification-dialog",title:l.dataVerification,content:o,botton:` + + `,style:"z-index:100003"}));let s=$("#luckysheet-dataVerification-dialog").find(".luckysheet-modal-dialog-content").css("min-width",350).end(),u=s.outerHeight(),f=s.outerWidth(),d=$(window).width(),m=$(window).height(),g=$(document).scrollLeft(),y=$(document).scrollTop();$("#luckysheet-dataVerification-dialog").css({left:(d+g-f)/2,top:(m+y-u)/3}).show(),e.dataAllocation()},init:function(){let e=this,n=Q().dataVerification;$(document).off("click.dropdownBtn").on("click.dropdownBtn","#luckysheet-dataVerification-dropdown-btn",function(t){e.dropdownListShow(),t.stopPropagation()}),$(document).off("click.dropdownListItem").on("click.dropdownListItem","#luckysheet-dataVerification-dropdown-List .dropdown-List-item",function(t){var l=$(this);let a=t.target.innerText;l.hasClass("multi")?(l.toggleClass("checked"),a=$.map($("#luckysheet-dataVerification-dropdown-List").children().filter(".checked"),function(f){return f.innerText}).join(",")):$("#luckysheet-dataVerification-dropdown-List").hide();let o=h.luckysheet_select_save[h.luckysheet_select_save.length-1],s=o.row_focus,u=o.column_focus;$("#luckysheet-rich-text-editor").text(a),p.updatecell(s,u),t.stopPropagation()}),$(document).off("click.dvRange").on("click.dvRange","#data-verification-range .fa-table",function(t){$("#luckysheet-dataVerification-dialog").hide();let l="0",a=$(this).siblings("input").val().trim();e.rangeDialog(l,a),e.selectRange=[];let o=e.getRangeByTxt(a);if(p.rangetosheet=h.currentSheetIndex,o[0].sheetIndex!=h.currentSheetIndex&&ve.changeSheetExec(o[0].sheetIndex),o.length>0)for(let s=0;s0)for(let s=0;s1){U.info('',"\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u62E9\u533A\u57DF\u6267\u884C\u6B64\u64CD\u4F5C\uFF0C\u8BF7\u9009\u62E9\u5355\u4E2A\u533A\u57DF\uFF0C\u7136\u540E\u518D\u8BD5");return}l=="0"?$("#luckysheet-dataVerification-dialog #data-verification-range input").val(a):l=="1"&&$("#luckysheet-dataVerification-dialog .show-box-item-dropdown .range input").val(a),$("#luckysheet-dataVerificationRange-dialog").hide(),$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-dataVerification-dialog").show(),p.rangetosheet!=null&&p.rangetosheet!=h.currentSheetIndex&&(ve.changeSheetExec(p.rangetosheet),p.rangetosheet=null),Bt([])}),$(document).off("click.dvRangeClose").on("click.dvRangeClose","#luckysheet-dataVerificationRange-dialog-close",function(t){$("#luckysheet-dataVerificationRange-dialog").hide(),$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-dataVerification-dialog").show(),p.rangetosheet!=null&&p.rangetosheet!=h.currentSheetIndex&&(ve.changeSheetExec(p.rangetosheet),p.rangetosheet=null),Bt([])}),$(document).on("click","#luckysheet-dataVerificationRange-dialog .luckysheet-modal-dialog-title-close",function(t){$("#luckysheet-dataVerificationRange-dialog").hide(),$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-dataVerification-dialog").show(),p.rangetosheet!=null&&p.rangetosheet!=h.currentSheetIndex&&(ve.changeSheetExec(p.rangetosheet),p.rangetosheet=null),Bt([])}),$(document).off("change.typeSelect").on("change.typeSelect","#data-verification-type-select",function(t){$("#luckysheet-dataVerification-dialog .show-box .show-box-item").hide();let l=this.value,a=e.curItem;if(l=="dropdown"){$("#luckysheet-dataVerification-dialog .show-box .show-box-item-dropdown").show();let o="";l==a.type&&(o=a.value1),$("#luckysheet-dataVerification-dialog .show-box-item-dropdown .data-verification-value1").val(o),$("#luckysheet-dataVerification-dialog #data-verification-multi").prop("checked",!!a.type2)}else if(l=="checkbox"){$("#luckysheet-dataVerification-dialog .show-box .show-box-item-checkbox").show();let o="",s="";l==a.type&&(o=a.value1,s=a.value2),$("#luckysheet-dataVerification-dialog .show-box-item-checkbox .data-verification-value1").val(o),$("#luckysheet-dataVerification-dialog .show-box-item-checkbox .data-verification-value2").val(s)}else if(l=="number"||l=="number_integer"||l=="number_decimal"){$("#luckysheet-dataVerification-dialog .show-box-item-number").show(),$("#luckysheet-dataVerification-dialog .show-box-item-number .input").hide();let o="bw",s="",u="";(a.type=="number"||a.type=="number_integer"||a.type=="number_decimal")&&(o=a.type2,s=a.value1,u=a.value2),$("#luckysheet-dataVerification-dialog #data-verification-number-select").val(o),o=="bw"||o=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-number .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-number .input2").show(),$("#luckysheet-dataVerification-dialog .show-box-item-number .data-verification-value1").val(s),$("#luckysheet-dataVerification-dialog .show-box-item-number .data-verification-value2").val(u)}else if(l=="text_content"){$("#luckysheet-dataVerification-dialog .show-box-item-text").show();let o="include",s="";l==a.type&&(o=a.type2,s=a.value1),$("#luckysheet-dataVerification-dialog #data-verification-text-select").val(o),$("#luckysheet-dataVerification-dialog .show-box-item-text .data-verification-value1").val(s)}else if(l=="text_length"){$("#luckysheet-dataVerification-dialog .show-box-item-textLength").show(),$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input").hide();let o="bw",s="",u="";l==a.type&&(o=a.type2,s=a.value1,u=a.value2),$("#luckysheet-dataVerification-dialog #data-verification-textLength-select").val(o),o=="bw"||o=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input2").show(),$("#luckysheet-dataVerification-dialog .show-box-item-textLength .data-verification-value1").val(s),$("#luckysheet-dataVerification-dialog .show-box-item-textLength .data-verification-value2").val(u)}else if(l=="date"){$("#luckysheet-dataVerification-dialog .show-box-item-date").show(),$("#luckysheet-dataVerification-dialog .show-box-item-date .input").hide();let o="bw",s="",u="";l==a.type&&(o=a.type2,s=a.value1,u=a.value2),$("#luckysheet-dataVerification-dialog #data-verification-date-select").val(o),o=="bw"||o=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-date .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-date .input2").show(),$("#luckysheet-dataVerification-dialog .show-box-item-date .data-verification-value1").val(s),$("#luckysheet-dataVerification-dialog .show-box-item-date .data-verification-value2").val(u)}else if(l=="validity"){$("#luckysheet-dataVerification-dialog .show-box .show-box-item-validity").show();let o="card";l==a.type&&(o=a.type2),$("#luckysheet-dataVerification-dialog #data-verification-validity-select").val(o)}}),$(document).off("change.numberSelect").on("change.numberSelect","#data-verification-number-select",function(t){$("#luckysheet-dataVerification-dialog .show-box-item-number .input").hide();let l=this.value;l=="bw"||l=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-number .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-number .input2").show()}),$(document).off("change.textLengthSelect").on("change.textLengthSelect","#data-verification-textLength-select",function(t){$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input").hide();let l=this.value;l=="bw"||l=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input2").show()}),$(document).off("change.dateSelect").on("change.dateSelect","#data-verification-date-select",function(t){$("#luckysheet-dataVerification-dialog .show-box-item-date .input").hide();let l=this.value;l=="bw"||l=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-date .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-date .input2").show()}),$(document).off("change.hintShow").on("change.hintShow","#data-verification-hint-show",function(t){this.checked?$("#luckysheet-dataVerification-dialog .data-verification-hint-text").show():$("#luckysheet-dataVerification-dialog .data-verification-hint-text").hide()}),$(document).off("click.dvSaveConfirm").on("click.dvSaveConfirm","#luckysheet-dataVerification-dialog-confirm",function(t){let l=$("#luckysheet-dataVerification-dialog #data-verification-range input").val().trim(),a=e.getRangeByTxt(l);if(a.length==0){U.info('',n.selectCellRange2);return}let o=a[a.length-1].row[0],s=a[a.length-1].row[1],u=a[a.length-1].column[0],f=a[a.length-1].column[1],d=we.deepCopyFlowData(h.flowdata);o<0&&(o=0),s>d.length-1&&(s=d.length-1),u<0&&(u=0),f>d[0].length-1&&(f=d[0].length-1);let m=$("#luckysheet-dataVerification-dialog #data-verification-type-select").val(),g=null,y="",v="";if(m=="dropdown"){if(y=$("#luckysheet-dataVerification-dialog .show-box-item-dropdown .data-verification-value1").val().trim(),y.length==0){U.info('',n.tooltipInfo1);return}g=$("#luckysheet-dataVerification-dialog #data-verification-multi").is(":checked")}else if(m=="checkbox"){if(y=$("#luckysheet-dataVerification-dialog .show-box-item-checkbox .data-verification-value1").val().trim(),v=$("#luckysheet-dataVerification-dialog .show-box-item-checkbox .data-verification-value2").val().trim(),y.length==0||v.length==0){U.info('',n.tooltipInfo2);return}}else if(m=="number"||m=="number_integer"||m=="number_decimal"){if(g=$("#luckysheet-dataVerification-dialog #data-verification-number-select").val(),y=$("#luckysheet-dataVerification-dialog .show-box-item-number .input:visible .data-verification-value1").val().trim(),!B(y)){U.info('',n.tooltipInfo3);return}if(g=="bw"||g=="nb"){if(v=$("#luckysheet-dataVerification-dialog .show-box-item-number .input:visible .data-verification-value2").val().trim(),!B(v)){U.info('',n.tooltipInfo3);return}if(Number(v)',n.tooltipInfo4);return}}}else if(m=="text_content"){if(g=$("#luckysheet-dataVerification-dialog #data-verification-text-select").val(),y=$("#luckysheet-dataVerification-dialog .show-box-item-text .data-verification-value1").val().trim(),y.length==0){U.info('',n.tooltipInfo5);return}}else if(m=="text_length"){if(g=$("#luckysheet-dataVerification-dialog #data-verification-textLength-select").val(),y=$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input:visible .data-verification-value1").val().trim(),!B(y)){U.info('',n.tooltipInfo3);return}if(!Number.isInteger(Number(y))||Number(y)<0){U.info('',n.textlengthInteger);return}if(g=="bw"||g=="nb"){if(v=$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input:visible .data-verification-value2").val().trim(),!B(v)){U.info('',n.tooltipInfo3);return}if(!Number.isInteger(Number(v))||Number(v)<0){U.info('',n.textlengthInteger);return}if(Number(v)',n.tooltipInfo4);return}}}else if(m=="date"){if(g=$("#luckysheet-dataVerification-dialog #data-verification-date-select").val(),y=$("#luckysheet-dataVerification-dialog .show-box-item-date .input:visible .data-verification-value1").val().trim(),!Ot(y)){U.info('',n.tooltipInfo6);return}if(g=="bw"||g=="nb"){if(v=$("#luckysheet-dataVerification-dialog .show-box-item-date .input:visible .data-verification-value2").val().trim(),!Ot(v)){U.info('',n.tooltipInfo6);return}if(ul(y,v)>0){U.info('',n.tooltipInfo7);return}}}else m=="validity"&&(g=$("#luckysheet-dataVerification-dialog #data-verification-validity-select").val());let k=$("#luckysheet-dataVerification-dialog #data-verification-remote").is(":checked"),b=$("#luckysheet-dataVerification-dialog #data-verification-prohibitInput").is(":checked"),w=$("#luckysheet-dataVerification-dialog #data-verification-hint-show").is(":checked"),x="";w&&(x=$("#luckysheet-dataVerification-dialog .data-verification-hint-text input").val().trim());let C={type:m,type2:g,value1:y,value2:v,checked:!1,remote:k,prohibitInput:b,hintShow:w,hintText:x},S=$.extend(!0,{},e.dataVerification),_=$.extend(!0,{},e.dataVerification);for(let T=o;T<=s;T++)for(let A=u;A<=f;A++)_[T+"_"+A]=C,m=="checkbox"&&Ft(T,A,d,C.value2);m=="checkbox"?e.refOfCheckbox(S,_,h.currentSheetIndex,d,a[a.length-1]):e.ref(S,_,h.currentSheetIndex),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-dataVerification-dialog").hide()}),$(document).off("click.delete").on("click.delete","#luckysheet-dataVerification-dialog-delete",function(t){let l=$("#luckysheet-dataVerification-dialog #data-verification-range input").val().trim(),a=e.getRangeByTxt(l);if(a.length==0){U.info('',n.selectCellRange2);return}let o=$.extend(!0,{},e.dataVerification),s=$.extend(!0,{},e.dataVerification),u=a[a.length-1].row[0],f=a[a.length-1].row[1],d=a[a.length-1].column[0],m=a[a.length-1].column[1];for(let g=u;g<=f;g++)for(let y=d;y<=m;y++)delete s[g+"_"+y];e.ref(o,s,h.currentSheetIndex),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-dataVerification-dialog").hide()}),$(document).on("click","#luckysheet-info .luckysheet-modal-dialog-title-close, #luckysheet-info .luckysheet-model-close-btn",function(t){$(this).parents("#luckysheet-info").hide(),$("#luckysheet-dataVerification-dialog").is(":visible")&&$("#luckysheet-modal-dialog-mask").show(),t.stopPropagation()})},dataAllocation:function(){let e=this,n=h.luckysheet_select_save[h.luckysheet_select_save.length-1],t=xt(h.currentSheetIndex,n,h.currentSheetIndex);$("#luckysheet-dataVerification-dialog #data-verification-range input").val(t);let l=n.row_focus||n.row[0],a=n.column_focus||n.column[0],s=$.extend(!0,{},e.dataVerification)[l+"_"+a];s==null&&(s=$.extend(!0,{},e.defaultItem)),e.curItem=s,$("#luckysheet-dataVerification-dialog #data-verification-type-select").val(s.type),$("#luckysheet-dataVerification-dialog .show-box .show-box-item").hide(),s.type=="dropdown"?($("#luckysheet-dataVerification-dialog .show-box .show-box-item-dropdown").show(),$("#luckysheet-dataVerification-dialog .show-box-item-dropdown .data-verification-value1").val(s.value1),$("#luckysheet-dataVerification-dialog #data-verification-multi").prop("checked",!!s.type2)):s.type=="checkbox"?($("#luckysheet-dataVerification-dialog .show-box .show-box-item-checkbox").show(),$("#luckysheet-dataVerification-dialog .show-box-item-checkbox .data-verification-value1").val(s.value1),$("#luckysheet-dataVerification-dialog .show-box-item-checkbox .data-verification-value2").val(s.value2)):s.type=="number"||s.type=="number_integer"||s.type=="number_decimal"?($("#luckysheet-dataVerification-dialog .show-box-item-number").show(),$("#luckysheet-dataVerification-dialog #data-verification-number-select").val(s.type2),$("#luckysheet-dataVerification-dialog .show-box-item-number .input").hide(),s.type2=="bw"||s.type2=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-number .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-number .input2").show(),$("#luckysheet-dataVerification-dialog .show-box-item-number .data-verification-value1").val(s.value1),$("#luckysheet-dataVerification-dialog .show-box-item-number .data-verification-value2").val(s.value2)):s.type=="text_content"?($("#luckysheet-dataVerification-dialog .show-box-item-text").show(),$("#luckysheet-dataVerification-dialog #data-verification-text-select").val(s.type2),$("#luckysheet-dataVerification-dialog .show-box-item-text .data-verification-value1").val(s.value1)):s.type=="text_length"?($("#luckysheet-dataVerification-dialog .show-box-item-textLength").show(),$("#luckysheet-dataVerification-dialog #data-verification-textLength-select").val(s.type2),$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input").hide(),s.type2=="bw"||s.type2=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-textLength .input2").show(),$("#luckysheet-dataVerification-dialog .show-box-item-textLength .data-verification-value1").val(s.value1),$("#luckysheet-dataVerification-dialog .show-box-item-textLength .data-verification-value2").val(s.value2)):s.type=="date"?($("#luckysheet-dataVerification-dialog .show-box-item-date").show(),$("#luckysheet-dataVerification-dialog #data-verification-date-select").val(s.type2),$("#luckysheet-dataVerification-dialog .show-box-item-date .input").hide(),s.type2=="bw"||s.type2=="nb"?$("#luckysheet-dataVerification-dialog .show-box-item-date .input1").show():$("#luckysheet-dataVerification-dialog .show-box-item-date .input2").show(),$("#luckysheet-dataVerification-dialog .show-box-item-date .data-verification-value1").val(s.value1),$("#luckysheet-dataVerification-dialog .show-box-item-date .data-verification-value2").val(s.value2)):s.type=="validity"&&($("#luckysheet-dataVerification-dialog .show-box .show-box-item-validity").show(),$("#luckysheet-dataVerification-dialog #data-verification-validity-select").val(s.type2)),$("#luckysheet-dataVerification-dialog #data-verification-remote").prop("checked",s.remote),$("#luckysheet-dataVerification-dialog #data-verification-prohibitInput").prop("checked",s.prohibitInput),$("#luckysheet-dataVerification-dialog #data-verification-hint-show").prop("checked",s.hintShow),s.hintShow?$("#luckysheet-dataVerification-dialog .data-verification-hint-text").show():$("#luckysheet-dataVerification-dialog .data-verification-hint-text").hide(),$("#luckysheet-dataVerification-dialog .data-verification-hint-text input").val(s.hintText)},rangeDialog:function(e,n){let t=this,l=Q(),a=l.dataVerification,o=l.button;$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-dataVerificationRange-dialog").remove(),$("body").append(_e(dt,{id:"luckysheet-dataVerificationRange-dialog",addclass:"luckysheet-dataVerificationRange-dialog",title:a.selectCellRange,content:``,botton:` + `,style:"z-index:100003"}));let s=$("#luckysheet-dataVerificationRange-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),u=s.outerHeight(),f=s.outerWidth(),d=$(window).width(),m=$(window).height(),g=$(document).scrollLeft(),y=$(document).scrollTop();$("#luckysheet-dataVerificationRange-dialog").css({left:(d+g-f)/2,top:(m+y-u)/3}).show()},getTxtByRange:function(e){if(e.length>0){let n=[];for(let t=0;tHint: ':y='\u63D0\u793A\uFF1A',y+=l.getHintText(d),$("#luckysheet-dataVerification-showHintBox").html(y).show().css({left:u,top:a});return}let m=ze(e,n,null);if(de(m))return;if(!l.validateCellData(m,d)){let y;h.lang=="en"?y='Failure: ':y='\u5931\u6548\uFF1A',y+=l.getFailureText(d),$("#luckysheet-dataVerification-showHintBox").html(y).show().css({left:u,top:a})}},getHintText:function(e){let n=this,t=e.hintText||"";return t.length==0&&(h.lang=="en"?e.type=="dropdown"?t+="please select an option in the drop-down list":e.type=="checkbox"||(e.type=="number"||e.type=="number_integer"||e.type=="number_decimal"?(t+="please enter a "+n.optionLabel_en[e.type]+" "+n.optionLabel_en[e.type2]+" "+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+=" and "+e.value2)):e.type=="text_content"?t+="please enter text "+n.optionLabel_en[e.type2]+" "+e.value1:e.type=="text_length"?(t+="please enter text with length "+n.optionLabel_en[e.type2]+" "+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+=" and "+e.value2)):e.type=="date"?(t+="please enter a date "+n.optionLabel_en[e.type2]+" "+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+=" and "+e.value2)):e.type=="validity"&&(t+="please enter the correct "+n.optionLabel_en[e.type2])):e.type=="dropdown"?t+="\u8BF7\u9009\u62E9\u4E0B\u62C9\u5217\u8868\u4E2D\u7684\u9009\u9879":e.type=="checkbox"||(e.type=="number"||e.type=="number_integer"||e.type=="number_decimal"?(t+="\u8BF7\u8F93\u5165"+n.optionLabel[e.type2]+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+="\u548C"+e.value2+"\u4E4B\u95F4"),t+="\u7684"+n.optionLabel[e.type]):e.type=="text_content"?t+="\u8BF7\u8F93\u5165\u5185\u5BB9"+n.optionLabel[e.type2]+e.value1+"\u7684\u6587\u672C":e.type=="text_length"?(t+="\u8BF7\u8F93\u5165\u957F\u5EA6"+n.optionLabel[e.type2]+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+="\u548C"+e.value2+"\u4E4B\u95F4"),t+="\u7684\u6587\u672C"):e.type=="date"?(t+="\u8BF7\u8F93\u5165"+n.optionLabel[e.type2]+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+="\u548C"+e.value2+"\u4E4B\u95F4"),t+="\u7684\u65E5\u671F"):e.type=="validity"&&(t+="\u8BF7\u8F93\u5165\u6B63\u786E\u7684"+n.optionLabel[e.type2]))),t},getFailureText:function(e){let n=this,t="";return h.lang=="en"?e.type=="dropdown"?t+="what you selected is not an option in the drop-down list":e.type=="checkbox"||(e.type=="number"||e.type=="number_integer"||e.type=="number_decimal"?(t+="what you entered is not a "+n.optionLabel_en[e.type]+" "+n.optionLabel_en[e.type2]+" "+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+=" and "+e.value2)):e.type=="text_content"?t+="what you entered is not text that "+n.optionLabel_en[e.type2]+" "+e.value1:e.type=="text_length"?(t+="the text you entered is not length "+n.optionLabel_en[e.type2]+" "+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+=" and "+e.value2)):e.type=="date"?(t+="the date you entered is not "+n.optionLabel_en[e.type2]+" "+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+=" and "+e.value2)):e.type=="validity"&&(t+="what you entered is not a correct "+n.optionLabel_en[e.type2])):e.type=="dropdown"?t+="\u4F60\u9009\u62E9\u7684\u4E0D\u662F\u4E0B\u62C9\u5217\u8868\u4E2D\u7684\u9009\u9879":e.type=="checkbox"||(e.type=="number"||e.type=="number_integer"||e.type=="number_decimal"?(t+="\u4F60\u8F93\u5165\u7684\u4E0D\u662F"+n.optionLabel[e.type2]+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+="\u548C"+e.value2+"\u4E4B\u95F4"),t+="\u7684"+n.optionLabel[e.type]):e.type=="text_content"?t+="\u4F60\u8F93\u5165\u7684\u4E0D\u662F\u5185\u5BB9"+n.optionLabel[e.type2]+e.value1+"\u7684\u6587\u672C":e.type=="text_length"?(t+="\u4F60\u8F93\u5165\u7684\u4E0D\u662F\u957F\u5EA6"+n.optionLabel[e.type2]+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+="\u548C"+e.value2+"\u4E4B\u95F4"),t+="\u7684\u6587\u672C"):e.type=="date"?(t+="\u4F60\u8F93\u5165\u7684\u4E0D\u662F"+n.optionLabel[e.type2]+e.value1,(e.type2=="bw"||e.type2=="nb")&&(t+="\u548C"+e.value2+"\u4E4B\u95F4"),t+="\u7684\u65E5\u671F"):e.type=="validity"&&(t+="\u4F60\u8F93\u5165\u7684\u4E0D\u662F\u4E00\u4E2A\u6B63\u786E\u7684"+n.optionLabel[e.type2])),t},validateCellData:function(e,n){let t=this,l=n.type,a=n.type2,o=n.value1,s=n.value2;if(l=="dropdown"){let u=t.getDropdownList(o);if(a&&e)return e.split(",").every(function(d){return u.indexOf(d)!==-1});let f=!1;for(let d=0;ds))||a=="nb"&&e>=o&&e<=s||a=="eq"&&e!=o||a=="ne"&&e==o||a=="gt"&&e<=o||a=="lt"&&e>=o||a=="gte"&&eo)return!1}else if(l=="text_content"){if(e=e.toString(),o=o.toString(),a=="include"&&e.indexOf(o)==-1||a=="exclude"&&e.indexOf(o)>-1||a=="equal"&&e!=o)return!1}else if(l=="text_length"){if(e=e.toString().length,o=Number(o),s=Number(s),a=="bw"&&(es)||a=="nb"&&e>=o&&e<=s||a=="eq"&&e!=o||a=="ne"&&e==o||a=="gt"&&e<=o||a=="lt"&&e>=o||a=="gte"&&eo)return!1}else if(l=="date"){if(!Ot(e)||a=="bw"&&(ul(e,o)<0||ul(e,s)>0)||a=="nb"&&ul(e,o)>=0&&ul(e,s)<=0||a=="eq"&&ul(e,o)!=0||a=="ne"&&ul(e,o)==0||a=="bf"&&ul(e,o)>=0||a=="nbf"&&ul(e,o)<0||a=="af"&&ul(e,o)<=0||a=="naf"&&ul(e,o)>0)return!1}else if(l=="validity"&&(a=="card"&&!u2(e)||a=="phone"&&!/^1[3456789]\d{9}$/.test(e)))return!1}return!0},dropdownListShow:function(){$("#luckysheet-dataVerification-showHintBox").hide();let e=this,n=h.luckysheet_select_save[h.luckysheet_select_save.length-1],t=n.row_focus,l=n.column_focus,a=h.visibledatarow[t],o=t==0?0:h.visibledatarow[t-1],s=h.visibledatacolumn[l],u=l==0?0:h.visibledatacolumn[l-1],f=be.mergeborer(h.flowdata,t,l);f&&(a=f.row[1],o=f.row[0],s=f.column[1],u=f.column[0]);let d=e.dataVerification[t+"_"+l],m=e.getDropdownList(d.value1),g="";if(d.type==="dropdown"&&d.type2){let k=ze(t,l,null),b=de(k)?[]:k.split(",");m.forEach(w=>{g+=``})}else m.forEach(k=>{g+=``});$("#luckysheet-dataVerification-dropdown-List").html(g).prop("data-index",t+"_"+l).show().css({width:s-u-1,left:u,top:a});let y=$("#luckysheet-dataVerification-dropdown-List").outerHeight(),v=$("#luckysheet-cell-main")[0].scrollHeight;a+y>v-42-6&&$("#luckysheet-dataVerification-dropdown-List").css({top:o-y})},getDropdownList:function(e){let n=[];if(p.iscelldata(e)){let t=p.getcellrange(e),l=h.luckysheetfile[K(t.sheetIndex)].data;for(let a=t.row[0];a<=t.row[1];a++)for(let o=t.column[0];o<=t.column[1];o++){if(l[a]==null)continue;let s=l[a][o];if(s==null||s.v==null)continue;let u=s.m||s.v;n.includes(u)||n.push(u)}}else{let t=e.split(",");for(let l=0;l0)for(let F=0;F=n&&(E.r+=t):l=="rightbottom"&&z>n&&(E.r+=t),g.push(E)}else if(e=="column"){let W="="+p.functionStrChange(q,"add","col",l,n,t);u[z][O]&&u[z][O].f==q&&(u[z][O].f=W),l=="lefttop"?O>=n&&(E.c+=t):l=="rightbottom"&&O>n&&(E.c+=t),g.push(E)}}}let y=s.filter_select,v=s.filter,k=null;if(y!=null&&JSON.stringify(y)!="{}"){k={filter_select:null,filter:null};let F=y.row[0],E=y.row[1],z=y.column[0],O=y.column[1];if(e=="row"){if(Fn)&&(E+=t):F==n?l=="lefttop"?(F+=t,E+=t):l=="rightbottom"&&E>n&&(E+=t):(F+=t,E+=t),v!=null){k.filter={};for(let V in v){let q=v[V].rowhidden,W={};for(let X in q)X=parseFloat(X),Xn)&&(O+=t):z==n?l=="lefttop"?(z+=t,O+=t):l=="rightbottom"&&O>n&&(O+=t):(z+=t,O+=t),v!=null)){k.filter={};for(let V in v){let q=v[V].cindex;(q==n&&l=="lefttop"||q>n)&&(q+=t),k.filter[q-z]=$.extend(!0,{},v[V]),k.filter[q-z].cindex=q,k.filter[q-z].stc=z,k.filter[q-z].edc=O}}k.filter_select={row:[F,E],column:[z,O]}}if(k!=null&&k.filter!=null){f.rowhidden==null&&(f.rowhidden={});for(let F in k.filter){let E=k.filter[F].rowhidden;for(let z in E)f.rowhidden[z]=0}}let b=s.luckysheet_conditionformat_save,w=[];if(b!=null&&b.length>0)for(let F=0;Fn)&&(W+=t):q==n?l=="lefttop"?(q+=t,W+=t):l=="rightbottom"&&W>n&&(W+=t):(q+=t,W+=t):e=="column"&&(Xn)&&(ee+=t):X==n?l=="lefttop"?(X+=t,ee+=t):l=="rightbottom"&&ee>n&&(ee+=t):(X+=t,ee+=t)),z.push({row:[q,W],column:[X,ee]})}let O=$.extend(!0,{},b[F]);O.cellrange=z,w.push(O)}let x=s.luckysheet_alternateformat_save,C=[];if(x!=null&&x.length>0)for(let F=0;Fn)&&(z+=t):E==n?l=="lefttop"?(E+=t,z+=t):l=="rightbottom"&&z>n&&(z+=t):(E+=t,z+=t):e=="column"&&(On)&&(V+=t):O==n?l=="lefttop"?(O+=t,V+=t):l=="rightbottom"&&V>n&&(V+=t):(O+=t,V+=t)),q.cellrange={row:[E,z],column:[O,V]},C.push(q)}let S={freezenhorizontaldata:null,freezenverticaldata:null};if(Y.freezenhorizontaldata!=null&&e=="row"){let F=Y.freezenhorizontaldata[2],E=Y.freezenhorizontaldata[1]-1;(E==n&&l=="lefttop"||E>n)&&(E+=t);let z=h.visibledatarow[E]-2-F+h.columnHeaderHeight;S.freezenhorizontaldata=[h.visibledatarow[E],E+1,F,Y.cutVolumn(h.visibledatarow,E+1),z]}else S.freezenhorizontaldata=Y.freezenhorizontaldata;if(Y.freezenverticaldata!=null&&e=="column"){let F=Y.freezenverticaldata[2],E=Y.freezenverticaldata[1]-1;(E==n&&l=="lefttop"||E>n)&&(E+=t);let z=h.visibledatacolumn[E]-2-F+h.rowHeaderWidth;S.freezenverticaldata=[h.visibledatacolumn[E],E+1,F,Y.cutVolumn(h.visibledatacolumn,E+1),z]}else S.freezenverticaldata=Y.freezenverticaldata;let _=s.dataVerification,T={};if(_!=null)for(let F in _){let E=Number(F.split("_")[0]),z=Number(F.split("_")[1]),O=_[F];if(e=="row")if(n0){let z=[];for(let O=0;O=ee&&W.push({row:[ee,te],column:q[X].column})}if(W.length>0){let X={rangeType:"range",borderType:f.borderInfo[O].borderType,style:f.borderInfo[O].style,color:f.borderInfo[O].color,range:W};z.push(X)}}else if(V=="cell"){let q=f.borderInfo[O].value.row_index;q===n&&N.push(JSON.parse(JSON.stringify(f.borderInfo[O]))),l=="lefttop"?n<=q&&(q+=t):n{l==="rightbottom"?O.value.row_index+=z+1:l==="lefttop"&&(O.value.row_index+=z)}),f.borderInfo.push(...L)}l=="lefttop"?n==0?new Function("d","return d.unshift("+E.join(",")+")")(u):new Function("d","return d.splice("+n+", 0, "+E.join(",")+")")(u):new Function("d","return d.splice("+(n+1)+", 0, "+E.join(",")+")")(u)}else{if(I="c",f.columnlen!=null){let z={};for(let O in f.columnlen)O=parseFloat(O),O0){let z=[];for(let O=0;O=ee&&W.push({row:q[X].row,column:[ee,te]})}if(W.length>0){let X={rangeType:"range",borderType:f.borderInfo[O].borderType,style:f.borderInfo[O].style,color:f.borderInfo[O].color,range:W};z.push(X)}}else if(V=="cell"){let q=f.borderInfo[O].value.col_index;q===n&&N.push(JSON.parse(JSON.stringify(f.borderInfo[O]))),l=="lefttop"?n<=q&&(q+=t):n{l==="rightbottom"?V.value.col_index+=z+1:l==="lefttop"&&(V.value.col_index+=z)}),f.borderInfo.push(...L)}for(let z=0;z0?$("#luckysheet-scrollbar-y").scrollTop(V-z+20):q-E-20<0&&$("#luckysheet-scrollbar-y").scrollTop(q-20),t>30&&($("#luckysheet-row-count-show").hide(),$("#luckysheet-column-count-show").hide())}}function xo(e,n){let t=we.deepCopyFlowData(h.flowdata),l=$.extend(!0,{},h.config);l.merge==null&&(l.merge={});let a=t[0].length,o=Vt([],e,a);t=t.concat(o);for(let s=0;ss.length-1&&(n=s.length-1),t>s.length-1&&(t=s.length-1)):(n>s[0].length-1&&(n=s[0].length-1),t>s[0].length-1&&(t=s[0].length-1)),n>t)return;let u=t-n+1,f=$.extend(!0,{},o.config);f.merge==null&&(f.merge={});let d={};for(let N in f.merge){let L=f.merge[N],M=L.r,F=L.c,E=L.rs,z=L.cs;e=="row"?M=n&&M+E-1=t&&(d[M+"_"+F]={r:M,c:F,rs:E-u,cs:z}):M>=n&&M<=t?M+E-1>t&&(d[n+"_"+F]={r:n,c:F,rs:M+E-1-t,cs:z}):M>t&&(d[M-u+"_"+F]={r:M-u,c:F,rs:E,cs:z}):e=="column"&&(F=n&&F+z-1=t&&(d[M+"_"+F]={r:M,c:F,rs:E,cs:z-u}):F>=n&&F<=t?F+z-1>t&&(d[M+"_"+n]={r:M,c:n,rs:E,cs:F+z-1-t}):F>t&&(d[M+"_"+(F-u)]={r:M,c:F-u,rs:E,cs:z}))}f.merge=d;let m=o.calcChain,g=[];if(m!=null&&m.length>0)for(let N=0;Nt){let O="="+p.functionStrChange(z,"del","row",null,n,u);s[M][F]&&s[M][F].f==z&&(s[M][F].f=O),M>t&&(L.r=M-u),g.push(L)}}else if(e=="column"&&(Ft)){let O="="+p.functionStrChange(z,"del","col",null,n,u);s[M][F]&&s[M][F].f==z&&(s[M][F].f=O),F>t&&(L.c=F-u),g.push(L)}}}let y=o.filter_select,v=o.filter,k=null;if(y!=null&&JSON.stringify(y)!="{}"){k={filter_select:null,filter:null};let N=y.row[0],L=y.row[1],M=y.column[0],F=y.column[1];if(e=="row"){if(N>t?(N-=u,L-=u,k.filter_select={row:[N,L],column:[M,F]}):Nt&&(O[V-u]=0);JSON.stringify(O)!="{}"&&(k.filter==null&&(k.filter={}),k.filter[E]=$.extend(!0,{},v[E]),k.filter[E].rowhidden=O,k.filter[E].str=N,k.filter[E].edr=L)}}else if(e=="column"&&(M>t?(M-=u,F-=u,k.filter_select={row:[N,L],column:[M,F]}):Mt&&(M=n,F-=u,k.filter_select={row:[N,L],column:[M,F]}),k.filter_select!=null&&v!=null))for(let E in v){let z=v[E].cindex;zt&&(z-=u,k.filter==null&&(k.filter={}),k.filter[z-M]=$.extend(!0,{},v[E]),k.filter[z-M].cindex=z,k.filter[z-M].stc=M,k.filter[z-M].edc=F)}}if(k!=null&&k.filter!=null){f.rowhidden==null&&(f.rowhidden={});for(let N in k.filter){let L=k.filter[N].rowhidden;for(let M in L)f.rowhidden[M]=0}}let b=o.luckysheet_conditionformat_save,w=[];if(b!=null&&b.length>0)for(let N=0;N=n&&z<=t||(E>t?(E-=u,z-=u):Et&&(E=n,z-=u),M.push({row:[E,z],column:[O,V]})):e=="column"&&(O>=n&&V<=t||(O>t?(O-=u,V-=u):Ot&&(O=n,V-=u),M.push({row:[E,z],column:[O,V]})))}if(M.length>0){let F=$.extend(!0,{},b[N]);F.cellrange=M,w.push(F)}}let x=o.luckysheet_alternateformat_save,C=[];if(x!=null&&x.length>0)for(let N=0;N=n&&M<=t)){let z=$.extend(!0,{},x[N]);L>t?(L-=u,M-=u):Lt&&(L=n,M-=u),z.cellrange={row:[L,M],column:[F,E]},C.push(z)}}else if(e=="column"&&!(F>=n&&E<=t)){let z=$.extend(!0,{},x[N]);F>t?(F-=u,E-=u):Ft&&(F=n,E-=u),z.cellrange={row:[L,M],column:[F,E]},C.push(z)}}let S={freezenhorizontaldata:null,freezenverticaldata:null};if(Y.freezenhorizontaldata!=null&&e=="row"){let N=Y.freezenhorizontaldata[2],L=st(h.visibledatarow,N);L==-1&&(L=0);let M=Y.freezenhorizontaldata[1]-1;M>=n&&(M=n&&(Mt&&(T[L-u+"_"+M]=F):e=="column"&&(Mt&&(T[L+"_"+(M-u)]=F))}let A=o.hyperlink,R={};if(A!=null)for(let N in A){let L=Number(N.split("_")[0]),M=Number(N.split("_")[1]),F=A[N];e=="row"?Lt&&(R[L-u+"_"+M]=F):e=="column"&&(Mt&&(R[L+"_"+(M-u)]=F))}let I;if(e=="row"){I="r",f.rowlen==null&&(f.rowlen={});let N={};for(let M in f.rowlen)Mt&&(N[M-u]=f.rowlen[M]);f.rowlen=N,f.rowhidden==null&&(f.rowhidden={});let L={};for(let M in f.rowhidden)Mt&&(L[M-u]=f.rowhidden[M]);if(f.rowhidden=L,f.borderInfo&&f.borderInfo.length>0){let M=[];for(let F=0;F=q&&O.push({row:[q,W],column:z[V].column})}if(O.length>0){let V={rangeType:"range",borderType:f.borderInfo[F].borderType,style:f.borderInfo[F].style,color:f.borderInfo[F].color,range:O};M.push(V)}}else if(E=="cell"){let z=f.borderInfo[F].value.row_index;zt&&(f.borderInfo[F].value.row_index=z-(t-n+1),M.push(f.borderInfo[F]))}}f.borderInfo=M}s.splice(n,u)}else{I="c",f.columnlen==null&&(f.columnlen={});let N={};for(let M in f.columnlen)Mt&&(N[M-u]=f.columnlen[M]);f.columnlen=N,f.colhidden==null&&(f.colhidden={});let L={};for(let M in f.colhidden)Mt&&(L[M-u]=f.colhidden[M]);if(f.colhidden=L,f.borderInfo&&f.borderInfo.length>0){let M=[];for(let F=0;F=q&&O.push({row:z[V].row,column:[q,W]})}if(O.length>0){let V={rangeType:"range",borderType:f.borderInfo[F].borderType,style:f.borderInfo[F].style,color:f.borderInfo[F].color,range:O};M.push(V)}}else if(E=="cell"){let z=f.borderInfo[F].value.col_index;zt&&(f.borderInfo[F].value.col_index=z-(t-n+1),M.push(f.borderInfo[F]))}}f.borderInfo=M}for(let M=0;MM+E-1||tF+z-1)y[M+"_"+F]={r:M,c:F,rs:E,cs:z};else if(n<=M&&t>=M+E-1&&aF+z-1||aM+E-1)y[M+"_"+F]={r:M,c:F,rs:E,cs:z};else if(l<=F&&a>=F+z-1&&t0)for(let N=0;Nt||Fa)){let O;e=="moveLeft"?(O="="+p.functionStrChange(z,"del","col",null,l,m),F>a&&M>=n&&M<=t&&(L.c=F-m)):e=="moveUp"&&(O="="+p.functionStrChange(z,"del","row",null,n,d),M>t&&F>=l&&F<=a&&(L.r=M-d)),f[M][F]&&f[M][F].f==z&&(f[M][F].f=O),k.push(L)}}let b=u.filter_select,w=u.filter,x=null;if(b!=null&&JSON.stringify(b)!="{}"){x={filter_select:null,filter:null};let N=b.row[0],L=b.row[1],M=b.column[0],F=b.column[1];if(e=="moveUp")if(M>=l&&F<=a){if(N>t?x.filter_select={row:[N-d,L-d],column:[M,F]}:Lt?x.filter_select={row:[N,L-d],column:[M,F]}:x.filter_select={row:[N,n-1],column:[M,F]}),x.filter_select!=null&&w!=null)for(let E in w){let z=w[E].rowhidden,O={};for(let V in z)Vt&&(O[V-slen]=0);x.filter==null&&(x.filter={}),x.filter[E]=$.extend(!0,{},w[E]),JSON.stringify(O)!="{}"&&(x.filter[E].rowhidden=O),x.filter[E].str=x.filter_select.row[0],x.filter[E].edr=x.filter_select.row[1]}}else if(N>=n&&L<=t){if(M>a?x.filter_select={row:[N,L],column:[M,F]}:M>=l?F>a&&(x.filter_select={row:[N,L],column:[l,F-m]}):Fa){x.filter==null&&(x.filter={}),V>a&&(V-=m);let q=V-z;x.filter[q]=$.extend(!0,{},w[E]),x.filter[q].cindex=V,x.filter[q].stc=z,x.filter[q].edc=O}}}else x.filter_select={row:[N,L],column:[M,F]},w!=null&&(x.filter=w);else if(e=="moveLeft")if(N>=n&&L<=t){if(M>a?x.filter_select={row:[N,L],column:[M-m,F-m]}:Fa?x.filter_select={row:[N,L],column:[M,F-m]}:x.filter_select={row:[N,L],column:[M,l-1]}),x.filter_select!=null&&w!=null)for(let E in w){let z=x.filter_select.column[0],O=x.filter_select.column[1],V=w[E].cindex;if(Va){x.filter==null&&(x.filter={}),V>a&&(V-=m);let q=V-z;x.filter[q]=$.extend(!0,{},w[E]),x.filter[q].cindex=V,x.filter[q].stc=z,x.filter[q].edc=O}}}else M>=l&&F<=a?(Nt)&&(x.filter_select={row:[N,L],column:[M,F]},w!=null&&(x.filter=w)):(x.filter_select={row:[N,L],column:[M,F]},w!=null&&(x.filter=w))}if(x!=null&&x.filter!=null){g.rowhidden==null&&(g.rowhidden={});for(let N in x.filter){let L=x.filter[N].rowhidden;for(let M in L)g.rowhidden[M]=0}}let C=u.luckysheet_conditionformat_save,S=[];if(C!=null&&C.length>0)for(let N=0;N=z&&l<=O&&a>=V||(M=rd(e,n,t,l,a,E,z,O,V,d,m))}if(M.length>0){let F=$.extend(!0,{},C[N]);F.cellrange=M,S.push(F)}}let _=u.dataVerification,T={};if(_!=null)for(let N in _){let L=Number(N.split("_")[0]),M=Number(N.split("_")[1]),F=_[N];(Lt||Ma)&&(e=="moveLeft"?M>a&&L>=n&&L<=t?T[L+"_"+(M-m)]=F:T[L+"_"+M]=F:e=="moveUp"&&(L>t&&M>=l&&M<=a?T[L-d+"_"+M]=F:T[L+"_"+M]=F))}let A=u.hyperlink,R={};if(A!=null)for(let N in A){let L=Number(N.split("_")[0]),M=Number(N.split("_")[1]),F=A[N];(Lt||Ma)&&(e=="moveLeft"?M>a&&L>=n&&L<=t?R[L+"_"+(M-m)]=F:R[L+"_"+M]=F:e=="moveUp"&&(L>t&&M>=l&&M<=a?R[L-d+"_"+M]=F:R[L+"_"+M]=F))}if(g.borderInfo&&g.borderInfo.length>0){let N=[];for(let L=0;L=V&&l<=q&&a>=W||(E=rd(e,n,t,l,a,O,V,q,W,d,m))}if(E.length>0){let z={rangeType:"range",borderType:g.borderInfo[L].borderType,style:g.borderInfo[L].style,color:g.borderInfo[L].color,range:E};N.push(z)}}else if(M=="cell"){let F=g.borderInfo[L].value.row_index,E=g.borderInfo[L].value.col_index;(Ft||Ea)&&(e=="moveLeft"?E>a&&F>=n&&F<=t&&(E-=m,g.borderInfo[L].value.col_index=E):e=="moveUp"&&F>t&&E>=l&&E<=a&&(F-=d,g.borderInfo[L].value.row_index=F),N.push(g.borderInfo[L]))}}g.borderInfo=N}let I=[];for(let N=l;N<=a;N++)I.push(null);if(e=="moveUp"){let N=[];for(let M=n;M<=f.length-1;M++){let F=[];for(let E=l;E<=a;E++)F.push(f[M][E]);N.push(F)}N.splice(0,d);let L=[];for(let M=n;M<=t;M++)L.push(I);N=N.concat(L);for(let M=n;M<=f.length-1;M++)for(let F=l;F<=a;F++)f[M][F]=N[M-n][F-l]}else if(e=="moveLeft")for(let N=n;N<=t;N++)f[N].splice(l,m),f[N]=f[N].concat(I);u.index==h.currentSheetIndex?Di(f,g,{type:e,str:n,edr:t,stc:l,edc:a},k,x,S,T,R):(u.data=f,u.config=g,u.calcChain=k,u.filter=x.filter,u.filter_select=x.filter_select,u.luckysheet_conditionformat_save=S,u.dataVerification=T,u.hyperlink=R)}function rd(e,n,t,l,a,o,s,u,f,d,m){let g=[];if(e=="moveLeft"){if(n>s||tf)g.push({row:[o,s],column:[u,f]});else if(a=s)g.push({row:[o,s],column:[u-m,f-m]});else if(n>o&&to){let y=[{row:[o,n-1],column:[u,f]},{row:[n,s],column:[u-m,f-m]}];g=g.concat(y)}else if(t=u){if(l<=u&&a>=f){if(n>o&&to){let y=[{row:[o,n-1],column:[u,f]}];g=g.concat(y)}else if(tu&&a=s)g.push({row:[o,s],column:[u,f-m]});else if(n>o&&to){let y=[{row:[o,n-1],column:[u,f]},{row:[n,s],column:[u,f-m]}];g=g.concat(y)}else if(tu){if(n<=o&&t>=s)g.push({row:[o,s],column:[u,l-1]});else if(n>o&&to){let y=[{row:[o,n-1],column:[u,f]},{row:[n,s],column:[u,l-1]}];g=g.concat(y)}else if(t=s)g.push({row:[o,s],column:[u-m,f-m]});else if(n>o&&to){let y=[{row:[o,n-1],column:[u,f]},{row:[n,s],column:[u-m,f-m]}];g=g.concat(y)}else if(tf||as)g.push({row:[o,s],column:[u,f]});else if(t=f)g.push({row:[o-d,s-d],column:[u,f]});else if(l>u&&au){let y=[{row:[o,s],column:[u,l-1]},{row:[o-d,s-d],column:[l,f]}];g=g.concat(y)}else if(a=o){if(n<=o&&t>=s){if(l>u&&au){let y=[{row:[o,s],column:[u,l-1]}];g=g.concat(y)}else if(ao&&t=f)g.push({row:[o,s-d],column:[u,f]});else if(l>u&&au){let y=[{row:[o,s],column:[u,l-1]},{row:[o,s-d],column:[l,f]}];g=g.concat(y)}else if(ao){if(l<=u&&a>=f)g.push({row:[o,n-1],column:[u,f]});else if(l>u&&au){let y=[{row:[o,s],column:[u,l-1]},{row:[o,n-1],column:[l,f]}];g=g.concat(y)}else if(a=f)g.push({row:[o-d,s-d],column:[u,f]});else if(l>u&&au){let y=[{row:[o,s],column:[u,l-1]},{row:[o-d,s-d],column:[l,f]}];g=g.concat(y)}else if(a{Qt();qt();Xt();Zt();gr();yr();Vl();Jt();zr();_l();Dt();Xe()});function Xs(e,n,t,l,a){a==null&&(a=!0),h.visibledatarow=[],h.visibledatacolumn=[],h.ch_width=0,h.rh_height=0,h.zoomRatio=1,l!=null?h.config=l:h.config={},t.length==0?h.flowdata=Vt(t,n,e):t.length{Zt();Qt();Ri();qt();Xt();gl();Xe()});var qa,h2,Je,zl=$e(()=>{ll();Wt();gl();qt();jr();vr();cn();Vl();Dt();fa();Sl();Qt();nd();Xe();qa={defaultStore:{container:null,luckysheetfile:null,defaultcolumnNum:60,defaultrowNum:84,fullscreenmode:!0,devicePixelRatio:1,currentSheetIndex:0,calculateSheetIndex:0,flowdata:[],config:{},visibledatarow:[],visibledatacolumn:[],ch_width:0,rh_height:0,cellmainWidth:0,cellmainHeight:0,toolbarHeight:0,infobarHeight:0,calculatebarHeight:0,rowHeaderWidth:46,columnHeaderHeight:20,cellMainSrollBarSize:12,sheetBarHeight:31,statisticBarHeight:23,luckysheetTableContentHW:[0,0],defaultcollen:73,defaultrowlen:19,jfcountfuncTimeout:null,jfautoscrollTimeout:null,luckysheet_select_status:!1,luckysheet_select_save:[{row:[0,0],column:[0,0]}],luckysheet_selection_range:[],luckysheet_copy_save:{},luckysheet_paste_iscut:!1,filterchage:!0,luckysheet_filter_save:{row:[],column:[]},luckysheet_sheet_move_status:!1,luckysheet_sheet_move_data:[],luckysheet_scroll_status:!1,luckysheetisrefreshdetail:!0,luckysheetisrefreshtheme:!0,luckysheetcurrentisPivotTable:!1,luckysheet_rows_selected_status:!1,luckysheet_cols_selected_status:!1,luckysheet_rows_change_size:!1,luckysheet_rows_change_size_start:[],luckysheet_cols_change_size:!1,luckysheet_cols_change_size_start:[],luckysheet_cols_dbclick_timeout:null,luckysheet_cols_dbclick_times:0,luckysheetCellUpdate:[],luckysheet_shiftpositon:null,iscopyself:!0,orderbyindex:0,luckysheet_model_move_state:!1,luckysheet_model_xy:[0,0],luckysheet_model_move_obj:null,luckysheet_cell_selected_move:!1,luckysheet_cell_selected_move_index:[],luckysheet_cell_selected_extend:!1,luckysheet_cell_selected_extend_index:[],luckysheet_cell_selected_extend_time:null,clearjfundo:!0,jfredo:[],jfundo:[],lang:"en",createChart:"",highlightChart:"",zIndex:15,chartparam:{luckysheetCurrentChart:null,luckysheetCurrentChartActive:!1,luckysheetCurrentChartMove:null,luckysheetCurrentChartMoveTimeout:null,luckysheetCurrentChartMoveObj:null,luckysheetCurrentChartMoveXy:null,luckysheetCurrentChartMoveWinH:null,luckysheetCurrentChartMoveWinW:null,luckysheetCurrentChartResize:null,luckysheetCurrentChartResizeObj:null,luckysheetCurrentChartResizeXy:null,luckysheetCurrentChartResizeWinH:null,luckysheetCurrentChartResizeWinW:null,luckysheetInsertChartTosheetChange:!0,luckysheetCurrentChartZIndexRank:100,luckysheet_chart_redo_click:!1,luckysheetCurrentChartMaxState:!1,jfrefreshchartall:"",changeChartCellData:"",renderChart:"",getChartJson:""},functionList:null,luckysheet_function:null,chart_selection:{},currentChart:"",scrollRefreshSwitch:!0,measureTextCache:{},measureTextCellInfoCache:{},measureTextCacheTimeOut:null,cellOverflowMapCache:{},zoomRatio:1,visibledatacolumn_unique:null,visibledatarow_unique:null,showGridLines:!0,toobarObject:{},inlineStringEditCache:null,inlineStringEditRange:null,fontList:[],currentSheetView:"viewNormal"},defaultFormula:{searchFunctionCell:null,functionlistPosition:{},rangechangeindex:null,rangestart:!1,rangetosheet:null,rangeSetValueTo:null,func_selectedrange:{},rangedrag_column_start:!1,rangedrag_row_start:!1,rangeResizeObj:null,rangeResize:null,rangeResizeIndex:null,rangeResizexy:null,rangeResizeWinH:null,rangeResizeWinW:null,rangeResizeTo:null,rangeMovexy:null,rangeMove:!1,rangeMoveObj:null,rangeMoveIndex:null,rangeMoveRangedata:null,functionHTMLIndex:0,functionRangeIndex:null,execvertex:{},execFunctionGroupData:null,execFunctionExist:null,formulaContainSheetList:{},cellTextToIndexList:{},isFunctionRangeSave:!1,formulaContainCellList:{},execFunctionGlobalData:{},groupValuesRefreshData:[],functionResizeData:{},functionResizeStatus:!1,functionResizeTimeout:null,data_parm_index:0},defaultSheet:{sheetMaxIndex:0,nulldata:null,mergeCalculationSheet:{},checkLoadSheetIndexToDataIndex:{},CacheNotLoadControll:[]},defaultPivotTable:{pivotDatas:null,pivotSheetIndex:0,pivotDataSheetIndex:0,celldata:null,origindata:null,pivot_data_type:{},pivot_select_save:null,column:null,row:null,values:null,filter:null,showType:null,rowhidden:null,selected:null,caljs:null,initial:!0,filterparm:null,luckysheet_pivotTable_select_state:!1,jgridCurrentPivotInput:null,movestate:!1,moveitemposition:[],movesave:{},drawPivotTable:!0,pivotTableBoundary:[12,6]},defaultImage:{imgItem:{type:"3",src:"",originWidth:null,originHeight:null,default:{width:null,height:null,left:null,top:null},crop:{width:null,height:null,offsetLeft:0,offsetTop:0},isFixedPos:!1,fixedLeft:null,fixedTop:null,border:{width:0,radius:0,style:"solid",color:"#000"}},images:null,currentImgId:null,currentWinW:null,currentWinH:null,resize:null,resizeXY:null,move:!1,moveXY:null,cropChange:null,cropChangeXY:null,cropChangeObj:null,copyImgItemObj:null},defaultDataVerification:{defaultItem:{type:"dropdown",type2:null,value1:"",value2:"",checked:!1,remote:!1,prohibitInput:!1,hintShow:!1,hintText:""},curItem:null,dataVerification:null,selectRange:[],selectStatus:!1}},h2={addDataAjax:function(e,n,t,l){let a=this;n==null&&(n=h.currentSheetIndex),t==null&&(t=ne.loadSheetUrl),$("#luckysheet-grid-window-1").append(Nr()),e.currentPage++;let o="application/json;charset=UTF-8",s=sessionStorage.getItem("x-auth-token");$.ajax({method:"POST",url:t,headers:{"x-auth-token":s},data:JSON.stringify(e),contentType:o,success:function(u){typeof u=="string"&&(u=JSON.parse(u));let f=u.data,d=f.celldata;xo(f.row,d),setTimeout(function(){h.loadingObj.close()},500),l&&typeof l=="function"&&l(f)}})},reload:function(e,n,t,l){let a=this;n==null&&(n=h.currentSheetIndex),t==null&&(t=ne.loadSheetUrl),$("#luckysheet-grid-window-1").append(Nr());let o={gridKey:ne.gridKey,index:n};e=$.extend(!0,e,o);let s=h.luckysheetfile[K(n)];$.post(t,e,function(u){let f=new Function("return "+u)();s.celldata=f[n.toString()];let d=ve.buildGridData(s);setTimeout(function(){h.loadingObj.close()},500),s.data=d,h.flowdata=d,we.webWorkerFlowDataCache(d),Xs(d[0].length,d.length,d,null,!1),s.load="1",h.luckysheet_select_save.length=0,h.luckysheet_selection_range=[],ne.saveParam("shs",null,h.currentSheetIndex),ve.changeSheet(n),l&&typeof l=="function"&&l()})},clearSheetByIndex:function(e){let n=K(e),t=h.luckysheetfile[n];t.isPivotTable?delete h.luckysheetfile[n]:(t.data=[],t.row=h.defaultrowNum,t.column=h.defaultcolumnNum,t.chart=[],t.config=null,t.filter=null,t.filter_select=null,t.celldata=[],t.pivotTable={},t.calcChain=[],t.status=0,t.load=0,h.flowdata=[],we.webWorkerFlowDataCache(h.flowdata),$("#"+h.container+" .luckysheet-data-visualization-chart").remove(),$("#"+h.container+" .luckysheet-datavisual-selection-set").remove(),$("#luckysheet-row-count-show, #luckysheet-formula-functionrange-select, #luckysheet-row-count-show, #luckysheet-column-count-show, #luckysheet-change-size-line, #luckysheet-cell-selected-focus, #luckysheet-selection-copy, #luckysheet-cell-selected-extend, #luckysheet-cell-selected-move, #luckysheet-cell-selected").hide(),delete t.load)},clear:function(e){let n=this;if(e=="all")for(let t=0;t .luckysheet-cols-menu").remove(),$("#luckysheet-modal-dialog-mask, #luckysheetTextSizeTest, #luckysheet-icon-morebtn-div").remove(),$("#luckysheet-input-box").parent().remove(),$("#luckysheet-formula-help-c").remove(),$(".chartSetting, .luckysheet-modal-dialog-slider").remove(),$(document).off(".luckysheetEvent"),$(document).off(".luckysheetProtection"),Y.initialHorizontal=!0,Y.initialVertical=!0;let e=$.extend(!0,{},qa.defaultStore);for(let s in e)s in h&&(h[s]=e[s]);let n=$.extend(!0,{},qa.defaultFormula);for(let s in n)s in p&&(p[s]=n[s]);let t=$.extend(!0,{},qa.defaultSheet);for(let s in t)s in ve&&(ve[s]=t[s]);let l=$.extend(!0,{},qa.defaultPivotTable);for(let s in l)s in Oe&&(Oe[s]=l[s]);let a=$.extend(!0,{},qa.defaultImage);for(let s in a)s in Ie&&(Ie[s]=a[s]);let o=$.extend(!0,{},qa.defaultDataVerification);for(let s in o)s in Ye&&(Ye[s]=o[s]);h.asyncLoad=["core"]},editorChart:function(e){let n=Yl[0],t="luckysheetEditMode-datav-chart",l=t+"_selection";e.chart_id=t;let a=e.chartTheme;a=a==null?"default0000":a,luckysheet.insertChartTosheet(e.sheetIndex,e.dataSheetIndex,e.option,e.chartType,e.selfOption,e.defaultOption,e.row,e.column,n,t,l,e.chartStyle,e.rangeConfigCheck,e.rangeRowCheck,e.rangeColCheck,e.chartMarkConfig,e.chartTitleConfig,e.winWidth,e.winHeight,e.scrollLeft,e.scrollTop,a,e.myWidth,e.myHeight,e.myLeft!=null?parseFloat(e.myLeft):null,e.myTop!=null?parseFloat(e.myTop):null,e.myindexrank,!0),$("#"+t).find(".luckysheet-modal-controll-update").click()},createHookFunction:function(){let e=arguments[0];if(me.hook&&me.hook[e]!=null&&typeof me.hook[e]=="function"){var n=Array.prototype.slice.apply(arguments);return n.shift(),me.hook[e].apply(this,n)!==!1}return!0}},Je=h2});var f2,He,Gr=$e(()=>{Zl();Qt();qt();gn();Xt();Rn();Dt();ht();Vl();ol();_l();ll();Xe();zl();f2={defaultWidth:144,defaultHeight:84,currentObj:null,currentWinW:null,currentWinH:null,resize:null,resizeXY:null,move:!1,moveXY:null,init:function(){let e=this;$("#luckysheet-postil-showBoxs").off("mousedown.showPs").on("mousedown.showPs",".luckysheet-postil-show",function(n){if(!!It(h.currentSheetIndex,"editObjects",!1)){if(e.currentObj=$(this).find(".luckysheet-postil-show-main"),$(this).hasClass("luckysheet-postil-show-active")){n.stopPropagation();return}e.removeActivePs(),$(this).addClass("luckysheet-postil-show-active"),$(this).find(".luckysheet-postil-dialog-resize").show(),$(this).find(".arrowCanvas").css("z-index",200),$(this).find(".luckysheet-postil-show-main").css("z-index",200),n.stopPropagation()}}),$("#luckysheet-postil-showBoxs").off("mouseup.showPs").on("mouseup.showPs",".luckysheet-postil-show",function(n){n.which=="3"&&n.stopPropagation()}),$("#luckysheet-postil-showBoxs").off("mousedown.resize").on("mousedown.resize",".luckysheet-postil-show .luckysheet-postil-dialog-resize .luckysheet-postil-dialog-resize-item",function(n){if(!It(h.currentSheetIndex,"editObjects",!1))return;e.currentObj=$(this).closest(".luckysheet-postil-show-main"),e.currentWinW=$("#luckysheet-cell-main")[0].scrollWidth,e.currentWinH=$("#luckysheet-cell-main")[0].scrollHeight,e.resize=$(this).data("type");let t=$("#luckysheet-cell-main").scrollTop(),l=$("#luckysheet-cell-main").scrollLeft(),a=nt(n.pageX,n.pageY),o=a[0]+l,s=a[1]+t,u=e.currentObj.position(),f=e.currentObj.width(),d=e.currentObj.height();if(e.resizeXY=[o,s,f,d,u.left+l,u.top+t,l,t],tn(!0),$(this).closest(".luckysheet-postil-show").hasClass("luckysheet-postil-show-active")){n.stopPropagation();return}e.removeActivePs(),$(this).closest(".luckysheet-postil-show").addClass("luckysheet-postil-show-active"),$(this).closest(".luckysheet-postil-show").find(".luckysheet-postil-dialog-resize").show(),$(this).closest(".luckysheet-postil-show").find(".arrowCanvas").css("z-index",200),$(this).closest(".luckysheet-postil-show").find(".luckysheet-postil-show-main").css("z-index",200),n.stopPropagation()}),$("#luckysheet-postil-showBoxs").off("mousedown.move").on("mousedown.move",".luckysheet-postil-show .luckysheet-postil-dialog-move .luckysheet-postil-dialog-move-item",function(n){if(!It(h.currentSheetIndex,"editObjects",!1))return;e.currentObj=$(this).closest(".luckysheet-postil-show-main"),e.currentWinW=$("#luckysheet-cell-main")[0].scrollWidth,e.currentWinH=$("#luckysheet-cell-main")[0].scrollHeight,e.move=!0;let t=$("#luckysheet-cell-main").scrollTop(),l=$("#luckysheet-cell-main").scrollLeft(),a=e.currentObj.offset(),o=e.currentObj.position();if(e.moveXY=[n.pageX-a.left,n.pageY-a.top,o.left,o.top,l,t],tn(!0),$(this).closest(".luckysheet-postil-show").hasClass("luckysheet-postil-show-active")){n.stopPropagation();return}e.removeActivePs(),$(this).closest(".luckysheet-postil-show").addClass("luckysheet-postil-show-active"),$(this).closest(".luckysheet-postil-show").find(".luckysheet-postil-dialog-resize").show(),$(this).closest(".luckysheet-postil-show").find(".arrowCanvas").css("z-index",200),$(this).closest(".luckysheet-postil-show").find(".luckysheet-postil-show-main").css("z-index",200),n.stopPropagation()})},overshow:function(e){let n=this;if($("#luckysheet-postil-overshow").remove(),$(e.target).closest("#luckysheet-cell-main").length==0)return;let t=nt(e.pageX,e.pageY),l=$("#luckysheet-cell-main").scrollLeft(),a=$("#luckysheet-cell-main").scrollTop(),o=t[0],s=t[1],u=0,f=0;Y.freezenverticaldata!=null&&t[0]0)return;let v=y.value==null?"":y.value,k=h.visibledatarow[d],b=d-1==-1?0:h.visibledatarow[d-1],w=h.visibledatacolumn[m],x=m-1==-1?0:h.visibledatacolumn[m-1];g&&(k=g.row[1],b=g.row[0],w=g.column[1],x=g.column[0]);let C=w+u,S=b+f,_=C+18*h.zoomRatio,T=S-18*h.zoomRatio;T<0&&(T=2);let A=y.width==null?n.defaultWidth*h.zoomRatio:y.width*h.zoomRatio,R=y.height==null?n.defaultHeight*h.zoomRatio:y.height*h.zoomRatio,I=n.getArrowCanvasSize(_,T,C,S),N="",L=v.split(` +`);for(let E of L)N+="
"+n.htmlEscape(E)+"
";let M='
'+N+"
";$(M).appendTo($("#luckysheet-cell-main"));let F=$("#luckysheet-postil-overshow .arrowCanvas").get(0).getContext("2d");n.drawArrow(F,I[4],I[5],I[6],I[7])},getArrowCanvasSize:function(e,n,t,l){let a=t-5;e0&&$("#luckysheet-postil-show_"+e+"_"+n).remove(),t==null)return;let l=this;if(t.isshow==null?!1:t.isshow){let o=h.visibledatarow[e],s=e-1==-1?0:h.visibledatarow[e-1],u=h.visibledatacolumn[n],f=n-1==-1?0:h.visibledatacolumn[n-1],d=be.mergeborer(h.flowdata,e,n);d&&(o=d.row[1],s=d.row[0],u=d.column[1],f=d.column[0]);let m=u,g=s,y=t.left==null?m+18*h.zoomRatio:t.left*h.zoomRatio,v=t.top==null?g-18*h.zoomRatio:t.top*h.zoomRatio,k=t.width==null?l.defaultWidth*h.zoomRatio:t.width*h.zoomRatio,b=t.height==null?l.defaultHeight*h.zoomRatio:t.height*h.zoomRatio,w=t.value==null?"":t.value;v<0&&(v=2);let x=l.getArrowCanvasSize(y,v,m,g),C="",S=w.split(` +`);for(let A of S)C+="
"+l.htmlEscape(A)+"
";let _='
'+C+"
";$(_).appendTo($("#luckysheet-cell-main #luckysheet-postil-showBoxs"));let T=$("#luckysheet-postil-show_"+e+"_"+n+" .arrowCanvas").get(0).getContext("2d");l.drawArrow(T,x[4],x[5],x[6],x[7])}},newPs:function(e,n){if(!It(h.currentSheetIndex,"editObjects")||!Je.createHookFunction("commentInsertBefore",e,n))return;let t=this,l=h.visibledatarow[e],a=e-1==-1?0:h.visibledatarow[e-1],o=h.visibledatacolumn[n],s=n-1==-1?0:h.visibledatacolumn[n-1],u=be.mergeborer(h.flowdata,e,n);u&&(l=u.row[1],a=u.row[0],o=u.column[1],s=u.column[0]);let f=o,d=a,m=f+18*h.zoomRatio,g=d-18*h.zoomRatio;g<0&&(g=2);let y=t.defaultWidth*h.zoomRatio,v=t.defaultHeight*h.zoomRatio,k=t.getArrowCanvasSize(m,g,f,d),b='
';$(b).appendTo($("#luckysheet-cell-main #luckysheet-postil-showBoxs"));let w=$("#luckysheet-postil-show_"+e+"_"+n+" .arrowCanvas").get(0).getContext("2d");t.drawArrow(w,k[4],k[5],k[6],k[7]),$("#luckysheet-postil-show_"+e+"_"+n+" .formulaInputFocus").focus(),t.init();let x=we.deepCopyFlowData(h.flowdata),C=[];x[e][n]==null&&(x[e][n]={}),x[e][n].ps={left:null,top:null,width:null,height:null,value:"",isshow:!1},C.push(e+"_"+n),t.ref(x,C),setTimeout(()=>{Je.createHookFunction("commentInsertAfter",e,n,x[e][n])},0)},editPs:function(e,n){let t=this;if(!!It(h.currentSheetIndex,"editObjects")){if($("#luckysheet-postil-show_"+e+"_"+n).length>0)$("#luckysheet-postil-show_"+e+"_"+n).show(),$("#luckysheet-postil-show_"+e+"_"+n).addClass("luckysheet-postil-show-active"),$("#luckysheet-postil-show_"+e+"_"+n).find(".luckysheet-postil-dialog-resize").show();else{let l=h.flowdata[e][n].ps,a=h.visibledatarow[e],o=e-1==-1?0:h.visibledatarow[e-1],s=h.visibledatacolumn[n],u=n-1==-1?0:h.visibledatacolumn[n-1],f=be.mergeborer(h.flowdata,e,n);f&&(a=f.row[1],o=f.row[0],s=f.column[1],u=f.column[0]);let d=s,m=o,g=l.left==null?d+18*h.zoomRatio:l.left*h.zoomRatio,y=l.top==null?m-18*h.zoomRatio:l.top*h.zoomRatio,v=l.width==null?t.defaultWidth*h.zoomRatio:l.width*h.zoomRatio,k=l.height==null?t.defaultHeight*h.zoomRatio:l.height*h.zoomRatio,b=l.value==null?"":l.value;y<0&&(y=2);let w=t.getArrowCanvasSize(g,y,d,m),x="",C=b.split(` +`);for(let T of C)x+="
"+t.htmlEscape(T)+"
";let S='
'+x+"
";$(S).appendTo($("#luckysheet-cell-main #luckysheet-postil-showBoxs"));let _=$("#luckysheet-postil-show_"+e+"_"+n+" .arrowCanvas").get(0).getContext("2d");t.drawArrow(_,w[4],w[5],w[6],w[7])}$("#luckysheet-postil-show_"+e+"_"+n+" .formulaInputFocus").focus(),Cr($("#luckysheet-postil-show_"+e+"_"+n+" .formulaInputFocus").get(0)),t.init()}},delPs:function(e,n){if(!It(h.currentSheetIndex,"editObjects")||!Je.createHookFunction("commentDeleteBefore",e,n,h.flowdata[e][n]))return;$("#luckysheet-postil-show_"+e+"_"+n).length>0&&$("#luckysheet-postil-show_"+e+"_"+n).remove();let t=we.deepCopyFlowData(h.flowdata),l=[];delete t[e][n].ps,l.push(e+"_"+n),this.ref(t,l),setTimeout(()=>{Je.createHookFunction("commentDeleteAfter",e,n,h.flowdata[e][n])},0)},showHidePs:function(e,n){let t=this,l=h.flowdata[e][n].ps,a=l.isshow,o=we.deepCopyFlowData(h.flowdata),s=[];if(a)o[e][n].ps.isshow=!1,$("#luckysheet-postil-show_"+e+"_"+n).remove();else{o[e][n].ps.isshow=!0;let u=h.visibledatarow[e],f=e-1==-1?0:h.visibledatarow[e-1],d=h.visibledatacolumn[n],m=n-1==-1?0:h.visibledatacolumn[n-1],g=be.mergeborer(h.flowdata,e,n);g&&(u=g.row[1],f=g.row[0],d=g.column[1],m=g.column[0]);let y=$("#luckysheet-cell-main").scrollLeft(),v=$("#luckysheet-cell-main").scrollTop(),k=d,b=f;Y.freezenverticaldata!=null&&k";let I='
'+A+"
";$(I).appendTo($("#luckysheet-cell-main #luckysheet-postil-showBoxs"));let N=$("#luckysheet-postil-show_"+e+"_"+n+" .arrowCanvas").get(0).getContext("2d");t.drawArrow(N,T[4],T[5],T[6],T[7]),t.init()}s.push(e+"_"+n),t.ref(o,s)},showHideAllPs:function(){let e=this,n=we.deepCopyFlowData(h.flowdata),t=!0,l=[];for(let o=0;o0)if(t){$("#luckysheet-cell-main #luckysheet-postil-showBoxs").empty();for(let o=0;o";let L='
'+I+"
";$(L).appendTo($("#luckysheet-cell-main #luckysheet-postil-showBoxs"));let M=$("#luckysheet-postil-show_"+s+"_"+u+" .arrowCanvas").get(0).getContext("2d");e.drawArrow(M,R[4],R[5],R[6],R[7]),n[s][u].ps.isshow=!0,a.push(l[o])}}e.ref(n,a),e.init()},removeActivePs:function(){if($("#luckysheet-postil-showBoxs .luckysheet-postil-show-active").length>0){let e=$("#luckysheet-postil-showBoxs .luckysheet-postil-show-active").attr("id"),n=e.split("luckysheet-postil-show_")[1].split("_")[0],t=e.split("luckysheet-postil-show_")[1].split("_")[1],l=$("#"+e).find(".formulaInputFocus").html().replaceAll("
",` +`).replaceAll(/<(.*)>.*?|<(.*) \/>/g,"").trim();if(!Je.createHookFunction("commentUpdateBefore",n,t,l)){h.flowdata[n][t].ps.isshow||$("#"+e).remove();return}let a=$.extend(!0,{},h.flowdata[n][t]);$("#"+e).removeClass("luckysheet-postil-show-active"),$("#"+e).find(".luckysheet-postil-dialog-resize").hide(),$("#"+e).find(".arrowCanvas").css("z-index",100),$("#"+e).find(".luckysheet-postil-show-main").css("z-index",100);let o=we.deepCopyFlowData(h.flowdata),s=[];o[n][t].ps.value=l,s.push(n+"_"+t),this.ref(o,s),o[n][t].ps.isshow||$("#"+e).remove(),setTimeout(()=>{Je.createHookFunction("commentUpdateAfter",n,t,a,o[n][t])},0)}},ref:function(e,n){if(h.clearjfundo&&(h.jfundo.length=0,h.jfredo.push({type:"postil",data:h.flowdata,curdata:e,sheetIndex:h.currentSheetIndex,rc:n})),h.flowdata=e,we.webWorkerFlowDataCache(h.flowdata),h.luckysheetfile[K(h.currentSheetIndex)].data=h.flowdata,ne.allowUpdate)for(let t=0;t"&]/g,function(n,t,l){switch(console.log(n,t,l),n){case"<":return"<";case">":return">";case"&":return"&";case'"':return"""}})}},He=f2});function Ks(e,n,t,l,a){let o={},s,u;a==null?(s=h.config,u=h.flowdata):(s=h.luckysheetfile[K(a)].config,u=h.luckysheetfile[K(a)].data);let f=s.borderInfo;if(f!=null&&f.length>0)for(let d=0;dn&&(x=n),Cl&&(S=l),g=="border-left")for(let _=w;_<=x;_++){if(s.rowhidden!=null&&s.rowhidden[_]!=null)continue;o[_+"_"+C]==null&&(o[_+"_"+C]={}),o[_+"_"+C].l={color:y,style:v};let T=C-1;if(T>=0&&o[_+"_"+T])if(u[_]!=null&&P(u[_][T])=="object"&&u[_][T].mc!=null){let R=u[_][T],I=s.merge[R.mc.r+"_"+R.mc.c];I.c+I.cs-1==T&&(o[_+"_"+T].r={color:y,style:v})}else o[_+"_"+T].r={color:y,style:v};let A=s.merge||{};for(let R in A){let{c:I,r:N,cs:L,rs:M}=A[R];C<=I+L-1&&C>I&&_>=N&&_<=N+M-1&&(o[_+"_"+C].l=null)}}else if(g=="border-right")for(let _=w;_<=x;_++){if(s.rowhidden!=null&&s.rowhidden[_]!=null)continue;o[_+"_"+S]==null&&(o[_+"_"+S]={}),o[_+"_"+S].r={color:y,style:v};let T=S+1;if(T=I&&_>=N&&_<=N+M-1&&(o[_+"_"+S].r=null)}}else if(g=="border-top"){if(s.rowhidden!=null&&s.rowhidden[w]!=null)continue;for(let _=C;_<=S;_++){o[w+"_"+_]==null&&(o[w+"_"+_]={}),o[w+"_"+_].t={color:y,style:v};let T=w-1;if(T>=0&&o[T+"_"+_])if(u[T]!=null&&P(u[T][_])=="object"&&u[T][_].mc!=null){let R=u[T][_],I=s.merge[R.mc.r+"_"+R.mc.c];I.r+I.rs-1==T&&(o[T+"_"+_].b={color:y,style:v})}else o[T+"_"+_].b={color:y,style:v};let A=s.merge||{};for(let R in A){let{c:I,r:N,cs:L,rs:M}=A[R];w<=N+M-1&&w>N&&_>=I&&_<=I+L-1&&(o[w+"_"+_].t=null)}}}else if(g=="border-bottom"){if(s.rowhidden!=null&&s.rowhidden[x]!=null)continue;for(let _=C;_<=S;_++){o[x+"_"+_]==null&&(o[x+"_"+_]={}),o[x+"_"+_].b={color:y,style:v};let T=x+1;if(T=N&&_>=I&&_<=I+L-1&&(o[x+"_"+_].b=null)}}}else if(g=="border-all"){for(let _=w;_<=x;_++)if(!(s.rowhidden!=null&&s.rowhidden[_]!=null))for(let T=C;T<=S;T++){if(u[_]!=null&&P(u[_][T])=="object"&&u[_][T].mc!=null){let A=u[_][T],R=s.merge[A.mc.r+"_"+A.mc.c];R.r==_&&(o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].t={color:y,style:v}),R.r+R.rs-1==_&&(o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].b={color:y,style:v}),R.c==T&&(o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].l={color:y,style:v}),R.c+R.cs-1==T&&(o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].r={color:y,style:v})}else o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].l={color:y,style:v},o[_+"_"+T].r={color:y,style:v},o[_+"_"+T].t={color:y,style:v},o[_+"_"+T].b={color:y,style:v};if(_==w){let A=w-1;if(A>=0&&o[A+"_"+T])if(u[A]!=null&&P(u[A][T])=="object"&&u[A][T].mc!=null){let R=u[A][T],I=s.merge[R.mc.r+"_"+R.mc.c];I.r+I.rs-1==A&&(o[A+"_"+T].b={color:y,style:v})}else o[A+"_"+T].b={color:y,style:v}}if(_==x){let A=x+1;if(A=0&&o[_+"_"+A])if(u[_]!=null&&P(u[_][A])=="object"&&u[_][A].mc!=null){let R=u[_][A],I=s.merge[R.mc.r+"_"+R.mc.c];I.c+I.cs-1==A&&(o[_+"_"+A].r={color:y,style:v})}else o[_+"_"+A].r={color:y,style:v}}if(T==S){let A=S+1;if(A=0&&o[A+"_"+T])if(u[A]!=null&&P(u[A][T])=="object"&&u[A][T].mc!=null){let R=u[A][T],I=s.merge[R.mc.r+"_"+R.mc.c];I.r+I.rs-1==A&&(o[A+"_"+T].b={color:y,style:v})}else o[A+"_"+T].b={color:y,style:v}}if(_==x){o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].b={color:y,style:v};let A=x+1;if(A=0&&o[_+"_"+A])if(u[_]!=null&&P(u[_][A])=="object"&&u[_][A].mc!=null){let R=u[_][A],I=s.merge[R.mc.r+"_"+R.mc.c];I.c+I.cs-1==A&&(o[_+"_"+A].r={color:y,style:v})}else o[_+"_"+A].r={color:y,style:v}}if(T==S){o[_+"_"+T]==null&&(o[_+"_"+T]={}),o[_+"_"+T].r={color:y,style:v};let A=S+1;if(A=0&&o[A+"_"+T]&&delete o[A+"_"+T].b}if(_==x){let A=x+1;A=0&&o[_+"_"+A]&&delete o[_+"_"+A].r}if(T==S){let A=S+1;An||vl||s.rowhidden!=null&&s.rowhidden[y]!=null)continue;if(g.l!=null||g.r!=null||g.t!=null||g.b!=null)if(o[y+"_"+v]==null&&(o[y+"_"+v]={}),u[y]!=null&&P(u[y][v])=="object"&&u[y][v].mc!=null){let k=u[y][v],b=s.merge[k.mc.r+"_"+k.mc.c]||{};if(g.l!=null&&v==b.c){o[y+"_"+v].l={color:g.l.color,style:g.l.style};let w=v-1;if(w>=0&&o[y+"_"+w])if(u[y]!=null&&P(u[y][w])=="object"&&u[y][w].mc!=null){let x=u[y][w],C=s.merge[x.mc.r+"_"+x.mc.c];C.c+C.cs-1==w&&(o[y+"_"+w].r={color:g.l.color,style:g.l.style})}else o[y+"_"+w].r={color:g.l.color,style:g.l.style}}else o[y+"_"+v].l=null;if(g.r!=null&&v==b.c+b.cs-1){o[y+"_"+v].r={color:g.r.color,style:g.r.style};let w=v+1;if(w=0&&o[w+"_"+v])if(u[w]!=null&&P(u[w][v])=="object"&&u[w][v].mc!=null){let x=u[w][v],C=s.merge[x.mc.r+"_"+x.mc.c];C.r+C.rs-1==w&&(o[w+"_"+v].b={color:g.t.color,style:g.t.style})}else o[w+"_"+v].b={color:g.t.color,style:g.t.style}}else o[y+"_"+v].t=null;if(g.b!=null&&y==b.r+b.rs-1){o[y+"_"+v].b={color:g.b.color,style:g.b.style};let w=y+1;if(w=0&&o[y+"_"+k])if(u[y]!=null&&P(u[y][k])=="object"&&u[y][k].mc!=null){let b=u[y][k],w=s.merge[b.mc.r+"_"+b.mc.c];w.c+w.cs-1==k&&(o[y+"_"+k].r={color:g.l.color,style:g.l.style})}else o[y+"_"+k].r={color:g.l.color,style:g.l.style}}else o[y+"_"+v].l=null;if(g.r!=null){o[y+"_"+v].r={color:g.r.color,style:g.r.style};let k=v+1;if(k=0&&o[k+"_"+v])if(u[k]!=null&&P(u[k][v])=="object"&&u[k][v].mc!=null){let b=u[k][v],w=s.merge[b.mc.r+"_"+b.mc.c];w.r+w.rs-1==k&&(o[k+"_"+v].b={color:g.t.color,style:g.t.style})}else o[k+"_"+v].b={color:g.t.color,style:g.t.style}}else o[y+"_"+v].t=null;if(g.b!=null){o[y+"_"+v].b={color:g.b.color,style:g.b.style};let k=y+1;if(k{Dt();ht();Xe()});var Re,d2,al,Zs=$e(()=>{Zl();za();ja();Pt();Ml();Xt();Qt();qt();yr();_l();Jt();Dt();ht();Xe();vt();Re=El(kn()),d2={iconHtml:'
',typeListHtml:'
${copyCell}
${sequence}
${onlyFormat}
${noFormat}
${day}
${workDay}
${month}
${year}
${chineseNumber}
',copyRange:{},applyRange:{},applyType:null,direction:null,chnNumChar:{\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},chnNameValue:{\u5341:{value:10,secUnit:!1},\u767E:{value:100,secUnit:!1},\u5343:{value:1e3,secUnit:!1},\u4E07:{value:1e4,secUnit:!0},\u4EBF:{value:1e8,secUnit:!0}},ChineseToNumber:function(e){let n=this,t=0,l=0,a=0,o=!1,s=e.split("");for(let u=0;u0;){let s=e%10;s==0?o||(o=!0,l=n.chnNumChar2[s]+l):(o=!1,t=n.chnNumChar2[s],t+=n.chnUnitChar[a],l=t+l),a++,e=Math.floor(e/10)}return l},NumberToChinese:function(e){let n=this,t=0,l="",a="",o=!1;if(e==0)return n.chnNumChar2[0];for(;e>0;){let s=e%1e4;o&&(a=n.chnNumChar2[0]+a),l=n.SectionToChinese(s),l+=s!=0?n.chnUnitSection[t]:n.chnUnitSection[0],a=l+a,o=s<1e3&&s>0,e=Math.floor(e/1e4),t++}return a},isChnNumber:function(e){let n=this,t=!0;if(e)if(e.length==1)e=="\u65E5"||e in n.chnNumChar?t=!0:t=!1;else{let l=e.split("");for(let a=0;a=n&&a>=t?(o=l,s=a):(o=n,s=t);let u=rl(o)[1],f=rl(o)[0],d=Mt(s)[1],m=Mt(s)[0];$("#luckysheet-dropCell-icon").remove(),$("#luckysheet-cell-main").append(e.iconHtml),$("#luckysheet-dropCell-icon").css({left:d,top:u}),$("#luckysheet-dropCell-icon").mouseover(function(){$(this).css("background-color","#ffe8e8")}).mouseleave(function(){$(this).css("background-color","#f1f1f1")}).mousedown(function(g){$("#luckysheet-dropCell-typeList").remove();let v=Q().dropCell;$("body").append(_e(e.typeListHtml,{copyCell:v.copyCell,sequence:v.sequence,onlyFormat:v.onlyFormat,noFormat:v.noFormat,day:v.day,workDay:v.workDay,month:v.month,year:v.year,chineseNumber:v.chineseNumber}));let k=e.typeItemHide();!k[0]&&!k[1]&&!k[2]&&!k[3]&&!k[4]&&!k[5]&&!k[6]&&($("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=1]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=4]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=5]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=6]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=7]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=8]").hide()),k[2]||($("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=4]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=5]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=6]").hide(),$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=7]").hide()),k[3]||$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type=8]").hide();let b=$(this).offset().left,w=$(this).offset().top+25,x=$(window).height(),C=$(window).width(),S=$("#luckysheet-dropCell-typeList").width(),_=$("#luckysheet-dropCell-typeList").height();b+S>C&&(b=b-S),w+_>x&&(w=w-_-38),w<0&&(w=0),$("#luckysheet-dropCell-typeList").css({left:b,top:w}).show(),$("#luckysheet-dropCell-icon").mouseleave(function(){$(this).css("backgroundColor","#ffe8e8")});let T=e.applyType;$("#luckysheet-dropCell-typeList .luckysheet-cols-menuitem[data-type="+T+"]").find("span").append(''),g.stopPropagation()}),$(document).off("click.dCtypeList").on("click.dCtypeList","#luckysheet-dropCell-typeList .luckysheet-cols-menuitem",function(){$("#luckysheet-dropCell-typeList .fa-check").remove(),$(this).find("span").append('');let g=$(this).attr("data-type");e.applyType=g,e.update(),$("#luckysheet-dropCell-typeList").hide(),$("#luckysheet-dropCell-icon").css("backgroundColor","#f1f1f1"),$("#luckysheet-dropCell-icon").mouseleave(function(){$(this).css("backgroundColor","#f1f1f1")}),wl()})},typeItemHide:function(){let e=this,n=e.copyRange,t=n.row[0],l=n.row[1],a=n.column[0],o=n.column[1],s=!1,u=!1,f=!1,d=!1,m=!1,g=!1,y=!1;for(let v=t;v<=l;v++)for(let k=a;k<=o;k++)if(h.flowdata[v][k]){let b=h.flowdata[v][k];P(b)=="object"&&b.v!=null&&b.f==null&&(b.ct!=null&&b.ct.t=="n"?s=!0:b.ct!=null&&b.ct.t=="d"?f=!0:e.isExtendNumber(b.m)[0]?u=!0:e.isChnNumber(b.m)&&b.m!="\u65E5"?d=!0:b.m=="\u65E5"?m=!0:e.isChnWeek2(b.m)?g=!0:e.isChnWeek3(b.m)&&(y=!0))}return[s,u,f,d,m,g,y]},update:function(){let e=this;if(!kr([e.applyRange],h.currentSheetIndex)||h.allowEdit===!1)return;let n=we.deepCopyFlowData(h.flowdata),t=h.luckysheetfile[K(h.currentSheetIndex)],l=$.extend(!0,{},h.config),a=Wr(),o=$.extend(!0,{},t.dataVerification),s=e.direction,u=e.applyType,f=e.copyRange,d=f.row[0],m=f.row[1],g=f.column[0],y=f.column[1],v=e.getCopyData(n,d,m,g,y,s),k;s=="down"||s=="up"?k=m-d+1:(s=="right"||s=="left")&&(k=y-g+1);let b=e.applyRange,w=b.row[0],x=b.row[1],C=b.column[0],S=b.column[1];if(s=="down"||s=="up"){let A=x-w+1;for(let R=C;R<=S;R++){let I=v[R-C],N=e.getApplyData(I,k,A);if(s=="down")for(let L=w;L<=x;L++){let M=N[L-w];if(M.f!=null){let z="="+p.functionCopy(M.f,"down",L-w+1),O=p.execfunction(z,L,R);if(p.execFunctionGroup(L,R,O[1],void 0,n),M.f=O[2],M.v=O[1],M.spl!=null)M.spl=O[3].data;else if(B(M.v)&&!/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(M.v)){if(M.v==Infinity||M.v==-Infinity)M.m=M.v.toString();else if(M.v.toString().indexOf("e")>-1){let V=M.v.toString().split(".")[1].split("e")[0].length;V>5&&(V=5),M.m=M.v.toExponential(V).toString()}else{let V;M.ct.fa==="##0.00"?(V=it(Math.round(M.v*1e9)/1e9+".00"),M.m=V[0].toString()):(V=it(Math.round(M.v*1e9)/1e9),M.m=V[0].toString())}M.ct=M.ct||{fa:"General",t:"n"}}else{let V=it(M.v);M.m=V[0].toString(),M.ct=V[1]}}n[L][R]=M;let F=d+(L-w)%k,E=R;if(a[F+"_"+E]){let z={rangeType:"cell",value:{row_index:L,col_index:R,l:a[F+"_"+E].l,r:a[F+"_"+E].r,t:a[F+"_"+E].t,b:a[F+"_"+E].b}};l.borderInfo.push(z)}else if(a[L+"_"+R]){let z={rangeType:"cell",value:{row_index:L,col_index:R,l:null,r:null,t:null,b:null}};l.borderInfo.push(z)}o[F+"_"+E]&&(o[L+"_"+R]=o[F+"_"+E])}if(s=="up")for(let L=x;L>=w;L--){let M=N[x-L];if(M.f!=null){let z="="+p.functionCopy(M.f,"up",x-L+1),O=p.execfunction(z,L,R);if(p.execFunctionGroup(L,R,O[1],void 0,n),M.f=O[2],M.v=O[1],M.spl!=null)M.spl=O[3].data;else if(B(M.v)&&!/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(M.v)){if(M.v==Infinity||M.v==-Infinity)M.m=M.v.toString();else if(M.v.toString().indexOf("e")>-1){let V=M.v.toString().split(".")[1].split("e")[0].length;V>5&&(V=5),M.m=M.v.toExponential(V).toString()}else{let V=it(Math.round(M.v*1e9)/1e9);M.m=V[0].toString()}M.ct={fa:"General",t:"n"}}else{let V=it(M.v);M.m=V[0].toString(),M.ct=V[1]}}n[L][R]=M;let F=m-(x-L)%k,E=R;if(a[F+"_"+E]){let z={rangeType:"cell",value:{row_index:L,col_index:R,l:a[F+"_"+E].l,r:a[F+"_"+E].r,t:a[F+"_"+E].t,b:a[F+"_"+E].b}};l.borderInfo.push(z)}else if(a[L+"_"+R]){let z={rangeType:"cell",value:{row_index:L,col_index:R,l:null,r:null,t:null,b:null}};l.borderInfo.push(z)}o[F+"_"+E]&&(o[L+"_"+R]=o[F+"_"+E])}}}else if(s=="right"||s=="left"){let A=S-C+1;for(let R=w;R<=x;R++){let I=v[R-w],N=e.getApplyData(I,k,A);if(s=="right")for(let L=C;L<=S;L++){let M=N[L-C];if(M.f!=null){let z="="+p.functionCopy(M.f,"right",L-C+1),O=p.execfunction(z,R,L);if(p.execFunctionGroup(R,L,O[1],void 0,n),M.f=O[2],M.v=O[1],M.spl!=null)M.spl=O[3].data;else if(B(M.v)&&!/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(M.v)){if(M.v==Infinity||M.v==-Infinity)M.m=M.v.toString();else if(M.v.toString().indexOf("e")>-1){let V=M.v.toString().split(".")[1].split("e")[0].length;V>5&&(V=5),M.m=M.v.toExponential(V).toString()}else{let V=it(Math.round(M.v*1e9)/1e9);M.m=V[0].toString()}M.ct={fa:"General",t:"n"}}else{let V=it(M.v);M.m=V[0].toString(),M.ct=V[1]}}n[R][L]=M;let F=R,E=g+(L-C)%k;if(a[F+"_"+E]){let z={rangeType:"cell",value:{row_index:R,col_index:L,l:a[F+"_"+E].l,r:a[F+"_"+E].r,t:a[F+"_"+E].t,b:a[F+"_"+E].b}};l.borderInfo.push(z)}else if(a[R+"_"+L]){let z={rangeType:"cell",value:{row_index:R,col_index:L,l:null,r:null,t:null,b:null}};l.borderInfo.push(z)}o[F+"_"+E]&&(o[R+"_"+L]=o[F+"_"+E])}if(s=="left")for(let L=S;L>=C;L--){let M=N[S-L];if(M.f!=null){let z="="+p.functionCopy(M.f,"left",S-L+1),O=p.execfunction(z,R,L);if(p.execFunctionGroup(R,L,O[1],void 0,n),M.f=O[2],M.v=O[1],M.spl!=null)M.spl=O[3].data;else if(B(M.v)&&!/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(M.v)){if(M.v==Infinity||M.v==-Infinity)M.m=M.v.toString();else if(M.v.toString().indexOf("e")>-1){let V=M.v.toString().split(".")[1].split("e")[0].length;V>5&&(V=5),M.m=M.v.toExponential(V).toString()}else{let V=it(Math.round(M.v*1e9)/1e9);M.m=V[0].toString()}M.ct={fa:"General",t:"n"}}else{let V=it(M.v);M.m=V[0].toString(),M.ct=V[1]}}n[R][L]=M;let F=R,E=y-(S-L)%k;if(a[F+"_"+E]){let z={rangeType:"cell",value:{row_index:R,col_index:L,l:a[F+"_"+E].l,r:a[F+"_"+E].r,t:a[F+"_"+E].t,b:a[F+"_"+E].b}};l.borderInfo.push(z)}else if(a[R+"_"+L]){let z={rangeType:"cell",value:{row_index:R,col_index:L,l:null,r:null,t:null,b:null}};l.borderInfo.push(z)}o[F+"_"+E]&&(o[R+"_"+L]=o[F+"_"+E])}}}let _=$.extend(!0,[],t.luckysheet_conditionformat_save);if(_!=null&&_.length>0)for(let A=0;A<_.length;A++){let R=_[A].cellrange,I=[];for(let N=0;N0&&(I=I.concat(L))}I.length>0&&_[A].cellrange.push(b)}let T={cfg:l,cdformat:_,dataVerification:o};Ke(n,h.luckysheet_select_save,T),tt()},getCopyData:function(e,n,t,l,a,o){let s=this,u=[],f,d,m,g;o=="down"||o=="up"?(f=l,d=a,m=n,g=t):(o=="right"||o=="left")&&(f=n,d=t,m=l,g=a);for(let y=f;y<=d;y++){let v={},k=[],b=[],w="",x=null,C=null,S=!0;for(let _=m;_<=g;_++){let T;o=="down"||o=="up"?T=e[_][y]:(o=="right"||o=="left")&&(T=e[y][_]);let A;if(!!T&&!!T.v&&T.f==null)if(!!T.ct&&T.ct.t=="n")A="number",x=null,C=null;else if(!!T.ct&&T.ct.t=="d")A="date",x=null,C=null;else if(s.isExtendNumber(T.m)[0]){A="extendNumber";let R=s.isExtendNumber(T.m);x==null||C==null?(S=!0,x=R[2],C=R[3]):R[2]!=x||R[3]!=C?(S=!1,x=R[2],C=R[3]):S=!0}else s.isChnNumber(T.m)?(A="chnNumber",x=null,C=null):s.isChnWeek2(T.m)?(A="chnWeek2",x=null,C=null):s.isChnWeek3(T.m)?(A="chnWeek3",x=null,C=null):(A="other",x=null,C=null);else A="other",x=null,C=null;A=="extendNumber"?_==m?m==g?(w=A,k.push(T),b.push(_-m+1),v[w]=[],v[w].push({data:k,index:b})):(w=A,k.push(T),b.push(_-m+1)):_==g?w==A&&S?(k.push(T),b.push(_-m+1),w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b}))):(w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b})),w=A,k=[],k.push(T),b=[],b.push(_-m+1),w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b}))):w==A&&S?(k.push(T),b.push(_-m+1)):(w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b})),w=A,k=[],k.push(T),b=[],b.push(_-m+1)):_==m?m==g?(w=A,k.push(T),b.push(_-m+1),v[w]=[],v[w].push({data:k,index:b})):(w=A,k.push(T),b.push(_-m+1)):_==g?w==A?(k.push(T),b.push(_-m+1),w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b}))):(w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b})),w=A,k=[],k.push(T),b=[],b.push(_-m+1),w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b}))):w==A?(k.push(T),b.push(_-m+1)):(w in v?v[w].push({data:k,index:b}):(v[w]=[],v[w].push({data:k,index:b})),w=A,k=[],k.push(T),b=[],b.push(_-m+1))}u.push(v)}return u},getApplyData:function(e,n,t){let l=this,a=[],o=l.direction,s=l.applyType,u=Math.floor(t/n),f=t%n,d=e.number,m=[];if(d)for(let R=0;R0)for(let I=0;I0)for(let I=0;I0)for(let I=0;I0)for(let I=0;I0)for(let I=0;I0)for(let I=0;I<_.length;I++)R in _[I].index&&a.push(_[I].data[_[I].index[R]]);if(A.length>0)for(let I=0;I0){for(let u=1;u<=a;u++)for(let f=0;f0&&o.ChineseToNumber(e[m].m)<7?f.push(o.ChineseToNumber(e[m].m)+d*7):f.push(o.ChineseToNumber(e[m].m));if((t=="up"||t=="left")&&(e.reverse(),f.reverse()),o.isEqualDiff(f))if(u||f[f.length-1]<6&&f[0]>0||f[0]<6&&f[f.length-1]>0){let m=f[1]-f[0];s=o.FillChnWeek(e,n,m)}else{let m=f[1]-f[0];s=o.FillChnNumber(e,n,m)}else s=o.FillCopy(e,n)}else if(a=="chnWeek2")if(e.length==1){let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1),s=o.FillChnWeek2(e,n,u)}else{let u=[],f=0;for(let d=0;d7){let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1,e.reverse());let f;for(let d=1;d<=n;d++){let m=(d-1)%e.length,g=$.extend(!0,{},e[m]),y=Math.ceil(d/e.length);m==0&&(f=(0,Re.default)(g.m).add(u*y,"months").diff((0,Re.default)(g.m),"days"));let v=(0,Re.default)(g.m).add(f,"days").day(),k;v==0?k=(0,Re.default)(g.m).add(f,"days").subtract(2,"days").format("YYYY-MM-DD"):v==6?k=(0,Re.default)(g.m).add(f,"days").subtract(1,"days").format("YYYY-MM-DD"):k=(0,Re.default)(g.m).add(f,"days").format("YYYY-MM-DD"),g.m=k,g.v=it(k)[2],s.push(g)}}else{let u;t=="down"||t=="right"?u=7:(t=="up"||t=="left")&&(u=-7,e.reverse());let f;for(let d=1;d<=n;d++){let m=(d-1)%e.length,g=$.extend(!0,{},e[m]),y=Math.ceil(d/e.length);m==0&&(f=(0,Re.default)(g.m).add(u*y,"days").diff((0,Re.default)(g.m),"days"));let v=(0,Re.default)(g.m).add(f,"days").day(),k;v==0?k=(0,Re.default)(g.m).add(f,"days").subtract(2,"days").format("YYYY-MM-DD"):v==6?k=(0,Re.default)(g.m).add(f,"days").subtract(1,"days").format("YYYY-MM-DD"):k=(0,Re.default)(g.m).add(f,"days").format("YYYY-MM-DD"),g.m=k,g.v=it(k)[2],s.push(g)}}else{let u=o.judgeDate(e);if(u[0]&&u[3]){(t=="up"||t=="left")&&e.reverse();let f=(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"months");for(let d=1;d<=n;d++){let m=(d-1)%e.length,g=$.extend(!0,{},e[m]),y=(0,Re.default)(e[e.length-1].m).add(f*d,"months").day(),v;y==0?v=(0,Re.default)(e[e.length-1].m).add(f*d,"months").subtract(2,"days").format("YYYY-MM-DD"):y==6?v=(0,Re.default)(e[e.length-1].m).add(f*d,"months").subtract(1,"days").format("YYYY-MM-DD"):v=(0,Re.default)(e[e.length-1].m).add(f*d,"months").format("YYYY-MM-DD"),g.m=v,g.v=it(v)[2],s.push(g)}}else if(!u[0]&&u[2])if(Math.abs((0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m)))>7){let f;t=="down"||t=="right"?f=1:(t=="up"||t=="left")&&(f=-1,e.reverse());let d;for(let m=1;m<=n;m++){let g=(m-1)%e.length,y=$.extend(!0,{},e[g]),v=Math.ceil(m/e.length);g==0&&(d=(0,Re.default)(y.m).add(f*v,"months").diff((0,Re.default)(y.m),"days"));let k=(0,Re.default)(y.m).add(d,"days").day(),b;k==0?b=(0,Re.default)(y.m).add(d,"days").subtract(2,"days").format("YYYY-MM-DD"):k==6?b=(0,Re.default)(y.m).add(d,"days").subtract(1,"days").format("YYYY-MM-DD"):b=(0,Re.default)(y.m).add(d,"days").format("YYYY-MM-DD"),y.m=b,y.v=it(b)[2],s.push(y)}}else{let f;t=="down"||t=="right"?f=7:(t=="up"||t=="left")&&(f=-7,e.reverse());let d;for(let m=1;m<=n;m++){let g=(m-1)%e.length,y=$.extend(!0,{},e[g]),v=Math.ceil(m/e.length);g==0&&(d=(0,Re.default)(y.m).add(f*v,"days").diff((0,Re.default)(y.m),"days"));let k=(0,Re.default)(y.m).add(d,"days").day(),b;k==0?b=(0,Re.default)(y.m).add(d,"days").subtract(2,"days").format("YYYY-MM-DD"):k==6?b=(0,Re.default)(y.m).add(d,"days").subtract(1,"days").format("YYYY-MM-DD"):b=(0,Re.default)(y.m).add(d,"days").format("YYYY-MM-DD"),y.m=b,y.v=it(b)[2],s.push(y)}}else(t=="up"||t=="left")&&e.reverse(),s=o.FillCopy(e,n)}else if(l=="6")if(e.length==1){let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1),s=o.FillMonths(e,n,u)}else if(e.length==2)if((0,Re.default)(e[1].m).date()==(0,Re.default)(e[0].m).date()&&(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"months")!=0){(t=="up"||t=="left")&&e.reverse();let u=(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"months");s=o.FillMonths(e,n,u)}else{let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1,e.reverse());let f;for(let d=1;d<=n;d++){let m=(d-1)%e.length,g=$.extend(!0,{},e[m]),y=Math.ceil(d/e.length);m==0&&(f=(0,Re.default)(g.m).add(u*y,"months").diff((0,Re.default)(g.m),"days"));let v=(0,Re.default)(g.m).add(f,"days").format("YYYY-MM-DD");g.m=v,g.v=it(v)[2],s.push(g)}}else{let u=o.judgeDate(e);if(u[0]&&u[3]){(t=="up"||t=="left")&&e.reverse();let f=(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"months");s=o.FillMonths(e,n,f)}else if(!u[0]&&u[2]){let f;t=="down"||t=="right"?f=1:(t=="up"||t=="left")&&(f=-1,e.reverse());let d;for(let m=1;m<=n;m++){let g=(m-1)%e.length,y=$.extend(!0,{},e[g]),v=Math.ceil(m/e.length);g==0&&(d=(0,Re.default)(y.m).add(f*v,"months").diff((0,Re.default)(y.m),"days"));let k=(0,Re.default)(y.m).add(d,"days").format("YYYY-MM-DD");y.m=k,y.v=it(k)[2],s.push(y)}}else(t=="up"||t=="left")&&e.reverse(),s=o.FillCopy(e,n)}else if(l=="7")if(e.length==1){let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1),s=o.FillYears(e,n,u)}else if(e.length==2)if((0,Re.default)(e[1].m).date()==(0,Re.default)(e[0].m).date()&&(0,Re.default)(e[1].m).month()==(0,Re.default)(e[0].m).month()&&(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"years")!=0){(t=="up"||t=="left")&&e.reverse();let u=(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"years");s=o.FillYears(e,n,u)}else{let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1,e.reverse());let f;for(let d=1;d<=n;d++){let m=(d-1)%e.length,g=$.extend(!0,{},e[m]),y=Math.ceil(d/e.length);m==0&&(f=(0,Re.default)(g.m).add(u*y,"years").diff((0,Re.default)(g.m),"days"));let v=(0,Re.default)(g.m).add(f,"days").format("YYYY-MM-DD");g.m=v,g.v=it(v)[2],s.push(g)}}else{let u=o.judgeDate(e);if(u[0]&&u[1]&&u[4]){(t=="up"||t=="left")&&e.reverse();let f=(0,Re.default)(e[1].m).diff((0,Re.default)(e[0].m),"years");s=o.FillYears(e,n,f)}else if(u[0]&&u[3]||u[2]){let f;t=="down"||t=="right"?f=1:(t=="up"||t=="left")&&(f=-1,e.reverse());let d;for(let m=1;m<=n;m++){let g=(m-1)%e.length,y=$.extend(!0,{},e[g]),v=Math.ceil(m/e.length);g==0&&(d=(0,Re.default)(y.m).add(f*v,"years").diff((0,Re.default)(y.m),"days"));let k=(0,Re.default)(y.m).add(d,"days").format("YYYY-MM-DD");y.m=k,y.v=it(k)[2],s.push(y)}}else(t=="up"||t=="left")&&e.reverse(),s=o.FillCopy(e,n)}else if(l=="8")if(e.length==1){let u;t=="down"||t=="right"?u=1:(t=="up"||t=="left")&&(u=-1),s=o.FillChnNumber(e,n,u)}else{let u=[];for(let f=0;f2&&l.isEqualRatio(o))for(let s=1;s<=n;s++){let u=(s-1)%e.length,f=$.extend(!0,{},e[u]),d;t=="down"||t=="right"?d=Number(e[e.length-1].v)*Math.pow(Number(e[1].v)/Number(e[0].v),s):(t=="up"||t=="left")&&(d=Number(e[0].v)/Math.pow(Number(e[1].v)/Number(e[0].v),s)),f.v=d,f.m=mt(f.ct.fa,d),a.push(f)}else{let s=l.getXArr(e.length);for(let u=1;u<=n;u++){let f=(u-1)%e.length,d=$.extend(!0,{},e[f]),m;t=="down"||t=="right"?m=l.forecast(e.length+u,o,s):(t=="up"||t=="left")&&(m=l.forecast(1-u,o,s)),d.v=m,d.m=mt(d.ct.fa,m),a.push(d)}}return a},FillExtendNumber:function(e,n,t){let l=this,a=[],o=/0|([1-9]+[0-9]*)/g;for(let s=1;s<=n;s++){let u=(s-1)%e.length,f=$.extend(!0,{},e[u]),d=e[e.length-1].m,m=d.match(o),g=m[m.length-1],y=Math.abs(Number(g)+t*s),v=d.lastIndexOf(g),k=d.substr(0,v)+y.toString()+d.substr(v+g.length);f.v=k,f.m=k,a.push(f)}return a},FillOnlyFormat:function(e,n){let t=[];for(let l=1;l<=n;l++){let a=(l-1)%e.length,o=$.extend(!0,{},e[a]);delete o.f,delete o.m,delete o.v,t.push(o)}return t},FillWithoutFormat:function(e){let n=[];for(let t=0;t{Dt();zr();Jt();wn();ll();ol();Gr();Zs();Zl();Xe();vt();Xt();hn={freezenHorizontalHTML:'
 
',freezenVerticalHTML:'
 
',initialHorizontal:!0,initialVertical:!0,horizontalmovestate:!1,horizontalmoveposition:null,verticalmovestate:!1,verticalmoveposition:null,windowHeight:null,windowWidth:null,freezenhorizontaldata:null,freezenverticaldata:null,freezenRealFirstRowColumn:!0,cutVolumn:function(e,n){if(n<=0)return e;let t=e.slice(0,n),l=t[t.length-1];return e.slice(n)},cancelFreezenVertical:function(e){let n=this,l=Q().freezen,a=` +
+
+
+ +
+
+ ${l.default} +
+
+
+ `;$("#luckysheet-freezen-btn-horizontal").html(a),$("#luckysheet-freezen-btn-vertical").html(' '+l.freezenColumn),n.freezenverticaldata=null;let o=$("#luckysheet-freezebar-vertical").is(":visible");$("#luckysheet-freezebar-vertical").hide(),e==null&&(e=h.currentSheetIndex);let s=h.luckysheetfile[K(e)];s.freezen!=null&&(s.freezen.vertical=null),s.frozen!=null&&o&&ne.saveParam("all",e,s.frozen,{k:"frozen"})},createFreezenVertical:function(e,n){let t=this;if(t.initialVertical){t.initialVertical=!1,$("#luckysheet-grid-window-1").append(t.freezenVerticalHTML),$("#luckysheet-freezebar-vertical").find(".luckysheet-freezebar-vertical-drop").hover(function(){$(this).parent().addClass("luckysheet-freezebar-hover")},function(){$(this).parent().removeClass("luckysheet-freezebar-hover")}),$("#luckysheet-freezebar-vertical").find(".luckysheet-freezebar-vertical-drop").mousedown(function(){t.verticalmovestate=!0,t.verticalmoveposition=$(this).position().left,t.windowWidth=$("#luckysheet-grid-window-1").width(),$(this).parent().addClass("luckysheet-freezebar-active"),$("#luckysheet-freezebar-vertical").find(".luckysheet-freezebar-vertical-handle").css("cursor","-webkit-grabbing")});let a=$("#luckysheet-grid-window-1").height();$("#luckysheet-freezebar-vertical").find(".luckysheet-freezebar-vertical-handle").css({height:a-10,width:"4px",cursor:"-webkit-grab",top:"0px"}).end().find(".luckysheet-freezebar-vertical-drop").css({height:a-10,width:"4px",top:"0px",cursor:"-webkit-grab"})}if(e==null){if(t.freezenRealFirstRowColumn){let a=0;n=h.visibledatacolumn[a]-2+h.rowHeaderWidth,e=[h.visibledatacolumn[a],a+1,0,t.cutVolumn(h.visibledatacolumn,a+1),n]}else{let a=$("#luckysheet-cell-main").scrollLeft(),o=st(h.visibledatacolumn,a);o==-1&&(o=0),n=h.visibledatacolumn[o]-2-a+h.rowHeaderWidth,e=[h.visibledatacolumn[o],o+1,a,t.cutVolumn(h.visibledatacolumn,o+1),n]}t.saveFreezen(null,null,e,n)}t.freezenverticaldata=e;let l=` +
+
+
+ +
+
+ ${Q().freezen.freezenCancel} +
+
+
+ `;$("#luckysheet-freezen-btn-horizontal").html(l),$("#luckysheet-freezebar-vertical").show().find(".luckysheet-freezebar-vertical-handle").css({left:n}).end().find(".luckysheet-freezebar-vertical-drop").css({left:n})},saveFreezen:function(e,n,t,l){let a=h.luckysheetfile[K(h.currentSheetIndex)];a.freezen==null&&(a.freezen={}),e!=null&&(a.freezen.horizontal==null&&(a.freezen.horizontal={}),a.freezen.horizontal.freezenhorizontaldata=e,a.freezen.horizontal.top=n),t!=null&&(a.freezen.vertical==null&&(a.freezen.vertical={}),a.freezen.vertical.freezenverticaldata=t,a.freezen.vertical.left=l),a.frozen!=null&&ne.saveParam("all",h.currentSheetIndex,a.frozen,{k:"frozen"})},initialFreezen:function(e){let n=this;n.frozenTofreezen();let t=h.luckysheetfile[K(e)];t.freezen!=null&&t.freezen.horizontal!=null&&t.freezen.horizontal.freezenhorizontaldata!=null?n.createFreezenHorizontal(t.freezen.horizontal.freezenhorizontaldata,t.freezen.horizontal.top):n.cancelFreezenHorizontal(e),t.freezen!=null&&t.freezen.vertical!=null&&t.freezen.vertical.freezenverticaldata!=null?n.createFreezenVertical(t.freezen.vertical.freezenverticaldata,t.freezen.vertical.left):n.cancelFreezenVertical(e),n.createAssistCanvas()},changeFreezenIndex:function(e,n){let t=this;if(n=="v"&&t.freezenverticaldata!=null){let l=t.freezenverticaldata[1],a=st(h.visibledatacolumn,$("#luckysheet-cell-main").scrollLeft());e-a=h.visibledatacolumn.length&&(l=h.visibledatacolumn.length-1),o>=h.visibledatacolumn.length&&(o=h.visibledatacolumn.length-1);let f=h.visibledatacolumn[l],d=h.visibledatacolumn[o];f<=d+u&&setTimeout(function(){$("#luckysheet-scrollbar-x").scrollLeft(0)},100)}if(e.freezenhorizontaldata!=null){let o=e.freezenhorizontaldata[1],s=st(e.freezenhorizontaldata[3],$("#luckysheet-cell-main").scrollTop()),u=e.freezenhorizontaldata[4];o+=s,n>=h.visibledatarow.length&&(n=h.visibledatarow.length-1),o>=h.visibledatarow.length&&(o=h.visibledatarow.length-1);let f=h.visibledatarow[n],d=h.visibledatarow[o];f<=d+u&&setTimeout(function(){$("#luckysheet-scrollbar-y").scrollTop(0)},100)}},cancelFreezenHorizontal:function(e){let n=this,t=` +
+
+
+ +
+
+ ${Q().freezen.default} +
+
+
+ `;$("#luckysheet-freezen-btn-horizontal").html(t),n.freezenhorizontaldata=null;let l=$("#luckysheet-freezebar-horizontal").is(":visible");$("#luckysheet-freezebar-horizontal").hide(),e==null&&(e=h.currentSheetIndex);let a=h.luckysheetfile[K(e)];a.freezen!=null&&(a.freezen.horizontal=null),a.frozen!=null&&l&&ne.saveParam("all",e,a.frozen,{k:"frozen"})},createFreezenHorizontal:function(e,n){let t=this;if(t.initialHorizontal){t.initialHorizontal=!1,$("#luckysheet-grid-window-1").append(t.freezenHorizontalHTML),$("#luckysheet-freezebar-horizontal").find(".luckysheet-freezebar-horizontal-drop").hover(function(){$(this).parent().addClass("luckysheet-freezebar-hover")},function(){$(this).parent().removeClass("luckysheet-freezebar-hover")}),$("#luckysheet-freezebar-horizontal").find(".luckysheet-freezebar-horizontal-drop").mousedown(function(){t.horizontalmovestate=!0,t.horizontalmoveposition=$(this).position().top,t.windowHeight=$("#luckysheet-grid-window-1").height(),$(this).parent().addClass("luckysheet-freezebar-active"),$("#luckysheet-freezebar-horizontal").find(".luckysheet-freezebar-horizontal-handle").css("cursor","-webkit-grabbing")});let a=$("#luckysheet-grid-window-1").width();$("#luckysheet-freezebar-horizontal").find(".luckysheet-freezebar-horizontal-handle").css({width:a-10,height:"4px",cursor:"-webkit-grab",left:"0px"}).end().find(".luckysheet-freezebar-horizontal-drop").css({width:a-10,height:"4px",left:"0px",cursor:"-webkit-grab"})}if(e==null){let a;if(t.freezenRealFirstRowColumn)a=0,n=h.visibledatarow[a]-2+h.columnHeaderHeight,e=[h.visibledatarow[a],a+1,0,t.cutVolumn(h.visibledatarow,a+1),n],t.saveFreezen(e,n,null,null),setTimeout(()=>{hn.createAssistCanvas(),Be()});else{let o=$("#luckysheet-cell-main").scrollTop();a=st(h.visibledatarow,o),a==-1&&(a=0),n=h.visibledatarow[a]-2-o+h.columnHeaderHeight,e=[h.visibledatarow[a],a+1,o,t.cutVolumn(h.visibledatarow,a+1),n],t.saveFreezen(e,n,null,null)}}t.freezenhorizontaldata=e;let l=` +
+
+
+ +
+
+ ${Q().freezen.freezenCancel} +
+
+
+ `;$("#luckysheet-freezen-btn-horizontal").html(l),$("#luckysheet-freezebar-horizontal").show().find(".luckysheet-freezebar-horizontal-handle").css({top:n}).end().find(".luckysheet-freezebar-horizontal-drop").css({top:n})},createAssistCanvas:function(){let e=this;if(e.removeAssistCanvas(),e.freezenverticaldata!=null||e.freezenhorizontaldata!=null){let n,t,l,a,o,s,u=h.luckysheetTableContentHW[0],f=h.luckysheetTableContentHW[1];e.freezenverticaldata!=null&&e.freezenhorizontaldata!=null?(n=e.freezenhorizontaldata[0],t=e.freezenhorizontaldata[1],l=e.freezenhorizontaldata[2],a=e.freezenverticaldata[0],o=e.freezenverticaldata[1],s=e.freezenverticaldata[2],e.createCanvas("freezen_3",a-s,n-l+1,h.rowHeaderWidth-1,h.columnHeaderHeight-1),e.createCanvas("freezen_4",u-a+s,n-l+1,a-s+h.rowHeaderWidth-1,h.columnHeaderHeight-1),e.createCanvas("freezen_7",a-s,f-n+l-h.columnHeaderHeight,h.rowHeaderWidth-1,n-l+h.columnHeaderHeight-1)):e.freezenhorizontaldata!=null?(n=e.freezenhorizontaldata[0],t=e.freezenhorizontaldata[1],l=e.freezenhorizontaldata[2],e.createCanvas("freezen_h",u,n-l+1,h.rowHeaderWidth-1,h.columnHeaderHeight-1)):e.freezenverticaldata!=null&&(a=e.freezenverticaldata[0],o=e.freezenverticaldata[1],s=e.freezenverticaldata[2],e.createCanvas("freezen_v",a-s,f,h.rowHeaderWidth-1,h.columnHeaderHeight-1)),e.scrollAdapt()}},createCanvas:function(e,n,t,l,a){let o=$("").appendTo("#luckysheet-grid-window-1").attr({id:e,width:Math.ceil(n*h.devicePixelRatio),height:Math.ceil(t*h.devicePixelRatio)}).css({"user-select":"none",postion:"absolute",left:l,top:a,width:n,height:t,"z-index":10,"pointer-events":"none"})},removeAssistCanvas:function(){$("#luckysheet-grid-window-1 > canvas").not($("#luckysheetTableContent")).remove(),$("#luckysheet-cell-selected").css("z-index",15)},scrollAdapt:function(){let e=this;if(h.luckysheet_select_save!=null&&h.luckysheet_select_save.length>0&&e.scrollAdaptOfselect(),$(".luckysheet-modal-dialog-image").length>0&&imageCtrl.images!=null&&e.scrollAdaptOfImage(),$("#luckysheet-cell-main .luckysheet-data-visualization-chart").length>0){let n=h.luckysheetfile[K(h.currentSheetIndex)].chart;n!=null&&n.length>0&&e.scrollAdaptOfchart()}$("#luckysheet-postil-showBoxs .luckysheet-postil-show").length>0&&e.scrollAdaptOfpostil(),$("#luckysheet-dropCell-icon").length>0&&e.scrollAdaptOfdpicon(),$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").length>0&&e.scrollAdaptOffilteroptions()},scrollAdaptOfselect:function(){let e=this;$("#luckysheet-row-count-show").is(":visible")&&$("#luckysheet-row-count-show").hide(),$("#luckysheet-column-count-show").is(":visible")&&$("#luckysheet-column-count-show").hide(),$("#luckysheet-rows-h-selected").empty(),$("#luckysheet-cols-h-selected").empty();let n=$("#luckysheet-cell-main").scrollTop(),t=$("#luckysheet-cell-main").scrollLeft();if(e.freezenhorizontaldata!=null&&e.freezenverticaldata!=null){let l=e.freezenhorizontaldata[0],a=e.freezenhorizontaldata[1],o=n-e.freezenhorizontaldata[2],s=e.freezenverticaldata[0],u=e.freezenverticaldata[1],f=t-e.freezenverticaldata[2];for(let d=0;d=a?b+w=a?b+w=u?A+R=u?A+R=l?O+V=l?O+V=s?q+W=s?q+W=a?y+v=a?y+v=l?S+_=l?S+_=a?y+v=a?y+v=l?S+_=l?S+_=a?m.top=o?m.leftg+40+2?$(s).css("visibility","hidden"):($(s).css({top:l+n,height:g-k,visibility:"visible"}),$(s).find("canvas").css("top",-k))}else $(s).css({top:u.top-y+n,height:g,visibility:"visible"}),$(s).find("canvas").css("top",0);if(u.left-vm+20+2?$(s).css("visibility","hidden"):($(s).css({left:a+t,width:m-k,visibility:"visible"}),$(s).find("canvas").css("left",-k))}else $(s).css({left:u.left-v+t,width:m,visibility:"visible"}),$(s).find("canvas").css("left",0)})}else if(e.freezenhorizontaldata!=null){let l=e.freezenhorizontaldata[0]-e.freezenhorizontaldata[2];$("#luckysheet-cell-main .luckysheet-data-visualization-chart").each(function(a,o){let s=$(o).position(),u=$(o).height(),f=$(o).find("canvas").height(),d=f-u;if(s.top-df+40+2?$(o).css("visibility","hidden"):($(o).css({top:l+n,height:f-m,visibility:"visible"}),$(o).find("canvas").css("top",-m))}else $(o).css({top:s.top-d+n,height:f,visibility:"visible"}),$(o).find("canvas").css("top",0)})}else if(e.freezenverticaldata!=null){let l=e.freezenverticaldata[0]-e.freezenverticaldata[2];$("#luckysheet-cell-main .luckysheet-data-visualization-chart").each(function(a,o){let s=$(o).position(),u=$(o).width(),f=$(o).find("canvas").width(),d=f-u;if(s.left-df+20+2?$(o).css("visibility","hidden"):($(o).css({left:l+t,width:f-m,visibility:"visible"}),$(o).find("canvas").css("left",-m))}else $(o).css({left:s.left-d+t,width:f,visibility:"visible"}),$(o).find("canvas").css("left",0)})}else $("#luckysheet-cell-main .luckysheet-data-visualization-chart").each(function(l,a){let o=$(a).position(),s=$(a).width(),u=$(a).height(),f=$(a).find("canvas").width(),d=$(a).find("canvas").height(),m=d-u,g=f-s;$(a).css({top:o.top-m+n,height:d,left:o.left-g+t,width:f,visibility:"visible"}),$(a).find("canvas").css({top:0,left:0})})},scrollAdaptOfpostil:function(){let e=this,n=$("#luckysheet-cell-main").scrollTop(),t=$("#luckysheet-cell-main").scrollLeft();if(e.freezenhorizontaldata!=null&&e.freezenverticaldata!=null){let l=e.freezenhorizontaldata[0],a=e.freezenverticaldata[0],o=n-e.freezenhorizontaldata[2],s=t-e.freezenverticaldata[2];$("#luckysheet-postil-showBoxs .luckysheet-postil-show").each(function(u,f){let d=$(f).attr("id"),m=d.split("luckysheet-postil-show_")[1].split("_")[0],g=d.split("luckysheet-postil-show_")[1].split("_")[1],y=h.flowdata[m][g].ps,v=h.visibledatarow[m],k=m-1==-1?0:h.visibledatarow[m-1],b=h.visibledatacolumn[g],w=g-1==-1?0:h.visibledatacolumn[g-1],x=be.mergeborer(h.flowdata,m,g);x&&(v=x.row[1],k=x.row[0],b=x.column[1],w=x.column[0]);let C=b,S=k,_=y.left==null?C+18:y.left,T=y.top==null?S-18:y.top,A=y.width==null?He.defaultWidth:y.width,R=y.height==null?He.defaultHeight:y.height;T<0&&(T=2);let I=He.getArrowCanvasSize(_,T,C,S),N=!0,L=!0;m>=e.freezenhorizontaldata[1]?T+R=e.freezenverticaldata[1]?_+A=e.freezenhorizontaldata[1]?S+T=e.freezenverticaldata[1]?C+_=n&&a>=t?(o=l,s=a):(o=n,s=t),e.freezenhorizontaldata!=null&&e.freezenverticaldata!=null){let u=e.freezenhorizontaldata[1],f=st(e.freezenhorizontaldata[3],$("#luckysheet-cell-main").scrollTop()-e.freezenhorizontaldata[2]),d=e.freezenverticaldata[1],m=st(e.freezenverticaldata[3],$("#luckysheet-cell-main").scrollLeft()-e.freezenverticaldata[2]);if(o>=u&&s>=d)o=u)if(o=d)if(s=u)o=u)s=n&&d>=l)f=n)if(f=l)d=n?s=n)oa&&(a=o),a==-1&&(a=0);let s=h.visibledatarow[a]-2-l+h.columnHeaderHeight;t={horizontal:{freezenhorizontaldata:[h.visibledatarow[a],a+1,l,hn.cutVolumn(h.visibledatarow,a+1),s],top:s}}}else if(n.type==="rangeColumn"){let l=0,a=st(h.visibledatacolumn,l),o=n.range.column_focus;o>a&&(a=o),a==-1&&(a=0);let s=h.visibledatacolumn[a]-2-l+h.rowHeaderWidth;t={vertical:{freezenverticaldata:[h.visibledatacolumn[a],a+1,l,hn.cutVolumn(h.visibledatacolumn,a+1),s],left:s}}}else if(n.type==="rangeBoth"){let l=0,a=st(h.visibledatarow,l),o=n.range.row_focus;o>a&&(a=o),a==-1&&(a=0);let s=h.visibledatarow[a]-2-l+h.columnHeaderHeight,u=[h.visibledatarow[a],a+1,l,hn.cutVolumn(h.visibledatarow,a+1),s],f=0,d=st(h.visibledatacolumn,f),m=n.range.column_focus;m>d&&(d=m),d==-1&&(d=0);let g=h.visibledatacolumn[d]-2-f+h.rowHeaderWidth,y=[h.visibledatacolumn[d],d+1,f,hn.cutVolumn(h.visibledatacolumn,d+1),g];t={horizontal:{freezenhorizontaldata:u,top:s},vertical:{freezenverticaldata:y,left:g}}}else n.type==="cancel"&&(t={horizontal:null,vertical:null});e.freezen=t}},Y=hn});function $t(e=!0){me.showinfobar?($("#luckysheet_info_detail").show(),h.infobarHeight=document.querySelector("#luckysheet_info_detail").offsetHeight):(h.infobarHeight=0,$("#luckysheet_info_detail").hide()),!!h.toobarObject&&!!h.toobarObject.toobarElements&&h.toobarObject.toobarElements.length===0?($("#"+h.container).find(".luckysheet-wa-editor").hide(),h.toolbarHeight=0):($("#"+h.container).find(".luckysheet-wa-editor").show(),h.toolbarHeight=document.querySelector("#"+h.container+" .luckysheet-wa-editor").offsetHeight),m2(),p2();let n=document.querySelector("#"+h.container+" .luckysheet-wa-calculate");me.sheetFormulaBar?(n.style.display="block",h.calculatebarHeight=n.offsetHeight):(n.style.display="none",h.calculatebarHeight=0),$("#"+h.container).find(".luckysheet-grid-container").css("top",h.toolbarHeight+h.infobarHeight+h.calculatebarHeight),jn=$("#"+h.container).width(),me.showConfigWindowResize&&($("#luckysheet-modal-dialog-slider-pivot").is(":visible")?jn-=$("#luckysheet-modal-dialog-slider-pivot").outerWidth():$(".chartSetting").is(":visible")?jn-=$(".chartSetting").outerWidth():$("#luckysheet-modal-dialog-slider-alternateformat").is(":visible")&&(jn-=$("#luckysheet-modal-dialog-slider-alternateformat").outerWidth()),$("#luckysheet-modal-dialog-slider-protection").is(":visible")&&(jn-=$("#luckysheet-modal-dialog-slider-protection").outerWidth()));let l=Q().toolbar,a=!1,o=0,s=`
+
+
+ +
+ ${l.toolMore} +
+
+
+ +
+
+
`,u='
';$("#luckysheet-icon-morebtn-div").length==0&&$("body").append(u),We("#luckysheet-icon-morebtn-div").style.visibility="hidden",$("#luckysheet-icon-morebtn-div > div").each(function(){let g=$(this)[0],y=$("#luckysheet-wa-editor")[0];y.appendChild(document.createTextNode(" ")),y.appendChild(g)}),$("#luckysheet-icon-morebtn").remove();let f=h.toobarObject.toobarWidths,d=h.toobarObject.toobarElements,m=0;if(f!=null){for(let g=f.length-1;g>=0;g--)if(f[g]-1){let b=` +
+ ${l.toolClose} +
+
+
+ `;$(this).find(".luckysheet-toolbar-button-inner-box").html(b)}else{let b=` +
+ ${l.toolMore} +
+
+
+ `;$(this).find(".luckysheet-toolbar-button-inner-box").html(b)}}),$("#luckysheet-icon-morebtn-div .luckysheet-toolbar-button-split-left").off("hover").hover(function(){$(this).next(".luckysheet-toolbar-button-split-right").addClass("luckysheet-toolbar-button-split-right-hover")},function(){$(this).next(".luckysheet-toolbar-button-split-right").removeClass("luckysheet-toolbar-button-split-right-hover")}),$("#luckysheet-icon-morebtn-div .luckysheet-toolbar-button-split-right").off("hover").hover(function(){$(this).prev(".luckysheet-toolbar-button-split-left").addClass("luckysheet-toolbar-button-hover")},function(){$(this).prev(".luckysheet-toolbar-button-split-left").removeClass("luckysheet-toolbar-button-hover")}),U.createHoverTip("#luckysheet-icon-morebtn-div",".luckysheet-toolbar-menu-button, .luckysheet-toolbar-button, .luckysheet-toolbar-combo-button")),$("#"+h.container+" .luckysheet-wa-editor .luckysheet-toolbar-button-split-left").off("hover").hover(function(){$(this).next(".luckysheet-toolbar-button-split-right").addClass("luckysheet-toolbar-button-split-right-hover")},function(){$(this).next(".luckysheet-toolbar-button-split-right").removeClass("luckysheet-toolbar-button-split-right-hover")}),$("#"+h.container+" .luckysheet-wa-editor .luckysheet-toolbar-button-split-right").off("hover").hover(function(){$(this).prev(".luckysheet-toolbar-button-split-left").addClass("luckysheet-toolbar-button-hover")},function(){$(this).prev(".luckysheet-toolbar-button-split-left").removeClass("luckysheet-toolbar-button-hover")}),Js=$("#"+h.container).height(),$("#"+h.container).find(".luckysheet").height(Js-2).width(jn-2),Qs(jn,Js),e&&Be($("#luckysheet-cell-main").scrollLeft(),$("#luckysheet-cell-main").scrollTop()),ve.sheetArrowShowAndHide(),ve.sheetBarShowAndHide()}}function Qs(e,n){e==null&&(e=$("#"+h.container).width()),n==null&&(n=$("#"+h.container).height()),h.cellmainHeight=n-(h.infobarHeight+h.toolbarHeight+h.calculatebarHeight+h.columnHeaderHeight+h.sheetBarHeight+h.statisticBarHeight),h.cellmainWidth=e-h.rowHeaderWidth,$("#luckysheet-cols-h-c, #luckysheet-cell-main").width(h.cellmainWidth),$("#luckysheet-cell-main").height(h.cellmainHeight),$("#luckysheet-rows-h").height(h.cellmainHeight-h.cellMainSrollBarSize),$("#luckysheet-scrollbar-y").height(h.cellmainHeight+h.columnHeaderHeight-h.cellMainSrollBarSize-3),$("#luckysheet-scrollbar-x").height(h.cellMainSrollBarSize),$("#luckysheet-scrollbar-y").width(h.cellMainSrollBarSize),$("#luckysheet-scrollbar-x").width(h.cellmainWidth).css("left",h.rowHeaderWidth-2),h.luckysheetTableContentHW=[h.cellmainWidth+h.rowHeaderWidth-h.cellMainSrollBarSize,h.cellmainHeight+h.columnHeaderHeight-h.cellMainSrollBarSize],$("#luckysheetTableContent, #luckysheetTableContentF").attr({width:Math.ceil(h.luckysheetTableContentHW[0]*h.devicePixelRatio),height:Math.ceil(h.luckysheetTableContentHW[1]*h.devicePixelRatio)}).css({width:h.luckysheetTableContentHW[0],height:h.luckysheetTableContentHW[1]}),$("#"+h.container).find("#luckysheet-grid-window-1").css("bottom",h.sheetBarHeight),$("#"+h.container).find(".luckysheet-grid-window").css("bottom",h.statisticBarHeight);let t=$("#luckysheet-grid-window-1").width();$("#luckysheet-freezebar-horizontal").find(".luckysheet-freezebar-horizontal-handle").css({width:t-10}).end().find(".luckysheet-freezebar-horizontal-drop").css({width:t-10});let l=$("#luckysheet-grid-window-1").height();$("#luckysheet-freezebar-vertical").find(".luckysheet-freezebar-vertical-handle").css({height:l-10}).end().find(".luckysheet-freezebar-vertical-drop").css({height:l-10}),Y.createAssistCanvas()}function ad(){let e=me.showtoolbar,n=me.showtoolbarConfig,t=h.toobarObject.toobarWidths=[],l=h.toobarObject.toobarElements=[],a=h.toobarObject.toolbarConfig=o();function o(){let f={};function d(g){let y={},v,k,b=0;for(let w=0;wd.index?1:-1}l.forEach((f,d,m)=>{m[d]=f.ele,d!==l.length-1?f.ele instanceof Array?t.push($(f.ele[0]).offset().left):t.push($(f.ele).offset().left):f.ele instanceof Array?(t.push($(f.ele[0]).offset().left),t.push($(f.ele[0]).offset().left+$(f.ele[0]).outerWidth()+5)):(t.push($(f.ele).offset().left),t.push($(f.ele).offset().left+$(f.ele).outerWidth()+5))});let u=$("#"+h.container).offset().left;t.forEach((f,d)=>{t[d]-=u})}function m2(){if(!me.initShowsheetbarConfig){me.initShowsheetbarConfig=!0;let t={add:!0,menu:!0,sheet:!0};if(!me.showsheetbar)for(let l in t)t[l]=!1;JSON.stringify(me.showsheetbarConfig)!=="{}"&&Object.assign(t,me.showsheetbarConfig),me.showsheetbarConfig=t}let e=me.showsheetbarConfig,n=0;for(let t in e)if(!e[t])switch(t){case"add":$("#luckysheet-sheets-add").hide(),n++;break;case"menu":$("#luckysheet-sheets-m").hide(),n++;break;case"sheet":$("#luckysheet-sheet-container").hide(),$("#luckysheet-sheets-leftscroll").hide(),$("#luckysheet-sheets-rightscroll").hide(),n++;break;default:break}n===3?($("#"+h.container).find("#luckysheet-sheet-area").hide(),h.sheetBarHeight=0):($("#"+h.container).find("#luckysheet-sheet-area").show(),h.sheetBarHeight=31)}function p2(){if(!me.initStatisticBarConfig){me.initStatisticBarConfig=!0;let t={count:!0,view:!0,zoom:!0};if(!me.showstatisticBar)for(let l in t)t[l]=!1;JSON.stringify(me.showstatisticBarConfig)!=="{}"&&Object.assign(t,me.showstatisticBarConfig),me.showstatisticBarConfig=t}let e=me.showstatisticBarConfig,n=0;for(let t in e)if(!e[t])switch(t){case"count":$("#luckysheet-sta-content").hide(),n++;break;case"view":$(".luckysheet-print-viewList").hide(),n++;break;case"zoom":$("#luckysheet-zoom-content").hide(),n++;break;default:break}n===3?($("#"+h.container).find(".luckysheet-stat-area").hide(),h.statisticBarHeight=0):($("#"+h.container).find(".luckysheet-stat-area").show(),h.statisticBarHeight=23)}var jn,Js,nr=$e(()=>{Sl();Vl();Xt();Xe();vt();gl();tl();ht();as();jn=0,Js=0});function hd(e){let n=Q(),t=n.protection,l=n.button,a=e.name,o=e.sqref,s=e.password,u="";s!=null&&s.length>0&&(u='');let f=` +
+
+ +
+
+ ${a}${u} +
+
+ ${o} +
+
+ +
+
+ `;$("#luckysheet-protection-rangeItem-container").append(f)}function rc(e){let n=Q(),t=n.protection,l=n.button;$("#luckysheet-slider-protection-ok").unbind("click").click(function(){let a=$("#protection-password").val(),o=$("#protection-swichProtectionState").is(":checked"),s=$("#protection-hint").val(),u=cd,f={};u!=null&&u.config!=null&&u.config.authority!=null&&(f=u.config.authority);let d={},m="None";a!="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"?(d.password=a,d.algorithmName="None",d.saltValue=null):f!=null?(d.algorithmName=f.algorithmName,d.saltValue=f.saltValue,d.password=f.password):(d.algorithmName="None",d.saltValue=null,d.password=""),d.hintText=s,d.sheet=o==!0?1:0;for(let y=0;y div.luckysheet-protection-rangeItem").index(o),f=Yr[u];sd=u,$("#protection-allowRangeAdd-title").val(f.name),$("#protection-allowRangeAdd-range input").val(f.sqref),f.algorithmName=="None"?$("#protection-allowRangeAdd-password").val(f.password):$("#protection-allowRangeAdd-password").val("\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"),$("#protection-allowRangeAdd-hint").val(f.hintText)}),$(document).off("click.luckysheetProtection.rangeItemDelete").on("click.luckysheetProtection.rangeItemDelete","#luckysheet-protection-rangeItem-container .luckysheet-protection-rangeItem-del",function(a){let o=$(a.target).closest(".luckysheet-protection-rangeItem"),u=$("#luckysheet-protection-rangeItem-container").find("> div.luckysheet-protection-rangeItem").index(o),f=Yr[u];Yr.splice(u,1),o.remove()}),$(document).off("click.luckysheetProtection.rangeItemConfirm").on("click.luckysheetProtection.rangeItemConfirm","#luckysheet-protection-rangeItem-confirm",function(){let a=$("#protection-allowRangeAdd-title").val(),o=$("#protection-allowRangeAdd-range input").val(),s=$("#protection-allowRangeAdd-password").val(),u=$("#protection-allowRangeAdd-hint").val();if(a.length==0){alert(t.rangeItemErrorTitleNull);return}let f=Ye.getRangeByTxt(o);if(o.length==0){alert(t.rangeItemErrorRangeNull);return}if(f.length==0){alert(t.rangeItemErrorRange);return}if(o=md(o),ec){let d={name:a,password:s,hintText:u,algorithmName:"None",saltValue:null,checkRangePasswordUrl:null,sqref:o};hd(d),Yr.push(d)}else{let d=sd,m=Yr[d];m.name=a,m.sqref=o,m.hintText=u,s!="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"&&(m.password=s,m.algorithmName="None");let y=$("#luckysheet-protection-rangeItem-container").find("> div.luckysheet-protection-rangeItem").eq(d),v=y.find(".luckysheet-protection-rangeItem-name"),k="";s!=null&&s.length>0&&(k=''),v.html(a+k).attr("title",a),y.find(".luckysheet-protection-rangeItem-range").html(o).attr("title",o)}$("#luckysheet-protection-rangeItem-dialog").hide(),$("#luckysheet-modal-dialog-mask").hide()}),$(document).off("click.luckysheetProtection.validationConfirm").on("click.luckysheetProtection.validationConfirm","#luckysheet-protection-sheet-validation-confirm",function(a){let o=$("#luckysheet-protection-sheet-validation"),s=_o;if(s==null){nc(_o),o.hide(),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-modal-dialog-slider-protection").show(),$t();return}let f=o.find("input").val();if(f==null||f.length==0){alert(t.checkPasswordNullalert);return}if(s.algorithmName!=null&&s.algorithmName!="None")if(s.saltValue!=null&&s.saltValue.length>0){var d=CryptoApi.getHasher(s.algorithmName);f=CryptoApi.hmac(s.saltValue,f,d)}else f=CryptoApi.hash(s.algorithmName,f);f==s.password?(nc(_o),o.hide(),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-modal-dialog-slider-protection").show(),$t(),tc=!1):alert(t.checkPasswordWrongalert)}),$("#luckysheet-protection-check-selectLockedCells").change(function(){let a=$("#luckysheet-protection-check-selectLockedCells"),o=$("#luckysheet-protection-check-selectunLockedCells"),s=a.is(":checked"),u=o.is(":checked");s&&o.prop("checked",!0)}),$("#luckysheet-protection-check-selectunLockedCells").change(function(){let a=$("#luckysheet-protection-check-selectLockedCells"),o=$("#luckysheet-protection-check-selectunLockedCells"),s=a.is(":checked");o.is(":checked")||a.prop("checked",!1)}),$(document).off("click.luckysheetProtection.dvRange").on("click.luckysheetProtection.dvRange","#protection-allowRangeAdd-range .fa-table",function(a){$("#luckysheet-protection-rangeItem-dialog").hide();let o="0",s=$(this).siblings("input").val().trim();Ye.rangeDialog(o,s),Ye.selectRange=[];let u=Ye.getRangeByTxt(s);if(u.length>0)for(let f=0;f0)for(let f=0;f +
+
+ ${t.allowRangeAddTitle} +
+
+ +
+
+
+
+ ${t.allowRangeAddSqrf} +
+
+
+ + +
+
+
+
+
+ ${t.allowRangeAddTitlePassword} +
+
+ +
+
+
+
+ ${t.allowRangeAddTitleHint} +
+
+ +
+
+
+ `,botton:` + `,style:"z-index:100003"}))}function g2(e){let n=Q(),t=n.protection,l=n.button,a="";for(let s=0;s +
+ +
+ + `}let o=` + + `;$("body").append(o),$("body").append(_e(dt,{id:"luckysheet-protection-sheet-validation",addclass:"luckysheet-protection-sheet-validation",title:t.validationTitle,content:` +
+
+ ${t.validationTips} +
+
+
+
+ +
+
+ `,botton:` + `,style:"z-index:100003"}))}function nc(e){e==null&&(e={});for(let a=0;a0?e.algorithmName=="None"||e.algorithmName==null?$("#protection-password").val(e.password):$("#protection-password").val("\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"):$("#protection-password").val("");let n=e.sheet;e.sheet==null&&(n=0),$("#protection-swichProtectionState").prop("checked",n==1);let t=e.hintText;t==null&&(t=""),$("#protection-hint").val(t),Yr=[],$("#luckysheet-protection-rangeItem-container").empty();let l=e.allowRangeList;if(l!=null&&l.length>0)for(let a=0;a0){_o=n,$("#luckysheet-protection-sheet-validation input").val(""),da("luckysheet-protection-sheet-validation");return}else nc(n)}else $("#protection-swichProtectionState").prop("checked",!0),$("#luckysheet-protection-check-selectLockedCells").prop("checked",!0),$("#luckysheet-protection-check-selectunLockedCells").prop("checked",!0),$("#luckysheet-protection-check-formatCells").prop("checked",!0),$("#luckysheet-protection-check-formatColumns").prop("checked",!0),$("#luckysheet-protection-check-formatRows").prop("checked",!0),$("#luckysheet-protection-check-insertColumns").prop("checked",!0),$("#luckysheet-protection-check-insertRows").prop("checked",!0),$("#luckysheet-protection-check-deleteColumns").prop("checked",!0),$("#luckysheet-protection-check-insertHyperlinks").prop("checked",!0),$("#luckysheet-protection-check-deleteRows").prop("checked",!0),$("#luckysheet-protection-check-sort").prop("checked",!0),$("#luckysheet-protection-check-filter").prop("checked",!0),$("#luckysheet-protection-check-usePivotTablereports").prop("checked",!0),$("#luckysheet-protection-check-editObjects").prop("checked",!0),$("#luckysheet-protection-check-editScenarios").prop("checked",!0),y2();$("#luckysheet-modal-dialog-slider-protection").show(),$t()}function y2(){Yr=[],$("#luckysheet-protection-rangeItem-container").empty()}function dd(){$("#luckysheet-protection-rangeItem-dialog").hide(),$("#luckysheet-modal-dialog-slider-protection").hide(),$t()}function ac(e,n,t,l,a=!0,o=!0){let s=!1,u=t.allowRangeList;if(u!=null&&u.length>0){let f=!1;for(let d=0;d0)for(let v=0;v=k&&e<=b&&n>=w&&n<=x){f=!0;break}}if(f){let v=m.password;if(v!=null&&v.length>0&&!(g in lc))return a&&(v2(m),$("#luckysheet-selection-copy .luckysheet-selection-copy").hide()),!1;s=!0;break}}}if(!s&&!o&&(s=!0),!s&&a){let f;t.hintText!=null&&t.hintText.length>0?f=t.hintText:f=l.defaultSheetHintText,U.info("",f),$("#luckysheet-selection-copy .luckysheet-selection-copy").hide()}return s}function v2(e){let n=Q(),t=n.protection,l=n.button;ud||$("body").append(_e(dt,{id:"luckysheet-protection-range-validation",addclass:"luckysheet-protection-sheet-validation",title:t.validationTitle,content:` +
+
+ +
+
+
+
+ +
+
+ `,botton:` + `,style:"z-index:100003"})),ud=!0,da("luckysheet-protection-range-validation");let a=$("#luckysheet-protection-range-validation-hint");e.hintText!=null&&e.hintText.length>0?a.html(e.hintText):a.html(t.defaultRangeHintText);let o=$("#luckysheet-protection-range-validation"),s=o.find("input");s.val(""),$("#luckysheet-protection-range-validation-confirm").off("click").on("click",function(){let u=s.val();if(u==null||u.length==0){alert(t.checkPasswordNullalert);return}if(e.algorithmName!=null&&e.algorithmName!="None")if(e.saltValue!=null&&e.saltValue.length>0){var f=CryptoApi.getHasher(e.algorithmName);u=CryptoApi.hmac(e.saltValue,u,f)}else u=CryptoApi.hash(e.algorithmName,u);u==e.password?(lc[e.sqref]=1,o.hide(),$("#luckysheet-modal-dialog-mask").hide(),alert(t.checkPasswordSucceedalert)):alert(t.checkPasswordWrongalert)})}function Ur(e){let n=ve.getSheetByIndex(e);if(n==null||n.config==null||n.config.authority==null)return!0;let t=n.config.authority;if(t==null||t.sheet==null||t.sheet==0)return!0;let a=Q().protection,o;return t.hintText!=null&&t.hintText.length>0?o=t.hintText:o=a.defaultSheetHintText,U.info("",o),!1}function xn(e,n,t,l=!0,a=!0){let o=ve.getSheetByIndex(t);if(o==null||o.config==null||o.config.authority==null)return!0;let s=o.data,u=s[e][n],f=o.config.authority;if(f==null||f.sheet==null||f.sheet==0||u&&u.lo===0)return!0;let m=Q().protection;return ac(e,n,f,m,l,a)}function To(e,n,t){let l=ve.getSheetByIndex(t);if(!l||l.data&&!l.data[e]||l.data&&!l.data[e][n]||l.config==null||l.config.authority==null)return!0;let a=l.data,o=a[e][n],s=l.config.authority;return s==null||s.sheet==null||s.sheet==0||o==null||o.hi==null||o.hi==0}function kr(e,n){let t=ve.getSheetByIndex(n);if(t==null||t.config==null||t.config.authority==null)return!0;let l=t.config.authority;if(l==null||l.sheet==null||l.sheet==0||e==null||e.length==0)return!0;let o=Q().protection;for(let s=0;s0?o=t.hintText:o=a.defaultSheetHintText,U.info("",o),!1}function It(e,n="formatColumns",t=!0){let l=ve.getSheetByIndex(e);if(l==null||l.config==null||l.config.authority==null)return!0;let a=l.config.authority;if(a==null||a.sheet==null||a.sheet==0||a[n]==1||a[n]==null)return!0;if(t){let s=Q().protection,u;a.hintText!=null&&a.hintText.length>0?u=a.hintText:u=s.defaultSheetHintText,U.info("",u)}return!1}var id,od,Yr,ec,sd,_o,cd,tc,lc,ud,Ua,_l=$e(()=>{Xe();vt();Wt();Dt();Rn();gl();nr();vr();ht();Jt();tl();qr();id=!1,od=!1,Yr=[],ec=!0,sd=null,_o=null,cd=null,tc=!0,lc={},ud=!1,Ua=["selectLockedCells","selectunLockedCells","formatCells","formatColumns","formatRows","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","filter","usePivotTablereports","editObjects","editScenarios"]});function Vr(e,n,t){t==null&&(t=!0);let l=function(o,s){let u=o[n],f=s[n];if(P(o[n])=="object"&&(u=o[n].v),P(s[n])=="object"&&(f=s[n].v),de(u))return 1;if(de(f))return-1;if(Ot(u)&&Ot(f))return ul(u,f);if(B(u)&&B(f))return(0,_n.default)(u).value()-(0,_n.default)(f).value();if(!B(u)&&!B(f))return u.localeCompare(f,"zh");if(B(u)){if(!B(f))return-1}else return 1},a=function(o,s){let u=o[n],f=s[n];if(P(o[n])=="object"&&(u=o[n].v),P(s[n])=="object"&&(f=s[n].v),de(u))return 1;if(de(f))return-1;if(Ot(u)&&Ot(f))return ul(f,u);if(B(u)&&B(f))return(0,_n.default)(f).value()-(0,_n.default)(u).value();if(!B(u)&&!B(f))return f.localeCompare(u,"zh");if(B(u)){if(!B(f))return 1}else return-1};return t?e.sort(l):e.sort(a)}function wo(e,n){n==null&&(n=!0);let t=function(a,o){let s=a,u=o;if(P(a)=="object"&&(s=a.v),P(o)=="object"&&(u=o.v),s==null&&(s=""),u==null&&(u=""),Ot(s)&&Ot(u))return ul(s,u);if(B(s)&&B(u))return(0,_n.default)(s).value()-(0,_n.default)(u).value();if(!B(s)&&!B(u))return s.localeCompare(u,"zh");if(B(s)){if(!B(u))return-1}else return 1},l=function(a,o){let s=a,u=o;if(P(a)=="object"&&(s=a.v),P(o)=="object"&&(u=o.v),s==null&&(s=""),u==null&&(u=""),Ot(s)&&Ot(u))return ul(u,s);if(B(s)&&B(u))return(0,_n.default)(u).value()-(0,_n.default)(s).value();if(!B(s)&&!B(u))return u.localeCompare(s,"zh");if(B(s)){if(!B(u))return 1}else return-1};return n?e.sort(t):e.sort(l)}function oc(e){if(!It(h.currentSheetIndex,"sort"))return;let t=Q().sort;if(h.luckysheet_select_save.length>1){fe()?alert(t.noRangeError):U.info(t.noRangeError,"");return}e==null&&(e=!0);let l=we.deepCopyFlowData(h.flowdata),a=h.luckysheet_select_save[0].row[0],o=h.luckysheet_select_save[0].row[1],s=h.luckysheet_select_save[0].column[0],u=h.luckysheet_select_save[0].column[1],f,d;for(let v=a;v<=o;v++)if(l[v]!=null&&l[v][s]!=null){let k=l[v][s];if(k.mc!=null||de(k.v))continue;if(f==null&&/[\u4e00-\u9fa5]+/g.test(k.v)){f=v+1,d=v+1;continue}f==null&&(f=v),d=v}if(f==null||f>o)return;let m=!1,g=[];for(let v=f;v<=d;v++){let k=[];for(let b=s;b<=u;b++){if(l[v][b]!=null&&l[v][b].mc!=null){m=!0;break}k.push(l[v][b])}g.push(k)}if(m){fe()?alert(t.mergeError):U.info(t.mergeError,"");return}g=Vr(g,0,e);for(let v=f;v<=d;v++)for(let k=s;k<=u;k++)l[v][k]=g[v-f][k-s];let y={};if(h.config.rowlen!=null){let v=$.extend(!0,{},h.config);v=yl(l,f,d,v),y={cfg:v,RowlChange:!0}}Ke(l,[{row:[f,d],column:[s,u]}],y)}function sc(e,n){if(!It(h.currentSheetIndex,"sort"))return;n==null&&(n=!0);let l=Q().sort,a=we.deepCopyFlowData(h.flowdata),o=0,s=a.length-1,u=0,f=a[0].length-1,d,m;for(let k=o;k<=s;k++)if(!(a[k][e]!=null&&a[k][e].mc!=null)){if(a[k][e]!=null&&!de(a[k][e].v)&&/[\u4e00-\u9fa5]+/g.test(a[k][e].v)&&d==null){d=k+1,m=k+1;continue}d==null&&(d=k),a[k][e]!=null&&!de(a[k][e].v)&&(m=k)}if(d==null||d>s)return;let g=!1,y=[];for(let k=d;k<=m;k++){let b=[];for(let w=u;w<=f;w++){if(a[k][w]!=null&&a[k][w].mc!=null){g=!0;break}b.push(a[k][w])}y.push(b)}if(g){fe()?alert(l.columnSortMergeError):U.info(l.columnSortMergeError,"");return}y=Vr(y,e,n);for(let k=d;k<=m;k++)for(let b=u;b<=f;b++)a[k][b]=y[k-d][b-u];let v={};if(h.config.rowlen!=null){let k=$.extend(!0,{},h.config);k=yl(a,d,m,k),v={cfg:k,RowlChange:!0}}Ke(a,[{row:[d,m],column:[u,f]}],v)}var _n,ua=$e(()=>{ht();Pt();Br();tl();Qt();pr();Xt();_l();Xe();vt();_n=El(sa())});var k2,pd,gd=$e(()=>{Zt();k2={transpose:function(e,n=!0){let t=[];if(e.length==0)return[];if(e[0].length==0)return[];for(let l=0;le.row[1]||n.row[1]e.column[1]||n.column[1]e.column[0]&&n.column[1]e.row[0]&&n.row[1]e.row[0]&&n.row[0]e.column[0]&&n.column[1]e.column[0]&&n.column[0]{ht();b2={STDEVP:function(e,n){let t=0;for(let l=0;l{Dt();ht();Zt();Br();Ml();Pt();ua();Xt();tl();Qt();qr();gd();yd();Jt();zr();Wt();gl();nr();ll();_l();Xe();vt();Ei=El(sa());Wt();vd={pivotDatas:null,pivotSheetIndex:0,pivotDataSheetIndex:0,celldata:null,origindata:null,getCellData:function(e,n,t){let l=this,a;e!=null?a=e:a=h.currentSheetIndex;let o=K(a);P(h.luckysheetfile[o].pivotTable)!="object"&&(h.luckysheetfile[o].pivotTable=new Function("return "+h.luckysheetfile[o].pivotTable)()),h.luckysheetfile[o].pivotTable!=null?(l.column=h.luckysheetfile[o].pivotTable.column,l.row=h.luckysheetfile[o].pivotTable.row,l.values=h.luckysheetfile[o].pivotTable.values,l.filter=h.luckysheetfile[o].pivotTable.filter,l.showType=h.luckysheetfile[o].pivotTable.showType,l.filterparm=h.luckysheetfile[o].pivotTable.filterparm,h.luckysheetfile[o].pivotTable.drawPivotTable!=null?l.drawPivotTable=h.luckysheetfile[o].pivotTable.drawPivotTable:l.drawPivotTable=!0,h.luckysheetfile[o].pivotTable.pivotTableBoundary!=null?l.pivotTableBoundary=h.luckysheetfile[o].pivotTable.pivotTableBoundary:l.pivotTableBoundary=[12,6],t!=null?l.pivot_select_save=t:l.pivot_select_save=h.luckysheetfile[o].pivotTable.pivot_select_save,n!=null?l.pivotDataSheetIndex=n:l.pivotDataSheetIndex=h.luckysheetfile[o].pivotTable.pivotDataSheetIndex):(l.column=null,l.row=null,l.values=null,l.filter=null,l.showType=null,l.filterparm=null,l.drawPivotTable=!0,l.pivotTableBoundary=[12,6],t!=null?l.pivot_select_save=t:l.pivot_select_save=h.luckysheet_select_save,n!=null?l.pivotDataSheetIndex=n:l.pivotDataSheetIndex=a);let s=K(l.pivotDataSheetIndex),u=h.luckysheetfile[s];u.data==null&&(u.data=ve.buildGridData(u)),l.origindata=ia(u.data,l.pivot_select_save);let f={};if(l.filterparm!=null)for(let m in l.filterparm)for(let g in l.filterparm[m])g==="rowhidden"&&l.filterparm[m][g]!=null&&(f=$.extend(!0,f,l.filterparm[m][g]));l.rowhidden=f,l.pivotSheetIndex=a;let d=[];for(let m=0;m=2?($("#luckysheetpivottablevaluecolrowshow").show(),e.showType=="column"?($("#luckysheetpivottablevaluecolrow").prop("checked",!0),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow']").addClass("ui-state-active"),$("#luckysheetpivottablevaluecolrow1").prop("checked",!1),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow1']").removeClass("ui-state-active")):($("#luckysheetpivottablevaluecolrow1").prop("checked",!0),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow1']").addClass("ui-state-active"),$("#luckysheetpivottablevaluecolrow").prop("checked",!1),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow']").removeClass("ui-state-active"))):$("#luckysheetpivottablevaluecolrowshow").hide()},resetOrderby:function(e){let n=$("#luckysheet-modal-dialog-config-value .luckysheet-modal-dialog-slider-config-item").index(e);$("#luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column").find(".luckysheet-modal-dialog-slider-config-item").each(function(){$(this).data("orderby")==n&&$(this).data("orderby","self")})},luckysheetsliderlistclearfilter:function(e){let n=this,t=e.parent(),l=t.data("index"),a={},o={},s=n.origindata,u={};t.data("rowhidden","").find(".luckysheet-slider-list-item-filtered").hide(),n.setDatatojsfile("selected",{},l),n.setDatatojsfile("rowhidden",null,l);let f=[];for(let d=0;d2)for(let T in b){let A=0,R="";for(let N in b[T]){let L=0,M="";for(let E in b[T][N]){let z=b[T][N][E];L+=z;let O;Number(N)<10?O="0"+Number(N):O=N;let V;Number(E)<10?V="0"+Number(E):V=E,T in w&&N in w&&E in w?M+='
( '+z+" )
":M+='
( '+z+" )
"}A+=L;let F;Number(N)<10?F="0"+Number(N):F=N,T in w&&N in w?R+='
( '+L+' )
'+M+"
":R+='
( '+L+' )
'+M+"
"}let I;T in w?I='
( '+A+' )
'+R+"
":I='
( '+A+' )
'+R+"
",S.unshift(I)}if(JSON.stringify(x).length>2){let T=Object.keys(x);T=wo(T,!0);for(let A=0;A( '+x[R][I]+" )":L='
( '+x[R][I]+" )
",S.push(L)}}}let _=u-o.top-350;_<0&&(_=100),$("#luckysheet-pivotTableFilter-byvalue-select").append("
"+S.join("")+"
"),y.close()},1),un(s,o.left-250,o.top)},getSumTypeName:function(e){let n="",l=Q().pivotTable;return e=="SUM"?n=l.valueStatisticsSUM:e=="COUNT"?n=l.valueStatisticsCOUNT:e=="COUNTA"?n=l.valueStatisticsCOUNTA:e=="COUNTUNIQUE"?n=l.valueStatisticsCOUNTUNIQUE:e=="AVERAGE"?n=l.valueStatisticsAVERAGE:e=="MAX"?n=l.valueStatisticsMAX:e=="MIN"?n=l.valueStatisticsMIN:e=="MEDIAN"?n=l.valueStatisticsMEDIAN:e=="PRODUCT"?n=l.valueStatisticsPRODUCT:e=="STDEV"?n=l.valueStatisticsSTDEV:e=="STDEVP"?n=l.valueStatisticsSTDEVP:e=="let"?n=l.valueStatisticslet:e=="VARP"&&(n=l.valueStatisticsVARP),n},setDatatojsfile:function(e,n,t){let l=this,a=K(l.pivotSheetIndex);h.luckysheetfile[a].pivotTable==null&&(h.luckysheetfile[a].pivotTable={}),t==null?(h.luckysheetfile[a].pivotTable[e]=n,l[e]=n):(h.luckysheetfile[a].pivotTable.filterparm==null&&(h.luckysheetfile[a].pivotTable.filterparm={}),h.luckysheetfile[a].pivotTable.filterparm[t.toString()]==null&&(h.luckysheetfile[a].pivotTable.filterparm[t.toString()]={}),h.luckysheetfile[a].pivotTable.filterparm[t.toString()][e]=n,l.filterparm==null&&(l.filterparm={}),l.filterparm[t.toString()]==null&&(l.filterparm[t.toString()]={}),l.filterparm[t.toString()][e]=n)},createPivotTable:function(e){if(fe()||h.allowEdit===!1)return;let n=this,t=h.currentSheetIndex,a=Q().pivotTable;if(fe()){alert(a.errorNotAllowEdit);return}if(h.luckysheet_select_save.length>1){U.info("",a.errorNotAllowMulti);return}if(h.luckysheet_select_save.length==0||h.luckysheet_select_save[0].row[0]==h.luckysheet_select_save[0].row[1]||h.luckysheet_select_save[0].column[0]==h.luckysheet_select_save[0].column[1]){U.info("",a.errorSelectRange);return}let o=$.extend(!0,{},h.luckysheet_select_save[0]);ve.addNewSheet(e,!0),n.getCellData(h.currentSheetIndex,t,o),n.setDatatojsfile("pivot_select_save",o),n.setDatatojsfile("pivotDataSheetIndex",t),n.initialPivotManage()},changePivotTable:function(e){let n=this,l=Q().pivotTable,a=h.luckysheetfile[K(e)].pivotTable.pivotDataSheetIndex;if(K(a)==null){U.info(l.errorIsDamage,"");return}n.getCellData(e),n.initialPivotManage(!0),n.refreshPivotTable()},refreshPivotTable:function(e=!0){let n=this,t={};t.pivotTable=vd,t.data=we.deepCopyFlowData(h.flowdata),n.storePivotTableParam();let l=n.dataHandler(n.column,n.row,n.values,n.showType,n.celldata);n.setDatatojsfile("pivotDatas",l);let a=$.extend(!0,[],ve.nulldata),o=a,s=0,u=0;if(l.length==0)n.setDatatojsfile("drawPivotTable",!0),n.setDatatojsfile("pivotTableBoundary",[12,6]);else{n.setDatatojsfile("drawPivotTable",!1),n.setDatatojsfile("pivotTableBoundary",[l.length,l[0].length]);let f=l.length,d=l[0].length;s=f-a.length,u=d-a[0].length,o=Vt(a,s+20,u+10,!0);for(let m=0;m0||u>0?Rl(o[0].length,o.length,o,null,h.luckysheet_select_save,"datachangeAll",void 0,void 0,e):(Ke(o,h.luckysheet_select_save,{},null,e),tt()),h.clearjfundo=!0},drawPivotTable:!0,pivotTableBoundary:[12,6],pivotclick:function(e,n,t){t==null&&(t=h.currentSheetIndex);let l=h.luckysheetfile[K(t)];if(!l.isPivotTable)return;let a=l.pivotTable.pivotDataSheetIndex;if(K(a)==null)return;let s=$("#luckysheet-modal-dialog-slider-pivot"),u=this.isPivotRange(e,n);if(u&&s.is(":hidden")){if(!It(t,"usePivotTablereports",!1))return;s.show(),$t(),$("#luckysheet-sta-content").css("padding-right",260)}else!u&&s.is(":visible")&&(s.hide(),$t(),$("#luckysheet-sta-content").css("padding-right",10))},isPivotRange:function(e,n){let t=this;if(h.luckysheetcurrentisPivotTable)return e0){for(let o=0;o0)return e;for(let o=0;o',botton:'"})),$("body").append(_e(Yi(),{menuid:"pivotTableFilter"})),$("body").append(_e(Xi(),{menuid:"pivotTableFilter"})),$("body").append(Ru()),$("body").append(Au()),$("#luckysheet-pivotTableFilter-orderby-asc").remove(),$("#luckysheet-pivotTableFilter-orderby-desc").next().remove(),$("#luckysheet-pivotTableFilter-orderby-desc").remove(),$("#luckysheet-pivotTableFilter-orderby-color").next().remove(),$("#luckysheet-pivotTableFilter-orderby-color").remove(),$("#luckysheetpivottablevaluecolrow, #luckysheetpivottablevaluecolrow1").checkboxradio({icon:!1}).change(function(){n.refreshPivotTable()});let m=null;$("#luckysheet-pivotTableFilter-menu").mouseover(function(){clearTimeout(m),m=setTimeout(function(){$("#luckysheet-pivotTableFilter-submenu").hide()},500)}),$(document).off("click.ptFilterCheckbox1").on("click.ptFilterCheckbox1","#luckysheet-pivotTableFilter-byvalue-select .textBox",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).find("input[type='checkbox']").prop("checked",!0))}),$(document).off("click.ptFilterCheckbox2").on("click.ptFilterCheckbox2","#luckysheet-pivotTableFilter-byvalue-select .year",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).parents(".yearBox").find(".month").attr("data-check","false"),$(this).parents(".yearBox").find(".day").attr("data-check","false"),$(this).parents(".yearBox").find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).parents(".yearBox").find(".month").attr("data-check","true"),$(this).parents(".yearBox").find(".day").attr("data-check","true"),$(this).parents(".yearBox").find("input[type='checkbox']").prop("checked",!0))}),$(document).off("click.ptFilterCheckbox3").on("click.ptFilterCheckbox3","#luckysheet-pivotTableFilter-byvalue-select .month",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).parents(".monthBox").find(".day").attr("data-check","false"),$(this).parents(".monthBox").find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).parents(".monthBox").find(".day").attr("data-check","true"),$(this).parents(".monthBox").find("input[type='checkbox']").prop("checked",!0));let g=!0;$(this).parents(".yearBox").find(".day").each(function(v,k){$(k).attr("data-check")=="true"||(g=!1)}),g?($(this).parents(".yearBox").find(".year").attr("data-check","true"),$(this).parents(".yearBox").find(".year input[type='checkbox']").prop("checked",!0)):($(this).parents(".yearBox").find(".year").attr("data-check","false"),$(this).parents(".yearBox").find(".year input[type='checkbox']").removeAttr("checked"))}),$(document).off("click.ptFilterCheckbox4").on("click.ptFilterCheckbox4","#luckysheet-pivotTableFilter-byvalue-select .day",function(){$(this).attr("data-check")=="true"?($(this).attr("data-check","false"),$(this).find("input[type='checkbox']").removeAttr("checked")):($(this).attr("data-check","true"),$(this).find("input[type='checkbox']").prop("checked",!0));let g=!0;$(this).parents(".monthBox").find(".day").each(function(b,w){$(w).attr("data-check")=="true"||(g=!1)}),g?($(this).parents(".monthBox").find(".month").attr("data-check","true"),$(this).parents(".monthBox").find(".month input[type='checkbox']").prop("checked",!0)):($(this).parents(".monthBox").find(".month").attr("data-check","false"),$(this).parents(".monthBox").find(".month input[type='checkbox']").removeAttr("checked"));let v=!0;$(this).parents(".yearBox").find(".day").each(function(b,w){$(w).attr("data-check")=="true"||(v=!1)}),v?($(this).parents(".yearBox").find(".year").attr("data-check","true"),$(this).parents(".yearBox").find(".year input[type='checkbox']").prop("checked",!0)):($(this).parents(".yearBox").find(".year").attr("data-check","false"),$(this).parents(".yearBox").find(".year input[type='checkbox']").removeAttr("checked"))}),$(document).off("click.ptFilterYearDropdown").on("click.ptFilterYearDropdown","#luckysheet-pivotTableFilter-byvalue-select .yearBox .fa-caret-right",function(){let g=$(this).parents(".luckysheet-mousedown-cancel");g.hasClass("year")&&$(this).parents(".yearBox").find(".monthList").slideToggle(),g.hasClass("month")&&$(this).parents(".monthBox").find(".dayList").slideToggle()}),$("#luckysheet-pivotTableFilter-byvalue-btn-all").click(function(){$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").prop("checked",!0),$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").parents(".luckysheet-mousedown-cancel").attr("data-check","true")}),$("#luckysheet-pivotTableFilter-byvalue-btn-contra").click(function(){$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").each(function(k,b){$(b).is(":checked")?($(b).removeAttr("checked"),$(b).parents(".luckysheet-mousedown-cancel").attr("data-check","false")):($(b).prop("checked",!0),$(b).parents(".luckysheet-mousedown-cancel").attr("data-check","true"))}),$("#luckysheet-pivotTableFilter-byvalue-select .ListBox .monthBox").each(function(k,b){let w=!0;$(b).find(".day input[type='checkbox']").each(function(C,S){$(S).is(":checked")||(w=!1)}),w?($(b).find(".month input[type='checkbox']").prop("checked",!0),$(b).attr("data-check","true")):($(b).find(".month input[type='checkbox']").removeAttr("checked"),$(b).attr("data-check","false"))}),$("#luckysheet-pivotTableFilter-byvalue-select .ListBox .yearBox").each(function(k,b){let w=!0;$(b).find(".day input[type='checkbox']").each(function(C,S){$(S).is(":checked")||(w=!1)}),w?($(b).find(".year input[type='checkbox']").prop("checked",!0),$(b).attr("data-check","true")):($(b).find(".year input[type='checkbox']").removeAttr("checked"),$(b).attr("data-check","false"))})}),$("#luckysheet-pivotTableFilter-byvalue-btn-clear").click(function(){$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").removeAttr("checked"),$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").parents(".luckysheet-mousedown-cancel").attr("data-check","false")}),$("#luckysheet-pivotTableFilter-byvalue-input").on("input propertychange",function(){let g=$(this).val().toString();$("#luckysheet-pivotTableFilter-byvalue-select .ListBox .luckysheet-mousedown-cancel").show(),g!=""&&$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").each(function(v,k){let b=$(k).parents(".luckysheet-mousedown-cancel");if(b.hasClass("day")){let w=$(k).siblings("label").text().toString(),x=$(k).parents(".monthBox").find(".month label").text().toString();($(k).parents(".yearBox").find(".year label").text().toString()+"-"+x+"-"+w).indexOf(g)==-1&&($(k).parents(".day").hide(),$(k).parents(".dayList").find(".day:visible").length==0&&$(k).parents(".monthBox").find(".month").hide(),$(k).parents(".monthList").find(".day:visible").length==0&&$(k).parents(".yearBox").find(".year").hide())}b.hasClass("textBox")&&$(k).siblings("label").text().toString().indexOf(g)==-1&&$(k).parents(".textBox").hide()})}),$("#luckysheet-pivotTableFilter-bycondition, #luckysheet-pivotTableFilter-byvalue").click(function(){let g=$(this);g.next().slideToggle(200),setTimeout(function(){g.attr("id")=="luckysheet-pivotTableFilter-bycondition"&&$("#luckysheet-pivotTableFilter-bycondition").next().is(":visible")&&$("#luckysheet-pivotTableFilter-selected span").text()!=o.filiterInputNone&&$("#luckysheet-pivotTableFilter-byvalue").next().slideUp(200),g.is($("#luckysheet-pivotTableFilter-bycondition"))&&$("#luckysheet-pivotTableFilter-bycondition").next().is(":hidden")&&$("#luckysheet-pivotTableFilter-byvalue").next().is(":hidden")&&$("#luckysheet-pivotTableFilter-byvalue").next().slideDown(200)},300)}),$("#luckysheet-pivotTableFilter-cancel").click(function(){$("#luckysheet-pivotTableFilter-menu, #luckysheet-pivotTableFilter-submenu").hide()}),$("#luckysheet-pivotTableFilter-selected").click(function(){let g=$(this),y=g.offset(),v=$("#luckysheet-pivotTableFilter-submenu");v.hide();let k=$(window).height(),b=$(window).width(),w=v.width(),x=v.height(),C=y.top,S=y.left,_=k-y.top-20;y.left+w>b&&(S=y.left-w),y.top>k/2&&(C=k-y.top,C<0&&(C=0),_=y.top-20),v.css({top:C,left:S,height:_}).show(),clearTimeout(m)}),$("#luckysheet-pivotTableFilter-submenu").mouseover(function(){clearTimeout(m)}).find(".luckysheet-cols-menuitem").click(function(g){$("#luckysheet-pivotTableFilter-selected span").html($(this).find(".luckysheet-cols-menuitem-content").text()).data("value",$(this).data("value")),$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input").hide(),$(this).data("type")=="2"?($("#luckysheet-pivotTableFilter-selected span").data("type","2"),$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input2").show()):$(this).data("type")=="0"?$("#luckysheet-pivotTableFilter-selected span").data("type","0"):($("#luckysheet-pivotTableFilter-selected span").data("type","1"),$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input").eq(0).show(),$(this).attr("data-value")=="dateequal"||$(this).attr("data-value")=="datelessthan"||$(this).attr("data-value")=="datemorethan"?$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input input").prop("type","date"):$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input input").prop("type","text")),$("#luckysheet-pivotTableFilter-byvalue").next().slideUp(),$("#luckysheet-pivotTableFilter-submenu").hide()}),$("#luckysheet-modal-dialog-pivotTable-list").on("click"," .luckysheet-slider-list-item-filter",function(g){return n.luckysheetsliderlistitemfilter($(this)),g.stopPropagation(),!1}),$("#luckysheet-modal-dialog-pivotTable-list").on("click"," .luckysheet-slider-list-item-filtered",function(g){return n.luckysheetsliderlistclearfilter($(this).next()),g.stopPropagation(),!1}),$("#luckysheet-dialog-pivotTable-range-seleted").click(function(){$("#luckysheet-modal-dialog-slider-pivot").hide(),$t();let g=$("#luckysheet-data-pivotTable-selection"),y=g.outerHeight(),v=g.outerWidth(),k=$(window).width(),b=$(window).height(),w=$(document).scrollLeft(),x=$(document).scrollTop();$("#luckysheet-data-pivotTable-selection").css({left:(k+w-v)/2,top:(b+x-y)/4}).show(),n.jgridCurrentPivotInput=$("#luckysheet-dialog-pivotTable-range").html(),$("#luckysheet-pivotTable-range-selection-input").val(n.jgridCurrentPivotInput),n.luckysheet_pivotTable_select_state=!0}),$("#luckysheet-pivotTableFilter-initial").click(function(){$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-slider-list-item-filtered").hide(),$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").data("rowhidden",""),$("#luckysheet-pivotTableFilter-menu, #luckysheet-pivotTableFilter-submenu").hide(),$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input").hide().find("input").val(),$("#luckysheet-pivotTableFilter-selected span").data("type","0").data("type",null).text(o.filiterInputNone),n.setDatatojsfile("filterparm",null),n.celldata=n.origindata,n.refreshPivotTable()}),$("#luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column").on("click",".luckysheet-modal-dialog-slider-config-item-icon",function(g){let y=$(g.target),v=y.closest(".luckysheet-modal-dialog-slider-config-item"),k=v.data("index"),b=v.offset(),w=v.data("order"),x=v.data("orderby"),C=v.data("stastic");w==null&&(w="default");let S='";return $("#luckysheet-modal-dialog-config-value .luckysheet-modal-dialog-slider-config-item").each(function(_){S+='"}),$("#luckysheet-pivotTable-config-option-orderby").empty().html(S),x==null&&(x="self"),C==null&&(C="1"),$("#luckysheet-pivotTable-config-option-order").val(w).data("index",k),$("#luckysheet-pivotTable-config-option-orderby").val(x).data("index",k),$("#luckysheet-pivotTable-config-option-stastic").val(C).data("index",k),ml($("#luckysheet-pivotTable-config-option"),b.left+v.outerWidth(),b.top-13,"rightbottom"),g.stopPropagation(),!1}),$("#luckysheet-pivotTable-config-option-order,#luckysheet-pivotTable-config-option-orderby,#luckysheet-pivotTable-config-option-stastic").change(function(){let g=$(this),y=g.data("index");$("#luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column").find(".luckysheet-modal-dialog-slider-config-item").each(function(){$(this).data("index")==y&&$(this).data(g.attr("id").replace("luckysheet-pivotTable-config-option-",""),g.val())}),n.refreshPivotTable()}),$("#luckysheet-modal-dialog-config-value").on("click",".luckysheet-modal-dialog-slider-config-item-icon",function(g){let y=$(g.target),v=y.closest(".luckysheet-modal-dialog-slider-config-item"),k=v.data("index"),b=v.offset(),w=v.data("sumtype"),x=n.pivot_data_type[k.toString()];w==null&&(x=="num"?w="SUM":w="COUNTA");let C=$("#luckysheet-pivotTable-config-option-sumtype");return C.find(".luckysheet-submenu-arrow").hide(),C.find(".luckysheet-cols-menuitem[sumtype='"+w+"'] .luckysheet-submenu-arrow").css("display","inline"),C.data("item",v),ml(C,b.left+v.outerWidth(),b.top-13,"rightbottom"),g.stopPropagation(),!1}),$("#luckysheet-pivotTable-config-option-sumtype .luckysheet-cols-menuitem").click(function(){let g=$("#luckysheet-pivotTable-config-option-sumtype").data("item"),y=$(this).attr("sumtype");g.data("sumtype",$(this).attr("sumtype"));let v=n.getSumTypeName(y)+":"+g.data("name");g.attr("title",v).find(".luckysheet-modal-dialog-slider-config-item-txt").html(v),$("#luckysheet-pivotTable-config-option-sumtype").hide(),n.refreshPivotTable()}),$("#luckysheet-modal-dialog-config-filter").on("click",".luckysheet-modal-dialog-slider-config-item-icon",function(g){let y=$(g.target),v=y.closest(".luckysheet-modal-dialog-slider-config-item").data("index");return n.luckysheetsliderlistitemfilter($("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").eq(v).find(".luckysheet-slider-list-item-filter")),g.stopPropagation(),!1}),$("#luckysheet-pivotTableFilter-confirm").click(function(){let y=$("#luckysheet-pivotTableFilter-menu").data("index"),v={};$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").each(function(){let _=$(this),T=_.data("rowhidden");if(_.data("index")!=y){if(T==null||T=="")return!0;P(T)=="string"&&(T=JSON.parse(T));for(let A in T)v[A]=0}});let k=n.origindata,b={},w={},x={};if($("#luckysheet-pivotTableFilter-bycondition").next().is(":visible")&&$("#luckysheet-pivotTableFilter-byvalue").next().is(":hidden")&&$("#luckysheet-pivotTableFilter-selected span").data("value")!="null"){let _=$("#luckysheet-pivotTableFilter-selected span"),T=_.data("type"),A=_.data("value");if(x.value=A,x.text=_.text(),T=="0")x.type="0";else if(T=="2"){let R=$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input2 input");x.type="2",x.value1=R.eq(0).val(),x.value2=R.eq(1).val()}else x.type="1",x.value1=$("#luckysheet-pivotTableFilter-menu .luckysheet-pivotTableFilter-selected-input").eq(0).find("input").val();for(let R=1;R-1&&(w[R]=0)}else if(A=="textstart"){let N=x.value1,L=N.length;(I==null||de(I.v)||I.m.substr(0,L)!=N)&&(w[R]=0)}else if(A=="textend"){let N=x.value1,L=N.length;(I==null||de(I.v)||L>I.m.length||I.m.substr(I.m.length-L,L)!=N)&&(w[R]=0)}else if(A=="textequal"){let N=x.value1;(I==null||de(I.v)||I.m!=N)&&(w[R]=0)}else if(A=="dateequal"){let N=it(x.value1)[2];I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="d"?parseInt(I.v)!=N&&(w[R]=0):w[R]=0}else if(A=="datelessthan"){let N=it(x.value1)[2];I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="d"?parseInt(I.v)>=N&&(w[R]=0):w[R]=0}else if(A=="datemorethan"){let N=it(x.value1)[2];I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="d"?parseInt(I.v)<=N&&(w[R]=0):w[R]=0}else if(A=="morethan"){let N=parseFloat(x.value1);I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="n"?I.v<=N&&(w[R]=0):w[R]=0}else if(A=="moreequalthan"){let N=parseFloat(x.value1);I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="n"?I.v=N&&(w[R]=0):w[R]=0}else if(A=="lessequalthan"){let N=parseFloat(x.value1);I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="n"?I.v>N&&(w[R]=0):w[R]=0}else if(A=="equal"){let N=parseFloat(x.value1);I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="n"?I.v!=N&&(w[R]=0):w[R]=0}else if(A=="noequal"){let N=parseFloat(x.value1);I==null||de(I.v)?w[R]=0:I.ct!=null&&I.ct.t=="n"?I.v==N&&(w[R]=0):w[R]=0}else if(A=="include"){let N=parseFloat(x.value1),L=parseFloat(x.value2),M,F;NF)&&(w[R]=0):w[R]=0}else if(A=="noinclude"){let N=parseFloat(x.value1),L=parseFloat(x.value2),M,F;N=M&&I.v<=F&&(w[R]=0):w[R]=0}}}else{$("#luckysheet-pivotTableFilter-byvalue-select .ListBox input[type='checkbox']").each(function(_,T){if($(T).is(":visible")&&$(T).is(":checked"))return!0;if($(T).closest(".day").length>0){let A=$(T).siblings("label").text();Number(A)<10&&(A="0"+A);let R=$(T).closest(".monthBox").find(".month label").text().replace(o.filiterMonthText,"");Number(R)<10&&(R="0"+R);let I=$(T).closest(".yearBox").find(".year label").text().replace(o.filiterYearText,""),N=o.filterDateFormatTip+"#$$$#"+I+"-"+R+"-"+A;b[N]="1"}if($(T).closest(".textBox").length>0){let A=$(T).closest(".textBox").data("filter");b[A]="1"}});for(let _=1;_0||$("#luckysheet-pivotTableFilter-bycondition").next().is(":visible")&&$("#luckysheet-pivotTableFilter-byvalue").next().is(":hidden")&&$("#luckysheet-pivotTableFilter-selected span").data("value")!="null"?(C.data("rowhidden",JSON.stringify(w)).find(".luckysheet-slider-list-item-filtered").show(),n.setDatatojsfile("rowhidden",w,y),x!=null&&(C.data("byconditionvalue",x.value).data("byconditiontype",x.type).data("byconditiontext",x.text),x.value1!=null&&C.data("byconditionvalue1",x.value1),x.value2!=null&&C.data("byconditionvalue2",x.value2),n.setDatatojsfile("caljs",x,y))):(C.data("rowhidden","").find(".luckysheet-slider-list-item-filtered").hide(),n.setDatatojsfile("rowhidden",null,y));let S=[];for(let _=0;_1){k=v[0],b=v[1];for(let S in h.luckysheetfile)if(k==h.luckysheetfile[S].name){w=h.luckysheetfile[S].index;break}w==-1&&(w=0)}else{let S=K(h.currentSheetIndex);k=h.luckysheetfile[S].name,w=h.luckysheetfile[S].index,b=v[0]}if(h.luckysheetfile[K(w)].isPivotTable){fe()?alert(l.errorNotAllowPivotData):U.info("",l.errorNotAllowPivotData),g.val(n.jgridCurrentPivotInput);return}if(b.indexOf(":")==-1){fe()?alert(l.errorSelectionRange):U.info("",l.errorSelectionRange),g.val(n.jgridCurrentPivotInput);return}b=b.split(":");let x=[],C=[];if(x[0]=parseInt(b[0].replace(/[^0-9]/g,""))-1,x[1]=parseInt(b[1].replace(/[^0-9]/g,""))-1,x[0]>x[1]){fe()?alert(l.errorSelectionRange):U.info("",l.errorSelectionRange),g.val(n.jgridCurrentPivotInput);return}if(C[0]=hl(b[0].replace(/[^A-Za-z]/g,"")),C[1]=hl(b[1].replace(/[^A-Za-z]/g,"")),C[0]>C[1]){fe()?alert(l.errorSelectionRange):U.info(l.errorSelectionRange),g.val(n.jgridCurrentPivotInput);return}ve.changeSheetExec(n.pivotSheetIndex),n.setDatatojsfile("pivot_select_save",{row:x,column:C}),n.setDatatojsfile("pivotDataSheetIndex",w),n.getCellData(n.pivotSheetIndex,w,{row:x,column:C}),n.initialPivotManage(),$("#luckysheet-dialog-pivotTable-range").html(y),$("#luckysheet-modal-dialog-slider-pivot").show(),$("#luckysheet-data-pivotTable-selection").hide(),n.luckysheet_pivotTable_select_state=!1,n.refreshPivotTable(),$t(),nl()}}),$("#luckysheet-modal-dialog-slider-pivot").on("mousedown",".luckysheet-slider-list-item-name, .luckysheet-modal-dialog-slider-config-item-txt",function(g){let y=$(g.target);n.movestate=!0,n.movesave.obj=y.parent(),n.movesave.name=y.data("name"),n.movesave.containerid=y.parent().parent().attr("id"),n.movesave.index=y.data("index"),$("#luckysheet-modal-dialog-slider-pivot-move").length==0&&$("body").append('
'+n.movesave.name+"
"),n.movesave.width=$("#luckysheet-modal-dialog-slider-pivot-move").outerWidth(),n.movesave.height=$("#luckysheet-modal-dialog-slider-pivot-move").outerHeight(),$("#luckysheet-modal-dialog-pivotTable-list, #luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column, #luckysheet-modal-dialog-config-value").css("cursor","default")}),$("#luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column, #luckysheet-modal-dialog-config-value").mousemove(function(g){if(n.movestate){n.moveitemposition.length==0&&(n.moveitemposition=[0],$(this).find(".luckysheet-modal-dialog-slider-config-item").each(function(C){let S=$(this),_=S.outerHeight();n.moveitemposition.push(n.moveitemposition[C]+_+2)}),$(this).append('
')),$("#luckysheet-modal-dialog-slider-pivot-move").css({background:"#FD8585",color:"#fff",border:"1px solid #FD7070"});let y=event.pageX,v=event.pageY,k=$(this),b=v-k.offset().top+k.scrollTop(),w=n.moveitemposition,x=st(w,b);x==-1?$("#luckysheet-modal-dialog-config-order-help").css({top:w[w.length-1]}):b-w[x-1]>(w[x]-w[x-1])/2?$("#luckysheet-modal-dialog-config-order-help").css({top:w[x]}):$("#luckysheet-modal-dialog-config-order-help").css({top:w[x-1]})}}).mouseleave(function(){n.movestate&&($("#luckysheet-modal-dialog-slider-pivot-move").css({background:"#fff",color:"#000",border:"1px dotted #000"}),n.moveitemposition=[],$("#luckysheet-modal-dialog-config-order-help").remove())}).mouseup(function(g){if(n.movestate){let y=$(this),v;if(n.movesave.containerid==y.attr("id"))v=n.movesave.obj.clone();else{let _=n.movesave.name,T="",A="";y.attr("id")=="luckysheet-modal-dialog-config-value"&&(n.pivot_data_type[n.movesave.index.toString()]=="num"?(_=l.valueStatisticsSUM+":"+_,T="data-sumtype='SUM'",A="data-nameindex='0'"):(_=l.valueStatisticsCOUNTA+":"+_,T="data-sumtype='COUNTA'",A="data-nameindex='0'"),$("#luckysheet-modal-dialog-config-value").find(".luckysheet-modal-dialog-slider-config-item").each(function(){if($(this).find(".luckysheet-modal-dialog-slider-config-item-txt").text()==_){let I=parseFloat($(this).data("nameindex"))+1;return _=_+I.toString(),$(this).data("nameindex",I),!1}})),v='
'+_+'
'}let k=event.pageX,b=event.pageY,w=$(this),x=b-w.offset().top+w.scrollTop(),C=n.moveitemposition,S=st(C,x);(n.movesave.containerid=="luckysheet-modal-dialog-pivotTable-list"||n.movesave.containerid=="luckysheet-modal-dialog-config-value"&&n.movesave.containerid!=y.attr("id"))&&$("#luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column").find(".luckysheet-modal-dialog-slider-config-item").each(function(){$(this).data("index")==n.movesave.index&&$(this).remove()}),S==-1?y.find(".luckysheet-modal-dialog-slider-config-item").length==0?y.append(v):y.find(".luckysheet-modal-dialog-slider-config-item").last().after(v):x-C[S-1]>(C[S]-C[S-1])/2?y.find(".luckysheet-modal-dialog-slider-config-item").eq(S-1).after(v):y.find(".luckysheet-modal-dialog-slider-config-item").eq(S-1).before(v),n.movesave.containerid=="luckysheet-modal-dialog-pivotTable-list"||n.movesave.containerid=="luckysheet-modal-dialog-config-value"&&n.movesave.containerid!=y.attr("id")||n.movesave.obj.remove(),$("#luckysheet-modal-dialog-pivotTable-list").find(".luckysheet-modal-dialog-slider-list-item").each(function(){let _=$(this).find(".luckysheet-slider-list-item-selected");$(this).data("index")==n.movesave.index&&_.find("i").length==0&&_.append('')}),n.refreshPivotTable(),$("#luckysheet-modal-dialog-slider-pivot-move").remove(),n.movestate=!1,$("#luckysheet-modal-dialog-pivotTable-list, #luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column, #luckysheet-modal-dialog-config-value").css("cursor","default"),n.moveitemposition=[],$("#luckysheet-modal-dialog-config-order-help").remove(),n.showvaluecolrow(),g.stopPropagation()}}),$("#luckysheet-modal-dialog-pivotTable-list").on("click",".luckysheet-slider-list-item-selected",function(){let g=$(this),y=g.parent(),v=y.data("index"),k=y.data("name");if(g.find("i").length==0){g.append('');let b=n.pivot_data_type[v.toString()],w;if(b=="num")w='
\u6C42\u548C:'+k+'
',$("#luckysheet-modal-dialog-config-value").append(w);else{w='
'+k+'
';let x=$("#luckysheet-modal-dialog-config-column"),C=$("#luckysheet-modal-dialog-config-row"),S=x.find(".luckysheet-modal-dialog-slider-config-item"),_=C.find(".luckysheet-modal-dialog-slider-config-item");S.length<2?x.append(w):_.length<2?C.append(w):x.append(w)}}else g.find("i").remove(),$("#luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column, #luckysheet-modal-dialog-config-value").find(".luckysheet-modal-dialog-slider-config-item").each(function(){$(this).data("index")==v&&($(this).parent().attr("id")=="luckysheet-modal-dialog-config-value"&&n.resetOrderby($(this)),$(this).remove())});n.refreshPivotTable(),n.showvaluecolrow()}),$("#luckysheet-dialog-pivotTable-clearitem").click(function(){$("#luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column, #luckysheet-modal-dialog-config-value").find(".luckysheet-modal-dialog-slider-config-item").each(function(){$(this).remove()}),$("#luckysheet-modal-dialog-pivotTable-list").find(".luckysheet-modal-dialog-slider-list-item").each(function(){$(this).find(".luckysheet-slider-list-item-selected").find("i").remove()}),n.refreshPivotTable(),n.showvaluecolrow()})}e==null&&(e=!1),n.celldata.length<=1&&n.celldata[0].length<=1&&(fe()?alert(l.errorIncreaseRange):U.info("",l.errorIncreaseRange));let s="",u=1,f={},d=1;for(let m=0;m0&&(v="display:block;"),s+='
'+g+'
'}if($("#luckysheet-modal-dialog-pivotTable-list").html(s),$("#luckysheetpivottablevaluecolrowshow").hide(),$("#luckysheetpivottablevaluecolrow").prop("checked",!0),$("#luckysheetpivottablevaluecolrow1").prop("checked",!1),$("#luckysheet-modal-dialog-config-filter, #luckysheet-modal-dialog-config-row, #luckysheet-modal-dialog-config-column, #luckysheet-modal-dialog-config-value").empty(),e){if(n.filter!=null&&n.filter.length>0)for(let m=0;m
'+g.name+'
';$("#luckysheet-modal-dialog-config-filter").append(y);let v=$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").eq(g.index).find(".luckysheet-slider-list-item-selected");v.find("i").length==0&&v.append('')}if(n.row!=null&&n.row.length>0)for(let m=0;m
'+g.name+'
';$("#luckysheet-modal-dialog-config-row").append(v);let k=$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").eq(g.index).find(".luckysheet-slider-list-item-selected");k.find("i").length==0&&k.append('')}if(n.column!=null&&n.column.length>0)for(let m=0;m
'+g.name+'
';$("#luckysheet-modal-dialog-config-column").append(v);let k=$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").eq(g.index).find(".luckysheet-slider-list-item-selected");k.find("i").length==0&&k.append('')}if(n.values!=null&&n.values.length>0){for(let m=0;m
'+n.getSumTypeName(g.sumtype)+":"+g.name+'
';$("#luckysheet-modal-dialog-config-value").append(v);let k=$("#luckysheet-modal-dialog-pivotTable-list .luckysheet-modal-dialog-slider-list-item").eq(g.index).find(".luckysheet-slider-list-item-selected");k.find("i").length==0&&k.append('')}n.values.length>=2&&($("#luckysheetpivottablevaluecolrowshow").show(),n.showType=="column"?($("#luckysheetpivottablevaluecolrow").prop("checked",!0),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow']").addClass("ui-state-active"),$("#luckysheetpivottablevaluecolrow1").prop("checked",!1),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow1']").removeClass("ui-state-active")):($("#luckysheetpivottablevaluecolrow1").prop("checked",!0),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow1']").addClass("ui-state-active"),$("#luckysheetpivottablevaluecolrow").prop("checked",!1),$("#luckysheetpivottablevaluecolrowshow label[for='luckysheetpivottablevaluecolrow']").removeClass("ui-state-active")))}}$("#luckysheet-dialog-pivotTable-range").html(xt(n.pivotDataSheetIndex,n.pivot_select_save)),$("#luckysheet-modal-dialog-slider-pivot").show(),$t(!1)},getComposeArray:function(e){if(e.length==0)return[];let n=[];for(let t=0;t0){o.children=l.orderbygroupchildren(o.children,n[o.index].orderby,n[o.index].order,t);for(let d=0;de[t].max&&(e[t].max=a),ae[t].acc&&(e[t].acc=o)}l!=""&&(e[t].data.push(l),e[t].counta+=1,l in e[t].countuniquedata||(e[t].countuniquedata[l]=1,e[t].countunique+=1))},dataHandler:function(e,n,t,l,a){let o=this,s=Q(),u=s.filter,f=s.pivotTable;if(l==null&&(l="column"),e.length==0&&n.length==0&&t.length==0||a.length==0)return o.pivotDatas=[],[];let d={},m=a,g=[],y=[],v={},k=0,b=[],w=[],x={},C=0;for(let L=1;L0&&O.unshift(f.valueSum),W.length>0&&W.unshift(f.valueSum);let ee=v,te=y;for(let ue=0;ue0?(Z.push(""),Z=Z.join(t[ue].fullname+"|||").split("|||").slice(0,Z.length-1)):Z.push(t[ue].fullname):G.length>0?(G.push(""),G=G.join(t[ue].fullname+"|||").split("|||").slice(0,G.length-1)):G.push(t[ue].fullname),Z.length==0&&Z.push(""),G.length==0&&G.push("");for(let le=0;leM.acc&&(M.acc=F),M.result=Al(M.result,M.acc)}if(g=o.getTitleFromGroup(y,n,d),b=o.getTitleFromGroup(w,e,d),l=="column")if(b.length>0&&b[0].length>0)b=o.addValuesToTitle(b,t);else for(let L=0;L0&&g[0].length>0)g=o.addValuesToTitle(g,t);else for(let L=0;L=I)b[L]!=null?P(b[L][M-I])=="object"?N[L][M]=b[L][M-I].name+f.valueSum:N[L][M]=b[L][M-I]:N[L][M]="";else if(L>=R&&M0&&n.length>0)N[0][0]=t[0].fullname,N.splice(e.length,1);else if(t.length==1&&e.length>0){let L=N.splice(e.length,1),M=[];for(let F=0;F0)for(let g=0;g0)for(let g=0;g{Xe();kd=function(){let e,n;return e=function(){this.init.apply(this,arguments)},arguments.length>1?(arguments[0]?(e.prototype=$.extend(new arguments[0],arguments[arguments.length-1]),e._super=arguments[0].prototype):e.prototype=arguments[arguments.length-1],arguments.length>2&&(n=Array.prototype.slice.call(arguments,1,-1),n.unshift(e.prototype),$.extend.apply($,n))):e.prototype=arguments[0],e.prototype.cls=e,e},w2=kd({fre:/\{\{([\w.]+?)(:(.+?))?\}\}/g,precre:/(\w+)\.(\d+)/,init:function(e,n){this.format=e,this.fclass=n},render:function(e,n,t){let l=this,a=e,o,s,u,f,d;return this.format.replace(this.fre,function(){let m;return s=arguments[1],u=arguments[3],o=l.precre.exec(s),o?(d=o[2],s=o[1]):d=!1,f=a[s],f===void 0?"":u&&n&&n[u]?(m=n[u],m.get?n[u].get(f)||f:n[u][f]||f):(x2(f)&&(t.get("numberFormatter")?f=t.get("numberFormatter")(f):f=_2(f,d,t.get("numberDigitGroupCount"),t.get("numberDigitGroupSep"),t.get("numberDecimalMark"))),f)})}});$.spformat=function(e,n){return new w2(e,n)};Ni=function(e,n,t){return et?t:e},uc=function(e,n){let t;return n===2?(t=Math.floor(e.length/2),e.length%2?e[t]:(e[t-1]+e[t])/2):e.length%2?(t=(e.length*n+n)/4,t%1?(e[Math.floor(t)]+e[Math.floor(t)-1])/2:e[t-1]):(t=(e.length*n+2)/4,t%1?(e[Math.floor(t)]+e[Math.floor(t)-1])/2:e[t-1])},hc=function(e){let n;switch(e){case"undefined":e=void 0;break;case"null":e=null;break;case"true":e=!0;break;case"false":e=!1;break;default:n=parseFloat(e),e==n&&(e=n)}return e},fc=function(e){let n,t=[];for(n=e.length;n--;)t[n]=hc(e[n]);return t},So=function(e,n,t){let l;for(l=n.length;l--;)if(!(t&&n[l]===null)&&n[l]!==e)return!1;return!0},bd=function(e,n){let t,l,a=[];for(t=0,l=e.length;t0;s-=t)e.splice(s,0,l);return e.join("")},Pi=kd({init:function(e){let n,t,l=[];for(n in e)e.hasOwnProperty(n)&&typeof n=="string"&&n.indexOf(":")>-1&&(t=n.split(":"),t[0]=t[0].length===0?-Infinity:parseFloat(t[0]),t[1]=t[1].length===0?Infinity:parseFloat(t[1]),t[2]=e[n],l.push(t));this.map=e,this.rangelist=l||!1},get:function(e){let n=this.rangelist,t,l,a;if((a=this.map[e])!==void 0)return a;if(n){for(t=n.length;t--;)if(l=n[t],l[0]<=e&&l[1]>=e)return l[2]}}});$.range_map=function(e){return new Pi(e)};Ar={defaultOption:{common:{type:"line",lineColor:"#2ec7c9",fillColor:"#CCF3F4",defaultPixelsPerValue:3,width:"auto",height:"auto",composite:!1,tagValuesAttribute:"values",tagOptionsPrefix:"spark",enableTagOptions:!1,enableHighlight:!0,highlightLighten:1.4,tooltipSkipNull:!0,tooltipPrefix:"",tooltipSuffix:"",disableHiddenCheck:!1,numberFormatter:!1,numberDigitGroupCount:3,numberDigitGroupSep:",",numberDecimalMark:".",disableTooltips:!0,disableInteraction:!0,offsetX:0,offsetY:0},line:{spotColor:0,highlightSpotColor:"#5f5",highlightLineColor:"#f22",spotRadius:1.5,minSpotColor:0,maxSpotColor:0,lineWidth:1,normalRangeMin:void 0,normalRangeMax:void 0,normalRangeColor:"#ccc",drawNormalOnTop:!0,chartRangeMin:void 0,chartRangeMax:void 0,chartRangeMinX:void 0,chartRangeMaxX:void 0},bar:{barColor:"#fc5c5c",negBarColor:"#97b552",stackedBarColor:["#2ec7c9","#fc5c5c","#5ab1ef","#ffb980","#d87a80","#8d98b3","#e5cf0d","#97b552","#95706d","#dc69aa","#07a2a4","#9a7fd1","#588dd5","#f5994e","#c05050","#59678c","#c9ab00","#7eb00a","#6f5553","#c14089"],zeroColor:void 0,nullColor:void 0,zeroAxis:!0,barWidth:4,barSpacing:1,chartRangeMax:void 0,chartRangeMin:void 0,chartRangeClip:!1,colorMap:void 0},column:{barColor:"#fc5c5c",negBarColor:"#97b552",stackedBarColor:["#2ec7c9","#fc5c5c","#5ab1ef","#ffb980","#d87a80","#8d98b3","#e5cf0d","#97b552","#95706d","#dc69aa","#07a2a4","#9a7fd1","#588dd5","#f5994e","#c05050","#59678c","#c9ab00","#7eb00a","#6f5553","#c14089"],zeroColor:void 0,nullColor:void 0,zeroAxis:!0,barWidth:4,barSpacing:1,chartRangeMax:void 0,chartRangeMin:void 0,chartRangeClip:!1,colorMap:void 0},tristate:{barWidth:4,barSpacing:1,posBarColor:"#fc5c5c",negBarColor:"#97b552",zeroBarColor:"#999",colorMap:{}},discrete:{lineHeight:"auto",thresholdColor:"#fc5c5c",thresholdValue:0,chartRangeMax:void 0,chartRangeMin:void 0,chartRangeClip:!1},bullet:{targetColor:"#f33",targetWidth:3,performanceColor:"#33f",rangeColors:["#d3dafe","#a8b6ff","#7f94ff","#6D87FF","#5876FF","#4465FF","#2F54FF","#1A43FF","#0532FF"],base:void 0},pie:{offset:0,sliceColors:["#2ec7c9","#fc5c5c","#5ab1ef","#ffb980","#d87a80","#8d98b3","#e5cf0d","#97b552","#95706d","#dc69aa","#07a2a4","#9a7fd1","#588dd5","#f5994e","#c05050","#59678c","#c9ab00","#7eb00a","#6f5553","#c14089"],borderWidth:0,borderColor:"#000"},box:{raw:!1,boxLineColor:"#000",boxFillColor:"#cdf",whiskerColor:"#000",outlierLineColor:"#5E5E5E",outlierFillColor:"#fff",medianColor:"#f00",showOutliers:!0,outlierIQR:1.5,spotRadius:1.5,target:void 0,targetColor:"#4a2",chartRangeMax:void 0,chartRangeMin:void 0}},line:{type:"line",init:function(e,n,t,l,a){this.vertices=[],this.regionMap=[],this.xvalues=[],this.yvalues=[],this.yminmax=[],this.hightlightSpotId=null,this.lastShapeId=null},getRegion:function(e,n,t){let l,a=this.regionMap;for(l=a.length;l--;)if(a[l]!==null&&n>=a[l][0]&&n<=a[l][1])return a[l][2]},getCurrentRegionFields:function(){let e=this.currentRegion;return{isNull:this.yvalues[e]===null,x:this.xvalues[e],y:this.yvalues[e],color:this.options.get("lineColor"),fillColor:this.options.get("fillColor"),offset:e}},renderHighlight:function(){let e=this.currentRegion,n=this.target,t=this.vertices[e],l=this.options,a=l.get("spotRadius"),o=l.get("highlightSpotColor"),s=l.get("highlightLineColor"),u,f;!t||(a&&o&&(u=n.drawCircle(t[0],t[1],a,void 0,o),this.highlightSpotId=u.id,n.insertAfterShape(this.lastShapeId,u)),s&&(f=n.drawLine(t[0],this.canvasTop,t[0],this.canvasTop+this.canvasHeight,s),this.highlightLineId=f.id,n.insertAfterShape(this.lastShapeId,f)))},removeHighlight:function(){let e=this.target;this.highlightSpotId&&(e.removeShapeId(this.highlightSpotId),this.highlightSpotId=null),this.highlightLineId&&(e.removeShapeId(this.highlightLineId),this.highlightLineId=null)},scanValues:function(){let e=this.values,n=e.length,t=this.xvalues,l=this.yvalues,a=this.yminmax,o,s,u,f,d;for(o=0;othis.maxy&&(this.maxy=t)),e.get("chartRangeMin")!==void 0&&(e.get("chartRangeClip")||e.get("chartRangeMin")this.maxy)&&(this.maxy=e.get("chartRangeMax")),e.get("chartRangeMinX")!==void 0&&(e.get("chartRangeClipX")||e.get("chartRangeMinX")this.maxx)&&(this.maxx=e.get("chartRangeMaxX"))},drawNormalRange:function(e,n,t,l,a){let o=this.options.get("normalRangeMin"),s=this.options.get("normalRangeMax"),u=n+Math.round(t-t*((s-this.miny)/a)),f=Math.round(t*(s-o)/a);f==0&&o==s&&(f=1),this.target.drawRect(e,u,l,f,void 0,this.options.get("normalRangeColor")).append()},render:function(e,n){this.vertices=[],this.regionMap=[],this.xvalues=[],this.yvalues=[],this.yminmax=[],this.hightlightSpotId=null,this.lastShapeId=null,this.values=n;let t=this.options,l=this.target,a=e.mergedOptions.width,o=e.mergedOptions.height,s=this.vertices,u=t.get("spotRadius"),f=this.regionMap,d,m,g,y,v,k,b,w,x,C,S,_,T,A,R,I,N,L,M,F,E,z,O,V,q;if(this.scanValues(),this.processRangeOptions(),O=this.xvalues,V=this.yvalues,!(!this.yminmax.length||this.yvalues.length<2)){for(y=v=0,d=this.maxx-this.minx==0?1:this.maxx-this.minx,m=this.maxy-this.miny==0?1:this.maxy-this.miny,g=this.yvalues.length-1,u&&(athis.maxy&&(C=this.maxy),b.length||b.push([_,y+o]),k=[_,y+Math.round(o-o*((C-this.miny)/m))],b.push(k),s.push(k));for(N=[],L=[],M=w.length,q=0;q2&&(b[0]=[b[0][0],b[1][1]]),N.push(b));for(M=L.length,q=0;q-1,(y||$.isArray(O))&&(L=!0,y&&(O=n[x]=fc(O.split(":"))),O=bd(O,null),v=Math.min.apply(Math,O),k=Math.max.apply(Math,O),vg&&(g=k));this.stacked=L,this.regionShapes={},this.barWidth=Math.floor(l/n.length)-s,this.barSpacing=s,this.totalBarWidth=this.barWidth+s,this.width=l,d&&(I=u===void 0?-Infinity:u,N=f===void 0?Infinity:f),w=[],b=L?[]:w;let X=[],ee=[];for(x=0,C=n.length;x0&&(X[x]+=O),m<0&&g>0?O<0?ee[x]+=Math.abs(O):b[x]+=O:b[x]+=Math.abs(O),w.push(O));else O=d?Ni(n[x],I,N):n[x],O=n[x]=hc(O),O!==null&&w.push(O);this.max=R=Math.max.apply(Math,w),this.min=A=Math.min.apply(Math,w),this.stackMax=g=L?Math.max.apply(Math,X):R,this.stackMin=m=L?Math.min.apply(Math,w):A,t.get("chartRangeMin")!==void 0&&(t.get("chartRangeClip")||t.get("chartRangeMin")R)&&(R=t.get("chartRangeMax")),this.zeroAxis=_=t.get("zeroAxis",!0),A<=0&&R>=0&&_?T=0:_==!1?T=A:A>0?T=0:T=R,this.xaxisOffset=T,S=L?Math.max.apply(Math,b)+Math.max.apply(Math,ee):R-T,this.canvasHeightEf=_&&A<0?this.canvasHeight-2:this.canvasHeight-1,this.isNeg=!1,A=this.values.length?void 0:l},getCurrentRegionFields:function(){let e=this.currentRegion,n=ensureArray(this.values[e]),t=[],l,a;for(a=n.length;a--;)l=n[a],t.push({isNull:l===null,value:l,color:this.calcColor(a,l,e),offset:e});return t},calcColor:function(e,n,t){let l=this.colorMapByIndex,a=this.colorMapByValue,o=this.options,s,u;return this.stacked?s=o.get("stackedBarColor"):s=n<0?o.get("negBarColor"):o.get("barColor"),n===0&&o.get("zeroColor")!==void 0&&(s=o.get("zeroColor")),a&&(u=a.get(n))?s=u:l&&l.length>t&&(s=l[t]),$.isArray(s)?s[e%s.length]:s},renderRegion:function(e,n){let t=this.values[e],l=this.options,a=this.xaxisOffset,o=[],s=this.range,u=this.stacked,f=this.target,d=e*this.totalBarWidth,m=this.canvasHeightEf,g=this.yoffset,y,v,k,b,w,x,C,S,_,T;if(t=$.isArray(t)?t:[t],C=t.length,S=t[0],b=So(null,t),T=So(a,t,!0),b)return l.get("nullColor")?(k=n?l.get("nullColor"):this.calcHighlightColor(l.get("nullColor"),l),y=g>0?g-1:g,f.drawRect(y,d,0,this.barWidth-1,k,k)):void 0;for(w=g,this.isNeg&&(m=Math.floor(m/2)),x=0;x0?v=Math.floor(m*(Math.abs(S-a)/s)):v=m,S-1,(y||$.isArray(O))&&(L=!0,y&&(O=n[x]=fc(O.split(":"))),O=bd(O,null),v=Math.min.apply(Math,O),k=Math.max.apply(Math,O),vg&&(g=k));this.stacked=L,this.regionShapes={},this.barWidth=Math.floor(l/n.length)-s,this.barSpacing=s,this.totalBarWidth=this.barWidth+s,this.width=l,d&&(I=u===void 0?-Infinity:u,N=f===void 0?Infinity:f),w=[],b=L?[]:w;let X=[],ee=[];for(x=0,C=n.length;x0&&(X[x]+=O),m<0&&g>0?O<0?ee[x]+=Math.abs(O):b[x]+=O:b[x]+=Math.abs(O),w.push(O));else O=d?Ni(n[x],I,N):n[x],O=n[x]=hc(O),O!==null&&w.push(O);this.max=R=Math.max.apply(Math,w),this.min=A=Math.min.apply(Math,w),this.stackMax=g=L?Math.max.apply(Math,X):R,this.stackMin=m=L?Math.min.apply(Math,w):A,t.get("chartRangeMin")!==void 0&&(t.get("chartRangeClip")||t.get("chartRangeMin")R)&&(R=t.get("chartRangeMax")),this.zeroAxis=_=t.get("zeroAxis",!0),A<=0&&R>=0&&_?T=0:_==!1?T=A:A>0?T=0:T=R,this.xaxisOffset=T,S=L?Math.max.apply(Math,b)+Math.max.apply(Math,ee):R-T,this.canvasHeightEf=_&&A<0?this.canvasHeight-2:this.canvasHeight-1,this.isNeg=!1,A=this.values.length?void 0:l},getCurrentRegionFields:function(){let e=this.currentRegion,n=ensureArray(this.values[e]),t=[],l,a;for(a=n.length;a--;)l=n[a],t.push({isNull:l===null,value:l,color:this.calcColor(a,l,e),offset:e});return t},calcColor:function(e,n,t){let l=this.colorMapByIndex,a=this.colorMapByValue,o=this.options,s,u;return this.stacked?s=o.get("stackedBarColor"):s=n<0?o.get("negBarColor"):o.get("barColor"),n===0&&o.get("zeroColor")!==void 0&&(s=o.get("zeroColor")),a&&(u=a.get(n))?s=u:l&&l.length>t&&(s=l[t]),$.isArray(s)?s[e%s.length]:s},renderRegion:function(e,n){let t=this.values[e],l=this.options,a=this.xaxisOffset,o=[],s=this.range,u=this.stacked,f=this.target,d=e*this.totalBarWidth,m=this.canvasHeightEf,g=this.yoffset,y,v,k,b,w,x,C,S,_,T;if(t=$.isArray(t)?t:[t],C=t.length,S=t[0],b=So(null,t),T=So(a,t,!0),b)return l.get("nullColor")?(k=n?l.get("nullColor"):this.calcHighlightColor(l.get("nullColor"),l),y=g>0?g-1:g,f.drawRect(d,y,this.barWidth-1,0,k,k)):void 0;for(w=g,this.isNeg&&(m=Math.floor(m/2)),x=0;x0?v=Math.floor(m*(Math.abs(S-a)/s)):v=m,Sn?s=a[n]:t[n]<0?s=l.get("negBarColor"):t[n]>0?s=l.get("posBarColor"):s=l.get("zeroBarColor"),s},renderRegion:function(e,n){let t=this.values,l=this.options,a=this.target,o,s,u,f,d,m;if(o=this.canvasHeight,u=Math.round(o/2),f=e*this.totalBarWidth,t[e]<0?(d=u,s=u-1):t[e]>0?(d=0,s=u-1):(d=u-1,s=2),m=this.calcColor(t[e],e),m!==null)return n&&(m=this.calcHighlightColor(m,l)),a.drawRect(f,d,this.barWidth-1,s-1,m,m)}},discrete:{type:"discrete",init:function(e,n){let t=this.options,l=e.mergedOptions.width,a=e.mergedOptions.height;this.canvasWidth=e.mergedOptions.width,this.canvasHeight=e.mergedOptions.height,this.regionShapes={},this.values=n=$.map(n,Number),this.min=Math.min.apply(Math,n),this.max=Math.max.apply(Math,n),this.range=this.max-this.min,this.width=l,this.interval=Math.floor(l/n.length),this.itemWidth=l/n.length,t.get("chartRangeMin")!==void 0&&(t.get("chartRangeClip")||t.get("chartRangeMin")this.max)&&(this.max=t.get("chartRangeMax")),this.target&&(this.lineHeight=t.get("lineHeight")==="auto"?Math.round(this.canvasHeight*.3):t.get("lineHeight"))},getRegion:function(e,n,t){return Math.floor(n/this.itemWidth)},getCurrentRegionFields:function(){let e=this.currentRegion;return{isNull:this.values[e]===void 0,value:this.values[e],offset:e}},renderRegion:function(e,n){let t=this.values,l=this.options,a=this.min,o=this.max,s=this.range,u=this.interval,f=this.target,d=this.canvasHeight,m=this.lineHeight,g=d-m,y,v,k,b;return v=Ni(t[e],a,o),b=e*u,y=Math.round(g-g*((v-a)/s)),k=l.get("thresholdColor")&&v0)for(s=n.length;s--;)o+=n[s];this.total=o,this.radius=Math.floor(Math.min(this.canvasWidth,this.canvasHeight)/2)},getRegion:function(e,n,t){let l=this.target.getShapeAt(e,n,t);return l!==void 0&&this.shapes[l]!==void 0?this.shapes[l]:void 0},getCurrentRegionFields:function(){let e=this.currentRegion;return{isNull:this.values[e]===void 0,value:this.values[e],percent:this.values[e]/this.total*100,color:this.options.get("sliceColors")[e%this.options.get("sliceColors").length],offset:e}},changeHighlight:function(e){let n=this.currentRegion,t=this.renderSlice(n,e),l=this.valueShapes[n];delete this.shapes[l],this.target.replaceWithShape(l,t),this.valueShapes[n]=t.id,this.shapes[t.id]=n},renderSlice:function(e,n){let t=this.target,l=this.options,a=this.radius,o=l.get("borderWidth"),s=l.get("offset"),u=2*Math.PI,f=this.values,d=this.total,m=s?2*Math.PI*(s/360):0,g,y,v,k,b;for(k=f.length,v=0;v0&&(y=m+u*(f[v]/d)),e===v)return b=l.get("sliceColors")[v%l.get("sliceColors").length],n&&(b=this.calcHighlightColor(b,l)),t.drawPieSlice(a,a,a-o,g,y,void 0,b);m=y}},render:function(e,n){this.init(e,n);let t=this.target,l=this.values,a=this.options,o=this.radius,s=a.get("borderWidth"),u,f;for(s&&t.drawCircle(o,o,Math.floor(o-s/2),a.get("borderColor"),void 0,s).append(),f=l.length;f--;)l[f]&&(u=this.renderSlice(f).append(),this.valueShapes[f]=u.id,this.shapes[u.id]=f)}},box:{type:"box",init:function(e,n){let t=this.options,l=e.mergedOptions.width,a=e.mergedOptions.height;this.canvasWidth=e.mergedOptions.width,this.canvasHeight=e.mergedOptions.height,this.values=$.map(n,Number),this.width=t.get("width")==="auto"?"4.0em":l,this.values.length||(this.disabled=1)},getRegion:function(){return 1},getCurrentRegionFields:function(){let e=[{field:"lq",value:this.quartiles[0]},{field:"med",value:this.quartiles[1]},{field:"uq",value:this.quartiles[2]}];return this.loutlier!==void 0&&e.push({field:"lo",value:this.loutlier}),this.routlier!==void 0&&e.push({field:"ro",value:this.routlier}),this.lwhisker!==void 0&&e.push({field:"lw",value:this.lwhisker}),this.rwhisker!==void 0&&e.push({field:"rw",value:this.rwhisker}),e},render:function(e,n){this.init(e,n);let t=this.target,l=this.values,a=l.length,o=this.options,s=this.canvasWidth,u=this.canvasHeight,f=o.get("chartRangeMin")===void 0?Math.min.apply(Math,l):o.get("chartRangeMin"),d=o.get("chartRangeMax")===void 0?Math.max.apply(Math,l):o.get("chartRangeMax"),m=0,g,y,v,k,b,w,x,C,S,_,T;if(o.get("raw"))o.get("showOutliers")&&l.length>5?(y=l[0],g=l[1],k=l[2],b=l[3],w=l[4],x=l[5],C=l[6]):(g=l[0],k=l[1],b=l[2],w=l[3],x=l[4]);else if(l.sort(function(A,R){return A-R}),k=uc(l,1),b=uc(l,2),w=uc(l,3),v=w-k,o.get("showOutliers")){for(g=x=void 0,S=0;Sk-v*o.get("outlierIQR")&&(g=l[S]),l[S]x&&t.drawCircle((C-f)*T+m,u/2,o.get("spotRadius"),o.get("outlierLineColor"),o.get("outlierFillColor")).append()),t.drawRect(Math.round((k-f)*T+m),Math.round(u*.1),Math.round((w-k)*T),Math.round(u*.8),o.get("boxLineColor"),o.get("boxFillColor")).append(),t.drawLine(Math.round((g-f)*T+m),Math.round(u/2),Math.round((k-f)*T+m),Math.round(u/2),o.get("lineColor")).append(),t.drawLine(Math.round((g-f)*T+m),Math.round(u/4),Math.round((g-f)*T+m),Math.round(u-u/4),o.get("whiskerColor")).append(),t.drawLine(Math.round((x-f)*T+m),Math.round(u/2),Math.round((w-f)*T+m),Math.round(u/2),o.get("lineColor")).append(),t.drawLine(Math.round((x-f)*T+m),Math.round(u/4),Math.round((x-f)*T+m),Math.round(u-u/4),o.get("whiskerColor")).append(),t.drawLine(Math.round((b-f)*T+m),Math.round(u*.1),Math.round((b-f)*T+m),Math.round(u*.9),o.get("medianColor")).append(),o.get("target")&&(_=Math.ceil(o.get("spotRadius")),t.drawLine(Math.round((o.get("target")-f)*T+m),Math.round(u/2-_),Math.round((o.get("target")-f)*T+m),Math.round(u/2+_),o.get("targetColor")).append(),t.drawLine(Math.round((o.get("target")-f)*T+m-_),Math.round(u/2),Math.round((o.get("target")-f)*T+m+_),Math.round(u/2),o.get("targetColor")).append())}},shapeCount:0,shapes:{},shapeseq:[],lastShapeId:null,mergedOptions:null,init:function(e,n){let t,l,a;n=n||{};let o=this;return l=this.defaultOption,a=l.common,t=l[n.type||a.type],o.shapeCount=0,o.shapes={},o.shapeseq=[],o.lastShapeId=null,o.mergedOptions=$.extend({},a,t,n),o.mergedOptions.width=o.mergedOptions.width,o.mergedOptions.height=o.mergedOptions.height,o[o.mergedOptions.type].render(o,e),{shapes:o.shapes,shapeseq:o.shapeseq,offsetX:o.mergedOptions.offsetX,offsetY:o.mergedOptions.offsetY,pixelWidth:o.mergedOptions.width,pixelHeight:o.mergedOptions.height}},_getContext:function(e,n,t){let l;return this.ctx!=null?l=this.ctx:l=$("#"+this._canvasID).get(0).getContext("2d"),e!==void 0&&(l.strokeStyle=e),l.lineWidth=t===void 0?1:t,n!==void 0&&(l.fillStyle=n),l},reset:function(){this._getContext().clearRect(0,0,this.pixelWidth,this.pixelHeight),this.shapes={},this.shapeseq=[],this.currentTargetShapeId=void 0},_drawShape:function(e,n,t,l,a){let o=this._getContext(t,l,a),s,u;for(o.beginPath(),o.moveTo(n[0][0]+.5+this.offsetX,n[0][1]+.5+this.offsetY),s=1,u=n.length;s=h.visibledatarow.length&&(y=h.visibledatarow.length-1),v=st(h.visibledatacolumn,e),k=st(h.visibledatacolumn,e+t),v==-1&&(v=0),v+=s,k==-1&&(k=h.visibledatacolumn.length-1),k+=s,k>=h.visibledatacolumn.length&&(k=h.visibledatacolumn.length-1);let b,w,x,C;g==0?b=0:b=h.visibledatarow[g-1],w=h.visibledatarow[y],v==0?x=0:x=h.visibledatacolumn[v-1],C=h.visibledatacolumn[k],m.fillStyle="#ffffff",m.fillRect(a-1,o-1,C-e,w-n),m.font=Kn(),m.fillStyle=$l.fillStyle;let S=[],_={},T={},A=.5;Je.createHookFunction("cellAllRenderBefore",h.flowdata,d,m);for(let F=g;F<=y;F++){let E;F==0?E=-n-1:E=h.visibledatarow[F-1]-n-1;let z=h.visibledatarow[F]-n;if(!(h.config.rowhidden!=null&&h.config.rowhidden[F]!=null))for(let O=v;O<=k;O++){let V;O==0?V=-e:V=h.visibledatacolumn[O-1]-e;let q=h.visibledatacolumn[O]-e;if(h.config.colhidden!=null&&h.config.colhidden[O]!=null)continue;let W=h.defaultcollen;if(h.config.columnlen!=null&&h.config.columnlen[O]!=null&&(W=h.config.columnlen[O]),h.flowdata[F]!=null&&h.flowdata[F][O]!=null){let X=h.flowdata[F][O];if(P(X)=="object"&&"mc"in X)if(T[F+"_"+O]={start_r:E,start_c:V,end_r:z,end_c:q},"rs"in X.mc){let ee="r"+F+"c"+O;_[ee]=S.length}else{let ee="r"+X.mc.r+"c"+X.mc.c,te=S[_[ee]];te==null?(_[ee]=S.length,S.push({r:F,c:O,start_c:V,start_r:E,end_r:z,end_c:q,firstcolumnlen:W})):(te.c==O&&(te.end_r+=z-E-1),te.r==F&&(te.end_c+=q-V,te.firstcolumnlen+=W));continue}}S.push({r:F,c:O,start_r:E,start_c:V,end_r:z,end_c:q,firstcolumnlen:W}),T[F+"_"+O]={start_r:E,start_c:V,end_r:z,end_c:q}}}let R=Si(h.luckysheetfile[K(h.currentSheetIndex)].dynamicArray),I=el.getComputeMap(),N=Se.getComputeMap(),L=S2(m,v,k,g,y),M=[];for(let F=0;F0){let F=function(q,W,X,ee,te,se,ce,oe,ue){let he=q,Z=ee-2+A+ce,G=X+oe-1,le=ee-2+A+ce,pe=te-2+A+oe;ue.save(),be.setLineDash(ue,he,"v",Z,G,le,pe),ue.strokeStyle=W,ue.stroke(),ue.closePath(),ue.restore()},E=function(q,W,X,ee,te,se,ce,oe,ue){let he=q,Z=se-2+A+ce,G=X+oe-1,le=se-2+A+ce,pe=te-2+A+oe;ue.save(),be.setLineDash(ue,he,"v",Z,G,le,pe),ue.strokeStyle=W,ue.stroke(),ue.closePath(),ue.restore()},z=function(q,W,X,ee,te,se,ce,oe,ue){let he=q,Z=ee-2+A+ce,G=te-2+A+oe,le=se-2+A+ce,pe=te-2+A+oe;ue.save(),be.setLineDash(ue,he,"h",Z,G,le,pe),ue.strokeStyle=W,ue.stroke(),ue.closePath(),ue.restore()},O=function(q,W,X,ee,te,se,ce,oe,ue){let he=q,Z=ee-2+A+ce,G=X-1+A+oe,le=se-2+A+ce,pe=X-1+A+oe;ue.save(),be.setLineDash(ue,he,"h",Z,G,le,pe),ue.strokeStyle=W,ue.stroke(),ue.closePath(),ue.restore()},V=Ks(g,y,v,k);for(let q in V){let W=q.substr(0,q.indexOf("_")),X=q.substr(q.indexOf("_")+1);if(T[W+"_"+X]){let ee=T[W+"_"+X].start_r,te=T[W+"_"+X].start_c,se=T[W+"_"+X].end_r,ce=T[W+"_"+X].end_c,oe=pc(L,W,X,v,k),ue=V[q].l;ue!=null&&(!oe.colIn||oe.stc==X)&&F(ue.style,ue.color,ee,te,se,ce,a,o,m);let he=V[q].r;he!=null&&(!oe.colIn||oe.colLast)&&E(he.style,he.color,ee,te,se,ce,a,o,m);let Z=V[q].t;Z!=null&&O(Z.style,Z.color,ee,te,se,ce,a,o,m);let G=V[q].b;G!=null&&z(G.style,G.color,ee,te,se,ce,a,o,m)}}}k==h.visibledatacolumn.length-1&&m.clearRect(C-e+a-1,o-1,h.ch_width-h.visibledatacolumn[k],w-n),m.restore(),h.measureTextCacheTimeOut=setTimeout(()=>{h.measureTextCache={},h.measureTextCellInfoCache={},h.cellOverflowMapCache={}},100)}function S2(e,n,t,l,a){let o={},s=h.flowdata;for(let u=l;u<=a;u++){if(s[u]==null)continue;if(h.cellOverflowMapCache[u]!=null){o[u]=h.cellOverflowMapCache[u];continue}let f=!1;for(let d=0;d=n)&&ws[e].length-1)return{success:!1,r:e,c:t};let u=s[e][t];if(u!=null&&(!de(u.v)||u.mc!=null))return{success:!1,r:e,c:t};let f=n-1<0?0:h.visibledatacolumn[n-1],d=h.visibledatacolumn[n],m=o-(d-f);a=="0"?(f-=m/2,d+=m/2):a=="1"?d+=m:a=="2"&&(f-=m);let g=t-1<0?0:h.visibledatacolumn[t-1],y=h.visibledatacolumn[t];if(l=="forward")return fy?Ga(e,n,t+1,l,a,o):d>g?{success:!0,r:e,c:t}:{success:!1,r:e,c:t}}function pc(e,n,t,l,a){let o=!1,s=!1,u,f,d,m;for(let g in e){for(let y in e[g]){u=g,f=y;let v=e[g][y];if(d=v.stc,m=v.edc,u==n&&t>=d&&t<=m&&(o=!0,t==m||t==a)){s=!0;break}}if(s)break}return{colIn:o,colLast:s,rowIndex:u,colIndex:f,stc:d,edc:m}}function Td(e,n,t){if(e==null)return;let l=e.values,a=t.pos_x,o=t.pos_y;if(l!=null){e.rotate!=0&&e.type!="verticalWrap"&&(n.save(),n.translate((a+e.textLeftAll)/h.zoomRatio,(o+e.textTopAll)/h.zoomRatio),n.rotate(-e.rotate*Math.PI/180),n.translate(-(e.textLeftAll+a)/h.zoomRatio,-(o+e.textTopAll)/h.zoomRatio));for(let s=0;s{cn();yr();Ha();dc();ol();vr();Wt();zr();po();Ca();Pt();pr();Zt();ja();Dt();ht();yn();zl();Xe();vt();gl();xd=function(e,n,t,l,a,o){if(h.flowdata[e]==null||h.flowdata[e][n]==null)return;let s=h.flowdata[e][n].spl;if(s!=null){if(typeof s=="string"&&(s=new Function("return "+s)()),P(s)=="object"){let u=s,f=u.offsetX,d=u.offsetY;f=f==null?0:f,d=d==null?0:d,Jl.render(u.shapeseq,u.shapes,t+f,l+d,u.pixelWidth,u.pixelHeight,a,o)}else if(P(s)=="array"&&P(s[0])=="object")for(let u=0;uce?A:ce,he=ee+ue-I;u.textBaseline="bottom";let Z=he-13*h.zoomRatio;L=="0"?(he=ee+ue/2,u.textBaseline="middle",Z=he-6*h.zoomRatio):L=="1"&&(he=ee+I,u.textBaseline="top",Z=he+1*h.zoomRatio),oe=oe/h.zoomRatio,he=he/h.zoomRatio,Z=Z/h.zoomRatio,u.lineWidth=1,u.strokeStyle="#000",u.strokeRect(oe,Z,10,10),V[e+"_"+n].checked&&(u.beginPath(),u.lineTo(oe+1,Z+6),u.lineTo(oe+4,Z+9),u.lineTo(oe+9,Z+2),u.stroke(),u.closePath()),u.fillStyle=be.checkstatus(h.flowdata,e,n,"fc"),u.fillText(s==null?"":s,oe+14,he),u.restore()}else{if(F!=null&&F.dataBar!=null&&F.dataBar.valueLen&&F.dataBar.valueLen.toString()!=="NaN"){let se=l+m+R,ce=t+g+I,oe=T-R*2,ue=A-I*2,he=F.dataBar.valueType,Z=F.dataBar.valueLen,G=F.dataBar.format;if(he=="minus"){let le=F.dataBar.minusLen;if(G.length>1){let pe=u.createLinearGradient(se+oe*le*(1-Z),ce,se+oe*le,ce);pe.addColorStop(0,"#ffffff"),pe.addColorStop(1,"#ff0000"),u.fillStyle=pe}else u.fillStyle="#ff0000";u.fillRect(se+oe*le*(1-Z),ce,oe*le*Z,ue),u.beginPath(),u.moveTo(se+oe*le*(1-Z),ce),u.lineTo(se+oe*le*(1-Z),ce+ue),u.lineTo(se+oe*le,ce+ue),u.lineTo(se+oe*le,ce),u.lineTo(se+oe*le*(1-Z),ce),u.lineWidth=1,u.strokeStyle="#ff0000",u.stroke(),u.closePath()}else if(he=="plus"){let le=F.dataBar.plusLen;if(le==1){if(G.length>1){let pe=u.createLinearGradient(se,ce,se+oe*Z,ce);pe.addColorStop(0,G[0]),pe.addColorStop(1,G[1]),u.fillStyle=pe}else u.fillStyle=G[0];u.fillRect(se,ce,oe*Z,ue),u.beginPath(),u.moveTo(se,ce),u.lineTo(se,ce+ue),u.lineTo(se+oe*Z,ce+ue),u.lineTo(se+oe*Z,ce),u.lineTo(se,ce),u.lineWidth=1,u.strokeStyle=G[0],u.stroke(),u.closePath()}else{let pe=F.dataBar.minusLen;if(G.length>1){let ie=u.createLinearGradient(se+oe*pe,ce,se+oe*pe+oe*le*Z,ce);ie.addColorStop(0,G[0]),ie.addColorStop(1,G[1]),u.fillStyle=ie}else u.fillStyle=G[0];u.fillRect(se+oe*pe,ce,oe*le*Z,ue),u.beginPath(),u.moveTo(se+oe*pe,ce),u.lineTo(se+oe*pe,ce+ue),u.lineTo(se+oe*pe+oe*le*Z,ce+ue),u.lineTo(se+oe*pe+oe*le*Z,ce),u.lineTo(se+oe*pe,ce),u.lineWidth=1,u.strokeStyle=G[0],u.stroke(),u.closePath()}}}let X=l+m,ee=t+g+1;u.save(),u.beginPath(),u.rect(X,ee,T,A),u.clip(),u.scale(h.zoomRatio,h.zoomRatio);let te=$r(_,u,{cellWidth:T,cellHeight:A,space_width:R,space_height:I,r:e,c:n});if(F!=null&&F.icons!=null&&te.type=="plain"){let se=F.icons.left,ce=F.icons.top,oe=te.values[0],ue=X+oe.left,he=ee+oe.top-te.textHeightAll;L=="0"?he=ee+A/2-te.textHeightAll/2:L=="1"?he=ee:L=="2"&&(he=he-te.desc),he=he/h.zoomRatio,ue=ue/h.zoomRatio,u.drawImage(_a,se*42,ce*32,32,32,X/h.zoomRatio,he,te.textHeightAll/h.zoomRatio,te.textHeightAll/h.zoomRatio),N!="0"&&N!="2"&&(ue=ue+te.textHeightAll/h.zoomRatio)}u.fillStyle=be.checkstatus(h.flowdata,e,n,"fc"),M!=null&&M[0]!=null&&(u.fillStyle=M[0]),F!=null&&F.textColor!=null&&(u.fillStyle=F.textColor),_.ct&&_.ct.fa&&_.ct.fa.indexOf("[Red]")>-1&&_.ct.t=="n"&&_.v<0&&(u.fillStyle="#ff0000"),Td(te,u,{pos_x:X,pos_y:ee}),u.restore()}q&&!h.luckysheetcurrentisPivotTable&&h.showGridLines&&(u.beginPath(),u.moveTo(o+m-2+C,t+g),u.lineTo(o+m-2+C,a+g),u.lineWidth=1,u.strokeStyle=$l.strokeStyle,u.stroke(),u.closePath()),!h.luckysheetcurrentisPivotTable&&h.showGridLines&&(u.beginPath(),u.moveTo(l+m-1,a+g-2+C),u.lineTo(o+m-1,a+g-2+C),u.lineWidth=1,u.strokeStyle=$l.strokeStyle,u.stroke(),u.closePath()),Je.createHookFunction("cellRenderAfter",h.flowdata[e][n],{r:e,c:n,start_r:O[1],start_c:O[0],end_r:O[3]+O[1],end_c:O[2]+O[0]},ve.getSheetByIndex(),u)},Cd=function(e,n,t,l,a,o,s,u,f,d,m){let g;e==0?g=-o-1:g=h.visibledatarow[e-1]-o-1;let y=h.visibledatarow[e]-o,v;t==0?v=-s:v=h.visibledatacolumn[t-1]-s;let k=h.visibledatacolumn[l]-s,b=h.flowdata[e][n],w=k-v-2,x=y-g-2,C=2,S=2,_=v+u,T=g+f+1,A=oa(b);a.font=A,a.save(),a.beginPath(),a.rect(_,T,w,x),a.clip(),a.scale(h.zoomRatio,h.zoomRatio);let R=$r(b,a,{cellWidth:w,cellHeight:x,space_width:C,space_height:S,r:e,c:n}),I=el.checksAF(e,n,d),N=Se.checksCF(e,n,m);a.fillStyle=be.checkstatus(h.flowdata,e,n,"fc"),I!=null&&I[0]!=null&&(a.fillStyle=I[0]),N!=null&&N.textColor!=null&&(a.fillStyle=N.textColor),Td(R,a,{pos_x:_,pos_y:T}),a.restore()}});var $2,Cl,Wa=$e(()=>{ht();Zt();Xt();Zl();qt();tl();Qt();Wt();Jt();ll();gl();Vl();ol();Dt();vt();Xe();$2={item:{linkType:"external",linkAddress:"",linkTooltip:""},hyperlink:null,createDialog:function(){let e=this,n=Q(),t=n.insertLink,l=n.toolbar,a=n.button;$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-insertLink-dialog").remove();let o="";h.luckysheetfile.forEach(k=>{o+=``});let s=`
+
+ + +
+
+ + +
+
+
+ + +
+
+
+
+ + +
+
+ + +
+
+
+ + +
+
`;$("body").append(_e(dt,{id:"luckysheet-insertLink-dialog",addclass:"luckysheet-insertLink-dialog",title:l.insertLink,content:s,botton:` + `,style:"z-index:100003"}));let u=$("#luckysheet-insertLink-dialog").find(".luckysheet-modal-dialog-content").css("min-width",350).end(),f=u.outerHeight(),d=u.outerWidth(),m=$(window).width(),g=$(window).height(),y=$(document).scrollLeft(),v=$(document).scrollTop();$("#luckysheet-insertLink-dialog").css({left:(m+y-d)/2,top:(g+v-f)/3}).show(),e.dataAllocation()},init:function(){let e=this,t=Q().insertLink;$(document).off("change.linkType").on("change.linkType","#luckysheet-insertLink-dialog-linkType",function(l){let a=this.value;$("#luckysheet-insertLink-dialog .show-box").hide(),$("#luckysheet-insertLink-dialog .show-box-"+a).show()}),$(document).off("click.confirm").on("click.confirm","#luckysheet-insertLink-dialog-confirm",function(l){let a=h.luckysheet_select_save[h.luckysheet_select_save.length-1],o=a.row_focus||a.row[0],s=a.column_focus||a.column[0],u=$("#luckysheet-insertLink-dialog-linkText").val(),f=$("#luckysheet-insertLink-dialog-linkType").val(),d=$("#luckysheet-insertLink-dialog-linkAddress").val(),m=$("#luckysheet-insertLink-dialog-linkSheet").val(),g=$("#luckysheet-insertLink-dialog-linkCell").val(),y=$("#luckysheet-insertLink-dialog-linkTooltip").val();if(f=="external"){if(/^http[s]?:\/\//.test(d)||(d="https://"+d),!/^http[s]?:\/\/([\w\-\.]+)+[\w-]*([\w\-\.\/\?%&=]+)?$/ig.test(d)){U.info('',t.tooltipInfo1);return}}else{if(!p.iscelldata(g)){U.info('',t.tooltipInfo2);return}d=m+"!"+g}(u==null||u.replace(/\s/g,"")=="")&&(u=d);let v={linkType:f,linkAddress:d,linkTooltip:y},k=$.extend(!0,{},e.hyperlink),b=$.extend(!0,{},e.hyperlink);b[o+"_"+s]=v;let w=we.deepCopyFlowData(h.flowdata),x=w[o][s];x==null&&(x={}),x.fc="rgb(0, 0, 255)",x.un=1,x.v=x.m=u,w[o][s]=x,e.ref(k,b,h.currentSheetIndex,w,[{row:[o,o],column:[s,s]}]),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-insertLink-dialog").hide()})},dataAllocation:function(){let e=this,n=h.luckysheet_select_save[h.luckysheet_select_save.length-1],t=n.row_focus||n.row[0],l=n.column_focus||n.column[0],o=(e.hyperlink||{})[t+"_"+l]||{},s=ze(t,l,null,"m");$("#luckysheet-insertLink-dialog-linkText").val(s);let u=o.linkType||"external";$("#luckysheet-insertLink-dialog-linkType").val(u),$("#luckysheet-insertLink-dialog .show-box").hide(),$("#luckysheet-insertLink-dialog .show-box-"+u).show();let f=o.linkAddress||"";if(u=="external")$("#luckysheet-insertLink-dialog-linkAddress").val(f);else if(p.iscelldata(f)){let m=f.split("!")[0],g=f.split("!")[1];$("#luckysheet-insertLink-dialog-linkSheet").val(m),$("#luckysheet-insertLink-dialog-linkCell").val(g)}let d=o.linkTooltip||"";$("#luckysheet-insertLink-dialog-linkTooltip").val(d)},cellFocus:function(e,n){let t=this;if(t.hyperlink==null||t.hyperlink[e+"_"+n]==null)return;let l=t.hyperlink[e+"_"+n];if(l.linkType=="external")window.open(l.linkAddress);else{let a=p.getcellrange(l.linkAddress),o=a.sheetIndex,s=[{row:a.row,column:a.column}];o!=h.currentSheetIndex&&($("#luckysheet-sheet-area div.luckysheet-sheets-item").removeClass("luckysheet-sheets-item-active"),$("#luckysheet-sheets-item"+o).addClass("luckysheet-sheets-item-active"),ve.changeSheet(o)),h.luckysheet_select_save=s,tt(!0);let u=a.row[0]-1==-1?0:h.visibledatarow[a.row[0]-1],f=a.column[0]-1==-1?0:h.visibledatacolumn[a.column[0]-1];$("#luckysheet-scrollbar-x").scrollLeft(f),$("#luckysheet-scrollbar-y").scrollTop(u)}},overshow:function(e){let n=this;if($("#luckysheet-hyperlink-overshow").remove(),$(e.target).closest("#luckysheet-cell-main").length==0)return;let t=nt(e.pageX,e.pageY),l=$("#luckysheet-cell-main").scrollLeft(),a=$("#luckysheet-cell-main").scrollTop(),o=t[0]+l,s=t[1]+a;if(Y.freezenverticaldata!=null&&t[0] +
${g}
+
\u5355\u51FB\u9F20\u6807\u53EF\u4EE5\u8FFD\u8E2A
+ `;$(w).appendTo($("#luckysheet-cell-main"))},ref:function(e,n,t,l,a){let o=this;if(h.clearjfundo){h.jfundo.length=0;let s={};s.type="updateHyperlink",s.sheetIndex=t,s.historyHyperlink=e,s.currentHyperlink=n,s.data=h.flowdata,s.curData=l,s.range=a,h.jfredo.push(s)}o.hyperlink=n,h.luckysheetfile[K(t)].hyperlink=n,h.flowdata=l,we.webWorkerFlowDataCache(h.flowdata),h.luckysheetfile[K(t)].data=h.flowdata,ne.allowUpdate&&(ne.saveParam("all",t,n,{k:"hyperlink"}),ne.historyParam(h.flowdata,t,a[0])),setTimeout(function(){Be()},1)}},Cl=$2});function gc(e,n,t){p.execFunctionExist=[];for(let l=0;l-1)d.type="extend",d.config=$.extend(!0,{},h.config),d.curconfig=$.extend(!0,{},l),d.range=$.extend(!0,[],h.luckysheet_select_save),d.currange=a,d.ctrlType=o,d.ctrlValue=s,ne.saveParam("arc",h.currentSheetIndex,{index:s.index,len:s.len,direction:s.direction,mc:l.merge},{rc:s.type});else if(o.indexOf("dele")>-1)d.type="dele",d.config=$.extend(!0,{},h.config),d.curconfig=$.extend(!0,{},l),d.range=$.extend(!0,[],h.luckysheet_select_save),d.currange=a,d.ctrlType=o,d.ctrlValue=s,ne.saveParam("drc",h.currentSheetIndex,{index:s.index,len:s.len,mc:l.merge,borderInfo:l.borderInfo},{rc:s.type});else{d.type="datachangeAll",d.range=$.extend(!0,[],h.luckysheet_select_save),d.currange=a,d.ctrlType=o,d.ctrlValue=s,m=!0;for(let g=0;g0&&tt(),m&&gc(a,h.currentSheetIndex,t),St(n,e),f&&(Dr=setTimeout(function(){Be()},1)),ve.storeSheetParamALL(),window.luckysheet_getcelldata_cache=null}function Pa(e,n,t){clearTimeout(Dr),h.clearjfundo&&(h.jfundo.length=0,h.jfredo.push({type:"rangechange",data:h.flowdata,curdata:e,range:n,sheetIndex:h.currentSheetIndex,cdformat:$.extend(!0,[],h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save),curCdformat:t})),h.flowdata=e,we.webWorkerFlowDataCache(h.flowdata),h.luckysheetfile[K(h.currentSheetIndex)].data=h.flowdata,t!=null&&(h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save=t),gc(n,h.currentSheetIndex,e),Dr=setTimeout(function(){Be()},1);for(let l=0;l0)for(let x=0;x0)for(let g=0;g0&&tt(),h.luckysheetfile[K(e.sheetIndex)].luckysheet_conditionformat_save=e.curCdformat,h.luckysheetfile[K(n.sheetIndex)].luckysheet_conditionformat_save=n.curCdformat,h.currentSheetIndex==e.sheetIndex?Ye.dataVerification=e.curDataVerification:h.currentSheetIndex==n.sheetIndex&&(Ye.dataVerification=n.curDataVerification),h.luckysheetfile[K(e.sheetIndex)].dataVerification=e.curDataVerification,h.luckysheetfile[K(n.sheetIndex)].dataVerification=n.curDataVerification,p.execFunctionExist.reverse(),p.execFunctionGroup(null,null,null,null,n.curData),p.execFunctionGlobalData=null;let o=K(h.currentSheetIndex),s=h.luckysheetfile[o];s.scrollTop=$("#luckysheet-cell-main").scrollTop(),s.scrollLeft=$("#luckysheet-cell-main").scrollLeft(),ve.showSheet(),Dr=setTimeout(function(){Be()},1),ve.storeSheetParamALL(),ne.saveParam("all",e.sheetIndex,e.curConfig,{k:"config"}),ne.saveParam("all",n.sheetIndex,n.curConfig,{k:"config"}),ne.historyParam(e.curData,e.sheetIndex,{row:e.range.row,column:e.range.column}),ne.historyParam(n.curData,n.sheetIndex,{row:n.range.row,column:n.range.column}),ne.saveParam("all",e.sheetIndex,e.curCdformat,{k:"luckysheet_conditionformat_save"}),ne.saveParam("all",n.sheetIndex,n.curCdformat,{k:"luckysheet_conditionformat_save"}),ne.saveParam("all",e.sheetIndex,e.curDataVerification,{k:"dataVerification"}),ne.saveParam("all",n.sheetIndex,n.curDataVerification,{k:"dataVerification"})}function St(e,n,t=!0){vn(e,n),clearTimeout(Dr),ve.storeSheetParam();let l=h.luckysheetfile[K(h.currentSheetIndex)].calcChain;if(l!=null&&l.length>0){h.config.rowlen==null&&(h.config.rowlen={}),h.config.columnlen==null&&(h.config.columnlen={});for(let a=0;a0&&$("#luckysheet-filter-options-sheet"+h.currentSheetIndex+" .luckysheet-filter-options").each(function(a,o){let s=$(o).data("str"),u=$(o).data("cindex"),f=h.visibledatacolumn[u]-20,d=s-1==-1?0:h.visibledatarow[s-1];$(o).css({left:f,top:d})});if($("#luckysheet-filter-selected-sheet"+h.currentSheetIndex).length>0){let a=h.luckysheetfile[K(h.currentSheetIndex)].filter_select,o=a.row[0],s=a.row[1],u=a.column[0],f=a.column[1],d=h.visibledatarow[s],m=o-1==-1?0:h.visibledatarow[o-1],g=h.visibledatacolumn[f],y=u-1==-1?0:h.visibledatacolumn[u-1];$("#luckysheet-filter-selected-sheet"+h.currentSheetIndex).css({left:y,width:g-y-1,top:m,height:d-m-1})}ve.showSheet(),t&&(Dr=setTimeout(function(){Be()},1))}function Be(e,n){if(p.groupValuesRefresh(),e==null&&(e=$("#luckysheet-cell-main").scrollLeft()),n==null&&(n=$("#luckysheet-cell-main").scrollTop()),Y.freezenverticaldata!=null||Y.freezenhorizontaldata!=null){let t,l,a,o,s,u,f=h.luckysheetTableContentHW[0],d=h.luckysheetTableContentHW[1];Y.freezenverticaldata!=null&&Y.freezenhorizontaldata!=null?(t=Y.freezenhorizontaldata[0],l=Y.freezenhorizontaldata[1],a=Y.freezenhorizontaldata[2],o=Y.freezenverticaldata[0],s=Y.freezenverticaldata[1],u=Y.freezenverticaldata[2],ar(u,a,o,t,1,1,null,null,"freezen_3"),ar(e+o-u,a,f-o+u,t,1,1,null,null,"freezen_4"),ar(u,n+t-a,o,d-t+a,1,1,null,null,"freezen_7"),ar(e+o-u,n+t-a,f-o+u,d-t+a,o-u+h.rowHeaderWidth,t-a+h.columnHeaderHeight),pa(u,o,h.rowHeaderWidth),pa(e+o-u,f-o+u,o-u+h.rowHeaderWidth),ma(a,t,h.columnHeaderHeight),ma(n+t-a,d-t+a,t-a+h.columnHeaderHeight)):Y.freezenhorizontaldata!=null?(t=Y.freezenhorizontaldata[0],l=Y.freezenhorizontaldata[1],a=Y.freezenhorizontaldata[2],ar(e,a,f,t,1,1,null,null,"freezen_h"),ar(e,n+t-a,f,d-t+a,null,t-a+h.columnHeaderHeight),pa(e,f,null),ma(a,t,h.columnHeaderHeight),ma(n+t-a,d-t+a,t-a+h.columnHeaderHeight)):Y.freezenverticaldata!=null&&(o=Y.freezenverticaldata[0],s=Y.freezenverticaldata[1],u=Y.freezenverticaldata[2],ar(u,n,o,d,1,1,null,null,"freezen_v"),ar(e+o-u,n,f-o+u,d,o-u+h.rowHeaderWidth,null),ma(n,d,null),pa(u,o,h.rowHeaderWidth),pa(e+o-u,f-o+u,o-u+h.rowHeaderWidth))}else{if($("#luckysheetTableContent").length==0)return;let t=$("#luckysheetTableContent").get(0).getContext("2d");ar(e,n),pa(e),ma(n),t.clearRect(0,0,h.rowHeaderWidth*h.devicePixelRatio-1,h.columnHeaderHeight*h.devicePixelRatio-1)}}var Dr,Xt=$e(()=>{Ri();qt();Qt();gr();Zt();pr();$o();Vl();ll();gl();Gr();vr();Wa();Jt();wn();Dt();Xe();Dr=null});function Sd(e,n,t){return new Promise((l,a)=>{let o=new XMLHttpRequest||new ActiveXObject("Microsoft.XMLHTTP");o.open(e,n),o.send(JSON.stringify(t)),o.onreadystatechange=function(){o.readyState==4&&(o.status==200?l(o.responseText):a("error"))}})}var $d=$e(()=>{});var yc,Li,ga,ne,ll=$e(()=>{yc=El(Ff());Bs();Xt();Qt();Wt();gl();ol();wn();Vl();Gr();jr();vr();Wa();ht();Dt();Xe();Jt();vt();Li=El(kn());Va();Sl();$d();zl();ga={gridKey:null,loadUrl:null,updateUrl:null,updateImageUrl:null,title:null,loadSheetUrl:null,retryTimer:null,allowUpdate:!1,historyParam:function(e,n,t){let l=this,a=t.row[0],o=t.row[1],s=t.column[0],u=t.column[1];if(a==o&&s==u){let f=e[a][s];l.saveParam("v",n,f,{r:a,c:s})}else{let f=o-a+1,d=u-s+1,m=Math.floor(1e3/d),g=Math.ceil(f/m);for(let y=0;y{console.log(u)}).catch(u=>{console.log(u)});else{let u=yc.default.gzip(encodeURIComponent(JSON.stringify(o)),{to:"string"});a.websocket!=null&&a.websocket.send(u)}},websocket:null,wxErrorCount:0,openWebSocket:function(){let e=this;if("WebSocket"in window){let n=e.updateUrl+"?t=111&g="+encodeURIComponent(e.gridKey);e.updateUrl.indexOf("?")>-1&&(n=e.updateUrl+"&t=111&g="+encodeURIComponent(e.gridKey)),e.websocket=new WebSocket(n),e.websocket.onopen=function(){console.info(Q().websocket.success),Ti(),e.wxErrorCount=0,e.retryTimer=setInterval(function(){e.websocket.send("rub")},6e4)},e.websocket.onmessage=function(t){h.result=t;let l=new Function("return "+t.data)();Je.createHookFunction("cooperativeMessage",l),console.info(l);let a=l.type,{message:o,id:s}=l;if(o==="\u7528\u6237\u9000\u51FA"&&($("#luckysheet-multipleRange-show-"+s).hide(),h.cooperativeEdit.changeCollaborationSize=h.cooperativeEdit.changeCollaborationSize.filter(u=>u.id!=s),h.cooperativeEdit.checkoutData=h.cooperativeEdit.checkoutData.filter(u=>u.id!=s)),a==1){let u=l.data.v.index,f=h.luckysheetfile.filter(d=>d.index===u)[0];f!==null&&setTimeout(()=>{let d=l.data.i;f.index=d,h.currentSheetIndex=d,$(`#luckysheet-sheets-item${u}`).attr("data-index",d),$(`#luckysheet-sheets-item${u}`).prop("id",`luckysheet-sheets-item${d}`),$(`#luckysheet-datavisual-selection-set-${u}`).prop("id",`luckysheet-datavisual-selection-set-${d}`)},1)}else if(a==2){let u=JSON.parse(l.data);e.wsUpdateMsg(u);let f=JSON.parse(l.data);f.k=="columnlen"?Un(f.v,null):f.k=="rowlen"&&Un(null,f.v)}else if(a==3){let u=l.id,f=l.username,d=JSON.parse(l.data),m=d.t,g=d.i,y=d.v;h.cooperativeEdit.changeCollaborationSize.length===0&&h.cooperativeEdit.changeCollaborationSize.push({id:u,v:d.v[0],i:g}),h.cooperativeEdit.changeCollaborationSize.some(x=>x.id==u)?h.cooperativeEdit.changeCollaborationSize.forEach(x=>{x.id==u&&(x.v=d.v[0]||d.range[0],x.i=g)}):h.cooperativeEdit.changeCollaborationSize.push({id:u,v:d.v[0],i:g}),P(y)!="array"&&P(y)!=="object"&&(y=JSON.parse(y));let k=0,b=0;if(g==h.currentSheetIndex?P(y)==="object"&&y.op==="enterEdit"?(k=y.range[y.range.length-1].row[0],b=y.range[y.range.length-1].column[0],e.multipleRangeShow(u,f,k,b,y.op)):(k=y[y.length-1].row[0],b=y[y.length-1].column[0],e.multipleRangeShow(u,f,k,b)):P(y)==="object"&&y.op==="enterEdit"?(k=y.range[y.range.length-1].row[0],b=y.range[y.range.length-1].column[0]):(k=y[y.length-1].row[0],b=y[y.length-1].column[0]),h.cooperativeEdit.checkoutData.length===0&&(y.op?h.cooperativeEdit.checkoutData.push({id:u,username:f,r:k,c:b,op:y.op,index:g}):h.cooperativeEdit.checkoutData.push({id:u,username:f,r:k,c:b,index:g})),h.cooperativeEdit.checkoutData.some(x=>x.id==u)?h.cooperativeEdit.checkoutData.forEach(x=>{x.id==u&&(x.username=f,x.r=k,x.c=b,x.index=g,y.op==="enterEdit"&&(x.op=y.op))}):y.op==="enterEdit"?h.cooperativeEdit.checkoutData.push({id:u,username:f,r:k,c:b,op:y.op,index:g}):h.cooperativeEdit.checkoutData.push({id:u,username:f,r:k,c:b,index:g}),h.cooperativeEdit.checkoutData.forEach(x=>{x.index!=h.currentSheetIndex&&($("#luckysheet-multipleRange-show-"+x.id).hide(),x.op=="")}),$("#luckysheet-multipleRange-show-"+u)[0]){let x=$("#luckysheet-multipleRange-show-"+u)[0].offsetHeight-1;$("#luckysheet-multipleRange-show-"+u+">.username").css({bottom:x+"px"})}}else if(a==4){let u=l.data===""?l.data:JSON.parse(l.data);for(let f=0;f3?Na(Q().websocket.refresh):(Na(Q().websocket.wait),e.openWebSocket())},e.websocket.onclose=function(t){console.info(Q().websocket.close),t.code===1e3?(clearInterval(e.retryTimer),e.retryTimer=null):alert(Q().websocket.contact)}}else alert(Q().websocket.support)},wsUpdateMsg:function(e){let n=e.t,t=e.i,l=e.v,a=h.luckysheetfile[K(t)];if(!(["v","rv","cg","all","fc","drc","arc","f","fsc","fsr","sh","c"].includes(n)&&a==null))if(n=="v"){if(a.data==null||a.data.length==0)return;let o=e.r,s=e.c;a.data[o][s]=l,t==h.currentSheetIndex&&(h.flowdata=a.data,we.webWorkerFlowDataCache(h.flowdata),l!=null&&l.ps!=null?He.buildPs(o,s,l.ps):He.buildPs(o,s,null),setTimeout(function(){Be()},1))}else if(n=="rv"){if(Object.keys(e.range).length>0&&(h.cooperativeEdit.merge_range=e.range,h.cooperativeEdit.merge_range.v=e.v,Un()),a.data==null||a.data.length==0)return;let o=e.range.row[0],s=e.range.row[1],u=e.range.column[0],f=e.range.column[1];for(let d=o;d<=s;d++)for(let m=u;m<=f;m++)a.data[d][m]=l[d-o][m-u];if(t==h.currentSheetIndex){h.flowdata=a.data,we.webWorkerFlowDataCache(h.flowdata);for(let d=o;d<=s;d++)for(let m=u;m<=f;m++)l[d-o][m-u]!=null&&l[d-o][m-u].ps!=null?He.buildPs(d,m,l[d-o][m-u].ps):He.buildPs(d,m,null);setTimeout(function(){Be()},1)}}else if(n=="cg"){let o=e.k;o=="borderInfo"?a.config.borderInfo=l:(o in a.config||(a.config[o]={}),l&&typeof l=="object"&&(a.config[o]=l)),t==h.currentSheetIndex&&(h.config=a.config,(o=="rowlen"||o=="columnlen"||o=="rowhidden")&&St(h.flowdata.length,h.flowdata[0].length),setTimeout(function(){Be()},1))}else if(n=="all"){let o=e.k;if(a[o]=l,o=="name")$("#luckysheet-sheet-container-c #luckysheet-sheets-item"+t).find("span.luckysheet-sheets-item-name").html(l);else if(o=="color"){let s=$("#luckysheet-sheet-container-c #luckysheet-sheets-item"+t);s.find(".luckysheet-sheets-item-color").remove(),(l!=null||l!="")&&s.append('
')}else if(o!="pivotTable")if(o=="frozen"){if(Y.frozenTofreezen(),t==h.currentSheetIndex){let u=Q().freezen;a.freezen.horizontal==null?($("#luckysheet-freezen-btn-horizontal").html(' '+u.freezenRow),Y.freezenhorizontaldata=null,$("#luckysheet-freezebar-horizontal").hide()):Y.createFreezenHorizontal(a.freezen.horizontal.freezenhorizontaldata,a.freezen.horizontal.top),a.freezen.vertical==null?($("#luckysheet-freezen-btn-vertical").html(' '+u.freezenColumn),Y.freezenverticaldata=null,$("#luckysheet-freezebar-vertical").hide()):Y.createFreezenVertical(a.freezen.vertical.freezenverticaldata,a.freezen.vertical.left),Y.createAssistCanvas(),setTimeout(function(){Be()},1)}}else o=="filter_select"?t==h.currentSheetIndex&&Fl(l):o=="filter"?t==h.currentSheetIndex&&Fl(a.filter_select,l):o=="luckysheet_conditionformat_save"?t==h.currentSheetIndex&&setTimeout(function(){Be()},1):o=="luckysheet_alternateformat_save"?t==h.currentSheetIndex&&setTimeout(function(){Be()},1):o=="config"?t==h.currentSheetIndex&&(h.config=l,St(h.flowdata.length,h.flowdata[0].length)):o=="dynamicArray"?t==h.currentSheetIndex&&setTimeout(function(){Be()},1):o=="images"?t==h.currentSheetIndex&&(Ie.images=l,Ie.allImagesShow(),Ie.init()):o=="dataVerification"?t==h.currentSheetIndex&&(Ye.dataVerification=l,Ye.init()):o=="hyperlink"&&t==h.currentSheetIndex&&(Cl.hyperlink=l,Cl.init())}else if(n=="fc"){let o=e.op,s=e.pos;P(l)!="object"&&(l=new Function("return "+l)());let u=l.r,f=l.c,d=a.calcChain==null?[]:a.calcChain;if(o=="add")d.push(l);else if(o=="del")for(let m=0;m'),$("#luckysheet-sheet-container-c").append(_e(Ql,{index:l.index,active:"",name:l.name,style:"",colorset:o})),$("#luckysheet-cell-main").append('
'),ve.locationSheet()}else if(n=="shc"){let o=l.copyindex,s=l.name,u=K(o),f=$.extend(!0,{},h.luckysheetfile[u]);f.index=t,f.name=s,h.luckysheetfile.splice(u+1,0,f);let d=$("#luckysheet-sheets-item"+o);$("#luckysheet-sheet-container-c").append(_e(Ql,{index:f.index,active:"",name:f.name,style:"",colorset:""})),$("#luckysheet-sheets-item"+f.index).insertAfter(d),$("#luckysheet-cell-main").append('
')}else if(n=="shd"){for(let o=0;o0?f=f.eq(0).data("index"):f=u.prevAll(":visible").eq(0).data("index"),$("#luckysheet-sheets-item"+f).addClass("luckysheet-sheets-item-active"),ve.changeSheetExec(f)}ga.sheetDeleSave.push(h.luckysheetfile[o]),h.luckysheetfile.splice(o,1);break}$("#luckysheet-sheets-item"+l.deleIndex).remove(),$("#luckysheet-datavisual-selection-set-"+l.deleIndex).remove(),ve.locationSheet()}else if(n=="shr")for(let o in l)h.luckysheetfile[K(o)].order=l[o];else if(n=="shre"){for(let o=0;o'),$("#luckysheet-sheet-container-c").append(_e(Ql,{index:s.index,active:"",name:s.name,style:"",colorset:u})),$("#luckysheet-cell-main").append('
');break}}else if(n=="sh"){let o=e.op,s=e.cur;o=="hide"?(a.hide=1,$("#luckysheet-sheets-item"+t).hide(),t==h.currentSheetIndex&&($("#luckysheet-sheets-item"+s).addClass("luckysheet-sheets-item-active"),ve.changeSheetExec(s))):o=="show"&&(a.hide=0,$("#luckysheet-sheets-item"+t).show()),ve.locationSheet()}else if(n=="c"){let o=e.op,s=e.cid;if(o=="add")a.chart.push(l),luckysheet.insertChartTosheet(l.sheetIndex,l.dataSheetIndex,l.option,l.chartType,l.selfOption,l.defaultOption,l.row,l.column,l.chart_selection_color,l.chart_id,l.chart_selection_id,l.chartStyle,l.rangeConfigCheck,l.rangeRowCheck,l.rangeColCheck,l.chartMarkConfig,l.chartTitleConfig,l.winWidth,l.winHeight,l.scrollLeft1,l.scrollTop1,l.chartTheme,l.myWidth,l.myHeight,l.myLeft,l.myTop,l.myindexrank1,!0);else if(o=="xy"||o=="wh"||o=="update")for(let u=0;u16&&(n=ya(n,16)+"..."),a==="enterEdit"&&(n+=" "+Q().edit.typing),$("#luckysheet-multipleRange-show-"+e).length>0)$("#luckysheet-multipleRange-show-"+e).css({position:"absolute",left:m-1,width:d-m-1,top:f-1,height:u-f-1}),$("#luckysheet-multipleRange-show-"+e+" .username").text(n),$("#luckysheet-multipleRange-show-"+e+" .username").show(),h.cooperativeEdit.usernameTimeout["user"+e]!=null&&clearTimeout(h.cooperativeEdit.usernameTimeout["user"+e]),h.cooperativeEdit.usernameTimeout["user"+e]=setTimeout(()=>{clearTimeout(h.cooperativeEdit.usernameTimeout["user"+e]),h.cooperativeEdit.usernameTimeout["user"+e]=null},10*1e3);else{let y=`
+ +
+ ${n} +
+ +
+
+ +
`;$(y).appendTo($("#luckysheet-cell-main #luckysheet-multipleRange-show")),o.multipleIndex++,h.cooperativeEdit.usernameTimeout["user"+e]!=null&&clearTimeout(h.cooperativeEdit.usernameTimeout["user"+e]),h.cooperativeEdit.usernameTimeout["user"+e]=setTimeout(()=>{clearTimeout(h.cooperativeEdit.usernameTimeout["user"+e]),h.cooperativeEdit.usernameTimeout["user"+e]=null},10*1e3)}},sheetDeleSave:[],submitInterval:1e3,imagesubmitInterval:5e3,submitdatalimit:50,submitcompresslimit:1e3,checksubmit:function(e){let n=this;n.submitTimeout(),clearTimeout(n.imageRequestTimeout),n.imageRequestTimeout=setTimeout(function(){n.imageRequest()},n.imagesubmitInterval)},submitTimeout:function(){let e=this;clearTimeout(e.requestTimeOut),!e.requestLock&&e.requestlast!=null&&e.requestlast.clone().add(1,"seconds").isBefore((0,Li.default)())&&e.request(),e.requestTimeOut=setTimeout(function(){e.submitTimeout()},e.submitInterval)},requestLock:!1,requestlast:null,firstchange:!0,requestTimeOut:null,request:function(){let e=this,t=this.gridKey+"__qkcache";e.cachelocaldata(function(l,a){if(a.length==0)return;a=encodeURIComponent(JSON.stringify(a));let o=a.length,s=!1;e.requestLock=!0,e.updateUrl!=""&&$.post(e.updateUrl,{compress:s,gridKey:e.gridKey,data:a},function(u){new Function("return "+u)().status?($("#luckysheet_info_detail_update").html("\u6700\u8FD1\u5B58\u6863\u65F6\u95F4:"+(0,Li.default)().format("M-D H:m:s")),$("#luckysheet_info_detail_save").html("\u540C\u6B65\u6210\u529F"),e.clearcachelocaldata()):($("#luckysheet_info_detail_save").html("\u540C\u6B65\u5931\u8D25"),e.restorecachelocaldata()),e.requestlast=(0,Li.default)(),e.requestLock=!1})})},imageRequestLast:null,imageRequestLock:!1,imageRequestTimeout:null,imageRequest:function(){let e=this;html2canvas($("#"+container).find(".luckysheet-grid-window").get(0),{onrendered:function(n){let t=$(n).appendTo("body");t.hide();let l=t.width(),a=t.height(),o=t.get(0).getContext("2d").getImageData(0,0,l,a),s=l,u=a;s*.54>u?s=u/.54:u=s*.54;let f=$("").attr("width",s).attr("height",u)[0];f.getContext("2d").putImageData(o,0,0),t.attr("width",350),t.attr("height",189),t.get(0).getContext("2d").drawImage(f,0,0,350,189);let d=t.get(0).toDataURL("image/jpeg",.9),m=luckysheet.sheetmanage.getCurSheetnoset();e.imageRequestLock=!0;let g=encodeURIComponent(JSON.stringify({t:"thumb",img:d,curindex:m}));t.remove(),e.updateImageUrl!=""&&$.post(e.updateImageUrl,{compress:!1,gridKey:e.gridKey,data:g},function(y){new Function("return "+y)().status?imageRequestLast=(0,Li.default)():$("#luckysheet_info_detail_save").html("\u7F51\u7EDC\u4E0D\u7A33\u5B9A"),e.imageRequestLock=!0})}})},localdata:[],matchOpt:function(e,n){for(let t in e){if(t=="t"&&e.t in{drc:1,arc:1,sha:1,shc:1,shd:1})return!1;if(t!="v"&&(!(t in n)||n[t]!=e[t]))return!1}return!0},deleteRepeatOpt:function(e,n){let t=e,l=this;if(n instanceof Array)for(let o=0;o1){let s=[];s[0]=a[0];for(let u=1;u{e.index==h.currentSheetIndex&&(e.op==="enterEdit"?ga.multipleRangeShow(e.id,e.username,e.r,e.c,e.op):ga.multipleRangeShow(e.id,e.username,e.r,e.c))})}},ne=ga});var I2,U,tl=$e(()=>{Wt();Ca();ht();vt();ll();I2={info:function(e,n){$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-info").remove();let l=Q().button;$("body").append(_e(dt,{id:"luckysheet-info",addclass:"",title:e,content:n,botton:'",style:"z-index:100003"}));let a=$("#luckysheet-info").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),o=a.outerHeight(),s=a.outerWidth(),u=$(window).width(),f=$(window).height(),d=$(document).scrollLeft(),m=$(document).scrollTop();$("#luckysheet-info").css({left:(u+d-s)/2,top:(f+m-o)/3}).show()},confirm:function(e,n,t,l,a,o){$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-confirm").remove();let u=Q().button;a==null&&(a=u.confirm),o==null&&(o=u.cancel),$("body").append(_e(dt,{id:"luckysheet-confirm",addclass:"",style:"z-index:100003",title:e,content:n,botton:'"}));let f=$("#luckysheet-confirm").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),d=f.outerHeight(),m=f.outerWidth(),g=$(window).width(),y=$(window).height(),v=$(document).scrollLeft(),k=$(document).scrollTop();$("#luckysheet-confirm").css({left:(g+v-m)/2,top:(y+k-d)/3}).show(),f.find(".luckysheet-model-conform-btn").click(function(){typeof t=="function"&&t(),ne.keepHighLightBox(),$("#luckysheet-confirm").hide(),$("#luckysheet-modal-dialog-mask").hide()}),f.find(".luckysheet-model-cancel-btn").click(function(){typeof l=="function"&&l(),$("#luckysheet-confirm").hide(),$("#luckysheet-modal-dialog-mask").hide()})},screenshot:function(e,n,t){let a=Q().screenshot;$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-confirm").remove(),$("body").append(_e(dt,{id:"luckysheet-confirm",addclass:"",style:"z-index:100003",title:e,content:n,botton:'  '+a.downLoadBtn+'    "}));let o=$("#luckysheet-confirm").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),s=o.outerHeight(),u=o.outerWidth(),f=$(window).width(),d=$(window).height(),m=$(document).scrollLeft(),g=$(document).scrollTop();$("#luckysheet-confirm").css({left:(f+m-u)/2,top:(d+g-s)/3}).show(),o.find(".luckysheet-model-conform-btn").click(function(){dr.isIE()=="1"?alert(a.browserNotTip):(!!window.ActiveXObject||"ActiveXObject"in window)&&($("#IframeReportImg").length===0&&$('').appendTo("body"),$("#IframeReportImg").attr("src")!=t?$("#IframeReportImg").attr("src",t):$("#IframeReportImg").src!="about:blank"&&window.frames.IframeReportImg.document.execCommand("SaveAs"))}),o.find(".luckysheet-model-cancel-btn").click(function(){$("#luckysheet-confirm").hide(),$("#luckysheet-modal-dialog-mask").hide()}),$("#luckysheet-confirm .luckysheet-model-copy-btn").click(function(){let y=new clipboard.DT;y.setData("text/html",""),dr.isIE()=="1"?alert(a.rightclickTip):(clipboard.write(y),alert(a.successTip))})},chartPointConfig:function(e,n,t){$("body").append(_e(dt,{id:e,addclass:"luckysheet-chart-point-config-c",title:"\u6570\u636E\u70B9\u6279\u91CF\u8BBE\u7F6E",content:Ou,botton:'',style:"z-index:100003;height:80%;width:80%;top:10%;left:10%;"})),$("#luckysheet-modal-dialog-mask").show();let l=$(window).width(),a=$(window).height();$("#"+e).find(".luckysheet-chart-point-config").css("height",a-160),$("#"+e).css({height:a-90,width:l-100,left:7,top:14}).show().find(".luckysheet-model-save-btn").click(function(){typeof n=="function"&&n(),$("#"+e).hide(),$("#luckysheet-modal-dialog-mask").hide()}),$("#"+e).find(".luckysheet-model-save-btn").click(function(){typeof t=="function"&&t(),$("#"+e).hide(),$("#luckysheet-modal-dialog-mask").hide()})},sheetConfig:function(){},hoverTipshowState:!1,hoverTipshowTimeOut:null,createHoverTip:function(e,n){let t=this;$(e).on("mouseover",n,function(l){t.hoverTipshowState||(clearTimeout(t.hoverTipshowTimeOut),t.hoverTipshowTimeOut=setTimeout(function(){let a=$(l.currentTarget),o=a.offset(),s=$("#luckysheet-tooltip-up"),u=a.data("tips");if((u==null||u.length==0)&&(u=a.prev().data("tips"),u==null||u.length==0))return;s.length==0&&($("body").append(Bu),s=$("#luckysheet-tooltip-up")),s.removeClass("jfk-tooltip-hide").find("div.jfk-tooltip-contentId").html(u);let f=s.outerWidth();s.find("div.jfk-tooltip-arrow").css("left",f/2);let d=o.left+(a.outerWidth()-f)/2;d<2&&(d=2,s.find("div.jfk-tooltip-arrow").css("left",a.outerWidth()/2)),s.css({top:o.top+a.outerHeight()+1,left:d})},300))}).on("mouseout",n,function(l){t.hoverTipshowState=!1,clearTimeout(t.hoverTipshowTimeOut),$("#luckysheet-tooltip-up").addClass("jfk-tooltip-hide")}).on("click",n,function(l){t.hoverTipshowState=!0,clearTimeout(t.hoverTipshowTimeOut),$("#luckysheet-tooltip-up").addClass("jfk-tooltip-hide")})},popover:function(e,n,t,l,a,o){let s=Q(),u=s.button,f=s.paint;a==null&&(a=u.close);let d='
'+f.start+'
'+a+"
";$("#luckysheetpopover").remove(),$("body").append(d),$("#luckysheetpopover .luckysheetpopover-content").html(e);let m=$("#luckysheetpopover").outerWidth(),g=$("#luckysheetpopover").outerHeight(),y={};n=="topLeft"?(y.top="20px",y.left="20px"):n=="topCenter"?(y.top="20px",y.left="50%",y["margin-left"]=-m/2):n=="topRight"?(y.top="20px",y.right="20px"):n=="midLeft"?(y.top="50%",y["margin-top"]=-g/2,y.left="20px"):n=="center"?(y.top="50%",y["margin-top"]=-g/2,y.left="50%",y["margin-left"]=-m/2):n=="midRight"?(y.top="50%",y["margin-top"]=-g/2,y.right="20px"):n=="bottomLeft"?(y.bottom="20px",y.left="20px"):n=="bottomCenter"?(y.bottom="20px",y.left="50%",y["margin-left"]=-m/2):n=="bottomRight"?(y.bottom="20px",y.right="20px"):(y.top="20px",y.left="50%",y["margin-left"]=-m/2),l=="white"&&(y.background="rgba(255, 255, 255, 0.65)",y.color="#000",$("#luckysheetpopover .luckysheetpopover-btn").css({border:"1px solid #000"})),setTimeout(function(){$("#luckysheetpopover .luckysheetpopover-content").css({"margin-left":-$("#luckysheetpopover .luckysheetpopover-btn").outerWidth()/2})},1),$("#luckysheetpopover").css(y).fadeIn(),$("#luckysheetpopover .luckysheetpopover-btn").click(function(){typeof o=="function"&&o()}),t!=null&&typeof t=="number"&&setTimeout(function(){$("#luckysheetpopover").fadeOut().remove(),typeof o=="function"&&o()},t)}},U=I2});var va,R2,Se,yr=$e(()=>{Dt();ht();qt();Pt();tl();Xt();Zt();Ml();Wt();ll();Jt();gl();vt();_l();Xe();va=El(kn()),R2={fileClone:[],editorRule:null,ruleTypeHtml:function(){let e=Q().conditionformat;return`
+
+ + ${e.ruleTypeItem1} +
+
+ + ${e.ruleTypeItem2} +
+
+ + ${e.ruleTypeItem3} +
+
+ + ${e.ruleTypeItem4} +
+
+ + ${e.ruleTypeItem5} +
+
+ + ${e.ruleTypeItem6} +
+
`},textCellColorHtml:function(){let e=Q().conditionformat;return`
+
+ + + +
+
+ + + +
+
`},selectRange:[],selectStatus:!1,dataBarList:[{format:["#638ec6","#ffffff"]},{format:["#63c384","#ffffff"]},{format:["#ff555a","#ffffff"]},{format:["#ffb628","#ffffff"]},{format:["#008aef","#ffffff"]},{format:["#d6007b","#ffffff"]},{format:["#638ec6"]},{format:["#63c384"]},{format:["#ff555a"]},{format:["#ffb628"]},{format:["#008aef"]},{format:["#d6007b"]}],colorGradationList:[{format:["rgb(99, 190, 123)","rgb(255, 235, 132)","rgb(248, 105, 107)"]},{format:["rgb(248, 105, 107)","rgb(255, 235, 132)","rgb(99, 190, 123)"]},{format:["rgb(99, 190, 123)","rgb(252, 252, 255)","rgb(248, 105, 107)"]},{format:["rgb(248, 105, 107)","rgb(252, 252, 255)","rgb(99, 190, 123)"]},{format:["rgb(90, 138, 198)","rgb(252, 252, 255)","rgb(248, 105, 107)"]},{format:["rgb(248, 105, 107)","rgb(252, 252, 255)","rgb(90, 138, 198)"]},{format:["rgb(252, 252, 255)","rgb(248, 105, 107)"]},{format:["rgb(248, 105, 107)","rgb(252, 252, 255)"]},{format:["rgb(99, 190, 123)","rgb(252, 252, 255)"]},{format:["rgb(252, 252, 255)","rgb(99, 190, 123)"]},{format:["rgb(99, 190, 123)","rgb(255, 235, 132)"]},{format:["rgb(255, 235, 132)","rgb(99, 190, 123)"]}],init:function(){let e=this,n=Q().conditionformat;$(document).off("change.CFchooseSheet").on("change.CFchooseSheet","#luckysheet-administerRule-dialog .chooseSheet",function(){let t=$("#luckysheet-administerRule-dialog .chooseSheet option:selected").val();e.getConditionRuleList(t)}),$(document).off("click.CFadministerRuleItem").on("click.CFadministerRuleItem","#luckysheet-administerRule-dialog .ruleList .listBox .item",function(){$(this).addClass("on").siblings().removeClass("on")}),$(document).off("click.CFadministerRuleConfirm").on("click.CFadministerRuleConfirm","#luckysheet-administerRule-dialog-confirm",function(){if(!Rr(h.currentSheetIndex))return;let t=$.extend(!0,[],h.luckysheetfile),l=e.getHistoryRules(t),a=$.extend(!0,[],e.fileClone);for(let u=0;u0)for(let s=0;s1){e.infoDialog(n.onlySingleCell,"");return}else if(b.length==1){let x=b[0].row[0],C=b[0].row[1],S=b[0].column[0],_=b[0].column[1];if(x==C&&S==_)v=ze(x,S,h.flowdata),d[0]={row:b[0].row,column:b[0].column},m.push(v);else{e.infoDialog(n.onlySingleCell,"");return}}else if(b.length==0)if(isNaN(v)||v==""){e.infoDialog(n.conditionValueCanOnly,"");return}else m.push(v);let w=e.getRangeByTxt(k);if(w.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(w.length==1){let x=w[0].row[0],C=w[0].row[1],S=w[0].column[0],_=w[0].column[1];if(x==C&&S==_)k=ze(x,S,h.flowdata),d[1]={row:w[0].row,column:w[0].column},m.push(k);else{e.infoDialog(n.onlySingleCell,"");return}}else if(w.length==0)if(isNaN(k)||k==""){e.infoDialog(n.conditionValueCanOnly,"");return}else m.push(k)}else{let v=$("#luckysheet-newConditionRule-dialog #conditionVal input").val().trim(),k=e.getRangeByTxt(v);if(k.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(k.length==1){let b=k[0].row[0],w=k[0].row[1],x=k[0].column[0],C=k[0].column[1];if(b==w&&x==C)v=ze(b,x,h.flowdata),d.push({row:k[0].row,column:k[0].column}),m.push(v);else{e.infoDialog(n.onlySingleCell,"");return}}else if(k.length==0)if(isNaN(v)||v==""){e.infoDialog(n.conditionValueCanOnly,"");return}else m.push(v)}else if(l=="text"){f="textContains";let v=$("#luckysheet-newConditionRule-dialog #conditionVal input").val().trim(),k=e.getRangeByTxt(v);if(k.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(k.length==1){let b=k[0].row[0],w=k[0].row[1],x=k[0].column[0],C=k[0].column[1];if(b==w&&x==C)v=ze(b,x,h.flowdata),d.push({row:k[0].row,column:k[0].column}),m.push(v);else{e.infoDialog(n.onlySingleCell,"");return}}else if(k.length==0)if(v==""){e.infoDialog(n.conditionValueCanOnly,"");return}else m.push(v)}else if(l=="date"){f="occurrenceDate";let v=$("#luckysheet-newConditionRule-dialog #daterange-btn").val();if(v==""||v==null){e.infoDialog(n.pleaseSelectADate,"");return}m.push(v)}}else if(t==2){l=="top"?$("#luckysheet-newConditionRule-dialog #isPercent").is(":selected")?f="top10%":f="top10":l=="last"&&($("#luckysheet-newConditionRule-dialog #isPercent").is(":selected")?f="last10%":f="last10");let v=$("#luckysheet-newConditionRule-dialog #conditionVal input").val().trim();if(parseInt(v)!=v||parseInt(v)<1||parseInt(v)>1e3){e.infoDialog(n.pleaseEnterInteger,"");return}m.push(parseInt(v))}else if(t==3)l=="AboveAverage"?(f="AboveAverage",m.push("AboveAverage")):l=="SubAverage"&&(f="SubAverage",m.push("SubAverage"));else if(t==4)f="duplicateValue",m.push(l);else if(t==5){f="formula";let v=$("#luckysheet-newConditionRule-dialog #formulaConditionVal input").val().trim();if(v==""){e.infoDialog("Condition value cannot be empty!","");return}m.push(v)}let g;$("#luckysheet-newConditionRule-dialog #checkTextColor").is(":checked")?g=$("#luckysheet-newConditionRule-dialog #textcolorshow").spectrum("get").toHexString():g=null;let y;$("#luckysheet-newConditionRule-dialog #checkCellColor").is(":checked")?y=$("#luckysheet-newConditionRule-dialog #cellcolorshow").spectrum("get").toHexString():y=null,o={textColor:g,cellColor:y},s={type:"default",cellrange:$.extend(!0,[],h.luckysheet_select_save),format:o,conditionName:f,conditionRange:d,conditionValue:m}}$("#luckysheet-newConditionRule-dialog").hide();let u=$(this).attr("data-source");if(u==0){$("#luckysheet-modal-dialog-mask").hide();let f=$.extend(!0,[],h.luckysheetfile),d=e.getHistoryRules(f),m=h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save==null?[]:h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save;m.push(s),h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save=m;let g=$.extend(!0,[],h.luckysheetfile),y=e.getCurrentRules(g);e.ref(d,y),ne.allowUpdate&&ne.saveParam("all",h.currentSheetIndex,m,{k:"luckysheet_conditionformat_save"})}else if(u==1){let f=e.fileClone[K(h.currentSheetIndex)].luckysheet_conditionformat_save?e.fileClone[K(h.currentSheetIndex)].luckysheet_conditionformat_save:[];f.push(s),e.fileClone[K(h.currentSheetIndex)].luckysheet_conditionformat_save=f,e.administerRuleDialog()}}),$(document).off("click.CFnewConditionRuleClose").on("click.CFnewConditionRuleClose","#luckysheet-newConditionRule-dialog-close",function(){let t=$(this).attr("data-source");t==0&&$("#luckysheet-modal-dialog-mask").hide(),t==1&&$("#luckysheet-administerRule-dialog").show(),$("#luckysheet-newConditionRule-dialog").hide(),$("#luckysheet-formula-functionrange-select").hide(),$("#luckysheet-row-count-show").hide(),$("#luckysheet-column-count-show").hide()}),$(document).off("click.CFeditorConditionRule").on("click.CFeditorConditionRule","#editorConditionRule",function(){let t=$("#luckysheet-administerRule-dialog .chooseSheet option:selected").val();if(!Rr(t))return;let l=$("#luckysheet-administerRule-dialog .ruleList .listBox .item.on").attr("data-item"),a={sheetIndex:t,itemIndex:l,data:e.fileClone[K(t)].luckysheet_conditionformat_save[l]};e.editorRule=a,e.editorConditionRuleDialog()}),$(document).off("click.CFeditorConditionRuleConfirm").on("click.CFeditorConditionRuleConfirm","#luckysheet-editorConditionRule-dialog-confirm",function(){let t=$("#luckysheet-editorConditionRule-dialog .ruleTypeItem.on").index(),l=$("#luckysheet-editorConditionRule-dialog #type1 option:selected").val(),a=$("#luckysheet-editorConditionRule-dialog ."+l+"Box #type2 option:selected").val(),o=e.editorRule.data.cellrange,s,u;if(t==0){if(l=="dataBar"){let m=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".dataBarBox .luckysheet-conditionformat-config-color").spectrum("get").toHexString();a=="gradient"?s=[m,"#ffffff"]:a=="solid"&&(s=[m]),u={type:"dataBar",cellrange:o,format:s}}else if(l=="colorGradation"){let m=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".colorGradationBox .maxVal .luckysheet-conditionformat-config-color").spectrum("get").toRgbString(),g=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".colorGradationBox .midVal .luckysheet-conditionformat-config-color").spectrum("get").toRgbString(),y=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".colorGradationBox .minVal .luckysheet-conditionformat-config-color").spectrum("get").toRgbString();a=="threeColor"?s=[m,g,y]:a=="twoColor"&&(s=[m,y]),u={type:"colorGradation",cellrange:o,format:s}}else if(l=="icons"){let m=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".iconsBox .model").attr("data-len"),g=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".iconsBox .model").attr("data-leftmin"),y=$(this).parents("#luckysheet-editorConditionRule-dialog").find(".iconsBox .model").attr("data-top");s={len:m,leftMin:g,top:y},u={type:"icons",cellrange:o,format:s}}}else{let m="",g=[],y=[];if(t==1){if(l=="number")if(m=a,a=="betweenness"){let b=$("#luckysheet-editorConditionRule-dialog #conditionVal input").val().trim(),w=$("#luckysheet-editorConditionRule-dialog #conditionVal2 input").val().trim(),x=e.getRangeByTxt(b);if(x.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(x.length==1){let S=x[0].row[0],_=x[0].row[1],T=x[0].column[0],A=x[0].column[1];if(S==_&&T==A)b=ze(S,T,h.flowdata),g[0]={row:x[0].row,column:x[0].column},y.push(b);else{e.infoDialog(n.onlySingleCell,"");return}}else if(x.length==0)if(isNaN(b)||b==""){e.infoDialog(n.conditionValueCanOnly,"");return}else y.push(b);let C=e.getRangeByTxt(w);if(C.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(C.length==1){let S=C[0].row[0],_=C[0].row[1],T=C[0].column[0],A=C[0].column[1];if(S==_&&T==A)w=ze(S,T,h.flowdata),g[1]={row:C[0].row,column:C[0].column},y.push(w);else{e.infoDialog(n.onlySingleCell,"");return}}else if(C.length==0)if(isNaN(w)||w==""){e.infoDialog(n.conditionValueCanOnly,"");return}else y.push(w)}else{let b=$("#luckysheet-editorConditionRule-dialog #conditionVal input").val().trim(),w=e.getRangeByTxt(b);if(w.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(w.length==1){let x=w[0].row[0],C=w[0].row[1],S=w[0].column[0],_=w[0].column[1];if(x==C&&S==_)b=ze(x,S,h.flowdata),g.push({row:w[0].row,column:w[0].column}),y.push(b);else{e.infoDialog(n.onlySingleCell,"");return}}else if(w.length==0)if(isNaN(b)||b==""){e.infoDialog(n.conditionValueCanOnly,"");return}else y.push(b)}else if(l=="text"){m="textContains";let b=$("#luckysheet-editorConditionRule-dialog #conditionVal input").val().trim(),w=e.getRangeByTxt(b);if(w.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(w.length==1){let x=w[0].row[0],C=w[0].row[1],S=w[0].column[0],_=w[0].column[1];if(x==C&&S==_)b=ze(x,S,h.flowdata),g.push({row:w[0].row,column:w[0].column}),y.push(b);else{e.infoDialog(n.onlySingleCell,"");return}}else if(w.length==0)if(isNaN(b)||b==""){e.infoDialog(n.conditionValueCanOnly,"");return}else y.push(b)}else if(l=="date"){m="occurrenceDate";let b=$("#luckysheet-editorConditionRule-dialog #daterange-btn").val();if(b==""||b==null){e.infoDialog(n.pleaseSelectADate,"");return}y.push(b)}}else if(t==2){l=="top"?$("#luckysheet-editorConditionRule-dialog #isPercent").is(":selected")?m="top10%":m="top10":l=="last"&&($("#luckysheet-editorConditionRule-dialog #isPercent").is(":selected")?m="last10%":m="last10");let b=$("#luckysheet-editorConditionRule-dialog #conditionVal input").val().trim();if(parseInt(b)!=b||parseInt(b)<1||parseInt(b)>1e3){e.infoDialog(n.pleaseEnterInteger,"");return}y.push(b)}else if(t==3)l=="AboveAverage"?(m="AboveAverage",y.push("AboveAverage")):l=="SubAverage"&&(m="SubAverage",y.push("SubAverage"));else if(t==4)m="duplicateValue",y.push(l);else if(t==5){m="formula";let b=$("#luckysheet-editorConditionRule-dialog #formulaConditionVal input").val().trim();if(console.log(b),b==""){e.infoDialog("Condition value cannot be empty!","");return}y.push(b)}let v;$("#luckysheet-editorConditionRule-dialog #checkTextColor").is(":checked")?v=$("#luckysheet-editorConditionRule-dialog #textcolorshow").spectrum("get").toHexString():v=null;let k;$("#luckysheet-editorConditionRule-dialog #checkCellColor").is(":checked")?k=$("#luckysheet-editorConditionRule-dialog #cellcolorshow").spectrum("get").toHexString():k=null,s={textColor:v,cellColor:k},u={type:"default",cellrange:o,format:s,conditionName:m,conditionRange:g,conditionValue:y}}let f=e.editorRule.sheetIndex,d=e.editorRule.itemIndex;e.fileClone[K(f)].luckysheet_conditionformat_save[d]=u,$("#luckysheet-editorConditionRule-dialog").hide(),e.administerRuleDialog()}),$(document).off("click.CFeditorConditionRuleClose").on("click.CFeditorConditionRuleClose","#luckysheet-editorConditionRule-dialog-close",function(){$("#luckysheet-editorConditionRule-dialog").hide(),$("#luckysheet-administerRule-dialog").show(),$("#luckysheet-formula-functionrange-select").hide(),$("#luckysheet-row-count-show").hide(),$("#luckysheet-column-count-show").hide()}),$(document).off("click.CFnewEditorRuleItem").on("click.CFnewEditorRuleItem",".luckysheet-newEditorRule-dialog .ruleTypeItem",function(){$(this).addClass("on").siblings().removeClass("on");let t=$(this).index();$(this).parents(".luckysheet-newEditorRule-dialog").find(".ruleExplainBox").html(e.getRuleExplain(t)),e.colorSelectInit()}),$(document).off("change.CFnewEditorRuleType1").on("change.CFnewEditorRuleType1",".luckysheet-newEditorRule-dialog #type1",function(){let t=$(this).find("option:selected").val();(t=="dataBar"||t=="colorGradation"||t=="icons"||t=="number"||t=="text"||t=="date")&&$(this).parents(".luckysheet-newEditorRule-dialog").find("."+t+"Box").show().siblings().hide(),t=="date"&&e.daterangeInit($(this).parents(".luckysheet-newEditorRule-dialog").attr("id"))}),$(document).off("change.CFnewEditorRuleType2").on("change.CFnewEditorRuleType2",".luckysheet-newEditorRule-dialog #type2",function(){let t=$(this).parents(".luckysheet-newEditorRule-dialog").find("#type1 option:selected").val();t=="colorGradation"?$(this).find("option:selected").val()=="threeColor"?$(this).parents(".luckysheet-newEditorRule-dialog").find(".midVal").show():$(this).parents(".luckysheet-newEditorRule-dialog").find(".midVal").hide():t=="number"&&($(this).find("option:selected").val()=="betweenness"?($(this).parents(".luckysheet-newEditorRule-dialog").find(".txt").show(),$(this).parents(".luckysheet-newEditorRule-dialog").find("#conditionVal2").show()):($(this).parents(".luckysheet-newEditorRule-dialog").find(".txt").hide(),$(this).parents(".luckysheet-newEditorRule-dialog").find("#conditionVal2").hide()))}),$(document).off("click.CFiconsShowbox").on("click.CFiconsShowbox",".luckysheet-newEditorRule-dialog .iconsBox .showbox",function(){$(this).parents(".iconsBox").find("ul").toggle()}),$(document).off("click.CFiconsLi").on("click.CFiconsLi",".luckysheet-newEditorRule-dialog .iconsBox li",function(){let t=$(this).find("div").attr("data-len"),l=$(this).find("div").attr("data-leftmin"),a=$(this).find("div").attr("data-top"),o=$(this).find("div").attr("title"),s=$(this).find("div").css("background-position");$(this).parents(".iconsBox").find(".showbox .model").css("background-position",s),$(this).parents(".iconsBox").find(".showbox .model").attr("data-len",t),$(this).parents(".iconsBox").find(".showbox .model").attr("data-leftmin",l),$(this).parents(".iconsBox").find(".showbox .model").attr("data-top",a),$(this).parents(".iconsBox").find(".showbox .model").attr("title",o),$(this).parents("ul").hide()}),$(document).off("click.CFdeleteConditionRule").on("click.CFdeleteConditionRule","#deleteConditionRule",function(){let t=$("#luckysheet-administerRule-dialog .chooseSheet option:selected").val();if(!Rr(t))return;let l=$("#luckysheet-administerRule-dialog .ruleList .listBox .item.on").attr("data-item");e.fileClone[K(t)].luckysheet_conditionformat_save.splice(l,1),e.administerRuleDialog()}),$(document).off("click.CFdefault").on("click.CFdefault","#luckysheet-conditionformat-dialog-confirm",function(){if(!Rr(h.currentSheetIndex))return;let t=$("#luckysheet-conditionformat-dialog .box").attr("data-itemvalue"),l=[],a=[];if(t=="greaterThan"||t=="lessThan"||t=="equal"||t=="textContains"){let v=$("#luckysheet-conditionformat-dialog #conditionVal").val().trim(),k=e.getRangeByTxt(v);if(k.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(k.length==1){let b=k[0].row[0],w=k[0].row[1],x=k[0].column[0],C=k[0].column[1];if(b==w&&x==C)v=ze(b,x,h.flowdata),l.push({row:k[0].row,column:k[0].column}),a.push(v);else{e.infoDialog(n.onlySingleCell,"");return}}else if(k.length==0)if(isNaN(v)||v==""){e.infoDialog(n.conditionValueCanOnly,"");return}else a.push(v)}else if(t=="betweenness"){let v=$("#luckysheet-conditionformat-dialog #conditionVal").val().trim(),k=$("#luckysheet-conditionformat-dialog #conditionVal2").val().trim(),b=e.getRangeByTxt(v);if(b.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(b.length==1){let x=b[0].row[0],C=b[0].row[1],S=b[0].column[0],_=b[0].column[1];if(x==C&&S==_)v=ze(x,S,h.flowdata),l[0]={row:b[0].row,column:b[0].column},a.push(v);else{e.infoDialog(n.onlySingleCell,"");return}}else if(b.length==0)if(isNaN(v)||v==""){e.infoDialog(n.conditionValueCanOnly,"");return}else a.push(v);let w=e.getRangeByTxt(k);if(w.length>1){e.infoDialog(n.onlySingleCell,"");return}else if(w.length==1){let x=w[0].row[0],C=w[0].row[1],S=w[0].column[0],_=w[0].column[1];if(x==C&&S==_)k=ze(x,S,h.flowdata),l[1]={row:w[0].row,column:w[0].column},a.push(k);else{e.infoDialog(n.onlySingleCell,"");return}}else if(w.length==0)if(isNaN(k)||k==""){e.infoDialog(n.conditionValueCanOnly,"");return}else a.push(k)}else if(t=="occurrenceDate"){let v=$("#luckysheet-conditionformat-dialog #daterange-btn").val();if(v==""||v==null){e.infoDialog(n.pleaseSelectADate,"");return}a.push(v)}else if(t=="duplicateValue")a.push($("#luckysheet-conditionformat-dialog #conditionVal option:selected").val());else if(t=="top10"||t=="top10%"||t=="last10"||t=="last10%"){let v=$("#luckysheet-conditionformat-dialog #conditionVal").val().trim();if(parseInt(v)!=v||parseInt(v)<1||parseInt(v)>1e3){e.infoDialog(n.pleaseEnterInteger,"");return}a.push(v)}else t=="AboveAverage"?a.push("AboveAverage"):t=="SubAverage"&&a.push("SubAverage");let o;$("#checkTextColor").is(":checked")?o=$("#textcolorshow").spectrum("get").toHexString():o=null;let s;$("#checkCellColor").is(":checked")?s=$("#cellcolorshow").spectrum("get").toHexString():s=null;let u=$.extend(!0,[],h.luckysheetfile),f=e.getHistoryRules(u),d={type:"default",cellrange:$.extend(!0,[],h.luckysheet_select_save),format:{textColor:o,cellColor:s},conditionName:t,conditionRange:l,conditionValue:a},m=h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save==null?[]:h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save;m.push(d),h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save=m;let g=$.extend(!0,[],h.luckysheetfile),y=e.getCurrentRules(g);e.ref(f,y),$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-conditionformat-dialog").hide(),ne.allowUpdate&&ne.saveParam("all",h.currentSheetIndex,m,{k:"luckysheet_conditionformat_save"})}),$(document).off("click.CFicons").on("click.CFicons","#luckysheet-CFicons-dialog .item",function(){if($("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-CFicons-dialog").hide(),h.luckysheet_select_save.length>0){let t=$.extend(!0,[],h.luckysheet_select_save),l={len:$(this).attr("data-len"),leftMin:$(this).attr("data-leftMin"),top:$(this).attr("data-top")};e.updateItem("icons",t,l)}}),$(document).on("click",".range .fa-table",function(){let t=$(this).parents(".luckysheet-modal-dialog").attr("id");$("#"+t).hide();let l;if(t=="luckysheet-conditionformat-dialog")$(this).siblings("input").attr("id")=="conditionVal"?l="0_1":l="0_2";else if(t=="luckysheet-newConditionRule-dialog"){let o=$(this).parents(".range").attr("id");o=="formulaConditionVal"?l="1_0":o=="conditionVal"?l="1_1":l="1_2"}else if(t=="luckysheet-editorConditionRule-dialog"){let o=$(this).parents(".range").attr("id");o=="formulaConditionVal"?l="2_0":o=="conditionVal"?l="2_1":l="2_2"}let a=$(this).siblings("input").val();e.singleRangeDialog(l,a),Bt(e.getRangeByTxt(a))}),$(document).on("click","#luckysheet-singleRange-dialog-confirm",function(){$("#luckysheet-modal-dialog-mask").show(),$(this).parents("#luckysheet-singleRange-dialog").hide();let t=$(this).attr("data-source"),l=$(this).parents("#luckysheet-singleRange-dialog").find("input").val();t=="0_1"?($("#luckysheet-conditionformat-dialog").show(),$("#luckysheet-conditionformat-dialog #conditionVal").val(l)):t=="0_2"?($("#luckysheet-conditionformat-dialog").show(),$("#luckysheet-conditionformat-dialog #conditionVal2").val(l)):t=="1_0"?($("#luckysheet-newConditionRule-dialog").show(),$("#luckysheet-newConditionRule-dialog #formulaConditionVal input").val(l)):t=="1_1"?($("#luckysheet-newConditionRule-dialog").show(),$("#luckysheet-newConditionRule-dialog #conditionVal input").val(l)):t=="1_2"?($("#luckysheet-newConditionRule-dialog").show(),$("#luckysheet-newConditionRule-dialog #conditionVal2 input").val(l)):t=="2_0"?($("#luckysheet-editorConditionRule-dialog").show(),$("#luckysheet-editorConditionRule-dialog #formulaConditionVal input").val(l)):t=="2_1"?($("#luckysheet-editorConditionRule-dialog").show(),$("#luckysheet-editorConditionRule-dialog #conditionVal input").val(l)):t=="2_2"&&($("#luckysheet-editorConditionRule-dialog").show(),$("#luckysheet-editorConditionRule-dialog #conditionVal2 input").val(l)),Bt([])}),$(document).on("click","#luckysheet-singleRange-dialog-close",function(){$("#luckysheet-modal-dialog-mask").show(),$(this).parents("#luckysheet-singleRange-dialog").hide();let t=$(this).attr("data-source");t=="0_1"||t=="0_2"?$("#luckysheet-conditionformat-dialog").show():t=="1_0"||t=="1_1"||t=="1_2"?$("#luckysheet-newConditionRule-dialog").show():(t=="2_0"||t=="2_1"||t=="2_2")&&$("#luckysheet-editorConditionRule-dialog").show(),Bt([])}),$(document).on("click",".luckysheet-modal-dialog-title-close",function(){let t=$(this).parents(".luckysheet-modal-dialog").attr("id");if(t=="luckysheet-newConditionRule-dialog"&&$("#"+t).find("#luckysheet-newConditionRule-dialog-close").attr("data-source")==1&&$("#luckysheet-administerRule-dialog").show(),t=="luckysheet-editorConditionRule-dialog"&&$("#luckysheet-administerRule-dialog").show(),t=="luckysheet-singleRange-dialog"){$("#luckysheet-modal-dialog-mask").show();let l=$(this).parents("#luckysheet-singleRange-dialog").find("#luckysheet-singleRange-dialog-confirm").attr("data-source");l=="0_1"||l=="0_2"?$("#luckysheet-conditionformat-dialog").show():l=="1_1"||l=="1_2"?$("#luckysheet-newConditionRule-dialog").show():(l=="2_1"||l=="2_2")&&$("#luckysheet-editorConditionRule-dialog").show(),Bt([])}t=="luckysheet-multiRange-dialog"&&($("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-administerRule-dialog").show(),Bt([])),t=="luckysheet-conditionformat-info-dialog"&&$("#luckysheet-modal-dialog-mask").show()}),$(document).on("click","#luckysheet-conditionformat-info-dialog-close",function(){$(this).parents("#luckysheet-conditionformat-info-dialog").hide()})},singleRangeDialog:function(e,n){$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-singleRange-dialog").remove();let t=Q().conditionformat;$("body").append(_e(dt,{id:"luckysheet-singleRange-dialog",addclass:"luckysheet-singleRange-dialog",title:t.selectCell,content:``,botton:` + `,style:"z-index:100003"}));let l=$("#luckysheet-singleRange-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),a=l.outerHeight(),o=l.outerWidth(),s=$(window).width(),u=$(window).height(),f=$(document).scrollLeft(),d=$(document).scrollTop();$("#luckysheet-singleRange-dialog").css({left:(s+f-o)/2,top:(u+d-a)/3}).show()},multiRangeDialog:function(e,n){let t=this;$("#luckysheet-modal-dialog-mask").hide(),$("#luckysheet-multiRange-dialog").remove();let l=Q().conditionformat;$("body").append(_e(dt,{id:"luckysheet-multiRange-dialog",addclass:"luckysheet-multiRange-dialog",title:l.selectRange,content:``,botton:` + `,style:"z-index:100003"}));let a=$("#luckysheet-multiRange-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),o=a.outerHeight(),s=a.outerWidth(),u=$(window).width(),f=$(window).height(),d=$(document).scrollLeft(),m=$(document).scrollTop();$("#luckysheet-multiRange-dialog").css({left:(u+d-s)/2,top:(f+m-o)/3}).show(),Bt(t.getRangeByTxt(n))},getTxtByRange:function(e){if(e.length>0){let n=[];for(let t=0;t${l.confirm} + `,style:"z-index:9999"}));let a=$("#luckysheet-conditionformat-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),o=a.outerHeight(),s=a.outerWidth(),u=$(window).width(),f=$(window).height(),d=$(document).scrollLeft(),m=$(document).scrollTop();$("#luckysheet-conditionformat-dialog").css({left:(u+d-s)/2,top:(f+m-o)/3}).show(),t.init(),t.colorSelectInit(),e==Q().conditionformat.conditionformat_occurrenceDate&&t.daterangeInit("luckysheet-conditionformat-dialog")},CFiconsDialog:function(){$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-CFicons-dialog").remove();let e=Q().conditionformat,n=`
+
${e.pleaseSelectIcon}
+
${e.direction}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
${e.shape}
+
+
+
+
+
+
+
+
+
+
+
+
+
${e.mark}
+
+
+
+
+
+
+
+
+
+
+
${e.grade}
+
+
+
+
+
+
+
+
+
+
+
+
+
`;$("body").append(_e(dt,{id:"luckysheet-CFicons-dialog",addclass:"luckysheet-CFicons-dialog",title:e.icons,content:n,botton:``,style:"z-index:100003"}));let t=$("#luckysheet-CFicons-dialog").find(".luckysheet-modal-dialog-content").css("min-width",400).end(),l=t.outerHeight(),a=t.outerWidth(),o=$(window).width(),s=$(window).height(),u=$(document).scrollLeft(),f=$(document).scrollTop();$("#luckysheet-CFicons-dialog").css({left:(o+u-a)/2,top:(s+f-l)/3}).show()},administerRuleDialog:function(){$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-administerRule-dialog").remove();let e=Q().conditionformat,n="";for(let g=0;g + ${e.currentSheet}\uFF1A${h.luckysheetfile[g].name} + `:n+=``;let t=`
+ + +
+
+
+ + + +
+
+
+ ${e.rule} + ${e.format} + ${e.applyRange} +
+
+
+
`;$("body").append(_e(dt,{id:"luckysheet-administerRule-dialog",addclass:"luckysheet-administerRule-dialog",title:e.conditionformatManageRules,content:t,botton:` + `,style:"z-index:100003"}));let l=$("#luckysheet-administerRule-dialog").find(".luckysheet-modal-dialog-content").css("min-width",400).end(),a=l.outerHeight(),o=l.outerWidth(),s=$(window).width(),u=$(window).height(),f=$(document).scrollLeft(),d=$(document).scrollTop();$("#luckysheet-administerRule-dialog").css({left:(s+f-o)/2,top:(u+d-a)/3}).show();let m=$("#luckysheet-administerRule-dialog .chooseSheet option:selected").val();this.getConditionRuleList(m)},getConditionRuleList:function(e){let n=this;$("#luckysheet-administerRule-dialog .ruleList .listBox").empty();let t=n.fileClone[K(e)].luckysheet_conditionformat_save;if(t!=null&&t.length>0){let l=Q().conditionformat;for(let a=0;a
'):o=="colorGradation"?(f=l.colorGradation,d=''):o=="icons"?(f=l.icons,d=''):(f=n.getConditionRuleName(t[a].conditionName,t[a].conditionRange,t[a].conditionValue),s.textColor!=null&&(d+=''),s.cellColor!=null&&(d+=''));let m=[];for(let y=0;y
'+f+'
'+d+'
';$("#luckysheet-administerRule-dialog .ruleList .listBox").prepend(g)}$("#luckysheet-administerRule-dialog .ruleList .listBox .item canvas").each(function(a){let o=$(this).closest(".item").attr("data-item"),s=t[o].type,u=t[o].format,f=$(this).get(0).getContext("2d");if(s=="dataBar")if(u.length==2){let d=f.createLinearGradient(0,0,46,0);d.addColorStop(0,u[0]),d.addColorStop(1,u[1]),f.fillStyle=d,f.fillRect(0,0,46,18),f.beginPath(),f.moveTo(0,0),f.lineTo(0,18),f.lineTo(46,18),f.lineTo(46,0),f.lineTo(0,0),f.lineWidth=h.devicePixelRatio,f.strokeStyle=u[0],f.stroke(),f.closePath()}else u.length==1&&(f.fillStyle=u[0],f.fillRect(0,0,46,18),f.beginPath(),f.moveTo(0,0),f.lineTo(0,18),f.lineTo(46,18),f.lineTo(46,0),f.lineTo(0,0),f.lineWidth=h.devicePixelRatio,f.strokeStyle=u[0],f.stroke(),f.closePath());else if(s=="colorGradation"){let d=f.createLinearGradient(0,0,46,0);u.length==3?(d.addColorStop(0,u[0]),d.addColorStop(.5,u[1]),d.addColorStop(1,u[2])):u.length==2&&(d.addColorStop(0,u[0]),d.addColorStop(1,u[1])),f.fillStyle=d,f.fillRect(0,0,46,18)}else if(s=="icons"){let d=u.len,m=u.leftMin,g=u.top,y=32*d+10*(d-1),v=32,k=46,b=46*32/y;m=="0"?f.drawImage(_a,0,g*32,y,v,0,(18-b)/2,k,b):m=="5"&&f.drawImage(_a,210,g*32,y,v,0,(18-b)/2,k,b)}}),$("#luckysheet-administerRule-dialog .ruleList .listBox .item").eq(0).addClass("on")}},getConditionRuleName:function(e,n,t){let l;n[0]!=null?l=lt(n[0].column[0])+(n[0].row[0]+1):l=t[0];let a=Q().conditionformat;if(e=="greaterThan")return a.cellValue+" > "+l;if(e=="lessThan")return a.cellValue+" < "+l;if(e=="betweenness"){let o;return n[1]!=null?o=lt(n[1].column[0])+(n[1].row[0]+1):o=t[1],a.cellValue+" "+a.between+" "+l+" "+a.in+" "+o+" "+a.between2}else{if(e=="equal")return a.cellValue+" = "+l;if(e=="textContains")return a.cellValue+a.contain+" ="+l;if(e=="occurrenceDate")return t;if(e=="duplicateValue"){if(t=="0")return a.duplicateValue;if(t=="1")return a.uniqueValue}else{if(e=="top10")return a.top+" "+l+" "+a.oneself;if(e=="top10%")return a.top+" "+l+"% "+a.oneself;if(e=="last10")return a.last+" "+l+" "+a.oneself;if(e=="last10%")return a.last+" "+l+"% "+a.oneself;if(e=="AboveAverage")return a.aboveAverage;if(e=="SubAverage")return a.belowAverage;if(e=="formula")return l.slice(0,1)!="="&&(l="="+l),a.formula+": "+l}}},newConditionRuleDialog:function(e){let n=this,t=Q().conditionformat,l=n.getRuleExplain(0);$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-administerRule-dialog").hide(),$("#luckysheet-newConditionRule-dialog").remove();let a='
'+t.chooseRuleType+"\uFF1A
"+n.ruleTypeHtml()+'
'+t.editRuleDescription+'\uFF1A
'+l+"
";$("body").append(_e(dt,{id:"luckysheet-newConditionRule-dialog",addclass:"luckysheet-newEditorRule-dialog",title:t.newFormatRule,content:a,botton:` + `,style:"z-index:100003"}));let o=$("#luckysheet-newConditionRule-dialog").find(".luckysheet-modal-dialog-content").css("min-width",400).end(),s=o.outerHeight(),u=o.outerWidth(),f=$(window).width(),d=$(window).height(),m=$(document).scrollLeft(),g=$(document).scrollTop();$("#luckysheet-newConditionRule-dialog").css({left:(f+m-u)/2,top:(d+g-s)/3}).show(),$("#luckysheet-newConditionRule-dialog .ruleTypeBox .ruleTypeItem:eq(0)").addClass("on").siblings().removeClass("on"),n.colorSelectInit()},editorConditionRuleDialog:function(){let e=this,n=Q().conditionformat,t=e.editorRule.data;if(t==null)return;let l=t.type,a=t.format,o=t.conditionName,s,u;l=="dataBar"||l=="colorGradation"||l=="icons"?(s=0,u=l):o=="greaterThan"||o=="lessThan"||o=="betweenness"||o=="equal"||o=="textContains"||o=="occurrenceDate"?(s=1,o=="greaterThan"||o=="lessThan"||o=="betweenness"||o=="equal"?u="number":o=="textContains"?u="text":o=="occurrenceDate"&&(u="date")):o=="top10"||o=="top10%"||o=="last10"||o=="last10%"?(s=2,o=="top10"||o=="top10%"?u="top":(o=="last10"||o=="last10%")&&(u="last")):o=="AboveAverage"||o=="SubAverage"?(s=3,u=o):o=="duplicateValue"?(s=4,u=t.conditionValue):o=="formula"&&(s=5);let f=e.getRuleExplain(s);$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-administerRule-dialog").hide(),$("#luckysheet-editorConditionRule-dialog").remove();let d='
'+n.chooseRuleType+"\uFF1A
"+e.ruleTypeHtml()+'
'+n.editRuleDescription+'\uFF1A
'+f+"
";$("body").append(_e(dt,{id:"luckysheet-editorConditionRule-dialog",addclass:"luckysheet-newEditorRule-dialog",title:n.editFormatRule,content:d,botton:` + `,style:"z-index:100003"}));let m=$("#luckysheet-editorConditionRule-dialog").find(".luckysheet-modal-dialog-content").css("min-width",400).end(),g=m.outerHeight(),y=m.outerWidth(),v=$(window).width(),k=$(window).height(),b=$(document).scrollLeft(),w=$(document).scrollTop();if($("#luckysheet-editorConditionRule-dialog").css({left:(v+b-y)/2,top:(k+w-g)/3}).show(),e.colorSelectInit(),$("#luckysheet-editorConditionRule-dialog .ruleTypeBox .ruleTypeItem:eq("+s+")").addClass("on").siblings().removeClass("on"),$("#luckysheet-editorConditionRule-dialog #type1").val(u),(u=="dataBar"||u=="colorGradation"||u=="icons"||u=="number"||u=="text"||u=="date")&&($("#luckysheet-editorConditionRule-dialog ."+u+"Box").show(),$("#luckysheet-editorConditionRule-dialog ."+u+"Box").siblings().hide()),u=="date"&&e.daterangeInit("luckysheet-editorConditionRule-dialog"),l=="dataBar"||l=="colorGradation"||l=="icons"){if(u=="dataBar")a.length==2?$("#luckysheet-editorConditionRule-dialog .dataBarBox #type2").val("gradient"):a.length==1&&$("#luckysheet-editorConditionRule-dialog .dataBarBox #type2").val("solid"),$("#luckysheet-editorConditionRule-dialog .dataBarBox .luckysheet-conditionformat-config-color").spectrum("set",a[0]);else if(u=="colorGradation")a.length==3?($("#luckysheet-editorConditionRule-dialog .colorGradationBox #type2").val("threeColor"),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .midVal").show(),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .maxVal .luckysheet-conditionformat-config-color").spectrum("set",a[0]),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .midVal .luckysheet-conditionformat-config-color").spectrum("set",a[1]),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .minVal .luckysheet-conditionformat-config-color").spectrum("set",a[2])):a.length==2&&($("#luckysheet-editorConditionRule-dialog .colorGradationBox #type2").val("twoColor"),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .midVal").hide(),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .maxVal .luckysheet-conditionformat-config-color").spectrum("set",a[0]),$("#luckysheet-editorConditionRule-dialog .colorGradationBox .minVal .luckysheet-conditionformat-config-color").spectrum("set",a[1]));else if(u=="icons"){let x=a.len,C=a.leftMin,S=a.top;$("#luckysheet-editorConditionRule-dialog .iconsBox li").each(function(_,T){if($(T).find("div").attr("data-len")==x&&$(T).find("div").attr("data-leftmin")==C&&$(T).find("div").attr("data-top")==S)return $("#luckysheet-editorConditionRule-dialog .iconsBox .showbox .model").css("background-position",$(T).find("div").css("background-position")),$("#luckysheet-editorConditionRule-dialog .iconsBox .showbox .model").attr("data-len",$(T).find("div").attr("data-len")),$("#luckysheet-editorConditionRule-dialog .iconsBox .showbox .model").attr("data-leftmin",$(T).find("div").attr("data-leftmin")),$("#luckysheet-editorConditionRule-dialog .iconsBox .showbox .model").attr("data-top",$(T).find("div").attr("data-leftmin")),$("#luckysheet-editorConditionRule-dialog .iconsBox .showbox .model").attr("title",$(T).find("div").attr("title")),!0})}}else{if(u=="number"){$("#luckysheet-editorConditionRule-dialog .numberBox #type2").val(o);let x;if(t.conditionRange[0]!=null?x=xt(h.currentSheetIndex,{row:t.conditionRange[0].row,column:t.conditionRange[0].column},h.currentSheetIndex):x=t.conditionValue[0],$("#luckysheet-editorConditionRule-dialog .numberBox #conditionVal input").val(x),o=="betweenness"){$("#luckysheet-editorConditionRule-dialog .numberBox .txt").show(),$("#luckysheet-editorConditionRule-dialog .numberBox #conditionVal2").show();let C;t.conditionRange[1]!=null?C=xt(h.currentSheetIndex,{row:t.conditionRange[1].row,column:t.conditionRange[1].column},h.currentSheetIndex):C=t.conditionValue[1],$("#luckysheet-editorConditionRule-dialog .numberBox #conditionVal2 input").val(C)}else $("#luckysheet-editorConditionRule-dialog .numberBox .txt").hide(),$("#luckysheet-editorConditionRule-dialog .numberBox #conditionVal2").hide()}else if(u=="text"){let x;t.conditionRange[0]!=null?x=xt(h.currentSheetIndex,{row:t.conditionRange[0].row,column:t.conditionRange[0].column},h.currentSheetIndex):x=t.conditionValue[0],$("#luckysheet-editorConditionRule-dialog .textBox #conditionVal input").val(x)}else if(u=="date"){e.daterangeInit("luckysheet-editorConditionRule-dialog");let x=t.conditionValue[0];$("#luckysheet-editorConditionRule-dialog .dateBox #daterange-btn").val(x)}else if(u=="top"||u=="last"){let x=t.conditionValue[0];(o=="top10%"||o=="last10%")&&$("#luckysheet-editorConditionRule-dialog #isPercent").attr("checked","checked")}else if(o=="formula"){let x=t.conditionValue[0];$("#luckysheet-editorConditionRule-dialog #formulaConditionVal input").val(x)}$("#luckysheet-editorConditionRule-dialog #textcolorshow").spectrum("set",a.textColor),$("#luckysheet-editorConditionRule-dialog #cellcolorshow").spectrum("set",a.cellColor)}},infoDialog:function(e,n){$("#luckysheet-modal-dialog-mask").show(),$("#luckysheet-conditionformat-info-dialog").remove(),$("body").append(_e(dt,{id:"luckysheet-conditionformat-info-dialog",addclass:"",title:e,content:n,botton:``,style:"z-index:100003"}));let t=$("#luckysheet-conditionformat-info-dialog").find(".luckysheet-modal-dialog-content").css("min-width",300).end(),l=t.outerHeight(),a=t.outerWidth(),o=$(window).width(),s=$(window).height(),u=$(document).scrollLeft(),f=$(document).scrollTop();$("#luckysheet-conditionformat-info-dialog").css({left:(o+u-a)/2,top:(s+f-l)/3}).show()},getRuleExplain:function(e){let n=Q().conditionformat,t=this.textCellColorHtml(),l;switch(e){case 0:l=`
${n.ruleTypeItem1}\uFF1A
+
+ + +
+
+
+
+ + +
+
+ + +
+
+ + +
`;break;case 1:l=`
${n.ruleTypeItem2_title}\uFF1A
+
+ +
+
+ +
+ + +
+ + +
+ + +
+
+
${n.setFormat}:
${t}`;break;case 2:l=`
${n.ruleTypeItem3_title}\uFF1A
+
+ +
+ +
+ + +
+
${n.setFormat}\uFF1A
${t}`;break;case 3:l=`
${n.ruleTypeItem4_title}\uFF1A
+
+ + ${n.selectRange_average} +
+
${n.setFormat}\uFF1A
${t}`;break;case 4:l=`
${n.all}\uFF1A
+
+ + ${n.selectRange_value} +
+
${n.setFormat}\uFF1A
${t}`;break;case 5:l=`
${n.ruleTypeItem2_title}\uFF1A
+
+
+ + +
+
+
${n.setFormat}:
${t}`;break}return l},daterangeInit:function(e){let n=Q().conditionformat,t=/^\d{4}-\d{2}-\d{2}$/,l=/^\d{4}-\d{2}-\d{2} to \d{4}-\d{2}-\d{2}$/;$(".ranges_1 ul").remove();let a=$("#"+e).find("#daterange-btn");a.flatpickr({mode:"range",onChange:(o,s)=>{let[u,f]=o,d=[n.yesterday,n.today],m=[n.lastWeek,n.thisWeek,n.lastMonth,n.thisMonth,n.lastYear,n.thisYear,n.last7days,n.last30days];s==n.all?a.val(""):d.indexOf(s)>-1?a.val((0,va.default)(u).format("YYYY/MM/DD")):m.indexOf(s)>-1&&a.val((0,va.default)(u).format("YYYY/MM/DD")+"-"+(0,va.default)(f).format("YYYY/MM/DD"));let g=t.test(s),y=l.test(s);g?a.val((0,va.default)(u).format("YYYY/MM/DD")):y&&a.val((0,va.default)(u).format("YYYY/MM/DD")+"-"+(0,va.default)(f).format("YYYY/MM/DD"))}})},CFSplitRange:function(e,n,t,l){let a=[],o=t.row[0]-n.row[0],s=t.column[0]-n.column[0],u=e.row[0],f=e.row[1],d=e.column[0],m=e.column[1];return u>=n.row[0]&&f<=n.row[1]&&d>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[u+o,f+o],column:[d+s,m+s]}]:l=="restPart"?a=[]:l=="operatePart"&&(a=[{row:[u+o,f+o],column:[d+s,m+s]}]):u>=n.row[0]&&u<=n.row[1]&&d>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[n.row[1]+1,f],column:[d,m]},{row:[u+o,n.row[1]+o],column:[d+s,m+s]}]:l=="restPart"?a=[{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[u+o,n.row[1]+o],column:[d+s,m+s]}]):f>=n.row[0]&&f<=n.row[1]&&d>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0]+o,f+o],column:[d+s,m+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,f+o],column:[d+s,m+s]}]):un.row[1]&&d>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[1]+1,f],column:[d,m]},{row:[n.row[0]+o,n.row[1]+o],column:[d+s,m+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,n.row[1]+o],column:[d+s,m+s]}]):d>=n.column[0]&&d<=n.column[1]&&u>=n.row[0]&&f<=n.row[1]?l=="allPart"?a=[{row:[u,f],column:[n.column[1]+1,m]},{row:[u+o,f+o],column:[d+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,f],column:[n.column[1]+1,m]}]:l=="operatePart"&&(a=[{row:[u+o,f+o],column:[d+s,n.column[1]+s]}]):m>=n.column[0]&&m<=n.column[1]&&u>=n.row[0]&&f<=n.row[1]?l=="allPart"?a=[{row:[u,f],column:[d,n.column[0]-1]},{row:[u+o,f+o],column:[n.column[0]+s,m+s]}]:l=="restPart"?a=[{row:[u,f],column:[d,n.column[0]-1]}]:l=="operatePart"&&(a=[{row:[u+o,f+o],column:[n.column[0]+s,m+s]}]):dn.column[1]&&u>=n.row[0]&&f<=n.row[1]?l=="allPart"?a=[{row:[u,f],column:[d,n.column[0]-1]},{row:[u,f],column:[n.column[1]+1,m]},{row:[u+o,f+o],column:[n.column[0]+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,f],column:[d,n.column[0]-1]},{row:[u,f],column:[n.column[1]+1,m]}]:l=="operatePart"&&(a=[{row:[u+o,f+o],column:[n.column[0]+s,n.column[1]+s]}]):u>=n.row[0]&&u<=n.row[1]&&d>=n.column[0]&&d<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]},{row:[u+o,n.row[1]+o],column:[d+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[u+o,n.row[1]+o],column:[d+s,n.column[1]+s]}]):u>=n.row[0]&&u<=n.row[1]&&m>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[1]],column:[d,n.column[0]-1]},{row:[n.row[1]+1,f],column:[d,m]},{row:[u+o,n.row[1]+o],column:[n.column[0]+s,m+s]}]:l=="restPart"?a=[{row:[u,n.row[1]],column:[d,n.column[0]-1]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[u+o,n.row[1]+o],column:[n.column[0]+s,m+s]}]):f>=n.row[0]&&f<=n.row[1]&&d>=n.column[0]&&d<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],f],column:[n.column[1]+1,m]},{row:[n.row[0]+o,f+o],column:[d+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],f],column:[n.column[1]+1,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,f+o],column:[d+s,n.column[1]+s]}]):f>=n.row[0]&&f<=n.row[1]&&m>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],f],column:[d,n.column[0]-1]},{row:[n.row[0]+o,f+o],column:[n.column[0]+s,m+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],f],column:[d,n.column[0]-1]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,f+o],column:[n.column[0]+s,m+s]}]):un.row[1]&&d>=n.column[0]&&d<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]},{row:[n.row[0]+o,n.row[1]+o],column:[d+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,n.row[1]+o],column:[d+s,n.column[1]+s]}]):un.row[1]&&m>=n.column[0]&&m<=n.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],n.row[1]],column:[d,n.column[0]-1]},{row:[n.row[1]+1,f],column:[d,m]},{row:[n.row[0]+o,n.row[1]+o],column:[n.column[0]+s,m+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],n.row[1]],column:[d,n.column[0]-1]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,n.row[1]+o],column:[n.column[0]+s,m+s]}]):dn.column[1]&&u>=n.row[0]&&u<=n.row[1]?l=="allPart"?a=[{row:[u,n.row[1]],column:[d,n.column[0]-1]},{row:[u,n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]},{row:[u+o,n.row[1]+o],column:[n.column[0]+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,n.row[1]],column:[d,n.column[0]-1]},{row:[u,n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[u+o,n.row[1]+o],column:[n.column[0]+s,n.column[1]+s]}]):dn.column[1]&&f>=n.row[0]&&f<=n.row[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],f],column:[d,n.column[0]-1]},{row:[n.row[0],f],column:[n.column[1]+1,m]},{row:[n.row[0]+o,f+o],column:[n.column[0]+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],f],column:[d,n.column[0]-1]},{row:[n.row[0],f],column:[n.column[1]+1,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,f+o],column:[n.column[0]+s,n.column[1]+s]}]):un.row[1]&&dn.column[1]?l=="allPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],n.row[1]],column:[d,n.column[0]-1]},{row:[n.row[0],n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]},{row:[n.row[0]+o,n.row[1]+o],column:[n.column[0]+s,n.column[1]+s]}]:l=="restPart"?a=[{row:[u,n.row[0]-1],column:[d,m]},{row:[n.row[0],n.row[1]],column:[d,n.column[0]-1]},{row:[n.row[0],n.row[1]],column:[n.column[1]+1,m]},{row:[n.row[1]+1,f],column:[d,m]}]:l=="operatePart"&&(a=[{row:[n.row[0]+o,n.row[1]+o],column:[n.column[0]+s,n.column[1]+s]}]):l=="allPart"?a=[{row:[u,f],column:[d,m]}]:l=="restPart"?a=[{row:[u,f],column:[d,m]}]:l=="operatePart"&&(a=[]),a},getcolorGradation:function(e,n,t,l,a){let o=e.split(","),s=parseInt(o[0].split("(")[1]),u=parseInt(o[1]),f=parseInt(o[2].split(")")[0]),d=n.split(","),m=parseInt(d[0].split("(")[1]),g=parseInt(d[1]),y=parseInt(d[2].split(")")[0]),v=Math.round(s-(s-m)/(t-l)*(t-a)),k=Math.round(u-(u-g)/(t-l)*(t-a)),b=Math.round(f-(f-y)/(t-l)*(t-a));return"rgb("+v+", "+k+", "+b+")"},getCFPartRange:function(e,n,t){let l=[],a=h.luckysheetfile[K(e)].luckysheet_conditionformat_save;if(a!=null&&a.length>0){e:for(let o=0;o=f&&range[y].row[0]<=d||range[y].row[1]>=f&&range[y].row[1]<=d||range[y].column[0]>=m&&range[y].column[0]<=g||range[y].column[1]>=m&&range[y].column[1]<=g){l.push(a[o]);continue e}}}}return l},checksCF:function(e,n,t){return t!=null&&e+"_"+n in t?t[e+"_"+n]:null},getComputeMap:function(e){let n=K(h.currentSheetIndex);e!=null&&(n=K(e));let t=h.luckysheetfile[n].luckysheet_conditionformat_save,l=h.luckysheetfile[n].data;return l==null?null:this.compute(t,l)},compute:function(e,n){let t=this;e==null&&(e=[]);let l={};if(e.length>0)for(let a=0;af)&&(f=parseInt(v.v)),(d==null||parseInt(v.v)0){let w=Math.round(parseInt(b.v)/f*100)/100;v+"_"+k in l?l[v+"_"+k].dataBar={valueType:"plus",plusLen:m,minusLen:g,valueLen:w,format:u}:l[v+"_"+k]={dataBar:{valueType:"plus",plusLen:m,minusLen:g,valueLen:w,format:u}}}}}}else{let m=1;for(let g=0;gf)&&(f=parseInt(b.v)),(d==null||parseInt(b.v)d&&parseInt(w.v)y&&parseInt(w.v)d&&parseInt(b.v)g)&&(g=parseInt(w.v)),(y==null||parseInt(w.v)=b[0]&&parseInt(T.v)<=b[1]?S+"_"+_ in l?l[S+"_"+_].icons={left:d+2,top:m}:l[S+"_"+_]={icons:{left:d+2,top:m}}:parseInt(T.v)>=w[0]&&parseInt(T.v)<=w[1]?S+"_"+_ in l?l[S+"_"+_].icons={left:d+1,top:m}:l[S+"_"+_]={icons:{left:d+1,top:m}}:parseInt(T.v)>=x[0]&&parseInt(T.v)<=x[1]&&(S+"_"+_ in l?l[S+"_"+_].icons={left:d,top:m}:l[S+"_"+_]={icons:{left:d,top:m}}))}}else if(f==4){let b,w,x,C;k==2?(b=[y,y+v],w=[y+v+1,y+v*2],x=[y+v*2+1,y+v*3],C=[y+v*3+1,g]):k==3?(b=[y,y+v],w=[y+v+1,y+v*2],x=[y+v*2+1,y+v*3+1],C=[y+v*3+2,g]):(b=[y,y+v-1],w=[y+v,y+v*2-1],x=[y+v*2,y+v*3-1],C=[y+v*3,g]);for(let S=0;S=b[0]&&parseInt(A.v)<=b[1]?_+"_"+T in l?l[_+"_"+T].icons={left:d+3,top:m}:l[_+"_"+T]={icons:{left:d+3,top:m}}:parseInt(A.v)>=w[0]&&parseInt(A.v)<=w[1]?_+"_"+T in l?l[_+"_"+T].icons={left:d+2,top:m}:l[_+"_"+T]={icons:{left:d+2,top:m}}:parseInt(A.v)>=x[0]&&parseInt(A.v)<=x[1]?_+"_"+T in l?l[_+"_"+T].icons={left:d+1,top:m}:l[_+"_"+T]={icons:{left:d+1,top:m}}:parseInt(A.v)>=C[0]&&parseInt(A.v)<=C[1]&&(_+"_"+T in l?l[_+"_"+T].icons={left:d,top:m}:l[_+"_"+T]={icons:{left:d,top:m}}))}}else if(f==5){let b,w,x,C,S;k==2?(b=[y,y+v],w=[y+v+1,y+v*2],x=[y+v*2+1,y+v*3],C=[y+v*3+1,y+v*4],S=[y+v*4+1,g]):k==3?(b=[y,y+v],w=[y+v+1,y+v*2],x=[y+v*2+1,y+v*3+1],C=[y+v*3+2,y+v*4+1],S=[y+v*4+2,g]):k==4?(b=[y,y+v],w=[y+v+1,y+v*2+1],x=[y+v*2+2,y+v*3+1],C=[y+v*3+2,y+v*4+2],S=[y+v*4+3,g]):(b=[y,y+v-1],w=[y+v,y+v*2-1],x=[y+v*2,y+v*3-1],C=[y+v*3,y+v*4-1],S=[y+v*4,g]);for(let _=0;_=b[0]&&parseInt(R.v)<=b[1]?T+"_"+A in l?l[T+"_"+A].icons={left:d+4,top:m}:l[T+"_"+A]={icons:{left:d+4,top:m}}:parseInt(R.v)>=w[0]&&parseInt(R.v)<=w[1]?T+"_"+A in l?l[T+"_"+A].icons={left:d+3,top:m}:l[T+"_"+A]={icons:{left:d+3,top:m}}:parseInt(R.v)>=x[0]&&parseInt(R.v)<=x[1]?T+"_"+A in l?l[T+"_"+A].icons={left:d+2,top:m}:l[T+"_"+A]={icons:{left:d+2,top:m}}:parseInt(R.v)>=C[0]&&parseInt(R.v)<=C[1]?T+"_"+A in l?l[T+"_"+A].icons={left:d+1,top:m}:l[T+"_"+A]={icons:{left:d+1,top:m}}:parseInt(R.v)>=S[0]&&parseInt(R.v)<=S[1]&&(T+"_"+A in l?l[T+"_"+A].icons={left:d,top:m}:l[T+"_"+A]={icons:{left:d,top:m}}))}}}}else{let f=e[a].conditionName,d=e[a].conditionValue[0],m=e[a].conditionValue[1],g=u.textColor,y=u.cellColor;for(let v=0;vd?k+"_"+b in l?(l[k+"_"+b].textColor=g,l[k+"_"+b].cellColor=y):l[k+"_"+b]={textColor:g,cellColor:y}:f=="lessThan"&&w.vm?(k=d,b=m):(k=m,b=d);for(let w=s[v].row[0];w<=s[v].row[1];w++)for(let x=s[v].column[0];x<=s[v].column[1];x++){if(n[w]==null||n[w][x]==null)continue;let C=n[w][x];P(C)!="object"||de(C.v)||C.v>=b&&C.v<=k&&(w+"_"+x in l?(l[w+"_"+x].textColor=g,l[w+"_"+x].cellColor=y):l[w+"_"+x]={textColor:g,cellColor:y})}}else if(f=="occurrenceDate"){let k,b;if(d.toString().indexOf("-")==-1)k=it(d)[2],b=it(d)[2];else{let w=d.toString().split("-");k=it(w[1].trim())[2],b=it(w[0].trim())[2]}for(let w=s[v].row[0];w<=s[v].row[1];w++)for(let x=s[v].column[0];x<=s[v].column[1];x++)if(!(n[w]==null||n[w][x]==null)&&n[w][x].ct!=null&&n[w][x].ct.t=="d"){let C=ze(w,x,n);C>=b&&C<=k&&(w+"_"+x in l?(l[w+"_"+x].textColor=g,l[w+"_"+x].cellColor=y):l[w+"_"+x]={textColor:g,cellColor:y})}}else if(f=="duplicateValue"){let k={};for(let b=s[v].row[0];b<=s[v].row[1];b++)for(let w=s[v].column[0];w<=s[v].column[1];w++){let x=ze(b,w,n);x in k||(k[x]=[]),k[x].push({r:b,c:w})}if(d=="0"){for(let b in k)if(b!="null"&&b!="undefined"&&k[b].length>1)for(let w=0;ww&&(x+"_"+C in l?(l[x+"_"+C].textColor=g,l[x+"_"+C].cellColor=y):l[x+"_"+C]={textColor:g,cellColor:y})}else if(f=="SubAverage")for(let x=s[v].row[0];x<=s[v].row[1];x++)for(let C=s[v].column[0];C<=s[v].column[1];C++){if(n[x]==null||n[x][C]==null)continue;ze(x,C,n)-1&&w.v>x.v||$.inArray(d,[1,"1","desc"])>-1&&w.v0&&(T="="+p.functionCopy(T,"down",A)),R>0&&(T="="+p.functionCopy(T,"right",R));let N=p.execfunction(T)[1];typeof N!="boolean"&&(N=!!Number(N)),!!N&&(S+"_"+_ in l?(l[S+"_"+_].textColor=g,l[S+"_"+_].cellColor=y):l[S+"_"+_]={textColor:g,cellColor:y})}}}}return h.conditionFormatCells=l,l},updateItem:function(e,n,t){if(!Rr(h.currentSheetIndex))return;let l=this,a=K(h.currentSheetIndex),o=$.extend(!0,[],h.luckysheetfile),s=l.getHistoryRules(o),u;if(e=="delSheet")u=[];else{let m={type:e,cellrange:n,format:t};u=h.luckysheetfile[a].luckysheet_conditionformat_save==null?[]:h.luckysheetfile[a].luckysheet_conditionformat_save,u.push(m)}h.luckysheetfile[a].luckysheet_conditionformat_save=u;let f=$.extend(!0,[],h.luckysheetfile),d=l.getCurrentRules(f);l.ref(s,d),ne.allowUpdate&&ne.saveParam("all",h.currentSheetIndex,u,{k:"luckysheet_conditionformat_save"})},getHistoryRules:function(e){let n=[];for(let t=0;t{Jt();ol();yr();_l();Qt();tl();qt();ja();Zt();pr();Pt();Xt();Ml();Dt();ht();Xe();vt();jr();A2={clearcopy:function(e){let n=window.clipboardData;n||e&&(n=e.originalEvent.clipboardData);let t=" ";if(h.luckysheet_selection_range=[],Bt(),n)return n.setData("Text",t),!1;{let l=$("#luckysheet-copy-content").css("visibility","hidden");l.val(t),l.focus(),l.select(),setTimeout(function(){l.blur().css("visibility","visible")},10)}},getHtmlBorderStyle:function(e,n){let t="";return e={0:"none",1:"Thin",2:"Hair",3:"Dotted",4:"Dashed",5:"DashDot",6:"DashDotDot",7:"Double",8:"Medium",9:"MediumDashed",10:"MediumDashDot",11:"MediumDashDotDot",12:"SlantedDashDot",13:"Thick"}[e.toString()],e.indexOf("Medium")>-1?t+="1pt ":e=="Thick"?t+="1.5pt ":t+="0.5pt ",e=="Hair"?t+="double ":e.indexOf("DashDotDot")>-1?t+="dotted ":e.indexOf("DashDot")>-1?t+="dashed ":e.indexOf("Dotted")>-1?t+="dotted ":e.indexOf("Dashed")>-1?t+="dashed ":t+="solid ",t+n+";"},copy:function(e){let n=window.clipboardData;n||(n=e.originalEvent.clipboardData),h.luckysheet_selection_range=[];let t=[],l=[],a=[],o=!1,s=!1;for(let y=0;y0&&(f=Wr());let d="",m=we.deepCopyFlowData(h.flowdata),g="";for(let y=0;y':d+=``;for(let k=0;k':g+=''),h.config.colhidden!=null&&h.config.colhidden[b]!=null)continue;let w='';if(m[v]!=null&&m[v][b]!=null){let x="",C="",S=/^(w|W)((0?)|(0\.0+))$/,_;if(m[v][b].ct!=null&&m[v][b].ct.fa!=null&&m[v][b].ct.fa.match(S)?_=ze(v,b,m):_=ze(v,b,m,"m"),x+=be.getStyleByCell(m,v,b),P(m[v][b])=="object"&&"mc"in m[v][b])if("rs"in m[v][b].mc){if(C='rowspan="'+m[v][b].mc.rs+'" colspan="'+m[v][b].mc.cs+'"',f&&f[v+"_"+b]){let T={color:{},style:{}},A={color:{},style:{}},R={color:{},style:{}},I={color:{},style:{}};for(let M=v;M23){let M=null,F=null;for(let E in T.color)T.color[E]>=N/2&&(M=E);for(let E in T.style)T.style[E]>=N/2&&(F=E);M!=null&&F!=null&&(x+="border-left:"+u.getHtmlBorderStyle(F,M))}if(JSON.stringify(A).length>23){let M=null,F=null;for(let E in A.color)A.color[E]>=N/2&&(M=E);for(let E in A.style)A.style[E]>=N/2&&(F=E);M!=null&&F!=null&&(x+="border-right:"+u.getHtmlBorderStyle(F,M))}if(JSON.stringify(R).length>23){let M=null,F=null;for(let E in R.color)R.color[E]>=L/2&&(M=E);for(let E in R.style)R.style[E]>=L/2&&(F=E);M!=null&&F!=null&&(x+="border-top:"+u.getHtmlBorderStyle(F,M))}if(JSON.stringify(I).length>23){let M=null,F=null;for(let E in I.color)I.color[E]>=L/2&&(M=E);for(let E in I.style)I.style[E]>=L/2&&(F=E);M!=null&&F!=null&&(x+="border-bottom:"+u.getHtmlBorderStyle(F,M))}}}else continue;else if(f&&f[v+"_"+b]){if(f[v+"_"+b].l){let T=f[v+"_"+b].l.style,A=f[v+"_"+b].l.color;x+="border-left:"+u.getHtmlBorderStyle(T,A)}if(f[v+"_"+b].r){let T=f[v+"_"+b].r.style,A=f[v+"_"+b].r.color;x+="border-right:"+u.getHtmlBorderStyle(T,A)}if(f[v+"_"+b].b){let T=f[v+"_"+b].b.style,A=f[v+"_"+b].b.color;x+="border-bottom:"+u.getHtmlBorderStyle(T,A)}if(f[v+"_"+b].t){let T=f[v+"_"+b].t.style,A=f[v+"_"+b].t.color;x+="border-top:"+u.getHtmlBorderStyle(T,A)}}w=_e(w,{style:x,span:C}),_==null&&(_=ze(v,b,m)),_==null&&m[v][b]&&m[v][b].ct&&m[v][b].ct.t=="inlineStr"&&(_=m[v][b].ct.s.map(T=>{let A=$('
');return T.v.split(`\r +`).map(I=>{if(!I)return"";let N=$("");return T.fs&&N.css("font-size",`${T.fs}pt`),T.bl&&N.css("font-weight","bold"),T.it&&N.css("font-style","italic"),T.un&&N.css("text-decoration","underline"),T.fc&&N.css("color",T.fc),T.cl?N.append(`${I}`):N.text(I),N[0].outerHTML}).join(A[0].outerHTML)}).join("")),_==null&&(_=""),w+=_}else{let x="";if(f&&f[v+"_"+b]){if(f[v+"_"+b].l){let C=f[v+"_"+b].l.style,S=f[v+"_"+b].l.color;x+="border-left:"+u.getHtmlBorderStyle(C,S)}if(f[v+"_"+b].r){let C=f[v+"_"+b].r.style,S=f[v+"_"+b].r.color;x+="border-right:"+u.getHtmlBorderStyle(C,S)}if(f[v+"_"+b].b){let C=f[v+"_"+b].b.style,S=f[v+"_"+b].b.color;x+="border-bottom:"+u.getHtmlBorderStyle(C,S)}if(f[v+"_"+b].t){let C=f[v+"_"+b].t.style,S=f[v+"_"+b].t.color;x+="border-top:"+u.getHtmlBorderStyle(C,S)}}w+="",w=_e(w,{style:x,span:""}),w+=""}w+="",d+=w}d+=""}}if(d=`${g}`+d+"
",h.iscopyself=!0,n)return n.setData("Text",d),!1;{let y=$("#luckysheet-copy-content");y.html(d),y.focus(),y.select(),document.execCommand("selectAll"),document.execCommand("Copy"),setTimeout(function(){$("#luckysheet-copy-content").blur()},10)}},copybyformat:function(e,n){let t=window.clipboardData;t||(t=e.originalEvent&&e.originalEvent.clipboardData),h.luckysheet_selection_range=[{row:h.luckysheet_select_save[0].row,column:h.luckysheet_select_save[0].column}],Bt();let l=n;if(h.iscopyself=!0,t)return t.setData("Text",l),!1;{let a=$("#luckysheet-copy-content");a.text(l),a.focus(),a.select(),document.execCommand("selectAll"),document.execCommand("Copy"),setTimeout(function(){a.blur()},10)}},isPasteAction:!1,paste:function(e,n){let t=this;if(h.allowEdit===!1)return;let a=Q().drag,o=$("#luckysheet-copy-content");o.focus(),o.select(),setTimeout(function(){let s=o.html();s.indexOf("luckysheet_copy_action_table")>-1&&h.luckysheet_copy_save.copyRange!=null&&h.luckysheet_copy_save.copyRange.length>0?h.luckysheet_paste_iscut?(h.luckysheet_paste_iscut=!1,t.pasteHandlerOfCutPaste(h.luckysheet_copy_save),t.clearcopy(e)):t.pasteHandlerOfCopyPaste(h.luckysheet_copy_save):s.indexOf("luckysheet_copy_action_image")>-1?Ie.pasteImgItem():n!="btn"?t.pasteHandler(s):fe()?alert(a.pasteMustKeybordAlert):U.info(a.pasteMustKeybordAlertHTMLTitle,a.pasteMustKeybordAlertHTML)},10)},pasteHandler:function(e,n){if(!kr(h.luckysheet_select_save,h.currentSheetIndex)||h.allowEdit===!1)return;let l=Q().paste;if(h.luckysheet_select_save.length>1&&(fe()?alert(l.errorNotAllowMulti):U.info(`${l.warning}`,l.errorNotAllowMulti)),typeof e=="object"){if(e.length==0)return;let a=$.extend(!0,{},h.config);a.merge==null&&(a.merge={}),JSON.stringify(n).length>2&&a.borderInfo==null&&(a.borderInfo=[]);let o=e.length,s=e[0].length,u=h.luckysheet_select_save[0].row[0],f=u+o-1,d=h.luckysheet_select_save[0].column[0],m=d+s-1,g=!1;if(a.merge!=null&&(g=Nt(a,u,f,d,m)),g){fe()?alert(l.errorNotAllowMerged):U.info(`${l.warning}`,l.errorNotAllowMerged);return}let y=we.deepCopyFlowData(h.flowdata),v=y.length,k=y[0].length,b=f-v+1,w=m-k+1;(b>0||w>0)&&(y=Vt([].concat(y),b,w,!0)),a.rowlen==null&&(a.rowlen={});let x=!1,C={};for(let S=u;S<=f;S++){let _=[].concat(y[S]),T=h.defaultrowlen;a.rowlen[S]!=null&&(T=a.rowlen[S]);for(let A=d;A<=m;A++){P(_[A])=="object"&&"mc"in _[A]&&("rs"in _[A].mc&&delete a.merge[_[A].mc.r+"_"+_[A].mc.c],delete _[A].mc);let R=null;if(e[S-u]!=null&&e[S-u][A-d]!=null&&(R=e[S-u][A-d]),_[A]=$.extend(!0,{},R),R!=null&&"mc"in _[A]&&(_[A].mc.rs!=null?(_[A].mc.r=S,_[A].mc.c=A,a.merge[_[A].mc.r+"_"+_[A].mc.c]=_[A].mc,C[R.mc.r+"_"+R.mc.c]=[_[A].mc.r,_[A].mc.c]):_[A]={mc:{r:C[R.mc.r+"_"+R.mc.c][0],c:C[R.mc.r+"_"+R.mc.c][1]}}),n[S-u+"_"+(A-d)]){let L={rangeType:"cell",value:{row_index:S,col_index:A,l:n[S-u+"_"+(A-d)].l,r:n[S-u+"_"+(A-d)].r,t:n[S-u+"_"+(A-d)].t,b:n[S-u+"_"+(A-d)].b}};a.borderInfo.push(L)}let I=oa(_[A]),N=be.getTextSize("\u7530",I)[1];N>T&&(T=N,x=!0)}y[S]=_,T!=h.defaultrowlen&&(a.rowlen[S]=T)}if(h.luckysheet_select_save=[{row:[u,f],column:[d,m]}],b>0||w>0||x){let S={cfg:a,RowlChange:!0};Ke(y,h.luckysheet_select_save,S)}else{let S={cfg:a};Ke(y,h.luckysheet_select_save,S),tt()}}else{e=e.replace(/\r/g,"");let a=[],o=e.split(` +`),s=o[0].split(" ").length;for(let w=0;w${l.warning}`,l.errorNotAllowMerged);return}let k=d+g-u.length,b=m+y-u[0].length;(k>0||b>0)&&(u=Vt([].concat(u),k,b,!0));for(let w=0;w0&&(S.f="",p.delFunctionGroup(w+d,C+m,h.currentSheetIndex));else{let T={},A=it(_);T.v=A[2],T.ct=A[1],T.m=A[0],x[C+m]=T}}u[w+d]=x}if(f.row=[d,d+g-1],f.column=[m,m+y-1],k>0||b>0){let w={RowlChange:!0};Ke(u,h.luckysheet_select_save,w)}else Ke(u,h.luckysheet_select_save),tt()}},pasteHandlerOfCutPaste:function(e){if(!kr(h.luckysheet_select_save,h.currentSheetIndex)||h.allowEdit===!1)return;let t=Q().paste,l=$.extend(!0,{},h.config);l.merge==null&&(l.merge={});let a=e.HasMC,o=e.RowlChange,s=e.dataSheetIndex,u=e.copyRange[0].row[0],f=e.copyRange[0].row[1],d=e.copyRange[0].column[0],m=e.copyRange[0].column[1],g=$.extend(!0,[],zt({row:[u,f],column:[d,m]},s)),y=g.length,v=g[0].length,k=h.luckysheet_select_save[h.luckysheet_select_save.length-1],b=k.row_focus,w=b+y-1,x=k.column_focus,C=x+v-1,S=!1;if(l.merge!=null&&(S=Nt(l,b,w,x,C)),S){fe()?alert(t.errorNotAllowMerged):U.info(`${t.warning}`,t.errorNotAllowMerged);return}let _=we.deepCopyFlowData(h.flowdata),T=_.length,A=_[0].length,R=y+b-T,I=v+x-A;(R>0||I>0)&&(_=Vt([].concat(_),R,I,!0));let N=Wr(s),L=$.extend(!0,{},h.luckysheetfile[K(s)].dataVerification),M=$.extend(!0,{},h.luckysheetfile[K(h.currentSheetIndex)].dataVerification);if(h.currentSheetIndex==s){for(let O=u;O<=f;O++)for(let V=d;V<=m;V++){let q=_[O][V];P(q)=="object"&&"mc"in q&&("rs"in q.mc&&delete l.merge[q.mc.r+"_"+q.mc.c],delete q.mc),_[O][V]=null,delete M[O+"_"+V]}if(l.borderInfo&&l.borderInfo.length>0){let O=[];for(let V=0;V=u&&W<=f&&X>=d&&X<=m||O.push(l.borderInfo[V])}}l.borderInfo=O}}let F={};for(let O=b;O<=w;O++){let V=[].concat(_[O]);for(let q=x;q<=C;q++){if(N[u+O-b+"_"+(d+q-x)]){let X={rangeType:"cell",value:{row_index:O,col_index:q,l:N[u+O-b+"_"+(d+q-x)].l,r:N[u+O-b+"_"+(d+q-x)].r,t:N[u+O-b+"_"+(d+q-x)].t,b:N[u+O-b+"_"+(d+q-x)].b}};l.borderInfo==null&&(l.borderInfo=[]),l.borderInfo.push(X)}else if(N[O+"_"+q]){let X={rangeType:"cell",value:{row_index:O,col_index:q,l:null,r:null,t:null,b:null}};l.borderInfo==null&&(l.borderInfo=[]),l.borderInfo.push(X)}L[u+O-b+"_"+(d+q-x)]&&(M[O+"_"+q]=L[u+O-b+"_"+(d+q-x)]),P(V[q])=="object"&&"mc"in V[q]&&("rs"in V[q].mc&&delete l.merge[V[q].mc.r+"_"+V[q].mc.c],delete V[q].mc);let W=null;g[O-b]!=null&&g[O-b][q-x]!=null&&(W=g[O-b][q-x]),V[q]=$.extend(!0,{},W),W!=null&&a&&"mc"in V[q]&&(V[q].mc.rs!=null?(V[q].mc.r=O,V[q].mc.c=q,l.merge[V[q].mc.r+"_"+V[q].mc.c]=V[q].mc,F[W.mc.r+"_"+W.mc.c]=[V[q].mc.r,V[q].mc.c]):V[q]={mc:{r:F[W.mc.r+"_"+W.mc.c][0],c:F[W.mc.r+"_"+W.mc.c][1]}})}_[O]=V}k.row=[b,w],k.column=[x,C],o&&(h.currentSheetIndex!=s?l=yl(_,b,w,l):(l=yl(_,u,f,l),l=yl(_,b,w,l)));let E,z;if(h.currentSheetIndex!=s){let O=$.extend(!0,[],h.luckysheetfile[K(s)].data),V=$.extend(!0,{},h.luckysheetfile[K(s)].config),q=$.extend(!0,[],O),W=$.extend(!0,{},V);W.merge==null&&(W.merge={});for(let oe=u;oe<=f;oe++)for(let ue=d;ue<=m;ue++){let he=q[oe][ue];P(he)=="object"&&"mc"in he&&("rs"in he.mc&&delete W.merge[he.mc.r+"_"+he.mc.c],delete he.mc),q[oe][ue]=null}if(o&&(W=yl(q,u,f,W)),W.borderInfo&&W.borderInfo.length>0){let oe=[];for(let ue=0;ue=u&&Z<=f&&G>=d&&G<=m||oe.push(W.borderInfo[ue])}}W.borderInfo=oe}let X=$.extend(!0,[],h.luckysheetfile[K(s)].luckysheet_conditionformat_save),ee=$.extend(!0,[],X),te=[];if(ee!=null&&ee.length>0)for(let oe=0;oe0&&(Z=Z.concat(pe))}if(ee[oe].cellrange=he,Z.length>0){let G=$.extend(!0,{},ee[oe]);G.cellrange=Z,te.push(G)}}let se=$.extend(!0,[],h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save),ce=$.extend(!0,[],se);te.length>0&&(ce=ce.concat(te));for(let oe=u;oe<=f;oe++)for(let ue=d;ue<=m;ue++)delete L[oe+"_"+ue];E={sheetIndex:s,data:O,curData:q,config:V,curConfig:W,cdformat:X,curCdformat:ee,dataVerification:$.extend(!0,{},h.luckysheetfile[K(s)].dataVerification),curDataVerification:L,range:{row:[u,f],column:[d,m]}},z={sheetIndex:h.currentSheetIndex,data:h.flowdata,curData:_,config:$.extend(!0,{},h.config),curConfig:l,cdformat:se,curCdformat:ce,dataVerification:$.extend(!0,{},h.luckysheetfile[K(h.currentSheetIndex)].dataVerification),curDataVerification:M,range:{row:[b,w],column:[x,C]}}}else{let O=$.extend(!0,[],h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save),V=$.extend(!0,[],O);if(V!=null&&V.length>0)for(let q=0;q0||I>0?Ya(E,z,!0):Ya(E,z,o)},pasteHandlerOfCopyPaste:function(e){if(!kr(h.luckysheet_select_save,h.currentSheetIndex))return;let t=Q().paste,l=$.extend(!0,{},h.config);l.merge==null&&(l.merge={});let a=e.HasMC,o=e.RowlChange,s=e.dataSheetIndex,u=e.copyRange[0].row[0],f=e.copyRange[0].row[1],d=e.copyRange[0].column[0],m=e.copyRange[0].column[1],g=[],y=!1;for(let ce=0;ce1?u==e.copyRange[1].row[0]&&f==e.copyRange[1].row[1]?(oe=oe[0].map(function(ue,he){return oe.map(function(Z){return Z[he]})}),g=g.concat(oe),y=!0):d==e.copyRange[1].column[0]&&m==e.copyRange[1].column[1]&&(g=g.concat(oe)):g=oe}y&&(g=g[0].map(function(ce,oe){return g.map(function(ue){return ue[oe]})}));let v=$.extend(!0,[],g);if(e.copyRange.length>1)for(let ce=0;ce${t.warning}`,t.errorNotAllowMerged);return}let I=(C-x+1)/k,N=(_-S+1)/b,L=we.deepCopyFlowData(h.flowdata),M=L.length,F=L[0].length,E=k+x-M,z=b+S-F;(E>0||z>0)&&(L=Vt([].concat(L),E,z,!0));let O=Wr(s),V=$.extend(!0,{},h.luckysheetfile[K(s)].dataVerification),q=null,W=0,X=0,ee=0,te=0;for(let ce=1;ce<=I;ce++)for(let oe=1;oe<=N;oe++){W=x+(ce-1)*k,X=S+(oe-1)*b,te=x+ce*k,ee=S+oe*b;let ue=W-u,he=X-d,Z={};for(let G=W;G0&&(Ae="="+p.functionCopy(Ae,"down",ue)),ue<0&&(Ae="="+p.functionCopy(Ae,"up",Math.abs(ue))),he>0&&(Ae="="+p.functionCopy(Ae,"right",he)),he<0&&(Ae="="+p.functionCopy(Ae,"left",Math.abs(he)));let ae=p.execfunction(Ae,G,pe,void 0,!0);ie.spl!=null?(ie.f=ae[2],ie.v=ae[1],ie.spl=ae[3].data):(ie.f=ae[2],ie.v=ae[1],ie.ct!=null&&ie.ct.fa!=null&&(ie.m=mt(ie.ct.fa,ae[1])))}le[pe]=$.extend(!0,{},ie),ie!=null&&a&&"mc"in le[pe]&&(le[pe].mc.rs!=null?(le[pe].mc.r=G,le[pe].mc.c=pe,l.merge[le[pe].mc.r+"_"+le[pe].mc.c]=le[pe].mc,Z[ie.mc.r+"_"+ie.mc.c]=[le[pe].mc.r,le[pe].mc.c]):le[pe]={mc:{r:Z[ie.mc.r+"_"+ie.mc.c][0],c:Z[ie.mc.r+"_"+ie.mc.c][1]}})}L[G]=le}}let se=null;if(e.copyRange.length==1){let ce=h.luckysheetfile[K(s)],oe=h.luckysheetfile[K(h.currentSheetIndex)],ue=$.extend(!0,[],ce.luckysheet_conditionformat_save);if(ue!=null&&ue.length>0){se=$.extend(!0,[],oe.luckysheet_conditionformat_save);for(let he=0;he0&&(G=G.concat(Ae))}}G.length>0&&(ue[he].cellrange=G,se.push(ue[he]))}}}if(w.row=[x,C],w.column=[S,_],o||E>0||z>0){l=yl(L,x,C,l);let ce={cfg:l,RowlChange:!0,cdformat:se,dataVerification:q};Ke(L,h.luckysheet_select_save,ce)}else{let ce={cfg:l,cdformat:se,dataVerification:q};Ke(L,h.luckysheet_select_save,ce),tt()}},pasteHandlerOfPaintModel:function(e){if(!kr(h.luckysheet_select_save,h.currentSheetIndex))return;let t=Q().paste,l=$.extend(!0,{},h.config);l.merge==null&&(l.merge={});let a=e.HasMC,o=e.RowlChange,s=e.dataSheetIndex,u=e.copyRange[0].row[0],f=e.copyRange[0].row[1],d=e.copyRange[0].column[0],m=e.copyRange[0].column[1],g=$.extend(!0,[],zt({row:[u,f],column:[d,m]},s)),y=h.luckysheet_select_save[h.luckysheet_select_save.length-1],v=y.row[0],k=y.row[1],b=y.column[0],w=y.column[1],x=g.length,C=g[0].length;if(v==k&&b==w){let q=!1;if(l.merge!=null&&(q=Nt(l,v,v+x-1,b,b+C-1)),q){fe()?alert(t.errorNotAllowMerged):U.info(`${t.warning}`,t.errorNotAllowMerged);return}k=v+x-1,w=b+C-1}let S=Math.ceil((k-v+1)/x),_=Math.ceil((w-b+1)/C),T=we.deepCopyFlowData(h.flowdata),A=T[0].length,R=T.length,I=Wr(s),N=$.extend(!0,{},h.luckysheetfile[K(s)].dataVerification),L=null,M=0,F=0,E=0,z=0;for(let q=1;q<=S;q++)for(let W=1;W<=_;W++){M=v+(q-1)*x,F=b+(W-1)*C,z=v+q*x>R?R:v+q*x,z>k+1&&(z=k+1),E=b+W*C>A?A:b+W*C,E>w+1&&(E=w+1);let X={};for(let ee=M;ee{Reflect.deleteProperty(te[se],ue)}):te[se]={v:te[se]},te[se]=$.extend(!0,te[se],ce),te[se].ct&&te[se].ct.t==="inlineStr"&&te[se].ct.s.forEach(oe=>oe=$.extend(!0,oe,ce)),a&&"mc"in te[se]&&(te[se].mc.rs!=null?(te[se].mc.r=ee,te[se].mc.rs+ee>=z&&(te[se].mc.rs=z-ee),te[se].mc.c=se,te[se].mc.cs+se>=E&&(te[se].mc.cs=E-se),l.merge[te[se].mc.r+"_"+te[se].mc.c]=te[se].mc,X[ce.mc.r+"_"+ce.mc.c]=[te[se].mc.r,te[se].mc.c]):te[se]={mc:{r:X[ce.mc.r+"_"+ce.mc.c][0],c:X[ce.mc.r+"_"+ce.mc.c][1]}}),te[se].v!=null&&ce.ct!=null&&ce.ct.fa!=null)){let oe=mt(ce.ct.fa,te[se].v);te[se].m=oe}}T[ee]=te}}let O=null,V=$.extend(!0,[],h.luckysheetfile[K(s)].luckysheet_conditionformat_save);if(V!=null&&V.length>0){O=$.extend(!0,[],h.luckysheetfile[K(h.currentSheetIndex)].luckysheet_conditionformat_save);for(let q=0;q0&&(X=X.concat(te))}X.length>0&&(V[q].cellrange=[{row:[v,k],column:[b,w]}],O.push(V[q]))}}if(y.row=[v,k],y.column=[b,w],o){l=yl(T,v,k,l);let q={cfg:l,RowlChange:!0,cdformat:O,dataVerification:L};Ke(T,h.luckysheet_select_save,q)}else{k>=T.length&&(k=T.length-1),l=yl(T,v,k,l);let q={cfg:l,RowlChange:!0,cdformat:O,dataVerification:L};Ke(T,h.luckysheet_select_save,q),tt()}},matchcopy:function(e,n){let t=[],l=[],a,o;if(typeof e=="object")t=e;else{t=e.split(` +`);for(let s=0;s{Xa();ol()});function vc(e,n,t,l,a){let o=Tu();o=_e(o,{logotitle:a}),o=_e(o,{menu:Hu()});let s=Su;h.config==null&&(h.config={}),vn(n,e);let f=Q().info,d=''+f.row+'('+f.addLast+")",m=' ",g=_e(f.pageInfo,{total:me.total?me.total:"",totalPage:me.pageInfo.totalPage?me.pageInfo.totalPage:"",currentPage:me.pageInfo.currentPage?me.pageInfo.currentPage:""}),y=' '+g+' ',v=' '+g+"",k="";me.enableAddRow&&(k+=d),me.enablePage&&(parseInt(me.pageInfo.totalPage)==1?k+=v:k+=y),me.enableAddBackTop&&(k+=m);let b=_e('
'+k+"
",{height:h.rh_height,width:h.ch_width-1}),w=_e(Du,{width:h.ch_width,index:0,column:""});s=_e(s,{width:h.ch_width,flow:b,index:0}),o=_e(o,{flow:s,rowHeader:"
",columnHeader:w,functionButton:me.functionButton}),$("#"+h.container).append(o),$("#luckysheet-scrollbar-x div").width(h.ch_width),$("#luckysheet-scrollbar-y div").height(h.rh_height+h.columnHeaderHeight-h.cellMainSrollBarSize-3),$("body").append(Nu),$("body").append($u),$("body").append(Iu()),$("body").append(Eu),$("body").append(_e(Yi(),{menuid:"filter"})),$("body").append(_e(Xi(),{menuid:"filter"})),$("body").append(Pu()),$("#luckysheet-rows-h").width(h.rowHeaderWidth-1.5),$("#luckysheet-cols-h-c").height(h.columnHeaderHeight-1.5),$("#luckysheet-left-top").css({width:h.rowHeaderWidth-1.5,height:h.columnHeaderHeight-1.5}),$("#luckysheet_info_detail_input").val(me.title)}var Id=$e(()=>{Wt();Sl();Gr();Zt();Qt();Ri();ht();Xe();vt()});function Rd(e){e==null&&(e="chart");for(var n=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split(""),t="",l=0;l<12;l++)t+=n[Math.round(Math.random()*(n.length-1))];var a=new Date().getTime();return e+"_"+t+"_"+a}function kc(e,n){return e.replace(/\$\{([\w]+)\}/g,function(t,l){var a=n[l];return typeof a!="undefined"?a:t})}var Ad=$e(()=>{});var br,Cn,D2,D,zi=$e(()=>{ht();Pt();Ml();qt();br=El(kn()),Cn={v:"#VALUE!",n:"#NAME?",na:"#N/A",r:"#REF!",d:"#DIV/0!",nm:"#NUM!",nl:"#NULL!",sp:"#SPILL!"},D2={getCellDataArr:function(e,n,t){let l=[];if(e.data==null)t||(n==="number"?l.push(0):n==="text"&&l.push(""));else if(P(e.data)==="array")for(let a=0;a1){let t=e[0].length;for(let l=1;lm)return Cn.v;l=e.data[0][o-d]}else if(e.coll==1){if(af)return Cn.v;l=e.data[a-u][0]}l==null||de(l.v)||l.mc!=null?n=="number"?l=0:n=="text"&&(l=""):l=l.v}else return Cn.v}else l=e;return l},getCellBoolen:function(e){let t=this.getFirstValue(e);if(H(t))return t;if(P(t)!="boolean")if(P(t)=="string"&&(t.toLowerCase()=="true"||t.toLowerCase()=="false"))t.toLowerCase()=="true"?t=!0:t.toLowerCase()=="false"&&(t=!1);else if(B(t))t=parseFloat(t),t=t!=0;else return Cn.v;return t},getCellDate:function(e){let n=this,t;if(P(e)=="array")if(P(e[0])=="array"){if(!n.isDyadicArr(e))return Cn.v;t=e[0][0]}else t=e[0];else if(P(e)=="object"&&e.startCell!=null){if(e.data==null||P(e.data)=="array"||de(e.data.v))return Cn.v;t=e.data.v,e.data.ct!=null&&e.data.ct.t=="d"&&(t=mt("YYYY-MM-DD h:mm:ss",t))}else t=e;return t},getCellrangeDate:function(e){let n=this,t=[];if(P(e)=="array"){if(P(e[0])=="array"&&!n.isDyadicArr(e))return Cn.v;t=t.concat(n.getDataArr(e,!1))}else if(P(e)=="object"&&e.startCell!=null)if(e.data==null)t.push(0);else if(P(e.data)=="array")for(let l=0;l=(0,br.default)(a))return!0;let o=(0,br.default)(n).year(),s=(0,br.default)().set({year:o,month:2,date:1});return t.isLeapYear(o)&&(0,br.default)(n)>=(0,br.default)(s)&&(0,br.default)(e)<(0,br.default)(s)},findResultIndex:function(e,n){let t={};for(let o=1;ol&&(l=n[i].length);for(let o=1;o{Dd={},M2=function(n){var t=function(){};t.precision=1e-6,t.create=function(a){var o=new t;return o.setElements(a)};var l=t.create;t.I=function(a){for(var o=[],s=a,u;s--;)for(u=a,o[s]=[];u--;)o[s][u]=s===u?1:0;return t.create(o)},t.prototype={e:function(a,o){return a<1||a>this.elements.length||o<1||o>this.elements[0].length?null:this.elements[a-1][o-1]},dimensions:function(){var a=this.elements.length===0?0:this.elements[0].length;return{rows:this.elements.length,cols:a}},rows:function(){return this.elements.length},cols:function(){return this.elements.length===0?0:this.elements[0].length},eql:function(a){var o=a.elements||a;if((!o[0]||typeof o[0][0]=="undefined")&&(o=t.create(o).elements),this.elements.length===0||o.length===0)return this.elements.length===o.length;if(this.elements.length!==o.length||this.elements[0].length!==o[0].length)return!1;for(var s=this.elements.length,u=this.elements[0].length,f;s--;)for(f=u;f--;)if(Math.abs(this.elements[s][f]-o[s][f])>t.precision)return!1;return!0},dup:function(){return t.create(this.elements)},map:function(a,o){if(this.elements.length===0)return t.create([]);for(var s=[],u=this.elements.length,f=this.elements[0].length,d;u--;)for(d=f,s[u]=[];d--;)s[u][d]=a.call(o,this.elements[u][d],u+1,d+1);return t.create(s)},isSameSizeAs:function(a){var o=a.elements||a;return typeof o[0][0]=="undefined"&&(o=t.create(o).elements),this.elements.length===0?o.length===0:this.elements.length===o.length&&this.elements[0].length===o[0].length},add:function(a){if(this.elements.length===0)return this.map(function(s){return s});var o=a.elements||a;return typeof o[0][0]=="undefined"&&(o=t.create(o).elements),this.isSameSizeAs(o)?this.map(function(s,u,f){return s+o[u-1][f-1]}):null},subtract:function(a){if(this.elements.length===0)return this.map(function(s){return s});var o=a.elements||a;return typeof o[0][0]=="undefined"&&(o=t.create(o).elements),this.isSameSizeAs(o)?this.map(function(s,u,f){return s-o[u-1][f-1]}):null},canMultiplyFromLeft:function(a){if(this.elements.length===0)return!1;var o=a.elements||a;return typeof o[0][0]=="undefined"&&(o=t.create(o).elements),this.elements[0].length===o.length},multiply:function(a){if(this.elements.length===0)return null;if(!a.elements)return this.map(function(k){return k*a});var o=!!a.modulus,s=a.elements||a;if(typeof s[0][0]=="undefined"&&(s=t.create(s).elements),!this.canMultiplyFromLeft(s))return null;for(var u=this.elements.length,f=s[0].length,d,m=this.elements[0].length,g,y=[],v;u--;)for(d=f,y[u]=[];d--;){for(g=m,v=0;g--;)v+=this.elements[u][g]*s[g][d];y[u][d]=v}var s=t.create(y);return o?s.col(1):s},minor:function(a,o,s,u){if(this.elements.length===0)return null;for(var f=[],d=s,m,g,y,v=this.elements.length,k=this.elements[0].length;d--;)for(m=s-d-1,f[m]=[],g=u;g--;)y=u-g-1,f[m][y]=this.elements[(a+m-1)%v][(o+y-1)%k];return t.create(f)},transpose:function(){if(this.elements.length===0)return t.create([]);for(var a=this.elements.length,o,s=this.elements[0].length,u,f=[],o=s;o--;)for(u=a,f[o]=[];u--;)f[o][u]=this.elements[u][o];return t.create(f)},isSquare:function(){var a=this.elements.length===0?0:this.elements[0].length;return this.elements.length===a},max:function(){if(this.elements.length===0)return null;for(var a=0,o=this.elements.length,s=this.elements[0].length,u;o--;)for(u=s;u--;)Math.abs(this.elements[o][u])>Math.abs(a)&&(a=this.elements[o][u]);return a},indexOf:function(a){if(this.elements.length===0)return null;var o=null,s=this.elements.length,u,f=this.elements[0].length,d;for(u=0;ut.precision){o++;break}return o},augment:function(a){if(this.elements.length===0)return this.dup();var o=a.elements||a;typeof o[0][0]=="undefined"&&(o=t.create(o).elements);var s=this.dup(),u=s.elements[0].length,f=s.elements.length,d=o[0].length,m;if(f!==o.length)return null;for(;f--;)for(m=d;m--;)s.elements[f][u+m]=o[f][m];return s},inverse:function(){if(this.elements.length===0||!this.isSquare()||this.isSingular())return null;for(var a=this.elements.length,o=a,s,u=this.augment(t.I(a)).toRightTriangular(),f=u.elements[0].length,d,m,g,y=[],v;o--;){for(m=[],y[o]=[],g=u.elements[o][o],d=0;d=a&&y[o].push(v);for(u.elements[o]=m,s=o;s--;){for(m=[],d=0;d"&&(e="!="),e=="="&&(e="=="),t==null&&a==null)return"#INVERSE!";if(t=="#INVERSE!")t=0,e=="-"?e="+":e=="+"&&(e="-");else if(e=="-"&&t==null)t=0;else if(e=="/"&&(a==0||a==null))return Me.d;function o(u,f,d){if(B(u)&&(u=parseFloat(u)),B(d)&&(d=parseFloat(d)),f=="==")return u==d;if(f=="!=")return u!=d;if(f==">=")return u>=d;if(f=="<=")return u<=d;if(f==">")return u>d;if(f=="<")return u="||e=="<="||e==">"||e=="<")if(P(t)=="array"&&P(a)=="array"){let u=[];if(P(t[0])=="array"&&P(a[0])=="array"){if(t.length!=a.length&&t[0].length!=a[0].length)return Me.na;for(let f=0;f-1){n=e.split(";");for(let t=0;t1){l=t[0].replace(/''/g,"'"),a=t[1],l.substr(0,1)=="'"&&l.substr(l.length-1,1)=="'"&&(l=l.substring(1,l.length-1));for(let u in n)if(l==n[u].name){o=n[u].index,s=n[u].data;break}o==-1&&(o=0)}else{let u=K(h.calculateSheetIndex);l=n[u].name,o=n[u].index,s=n[u].data,a=t[0]}if(a.indexOf(":")==-1){let u=parseInt(a.replace(/[^0-9]/g,""))-1,f=hl(a.replace(/[^A-Za-z]/g,""));if(!isNaN(u)&&!isNaN(f)){let d=ia(s,{row:[u,u],column:[f,f]})[0][0];if(p.execFunctionGlobalData!=null){let v=p.execFunctionGlobalData[u+"_"+f+"_"+o];v!=null&&(d=v)}let y={sheetName:l,startCell:a,rowl:1,coll:1,data:d};return window.luckysheet_getcelldata_cache[e]=y,y}else return[]}else{a=a.split(":");let u=[],f=[];if(u[0]=parseInt(a[0].replace(/[^0-9]/g,""))-1,u[1]=parseInt(a[1].replace(/[^0-9]/g,""))-1,isNaN(u[0])&&(u[0]=0),isNaN(u[1])&&(u[1]=s.length-1),u[0]>u[1])return U.info("\u9009\u62E9\u5931\u8D25","\u8F93\u5165\u8303\u56F4\u9519\u8BEF\uFF01"),[];if(f[0]=hl(a[0].replace(/[^A-Za-z]/g,"")),f[1]=hl(a[1].replace(/[^A-Za-z]/g,"")),isNaN(f[0])&&(f[0]=0),isNaN(f[1])&&(f[1]=s[0].length-1),f[0]>f[1])return U.info("\u9009\u62E9\u5931\u8D25","\u8F93\u5165\u8303\u56F4\u9519\u8BEF\uFF01"),[];let d=ia(s,{row:u,column:f});if(p.execFunctionGlobalData!=null)for(let v=u[0];v<=u[1];v++)for(let k=f[0];k<=f[1];k++){let b=p.execFunctionGlobalData[v+"_"+k+"_"+o];b!=null&&(d[v-u[0]][k-f[0]]=b)}let m=u[1]-u[0]+1,g=f[1]-f[0]+1,y={sheetName:l,startCell:a[0],rowl:m,coll:g,data:d};return window.luckysheet_getcelldata_cache[e]=y,y}}function Za(e){if(typeof e=="object")return e==null?"":Array.isArray(e)?it(e[0])[2]:Array.isArray(e.data)?Me.v:e.data.v===void 0?"":e.data.v;if(p.isCompareOperator(e).flag){if(typeof e=="string"||typeof e=="number")return e}else return it(e)[2];return Me.v}function Gn(){let e=arguments[0];for(let n=0;n=4){if(l=D.getFirstValue(arguments[3]),H(l))return l;if(!B(l))return p.error.v;l=parseInt(l)}var a=arguments[0].coll;if(arguments.length==5){if(a=D.getFirstValue(arguments[4]),H(a))return a;if(!B(a))return p.error.v;a=parseInt(a)}if(l<1||a<1)return p.error.r;var o=p.getcellrange(e),s=o.row[0],u=o.column[0];s+=n,u+=t;var f=s+l-1,d=u+a-1;return s<0||f>=h.flowdata.length||u<0||d>=h.flowdata[0].length?p.error.r:xt(h.calculateSheetIndex,{row:[s,f],column:[u,d]})}function Tc(e,n,t){let l,a;if(e?(a=n,l=t):(l=n,a=t),l.startCell.indexOf(":")>-1||a.indexOf(":")>-1)return Me.v;if(e)return ir(a+":"+l.startCell);{let o=a,s="";if(a.indexOf("!")>-1){let u=a.split("!");s=u[0]+"!",o=u[1]}return ir(s+l.startCell+":"+o)}}var Oi,Bi=$e(()=>{zi();qt();tl();Pt();Zt();Ml();bc();Dt();ht();Xe();Oi=El(sa())});function Ed(e,n,t){let l=e.data;Hd(E2),Bd(F2,null,function(){let a=new Vuex.Store;console.info("chartmix::",chartmix.default),Vue.use(chartmix.default,{store:a});let o=document.getElementsByTagName("body")[0];chartmix.default.initChart(o,h.lang),$(".chartSetting").css({top:"1px",bottom:"1px",position:"absolute",right:"0px",width:"350px",background:"#fff",border:"1px solid #E5E5E5","z-index":1004,"box-shadow":"0px 2px 4px rgba(0,0,0,0.2)","-webkit-box-shadow":"0px 2px 4px rgba(0,0,0,0.2)","-moz-box-shadow":"0px 2px 4px rgba(0,0,0,0.2)","-moz-user-select":"none","-khtml-user-select":"none","-webkit-user-select":"none","-ms-user-select":"none","user-select":"none","padding-left":"30px",display:"none"}),h.createChart=chartmix.default.createChart,h.highlightChart=chartmix.default.highlightChart,h.deleteChart=chartmix.default.deleteChart,h.resizeChart=chartmix.default.resizeChart,h.changeChartRange=chartmix.default.changeChartRange,h.changeChartCellData=chartmix.default.changeChartCellData,h.getChartJson=chartmix.default.getChartJson,h.chart_selection=L2(),h.chartparam.jfrefreshchartall=P2,h.chartparam.changeChartCellData=chartmix.default.changeChartCellData,h.chartparam.renderChart=chartmix.default.renderChart,h.chartparam.getChartJson=chartmix.default.getChartJson,h.chartparam.insertToStore=chartmix.default.insertToStore;for(let s=0;s
${content}
',u;if($(`.luckysheet-cell-main #${o}`).length===0&&(u=$(kc(s,{id:o,addclass:"luckysheet-data-visualization-chart",title:"\u56FE\u8868\u751F\u6210",content:""})).appendTo($(".luckysheet-cell-main"))),!u)return;Nd(u),$(`#${o}`).children(".luckysheet-modal-dialog-content")[0].id=a;let f=document.getElementById(o),d;d=h.chartparam.getChartJson(l.chart_id),h.chartparam.renderChart({chart_id:l.chart_id,chartOptions:d}),h.currentChart=d,Ja(a),$(`#${a}_c .luckysheet-modal-controll-del`).click(function(k){Pd(a)}),$(`#${a}_c .luckysheet-modal-controll-update`).click(function(k){Od()}),$(`#${a}_c`).mouseup(function(k){let b=$(this).css("width"),w=$(this).css("height"),x=$(this).css("top"),C=$(this).css("left"),S=h.luckysheetfile[K(h.currentSheetIndex)];S.chart||(S.chart=[]),S.chart.forEach(_=>{_.chart_id===a&&(_.width=parseFloat(b),_.height=parseFloat(w),_.left=parseFloat(C),_.top=parseFloat(x))})}),u.children(".luckysheet-modal-dialog-content").mousedown(function(k){h.chartparam.luckysheetCurrentChartMaxState||Ja(a),k.stopPropagation()}),u.mousedown(function(k){if(!h.chartparam.luckysheetCurrentChartMaxState){Ja(a),tn(!0),!$(k.target).is(".luckysheet-modal-dialog-controll")&&!$(k.target).is(".luckysheet-modal-controll-btn")&&!$(k.target).is("i")&&(h.chartparam.luckysheetCurrentChartMoveTimeout=setTimeout(function(){h.chartparam.luckysheetCurrentChartMove=!0},100));var b=h.chartparam.luckysheetCurrentChartMoveObj.offset(),w=h.chartparam.luckysheetCurrentChartMoveObj.position();h.chartparam.luckysheetCurrentChartMoveXy=[k.pageX-b.left,k.pageY-b.top,w.left,w.top,$("#luckysheet-scrollbar-x").scrollLeft(),$("#luckysheet-scrollbar-y").scrollTop()],h.chartparam.luckysheetCurrentChartMoveWinH=$("#luckysheet-cell-main")[0].scrollHeight,h.chartparam.luckysheetCurrentChartMoveWinW=$("#luckysheet-cell-main")[0].scrollWidth,!$(k.target).hasClass("luckysheet-mousedown-cancel")&&$(k.target).filter("[class*='sp-palette']").length==0&&$(k.target).filter("[class*='sp-thumb']").length==0&&$(k.target).filter("[class*='sp-']").length==0&&($("#luckysheet-rightclick-menu").hide(),$("#luckysheet-cols-h-hover").hide(),$("#luckysheet-cols-menu-btn").hide(),$("#luckysheet-rightclick-menu").hide(),$("#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu, #luckysheet-user-menu").hide(),$("body > .luckysheet-filter-menu, body > .luckysheet-filter-submenu, body > .luckysheet-cols-menu").hide()),k.stopPropagation()}}).find(".luckysheet-modal-dialog-resize-item").mousedown(function(k){if(h.chartparam.luckysheetCurrentChartActive){h.chartparam.luckysheetCurrentChartResize=$(this).data("type");var b=nt(k.pageX,k.pageY),w=$("#luckysheet-scrollbar-x").scrollLeft(),x=$("#luckysheet-scrollbar-y").scrollTop(),C=b[0]+w,S=b[1]+x,_=h.chartparam.luckysheetCurrentChartResizeObj.position();h.chartparam.luckysheetCurrentChartResizeXy=[C,S,u.width(),u.height(),_.left+w,_.top+x,w,x],h.chartparam.luckysheetCurrentChartResizeWinH=$("#luckysheet-cell-main")[0].scrollHeight,h.chartparam.luckysheetCurrentChartResizeWinW=$("#luckysheet-cell-main")[0].scrollWidth,h.chartparam.luckysheetCurrentChart=a,k.stopPropagation()}});let m=l.width,g=l.height,y=l.left,v=l.top;f.style.width=m+"px",f.style.height=g+"px",f.style.position="absolute",f.style.background="#fff",f.style.left=y+"px",f.style.top=v+"px",f.style.zIndex=h.zIndex?h.zIndex:15,h.zIndex++}}function P2(e,n,t,l,a){let o=h.luckysheetfile.find(u=>u.index==h.currentSheetIndex),s=o.chart;s&&s.forEach(u=>{var f=ir(o.name+"!"+u.chartOptions.rangeTxt);if(typeof f=="object"&&f.length!=0&&f.data.length!=null){var d=f.data;h.chartparam.changeChartCellData(u.chart_id,d)}})}function L2(){return{create:function(){var e=h.currentChart;if(e.rangeArray.length>1)return;$("#luckysheet-chart-rangeShow").empty(),$("#luckysheet-cell-selected-boxs").hide(),$("#luckysheet-cell-selected-focus").hide(),$("#luckysheet-rows-h-selected").empty(),$("#luckysheet-cols-h-selected").empty(),$("#luckysheet-row-count-show").hide(),$("#luckysheet-column-count-show").hide();var n=e.rangeArray[0].row[0],t=e.rangeArray[0].column[0],l=e.rangeSplitArray,a=e.rangeRowCheck;if(a.exits)var o=d("rowtitle",l.rowtitle.row[0]+n,l.rowtitle.row[1]+n,l.rowtitle.column[0]+t,l.rowtitle.column[1]+t);else var o="";var s=e.rangeColCheck;if(s.exits)var u=d("coltitle",l.coltitle.row[0]+n,l.coltitle.row[1]+n,l.coltitle.column[0]+t,l.coltitle.column[1]+t);else var u="";var f=d("content",l.content.row[0]+n,l.content.row[1]+n,l.content.column[0]+t,l.content.column[1]+t);$("#luckysheet-chart-rangeShow").append(o+u+f);function d(m,g,y,v,k){var b=Ki(),w=Zi(),x=b[y],C=g-1==-1?0:b[g-1],S=w[k],_=v-1==-1?0:w[v-1];if(m=="rowtitle")var T="#C65151";if(m=="coltitle")var T="#9667C0";if(m=="content")var T="#4970D1";var A='
';return A}},rangeMove:!1,rangeMovexy:null,rangeMoveIndex:null,rangeMoveObj:null,rangeMoveDraging:function(e,n,t){var l=h.currentChart,a=l.rangeArray[0].row[0],o=l.rangeArray[0].column[0],s=l.rangeRowCheck,u=l.rangeColCheck,f=l.rangeSplitArray,d=nt(e.pageX,e.pageY),m=$("#luckysheet-cell-main").scrollLeft(),g=$("#luckysheet-cell-main").scrollTop(),y=d[0]+m,v=d[1]+g,k=$(window).height()+g-n-t,b=$(window).width()+m,w=Md(v),x=w[2],C=Fd(y),S=C[2],_=Ki(),T=Zi(),A=h.chart_selection.rangeMoveObj.attr("id");if(A=="luckysheet-chart-rangeShow-content"){var R=h.chart_selection.rangeMoveIndex[0]-h.chart_selection.rangeMovexy[0]+x;s.exits?(R=_.length-1||v>k)&&(R=_.length-1-f.content.row[1]+f.content.row[0],I=_.length-1);var N=h.chart_selection.rangeMoveIndex[1]-h.chart_selection.rangeMovexy[1]+S;u.exits?(N=T.length-1||y>b)&&(N=T.length-1-f.content.column[1]+f.content.column[0],L=T.length-1),s.exits&&u.exits?(l.rangeArray=[{row:[a,I],column:[o,L]}],l.rangeSplitArray.range={row:[a,I],column:[o,L]},l.rangeSplitArray.content={row:[R-a,I-a],column:[N-o,L-o]},l.rangeSplitArray.rowtitle={row:l.rangeSplitArray.rowtitle.row,column:[N-o,L-o]},l.rangeSplitArray.coltitle={row:[R-a,I-a],column:l.rangeSplitArray.coltitle.column}):s.exits?(l.rangeArray=[{row:[a,I],column:[N,L]}],l.rangeSplitArray.range={row:[a,I],column:[N,L]},l.rangeSplitArray.content={row:[R-a,I-a],column:l.rangeSplitArray.content.column}):u.exits?(l.rangeArray=[{row:[R,I],column:[o,L]}],l.rangeSplitArray.range={row:[R,I],column:[o,L]},l.rangeSplitArray.content={row:l.rangeSplitArray.content.row,column:[N-o,L-o]}):(l.rangeArray=[{row:[R,I],column:[N,L]}],l.rangeSplitArray.range={row:[R,I],column:[N,L]})}else if(A=="luckysheet-chart-rangeShow-rowtitle"){var N=h.chart_selection.rangeMoveIndex[1]-h.chart_selection.rangeMovexy[1]+S;u.exits?(N=T.length-1||y>b)&&(N=T.length-1-f.rowtitle.column[1]+f.rowtitle.column[0],L=T.length-1),u.exits?(l.rangeArray=[{row:l.rangeArray[0].row,column:[o,L]}],l.rangeSplitArray.range={row:l.rangeArray[0].row,column:[o,L]},l.rangeSplitArray.rowtitle={row:l.rangeSplitArray.rowtitle.row,column:[N-o,L-o]},l.rangeSplitArray.content={row:l.rangeSplitArray.content.row,column:[N-o,L-o]}):(l.rangeArray=[{row:l.rangeArray[0].row,column:[N,L]}],l.rangeSplitArray.range={row:l.rangeArray[0].row,column:[N,L]})}else if(A=="luckysheet-chart-rangeShow-coltitle"){var R=h.chart_selection.rangeMoveIndex[0]-h.chart_selection.rangeMovexy[0]+x;s.exits?(R=_.length-1||v>k)&&(R=_.length-1-f.coltitle.row[1]+f.coltitle.row[0],I=_.length-1),s.exits?(l.rangeArray=[{row:[a,I],column:l.rangeArray[0].column}],l.rangeSplitArray.range={row:[a,I],column:l.rangeArray[0].column},l.rangeSplitArray.coltitle={row:[R-a,I-a],column:l.rangeSplitArray.coltitle.column},l.rangeSplitArray.content={row:[R-a,I-a],column:l.rangeSplitArray.content.column}):(l.rangeArray=[{row:[R,I],column:l.rangeArray[0].column}],l.rangeSplitArray.range={row:[R,I],column:l.rangeArray[0].column})}h.chart_selection.create()},rangeMoveDragged:function(){h.chart_selection.rangeMove=!1;var e=h.currentChart;e.rangeTxt=xt(h.currentSheetIndex,e.rangeArray[0],h.currentSheetIndex),e.chartData=zt(e.rangeArray[0],h.currentSheetIndex),h.changeChartRange(e.chart_id,e.chartData,e.rangeArray,e.rangeTxt)},rangeResize:!1,rangeResizexy:null,rangeResizeIndex:null,rangeResizeObj:null,rangeResizeDraging:function(e,n,t){var l=h.currentChart,a=l.rangeArray[0].row[0],o=l.rangeArray[0].column[0],s=l.rangeRowCheck,u=l.rangeColCheck,f=l.rangeSplitArray,d=nt(e.pageX,e.pageY),m=$("#luckysheet-cell-main").scrollLeft(),g=$("#luckysheet-cell-main").scrollTop(),y=d[0]+m,v=d[1]+g,k=$(window).height()+g-n-t,b=$(window).width()+m,w=Md(v),x=w[2],C=Fd(y),S=C[2],_=Ki(),T=Zi(),A=h.chart_selection.rangeResizeObj.attr("id");if(A=="luckysheet-chart-rangeShow-content"){var R,I,N,L;if(h.chart_selection.rangeResize=="lt"?(R=h.chart_selection.rangeResizeIndex.row[0],N=h.chart_selection.rangeResizeIndex.column[0],I=h.chart_selection.rangeResizeIndex.row[1],L=h.chart_selection.rangeResizeIndex.column[1]):h.chart_selection.rangeResize=="lb"?(R=h.chart_selection.rangeResizeIndex.row[1],N=h.chart_selection.rangeResizeIndex.column[0],I=h.chart_selection.rangeResizeIndex.row[0],L=h.chart_selection.rangeResizeIndex.column[1]):h.chart_selection.rangeResize=="rt"?(R=h.chart_selection.rangeResizeIndex.row[0],N=h.chart_selection.rangeResizeIndex.column[1],I=h.chart_selection.rangeResizeIndex.row[1],L=h.chart_selection.rangeResizeIndex.column[0]):h.chart_selection.rangeResize=="rb"&&(R=h.chart_selection.rangeResizeIndex.row[1],N=h.chart_selection.rangeResizeIndex.column[1],I=h.chart_selection.rangeResizeIndex.row[0],L=h.chart_selection.rangeResizeIndex.column[0]),s.exits){var M=R-h.chart_selection.rangeResizexy[0]+x;M=_.length-1||v>k)&&(M=_.length-1)}else{var M=a-h.chart_selection.rangeResizexy[0]+x;M<0||v<0?M=0:(M>=_.length-1||v>k)&&(M=_.length-1)}if(u.exits){var F=N-h.chart_selection.rangeResizexy[1]+S;F=T.length-1||y>b)&&(F=T.length-1)}else{var F=o-h.chart_selection.rangeResizexy[1]+S;F<0||y<0?F=0:(F>=T.length-1||y>b)&&(F=T.length-1)}var E,z,O,V;M>I?(E=I,z=M):(E=M,z=I),F>L?(O=L,V=F):(O=F,V=L),!s.exits&&!u.exits?(l.rangeArray=[{row:[E,z],column:[O,V]}],l.rangeSplitArray.range={row:[E,z],column:[O,V]}):(l.rangeArray=[{row:[a,z],column:[o,V]}],l.rangeSplitArray.range={row:[a,z],column:[o,V]},l.rangeSplitArray.content={row:[E-a,z-a],column:[O-o,V-o]},s.exits&&(l.rangeSplitArray.rowtitle={row:l.rangeSplitArray.rowtitle.row,column:[O-o,V-o]}),u.exits&&(l.rangeSplitArray.coltitle={row:[E-a,z-a],column:l.rangeSplitArray.coltitle.column}))}else if(A=="luckysheet-chart-rangeShow-rowtitle"){var N,L;if(h.chart_selection.rangeResize=="lt"||h.chart_selection.rangeResize=="lb"?(N=h.chart_selection.rangeResizeIndex.column[0],L=h.chart_selection.rangeResizeIndex.column[1]):(h.chart_selection.rangeResize=="rt"||h.chart_selection.rangeResize=="rb")&&(N=h.chart_selection.rangeResizeIndex.column[1],L=h.chart_selection.rangeResizeIndex.column[0]),u.exits){var F=N-h.chart_selection.rangeResizexy[1]+S;F=T.length-1||y>b)&&(F=T.length-1)}else{var F=o-h.chart_selection.rangeResizexy[1]+S;F<0||y<0?F=0:(F>=T.length-1||y>b)&&(F=T.length-1)}var O,V;F>L?(O=L,V=F):(O=F,V=L),u.exits?(l.rangeArray=[{row:l.rangeArray[0].row,column:[o,V]}],l.rangeSplitArray.range={row:l.rangeArray[0].row,column:[o,V]},l.rangeSplitArray.rowtitle={row:l.rangeSplitArray.rowtitle.row,column:[O-o,V-o]},l.rangeSplitArray.content={row:l.rangeSplitArray.content.row,column:[O-o,V-o]}):(l.rangeArray=[{row:l.rangeArray[0].row,column:[O,V]}],l.rangeSplitArray.range={row:l.rangeArray[0].row,column:[O,V]})}else if(A=="luckysheet-chart-rangeShow-coltitle"){var R,I;if(h.chart_selection.rangeResize=="lt"||h.chart_selection.rangeResize=="rt"?(R=h.chart_selection.rangeResizeIndex.row[0],I=h.chart_selection.rangeResizeIndex.row[1]):(h.chart_selection.rangeResize=="lb"||h.chart_selection.rangeResize=="rb")&&(R=h.chart_selection.rangeResizeIndex.row[1],I=h.chart_selection.rangeResizeIndex.row[0]),s.exits){var M=R-h.chart_selection.rangeResizexy[0]+x;M=_.length-1||v>k)&&(M=_.length-1)}else{var M=a-h.chart_selection.rangeResizexy[0]+x;M<0||v<0?M=0:(M>=_.length-1||v>k)&&(M=_.length-1)}var E,z;M>I?(E=I,z=M):(E=M,z=I),s.exits?(l.rangeArray=[{row:[a,z],column:l.rangeArray[0].column}],l.rangeSplitArray.range={row:[a,z],column:l.rangeArray[0].column},l.rangeSplitArray.coltitle={row:[E-a,z-a],column:l.rangeSplitArray.coltitle.column},l.rangeSplitArray.content={row:[E-a,z-a],column:l.rangeSplitArray.content.column}):(l.rangeArray=[{row:[E,z],column:l.rangeArray[0].column}],l.rangeSplitArray.range={row:[E,z],column:l.rangeArray[0].column})}h.chart_selection.create()},rangeResizeDragged:function(){h.chart_selection.rangeResize=null;var e=h.currentChart;e.rangeTxt=xt(h.currentSheetIndex,e.rangeArray[0],h.currentSheetIndex),e.chartData=zt(e.rangeArray[0],h.currentSheetIndex),h.changeChartRange(e.chart_id,e.chartData,e.rangeArray,e.rangeTxt)}}}function Sc(e,n,t,l){var a=luckysheet.getluckysheet_select_save();a.length==1&&a[0].row[0]==a[0].row[1]&&a[0].column[0]==a[0].column[1]&&(sn("right","rangeOfSelect"),sn("down","rangeOfSelect"),a=luckysheet.getluckysheet_select_save());for(var o=-1,s=a[0].row[1]-a[0].row[0],u=a[0].row[0];u<=a[0].row[1];u++){for(var f=a[0].column[0];f<=a[0].column[1];f++){var d=ze(u,f,luckysheet.flowdata());if(d!=null&&d.toString().length>0){o=u;break}}if(o!==-1)break}o==-1&&(o=0),a[0].row=[o,o],a[0].row_focus=o,luckysheet.setluckysheet_select_save(a),h.luckysheet_shiftpositon=$.extend(!0,{},a[0]),Oa("down","range",!1,s),a=luckysheet.getluckysheet_select_save();for(var m=-1,g=a[0].column[1]-a[0].column[0],f=a[0].column[0];f<=a[0].column[1];f++){for(var u=a[0].row[0];u<=a[0].row[1];u++){var d=ze(u,f,luckysheet.flowdata());if(d!=null&&d.toString().length>0){m=f;break}}if(m!==-1)break}m==-1&&(m=0),a[0].column=[m,m],a[0].column_focus=m,luckysheet.setluckysheet_select_save(a),h.luckysheet_shiftpositon=$.extend(!0,{},a[0]),Oa("right","range",!1,g),a=luckysheet.getluckysheet_select_save();var y=$.extend(!0,[],a),v=xt(h.currentSheetIndex,y[0],h.currentSheetIndex);let k=zt();console.dir(k);let b=Rd("chart"),w=b+"_c",x='',C=$(kc(x,{id:w,addclass:"luckysheet-data-visualization-chart",title:"\u56FE\u8868\u751F\u6210",content:""})).appendTo($(".luckysheet-cell-main")),S=document.getElementById(w),{render:_,chart_json:T}=h.createChart($(`#${w}`).children(".luckysheet-modal-dialog-content")[0],k,b,y,v);e=e||400,n=n||250,t=t||0,l=l||0,S.style.width=e+"px",S.style.height=n+"px",S.style.position="absolute",S.style.background="#fff",S.style.left=t+"px",S.style.top=l+"px",_.style.width="100%",_.style.height="100%",S.style.zIndex=h.zIndex?h.zIndex:15,h.zIndex++;let A=h.luckysheetfile[K(h.currentSheetIndex)];A.chart||(A.chart=[]),A.chart.push({chart_id:b,width:e,height:n,left:t,top:l,chartOptions:T.chartOptions,sheetIndex:A.index}),Ja(b),$(`#${b}_c .luckysheet-modal-controll-del`).click(function(R){Pd(b)}),Nd(C),$(`#${b}_c .luckysheet-modal-controll-update`).click(function(R){Od()}),C.children(".luckysheet-modal-dialog-content").mousedown(function(R){h.chartparam.luckysheetCurrentChartMaxState||Ja(b),R.stopPropagation()}),C.mousedown(function(R){if(!h.chartparam.luckysheetCurrentChartMaxState){Ja(b),tn(!0),!$(R.target).is(".luckysheet-modal-dialog-controll")&&!$(R.target).is(".luckysheet-modal-controll-btn")&&!$(R.target).is("i")&&(h.chartparam.luckysheetCurrentChartMoveTimeout=setTimeout(function(){h.chartparam.luckysheetCurrentChartMove=!0},100));var I=h.chartparam.luckysheetCurrentChartMoveObj.offset(),N=h.chartparam.luckysheetCurrentChartMoveObj.position();h.chartparam.luckysheetCurrentChartMoveXy=[R.pageX-I.left,R.pageY-I.top,N.left,N.top,$("#luckysheet-scrollbar-x").scrollLeft(),$("#luckysheet-scrollbar-y").scrollTop()],h.chartparam.luckysheetCurrentChartMoveWinH=$("#luckysheet-cell-main")[0].scrollHeight,h.chartparam.luckysheetCurrentChartMoveWinW=$("#luckysheet-cell-main")[0].scrollWidth,!$(R.target).hasClass("luckysheet-mousedown-cancel")&&$(R.target).filter("[class*='sp-palette']").length==0&&$(R.target).filter("[class*='sp-thumb']").length==0&&$(R.target).filter("[class*='sp-']").length==0&&($("#luckysheet-rightclick-menu").hide(),$("#luckysheet-cols-h-hover").hide(),$("#luckysheet-cols-menu-btn").hide(),$("#luckysheet-rightclick-menu").hide(),$("#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu, #luckysheet-user-menu").hide(),$("body > .luckysheet-filter-menu, body > .luckysheet-filter-submenu, body > .luckysheet-cols-menu").hide()),R.stopPropagation()}}).find(".luckysheet-modal-dialog-resize-item").mousedown(function(R){if(h.chartparam.luckysheetCurrentChartActive){h.chartparam.luckysheetCurrentChartResize=$(this).data("type");var I=nt(R.pageX,R.pageY),N=$("#luckysheet-scrollbar-x").scrollLeft(),L=$("#luckysheet-scrollbar-y").scrollTop(),M=I[0]+N,F=I[1]+L,E=h.chartparam.luckysheetCurrentChartResizeObj.position();h.chartparam.luckysheetCurrentChartResizeXy=[M,F,C.width(),C.height(),E.left+N,E.top+L,N,L],h.chartparam.luckysheetCurrentChartResizeWinH=$("#luckysheet-cell-main")[0].scrollHeight,h.chartparam.luckysheetCurrentChartResizeWinW=$("#luckysheet-cell-main")[0].scrollWidth,h.chartparam.luckysheetCurrentChart=b,R.stopPropagation()}}),$(`#${b}_c`).mouseup(function(R){let I=$(this).css("width"),N=$(this).css("height"),L=$(this).css("top"),M=$(this).css("left"),F=h.luckysheetfile[K(h.currentSheetIndex)];F.chart||(F.chart=[]),F.chart.forEach(E=>{E.chart_id===b&&(E.width=parseFloat(I),E.height=parseFloat(N),E.left=parseFloat(M),E.top=parseFloat(L))})})}function Nd(e){e.find(".luckysheet-modal-dialog-content").hover(function(){e.removeClass("chart-moveable")},function(){e.addClass("chart-moveable")}),e.hover(function(){e.addClass("chart-moveable")},function(){e.removeClass("chart-moveable")})}function Pd(e){$(`.luckysheet-cell-main #${e}_c`).remove(),$c();let n=h.luckysheetfile[K(h.currentSheetIndex)],t=n.chart.findIndex(l=>l.chart_id==e);n.chart.splice(t,1),h.deleteChart(e)}function Ja(e){let n=h.luckysheetfile[K(h.currentSheetIndex)].chart;for(let t in n)n[t].needRangeShow=!1,n[t].chart_id==e&&(n[t].needRangeShow=!0,h.currentChart=h.getChartJson(e));Ld(e)}function $c(){let e=h.luckysheetfile[K(h.currentSheetIndex)].chart;for(let n in e)e[n].needRangeShow=!1;zd()}function Ld(e){let n=$("#"+e+"_c");h.chart_selection.create(),h.chartparam.luckysheetCurrentChartActive=!0,h.chartparam.luckysheetCurrentChartMoveObj=n,h.chartparam.luckysheetCurrentChartResizeObj=n,h.chartparam.luckysheetCurrentChart=e,$("#luckysheet-cell-main").find(".luckysheet-modal-dialog-chart .luckysheet-modal-dialog-resize").hide(),$("#luckysheet-cell-main").find(".luckysheet-modal-dialog-chart .luckysheet-modal-dialog-controll").hide(),n.css("z-index",h.chartparam.luckysheetCurrentChartZIndexRank++),n.find(".luckysheet-modal-dialog-resize").show(),n.find(".luckysheet-modal-dialog-controll").show(),($(".chartSetting").is(":visible")||h.chartparam.luckysheet_chart_redo_click)&&e!=h.chartparam.luckysheetCurrentChart&&$("body .luckysheet-cols-menu").hide(),h.currentChart=h.highlightChart(e)}function zd(e){$("#luckysheet-cell-main .luckysheet-modal-dialog-chart .luckysheet-modal-dialog-resize, #luckysheet-cell-main .luckysheet-modal-dialog-chart .luckysheet-modal-dialog-controll").hide(),$("#luckysheet-cell-main").find(".luckysheet-datavisual-selection-set div").remove(),h.chartparam.luckysheetCurrentChartActive=!1,$("#luckysheet-chart-rangeShow").empty(),!e&&$(".chartSetting").is(":visible")&&!fe()&&z2()}function Od(e,n){$(".chartSetting").is(":visible")||($(".chartSetting").show(),$("#luckysheet-cell-main").find(".luckysheet-datavisual-selection-set div").show(),h.chartparam.luckysheetCurrentChartActive=!0,setTimeout(function(){$t()},0))}function z2(e){$(".chartSetting").is(":visible")&&($(".chartSetting").hide(),$("#luckysheet-cell-main .luckysheet-modal-dialog-chart .luckysheet-modal-dialog-resize, #luckysheet-cell-main .luckysheet-modal-dialog-chart .luckysheet-modal-dialog-controll").hide(),$("#luckysheet-cell-main").find(".luckysheet-datavisual-selection-set div").remove(),h.chartparam.luckysheetCurrentChartActive=!1,!fe()&&!e&&setTimeout(function(){$t()},0))}function Ic(e){zd("true"),h.luckysheetfile.forEach(t=>{t.index==e?(t.chart||[]).forEach(a=>{a.isShow=!0,$("#"+a.chart_id+"_c").show(),h.resizeChart(a.chart_id),a.needRangeShow==!0&&(h.currentChart=h.getChartJson(a.chart_id),Ld(a.chart_id))}):(t.chart||[]).forEach(a=>{a.isShow=!1,$("#"+a.chart_id+"_c").hide()})})}var Md,Fd,F2,E2,Ro=$e(()=>{ht();Ad();Zt();Xe();qt();Bi();Dt();Zl();Rn();Ba();Pt();nr();Xe();Md=_t,Fd=wt,F2=["https://unpkg.com/vue@2.6.11/dist/vue.min.js","https://unpkg.com/vuex@3.4.0/dist/vuex.min.js","https://unpkg.com/element-ui@2.13.2/lib/index.js","https://unpkg.com/echarts@4.8.0/dist/echarts.min.js","./expendPlugins/chart/chartmix.umd.min.js"],E2=["https://unpkg.com/element-ui@2.13.2/lib/theme-chalk/index.css","./expendPlugins/chart/chartmix.css"]});function ka(e){h.flowdata==null||h.flowdata.length==0||(clearTimeout(Vd),Vd=setTimeout(()=>{h.clearjfundo&&h.jfredo.push({type:"zoomChange",zoomRatio:h.zoomRatio,curZoomRatio:e,sheetIndex:h.currentSheetIndex}),Xr=null,h.zoomRatio=e;let n=ve.getSheetByIndex();He.buildAllPs(n.data),Ie.images=n.images,Ie.allImagesShow(),Ie.init(),n.config==null&&(n.config={}),n.config.sheetViewZoom==null&&(n.config.sheetViewZoom={});let t=n.config.curentsheetView;t==null&&(t="viewNormal"),n.config.sheetViewZoom[t+"ZoomScale"]=e,ne.saveParam("all",h.currentSheetIndex,h.zoomRatio,{k:"zoomRatio"}),ne.saveParam("cg",h.currentSheetIndex,n.config.sheetViewZoom,{k:"sheetViewZoom"}),Qa()},100))}function Qa(){St(h.flowdata.length,h.flowdata[0].length),Qs()}function qd(){let e=.02,n=.1,t=4,l=.1;$("#luckysheet-zoom-minus").click(function(){let a;h.zoomRatio==null?a=h.zoomRatio=1:a=Math.ceil(h.zoomRatio*10)/10,a=a-n,a==h.zoomRatio&&(a=a-n),a<=l&&(a=l),ka(a),or(a)}),$("#luckysheet-zoom-plus").click(function(){let a;h.zoomRatio==null?a=h.zoomRatio=1:a=Math.floor(h.zoomRatio*10)/10,a=a+n,a==h.zoomRatio&&(a=a+n),a>=t&&(a=t),ka(a),or(a)}),$("#luckysheet-zoom-slider").mousedown(function(a){let o=$(this).offset().left,s=a.pageX,u=jd(s-o);ka(u),or(u)}),$("#luckysheet-zoom-cursor").mousedown(function(a){let o=a.pageX,s=parseFloat($("#luckysheet-zoom-cursor").css("left"));$("#luckysheet-zoom-cursor").css("transition","none"),$(document).off("mousemove.zoomCursor").on("mousemove.zoomCursor",function(u){let d=u.pageX-o,m=s+d,g=jd(m);g>t&&(g=t,m=100),g=t?Xr=t:Xr=t?s=t:s50&&(n=Math.round(((e-50)*6/100+1)*100)/100),n}function O2(e){let n=50;e<1?n=Math.round((e-.1)*100/.18)/10:e>1&&(n=Math.round((e-1)*100/.6)/10+50),$("#luckysheet-zoom-cursor").css("left",n-4)}function or(e){let n=Math.round(e*100)+"%";$("#luckysheet-zoom-ratioText").html(n),O2(e)}var Vd,Xr,Hi=$e(()=>{Xe();vt();ht();gl();nr();Xt();ll();Gr();jr();Vd=null;Xr=null});var B2,ve,gl=$e(()=>{Pt();qr();Zt();gr();Id();tl();qt();Xt();Ri();Qt();fa();Pt();ht();Wt();ll();Sl();cn();nr();Gr();jr();vr();Wa();Vl();wn();Jt();Xe();vt();Ro();nr();Hi();ol();zl();_l();qt();B2={generateRandomSheetIndex:function(e){e==null&&(e="Sheet");let n=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split(""),t="";for(let a=0;a<12;a++)t+=n[Math.round(Math.random()*(n.length-1))];let l=new Date().getTime();return e+"_"+t+"_"+l},generateRandomSheetName:function(e,n){let t=e.length,a=Q().pivotTable.title;for(let o=0;o-1||e[o].name.indexOf(a)>-1){let s=parseFloat(e[o].name.replace("Sheet","").replace(a,""));s!="NaN"&&Math.ceil(s)>t&&(t=Math.ceil(s))}return n?a+(t+1):"Sheet"+(t+1)},generateCopySheetName:function(e,n){let l=Q().info,a="("+l.copy,o=n.toString().indexOf(a);~o&&(n=n.toString().substring(0,o));let s="",u=n+a,f=[];for(let m=0;m=s&&(s=parseInt(k)+1)}}let d;do{let m=a+s+")",g=31-m.length;d=n,d.length>g&&(d=d.slice(0,g-1)+"\u2026"),d=d+m}while(~f.indexOf(d)&&(s=(s||1)+1));return d},getSheetByIndex:function(e){let n=this;e==null&&(e=h.currentSheetIndex);let t=n.getSheetIndex(e);return h.luckysheetfile[t]},getSheetByName:function(e){let n=this;if(e==null)return null;for(let t=0;t{typeof t.index=="undefined"&&(t.index=this.generateRandomSheetIndex()),n.includes(t.index)?t.index=this.generateRandomSheetIndex():n.push(t.index),typeof t.status=="undefined"&&(t.status=0),t.status==1&&(e?t.status=0:e=!0)}),e||(h.luckysheetfile[0].status=1)}h.currentSheetIndex=h.luckysheetfile[0].index;for(let e=0;e'),nl(e),ne.saveParam("sha",null,$.extend(!0,{},s)),h.clearjfundo){h.jfundo.length=0;let f={};f.type="addSheet",f.sheetconfig=$.extend(!0,{},s),f.index=a,f.currentSheetIndex=h.currentSheetIndex,h.jfredo.push(f)}t.changeSheetExec(a,n,!0)},setSheetHide:function(e,n){let t=this,l=t.getSheetIndex(e);if(!n&&!Je.createHookFunction("sheetHideBefore",{sheet:h.luckysheetfile[l]}))return;h.luckysheetfile[l].hide=1;let a=$("#luckysheet-sheets-item"+e);a.hide(),$("#luckysheet-sheet-area div.luckysheet-sheets-item").removeClass("luckysheet-sheets-item-active");let o;if(me.showsheetbarConfig.sheet)o=a.nextAll(":visible"),a.nextAll(":visible").length>0?o=o.eq(0).data("index"):o=a.prevAll(":visible").eq(0).data("index");else{let s,u=[];h.luckysheetfile.forEach((d,m)=>{d.hide!==1&&u.push(m)});let f=u.length;f===1?s=u[0]:s=u[f-1]>l?u.find(d=>d>l):u[f-1],o=h.luckysheetfile[s].index}$("#luckysheet-sheets-item"+o).addClass("luckysheet-sheets-item-active"),t.changeSheetExec(o),t.locationSheet(),ne.saveParam("sh",a.data("index"),1,{op:"hide",cur:o}),n||Je.createHookFunction("sheetHideAfter",{sheet:h.luckysheetfile[l]})},setSheetShow:function(e){let n=this,t=h.luckysheetfile[n.getSheetIndex(e)];!Je.createHookFunction("sheetShowBefore",{sheet:t})||(t.hide=0,n.changeSheetExec(e),ne.saveParam("sh",e,0,{op:"show",cur:null}),Je.createHookFunction("sheetShowAfter",{sheet:t}))},sheetMaxIndex:0,ordersheet:function(e){return function(n,t){let l=n[e],a=t[e];return l-a}},getCurrentOrder:function(){let e={};return $("#luckysheet-sheet-area div.luckysheet-sheets-item").each(function(n){let t=$(this).data("index");for(let l=0;l{let l=n.order,a=t.order;return l!=null&&a!=null?l-a:l!=null?-1:(a!=null,1)})},createSheet:function(){let e=this,n=[];h.luckysheetfile.sort(e.ordersheet("order"));for(let t=0;t'),h.currentSheetIndex==a?n.push(_e(Ql,{index:a,active:"luckysheet-sheets-item-active",name:h.luckysheetfile[t].name,style:"",colorset:o})):(h.luckysheetfile[t].hide==1?n.push(_e(Ql,{index:a,active:"",name:h.luckysheetfile[t].name,style:"display:none;",colorset:o})):n.push(_e(Ql,{index:a,active:"",name:h.luckysheetfile[t].name,style:"",colorset:o})),l="style='display:none;'"),$("#luckysheet-cell-main").append("
')}$("#luckysheet-sheet-container-c").append(n.join("")),e.locationSheet()},locationSheet:function(){let e=$("#luckysheet-sheet-container-c"),n=$("#"+h.container).width(),t=$("#luckysheet-sheet-container-c > div.luckysheet-sheets-item-active").eq(0),l=0,a=0;$("#luckysheet-sheet-container-c > div.luckysheet-sheets-item:visible").each(function(){$(this).hasClass("luckysheet-sheets-item-active")&&(l=a),a+=$(this).outerWidth()}),setTimeout(function(){e.scrollLeft(l-10),me.showsheetbarConfig.sheet&&(a>=n*.7?($("#luckysheet-sheet-area .luckysheet-sheets-scroll").css("display","inline-block"),$("#luckysheet-sheet-container .docs-sheet-fade-left").show()):($("#luckysheet-sheet-area .luckysheet-sheets-scroll").css("display","none"),$("#luckysheet-sheet-container .docs-sheet-fade-left").hide()))},1)},copySheet:function(e,n){if(fe()||h.allowEdit===!1)return;let t=this,l=h.luckysheetfile.length,a=t.generateRandomSheetIndex(),o=t.getSheetIndex(e),s=$.extend(!0,{},h.luckysheetfile[o]);if(s.order=l,s.index=a,s.name=t.generateCopySheetName(h.luckysheetfile,s.name),!Je.createHookFunction("sheetCopyBefore",{targetSheet:h.luckysheetfile[o],copySheet:s}))return;let u="";s.color!=null&&(u='
');let f=$("#luckysheet-sheets-item"+e);if($("#luckysheet-sheet-container-c").append(_e(Ql,{index:s.index,active:"",name:s.name,order:s.order,style:"",colorset:u})),$("#luckysheet-sheets-item"+s.index).insertAfter(f),h.luckysheetfile.splice(o+1,0,s),$("#luckysheet-sheet-area div.luckysheet-sheets-item").removeClass("luckysheet-sheets-item-active"),$("#luckysheet-sheets-item"+a).addClass("luckysheet-sheets-item-active"),$("#luckysheet-cell-main").append('
'),nl(n),ne.saveParam("shc",a,{copyindex:e,name:s.name}),t.changeSheetExec(a,void 0,void 0,!0),t.reOrderAllSheet(),h.clearjfundo)h.jfredo.push({type:"copySheet",copyindex:e,index:s.index,sheetIndex:s.index});else if(h.jfredo.length>0){let d=h.jfredo[h.jfredo.length-1];d.type=="copySheet"&&(d.index=s.index,d.sheetIndex=s.index)}},hasSheet:function(e){return!(e==null||(e=this.getSheetIndex(e),e==null))},createSheetbydata:function(e,n,t=!0){let l=this,a="";if(e.color!=null&&(a='
'),$("#luckysheet-sheet-container-c").append(_e(Ql,{index:e.index,active:"",name:e.name,order:e.order,style:"",colorset:a})),t){let o=e.order;o>=h.luckysheetfile.length?(o=h.luckysheetfile.length-1,$("#luckysheet-sheets-item"+e.index).insertAfter($("#luckysheet-sheets-item"+h.luckysheetfile[o].index))):$("#luckysheet-sheets-item"+e.index).insertBefore($("#luckysheet-sheets-item"+h.luckysheetfile[o].index))}h.luckysheetfile.push(e),$("#luckysheet-sheet-area div.luckysheet-sheets-item").removeClass("luckysheet-sheets-item-active"),$("#luckysheet-sheets-item"+e.index).addClass("luckysheet-sheets-item-active"),$("#luckysheet-cell-main").append('
'),nl(),n!=null?(ne.saveParam("shre",null,{reIndex:e.index}),e.hide=0,ne.saveParam("sh",e.index,0,{op:"show",cur:null})):ne.saveParam("sha",null,e),l.changeSheetExec(e.index,e.isPivotTable,!0),l.reOrderAllSheet()},deleteSheet:function(e){let n=this;if(h.allowEdit===!1)return;let t=n.getSheetIndex(e),l=h.luckysheetfile[t];if(!Je.createHookFunction("sheetDeleteBefore",{sheet:l}))return;n.setSheetHide(e,!0),$("#luckysheet-sheets-item"+e).remove(),$("#luckysheet-datavisual-selection-set-"+e).remove();let a=h.luckysheetfile.splice(t,1);n.reOrderAllSheet(),ne.saveParam("shd",null,{deleIndex:e}),h.clearjfundo&&(a[0].type="deleteSheet",h.jfredo.push(a[0])),Je.createHookFunction("sheetDeleteAfter",{sheet:l})},nulldata:null,getGridData:function(e){let n=[];for(let t=0;t0?e.data:Vt([],n,t),a=e.celldata;if(e.data&&e.data.length>0)for(let o=0;o0)for(let o=0;o=l.length&&(l=Vt(l,u-l.length+1,0)),f>=l[0].length&&(l=Vt(l,0,f-l[0].length+1)),Ft(u,f,l,d)}return me.autoFormatw=!1,me.accuracy=void 0,l},cutGridData:function(e){let n=0;for(let t=e.length-1;t>=0;t--){let l=!0;for(let a=0;a0){l=!1;break}}if(l)n=t;else break}return e.slice(0,n)},addGridData:function(e,n,t){let l=Vt([],n,t);if(e!=null)for(let a=0;a=l.length&&(l=Vt(l,s-l.length+1,0)),u>=l[0].length&&(l=Vt(l,0,u-l[0].length+1)),Ft(s,u,l,f)}return l},sheetParamRestore:function(e,n){if(h.luckysheet_select_save=e.luckysheet_select_save,(h.luckysheet_select_save==null||h.luckysheet_select_save.length==0)&&(n[0]!=null&&n[0][0]!=null&&n[0][0].mc!=null?h.luckysheet_select_save=[{row:[0,n[0][0].mc.rs-1],column:[0,n[0][0].mc.cs-1]}]:h.luckysheet_select_save=[{row:[0,0],column:[0,0]}]),h.luckysheet_selection_range=e.luckysheet_selection_range==null?[]:e.luckysheet_selection_range,h.config=e.config==null?{}:e.config,h.zoomRatio=e.zoomRatio==null?1:e.zoomRatio,e.defaultRowHeight!=null?h.defaultrowlen=parseFloat(e.defaultRowHeight):h.defaultrowlen=me.defaultRowHeight,e.defaultColWidth!=null?h.defaultcollen=parseFloat(e.defaultColWidth):h.defaultcollen=me.defaultColWidth,e.showGridLines!=null){let t=e.showGridLines;t==0||t==!1?h.showGridLines=!1:h.showGridLines=!0}else h.showGridLines=!0},initialjfFile:function(e,n){let t=this;t.getCurSheet();let l=h.luckysheetfile[t.getSheetIndex(h.currentSheetIndex)];t.nulldata=Vt([],h.defaultrowNum,h.defaultcolumnNum);let a=t.buildGridData(l),o=[];l.jfgird_select_save=l.jfgird_select_save||[],l.jfgird_select_save.forEach(m=>o.push({row:m.row,column:m.column})),l.luckysheet_select_save=o,this.sheetParamRestore(l,a);let s=h.luckysheet_select_save[0].row[1],u=h.luckysheet_select_save[0].column[1];if(h.luckysheet_select_save.length>1)for(let m=0;ms&&(s=h.luckysheet_select_save[m].row[1]),h.luckysheet_select_save[m].column[1]>u&&(u=h.luckysheet_select_save[m].column[1]);be.fontInitial(h.fontList),l.data=a;let f=a.length;s>f-1&&(f=s+1);let d=a[0].length;u>d-1&&(d=u+1),typeof me.beforeCreateDom=="function"&&me.beforeCreateDom(luckysheet),typeof me.workbookCreateBefore=="function"&&me.workbookCreateBefore(luckysheet),vc(d,f,a,e,n),setTimeout(function(){U.createHoverTip("#luckysheet_info_detail",".luckysheet_info_detail_back, .luckysheet_info_detail_input, .luckysheet_info_detail_update"),U.createHoverTip("#luckysheet-wa-editor",".luckysheet-toolbar-menu-button, .luckysheet-toolbar-button, .luckysheet-toolbar-combo-button"),h.luckysheetTableContentHW=[$("#luckysheet-cell-main").width()+h.rowHeaderWidth-h.cellMainSrollBarSize,$("#luckysheet-cell-main").height()+h.columnHeaderHeight-h.cellMainSrollBarSize],$("#luckysheetTableContent, #luckysheetTableContentF").attr({width:Math.ceil(h.luckysheetTableContentHW[0]*h.devicePixelRatio),height:Math.ceil(h.luckysheetTableContentHW[1]*h.devicePixelRatio)}).css({width:h.luckysheetTableContentHW[0],height:h.luckysheetTableContentHW[1]}).get(0).getContext("2d");let m=Q().info,y=ne.gridKey+"__qkcache",v=function(){l.load="1",t.createSheet();let k=function(){t.mergeCalculation(l.index),t.setSheetParam(!1),t.storeSheetParam(),t.restoreselect(),t.CacheNotLoadControll=[],t.restoreCache(),p.execFunctionGroupForce(me.forceCalculation),t.restoreSheetAll(h.currentSheetIndex),$("#luckysheet_info_detail_save").html(m.detailSave),l.isPivotTable?h.luckysheetcurrentisPivotTable=!0:(h.luckysheetcurrentisPivotTable=!1,$("#luckysheet-modal-dialog-slider-pivot").hide()),ad(),$t(),l.scrollLeft!=null&&l.scrollLeft>0?$("#luckysheet-scrollbar-x").scrollLeft(l.scrollLeft):$("#luckysheet-scrollbar-x").scrollLeft(0),l.scrollTop!=null&&l.scrollTop>0?$("#luckysheet-scrollbar-y").scrollTop(l.scrollTop):$("#luckysheet-scrollbar-y").scrollTop(0),Ao(h.asyncLoad,"core"),me.pointEdit?setTimeout(function(){h.loadingObj.close()},0):setTimeout(function(){h.loadingObj.close()},500)},b=ne.loadSheetUrl;if(b=="")t.loadOtherFile(l),k();else{let w=t.checkLoadSheetIndex(l),x=[];for(let C=0;C$("#luckysheet-scrollbar-x")[0].offsetWidth&&(n.scrollLeft=$("#luckysheet-scrollbar-x").scrollLeft()),$("#luckysheet-scrollbar-y")[0].scrollHeight>$("#luckysheet-scrollbar-y")[0].offsetHeight&&(n.scrollTop=$("#luckysheet-scrollbar-y").scrollTop()),n.zoomRatio=h.zoomRatio},setSheetParam:function(e=!0){let n=this.getSheetIndex(h.currentSheetIndex),t=h.luckysheetfile[n];h.flowdata=t.data,we.webWorkerFlowDataCache(h.flowdata),p.execFunctionGlobalData=null,window.luckysheet_getcelldata_cache=null,this.sheetParamRestore(t,h.flowdata),t.freezen==null?(Y.freezenhorizontaldata=null,Y.freezenverticaldata=null):(Y.freezenhorizontaldata=t.freezen.horizontal==null?null:t.freezen.horizontal.freezenhorizontaldata,Y.freezenverticaldata=t.freezen.vertical==null?null:t.freezen.vertical.freezenverticaldata),e&&vn(h.flowdata.length,h.flowdata[0].length),He.buildAllPs(h.flowdata),Ie.currentImgId=null,Ie.images=t.images,Ie.allImagesShow(),Ie.init(),Ye.dataVerification=t.dataVerification,Ye.init(),Cl.hyperlink=t.hyperlink,Cl.init(),Fl(t.filter_select,t.filter)},restoreselect:function(){let e=this.getSheetIndex(h.currentSheetIndex),n=h.luckysheetfile[e];tt(!0),Bt(),n.scrollLeft!=null&&n.scrollLeft>0?$("#luckysheet-scrollbar-x").scrollLeft(n.scrollLeft):$("#luckysheet-scrollbar-x").scrollLeft(0),n.scrollTop!=null&&n.scrollTop>0?$("#luckysheet-scrollbar-y").scrollTop(n.scrollTop):$("#luckysheet-scrollbar-y").scrollTop(0)},storeSheetParamALL:function(){let e=this;e.storeSheetParam();let n=e.getSheetIndex(h.currentSheetIndex);h.luckysheetfile[n].data=h.flowdata,h.luckysheetfile[n].config=$.extend(!0,{},h.config)},mergeCalculationSheet:{},mergeCalculation:function(e){let n=h.luckysheetfile[this.getSheetIndex(e)],t=n.config,l=n.data;if(t==null)return;let a=t.merge;if(!(a==null||e in this.mergeCalculationSheet||n.autoCalculationMerge===!1)){this.mergeCalculationSheet[e]=1;for(let o in a){let s=parseInt(o.substr(0,o.indexOf("_"))),u=parseInt(o.substr(o.indexOf("_")+1)),f=a[o];l[s][u]==null&&(l[s][u]={}),l[s][u].mc={r:s,c:u,rs:f.rs,cs:f.cs};for(let d=s;d{n.isPivotTable&&this.refreshPivotTableByFile(n)})},refreshPivotTableByFile:function(e){let n=e.pivotTable,t=n.column,l=n.row,a=n.values,o=n.showType,s=n.filterparm,u=n.pivotDataSheetIndex,f=this.getSheetIndex(u),d=h.luckysheetfile[f];d.data==null&&(d.data=this.buildGridData(d));let m=ia(d.data,n.pivot_select_save),g={};if(s!=null)for(let _ in s)for(let T in s[_])T==="rowhidden"&&_this.filterparm[_][T]!=null&&(g=$.extend(!0,g,s[_][T]));let y=[];for(let _=0;_{if(p.addToCellList(m,g),g.indexOf("!")>-1){let y=g.substr(0,g.indexOf("!")),v=this.getSheetByName(y);if(v!=null){let k=v.index;s[k]=1,p.addToSheetIndexList(m,k)}}}),p.formulaContainSheetList[m]==null&&p.addToSheetIndexList(m,d);d!=null}for(let u in s){let f=u;o[f.toString()]==null&&(a.push(f),o[f.toString()]=1,this.checkLoadSheetIndexToDataIndex[f]=1)}}if(t!=null)for(let s=0;s0?$("#luckysheet-scrollbar-x").scrollLeft(n.scrollLeft*h.zoomRatio):$("#luckysheet-scrollbar-x").scrollLeft(0),n.scrollTop!=null&&n.scrollTop>0?$("#luckysheet-scrollbar-y").scrollTop(n.scrollTop*h.zoomRatio):$("#luckysheet-scrollbar-y").scrollTop(0),setTimeout(()=>{h.scrollRefreshSwitch=!0},0),or(h.zoomRatio)},setCurSheet:function(e){for(let n=0;nt?me.showsheetbarConfig.sheet&&($("#luckysheet-sheet-area .luckysheet-sheets-scroll").css("display","inline-block"),$("#luckysheet-sheet-container .docs-sheet-fade-left").show()):($("#luckysheet-sheet-area .luckysheet-sheets-scroll").css("display","none"),$("#luckysheet-sheet-container .docs-sheet-fade-left").hide())}},sheetBarShowAndHide(e){let n=$("#luckysheet-sheet-container-c");if(e!=null){let o=$("#luckysheet-sheets-item"+e);n.scrollLeft(o.offset().left)}let t=n.width(),l=n[0].scrollWidth,a=n.scrollLeft();a<=0?$("#luckysheet-sheet-container .docs-sheet-fade-left").hide():$("#luckysheet-sheet-container .docs-sheet-fade-left").show(),t+a>=l?$("#luckysheet-sheet-container .docs-sheet-fade-right").hide():$("#luckysheet-sheet-container .docs-sheet-fade-right").show()},delChart:function(e,n){let t=this.getSheetIndex(n),l=h.luckysheetfile[t];if(l.chart==null)l.chart=[];else for(let a=0;a=u&&b.r=u+f&&(b.r-=f)}o.row-=f}else{for(let k=0;d.length==0;k++){let b=d[k];b.c>=u&&b.c=u+f&&(b.c-=f)}o.column-=f}let m=[];for(let k=0;ku&&(y.r+=f)}o.row+=f}else{for(let g=0;gu&&(y.c+=f)}o.column+=f}let m;s=="r"?m="row":m="column",Ir(m,u,f,!0)}else t=="na"?ne.saveParam("na",null,a):t=="thumb"&&setTimeout(function(){n.imageRequest()},2e3)}},ve=B2});var H2,p,qt=$e(()=>{ht();Dt();Rn();Wt();gl();ol();ll();Vl();_l();vr();Jt();Pt();Br();pr();Zt();gr();Ml();Qt();tl();Zl();gn();Xt();yn();Bi();Xe();vt();Va();zl();H2={error:{v:"#VALUE!",n:"#NAME?",na:"#N/A",r:"#REF!",d:"#DIV/0!",nm:"#NUM!",nl:"#NULL!",sp:"#SPILL!"},errorInfo:function(e){return e},errorParamCheck:function(e,n,t){let l,a,s=Q().formulaMore;return t-1?[!0,s.tipSuccessText]:l.indexOf("range")>-1&&(P(n)=="object"||P(n)=="array")?[!0,s.tipSuccessText]:l.indexOf("number")>-1&&(B(n)||P(n)=="boolean")?[!0,s.tipSuccessText]:l.indexOf("string")>-1&&P(n)=="string"?[!0,s.tipSuccessText]:l.indexOf("date")>-1&&Ot(n)?[!0,s.tipSuccessText]:[!1,s.tipParamErrorText]},getPureValueByData:function(e){if(e.length==0)return[];let n=[];if(P(e)=="array")if(P(e[0])=="array")for(let t=0;tn)for(let o=n;o-1){l||(l={});let m=d.split(":");m.length==2?l[m[0]]=m[1]:m.length>1&&(l[m[0]+":"+m[1]]=m[2])}else l||(l=[]),l.push(d)}a++}return l},colorList:["#2ec7c9","#fc5c5c","#5ab1ef","#ffb980","#d87a80","#8d98b3","#e5cf0d","#97b552","#95706d","#dc69aa","#07a2a4","#9a7fd1","#588dd5","#f5994e","#c05050","#59678c","#c9ab00","#7eb00a","#6f5553","#c14089"],classlist:{province:{11:"\u5317\u4EAC",12:"\u5929\u6D25",13:"\u6CB3\u5317",14:"\u5C71\u897F",15:"\u5185\u8499\u53E4",21:"\u8FBD\u5B81",22:"\u5409\u6797",23:"\u9ED1\u9F99\u6C5F",31:"\u4E0A\u6D77",32:"\u6C5F\u82CF",33:"\u6D59\u6C5F",34:"\u5B89\u5FBD",35:"\u798F\u5EFA",36:"\u6C5F\u897F",37:"\u5C71\u4E1C",41:"\u6CB3\u5357",42:"\u6E56\u5317",43:"\u6E56\u5357",44:"\u5E7F\u4E1C",45:"\u5E7F\u897F",46:"\u6D77\u5357",50:"\u91CD\u5E86",51:"\u56DB\u5DDD",52:"\u8D35\u5DDE",53:"\u4E91\u5357",54:"\u897F\u85CF",61:"\u9655\u897F",62:"\u7518\u8083",63:"\u9752\u6D77",64:"\u5B81\u590F",65:"\u65B0\u7586",71:"\u53F0\u6E7E",81:"\u9999\u6E2F",82:"\u6FB3\u95E8",91:"\u56FD\u5916"}},oldvalue:null,dontupdate:function(){let e=this;h.luckysheetCellUpdate.length=0,$("#luckysheet-functionbox-cell, #luckysheet-rich-text-editor").html(e.oldvalue),e.cancelNormalSelected(),e.rangetosheet!=h.currentSheetIndex&&ve.changeSheetExec(e.rangetosheet)},xssDeal:function(e){return typeof e!="string"?e:e.replace(/ + diff --git a/src/api/model/baseModel.ts b/src/api/model/baseModel.ts new file mode 100644 index 0000000..dc541d0 --- /dev/null +++ b/src/api/model/baseModel.ts @@ -0,0 +1,15 @@ +export interface BasicPageParams { + limit: number; + size: number; + keyword?: string; +} + +export interface BasicFetchResult { + list: T[]; + total: number; +} + +export interface BIFetchResult { + records: T[]; + total: number; +} diff --git a/src/api/system/login/index.ts b/src/api/system/login/index.ts new file mode 100644 index 0000000..a747e0c --- /dev/null +++ b/src/api/system/login/index.ts @@ -0,0 +1,37 @@ +import { defHttp } from '/@/utils/http/axios'; + +import { ErrorMessageMode } from '/#/axios'; +import { GetUserInfoModel, LoginParams, LoginResultModel } from './model'; + +enum Api { + Login = '/system/login', // + Logout = '/system/logout', // + GetUserInfo = '/organization/user/current/info', // +} + +/** + * @description: user login api --- + */ +export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal') { + return defHttp.post( + { + url: Api.Login, + params, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: getUserInfo -------- + */ +export function getUserInfo() { + return defHttp.get({ url: Api.GetUserInfo }, { errorMessageMode: 'none' }); +} + +// ------------ +export function doLogout() { + return defHttp.post({ url: Api.Logout }); +} diff --git a/src/api/system/login/model/index.ts b/src/api/system/login/model/index.ts new file mode 100644 index 0000000..77cec79 --- /dev/null +++ b/src/api/system/login/model/index.ts @@ -0,0 +1,100 @@ +import { RouteMeta } from 'vue-router'; +import { DesktopData } from '/@/model/desktop/designer'; +/** + * @description: Login interface parameters + */ +export interface LoginParams { + userName: string; + password: string; + deviceType?: number; +} + +export interface RoleInfo { + name: string; + id: string; + code: string; +} + +export type DepartmentInfo = RoleInfo; + +export type PostInfo = RoleInfo; +/** + * @description: Login interface return value + */ +export interface LoginResultModel { + token: string; +} + +/** + * @description: Permissions interface retrun value + */ +export interface MenuAuthModel { + menuId: string; + buttonAuthCode: string[]; + columnAuthCode: string[]; + formAuthCode: string[]; +} + +/** + * @description: Permissions interface retrun value + */ +export interface PermissionResultModel { + postId: string; + departmentId: string; + postName: string; + departmentName: string; + roleName: string; + roleId: string; + menuAuthList: MenuAuthModel[]; + desktopSchema: DesktopData; +} + +/** + * @description: Get user information return value + */ +export interface GetUserInfoModel { + // 用户id + id: string; + // 真实名字 + name: string; + // 编码 + code: string; + // 手机 + mobile: string; + //角色 + roles: RoleInfo[]; + // 用户名 + userName: string; + // 头像 + avatar: string; + //部门id + departmentId: string | number; + //所有部门 + departments: DepartmentInfo[]; + //所有部门 + posts: PostInfo[]; + //备注 + remark: string; + //邮箱 + email: string; + //地址 + address: string; + //首页地址 + homePath: string; +} + +export interface RouteItem { + path: string; + component: any; + meta: RouteMeta; + name?: string; + alias?: string | string[]; + redirect?: string; + caseSensitive?: boolean; + children?: RouteItem[]; +} + +/** + * @description: Get menu return value + */ +export type getMenuListResultModel = RouteItem[]; diff --git a/src/assets/application/img1.png b/src/assets/application/img1.png new file mode 100644 index 0000000..02b8740 Binary files /dev/null and b/src/assets/application/img1.png differ diff --git a/src/assets/application/img2.png b/src/assets/application/img2.png new file mode 100644 index 0000000..dd01b1a Binary files /dev/null and b/src/assets/application/img2.png differ diff --git a/src/assets/application/img3.png b/src/assets/application/img3.png new file mode 100644 index 0000000..24bbcf8 Binary files /dev/null and b/src/assets/application/img3.png differ diff --git a/src/assets/application/img4.png b/src/assets/application/img4.png new file mode 100644 index 0000000..7557627 Binary files /dev/null and b/src/assets/application/img4.png differ diff --git a/src/assets/application/img5.png b/src/assets/application/img5.png new file mode 100644 index 0000000..853d6ff Binary files /dev/null and b/src/assets/application/img5.png differ diff --git a/src/assets/application/img6.png b/src/assets/application/img6.png new file mode 100644 index 0000000..9565a6e Binary files /dev/null and b/src/assets/application/img6.png differ diff --git a/src/assets/application/img7.png b/src/assets/application/img7.png new file mode 100644 index 0000000..0c0a3ce Binary files /dev/null and b/src/assets/application/img7.png differ diff --git a/src/assets/application/img8.png b/src/assets/application/img8.png new file mode 100644 index 0000000..d79e1f7 Binary files /dev/null and b/src/assets/application/img8.png differ diff --git a/src/assets/application/vip.png b/src/assets/application/vip.png new file mode 100644 index 0000000..ef74cfa Binary files /dev/null and b/src/assets/application/vip.png differ diff --git a/src/assets/desktop/bottom.png b/src/assets/desktop/bottom.png new file mode 100644 index 0000000..b920ae3 Binary files /dev/null and b/src/assets/desktop/bottom.png differ diff --git a/src/assets/desktop/desktop-empty.png b/src/assets/desktop/desktop-empty.png new file mode 100644 index 0000000..3f62735 Binary files /dev/null and b/src/assets/desktop/desktop-empty.png differ diff --git a/src/assets/desktop/ding-bg.png b/src/assets/desktop/ding-bg.png new file mode 100644 index 0000000..307ecd0 Binary files /dev/null and b/src/assets/desktop/ding-bg.png differ diff --git a/src/assets/desktop/ding.png b/src/assets/desktop/ding.png new file mode 100644 index 0000000..495f596 Binary files /dev/null and b/src/assets/desktop/ding.png differ diff --git a/src/assets/desktop/ding1.png b/src/assets/desktop/ding1.png new file mode 100644 index 0000000..763784b Binary files /dev/null and b/src/assets/desktop/ding1.png differ diff --git a/src/assets/desktop/empty.png b/src/assets/desktop/empty.png new file mode 100644 index 0000000..924d710 Binary files /dev/null and b/src/assets/desktop/empty.png differ diff --git a/src/assets/desktop/middle.png b/src/assets/desktop/middle.png new file mode 100644 index 0000000..e7b565a Binary files /dev/null and b/src/assets/desktop/middle.png differ diff --git a/src/assets/desktop/top.png b/src/assets/desktop/top.png new file mode 100644 index 0000000..74a911e Binary files /dev/null and b/src/assets/desktop/top.png differ diff --git a/src/assets/erp/check_tip_no.png b/src/assets/erp/check_tip_no.png new file mode 100644 index 0000000..2fba3cb Binary files /dev/null and b/src/assets/erp/check_tip_no.png differ diff --git a/src/assets/erp/check_tip_no1.png b/src/assets/erp/check_tip_no1.png new file mode 100644 index 0000000..06d83b1 Binary files /dev/null and b/src/assets/erp/check_tip_no1.png differ diff --git a/src/assets/erp/check_tip_pass.png b/src/assets/erp/check_tip_pass.png new file mode 100644 index 0000000..87025fc Binary files /dev/null and b/src/assets/erp/check_tip_pass.png differ diff --git a/src/assets/erp/check_tip_pass1.png b/src/assets/erp/check_tip_pass1.png new file mode 100644 index 0000000..719ee5e Binary files /dev/null and b/src/assets/erp/check_tip_pass1.png differ diff --git a/src/assets/erp/index-icon1.svg b/src/assets/erp/index-icon1.svg new file mode 100644 index 0000000..4121f1d --- /dev/null +++ b/src/assets/erp/index-icon1.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/erp/index-icon2.svg b/src/assets/erp/index-icon2.svg new file mode 100644 index 0000000..e6d1ba0 --- /dev/null +++ b/src/assets/erp/index-icon2.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/assets/erp/index-icon3.svg b/src/assets/erp/index-icon3.svg new file mode 100644 index 0000000..609d003 --- /dev/null +++ b/src/assets/erp/index-icon3.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/erp/index-icon4.svg b/src/assets/erp/index-icon4.svg new file mode 100644 index 0000000..623df82 --- /dev/null +++ b/src/assets/erp/index-icon4.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/assets/erp/index-icon5.svg b/src/assets/erp/index-icon5.svg new file mode 100644 index 0000000..23db802 --- /dev/null +++ b/src/assets/erp/index-icon5.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/excel/auth.png b/src/assets/excel/auth.png new file mode 100644 index 0000000..3c02ce4 Binary files /dev/null and b/src/assets/excel/auth.png differ diff --git a/src/assets/excel/authModal.png b/src/assets/excel/authModal.png new file mode 100644 index 0000000..72c2b8a Binary files /dev/null and b/src/assets/excel/authModal.png differ diff --git a/src/assets/excel/bg.png b/src/assets/excel/bg.png new file mode 100644 index 0000000..bed376b Binary files /dev/null and b/src/assets/excel/bg.png differ diff --git a/src/assets/excel/delete.png b/src/assets/excel/delete.png new file mode 100644 index 0000000..3cd15db Binary files /dev/null and b/src/assets/excel/delete.png differ diff --git a/src/assets/excel/download.png b/src/assets/excel/download.png new file mode 100644 index 0000000..68c1cbc Binary files /dev/null and b/src/assets/excel/download.png differ diff --git a/src/assets/excel/edit.png b/src/assets/excel/edit.png new file mode 100644 index 0000000..d61410d Binary files /dev/null and b/src/assets/excel/edit.png differ diff --git a/src/assets/excel/excel.png b/src/assets/excel/excel.png new file mode 100644 index 0000000..634a126 Binary files /dev/null and b/src/assets/excel/excel.png differ diff --git a/src/assets/excel/rename.png b/src/assets/excel/rename.png new file mode 100644 index 0000000..c76aaef Binary files /dev/null and b/src/assets/excel/rename.png differ diff --git a/src/assets/excel/renameModal.png b/src/assets/excel/renameModal.png new file mode 100644 index 0000000..d07d1c8 Binary files /dev/null and b/src/assets/excel/renameModal.png differ diff --git a/src/assets/file/bg.png b/src/assets/file/bg.png new file mode 100644 index 0000000..01ee597 Binary files /dev/null and b/src/assets/file/bg.png differ diff --git a/src/assets/file/defaultFile.png b/src/assets/file/defaultFile.png new file mode 100644 index 0000000..6db32b0 Binary files /dev/null and b/src/assets/file/defaultFile.png differ diff --git a/src/assets/file/excel.png b/src/assets/file/excel.png new file mode 100644 index 0000000..634a126 Binary files /dev/null and b/src/assets/file/excel.png differ diff --git a/src/assets/file/file.png b/src/assets/file/file.png new file mode 100644 index 0000000..7918364 Binary files /dev/null and b/src/assets/file/file.png differ diff --git a/src/assets/file/img.png b/src/assets/file/img.png new file mode 100644 index 0000000..7883bc9 Binary files /dev/null and b/src/assets/file/img.png differ diff --git a/src/assets/file/pdf.png b/src/assets/file/pdf.png new file mode 100644 index 0000000..1c51e46 Binary files /dev/null and b/src/assets/file/pdf.png differ diff --git a/src/assets/file/preview.png b/src/assets/file/preview.png new file mode 100644 index 0000000..ed62de1 Binary files /dev/null and b/src/assets/file/preview.png differ diff --git a/src/assets/file/txt.png b/src/assets/file/txt.png new file mode 100644 index 0000000..5c48949 Binary files /dev/null and b/src/assets/file/txt.png differ diff --git a/src/assets/file/upload.png b/src/assets/file/upload.png new file mode 100644 index 0000000..73edacc Binary files /dev/null and b/src/assets/file/upload.png differ diff --git a/src/assets/file/view.png b/src/assets/file/view.png new file mode 100644 index 0000000..9da1c34 Binary files /dev/null and b/src/assets/file/view.png differ diff --git a/src/assets/file/word.png b/src/assets/file/word.png new file mode 100644 index 0000000..9f453f2 Binary files /dev/null and b/src/assets/file/word.png differ diff --git a/src/assets/icons/Divider Tall.svg b/src/assets/icons/Divider Tall.svg new file mode 100644 index 0000000..06e385e --- /dev/null +++ b/src/assets/icons/Divider Tall.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/action.svg b/src/assets/icons/action.svg new file mode 100644 index 0000000..05273b4 --- /dev/null +++ b/src/assets/icons/action.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/ai-answer.svg b/src/assets/icons/ai-answer.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/ai-answer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/area.svg b/src/assets/icons/area.svg new file mode 100644 index 0000000..d41be7e --- /dev/null +++ b/src/assets/icons/area.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/associate-popup.svg b/src/assets/icons/associate-popup.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/associate-popup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/associate-select.svg b/src/assets/icons/associate-select.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/associate-select.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/auto-code.svg b/src/assets/icons/auto-code.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/auto-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/auto-complete.svg b/src/assets/icons/auto-complete.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/auto-complete.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/barcode.svg b/src/assets/icons/barcode.svg new file mode 100644 index 0000000..6513bdb --- /dev/null +++ b/src/assets/icons/barcode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/button.svg b/src/assets/icons/button.svg new file mode 100644 index 0000000..e7cb659 --- /dev/null +++ b/src/assets/icons/button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/card.svg b/src/assets/icons/card.svg new file mode 100644 index 0000000..0cc5c4f --- /dev/null +++ b/src/assets/icons/card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/cascader.svg b/src/assets/icons/cascader.svg new file mode 100644 index 0000000..d41be7e --- /dev/null +++ b/src/assets/icons/cascader.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/checkbox.svg b/src/assets/icons/checkbox.svg new file mode 100644 index 0000000..a4fd170 --- /dev/null +++ b/src/assets/icons/checkbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/clearable.svg b/src/assets/icons/clearable.svg new file mode 100644 index 0000000..245daca --- /dev/null +++ b/src/assets/icons/clearable.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/color.svg b/src/assets/icons/color.svg new file mode 100644 index 0000000..004947e --- /dev/null +++ b/src/assets/icons/color.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/computational.svg b/src/assets/icons/computational.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/computational.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/copy.svg b/src/assets/icons/copy.svg new file mode 100644 index 0000000..920a1af --- /dev/null +++ b/src/assets/icons/copy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/date-range.svg b/src/assets/icons/date-range.svg new file mode 100644 index 0000000..8acd199 --- /dev/null +++ b/src/assets/icons/date-range.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/date.svg b/src/assets/icons/date.svg new file mode 100644 index 0000000..d49d20b --- /dev/null +++ b/src/assets/icons/date.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/delete.svg b/src/assets/icons/delete.svg new file mode 100644 index 0000000..5686d54 --- /dev/null +++ b/src/assets/icons/delete.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/divider.svg b/src/assets/icons/divider.svg new file mode 100644 index 0000000..e52bbe0 --- /dev/null +++ b/src/assets/icons/divider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/download-count.svg b/src/assets/icons/download-count.svg new file mode 100644 index 0000000..1c95195 --- /dev/null +++ b/src/assets/icons/download-count.svg @@ -0,0 +1 @@ +Asset 91 \ No newline at end of file diff --git a/src/assets/icons/dynamic-avatar-1.svg b/src/assets/icons/dynamic-avatar-1.svg new file mode 100644 index 0000000..e1553e5 --- /dev/null +++ b/src/assets/icons/dynamic-avatar-1.svg @@ -0,0 +1 @@ +Asset 15 \ No newline at end of file diff --git a/src/assets/icons/dynamic-avatar-2.svg b/src/assets/icons/dynamic-avatar-2.svg new file mode 100644 index 0000000..c4c1722 --- /dev/null +++ b/src/assets/icons/dynamic-avatar-2.svg @@ -0,0 +1 @@ +Asset 16 \ No newline at end of file diff --git a/src/assets/icons/dynamic-avatar-3.svg b/src/assets/icons/dynamic-avatar-3.svg new file mode 100644 index 0000000..81145f9 --- /dev/null +++ b/src/assets/icons/dynamic-avatar-3.svg @@ -0,0 +1 @@ +Asset 17 \ No newline at end of file diff --git a/src/assets/icons/dynamic-avatar-4.svg b/src/assets/icons/dynamic-avatar-4.svg new file mode 100644 index 0000000..e586ed4 --- /dev/null +++ b/src/assets/icons/dynamic-avatar-4.svg @@ -0,0 +1 @@ +Asset 120 \ No newline at end of file diff --git a/src/assets/icons/dynamic-avatar-5.svg b/src/assets/icons/dynamic-avatar-5.svg new file mode 100644 index 0000000..746e4b8 --- /dev/null +++ b/src/assets/icons/dynamic-avatar-5.svg @@ -0,0 +1 @@ +Asset 110 \ No newline at end of file diff --git a/src/assets/icons/dynamic-avatar-6.svg b/src/assets/icons/dynamic-avatar-6.svg new file mode 100644 index 0000000..b2432f2 --- /dev/null +++ b/src/assets/icons/dynamic-avatar-6.svg @@ -0,0 +1 @@ +Asset 100 \ No newline at end of file diff --git a/src/assets/icons/exclamation.svg b/src/assets/icons/exclamation.svg new file mode 100644 index 0000000..97203e8 --- /dev/null +++ b/src/assets/icons/exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/file.svg b/src/assets/icons/file.svg new file mode 100644 index 0000000..7b850c1 --- /dev/null +++ b/src/assets/icons/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/form-view.svg b/src/assets/icons/form-view.svg new file mode 100644 index 0000000..557e816 --- /dev/null +++ b/src/assets/icons/form-view.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/form.svg b/src/assets/icons/form.svg new file mode 100644 index 0000000..855af9e --- /dev/null +++ b/src/assets/icons/form.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/generate-code.svg b/src/assets/icons/generate-code.svg new file mode 100644 index 0000000..de21330 --- /dev/null +++ b/src/assets/icons/generate-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/generate-json.svg b/src/assets/icons/generate-json.svg new file mode 100644 index 0000000..7e24d11 --- /dev/null +++ b/src/assets/icons/generate-json.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/grid.svg b/src/assets/icons/grid.svg new file mode 100644 index 0000000..6bcba5a --- /dev/null +++ b/src/assets/icons/grid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/iframe.svg b/src/assets/icons/iframe.svg new file mode 100644 index 0000000..50d4127 --- /dev/null +++ b/src/assets/icons/iframe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/image.svg b/src/assets/icons/image.svg new file mode 100644 index 0000000..e630d4f --- /dev/null +++ b/src/assets/icons/image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/import.svg b/src/assets/icons/import.svg new file mode 100644 index 0000000..9500c87 --- /dev/null +++ b/src/assets/icons/import.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/info.svg b/src/assets/icons/info.svg new file mode 100644 index 0000000..e58411a --- /dev/null +++ b/src/assets/icons/info.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/infolist.svg b/src/assets/icons/infolist.svg new file mode 100644 index 0000000..855af9e --- /dev/null +++ b/src/assets/icons/infolist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/input.svg b/src/assets/icons/input.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/input.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/insert.svg b/src/assets/icons/insert.svg new file mode 100644 index 0000000..0a39da5 --- /dev/null +++ b/src/assets/icons/insert.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/item.svg b/src/assets/icons/item.svg new file mode 100644 index 0000000..1daf378 --- /dev/null +++ b/src/assets/icons/item.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/labelComponent.svg b/src/assets/icons/labelComponent.svg new file mode 100644 index 0000000..14d2dfa --- /dev/null +++ b/src/assets/icons/labelComponent.svg @@ -0,0 +1 @@ + diff --git a/src/assets/icons/map.svg b/src/assets/icons/map.svg new file mode 100644 index 0000000..85b8b90 --- /dev/null +++ b/src/assets/icons/map.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/money-chinese.svg b/src/assets/icons/money-chinese.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/money-chinese.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/moon.svg b/src/assets/icons/moon.svg new file mode 100644 index 0000000..e6667f0 --- /dev/null +++ b/src/assets/icons/moon.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/src/assets/icons/move.svg b/src/assets/icons/move.svg new file mode 100644 index 0000000..205e509 --- /dev/null +++ b/src/assets/icons/move.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/multiple-popup.svg b/src/assets/icons/multiple-popup.svg new file mode 100644 index 0000000..d3e8e22 --- /dev/null +++ b/src/assets/icons/multiple-popup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/number.svg b/src/assets/icons/number.svg new file mode 100644 index 0000000..e3329a8 --- /dev/null +++ b/src/assets/icons/number.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/one-for-one.svg b/src/assets/icons/one-for-one.svg new file mode 100644 index 0000000..855af9e --- /dev/null +++ b/src/assets/icons/one-for-one.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/opinion.svg b/src/assets/icons/opinion.svg new file mode 100644 index 0000000..37cc15b --- /dev/null +++ b/src/assets/icons/opinion.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/organization.svg b/src/assets/icons/organization.svg new file mode 100644 index 0000000..fd6260f --- /dev/null +++ b/src/assets/icons/organization.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/password.svg b/src/assets/icons/password.svg new file mode 100644 index 0000000..4cdf144 --- /dev/null +++ b/src/assets/icons/password.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/picker-color.svg b/src/assets/icons/picker-color.svg new file mode 100644 index 0000000..fa070c4 --- /dev/null +++ b/src/assets/icons/picker-color.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/preview.svg b/src/assets/icons/preview.svg new file mode 100644 index 0000000..b8f06fb --- /dev/null +++ b/src/assets/icons/preview.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/printer.svg b/src/assets/icons/printer.svg new file mode 100644 index 0000000..bf6b72a --- /dev/null +++ b/src/assets/icons/printer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/qrcode.svg b/src/assets/icons/qrcode.svg new file mode 100644 index 0000000..e01826f --- /dev/null +++ b/src/assets/icons/qrcode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/radio.svg b/src/assets/icons/radio.svg new file mode 100644 index 0000000..13b071a --- /dev/null +++ b/src/assets/icons/radio.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/rate.svg b/src/assets/icons/rate.svg new file mode 100644 index 0000000..d97eb86 --- /dev/null +++ b/src/assets/icons/rate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/richtext-editor.svg b/src/assets/icons/richtext-editor.svg new file mode 100644 index 0000000..dc88671 --- /dev/null +++ b/src/assets/icons/richtext-editor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/select.svg b/src/assets/icons/select.svg new file mode 100644 index 0000000..b84d3a4 --- /dev/null +++ b/src/assets/icons/select.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/signature.svg b/src/assets/icons/signature.svg new file mode 100644 index 0000000..97fdd1b --- /dev/null +++ b/src/assets/icons/signature.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/slider.svg b/src/assets/icons/slider.svg new file mode 100644 index 0000000..cb4dc59 --- /dev/null +++ b/src/assets/icons/slider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/sun-form.svg b/src/assets/icons/sun-form.svg new file mode 100644 index 0000000..e916717 --- /dev/null +++ b/src/assets/icons/sun-form.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/sun.svg b/src/assets/icons/sun.svg new file mode 100644 index 0000000..a3997cb --- /dev/null +++ b/src/assets/icons/sun.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/icons/switch.svg b/src/assets/icons/switch.svg new file mode 100644 index 0000000..536a0de --- /dev/null +++ b/src/assets/icons/switch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/tab.svg b/src/assets/icons/tab.svg new file mode 100644 index 0000000..5f24b3c --- /dev/null +++ b/src/assets/icons/tab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/table-layout.svg b/src/assets/icons/table-layout.svg new file mode 100644 index 0000000..6bcba5a --- /dev/null +++ b/src/assets/icons/table-layout.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/test.svg b/src/assets/icons/test.svg new file mode 100644 index 0000000..244252d --- /dev/null +++ b/src/assets/icons/test.svg @@ -0,0 +1,21 @@ + + + + Icon1@3x + Created with Sketch. + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/assets/icons/text.svg b/src/assets/icons/text.svg new file mode 100644 index 0000000..84d6e2a --- /dev/null +++ b/src/assets/icons/text.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/textarea.svg b/src/assets/icons/textarea.svg new file mode 100644 index 0000000..37cc15b --- /dev/null +++ b/src/assets/icons/textarea.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/time-range.svg b/src/assets/icons/time-range.svg new file mode 100644 index 0000000..f6e84cb --- /dev/null +++ b/src/assets/icons/time-range.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/time.svg b/src/assets/icons/time.svg new file mode 100644 index 0000000..f8e34cc --- /dev/null +++ b/src/assets/icons/time.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/title.svg b/src/assets/icons/title.svg new file mode 100644 index 0000000..86fc7e2 --- /dev/null +++ b/src/assets/icons/title.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/tool.svg b/src/assets/icons/tool.svg new file mode 100644 index 0000000..3f0b534 --- /dev/null +++ b/src/assets/icons/tool.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/total-sales.svg b/src/assets/icons/total-sales.svg new file mode 100644 index 0000000..eff7964 --- /dev/null +++ b/src/assets/icons/total-sales.svg @@ -0,0 +1 @@ +Asset 500 \ No newline at end of file diff --git a/src/assets/icons/transaction.svg b/src/assets/icons/transaction.svg new file mode 100644 index 0000000..7ba9e2f --- /dev/null +++ b/src/assets/icons/transaction.svg @@ -0,0 +1 @@ +Asset 480% \ No newline at end of file diff --git a/src/assets/icons/tree-component.svg b/src/assets/icons/tree-component.svg new file mode 100644 index 0000000..b2fc86b --- /dev/null +++ b/src/assets/icons/tree-component.svg @@ -0,0 +1 @@ + diff --git a/src/assets/icons/tree-select-component.svg b/src/assets/icons/tree-select-component.svg new file mode 100644 index 0000000..b2fc86b --- /dev/null +++ b/src/assets/icons/tree-select-component.svg @@ -0,0 +1 @@ + diff --git a/src/assets/icons/upload.svg b/src/assets/icons/upload.svg new file mode 100644 index 0000000..4fb071e --- /dev/null +++ b/src/assets/icons/upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/visit-count.svg b/src/assets/icons/visit-count.svg new file mode 100644 index 0000000..ba2a306 --- /dev/null +++ b/src/assets/icons/visit-count.svg @@ -0,0 +1 @@ +Asset 510 \ No newline at end of file diff --git a/src/assets/images/demo.png b/src/assets/images/demo.png new file mode 100644 index 0000000..1a45c98 Binary files /dev/null and b/src/assets/images/demo.png differ diff --git a/src/assets/images/design/dataFirst.png b/src/assets/images/design/dataFirst.png new file mode 100644 index 0000000..7e22ef5 Binary files /dev/null and b/src/assets/images/design/dataFirst.png differ diff --git a/src/assets/images/design/interfaceFirst.png b/src/assets/images/design/interfaceFirst.png new file mode 100644 index 0000000..b2ae9bb Binary files /dev/null and b/src/assets/images/design/interfaceFirst.png differ diff --git a/src/assets/images/design/logo.png b/src/assets/images/design/logo.png new file mode 100644 index 0000000..a43746b Binary files /dev/null and b/src/assets/images/design/logo.png differ diff --git a/src/assets/images/design/noTable.png b/src/assets/images/design/noTable.png new file mode 100644 index 0000000..13fceba Binary files /dev/null and b/src/assets/images/design/noTable.png differ diff --git a/src/assets/images/design/quickDevelop.png b/src/assets/images/design/quickDevelop.png new file mode 100644 index 0000000..6ae0f03 Binary files /dev/null and b/src/assets/images/design/quickDevelop.png differ diff --git a/src/assets/images/design/simpleTemplate.png b/src/assets/images/design/simpleTemplate.png new file mode 100644 index 0000000..bcaf3b2 Binary files /dev/null and b/src/assets/images/design/simpleTemplate.png differ diff --git a/src/assets/images/empty.png b/src/assets/images/empty.png new file mode 100644 index 0000000..9d06d72 Binary files /dev/null and b/src/assets/images/empty.png differ diff --git a/src/assets/images/header.jpg b/src/assets/images/header.jpg new file mode 100644 index 0000000..e167095 Binary files /dev/null and b/src/assets/images/header.jpg differ diff --git a/src/assets/images/import.png b/src/assets/images/import.png new file mode 100644 index 0000000..9f029be Binary files /dev/null and b/src/assets/images/import.png differ diff --git a/src/assets/images/import2.png b/src/assets/images/import2.png new file mode 100644 index 0000000..01ce58f Binary files /dev/null and b/src/assets/images/import2.png differ diff --git a/src/assets/images/list-card.png b/src/assets/images/list-card.png new file mode 100644 index 0000000..85e300c Binary files /dev/null and b/src/assets/images/list-card.png differ diff --git a/src/assets/images/list-card1.png b/src/assets/images/list-card1.png new file mode 100644 index 0000000..222b4c5 Binary files /dev/null and b/src/assets/images/list-card1.png differ diff --git a/src/assets/images/list-default.png b/src/assets/images/list-default.png new file mode 100644 index 0000000..225af4b Binary files /dev/null and b/src/assets/images/list-default.png differ diff --git a/src/assets/images/list-default1.png b/src/assets/images/list-default1.png new file mode 100644 index 0000000..144fcc6 Binary files /dev/null and b/src/assets/images/list-default1.png differ diff --git a/src/assets/images/list-horizontal.png b/src/assets/images/list-horizontal.png new file mode 100644 index 0000000..f3754a2 Binary files /dev/null and b/src/assets/images/list-horizontal.png differ diff --git a/src/assets/images/list-horizontal1.png b/src/assets/images/list-horizontal1.png new file mode 100644 index 0000000..0074a00 Binary files /dev/null and b/src/assets/images/list-horizontal1.png differ diff --git a/src/assets/images/list-vertical.png b/src/assets/images/list-vertical.png new file mode 100644 index 0000000..693cf0d Binary files /dev/null and b/src/assets/images/list-vertical.png differ diff --git a/src/assets/images/list-vertical1.png b/src/assets/images/list-vertical1.png new file mode 100644 index 0000000..43ad807 Binary files /dev/null and b/src/assets/images/list-vertical1.png differ diff --git a/src/assets/images/login-left.png b/src/assets/images/login-left.png new file mode 100644 index 0000000..01fd5c0 Binary files /dev/null and b/src/assets/images/login-left.png differ diff --git a/src/assets/images/login-right-bg.png b/src/assets/images/login-right-bg.png new file mode 100644 index 0000000..7bfe5d9 Binary files /dev/null and b/src/assets/images/login-right-bg.png differ diff --git a/src/assets/images/login-right-bg1.png b/src/assets/images/login-right-bg1.png new file mode 100644 index 0000000..7cfb9b3 Binary files /dev/null and b/src/assets/images/login-right-bg1.png differ diff --git a/src/assets/images/login-right-bg2.png b/src/assets/images/login-right-bg2.png new file mode 100644 index 0000000..040b0ab Binary files /dev/null and b/src/assets/images/login-right-bg2.png differ diff --git a/src/assets/images/login-right-bg3.png b/src/assets/images/login-right-bg3.png new file mode 100644 index 0000000..8c395a4 Binary files /dev/null and b/src/assets/images/login-right-bg3.png differ diff --git a/src/assets/images/login-right.gif b/src/assets/images/login-right.gif new file mode 100644 index 0000000..6008bc1 Binary files /dev/null and b/src/assets/images/login-right.gif differ diff --git a/src/assets/images/logo-dark.png b/src/assets/images/logo-dark.png new file mode 100644 index 0000000..06cbdd1 Binary files /dev/null and b/src/assets/images/logo-dark.png differ diff --git a/src/assets/images/logo-full.png b/src/assets/images/logo-full.png new file mode 100644 index 0000000..3cca13f Binary files /dev/null and b/src/assets/images/logo-full.png differ diff --git a/src/assets/images/logo.png b/src/assets/images/logo.png new file mode 100644 index 0000000..e1bbb41 Binary files /dev/null and b/src/assets/images/logo.png differ diff --git a/src/assets/images/logo.svg b/src/assets/images/logo.svg new file mode 100644 index 0000000..a34340d --- /dev/null +++ b/src/assets/images/logo.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/images/platform/head-right1.png b/src/assets/images/platform/head-right1.png new file mode 100644 index 0000000..3f457bc Binary files /dev/null and b/src/assets/images/platform/head-right1.png differ diff --git a/src/assets/images/platform/head-right2.png b/src/assets/images/platform/head-right2.png new file mode 100644 index 0000000..20e7475 Binary files /dev/null and b/src/assets/images/platform/head-right2.png differ diff --git a/src/assets/images/platform/head.png b/src/assets/images/platform/head.png new file mode 100644 index 0000000..3a8a246 Binary files /dev/null and b/src/assets/images/platform/head.png differ diff --git a/src/assets/images/upload.png b/src/assets/images/upload.png new file mode 100644 index 0000000..3607bba Binary files /dev/null and b/src/assets/images/upload.png differ diff --git a/src/assets/images/widget-empty.png b/src/assets/images/widget-empty.png new file mode 100644 index 0000000..924d710 Binary files /dev/null and b/src/assets/images/widget-empty.png differ diff --git a/src/assets/questionnaire/left.png b/src/assets/questionnaire/left.png new file mode 100644 index 0000000..b554dbe Binary files /dev/null and b/src/assets/questionnaire/left.png differ diff --git a/src/assets/questionnaire/right.png b/src/assets/questionnaire/right.png new file mode 100644 index 0000000..a0e5cf4 Binary files /dev/null and b/src/assets/questionnaire/right.png differ diff --git a/src/assets/style/bpmn-js/bpmn-font/css/bpmn-codes.css b/src/assets/style/bpmn-js/bpmn-font/css/bpmn-codes.css new file mode 100644 index 0000000..ff256cb --- /dev/null +++ b/src/assets/style/bpmn-js/bpmn-font/css/bpmn-codes.css @@ -0,0 +1,321 @@ +.bpmn-icon-screw-wrench:before { + content: '\e800'; +} /* '' */ +.bpmn-icon-trash:before { + content: '\e801'; +} /* '' */ +.bpmn-icon-conditional-flow:before { + content: '\e802'; +} /* '' */ +.bpmn-icon-default-flow:before { + content: '\e803'; +} /* '' */ +.bpmn-icon-gateway-parallel:before { + content: '\e804'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-cancel:before { + content: '\e805'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-message:before { + content: '\e806'; +} /* '' */ +.bpmn-icon-start-event-compensation:before { + content: '\e807'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-parallel-multiple:before { + content: '\e808'; +} /* '' */ +.bpmn-icon-loop-marker:before { + content: '\e809'; +} /* '' */ +.bpmn-icon-parallel-mi-marker:before { + content: '\e80a'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-signal:before { + content: '\e80b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-timer:before { + content: '\e80c'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-parallel-multiple:before { + content: '\e80d'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-compensation:before { + content: '\e80e'; +} /* '' */ +.bpmn-icon-gateway-xor:before { + content: '\e80f'; +} /* '' */ +.bpmn-icon-connection:before { + content: '\e810'; +} /* '' */ +.bpmn-icon-end-event-cancel:before { + content: '\e811'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-condition:before { + content: '\e812'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-parallel-multiple:before { + content: '\e813'; +} /* '' */ +.bpmn-icon-start-event-condition:before { + content: '\e814'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-timer:before { + content: '\e815'; +} /* '' */ +.bpmn-icon-sequential-mi-marker:before { + content: '\e816'; +} /* '' */ +.bpmn-icon-user-task:before { + content: '\e817'; +} /* '' */ +.bpmn-icon-business-rule:before { + content: '\e818'; +} /* '' */ +.bpmn-icon-sub-process-marker:before { + content: '\e819'; +} /* '' */ +.bpmn-icon-start-event-parallel-multiple:before { + content: '\e81a'; +} /* '' */ +.bpmn-icon-start-event-error:before { + content: '\e81b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-signal:before { + content: '\e81c'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-error:before { + content: '\e81d'; +} /* '' */ +.bpmn-icon-end-event-compensation:before { + content: '\e81e'; +} /* '' */ +.bpmn-icon-subprocess-collapsed:before { + content: '\e81f'; +} /* '' */ +.bpmn-icon-subprocess-expanded:before { + content: '\e820'; +} /* '' */ +.bpmn-icon-task:before { + content: '\e821'; +} /* '' */ +.bpmn-icon-end-event-error:before { + content: '\e822'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-escalation:before { + content: '\e823'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-timer:before { + content: '\e824'; +} /* '' */ +.bpmn-icon-start-event-escalation:before { + content: '\e825'; +} /* '' */ +.bpmn-icon-start-event-signal:before { + content: '\e826'; +} /* '' */ +.bpmn-icon-business-rule-task:before { + content: '\e827'; +} /* '' */ +.bpmn-icon-manual:before { + content: '\e828'; +} /* '' */ +.bpmn-icon-receive:before { + content: '\e829'; +} /* '' */ +.bpmn-icon-call-activity:before { + content: '\e82a'; +} /* '' */ +.bpmn-icon-start-event-timer:before { + content: '\e82b'; +} /* '' */ +.bpmn-icon-start-event-message:before { + content: '\e82c'; +} /* '' */ +.bpmn-icon-intermediate-event-none:before { + content: '\e82d'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-link:before { + content: '\e82e'; +} /* '' */ +.bpmn-icon-end-event-escalation:before { + content: '\e82f'; +} /* '' */ +.bpmn-icon-text-annotation:before { + content: '\e830'; +} /* '' */ +.bpmn-icon-bpmn-io:before { + content: '\e831'; +} /* '' */ +.bpmn-icon-gateway-complex:before { + content: '\e832'; +} /* '' */ +.bpmn-icon-gateway-eventbased:before { + content: '\e833'; +} /* '' */ +.bpmn-icon-gateway-none:before { + content: '\e834'; +} /* '' */ +.bpmn-icon-gateway-or:before { + content: '\e835'; +} /* '' */ +.bpmn-icon-end-event-terminate:before { + content: '\e836'; +} /* '' */ +.bpmn-icon-end-event-signal:before { + content: '\e837'; +} /* '' */ +.bpmn-icon-end-event-none:before { + content: '\e838'; +} /* '' */ +.bpmn-icon-end-event-multiple:before { + content: '\e839'; +} /* '' */ +.bpmn-icon-end-event-message:before { + content: '\e83a'; +} /* '' */ +.bpmn-icon-end-event-link:before { + content: '\e83b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-message:before { + content: '\e83c'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-compensation:before { + content: '\e83d'; +} /* '' */ +.bpmn-icon-start-event-multiple:before { + content: '\e83e'; +} /* '' */ +.bpmn-icon-script:before { + content: '\e83f'; +} /* '' */ +.bpmn-icon-manual-task:before { + content: '\e840'; +} /* '' */ +.bpmn-icon-send:before { + content: '\e841'; +} /* '' */ +.bpmn-icon-service:before { + content: '\e842'; +} /* '' */ +.bpmn-icon-receive-task:before { + content: '\e843'; +} /* '' */ +.bpmn-icon-user:before { + content: '\e844'; +} /* '' */ +.bpmn-icon-start-event-none:before { + content: '\e845'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-escalation:before { + content: '\e846'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-multiple:before { + content: '\e847'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-escalation:before { + content: '\e848'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-link:before { + content: '\e849'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-condition:before { + content: '\e84a'; +} /* '' */ +.bpmn-icon-data-object:before { + content: '\e84b'; +} /* '' */ +.bpmn-icon-script-task:before { + content: '\e84c'; +} /* '' */ +.bpmn-icon-send-task:before { + content: '\e84d'; +} /* '' */ +.bpmn-icon-data-store:before { + content: '\e84e'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-escalation:before { + content: '\e84f'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-message:before { + content: '\e850'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-multiple:before { + content: '\e851'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-signal:before { + content: '\e852'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-multiple:before { + content: '\e853'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-message:before { + content: '\e854'; +} /* '' */ +.bpmn-icon-ad-hoc-marker:before { + content: '\e855'; +} /* '' */ +.bpmn-icon-service-task:before { + content: '\e856'; +} /* '' */ +.bpmn-icon-task-none:before { + content: '\e857'; +} /* '' */ +.bpmn-icon-compensation-marker:before { + content: '\e858'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-multiple:before { + content: '\e859'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-signal:before { + content: '\e85a'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-condition:before { + content: '\e85b'; +} /* '' */ +.bpmn-icon-participant:before { + content: '\e85c'; +} /* '' */ +.bpmn-icon-event-subprocess-expanded:before { + content: '\e85d'; +} /* '' */ +.bpmn-icon-lane-insert-below:before { + content: '\e85e'; +} /* '' */ +.bpmn-icon-space-tool:before { + content: '\e85f'; +} /* '' */ +.bpmn-icon-connection-multi:before { + content: '\e860'; +} /* '' */ +.bpmn-icon-lane:before { + content: '\e861'; +} /* '' */ +.bpmn-icon-lasso-tool:before { + content: '\e862'; +} /* '' */ +.bpmn-icon-lane-insert-above:before { + content: '\e863'; +} /* '' */ +.bpmn-icon-lane-divide-three:before { + content: '\e864'; +} /* '' */ +.bpmn-icon-lane-divide-two:before { + content: '\e865'; +} /* '' */ +.bpmn-icon-data-input:before { + content: '\e866'; +} /* '' */ +.bpmn-icon-data-output:before { + content: '\e867'; +} /* '' */ +.bpmn-icon-hand-tool:before { + content: '\e868'; +} /* '' */ +.bpmn-icon-group:before { + content: '\e869'; +} /* '' */ +.bpmn-icon-transaction:before { + content: '\e8c4'; +} /* '' */ diff --git a/src/assets/style/bpmn-js/bpmn-font/css/bpmn-embedded.css b/src/assets/style/bpmn-js/bpmn-font/css/bpmn-embedded.css new file mode 100644 index 0000000..93c77d0 --- /dev/null +++ b/src/assets/style/bpmn-js/bpmn-font/css/bpmn-embedded.css @@ -0,0 +1,378 @@ +@font-face { + font-family: 'bpmn'; + src: url('../font/bpmn.eot?68866489'); + src: url('../font/bpmn.eot?68866489#iefix') format('embedded-opentype'), + url('../font/bpmn.svg?68866489#bpmn') format('svg'); + font-weight: normal; + font-style: normal; +} +@font-face { + font-family: 'bpmn'; + src: url('data:application/octet-stream;base64,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') + format('woff'), + url('data:application/octet-stream;base64,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AAAAGgAA6BoAAOgaAAAAGwAA6BsAAOgbAAAAHAAA6BwAAOgcAAAAHQAA6B0AAOgdAAAAHgAA6B4AAOgeAAAAHwAA6B8AAOgfAAAAIAAA6CAAAOggAAAAIQAA6CEAAOghAAAAIgAA6CIAAOgiAAAAIwAA6CMAAOgjAAAAJAAA6CQAAOgkAAAAJQAA6CUAAOglAAAAJgAA6CYAAOgmAAAAJwAA6CcAAOgnAAAAKAAA6CgAAOgoAAAAKQAA6CkAAOgpAAAAKgAA6CoAAOgqAAAAKwAA6CsAAOgrAAAALAAA6CwAAOgsAAAALQAA6C0AAOgtAAAALgAA6C4AAOguAAAALwAA6C8AAOgvAAAAMAAA6DAAAOgwAAAAMQAA6DEAAOgxAAAAMgAA6DIAAOgyAAAAMwAA6DMAAOgzAAAANAAA6DQAAOg0AAAANQAA6DUAAOg1AAAANgAA6DYAAOg2AAAANwAA6DcAAOg3AAAAOAAA6DgAAOg4AAAAOQAA6DkAAOg5AAAAOgAA6DoAAOg6AAAAOwAA6DsAAOg7AAAAPAAA6DwAAOg8AAAAPQAA6D0AAOg9AAAAPgAA6D4AAOg+AAAAPwAA6D8AAOg/AAAAQAAA6EAAAOhAAAAAQQAA6EEAAOhBAAAAQgAA6EIAAOhCAAAAQwAA6EMAAOhDAAAARAAA6EQAAOhEAAAARQAA6EUAAOhFAAAARgAA6EYAAOhGAAAARwAA6EcAAOhHAAAASAAA6EgAAOhIAAAASQAA6EkAAOhJAAAASgAA6EoAAOhKAAAASwAA6EsAAOhLAAAATAAA6EwAAOhMAAAATQAA6E0AAOhNAAAATgAA6E4AAOhOAAAATwAA6E8AAOhPAAAAUAAA6FAAAOhQAAAAUQAA6FEAAOhRAAAAUgAA6FIAAOhSAAAAUwAA6FMAAOhTAAAAVAAA6FQAAOhUAAAAVQAA6FUAAOhVAAAAVgAA6FYAAOhWAAAAVwAA6FcAAOhXAAAAWAAA6FgAAOhYAAAAWQAA6FkAAOhZAAAAWgAA6FoAAOhaAAAAWwAA6FsAAOhbAAAAXAAA6FwAAOhcAAAAXQAA6F0AAOhdAAAAXgAA6F4AAOheAAAAXwAA6F8AAOhfAAAAYAAA6GAAAOhgAAAAYQAA6GEAAOhhAAAAYgAA6GIAAOhiAAAAYwAA6GMAAOhjAAAAZAAA6GQAAOhk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AgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQI/KcFCAgEAgEBAQIGAgICAQQBBgIKAwQBAwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQLwBAUEBAMEAgIHAgMFAgQBAgMMCgMEAgQBAQQDBAQJCAUHAw8CAQYFCAEBAQYBAgECAQICAgkBAgIDBAj9rQQIBAMCAgIFBgwGAQwBBgcDAQMDAQcHAwEHBwEDAQMECAQEDAQEBAQJBAQEBQIBAQQEAxUDBAoHGQMKAgMDAwMDAwMCBgMCAwIDAggBnAUEBAEHChwLBxIECwQHBAQHBAgEEAgEAwICAQQEAwQFDAUNBAUEBQgFJgQJBAQEBAQEAQQDAQMBAwQECAQJBAICAQIGAwQF/kQEBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNAhIFBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAH6/sgBODFaPrq6fQHyAQEBAQcCAgQDBAQECQQFBgMCCQIBAQEBAQECBQECAwMIBAUECQMDAwcBAQEBUwECAgQHCQkKAQkHBgcDBAMEAwQHCAcUBA0EBCADAwICAgIDAwgJBQYFBQQBBAEEBRwNBAEIBAEEBAQIAQMBAwEDBAgDAQMEAwEGBAcIAQQEAQMEAwEDDAMBAwEDAQgEBAQBBAQEAQQNFwUFBAEEAQkFCgUMBAUEBAMEAQIFBwweCAQJBBQHCAcEAwQDBAMHBgQDBwUEBAkEBAMEAQICBQwFCQQDBgIBAQEBAQICBwICAwICAgECAwMIBQkIAwUCAQIBAgECAgIJAgEBAScCAwUCBAECDwMCAQIJDAkBCQQDAwEDAwEDCwcHCQkEAwQEAQEEAwwDBAYDAwIDAwMDAwMCAwMCAwIDAgMCAwQDFgMDCAkJBwMEOwECAwMEDQULAgMDAwMDAwIDAwojAwcDBwQOCwMHAwgDAwIBAQMCBAgJBAIECQQEBAQEBQMBAwEDBAEDEAQDAQMIAwEKAQMDAQMDAQMDAQYECQEDAgMDqQEEBAMECAQECQUECQ0EGwUNCQQECQQBBCIEBQEE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BgcDBAMEAwQHCAQEBwIBAgIDBAgEAq8ECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQIBPymBAQIBAIBAQECBgICAgEEAQYCCgMEAQMGBAUJBAQEAwQCARIBAgECAQICAgcCAQEBAQIHAwUElAUEBgICAQIDAwUEAQQNCQENAQQFBQQBBAUFCgUZAQQBFAYFBQULCgkFBAQDBAECAwMEBxMFBAUFBAUFBCUeCAQECQwDDQ0CGgQFAwEUBAQJCBYsBQUEBQUFBAUbBAYEAQECAwMEBAQJAwYFCwUFBQYUAR4FCgUFBAEEAQQFHA0EAQQFAwIBAgIDBAgEAjQBSzs5gFkeFRVtQD5xGhUnASI9JTduHRUHGjhNUSElLDISIzYBDxEDAwEGGSJECO0BAgIFDAUJBAMGAgEBAQEBAgIHAgIDAgICAQIDAwgFCQgDBQIBAgECAQICAgkCAQEBJwEBAwUCBAECDwMCAQIJDAkBCQQDAwEDAwEDCwcHCQkEAwQEAQEEAwwDBAYDAwIDAwMDAwMCAwMCAwIDAgMCAwQDFgMDCAkJBwMEPAEBAwMEDQULAgMDAwMDAwIDAwojAwcDBwQOCwMHAwgDAwIBAQMCBAgJBAIECQQEBAQEBQMBAwEDBAEDEAQDAQMIAwEKAQMDAQMDAQMDAQYECQEDAgMDAqsBBAQDBAgEBAkFBAkNBBsFDQkEBAkEAQQiBAUBBAQDAwIBAgIDBAgJBQQSBAsEBwQEBwQIBB4ECAQHBAQHBAQJBAQEAwQBdwECAwMIBwQHBBoDCwsHBgQDBxQPAwcBCAUEBQgDAwICAgIHAQMVAQMLAQcQBAQMBAQEBAQECQQmBQUIBAQDBKECAgMDBAkJCQYBDAEGDAYFAwMCAQQBBAECBQQCAgEBAQQBAQEGAQEBAgEBAgMHBQQFBAgDAwkCAQYDEAMGAwIDAgMCAwIDBgIDAwMDAwcDTQECAQMGDAMDBQMCAQEBBAMDBAkFBAgDAwIBAQEBAgkCAgIBAgECAQEBAgICAQEBBAEBAQUEAwUEBQgIAwIBAs4BAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwIKAQQEAQMEAwEDDAMBAwEDAQgEBAQBBAQEAQQNFwUFBAEEAQkFCgUMBAUEBAMEAQIFBwweCAQJBBQHCAcEAwQDBAMHBgQDBwUEBAkEBAME/sUBBAgEBAQEHgUKBQUFBQkFJwUEBQkKBDIEBQQIBAYCAgYICgUZAQQBFAYFBQULBiYFBgULBgsGFgYJCAMDBBABAQYICAkGEQUGBQYLBSEGCwUFCgYPAQQBGQUKAQQGAgEBAwIECAkIASkEBQUEBQUJBSIFCQUFBQUKBRcFBAcCAv6yAQMGBAkFBAQEAgUDBAkBBgkDAgECAwIBAgMEAwoCCAECAQICAwECAwMIBQQJBAMDAwQCAQIBAgECARAQBgIDBQkDCgMDAQICAg8CAwUGDBQBAgECAQIBAgYCBgkEBQQEBAMDAgEBAQICAgECAQgMAwQDAgECAwIBAhIBCQQDBQQEBAUJBAMDBAAAAAYAAP+VA74DJAAbADEASQBgAG0AegAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NhcUFSMVMxUzNTM1IzUHMjMVMxUjFSM1IzUzAfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUoYn596n59hJSSfn0mgoAMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IitdTk58nJx8nBidSp2dSgAABwAA/5UDvgMkABsAMQBJAGAAaQBtAHMAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBg8BFzUXEQcnFBUnJRQVJyYnAfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpFNmwv0crKGI8BWSpDIgMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IiujJk0hlI+PASiPYGRlZGVlZR4wFwADAAD/mgO4AyIAEAAUAEIAAAEiBwEGFBcBFjI3ATY0JwEmBwkCNyIPBB8CDwIfBD8CHwI/BC8CPwIvBA8CJzUnAfQPC/5hCgoBnwsfCgGfCwv+YQsPAYb+ev569AICBA8DAQEDiYkDAQEDDwQEBQSJiQQFBAQPAwEBA4mJAwEBAw8EBAUEiYkEAyIL/mEKHwv+YQoKAZ8LHwoBnws+/nr+egGGrQEDDwQEBQSJiQQFBAQPAwEBA4mJAwEBAw8EBAUEiYkEBQQEDwMBAQOJiQECAAAAAAEAAP/fA48C7QARAAABBgcGBxYfAQAHFhcBFh8BNjcDj1BRs1sWKhr+25YLFgG7FCgeMFoC7SkoWisUKxr+15cLFAHAEykeYK0AAAADAAD/lgO/AyIAGwAyAEsAAAEiBwYHBgcGFhcWFx4BNzY3PgE3NicuAScmJyYHNhcWFxYXFgYHBgcGJicuATY3Njc+AQcGBxcGBxYXNxc2NycmJzc2NyYnBg8BJicB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNSRx06cDg2KixucToeJjIZJTEYKiwZMCUZMgMiNzZbXWtct0dKJyYLHB07OaFYW1NViykqBAGOAikoRUdPSYkuMQwOKTAxh5c+QSMVFm4eOnE2OCwqbnA6HSYyGSUwGSwqGDElGTIAAAoAAP+SA8EDIwAcADcAUQBqAG8AcwB3AHsAfwCDAAABIiMiBwYHBgcGFhcWFx4BNzY3PgE3Ni4BJyYnJgcyMzYXFhcWFxYGBwYHDgEnJicmJyY3Njc+ARciIyIHBgcGBwYWFxYXFjY3Njc+AScmJy4BBzIzMhcWFxYXFgYHBgcGLgEnLgE3Njc+AQcVESERBTMRIxMVMzUHFTM1BxUzNQcVMzUB8wECY15bQEIWFR4uL0hIsllcS0poFRYbXkhJVjg7BQVcVlQ5Og8QKjQ1Sky0U1U7PR0cCQouNbhuBQVUT0syNAkLNjg6TEidRUYtMB4UFTYzjk8DA0tFQyssBgg3NThFRI92ICICHyE6KGNkAS7+6v7+GsrKysrKysoDIi4tTlBhVrNNTjM1Kg4PMC6RVletmzY3FA4xAS0rTE1bUqhERicqCiAhQD9XVFlbSldpKysqSElUT507PBsbDSUmP0CjT1I7OkMwJyZAQUtHizI0EhQbVT5AlkJFKx8ieQz+kAF8GP60AScZGUoYGFUYGE0YGAAAABAAAP+jA7gDIgALABcAWgCyAQgBSwGgAf0CSAKKAs4DEQNoA7UEAQRLAAABFSMVMxUzNTM1IzUHMxUzFSMVIzUjNTMTMSMHIwcjFSMHIw8HFR8EMzczNzM3MzczNzMXMxczFzMXMxczPwU1LwUjJyM1IycjJxcjDwUfGT8ENS8DIyc1JzUnIy8BIy8BNScjJzUvASMvATUnNScjNScjJyMvATUvASMnNScjLwEFIw8CFQcjDwEVDwIVBxUHFQ8BIw8BFQ8CFQ8BIw8BIw8BFQcVDwEjDwIVHwUzPxk1LwQhMSMVIw8DFR8EMzczNzMXMxczFzMXMxczHwYzPwU1LwIjLwkjJyMnIycjNQcjDwIjDwEVByMPASMHFQcjByMHIwcVDwMjFQ8BFQ8CIw8BHwUzPx0zPwMvAwUPBR8WFR8EMz8ENSc1Lwg1JzUvBCMnIyc1LwEjJzUnNS8BNSMvATUnIyc1LwI1LwMFIw8FFSMVBxUHFSMVBxUXFTMVFxUXFRcVHwkzPwQ1LwI1JzUnNSc1JzUnNTc1NzU3NTc1NzUvBAUjDwMVBxcVBxUHFQcVBxUPCBUfAzM/BjU3NT8HNTc1MzU3NTc1JzUvAwUjDwMVFxUXFRcVFxUfBxUXFR8CMxUfAzM/BDUvCzUnNSc1JzUnNS8EBSMPBRUHFQ8PFR8FPwI1PwE1NzM3NT8CMz8KNTcvBAUPBR8CFRcVFzMXMx8CMx8BMxUXFRcVFzMfATMXMxcVFxUfARUfAhUfAjM/BTUvHAUjDwgjByMHIwcjByMHIw8EFR8FMzczNzM3MzczPwszNzM/ATU/ATU3NT8ENS8EBQ8FFR8FMx8BFRczFzMfARUfATMXFR8EMxczHwYzPwU1LxYhIw8XFR8GMz8IMz8ENTczNzM3NT8BNT8BMz8ENS8EAa59fYx9fXVefX1efX0vCwYLBQwFBQYmBgoIBAIDAQECBgQJBCsFCQUFBQUKBR4FCgUFBQUKBBgJBQQDBAQBAQQDBAcmBQYFCwYLBvQFBAUDBAQCAggCDAcIBwQDBAMEAwcGBw8CCQIDEQQDBAkJBAQDBAECAwIBAgMCAQISAQkEBgEDBAMBAwgEAwEDAQMBCAQEBAEECAEECv3xBQQIBQQBBAQEDAQEBAgDAQMEAwQDBAkBDwIBAgMDBQIBBAMDAQIDAwgECQUHBQUQBgIGAg8HBgcDBAMEAwQHCAQEBwIBAgIDBAgBBBINCgUHBgICAwgIBAEIBCYECAMEBAQHBAgDGgMIBwcDCQUEBAQDBAEEAwcBAwUEBAQEBAkEJgQJBQQEBQ2tBAgGBwEDCAMBFQMBAwMBCQEMAQkJAwMCAQIDAwgEAQQCAgIDAwgEBQQJAwgDAgQDAgMCAwIDAgMDAwIDAwMDAwMDAwYDIwIDBAQCAgUECAGEBQgEAwMDAQYDAwIDAgMCAwIDBxYBBAEEAQYDAgIEBAMEBQkEBAQDBAECAgIBAgECAQICAgEBAQgBAQECAgQBAgcDAgECAwIBAgYDCQMDAwT9wwUECAMDAgIBAgEBAQEBAQIBCAIBAQEDAwQEBAUJBAMDBAECBQMCAQEBAQEBAgEBAgMDCQLuBQQIBgIBAQEBAQIIAgECAgQBFgEBBAMMBQkEBgUEAwoCCAECAQICAgcBAQEBAQQDBAj8pwUICAQCAQEBAgYCAgIBBAEGAgoDBAEDBgQFCQQEBAMEAgESAQIBAgECAgIHAgEBAQECBwMFAvAEBQQEAwQCAgcCAwUCBAECAwwKAwQCBAEBBAMEBAkIBQcDDwIBBgUIAQEBBgECAQIBAgICCQECAgMECP2tBAgEAwICAgUGDAYBDAEGBwMBAwMBBwcDAQcHAQMBAwQIBAQMBAQEBAkEBAQFAgEBBAQDFQMECgcZAwoCAwMDAwMDAwIGAwIDAgMCCAGcBQQEAQcKHAsHEgQLBAcEBAcECAQQCAQDAgIBBAQDBAUMBQ0EBQQFCAUmBAkEBAQEBAQBBAMBAwEDBAQIBAkEAgIBAgYDBAX+RAQFBAYCAgECAwMFBAEEDQkBDQEEBQUEAQQFBQoFGQEEARQGBQUFCwoJBQQEAwQBAgMDBAcTBQQFBQQFBQQlHggEBAkMAw0CEgUEBQMBFAQECQgWLAUFBAUFBQQFGwQGBAEBAgMDBAQECQMGBQsFBQUGFAEeBQoFBQQBBAEEBRwNBAEEBQMCAQICAwQIAiF9jH19jH0XfV59fl0BlQEBAQEHAgIEAwQEBAkEBQYDAgkCAQEBAQEBAgUBAgMDCAQFBAkDAwMHAQEBAVMBAgIEBwkJCgEJBwYHAwQDBAMEBwgHFAQNBAQgAwMCAgICAwMICQUGBQUEAQQBBAUcDQQBCAQBBAQECAEDAQMBAwQIAwEDBAMBBgQHCAEEBAEDBAMBAwwDAQMBAwEIBAQEAQQEBAEEDRcFBQQBBAEJBQoFDAQFBAQDBAECBQcMHggECQQUBwgHBAMEAwQDBwYEAwcFBAQJBAQDBAECAgUMBQkEAwYCAQEBAQECAgcCAgMCAgIBAgMDCAUJCAMFAgECAQIBAgICCQIBAQEnAgMFAgQBAg8DAgECCQwJAQkEAwMBAwMBAwsHBwkJBAMEBAEBBAMMAwQGAwMCAwMDAwMDAgMDAgMCAwIDAgMEAxYDAwgJCQcDBDsBAgMDBA0FCwIDAwMDAwMCAwMKIwMHAwcEDgsDBwMIAwMCAQEDAgQICQQCBAkEBAQEBAUDAQMBAwQBAxAEAwEDCAMBCgEDAwEDAwEDAwEGBAkBAwIDA6kBBAQDBAgEBAkFBAkNBBsFDQkEBAkEAQQiBAUBBAQDAwIBAgIDBAgJBQQSBAsEBwQEBwQIBB4ECAQHBAQHBAQJBAQEAwQtAQQIBAQEBB4FCgUFBQUJBScFBAUJCgQyBAUECAQGAgIGCAoFGQEEARQGBQUFCwYmBQYFCwYLBhYGCQgDAwQQAgYICAkGEQUGBQYLBSEGCwUFCgYPAQQBGQUKAQQGAgEBAwIECAkIASkEBQUEBQUJBSIFCQUFBQUKBRcFBAcCAjkBAgMDCAcEBwQaAwsLBwYEAwcUDwMHAQgFBAUIAwMCAgICBwEDFQEDCwEHEAQEDAQEBAQEBAkEJgUFCAQEAwSgAQQDAwQJCQkGAQwBBgwGBQMDAgEEAQQBAgUEAgIBAQEEAQEBBgEBAQIBAQIDBwUEBQQIAwMJAgEGAxADBgMCAwIDAgMCAwYCAwMDAwMHSgECAQMGDAMDBQMCAQEBBAMDBAkFBAgDAwIBAQEBAgkCAgIBAgECAQEBAgICAQEBBAEBAQUEAwUEBQgIAwIBJwEBAwYECQUEBAQCBQMECQEGCQMCAQIDAgECAwQDCgIIAQIBAgIDAQIDAwgFBAkEAwMDBAIBAgECAQIBEBAGAgMFCQMKAQICAg8CAwUGDBQBAgECAQIBAgYCBgkEBQQEBAMDAgEBAQICAgECAQgMAwQDAgECAwIBAhIBCQQDBQQEBAUJBAMDBAAAAAAIAAD/mgO4AyIAFAApAC4AMgA2ADoAPgBCAAABIgcGBwYUFxYXFjI3Njc2NCcmJyYHMhcWFxYUBwYHBiInJicmNDc2NzYHFREhEQUzESMTFTM1BxUzNQcVMzUHFTM1AfR6amY8Pj48Zmr0amY8Pj48Zmp6bl5bNTc3NVte3F5bNTc3NVteKQEu/ur+/hrKysrKysrKAyI+PGZq9GpmPD4+PGZq9GpmPD4xNzVbXtxeWzU3NzVbXtxeWzU31Qz+kAF8GP60AScZGUoYGFUYGE0YGAAAAAoAAP+iA7gDIAAPACAAMgBtANYBXwG8AgMCTQK5AAABJgYHBh4CNz4BNzYmJyYHNh4BFxYGBw4BLgI2Nz4BFwYPAQ4BFhcWPgE7ATUjNjcmAysBByMHIwcVDwUVHwUzPwMzNzM3MzczFzMXMxczHwEzPwM1LwQjNSMnIycXDwYVHwozHwYVHwIzHw0zPwQ1LwE1JyMvBiMvATUjLwsjLwEjLwcjNSc1LwQjBQ8BIw8EFQ8EFQcjBxUPAyMVBxUHIxUPBBUHIw8BFQ8CFQ8CIw8DFQ8DFQcVDwoVBxUfBD8EMz8ENT8mNS8DAQ8FFRcVBxUHFQcVBxUHFQcVBxUHFQcVBxUHFQ8HFR8EPwUzPwEzPwE1PwEzNzM3NTc1MzU3NTc1NzU3NTc1NzU3NTc1JzUvBAUPBRUXFRcVFzMfBTMfARUXFRcVFxUzFxUXFR8EPwQ1Lw01JzUnNSc1LwMBDxcfBD8EMz8DMzczNzM3MzczNzU3Mzc1NzM/AjM3MzU/AzUvBAUPBRUfAxUfATMfAjMfAhUfATMfARUfATMXMxczFzMfAjMXMxcVMx8HMxcVFzMVMxczPwQ1LwQjJyMnIycjLwojLwQjLwUjAfRAbxcZGFZ+Oj1RAQREOSsyJkgzCQ8tMSFQSzgaCRYYUGMJFB0JCQQIBAkNBFlZEiYOOwcNBg0NBycNDgQDAwQBAgMDCQQFBgwGFwYLBgYGBikGBgYGBgUfBAUMAwMCAgYDCicGBwYNB+kFBAQDAwECAgIGAgIDBgUEAwgBDgIIAgYCBAECAgECAwIDBQQDBAMKBQYDCQQJBAQDBAIEBgEEAwIDAgMCAQIIAQUDBAIEAgIFAgcCAgECCQECAgMHAwIDAgECAwIGAgoF/fMFBwECAwIDAgMCAwIDBAECAgMCBAEEBAECAgICAgIBAgICBAICBAEBAQIDAgIKAQICAgEEAQIBAgECAQICAQQEAw4ECAQDAQECAwECAgIBAgECAQIBAgIDAgECCAIBAgICAQQCBAEGAgoCBgMKAwYDBQMCAQQGCAUCsgQFAwYCAQEBAQEBAQECAQMFAwUDBAMCBgMBAgMGBAkJBAQDAgEBAwIBAgMDAgEFAQwDAQIBAQEBAQEBAQQDBAQI/KYEBQMEBAEBAwIBAwIBBAEKAQQDAgMCAQIDAQIEBwkJBAQDBAIEAgMCBwQBBgECAQIIAQEBAQUICAKxBAQJBAUKBA8FBQsPBgULBSEGCxAIBAUCAgQDBA0JBgYUBQESBgcFAQUBBQEFARwBCwUBBQUBBQsPAQQBAwMCAQQDBAQI/d4EBAQDAgIBAgMEDQIBAgMCAQIDAwsCAQgDAwUBAgECAQIBAgMDAQIBAgECBAMGAw0DHQIDDQQDDQkFCAUCAQQDBAQDBAgDFAIRAwkFEQIGBQMFBQUCAQ8CBQICAQQDBBEEBAUCNAFLOzmAWR4VFW1APnEaFScBIj0lN24dFQcaOE1RISUsMhIjNgEPEQMDAQYZIkQIAUgBAgYBAgQCAwQICQUEBAMEAQICAgQCAQEBAQEFAQYEAwkFCAgCBAYBAQFPAQEDAwQEBAUJBAYBAgEGAwQCCA4DCAMGAwQBAgIDBAMEAwcHAwgDEgoIAgQCAgMDCAoHBwEMCAQEBAQEBAQLAQcDBgIGAgMFAwcDAgMJAwICBwICAgIBAQECAgQCBQwBBAICAgICAQICAgICAQQCAQICAwQBBAEEAQIDAgMCAQIDAgECBgIBAgYDAwIFAgECDwMCAQIBAgMGAwMDAwMDAwMBBAkFCAMDAwEEAwMEBgUDAgUBAgMCAwIDAgMDAgUCAwIMAgMCAwIDBAMEAwYDCgMGAgoBBgIFBAQECQkGBAH+xgECAggEBAQEMwMJAwYCBgMDAwMDAwYCAwMJAg4DCAENBQsFBgoHBAUJBAYCAgICAwMDAwYGBgUBBQcPJgMKAwMHAwMEAwMEAwMEAwcDDgMsBQkIBAIDAhMBAgMDCAQbBgcTBw0TBgcNBh8NBQEFAQUBBQEFAQUBAQQEBAICAgMDCQkIBgYFBhALBhEFBgYFLwYFBgYMBgcFBwYC/rIBAgYEBAYECQQDBQkCAwQDDAEEAwQDBwkJCAMDAwICAQYCBgMCAwIDAw8GAQMDAQMEBwwEAQMEBAQJCAQDAgICAQMCBAQJBAUEBAMBCgICAgICAgEBBwIFAQEBAwICAQIBAgEBAQEBAgICBAIJAQEEAQQBBAcFBAkIBAIDAQMHBgMDBgICAwEDAgMCCQIDAgEEAQQNAQIAAAAAAwAAAAADIAJYAAMABwALAAATFSE1BRUhNQUVITXIAlj9qAJY/agCWAJYZGTIZGTIZGQAAAUAAP/TA9QC6QAaAFQAdACIAJwAAAEiBgc5ARQXFhcGBwYPARUhNScmJzY1OQE0JgcyMxcWFxYfARYXFjMxMj8BFhUUBwYHFxYXFhUWFRQPAQ4BIiYvASY1NDc0NzY/AScuATU0NzI3MzYHMDEGFxYXHgEyNjc2NzYnMDEWFxUjNSMVIzUjFSM1NhMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASMhIi4BNRE0PgEBSCUyAQoGCSIXHg8BAUwBGksXMUkCAgQPCQYGAgUDBgoMCgQGBQYSAgYKAgEBAQkeJB4JAQEBAgoFAgQKDggDAQIJIgIBAgYMJiomDAYCAQIyEjAUnBUvEw41WTU1WTUCOjVaNDRaNf3GAjolPiQkPiX9xiU+JCQ+AmMxIxIWDgsMDxQcAoWFAjEaFyojMS8BAQICBAEEAQIFAwwPFg0PCxIBBAYGBAkCAgEKCgoKAQICCQQGBgQBFAMIIg4REAEDggwGDAUNDQ0NBQwGDBYgbExMTExsIgFLNFk1/m41WTQ0WTUBkjVZNDwkPSX+biU9JCQ9JQGSJT0kAAAAAAUAAAAAA48CkwADAAcACwAPABMAABMRIREFMxUjNyEVIQczFSM3IRUhWQM2/O2fn8ICLv3Swp+fwgIu/dICk/2XAmnRra2tI6WlpQADAAAAAANSArwABAAIABQAABMVESERBSERIQEVIxUzFTM1MzUjNZYCvP1wAmT9nAEFm5tam5sCvBn9XQK8LP2cAfqbWpubWpsAAAAABAAA/5YDvQMiABcAMwA/AEsAAAEiDgMWFx4CNz4BNzY3NicuAScmIxcyFxYXFhcWBgcGBwYHBicmJyYnJicmNz4CFwcVIxUzFTM1MzUjNQczFTMVIxUjNSM1MwHwV6V/RAFAPTuhsFFUhicpAwYeHnZOXmsIVVBOOToWFxcrLERGWlhWWENDJyYDAyMecpRPRn19jH19dV59fV59fQMiRn2hs6Y+P0kJHh16UVNYV1VThyYvMScmQkRST6dISi80EA8WFjk1UU9XWk5JcD4B0H2MfX2MfRd9Xn1+XQAAAAAEAAD/lgO9AyMAFgAxADsARAAAASYOAxYXHgI3PgE3Njc2Jy4BJyYHNhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AhcGDwEnAzc2NxcDFhcWFzcHJwcB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpT8ESIzgHQXSCOGiQcOQyIeHXwyAyIBRn6hs6Y+P0kJHh16UVNYV1VThyYvMQEmJUNEVE+nSEovNBAPFhY5NlBPV1pOSXA+0yNFaab+qh5bLpoBBgkSVSpDdJFNAAAGAAD/lQO+AyQAGwAxAEkAYABkAGkAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBgchAxYXITYB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SlVgYAGAwGQz/tIzAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK2OsrQEmtFpaAAAAAAYAAP+VA74DJAAbADEASQBgAGoAdQAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NgUGDwEnAzc2NxcDFhcWFzcHJwcGBwHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1KAQIRIjOAdBdII4aJBw5DIh4dfA4ZCwMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9Iit2I0Vppv6qHlsumgEGCRJVKkN0kRYkEwAAAwAA/5YDvwMiABsAMgA7AAABIgcGBwYHBhYXFhceATc2Nz4BNzYnLgEnJicmBzYXFhcWFxYGBwYHBiYnLgE2NzY3PgEXBg8BFzUXEQcB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNSGTZsL9HKygMiNzZbXWtct0dKJyYLHB07OaFYW1NViykqBAGOAikoRUdPSYkuMQwOKTAxh5c+QSMVFqImTSGUj48BKI8AAAAEAAD/8AOrAswAEwAnACsAOAAAEyIOARURFB4BMyEyPgE1ETQuASMFITIWFREUBisBESERIyImNRE0NhMhESE3HQEjFTMVMzUzNSM12CpHKipHKgI5KkcpKUcq/ccCOSw+Pix0/q5zLT09vwEU/uxzTU0uTU0CzClHKv5YKkcpKUcqAagqRykwPiz+WCw+ATT+zD4sAagsPv6Z/uztFzYuTU0uTQAAAAAEAAD/8AOrAswAEwAnACsALwAAEyIOARURFB4BMyEyPgE1ETQuASMFITIWFREUBisBESERIyImNRE0NhMhESE3FTM11ypHKSlHKgI6KkcpKUcq/cYCOiw+Pix0/q50LD09vwEU/uwlywLMKUcq/lgqRykpRyoBqCpHKTA+LP5YLD4BNP7MPiwBqCw+/pn+66cvLwAAAgAA//ADqwLMABMAIwAAEyIOARURFB4BMyEyPgE1ETQuASMFITIWFREUBiMhIiY1ETQ21ypHKSlHKgI6KkcpKUcq/cYCOiw+Piz9xiw9PQLMKUcq/lgqRykpRyoBqCpHKTA+LP5YLD4+LAGoLD4AAAMAAP+WA78DIgAbADIAPAAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnJgc2FxYXFhcWBgcGBwYmJy4BNjc2Nz4BFwYPAScDNzY3FwHrbGNgP0AKCzk9PlROtFNXQENQCAcdG3lRU1kND09IRyssAQNAOTxIRpA3OTIQJihAI1LWESIzgHQXSCOGAyI3Nltda1y3R0onJgscHTs5oVhbU1WLKSoEAY4CKShFR09JiS4xDA4pMDGHlz5BIxUWdSNFaab+qh5bLpoAAAYAAP+VA74DJAAbADEASQBgAGsAeQAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NhcGAgc2NzY3FyYvARYfAScGBwYHBjc2NzYB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SlUYTRcXKicUfRkxMgwWIkQIGRIGCgELFBYDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrb0L+80EXMCsVh06eUSRJbkoHHRQHCwYhQ0wAAAAABwAA/5IDwQMjABwANwBRAGoAewCNAJ8AAAEiIyIHBgcGBwYWFxYXHgE3Njc+ATc2LgEnJicmBzIzNhcWFxYXFgYHBgcOAScmJyYnJjc2Nz4BFyIjIgcGBwYHBhYXFhcWNjc2Nz4BJyYnLgEHMjMyFxYXFhcWBgcGBwYuAScuATc2Nz4BFyIGBwYeAjc+ATc2JicmIxcyHgEXFgYHDgEuAjY3PgEfAQYPAQ4BFhcWPgE7ATUjNjcmAfMBAmNeW0BCFhUeLi9ISLJZXEtKaBUWG15ISVY4OwUFXFZUOToPECo0NUpMtFNVOz0dHAkKLjW4bgUFVE9LMjQJCzY4OkxInUVGLTAeFBU2M45PAwNLRUMrLAYINzU4RUSPdiAiAh8hOihjLz9sFxkYVn46PVEBBEQ5KzIEJUYyCQ8tMSFQSzgaCRYYUCw3CRQdCQkECAQJDQRZWRImDgMiLi1OUGFWs01OMzUqDg8wLpFWV62bNjcUDjEBLStMTVtSqERGJyoKICFAP1dUWVtKV2krKypISVRPnTs8GxsNJSY/QKNPUjs6QzAnJkBBS0eLMjQSFBtVPkCWQkUrHyJhSjs5gFkeFRVtQD5xGhUnIzwkN24dFQcaOE1RISUsATESIzYBDxEDAwEGGSJECAAEAAD/lgO9AyMAFgAxADwASgAAASYOAxYXHgI3PgE3Njc2Jy4BJyYHNhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AhcGAgc2NzY3FyYvARYfAScGBwYHBjc2NzYB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpRPGE0XFyonFH0ZMTIMFiJECBkSBgoBCxQWAyIBRn6hs6Y+P0kJHh16UVNYV1VThyYvMQEmJUNEVE+nSEovNBAPFhY5NlBPV1pOSXA+zEL+80EXMCsVh06eUSRJbkoHHRQHCwYhQ0wABAAA/5YDvQMjABYAMQA1ADoAAAEmDgMWFx4CNz4BNzY3NicuAScmBzYXFhcWFxYGBwYHBgcGJyYnJicmJyY3PgIXBgchAxYXITYB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpRPYGABgMBkM/7SMwMiAUZ+obOmPj9JCR4delFTWFdVU4cmLzEBJiVDRFRPp0hKLzQQDxYWOTZQT1daTklwPsCsrQEmtFpaAAcAAP/TA9QC6QATACcAKwAzADcAOwA/AAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BFxEhEQUhFSE1IxUjFTMVIzchFSEDFSE11zVZNTVZNQI6NVo0NFo1/cYCOiU+JCQ+Jf3GJT4kJD4BAfr+GwHP/qkWYmJieAFX/ql2Ac0C6TRZNf5uNVk0NFk1AZI1WTQ8JD0l/m4lPSQkPSUBkiU9JEj+hAF8g2hnZxVmZmYBTmxsAAACAAAAAAN9ApMASgCzAAABIgc5AQYHOQEGBzkBBgcGHQEUFzAxFhcWMxY3OQEyNjU0JzMyNzY3MTYnPgE0Jy4BKwE2NTkBNCcuASMFNzY/ATY3PgEnLgEvATEHMDIVMhc5ARYGBzkBBg8BDgEVFBcxHgEXFjsBFjczMhYXFhQHBisBFSEyFhcWFTEUBiMhFSEyFhcWBzkBDgEjIRUzMhYXFhU5ARQHDgEjBic5ASInJic1Jj0BNDc2NzY3MTY3MTYzNDMBzA0SPbgvEwgCAQgQLShB3NsaHQUQGg4NBgYMGxsOCBgOFQYPCBgO/sMFBgQOEwYPBA0GEgoFAQEFBQUCBwgdDBYKAgIFBwMCDEuWcQYIBAgHBA/yAT4GCAQHCg/+wgEPBwkECAMDCwv+8c0FBgMGBgIGBtvbOR4hDQcBAgYRJMMxBwQBApMKKIAgPxggEyQNMSJBHhoBASMcDxEOCxgeFwMhOxQKDQ4RHRMLDAEFBwMOFQcTLhIKDAIBIwEIBxoJCh0MFQ0GAwYFBgEBAQEEBQwfCQYjBAUKEhMMIwYGDRUMCSMDBAgRDwgDAgEBFBY0AR4sCiQSHRUzGYcgBAEAAAMAAAAAA4oCagADAAYACwAAExEhEQUhBSUFJREhXwMr/SgChP6+/o4BcgFz/RsCav3pAhcj1Mr09P45AAIAAP/TA9QC6QATACMAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyFhURFAYjISImNRE0Nuc5YTk5YTkCGjlhOTlhOf3mAhorOjor/eYrOjoC6ThfOf6KOV84OF85AXY5XzhuOSn+iik5OSkBdik5AAAFAAD/mgO4AyIAFAApADoATABeAAABIgcGBwYUFxYXFjI3Njc2NCcmJyYHMhcWFxYUBwYHBiInJicmNDc2NzYXIgYHBh4CNz4BNzYmJyYjFzIeARcWBgcOAS4CNjc+AR8BBg8BDgEWFxY+ATsBNSM2NyYB9HpqZjw+PjxmavRqZjw+PjxmanpuXls1Nzc1W17cXls1Nzc1W15qP2wXGRhWfjo9UQEERDkrMgQlRjIJDy0xIVBLOBoJFhhQLDcJFB0JCQQIBAkNBFlZEiYOAyI+PGZq9GpmPD4+PGZq9GpmPD4xNzVbXtxeWzU3NzVbXtxeWzU3vUo7OYBZHhUVbUA+cRoVJyM8JDduHRUHGjhNUSElLAExEiM2AQ8RAwMBBhkiRAgABQAA/5YDvQMjABYAMQA2AEAARgAAASYOAxYXHgI3PgE3Njc2Jy4BJyYHNhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AgcUFSERBTIzBgcGBwYHJjcUFSE1FwH0WKaBRAFAPTuhsFFUhicpAwYeHnZOXmtWUlA6OxcXFyssREZaWFZYQ0MnJgMDIx5ylH4Bmv7BcnIPIBgNFRBA4/7InAMiAUZ+obOmPj9JCR4delFTWFdVU4cmLzEBJiVDRFRPp0hKLzQQDxYWOTZQT1daTklwPvicnAE4MQkcFgkPAjQFXV26fQAABAAA/5UDvgMjABsAMwBKAGEAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcGBwYmJyYnLgE3Njc+ARciBwYHBhUGFhcWFxY2Nz4CJyYnLgEHMhcWFxYHFAYHBgcGJicmJyY2NzY3NgHwbGRhP0ILDDc8PVNPt1ZYhE8GBh4cdU5PVgMbBWNbWDg6BghBQEJUUbFMTjAzIBYWOjqnTVtSUDEyAkxCRVJMmz5ARAQfIDwygDVRSUcpKgNJPUBKR4wzNhQVFCcoPU0DIgE2NVpda1y2SUooKAscHXekWVtTUoYoKQYCMQEzMlRXY1irQEEbHBMqLEdHs1ZZQkZOLjIwUFNbU5s1Nw4PJzAxjKJJTDIsLzEtK0hKUUqHLC0HCTEzNUVCkDs+IS0AAAAABgAA/5UDvgMkABsAMQBJAGAAaABxAAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FxQVIxUzFTcnFh8BBzUjNTMB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9Sofi4qWJESIzZt/fAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK3QyMr5kw3oUKD15NoUAAAADAAD/lgO/AyIAGwAyAD0AAAEiBwYHBgcGFhcWFx4BNzY3PgE3NicuAScmJyYHNhcWFxYXFgYHBgcGJicuATY3Njc+ARcGAgc2NzY3FyYnAetsY2A/QAoLOT0+VE60U1dAQ1AIBx0beVFTWQ0PT0hHKywBA0A5PEhGkDc5MhAmKEAjUikYTRcXKicUfRkxAyI3Nltda1y3R0onJgscHTs5oVhbU1WLKSoEAY4CKShFR09JiS4xDA4pMDGHlz5BIxUWbkL+80EXMCsVh06eAAAABQAA/6wDtgMbAAgADAAQABQAGAAAARURITUjETM1AQcXNw8BFzcPARc3DwEXNwKlARHg4P6eSzxL00s8S9JMPEvSTDxMAxsZ/LExAwUy/n48SzwsPEs7LDtMPCw8SzsABAAA/2oCogNSAAMAFAAeACkAACUhFSEBETMyNj0BNCc+AT0BNCcmIwczMhYdARQGKwEHMzIXFh0BFAYrAQKi/qQBXP6ksFVWUSMgJihUOTkfGiAiMAU1JRASHB1DKb8D6P02VFI6eyISRjccUCgqZCQoJikjbhIUMD4mIQAAAAAEAAD/mgO4AyIAEAAUAGoAbwAAASIHAQYUFwEWMjcBNjQnASYHCQIlMQ8DFS8CDwQfAiMPAxUfAzMPAh8EPwIVHwMzPwM1HwI/BC8CMz8CNS8CIz8CLwQPAjUvAgcwOQEwAfQPC/5hCgoBnwsfCgGfCwv+YQsPAYb+ev56AX0EBAIBYwMEBAQNAgEBAmOMBAMCAQECAwSMYwIBAQINBAQEA2MBAgQEEgQEAgFjAwQEBA0CAQECY4wEAwMDAwSMYwIBAQINBAQEA2MBAgSLAyIL/mEKHwv+YQoKAZ8LHwoBnws+/nr+egGGxgECAwSMYwIBAQINBAQEA2MBAgQEEgQEAgFjAwQEBA0CAQECY4wEAwIBAQIDBIxjAgEBAg0EBAQEYgECBBoEAgFjAwQEBA0CAQECY4wEAwMwAAAABAAA/5oDuAMiABAAFAAaAB8AAAEiBwEGFBcBFjI3ATY0JwEmBwkCJQ8BFyE3JxcHIycB9A8L/mEKCgGfCx8KAZ8LC/5hCw8Bhv56/noBhgfQUgEKUte7SOZIAyIL/mEKHwv+YQoKAZ8LHwoBnws+/nr+egGG4AWX/f1+h9zcAAACAAD/mgO4AyIADwATAAATBhQXARYyNwE2NCcBJiIHCQM7CgoBnwsfCgGfCwv+YQofC/6UAYYBhv56AXgKHwv+YQoKAZ8LHwoBnwsL/kcBhv56/noAAAAABAAA/5oDuAMiABAAFAAhAC4AAAEiBwEGFBcBFjI3ATY0JwEmBwkCJSIOARQeATI+ATQuAQcyHgEUDgEiLgE0PgEB9A8L/mEKCgGfCx8KAZ8LC/5hCw8Bhv56/noBhjlhODhhcmE4OGE5M1YyMlZmVjIyVgMiC/5hCh8L/mEKCgGfCx8KAZ8LPv56/noBhtI4YXJhODhhcmE4FzJWZlYyMlZmVjIAAAAAAwAA/5YDvwMiABsAMgBKAAABIgcGBwYHBhYXFhceATc2Nz4BNzYnLgEnJicmBzYXFhcWFxYGBwYHBiYnLgE2NzY3PgEXJgcOAQcGFxYXHgE3Njc2Nz4BJyYnLgEB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNSKTYyL0IJCxIOKCVpNTgsLhoZBBYWLB5LAyI3Nltda1y3R0onJgscHTs5oVhbU1WLKSoEAY4CKShFR09JiS4xDA4pMDGHlz5BIxUWUQIaGVk0ODM0KCUlBgcgHTIvbzA0IBgaAAMAAP+WA78DIgAbADIANgAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnJgc2FxYXFhcWBgcGBwYmJy4BNjc2Nz4BFwYHIQHrbGNgP0AKCzk9PlROtFNXQENQCAcdG3lRU1kND09IRyssAQNAOTxIRpA3OTIQJihAI1IpYGABgAMiNzZbXWtct0dKJyYLHB07OaFYW1NViykqBAGOAikoRUdPSYkuMQwOKTAxh5c+QSMVFmKsrQACAAD/kgPBAyMAGgAxAAABIgcGBwYHBh4BFx4BNzY3PgE3NicuAScmJyYHMhcWFxYXFgYHDgEmJyYnLgE3Njc+AQHwZF5bQUIVFCBgSUevWFpJSmkWFw4NYkpMWTQnSkRBKy0HCTAzNIaQPD4iJgcfIDwqZgMiLy1QUWJWs5syMygODy8tkVVYVlqeNjgSC44lJD4/SUaLMzUrFCcoPUCaRUgsICEAAAADAAD/lgO/AyIAGgAvADkAAAEiBwYHBgcGFhcWFx4BNzY3PgE3NicuAScmJwc2FxYXFhcWBgcOASYnLgE2NzY3NhcGDwEXITY/ASYB62xjYD9ACgs5PD5UT7RTV0BDUAgHHRt5UVNZHE9IRyssAQNAOjuOkDc5Mg8nKEBIViRHbFIBChcrEEcDIjg2Wl5rXLZHSicmCxwcOzqhWFtTVYspKgSNAikoRUdPSYkvMBopMDGHlj9BIytWGjRO/USIMTQAAAAABAAA/5YDvwMiABsAMgA3AD0AAAEiBwYHBgcGFhcWFx4BNzY3PgE3NicuAScmJyYHNhcWFxYXFgYHBgcGJicuATY3Njc+AQcWFzY3BRQVIREHAetsY2A/QAoLOT0+VE60U1dAQ1AIBx0beVFTWQ0PT0hHKywBA0A5PEhGkDc5MhAmKEAjUn5WVThy/oUBmskDIjc2W11rXLdHSicmCxwdOzmhWFtTVYspKgQBjgIpKEVHT0mJLjEMDikwMYeXPkEjFRaaRUUuXCCMjAESowAAAAMAAP+WA78DIgAbADIAOgAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnJgc2FxYXFhcWBgcGBwYmJy4BNjc2Nz4BFxQVIxUzFTcB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNSW+LipQMiNzZbXWtct0dKJyYLHB07OaFYW1NViykqBAGOAikoRUdPSYkuMQwOKTAxh5c+QSMVFnMyMr5kwwAAAAcAAP+VA74DJAAbADEASQBgAGUAbwB1AAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2BxQVIREFMjMGBwYHBgcmNxQVITUXAfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUp4AZr+wXJyDyAYDRUQQOP+yJwDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrm5ycATgxCRwWCQ8CNAVdXbp9AAUAAP+VA74DJAAbADEASQBgAGkAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBg8BFzUXEQcB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SkU2bC/RysoDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIroyZNIZSPjwEojwAAAAAEAAD/lgO9AyMAFgAxADsAQgAAASYOAxYXHgI3PgE3Njc2Jy4BJyYHNhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AhcGDwEXITY/ASYnFhcHIyc2AfRYpoFEAUA9O6GwUVSGJykDBh4edk5ea1ZSUDo7FxcXKyxERlpYVlhDQycmAwMjHnKUTyRHbFIBChcrEEeQfD9I5kg/AyIBRn6hs6Y+P0kJHh16UVNYV1VThyYvMQEmJUNEVE+nSEovNBAPFhY5NlBPV1pOSXA+tBo0Tv1EiDE0Slot3NwtAAAABgAAAAADRQKVACgATgBSAFYAWgBeAAABDwEGBwYHFBcWFzEWFxYXFgcGDwEhNzM+AScmJyYvASYnJjU0NzY/AQUhBgcGFQYXFhcxFhcWFxYHBgcGByE2NzYnJicmLwEmJyY3NDc2FxUzNQcVMzUHFTM1BxUzNQF8BAJUKSYCGxAoJBAXAwIWG0hKAcoFAU1FBQQXDyMNIhAUHSRNSf5EARonFScBGxAoJBAXAwEEBA0ZRf7lHxAjBQQYDyQMIg8VARwhCtzl5X3dvuUClQIBMjAuLigoGCklFR4VGhwjKysDLVctISIUJA4iFx4ZHSEqLisuHRouLigoGCklFR4VDQwODyEpFxYsLCIiFCUMIxYeGR0hJyIVFXMWFnQVFXMWFgAAAAQAAP/TA9QC6QATACcAawDGAAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BFyIHOQEGDwEGBzkBBgcGHQExFBcwMR4BMxY3OQEyNjU0JzMyNjcwMTYnPgE3NjQmKwE2NTkBNCcuASsBNzY3PgEnJicHMDEyFzkBFgYHOQEGDwEGFzEWHwEzFjczMhcWFAcGIyInFRYzMhYVMRQHDgErARUzMhYHOQEOASsBFTMxMhYVOQEUBwYHITEmJyYnOQEmNTE0NzY/ATY/ATYz1zVZNTVZNQI6NVo0NFo1/cYCOiU+JCQ+Jf3GJT4kJD6qCggXaRkdDQUBAQULNCmJiRERAwoQEQQDBwgOBAgTEw4FCgQQCMYJFAUJAgcKDAMEAwMCBAIVGQQDAgcCAjFkRAkCBQUDCGYzQ4UHCQQDBAXIqwcLAwEHB6uCBgYDAwb+7iITFgcFBgsWQUgPAgQBAuk0WTX+bjVZNDRZNQGSNVk0PCQ9Jf5uJT0kJD0lAZIlPSQoBg9IERUnDxQMFwccGCsqAgIWEAoJEQ8UDgEJBgwlHAwMEgsGBwkUBgwdCw4BFgUFDwYDFRkGBwcBAQEBBQUXBQYBFgENCwsIAwMWEA4HBxYHDAcGAwECEBMgFRoyFSAQLDIKAQEAAgAAAAADhgJgAAIABwAAEwUlBREhEQVjAZEBkfzfAyL+bgJg4+NU/kABwOAAAAAABQAAAAADLAJ3ACYATgCGAI8AmAAAARQVBgcnBxcGByMVMxYXNQc1Mzc2PwEnNxc3Nj8BNTMVMyYnJic1BxUGBycHFwYHIxU3FhcHFzcWFxUzNTY3FzcnNjczNSMmJzcnByYnNwczBxcWHwE3FwcXFh8BMxUPAQYPARcHJwcGDwEVIzUnJi8BByc3JyYvAQc1Mzc2PwEnNxc3Nj8BFyIGFBYyNjQmBzIWFAYiJjQ2AZ0WFihKKAwGODgIFDExAwYRCCIZIgwaIA4kXgYWEQ4GGxEoSicLBjk5BwsoSykTGWkZEylKKQwGODgICydLJxYWAUckAQ8eHAsiGSEIEgYDMTEDBhEIJBojDBsfDiMPHxsLJBokCBIGAzIyAwYRCCMZIwwYIg4SIC8vQC8vIBMZGSUaGgJ3HBwGDCdKKBMYahkeWwEkDh8aDCMZIggQCAMwMAcJCAQ3ZTcICyhLKBQXagEVFyhKKAwGOToGDChLKBYWaRkSJ0onDAY3IzADBhEIIhkiDBseDiMBDh8aDCMaJAgSBgMzMgMGEggkGSMMGx8OASQOHhwMIhkiCBAIA1AvQS4uQS8jGiUZGSUaAAAAAAUAAP/TA9QC6QATACcAKwAuADMAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASMhIi4BNRE0PgEHESERBSEHJxc3ESHXNVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPgECDv4oAaLR8PDx/h8C6TRZNf5uNVk0NFk1AZI1WTQ8JD0l/m4lPSQkPSUBkiU9JFP+pQFbF4mDnp7+2QAAAAMAAAAAAxECnQAgAFgAeQAAASIHDgEVOQEUFxYXBgcGDwEVITUnJicmJzY1OQE0JicmBzIXFhcWHwEWFxYXMTY/ATY3FhUUBwYHHwIWFQYPAQ4BIiYvASYnND8DJicuAScmNTQ/ATYHMBUGFxYXFhcWMjc2NzY3Nic1FhcVIzUjFSE1IxUjNTYB8CskIicQCxA7KDUaAgJCAhk0KDooJyIkaAkFGhAMCQQIBgoQGQ4CBAIKCQweBBwEAQEBARA3OjcQAQEBAQQbAwQDBxAGDQ8GDDQDAgILFiIgSCAiFgsCAwRWIFMj/vAjUyACnBUTRCYiJRoRFBojMQTn5wQwIxoUKUomRBMVUwEBBQQGAgYCAwEBCAICARQaJxYbEiAJFAgPBAQCEBISEAIEBA8IFAkiBAIFFw0fGh8ZAgXhAQwSFAsWDAsLDBYKFQ0RASY5u4SEhIS7OQAAAgAA/5YDvQMiABcAMwAAASIOAxYXHgI3PgE3Njc2Jy4BJyYjFzIXFhcWFxYGBwYHBgcGJyYnJicmJyY3PgIXAfBXpX9EAUA9O6GwUVSGJykDBh4edk5eawhVUE45OhYXFyssREZaWFZYQ0MnJgMDIx5ylE8DIkZ9obOmPj9JCR4delFTWFdVU4cmLzEnJkJEUk+nSEovNBAPFhY5NlBPV1pOSXA+AQAABQAA/5UDvgMkABsAMQBJAGAAawAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NhcGAgc2NzY3FyYnAfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpVGE0XFyonFH0ZMQMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IitvQv7zQRcwKxWHTp4AAAAABgAA/5UDvgMkABsAMQBJAGAAagBxAAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FwYPARchNj8BJicWFwcjJzYB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SlUkR2xSAQoXKxBHkHw/SOZIPwMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IitXGjRO/USIMTRKWi3c3C0AABAAAP+gA7sDIgAKABgAJgA1AEcAWABpAHcAhACTAKEArgC8AM4A3ADvAAABBgIHNjc2NxcmLwEWHwEnBgcGBwY3Njc2EwYHDgEWNzYXFjYmJyYXJgYWFxYXFj4BJy4BJyYFBgcGBwYHBgcGFjI3Njc2LgEzIgciBw4BHgE3NhcWNjQnJgcGBwYPAQYHBh4BNzY3NjQmBSYGFhcWFxYyNicmJyYFJgcGFx4BNicmNzYmBSYGFxYHBh4BNz4BJy4BBSYGFxYXFj4BJyY3LgEFJgcGBwYeATc2Ny4BBSIGFhcWFxY2JicmJyYFDgEHBgcGDwEOARY3Njc+ASYFIgYWFxYXFjYmJyYnJgUGBwYHBgcGBw4BFjc+ATc2LgEB9BhNFxcqJxR9GTEyDBYiRAgZEgYKAQsUFgxKLwwBEwxeZgwOBQwxygwPAwtMLQcZDwQYSS4E/fULCgYLCAVBIQQRGAcpUQYBDf8EChIHDQkJFAlORwwSC0LqDQ4JEAo9GQURGQYpUAgOAX8MDgIKNBkHGRAEGkQE/cMZBQsbBhgSAhoQAQ4C6Q8NAwEwBBAYBx0bBAIO/KQPDgMCMQcZDwUvAgENAuwaAg0yBg8ZCD0MAQ39qAsMAgg/VAwRAQtPNwYBnwwrCxMZDx4RDAUPDGFQCAEN/j0LDQMKWWkMDgUMZE8GAhgJCQUKDgg0WQsCEQ02ZSkHAg0CJkL+80EXMCsVh06eUSRJbkoHHRQHCwYhQ0wBdAIQBhkRBBkWARMZBAxTARMYBThbCgETDDJYIAIKAQcFCwgEPlAMEgtdQAcTDgECBBURCAMGHwQRGQYfJwIIBQwHMDAMEwELQC4HEw87ARIXBjVUCxMMXUEDqQIrVk0LAxEMUFQKDi0BGg5lXgwSAQo2eT4IChABGg5rWgoCEwxbZggLOAIpP0MMFAMLT1sJDqARFgZJHQMSGAYeQgZNAxUDBwQDAwIEGBQBAjAHFQ8nExYFSBMBFBgEFUIDAwEFAwkLAyMWBhkSAwsxIwcTDgAAAAAFAAD/lQO+AyQAGwAxAEkAYABoAAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FxQVIxUzFTcB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9Sofi4qUDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrdDIyvmTDAAAAAA0AAP+iA7gDIAAEAAgADAAQABQAGABTALwBRQGiAekCMwKfAAABFREhEQUzESMTFTM1BxUzNQcVMzUHFTM1AysBByMHIwcVDwUVHwUzPwMzNzM3MzczFzMXMxczHwEzPwM1LwQjNSMnIycXDwYVHwozHwYVHwIzHw0zPwQ1LwE1JyMvBiMvATUjLwsjLwEjLwcjNSc1LwQjBQ8BIw8EFQ8EFQcjBxUPAyMVBxUHIxUPBBUHIw8BFQ8CFQ8CIw8DFQ8DFQcVDwoVBxUfBD8EMz8ENT8mNS8DAQ8FFRcVBxUHFQcVBxUHFQcVBxUHFQcVBxUHFQ8HFR8EPwUzPwEzPwE1PwEzNzM3NTc1MzU3NTc1NzU3NTc1NzU3NTc1JzUvBAUPBRUXFRcVFzMfBTMfARUXFRcVFxUzFxUXFR8EPwQ1Lw01JzUnNSc1LwMBDxcfBD8EMz8DMzczNzM3MzczNzU3Mzc1NzM/AjM3MzU/AzUvBAUPBRUfAxUfATMfAjMfAhUfATMfARUfATMXMxczFzMfAjMXMxcVMx8HMxcVFzMVMxczPwQ1LwQjJyMnIycjLwojLwQjLwUjAV0BLv7q/v4aysrKysrKymEHDQYNDQcnDQ4EAwMEAQIDAwkEBQYMBhcGCwYGBgYpBgYGBgYFHwQFDAMDAgIGAwonBgcGDQfpBQQEAwMBAgICBgICAwYFBAMIAQ4CCAIGAgQBAgIBAgMCAwUEAwQDCgUGAwkECQQEAwQCBAYBBAMCAwIDAgECCAEFAwQCBAICBQIHAgIBAgkBAgIDBwMCAwIBAgMCBgIKBf3zBQcBAgMCAwIDAgMCAwQBAgIDAgQBBAQBAgICAgICAQICAgQCAgQBAQECAwICCgECAgIBBAECAQIBAgECAgEEBAMOBAgEAwEBAgMBAgICAQIBAgECAQICAwIBAggCAQICAgEEAgQBBgIKAgYDCgMGAwUDAgEEBggFArIEBQMGAgEBAQEBAQEBAgEDBQMFAwQDAgYDAQIDBgQJCQQEAwIBAQMCAQIDAwIBBQEMAwECAQEBAQEBAQEEAwQECPymBAUDBAQBAQMCAQMCAQQBCgEEAwIDAgECAwECBAcJCQQEAwQCBAIDAgcEAQYBAgECCAEBAQEFCAgCsQQECQQFCgQPBQULDwYFCwUhBgsQCAQFAgIEAwQNCQYGFAUBEgYHBQEFAQUBBQEcAQsFAQUFAQULDwEEAQMDAgEEAwQECP3eBAQEAwICAQIDBA0CAQIDAgECAwMLAgEIAwMFAQIBAgECAQIDAwECAQIBAgQDBgMNAx0CAw0EAw0JBQgFAgEEAwQEAwQIAxQCEQMJBRECBgUDBQUFAgEPAgUCAgEEAwQRBAQFAhwM/pABfBj+tAEnGRlKGBhVGBhNGBgCLQECBgECBAIDBAgJBQQEAwQBAgICBAIBAQEBAQUBBgQDCQUICAIEBgEBAU8BAQMDBAQEBQkEBgECAQYDBAIIDgMIAwYDBAECAgMEAwQDBwcDCAMSCggCBAICAwMICgcHAQwIBAQEBAQEBAsBBwMGAgYCAwUDBwMCAwkDAgIHAgICAgEBAQICBAIFDAEEAgICAgIBAgICAgIBBAIBAgIDBAEEAQQBAgMCAwIBAgMCAQIGAgECBgMDAgUCAQIPAwIBAgECAwYDAwMDAwMDAwEECQUIAwMDAQQDAwQGBQMCBQECAwIDAgMCAwMCBQIDAgwCAwIDAgMEAwQDBgMKAwYCCgEGAgUEBAQJCQYEAf7GAQICCAQEBAQzAwkDBgIGAwMDAwMDBgIDAwkCDgMIAQ0FCwUGCgcEBQkEBgICAgIDAwMDBgYGBQEFBw8mAwoDAwcDAwQDAwQDAwQDBwMOAywFCQgEAgMCEwECAwMIBBsGBxMHDRMGBw0GHw0FAQUBBQEFAQUBBQEBBAQEAgICAwMJCQgGBgUGEAsGEQUGBgUvBgUGBgwGBwUHBgL+sgECBgQEBgQJBAMFCQIDBAMMAQQDBAMHCQkIAwMDAgIBBgIGAwIDAgMDDwYBAwMBAwQHDAQBAwQEBAkIBAMCAgIBAwIEBAkEBQQEAwEKAgICAgICAQEHAgUBAQEDAgIBAgECAQEBAQECAgIEAgkBAQQBBAEEBwUECQgEAgMBAwcGAwMGAgIDAQMCAwIJAgMCAQQBBA0BAgAAAAMAAP/SAyMC6gAFAAwAEQAAASIjESERJxQVMxEhEQUWHwEjAnLW1wJe5bj9/AF5FSo+fQLq/OgCYoldXf38Ar4MFStBAAAAAAgAAP/TA9QC6QATACcATgByAHYAegB+AIIAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASMhIi4BNRE0PgEXByMOARQXFhcxFhcWFxYHBg8BITc2NzYnJicmLwEmJyY1NDc2PwEHMwYHBhUUFxYfARYXFhcWBwYHIzY3NicmJyYvASYnJjU0NzYXFTM1BxUzNQcVMzUHFTM11zVZNTVZNQI6NVo0NFo1/cYCOiU+JCQ+Jf3GJT4kJD5/AwEwLA8IFxUJDQECDRMlKQEBAy4QFAMCDQgUCBMIDBARLyn5nhYLFw4JFgIUCQ0BAg0OJ54TBxMCAg4IFQYTCQsQFAR7gIBGfGqAAuk0WTX+bjVZNDRZNQGSNVk0PCQ9Jf5uJT0kJD0lAZIlPSRcAhw2LxYNGBULEQwPDxYVGQIcFhkYEhMLFQgUDBENEBMVHRgaEQ4aGRYWDRcCFAwRDA8PExcQChcaExMLFQcTDRENEBMXFAwMQAwMQQwMQQwMAAQAAP/TA9QC6QATACcAKgAvAAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BBxc3BREhEQfXNVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPgX6+v4NAfT7Auk0WTX+bjVZNDRZNQGSNVk0PCQ9Jf5uJT0kJD0lAZIlPSRfjY00/ukBF4wABQAAAAADSAKpABsAMgBKAGIAegAAASIHBgcGDwERFhcWFxYgNzY3NjcRNCcmJyYnJgcyFxYXFhcGBwYHBiInJicmJzY3Njc2BzIfARYXFjI3Nj8BFQYHBgcGIicmJyYnFTIfARYXFjI3Nj8BFQYHBgcGIicmJyYnFTIfARYXFiA3Nj8BFQYHBgcGIicmJyYnAfR9XjAfIgcBBiQgL1cBCFcvICMHAQciHzBefXtZKxoRBgYRGSxc8FwsGREGBhEaK1m2AQMDGzRe+l40GwcEFBksXPBcLBkUBAEDAxs0XvpeNBsHBBQZLFzwXCwZFAQBAwMbNFcBCFc0GwcEFBksVf5VLBkUBAKpFAsQERoE/iUaFBEJFBQJERMbAdsDARoREAsUIxQJDQkKCgkOCRMTCQ4JCgoJDQkUawICDgwUFAwOBCkLCg4JExMJDgsKMAICDgwUFAwOBCkLCg4JExMJDgsKMAICDgwUFAwOBPMLCg4JExMJDgsKAAkAAP+fA70DIAAKABgAJgA0AEoAWgBoAHoAjgAAAQYCBzY3NjcXJi8BFh8BJwYHBgcGNzY3NhMGBw4BFjc2FxY2JicmFyYGFhcWFxY+AScmJyYFBgcGDwEGBwYHBhY2NzY3PgE3NjQmASYGFxYGBwYeATc+AScuAQUmBhcWFxY+AScmJy4BAQYHBgcGBwYHDgEWNzY3Ni4BBSIGFhcWHwEWMzI2JicmLwEmJyYB9BhNFxcqJxR9GTEyDBYiRAgZEgYKAQsUFhBQLwsBEgxhYw0OBgwrxQwPBAtCOAkYDQY4UwT98AoLBgsLLykJAgMZGQQlLQQWBAgNAq0PDQMDGBkEDxkHHxoHAg38pA8OAwUvBxkPBC0CAQ0CrgkJBgoNCDZWDAESDG5VBwIN/dkLDQMKQ2AGEggPDREOYTsDBgQGAiZC/vNBFzArFYdOnlEkSW5KBx0UBwsGIUNMAXICDwYZEgQYFAEUGAQLTwETGAUvZgoFFQtrOwMLAQgECwsuSw8LDxEPD0QvBREFCBMO/sgBGw8yZC0MEwEKNn0+BwkSARoPaFwKARMMW2cIC/6zAQYDCQoEJBcGGBIDGUgHEw4BEhcFORoCBRkYARgxAwUCBAAAAAYAAP+VA74DJAAbADEASQBgAGUAawAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NgcWFzY3BRQVIREHAfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpSVlU4cv6FAZrJAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK5tFRS5cIIyMARKjAAAAABAAAP+gA7sDIgAHAA8AHQAsAD4ATwBgAG4AewCKAJgApQCzAMUA0wDmAAABJicHFyE2NycGByMnNjcWAwYHDgEWNzYXFjYmJyYXJgYWFxYXFj4BJy4BJyYFBgcGBwYHBgcGFjI3Njc2LgEzIgciBw4BHgE3NhcWNjQnJgcGBwYPAQYHBh4BNzY3NjQmBSYGFhcWFxYyNicmJyYFJgcGFx4BNicmNzYmBSYGFxYHBh4BNz4BJy4BBSYGFxYXFj4BJyY3LgEFJgcGBwYeATc2Ny4BBSIGFhcWFxY2JicmJyYFDgEHBgcGDwEOARY3Njc+ASYFIgYWFxYXFjYmJyYnJgUGBwYHBgcGBw4BFjc+ATc2LgECy0eQ11IBChcrDBgw5kg/fHx8Si8MARMMXmYMDgUMMcoMDwMLTC0HGQ8EGEkuBP31CwoGCwgFQSEEERgHKVEGAQ3/BAoSBw0JCRQJTkcMEgtC6g0OCRAKPRkFERkGKVAIDgF/DA4CCjQZBxkQBBpEBP3DGQULGwYYEgIaEAEOAukPDQMBMAQQGAcdGwQCDvykDw4DAjEHGQ8FLwIBDQLsGgINMgYPGQg9DAEN/agLDAIIP1QMEQELTzcGAZ8MKwsTGQ8eEQwFDwxhUAgBDf49Cw0DCllpDA4FDGRPBgIYCQkFCg4INFkLAhENNmUpBwINAaI0aJz9RIgoSpLcLVpaAVwCEAYZEQQZFgETGQQMUwETGAU4WwoBEwwyWCACCgEHBQsIBD5QDBILXUAHEw4BAgQVEQgDBh8EERkGHycCCAUMBzAwDBMBC0AuBxMPOwESFwY1VAsTDF1BA6kCK1ZNCwMRDFBUCg4tARoOZV4MEgEKNnk+CAoQARoOa1oKAhMMW2YICzgCKT9DDBQDC09bCQ6gERYGSR0DEhgGHkIGTQMVAwcEAwMCBBgUAQIwBxUPJxMWBUgTARQYBBVCAwMBBQMJCwMjFgYZEgMLMSMHEw4AEAAA/6ADuwMiAAMACAAWACUANwBIAFkAZwB0AIMAkQCeAKwAvgDMAN8AAAEGByEDFhchNhMGBw4BFjc2FxY2JicmFyYGFhcWFxY+AScuAScmBQYHBgcGBwYHBhYyNzY3Ni4BMyIHIgcOAR4BNzYXFjY0JyYHBgcGDwEGBwYeATc2NzY0JgUmBhYXFhcWMjYnJicmBSYHBhceATYnJjc2JgUmBhcWBwYeATc+AScuAQUmBhcWFxY+AScmNy4BBSYHBgcGHgE3NjcuAQUiBhYXFhcWNiYnJicmBQ4BBwYHBg8BDgEWNzY3PgEmBSIGFhcWFxY2JicmJyYFBgcGBwYHBgcOARY3PgE3Ni4BAfRgYAGAwGQz/tIzZEovDAETDF5mDA4FDDHKDA8DC0wtBxkPBBhJLgT99QsKBgsIBUEhBBEYBylRBgEN/wQKEgcNCQkUCU5HDBILQuoNDgkQCj0ZBREZBilQCA4BfwwOAgo0GQcZEAQaRAT9wxkFCxsGGBICGhABDgLpDw0DATAEEBgHHRsEAg78pA8OAwIxBxkPBS8CAQ0C7BoCDTIGDxkIPQwBDf2oCwwCCD9UDBEBC083BgGfDCsLExkPHhEMBQ8MYVAIAQ3+PQsNAwpZaQwOBQxkTwYCGAkJBQoOCDRZCwIRDTZlKQcCDQIyrK0BJrRaWgHXAhAGGREEGRYBExkEDFMBExgFOFsKARMMMlggAgoBBwULCAQ+UAwSC11ABxMOAQIEFREIAwYfBBEZBh8nAggFDAcwMAwTAQtALgcTDzsBEhcGNVQLEwxdQQOpAitWTQsDEQxQVAoOLQEaDmVeDBIBCjZ5PggKEAEaDmtaCgITDFtmCAs4Aik/QwwUAwtPWwkOoBEWBkkdAxIYBh5CBk0DFQMHBAMDAgQYFAECMAcVDycTFgVIEwEUGAQVQgMDAQUDCQsDIxYGGRIDCzEjBxMOAAAAAAUAAP+VA74DJAAbADEASQBgAGkAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBgcXITY/ASYB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SlWQR1IBChcrEEcDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrV2g0/USIMTQAAAAKAAD/nwO9AyAABAAOABQAIgAwAEYAVgBkAHYAigAAARQVIREFMjMGBwYHBgcmNxQVITUXEwYHDgEWNzYXFjYmJyYXJgYWFxYXFj4BJyYnJgUGBwYPAQYHBgcGFjY3Njc+ATc2NCYBJgYXFgYHBh4BNz4BJy4BBSYGFxYXFj4BJyYnLgEBBgcGBwYHBgcOARY3Njc2LgEFIgYWFxYfARYzMjYmJyYvASYnJgEnAZr+wXJyDyAYDRUQQOP+yJwEUC8LARIMYWMNDgYMK8UMDwQLQjgJGA0GOFME/fAKCwYLCy8pCQIDGRkEJS0EFgQIDQKtDw0DAxgZBA8ZBx8aBwIN/KQPDgMFLwcZDwQtAgENAq4JCQYKDQg2VgwBEgxuVQcCDf3ZCw0DCkNgBhIIDw0RDmE7AwYEBgH6nJwBODEJHBYJDwI0BV1dun0B8AIPBhkSBBgUARQYBAtPARMYBS9mCgUVC2s7AwsBCAQLCy5LDwsPEQ8PRC8FEQUIEw7+yAEbDzJkLQwTAQo2fT4HCRIBGg9oXAoBEwxbZwgL/rMBBgMJCgQkFwYYEgMZSAcTDgESFwU5GgIFGRgBGDEDBQIEAAAAAAEAAAAAA1MCEwAuAAATNjc2NzYXFhcWFxYXFhcWNzY/ATY3NjcVBgcGBwYnJicmJyYnLgEGBwYHBgcGB5YaGyMtIi0mJhgbECA7IR0kIRgVHw0XCxwaJCsmKygjHDIhEh02PBUbGQ8bEAgBSj4nNBsUBwYYDxUOGzQVEQoJGxgiEh4dpTciLRQQCAcZEy4fDhgbBxQYJBcuHA4AAAcAAP/TA9QC6QATACcATQB1AK0AtgC/AAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BFxQVBgcnBxcGByMVMxYXNSM1Mzc2PwEnNxc3Nj8BNTMVMy4BJzUHFQYHJwcXBgcjFTMWFwcXNxYXFTM1NjcXNyc2PwE1ByYnNycHJic1BzMVFxYfATcXBxcWHwE3FSMHBg8BFwcnBwYPARUjNScmLwEHJzcnJi8BIzUzNzY/ASc3Fzc2PwEXIgYUFjI2NCYHMhYUBiImNDbXNVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPkkNDhkuGAgDIyQDDh8fAgMLBRUPFggPFQgXOwQaBwQODhgvGQgDJCQFBxovGgwPQg0PGS8aCAQiIwMIGC8YChIsFgkUEAgVEBUFCwQCHh4CAwwFFxAWCBAUCRYJExEIFhAXBgoFAh8fAgUKBRYQFgcREwkLFB0dKR0dFQwQEBcQEALpNFk1/m41WTQ0WTUBkjVZNDwkPSX+biU9JCQ9JQGSJT0kMhESBAgZLxgSCkINFjkWCRISCBUQFgULBQEfHgQLAiNAIgQIGS8ZDQ5CDwwZLxoHBSQlAwgZLxkODQFCAQoSGC4YBgUiFR8BBAsFFQ8WBxAUCQEXCRQQBxYQFgUKBQIgIAIDDAQWEBYIEBMJFgkUEAgVEBYFDAMCMh0oHh4oHRYQFxAQFxAAAgAA/9MD1ALpABMAJwAAEyIOARURFB4BMyEyPgE1ETQuASMFITIeARURFA4BIyEiLgE1ETQ+Adc1WTU1WTUCOjVaNDRaNf3GAjolPiQkPiX9xiU+JCQ+Auk0WTX+bjVZNDRZNQGSNVk0PCQ9Jf5uJT0kJD0lAZIlPSQAAAMAAAAAA14CTwAiACYALAAAAQYHDgEPAQYHBhYXBRY+ASc1FhcWPgEnETQmIgcFPAEnLgEHFBUnJRQVJic2AfYJCgUWBUaMRg0GDwE1ChcOAoOYChYOAhMYCP7sAQISJ+UCLGp7ewJOAQYDEAMvXi8KIwfPBgYUC59aZAYGFAsBogwPCLodcRwLDleampqamppJUVEAAAAACQAA/58DvQMgAAcADwAdACsAQQBRAF8AcQCFAAABJicHFyE2NycGByMnNjcWAwYHDgEWNzYXFjYmJyYXJgYWFxYXFj4BJyYnJgUGBwYPAQYHBgcGFjY3Njc+ATc2NCYBJgYXFgYHBh4BNz4BJy4BBSYGFxYXFj4BJyYnLgEBBgcGBwYHBgcOARY3Njc2LgEFIgYWFxYfARYzMjYmJyYvASYnJgLLR5DXUgEKFysMGDDmSD98fHhQLwsBEgxhYw0OBgwrxQwPBAtCOAkYDQY4UwT98AoLBgsLLykJAgMZGQQlLQQWBAgNAq0PDQMDGBkEDxkHHxoHAg38pA8OAwUvBxkPBC0CAQ0CrgkJBgoNCDZWDAESDG5VBwIN/dkLDQMKQ2AGEggPDREOYTsDBgQGAaI0aJz9RIgoSpLcLVpaAVoCDwYZEgQYFAEUGAQLTwETGAUvZgoFFQtrOwMLAQgECwsuSw8LDxEPD0QvBREFCBMO/sgBGw8yZC0MEwEKNn0+BwkSARoPaFwKARMMW2cIC/6zAQYDCQoEJBcGGBIDGUgHEw4BEhcFORoCBRkYARgxAwUCBAAAAAAFAAD/lQO+AyQAGwAxAEkAYABkAAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FwYHIQHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1KVWBgAYADIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrY6ytAAAUAAD/owO4AyIABAAIAAwAEAAUABgAWwCzAQkBTAGhAf4CSQKLAs8DEgNpA7YEAgRMAAABFREhEQUzESMTFTM1BxUzNQcVMzUHFTM1AzEjByMHIxUjByMPBxUfBDM3MzczNzM3MzczFzMXMxczFzMXMz8FNS8FIycjNSMnIycXIw8FHxk/BDUvAyMnNSc1JyMvASMvATUnIyc1LwEjLwE1JzUnIzUnIycjLwE1LwEjJzUnIy8BBSMPAhUHIw8BFQ8CFQcVBxUPASMPARUPAhUPASMPASMPARUHFQ8BIw8CFR8FMz8ZNS8EITEjFSMPAxUfBDM3MzczFzMXMxczFzMXMx8GMz8FNS8CIy8JIycjJyMnIzUHIw8CIw8BFQcjDwEjBxUHIwcjByMHFQ8DIxUPARUPAiMPAR8FMz8dMz8DLwMFDwUfFhUfBDM/BDUnNS8INSc1LwQjJyMnNS8BIyc1JzUvATUjLwE1JyMnNS8CNS8DBSMPBRUjFQcVBxUjFQcVFxUzFRcVFxUXFR8JMz8ENS8CNSc1JzUnNSc1JzU3NTc1NzU3NTc1LwQFIw8DFQcXFQcVBxUHFQcVDwgVHwMzPwY1NzU/BzU3NTM1NzU3NSc1LwMFIw8DFRcVFxUXFRcVHwcVFxUfAjMVHwMzPwQ1Lws1JzUnNSc1JzUvBAUjDwUVBxUPDxUfBT8CNT8BNTczNzU/AjM/CjU3LwQFDwUfAhUXFRczFzMfAjMfATMVFxUXFRczHwEzFzMXFRcVHwEVHwIVHwIzPwU1LxwFIw8IIwcjByMHIwcjByMPBBUfBTM3MzczNzM3Mz8LMzczPwE1PwE1NzU/BDUvBAUPBRUfBTMfARUXMxczHwEVHwEzFxUfBDMXMx8GMz8FNS8WISMPFxUfBjM/CDM/BDU3MzczNzU/ATU/ATM/BDUvBAFdAS7+6v7+GsrKysrKysplCwYLBQwFBQYmBgoIBAIDAQECBgQJBCsFCQUFBQUKBR4FCgUFBQUKBBgJBQQDBAQBAQQDBAcmBQYFCwYLBvQFBAUDBAQCAggCDAcIBwQDBAMEAwcGBw8CCQIDEQQDBAkJBAQDBAECAwIBAgMCAQISAQkEBgEDBAMBAwgEAwEDAQMBCAQEBAEECAEECv3xBQQIBQQBBAQEDAQEBAgDAQMEAwQDBAkBDwIBAgMDBQIBBAMDAQIDAwgECQUHBQUQBgIGAg8HBgcDBAMEAwQHCAQEBwIBAgIDBAgBBBINCgUHBgICAwgIBAEIBCYECAMEBAQHBAgDGgMIBwcDCQUEBAQDBAEEAwcBAwUEBAQEBAkEJgQJBQQEBQ2tBAgGBwEDCAMBFQMBAwMBCQEMAQkJAwMCAQIDAwgEAQQCAgIDAwgEBQQJAwgDAgQDAgMCAwIDAgMDAwIDAwMDAwMDAwYDIwIDBAQCAgUECAGEBQgEAwMDAQYDAwIDAgMCAwIDBxYBBAEEAQYDAgIEBAMEBQkEBAQDBAECAgIBAgECAQICAgEBAQgBAQECAgQBAgcDAgECAwIBAgYDCQMDAwT9wwUECAMDAgIBAgEBAQEBAQIBCAIBAQEDAwQEBAUJBAMDBAECBQMCAQEBAQEBAgEBAgMDCQLuBQQIBgIBAQEBAQIIAgECAgQBFgEBBAMMBQkEBgUEAwoCCAECAQICAgcBAQEBAQQDBAj8pwUICAQCAQEBAgYCAgIBBAEGAgoDBAEDBgQFCQQEBAMEAgESAQIBAgECAgIHAgEBAQECBwMFAvAEBQQEAwQCAgcCAwUCBAECAwwKAwQCBAEBBAMEBAkIBQcDDwIBBgUIAQEBBgECAQIBAgICCQECAgMECP2tBAgEAwICAgUGDAYBDAEGBwMBAwMBBwcDAQcHAQMBAwQIBAQMBAQEBAkEBAQFAgEBBAQDFQMECgcZAwoCAwMDAwMDAwIGAwIDAgMCCAGcBQQEAQcKHAsHEgQLBAcEBAcECAQQCAQDAgIBBAQDBAUMBQ0EBQQFCAUmBAkEBAQEBAQBBAMBAwEDBAQIBAkEAgIBAgYDBAX+RAQFBAYCAgECAwMFBAEEDQkBDQEEBQUEAQQFBQoFGQEEARQGBQUFCwoJBQQEAwQBAgMDBAcTBQQFBQQFBQQlHggEBAkMAw0CEgUEBQMBFAQECQgWLAUFBAUFBQQFGwQGBAEBAgMDBAQECQMGBQsFBQUGFAEeBQoFBQQBBAEEBRwNBAEEBQMCAQICAwQIAhwM/pABfBj+tAEnGRlKGBhVGBhNGBgCLwEBAQEHAgIEAwQEBAkEBQYDAgkCAQEBAQEBAgUBAgMDCAQFBAkDAwMHAQEBAVMBAgIEBwkJCgEJBwYHAwQDBAMEBwgHFAQNBAQgAwMCAgICAwMICQUGBQUEAQQBBAUcDQQBCAQBBAQECAEDAQMBAwQIAwEDBAMBBgQHCAEEBAEDBAMBAwwDAQMBAwEIBAQEAQQEBAEEDRcFBQQBBAEJBQoFDAQFBAQDBAECBQcMHggECQQUBwgHBAMEAwQDBwYEAwcFBAQJBAQDBAECAgUMBQkEAwYCAQEBAQECAgcCAgMCAgIBAgMDCAUJCAMFAgECAQIBAgICCQIBAQEnAgMFAgQBAg8DAgECCQwJAQkEAwMBAwMBAwsHBwkJBAMEBAEBBAMMAwQGAwMCAwMDAwMDAgMDAgMCAwIDAgMEAxYDAwgJCQcDBDsBAgMDBA0FCwIDAwMDAwMCAwMKIwMHAwcEDgsDBwMIAwMCAQEDAgQICQQCBAkEBAQEBAUDAQMBAwQBAxAEAwEDCAMBCgEDAwEDAwEDAwEGBAkBAwIDA6kBBAQDBAgEBAkFBAkNBBsFDQkEBAkEAQQiBAUBBAQDAwIBAgIDBAgJBQQSBAsEBwQEBwQIBB4ECAQHBAQHBAQJBAQEAwQtAQQIBAQEBB4FCgUFBQUJBScFBAUJCgQyBAUECAQGAgIGCAoFGQEEARQGBQUFCwYmBQYFCwYLBhYGCQgDAwQQAgYICAkGEQUGBQYLBSEGCwUFCgYPAQQBGQUKAQQGAgEBAwIECAkIASkEBQUEBQUJBSIFCQUFBQUKBRcFBAcCAjkBAgMDCAcEBwQaAwsLBwYEAwcUDwMHAQgFBAUIAwMCAgICBwEDFQEDCwEHEAQEDAQEBAQEBAkEJgUFCAQEAwSgAQQDAwQJCQkGAQwBBgwGBQMDAgEEAQQBAgUEAgIBAQEEAQEBBgEBAQIBAQIDBwUEBQQIAwMJAgEGAxADBgMCAwIDAgMCAwYCAwMDAwMHSgECAQMGDAMDBQMCAQEBBAMDBAkFBAgDAwIBAQEBAgkCAgIBAgECAQEBAgICAQEBBAEBAQUEAwUEBQgIAwIBJwEBAwYECQUEBAQCBQMECQEGCQMCAQIDAgECAwQDCgIIAQIBAgIDAQIDAwgFBAkEAwMDBAIBAgECAQIBEBAGAgMFCQMKAQICAg8CAwUGDBQBAgECAQIBAgYCBgkEBQQEBAMDAgEBAQICAgECAQgMAwQDAgECAwIBAhIBCQQDBQQEBAUJBAMDBAAAAAADAAAAAAO5Ao4AAwAHAAsAABMRIREHESERIzMRIy8DijH9YoxeXgKO/Y8CcTD96wIV/esAIAAA/+4DrALPAAQACQAOABMAGAAhAC0ANgBBAE4AVQBaAF8AZABpAG4AcwB4AH0AiACOAJcAoQCmAKsAsAC1ALoAvwDEAMkAzgAAATIzNSMXMjM1IxcyMzUjFzIzNSMXMjM1IxcyMzYXNyYrASEiBxc2MjYnJjY1JgUWFzY3NjcmJwUGBxYXFhc2NycmBQ4BFxYGFjIzMjc0JwUGFTMmNycFMjM1IwUyMzUjBTIzNSMFMjM1IwUyMzUjBTIzNSMFMjM1IwUyMzUjBQYHFhcWFzY3JyYFFhc3JicFBgcWHwE2NycFFhc3NjcmJwcGFzIzNSMXMjM1IxcyMzUjFzIzNSMXMjM1IxcyMzUjBzQ1IRETMjMRITcUFTM1AQUZGDFiGRgxYRkYMWIZGDFiGRgxYQQHGAsGCxUU/e0NDAkDDgYDAQIBAmISDQUKEQUUGP0zGBMFCxAHEA4KCgLxCwMEAgECCg0SBwr8owcxAQYuAzUZGDH8wxkYMQM9GRgx/MMZGDEDPRkYMfzDGRgxAz0ZGDH8wxkYMQM7BQkGCxEIDwUQFvy/BhEoCwQC3BERBQgDGxce/TAbGQUFAhMQBw5jGRgxYRkYMWIZGDFiGBgwXhkYMWUZGDE1/q4fior+7CXLAp0xMTExMTExMTExAQIwAgMwAQQIBBUEBz0JEAQJDAcXDQMPFgQJDQQSBxASVgEKCwIPBgEeGggYHRMVD5UxNTGOMTYxjjE1MY8xNTFZFg8DBwsDGRsDBQ0cGRsSE0EMBQwZCQcTJyoSBxIUCQYMCRUpMTExMTExMTExMTEirKv+qQE4/uunFxgvAAALAAD/zgO5AvIABQAJAA0AEQAVABkAHwAjACcAKwAvAAAXNTMVMxUzNTMVMzUzFTM1MxUzNTMVMzUzFTM1MzUzFSU1MxUhNTMVJREhEScRIREuMRAxYTFiMWExYjFhMA0x/HUxAykx/HYDijH81jJZKDExMTExMTExMTExMShZilxcXFyLAg/98TABs/5NAAAEAAD/nAPDAyAAAwAHAA4AFQAAAREzETMRMxEBBxc1MzUjJRUHFTMVNwFuJsMm/lCkpF1dAlNeXqMDIPx8A4T8fAOE/uGjo29pbmwBam+jAAYAAP+eA5QDHgAGAAkADQARABUAGQAAAQUXARcBFyUFFycHFzcPARc3DwEXNw8BFzcDlP5mQP4aGQHmPgED/mWXlT8ZP5c+GT6ePxk/lyYZJgMebV/+uSYBSFwFbeBYKyUqLyomKzUrJSswGiUaAAACAAAAAAO5AmYAAwAHAAATESERAREhES8DivylAyoCZv3wAhD+HQGz/k0AAAkAAP+nA7IDHgADAAcACwARABUAGQAfACUAKQAAARUzNQUVMzUzFTM1FxUzFTM1BRUzNQUVMzUHFSMVMzUFFTM1IzUXFTM1AS9n/qHaoduCeyj9fWcB9Cgod5/9np934FIDHtra9mdnZ2ceKHWdaNran01NvnQonAGdKHV1KCgACwAA/84DuQLyAAUACQANABEAFQAZAB8AIwAnACsALwAAExUzNTM1MxUzNTMVMzUzFTM1MxUzNTMVMzUzFTMVMzUFFTM1IRUzNQURIREHESERLjEQMWExYjFhMWIxYTANMfx1MQMpMfx2A4ox/NYC8lkpMDAwMDAwMDAwMDAwKVmJXFxcXIv98AIQMP5NAbMADAAA//oDuQLCAAQAGAAcACAAJAAoACwAMAA0ADgAPABAAAATFREhEQUhFSMVMxUjFTMVITUzNSM1MzUjMxUzNTMVMzUzFTM1MxUzNTMVMzUFFTM1MxUzNTMVMzUzFTM1MxUzNS8DivylAyoMDAwM/NYRERERQmIxYTFiMWExYv1UYjFhMWIxYTFiAsLY/hACyCysMbYxqakxtjExMTExMTExMTEx5zExMTExMTExMTEAAAAABwAA//oDuQLCAAQAEAAUABgAHAAgACQAABMZASERBSERIxUzESERMzUjMxUzNTMVMzUzFTM1MxUzNTMVMzUvA4r8pQMqDAz81hERQmIxYTFiMWExYgLC/rT+hALILP7gMP7jAR0wMDAwMDAwMDAwMAAAAAAFAAD/0gMjAuoABQALAA4AFgAdAAABIiMRIREnFTMRIREFFyMnHQEjFTMVNycXBzUjNTMCctbXAl7luP38AXl9feNqao15XFxqagLq/OgCYom6/fwCvgyBbBhFUFyEVlZWQigABAAA/9IDIwLqAAUACwAOABUAAAEiIxEhEScVMxEhEQUXIycVIxUzFTcCctbXAl7luP38AXl9feNqao0C6vzo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AAAAAAAAAAAAbAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBEwEUARUBFgEXARgBGQEaARsBHAEdAR4BHwEgASEBIgEjASQBJQEmAScBKAEpASoBKwEsAS0BLgEvATABMQEyATMBNAE1ATYBNwE4ATkBOgE7ATwBPQE+AT8BQAFBAUIBQwFEAUUBRgFHAUgBSQFKAUsBTAFNAU4BTwFQAVEBUgFTAVQBVQFWAVcBWAFZAVoBWwFcAV0BXgFfAWABYQFiAWMBZAFlAWYBZwFoAWkBagFrAWwBbQAMc2NyZXctd3JlbmNoBXRyYXNoEGNvbmRpdGlvbmFsLWZsb3cMZGVmYXVsdC1mbG93EGdhdGV3YXktcGFyYWxsZWwfaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWNhbmNlbDFpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbm9uLWludGVycnVwdGluZy1tZXNzYWdlGHN0YXJ0LWV2ZW50LWNvbXBlbnNhdGlvbi5zdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLXBhcmFsbGVsLW11bHRpcGxlC2xvb3AtbWFya2VyEnBhcmFsbGVsLW1pLW1hcmtlciNzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLXNpZ25hbC9pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbm9uLWludGVycnVwdGluZy10aW1lcippbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtcGFyYWxsZWwtbXVsdGlwbGUlaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWNvbXBlbnNhdGlvbgtnYXRld2F5LXhvcgpjb25uZWN0aW9uEGVuZC1ldmVudC1jYW5jZWwiaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWNvbmRpdGlvbjtpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbm9uLWludGVycnVwdGluZy1wYXJhbGxlbC1tdWx0aXBsZRVzdGFydC1ldmVudC1jb25kaXRpb24ic3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy10aW1lchRzZXF1ZW50aWFsLW1pLW1hcmtlcgl1c2VyLXRhc2sNYnVzaW5lc3MtcnVsZRJzdWItcHJvY2Vzcy1tYXJrZXIdc3RhcnQtZXZlbnQtcGFyYWxsZWwtbXVsdGlwbGURc3RhcnQtZXZlbnQtZXJyb3IfaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLXNpZ25hbB5pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtZXJyb3IWZW5kLWV2ZW50LWNvbXBlbnNhdGlvbhRzdWJwcm9jZXNzLWNvbGxhcHNlZBNzdWJwcm9jZXNzLWV4cGFuZGVkBHRhc2sPZW5kLWV2ZW50LWVycm9yI2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1lc2NhbGF0aW9uHmludGVybWVkaWF0ZS1ldmVudC1jYXRjaC10aW1lchZzdGFydC1ldmVudC1lc2NhbGF0aW9uEnN0YXJ0LWV2ZW50LXNpZ25hbBJidXNpbmVzcy1ydWxlLXRhc2sGbWFudWFsB3JlY2VpdmUNY2FsbC1hY3Rpdml0eRFzdGFydC1ldmVudC10aW1lchNzdGFydC1ldmVudC1tZXNzYWdlF2ludGVybWVkaWF0ZS1ldmVudC1ub25lHWludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1saW5rFGVuZC1ldmVudC1lc2NhbGF0aW9uD3RleHQtYW5ub3RhdGlvbgdicG1uLWlvD2dhdGV3YXktY29tcGxleBJnYXRld2F5LWV2ZW50YmFzZWQMZ2F0ZXdheS1ub25lCmdhdGV3YXktb3ITZW5kLWV2ZW50LXRlcm1pbmF0ZRBlbmQtZXZlbnQtc2lnbmFsDmVuZC1ldmVudC1ub25lEmVuZC1ldmVudC1tdWx0aXBsZRFlbmQtZXZlbnQtbWVzc2FnZQ5lbmQtZXZlbnQtbGluayBpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbWVzc2FnZSVpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctY29tcGVuc2F0aW9uFHN0YXJ0LWV2ZW50LW11bHRpcGxlBnNjcmlwdAttYW51YWwtdGFzawRzZW5kB3NlcnZpY2UMcmVjZWl2ZS10YXNrBHVzZXIQc3RhcnQtZXZlbnQtbm9uZSNpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctZXNjYWxhdGlvbiFpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbXVsdGlwbGU0aW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctZXNjYWxhdGlvbh1pbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctbGluayZzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLWNvbmRpdGlvbgtkYXRhLW9iamVjdAtzY3JpcHQtdGFzawlzZW5kLXRhc2sKZGF0YS1zdG9yZSdzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLWVzY2FsYXRpb24gaW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LW1lc3NhZ2UyaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctbXVsdGlwbGUwaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctc2lnbmFsIWludGVybWVkaWF0ZS1ldmVudC10aHJvdy1tdWx0aXBsZSRzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLW1lc3NhZ2UNYWQtaG9jLW1hcmtlcgxzZXJ2aWNlLXRhc2sJdGFzay1ub25lE2NvbXBlbnNhdGlvbi1tYXJrZXIlc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1tdWx0aXBsZR9pbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctc2lnbmFsM2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLWNvbmRpdGlvbgtwYXJ0aWNpcGFudBlldmVudC1zdWJwcm9jZXNzLWV4cGFuZGVkEWxhbmUtaW5zZXJ0LWJlbG93CnNwYWNlLXRvb2wQY29ubmVjdGlvbi1tdWx0aQRsYW5lCmxhc3NvLXRvb2wRbGFuZS1pbnNlcnQtYWJvdmURbGFuZS1kaXZpZGUtdGhyZWUPbGFuZS1kaXZpZGUtdHdvCmRhdGEtaW5wdXQLZGF0YS1vdXRwdXQJaGFuZC10b29sBWdyb3VwC3RyYW5zYWN0aW9uAAA=') + format('truetype'); +} +/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ +/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ +/* +@media screen and (-webkit-min-device-pixel-ratio:0) { + @font-face { + font-family: 'bpmn'; + src: url('../font/bpmn.svg?68866489#bpmn') format('svg'); + } +} +*/ + +[class^='bpmn-icon-']:before, +[class*=' bpmn-icon-']:before { + font-family: 'bpmn'; + font-style: normal; + font-weight: normal; + speak: never; + + display: inline-block; + text-decoration: inherit; + width: 1em; + /* margin-right: .2em; */ + text-align: center; + /* opacity: .8; */ + + /* For safety - reset parent styles, that can break glyph codes*/ + font-variant: normal; + text-transform: none; + + /* fix buttons height, for twitter bootstrap */ + line-height: 1em; + + /* Animation center compensation - margins should be symmetric */ + /* remove if not needed */ + /* margin-left: .2em; */ + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ + + /* Uncomment for 3D effect */ + /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ +} +.bpmn-icon-screw-wrench:before { + content: '\e800'; +} /* '' */ +.bpmn-icon-trash:before { + content: '\e801'; +} /* '' */ +.bpmn-icon-conditional-flow:before { + content: '\e802'; +} /* '' */ +.bpmn-icon-default-flow:before { + content: '\e803'; +} /* '' */ +.bpmn-icon-gateway-parallel:before { + content: '\e804'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-cancel:before { + content: '\e805'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-message:before { + content: '\e806'; +} /* '' */ +.bpmn-icon-start-event-compensation:before { + content: '\e807'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-parallel-multiple:before { + content: '\e808'; +} /* '' */ +.bpmn-icon-loop-marker:before { + content: '\e809'; +} /* '' */ +.bpmn-icon-parallel-mi-marker:before { + content: '\e80a'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-signal:before { + content: '\e80b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-timer:before { + content: '\e80c'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-parallel-multiple:before { + content: '\e80d'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-compensation:before { + content: '\e80e'; +} /* '' */ +.bpmn-icon-gateway-xor:before { + content: '\e80f'; +} /* '' */ +.bpmn-icon-connection:before { + content: '\e810'; +} /* '' */ +.bpmn-icon-end-event-cancel:before { + content: '\e811'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-condition:before { + content: '\e812'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-parallel-multiple:before { + content: '\e813'; +} /* '' */ +.bpmn-icon-start-event-condition:before { + content: '\e814'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-timer:before { + content: '\e815'; +} /* '' */ +.bpmn-icon-sequential-mi-marker:before { + content: '\e816'; +} /* '' */ +.bpmn-icon-user-task:before { + content: '\e817'; +} /* '' */ +.bpmn-icon-business-rule:before { + content: '\e818'; +} /* '' */ +.bpmn-icon-sub-process-marker:before { + content: '\e819'; +} /* '' */ +.bpmn-icon-start-event-parallel-multiple:before { + content: '\e81a'; +} /* '' */ +.bpmn-icon-start-event-error:before { + content: '\e81b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-signal:before { + content: '\e81c'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-error:before { + content: '\e81d'; +} /* '' */ +.bpmn-icon-end-event-compensation:before { + content: '\e81e'; +} /* '' */ +.bpmn-icon-subprocess-collapsed:before { + content: '\e81f'; +} /* '' */ +.bpmn-icon-subprocess-expanded:before { + content: '\e820'; +} /* '' */ +.bpmn-icon-task:before { + content: '\e821'; +} /* '' */ +.bpmn-icon-end-event-error:before { + content: '\e822'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-escalation:before { + content: '\e823'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-timer:before { + content: '\e824'; +} /* '' */ +.bpmn-icon-start-event-escalation:before { + content: '\e825'; +} /* '' */ +.bpmn-icon-start-event-signal:before { + content: '\e826'; +} /* '' */ +.bpmn-icon-business-rule-task:before { + content: '\e827'; +} /* '' */ +.bpmn-icon-manual:before { + content: '\e828'; +} /* '' */ +.bpmn-icon-receive:before { + content: '\e829'; +} /* '' */ +.bpmn-icon-call-activity:before { + content: '\e82a'; +} /* '' */ +.bpmn-icon-start-event-timer:before { + content: '\e82b'; +} /* '' */ +.bpmn-icon-start-event-message:before { + content: '\e82c'; +} /* '' */ +.bpmn-icon-intermediate-event-none:before { + content: '\e82d'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-link:before { + content: '\e82e'; +} /* '' */ +.bpmn-icon-end-event-escalation:before { + content: '\e82f'; +} /* '' */ +.bpmn-icon-text-annotation:before { + content: '\e830'; +} /* '' */ +.bpmn-icon-bpmn-io:before { + content: '\e831'; +} /* '' */ +.bpmn-icon-gateway-complex:before { + content: '\e832'; +} /* '' */ +.bpmn-icon-gateway-eventbased:before { + content: '\e833'; +} /* '' */ +.bpmn-icon-gateway-none:before { + content: '\e834'; +} /* '' */ +.bpmn-icon-gateway-or:before { + content: '\e835'; +} /* '' */ +.bpmn-icon-end-event-terminate:before { + content: '\e836'; +} /* '' */ +.bpmn-icon-end-event-signal:before { + content: '\e837'; +} /* '' */ +.bpmn-icon-end-event-none:before { + content: '\e838'; +} /* '' */ +.bpmn-icon-end-event-multiple:before { + content: '\e839'; +} /* '' */ +.bpmn-icon-end-event-message:before { + content: '\e83a'; +} /* '' */ +.bpmn-icon-end-event-link:before { + content: '\e83b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-message:before { + content: '\e83c'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-compensation:before { + content: '\e83d'; +} /* '' */ +.bpmn-icon-start-event-multiple:before { + content: '\e83e'; +} /* '' */ +.bpmn-icon-script:before { + content: '\e83f'; +} /* '' */ +.bpmn-icon-manual-task:before { + content: '\e840'; +} /* '' */ +.bpmn-icon-send:before { + content: '\e841'; +} /* '' */ +.bpmn-icon-service:before { + content: '\e842'; +} /* '' */ +.bpmn-icon-receive-task:before { + content: '\e843'; +} /* '' */ +.bpmn-icon-user:before { + content: '\e844'; +} /* '' */ +.bpmn-icon-start-event-none:before { + content: '\e845'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-escalation:before { + content: '\e846'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-multiple:before { + content: '\e847'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-escalation:before { + content: '\e848'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-link:before { + content: '\e849'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-condition:before { + content: '\e84a'; +} /* '' */ +.bpmn-icon-data-object:before { + content: '\e84b'; +} /* '' */ +.bpmn-icon-script-task:before { + content: '\e84c'; +} /* '' */ +.bpmn-icon-send-task:before { + content: '\e84d'; +} /* '' */ +.bpmn-icon-data-store:before { + content: '\e84e'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-escalation:before { + content: '\e84f'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-message:before { + content: '\e850'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-multiple:before { + content: '\e851'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-signal:before { + content: '\e852'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-multiple:before { + content: '\e853'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-message:before { + content: '\e854'; +} /* '' */ +.bpmn-icon-ad-hoc-marker:before { + content: '\e855'; +} /* '' */ +.bpmn-icon-service-task:before { + content: '\e856'; +} /* '' */ +.bpmn-icon-task-none:before { + content: '\e857'; +} /* '' */ +.bpmn-icon-compensation-marker:before { + content: '\e858'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-multiple:before { + content: '\e859'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-signal:before { + content: '\e85a'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-condition:before { + content: '\e85b'; +} /* '' */ +.bpmn-icon-participant:before { + content: '\e85c'; +} /* '' */ +.bpmn-icon-event-subprocess-expanded:before { + content: '\e85d'; +} /* '' */ +.bpmn-icon-lane-insert-below:before { + content: '\e85e'; +} /* '' */ +.bpmn-icon-space-tool:before { + content: '\e85f'; +} /* '' */ +.bpmn-icon-connection-multi:before { + content: '\e860'; +} /* '' */ +.bpmn-icon-lane:before { + content: '\e861'; +} /* '' */ +.bpmn-icon-lasso-tool:before { + content: '\e862'; +} /* '' */ +.bpmn-icon-lane-insert-above:before { + content: '\e863'; +} /* '' */ +.bpmn-icon-lane-divide-three:before { + content: '\e864'; +} /* '' */ +.bpmn-icon-lane-divide-two:before { + content: '\e865'; +} /* '' */ +.bpmn-icon-data-input:before { + content: '\e866'; +} /* '' */ +.bpmn-icon-data-output:before { + content: '\e867'; +} /* '' */ +.bpmn-icon-hand-tool:before { + content: '\e868'; +} /* '' */ +.bpmn-icon-group:before { + content: '\e869'; +} /* '' */ +.bpmn-icon-transaction:before { + content: '\e8c4'; +} /* '' */ diff --git a/src/assets/style/bpmn-js/bpmn-font/css/bpmn.css b/src/assets/style/bpmn-js/bpmn-font/css/bpmn.css new file mode 100644 index 0000000..9ce30d3 --- /dev/null +++ b/src/assets/style/bpmn-js/bpmn-font/css/bpmn.css @@ -0,0 +1,379 @@ +@font-face { + font-family: 'bpmn'; + src: url('../font/bpmn.eot?26374340'); + src: url('../font/bpmn.eot?26374340#iefix') format('embedded-opentype'), + url('../font/bpmn.woff2?26374340') format('woff2'), + url('../font/bpmn.woff?26374340') format('woff'), + url('../font/bpmn.ttf?26374340') format('truetype'), + url('../font/bpmn.svg?26374340#bpmn') format('svg'); + font-weight: normal; + font-style: normal; +} +/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ +/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ +/* +@media screen and (-webkit-min-device-pixel-ratio:0) { + @font-face { + font-family: 'bpmn'; + src: url('../font/bpmn.svg?26374340#bpmn') format('svg'); + } +} +*/ + +[class^='bpmn-icon-']:before, +[class*=' bpmn-icon-']:before { + font-family: 'bpmn'; + font-style: normal; + font-weight: normal; + speak: never; + + display: inline-block; + text-decoration: inherit; + width: 1em; + /* margin-right: .2em; */ + text-align: center; + /* opacity: .8; */ + + /* For safety - reset parent styles, that can break glyph codes*/ + font-variant: normal; + text-transform: none; + + /* fix buttons height, for twitter bootstrap */ + line-height: 1em; + + /* Animation center compensation - margins should be symmetric */ + /* remove if not needed */ + /* margin-left: .2em; */ + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ + + /* Font smoothing. That was taken from TWBS */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + /* Uncomment for 3D effect */ + /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ +} + +.bpmn-icon-screw-wrench:before { + content: '\e800'; +} /* '' */ +.bpmn-icon-trash:before { + content: '\e801'; +} /* '' */ +.bpmn-icon-conditional-flow:before { + content: '\e802'; +} /* '' */ +.bpmn-icon-default-flow:before { + content: '\e803'; +} /* '' */ +.bpmn-icon-gateway-parallel:before { + content: '\e804'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-cancel:before { + content: '\e805'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-message:before { + content: '\e806'; +} /* '' */ +.bpmn-icon-start-event-compensation:before { + content: '\e807'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-parallel-multiple:before { + content: '\e808'; +} /* '' */ +.bpmn-icon-loop-marker:before { + content: '\e809'; +} /* '' */ +.bpmn-icon-parallel-mi-marker:before { + content: '\e80a'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-signal:before { + content: '\e80b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-timer:before { + content: '\e80c'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-parallel-multiple:before { + content: '\e80d'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-compensation:before { + content: '\e80e'; +} /* '' */ +.bpmn-icon-gateway-xor:before { + content: '\e80f'; +} /* '' */ +.bpmn-icon-connection:before { + content: '\e810'; +} /* '' */ +.bpmn-icon-end-event-cancel:before { + content: '\e811'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-condition:before { + content: '\e812'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-parallel-multiple:before { + content: '\e813'; +} /* '' */ +.bpmn-icon-start-event-condition:before { + content: '\e814'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-timer:before { + content: '\e815'; +} /* '' */ +.bpmn-icon-sequential-mi-marker:before { + content: '\e816'; +} /* '' */ +.bpmn-icon-user-task:before { + content: '\e817'; +} /* '' */ +.bpmn-icon-business-rule:before { + content: '\e818'; +} /* '' */ +.bpmn-icon-sub-process-marker:before { + content: '\e819'; +} /* '' */ +.bpmn-icon-start-event-parallel-multiple:before { + content: '\e81a'; +} /* '' */ +.bpmn-icon-start-event-error:before { + content: '\e81b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-signal:before { + content: '\e81c'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-error:before { + content: '\e81d'; +} /* '' */ +.bpmn-icon-end-event-compensation:before { + content: '\e81e'; +} /* '' */ +.bpmn-icon-subprocess-collapsed:before { + content: '\e81f'; +} /* '' */ +.bpmn-icon-subprocess-expanded:before { + content: '\e820'; +} /* '' */ +.bpmn-icon-task:before { + content: '\e821'; +} /* '' */ +.bpmn-icon-end-event-error:before { + content: '\e822'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-escalation:before { + content: '\e823'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-timer:before { + content: '\e824'; +} /* '' */ +.bpmn-icon-start-event-escalation:before { + content: '\e825'; +} /* '' */ +.bpmn-icon-start-event-signal:before { + content: '\e826'; +} /* '' */ +.bpmn-icon-business-rule-task:before { + content: '\e827'; +} /* '' */ +.bpmn-icon-manual:before { + content: '\e828'; +} /* '' */ +.bpmn-icon-receive:before { + content: '\e829'; +} /* '' */ +.bpmn-icon-call-activity:before { + content: '\e82a'; +} /* '' */ +.bpmn-icon-start-event-timer:before { + content: '\e82b'; +} /* '' */ +.bpmn-icon-start-event-message:before { + content: '\e82c'; +} /* '' */ +.bpmn-icon-intermediate-event-none:before { + content: '\e82d'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-link:before { + content: '\e82e'; +} /* '' */ +.bpmn-icon-end-event-escalation:before { + content: '\e82f'; +} /* '' */ +.bpmn-icon-text-annotation:before { + content: '\e830'; +} /* '' */ +.bpmn-icon-bpmn-io:before { + content: '\e831'; +} /* '' */ +.bpmn-icon-gateway-complex:before { + content: '\e832'; +} /* '' */ +.bpmn-icon-gateway-eventbased:before { + content: '\e833'; +} /* '' */ +.bpmn-icon-gateway-none:before { + content: '\e834'; +} /* '' */ +.bpmn-icon-gateway-or:before { + content: '\e835'; +} /* '' */ +.bpmn-icon-end-event-terminate:before { + content: '\e836'; +} /* '' */ +.bpmn-icon-end-event-signal:before { + content: '\e837'; +} /* '' */ +.bpmn-icon-end-event-none:before { + content: '\e838'; +} /* '' */ +.bpmn-icon-end-event-multiple:before { + content: '\e839'; +} /* '' */ +.bpmn-icon-end-event-message:before { + content: '\e83a'; +} /* '' */ +.bpmn-icon-end-event-link:before { + content: '\e83b'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-message:before { + content: '\e83c'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-compensation:before { + content: '\e83d'; +} /* '' */ +.bpmn-icon-start-event-multiple:before { + content: '\e83e'; +} /* '' */ +.bpmn-icon-script:before { + content: '\e83f'; +} /* '' */ +.bpmn-icon-manual-task:before { + content: '\e840'; +} /* '' */ +.bpmn-icon-send:before { + content: '\e841'; +} /* '' */ +.bpmn-icon-service:before { + content: '\e842'; +} /* '' */ +.bpmn-icon-receive-task:before { + content: '\e843'; +} /* '' */ +.bpmn-icon-user:before { + content: '\e844'; +} /* '' */ +.bpmn-icon-start-event-none:before { + content: '\e845'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-escalation:before { + content: '\e846'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-multiple:before { + content: '\e847'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-escalation:before { + content: '\e848'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-link:before { + content: '\e849'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-condition:before { + content: '\e84a'; +} /* '' */ +.bpmn-icon-data-object:before { + content: '\e84b'; +} /* '' */ +.bpmn-icon-script-task:before { + content: '\e84c'; +} /* '' */ +.bpmn-icon-send-task:before { + content: '\e84d'; +} /* '' */ +.bpmn-icon-data-store:before { + content: '\e84e'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-escalation:before { + content: '\e84f'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-message:before { + content: '\e850'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-multiple:before { + content: '\e851'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-signal:before { + content: '\e852'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-multiple:before { + content: '\e853'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-message:before { + content: '\e854'; +} /* '' */ +.bpmn-icon-ad-hoc-marker:before { + content: '\e855'; +} /* '' */ +.bpmn-icon-service-task:before { + content: '\e856'; +} /* '' */ +.bpmn-icon-task-none:before { + content: '\e857'; +} /* '' */ +.bpmn-icon-compensation-marker:before { + content: '\e858'; +} /* '' */ +.bpmn-icon-start-event-non-interrupting-multiple:before { + content: '\e859'; +} /* '' */ +.bpmn-icon-intermediate-event-throw-signal:before { + content: '\e85a'; +} /* '' */ +.bpmn-icon-intermediate-event-catch-non-interrupting-condition:before { + content: '\e85b'; +} /* '' */ +.bpmn-icon-participant:before { + content: '\e85c'; +} /* '' */ +.bpmn-icon-event-subprocess-expanded:before { + content: '\e85d'; +} /* '' */ +.bpmn-icon-lane-insert-below:before { + content: '\e85e'; +} /* '' */ +.bpmn-icon-space-tool:before { + content: '\e85f'; +} /* '' */ +.bpmn-icon-connection-multi:before { + content: '\e860'; +} /* '' */ +.bpmn-icon-lane:before { + content: '\e861'; +} /* '' */ +.bpmn-icon-lasso-tool:before { + content: '\e862'; +} /* '' */ +.bpmn-icon-lane-insert-above:before { + content: '\e863'; +} /* '' */ +.bpmn-icon-lane-divide-three:before { + content: '\e864'; +} /* '' */ +.bpmn-icon-lane-divide-two:before { + content: '\e865'; +} /* '' */ +.bpmn-icon-data-input:before { + content: '\e866'; +} /* '' */ +.bpmn-icon-data-output:before { + content: '\e867'; +} /* '' */ +.bpmn-icon-hand-tool:before { + content: '\e868'; +} /* '' */ +.bpmn-icon-group:before { + content: '\e869'; +} /* '' */ +.bpmn-icon-transaction:before { + content: '\e8c4'; +} /* '' */ diff --git a/src/assets/style/bpmn-js/bpmn-font/font/bpmn.eot b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.eot new file mode 100644 index 0000000..8f3a3dd Binary files /dev/null and b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.eot differ diff --git a/src/assets/style/bpmn-js/bpmn-font/font/bpmn.svg b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.svg new file mode 100644 index 0000000..00a3162 --- /dev/null +++ b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.svg @@ -0,0 +1,224 @@ + + + +camunda Services GmbH + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/assets/style/bpmn-js/bpmn-font/font/bpmn.ttf b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.ttf new file mode 100644 index 0000000..f5f0b99 Binary files /dev/null and b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.ttf differ diff --git a/src/assets/style/bpmn-js/bpmn-font/font/bpmn.woff b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.woff new file mode 100644 index 0000000..c4132a6 Binary files /dev/null and b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.woff differ diff --git a/src/assets/style/bpmn-js/bpmn-font/font/bpmn.woff2 b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.woff2 new file mode 100644 index 0000000..79929b2 Binary files /dev/null and b/src/assets/style/bpmn-js/bpmn-font/font/bpmn.woff2 differ diff --git a/src/assets/style/bpmn-js/diagram-js.css b/src/assets/style/bpmn-js/diagram-js.css new file mode 100644 index 0000000..b2a0d42 --- /dev/null +++ b/src/assets/style/bpmn-js/diagram-js.css @@ -0,0 +1,813 @@ +/** + * color definitions + */ +.djs-container { + --blue-base-65: #4d90ff; + --blue-base-65-opacity-30: rgba(77, 144, 255, 0.3); + --blue-darken-48: #005df7; + --blue-darken-55: #1a70ff; + --blue-lighten-82: #a2c5ff; + + --red-base-62: #ff3d3d; + --red-base-62-lighten-90: rgb(255, 235, 235); + + --silver-darken-94: #efefef; + + --color-000000: #000000; + --color-000000-opacity-05: rgba(0, 0, 0, 0.05); + --color-000000-opacity-10: rgba(0, 0, 0, 0.1); + --color-333333: #333333; + --color-666666: #666666; + --color-aaaaaa: #aaaaaa; + --color-cccccc: #cccccc; + --color-cdcdcd: #cdcdcd; + --color-dddddd: #dddddd; + --color-f6f6f6: #f6f6f6; + --color-fafafa: #fafafa; + --color-fefefe: #fefefe; + --color-ffffff: #ffffff; + + --bendpoint-fill-color: var(--blue-base-65-opacity-30); + --bendpoint-stroke-color: var(--blue-base-65); + + --context-pad-entry-background-color: var(--color-fefefe); + --context-pad-entry-hover-background-color: var(--silver-darken-94); + + --element-dragger-color: var(--blue-base-65); + --element-hover-outline-fill-color: var(--blue-darken-48); + --element-selected-outline-stroke-color: var(--blue-base-65); + + --lasso-fill-color: var(--color-000000-opacity-05); + --lasso-stroke-color: var(--color-000000); + + --palette-entry-color: var(--color-333333); + --palette-entry-hover-color: var(--blue-darken-48); + --palette-entry-selected-color: var(--blue-base-65); + --palette-separator-color: var(--color-aaaaaa); + --palette-toggle-hover-background-color: var(--color-666666); + --palette-background-color: var(--color-fafafa); + --palette-border-color: var(--color-cccccc); + + --popup-body-background-color: var(--color-fefefe); + --popup-header-entry-selected-color: var(--blue-base-65); + --popup-header-entry-selected-background-color: var(--color-000000-opacity-10); + --popup-header-separator-color: var(--color-dddddd); + --popup-background-color: var(--color-fafafa); + --popup-border-color: var(--color-cccccc); + + --resizer-fill-color: var(--blue-base-65-opacity-30); + --resizer-stroke-color: var(--blue-base-65); + + --search-container-background-color: var(--color-fafafa); + --search-container-border-color: var(--blue-darken-55); + --search-container-box-shadow-color: var(--blue-lighten-82); + --search-container-box-shadow-inset-color: var(--color-cdcdcd); + --search-input-border-color: var(--color-cccccc); + --search-result-border-color: var(--color-aaaaaa); + --search-result-highlight-color: var(--color-000000); + --search-result-selected-color: var(--blue-base-65-opacity-30); + + --shape-attach-allowed-stroke-color: var(--blue-base-65); + --shape-connect-allowed-fill-color: var(--color-f6f6f6); + --shape-drop-allowed-fill-color: var(--color-f6f6f6); + --shape-drop-not-allowed-fill-color: var(--red-base-62-lighten-90); + --shape-resize-preview-stroke-color: var(--blue-base-65); + + --snap-line-stroke-color: var(--blue-base-65-opacity-30); + + --space-tool-crosshair-stroke-color: var(--color-000000); + + --tooltip-error-background-color: var(--red-base-62-lighten-90); + --tooltip-error-border-color: var(--red-base-62); + --tooltip-error-color: var(--red-base-62); +} + +/** + * outline styles + */ + +.djs-outline { + fill: none; + visibility: hidden; +} + +.djs-element.hover .djs-outline, +.djs-element.selected .djs-outline { + visibility: visible; + shape-rendering: geometricPrecision; + stroke-dasharray: 3, 3; +} + +.djs-element.selected .djs-outline { + stroke: var(--element-selected-outline-stroke-color); + stroke-width: 1px; +} + +.djs-element.hover .djs-outline { + stroke: var(--element-hover-outline-fill-color); + stroke-width: 1px; +} + +.djs-shape.connect-ok .djs-visual > :nth-child(1) { + fill: var(--shape-connect-allowed-fill-color) !important; +} + +.djs-shape.connect-not-ok .djs-visual > :nth-child(1), +.djs-shape.drop-not-ok .djs-visual > :nth-child(1) { + fill: var(--shape-drop-not-allowed-fill-color) !important; +} + +.djs-shape.new-parent .djs-visual > :nth-child(1) { + fill: var(--shape-drop-allowed-fill-color) !important; +} + +svg.drop-not-ok { + background: var(--shape-drop-not-allowed-fill-color) !important; +} + +svg.new-parent { + background: var(--shape-drop-allowed-fill-color) !important; +} + +.djs-connection.connect-ok .djs-visual > :nth-child(1), +.djs-connection.drop-ok .djs-visual > :nth-child(1) { + stroke: var(--shape-drop-allowed-fill-color) !important; +} + +.djs-connection.connect-not-ok .djs-visual > :nth-child(1), +.djs-connection.drop-not-ok .djs-visual > :nth-child(1) { + stroke: var(--shape-drop-not-allowed-fill-color) !important; +} + +.drop-not-ok, +.connect-not-ok { + cursor: not-allowed; +} + +.djs-element.attach-ok .djs-visual > :nth-child(1) { + stroke-width: 5px !important; + stroke: var(--shape-attach-allowed-stroke-color) !important; +} + +.djs-frame.connect-not-ok .djs-visual > :nth-child(1), +.djs-frame.drop-not-ok .djs-visual > :nth-child(1) { + stroke-width: 3px !important; + stroke: var(--shape-drop-not-allowed-fill-color) !important; + fill: none !important; +} + +/** +* Selection box style +* +*/ +.djs-lasso-overlay { + fill: var(--lasso-fill-color); + + stroke-dasharray: 5 1 3 1; + stroke: var(--lasso-stroke-color); + + shape-rendering: geometricPrecision; + pointer-events: none; +} + +/** + * Resize styles + */ +.djs-resize-overlay { + fill: none; + + stroke-dasharray: 5 1 3 1; + stroke: var(--shape-resize-preview-stroke-color); + + pointer-events: none; +} + +.djs-resizer-hit { + fill: none; + pointer-events: all; +} + +.djs-resizer-visual { + fill: var(--resizer-fill-color); + stroke-width: 1px; + stroke-opacity: 0.5; + stroke: var(--resizer-stroke-color); + shape-rendering: geometricprecision; +} + +.djs-resizer:hover .djs-resizer-visual { + stroke: var(--resizer-stroke-color); + stroke-opacity: 1; +} + +.djs-cursor-resize-ns, +.djs-resizer-n, +.djs-resizer-s { + cursor: ns-resize; +} + +.djs-cursor-resize-ew, +.djs-resizer-e, +.djs-resizer-w { + cursor: ew-resize; +} + +.djs-cursor-resize-nwse, +.djs-resizer-nw, +.djs-resizer-se { + cursor: nwse-resize; +} + +.djs-cursor-resize-nesw, +.djs-resizer-ne, +.djs-resizer-sw { + cursor: nesw-resize; +} + +.djs-shape.djs-resizing > .djs-outline { + visibility: hidden !important; +} + +.djs-shape.djs-resizing > .djs-resizer { + visibility: hidden; +} + +.djs-dragger > .djs-resizer { + visibility: hidden; +} + +/** + * drag styles + */ +.djs-dragger * { + fill: none !important; + stroke: var(--element-dragger-color) !important; +} + +.djs-dragger tspan, +.djs-dragger text { + fill: var(--element-dragger-color) !important; + stroke: none !important; +} + +marker.djs-dragger circle, +marker.djs-dragger path, +marker.djs-dragger polygon, +marker.djs-dragger polyline, +marker.djs-dragger rect { + fill: var(--element-dragger-color) !important; + stroke: none !important; +} + +marker.djs-dragger text, +marker.djs-dragger tspan { + fill: none !important; + stroke: var(--element-dragger-color) !important; +} + +.djs-dragging { + opacity: 0.3; +} + +.djs-dragging, +.djs-dragging > * { + pointer-events: none !important; +} + +.djs-dragging .djs-context-pad, +.djs-dragging .djs-outline { + display: none !important; +} + +/** + * no pointer events for visual + */ +.djs-visual, +.djs-outline { + pointer-events: none; +} + +.djs-element.attach-ok .djs-hit { + stroke-width: 60px !important; +} + +/** + * all pointer events for hit shape + */ +.djs-element > .djs-hit-all { + pointer-events: all; +} + +.djs-element > .djs-hit-stroke, +.djs-element > .djs-hit-click-stroke { + pointer-events: stroke; +} + +/** + * all pointer events for hit shape + */ +.djs-drag-active .djs-element > .djs-hit-click-stroke { + pointer-events: all; +} + +/** + * shape / connection basic styles + */ +.djs-connection .djs-visual { + stroke-width: 2px; + fill: none; +} + +.djs-cursor-grab { + cursor: -webkit-grab; + cursor: -moz-grab; + cursor: grab; +} + +.djs-cursor-grabbing { + cursor: -webkit-grabbing; + cursor: -moz-grabbing; + cursor: grabbing; +} + +.djs-cursor-crosshair { + cursor: crosshair; +} + +.djs-cursor-move { + cursor: move; +} + +.djs-cursor-resize-ns { + cursor: ns-resize; +} + +.djs-cursor-resize-ew { + cursor: ew-resize; +} + +/** + * snapping + */ +.djs-snap-line { + stroke: var(--snap-line-stroke-color); + stroke-linecap: round; + stroke-width: 2px; + pointer-events: none; +} + +/** + * snapping + */ +.djs-crosshair { + stroke: var(--space-tool-crosshair-stroke-color); + stroke-linecap: round; + stroke-width: 1px; + pointer-events: none; + shape-rendering: crispEdges; + stroke-dasharray: 5, 5; +} + +/** + * palette + */ + +.djs-palette { + position: absolute; + left: 20px; + top: 20px; + + box-sizing: border-box; + width: 48px; +} + +.djs-palette .separator { + margin: 0 5px; + padding-top: 5px; + + border: none; + border-bottom: solid 1px var(--palette-separator-color); + + clear: both; +} + +.djs-palette .entry:before { + vertical-align: text-bottom; +} + +.djs-palette .djs-palette-toggle { + cursor: pointer; +} + +.djs-palette .entry, +.djs-palette .djs-palette-toggle { + color: var(--palette-entry-color); + font-size: 30px; + + text-align: center; +} + +.djs-palette .entry { + float: left; +} + +.djs-palette .entry img { + max-width: 100%; +} + +.djs-palette .djs-palette-entries:after { + content: ''; + display: table; + clear: both; +} + +.djs-palette .djs-palette-toggle:hover { + background: var(--palette-toggle-hover-background-color); +} + +.djs-palette .entry:hover { + color: var(--palette-entry-hover-color); +} + +.djs-palette .highlighted-entry { + color: var(--palette-entry-selected-color) !important; +} + +.djs-palette .entry, +.djs-palette .djs-palette-toggle { + width: 46px; + height: 46px; + line-height: 46px; + cursor: default; +} + +/** + * Palette open / two-column layout is controlled via + * classes on the palette. Events to hook into palette + * changed life-cycle are available in addition. + */ +.djs-palette.two-column.open { + width: 94px; +} + +.djs-palette:not(.open) .djs-palette-entries { + display: none; +} + +.djs-palette:not(.open) { + overflow: hidden; +} + +.djs-palette.open .djs-palette-toggle { + display: none; +} + +/** + * context-pad + */ +.djs-overlay-context-pad { + width: 72px; +} + +.djs-context-pad { + position: absolute; + display: none; + pointer-events: none; +} + +.djs-context-pad .entry { + width: 22px; + height: 22px; + text-align: center; + display: inline-block; + font-size: 22px; + margin: 0 2px 2px 0; + + border-radius: 3px; + + cursor: default; + + background-color: var(--context-pad-entry-background-color); + box-shadow: 0 0 2px 1px var(--context-pad-entry-background-color); + pointer-events: all; +} + +.djs-context-pad .entry:before { + vertical-align: top; +} + +.djs-context-pad .entry:hover { + background: var(--context-pad-entry-hover-background-color); +} + +.djs-context-pad.open { + display: block; +} + +/** + * popup styles + */ +.djs-popup .entry { + line-height: 20px; + white-space: nowrap; + cursor: default; +} + +/* larger font for prefixed icons */ +.djs-popup .entry:before { + vertical-align: middle; + font-size: 20px; +} + +.djs-popup .entry > span { + vertical-align: middle; + font-size: 14px; +} + +.djs-popup .entry:hover, +.djs-popup .entry.active:hover { + background: var(--popup-header-entry-selected-background-color); +} + +.djs-popup .entry.disabled { + background: inherit; +} + +.djs-popup .djs-popup-header .entry { + display: inline-block; + padding: 2px 3px 2px 3px; + + border: solid 1px transparent; + border-radius: 3px; +} + +.djs-popup .djs-popup-header .entry.active { + color: var(--popup-header-entry-selected-color); + border: solid 1px var(--popup-header-entry-selected-color); + background-color: var(--popup-header-entry-selected-background-color); +} + +.djs-popup-body .entry { + padding: 4px 10px 4px 5px; +} + +.djs-popup-body .entry > span { + margin-left: 5px; +} + +.djs-popup-body { + background-color: var(--popup-body-background-color); +} + +.djs-popup-header { + border-bottom: 1px solid var(--popup-header-separator-color); +} + +.djs-popup-header .entry { + margin: 1px; + margin-left: 3px; +} + +.djs-popup-header .entry:last-child { + margin-right: 3px; +} + +/** + * popup / palette styles + */ +.djs-palette { + background: var(--palette-background-color); + border: solid 1px var(--palette-border-color); + border-radius: 2px; +} + +.djs-popup { + background: var(--popup-background-color); + border: solid 1px var(--popup-border-color); + border-radius: 2px; +} + +/** + * touch + */ + +.djs-shape, +.djs-connection { + touch-action: none; +} + +.djs-segment-dragger, +.djs-bendpoint { + display: none; +} + +/** + * bendpoints + */ +.djs-segment-dragger .djs-visual { + display: none; + + fill: var(--bendpoint-fill-color); + stroke: var(--bendpoint-stroke-color); + stroke-width: 1px; + stroke-opacity: 1; +} + +.djs-segment-dragger:hover .djs-visual { + display: block; +} + +.djs-bendpoint .djs-visual { + fill: var(--bendpoint-fill-color); + stroke: var(--bendpoint-stroke-color); + stroke-width: 1px; + stroke-opacity: 0.5; +} + +.djs-segment-dragger:hover, +.djs-bendpoints.hover .djs-segment-dragger, +.djs-bendpoints.selected .djs-segment-dragger, +.djs-bendpoint:hover, +.djs-bendpoints.hover .djs-bendpoint, +.djs-bendpoints.selected .djs-bendpoint { + display: block; +} + +.djs-drag-active .djs-bendpoints * { + display: none; +} + +.djs-bendpoints:not(.hover) .floating { + display: none; +} + +.djs-segment-dragger:hover .djs-visual, +.djs-segment-dragger.djs-dragging .djs-visual, +.djs-bendpoint:hover .djs-visual, +.djs-bendpoint.floating .djs-visual { + fill: var(--bendpoint-fill-color); + stroke: var(--bendpoint-stroke-color); + stroke-opacity: 1; +} + +.djs-bendpoint.floating .djs-hit { + pointer-events: none; +} + +.djs-segment-dragger .djs-hit, +.djs-bendpoint .djs-hit { + fill: none; + pointer-events: all; +} + +.djs-segment-dragger.horizontal .djs-hit { + cursor: ns-resize; +} + +.djs-segment-dragger.vertical .djs-hit { + cursor: ew-resize; +} + +.djs-segment-dragger.djs-dragging .djs-hit { + pointer-events: none; +} + +.djs-updating, +.djs-updating > * { + pointer-events: none !important; +} + +.djs-updating .djs-context-pad, +.djs-updating .djs-outline, +.djs-updating .djs-bendpoint, +.connect-ok .djs-bendpoint, +.connect-not-ok .djs-bendpoint, +.drop-ok .djs-bendpoint, +.drop-not-ok .djs-bendpoint { + display: none !important; +} + +.djs-segment-dragger.djs-dragging, +.djs-bendpoint.djs-dragging { + display: block; + opacity: 1; +} + +/** + * tooltips + */ +.djs-tooltip-error { + width: 160px; + padding: 6px; + + background: var(--tooltip-error-background-color); + border: solid 1px var(--tooltip-error-border-color); + border-radius: 2px; + color: var(--tooltip-error-color); + font-size: 12px; + line-height: 16px; + + opacity: 0.75; +} + +.djs-tooltip-error:hover { + opacity: 1; +} + +/** + * search pad + */ +.djs-search-container { + position: absolute; + top: 20px; + left: 0; + right: 0; + margin-left: auto; + margin-right: auto; + + width: 25%; + min-width: 300px; + max-width: 400px; + z-index: 10; + + font-size: 1.05em; + opacity: 0.9; + background: var(--search-container-background-color); + border: solid 1px var(--search-container-border-color); + border-radius: 2px; + box-shadow: 0 0 0 2px var(--search-container-box-shadow-color), + 0 0 0 1px var(--search-container-box-shadow-inset-color) inset; +} + +.djs-search-container:not(.open) { + display: none; +} + +.djs-search-input input { + font-size: 1.05em; + width: 100%; + padding: 6px 10px; + border: 1px solid var(--search-input-border-color); +} + +.djs-search-input input:focus { + outline: none; + border-color: var(--search-input-border-color); +} + +.djs-search-results { + position: relative; + overflow-y: auto; + max-height: 200px; +} + +.djs-search-results:hover { + cursor: pointer; +} + +.djs-search-result { + width: 100%; + padding: 6px 10px; + background: white; + border-bottom: solid 1px var(--search-result-border-color); + border-radius: 1px; +} + +.djs-search-highlight { + color: var(--search-result-highlight-color); +} + +.djs-search-result-primary { + margin: 0 0 10px; +} + +.djs-search-result-secondary { + font-family: monospace; + margin: 0; +} + +.djs-search-result:hover { + background: var(--search-result-selected-color); +} + +.djs-search-result-selected { + background: var(--search-result-selected-color); +} + +.djs-search-result-selected:hover { + background: var(--search-result-selected-color); +} + +.djs-search-overlay { + background: var(--search-result-selected-color); +} + +/** + * hidden styles + */ +.djs-element-hidden, +.djs-element-hidden .djs-hit, +.djs-element-hidden .djs-outline, +.djs-label-hidden .djs-label { + display: none !important; +} diff --git a/src/assets/style/designer/index.css b/src/assets/style/designer/index.css new file mode 100644 index 0000000..10dc922 --- /dev/null +++ b/src/assets/style/designer/index.css @@ -0,0 +1,458 @@ +::-webkit-scrollbar { + width: 5px; + height: 5px; +} +::-webkit-scrollbar-thumb { + border-radius: 1em; + background-color: rgba(50,50,50,0.3); +} +::-webkit-scrollbar-track { + border-radius: 1em; + background-color: rgba(50,50,50,0.1); +} +.fc-style .ant-radio-wrapper { + margin: 8px 8px 0 8px; +} +.fc-style .ant-checkbox-wrapper { + margin: 8px 8px 0 8px; +} +.fc-style .ant-time-picker { + min-width: 200px; +} +.fc-style .ant-form-item-control-wrapper { + flex: 1; +} +.fc-style .el-main { + padding: 0; +} +.fc-style .el-dialog__header { + border-bottom: 1px solid #f0f0f0; +} +.fc-style .el-dialog__body { + padding: 15px 20px; +} +.fc-style .el-dialog__footer { + border-top: 1px solid #f2f6fc; + padding: 10px 15px; +} +.fc-style .el-radio-group { + margin-top: 10px; + vertical-align: super; +} +.fc-style .el-radio { + margin-bottom: 10px; +} +.fc-style .el-rate { + margin-top: 6px; +} + +.fc-style { + height: 100%; +} +.fc-style *, +.fc-style :after, +.fc-style :before { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.fc-style .fc-container { + background: #fff; + height: 100%; +} +.fc-style .fc-container .ant-layout, +.fc-style .fc-container .el-container { + height: 100% !important; +} +.fc-style .fc-container>.ant-layout, +.fc-style .fc-container .el-container { + background: #fff; +} +.fc-style .fc-container .fc-main { + position: relative; +} +.fc-style .fc-container .fc-main>.ant-layout, +.fc-style .fc-container .fc-main .el-container { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; +} +.fc-style .center-container { + border-left: 1px solid #e0e0e0; + border-right: 1px solid #e0e0e0; +} +.fc-style .center-container .btn-bar { + height: 45px !important; + line-height: 45px; + font-size: 18px; + border-bottom: 2px solid #e4e7ed; + text-align: right; + background-color: #fff; + padding: 0 10px; +} +.fc-style .center-container .btn-bar .svg-icon { + font-size: 16px; + margin-right: 5px; +} +.fc-style .center-container .ant-layout-content, +.fc-style .center-container .el-main { + height: calc(100% - 45px); + padding: 0; + position: relative; + background: #fafafa; +} +.fc-style .components { + padding: 8px 0; + width: 100%; + height: 100%; +} +.fc-style .components .widget-cate { + padding: 8px 12px; + font-size: 13px; +} +.fc-style .components ul { + position: relative; + overflow: hidden; + padding: 0 10px 10px; + margin: 0; +} +.fc-style .components .form-edit-widget-label { + font-size: 12px; + display: block; + width: 48%; + /* line-height: 26px; */ + line-height: 40px; + position: relative; + float: left; + left: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + margin: 1%; + border: 1px solid #f4f6fc; +} +.fc-style .components .form-edit-widget-label:hover { + border: 1px dashed #409eff; +} +.fc-style .components .form-edit-widget-label:hover>a { + color: #409eff; +} +.fc-style .components .form-edit-widget-label>a { + color: #333; + /* display: block; */ + display: flex; + justify-content: center; + align-items: center; + cursor: move; + background: #f4f6fc; + border: 1px solid #f3f9ff; +} +/* .fc-style .components .form-edit-widget-label>a .svg-icon { + margin-right: 6px; + margin-left: 8px; + font-size: 14px; + display: inline-block; + vertical-align: middle; +} */ +.fc-style .components .form-edit-widget-label>a span { + /* display: inline-block; + vertical-align: middle; */ + margin-left: 10px; +} +.fc-style .widget-form-container { + position: absolute; + top: 0px; + left: 0px; + right: 300px; + bottom: 0; + width: 100%; +} +.fc-style .widget-form-container .widget-form-list { + background: #fff; + border: 1px dashed #999; + min-height: calc(100vh - 65px); + margin: 10px; +} +.fc-style .widget-form-container .widget-form-list .widget-item-container { + position: relative; +} +.fc-style .widget-form-container .widget-form-list .widget-item-container .widget-view-action { + position: absolute; + right: 0; + bottom: -2px; + height: 28px; + line-height: 28px; + background: #409eff; + z-index: 10; +} +.fc-style .widget-form-container .widget-form-list .widget-item-container .widget-view-action .svg-icon { + font-size: 14px; + color: #fff; + margin: 0 5px; + cursor: pointer; +} +.fc-style .widget-form-container .widget-form-list .widget-item-container .widget-view-drag { + position: absolute; + height: 28px; + left: 0; + top: -2px; + line-height: 28px; + background: #409eff; + z-index: 10; +} +.fc-style .widget-form-container .widget-form-list .widget-item-container .widget-view-drag .svg-icon { + font-size: 14px; + color: #fff; + margin: 0 5px; + cursor: move; +} +.fc-style .widget-form-container .widget-form-list .widget-col-list { + min-height: 100px; + border: 1px dashed #ccc; + background: #fff; +} +.fc-style .widget-form-container .widget-form-list .widget-view { + padding-bottom: 18px; + position: relative; + border: 1px dashed rgba(170,170,170,0.7); + background-color: rgba(236,245,255,0.3); + margin: 2px; +} +.fc-style .widget-form-container .widget-form-list .widget-view .widget-view-description { + height: 15px; + line-height: 15px; + font-size: 13px; + margin-top: 6px; + color: #909399; +} +.fc-style .widget-form-container .widget-form-list .widget-view:after { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + display: block; +} +.fc-style .widget-form-container .widget-form-list .widget-view:hover { + background: #ecf5ff; + outline: 1px solid #409eff; + outline-offset: 0; +} +.fc-style .widget-form-container .widget-form-list .widget-view:hover.active { + outline: 2px solid #409eff; + border: 1px solid #409eff; + outline-offset: 0; +} +.fc-style .widget-form-container .widget-form-list .widget-view:hover .widget-view-drag { + display: block; +} +.fc-style .widget-form-container .widget-form-list .widget-view.active { + outline: 2px solid #409eff; + border: 1px solid #409eff; +} +.fc-style .widget-form-container .widget-form-list .widget-view.ghost { + background: #f56c6c; + border: 2px solid #f56c6c; + outline-width: 0; + height: 3px; + box-sizing: border-box; + font-size: 0; + content: ''; + overflow: hidden; + padding: 0; +} +.fc-style .widget-form-container .widget-form-list .widget-col { + padding: 5px; + background-color: rgba(253,246,236,0.3); +} +.fc-style .widget-form-container .widget-form-list .widget-col.active { + outline: 2px solid #e6a23c; + border: 1px solid #e6a23c; +} +.fc-style .widget-form-container .widget-form-list .widget-col:hover { + background: #fdf6ec; + outline: 1px solid #e6a23c; + outline-offset: 0px; +} +.fc-style .widget-form-container .widget-form-list .widget-col:hover.active { + outline: 2px solid #e6a23c; + border: 1px solid #e6a23c; + outline-offset: 0; +} +.fc-style .widget-form-container .widget-form-list .widget-col.ghost { + background: #f56c6c; + border: 2px solid #f56c6c; + outline-width: 0; + height: 3px; + box-sizing: border-box; + font-size: 0; + content: ''; + overflow: hidden; + padding: 0; +} +.fc-style .widget-form-container .widget-form-list .widget-col .widget-view-action.widget-col-action { + position: absolute; + height: 28px; + right: -2px; + bottom: -2px; + line-height: 28px; + background: #e6a23c; + z-index: 10; +} +.fc-style .widget-form-container .widget-form-list .widget-col .widget-view-action.widget-col-action .svg-icon { + font-size: 14px; + color: #fff; + margin: 0 5px; + cursor: move; +} +.fc-style .widget-form-container .widget-form-list .widget-col .widget-view-drag.widget-col-drag { + position: absolute; + height: 28px; + left: -2px; + top: -2px; + line-height: 28px; + background: #e6a23c; + z-index: 10; +} +.fc-style .widget-form-container .widget-form-list .widget-col .widget-view-drag.widget-col-drag .svg-icon { + font-size: 14px; + color: #fff; + margin: 0 5px; + cursor: move; +} +.fc-style .widget-form-container .widget-form-list .widget-col::after { + display: none; +} +.fc-style .widget-form-container .widget-form-list .ghost { + background: #f56c6c; + border: 2px solid #f56c6c; + outline-width: 0; + height: 3px; + box-sizing: border-box; + font-size: 0; + content: ''; + overflow: hidden; + padding: 0; +} +.fc-style .widget-form-container .ghost { + background: #f56c6c; + border: 2px solid #f56c6c; + position: relative; +} +.fc-style .widget-form-container .ghost::after { + background: #f56c6c; +} +.fc-style .widget-form-container li.ghost { + height: 5px; + list-style: none; + font-size: 0; + overflow: hidden; +} +.fc-style .widget-config-container { + position: relative; +} +.fc-style .widget-config-container .ant-layout-header, +.fc-style .widget-config-container .el-header { + border-bottom: 2px solid #e4e7ed; + padding: 0 5px; + height: 45px !important; + line-height: 45px !important; + background-color: #fff; +} +.fc-style .widget-config-container .config-tab { + height: 41px; + line-height: 41px; + display: inline-block; + width: 145px; + text-align: center; + font-size: 14px; + font-weight: 500; + position: relative; + cursor: pointer; +} +.fc-style .widget-config-container .config-tab.active { + border-bottom: 2px solid #409eff; +} +.fc-style .widget-config-container .config-content { + padding: 10px; + background: #fff; + overflow: auto; +} +.fc-style .widget-config-container .config-content .ant-form-item-label, +.fc-style .widget-config-container .config-content .el-form-item__label { + font-weight: 500; +} +.fc-style .widget-config-container .config-content .el-form-item__label { + padding: 0; +} +.fc-style .widget-config-container .config-content .ant-form-item, +.fc-style .widget-config-container .config-content .el-form-item, +.fc-style .widget-config-container .config-content h4 { + padding-bottom: 10px; + border-bottom: 1px solid #e1e1e1; +} +.fc-style .widget-config-container .config-content .label { + font-size: 14px; + font-weight: 500; + margin: 0 5px; +} +.fc-style .widget-config-container .config-content .label:first-child { + margin-left: 0; +} +.fc-style .widget-config-container .config-content .drag-item { + font-size: 16px; + margin: 0 5px; + cursor: move; +} +.fc-style .widget-config-container .ghost { + background: #fff; + border: 1px dashed #409eff; +} +.fc-style .widget-config-container .ghost::after { + background: #fff; + display: block; + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; +} +.fc-style .widget-config-container ul { + margin: 0; + padding: 0; +} +.fc-style .widget-config-container li.ghost { + list-style: none; + font-size: 0; + display: block; + position: relative; +} +.fc-style .form-empty { + position: absolute; + text-align: center; + width: 300px; + font-size: 20px; + top: 200px; + left: 50%; + margin-left: -150px; + color: #ccc; +} +.fc-style .widget-empty { + background-position: 50%; +} + + + +.ant-layout-sider{ + z-index: 99; +} +.center-container +{ + height:calc(100% - 76px)!important; + overflow: hidden; +} +.fc-style{height:100%;} +.ant-layout{height:100%!important;} \ No newline at end of file diff --git a/src/assets/svg/illustration.svg b/src/assets/svg/illustration.svg new file mode 100644 index 0000000..b45215b --- /dev/null +++ b/src/assets/svg/illustration.svg @@ -0,0 +1 @@ +Asset 336 \ No newline at end of file diff --git a/src/assets/svg/login-bg-dark.svg b/src/assets/svg/login-bg-dark.svg new file mode 100644 index 0000000..888da7a --- /dev/null +++ b/src/assets/svg/login-bg-dark.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/svg/login-bg.svg b/src/assets/svg/login-bg.svg new file mode 100644 index 0000000..7b66baf --- /dev/null +++ b/src/assets/svg/login-bg.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/assets/svg/login-box-bg.svg b/src/assets/svg/login-box-bg.svg new file mode 100644 index 0000000..ee7dbdc --- /dev/null +++ b/src/assets/svg/login-box-bg.svg @@ -0,0 +1 @@ +responsive \ No newline at end of file diff --git a/src/assets/svg/net-error.svg b/src/assets/svg/net-error.svg new file mode 100644 index 0000000..81f2004 --- /dev/null +++ b/src/assets/svg/net-error.svg @@ -0,0 +1 @@ +personal settings \ No newline at end of file diff --git a/src/assets/svg/no-data.svg b/src/assets/svg/no-data.svg new file mode 100644 index 0000000..2b9f257 --- /dev/null +++ b/src/assets/svg/no-data.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/svg/preview/p-rotate.svg b/src/assets/svg/preview/p-rotate.svg new file mode 100644 index 0000000..5153a81 --- /dev/null +++ b/src/assets/svg/preview/p-rotate.svg @@ -0,0 +1 @@ + diff --git a/src/assets/svg/preview/resume.svg b/src/assets/svg/preview/resume.svg new file mode 100644 index 0000000..0e86c5f --- /dev/null +++ b/src/assets/svg/preview/resume.svg @@ -0,0 +1 @@ + diff --git a/src/assets/svg/preview/scale.svg b/src/assets/svg/preview/scale.svg new file mode 100644 index 0000000..1f7adae --- /dev/null +++ b/src/assets/svg/preview/scale.svg @@ -0,0 +1 @@ + diff --git a/src/assets/svg/preview/unrotate.svg b/src/assets/svg/preview/unrotate.svg new file mode 100644 index 0000000..e4708be --- /dev/null +++ b/src/assets/svg/preview/unrotate.svg @@ -0,0 +1 @@ + diff --git a/src/assets/svg/preview/unscale.svg b/src/assets/svg/preview/unscale.svg new file mode 100644 index 0000000..1359b34 --- /dev/null +++ b/src/assets/svg/preview/unscale.svg @@ -0,0 +1 @@ + diff --git a/src/assets/sync/apiSync.png b/src/assets/sync/apiSync.png new file mode 100644 index 0000000..47850fc Binary files /dev/null and b/src/assets/sync/apiSync.png differ diff --git a/src/assets/sync/codeExport.png b/src/assets/sync/codeExport.png new file mode 100644 index 0000000..0c434eb Binary files /dev/null and b/src/assets/sync/codeExport.png differ diff --git a/src/assets/sync/codeImport.png b/src/assets/sync/codeImport.png new file mode 100644 index 0000000..b22ea67 Binary files /dev/null and b/src/assets/sync/codeImport.png differ diff --git a/src/assets/sync/dicExport.png b/src/assets/sync/dicExport.png new file mode 100644 index 0000000..2ddf146 Binary files /dev/null and b/src/assets/sync/dicExport.png differ diff --git a/src/assets/sync/dicImport.png b/src/assets/sync/dicImport.png new file mode 100644 index 0000000..af3e749 Binary files /dev/null and b/src/assets/sync/dicImport.png differ diff --git a/src/assets/sync/flowSync.png b/src/assets/sync/flowSync.png new file mode 100644 index 0000000..2720f71 Binary files /dev/null and b/src/assets/sync/flowSync.png differ diff --git a/src/assets/sync/formSync.png b/src/assets/sync/formSync.png new file mode 100644 index 0000000..0f2e543 Binary files /dev/null and b/src/assets/sync/formSync.png differ diff --git a/src/assets/sync/linkExport.png b/src/assets/sync/linkExport.png new file mode 100644 index 0000000..9e8071e Binary files /dev/null and b/src/assets/sync/linkExport.png differ diff --git a/src/assets/sync/linkImport.png b/src/assets/sync/linkImport.png new file mode 100644 index 0000000..c39bfd2 Binary files /dev/null and b/src/assets/sync/linkImport.png differ diff --git a/src/assets/sync/menuExport.png b/src/assets/sync/menuExport.png new file mode 100644 index 0000000..debd685 Binary files /dev/null and b/src/assets/sync/menuExport.png differ diff --git a/src/assets/sync/menuImport.png b/src/assets/sync/menuImport.png new file mode 100644 index 0000000..9e514d9 Binary files /dev/null and b/src/assets/sync/menuImport.png differ diff --git a/src/assets/workflow/Frame.png b/src/assets/workflow/Frame.png new file mode 100644 index 0000000..b4487b8 Binary files /dev/null and b/src/assets/workflow/Frame.png differ diff --git a/src/assets/workflow/custom-form.png b/src/assets/workflow/custom-form.png new file mode 100644 index 0000000..784d564 Binary files /dev/null and b/src/assets/workflow/custom-form.png differ diff --git a/src/assets/workflow/fewer-left.png b/src/assets/workflow/fewer-left.png new file mode 100644 index 0000000..08f69ed Binary files /dev/null and b/src/assets/workflow/fewer-left.png differ diff --git a/src/assets/workflow/fewer-right.png b/src/assets/workflow/fewer-right.png new file mode 100644 index 0000000..c62fb1e Binary files /dev/null and b/src/assets/workflow/fewer-right.png differ diff --git a/src/assets/workflow/process_import.png b/src/assets/workflow/process_import.png new file mode 100644 index 0000000..395b0d1 Binary files /dev/null and b/src/assets/workflow/process_import.png differ diff --git a/src/assets/workflow/system-form.png b/src/assets/workflow/system-form.png new file mode 100644 index 0000000..f91b69b Binary files /dev/null and b/src/assets/workflow/system-form.png differ diff --git a/src/assets/workflow/template.png b/src/assets/workflow/template.png new file mode 100644 index 0000000..966ba5e Binary files /dev/null and b/src/assets/workflow/template.png differ diff --git a/src/components/Dropdown/index.ts b/src/components/Dropdown/index.ts new file mode 100644 index 0000000..80439e5 --- /dev/null +++ b/src/components/Dropdown/index.ts @@ -0,0 +1,5 @@ +import { withInstall } from '/@/utils'; +import dropdown from './src/Dropdown.vue'; + +export * from './src/typing'; +export const Dropdown = withInstall(dropdown); diff --git a/src/components/Dropdown/src/Dropdown.vue b/src/components/Dropdown/src/Dropdown.vue new file mode 100644 index 0000000..c70a99e --- /dev/null +++ b/src/components/Dropdown/src/Dropdown.vue @@ -0,0 +1,96 @@ + + + diff --git a/src/components/Dropdown/src/typing.ts b/src/components/Dropdown/src/typing.ts new file mode 100644 index 0000000..29de8cb --- /dev/null +++ b/src/components/Dropdown/src/typing.ts @@ -0,0 +1,9 @@ +export interface DropMenu { + onClick?: Fn; + to?: string; + icon?: string; + event: string | number; + text: string; + disabled?: boolean; + divider?: boolean; +} diff --git a/src/components/Icon/data/icons.data.ts b/src/components/Icon/data/icons.data.ts new file mode 100644 index 0000000..bcac58e --- /dev/null +++ b/src/components/Icon/data/icons.data.ts @@ -0,0 +1,791 @@ +export default [ + 'ant-design:account-book-filled', + 'ant-design:account-book-outlined', + 'ant-design:account-book-twotone', + 'ant-design:aim-outlined', + 'ant-design:alert-filled', + 'ant-design:alert-outlined', + 'ant-design:alert-twotone', + 'ant-design:alibaba-outlined', + 'ant-design:align-center-outlined', + 'ant-design:align-left-outlined', + 'ant-design:align-right-outlined', + 'ant-design:alipay-circle-filled', + 'ant-design:alipay-circle-outlined', + 'ant-design:alipay-outlined', + 'ant-design:alipay-square-filled', + 'ant-design:aliwangwang-filled', + 'ant-design:aliwangwang-outlined', + 'ant-design:aliyun-outlined', + 'ant-design:amazon-circle-filled', + 'ant-design:amazon-outlined', + 'ant-design:amazon-square-filled', + 'ant-design:android-filled', + 'ant-design:android-outlined', + 'ant-design:ant-cloud-outlined', + 'ant-design:ant-design-outlined', + 'ant-design:apartment-outlined', + 'ant-design:api-filled', + 'ant-design:api-outlined', + 'ant-design:api-twotone', + 'ant-design:apple-filled', + 'ant-design:apple-outlined', + 'ant-design:appstore-add-outlined', + 'ant-design:appstore-filled', + 'ant-design:appstore-outlined', + 'ant-design:appstore-twotone', + 'ant-design:area-chart-outlined', + 'ant-design:arrow-down-outlined', + 'ant-design:arrow-left-outlined', + 'ant-design:arrow-right-outlined', + 'ant-design:arrow-up-outlined', + 'ant-design:arrows-alt-outlined', + 'ant-design:audio-filled', + 'ant-design:audio-muted-outlined', + 'ant-design:audio-outlined', + 'ant-design:audio-twotone', + 'ant-design:audit-outlined', + 'ant-design:backward-filled', + 'ant-design:backward-outlined', + 'ant-design:bank-filled', + 'ant-design:bank-outlined', + 'ant-design:bank-twotone', + 'ant-design:bar-chart-outlined', + 'ant-design:barcode-outlined', + 'ant-design:bars-outlined', + 'ant-design:behance-circle-filled', + 'ant-design:behance-outlined', + 'ant-design:behance-square-filled', + 'ant-design:behance-square-outlined', + 'ant-design:bell-filled', + 'ant-design:bell-outlined', + 'ant-design:bell-twotone', + 'ant-design:bg-colors-outlined', + 'ant-design:block-outlined', + 'ant-design:bold-outlined', + 'ant-design:book-filled', + 'ant-design:book-outlined', + 'ant-design:book-twotone', + 'ant-design:border-bottom-outlined', + 'ant-design:border-horizontal-outlined', + 'ant-design:border-inner-outlined', + 'ant-design:border-left-outlined', + 'ant-design:border-outer-outlined', + 'ant-design:border-outlined', + 'ant-design:border-right-outlined', + 'ant-design:border-top-outlined', + 'ant-design:border-verticle-outlined', + 'ant-design:borderless-table-outlined', + 'ant-design:box-plot-filled', + 'ant-design:box-plot-outlined', + 'ant-design:box-plot-twotone', + 'ant-design:branches-outlined', + 'ant-design:bug-filled', + 'ant-design:bug-outlined', + 'ant-design:bug-twotone', + 'ant-design:build-filled', + 'ant-design:build-outlined', + 'ant-design:build-twotone', + 'ant-design:bulb-filled', + 'ant-design:bulb-outlined', + 'ant-design:bulb-twotone', + 'ant-design:calculator-filled', + 'ant-design:calculator-outlined', + 'ant-design:calculator-twotone', + 'ant-design:calendar-filled', + 'ant-design:calendar-outlined', + 'ant-design:calendar-twotone', + 'ant-design:camera-filled', + 'ant-design:camera-outlined', + 'ant-design:camera-twotone', + 'ant-design:car-filled', + 'ant-design:car-outlined', + 'ant-design:car-twotone', + 'ant-design:caret-down-filled', + 'ant-design:caret-down-outlined', + 'ant-design:caret-left-filled', + 'ant-design:caret-left-outlined', + 'ant-design:caret-right-filled', + 'ant-design:caret-right-outlined', + 'ant-design:caret-up-filled', + 'ant-design:caret-up-outlined', + 'ant-design:carry-out-filled', + 'ant-design:carry-out-outlined', + 'ant-design:carry-out-twotone', + 'ant-design:check-circle-filled', + 'ant-design:check-circle-outlined', + 'ant-design:check-circle-twotone', + 'ant-design:check-outlined', + 'ant-design:check-square-filled', + 'ant-design:check-square-outlined', + 'ant-design:check-square-twotone', + 'ant-design:chrome-filled', + 'ant-design:chrome-outlined', + 'ant-design:ci-circle-filled', + 'ant-design:ci-circle-outlined', + 'ant-design:ci-circle-twotone', + 'ant-design:ci-outlined', + 'ant-design:ci-twotone', + 'ant-design:clear-outlined', + 'ant-design:clock-circle-filled', + 'ant-design:clock-circle-outlined', + 'ant-design:clock-circle-twotone', + 'ant-design:close-circle-filled', + 'ant-design:close-circle-outlined', + 'ant-design:close-circle-twotone', + 'ant-design:close-outlined', + 'ant-design:close-square-filled', + 'ant-design:close-square-outlined', + 'ant-design:close-square-twotone', + 'ant-design:cloud-download-outlined', + 'ant-design:cloud-filled', + 'ant-design:cloud-outlined', + 'ant-design:cloud-server-outlined', + 'ant-design:cloud-sync-outlined', + 'ant-design:cloud-twotone', + 'ant-design:cloud-upload-outlined', + 'ant-design:cluster-outlined', + 'ant-design:code-filled', + 'ant-design:code-outlined', + 'ant-design:code-sandbox-circle-filled', + 'ant-design:code-sandbox-outlined', + 'ant-design:code-sandbox-square-filled', + 'ant-design:code-twotone', + 'ant-design:codepen-circle-filled', + 'ant-design:codepen-circle-outlined', + 'ant-design:codepen-outlined', + 'ant-design:codepen-square-filled', + 'ant-design:coffee-outlined', + 'ant-design:column-height-outlined', + 'ant-design:column-width-outlined', + 'ant-design:comment-outlined', + 'ant-design:compass-filled', + 'ant-design:compass-outlined', + 'ant-design:compass-twotone', + 'ant-design:compress-outlined', + 'ant-design:console-sql-outlined', + 'ant-design:contacts-filled', + 'ant-design:contacts-outlined', + 'ant-design:contacts-twotone', + 'ant-design:container-filled', + 'ant-design:container-outlined', + 'ant-design:container-twotone', + 'ant-design:control-filled', + 'ant-design:control-outlined', + 'ant-design:control-twotone', + 'ant-design:copy-filled', + 'ant-design:copy-outlined', + 'ant-design:copy-twotone', + 'ant-design:copyright-circle-filled', + 'ant-design:copyright-circle-outlined', + 'ant-design:copyright-circle-twotone', + 'ant-design:copyright-outlined', + 'ant-design:copyright-twotone', + 'ant-design:credit-card-filled', + 'ant-design:credit-card-outlined', + 'ant-design:credit-card-twotone', + 'ant-design:crown-filled', + 'ant-design:crown-outlined', + 'ant-design:crown-twotone', + 'ant-design:customer-service-filled', + 'ant-design:customer-service-outlined', + 'ant-design:customer-service-twotone', + 'ant-design:dash-outlined', + 'ant-design:dashboard-filled', + 'ant-design:dashboard-outlined', + 'ant-design:dashboard-twotone', + 'ant-design:database-filled', + 'ant-design:database-outlined', + 'ant-design:database-twotone', + 'ant-design:delete-column-outlined', + 'ant-design:delete-filled', + 'ant-design:delete-outlined', + 'ant-design:delete-row-outlined', + 'ant-design:delete-twotone', + 'ant-design:delivered-procedure-outlined', + 'ant-design:deployment-unit-outlined', + 'ant-design:desktop-outlined', + 'ant-design:diff-filled', + 'ant-design:diff-outlined', + 'ant-design:diff-twotone', + 'ant-design:dingding-outlined', + 'ant-design:dingtalk-circle-filled', + 'ant-design:dingtalk-outlined', + 'ant-design:dingtalk-square-filled', + 'ant-design:disconnect-outlined', + 'ant-design:dislike-filled', + 'ant-design:dislike-outlined', + 'ant-design:dislike-twotone', + 'ant-design:dollar-circle-filled', + 'ant-design:dollar-circle-outlined', + 'ant-design:dollar-circle-twotone', + 'ant-design:dollar-outlined', + 'ant-design:dollar-twotone', + 'ant-design:dot-chart-outlined', + 'ant-design:double-left-outlined', + 'ant-design:double-right-outlined', + 'ant-design:down-circle-filled', + 'ant-design:down-circle-outlined', + 'ant-design:down-circle-twotone', + 'ant-design:down-outlined', + 'ant-design:down-square-filled', + 'ant-design:down-square-outlined', + 'ant-design:down-square-twotone', + 'ant-design:download-outlined', + 'ant-design:drag-outlined', + 'ant-design:dribbble-circle-filled', + 'ant-design:dribbble-outlined', + 'ant-design:dribbble-square-filled', + 'ant-design:dribbble-square-outlined', + 'ant-design:dropbox-circle-filled', + 'ant-design:dropbox-outlined', + 'ant-design:dropbox-square-filled', + 'ant-design:edit-filled', + 'ant-design:edit-outlined', + 'ant-design:edit-twotone', + 'ant-design:ellipsis-outlined', + 'ant-design:enter-outlined', + 'ant-design:environment-filled', + 'ant-design:environment-outlined', + 'ant-design:environment-twotone', + 'ant-design:euro-circle-filled', + 'ant-design:euro-circle-outlined', + 'ant-design:euro-circle-twotone', + 'ant-design:euro-outlined', + 'ant-design:euro-twotone', + 'ant-design:exception-outlined', + 'ant-design:exclamation-circle-filled', + 'ant-design:exclamation-circle-outlined', + 'ant-design:exclamation-circle-twotone', + 'ant-design:exclamation-outlined', + 'ant-design:expand-alt-outlined', + 'ant-design:expand-outlined', + 'ant-design:experiment-filled', + 'ant-design:experiment-outlined', + 'ant-design:experiment-twotone', + 'ant-design:export-outlined', + 'ant-design:eye-filled', + 'ant-design:eye-invisible-filled', + 'ant-design:eye-invisible-outlined', + 'ant-design:eye-invisible-twotone', + 'ant-design:eye-outlined', + 'ant-design:eye-twotone', + 'ant-design:facebook-filled', + 'ant-design:facebook-outlined', + 'ant-design:fall-outlined', + 'ant-design:fast-backward-filled', + 'ant-design:fast-backward-outlined', + 'ant-design:fast-forward-filled', + 'ant-design:fast-forward-outlined', + 'ant-design:field-binary-outlined', + 'ant-design:field-number-outlined', + 'ant-design:field-string-outlined', + 'ant-design:field-time-outlined', + 'ant-design:file-add-filled', + 'ant-design:file-add-outlined', + 'ant-design:file-add-twotone', + 'ant-design:file-done-outlined', + 'ant-design:file-excel-filled', + 'ant-design:file-excel-outlined', + 'ant-design:file-excel-twotone', + 'ant-design:file-exclamation-filled', + 'ant-design:file-exclamation-outlined', + 'ant-design:file-exclamation-twotone', + 'ant-design:file-filled', + 'ant-design:file-gif-outlined', + 'ant-design:file-image-filled', + 'ant-design:file-image-outlined', + 'ant-design:file-image-twotone', + 'ant-design:file-jpg-outlined', + 'ant-design:file-markdown-filled', + 'ant-design:file-markdown-outlined', + 'ant-design:file-markdown-twotone', + 'ant-design:file-outlined', + 'ant-design:file-pdf-filled', + 'ant-design:file-pdf-outlined', + 'ant-design:file-pdf-twotone', + 'ant-design:file-ppt-filled', + 'ant-design:file-ppt-outlined', + 'ant-design:file-ppt-twotone', + 'ant-design:file-protect-outlined', + 'ant-design:file-search-outlined', + 'ant-design:file-sync-outlined', + 'ant-design:file-text-filled', + 'ant-design:file-text-outlined', + 'ant-design:file-text-twotone', + 'ant-design:file-twotone', + 'ant-design:file-unknown-filled', + 'ant-design:file-unknown-outlined', + 'ant-design:file-unknown-twotone', + 'ant-design:file-word-filled', + 'ant-design:file-word-outlined', + 'ant-design:file-word-twotone', + 'ant-design:file-zip-filled', + 'ant-design:file-zip-outlined', + 'ant-design:file-zip-twotone', + 'ant-design:filter-filled', + 'ant-design:filter-outlined', + 'ant-design:filter-twotone', + 'ant-design:fire-filled', + 'ant-design:fire-outlined', + 'ant-design:fire-twotone', + 'ant-design:flag-filled', + 'ant-design:flag-outlined', + 'ant-design:flag-twotone', + 'ant-design:folder-add-filled', + 'ant-design:folder-add-outlined', + 'ant-design:folder-add-twotone', + 'ant-design:folder-filled', + 'ant-design:folder-open-filled', + 'ant-design:folder-open-outlined', + 'ant-design:folder-open-twotone', + 'ant-design:folder-outlined', + 'ant-design:folder-twotone', + 'ant-design:folder-view-outlined', + 'ant-design:font-colors-outlined', + 'ant-design:font-size-outlined', + 'ant-design:fork-outlined', + 'ant-design:form-outlined', + 'ant-design:format-painter-filled', + 'ant-design:format-painter-outlined', + 'ant-design:forward-filled', + 'ant-design:forward-outlined', + 'ant-design:frown-filled', + 'ant-design:frown-outlined', + 'ant-design:frown-twotone', + 'ant-design:fullscreen-exit-outlined', + 'ant-design:fullscreen-outlined', + 'ant-design:function-outlined', + 'ant-design:fund-filled', + 'ant-design:fund-outlined', + 'ant-design:fund-projection-screen-outlined', + 'ant-design:fund-twotone', + 'ant-design:fund-view-outlined', + 'ant-design:funnel-plot-filled', + 'ant-design:funnel-plot-outlined', + 'ant-design:funnel-plot-twotone', + 'ant-design:gateway-outlined', + 'ant-design:gif-outlined', + 'ant-design:gift-filled', + 'ant-design:gift-outlined', + 'ant-design:gift-twotone', + 'ant-design:github-filled', + 'ant-design:github-outlined', + 'ant-design:gitlab-filled', + 'ant-design:gitlab-outlined', + 'ant-design:global-outlined', + 'ant-design:gold-filled', + 'ant-design:gold-outlined', + 'ant-design:gold-twotone', + 'ant-design:golden-filled', + 'ant-design:google-circle-filled', + 'ant-design:google-outlined', + 'ant-design:google-plus-circle-filled', + 'ant-design:google-plus-outlined', + 'ant-design:google-plus-square-filled', + 'ant-design:google-square-filled', + 'ant-design:group-outlined', + 'ant-design:hdd-filled', + 'ant-design:hdd-outlined', + 'ant-design:hdd-twotone', + 'ant-design:heart-filled', + 'ant-design:heart-outlined', + 'ant-design:heart-twotone', + 'ant-design:heat-map-outlined', + 'ant-design:highlight-filled', + 'ant-design:highlight-outlined', + 'ant-design:highlight-twotone', + 'ant-design:history-outlined', + 'ant-design:holder-outlined', + 'ant-design:home-filled', + 'ant-design:home-outlined', + 'ant-design:home-twotone', + 'ant-design:hourglass-filled', + 'ant-design:hourglass-outlined', + 'ant-design:hourglass-twotone', + 'ant-design:html5-filled', + 'ant-design:html5-outlined', + 'ant-design:html5-twotone', + 'ant-design:idcard-filled', + 'ant-design:idcard-outlined', + 'ant-design:idcard-twotone', + 'ant-design:ie-circle-filled', + 'ant-design:ie-outlined', + 'ant-design:ie-square-filled', + 'ant-design:import-outlined', + 'ant-design:inbox-outlined', + 'ant-design:info-circle-filled', + 'ant-design:info-circle-outlined', + 'ant-design:info-circle-twotone', + 'ant-design:info-outlined', + 'ant-design:insert-row-above-outlined', + 'ant-design:insert-row-below-outlined', + 'ant-design:insert-row-left-outlined', + 'ant-design:insert-row-right-outlined', + 'ant-design:instagram-filled', + 'ant-design:instagram-outlined', + 'ant-design:insurance-filled', + 'ant-design:insurance-outlined', + 'ant-design:insurance-twotone', + 'ant-design:interaction-filled', + 'ant-design:interaction-outlined', + 'ant-design:interaction-twotone', + 'ant-design:issues-close-outlined', + 'ant-design:italic-outlined', + 'ant-design:key-outlined', + 'ant-design:laptop-outlined', + 'ant-design:layout-filled', + 'ant-design:layout-outlined', + 'ant-design:layout-twotone', + 'ant-design:left-circle-filled', + 'ant-design:left-circle-outlined', + 'ant-design:left-circle-twotone', + 'ant-design:left-outlined', + 'ant-design:left-square-filled', + 'ant-design:left-square-outlined', + 'ant-design:left-square-twotone', + 'ant-design:like-filled', + 'ant-design:like-outlined', + 'ant-design:like-twotone', + 'ant-design:line-chart-outlined', + 'ant-design:line-height-outlined', + 'ant-design:line-outlined', + 'ant-design:link-outlined', + 'ant-design:linkedin-filled', + 'ant-design:linkedin-outlined', + 'ant-design:loading-3-quarters-outlined', + 'ant-design:loading-outlined', + 'ant-design:lock-filled', + 'ant-design:lock-outlined', + 'ant-design:lock-twotone', + 'ant-design:login-outlined', + 'ant-design:logout-outlined', + 'ant-design:mac-command-filled', + 'ant-design:mac-command-outlined', + 'ant-design:mail-filled', + 'ant-design:mail-outlined', + 'ant-design:mail-twotone', + 'ant-design:man-outlined', + 'ant-design:medicine-box-filled', + 'ant-design:medicine-box-outlined', + 'ant-design:medicine-box-twotone', + 'ant-design:medium-circle-filled', + 'ant-design:medium-outlined', + 'ant-design:medium-square-filled', + 'ant-design:medium-workmark-outlined', + 'ant-design:meh-filled', + 'ant-design:meh-outlined', + 'ant-design:meh-twotone', + 'ant-design:menu-fold-outlined', + 'ant-design:menu-outlined', + 'ant-design:menu-unfold-outlined', + 'ant-design:merge-cells-outlined', + 'ant-design:message-filled', + 'ant-design:message-outlined', + 'ant-design:message-twotone', + 'ant-design:minus-circle-filled', + 'ant-design:minus-circle-outlined', + 'ant-design:minus-circle-twotone', + 'ant-design:minus-outlined', + 'ant-design:minus-square-filled', + 'ant-design:minus-square-outlined', + 'ant-design:minus-square-twotone', + 'ant-design:mobile-filled', + 'ant-design:mobile-outlined', + 'ant-design:mobile-twotone', + 'ant-design:money-collect-filled', + 'ant-design:money-collect-outlined', + 'ant-design:money-collect-twotone', + 'ant-design:monitor-outlined', + 'ant-design:more-outlined', + 'ant-design:node-collapse-outlined', + 'ant-design:node-expand-outlined', + 'ant-design:node-index-outlined', + 'ant-design:notification-filled', + 'ant-design:notification-outlined', + 'ant-design:notification-twotone', + 'ant-design:number-outlined', + 'ant-design:one-to-one-outlined', + 'ant-design:ordered-list-outlined', + 'ant-design:paper-clip-outlined', + 'ant-design:partition-outlined', + 'ant-design:pause-circle-filled', + 'ant-design:pause-circle-outlined', + 'ant-design:pause-circle-twotone', + 'ant-design:pause-outlined', + 'ant-design:pay-circle-filled', + 'ant-design:pay-circle-outlined', + 'ant-design:percentage-outlined', + 'ant-design:phone-filled', + 'ant-design:phone-outlined', + 'ant-design:phone-twotone', + 'ant-design:pic-center-outlined', + 'ant-design:pic-left-outlined', + 'ant-design:pic-right-outlined', + 'ant-design:picture-filled', + 'ant-design:picture-outlined', + 'ant-design:picture-twotone', + 'ant-design:pie-chart-filled', + 'ant-design:pie-chart-outlined', + 'ant-design:pie-chart-twotone', + 'ant-design:play-circle-filled', + 'ant-design:play-circle-outlined', + 'ant-design:play-circle-twotone', + 'ant-design:play-square-filled', + 'ant-design:play-square-outlined', + 'ant-design:play-square-twotone', + 'ant-design:plus-circle-filled', + 'ant-design:plus-circle-outlined', + 'ant-design:plus-circle-twotone', + 'ant-design:plus-outlined', + 'ant-design:plus-square-filled', + 'ant-design:plus-square-outlined', + 'ant-design:plus-square-twotone', + 'ant-design:pound-circle-filled', + 'ant-design:pound-circle-outlined', + 'ant-design:pound-circle-twotone', + 'ant-design:pound-outlined', + 'ant-design:poweroff-outlined', + 'ant-design:printer-filled', + 'ant-design:printer-outlined', + 'ant-design:printer-twotone', + 'ant-design:profile-filled', + 'ant-design:profile-outlined', + 'ant-design:profile-twotone', + 'ant-design:project-filled', + 'ant-design:project-outlined', + 'ant-design:project-twotone', + 'ant-design:property-safety-filled', + 'ant-design:property-safety-outlined', + 'ant-design:property-safety-twotone', + 'ant-design:pull-request-outlined', + 'ant-design:pushpin-filled', + 'ant-design:pushpin-outlined', + 'ant-design:pushpin-twotone', + 'ant-design:qq-circle-filled', + 'ant-design:qq-outlined', + 'ant-design:qq-square-filled', + 'ant-design:qrcode-outlined', + 'ant-design:question-circle-filled', + 'ant-design:question-circle-outlined', + 'ant-design:question-circle-twotone', + 'ant-design:question-outlined', + 'ant-design:radar-chart-outlined', + 'ant-design:radius-bottomleft-outlined', + 'ant-design:radius-bottomright-outlined', + 'ant-design:radius-setting-outlined', + 'ant-design:radius-upleft-outlined', + 'ant-design:radius-upright-outlined', + 'ant-design:read-filled', + 'ant-design:read-outlined', + 'ant-design:reconciliation-filled', + 'ant-design:reconciliation-outlined', + 'ant-design:reconciliation-twotone', + 'ant-design:red-envelope-filled', + 'ant-design:red-envelope-outlined', + 'ant-design:red-envelope-twotone', + 'ant-design:reddit-circle-filled', + 'ant-design:reddit-outlined', + 'ant-design:reddit-square-filled', + 'ant-design:redo-outlined', + 'ant-design:reload-outlined', + 'ant-design:rest-filled', + 'ant-design:rest-outlined', + 'ant-design:rest-twotone', + 'ant-design:retweet-outlined', + 'ant-design:right-circle-filled', + 'ant-design:right-circle-outlined', + 'ant-design:right-circle-twotone', + 'ant-design:right-outlined', + 'ant-design:right-square-filled', + 'ant-design:right-square-outlined', + 'ant-design:right-square-twotone', + 'ant-design:rise-outlined', + 'ant-design:robot-filled', + 'ant-design:robot-outlined', + 'ant-design:rocket-filled', + 'ant-design:rocket-outlined', + 'ant-design:rocket-twotone', + 'ant-design:rollback-outlined', + 'ant-design:rotate-left-outlined', + 'ant-design:rotate-right-outlined', + 'ant-design:safety-certificate-filled', + 'ant-design:safety-certificate-outlined', + 'ant-design:safety-certificate-twotone', + 'ant-design:safety-outlined', + 'ant-design:save-filled', + 'ant-design:save-outlined', + 'ant-design:save-twotone', + 'ant-design:scan-outlined', + 'ant-design:schedule-filled', + 'ant-design:schedule-outlined', + 'ant-design:schedule-twotone', + 'ant-design:scissor-outlined', + 'ant-design:search-outlined', + 'ant-design:security-scan-filled', + 'ant-design:security-scan-outlined', + 'ant-design:security-scan-twotone', + 'ant-design:select-outlined', + 'ant-design:send-outlined', + 'ant-design:setting-filled', + 'ant-design:setting-outlined', + 'ant-design:setting-twotone', + 'ant-design:shake-outlined', + 'ant-design:share-alt-outlined', + 'ant-design:shop-filled', + 'ant-design:shop-outlined', + 'ant-design:shop-twotone', + 'ant-design:shopping-cart-outlined', + 'ant-design:shopping-filled', + 'ant-design:shopping-outlined', + 'ant-design:shopping-twotone', + 'ant-design:shrink-outlined', + 'ant-design:signal-filled', + 'ant-design:sisternode-outlined', + 'ant-design:sketch-circle-filled', + 'ant-design:sketch-outlined', + 'ant-design:sketch-square-filled', + 'ant-design:skin-filled', + 'ant-design:skin-outlined', + 'ant-design:skin-twotone', + 'ant-design:skype-filled', + 'ant-design:skype-outlined', + 'ant-design:slack-circle-filled', + 'ant-design:slack-outlined', + 'ant-design:slack-square-filled', + 'ant-design:slack-square-outlined', + 'ant-design:sliders-filled', + 'ant-design:sliders-outlined', + 'ant-design:sliders-twotone', + 'ant-design:small-dash-outlined', + 'ant-design:smile-filled', + 'ant-design:smile-outlined', + 'ant-design:smile-twotone', + 'ant-design:snippets-filled', + 'ant-design:snippets-outlined', + 'ant-design:snippets-twotone', + 'ant-design:solution-outlined', + 'ant-design:sort-ascending-outlined', + 'ant-design:sort-descending-outlined', + 'ant-design:sound-filled', + 'ant-design:sound-outlined', + 'ant-design:sound-twotone', + 'ant-design:split-cells-outlined', + 'ant-design:star-filled', + 'ant-design:star-outlined', + 'ant-design:star-twotone', + 'ant-design:step-backward-filled', + 'ant-design:step-backward-outlined', + 'ant-design:step-forward-filled', + 'ant-design:step-forward-outlined', + 'ant-design:stock-outlined', + 'ant-design:stop-filled', + 'ant-design:stop-outlined', + 'ant-design:stop-twotone', + 'ant-design:strikethrough-outlined', + 'ant-design:subnode-outlined', + 'ant-design:swap-left-outlined', + 'ant-design:swap-outlined', + 'ant-design:swap-right-outlined', + 'ant-design:switcher-filled', + 'ant-design:switcher-outlined', + 'ant-design:switcher-twotone', + 'ant-design:sync-outlined', + 'ant-design:table-outlined', + 'ant-design:tablet-filled', + 'ant-design:tablet-outlined', + 'ant-design:tablet-twotone', + 'ant-design:tag-filled', + 'ant-design:tag-outlined', + 'ant-design:tag-twotone', + 'ant-design:tags-filled', + 'ant-design:tags-outlined', + 'ant-design:tags-twotone', + 'ant-design:taobao-circle-filled', + 'ant-design:taobao-circle-outlined', + 'ant-design:taobao-outlined', + 'ant-design:taobao-square-filled', + 'ant-design:team-outlined', + 'ant-design:thunderbolt-filled', + 'ant-design:thunderbolt-outlined', + 'ant-design:thunderbolt-twotone', + 'ant-design:to-top-outlined', + 'ant-design:tool-filled', + 'ant-design:tool-outlined', + 'ant-design:tool-twotone', + 'ant-design:trademark-circle-filled', + 'ant-design:trademark-circle-outlined', + 'ant-design:trademark-circle-twotone', + 'ant-design:trademark-outlined', + 'ant-design:transaction-outlined', + 'ant-design:translation-outlined', + 'ant-design:trophy-filled', + 'ant-design:trophy-outlined', + 'ant-design:trophy-twotone', + 'ant-design:twitter-circle-filled', + 'ant-design:twitter-outlined', + 'ant-design:twitter-square-filled', + 'ant-design:underline-outlined', + 'ant-design:undo-outlined', + 'ant-design:ungroup-outlined', + 'ant-design:unlock-filled', + 'ant-design:unlock-outlined', + 'ant-design:unlock-twotone', + 'ant-design:unordered-list-outlined', + 'ant-design:up-circle-filled', + 'ant-design:up-circle-outlined', + 'ant-design:up-circle-twotone', + 'ant-design:up-outlined', + 'ant-design:up-square-filled', + 'ant-design:up-square-outlined', + 'ant-design:up-square-twotone', + 'ant-design:upload-outlined', + 'ant-design:usb-filled', + 'ant-design:usb-outlined', + 'ant-design:usb-twotone', + 'ant-design:user-add-outlined', + 'ant-design:user-delete-outlined', + 'ant-design:user-outlined', + 'ant-design:user-switch-outlined', + 'ant-design:usergroup-add-outlined', + 'ant-design:usergroup-delete-outlined', + 'ant-design:verified-outlined', + 'ant-design:vertical-align-bottom-outlined', + 'ant-design:vertical-align-middle-outlined', + 'ant-design:vertical-align-top-outlined', + 'ant-design:vertical-left-outlined', + 'ant-design:vertical-right-outlined', + 'ant-design:video-camera-add-outlined', + 'ant-design:video-camera-filled', + 'ant-design:video-camera-outlined', + 'ant-design:video-camera-twotone', + 'ant-design:wallet-filled', + 'ant-design:wallet-outlined', + 'ant-design:wallet-twotone', + 'ant-design:warning-filled', + 'ant-design:warning-outlined', + 'ant-design:warning-twotone', + 'ant-design:wechat-filled', + 'ant-design:wechat-outlined', + 'ant-design:weibo-circle-filled', + 'ant-design:weibo-circle-outlined', + 'ant-design:weibo-outlined', + 'ant-design:weibo-square-filled', + 'ant-design:weibo-square-outlined', + 'ant-design:whats-app-outlined', + 'ant-design:wifi-outlined', + 'ant-design:windows-filled', + 'ant-design:windows-outlined', + 'ant-design:woman-outlined', + 'ant-design:yahoo-filled', + 'ant-design:yahoo-outlined', + 'ant-design:youtube-filled', + 'ant-design:youtube-outlined', + 'ant-design:yuque-filled', + 'ant-design:yuque-outlined', + 'ant-design:zhihu-circle-filled', + 'ant-design:zhihu-outlined', + 'ant-design:zhihu-square-filled', + 'ant-design:zoom-in-outlined', + 'ant-design:zoom-out-outlined', +]; diff --git a/src/components/Icon/index.ts b/src/components/Icon/index.ts new file mode 100644 index 0000000..01e7d23 --- /dev/null +++ b/src/components/Icon/index.ts @@ -0,0 +1,7 @@ +import Icon from './src/Icon.vue'; +import SvgIcon from './src/SvgIcon.vue'; +import IconPicker from './src/IconPicker.vue'; + +export { Icon, IconPicker, SvgIcon }; + +export default Icon; diff --git a/src/components/Icon/src/Icon.vue b/src/components/Icon/src/Icon.vue new file mode 100644 index 0000000..4956cf0 --- /dev/null +++ b/src/components/Icon/src/Icon.vue @@ -0,0 +1,121 @@ + + + diff --git a/src/components/Icon/src/IconPicker.vue b/src/components/Icon/src/IconPicker.vue new file mode 100644 index 0000000..9783fc2 --- /dev/null +++ b/src/components/Icon/src/IconPicker.vue @@ -0,0 +1,203 @@ + + + + diff --git a/src/components/Icon/src/SvgIcon.vue b/src/components/Icon/src/SvgIcon.vue new file mode 100644 index 0000000..7bee452 --- /dev/null +++ b/src/components/Icon/src/SvgIcon.vue @@ -0,0 +1,59 @@ + + + diff --git a/src/components/IconFontSymbol/Index.vue b/src/components/IconFontSymbol/Index.vue new file mode 100644 index 0000000..7b3d8e2 --- /dev/null +++ b/src/components/IconFontSymbol/Index.vue @@ -0,0 +1,46 @@ + + + + + diff --git a/src/components/Loading/index.ts b/src/components/Loading/index.ts new file mode 100644 index 0000000..3673a44 --- /dev/null +++ b/src/components/Loading/index.ts @@ -0,0 +1,5 @@ +import Loading from './src/Loading.vue'; + +export { Loading }; +export { useLoading } from './src/useLoading'; +export { createLoading } from './src/createLoading'; diff --git a/src/components/Loading/src/Loading.vue b/src/components/Loading/src/Loading.vue new file mode 100644 index 0000000..0f52b28 --- /dev/null +++ b/src/components/Loading/src/Loading.vue @@ -0,0 +1,79 @@ + + + diff --git a/src/components/Loading/src/createLoading.ts b/src/components/Loading/src/createLoading.ts new file mode 100644 index 0000000..966ca53 --- /dev/null +++ b/src/components/Loading/src/createLoading.ts @@ -0,0 +1,65 @@ +import { VNode, defineComponent } from 'vue'; +import type { LoadingProps } from './typing'; + +import { createVNode, render, reactive, h } from 'vue'; +import Loading from './Loading.vue'; + +export function createLoading(props?: Partial, target?: HTMLElement, wait = false) { + let vm: Nullable = null; + const data = reactive({ + tip: '', + loading: true, + ...props, + }); + + const LoadingWrap = defineComponent({ + render() { + return h(Loading, { ...data }); + }, + }); + + vm = createVNode(LoadingWrap); + + if (wait) { + // TODO fix https://github.com/anncwb/vue-vben-admin/issues/438 + setTimeout(() => { + render(vm, document.createElement('div')); + }, 0); + } else { + render(vm, document.createElement('div')); + } + + function close() { + if (vm?.el && vm.el.parentNode) { + vm.el.parentNode.removeChild(vm.el); + } + } + + function open(target: HTMLElement = document.body) { + if (!vm || !vm.el) { + return; + } + target.appendChild(vm.el as HTMLElement); + } + + if (target) { + open(target); + } + return { + vm, + close, + open, + setTip: (tip: string) => { + data.tip = tip; + }, + setLoading: (loading: boolean) => { + data.loading = loading; + }, + get loading() { + return data.loading; + }, + get $el() { + return vm?.el as HTMLElement; + }, + }; +} diff --git a/src/components/Loading/src/typing.ts b/src/components/Loading/src/typing.ts new file mode 100644 index 0000000..9af60e6 --- /dev/null +++ b/src/components/Loading/src/typing.ts @@ -0,0 +1,10 @@ +import { SizeEnum } from '/@/enums/sizeEnum'; + +export interface LoadingProps { + tip: string; + size: SizeEnum; + absolute: boolean; + loading: boolean; + background: string; + theme: 'dark' | 'light'; +} diff --git a/src/components/Loading/src/useLoading.ts b/src/components/Loading/src/useLoading.ts new file mode 100644 index 0000000..356df7d --- /dev/null +++ b/src/components/Loading/src/useLoading.ts @@ -0,0 +1,49 @@ +import { unref } from 'vue'; +import { createLoading } from './createLoading'; +import type { LoadingProps } from './typing'; +import type { Ref } from 'vue'; + +export interface UseLoadingOptions { + target?: any; + props?: Partial; +} + +interface Fn { + (): void; +} + +export function useLoading(props: Partial): [Fn, Fn, (string) => void]; +export function useLoading(opt: Partial): [Fn, Fn, (string) => void]; + +export function useLoading( + opt: Partial | Partial, +): [Fn, Fn, (string) => void] { + let props: Partial; + let target: HTMLElement | Ref = document.body; + + if (Reflect.has(opt, 'target') || Reflect.has(opt, 'props')) { + const options = opt as Partial; + props = options.props || {}; + target = options.target || document.body; + } else { + props = opt as Partial; + } + + const instance = createLoading(props, undefined, true); + + const open = (): void => { + const t = unref(target as Ref); + if (!t) return; + instance.open(t); + }; + + const close = (): void => { + instance.close(); + }; + + const setTip = (tip: string) => { + instance.setTip(tip); + }; + + return [open, close, setTip]; +} diff --git a/src/components/ModalPanel/index.ts b/src/components/ModalPanel/index.ts new file mode 100644 index 0000000..5bb528e --- /dev/null +++ b/src/components/ModalPanel/index.ts @@ -0,0 +1,29 @@ +import { withInstall } from '/@/utils'; +import ModalPanelVue from './src/ModalPanel.vue'; +import SearchBoxVue from './src/SearchBox.vue'; +import EmptyBoxVue from './src/EmptyBox.vue'; +import NodeHeadVue from './src/NodeHead.vue'; +import designLogo from './src/DesignLogo.vue'; +import loadingBox from './src/LoadingBox.vue'; + +import fewerLeft from './src/FewerLeft.vue'; +import fewerRight from './src/FewerRight.vue'; +import zoomInOrOut from './src/ZoomInOrOut.vue'; + +import pageLayout from './src/PageLayout.vue'; + +import desktopDesignEmpty from './src/DesktopDesignEmpty.vue'; + +export const DesignLogo = withInstall(designLogo); // 设计页面公司LOGO图标 +export const DesktopDesignEmpty = withInstall(desktopDesignEmpty); // 桌面设计空数据显示图片 +export const ModalPanel = withInstall(ModalPanelVue); +export const SearchBox = withInstall(SearchBoxVue); +export const EmptyBox = withInstall(EmptyBoxVue); +export const NodeHead = withInstall(NodeHeadVue); // 标题 +export const LoadingBox = withInstall(loadingBox); // Loading + +export const FewerLeft = withInstall(fewerLeft); //收取左边图标 +export const FewerRight = withInstall(fewerRight); //收取右边图标 +export const ZoomInOrOut = withInstall(zoomInOrOut); //放大缩小 + +export const PageLayout = withInstall(pageLayout); // 布局 diff --git a/src/components/ModalPanel/src/DesignLogo.vue b/src/components/ModalPanel/src/DesignLogo.vue new file mode 100644 index 0000000..caffc82 --- /dev/null +++ b/src/components/ModalPanel/src/DesignLogo.vue @@ -0,0 +1,11 @@ + + diff --git a/src/components/ModalPanel/src/DesktopDesignEmpty.vue b/src/components/ModalPanel/src/DesktopDesignEmpty.vue new file mode 100644 index 0000000..2744459 --- /dev/null +++ b/src/components/ModalPanel/src/DesktopDesignEmpty.vue @@ -0,0 +1,3 @@ + diff --git a/src/components/ModalPanel/src/EmptyBox.vue b/src/components/ModalPanel/src/EmptyBox.vue new file mode 100644 index 0000000..210d033 --- /dev/null +++ b/src/components/ModalPanel/src/EmptyBox.vue @@ -0,0 +1,57 @@ + + + + + diff --git a/src/components/ModalPanel/src/FewerLeft.vue b/src/components/ModalPanel/src/FewerLeft.vue new file mode 100644 index 0000000..a8018f7 --- /dev/null +++ b/src/components/ModalPanel/src/FewerLeft.vue @@ -0,0 +1,19 @@ + + + diff --git a/src/components/ModalPanel/src/FewerRight.vue b/src/components/ModalPanel/src/FewerRight.vue new file mode 100644 index 0000000..ec86427 --- /dev/null +++ b/src/components/ModalPanel/src/FewerRight.vue @@ -0,0 +1,18 @@ + + + diff --git a/src/components/ModalPanel/src/LoadingBox.vue b/src/components/ModalPanel/src/LoadingBox.vue new file mode 100644 index 0000000..8df476a --- /dev/null +++ b/src/components/ModalPanel/src/LoadingBox.vue @@ -0,0 +1,19 @@ + + + + + diff --git a/src/components/ModalPanel/src/ModalPanel.vue b/src/components/ModalPanel/src/ModalPanel.vue new file mode 100644 index 0000000..1cb7069 --- /dev/null +++ b/src/components/ModalPanel/src/ModalPanel.vue @@ -0,0 +1,124 @@ + + + diff --git a/src/components/ModalPanel/src/NodeHead.vue b/src/components/ModalPanel/src/NodeHead.vue new file mode 100644 index 0000000..be30f2a --- /dev/null +++ b/src/components/ModalPanel/src/NodeHead.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/src/components/ModalPanel/src/PageLayout.vue b/src/components/ModalPanel/src/PageLayout.vue new file mode 100644 index 0000000..fff1626 --- /dev/null +++ b/src/components/ModalPanel/src/PageLayout.vue @@ -0,0 +1,180 @@ + + + + + diff --git a/src/components/ModalPanel/src/SearchBox.vue b/src/components/ModalPanel/src/SearchBox.vue new file mode 100644 index 0000000..308e383 --- /dev/null +++ b/src/components/ModalPanel/src/SearchBox.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/src/components/ModalPanel/src/ZoomInOrOut.vue b/src/components/ModalPanel/src/ZoomInOrOut.vue new file mode 100644 index 0000000..76d9d87 --- /dev/null +++ b/src/components/ModalPanel/src/ZoomInOrOut.vue @@ -0,0 +1,33 @@ + + + diff --git a/src/components/Page/index.ts b/src/components/Page/index.ts new file mode 100644 index 0000000..5be7e65 --- /dev/null +++ b/src/components/Page/index.ts @@ -0,0 +1,11 @@ +import { withInstall } from '/@/utils'; +import resizePageWrapper from './src/ResizePageWrapper.vue'; +import pageWrapper from './src/PageWrapper.vue'; +import platformPageWrapper from './src/PlatformPageWrapper.vue'; +import pageFooter from './src/PageFooter.vue'; +export const ResizePageWrapper = withInstall(resizePageWrapper); +export const PlatformPageWrapper = withInstall(platformPageWrapper); +export const PageWrapper = withInstall(pageWrapper); +export const PageFooter = withInstall(pageFooter); + +export const PageWrapperFixedHeightKey = 'PageWrapperFixedHeight'; diff --git a/src/components/Page/src/PageFooter.vue b/src/components/Page/src/PageFooter.vue new file mode 100644 index 0000000..500aa85 --- /dev/null +++ b/src/components/Page/src/PageFooter.vue @@ -0,0 +1,48 @@ + + + diff --git a/src/components/Page/src/PageWrapper.vue b/src/components/Page/src/PageWrapper.vue new file mode 100644 index 0000000..26cd30c --- /dev/null +++ b/src/components/Page/src/PageWrapper.vue @@ -0,0 +1,161 @@ + + + diff --git a/src/components/Page/src/PlatformPageWrapper.vue b/src/components/Page/src/PlatformPageWrapper.vue new file mode 100644 index 0000000..e61a732 --- /dev/null +++ b/src/components/Page/src/PlatformPageWrapper.vue @@ -0,0 +1,164 @@ + + + diff --git a/src/components/Page/src/ResizePageWrapper.vue b/src/components/Page/src/ResizePageWrapper.vue new file mode 100644 index 0000000..1d62370 --- /dev/null +++ b/src/components/Page/src/ResizePageWrapper.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/src/components/Transition/index.ts b/src/components/Transition/index.ts new file mode 100644 index 0000000..7eb79b5 --- /dev/null +++ b/src/components/Transition/index.ts @@ -0,0 +1,27 @@ +import { createSimpleTransition, createJavascriptTransition } from './src/CreateTransition'; + +import ExpandTransitionGenerator from './src/ExpandTransition'; + +export { default as CollapseTransition } from './src/CollapseTransition.vue'; + +export const FadeTransition = createSimpleTransition('fade-transition'); +export const ScaleTransition = createSimpleTransition('scale-transition'); +export const SlideYTransition = createSimpleTransition('slide-y-transition'); +export const ScrollYTransition = createSimpleTransition('scroll-y-transition'); +export const SlideYReverseTransition = createSimpleTransition('slide-y-reverse-transition'); +export const ScrollYReverseTransition = createSimpleTransition('scroll-y-reverse-transition'); +export const SlideXTransition = createSimpleTransition('slide-x-transition'); +export const ScrollXTransition = createSimpleTransition('scroll-x-transition'); +export const SlideXReverseTransition = createSimpleTransition('slide-x-reverse-transition'); +export const ScrollXReverseTransition = createSimpleTransition('scroll-x-reverse-transition'); +export const ScaleRotateTransition = createSimpleTransition('scale-rotate-transition'); + +export const ExpandXTransition = createJavascriptTransition( + 'expand-x-transition', + ExpandTransitionGenerator('', true), +); + +export const ExpandTransition = createJavascriptTransition( + 'expand-transition', + ExpandTransitionGenerator(''), +); diff --git a/src/components/Transition/src/CollapseTransition.vue b/src/components/Transition/src/CollapseTransition.vue new file mode 100644 index 0000000..6b50fa1 --- /dev/null +++ b/src/components/Transition/src/CollapseTransition.vue @@ -0,0 +1,78 @@ + + diff --git a/src/components/Transition/src/CreateTransition.tsx b/src/components/Transition/src/CreateTransition.tsx new file mode 100644 index 0000000..d12518d --- /dev/null +++ b/src/components/Transition/src/CreateTransition.tsx @@ -0,0 +1,73 @@ +import type { PropType } from 'vue'; + +import { defineComponent, Transition, TransitionGroup } from 'vue'; +import { getSlot } from '/@/utils/helper/tsxHelper'; + +type Mode = 'in-out' | 'out-in' | 'default' | undefined; + +export function createSimpleTransition(name: string, origin = 'top center 0', mode?: Mode) { + return defineComponent({ + name, + props: { + group: { + type: Boolean as PropType, + default: false, + }, + mode: { + type: String as PropType, + default: mode, + }, + origin: { + type: String as PropType, + default: origin, + }, + }, + setup(props, { slots, attrs }) { + const onBeforeEnter = (el: HTMLElement) => { + el.style.transformOrigin = props.origin; + }; + + return () => { + const Tag = !props.group ? Transition : TransitionGroup; + return ( + + {() => getSlot(slots)} + + ); + }; + }, + }); +} +export function createJavascriptTransition( + name: string, + functions: Recordable, + mode: Mode = 'in-out', +) { + return defineComponent({ + name, + props: { + mode: { + type: String as PropType, + default: mode, + }, + }, + setup(props, { attrs, slots }) { + return () => { + return ( + + {() => getSlot(slots)} + + ); + }; + }, + }); +} diff --git a/src/components/Transition/src/ExpandTransition.ts b/src/components/Transition/src/ExpandTransition.ts new file mode 100644 index 0000000..2aaef9a --- /dev/null +++ b/src/components/Transition/src/ExpandTransition.ts @@ -0,0 +1,89 @@ +/** + * Makes the first character of a string uppercase + */ +export function upperFirst(str: string): string { + return str.charAt(0).toUpperCase() + str.slice(1); +} + +interface HTMLExpandElement extends HTMLElement { + _parent?: (Node & ParentNode & HTMLElement) | null; + _initialStyle: { + transition: string; + overflow: string | null; + height?: string | null; + width?: string | null; + }; +} + +export default function (expandedParentClass = '', x = false) { + const sizeProperty = x ? 'width' : ('height' as 'width' | 'height'); + const offsetProperty = `offset${upperFirst(sizeProperty)}` as 'offsetHeight' | 'offsetWidth'; + + return { + beforeEnter(el: HTMLExpandElement) { + el._parent = el.parentNode as (Node & ParentNode & HTMLElement) | null; + el._initialStyle = { + transition: el.style.transition, + overflow: el.style.overflow, + [sizeProperty]: el.style[sizeProperty], + }; + }, + + enter(el: HTMLExpandElement) { + const initialStyle = el._initialStyle; + + el.style.setProperty('transition', 'none', 'important'); + el.style.overflow = 'hidden'; + // const offset = `${el[offsetProperty]}px`; + + // el.style[sizeProperty] = '0'; + + void el.offsetHeight; // force reflow + + el.style.transition = initialStyle.transition; + + if (expandedParentClass && el._parent) { + el._parent.classList.add(expandedParentClass); + } + + requestAnimationFrame(() => { + // el.style[sizeProperty] = offset; + }); + }, + + afterEnter: resetStyles, + enterCancelled: resetStyles, + + leave(el: HTMLExpandElement) { + el._initialStyle = { + transition: '', + overflow: el.style.overflow, + [sizeProperty]: el.style[sizeProperty], + }; + + el.style.overflow = 'hidden'; + el.style[sizeProperty] = `${el[offsetProperty]}px`; + /* eslint-disable-next-line */ + void el.offsetHeight; // force reflow + + requestAnimationFrame(() => (el.style[sizeProperty] = '0')); + }, + + afterLeave, + leaveCancelled: afterLeave, + }; + + function afterLeave(el: HTMLExpandElement) { + if (expandedParentClass && el._parent) { + el._parent.classList.remove(expandedParentClass); + } + resetStyles(el); + } + + function resetStyles(el: HTMLExpandElement) { + const size = el._initialStyle[sizeProperty]; + el.style.overflow = el._initialStyle.overflow!; + if (size != null) el.style[sizeProperty] = size; + Reflect.deleteProperty(el, '_initialStyle'); + } +} diff --git a/src/components/registerGlobComp.ts b/src/components/registerGlobComp.ts new file mode 100644 index 0000000..ab9ccc7 --- /dev/null +++ b/src/components/registerGlobComp.ts @@ -0,0 +1,6 @@ +import type { App } from 'vue'; +import { Input, Layout } from 'ant-design-vue'; + +export function registerGlobComp(app: App) { + app.use(Input).use(Layout); +} diff --git a/src/constant/GlobalConstant.ts b/src/constant/GlobalConstant.ts new file mode 100644 index 0000000..4f78ad0 --- /dev/null +++ b/src/constant/GlobalConstant.ts @@ -0,0 +1,24 @@ +/** + * 默认数据库Id + */ +export const DEFAULT_DB_ID = 'master'; + +export const START_EVENT_NAME = 'bpmn:StartEvent'; //开始节点 +export const END_EVENT_NAME = 'bpmn:EndEvent'; //结束节点 +export const INCLUSIVE_GATEWARY_NAME = 'bpmn:InclusiveGateway'; //相容网关 +export const PARALLEL_GATEWARY_NAME = 'bpmn:ParallelGateway'; //并行网关 +export const EXCLUSIVE_GATEWARY_NAME = 'bpmn:ExclusiveGateway'; //互斥网关 +export const USER_TASK_NAME = 'bpmn:UserTask'; //用户任务 +export const SCRIPT_TASK_NAME = 'bpmn:ScriptTask'; //脚本任务 +export const SUB_PROCESS_NAME = 'bpmn:SubProcess'; //子流程 +export const PROCESS_EVENT_NAME = 'bpmn:Process'; //流程 +export const SEQUENCEFLOW_NAME = 'bpmn:SequenceFlow'; //流程线 + +export const WORKFLOW_KEY = { + NODE_ADD_EVENT_KEY: 'shape.added', //新增节点事件名称 + NODE_REMOVE_EVENT_KEY: 'shape.removed', //移除节点事件名称 + NODE_CLICK_EVENT_KEY: 'element.click', //点击事件名称 + REGISTER_KEY: 'elementRegistry', //节点注册 + MODELING_KEY: 'modeling', //获取modling + CAVAS_KEY: 'canvas', //画布操作 +}; diff --git a/src/design/ant/btn.less b/src/design/ant/btn.less new file mode 100644 index 0000000..c9cc797 --- /dev/null +++ b/src/design/ant/btn.less @@ -0,0 +1,300 @@ +// button reset +.ant-btn { + &-link:hover, + &-link:focus, + &-link:active { + border-color: transparent !important; + } + + &-primary { + color: @white; + background-color: @button-primary-color; + + &:hover, + &:focus { + color: @white; + background-color: @button-primary-hover-color; + } + } + + &-default { + color: @button-cancel-color; + background-color: @button-cancel-bg-color; + border-color: @button-cancel-border-color; + + &:hover, + &:focus { + color: @button-cancel-hover-color; + background-color: @button-cancel-hover-bg-color; + border-color: @button-cancel-hover-border-color; + } + // + //&[disabled], + //&[disabled]:hover { + // color: fade(@button-cancel-color, 40%) !important; + // background: fade(@button-cancel-bg-color, 40%) !important; + // border-color: fade(@button-cancel-border-color, 40%) !important; + //} + } + + [data-theme='light'] &.ant-btn-link.is-disabled { + color: rgb(0 0 0 / 25%); + text-shadow: none; + cursor: not-allowed !important; + background-color: transparent !important; + border-color: transparent !important; + box-shadow: none; + } + + [data-theme='dark'] &.ant-btn-link.is-disabled { + color: rgb(255 255 255 / 25%) !important; + text-shadow: none; + cursor: not-allowed !important; + background-color: transparent !important; + border-color: transparent !important; + box-shadow: none; + } + + // color: @white; + + &-success.ant-btn-link:not([disabled='disabled']) { + color: @button-success-color; + + &:hover, + &:focus { + color: @button-success-hover-color; + border-color: transparent; + } + + &:active { + color: @button-success-active-color; + } + } + + &-success.ant-btn-link.ant-btn-loading, + &-warning.ant-btn-link.ant-btn-loading, + &-error.ant-btn-link.ant-btn-loading, + &-background-ghost.ant-btn-link.ant-btn-loading, + &.ant-btn-link.ant-btn-loading { + &::before { + background: transparent; + } + } + + &-success:not(.ant-btn-link, .is-disabled) { + color: @white; + background-color: @button-success-color; + border-color: @button-success-color; + //border-width: 0; + + &:hover, + &:focus { + color: @white; + background-color: @button-success-hover-color; + border-color: @button-success-hover-color; + } + + &:active { + background-color: @button-success-active-color; + border-color: @button-success-active-color; + } + } + + &-warning.ant-btn-link:not([disabled='disabled']) { + color: @button-warn-color; + + &:hover, + &:focus { + color: @button-warn-hover-color; + border-color: transparent; + } + + &:active { + color: @button-warn-active-color; + } + } + + &-warning:not(.ant-btn-link, .is-disabled) { + color: @white; + background-color: @button-warn-color; + border-color: @button-warn-color; + //border-width: 0; + + &:hover, + &:focus { + color: @white; + background-color: @button-warn-hover-color; + border-color: @button-warn-hover-color; + } + + &:active { + background-color: @button-warn-active-color; + border-color: @button-warn-active-color; + } + + //&[disabled], + //&[disabled]:hover { + // color: @white; + // background-color: fade(@button-warn-color, 40%); + // border-color: fade(@button-warn-color, 40%); + //} + } + + &-error.ant-btn-link:not([disabled='disabled']) { + color: @button-error-color; + + &:hover, + &:focus { + color: @button-error-hover-color; + border-color: transparent; + } + + &:active { + color: @button-error-active-color; + } + } + + &-error:not(.ant-btn-link, .is-disabled) { + color: @white; + background-color: @button-error-color; + border-color: @button-error-color; + //border-width: 0; + + &:hover, + &:focus { + color: @white; + background-color: @button-error-hover-color; + border-color: @button-error-hover-color; + } + + &:active { + background-color: @button-error-active-color; + border-color: @button-error-active-color; + } + + //&[disabled], + //&[disabled]:hover { + // color: @white; + // background-color: fade(@button-error-color, 40%); + // border-color: fade(@button-error-color, 40%); + //} + } + + &-background-ghost { + border-width: 1px; + background-color: transparent !important; + + &[disabled], + &[disabled]:hover { + color: fade(@white, 40%) !important; + background-color: transparent !important; + border-color: fade(@white, 40%) !important; + } + } + + &-dashed&-background-ghost, + &-default&-background-ghost { + color: @button-ghost-color; + border-color: @button-ghost-color; + + &:hover, + &:focus { + color: @button-ghost-hover-color; + border-color: @button-ghost-hover-color; + } + + &:active { + color: @button-ghost-active-color; + border-color: @button-ghost-active-color; + } + + &[disabled], + &[disabled]:hover { + color: fade(@white, 40%) !important; + border-color: fade(@white, 40%) !important; + } + } + + &-background-ghost&-success:not(.ant-btn-link) { + color: @button-success-color; + background-color: transparent; + border-color: @button-success-color; + border-width: 1px; + + &:hover, + &:focus { + color: @button-success-hover-color !important; + border-color: @button-success-hover-color; + } + + &:active { + color: @button-success-active-color; + border-color: @button-success-active-color; + } + } + + &-background-ghost&-warning:not(.ant-btn-link) { + color: @button-warn-color; + background-color: transparent; + border-color: @button-warn-color; + border-width: 1px; + + &:hover, + &:focus { + color: @button-warn-hover-color !important; + border-color: @button-warn-hover-color; + } + + &:active { + color: @button-warn-active-color; + border-color: @button-warn-active-color; + } + } + + &-background-ghost&-error:not(.ant-btn-link) { + color: @button-error-color; + background-color: transparent; + border-color: @button-error-color; + border-width: 1px; + + &:hover, + &:focus { + color: @button-error-hover-color !important; + border-color: @button-error-hover-color; + } + + &:active { + color: @button-error-active-color; + border-color: @button-error-active-color; + } + } + + &-ghost.ant-btn-link:not([disabled='disabled']) { + color: @button-ghost-color; + + &:hover, + &:focus { + color: @button-ghost-hover-color; + border-color: transparent; + } + } +} + +.ant-btn.ant-btn-primary:not(.ant-btn-background-ghost) { + &:hover, + &:focus { + color: @white; + } +} + +.ant-radio-button-wrapper:first-child { + border-radius: 4px 0 0 4px; +} + +.ant-radio-button-wrapper:last-child { + border-radius: 0 4px 4px 0; +} + +.ant-btn-dashed:hover { + border-color: @primary-color; +} diff --git a/src/design/ant/index.less b/src/design/ant/index.less new file mode 100644 index 0000000..e4907d3 --- /dev/null +++ b/src/design/ant/index.less @@ -0,0 +1,95 @@ +@import url('/src/design/ant/tag.less'); +@import url('/src/design/ant/pagination.less'); +@import url('/src/design/ant/input.less'); +@import url('/src/design/ant/btn.less'); +@import url('/src/design/ant/table.less'); + +.ant-image-preview-root { + img { + display: unset; + } +} + +span.anticon:not(.app-iconify) { + vertical-align: 0.125em !important; +} + +.ant-back-top { + right: 20px; + bottom: 20px; +} + +.collapse-container__body { + > .ant-descriptions { + margin-left: 6px; + } +} + +.ant-image-preview-operations { + background-color: rgb(0 0 0 / 30%); +} + +.ant-popover { + &-content { + box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%); + } + + &-buttons button:first-child { + margin-left: 0; + } +} + +// ================================= +// ==============modal message====== +// ================================= +.modal-icon-warning { + color: @warning-color !important; +} + +.modal-icon-success { + color: @success-color !important; +} + +.modal-icon-error { + color: @error-color !important; +} + +.modal-icon-info { + color: @primary-color !important; +} + +.ant-checkbox-checked .ant-checkbox-inner::after, +.ant-tree-checkbox-checked .ant-tree-checkbox-inner::after { + border-top: 0 !important; + border-left: 0 !important; +} + +.ant-message-notice-content { + border-radius: 16px; +} + +.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected { + background-color: #e8f7ff !important; +} + +.ant-tabs-card.mode-tabs { + .ant-tabs-tab { + padding: 12px 18px; + border: 0; + background: none; + line-height: 18px; + } + + .ant-tabs-tab-active { + font-weight: bold; + } + + .ant-tabs-ink-bar { + height: 1px; + visibility: visible; + } +} + +.ant-form-item-explain-error { + text-align: left; +} diff --git a/src/design/ant/input.less b/src/design/ant/input.less new file mode 100644 index 0000000..6d4da03 --- /dev/null +++ b/src/design/ant/input.less @@ -0,0 +1,96 @@ +@import (reference) '../color.less'; + +// input +.ant-input { + border-radius: 4px; + + &-number { + min-width: 110px; + } +} + +.ant-input-group-wrapper { + height: 32px; + border-radius: 4px; +} + +.ant-input-affix-wrapper { + border-radius: 4px; + height: 32px; +} + +.ant-input-affix-wrapper .ant-input-suffix { + right: 9px; +} + +.ant-input-clear-icon { + margin-right: 5px; +} + +.ant-input-affix-wrapper-textarea-with-clear-btn { + padding: 0 !important; + + textarea.ant-input { + padding: 4px 8px; + } +} + +.ant-table-cell .ant-checkbox-inner { + width: 14px; + height: 14px; + border-radius: 0; + border: 1px solid #ddd; +} + +.ant-select:not(.ant-select-customize-input) .ant-select-selector { + border-radius: 4px; +} + +.ant-input-group-addon:first-child, +.ant-input-number-group-addon:first-child { + border-radius: 4px 0 0 4px; +} + +.ant-input-group-addon:last-child, +.ant-input-number-group-addon:last-child { + border-radius: 0 4px 4px 0; +} + +.ant-radio-button-wrapper:first-child { + border-radius: 4px 0 0 4px; +} + +.ant-radio-button-wrapper:last-child { + border-radius: 0 4px 4px 0; +} + +.ant-input-number, +.ant-input-number-input { + border-radius: 4px; +} + +.ant-input-number-handler-up { + border-top-right-radius: 4px; +} + +.ant-input-number-handler-down { + border-bottom-right-radius: 4px; +} + +.ant-input-number-handler-wrap { + border-radius: 0 4px 4px 0; +} + +.ant-input-group > .ant-input:last-child { + border-radius: 4px; +} + +.ant-input-number-group > .ant-input-number:last-child { + border-radius: 4px; +} + +.ant-input-number-group > .ant-input-number:not(:first-child), +.ant-input-group > .ant-input:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} diff --git a/src/design/ant/pagination.less b/src/design/ant/pagination.less new file mode 100644 index 0000000..9c8646e --- /dev/null +++ b/src/design/ant/pagination.less @@ -0,0 +1,118 @@ +html[data-theme='dark'] { + .ant-pagination { + .ant-pagination-prev, + .ant-pagination-next, + .ant-pagination-item { + background-color: rgb(255 255 255 / 4%) !important; + + a { + color: #8b949e !important; + } + } + + .ant-select-arrow { + color: @text-color-secondary !important; + } + + .ant-pagination-item-active { + background-color: @primary-color !important; + border: none; + border-radius: none !important; + + a { + color: @white !important; + } + } + } +} + +.ant-pagination { + align-items: center; + color: #999 !important; + + .ant-pagination-prev, + .ant-pagination-next { + font-size: 12px; + color: #999; + border: 1px solid; + + .ant-pagination-item-link { + background-color: transparent; + border: none; + border-radius: 0; + } + } + + .ant-pagination-prev:hover, + .ant-pagination-next:hover, + .ant-pagination-item:focus, + .ant-pagination-item:hover { + a { + color: @primary-color; + } + } + + .ant-pagination-prev, + .ant-pagination-next, + .ant-pagination-item { + margin: 0 4px; + border: 1px solid #ccc; + min-width: 32px; + height: 32px; + line-height: 32px; + border-radius: 6px; + + a { + color: #999; + } + + &:last-child { + margin-right: 0; + } + } + + .ant-pagination-item-active { + background-color: @primary-color !important; + border: 1px solid @primary-color !important; + border-radius: none !important; + + a { + color: @white !important; + } + } + + .ant-pagination-options { + margin-left: 12px; + + .ant-select { + color: #999; + } + } + + .ant-select:not(.ant-select-customize-input) .ant-select-selector { + border: 1px solid #ccc; + height: 32px; + border-radius: 6px; + + .ant-select-selection-item { + line-height: 32px; + } + } + + .ant-pagination-options-quick-jumper input { + height: 32px !important; + margin: 0 6px; + line-height: 32px; + text-align: center; + border: 1px solid #ccc; + border-radius: 6px; + } + + .ant-select-arrow { + color: @border-color-shallow-dark; + } + + &-disabled { + display: none !important; + } +} diff --git a/src/design/ant/table.less b/src/design/ant/table.less new file mode 100644 index 0000000..6bc5b1f --- /dev/null +++ b/src/design/ant/table.less @@ -0,0 +1,155 @@ +@prefix-cls: ~'@{namespace}-basic-table'; + +// fix table unnecessary scrollbar +.@{prefix-cls} { + .hide-scrollbar-y { + .ant-spin-nested-loading { + .ant-spin-container { + .ant-table { + .ant-table-content { + .ant-table-scroll { + .ant-table-hide-scrollbar { + overflow-y: auto !important; + } + + .ant-table-body { + overflow-y: auto !important; + } + } + + .ant-table-fixed-right { + .ant-table-body-outer { + .ant-table-body-inner { + overflow-y: auto !important; + } + } + } + + .ant-table-fixed-left { + .ant-table-body-outer { + .ant-table-body-inner { + overflow-y: auto !important; + } + } + } + } + } + } + } + } + + .hide-scrollbar-x { + .ant-spin-nested-loading { + .ant-spin-container { + .ant-table { + .ant-table-content { + .ant-table-scroll { + .ant-table-hide-scrollbar { + //overflow-x: auto !important; + } + + .ant-table-body { + overflow: auto !important; + } + } + + .ant-table-fixed-right { + .ant-table-body-outer { + .ant-table-body-inner { + overflow-x: auto !important; + } + } + } + + .ant-table-fixed-left { + .ant-table-body-outer { + .ant-table-body-inner { + overflow-x: auto !important; + } + } + } + } + } + + .ant-table-cell-scrollbar { + display: none; + } + } + } + } +} + +.ant-table.ant-table-middle { + .ant-table-header { + border-top-right-radius: 16px; + // .ant-table-thead tr th:nth-last-child(2) { + // border-top-right-radius: 16px; + + // & > div { + // border-right: 0 !important; + // } + // } + } + + .ant-table-thead { + & > tr { + & > th { + padding: 0 !important; + color: #333; + border-bottom: 1px solid #ddd; + background: #f7fbff; + + &:nth-last-child(2).ant-table-column-has-sorters { + padding-right: 10px !important; + } + + &:first-child { + border-top-left-radius: 16px !important; + } + + &:last-child { + border-top-right-radius: 16px !important; + + & > div { + border-right: 0 !important; + } + } + } + + th::before { + display: none; + } + } + + .ant-table-selection { + display: block; + height: 20px; + margin: 15px 0; + border-right: 1px solid #ddd; + } + } + + .ant-table-row-expand-icon { + border-color: #ddd; + } + + .ant-table-tbody .ant-table-wrapper:only-child .ant-table { + padding: 10px 8px 0; + margin: 0 !important; + max-height: 300px; + height: auto; + + .ant-table-container { + height: 100%; + } + } + + .ant-table-expanded-row-fixed { + width: auto !important; + } +} + +.ant-table .ant-table-container::after { + width: 1px; + background: #f0f2f5; +} diff --git a/src/design/ant/tag.less b/src/design/ant/tag.less new file mode 100644 index 0000000..1fc640b --- /dev/null +++ b/src/design/ant/tag.less @@ -0,0 +1,53 @@ +// tag reset +.ant-tag { + border-radius: 4px; +} + +.ant-tag-blue { + color: @primary-color; + background: rgb(28 141 255 / 8%); + border-radius: 4px; + border-color: @primary-color; +} + +.ant-tag-red { + color: #ff5461; + background: rgb(255 84 97 / 8%); + border-radius: 4px; + border-color: #ff5461; +} + +.ant-tag-orange { + color: #f70; + background: rgb(255 119 0 / 8%); + border-radius: 4px; + border-color: #f70; +} + +.ant-tag-green { + color: #27c07a; + background: rgb(39 192 122 / 8%); + border-radius: 4px; + border-color: #27c07a; +} + +.ant-tag-success { + color: #52c41a; + background: rgb(82 196 26 / 8%); + border-radius: 4px; + border-color: #52c41a; +} + +.ant-tag-default { + color: #999; + background: rgb(153 153 153 / 8%); + border-radius: 4px; + border-color: #999; +} + +.ant-table-cell .ant-tag { + font-size: 14px; + height: 24px; + line-height: 22px; + padding: 0 12px; +} diff --git a/src/design/color.less b/src/design/color.less new file mode 100644 index 0000000..81ed0f8 --- /dev/null +++ b/src/design/color.less @@ -0,0 +1,138 @@ +html { + // header + --header-bg-color: #394664; + --header-bg-hover-color: #273352; + --header-active-menu-bg-color: #273352; + + // sider + --sider-dark-bg-color: #030523; + --sider-dark-darken-bg-color: #273352; + --sider-dark-lighten-bg-color: #273352; +} + +@white: #fff; + +@content-bg: #f0f0f0; + +// :export { +// name: "less"; +// mainColor: @mainColor; +// fontSize: @fontSize; +// } +@iconify-bg-color: #5551; + +// ================================= +// ==============border-color======= +// ================================= + +// Dark-dark +@border-color-dark: #b6b7b9; + +// Dark-light +@border-color-shallow-dark: #cececd; + +// Light-dark +@border-color-light: @border-color-base; + +// ================================= +// ==============message============== +// ================================= + +// success-bg-color +@success-background-color: #f1f9ec; +// info-bg-color +@info-background-color: #e8eff8; +// warn-bg-color +@warning-background-color: #fdf6ed; +// danger-bg-color +@danger-background-color: #fef0f0; + +// ================================= +// ==============Header============= +// ================================= + +@header-dark-bg-color: var(--header-bg-color); +@header-dark-bg-hover-color: var(--header-bg-hover-color); +@header-light-bg-hover-color: #f6f6f6; +@header-light-desc-color: #7c8087; +@header-light-bottom-border-color: #eee; +// top-menu +@top-menu-active-bg-color: var(--header-active-menu-bg-color); + +// ================================= +// ==============Menu============ +// ================================= + +// let -menu +@sider-dark-bg-color: var(--sider-dark-bg-color); +@sider-dark-darken-bg-color: var(--sider-dark-darken-bg-color); +@sider-dark-lighten-bg-color: var(--sider-dark-lighten-bg-color); + +// trigger +@trigger-dark-hover-bg-color: rgba(255, 255, 255, 0.2); +@trigger-dark-bg-color: rgba(255, 255, 255, 0.1); + +// ================================= +// ==============tree============ +// ================================= +// tree item hover background +@tree-hover-background-color: #f5f7fa; +// tree item hover font color +@tree-hover-font-color: #f5f7fa; + +// ================================= +// ==============link============ +// ================================= +@link-hover-color: @primary-color; +@link-active-color: darken(@primary-color, 10%); + +// ================================= +// ==============Text color-============= +// ================================= + +// Main text color +@text-color-base: @text-color; + +// Label color +@text-color-call-out: #606266; + +// Auxiliary information color-dark +@text-color-help-dark: #909399; + +// ================================= +// ==============breadcrumb========= +// ================================= +@breadcrumb-item-normal-color: #999; +// ================================= +// ==============button============= +// ================================= + +@button-primary-color: @primary-color; +@button-primary-hover-color: lighten(@primary-color, 5%); +@button-primary-active-color: darken(@primary-color, 5%); + +@button-ghost-color: @white; +@button-ghost-hover-color: lighten(@white, 10%); +@button-ghost-hover-bg-color: #e1ebf6; +@button-ghost-active-color: darken(@white, 10%); + +@button-success-color: @success-color; +@button-success-hover-color: lighten(@success-color, 10%); +@button-success-active-color: darken(@success-color, 10%); + +@button-warn-color: @warning-color; +@button-warn-hover-color: lighten(@warning-color, 10%); +@button-warn-active-color: darken(@warning-color, 10%); + +@button-error-color: @error-color; +@button-error-hover-color: lighten(@error-color, 10%); +@button-error-active-color: darken(@error-color, 10%); + +@button-cancel-color: @text-color-call-out; +@button-cancel-bg-color: @white; +@button-cancel-border-color: @border-color-shallow-dark; + +// Mouse over +@button-cancel-hover-color: @primary-color; +@button-cancel-hover-bg-color: @white; +@button-cancel-hover-border-color: @primary-color; diff --git a/src/design/config.less b/src/design/config.less new file mode 100644 index 0000000..64c33f6 --- /dev/null +++ b/src/design/config.less @@ -0,0 +1,2 @@ +@import (reference) 'color.less'; +@import (reference) 'var/index.less'; diff --git a/src/design/index.less b/src/design/index.less new file mode 100644 index 0000000..cbb687c --- /dev/null +++ b/src/design/index.less @@ -0,0 +1,45 @@ +@import url('/src/design/transition/index.less'); +@import url('/src/design/var/index.less'); +@import url('/src/design/public.less'); +@import url('/src/design/ant/index.less'); +@import url('/src/design/theme.less'); + +input:-webkit-autofill { + box-shadow: 0 0 0 1000px white inset !important; +} + +:-webkit-autofill { + transition: background-color 5000s ease-in-out 0s !important; +} + +html { + overflow: hidden; + text-size-adjust: 100%; + font-size: 16px; +} + +html, +body { + width: 100%; + height: 100%; + overflow: visible !important; + overflow-x: hidden !important; + + &.color-weak { + filter: invert(80%); + } + + &.gray-mode { + filter: grayscale(100%); + filter: progid:dximagetransform.microsoft.basicimage(grayscale=1); + } +} + +a:focus, +a:active, +button, +div, +svg, +span { + outline: none !important; +} diff --git a/src/design/public.less b/src/design/public.less new file mode 100644 index 0000000..b4e9406 --- /dev/null +++ b/src/design/public.less @@ -0,0 +1,135 @@ +#app { + width: 100%; + height: 100%; +} + +// ================================= +// ==============scrollbar========== +// ================================= + +::-webkit-scrollbar { + width: 7px; + height: 8px; +} + +.ant-table-body::-webkit-scrollbar { + width: 0; + height: 8px; +} +// ::-webkit-scrollbar-track { +// background: rgb(0 0 0 / 5%); +// } + +// ::-webkit-scrollbar-track:hover { +// background-color: rgb(0 0 0 / 5%); +// } + +::-webkit-scrollbar-thumb { + // background: rgba(0, 0, 0, 0.6); + background-color: rgb(144 147 153 / 30%); + // background-color: rgba(144, 147, 153, 0.3); + border-radius: 4px; + // box-shadow: inset 0 0 6px rgb(0 0 0 / 20%); +} + +::-webkit-scrollbar-thumb:hover { + background-color: @border-color-dark; +} + +// ================================= +// ==============nprogress========== +// ================================= +#nprogress { + pointer-events: none; + + .bar { + position: fixed; + top: 0; + left: 0; + z-index: 99999; + width: 100%; + height: 2px; + background-color: @primary-color; + opacity: 0.75; + } +} + +.process-right-Tab { + height: 100%; + + .ant-tabs-nav::before { + border-bottom: 1px solid #eee; + } + + .ant-tabs-tab { + padding: 18px 18px 16px; + line-height: 14px; + + &.ant-tabs-tab-active { + font-weight: bold; + } + + & + .ant-tabs-tab { + margin: 0; + } + } + + .ant-tabs-content { + height: 100%; + overflow-y: auto; + } +} + +.form-horizontal-modal { + width: 50%; + padding-left: 10px; + position: absolute; + right: 0; + top: 0; + + .wrap { + background: #fff; + border-radius: 16px; + } +} + +.form-horizontal-title { + font-weight: bold; + font-size: 16px; + color: #333; + line-height: 16px; + height: 60px; + padding: 22px 0 0 16px; + border-bottom: 1px solid #ddd; + position: absolute; + left: 10px; + right: 0; + top: 0; +} + +.listmode-horizontal-tree { + .vben-page-wrapper-content { + overflow: unset; + } + + .form-left { + position: absolute; + left: 0; + right: 0; + z-index: 1000; + width: auto !important; + box-shadow: 0 0 10px 0 rgb(0 0 0 / 25%); + display: none; + bottom: 0; + } + + .resize-shrink-sidebar { + display: none !important; + } + + &.block { + .form-left { + display: block; + } + } +} diff --git a/src/design/theme.less b/src/design/theme.less new file mode 100644 index 0000000..717767e --- /dev/null +++ b/src/design/theme.less @@ -0,0 +1,211 @@ +.bg-white { + background-color: @component-background !important; +} + +html[data-theme='light'] { + .text-secondary { + color: rgb(0 0 0 / 45%); + } + + .ant-alert-success { + background-color: #f6ffed; + border: 1px solid #b7eb8f; + } + + .ant-alert-error { + background-color: #fff2f0; + border: 1px solid #ffccc7; + } + + .ant-alert-warning { + background-color: #fffbe6; + border: 1px solid #ffe58f; + } + + :not(:root):fullscreen::backdrop { + background-color: @layout-body-background !important; + } +} + +[data-theme='dark'] { + .text-secondary { + color: #8b949e; + } + + .ant-card-grid-hoverable:hover { + box-shadow: 0 3px 6px -4px rgb(0 0 0 / 48%), 0 6px 16px 0 rgb(0 0 0 / 32%), + 0 9px 28px 8px rgb(0 0 0 / 20%); + } + + .ant-card-grid { + box-shadow: 1px 0 0 0 #434343, 0 1px 0 0 #434343, 1px 1px 0 0 #434343, 1px 0 0 0 #434343 inset, + 0 1px 0 0 #434343 inset; + } + + .ant-calendar-selected-day .ant-calendar-date { + color: rgb(0 0 0 / 80%); + } + + .ant-select-tree li .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected { + color: rgb(0 0 0 / 90%); + } +} +// 全局 Notification 通知提醒框 样式修改 +.ant-notification-center { + right: calc(50vw - 220px) !important; + top: 160px !important; + + .ant-notification-notice { + border-radius: 16px !important; + color: #333; + } + + .anticon.ant-notification-notice-icon-warning { + background-color: #f70; + border-radius: 50%; + line-height: 0; + color: #fff; + + path:first-child { + color: transparent; + } + } + + .anticon.ant-notification-notice-icon-success { + color: #27c07a; + background-color: #27c07a; + border-radius: 50%; + line-height: 0; + + path:first-child { + color: #fff; + } + } + + .anticon.ant-notification-notice-icon-error { + color: #ff5461; + background-color: #ff5461; + border-radius: 50%; + line-height: 0; + + path:first-child { + color: #fff; + } + } + + .ant-notification-notice-with-icon .ant-notification-notice-message { + font-weight: bold; + font-size: 16px; + color: #333; + } +} +//全局 Modal ant-modal-confirm +.ant-modal-confirm { + .ant-modal-confirm-body { + padding: 24px; + + .anticon-exclamation-circle { + width: 20px; + height: 20px; + background: #f70; + border-radius: 50%; + color: #f70; + + path { + color: #fff; + } + + path:first-child { + color: transparent; + } + } + } + + .ant-modal-confirm-btns { + border-top: 1px solid rgb(238 238 238 / 93%); + width: 100%; + padding-top: 10px; + align-items: flex-end; + display: flex; + justify-content: flex-end; + padding-right: 24px; + padding-bottom: 10px; + margin-top: 0; + } +} + +.ant-btn, +.ant-picker { + border-radius: 4px; +} + +.ant-collapse { + .ant-collapse-item { + border-bottom: 1px solid #eee !important; + + .ant-collapse-header .ant-collapse-arrow { + border: 1px solid #c3c8cf; + border-radius: 50%; + padding: 3px; + width: 15px; + height: 15px; + color: #c3c8cf; + font-size: 7px !important; + } + } + + .ant-collapse-content { + border-top: 1px solid #eee; + } +} + +.ant-tag-green { + color: #27c07a !important; + background: #eefaf4 !important; + border-color: #27c07a !important; +} +// 子级页面 modal弹窗中table为直角 +.ant-modal-body { + .ant-table.ant-table-middle .ant-table-thead > tr > th:first-child { + border-radius: 0 !important; + } + + .ant-table.ant-table-middle .ant-table-thead > tr > th:last-child { + border-radius: 0 !important; + } + + .ant-table.ant-table-middle .ant-table-header .ant-table-thead tr th:nth-last-child(2) { + border-radius: 0; + } + // modal弹窗中 选项卡 tab + .ant-tabs-tab { + padding: 16px !important; + margin: 0 16px 0 0 !important; + } + + .ant-tabs-tab-active .ant-tabs-tab-btn { + font-weight: bold; + } +} + +// form表单中 必填选项 * 加粗 +.ant-form-item-label + > label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before { + margin-right: 0 !important; + font-weight: bold; +} + +.ant-dashed-dangerous { + color: #ed6f6f; + border-color: #ed6f6f; + text-shadow: none; + border-style: solid; +} + +.ant-dashed-dangerous:focus, +.ant-dashed-dangerous:hover { + color: #ed6f6f; + border-color: #ed6f6f; + text-shadow: none; + border-style: solid; +} diff --git a/src/design/transition/base.less b/src/design/transition/base.less new file mode 100644 index 0000000..7944c8b --- /dev/null +++ b/src/design/transition/base.less @@ -0,0 +1,18 @@ +.transition-default() { + &-enter-active, + &-leave-active { + transition: 0.3s cubic-bezier(0.25, 0.8, 0.5, 1) !important; + } + + &-move { + transition: transform 0.4s; + } +} + +.expand-transition { + .transition-default(); +} + +.expand-x-transition { + .transition-default(); +} diff --git a/src/design/transition/fade.less b/src/design/transition/fade.less new file mode 100644 index 0000000..6ed1771 --- /dev/null +++ b/src/design/transition/fade.less @@ -0,0 +1,93 @@ +.fade-transition { + &-enter-active, + &-leave-active { + transition: opacity 0.2s ease-in-out; + } + + &-enter-from, + &-leave-to { + opacity: 0; + } +} + +.fade-enter-active, +.fade-leave-active { + transition: opacity 0.2s ease-in-out; +} + +.fade-enter-from, +.fade-leave-to { + opacity: 0; +} + +/* fade-slide */ +.fade-slide-leave-active, +.fade-slide-enter-active { + transition: all 0.3s; +} + +.fade-slide-enter-from { + opacity: 0; + transform: translateX(-30px); +} + +.fade-slide-leave-to { + opacity: 0; + transform: translateX(30px); +} + +// /////////////////////////////////////////////// +// Fade Bottom +// /////////////////////////////////////////////// + +// Speed: 1x +.fade-bottom-enter-active, +.fade-bottom-leave-active { + transition: opacity 0.25s, transform 0.3s; +} + +.fade-bottom-enter-from { + opacity: 0; + transform: translateY(-10%); +} + +.fade-bottom-leave-to { + opacity: 0; + transform: translateY(10%); +} + +// fade-scale +.fade-scale-leave-active, +.fade-scale-enter-active { + transition: all 0.28s; +} + +.fade-scale-enter-from { + opacity: 0; + transform: scale(1.2); +} + +.fade-scale-leave-to { + opacity: 0; + transform: scale(0.8); +} + +// /////////////////////////////////////////////// +// Fade Top +// /////////////////////////////////////////////// + +// Speed: 1x +.fade-top-enter-active, +.fade-top-leave-active { + transition: opacity 0.2s, transform 0.25s; +} + +.fade-top-enter-from { + opacity: 0; + transform: translateY(8%); +} + +.fade-top-leave-to { + opacity: 0; + transform: translateY(-8%); +} diff --git a/src/design/transition/index.less b/src/design/transition/index.less new file mode 100644 index 0000000..907b534 --- /dev/null +++ b/src/design/transition/index.less @@ -0,0 +1,10 @@ +@import url('/src/design/transition/base.less'); +@import url('/src/design/transition/fade.less'); +@import url('/src/design/transition/scale.less'); +@import url('/src/design/transition/slide.less'); +@import url('/src/design/transition/scroll.less'); +@import url('/src/design/transition/zoom.less'); + +.collapse-transition { + transition: 0.2s height ease-in-out, 0.2s padding-top ease-in-out, 0.2s padding-bottom ease-in-out; +} diff --git a/src/design/transition/scale.less b/src/design/transition/scale.less new file mode 100644 index 0000000..c965493 --- /dev/null +++ b/src/design/transition/scale.less @@ -0,0 +1,21 @@ +.scale-transition { + .transition-default(); + + &-enter-from, + &-leave, + &-leave-to { + opacity: 0; + transform: scale(0); + } +} + +.scale-rotate-transition { + .transition-default(); + + &-enter-from, + &-leave, + &-leave-to { + opacity: 0; + transform: scale(0) rotate(-45deg); + } +} diff --git a/src/design/transition/scroll.less b/src/design/transition/scroll.less new file mode 100644 index 0000000..a5f45e4 --- /dev/null +++ b/src/design/transition/scroll.less @@ -0,0 +1,67 @@ +.scroll-y-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + } + + &-enter-from { + transform: translateY(-15px); + } + + &-leave-to { + transform: translateY(15px); + } +} + +.scroll-y-reverse-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + } + + &-enter-from { + transform: translateY(15px); + } + + &-leave-to { + transform: translateY(-15px); + } +} + +.scroll-x-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + } + + &-enter-from { + transform: translateX(-15px); + } + + &-leave-to { + transform: translateX(15px); + } +} + +.scroll-x-reverse-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + } + + &-enter-from { + transform: translateX(15px); + } + + &-leave-to { + transform: translateX(-15px); + } +} diff --git a/src/design/transition/slide.less b/src/design/transition/slide.less new file mode 100644 index 0000000..79b00df --- /dev/null +++ b/src/design/transition/slide.less @@ -0,0 +1,39 @@ +.slide-y-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + transform: translateY(-15px); + } +} + +.slide-y-reverse-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + transform: translateY(15px); + } +} + +.slide-x-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + transform: translateX(-15px); + } +} + +.slide-x-reverse-transition { + .transition-default(); + + &-enter-from, + &-leave-to { + opacity: 0; + transform: translateX(15px); + } +} diff --git a/src/design/transition/zoom.less b/src/design/transition/zoom.less new file mode 100644 index 0000000..2ea378c --- /dev/null +++ b/src/design/transition/zoom.less @@ -0,0 +1,27 @@ +// zoom-out +.zoom-out-enter-active, +.zoom-out-leave-active { + transition: opacity 0.1 ease-in-out, transform 0.15s ease-out; +} + +.zoom-out-enter-from, +.zoom-out-leave-to { + opacity: 0; + transform: scale(0); +} + +// zoom-fade +.zoom-fade-enter-active, +.zoom-fade-leave-active { + transition: transform 0.2s, opacity 0.3s ease-out; +} + +.zoom-fade-enter-from { + opacity: 0; + transform: scale(0.92); +} + +.zoom-fade-leave-to { + opacity: 0; + transform: scale(1.06); +} diff --git a/src/design/var/breakpoint.less b/src/design/var/breakpoint.less new file mode 100644 index 0000000..4a71eae --- /dev/null +++ b/src/design/var/breakpoint.less @@ -0,0 +1,36 @@ +// ================================= +// ==============屏幕断点============ +// ================================= + +// Extra small screen / phone +@screen-xs: 480px; +@screen-xs-min: @screen-xs; + +// Small screen / tablet +@screen-sm: 576px; +@screen-sm-min: @screen-sm; + +// Medium screen / desktop +@screen-md: 768px; +@screen-md-min: @screen-md; + +// Large screen / wide desktop +@screen-lg: 992px; +@screen-lg-min: @screen-lg; + +// Extra large screen / full hd +@screen-xl: 1200px; +@screen-xl-min: @screen-xl; + +// Extra extra large screen / large desktop +@screen-2xl: 1600px; +@screen-2xl-min: @screen-2xl; + +@screen-600: 600px; +@screen-540: 540px; + +@screen-xs-max: (@screen-sm-min - 1px); +@screen-sm-max: (@screen-md-min - 1px); +@screen-md-max: (@screen-lg-min - 1px); +@screen-lg-max: (@screen-xl-min - 1px); +@screen-xl-max: (@screen-2xl-min - 1px); diff --git a/src/design/var/easing.less b/src/design/var/easing.less new file mode 100644 index 0000000..e19735f --- /dev/null +++ b/src/design/var/easing.less @@ -0,0 +1,18 @@ +// ================================= +// ==============动画函数-=========== +// ================================= + +@ease-base-out: cubic-bezier(0.7, 0.3, 0.1, 1); +@ease-base-in: cubic-bezier(0.9, 0, 0.3, 0.7); +@ease-out: cubic-bezier(0.215, 0.61, 0.355, 1); +@ease-in: cubic-bezier(0.55, 0.055, 0.675, 0.19); +@ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1); +@ease-out-back: cubic-bezier(0.12, 0.4, 0.29, 1.46); +@ease-in-back: cubic-bezier(0.71, -0.46, 0.88, 0.6); +@ease-in-out-back: cubic-bezier(0.71, -0.46, 0.29, 1.46); +@ease-out-circ: cubic-bezier(0.08, 0.82, 0.17, 1); +@ease-in-circ: cubic-bezier(0.6, 0.04, 0.98, 0.34); +@ease-in-out-circ: cubic-bezier(0.78, 0.14, 0.15, 0.86); +@ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1); +@ease-in-quint: cubic-bezier(0.755, 0.05, 0.855, 0.06); +@ease-in-out-quint: cubic-bezier(0.86, 0, 0.07, 1); diff --git a/src/design/var/index.less b/src/design/var/index.less new file mode 100644 index 0000000..0433015 --- /dev/null +++ b/src/design/var/index.less @@ -0,0 +1,39 @@ +@import (reference) '../color.less'; +@import url('/src/design/var/easing.less'); +@import url('/src/design/var/breakpoint.less'); + +@namespace: vben; + +// tabs +@multiple-height: 40px; + +// headers +@header-height: 70px; + +// logo width +@logo-width: 40px; + +// +@side-drag-z-index: 200; + +@page-loading-z-index: 10000; + +@lock-page-z-index: 3000; + +@layout-header-fixed-z-index: 500; + +@multiple-tab-fixed-z-index: 505; + +@layout-sider-fixed-z-index: 510; + +@layout-mix-sider-fixed-z-index: 550; + +@preview-comp-z-index: 1000; + +@page-footer-z-index: 99; + +.bem(@n; @content) { + @{namespace}-@{n} { + @content(); + } +} diff --git a/src/directives/clickOutside.ts b/src/directives/clickOutside.ts new file mode 100644 index 0000000..f6f3051 --- /dev/null +++ b/src/directives/clickOutside.ts @@ -0,0 +1,86 @@ +import { on } from '/@/utils/domUtils'; +import { isServer } from '/@/utils/is'; +import type { ComponentPublicInstance, DirectiveBinding, ObjectDirective } from 'vue'; + +type DocumentHandler = (mouseup: T, mousedown: T) => void; + +type FlushList = Map< + HTMLElement, + { + documentHandler: DocumentHandler; + bindingFn: (...args: unknown[]) => unknown; + } +>; + +const nodeList: FlushList = new Map(); + +let startClick: MouseEvent; + +if (!isServer) { + on(document, 'mousedown', (e: MouseEvent) => (startClick = e)); + on(document, 'mouseup', (e: MouseEvent) => { + for (const { documentHandler } of nodeList.values()) { + documentHandler(e, startClick); + } + }); +} + +function createDocumentHandler(el: HTMLElement, binding: DirectiveBinding): DocumentHandler { + let excludes: HTMLElement[] = []; + if (Array.isArray(binding.arg)) { + excludes = binding.arg; + } else { + // due to current implementation on binding type is wrong the type casting is necessary here + excludes.push(binding.arg as unknown as HTMLElement); + } + return function (mouseup, mousedown) { + const popperRef = ( + binding.instance as ComponentPublicInstance<{ + popperRef: Nullable; + }> + ).popperRef; + const mouseUpTarget = mouseup.target as Node; + const mouseDownTarget = mousedown.target as Node; + const isBound = !binding || !binding.instance; + const isTargetExists = !mouseUpTarget || !mouseDownTarget; + const isContainedByEl = el.contains(mouseUpTarget) || el.contains(mouseDownTarget); + const isSelf = el === mouseUpTarget; + + const isTargetExcluded = + (excludes.length && excludes.some((item) => item?.contains(mouseUpTarget))) || + (excludes.length && excludes.includes(mouseDownTarget as HTMLElement)); + const isContainedByPopper = + popperRef && (popperRef.contains(mouseUpTarget) || popperRef.contains(mouseDownTarget)); + if ( + isBound || + isTargetExists || + isContainedByEl || + isSelf || + isTargetExcluded || + isContainedByPopper + ) { + return; + } + binding.value(); + }; +} + +const ClickOutside: ObjectDirective = { + beforeMount(el, binding) { + nodeList.set(el, { + documentHandler: createDocumentHandler(el, binding), + bindingFn: binding.value, + }); + }, + updated(el, binding) { + nodeList.set(el, { + documentHandler: createDocumentHandler(el, binding), + bindingFn: binding.value, + }); + }, + unmounted(el) { + nodeList.delete(el); + }, +}; + +export default ClickOutside; diff --git a/src/directives/debounce.ts b/src/directives/debounce.ts new file mode 100644 index 0000000..8bf3130 --- /dev/null +++ b/src/directives/debounce.ts @@ -0,0 +1,8 @@ +/** + * @Example v-debounce:click="handleOk" + */ +import { App } from 'vue'; +import vDebounce from './debounce/v-debounce'; +export function setDebounceDirective(app: App) { + app.directive('debounce', vDebounce); +} diff --git a/src/directives/debounce/v-debounce.ts b/src/directives/debounce/v-debounce.ts new file mode 100644 index 0000000..964387a --- /dev/null +++ b/src/directives/debounce/v-debounce.ts @@ -0,0 +1,19 @@ +// v-debounce.ts +import { DirectiveBinding } from 'vue'; +import { debounce } from 'lodash-es'; + +export default { + beforeMount(el: HTMLElement, binding: DirectiveBinding) { + if (typeof binding.value !== 'function') { + throw new Error('Directive value must be a function'); + } + const delay = 300; // 默认延迟300ms + el['onEvent'] = debounce(binding.value, delay); + }, + mounted(el: HTMLElement, binding: DirectiveBinding) { + el.addEventListener(binding.arg || 'click', el['onEvent'] as EventListener); + }, + unmounted(el: HTMLElement, binding: DirectiveBinding) { + el.removeEventListener(binding.arg || 'click', el['onEvent'] as EventListener); + }, +}; diff --git a/src/directives/index.ts b/src/directives/index.ts new file mode 100644 index 0000000..3f72bc4 --- /dev/null +++ b/src/directives/index.ts @@ -0,0 +1,10 @@ +/** + * Configure and register global directives + */ +import type { App } from 'vue'; +import { setupLoadingDirective } from './loading'; +import { setDebounceDirective } from './debounce'; +export function setupGlobDirectives(app: App) { + setupLoadingDirective(app); + setDebounceDirective(app); +} diff --git a/src/directives/loading.ts b/src/directives/loading.ts new file mode 100644 index 0000000..712b71c --- /dev/null +++ b/src/directives/loading.ts @@ -0,0 +1,39 @@ +import { createLoading } from '/@/components/Loading'; +import type { Directive, App } from 'vue'; + +const loadingDirective: Directive = { + mounted(el, binding) { + const tip = el.getAttribute('loading-tip'); + const background = el.getAttribute('loading-background'); + const size = el.getAttribute('loading-size'); + const fullscreen = !!binding.modifiers.fullscreen; + const instance = createLoading( + { + tip, + background, + size: size || 'large', + loading: !!binding.value, + absolute: !fullscreen, + }, + fullscreen ? document.body : el, + ); + el.instance = instance; + }, + updated(el, binding) { + const instance = el.instance; + if (!instance) return; + instance.setTip(el.getAttribute('loading-tip')); + if (binding.oldValue !== binding.value) { + instance.setLoading?.(binding.value && !instance.loading); + } + }, + unmounted(el) { + el?.instance?.close(); + }, +}; + +export function setupLoadingDirective(app: App) { + app.directive('loading', loadingDirective); +} + +export default loadingDirective; diff --git a/src/directives/repeatClick.ts b/src/directives/repeatClick.ts new file mode 100644 index 0000000..d4ef150 --- /dev/null +++ b/src/directives/repeatClick.ts @@ -0,0 +1,31 @@ +/** + * Prevent repeated clicks + * @Example v-repeat-click="()=>{}" + */ +import { on, once } from '/@/utils/domUtils'; +import type { Directive, DirectiveBinding } from 'vue'; + +const repeatDirective: Directive = { + beforeMount(el: Element, binding: DirectiveBinding) { + let interval: Nullable = null; + let startTime = 0; + const handler = (): void => binding?.value(); + const clear = (): void => { + if (Date.now() - startTime < 100) { + handler(); + } + interval && clearInterval(interval); + interval = null; + }; + + on(el, 'mousedown', (e: MouseEvent): void => { + if ((e as any).button !== 0) return; + startTime = Date.now(); + once(document as any, 'mouseup', clear); + interval && clearInterval(interval); + interval = setInterval(handler, 100); + }); + }, +}; + +export default repeatDirective; diff --git a/src/directives/ripple/index.less b/src/directives/ripple/index.less new file mode 100644 index 0000000..9c0718e --- /dev/null +++ b/src/directives/ripple/index.less @@ -0,0 +1,21 @@ +.ripple-container { + position: absolute; + top: 0; + left: 0; + width: 0; + height: 0; + overflow: hidden; + pointer-events: none; +} + +.ripple-effect { + position: relative; + z-index: 9999; + width: 1px; + height: 1px; + margin-top: 0; + margin-left: 0; + pointer-events: none; + border-radius: 50%; + transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1); +} diff --git a/src/directives/ripple/index.ts b/src/directives/ripple/index.ts new file mode 100644 index 0000000..85a80e8 --- /dev/null +++ b/src/directives/ripple/index.ts @@ -0,0 +1,191 @@ +import type { Directive } from 'vue'; +import './index.less'; +export interface RippleOptions { + event: string; + transition: number; +} + +export interface RippleProto { + background?: string; + zIndex?: string; +} + +export type EventType = Event & MouseEvent & TouchEvent; + +const options: RippleOptions = { + event: 'mousedown', + transition: 400, +}; + +const RippleDirective: Directive & RippleProto = { + beforeMount: (el: HTMLElement, binding) => { + if (binding.value === false) return; + + const bg = el.getAttribute('ripple-background'); + setProps(Object.keys(binding.modifiers), options); + + const background = bg || RippleDirective.background; + const zIndex = RippleDirective.zIndex; + + el.addEventListener(options.event, (event: EventType) => { + rippler({ + event, + el, + background, + zIndex, + }); + }); + }, + updated(el, binding) { + if (!binding.value) { + el?.clearRipple?.(); + return; + } + const bg = el.getAttribute('ripple-background'); + el?.setBackground?.(bg); + }, +}; + +function rippler({ + event, + el, + zIndex, + background, +}: { event: EventType; el: HTMLElement } & RippleProto) { + const targetBorder = parseInt(getComputedStyle(el).borderWidth.replace('px', '')); + const clientX = event.clientX || event.touches[0].clientX; + const clientY = event.clientY || event.touches[0].clientY; + + const rect = el.getBoundingClientRect(); + const { left, top } = rect; + const { offsetWidth: width, offsetHeight: height } = el; + const { transition } = options; + const dx = clientX - left; + const dy = clientY - top; + const maxX = Math.max(dx, width - dx); + const maxY = Math.max(dy, height - dy); + const style = window.getComputedStyle(el); + const radius = Math.sqrt(maxX * maxX + maxY * maxY); + const border = targetBorder > 0 ? targetBorder : 0; + + const ripple = document.createElement('div'); + const rippleContainer = document.createElement('div'); + + // Styles for ripple + ripple.className = 'ripple'; + + Object.assign(ripple.style ?? {}, { + marginTop: '0px', + marginLeft: '0px', + width: '1px', + height: '1px', + transition: `all ${transition}ms cubic-bezier(0.4, 0, 0.2, 1)`, + borderRadius: '50%', + pointerEvents: 'none', + position: 'relative', + zIndex: zIndex ?? '9999', + backgroundColor: background ?? 'rgba(0, 0, 0, 0.12)', + }); + + // Styles for rippleContainer + rippleContainer.className = 'ripple-container'; + Object.assign(rippleContainer.style ?? {}, { + position: 'absolute', + left: `${0 - border}px`, + top: `${0 - border}px`, + height: '0', + width: '0', + pointerEvents: 'none', + overflow: 'hidden', + }); + + const storedTargetPosition = + el.style.position.length > 0 ? el.style.position : getComputedStyle(el).position; + + if (storedTargetPosition !== 'relative') { + el.style.position = 'relative'; + } + + rippleContainer.appendChild(ripple); + el.appendChild(rippleContainer); + + Object.assign(ripple.style, { + marginTop: `${dy}px`, + marginLeft: `${dx}px`, + }); + + const { + borderTopLeftRadius, + borderTopRightRadius, + borderBottomLeftRadius, + borderBottomRightRadius, + } = style; + Object.assign(rippleContainer.style, { + width: `${width}px`, + height: `${height}px`, + direction: 'ltr', + borderTopLeftRadius, + borderTopRightRadius, + borderBottomLeftRadius, + borderBottomRightRadius, + }); + + setTimeout(() => { + const wh = `${radius * 2}px`; + Object.assign(ripple.style ?? {}, { + width: wh, + height: wh, + marginLeft: `${dx - radius}px`, + marginTop: `${dy - radius}px`, + }); + }, 0); + + function clearRipple() { + setTimeout(() => { + ripple.style.backgroundColor = 'rgba(0, 0, 0, 0)'; + }, 250); + + setTimeout(() => { + rippleContainer?.parentNode?.removeChild(rippleContainer); + }, 850); + el.removeEventListener('mouseup', clearRipple, false); + el.removeEventListener('mouseleave', clearRipple, false); + el.removeEventListener('dragstart', clearRipple, false); + setTimeout(() => { + let clearPosition = true; + for (let i = 0; i < el.childNodes.length; i++) { + if ((el.childNodes[i] as Recordable).className === 'ripple-container') { + clearPosition = false; + } + } + + if (clearPosition) { + el.style.position = storedTargetPosition !== 'static' ? storedTargetPosition : ''; + } + }, options.transition + 260); + } + + if (event.type === 'mousedown') { + el.addEventListener('mouseup', clearRipple, false); + el.addEventListener('mouseleave', clearRipple, false); + el.addEventListener('dragstart', clearRipple, false); + } else { + clearRipple(); + } + + (el as Recordable).setBackground = (bgColor: string) => { + if (!bgColor) { + return; + } + ripple.style.backgroundColor = bgColor; + }; +} + +function setProps(modifiers: Recordable, props: Recordable) { + modifiers.forEach((item: Recordable) => { + if (isNaN(Number(item))) props.event = item; + else props.transition = item; + }); +} + +export default RippleDirective; diff --git a/src/enums/appEnum.ts b/src/enums/appEnum.ts new file mode 100644 index 0000000..833c622 --- /dev/null +++ b/src/enums/appEnum.ts @@ -0,0 +1,53 @@ +export const SIDE_BAR_MINI_WIDTH = 48; +export const SIDE_BAR_SHOW_TIT_MINI_WIDTH = 80; + +export enum ContentEnum { + // auto width + FULL = 'full', + // fixed width + FIXED = 'fixed', +} + +// menu theme enum +export enum ThemeEnum { + DARK = 'dark', + LIGHT = 'light', +} + +export enum SettingButtonPositionEnum { + AUTO = 'auto', + HEADER = 'header', + FIXED = 'fixed', +} + +export enum SessionTimeoutProcessingEnum { + ROUTE_JUMP, + PAGE_COVERAGE, +} + +/** + * 权限模式 + */ +export enum PermissionModeEnum { + // role + ROLE = 'ROLE', + // black + BACK = 'BACK', + // route mapping + ROUTE_MAPPING = 'ROUTE_MAPPING', +} + +// Route switching animation +export enum RouterTransitionEnum { + ZOOM_FADE = 'zoom-fade', + ZOOM_OUT = 'zoom-out', + FADE_SIDE = 'fade-slide', + FADE = 'fade', + FADE_BOTTOM = 'fade-bottom', + FADE_SCALE = 'fade-scale', +} + +export enum AppDataType { + DESKTOP, + BI, +} diff --git a/src/enums/breakpointEnum.ts b/src/enums/breakpointEnum.ts new file mode 100644 index 0000000..93acc1a --- /dev/null +++ b/src/enums/breakpointEnum.ts @@ -0,0 +1,28 @@ +export enum sizeEnum { + XS = 'XS', + SM = 'SM', + MD = 'MD', + LG = 'LG', + XL = 'XL', + XXL = 'XXL', +} + +export enum screenEnum { + XS = 480, + SM = 576, + MD = 768, + LG = 992, + XL = 1200, + XXL = 1600, +} + +const screenMap = new Map(); + +screenMap.set(sizeEnum.XS, screenEnum.XS); +screenMap.set(sizeEnum.SM, screenEnum.SM); +screenMap.set(sizeEnum.MD, screenEnum.MD); +screenMap.set(sizeEnum.LG, screenEnum.LG); +screenMap.set(sizeEnum.XL, screenEnum.XL); +screenMap.set(sizeEnum.XXL, screenEnum.XXL); + +export { screenMap }; diff --git a/src/enums/cacheEnum.ts b/src/enums/cacheEnum.ts new file mode 100644 index 0000000..43a8c98 --- /dev/null +++ b/src/enums/cacheEnum.ts @@ -0,0 +1,35 @@ +// token key +export const TOKEN_KEY = 'TOKEN__'; + +export const LOCALE_KEY = 'LOCALE__'; + +export const LANGUAGE_KEY = 'LANGUAGE__'; + +export const PERMISSION_KEY = 'PERMISSION_'; + +// user info key +export const USER_INFO_KEY = 'USER__INFO__'; + +// role info key +export const ROLES_KEY = 'ROLES__KEY__'; + +// project config key +export const PROJ_CFG_KEY = 'PROJ__CFG__KEY__'; + +// lock info +export const LOCK_INFO_KEY = 'LOCK__INFO__KEY__'; + +export const MULTIPLE_TABS_KEY = 'MULTIPLE_TABS__KEY__'; + +export const APP_DARK_MODE_KEY_ = '__APP__DARK__MODE__'; + +// base global local key +export const APP_LOCAL_CACHE_KEY = 'COMMON__LOCAL__KEY__'; + +// base global session key +export const APP_SESSION_CACHE_KEY = 'COMMON__SESSION__KEY__'; + +export enum CacheTypeEnum { + SESSION, + LOCAL, +} diff --git a/src/enums/desktop.ts b/src/enums/desktop.ts new file mode 100644 index 0000000..2f58371 --- /dev/null +++ b/src/enums/desktop.ts @@ -0,0 +1,97 @@ +//桌面设计 +export enum DesktopComponent { + DASHBOARD = 'Dashboard', //数据面板 + INFORMATION = 'Information', //信息列表 + CHARTLINE = 'ChartLine', //折线/柱状图 + PIE = 'Pie', //饼图 + RADAR = 'Radar', //雷达图 + GAUGE = 'Gauge', //仪表盘 + FUNNEL = 'Funnel', //漏斗图 + CHARTBAR = 'ChartBar', //柱状百分比 + MYTASK = 'MyTask', //我的任务 + TODOLIST = 'TodoList', //待办事项 + MODULES = 'Modules', //常用功能 + BANNER = 'Banner', //Banner图 + BUTTON = 'Button', // 按钮组件 + TABLE = 'Table', // 表格组件 + CATEGORY_STACK = 'CategoryStack', //甘特图 + TABSTABLE = 'TabsTable', // 多表格组件 + IMAGE = 'Image', //图片组件 + MAP = 'Map', //地图组件 + DEFAULT = 'Default', +} +// 数据面板风格类型 +export enum DashboardShowType { + ONE = '1', //风格1 + TWO = '2', //风格2 + THREE = '3', //风格3 +} +// 图标类型 +export enum ImgType { + ICON = 'icon', //图标 + PICTURE = 'picture', //图片 + DEFAULT = 'default', //无 +} + +//布局朝向 +export enum OrientType { + HORIZONTAL = 'horizontal', //水平 + VERTICAL = 'vertical', //垂直 +} +// 所在位置 +export enum LocationType { + LEFT_TOP = 1, + RIGHT_TOP, + LEFT_BOTTOM, + RIGHT_BOTTOM, + TOP_CENTER, + BOTTOM_CENTER, +} +// 对齐方式 + +export enum AlignType { + LEFT = 'left', + CENTER = 'center', + RIGHT = 'right', +} +// 雷达图类型 +export enum RadarShapeType { + POLYGON = 'polygon', + CIRCLE = 'circle', +} +// 图标设置 类型 +export enum LegendType { + NONE = 'none', + RECT = 'rect', + CIRCLE = 'circle', + ROUND_RECT = 'roundRect', + TRIANGLE = 'triangle', + DIAMOND = 'diamond', + PIN = 'pin', + ARROW = 'arrow', + SQUARE = 'square', +} + +//跳转地址 +export enum JumpToPathType { + PROCESSTASKS = '/task/processtasks', +} + +// 按钮设置 类型 +export enum ButtonType { + SEARCH = 1, + CREATE, + EXECUTE, +} +// 按钮设置 执行类型 +export enum ExecuteType { + API = 1, + JS, + RULE, + PUSH_MESSAGE, +} +// 表格设置 类型 +export enum TableType { + API = 1, + FORM, +} diff --git a/src/enums/erpEnum.ts b/src/enums/erpEnum.ts new file mode 100644 index 0000000..1fb8016 --- /dev/null +++ b/src/enums/erpEnum.ts @@ -0,0 +1,8 @@ +export enum ErpType { + KINGDEE = 0, //0-金蝶 + YONYOU, //1-用友 + DINGJIE, //2-鼎捷 + SAP, //3-SAP + ORACLEEBS, //4-ORACLEEBS + DYNAMIC365, //5-DYNAMIC365 +} diff --git a/src/enums/exceptionEnum.ts b/src/enums/exceptionEnum.ts new file mode 100644 index 0000000..d28f4d0 --- /dev/null +++ b/src/enums/exceptionEnum.ts @@ -0,0 +1,27 @@ +/** + * @description: Exception related enumeration + */ +export enum ExceptionEnum { + // page not access + PAGE_NOT_ACCESS = 403, + + // page not found + PAGE_NOT_FOUND = 404, + + // error + ERROR = 500, + + // net work error + NET_WORK_ERROR = 10000, + + // No data on the page. In fact, it is not an exception page + PAGE_NOT_DATA = 10100, +} + +export enum ErrorTypeEnum { + VUE = 'vue', + SCRIPT = 'script', + RESOURCE = 'resource', + AJAX = 'ajax', + PROMISE = 'promise', +} diff --git a/src/enums/formViewEnum.ts b/src/enums/formViewEnum.ts new file mode 100644 index 0000000..2e10c6f --- /dev/null +++ b/src/enums/formViewEnum.ts @@ -0,0 +1,18 @@ +// 可见范围,0-公开,1-个人,默认为个人 +export enum IS_PUBLIC { + PUBLIC = 0, + PRIVATE = 1, +} +//查询类型,0-快捷查询,1-高级查询,默认快捷查询 +export enum QUERY_TYPE { + QUICK_SEARCH = 0, + ADVANCED_QUERY = 1, +} + +//表单列表模式,0-默认模式,1-上下模式,2-左右模式 +export enum LIST_MODE { + DEFAULT = 'default', + CARD = 'card', + VERTICAL = 'vertical', + HORIZONTAL = 'horizontal', +} diff --git a/src/enums/formtypeEnum.ts b/src/enums/formtypeEnum.ts new file mode 100644 index 0000000..036fd1a --- /dev/null +++ b/src/enums/formtypeEnum.ts @@ -0,0 +1,17 @@ +export enum FormTypeEnum { + // basic login path + SYSTEM_FORM = 0, + // basic home path + CUSTOM_FORM = 1, +} + +export enum FormDesignTypeEnum { + // 数据优先 + DATA_FIRST, + // 界面优先 + CODE_FIRST, + // 简易模板 + SIMPLE_TEMPLATE, + //无表表单 + NO_TABLE, +} diff --git a/src/enums/httpEnum.ts b/src/enums/httpEnum.ts new file mode 100644 index 0000000..4349d1b --- /dev/null +++ b/src/enums/httpEnum.ts @@ -0,0 +1,32 @@ +/** + * @description: Request result set + */ +export enum ResultEnum { + SUCCESS = 0, + ERROR = 1, + TIMEOUT = 10401, + UNAUTHRAZATION = 10401, + TYPE = 'success', +} + +/** + * @description: request method + */ +export enum RequestEnum { + GET = 'GET', + POST = 'POST', + PUT = 'PUT', + DELETE = 'DELETE', +} + +/** + * @description: contentType + */ +export enum ContentTypeEnum { + // json + JSON = 'application/json;charset=UTF-8', + // form-data qs + FORM_URLENCODED = 'application/x-www-form-urlencoded;charset=UTF-8', + // form-data upload + FORM_DATA = 'multipart/form-data;charset=UTF-8', +} diff --git a/src/enums/menuEnum.ts b/src/enums/menuEnum.ts new file mode 100644 index 0000000..89cfa9f --- /dev/null +++ b/src/enums/menuEnum.ts @@ -0,0 +1,50 @@ +/** + * @description: menu type + */ +export enum MenuTypeEnum { + // left menu + SIDEBAR = 'sidebar', + + MIX_SIDEBAR = 'mix-sidebar', + // mixin menu + MIX = 'mix', + // top menu + TOP_MENU = 'top-menu', +} + +// 折叠触发器位置 +export enum TriggerEnum { + // 不显示 + NONE = 'NONE', + // 菜单底部 + FOOTER = 'FOOTER', + // 头部 + HEADER = 'HEADER', +} + +export type Mode = 'vertical' | 'vertical-right' | 'horizontal' | 'inline'; + +// menu mode +export enum MenuModeEnum { + VERTICAL = 'vertical', + HORIZONTAL = 'horizontal', + VERTICAL_RIGHT = 'vertical-right', + INLINE = 'inline', +} + +export enum MenuSplitTyeEnum { + NONE, + TOP, + LEFT, +} + +export enum TopMenuAlignEnum { + CENTER = 'center', + START = 'start', + END = 'end', +} + +export enum MixSidebarTriggerEnum { + HOVER = 'hover', + CLICK = 'click', +} diff --git a/src/enums/messageTemplate.ts b/src/enums/messageTemplate.ts new file mode 100644 index 0000000..9ca2e14 --- /dev/null +++ b/src/enums/messageTemplate.ts @@ -0,0 +1,26 @@ +export enum MessageType { + EMAIL = 0, //0-邮箱 + SMS, //1-短信 + WE_COM, //2-企业微信 + DING_DING, //3-钉钉 + WEB_HOOK, //4-webhook + WE_CHAT, //5-微信公众号 + SYSTEM, //6-系统消息 +} +export enum CloudType { + ALIBABA = 0, // 0 阿里云 + TENCENT, // 1 腾讯云 + HUAWEI, //2 华为云 + HEYI, // 3 合一 + JD, // 4 京东 + RONGLIAN, // 5 容联 + YIMEI, //6 亿美 + TIANYI, //7 天翼云 + YUNPIAN, // 8 云片 +} +export enum WebHookAuthType { + BASIC = 0, // 0 BASIC 认证 + DIGEST, // 1 DIGEST 认证 + SSL, // 2 SSL 认证 + FORM, // 3 FORM 认证 +} diff --git a/src/enums/messageTemplateEnum.ts b/src/enums/messageTemplateEnum.ts new file mode 100644 index 0000000..341a4c8 --- /dev/null +++ b/src/enums/messageTemplateEnum.ts @@ -0,0 +1,4 @@ +// 分类id +export enum MessageTemplateCategory { + ID = '1747131363295117314', +} diff --git a/src/enums/oa.ts b/src/enums/oa.ts new file mode 100644 index 0000000..5c7adb8 --- /dev/null +++ b/src/enums/oa.ts @@ -0,0 +1,9 @@ +// OA类型 +export enum OaType { + NEWS = 1, + NOTICE, +} + +export enum NewsCategoryDic { + ID = '1718831555510091777', +} diff --git a/src/enums/pageEnum.ts b/src/enums/pageEnum.ts new file mode 100644 index 0000000..4fa3a97 --- /dev/null +++ b/src/enums/pageEnum.ts @@ -0,0 +1,19 @@ +export enum PageEnum { + // basic login path + BASE_LOGIN = '/login', + // basic home path + BASE_HOME = '/workbench/index', + // error page path + ERROR_PAGE = '/exception', + // error log page path + ERROR_LOG_PAGE = '/error-log/list', + // user center + USER_CENTER = '/user-center/info', + //自定义表单 + CUSTOM_FORM = '/custom-form/list', + //im + IM_PAGE = '/im/info', + UPDATE_PWD_FORM = '/updatepwd', + // 应用配置 + APPLICATION_HOME = '/application/index', +} diff --git a/src/enums/printEnum.ts b/src/enums/printEnum.ts new file mode 100644 index 0000000..9c4e3b0 --- /dev/null +++ b/src/enums/printEnum.ts @@ -0,0 +1,9 @@ +// 分类id +export enum PrintCategory { + ID = '1659097789878583298', +} +// 模板打印按钮必然包含的字符串 +export enum PrintButton { + CODE = 'templateprint', +} +// diff --git a/src/enums/reportEnum.ts b/src/enums/reportEnum.ts new file mode 100644 index 0000000..baf72d2 --- /dev/null +++ b/src/enums/reportEnum.ts @@ -0,0 +1,5 @@ +// 分类 +export enum ReportCategory { + COMMON = 0, + ACTIVE_REPORT, +} diff --git a/src/enums/roleEnum.ts b/src/enums/roleEnum.ts new file mode 100644 index 0000000..857868d --- /dev/null +++ b/src/enums/roleEnum.ts @@ -0,0 +1,7 @@ +export enum RoleEnum { + // super admin + SUPER = 'super', + + // tester + TEST = 'test', +} diff --git a/src/enums/sizeEnum.ts b/src/enums/sizeEnum.ts new file mode 100644 index 0000000..9bac184 --- /dev/null +++ b/src/enums/sizeEnum.ts @@ -0,0 +1,19 @@ +export enum SizeEnum { + DEFAULT = 'default', + SMALL = 'small', + LARGE = 'large', +} + +export enum SizeNumberEnum { + DEFAULT = 48, + SMALL = 16, + LARGE = 64, +} + +export const sizeMap: Map = (() => { + const map = new Map(); + map.set(SizeEnum.DEFAULT, SizeNumberEnum.DEFAULT); + map.set(SizeEnum.SMALL, SizeNumberEnum.SMALL); + map.set(SizeEnum.LARGE, SizeNumberEnum.LARGE); + return map; +})(); diff --git a/src/enums/treeStructure.ts b/src/enums/treeStructure.ts new file mode 100644 index 0000000..91f5822 --- /dev/null +++ b/src/enums/treeStructure.ts @@ -0,0 +1,4 @@ +export enum TreeStructureType { + STATIC = 1, //静态树 + API = 2, //2 Api接口树 +} diff --git a/src/enums/userEnum.ts b/src/enums/userEnum.ts new file mode 100644 index 0000000..b76210b --- /dev/null +++ b/src/enums/userEnum.ts @@ -0,0 +1,5 @@ +export enum GenderEnum { + SECRECY = -1, //保密 + FEMALE = 0, //女 + MALE = 1, //男 +} diff --git a/src/enums/workflowEnum.ts b/src/enums/workflowEnum.ts new file mode 100644 index 0000000..bde1a67 --- /dev/null +++ b/src/enums/workflowEnum.ts @@ -0,0 +1,262 @@ +//工作流 流程设计 节点 +export enum BpmnNodeKey { + START = 'bpmn:StartEvent', //开始节点 + END = 'bpmn:EndEvent', //结束节点 + INCLUSIVE = 'bpmn:InclusiveGateway', //相容网关 + PARALLEL = 'bpmn:ParallelGateway', //并行网关 + EXCLUSIVE = 'bpmn:ExclusiveGateway', //互斥网关 + USER = 'bpmn:UserTask', //用户任务 + SCRIPT = 'bpmn:ScriptTask', //脚本任务 + SCRIPT_CONTENT = 'bpmn:script', //脚本任务 脚本内容 + SUB_PROCESS = 'bpmn:SubProcess', //子流程 + PROCESS = 'bpmn:Process', //流程 + SEQUENCEFLOW = 'bpmn:SequenceFlow', //流程线 + CALLACTIVITY = 'bpmn:CallActivity', //外部流程 + EVENT = 'bpmn:Event', + COUNTERSIGN = 'bpmn:MultiInstanceLoopCharacteristics', //会签节点 外部节点多实例 + COUNTERSIGN_CONDITION = 'bpmn:completionCondition', //会签条件 + CONDITION_EXPRESSION = 'bpmn:FormalExpression', //流程线条件 +} +// 表单信息 +export enum FormType { + SYSTEM = 0, //系统表单 + CUSTOM, //自定义表单 + WORKFLOW, //流程已添加表单 +} +//人员权限类型 +export enum MemberType { + USER = 0, //0 用户 + ROLE, //1 角色 + POST, //2 岗位 + SPECIFY_NODE_APPROVER, //3 指定节点审批人 + SUPERIOR_LEADERS, //4 上级领导 + FORM_FIELD, //5 表单字段 + API, //6 api调用 + CURRENT_NODE_CANDIDATE, //7 当前节点候选审批人 + FORM_CREATOR, //8 表单创建人 + APPROCAL_USER, // 9 审批专员 +} +// 自动同意 +export enum AutoAgreeRule { + NO_RULE = 0, //未选择自动同意规则 + ORIGINATOR, //候选审批人包含流程任务发起人 + PREVIOUS_NODE, //候选审批人包含上一节点审批人 + APPROVED, // 候选审批人在此流程中审批过 +} +// 无处理人 +export enum NoHandler { + ADMIN = 0, //由超级管理员角色处理 + PREVIOUS_NODE, //由上一节点审批人指定审批人 +} +// 指定审批人 +export enum DesignatedApprover { + NOT_SPECIFIED = 0, //不指定审批人 + PREVIOUS_NODE, //由上一节点审批人指定 +} + +//权限类型 +export enum AuthType { + ALL = 0, // 0 所有 + APPOINT, // 1 指定 +} +// 任务状态 +export enum ProcessStatus { + APPROVAL_INPROGRESS = 0, //审批中 + APPROVAL_COMPLETED, //审批通过 +} +// 任务权限 +export enum TaskPermissions { + LIMITED_TO_PROMOTER_INITIATED = 0, //限发起人发起 + EVERYONE_LAUNCHES, //所有人发起 +} +//参数类型 +export enum ParamType { + VALUE = 0, //值 + VARIABLE, //变量 + API, //api + FORM_DATA, //表单数据 +} + +//脚本记录 +export enum RecordType { + NO_RECORD = 0, //不在流程记录中记录脚本任务操作信息 + RECORD, //记录脚本任务操作信息 +} + +//通知消息类型 +export enum NoticePolicyType { + SYSTEM_MESSAGES = 0, // 系统消息 + SHORT_MESSAGE, // 短信 + ENTERPRISE_WECHAT, // 企业微信 + DING_TALK, // 钉钉 + MAILBOX, //邮箱 +} +//会签类型 +export enum MultipleInstancesType { + NONE = 0, //无 + SYNC, //同步 + ASYNC, //异步 +} + +export enum AddOrRemoveType { + ALLOW = 1, //允许 + FORBID = 0, //禁止 +} + +//会签 完成条件(多实例) +export enum InstanceCompletionConditions { + ALL = 0, //全部 + SINGLE, //单个 + PERCENTAGE, //百分比 +} + +//审批意见展示类型 +export enum ApprovalOpinionDisplayType { + ALL = 0, //显示所有 + SHOW_FINAL_RESULTS, //显示最终结果 +} +//电子签章验证 +export enum ElectronicSignatureVerification { + NO_PASSWORD_REQUIRED = 0, //直接使用不需要密码 + PASSWORD_REQUIRED = 1, //填写密码 + NONE = 2, //不使用签章 +} + +export enum LevelEnum { + ONE = 1, //上1级领导 + SECOND, //上2级领导 + THREE, //上3级领导 + FOUR, //上4级领导 + FIVE, //上5级领导 +} +// 参数类型 +export enum OperationType { + VALUE = 0, //值 + VARIABLE, //变量 + API, //APi +} + +// 按钮类型 +export enum ButtonType { + DEFAULT = 0, + SCRIPT = 1, + API = 2, +} +// 按钮 驳回类型 +export enum RejectType { + ALL = 0, // 允许驳回至任一流转过的节点 + ONLY = 1, // 仅允许驳回至上一节点 +} + +// 外部流程 调用类型 +export enum CallActivityType { + SINGLE = 0, // 单实例 + MULTIPLE = 1, // 多实例 +} +// 外部流程 完成条件 +export enum FinishType { + ALL = 0, //全部 + SINGLE, //单个 + PERCENTAGE, //百分比 +} + +// 外部流程 执行类型 +export enum ExecutionType { + SEQUENCE = 0, //顺序执行 + PARALLEL, //并行执行 +} + +// 流程任务类型 +export enum TaskTypeUrl { + PENDING_TASKS = '/workflow/execute/pending', //待办 + FINISHED_TASKS = '/workflow/execute/finished/page', //已办 + MY_PROCESS = '/workflow/execute/my-process/page', //我的流程 + CIRCULATED = '/workflow/execute/circulated/page', //我的传阅 + RECYCLE = '/workflow/execute/my-process/recycle/page', //回收站 + DRAFT = '/workflow/execute/draft/page', //草稿箱 +} +// 工作流分类id +export enum FlowCategory { + ID = '1419276800524425555', +} + +// 审批类型 0 同意 1 拒绝 2 驳回 3 结束 4 其他(用户自定义按钮)5 暂存 +export enum ApproveType { + AGREE = 0, //同意 + DISAGREE, //拒绝 + REJECT, //驳回 + FINISH, //结束 + OTHER, //其他(用户自定义按钮) + STAGING, //暂存 +} +export enum ApproveCode { + AGREE = 'agree', //同意 + DISAGREE = 'disagree', //拒绝 + REJECT = 'reject', //驳回 + FINISH = 'finish', //结束 + OTHER = 'other', //其他(用户自定义按钮) + STAGING = 'staging', //暂存 +} +// 流程监控状态 +export enum ProcessMonitorStatus { + SUSPENDED = 'SUSPENDED', //挂起 + ACTIVE = 'ACTIVE', //活动 + COMPLETED = 'COMPLETED', + INTERNALLY_TERMINATED = 'INTERNALLY_TERMINATED', +} + +// 签章类型 + +export enum StampType { + PRIVATE_SIGNATURE = 0, //私人签章 + PUBLIC_SIGNATURE, //公共签章 + DEFAULT_SIGNATURE, //默认签章 +} +// 签章文件类型 +export enum StampFileTypeAttributes { + UPLOAD_PICTURES = 0, //上传照片 + HANDWRITTEN_SIGNATURE, //手写签名 +} + +// 签章分类id +export enum StampCategory { + ID = '1585911685466951681', +} + +//事件类型 +export enum NodeEventType { + START = 0, //开始事件 + END, //结束事件 +} + +//事件执行类型 +export enum NodeEventExType { + API = 0, //api + LITEFLOW, //规则引擎 + PUSH_MESSAGE, //推送消息 + RULE_PROCESS, //规则流程 + SCRIPTING_ENGINE, //脚本引擎 +} + +//用户节点超时处理 +export enum TimeOutHandle { + NO = 1, //不启用 + YES = 2, //启用 +} +//用户节点超时机制 +export enum TimeOutRule { + MAX = 1, //超过最大推送次数则即时处理 + FIRST = 2, //首次超时即处理 +} +//用户节点处理方式 +export enum TimeOutType { + AGREE = 2, //自动同意并向下流转 + BACK = 1, //自动驳回至上一节点 +} +// 表单form页面来源 +export enum FromPageType { + MENU = 0, //菜单页面 + FLOW, //工作流 + PREVIEW, //预览 + DESKTOP, //桌面设计 +} diff --git a/src/hooks/core/onMountedOrActivated.ts b/src/hooks/core/onMountedOrActivated.ts new file mode 100644 index 0000000..ffabf18 --- /dev/null +++ b/src/hooks/core/onMountedOrActivated.ts @@ -0,0 +1,18 @@ +import { nextTick, onMounted, onActivated } from 'vue'; + +export function onMountedOrActivated(hook: Fn) { + let mounted: boolean; + + onMounted(() => { + hook(); + nextTick(() => { + mounted = true; + }); + }); + + onActivated(() => { + if (mounted) { + hook(); + } + }); +} diff --git a/src/hooks/core/useAttrs.ts b/src/hooks/core/useAttrs.ts new file mode 100644 index 0000000..a7c5bd7 --- /dev/null +++ b/src/hooks/core/useAttrs.ts @@ -0,0 +1,40 @@ +import { getCurrentInstance, reactive, shallowRef, watchEffect } from 'vue'; +import type { Ref } from 'vue'; +interface Params { + excludeListeners?: boolean; + excludeKeys?: string[]; + excludeDefaultKeys?: boolean; +} + +const DEFAULT_EXCLUDE_KEYS = ['class', 'style']; +const LISTENER_PREFIX = /^on[A-Z]/; + +export function entries(obj: Recordable): [string, T][] { + return Object.keys(obj).map((key: string) => [key, obj[key]]); +} + +export function useAttrs(params: Params = {}): Ref | {} { + const instance = getCurrentInstance(); + if (!instance) return {}; + + const { excludeListeners = false, excludeKeys = [], excludeDefaultKeys = true } = params; + const attrs = shallowRef({}); + const allExcludeKeys = excludeKeys.concat(excludeDefaultKeys ? DEFAULT_EXCLUDE_KEYS : []); + + // Since attrs are not reactive, make it reactive instead of doing in `onUpdated` hook for better performance + instance.attrs = reactive(instance.attrs); + + watchEffect(() => { + const res = entries(instance.attrs).reduce((acm, [key, val]) => { + if (!allExcludeKeys.includes(key) && !(excludeListeners && LISTENER_PREFIX.test(key))) { + acm[key] = val; + } + + return acm; + }, {} as Recordable); + + attrs.value = res; + }); + + return attrs; +} diff --git a/src/hooks/core/useContext.ts b/src/hooks/core/useContext.ts new file mode 100644 index 0000000..522e10b --- /dev/null +++ b/src/hooks/core/useContext.ts @@ -0,0 +1,45 @@ +import { + InjectionKey, + provide, + inject, + reactive, + readonly as defineReadonly, + // defineComponent, + UnwrapRef, +} from 'vue'; + +export interface CreateContextOptions { + readonly?: boolean; + createProvider?: boolean; + native?: boolean; +} + +type ShallowUnwrap = { + [P in keyof T]: UnwrapRef; +}; + +export function createContext( + context: any, + key: InjectionKey = Symbol(), + options: CreateContextOptions = {}, +) { + const { readonly = true, createProvider = false, native = false } = options; + + const state = reactive(context); + const provideData = readonly ? defineReadonly(state) : state; + !createProvider && provide(key, native ? context : provideData); + + return { + state, + }; +} + +export function useContext(key: InjectionKey, native?: boolean): T; +export function useContext(key: InjectionKey, defaultValue?: any, native?: boolean): T; + +export function useContext( + key: InjectionKey = Symbol(), + defaultValue?: any, +): ShallowUnwrap { + return inject(key, defaultValue || {}); +} diff --git a/src/hooks/core/useLockFn.ts b/src/hooks/core/useLockFn.ts new file mode 100644 index 0000000..0a8b3a7 --- /dev/null +++ b/src/hooks/core/useLockFn.ts @@ -0,0 +1,17 @@ +import { ref, unref } from 'vue'; + +export function useLockFn

(fn: (...args: P) => Promise) { + const lockRef = ref(false); + return async function (...args: P) { + if (unref(lockRef)) return; + lockRef.value = true; + try { + const ret = await fn(...args); + lockRef.value = false; + return ret; + } catch (e) { + lockRef.value = false; + throw e; + } + }; +} diff --git a/src/hooks/core/useRefs.ts b/src/hooks/core/useRefs.ts new file mode 100644 index 0000000..180bb14 --- /dev/null +++ b/src/hooks/core/useRefs.ts @@ -0,0 +1,16 @@ +import type { Ref } from 'vue'; +import { ref, onBeforeUpdate } from 'vue'; + +export function useRefs(): [Ref, (index: number) => (el: HTMLElement) => void] { + const refs = ref([]) as Ref; + + onBeforeUpdate(() => { + refs.value = []; + }); + + const setRefs = (index: number) => (el: HTMLElement) => { + refs.value[index] = el; + }; + + return [refs, setRefs]; +} diff --git a/src/hooks/core/useTimeout.ts b/src/hooks/core/useTimeout.ts new file mode 100644 index 0000000..9905c2b --- /dev/null +++ b/src/hooks/core/useTimeout.ts @@ -0,0 +1,45 @@ +import { ref, watch } from 'vue'; +import { tryOnUnmounted } from '@vueuse/core'; +import { isFunction } from '/@/utils/is'; + +export function useTimeoutFn(handle: Fn, wait: number, native = false) { + if (!isFunction(handle)) { + throw new Error('handle is not Function!'); + } + + const { readyRef, stop, start } = useTimeoutRef(wait); + if (native) { + handle(); + } else { + watch( + readyRef, + (maturity) => { + maturity && handle(); + }, + { immediate: false }, + ); + } + return { readyRef, stop, start }; +} + +export function useTimeoutRef(wait: number) { + const readyRef = ref(false); + + let timer: TimeoutHandle; + function stop(): void { + readyRef.value = false; + timer && window.clearTimeout(timer); + } + function start(): void { + stop(); + timer = setTimeout(() => { + readyRef.value = true; + }, wait); + } + + start(); + + tryOnUnmounted(stop); + + return { readyRef, stop, start }; +} diff --git a/src/hooks/event/useApiRequest.ts b/src/hooks/event/useApiRequest.ts new file mode 100644 index 0000000..33b78c0 --- /dev/null +++ b/src/hooks/event/useApiRequest.ts @@ -0,0 +1,45 @@ +import { httpRequest } from '/@/api/sys/api'; +import { getToken } from '/@/utils/auth'; + +export default function () { + async function changeApiOptions(val) { + if (val.path) { + try { + const headers = { Authorization: `Bearer ${getToken()}` }; + if (val.requestHeaderConfigs.length > 0) { + val.requestHeaderConfigs.forEach((element) => { + if (element.name) headers[element.name] = element.value; + }); + } + let path = val.path; + if (val.requestParamsConfigs.length > 0) { + path += '?'; + val.requestParamsConfigs.forEach((element) => { + if (element.name) path += `${element.name}=${element.value}&`; + }); + } + const apiData = {}; + if (val.requestBodyConfigs.length > 0) { + val.requestBodyConfigs.forEach((element) => { + if (element.name) apiData[element.name] = element.value; + }); + } + const res = await httpRequest( + { + requestUrl: path, + requestType: val.method, + }, + { + headers, + data: apiData, + }, + ); + + return res; + } catch (error) {} + } + } + return { + changeApiOptions, + }; +} diff --git a/src/hooks/event/useBreakpoint.ts b/src/hooks/event/useBreakpoint.ts new file mode 100644 index 0000000..01bbbec --- /dev/null +++ b/src/hooks/event/useBreakpoint.ts @@ -0,0 +1,89 @@ +import { ref, computed, ComputedRef, unref } from 'vue'; +import { useEventListener } from '/@/hooks/event/useEventListener'; +import { screenMap, sizeEnum, screenEnum } from '/@/enums/breakpointEnum'; + +let globalScreenRef: ComputedRef; +let globalWidthRef: ComputedRef; +let globalRealWidthRef: ComputedRef; + +export interface CreateCallbackParams { + screen: ComputedRef; + width: ComputedRef; + realWidth: ComputedRef; + screenEnum: typeof screenEnum; + screenMap: Map; + sizeEnum: typeof sizeEnum; +} + +export function useBreakpoint() { + return { + screenRef: computed(() => unref(globalScreenRef)), + widthRef: globalWidthRef, + screenEnum, + realWidthRef: globalRealWidthRef, + }; +} + +// Just call it once +export function createBreakpointListen(fn?: (opt: CreateCallbackParams) => void) { + const screenRef = ref(sizeEnum.XL); + const realWidthRef = ref(window.innerWidth); + + function getWindowWidth() { + const width = document.body.clientWidth; + const xs = screenMap.get(sizeEnum.XS)!; + const sm = screenMap.get(sizeEnum.SM)!; + const md = screenMap.get(sizeEnum.MD)!; + const lg = screenMap.get(sizeEnum.LG)!; + const xl = screenMap.get(sizeEnum.XL)!; + if (width < xs) { + screenRef.value = sizeEnum.XS; + } else if (width < sm) { + screenRef.value = sizeEnum.SM; + } else if (width < md) { + screenRef.value = sizeEnum.MD; + } else if (width < lg) { + screenRef.value = sizeEnum.LG; + } else if (width < xl) { + screenRef.value = sizeEnum.XL; + } else { + screenRef.value = sizeEnum.XXL; + } + realWidthRef.value = width; + } + + useEventListener({ + el: window, + name: 'resize', + + listener: () => { + getWindowWidth(); + resizeFn(); + }, + // wait: 100, + }); + + getWindowWidth(); + globalScreenRef = computed(() => unref(screenRef)); + globalWidthRef = computed((): number => screenMap.get(unref(screenRef)!)!); + globalRealWidthRef = computed((): number => unref(realWidthRef)); + + function resizeFn() { + fn?.({ + screen: globalScreenRef, + width: globalWidthRef, + realWidth: globalRealWidthRef, + screenEnum, + screenMap, + sizeEnum, + }); + } + + resizeFn(); + return { + screenRef: globalScreenRef, + screenEnum, + widthRef: globalWidthRef, + realWidthRef: globalRealWidthRef, + }; +} diff --git a/src/hooks/event/useEventListener.ts b/src/hooks/event/useEventListener.ts new file mode 100644 index 0000000..892cd92 --- /dev/null +++ b/src/hooks/event/useEventListener.ts @@ -0,0 +1,58 @@ +import type { Ref } from 'vue'; +import { ref, watch, unref } from 'vue'; +import { useThrottleFn, useDebounceFn } from '@vueuse/core'; + +export type RemoveEventFn = () => void; +export interface UseEventParams { + el?: Element | Ref | Window | any; + name: string; + listener: EventListener; + options?: boolean | AddEventListenerOptions; + autoRemove?: boolean; + isDebounce?: boolean; + wait?: number; +} +export function useEventListener({ + el = window, + name, + listener, + options, + autoRemove = true, + isDebounce = true, + wait = 80, +}: UseEventParams): { removeEvent: RemoveEventFn } { + /* eslint-disable-next-line */ + let remove: RemoveEventFn = () => {}; + const isAddRef = ref(false); + + if (el) { + const element = ref(el as Element) as Ref; + + const handler = isDebounce ? useDebounceFn(listener, wait) : useThrottleFn(listener, wait); + const realHandler = wait ? handler : listener; + const removeEventListener = (e: Element) => { + isAddRef.value = true; + e.removeEventListener(name, realHandler, options); + }; + const addEventListener = (e: Element) => e.addEventListener(name, realHandler, options); + + const removeWatch = watch( + element, + (v, _ov, cleanUp) => { + if (v) { + !unref(isAddRef) && addEventListener(v); + cleanUp(() => { + autoRemove && removeEventListener(v); + }); + } + }, + { immediate: true }, + ); + + remove = () => { + removeEventListener(element.value); + removeWatch(); + }; + } + return { removeEvent: remove }; +} diff --git a/src/hooks/event/useIntersectionObserver.ts b/src/hooks/event/useIntersectionObserver.ts new file mode 100644 index 0000000..b9badca --- /dev/null +++ b/src/hooks/event/useIntersectionObserver.ts @@ -0,0 +1,48 @@ +import { Ref, watchEffect, ref } from 'vue'; + +interface IntersectionObserverProps { + target: Ref; + root?: Ref; + onIntersect: IntersectionObserverCallback; + rootMargin?: string; + threshold?: number; +} + +export function useIntersectionObserver({ + target, + root, + onIntersect, + rootMargin = '0px', + threshold = 0.1, +}: IntersectionObserverProps) { + let cleanup = () => {}; + const observer: Ref> = ref(null); + const stopEffect = watchEffect(() => { + cleanup(); + + observer.value = new IntersectionObserver(onIntersect, { + root: root ? root.value : null, + rootMargin, + threshold, + }); + + const current = target.value; + + current && observer.value.observe(current); + + cleanup = () => { + if (observer.value) { + observer.value.disconnect(); + target.value && observer.value.unobserve(target.value); + } + }; + }); + + return { + observer, + stop: () => { + cleanup(); + stopEffect(); + }, + }; +} diff --git a/src/hooks/event/useScroll.ts b/src/hooks/event/useScroll.ts new file mode 100644 index 0000000..cc60f9b --- /dev/null +++ b/src/hooks/event/useScroll.ts @@ -0,0 +1,65 @@ +import type { Ref } from 'vue'; + +import { ref, onMounted, watch, onUnmounted } from 'vue'; +import { isWindow, isObject } from '/@/utils/is'; +import { useThrottleFn } from '@vueuse/core'; + +export function useScroll( + refEl: Ref, + options?: { + wait?: number; + leading?: boolean; + trailing?: boolean; + }, +) { + const refX = ref(0); + const refY = ref(0); + let handler = () => { + if (isWindow(refEl.value)) { + refX.value = refEl.value.scrollX; + refY.value = refEl.value.scrollY; + } else if (refEl.value) { + refX.value = (refEl.value as Element).scrollLeft; + refY.value = (refEl.value as Element).scrollTop; + } + }; + + if (isObject(options)) { + let wait = 0; + if (options.wait && options.wait > 0) { + wait = options.wait; + Reflect.deleteProperty(options, 'wait'); + } + + handler = useThrottleFn(handler, wait); + } + + let stopWatch: () => void; + onMounted(() => { + stopWatch = watch( + refEl, + (el, prevEl, onCleanup) => { + if (el) { + el.addEventListener('scroll', handler); + } else if (prevEl) { + prevEl.removeEventListener('scroll', handler); + } + onCleanup(() => { + refX.value = refY.value = 0; + el && el.removeEventListener('scroll', handler); + }); + }, + { immediate: true }, + ); + }); + + onUnmounted(() => { + refEl.value && refEl.value.removeEventListener('scroll', handler); + }); + + function stop() { + stopWatch && stopWatch(); + } + + return { refX, refY, stop }; +} diff --git a/src/hooks/event/useScrollTo.ts b/src/hooks/event/useScrollTo.ts new file mode 100644 index 0000000..f6d5dc6 --- /dev/null +++ b/src/hooks/event/useScrollTo.ts @@ -0,0 +1,59 @@ +import { isFunction, isUnDef } from '/@/utils/is'; +import { ref, unref } from 'vue'; + +export interface ScrollToParams { + el: any; + to: number; + duration?: number; + callback?: () => any; +} + +const easeInOutQuad = (t: number, b: number, c: number, d: number) => { + t /= d / 2; + if (t < 1) { + return (c / 2) * t * t + b; + } + t--; + return (-c / 2) * (t * (t - 2) - 1) + b; +}; +const move = (el: HTMLElement, amount: number) => { + el.scrollTop = amount; +}; + +const position = (el: HTMLElement) => { + return el.scrollTop; +}; +export function useScrollTo({ el, to, duration = 500, callback }: ScrollToParams) { + const isActiveRef = ref(false); + const start = position(el); + const change = to - start; + const increment = 20; + let currentTime = 0; + duration = isUnDef(duration) ? 500 : duration; + + const animateScroll = function () { + if (!unref(isActiveRef)) { + return; + } + currentTime += increment; + const val = easeInOutQuad(currentTime, start, change, duration); + move(el, val); + if (currentTime < duration && unref(isActiveRef)) { + requestAnimationFrame(animateScroll); + } else { + if (callback && isFunction(callback)) { + callback(); + } + } + }; + const run = () => { + isActiveRef.value = true; + animateScroll(); + }; + + const stop = () => { + isActiveRef.value = false; + }; + + return { start: run, stop }; +} diff --git a/src/hooks/event/useWindowSizeFn.ts b/src/hooks/event/useWindowSizeFn.ts new file mode 100644 index 0000000..01cdc75 --- /dev/null +++ b/src/hooks/event/useWindowSizeFn.ts @@ -0,0 +1,35 @@ +import { tryOnMounted, tryOnUnmounted, useDebounceFn } from '@vueuse/core'; + +interface WindowSizeOptions { + once?: boolean; + immediate?: boolean; + listenerOptions?: AddEventListenerOptions | boolean; +} + +export function useWindowSizeFn(fn: Fn, wait = 150, options?: WindowSizeOptions) { + let handler = () => { + fn(); + }; + const handleSize = useDebounceFn(handler, wait); + handler = handleSize; + + const start = () => { + if (options && options.immediate) { + handler(); + } + window.addEventListener('resize', handler); + }; + + const stop = () => { + window.removeEventListener('resize', handler); + }; + + tryOnMounted(() => { + start(); + }); + + tryOnUnmounted(() => { + stop(); + }); + return [start, stop]; +} diff --git a/src/hooks/setting/index.ts b/src/hooks/setting/index.ts new file mode 100644 index 0000000..56394df --- /dev/null +++ b/src/hooks/setting/index.ts @@ -0,0 +1,36 @@ +import type { GlobConfig } from '/#/config'; + +import { warn } from '/@/utils/log'; +import { getAppEnvConfig } from '/@/utils/env'; + +export const useGlobSetting = (): Readonly => { + const { + VITE_GLOB_APP_TITLE, + VITE_GLOB_API_URL, + VITE_GLOB_APP_SHORT_NAME, + VITE_GLOB_API_URL_PREFIX, + VITE_GLOB_UPLOAD_URL, + VITE_GLOB_OUT_LINK_URL, + VITE_GLOB_IM_LINK_URL, + VITE_GLOB_PRINT_BASE_URL, + } = getAppEnvConfig(); + + if (!/[a-zA-Z\_]*/.test(VITE_GLOB_APP_SHORT_NAME)) { + warn( + `VITE_GLOB_APP_SHORT_NAME Variables can only be characters/underscores, please modify in the environment variables and re-running.`, + ); + } + + // Take global configuration + const glob: Readonly = { + title: VITE_GLOB_APP_TITLE, + apiUrl: VITE_GLOB_API_URL, + shortName: VITE_GLOB_APP_SHORT_NAME, + urlPrefix: VITE_GLOB_API_URL_PREFIX, + uploadUrl: VITE_GLOB_UPLOAD_URL, + outLink: VITE_GLOB_OUT_LINK_URL, + imLink: VITE_GLOB_IM_LINK_URL, + printBaseUrl: VITE_GLOB_PRINT_BASE_URL, + }; + return glob as Readonly; +}; diff --git a/src/hooks/setting/useHeaderSetting.ts b/src/hooks/setting/useHeaderSetting.ts new file mode 100644 index 0000000..d590be8 --- /dev/null +++ b/src/hooks/setting/useHeaderSetting.ts @@ -0,0 +1,105 @@ +import type { HeaderSetting } from '/#/config'; + +import { computed, unref } from 'vue'; + +import { useAppStore } from '/@/store/modules/app'; + +import { useMenuSetting } from '/@/hooks/setting/useMenuSetting'; +import { useRootSetting } from '/@/hooks/setting/useRootSetting'; +import { useFullContent } from '/@/hooks/web/useFullContent'; +import { MenuModeEnum } from '/@/enums/menuEnum'; + +export function useHeaderSetting() { + const { getFullContent } = useFullContent(); + const appStore = useAppStore(); + + const getShowFullHeaderRef = computed(() => { + return ( + !unref(getFullContent) && + unref(getShowMixHeaderRef) && + unref(getShowHeader) && + !unref(getIsTopMenu) && + !unref(getIsMixSidebar) + ); + }); + + const getUnFixedAndFull = computed(() => !unref(getFixed) && !unref(getShowFullHeaderRef)); + + const getShowInsetHeaderRef = computed(() => { + const need = !unref(getFullContent) && unref(getShowHeader); + return ( + (need && !unref(getShowMixHeaderRef)) || + (need && unref(getIsTopMenu)) || + (need && unref(getIsMixSidebar)) + ); + }); + + const { + getMenuMode, + getSplit, + getShowHeaderTrigger, + getIsSidebarType, + getIsMixSidebar, + getIsTopMenu, + } = useMenuSetting(); + const { getShowBreadCrumb, getShowLogo } = useRootSetting(); + + const getShowMixHeaderRef = computed(() => !unref(getIsSidebarType) && unref(getShowHeader)); + + const getShowDoc = computed(() => appStore.getHeaderSetting.showDoc); + + const getHeaderTheme = computed(() => appStore.getHeaderSetting.theme); + + const getShowHeader = computed(() => appStore.getHeaderSetting.show); + + const getFixed = computed(() => appStore.getHeaderSetting.fixed); + + const getHeaderBgColor = computed(() => appStore.getHeaderSetting.bgColor); + + const getShowSearch = computed(() => appStore.getHeaderSetting.showSearch); + + const getUseLockPage = computed(() => appStore.getHeaderSetting.useLockPage); + + const getShowFullScreen = computed(() => appStore.getHeaderSetting.showFullScreen); + + const getShowNotice = computed(() => appStore.getHeaderSetting.showNotice); + + const getShowBread = computed(() => { + return ( + unref(getMenuMode) !== MenuModeEnum.HORIZONTAL && unref(getShowBreadCrumb) && !unref(getSplit) + ); + }); + + const getShowHeaderLogo = computed(() => { + return unref(getShowLogo) && !unref(getIsSidebarType) && !unref(getIsMixSidebar); + }); + + const getShowContent = computed(() => { + return unref(getShowBread) || unref(getShowHeaderTrigger); + }); + + // Set header configuration + function setHeaderSetting(headerSetting: Partial) { + appStore.setProjectConfig({ headerSetting }); + } + return { + setHeaderSetting, + + getShowDoc, + getShowSearch, + getHeaderTheme, + getUseLockPage, + getShowFullScreen, + getShowNotice, + getShowBread, + getShowContent, + getShowHeaderLogo, + getShowHeader, + getFixed, + getShowMixHeaderRef, + getShowFullHeaderRef, + getShowInsetHeaderRef, + getUnFixedAndFull, + getHeaderBgColor, + }; +} diff --git a/src/hooks/setting/useMenuSetting.ts b/src/hooks/setting/useMenuSetting.ts new file mode 100644 index 0000000..45f6587 --- /dev/null +++ b/src/hooks/setting/useMenuSetting.ts @@ -0,0 +1,166 @@ +import type { MenuSetting } from '/#/config'; + +import { computed, unref, ref } from 'vue'; + +import { useAppStore } from '/@/store/modules/app'; + +import { SIDE_BAR_MINI_WIDTH, SIDE_BAR_SHOW_TIT_MINI_WIDTH } from '/@/enums/appEnum'; +import { MenuModeEnum, MenuTypeEnum, TriggerEnum } from '/@/enums/menuEnum'; +import { useFullContent } from '/@/hooks/web/useFullContent'; + +const mixSideHasChildren = ref(false); + +export function useMenuSetting() { + const { getFullContent: fullContent } = useFullContent(); + const appStore = useAppStore(); + + const getShowSidebar = computed(() => { + return ( + unref(getSplit) || + (unref(getShowMenu) && unref(getMenuMode) !== MenuModeEnum.HORIZONTAL && !unref(fullContent)) + ); + }); + + const getCollapsed = computed(() => appStore.getMenuSetting.collapsed); + + const getMenuType = computed(() => appStore.getMenuSetting.type); + + const getMenuMode = computed(() => appStore.getMenuSetting.mode); + + const getMenuFixed = computed(() => appStore.getMenuSetting.fixed); + + const getShowMenu = computed(() => appStore.getMenuSetting.show); + + const getMenuHidden = computed(() => appStore.getMenuSetting.hidden); + + const getMenuWidth = computed(() => appStore.getMenuSetting.menuWidth); + + const getTrigger = computed(() => appStore.getMenuSetting.trigger); + + const getMenuTheme = computed(() => appStore.getMenuSetting.theme); + + const getSplit = computed(() => appStore.getMenuSetting.split); + + const getMenuBgColor = computed(() => appStore.getMenuSetting.bgColor); + + const getMixSideTrigger = computed(() => appStore.getMenuSetting.mixSideTrigger); + + const getCanDrag = computed(() => appStore.getMenuSetting.canDrag); + + const getAccordion = computed(() => appStore.getMenuSetting.accordion); + + const getMixSideFixed = computed(() => appStore.getMenuSetting.mixSideFixed); + + const getTopMenuAlign = computed(() => appStore.getMenuSetting.topMenuAlign); + + const getCloseMixSidebarOnChange = computed( + () => appStore.getMenuSetting.closeMixSidebarOnChange, + ); + + const getIsSidebarType = computed(() => unref(getMenuType) === MenuTypeEnum.SIDEBAR); + + const getIsTopMenu = computed(() => unref(getMenuType) === MenuTypeEnum.TOP_MENU); + + const getCollapsedShowTitle = computed(() => appStore.getMenuSetting.collapsedShowTitle); + + const getShowTopMenu = computed(() => { + return unref(getMenuMode) === MenuModeEnum.HORIZONTAL || unref(getSplit); + }); + + const getShowHeaderTrigger = computed(() => { + if ( + unref(getMenuType) === MenuTypeEnum.TOP_MENU || + !unref(getShowMenu) || + unref(getMenuHidden) + ) { + return false; + } + + return unref(getTrigger) === TriggerEnum.HEADER; + }); + + const getIsHorizontal = computed(() => { + return unref(getMenuMode) === MenuModeEnum.HORIZONTAL; + }); + + const getIsMixSidebar = computed(() => { + return unref(getMenuType) === MenuTypeEnum.MIX_SIDEBAR; + }); + + const getIsMixMode = computed(() => { + return unref(getMenuMode) === MenuModeEnum.INLINE && unref(getMenuType) === MenuTypeEnum.MIX; + }); + + const getRealWidth = computed(() => { + if (unref(getIsMixSidebar)) { + return unref(getCollapsed) && !unref(getMixSideFixed) + ? unref(getMiniWidthNumber) + : unref(getMenuWidth); + } + return unref(getCollapsed) ? unref(getMiniWidthNumber) + 10 : unref(getMenuWidth) + 10; + }); + + const getMiniWidthNumber = computed(() => { + const { collapsedShowTitle } = appStore.getMenuSetting; + return collapsedShowTitle ? SIDE_BAR_SHOW_TIT_MINI_WIDTH : SIDE_BAR_MINI_WIDTH; + }); + + const getCalcContentWidth = computed(() => { + const width = + unref(getIsTopMenu) || !unref(getShowMenu) || (unref(getSplit) && unref(getMenuHidden)) + ? 0 + : unref(getIsMixSidebar) + ? (unref(getCollapsed) ? SIDE_BAR_MINI_WIDTH : SIDE_BAR_SHOW_TIT_MINI_WIDTH) + + (unref(getMixSideFixed) && unref(mixSideHasChildren) ? unref(getRealWidth) : 0) + : unref(getRealWidth) + 10; + + return `calc(100% - ${unref(width)}px)`; + }); + + // Set menu configuration + function setMenuSetting(menuSetting: Partial): void { + appStore.setProjectConfig({ menuSetting }); + } + + function toggleCollapsed() { + setMenuSetting({ + collapsed: !unref(getCollapsed), + }); + } + return { + setMenuSetting, + + toggleCollapsed, + + getMenuFixed, + getRealWidth, + getMenuType, + getMenuMode, + getShowMenu, + getCollapsed, + getMiniWidthNumber, + getCalcContentWidth, + getMenuWidth, + getTrigger, + getSplit, + getMenuTheme, + getCanDrag, + getCollapsedShowTitle, + getIsHorizontal, + getIsSidebarType, + getAccordion, + getShowTopMenu, + getShowHeaderTrigger, + getTopMenuAlign, + getMenuHidden, + getIsTopMenu, + getMenuBgColor, + getShowSidebar, + getIsMixMode, + getIsMixSidebar, + getCloseMixSidebarOnChange, + getMixSideTrigger, + getMixSideFixed, + mixSideHasChildren, + }; +} diff --git a/src/hooks/setting/useMultipleTabSetting.ts b/src/hooks/setting/useMultipleTabSetting.ts new file mode 100644 index 0000000..7caa753 --- /dev/null +++ b/src/hooks/setting/useMultipleTabSetting.ts @@ -0,0 +1,28 @@ +import type { MultiTabsSetting } from '/#/config'; + +import { computed } from 'vue'; + +import { useAppStore } from '/@/store/modules/app'; + +export function useMultipleTabSetting() { + const appStore = useAppStore(); + + const getShowMultipleTab = computed(() => appStore.getMultiTabsSetting.show); + + const getShowQuick = computed(() => appStore.getMultiTabsSetting.showQuick); + + const getShowRedo = computed(() => appStore.getMultiTabsSetting.showRedo); + + const getShowFold = computed(() => appStore.getMultiTabsSetting.showFold); + + function setMultipleTabSetting(multiTabsSetting: Partial) { + appStore.setProjectConfig({ multiTabsSetting }); + } + return { + setMultipleTabSetting, + getShowMultipleTab, + getShowQuick, + getShowRedo, + getShowFold, + }; +} diff --git a/src/hooks/setting/useRootSetting.ts b/src/hooks/setting/useRootSetting.ts new file mode 100644 index 0000000..4976e40 --- /dev/null +++ b/src/hooks/setting/useRootSetting.ts @@ -0,0 +1,95 @@ +import type { ProjectConfig } from '/#/config'; + +import { computed } from 'vue'; + +import { useAppStore } from '/@/store/modules/app'; +import { ContentEnum, ThemeEnum } from '/@/enums/appEnum'; + +type RootSetting = Omit< + ProjectConfig, + 'locale' | 'headerSetting' | 'menuSetting' | 'multiTabsSetting' +>; + +export function useRootSetting() { + const appStore = useAppStore(); + + const getPageLoading = computed(() => appStore.getPageLoading); + + const getOpenKeepAlive = computed(() => appStore.getProjectConfig.openKeepAlive); + + const getSettingButtonPosition = computed(() => appStore.getProjectConfig.settingButtonPosition); + + const getCanEmbedIFramePage = computed(() => appStore.getProjectConfig.canEmbedIFramePage); + + const getPermissionMode = computed(() => appStore.getProjectConfig.permissionMode); + + const getShowLogo = computed(() => appStore.getProjectConfig.showLogo); + + const getContentMode = computed(() => appStore.getProjectConfig.contentMode); + + const getUseOpenBackTop = computed(() => appStore.getProjectConfig.useOpenBackTop); + + const getShowSettingButton = computed(() => appStore.getProjectConfig.showSettingButton); + + const getUseErrorHandle = computed(() => appStore.getProjectConfig.useErrorHandle); + + const getShowFooter = computed(() => appStore.getProjectConfig.showFooter); + + const getShowBreadCrumb = computed(() => appStore.getProjectConfig.showBreadCrumb); + + const getThemeColor = computed(() => appStore.getProjectConfig.themeColor); + + const getShowBreadCrumbIcon = computed(() => appStore.getProjectConfig.showBreadCrumbIcon); + + const getFullContent = computed(() => appStore.getProjectConfig.fullContent); + + const getColorWeak = computed(() => appStore.getProjectConfig.colorWeak); + + const getGrayMode = computed(() => appStore.getProjectConfig.grayMode); + + const getLockTime = computed(() => appStore.getProjectConfig.lockTime); + + const getShowDarkModeToggle = computed(() => appStore.getProjectConfig.showDarkModeToggle); + + const getDarkMode = computed(() => appStore.getDarkMode); + + const getLayoutContentMode = computed(() => + appStore.getProjectConfig.contentMode === ContentEnum.FULL + ? ContentEnum.FULL + : ContentEnum.FIXED, + ); + + function setRootSetting(setting: Partial) { + appStore.setProjectConfig(setting); + } + + function setDarkMode(mode: ThemeEnum) { + appStore.setDarkMode(mode); + } + return { + setRootSetting, + + getSettingButtonPosition, + getFullContent, + getColorWeak, + getGrayMode, + getLayoutContentMode, + getPageLoading, + getOpenKeepAlive, + getCanEmbedIFramePage, + getPermissionMode, + getShowLogo, + getUseErrorHandle, + getShowBreadCrumb, + getShowBreadCrumbIcon, + getUseOpenBackTop, + getShowSettingButton, + getShowFooter, + getContentMode, + getLockTime, + getThemeColor, + getDarkMode, + setDarkMode, + getShowDarkModeToggle, + }; +} diff --git a/src/hooks/setting/useTransitionSetting.ts b/src/hooks/setting/useTransitionSetting.ts new file mode 100644 index 0000000..b6d421a --- /dev/null +++ b/src/hooks/setting/useTransitionSetting.ts @@ -0,0 +1,31 @@ +import type { TransitionSetting } from '/#/config'; + +import { computed } from 'vue'; + +import { useAppStore } from '/@/store/modules/app'; + +export function useTransitionSetting() { + const appStore = useAppStore(); + + const getEnableTransition = computed(() => appStore.getTransitionSetting?.enable); + + const getOpenNProgress = computed(() => appStore.getTransitionSetting?.openNProgress); + + const getOpenPageLoading = computed((): boolean => { + return !!appStore.getTransitionSetting?.openPageLoading; + }); + + const getBasicTransition = computed(() => appStore.getTransitionSetting?.basicTransition); + + function setTransitionSetting(transitionSetting: Partial) { + appStore.setProjectConfig({ transitionSetting }); + } + return { + setTransitionSetting, + + getEnableTransition, + getOpenNProgress, + getOpenPageLoading, + getBasicTransition, + }; +} diff --git a/src/hooks/setting/userTableScrollHeight.ts b/src/hooks/setting/userTableScrollHeight.ts new file mode 100644 index 0000000..a2f0136 --- /dev/null +++ b/src/hooks/setting/userTableScrollHeight.ts @@ -0,0 +1,26 @@ +import { reactive, nextTick } from 'vue'; +export default function () { + const tableOptions: { + scrollHeight: number; + } = reactive({ + scrollHeight: 600, + }); + async function scrollHeight() { + await nextTick(); + const conTable = document.getElementsByClassName('vben-layout-content'); + if (conTable && conTable.length > 0 && conTable[0]) { + const searchTable = document.getElementsByClassName('search'); + if (searchTable && searchTable.length > 0 && searchTable[0]) { + tableOptions.scrollHeight = conTable[0].clientHeight - 220 - searchTable[0].clientHeight; + } else { + tableOptions.scrollHeight = conTable[0].clientHeight - 180; + } + } else { + tableOptions.scrollHeight = 400; + } + } + return { + tableOptions, + scrollHeight, + }; +} diff --git a/src/hooks/web/useCopyToClipboard.ts b/src/hooks/web/useCopyToClipboard.ts new file mode 100644 index 0000000..69abf26 --- /dev/null +++ b/src/hooks/web/useCopyToClipboard.ts @@ -0,0 +1,69 @@ +import { ref, watch } from 'vue'; + +import { isDef } from '/@/utils/is'; +interface Options { + target?: HTMLElement; +} +export function useCopyToClipboard(initial?: string) { + const clipboardRef = ref(initial || ''); + const isSuccessRef = ref(false); + const copiedRef = ref(false); + + watch( + clipboardRef, + (str?: string) => { + if (isDef(str)) { + copiedRef.value = true; + isSuccessRef.value = copyTextToClipboard(str); + } + }, + { immediate: !!initial, flush: 'sync' }, + ); + + return { clipboardRef, isSuccessRef, copiedRef }; +} + +export function copyTextToClipboard(input: string, { target = document.body }: Options = {}) { + const element = document.createElement('textarea'); + const previouslyFocusedElement = document.activeElement; + + element.value = input; + + element.setAttribute('readonly', ''); + + (element.style as any).contain = 'strict'; + element.style.position = 'absolute'; + element.style.left = '-9999px'; + element.style.fontSize = '12pt'; + + const selection = document.getSelection(); + let originalRange; + if (selection && selection.rangeCount > 0) { + originalRange = selection.getRangeAt(0); + } + + target.append(element); + element.select(); + + element.selectionStart = 0; + element.selectionEnd = input.length; + + let isSuccess = false; + try { + isSuccess = document.execCommand('copy'); + } catch (e: any) { + throw new Error(e); + } + + element.remove(); + + if (originalRange && selection) { + selection.removeAllRanges(); + selection.addRange(originalRange); + } + + if (previouslyFocusedElement) { + (previouslyFocusedElement as HTMLElement).focus(); + } + return isSuccess; +} diff --git a/src/hooks/web/useFullContent.ts b/src/hooks/web/useFullContent.ts new file mode 100644 index 0000000..7dea077 --- /dev/null +++ b/src/hooks/web/useFullContent.ts @@ -0,0 +1,28 @@ +import { computed, unref } from 'vue'; + +import { useAppStore } from '/@/store/modules/app'; + +import { useRouter } from 'vue-router'; + +/** + * @description: Full screen display content + */ +export const useFullContent = () => { + const appStore = useAppStore(); + const router = useRouter(); + const { currentRoute } = router; + + // Whether to display the content in full screen without displaying the menu + const getFullContent = computed(() => { + // Query parameters, the full screen is displayed when the address bar has a full parameter + const route = unref(currentRoute); + const query = route.query; + if (query && Reflect.has(query, '__full__')) { + return true; + } + // Return to the configuration in the configuration file + return appStore.getProjectConfig.fullContent; + }); + + return { getFullContent }; +}; diff --git a/src/hooks/web/useI18n.ts b/src/hooks/web/useI18n.ts new file mode 100644 index 0000000..8012299 --- /dev/null +++ b/src/hooks/web/useI18n.ts @@ -0,0 +1,56 @@ +import { i18n } from '/@/locales/setupI18n'; + +type I18nGlobalTranslation = { + (key: string): string; + (key: string, locale: string): string; + (key: string, locale: string, list: unknown[]): string; + (key: string, locale: string, named: Record): string; + (key: string, list: unknown[]): string; + (key: string, named: Record): string; +}; + +type I18nTranslationRestParameters = [string, any]; + +function getKey(namespace: string | undefined, key: string) { + if (!namespace) { + return key; + } + if (key.startsWith(namespace)) { + return key; + } + return `${namespace}.${key}`; +} + +export function useI18n(namespace?: string): { + t: I18nGlobalTranslation; +} { + const normalFn = { + t: (key: string) => { + return getKey(namespace, key); + }, + }; + + if (!i18n) { + return normalFn; + } + + const { t, ...methods } = i18n.global; + + const tFn: I18nGlobalTranslation = (key: string, ...arg: any[]) => { + if (!key) return ''; + //TODO 后端获取翻译 注释下一行代码 + // if (!key.includes('.') && !namespace) return key; + return t(getKey(namespace, key), ...(arg as I18nTranslationRestParameters)); + }; + return { + ...methods, + t: tFn, + }; +} + +// Why write this function? +// Mainly to configure the vscode i18nn ally plugin. This function is only used for routing and menus. Please use useI18n for other places + +// 为什么要编写此函数? +// 主要用于配合vscode i18nn ally插件。此功能仅用于路由和菜单。请在其他地方使用useI18n +export const t = (key: string) => key; diff --git a/src/hooks/web/useLockPage.ts b/src/hooks/web/useLockPage.ts new file mode 100644 index 0000000..c543be9 --- /dev/null +++ b/src/hooks/web/useLockPage.ts @@ -0,0 +1,72 @@ +import { computed, onUnmounted, unref, watchEffect } from 'vue'; +import { useThrottleFn } from '@vueuse/core'; + +import { useAppStore } from '/@/store/modules/app'; +import { useLockStore } from '/@/store/modules/lock'; + +import { useUserStore } from '/@/store/modules/user'; +import { useRootSetting } from '../setting/useRootSetting'; + +export function useLockPage() { + const { getLockTime } = useRootSetting(); + const lockStore = useLockStore(); + const userStore = useUserStore(); + const appStore = useAppStore(); + + let timeId: TimeoutHandle; + + function clear(): void { + window.clearTimeout(timeId); + } + + function resetCalcLockTimeout(): void { + // not login + if (!userStore.getToken) { + clear(); + return; + } + const lockTime = appStore.getProjectConfig.lockTime; + if (!lockTime || lockTime < 1) { + clear(); + return; + } + clear(); + + timeId = setTimeout(() => { + lockPage(); + }, lockTime * 60 * 1000); + } + + function lockPage(): void { + lockStore.setLockInfo({ + isLock: true, + pwd: undefined, + }); + } + + watchEffect((onClean) => { + if (userStore.getToken) { + resetCalcLockTimeout(); + } else { + clear(); + } + onClean(() => { + clear(); + }); + }); + + onUnmounted(() => { + clear(); + }); + + const keyupFn = useThrottleFn(resetCalcLockTimeout, 2000); + + return computed(() => { + if (unref(getLockTime)) { + return { onKeyup: keyupFn, onMousemove: keyupFn }; + } else { + clear(); + return {}; + } + }); +} diff --git a/src/hooks/web/useMessage.tsx b/src/hooks/web/useMessage.tsx new file mode 100644 index 0000000..2b28286 --- /dev/null +++ b/src/hooks/web/useMessage.tsx @@ -0,0 +1,128 @@ +import type { ModalFunc, ModalFuncProps } from 'ant-design-vue/lib/modal/Modal'; + +import { Modal, message as Message, notification } from 'ant-design-vue'; +import { InfoCircleFilled, CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons-vue'; + +import { NotificationArgsProps, ConfigProps } from 'ant-design-vue/lib/notification'; +import { useI18n } from './useI18n'; +import { isString } from '/@/utils/is'; + +export interface NotifyApi { + info(config: NotificationArgsProps): void; + success(config: NotificationArgsProps): void; + error(config: NotificationArgsProps): void; + warn(config: NotificationArgsProps): void; + warning(config: NotificationArgsProps): void; + open(args: NotificationArgsProps): void; + close(key: String): void; + config(options: ConfigProps): void; + destroy(): void; +} + +export declare type NotificationPlacement = + | 'topLeft' + | 'topRight' + | 'bottomLeft' + | 'bottomRight' + | 'center'; +export declare type IconType = 'success' | 'info' | 'error' | 'warning'; +export interface ModalOptionsEx extends Omit { + iconType: 'warning' | 'success' | 'error' | 'info'; +} +export type ModalOptionsPartial = Partial & Pick; + +interface ConfirmOptions { + info: ModalFunc; + success: ModalFunc; + error: ModalFunc; + warn: ModalFunc; + warning: ModalFunc; +} + +function getIcon(iconType: string) { + if (iconType === 'warning') { + return ; + } else if (iconType === 'success') { + return ; + } else if (iconType === 'info') { + return ; + } else { + return ; + } +} + +function renderContent({ content }: Pick) { + if (isString(content)) { + return

${content as string}
`}>; + } else { + return content; + } +} + +/** + * @description: Create confirmation box + */ +function createConfirm(options: ModalOptionsEx): ConfirmOptions { + const iconType = options.iconType || 'warning'; + Reflect.deleteProperty(options, 'iconType'); + const opt: ModalFuncProps = { + centered: true, + icon: getIcon(iconType), + ...options, + content: renderContent(options), + }; + return Modal.confirm(opt) as unknown as ConfirmOptions; +} + +const getBaseOptions = () => { + const { t } = useI18n(); + return { + okText: t('确认'), + centered: true, + }; +}; + +function createModalOptions(options: ModalOptionsPartial, icon: string): ModalOptionsPartial { + return { + ...getBaseOptions(), + ...options, + content: renderContent(options), + icon: getIcon(icon), + }; +} + +function createSuccessModal(options: ModalOptionsPartial) { + return Modal.success(createModalOptions(options, 'success')); +} + +function createErrorModal(options: ModalOptionsPartial) { + return Modal.error(createModalOptions(options, 'close')); +} + +function createInfoModal(options: ModalOptionsPartial) { + return Modal.info(createModalOptions(options, 'info')); +} + +function createWarningModal(options: ModalOptionsPartial) { + return Modal.warning(createModalOptions(options, 'warning')); +} + +notification.config({ + placement: 'center', + duration: 3, +}); + +/** + * @description: message + */ +export function useMessage() { + return { + createMessage: Message, + notification: notification as NotifyApi, + createConfirm: createConfirm, + createSuccessModal, + createErrorModal, + createInfoModal, + createWarningModal, + }; +} diff --git a/src/hooks/web/usePage.ts b/src/hooks/web/usePage.ts new file mode 100644 index 0000000..3154217 --- /dev/null +++ b/src/hooks/web/usePage.ts @@ -0,0 +1,62 @@ +import type { RouteLocationRaw, Router } from 'vue-router'; + +import { PageEnum } from '/@/enums/pageEnum'; +import { isString } from '/@/utils/is'; +import { unref } from 'vue'; + +import { useRouter } from 'vue-router'; +import { REDIRECT_NAME } from '/@/router/constant'; + +export type RouteLocationRawEx = Omit & { path: PageEnum }; + +function handleError(e: Error) { + console.error(e); +} + +// page switch +export function useGo(_router?: Router) { + let router; + if (!_router) { + router = useRouter(); + } + const { push, replace } = _router || router; + function go(opt: PageEnum | RouteLocationRawEx | string = PageEnum.BASE_HOME, isReplace = false) { + if (!opt) { + return; + } + + if (isString(opt)) { + isReplace ? replace(opt).catch(handleError) : push(opt).catch(handleError); + } else { + const o = opt as RouteLocationRaw; + + isReplace ? replace(o).catch(handleError) : push(o).catch(handleError); + } + } + return go; +} + +/** + * @description: redo current page + */ +export const useRedo = (_router?: Router) => { + const { push, currentRoute } = _router || useRouter(); + const { query, params = {}, name, fullPath } = unref(currentRoute.value); + function redo(): Promise { + return new Promise((resolve) => { + if (name === REDIRECT_NAME) { + resolve(false); + return; + } + if (name && Object.keys(params).length > 0) { + params['_redirect_type'] = 'name'; + params['path'] = String(name); + } else { + params['_redirect_type'] = 'path'; + params['path'] = fullPath; + } + push({ name: REDIRECT_NAME, params, query }).then(() => resolve(true)); + }); + } + return redo; +}; diff --git a/src/hooks/web/usePagination.ts b/src/hooks/web/usePagination.ts new file mode 100644 index 0000000..1e19913 --- /dev/null +++ b/src/hooks/web/usePagination.ts @@ -0,0 +1,34 @@ +import type { Ref } from 'vue'; +import { ref, unref, computed } from 'vue'; + +function pagination(list: T[], pageNo: number, pageSize: number): T[] { + const offset = (pageNo - 1) * Number(pageSize); + const ret = + offset + Number(pageSize) >= list.length + ? list.slice(offset, list.length) + : list.slice(offset, offset + Number(pageSize)); + return ret; +} + +export function usePagination(list: Ref, pageSize: number) { + const currentPage = ref(1); + const pageSizeRef = ref(pageSize); + + const getPaginationList = computed(() => { + return pagination(unref(list), unref(currentPage), unref(pageSizeRef)); + }); + + const getTotal = computed(() => { + return unref(list).length; + }); + + function setCurrentPage(page: number) { + currentPage.value = page; + } + + function setPageSize(pageSize: number) { + pageSizeRef.value = pageSize; + } + + return { setCurrentPage, getTotal, setPageSize, getPaginationList }; +} diff --git a/src/hooks/web/useScript.ts b/src/hooks/web/useScript.ts new file mode 100644 index 0000000..9707116 --- /dev/null +++ b/src/hooks/web/useScript.ts @@ -0,0 +1,46 @@ +import { onMounted, onUnmounted, ref } from 'vue'; + +interface ScriptOptions { + src: string; +} + +export function useScript(opts: ScriptOptions) { + const isLoading = ref(false); + const error = ref(false); + const success = ref(false); + let script: HTMLScriptElement; + + const promise = new Promise((resolve, reject) => { + onMounted(() => { + script = document.createElement('script'); + script.type = 'text/javascript'; + script.onload = function () { + isLoading.value = false; + success.value = true; + error.value = false; + resolve(''); + }; + + script.onerror = function (err) { + isLoading.value = false; + success.value = false; + error.value = true; + reject(err); + }; + + script.src = opts.src; + document.head.appendChild(script); + }); + }); + + onUnmounted(() => { + script && script.remove(); + }); + + return { + isLoading, + error, + success, + toPromise: () => promise, + }; +} diff --git a/src/hooks/web/useSortable.ts b/src/hooks/web/useSortable.ts new file mode 100644 index 0000000..4c66b6a --- /dev/null +++ b/src/hooks/web/useSortable.ts @@ -0,0 +1,21 @@ +import { nextTick, unref } from 'vue'; +import type { Ref } from 'vue'; +import type { Options } from 'sortablejs'; + +export function useSortable(el: HTMLElement | Ref, options?: Options) { + function initSortable() { + nextTick(async () => { + if (!el) return; + + const Sortable = (await import('sortablejs')).default; + Sortable.create(unref(el), { + animation: 500, + delay: 400, + delayOnTouchOnly: true, + ...options, + }); + }); + } + + return { initSortable }; +} diff --git a/src/hooks/web/useTabs.ts b/src/hooks/web/useTabs.ts new file mode 100644 index 0000000..14dde2f --- /dev/null +++ b/src/hooks/web/useTabs.ts @@ -0,0 +1,103 @@ +import type { RouteLocationNormalized, Router } from 'vue-router'; + +import { useRouter } from 'vue-router'; +import { unref } from 'vue'; + +import { useMultipleTabStore } from '/@/store/modules/multipleTab'; +import { useAppStore } from '/@/store/modules/app'; + +enum TableActionEnum { + REFRESH, + CLOSE_ALL, + CLOSE_LEFT, + CLOSE_RIGHT, + CLOSE_OTHER, + CLOSE_CURRENT, + CLOSE, +} + +export function useTabs(_router?: Router) { + const appStore = useAppStore(); + + function canIUseTabs(): boolean { + const { show } = appStore.getMultiTabsSetting; + if (!show) { + throw new Error('The multi-tab page is currently not open, please open it in the settings!'); + } + return !!show; + } + + const tabStore = useMultipleTabStore(); + const router = _router || useRouter(); + + const { currentRoute } = router; + + function getCurrentTab() { + const route = unref(currentRoute); + return tabStore.getTabList.find((item) => item.fullPath === route.fullPath)!; + } + + async function updateTabTitle(title: string, tab?: RouteLocationNormalized) { + const canIUse = canIUseTabs; + if (!canIUse) { + return; + } + const targetTab = tab || getCurrentTab(); + await tabStore.setTabTitle(title, targetTab); + } + + async function updateTabPath(path: string, tab?: RouteLocationNormalized) { + const canIUse = canIUseTabs; + if (!canIUse) { + return; + } + const targetTab = tab || getCurrentTab(); + await tabStore.updateTabPath(path, targetTab); + } + + async function handleTabAction(action: TableActionEnum, tab?: RouteLocationNormalized) { + const canIUse = canIUseTabs; + if (!canIUse) { + return; + } + const currentTab = getCurrentTab(); + switch (action) { + case TableActionEnum.REFRESH: + await tabStore.refreshPage(router); + break; + + case TableActionEnum.CLOSE_ALL: + await tabStore.closeAllTab(router); + break; + + case TableActionEnum.CLOSE_LEFT: + await tabStore.closeLeftTabs(currentTab, router); + break; + + case TableActionEnum.CLOSE_RIGHT: + await tabStore.closeRightTabs(currentTab, router); + break; + + case TableActionEnum.CLOSE_OTHER: + await tabStore.closeOtherTabs(currentTab, router); + break; + + case TableActionEnum.CLOSE_CURRENT: + case TableActionEnum.CLOSE: + await tabStore.closeTab(tab || currentTab, router); + break; + } + } + + return { + refreshPage: () => handleTabAction(TableActionEnum.REFRESH), + closeAll: () => handleTabAction(TableActionEnum.CLOSE_ALL), + closeLeft: () => handleTabAction(TableActionEnum.CLOSE_LEFT), + closeRight: () => handleTabAction(TableActionEnum.CLOSE_RIGHT), + closeOther: () => handleTabAction(TableActionEnum.CLOSE_OTHER), + closeCurrent: () => handleTabAction(TableActionEnum.CLOSE_CURRENT), + close: (tab?: RouteLocationNormalized) => handleTabAction(TableActionEnum.CLOSE, tab), + setTitle: (title: string, tab?: RouteLocationNormalized) => updateTabTitle(title, tab), + updatePath: (fullPath: string, tab?: RouteLocationNormalized) => updateTabPath(fullPath, tab), + }; +} diff --git a/src/hooks/web/useTitle.ts b/src/hooks/web/useTitle.ts new file mode 100644 index 0000000..3b43f2d --- /dev/null +++ b/src/hooks/web/useTitle.ts @@ -0,0 +1,37 @@ +import { watch, unref } from 'vue'; +import { useI18n } from '/@/hooks/web/useI18n'; +import { useTitle as usePageTitle } from '@vueuse/core'; +import { useGlobSetting } from '/@/hooks/setting'; +import { useRouter } from 'vue-router'; +import { useLocaleStore } from '/@/store/modules/locale'; +import { useAppStore } from '/@/store/modules/app'; +import { REDIRECT_NAME } from '/@/router/constant'; + +/** + * Listening to page changes and dynamically changing site titles + */ +export function useTitle() { + const { title } = useGlobSetting(); + const { t } = useI18n(); + const { currentRoute } = useRouter(); + const localeStore = useLocaleStore(); + const appStore = useAppStore(); + const pageTitle = usePageTitle(); + + watch( + [() => currentRoute.value.path, () => localeStore.getLocale], + () => { + const route = unref(currentRoute); + + if (route.name === REDIRECT_NAME) { + return; + } + + const tTitle = t(route?.meta?.title as string); + pageTitle.value = tTitle + ? ` ${tTitle} - ${appStore.getLogoConfig.shortName || title} ` + : `${appStore.getLogoConfig.shortName || title}`; + }, + { immediate: true }, + ); +} diff --git a/src/hooks/web/useWatermark.ts b/src/hooks/web/useWatermark.ts new file mode 100644 index 0000000..a42b84b --- /dev/null +++ b/src/hooks/web/useWatermark.ts @@ -0,0 +1,100 @@ +import { getCurrentInstance, onBeforeUnmount, ref, Ref, shallowRef, unref } from 'vue'; +import { useRafThrottle } from '/@/utils/domUtils'; +import { addResizeListener, removeResizeListener } from '/@/utils/event'; +import { isDef } from '/@/utils/is'; + +const domSymbol = Symbol('watermark-dom'); + +export function useWatermark( + appendEl: Ref = ref(document.body) as Ref, +) { + const func = useRafThrottle(function () { + const el = unref(appendEl); + if (!el) return; + const { clientHeight: height, clientWidth: width } = el; + updateWatermark({ height, width }); + }); + const id = domSymbol.toString(); + const watermarkEl = shallowRef(); + + const clear = () => { + const domId = unref(watermarkEl); + watermarkEl.value = undefined; + const el = unref(appendEl); + if (!el) return; + domId && el.removeChild(domId); + removeResizeListener(el, func); + }; + + function createBase64(str: string) { + const can = document.createElement('canvas'); + const width = 300; + const height = 240; + Object.assign(can, { width, height }); + + const cans = can.getContext('2d'); + if (cans) { + cans.rotate((-20 * Math.PI) / 120); + cans.font = '15px Vedana'; + cans.fillStyle = 'rgba(0, 0, 0, 0.15)'; + cans.textAlign = 'left'; + cans.textBaseline = 'middle'; + cans.fillText(str, width / 20, height); + } + return can.toDataURL('image/png'); + } + + function updateWatermark( + options: { + width?: number; + height?: number; + str?: string; + } = {}, + ) { + const el = unref(watermarkEl); + if (!el) return; + if (isDef(options.width)) { + el.style.width = `${options.width}px`; + } + if (isDef(options.height)) { + el.style.height = `${options.height}px`; + } + if (isDef(options.str)) { + el.style.background = `url(${createBase64(options.str)}) left top repeat`; + } + } + + const createWatermark = (str: string) => { + if (unref(watermarkEl)) { + updateWatermark({ str }); + return id; + } + const div = document.createElement('div'); + watermarkEl.value = div; + div.id = id; + div.style.pointerEvents = 'none'; + div.style.top = '0px'; + div.style.left = '0px'; + div.style.position = 'absolute'; + div.style.zIndex = '100000'; + const el = unref(appendEl); + if (!el) return id; + const { clientHeight: height, clientWidth: width } = el; + updateWatermark({ str, width, height }); + el.appendChild(div); + return id; + }; + + function setWatermark(str: string) { + createWatermark(str); + addResizeListener(document.documentElement, func); + const instance = getCurrentInstance(); + if (instance) { + onBeforeUnmount(() => { + clear(); + }); + } + } + + return { setWatermark, clear }; +} diff --git a/src/layouts/page/imageCard.vue b/src/layouts/page/imageCard.vue new file mode 100644 index 0000000..4c080a8 --- /dev/null +++ b/src/layouts/page/imageCard.vue @@ -0,0 +1,111 @@ + + + + + diff --git a/src/layouts/page/index.vue b/src/layouts/page/index.vue new file mode 100644 index 0000000..6555d49 --- /dev/null +++ b/src/layouts/page/index.vue @@ -0,0 +1,103 @@ + + + diff --git a/src/layouts/page/transition.ts b/src/layouts/page/transition.ts new file mode 100644 index 0000000..9e93009 --- /dev/null +++ b/src/layouts/page/transition.ts @@ -0,0 +1,33 @@ +import type { FunctionalComponent } from 'vue'; +import type { RouteLocation } from 'vue-router'; + +export interface DefaultContext { + Component: FunctionalComponent & { type: Recordable }; + route: RouteLocation; +} + +export function getTransitionName({ + route, + openCache, + cacheTabs, + enableTransition, + def, +}: Pick & { + enableTransition: boolean; + openCache: boolean; + def: string; + cacheTabs: string[]; +}): string | undefined { + if (!enableTransition) { + return undefined; + } + + const isInCache = cacheTabs.includes(route.name as string); + const transitionName = 'fade-slide'; + let name: string | undefined = transitionName; + + if (openCache) { + name = isInCache && route.meta.loaded ? transitionName : undefined; + } + return name || (route.meta.transitionName as string) || def; +} diff --git a/src/layouts/platform/WorkbenchHeader.vue b/src/layouts/platform/WorkbenchHeader.vue new file mode 100644 index 0000000..47ec761 --- /dev/null +++ b/src/layouts/platform/WorkbenchHeader.vue @@ -0,0 +1,66 @@ + + + diff --git a/src/layouts/platform/components/Logo.vue b/src/layouts/platform/components/Logo.vue new file mode 100644 index 0000000..64e15e9 --- /dev/null +++ b/src/layouts/platform/components/Logo.vue @@ -0,0 +1,32 @@ + + + diff --git a/src/layouts/platform/components/SideBar.vue b/src/layouts/platform/components/SideBar.vue new file mode 100644 index 0000000..d480fe7 --- /dev/null +++ b/src/layouts/platform/components/SideBar.vue @@ -0,0 +1,75 @@ + + + diff --git a/src/layouts/platform/default.vue b/src/layouts/platform/default.vue new file mode 100644 index 0000000..3bc7750 --- /dev/null +++ b/src/layouts/platform/default.vue @@ -0,0 +1,38 @@ + + + + diff --git a/src/layouts/platform/index.vue b/src/layouts/platform/index.vue new file mode 100644 index 0000000..e4109d9 --- /dev/null +++ b/src/layouts/platform/index.vue @@ -0,0 +1,28 @@ + + + diff --git a/src/layouts/platform/platform.vue b/src/layouts/platform/platform.vue new file mode 100644 index 0000000..ee01dd9 --- /dev/null +++ b/src/layouts/platform/platform.vue @@ -0,0 +1,28 @@ + + + diff --git a/src/layouts/platform/sider/Logo.vue b/src/layouts/platform/sider/Logo.vue new file mode 100644 index 0000000..0f16cfd --- /dev/null +++ b/src/layouts/platform/sider/Logo.vue @@ -0,0 +1,32 @@ + + + diff --git a/src/layouts/platform/sider/index.vue b/src/layouts/platform/sider/index.vue new file mode 100644 index 0000000..0cd2c55 --- /dev/null +++ b/src/layouts/platform/sider/index.vue @@ -0,0 +1,76 @@ + + + diff --git a/src/layouts/platform/tabs/components/FoldButton.vue b/src/layouts/platform/tabs/components/FoldButton.vue new file mode 100644 index 0000000..13d9d3c --- /dev/null +++ b/src/layouts/platform/tabs/components/FoldButton.vue @@ -0,0 +1,40 @@ + + diff --git a/src/layouts/platform/tabs/components/TabContent.vue b/src/layouts/platform/tabs/components/TabContent.vue new file mode 100644 index 0000000..2f6dc65 --- /dev/null +++ b/src/layouts/platform/tabs/components/TabContent.vue @@ -0,0 +1,73 @@ + + diff --git a/src/layouts/platform/tabs/components/TabRedo.vue b/src/layouts/platform/tabs/components/TabRedo.vue new file mode 100644 index 0000000..f1daf64 --- /dev/null +++ b/src/layouts/platform/tabs/components/TabRedo.vue @@ -0,0 +1,31 @@ + + diff --git a/src/layouts/platform/tabs/index.less b/src/layouts/platform/tabs/index.less new file mode 100644 index 0000000..32eb863 --- /dev/null +++ b/src/layouts/platform/tabs/index.less @@ -0,0 +1,228 @@ +@prefix-cls: ~'my-multiple-tabs'; +@multiple-height: 50px; +@my-font-color: #1c8dff; +@my-platform-border-radius: 10px; +// html[data-theme='dark'] { +// .@{prefix-cls} { +// .ant-tabs-tab { +// border-bottom: 1px solid @border-color-base; +// } +// } +// } + +// html[data-theme='light'] { +// .@{prefix-cls} { +// .ant-tabs-tab:not(.ant-tabs-tab-active) { +// border: 0; +// } +// } +// } + +.my-multiple-tabs { + z-index: 10; + height: 50px; + line-height: 50px; + font-size: 14px; + + .ant-tabs { + height: 50px; + line-height: 50px; + border-radius: 0; + } + + .ant-tabs.ant-tabs-card { + .ant-tabs-nav-list { + align-items: center; + } + + .ant-tabs-nav { + padding-top: 2px; + height: 50px; + margin: 0; + background-color: @component-background; + border: 0; + box-shadow: none; + + .ant-tabs-nav-container { + height: 50px; + padding-top: 2px; + } + + .ant-tabs-tab { + // height: calc(@multiple-height - 24px); + // padding: 0 5px; + // border-right: 1px solid #ddd; + border: none; + // line-height: calc(@multiple-height - 24px); + font-weight: 400; + font-size: 14px; + color: #1c2532; + background-color: @component-background; + transition: none; + padding: 0 13px; + + .ant-tabs-tab-remove { + // width: 8px; + // height: 38px; + // font-size: 12px; + color: inherit; + transition: none; + margin-left: 5px; + margin-right: 0; + display: flex; + justify-content: center; + align-items: center; + + &:hover { + svg { + width: 0.8em; + fill: #1c8dff; + } + } + } + + // > div { + // display: flex; + // justify-content: center; + // align-items: center; + // } + + svg { + width: 0.8em; + fill: #999; + } + } + + .ant-tabs-ink-bar { + height: 1px; + position: absolute; + background: #1c8dff; + pointer-events: none; + visibility: visible; + } + + .ant-tabs-tab:not(.ant-tabs-tab-active) { + &:hover { + color: @my-font-color; + } + } + + .ant-tabs-tab-active { + position: relative; + border-top: 0; + border-left: 0; + transition: none; + + span { + color: @my-font-color !important; + } + + svg { + width: 0.8em; + fill: #1c8dff; + } + } + } + + .ant-tabs-nav > div:nth-child(1) { + padding: 0 8px 0 3px; + } + } + + .ant-tabs-tab:not(.ant-tabs-tab-active) { + .anticon-close { + font-size: 12px; + + svg { + width: 0.6em; + } + } + } + + .ant-dropdown-trigger { + display: inline-flex; + } + + &--hide-close { + .ant-tabs-tab-remove { + opacity: 0 !important; + } + } + + &-content { + &__extra-quick, + &__extra-redo, + &__extra-fold { + display: inline-block; + width: 36px; + height: calc(@multiple-height - 24px); + line-height: calc(@multiple-height - 24px); + color: #c3c8cf; + text-align: center; + cursor: pointer; + border-left: 1px solid #ddd; + + &:hover { + color: @text-color-base; + } + + span[role='img'] { + transform: rotate(90deg); + } + } + + &__extra-redo { + span[role='img'] { + transform: rotate(0deg); + } + } + + &__info { + display: inline-block; + width: 100%; + height: 50px - 24; + padding-left: 0; + font-size: 14px; + cursor: pointer; + user-select: none; + } + } +} + +.ant-tabs-dropdown-menu { + &-title-content { + display: flex; + align-items: center; + + .@{prefix-cls} { + &-content__info { + width: auto; + margin-left: 0; + line-height: 28px; + } + } + } + + &-item-remove { + margin-left: auto; + } +} + +.multiple-tabs__dropdown { + .ant-dropdown-content { + width: 172px; + } +} + +.my-platform-page-box { + width: calc(100vw - 70px); + height: calc(100vh - 70px); + background-color: #f6f7f8; + border-radius: @my-platform-border-radius; + padding: 15px; + margin: 10px; + + .vben-page-wrapper-content { + margin: 0 !important; + } +} diff --git a/src/layouts/platform/tabs/index.vue b/src/layouts/platform/tabs/index.vue new file mode 100644 index 0000000..e619e86 --- /dev/null +++ b/src/layouts/platform/tabs/index.vue @@ -0,0 +1,153 @@ + + + diff --git a/src/layouts/platform/tabs/types.ts b/src/layouts/platform/tabs/types.ts new file mode 100644 index 0000000..3a8cfd9 --- /dev/null +++ b/src/layouts/platform/tabs/types.ts @@ -0,0 +1,25 @@ +import type { DropMenu } from '/@/components/Dropdown/index'; +import type { RouteLocationNormalized } from 'vue-router'; + +export enum TabContentEnum { + TAB_TYPE, + EXTRA_TYPE, +} + +export type { DropMenu }; + +export interface TabContentProps { + tabItem: RouteLocationNormalized; + type?: TabContentEnum; + trigger?: ('click' | 'hover' | 'contextmenu')[]; +} + +export enum MenuEventEnum { + REFRESH_PAGE, + CLOSE_CURRENT, + CLOSE_LEFT, + CLOSE_RIGHT, + CLOSE_OTHER, + CLOSE_ALL, + SCALE, +} diff --git a/src/layouts/platform/tabs/useMultipleTabs.ts b/src/layouts/platform/tabs/useMultipleTabs.ts new file mode 100644 index 0000000..e910394 --- /dev/null +++ b/src/layouts/platform/tabs/useMultipleTabs.ts @@ -0,0 +1,78 @@ +import { toRaw, ref, nextTick } from 'vue'; +import type { RouteLocationNormalized } from 'vue-router'; +import { useSortable } from '/@/hooks/web/useSortable'; +import { useMultipleTabStore } from '/@/store/modules/multipleTab'; +import { isNullAndUnDef } from '/@/utils/is'; +import projectSetting from '/@/settings/projectSetting'; +import { useRouter } from 'vue-router'; + +export function initAffixTabs(): string[] { + const affixList = ref([]); + + const tabStore = useMultipleTabStore(); + const router = useRouter(); + /** + * @description: Filter all fixed routes + */ + function filterAffixTabs(routes: RouteLocationNormalized[]) { + const tabs: RouteLocationNormalized[] = []; + routes && + routes.forEach((route) => { + if (route.meta && route.meta.affix) { + tabs.push(toRaw(route)); + } + }); + return tabs; + } + + /** + * @description: Set fixed tabs + */ + function addAffixTabs(): void { + const affixTabs = filterAffixTabs(router.getRoutes() as unknown as RouteLocationNormalized[]); + affixList.value = affixTabs; + for (const tab of affixTabs) { + if (!tab.meta.isHide) { + tabStore.addTab({ + meta: tab.meta, + name: tab.name, + path: tab.path, + } as unknown as RouteLocationNormalized); + } + } + } + + let isAddAffix = false; + + if (!isAddAffix) { + addAffixTabs(); + isAddAffix = true; + } + return affixList.value.map((item) => item.meta?.title).filter(Boolean) as string[]; +} + +export function useTabsDrag(affixTextList: string[]) { + const tabStore = useMultipleTabStore(); + const { multiTabsSetting } = projectSetting; + nextTick(() => { + if (!multiTabsSetting.canDrag) return; + const el = document.querySelectorAll(`.ant-tabs-nav-wrap > div`)?.[0] as HTMLElement; + const { initSortable } = useSortable(el, { + filter: (e: ChangeEvent) => { + const text = e?.target?.innerText; + if (!text) return false; + return affixTextList.includes(text); + }, + onEnd: (evt) => { + const { oldIndex, newIndex } = evt; + + if (isNullAndUnDef(oldIndex) || isNullAndUnDef(newIndex) || oldIndex === newIndex) { + return; + } + + tabStore.sortTabs(oldIndex, newIndex); + }, + }); + initSortable(); + }); +} diff --git a/src/layouts/platform/tabs/useTabDropdown.ts b/src/layouts/platform/tabs/useTabDropdown.ts new file mode 100644 index 0000000..c82b792 --- /dev/null +++ b/src/layouts/platform/tabs/useTabDropdown.ts @@ -0,0 +1,140 @@ +import type { TabContentProps } from './types'; +import type { DropMenu } from '/@/components/Dropdown'; +import type { ComputedRef } from 'vue'; + +import { computed, unref, reactive } from 'vue'; +import { MenuEventEnum } from './types'; +import { useMultipleTabStore } from '/@/store/modules/multipleTab'; +import { RouteLocationNormalized, useRouter } from 'vue-router'; +import { useTabs } from '/@/hooks/web/useTabs'; +import { useI18n } from '/@/hooks/web/useI18n'; + +export function useTabDropdown(tabContentProps: TabContentProps, getIsTabs: ComputedRef) { + const state = reactive({ + current: null as Nullable, + currentIndex: 0, + }); + + const { t } = useI18n(); + const tabStore = useMultipleTabStore(); + const { currentRoute } = useRouter(); + const { refreshPage, closeAll, close, closeLeft, closeOther, closeRight } = useTabs(); + + const getTargetTab = computed((): RouteLocationNormalized => { + return unref(getIsTabs) ? tabContentProps.tabItem : unref(currentRoute); + }); + + /** + * @description: drop-down list + */ + const getDropMenuList = computed(() => { + if (!unref(getTargetTab)) { + return; + } + const { meta } = unref(getTargetTab); + const { path } = unref(currentRoute); + + const curItem = state.current; + + const isCurItem = curItem ? curItem.path === path : false; + + // Refresh button + const index = state.currentIndex; + const refreshDisabled = !isCurItem; + // Close left + const closeLeftDisabled = index === 0 || !isCurItem; + + const disabled = tabStore.getTabList.length === 1; + + // Close right + const closeRightDisabled = + !isCurItem || (index === tabStore.getTabList.length - 1 && tabStore.getLastDragEndIndex >= 0); + const dropMenuList: DropMenu[] = [ + { + icon: 'ion:reload-sharp', + event: MenuEventEnum.REFRESH_PAGE, + text: t('重新加载'), + disabled: refreshDisabled, + }, + { + icon: 'clarity:close-line', + event: MenuEventEnum.CLOSE_CURRENT, + text: t('关闭标签页'), + disabled: !!meta?.affix || disabled, + divider: true, + }, + { + icon: 'line-md:arrow-close-left', + event: MenuEventEnum.CLOSE_LEFT, + text: t('关闭左侧标签页'), + disabled: closeLeftDisabled, + divider: false, + }, + { + icon: 'line-md:arrow-close-right', + event: MenuEventEnum.CLOSE_RIGHT, + text: t('关闭右侧标签页'), + disabled: closeRightDisabled, + divider: true, + }, + { + icon: 'dashicons:align-center', + event: MenuEventEnum.CLOSE_OTHER, + text: t('关闭其它标签页'), + disabled: disabled || !isCurItem, + }, + { + icon: 'clarity:minus-line', + event: MenuEventEnum.CLOSE_ALL, + text: t('关闭全部标签页'), + disabled: disabled, + }, + ]; + + return dropMenuList; + }); + + function handleContextMenu(tabItem: RouteLocationNormalized) { + return (e: Event) => { + if (!tabItem) { + return; + } + e?.preventDefault(); + const index = tabStore.getTabList.findIndex((tab) => tab.path === tabItem.path); + state.current = tabItem; + state.currentIndex = index; + }; + } + + // Handle right click event + function handleMenuEvent(menu: DropMenu): void { + const { event } = menu; + switch (event) { + case MenuEventEnum.REFRESH_PAGE: + // refresh page + refreshPage(); + break; + // Close current + case MenuEventEnum.CLOSE_CURRENT: + close(tabContentProps.tabItem); + break; + // Close left + case MenuEventEnum.CLOSE_LEFT: + closeLeft(); + break; + // Close right + case MenuEventEnum.CLOSE_RIGHT: + closeRight(); + break; + // Close other + case MenuEventEnum.CLOSE_OTHER: + closeOther(); + break; + // Close all + case MenuEventEnum.CLOSE_ALL: + closeAll(); + break; + } + } + return { getDropMenuList, handleMenuEvent, handleContextMenu }; +} diff --git a/src/locales/helper.ts b/src/locales/helper.ts new file mode 100644 index 0000000..4f78439 --- /dev/null +++ b/src/locales/helper.ts @@ -0,0 +1,37 @@ +import type { LocaleType } from '/#/config'; + +import { set } from 'lodash-es'; + +export const loadLocalePool: LocaleType[] = []; + +export function setHtmlPageLang(locale: LocaleType) { + document.querySelector('html')?.setAttribute('lang', locale); +} + +export function setLoadLocalePool(cb: (loadLocalePool: LocaleType[]) => void) { + cb(loadLocalePool); +} + +export function genMessage(langs: Record>, prefix = 'lang') { + const obj: Recordable = {}; + + Object.keys(langs).forEach((key) => { + const langFileModule = langs[key].default; + let fileName = key.replace(`./${prefix}/`, '').replace(/^\.\//, ''); + const lastIndex = fileName.lastIndexOf('.'); + fileName = fileName.substring(0, lastIndex); + const keyList = fileName.split('/'); + const moduleName = keyList.shift(); + const objKey = keyList.join('.'); + + if (moduleName) { + if (objKey) { + set(obj, moduleName, obj[moduleName] || {}); + set(obj[moduleName], objKey, langFileModule); + } else { + set(obj, moduleName, langFileModule || {}); + } + } + }); + return obj; +} diff --git a/src/locales/lang/en.ts b/src/locales/lang/en.ts new file mode 100644 index 0000000..34af2fb --- /dev/null +++ b/src/locales/lang/en.ts @@ -0,0 +1,12 @@ +import { genMessage } from '../helper'; +import antdLocale from 'ant-design-vue/es/locale/en_US'; + +const modules = import.meta.glob('./en/**/*.ts', { eager: true }); +export default { + message: { + ...genMessage(modules, 'en'), + antdLocale, + }, + dateLocale: null, + dateLocaleName: 'en', +}; diff --git a/src/locales/lang/en/common.ts b/src/locales/lang/en/common.ts new file mode 100644 index 0000000..f7cdce0 --- /dev/null +++ b/src/locales/lang/en/common.ts @@ -0,0 +1,20 @@ +export default { + okText: 'OK', + closeText: 'Close', + cancelText: 'Cancel', + loadingText: 'Loading...', + saveText: 'Save', + delText: 'Delete', + resetText: 'Reset', + searchText: 'Search', + queryText: 'Search', + + inputText: 'Please enter', + chooseText: 'Please choose', + + redo: 'Refresh', + back: 'Back', + + light: 'Light', + dark: 'Dark', +}; diff --git a/src/locales/lang/en/component.ts b/src/locales/lang/en/component.ts new file mode 100644 index 0000000..b93dbd5 --- /dev/null +++ b/src/locales/lang/en/component.ts @@ -0,0 +1,129 @@ +export default { + app: { + searchNotData: 'No search results yet', + toSearch: 'to search', + toNavigate: 'to navigate', + }, + countdown: { + normalText: 'Get SMS code', + sendText: 'Reacquire in {0}s', + }, + cropper: { + selectImage: 'Select Image', + uploadSuccess: 'Uploaded success!', + modalTitle: 'Avatar upload', + okText: 'Confirm and upload', + btn_reset: 'Reset', + btn_rotate_left: 'Counterclockwise rotation', + btn_rotate_right: 'Clockwise rotation', + btn_scale_x: 'Flip horizontal', + btn_scale_y: 'Flip vertical', + btn_zoom_in: 'Zoom in', + btn_zoom_out: 'Zoom out', + preview: 'Preivew', + }, + drawer: { + loadingText: 'Loading...', + cancelText: 'Close', + okText: 'Confirm', + }, + excel: { + exportModalTitle: 'Export data', + fileType: 'File type', + fileName: 'File name', + }, + form: { + putAway: 'Put away', + unfold: 'Unfold', + maxTip: 'The number of characters should be less than {0}', + apiSelectNotFound: 'Wait for data loading to complete...', + }, + icon: { + placeholder: 'Click the select icon', + search: 'Search icon', + copy: 'Copy icon successfully!', + }, + menu: { + search: 'Menu search', + }, + modal: { + cancelText: 'Close', + okText: 'Confirm', + close: 'Close', + maximize: 'Maximize', + restore: 'Restore', + }, + table: { + settingDens: 'Density', + settingDensDefault: 'Default', + settingDensMiddle: 'Middle', + settingDensSmall: 'Compact', + settingColumn: 'Column settings', + settingColumnShow: 'Column display', + settingIndexColumnShow: 'Index Column', + settingSelectColumnShow: 'Selection Column', + settingFixedLeft: 'Fixed Left', + settingFixedRight: 'Fixed Right', + settingFullScreen: 'Full Screen', + index: 'Index', + total: 'total of {total}', + }, + time: { + before: ' ago', + after: ' after', + just: 'just now', + seconds: ' seconds', + minutes: ' minutes', + hours: ' hours', + days: ' days', + }, + tree: { + selectAll: 'Select All', + unSelectAll: 'Cancel Select', + expandAll: 'Expand All', + unExpandAll: 'Collapse all', + + checkStrictly: 'Hierarchical association', + checkUnStrictly: 'Hierarchical independence', + }, + upload: { + save: 'Save', + upload: 'Upload', + imgUpload: 'ImageUpload', + uploaded: 'Uploaded', + + operating: 'Operating', + del: 'Delete', + download: 'download', + saveWarn: 'Please wait for the file to upload and save!', + saveError: 'There is no file successfully uploaded and cannot be saved!', + + preview: 'Preview', + choose: 'Select the file', + + accept: 'Support {0} format', + acceptUpload: 'Only upload files in {0} format', + maxSize: 'A single file does not exceed {0}MB ', + maxSizeMultiple: 'Only upload files up to {0}MB!', + maxNumber: 'Only upload up to {0} files', + + legend: 'Legend', + fileName: 'File name', + fileSize: 'File size', + fileStatue: 'File status', + + startUpload: 'Start upload', + uploadSuccess: 'Upload successfully', + uploadError: 'Upload failed', + uploading: 'Uploading', + uploadWait: 'Please wait for the file upload to finish', + reUploadFailed: 'Re-upload failed files', + }, + verify: { + error: 'verification failed!', + time: 'The verification is successful and it takes {time} seconds!', + redoTip: 'Click the picture to refresh', + dragText: 'Hold down the slider and drag', + successText: 'Verified', + }, +}; diff --git a/src/locales/lang/en/layout.ts b/src/locales/lang/en/layout.ts new file mode 100644 index 0000000..86626b8 --- /dev/null +++ b/src/locales/lang/en/layout.ts @@ -0,0 +1,116 @@ +export default { + footer: { onlinePreview: 'Preview', onlineDocument: 'Document' }, + header: { + // user dropdown + userCenter: 'User Center', + dropdownItemDoc: 'Document', + dropdownItemLoginOut: 'Login Out', + + tooltipErrorLog: 'Error log', + tooltipLock: 'Lock screen', + tooltipNotify: 'Notification', + + tooltipEntryFull: 'Full Screen', + tooltipExitFull: 'Exit Full Screen', + + // lock + lockScreenPassword: 'Lock screen password', + lockScreen: 'Lock screen', + lockScreenBtn: 'Locking', + + home: 'Home', + }, + multipleTab: { + reload: 'Refresh current', + close: 'Close current', + closeLeft: 'Close Left', + closeRight: 'Close Right', + closeOther: 'Close Other', + closeAll: 'Close All', + }, + setting: { + // content mode + contentModeFull: 'Full', + contentModeFixed: 'Fixed width', + // topMenu align + topMenuAlignLeft: 'Left', + topMenuAlignRight: 'Center', + topMenuAlignCenter: 'Right', + // menu trigger + menuTriggerNone: 'Not Show', + menuTriggerBottom: 'Bottom', + menuTriggerTop: 'Top', + // menu type + menuTypeSidebar: 'Left menu mode', + menuTypeMixSidebar: 'Left menu mixed mode', + menuTypeMix: 'Top Menu Mix mode', + menuTypeTopMenu: 'Top menu mode', + + on: 'On', + off: 'Off', + minute: 'Minute', + + operatingTitle: 'Successful!', + operatingContent: + 'The copy is successful, please go to src/settings/projectSetting.ts to modify the configuration!', + resetSuccess: 'Successfully reset!', + + copyBtn: 'Copy', + clearBtn: 'Clear cache and to the login page', + + drawerTitle: 'Configuration', + + darkMode: 'Dark mode', + navMode: 'Navigation mode', + interfaceFunction: 'Interface function', + interfaceDisplay: 'Interface display', + animation: 'Animation', + splitMenu: 'Split menu', + closeMixSidebarOnChange: 'Switch page to close menu', + + sysTheme: 'System theme', + headerTheme: 'Header theme', + sidebarTheme: 'Menu theme', + + menuDrag: 'Drag Sidebar', + menuSearch: 'Menu search', + menuAccordion: 'Sidebar accordion', + menuCollapse: 'Collapse menu', + collapseMenuDisplayName: 'Collapse menu display name', + topMenuLayout: 'Top menu layout', + menuCollapseButton: 'Menu collapse button', + contentMode: 'Content area width', + expandedMenuWidth: 'Expanded menu width', + + breadcrumb: 'Breadcrumbs', + breadcrumbIcon: 'Breadcrumbs Icon', + tabs: 'Tabs', + tabDetail: 'Tab Detail', + tabsQuickBtn: 'Tabs quick button', + tabsRedoBtn: 'Tabs redo button', + tabsFoldBtn: 'Tabs flod button', + sidebar: 'Sidebar', + header: 'Header', + footer: 'Footer', + fullContent: 'Full content', + grayMode: 'Gray mode', + colorWeak: 'Color Weak Mode', + + progress: 'Progress', + switchLoading: 'Switch Loading', + switchAnimation: 'Switch animation', + animationType: 'Animation type', + + autoScreenLock: 'Auto screen lock', + notAutoScreenLock: 'Not auto lock', + + fixedHeader: 'Fixed header', + fixedSideBar: 'Fixed Sidebar', + + mixSidebarTrigger: 'Mixed menu Trigger', + triggerHover: 'Hover', + triggerClick: 'Click', + + mixSidebarFixed: 'Fixed expanded menu', + }, +}; diff --git a/src/locales/lang/en/routes/basic.ts b/src/locales/lang/en/routes/basic.ts new file mode 100644 index 0000000..b6faa00 --- /dev/null +++ b/src/locales/lang/en/routes/basic.ts @@ -0,0 +1,4 @@ +export default { + login: 'Login', + errorLogList: 'Error Log', +}; diff --git a/src/locales/lang/en/routes/dashboard.ts b/src/locales/lang/en/routes/dashboard.ts new file mode 100644 index 0000000..6d047b5 --- /dev/null +++ b/src/locales/lang/en/routes/dashboard.ts @@ -0,0 +1,6 @@ +export default { + dashboard: 'Dashboard', + about: 'About', + workbench: 'Workbench', + analysis: 'Analysis', +}; diff --git a/src/locales/lang/en/routes/demo.ts b/src/locales/lang/en/routes/demo.ts new file mode 100644 index 0000000..901d6a7 --- /dev/null +++ b/src/locales/lang/en/routes/demo.ts @@ -0,0 +1,202 @@ +export default { + charts: { + baiduMap: 'Baidu map', + aMap: 'A map', + googleMap: 'Google map', + charts: 'Chart', + map: 'Map', + line: 'Line', + pie: 'Pie', + }, + comp: { + comp: 'Component', + basic: 'Basic', + transition: 'Animation', + countTo: 'Count To', + + scroll: 'Scroll', + scrollBasic: 'Basic', + scrollAction: 'Scroll Function', + virtualScroll: 'Virtual Scroll', + + tree: 'Tree', + + treeBasic: 'Basic', + editTree: 'Searchable/toolbar', + actionTree: 'Function operation', + + modal: 'Modal', + drawer: 'Drawer', + desc: 'Desc', + + lazy: 'Lazy', + lazyBasic: 'Basic', + lazyTransition: 'Animation', + + verify: 'Verify', + verifyDrag: 'Drag ', + verifyRotate: 'Picture Restore', + + qrcode: 'QR code', + strength: 'Password strength', + upload: 'Upload', + + loading: 'Loading', + + time: 'Relative Time', + cropperImage: 'Cropper Image', + cardList: 'Card List', + }, + editor: { + editor: 'Editor', + jsonEditor: 'Json editor', + markdown: 'Markdown editor', + + tinymce: 'Rich text', + tinymceBasic: 'Basic', + tinymceForm: 'embedded form', + }, + excel: { + excel: 'Excel', + customExport: 'Select export format', + jsonExport: 'JSON data export', + arrayExport: 'Array data export', + importExcel: 'Import', + }, + feat: { + feat: 'Page Function', + icon: 'Icon', + tabs: 'Tabs', + tabDetail: 'Tab Detail', + sessionTimeout: 'Session Timeout', + print: 'Print', + contextMenu: 'Context Menu', + download: 'Download', + clickOutSide: 'ClickOutSide', + imgPreview: 'Picture Preview', + copy: 'Clipboard', + msg: 'Message prompt', + watermark: 'Watermark', + ripple: 'Ripple', + fullScreen: 'Full Screen', + errorLog: 'Error Log', + tab: 'Tab with parameters', + tab1: 'Tab with parameter 1', + tab2: 'Tab with parameter 2', + menu: 'Menu with parameters', + menu1: 'Menu with parameters 1', + menu2: 'Menu with parameters 2', + + ws: 'Websocket test', + + breadcrumb: 'Breadcrumbs', + breadcrumbFlat: 'Flat Mode', + breadcrumbFlatDetail: 'Flat mode details', + requestDemo: 'Retry request demo', + + breadcrumbChildren: 'Level mode', + breadcrumbChildrenDetail: 'Level mode detail', + }, + flow: { + name: 'Graphics editor', + flowChart: 'FlowChart', + }, + form: { + form: 'Form', + basic: 'Basic', + useForm: 'useForm', + refForm: 'RefForm', + advancedForm: 'Shrinkable', + ruleForm: 'Form validation', + dynamicForm: 'Dynamic', + customerForm: 'Custom', + appendForm: 'Append', + tabsForm: 'TabsForm', + }, + iframe: { + frame: 'External', + antv: 'antVue doc (embedded)', + doc: 'Project doc (embedded)', + docExternal: 'Project doc (external)', + }, + level: { level: 'MultiMenu' }, + page: { + page: 'Page', + + form: 'Form', + formBasic: 'Basic Form', + formStep: 'Step Form', + formHigh: 'Advanced Form', + + desc: 'Details', + descBasic: 'Basic Details', + descHigh: 'Advanced Details', + + result: 'Result', + resultSuccess: 'Success', + resultFail: 'Failed', + + account: 'Personal', + accountCenter: 'Personal Center', + accountSetting: 'Personal Settings', + + exception: 'Exception', + netWorkError: 'Network Error', + notData: 'No data', + + list: 'List page', + listCard: 'Card list', + basic: 'Basic list', + listBasic: 'Basic list', + listSearch: 'Search list', + }, + permission: { + permission: 'Permission', + + front: 'front-end', + frontPage: 'Page', + frontBtn: 'Button', + frontTestA: 'Test page A', + frontTestB: 'Test page B', + + back: 'background', + backPage: 'Page', + backBtn: 'Button', + }, + setup: { + page: 'Intro page', + }, + system: { + moduleName: 'System management', + + account: 'Account management', + account_detail: 'Account detail', + password: 'Change password', + + dept: 'Department management', + + menu: 'Menu management', + role: 'Role management', + }, + table: { + table: 'Table', + + basic: 'Basic', + treeTable: 'Tree', + fetchTable: 'Remote loading', + fixedColumn: 'Fixed column', + customerCell: 'Custom column', + formTable: 'Open search', + useTable: 'UseTable', + refTable: 'RefTable', + multipleHeader: 'MultiLevel header', + mergeHeader: 'Merge cells', + expandTable: 'Expandable table', + fixedHeight: 'Fixed height', + footerTable: 'Footer', + editCellTable: 'Editable cell', + editRowTable: 'Editable row', + authColumn: 'Auth column', + resizeParentHeightTable: 'resizeParentHeightTable', + }, +}; diff --git a/src/locales/lang/en/sys.ts b/src/locales/lang/en/sys.ts new file mode 100644 index 0000000..3b29600 --- /dev/null +++ b/src/locales/lang/en/sys.ts @@ -0,0 +1,104 @@ +export default { + api: { + operationFailed: 'Operation failed', + errorTip: 'Error Tip', + errorMessage: 'The operation failed, the system is abnormal!', + timeoutMessage: 'Login timed out, please log in again!', + apiTimeoutMessage: 'The interface request timed out, please refresh the page and try again!', + apiRequestFailed: 'The interface request failed, please try again later!', + networkException: 'network anomaly', + networkExceptionMsg: + 'Please check if your network connection is normal! The network is abnormal', + + errMsg401: 'The user does not have permission (token, user name, password error)!', + errMsg403: 'The user is authorized, but access is forbidden!', + errMsg404: 'Network request error, the resource was not found!', + errMsg405: 'Network request error, request method not allowed!', + errMsg408: 'Network request timed out!', + errMsg500: 'Server error, please contact the administrator!', + errMsg501: 'The network is not implemented!', + errMsg502: 'Network Error!', + errMsg503: 'The service is unavailable, the server is temporarily overloaded or maintained!', + errMsg504: 'Network timeout!', + errMsg505: 'The http version does not support the request!', + }, + app: { + logoutTip: 'Reminder', + logoutMessage: 'Confirm to exit the system?', + menuLoading: 'Menu loading...', + }, + errorLog: { + tableTitle: 'Error log list', + tableColumnType: 'Type', + tableColumnDate: 'Time', + tableColumnFile: 'File', + tableColumnMsg: 'Error message', + tableColumnStackMsg: 'Stack info', + + tableActionDesc: 'Details', + + modalTitle: 'Error details', + + fireVueError: 'Fire vue error', + fireResourceError: 'Fire resource error', + fireAjaxError: 'Fire ajax error', + + enableMessage: 'Only effective when useErrorHandle=true in `/src/settings/projectSetting.ts`.', + }, + exception: { + backLogin: 'Back Login', + backHome: 'Back Home', + subTitle403: "Sorry, you don't have access to this page.", + subTitle404: 'Sorry, the page you visited does not exist.', + subTitle500: 'Sorry, the server is reporting an error.', + noDataTitle: 'No data on the current page.', + networkErrorTitle: 'Network Error', + networkErrorSubTitle: + 'Sorry,Your network connection has been disconnected, please check your network!', + }, + lock: { + unlock: 'Click to unlock', + alert: 'Lock screen password error', + backToLogin: 'Back to login', + entry: 'Enter the system', + placeholder: 'Please enter the lock screen password or user password', + }, + login: { + backSignIn: 'Back sign in', + mobileSignInFormTitle: 'Mobile sign in', + qrSignInFormTitle: 'Qr code sign in', + signInFormTitle: 'Sign in', + signUpFormTitle: 'Sign up', + forgetFormTitle: 'Reset password', + + signInTitle: 'Backstage management system', + signInDesc: 'Enter your personal details and get started!', + policy: 'I agree to the xxx Privacy Policy', + scanSign: `scanning the code to complete the login`, + + loginButton: 'Sign in', + registerButton: 'Sign up', + rememberMe: 'Remember me', + forgetPassword: 'Forget Password?', + otherSignIn: 'Sign in with', + + // notify + loginSuccessTitle: 'Login successful', + loginSuccessDesc: 'Welcome back', + + // placeholder + accountPlaceholder: 'Please input username', + passwordPlaceholder: 'Please input password', + smsPlaceholder: 'Please input sms code', + mobilePlaceholder: 'Please input mobile', + policyPlaceholder: 'Register after checking', + diffPwd: 'The two passwords are inconsistent', + + userName: 'Username', + password: 'Password', + confirmPassword: 'Confirm Password', + email: 'Email', + smsCode: 'SMS code', + mobile: 'Mobile', + }, +}; diff --git a/src/locales/lang/zh-CN/common.ts b/src/locales/lang/zh-CN/common.ts new file mode 100644 index 0000000..478c625 --- /dev/null +++ b/src/locales/lang/zh-CN/common.ts @@ -0,0 +1,20 @@ +export default { + okText: '确认', + closeText: '关闭', + cancelText: '取消', + loadingText: '加载中...', + saveText: '保存', + delText: '删除', + resetText: '重置', + searchText: '搜索', + queryText: '查询', + + inputText: '请输入', + chooseText: '请选择', + + redo: '刷新', + back: '返回', + + light: '亮色主题', + dark: '黑暗主题', +}; diff --git a/src/locales/lang/zh-CN/component.ts b/src/locales/lang/zh-CN/component.ts new file mode 100644 index 0000000..8e89421 --- /dev/null +++ b/src/locales/lang/zh-CN/component.ts @@ -0,0 +1,135 @@ +export default { + app: { + searchNotData: '暂无搜索结果', + toSearch: '确认', + toNavigate: '切换', + }, + countdown: { + normalText: '获取验证码', + sendText: '{0}秒后重新获取', + }, + cropper: { + selectImage: '选择图片', + uploadSuccess: '上传成功', + modalTitle: '头像上传', + okText: '确认并上传', + btn_reset: '重置', + btn_rotate_left: '逆时针旋转', + btn_rotate_right: '顺时针旋转', + btn_scale_x: '水平翻转', + btn_scale_y: '垂直翻转', + btn_zoom_in: '放大', + btn_zoom_out: '缩小', + preview: '预览', + }, + drawer: { + loadingText: '加载中...', + cancelText: '关闭', + okText: '确认', + }, + excel: { + exportModalTitle: '导出数据', + fileType: '文件类型', + fileName: '文件名', + }, + form: { + putAway: '收起', + unfold: '展开', + + maxTip: '字符数应小于{0}位', + + apiSelectNotFound: '请等待数据加载完成...', + }, + icon: { + placeholder: '点击选择图标', + search: '搜索图标', + copy: '复制图标成功!', + }, + menu: { + search: '菜单搜索', + }, + modal: { + cancelText: '关闭', + okText: '确认', + close: '关闭', + maximize: '最大化', + restore: '还原', + }, + table: { + settingDens: '密度', + settingDensDefault: '默认', + settingDensMiddle: '中等', + settingDensSmall: '紧凑', + settingColumn: '列设置', + settingColumnShow: '列展示', + settingIndexColumnShow: '序号列', + settingSelectColumnShow: '勾选列', + settingFixedLeft: '固定到左侧', + settingFixedRight: '固定到右侧', + settingFullScreen: '全屏', + + index: '序号', + // index: '#', + + total: '共 {total} 条数据', + }, + time: { + before: '前', + after: '后', + just: '刚刚', + seconds: '秒', + minutes: '分钟', + hours: '小时', + days: '天', + }, + tree: { + selectAll: '选择全部', + unSelectAll: '取消选择', + expandAll: '展开全部', + unExpandAll: '折叠全部', + checkStrictly: '层级关联', + checkUnStrictly: '层级独立', + }, + upload: { + save: '保存', + upload: '上传', + imgUpload: '图片上传', + uploaded: '已上传', + + operating: '操作', + del: '删除', + download: '下载', + saveWarn: '请等待文件上传后,保存!', + saveError: '没有上传成功的文件,无法保存!', + + preview: '预览', + choose: '选择文件', + + accept: '支持{0}格式', + acceptUpload: '只能上传{0}格式文件', + maxSize: '单个文件不超过{0}MB', + maxSizeMultiple: '只能上传不超过{0}MB的文件!', + maxNumber: '最多只能上传{0}个文件', + + legend: '略缩图', + fileName: '文件名', + fileSize: '文件大小', + fileStatue: '状态', + + startUpload: '开始上传', + uploadSuccess: '上传成功', + uploadError: '上传失败', + uploading: '上传中', + uploadWait: '请等待文件上传结束后操作', + reUploadFailed: '重新上传失败文件', + }, + verify: { + error: '验证失败!', + time: '验证校验成功,耗时{time}秒!', + + redoTip: '点击图片可刷新', + + dragText: '请按住滑块拖动', + successText: '验证通过', + }, +}; diff --git a/src/locales/lang/zh-CN/layout.ts b/src/locales/lang/zh-CN/layout.ts new file mode 100644 index 0000000..d06e866 --- /dev/null +++ b/src/locales/lang/zh-CN/layout.ts @@ -0,0 +1,116 @@ +export default { + footer: { onlinePreview: '在线预览', onlineDocument: '在线文档' }, + header: { + // user dropdown + userCenter: '用户中心', + dropdownItemDoc: '文档', + dropdownItemLoginOut: '退出系统', + + // tooltip + tooltipErrorLog: '错误日志', + tooltipLock: '锁定屏幕', + tooltipNotify: '消息通知', + + tooltipEntryFull: '全屏', + tooltipExitFull: '退出全屏', + + // lock + lockScreenPassword: '锁屏密码', + lockScreen: '锁定屏幕', + lockScreenBtn: '锁定', + + home: '首页', + }, + multipleTab: { + reload: '重新加载', + close: '关闭标签页', + closeLeft: '关闭左侧标签页', + closeRight: '关闭右侧标签页', + closeOther: '关闭其它标签页', + closeAll: '关闭全部标签页', + }, + setting: { + // content mode + contentModeFull: '流式', + contentModeFixed: '定宽', + // topMenu align + topMenuAlignLeft: '居左', + topMenuAlignRight: '居中', + topMenuAlignCenter: '居右', + // menu trigger + menuTriggerNone: '不显示', + menuTriggerBottom: '底部', + menuTriggerTop: '顶部', + // menu type + menuTypeSidebar: '左侧菜单模式', + menuTypeMixSidebar: '左侧菜单混合模式', + menuTypeMix: '顶部菜单混合模式', + menuTypeTopMenu: '顶部菜单模式', + + on: '开', + off: '关', + minute: '分钟', + + operatingTitle: '操作成功', + operatingContent: '复制成功,请到 src/settings/projectSetting.ts 中修改配置!', + resetSuccess: '重置成功!', + + copyBtn: '拷贝', + clearBtn: '清空缓存并返回登录页', + + drawerTitle: '项目配置', + + darkMode: '主题', + navMode: '导航栏模式', + interfaceFunction: '界面功能', + interfaceDisplay: '界面显示', + animation: '动画', + splitMenu: '分割菜单', + closeMixSidebarOnChange: '切换页面关闭菜单', + + sysTheme: '系统主题', + headerTheme: '顶栏主题', + sidebarTheme: '菜单主题', + + menuDrag: '侧边菜单拖拽', + menuSearch: '菜单搜索', + menuAccordion: '侧边菜单手风琴模式', + menuCollapse: '折叠菜单', + collapseMenuDisplayName: '折叠菜单显示名称', + topMenuLayout: '顶部菜单布局', + menuCollapseButton: '菜单折叠按钮', + contentMode: '内容区域宽度', + expandedMenuWidth: '菜单展开宽度', + + breadcrumb: '面包屑', + breadcrumbIcon: '面包屑图标', + tabs: '标签页', + tabDetail: '标签详情页', + tabsQuickBtn: '标签页快捷按钮', + tabsRedoBtn: '标签页刷新按钮', + tabsFoldBtn: '标签页折叠按钮', + sidebar: '左侧菜单', + header: '顶栏', + footer: '页脚', + fullContent: '全屏内容', + grayMode: '灰色模式', + colorWeak: '色弱模式', + + progress: '顶部进度条', + switchLoading: '切换loading', + switchAnimation: '切换动画', + animationType: '动画类型', + + autoScreenLock: '自动锁屏', + notAutoScreenLock: '不自动锁屏', + + fixedHeader: '固定header', + fixedSideBar: '固定Sidebar', + + mixSidebarTrigger: '混合菜单触发方式', + triggerHover: '悬停', + triggerClick: '点击', + + mixSidebarFixed: '固定展开菜单', + }, +}; diff --git a/src/locales/lang/zh-CN/routes/basic.ts b/src/locales/lang/zh-CN/routes/basic.ts new file mode 100644 index 0000000..3d03e8e --- /dev/null +++ b/src/locales/lang/zh-CN/routes/basic.ts @@ -0,0 +1,4 @@ +export default { + login: '登录', + errorLogList: '错误日志列表', +}; diff --git a/src/locales/lang/zh-CN/routes/dashboard.ts b/src/locales/lang/zh-CN/routes/dashboard.ts new file mode 100644 index 0000000..04b1b19 --- /dev/null +++ b/src/locales/lang/zh-CN/routes/dashboard.ts @@ -0,0 +1,6 @@ +export default { + dashboard: 'Dashboard', + about: '关于', + workbench: '工作台', + analysis: '分析页', +}; diff --git a/src/locales/lang/zh-CN/routes/demo.ts b/src/locales/lang/zh-CN/routes/demo.ts new file mode 100644 index 0000000..f8749e1 --- /dev/null +++ b/src/locales/lang/zh-CN/routes/demo.ts @@ -0,0 +1,193 @@ +export default { + charts: { + baiduMap: '百度地图', + aMap: '高德地图', + googleMap: '谷歌地图', + charts: '图表', + map: '地图', + line: '折线图', + pie: '饼图', + }, + comp: { + comp: '组件', + basic: '基础组件', + transition: '动画组件', + countTo: '数字动画', + + scroll: '滚动组件', + scrollBasic: '基础滚动', + scrollAction: '滚动函数', + virtualScroll: '虚拟滚动', + + tree: 'Tree', + treeBasic: '基础树', + editTree: '可搜索/工具栏', + actionTree: '函数操作示例', + + modal: '弹窗扩展', + drawer: '抽屉扩展', + desc: '详情组件', + + lazy: '懒加载组件', + lazyBasic: '基础示例', + lazyTransition: '动画效果', + + verify: '验证组件', + verifyDrag: '拖拽校验', + verifyRotate: '图片还原', + + qrcode: '二维码组件', + strength: '密码强度组件', + upload: '上传组件', + + loading: 'Loading', + + time: '相对时间', + cropperImage: '图片裁剪', + cardList: '卡片列表', + }, + editor: { + editor: '编辑器', + jsonEditor: 'Json编辑器', + markdown: 'markdown编辑器', + + tinymce: '富文本', + tinymceBasic: '基础使用', + tinymceForm: '嵌入form', + }, + excel: { + excel: 'Excel', + customExport: '选择导出格式', + jsonExport: 'JSON数据导出', + arrayExport: 'Array数据导出', + importExcel: '导入', + }, + feat: { + feat: '功能', + icon: '图标', + sessionTimeout: '登录过期', + tabs: '标签页操作', + tabDetail: '标签详情页', + print: '打印', + contextMenu: '右键菜单', + download: '文件下载', + clickOutSide: 'ClickOutSide组件', + imgPreview: '图片预览', + copy: '剪切板', + msg: '消息提示', + watermark: '水印', + ripple: '水波纹', + fullScreen: '全屏', + errorLog: '错误日志', + tab: 'Tab带参', + tab1: 'Tab带参1', + tab2: 'Tab带参2', + menu: 'Menu带参', + menu1: 'Menu带参1', + menu2: 'Menu带参2', + ws: 'websocket测试', + breadcrumb: '面包屑导航', + breadcrumbFlat: '平级模式', + requestDemo: '测试请求重试', + breadcrumbFlatDetail: '平级详情', + breadcrumbChildren: '层级模式', + breadcrumbChildrenDetail: '层级详情', + }, + flow: { + name: '图形编辑器', + flowChart: '流程图', + }, + form: { + form: 'Form', + basic: '基础表单', + useForm: 'useForm', + refForm: 'RefForm', + advancedForm: '可收缩表单', + ruleForm: '表单验证', + dynamicForm: '动态表单', + customerForm: '自定义组件', + appendForm: '表单增删示例', + tabsForm: '标签页+多级field', + }, + iframe: { + frame: '外部页面', + antv: 'antVue文档(内嵌)', + doc: '项目文档(内嵌)', + docExternal: '项目文档(外链)', + }, + level: { level: '多级菜单' }, + page: { + page: '页面', + + form: '表单页', + formBasic: '基础表单', + formStep: '分步表单', + formHigh: '高级表单', + + desc: '详情页', + descBasic: '基础详情页', + descHigh: '高级详情页', + + result: '结果页', + resultSuccess: '成功页', + resultFail: '失败页', + + account: '个人页', + accountCenter: '个人中心', + accountSetting: '个人设置', + + exception: '异常页', + netWorkError: '网络错误', + notData: '无数据', + + list: '列表页', + listCard: '卡片列表', + listBasic: '标准列表', + listSearch: '搜索列表', + }, + permission: { + permission: '权限管理', + + front: '基于前端权限', + frontPage: '页面权限', + frontBtn: '按钮权限', + frontTestA: '权限测试页A', + frontTestB: '权限测试页B', + + back: '基于后台权限', + backPage: '页面权限', + backBtn: '按钮权限', + }, + setup: { + page: '引导页', + }, + system: { + moduleName: '系统管理', + account: '账号管理', + account_detail: '账号详情', + password: '修改密码', + dept: '部门管理', + menu: '菜单管理', + role: '角色管理', + }, + table: { + table: 'Table', + basic: '基础表格', + treeTable: '树形表格', + fetchTable: '远程加载示例', + fixedColumn: '固定列', + customerCell: '自定义列', + formTable: '开启搜索区域', + useTable: 'UseTable', + refTable: 'RefTable', + multipleHeader: '多级表头', + mergeHeader: '合并单元格', + expandTable: '可展开表格', + fixedHeight: '定高/头部自定义', + footerTable: '表尾行合计', + editCellTable: '可编辑单元格', + editRowTable: '可编辑行', + authColumn: '权限列', + resizeParentHeightTable: '继承父元素高度', + }, +}; diff --git a/src/locales/lang/zh-CN/sys.ts b/src/locales/lang/zh-CN/sys.ts new file mode 100644 index 0000000..8dad1cf --- /dev/null +++ b/src/locales/lang/zh-CN/sys.ts @@ -0,0 +1,98 @@ +export default { + api: { + operationFailed: '操作失败', + errorTip: '错误提示', + errorMessage: '操作失败,系统异常!', + timeoutMessage: '登录超时,请重新登录!', + apiTimeoutMessage: '接口请求超时,请刷新页面重试!', + apiRequestFailed: '请求出错,请稍候重试', + networkException: '网络异常', + networkExceptionMsg: '网络异常,请检查您的网络连接是否正常!', + + errMsg401: '用户没有权限(令牌、用户名、密码错误)!', + errMsg403: '用户得到授权,但是访问是被禁止的。!', + errMsg404: '网络请求错误,未找到该资源!', + errMsg405: '网络请求错误,请求方法未允许!', + errMsg408: '网络请求超时!', + errMsg500: '服务器错误,请联系管理员!', + errMsg501: '网络未实现!', + errMsg502: '网络错误!', + errMsg503: '服务不可用,服务器暂时过载或维护!', + errMsg504: '网络超时!', + errMsg505: 'http版本不支持该请求!', + }, + app: { logoutTip: '温馨提醒', logoutMessage: '是否确认退出系统?', menuLoading: '菜单加载中...' }, + errorLog: { + tableTitle: '错误日志列表', + tableColumnType: '类型', + tableColumnDate: '时间', + tableColumnFile: '文件', + tableColumnMsg: '错误信息', + tableColumnStackMsg: 'stack信息', + + tableActionDesc: '详情', + + modalTitle: '错误详情', + + fireVueError: '点击触发vue错误', + fireResourceError: '点击触发资源加载错误', + fireAjaxError: '点击触发ajax错误', + + enableMessage: '只在`/src/settings/projectSetting.ts` 内的useErrorHandle=true时生效.', + }, + exception: { + backLogin: '返回登录', + backHome: '返回首页', + subTitle403: '抱歉,您无权访问此页面。', + subTitle404: '抱歉,您访问的页面不存在。', + subTitle500: '抱歉,服务器报告错误。', + noDataTitle: '当前页无数据', + networkErrorTitle: '网络错误', + networkErrorSubTitle: '抱歉,您的网络连接已断开,请检查您的网络!', + }, + lock: { + unlock: '点击解锁', + alert: '锁屏密码错误', + backToLogin: '返回登录', + entry: '进入系统', + placeholder: '请输入锁屏密码或者用户密码', + }, + login: { + backSignIn: '返回', + signInFormTitle: '登录', + mobileSignInFormTitle: '手机登录', + qrSignInFormTitle: '二维码登录', + signUpFormTitle: '注册', + forgetFormTitle: '重置密码', + + signInTitle: '开箱即用的中后台管理系统', + signInDesc: '输入您的个人详细信息开始使用!', + policy: '我同意xxx隐私政策', + scanSign: `扫码后点击"确认",即可完成登录`, + + loginButton: '登录', + registerButton: '注册', + rememberMe: '记住我', + forgetPassword: '忘记密码?', + otherSignIn: '其他登录方式', + + // notify + loginSuccessTitle: '登录成功', + loginSuccessDesc: '欢迎回来', + + // placeholder + accountPlaceholder: '请输入账号', + passwordPlaceholder: '请输入密码', + smsPlaceholder: '请输入验证码', + mobilePlaceholder: '请输入手机号码', + policyPlaceholder: '勾选后才能注册', + diffPwd: '两次输入密码不一致', + + userName: '账号', + password: '密码', + confirmPassword: '确认密码', + email: '邮箱', + smsCode: '短信验证码', + mobile: '手机号码', + }, +}; diff --git a/src/locales/lang/zh_CN.ts b/src/locales/lang/zh_CN.ts new file mode 100644 index 0000000..00a4547 --- /dev/null +++ b/src/locales/lang/zh_CN.ts @@ -0,0 +1,10 @@ +import { genMessage } from '../helper'; +import antdLocale from 'ant-design-vue/es/locale/zh_CN'; + +const modules = import.meta.glob('./zh-CN/**/*.ts', { eager: true }); +export default { + message: { + ...genMessage(modules, 'zh-CN'), + antdLocale, + }, +}; diff --git a/src/locales/setupI18n.ts b/src/locales/setupI18n.ts new file mode 100644 index 0000000..a989f0d --- /dev/null +++ b/src/locales/setupI18n.ts @@ -0,0 +1,60 @@ +import type { App } from 'vue'; +import type { I18n, I18nOptions } from 'vue-i18n'; + +import { createI18n } from 'vue-i18n'; +import { setHtmlPageLang, setLoadLocalePool } from './helper'; +import { localeSetting } from '/@/settings/localeSetting'; +import { useLocaleStoreWithOut } from '/@/store/modules/locale'; +import { useGlobSetting } from '../hooks/setting'; + +const { fallback, availableLocales } = localeSetting; + +const globSetting = useGlobSetting(); + +export let i18n: ReturnType; + +async function createI18nOptions(): Promise { + const localeStore = useLocaleStoreWithOut(); + const locale = localeStore.getLocale; + + // const defaultLocal = await import(`./lang/${locale}.ts`); + + // const message = defaultLocal.default?.message ?? {}; + + let message = {}; + try { + const responseStream = await fetch(globSetting.apiUrl + '/language/main-language-json'); + const { data } = await responseStream.json(); + localeStore.setLanguageJson(data); + message = data[locale]; + } catch { + console.error('从服务器获取翻译数据出错,请联系管理员!'); + // throw new Error('从服务器获取翻译数据出错,请联系管理员!'); + } + + setHtmlPageLang(locale); + setLoadLocalePool((loadLocalePool) => { + loadLocalePool.push(locale); + }); + + return { + legacy: false, + locale, + fallbackLocale: fallback, + messages: { + [locale]: message, + }, + availableLocales: availableLocales, + sync: true, //If you don’t want to inherit locale from global scope, you need to set sync of i18n component option to false. + silentTranslationWarn: true, // true - warning off + missingWarn: false, //missign flag waring + silentFallbackWarn: true, + }; +} + +// setup i18n instance with glob +export async function setupI18n(app: App) { + const options = await createI18nOptions(); + i18n = createI18n(options) as I18n; + app.use(i18n); +} diff --git a/src/locales/useLocale.ts b/src/locales/useLocale.ts new file mode 100644 index 0000000..e7633e7 --- /dev/null +++ b/src/locales/useLocale.ts @@ -0,0 +1,71 @@ +/** + * Multi-language related operations + */ +import type { LocaleType } from '/#/config'; + +import { i18n } from './setupI18n'; +import { useLocaleStoreWithOut } from '/@/store/modules/locale'; +import { unref, computed } from 'vue'; +import { loadLocalePool, setHtmlPageLang } from './helper'; + +// interface LangModule { +// message: Recordable; +// dateLocale: Recordable; +// dateLocaleName: string; +// } + +function setI18nLanguage(locale: LocaleType) { + const localeStore = useLocaleStoreWithOut(); + + if (i18n.mode === 'legacy') { + i18n.global.locale = locale; + } else { + (i18n.global.locale as any).value = locale; + } + localeStore.setLocaleInfo({ locale }); + setHtmlPageLang(locale); +} + +export function useLocale() { + const localeStore = useLocaleStoreWithOut(); + const getLocale = computed(() => localeStore.getLocale); + const getShowLocalePicker = computed(() => localeStore.getShowPicker); + + const getAntdLocale = computed((): any => { + return i18n.global.getLocaleMessage(unref(getLocale))?.antdLocale ?? {}; + }); + + // Switching the language will change the locale of useI18n + // And submit to configuration modification + async function changeLocale(locale: LocaleType) { + const globalI18n = i18n.global; + const currentLocale = unref(globalI18n.locale); + if (currentLocale === locale) { + return locale; + } + + if (loadLocalePool.includes(locale)) { + setI18nLanguage(locale); + return locale; + } + // const langModule = ((await import(`./lang/${locale}.ts`)) as any).default as LangModule; + // if (!langModule) return; + + // const { message } = langModule; + + const message = localeStore.getLanguageJson[locale]; + + globalI18n.setLocaleMessage(locale, message); + loadLocalePool.push(locale); + + setI18nLanguage(locale); + return locale; + } + + return { + getLocale, + getShowLocalePicker, + changeLocale, + getAntdLocale, + }; +} diff --git a/src/logics/error-handle/index.ts b/src/logics/error-handle/index.ts new file mode 100644 index 0000000..b3f0a5d --- /dev/null +++ b/src/logics/error-handle/index.ts @@ -0,0 +1,236 @@ +/** + * Used to configure the global error handling function, which can monitor vue errors, script errors, static resource errors and Promise errors + */ + +import type { ErrorLogInfo } from '/#/store'; + +import { useErrorLogStoreWithOut } from '/@/store/modules/errorLog'; + +import { ErrorTypeEnum } from '/@/enums/exceptionEnum'; +import { App } from 'vue'; +import projectSetting from '/@/settings/projectSetting'; +import VueKeycloakJs from '@dsb-norge/vue-keycloak-js'; +import { useUserStore } from '/@/store/modules/user'; +import { notification } from 'ant-design-vue'; +import { t } from '/@/hooks/web/useI18n'; + +/** + * Handling error stack information + * @param error + */ +function processStackMsg(error: Error) { + if (!error.stack) { + return ''; + } + let stack = error.stack + .replace(/\n/gi, '') // Remove line breaks to save the size of the transmitted content + .replace(/\bat\b/gi, '@') // At in chrome, @ in ff + .split('@') // Split information with @ + .slice(0, 9) // The maximum stack length (Error.stackTraceLimit = 10), so only take the first 10 + .map((v) => v.replace(/^\s*|\s*$/g, '')) // Remove extra spaces + .join('~') // Manually add separators for later display + .replace(/\?[^:]+/gi, ''); // Remove redundant parameters of js file links (?x=1 and the like) + const msg = error.toString(); + if (stack.indexOf(msg) < 0) { + stack = msg + '@' + stack; + } + return stack; +} + +/** + * get comp name + * @param vm + */ +function formatComponentName(vm: any) { + if (vm.$root === vm) { + return { + name: 'root', + path: 'root', + }; + } + + const options = vm.$options as any; + if (!options) { + return { + name: 'anonymous', + path: 'anonymous', + }; + } + const name = options.name || options._componentTag; + return { + name: name, + path: options.__file, + }; +} + +/** + * Configure Vue error handling function + */ + +function vueErrorHandler(err: Error, vm: any, info: string) { + const errorLogStore = useErrorLogStoreWithOut(); + const { name, path } = formatComponentName(vm); + errorLogStore.addErrorLogInfo({ + type: ErrorTypeEnum.VUE, + name, + file: path, + message: err.message, + stack: processStackMsg(err), + detail: info, + url: window.location.href, + }); +} + +/** + * Configure script error handling function + */ +export function scriptErrorHandler( + event: Event | string, + source?: string, + lineno?: number, + colno?: number, + error?: Error, +) { + if (event === 'Script error.' && !source) { + return false; + } + const errorInfo: Partial = {}; + colno = colno || (window.event && (window.event as any).errorCharacter) || 0; + errorInfo.message = event as string; + if (error?.stack) { + errorInfo.stack = error.stack; + } else { + errorInfo.stack = ''; + } + const name = source ? source.slice(source.lastIndexOf('/') + 1) : 'script'; + const errorLogStore = useErrorLogStoreWithOut(); + errorLogStore.addErrorLogInfo({ + type: ErrorTypeEnum.SCRIPT, + name: name, + file: source as string, + detail: 'lineno' + lineno, + url: window.location.href, + ...(errorInfo as Pick), + }); + return true; +} + +/** + * Configure Promise error handling function + */ +function registerPromiseErrorHandler() { + window.addEventListener( + 'unhandledrejection', + function (event) { + const errorLogStore = useErrorLogStoreWithOut(); + errorLogStore.addErrorLogInfo({ + type: ErrorTypeEnum.PROMISE, + name: 'Promise Error!', + file: 'none', + detail: 'promise error!', + url: window.location.href, + stack: 'promise error!', + message: event.reason, + }); + }, + true, + ); +} + +/** + * Configure monitoring resource loading error handling function + */ +function registerResourceErrorHandler() { + // Monitoring resource loading error(img,script,css,and jsonp) + window.addEventListener( + 'error', + function (e: Event) { + const target = e.target ? e.target : (e.srcElement as any); + const errorLogStore = useErrorLogStoreWithOut(); + errorLogStore.addErrorLogInfo({ + type: ErrorTypeEnum.RESOURCE, + name: 'Resource Error!', + file: (e.target || ({} as any)).currentSrc, + detail: JSON.stringify({ + tagName: target.localName, + html: target.outerHTML, + type: e.type, + }), + url: window.location.href, + stack: 'resource is not found', + message: (e.target || ({} as any)).localName + ' is load error', + }); + }, + true, + ); +} + +/** + * Configure global error handling + * @param app + */ +export function setupErrorHandle(app: App) { + const { useErrorHandle } = projectSetting; + if (!useErrorHandle) { + return; + } + // Vue exception monitoring; + app.config.errorHandler = vueErrorHandler; + + // script error + window.onerror = scriptErrorHandler; + + // promise exception + registerPromiseErrorHandler(); + + // Static resource exception + registerResourceErrorHandler(); +} + +/** + * Configure global error handling + * @param app + */ +export function setupKeycloak(app: App) { + const initOptions = { + url: 'http://192.168.0.124:8866/auth', + realm: 'vue', + clientId: 'xjrsoft-vue3', + onLoad: 'login-required', + checkLoginIframe: false, + }; + app.use(VueKeycloakJs, { + logout: { + url: initOptions.url, + }, + init: { + checkLoginIframe: false, // 具体配置参考 https://www.npmjs.com/package/@dsb-norge/vue-keycloak-js?activeTab=readme + onLoad: initOptions.onLoad, + }, + config: { + url: initOptions.url, + realm: initOptions.realm, + clientId: initOptions.clientId, + }, + onReady: async (keycloak, _) => { + // console.log(keycloak); + const userStore = useUserStore(); + const userInfo = await userStore.keycloakLogin({ + keycloakToken: keycloak.token, + deviceType: 0, //pc-0,app-1 + mode: 'none', //不要默认的错误提示 + }); + app.provide('keycloak', keycloak); + if (userInfo) { + notification.success({ + message: t('登录成功'), + description: `${t('欢迎回来')}: ${userInfo.name}`, + duration: 3, + }); + } + }, + onInitError: (eee) => { + console.log(eee); + }, + }); +} diff --git a/src/logics/initAppConfig.ts b/src/logics/initAppConfig.ts new file mode 100644 index 0000000..a186450 --- /dev/null +++ b/src/logics/initAppConfig.ts @@ -0,0 +1,84 @@ +/** + * Application configuration + */ +import type { ProjectConfig } from '/#/config'; + +import { PROJ_CFG_KEY } from '/@/enums/cacheEnum'; +import projectSetting from '/@/settings/projectSetting'; + +import { updateHeaderBgColor, updateSidebarBgColor } from '/@/logics/theme/updateBackground'; +import { updateColorWeak } from '/@/logics/theme/updateColorWeak'; +import { updateGrayMode } from '/@/logics/theme/updateGrayMode'; +import { updateDarkTheme } from '/@/logics/theme/dark'; +import { changeTheme } from '/@/logics/theme'; + +import { useAppStore } from '/@/store/modules/app'; +import { useLocaleStore } from '/@/store/modules/locale'; + +import { getCommonStoragePrefix, getStorageShortName } from '/@/utils/env'; + +import { primaryColor } from '../../build/config/themeConfig'; +import { Persistent } from '/@/utils/cache/persistent'; +import { deepMerge } from '/@/utils'; +import { ThemeEnum } from '/@/enums/appEnum'; + +// Initial project configuration +export function initAppConfigStore() { + const localeStore = useLocaleStore(); + const appStore = useAppStore(); + let projCfg: ProjectConfig = Persistent.getLocal(PROJ_CFG_KEY) as ProjectConfig; + projCfg = deepMerge(projectSetting, projCfg || {}); + const darkMode = appStore.getDarkMode; + const { + colorWeak, + grayMode, + themeColor, + + headerSetting: { bgColor: headerBgColor } = {}, + menuSetting: { bgColor } = {}, + } = projCfg; + try { + if (themeColor && themeColor !== primaryColor) { + changeTheme(themeColor); + } + + grayMode && updateGrayMode(grayMode); + colorWeak && updateColorWeak(colorWeak); + } catch (error) { + console.log(error); + } + appStore.setProjectConfig(projCfg); + + // init dark mode + updateDarkTheme(darkMode); + if (darkMode === ThemeEnum.DARK) { + updateHeaderBgColor(); + updateSidebarBgColor(); + } else { + headerBgColor && updateHeaderBgColor(headerBgColor); + bgColor && updateSidebarBgColor(bgColor); + } + // init store + localeStore.initLocale(); + + setTimeout(() => { + clearObsoleteStorage(); + }, 16); +} + +/** + * As the version continues to iterate, there will be more and more cache keys stored in localStorage. + * This method is used to delete useless keys + */ +export function clearObsoleteStorage() { + const commonPrefix = getCommonStoragePrefix(); + const shortPrefix = getStorageShortName(); + + [localStorage, sessionStorage].forEach((item: Storage) => { + Object.keys(item).forEach((key) => { + if (key && key.startsWith(commonPrefix) && !key.startsWith(shortPrefix)) { + item.removeItem(key); + } + }); + }); +} diff --git a/src/logics/mitt/routeChange.ts b/src/logics/mitt/routeChange.ts new file mode 100644 index 0000000..864828e --- /dev/null +++ b/src/logics/mitt/routeChange.ts @@ -0,0 +1,31 @@ +/** + * Used to monitor routing changes to change the status of menus and tabs. There is no need to monitor the route, because the route status change is affected by the page rendering time, which will be slow + */ + +import mitt from '/@/utils/mitt'; +import type { RouteLocationNormalized } from 'vue-router'; +import { getRawRoute } from '/@/utils'; + +const emitter = mitt(); + +const key = Symbol(); + +let lastChangeTab: RouteLocationNormalized; + +export function setRouteChange(lastChangeRoute: RouteLocationNormalized) { + const r = getRawRoute(lastChangeRoute); + emitter.emit(key, r); + lastChangeTab = r; +} + +export function listenerRouteChange( + callback: (route: RouteLocationNormalized) => void, + immediate = true, +) { + emitter.on(key, callback); + immediate && lastChangeTab && callback(lastChangeTab); +} + +export function removeTabChangeListener() { + emitter.clear(); +} diff --git a/src/logics/theme/dark.ts b/src/logics/theme/dark.ts new file mode 100644 index 0000000..b4e76f1 --- /dev/null +++ b/src/logics/theme/dark.ts @@ -0,0 +1,24 @@ +import { darkCssIsReady, loadDarkThemeCss } from 'vite-vue-plugin-theme/es/client'; +import { addClass, hasClass, removeClass } from '/@/utils/domUtils'; + +export async function updateDarkTheme(mode: string | null = 'light') { + const htmlRoot = document.getElementById('htmlRoot'); + if (!htmlRoot) { + return; + } + const hasDarkClass = hasClass(htmlRoot, 'dark'); + if (mode === 'dark') { + if (import.meta.env.PROD && !darkCssIsReady) { + await loadDarkThemeCss(); + } + htmlRoot.setAttribute('data-theme', 'dark'); + if (!hasDarkClass) { + addClass(htmlRoot, 'dark'); + } + } else { + htmlRoot.setAttribute('data-theme', 'light'); + if (hasDarkClass) { + removeClass(htmlRoot, 'dark'); + } + } +} diff --git a/src/logics/theme/index.ts b/src/logics/theme/index.ts new file mode 100644 index 0000000..0ee2ba3 --- /dev/null +++ b/src/logics/theme/index.ts @@ -0,0 +1,17 @@ +import { getThemeColors, generateColors } from '../../../build/config/themeConfig'; + +import { replaceStyleVariables } from 'vite-vue-plugin-theme/es/client'; +import { mixLighten, mixDarken, tinycolor } from 'vite-vue-plugin-theme/es/colorUtils'; + +export async function changeTheme(color: string) { + const colors = generateColors({ + mixDarken, + mixLighten, + tinycolor, + color, + }); + + return await replaceStyleVariables({ + colorVariables: [...getThemeColors(color), ...colors], + }); +} diff --git a/src/logics/theme/updateBackground.ts b/src/logics/theme/updateBackground.ts new file mode 100644 index 0000000..3f15c90 --- /dev/null +++ b/src/logics/theme/updateBackground.ts @@ -0,0 +1,75 @@ +import { colorIsDark, lighten, darken } from '/@/utils/color'; +import { useAppStore } from '/@/store/modules/app'; +import { ThemeEnum } from '/@/enums/appEnum'; +import { setCssVar } from './util'; + +const HEADER_BG_COLOR_VAR = '--header-bg-color'; +const HEADER_BG_HOVER_COLOR_VAR = '--header-bg-hover-color'; +const HEADER_MENU_ACTIVE_BG_COLOR_VAR = '--header-active-menu-bg-color'; + +const SIDER_DARK_BG_COLOR = '--sider-dark-bg-color'; +const SIDER_DARK_DARKEN_BG_COLOR = '--sider-dark-darken-bg-color'; +const SIDER_LIGHTEN_BG_COLOR = '--sider-dark-lighten-bg-color'; + +/** + * Change the background color of the top header + * @param color + */ +export function updateHeaderBgColor(color?: string) { + const appStore = useAppStore(); + const darkMode = appStore.getDarkMode === ThemeEnum.DARK; + if (!color) { + if (darkMode) { + color = '#151515'; + } else { + color = appStore.getHeaderSetting.bgColor; + } + } + // bg color + setCssVar(HEADER_BG_COLOR_VAR, color); + + // hover color + const hoverColor = lighten(color!, 6); + setCssVar(HEADER_BG_HOVER_COLOR_VAR, hoverColor); + setCssVar(HEADER_MENU_ACTIVE_BG_COLOR_VAR, hoverColor); + + // Determine the depth of the color value and automatically switch the theme + const isDark = colorIsDark(color!); + + appStore.setProjectConfig({ + headerSetting: { + theme: isDark || darkMode ? ThemeEnum.DARK : ThemeEnum.LIGHT, + }, + }); +} + +/** + * Change the background color of the left menu + * @param color bg color + */ +export function updateSidebarBgColor(color?: string) { + const appStore = useAppStore(); + + // if (!isHexColor(color)) return; + const darkMode = appStore.getDarkMode === ThemeEnum.DARK; + if (!color) { + if (darkMode) { + color = '#212121'; + } else { + color = appStore.getMenuSetting.bgColor; + } + } + setCssVar(SIDER_DARK_BG_COLOR, color); + setCssVar(SIDER_DARK_DARKEN_BG_COLOR, darken(color!, 6)); + setCssVar(SIDER_LIGHTEN_BG_COLOR, lighten(color!, 5)); + + // only #ffffff is light + // Only when the background color is #fff, the theme of the menu will be changed to light + const isLight = ['#fff', '#ffffff'].includes(color!.toLowerCase()); + + appStore.setProjectConfig({ + menuSetting: { + theme: isLight && !darkMode ? ThemeEnum.LIGHT : ThemeEnum.DARK, + }, + }); +} diff --git a/src/logics/theme/updateColorWeak.ts b/src/logics/theme/updateColorWeak.ts new file mode 100644 index 0000000..8a0e64a --- /dev/null +++ b/src/logics/theme/updateColorWeak.ts @@ -0,0 +1,9 @@ +import { toggleClass } from './util'; + +/** + * Change the status of the project's color weakness mode + * @param colorWeak + */ +export function updateColorWeak(colorWeak: boolean) { + toggleClass(colorWeak, 'color-weak', document.documentElement); +} diff --git a/src/logics/theme/updateGrayMode.ts b/src/logics/theme/updateGrayMode.ts new file mode 100644 index 0000000..0fd16fe --- /dev/null +++ b/src/logics/theme/updateGrayMode.ts @@ -0,0 +1,9 @@ +import { toggleClass } from './util'; + +/** + * Change project gray mode status + * @param gray + */ +export function updateGrayMode(gray: boolean) { + toggleClass(gray, 'gray-mode', document.documentElement); +} diff --git a/src/logics/theme/util.ts b/src/logics/theme/util.ts new file mode 100644 index 0000000..30aef37 --- /dev/null +++ b/src/logics/theme/util.ts @@ -0,0 +1,11 @@ +const docEle = document.documentElement; +export function toggleClass(flag: boolean, clsName: string, target?: HTMLElement) { + const targetEl = target || document.body; + let { className } = targetEl; + className = className.replace(clsName, ''); + targetEl.className = flag ? `${className} ${clsName} ` : className; +} + +export function setCssVar(prop: string, val: any, dom = docEle) { + dom.style.setProperty(prop, val); +} diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..462001f --- /dev/null +++ b/src/main.ts @@ -0,0 +1,83 @@ +import 'virtual:windi-base.css'; +import 'virtual:windi-components.css'; +import 'virtual:windi-utilities.css'; +// Register icon sprite +import 'virtual:svg-icons-register'; +import App from './App.vue'; +import { createApp } from 'vue'; +import { initAppConfigStore } from '/@/logics/initAppConfig'; +import { setupErrorHandle } from '/@/logics/error-handle'; +import { router, setupRouter } from '/@/router'; +import { setupRouterGuard } from '/@/router/guard'; +import { setupStore } from '/@/store'; +import { setupGlobDirectives } from '/@/directives'; +import { setupI18n } from '/@/locales/setupI18n'; +import { registerGlobComp } from '/@/components/registerGlobComp'; +import axios from 'axios'; +import VueGridLayout from 'vue-grid-layout'; +import Antd from 'ant-design-vue'; +import { Modal } from 'ant-design-vue'; +import 'ant-design-vue/dist/antd.less'; +import '/@/design/index.less'; +//如果需要使用葡萄城报表 放开代码注释 +// import { Core } from '@grapecity/activereports'; + +async function bootstrap() { + const app = createApp(App); + // Configure store + // 配置 store + setupStore(app); + + // Initialize internal system configuration + // 初始化内部系统配置 + initAppConfigStore(); + + // Register global components + // 注册全局组件 + registerGlobComp(app); + + // Multilingual configuration + // 多语言配置 + // Asynchronous case: language files may be obtained from the server side + // 异步案例:语言文件可能从服务器端获取 + await setupI18n(app); + + // Configure routing + // 配置路由 + setupRouter(app); + + // router-guard + // 路由守卫 + setupRouterGuard(router); + + // Register global directive + // 注册全局指令 + setupGlobDirectives(app); + + // Configure global error handling + // 配置全局错误处理 + setupErrorHandle(app); + + //keycloak + // setupKeycloak(app); + + //全局挂载axios + app.config.globalProperties.$axios = axios; + //取消点击esc关闭弹窗 + Modal.props.keyboard.default = false; + + // https://next.router.vuejs.org/api/#isready + // await router.isReady(); + app.use(Antd); + + app.use(VueGridLayout); + + //如果需要使用葡萄城报表 放开代码注释 + //这里是viewer的key + //详情参考 :https://demo.grapecity.com.cn/activereportsjs/docs/GettingStarted/Licensing + // Core.setLicenseKey('YOUR LICENSE KEY GOES HERE'); + + app.mount('#app'); +} + +bootstrap(); diff --git a/src/router/constant.ts b/src/router/constant.ts new file mode 100644 index 0000000..c8537dc --- /dev/null +++ b/src/router/constant.ts @@ -0,0 +1,32 @@ +export const REDIRECT_NAME = 'Redirect'; + +export const PARENT_LAYOUT_NAME = 'ParentLayout'; + +export const PAGE_NOT_FOUND_NAME = 'PageNotFound'; + +export const EXCEPTION_COMPONENT = () => import('/@/views/sys/exception/Exception.vue'); + +/** + * @description: 平台 工作平台 layout + */ +export const PLATFORM_WORKBENCH_LAYOUT = () => import('/@/layouts/platform/index.vue'); +/** + * @description: 平台 layout + */ +export const PLATFORM_LAYOUT = () => import('/@/layouts/platform/platform.vue'); +/** + * @description: 平台 子页面 layout + */ +export const DEFAULT_PLATFORM_LAYOUT = () => import('/@/layouts/platform/default.vue'); + +/** + * @description: parent-layout + */ +export const getParentLayout = (_name?: string) => { + return () => + new Promise((resolve) => { + resolve({ + name: PARENT_LAYOUT_NAME, + }); + }); +}; diff --git a/src/router/guard/index.ts b/src/router/guard/index.ts new file mode 100644 index 0000000..fbb894e --- /dev/null +++ b/src/router/guard/index.ts @@ -0,0 +1,29 @@ +import type { Router } from 'vue-router'; +import { useTransitionSetting } from '/@/hooks/setting/useTransitionSetting'; +import { unref } from 'vue'; +import nProgress from 'nprogress'; + +// Don't change the order of creation +export function setupRouterGuard(_router: Router) {} + +/** + * Used to close the message instance when the route is switched + * @param router + */ +export function createMessageGuard(_router: Router) {} + +export function createProgressGuard(router: Router) { + const { getOpenNProgress } = useTransitionSetting(); + router.beforeEach(async (to) => { + if (to.meta.loaded) { + return true; + } + unref(getOpenNProgress) && nProgress.start(); + return true; + }); + + router.afterEach(async () => { + unref(getOpenNProgress) && nProgress.done(); + return true; + }); +} diff --git a/src/router/index.ts b/src/router/index.ts new file mode 100644 index 0000000..70df515 --- /dev/null +++ b/src/router/index.ts @@ -0,0 +1,41 @@ +import type { RouteRecordRaw } from 'vue-router'; +import type { App } from 'vue'; + +import { createRouter, createWebHashHistory } from 'vue-router'; +import { basicRoutes } from './routes/platform'; + +// 白名单应该包含基本静态路由 +const WHITE_NAME_LIST: string[] = []; +const getRouteNames = (array: any[]) => + array.forEach((item) => { + WHITE_NAME_LIST.push(item.name); + getRouteNames(item.children || []); + }); +getRouteNames(basicRoutes); + +// app router +// 创建一个可以被 Vue 应用程序使用的路由实例 +export const router = createRouter({ + // 创建一个 hash 历史记录。 + history: createWebHashHistory(import.meta.env.VITE_PUBLIC_PATH), + // 应该添加到路由的初始路由列表。 + routes: basicRoutes as unknown as RouteRecordRaw[], + // 是否应该禁止尾部斜杠。默认为假 + strict: true, + scrollBehavior: () => ({ left: 0, top: 0 }), +}); + +// reset router +export function resetRouter() { + router.getRoutes().forEach((route) => { + const { name } = route; + if (name && !WHITE_NAME_LIST.includes(name as string)) { + router.hasRoute(name) && router.removeRoute(name); + } + }); +} + +// config router +export function setupRouter(app: App) { + app.use(router); +} diff --git a/src/router/routes/application.ts b/src/router/routes/application.ts new file mode 100644 index 0000000..4f1ab00 --- /dev/null +++ b/src/router/routes/application.ts @@ -0,0 +1,454 @@ +import type { AppRouteRecordRaw } from '/@/router/types'; +import { t } from '/@/hooks/web/useI18n'; +import { + REDIRECT_NAME, + PLATFORM_LAYOUT, + EXCEPTION_COMPONENT, + PAGE_NOT_FOUND_NAME, + DEFAULT_PLATFORM_LAYOUT, + PLATFORM_WORKBENCH_LAYOUT, +} from '/@/router/constant'; +// 404 on a page +import FrameLayout from '/@/views/platform/application/FramePage.vue'; +export const PAGE_NOT_FOUND_ROUTE: AppRouteRecordRaw = { + path: '/:path(.*)*', + name: PAGE_NOT_FOUND_NAME + '123', + component: DEFAULT_PLATFORM_LAYOUT, + meta: { + title: 'ErrorPage', + hideBreadcrumb: true, + hideMenu: true, + }, + children: [ + { + path: '/:path(.*)*', + name: PAGE_NOT_FOUND_NAME, + component: EXCEPTION_COMPONENT, + meta: { + title: 'ErrorPage', + hideBreadcrumb: true, + hideMenu: true, + }, + }, + ], +}; + +export const REDIRECT_ROUTE: AppRouteRecordRaw = { + path: '/redirect', + component: DEFAULT_PLATFORM_LAYOUT, + name: 'RedirectTo', + meta: { + title: REDIRECT_NAME, + hideBreadcrumb: true, + hideMenu: true, + }, + children: [ + { + path: '/redirect/:path(.*)', + name: REDIRECT_NAME, + component: () => import('/@/views/sys/redirect/index.vue'), + meta: { + title: REDIRECT_NAME, + hideBreadcrumb: true, + }, + }, + ], +}; + +export const ERROR_LOG_ROUTE: AppRouteRecordRaw = { + path: '/error-log', + name: 'ErrorLog', + component: DEFAULT_PLATFORM_LAYOUT, + redirect: '/error-log/list', + meta: { + title: 'ErrorLog', + hideBreadcrumb: true, + hideChildrenInMenu: true, + }, + children: [ + { + path: 'list', + name: 'ErrorLogList', + component: () => import('/@/views/sys/error-log/index.vue'), + meta: { + title: t('错误日志列表'), + hideBreadcrumb: true, + currentActiveMenu: '/error-log', + }, + }, + ], +}; +// TODO 添加应用路由 +export const IframeComponentTypeString = 'iframe'; +export const ApplicationMenuList = [ + { + title: '电脑端页面', + icon: 'platform-icon1', + url: '/application/designForm', + name: 'ApplicationFormDesign', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'form/release/index.vue', + path: 'designForm', + meta: { + affix: false, + title: t('电脑端页面'), + }, + }, + { + title: '移动端页面', + icon: 'platform-icon2', + url: '/application/mobileDesign', + name: 'ApplicationMobileDesign', + path: 'mobileDesign', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'mobileDesign/dataDesign/index.vue', + meta: { + affix: false, + title: t('移动端页面'), + }, + }, + { + title: '在线接口', + icon: 'platform-icon3', + url: '/application/magicDesign', + name: 'ApplicationMagicDesign', + componentType: IframeComponentTypeString, + path: 'magicDesign', + // componentPath: '', + component: null, + meta: { + iframeSrc: 'http://192.168.0.108:8080/magic/web/index.html?Authorization=#{token}', + affix: false, + title: t('在线接口'), + }, + }, + { + title: '脚本管理', + icon: 'platform-icon4', + url: '/application/scriptDemo', + name: 'ApplicationScriptDemo', + path: 'scriptDemo', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'dataconfig/scriptDemo/index.vue', + meta: { + affix: false, + title: t('脚本管理'), + }, + }, + { + title: '数据库管理', + icon: 'platform-icon5', + url: '/application/databaselink', + name: 'ApplicationDatabaselink', + path: 'databaselink', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'dataconfig/databaselink/index.vue', + meta: { + affix: false, + title: t('数据库管理'), + }, + }, + { + title: '外部系统接口', + icon: 'platform-icon6', + url: '/application/loginSetting', + name: 'ApplicationLoginSetting', + path: 'loginSetting', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'system/loginSetting/loginInfo.vue', + meta: { + affix: false, + title: t('外部系统接口'), + }, + }, + { + title: '流程服务', + icon: 'platform-icon7', + url: '/application/workflowDesign', + name: 'ApplicationWorkflowDesign', + path: 'workflowDesign', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'workflow/design/index.vue', + meta: { + affix: false, + title: t('流程服务'), + }, + }, + { + title: '规则编排', + icon: 'platform-icon8', + url: '/application/ruleProcess', + name: 'ApplicationRuleProcess', + path: 'ruleProcess', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'ruleProcess/index.vue', + meta: { + affix: false, + title: t('规则编排'), + }, + }, + { + title: '数据权限', + icon: 'platform-icon9', + url: '/application/authorityList', + name: 'ApplicationAuthorityList', + path: 'authorityList', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'system/dataAuthority/index.vue', + meta: { + affix: false, + title: t('数据权限'), + }, + }, + { + title: '打印模板', + icon: 'platform-icon10', + url: '/application/printTemplate', + name: 'ApplicationPrintTemplate', + path: 'printTemplate', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'generator/print/index.vue', + meta: { + affix: false, + title: t('打印设计'), + }, + }, + { + title: '组织架构', + icon: 'platform-icon11', + url: '/application/oragin', + name: 'ApplicatioOragin', + path: 'oragin', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'system/user/index.vue', + meta: { + affix: false, + title: t('用户管理'), + }, + }, + { + title: '定时任务', + icon: 'platform-icon12', + url: '/application/xjrsoftjob', + name: 'ApplicationXjrsoftjob', + path: 'xjrsoftjob', + // componentPath: '', + component: null, + componentType: IframeComponentTypeString, + meta: { + affix: false, + title: t('定时任务'), + iframeSrc: 'http://192.168.0.124:7700/#/welcome?appName=xjrsoft-boot&password=123456', + }, + }, + { + title: '消息模版', + icon: 'platform-icon13', + url: '/application/messageTemplate', + name: 'ApplicationMessageTemplate', + path: 'messageTemplate', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'system/messageTemplate/index.vue', + meta: { + affix: false, + title: t('消息模版'), + }, + }, + { + title: '设置', + icon: 'platform-icon14', + url: '/application/strutureInfo', + name: 'ApplicationStrutureInfo', + path: 'strutureInfo', + componentType: '', + component: () => import('/@/views/platform/demo/Index.vue'), + // componentPath: 'system/logoSetting/strutureInfo.vue', + meta: { + affix: false, + title: t('设置'), + }, + }, +]; +export const PlatformMenuList1 = [ + { + title: '工作台', + icon: 'platform-icon1-1', + activeIcon: 'platform-icon1-2', + url: '/workbench/index', + name: 'PlatformWorkbench', + path: 'index', + componentType: '', + component: () => import('/@/views/platform/workbench/index.vue'), + // componentPath: 'platform/workbench/index.vue', + meta: { + title: t('工作台'), + affix: true, + isHide: true, + }, + }, +]; +export const PlatformMenuList2 = [ + { + title: '应用', + icon: 'platform-icon2-1', + activeIcon: 'platform-icon2-2', + url: '/platform/application', + name: 'PlatformApplication', + path: 'application', + componentType: '', + component: () => import('/@/views/platform/workbench/Application.vue'), + // componentPath: 'platform/workbench/Application.vue', + meta: { + title: t('应用'), + affix: false, + isHide: true, + }, + }, + { + title: '模版', + icon: 'platform-icon3-1', + activeIcon: 'platform-icon3-2', + url: '/platform/template', + name: 'PlatformTemplate', + path: 'template', + componentType: '', + component: () => import('/@/views/platform/workbench/Template.vue'), + // componentPath: 'platform/workbench/Template.vue', + meta: { + title: t('模版'), + affix: false, + isHide: true, + }, + }, + { + title: '日志', + icon: 'platform-icon4-1', + activeIcon: 'platform-icon4-2', + url: '/platform/log', + name: 'PlatformLog', + path: 'log', + componentType: '', + component: () => import('/@/views/platform/workbench/Log.vue'), + // componentPath: 'platform/workbench/Log.vue', + meta: { + title: t('日志'), + affix: false, + isHide: true, + }, + }, + { + title: '开发者管理', + icon: 'platform-icon5-1', + activeIcon: 'platform-icon5-2', + url: '/platform/developer', + name: 'PlatformDeveloper', + path: 'developer', + componentType: '', + component: () => import('/@/views/platform/workbench/Developer.vue'), + // componentPath: 'platform/workbench/Developer.vue', + meta: { + title: t('开发者管理'), + affix: false, + isHide: true, + }, + }, + { + title: '脚手架下载', + icon: 'platform-icon6-1', + activeIcon: 'platform-icon6-2', + url: '/platform/scaffold', + name: 'PlatformScaffold', + path: 'scaffold', + componentType: '', + component: () => import('/@/views/platform/workbench/Rigger.vue'), + // componentPath: 'platform/workbench/Rigger.vue', + meta: { + title: t('脚手架下载'), + affix: false, + isHide: true, + }, + }, +]; +export const PlatformMenuList = [...PlatformMenuList1, ...PlatformMenuList2]; +function getRouteChildren(menuList) { + const list: Array = []; + if (menuList && menuList.length > 0) { + menuList.forEach((element) => { + if (element.componentType == IframeComponentTypeString) { + list.push({ + path: element.path, + name: element.name, + component: FrameLayout, + meta: element.meta, + }); + } else { + list.push({ + path: element.path, + name: element.name, + component: element.component, + meta: element.meta, + }); + } + }); + } + return list; +} +export const PLATFORM_ROUTE: AppRouteRecordRaw = { + path: '/platform', + name: 'Platform', + component: PLATFORM_LAYOUT, + redirect: '/platform/template', + meta: { + orderNo: 10, + icon: 'ion:grid-outline', + title: t('首页'), + }, + children: [...getRouteChildren(PlatformMenuList2)], +}; +export const PLATFORM_WORKBENCH_ROUTE: AppRouteRecordRaw = { + path: '/workbench', + name: 'Workbench', + component: PLATFORM_WORKBENCH_LAYOUT, + redirect: '/workbench/index', + meta: { + orderNo: 10, + icon: 'ion:grid-outline', + title: t('首页'), + }, + children: [...getRouteChildren(PlatformMenuList1)], +}; + +export const APPLICATION_ROUTE: AppRouteRecordRaw = { + path: '/application', + name: 'Application', + component: DEFAULT_PLATFORM_LAYOUT, + redirect: '/application/index', + meta: { + orderNo: 10, + icon: 'ion:grid-outline', + title: t('应用'), + }, + children: [ + { + path: 'index', + name: 'ApplicationIndex', + component: () => import('/@/views/platform/demo/Index.vue'), + meta: { + affix: true, + title: t('应用配置'), + }, + }, + ...getRouteChildren(ApplicationMenuList), + ], +}; diff --git a/src/router/routes/platform.ts b/src/router/routes/platform.ts new file mode 100644 index 0000000..968c5f2 --- /dev/null +++ b/src/router/routes/platform.ts @@ -0,0 +1,53 @@ +import type { AppRouteRecordRaw, AppRouteModule } from '/@/router/types'; + +import { + PAGE_NOT_FOUND_ROUTE, + REDIRECT_ROUTE, + PLATFORM_ROUTE, + PLATFORM_WORKBENCH_ROUTE, + APPLICATION_ROUTE, +} from '/@/router/routes/application'; +import { PageEnum } from '/@/enums/pageEnum'; +import { t } from '/@/hooks/web/useI18n'; + +// const modules = import.meta.glob('./modules/**/*.ts', { eager: true }); + +const routeModuleList: AppRouteModule[] = []; + +// Object.keys(modules).forEach((key) => { +// const mod = modules[key].default || {}; +// const modList = Array.isArray(mod) ? [...mod] : [mod]; +// routeModuleList.push(...modList); +// }); + +export const asyncRoutes = [PAGE_NOT_FOUND_ROUTE, ...routeModuleList]; + +export const RootRoute: AppRouteRecordRaw = { + path: '/', + name: 'Root', + redirect: PageEnum.BASE_HOME, + meta: { + title: 'Root', + }, +}; + +export const LoginRoute: AppRouteRecordRaw = { + path: '/login', + name: 'Login', + component: () => import('/@/views/sys/login/Login.vue'), + meta: { + title: t('登录页'), + }, +}; + +// Basic routing without permissions +// 未经许可的基本路由 +export const basicRoutes = [ + LoginRoute, + RootRoute, + REDIRECT_ROUTE, + PAGE_NOT_FOUND_ROUTE, + PLATFORM_ROUTE, + PLATFORM_WORKBENCH_ROUTE, + APPLICATION_ROUTE, +]; diff --git a/src/router/types.ts b/src/router/types.ts new file mode 100644 index 0000000..c8407fb --- /dev/null +++ b/src/router/types.ts @@ -0,0 +1,65 @@ +import type { RouteRecordRaw, RouteMeta } from 'vue-router'; +import { RoleEnum } from '/@/enums/roleEnum'; +import { defineComponent } from 'vue'; + +export type Component = + | ReturnType + | (() => Promise) + | (() => Promise); + +// @ts-ignore +export interface AppRouteRecordRaw extends Omit { + name: string; + meta: RouteMeta; + component?: Component | string; + components?: Component; + children?: AppRouteRecordRaw[]; + props?: Recordable; + fullPath?: string; +} + +export interface MenuTag { + type?: 'primary' | 'error' | 'warn' | 'success'; + content?: string; + dot?: boolean; +} + +export interface Menu { + name: string; + + icon?: string; + + path: string; + + // path contains param, auto assignment. + paramPath?: string; + + disabled?: boolean; + + children?: Menu[]; + + orderNo?: number; + + roles?: RoleEnum[]; + + meta?: Partial; + + tag?: MenuTag; + + hideMenu?: boolean; +} + +export interface MenuModule { + orderNo?: number; + menu: Menu; +} +export interface subSys { + name: string; + icon?: string; + code: string; + description: string; + id: string; + sortCode: number; +} +// export type AppRouteModule = RouteModule | AppRouteRecordRaw; +export type AppRouteModule = AppRouteRecordRaw; diff --git a/src/settings/designSetting.ts b/src/settings/designSetting.ts new file mode 100644 index 0000000..84fa608 --- /dev/null +++ b/src/settings/designSetting.ts @@ -0,0 +1,50 @@ +import { ThemeEnum } from '../enums/appEnum'; + +export const prefixCls = 'vben'; + +export const darkMode = ThemeEnum.LIGHT; + +// app theme preset color +export const APP_PRESET_COLOR_LIST: string[] = [ + '#1C8DFF', + '#0960bd', + '#0084f4', + '#009688', + '#536dfe', + '#ff5c93', + '#ee4f12', + '#0096c7', + '#9c27b0', + '#ff9800', +]; + +// header preset color +export const HEADER_PRESET_BG_COLOR_LIST: string[] = [ + '#07093E', + '#ffffff', + '#151515', + '#009688', + '#5172DC', + '#018ffb', + '#409eff', + '#e74c3c', + '#24292e', + '#394664', + '#001529', + '#383f45', +]; + +// sider preset color +export const SIDE_BAR_BG_COLOR_LIST: string[] = [ + '#102642', + '#212121', + '#273352', + '#ffffff', + '#191b24', + '#191a23', + '#304156', + '#001628', + '#28333E', + '#344058', + '#383f45', +]; diff --git a/src/settings/encryptionSetting.ts b/src/settings/encryptionSetting.ts new file mode 100644 index 0000000..3d61776 --- /dev/null +++ b/src/settings/encryptionSetting.ts @@ -0,0 +1,13 @@ +import { isDevMode } from '/@/utils/env'; + +// System default cache time, in seconds +export const DEFAULT_CACHE_TIME = 60 * 60 * 24 * 7; + +// aes encryption key +export const cacheCipher = { + key: '_11111000001111@', + iv: '@11111000001111_', +}; + +// Whether the system cache is encrypted using aes +export const enableStorageEncryption = !isDevMode(); diff --git a/src/settings/localeSetting.ts b/src/settings/localeSetting.ts new file mode 100644 index 0000000..5452568 --- /dev/null +++ b/src/settings/localeSetting.ts @@ -0,0 +1,29 @@ +import type { DropMenu } from '../components/Dropdown'; +import type { LocaleSetting, LocaleType } from '/#/config'; + +export const LOCALE: { [key: string]: LocaleType } = { + ZH_CN: 'zh_CN', + EN_US: 'en', +}; + +export const localeSetting: LocaleSetting = { + showPicker: true, + // Locale + locale: LOCALE.ZH_CN, + // Default locale + fallback: LOCALE.ZH_CN, + // available Locales + availableLocales: [LOCALE.ZH_CN, LOCALE.EN_US], +}; + +// locale list +export const localeList: DropMenu[] = [ + { + text: '简体中文', + event: LOCALE.ZH_CN, + }, + { + text: 'English', + event: LOCALE.EN_US, + }, +]; diff --git a/src/settings/projectSetting.ts b/src/settings/projectSetting.ts new file mode 100644 index 0000000..da8737c --- /dev/null +++ b/src/settings/projectSetting.ts @@ -0,0 +1,180 @@ +import type { ProjectConfig } from '/#/config'; +import { MenuTypeEnum, MenuModeEnum, TriggerEnum, MixSidebarTriggerEnum } from '/@/enums/menuEnum'; +import { CacheTypeEnum } from '/@/enums/cacheEnum'; +import { + ContentEnum, + PermissionModeEnum, + ThemeEnum, + RouterTransitionEnum, + SettingButtonPositionEnum, + SessionTimeoutProcessingEnum, +} from '/@/enums/appEnum'; +import { SIDE_BAR_BG_COLOR_LIST, HEADER_PRESET_BG_COLOR_LIST } from './designSetting'; +import { primaryColor } from '../../build/config/themeConfig'; + +// ! You need to clear the browser cache after the change +const setting: ProjectConfig = { + // Whether to show the configuration button + showSettingButton: true, + + // Whether to show the theme switch button + showDarkModeToggle: true, + + // `Settings` button position + settingButtonPosition: SettingButtonPositionEnum.AUTO, + + // Permission mode + permissionMode: PermissionModeEnum.BACK, + + // Permission-related cache is stored in sessionStorage or localStorage + permissionCacheType: CacheTypeEnum.LOCAL, + + // Session timeout processing + sessionTimeoutProcessing: SessionTimeoutProcessingEnum.ROUTE_JUMP, + + // color + themeColor: primaryColor, + + // Website gray mode, open for possible mourning dates + grayMode: false, + + // Color Weakness Mode + colorWeak: false, + + // Whether to cancel the menu, the top, the multi-tab page display, for possible embedded in other systems + fullContent: false, + + // content mode + contentMode: ContentEnum.FULL, + + // Whether to display the logo + showLogo: true, + + // Whether to show footer + showFooter: false, + + // Header configuration + headerSetting: { + // header bg color + bgColor: HEADER_PRESET_BG_COLOR_LIST[0], + // Fixed at the top + fixed: true, + // Whether to show top + show: true, + // theme + theme: ThemeEnum.LIGHT, + // Whether to enable the lock screen function + useLockPage: true, + // Whether to show the full screen button + showFullScreen: true, + // Whether to show the document button + showDoc: true, + // Whether to show the notification button + showNotice: true, + // Whether to display the menu search + showSearch: true, + }, + + // Menu configuration + menuSetting: { + // sidebar menu bg color + bgColor: SIDE_BAR_BG_COLOR_LIST[0], + // Whether to fix the left menu + fixed: true, + // Menu collapse + collapsed: false, + // Whether to display the menu name when folding the menu + collapsedShowTitle: false, + // Whether it can be dragged + // Only limited to the opening of the left menu, the mouse has a drag bar on the right side of the menu + canDrag: false, + // Whether to show no dom + show: true, + // Whether to show dom + hidden: false, + // Menu width + menuWidth: 200, + // Menu mode + mode: MenuModeEnum.VERTICAL, + // Menu type + type: MenuTypeEnum.SIDEBAR, + // Menu theme + theme: ThemeEnum.DARK, + // Split menu + split: false, + // Top menu layout + topMenuAlign: 'center', + // Fold trigger position + trigger: TriggerEnum.HEADER, + // Turn on accordion mode, only show a menu + accordion: true, + // Switch page to close menu + closeMixSidebarOnChange: false, + // Module opening method ‘click’ |'hover' + mixSideTrigger: MixSidebarTriggerEnum.CLICK, + // Fixed expanded menu + mixSideFixed: false, + }, + + // Multi-label + multiTabsSetting: { + cache: false, + // Turn on + show: true, + // Is it possible to drag and drop sorting tabs + canDrag: true, + // Turn on quick actions + showQuick: true, + // Whether to show the refresh button + showRedo: true, + // Whether to show the collapse button + showFold: true, + }, + + // Transition Setting + transitionSetting: { + // Whether to open the page switching animation + // The disabled state will also disable pageLoading + enable: true, + + // Route basic switching animation + basicTransition: RouterTransitionEnum.FADE_SIDE, + + // Whether to open page switching loading + // Only open when enable=true + openPageLoading: true, + + // Whether to open the top progress bar + openNProgress: false, + }, + + // Whether to enable KeepAlive cache is best to close during development, otherwise the cache needs to be cleared every time + openKeepAlive: true, + + // Automatic screen lock time, 0 does not lock the screen. Unit minute default 0 + lockTime: 0, + + // Whether to show breadcrumbs + showBreadCrumb: true, + + // Whether to show the breadcrumb icon + showBreadCrumbIcon: false, + + // Use error-handler-plugin + useErrorHandle: false, + + // Whether to open back to top + useOpenBackTop: true, + + // Is it possible to embed iframe pages + canEmbedIFramePage: true, + + // Whether to delete unclosed messages and notify when switching the interface + closeMessageOnSwitch: true, + + // Whether to cancel the http request that has been sent but not responded when switching the interface. + // If it is enabled, I want to overwrite a single interface. Can be set in a separate interface + removeAllHttpPending: false, +}; + +export default setting; diff --git a/src/settings/siteSetting.ts b/src/settings/siteSetting.ts new file mode 100644 index 0000000..856a123 --- /dev/null +++ b/src/settings/siteSetting.ts @@ -0,0 +1,11 @@ +// github repo url +export const GITHUB_URL = 'https://github.com/anncwb/vue-vben-admin'; + +// vue-vben-admin-next-doc +export const DOC_URL = 'https://doc.vvbin.cn/'; + +// site url +export const SITE_URL = 'https://vben.vvbin.cn/'; + +export const LINK_URL = ['http://localhost:4100']; +// export const LINK_URL = ['http://114.116.210.204:3200']; diff --git a/src/store/index.ts b/src/store/index.ts new file mode 100644 index 0000000..efaf6c9 --- /dev/null +++ b/src/store/index.ts @@ -0,0 +1,10 @@ +import type { App } from 'vue'; +import { createPinia } from 'pinia'; + +const store = createPinia(); + +export function setupStore(app: App) { + app.use(store); +} + +export { store }; diff --git a/src/store/modules/app.ts b/src/store/modules/app.ts new file mode 100644 index 0000000..4f60afb --- /dev/null +++ b/src/store/modules/app.ts @@ -0,0 +1,118 @@ +import type { + ProjectConfig, + HeaderSetting, + MenuSetting, + TransitionSetting, + MultiTabsSetting, + LogoConfig, +} from '/#/config'; +import type { BeforeMiniState } from '/#/store'; + +import { defineStore } from 'pinia'; +import { store } from '/@/store'; + +import { ThemeEnum } from '/@/enums/appEnum'; +import { APP_DARK_MODE_KEY_, PROJ_CFG_KEY } from '/@/enums/cacheEnum'; +import { Persistent } from '/@/utils/cache/persistent'; +import { darkMode } from '/@/settings/designSetting'; +import { resetRouter } from '/@/router'; +import { deepMerge } from '/@/utils'; + +interface AppState { + darkMode?: ThemeEnum; + // Page loading status + pageLoading: boolean; + // project config + projectConfig: ProjectConfig | null; + // When the window shrinks, remember some states, and restore these states when the window is restored + beforeMiniInfo: BeforeMiniState; + logoConfig: LogoConfig; +} +let timeId: TimeoutHandle; +export const useAppStore = defineStore({ + id: 'app', + state: (): AppState => ({ + darkMode: undefined, + pageLoading: false, + projectConfig: Persistent.getLocal(PROJ_CFG_KEY), + beforeMiniInfo: {}, + logoConfig: {} as LogoConfig, + }), + getters: { + getPageLoading(): boolean { + return this.pageLoading; + }, + getDarkMode(): 'light' | 'dark' | string { + return this.darkMode || localStorage.getItem(APP_DARK_MODE_KEY_) || darkMode; + }, + + getBeforeMiniInfo(): BeforeMiniState { + return this.beforeMiniInfo; + }, + + getProjectConfig(): ProjectConfig { + return this.projectConfig || ({} as ProjectConfig); + }, + + getHeaderSetting(): HeaderSetting { + return this.getProjectConfig.headerSetting; + }, + getMenuSetting(): MenuSetting { + return this.getProjectConfig.menuSetting; + }, + getTransitionSetting(): TransitionSetting { + return this.getProjectConfig.transitionSetting; + }, + getMultiTabsSetting(): MultiTabsSetting { + return this.getProjectConfig.multiTabsSetting; + }, + getLogoConfig(): LogoConfig { + return this.logoConfig; + }, + }, + actions: { + setPageLoading(loading: boolean): void { + this.pageLoading = loading; + }, + + setDarkMode(mode: ThemeEnum): void { + this.darkMode = mode; + localStorage.setItem(APP_DARK_MODE_KEY_, mode); + }, + + setBeforeMiniInfo(state: BeforeMiniState): void { + this.beforeMiniInfo = state; + }, + + setProjectConfig(config: DeepPartial): void { + this.projectConfig = deepMerge(this.projectConfig || {}, config); + Persistent.setLocal(PROJ_CFG_KEY, this.projectConfig); + }, + + async resetAllState() { + resetRouter(); + Persistent.clearAll(); + }, + async setPageLoadingAction(loading: boolean): Promise { + if (loading) { + clearTimeout(timeId); + // Prevent flicker + timeId = setTimeout(() => { + this.setPageLoading(loading); + }, 50); + } else { + this.setPageLoading(loading); + clearTimeout(timeId); + } + }, + + setLogoConfig(config: LogoConfig): void { + this.logoConfig = config; + }, + }, +}); + +// Need to be used outside the setup +export function useAppStoreWithOut() { + return useAppStore(store); +} diff --git a/src/store/modules/errorLog.ts b/src/store/modules/errorLog.ts new file mode 100644 index 0000000..a4b0b8c --- /dev/null +++ b/src/store/modules/errorLog.ts @@ -0,0 +1,77 @@ +import type { ErrorLogInfo } from '/#/store'; + +import { defineStore } from 'pinia'; +import { store } from '/@/store'; + +import { formatToDateTime } from '/@/utils/dateUtil'; +import projectSetting from '/@/settings/projectSetting'; + +import { ErrorTypeEnum } from '/@/enums/exceptionEnum'; + +export interface ErrorLogState { + errorLogInfoList: Nullable; + errorLogListCount: number; +} + +export const useErrorLogStore = defineStore({ + id: 'app-error-log', + state: (): ErrorLogState => ({ + errorLogInfoList: null, + errorLogListCount: 0, + }), + getters: { + getErrorLogInfoList(): ErrorLogInfo[] { + return this.errorLogInfoList || []; + }, + getErrorLogListCount(): number { + return this.errorLogListCount; + }, + }, + actions: { + addErrorLogInfo(info: ErrorLogInfo) { + const item = { + ...info, + time: formatToDateTime(new Date()), + }; + this.errorLogInfoList = [item, ...(this.errorLogInfoList || [])]; + this.errorLogListCount += 1; + }, + + setErrorLogListCount(count: number): void { + this.errorLogListCount = count; + }, + + /** + * Triggered after ajax request error + * @param error + * @returns + */ + addAjaxErrorInfo(error) { + const { useErrorHandle } = projectSetting; + if (!useErrorHandle) { + return; + } + const errInfo: Partial = { + message: error.message, + type: ErrorTypeEnum.AJAX, + }; + if (error.response) { + const { + config: { url = '', data: params = '', method = 'get', headers = {} } = {}, + data = {}, + } = error.response; + errInfo.url = url; + errInfo.name = 'Ajax Error!'; + errInfo.file = '-'; + errInfo.stack = JSON.stringify(data); + errInfo.detail = JSON.stringify({ params, method, headers }); + } + this.addErrorLogInfo(errInfo as ErrorLogInfo); + }, + }, +}); + +// Need to be used outside the setup +export function useErrorLogStoreWithOut() { + return useErrorLogStore(store); +} diff --git a/src/store/modules/locale.ts b/src/store/modules/locale.ts new file mode 100644 index 0000000..e0c9839 --- /dev/null +++ b/src/store/modules/locale.ts @@ -0,0 +1,68 @@ +import type { LocaleSetting, LocaleType } from '/#/config'; + +import { defineStore } from 'pinia'; +import { store } from '/@/store'; + +import { LANGUAGE_KEY, LOCALE_KEY } from '/@/enums/cacheEnum'; +import { createLocalStorage } from '/@/utils/cache'; +import { localeSetting } from '/@/settings/localeSetting'; + +const ls = createLocalStorage(); + +const lsLocaleSetting = (ls.get(LOCALE_KEY) || localeSetting) as LocaleSetting; + +interface LocaleState { + localInfo: LocaleSetting; + languageJson: Recordable; +} + +export const useLocaleStore = defineStore({ + id: 'app-locale', + state: (): LocaleState => ({ + localInfo: lsLocaleSetting, + languageJson: {}, + }), + getters: { + getShowPicker(): boolean { + return !!this.localInfo?.showPicker; + }, + getLocale(): LocaleType { + return this.localInfo?.locale ?? 'zh_CN'; + }, + getLanguageJson(): Recordable { + return this.languageJson; + }, + }, + actions: { + /** + * Set up multilingual information and cache + * @param info multilingual info + */ + setLanguageJson(json: Recordable) { + this.languageJson = json; + ls.set(LANGUAGE_KEY, this.languageJson); + }, + /** + * Set up multilingual information and cache + * @param info multilingual info + */ + setLocaleInfo(info: Partial) { + this.localInfo = { ...this.localInfo, ...info }; + ls.set(LOCALE_KEY, this.localInfo); + }, + /** + * Initialize multilingual information and load the existing configuration from the local cache + */ + initLocale() { + this.setLocaleInfo({ + ...localeSetting, + ...this.localInfo, + }); + }, + }, +}); + +// Need to be used outside the setup +export function useLocaleStoreWithOut() { + return useLocaleStore(store); +} diff --git a/src/store/modules/lock.ts b/src/store/modules/lock.ts new file mode 100644 index 0000000..bbe4cc5 --- /dev/null +++ b/src/store/modules/lock.ts @@ -0,0 +1,59 @@ +import type { LockInfo } from '/#/store'; + +import { defineStore } from 'pinia'; + +import { LOCK_INFO_KEY } from '/@/enums/cacheEnum'; +import { Persistent } from '/@/utils/cache/persistent'; +import { useUserStore } from './user'; + +interface LockState { + lockInfo: Nullable; +} + +export const useLockStore = defineStore({ + id: 'app-lock', + state: (): LockState => ({ + lockInfo: Persistent.getLocal(LOCK_INFO_KEY), + }), + getters: { + getLockInfo(): Nullable { + return this.lockInfo; + }, + }, + actions: { + setLockInfo(info: LockInfo) { + this.lockInfo = Object.assign({}, this.lockInfo, info); + Persistent.setLocal(LOCK_INFO_KEY, this.lockInfo, true); + }, + resetLockInfo() { + Persistent.removeLocal(LOCK_INFO_KEY, true); + this.lockInfo = null; + }, + // Unlock + async unLock(password?: string) { + const userStore = useUserStore(); + if (this.lockInfo?.pwd === password) { + this.resetLockInfo(); + return true; + } + const tryLogin = async () => { + try { + const userName = userStore.getUserInfo?.userName; + const res = await userStore.login({ + userName, + password: password!, + goHome: false, + mode: 'none', + }); + if (res) { + this.resetLockInfo(); + } + return res; + } catch (error) { + return false; + } + }; + return await tryLogin(); + }, + }, +}); diff --git a/src/store/modules/multipleTab.ts b/src/store/modules/multipleTab.ts new file mode 100644 index 0000000..1bd1969 --- /dev/null +++ b/src/store/modules/multipleTab.ts @@ -0,0 +1,359 @@ +import type { RouteLocationNormalized, RouteLocationRaw, Router } from 'vue-router'; + +import { toRaw, unref } from 'vue'; +import { defineStore } from 'pinia'; +import { store } from '/@/store'; + +import { useGo, useRedo } from '/@/hooks/web/usePage'; +import { Persistent } from '/@/utils/cache/persistent'; + +import { PageEnum } from '/@/enums/pageEnum'; +import { PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE } from '/@/router/routes/application'; +import { getRawRoute } from '/@/utils'; +import { MULTIPLE_TABS_KEY } from '/@/enums/cacheEnum'; + +import projectSetting from '/@/settings/projectSetting'; +import { useUserStore } from '/@/store/modules/user'; + +export interface MultipleTabState { + cacheTabList: Set; + tabList: RouteLocationNormalized[]; + lastDragEndIndex: number; +} + +function handleGotoPage(router: Router) { + const go = useGo(router); + go(unref(router.currentRoute).path, true); +} + +const getToTarget = (tabItem: RouteLocationNormalized) => { + const { params, path, query } = tabItem; + return { + params: params || {}, + path, + query: query || {}, + }; +}; + +const cacheTab = projectSetting.multiTabsSetting.cache; + +export const useMultipleTabStore = defineStore({ + id: 'app-multiple-tab', + state: (): MultipleTabState => ({ + // Tabs that need to be cached + cacheTabList: new Set(), + // multiple tab list + tabList: cacheTab ? Persistent.getLocal(MULTIPLE_TABS_KEY) || [] : [], + // Index of the last moved tab + lastDragEndIndex: 0, + }), + getters: { + getTabList(): RouteLocationNormalized[] { + return this.tabList; + }, + getCachedTabList(): string[] { + return Array.from(this.cacheTabList); + }, + getLastDragEndIndex(): number { + return this.lastDragEndIndex; + }, + }, + actions: { + /** + * Update the cache according to the currently opened tabs + */ + async updateCacheTab() { + const cacheMap: Set = new Set(); + + for (const tab of this.tabList) { + const item = getRawRoute(tab); + // Ignore the cache + const needCache = !item.meta?.ignoreKeepAlive; + if (!needCache) { + continue; + } + const name = item.name as string; + cacheMap.add(name); + } + this.cacheTabList = cacheMap; + }, + + /** + * Refresh tabs + */ + async refreshPage(router: Router) { + const { currentRoute } = router; + const route = unref(currentRoute); + const name = route.name; + + const findTab = this.getCachedTabList.find((item) => item === name); + if (findTab) { + this.cacheTabList.delete(findTab); + } + const redo = useRedo(router); + await redo(); + }, + clearCacheTabs(): void { + this.cacheTabList = new Set(); + }, + resetState(): void { + this.tabList = []; + this.clearCacheTabs(); + }, + goToPage(router: Router) { + const go = useGo(router); + const len = this.tabList.length; + const { path } = unref(router.currentRoute); + + let toPath: PageEnum | string = PageEnum.BASE_HOME; + + if (len > 0) { + const page = this.tabList[len - 1]; + const p = page.fullPath || page.path; + if (p) { + toPath = p; + } + } + // Jump to the current page and report an error + path !== toPath && go(toPath as PageEnum, true); + }, + + async addTab(route: RouteLocationNormalized) { + const { path, name, fullPath, params, query, meta } = getRawRoute(route); + // 404 The page does not need to add a tab + if ( + path === PageEnum.ERROR_PAGE || + path === PageEnum.BASE_LOGIN || + !name || + [REDIRECT_ROUTE.name, PAGE_NOT_FOUND_ROUTE.name].includes(name as string) + ) { + return; + } + + let updateIndex = -1; + // Existing pages, do not add tabs repeatedly + const tabHasExits = this.tabList.some((tab, index) => { + updateIndex = index; + return (tab.fullPath || tab.path) === (fullPath || path); + }); + + // If the tab already exists, perform the update operation + if (tabHasExits) { + const curTab = toRaw(this.tabList)[updateIndex]; + if (!curTab) { + return; + } + curTab.params = params || curTab.params; + curTab.query = query || curTab.query; + curTab.fullPath = fullPath || curTab.fullPath; + this.tabList.splice(updateIndex, 1, curTab); + } else { + // Add tab + // 获取动态路由打开数,超过 0 即代表需要控制打开数 + const dynamicLevel = meta?.dynamicLevel ?? -1; + if (dynamicLevel > 0) { + // 如果动态路由层级大于 0 了,那么就要限制该路由的打开数限制了 + // 首先获取到真实的路由,使用配置方式减少计算开销. + // const realName: string = path.match(/(\S*)\//)![1]; + const realPath = meta?.realPath ?? ''; + // 获取到已经打开的动态路由数, 判断是否大于某一个值 + if ( + this.tabList.filter((e) => e.meta?.realPath ?? '' === realPath).length >= dynamicLevel + ) { + // 关闭第一个 + const index = this.tabList.findIndex((item) => item.meta.realPath === realPath); + index !== -1 && this.tabList.splice(index, 1); + } + } + this.tabList.push(route); + } + this.updateCacheTab(); + cacheTab && Persistent.setLocal(MULTIPLE_TABS_KEY, this.tabList); + }, + + async closeTab(tab: RouteLocationNormalized, router: Router) { + const close = (route: RouteLocationNormalized) => { + const { fullPath, meta: { affix } = {} } = route; + if (affix) { + return; + } + const index = this.tabList.findIndex((item) => item.fullPath === fullPath); + index !== -1 && this.tabList.splice(index, 1); + }; + + const { currentRoute, replace } = router; + + const { path } = unref(currentRoute); + if (path !== tab.path) { + // Closed is not the activation tab + close(tab); + return; + } + + // Closed is activated atb + let toTarget: RouteLocationRaw = {}; + + const index = this.tabList.findIndex((item) => item.path === path); + + // If the current is the leftmost tab + if (index === 0) { + // There is only one tab, then jump to the homepage, otherwise jump to the right tab + if (this.tabList.length === 1) { + const userStore = useUserStore(); + toTarget = userStore.getUserInfo.homePath || PageEnum.BASE_HOME; + } else { + // Jump to the right tab + const page = this.tabList[index + 1]; + toTarget = getToTarget(page); + } + } else { + // Close the current tab + const page = this.tabList[index - 1]; + toTarget = getToTarget(page); + } + close(currentRoute.value); + await replace(toTarget); + }, + + // Close according to key + async closeTabByKey(key: string, router: Router) { + const index = this.tabList.findIndex((item) => (item.fullPath || item.path) === key); + if (index !== -1) { + await this.closeTab(this.tabList[index], router); + const { currentRoute, replace } = router; + // 检查当前路由是否存在于tabList中 + const isActivated = this.tabList.findIndex((item) => { + return item.fullPath === currentRoute.value.fullPath; + }); + // 如果当前路由不存在于TabList中,尝试切换到其它路由 + if (isActivated === -1) { + let pageIndex; + if (index > 0) { + pageIndex = index - 1; + } else if (index < this.tabList.length - 1) { + pageIndex = index + 1; + } else { + pageIndex = -1; + } + if (pageIndex >= 0) { + const page = this.tabList[index - 1]; + const toTarget = getToTarget(page); + await replace(toTarget); + } + } + } + }, + + // Sort the tabs + async sortTabs(oldIndex: number, newIndex: number) { + const currentTab = this.tabList[oldIndex]; + this.tabList.splice(oldIndex, 1); + this.tabList.splice(newIndex, 0, currentTab); + this.lastDragEndIndex = this.lastDragEndIndex + 1; + }, + + // Close the tab on the right and jump + async closeLeftTabs(route: RouteLocationNormalized, router: Router) { + const index = this.tabList.findIndex((item) => item.path === route.path); + + if (index > 0) { + const leftTabs = this.tabList.slice(0, index); + const pathList: string[] = []; + for (const item of leftTabs) { + const affix = item?.meta?.affix ?? false; + if (!affix) { + pathList.push(item.fullPath); + } + } + this.bulkCloseTabs(pathList); + } + this.updateCacheTab(); + handleGotoPage(router); + }, + + // Close the tab on the left and jump + async closeRightTabs(route: RouteLocationNormalized, router: Router) { + const index = this.tabList.findIndex((item) => item.fullPath === route.fullPath); + + if (index >= 0 && index < this.tabList.length - 1) { + const rightTabs = this.tabList.slice(index + 1, this.tabList.length); + + const pathList: string[] = []; + for (const item of rightTabs) { + const affix = item?.meta?.affix ?? false; + if (!affix) { + pathList.push(item.fullPath); + } + } + this.bulkCloseTabs(pathList); + } + this.updateCacheTab(); + handleGotoPage(router); + }, + + async closeAllTab(router: Router) { + this.tabList = this.tabList.filter((item) => item?.meta?.affix ?? false); + this.clearCacheTabs(); + this.goToPage(router); + }, + + /** + * Close other tabs + */ + async closeOtherTabs(route: RouteLocationNormalized, router: Router) { + const closePathList = this.tabList.map((item) => item.fullPath); + + const pathList: string[] = []; + + for (const path of closePathList) { + if (path !== route.fullPath) { + const closeItem = this.tabList.find((item) => item.path === path); + if (!closeItem) { + continue; + } + const affix = closeItem?.meta?.affix ?? false; + if (!affix) { + pathList.push(closeItem.fullPath); + } + } + } + this.bulkCloseTabs(pathList); + this.updateCacheTab(); + handleGotoPage(router); + }, + + /** + * Close tabs in bulk + */ + async bulkCloseTabs(pathList: string[]) { + this.tabList = this.tabList.filter((item) => !pathList.includes(item.fullPath)); + }, + + /** + * Set tab's title + */ + async setTabTitle(title: string, route: RouteLocationNormalized) { + const findTab = this.getTabList.find((item) => item === route); + if (findTab) { + findTab.meta.title = title; + await this.updateCacheTab(); + } + }, + /** + * replace tab's path + * **/ + async updateTabPath(fullPath: string, route: RouteLocationNormalized) { + const findTab = this.getTabList.find((item) => item === route); + if (findTab) { + findTab.fullPath = fullPath; + findTab.path = fullPath; + await this.updateCacheTab(); + } + }, + }, +}); + +// Need to be used outside the setup +export function useMultipleTabWithOutStore() { + return useMultipleTabStore(store); +} diff --git a/src/store/modules/permission.ts b/src/store/modules/permission.ts new file mode 100644 index 0000000..b304481 --- /dev/null +++ b/src/store/modules/permission.ts @@ -0,0 +1,276 @@ +import type { AppRouteRecordRaw, Menu, subSys } from '/@/router/types'; + +import { defineStore } from 'pinia'; +import { store } from '/@/store'; +// import { useI18n } from '/@/hooks/web/useI18n'; +import { useUserStore } from './user'; +// import { useAppStoreWithOut } from './app'; +// import { toRaw } from 'vue'; +// import { transformObjToRoute, flatMultiLevelRoutes } from '/@/router/helper/routeHelper'; +// import { transformRouteToMenu } from '/@/router/helper/menuHelper'; + +// import projectSetting from '/@/settings/projectSetting'; + +// import { PermissionModeEnum } from '/@/enums/appEnum'; + +// import { asyncRoutes } from '/@/router/routes/platform'; +// import { ERROR_LOG_ROUTE, PAGE_NOT_FOUND_ROUTE } from '/@/router/routes/application'; +import { ERROR_LOG_ROUTE } from '/@/router/routes/application'; +// import { filter } from '/@/utils/helper/treeHelper'; + +// import { useMessage } from '/@/hooks/web/useMessage'; +import { PageEnum } from '/@/enums/pageEnum'; +// import { getMenuList, getPermCode } from '/@/api/system/login'; +import { getPermCode } from '/@/api/system/login'; +import { MenuAuthModel } from '/@/api/system/login/model'; +import { getSubSystemList } from '/@/api/system/subSystem'; + +interface PermissionState { + // Permission code list + permCodeList: MenuAuthModel[]; + // Whether the route has been dynamically added + isDynamicAddedRoute: boolean; + // To trigger a menu update + lastBuildMenuTime: number; + // Backstage menu list + backMenuList: Menu[]; + frontMenuList: Menu[]; + subSystem: string; + subSystemList: subSys[]; +} +export const usePermissionStore = defineStore({ + id: 'app-permission', + state: (): PermissionState => ({ + permCodeList: [], + // Whether the route has been dynamically added + isDynamicAddedRoute: false, + // To trigger a menu update + lastBuildMenuTime: 0, + // Backstage menu list + backMenuList: [], + // menu List + frontMenuList: [], + //sub system + subSystem: '1', + subSystemList: [], + }), + getters: { + getPermCodeList(): MenuAuthModel[] { + return this.permCodeList || []; + }, + getBackMenuList(): Menu[] { + return this.backMenuList.filter((item) => { + const systemId = this.getSubSystem || '1'; + return systemId === item.meta!.systemId; + }); + }, + getFrontMenuList(): Menu[] { + return this.frontMenuList; + }, + getLastBuildMenuTime(): number { + return this.lastBuildMenuTime; + }, + getIsDynamicAddedRoute(): boolean { + return this.isDynamicAddedRoute; + }, + getSubSystem(): string { + return this.subSystem; + }, + getSubSysList(): subSys[] { + return this.subSystemList; + }, + }, + actions: { + setPermCodeList(permList: MenuAuthModel[]) { + this.permCodeList = permList; + }, + + setBackMenuList(list: Menu[]) { + this.backMenuList = list; + list?.length > 0 && this.setLastBuildMenuTime(); + }, + + setFrontMenuList(list: Menu[]) { + this.frontMenuList = list; + }, + + setLastBuildMenuTime() { + this.lastBuildMenuTime = new Date().getTime(); + }, + + setDynamicAddedRoute(added: boolean) { + this.isDynamicAddedRoute = added; + }, + setSubSystem(systemId: string) { + this.subSystem = systemId; + }, + setSubSystemList(subSystemList: subSys[]) { + this.subSystemList = subSystemList; + }, + resetState(): void { + this.isDynamicAddedRoute = false; + this.permCodeList = []; + this.backMenuList = []; + this.lastBuildMenuTime = 0; + }, + async changeSubsystem(getShowTopMenu, getIsMobile) { + const arr = await getSubSystemList(); + let subSystemList: any = []; + if (getShowTopMenu && !getIsMobile) { + arr.forEach((o) => { + subSystemList.push({ + text: o.name, + event: o.id, + icon: o.icon, + }); + }); + } else { + subSystemList = arr; + } + this.setSubSystemList(subSystemList); + if (subSystemList.length) { + this.setSubSystem(subSystemList[0].id); + } + }, + async changePermissionCode() { + const userStore = useUserStore(); + const userInfo = userStore.getUserInfo; + + const permResult = await getPermCode(); + userInfo.departmentId = permResult.departmentId; + userInfo.departmentName = permResult.departmentName; + userInfo.postId = permResult.postId; + userInfo.postName = permResult.postName; + userInfo.roleName = permResult.roleName; + userInfo.roleId = permResult.roleId; + userInfo.desktopSchema = permResult.desktopSchema; + userStore.setUserInfo(userInfo); + // console.log('permResult.menuAuthList: ', permResult.menuAuthList); + // this.setPermCodeList(permResult.menuAuthList); + }, + async buildRoutesAction(isRefrashPermisson = true): Promise { + console.log('isRefrashPermisson: ', isRefrashPermisson); + // const { t } = useI18n(); + const userStore = useUserStore(); + // const appStore = useAppStoreWithOut(); + + const routes: AppRouteRecordRaw[] = []; + // const roleList = toRaw(userStore.getRoleList) || []; + // const { permissionMode = projectSetting.permissionMode } = appStore.getProjectConfig; + + // const routeFilter = (route: AppRouteRecordRaw) => { + // const { meta } = route; + // const { roles } = meta || {}; + // if (!roles) return true; + // return roleList.some((role) => roles.includes(role)); + // }; + + // const routeRemoveIgnoreFilter = (route: AppRouteRecordRaw) => { + // const { meta } = route; + // const { ignoreRoute } = meta || {}; + // return !ignoreRoute; + // }; + + /** + * @description 根据设置的首页path,修正routes中的affix标记(固定首页) + * */ + const patchHomeAffix = (routes: AppRouteRecordRaw[]) => { + if (!routes || routes.length === 0) return; + let homePath: string = userStore.getUserInfo.homePath || PageEnum.BASE_HOME; + function patcher(routes: AppRouteRecordRaw[], parentPath = '') { + if (parentPath) parentPath = parentPath + '/'; + routes.forEach((route: AppRouteRecordRaw) => { + const { path, children, redirect } = route; + const currentPath = path.startsWith('/') ? path : parentPath + path; + if (currentPath === homePath) { + if (redirect) { + homePath = route.redirect! as string; + } else { + route.meta = Object.assign({}, route.meta, { affix: true }); + throw new Error('end'); + } + } + children && children.length > 0 && patcher(children, currentPath); + }); + } + try { + patcher(routes); + } catch (e) { + // 已处理完毕跳出循环 + } + return; + }; + + // switch (permissionMode) { + // case PermissionModeEnum.ROLE: + // routes = filter(asyncRoutes, routeFilter); + // routes = routes.filter(routeFilter); + // // Convert multi-level routing to level 2 routing + // routes = flatMultiLevelRoutes(routes); + // break; + + // case PermissionModeEnum.ROUTE_MAPPING: + // routes = filter(asyncRoutes, routeFilter); + // routes = routes.filter(routeFilter); + // const menuList = transformRouteToMenu(routes, true); + // routes = filter(routes, routeRemoveIgnoreFilter); + // routes = routes.filter(routeRemoveIgnoreFilter); + // menuList.sort((a, b) => { + // return (a.meta?.orderNo || 0) - (b.meta?.orderNo || 0); + // }); + + // this.setFrontMenuList(menuList); + // // Convert multi-level routing to level 2 routing + // routes = flatMultiLevelRoutes(routes); + // break; + + // // If you are sure that you do not need to do background dynamic permissions, please comment the entire judgment below + // case PermissionModeEnum.BACK: + // const { createMessage } = useMessage(); + + // createMessage.loading({ + // content: t('菜单加载中...'), + // duration: 1, + // }); + + // // !Simulate to obtain permission codes from the background, + // // this function may only need to be executed once, and the actual project can be put at the right time by itself + // let routeList: AppRouteRecordRaw[] = []; + // try { + // if (isRefrashPermisson) await this.changePermissionCode(); + + // routeList = (await getMenuList()) as AppRouteRecordRaw[]; + // } catch (error) { + // console.error(error); + // } + + // // Dynamically introduce components + // routeList = transformObjToRoute(routeList); + + // // Background routing to menu structure + // const backMenuList = transformRouteToMenu(routeList); + + // this.setBackMenuList(backMenuList); + + // // remove meta.ignoreRoute item + // routeList = filter(routeList, routeRemoveIgnoreFilter); + // routeList = routeList.filter(routeRemoveIgnoreFilter); + + // routeList = flatMultiLevelRoutes(routeList); + + // routes = [PAGE_NOT_FOUND_ROUTE, ...routeList]; + + // break; + // } + + routes.push(ERROR_LOG_ROUTE); + patchHomeAffix(routes); + return routes; + }, + }, +}); + +// Need to be used outside the setup +export function usePermissionStoreWithOut() { + return usePermissionStore(store); +} diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts new file mode 100644 index 0000000..c062680 --- /dev/null +++ b/src/store/modules/user.ts @@ -0,0 +1,216 @@ +import type { UserInfo } from '/#/store'; +import type { ErrorMessageMode } from '/#/axios'; +import { defineStore } from 'pinia'; +import { store } from '/@/store'; +import { PageEnum } from '/@/enums/pageEnum'; +import { ROLES_KEY, TOKEN_KEY, USER_INFO_KEY } from '/@/enums/cacheEnum'; +import { getAuthCache, setAuthCache } from '/@/utils/auth'; +import { GetUserInfoModel, LoginParams, RoleInfo } from '/@/api/system/login/model'; +import { doLogout, getUserInfo, loginApi } from '/@/api/system/login'; +import { useI18n } from '/@/hooks/web/useI18n'; +import { useMessage } from '/@/hooks/web/useMessage'; +import { router } from '/@/router'; +import { h } from 'vue'; +import { getAppEnvConfig } from '/@/utils/env'; +interface UserState { + userInfo: Nullable; + token?: string; + roleList: RoleInfo[]; + sessionTimeout?: boolean; + lastUpdateTime: number; +} + +export const useUserStore = defineStore({ + id: 'app-user', + state: (): UserState => ({ + // user info + userInfo: null, + // token + token: undefined, + // roleList + roleList: [], + // Whether the login expired + sessionTimeout: false, + // Last fetch time + lastUpdateTime: 0, + }), + getters: { + getUserInfo(): UserInfo { + return this.userInfo || getAuthCache(USER_INFO_KEY) || {}; + }, + getToken(): string { + return this.token || getAuthCache(TOKEN_KEY); + }, + getRoleList(): RoleInfo[] { + return this.roleList && this.roleList.length > 0 + ? this.roleList + : getAuthCache(ROLES_KEY); + }, + getSessionTimeout(): boolean { + return !!this.sessionTimeout; + }, + getLastUpdateTime(): number { + return this.lastUpdateTime; + }, + }, + actions: { + setToken(info: string | undefined) { + this.token = info ? info : ''; // for null or undefined value + setAuthCache(TOKEN_KEY, info); + }, + setRoleList(roleList: RoleInfo[]) { + this.roleList = roleList; + setAuthCache(ROLES_KEY, roleList); + }, + setUserInfo(info: UserInfo | null) { + this.userInfo = info; + this.lastUpdateTime = new Date().getTime(); + setAuthCache(USER_INFO_KEY, info); + }, + setSessionTimeout(flag: boolean) { + this.sessionTimeout = flag; + }, + resetState() { + this.userInfo = null; + this.token = ''; + this.roleList = []; + this.sessionTimeout = false; + }, + /** + * @description: login + */ + async login( + params: LoginParams & { + goHome?: boolean; + mode?: ErrorMessageMode; + }, + ): Promise { + try { + const { goHome = true, mode, ...loginParams } = params; + const data = await loginApi(loginParams, mode); + + const { token } = data; + // save token + this.setToken(token); + setImToken(loginParams); + + return await this.afterLoginAction(goHome); + } catch (error) { + return Promise.reject(error); + } + }, + async afterLoginAction(goHome?: boolean): Promise { + if (!this.getToken) return null; + + // get user info + const userInfo = await this.getUserInfoAction(); + + setOtherToken(this.getToken); + + const sessionTimeout = this.sessionTimeout; + if (sessionTimeout) { + this.setSessionTimeout(false); + } else { + goHome && (await router.replace(PageEnum.BASE_HOME)); + } + + return Promise.resolve(userInfo); + }, + async getUserInfoAction(): Promise { + if (!this.getToken) return null; + const userInfoResult = await getUserInfo(); + + const { roles = [] } = userInfoResult; + + const userInfo = userInfoResult as unknown as UserInfo; + this.setUserInfo(userInfo); + this.setRoleList(roles); + return Promise.resolve(userInfoResult); + }, + /** + * @description: logout + */ + async logout() { + if (this.getToken) { + try { + await doLogout(); + } catch { + console.log('注销Token失败'); + } + } + this.setToken(undefined); + this.setSessionTimeout(false); + this.setUserInfo(null); + }, + + /** + * @description: Confirm before logging out + */ + confirmLoginOut(content?) { + const { createConfirm } = useMessage(); + const { t } = useI18n(); + + createConfirm({ + iconType: 'warning', + title: () => h('span', t('温馨提醒')), + content: () => h('span', t(content || '是否确认退出系统?')), + onOk: async () => { + await this.logout(); + }, + okText: () => t('确认'), + cancelText: () => t('取消'), + }); + }, + }, +}); + +// Need to be used outside the setup +export function useUserStoreWithOut() { + return useUserStore(store); +} + +//设置其他url 项目 token +function setOtherToken(token: string) { + // console.log('other token', getAppEnvConfig()); // something like: "https://codegeex.cn" or "https://codegeex.cn" or + getAppEnvConfig() + .VITE_GLOB_OUT_LINK_URL?.split(',') + ?.forEach((item) => { + // 创建子域的iframe, 用于传送数据 + const iframe = document.createElement('iframe'); + iframe.src = `${item}`; + iframe.style.display = 'none'; + document.body.append(iframe); + + // 使用postMessage()发送数据到子系统 + setTimeout(function () { + console.log('[主系统]发送token:', token); + iframe.contentWindow?.postMessage(token, item); + }, 4000); + + // 销毁iframe + setTimeout(function () { + iframe.remove(); + }, 5000); + }); +} + +//设置其他url 项目 token +function setImToken(loginParams: LoginParams) { + // 创建子域的iframe, 用于传送数据 + const item = `${getAppEnvConfig().VITE_GLOB_IM_LINK_URL}/localstorage.html`; + const iframe = document.createElement('iframe'); + iframe.src = item; + iframe.style.display = 'none'; + document.body.append(iframe); + + // 使用postMessage()发送数据到子系统 + setTimeout(function () { + console.log('[主系统]提示im登录:', loginParams); + iframe.contentWindow?.postMessage(loginParams, item); + }, 2000); + + // 销毁iframe + setTimeout(function () { + iframe.remove(); + }, 4000); +} diff --git a/src/utils/auth/index.ts b/src/utils/auth/index.ts new file mode 100644 index 0000000..fdec836 --- /dev/null +++ b/src/utils/auth/index.ts @@ -0,0 +1,26 @@ +import { Persistent, BasicKeys } from '/@/utils/cache/persistent'; +import { CacheTypeEnum } from '/@/enums/cacheEnum'; +import projectSetting from '/@/settings/projectSetting'; +import { TOKEN_KEY } from '/@/enums/cacheEnum'; + +const { permissionCacheType } = projectSetting; +const isLocal = permissionCacheType === CacheTypeEnum.LOCAL; + +export function getToken() { + return getAuthCache(TOKEN_KEY); +} + +export function getAuthCache(key: BasicKeys) { + const fn = isLocal ? Persistent.getLocal : Persistent.getSession; + return fn(key) as T; +} + +export function setAuthCache(key: BasicKeys, value) { + const fn = isLocal ? Persistent.setLocal : Persistent.setSession; + return fn(key, value, true); +} + +export function clearAuthCache(immediate = true) { + const fn = isLocal ? Persistent.clearLocal : Persistent.clearSession; + return fn(immediate); +} diff --git a/src/utils/bem.ts b/src/utils/bem.ts new file mode 100644 index 0000000..7dcadbc --- /dev/null +++ b/src/utils/bem.ts @@ -0,0 +1,52 @@ +import { prefixCls } from '/@/settings/designSetting'; + +type Mod = string | { [key: string]: any }; +type Mods = Mod | Mod[]; + +export type BEM = ReturnType; + +function genBem(name: string, mods?: Mods): string { + if (!mods) { + return ''; + } + + if (typeof mods === 'string') { + return ` ${name}--${mods}`; + } + + if (Array.isArray(mods)) { + return mods.reduce((ret, item) => ret + genBem(name, item), ''); + } + + return Object.keys(mods).reduce((ret, key) => ret + (mods[key] ? genBem(name, key) : ''), ''); +} + +/** + * bem helper + * b() // 'button' + * b('text') // 'button__text' + * b({ disabled }) // 'button button--disabled' + * b('text', { disabled }) // 'button__text button__text--disabled' + * b(['disabled', 'primary']) // 'button button--disabled button--primary' + */ +export function buildBEM(name: string) { + return (el?: Mods, mods?: Mods): Mods => { + if (el && typeof el !== 'string') { + mods = el; + el = ''; + } + + el = el ? `${name}__${el}` : name; + + return `${el}${genBem(el, mods)}`; + }; +} + +export function createBEM(name: string) { + return [buildBEM(`${prefixCls}-${name}`)]; +} + +export function createNamespace(name: string) { + const prefixedName = `${prefixCls}-${name}`; + return [prefixedName, buildBEM(prefixedName)] as const; +} diff --git a/src/utils/cache/index.ts b/src/utils/cache/index.ts new file mode 100644 index 0000000..2004c66 --- /dev/null +++ b/src/utils/cache/index.ts @@ -0,0 +1,32 @@ +import { getStorageShortName } from '/@/utils/env'; +import { createStorage as create, CreateStorageParams } from './storageCache'; +import { enableStorageEncryption } from '/@/settings/encryptionSetting'; +import { DEFAULT_CACHE_TIME } from '/@/settings/encryptionSetting'; + +export type Options = Partial; + +const createOptions = (storage: Storage, options: Options = {}): Options => { + return { + // No encryption in debug mode + hasEncrypt: enableStorageEncryption, + storage, + prefixKey: getStorageShortName(), + ...options, + }; +}; + +export const WebStorage = create(createOptions(sessionStorage)); + +export const createStorage = (storage: Storage = sessionStorage, options: Options = {}) => { + return create(createOptions(storage, options)); +}; + +export const createSessionStorage = (options: Options = {}) => { + return createStorage(sessionStorage, { ...options, timeout: DEFAULT_CACHE_TIME }); +}; + +export const createLocalStorage = (options: Options = {}) => { + return createStorage(localStorage, { ...options, timeout: DEFAULT_CACHE_TIME }); +}; + +export default WebStorage; diff --git a/src/utils/cache/memory.ts b/src/utils/cache/memory.ts new file mode 100644 index 0000000..08a0a64 --- /dev/null +++ b/src/utils/cache/memory.ts @@ -0,0 +1,107 @@ +export interface Cache { + value?: V; + timeoutId?: ReturnType; + time?: number; + alive?: number; +} + +const NOT_ALIVE = 0; + +export class Memory { + private cache: { [key in keyof T]?: Cache } = {}; + private alive: number; + + constructor(alive = NOT_ALIVE) { + // Unit second + this.alive = alive * 1000; + } + + get getCache() { + return this.cache; + } + + setCache(cache) { + this.cache = cache; + } + + // get(key: K) { + // const item = this.getItem(key); + // const time = item?.time; + // if (!isNullOrUnDef(time) && time < new Date().getTime()) { + // this.remove(key); + // } + // return item?.value ?? undefined; + // } + + get(key: K) { + return this.cache[key]; + } + + set(key: K, value: V, expires?: number) { + let item = this.get(key); + + if (!expires || (expires as number) <= 0) { + expires = this.alive; + } + if (item) { + if (item.timeoutId) { + clearTimeout(item.timeoutId); + item.timeoutId = undefined; + } + item.value = value; + } else { + item = { value, alive: expires }; + this.cache[key] = item; + } + + if (!expires) { + return value; + } + const now = new Date().getTime(); + /** + * Prevent overflow of the setTimeout Maximum delay value + * Maximum delay value 2,147,483,647 ms + * https://developer.mozilla.org/en-US/docs/Web/API/setTimeout#maximum_delay_value + */ + item.time = expires > now ? expires : now + expires; + item.timeoutId = setTimeout( + () => { + this.remove(key); + }, + expires > now ? expires - now : expires, + ); + + return value; + } + + remove(key: K) { + const item = this.get(key); + Reflect.deleteProperty(this.cache, key); + if (item) { + clearTimeout(item.timeoutId!); + return item.value; + } + } + + resetCache(cache: { [K in keyof T]: Cache }) { + Object.keys(cache).forEach((key) => { + const k = key as any as keyof T; + const item = cache[k]; + if (item && item.time) { + const now = new Date().getTime(); + const expire = item.time; + if (expire > now) { + this.set(k, item.value, expire); + } + } + }); + } + + clear() { + Object.keys(this.cache).forEach((key) => { + const item = this.cache[key]; + item.timeoutId && clearTimeout(item.timeoutId); + }); + this.cache = {}; + } +} diff --git a/src/utils/cache/persistent.ts b/src/utils/cache/persistent.ts new file mode 100644 index 0000000..cd68a36 --- /dev/null +++ b/src/utils/cache/persistent.ts @@ -0,0 +1,132 @@ +import type { LockInfo, UserInfo } from '/#/store'; +import type { ProjectConfig } from '/#/config'; +import type { RouteLocationNormalized } from 'vue-router'; + +import { createLocalStorage, createSessionStorage } from '/@/utils/cache'; +import { Memory } from './memory'; +import { + TOKEN_KEY, + USER_INFO_KEY, + ROLES_KEY, + LOCK_INFO_KEY, + PROJ_CFG_KEY, + APP_LOCAL_CACHE_KEY, + APP_SESSION_CACHE_KEY, + MULTIPLE_TABS_KEY, +} from '/@/enums/cacheEnum'; +import { DEFAULT_CACHE_TIME } from '/@/settings/encryptionSetting'; +import { toRaw } from 'vue'; +import { pick, omit } from 'lodash-es'; + +interface BasicStore { + [TOKEN_KEY]: string | number | null | undefined; + [USER_INFO_KEY]: UserInfo; + [ROLES_KEY]: string[]; + [LOCK_INFO_KEY]: LockInfo; + [PROJ_CFG_KEY]: ProjectConfig; + [MULTIPLE_TABS_KEY]: RouteLocationNormalized[]; +} + +type LocalStore = BasicStore; + +type SessionStore = BasicStore; + +export type BasicKeys = keyof BasicStore; +type LocalKeys = keyof LocalStore; +type SessionKeys = keyof SessionStore; + +const ls = createLocalStorage(); +const ss = createSessionStorage(); + +const localMemory = new Memory(DEFAULT_CACHE_TIME); +const sessionMemory = new Memory(DEFAULT_CACHE_TIME); + +function initPersistentMemory() { + const localCache = ls.get(APP_LOCAL_CACHE_KEY); + const sessionCache = ss.get(APP_SESSION_CACHE_KEY); + localCache && localMemory.resetCache(localCache); + sessionCache && sessionMemory.resetCache(sessionCache); +} + +export class Persistent { + static getLocal(key: LocalKeys) { + return localMemory.get(key)?.value as Nullable; + } + + static setLocal(key: LocalKeys, value: LocalStore[LocalKeys], immediate = false): void { + localMemory.set(key, toRaw(value)); + immediate && ls.set(APP_LOCAL_CACHE_KEY, localMemory.getCache); + } + + static removeLocal(key: LocalKeys, immediate = false): void { + localMemory.remove(key); + immediate && ls.set(APP_LOCAL_CACHE_KEY, localMemory.getCache); + } + + static clearLocal(immediate = false): void { + localMemory.clear(); + immediate && ls.clear(); + } + + static getSession(key: SessionKeys) { + return sessionMemory.get(key)?.value as Nullable; + } + + static setSession(key: SessionKeys, value: SessionStore[SessionKeys], immediate = false): void { + sessionMemory.set(key, toRaw(value)); + immediate && ss.set(APP_SESSION_CACHE_KEY, sessionMemory.getCache); + } + + static removeSession(key: SessionKeys, immediate = false): void { + sessionMemory.remove(key); + immediate && ss.set(APP_SESSION_CACHE_KEY, sessionMemory.getCache); + } + static clearSession(immediate = false): void { + sessionMemory.clear(); + immediate && ss.clear(); + } + + static clearAll(immediate = false) { + sessionMemory.clear(); + localMemory.clear(); + if (immediate) { + ls.clear(); + ss.clear(); + } + } +} + +window.addEventListener('beforeunload', function () { + // TOKEN_KEY 在登录或注销时已经写入到storage了,此处为了解决同时打开多个窗口时token不同步的问题 + // LOCK_INFO_KEY 在锁屏和解锁时写入,此处也不应修改 + ls.set(APP_LOCAL_CACHE_KEY, { + ...omit(localMemory.getCache, LOCK_INFO_KEY), + ...pick(ls.get(APP_LOCAL_CACHE_KEY), [TOKEN_KEY, USER_INFO_KEY, LOCK_INFO_KEY]), + }); + ss.set(APP_SESSION_CACHE_KEY, { + ...omit(sessionMemory.getCache, LOCK_INFO_KEY), + ...pick(ss.get(APP_SESSION_CACHE_KEY), [TOKEN_KEY, USER_INFO_KEY, LOCK_INFO_KEY]), + }); +}); + +function storageChange(e: any) { + const { key, newValue, oldValue } = e; + + if (!key) { + Persistent.clearAll(); + return; + } + + if (!!newValue && !!oldValue) { + if (APP_LOCAL_CACHE_KEY === key) { + Persistent.clearLocal(); + } + if (APP_SESSION_CACHE_KEY === key) { + Persistent.clearSession(); + } + } +} + +window.addEventListener('storage', storageChange); + +initPersistentMemory(); diff --git a/src/utils/cache/storageCache.ts b/src/utils/cache/storageCache.ts new file mode 100644 index 0000000..84ba2aa --- /dev/null +++ b/src/utils/cache/storageCache.ts @@ -0,0 +1,111 @@ +import { cacheCipher } from '/@/settings/encryptionSetting'; +import type { EncryptionParams } from '/@/utils/cipher'; +import { AesEncryption } from '/@/utils/cipher'; +import { isNullOrUnDef } from '/@/utils/is'; + +export interface CreateStorageParams extends EncryptionParams { + prefixKey: string; + storage: Storage; + hasEncrypt: boolean; + timeout?: Nullable; +} +export const createStorage = ({ + prefixKey = '', + storage = sessionStorage, + key = cacheCipher.key, + iv = cacheCipher.iv, + timeout = null, + hasEncrypt = true, +}: Partial = {}) => { + if (hasEncrypt && [key.length, iv.length].some((item) => item !== 16)) { + throw new Error('When hasEncrypt is true, the key or iv must be 16 bits!'); + } + + const encryption = new AesEncryption({ key, iv }); + + /** + * Cache class + * Construction parameters can be passed into sessionStorage, localStorage, + * @class Cache + * @example + */ + const WebStorage = class WebStorage { + private storage: Storage; + private prefixKey?: string; + private encryption: AesEncryption; + private hasEncrypt: boolean; + /** + * + * @param {*} storage + */ + constructor() { + this.storage = storage; + this.prefixKey = prefixKey; + this.encryption = encryption; + this.hasEncrypt = hasEncrypt; + } + + private getKey(key: string) { + return `${this.prefixKey}${key}`.toUpperCase(); + } + + /** + * Set cache + * @param {string} key + * @param {*} value + * @param {*} expire Expiration time in seconds + * @memberof Cache + */ + set(key: string, value: any, expire: number | null = timeout) { + const stringData = JSON.stringify({ + value, + time: Date.now(), + expire: !isNullOrUnDef(expire) ? new Date().getTime() + expire * 1000 : null, + }); + const stringifyValue = this.hasEncrypt + ? this.encryption.encryptByAES(stringData) + : stringData; + this.storage.setItem(this.getKey(key), stringifyValue); + } + + /** + * Read cache + * @param {string} key + * @param {*} def + * @memberof Cache + */ + get(key: string, def: any = null): any { + const val = this.storage.getItem(this.getKey(key)); + if (!val) return def; + + try { + const decVal = this.hasEncrypt ? this.encryption.decryptByAES(val) : val; + const data = JSON.parse(decVal); + const { value, expire } = data; + if (isNullOrUnDef(expire) || expire >= new Date().getTime()) { + return value; + } + this.remove(key); + } catch (e) { + return def; + } + } + + /** + * Delete cache based on key + * @param {string} key + * @memberof Cache + */ + remove(key: string) { + this.storage.removeItem(this.getKey(key)); + } + + /** + * Delete all caches of this instance + */ + clear(): void { + this.storage.clear(); + } + }; + return new WebStorage(); +}; diff --git a/src/utils/cipher.ts b/src/utils/cipher.ts new file mode 100644 index 0000000..9a8a89a --- /dev/null +++ b/src/utils/cipher.ts @@ -0,0 +1,55 @@ +import { encrypt, decrypt } from 'crypto-js/aes'; +import { parse } from 'crypto-js/enc-utf8'; +import pkcs7 from 'crypto-js/pad-pkcs7'; +import ECB from 'crypto-js/mode-ecb'; +import md5 from 'crypto-js/md5'; +import UTF8 from 'crypto-js/enc-utf8'; +import Base64 from 'crypto-js/enc-base64'; + +export interface EncryptionParams { + key: string; + iv: string; +} + +export class AesEncryption { + private key; + private iv; + + constructor(opt: Partial = {}) { + const { key, iv } = opt; + if (key) { + this.key = parse(key); + } + if (iv) { + this.iv = parse(iv); + } + } + + get getOptions() { + return { + mode: ECB, + padding: pkcs7, + iv: this.iv, + }; + } + + encryptByAES(cipherText: string) { + return encrypt(cipherText, this.key, this.getOptions).toString(); + } + + decryptByAES(cipherText: string) { + return decrypt(cipherText, this.key, this.getOptions).toString(UTF8); + } +} + +export function encryptByBase64(cipherText: string) { + return UTF8.parse(cipherText).toString(Base64); +} + +export function decodeByBase64(cipherText: string) { + return Base64.parse(cipherText).toString(UTF8); +} + +export function encryptByMd5(password: string) { + return md5(password).toString(); +} diff --git a/src/utils/codeformat.ts b/src/utils/codeformat.ts new file mode 100644 index 0000000..dea9330 --- /dev/null +++ b/src/utils/codeformat.ts @@ -0,0 +1,19 @@ +import prettier from 'prettier/standalone'; +import parserHtml from 'prettier/parser-html'; +import parserTs from 'prettier/parser-typescript'; +import parserBabel from 'prettier/parser-babel'; + +export const formatCode = (code: string, type = 'typescript'): string => { + return prettier.format(code, { + semi: true, + singleQuote: true, + printWidth: 100, + trailingComma: 'all', + proseWrap: 'never', + htmlWhitespaceSensitivity: 'strict', + endOfLine: 'auto', + paser: type, + plugins: [parserTs, parserBabel, parserHtml], + vueIndentScriptAndStyle: true, + }); +}; diff --git a/src/utils/color.ts b/src/utils/color.ts new file mode 100644 index 0000000..67a6b56 --- /dev/null +++ b/src/utils/color.ts @@ -0,0 +1,151 @@ +/** + * 判断是否 十六进制颜色值. + * 输入形式可为 #fff000 #f00 + * + * @param String color 十六进制颜色值 + * @return Boolean + */ +export function isHexColor(color: string) { + const reg = /^#([0-9a-fA-F]{3}|[0-9a-fA-f]{6})$/; + return reg.test(color); +} + +/** + * RGB 颜色值转换为 十六进制颜色值. + * r, g, 和 b 需要在 [0, 255] 范围内 + * + * @return String 类似#ff00ff + * @param r + * @param g + * @param b + */ +export function rgbToHex(r: number, g: number, b: number) { + // tslint:disable-next-line:no-bitwise + const hex = ((r << 16) | (g << 8) | b).toString(16); + return '#' + new Array(Math.abs(hex.length - 7)).join('0') + hex; +} + +/** + * Transform a HEX color to its RGB representation + * @param {string} hex The color to transform + * @returns The RGB representation of the passed color + */ +export function hexToRGB(hex: string) { + let sHex = hex.toLowerCase(); + if (isHexColor(hex)) { + if (sHex.length === 4) { + let sColorNew = '#'; + for (let i = 1; i < 4; i += 1) { + sColorNew += sHex.slice(i, i + 1).concat(sHex.slice(i, i + 1)); + } + sHex = sColorNew; + } + const sColorChange: number[] = []; + for (let i = 1; i < 7; i += 2) { + sColorChange.push(parseInt('0x' + sHex.slice(i, i + 2))); + } + return 'RGB(' + sColorChange.join(',') + ')'; + } + return sHex; +} + +export function colorIsDark(color: string) { + if (!isHexColor(color)) return; + const [r, g, b] = hexToRGB(color) + .replace(/(?:\(|\)|rgb|RGB)*/g, '') + .split(',') + .map((item) => Number(item)); + return r * 0.299 + g * 0.578 + b * 0.114 < 192; +} + +/** + * Darkens a HEX color given the passed percentage + * @param {string} color The color to process + * @param {number} amount The amount to change the color by + * @returns {string} The HEX representation of the processed color + */ +export function darken(color: string, amount: number) { + color = color.indexOf('#') >= 0 ? color.substring(1, color.length) : color; + amount = Math.trunc((255 * amount) / 100); + return `#${subtractLight(color.substring(0, 2), amount)}${subtractLight( + color.substring(2, 4), + amount, + )}${subtractLight(color.substring(4, 6), amount)}`; +} + +/** + * Lightens a 6 char HEX color according to the passed percentage + * @param {string} color The color to change + * @param {number} amount The amount to change the color by + * @returns {string} The processed color represented as HEX + */ +export function lighten(color: string, amount: number) { + color = color.indexOf('#') >= 0 ? color.substring(1, color.length) : color; + amount = Math.trunc((255 * amount) / 100); + return `#${addLight(color.substring(0, 2), amount)}${addLight( + color.substring(2, 4), + amount, + )}${addLight(color.substring(4, 6), amount)}`; +} + +/* Suma el porcentaje indicado a un color (RR, GG o BB) hexadecimal para aclararlo */ +/** + * Sums the passed percentage to the R, G or B of a HEX color + * @param {string} color The color to change + * @param {number} amount The amount to change the color by + * @returns {string} The processed part of the color + */ +function addLight(color: string, amount: number) { + const cc = parseInt(color, 16) + amount; + const c = cc > 255 ? 255 : cc; + return c.toString(16).length > 1 ? c.toString(16) : `0${c.toString(16)}`; +} + +/** + * Calculates luminance of an rgb color + * @param {number} r red + * @param {number} g green + * @param {number} b blue + */ +function luminanace(r: number, g: number, b: number) { + const a = [r, g, b].map((v) => { + v /= 255; + return v <= 0.03928 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4); + }); + return a[0] * 0.2126 + a[1] * 0.7152 + a[2] * 0.0722; +} + +/** + * Calculates contrast between two rgb colors + * @param {string} rgb1 rgb color 1 + * @param {string} rgb2 rgb color 2 + */ +function contrast(rgb1: string[], rgb2: number[]) { + return ( + (luminanace(~~rgb1[0], ~~rgb1[1], ~~rgb1[2]) + 0.05) / + (luminanace(rgb2[0], rgb2[1], rgb2[2]) + 0.05) + ); +} + +/** + * Determines what the best text color is (black or white) based con the contrast with the background + * @param hexColor - Last selected color by the user + */ +export function calculateBestTextColor(hexColor: string) { + const rgbColor = hexToRGB(hexColor.substring(1)); + const contrastWithBlack = contrast(rgbColor.split(','), [0, 0, 0]); + + return contrastWithBlack >= 12 ? '#000000' : '#FFFFFF'; +} + +/** + * Subtracts the indicated percentage to the R, G or B of a HEX color + * @param {string} color The color to change + * @param {number} amount The amount to change the color by + * @returns {string} The processed part of the color + */ +function subtractLight(color: string, amount: number) { + const cc = parseInt(color, 16) - amount; + const c = cc < 0 ? 0 : cc; + return c.toString(16).length > 1 ? c.toString(16) : `0${c.toString(16)}`; +} diff --git a/src/utils/dateUtil.ts b/src/utils/dateUtil.ts new file mode 100644 index 0000000..d8fbfce --- /dev/null +++ b/src/utils/dateUtil.ts @@ -0,0 +1,23 @@ +/** + * Independent time operation tool to facilitate subsequent switch to dayjs + */ +import dayjs from 'dayjs'; + +const DATE_TIME_FORMAT = 'YYYY-MM-DD HH:mm:ss'; +const DATE_FORMAT = 'YYYY-MM-DD'; + +export function formatToDateTime( + date: dayjs.Dayjs | Date | undefined | string | number | null = undefined, + format = DATE_TIME_FORMAT, +): string { + return dayjs(date).format(format); +} + +export function formatToDate( + date: dayjs.Dayjs | Date | undefined | string | number | null = undefined, + format = DATE_FORMAT, +): string { + return dayjs(date).format(format); +} + +export const dateUtil = dayjs; diff --git a/src/utils/domUtils.ts b/src/utils/domUtils.ts new file mode 100644 index 0000000..6b79d80 --- /dev/null +++ b/src/utils/domUtils.ts @@ -0,0 +1,181 @@ +import type { FunctionArgs } from '@vueuse/core'; +import { upperFirst } from 'lodash-es'; + +export interface ViewportOffsetResult { + left: number; + top: number; + right: number; + bottom: number; + rightIncludeBody: number; + bottomIncludeBody: number; +} + +export function getBoundingClientRect(element: Element): DOMRect | number { + if (!element || !element.getBoundingClientRect) { + return 0; + } + return element.getBoundingClientRect(); +} + +function trim(string: string) { + return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, ''); +} + +/* istanbul ignore next */ +export function hasClass(el: Element, cls: string) { + if (!el || !cls) return false; + if (cls.indexOf(' ') !== -1) throw new Error('className should not contain space.'); + if (el.classList) { + return el.classList.contains(cls); + } else { + return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1; + } +} + +/* istanbul ignore next */ +export function addClass(el: Element, cls: string) { + if (!el) return; + let curClass = el.className; + const classes = (cls || '').split(' '); + + for (let i = 0, j = classes.length; i < j; i++) { + const clsName = classes[i]; + if (!clsName) continue; + + if (el.classList) { + el.classList.add(clsName); + } else if (!hasClass(el, clsName)) { + curClass += ' ' + clsName; + } + } + if (!el.classList) { + el.className = curClass; + } +} + +/* istanbul ignore next */ +export function removeClass(el: Element, cls: string) { + if (!el || !cls) return; + const classes = cls.split(' '); + let curClass = ' ' + el.className + ' '; + + for (let i = 0, j = classes.length; i < j; i++) { + const clsName = classes[i]; + if (!clsName) continue; + + if (el.classList) { + el.classList.remove(clsName); + } else if (hasClass(el, clsName)) { + curClass = curClass.replace(' ' + clsName + ' ', ' '); + } + } + if (!el.classList) { + el.className = trim(curClass); + } +} +/** + * Get the left and top offset of the current element + * left: the distance between the leftmost element and the left side of the document + * top: the distance from the top of the element to the top of the document + * right: the distance from the far right of the element to the right of the document + * bottom: the distance from the bottom of the element to the bottom of the document + * rightIncludeBody: the distance between the leftmost element and the right side of the document + * bottomIncludeBody: the distance from the bottom of the element to the bottom of the document + * + * @description: + */ +export function getViewportOffset(element: Element): ViewportOffsetResult { + const doc = document.documentElement; + + const docScrollLeft = doc.scrollLeft; + const docScrollTop = doc.scrollTop; + const docClientLeft = doc.clientLeft; + const docClientTop = doc.clientTop; + + const pageXOffset = window.pageXOffset; + const pageYOffset = window.pageYOffset; + + const box = getBoundingClientRect(element); + + const { left: retLeft, top: rectTop, width: rectWidth, height: rectHeight } = box as DOMRect; + + const scrollLeft = (pageXOffset || docScrollLeft) - (docClientLeft || 0); + const scrollTop = (pageYOffset || docScrollTop) - (docClientTop || 0); + const offsetLeft = retLeft + pageXOffset; + const offsetTop = rectTop + pageYOffset; + + const left = offsetLeft - scrollLeft; + const top = offsetTop - scrollTop; + + const clientWidth = window.document.documentElement.clientWidth; + const clientHeight = window.document.documentElement.clientHeight; + + return { + left: left, + top: top, + right: clientWidth - rectWidth - left, + bottom: clientHeight - rectHeight - top, + rightIncludeBody: clientWidth - left, + bottomIncludeBody: clientHeight - top - 1, + }; +} + +export function hackCss(attr: string, value: string) { + const prefix: string[] = ['webkit', 'Moz', 'ms', 'OT']; + + const styleObj: any = {}; + prefix.forEach((item) => { + styleObj[`${item}${upperFirst(attr)}`] = value; + }); + return { + ...styleObj, + [attr]: value, + }; +} + +/* istanbul ignore next */ +export function on( + element: Element | HTMLElement | Document | Window, + event: string, + handler: EventListenerOrEventListenerObject, +): void { + if (element && event && handler) { + element.addEventListener(event, handler, false); + } +} + +/* istanbul ignore next */ +export function off( + element: Element | HTMLElement | Document | Window, + event: string, + handler: Fn, +): void { + if (element && event && handler) { + element.removeEventListener(event, handler, false); + } +} + +/* istanbul ignore next */ +export function once(el: HTMLElement, event: string, fn: EventListener): void { + const listener = function (this: any, ...args: unknown[]) { + if (fn) { + fn.apply(this, args); + } + off(el, event, listener); + }; + on(el, event, listener); +} + +export function useRafThrottle(fn: T): T { + let locked = false; + // @ts-ignore + return function (...args: any[]) { + if (locked) return; + locked = true; + window.requestAnimationFrame(() => { + // @ts-ignore + fn.apply(this, args); + locked = false; + }); + }; +} diff --git a/src/utils/env.ts b/src/utils/env.ts new file mode 100644 index 0000000..9987fbc --- /dev/null +++ b/src/utils/env.ts @@ -0,0 +1,93 @@ +import type { GlobEnvConfig } from '/#/config'; + +import { warn } from '/@/utils/log'; +import pkg from '../../package.json'; +import { getConfigFileName } from '../../build/getConfigFileName'; + +export function getCommonStoragePrefix() { + const { VITE_GLOB_APP_SHORT_NAME } = getAppEnvConfig(); + return `${VITE_GLOB_APP_SHORT_NAME}__${getEnv()}`.toUpperCase(); +} + +// Generate cache key according to version +export function getStorageShortName() { + return `${getCommonStoragePrefix()}${`__${pkg.version}`}__`.toUpperCase(); +} + +export function getAppEnvConfig() { + const ENV_NAME = getConfigFileName(import.meta.env); + + const ENV = (import.meta.env.DEV + ? // Get the global configuration (the configuration will be extracted independently when packaging) + (import.meta.env as unknown as GlobEnvConfig) + : window[ENV_NAME as any]) as unknown as GlobEnvConfig; + + const { + VITE_GLOB_APP_TITLE, + VITE_GLOB_API_URL, + VITE_GLOB_APP_SHORT_NAME, + VITE_GLOB_API_URL_PREFIX, + VITE_GLOB_UPLOAD_URL, + VITE_GLOB_UPLOAD_PREVIEW, + VITE_GLOB_OUT_LINK_URL, + VITE_GLOB_IM_LINK_URL, + VITE_GLOB_PRINT_BASE_URL, + VITE_GLOB_QN_LINK_URL, + } = ENV; + + if (!/^[a-zA-Z\_]*$/.test(VITE_GLOB_APP_SHORT_NAME)) { + warn( + `VITE_GLOB_APP_SHORT_NAME Variables can only be characters/underscores, please modify in the environment variables and re-running.`, + ); + } + + return { + VITE_GLOB_APP_TITLE, + VITE_GLOB_API_URL, + VITE_GLOB_APP_SHORT_NAME, + VITE_GLOB_API_URL_PREFIX, + VITE_GLOB_UPLOAD_URL, + VITE_GLOB_UPLOAD_PREVIEW, + VITE_GLOB_OUT_LINK_URL, + VITE_GLOB_IM_LINK_URL, + VITE_GLOB_PRINT_BASE_URL, + VITE_GLOB_QN_LINK_URL, + }; +} + +/** + * @description: Development mode + */ +export const devMode = 'development'; + +/** + * @description: Production mode + */ +export const prodMode = 'production'; + +/** + * @description: Get environment variables + * @returns: + * @example: + */ +export function getEnv(): string { + return import.meta.env.MODE; +} + +/** + * @description: Is it a development mode + * @returns: + * @example: + */ +export function isDevMode(): boolean { + return import.meta.env.DEV; +} + +/** + * @description: Is it a production mode + * @returns: + * @example: + */ +export function isProdMode(): boolean { + return import.meta.env.PROD; +} diff --git a/src/utils/event/index.ts b/src/utils/event/index.ts new file mode 100644 index 0000000..3a60d7c --- /dev/null +++ b/src/utils/event/index.ts @@ -0,0 +1,42 @@ +import ResizeObserver from 'resize-observer-polyfill'; + +const isServer = typeof window === 'undefined'; + +/* istanbul ignore next */ +function resizeHandler(entries: any[]) { + for (const entry of entries) { + const listeners = entry.target.__resizeListeners__ || []; + if (listeners.length) { + listeners.forEach((fn: () => any) => { + fn(); + }); + } + } +} + +/* istanbul ignore next */ +export function addResizeListener(element: any, fn: () => any) { + if (isServer) return; + if (!element.__resizeListeners__) { + element.__resizeListeners__ = []; + element.__ro__ = new ResizeObserver(resizeHandler); + element.__ro__.observe(element); + } + element.__resizeListeners__.push(fn); +} + +/* istanbul ignore next */ +export function removeResizeListener(element: any, fn: () => any) { + if (!element || !element.__resizeListeners__) return; + element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1); + if (!element.__resizeListeners__.length) { + element.__ro__.disconnect(); + } +} + +export function triggerWindowResize() { + const event = document.createEvent('HTMLEvents'); + event.initEvent('resize', true, true); + (event as any).eventType = 'message'; + window.dispatchEvent(event); +} diff --git a/src/utils/export.ts b/src/utils/export.ts new file mode 100644 index 0000000..c2549c8 --- /dev/null +++ b/src/utils/export.ts @@ -0,0 +1,327 @@ +// import { createCellPos } from './translateNumToLetter' +import Excel from 'exceljs'; + +import FileSaver from 'file-saver'; + +const exportExcel = function (luckysheet, value) { + // 参数为luckysheet.getluckysheetfile()获取的对象 + // 1.创建工作簿,可以为工作簿添加属性 + const workbook = new Excel.Workbook(); + // 2.创建表格,第二个参数可以配置创建什么样的工作表 + if (Object.prototype.toString.call(luckysheet) === '[object Object]') { + luckysheet = [luckysheet]; + } + luckysheet.forEach(function (table) { + if (table.data.length === 0) return true; + // ws.getCell('B2').fill = fills. + const worksheet = workbook.addWorksheet(table.name); + const merge = (table.config && table.config.merge) || {}; + const borderInfo = (table.config && table.config.borderInfo) || {}; + // 3.设置单元格合并,设置单元格边框,设置单元格样式,设置值 + setStyleAndValue(table.data, worksheet); + setMerge(merge, worksheet); + setBorder(borderInfo, worksheet); + return true; + }); + + // return + // 4.写入 buffer + const buffer = workbook.xlsx.writeBuffer().then((data) => { + // console.log('data', data) + const blob = new Blob([data], { + type: 'application/vnd.ms-excel;charset=utf-8', + }); + console.log('导出成功!'); + FileSaver.saveAs(blob, `${value}.xlsx`); + }); + return buffer; +}; + +const setMerge = function (luckyMerge = {}, worksheet) { + const mergearr = Object.values(luckyMerge); + mergearr.forEach((elem) => { + const elemAny = elem as any; + // elem格式:{r: 0, c: 0, rs: 1, cs: 2} + // 按开始行,开始列,结束行,结束列合并(相当于 K10:M12) + worksheet.mergeCells( + elemAny.r + 1, + elemAny.c + 1, + elemAny.r + elemAny.rs, + elemAny.c + elemAny.cs, + ); + }); +}; + +const setBorder = function (luckyBorderInfo, worksheet) { + if (!Array.isArray(luckyBorderInfo)) return; + // console.log('luckyBorderInfo', luckyBorderInfo) + luckyBorderInfo.forEach(function (elem) { + // 现在只兼容到borderType 为range的情况 + // console.log('ele', elem) + if (elem.rangeType === 'range') { + const border = borderConvert(elem.borderType, elem.style, elem.color); + const rang = elem.range[0]; + // console.log('range', rang) + const row = rang.row; + const column = rang.column; + for (let i = row[0] + 1; i < row[1] + 2; i++) { + for (let y = column[0] + 1; y < column[1] + 2; y++) { + worksheet.getCell(i, y).border = border; + } + } + } + if (elem.rangeType === 'cell') { + // col_index: 2 + // row_index: 1 + // b: { + // color: '#d0d4e3' + // style: 1 + // } + const { col_index, row_index } = elem.value; + const borderData = Object.assign({}, elem.value); + delete borderData.col_index; + delete borderData.row_index; + const border = addborderToCell(borderData); + // console.log('bordre', border, borderData) + worksheet.getCell(row_index + 1, col_index + 1).border = border; + } + // console.log(rang.column_focus + 1, rang.row_focus + 1) + // worksheet.getCell(rang.row_focus + 1, rang.column_focus + 1).border = border + }); +}; +const setStyleAndValue = function (cellArr, worksheet) { + if (!Array.isArray(cellArr)) return; + cellArr.forEach(function (row, rowid) { + row.every(function (cell, columnid) { + if (!cell) return true; + const fill = fillConvert(cell.bg); + + const font = fontConvert(cell.ff, cell.fc, cell.bl, cell.it, cell.fs, cell.cl, cell.ul); + const alignment = alignmentConvert(cell.vt, cell.ht, cell.tb, cell.tr); + let value: any = ''; + + if (cell.f) { + value = { formula: cell.f, result: cell.v }; + } else if (!cell.v && cell.ct && cell.ct.s) { + // xls转为xlsx之后,内部存在不同的格式,都会进到富文本里,即值不存在与cell.v,而是存在于cell.ct.s之后 + // value = cell.ct.s[0].v + cell.ct.s.forEach((arr) => { + value += arr.v; + }); + } else { + value = cell.v; + } + // style 填入到_value中可以实现填充色 + const letter = createCellPos(columnid); + const target = worksheet.getCell(letter + (rowid + 1)); + // console.log('1233', letter + (rowid + 1)) + for (const _ in fill) { + target.fill = fill; + break; + } + target.font = font; + target.alignment = alignment; + target.value = value; + + return true; + }); + }); +}; + +const fillConvert = function (bg) { + if (!bg) { + return {}; + } + // const bgc = bg.replace('#', '') + const fill = { + type: 'pattern', + pattern: 'solid', + fgColor: { argb: bg.replace('#', '') }, + }; + return fill; +}; + +const fontConvert = function (ff = 0, fc = '#000000', bl = 0, it = 0, fs = 10, cl = 0, ul = 0) { + // luckysheet:ff(样式), fc(颜色), bl(粗体), it(斜体), fs(大小), cl(删除线), ul(下划线) + const luckyToExcel = { + 0: '微软雅黑', + 1: '宋体(Song)', + 2: '黑体(ST Heiti)', + 3: '楷体(ST Kaiti)', + 4: '仿宋(ST FangSong)', + 5: '新宋体(ST Song)', + 6: '华文新魏', + 7: '华文行楷', + 8: '华文隶书', + 9: 'Arial', + 10: 'Times New Roman ', + 11: 'Tahoma ', + 12: 'Verdana', + num2bl: function (num) { + return num === 0 ? false : true; + }, + }; + // 出现Bug,导入的时候ff为luckyToExcel的val + + const font = { + name: typeof ff === 'number' ? luckyToExcel[ff] : ff, + family: 1, + size: fs, + color: { argb: fc.replace('#', '') }, + bold: luckyToExcel.num2bl(bl), + italic: luckyToExcel.num2bl(it), + underline: luckyToExcel.num2bl(ul), + strike: luckyToExcel.num2bl(cl), + }; + + return font; +}; + +const alignmentConvert = function (vt = 'default', ht = 'default', tb = 'default', tr = 'default') { + // luckysheet:vt(垂直), ht(水平), tb(换行), tr(旋转) + const luckyToExcel = { + vertical: { + 0: 'middle', + 1: 'top', + 2: 'bottom', + default: 'top', + }, + horizontal: { + 0: 'center', + 1: 'left', + 2: 'right', + default: 'left', + }, + wrapText: { + 0: false, + 1: false, + 2: true, + default: false, + }, + textRotation: { + 0: 0, + 1: 45, + 2: -45, + 3: 'vertical', + 4: 90, + 5: -90, + default: 0, + }, + }; + + const alignment = { + vertical: luckyToExcel.vertical[vt], + horizontal: luckyToExcel.horizontal[ht], + wrapText: luckyToExcel.wrapText[tb], + textRotation: luckyToExcel.textRotation[tr], + }; + return alignment; +}; + +const borderConvert = function (borderType, style = 1, color = '#000') { + // 对应luckysheet的config中borderinfo的的参数 + if (!borderType) { + return {}; + } + const luckyToExcel = { + type: { + 'border-all': 'all', + 'border-top': 'top', + 'border-right': 'right', + 'border-bottom': 'bottom', + 'border-left': 'left', + }, + style: { + 0: 'none', + 1: 'thin', + 2: 'hair', + 3: 'dotted', + 4: 'dashDot', // 'Dashed', + 5: 'dashDot', + 6: 'dashDotDot', + 7: 'double', + 8: 'medium', + 9: 'mediumDashed', + 10: 'mediumDashDot', + 11: 'mediumDashDotDot', + 12: 'slantDashDot', + 13: 'thick', + }, + }; + const template = { + style: luckyToExcel.style[style], + color: { argb: color.replace('#', '') }, + }; + const border = {}; + if (luckyToExcel.type[borderType] === 'all') { + border['top'] = template; + border['right'] = template; + border['bottom'] = template; + border['left'] = template; + } else { + border[luckyToExcel.type[borderType]] = template; + } + // console.log('border', border) + return border; +}; + +function addborderToCell(borders) { + const border = {}; + const luckyExcel = { + type: { + l: 'left', + r: 'right', + b: 'bottom', + t: 'top', + }, + style: { + 0: 'none', + 1: 'thin', + 2: 'hair', + 3: 'dotted', + 4: 'dashDot', // 'Dashed', + 5: 'dashDot', + 6: 'dashDotDot', + 7: 'double', + 8: 'medium', + 9: 'mediumDashed', + 10: 'mediumDashDot', + 11: 'mediumDashDotDot', + 12: 'slantDashDot', + 13: 'thick', + }, + }; + // console.log('borders', borders) + for (const bor in borders) { + // console.log(bor) + if (borders[bor].color.indexOf('rgb') === -1) { + border[luckyExcel.type[bor]] = { + style: luckyExcel.style[borders[bor].style], + color: { argb: borders[bor].color.replace('#', '') }, + }; + } else { + border[luckyExcel.type[bor]] = { + style: luckyExcel.style[borders[bor].style], + color: { argb: borders[bor].color }, + }; + } + } + + return border; +} + +function createCellPos(n) { + const ordA = 'A'.charCodeAt(0); + + const ordZ = 'Z'.charCodeAt(0); + const len = ordZ - ordA + 1; + let s = ''; + while (n >= 0) { + s = String.fromCharCode((n % len) + ordA) + s; + + n = Math.floor(n / len) - 1; + } + return s; +} + +export { exportExcel }; diff --git a/src/utils/factory/createAsyncComponent.tsx b/src/utils/factory/createAsyncComponent.tsx new file mode 100644 index 0000000..fc5e2a6 --- /dev/null +++ b/src/utils/factory/createAsyncComponent.tsx @@ -0,0 +1,63 @@ +import { + defineAsyncComponent, + // FunctionalComponent, CSSProperties +} from 'vue'; +import { Spin } from 'ant-design-vue'; +import { noop } from '/@/utils'; + +// const Loading: FunctionalComponent<{ size: 'small' | 'default' | 'large' }> = (props) => { +// const style: CSSProperties = { +// position: 'absolute', +// display: 'flex', +// justifyContent: 'center', +// alignItems: 'center', +// }; +// return ( +//
+// +//
+// ); +// }; + +interface Options { + size?: 'default' | 'small' | 'large'; + delay?: number; + timeout?: number; + loading?: boolean; + retry?: boolean; +} + +export function createAsyncComponent(loader: Fn, options: Options = {}) { + const { size = 'small', delay = 100, timeout = 30000, loading = false, retry = true } = options; + return defineAsyncComponent({ + loader, + loadingComponent: loading ? : undefined, + // The error component will be displayed if a timeout is + // provided and exceeded. Default: Infinity. + // TODO + timeout, + // errorComponent + // Defining if component is suspensible. Default: true. + // suspensible: false, + delay, + /** + * + * @param {*} error Error message object + * @param {*} retry A function that indicating whether the async component should retry when the loader promise rejects + * @param {*} fail End of failure + * @param {*} attempts Maximum allowed retries number + */ + onError: !retry + ? noop + : (error, retry, fail, attempts) => { + if (error.message.match(/fetch/) && attempts <= 3) { + // retry on fetch errors, 3 max attempts + retry(); + } else { + // Note that retry/fail are like resolve/reject of a promise: + // one of them must be called for the error handling to continue. + fail(); + } + }, + }); +} diff --git a/src/utils/file/base64Conver.ts b/src/utils/file/base64Conver.ts new file mode 100644 index 0000000..6751d97 --- /dev/null +++ b/src/utils/file/base64Conver.ts @@ -0,0 +1,41 @@ +/** + * @description: base64 to blob + */ +export function dataURLtoBlob(base64Buf: string): Blob { + const arr = base64Buf.split(','); + const typeItem = arr[0]; + const mime = typeItem.match(/:(.*?);/)![1]; + const bstr = window.atob(arr[1]); + let n = bstr.length; + const u8arr = new Uint8Array(n); + while (n--) { + u8arr[n] = bstr.charCodeAt(n); + } + return new Blob([u8arr], { type: mime }); +} + +/** + * img url to base64 + * @param url + */ +export function urlToBase64(url: string, mineType?: string): Promise { + return new Promise((resolve, reject) => { + let canvas = document.createElement('CANVAS') as Nullable; + const ctx = canvas!.getContext('2d'); + + const img = new Image(); + img.crossOrigin = ''; + img.onload = function () { + if (!canvas || !ctx) { + return reject(); + } + canvas.height = img.height; + canvas.width = img.width; + ctx.drawImage(img, 0, 0); + const dataURL = canvas.toDataURL(mineType || 'image/png'); + canvas = null; + resolve(dataURL); + }; + img.src = url; + }); +} diff --git a/src/utils/file/download.ts b/src/utils/file/download.ts new file mode 100644 index 0000000..7ea91b2 --- /dev/null +++ b/src/utils/file/download.ts @@ -0,0 +1,102 @@ +import { openWindow } from '..'; +import { dataURLtoBlob, urlToBase64 } from './base64Conver'; + +/** + * Download online pictures + * @param url + * @param filename + * @param mime + * @param bom + */ +export function downloadByOnlineUrl(url: string, filename: string, mime?: string, bom?: BlobPart) { + urlToBase64(url).then((base64) => { + downloadByBase64(base64, filename, mime, bom); + }); +} + +/** + * Download pictures based on base64 + * @param buf + * @param filename + * @param mime + * @param bom + */ +export function downloadByBase64(buf: string, filename: string, mime?: string, bom?: BlobPart) { + const base64Buf = dataURLtoBlob(buf); + downloadByData(base64Buf, filename, mime, bom); +} + +/** + * Download according to the background interface file stream + * @param {*} data + * @param {*} filename + * @param {*} mime + * @param {*} bom + */ +export function downloadByData(data: BlobPart, filename: string, mime?: string, bom?: BlobPart) { + const blobData = typeof bom !== 'undefined' ? [bom, data] : [data]; + const blob = new Blob(blobData, { type: mime || 'application/octet-stream' }); + + const blobURL = window.URL.createObjectURL(blob); + const tempLink = document.createElement('a'); + tempLink.style.display = 'none'; + tempLink.href = blobURL; + tempLink.setAttribute('download', filename); + if (typeof tempLink.download === 'undefined') { + tempLink.setAttribute('target', '_blank'); + } + document.body.appendChild(tempLink); + tempLink.click(); + document.body.removeChild(tempLink); + window.URL.revokeObjectURL(blobURL); +} + +/** + * Download file according to file address + * @param {*} sUrl + */ +export function downloadByUrl({ + url, + target = '_blank', + fileName, +}: { + url: string; + target?: TargetContext; + fileName?: string; +}): boolean { + const x = new window.XMLHttpRequest(); + x.open('GET', url, true); + x.responseType = 'blob'; + x.onload = () => { + let fileUrl = window.URL.createObjectURL(x.response); + const isChrome = window.navigator.userAgent.toLowerCase().indexOf('chrome') > -1; + const isSafari = window.navigator.userAgent.toLowerCase().indexOf('safari') > -1; + + if (/(iP)/g.test(window.navigator.userAgent)) { + console.error('Your browser does not support download!'); + return false; + } + if (isChrome || isSafari) { + const link = document.createElement('a'); + link.href = fileUrl; + link.target = target; + + if (link.download !== undefined) { + link.download = fileName || fileUrl.substring(fileUrl.lastIndexOf('/') + 1, fileUrl.length); + } + + if (document.createEvent) { + const e = document.createEvent('MouseEvents'); + e.initEvent('click', true, true); + link.dispatchEvent(e); + return true; + } + } + if (fileUrl.indexOf('?') === -1) { + fileUrl += '?download'; + } + openWindow(fileUrl, { target }); + }; + x.send(); + return true; +} diff --git a/src/utils/formSettings/formJson.ts b/src/utils/formSettings/formJson.ts new file mode 100644 index 0000000..dd22b70 --- /dev/null +++ b/src/utils/formSettings/formJson.ts @@ -0,0 +1,48 @@ +import { buildOption } from '/@/utils/helper/designHelper'; +import { getFormTemplate } from '/@/api/form/design'; +import { FormTemplateModel } from '/@/api/form/design/model'; +import { FormJson } from '/@/model/generator/codeGenerator'; +import { SystemComponentConfig } from '/@/model/workflow/bpmnConfig'; +export async function getSystemJson(formId: string) { + try { + const systemJson = await getFormTemplate(formId); + const systemComponent = { + functionalModule: systemJson.functionalModule, + functionName: systemJson.functionName, + functionFormName: 'Form', + }; + return { ...systemJson, systemComponent }; + } catch (error) { + return null; + } + // const file = importLocale(formId); + // try { + // const result = await file; + // return result && result.formProps ? result.formProps : null; + // } catch (error) { + // return null; + // } +} +/* +系统表单工作流权限获取 +*/ +export function importWorkflowPermission(systemComponent: SystemComponentConfig) { + return import( + `./../../views/${systemComponent.functionalModule}/${systemComponent.functionName}/components/workflowPermission.ts` + ); +} + +// export function importLocale(locale: string) { +// return import(`./../../views/dev/${locale}/components/config.ts`); +// } + +export async function getCustomJson(formId: string) { + try { + const res = await getFormTemplate(formId); + const model = JSON.parse(res.formJson) as FormTemplateModel; + const formJson = model.formJson as unknown as FormJson; + return res.formJson ? buildOption(formJson, false) : null; + } catch (error) { + return null; + } +} diff --git a/src/utils/helper/appDataDesignHelper.ts b/src/utils/helper/appDataDesignHelper.ts new file mode 100644 index 0000000..bd5e3d4 --- /dev/null +++ b/src/utils/helper/appDataDesignHelper.ts @@ -0,0 +1,406 @@ +import { LocationType } from '/@/enums/desktop'; +import { DesktopInfoItem } from '/@/model/mobileDesign/designer'; + +/** + * 构建app数据设计页代码 + * @param model + * @param _tableInfo + * @returns + */ +export function buildAppDataCode(model: Array, isHome: number): string { + const compMap: any[] = []; + let importCode = ''; + let configCode = ''; + let code = ` + + + +`; + + return code; +} + +function getLegend(config) { + let left = 'left'; + let top = 'bottom'; + if (config.position == LocationType.LEFT_TOP) { + left = config.orient == 'horizontal' ? 'left' : 'top'; + top = config.orient == 'horizontal' ? 'top' : 'left'; + } else if (config.position == LocationType.RIGHT_TOP) { + left = config.orient == 'horizontal' ? 'right' : 'top'; + top = config.orient == 'horizontal' ? 'top' : 'right'; + } else if (config.position == LocationType.LEFT_BOTTOM) { + left = config.orient == 'horizontal' ? 'left' : 'bottom'; + top = config.orient == 'horizontal' ? 'bottom' : 'left'; + } else if (config.position == LocationType.RIGHT_BOTTOM) { + left = config.orient == 'horizontal' ? 'right' : 'bottom'; + top = config.orient == 'horizontal' ? 'bottom' : 'right'; + } else if (config.position == LocationType.TOP_CENTER) { + left = 'center'; + top = config.orient == 'horizontal' ? 'top' : 'left'; + } else if (config.position == LocationType.BOTTOM_CENTER) { + left = 'center'; + top = config.orient == 'horizontal' ? 'bottom' : 'left'; + } + const legend = { + show: config.show, + position: top, + float: left, + margin: config.padding, + legendShape: config.icon, + fontColor: config.textStyle.color, + }; + return legend; +} diff --git a/src/utils/helper/generatorAppHelper.ts b/src/utils/helper/generatorAppHelper.ts new file mode 100644 index 0000000..06018cb --- /dev/null +++ b/src/utils/helper/generatorAppHelper.ts @@ -0,0 +1,153 @@ +import { camelCaseString } from '../event/design'; +import { buildAppFormProps } from './designHelper'; +import { ComponentOptionModel, FormJson } from '/@/model/generator/codeGenerator'; + +export const buildAppSchemeStrBySchema = (json: FormJson, convertCamel = true) => { + const props = buildAppFormProps(json, convertCamel); + return props; +}; + +export const buildAppSchemeStr = (list: ComponentOptionModel[], convertCamel: boolean): string => { + const code = `${list.map((item) => { + if (item.type === 'divider') { + return `{ + key: '${item.key}', + field: ${convertCamel ? camelCaseString(item.bindField) : item.bindField} + name: '${item.label}', + component: componentType.divider, + componentProps: { + text: '${item.options!.defaultValue}', + align: '${item.options!.orientation}', + }, + }`; + } + //如果是栅格布局组件 手机端没有 必须要扁平化 + else if (item.type === 'grid') { + let gridStr = ``; + item.layout?.map((el) => { + gridStr += buildAppSchemeStr(el.list, convertCamel); + }); + + return gridStr; + } //如果是tab组件 转换为手机端配置 + else if (item.type === 'tab') { + return `{ + key: '${item.key}', + name: '${item.label}', + component: componentType.segmented, + layout: [${item.layout?.map((el, index) => { + return `{ + name: '${el.name}', + value: '${index}', + children: [${buildAppSchemeStr(el.list, convertCamel)}], + }`; + })}], + }`; + } else if (item.type === 'card') { + return `{ + key: '${item.key}', + name: '${item.label}', + component: componentType.collapse, + layout: [${item.layout?.map((el, index) => { + return `{ + name: '${el.name}', + value: '${index}', + children: [${buildAppSchemeStr(el.list, convertCamel)}], + }`; + })}], + }`; + } else if (item.type === 'subForm') { + return `{ + field: '${item.bindField}', //字段 + key: '${item.key}', + name: '${item.label}', + component: componentType.subForm, + columns: [${buildAppSchemeStr(item.children!, convertCamel)}], + }`; + } else { + return buildAppDefaultSchema(item, convertCamel); + } + })}`; + return code; +}; + +export function buildAppDefaultSchema(model: ComponentOptionModel, convertCamel: boolean): string { + const compType = buildAppComponentTypeStr(model.type); + const schema = `{ + key: '${model.key}', + field: '${(convertCamel ? camelCaseString(model.bindField)! : model.bindField) || ''}', + label: '${model.label}', + component: '${compType}', + defaultValue: '${model.options?.defaultValue}', + componentProps: { + placeholder: '请输入${model.label}', + }, + name: '${model.label}', + }`; + return schema; +} + +export function buildAppComponentTypeStr(type: string): string { + switch (type) { + case 'input': + return 'componentType.input'; + + case 'password': + return 'componentType.input'; + + case 'textarea': + return 'componentType.input'; + + case 'number': + return 'componentType.inputNumber'; + + case 'radio': + return 'componentType.radio'; + + case 'checkbox': + return 'componentType.checkbox'; + + case 'select': + return 'componentType.select'; + + case 'cascader': + return 'componentType.select'; + + case 'time': + return 'componentType.dateTime'; + case 'date': + return 'componentType.dateTime'; + + case 'time-range': + return 'componentType.dateRange'; + + case 'date-range': + return 'componentType.dateRange'; + + case 'rate': + return 'componentType.inputNumber'; + + case 'switch': + return 'componentType.switch'; + + case 'slider': + return 'componentType.inputNumber'; + + case 'divider': + return 'componentType.divider'; + + case 'upload': + return 'componentType.input'; + + case 'richtext-editor': + return 'componentType.input'; + + case 'form': + return 'componentType.subForm'; + case 'one-for-one': + return 'componentType.subForm'; + + default: + return 'componentType.input'; + } +} diff --git a/src/utils/helper/treeHelper.ts b/src/utils/helper/treeHelper.ts new file mode 100644 index 0000000..d905a22 --- /dev/null +++ b/src/utils/helper/treeHelper.ts @@ -0,0 +1,204 @@ +interface TreeHelperConfig { + id: string; + children: string; + pid: string; +} +const DEFAULT_CONFIG: TreeHelperConfig = { + id: 'id', + children: 'children', + pid: 'pid', +}; + +const getConfig = (config: Partial) => Object.assign({}, DEFAULT_CONFIG, config); + +// tree from list +export function listToTree(list: any[], config: Partial = {}): T[] { + const conf = getConfig(config) as TreeHelperConfig; + const nodeMap = new Map(); + const result: T[] = []; + const { id, children, pid } = conf; + + for (const node of list) { + node[children] = node[children] || []; + nodeMap.set(node[id], node); + } + for (const node of list) { + const parent = nodeMap.get(node[pid]); + (parent ? parent[children] : result).push(node); + } + return result; +} + +export function treeToList(tree: any, config: Partial = {}): T { + config = getConfig(config); + const { children } = config; + const result: any = [...tree]; + for (let i = 0; i < result.length; i++) { + if (!result[i][children!]) continue; + result.splice(i + 1, 0, ...result[i][children!]); + } + return result; +} + +export function findNode( + tree: any, + func: Fn, + config: Partial = {}, +): T | null { + config = getConfig(config); + const { children } = config; + const list = [...tree]; + for (const node of list) { + if (func(node)) return node; + node[children!] && list.push(...node[children!]); + } + return null; +} + +export function findNodeAll( + tree: any, + func: Fn, + config: Partial = {}, +): T[] { + config = getConfig(config); + const { children } = config; + const list = [...tree]; + const result: T[] = []; + for (const node of list) { + func(node) && result.push(node); + node[children!] && list.push(...node[children!]); + } + return result; +} + +export function findPath( + tree: any, + func: Fn, + config: Partial = {}, +): T | T[] | null { + config = getConfig(config); + const path: T[] = []; + const list = [...tree]; + const visitedSet = new Set(); + const { children } = config; + while (list.length) { + const node = list[0]; + if (visitedSet.has(node)) { + path.pop(); + list.shift(); + } else { + visitedSet.add(node); + node[children!] && list.unshift(...node[children!]); + path.push(node); + if (func(node)) { + return path; + } + } + } + return null; +} + +export function findPathAll(tree: any, func: Fn, config: Partial = {}) { + config = getConfig(config); + const path: any[] = []; + const list = [...tree]; + const result: any[] = []; + const visitedSet = new Set(), + { children } = config; + while (list.length) { + const node = list[0]; + if (visitedSet.has(node)) { + path.pop(); + list.shift(); + } else { + visitedSet.add(node); + node[children!] && list.unshift(...node[children!]); + path.push(node); + func(node) && result.push([...path]); + } + } + return result; +} + +export function filter( + tree: T[], + func: (n: T) => boolean, + config: Partial = {}, +): T[] { + config = getConfig(config); + const children = config.children as string; + function listFilter(list: T[]) { + return list + .map((node: any) => ({ ...node })) + .filter((node) => { + node[children] = node[children] && listFilter(node[children]); + return func(node) || (node[children] && node[children].length); + }); + } + return listFilter(tree); +} + +export function forEach( + tree: T[], + func: (n: T) => any, + config: Partial = {}, +): void { + config = getConfig(config); + const list: any[] = [...tree]; + const { children } = config; + for (let i = 0; i < list.length; i++) { + //func 返回true就终止遍历,避免大量节点场景下无意义循环,引起浏览器卡顿 + if (func(list[i])) { + return; + } + children && list[i][children] && list.splice(i + 1, 0, ...list[i][children]); + } +} + +/** + * @description: Extract tree specified structure + */ +export function treeMap(treeData: T[], opt: { children?: string; conversion: Fn }): T[] { + return treeData.map((item) => treeMapEach(item, opt)); +} + +/** + * @description: Extract tree specified structure + */ +export function treeMapEach( + data: any, + { children = 'children', conversion }: { children?: string; conversion: Fn }, +) { + const haveChildren = Array.isArray(data[children]) && data[children].length > 0; + const conversionData = conversion(data) || {}; + if (haveChildren) { + return { + ...conversionData, + [children]: data[children].map((i: number) => + treeMapEach(i, { + children, + conversion, + }), + ), + }; + } else { + return { + ...conversionData, + }; + } +} + +/** + * 递归遍历树结构 + * @param treeDatas 树 + * @param callBack 回调 + * @param parentNode 父节点 + */ +export function eachTree(treeDatas: any[], callBack: Fn, parentNode = {}) { + treeDatas.forEach((element) => { + const newNode = callBack(element, parentNode) || element; + if (element.children) { + eachTree(element.children, callBack, newNode); + } + }); +} diff --git a/src/utils/helper/tsxHelper.tsx b/src/utils/helper/tsxHelper.tsx new file mode 100644 index 0000000..46e0001 --- /dev/null +++ b/src/utils/helper/tsxHelper.tsx @@ -0,0 +1,35 @@ +import { Slots } from 'vue'; +import { isFunction } from '/@/utils/is'; + +/** + * @description: Get slot to prevent empty error + */ +export function getSlot(slots: Slots, slot = 'default', data?: any) { + if (!slots || !Reflect.has(slots, slot)) { + return null; + } + if (!isFunction(slots[slot])) { + console.error(`${slot} is not a function!`); + return null; + } + const slotFn = slots[slot]; + if (!slotFn) return null; + return slotFn(data); +} + +/** + * extends slots + * @param slots + * @param excludeKeys + */ +export function extendSlots(slots: Slots, excludeKeys: string[] = []) { + const slotKeys = Object.keys(slots); + const ret: any = {}; + slotKeys.map((key) => { + if (excludeKeys.includes(key)) { + return null; + } + ret[key] = () => getSlot(slots, key); + }); + return ret; +} diff --git a/src/utils/http/axios/Axios.ts b/src/utils/http/axios/Axios.ts new file mode 100644 index 0000000..8259392 --- /dev/null +++ b/src/utils/http/axios/Axios.ts @@ -0,0 +1,349 @@ +import type { AxiosRequestConfig, AxiosInstance, AxiosResponse, AxiosError } from 'axios'; +import type { RequestOptions, Result, UploadFileParams } from '/#/axios'; +import type { CreateAxiosOptions } from './axiosTransform'; +import axios from 'axios'; +import qs from 'qs'; +import { AxiosCanceler } from './axiosCancel'; +import { isFunction } from '/@/utils/is'; +import { cloneDeep } from 'lodash-es'; +import { ContentTypeEnum } from '/@/enums/httpEnum'; +import { RequestEnum } from '/@/enums/httpEnum'; +// import { useUserStore } from '/@/store/modules/user'; +// import { router } from '/@/router'; +// import { PageEnum } from '/@/enums/pageEnum'; + +export * from './axiosTransform'; + +/** + * @description: axios module + */ +export class VAxios { + private axiosInstance: AxiosInstance; + private readonly options: CreateAxiosOptions; + + constructor(options: CreateAxiosOptions) { + this.options = options; + this.axiosInstance = axios.create(options); + this.setupInterceptors(); + } + + /** + * @description: Create axios instance + */ + private createAxios(config: CreateAxiosOptions): void { + this.axiosInstance = axios.create(config); + } + + private getTransform() { + const { transform } = this.options; + return transform; + } + + getAxios(): AxiosInstance { + return this.axiosInstance; + } + + /** + * @description: Reconfigure axios + */ + configAxios(config: CreateAxiosOptions) { + if (!this.axiosInstance) { + return; + } + this.createAxios(config); + } + + /** + * @description: Set general header + */ + setHeader(headers: any): void { + if (!this.axiosInstance) { + return; + } + Object.assign(this.axiosInstance.defaults.headers, headers); + } + + /** + * @description: Interceptor configuration + */ + private setupInterceptors() { + const transform = this.getTransform(); + if (!transform) { + return; + } + const { + requestInterceptors, + requestInterceptorsCatch, + responseInterceptors, + responseInterceptorsCatch, + } = transform; + + const axiosCanceler = new AxiosCanceler(); + + // Request interceptor configuration processing + this.axiosInstance.interceptors.request.use((config: AxiosRequestConfig) => { + // If cancel repeat request is turned on, then cancel repeat request is prohibited + // @ts-ignore + const { ignoreCancelToken } = config.requestOptions; + const ignoreCancel = + ignoreCancelToken !== undefined + ? ignoreCancelToken + : this.options.requestOptions?.ignoreCancelToken; + + !ignoreCancel && axiosCanceler.addPending(config); + if (requestInterceptors && isFunction(requestInterceptors)) { + config = requestInterceptors(config, this.options); + } + return config; + }, undefined); + + // Request interceptor error capture + requestInterceptorsCatch && + isFunction(requestInterceptorsCatch) && + this.axiosInstance.interceptors.request.use(undefined, requestInterceptorsCatch); + + // Response result interceptor processing + this.axiosInstance.interceptors.response.use((res: AxiosResponse) => { + res && axiosCanceler.removePending(res.config); + if (responseInterceptors && isFunction(responseInterceptors)) { + res = responseInterceptors(res); + } + return res; + }, undefined); + + // Response result interceptor error capture + responseInterceptorsCatch && + isFunction(responseInterceptorsCatch) && + this.axiosInstance.interceptors.response.use(undefined, (error) => { + // @ts-ignore + return responseInterceptorsCatch(this.axiosInstance, error); + }); + } + + /** + * @description: File Upload + */ + uploadFile(config: AxiosRequestConfig, params: UploadFileParams) { + const formData = new window.FormData(); + const customFilename = params.name || 'file'; + + if (params.filename) { + if (params.file instanceof Array) { + for (const f of params.file as File[]) { + formData.append(customFilename, f, params.filename); + } + } else { + formData.append(customFilename, params.file, params.filename); + } + } else { + if (params.file instanceof Array) { + for (const f of params.file as File[]) { + formData.append(customFilename, f); + } + } else { + formData.append(customFilename, params.file); + } + } + + if (params.data) { + Object.keys(params.data).forEach((key) => { + const value = params.data![key]; + if (Array.isArray(value)) { + value.forEach((item) => { + formData.append(`${key}[]`, item); + }); + return; + } + + formData.append(key, params.data![key]); + }); + } + + return this.request({ + ...config, + method: 'POST', + data: formData, + transformRequest: [ + function () { + return formData; + }, + ], + headers: { + 'Content-type': ContentTypeEnum.FORM_DATA, + // @ts-ignore + ignoreCancelToken: true, + }, + }); + } + + // support form-data + supportFormData(config: AxiosRequestConfig) { + const headers = config.headers || this.options.headers; + const contentType = headers?.['Content-Type'] || headers?.['content-type']; + + if ( + contentType !== ContentTypeEnum.FORM_URLENCODED || + !Reflect.has(config, 'data') || + config.method?.toUpperCase() === RequestEnum.GET + ) { + return config; + } + + return { + ...config, + data: qs.stringify(config.data, { arrayFormat: 'brackets' }), + }; + } + + get(config: AxiosRequestConfig, options?: RequestOptions): Promise { + return this.request({ ...config, method: 'GET' }, options); + } + + post(config: AxiosRequestConfig, options?: RequestOptions): Promise { + return this.request({ ...config, method: 'POST' }, options); + } + + put(config: AxiosRequestConfig, options?: RequestOptions): Promise { + return this.request({ ...config, method: 'PUT' }, options); + } + + delete(config: AxiosRequestConfig, options?: RequestOptions): Promise { + return this.request({ ...config, method: 'DELETE' }, options); + } + download(config: AxiosRequestConfig, options?: RequestOptions): Promise { + let conf: CreateAxiosOptions = cloneDeep(config); + const transform = this.getTransform(); + + const { requestOptions } = this.options; + + const opt: RequestOptions = Object.assign({}, requestOptions, options); + + const { beforeRequestHook, requestCatchHook, transformRequestHook } = transform || {}; + if (beforeRequestHook && isFunction(beforeRequestHook)) { + conf = beforeRequestHook(conf, opt); + } + conf.requestOptions = opt; + + conf = this.supportFormData(conf); + + return new Promise((resolve, reject) => { + this.axiosInstance + .request>(conf) + .then(async (res: AxiosResponse) => { + if (transformRequestHook && isFunction(transformRequestHook)) { + try { + if (res.data.type === 'application/json') { + res.data = await new Promise((resolve2) => { + const reader = new FileReader(); + reader.readAsText(res.data); + reader.onload = async function () { + resolve2(JSON.parse(reader.result)); + }; + }); + const ret = transformRequestHook(res, opt); + resolve(ret); + } else { + resolve(res as unknown as Promise); + } + } catch (err) { + reject(err || new Error('request error!')); + } + return; + } + }) + .catch((e: Error | AxiosError) => { + if (requestCatchHook && isFunction(requestCatchHook)) { + reject(requestCatchHook(e, opt)); + return; + } + if (axios.isAxiosError(e)) { + // rewrite error message from axios in here + } + reject(e); + }); + }); + } + desktopApi(url, method, options?: RequestOptions): Promise { + let conf: CreateAxiosOptions = cloneDeep({ url, method }); + const transform = this.getTransform(); + + const { requestOptions } = this.options; + + const opt: RequestOptions = Object.assign({}, requestOptions, options); + + const { beforeRequestHook, requestCatchHook } = transform || {}; + if (beforeRequestHook && isFunction(beforeRequestHook)) { + conf = beforeRequestHook(conf, opt); + } + conf.requestOptions = opt; + + conf = this.supportFormData(conf); + + return new Promise((resolve, reject) => { + this.axiosInstance + .request>(conf) + .then((res: AxiosResponse) => { + resolve(res.data.data as unknown as Promise); + }) + .catch((e: Error | AxiosError) => { + if (requestCatchHook && isFunction(requestCatchHook)) { + reject(requestCatchHook(e, opt)); + return; + } + if (axios.isAxiosError(e)) { + // rewrite error message from axios in here + } + reject(e); + }); + }); + } + request(config: AxiosRequestConfig, options?: RequestOptions): Promise { + let conf: CreateAxiosOptions = cloneDeep(config); + const transform = this.getTransform(); + + const { requestOptions } = this.options; + + const opt: RequestOptions = Object.assign({}, requestOptions, options); + + const { beforeRequestHook, requestCatchHook, transformRequestHook } = transform || {}; + if (beforeRequestHook && isFunction(beforeRequestHook)) { + conf = beforeRequestHook(conf, opt); + } + conf.requestOptions = opt; + + conf = this.supportFormData(conf); + return new Promise((resolve, reject) => { + this.axiosInstance + .request>(conf) + .then((res: AxiosResponse) => { + if (transformRequestHook && isFunction(transformRequestHook)) { + try { + const ret = transformRequestHook(res, opt); + resolve(ret); + } catch (err) { + reject(err || new Error('request error!')); + } + return; + } + resolve(res as unknown as Promise); + }) + .catch((e: Error | AxiosError) => { + // if (e.message.includes('timeout') || e.message.includes('Network Error')) { + // const userStore = useUserStore(); + // userStore.setToken(undefined); + // userStore.setSessionTimeout(false); + // userStore.setUserInfo(null); + // router.push(PageEnum.BASE_LOGIN); + // } + if (requestCatchHook && isFunction(requestCatchHook)) { + reject(requestCatchHook(e, opt)); + return; + } + if (axios.isAxiosError(e)) { + // rewrite error message from axios in here + } + reject(e); + }); + }); + } +} diff --git a/src/utils/http/axios/axiosCancel.ts b/src/utils/http/axios/axiosCancel.ts new file mode 100644 index 0000000..081233e --- /dev/null +++ b/src/utils/http/axios/axiosCancel.ts @@ -0,0 +1,60 @@ +import type { AxiosRequestConfig, Canceler } from 'axios'; +import axios from 'axios'; +import { isFunction } from '/@/utils/is'; + +// Used to store the identification and cancellation function of each request +let pendingMap = new Map(); + +export const getPendingUrl = (config: AxiosRequestConfig) => [config.method, config.url].join('&'); + +export class AxiosCanceler { + /** + * Add request + * @param {Object} config + */ + addPending(config: AxiosRequestConfig) { + this.removePending(config); + const url = getPendingUrl(config); + config.cancelToken = + config.cancelToken || + new axios.CancelToken((cancel) => { + if (!pendingMap.has(url)) { + // If there is no current request in pending, add it + pendingMap.set(url, cancel); + } + }); + } + + /** + * @description: Clear all pending + */ + removeAllPending() { + pendingMap.forEach((cancel) => { + cancel && isFunction(cancel) && cancel(); + }); + pendingMap.clear(); + } + + /** + * Removal request + * @param {Object} config + */ + removePending(config: AxiosRequestConfig) { + const url = getPendingUrl(config); + + if (pendingMap.has(url)) { + // If there is a current request identifier in pending, + // the current request needs to be cancelled and removed + const cancel = pendingMap.get(url); + cancel && cancel(url); + pendingMap.delete(url); + } + } + + /** + * @description: reset + */ + reset(): void { + pendingMap = new Map(); + } +} diff --git a/src/utils/http/axios/axiosRetry.ts b/src/utils/http/axios/axiosRetry.ts new file mode 100644 index 0000000..d081b96 --- /dev/null +++ b/src/utils/http/axios/axiosRetry.ts @@ -0,0 +1,28 @@ +import { AxiosError, AxiosInstance } from 'axios'; +/** + * 请求重试机制 + */ + +export class AxiosRetry { + /** + * 重试 + */ + retry(AxiosInstance: AxiosInstance, error: AxiosError) { + // @ts-ignore + const { config } = error.response; + const { waitTime, count } = config?.requestOptions?.retryRequest; + config.__retryCount = config.__retryCount || 0; + if (config.__retryCount >= count) { + return Promise.reject(error); + } + config.__retryCount += 1; + return this.delay(waitTime).then(() => AxiosInstance(config)); + } + + /** + * 延迟 + */ + private delay(waitTime: number) { + return new Promise((resolve) => setTimeout(resolve, waitTime)); + } +} diff --git a/src/utils/http/axios/axiosTransform.ts b/src/utils/http/axios/axiosTransform.ts new file mode 100644 index 0000000..beeac6c --- /dev/null +++ b/src/utils/http/axios/axiosTransform.ts @@ -0,0 +1,52 @@ +/** + * Data processing class, can be configured according to the project + */ +import type { AxiosRequestConfig, AxiosResponse } from 'axios'; +import type { RequestOptions, Result } from '/#/axios'; + +export interface CreateAxiosOptions extends AxiosRequestConfig { + authenticationScheme?: string; + transform?: AxiosTransform; + requestOptions?: RequestOptions; +} + +export abstract class AxiosTransform { + /** + * @description: Process configuration before request + * @description: Process configuration before request + */ + beforeRequestHook?: (config: AxiosRequestConfig, options: RequestOptions) => AxiosRequestConfig; + + /** + * @description: Request successfully processed + */ + transformRequestHook?: (res: AxiosResponse, options: RequestOptions) => any; + + /** + * @description: 请求失败处理 + */ + requestCatchHook?: (e: Error, options: RequestOptions) => Promise; + + /** + * @description: 请求之前的拦截器 + */ + requestInterceptors?: ( + config: AxiosRequestConfig, + options: CreateAxiosOptions, + ) => AxiosRequestConfig; + + /** + * @description: 请求之后的拦截器 + */ + responseInterceptors?: (res: AxiosResponse) => AxiosResponse; + + /** + * @description: 请求之前的拦截器错误处理 + */ + requestInterceptorsCatch?: (error: Error) => void; + + /** + * @description: 请求之后的拦截器错误处理 + */ + responseInterceptorsCatch?: (axiosInstance: AxiosResponse, error: Error) => void; +} diff --git a/src/utils/http/axios/checkStatus.ts b/src/utils/http/axios/checkStatus.ts new file mode 100644 index 0000000..deec9f1 --- /dev/null +++ b/src/utils/http/axios/checkStatus.ts @@ -0,0 +1,80 @@ +import type { ErrorMessageMode } from '/#/axios'; +import { useMessage } from '/@/hooks/web/useMessage'; +import { useI18n } from '/@/hooks/web/useI18n'; +// import router from '/@/router'; +// import { PageEnum } from '/@/enums/pageEnum'; +import { useUserStoreWithOut } from '/@/store/modules/user'; +import projectSetting from '/@/settings/projectSetting'; +import { SessionTimeoutProcessingEnum } from '/@/enums/appEnum'; + +const { createMessage, createErrorModal } = useMessage(); +const error = createMessage.error!; +const stp = projectSetting.sessionTimeoutProcessing; + +export function checkStatus( + status: number, + msg: string, + errorMessageMode: ErrorMessageMode = 'message', +): void { + const { t } = useI18n(); + const userStore = useUserStoreWithOut(); + let errMessage = ''; + + switch (status) { + case 400: + errMessage = `${msg}`; + break; + // 401: Not logged in + // Jump to the login page if not logged in, and carry the path of the current page + // Return to the current page after successful login. This step needs to be operated on the login page. + case 401: + userStore.setToken(undefined); + errMessage = msg || t('用户没有权限(令牌、用户名、密码错误)!'); + if (stp === SessionTimeoutProcessingEnum.PAGE_COVERAGE) { + userStore.setSessionTimeout(true); + } else { + userStore.logout(true); + } + break; + case 403: + errMessage = t('用户得到授权,但是访问是被禁止的!'); + break; + // 404请求不存在 + case 404: + errMessage = t('网络请求错误,未找到该资源!'); + break; + case 405: + errMessage = t('网络请求错误,请求方法未允许!'); + break; + case 408: + errMessage = t('网络请求超时!'); + break; + case 500: + errMessage = t('服务器错误,请联系管理员!'); + break; + case 501: + errMessage = t('网络未实现!'); + break; + case 502: + errMessage = t('网络错误!'); + break; + case 503: + errMessage = t('服务不可用,服务器暂时过载或维护!'); + break; + case 504: + errMessage = t('网络超时!'); + break; + case 505: + errMessage = t('http版本不支持该请求!'); + break; + default: + } + + if (errMessage) { + if (errorMessageMode === 'modal') { + createErrorModal({ title: t('错误提示'), content: errMessage }); + } else if (errorMessageMode === 'message') { + error({ content: errMessage, key: `global_error_message_status_${status}` }); + } + } +} diff --git a/src/utils/http/axios/helper.ts b/src/utils/http/axios/helper.ts new file mode 100644 index 0000000..04dceca --- /dev/null +++ b/src/utils/http/axios/helper.ts @@ -0,0 +1,48 @@ +import { isObject, isString } from '/@/utils/is'; + +const DATE_TIME_FORMAT = 'YYYY-MM-DD HH:mm:ss'; + +export function joinTimestamp( + join: boolean, + restful: T, +): T extends true ? string : object; + +export function joinTimestamp(join: boolean, restful = false): string | object { + if (!join) { + return restful ? '' : {}; + } + const now = new Date().getTime(); + if (restful) { + return `?_t=${now}`; + } + return { _t: now }; +} + +/** + * @description: Format request parameter time + */ +export function formatRequestDate(params: Recordable) { + if (Object.prototype.toString.call(params) !== '[object Object]') { + return; + } + + for (const key in params) { + const format = params[key]?.format ?? null; + if (format && typeof format === 'function') { + params[key] = params[key].format(DATE_TIME_FORMAT); + } + if (isString(key)) { + const value = params[key]; + if (value) { + try { + params[key] = value; // isString(value) ? value.trim() : value; //不要.trim(),否则字符串末尾有空格数据回显就对应不上了 + } catch (error: any) { + throw new Error(error); + } + } + } + if (isObject(params[key])) { + formatRequestDate(params[key]); + } + } +} diff --git a/src/utils/http/axios/index.ts b/src/utils/http/axios/index.ts new file mode 100644 index 0000000..0586fda --- /dev/null +++ b/src/utils/http/axios/index.ts @@ -0,0 +1,268 @@ +// axios配置 可自行根据项目进行更改,只需更改该文件即可,其他文件可以不动 +// The axios configuration can be changed according to the project, just change the file, other files can be left unchanged + +import type { AxiosResponse } from 'axios'; +import { clone, isBoolean } from 'lodash-es'; +import type { RequestOptions, Result } from '/#/axios'; +import type { AxiosTransform, CreateAxiosOptions } from './axiosTransform'; +import { VAxios } from './Axios'; +import { checkStatus } from './checkStatus'; +import { useGlobSetting } from '/@/hooks/setting'; +import { useMessage } from '/@/hooks/web/useMessage'; +import { RequestEnum, ResultEnum, ContentTypeEnum } from '/@/enums/httpEnum'; +import { isString } from '/@/utils/is'; +import { getToken } from '/@/utils/auth'; +import { setObjToUrlParams, deepMerge } from '/@/utils'; +import { useErrorLogStoreWithOut } from '/@/store/modules/errorLog'; +import { useI18n } from '/@/hooks/web/useI18n'; +import { joinTimestamp, formatRequestDate } from './helper'; +import { useUserStoreWithOut } from '/@/store/modules/user'; +import { AxiosRetry } from '/@/utils/http/axios/axiosRetry'; +import { useGo } from '/@/hooks/web/usePage'; + +const globSetting = useGlobSetting(); +const urlPrefix = globSetting.urlPrefix; +const { createMessage, createErrorModal } = useMessage(); + +/** + * @description: 数据处理,方便区分多种处理方式 + */ +const transform: AxiosTransform = { + /** + * @description: 处理请求数据。如果数据不是预期格式,可直接抛出错误 + */ + transformRequestHook: (res: AxiosResponse, options: RequestOptions) => { + const { t } = useI18n(); + const { isTransformResponse, isReturnNativeResponse } = options; + // 是否返回原生响应头 比如:需要获取响应头时使用该属性 + if (isReturnNativeResponse) { + return res; + } + // 不进行任何处理,直接返回 + // 用于页面代码可能需要直接获取code,data,message这些信息时开启 + if (!isTransformResponse) { + return res.data; + } + // 错误的时候返回 + + const { data: result } = res; + if (!result) { + // return '[HTTP] Request has no return value'; + throw new Error(t('请求出错,请稍候重试')); + } + // 这里 code,result,message为 后台统一的字段,需要在 types.ts内修改为项目自己的接口返回格式 + const { code, data, msg } = result; + + // 这里逻辑可以根据项目进行修改 + const hasSuccess = code === ResultEnum.SUCCESS; + if (hasSuccess) { + return data; + } + + // 在此处根据自己项目的实际情况对不同的code执行不同的操作 + // 如果不希望中断当前请求,请return数据,否则直接抛出异常即可 + let timeoutMsg = ''; + switch (code) { + case ResultEnum.UNAUTHRAZATION: + timeoutMsg = t('登录超时,请重新登录!'); + const userStore = useUserStoreWithOut(); + userStore.setToken(undefined); + userStore.logout(); + const go = useGo(); + go('/login'); + break; + default: + if (msg) { + timeoutMsg = msg; + } + } + + // errorMessageMode=‘modal’的时候会显示modal错误弹窗,而不是消息提示,用于一些比较重要的错误 + // errorMessageMode='none' 一般是调用时明确表示不希望自动弹出错误提示 + if (options.errorMessageMode === 'modal') { + createErrorModal({ title: t('错误提示'), content: timeoutMsg }); + } else if (options.errorMessageMode === 'message') { + createMessage.error(timeoutMsg); + } + + throw new Error(timeoutMsg || t('请求出错,请稍候重试')); + }, + + // 请求之前处理config + beforeRequestHook: (config, options) => { + const { apiUrl, joinPrefix, joinParamsToUrl, formatDate, joinTime = true, urlPrefix } = options; + + if (joinPrefix) { + config.url = `${urlPrefix}${config.url}`; + } + + if (apiUrl && isString(apiUrl)) { + config.url = `${apiUrl}${config.url}`; + } + const params = config.params || {}; + const data = config.data || false; + formatDate && data && !isString(data) && formatRequestDate(data); + if (config.method?.toUpperCase() === RequestEnum.GET) { + if (!isString(params)) { + // 给 get 请求加上时间戳参数,避免从缓存中拿数据。 + config.params = Object.assign(params || {}, joinTimestamp(joinTime, false)); + } else { + // 兼容restful风格 + config.url = config.url + params + `${joinTimestamp(joinTime, true)}`; + config.params = undefined; + } + } else { + if (!isString(params)) { + formatDate && formatRequestDate(params); + if (Reflect.has(config, 'data') && config.data && Object.keys(config.data).length > 0) { + config.data = data; + config.params = params; + } else { + // 非GET请求如果没有提供data,则将params视为data + config.data = params; + config.params = undefined; + } + if (isBoolean(joinParamsToUrl) && joinParamsToUrl) { + config.url = setObjToUrlParams( + config.url as string, + Object.assign({}, config.params, config.data), + ); + } + } else { + // 兼容restful风格 + config.url = config.url + params; + config.params = undefined; + } + } + return config; + }, + + /** + * @description: 请求拦截器处理 + */ + requestInterceptors: (config, options) => { + // 请求之前处理config + const token = getToken(); + if (token && (config as Recordable)?.requestOptions?.withToken !== false) { + // jwt token + (config as Recordable).headers.Authorization = options.authenticationScheme + ? `${options.authenticationScheme} ${token}` + : token; + } + return config; + }, + + /** + * @description: 响应拦截器处理 + */ + responseInterceptors: (res: AxiosResponse) => { + return res; + }, + + /** + * @description: 响应错误处理 + */ + responseInterceptorsCatch: (axiosInstance: AxiosResponse, error: any) => { + const { t } = useI18n(); + const errorLogStore = useErrorLogStoreWithOut(); + errorLogStore.addAjaxErrorInfo(error); + const { response, code, message, config } = error || {}; + const errorMessageMode = config?.requestOptions?.errorMessageMode || 'none'; + const msg: string = response?.data?.error?.message ?? ''; + const err: string = error?.toString?.() ?? ''; + let errMessage = ''; + + try { + if (code === 'ECONNABORTED' && message.indexOf('timeout') !== -1) { + errMessage = t('接口请求超时,请刷新页面重试!'); + } + if (err?.includes('Network Error')) { + errMessage = t('网络异常,请检查您的网络连接是否正常!'); + } + + if (errMessage) { + if (errorMessageMode === 'modal') { + createErrorModal({ title: t('错误提示'), content: errMessage }); + } else if (errorMessageMode === 'message') { + createMessage.error(errMessage); + } + return Promise.reject(error); + } + } catch (error) { + throw new Error(error as unknown as string); + } + + checkStatus(error?.response?.status, msg, errorMessageMode); + + // 添加自动重试机制 保险起见 只针对GET请求 + const retryRequest = new AxiosRetry(); + const { isOpenRetry } = config.requestOptions?.retryRequest; + config.method?.toUpperCase() === RequestEnum.GET && + isOpenRetry && + // @ts-ignore + retryRequest.retry(axiosInstance, error); + return Promise.reject(error); + }, +}; + +function createAxios(opt?: Partial) { + return new VAxios( + deepMerge( + { + // See https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication#authentication_schemes + // authentication schemes,e.g: Bearer + // authenticationScheme: 'Bearer', + authenticationScheme: 'Bearer', + timeout: 10 * 1000, + // 基础接口地址 + // baseURL: globSetting.apiUrl, + + headers: { 'Content-Type': ContentTypeEnum.JSON }, + // 如果是form-data格式 + // headers: { 'Content-Type': ContentTypeEnum.FORM_URLENCODED }, + // 数据处理方式 + transform: clone(transform), + // 配置项,下面的选项都可以在独立的接口请求中覆盖 + requestOptions: { + // 默认将prefix 添加到url + joinPrefix: true, + // 是否返回原生响应头 比如:需要获取响应头时使用该属性 + isReturnNativeResponse: false, + // 需要对返回数据进行处理 + isTransformResponse: true, + // post请求的时候添加参数到url + joinParamsToUrl: false, + // 格式化提交参数时间 + formatDate: true, + // 消息提示类型 + errorMessageMode: 'message', + // 接口地址 + apiUrl: globSetting.apiUrl, + // 接口拼接地址 + urlPrefix: urlPrefix, + // 是否加入时间戳 + joinTime: true, + // 忽略重复请求 + ignoreCancelToken: true, + // 是否携带token + withToken: true, + retryRequest: { + isOpenRetry: false, + count: 5, + waitTime: 100, + }, + }, + }, + opt || {}, + ), + ); +} +export const defHttp = createAxios(); + +// other api url +// export const otherHttp = createAxios({ +// requestOptions: { +// apiUrl: 'xxx', +// urlPrefix: 'xxx', +// }, +// }); diff --git a/src/utils/index.ts b/src/utils/index.ts new file mode 100644 index 0000000..8111090 --- /dev/null +++ b/src/utils/index.ts @@ -0,0 +1,105 @@ +import type { RouteLocationNormalized, RouteRecordNormalized } from 'vue-router'; +import type { App, Plugin } from 'vue'; + +import { unref } from 'vue'; +import { isObject } from '/@/utils/is'; + +export const noop = () => {}; + +/** + * @description: Set ui mount node + */ +export function getPopupContainer(node?: HTMLElement): HTMLElement { + return (node?.parentNode as HTMLElement) ?? document.body; +} + +/** + * Add the object as a parameter to the URL + * @param baseUrl url + * @param obj + * @returns {string} + * eg: + * let obj = {a: '3', b: '4'} + * setObjToUrlParams('www.baidu.com', obj) + * ==>www.baidu.com?a=3&b=4 + */ +export function setObjToUrlParams(baseUrl: string, obj: any): string { + let parameters = ''; + for (const key in obj) { + parameters += key + '=' + encodeURIComponent(obj[key]) + '&'; + } + parameters = parameters.replace(/&$/, ''); + return /\?$/.test(baseUrl) ? baseUrl + parameters : baseUrl.replace(/\/?$/, '?') + parameters; +} + +export function deepMerge(src: any = {}, target: any = {}): T { + let key: string; + for (key in target) { + src[key] = isObject(src[key]) ? deepMerge(src[key], target[key]) : (src[key] = target[key]); + } + return src; +} + +export function openWindow( + url: string, + opt?: { target?: TargetContext | string; noopener?: boolean; noreferrer?: boolean }, +) { + const { target = '__blank', noopener = true, noreferrer = true } = opt || {}; + const feature: string[] = []; + + noopener && feature.push('noopener=yes'); + noreferrer && feature.push('noreferrer=yes'); + + window.open(url, target, feature.join(',')); +} + +// dynamic use hook props +export function getDynamicProps(props: T): Partial { + const ret: Recordable = {}; + + Object.keys(props).map((key) => { + ret[key] = unref((props as Recordable)[key]); + }); + + return ret as Partial; +} + +export function getRawRoute(route: RouteLocationNormalized): RouteLocationNormalized { + if (!route) return route; + const { matched, ...opt } = route; + return { + ...opt, + matched: (matched + ? matched.map((item) => ({ + meta: item.meta, + name: item.name, + path: item.path, + })) + : undefined) as RouteRecordNormalized[], + }; +} + +export const withInstall = (component: T, alias?: string) => { + const comp = component as any; + comp.install = (app: App) => { + app.component(comp.name || comp.displayName, component); + if (alias) { + app.config.globalProperties[alias] = component; + } + }; + return component as T & Plugin; +}; +// 验证是否外部地址 +export function isExternal(path: string) { + return /^(https?:|mailto:|tel:)/.test(path); +} + +// 复制文本 +export function copy(text: string) { + const input = document.createElement('textarea'); + input.value = text; + document.body.appendChild(input); + input.select(); + document.execCommand('copy'); + document.body.removeChild(input); +} diff --git a/src/utils/is.ts b/src/utils/is.ts new file mode 100644 index 0000000..20099af --- /dev/null +++ b/src/utils/is.ts @@ -0,0 +1,131 @@ +const toString = Object.prototype.toString; + +export function is(val: unknown, type: string) { + return toString.call(val) === `[object ${type}]`; +} + +export function isDef(val?: T): val is T { + return typeof val !== 'undefined'; +} + +export function isUnDef(val?: T): val is T { + return !isDef(val); +} + +export function isObject(val: any): val is Record { + return val !== null && is(val, 'Object'); +} + +export function isEmpty(val: T): val is T { + if (isArray(val) || isString(val)) { + return val.length === 0; + } + + if (val instanceof Map || val instanceof Set) { + return val.size === 0; + } + + if (isObject(val)) { + return Object.keys(val).length === 0; + } + + return false; +} + +export function isDate(val: unknown): val is Date { + return is(val, 'Date'); +} + +export function isNull(val: unknown): val is null { + return val === null; +} + +export function isNullAndUnDef(val: unknown): val is null | undefined { + return isUnDef(val) && isNull(val); +} + +export function isNullOrUnDef(val: unknown): val is null | undefined { + return isUnDef(val) || isNull(val); +} + +export function isNumber(val: unknown): val is number { + return is(val, 'Number'); +} + +export function stringIsNumber(val) { + const regPos = /^\d+(\.\d+)?$/; //非负浮点数 + const regNeg = + /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //负浮点数 + if (regPos.test(val) || regNeg.test(val)) { + return true; + } else { + return false; + } +} + +export function isPromise(val: unknown): val is Promise { + return is(val, 'Promise') && isObject(val) && isFunction(val.then) && isFunction(val.catch); +} + +export function isString(val: unknown): val is string { + return is(val, 'String'); +} + +export function isFunction(val: unknown): val is Function { + return typeof val === 'function'; +} + +export function isBoolean(val: unknown): val is boolean { + return is(val, 'Boolean'); +} + +export function isRegExp(val: unknown): val is RegExp { + return is(val, 'RegExp'); +} + +export function isArray(val: any): val is Array { + return val && Array.isArray(val); +} + +export function isWindow(val: any): val is Window { + return typeof window !== 'undefined' && is(val, 'Window'); +} + +export function isElement(val: unknown): val is Element { + return isObject(val) && !!val.tagName; +} + +export function isMap(val: unknown): val is Map { + return is(val, 'Map'); +} + +export const isServer = typeof window === 'undefined'; + +export const isClient = !isServer; + +export function isUrl(path: string): boolean { + if (!path.includes('//')) return false; + + const urlRegex = /^(ftp|http|https):\/\/[^ "]+$/; + + return urlRegex.test(path); + + // const sRegex = + // '^((https|http|ftp|rtsp|mms)?://)' + + // "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" + //ftp的user@ + // '(([0-9]{1,3}.){3}[0-9]{1,3}' + // IP形式的URL- 199.194.52.184 + // '|' + // 允许IP和DOMAIN(域名) + // "([0-9a-z_!~*'()-]+.)*" + // 域名- www. + // '([0-9a-z][0-9a-z-]{0,61})?[0-9a-z].' + // 二级域名 + // '[a-z]{2,6})' + // first level domain- .com or .museum + // '(:[0-9]{1,4})?' + // 端口- :80 + // '((/?)|' + // a slash isn't required if there is no file name + // "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$"; + // const re = new RegExp(sRegex); + // return re.test(path); + // const reg = + // /^(?:(http|https|ftp):\/\/)?((?:[\w-]+\.)+[a-z0-9]+)((?:\/[^/?#]*)+)?(\?[^#]+)?(#.+)?$/i; + // // const reg = + // // /(((^https?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(?::\d+)?|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[\w]*))?)$/; + // return reg.test(path); +} diff --git a/src/utils/json.ts b/src/utils/json.ts new file mode 100644 index 0000000..c53a49d --- /dev/null +++ b/src/utils/json.ts @@ -0,0 +1,13 @@ +// 因为默认情况下Infinity会被转换成null +export function replaceJsonStringifyInfinity(_key, value) { + if (value === Infinity) { + return 'Infinity'; // 你想替换Infinity的值 + } + return value; +} +export function replaceJsonParseInfinity(_key, value) { + if (value === 'Infinity') { + return Infinity; // 你想替换Infinity的值 + } + return value; +} diff --git a/src/utils/lib/echarts.ts b/src/utils/lib/echarts.ts new file mode 100644 index 0000000..e1f95cd --- /dev/null +++ b/src/utils/lib/echarts.ts @@ -0,0 +1,57 @@ +import * as echarts from 'echarts/core'; + +import { + BarChart, + LineChart, + PieChart, + MapChart, + PictorialBarChart, + RadarChart, + ScatterChart, +} from 'echarts/charts'; + +import { + TitleComponent, + TooltipComponent, + GridComponent, + PolarComponent, + AriaComponent, + ParallelComponent, + LegendComponent, + RadarComponent, + ToolboxComponent, + DataZoomComponent, + VisualMapComponent, + TimelineComponent, + CalendarComponent, + GraphicComponent, +} from 'echarts/components'; + +import { SVGRenderer } from 'echarts/renderers'; + +echarts.use([ + LegendComponent, + TitleComponent, + TooltipComponent, + GridComponent, + PolarComponent, + AriaComponent, + ParallelComponent, + BarChart, + LineChart, + PieChart, + MapChart, + RadarChart, + SVGRenderer, + PictorialBarChart, + RadarComponent, + ToolboxComponent, + DataZoomComponent, + VisualMapComponent, + TimelineComponent, + CalendarComponent, + GraphicComponent, + ScatterChart, +]); + +export default echarts; diff --git a/src/utils/log.ts b/src/utils/log.ts new file mode 100644 index 0000000..8f79800 --- /dev/null +++ b/src/utils/log.ts @@ -0,0 +1,9 @@ +const projectName = import.meta.env.VITE_GLOB_APP_TITLE; + +export function warn(message: string) { + console.warn(`[${projectName} warn]:${message}`); +} + +export function error(message: string) { + throw new Error(`[${projectName} error]:${message}`); +} diff --git a/src/utils/mitt.ts b/src/utils/mitt.ts new file mode 100644 index 0000000..4b15bba --- /dev/null +++ b/src/utils/mitt.ts @@ -0,0 +1,101 @@ +/** + * copy to https://github.com/developit/mitt + * Expand clear method + */ + +export type EventType = string | symbol; + +// An event handler can take an optional event argument +// and should not return a value +export type Handler = (event?: T) => void; +export type WildcardHandler = (type: EventType, event?: any) => void; + +// An array of all currently registered event handlers for a type +export type EventHandlerList = Array; +export type WildCardEventHandlerList = Array; + +// A map of event types and their corresponding event handlers. +export type EventHandlerMap = Map; + +export interface Emitter { + all: EventHandlerMap; + + on(type: EventType, handler: Handler): void; + on(type: '*', handler: WildcardHandler): void; + + off(type: EventType, handler: Handler): void; + off(type: '*', handler: WildcardHandler): void; + + emit(type: EventType, event?: T): void; + emit(type: '*', event?: any): void; + clear(): void; +} + +/** + * Mitt: Tiny (~200b) functional event emitter / pubsub. + * @name mitt + * @returns {Mitt} + */ +export default function mitt(all?: EventHandlerMap): Emitter { + all = all || new Map(); + + return { + /** + * A Map of event names to registered handler functions. + */ + all, + + /** + * Register an event handler for the given type. + * @param {string|symbol} type Type of event to listen for, or `"*"` for all events + * @param {Function} handler Function to call in response to given event + * @memberOf mitt + */ + on(type: EventType, handler: Handler) { + const handlers = all?.get(type); + const added = handlers && handlers.push(handler); + if (!added) { + all?.set(type, [handler]); + } + }, + + /** + * Remove an event handler for the given type. + * @param {string|symbol} type Type of event to unregister `handler` from, or `"*"` + * @param {Function} handler Handler function to remove + * @memberOf mitt + */ + off(type: EventType, handler: Handler) { + const handlers = all?.get(type); + if (handlers) { + handlers.splice(handlers.indexOf(handler) >>> 0, 1); + } + }, + + /** + * Invoke all handlers for the given type. + * If present, `"*"` handlers are invoked after type-matched handlers. + * + * Note: Manually firing "*" handlers is not supported. + * + * @param {string|symbol} type The event type to invoke + * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler + * @memberOf mitt + */ + emit(type: EventType, evt: T) { + ((all?.get(type) || []) as EventHandlerList).slice().map((handler) => { + handler(evt); + }); + ((all?.get('*') || []) as WildCardEventHandlerList).slice().map((handler) => { + handler(type, evt); + }); + }, + + /** + * Clear all + */ + clear() { + this.all.clear(); + }, + }; +} diff --git a/src/utils/propTypes.ts b/src/utils/propTypes.ts new file mode 100644 index 0000000..a5b0a47 --- /dev/null +++ b/src/utils/propTypes.ts @@ -0,0 +1,34 @@ +import { CSSProperties, VNodeChild } from 'vue'; +import { createTypes, VueTypeValidableDef, VueTypesInterface } from 'vue-types'; + +export type VueNode = VNodeChild | JSX.Element; + +type PropTypes = VueTypesInterface & { + readonly style: VueTypeValidableDef; + readonly VNodeChild: VueTypeValidableDef; + // readonly trueBool: VueTypeValidableDef; +}; + +const propTypes = createTypes({ + func: undefined, + bool: undefined, + string: undefined, + number: undefined, + object: undefined, + integer: undefined, +}) as PropTypes; + +propTypes.extend([ + { + name: 'style', + getter: true, + type: [String, Object], + default: undefined, + }, + { + name: 'VNodeChild', + getter: true, + type: undefined, + }, +]); +export { propTypes }; diff --git a/src/utils/props.ts b/src/utils/props.ts new file mode 100644 index 0000000..ea34d8c --- /dev/null +++ b/src/utils/props.ts @@ -0,0 +1,185 @@ +// copy from element-plus + +import { warn } from 'vue'; +import { isObject } from '/@/utils/is'; +import { fromPairs } from 'lodash-es'; +import type { ExtractPropTypes } from 'vue'; +import type { Mutable } from './types'; + +const wrapperKey = Symbol(); +export type PropWrapper = { [wrapperKey]: T }; + +export const propKey = Symbol(); + +type ResolveProp = ExtractPropTypes<{ + key: { type: T; required: true }; +}>['key']; +type ResolvePropType = ResolveProp extends { type: infer V } ? V : ResolveProp; +type ResolvePropTypeWithReadonly = Readonly extends Readonly> + ? ResolvePropType + : ResolvePropType; + +type IfUnknown = [unknown] extends [T] ? V : T; + +export type BuildPropOption, R, V, C> = { + type?: T; + values?: readonly V[]; + required?: R; + default?: R extends true + ? never + : D extends Record | Array + ? () => D + : (() => D) | D; + validator?: ((val: any) => val is C) | ((val: any) => boolean); +}; + +type _BuildPropType = + | (T extends PropWrapper + ? T[typeof wrapperKey] + : [V] extends [never] + ? ResolvePropTypeWithReadonly + : never) + | V + | C; +export type BuildPropType = _BuildPropType< + IfUnknown, + IfUnknown, + IfUnknown +>; + +type _BuildPropDefault = [T] extends [ + // eslint-disable-next-line @typescript-eslint/ban-types + Record | Array | Function, +] + ? D + : D extends () => T + ? ReturnType + : D; + +export type BuildPropDefault = R extends true + ? { readonly default?: undefined } + : { + readonly default: Exclude extends never + ? undefined + : Exclude<_BuildPropDefault, undefined>; + }; +export type BuildPropReturn = { + readonly type: PropType>; + readonly required: IfUnknown; + readonly validator: ((val: unknown) => boolean) | undefined; + [propKey]: true; +} & BuildPropDefault, IfUnknown, IfUnknown>; + +/** + * @description Build prop. It can better optimize prop types + * @description 生成 prop,能更好地优化类型 + * @example + // limited options + // the type will be PropType<'light' | 'dark'> + buildProp({ + type: String, + values: ['light', 'dark'], + } as const) + * @example + // limited options and other types + // the type will be PropType<'small' | 'medium' | number> + buildProp({ + type: [String, Number], + values: ['small', 'medium'], + validator: (val: unknown): val is number => typeof val === 'number', + } as const) + @link see more: https://github.com/element-plus/element-plus/pull/3341 + */ +export function buildProp< + T = never, + D extends BuildPropType = never, + R extends boolean = false, + V = never, + C = never, +>(option: BuildPropOption, key?: string): BuildPropReturn { + // filter native prop type and nested prop, e.g `null`, `undefined` (from `buildProps`) + if (!isObject(option) || !!option[propKey]) return option as any; + + const { values, required, default: defaultValue, type, validator } = option; + + const _validator = + values || validator + ? (val: unknown) => { + let valid = false; + let allowedValues: unknown[] = []; + + if (values) { + allowedValues = [...values, defaultValue]; + valid ||= allowedValues.includes(val); + } + if (validator) valid ||= validator(val); + + if (!valid && allowedValues.length > 0) { + const allowValuesText = [...new Set(allowedValues)] + .map((value) => JSON.stringify(value)) + .join(', '); + warn( + `Invalid prop: validation failed${ + key ? ` for prop "${key}"` : '' + }. Expected one of [${allowValuesText}], got value ${JSON.stringify(val)}.`, + ); + } + return valid; + } + : undefined; + + return { + type: + typeof type === 'object' && Object.getOwnPropertySymbols(type).includes(wrapperKey) + ? type[wrapperKey] + : type, + required: !!required, + default: defaultValue, + validator: _validator, + [propKey]: true, + } as unknown as BuildPropReturn; +} + +type NativePropType = [((...args: any) => any) | { new (...args: any): any } | undefined | null]; + +export const buildProps = < + O extends { + [K in keyof O]: O[K] extends BuildPropReturn + ? O[K] + : [O[K]] extends NativePropType + ? O[K] + : O[K] extends BuildPropOption + ? D extends BuildPropType + ? BuildPropOption + : never + : never; + }, +>( + props: O, +) => + fromPairs( + Object.entries(props).map(([key, option]) => [key, buildProp(option as any, key)]), + ) as unknown as { + [K in keyof O]: O[K] extends { [propKey]: boolean } + ? O[K] + : [O[K]] extends NativePropType + ? O[K] + : O[K] extends BuildPropOption< + infer T, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + infer _D, + infer R, + infer V, + infer C + > + ? BuildPropReturn + : never; + }; + +export const definePropType = (val: any) => ({ [wrapperKey]: val } as PropWrapper); + +export const keyOf = (arr: T) => Object.keys(arr) as Array; +export const mutable = >(val: T) => + val as Mutable; + +export const componentSize = ['large', 'medium', 'small', 'mini'] as const; diff --git a/src/utils/rsa.ts b/src/utils/rsa.ts new file mode 100644 index 0000000..9b0374b --- /dev/null +++ b/src/utils/rsa.ts @@ -0,0 +1,9 @@ +export function rsa_encrypt(content: string) { + const publicKey = + 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAILpJXAOe3EwQfZkbIaUsCCa6J8dqTpEbDpHlB8Yu8N9aMhgjoMcbhMp4cVF9nb3inJIWOmYj4y6Tj4XYCVMd3cCAwEAAQ=='; + + const encryptor = new JSEncrypt(); + encryptor.setPublicKey(publicKey); + const encoryted = encryptor.encrypt(content); + return encoryted; +} diff --git a/src/utils/types.ts b/src/utils/types.ts new file mode 100644 index 0000000..4453ec4 --- /dev/null +++ b/src/utils/types.ts @@ -0,0 +1,42 @@ +// copy from element-plus + +import type { CSSProperties, Plugin } from 'vue'; + +type OptionalKeys> = { + [K in keyof T]: T extends Record ? never : K; +}[keyof T]; + +type RequiredKeys> = Exclude>; + +type MonoArgEmitter = (evt: K, arg?: T[K]) => void; + +type BiArgEmitter = (evt: K, arg: T[K]) => void; + +export type EventEmitter> = MonoArgEmitter> & + BiArgEmitter>; + +export type AnyFunction = (...args: any[]) => T; + +export type PartialReturnType unknown> = Partial>; + +export type SFCWithInstall = T & Plugin; + +export type Nullable = T | null; + +export type RefElement = Nullable; + +export type CustomizedHTMLElement = HTMLElement & T; + +export type Indexable = { + [key: string]: T; +}; + +export type Hash = Indexable; + +export type TimeoutHandle = ReturnType; + +export type ComponentSize = 'large' | 'medium' | 'small' | 'mini'; + +export type StyleValue = string | CSSProperties | Array; + +export type Mutable = { -readonly [P in keyof T]: T[P] }; diff --git a/src/utils/uuid.ts b/src/utils/uuid.ts new file mode 100644 index 0000000..134e861 --- /dev/null +++ b/src/utils/uuid.ts @@ -0,0 +1,38 @@ +import SnowflakeId from 'snowflake-id'; +const hexList: string[] = []; +for (let i = 0; i <= 15; i++) { + hexList[i] = i.toString(16); +} + +export function buildUUID(): string { + let uuid = ''; + for (let i = 1; i <= 36; i++) { + if (i === 9 || i === 14 || i === 19 || i === 24) { + uuid += '-'; + } else if (i === 15) { + uuid += 4; + } else if (i === 20) { + uuid += hexList[(Math.random() * 4) | 8]; + } else { + uuid += hexList[(Math.random() * 16) | 0]; + } + } + return uuid.replace(/-/g, ''); +} + +let unique = 0; +export function buildShortUUID(prefix = ''): string { + const time = Date.now(); + const random = Math.floor(Math.random() * 1000000000); + unique++; + return prefix + '_' + random + unique + String(time); +} + +export function buildSnowFlakeId(num = 0) { + const snowflake = new SnowflakeId(); + const arr: any[] = []; + for (let i = 0; i < num; i++) { + arr.push(snowflake.generate()); + } + return num ? arr : snowflake.generate(); +} diff --git a/src/views/platform/application/FramePage.vue b/src/views/platform/application/FramePage.vue new file mode 100644 index 0000000..e3a1c0c --- /dev/null +++ b/src/views/platform/application/FramePage.vue @@ -0,0 +1,23 @@ + + diff --git a/src/views/platform/application/components/FramePage.vue b/src/views/platform/application/components/FramePage.vue new file mode 100644 index 0000000..288a644 --- /dev/null +++ b/src/views/platform/application/components/FramePage.vue @@ -0,0 +1,62 @@ + + + diff --git a/src/views/platform/application/index.vue b/src/views/platform/application/index.vue new file mode 100644 index 0000000..125f977 --- /dev/null +++ b/src/views/platform/application/index.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/demo/Index.vue b/src/views/platform/demo/Index.vue new file mode 100644 index 0000000..125f977 --- /dev/null +++ b/src/views/platform/demo/Index.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/workbench/Application.vue b/src/views/platform/workbench/Application.vue new file mode 100644 index 0000000..cfa3023 --- /dev/null +++ b/src/views/platform/workbench/Application.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/workbench/Developer.vue b/src/views/platform/workbench/Developer.vue new file mode 100644 index 0000000..97fc684 --- /dev/null +++ b/src/views/platform/workbench/Developer.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/workbench/Log.vue b/src/views/platform/workbench/Log.vue new file mode 100644 index 0000000..ece80b1 --- /dev/null +++ b/src/views/platform/workbench/Log.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/workbench/Rigger.vue b/src/views/platform/workbench/Rigger.vue new file mode 100644 index 0000000..e1fac33 --- /dev/null +++ b/src/views/platform/workbench/Rigger.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/workbench/Template.vue b/src/views/platform/workbench/Template.vue new file mode 100644 index 0000000..f6f6a69 --- /dev/null +++ b/src/views/platform/workbench/Template.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/views/platform/workbench/index.vue b/src/views/platform/workbench/index.vue new file mode 100644 index 0000000..a46fedb --- /dev/null +++ b/src/views/platform/workbench/index.vue @@ -0,0 +1,92 @@ + + + diff --git a/src/views/sys/error-log/DetailModal.vue b/src/views/sys/error-log/DetailModal.vue new file mode 100644 index 0000000..2047707 --- /dev/null +++ b/src/views/sys/error-log/DetailModal.vue @@ -0,0 +1,27 @@ + + diff --git a/src/views/sys/error-log/data.tsx b/src/views/sys/error-log/data.tsx new file mode 100644 index 0000000..3ffc2f4 --- /dev/null +++ b/src/views/sys/error-log/data.tsx @@ -0,0 +1,67 @@ +import { Tag } from 'ant-design-vue'; +import { BasicColumn } from '/@/components/Table/index'; +import { ErrorTypeEnum } from '/@/enums/exceptionEnum'; +import { useI18n } from '/@/hooks/web/useI18n'; + +const { t } = useI18n(); + +export function getColumns(): BasicColumn[] { + return [ + { + dataIndex: 'type', + title: t('sys.errorLog.tableColumnType'), + width: 80, + customRender: ({ text }) => { + const color = + text === ErrorTypeEnum.VUE + ? 'green' + : text === ErrorTypeEnum.RESOURCE + ? 'cyan' + : text === ErrorTypeEnum.PROMISE + ? 'blue' + : ErrorTypeEnum.AJAX + ? 'red' + : 'purple'; + return {() => text}; + }, + }, + { + dataIndex: 'url', + title: 'URL', + width: 200, + }, + { + dataIndex: 'time', + title: t('sys.errorLog.tableColumnDate'), + width: 160, + }, + { + dataIndex: 'file', + title: t('sys.errorLog.tableColumnFile'), + width: 200, + }, + { + dataIndex: 'name', + title: 'Name', + width: 200, + }, + { + dataIndex: 'message', + title: t('sys.errorLog.tableColumnMsg'), + width: 300, + }, + { + dataIndex: 'stack', + title: t('sys.errorLog.tableColumnStackMsg'), + }, + ]; +} + +export function getDescSchema(): any { + return getColumns().map((column) => { + return { + field: column.dataIndex!, + label: column.title, + }; + }); +} diff --git a/src/views/sys/error-log/index.vue b/src/views/sys/error-log/index.vue new file mode 100644 index 0000000..69b77db --- /dev/null +++ b/src/views/sys/error-log/index.vue @@ -0,0 +1,92 @@ + + + diff --git a/src/views/sys/exception/Exception.vue b/src/views/sys/exception/Exception.vue new file mode 100644 index 0000000..b94aea5 --- /dev/null +++ b/src/views/sys/exception/Exception.vue @@ -0,0 +1,145 @@ + + diff --git a/src/views/sys/exception/index.ts b/src/views/sys/exception/index.ts new file mode 100644 index 0000000..5002c4a --- /dev/null +++ b/src/views/sys/exception/index.ts @@ -0,0 +1 @@ +export { default as Exception } from './Exception.vue'; diff --git a/src/views/sys/iframe/FrameBlank.vue b/src/views/sys/iframe/FrameBlank.vue new file mode 100644 index 0000000..a8a61f5 --- /dev/null +++ b/src/views/sys/iframe/FrameBlank.vue @@ -0,0 +1,9 @@ + + diff --git a/src/views/sys/iframe/index.vue b/src/views/sys/iframe/index.vue new file mode 100644 index 0000000..55f50a4 --- /dev/null +++ b/src/views/sys/iframe/index.vue @@ -0,0 +1,97 @@ + + + diff --git a/src/views/sys/lock/LockPage.vue b/src/views/sys/lock/LockPage.vue new file mode 100644 index 0000000..9d615d4 --- /dev/null +++ b/src/views/sys/lock/LockPage.vue @@ -0,0 +1,227 @@ + + + diff --git a/src/views/sys/lock/index.vue b/src/views/sys/lock/index.vue new file mode 100644 index 0000000..e8c4d55 --- /dev/null +++ b/src/views/sys/lock/index.vue @@ -0,0 +1,13 @@ + + diff --git a/src/views/sys/lock/useNow.ts b/src/views/sys/lock/useNow.ts new file mode 100644 index 0000000..ee461fc --- /dev/null +++ b/src/views/sys/lock/useNow.ts @@ -0,0 +1,60 @@ +import { dateUtil } from '/@/utils/dateUtil'; +import { reactive, toRefs } from 'vue'; +import { tryOnMounted, tryOnUnmounted } from '@vueuse/core'; + +export function useNow(immediate = true) { + let timer: IntervalHandle; + + const state = reactive({ + year: 0, + month: 0, + week: '', + day: 0, + hour: '', + minute: '', + second: 0, + meridiem: '', + }); + + const update = () => { + const now = dateUtil(); + + const h = now.format('HH'); + const m = now.format('mm'); + const s = now.get('s'); + + state.year = now.get('y'); + state.month = now.get('M') + 1; + state.week = '星期' + ['日', '一', '二', '三', '四', '五', '六'][now.day()]; + state.day = now.get('date'); + state.hour = h; + state.minute = m; + state.second = s; + + state.meridiem = now.format('A'); + }; + + function start() { + update(); + clearInterval(timer); + timer = setInterval(() => update(), 1000); + } + + function stop() { + clearInterval(timer); + } + + tryOnMounted(() => { + immediate && start(); + }); + + tryOnUnmounted(() => { + stop(); + }); + + return { + ...toRefs(state), + start, + stop, + }; +} diff --git a/src/views/sys/login/Login.vue b/src/views/sys/login/Login.vue new file mode 100644 index 0000000..bb37808 --- /dev/null +++ b/src/views/sys/login/Login.vue @@ -0,0 +1,282 @@ + + + diff --git a/src/views/sys/login/LoginForm.vue b/src/views/sys/login/LoginForm.vue new file mode 100644 index 0000000..479c67a --- /dev/null +++ b/src/views/sys/login/LoginForm.vue @@ -0,0 +1,302 @@ + + + diff --git a/src/views/sys/login/useLogin.ts b/src/views/sys/login/useLogin.ts new file mode 100644 index 0000000..4ab1179 --- /dev/null +++ b/src/views/sys/login/useLogin.ts @@ -0,0 +1,118 @@ +import type { ValidationRule } from 'ant-design-vue/lib/form/Form'; +import type { RuleObject } from 'ant-design-vue/lib/form/interface'; +import { ref, computed, unref, Ref } from 'vue'; +import { useI18n } from '/@/hooks/web/useI18n'; + +export enum LoginStateEnum { + LOGIN, + REGISTER, + RESET_PASSWORD, + MOBILE, + QR_CODE, +} + +const currentState = ref(LoginStateEnum.LOGIN); + +export function useLoginState() { + function setLoginState(state: LoginStateEnum) { + currentState.value = state; + } + + const getLoginState = computed(() => currentState.value); + + function handleBackLogin() { + setLoginState(LoginStateEnum.LOGIN); + } + + return { setLoginState, getLoginState, handleBackLogin }; +} + +export function useFormValid(formRef: Ref) { + async function validForm() { + const form = unref(formRef); + if (!form) return; + const data = await form.validate(); + return data as T; + } + + return { validForm }; +} + +export function useFormRules(formData?: Recordable) { + const { t } = useI18n(); + + const getAccountFormRule = computed(() => createRule(t('请输入账号'))); + const getPasswordFormRule = computed(() => createRule(t('请输入密码'))); + const getSmsFormRule = computed(() => createRule(t('请输入验证码'))); + const getMobileFormRule = computed(() => createRule(t('请输入手机号码'))); + + const validatePolicy = async (_: RuleObject, value: boolean) => { + return !value ? Promise.reject(t('勾选后才能注册')) : Promise.resolve(); + }; + + const validateConfirmPassword = (password: string) => { + return async (_: RuleObject, value: string) => { + if (!value) { + return Promise.reject(t('请输入密码')); + } + if (value !== password) { + return Promise.reject(t('两次输入密码不一致')); + } + return Promise.resolve(); + }; + }; + + const getFormRules = computed((): { [k: string]: ValidationRule | ValidationRule[] } => { + const accountFormRule = unref(getAccountFormRule); + const passwordFormRule = unref(getPasswordFormRule); + const smsFormRule = unref(getSmsFormRule); + const mobileFormRule = unref(getMobileFormRule); + + const mobileRule = { + sms: smsFormRule, + mobile: mobileFormRule, + }; + switch (unref(currentState)) { + // register form rules + case LoginStateEnum.REGISTER: + return { + account: accountFormRule, + password: passwordFormRule, + confirmPassword: [ + { validator: validateConfirmPassword(formData?.password), trigger: 'change' }, + ], + policy: [{ validator: validatePolicy, trigger: 'change' }], + ...mobileRule, + }; + + // reset password form rules + case LoginStateEnum.RESET_PASSWORD: + return { + account: accountFormRule, + ...mobileRule, + }; + + // mobile form rules + case LoginStateEnum.MOBILE: + return mobileRule; + + // login form rules + default: + return { + account: accountFormRule, + password: passwordFormRule, + }; + } + }); + return { getFormRules }; +} + +function createRule(message: string) { + return [ + { + required: true, + message, + trigger: 'change', + }, + ]; +} diff --git a/src/views/sys/redirect/index.vue b/src/views/sys/redirect/index.vue new file mode 100644 index 0000000..7aa5463 --- /dev/null +++ b/src/views/sys/redirect/index.vue @@ -0,0 +1,30 @@ + + diff --git a/stylelint.config.js b/stylelint.config.js new file mode 100644 index 0000000..4b3501d --- /dev/null +++ b/stylelint.config.js @@ -0,0 +1,100 @@ +module.exports = { + root: true, + plugins: ['stylelint-order'], + extends: ['stylelint-config-standard', 'stylelint-config-prettier'], + customSyntax: 'postcss-html', + rules: { + 'function-no-unknown': null, + 'selector-class-pattern': null, + 'selector-pseudo-class-no-unknown': [ + true, + { + ignorePseudoClasses: ['global'], + }, + ], + 'selector-pseudo-element-no-unknown': [ + true, + { + ignorePseudoElements: ['v-deep'], + }, + ], + 'at-rule-no-unknown': [ + true, + { + ignoreAtRules: [ + 'tailwind', + 'apply', + 'variants', + 'responsive', + 'screen', + 'function', + 'if', + 'each', + 'include', + 'mixin', + ], + }, + ], + 'no-empty-source': null, + 'string-quotes': null, + 'named-grid-areas-no-invalid': null, + 'unicode-bom': 'never', + 'no-descending-specificity': null, + 'font-family-no-missing-generic-family-keyword': null, + 'declaration-colon-space-after': 'always-single-line', + 'declaration-colon-space-before': 'never', + // 'declaration-block-trailing-semicolon': 'always', + 'rule-empty-line-before': [ + 'always', + { + ignore: ['after-comment', 'first-nested'], + }, + ], + 'unit-no-unknown': [true, { ignoreUnits: ['rpx'] }], + 'order/order': [ + [ + 'dollar-variables', + 'custom-properties', + 'at-rules', + 'declarations', + { + type: 'at-rule', + name: 'supports', + }, + { + type: 'at-rule', + name: 'media', + }, + 'rules', + ], + { severity: 'warning' }, + ], + }, + ignoreFiles: ['**/*.js', '**/*.jsx', '**/*.tsx', '**/*.ts'], + overrides: [ + { + files: ['*.vue', '**/*.vue', '*.html', '**/*.html'], + extends: ['stylelint-config-recommended'], + rules: { + 'keyframes-name-pattern': null, + 'selector-pseudo-class-no-unknown': [ + true, + { + ignorePseudoClasses: ['deep', 'global'], + }, + ], + 'selector-pseudo-element-no-unknown': [ + true, + { + ignorePseudoElements: ['v-deep', 'v-global', 'v-slotted'], + }, + ], + }, + }, + { + files: ['*.less', '**/*.less'], + customSyntax: 'postcss-less', + extends: ['stylelint-config-standard', 'stylelint-config-recommended-vue'], + }, + ], +}; diff --git a/tests/server/README.md b/tests/server/README.md new file mode 100644 index 0000000..14298df --- /dev/null +++ b/tests/server/README.md @@ -0,0 +1,15 @@ +# Test Server + +It is used to start the test interface service, which can test the upload, websocket, login and other interfaces. + +## Usage + +```bash + +cd ./test/server + +pnpm install + +pnpm run start + +``` diff --git a/tests/server/controller/FileController.ts b/tests/server/controller/FileController.ts new file mode 100644 index 0000000..cf6d90d --- /dev/null +++ b/tests/server/controller/FileController.ts @@ -0,0 +1,18 @@ +import FileService from '../service/FileService'; + +class FileController { + private service: FileService = new FileService(); + + upload = async (ctx) => { + const files = ctx.request.files.file; + console.log(files); + + if (files.length === undefined) { + this.service.upload(ctx, files, false); + } else { + this.service.upload(ctx, files, true); + } + }; +} + +export default new FileController(); diff --git a/tests/server/controller/UserController.ts b/tests/server/controller/UserController.ts new file mode 100644 index 0000000..db815c2 --- /dev/null +++ b/tests/server/controller/UserController.ts @@ -0,0 +1,15 @@ +import UserService from '../service/UserService'; + +class UserController { + private service: UserService = new UserService(); + + login = async (ctx) => { + ctx.body = await this.service.login(); + }; + + getUserInfoById = async (ctx) => { + ctx.body = await this.service.getUserInfoById(); + }; +} + +export default new UserController(); diff --git a/tests/server/ecosystem.config.js b/tests/server/ecosystem.config.js new file mode 100644 index 0000000..a31e457 --- /dev/null +++ b/tests/server/ecosystem.config.js @@ -0,0 +1,18 @@ +const { name } = require('./package.json'); +const path = require('path'); + +module.exports = { + apps: [ + { + name, + script: path.resolve(__dirname, './dist/index.js'), + instances: require('os').cpus().length, + autorestart: true, + watch: true, + env_production: { + NODE_ENV: 'production', + PORT: 8080, + }, + }, + ], +}; diff --git a/tests/server/index.ts b/tests/server/index.ts new file mode 100644 index 0000000..6c92d76 --- /dev/null +++ b/tests/server/index.ts @@ -0,0 +1,63 @@ +import Koa from 'koa'; +import path from 'path'; +import Router from 'koa-router'; +import body from 'koa-body'; +import cors from 'koa2-cors'; +import koaStatic from 'koa-static'; +import websockify from 'koa-websocket'; +import route from 'koa-route'; + +import AppRoutes from './routes'; + +const PORT = 3300; + +const app = websockify(new Koa()); + +app.ws.use(function (ctx, next) { + ctx.websocket.send('connection succeeded!'); + return next(ctx); +}); + +app.ws.use( + route.all('/test', function (ctx) { + // ctx.websocket.send('Hello World'); + ctx.websocket.on('message', function (message) { + // do something with the message from client + + if (message !== 'ping') { + const data = JSON.stringify({ + id: Math.ceil(Math.random() * 1000), + time: new Date().getTime(), + res: `${message}`, + }); + ctx.websocket.send(data); + } + console.log(message); + }); + }), +); + +const router = new Router(); + +// router +AppRoutes.forEach((route) => router[route.method](route.path, route.action)); + +app.use(cors()); +app.use( + body({ + encoding: 'gzip', + multipart: true, + formidable: { + // uploadDir: path.join(__dirname, '/upload/'), // 设置文件上传目录 + keepExtensions: true, + maxFieldsSize: 20 * 1024 * 1024, + }, + }), +); +app.use(router.routes()); +app.use(router.allowedMethods()); +app.use(koaStatic(path.join(__dirname))); + +app.listen(PORT, () => { + console.log(`Application started successfully: http://localhost:${PORT}`); +}); diff --git a/tests/server/nodemon.json b/tests/server/nodemon.json new file mode 100644 index 0000000..59fa5af --- /dev/null +++ b/tests/server/nodemon.json @@ -0,0 +1,8 @@ +{ + "watch": ["src"], + "ext": "ts", + "exec": "ts-node -r tsconfig-paths/register index.ts", + "events": { + "restart": "clear" + } +} diff --git a/tests/server/package.json b/tests/server/package.json new file mode 100644 index 0000000..cce2442 --- /dev/null +++ b/tests/server/package.json @@ -0,0 +1,36 @@ +{ + "name": "server", + "version": "1.0.0", + "license": "MIT", + "scripts": { + "start": "nodemon", + "build": "rimraf ./dist && tsup ./index.ts --dts --format cjs,esm ", + "prod": "npx pm2 start ecosystem.config.js --env production", + "restart": "pm2 restart ecosystem.config.js --env production", + "stop": "npx pm2 stop ecosystem.config.js" + }, + "dependencies": { + "fs-extra": "^10.0.1", + "koa": "^2.13.4", + "koa-body": "^4.2.0", + "koa-bodyparser": "^4.3.0", + "koa-route": "^3.2.0", + "koa-router": "^10.1.1", + "koa-static": "^5.0.0", + "koa-websocket": "^6.0.0", + "koa2-cors": "^2.0.6" + }, + "devDependencies": { + "@types/koa": "^2.13.4", + "@types/koa-bodyparser": "^5.0.2", + "@types/koa-router": "^7.4.4", + "@types/node": "^17.0.21", + "nodemon": "^2.0.15", + "pm2": "^5.2.0", + "rimraf": "^3.0.2", + "ts-node": "^10.7.0", + "tsconfig-paths": "^3.14.0", + "tsup": "^5.12.1", + "typescript": "^4.6.2" + } +} diff --git a/tests/server/routes.ts b/tests/server/routes.ts new file mode 100644 index 0000000..7fe6475 --- /dev/null +++ b/tests/server/routes.ts @@ -0,0 +1,23 @@ +import UserController from './controller/UserController'; +import FileController from './controller/FileController'; + +export default [ + // user + { + path: '/login', + method: 'post', + action: UserController.login, + }, + { + path: '/getUserInfoById', + method: 'get', + action: UserController.getUserInfoById, + }, + + // file + { + path: '/upload', + method: 'post', + action: FileController.upload, + }, +]; diff --git a/tests/server/service/FileService.ts b/tests/server/service/FileService.ts new file mode 100644 index 0000000..dfd378f --- /dev/null +++ b/tests/server/service/FileService.ts @@ -0,0 +1,54 @@ +import path from 'path'; +import fs from 'fs-extra'; + +const uploadUrl = 'http://localhost:3300/static/upload'; +const filePath = path.join(__dirname, '../static/upload/'); + +fs.ensureDir(filePath); +export default class UserService { + async upload(ctx, files, isMultiple) { + let fileReader, fileResource, writeStream; + + const fileFunc = function (file) { + fileReader = fs.createReadStream(file.path); + fileResource = filePath + `/${file.name}`; + console.log(fileResource); + + writeStream = fs.createWriteStream(fileResource); + fileReader.pipe(writeStream); + }; + + const returnFunc = function (flag) { + if (flag) { + let url = ''; + for (let i = 0; i < files.length; i++) { + url += uploadUrl + `/${files[i].name},`; + } + url = url.replace(/,$/gi, ''); + ctx.body = { + url: url, + code: 0, + message: 'upload Success!', + }; + } else { + ctx.body = { + url: uploadUrl + `/${files.name}`, + code: 0, + message: 'upload Success!', + }; + } + }; + console.log(isMultiple, files.length); + + if (isMultiple) { + for (let i = 0; i < files.length; i++) { + const f1 = files[i]; + fileFunc(f1); + } + } else { + fileFunc(files); + } + fs.ensureDir(filePath); + returnFunc(isMultiple); + } +} diff --git a/tests/server/service/UserService.ts b/tests/server/service/UserService.ts new file mode 100644 index 0000000..0c395e5 --- /dev/null +++ b/tests/server/service/UserService.ts @@ -0,0 +1,25 @@ +import { Result } from '../utils'; + +const fakeUserInfo = { + userId: '1', + username: 'vben', + realName: 'Vben Admin', + desc: 'manager', + password: '123456', + token: 'fakeToken1', + roles: [ + { + roleName: 'Super Admin', + value: 'super', + }, + ], +}; +export default class UserService { + async login() { + return Result.success(fakeUserInfo); + } + + async getUserInfoById() { + return Result.success(fakeUserInfo); + } +} diff --git a/tests/server/tsconfig.json b/tests/server/tsconfig.json new file mode 100644 index 0000000..76203ed --- /dev/null +++ b/tests/server/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "module": "commonjs", + "declaration": false, + "removeComments": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "target": "es6", + "sourceMap": false, + "esModuleInterop": true, + "outDir": "./dist", + "baseUrl": "./" + }, + "exclude": ["node_modules"] +} diff --git a/tests/server/utils.ts b/tests/server/utils.ts new file mode 100644 index 0000000..7fd0b3f --- /dev/null +++ b/tests/server/utils.ts @@ -0,0 +1,9 @@ +export class Result { + static success(data: any) { + return { + code: 0, + success: true, + result: data, + }; + } +} diff --git a/tests/server/yarn.lock b/tests/server/yarn.lock new file mode 100644 index 0000000..9c6df7f --- /dev/null +++ b/tests/server/yarn.lock @@ -0,0 +1,2955 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@^7.0.0": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" + integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== + dependencies: + "@babel/highlight" "^7.12.13" + +"@babel/helper-validator-identifier@^7.14.0": + version "7.14.0" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz#d26cad8a47c65286b15df1547319a5d0bcf27288" + integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A== + +"@babel/highlight@^7.12.13": + version "7.14.0" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz#3197e375711ef6bf834e67d0daec88e4f46113cf" + integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg== + dependencies: + "@babel/helper-validator-identifier" "^7.14.0" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.7" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz#94c23db18ee4653e129abd26fb06f870ac9e1ee2" + integrity sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@opencensus/core@0.0.9": + version "0.0.9" + resolved "https://registry.npmjs.org/@opencensus/core/-/core-0.0.9.tgz#b16f775435ee309433e4126af194d37313fc93b3" + integrity sha512-31Q4VWtbzXpVUd2m9JS6HEaPjlKvNMOiF7lWKNmXF84yUcgfAFL5re7/hjDmdyQbOp32oGc+RFV78jXIldVz6Q== + dependencies: + continuation-local-storage "^3.2.1" + log-driver "^1.2.7" + semver "^5.5.0" + shimmer "^1.2.0" + uuid "^3.2.1" + +"@opencensus/core@^0.0.8": + version "0.0.8" + resolved "https://registry.npmjs.org/@opencensus/core/-/core-0.0.8.tgz#df01f200c2d2fbfe14dae129a1a86fb87286db92" + integrity sha512-yUFT59SFhGMYQgX0PhoTR0LBff2BEhPrD9io1jWfF/VDbakRfs6Pq60rjv0Z7iaTav5gQlttJCX2+VPxFWCuoQ== + dependencies: + continuation-local-storage "^3.2.1" + log-driver "^1.2.7" + semver "^5.5.0" + shimmer "^1.2.0" + uuid "^3.2.1" + +"@opencensus/propagation-b3@0.0.8": + version "0.0.8" + resolved "https://registry.npmjs.org/@opencensus/propagation-b3/-/propagation-b3-0.0.8.tgz#0751e6fd75f09400d9d3c419001e9e15a0df68e9" + integrity sha512-PffXX2AL8Sh0VHQ52jJC4u3T0H6wDK6N/4bg7xh4ngMYOIi13aR1kzVvX1sVDBgfGwDOkMbl4c54Xm3tlPx/+A== + dependencies: + "@opencensus/core" "^0.0.8" + uuid "^3.2.1" + +"@pm2/agent@~1.0.8": + version "1.0.8" + resolved "https://registry.npmjs.org/@pm2/agent/-/agent-1.0.8.tgz#cd15d84dbfc95427e6fccce72bc165b79f1d8579" + integrity sha512-r8mud8BhBz+a2yjlgtk+PBXUR5EQ9UKSJCs232OxfCmuBr1MZw0Mo+Kfog6WJ8OmVk99r1so9yTUK4IyrgGcMQ== + dependencies: + async "~3.2.0" + chalk "~3.0.0" + dayjs "~1.8.24" + debug "~4.3.1" + eventemitter2 "~5.0.1" + fclone "~1.0.11" + nssocket "0.6.0" + pm2-axon "~4.0.1" + pm2-axon-rpc "~0.7.0" + proxy-agent "~4.0.1" + semver "~7.2.0" + ws "~7.2.0" + +"@pm2/io@~5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@pm2/io/-/io-5.0.0.tgz#623cbcaf6fe39375f20ac2e75497477a1b1ec5c5" + integrity sha512-3rToDVJaRoob5Lq8+7Q2TZFruoEkdORxwzFpZaqF4bmH6Bkd7kAbdPrI/z8X6k1Meq5rTtScM7MmDgppH6aLlw== + dependencies: + "@opencensus/core" "0.0.9" + "@opencensus/propagation-b3" "0.0.8" + async "~2.6.1" + debug "~4.3.1" + eventemitter2 "^6.3.1" + require-in-the-middle "^5.0.0" + semver "6.3.0" + shimmer "^1.2.0" + signal-exit "^3.0.3" + tslib "1.9.3" + +"@pm2/js-api@~0.6.7": + version "0.6.7" + resolved "https://registry.npmjs.org/@pm2/js-api/-/js-api-0.6.7.tgz#ed28c3b7b6d26f03f826318754fdc5468afa589f" + integrity sha512-jiJUhbdsK+5C4zhPZNnyA3wRI01dEc6a2GhcQ9qI38DyIk+S+C8iC3fGjcjUbt/viLYKPjlAaE+hcT2/JMQPXw== + dependencies: + async "^2.6.3" + axios "^0.21.0" + debug "~4.3.1" + eventemitter2 "^6.3.1" + ws "^7.0.0" + +"@pm2/pm2-version-check@latest": + version "1.0.4" + resolved "https://registry.npmjs.org/@pm2/pm2-version-check/-/pm2-version-check-1.0.4.tgz#cf97fbb14b0eca95430ca05eedccbd2683806e43" + integrity sha512-SXsM27SGH3yTWKc2fKR4SYNxsmnvuBQ9dd6QHtEWmiZ/VqaOYPAIlS8+vMcn27YLtAEBGvNRSh3TPNvtjZgfqA== + dependencies: + debug "^4.3.1" + +"@sindresorhus/is@^0.14.0": + version "0.14.0" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" + integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== + +"@szmarczak/http-timer@^1.1.2": + version "1.1.2" + resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" + integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== + dependencies: + defer-to-connect "^1.0.1" + +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + +"@tsconfig/node10@^1.0.7": + version "1.0.7" + resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.7.tgz#1eb1de36c73478a2479cc661ef5af1c16d86d606" + integrity sha512-aBvUmXLQbayM4w3A8TrjwrXs4DZ8iduJnuJLLRGdkWlyakCf1q6uHZJBzXoRA/huAEknG5tcUyQxN3A+In5euQ== + +"@tsconfig/node12@^1.0.7": + version "1.0.7" + resolved "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.7.tgz#677bd9117e8164dc319987dd6ff5fc1ba6fbf18b" + integrity sha512-dgasobK/Y0wVMswcipr3k0HpevxFJLijN03A8mYfEPvWvOs14v0ZlYTR4kIgMx8g4+fTyTFv8/jLCIfRqLDJ4A== + +"@tsconfig/node14@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.0.tgz#5bd046e508b1ee90bc091766758838741fdefd6e" + integrity sha512-RKkL8eTdPv6t5EHgFKIVQgsDapugbuOptNd9OOunN/HAkzmmTnZELx1kNCK0rSdUYGmiFMM3rRQMAWiyp023LQ== + +"@tsconfig/node16@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.1.tgz#a6ca6a9a0ff366af433f42f5f0e124794ff6b8f1" + integrity sha512-FTgBI767POY/lKNDNbIzgAX6miIDBs6NTCbdlDb8TrWovHsSvaVIZDlTqym29C6UqhzwcJx4CYr+AlrMywA0cA== + +"@types/accepts@*": + version "1.3.5" + resolved "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz#c34bec115cfc746e04fe5a059df4ce7e7b391575" + integrity sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ== + dependencies: + "@types/node" "*" + +"@types/body-parser@*": + version "1.19.0" + resolved "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" + integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/connect@*": + version "3.4.34" + resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz#170a40223a6d666006d93ca128af2beb1d9b1901" + integrity sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ== + dependencies: + "@types/node" "*" + +"@types/content-disposition@*": + version "0.5.3" + resolved "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.3.tgz#0aa116701955c2faa0717fc69cd1596095e49d96" + integrity sha512-P1bffQfhD3O4LW0ioENXUhZ9OIa0Zn+P7M+pWgkCKaT53wVLSq0mrKksCID/FGHpFhRSxRGhgrQmfhRuzwtKdg== + +"@types/cookies@*": + version "0.7.6" + resolved "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.6.tgz#71212c5391a976d3bae57d4b09fac20fc6bda504" + integrity sha512-FK4U5Qyn7/Sc5ih233OuHO0qAkOpEcD/eG6584yEiLKizTFRny86qHLe/rej3HFQrkBuUjF4whFliAdODbVN/w== + dependencies: + "@types/connect" "*" + "@types/express" "*" + "@types/keygrip" "*" + "@types/node" "*" + +"@types/express-serve-static-core@^4.17.18": + version "4.17.21" + resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.21.tgz#a427278e106bca77b83ad85221eae709a3414d42" + integrity sha512-gwCiEZqW6f7EoR8TTEfalyEhb1zA5jQJnRngr97+3pzMaO1RKoI1w2bw07TK72renMUVWcWS5mLI6rk1NqN0nA== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + +"@types/express@*": + version "4.17.12" + resolved "https://registry.npmjs.org/@types/express/-/express-4.17.12.tgz#4bc1bf3cd0cfe6d3f6f2853648b40db7d54de350" + integrity sha512-pTYas6FrP15B1Oa0bkN5tQMNqOcVXa9j4FTFtO8DWI9kppKib+6NJtfTOOLcwxuuYvcX2+dVG6et1SxW/Kc17Q== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^4.17.18" + "@types/qs" "*" + "@types/serve-static" "*" + +"@types/formidable@^1.0.31": + version "1.2.2" + resolved "https://registry.npmjs.org/@types/formidable/-/formidable-1.2.2.tgz#e690d60732ee9d3f0a441bc572c17409785b283c" + integrity sha512-8RDAMnMHOh7QrY1xuQ7s6/Xre9pMvJ2zT2VgATiz5cIE71Q/6N3+P8sr3z/dNWNmvX5/aX9x8uJlG0MZiMZXoA== + dependencies: + "@types/node" "*" + +"@types/http-assert@*": + version "1.5.1" + resolved "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.1.tgz#d775e93630c2469c2f980fc27e3143240335db3b" + integrity sha512-PGAK759pxyfXE78NbKxyfRcWYA/KwW17X290cNev/qAsn9eQIxkH4shoNBafH37wewhDG/0p1cHPbK6+SzZjWQ== + +"@types/http-errors@*": + version "1.8.0" + resolved "https://registry.npmjs.org/@types/http-errors/-/http-errors-1.8.0.tgz#682477dbbbd07cd032731cb3b0e7eaee3d026b69" + integrity sha512-2aoSC4UUbHDj2uCsCxcG/vRMXey/m17bC7UwitVm5hn22nI8O8Y9iDpA76Orc+DWkQ4zZrOKEshCqR/jSuXAHA== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= + +"@types/keygrip@*": + version "1.0.2" + resolved "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.2.tgz#513abfd256d7ad0bf1ee1873606317b33b1b2a72" + integrity sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw== + +"@types/koa-bodyparser@^4.2.2": + version "4.3.1" + resolved "https://registry.npmjs.org/@types/koa-bodyparser/-/koa-bodyparser-4.3.1.tgz#ec2e06f6f50cfddba035d33a3cfe75a8f0cd7fa4" + integrity sha512-N1cw6UpYYW01rGanfC0guqkyqKKavXygGBeSgsJOe7EkkSlRH7BNRjzyqv1TzJ3Au69aNeagpzzqAzTo6I08ow== + dependencies: + "@types/koa" "*" + +"@types/koa-compose@*": + version "3.2.5" + resolved "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.5.tgz#85eb2e80ac50be95f37ccf8c407c09bbe3468e9d" + integrity sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ== + dependencies: + "@types/koa" "*" + +"@types/koa-router@^7.0.40": + version "7.4.2" + resolved "https://registry.npmjs.org/@types/koa-router/-/koa-router-7.4.2.tgz#b12d7095e844f4d0081b32742691a4d2e5a8046a" + integrity sha512-A9fTLdSHeLQpmtAPUKvvmG+xHHH5Yclqhlmz1bd5BTfdvNo37H8hzNaNpO2mgUri8Wk8fRH9NLpFRHW0wqraAw== + dependencies: + "@types/koa" "*" + +"@types/koa@*", "@types/koa@^2.0.48": + version "2.13.3" + resolved "https://registry.npmjs.org/@types/koa/-/koa-2.13.3.tgz#5b44c0956d7f7bf41f74ccfb530fec60fbed45ca" + integrity sha512-TaujBV+Dhe/FvmSMZJtCFBms+bqQacgUebk/M2C2tq8iGmHE/DDf4DcW2Hc7NqusVZmy5xzrWOjtdPKNP+fTfw== + dependencies: + "@types/accepts" "*" + "@types/content-disposition" "*" + "@types/cookies" "*" + "@types/http-assert" "*" + "@types/http-errors" "*" + "@types/keygrip" "*" + "@types/koa-compose" "*" + "@types/node" "*" + +"@types/mime@^1": + version "1.3.2" + resolved "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" + integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== + +"@types/node@*", "@types/node@^15.12.1": + version "15.12.1" + resolved "https://registry.npmjs.org/@types/node/-/node-15.12.1.tgz#9b60797dee1895383a725f828a869c86c6caa5c2" + integrity sha512-zyxJM8I1c9q5sRMtVF+zdd13Jt6RU4r4qfhTd7lQubyThvLfx6yYekWSQjGCGV2Tkecgxnlpl/DNlb6Hg+dmEw== + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + +"@types/qs@*": + version "6.9.6" + resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" + integrity sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA== + +"@types/range-parser@*": + version "1.2.3" + resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" + integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== + +"@types/serve-static@*": + version "1.13.9" + resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e" + integrity sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== + dependencies: + "@types/mime" "^1" + "@types/node" "*" + +abbrev@1: + version "1.1.1" + resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +accepts@^1.3.5: + version "1.3.7" + resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +agent-base@6, agent-base@^6.0.0: + version "6.0.2" + resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + +amp-message@~0.1.1: + version "0.1.2" + resolved "https://registry.npmjs.org/amp-message/-/amp-message-0.1.2.tgz#a78f1c98995087ad36192a41298e4db49e3dfc45" + integrity sha1-p48cmJlQh602GSpBKY5NtJ49/EU= + dependencies: + amp "0.3.1" + +amp@0.3.1, amp@~0.3.1: + version "0.3.1" + resolved "https://registry.npmjs.org/amp/-/amp-0.3.1.tgz#6adf8d58a74f361e82c1fa8d389c079e139fc47d" + integrity sha1-at+NWKdPNh6CwfqNOJwHnhOfxH0= + +ansi-align@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" + integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== + dependencies: + string-width "^3.0.0" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +any-promise@^1.0.0, any-promise@^1.1.0: + version "1.3.0" + resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= + +anymatch@~3.1.1: + version "3.1.2" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" + integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^4.1.0: + version "4.1.3" + resolved "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +ast-types@^0.13.2: + version "0.13.4" + resolved "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" + integrity sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w== + dependencies: + tslib "^2.0.1" + +async-listener@^0.6.0: + version "0.6.10" + resolved "https://registry.npmjs.org/async-listener/-/async-listener-0.6.10.tgz#a7c97abe570ba602d782273c0de60a51e3e17cbc" + integrity sha512-gpuo6xOyF4D5DE5WvyqZdPA3NGhiT6Qf07l7DCB0wwDEsLvDIbCr6j9S5aj5Ch96dLace5tXVzWBZkxU/c5ohw== + dependencies: + semver "^5.3.0" + shimmer "^1.1.0" + +async@^2.6.3, async@~2.6.1: + version "2.6.3" + resolved "https://registry.npmjs.org/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== + dependencies: + lodash "^4.17.14" + +async@~3.2.0: + version "3.2.0" + resolved "https://registry.npmjs.org/async/-/async-3.2.0.tgz#b3a2685c5ebb641d3de02d161002c60fc9f85720" + integrity sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw== + +axios@^0.21.0: + version "0.21.1" + resolved "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" + integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA== + dependencies: + follow-redirects "^1.10.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +blessed@0.1.81: + version "0.1.81" + resolved "https://registry.npmjs.org/blessed/-/blessed-0.1.81.tgz#f962d687ec2c369570ae71af843256e6d0ca1129" + integrity sha1-+WLWh+wsNpVwrnGvhDJW5tDKESk= + +bodec@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/bodec/-/bodec-0.1.0.tgz#bc851555430f23c9f7650a75ef64c6a94c3418cc" + integrity sha1-vIUVVUMPI8n3ZQp172TGqUw0GMw= + +boxen@^4.2.0: + version "4.2.0" + resolved "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64" + integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ== + dependencies: + ansi-align "^3.0.0" + camelcase "^5.3.1" + chalk "^3.0.0" + cli-boxes "^2.2.0" + string-width "^4.1.0" + term-size "^2.1.0" + type-fest "^0.8.1" + widest-line "^3.1.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.1, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + +cac@^6.7.2: + version "6.7.3" + resolved "https://registry.npmjs.org/cac/-/cac-6.7.3.tgz#10410b8611677990cc2e3c8b576d471c1d71b768" + integrity sha512-ECVqVZh74qgSuZG9YOt2OJPI3wGcf+EwwuF/XIOYqZBD0KZYLtgPWqFPxmDPQ6joxI1nOlvVgRV6VT53Ooyocg== + +cache-content-type@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz#035cde2b08ee2129f4a8315ea8f00a00dba1453c" + integrity sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA== + dependencies: + mime-types "^2.1.18" + ylru "^1.2.0" + +cacheable-request@^6.0.0: + version "6.1.0" + resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" + integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== + dependencies: + clone-response "^1.0.2" + get-stream "^5.1.0" + http-cache-semantics "^4.0.0" + keyv "^3.0.0" + lowercase-keys "^2.0.0" + normalize-url "^4.1.0" + responselike "^1.0.2" + +call-bind@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +chalk@3.0.0, chalk@^3.0.0, chalk@~3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.1.0: + version "4.1.1" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad" + integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +charm@~0.1.1: + version "0.1.2" + resolved "https://registry.npmjs.org/charm/-/charm-0.1.2.tgz#06c21eed1a1b06aeb67553cdc53e23274bac2296" + integrity sha1-BsIe7RobBq62dVPNxT4jJ0usIpY= + +chokidar@^3.2.2, chokidar@^3.5.1: + version "3.5.1" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +cli-boxes@^2.2.0: + version "2.2.1" + resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + +cli-tableau@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/cli-tableau/-/cli-tableau-2.0.1.tgz#baa78d83e08a2d7ab79b7dad9406f0254977053f" + integrity sha512-he+WTicka9cl0Fg/y+YyxcN6/bfQ/1O3QmgxRXDhABKqLzvoOSM4fMzp39uMyLBulAFuywD2N7UaoQE7WaADxQ== + dependencies: + chalk "3.0.0" + +clone-response@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" + integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= + dependencies: + mimic-response "^1.0.0" + +co-body@^5.1.1: + version "5.2.0" + resolved "https://registry.npmjs.org/co-body/-/co-body-5.2.0.tgz#5a0a658c46029131e0e3a306f67647302f71c124" + integrity sha512-sX/LQ7LqUhgyaxzbe7IqwPeTr2yfpfUIQ/dgpKo6ZI4y4lpQA0YxAomWIY+7I7rHWcG02PG+OuPREzMW/5tszQ== + dependencies: + inflation "^2.0.0" + qs "^6.4.0" + raw-body "^2.2.0" + type-is "^1.6.14" + +co-body@^6.0.0: + version "6.1.0" + resolved "https://registry.npmjs.org/co-body/-/co-body-6.1.0.tgz#d87a8efc3564f9bfe3aced8ef5cd04c7a8766547" + integrity sha512-m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ== + dependencies: + inflation "^2.0.0" + qs "^6.5.2" + raw-body "^2.3.3" + type-is "^1.6.16" + +co@^4.4.0, co@^4.6.0: + version "4.6.0" + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +commander@2.15.1: + version "2.15.1" + resolved "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" + integrity sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag== + +commander@^4.0.0: + version "4.1.1" + resolved "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +configstore@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" + integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== + dependencies: + dot-prop "^5.2.0" + graceful-fs "^4.1.2" + make-dir "^3.0.0" + unique-string "^2.0.0" + write-file-atomic "^3.0.0" + xdg-basedir "^4.0.0" + +content-disposition@~0.5.2: + version "0.5.3" + resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== + dependencies: + safe-buffer "5.1.2" + +content-type@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + +continuation-local-storage@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/continuation-local-storage/-/continuation-local-storage-3.2.1.tgz#11f613f74e914fe9b34c92ad2d28fe6ae1db7ffb" + integrity sha512-jx44cconVqkCEEyLSKWwkvUXwO561jXMa3LPjTPsm5QR22PA0/mhe33FT4Xb5y74JDvt/Cq+5lm8S8rskLv9ZA== + dependencies: + async-listener "^0.6.0" + emitter-listener "^1.1.1" + +cookies@~0.8.0: + version "0.8.0" + resolved "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90" + integrity sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow== + dependencies: + depd "~2.0.0" + keygrip "~1.1.0" + +copy-to@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/copy-to/-/copy-to-2.0.1.tgz#2680fbb8068a48d08656b6098092bdafc906f4a5" + integrity sha1-JoD7uAaKSNCGVrYJgJK9r8kG9KU= + +core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cosmiconfig@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" + integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +create-require@^1.1.0: + version "1.1.1" + resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== + +cron@1.8.2: + version "1.8.2" + resolved "https://registry.npmjs.org/cron/-/cron-1.8.2.tgz#4ac5e3c55ba8c163d84f3407bde94632da8370ce" + integrity sha512-Gk2c4y6xKEO8FSAUTklqtfSr7oTq0CiPQeLBG5Fl0qoXpZyMcj1SG59YL+hqq04bu6/IuEA7lMkYDAplQNKkyg== + dependencies: + moment-timezone "^0.5.x" + +cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypto-random-string@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" + integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== + +culvert@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/culvert/-/culvert-0.1.2.tgz#9502f5f0154a2d5a22a023e79f71cc936fa6ef6f" + integrity sha1-lQL18BVKLVoioCPnn3HMk2+m728= + +data-uri-to-buffer@3: + version "3.0.1" + resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" + integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== + +dayjs@~1.8.24, dayjs@~1.8.25: + version "1.8.36" + resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.8.36.tgz#be36e248467afabf8f5a86bae0de0cdceecced50" + integrity sha512-3VmRXEtw7RZKAf+4Tv1Ym9AGeo8r8+CjDi26x+7SYQil1UqtqdaokhzoEJohqlzt0m5kacJSDhJQkG/LWhpRBw== + +debug@*, debug@4, debug@^4.0.1, debug@^4.1.1, debug@^4.3.1, debug@~4.3.1: + version "4.3.1" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + +debug@^2.2.0: + version "2.6.9" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@^3.1.0, debug@^3.2.6: + version "3.2.7" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@~3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + +decompress-response@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + dependencies: + mimic-response "^1.0.0" + +deep-equal@~1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + +defer-to-connect@^1.0.1: + version "1.1.3" + resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" + integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== + +degenerator@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/degenerator/-/degenerator-2.2.0.tgz#49e98c11fa0293c5b26edfbb52f15729afcdb254" + integrity sha512-aiQcQowF01RxFI4ZLFMpzyotbQonhNpBao6dkI8JPk5a+hmSjR5ErHp2CQySmQe8os3VBqLCIh87nDBgZXvsmg== + dependencies: + ast-types "^0.13.2" + escodegen "^1.8.1" + esprima "^4.0.0" + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +depd@^2.0.0, depd@~2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +destroy@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + +diff@^4.0.1: + version "4.0.2" + resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +dot-prop@^5.2.0: + version "5.3.0" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== + dependencies: + is-obj "^2.0.0" + +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + +emitter-listener@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/emitter-listener/-/emitter-listener-1.1.2.tgz#56b140e8f6992375b3d7cb2cab1cc7432d9632e8" + integrity sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ== + dependencies: + shimmer "^1.2.0" + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +encodeurl@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +enquirer@2.3.6: + version "2.3.6" + resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +esbuild@^0.11.12: + version "0.11.23" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.11.23.tgz#c42534f632e165120671d64db67883634333b4b8" + integrity sha512-iaiZZ9vUF5wJV8ob1tl+5aJTrwDczlvGP0JoMmnpC2B0ppiMCu8n8gmy5ZTGl5bcG081XBVn+U+jP+mPFm5T5Q== + +escape-goat@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" + integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== + +escape-html@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escodegen@^1.8.1: + version "1.14.3" + resolved "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" + integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== + dependencies: + esprima "^4.0.1" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + +esprima@^4.0.0, esprima@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +estraverse@^4.2.0: + version "4.3.0" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +eventemitter2@5.0.1, eventemitter2@~5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/eventemitter2/-/eventemitter2-5.0.1.tgz#6197a095d5fb6b57e8942f6fd7eaad63a09c9452" + integrity sha1-YZegldX7a1folC9v1+qtY6CclFI= + +eventemitter2@^6.3.1: + version "6.4.4" + resolved "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.4.tgz#aa96e8275c4dbeb017a5d0e03780c65612a1202b" + integrity sha512-HLU3NDY6wARrLCEwyGKRBvuWYyvW6mHYv72SJJAH3iJN3a6eVUvkjFkcxah1bcTgGVBBrFdIopBJPhCQFMLyXw== + +eventemitter2@~0.4.14: + version "0.4.14" + resolved "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz#8f61b75cde012b2e9eb284d4545583b5643b61ab" + integrity sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas= + +execa@^5.0.0: + version "5.1.1" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + +fast-glob@^3.1.1: + version "3.2.5" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661" + integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + +fast-levenshtein@~2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +fastq@^1.6.0: + version "1.11.0" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz#bb9fb955a07130a918eb63c1f5161cc32a5d0858" + integrity sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g== + dependencies: + reusify "^1.0.4" + +fclone@1.0.11, fclone@~1.0.11: + version "1.0.11" + resolved "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz#10e85da38bfea7fc599341c296ee1d77266ee640" + integrity sha1-EOhdo4v+p/xZk0HClu4ddyZu5kA= + +file-uri-to-path@2: + version "2.0.0" + resolved "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz#7b415aeba227d575851e0a5b0c640d7656403fba" + integrity sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg== + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +follow-redirects@^1.10.0: + version "1.14.1" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz#d9114ded0a1cfdd334e164e6662ad02bfd91ff43" + integrity sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg== + +formidable@^1.1.1: + version "1.2.2" + resolved "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" + integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== + +fresh@~0.5.2: + version "0.5.2" + resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + +fs-extra@^10.0.0: + version "10.0.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1" + integrity sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +fsevents@~2.3.1: + version "2.3.2" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +ftp@^0.3.10: + version "0.3.10" + resolved "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz#9197d861ad8142f3e63d5a83bfe4c59f7330885d" + integrity sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0= + dependencies: + readable-stream "1.1.x" + xregexp "2.0.0" + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +get-intrinsic@^1.0.2: + version "1.1.1" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-stream@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +get-uri@3: + version "3.0.2" + resolved "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz#f0ef1356faabc70e1f9404fa3b66b2ba9bfc725c" + integrity sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg== + dependencies: + "@tootallnate/once" "1" + data-uri-to-buffer "3" + debug "4" + file-uri-to-path "2" + fs-extra "^8.1.0" + ftp "^0.3.10" + +git-node-fs@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/git-node-fs/-/git-node-fs-1.0.0.tgz#49b215e242ebe43aa4c7561bbba499521752080f" + integrity sha1-SbIV4kLr5Dqkx1Ybu6SZUhdSCA8= + +git-sha1@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/git-sha1/-/git-sha1-0.1.2.tgz#599ac192b71875825e13a445f3a6e05118c2f745" + integrity sha1-WZrBkrcYdYJeE6RF86bgURjC90U= + +glob-parent@^5.1.0, glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@7.1.6: + version "7.1.6" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.5, glob@^7.1.3: + version "7.1.7" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +global-dirs@^2.0.1: + version "2.1.0" + resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz#e9046a49c806ff04d6c1825e196c8f0091e8df4d" + integrity sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ== + dependencies: + ini "1.3.7" + +globby@^11.0.3: + version "11.0.3" + resolved "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" + integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.1.1" + ignore "^5.1.4" + merge2 "^1.3.0" + slash "^3.0.0" + +got@^9.6.0: + version "9.6.0" + resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" + integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== + dependencies: + "@sindresorhus/is" "^0.14.0" + "@szmarczak/http-timer" "^1.1.2" + cacheable-request "^6.0.0" + decompress-response "^3.3.0" + duplexer3 "^0.1.4" + get-stream "^4.1.0" + lowercase-keys "^1.0.1" + mimic-response "^1.0.1" + p-cancelable "^1.0.0" + to-readable-stream "^1.0.0" + url-parse-lax "^3.0.0" + +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: + version "4.2.6" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee" + integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + +has-yarn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" + integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +http-assert@^1.3.0: + version "1.4.1" + resolved "https://registry.npmjs.org/http-assert/-/http-assert-1.4.1.tgz#c5f725d677aa7e873ef736199b89686cceb37878" + integrity sha512-rdw7q6GTlibqVVbXr0CKelfV5iY8G2HqEUkhSk297BMbSpSL8crXC+9rjKoMcZZEsksX30le6f/4ul4E28gegw== + dependencies: + deep-equal "~1.0.1" + http-errors "~1.7.2" + +http-cache-semantics@^4.0.0: + version "4.1.0" + resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" + integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== + +http-errors@1.7.3, http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@^1.6.3, http-errors@^1.7.3: + version "1.8.0" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507" + integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +http-proxy-agent@^4.0.0, http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + +https-proxy-agent@5, https-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + dependencies: + agent-base "6" + debug "4" + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + +iconv-lite@0.4.24, iconv-lite@^0.4.4: + version "0.4.24" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ignore-by-default@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" + integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= + +ignore@^5.1.4: + version "5.1.8" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +import-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/import-cwd/-/import-cwd-3.0.0.tgz#20845547718015126ea9b3676b7592fb8bd4cf92" + integrity sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg== + dependencies: + import-from "^3.0.0" + +import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-from@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz#055cfec38cd5a27d8057ca51376d7d3bf0891966" + integrity sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ== + dependencies: + resolve-from "^5.0.0" + +import-lazy@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" + integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +inflation@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz#8b417e47c28f925a45133d914ca1fd389107f30f" + integrity sha1-i0F+R8KPklpFEz2RTKH9OJEH8w8= + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.4, inherits@~2.0.1: + version "2.0.4" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +ini@1.3.7: + version "1.3.7" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" + integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== + +ini@^1.3.5, ini@~1.3.0: + version "1.3.8" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-core-module@^2.2.0: + version "2.4.0" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz#8e9fc8e15027b011418026e98f0e6f4d86305cc1" + integrity sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A== + dependencies: + has "^1.0.3" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-function@^1.0.7: + version "1.0.9" + resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz#e5f82c2323673e7fcad3d12858c83c4039f6399c" + integrity sha512-ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-installed-globally@^0.3.1: + version "0.3.2" + resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz#fd3efa79ee670d1187233182d5b0a1dd00313141" + integrity sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g== + dependencies: + global-dirs "^2.0.1" + is-path-inside "^3.0.1" + +is-npm@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz#c90dd8380696df87a7a6d823c20d0b12bbe3c84d" + integrity sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig== + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== + +is-path-inside@^3.0.1: + version "3.0.3" + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + +is-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" + integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== + +is-typedarray@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +is-yarn-global@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" + integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +joycon@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/joycon/-/joycon-3.0.1.tgz#9074c9b08ccf37a6726ff74a18485f85efcaddaf" + integrity sha512-SJcJNBg32dGgxhPtM0wQqxqV0ax9k/9TaUskGDSJkSFSQOEWWvQ3zzWdGQRIUry2j1zA5+ReH13t0Mf3StuVZA== + +js-git@^0.7.8: + version "0.7.8" + resolved "https://registry.npmjs.org/js-git/-/js-git-0.7.8.tgz#52fa655ab61877d6f1079efc6534b554f31e5444" + integrity sha1-UvplWrYYd9bxB578ZTS1VPMeVEQ= + dependencies: + bodec "^0.1.0" + culvert "^0.1.2" + git-sha1 "^0.1.2" + pako "^0.2.5" + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +json-buffer@3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + dependencies: + minimist "^1.2.0" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +keygrip@~1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226" + integrity sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ== + dependencies: + tsscmp "1.0.6" + +keyv@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" + integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== + dependencies: + json-buffer "3.0.0" + +koa-body@^4.2.0: + version "4.2.0" + resolved "https://registry.npmjs.org/koa-body/-/koa-body-4.2.0.tgz#37229208b820761aca5822d14c5fc55cee31b26f" + integrity sha512-wdGu7b9amk4Fnk/ytH8GuWwfs4fsB5iNkY8kZPpgQVb04QZSv85T0M8reb+cJmvLE8cjPYvBzRikD3s6qz8OoA== + dependencies: + "@types/formidable" "^1.0.31" + co-body "^5.1.1" + formidable "^1.1.1" + +koa-bodyparser@^4.2.1: + version "4.3.0" + resolved "https://registry.npmjs.org/koa-bodyparser/-/koa-bodyparser-4.3.0.tgz#274c778555ff48fa221ee7f36a9fbdbace22759a" + integrity sha512-uyV8G29KAGwZc4q/0WUAjH+Tsmuv9ImfBUF2oZVyZtaeo0husInagyn/JH85xMSxM0hEk/mbCII5ubLDuqW/Rw== + dependencies: + co-body "^6.0.0" + copy-to "^2.0.1" + +koa-compose@^3.0.0: + version "3.2.1" + resolved "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz#a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7" + integrity sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec= + dependencies: + any-promise "^1.1.0" + +koa-compose@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877" + integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw== + +koa-convert@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz#da40875df49de0539098d1700b50820cebcd21d0" + integrity sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA= + dependencies: + co "^4.6.0" + koa-compose "^3.0.0" + +koa-route@^3.2.0: + version "3.2.0" + resolved "https://registry.npmjs.org/koa-route/-/koa-route-3.2.0.tgz#76298b99a6bcfa9e38cab6fe5c79a8733e758bce" + integrity sha1-dimLmaa8+p44yrb+XHmocz51i84= + dependencies: + debug "*" + methods "~1.1.0" + path-to-regexp "^1.2.0" + +koa-router@^10.0.0: + version "10.0.0" + resolved "https://registry.npmjs.org/koa-router/-/koa-router-10.0.0.tgz#7bc76a031085731e61fc92c1683687b2f44de6a4" + integrity sha512-gAE5J1gBQTvfR8rMMtMUkE26+1MbO3DGpGmvfmM2pR9Z7w2VIb2Ecqeal98yVO7+4ltffby7gWOzpCmdNOQe0w== + dependencies: + debug "^4.1.1" + http-errors "^1.7.3" + koa-compose "^4.1.0" + methods "^1.1.2" + path-to-regexp "^6.1.0" + +koa-send@^5.0.0: + version "5.0.1" + resolved "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz#39dceebfafb395d0d60beaffba3a70b4f543fe79" + integrity sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ== + dependencies: + debug "^4.1.1" + http-errors "^1.7.3" + resolve-path "^1.4.0" + +koa-static@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz#5e92fc96b537ad5219f425319c95b64772776943" + integrity sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ== + dependencies: + debug "^3.1.0" + koa-send "^5.0.0" + +koa-websocket@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/koa-websocket/-/koa-websocket-6.0.0.tgz#7fb7698a7004c07aac663b15e84bf4bc99901352" + integrity sha512-pGTaB+aXILD/q+bQNh+Ejrg8zSxf6QRpiUQoh2TFQSmUZo2hrt6KGk4qlyxfHxFH40bVtyKeo4x1u0kKgJDOWA== + dependencies: + co "^4.4.0" + debug "^4.0.1" + koa-compose "^4.1.0" + ws "^7.0.1" + +koa2-cors@^2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/koa2-cors/-/koa2-cors-2.0.6.tgz#9ad23df3a0b9bb84530b46f5944f3fb576086554" + integrity sha512-JRCcSM4lamM+8kvKGDKlesYk2ASrmSTczDtGUnIadqMgnHU4Ct5Gw7Bxt3w3m6d6dy3WN0PU4oMP43HbddDEWg== + +koa@^2.7.0: + version "2.13.1" + resolved "https://registry.npmjs.org/koa/-/koa-2.13.1.tgz#6275172875b27bcfe1d454356a5b6b9f5a9b1051" + integrity sha512-Lb2Dloc72auj5vK4X4qqL7B5jyDPQaZucc9sR/71byg7ryoD1NCaCm63CShk9ID9quQvDEi1bGR/iGjCG7As3w== + dependencies: + accepts "^1.3.5" + cache-content-type "^1.0.0" + content-disposition "~0.5.2" + content-type "^1.0.4" + cookies "~0.8.0" + debug "~3.1.0" + delegates "^1.0.0" + depd "^2.0.0" + destroy "^1.0.4" + encodeurl "^1.0.2" + escape-html "^1.0.3" + fresh "~0.5.2" + http-assert "^1.3.0" + http-errors "^1.6.3" + is-generator-function "^1.0.7" + koa-compose "^4.1.0" + koa-convert "^1.2.0" + on-finished "^2.3.0" + only "~0.0.2" + parseurl "^1.3.2" + statuses "^1.5.0" + type-is "^1.6.16" + vary "^1.1.2" + +latest-version@^5.0.0: + version "5.1.0" + resolved "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" + integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== + dependencies: + package-json "^6.3.0" + +lazy@~1.0.11: + version "1.0.11" + resolved "https://registry.npmjs.org/lazy/-/lazy-1.0.11.tgz#daa068206282542c088288e975c297c1ae77b690" + integrity sha1-2qBoIGKCVCwIgojpdcKXwa53tpA= + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + +lodash@^4.17.14: + version "4.17.21" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +log-driver@^1.2.7: + version "1.2.7" + resolved "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" + integrity sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg== + +lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" + integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== + +lowercase-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" + integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +make-error@^1.1.1: + version "1.3.6" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +methods@^1.1.2, methods@~1.1.0: + version "1.1.2" + resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + +micromatch@^4.0.2: + version "4.0.4" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" + integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== + dependencies: + braces "^3.0.1" + picomatch "^2.2.3" + +mime-db@1.48.0: + version "1.48.0" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz#e35b31045dd7eada3aaad537ed88a33afbef2d1d" + integrity sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ== + +mime-types@^2.1.18, mime-types@~2.1.24: + version "2.1.31" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz#a00d76b74317c61f9c2db2218b8e9f8e9c5c9e6b" + integrity sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg== + dependencies: + mime-db "1.48.0" + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +mimic-response@^1.0.0, mimic-response@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== + +minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.0: + version "1.2.5" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +mkdirp@1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +module-details-from-path@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b" + integrity sha1-EUyUlnPiqKNenTV4hSeqN7Z52is= + +moment-timezone@^0.5.x: + version "0.5.33" + resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz#b252fd6bb57f341c9b59a5ab61a8e51a73bbd22c" + integrity sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w== + dependencies: + moment ">= 2.9.0" + +"moment@>= 2.9.0": + version "2.29.1" + resolved "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" + integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +mute-stream@~0.0.4: + version "0.0.8" + resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + +mz@^2.7.0: + version "2.7.0" + resolved "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + +needle@2.4.0: + version "2.4.0" + resolved "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" + integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== + dependencies: + debug "^3.2.6" + iconv-lite "^0.4.4" + sax "^1.2.4" + +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + +netmask@^2.0.1: + version "2.0.2" + resolved "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" + integrity sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg== + +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +nodemon@^2.0.7: + version "2.0.7" + resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.7.tgz#6f030a0a0ebe3ea1ba2a38f71bf9bab4841ced32" + integrity sha512-XHzK69Awgnec9UzHr1kc8EomQh4sjTQ8oRf8TsGrSmHDx9/UmiGG9E/mM3BuTfNeFwdNBvrqQq/RHL0xIeyFOA== + dependencies: + chokidar "^3.2.2" + debug "^3.2.6" + ignore-by-default "^1.0.1" + minimatch "^3.0.4" + pstree.remy "^1.1.7" + semver "^5.7.1" + supports-color "^5.5.0" + touch "^3.1.0" + undefsafe "^2.0.3" + update-notifier "^4.1.0" + +nopt@~1.0.10: + version "1.0.10" + resolved "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" + integrity sha1-bd0hvSoxQXuScn3Vhfim83YI6+4= + dependencies: + abbrev "1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-url@^4.1.0: + version "4.5.1" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +nssocket@0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/nssocket/-/nssocket-0.6.0.tgz#59f96f6ff321566f33c70f7dbeeecdfdc07154fa" + integrity sha1-Wflvb/MhVm8zxw99vu7N/cBxVPo= + dependencies: + eventemitter2 "~0.4.14" + lazy "~1.0.11" + +object-assign@^4.0.1: + version "4.1.1" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-inspect@^1.9.0: + version "1.10.3" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz#c2aa7d2d09f50c99375704f7a0adf24c5782d369" + integrity sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw== + +on-finished@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + dependencies: + ee-first "1.1.1" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +only@~0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4" + integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q= + +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + +p-cancelable@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" + integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== + +pac-proxy-agent@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-4.1.0.tgz#66883eeabadc915fc5e95457324cb0f0ac78defb" + integrity sha512-ejNgYm2HTXSIYX9eFlkvqFp8hyJ374uDf0Zq5YUAifiSh1D6fo+iBivQZirGvVv8dCYUsLhmLBRhlAYvBKI5+Q== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + get-uri "3" + http-proxy-agent "^4.0.1" + https-proxy-agent "5" + pac-resolver "^4.1.0" + raw-body "^2.2.0" + socks-proxy-agent "5" + +pac-resolver@^4.1.0: + version "4.2.0" + resolved "https://registry.npmjs.org/pac-resolver/-/pac-resolver-4.2.0.tgz#b82bcb9992d48166920bc83c7542abb454bd9bdd" + integrity sha512-rPACZdUyuxT5Io/gFKUeeZFfE5T7ve7cAkE5TUZRRfuKP0u5Hocwe48X7ZEm6mYB+bTB0Qf+xlVlA/RM/i6RCQ== + dependencies: + degenerator "^2.2.0" + ip "^1.1.5" + netmask "^2.0.1" + +package-json@^6.3.0: + version "6.5.0" + resolved "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" + integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== + dependencies: + got "^9.6.0" + registry-auth-token "^4.0.0" + registry-url "^5.0.0" + semver "^6.2.0" + +pako@^0.2.5: + version "0.2.9" + resolved "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" + integrity sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU= + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parseurl@^1.3.2: + version "1.3.3" + resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-is-absolute@1.0.1, path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-to-regexp@^1.2.0: + version "1.8.0" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" + integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== + dependencies: + isarray "0.0.1" + +path-to-regexp@^6.1.0: + version "6.2.0" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38" + integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg== + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: + version "2.3.0" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" + integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== + +pidusage@2.0.21: + version "2.0.21" + resolved "https://registry.npmjs.org/pidusage/-/pidusage-2.0.21.tgz#7068967b3d952baea73e57668c98b9eaa876894e" + integrity sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA== + dependencies: + safe-buffer "^5.2.1" + +pirates@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== + dependencies: + node-modules-regexp "^1.0.0" + +pm2-axon-rpc@~0.7.0: + version "0.7.1" + resolved "https://registry.npmjs.org/pm2-axon-rpc/-/pm2-axon-rpc-0.7.1.tgz#2daec5383a63135b3f18babb70266dacdcbc429a" + integrity sha512-FbLvW60w+vEyvMjP/xom2UPhUN/2bVpdtLfKJeYM3gwzYhoTEEChCOICfFzxkxuoEleOlnpjie+n1nue91bDQw== + dependencies: + debug "^4.3.1" + +pm2-axon@~4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/pm2-axon/-/pm2-axon-4.0.1.tgz#a7b4bb586e9aeb35b1042b488cde15b60cabafd2" + integrity sha512-kES/PeSLS8orT8dR5jMlNl+Yu4Ty3nbvZRmaAtROuVm9nYYGiaoXqqKQqQYzWQzMYWUKHMQTvBlirjE5GIIxqg== + dependencies: + amp "~0.3.1" + amp-message "~0.1.1" + debug "^4.3.1" + escape-string-regexp "^4.0.0" + +pm2-deploy@~1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/pm2-deploy/-/pm2-deploy-1.0.2.tgz#98d8385553a3a4dca11c7b3116deb519bc5961a7" + integrity sha512-YJx6RXKrVrWaphEYf++EdOOx9EH18vM8RSZN/P1Y+NokTKqYAca/ejXwVLyiEpNju4HPZEk3Y2uZouwMqUlcgg== + dependencies: + run-series "^1.1.8" + tv4 "^1.3.0" + +pm2-multimeter@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/pm2-multimeter/-/pm2-multimeter-0.1.2.tgz#1a1e55153d41a05534cea23cfe860abaa0eb4ace" + integrity sha1-Gh5VFT1BoFU0zqI8/oYKuqDrSs4= + dependencies: + charm "~0.1.1" + +pm2@^4.5.6: + version "4.5.6" + resolved "https://registry.npmjs.org/pm2/-/pm2-4.5.6.tgz#2f477a158957860e440f1e71e88dc82627fcff99" + integrity sha512-4J5q704Xl6VmpmQhXFGMJL4kXyyQw3AZM1FE9vRxhS3LiDI/+WVBtOM6pqJ4g/RKW+AUjEkc23i/DCC4BVenDA== + dependencies: + "@pm2/agent" "~1.0.8" + "@pm2/io" "~5.0.0" + "@pm2/js-api" "~0.6.7" + "@pm2/pm2-version-check" latest + async "~3.2.0" + blessed "0.1.81" + chalk "3.0.0" + chokidar "^3.5.1" + cli-tableau "^2.0.0" + commander "2.15.1" + cron "1.8.2" + dayjs "~1.8.25" + debug "^4.3.1" + enquirer "2.3.6" + eventemitter2 "5.0.1" + fclone "1.0.11" + mkdirp "1.0.4" + needle "2.4.0" + pidusage "2.0.21" + pm2-axon "~4.0.1" + pm2-axon-rpc "~0.7.0" + pm2-deploy "~1.0.2" + pm2-multimeter "^0.1.2" + promptly "^2" + ps-list "6.3.0" + semver "^7.2" + source-map-support "0.5.19" + sprintf-js "1.1.2" + vizion "2.2.1" + yamljs "0.3.0" + +postcss-load-config@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.0.1.tgz#d214bf9cfec1608ffaf0f4161b3ba20664ab64b9" + integrity sha512-/pDHe30UYZUD11IeG8GWx9lNtu1ToyTsZHnyy45B4Mrwr/Kb6NgYl7k753+05CJNKnjbwh4975amoPJ+TEjHNQ== + dependencies: + cosmiconfig "^7.0.0" + import-cwd "^3.0.0" + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + +prepend-http@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + +promptly@^2: + version "2.2.0" + resolved "https://registry.npmjs.org/promptly/-/promptly-2.2.0.tgz#2a13fa063688a2a5983b161fff0108a07d26fc74" + integrity sha1-KhP6BjaIoqWYOxYf/wEIoH0m/HQ= + dependencies: + read "^1.0.4" + +proxy-agent@~4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/proxy-agent/-/proxy-agent-4.0.1.tgz#326c3250776c7044cd19655ccbfadf2e065a045c" + integrity sha512-ODnQnW2jc/FUVwHHuaZEfN5otg/fMbvMxz9nMSUQfJ9JU7q2SZvSULSsjLloVgJOiv9yhc8GlNMKc4GkFmcVEA== + dependencies: + agent-base "^6.0.0" + debug "4" + http-proxy-agent "^4.0.0" + https-proxy-agent "^5.0.0" + lru-cache "^5.1.1" + pac-proxy-agent "^4.1.0" + proxy-from-env "^1.0.0" + socks-proxy-agent "^5.0.0" + +proxy-from-env@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +ps-list@6.3.0: + version "6.3.0" + resolved "https://registry.npmjs.org/ps-list/-/ps-list-6.3.0.tgz#a2b775c2db7d547a28fbaa3a05e4c281771259be" + integrity sha512-qau0czUSB0fzSlBOQt0bo+I2v6R+xiQdj78e1BR/Qjfl5OHWJ/urXi8+ilw1eHe+5hSeDI1wrwVTgDp2wst4oA== + +pstree.remy@^1.1.7: + version "1.1.8" + resolved "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a" + integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pupa@^2.0.1: + version "2.1.1" + resolved "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" + integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== + dependencies: + escape-goat "^2.0.0" + +qs@^6.4.0, qs@^6.5.2: + version "6.10.1" + resolved "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a" + integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg== + dependencies: + side-channel "^1.0.4" + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +raw-body@^2.2.0, raw-body@^2.3.3: + version "2.4.1" + resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz#30ac82f98bb5ae8c152e67149dac8d55153b168c" + integrity sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA== + dependencies: + bytes "3.1.0" + http-errors "1.7.3" + iconv-lite "0.4.24" + unpipe "1.0.0" + +rc@^1.2.8: + version "1.2.8" + resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +read@^1.0.4: + version "1.0.7" + resolved "https://registry.npmjs.org/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= + dependencies: + mute-stream "~0.0.4" + +readable-stream@1.1.x: + version "1.1.14" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +registry-auth-token@^4.0.0: + version "4.2.1" + resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" + integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== + dependencies: + rc "^1.2.8" + +registry-url@^5.0.0: + version "5.1.0" + resolved "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" + integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== + dependencies: + rc "^1.2.8" + +require-in-the-middle@^5.0.0: + version "5.1.0" + resolved "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.1.0.tgz#b768f800377b47526d026bbf5a7f727f16eb412f" + integrity sha512-M2rLKVupQfJ5lf9OvqFGIT+9iVLnTmjgbOmpil12hiSQNn5zJTKGPoIisETNjfK+09vP3rpm1zJajmErpr2sEQ== + dependencies: + debug "^4.1.1" + module-details-from-path "^1.0.3" + resolve "^1.12.0" + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve-path@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7" + integrity sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc= + dependencies: + http-errors "~1.6.2" + path-is-absolute "1.0.1" + +resolve@^1.12.0: + version "1.20.0" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +responselike@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" + integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + dependencies: + lowercase-keys "^1.0.0" + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +rollup@^2.45.2: + version "2.50.6" + resolved "https://registry.npmjs.org/rollup/-/rollup-2.50.6.tgz#24e2211caf9031081656e98a5e5e94d3b5e786e2" + integrity sha512-6c5CJPLVgo0iNaZWWliNu1Kl43tjP9LZcp6D/tkf2eLH2a9/WeHxg9vfTFl8QV/2SOyaJX37CEm9XuGM0rviUg== + optionalDependencies: + fsevents "~2.3.1" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +run-series@^1.1.8: + version "1.1.9" + resolved "https://registry.npmjs.org/run-series/-/run-series-1.1.9.tgz#15ba9cb90e6a6c054e67c98e1dc063df0ecc113a" + integrity sha512-Arc4hUN896vjkqCYrUXquBFtRZdv1PfLbTYP71efP6butxyQ0kWpiNJyAgsxscmQg1cqvHY32/UCBzXedTpU2g== + +safe-buffer@5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-buffer@^5.2.1: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sax@^1.2.4: + version "1.2.4" + resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +semver-diff@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" + integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== + dependencies: + semver "^6.3.0" + +semver@6.3.0, semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^5.3.0, semver@^5.5.0, semver@^5.7.1: + version "5.7.1" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@^7.2: + version "7.3.5" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + +semver@~7.2.0: + version "7.2.3" + resolved "https://registry.npmjs.org/semver/-/semver-7.2.3.tgz#3641217233c6382173c76bf2c7ecd1e1c16b0d8a" + integrity sha512-utbW9Z7ZxVvwiIWkdOMLOR9G/NFXh2aRucghkVrEMJWuC++r3lCkBC3LwqBinyHzGMAJxY5tn6VakZGHObq5ig== + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== + +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shimmer@^1.1.0, shimmer@^1.2.0: + version "1.2.1" + resolved "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz#610859f7de327b587efebf501fb43117f9aff337" + integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw== + +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +smart-buffer@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz#91605c25d91652f4661ea69ccf45f1b331ca21ba" + integrity sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw== + +socks-proxy-agent@5, socks-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz#7c0f364e7b1cf4a7a437e71253bed72e9004be60" + integrity sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA== + dependencies: + agent-base "6" + debug "4" + socks "^2.3.3" + +socks@^2.3.3: + version "2.6.1" + resolved "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" + integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== + dependencies: + ip "^1.1.5" + smart-buffer "^4.1.0" + +source-map-support@0.5.19, source-map-support@^0.5.17: + version "0.5.19" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" + integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +sprintf-js@1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" + integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0: + version "1.5.0" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + +string-width@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.0.0, string-width@^4.1.0: + version "4.2.2" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + +strip-ansi@^5.1.0: + version "5.2.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + +sucrase@^3.18.1: + version "3.18.1" + resolved "https://registry.npmjs.org/sucrase/-/sucrase-3.18.1.tgz#7c699d5148734b1105542ca4ea2aa69bcab7f728" + integrity sha512-TRyO38wwOPhLLlM8QLOG3TgMj0FKk+arlTrS9pRAanF8cAcHvgRPKIYWGO25mPSp/Rj87zMMTjFfkqIZGI6ZdA== + dependencies: + commander "^4.0.0" + glob "7.1.6" + lines-and-columns "^1.1.6" + mz "^2.7.0" + pirates "^4.0.1" + ts-interface-checker "^0.1.9" + +supports-color@^5.3.0, supports-color@^5.5.0: + version "5.5.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +term-size@^2.1.0: + version "2.2.1" + resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" + integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== + +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY= + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + +to-readable-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" + integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== + +touch@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" + integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== + dependencies: + nopt "~1.0.10" + +tree-kill@^1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" + integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== + +ts-interface-checker@^0.1.9: + version "0.1.13" + resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" + integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== + +ts-node@^10.0.0: + version "10.0.0" + resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.0.0.tgz#05f10b9a716b0b624129ad44f0ea05dac84ba3be" + integrity sha512-ROWeOIUvfFbPZkoDis0L/55Fk+6gFQNZwwKPLinacRl6tsxstTF1DbAcLKkovwnpKMVvOMHP1TIbnwXwtLg1gg== + dependencies: + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.1" + arg "^4.1.0" + create-require "^1.1.0" + diff "^4.0.1" + make-error "^1.1.1" + source-map-support "^0.5.17" + yn "3.1.1" + +tsconfig-paths@^3.8.0: + version "3.9.0" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz#098547a6c4448807e8fcb8eae081064ee9a3c90b" + integrity sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.1" + minimist "^1.2.0" + strip-bom "^3.0.0" + +tslib@1.9.3: + version "1.9.3" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" + integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== + +tslib@^2.0.1: + version "2.2.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" + integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== + +tsscmp@1.0.6: + version "1.0.6" + resolved "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" + integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== + +tsup@^4.11.2: + version "4.11.2" + resolved "https://registry.npmjs.org/tsup/-/tsup-4.11.2.tgz#135c69ff1b0ef9357d5e0076d1d6c29118904b43" + integrity sha512-cp+gy0TGzFm/3PkPNeiZ2Fvi4MKI8jj6Xq6gVpSQ+Og+6GPqfws2K4zYo11OJoccuk2LnlJIJt8xwnoYCVGpSA== + dependencies: + cac "^6.7.2" + chalk "^4.1.0" + chokidar "^3.5.1" + debug "^4.3.1" + esbuild "^0.11.12" + execa "^5.0.0" + globby "^11.0.3" + joycon "^3.0.1" + postcss-load-config "^3.0.1" + resolve-from "^5.0.0" + rollup "^2.45.2" + sucrase "^3.18.1" + tree-kill "^1.2.2" + +tv4@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz#d020c846fadd50c855abb25ebaecc68fc10f7963" + integrity sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM= + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +type-is@^1.6.14, type-is@^1.6.16: + version "1.6.18" + resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typescript@^4.2.5: + version "4.3.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.3.2.tgz#399ab18aac45802d6f2498de5054fcbbe716a805" + integrity sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw== + +undefsafe@^2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz#6b166e7094ad46313b2202da7ecc2cd7cc6e7aae" + integrity sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A== + dependencies: + debug "^2.2.0" + +unique-string@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" + integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== + dependencies: + crypto-random-string "^2.0.0" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +unpipe@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + +update-notifier@^4.1.0: + version "4.1.3" + resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz#be86ee13e8ce48fb50043ff72057b5bd598e1ea3" + integrity sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A== + dependencies: + boxen "^4.2.0" + chalk "^3.0.0" + configstore "^5.0.1" + has-yarn "^2.1.0" + import-lazy "^2.1.0" + is-ci "^2.0.0" + is-installed-globally "^0.3.1" + is-npm "^4.0.0" + is-yarn-global "^0.3.0" + latest-version "^5.0.0" + pupa "^2.0.1" + semver-diff "^3.1.1" + xdg-basedir "^4.0.0" + +url-parse-lax@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" + integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + dependencies: + prepend-http "^2.0.0" + +uuid@^3.2.1: + version "3.4.0" + resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +vary@^1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + +vizion@2.2.1: + version "2.2.1" + resolved "https://registry.npmjs.org/vizion/-/vizion-2.2.1.tgz#04201ea45ffd145d5b5210e385a8f35170387fb2" + integrity sha512-sfAcO2yeSU0CSPFI/DmZp3FsFE9T+8913nv1xWBOyzODv13fwkn6Vl7HqxGpkr9F608M+8SuFId3s+BlZqfXww== + dependencies: + async "^2.6.3" + git-node-fs "^1.0.0" + ini "^1.3.5" + js-git "^0.7.8" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + +word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wrappy@1: + version "1.0.2" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +ws@^7.0.0, ws@^7.0.1: + version "7.4.6" + resolved "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@~7.2.0: + version "7.2.5" + resolved "https://registry.npmjs.org/ws/-/ws-7.2.5.tgz#abb1370d4626a5a9cd79d8de404aa18b3465d10d" + integrity sha512-C34cIU4+DB2vMyAbmEKossWq2ZQDr6QEyuuCzWrM9zfw1sGc0mYiJ0UnG9zzNykt49C2Fi34hvr2vssFQRS6EA== + +xdg-basedir@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" + integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== + +xregexp@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" + integrity sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM= + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.10.0: + version "1.10.2" + resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yamljs@0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/yamljs/-/yamljs-0.3.0.tgz#dc060bf267447b39f7304e9b2bfbe8b5a7ddb03b" + integrity sha512-C/FsVVhht4iPQYXOInoxUM/1ELSf9EsgKH34FofQOp6hwCPrW4vG4w5++TED3xRUo8gD7l0P1J1dLlDYzODsTQ== + dependencies: + argparse "^1.0.7" + glob "^7.0.5" + +ylru@^1.2.0: + version "1.2.1" + resolved "https://registry.npmjs.org/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f" + integrity sha512-faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ== + +yn@3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..491b786 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,45 @@ +{ + "compilerOptions": { + "target": "esnext", + "module": "esnext", + "moduleResolution": "node", + "strict": true, + "noLib": false, + "forceConsistentCasingInFileNames": true, + "allowSyntheticDefaultImports": true, + "strictFunctionTypes": false, + "jsx": "preserve", + "baseUrl": ".", + "allowJs": true, + "sourceMap": true, + "esModuleInterop": true, + "resolveJsonModule": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "experimentalDecorators": true, + "lib": ["dom", "esnext"], + "noImplicitAny": false, + "skipLibCheck": true, + "types": ["vite/client"], + "removeComments": true, + "paths": { + "/@/*": ["src/*"], + "/@bpmn/*": ["src/views/workflow/design/bpmn/*"], + "/#/*": ["types/*"] + } + }, + "include": [ + "tests/**/*.ts", + "src/**/*.ts", + "src/**/*.d.ts", + "src/**/*.tsx", + "src/**/*.vue", + "types/**/*.d.tsts", + "types/**/*.ts", + "build/**/*.ts", + "build/**/*.d.ts", + "mock/**/*.ts", + "vite.config.ts" + ], + "exclude": ["node_modules", "tests/server/**/*.ts", "dist", "**/*.js"] +} diff --git a/types/axios.d.ts b/types/axios.d.ts new file mode 100644 index 0000000..a04f374 --- /dev/null +++ b/types/axios.d.ts @@ -0,0 +1,53 @@ +export type ErrorMessageMode = 'none' | 'modal' | 'message' | undefined; + +export interface RequestOptions { + // Splicing request parameters to url + joinParamsToUrl?: boolean; + // Format request parameter time + formatDate?: boolean; + // Whether to process the request result + isTransformResponse?: boolean; + // Whether to return native response headers + // For example: use this attribute when you need to get the response headers + isReturnNativeResponse?: boolean; + // Whether to join url + joinPrefix?: boolean; + // Interface address, use the default apiUrl if you leave it blank + apiUrl?: string; + // 请求拼接路径 + urlPrefix?: string; + // Error message prompt type + errorMessageMode?: ErrorMessageMode; + // Whether to add a timestamp + joinTime?: boolean; + ignoreCancelToken?: boolean; + // Whether to send token in header + withToken?: boolean; + // 请求重试机制 + retryRequest?: RetryRequest; +} + +export interface RetryRequest { + isOpenRetry: boolean; + count: number; + waitTime: number; +} +export interface Result { + code: number; + success: boolean; + msg: string; + data: T; +} + +// multipart/form-data: upload file +export interface UploadFileParams { + // Other parameters + data?: Recordable; + // File parameter interface field name + name?: string; + // file name + file: File | Blob | File[]; + // file name + filename?: string; + [key: string]: any; +} diff --git a/types/config.d.ts b/types/config.d.ts new file mode 100644 index 0000000..5cb8a7b --- /dev/null +++ b/types/config.d.ts @@ -0,0 +1,185 @@ +import { MenuTypeEnum, MenuModeEnum, TriggerEnum, MixSidebarTriggerEnum } from '/@/enums/menuEnum'; +import { + ContentEnum, + PermissionModeEnum, + ThemeEnum, + RouterTransitionEnum, + SettingButtonPositionEnum, + SessionTimeoutProcessingEnum, +} from '/@/enums/appEnum'; + +import { CacheTypeEnum } from '/@/enums/cacheEnum'; + +export type LocaleType = 'zh_CN' | 'zh_TW' | 'en' | 'ru' | 'ja' | 'ko'; + +export interface MenuSetting { + bgColor: string; + fixed: boolean; + collapsed: boolean; + canDrag: boolean; + show: boolean; + hidden: boolean; + split: boolean; + menuWidth: number; + mode: MenuModeEnum; + type: MenuTypeEnum; + theme: ThemeEnum; + topMenuAlign: 'start' | 'center' | 'end'; + trigger: TriggerEnum; + accordion: boolean; + closeMixSidebarOnChange: boolean; + collapsedShowTitle: boolean; + mixSideTrigger: MixSidebarTriggerEnum; + mixSideFixed: boolean; +} + +export interface MultiTabsSetting { + cache: boolean; + show: boolean; + showQuick: boolean; + canDrag: boolean; + showRedo: boolean; + showFold: boolean; +} + +export interface HeaderSetting { + bgColor: string; + fixed: boolean; + show: boolean; + theme: ThemeEnum; + // Turn on full screen + showFullScreen: boolean; + // Whether to show the lock screen + useLockPage: boolean; + // Show document button + showDoc: boolean; + // Show message center button + showNotice: boolean; + showSearch: boolean; +} + +export interface LocaleSetting { + showPicker: boolean; + // Current language + locale: LocaleType; + // default language + fallback: LocaleType; + // available Locales + availableLocales: LocaleType[]; +} + +export interface TransitionSetting { + // Whether to open the page switching animation + enable: boolean; + // Route basic switching animation + basicTransition: RouterTransitionEnum; + // Whether to open page switching loading + openPageLoading: boolean; + // Whether to open the top progress bar + openNProgress: boolean; +} + +export interface ProjectConfig { + // Storage location of permission related information + permissionCacheType: CacheTypeEnum; + // Whether to show the configuration button + showSettingButton: boolean; + // Whether to show the theme switch button + showDarkModeToggle: boolean; + // Configure where the button is displayed + settingButtonPosition: SettingButtonPositionEnum; + // Permission mode + permissionMode: PermissionModeEnum; + // Session timeout processing + sessionTimeoutProcessing: SessionTimeoutProcessingEnum; + // Website gray mode, open for possible mourning dates + grayMode: boolean; + // Whether to turn on the color weak mode + colorWeak: boolean; + // Theme color + themeColor: string; + + // The main interface is displayed in full screen, the menu is not displayed, and the top + fullContent: boolean; + // content width + contentMode: ContentEnum; + // Whether to display the logo + showLogo: boolean; + // Whether to show the global footer + showFooter: boolean; + // menuType: MenuTypeEnum; + headerSetting: HeaderSetting; + // menuSetting + menuSetting: MenuSetting; + // Multi-tab settings + multiTabsSetting: MultiTabsSetting; + // Animation configuration + transitionSetting: TransitionSetting; + // pageLayout whether to enable keep-alive + openKeepAlive: boolean; + // Lock screen time + lockTime: number; + // Show breadcrumbs + showBreadCrumb: boolean; + // Show breadcrumb icon + showBreadCrumbIcon: boolean; + // Use error-handler-plugin + useErrorHandle: boolean; + // Whether to open back to top + useOpenBackTop: boolean; + // Is it possible to embed iframe pages + canEmbedIFramePage: boolean; + // Whether to delete unclosed messages and notify when switching the interface + closeMessageOnSwitch: boolean; + // Whether to cancel the http request that has been sent but not responded when switching the interface. + removeAllHttpPending: boolean; +} + +export interface GlobConfig { + // Site title + title: string; + // Service interface url + apiUrl: string; + // Upload url + uploadUrl?: string; + // Service interface url prefix + urlPrefix?: string; + // Project abbreviation + shortName: string; + // outlink + outLink?: string; + //im link + imLink?: string; + //print url + printBaseUrl?: string; +} +export interface GlobEnvConfig { + // Site title + VITE_GLOB_APP_TITLE: string; + // Service interface url + VITE_GLOB_API_URL: string; + // Service interface url prefix + VITE_GLOB_API_URL_PREFIX?: string; + // Project abbreviation + VITE_GLOB_APP_SHORT_NAME: string; + // Upload url + VITE_GLOB_UPLOAD_URL?: string; + VITE_GLOB_OUT_LINK_URL?: string; + VITE_GLOB_IM_LINK_URL?: string; + VITE_GLOB_PRINT_BASE_URL?: string; + //file preview + VITE_GLOB_UPLOAD_PREVIEW?: string; + VITE_GLOB_QN_LINK_URL?: string; +} + +export interface LogoConfig { + companyName?: string; + shortName?: string; + systemName?: string; + refreshLogoUrl?: string; + backgroundLogoUrl?: string; + designerLogoUrl?: string; + loginLogoUrl?: string; + menuLogoUrl?: string; + smallMenuLogoUrl?: string; +} diff --git a/types/global.d.ts b/types/global.d.ts new file mode 100644 index 0000000..049ef55 --- /dev/null +++ b/types/global.d.ts @@ -0,0 +1,101 @@ +import type { + ComponentRenderProxy, + VNode, + VNodeChild, + ComponentPublicInstance, + FunctionalComponent, + PropType as VuePropType, +} from 'vue'; + +declare global { + const __APP_INFO__: { + pkg: { + name: string; + version: string; + dependencies: Recordable; + devDependencies: Recordable; + }; + lastBuildTime: string; + }; + // declare interface Window { + // // Global vue app instance + // __APP__: App; + // } + + // vue + declare type PropType = VuePropType; + declare type VueNode = VNodeChild | JSX.Element; + + export type Writable = { + -readonly [P in keyof T]: T[P]; + }; + + declare type Nullable = T | null; + declare type NonNullable = T extends null | undefined ? never : T; + declare type Recordable = Record; + declare type ReadonlyRecordable = { + readonly [key: string]: T; + }; + declare type Indexable = { + [key: string]: T; + }; + declare type DeepPartial = { + [P in keyof T]?: DeepPartial; + }; + declare type TimeoutHandle = ReturnType; + declare type IntervalHandle = ReturnType; + + declare interface ChangeEvent extends Event { + target: HTMLInputElement; + } + + declare interface WheelEvent { + path?: EventTarget[]; + } + interface ImportMetaEnv extends ViteEnv { + __: unknown; + } + + declare interface ViteEnv { + VITE_PORT: number; + VITE_USE_MOCK: boolean; + VITE_USE_PWA: boolean; + VITE_PUBLIC_PATH: string; + VITE_PROXY: [string, string][]; + VITE_GLOB_APP_TITLE: string; + VITE_GLOB_APP_SHORT_NAME: string; + VITE_USE_CDN: boolean; + VITE_DROP_CONSOLE: boolean; + VITE_BUILD_COMPRESS: 'gzip' | 'brotli' | 'none'; + VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE: boolean; + VITE_LEGACY: boolean; + VITE_USE_IMAGEMIN: boolean; + VITE_GENERATE_UI: string; + } + + declare function parseInt(s: string | number, radix?: number): number; + + declare function parseFloat(string: string | number): number; + + namespace JSX { + // tslint:disable no-empty-interface + type Element = VNode; + // tslint:disable no-empty-interface + type ElementClass = ComponentRenderProxy; + interface ElementAttributesProperty { + $props: any; + } + interface IntrinsicElements { + [elem: string]: any; + } + interface IntrinsicAttributes { + [elem: string]: any; + } + } +} + +declare module 'vue' { + export type JSXComponent = + | { new (): ComponentPublicInstance } + | FunctionalComponent; +} diff --git a/types/index.d.ts b/types/index.d.ts new file mode 100644 index 0000000..b279c0a --- /dev/null +++ b/types/index.d.ts @@ -0,0 +1,27 @@ +declare interface Fn { + (...arg: T[]): R; +} + +declare interface PromiseFn { + (...arg: T[]): Promise; +} + +declare type RefType = T | null; + +declare type LabelValueOptions = { + label: string; + value: any; + [key: string]: string | number | boolean; +}[]; + +declare type EmitType = (event: string, ...args: any[]) => void; + +declare type TargetContext = '_self' | '_blank'; + +declare interface ComponentElRef { + $el: T; +} + +declare type ComponentRef = ComponentElRef | null; + +declare type ElRef = Nullable; diff --git a/types/module.d.ts b/types/module.d.ts new file mode 100644 index 0000000..88aca5e --- /dev/null +++ b/types/module.d.ts @@ -0,0 +1,21 @@ +declare module '*.vue' { + import { DefineComponent } from 'vue'; + const Component: DefineComponent<{}, {}, any>; + export default Component; +} + +declare module 'ant-design-vue/es/locale/*' { + import { Locale } from 'ant-design-vue/types/locale-provider'; + const locale: Locale & ReadonlyRecordable; + export default locale as Locale & ReadonlyRecordable; +} + +declare module 'virtual:*' { + const result: any; + export default result; +} + +declare module 'vue-esign' { + const result: any; + export default result; +} diff --git a/types/store.d.ts b/types/store.d.ts new file mode 100644 index 0000000..e556985 --- /dev/null +++ b/types/store.d.ts @@ -0,0 +1,85 @@ +import { ErrorTypeEnum } from '/@/enums/exceptionEnum'; +import { MenuModeEnum, MenuTypeEnum } from '/@/enums/menuEnum'; +import { RoleInfo } from '/@/api/sys/model/userModel'; + +// Lock screen information +export interface LockInfo { + // Password required + pwd?: string | undefined; + // Is it locked? + isLock?: boolean; +} + +// Error-log information +export interface ErrorLogInfo { + // Type of error + type: ErrorTypeEnum; + // Error file + file: string; + // Error name + name?: string; + // Error message + message: string; + // Error stack + stack?: string; + // Error detail + detail: string; + // Error url + url: string; + // Error time + time?: string; +} + +export interface UserInfo { + // 用户id + id: string; + // 真实名字 + name: string; + // 编码 + code: string; + // 手机 + mobile: string; + //角色 + roles: RoleInfo[]; + // 用户名 + userName: string; + // 头像 + avatar: string; + //部门id + departmentId: string; + //部门名称 + departmentName: string; + //备注 + remark: string; + //邮箱 + email: string; + //地址 + address: string; + desc?: string; + homePath?: string; + //性别 + gender: string; + nickName: string; + //密码 + password: string; + //岗位id + postId: string; + //岗位名称 + postName: string; + //角色名称 + roleName: string; + //角色id + roleId: string; + //所有部门 + departments: DepartmentInfo[]; + //所有部门 + posts: PostInfo[]; + desktopSchema: DesktopData; +} + +export interface BeforeMiniState { + menuCollapsed?: boolean; + menuSplit?: boolean; + menuMode?: MenuModeEnum; + menuType?: MenuTypeEnum; +} diff --git a/types/utils.d.ts b/types/utils.d.ts new file mode 100644 index 0000000..6500d44 --- /dev/null +++ b/types/utils.d.ts @@ -0,0 +1,5 @@ +import type { ComputedRef, Ref } from 'vue'; + +export type DynamicProps = { + [P in keyof T]: Ref | T[P] | ComputedRef; +}; diff --git a/types/vue-router.d.ts b/types/vue-router.d.ts new file mode 100644 index 0000000..93fd788 --- /dev/null +++ b/types/vue-router.d.ts @@ -0,0 +1,45 @@ +export {}; + +declare module 'vue-router' { + interface RouteMeta extends Record { + orderNo?: number; + // title + title: string; + // dynamic router level. + dynamicLevel?: number; + // dynamic router real route path (For performance). + realPath?: string; + // Whether to ignore permissions + ignoreAuth?: boolean; + // role info + roles?: RoleEnum[]; + // Whether not to cache + ignoreKeepAlive?: boolean; + // Is it fixed on tab + affix?: boolean; + // icon on tab + icon?: string; + frameSrc?: string; + // current page transition + transitionName?: string; + // Whether the route has been dynamically added + hideBreadcrumb?: boolean; + // Hide submenu + hideChildrenInMenu?: boolean; + // Carrying parameters + carryParam?: boolean; + // Used internally to mark single-level menus + single?: boolean; + // Currently active menu + currentActiveMenu?: string; + // Never show in tab + hideTab?: boolean; + // Never show in menu + hideMenu?: boolean; + isLink?: boolean; + // only build for Menu + ignoreRoute?: boolean; + // Hide path for children + hidePathForChildren?: boolean; + } +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..63b9bfe --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,133 @@ +import type { UserConfig, ConfigEnv } from 'vite'; +import pkg from './package.json'; +import dayjs from 'dayjs'; +import { loadEnv } from 'vite'; +import { resolve } from 'path'; +import { generateModifyVars } from './build/generate/generateModifyVars'; +import { createProxy } from './build/vite/proxy'; +import { wrapperEnv } from './build/utils'; +import { createVitePlugins } from './build/vite/plugin'; +import { OUTPUT_DIR } from './build/constant'; +import { include, exclude } from './build/vite/optimize'; +function pathResolve(dir: string) { + return resolve(process.cwd(), '.', dir); +} + +const { dependencies, devDependencies, name, version } = pkg; +const __APP_INFO__ = { + pkg: { dependencies, devDependencies, name, version }, + lastBuildTime: dayjs().format('YYYY-MM-DD HH:mm:ss'), +}; + +export default ({ command, mode }: ConfigEnv): UserConfig => { + const root = process.cwd(); + + const env = loadEnv(mode, root); + + // The boolean type read by loadEnv is a string. This function can be converted to boolean type + const viteEnv = wrapperEnv(env); + + const { VITE_PORT, VITE_PUBLIC_PATH, VITE_PROXY, VITE_DROP_CONSOLE } = viteEnv; + + const isBuild = command === 'build'; + + return { + base: VITE_PUBLIC_PATH, + root, + server: { + https: false, + // Listening on all local IPs + host: true, + port: VITE_PORT, + // Load proxy configuration from .env + proxy: createProxy(VITE_PROXY), + }, + resolve: { + alias: [ + { + find: 'vue-i18n', + replacement: 'vue-i18n/dist/vue-i18n.cjs.js', + }, + // /@/xxxx => src/xxxx + { + find: /\/@\//, + replacement: pathResolve('src') + '/', + }, + + { + find: /\/@bpmn\//, + replacement: pathResolve('src') + '/views/workflow/design/bpmn/', + }, + // /#/xxxx => types/xxxx + { + find: /\/#\//, + replacement: pathResolve('types') + '/', + }, + { + find: /^moment$/, + replacement: resolve(__dirname, './alias.js'), + }, + { + find: /^gc-dv$/, + replacement: resolve( + __dirname, + './node_modules/@grapecity/activereports/lib/node_modules/gc-dv.js', + ), + }, + { + find: /^\@grapecity\/ar-js-pagereport$/, + replacement: resolve( + __dirname, + './node_modules/@grapecity/activereports/lib/node_modules/@grapecity/ar-js-pagereport.js', + ), + }, + { + find: /^barcodejs$/, + replacement: resolve( + __dirname, + './node_modules/@grapecity/activereports/lib/node_modules/barcodejs.js', + ), + }, + ], + }, + esbuild: { + drop: VITE_DROP_CONSOLE ? ['console', 'debugger'] : [], + }, + build: { + target: 'es2015', + cssTarget: 'chrome80', + outDir: OUTPUT_DIR, + // minify: 'terser', + /** + * 当 minify=“minify:'terser'” 解开注释 + * Uncomment when minify="minify:'terser'" + */ + // terserOptions: { + // compress: { + // keep_infinity: true, + // drop_console: VITE_DROP_CONSOLE, + // }, + // }, + // Turning off brotliSize display can slightly reduce packaging time + reportCompressedSize: false, + chunkSizeWarningLimit: 2000, + }, + define: { + __APP_INFO__: JSON.stringify(__APP_INFO__), + }, + + css: { + preprocessorOptions: { + less: { + modifyVars: generateModifyVars(), + javascriptEnabled: true, + }, + }, + }, + + // The vite plugin used by the project. The quantity is large, so it is separately extracted and managed + plugins: createVitePlugins(viteEnv, isBuild), + + optimizeDeps: { include, exclude }, + }; +}; diff --git a/windi.config.ts b/windi.config.ts new file mode 100644 index 0000000..0f3d1f2 --- /dev/null +++ b/windi.config.ts @@ -0,0 +1,74 @@ +import { defineConfig } from 'vite-plugin-windicss'; +import { primaryColor } from './build/config/themeConfig'; + +export default defineConfig({ + darkMode: 'class', + plugins: [createEnterPlugin()], + theme: { + extend: { + zIndex: { + '-1': '-1', + }, + colors: { + primary: primaryColor, + }, + screens: { + sm: '576px', + md: '768px', + lg: '992px', + xl: '1200px', + '2xl': '1600px', + }, + }, + }, +}); + +/** + * Used for animation when the element is displayed. + * @param maxOutput The larger the maxOutput output, the larger the generated css volume. + */ +function createEnterPlugin(maxOutput = 6) { + const createCss = (index: number, d = 'x') => { + const upd = d.toUpperCase(); + return { + [`*> .enter-${d}:nth-child(${index})`]: { + transform: `translate${upd}(50px)`, + }, + [`*> .-enter-${d}:nth-child(${index})`]: { + transform: `translate${upd}(-50px)`, + }, + [`* > .enter-${d}:nth-child(${index}),* > .-enter-${d}:nth-child(${index})`]: { + 'z-index': `${10 - index}`, + opacity: '0', + animation: `enter-${d}-animation 0.4s ease-in-out 0.3s`, + 'animation-fill-mode': 'forwards', + 'animation-delay': `${(index * 1) / 10}s`, + }, + }; + }; + const handler = ({ addBase }) => { + const addRawCss = {}; + for (let index = 1; index < maxOutput; index++) { + Object.assign(addRawCss, { + ...createCss(index, 'x'), + ...createCss(index, 'y'), + }); + } + addBase({ + ...addRawCss, + [`@keyframes enter-x-animation`]: { + to: { + opacity: '1', + transform: 'translateX(0)', + }, + }, + [`@keyframes enter-y-animation`]: { + to: { + opacity: '1', + transform: 'translateY(0)', + }, + }, + }); + }; + return { handler }; +}