style: code style
This commit is contained in:
parent
2f3f619c47
commit
2077481d89
16
.eslintrc.js
16
.eslintrc.js
|
@ -22,26 +22,14 @@ module.exports = {
|
||||||
'plugin:prettier/recommended'
|
'plugin:prettier/recommended'
|
||||||
],
|
],
|
||||||
rules: {
|
rules: {
|
||||||
|
'@typescript-eslint/no-unused-vars': 'off',
|
||||||
|
'no-unused-vars': 'off',
|
||||||
'vue/require-default-prop': 'off',
|
'vue/require-default-prop': 'off',
|
||||||
'@typescript-eslint/ban-ts-comment': 'off',
|
'@typescript-eslint/ban-ts-comment': 'off',
|
||||||
'@typescript-eslint/no-explicit-any': 'off',
|
'@typescript-eslint/no-explicit-any': 'off',
|
||||||
'@typescript-eslint/ban-types': 'off',
|
'@typescript-eslint/ban-types': 'off',
|
||||||
'@typescript-eslint/no-non-null-assertion': 'off',
|
'@typescript-eslint/no-non-null-assertion': 'off',
|
||||||
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
||||||
'@typescript-eslint/no-unused-vars': [
|
|
||||||
'error',
|
|
||||||
{
|
|
||||||
argsIgnorePattern: '^_',
|
|
||||||
varsIgnorePattern: '^_'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'no-unused-vars': [
|
|
||||||
'error',
|
|
||||||
{
|
|
||||||
argsIgnorePattern: '^_',
|
|
||||||
varsIgnorePattern: '^_'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'vue/html-self-closing': [
|
'vue/html-self-closing': [
|
||||||
'error',
|
'error',
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"cSpell.words": ["windi"],
|
||||||
"typescript.tsdk": "./node_modules/typescript/lib",
|
"typescript.tsdk": "./node_modules/typescript/lib",
|
||||||
"volar.tsPlugin": true,
|
"volar.tsPlugin": true,
|
||||||
"volar.tsPluginStatus": false,
|
"volar.tsPluginStatus": false,
|
||||||
|
@ -7,23 +8,9 @@
|
||||||
//===========================================
|
//===========================================
|
||||||
"explorer.openEditors.visible": 0,
|
"explorer.openEditors.visible": 0,
|
||||||
"editor.tabSize": 2,
|
"editor.tabSize": 2,
|
||||||
"editor.renderControlCharacters": true,
|
|
||||||
"editor.minimap.renderCharacters": false,
|
|
||||||
"editor.minimap.maxColumn": 300,
|
|
||||||
"editor.minimap.showSlider": "always",
|
|
||||||
"editor.cursorBlinking": "phase",
|
|
||||||
"editor.cursorSmoothCaretAnimation": true,
|
|
||||||
"editor.detectIndentation": false,
|
|
||||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||||
"diffEditor.ignoreTrimWhitespace": false,
|
"diffEditor.ignoreTrimWhitespace": false,
|
||||||
"javascript.format.insertSpaceBeforeFunctionParenthesis": true,
|
|
||||||
"editor.suggestSelection": "first",
|
|
||||||
"editor.trimAutoWhitespace": true,
|
"editor.trimAutoWhitespace": true,
|
||||||
"editor.quickSuggestions": {
|
|
||||||
"other": true,
|
|
||||||
"comments": true,
|
|
||||||
"strings": true
|
|
||||||
},
|
|
||||||
//===========================================
|
//===========================================
|
||||||
//============= Other =======================
|
//============= Other =======================
|
||||||
//===========================================
|
//===========================================
|
||||||
|
@ -34,17 +21,6 @@
|
||||||
//===========================================
|
//===========================================
|
||||||
"emmet.triggerExpansionOnTab": true,
|
"emmet.triggerExpansionOnTab": true,
|
||||||
"emmet.showAbbreviationSuggestions": true,
|
"emmet.showAbbreviationSuggestions": true,
|
||||||
"emmet.showExpandedAbbreviation": "always",
|
|
||||||
"emmet.syntaxProfiles": {
|
|
||||||
"vue-html": "html",
|
|
||||||
"vue": "html",
|
|
||||||
"xml": {
|
|
||||||
"attr_quotes": "single"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"emmet.includeLanguages": {
|
|
||||||
"jsx-sublime-babel-tags": "javascriptreact"
|
|
||||||
},
|
|
||||||
//===========================================
|
//===========================================
|
||||||
//============= files =======================
|
//============= files =======================
|
||||||
//===========================================
|
//===========================================
|
||||||
|
@ -97,52 +73,22 @@
|
||||||
},
|
},
|
||||||
"stylelint.enable": true,
|
"stylelint.enable": true,
|
||||||
"stylelint.packageManager": "yarn",
|
"stylelint.packageManager": "yarn",
|
||||||
// ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
|
|
||||||
// ===========================================
|
|
||||||
// ================ Eslint ===================
|
|
||||||
// ===========================================
|
|
||||||
"eslint.alwaysShowStatus": true,
|
|
||||||
"eslint.options": {
|
|
||||||
"plugins": ["html", "vue", "javascript", "jsx", "typescript"],
|
|
||||||
"extensions": [".js", ".jsx", ".ts", ".tsx", ".vue"]
|
|
||||||
},
|
|
||||||
"eslint.validate": [
|
|
||||||
"javascript",
|
|
||||||
"typescript",
|
|
||||||
"reacttypescript",
|
|
||||||
"reactjavascript",
|
|
||||||
"html",
|
|
||||||
"vue"
|
|
||||||
],
|
|
||||||
// ===========================================
|
// ===========================================
|
||||||
// ================ Vetur ====================
|
// ================ Vetur ====================
|
||||||
// ===========================================
|
// ===========================================
|
||||||
"vetur.experimental.templateInterpolationService": true,
|
"vetur.experimental.templateInterpolationService": true,
|
||||||
"vetur.format.options.tabSize": 2,
|
"vetur.format.options.tabSize": 2,
|
||||||
"vetur.format.defaultFormatter.html": "js-beautify-html",
|
|
||||||
"vetur.format.defaultFormatter.scss": "prettier",
|
|
||||||
"vetur.format.defaultFormatter.css": "prettier",
|
|
||||||
"vetur.format.defaultFormatter.ts": "prettier-tslint",
|
|
||||||
"vetur.format.defaultFormatter.js": "prettier",
|
|
||||||
"vetur.languageFeatures.codeActions": false,
|
"vetur.languageFeatures.codeActions": false,
|
||||||
"vetur.format.defaultFormatterOptions": {
|
"vetur.format.defaultFormatterOptions": {
|
||||||
"js-beautify-html": {
|
"js-beautify-html": {
|
||||||
"wrap_attributes": "force-expand-multiline"
|
"wrap_attributes": "force-expand-multiline"
|
||||||
},
|
|
||||||
"prettier": {
|
|
||||||
"eslintIntegration": true,
|
|
||||||
"arrowParens": "always",
|
|
||||||
"semi": false,
|
|
||||||
"singleQuote": true
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"liveServer.settings.donotShowInfoMsg": true,
|
"liveServer.settings.donotShowInfoMsg": true,
|
||||||
"terminal.integrated.rendererType": "dom",
|
|
||||||
"telemetry.enableCrashReporter": false,
|
"telemetry.enableCrashReporter": false,
|
||||||
"telemetry.enableTelemetry": false,
|
|
||||||
"workbench.settings.enableNaturalLanguageSearch": false,
|
"workbench.settings.enableNaturalLanguageSearch": false,
|
||||||
"path-intellisense.mappings": {
|
"path-intellisense.mappings": {
|
||||||
"/@/": "${workspaceRoot}/src"
|
"@/": "${workspaceRoot}/src"
|
||||||
},
|
},
|
||||||
"prettier.requireConfig": true,
|
"prettier.requireConfig": true,
|
||||||
"typescript.updateImportsOnFileMove.enabled": "always",
|
"typescript.updateImportsOnFileMove.enabled": "always",
|
||||||
|
@ -177,8 +123,7 @@
|
||||||
},
|
},
|
||||||
"[vue]": {
|
"[vue]": {
|
||||||
"editor.codeActionsOnSave": {
|
"editor.codeActionsOnSave": {
|
||||||
"source.fixAll.eslint": false,
|
"source.fixAll.eslint": false
|
||||||
"source.fixAll.stylelint": true
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"i18n-ally.localesPaths": ["src/locales/lang"],
|
"i18n-ally.localesPaths": ["src/locales/lang"],
|
||||||
|
|
18
package.json
18
package.json
|
@ -26,13 +26,13 @@
|
||||||
"axios": "^0.21.1",
|
"axios": "^0.21.1",
|
||||||
"dayjs": "^1.10.5",
|
"dayjs": "^1.10.5",
|
||||||
"dexie": "^3.0.3",
|
"dexie": "^3.0.3",
|
||||||
"element-plus": "^1.0.2-beta.45",
|
"element-plus": "^1.0.2-beta.46",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"monaco-editor": "^0.24.0",
|
"monaco-editor": "^0.24.0",
|
||||||
"normalize.css": "^8.0.1",
|
"normalize.css": "^8.0.1",
|
||||||
"nprogress": "^1.0.0-1",
|
"nprogress": "^1.0.0-1",
|
||||||
"qrcode": "^1.4.4",
|
"qrcode": "^1.4.4",
|
||||||
"vant": "^3.0.17",
|
"vant": "^3.0.18",
|
||||||
"vue": "3.0.11",
|
"vue": "3.0.11",
|
||||||
"vue-router": "^4.0.8",
|
"vue-router": "^4.0.8",
|
||||||
"vuedraggable": "^4.0.1",
|
"vuedraggable": "^4.0.1",
|
||||||
|
@ -41,7 +41,7 @@
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@commitlint/cli": "^12.1.4",
|
"@commitlint/cli": "^12.1.4",
|
||||||
"@commitlint/config-conventional": "^12.1.4",
|
"@commitlint/config-conventional": "^12.1.4",
|
||||||
"@types/node": "^15.6.1",
|
"@types/node": "^15.12.1",
|
||||||
"@typescript-eslint/eslint-plugin": "^4.26.0",
|
"@typescript-eslint/eslint-plugin": "^4.26.0",
|
||||||
"@typescript-eslint/parser": "^4.26.0",
|
"@typescript-eslint/parser": "^4.26.0",
|
||||||
"@vitejs/plugin-legacy": "^1.4.1",
|
"@vitejs/plugin-legacy": "^1.4.1",
|
||||||
|
@ -51,7 +51,7 @@
|
||||||
"commitizen": "^4.2.4",
|
"commitizen": "^4.2.4",
|
||||||
"cz-conventional-changelog": "^3.3.0",
|
"cz-conventional-changelog": "^3.3.0",
|
||||||
"cz-customizable": "^6.3.0",
|
"cz-customizable": "^6.3.0",
|
||||||
"eslint": "^7.27.0",
|
"eslint": "^7.28.0",
|
||||||
"eslint-config-prettier": "^8.3.0",
|
"eslint-config-prettier": "^8.3.0",
|
||||||
"eslint-plugin-import": "^2.23.4",
|
"eslint-plugin-import": "^2.23.4",
|
||||||
"eslint-plugin-prettier": "^3.4.0",
|
"eslint-plugin-prettier": "^3.4.0",
|
||||||
|
@ -59,21 +59,21 @@
|
||||||
"gh-pages": "^3.2.0",
|
"gh-pages": "^3.2.0",
|
||||||
"husky": "^6.0.0",
|
"husky": "^6.0.0",
|
||||||
"lint-staged": "^11.0.0",
|
"lint-staged": "^11.0.0",
|
||||||
"prettier": "^2.3.0",
|
"prettier": "^2.3.1",
|
||||||
"pretty-quick": "^3.1.0",
|
"pretty-quick": "^3.1.0",
|
||||||
"sass": "1.34.0",
|
"sass": "1.34.1",
|
||||||
"stylelint": "^13.13.1",
|
"stylelint": "^13.13.1",
|
||||||
"stylelint-config-prettier": "^8.0.2",
|
"stylelint-config-prettier": "^8.0.2",
|
||||||
"stylelint-config-standard": "^22.0.0",
|
"stylelint-config-standard": "^22.0.0",
|
||||||
"stylelint-order": "^4.1.0",
|
"stylelint-order": "^4.1.0",
|
||||||
"typescript": "^4.3.2",
|
"typescript": "^4.3.2",
|
||||||
"vite": "2.3.5",
|
"vite": "2.3.6",
|
||||||
"vite-plugin-components": "^0.10.4",
|
"vite-plugin-components": "^0.10.4",
|
||||||
"vite-plugin-style-import": "^0.10.1",
|
"vite-plugin-style-import": "^0.10.1",
|
||||||
"vite-plugin-windicss": "^0.16.7",
|
"vite-plugin-windicss": "^1.0.1",
|
||||||
"vue-eslint-parser": "^7.6.0",
|
"vue-eslint-parser": "^7.6.0",
|
||||||
"vue-tsc": "^0.1.7",
|
"vue-tsc": "^0.1.7",
|
||||||
"windicss": "^3.0.12"
|
"windicss": "^3.1.1"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|
|
@ -153,8 +153,8 @@ export default defineComponent({
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
setCurrentPage,
|
|
||||||
pages,
|
pages,
|
||||||
|
setCurrentPage,
|
||||||
onSubmit,
|
onSubmit,
|
||||||
setDefaultPage,
|
setDefaultPage,
|
||||||
handleNodeClick,
|
handleNodeClick,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
* @description:属性编辑器
|
* @description:属性编辑器
|
||||||
* @update: 2021/4/28 16:59
|
* @update: 2021/4/28 16:59
|
||||||
*/
|
*/
|
||||||
import { defineComponent, PropType, reactive } from 'vue'
|
import { defineComponent, reactive } from 'vue'
|
||||||
import styles from './index.module.scss'
|
import styles from './index.module.scss'
|
||||||
import './index.common.scss'
|
import './index.common.scss'
|
||||||
import {
|
import {
|
||||||
|
@ -23,28 +23,22 @@ import {
|
||||||
} from 'element-plus'
|
} from 'element-plus'
|
||||||
import { VisualEditorProps, VisualEditorPropsType } from '@/visual-editor/visual-editor.props'
|
import { VisualEditorProps, VisualEditorPropsType } from '@/visual-editor/visual-editor.props'
|
||||||
import { TablePropEditor } from './components/'
|
import { TablePropEditor } from './components/'
|
||||||
import { VisualEditorBlockData } from '@/visual-editor/visual-editor.utils'
|
|
||||||
import MonacoEditor from '../common/monaco-editor/MonacoEditor'
|
import MonacoEditor from '../common/monaco-editor/MonacoEditor'
|
||||||
import { useVModel } from '@vueuse/core'
|
|
||||||
import { useDotProp } from '@/visual-editor/hooks/useDotProp'
|
import { useDotProp } from '@/visual-editor/hooks/useDotProp'
|
||||||
import { useVisualData } from '@/visual-editor/hooks/useVisualData'
|
import { useVisualData } from '@/visual-editor/hooks/useVisualData'
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'RightAttributePanel',
|
name: 'RightAttributePanel',
|
||||||
props: {
|
setup() {
|
||||||
block: { type: Object as PropType<VisualEditorBlockData>, default: () => ({}) }
|
const { visualConfig, currentBlock } = useVisualData()
|
||||||
},
|
|
||||||
setup(props, { emit }) {
|
|
||||||
const { visualConfig } = useVisualData()
|
|
||||||
|
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
activeName: 'attr',
|
activeName: 'attr',
|
||||||
isOpen: true,
|
isOpen: true
|
||||||
editData: useVModel(props, 'block', emit)
|
|
||||||
})
|
})
|
||||||
|
|
||||||
const renderEditor = (propName: string, propConfig: VisualEditorProps) => {
|
const renderEditor = (propName: string, propConfig: VisualEditorProps) => {
|
||||||
const { propObj, prop } = useDotProp(state.editData.props, propName)
|
const { propObj, prop } = useDotProp(currentBlock.value.props, propName)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
[VisualEditorPropsType.input]: () => (
|
[VisualEditorPropsType.input]: () => (
|
||||||
|
@ -71,28 +65,28 @@ export default defineComponent({
|
||||||
return () => {
|
return () => {
|
||||||
const content: JSX.Element[] = []
|
const content: JSX.Element[] = []
|
||||||
|
|
||||||
if (!props.block) {
|
if (!currentBlock.value) {
|
||||||
content.push(
|
content.push(
|
||||||
<>
|
<>
|
||||||
<ElFormItem label="容器宽度">
|
<ElFormItem label="容器宽度">
|
||||||
<ElInputNumber v-model={state.editData.width} {...({ step: 100 } as any)} />
|
<ElInputNumber v-model={currentBlock.value.width} {...({ step: 100 } as any)} />
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
<ElFormItem label="容器高度">
|
<ElFormItem label="容器高度">
|
||||||
<ElInputNumber v-model={state.editData.height} {...({ step: 100 } as any)} />
|
<ElInputNumber v-model={currentBlock.value.height} {...({ step: 100 } as any)} />
|
||||||
</ElFormItem>
|
</ElFormItem>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
const { componentKey } = props.block
|
const { componentKey } = currentBlock.value
|
||||||
const component = visualConfig.componentMap[componentKey]
|
const component = visualConfig.componentMap[componentKey]
|
||||||
console.log('props.block:', props.block)
|
console.log('props.block:', currentBlock.value)
|
||||||
content.push(
|
content.push(
|
||||||
<ElFormItem label="组件ID" labelWidth={'76px'}>
|
<ElFormItem label="组件ID" labelWidth={'76px'}>
|
||||||
{props.block._vid}
|
{currentBlock.value._vid}
|
||||||
<ElPopover
|
<ElPopover
|
||||||
width={200}
|
width={200}
|
||||||
trigger="hover"
|
trigger="hover"
|
||||||
content={`你可以利用该组件ID。对该组件进行获取和设置其属性,组件可用属性可在控制台输入:$$refs.${props.block._vid} 进行查看`}
|
content={`你可以利用该组件ID。对该组件进行获取和设置其属性,组件可用属性可在控制台输入:$$refs.${currentBlock.value._vid} 进行查看`}
|
||||||
>
|
>
|
||||||
{{
|
{{
|
||||||
reference: () => (
|
reference: () => (
|
||||||
|
@ -105,9 +99,9 @@ export default defineComponent({
|
||||||
if (!!component) {
|
if (!!component) {
|
||||||
if (!!component.props) {
|
if (!!component.props) {
|
||||||
content.push(
|
content.push(
|
||||||
Object.entries(component.props || {}).map(([propName, propConfig]) => (
|
...Object.entries(component.props || {}).map(([propName, propConfig]) => (
|
||||||
<ElFormItem
|
<ElFormItem
|
||||||
key={props.block._vid + propName}
|
key={currentBlock.value._vid + propName}
|
||||||
v-slots={{
|
v-slots={{
|
||||||
label: () =>
|
label: () =>
|
||||||
propConfig.tips ? (
|
propConfig.tips ? (
|
||||||
|
@ -135,7 +129,7 @@ export default defineComponent({
|
||||||
const handleSchemaChange = (val) => {
|
const handleSchemaChange = (val) => {
|
||||||
try {
|
try {
|
||||||
const newObj = JSON.parse(val)
|
const newObj = JSON.parse(val)
|
||||||
Object.assign(state.editData, newObj)
|
Object.assign(currentBlock.value, newObj)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log('JSON格式有误:', e)
|
console.log('JSON格式有误:', e)
|
||||||
}
|
}
|
||||||
|
@ -156,9 +150,9 @@ export default defineComponent({
|
||||||
</ElTabPane>
|
</ElTabPane>
|
||||||
<ElTabPane label="JSON" name="json" lazy>
|
<ElTabPane label="JSON" name="json" lazy>
|
||||||
<MonacoEditor
|
<MonacoEditor
|
||||||
code={JSON.stringify(props.block)}
|
code={JSON.stringify(currentBlock.value)}
|
||||||
layout={{ width: 300, height: 800 }}
|
layout={{ width: 300, height: 800 }}
|
||||||
vid={state.activeName == 'json' ? props.block._vid : -1}
|
vid={state.activeName == 'json' ? currentBlock.value._vid : -1}
|
||||||
onChange={handleSchemaChange}
|
onChange={handleSchemaChange}
|
||||||
title=""
|
title=""
|
||||||
/>
|
/>
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="tsx">
|
<script lang="tsx">
|
||||||
import { defineComponent, reactive, toRefs, SetupContext } from 'vue'
|
import { defineComponent, reactive, toRefs } from 'vue'
|
||||||
import { VisualEditorBlockData } from '@/visual-editor/visual-editor.utils'
|
import { VisualEditorBlockData } from '@/visual-editor/visual-editor.utils'
|
||||||
import DraggableTransitionGroup from './draggable-transition-group.vue'
|
import DraggableTransitionGroup from './draggable-transition-group.vue'
|
||||||
import { $$dropdown, DropdownOption } from '@/visual-editor/utils/dropdown-service'
|
import { $$dropdown, DropdownOption } from '@/visual-editor/utils/dropdown-service'
|
||||||
|
@ -54,10 +54,10 @@ export default defineComponent({
|
||||||
SlotItem
|
SlotItem
|
||||||
},
|
},
|
||||||
emits: ['on-selected'],
|
emits: ['on-selected'],
|
||||||
setup(_, { emit }: SetupContext) {
|
setup() {
|
||||||
const { globalProperties } = useGlobalProperties()
|
const { globalProperties } = useGlobalProperties()
|
||||||
|
|
||||||
const { currentPage, visualConfig } = useVisualData()
|
const { currentPage, visualConfig, setCurrentBlock } = useVisualData()
|
||||||
|
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
drag: false
|
drag: false
|
||||||
|
@ -112,7 +112,7 @@ export default defineComponent({
|
||||||
}
|
}
|
||||||
|
|
||||||
const selectComp = (element) => {
|
const selectComp = (element) => {
|
||||||
emit('on-selected', element)
|
setCurrentBlock(element)
|
||||||
currentPage.value.blocks.forEach((block) => {
|
currentPage.value.blocks.forEach((block) => {
|
||||||
block.focus = element._vid == block._vid
|
block.focus = element._vid == block._vid
|
||||||
block.focusWithChild = false
|
block.focusWithChild = false
|
||||||
|
|
|
@ -24,6 +24,7 @@ export const localKey = CacheEnum.PAGE_DATA_KEY
|
||||||
export const injectKey = Symbol('injectKey')
|
export const injectKey = Symbol('injectKey')
|
||||||
|
|
||||||
interface IState {
|
interface IState {
|
||||||
|
currentBlock: VisualEditorBlockData // 当前正在操作的组件
|
||||||
currentPage: VisualEditorPage // 当前正在操作的页面
|
currentPage: VisualEditorPage // 当前正在操作的页面
|
||||||
jsonData: VisualEditorModelValue // 整颗JSON树
|
jsonData: VisualEditorModelValue // 整颗JSON树
|
||||||
}
|
}
|
||||||
|
@ -31,6 +32,7 @@ interface IState {
|
||||||
export interface VisualData {
|
export interface VisualData {
|
||||||
jsonData: DeepReadonly<VisualEditorModelValue> // 保护JSONData避免直接修改
|
jsonData: DeepReadonly<VisualEditorModelValue> // 保护JSONData避免直接修改
|
||||||
currentPage: ComputedRef<VisualEditorPage> // 当前正在操作的页面
|
currentPage: ComputedRef<VisualEditorPage> // 当前正在操作的页面
|
||||||
|
currentBlock: ComputedRef<VisualEditorBlockData> // 当前正在操作的组件
|
||||||
visualConfig: VisualEditorConfig // 组件配置
|
visualConfig: VisualEditorConfig // 组件配置
|
||||||
overrideProject: (jsonData: VisualEditorModelValue) => void // 使用JSON覆盖整个项目
|
overrideProject: (jsonData: VisualEditorModelValue) => void // 使用JSON覆盖整个项目
|
||||||
updatePage: (data: { newPath?: string; oldPath: string; page: Partial<VisualEditorPage> }) => void // 更新某个页面
|
updatePage: (data: { newPath?: string; oldPath: string; page: Partial<VisualEditorPage> }) => void // 更新某个页面
|
||||||
|
@ -38,6 +40,7 @@ export interface VisualData {
|
||||||
deletePage: (path: string, redirect?: string) => void // 删除页面
|
deletePage: (path: string, redirect?: string) => void // 删除页面
|
||||||
updatePageBlock: (path: string, blocks: VisualEditorBlockData[]) => void // 更新某页面下的所有组件
|
updatePageBlock: (path: string, blocks: VisualEditorBlockData[]) => void // 更新某页面下的所有组件
|
||||||
setCurrentPage: (path: string) => void // 设置当前正在操作的页面
|
setCurrentPage: (path: string) => void // 设置当前正在操作的页面
|
||||||
|
setCurrentBlock: (block: VisualEditorBlockData) => void // 设置当前正在操作的组件
|
||||||
}
|
}
|
||||||
|
|
||||||
const defaultValue: VisualEditorModelValue = {
|
const defaultValue: VisualEditorModelValue = {
|
||||||
|
@ -67,9 +70,12 @@ export const initVisualData = (): VisualData => {
|
||||||
// 所有页面的path都必须以 / 开发
|
// 所有页面的path都必须以 / 开发
|
||||||
const getPrefixPath = (path: string) => (path.startsWith('/') ? path : `/${path}`)
|
const getPrefixPath = (path: string) => (path.startsWith('/') ? path : `/${path}`)
|
||||||
|
|
||||||
|
const currentPage = jsonData.pages[route.path]
|
||||||
|
|
||||||
const state: IState = reactive({
|
const state: IState = reactive({
|
||||||
jsonData,
|
jsonData,
|
||||||
currentPage: jsonData.pages[route.path]
|
currentPage,
|
||||||
|
currentBlock: currentPage?.blocks?.find((item) => item.focus) ?? ({} as VisualEditorBlockData)
|
||||||
})
|
})
|
||||||
const paths = Object.keys(jsonData.pages)
|
const paths = Object.keys(jsonData.pages)
|
||||||
|
|
||||||
|
@ -118,6 +124,11 @@ export const initVisualData = (): VisualData => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 设置当前被操作的组件
|
||||||
|
const setCurrentBlock = (block: VisualEditorBlockData) => {
|
||||||
|
state.currentBlock = block
|
||||||
|
}
|
||||||
|
|
||||||
// 更新pages下面的blocks
|
// 更新pages下面的blocks
|
||||||
const updatePageBlock = (path = '', blocks: VisualEditorBlockData[] = []) => {
|
const updatePageBlock = (path = '', blocks: VisualEditorBlockData[] = []) => {
|
||||||
state.jsonData.pages[path].blocks = blocks
|
state.jsonData.pages[path].blocks = blocks
|
||||||
|
@ -131,8 +142,10 @@ export const initVisualData = (): VisualData => {
|
||||||
visualConfig,
|
visualConfig,
|
||||||
jsonData: readonly(state.jsonData), // 保护JSONData避免直接修改
|
jsonData: readonly(state.jsonData), // 保护JSONData避免直接修改
|
||||||
currentPage: computed(() => state.currentPage),
|
currentPage: computed(() => state.currentPage),
|
||||||
|
currentBlock: computed(() => state.currentBlock),
|
||||||
overrideProject,
|
overrideProject,
|
||||||
setCurrentPage,
|
setCurrentPage,
|
||||||
|
setCurrentBlock,
|
||||||
updatePage,
|
updatePage,
|
||||||
incrementPage,
|
incrementPage,
|
||||||
deletePage,
|
deletePage,
|
||||||
|
|
|
@ -13,68 +13,43 @@
|
||||||
</el-aside>
|
</el-aside>
|
||||||
<el-main>
|
<el-main>
|
||||||
<!-- 中间编辑区域start -->
|
<!-- 中间编辑区域start -->
|
||||||
<simulator>
|
<Simulator>
|
||||||
<simulator-editor @on-selected="onSelected" />
|
<simulator-editor />
|
||||||
</simulator>
|
</Simulator>
|
||||||
<!-- 中间编辑区域end -->
|
<!-- 中间编辑区域end -->
|
||||||
|
|
||||||
<!-- 右侧属性面板start -->
|
<!-- 右侧属性面板start -->
|
||||||
<right-attribute-panel v-model:block="currentBlock" />
|
<right-attribute-panel />
|
||||||
<!-- 右侧属性面板end -->
|
<!-- 右侧属性面板end -->
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
</el-container>
|
</el-container>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script setup lang="ts">
|
||||||
import { defineComponent, reactive, toRefs } from 'vue'
|
|
||||||
import Header from './components/header/index.vue'
|
import Header from './components/header/index.vue'
|
||||||
import LeftAside from './components/left-aside/index.vue'
|
import LeftAside from './components/left-aside/index.vue'
|
||||||
import RightAttributePanel from './components/right-attribute-panel'
|
import RightAttributePanel from './components/right-attribute-panel'
|
||||||
import SimulatorEditor from './components/simulator-editor/simulator-editor.vue'
|
import SimulatorEditor from './components/simulator-editor/simulator-editor.vue'
|
||||||
import Simulator from './components/common/simulator.vue'
|
import Simulator from './components/common/simulator.vue'
|
||||||
import { VisualEditorComponent } from '@/visual-editor/visual-editor.utils'
|
|
||||||
|
|
||||||
interface IState {
|
|
||||||
currentBlock: VisualEditorComponent
|
|
||||||
}
|
|
||||||
|
|
||||||
export default defineComponent({
|
|
||||||
name: 'Layout',
|
|
||||||
components: { Header, LeftAside, RightAttributePanel, SimulatorEditor, Simulator },
|
|
||||||
setup() {
|
|
||||||
const state: IState = reactive({
|
|
||||||
currentBlock: {} as VisualEditorComponent
|
|
||||||
})
|
|
||||||
|
|
||||||
// 当前选中的组件
|
|
||||||
const onSelected = (comp) => {
|
|
||||||
state.currentBlock = comp
|
|
||||||
console.log('currentBlock:', state.currentBlock)
|
|
||||||
}
|
|
||||||
|
|
||||||
return {
|
|
||||||
...toRefs(state),
|
|
||||||
onSelected
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.el-header,
|
.el-header,
|
||||||
.el-footer {
|
.el-footer {
|
||||||
position: relative;
|
position: relative;
|
||||||
background-color: white;
|
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
|
background-color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-aside {
|
.el-aside {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
.layout-container {
|
.layout-container {
|
||||||
height: calc(100vh - 80px);
|
height: calc(100vh - 80px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-main {
|
.el-main {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: 12px;
|
padding: 12px;
|
||||||
|
|
|
@ -28,7 +28,7 @@ module.exports = {
|
||||||
'font-family-no-missing-generic-family-keyword': null,
|
'font-family-no-missing-generic-family-keyword': null,
|
||||||
'declaration-colon-space-after': 'always-single-line',
|
'declaration-colon-space-after': 'always-single-line',
|
||||||
'declaration-colon-space-before': 'never',
|
'declaration-colon-space-before': 'never',
|
||||||
'declaration-block-trailing-semicolon': 'always',
|
'declaration-block-trailing-semicolon': ['always', { ignore: ['single-declaration'] }],
|
||||||
'rule-empty-line-before': [
|
'rule-empty-line-before': [
|
||||||
'always',
|
'always',
|
||||||
{
|
{
|
||||||
|
|
114
yarn.lock
114
yarn.lock
|
@ -420,15 +420,15 @@
|
||||||
resolved "https://registry.yarnpkg.com/@emmetio/scanner/-/scanner-1.0.0.tgz#065b2af6233fe7474d44823e3deb89724af42b5f"
|
resolved "https://registry.yarnpkg.com/@emmetio/scanner/-/scanner-1.0.0.tgz#065b2af6233fe7474d44823e3deb89724af42b5f"
|
||||||
integrity sha512-8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==
|
integrity sha512-8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==
|
||||||
|
|
||||||
"@eslint/eslintrc@^0.4.1":
|
"@eslint/eslintrc@^0.4.2":
|
||||||
version "0.4.1"
|
version "0.4.2"
|
||||||
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.1.tgz#442763b88cecbe3ee0ec7ca6d6dd6168550cbf14"
|
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.2.tgz#f63d0ef06f5c0c57d76c4ab5f63d3835c51b0179"
|
||||||
integrity sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==
|
integrity sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==
|
||||||
dependencies:
|
dependencies:
|
||||||
ajv "^6.12.4"
|
ajv "^6.12.4"
|
||||||
debug "^4.1.1"
|
debug "^4.1.1"
|
||||||
espree "^7.3.0"
|
espree "^7.3.0"
|
||||||
globals "^12.1.0"
|
globals "^13.9.0"
|
||||||
ignore "^4.0.6"
|
ignore "^4.0.6"
|
||||||
import-fresh "^3.2.1"
|
import-fresh "^3.2.1"
|
||||||
js-yaml "^3.13.1"
|
js-yaml "^3.13.1"
|
||||||
|
@ -652,11 +652,16 @@
|
||||||
resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.1.tgz#283f669ff76d7b8260df8ab7a4262cc83d988256"
|
resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.1.tgz#283f669ff76d7b8260df8ab7a4262cc83d988256"
|
||||||
integrity sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==
|
integrity sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==
|
||||||
|
|
||||||
"@types/node@*", "@types/node@^15.6.1":
|
"@types/node@*":
|
||||||
version "15.6.1"
|
version "15.6.1"
|
||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.1.tgz#32d43390d5c62c5b6ec486a9bc9c59544de39a08"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.1.tgz#32d43390d5c62c5b6ec486a9bc9c59544de39a08"
|
||||||
integrity sha512-7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==
|
integrity sha512-7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==
|
||||||
|
|
||||||
|
"@types/node@^15.12.1":
|
||||||
|
version "15.12.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-15.12.1.tgz#9b60797dee1895383a725f828a869c86c6caa5c2"
|
||||||
|
integrity sha512-zyxJM8I1c9q5sRMtVF+zdd13Jt6RU4r4qfhTd7lQubyThvLfx6yYekWSQjGCGV2Tkecgxnlpl/DNlb6Hg+dmEw==
|
||||||
|
|
||||||
"@types/normalize-package-data@^2.4.0":
|
"@types/normalize-package-data@^2.4.0":
|
||||||
version "2.4.0"
|
version "2.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e"
|
resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e"
|
||||||
|
@ -986,18 +991,18 @@
|
||||||
dependencies:
|
dependencies:
|
||||||
vue-demi "*"
|
vue-demi "*"
|
||||||
|
|
||||||
"@windicss/plugin-utils@0.16.7":
|
"@windicss/plugin-utils@1.0.1":
|
||||||
version "0.16.7"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@windicss/plugin-utils/-/plugin-utils-0.16.7.tgz#54cd31841515e849f116a6d89e625da368f7de23"
|
resolved "https://registry.yarnpkg.com/@windicss/plugin-utils/-/plugin-utils-1.0.1.tgz#f6281c91a37be5ea48eb4573cb511ccb82cce16a"
|
||||||
integrity sha512-mxgTj/MkemN8JlyfaS20OAJ0BqTUoUlDT9wD/m5U+nUa5SN/r0kPlg1IW9SbmRTrYjNXWEENf9F0Fjb/X4zn6g==
|
integrity sha512-EHsGC9LGHC/3rWNiOHzkgkexwgmxfHsqvxBoh0hLJv1MPPhEsKv8dQbt34pVZgRsS/rAjiVe4bRRM5NLTy8cWA==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@antfu/utils" "^0.1.6"
|
"@antfu/utils" "^0.1.6"
|
||||||
debug "^4.3.2"
|
debug "^4.3.2"
|
||||||
fast-glob "^3.2.5"
|
fast-glob "^3.2.5"
|
||||||
jiti "^1.9.2"
|
jiti "^1.10.1"
|
||||||
magic-string "^0.25.7"
|
magic-string "^0.25.7"
|
||||||
micromatch "^4.0.4"
|
micromatch "^4.0.4"
|
||||||
windicss "^3.0.12"
|
windicss "^3.1.0"
|
||||||
|
|
||||||
JSONStream@^1.0.4:
|
JSONStream@^1.0.4:
|
||||||
version "1.3.5"
|
version "1.3.5"
|
||||||
|
@ -2107,10 +2112,10 @@ electron-to-chromium@^1.3.723:
|
||||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.742.tgz#7223215acbbd3a5284962ebcb6df85d88b95f200"
|
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.742.tgz#7223215acbbd3a5284962ebcb6df85d88b95f200"
|
||||||
integrity sha512-ihL14knI9FikJmH2XUIDdZFWJxvr14rPSdOhJ7PpS27xbz8qmaRwCwyg/bmFwjWKmWK9QyamiCZVCvXm5CH//Q==
|
integrity sha512-ihL14knI9FikJmH2XUIDdZFWJxvr14rPSdOhJ7PpS27xbz8qmaRwCwyg/bmFwjWKmWK9QyamiCZVCvXm5CH//Q==
|
||||||
|
|
||||||
element-plus@^1.0.2-beta.45:
|
element-plus@^1.0.2-beta.46:
|
||||||
version "1.0.2-beta.45"
|
version "1.0.2-beta.46"
|
||||||
resolved "https://registry.yarnpkg.com/element-plus/-/element-plus-1.0.2-beta.45.tgz#d7d84d284ead4f9de5aa7289b9a2af4b7f109a1e"
|
resolved "https://registry.yarnpkg.com/element-plus/-/element-plus-1.0.2-beta.46.tgz#2423dcc56ce4285d7f2365ebd5622b8b3c7d053b"
|
||||||
integrity sha512-F5U+fx3Lg7fvUPVSxrDQ02HKQbD9Az0fd7SYoqUOZhTuC9PPYlLezs7Pzpme0893cki18Dh7BS1mBcWcUg9ZWQ==
|
integrity sha512-GevU3xNiIp+p9ZGnGRtFaJPnofsMXKwqV+cTXC266vUWw08Hbt1ronTsss/eJJ1OIHLoaFq4febv1MMTBSSjlQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@popperjs/core" "^2.4.4"
|
"@popperjs/core" "^2.4.4"
|
||||||
"@types/lodash" "^4.14.161"
|
"@types/lodash" "^4.14.161"
|
||||||
|
@ -2327,13 +2332,13 @@ eslint-visitor-keys@^2.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
|
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
|
||||||
integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
|
integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
|
||||||
|
|
||||||
eslint@^7.27.0:
|
eslint@^7.28.0:
|
||||||
version "7.27.0"
|
version "7.28.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.27.0.tgz#665a1506d8f95655c9274d84bd78f7166b07e9c7"
|
resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.28.0.tgz#435aa17a0b82c13bb2be9d51408b617e49c1e820"
|
||||||
integrity sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==
|
integrity sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/code-frame" "7.12.11"
|
"@babel/code-frame" "7.12.11"
|
||||||
"@eslint/eslintrc" "^0.4.1"
|
"@eslint/eslintrc" "^0.4.2"
|
||||||
ajv "^6.10.0"
|
ajv "^6.10.0"
|
||||||
chalk "^4.0.0"
|
chalk "^4.0.0"
|
||||||
cross-spawn "^7.0.2"
|
cross-spawn "^7.0.2"
|
||||||
|
@ -2350,7 +2355,7 @@ eslint@^7.27.0:
|
||||||
fast-deep-equal "^3.1.3"
|
fast-deep-equal "^3.1.3"
|
||||||
file-entry-cache "^6.0.1"
|
file-entry-cache "^6.0.1"
|
||||||
functional-red-black-tree "^1.0.1"
|
functional-red-black-tree "^1.0.1"
|
||||||
glob-parent "^5.0.0"
|
glob-parent "^5.1.2"
|
||||||
globals "^13.6.0"
|
globals "^13.6.0"
|
||||||
ignore "^4.0.6"
|
ignore "^4.0.6"
|
||||||
import-fresh "^3.0.0"
|
import-fresh "^3.0.0"
|
||||||
|
@ -2821,7 +2826,7 @@ git-raw-commits@^2.0.0:
|
||||||
split2 "^3.0.0"
|
split2 "^3.0.0"
|
||||||
through2 "^4.0.0"
|
through2 "^4.0.0"
|
||||||
|
|
||||||
glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0:
|
glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.0:
|
||||||
version "5.1.2"
|
version "5.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
|
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
|
||||||
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
|
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
|
||||||
|
@ -2900,14 +2905,7 @@ globals@^11.1.0:
|
||||||
resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
|
resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
|
||||||
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
|
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
|
||||||
|
|
||||||
globals@^12.1.0:
|
globals@^13.6.0, globals@^13.9.0:
|
||||||
version "12.4.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8"
|
|
||||||
integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==
|
|
||||||
dependencies:
|
|
||||||
type-fest "^0.8.1"
|
|
||||||
|
|
||||||
globals@^13.6.0:
|
|
||||||
version "13.9.0"
|
version "13.9.0"
|
||||||
resolved "https://registry.yarnpkg.com/globals/-/globals-13.9.0.tgz#4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb"
|
resolved "https://registry.yarnpkg.com/globals/-/globals-13.9.0.tgz#4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb"
|
||||||
integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==
|
integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==
|
||||||
|
@ -3520,7 +3518,7 @@ isexe@^2.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
|
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
|
||||||
integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
|
integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
|
||||||
|
|
||||||
jiti@^1.9.2:
|
jiti@^1.10.1:
|
||||||
version "1.10.1"
|
version "1.10.1"
|
||||||
resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.10.1.tgz#bc2a175b9435274dc8659d3d9a121a91c6b3a1af"
|
resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.10.1.tgz#bc2a175b9435274dc8659d3d9a121a91c6b3a1af"
|
||||||
integrity sha512-qux9juDtAC8HlZxAk/fku73ak4TWNLigRFTNzFShE/kw4bXVFsVu538vLXAxvNyPszXgpX4YxkXfwTYEi+zf5A==
|
integrity sha512-qux9juDtAC8HlZxAk/fku73ak4TWNLigRFTNzFShE/kw4bXVFsVu538vLXAxvNyPszXgpX4YxkXfwTYEi+zf5A==
|
||||||
|
@ -4749,10 +4747,10 @@ prettier@^1.16.4, prettier@^1.18.2:
|
||||||
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb"
|
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb"
|
||||||
integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==
|
integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==
|
||||||
|
|
||||||
prettier@^2.3.0:
|
prettier@^2.3.1:
|
||||||
version "2.3.0"
|
version "2.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18"
|
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.1.tgz#76903c3f8c4449bc9ac597acefa24dc5ad4cbea6"
|
||||||
integrity sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==
|
integrity sha512-p+vNbgpLjif/+D+DwAZAbndtRrR0md0MwfmOVN9N+2RgyACMT+7tfaRnT+WDPkqnuVwleyuBIG2XBxKDme3hPA==
|
||||||
|
|
||||||
pretty-quick@^3.1.0:
|
pretty-quick@^3.1.0:
|
||||||
version "3.1.0"
|
version "3.1.0"
|
||||||
|
@ -5250,10 +5248,10 @@ safe-buffer@~5.2.0:
|
||||||
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
||||||
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
|
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
|
||||||
|
|
||||||
sass@1.34.0:
|
sass@1.34.1:
|
||||||
version "1.34.0"
|
version "1.34.1"
|
||||||
resolved "https://registry.yarnpkg.com/sass/-/sass-1.34.0.tgz#e46d5932d8b0ecc4feb846d861f26a578f7f7172"
|
resolved "https://registry.yarnpkg.com/sass/-/sass-1.34.1.tgz#30f45c606c483d47b634f1e7371e13ff773c96ef"
|
||||||
integrity sha512-rHEN0BscqjUYuomUEaqq3BMgsXqQfkcMVR7UhscsAVub0/spUrZGBMxQXFS2kfiDsPLZw5yuU9iJEFNC2x38Qw==
|
integrity sha512-scLA7EIZM+MmYlej6sdVr0HRbZX5caX5ofDT9asWnUJj21oqgsC+1LuNfm0eg+vM0fCTZHhwImTiCU0sx9h9CQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
chokidar ">=3.0.0 <4.0.0"
|
chokidar ">=3.0.0 <4.0.0"
|
||||||
|
|
||||||
|
@ -6197,10 +6195,10 @@ validate-npm-package-license@^3.0.1:
|
||||||
spdx-correct "^3.0.0"
|
spdx-correct "^3.0.0"
|
||||||
spdx-expression-parse "^3.0.0"
|
spdx-expression-parse "^3.0.0"
|
||||||
|
|
||||||
vant@^3.0.17:
|
vant@^3.0.18:
|
||||||
version "3.0.17"
|
version "3.0.18"
|
||||||
resolved "https://registry.yarnpkg.com/vant/-/vant-3.0.17.tgz#c8466a1fe24966dd67aff4fbff7ecdd43129e7bc"
|
resolved "https://registry.yarnpkg.com/vant/-/vant-3.0.18.tgz#5fbce67b22d86455a9dffb9dc66af8e43170d818"
|
||||||
integrity sha512-KhNhQhej2sXu1Juu2Nu/Kvetx9k8SCTIfVJD9RC4ZLBCyHi8rOTpMk8N/6unPShC6ZEPNbPa/F4x2d8zvve05A==
|
integrity sha512-4DsUaCx1XH+NAQGQ2VCm1WsP4O0VhUoh7CDKTXLZuYwwyXNu6+Zv2HrdQzDsnimETTtd1Iff6J3svvrPS86d/A==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@vant/icons" "^1.6.0"
|
"@vant/icons" "^1.6.0"
|
||||||
"@vant/lazyload" "^1.2.0"
|
"@vant/lazyload" "^1.2.0"
|
||||||
|
@ -6306,20 +6304,20 @@ vite-plugin-style-import@^0.10.1:
|
||||||
es-module-lexer "^0.4.1"
|
es-module-lexer "^0.4.1"
|
||||||
magic-string "^0.25.7"
|
magic-string "^0.25.7"
|
||||||
|
|
||||||
vite-plugin-windicss@^0.16.7:
|
vite-plugin-windicss@^1.0.1:
|
||||||
version "0.16.7"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/vite-plugin-windicss/-/vite-plugin-windicss-0.16.7.tgz#5e6b849a607139ce769f7a757cc3b56b9d5349df"
|
resolved "https://registry.yarnpkg.com/vite-plugin-windicss/-/vite-plugin-windicss-1.0.1.tgz#6e455228b6c1cb7ad52ed8fb9408b39888d572c0"
|
||||||
integrity sha512-fNBLO2EBdQsJNU3IyehSmqPdrHc6Ve+hPYDaf5SrW8nGd9Wbd8ZVh6cX/1blRcjMw0qOjgcx7GM8pRWBjhzt3Q==
|
integrity sha512-+6iFKUC00G9xkR967xqbbAquaWAmgYT1rlBP7Bp6XCd9ire3b7tJTETtwSPAPAIp38OA/Xbp1MSaHhbl2LRxJg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@windicss/plugin-utils" "0.16.7"
|
"@windicss/plugin-utils" "1.0.1"
|
||||||
chalk "^4.1.1"
|
chalk "^4.1.1"
|
||||||
debug "^4.3.2"
|
debug "^4.3.2"
|
||||||
windicss "^3.0.12"
|
windicss "^3.1.0"
|
||||||
|
|
||||||
vite@2.3.5:
|
vite@2.3.6:
|
||||||
version "2.3.5"
|
version "2.3.6"
|
||||||
resolved "https://registry.yarnpkg.com/vite/-/vite-2.3.5.tgz#0f5e750317e6f00e5343dd8272f64c2261f026b3"
|
resolved "https://registry.yarnpkg.com/vite/-/vite-2.3.6.tgz#1f7cfde88a51a802d69000c7bac85d481c2e871c"
|
||||||
integrity sha512-Jh3uySLlofx+t+uqznnzJFTNgeqYQLhR6xMx61VYN5KTlVirJXBPkFW2+aigHN6d1mOo6rM7DWnU6gjnudVozw==
|
integrity sha512-fsEpNKDHgh3Sn66JH06ZnUBnIgUVUtw6ucDhlOj1CEqxIkymU25yv1/kWDPlIjyYHnalr0cN6V+zzUJ+fmWHYw==
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild "^0.12.5"
|
esbuild "^0.12.5"
|
||||||
postcss "^8.2.10"
|
postcss "^8.2.10"
|
||||||
|
@ -6570,10 +6568,10 @@ widest-line@^2.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
string-width "^2.1.1"
|
string-width "^2.1.1"
|
||||||
|
|
||||||
windicss@^3.0.12:
|
windicss@^3.1.0, windicss@^3.1.1:
|
||||||
version "3.0.12"
|
version "3.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/windicss/-/windicss-3.0.12.tgz#4354aaa48faaac6fd02f3119a62587da2c46b018"
|
resolved "https://registry.yarnpkg.com/windicss/-/windicss-3.1.1.tgz#f879661df4f3db92cc45c6214779f6c5efa4f95c"
|
||||||
integrity sha512-pDxtFLN0xmL7bnGtnEfu9z7B5279UM2EP8wWlPH+FYb5gjHyONxRtyWtR5QIn1FRx6h1UXpm+I19GgTx5Y4TyA==
|
integrity sha512-vLtydYOqqLwb3Jg02QYqCnna1jONLt6GuDyAtRokQY81uA8BiOyN2y3ED9QGX28CIL5Zi7bpnkBL1f1g4CHuXQ==
|
||||||
|
|
||||||
with@^7.0.0:
|
with@^7.0.0:
|
||||||
version "7.0.2"
|
version "7.0.2"
|
||||||
|
|
Loading…
Reference in New Issue