refactor: lodash 使用改为按需引入

main
wu.jian2 2 years ago
parent 513ad46995
commit 69a51c2353

@ -1,6 +1,6 @@
{
"name": "@gcpaas/data-room-ui",
"version": "1.0.1-2023080902-Alpha",
"version": "1.0.1-2023081002-Alpha",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@ -3397,27 +3397,6 @@
"whatwg-fetch": "^3.6.2"
},
"dependencies": {
"@vue/vue-loader-v15": {
"version": "npm:vue-loader@15.10.1",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz",
"integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==",
"dev": true,
"requires": {
"@vue/component-compiler-utils": "^3.1.0",
"hash-sum": "^1.0.2",
"loader-utils": "^1.1.0",
"vue-hot-reload-api": "^2.3.0",
"vue-style-loader": "^4.1.0"
},
"dependencies": {
"hash-sum": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
"integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
"dev": true
}
}
},
"acorn-walk": {
"version": "8.2.0",
"resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz",
@ -3489,26 +3468,6 @@
"tapable": "^2.0.0"
}
},
"json5": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
"dev": true,
"requires": {
"minimist": "^1.2.0"
}
},
"loader-utils": {
"version": "1.4.2",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
"dev": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^1.0.1"
}
},
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@ -3726,6 +3685,47 @@
"lodash": "^4.17.4"
}
},
"@vue/vue-loader-v15": {
"version": "npm:vue-loader@15.10.1",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz",
"integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==",
"dev": true,
"requires": {
"@vue/component-compiler-utils": "^3.1.0",
"hash-sum": "^1.0.2",
"loader-utils": "^1.1.0",
"vue-hot-reload-api": "^2.3.0",
"vue-style-loader": "^4.1.0"
},
"dependencies": {
"hash-sum": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
"integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
"dev": true
},
"json5": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
"dev": true,
"requires": {
"minimist": "^1.2.0"
}
},
"loader-utils": {
"version": "1.4.2",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
"dev": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^1.0.1"
}
}
}
},
"@vue/vue2-jest": {
"version": "27.0.0",
"resolved": "https://registry.npmjs.org/@vue/vue2-jest/-/vue2-jest-27.0.0.tgz",
@ -4993,6 +4993,7 @@
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
"integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==",
"dev": true,
"requires": {
"babel-runtime": "^6.26.0",
"core-js": "^2.5.0",
@ -5002,12 +5003,14 @@
"core-js": {
"version": "2.6.12",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
"dev": true
},
"regenerator-runtime": {
"version": "0.10.5",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
"integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w=="
"integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w==",
"dev": true
}
}
},
@ -5794,6 +5797,7 @@
"version": "2.0.11",
"resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz",
"integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==",
"dev": true,
"requires": {
"good-listener": "^1.2.2",
"select": "^1.1.2",
@ -7333,7 +7337,8 @@
"delegate": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==",
"dev": true
},
"delegates": {
"version": "1.0.0",
@ -9604,6 +9609,7 @@
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
"integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==",
"dev": true,
"requires": {
"delegate": "^3.1.2"
}
@ -10507,6 +10513,7 @@
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/increase-memory-limit/-/increase-memory-limit-1.0.7.tgz",
"integrity": "sha512-ozyn+HHAPD9VxMT1U50A7G8XXlktUWhnnEDYSeDYnQjKsNrBWHqq6XfEA0uhMdDPD+q/7rXWlzF1CbXX/c1LiQ==",
"dev": true,
"requires": {
"glob": "^7.1.1"
}
@ -17329,7 +17336,8 @@
"select": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
"integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA=="
"integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==",
"dev": true
},
"select-hose": {
"version": "2.0.0",
@ -19007,7 +19015,8 @@
"tiny-emitter": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==",
"dev": true
},
"tiny-sass-compiler": {
"version": "0.12.2",
@ -19775,7 +19784,8 @@
"vue": {
"version": "2.6.10",
"resolved": "https://registry.npmjs.org/vue/-/vue-2.6.10.tgz",
"integrity": "sha512-ImThpeNU9HbdZL3utgMCq0oiMzAkt1mcgy3/E6zWC/G6AaQoeuFdsl9nDhTDU3X1R6FK7nsIUuRACVcjI+A2GQ=="
"integrity": "sha512-ImThpeNU9HbdZL3utgMCq0oiMzAkt1mcgy3/E6zWC/G6AaQoeuFdsl9nDhTDU3X1R6FK7nsIUuRACVcjI+A2GQ==",
"dev": true
},
"vue-codemirror": {
"version": "4.0.6",
@ -19789,7 +19799,8 @@
"vue-contextmenujs": {
"version": "1.4.9",
"resolved": "https://registry.npmjs.org/vue-contextmenujs/-/vue-contextmenujs-1.4.9.tgz",
"integrity": "sha512-Z3x3VBrwTwz7ow4YhbjMBPl4zz3uiwhyRIffQ/ZJl+A1Vg8B7e9bVOe2FNGqro+Opyhdf84enx4EgZNsCoPWZA=="
"integrity": "sha512-Z3x3VBrwTwz7ow4YhbjMBPl4zz3uiwhyRIffQ/ZJl+A1Vg8B7e9bVOe2FNGqro+Opyhdf84enx4EgZNsCoPWZA==",
"dev": true
},
"vue-draggable-resizable-gorkys": {
"version": "2.4.8",
@ -19905,6 +19916,7 @@
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/vue-json-editor/-/vue-json-editor-1.4.3.tgz",
"integrity": "sha512-st9HdXBgCnyEmmfWrZQiKzp4KuYXzmYVUNDn5h6Fa18MrrGS1amnyUFyv7hQFsNBDW27B7BKkdGOqszYT1srAg==",
"dev": true,
"requires": {
"vue": "^2.2.6"
}
@ -19913,6 +19925,7 @@
"version": "2.2.22",
"resolved": "https://registry.npmjs.org/vue-json-viewer/-/vue-json-viewer-2.2.22.tgz",
"integrity": "sha512-3oPH5BxoUWva/qp7wNJj+15FBXyi9Yu5VDW4mCWivjHR1pUpMv34fjqqxML7jh2uOqm1S/3Xks5nQ5JjC5+OWw==",
"dev": true,
"requires": {
"clipboard": "^2.0.4"
}
@ -19987,7 +20000,8 @@
"vue-sketch-ruler": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/vue-sketch-ruler/-/vue-sketch-ruler-1.0.3.tgz",
"integrity": "sha512-WfCNXJWn7gdST870nkEixR9JiZqGFCuW/Tuld2EQDYHTleDKPz2A45yTVqrF3MuRLelLkoqtz3+8ZfBhQ7sHGw=="
"integrity": "sha512-WfCNXJWn7gdST870nkEixR9JiZqGFCuW/Tuld2EQDYHTleDKPz2A45yTVqrF3MuRLelLkoqtz3+8ZfBhQ7sHGw==",
"dev": true
},
"vue-style-loader": {
"version": "4.1.3",
@ -20059,6 +20073,7 @@
"version": "2.24.3",
"resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.3.tgz",
"integrity": "sha512-6/HDXi92GzB+Hcs9fC6PAAozK1RLt1ewPTLjK0anTYguXLAeySDmcnqE8IC0xa7shvSzRjQXq3/+dsZ7ETGF3g==",
"dev": true,
"requires": {
"sortablejs": "1.10.2"
},
@ -20066,7 +20081,8 @@
"sortablejs": {
"version": "1.10.2",
"resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz",
"integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A=="
"integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A==",
"dev": true
}
}
},

@ -1,6 +1,6 @@
import { commonConfig, displayOption } from 'data-room-ui/js/config'
import Icon from 'data-room-ui/assets/images/bigScreenIcon/export'
import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export const settingConfig = {
padding: [30, 30, 50, 80],
@ -99,9 +99,9 @@ export const mapData = {
y: 0,
type: 'map',
option: {
..._.cloneDeep(settingConfig)
...cloneDeep(settingConfig)
},
setting: undefined, // 右侧面板自定义配置
dataHandler: {}, // 数据自定义处理js脚本
..._.cloneDeep(dataConfig)
...cloneDeep(dataConfig)
}

@ -32,7 +32,7 @@
import commonMixins from 'data-room-ui/js/mixins/commonMixins'
import paramsMixins from 'data-room-ui/js/mixins/paramsMixins'
import linkageMixins from 'data-room-ui/js/mixins/linkageMixins'
import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'TableChart',
mixins: [paramsMixins, commonMixins, linkageMixins],
@ -131,7 +131,7 @@ export default {
this.linkage(row)
},
changeStyle (oldConfig) {
const config = _.cloneDeep(oldConfig)
const config = cloneDeep(oldConfig)
if (this.customTheme === 'custom') {
this.headerCellStyleToObj()
this.cellStyleToObj()

@ -346,7 +346,9 @@
</template>
<script>
import { pageMixins } from 'data-room-ui/js/mixins/page'
import _ from 'lodash'
// import _ from 'lodash'
import isEmpty from 'lodash/isEmpty'
import cloneDeep from 'lodash/cloneDeep'
import innerRemoteComponents, { getRemoteComponents, getRemoteComponentConfig } from 'data-room-ui/RemoteComponents/remoteComponentsList'
import { getBizComponentPage } from 'data-room-ui/js/api/bigScreenApi'
export default {
@ -398,7 +400,7 @@ export default {
window.open(href, '_blank')
},
chooseComponent (component) {
this.focus = _.cloneDeep(component)
this.focus = cloneDeep(component)
},
close () { },
init () {
@ -418,13 +420,13 @@ export default {
this.$emit('setComponent', this.focus)
}
} else if (['remote'].includes(this.activeName)) {
if (_.isEmpty(this.focus)) {
if (isEmpty(this.focus)) {
return
}
this.$emit('setRemoteComponent', this.focus)
} if (['bizComponent'].includes(this.activeName)) {
let config = {}
if (_.isEmpty(this.focus)) {
if (isEmpty(this.focus)) {
return
}
config.code = this.focus.code

@ -146,9 +146,8 @@
</transition>
</template>
<script>
import cloneDeep from 'lodash/cloneDeep'
import 'data-room-ui/assets/symbols/bigScreenIcon/iconfont.js'
import _ from 'lodash'
import basicComponents from 'data-room-ui/js/config/basicComponentsConfig'
import g2PlotComponents, { getCustomPlots } from '../G2Plots/plotList'
import borderComponents from 'data-room-ui/js/config/borderComponentsConfig'
@ -286,7 +285,7 @@ export default {
})
},
onClone (e) {
return _.cloneDeep(e)
return cloneDeep(e)
},
onStart (e) {
// this.$emit('onStart', e)

@ -188,7 +188,8 @@ import ColorPicker from 'data-room-ui/ColorPicker/index.vue'
import BgImg from './BgImgDialog.vue'
import { mapState, mapMutations } from 'vuex'
import { getThemeConfig } from 'data-room-ui/js/api/bigScreenApi'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { G2 } from '@antv/g2plot'
export default {
name: 'OverallSetting',
@ -418,7 +419,7 @@ export default {
if (!['dark', 'light', 'auto'].includes(themeName)) {
getThemeConfig().then(res => {
this.form.themeJson = res
this.changePageConfig(_.cloneDeep(this.form))
this.changePageConfig(cloneDeep(this.form))
//
const { registerTheme } = G2
registerTheme(themeName, { ...res.chart })
@ -433,7 +434,7 @@ export default {
//
changeChart (themeName) {
//
const newChartList = _.cloneDeep(this.pageInfo.chartList)
const newChartList = cloneDeep(this.pageInfo.chartList)
const chartList = newChartList.map(chart => {
chart.option.theme = themeName
chart.key = new Date().getTime()

@ -97,7 +97,9 @@ import { toJpeg, toPng } from 'html-to-image'
import { mapMutations, mapActions, mapState } from 'vuex'
import { saveScreen } from 'data-room-ui/js/api/bigScreenApi'
import ChooseTemplateDialog from 'data-room-ui/BigScreenManagement/ChooseTemplateDialog.vue'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import uniqBy from 'lodash/uniqBy'
import { stringifyObjectFunctions } from 'data-room-ui/js/utils/evalFunctions'
import AssignDialog from 'data-room-ui/BigScreenDesign/AssignDialog/index.vue'
import HistoryList from 'data-room-ui/BigScreenDesign/HistoryList/index.vue'
@ -207,7 +209,7 @@ export default {
saveTimeLine: 'bigScreen/saveTimeLine'
}),
setAlign (command) {
const pageInfo = _.cloneDeep(this.pageInfo)
const pageInfo = cloneDeep(this.pageInfo)
//
let activeChartList = pageInfo.chartList.filter((chart) => {
return this.activeCodes.some(code => (code === chart.code))
@ -296,7 +298,7 @@ export default {
break
}
pageInfo.chartList = [...pageInfo.chartList, ...activeChartList]
pageInfo.chartList = _.uniqBy(pageInfo.chartList, 'code')
pageInfo.chartList = uniqBy(pageInfo.chartList, 'code')
this.changePageInfo(pageInfo)
},
compare (property) {
@ -337,7 +339,7 @@ export default {
},
//
save (loadingType = 'saveLoading', hasPageTemplateId = false) {
const pageInfo = _.cloneDeep(this.handleSaveData())
const pageInfo = cloneDeep(this.handleSaveData())
//
this[loadingType] = true
return new Promise((resolve, reject) => {
@ -410,8 +412,8 @@ export default {
},
//
handleSaveData () {
const pageInfo = _.cloneDeep(this.pageInfo)
const chartList = _.cloneDeep(this.pageInfo.chartList)
const pageInfo = cloneDeep(this.pageInfo)
const chartList = cloneDeep(this.pageInfo.chartList)
pageInfo.pageConfig.cacheDataSets =
pageInfo.pageConfig.cacheDataSets?.map((cache) => ({
@ -427,7 +429,7 @@ export default {
}
return chart
})
return _.cloneDeep({
return cloneDeep({
...this.pageInfo,
chartList: newChartList
})

@ -58,7 +58,8 @@
</template>
<script>
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { mapState } from 'vuex'
export default {
name: 'ComponentBinding',
@ -106,7 +107,7 @@ export default {
* @description: 获取除自己之外的所有组件
*/
allComponentsExpectSelf (code) {
let layouts = _.cloneDeep(this.chartList)
let layouts = cloneDeep(this.chartList)
const tabComponents = []
layouts?.map((ly) => {
if (ly.type === 'Tabs') {

@ -87,7 +87,7 @@
</template>
<script>
import RelationSetting from './RelationSetting.vue'
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { mapState } from 'vuex'
export default {
name: 'ComponentRelation',

@ -565,7 +565,9 @@
</template>
<script>
import ElDragSelect from './ElDragSelect.vue'
import { isEmpty, cloneDeep } from 'lodash'
// import { isEmpty, cloneDeep } from 'lodash'
import isEmpty from 'lodash/isEmpty'
import cloneDeep from 'lodash/cloneDeep'
import ComponentRelation from 'data-room-ui/BigScreenDesign/RightSetting/ComponentRelation/index.vue'
import ComponentBinding from 'data-room-ui/BigScreenDesign/RightSetting/ComponentBinding/index.vue'
import dataSetSelect from 'data-room-ui/DataSetSetting/index.vue'

@ -39,7 +39,8 @@
</template>
<script>
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'TextGradient',
model: {
@ -63,7 +64,7 @@ export default {
},
computed: {
newColors () {
return _.cloneDeep(this.colors)
return cloneDeep(this.colors)
}
},
watch: {

@ -58,7 +58,9 @@ import rightSetting from 'data-room-ui/js/utils/rightSettingImport'
import CustomComponent from './G2CustomSetting.vue'
import Svgs from 'data-room-ui/Svgs/setting.vue'
import { mapState, mapMutations } from 'vuex'
import _ from 'lodash'
// import _ from 'lodash'
import isEqual from 'lodash/isEqual'
import cloneDeep from 'lodash/cloneDeep'
//
const components = {}
for (const key in rightSetting) {
@ -94,23 +96,23 @@ export default {
},
configDataSource () {
return {
dataSource: _.cloneDeep(this.config.dataSource),
linkage: _.cloneDeep(this.config?.linkage),
dataSource: cloneDeep(this.config.dataSource),
linkage: cloneDeep(this.config?.linkage),
dataHandler: this.config?.dataHandler,
dataSourceSetting: _.cloneDeep(this.config?.setting?.filter(item => item.tabName === 'data')) || []
dataSourceSetting: cloneDeep(this.config?.setting?.filter(item => item.tabName === 'data')) || []
}
},
configStyle () {
return {
showTitle: this.config.showTitle,
title: _.cloneDeep(this.config?.title),
title: cloneDeep(this.config?.title),
w: this.config?.w,
h: this.config?.h,
x: this.config?.x,
y: this.config?.y,
z: this.config?.z,
setting: _.cloneDeep(this.config?.setting),
customize: _.cloneDeep(this.config?.customize),
setting: cloneDeep(this.config?.setting),
customize: cloneDeep(this.config?.customize),
url: this.config?.url,
dateFormat: this.config?.dateFormat,
endTime: this.config?.endTime
@ -147,7 +149,7 @@ export default {
}, delay)
},
handleConfigChange (val, oldValue, type) {
if (!_.isEqual(val, oldValue)) {
if (!isEqual(val, oldValue)) {
if (type === 'configStyle') {
if (this.config.type === 'iframeChart') {
this.debounce(500, { ...val, type: this.config.type, code: this.config.code })

@ -60,7 +60,7 @@
<script>
import SketchRule from 'vue-sketch-ruler'
import { mapState, mapMutations } from 'vuex'
import { throttle } from 'lodash'
import throttle from 'lodash/throttle'
export default {
components: {
SketchRule

@ -148,7 +148,8 @@
</template>
<script>
import { pageMixins } from 'data-room-ui/js/mixins/page'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'SourceDialog',
mixins: [pageMixins],
@ -176,7 +177,7 @@ export default {
window.open(href, '_blank')
},
chooseImg (img) {
this.focus = _.cloneDeep(img)
this.focus = cloneDeep(img)
},
close () { },
init () {

@ -130,7 +130,7 @@ import { G2 } from '@antv/g2plot'
import multipleSelectMixin from 'data-room-ui/js/mixins/multipleSelectMixin'
import { getThemeConfig, getScreenInfo } from 'data-room-ui/js/api/bigScreenApi'
import MouseSelect from './MouseSelect/index.vue'
import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { randomString } from '../js/utils'
import { isFirefox } from 'data-room-ui/js/utils/userAgent'
import { handleResData } from 'data-room-ui/js/store/actions.js'
@ -343,11 +343,11 @@ export default {
y: 0,
type: 'picture',
option: {
..._.cloneDeep(settingConfig)
...cloneDeep(settingConfig)
},
setting: {}, //
dataHandler: {}, // js
..._.cloneDeep(dataConfig),
...cloneDeep(dataConfig),
customize: {
url: val.url,
radius: 0,
@ -409,10 +409,10 @@ export default {
if (config.type === 'map' || config.type === 'video') {
config.key = new Date().getTime()
}
this.changeChartConfig(_.cloneDeep(config))
this.changeChartConfig(cloneDeep(config))
this.$refs.Render?.$refs['RenderCard' + config.code][0]?.$refs[
config.code
]?.changeStyle(_.cloneDeep(config))
]?.changeStyle(cloneDeep(config))
},
//
updateDataSetting (config) {

@ -137,7 +137,7 @@
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'CatalogEditForm',
components: {

@ -114,7 +114,7 @@
</div>
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
components: { },
props: {

@ -238,7 +238,8 @@ import pageMenuDialog from './pageMenuDialog.vue'
import BigScreenRun from 'data-room-ui/BigScreenRun/index.vue'
import Icon from 'data-room-ui/assets/images/pageIcon/export'
import { getPageType } from './utils'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import IconSvg from 'data-room-ui/SvgIcon'
let dashBoardPageCode = null
export default {
@ -455,13 +456,13 @@ export default {
this.currentTreeNode = treeNode
//
if (treeNode.type === 'catalog') {
this.parentNode = _.cloneDeep(treeNode)
this.parentNode = cloneDeep(treeNode)
this.isCatalog = true
} else {
this.isCatalog = false
this.activePage = treeNode
//
this.parentNode = (!treeNode.parentCode || treeNode.parentCode === '0') ? { code: '0', name: '根目录' } : _.cloneDeep(nodeObj.parent.data)
this.parentNode = (!treeNode.parentCode || treeNode.parentCode === '0') ? { code: '0', name: '根目录' } : cloneDeep(nodeObj.parent.data)
}
this.catalogData.parentCode = this.parentNode.code
this.selectName = this.parentNode.name
@ -643,7 +644,7 @@ export default {
this.catalogData.id = nodeData.id
this.catalogData.code = nodeData.code
this.catalogData.orderNum = nodeData.orderNum
this.parentNode = (!nodeData.parentCode || nodeData.parentCode === '0') ? { code: '0', name: '根目录' } : _.cloneDeep(nodeObj.parent.data)
this.parentNode = (!nodeData.parentCode || nodeData.parentCode === '0') ? { code: '0', name: '根目录' } : cloneDeep(nodeObj.parent.data)
this.catalogData.parentCode = this.parentNode.code
this.selectName = this.parentNode.name
} else {

@ -14,7 +14,6 @@
</template>
<script>
import remoteVueLoader from 'remote-vue-loader'
import _ from 'lodash'
import { getBizComponentInfo } from 'data-room-ui/js/api/bigScreenApi'
import innerRemoteComponents, { getRemoteComponents } from 'data-room-ui/RemoteComponents/remoteComponentsList'
export default {

@ -139,7 +139,7 @@
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'CatalogEditForm',
components: {

@ -344,7 +344,6 @@ export default {
window.open(href, '_blank')
},
design (screen) {
console.log(222)
const path = this.catalogInfo === 'component' ? (window.BS_CONFIG?.routers?.designUrl || '/big-screen/design') : (window.BS_CONFIG?.routers?.bizComponentDesignUrl || 'big-screen-biz-component-design')
const { href } = this.$router.resolve({
path,

@ -232,7 +232,7 @@
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import LabelEdit from './LabelConfigEdit'
import LabelTypeEdit from './LabelTypeEdit.vue'
import { pageMixins } from 'data-room-ui/js/mixins/page'

@ -772,7 +772,8 @@ import { codemirror } from 'vue-codemirror'
import 'codemirror/mode/sql/sql.js'
import 'codemirror/theme/nord.css'
import 'codemirror/lib/codemirror.css'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { datasetMixins } from 'data-room-ui/js/mixins/datasetMixin'
export default {
name: 'CustomEditForm',
@ -918,7 +919,7 @@ export default {
this.dataForm.cacheCoherence = res.config.cacheCoherence
// 使
this.dataForm.name = this.datasetName
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
if (this.dataForm.typeId) {
this.$nextTick(() => {
try {
@ -975,14 +976,14 @@ export default {
* 取消编辑参数
*/
cancelParam () {
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
this.paramsVisible = false
},
/**
* 保存参数设置
*/
setParam () {
this.dataForm.paramsList = _.cloneDeep(this.paramsListCopy)
this.dataForm.paramsList = cloneDeep(this.paramsListCopy)
if (this.isTest) {
this.datasetTest()
}
@ -1124,8 +1125,8 @@ export default {
})
}
})
this.dataForm.paramsList = _.cloneDeep(params)
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.dataForm.paramsList = cloneDeep(params)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
if (this.dataForm.paramsList.length) {
this.paramsVisible = true
} else {
@ -1198,7 +1199,7 @@ export default {
item.sourceTable = this.tableNameList[0]
})
}
this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList)
this.structurePreviewListCopy = cloneDeep(this.structurePreviewList)
let paramsNameCheck = false
this.dataForm.paramsList.forEach(param => {
const checkList = this.structurePreviewList.filter(item => item.fieldName === param.name)

@ -672,7 +672,8 @@ import 'codemirror/mode/javascript/javascript'
import 'codemirror/lib/codemirror.css'
import 'codemirror/theme/nord.css'
import axiosFormatting from '../../js/utils/httpParamsFormatting'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'HttpEditForm',
components: {
@ -840,7 +841,7 @@ export default {
this.dataForm = { id, name, typeId, remark, datasetType, moduleCode, editable, sourceId, config: { ...config }, labelIds: this.dataForm.labelIds }
this.fieldDesc = fieldDesc
this.outputFieldList = fieldList
this.newParamsList = _.cloneDeep(paramsList)
this.newParamsList = cloneDeep(paramsList)
this.codemirrorOption.mode = this.dataForm.config.requestType === 'frontend' ? 'text/javascript' : 'text/x-groovy'
// this.replaceParams(paramsList)
this.scriptExecute(true)
@ -913,7 +914,7 @@ export default {
// header
addHeader () {
const header = { key: '', type: 'string', value: '', remark: '' }
this.dataForm.config.headers.push(_.cloneDeep(header))
this.dataForm.config.headers.push(cloneDeep(header))
},
// header
delHeader (index) {
@ -922,7 +923,7 @@ export default {
//
addParam () {
const param = { key: '', value: '', remark: '' }
this.dataForm.config.params.push(_.cloneDeep(param))
this.dataForm.config.params.push(cloneDeep(param))
},
//
delParam (index) {
@ -932,7 +933,6 @@ export default {
this.dataForm.config.paramsList = val
},
saveNewParams (val) {
console.log(val)
this.newParamsList = val
},
//
@ -997,7 +997,7 @@ export default {
//
async openParamsSetDialog (isUpdate) {
this.getPramsList()
const oldList = _.cloneDeep(this.dataForm.config.paramsList)
const oldList = cloneDeep(this.dataForm.config.paramsList)
this.newParamsList = this.compareParamsList(this.newParamsList, oldList)
await this.$nextTick()
this.$refs.paramsSettingDialog.open(isUpdate)
@ -1026,7 +1026,7 @@ export default {
})
}
})
this.dataForm.config.paramsList = _.cloneDeep(params)
this.dataForm.config.paramsList = cloneDeep(params)
},
//
compareParamsList (newList, oldList) {
@ -1102,7 +1102,6 @@ export default {
axiosFormatting({ ...this.dataForm.config, paramsList: this.newParamsList }).then((res) => {
this.dataPreviewList = res && Array.isArray(res) ? res : [{ ...res }]
//
console.log(res)
this.updateOoutputFieldList(this.dataPreviewList)
this.$message.success('解析并执行成功')
}).catch((e) => {

@ -130,9 +130,9 @@
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'HttpParamsSettingDialog.vue',
name: 'HttpParamsSettingDialog',
props: {
paramsList: {
type: Array,

@ -62,7 +62,7 @@
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'OutputFieldDialog',
props: {

@ -162,7 +162,7 @@
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
name: 'ParamsSettingDialog',
props: {

@ -344,7 +344,8 @@ import LabelSelect from 'data-room-ui/DataSetLabelManagement/src/LabelSelect.vue
import vueJsonEditor from 'vue-json-editor'
import vueJsonViewer from 'vue-json-viewer'
import { getCategoryTree, datasetAdd, datasetUpdate, getDataset, nameCheckRepeat } from 'data-room-ui/js/utils/datasetConfigService'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { datasetMixins } from 'data-room-ui/js/mixins/datasetMixin'
export default {
name: 'JsonEditForm',
@ -533,7 +534,7 @@ export default {
* 保存字段描述编辑
*/
setField () {
this.structurePreviewList = _.cloneDeep(this.structurePreviewListCopy)
this.structurePreviewList = cloneDeep(this.structurePreviewListCopy)
if (this.structurePreviewList.length) {
this.dataForm.fieldDesc = {}
this.structurePreviewList.forEach(key => {
@ -562,7 +563,7 @@ export default {
fieldDesc: ''
}
})
this.dataPreviewList = [_.cloneDeep(this.dataForm.json)]
this.dataPreviewList = [cloneDeep(this.dataForm.json)]
this.passTest = true
} else if (Object.prototype.toString.call(this.dataForm.json) === '[object Array]') {
//
@ -573,7 +574,7 @@ export default {
fieldDesc: ''
}
})
this.dataPreviewList = _.cloneDeep(this.dataForm.json)
this.dataPreviewList = cloneDeep(this.dataForm.json)
this.passTest = true
} else {
try {
@ -604,7 +605,7 @@ export default {
fieldDesc: ''
}
})
this.dataPreviewList = [_.cloneDeep(json)]
this.dataPreviewList = [cloneDeep(json)]
this.passTest = true
} else if (Object.prototype.toString.call(json) === '[object Array]') {
//
@ -615,7 +616,7 @@ export default {
fieldDesc: ''
}
})
this.dataPreviewList = _.cloneDeep(json)
this.dataPreviewList = cloneDeep(json)
this.passTest = true
} else {
try {
@ -647,7 +648,7 @@ export default {
if (this.passTest && !initAnalysis) {
this.$message.success('JSON解析通过')
}
this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList)
this.structurePreviewListCopy = cloneDeep(this.structurePreviewList)
},
/**
* 构建字段描述

@ -497,7 +497,8 @@ import {
getDataset, datasetUpdate, datasetAdd
} from 'data-room-ui/js/utils/datasetConfigService'
import { datasourceList, getSourceTable, getSourceView, getTableFieldList } from 'data-room-ui/js/utils/dataSourceService'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { datasetMixins } from 'data-room-ui/js/mixins/datasetMixin'
export default {
name: 'OriginalEditForm',
@ -646,7 +647,7 @@ export default {
this.dataForm.repeatStatus = res.config.repeatStatus
this.dataForm.fieldList = res.config.fieldList
this.dataForm.fieldDesc = res.config.fieldDesc
this.oldStructurePreviewList = _.cloneDeep(res.config.fieldList)
this.oldStructurePreviewList = cloneDeep(res.config.fieldList)
//
this.dataForm.fieldInfo = res.config.fieldInfo ? res.config.fieldInfo.split(',') : []
if (this.dataForm.typeId) {
@ -683,10 +684,9 @@ export default {
this.tableLoading = true
datasetExecuteTest(executeParams).then((data) => {
if (this.dataForm.fieldList == null) {
this.dataForm.fieldList = _.cloneDeep(data.structure)
this.dataForm.fieldList = cloneDeep(data.structure)
}
this.dataPreviewList = data.data.list
console.log(this.dataPreviewList)
this.totalCount = data.data.totalCount
this.tableLoading = false
}).catch(() => {
@ -823,7 +823,6 @@ export default {
*/
queryAllField () {
getTableFieldList(this.dataForm.sourceId, this.dataForm.tableName).then((data) => {
console.log('data', data)
const fieldDescMap = {}
this.fieldList = data.map(field => {
fieldDescMap[field.columnName] = field.columnComment
@ -923,7 +922,7 @@ export default {
})
}
this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList)
this.structurePreviewListCopy = cloneDeep(this.structurePreviewList)
this.totalCount = data.data.totalCount
this.currentCount = data.data.currentCount
this.tableLoading = false
@ -955,8 +954,8 @@ export default {
return data.name.indexOf(value) !== -1
},
setField () {
this.structurePreviewList = _.cloneDeep(this.structurePreviewListCopy)
this.oldStructurePreviewList = _.cloneDeep(this.structurePreviewListCopy)
this.structurePreviewList = cloneDeep(this.structurePreviewListCopy)
this.oldStructurePreviewList = cloneDeep(this.structurePreviewListCopy)
this.fieldsetVisible = false
}
}

@ -549,7 +549,8 @@ import { codemirror } from 'vue-codemirror'
import 'codemirror/mode/groovy/groovy'
import 'codemirror/lib/codemirror.css'
import 'codemirror/theme/nord.css'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { datasetMixins } from 'data-room-ui/js/mixins/datasetMixin'
export default {
name: 'ScriptEditForm',
@ -667,7 +668,7 @@ export default {
this.dataForm.fieldDesc = res.config.fieldDesc
this.dataForm.fieldList = res.config.fieldList
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
this.scriptExecute(true)
})
},
@ -776,7 +777,7 @@ export default {
if (this.structurePreviewList.length && this.dataForm.fieldDesc) {
this.buildFieldDesc()
}
this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList)
this.structurePreviewListCopy = cloneDeep(this.structurePreviewList)
this.saveLoading = false
this.passTest = true
}).catch((e) => {
@ -819,7 +820,7 @@ export default {
* 取消编辑参数
*/
cancelParam () {
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
this.paramsVisible = false
},
/**
@ -828,9 +829,9 @@ export default {
setParam () {
if (!this.isSet) {
this.scriptExecute()
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
} else {
this.dataForm.paramsList = _.cloneDeep(this.paramsListCopy)
this.dataForm.paramsList = cloneDeep(this.paramsListCopy)
}
this.paramsVisible = false
},

@ -592,7 +592,8 @@ import { codemirror } from 'vue-codemirror'
import 'codemirror/lib/codemirror.css'
import 'codemirror/theme/nord.css'
import 'codemirror/mode/sql/sql.js'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { datasetMixins } from 'data-room-ui/js/mixins/datasetMixin'
export default {
@ -735,7 +736,7 @@ export default {
this.dataForm.cacheCoherence = res.config.cacheCoherence
// 使
this.dataForm.name = this.datasetName
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
if (this.dataForm.typeId) {
this.$nextTick(() => {
try {
@ -792,14 +793,14 @@ export default {
* 取消编辑参数
*/
cancelParam () {
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
this.paramsVisible = false
},
/**
* 保存参数设置
*/
setParam () {
this.dataForm.paramsList = _.cloneDeep(this.paramsListCopy)
this.dataForm.paramsList = cloneDeep(this.paramsListCopy)
if (this.isTest) {
this.datasetTest()
}
@ -911,8 +912,8 @@ export default {
})
}
})
this.dataForm.paramsList = _.cloneDeep(params)
this.paramsListCopy = _.cloneDeep(this.dataForm.paramsList)
this.dataForm.paramsList = cloneDeep(params)
this.paramsListCopy = cloneDeep(this.dataForm.paramsList)
if (this.dataForm.paramsList.length) {
this.paramsVisible = true
} else {
@ -990,7 +991,7 @@ export default {
item.sourceTable = this.tableNameList[0]
})
}
this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList)
this.structurePreviewListCopy = cloneDeep(this.structurePreviewList)
let paramsNameCheck = false
this.dataForm.paramsList.forEach(param => {
const checkList = this.structurePreviewList.filter(item => item.fieldName === param.name)

@ -142,7 +142,8 @@ import '../style/index.scss'
import { sourceLinkTest, datasourcePage, sourceRemove, dataSourceCheck } from 'data-room-ui/js/utils/dataSourceService'
import setDatasource from './setDatasource.vue'
import checkDatasource from './checkDatasource.vue'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { pageMixins } from 'data-room-ui/js/mixins/page'
export default {
name: 'DataSource',
@ -277,7 +278,7 @@ export default {
if (row.editable == 1 && !this.appCode) return
this.$refs.setDatasource.setDatasourceVisible = true
this.$refs.setDatasource.title = '编辑编剧源'
this.$refs.setDatasource.init(_.cloneDeep(row))
this.$refs.setDatasource.init(cloneDeep(row))
},
handleDelete (row) {
// eslint-disable-next-line eqeqeq

@ -5,7 +5,8 @@
*/
import { dataConfig, settingConfig } from '../PlotRender/settingConfig'
import { mapData } from 'data-room-ui/BasicComponents/Map/settingConfig'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import sortList from './plotListSort'
// 遍历 当前文件夹下的所有文件,找到中文.js文件然后导出
const files = require.context('./', true, /[\u4e00-\u9fa5]+.js$/)
@ -42,12 +43,12 @@ function getPlotList (files) {
chartType: config.chartType,
option: {
...config.option,
..._.cloneDeep(settingConfig)
...cloneDeep(settingConfig)
},
setting: config.setting, // 右侧面板自定义配置
dataHandler: config.dataHandler, // 数据自定义处理js脚本
optionHandler: config.optionHandler, // 配置自定义处理js脚本
..._.cloneDeep(dataConfig)
...cloneDeep(dataConfig)
}
}
return plotList
@ -73,12 +74,12 @@ export function getCustomPlots () {
chartType: config.chartType,
option: {
...config.option,
..._.cloneDeep(settingConfig)
...cloneDeep(settingConfig)
},
setting: config.setting, // 右侧面板自定义配置
dataHandler: config.dataHandler, // 数据自定义处理js脚本
optionHandler: config.optionHandler, // 配置自定义处理js脚本
..._.cloneDeep(dataConfig)
...cloneDeep(dataConfig)
})
})
return list

@ -12,7 +12,8 @@
</template>
<script>
import 'insert-css'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import linkageMixins from 'data-room-ui/js/mixins/linkageMixins'
import commonMixins from 'data-room-ui/js/mixins/commonMixins'
import { mapState, mapMutations } from 'vuex'
@ -108,7 +109,7 @@ export default {
// eslint-disable-next-line no-unused-vars
this.chart.on('tooltip:change', (...args) => {
formData = {}
formData = _.cloneDeep(args[0].data.items[0].data)
formData = cloneDeep(args[0].data.items[0].data)
})
// eslint-disable-next-line no-unused-vars
this.chart.on('plot:click', (...args) => {
@ -125,7 +126,7 @@ export default {
optionField.forEach((field, index) => {
if (index === optionField.length - 1) {
//
if ((set.tabName === type && type === 'data' && set.value) || (set.tabName === type && type === 'custom')) {
if ((set.tabName === type && type === 'data' && set.value) || (set.tabName === type && type === 'custom')) {
option[field] = set.value
}
} else {

@ -17,7 +17,6 @@ import linkageMixins from 'data-room-ui/js/mixins/linkageMixins'
import commonMixins from 'data-room-ui/js/mixins/commonMixins'
import remoteVueLoader from 'remote-vue-loader'
import { mapMutations, mapState } from 'vuex'
import _ from 'lodash'
import innerRemoteComponents, { getRemoteComponents } from 'data-room-ui/RemoteComponents/remoteComponentsList'
import { getBizComponentInfo } from 'data-room-ui/js/api/bigScreenApi'
export default {

@ -1,6 +1,7 @@
// 得到用户自定义的远程组件列表
import { dataConfig, settingConfig } from './settingConfig'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
const files = require.context('./innerComponents/', true, /index.vue$/)
const innerRemoteComponents = []
@ -39,12 +40,12 @@ export function getRemoteComponents (comList) {
y: 0,
type: 'remoteComponent',
option: {
..._.cloneDeep(settingConfig),
...cloneDeep(settingConfig),
...config.option
},
// 右侧面板自定义配置
setting: config.setting,
..._.cloneDeep(dataConfig),
...cloneDeep(dataConfig),
// 自定义配置
customize: {
...config.customize,
@ -70,11 +71,11 @@ export function getRemoteComponentConfig (code, name) {
y: 0,
type: 'remoteComponent',
option: {
..._.cloneDeep(settingConfig)
...cloneDeep(settingConfig)
},
// 右侧面板自定义配置
setting: [],
..._.cloneDeep(dataConfig),
...cloneDeep(dataConfig),
// 自定义配置
customize: {
// 文件路径

@ -75,7 +75,8 @@
import { mapState, mapMutations } from 'vuex'
import RenderCard from './RenderCard.vue'
import Configuration from './Configuration.vue'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import vdr from 'vue-draggable-resizable-gorkys'
import 'vue-draggable-resizable-gorkys/dist/VueDraggableResizable.css'
import { randomString } from '../js/utils'
@ -247,7 +248,7 @@ export default {
})
if (chart.code === this.activeCode) {
this.changeActiveItemWH({
code:chart.code,
code: chart.code,
w: width,
h: height
})
@ -256,7 +257,7 @@ export default {
this.changeGridShow(false)
},
activated (chart) {
this.rawChart = _.cloneDeep(chart)
this.rawChart = cloneDeep(chart)
},
dragstop (left, top, chart) {
if (!this.freeze) {
@ -273,12 +274,12 @@ export default {
})
if (chart.code === this.activeCode) {
this.changeActiveItemWH({
code:chart.code,
code: chart.code,
x: left,
y: top
})
}
this.rawChart = _.cloneDeep(chart)
this.rawChart = cloneDeep(chart)
}
} else {
const index = this.chartList.findIndex(

@ -121,7 +121,7 @@
</div>
</template>
<script>
import { cloneDeep } from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default {
components: {},
data () {

@ -4,7 +4,8 @@
* @Author: xing.heng
*/
import { dataConfig, settingConfig } from './settingConfig'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import icon from './export'
const iconList = icon.getIconList()
const svgList = getSvgList(iconList)
@ -25,11 +26,11 @@ function getSvgList (iconList) {
type: 'svgs',
chartType: 'svg',
option: {
..._.cloneDeep(settingConfig)
...cloneDeep(settingConfig)
},
setting: {}, // 右侧面板自定义配置
dataHandler: {}, // 数据自定义处理js脚本
..._.cloneDeep(dataConfig)
...cloneDeep(dataConfig)
}
})
return svgList

@ -6,7 +6,8 @@
* @LastEditTime: 2023-06-01 15:55:48
*/
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import getComponentConfig from 'data-room-ui/js/utils/getComponentConfig'
// 批量引入配置文件
import { setModules, dataModules } from 'data-room-ui/js/utils/configImport'
@ -38,8 +39,8 @@ basicConfigList = basicConfigList.map((item) => {
export function basicComponentsConfig (item) {
return {
...item,
option: _.cloneDeep(setModules[item.type]),
..._.cloneDeep(dataModules[item.type])
option: cloneDeep(setModules[item.type]),
...cloneDeep(dataModules[item.type])
}
}
export default basicConfigList

@ -1,4 +1,5 @@
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import getComponentConfig from 'data-room-ui/js/utils/getBorderComponentsConfig'
// 批量引入配置文件
import { setModules, dataModules } from 'data-room-ui/js/utils/configImport'
@ -29,11 +30,11 @@ basicConfigList = basicConfigList.map((item) => {
})
// 生成基本配置
export function basicComponentsConfig (item) {
// let type = `${_.upperFirst(item.type)}`
// let type = `${upperFirst(item.type)}`
return {
...item,
option: _.cloneDeep(setModules[item.type]),
..._.cloneDeep(dataModules[item.type])
option: cloneDeep(setModules[item.type]),
...cloneDeep(dataModules[item.type])
}
}
export default basicConfigList

@ -1,4 +1,5 @@
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import getComponentConfig from 'data-room-ui/js/utils/getDecorationComponentsConfig'
// 批量引入配置文件
import { setModules, dataModules } from 'data-room-ui/js/utils/configImport'
@ -13,11 +14,11 @@ basicConfigList = basicConfigList.map(item => {
})
// 生成基本配置
export function basicComponentsConfig (item) {
// let type = `lcdp${_.upperFirst(item.type)}`
// let type = `lcdp${upperFirst(item.type)}`
return {
...item,
option: _.cloneDeep(setModules[item.type]),
..._.cloneDeep(dataModules[item.type])
option: cloneDeep(setModules[item.type]),
...cloneDeep(dataModules[item.type])
}
}
export default basicConfigList

@ -1,5 +1,7 @@
import { mapMutations, mapState } from 'vuex'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import isEmpty from 'lodash/isEmpty'
import { randomString } from 'data-room-ui/js/utils'
import Contextmenu from 'vue-contextmenujs'
import Vue from 'vue'
@ -51,7 +53,7 @@ export default {
},
// 复制组件
copyItem (config) {
const newConfig = _.cloneDeep(config)
const newConfig = cloneDeep(config)
newConfig.code = randomString(8)
newConfig.title = newConfig.title + '_副本'
// 区分是从左侧添加还是复制的组件
@ -84,7 +86,7 @@ export default {
}).then(() => {
// 找到和本组件group相同的组件 删除
const codes = this.chartList.filter(_chart => _chart.group === config.group && config.group).map(_chart => _chart.code)
if (!_.isEmpty(codes)) {
if (!isEmpty(codes)) {
this.delItem(codes)
} else {
this.delItem(config.code)
@ -167,7 +169,7 @@ export default {
label: '置于顶层',
icon: 'el-icon-arrow-up',
onClick: () => {
let chartList = _.cloneDeep(this.chartList)
let chartList = cloneDeep(this.chartList)
// 将当前图表置底
chartList = chartList.filter(item => item.code !== chart.code)
chartList.unshift(chart)
@ -179,7 +181,7 @@ export default {
label: '置于底层',
icon: 'el-icon-arrow-down',
onClick: () => {
let chartList = _.cloneDeep(this.chartList)
let chartList = cloneDeep(this.chartList)
// 将当前图表置顶
chartList = chartList.filter(item => item.code !== chart.code)
chartList.push(chart)

@ -1,4 +1,5 @@
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import ColorSelect from 'data-room-ui/ColorMultipleSelect/index.vue'
const chartSettingMixins = {
components: {
@ -22,8 +23,8 @@ const chartSettingMixins = {
initColor () {
const colorSetting = this.config?.setting?.find(item => item.type === 'colorSelect')
if (colorSetting && colorSetting.value && colorSetting.value.length) {
this.colorScheme = _.cloneDeep(colorSetting.value)
this.colors = _.cloneDeep(colorSetting.value)
this.colorScheme = cloneDeep(colorSetting.value)
this.colors = cloneDeep(colorSetting.value)
}
},
// 清空颜色

@ -3,7 +3,8 @@
* @Date: 2023-03-24 17:10:43
* @Author: xing.heng
*/
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { mapMutations, mapState } from 'vuex'
import { EventBus } from 'data-room-ui/js/utils/eventBus'
import { getChatInfo, getUpdateChartInfo } from '../api/bigScreenApi'
@ -72,7 +73,7 @@ export default {
size: size,
type: config.type
}).then(async (res) => {
let _res = _.cloneDeep(res)
let _res = cloneDeep(res)
// 如果是http数据集的前端代理则需要调封装的axios请求
if (res.executionByFrontend) {
if (res.data.datasetType === 'http') {
@ -124,7 +125,7 @@ export default {
}
return new Promise((resolve, reject) => {
getUpdateChartInfo(params).then(async (res) => {
let _res = _.cloneDeep(res)
let _res = cloneDeep(res)
// 如果是http数据集的前端代理则需要调封装的axios请求
if (res.executionByFrontend) {
if (res.data.datasetType === 'http') {

@ -1,4 +1,5 @@
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
const datasetMixins = {
props: {
@ -45,7 +46,7 @@ const datasetMixins = {
{ value: 'Double' },
{ value: 'Long' },
{ value: 'Date' }
],
]
}
},
methods: {
@ -79,14 +80,14 @@ const datasetMixins = {
* 取消编辑字段
*/
cancelField () {
this.structurePreviewListCopy = _.cloneDeep(this.structurePreviewList)
this.structurePreviewListCopy = cloneDeep(this.structurePreviewList)
this.fieldsetVisible = false
},
/**
* 保存字段设置
*/
setField () {
this.structurePreviewList = _.cloneDeep(this.structurePreviewListCopy)
this.structurePreviewList = cloneDeep(this.structurePreviewListCopy)
this.fieldsetVisible = false
},
/**

@ -1,7 +1,9 @@
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import uniqBy from 'lodash/uniqBy'
import { EventBus } from 'data-room-ui/js/utils/eventBus'
import { mapMutations } from 'vuex'
import { getUpdateChartInfo } from '../api/bigScreenApi'
// import { getUpdateChartInfo } from '../api/bigScreenApi'
export default {
data () {
@ -49,7 +51,7 @@ export default {
* @param {Boolean} isInner 是否是内部组件
*/
combineFilterList (isInner = false) {
let filterList = isInner ? [] : _.cloneDeep(this.filterList)
let filterList = isInner ? [] : cloneDeep(this.filterList)
// 如果内部组件的搜索条件不存在则直接返回全局的filterList
if (!this.$refs?.searchForm?.form) {
return filterList
@ -76,7 +78,7 @@ export default {
.filter(field => ![undefined, ''].includes(field.value))
// 合并去重
filterList = [...filterList, ...innerFilterList]
filterList = _.uniqBy(filterList, 'column')
filterList = uniqBy(filterList, 'column')
return filterList
}
}

@ -1,11 +1,12 @@
// 组件配置转化
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import { setModules, dataModules } from 'data-room-ui/js/utils/configImport'
import { getScreenInfo, getDataSetDetails, getDataByDataSetId } from '../api/bigScreenApi'
import { stringToFunction } from '../utils/evalFunctions'
import { EventBus } from '../utils/eventBus'
import plotList from 'data-room-ui/G2Plots/plotList'
import innerRemoteComponents, { getRemoteComponents } from 'data-room-ui/RemoteComponents/remoteComponentsList'
// import innerRemoteComponents, { getRemoteComponents } from 'data-room-ui/RemoteComponents/remoteComponentsList'
export default {
// 初始化页面数据
initLayout ({ commit, dispatch }, code) {
@ -74,7 +75,7 @@ export function handleResData (data) {
if ((!chart.version) || chart.version !== originalConfig.version) {
chart = compatibility(chart, originalConfig)
} else {
chart.option = _.cloneDeep(setModules[chart.type])
chart.option = cloneDeep(setModules[chart.type])
}
} else {
originalConfig = plotList?.find(plot => plot.name === chart.name)

@ -7,7 +7,9 @@
*/
import Vue from 'vue'
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
import uniq from 'lodash/uniq'
import { defaultData } from './state'
import moment from 'moment'
import { randomString } from 'data-room-ui/js/utils'
@ -30,11 +32,11 @@ export default {
state.activeCode = code
state.hoverCode = code
const activeItem = _.cloneDeep(state.pageInfo.chartList?.find(
const activeItem = cloneDeep(state.pageInfo.chartList?.find(
item => item.code === code
))
changeGroup(code, state)
state.activeItemConfig = _.cloneDeep(activeItem)
state.activeItemConfig = cloneDeep(activeItem)
},
changeActiveCodes (state, codes) {
// 传入codes将codes中的组件的group改为tempGroup不传入或者传入空数组将所有组件的group改为'',即取消组合
@ -91,7 +93,7 @@ export default {
]
},
changeActiveItemConfig (state, config) {
state.activeItemConfig = _.cloneDeep(config)
state.activeItemConfig = cloneDeep(config)
},
// 新增一个组件
addItem (state, itemConfig) {
@ -116,13 +118,13 @@ export default {
EventBus.$emit('closeRightPanel')
},
changePageConfig (state, pageConfig) {
Vue.set(state.pageInfo, 'pageConfig', _.cloneDeep(pageConfig))
Vue.set(state.pageInfo, 'pageConfig', cloneDeep(pageConfig))
state.updateKey = new Date().getTime()
},
changeActiveItem (state, activeItem) {
state.activeItem = _.cloneDeep(activeItem)
state.activeItem = cloneDeep(activeItem)
state.activeId = activeItem.code
// state.settingJson = _.cloneDeep(activeItem.settingConfig) || {}
// state.settingJson = cloneDeep(activeItem.settingConfig) || {}
},
// 改变当前组件的xywh
changeActiveItemWH (state, chart) {
@ -197,7 +199,7 @@ export default {
// 初始化store中的数据防止污染
resetStoreData (state) {
for (const stateKey in state) {
state[stateKey] = _.cloneDeep(defaultData[stateKey])
state[stateKey] = cloneDeep(defaultData[stateKey])
}
},
changeZoom (state, zoom) {
@ -248,7 +250,7 @@ export default {
state.currentTimeLine = state.currentTimeLine - 1
currentStore = state.timelineStore[state.currentTimeLine - 1]
if (currentStore?.chartList) {
state.pageInfo.chartList = _.cloneDeep(currentStore?.chartList)
state.pageInfo.chartList = cloneDeep(currentStore?.chartList)
}
}
}
@ -258,7 +260,7 @@ export default {
// 时间线往后推一个
state.currentTimeLine = state.currentTimeLine + 1
currentStore = state.timelineStore[state.currentTimeLine - 1]
state.pageInfo.chartList = _.cloneDeep(currentStore?.chartList || [])
state.pageInfo.chartList = cloneDeep(currentStore?.chartList || [])
}
}
state.pageInfo.chartList = state.pageInfo.chartList.map(chart => {
@ -283,12 +285,12 @@ export default {
},
// 回退到指定时间线
rollbackTimeline (state, index) {
state.pageInfo.chartList = _.cloneDeep(state.timelineStore[index]?.chartList || [])
state.pageInfo.chartList = cloneDeep(state.timelineStore[index]?.chartList || [])
state.currentTimeLine = index + 1
},
// 复制组件
copyCharts (state) {
state.copyChartCodes = _.cloneDeep(state.activeCodes)
state.copyChartCodes = cloneDeep(state.activeCodes)
},
// 粘贴组件
pasteCharts (state) {
@ -298,7 +300,7 @@ export default {
const additionCode = randomString(5)
const copyCharts = copyChartCodes.map(code => {
const chart = chartList.find(item => item.code === code)
const copyChart = _.cloneDeep(chart)
const copyChart = cloneDeep(chart)
copyChart.code = `${copyChart.code}_${additionCode}`
copyChart.key = `${copyChart.key}_${additionCode}`
copyChart.group = (copyChart.group && copyChart.group !== 'tempGroup') ? `${copyChart.group}_${additionCode}` : ''
@ -336,7 +338,7 @@ function changeGroup (code, state) {
state.activeCodes = state.pageInfo.chartList?.filter(chart => chart.group === group && chart.group).map(item => item.code)
}
if (state.shiftKeyDown) {
state.activeCodes = _.uniq([...state.activeCodes, code])
state.activeCodes = uniq([...state.activeCodes, code])
// eslint-disable-next-line no-unused-expressions
state.pageInfo.chartList?.forEach(chart => {
if (state.activeCodes.includes(chart.code)) {
@ -360,7 +362,7 @@ function changeGroup (code, state) {
function saveTimeLineFunc (state, title, time) {
// 最多保存10个状态
const MAX_TIME_LINE = 10
const stateCopy = _.cloneDeep(state.pageInfo)
const stateCopy = cloneDeep(state.pageInfo)
const date = new Date()
time = time || moment(date).format('HH:mm:ss')
stateCopy.timelineTitle = title

@ -1,4 +1,5 @@
import _ from 'lodash'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export const defaultData = {
// 大屏信息
pageInfo: {
@ -70,5 +71,5 @@ export default () => ({
// 当前的timeline 的index
currentTimeLine: 0,
// 具体信息
..._.cloneDeep(defaultData)
...cloneDeep(defaultData)
})

@ -1,6 +1,7 @@
import axios from 'axios'
import qs from 'qs'
import _ from 'lodash'
// import _ from 'lodash'
import merge from 'lodash/merge'
import { Message } from 'element-ui'
/**
* 统一进行异常输出
@ -38,7 +39,7 @@ function EipException (message, code) {
http.interceptors.request.use(config => {
return {
...config,
..._.merge(httpConfig, window.BS_CONFIG?.httpConfigs)
...merge(httpConfig, window.BS_CONFIG?.httpConfigs)
}
}, error => {
return Promise.reject(error)

@ -1,6 +1,7 @@
import axios from 'axios'
import { Loading, Message } from 'element-ui'
import _ from 'lodash'
// import { Loading, Message } from 'element-ui'
// import _ from 'lodash'
import cloneDeep from 'lodash/cloneDeep'
export default function axiosFormatting (customConfig) {
const newCustomConfig = replaceParams(customConfig)
// 将请求头和请求参数的值转化为对象形式
@ -36,8 +37,8 @@ export default function axiosFormatting (customConfig) {
const resp = response.data
console.log('resp', resp)
// 执行响应脚本
// eslint-disable-next-line no-new-func
if (newCustomConfig.responseScript) {
// eslint-disable-next-line no-new-func
const getResp = new Function('resp', newCustomConfig.responseScript)
const res = getResp(resp)
console.log('resp', res)
@ -73,7 +74,7 @@ function replaceUrlParam (url, paramName, paramValue) {
}
// 将参数的值替换掉其他配置中对应属性的值
function replaceParams (customConfig) {
const newConfig = _.cloneDeep(customConfig)
const newConfig = cloneDeep(customConfig)
newConfig.url = evalStrFunc(newConfig.paramsList, newConfig.url)
newConfig.headers = evalArrFunc(newConfig.paramsList, newConfig.headers)
newConfig.params = evalArrFunc(newConfig.paramsList, newConfig.params)

@ -1,4 +1,5 @@
import _ from 'lodash'
// import _ from 'lodash'
import upperFirst from 'lodash/upperFirst'
export const randomString = e => {
e = e || 32
const t = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz'
@ -9,7 +10,7 @@ export const randomString = e => {
}
export const resolveComponentType = type => {
return `${_.upperFirst(type)}`
return `${upperFirst(type)}`
}
export function deepCompare (obj1, obj2, excludeKeys = []) {
// eslint-disable-next-line eqeqeq

Loading…
Cancel
Save