From 58e5107cf91584cc149461a25660fb6612d3a184 Mon Sep 17 00:00:00 2001
From: tangjinzhou <415800467@qq.com>
Date: Wed, 1 Sep 2021 16:12:07 +0800
Subject: [PATCH] doc: add site
---
.eslintrc | 82 ---
.eslintrc.js | 78 +++
package.json | 3 +-
plugin/md/utils/tsToJs.ts | 2 +
site/404.html | 97 ++++
site/index.html | 83 +++
site/public/docsearch.min.js | 2 +
site/public/favicon.ico | Bin 0 -> 4286 bytes
site/scripts/genrateRoutes.js | 42 ++
site/scripts/pushToOSS.js | 59 +++
site/src/App.vue | 101 ++++
site/src/SymbolKey.ts | 1 +
site/src/assets/ant-design-vue.svg | 11 +
site/src/assets/logo.png | Bin 0 -> 158274 bytes
site/src/assets/logo.svg | 29 ++
site/src/components/DemoBox.vue | 214 ++++++++
site/src/components/SimpleLayout.vue | 5 +
site/src/components/api.vue | 31 ++
site/src/components/demoContainer.vue | 79 +++
site/src/components/demoSort.jsx | 47 ++
site/src/components/header.jsx | 204 ++++++++
site/src/components/rice/CarbonAds.vue | 124 +++++
site/src/components/rice/GoogleAds.vue | 36 ++
site/src/components/rice/GoogleAdsMin.vue | 43 ++
site/src/components/rice/GoogleAdsTop.vue | 34 ++
site/src/components/rice/WWAds.vue | 27 +
site/src/components/rice/geektime.vue | 45 ++
site/src/components/rice/geektime_ads.vue | 63 +++
.../src/components/rice/right_bottom_rice.vue | 62 +++
site/src/components/rice/sponsors.vue | 71 +++
site/src/components/rice/top_rice.vue | 63 +++
site/src/demo.js | 398 ++++++++++++++
.../directives/clipboard/clipboard-action.js | 208 ++++++++
site/src/directives/clipboard/clipboard.js | 134 +++++
site/src/directives/clipboard/closest.js | 33 ++
site/src/directives/clipboard/delegate.js | 78 +++
site/src/directives/clipboard/index.js | 92 ++++
site/src/directives/clipboard/is.js | 55 ++
site/src/directives/clipboard/listen.js | 94 ++++
site/src/directives/clipboard/select.js | 40 ++
site/src/directives/clipboard/tiny-emitter.js | 63 +++
site/src/hooks/useMediaQuery.ts | 76 +++
site/src/hooks/useMenus.ts | 86 +++
site/src/i18n.js | 16 +
site/src/index.less | 159 ++++++
site/src/layouts/BaseLayout.vue | 29 ++
site/src/layouts/Demo.vue | 49 ++
site/src/layouts/Footer.vue | 126 +++++
site/src/layouts/Iframe.vue | 14 +
site/src/layouts/Menu.vue | 62 +++
site/src/layouts/PrevAndNext.vue | 68 +++
site/src/layouts/ThemeIcon.vue | 29 ++
site/src/layouts/UserLayout.less | 71 +++
site/src/layouts/UserLayout.vue | 27 +
site/src/layouts/header/Ecosystem.vue | 70 +++
site/src/layouts/header/Github.less | 133 +++++
site/src/layouts/header/Github.vue | 59 +++
site/src/layouts/header/Logo.vue | 62 +++
site/src/layouts/header/Menu.vue | 80 +++
site/src/layouts/header/More.vue | 46 ++
site/src/layouts/header/Navigation.vue | 177 +++++++
site/src/layouts/header/SearchBox.less | 136 +++++
site/src/layouts/header/SearchBox.vue | 37 ++
site/src/layouts/header/index.less | 83 +++
site/src/layouts/header/index.vue | 156 ++++++
site/src/layouts/index.vue | 214 ++++++++
site/src/locale/en-US.js | 29 ++
site/src/locale/zh-CN.js | 34 ++
site/src/main.js | 57 ++
site/src/mock/user.js | 52 ++
site/src/router/index.js | 155 ++++++
site/src/router/otherRoutes.js | 56 ++
site/src/services/login.js | 12 +
site/src/services/user.js | 13 +
site/src/store/index.js | 60 +++
site/src/store/user.js | 41 ++
site/src/theme/en-US.js | 149 ++++++
site/src/theme/static/colors.less | 242 +++++++++
site/src/theme/static/common.less | 263 ++++++++++
site/src/theme/static/contributors.less | 11 +
site/src/theme/static/dark.less | 369 +++++++++++++
site/src/theme/static/demo.less | 359 +++++++++++++
site/src/theme/static/design-doc.less | 18 +
site/src/theme/static/docsearch.less | 26 +
site/src/theme/static/footer.less | 80 +++
site/src/theme/static/header.less | 49 ++
site/src/theme/static/highlight.less | 155 ++++++
site/src/theme/static/home.less | 2 +
site/src/theme/static/icon-pic-searcher.less | 51 ++
site/src/theme/static/icons.less | 88 ++++
site/src/theme/static/index.less | 28 +
site/src/theme/static/markdown.less | 490 ++++++++++++++++++
site/src/theme/static/mock-browser.less | 53 ++
site/src/theme/static/motion.less | 39 ++
.../theme/static/new-version-info-modal.less | 24 +
site/src/theme/static/not-found.less | 34 ++
site/src/theme/static/nprogress.less | 14 +
site/src/theme/static/page-nav.less | 102 ++++
site/src/theme/static/preview-img.less | 214 ++++++++
site/src/theme/static/reset.less | 46 ++
site/src/theme/static/resource.less | 83 +++
site/src/theme/static/responsive.less | 295 +++++++++++
site/src/theme/static/rtl.less | 12 +
site/src/theme/static/theme.less | 13 +
site/src/theme/static/toc.less | 98 ++++
.../theme/template/IconDisplay/Category.jsx | 51 ++
.../template/IconDisplay/CopyableIcon.vue | 39 ++
site/src/theme/template/IconDisplay/fields.js | 218 ++++++++
site/src/theme/template/IconDisplay/index.jsx | 82 +++
.../theme/template/IconDisplay/themeIcons.jsx | 44 ++
site/src/theme/zh-CN.js | 145 ++++++
site/src/typings.d.ts | 25 +
site/src/utils/request.js | 56 ++
site/src/utils/util.js | 36 ++
site/src/utils/util.ts | 47 ++
site/src/views/ComponentOverview.less | 45 ++
site/src/views/ComponentOverview.vue | 103 ++++
site/src/views/jobs.vue | 167 ++++++
.../src/views/user/login/components/Login.vue | 96 ++++
.../views/user/login/components/LoginItem.jsx | 43 ++
.../user/login/components/LoginSubmit.vue | 21 +
.../views/user/login/components/LoginTab.vue | 37 ++
.../user/login/components/WrapFormItem.vue | 93 ++++
site/src/views/user/login/components/index.js | 12 +
.../views/user/login/components/index.less | 53 ++
site/src/views/user/login/components/map.jsx | 83 +++
site/src/views/user/login/index.vue | 97 ++++
site/src/views/user/login/locales/en-US.js | 77 +++
site/src/views/user/login/locales/zh-CN.js | 74 +++
site/src/views/user/login/model.js | 44 ++
site/src/views/user/login/service.js | 12 +
site/src/views/user/login/style.less | 36 ++
site/src/views/user/login/utils/utils.js | 10 +
site/src/views/user/register-result/index.vue | 59 +++
.../user/register-result/locales/en-US.js | 23 +
.../user/register-result/locales/zh-CN.js | 22 +
.../src/views/user/register-result/style.less | 21 +
site/src/views/user/register/index.vue | 248 +++++++++
site/src/views/user/register/locales/en-US.js | 78 +++
site/src/views/user/register/locales/zh-CN.js | 74 +++
site/src/views/user/register/model.js | 24 +
site/src/views/user/register/service.js | 8 +
site/src/views/user/register/style.less | 52 ++
site/src/views/vip.vue | 6 +
site/src/vueDocs/customize-theme.en-US.md | 200 +++++++
site/src/vueDocs/customize-theme.zh-CN.md | 177 +++++++
site/src/vueDocs/download.en-US.md | 89 ++++
site/src/vueDocs/download.zh-CN.md | 77 +++
site/src/vueDocs/faq.en-US.md | 55 ++
site/src/vueDocs/faq.zh-CN.md | 49 ++
site/src/vueDocs/getting-started.en-US.md | 116 +++++
site/src/vueDocs/getting-started.zh-CN.md | 117 +++++
site/src/vueDocs/i18n.en-US.md | 70 +++
site/src/vueDocs/i18n.zh-CN.md | 70 +++
site/src/vueDocs/introduce.en-US.md | 157 ++++++
site/src/vueDocs/introduce.zh-CN.md | 160 ++++++
site/src/vueDocs/migration-v2.en-US.md | 100 ++++
site/src/vueDocs/migration-v2.zh-CN.md | 102 ++++
site/src/vueDocs/replace-date.en-US.md | 27 +
site/src/vueDocs/replace-date.zh-CN.md | 27 +
site/src/vueDocs/sponsor.en-US.md | 71 +++
site/src/vueDocs/sponsor.zh-CN.md | 75 +++
site/src/vueDocs/use-with-vue-cli.en-US.md | 167 ++++++
site/src/vueDocs/use-with-vue-cli.zh-CN.md | 167 ++++++
site/typings/index.d.ts | 8 +
site/typings/shared.d.ts | 42 ++
vite.config.ts | 3 +-
167 files changed, 13416 insertions(+), 85 deletions(-)
delete mode 100644 .eslintrc
create mode 100644 .eslintrc.js
create mode 100644 site/404.html
create mode 100644 site/index.html
create mode 100644 site/public/docsearch.min.js
create mode 100644 site/public/favicon.ico
create mode 100644 site/scripts/genrateRoutes.js
create mode 100644 site/scripts/pushToOSS.js
create mode 100644 site/src/App.vue
create mode 100644 site/src/SymbolKey.ts
create mode 100644 site/src/assets/ant-design-vue.svg
create mode 100644 site/src/assets/logo.png
create mode 100644 site/src/assets/logo.svg
create mode 100644 site/src/components/DemoBox.vue
create mode 100644 site/src/components/SimpleLayout.vue
create mode 100644 site/src/components/api.vue
create mode 100644 site/src/components/demoContainer.vue
create mode 100644 site/src/components/demoSort.jsx
create mode 100644 site/src/components/header.jsx
create mode 100644 site/src/components/rice/CarbonAds.vue
create mode 100644 site/src/components/rice/GoogleAds.vue
create mode 100644 site/src/components/rice/GoogleAdsMin.vue
create mode 100644 site/src/components/rice/GoogleAdsTop.vue
create mode 100644 site/src/components/rice/WWAds.vue
create mode 100644 site/src/components/rice/geektime.vue
create mode 100644 site/src/components/rice/geektime_ads.vue
create mode 100644 site/src/components/rice/right_bottom_rice.vue
create mode 100644 site/src/components/rice/sponsors.vue
create mode 100644 site/src/components/rice/top_rice.vue
create mode 100644 site/src/demo.js
create mode 100644 site/src/directives/clipboard/clipboard-action.js
create mode 100644 site/src/directives/clipboard/clipboard.js
create mode 100644 site/src/directives/clipboard/closest.js
create mode 100644 site/src/directives/clipboard/delegate.js
create mode 100644 site/src/directives/clipboard/index.js
create mode 100644 site/src/directives/clipboard/is.js
create mode 100644 site/src/directives/clipboard/listen.js
create mode 100644 site/src/directives/clipboard/select.js
create mode 100644 site/src/directives/clipboard/tiny-emitter.js
create mode 100644 site/src/hooks/useMediaQuery.ts
create mode 100644 site/src/hooks/useMenus.ts
create mode 100644 site/src/i18n.js
create mode 100644 site/src/index.less
create mode 100644 site/src/layouts/BaseLayout.vue
create mode 100644 site/src/layouts/Demo.vue
create mode 100644 site/src/layouts/Footer.vue
create mode 100644 site/src/layouts/Iframe.vue
create mode 100644 site/src/layouts/Menu.vue
create mode 100644 site/src/layouts/PrevAndNext.vue
create mode 100644 site/src/layouts/ThemeIcon.vue
create mode 100755 site/src/layouts/UserLayout.less
create mode 100644 site/src/layouts/UserLayout.vue
create mode 100644 site/src/layouts/header/Ecosystem.vue
create mode 100644 site/src/layouts/header/Github.less
create mode 100644 site/src/layouts/header/Github.vue
create mode 100644 site/src/layouts/header/Logo.vue
create mode 100644 site/src/layouts/header/Menu.vue
create mode 100644 site/src/layouts/header/More.vue
create mode 100644 site/src/layouts/header/Navigation.vue
create mode 100644 site/src/layouts/header/SearchBox.less
create mode 100644 site/src/layouts/header/SearchBox.vue
create mode 100644 site/src/layouts/header/index.less
create mode 100644 site/src/layouts/header/index.vue
create mode 100644 site/src/layouts/index.vue
create mode 100644 site/src/locale/en-US.js
create mode 100644 site/src/locale/zh-CN.js
create mode 100644 site/src/main.js
create mode 100644 site/src/mock/user.js
create mode 100644 site/src/router/index.js
create mode 100644 site/src/router/otherRoutes.js
create mode 100644 site/src/services/login.js
create mode 100644 site/src/services/user.js
create mode 100644 site/src/store/index.js
create mode 100644 site/src/store/user.js
create mode 100644 site/src/theme/en-US.js
create mode 100644 site/src/theme/static/colors.less
create mode 100644 site/src/theme/static/common.less
create mode 100644 site/src/theme/static/contributors.less
create mode 100644 site/src/theme/static/dark.less
create mode 100644 site/src/theme/static/demo.less
create mode 100644 site/src/theme/static/design-doc.less
create mode 100644 site/src/theme/static/docsearch.less
create mode 100644 site/src/theme/static/footer.less
create mode 100644 site/src/theme/static/header.less
create mode 100644 site/src/theme/static/highlight.less
create mode 100644 site/src/theme/static/home.less
create mode 100644 site/src/theme/static/icon-pic-searcher.less
create mode 100644 site/src/theme/static/icons.less
create mode 100644 site/src/theme/static/index.less
create mode 100644 site/src/theme/static/markdown.less
create mode 100644 site/src/theme/static/mock-browser.less
create mode 100644 site/src/theme/static/motion.less
create mode 100644 site/src/theme/static/new-version-info-modal.less
create mode 100644 site/src/theme/static/not-found.less
create mode 100644 site/src/theme/static/nprogress.less
create mode 100644 site/src/theme/static/page-nav.less
create mode 100644 site/src/theme/static/preview-img.less
create mode 100644 site/src/theme/static/reset.less
create mode 100644 site/src/theme/static/resource.less
create mode 100644 site/src/theme/static/responsive.less
create mode 100644 site/src/theme/static/rtl.less
create mode 100644 site/src/theme/static/theme.less
create mode 100644 site/src/theme/static/toc.less
create mode 100644 site/src/theme/template/IconDisplay/Category.jsx
create mode 100644 site/src/theme/template/IconDisplay/CopyableIcon.vue
create mode 100644 site/src/theme/template/IconDisplay/fields.js
create mode 100644 site/src/theme/template/IconDisplay/index.jsx
create mode 100644 site/src/theme/template/IconDisplay/themeIcons.jsx
create mode 100644 site/src/theme/zh-CN.js
create mode 100644 site/src/typings.d.ts
create mode 100644 site/src/utils/request.js
create mode 100644 site/src/utils/util.js
create mode 100644 site/src/utils/util.ts
create mode 100644 site/src/views/ComponentOverview.less
create mode 100644 site/src/views/ComponentOverview.vue
create mode 100644 site/src/views/jobs.vue
create mode 100644 site/src/views/user/login/components/Login.vue
create mode 100644 site/src/views/user/login/components/LoginItem.jsx
create mode 100644 site/src/views/user/login/components/LoginSubmit.vue
create mode 100644 site/src/views/user/login/components/LoginTab.vue
create mode 100644 site/src/views/user/login/components/WrapFormItem.vue
create mode 100644 site/src/views/user/login/components/index.js
create mode 100644 site/src/views/user/login/components/index.less
create mode 100644 site/src/views/user/login/components/map.jsx
create mode 100644 site/src/views/user/login/index.vue
create mode 100644 site/src/views/user/login/locales/en-US.js
create mode 100644 site/src/views/user/login/locales/zh-CN.js
create mode 100644 site/src/views/user/login/model.js
create mode 100644 site/src/views/user/login/service.js
create mode 100644 site/src/views/user/login/style.less
create mode 100644 site/src/views/user/login/utils/utils.js
create mode 100644 site/src/views/user/register-result/index.vue
create mode 100644 site/src/views/user/register-result/locales/en-US.js
create mode 100644 site/src/views/user/register-result/locales/zh-CN.js
create mode 100644 site/src/views/user/register-result/style.less
create mode 100644 site/src/views/user/register/index.vue
create mode 100644 site/src/views/user/register/locales/en-US.js
create mode 100644 site/src/views/user/register/locales/zh-CN.js
create mode 100644 site/src/views/user/register/model.js
create mode 100644 site/src/views/user/register/service.js
create mode 100644 site/src/views/user/register/style.less
create mode 100644 site/src/views/vip.vue
create mode 100644 site/src/vueDocs/customize-theme.en-US.md
create mode 100644 site/src/vueDocs/customize-theme.zh-CN.md
create mode 100644 site/src/vueDocs/download.en-US.md
create mode 100644 site/src/vueDocs/download.zh-CN.md
create mode 100644 site/src/vueDocs/faq.en-US.md
create mode 100644 site/src/vueDocs/faq.zh-CN.md
create mode 100644 site/src/vueDocs/getting-started.en-US.md
create mode 100644 site/src/vueDocs/getting-started.zh-CN.md
create mode 100644 site/src/vueDocs/i18n.en-US.md
create mode 100644 site/src/vueDocs/i18n.zh-CN.md
create mode 100644 site/src/vueDocs/introduce.en-US.md
create mode 100644 site/src/vueDocs/introduce.zh-CN.md
create mode 100644 site/src/vueDocs/migration-v2.en-US.md
create mode 100644 site/src/vueDocs/migration-v2.zh-CN.md
create mode 100644 site/src/vueDocs/replace-date.en-US.md
create mode 100644 site/src/vueDocs/replace-date.zh-CN.md
create mode 100644 site/src/vueDocs/sponsor.en-US.md
create mode 100644 site/src/vueDocs/sponsor.zh-CN.md
create mode 100644 site/src/vueDocs/use-with-vue-cli.en-US.md
create mode 100644 site/src/vueDocs/use-with-vue-cli.zh-CN.md
create mode 100644 site/typings/index.d.ts
create mode 100644 site/typings/shared.d.ts
diff --git a/.eslintrc b/.eslintrc
deleted file mode 100644
index 83f8ac1e6..000000000
--- a/.eslintrc
+++ /dev/null
@@ -1,82 +0,0 @@
-{
- "root": true,
- "env": {
- "browser": true,
- "node": true,
- "jasmine": true,
- "jest": true,
- "es6": true
- },
- "parser": "@typescript-eslint/parser",
- "parserOptions": {
- "parser": "babel-eslint"
- },
- "extends": ["plugin:vue/vue3-recommended", "prettier"],
- "plugins": ["markdown", "jest", "@typescript-eslint", "eslint-plugin-no-explicit-type-exports"],
- "overrides": [
- {
- "files": ["**/demo/*.md"],
- "processor": "markdown/markdown",
- "rules": {
- "no-console": "off"
- }
- },
- {
- "files": ["*.ts", "*.tsx"],
- "extends": [
- "@vue/typescript/recommended",
- "@vue/prettier",
- "@vue/prettier/@typescript-eslint"
- ],
- "parserOptions": {
- "project": "./tsconfig.json"
- },
- "rules": {
- "no-explicit-type-exports/no-explicit-type-exports": 2,
- "@typescript-eslint/no-explicit-any": 0,
- "@typescript-eslint/ban-types": 0,
- "@typescript-eslint/consistent-type-imports": 1,
- "@typescript-eslint/explicit-module-boundary-types": 0,
- "@typescript-eslint/no-empty-function": 0,
- "@typescript-eslint/no-non-null-assertion": 0,
- "@typescript-eslint/no-unused-vars": [
- "error",
- { "vars": "all", "args": "after-used", "ignoreRestSiblings": true }
- ],
- "@typescript-eslint/ban-ts-comment": 0
- }
- }
- ],
- "rules": {
- "comma-dangle": [2, "always-multiline"],
- "no-var": "error",
- "no-console": [2, { "allow": ["warn", "error"] }],
- "object-shorthand": 2,
- "no-unused-vars": [2, { "ignoreRestSiblings": true, "argsIgnorePattern": "^h$" }],
- "no-undef": 2,
- "camelcase": "off",
- "no-extra-boolean-cast": "off",
- "semi": ["error", "always"],
- "vue/require-explicit-emits": "off",
- "vue/require-prop-types": "off",
- "vue/require-default-prop": "off",
- "vue/no-reserved-keys": "off",
- "vue/comment-directive": "off",
- "vue/prop-name-casing": "off",
- "vue/one-component-per-file": "off",
- "vue/custom-event-name-casing": "off",
- "vue/max-attributes-per-line": [
- 2,
- {
- "singleline": 20,
- "multiline": {
- "max": 1,
- "allowFirstLine": false
- }
- }
- ]
- },
- "globals": {
- "h": true
- }
-}
diff --git a/.eslintrc.js b/.eslintrc.js
new file mode 100644
index 000000000..3c7e1c9d8
--- /dev/null
+++ b/.eslintrc.js
@@ -0,0 +1,78 @@
+module.exports = {
+ root: true,
+ env: {
+ browser: true,
+ node: true,
+ jasmine: true,
+ jest: true,
+ es6: true,
+ },
+ parser: '@typescript-eslint/parser',
+ parserOptions: {
+ parser: 'babel-eslint',
+ },
+ extends: ['plugin:vue/vue3-recommended', 'prettier'],
+ plugins: ['markdown', 'jest', '@typescript-eslint', 'eslint-plugin-no-explicit-type-exports'],
+ overrides: [
+ {
+ files: ['**/demo/*.md'],
+ processor: 'markdown/markdown',
+ rules: {
+ 'no-console': 'off',
+ },
+ },
+ {
+ files: ['*.ts', '*.tsx'],
+ extends: ['@vue/typescript/recommended', '@vue/prettier', '@vue/prettier/@typescript-eslint'],
+ parserOptions: {
+ project: './tsconfig.json',
+ },
+ rules: {
+ 'no-explicit-type-exports/no-explicit-type-exports': 2,
+ '@typescript-eslint/no-explicit-any': 0,
+ '@typescript-eslint/ban-types': 0,
+ '@typescript-eslint/consistent-type-imports': 1,
+ '@typescript-eslint/explicit-module-boundary-types': 0,
+ '@typescript-eslint/no-empty-function': 0,
+ '@typescript-eslint/no-non-null-assertion': 0,
+ '@typescript-eslint/no-unused-vars': [
+ 'error',
+ { vars: 'all', args: 'after-used', ignoreRestSiblings: true },
+ ],
+ '@typescript-eslint/ban-ts-comment': 0,
+ },
+ },
+ ],
+ rules: {
+ 'comma-dangle': [2, 'always-multiline'],
+ 'no-var': 'error',
+ 'no-console': [2, { allow: ['warn', 'error'] }],
+ 'object-shorthand': 2,
+ 'no-unused-vars': [2, { ignoreRestSiblings: true, argsIgnorePattern: '^h$' }],
+ 'no-undef': 2,
+ camelcase: 'off',
+ 'no-extra-boolean-cast': 'off',
+ semi: ['error', 'always'],
+ 'vue/require-explicit-emits': 'off',
+ 'vue/require-prop-types': 'off',
+ 'vue/require-default-prop': 'off',
+ 'vue/no-reserved-keys': 'off',
+ 'vue/comment-directive': 'off',
+ 'vue/prop-name-casing': 'off',
+ 'vue/one-component-per-file': 'off',
+ 'vue/custom-event-name-casing': 'off',
+ 'vue/max-attributes-per-line': [
+ 2,
+ {
+ singleline: 20,
+ multiline: {
+ max: 1,
+ allowFirstLine: false,
+ },
+ },
+ ],
+ },
+ globals: {
+ h: true,
+ },
+};
diff --git a/package.json b/package.json
index e057dc5e8..d85f27273 100644
--- a/package.json
+++ b/package.json
@@ -28,7 +28,8 @@
"vetur"
],
"scripts": {
- "dev": "vite",
+ "debugger": "vite",
+ "dev": "vite serve site",
"test": "cross-env NODE_ENV=test WORKFLOW=true jest --config .jest.js",
"test:dev": "cross-env NODE_ENV=test jest --config .jest.js",
"compile": "node antd-tools/cli/run.js compile",
diff --git a/plugin/md/utils/tsToJs.ts b/plugin/md/utils/tsToJs.ts
index b901939ed..b0ee312a3 100644
--- a/plugin/md/utils/tsToJs.ts
+++ b/plugin/md/utils/tsToJs.ts
@@ -1,8 +1,10 @@
import { transformSync } from '@babel/core';
import { CLIEngine } from 'eslint';
+import path from 'path';
const engine = new CLIEngine({
fix: true,
useEslintrc: false,
+ baseConfig: require(path.join(process.cwd(), '.eslintrc.js')),
});
const tsToJs = (content: string): string => {
if (!content) {
diff --git a/site/404.html b/site/404.html
new file mode 100644
index 000000000..2687f6e43
--- /dev/null
+++ b/site/404.html
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+ Ant Design Vue
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/site/index.html b/site/index.html
new file mode 100644
index 000000000..58265e687
--- /dev/null
+++ b/site/index.html
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+ Ant Design Vue
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/site/public/docsearch.min.js b/site/public/docsearch.min.js
new file mode 100644
index 000000000..efb45b8f6
--- /dev/null
+++ b/site/public/docsearch.min.js
@@ -0,0 +1,2 @@
+/*! docsearch 2.6.3 | © Algolia | github.com/algolia/docsearch */
+(function webpackUniversalModuleDefinition(root,factory){if(typeof exports==="object"&&typeof module==="object")module.exports=factory();else if(typeof define==="function"&&define.amd)define([],factory);else if(typeof exports==="object")exports["docsearch"]=factory();else root["docsearch"]=factory()})(typeof self!=="undefined"?self:this,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module["default"]}:function getModuleExports(){return module};__webpack_require__.d(getter,"a",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p="";return __webpack_require__(__webpack_require__.s=22)}([function(module,exports,__webpack_require__){"use strict";var DOM=__webpack_require__(1);function escapeRegExp(str){return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}module.exports={isArray:null,isFunction:null,isObject:null,bind:null,each:null,map:null,mixin:null,isMsie:function(agentString){if(agentString===undefined){agentString=navigator.userAgent}if(/(msie|trident)/i.test(agentString)){var match=agentString.match(/(msie |rv:)(\d+(.\d+)?)/i);if(match){return match[2]}}return false},escapeRegExChars:function(str){return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isNumber:function(obj){return typeof obj==="number"},toStr:function toStr(s){return s===undefined||s===null?"":s+""},cloneDeep:function cloneDeep(obj){var clone=this.mixin({},obj);var self=this;this.each(clone,function(value,key){if(value){if(self.isArray(value)){clone[key]=[].concat(value)}else if(self.isObject(value)){clone[key]=self.cloneDeep(value)}}});return clone},error:function(msg){throw new Error(msg)},every:function(obj,test){var result=true;if(!obj){return result}this.each(obj,function(val,key){if(result){result=test.call(null,val,key,obj)&&result}});return!!result},any:function(obj,test){var found=false;if(!obj){return found}this.each(obj,function(val,key){if(test.call(null,val,key,obj)){found=true;return false}});return found},getUniqueId:function(){var counter=0;return function(){return counter++}}(),templatify:function templatify(obj){if(this.isFunction(obj)){return obj}var $template=DOM.element(obj);if($template.prop("tagName")==="SCRIPT"){return function template(){return $template.text()}}return function template(){return String(obj)}},defer:function(fn){setTimeout(fn,0)},noop:function(){},formatPrefix:function(prefix,noPrefix){return noPrefix?"":prefix+"-"},className:function(prefix,clazz,skipDot){return(skipDot?"":".")+prefix+clazz},escapeHighlightedString:function(str,highlightPreTag,highlightPostTag){highlightPreTag=highlightPreTag||"";var pre=document.createElement("div");pre.appendChild(document.createTextNode(highlightPreTag));highlightPostTag=highlightPostTag||"";var post=document.createElement("div");post.appendChild(document.createTextNode(highlightPostTag));var div=document.createElement("div");div.appendChild(document.createTextNode(str));return div.innerHTML.replace(RegExp(escapeRegExp(pre.innerHTML),"g"),highlightPreTag).replace(RegExp(escapeRegExp(post.innerHTML),"g"),highlightPostTag)}}},function(module,exports,__webpack_require__){"use strict";module.exports={element:null}},function(module,exports){var hasOwn=Object.prototype.hasOwnProperty;var toString=Object.prototype.toString;module.exports=function forEach(obj,fn,ctx){if(toString.call(fn)!=="[object Function]"){throw new TypeError("iterator must be a function")}var l=obj.length;if(l===+l){for(var i=0;i was loaded but did not call our provided callback"),JSONPScriptError:createCustomError("JSONPScriptError","
diff --git a/site/src/SymbolKey.ts b/site/src/SymbolKey.ts
new file mode 100644
index 000000000..9d14bbefa
--- /dev/null
+++ b/site/src/SymbolKey.ts
@@ -0,0 +1 @@
+export const GLOBAL_CONFIG = Symbol('globalConfig');
diff --git a/site/src/assets/ant-design-vue.svg b/site/src/assets/ant-design-vue.svg
new file mode 100644
index 000000000..4fe899edc
--- /dev/null
+++ b/site/src/assets/ant-design-vue.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/site/src/assets/logo.png b/site/src/assets/logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..f6305e2f82facb9997163e9734e1ade330d1b0ad
GIT binary patch
literal 158274
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