cms-chenhj-ui 2.0.28 → 2.0.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cms-chenhj-ui.common.js +1199 -632
- package/cms-chenhj-ui.common.js.map +1 -1
- package/cms-chenhj-ui.css +1 -1
- package/cms-chenhj-ui.umd.js +1089 -522
- package/cms-chenhj-ui.umd.js.map +1 -1
- package/cms-chenhj-ui.umd.min.js +3 -3
- package/cms-chenhj-ui.umd.min.js.map +1 -1
- package/package.json +1 -1
package/cms-chenhj-ui.common.js
CHANGED
|
@@ -10671,8 +10671,8 @@ var map = {
|
|
|
10671
10671
|
"./cms-column": 3923,
|
|
10672
10672
|
"./cms-column-card": 5340,
|
|
10673
10673
|
"./cms-column-card/": 5340,
|
|
10674
|
-
"./cms-column-card/View":
|
|
10675
|
-
"./cms-column-card/View.vue":
|
|
10674
|
+
"./cms-column-card/View": 7058,
|
|
10675
|
+
"./cms-column-card/View.vue": 7058,
|
|
10676
10676
|
"./cms-column-card/index": 5340,
|
|
10677
10677
|
"./cms-column-card/index.js": 5340,
|
|
10678
10678
|
"./cms-column/": 3923,
|
|
@@ -10787,6 +10787,12 @@ var map = {
|
|
|
10787
10787
|
"./cms-servePlan-text/View.vue": 9487,
|
|
10788
10788
|
"./cms-servePlan-text/index": 6501,
|
|
10789
10789
|
"./cms-servePlan-text/index.js": 6501,
|
|
10790
|
+
"./cms-tab": 8892,
|
|
10791
|
+
"./cms-tab/": 8892,
|
|
10792
|
+
"./cms-tab/View": 9251,
|
|
10793
|
+
"./cms-tab/View.vue": 9251,
|
|
10794
|
+
"./cms-tab/index": 8892,
|
|
10795
|
+
"./cms-tab/index.js": 8892,
|
|
10790
10796
|
"./cms-termsAndConditions": 9387,
|
|
10791
10797
|
"./cms-termsAndConditions/": 9387,
|
|
10792
10798
|
"./cms-termsAndConditions/View": 8073,
|
|
@@ -13342,524 +13348,6 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
13342
13348
|
|
|
13343
13349
|
/***/ }),
|
|
13344
13350
|
|
|
13345
|
-
/***/ 2328:
|
|
13346
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
13347
|
-
|
|
13348
|
-
"use strict";
|
|
13349
|
-
// ESM COMPAT FLAG
|
|
13350
|
-
__webpack_require__.r(__webpack_exports__);
|
|
13351
|
-
|
|
13352
|
-
// EXPORTS
|
|
13353
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
13354
|
-
"default": function() { return /* binding */ View; }
|
|
13355
|
-
});
|
|
13356
|
-
|
|
13357
|
-
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
|
|
13358
|
-
var es_iterator_constructor = __webpack_require__(8111);
|
|
13359
|
-
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.drop.js
|
|
13360
|
-
var es_iterator_drop = __webpack_require__(9314);
|
|
13361
|
-
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/babel-loader/lib/index.js??clonedRuleSet-41.use!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-column-card/View.vue?vue&type=template&id=2dcb9de2&scoped=true
|
|
13362
|
-
|
|
13363
|
-
|
|
13364
|
-
|
|
13365
|
-
|
|
13366
|
-
var render = function render() {
|
|
13367
|
-
var _vm = this,
|
|
13368
|
-
_c = _vm._self._c;
|
|
13369
|
-
return _c('BaseComp', _vm._b({
|
|
13370
|
-
attrs: {
|
|
13371
|
-
"data": _vm.data,
|
|
13372
|
-
"nowCompId": _vm.nowCompId,
|
|
13373
|
-
"isOpcacity": _vm.isOpcacity,
|
|
13374
|
-
"isMask": false,
|
|
13375
|
-
"lang": _vm.lang,
|
|
13376
|
-
"showDel": false
|
|
13377
|
-
},
|
|
13378
|
-
on: {
|
|
13379
|
-
"getConfigData": _vm.getConfigData
|
|
13380
|
-
}
|
|
13381
|
-
}, 'BaseComp', _vm.$attrs, false), [_vm.isConfigPage ? _c('div', {
|
|
13382
|
-
staticClass: "main_drag hoverBorderClass",
|
|
13383
|
-
style: _vm.cardContainerStyle,
|
|
13384
|
-
attrs: {
|
|
13385
|
-
"id": `cardTarget${_vm.data.componentId}`
|
|
13386
|
-
},
|
|
13387
|
-
on: {
|
|
13388
|
-
"dragover": _vm.dragover,
|
|
13389
|
-
"dragend": function ($event) {
|
|
13390
|
-
_vm.showAddCom = false;
|
|
13391
|
-
},
|
|
13392
|
-
"drop": _vm.drop
|
|
13393
|
-
}
|
|
13394
|
-
}, [_c('Draggable', {
|
|
13395
|
-
staticStyle: {
|
|
13396
|
-
"position": "relative"
|
|
13397
|
-
},
|
|
13398
|
-
attrs: {
|
|
13399
|
-
"group": _vm.groupConfigForMain,
|
|
13400
|
-
"chosen-class": "chosen",
|
|
13401
|
-
"force-fallback": "true",
|
|
13402
|
-
"animation": "1000",
|
|
13403
|
-
"move": _vm.onMove
|
|
13404
|
-
},
|
|
13405
|
-
on: {
|
|
13406
|
-
"start": _vm.onStart,
|
|
13407
|
-
"end": function ($event) {
|
|
13408
|
-
_vm.showAddCom = false;
|
|
13409
|
-
}
|
|
13410
|
-
},
|
|
13411
|
-
model: {
|
|
13412
|
-
value: _vm.data.childList,
|
|
13413
|
-
callback: function ($$v) {
|
|
13414
|
-
_vm.$set(_vm.data, "childList", $$v);
|
|
13415
|
-
},
|
|
13416
|
-
expression: "data.childList"
|
|
13417
|
-
}
|
|
13418
|
-
}, [_vm._l(_vm.data.childList, function (item, index) {
|
|
13419
|
-
return _c('div', {
|
|
13420
|
-
key: item.componentId,
|
|
13421
|
-
staticStyle: {
|
|
13422
|
-
"position": "relative"
|
|
13423
|
-
}
|
|
13424
|
-
}, [_vm.showAddCom ? _c('div', {
|
|
13425
|
-
staticClass: "up_insert",
|
|
13426
|
-
attrs: {
|
|
13427
|
-
"id": `${item.componentId}-cardTargetup`
|
|
13428
|
-
}
|
|
13429
|
-
}, [_c('i', {
|
|
13430
|
-
staticClass: "icon-up",
|
|
13431
|
-
attrs: {
|
|
13432
|
-
"id": `${item.componentId}-upi`
|
|
13433
|
-
}
|
|
13434
|
-
}), _c('span', {
|
|
13435
|
-
attrs: {
|
|
13436
|
-
"id": `${item.componentId}-upspan`
|
|
13437
|
-
}
|
|
13438
|
-
}, [_vm._v("插入组件")])]) : _vm._e(), _c(item.cmsCompName, {
|
|
13439
|
-
tag: "component",
|
|
13440
|
-
style: {
|
|
13441
|
-
marginTop: _vm.showAddCom && index == 0 ? '20px' : '0px'
|
|
13442
|
-
},
|
|
13443
|
-
attrs: {
|
|
13444
|
-
"data": item,
|
|
13445
|
-
"lang": _vm.lang,
|
|
13446
|
-
"isOpcacity": _vm.isOpcacity,
|
|
13447
|
-
"nowCompId": _vm.nowCompId
|
|
13448
|
-
}
|
|
13449
|
-
})], 1);
|
|
13450
|
-
}), _vm.showAddCom ? _c('div', {
|
|
13451
|
-
staticClass: "up_insert insert_bottom",
|
|
13452
|
-
style: {
|
|
13453
|
-
bottom: _vm.data.childList.length ? '0px' : '-24px'
|
|
13454
|
-
},
|
|
13455
|
-
attrs: {
|
|
13456
|
-
"id": `-cardTargetdown`
|
|
13457
|
-
}
|
|
13458
|
-
}, [_c('i', {
|
|
13459
|
-
staticClass: "icon-up"
|
|
13460
|
-
}), _c('span', [_vm._v("插入组件")])]) : _vm._e()], 2)], 1) : _c('cms-view', _vm._b({
|
|
13461
|
-
style: _vm.cardContainerStyle,
|
|
13462
|
-
attrs: {
|
|
13463
|
-
"data": _vm.data.childList,
|
|
13464
|
-
"lang": _vm.lang,
|
|
13465
|
-
"isOpcacity": false
|
|
13466
|
-
}
|
|
13467
|
-
}, 'cms-view', _vm.$attrs, false))], 1);
|
|
13468
|
-
};
|
|
13469
|
-
var staticRenderFns = [];
|
|
13470
|
-
|
|
13471
|
-
;// ./package/cms-column-card/View.vue?vue&type=template&id=2dcb9de2&scoped=true
|
|
13472
|
-
|
|
13473
|
-
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
|
|
13474
|
-
var es_array_push = __webpack_require__(4114);
|
|
13475
|
-
// EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
|
|
13476
|
-
var baseComp = __webpack_require__(4128);
|
|
13477
|
-
// EXTERNAL MODULE: ./node_modules/vuedraggable/dist/vuedraggable.umd.js
|
|
13478
|
-
var vuedraggable_umd = __webpack_require__(1527);
|
|
13479
|
-
var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd);
|
|
13480
|
-
// EXTERNAL MODULE: ./package/baseConfig.js
|
|
13481
|
-
var baseConfig = __webpack_require__(649);
|
|
13482
|
-
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.find.js
|
|
13483
|
-
var es_iterator_find = __webpack_require__(116);
|
|
13484
|
-
// EXTERNAL MODULE: ./src/utils/index.js
|
|
13485
|
-
var utils = __webpack_require__(1996);
|
|
13486
|
-
;// ./src/views/standard_page.js
|
|
13487
|
-
|
|
13488
|
-
|
|
13489
|
-
|
|
13490
|
-
|
|
13491
|
-
|
|
13492
|
-
const standard_page_list = [{
|
|
13493
|
-
id: 1,
|
|
13494
|
-
componentId: 1,
|
|
13495
|
-
componentName: "范本1-防诈骗提示",
|
|
13496
|
-
standList: ["cms-banner", "cms-titleCenter", "cms-lineThree"]
|
|
13497
|
-
}, {
|
|
13498
|
-
id: 2,
|
|
13499
|
-
componentId: 2,
|
|
13500
|
-
componentName: "范本2-员工优惠",
|
|
13501
|
-
standList: ["cms-banner", "cms-description", "cms-activityCountdown", "cms-titleLeft", "cms-proCard", "cms-termsAndConditions"]
|
|
13502
|
-
}];
|
|
13503
|
-
const getComponentKey = (compList, id, noCompId = false) => {
|
|
13504
|
-
if (noCompId) return id;
|
|
13505
|
-
let compConfig = compList.find(item => item.id == id);
|
|
13506
|
-
if (compConfig.type == "1") {
|
|
13507
|
-
return compConfig.componentId;
|
|
13508
|
-
}
|
|
13509
|
-
return "cms-dynamic-comp";
|
|
13510
|
-
};
|
|
13511
|
-
const getCopyTemplateCompConfig = (compList, componentKey) => {
|
|
13512
|
-
let otherConfig = {};
|
|
13513
|
-
const configureJson = compList.find(item => item.id == componentKey).configureJson;
|
|
13514
|
-
if (configureJson.wujieConfig) {
|
|
13515
|
-
//如果是第三方组件加一个临时标识
|
|
13516
|
-
otherConfig = {
|
|
13517
|
-
originalComponentId: configureJson.componentId,
|
|
13518
|
-
originalVersionId: configureJson.wujieConfig.versionId,
|
|
13519
|
-
operation: "copyTemplate"
|
|
13520
|
-
};
|
|
13521
|
-
}
|
|
13522
|
-
return {
|
|
13523
|
-
...configureJson,
|
|
13524
|
-
componentId: (0,utils/* getUuidCode */.J0)(32),
|
|
13525
|
-
...otherConfig
|
|
13526
|
-
};
|
|
13527
|
-
};
|
|
13528
|
-
const isStaticComp = componentKey => {
|
|
13529
|
-
return ["cms-header", "cms-footer", "cms-breadCrumb"].includes(componentKey);
|
|
13530
|
-
};
|
|
13531
|
-
const getWujieCompInfo = (compList, componentId, isTemplate) => {
|
|
13532
|
-
let compConfig = compList.find(item => item.id == componentId);
|
|
13533
|
-
if (isTemplate) if (compConfig.type == "1") {
|
|
13534
|
-
return compConfig;
|
|
13535
|
-
}
|
|
13536
|
-
return {
|
|
13537
|
-
...compConfig
|
|
13538
|
-
};
|
|
13539
|
-
};
|
|
13540
|
-
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/babel-loader/lib/index.js??clonedRuleSet-41.use!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-column-card/View.vue?vue&type=script&lang=js
|
|
13541
|
-
|
|
13542
|
-
|
|
13543
|
-
|
|
13544
|
-
|
|
13545
|
-
|
|
13546
|
-
|
|
13547
|
-
/* harmony default export */ var Viewvue_type_script_lang_js = ({
|
|
13548
|
-
name: "cms-column-card",
|
|
13549
|
-
components: {
|
|
13550
|
-
BaseComp: baseComp["default"],
|
|
13551
|
-
Draggable: (vuedraggable_umd_default())
|
|
13552
|
-
},
|
|
13553
|
-
props: {
|
|
13554
|
-
data: {
|
|
13555
|
-
type: Object,
|
|
13556
|
-
default: () => {
|
|
13557
|
-
return {};
|
|
13558
|
-
}
|
|
13559
|
-
},
|
|
13560
|
-
nowCompId: {
|
|
13561
|
-
type: [String, Number],
|
|
13562
|
-
default: ""
|
|
13563
|
-
},
|
|
13564
|
-
isOpcacity: {
|
|
13565
|
-
type: Boolean,
|
|
13566
|
-
default: true
|
|
13567
|
-
},
|
|
13568
|
-
lang: {
|
|
13569
|
-
type: String,
|
|
13570
|
-
default: "zh-HK"
|
|
13571
|
-
},
|
|
13572
|
-
isMobile: {
|
|
13573
|
-
type: Boolean,
|
|
13574
|
-
default: false
|
|
13575
|
-
},
|
|
13576
|
-
mobileLayout: {
|
|
13577
|
-
type: String,
|
|
13578
|
-
default: ""
|
|
13579
|
-
}
|
|
13580
|
-
},
|
|
13581
|
-
data() {
|
|
13582
|
-
return {
|
|
13583
|
-
configData: {},
|
|
13584
|
-
messFold: true,
|
|
13585
|
-
showAddCom: false,
|
|
13586
|
-
temporaryList: []
|
|
13587
|
-
};
|
|
13588
|
-
},
|
|
13589
|
-
computed: {
|
|
13590
|
-
isConfigPage() {
|
|
13591
|
-
return this.$EventBus && this.isOpcacity;
|
|
13592
|
-
},
|
|
13593
|
-
groupConfigForMain() {
|
|
13594
|
-
return {
|
|
13595
|
-
name: "task",
|
|
13596
|
-
pull: true,
|
|
13597
|
-
// A列表的元素可以被拖出
|
|
13598
|
-
put: (to, from, dragEl) => {
|
|
13599
|
-
console.log(from.el.classList);
|
|
13600
|
-
if (from.el.classList.contains("main_drag")) {
|
|
13601
|
-
const dataId = this.findFirstComponentKey(dragEl);
|
|
13602
|
-
const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column"];
|
|
13603
|
-
console.log("allowedComponents", dataId);
|
|
13604
|
-
if (dataId === "cms-column") {
|
|
13605
|
-
if (!this.checkColumnNestingLevel()) {
|
|
13606
|
-
console.log("cms-column 嵌套层级超出限制");
|
|
13607
|
-
return false;
|
|
13608
|
-
}
|
|
13609
|
-
}
|
|
13610
|
-
return allowedComponents.includes(dataId);
|
|
13611
|
-
}
|
|
13612
|
-
return true;
|
|
13613
|
-
}
|
|
13614
|
-
};
|
|
13615
|
-
},
|
|
13616
|
-
// 卡片容器样式
|
|
13617
|
-
cardContainerStyle() {
|
|
13618
|
-
return {
|
|
13619
|
-
backgroundImage: this.configData.backgroundImage ? `url('${this.configData.backgroundImage}')` : "none",
|
|
13620
|
-
backgroundSize: "cover",
|
|
13621
|
-
backgroundRepeat: "no-repeat",
|
|
13622
|
-
backgroundPosition: "center center",
|
|
13623
|
-
height: this.getContainerHeight(),
|
|
13624
|
-
border: this.getContainerBorder(),
|
|
13625
|
-
borderRadius: this.getContainerBorderRadius(),
|
|
13626
|
-
backgroundColor: this.configData.backgroundColor || "transparent",
|
|
13627
|
-
boxShadow: this.configData.boxShadow || "none"
|
|
13628
|
-
};
|
|
13629
|
-
}
|
|
13630
|
-
},
|
|
13631
|
-
mounted() {
|
|
13632
|
-
if (this.$EventBus) {
|
|
13633
|
-
this.$EventBus.$on("handleDragEnd", () => {
|
|
13634
|
-
this.showAddCom = false;
|
|
13635
|
-
});
|
|
13636
|
-
}
|
|
13637
|
-
},
|
|
13638
|
-
watch: {},
|
|
13639
|
-
methods: {
|
|
13640
|
-
findFirstComponentKey(root) {
|
|
13641
|
-
var _root$querySelector;
|
|
13642
|
-
if (!root) return null;
|
|
13643
|
-
|
|
13644
|
-
// 若起点自身就有
|
|
13645
|
-
if (root.nodeType === 1 && root.hasAttribute("component-key")) {
|
|
13646
|
-
return root.getAttribute("component-key");
|
|
13647
|
-
}
|
|
13648
|
-
|
|
13649
|
-
// 向下查找第一个匹配的后代
|
|
13650
|
-
const el = (_root$querySelector = root.querySelector) === null || _root$querySelector === void 0 ? void 0 : _root$querySelector.call(root, "[component-key]");
|
|
13651
|
-
return el ? el.getAttribute("component-key") : null;
|
|
13652
|
-
},
|
|
13653
|
-
// 获取容器高度
|
|
13654
|
-
getContainerHeight() {
|
|
13655
|
-
if (this.configData.heightType === "fixed") {
|
|
13656
|
-
return `${this.configData.fixedHeight}px`;
|
|
13657
|
-
}
|
|
13658
|
-
return this.isMobile && this.mobileLayout == "vertical" ? "auto" : "100%";
|
|
13659
|
-
},
|
|
13660
|
-
// 获取容器边框
|
|
13661
|
-
getContainerBorder() {
|
|
13662
|
-
if (this.configData.borderWidth) {
|
|
13663
|
-
return `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}`;
|
|
13664
|
-
}
|
|
13665
|
-
return "none";
|
|
13666
|
-
},
|
|
13667
|
-
// 获取容器圆角
|
|
13668
|
-
getContainerBorderRadius() {
|
|
13669
|
-
if (this.configData.borderRadius) {
|
|
13670
|
-
return `${this.configData.borderRadius}px`;
|
|
13671
|
-
}
|
|
13672
|
-
return "0";
|
|
13673
|
-
},
|
|
13674
|
-
getConfigData(configData) {
|
|
13675
|
-
this.configData = configData;
|
|
13676
|
-
},
|
|
13677
|
-
foldMessText() {
|
|
13678
|
-
this.messFold = !this.messFold;
|
|
13679
|
-
},
|
|
13680
|
-
decodeJumpUrl(url) {
|
|
13681
|
-
if (!url) return;
|
|
13682
|
-
top.location.href = url;
|
|
13683
|
-
},
|
|
13684
|
-
onStart(evt) {
|
|
13685
|
-
console.log("drag start in column-card", evt);
|
|
13686
|
-
this.showAddCom = true;
|
|
13687
|
-
},
|
|
13688
|
-
// 限制拖拽的组件类型
|
|
13689
|
-
onMove(evt) {
|
|
13690
|
-
const {
|
|
13691
|
-
draggedContext
|
|
13692
|
-
} = evt;
|
|
13693
|
-
|
|
13694
|
-
// 允许的组件类型
|
|
13695
|
-
const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
|
|
13696
|
-
];
|
|
13697
|
-
|
|
13698
|
-
// 如果是从外部拖入的组件
|
|
13699
|
-
if (draggedContext && draggedContext.element) {
|
|
13700
|
-
const componentType = draggedContext.element.cmsCompName;
|
|
13701
|
-
if (componentType && !allowedComponents.includes(componentType)) {
|
|
13702
|
-
console.log("draggedContext.element", draggedContext.element);
|
|
13703
|
-
console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
|
|
13704
|
-
return false;
|
|
13705
|
-
}
|
|
13706
|
-
|
|
13707
|
-
// 特殊处理 cms-column:检查嵌套层级
|
|
13708
|
-
if (componentType === "cms-column") {
|
|
13709
|
-
if (!this.checkColumnNestingLevel()) {
|
|
13710
|
-
console.log("cms-column 嵌套层级超出限制");
|
|
13711
|
-
return false;
|
|
13712
|
-
}
|
|
13713
|
-
}
|
|
13714
|
-
}
|
|
13715
|
-
return true;
|
|
13716
|
-
},
|
|
13717
|
-
// 检查 cms-column 嵌套层级
|
|
13718
|
-
checkColumnNestingLevel() {
|
|
13719
|
-
// 检查当前 column-card 是否已经在 cms-column 内部
|
|
13720
|
-
let parent = this.$parent;
|
|
13721
|
-
let columnDepth = 0;
|
|
13722
|
-
while (parent) {
|
|
13723
|
-
// 检查父组件是否是 cms-column 或包含 cms-column
|
|
13724
|
-
if (parent.$options.name === "cms-column" || parent.$data && parent.$data.data && parent.$data.data.cmsCompName === "cms-column") {
|
|
13725
|
-
columnDepth++;
|
|
13726
|
-
}
|
|
13727
|
-
|
|
13728
|
-
// 如果已经有一层 cms-column,则不允许再嵌套
|
|
13729
|
-
if (columnDepth >= 2) {
|
|
13730
|
-
console.log(`检测到 cms-column 嵌套层级: ${columnDepth}, 超出限制`);
|
|
13731
|
-
return false;
|
|
13732
|
-
}
|
|
13733
|
-
parent = parent.$parent;
|
|
13734
|
-
}
|
|
13735
|
-
console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
|
|
13736
|
-
return true;
|
|
13737
|
-
},
|
|
13738
|
-
// 处理拖拽悬停
|
|
13739
|
-
dragover(e) {
|
|
13740
|
-
e.preventDefault();
|
|
13741
|
-
this.showAddCom = true;
|
|
13742
|
-
},
|
|
13743
|
-
// 处理拖拽放置
|
|
13744
|
-
drop(e) {
|
|
13745
|
-
e.preventDefault();
|
|
13746
|
-
const componentKey = e.dataTransfer.getData("componentKey");
|
|
13747
|
-
let temporaryId = "";
|
|
13748
|
-
this.temporaryList = e.dataTransfer.getData("temporaryList") ? JSON.parse(e.dataTransfer.getData("temporaryList")) : [];
|
|
13749
|
-
console.log("cms-colum-card-drop", componentKey, this.temporaryList);
|
|
13750
|
-
if (!componentKey) return;
|
|
13751
|
-
const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
|
|
13752
|
-
const isTemporary = isTemporaryItem === "true";
|
|
13753
|
-
if (isTemporary) {
|
|
13754
|
-
temporaryId = getCopyTemplateCompConfig(this.temporaryList, componentKey).cmsCompName;
|
|
13755
|
-
}
|
|
13756
|
-
const componentType = isTemporary ? temporaryId : componentKey;
|
|
13757
|
-
// 允许的组件类型
|
|
13758
|
-
const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
|
|
13759
|
-
];
|
|
13760
|
-
|
|
13761
|
-
// 检查组件类型是否允许
|
|
13762
|
-
if (!allowedComponents.includes(componentType)) {
|
|
13763
|
-
console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
|
|
13764
|
-
this.$message && this.$message.warning(`该组件类型不支持拖入卡片容器`);
|
|
13765
|
-
this.showAddCom = false;
|
|
13766
|
-
return;
|
|
13767
|
-
}
|
|
13768
|
-
|
|
13769
|
-
// 特殊处理 cms-column:检查嵌套层级
|
|
13770
|
-
if (componentType === "cms-column") {
|
|
13771
|
-
if (!this.checkColumnNestingLevel()) {
|
|
13772
|
-
console.log("cms-column 嵌套层级超出限制");
|
|
13773
|
-
this.$message && this.$message.warning(`cms-column 只能嵌套一层`);
|
|
13774
|
-
this.showAddCom = false;
|
|
13775
|
-
return;
|
|
13776
|
-
}
|
|
13777
|
-
}
|
|
13778
|
-
this.addOneComp(e, componentKey);
|
|
13779
|
-
},
|
|
13780
|
-
// 添加组件到卡片容器
|
|
13781
|
-
addOneComp(e, componentKey) {
|
|
13782
|
-
this.showAddCom = false;
|
|
13783
|
-
console.log("drop to column-card", componentKey);
|
|
13784
|
-
|
|
13785
|
-
// 动态导入组件配置
|
|
13786
|
-
let initCompData;
|
|
13787
|
-
try {
|
|
13788
|
-
const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
|
|
13789
|
-
const isTemporary = isTemporaryItem === "true";
|
|
13790
|
-
if (isTemporary) {
|
|
13791
|
-
initCompData = getCopyTemplateCompConfig(this.temporaryList, componentKey);
|
|
13792
|
-
} else {
|
|
13793
|
-
initCompData = __webpack_require__(1640)(`./${componentKey}`).default.settings(componentKey);
|
|
13794
|
-
}
|
|
13795
|
-
if (!isTemporary) {
|
|
13796
|
-
initCompData = {
|
|
13797
|
-
...initCompData,
|
|
13798
|
-
styleConfig: {
|
|
13799
|
-
pc: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(16, 16, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")],
|
|
13800
|
-
mb: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(12, 12, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")]
|
|
13801
|
-
}
|
|
13802
|
-
};
|
|
13803
|
-
}
|
|
13804
|
-
} catch (error) {
|
|
13805
|
-
console.error(`无法加载组件 ${componentKey}:`, error);
|
|
13806
|
-
this.$message && this.$message.error(`组件加载失败`);
|
|
13807
|
-
return;
|
|
13808
|
-
}
|
|
13809
|
-
const toElementId = e.toElement.id;
|
|
13810
|
-
if (toElementId === `cardTarget${this.data.componentId}` || toElementId.includes("cardTargetdown")) {
|
|
13811
|
-
// 添加到卡片容器末尾
|
|
13812
|
-
this.data.childList.push(initCompData);
|
|
13813
|
-
} else if (toElementId.includes("cardTargetup")) {
|
|
13814
|
-
// 插入到指定位置
|
|
13815
|
-
const underComponentId = toElementId.split("-cardTargetup")[0];
|
|
13816
|
-
const index = this.data.childList.findIndex(item => item.componentId === underComponentId);
|
|
13817
|
-
if (index !== -1) {
|
|
13818
|
-
this.data.childList.splice(index, 0, initCompData);
|
|
13819
|
-
}
|
|
13820
|
-
}
|
|
13821
|
-
|
|
13822
|
-
// 触发数据更新
|
|
13823
|
-
this.$emit("update:data", this.data);
|
|
13824
|
-
if (componentKey === "cms-column") {
|
|
13825
|
-
this.$EventBus.$emit("handleNowComp", initCompData);
|
|
13826
|
-
}
|
|
13827
|
-
}
|
|
13828
|
-
}
|
|
13829
|
-
});
|
|
13830
|
-
;// ./package/cms-column-card/View.vue?vue&type=script&lang=js
|
|
13831
|
-
/* harmony default export */ var cms_column_card_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
|
|
13832
|
-
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-42.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-column-card/View.vue?vue&type=style&index=0&id=2dcb9de2&prod&lang=scss&scoped=true
|
|
13833
|
-
// extracted by mini-css-extract-plugin
|
|
13834
|
-
|
|
13835
|
-
;// ./package/cms-column-card/View.vue?vue&type=style&index=0&id=2dcb9de2&prod&lang=scss&scoped=true
|
|
13836
|
-
|
|
13837
|
-
// EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
|
|
13838
|
-
var componentNormalizer = __webpack_require__(1656);
|
|
13839
|
-
;// ./package/cms-column-card/View.vue
|
|
13840
|
-
|
|
13841
|
-
|
|
13842
|
-
|
|
13843
|
-
;
|
|
13844
|
-
|
|
13845
|
-
|
|
13846
|
-
/* normalize component */
|
|
13847
|
-
|
|
13848
|
-
var component = (0,componentNormalizer/* default */.A)(
|
|
13849
|
-
cms_column_card_Viewvue_type_script_lang_js,
|
|
13850
|
-
render,
|
|
13851
|
-
staticRenderFns,
|
|
13852
|
-
false,
|
|
13853
|
-
null,
|
|
13854
|
-
"2dcb9de2",
|
|
13855
|
-
null
|
|
13856
|
-
|
|
13857
|
-
)
|
|
13858
|
-
|
|
13859
|
-
/* harmony default export */ var View = (component.exports);
|
|
13860
|
-
|
|
13861
|
-
/***/ }),
|
|
13862
|
-
|
|
13863
13351
|
/***/ 2358:
|
|
13864
13352
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
13865
13353
|
|
|
@@ -40435,7 +39923,7 @@ var map = {
|
|
|
40435
39923
|
"./cms-banner/View.vue": 6815,
|
|
40436
39924
|
"./cms-button/View.vue": 2404,
|
|
40437
39925
|
"./cms-cells/View.vue": 5700,
|
|
40438
|
-
"./cms-column-card/View.vue":
|
|
39926
|
+
"./cms-column-card/View.vue": 7058,
|
|
40439
39927
|
"./cms-column/View.vue": 7855,
|
|
40440
39928
|
"./cms-description/View.vue": 3203,
|
|
40441
39929
|
"./cms-dynamic-comp/View.vue": 2809,
|
|
@@ -40454,6 +39942,7 @@ var map = {
|
|
|
40454
39942
|
"./cms-richText/View.vue": 3411,
|
|
40455
39943
|
"./cms-servePlan-tab/View.vue": 8757,
|
|
40456
39944
|
"./cms-servePlan-text/View.vue": 9487,
|
|
39945
|
+
"./cms-tab/View.vue": 9251,
|
|
40457
39946
|
"./cms-termsAndConditions/View.vue": 8073,
|
|
40458
39947
|
"./cms-text/View.vue": 1765,
|
|
40459
39948
|
"./cms-threeScroll/View.vue": 517,
|
|
@@ -40893,7 +40382,7 @@ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAVAAAAEQCAYAAADm
|
|
|
40893
40382
|
__webpack_require__.r(__webpack_exports__);
|
|
40894
40383
|
/* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(649);
|
|
40895
40384
|
|
|
40896
|
-
const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__,
|
|
40385
|
+
const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 7058));
|
|
40897
40386
|
|
|
40898
40387
|
// 默认配置数据
|
|
40899
40388
|
const langData = {
|
|
@@ -52115,141 +51604,603 @@ module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
|
|
|
52115
51604
|
};
|
|
52116
51605
|
|
|
52117
51606
|
|
|
52118
|
-
/***/ }),
|
|
52119
|
-
|
|
52120
|
-
/***/ 6969:
|
|
52121
|
-
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
52122
|
-
|
|
52123
|
-
"use strict";
|
|
52124
|
-
|
|
52125
|
-
var toPrimitive = __webpack_require__(2777);
|
|
52126
|
-
var isSymbol = __webpack_require__(757);
|
|
52127
|
-
|
|
52128
|
-
// `ToPropertyKey` abstract operation
|
|
52129
|
-
// https://tc39.es/ecma262/#sec-topropertykey
|
|
52130
|
-
module.exports = function (argument) {
|
|
52131
|
-
var key = toPrimitive(argument, 'string');
|
|
52132
|
-
return isSymbol(key) ? key : key + '';
|
|
52133
|
-
};
|
|
51607
|
+
/***/ }),
|
|
51608
|
+
|
|
51609
|
+
/***/ 6969:
|
|
51610
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
51611
|
+
|
|
51612
|
+
"use strict";
|
|
51613
|
+
|
|
51614
|
+
var toPrimitive = __webpack_require__(2777);
|
|
51615
|
+
var isSymbol = __webpack_require__(757);
|
|
51616
|
+
|
|
51617
|
+
// `ToPropertyKey` abstract operation
|
|
51618
|
+
// https://tc39.es/ecma262/#sec-topropertykey
|
|
51619
|
+
module.exports = function (argument) {
|
|
51620
|
+
var key = toPrimitive(argument, 'string');
|
|
51621
|
+
return isSymbol(key) ? key : key + '';
|
|
51622
|
+
};
|
|
51623
|
+
|
|
51624
|
+
|
|
51625
|
+
/***/ }),
|
|
51626
|
+
|
|
51627
|
+
/***/ 6980:
|
|
51628
|
+
/***/ (function(module) {
|
|
51629
|
+
|
|
51630
|
+
"use strict";
|
|
51631
|
+
|
|
51632
|
+
module.exports = function (bitmap, value) {
|
|
51633
|
+
return {
|
|
51634
|
+
enumerable: !(bitmap & 1),
|
|
51635
|
+
configurable: !(bitmap & 2),
|
|
51636
|
+
writable: !(bitmap & 4),
|
|
51637
|
+
value: value
|
|
51638
|
+
};
|
|
51639
|
+
};
|
|
51640
|
+
|
|
51641
|
+
|
|
51642
|
+
/***/ }),
|
|
51643
|
+
|
|
51644
|
+
/***/ 7012:
|
|
51645
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
51646
|
+
|
|
51647
|
+
"use strict";
|
|
51648
|
+
|
|
51649
|
+
|
|
51650
|
+
__webpack_require__(6573);
|
|
51651
|
+
__webpack_require__(8100);
|
|
51652
|
+
__webpack_require__(7936);
|
|
51653
|
+
__webpack_require__(7467);
|
|
51654
|
+
__webpack_require__(4732);
|
|
51655
|
+
__webpack_require__(9577);
|
|
51656
|
+
exports.__esModule = true;
|
|
51657
|
+
exports.isDefined = exports.isUndefined = exports.isFunction = undefined;
|
|
51658
|
+
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {
|
|
51659
|
+
return typeof obj;
|
|
51660
|
+
} : function (obj) {
|
|
51661
|
+
return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
|
|
51662
|
+
};
|
|
51663
|
+
exports.isString = isString;
|
|
51664
|
+
exports.isObject = isObject;
|
|
51665
|
+
exports.isHtmlElement = isHtmlElement;
|
|
51666
|
+
var _vue = __webpack_require__(6848);
|
|
51667
|
+
var _vue2 = _interopRequireDefault(_vue);
|
|
51668
|
+
function _interopRequireDefault(obj) {
|
|
51669
|
+
return obj && obj.__esModule ? obj : {
|
|
51670
|
+
default: obj
|
|
51671
|
+
};
|
|
51672
|
+
}
|
|
51673
|
+
function isString(obj) {
|
|
51674
|
+
return Object.prototype.toString.call(obj) === '[object String]';
|
|
51675
|
+
}
|
|
51676
|
+
function isObject(obj) {
|
|
51677
|
+
return Object.prototype.toString.call(obj) === '[object Object]';
|
|
51678
|
+
}
|
|
51679
|
+
function isHtmlElement(node) {
|
|
51680
|
+
return node && node.nodeType === Node.ELEMENT_NODE;
|
|
51681
|
+
}
|
|
51682
|
+
|
|
51683
|
+
/**
|
|
51684
|
+
* - Inspired:
|
|
51685
|
+
* https://github.com/jashkenas/underscore/blob/master/modules/isFunction.js
|
|
51686
|
+
*/
|
|
51687
|
+
var isFunction = function isFunction(functionToCheck) {
|
|
51688
|
+
var getType = {};
|
|
51689
|
+
return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
|
|
51690
|
+
};
|
|
51691
|
+
if ( true && (typeof Int8Array === 'undefined' ? 'undefined' : _typeof(Int8Array)) !== 'object' && (_vue2.default.prototype.$isServer || typeof document.childNodes !== 'function')) {
|
|
51692
|
+
exports.isFunction = isFunction = function isFunction(obj) {
|
|
51693
|
+
return typeof obj === 'function' || false;
|
|
51694
|
+
};
|
|
51695
|
+
}
|
|
51696
|
+
exports.isFunction = isFunction;
|
|
51697
|
+
var isUndefined = exports.isUndefined = function isUndefined(val) {
|
|
51698
|
+
return val === void 0;
|
|
51699
|
+
};
|
|
51700
|
+
var isDefined = exports.isDefined = function isDefined(val) {
|
|
51701
|
+
return val !== undefined && val !== null;
|
|
51702
|
+
};
|
|
51703
|
+
|
|
51704
|
+
/***/ }),
|
|
51705
|
+
|
|
51706
|
+
/***/ 7040:
|
|
51707
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
51708
|
+
|
|
51709
|
+
"use strict";
|
|
51710
|
+
|
|
51711
|
+
/* eslint-disable es/no-symbol -- required for testing */
|
|
51712
|
+
var NATIVE_SYMBOL = __webpack_require__(4495);
|
|
51713
|
+
|
|
51714
|
+
module.exports = NATIVE_SYMBOL &&
|
|
51715
|
+
!Symbol.sham &&
|
|
51716
|
+
typeof Symbol.iterator == 'symbol';
|
|
51717
|
+
|
|
51718
|
+
|
|
51719
|
+
/***/ }),
|
|
51720
|
+
|
|
51721
|
+
/***/ 7055:
|
|
51722
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
51723
|
+
|
|
51724
|
+
"use strict";
|
|
51725
|
+
|
|
51726
|
+
var uncurryThis = __webpack_require__(9504);
|
|
51727
|
+
var fails = __webpack_require__(9039);
|
|
51728
|
+
var classof = __webpack_require__(2195);
|
|
51729
|
+
|
|
51730
|
+
var $Object = Object;
|
|
51731
|
+
var split = uncurryThis(''.split);
|
|
51732
|
+
|
|
51733
|
+
// fallback for non-array-like ES3 and non-enumerable old V8 strings
|
|
51734
|
+
module.exports = fails(function () {
|
|
51735
|
+
// throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
|
|
51736
|
+
// eslint-disable-next-line no-prototype-builtins -- safe
|
|
51737
|
+
return !$Object('z').propertyIsEnumerable(0);
|
|
51738
|
+
}) ? function (it) {
|
|
51739
|
+
return classof(it) === 'String' ? split(it, '') : $Object(it);
|
|
51740
|
+
} : $Object;
|
|
51741
|
+
|
|
51742
|
+
|
|
51743
|
+
/***/ }),
|
|
51744
|
+
|
|
51745
|
+
/***/ 7058:
|
|
51746
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
51747
|
+
|
|
51748
|
+
"use strict";
|
|
51749
|
+
// ESM COMPAT FLAG
|
|
51750
|
+
__webpack_require__.r(__webpack_exports__);
|
|
51751
|
+
|
|
51752
|
+
// EXPORTS
|
|
51753
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
51754
|
+
"default": function() { return /* binding */ View; }
|
|
51755
|
+
});
|
|
51756
|
+
|
|
51757
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
|
|
51758
|
+
var es_iterator_constructor = __webpack_require__(8111);
|
|
51759
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.drop.js
|
|
51760
|
+
var es_iterator_drop = __webpack_require__(9314);
|
|
51761
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/babel-loader/lib/index.js??clonedRuleSet-41.use!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-column-card/View.vue?vue&type=template&id=2dcb9de2&scoped=true
|
|
51762
|
+
|
|
51763
|
+
|
|
51764
|
+
|
|
51765
|
+
|
|
51766
|
+
var render = function render() {
|
|
51767
|
+
var _vm = this,
|
|
51768
|
+
_c = _vm._self._c;
|
|
51769
|
+
return _c('BaseComp', _vm._b({
|
|
51770
|
+
attrs: {
|
|
51771
|
+
"data": _vm.data,
|
|
51772
|
+
"nowCompId": _vm.nowCompId,
|
|
51773
|
+
"isOpcacity": _vm.isOpcacity,
|
|
51774
|
+
"isMask": false,
|
|
51775
|
+
"lang": _vm.lang,
|
|
51776
|
+
"showDel": false
|
|
51777
|
+
},
|
|
51778
|
+
on: {
|
|
51779
|
+
"getConfigData": _vm.getConfigData
|
|
51780
|
+
}
|
|
51781
|
+
}, 'BaseComp', _vm.$attrs, false), [_vm.isConfigPage ? _c('div', {
|
|
51782
|
+
staticClass: "main_drag hoverBorderClass",
|
|
51783
|
+
style: _vm.cardContainerStyle,
|
|
51784
|
+
attrs: {
|
|
51785
|
+
"id": `cardTarget${_vm.data.componentId}`
|
|
51786
|
+
},
|
|
51787
|
+
on: {
|
|
51788
|
+
"dragover": _vm.dragover,
|
|
51789
|
+
"dragend": function ($event) {
|
|
51790
|
+
_vm.showAddCom = false;
|
|
51791
|
+
},
|
|
51792
|
+
"drop": _vm.drop
|
|
51793
|
+
}
|
|
51794
|
+
}, [_c('Draggable', {
|
|
51795
|
+
staticStyle: {
|
|
51796
|
+
"position": "relative"
|
|
51797
|
+
},
|
|
51798
|
+
attrs: {
|
|
51799
|
+
"group": _vm.groupConfigForMain,
|
|
51800
|
+
"chosen-class": "chosen",
|
|
51801
|
+
"force-fallback": "true",
|
|
51802
|
+
"animation": "1000",
|
|
51803
|
+
"move": _vm.onMove
|
|
51804
|
+
},
|
|
51805
|
+
on: {
|
|
51806
|
+
"start": _vm.onStart,
|
|
51807
|
+
"end": function ($event) {
|
|
51808
|
+
_vm.showAddCom = false;
|
|
51809
|
+
}
|
|
51810
|
+
},
|
|
51811
|
+
model: {
|
|
51812
|
+
value: _vm.data.childList,
|
|
51813
|
+
callback: function ($$v) {
|
|
51814
|
+
_vm.$set(_vm.data, "childList", $$v);
|
|
51815
|
+
},
|
|
51816
|
+
expression: "data.childList"
|
|
51817
|
+
}
|
|
51818
|
+
}, [_vm._l(_vm.data.childList, function (item, index) {
|
|
51819
|
+
return _c('div', {
|
|
51820
|
+
key: item.componentId,
|
|
51821
|
+
staticStyle: {
|
|
51822
|
+
"position": "relative"
|
|
51823
|
+
}
|
|
51824
|
+
}, [_vm.showAddCom ? _c('div', {
|
|
51825
|
+
staticClass: "up_insert",
|
|
51826
|
+
attrs: {
|
|
51827
|
+
"id": `${item.componentId}-cardTargetup`
|
|
51828
|
+
}
|
|
51829
|
+
}, [_c('i', {
|
|
51830
|
+
staticClass: "icon-up",
|
|
51831
|
+
attrs: {
|
|
51832
|
+
"id": `${item.componentId}-upi`
|
|
51833
|
+
}
|
|
51834
|
+
}), _c('span', {
|
|
51835
|
+
attrs: {
|
|
51836
|
+
"id": `${item.componentId}-upspan`
|
|
51837
|
+
}
|
|
51838
|
+
}, [_vm._v("插入组件")])]) : _vm._e(), _c(item.cmsCompName, {
|
|
51839
|
+
tag: "component",
|
|
51840
|
+
style: {
|
|
51841
|
+
marginTop: _vm.showAddCom && index == 0 ? '20px' : '0px'
|
|
51842
|
+
},
|
|
51843
|
+
attrs: {
|
|
51844
|
+
"data": item,
|
|
51845
|
+
"lang": _vm.lang,
|
|
51846
|
+
"isOpcacity": _vm.isOpcacity,
|
|
51847
|
+
"nowCompId": _vm.nowCompId
|
|
51848
|
+
}
|
|
51849
|
+
})], 1);
|
|
51850
|
+
}), _vm.showAddCom ? _c('div', {
|
|
51851
|
+
staticClass: "up_insert insert_bottom",
|
|
51852
|
+
style: {
|
|
51853
|
+
bottom: _vm.data.childList.length ? '0px' : '-24px'
|
|
51854
|
+
},
|
|
51855
|
+
attrs: {
|
|
51856
|
+
"id": `-cardTargetdown`
|
|
51857
|
+
}
|
|
51858
|
+
}, [_c('i', {
|
|
51859
|
+
staticClass: "icon-up"
|
|
51860
|
+
}), _c('span', [_vm._v("插入组件")])]) : _vm._e()], 2)], 1) : _c('cms-view', _vm._b({
|
|
51861
|
+
style: _vm.cardContainerStyle,
|
|
51862
|
+
attrs: {
|
|
51863
|
+
"data": _vm.data.childList,
|
|
51864
|
+
"lang": _vm.lang,
|
|
51865
|
+
"isOpcacity": false
|
|
51866
|
+
}
|
|
51867
|
+
}, 'cms-view', _vm.$attrs, false))], 1);
|
|
51868
|
+
};
|
|
51869
|
+
var staticRenderFns = [];
|
|
51870
|
+
|
|
51871
|
+
;// ./package/cms-column-card/View.vue?vue&type=template&id=2dcb9de2&scoped=true
|
|
51872
|
+
|
|
51873
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
|
|
51874
|
+
var es_array_push = __webpack_require__(4114);
|
|
51875
|
+
// EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
|
|
51876
|
+
var baseComp = __webpack_require__(4128);
|
|
51877
|
+
// EXTERNAL MODULE: ./node_modules/vuedraggable/dist/vuedraggable.umd.js
|
|
51878
|
+
var vuedraggable_umd = __webpack_require__(1527);
|
|
51879
|
+
var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd);
|
|
51880
|
+
// EXTERNAL MODULE: ./package/baseConfig.js
|
|
51881
|
+
var baseConfig = __webpack_require__(649);
|
|
51882
|
+
// EXTERNAL MODULE: ./src/views/standard_page.js
|
|
51883
|
+
var standard_page = __webpack_require__(8134);
|
|
51884
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/babel-loader/lib/index.js??clonedRuleSet-41.use!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-column-card/View.vue?vue&type=script&lang=js
|
|
52134
51885
|
|
|
52135
51886
|
|
|
52136
|
-
/***/ }),
|
|
52137
51887
|
|
|
52138
|
-
/***/ 6980:
|
|
52139
|
-
/***/ (function(module) {
|
|
52140
51888
|
|
|
52141
|
-
"use strict";
|
|
52142
51889
|
|
|
52143
|
-
module.exports = function (bitmap, value) {
|
|
52144
|
-
return {
|
|
52145
|
-
enumerable: !(bitmap & 1),
|
|
52146
|
-
configurable: !(bitmap & 2),
|
|
52147
|
-
writable: !(bitmap & 4),
|
|
52148
|
-
value: value
|
|
52149
|
-
};
|
|
52150
|
-
};
|
|
52151
51890
|
|
|
51891
|
+
/* harmony default export */ var Viewvue_type_script_lang_js = ({
|
|
51892
|
+
name: "cms-column-card",
|
|
51893
|
+
components: {
|
|
51894
|
+
BaseComp: baseComp["default"],
|
|
51895
|
+
Draggable: (vuedraggable_umd_default())
|
|
51896
|
+
},
|
|
51897
|
+
props: {
|
|
51898
|
+
data: {
|
|
51899
|
+
type: Object,
|
|
51900
|
+
default: () => {
|
|
51901
|
+
return {};
|
|
51902
|
+
}
|
|
51903
|
+
},
|
|
51904
|
+
nowCompId: {
|
|
51905
|
+
type: [String, Number],
|
|
51906
|
+
default: ""
|
|
51907
|
+
},
|
|
51908
|
+
isOpcacity: {
|
|
51909
|
+
type: Boolean,
|
|
51910
|
+
default: true
|
|
51911
|
+
},
|
|
51912
|
+
lang: {
|
|
51913
|
+
type: String,
|
|
51914
|
+
default: "zh-HK"
|
|
51915
|
+
},
|
|
51916
|
+
isMobile: {
|
|
51917
|
+
type: Boolean,
|
|
51918
|
+
default: false
|
|
51919
|
+
},
|
|
51920
|
+
mobileLayout: {
|
|
51921
|
+
type: String,
|
|
51922
|
+
default: ""
|
|
51923
|
+
}
|
|
51924
|
+
},
|
|
51925
|
+
data() {
|
|
51926
|
+
return {
|
|
51927
|
+
configData: {},
|
|
51928
|
+
messFold: true,
|
|
51929
|
+
showAddCom: false,
|
|
51930
|
+
temporaryList: []
|
|
51931
|
+
};
|
|
51932
|
+
},
|
|
51933
|
+
computed: {
|
|
51934
|
+
isConfigPage() {
|
|
51935
|
+
return this.$EventBus && this.isOpcacity;
|
|
51936
|
+
},
|
|
51937
|
+
groupConfigForMain() {
|
|
51938
|
+
return {
|
|
51939
|
+
name: "task",
|
|
51940
|
+
pull: true,
|
|
51941
|
+
// A列表的元素可以被拖出
|
|
51942
|
+
put: (to, from, dragEl) => {
|
|
51943
|
+
console.log(from.el.classList);
|
|
51944
|
+
if (from.el.classList.contains("main_drag")) {
|
|
51945
|
+
const dataId = this.findFirstComponentKey(dragEl);
|
|
51946
|
+
const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column"];
|
|
51947
|
+
console.log("allowedComponents", dataId);
|
|
51948
|
+
if (dataId === "cms-column") {
|
|
51949
|
+
if (!this.checkColumnNestingLevel()) {
|
|
51950
|
+
console.log("cms-column 嵌套层级超出限制");
|
|
51951
|
+
return false;
|
|
51952
|
+
}
|
|
51953
|
+
}
|
|
51954
|
+
return allowedComponents.includes(dataId);
|
|
51955
|
+
}
|
|
51956
|
+
return true;
|
|
51957
|
+
}
|
|
51958
|
+
};
|
|
51959
|
+
},
|
|
51960
|
+
// 卡片容器样式
|
|
51961
|
+
cardContainerStyle() {
|
|
51962
|
+
return {
|
|
51963
|
+
backgroundImage: this.configData.backgroundImage ? `url('${this.configData.backgroundImage}')` : "none",
|
|
51964
|
+
backgroundSize: "cover",
|
|
51965
|
+
backgroundRepeat: "no-repeat",
|
|
51966
|
+
backgroundPosition: "center center",
|
|
51967
|
+
height: this.getContainerHeight(),
|
|
51968
|
+
border: this.getContainerBorder(),
|
|
51969
|
+
borderRadius: this.getContainerBorderRadius(),
|
|
51970
|
+
backgroundColor: this.configData.backgroundColor || "transparent",
|
|
51971
|
+
boxShadow: this.configData.boxShadow || "none"
|
|
51972
|
+
};
|
|
51973
|
+
}
|
|
51974
|
+
},
|
|
51975
|
+
mounted() {
|
|
51976
|
+
if (this.$EventBus) {
|
|
51977
|
+
this.$EventBus.$on("handleDragEnd", () => {
|
|
51978
|
+
this.showAddCom = false;
|
|
51979
|
+
});
|
|
51980
|
+
}
|
|
51981
|
+
},
|
|
51982
|
+
watch: {},
|
|
51983
|
+
methods: {
|
|
51984
|
+
findFirstComponentKey(root) {
|
|
51985
|
+
var _root$querySelector;
|
|
51986
|
+
if (!root) return null;
|
|
52152
51987
|
|
|
52153
|
-
|
|
51988
|
+
// 若起点自身就有
|
|
51989
|
+
if (root.nodeType === 1 && root.hasAttribute("component-key")) {
|
|
51990
|
+
return root.getAttribute("component-key");
|
|
51991
|
+
}
|
|
52154
51992
|
|
|
52155
|
-
|
|
52156
|
-
|
|
51993
|
+
// 向下查找第一个匹配的后代
|
|
51994
|
+
const el = (_root$querySelector = root.querySelector) === null || _root$querySelector === void 0 ? void 0 : _root$querySelector.call(root, "[component-key]");
|
|
51995
|
+
return el ? el.getAttribute("component-key") : null;
|
|
51996
|
+
},
|
|
51997
|
+
// 获取容器高度
|
|
51998
|
+
getContainerHeight() {
|
|
51999
|
+
if (this.configData.heightType === "fixed") {
|
|
52000
|
+
return `${this.configData.fixedHeight}px`;
|
|
52001
|
+
}
|
|
52002
|
+
return this.isMobile && this.mobileLayout == "vertical" ? "auto" : "100%";
|
|
52003
|
+
},
|
|
52004
|
+
// 获取容器边框
|
|
52005
|
+
getContainerBorder() {
|
|
52006
|
+
if (this.configData.borderWidth) {
|
|
52007
|
+
return `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}`;
|
|
52008
|
+
}
|
|
52009
|
+
return "none";
|
|
52010
|
+
},
|
|
52011
|
+
// 获取容器圆角
|
|
52012
|
+
getContainerBorderRadius() {
|
|
52013
|
+
if (this.configData.borderRadius) {
|
|
52014
|
+
return `${this.configData.borderRadius}px`;
|
|
52015
|
+
}
|
|
52016
|
+
return "0";
|
|
52017
|
+
},
|
|
52018
|
+
getConfigData(configData) {
|
|
52019
|
+
this.configData = configData;
|
|
52020
|
+
},
|
|
52021
|
+
foldMessText() {
|
|
52022
|
+
this.messFold = !this.messFold;
|
|
52023
|
+
},
|
|
52024
|
+
decodeJumpUrl(url) {
|
|
52025
|
+
if (!url) return;
|
|
52026
|
+
top.location.href = url;
|
|
52027
|
+
},
|
|
52028
|
+
onStart(evt) {
|
|
52029
|
+
console.log("drag start in column-card", evt);
|
|
52030
|
+
this.showAddCom = true;
|
|
52031
|
+
},
|
|
52032
|
+
// 限制拖拽的组件类型
|
|
52033
|
+
onMove(evt) {
|
|
52034
|
+
const {
|
|
52035
|
+
draggedContext
|
|
52036
|
+
} = evt;
|
|
52157
52037
|
|
|
52158
|
-
|
|
52038
|
+
// 允许的组件类型
|
|
52039
|
+
const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
|
|
52040
|
+
];
|
|
52159
52041
|
|
|
52042
|
+
// 如果是从外部拖入的组件
|
|
52043
|
+
if (draggedContext && draggedContext.element) {
|
|
52044
|
+
const componentType = draggedContext.element.cmsCompName;
|
|
52045
|
+
if (componentType && !allowedComponents.includes(componentType)) {
|
|
52046
|
+
console.log("draggedContext.element", draggedContext.element);
|
|
52047
|
+
console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
|
|
52048
|
+
return false;
|
|
52049
|
+
}
|
|
52160
52050
|
|
|
52161
|
-
|
|
52162
|
-
|
|
52163
|
-
|
|
52164
|
-
|
|
52165
|
-
|
|
52166
|
-
|
|
52167
|
-
|
|
52168
|
-
|
|
52169
|
-
|
|
52170
|
-
|
|
52171
|
-
|
|
52172
|
-
|
|
52173
|
-
|
|
52174
|
-
|
|
52175
|
-
|
|
52176
|
-
|
|
52177
|
-
|
|
52178
|
-
|
|
52179
|
-
|
|
52180
|
-
|
|
52181
|
-
default: obj
|
|
52182
|
-
};
|
|
52183
|
-
}
|
|
52184
|
-
function isString(obj) {
|
|
52185
|
-
return Object.prototype.toString.call(obj) === '[object String]';
|
|
52186
|
-
}
|
|
52187
|
-
function isObject(obj) {
|
|
52188
|
-
return Object.prototype.toString.call(obj) === '[object Object]';
|
|
52189
|
-
}
|
|
52190
|
-
function isHtmlElement(node) {
|
|
52191
|
-
return node && node.nodeType === Node.ELEMENT_NODE;
|
|
52192
|
-
}
|
|
52051
|
+
// 特殊处理 cms-column:检查嵌套层级
|
|
52052
|
+
if (componentType === "cms-column") {
|
|
52053
|
+
if (!this.checkColumnNestingLevel()) {
|
|
52054
|
+
console.log("cms-column 嵌套层级超出限制");
|
|
52055
|
+
return false;
|
|
52056
|
+
}
|
|
52057
|
+
}
|
|
52058
|
+
}
|
|
52059
|
+
return true;
|
|
52060
|
+
},
|
|
52061
|
+
// 检查 cms-column 嵌套层级
|
|
52062
|
+
checkColumnNestingLevel() {
|
|
52063
|
+
// 检查当前 column-card 是否已经在 cms-column 内部
|
|
52064
|
+
let parent = this.$parent;
|
|
52065
|
+
let columnDepth = 0;
|
|
52066
|
+
while (parent) {
|
|
52067
|
+
// 检查父组件是否是 cms-column 或包含 cms-column
|
|
52068
|
+
if (parent.$options.name === "cms-column" || parent.$data && parent.$data.data && parent.$data.data.cmsCompName === "cms-column") {
|
|
52069
|
+
columnDepth++;
|
|
52070
|
+
}
|
|
52193
52071
|
|
|
52194
|
-
|
|
52195
|
-
|
|
52196
|
-
|
|
52197
|
-
|
|
52198
|
-
|
|
52199
|
-
|
|
52200
|
-
|
|
52201
|
-
};
|
|
52202
|
-
|
|
52203
|
-
|
|
52204
|
-
|
|
52205
|
-
|
|
52206
|
-
|
|
52207
|
-
|
|
52208
|
-
|
|
52209
|
-
|
|
52210
|
-
|
|
52211
|
-
|
|
52212
|
-
|
|
52213
|
-
|
|
52072
|
+
// 如果已经有一层 cms-column,则不允许再嵌套
|
|
52073
|
+
if (columnDepth >= 2) {
|
|
52074
|
+
console.log(`检测到 cms-column 嵌套层级: ${columnDepth}, 超出限制`);
|
|
52075
|
+
return false;
|
|
52076
|
+
}
|
|
52077
|
+
parent = parent.$parent;
|
|
52078
|
+
}
|
|
52079
|
+
console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
|
|
52080
|
+
return true;
|
|
52081
|
+
},
|
|
52082
|
+
// 处理拖拽悬停
|
|
52083
|
+
dragover(e) {
|
|
52084
|
+
e.preventDefault();
|
|
52085
|
+
this.showAddCom = true;
|
|
52086
|
+
},
|
|
52087
|
+
// 处理拖拽放置
|
|
52088
|
+
drop(e) {
|
|
52089
|
+
e.preventDefault();
|
|
52090
|
+
const componentKey = e.dataTransfer.getData("componentKey");
|
|
52091
|
+
let temporaryId = "";
|
|
52092
|
+
this.temporaryList = e.dataTransfer.getData("temporaryList") ? JSON.parse(e.dataTransfer.getData("temporaryList")) : [];
|
|
52093
|
+
console.log("cms-colum-card-drop", componentKey, this.temporaryList);
|
|
52094
|
+
if (!componentKey) return;
|
|
52095
|
+
const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
|
|
52096
|
+
const isTemporary = isTemporaryItem === "true";
|
|
52097
|
+
if (isTemporary) {
|
|
52098
|
+
temporaryId = (0,standard_page/* getCopyTemplateCompConfig */.L7)(this.temporaryList, componentKey).cmsCompName;
|
|
52099
|
+
}
|
|
52100
|
+
const componentType = isTemporary ? temporaryId : componentKey;
|
|
52101
|
+
// 允许的组件类型
|
|
52102
|
+
const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
|
|
52103
|
+
];
|
|
52214
52104
|
|
|
52215
|
-
|
|
52105
|
+
// 检查组件类型是否允许
|
|
52106
|
+
if (!allowedComponents.includes(componentType)) {
|
|
52107
|
+
console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
|
|
52108
|
+
this.$message && this.$message.warning(`该组件类型不支持拖入卡片容器`);
|
|
52109
|
+
this.showAddCom = false;
|
|
52110
|
+
return;
|
|
52111
|
+
}
|
|
52216
52112
|
|
|
52217
|
-
|
|
52218
|
-
|
|
52113
|
+
// 特殊处理 cms-column:检查嵌套层级
|
|
52114
|
+
if (componentType === "cms-column") {
|
|
52115
|
+
if (!this.checkColumnNestingLevel()) {
|
|
52116
|
+
console.log("cms-column 嵌套层级超出限制");
|
|
52117
|
+
this.$message && this.$message.warning(`cms-column 只能嵌套一层`);
|
|
52118
|
+
this.showAddCom = false;
|
|
52119
|
+
return;
|
|
52120
|
+
}
|
|
52121
|
+
}
|
|
52122
|
+
this.addOneComp(e, componentKey);
|
|
52123
|
+
},
|
|
52124
|
+
// 添加组件到卡片容器
|
|
52125
|
+
addOneComp(e, componentKey) {
|
|
52126
|
+
this.showAddCom = false;
|
|
52127
|
+
console.log("drop to column-card", componentKey);
|
|
52219
52128
|
|
|
52220
|
-
|
|
52129
|
+
// 动态导入组件配置
|
|
52130
|
+
let initCompData;
|
|
52131
|
+
try {
|
|
52132
|
+
const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
|
|
52133
|
+
const isTemporary = isTemporaryItem === "true";
|
|
52134
|
+
if (isTemporary) {
|
|
52135
|
+
initCompData = (0,standard_page/* getCopyTemplateCompConfig */.L7)(this.temporaryList, componentKey);
|
|
52136
|
+
} else {
|
|
52137
|
+
initCompData = __webpack_require__(1640)(`./${componentKey}`).default.settings(componentKey);
|
|
52138
|
+
}
|
|
52139
|
+
if (!isTemporary) {
|
|
52140
|
+
initCompData = {
|
|
52141
|
+
...initCompData,
|
|
52142
|
+
styleConfig: {
|
|
52143
|
+
pc: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(16, 16, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")],
|
|
52144
|
+
mb: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(12, 12, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")]
|
|
52145
|
+
}
|
|
52146
|
+
};
|
|
52147
|
+
}
|
|
52148
|
+
} catch (error) {
|
|
52149
|
+
console.error(`无法加载组件 ${componentKey}:`, error);
|
|
52150
|
+
this.$message && this.$message.error(`组件加载失败`);
|
|
52151
|
+
return;
|
|
52152
|
+
}
|
|
52153
|
+
const toElementId = e.toElement.id;
|
|
52154
|
+
if (toElementId === `cardTarget${this.data.componentId}` || toElementId.includes("cardTargetdown")) {
|
|
52155
|
+
// 添加到卡片容器末尾
|
|
52156
|
+
this.data.childList.push(initCompData);
|
|
52157
|
+
} else if (toElementId.includes("cardTargetup")) {
|
|
52158
|
+
// 插入到指定位置
|
|
52159
|
+
const underComponentId = toElementId.split("-cardTargetup")[0];
|
|
52160
|
+
const index = this.data.childList.findIndex(item => item.componentId === underComponentId);
|
|
52161
|
+
if (index !== -1) {
|
|
52162
|
+
this.data.childList.splice(index, 0, initCompData);
|
|
52163
|
+
}
|
|
52164
|
+
}
|
|
52221
52165
|
|
|
52222
|
-
|
|
52223
|
-
|
|
52166
|
+
// 触发数据更新
|
|
52167
|
+
this.$emit("update:data", this.data);
|
|
52168
|
+
if (componentKey === "cms-column") {
|
|
52169
|
+
this.$EventBus.$emit("handleNowComp", initCompData);
|
|
52170
|
+
}
|
|
52171
|
+
}
|
|
52172
|
+
}
|
|
52173
|
+
});
|
|
52174
|
+
;// ./package/cms-column-card/View.vue?vue&type=script&lang=js
|
|
52175
|
+
/* harmony default export */ var cms_column_card_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
|
|
52176
|
+
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-42.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-column-card/View.vue?vue&type=style&index=0&id=2dcb9de2&prod&lang=scss&scoped=true
|
|
52177
|
+
// extracted by mini-css-extract-plugin
|
|
52224
52178
|
|
|
52225
|
-
|
|
52226
|
-
!Symbol.sham &&
|
|
52227
|
-
typeof Symbol.iterator == 'symbol';
|
|
52179
|
+
;// ./package/cms-column-card/View.vue?vue&type=style&index=0&id=2dcb9de2&prod&lang=scss&scoped=true
|
|
52228
52180
|
|
|
52181
|
+
// EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
|
|
52182
|
+
var componentNormalizer = __webpack_require__(1656);
|
|
52183
|
+
;// ./package/cms-column-card/View.vue
|
|
52229
52184
|
|
|
52230
|
-
/***/ }),
|
|
52231
52185
|
|
|
52232
|
-
/***/ 7055:
|
|
52233
|
-
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
52234
52186
|
|
|
52235
|
-
|
|
52187
|
+
;
|
|
52236
52188
|
|
|
52237
|
-
var uncurryThis = __webpack_require__(9504);
|
|
52238
|
-
var fails = __webpack_require__(9039);
|
|
52239
|
-
var classof = __webpack_require__(2195);
|
|
52240
52189
|
|
|
52241
|
-
|
|
52242
|
-
var split = uncurryThis(''.split);
|
|
52190
|
+
/* normalize component */
|
|
52243
52191
|
|
|
52244
|
-
|
|
52245
|
-
|
|
52246
|
-
|
|
52247
|
-
|
|
52248
|
-
|
|
52249
|
-
|
|
52250
|
-
|
|
52251
|
-
|
|
52192
|
+
var component = (0,componentNormalizer/* default */.A)(
|
|
52193
|
+
cms_column_card_Viewvue_type_script_lang_js,
|
|
52194
|
+
render,
|
|
52195
|
+
staticRenderFns,
|
|
52196
|
+
false,
|
|
52197
|
+
null,
|
|
52198
|
+
"2dcb9de2",
|
|
52199
|
+
null
|
|
52200
|
+
|
|
52201
|
+
)
|
|
52252
52202
|
|
|
52203
|
+
/* harmony default export */ var View = (component.exports);
|
|
52253
52204
|
|
|
52254
52205
|
/***/ }),
|
|
52255
52206
|
|
|
@@ -54248,6 +54199,75 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
|
|
|
54248
54199
|
|
|
54249
54200
|
/***/ }),
|
|
54250
54201
|
|
|
54202
|
+
/***/ 8134:
|
|
54203
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
54204
|
+
|
|
54205
|
+
"use strict";
|
|
54206
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
54207
|
+
/* harmony export */ L7: function() { return /* binding */ getCopyTemplateCompConfig; }
|
|
54208
|
+
/* harmony export */ });
|
|
54209
|
+
/* unused harmony exports standard_page_list, getComponentKey, isStaticComp, getWujieCompInfo */
|
|
54210
|
+
/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8111);
|
|
54211
|
+
/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
54212
|
+
/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(116);
|
|
54213
|
+
/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
54214
|
+
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1996);
|
|
54215
|
+
|
|
54216
|
+
|
|
54217
|
+
|
|
54218
|
+
|
|
54219
|
+
|
|
54220
|
+
const standard_page_list = [{
|
|
54221
|
+
id: 1,
|
|
54222
|
+
componentId: 1,
|
|
54223
|
+
componentName: "范本1-防诈骗提示",
|
|
54224
|
+
standList: ["cms-banner", "cms-titleCenter", "cms-lineThree"]
|
|
54225
|
+
}, {
|
|
54226
|
+
id: 2,
|
|
54227
|
+
componentId: 2,
|
|
54228
|
+
componentName: "范本2-员工优惠",
|
|
54229
|
+
standList: ["cms-banner", "cms-description", "cms-activityCountdown", "cms-titleLeft", "cms-proCard", "cms-termsAndConditions"]
|
|
54230
|
+
}];
|
|
54231
|
+
const getComponentKey = (compList, id, noCompId = false) => {
|
|
54232
|
+
if (noCompId) return id;
|
|
54233
|
+
let compConfig = compList.find(item => item.id == id);
|
|
54234
|
+
if (compConfig.type == "1") {
|
|
54235
|
+
return compConfig.componentId;
|
|
54236
|
+
}
|
|
54237
|
+
return "cms-dynamic-comp";
|
|
54238
|
+
};
|
|
54239
|
+
const getCopyTemplateCompConfig = (compList, componentKey) => {
|
|
54240
|
+
let otherConfig = {};
|
|
54241
|
+
const configureJson = compList.find(item => item.id == componentKey).configureJson;
|
|
54242
|
+
if (configureJson.wujieConfig) {
|
|
54243
|
+
//如果是第三方组件加一个临时标识
|
|
54244
|
+
otherConfig = {
|
|
54245
|
+
originalComponentId: configureJson.componentId,
|
|
54246
|
+
originalVersionId: configureJson.wujieConfig.versionId,
|
|
54247
|
+
operation: "copyTemplate"
|
|
54248
|
+
};
|
|
54249
|
+
}
|
|
54250
|
+
return {
|
|
54251
|
+
...configureJson,
|
|
54252
|
+
componentId: (0,_utils__WEBPACK_IMPORTED_MODULE_2__/* .getUuidCode */ .J0)(32),
|
|
54253
|
+
...otherConfig
|
|
54254
|
+
};
|
|
54255
|
+
};
|
|
54256
|
+
const isStaticComp = componentKey => {
|
|
54257
|
+
return ["cms-header", "cms-footer", "cms-breadCrumb"].includes(componentKey);
|
|
54258
|
+
};
|
|
54259
|
+
const getWujieCompInfo = (compList, componentId, isTemplate) => {
|
|
54260
|
+
let compConfig = compList.find(item => item.id == componentId);
|
|
54261
|
+
if (isTemplate) if (compConfig.type == "1") {
|
|
54262
|
+
return compConfig;
|
|
54263
|
+
}
|
|
54264
|
+
return {
|
|
54265
|
+
...compConfig
|
|
54266
|
+
};
|
|
54267
|
+
};
|
|
54268
|
+
|
|
54269
|
+
/***/ }),
|
|
54270
|
+
|
|
54251
54271
|
/***/ 8216:
|
|
54252
54272
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
54253
54273
|
|
|
@@ -57831,6 +57851,50 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
|
|
|
57831
57851
|
|
|
57832
57852
|
/***/ }),
|
|
57833
57853
|
|
|
57854
|
+
/***/ 8892:
|
|
57855
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
57856
|
+
|
|
57857
|
+
"use strict";
|
|
57858
|
+
__webpack_require__.r(__webpack_exports__);
|
|
57859
|
+
/* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(649);
|
|
57860
|
+
|
|
57861
|
+
const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 9251));
|
|
57862
|
+
const langData = {
|
|
57863
|
+
configList: [{
|
|
57864
|
+
id: Math.random().toString(),
|
|
57865
|
+
name: "栏目名称",
|
|
57866
|
+
tabList: []
|
|
57867
|
+
}]
|
|
57868
|
+
};
|
|
57869
|
+
const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
|
|
57870
|
+
configList: {
|
|
57871
|
+
label: "栏目配置",
|
|
57872
|
+
value: [{
|
|
57873
|
+
id: {
|
|
57874
|
+
label: ""
|
|
57875
|
+
},
|
|
57876
|
+
name: {
|
|
57877
|
+
label: "栏目名称"
|
|
57878
|
+
}
|
|
57879
|
+
}]
|
|
57880
|
+
}
|
|
57881
|
+
});
|
|
57882
|
+
const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
|
|
57883
|
+
/* harmony default export */ __webpack_exports__["default"] = ({
|
|
57884
|
+
View,
|
|
57885
|
+
validateSchema,
|
|
57886
|
+
configDataType,
|
|
57887
|
+
langData,
|
|
57888
|
+
settings: cmsCompName => {
|
|
57889
|
+
return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
|
|
57890
|
+
cmsCompName,
|
|
57891
|
+
langData
|
|
57892
|
+
});
|
|
57893
|
+
}
|
|
57894
|
+
});
|
|
57895
|
+
|
|
57896
|
+
/***/ }),
|
|
57897
|
+
|
|
57834
57898
|
/***/ 8895:
|
|
57835
57899
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
57836
57900
|
|
|
@@ -58212,6 +58276,509 @@ module.exports = function sign(number) {
|
|
|
58212
58276
|
|
|
58213
58277
|
/***/ }),
|
|
58214
58278
|
|
|
58279
|
+
/***/ 9251:
|
|
58280
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
58281
|
+
|
|
58282
|
+
"use strict";
|
|
58283
|
+
// ESM COMPAT FLAG
|
|
58284
|
+
__webpack_require__.r(__webpack_exports__);
|
|
58285
|
+
|
|
58286
|
+
// EXPORTS
|
|
58287
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
58288
|
+
"default": function() { return /* binding */ View; }
|
|
58289
|
+
});
|
|
58290
|
+
|
|
58291
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
|
|
58292
|
+
var es_iterator_constructor = __webpack_require__(8111);
|
|
58293
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.drop.js
|
|
58294
|
+
var es_iterator_drop = __webpack_require__(9314);
|
|
58295
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/babel-loader/lib/index.js??clonedRuleSet-41.use!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-tab/View.vue?vue&type=template&id=29a0258e&scoped=true
|
|
58296
|
+
|
|
58297
|
+
|
|
58298
|
+
|
|
58299
|
+
|
|
58300
|
+
var render = function render() {
|
|
58301
|
+
var _vm = this,
|
|
58302
|
+
_c = _vm._self._c;
|
|
58303
|
+
return _c('BaseComp', _vm._b({
|
|
58304
|
+
attrs: {
|
|
58305
|
+
"data": _vm.data,
|
|
58306
|
+
"nowCompId": _vm.nowCompId,
|
|
58307
|
+
"isOpcacity": _vm.isOpcacity,
|
|
58308
|
+
"isMask": false,
|
|
58309
|
+
"lang": _vm.lang
|
|
58310
|
+
},
|
|
58311
|
+
on: {
|
|
58312
|
+
"getConfigData": _vm.getConfigData
|
|
58313
|
+
}
|
|
58314
|
+
}, 'BaseComp', _vm.$attrs, false), [_c('section', {
|
|
58315
|
+
staticClass: "cmhk-home_main"
|
|
58316
|
+
}, [_c('div', {
|
|
58317
|
+
staticClass: "page-tab-swiper_wrapper",
|
|
58318
|
+
class: _vm.swiperArrow == true ? '' : 'active'
|
|
58319
|
+
}, [_c('div', {
|
|
58320
|
+
ref: "barparent",
|
|
58321
|
+
staticClass: "page-tab-swiper common-swiper_tab",
|
|
58322
|
+
attrs: {
|
|
58323
|
+
"id": "tab-swiper"
|
|
58324
|
+
}
|
|
58325
|
+
}, [_c('div', {
|
|
58326
|
+
staticClass: "swiper-wrapper"
|
|
58327
|
+
}, _vm._l(_vm.configList, function (item, index) {
|
|
58328
|
+
return _c('div', {
|
|
58329
|
+
key: `${index}${item === null || item === void 0 ? void 0 : item.id}`,
|
|
58330
|
+
staticClass: "swiper-slide",
|
|
58331
|
+
class: index == _vm.currentTab ? 'active' : '',
|
|
58332
|
+
on: {
|
|
58333
|
+
"click": function ($event) {
|
|
58334
|
+
$event.stopPropagation();
|
|
58335
|
+
return _vm.changeTab(index);
|
|
58336
|
+
}
|
|
58337
|
+
}
|
|
58338
|
+
}, [_vm._v(" " + _vm._s(item.name) + " ")]);
|
|
58339
|
+
}), 0)])]), _vm.configList[_vm.currentTab] ? _c('div', {
|
|
58340
|
+
staticClass: "page-tab-swiper-body"
|
|
58341
|
+
}, [_vm.isConfigPage ? _c('div', {
|
|
58342
|
+
staticClass: "main_drag hoverBorderClass min-h",
|
|
58343
|
+
attrs: {
|
|
58344
|
+
"id": `tabTarget${_vm.currentTab}`
|
|
58345
|
+
},
|
|
58346
|
+
on: {
|
|
58347
|
+
"dragover": _vm.dragover,
|
|
58348
|
+
"dragend": function ($event) {
|
|
58349
|
+
_vm.showAddCom = false;
|
|
58350
|
+
},
|
|
58351
|
+
"drop": _vm.drop
|
|
58352
|
+
}
|
|
58353
|
+
}, [_c('Draggable', {
|
|
58354
|
+
staticStyle: {
|
|
58355
|
+
"position": "relative"
|
|
58356
|
+
},
|
|
58357
|
+
attrs: {
|
|
58358
|
+
"group": _vm.groupConfigForMain,
|
|
58359
|
+
"chosen-class": "chosen",
|
|
58360
|
+
"force-fallback": "true",
|
|
58361
|
+
"animation": "1000",
|
|
58362
|
+
"move": _vm.onMove
|
|
58363
|
+
},
|
|
58364
|
+
on: {
|
|
58365
|
+
"start": _vm.onStart,
|
|
58366
|
+
"end": function ($event) {
|
|
58367
|
+
_vm.showAddCom = false;
|
|
58368
|
+
}
|
|
58369
|
+
},
|
|
58370
|
+
model: {
|
|
58371
|
+
value: _vm.configList[_vm.currentTab].tabList,
|
|
58372
|
+
callback: function ($$v) {
|
|
58373
|
+
_vm.$set(_vm.configList[_vm.currentTab], "tabList", $$v);
|
|
58374
|
+
},
|
|
58375
|
+
expression: "configList[currentTab].tabList"
|
|
58376
|
+
}
|
|
58377
|
+
}, [_vm._l(_vm.configList[_vm.currentTab].tabList, function (item, index) {
|
|
58378
|
+
return _c('div', {
|
|
58379
|
+
key: item.componentId,
|
|
58380
|
+
staticStyle: {
|
|
58381
|
+
"position": "relative"
|
|
58382
|
+
}
|
|
58383
|
+
}, [_vm.showAddCom ? _c('div', {
|
|
58384
|
+
staticClass: "up_insert",
|
|
58385
|
+
attrs: {
|
|
58386
|
+
"id": `${item.componentId}-tabTargetup`
|
|
58387
|
+
}
|
|
58388
|
+
}, [_c('i', {
|
|
58389
|
+
staticClass: "icon-up",
|
|
58390
|
+
attrs: {
|
|
58391
|
+
"id": `${item.componentId}-upi`
|
|
58392
|
+
}
|
|
58393
|
+
}), _c('span', {
|
|
58394
|
+
attrs: {
|
|
58395
|
+
"id": `${item.componentId}-upspan`
|
|
58396
|
+
}
|
|
58397
|
+
}, [_vm._v("插入组件")])]) : _vm._e(), _c(item.cmsCompName, {
|
|
58398
|
+
tag: "component",
|
|
58399
|
+
style: {
|
|
58400
|
+
marginTop: _vm.showAddCom && index == 0 ? '20px' : '0px'
|
|
58401
|
+
},
|
|
58402
|
+
attrs: {
|
|
58403
|
+
"data": item,
|
|
58404
|
+
"lang": _vm.lang,
|
|
58405
|
+
"isOpcacity": _vm.isOpcacity,
|
|
58406
|
+
"nowCompId": _vm.nowCompId
|
|
58407
|
+
}
|
|
58408
|
+
})], 1);
|
|
58409
|
+
}), _vm.showAddCom ? _c('div', {
|
|
58410
|
+
staticClass: "up_insert insert_bottom",
|
|
58411
|
+
style: {
|
|
58412
|
+
bottom: _vm.configList[_vm.currentTab].tabList.length ? '0px' : '-24px'
|
|
58413
|
+
},
|
|
58414
|
+
attrs: {
|
|
58415
|
+
"id": `-tabTargetdown`
|
|
58416
|
+
}
|
|
58417
|
+
}, [_c('i', {
|
|
58418
|
+
staticClass: "icon-up"
|
|
58419
|
+
}), _c('span', [_vm._v("插入组件")])]) : _vm._e()], 2)], 1) : _c('cms-view', _vm._b({
|
|
58420
|
+
attrs: {
|
|
58421
|
+
"data": _vm.configList[_vm.currentTab].tabList,
|
|
58422
|
+
"lang": _vm.lang,
|
|
58423
|
+
"isOpcacity": false
|
|
58424
|
+
}
|
|
58425
|
+
}, 'cms-view', _vm.$attrs, false))], 1) : _vm._e()])]);
|
|
58426
|
+
};
|
|
58427
|
+
var staticRenderFns = [];
|
|
58428
|
+
|
|
58429
|
+
;// ./package/cms-tab/View.vue?vue&type=template&id=29a0258e&scoped=true
|
|
58430
|
+
|
|
58431
|
+
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
|
|
58432
|
+
var es_array_push = __webpack_require__(4114);
|
|
58433
|
+
// EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.js
|
|
58434
|
+
var swiper = __webpack_require__(2791);
|
|
58435
|
+
// EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
|
|
58436
|
+
var swiper_esm_bundle = __webpack_require__(4418);
|
|
58437
|
+
// EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
|
|
58438
|
+
var baseComp = __webpack_require__(4128);
|
|
58439
|
+
// EXTERNAL MODULE: ./node_modules/vuedraggable/dist/vuedraggable.umd.js
|
|
58440
|
+
var vuedraggable_umd = __webpack_require__(1527);
|
|
58441
|
+
var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd);
|
|
58442
|
+
// EXTERNAL MODULE: ./package/baseConfig.js
|
|
58443
|
+
var baseConfig = __webpack_require__(649);
|
|
58444
|
+
// EXTERNAL MODULE: ./src/views/standard_page.js
|
|
58445
|
+
var standard_page = __webpack_require__(8134);
|
|
58446
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/babel-loader/lib/index.js??clonedRuleSet-41.use!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-tab/View.vue?vue&type=script&lang=js
|
|
58447
|
+
|
|
58448
|
+
|
|
58449
|
+
|
|
58450
|
+
|
|
58451
|
+
|
|
58452
|
+
|
|
58453
|
+
|
|
58454
|
+
|
|
58455
|
+
|
|
58456
|
+
/* harmony default export */ var Viewvue_type_script_lang_js = ({
|
|
58457
|
+
name: "cms-tab",
|
|
58458
|
+
components: {
|
|
58459
|
+
BaseComp: baseComp["default"],
|
|
58460
|
+
Draggable: (vuedraggable_umd_default())
|
|
58461
|
+
},
|
|
58462
|
+
props: {
|
|
58463
|
+
data: {
|
|
58464
|
+
type: Object,
|
|
58465
|
+
default: () => {
|
|
58466
|
+
return {};
|
|
58467
|
+
}
|
|
58468
|
+
},
|
|
58469
|
+
nowCompId: {
|
|
58470
|
+
type: [String, Number],
|
|
58471
|
+
default: ""
|
|
58472
|
+
},
|
|
58473
|
+
isOpcacity: {
|
|
58474
|
+
type: Boolean,
|
|
58475
|
+
default: true
|
|
58476
|
+
},
|
|
58477
|
+
lang: {
|
|
58478
|
+
type: String,
|
|
58479
|
+
default: "zh-HK"
|
|
58480
|
+
},
|
|
58481
|
+
isMobile: {
|
|
58482
|
+
type: Boolean,
|
|
58483
|
+
default: false
|
|
58484
|
+
},
|
|
58485
|
+
mobileLayout: {
|
|
58486
|
+
type: String,
|
|
58487
|
+
default: ""
|
|
58488
|
+
}
|
|
58489
|
+
},
|
|
58490
|
+
data() {
|
|
58491
|
+
return {
|
|
58492
|
+
showAddCom: false,
|
|
58493
|
+
temporaryList: [],
|
|
58494
|
+
configList: [],
|
|
58495
|
+
currentTab: 0,
|
|
58496
|
+
swiperArrow: false,
|
|
58497
|
+
broadbandSwiperC: null,
|
|
58498
|
+
swiperBeginning: false,
|
|
58499
|
+
swiperEnd: false
|
|
58500
|
+
};
|
|
58501
|
+
},
|
|
58502
|
+
computed: {
|
|
58503
|
+
isConfigPage() {
|
|
58504
|
+
return this.$EventBus && this.isOpcacity;
|
|
58505
|
+
},
|
|
58506
|
+
groupConfigForMain() {
|
|
58507
|
+
return {
|
|
58508
|
+
name: "task",
|
|
58509
|
+
pull: true,
|
|
58510
|
+
// A列表的元素可以被拖出
|
|
58511
|
+
put: (to, from, dragEl) => {
|
|
58512
|
+
console.log(from.el.classList);
|
|
58513
|
+
if (from.el.classList.contains("main_drag")) {
|
|
58514
|
+
const dataId = this.findFirstComponentKey(dragEl);
|
|
58515
|
+
if (dataId === "cms-column") {
|
|
58516
|
+
if (!this.checkColumnNestingLevel()) {
|
|
58517
|
+
console.log("cms-column 嵌套层级超出限制");
|
|
58518
|
+
return false;
|
|
58519
|
+
}
|
|
58520
|
+
}
|
|
58521
|
+
return true;
|
|
58522
|
+
}
|
|
58523
|
+
return true;
|
|
58524
|
+
}
|
|
58525
|
+
};
|
|
58526
|
+
}
|
|
58527
|
+
},
|
|
58528
|
+
mounted() {
|
|
58529
|
+
if (this.$EventBus) {
|
|
58530
|
+
this.$EventBus.$on("handleDragEnd", () => {
|
|
58531
|
+
this.showAddCom = false;
|
|
58532
|
+
});
|
|
58533
|
+
}
|
|
58534
|
+
this.$nextTick(() => {
|
|
58535
|
+
this.broadbandSwiperC = new swiper_esm_bundle/* default */.A("#tab-swiper", {
|
|
58536
|
+
autoplay: false,
|
|
58537
|
+
loop: false,
|
|
58538
|
+
// 循环模式选项
|
|
58539
|
+
spaceBetween: 0,
|
|
58540
|
+
slidesPerView: "auto",
|
|
58541
|
+
// slidesPerGroup:1,
|
|
58542
|
+
observer: true,
|
|
58543
|
+
observeParents: true,
|
|
58544
|
+
preventClicksPropagation: true,
|
|
58545
|
+
touchStartPreventDefault: false,
|
|
58546
|
+
touchStartForcePreventDefault: false
|
|
58547
|
+
});
|
|
58548
|
+
// 0820 -end
|
|
58549
|
+
});
|
|
58550
|
+
},
|
|
58551
|
+
watch: {},
|
|
58552
|
+
methods: {
|
|
58553
|
+
getConfigData(configData) {
|
|
58554
|
+
this.configList = configData.configList;
|
|
58555
|
+
this.$nextTick(() => {
|
|
58556
|
+
var _this$broadbandSwiper, _this$broadbandSwiper2;
|
|
58557
|
+
if (!this.$refs.barparent || !this.broadbandSwiperC) return;
|
|
58558
|
+
const parentClientWidth = this.$refs.barparent.clientWidth;
|
|
58559
|
+
console.log("this.broadbandSwiperC?.virtualSize ,", (_this$broadbandSwiper = this.broadbandSwiperC) === null || _this$broadbandSwiper === void 0 ? void 0 : _this$broadbandSwiper.virtualSize);
|
|
58560
|
+
if (((_this$broadbandSwiper2 = this.broadbandSwiperC) === null || _this$broadbandSwiper2 === void 0 ? void 0 : _this$broadbandSwiper2.virtualSize) <= parentClientWidth) {
|
|
58561
|
+
this.swiperArrow = false;
|
|
58562
|
+
} else {
|
|
58563
|
+
this.swiperArrow = true;
|
|
58564
|
+
}
|
|
58565
|
+
if (this.broadbandSwiperC.isBeginning) {
|
|
58566
|
+
this.swiperBeginning = true;
|
|
58567
|
+
}
|
|
58568
|
+
if (this.broadbandSwiperC.isEnd) {
|
|
58569
|
+
this.swiperEnd = true;
|
|
58570
|
+
}
|
|
58571
|
+
});
|
|
58572
|
+
},
|
|
58573
|
+
clickSwiperPrev() {
|
|
58574
|
+
this.broadbandSwiperC.slidePrev();
|
|
58575
|
+
if (this.broadbandSwiperC.isBeginning) {
|
|
58576
|
+
this.swiperBeginning = true;
|
|
58577
|
+
} else {
|
|
58578
|
+
this.swiperBeginning = false;
|
|
58579
|
+
}
|
|
58580
|
+
if (this.broadbandSwiperC.isEnd) {
|
|
58581
|
+
this.swiperEnd = true;
|
|
58582
|
+
} else {
|
|
58583
|
+
this.swiperEnd = false;
|
|
58584
|
+
}
|
|
58585
|
+
},
|
|
58586
|
+
clickSwiperNext() {
|
|
58587
|
+
this.broadbandSwiperC.slideNext();
|
|
58588
|
+
if (this.broadbandSwiperC.isBeginning) {
|
|
58589
|
+
this.swiperBeginning = true;
|
|
58590
|
+
} else {
|
|
58591
|
+
this.swiperBeginning = false;
|
|
58592
|
+
}
|
|
58593
|
+
if (this.broadbandSwiperC.isEnd) {
|
|
58594
|
+
this.swiperEnd = true;
|
|
58595
|
+
} else {
|
|
58596
|
+
this.swiperEnd = false;
|
|
58597
|
+
}
|
|
58598
|
+
},
|
|
58599
|
+
changeTab(index) {
|
|
58600
|
+
this.currentTab = index;
|
|
58601
|
+
},
|
|
58602
|
+
findFirstComponentKey(root) {
|
|
58603
|
+
var _root$querySelector;
|
|
58604
|
+
if (!root) return null;
|
|
58605
|
+
|
|
58606
|
+
// 若起点自身就有
|
|
58607
|
+
if (root.nodeType === 1 && root.hasAttribute("component-key")) {
|
|
58608
|
+
return root.getAttribute("component-key");
|
|
58609
|
+
}
|
|
58610
|
+
|
|
58611
|
+
// 向下查找第一个匹配的后代
|
|
58612
|
+
const el = (_root$querySelector = root.querySelector) === null || _root$querySelector === void 0 ? void 0 : _root$querySelector.call(root, "[component-key]");
|
|
58613
|
+
return el ? el.getAttribute("component-key") : null;
|
|
58614
|
+
},
|
|
58615
|
+
// 获取容器高度
|
|
58616
|
+
decodeJumpUrl(url) {
|
|
58617
|
+
if (!url) return;
|
|
58618
|
+
top.location.href = url;
|
|
58619
|
+
},
|
|
58620
|
+
onStart(evt) {
|
|
58621
|
+
console.log("drag start in column-card", evt);
|
|
58622
|
+
this.showAddCom = true;
|
|
58623
|
+
},
|
|
58624
|
+
// 限制拖拽的组件类型
|
|
58625
|
+
onMove(evt) {
|
|
58626
|
+
const {
|
|
58627
|
+
draggedContext
|
|
58628
|
+
} = evt;
|
|
58629
|
+
// 如果是从外部拖入的组件
|
|
58630
|
+
if (draggedContext && draggedContext.element) {
|
|
58631
|
+
const componentType = draggedContext.element.cmsCompName;
|
|
58632
|
+
// 特殊处理 cms-column:检查嵌套层级
|
|
58633
|
+
if (componentType === "cms-column") {
|
|
58634
|
+
if (!this.checkColumnNestingLevel()) {
|
|
58635
|
+
console.log("cms-column 嵌套层级超出限制");
|
|
58636
|
+
return false;
|
|
58637
|
+
}
|
|
58638
|
+
}
|
|
58639
|
+
}
|
|
58640
|
+
return true;
|
|
58641
|
+
},
|
|
58642
|
+
// 检查 cms-column 嵌套层级
|
|
58643
|
+
checkColumnNestingLevel() {
|
|
58644
|
+
// 检查当前 column-card 是否已经在 cms-column 内部
|
|
58645
|
+
let parent = this.$parent;
|
|
58646
|
+
let columnDepth = 0;
|
|
58647
|
+
while (parent) {
|
|
58648
|
+
// 检查父组件是否是 cms-column 或包含 cms-column
|
|
58649
|
+
if (parent.$options.name === "cms-column" || parent.$data && parent.$data.data && parent.$data.data.cmsCompName === "cms-column") {
|
|
58650
|
+
columnDepth++;
|
|
58651
|
+
}
|
|
58652
|
+
|
|
58653
|
+
// 如果已经有一层 cms-column,则不允许再嵌套
|
|
58654
|
+
if (columnDepth >= 2) {
|
|
58655
|
+
console.log(`检测到 cms-column 嵌套层级: ${columnDepth}, 超出限制`);
|
|
58656
|
+
return false;
|
|
58657
|
+
}
|
|
58658
|
+
parent = parent.$parent;
|
|
58659
|
+
}
|
|
58660
|
+
console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
|
|
58661
|
+
return true;
|
|
58662
|
+
},
|
|
58663
|
+
// 处理拖拽悬停
|
|
58664
|
+
dragover(e) {
|
|
58665
|
+
e.preventDefault();
|
|
58666
|
+
this.showAddCom = true;
|
|
58667
|
+
},
|
|
58668
|
+
// 处理拖拽放置
|
|
58669
|
+
drop(e) {
|
|
58670
|
+
e.preventDefault();
|
|
58671
|
+
const componentKey = e.dataTransfer.getData("componentKey");
|
|
58672
|
+
let temporaryId = "";
|
|
58673
|
+
this.temporaryList = e.dataTransfer.getData("temporaryList") ? JSON.parse(e.dataTransfer.getData("temporaryList")) : [];
|
|
58674
|
+
console.log("cms-colum-card-drop", componentKey, this.temporaryList);
|
|
58675
|
+
if (!componentKey) return;
|
|
58676
|
+
const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
|
|
58677
|
+
const isTemporary = isTemporaryItem === "true";
|
|
58678
|
+
if (isTemporary) {
|
|
58679
|
+
temporaryId = (0,standard_page/* getCopyTemplateCompConfig */.L7)(this.temporaryList, componentKey).cmsCompName;
|
|
58680
|
+
}
|
|
58681
|
+
const componentType = isTemporary ? temporaryId : componentKey;
|
|
58682
|
+
// 特殊处理 cms-column:检查嵌套层级
|
|
58683
|
+
if (componentType === "cms-column") {
|
|
58684
|
+
if (!this.checkColumnNestingLevel()) {
|
|
58685
|
+
console.log("cms-column 嵌套层级超出限制");
|
|
58686
|
+
this.$message && this.$message.warning(`cms-column 只能嵌套一层`);
|
|
58687
|
+
this.showAddCom = false;
|
|
58688
|
+
return;
|
|
58689
|
+
}
|
|
58690
|
+
}
|
|
58691
|
+
this.addOneComp(e, componentKey);
|
|
58692
|
+
},
|
|
58693
|
+
// 添加组件到卡片容器
|
|
58694
|
+
addOneComp(e, componentKey) {
|
|
58695
|
+
this.showAddCom = false;
|
|
58696
|
+
console.log("drop to column-card", componentKey);
|
|
58697
|
+
|
|
58698
|
+
// 动态导入组件配置
|
|
58699
|
+
let initCompData;
|
|
58700
|
+
try {
|
|
58701
|
+
const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
|
|
58702
|
+
const isTemporary = isTemporaryItem === "true";
|
|
58703
|
+
if (isTemporary) {
|
|
58704
|
+
initCompData = (0,standard_page/* getCopyTemplateCompConfig */.L7)(this.temporaryList, componentKey);
|
|
58705
|
+
} else {
|
|
58706
|
+
initCompData = __webpack_require__(1640)(`./${componentKey}`).default.settings(componentKey);
|
|
58707
|
+
}
|
|
58708
|
+
if (!isTemporary) {
|
|
58709
|
+
initCompData = {
|
|
58710
|
+
...initCompData,
|
|
58711
|
+
styleConfig: {
|
|
58712
|
+
pc: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(16, 16, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")],
|
|
58713
|
+
mb: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(12, 12, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")]
|
|
58714
|
+
}
|
|
58715
|
+
};
|
|
58716
|
+
}
|
|
58717
|
+
} catch (error) {
|
|
58718
|
+
console.error(`无法加载组件 ${componentKey}:`, error);
|
|
58719
|
+
this.$message && this.$message.error(`组件加载失败`);
|
|
58720
|
+
return;
|
|
58721
|
+
}
|
|
58722
|
+
const toElementId = e.toElement.id;
|
|
58723
|
+
if (toElementId === `tabTarget${this.currentTab}` || toElementId.includes("tabTargetdown")) {
|
|
58724
|
+
// 添加到卡片容器末尾
|
|
58725
|
+
this.configList[this.currentTab].tabList.push(initCompData);
|
|
58726
|
+
} else if (toElementId.includes("tabTargetup")) {
|
|
58727
|
+
// 插入到指定位置
|
|
58728
|
+
const underComponentId = toElementId.split("-tabTargetup")[0];
|
|
58729
|
+
const index = this.configList[this.currentTab].tabList.findIndex(item => item.componentId === underComponentId);
|
|
58730
|
+
if (index !== -1) {
|
|
58731
|
+
this.configList[this.currentTab].tabList.splice(index, 0, initCompData);
|
|
58732
|
+
}
|
|
58733
|
+
}
|
|
58734
|
+
|
|
58735
|
+
// 触发数据更新
|
|
58736
|
+
this.$emit("update:data", this.data);
|
|
58737
|
+
if (componentKey === "cms-column") {
|
|
58738
|
+
this.$EventBus.$emit("handleNowComp", initCompData);
|
|
58739
|
+
}
|
|
58740
|
+
}
|
|
58741
|
+
}
|
|
58742
|
+
});
|
|
58743
|
+
;// ./package/cms-tab/View.vue?vue&type=script&lang=js
|
|
58744
|
+
/* harmony default export */ var cms_tab_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
|
|
58745
|
+
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-42.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-tab/View.vue?vue&type=style&index=0&id=29a0258e&prod&lang=scss&scoped=true
|
|
58746
|
+
// extracted by mini-css-extract-plugin
|
|
58747
|
+
|
|
58748
|
+
;// ./package/cms-tab/View.vue?vue&type=style&index=0&id=29a0258e&prod&lang=scss&scoped=true
|
|
58749
|
+
|
|
58750
|
+
;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-42.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./package/cms-tab/View.vue?vue&type=style&index=1&id=29a0258e&prod&lang=scss&scoped=true
|
|
58751
|
+
// extracted by mini-css-extract-plugin
|
|
58752
|
+
|
|
58753
|
+
;// ./package/cms-tab/View.vue?vue&type=style&index=1&id=29a0258e&prod&lang=scss&scoped=true
|
|
58754
|
+
|
|
58755
|
+
// EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
|
|
58756
|
+
var componentNormalizer = __webpack_require__(1656);
|
|
58757
|
+
;// ./package/cms-tab/View.vue
|
|
58758
|
+
|
|
58759
|
+
|
|
58760
|
+
|
|
58761
|
+
;
|
|
58762
|
+
|
|
58763
|
+
|
|
58764
|
+
|
|
58765
|
+
/* normalize component */
|
|
58766
|
+
|
|
58767
|
+
var component = (0,componentNormalizer/* default */.A)(
|
|
58768
|
+
cms_tab_Viewvue_type_script_lang_js,
|
|
58769
|
+
render,
|
|
58770
|
+
staticRenderFns,
|
|
58771
|
+
false,
|
|
58772
|
+
null,
|
|
58773
|
+
"29a0258e",
|
|
58774
|
+
null
|
|
58775
|
+
|
|
58776
|
+
)
|
|
58777
|
+
|
|
58778
|
+
/* harmony default export */ var View = (component.exports);
|
|
58779
|
+
|
|
58780
|
+
/***/ }),
|
|
58781
|
+
|
|
58215
58782
|
/***/ 9286:
|
|
58216
58783
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
58217
58784
|
|