cms-chenhj-ui 2.0.12 → 2.0.14

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.
@@ -82,6 +82,181 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
82
82
 
83
83
  /***/ }),
84
84
 
85
+ /***/ 103:
86
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
87
+
88
+ "use strict";
89
+ // ESM COMPAT FLAG
90
+ __webpack_require__.r(__webpack_exports__);
91
+
92
+ // EXPORTS
93
+ __webpack_require__.d(__webpack_exports__, {
94
+ "default": function() { return /* binding */ View; }
95
+ });
96
+
97
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-video-group/View.vue?vue&type=template&id=13b5a669&scoped=true
98
+ var render = function render() {
99
+ var _vm = this,
100
+ _c = _vm._self._c;
101
+ return _c('BaseComp', _vm._b({
102
+ attrs: {
103
+ "data": _vm.data,
104
+ "nowCompId": _vm.nowCompId,
105
+ "isOpcacity": _vm.isOpcacity,
106
+ "isMask": false,
107
+ "lang": _vm.lang
108
+ },
109
+ on: {
110
+ "getConfigData": _vm.getConfigData
111
+ }
112
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
113
+ staticClass: "cmhk-home_main"
114
+ }, [_c('div', {
115
+ staticClass: "wrap",
116
+ style: {
117
+ 'grid-template-columns': `repeat(${_vm.configData.colNums}, 1fr)`,
118
+ 'grid-gap': `${_vm.configData.gap}px`
119
+ }
120
+ }, _vm._l(_vm.showVideoList, function (item) {
121
+ return _c('cms-video', {
122
+ key: item.componentId,
123
+ staticStyle: {
124
+ "overflow": "hidden"
125
+ },
126
+ attrs: {
127
+ "data": item,
128
+ "nowCompId": _vm.nowCompId,
129
+ "isOpcacity": _vm.isOpcacity,
130
+ "isMask": false,
131
+ "lang": _vm.lang
132
+ }
133
+ });
134
+ }), 1), _vm.isShowPannel ? [_c('div', {
135
+ staticClass: "view-more-container"
136
+ }, [_c('div', {
137
+ staticClass: "view-more-btn",
138
+ on: {
139
+ "click": _vm.foldMessText
140
+ }
141
+ }, [_c('span', {
142
+ staticClass: "view-more-text"
143
+ }, [_vm._v(" " + _vm._s(_vm.messFold ? _vm.$t("roamIndex.Collpase") : _vm.$t("roamIndex.More")) + " ")]), _c('i', {
144
+ class: ['view-more-icon', _vm.messFold ? 'el-icon-arrow-up' : 'el-icon-arrow-down']
145
+ })])])] : _vm._e()], 2)]);
146
+ };
147
+ var staticRenderFns = [];
148
+
149
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
150
+ var baseComp = __webpack_require__(7135);
151
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-video-group/View.vue?vue&type=script&lang=js
152
+
153
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
154
+ name: "cms-video-group",
155
+ components: {
156
+ BaseComp: baseComp["default"]
157
+ },
158
+ props: {
159
+ data: {
160
+ type: Object,
161
+ default: () => {
162
+ return {};
163
+ }
164
+ },
165
+ nowCompId: {
166
+ type: [String, Number],
167
+ default: ""
168
+ },
169
+ isOpcacity: {
170
+ type: Boolean,
171
+ default: true
172
+ },
173
+ lang: {
174
+ type: String,
175
+ default: "zh-HK"
176
+ }
177
+ },
178
+ data() {
179
+ return {
180
+ configData: {},
181
+ messFold: false,
182
+ // 默认配置数据
183
+ isShowPannel: false
184
+ };
185
+ },
186
+ mounted() {},
187
+ watch: {
188
+ configData: {
189
+ handler() {
190
+ this.updateStyles();
191
+ },
192
+ deep: true
193
+ }
194
+ },
195
+ computed: {
196
+ showVideoList() {
197
+ if (this.isShowPannel && !this.messFold) return this.data.childList.slice(0, this.configData.colNums * this.configData.defaultCol);
198
+ return this.data.childList;
199
+ },
200
+ isConfigPage() {
201
+ return this.$EventBus && this.isOpcacity;
202
+ }
203
+ },
204
+ methods: {
205
+ // 获取配置数据
206
+ getConfigData(configData) {
207
+ this.configData = {
208
+ ...this.defaultConfig,
209
+ ...configData
210
+ };
211
+ this.updateStyles();
212
+ this.isShowPannel = this.configData.colNums * this.configData.defaultCol < this.data.childList.length;
213
+ },
214
+ // 更新样式
215
+ updateStyles() {
216
+ this.$nextTick(() => {
217
+ // 触发样式更新
218
+ this.$forceUpdate();
219
+ });
220
+ },
221
+ // 折叠/展开文本
222
+ foldMessText() {
223
+ this.messFold = !this.messFold;
224
+ }
225
+ }
226
+ });
227
+ ;// ./package/cms-video-group/View.vue?vue&type=script&lang=js
228
+ /* harmony default export */ var cms_video_group_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
229
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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-video-group/View.vue?vue&type=style&index=0&id=13b5a669&prod&lang=scss&scoped=true
230
+ // extracted by mini-css-extract-plugin
231
+
232
+ ;// ./package/cms-video-group/View.vue?vue&type=style&index=0&id=13b5a669&prod&lang=scss&scoped=true
233
+
234
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
235
+ var componentNormalizer = __webpack_require__(1656);
236
+ ;// ./package/cms-video-group/View.vue
237
+
238
+
239
+
240
+ ;
241
+
242
+
243
+ /* normalize component */
244
+
245
+ var component = (0,componentNormalizer/* default */.A)(
246
+ cms_video_group_Viewvue_type_script_lang_js,
247
+ render,
248
+ staticRenderFns,
249
+ false,
250
+ null,
251
+ "13b5a669",
252
+ null
253
+
254
+ )
255
+
256
+ /* harmony default export */ var View = (component.exports);
257
+
258
+ /***/ }),
259
+
85
260
  /***/ 116:
86
261
  /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
87
262
 
@@ -272,7 +447,7 @@ var swiper = __webpack_require__(828);
272
447
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
273
448
  var swiper_esm_bundle = __webpack_require__(1532);
274
449
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
275
- var baseComp = __webpack_require__(7843);
450
+ var baseComp = __webpack_require__(7135);
276
451
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-aLineThreeLeftTwo/View.vue?vue&type=script&lang=js
277
452
 
278
453
 
@@ -606,7 +781,7 @@ var es_iterator_constructor = __webpack_require__(8111);
606
781
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.reduce.js
607
782
  var es_iterator_reduce = __webpack_require__(8237);
608
783
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
609
- var baseComp = __webpack_require__(7843);
784
+ var baseComp = __webpack_require__(7135);
610
785
  // EXTERNAL MODULE: ./package/patch.js
611
786
  var patch = __webpack_require__(4229);
612
787
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-servePlan-tab/View.vue?vue&type=script&lang=js
@@ -10129,7 +10304,7 @@ var render = function render() {
10129
10304
  var staticRenderFns = [];
10130
10305
 
10131
10306
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
10132
- var baseComp = __webpack_require__(7843);
10307
+ var baseComp = __webpack_require__(7135);
10133
10308
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-cells/View.vue?vue&type=script&lang=js
10134
10309
 
10135
10310
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -10614,7 +10789,7 @@ var es_iterator_constructor = __webpack_require__(8111);
10614
10789
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
10615
10790
  var es_iterator_for_each = __webpack_require__(7588);
10616
10791
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
10617
- var baseComp = __webpack_require__(7843);
10792
+ var baseComp = __webpack_require__(7135);
10618
10793
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-button/View.vue?vue&type=script&lang=js
10619
10794
 
10620
10795
 
@@ -10991,7 +11166,7 @@ var render = function render() {
10991
11166
  var staticRenderFns = [];
10992
11167
 
10993
11168
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
10994
- var baseComp = __webpack_require__(7843);
11169
+ var baseComp = __webpack_require__(7135);
10995
11170
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-lineTwo/View.vue?vue&type=script&lang=js
10996
11171
 
10997
11172
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -11151,7 +11326,7 @@ var swiper = __webpack_require__(828);
11151
11326
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
11152
11327
  var swiper_esm_bundle = __webpack_require__(1532);
11153
11328
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
11154
- var baseComp = __webpack_require__(7843);
11329
+ var baseComp = __webpack_require__(7135);
11155
11330
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-imgFour/View.vue?vue&type=script&lang=js
11156
11331
 
11157
11332
 
@@ -19677,8 +19852,8 @@ module.exports = uncurryThis({}.isPrototypeOf);
19677
19852
 
19678
19853
  var map = {
19679
19854
  "./": 6959,
19680
- "./baseComp": 7843,
19681
- "./baseComp.vue": 7843,
19855
+ "./baseComp": 7135,
19856
+ "./baseComp.vue": 7135,
19682
19857
  "./baseConfig": 2128,
19683
19858
  "./baseConfig.js": 2128,
19684
19859
  "./cms-aLineThreeLeftOne": 918,
@@ -19728,13 +19903,13 @@ var map = {
19728
19903
  "./cms-column": 3154,
19729
19904
  "./cms-column-card": 3583,
19730
19905
  "./cms-column-card/": 3583,
19731
- "./cms-column-card/View": 3894,
19732
- "./cms-column-card/View.vue": 3894,
19906
+ "./cms-column-card/View": 9421,
19907
+ "./cms-column-card/View.vue": 9421,
19733
19908
  "./cms-column-card/index": 3583,
19734
19909
  "./cms-column-card/index.js": 3583,
19735
19910
  "./cms-column/": 3154,
19736
- "./cms-column/View": 8970,
19737
- "./cms-column/View.vue": 8970,
19911
+ "./cms-column/View": 8044,
19912
+ "./cms-column/View.vue": 8044,
19738
19913
  "./cms-column/index": 3154,
19739
19914
  "./cms-column/index.js": 3154,
19740
19915
  "./cms-description": 98,
@@ -19756,9 +19931,15 @@ var map = {
19756
19931
  "./cms-iconFour/index": 653,
19757
19932
  "./cms-iconFour/index.js": 653,
19758
19933
  "./cms-image": 3513,
19934
+ "./cms-image-group": 2987,
19935
+ "./cms-image-group/": 2987,
19936
+ "./cms-image-group/View": 7583,
19937
+ "./cms-image-group/View.vue": 7583,
19938
+ "./cms-image-group/index": 2987,
19939
+ "./cms-image-group/index.js": 2987,
19759
19940
  "./cms-image/": 3513,
19760
- "./cms-image/View": 6345,
19761
- "./cms-image/View.vue": 6345,
19941
+ "./cms-image/View": 3823,
19942
+ "./cms-image/View.vue": 3823,
19762
19943
  "./cms-image/index": 3513,
19763
19944
  "./cms-image/index.js": 3513,
19764
19945
  "./cms-imgFour": 3395,
@@ -19870,9 +20051,15 @@ var map = {
19870
20051
  "./cms-via-storedValueCard/index": 9711,
19871
20052
  "./cms-via-storedValueCard/index.js": 9711,
19872
20053
  "./cms-video": 3275,
20054
+ "./cms-video-group": 2697,
20055
+ "./cms-video-group/": 2697,
20056
+ "./cms-video-group/View": 103,
20057
+ "./cms-video-group/View.vue": 103,
20058
+ "./cms-video-group/index": 2697,
20059
+ "./cms-video-group/index.js": 2697,
19873
20060
  "./cms-video/": 3275,
19874
- "./cms-video/View": 4297,
19875
- "./cms-video/View.vue": 4297,
20061
+ "./cms-video/View": 6253,
20062
+ "./cms-video/View.vue": 6253,
19876
20063
  "./cms-video/index": 3275,
19877
20064
  "./cms-video/index.js": 3275,
19878
20065
  "./cms-view": 725,
@@ -20226,7 +20413,7 @@ var staticRenderFns = [];
20226
20413
  ;// ./package/cms-prodCustomization/View.vue?vue&type=template&id=61a0a18c&scoped=true
20227
20414
 
20228
20415
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
20229
- var baseComp = __webpack_require__(7843);
20416
+ var baseComp = __webpack_require__(7135);
20230
20417
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-prodCustomization/View.vue?vue&type=script&lang=js
20231
20418
 
20232
20419
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -20435,7 +20622,7 @@ var render = function render() {
20435
20622
  var staticRenderFns = [];
20436
20623
 
20437
20624
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
20438
- var baseComp = __webpack_require__(7843);
20625
+ var baseComp = __webpack_require__(7135);
20439
20626
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-lineFive/View.vue?vue&type=script&lang=js
20440
20627
 
20441
20628
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -22542,7 +22729,7 @@ var staticRenderFns = [];
22542
22729
  ;// ./package/cms-activityTime/View.vue?vue&type=template&id=0e496ed4&scoped=true
22543
22730
 
22544
22731
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
22545
- var baseComp = __webpack_require__(7843);
22732
+ var baseComp = __webpack_require__(7135);
22546
22733
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-activityTime/View.vue?vue&type=script&lang=js
22547
22734
 
22548
22735
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -22706,6 +22893,64 @@ module.exports = function (iterable, unboundFunction, options) {
22706
22893
  };
22707
22894
 
22708
22895
 
22896
+ /***/ }),
22897
+
22898
+ /***/ 2697:
22899
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
22900
+
22901
+ "use strict";
22902
+ __webpack_require__.r(__webpack_exports__);
22903
+ /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
22904
+
22905
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 103));
22906
+ const langData = {
22907
+ colNums: 1,
22908
+ defaultCol: 12,
22909
+ gap: 10
22910
+ };
22911
+ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
22912
+ // 布局配置
22913
+ colNums: {
22914
+ label: "视频样式",
22915
+ widgetType: "el-radio-group",
22916
+ options: [{
22917
+ label: "一行一个",
22918
+ value: 1
22919
+ }, {
22920
+ label: "一行两个",
22921
+ value: 2
22922
+ }, {
22923
+ label: "一行三个",
22924
+ value: 3
22925
+ }],
22926
+ isCol: true
22927
+ },
22928
+ defaultCol: {
22929
+ label: "默认展示(行)",
22930
+ widgetType: "el-input-number",
22931
+ size: "small",
22932
+ min: 1,
22933
+ max: 12,
22934
+ step: 1,
22935
+ isCol: true,
22936
+ unit: "行"
22937
+ }
22938
+ });
22939
+ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
22940
+ /* harmony default export */ __webpack_exports__["default"] = ({
22941
+ View,
22942
+ validateSchema,
22943
+ configDataType,
22944
+ langData,
22945
+ settings: cmsCompName => {
22946
+ return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
22947
+ cmsCompName,
22948
+ langData,
22949
+ isLangAll: true
22950
+ });
22951
+ }
22952
+ });
22953
+
22709
22954
  /***/ }),
22710
22955
 
22711
22956
  /***/ 2730:
@@ -22991,7 +23236,7 @@ var render = function render() {
22991
23236
  var staticRenderFns = [];
22992
23237
 
22993
23238
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
22994
- var baseComp = __webpack_require__(7843);
23239
+ var baseComp = __webpack_require__(7135);
22995
23240
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-iconFour/View.vue?vue&type=script&lang=js
22996
23241
 
22997
23242
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -23135,6 +23380,64 @@ module.exports = Math.pow;
23135
23380
 
23136
23381
  /***/ }),
23137
23382
 
23383
+ /***/ 2987:
23384
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
23385
+
23386
+ "use strict";
23387
+ __webpack_require__.r(__webpack_exports__);
23388
+ /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
23389
+
23390
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 7583));
23391
+ const langData = {
23392
+ colNums: 1,
23393
+ defaultCol: 12,
23394
+ gap: 10
23395
+ };
23396
+ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
23397
+ // 布局配置
23398
+ colNums: {
23399
+ label: "视频样式",
23400
+ widgetType: "el-radio-group",
23401
+ options: [{
23402
+ label: "一行一个",
23403
+ value: 1
23404
+ }, {
23405
+ label: "一行两个",
23406
+ value: 2
23407
+ }, {
23408
+ label: "一行三个",
23409
+ value: 3
23410
+ }],
23411
+ isCol: true
23412
+ },
23413
+ defaultCol: {
23414
+ label: "默认展示(行)",
23415
+ widgetType: "el-input-number",
23416
+ size: "small",
23417
+ min: 1,
23418
+ max: 12,
23419
+ step: 1,
23420
+ isCol: true,
23421
+ unit: "行"
23422
+ }
23423
+ });
23424
+ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
23425
+ /* harmony default export */ __webpack_exports__["default"] = ({
23426
+ View,
23427
+ validateSchema,
23428
+ configDataType,
23429
+ langData,
23430
+ settings: cmsCompName => {
23431
+ return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
23432
+ cmsCompName,
23433
+ langData,
23434
+ isLangAll: true
23435
+ });
23436
+ }
23437
+ });
23438
+
23439
+ /***/ }),
23440
+
23138
23441
  /***/ 3003:
23139
23442
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
23140
23443
 
@@ -23208,7 +23511,7 @@ module.exports = Math.min;
23208
23511
  __webpack_require__.r(__webpack_exports__);
23209
23512
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
23210
23513
 
23211
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 8970));
23514
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 8044));
23212
23515
  const langData = {
23213
23516
  // 布局配置
23214
23517
  layoutType: "100",
@@ -23217,9 +23520,9 @@ const langData = {
23217
23520
  mobileLayout: "vertical",
23218
23521
  fixedHeight: 300,
23219
23522
  // 边框配置
23220
- borderWidth: 1,
23523
+ borderWidth: 0,
23221
23524
  borderStyle: "solid",
23222
- borderColor: "#409eff",
23525
+ borderColor: "",
23223
23526
  borderRadius: 0,
23224
23527
  // 背景配置
23225
23528
  backgroundColor: "#FFF",
@@ -23335,7 +23638,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
23335
23638
  },
23336
23639
  borderColor: {
23337
23640
  label: "边框颜色",
23338
- widgetType: "el-color-picker"
23641
+ widgetType: "el-color-picker",
23642
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
23339
23643
  },
23340
23644
  borderRadius: {
23341
23645
  label: "圆角(px)",
@@ -23347,7 +23651,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
23347
23651
  // 背景配置
23348
23652
  backgroundColor: {
23349
23653
  label: "背景颜色",
23350
- widgetType: "el-color-picker"
23654
+ widgetType: "el-color-picker",
23655
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
23351
23656
  },
23352
23657
  backgroundImage: {
23353
23658
  label: "背景图片",
@@ -23578,9 +23883,10 @@ module.exports = function (O) {
23578
23883
  __webpack_require__.r(__webpack_exports__);
23579
23884
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
23580
23885
 
23581
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 4297));
23886
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 6253));
23582
23887
  const langData = {
23583
23888
  // 视频源设置
23889
+ title: '',
23584
23890
  videoType: "direct",
23585
23891
  videoUrl: "",
23586
23892
  embedCode: "",
@@ -23607,6 +23913,11 @@ const langData = {
23607
23913
  };
23608
23914
  const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
23609
23915
  // 视频源设置配置
23916
+ title: {
23917
+ label: "视频标题",
23918
+ widgetType: "el-input",
23919
+ placeholder: "请输入视频标题"
23920
+ },
23610
23921
  videoType: {
23611
23922
  label: "视频类型",
23612
23923
  widgetType: "el-radio-group",
@@ -24037,9 +24348,10 @@ module.exports = function (argument) {
24037
24348
  __webpack_require__.r(__webpack_exports__);
24038
24349
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
24039
24350
 
24040
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 6345));
24351
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 3823));
24041
24352
  const langData = {
24042
24353
  // 图片设置
24354
+ remark: "",
24043
24355
  imageUrl: "",
24044
24356
  altText: "图片",
24045
24357
  title: "",
@@ -24062,6 +24374,11 @@ const langData = {
24062
24374
  lazyLoad: false
24063
24375
  };
24064
24376
  const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
24377
+ remark: {
24378
+ label: "图片备注",
24379
+ widgetType: "el-input",
24380
+ placeholder: "请输入图片备注"
24381
+ },
24065
24382
  // 图片设置配置
24066
24383
  imageUrl: {
24067
24384
  label: "图片地址",
@@ -24069,15 +24386,16 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
24069
24386
  placeholder: "请选择或输入图片地址"
24070
24387
  },
24071
24388
  altText: {
24072
- label: "替代文本",
24389
+ label: "alt属性",
24073
24390
  widgetType: "el-input",
24074
- placeholder: "请输入图片的替代文本"
24075
- },
24076
- title: {
24077
- label: "图片标题",
24078
- widgetType: "el-input",
24079
- placeholder: "请输入图片标题(鼠标悬停时显示)"
24391
+ placeholder: "请输入图片的alt属性"
24080
24392
  },
24393
+ // title: {
24394
+ // label: "图片标题",
24395
+ // widgetType: "el-input",
24396
+ // placeholder: "请输入图片标题(鼠标悬停时显示)"
24397
+ // },
24398
+
24081
24399
  // 尺寸控制配置
24082
24400
  widthType: {
24083
24401
  label: "宽度类型",
@@ -32139,7 +32457,7 @@ $({ target: 'Iterator', proto: true, real: true }, {
32139
32457
  __webpack_require__.r(__webpack_exports__);
32140
32458
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
32141
32459
 
32142
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 3894));
32460
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 9421));
32143
32461
 
32144
32462
  // 默认配置数据
32145
32463
  const langData = {
@@ -32147,9 +32465,9 @@ const langData = {
32147
32465
  heightType: "auto",
32148
32466
  fixedHeight: 300,
32149
32467
  // 边框设置
32150
- borderWidth: 1,
32468
+ borderWidth: 0,
32151
32469
  borderStyle: "solid",
32152
- borderColor: "#1c4fc6ff",
32470
+ borderColor: "",
32153
32471
  borderRadius: 0,
32154
32472
  // 背景设置
32155
32473
  backgroundColor: "",
@@ -32208,7 +32526,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
32208
32526
  },
32209
32527
  borderColor: {
32210
32528
  label: "边框颜色",
32211
- widgetType: "el-color-picker"
32529
+ widgetType: "el-color-picker",
32530
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
32212
32531
  },
32213
32532
  borderRadius: {
32214
32533
  label: "圆角(px)",
@@ -32221,7 +32540,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
32221
32540
  // 背景设置配置
32222
32541
  backgroundColor: {
32223
32542
  label: "背景颜色",
32224
- widgetType: "el-color-picker"
32543
+ widgetType: "el-color-picker",
32544
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
32225
32545
  },
32226
32546
  backgroundImage: {
32227
32547
  label: "背景图片",
@@ -32522,53 +32842,7 @@ module.exports = function (obj) {
32522
32842
 
32523
32843
  /***/ }),
32524
32844
 
32525
- /***/ 3838:
32526
- /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
32527
-
32528
- "use strict";
32529
-
32530
- var aSet = __webpack_require__(7080);
32531
- var size = __webpack_require__(5170);
32532
- var iterate = __webpack_require__(8469);
32533
- var getSetRecord = __webpack_require__(3789);
32534
-
32535
- // `Set.prototype.isSubsetOf` method
32536
- // https://tc39.github.io/proposal-set-methods/#Set.prototype.isSubsetOf
32537
- module.exports = function isSubsetOf(other) {
32538
- var O = aSet(this);
32539
- var otherRec = getSetRecord(other);
32540
- if (size(O) > otherRec.size) return false;
32541
- return iterate(O, function (e) {
32542
- if (!otherRec.includes(e)) return false;
32543
- }, true) !== false;
32544
- };
32545
-
32546
-
32547
- /***/ }),
32548
-
32549
- /***/ 3853:
32550
- /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
32551
-
32552
- "use strict";
32553
-
32554
- var $ = __webpack_require__(6518);
32555
- var isDisjointFrom = __webpack_require__(4449);
32556
- var setMethodAcceptSetLike = __webpack_require__(4916);
32557
-
32558
- var INCORRECT = !setMethodAcceptSetLike('isDisjointFrom', function (result) {
32559
- return !result;
32560
- });
32561
-
32562
- // `Set.prototype.isDisjointFrom` method
32563
- // https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom
32564
- $({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
32565
- isDisjointFrom: isDisjointFrom
32566
- });
32567
-
32568
-
32569
- /***/ }),
32570
-
32571
- /***/ 3894:
32845
+ /***/ 3823:
32572
32846
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
32573
32847
 
32574
32848
  "use strict";
@@ -32580,15 +32854,7 @@ __webpack_require__.d(__webpack_exports__, {
32580
32854
  "default": function() { return /* binding */ View; }
32581
32855
  });
32582
32856
 
32583
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
32584
- var es_iterator_constructor = __webpack_require__(8111);
32585
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.drop.js
32586
- var es_iterator_drop = __webpack_require__(9314);
32587
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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=971892d6&scoped=true
32588
-
32589
-
32590
-
32591
-
32857
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-image/View.vue?vue&type=template&id=5dac7dea&scoped=true
32592
32858
  var render = function render() {
32593
32859
  var _vm = this,
32594
32860
  _c = _vm._self._c;
@@ -32597,137 +32863,71 @@ var render = function render() {
32597
32863
  "data": _vm.data,
32598
32864
  "nowCompId": _vm.nowCompId,
32599
32865
  "isOpcacity": _vm.isOpcacity,
32600
- "isMask": false,
32601
- "lang": _vm.lang,
32602
- "showDel": false
32866
+ "lang": _vm.lang
32603
32867
  },
32604
32868
  on: {
32605
32869
  "getConfigData": _vm.getConfigData
32606
32870
  }
32607
- }, 'BaseComp', _vm.$attrs, false), [_vm.$EventBus && _vm.isOpcacity ? _c('div', {
32608
- staticClass: "main_drag",
32609
- style: _vm.cardContainerStyle,
32610
- attrs: {
32611
- "id": `cardTarget${_vm.data.componentId}`
32612
- },
32871
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
32872
+ staticClass: "cms-image-container",
32873
+ class: [_vm.configData.customClass || '', {
32874
+ 'has-link': _vm.configData.linkUrl
32875
+ }],
32876
+ style: _vm.containerStyle
32877
+ }, [_c('div', {
32878
+ staticClass: "image-wrapper",
32879
+ style: _vm.wrapperStyle,
32613
32880
  on: {
32614
- "dragover": _vm.dragover,
32615
- "dragend": function ($event) {
32616
- _vm.showAddCom = false;
32617
- },
32618
- "drop": _vm.drop
32881
+ "click": _vm.handleClick
32619
32882
  }
32620
- }, [_c('Draggable', {
32621
- staticStyle: {
32622
- "position": "relative"
32623
- },
32883
+ }, [_vm.configData.imageUrl ? _c('img', {
32884
+ staticClass: "cms-image",
32885
+ style: _vm.imageStyle,
32624
32886
  attrs: {
32625
- "chosen-class": "chosen",
32626
- "force-fallback": "true",
32627
- "animation": "1000",
32628
- "move": _vm.onMove
32887
+ "src": _vm.configData.imageUrl,
32888
+ "alt": _vm.configData.altText || '图片',
32889
+ "title": _vm.configData.title
32629
32890
  },
32630
32891
  on: {
32631
- "start": _vm.onStart,
32632
- "end": function ($event) {
32633
- _vm.showAddCom = false;
32634
- }
32635
- },
32636
- model: {
32637
- value: _vm.data.childList,
32638
- callback: function ($$v) {
32639
- _vm.$set(_vm.data, "childList", $$v);
32640
- },
32641
- expression: "data.childList"
32892
+ "load": _vm.onImageLoad,
32893
+ "error": _vm.onImageError
32642
32894
  }
32643
- }, [_vm._l(_vm.data.childList, function (item, index) {
32644
- return _c('div', {
32645
- key: item.componentId,
32646
- staticStyle: {
32647
- "position": "relative"
32648
- }
32649
- }, [_c('div', {
32650
- directives: [{
32651
- name: "show",
32652
- rawName: "v-show",
32653
- value: _vm.showAddCom,
32654
- expression: "showAddCom"
32655
- }],
32656
- staticClass: "up_insert",
32657
- attrs: {
32658
- "id": `${item.componentId}-cardTargetup`
32659
- }
32660
- }, [_c('i', {
32661
- staticClass: "icon-up",
32662
- attrs: {
32663
- "id": `${item.componentId}-upi`
32664
- }
32665
- }), _c('span', {
32666
- attrs: {
32667
- "id": `${item.componentId}-upspan`
32668
- }
32669
- }, [_vm._v("插入组件")])]), _c(item.cmsCompName, {
32670
- key: item.componentId,
32671
- tag: "component",
32672
- style: {
32673
- marginTop: _vm.showAddCom && index == 0 ? '20px' : '0px'
32674
- },
32675
- attrs: {
32676
- "data": item,
32677
- "lang": _vm.lang,
32678
- "isOpcacity": _vm.isOpcacity,
32679
- "nowCompId": _vm.nowCompId
32680
- }
32681
- })], 1);
32682
- }), _c('div', {
32683
- directives: [{
32684
- name: "show",
32685
- rawName: "v-show",
32686
- value: _vm.showAddCom,
32687
- expression: "showAddCom"
32688
- }],
32689
- staticClass: "up_insert insert_bottom",
32690
- style: {
32691
- bottom: _vm.data.childList.length ? '0px' : '-24px'
32895
+ }) : _c('div', {
32896
+ staticClass: "image-placeholder",
32897
+ style: _vm.placeholderStyle
32898
+ }, [_c('img', {
32899
+ staticStyle: {
32900
+ "width": "200px",
32901
+ "height": "200px"
32692
32902
  },
32693
32903
  attrs: {
32694
- "id": `-cardTargetdown`
32904
+ "src": __webpack_require__(4806),
32905
+ "alt": "Picture"
32695
32906
  }
32696
- }, [_c('i', {
32697
- staticClass: "icon-up"
32698
- }), _c('span', [_vm._v("插入组件")])])], 2)], 1) : _c('cms-view', _vm._b({
32699
- style: _vm.cardContainerStyle,
32700
- attrs: {
32701
- "data": _vm.data.childList,
32702
- "lang": _vm.lang,
32703
- "isOpcacity": false
32704
- }
32705
- }, 'cms-view', _vm.$attrs, false))], 1);
32907
+ })])])]), _c('div', {
32908
+ staticClass: "f-c-c"
32909
+ }, [_vm._v(_vm._s(_vm.configData.remark))])]);
32706
32910
  };
32707
32911
  var staticRenderFns = [];
32708
32912
 
32709
- ;// ./package/cms-column-card/View.vue?vue&type=template&id=971892d6&scoped=true
32913
+ ;// ./package/cms-image/View.vue?vue&type=template&id=5dac7dea&scoped=true
32710
32914
 
32711
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
32712
- var es_array_push = __webpack_require__(4114);
32915
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
32916
+ var es_iterator_constructor = __webpack_require__(8111);
32917
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
32918
+ var es_iterator_for_each = __webpack_require__(7588);
32713
32919
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
32714
- var baseComp = __webpack_require__(7843);
32715
- // EXTERNAL MODULE: ./node_modules/vuedraggable/dist/vuedraggable.umd.js
32716
- var vuedraggable_umd = __webpack_require__(9014);
32717
- var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd);
32718
- // EXTERNAL MODULE: ./package/baseConfig.js
32719
- var baseConfig = __webpack_require__(2128);
32720
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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
32920
+ var baseComp = __webpack_require__(7135);
32921
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-image/View.vue?vue&type=script&lang=js
32721
32922
 
32722
32923
 
32723
32924
 
32724
32925
 
32725
32926
 
32726
32927
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
32727
- name: "cms-column-card",
32928
+ name: "cms-image",
32728
32929
  components: {
32729
- BaseComp: baseComp["default"],
32730
- Draggable: (vuedraggable_umd_default())
32930
+ BaseComp: baseComp["default"]
32731
32931
  },
32732
32932
  props: {
32733
32933
  data: {
@@ -32752,206 +32952,207 @@ var baseConfig = __webpack_require__(2128);
32752
32952
  data() {
32753
32953
  return {
32754
32954
  configData: {},
32755
- messFold: true,
32756
- showAddCom: false
32955
+ imageLoaded: false,
32956
+ imageError: false,
32957
+ // 默认配置数据
32958
+ defaultConfig: {
32959
+ // 图片设置
32960
+ imageUrl: "",
32961
+ altText: "图片",
32962
+ title: "",
32963
+ // 尺寸控制
32964
+ widthType: "auto",
32965
+ widthValue: 100,
32966
+ heightType: "auto",
32967
+ heightValue: 100,
32968
+ maxWidth: 0,
32969
+ maxHeight: 0,
32970
+ // 样式设置
32971
+ borderRadius: 0,
32972
+ objectFit: "cover",
32973
+ // 交互功能
32974
+ linkUrl: "",
32975
+ linkTarget: "_self",
32976
+ // 高级配置
32977
+ customClass: "",
32978
+ customStyle: "",
32979
+ lazyLoad: false
32980
+ }
32757
32981
  };
32758
32982
  },
32759
- computed: {
32760
- // 卡片容器样式
32761
- cardContainerStyle() {
32762
- return {
32763
- backgroundImage: this.configData.backgroundImage ? `url('${this.configData.backgroundImage}')` : "none",
32764
- backgroundSize: "cover",
32765
- backgroundRepeat: "no-repeat",
32766
- backgroundPosition: "center center",
32767
- height: this.getContainerHeight(),
32768
- border: this.getContainerBorder(),
32769
- borderRadius: this.getContainerBorderRadius(),
32770
- backgroundColor: this.configData.backgroundColor || "transparent",
32771
- boxShadow: this.configData.boxShadow || "none"
32772
- };
32773
- }
32774
- },
32775
32983
  mounted() {
32776
- if (this.$EventBus) {
32777
- this.$EventBus.$on("handleDragEnd", () => {
32778
- this.showAddCom = false;
32779
- });
32984
+ this.initConfigData();
32985
+ },
32986
+ watch: {
32987
+ configData: {
32988
+ handler() {
32989
+ this.updateStyles();
32990
+ },
32991
+ deep: true
32780
32992
  }
32781
32993
  },
32782
- watch: {},
32783
- methods: {
32784
- // 获取容器高度
32785
- getContainerHeight() {
32786
- if (this.configData.heightType === "fixed") {
32787
- return `${this.configData.fixedHeight}px`;
32788
- }
32789
- return this.isOpcacity ? "100%" : "auto";
32994
+ computed: {
32995
+ // 容器样式
32996
+ containerStyle() {
32997
+ const config = {
32998
+ ...this.defaultConfig,
32999
+ ...this.configData
33000
+ };
33001
+ return {
33002
+ ...this.parseCustomStyle(config.customStyle)
33003
+ };
32790
33004
  },
32791
- // 获取容器边框
32792
- getContainerBorder() {
32793
- if (this.configData.borderWidth) {
32794
- return `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}`;
33005
+ // 包装器样式
33006
+ wrapperStyle() {
33007
+ const config = {
33008
+ ...this.defaultConfig,
33009
+ ...this.configData
33010
+ };
33011
+ let width = "100%";
33012
+ let height = "auto";
33013
+
33014
+ // 宽度设置
33015
+ if (config.widthType === "fixed") {
33016
+ width = `${config.widthValue}px`;
33017
+ } else if (config.widthType === "percent") {
33018
+ width = `${config.widthValue}%`;
32795
33019
  }
32796
- return "none";
32797
- },
32798
- // 获取容器圆角
32799
- getContainerBorderRadius() {
32800
- if (this.configData.borderRadius) {
32801
- return `${this.configData.borderRadius}px`;
33020
+
33021
+ // 高度设置
33022
+ if (config.heightType === "fixed") {
33023
+ height = `${config.heightValue}px`;
33024
+ } else if (config.heightType === "percent") {
33025
+ height = `${config.heightValue}%`;
32802
33026
  }
32803
- return "0";
32804
- },
32805
- getConfigData(configData) {
32806
- this.configData = configData;
32807
- },
32808
- foldMessText() {
32809
- this.messFold = !this.messFold;
32810
- },
32811
- decodeJumpUrl(url) {
32812
- if (!url) return;
32813
- top.location.href = url;
33027
+ return {
33028
+ width,
33029
+ height,
33030
+ maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : "none",
33031
+ maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : "none",
33032
+ borderRadius: `${config.borderRadius}px`,
33033
+ overflow: "hidden",
33034
+ cursor: config.linkUrl ? "pointer" : "default",
33035
+ display: "inline-block"
33036
+ };
32814
33037
  },
32815
- onStart(evt) {
32816
- console.log("drag start in column-card", evt);
32817
- this.showAddCom = true;
33038
+ // 图片样式
33039
+ imageStyle() {
33040
+ const config = {
33041
+ ...this.defaultConfig,
33042
+ ...this.configData
33043
+ };
33044
+ return {
33045
+ width: "100%",
33046
+ height: "100%",
33047
+ objectFit: config.objectFit,
33048
+ display: "block"
33049
+ };
32818
33050
  },
32819
- // 限制拖拽的组件类型
32820
- onMove(evt) {
32821
- const {
32822
- draggedContext
32823
- } = evt;
32824
-
32825
- // 允许的组件类型
32826
- const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
32827
- ];
32828
-
32829
- // 如果是从外部拖入的组件
32830
- if (draggedContext && draggedContext.element) {
32831
- const componentType = draggedContext.element.cmsCompName;
32832
- if (componentType && !allowedComponents.includes(componentType)) {
32833
- console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
32834
- return false;
32835
- }
33051
+ // 占位符样式
33052
+ placeholderStyle() {
33053
+ const config = {
33054
+ ...this.defaultConfig,
33055
+ ...this.configData
33056
+ };
33057
+ let width = "100%";
33058
+ let height = "auto";
32836
33059
 
32837
- // 特殊处理 cms-column:检查嵌套层级
32838
- if (componentType === "cms-column") {
32839
- if (!this.checkColumnNestingLevel()) {
32840
- console.log("cms-column 嵌套层级超出限制");
32841
- return false;
32842
- }
32843
- }
33060
+ // 如果设置了固定尺寸,使用设置的尺寸
33061
+ if (config.widthType === "fixed") {
33062
+ width = `${config.widthValue}px`;
32844
33063
  }
32845
- return true;
32846
- },
32847
- // 检查 cms-column 嵌套层级
32848
- checkColumnNestingLevel() {
32849
- // 检查当前 column-card 是否已经在 cms-column 内部
32850
- let parent = this.$parent;
32851
- let columnDepth = 0;
32852
- while (parent) {
32853
- // 检查父组件是否是 cms-column 或包含 cms-column
32854
- if (parent.$options.name === "cms-column" || parent.$data && parent.$data.data && parent.$data.data.cmsCompName === "cms-column") {
32855
- columnDepth++;
32856
- }
32857
-
32858
- // 如果已经有一层 cms-column,则不允许再嵌套
32859
- if (columnDepth >= 2) {
32860
- console.log(`检测到 cms-column 嵌套层级: ${columnDepth}, 超出限制`);
32861
- return false;
32862
- }
32863
- parent = parent.$parent;
33064
+ if (config.heightType === "fixed") {
33065
+ height = `${config.heightValue}px`;
32864
33066
  }
32865
- console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
32866
- return true;
33067
+ return {
33068
+ width,
33069
+ height,
33070
+ backgroundColor: "#F2F9FF",
33071
+ border: "1px dashed #dcdfe6",
33072
+ borderRadius: `${config.borderRadius}px`,
33073
+ display: "flex",
33074
+ flexDirection: "column",
33075
+ alignItems: "center",
33076
+ justifyContent: "center",
33077
+ color: "#909399",
33078
+ fontSize: "14px"
33079
+ };
33080
+ }
33081
+ },
33082
+ methods: {
33083
+ // 初始化配置数据
33084
+ initConfigData() {
33085
+ this.configData = {
33086
+ ...this.defaultConfig,
33087
+ ...this.configData
33088
+ };
32867
33089
  },
32868
- // 处理拖拽悬停
32869
- dragover(e) {
32870
- e.preventDefault();
32871
- this.showAddCom = true;
33090
+ // 获取配置数据
33091
+ getConfigData(configData) {
33092
+ this.configData = {
33093
+ ...this.defaultConfig,
33094
+ ...configData
33095
+ };
33096
+ this.updateStyles();
32872
33097
  },
32873
- // 处理拖拽放置
32874
- drop(e) {
32875
- console.log("cms-colum-card-drop");
32876
- e.preventDefault();
32877
- const componentKey = e.dataTransfer.getData("componentKey");
32878
- if (!componentKey) return;
32879
-
32880
- // 允许的组件类型
32881
- const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
32882
- ];
32883
-
32884
- // 检查组件类型是否允许
32885
- if (!allowedComponents.includes(componentKey)) {
32886
- console.log(`组件类型 ${componentKey} 不允许拖入 column-card`);
32887
- this.$message && this.$message.warning(`该组件类型不支持拖入卡片容器`);
32888
- this.showAddCom = false;
32889
- return;
32890
- }
32891
-
32892
- // 特殊处理 cms-column:检查嵌套层级
32893
- if (componentKey === "cms-column") {
32894
- if (!this.checkColumnNestingLevel()) {
32895
- console.log("cms-column 嵌套层级超出限制");
32896
- this.$message && this.$message.warning(`cms-column 只能嵌套一层`);
32897
- this.showAddCom = false;
32898
- return;
33098
+ // 更新样式
33099
+ updateStyles() {
33100
+ this.$nextTick(() => {
33101
+ this.$forceUpdate();
33102
+ });
33103
+ },
33104
+ // 处理点击事件
33105
+ handleClick() {
33106
+ if (this.configData.linkUrl) {
33107
+ const target = this.configData.linkTarget || "_self";
33108
+ if (target === "_blank") {
33109
+ window.open(this.configData.linkUrl, "_blank");
33110
+ } else {
33111
+ window.location.href = this.configData.linkUrl;
32899
33112
  }
32900
33113
  }
32901
- this.addOneComp(e, componentKey);
32902
33114
  },
32903
- // 添加组件到卡片容器
32904
- addOneComp(e, componentKey) {
32905
- this.showAddCom = false;
32906
- console.log("drop to column-card", componentKey);
32907
-
32908
- // 动态导入组件配置
32909
- let initCompData;
33115
+ // 图片加载成功
33116
+ onImageLoad() {
33117
+ this.imageLoaded = true;
33118
+ this.imageError = false;
33119
+ },
33120
+ // 图片加载失败
33121
+ onImageError() {
33122
+ this.imageLoaded = false;
33123
+ this.imageError = true;
33124
+ },
33125
+ // 解析自定义样式
33126
+ parseCustomStyle(customStyle) {
33127
+ if (!customStyle) return {};
32910
33128
  try {
32911
- initCompData = __webpack_require__(1640)(`./${componentKey}`).default.settings(componentKey);
32912
- initCompData = {
32913
- ...initCompData,
32914
- styleConfig: {
32915
- pc: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(16, 16, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")],
32916
- mb: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(12, 12, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")]
33129
+ const styles = {};
33130
+ const declarations = customStyle.split(";");
33131
+ declarations.forEach(declaration => {
33132
+ const [property, value] = declaration.split(":");
33133
+ if (property && value) {
33134
+ const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
33135
+ styles[camelCaseProperty] = value.trim();
32917
33136
  }
32918
- };
33137
+ });
33138
+ return styles;
32919
33139
  } catch (error) {
32920
- console.error(`无法加载组件 ${componentKey}:`, error);
32921
- this.$message && this.$message.error(`组件加载失败`);
32922
- return;
32923
- }
32924
- const toElementId = e.toElement.id;
32925
- if (toElementId === `cardTarget${this.data.componentId}` || toElementId.includes("cardTargetdown")) {
32926
- // 添加到卡片容器末尾
32927
- this.data.childList.push(initCompData);
32928
- } else if (toElementId.includes("cardTargetup")) {
32929
- // 插入到指定位置
32930
- const underComponentId = toElementId.split("-cardTargetup")[0];
32931
- const index = this.data.childList.findIndex(item => item.componentId === underComponentId);
32932
- if (index !== -1) {
32933
- this.data.childList.splice(index, 0, initCompData);
32934
- }
32935
- }
32936
-
32937
- // 触发数据更新
32938
- this.$emit("update:data", this.data);
32939
- if (componentKey === "cms-column") {
32940
- this.$EventBus.$emit("handleNowComp", initCompData);
33140
+ console.warn("解析自定义样式失败:", error);
33141
+ return {};
32941
33142
  }
32942
33143
  }
32943
33144
  }
32944
33145
  });
32945
- ;// ./package/cms-column-card/View.vue?vue&type=script&lang=js
32946
- /* harmony default export */ var cms_column_card_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
32947
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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=971892d6&prod&lang=scss&scoped=true
33146
+ ;// ./package/cms-image/View.vue?vue&type=script&lang=js
33147
+ /* harmony default export */ var cms_image_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
33148
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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-image/View.vue?vue&type=style&index=0&id=5dac7dea&prod&lang=scss&scoped=true
32948
33149
  // extracted by mini-css-extract-plugin
32949
33150
 
32950
- ;// ./package/cms-column-card/View.vue?vue&type=style&index=0&id=971892d6&prod&lang=scss&scoped=true
33151
+ ;// ./package/cms-image/View.vue?vue&type=style&index=0&id=5dac7dea&prod&lang=scss&scoped=true
32951
33152
 
32952
33153
  // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
32953
33154
  var componentNormalizer = __webpack_require__(1656);
32954
- ;// ./package/cms-column-card/View.vue
33155
+ ;// ./package/cms-image/View.vue
32955
33156
 
32956
33157
 
32957
33158
 
@@ -32961,18 +33162,64 @@ var componentNormalizer = __webpack_require__(1656);
32961
33162
  /* normalize component */
32962
33163
 
32963
33164
  var component = (0,componentNormalizer/* default */.A)(
32964
- cms_column_card_Viewvue_type_script_lang_js,
33165
+ cms_image_Viewvue_type_script_lang_js,
32965
33166
  render,
32966
33167
  staticRenderFns,
32967
33168
  false,
32968
33169
  null,
32969
- "971892d6",
33170
+ "5dac7dea",
32970
33171
  null
32971
33172
 
32972
33173
  )
32973
33174
 
32974
33175
  /* harmony default export */ var View = (component.exports);
32975
33176
 
33177
+ /***/ }),
33178
+
33179
+ /***/ 3838:
33180
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
33181
+
33182
+ "use strict";
33183
+
33184
+ var aSet = __webpack_require__(7080);
33185
+ var size = __webpack_require__(5170);
33186
+ var iterate = __webpack_require__(8469);
33187
+ var getSetRecord = __webpack_require__(3789);
33188
+
33189
+ // `Set.prototype.isSubsetOf` method
33190
+ // https://tc39.github.io/proposal-set-methods/#Set.prototype.isSubsetOf
33191
+ module.exports = function isSubsetOf(other) {
33192
+ var O = aSet(this);
33193
+ var otherRec = getSetRecord(other);
33194
+ if (size(O) > otherRec.size) return false;
33195
+ return iterate(O, function (e) {
33196
+ if (!otherRec.includes(e)) return false;
33197
+ }, true) !== false;
33198
+ };
33199
+
33200
+
33201
+ /***/ }),
33202
+
33203
+ /***/ 3853:
33204
+ /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
33205
+
33206
+ "use strict";
33207
+
33208
+ var $ = __webpack_require__(6518);
33209
+ var isDisjointFrom = __webpack_require__(4449);
33210
+ var setMethodAcceptSetLike = __webpack_require__(4916);
33211
+
33212
+ var INCORRECT = !setMethodAcceptSetLike('isDisjointFrom', function (result) {
33213
+ return !result;
33214
+ });
33215
+
33216
+ // `Set.prototype.isDisjointFrom` method
33217
+ // https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom
33218
+ $({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
33219
+ isDisjointFrom: isDisjointFrom
33220
+ });
33221
+
33222
+
32976
33223
  /***/ }),
32977
33224
 
32978
33225
  /***/ 3923:
@@ -33041,7 +33288,7 @@ var render = function render() {
33041
33288
  var staticRenderFns = [];
33042
33289
 
33043
33290
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
33044
- var baseComp = __webpack_require__(7843);
33291
+ var baseComp = __webpack_require__(7135);
33045
33292
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-titleCenter/View.vue?vue&type=script&lang=js
33046
33293
 
33047
33294
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -33330,7 +33577,7 @@ var render = function render() {
33330
33577
  var staticRenderFns = [];
33331
33578
 
33332
33579
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
33333
- var baseComp = __webpack_require__(7843);
33580
+ var baseComp = __webpack_require__(7135);
33334
33581
  // EXTERNAL MODULE: ./package/patch.js
33335
33582
  var patch = __webpack_require__(4229);
33336
33583
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-via-storedValueCard/View.vue?vue&type=script&lang=js
@@ -33854,367 +34101,6 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
33854
34101
 
33855
34102
  /***/ }),
33856
34103
 
33857
- /***/ 4297:
33858
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
33859
-
33860
- "use strict";
33861
- // ESM COMPAT FLAG
33862
- __webpack_require__.r(__webpack_exports__);
33863
-
33864
- // EXPORTS
33865
- __webpack_require__.d(__webpack_exports__, {
33866
- "default": function() { return /* binding */ View; }
33867
- });
33868
-
33869
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-video/View.vue?vue&type=template&id=a681eca6&scoped=true
33870
- var render = function render() {
33871
- var _vm = this,
33872
- _c = _vm._self._c;
33873
- return _c('BaseComp', _vm._b({
33874
- attrs: {
33875
- "data": _vm.data,
33876
- "nowCompId": _vm.nowCompId,
33877
- "isOpcacity": _vm.isOpcacity,
33878
- "isMask": false,
33879
- "lang": _vm.lang
33880
- },
33881
- on: {
33882
- "getConfigData": _vm.getConfigData
33883
- }
33884
- }, 'BaseComp', _vm.$attrs, false), [_c('section', {
33885
- staticClass: "cms-video-container",
33886
- class: [_vm.configData.customClass || ''],
33887
- style: _vm.containerStyle
33888
- }, [_c('div', {
33889
- staticClass: "video-wrapper",
33890
- style: _vm.wrapperStyle
33891
- }, [_vm.videoType === 'direct' && _vm.configData.videoUrl ? _c('video', {
33892
- staticClass: "cms-video direct-video",
33893
- style: _vm.videoStyle,
33894
- attrs: {
33895
- "src": _vm.configData.videoUrl,
33896
- "controls": _vm.configData.showControls,
33897
- "autoplay": _vm.configData.autoplay,
33898
- "loop": _vm.configData.loop,
33899
- "poster": _vm.configData.posterUrl
33900
- },
33901
- domProps: {
33902
- "muted": _vm.configData.muted
33903
- },
33904
- on: {
33905
- "loadstart": _vm.onVideoLoadStart,
33906
- "loadeddata": _vm.onVideoLoaded,
33907
- "error": _vm.onVideoError
33908
- }
33909
- }) : _vm.configData.embedCode ? _c('div', {
33910
- staticClass: "cms-video embed-video",
33911
- style: _vm.videoStyle,
33912
- domProps: {
33913
- "innerHTML": _vm._s(_vm.configData.embedCode)
33914
- }
33915
- }) : _c('div', {
33916
- staticClass: "video-placeholder",
33917
- style: _vm.placeholderStyle
33918
- }, [_c('i', {
33919
- staticClass: "el-icon-video-camera-solid"
33920
- }), _c('p', [_vm._v("请设置视频源")])])])])]);
33921
- };
33922
- var staticRenderFns = [];
33923
-
33924
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
33925
- var es_iterator_constructor = __webpack_require__(8111);
33926
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
33927
- var es_iterator_for_each = __webpack_require__(7588);
33928
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.map.js
33929
- var es_iterator_map = __webpack_require__(1701);
33930
- // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
33931
- var baseComp = __webpack_require__(7843);
33932
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-video/View.vue?vue&type=script&lang=js
33933
-
33934
-
33935
-
33936
-
33937
-
33938
-
33939
-
33940
- /* harmony default export */ var Viewvue_type_script_lang_js = ({
33941
- name: "cms-video",
33942
- components: {
33943
- BaseComp: baseComp["default"]
33944
- },
33945
- props: {
33946
- data: {
33947
- type: Object,
33948
- default: () => {
33949
- return {};
33950
- }
33951
- },
33952
- nowCompId: {
33953
- type: [String, Number],
33954
- default: ""
33955
- },
33956
- isOpcacity: {
33957
- type: Boolean,
33958
- default: true
33959
- },
33960
- lang: {
33961
- type: String,
33962
- default: "zh-HK"
33963
- }
33964
- },
33965
- data() {
33966
- return {
33967
- configData: {},
33968
- videoLoaded: false,
33969
- videoError: false,
33970
- // 默认配置数据
33971
- defaultConfig: {
33972
- // 视频源设置
33973
- videoType: "direct",
33974
- videoUrl: "",
33975
- embedCode: "",
33976
- posterUrl: "",
33977
- // 播放控制
33978
- showControls: true,
33979
- autoplay: false,
33980
- loop: false,
33981
- muted: false,
33982
- // 尺寸控制
33983
- widthType: "auto",
33984
- widthValue: 100,
33985
- heightType: "auto",
33986
- heightValue: 100,
33987
- aspectRatio: "16:9",
33988
- customAspectRatio: "16:9",
33989
- maxWidth: 0,
33990
- maxHeight: 0,
33991
- // 样式设置
33992
- borderRadius: 0,
33993
- // 高级配置
33994
- customClass: "",
33995
- customStyle: ""
33996
- }
33997
- };
33998
- },
33999
- mounted() {
34000
- this.initConfigData();
34001
- },
34002
- watch: {
34003
- configData: {
34004
- handler() {
34005
- this.updateStyles();
34006
- },
34007
- deep: true
34008
- }
34009
- },
34010
- computed: {
34011
- // 视频类型
34012
- videoType() {
34013
- return this.configData.videoType || this.defaultConfig.videoType;
34014
- },
34015
- // 实际使用的宽高比
34016
- actualAspectRatio() {
34017
- const config = {
34018
- ...this.defaultConfig,
34019
- ...this.configData
34020
- };
34021
- if (config.aspectRatio === 'custom') {
34022
- return config.customAspectRatio || '16:9';
34023
- }
34024
- return config.aspectRatio;
34025
- },
34026
- // 容器样式
34027
- containerStyle() {
34028
- const config = {
34029
- ...this.defaultConfig,
34030
- ...this.configData
34031
- };
34032
- return {
34033
- ...this.parseCustomStyle(config.customStyle)
34034
- };
34035
- },
34036
- // 包装器样式
34037
- wrapperStyle() {
34038
- const config = {
34039
- ...this.defaultConfig,
34040
- ...this.configData
34041
- };
34042
- let width = 'auto';
34043
- let height = 'auto';
34044
-
34045
- // 宽度设置
34046
- if (config.widthType === 'fixed') {
34047
- width = `${config.widthValue}px`;
34048
- } else if (config.widthType === 'percent') {
34049
- width = `${config.widthValue}%`;
34050
- }
34051
-
34052
- // 高度设置
34053
- if (config.heightType === 'fixed') {
34054
- height = `${config.heightValue}px`;
34055
- } else if (config.heightType === 'percent') {
34056
- height = `${config.heightValue}%`;
34057
- } else if (config.heightType === 'aspect') {
34058
- // 根据宽高比计算高度
34059
- height = 'auto';
34060
- }
34061
- return {
34062
- width,
34063
- height,
34064
- maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : 'none',
34065
- maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : 'none',
34066
- borderRadius: `${config.borderRadius}px`,
34067
- overflow: 'hidden',
34068
- display: 'block',
34069
- position: 'relative'
34070
- };
34071
- },
34072
- // 视频样式
34073
- videoStyle() {
34074
- const config = {
34075
- ...this.defaultConfig,
34076
- ...this.configData
34077
- };
34078
- let style = {
34079
- width: '100%',
34080
- height: '100%',
34081
- display: 'block',
34082
- border: 'none',
34083
- outline: 'none'
34084
- };
34085
-
34086
- // 如果是宽高比模式,设置aspect-ratio
34087
- if (config.heightType === 'aspect') {
34088
- style.aspectRatio = this.actualAspectRatio.replace(':', '/');
34089
- }
34090
- return style;
34091
- },
34092
- // 占位符样式
34093
- placeholderStyle() {
34094
- const config = {
34095
- ...this.defaultConfig,
34096
- ...this.configData
34097
- };
34098
- let width = '400px';
34099
- let height = '225px'; // 16:9 比例
34100
-
34101
- // 如果设置了固定尺寸,使用设置的尺寸
34102
- if (config.widthType === 'fixed') {
34103
- width = `${config.widthValue}px`;
34104
- }
34105
- if (config.heightType === 'fixed') {
34106
- height = `${config.heightValue}px`;
34107
- } else if (config.heightType === 'aspect') {
34108
- const [w, h] = this.actualAspectRatio.split(':').map(Number);
34109
- const widthPx = parseInt(width);
34110
- height = `${Math.round(widthPx * h / w)}px`;
34111
- }
34112
- return {
34113
- width,
34114
- height,
34115
- backgroundColor: '#f5f7fa',
34116
- border: '1px dashed #dcdfe6',
34117
- borderRadius: `${config.borderRadius}px`,
34118
- display: 'flex',
34119
- flexDirection: 'column',
34120
- alignItems: 'center',
34121
- justifyContent: 'center',
34122
- color: '#909399',
34123
- fontSize: '14px'
34124
- };
34125
- }
34126
- },
34127
- methods: {
34128
- // 初始化配置数据
34129
- initConfigData() {
34130
- this.configData = {
34131
- ...this.defaultConfig,
34132
- ...this.configData
34133
- };
34134
- },
34135
- // 获取配置数据
34136
- getConfigData(configData) {
34137
- this.configData = {
34138
- ...this.defaultConfig,
34139
- ...configData
34140
- };
34141
- this.updateStyles();
34142
- },
34143
- // 更新样式
34144
- updateStyles() {
34145
- this.$nextTick(() => {
34146
- this.$forceUpdate();
34147
- });
34148
- },
34149
- // 视频开始加载
34150
- onVideoLoadStart() {
34151
- this.videoLoaded = false;
34152
- this.videoError = false;
34153
- },
34154
- // 视频加载完成
34155
- onVideoLoaded() {
34156
- this.videoLoaded = true;
34157
- this.videoError = false;
34158
- },
34159
- // 视频加载失败
34160
- onVideoError() {
34161
- this.videoLoaded = false;
34162
- this.videoError = true;
34163
- },
34164
- // 解析自定义样式
34165
- parseCustomStyle(customStyle) {
34166
- if (!customStyle) return {};
34167
- try {
34168
- const styles = {};
34169
- const declarations = customStyle.split(';');
34170
- declarations.forEach(declaration => {
34171
- const [property, value] = declaration.split(':');
34172
- if (property && value) {
34173
- const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
34174
- styles[camelCaseProperty] = value.trim();
34175
- }
34176
- });
34177
- return styles;
34178
- } catch (error) {
34179
- console.warn('解析自定义样式失败:', error);
34180
- return {};
34181
- }
34182
- }
34183
- }
34184
- });
34185
- ;// ./package/cms-video/View.vue?vue&type=script&lang=js
34186
- /* harmony default export */ var cms_video_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
34187
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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-video/View.vue?vue&type=style&index=0&id=a681eca6&prod&lang=scss&scoped=true
34188
- // extracted by mini-css-extract-plugin
34189
-
34190
- ;// ./package/cms-video/View.vue?vue&type=style&index=0&id=a681eca6&prod&lang=scss&scoped=true
34191
-
34192
- // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
34193
- var componentNormalizer = __webpack_require__(1656);
34194
- ;// ./package/cms-video/View.vue
34195
-
34196
-
34197
-
34198
- ;
34199
-
34200
-
34201
- /* normalize component */
34202
-
34203
- var component = (0,componentNormalizer/* default */.A)(
34204
- cms_video_Viewvue_type_script_lang_js,
34205
- render,
34206
- staticRenderFns,
34207
- false,
34208
- null,
34209
- "a681eca6",
34210
- null
34211
-
34212
- )
34213
-
34214
- /* harmony default export */ var View = (component.exports);
34215
-
34216
- /***/ }),
34217
-
34218
34104
  /***/ 4326:
34219
34105
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
34220
34106
 
@@ -34854,7 +34740,7 @@ var render = function render() {
34854
34740
  var staticRenderFns = [];
34855
34741
 
34856
34742
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
34857
- var baseComp = __webpack_require__(7843);
34743
+ var baseComp = __webpack_require__(7135);
34858
34744
  // EXTERNAL MODULE: ./src/utils/request.js + 2 modules
34859
34745
  var utils_request = __webpack_require__(9688);
34860
34746
  ;// ./src/api/servePlan.js
@@ -35123,7 +35009,7 @@ var render = function render() {
35123
35009
  var staticRenderFns = [];
35124
35010
 
35125
35011
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
35126
- var baseComp = __webpack_require__(7843);
35012
+ var baseComp = __webpack_require__(7135);
35127
35013
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
35128
35014
  var jumpUrl = __webpack_require__(4102);
35129
35015
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-titleLeft/View.vue?vue&type=script&setup=true&lang=js
@@ -35541,7 +35427,7 @@ var render = function render() {
35541
35427
  var staticRenderFns = [];
35542
35428
 
35543
35429
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
35544
- var baseComp = __webpack_require__(7843);
35430
+ var baseComp = __webpack_require__(7135);
35545
35431
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-servePlan-text/View.vue?vue&type=script&lang=js
35546
35432
 
35547
35433
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -35668,7 +35554,7 @@ const langData = {
35668
35554
  fontWeight: "normal",
35669
35555
  fontStyle: "normal",
35670
35556
  textDecoration: "none",
35671
- fontFamily: "inherit",
35557
+ fontFamily: "Microsoft YaHei",
35672
35558
  // 布局设置
35673
35559
  paddingTop: 0,
35674
35560
  paddingBottom: 0,
@@ -35776,7 +35662,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35776
35662
  // 样式美化配置
35777
35663
  fontColor: {
35778
35664
  label: "字体颜色",
35779
- widgetType: "el-color-picker"
35665
+ widgetType: "el-color-picker",
35666
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
35780
35667
  },
35781
35668
  fontWeight: {
35782
35669
  label: "字体粗细",
@@ -35847,35 +35734,21 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35847
35734
  value: "overline"
35848
35735
  }]
35849
35736
  },
35850
- fontFamily: {
35851
- label: "字体族",
35852
- widgetType: "el-select",
35853
- options: [{
35854
- label: "默认",
35855
- value: "inherit"
35856
- }, {
35857
- label: "微软雅黑",
35858
- value: "Microsoft YaHei"
35859
- }, {
35860
- label: "宋体",
35861
- value: "SimSun"
35862
- }, {
35863
- label: "黑体",
35864
- value: "SimHei"
35865
- }, {
35866
- label: "楷体",
35867
- value: "KaiTi"
35868
- }, {
35869
- label: "Arial",
35870
- value: "Arial"
35871
- }, {
35872
- label: "Times New Roman",
35873
- value: "Times New Roman"
35874
- }, {
35875
- label: "Helvetica",
35876
- value: "Helvetica"
35877
- }]
35878
- },
35737
+ // fontFamily: {
35738
+ // label: "字体族",
35739
+ // widgetType: "el-select",
35740
+ // options: [
35741
+ // { label: "默认", value: "inherit" },
35742
+ // { label: "微软雅黑", value: "Microsoft YaHei" },
35743
+ // { label: "宋体", value: "SimSun" },
35744
+ // { label: "黑体", value: "SimHei" },
35745
+ // { label: "楷体", value: "KaiTi" },
35746
+ // { label: "Arial", value: "Arial" },
35747
+ // { label: "Times New Roman", value: "Times New Roman" },
35748
+ // { label: "Helvetica", value: "Helvetica" },
35749
+ // ],
35750
+ // },
35751
+
35879
35752
  // 布局设置配置
35880
35753
  paddingTop: {
35881
35754
  label: "上内边距(px)",
@@ -35935,7 +35808,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35935
35808
  },
35936
35809
  backgroundColor: {
35937
35810
  label: "背景颜色",
35938
- widgetType: "el-color-picker"
35811
+ widgetType: "el-color-picker",
35812
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
35939
35813
  },
35940
35814
  // 视觉效果配置
35941
35815
  borderWidth: {
@@ -35964,7 +35838,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35964
35838
  },
35965
35839
  borderColor: {
35966
35840
  label: "边框颜色",
35967
- widgetType: "el-color-picker"
35841
+ widgetType: "el-color-picker",
35842
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
35968
35843
  },
35969
35844
  borderRadius: {
35970
35845
  label: "圆角(px)",
@@ -35995,15 +35870,16 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35995
35870
  label: "新窗口",
35996
35871
  value: "_blank"
35997
35872
  }]
35998
- },
35999
- showLinkIcon: {
36000
- label: "显示链接图标",
36001
- widgetType: "el-switch"
36002
- },
36003
- hoverEffect: {
36004
- label: "悬停效果",
36005
- widgetType: "el-switch"
36006
- },
35873
+ }
35874
+ // showLinkIcon: {
35875
+ // label: "显示链接图标",
35876
+ // widgetType: "el-switch",
35877
+ // },
35878
+ // hoverEffect: {
35879
+ // label: "链接悬停效果",
35880
+ // widgetType: "el-switch",
35881
+ // },
35882
+
36007
35883
  // 高级配置
36008
35884
  // customClass: {
36009
35885
  // label: "自定义CSS类",
@@ -36016,41 +35892,30 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
36016
35892
  // type: "textarea",
36017
35893
  // placeholder: "请输入CSS样式,如: color: red; font-size: 18px;",
36018
35894
  // },
36019
- enableAnimation: {
36020
- label: "启用动画",
36021
- widgetType: "el-switch"
36022
- },
36023
- animationType: {
36024
- label: "动画类型",
36025
- widgetType: "el-select",
36026
- options: [{
36027
- label: "淡入",
36028
- value: "fadeIn"
36029
- }, {
36030
- label: "从左滑入",
36031
- value: "slideInLeft"
36032
- }, {
36033
- label: "从右滑入",
36034
- value: "slideInRight"
36035
- }, {
36036
- label: "从上滑入",
36037
- value: "slideInDown"
36038
- }, {
36039
- label: "从下滑入",
36040
- value: "slideInUp"
36041
- }, {
36042
- label: "缩放进入",
36043
- value: "zoomIn"
36044
- }]
36045
- },
36046
- animationDuration: {
36047
- label: "动画时长(ms)",
36048
- widgetType: "el-input-number",
36049
- size: "small",
36050
- min: 100,
36051
- max: 2000,
36052
- step: 100
36053
- }
35895
+ // enableAnimation: {
35896
+ // label: "启用动画",
35897
+ // widgetType: "el-switch",
35898
+ // },
35899
+ // animationType: {
35900
+ // label: "动画类型",
35901
+ // widgetType: "el-select",
35902
+ // options: [
35903
+ // { label: "淡入", value: "fadeIn" },
35904
+ // { label: "从左滑入", value: "slideInLeft" },
35905
+ // { label: "从右滑入", value: "slideInRight" },
35906
+ // { label: "从上滑入", value: "slideInDown" },
35907
+ // { label: "从下滑入", value: "slideInUp" },
35908
+ // { label: "缩放进入", value: "zoomIn" },
35909
+ // ],
35910
+ // },
35911
+ // animationDuration: {
35912
+ // label: "动画时长(ms)",
35913
+ // widgetType: "el-input-number",
35914
+ // size: "small",
35915
+ // min: 100,
35916
+ // max: 2000,
35917
+ // step: 100,
35918
+ // },
36054
35919
  });
36055
35920
  const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
36056
35921
  /* harmony default export */ __webpack_exports__["default"] = ({
@@ -36068,6 +35933,14 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
36068
35933
 
36069
35934
  /***/ }),
36070
35935
 
35936
+ /***/ 4806:
35937
+ /***/ (function(module) {
35938
+
35939
+ "use strict";
35940
+ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAgoSURBVHgB7d1RbtxEGMDxb5yq8JgbsJygSaFIPJGcgHKCxuEAlBMkPQHliQcELjcoJ2h4QgLSLidguUEeaUV2mHHXtJRmMvbu2jPf/H9SIBVqidT5r+1vvR4RAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDSjKyheWZndin3jZFP3S9nAqRjLtZ9vZAH9cdmIQMNDuT73+w9U8lD9+2uAOm68C/ixx+aH2SAQYF8+6s9uLEjTwTIxaUc1nfMmfRUyQAujkaAnAxcs70D8UcP4XoD+Zk1L9duL70DqSrZEyBDywFrd8gpFhflyFXvtTvoGgQoBYEAAQQCBBAIEEAgQACBAAEEAgQQCBBAIEAAgQABBAIEEAgQQCBAAIEAAQQCBBAIEEAgQACBAAEEAgQQCBBAIEAAgQABBAIEEAgQcEPKdmFFfvePyTeVzP2vV1/e7nIpM2Pap/HtGZFbguIUGYiL4ie38E/dt/PjfXMR83v8XiiylCMxck94NnExigqkDeO5HB0P2FCl3m9/z6n/as6tD+VECEW9Uq5BFm5BHx7fNgfr7DbUqT8wj/yf54IbtCkL8lFCIHN5LofuCHAmG+SPKC64I3dY+lKglvZAfvCv9Js4alzFHU0eyt+yL68u7qGI5kDmtXuFryMvwtdRf2TmcimfCdTRGsjCnVaNumDb/e843VJHZyDPt3tadZX2dEvkTKCGvkCsPJoijn8ZqYXrETX0BfJCHsiE/HRraeVrgQq6Apn66LFSVeJPtTiKKKArkImPHh0/OfPv2guypymQeQpHj465bI8iyJyaQKxN7BX7Rnt3MDKnJhB3YXwmCVm9QUkkmVMTyM6Oe3MwMe1nTZA1TdcgC0mNZZKVOzWBjHHPVV+WUW/2+Ew6EKAmkOaZ3ZXEGJHkfib0oyaQv/5KcDEaPpKbOzWB3LwpB5IYdwR5T5A1NYG4xbgnCVmd8iX1M6E/PYEY+UQScnmZ3hEN/WmaYu01v9hkXrGrSu4KsqdqzLvcSWNR+ofMuVO+e4LsqQqkMvJFEuPeJXFooe2Nwl23OE9kQu0jSl8+1hQK6Hsn3cj95ld7IBOxljg00XmryY40U5xqNef2hGsPXbTeizUTK0/GjKT5zd7l1EofzTcr7rnrkVGOJN/6U7pKGoE6uu/mNW7s648kP7sL5y357tzev7EjT4QbE1Uq4Xb3PXlHnnzn9/TYIH9kctccX7nR8lcCtUr5PMjMLeTGLehm3aPJKowTd2T6w0/MJA8X7ud90D7p/rYx/st9v8/+Jtcraws2I0fuaHLkFvjjpciPn/uNcCJ948J696abUFkXhcnqdGrxtmcV1/vGP1DiyAV/6k9Dhd2y3qrMTTzdtYk7dN5tnlp/YX3m3rv43b2azpfLV59rr6p2wexWfvNO0954OJP8LK57kLd/VKqL5JBI3q70XW69A3fCceDev5BqRzS5iH3KfRvJL/YztxoYNryBz6RrtZS6z5Mm202A2N/kfwhEI3dBXn9oHktP7eakNo3nG6eCQJRx11Nfu4V+KgOtfi/TrRUC0WV+/IFZf/T8cnzNY1OFQDTZ2L6M7UP4TPtnLaRwBKLDxab3ZfSTLfm7jaTop0MSiAY9J1axmGwRSP4GTqxilT7ZIpCMrTuxilXyZItA8rWZiVWsQidbBJKnjU2sYpU62SKQ/Gx8YhWrxMkWgeRmSxOrWKVNtggkJ1ueWMUqabJFIJkYa2IVq5TJFoHkYdyJVawCJlsEkr7RJ1axSphsEUjaJptYxdI+2SKQlE08sYqlebJFIKlKZGIVS+tkq7RA5kv/Smfk/dXXvvtLrSWxc+jUJlaxNE62inmqiV90V0yC/BTmUXNuT10wk+4tspLmxCqWn2xZuSVKNjAt4wjiDv3XLbr21W/6U4RkJ1axtE229Afiz+UjT1cmjiT5iVUsTZMt3YH0iKMzWSSZTKxiaZls6Q1kQByd0SPJbGIVS8NkS2cga8TRGSuSXCdWsXKfbOkLZANxdEaIJO+JVayM79nSFcgG4+hsMZLsJ1axcp5s6QlkC3F0thCJmolVrFwnWzoC2WIcnY1GomxiFSvHyVb+gYwQR2cjkSidWMXKbbKVdyAjxtFZJxLtE6tYOU228g1kgjg6AyMpY2IVK5PJVp6BTBhHp2ckxUysYuUy2covkATi6ERGsihtYhUrh8lWXoEkFEen/Xku5dCK/PTGf+r2Jt8njqulPtnK5/MgCcbRqe+YM/evg+aZ9TvE+s9BLNpXR0Txk63m3M4S+TzOf+QRSMJxvK49rxY5E/Tm/36bpy4SkXuSkPRPsTKJAxuQ4GQr7UCIoygpTrbSDYQ4ipTaZCvNQIijaClNttILhDgg6dyzlVYgxIHXpHDPVjqBEAfeZuLJVhqBEAeuMPVka/pAiAPXmHKyNW0gxIFIU022pguEONDTFJOtaQIhDgw09mRr/ECIA+sacbI1biDEgQ0Yc7I1XiDEgQ0aa7I1TiDEgS0YY7I1zgemjJw0T21ynxYDrsMmnkAAgQABBAIEEAgQQCBAAIEAAQQCBBAIEEAgQACBAAEEAgQQCBBAIEAAgQABBAIEEAgQQCBAAIEAAUMCSXbLXuAavddu70CqZVp7yAGxqqr/2jUyQPPU/uH+NRMgH4v6tnlfehp2DXIptQA5McPW7KBA6jvmTGz7P+R6BKm78Gu13ndrdoBBp1id5pmdWSun7ts99wfdEiARVuRP94/H5oU8rD82CwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6PQPqhbJqz3H0TgAAAAASUVORK5CYII=";
35941
+
35942
+ /***/ }),
35943
+
36071
35944
  /***/ 4829:
36072
35945
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
36073
35946
 
@@ -36796,6 +36669,7 @@ module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
36796
36669
  __webpack_require__.r(__webpack_exports__);
36797
36670
  /* harmony default export */ __webpack_exports__["default"] = ({
36798
36671
  Expand: "展开",
36672
+ More: "查看更多",
36799
36673
  Collpase: "收起",
36800
36674
  discount: '优惠期限:'
36801
36675
  });
@@ -36856,12 +36730,13 @@ var map = {
36856
36730
  "./cms-banner/View.vue": 7747,
36857
36731
  "./cms-button/View.vue": 1163,
36858
36732
  "./cms-cells/View.vue": 983,
36859
- "./cms-column-card/View.vue": 3894,
36860
- "./cms-column/View.vue": 8970,
36733
+ "./cms-column-card/View.vue": 9421,
36734
+ "./cms-column/View.vue": 8044,
36861
36735
  "./cms-description/View.vue": 6296,
36862
36736
  "./cms-dynamic-comp/View.vue": 7298,
36863
36737
  "./cms-iconFour/View.vue": 2946,
36864
- "./cms-image/View.vue": 6345,
36738
+ "./cms-image-group/View.vue": 7583,
36739
+ "./cms-image/View.vue": 3823,
36865
36740
  "./cms-imgFour/View.vue": 1282,
36866
36741
  "./cms-lineFive/View.vue": 1716,
36867
36742
  "./cms-lineFour/View.vue": 8067,
@@ -36880,7 +36755,8 @@ var map = {
36880
36755
  "./cms-titleCenter/View.vue": 4003,
36881
36756
  "./cms-titleLeft/View.vue": 4598,
36882
36757
  "./cms-via-storedValueCard/View.vue": 4109,
36883
- "./cms-video/View.vue": 4297,
36758
+ "./cms-video-group/View.vue": 103,
36759
+ "./cms-video/View.vue": 6253,
36884
36760
  "./cms-view/View.vue": 3774
36885
36761
  };
36886
36762
 
@@ -37567,7 +37443,7 @@ var render = function render() {
37567
37443
  var staticRenderFns = [];
37568
37444
 
37569
37445
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
37570
- var baseComp = __webpack_require__(7843);
37446
+ var baseComp = __webpack_require__(7135);
37571
37447
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-richText/View.vue?vue&type=script&lang=js
37572
37448
 
37573
37449
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -37981,6 +37857,18 @@ function queryPageHfList(data) {
37981
37857
  });
37982
37858
  }
37983
37859
 
37860
+ /**
37861
+ * 查询URL接口
37862
+ * @returns {Promise}
37863
+ */
37864
+ function queryUrl(data) {
37865
+ return request({
37866
+ method: "post",
37867
+ url: "/omni-channel-service-console/rest/workBench/queryUrl",
37868
+ data
37869
+ });
37870
+ }
37871
+
37984
37872
  /**
37985
37873
  * 创建页面
37986
37874
  * @param {Object} pageData 页面数据
@@ -38139,11 +38027,18 @@ function emallHeartbeat(data) {
38139
38027
  data
38140
38028
  });
38141
38029
  }
38030
+ function qryBtList(data) {
38031
+ return request({
38032
+ method: "post",
38033
+ url: "/omni-channel-service-console/rest/component/qryBtList",
38034
+ data
38035
+ });
38036
+ }
38142
38037
  // EXTERNAL MODULE: ./node_modules/qs/lib/index.js
38143
38038
  var lib = __webpack_require__(7087);
38144
38039
  var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
38145
38040
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
38146
- var baseComp = __webpack_require__(7843);
38041
+ var baseComp = __webpack_require__(7135);
38147
38042
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-proCard/View.vue?vue&type=script&lang=js
38148
38043
 
38149
38044
 
@@ -38383,6 +38278,14 @@ module.exports = function (key) {
38383
38278
  };
38384
38279
 
38385
38280
 
38281
+ /***/ }),
38282
+
38283
+ /***/ 6148:
38284
+ /***/ (function(module) {
38285
+
38286
+ "use strict";
38287
+ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGMAAABiCAYAAABEZ20wAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAZASURBVHgB7Z1dUhtHEMd7FpXzaOUGywkMJklVniyfAHICtKTybDiBxQkMT6mKyxacIOYElp9SlYSgnMDKDZS3GIMm/55d2zLM7OdoNTL9qxIIzeyH5r/T3dMzuxAJgiAIgiAIgiAIgiAIwnJQtOI8/0P3oog2IqIH+DbxxwJNkxnR37MZjX/6Vo1oBVhJMYYXukszeoKz38ef3RKbTCDOiC7pMPleTShQVkqMGiLcRtMg2VKHFCArIwaEiNGQr/E2puZM6B09Dq2XRLQCDH/XGx6FILOfr+j18DcIHBDB9wzPPeImQfWQDi2An3HF3btHO1A6xus+f6aJ/sVrHF3SqNKXLyEE9vsPfrxSEY35b0RQXXNsRdsF23IP+RW/NykAvPaM4bnuY4+7eNsrqDqaaTr9cUudFOzvKfY3cJVDhDdo8EGy6Q5d0bN6qDikHFFwLoc4lwEtGS9iZKaEv3CPqjGCmUhsPSXb51vXhlrT8d6W2qeSvDzXRxDuiaN4ipZYh6hTWiKNHTgPutBoF1RdCDLbsCNlB30DNPbAuRWu5CpCMFyfBXQUd2HaKu1vETQSgxuxs2Zser2YPyWG57olCLrstqP+JKlpUuBTBvg1tpVF7l7TGrXFMGakY5yfD7q8LzOoo6y3uQRWlFBNjBm6pgNHcXeYHndp1BYjMyNxTpUpHOwpO0d+4f0Zf5ZTP/5gKpBr6jnqjPOcdRkS5KlM9GVhhhwXLZFaoW3mXHdd5Wyb2STs3XCIvJ1Gg7scKZsK1DnC9tZGgahn5AOEwWQ5B5NsXCK1xOBe4QzDUuc6sBXhqp7g1z5CVo5enlqqGEcKUe47jmu191VBz5jYzl8r+pqWSC0zhS/yyFqg6aSMc83qjGxlEOIRGmvdVra2Rl5CT5hB136aBCKNqSxG5mRjx96OqSzX5Mqc9iC2dXyBXhOTB3iETgFSWYyrK6eTm8IMlTcjnVyTY20siOTFwSrHxaRyBplt4DNrW8mE5I52MUtn+xiO34uDzXJWt+CZQVoiPsXw2fVdUVOv6VggG8PEtrIo8hMg1KWyGJ2O/aolHjRZ0hounuc1aoTQ09XT1qxRWGmQMRg6iiZNxzBNqSxGFp66GmqXSoLIqO8o4oHdFGHsqaO8Z7K5Nci2i62F2h7dtUktM6VdZgRz02XMyItzvQ8nahUOIrwxu4royLkDpM2rCoL6z/LS8bxYgZZMvXHGNZ04C5E45MZ2FXMZxhLPnPu+TEXgHpiTZU0F+Uu//aXANLI5RL2LbBGDHR3GqpHa8xn4gpyt7eVUmcxSUzPJDrSh0oknt6NPB40fE4FmTJOm52PKZ8w9Ss9lZLPjPaDi1P4keajWKQDqi5Hmp7ihfEVR1vnoBRyn8JjLonZoaxy5dqajqzOjA1ujmONc0WMiP6mQOYJbrtNonJHwHLb24Pg0pl6/Ua+cx/kOI3tlFg1MyA/jL3LdlEn6zegHqtdQfNVvJgULE8xxuIdAkFynXszUXDwqPCEYb6tDjG2f0YfVIXFBdW6UY1wKR3UWAZh5kTSNz2mNMr6k0fHaolAMjmjevzdrkEo70LWIdlCf0+zzYSc3AkdYZ8iajsgTPCsYfTrW/DmyTxtnK9FHVIPOFSKtFntQrhgv/9S72eAryJRzKyDcRo86aKNHOX0Gm4I7LwSjqN/WMh6nGNfXt7r9nSVS5XNujY7jKkAiT4RomZW4JeCuIGIExEJuCRA+hzPHnQjhtzLjsMQ1iSViLIjPBCh5o4+I4ZE6AswjYjSkqQDziBg18CnAPCJGSRYlwDwiRjni7KaghSLjjIAQMQJCxAgIESMgRIyAEDECQsQICBEjIESMgBAxAkLECAgRIyBEjIAQMQJCxAgIESMgRIyA8DnTx48t8ndbmQ9mtI1z2qHm8IPMzrKnCcW0ILyKkWwW34HUJi/OdYyu70WMvYeqz2/40axaU38RwsgceEWy1YD88i6MiNEA38KIGJ7wIYyIsQDqCuNTjC4c5oACIrvxcqncFIb+c9+i7VWMSDV7FtSXTtHzrGTQFxAiRkC4xbjy9pyOlUe39CBJpxhJ+r/tTkmYqnft3Ade/LiKc93X/CgIdfduRVb8SNdLOgn5f/sJgiAIgiAIgiAIgiAIgg/+B867RkXPJgUfAAAAAElFTkSuQmCC";
38288
+
38386
38289
  /***/ }),
38387
38290
 
38388
38291
  /***/ 6193:
@@ -41635,6 +41538,384 @@ Sortable.mount(Remove, Revert);
41635
41538
  /* harmony default export */ __webpack_exports__["default"] = (Sortable);
41636
41539
 
41637
41540
 
41541
+ /***/ }),
41542
+
41543
+ /***/ 6253:
41544
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
41545
+
41546
+ "use strict";
41547
+ // ESM COMPAT FLAG
41548
+ __webpack_require__.r(__webpack_exports__);
41549
+
41550
+ // EXPORTS
41551
+ __webpack_require__.d(__webpack_exports__, {
41552
+ "default": function() { return /* binding */ View; }
41553
+ });
41554
+
41555
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-video/View.vue?vue&type=template&id=787ca866&scoped=true
41556
+ var render = function render() {
41557
+ var _vm = this,
41558
+ _c = _vm._self._c;
41559
+ return _c('BaseComp', _vm._b({
41560
+ attrs: {
41561
+ "data": _vm.data,
41562
+ "nowCompId": _vm.nowCompId,
41563
+ "isOpcacity": _vm.isOpcacity,
41564
+ "isMask": false,
41565
+ "lang": _vm.lang
41566
+ },
41567
+ on: {
41568
+ "getConfigData": _vm.getConfigData
41569
+ }
41570
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
41571
+ staticClass: "cms-video-container",
41572
+ class: [_vm.configData.customClass || ''],
41573
+ style: _vm.containerStyle
41574
+ }, [_c('div', {
41575
+ staticClass: "f-c-c"
41576
+ }, [_vm._v(_vm._s(_vm.configData.title))]), _c('div', {
41577
+ staticClass: "video-wrapper",
41578
+ style: _vm.wrapperStyle
41579
+ }, [_vm.videoType === 'direct' && _vm.configData.videoUrl ? _c('video', {
41580
+ staticClass: "cms-video direct-video",
41581
+ style: _vm.videoStyle,
41582
+ attrs: {
41583
+ "src": _vm.configData.videoUrl,
41584
+ "controls": _vm.configData.showControls,
41585
+ "autoplay": _vm.configData.autoplay,
41586
+ "loop": _vm.configData.loop,
41587
+ "poster": _vm.configData.posterUrl
41588
+ },
41589
+ domProps: {
41590
+ "muted": _vm.configData.muted
41591
+ },
41592
+ on: {
41593
+ "loadstart": _vm.onVideoLoadStart,
41594
+ "loadeddata": _vm.onVideoLoaded,
41595
+ "error": _vm.onVideoError
41596
+ }
41597
+ }) : _vm.configData.embedCode ? _c('div', {
41598
+ staticClass: "cms-video embed-video",
41599
+ style: _vm.videoStyle,
41600
+ domProps: {
41601
+ "innerHTML": _vm._s(_vm.configData.embedCode)
41602
+ }
41603
+ }) : _c('div', {
41604
+ staticClass: "video-placeholder",
41605
+ style: _vm.placeholderStyle
41606
+ }, [_c('img', {
41607
+ staticStyle: {
41608
+ "width": "97.82px",
41609
+ "height": "97.82px"
41610
+ },
41611
+ attrs: {
41612
+ "src": __webpack_require__(6148),
41613
+ "alt": "Video Camera"
41614
+ }
41615
+ })])])])]);
41616
+ };
41617
+ var staticRenderFns = [];
41618
+
41619
+ ;// ./package/cms-video/View.vue?vue&type=template&id=787ca866&scoped=true
41620
+
41621
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
41622
+ var es_iterator_constructor = __webpack_require__(8111);
41623
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
41624
+ var es_iterator_for_each = __webpack_require__(7588);
41625
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
41626
+ var baseComp = __webpack_require__(7135);
41627
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-video/View.vue?vue&type=script&lang=js
41628
+
41629
+
41630
+
41631
+
41632
+
41633
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
41634
+ name: "cms-video",
41635
+ components: {
41636
+ BaseComp: baseComp["default"]
41637
+ },
41638
+ props: {
41639
+ data: {
41640
+ type: Object,
41641
+ default: () => {
41642
+ return {};
41643
+ }
41644
+ },
41645
+ nowCompId: {
41646
+ type: [String, Number],
41647
+ default: ""
41648
+ },
41649
+ isOpcacity: {
41650
+ type: Boolean,
41651
+ default: true
41652
+ },
41653
+ lang: {
41654
+ type: String,
41655
+ default: "zh-HK"
41656
+ }
41657
+ },
41658
+ data() {
41659
+ return {
41660
+ configData: {},
41661
+ videoLoaded: false,
41662
+ videoError: false,
41663
+ // 默认配置数据
41664
+ defaultConfig: {
41665
+ // 视频源设置
41666
+ videoType: "direct",
41667
+ videoUrl: "",
41668
+ embedCode: "",
41669
+ posterUrl: "",
41670
+ // 播放控制
41671
+ showControls: true,
41672
+ autoplay: false,
41673
+ loop: false,
41674
+ muted: false,
41675
+ // 尺寸控制
41676
+ widthType: "auto",
41677
+ widthValue: 100,
41678
+ heightType: "auto",
41679
+ heightValue: 100,
41680
+ aspectRatio: "16:9",
41681
+ customAspectRatio: "16:9",
41682
+ maxWidth: 0,
41683
+ maxHeight: 0,
41684
+ // 样式设置
41685
+ borderRadius: 0,
41686
+ // 高级配置
41687
+ customClass: "",
41688
+ customStyle: ""
41689
+ }
41690
+ };
41691
+ },
41692
+ mounted() {
41693
+ this.initConfigData();
41694
+ },
41695
+ watch: {
41696
+ configData: {
41697
+ handler() {
41698
+ this.updateStyles();
41699
+ },
41700
+ deep: true
41701
+ }
41702
+ },
41703
+ computed: {
41704
+ // 视频类型
41705
+ videoType() {
41706
+ return this.configData.videoType || this.defaultConfig.videoType;
41707
+ },
41708
+ // 实际使用的宽高比
41709
+ actualAspectRatio() {
41710
+ const config = {
41711
+ ...this.defaultConfig,
41712
+ ...this.configData
41713
+ };
41714
+ if (config.aspectRatio === "custom") {
41715
+ return config.customAspectRatio || "16:9";
41716
+ }
41717
+ return config.aspectRatio;
41718
+ },
41719
+ // 容器样式
41720
+ containerStyle() {
41721
+ const config = {
41722
+ ...this.defaultConfig,
41723
+ ...this.configData
41724
+ };
41725
+ return {
41726
+ ...this.parseCustomStyle(config.customStyle)
41727
+ };
41728
+ },
41729
+ // 包装器样式
41730
+ wrapperStyle() {
41731
+ const config = {
41732
+ ...this.defaultConfig,
41733
+ ...this.configData
41734
+ };
41735
+ let width = "auto";
41736
+ let height = "auto";
41737
+
41738
+ // 宽度设置
41739
+ if (config.widthType === "fixed") {
41740
+ width = `${config.widthValue}px`;
41741
+ } else if (config.widthType === "percent") {
41742
+ width = `${config.widthValue}%`;
41743
+ }
41744
+
41745
+ // 高度设置
41746
+ if (config.heightType === "fixed") {
41747
+ height = `${config.heightValue}px`;
41748
+ } else if (config.heightType === "percent") {
41749
+ height = `${config.heightValue}%`;
41750
+ } else if (config.heightType === "aspect") {
41751
+ // 根据宽高比计算高度
41752
+ height = "auto";
41753
+ }
41754
+ return {
41755
+ width,
41756
+ height,
41757
+ maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : "none",
41758
+ maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : "none",
41759
+ borderRadius: `${config.borderRadius}px`,
41760
+ overflow: "hidden",
41761
+ display: "block",
41762
+ position: "relative"
41763
+ };
41764
+ },
41765
+ // 视频样式
41766
+ videoStyle() {
41767
+ const config = {
41768
+ ...this.defaultConfig,
41769
+ ...this.configData
41770
+ };
41771
+ let style = {
41772
+ width: "100%",
41773
+ height: "100%",
41774
+ display: "block",
41775
+ border: "none",
41776
+ outline: "none"
41777
+ };
41778
+
41779
+ // 如果是宽高比模式,设置aspect-ratio
41780
+ if (config.heightType === "aspect") {
41781
+ style.aspectRatio = this.actualAspectRatio.replace(":", "/");
41782
+ }
41783
+ return style;
41784
+ },
41785
+ // 占位符样式
41786
+ placeholderStyle() {
41787
+ const config = {
41788
+ ...this.defaultConfig,
41789
+ ...this.configData
41790
+ };
41791
+ let width = "100%";
41792
+ let height = "auto";
41793
+
41794
+ // 如果设置了固定尺寸,使用设置的尺寸
41795
+ if (config.widthType === "fixed") {
41796
+ width = `${config.widthValue}px`;
41797
+ } else if (config.widthType === "percent") {
41798
+ width = `${config.widthValue}%`;
41799
+ }
41800
+ if (config.heightType === "fixed") {
41801
+ height = `${config.heightValue}px`;
41802
+ } else if (config.heightType === "aspect") {
41803
+ // 使用aspect-ratio保持16:9比例
41804
+ height = "auto";
41805
+ } else {
41806
+ // 默认使用16:9比例
41807
+ height = "auto";
41808
+ }
41809
+ const style = {
41810
+ width,
41811
+ height,
41812
+ backgroundColor: "#f5f7fa",
41813
+ border: "1px dashed #dcdfe6",
41814
+ borderRadius: `${config.borderRadius}px`,
41815
+ display: "flex",
41816
+ flexDirection: "column",
41817
+ alignItems: "center",
41818
+ justifyContent: "center",
41819
+ color: "#909399",
41820
+ fontSize: "14px"
41821
+ };
41822
+
41823
+ // 如果不是固定高度,使用aspect-ratio保持16:9比例
41824
+ if (config.heightType !== "fixed") {
41825
+ style.aspectRatio = this.actualAspectRatio.replace(":", "/");
41826
+ }
41827
+ return style;
41828
+ }
41829
+ },
41830
+ methods: {
41831
+ // 初始化配置数据
41832
+ initConfigData() {
41833
+ this.configData = {
41834
+ ...this.defaultConfig,
41835
+ ...this.configData
41836
+ };
41837
+ },
41838
+ // 获取配置数据
41839
+ getConfigData(configData) {
41840
+ this.configData = {
41841
+ ...this.defaultConfig,
41842
+ ...configData
41843
+ };
41844
+ this.updateStyles();
41845
+ },
41846
+ // 更新样式
41847
+ updateStyles() {
41848
+ this.$nextTick(() => {
41849
+ this.$forceUpdate();
41850
+ });
41851
+ },
41852
+ // 视频开始加载
41853
+ onVideoLoadStart() {
41854
+ this.videoLoaded = false;
41855
+ this.videoError = false;
41856
+ },
41857
+ // 视频加载完成
41858
+ onVideoLoaded() {
41859
+ this.videoLoaded = true;
41860
+ this.videoError = false;
41861
+ },
41862
+ // 视频加载失败
41863
+ onVideoError() {
41864
+ this.videoLoaded = false;
41865
+ this.videoError = true;
41866
+ },
41867
+ // 解析自定义样式
41868
+ parseCustomStyle(customStyle) {
41869
+ if (!customStyle) return {};
41870
+ try {
41871
+ const styles = {};
41872
+ const declarations = customStyle.split(";");
41873
+ declarations.forEach(declaration => {
41874
+ const [property, value] = declaration.split(":");
41875
+ if (property && value) {
41876
+ const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
41877
+ styles[camelCaseProperty] = value.trim();
41878
+ }
41879
+ });
41880
+ return styles;
41881
+ } catch (error) {
41882
+ console.warn("解析自定义样式失败:", error);
41883
+ return {};
41884
+ }
41885
+ }
41886
+ }
41887
+ });
41888
+ ;// ./package/cms-video/View.vue?vue&type=script&lang=js
41889
+ /* harmony default export */ var cms_video_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
41890
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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-video/View.vue?vue&type=style&index=0&id=787ca866&prod&lang=scss&scoped=true
41891
+ // extracted by mini-css-extract-plugin
41892
+
41893
+ ;// ./package/cms-video/View.vue?vue&type=style&index=0&id=787ca866&prod&lang=scss&scoped=true
41894
+
41895
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
41896
+ var componentNormalizer = __webpack_require__(1656);
41897
+ ;// ./package/cms-video/View.vue
41898
+
41899
+
41900
+
41901
+ ;
41902
+
41903
+
41904
+ /* normalize component */
41905
+
41906
+ var component = (0,componentNormalizer/* default */.A)(
41907
+ cms_video_Viewvue_type_script_lang_js,
41908
+ render,
41909
+ staticRenderFns,
41910
+ false,
41911
+ null,
41912
+ "787ca866",
41913
+ null
41914
+
41915
+ )
41916
+
41917
+ /* harmony default export */ var View = (component.exports);
41918
+
41638
41919
  /***/ }),
41639
41920
 
41640
41921
  /***/ 6269:
@@ -41746,7 +42027,7 @@ var es_iterator_for_each = __webpack_require__(7588);
41746
42027
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.map.js
41747
42028
  var es_iterator_map = __webpack_require__(1701);
41748
42029
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
41749
- var baseComp = __webpack_require__(7843);
42030
+ var baseComp = __webpack_require__(7135);
41750
42031
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-question/View.vue?vue&type=script&lang=js
41751
42032
 
41752
42033
 
@@ -41892,7 +42173,7 @@ var render = function render() {
41892
42173
  var staticRenderFns = [];
41893
42174
 
41894
42175
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
41895
- var baseComp = __webpack_require__(7843);
42176
+ var baseComp = __webpack_require__(7135);
41896
42177
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-description/View.vue?vue&type=script&lang=js
41897
42178
 
41898
42179
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -42353,329 +42634,6 @@ module.exports = function (iterator, fn, value, ENTRIES) {
42353
42634
  };
42354
42635
 
42355
42636
 
42356
- /***/ }),
42357
-
42358
- /***/ 6345:
42359
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
42360
-
42361
- "use strict";
42362
- // ESM COMPAT FLAG
42363
- __webpack_require__.r(__webpack_exports__);
42364
-
42365
- // EXPORTS
42366
- __webpack_require__.d(__webpack_exports__, {
42367
- "default": function() { return /* binding */ View; }
42368
- });
42369
-
42370
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-image/View.vue?vue&type=template&id=2c876c4d&scoped=true
42371
- var render = function render() {
42372
- var _vm = this,
42373
- _c = _vm._self._c;
42374
- return _c('BaseComp', _vm._b({
42375
- attrs: {
42376
- "data": _vm.data,
42377
- "nowCompId": _vm.nowCompId,
42378
- "isOpcacity": _vm.isOpcacity,
42379
- "lang": _vm.lang
42380
- },
42381
- on: {
42382
- "getConfigData": _vm.getConfigData
42383
- }
42384
- }, 'BaseComp', _vm.$attrs, false), [_c('section', {
42385
- staticClass: "cms-image-container",
42386
- class: [_vm.configData.customClass || '', {
42387
- 'has-link': _vm.configData.linkUrl
42388
- }],
42389
- style: _vm.containerStyle
42390
- }, [_c('div', {
42391
- staticClass: "image-wrapper",
42392
- style: _vm.wrapperStyle,
42393
- on: {
42394
- "click": _vm.handleClick
42395
- }
42396
- }, [_vm.configData.imageUrl ? _c('img', {
42397
- staticClass: "cms-image",
42398
- style: _vm.imageStyle,
42399
- attrs: {
42400
- "src": _vm.configData.imageUrl,
42401
- "alt": _vm.configData.altText || '图片',
42402
- "title": _vm.configData.title
42403
- },
42404
- on: {
42405
- "load": _vm.onImageLoad,
42406
- "error": _vm.onImageError
42407
- }
42408
- }) : _c('div', {
42409
- staticClass: "image-placeholder",
42410
- style: _vm.placeholderStyle
42411
- }, [_c('i', {
42412
- staticClass: "el-icon-picture-outline"
42413
- }), _c('p', [_vm._v("请选择图片")])])])])]);
42414
- };
42415
- var staticRenderFns = [];
42416
-
42417
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
42418
- var es_iterator_constructor = __webpack_require__(8111);
42419
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
42420
- var es_iterator_for_each = __webpack_require__(7588);
42421
- // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
42422
- var baseComp = __webpack_require__(7843);
42423
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-image/View.vue?vue&type=script&lang=js
42424
-
42425
-
42426
-
42427
-
42428
-
42429
- /* harmony default export */ var Viewvue_type_script_lang_js = ({
42430
- name: "cms-image",
42431
- components: {
42432
- BaseComp: baseComp["default"]
42433
- },
42434
- props: {
42435
- data: {
42436
- type: Object,
42437
- default: () => {
42438
- return {};
42439
- }
42440
- },
42441
- nowCompId: {
42442
- type: [String, Number],
42443
- default: ""
42444
- },
42445
- isOpcacity: {
42446
- type: Boolean,
42447
- default: true
42448
- },
42449
- lang: {
42450
- type: String,
42451
- default: "zh-HK"
42452
- }
42453
- },
42454
- data() {
42455
- return {
42456
- configData: {},
42457
- imageLoaded: false,
42458
- imageError: false,
42459
- // 默认配置数据
42460
- defaultConfig: {
42461
- // 图片设置
42462
- imageUrl: "",
42463
- altText: "图片",
42464
- title: "",
42465
- // 尺寸控制
42466
- widthType: "auto",
42467
- widthValue: 100,
42468
- heightType: "auto",
42469
- heightValue: 100,
42470
- maxWidth: 0,
42471
- maxHeight: 0,
42472
- // 样式设置
42473
- borderRadius: 0,
42474
- objectFit: "cover",
42475
- // 交互功能
42476
- linkUrl: "",
42477
- linkTarget: "_self",
42478
- // 高级配置
42479
- customClass: "",
42480
- customStyle: "",
42481
- lazyLoad: false
42482
- }
42483
- };
42484
- },
42485
- mounted() {
42486
- this.initConfigData();
42487
- },
42488
- watch: {
42489
- configData: {
42490
- handler() {
42491
- this.updateStyles();
42492
- },
42493
- deep: true
42494
- }
42495
- },
42496
- computed: {
42497
- // 容器样式
42498
- containerStyle() {
42499
- const config = {
42500
- ...this.defaultConfig,
42501
- ...this.configData
42502
- };
42503
- return {
42504
- ...this.parseCustomStyle(config.customStyle)
42505
- };
42506
- },
42507
- // 包装器样式
42508
- wrapperStyle() {
42509
- const config = {
42510
- ...this.defaultConfig,
42511
- ...this.configData
42512
- };
42513
- let width = 'auto';
42514
- let height = 'auto';
42515
-
42516
- // 宽度设置
42517
- if (config.widthType === 'fixed') {
42518
- width = `${config.widthValue}px`;
42519
- } else if (config.widthType === 'percent') {
42520
- width = `${config.widthValue}%`;
42521
- }
42522
-
42523
- // 高度设置
42524
- if (config.heightType === 'fixed') {
42525
- height = `${config.heightValue}px`;
42526
- } else if (config.heightType === 'percent') {
42527
- height = `${config.heightValue}%`;
42528
- }
42529
- return {
42530
- width,
42531
- height,
42532
- maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : 'none',
42533
- maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : 'none',
42534
- borderRadius: `${config.borderRadius}px`,
42535
- overflow: 'hidden',
42536
- cursor: config.linkUrl ? 'pointer' : 'default',
42537
- display: 'inline-block'
42538
- };
42539
- },
42540
- // 图片样式
42541
- imageStyle() {
42542
- const config = {
42543
- ...this.defaultConfig,
42544
- ...this.configData
42545
- };
42546
- return {
42547
- width: '100%',
42548
- height: '100%',
42549
- objectFit: config.objectFit,
42550
- display: 'block'
42551
- };
42552
- },
42553
- // 占位符样式
42554
- placeholderStyle() {
42555
- const config = {
42556
- ...this.defaultConfig,
42557
- ...this.configData
42558
- };
42559
- let width = '200px';
42560
- let height = '150px';
42561
-
42562
- // 如果设置了固定尺寸,使用设置的尺寸
42563
- if (config.widthType === 'fixed') {
42564
- width = `${config.widthValue}px`;
42565
- }
42566
- if (config.heightType === 'fixed') {
42567
- height = `${config.heightValue}px`;
42568
- }
42569
- return {
42570
- width,
42571
- height,
42572
- backgroundColor: '#f5f7fa',
42573
- border: '1px dashed #dcdfe6',
42574
- borderRadius: `${config.borderRadius}px`,
42575
- display: 'flex',
42576
- flexDirection: 'column',
42577
- alignItems: 'center',
42578
- justifyContent: 'center',
42579
- color: '#909399',
42580
- fontSize: '14px'
42581
- };
42582
- }
42583
- },
42584
- methods: {
42585
- // 初始化配置数据
42586
- initConfigData() {
42587
- this.configData = {
42588
- ...this.defaultConfig,
42589
- ...this.configData
42590
- };
42591
- },
42592
- // 获取配置数据
42593
- getConfigData(configData) {
42594
- this.configData = {
42595
- ...this.defaultConfig,
42596
- ...configData
42597
- };
42598
- this.updateStyles();
42599
- },
42600
- // 更新样式
42601
- updateStyles() {
42602
- this.$nextTick(() => {
42603
- this.$forceUpdate();
42604
- });
42605
- },
42606
- // 处理点击事件
42607
- handleClick() {
42608
- if (this.configData.linkUrl) {
42609
- const target = this.configData.linkTarget || '_self';
42610
- if (target === '_blank') {
42611
- window.open(this.configData.linkUrl, '_blank');
42612
- } else {
42613
- window.location.href = this.configData.linkUrl;
42614
- }
42615
- }
42616
- },
42617
- // 图片加载成功
42618
- onImageLoad() {
42619
- this.imageLoaded = true;
42620
- this.imageError = false;
42621
- },
42622
- // 图片加载失败
42623
- onImageError() {
42624
- this.imageLoaded = false;
42625
- this.imageError = true;
42626
- },
42627
- // 解析自定义样式
42628
- parseCustomStyle(customStyle) {
42629
- if (!customStyle) return {};
42630
- try {
42631
- const styles = {};
42632
- const declarations = customStyle.split(';');
42633
- declarations.forEach(declaration => {
42634
- const [property, value] = declaration.split(':');
42635
- if (property && value) {
42636
- const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
42637
- styles[camelCaseProperty] = value.trim();
42638
- }
42639
- });
42640
- return styles;
42641
- } catch (error) {
42642
- console.warn('解析自定义样式失败:', error);
42643
- return {};
42644
- }
42645
- }
42646
- }
42647
- });
42648
- ;// ./package/cms-image/View.vue?vue&type=script&lang=js
42649
- /* harmony default export */ var cms_image_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
42650
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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-image/View.vue?vue&type=style&index=0&id=2c876c4d&prod&lang=scss&scoped=true
42651
- // extracted by mini-css-extract-plugin
42652
-
42653
- ;// ./package/cms-image/View.vue?vue&type=style&index=0&id=2c876c4d&prod&lang=scss&scoped=true
42654
-
42655
- // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
42656
- var componentNormalizer = __webpack_require__(1656);
42657
- ;// ./package/cms-image/View.vue
42658
-
42659
-
42660
-
42661
- ;
42662
-
42663
-
42664
- /* normalize component */
42665
-
42666
- var component = (0,componentNormalizer/* default */.A)(
42667
- cms_image_Viewvue_type_script_lang_js,
42668
- render,
42669
- staticRenderFns,
42670
- false,
42671
- null,
42672
- "2c876c4d",
42673
- null
42674
-
42675
- )
42676
-
42677
- /* harmony default export */ var View = (component.exports);
42678
-
42679
42637
  /***/ }),
42680
42638
 
42681
42639
  /***/ 6368:
@@ -42979,7 +42937,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
42979
42937
  },
42980
42938
  fontColor: {
42981
42939
  label: "文字颜色",
42982
- widgetType: "el-color-picker"
42940
+ widgetType: "el-color-picker",
42941
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
42983
42942
  },
42984
42943
  fontWeight: {
42985
42944
  label: "字体粗细",
@@ -43025,7 +42984,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43025
42984
  // 样式控制配置
43026
42985
  backgroundColor: {
43027
42986
  label: "背景颜色",
43028
- widgetType: "el-color-picker"
42987
+ widgetType: "el-color-picker",
42988
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43029
42989
  },
43030
42990
  borderRadius: {
43031
42991
  label: "圆角(px)",
@@ -43062,7 +43022,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43062
43022
  },
43063
43023
  borderColor: {
43064
43024
  label: "边框颜色",
43065
- widgetType: "el-color-picker"
43025
+ widgetType: "el-color-picker",
43026
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43066
43027
  },
43067
43028
  // 空间布局配置
43068
43029
  paddingTop: {
@@ -43766,7 +43727,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43766
43727
  },
43767
43728
  color: {
43768
43729
  label: "色值",
43769
- widgetType: "el-color-picker"
43730
+ widgetType: "el-color-picker",
43731
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43770
43732
  }
43771
43733
  }]
43772
43734
  },
@@ -43901,7 +43863,7 @@ var swiper = __webpack_require__(828);
43901
43863
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
43902
43864
  var swiper_esm_bundle = __webpack_require__(1532);
43903
43865
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
43904
- var baseComp = __webpack_require__(7843);
43866
+ var baseComp = __webpack_require__(7135);
43905
43867
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-termsAndConditions/View.vue?vue&type=script&lang=js
43906
43868
 
43907
43869
 
@@ -44090,6 +44052,272 @@ module.exports = {
44090
44052
 
44091
44053
  /***/ }),
44092
44054
 
44055
+ /***/ 7135:
44056
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
44057
+
44058
+ "use strict";
44059
+ // ESM COMPAT FLAG
44060
+ __webpack_require__.r(__webpack_exports__);
44061
+
44062
+ // EXPORTS
44063
+ __webpack_require__.d(__webpack_exports__, {
44064
+ "default": function() { return /* binding */ baseComp; }
44065
+ });
44066
+
44067
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/baseComp.vue?vue&type=template&id=e19eaa9e&scoped=true
44068
+ var render = function render() {
44069
+ var _vm = this,
44070
+ _c = _vm._self._c;
44071
+ return _vm.$EventBus && _vm.isOpcacity ? _c('div', {
44072
+ key: _vm.data.componentId,
44073
+ class: [_vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? 'highLight' : ''],
44074
+ style: _vm.showStyleConfig,
44075
+ attrs: {
44076
+ "component-key": _vm.data.cmsCompName
44077
+ },
44078
+ on: {
44079
+ "click": function ($event) {
44080
+ $event.stopPropagation();
44081
+ return _vm.handleNowComp.apply(null, arguments);
44082
+ }
44083
+ }
44084
+ }, [_c('div', {
44085
+ staticClass: "mask-wrap"
44086
+ }, [_vm._t("default", null, {
44087
+ "isMobile": _vm.isMobile
44088
+ }), _vm.isMask ? _c('div', {
44089
+ staticClass: "mask",
44090
+ on: {
44091
+ "click": _vm.handleNowComp
44092
+ }
44093
+ }) : _vm._e()], 2), _vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? _c('div', {
44094
+ staticClass: "com-delete"
44095
+ }, [_vm.showDel ? _c('i', {
44096
+ staticClass: "el-icon-delete",
44097
+ on: {
44098
+ "click": function ($event) {
44099
+ $event.stopPropagation();
44100
+ return _vm.delComp.apply(null, arguments);
44101
+ }
44102
+ }
44103
+ }) : _vm._e(), _c('i', {
44104
+ staticClass: "el-icon-top",
44105
+ on: {
44106
+ "click": function ($event) {
44107
+ $event.stopPropagation();
44108
+ return _vm.selectParentDom.apply(null, arguments);
44109
+ }
44110
+ }
44111
+ })]) : _vm._e()]) : _vm.showSlot ? _c('div', {
44112
+ key: _vm.data.componentId,
44113
+ ref: "targetElement",
44114
+ style: _vm.showStyleConfig
44115
+ }, [_vm._t("default")], 2) : _vm._e();
44116
+ };
44117
+ var staticRenderFns = [];
44118
+
44119
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
44120
+ var es_iterator_constructor = __webpack_require__(8111);
44121
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.reduce.js
44122
+ var es_iterator_reduce = __webpack_require__(8237);
44123
+ // EXTERNAL MODULE: ./package/patch.js
44124
+ var patch = __webpack_require__(4229);
44125
+ // EXTERNAL MODULE: ./node_modules/dayjs/dayjs.min.js
44126
+ var dayjs_min = __webpack_require__(8655);
44127
+ var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
44128
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/baseComp.vue?vue&type=script&lang=js
44129
+
44130
+
44131
+
44132
+
44133
+ // 待办:判断移动pc端填充不同的样式
44134
+
44135
+
44136
+ /* harmony default export */ var baseCompvue_type_script_lang_js = ({
44137
+ name: "baseComp",
44138
+ props: {
44139
+ data: {
44140
+ type: Object,
44141
+ default: () => {
44142
+ return {};
44143
+ }
44144
+ },
44145
+ nowCompId: {
44146
+ type: [String, Number],
44147
+ default: ""
44148
+ },
44149
+ isOpcacity: {
44150
+ type: Boolean,
44151
+ default: true
44152
+ },
44153
+ isMask: {
44154
+ type: Boolean,
44155
+ default: true
44156
+ },
44157
+ lang: {
44158
+ type: String,
44159
+ default: "zh-HK"
44160
+ },
44161
+ timeline: {
44162
+ type: String,
44163
+ default: ""
44164
+ },
44165
+ cmhkChannel: {
44166
+ type: String,
44167
+ default: "WWW"
44168
+ },
44169
+ showDel: {
44170
+ type: Boolean,
44171
+ default: true
44172
+ }
44173
+ },
44174
+ data() {
44175
+ return {
44176
+ styleConfig_mb: {},
44177
+ styleConfig_pc: {},
44178
+ configData: {},
44179
+ elementWidth: 0,
44180
+ resizeObserver: null
44181
+ };
44182
+ },
44183
+ watch: {
44184
+ data: {
44185
+ handler(val) {
44186
+ this.getStyleConfig(val, "pc");
44187
+ this.getStyleConfig(val, "mb");
44188
+ this.getValue(this.lang);
44189
+ },
44190
+ deep: true,
44191
+ immediate: true
44192
+ },
44193
+ lang: {
44194
+ handler(val) {
44195
+ this.getValue(val);
44196
+ },
44197
+ deep: true,
44198
+ immediate: true
44199
+ }
44200
+ },
44201
+ mounted() {
44202
+ if (this.$EventBus && this.isOpcacity) {
44203
+ this.elementWidth = 800;
44204
+ this.$EventBus.$on("handleDeviceChange", isMobile => {
44205
+ this.elementWidth = isMobile ? 700 : 800;
44206
+ });
44207
+ } else if (this.showSlot) {
44208
+ this.resizeObserver = new ResizeObserver(entries => {
44209
+ for (let entry of entries) {
44210
+ this.elementWidth = entry.contentRect.width;
44211
+ // 可以在这里触发自定义逻辑
44212
+ // this.onWidthChange(this.elementWidth);
44213
+ }
44214
+ });
44215
+ const element = document.getElementById("app") || document.getElementById("__nuxt");
44216
+ this.resizeObserver.observe(element);
44217
+ }
44218
+ },
44219
+ beforeDestroy() {
44220
+ // 组件销毁时停止观察
44221
+ if (this.resizeObserver) {
44222
+ this.resizeObserver.disconnect();
44223
+ }
44224
+ },
44225
+ methods: {
44226
+ selectParentDom() {
44227
+ if (!this.isOpcacity) return;
44228
+ this.$EventBus.$emit("handleParentComp", this.data);
44229
+ },
44230
+ onWidthChange(newWidth) {
44231
+ console.log("新宽度:", newWidth, this.isMobile);
44232
+ },
44233
+ getValue(cur_lang) {
44234
+ var _this$data, _this$data$settings;
44235
+ const obj = {
44236
+ "zh-CN": "lang_sc",
44237
+ "zh-HK": "lang_tc",
44238
+ "en-US": "lang_en"
44239
+ };
44240
+ if ((_this$data = this.data) !== null && _this$data !== void 0 && (_this$data$settings = _this$data.settings) !== null && _this$data$settings !== void 0 && _this$data$settings.settings) {
44241
+ const baseInfo = (0,patch.transfor)(this.data);
44242
+ this.configData = baseInfo.contentConfig.lang_all ? baseInfo.contentConfig.lang_all : baseInfo.contentConfig[`${obj[cur_lang]}`];
44243
+ } else {
44244
+ this.configData = this.data.contentConfig.lang_all ? this.data.contentConfig.lang_all : this.data.contentConfig[`${obj[cur_lang]}`];
44245
+ }
44246
+ this.$emit("getConfigData", this.configData);
44247
+ },
44248
+ getStyleConfig(data, type) {
44249
+ this[`styleConfig_${type}`] = data.styleConfig[type].reduce((pre, cur) => {
44250
+ pre[cur.key] = cur.value + cur.unit;
44251
+ return pre;
44252
+ }, {});
44253
+ },
44254
+ handleNowComp() {
44255
+ if (!this.isOpcacity) return;
44256
+ this.$EventBus.$emit("handleNowComp", this.data);
44257
+ },
44258
+ delComp() {
44259
+ this.$EventBus.$emit("handleDeleteComp", this.data.componentId);
44260
+ }
44261
+ },
44262
+ computed: {
44263
+ showStyleConfig() {
44264
+ if (!this.elementWidth) return {};
44265
+ return this.isMobile ? this.styleConfig_mb : this.styleConfig_pc;
44266
+ },
44267
+ isMobile() {
44268
+ return this.elementWidth < 760;
44269
+ },
44270
+ showSlot() {
44271
+ if (this.$EventBus && this.isOpcacity) return false;
44272
+ const {
44273
+ cmhkChannelConfList = [],
44274
+ startTime = "",
44275
+ endTime = ""
44276
+ } = this.data.baseConfig;
44277
+ console.log("this.cmhkChannel", this.cmhkChannel, this.data.baseConfig);
44278
+ const channelVisable = cmhkChannelConfList.includes("ALL") || cmhkChannelConfList.includes(this.cmhkChannel);
44279
+ if (!channelVisable) return false;
44280
+ if (!startTime && !endTime) return true;
44281
+ const currentTime = this.timeline ? dayjs_min_default()(this.timeline) : dayjs_min_default()();
44282
+ const isStart = startTime ? dayjs_min_default()(currentTime).isAfter(dayjs_min_default()(startTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(startTime)) : true;
44283
+ const isEnd = endTime ? dayjs_min_default()(currentTime).isBefore(dayjs_min_default()(endTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(endTime)) : true;
44284
+ return isStart && isEnd;
44285
+ }
44286
+ }
44287
+ });
44288
+ ;// ./package/baseComp.vue?vue&type=script&lang=js
44289
+ /* harmony default export */ var package_baseCompvue_type_script_lang_js = (baseCompvue_type_script_lang_js);
44290
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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/baseComp.vue?vue&type=style&index=0&id=e19eaa9e&prod&lang=scss&scoped=true
44291
+ // extracted by mini-css-extract-plugin
44292
+
44293
+ ;// ./package/baseComp.vue?vue&type=style&index=0&id=e19eaa9e&prod&lang=scss&scoped=true
44294
+
44295
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
44296
+ var componentNormalizer = __webpack_require__(1656);
44297
+ ;// ./package/baseComp.vue
44298
+
44299
+
44300
+
44301
+ ;
44302
+
44303
+
44304
+ /* normalize component */
44305
+
44306
+ var component = (0,componentNormalizer/* default */.A)(
44307
+ package_baseCompvue_type_script_lang_js,
44308
+ render,
44309
+ staticRenderFns,
44310
+ false,
44311
+ null,
44312
+ "e19eaa9e",
44313
+ null
44314
+
44315
+ )
44316
+
44317
+ /* harmony default export */ var baseComp = (component.exports);
44318
+
44319
+ /***/ }),
44320
+
44093
44321
  /***/ 7210:
44094
44322
  /***/ (function(module) {
44095
44323
 
@@ -44685,7 +44913,7 @@ var render = function render() {
44685
44913
  var staticRenderFns = [];
44686
44914
 
44687
44915
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
44688
- var baseComp = __webpack_require__(7843);
44916
+ var baseComp = __webpack_require__(7135);
44689
44917
  // EXTERNAL MODULE: ./package/patch.js
44690
44918
  var patch = __webpack_require__(4229);
44691
44919
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-dynamic-comp/View.vue?vue&type=script&lang=js
@@ -44871,7 +45099,7 @@ var es_iterator_filter = __webpack_require__(2489);
44871
45099
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
44872
45100
  var es_iterator_for_each = __webpack_require__(7588);
44873
45101
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
44874
- var baseComp = __webpack_require__(7843);
45102
+ var baseComp = __webpack_require__(7135);
44875
45103
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-text/View.vue?vue&type=script&lang=js
44876
45104
 
44877
45105
 
@@ -45470,7 +45698,7 @@ var swiper = __webpack_require__(828);
45470
45698
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
45471
45699
  var swiper_esm_bundle = __webpack_require__(1532);
45472
45700
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
45473
- var baseComp = __webpack_require__(7843);
45701
+ var baseComp = __webpack_require__(7135);
45474
45702
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-aLineThreeLeftOne/View.vue?vue&type=script&lang=js
45475
45703
 
45476
45704
 
@@ -45633,6 +45861,181 @@ if (params.has('a', 2) || !params.has('a', undefined)) {
45633
45861
  }
45634
45862
 
45635
45863
 
45864
+ /***/ }),
45865
+
45866
+ /***/ 7583:
45867
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
45868
+
45869
+ "use strict";
45870
+ // ESM COMPAT FLAG
45871
+ __webpack_require__.r(__webpack_exports__);
45872
+
45873
+ // EXPORTS
45874
+ __webpack_require__.d(__webpack_exports__, {
45875
+ "default": function() { return /* binding */ View; }
45876
+ });
45877
+
45878
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-image-group/View.vue?vue&type=template&id=7cb50abc&scoped=true
45879
+ var render = function render() {
45880
+ var _vm = this,
45881
+ _c = _vm._self._c;
45882
+ return _c('BaseComp', _vm._b({
45883
+ attrs: {
45884
+ "data": _vm.data,
45885
+ "nowCompId": _vm.nowCompId,
45886
+ "isOpcacity": _vm.isOpcacity,
45887
+ "isMask": false,
45888
+ "lang": _vm.lang
45889
+ },
45890
+ on: {
45891
+ "getConfigData": _vm.getConfigData
45892
+ }
45893
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
45894
+ staticClass: "cmhk-home_main"
45895
+ }, [_c('div', {
45896
+ staticClass: "wrap",
45897
+ style: {
45898
+ 'grid-template-columns': `repeat(${_vm.configData.colNums}, 1fr)`,
45899
+ 'grid-gap': `${_vm.configData.gap}px`
45900
+ }
45901
+ }, _vm._l(_vm.showVideoList, function (item) {
45902
+ return _c('cms-image', {
45903
+ key: item.componentId,
45904
+ staticStyle: {
45905
+ "overflow": "hidden"
45906
+ },
45907
+ attrs: {
45908
+ "data": item,
45909
+ "nowCompId": _vm.nowCompId,
45910
+ "isOpcacity": _vm.isOpcacity,
45911
+ "isMask": false,
45912
+ "lang": _vm.lang
45913
+ }
45914
+ });
45915
+ }), 1), _vm.isShowPannel ? [_c('div', {
45916
+ staticClass: "view-more-container"
45917
+ }, [_c('div', {
45918
+ staticClass: "view-more-btn",
45919
+ on: {
45920
+ "click": _vm.foldMessText
45921
+ }
45922
+ }, [_c('span', {
45923
+ staticClass: "view-more-text"
45924
+ }, [_vm._v(" " + _vm._s(_vm.messFold ? _vm.$t("roamIndex.Collpase") : _vm.$t("roamIndex.More")) + " ")]), _c('i', {
45925
+ class: ['view-more-icon', _vm.messFold ? 'el-icon-arrow-up' : 'el-icon-arrow-down']
45926
+ })])])] : _vm._e()], 2)]);
45927
+ };
45928
+ var staticRenderFns = [];
45929
+
45930
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
45931
+ var baseComp = __webpack_require__(7135);
45932
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-image-group/View.vue?vue&type=script&lang=js
45933
+
45934
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
45935
+ name: "cms-image-group",
45936
+ components: {
45937
+ BaseComp: baseComp["default"]
45938
+ },
45939
+ props: {
45940
+ data: {
45941
+ type: Object,
45942
+ default: () => {
45943
+ return {};
45944
+ }
45945
+ },
45946
+ nowCompId: {
45947
+ type: [String, Number],
45948
+ default: ""
45949
+ },
45950
+ isOpcacity: {
45951
+ type: Boolean,
45952
+ default: true
45953
+ },
45954
+ lang: {
45955
+ type: String,
45956
+ default: "zh-HK"
45957
+ }
45958
+ },
45959
+ data() {
45960
+ return {
45961
+ configData: {},
45962
+ messFold: false,
45963
+ // 默认配置数据
45964
+ isShowPannel: false
45965
+ };
45966
+ },
45967
+ mounted() {},
45968
+ watch: {
45969
+ configData: {
45970
+ handler() {
45971
+ this.updateStyles();
45972
+ },
45973
+ deep: true
45974
+ }
45975
+ },
45976
+ computed: {
45977
+ showVideoList() {
45978
+ if (this.isShowPannel && !this.messFold) return this.data.childList.slice(0, this.configData.colNums * this.configData.defaultCol);
45979
+ return this.data.childList;
45980
+ },
45981
+ isConfigPage() {
45982
+ return this.$EventBus && this.isOpcacity;
45983
+ }
45984
+ },
45985
+ methods: {
45986
+ // 获取配置数据
45987
+ getConfigData(configData) {
45988
+ this.configData = {
45989
+ ...this.defaultConfig,
45990
+ ...configData
45991
+ };
45992
+ this.updateStyles();
45993
+ this.isShowPannel = this.configData.colNums * this.configData.defaultCol < this.data.childList.length;
45994
+ },
45995
+ // 更新样式
45996
+ updateStyles() {
45997
+ this.$nextTick(() => {
45998
+ // 触发样式更新
45999
+ this.$forceUpdate();
46000
+ });
46001
+ },
46002
+ // 折叠/展开文本
46003
+ foldMessText() {
46004
+ this.messFold = !this.messFold;
46005
+ }
46006
+ }
46007
+ });
46008
+ ;// ./package/cms-image-group/View.vue?vue&type=script&lang=js
46009
+ /* harmony default export */ var cms_image_group_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
46010
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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-image-group/View.vue?vue&type=style&index=0&id=7cb50abc&prod&lang=scss&scoped=true
46011
+ // extracted by mini-css-extract-plugin
46012
+
46013
+ ;// ./package/cms-image-group/View.vue?vue&type=style&index=0&id=7cb50abc&prod&lang=scss&scoped=true
46014
+
46015
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
46016
+ var componentNormalizer = __webpack_require__(1656);
46017
+ ;// ./package/cms-image-group/View.vue
46018
+
46019
+
46020
+
46021
+ ;
46022
+
46023
+
46024
+ /* normalize component */
46025
+
46026
+ var component = (0,componentNormalizer/* default */.A)(
46027
+ cms_image_group_Viewvue_type_script_lang_js,
46028
+ render,
46029
+ staticRenderFns,
46030
+ false,
46031
+ null,
46032
+ "7cb50abc",
46033
+ null
46034
+
46035
+ )
46036
+
46037
+ /* harmony default export */ var View = (component.exports);
46038
+
45636
46039
  /***/ }),
45637
46040
 
45638
46041
  /***/ 7588:
@@ -45670,6 +46073,7 @@ $({ target: 'Iterator', proto: true, real: true }, {
45670
46073
  __webpack_require__.r(__webpack_exports__);
45671
46074
  /* harmony default export */ __webpack_exports__["default"] = ({
45672
46075
  Expand: "Expand",
46076
+ More: "More",
45673
46077
  Collpase: "Collpase",
45674
46078
  discount: 'Discount period:'
45675
46079
  });
@@ -46041,7 +46445,7 @@ var swiper_esm_bundle = __webpack_require__(1532);
46041
46445
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
46042
46446
  var jumpUrl = __webpack_require__(4102);
46043
46447
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46044
- var baseComp = __webpack_require__(7843);
46448
+ var baseComp = __webpack_require__(7135);
46045
46449
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-banner/View.vue?vue&type=script&lang=js
46046
46450
 
46047
46451
 
@@ -46348,7 +46752,7 @@ var render = function render() {
46348
46752
  var staticRenderFns = [];
46349
46753
 
46350
46754
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46351
- var baseComp = __webpack_require__(7843);
46755
+ var baseComp = __webpack_require__(7135);
46352
46756
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-productDetails/View.vue?vue&type=script&lang=js
46353
46757
 
46354
46758
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -46455,269 +46859,6 @@ var component = (0,componentNormalizer/* default */.A)(
46455
46859
  module.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';
46456
46860
 
46457
46861
 
46458
- /***/ }),
46459
-
46460
- /***/ 7843:
46461
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
46462
-
46463
- "use strict";
46464
- // ESM COMPAT FLAG
46465
- __webpack_require__.r(__webpack_exports__);
46466
-
46467
- // EXPORTS
46468
- __webpack_require__.d(__webpack_exports__, {
46469
- "default": function() { return /* binding */ baseComp; }
46470
- });
46471
-
46472
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/baseComp.vue?vue&type=template&id=1a96e3b2&scoped=true
46473
- var render = function render() {
46474
- var _vm = this,
46475
- _c = _vm._self._c;
46476
- return _vm.$EventBus && _vm.isOpcacity ? _c('div', {
46477
- key: _vm.data.componentId,
46478
- class: [_vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? 'highLight' : ''],
46479
- style: _vm.showStyleConfig,
46480
- on: {
46481
- "click": function ($event) {
46482
- $event.stopPropagation();
46483
- return _vm.handleNowComp.apply(null, arguments);
46484
- }
46485
- }
46486
- }, [_c('div', {
46487
- staticClass: "mask-wrap"
46488
- }, [_vm._t("default", null, {
46489
- "isMobile": _vm.isMobile
46490
- }), _vm.isMask ? _c('div', {
46491
- staticClass: "mask",
46492
- on: {
46493
- "click": _vm.handleNowComp
46494
- }
46495
- }) : _vm._e()], 2), _vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? _c('div', {
46496
- staticClass: "com-delete"
46497
- }, [_vm.showDel ? _c('i', {
46498
- staticClass: "el-icon-delete",
46499
- on: {
46500
- "click": function ($event) {
46501
- $event.stopPropagation();
46502
- return _vm.delComp.apply(null, arguments);
46503
- }
46504
- }
46505
- }) : _vm._e(), _c('i', {
46506
- staticClass: "el-icon-top",
46507
- on: {
46508
- "click": function ($event) {
46509
- $event.stopPropagation();
46510
- return _vm.selectParentDom.apply(null, arguments);
46511
- }
46512
- }
46513
- })]) : _vm._e()]) : _vm.showSlot ? _c('div', {
46514
- key: _vm.data.componentId,
46515
- ref: "targetElement",
46516
- style: _vm.showStyleConfig
46517
- }, [_vm._t("default")], 2) : _vm._e();
46518
- };
46519
- var staticRenderFns = [];
46520
-
46521
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
46522
- var es_iterator_constructor = __webpack_require__(8111);
46523
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.reduce.js
46524
- var es_iterator_reduce = __webpack_require__(8237);
46525
- // EXTERNAL MODULE: ./package/patch.js
46526
- var patch = __webpack_require__(4229);
46527
- // EXTERNAL MODULE: ./node_modules/dayjs/dayjs.min.js
46528
- var dayjs_min = __webpack_require__(8655);
46529
- var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
46530
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/baseComp.vue?vue&type=script&lang=js
46531
-
46532
-
46533
-
46534
-
46535
- // 待办:判断移动pc端填充不同的样式
46536
-
46537
-
46538
- /* harmony default export */ var baseCompvue_type_script_lang_js = ({
46539
- name: "baseComp",
46540
- props: {
46541
- data: {
46542
- type: Object,
46543
- default: () => {
46544
- return {};
46545
- }
46546
- },
46547
- nowCompId: {
46548
- type: [String, Number],
46549
- default: ""
46550
- },
46551
- isOpcacity: {
46552
- type: Boolean,
46553
- default: true
46554
- },
46555
- isMask: {
46556
- type: Boolean,
46557
- default: true
46558
- },
46559
- lang: {
46560
- type: String,
46561
- default: "zh-HK"
46562
- },
46563
- timeline: {
46564
- type: String,
46565
- default: ""
46566
- },
46567
- cmhkChannel: {
46568
- type: String,
46569
- default: "WWW"
46570
- },
46571
- showDel: {
46572
- type: Boolean,
46573
- default: true
46574
- }
46575
- },
46576
- data() {
46577
- return {
46578
- styleConfig_mb: {},
46579
- styleConfig_pc: {},
46580
- configData: {},
46581
- elementWidth: 0,
46582
- resizeObserver: null
46583
- };
46584
- },
46585
- watch: {
46586
- data: {
46587
- handler(val) {
46588
- this.getStyleConfig(val, "pc");
46589
- this.getStyleConfig(val, "mb");
46590
- this.getValue(this.lang);
46591
- },
46592
- deep: true,
46593
- immediate: true
46594
- },
46595
- lang: {
46596
- handler(val) {
46597
- this.getValue(val);
46598
- },
46599
- deep: true,
46600
- immediate: true
46601
- }
46602
- },
46603
- mounted() {
46604
- if (this.$EventBus && this.isOpcacity) {
46605
- this.elementWidth = 800;
46606
- this.$EventBus.$on("handleDeviceChange", isMobile => {
46607
- this.elementWidth = isMobile ? 700 : 800;
46608
- });
46609
- } else if (this.showSlot) {
46610
- this.resizeObserver = new ResizeObserver(entries => {
46611
- for (let entry of entries) {
46612
- this.elementWidth = entry.contentRect.width;
46613
- // 可以在这里触发自定义逻辑
46614
- // this.onWidthChange(this.elementWidth);
46615
- }
46616
- });
46617
- const element = document.getElementById("app");
46618
- this.resizeObserver.observe(element);
46619
- }
46620
- },
46621
- beforeDestroy() {
46622
- // 组件销毁时停止观察
46623
- if (this.resizeObserver) {
46624
- this.resizeObserver.disconnect();
46625
- }
46626
- },
46627
- methods: {
46628
- selectParentDom() {
46629
- if (!this.isOpcacity) return;
46630
- this.$EventBus.$emit("handleParentComp", this.data);
46631
- },
46632
- onWidthChange(newWidth) {
46633
- console.log("新宽度:", newWidth, this.isMobile);
46634
- },
46635
- getValue(cur_lang) {
46636
- var _this$data, _this$data$settings;
46637
- const obj = {
46638
- "zh-CN": "lang_sc",
46639
- "zh-HK": "lang_tc",
46640
- "en-US": "lang_en"
46641
- };
46642
- if ((_this$data = this.data) !== null && _this$data !== void 0 && (_this$data$settings = _this$data.settings) !== null && _this$data$settings !== void 0 && _this$data$settings.settings) {
46643
- const baseInfo = (0,patch.transfor)(this.data);
46644
- this.configData = baseInfo.contentConfig.lang_all ? baseInfo.contentConfig.lang_all : baseInfo.contentConfig[`${obj[cur_lang]}`];
46645
- } else {
46646
- this.configData = this.data.contentConfig.lang_all ? this.data.contentConfig.lang_all : this.data.contentConfig[`${obj[cur_lang]}`];
46647
- }
46648
- this.$emit("getConfigData", this.configData);
46649
- },
46650
- getStyleConfig(data, type) {
46651
- this[`styleConfig_${type}`] = data.styleConfig[type].reduce((pre, cur) => {
46652
- pre[cur.key] = cur.value + cur.unit;
46653
- return pre;
46654
- }, {});
46655
- },
46656
- handleNowComp() {
46657
- if (!this.isOpcacity) return;
46658
- this.$EventBus.$emit("handleNowComp", this.data);
46659
- },
46660
- delComp() {
46661
- this.$EventBus.$emit("handleDeleteComp", this.data.componentId);
46662
- }
46663
- },
46664
- computed: {
46665
- showStyleConfig() {
46666
- if (!this.elementWidth) return {};
46667
- return this.isMobile ? this.styleConfig_mb : this.styleConfig_pc;
46668
- },
46669
- isMobile() {
46670
- return this.elementWidth < 760;
46671
- },
46672
- showSlot() {
46673
- if (this.$EventBus && this.isOpcacity) return false;
46674
- const {
46675
- cmhkChannelConfList = [],
46676
- startTime = "",
46677
- endTime = ""
46678
- } = this.data.baseConfig;
46679
- console.log("this.cmhkChannel", this.cmhkChannel, this.data.baseConfig);
46680
- const channelVisable = cmhkChannelConfList.includes("ALL") || cmhkChannelConfList.includes(this.cmhkChannel);
46681
- if (!channelVisable) return false;
46682
- if (!startTime && !endTime) return true;
46683
- const currentTime = this.timeline ? dayjs_min_default()(this.timeline) : dayjs_min_default()();
46684
- const isStart = startTime ? dayjs_min_default()(currentTime).isAfter(dayjs_min_default()(startTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(startTime)) : true;
46685
- const isEnd = endTime ? dayjs_min_default()(currentTime).isBefore(dayjs_min_default()(endTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(endTime)) : true;
46686
- return isStart && isEnd;
46687
- }
46688
- }
46689
- });
46690
- ;// ./package/baseComp.vue?vue&type=script&lang=js
46691
- /* harmony default export */ var package_baseCompvue_type_script_lang_js = (baseCompvue_type_script_lang_js);
46692
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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/baseComp.vue?vue&type=style&index=0&id=1a96e3b2&prod&lang=scss&scoped=true
46693
- // extracted by mini-css-extract-plugin
46694
-
46695
- ;// ./package/baseComp.vue?vue&type=style&index=0&id=1a96e3b2&prod&lang=scss&scoped=true
46696
-
46697
- // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
46698
- var componentNormalizer = __webpack_require__(1656);
46699
- ;// ./package/baseComp.vue
46700
-
46701
-
46702
-
46703
- ;
46704
-
46705
-
46706
- /* normalize component */
46707
-
46708
- var component = (0,componentNormalizer/* default */.A)(
46709
- package_baseCompvue_type_script_lang_js,
46710
- render,
46711
- staticRenderFns,
46712
- false,
46713
- null,
46714
- "1a96e3b2",
46715
- null
46716
-
46717
- )
46718
-
46719
- /* harmony default export */ var baseComp = (component.exports);
46720
-
46721
46862
  /***/ }),
46722
46863
 
46723
46864
  /***/ 7865:
@@ -46823,7 +46964,7 @@ var render = function render() {
46823
46964
  var staticRenderFns = [];
46824
46965
 
46825
46966
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46826
- var baseComp = __webpack_require__(7843);
46967
+ var baseComp = __webpack_require__(7135);
46827
46968
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
46828
46969
  var jumpUrl = __webpack_require__(4102);
46829
46970
  // EXTERNAL MODULE: ./node_modules/vue/dist/vue.runtime.esm.js
@@ -47200,6 +47341,281 @@ module.exports = function (argument) {
47200
47341
  };
47201
47342
 
47202
47343
 
47344
+ /***/ }),
47345
+
47346
+ /***/ 8044:
47347
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
47348
+
47349
+ "use strict";
47350
+ // ESM COMPAT FLAG
47351
+ __webpack_require__.r(__webpack_exports__);
47352
+
47353
+ // EXPORTS
47354
+ __webpack_require__.d(__webpack_exports__, {
47355
+ "default": function() { return /* binding */ View; }
47356
+ });
47357
+
47358
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/View.vue?vue&type=template&id=73699845&scoped=true
47359
+ var render = function render() {
47360
+ var _vm = this,
47361
+ _c = _vm._self._c;
47362
+ return _c('BaseComp', _vm._b({
47363
+ attrs: {
47364
+ "data": _vm.data,
47365
+ "nowCompId": _vm.nowCompId,
47366
+ "isOpcacity": _vm.isOpcacity,
47367
+ "isMask": false,
47368
+ "lang": _vm.lang
47369
+ },
47370
+ on: {
47371
+ "getConfigData": _vm.getConfigData
47372
+ },
47373
+ scopedSlots: _vm._u([{
47374
+ key: "default",
47375
+ fn: function (slotProps) {
47376
+ return [_c('section', {
47377
+ class: (_vm.configData.widthType === 'full' ? 'width-full' : 'cmhk-home_main', {
47378
+ hoverBorderClass: _vm.isConfigPage
47379
+ }),
47380
+ style: _vm.containerStyle
47381
+ }, [_c('div', {
47382
+ staticClass: "column-setting",
47383
+ class: [`layout-${_vm.configData.layoutType || 'default'}`, `${slotProps.isMobile && _vm.configData.mobileLayout === 'vertical' ? 'mobile-vertical' : 'mobile-horizontal'}`],
47384
+ style: _vm.columnStyle
47385
+ }, _vm._l(_vm.data.childList, function (item, index) {
47386
+ return _c('cms-column-card', {
47387
+ key: item.componentId,
47388
+ class: _vm.getColumnItemClass(index),
47389
+ style: _vm.getColumnItemStyle(index),
47390
+ attrs: {
47391
+ "data": item,
47392
+ "nowCompId": _vm.nowCompId,
47393
+ "isOpcacity": _vm.isOpcacity,
47394
+ "isMask": false,
47395
+ "lang": _vm.lang
47396
+ }
47397
+ });
47398
+ }), 1)])];
47399
+ }
47400
+ }])
47401
+ }, 'BaseComp', _vm.$attrs, false));
47402
+ };
47403
+ var staticRenderFns = [];
47404
+
47405
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
47406
+ var baseComp = __webpack_require__(7135);
47407
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/View.vue?vue&type=script&lang=js
47408
+
47409
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
47410
+ name: "cms-column",
47411
+ components: {
47412
+ BaseComp: baseComp["default"]
47413
+ },
47414
+ props: {
47415
+ data: {
47416
+ type: Object,
47417
+ default: () => {
47418
+ return {};
47419
+ }
47420
+ },
47421
+ nowCompId: {
47422
+ type: [String, Number],
47423
+ default: ""
47424
+ },
47425
+ isOpcacity: {
47426
+ type: Boolean,
47427
+ default: true
47428
+ },
47429
+ lang: {
47430
+ type: String,
47431
+ default: "zh-HK"
47432
+ }
47433
+ },
47434
+ data() {
47435
+ return {
47436
+ configData: {},
47437
+ messFold: true,
47438
+ // 默认配置数据
47439
+ defaultConfig: {
47440
+ layoutType: "100",
47441
+ heightType: "auto",
47442
+ widthType: "auto",
47443
+ mobileLayout: "vertical",
47444
+ fixedHeight: 300,
47445
+ borderWidth: 0,
47446
+ borderStyle: "solid",
47447
+ borderColor: "",
47448
+ backgroundColor: "#FFF",
47449
+ backgroundImage: "",
47450
+ boxShadow: "",
47451
+ borderRadius: 0,
47452
+ columnGap: 0,
47453
+ rowGap: 0,
47454
+ title: "",
47455
+ description: "",
47456
+ input1: "",
47457
+ showTitle: true,
47458
+ showDescription: true,
47459
+ animationDuration: 300,
47460
+ responsiveBreakpoint: 768
47461
+ }
47462
+ };
47463
+ },
47464
+ mounted() {
47465
+ this.initConfigData();
47466
+ // 添加窗口大小变化监听
47467
+ },
47468
+ watch: {
47469
+ configData: {
47470
+ handler() {
47471
+ this.updateStyles();
47472
+ },
47473
+ deep: true
47474
+ }
47475
+ },
47476
+ computed: {
47477
+ isConfigPage() {
47478
+ return this.$EventBus && this.isOpcacity;
47479
+ },
47480
+ // 容器样式
47481
+ containerStyle() {
47482
+ return {
47483
+ backgroundColor: this.configData.backgroundColor || this.defaultConfig.backgroundColor,
47484
+ backgroundImage: this.configData.backgroundImage ? `url(${this.configData.backgroundImage})` : "",
47485
+ backgroundSize: "cover",
47486
+ backgroundRepeat: "no-repeat",
47487
+ backgroundPosition: "center center",
47488
+ boxShadow: this.configData.boxShadow || this.defaultConfig.boxShadow,
47489
+ borderRadius: `${this.configData.borderRadius || this.defaultConfig.borderRadius}px`,
47490
+ minHeight: this.configData.heightType === "fixed" ? `${this.configData.fixedHeight}px` : "auto"
47491
+ };
47492
+ },
47493
+ // 分栏容器样式
47494
+ columnStyle() {
47495
+ // const gap = this.configData.rowGap || this.defaultConfig.rowGap;
47496
+ return {
47497
+ // gap: `${gap}px`,
47498
+ border: this.configData.borderWidth ? `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}` : "none"
47499
+ };
47500
+ }
47501
+ },
47502
+ methods: {
47503
+ // 初始化配置数据
47504
+ initConfigData() {
47505
+ // 合并默认配置和传入配置
47506
+ this.configData = {
47507
+ ...this.defaultConfig,
47508
+ ...this.configData
47509
+ };
47510
+ },
47511
+ // 获取配置数据
47512
+ getConfigData(configData) {
47513
+ this.configData = {
47514
+ ...this.defaultConfig,
47515
+ ...configData
47516
+ };
47517
+ this.updateStyles();
47518
+ },
47519
+ // 更新样式
47520
+ updateStyles() {
47521
+ this.$nextTick(() => {
47522
+ // 触发样式更新
47523
+ this.$forceUpdate();
47524
+ });
47525
+ },
47526
+ // 获取分栏项的类名
47527
+ getColumnItemClass(index) {
47528
+ const layoutType = this.configData.layoutType || this.defaultConfig.layoutType;
47529
+ return ["column-item", `column-item-${index}`, `layout-${layoutType}`, {
47530
+ "min-h": this.$EventBus && this.isOpcacity,
47531
+ "first-item": index === 0,
47532
+ "last-item": index === this.data.childList.length - 1
47533
+ }];
47534
+ },
47535
+ // 获取分栏项的样式
47536
+ getColumnItemStyle(index) {
47537
+ const layoutType = this.configData.layoutType || this.defaultConfig.layoutType;
47538
+ const gap = this.configData.rowGap || this.defaultConfig.rowGap;
47539
+ let flexBasis = "100%";
47540
+ let marginRight = "0";
47541
+
47542
+ // 根据布局类型设置宽度
47543
+ switch (layoutType) {
47544
+ case "50-50":
47545
+ flexBasis = `calc(50% - ${gap / 2}px)`;
47546
+ marginRight = index % 2 === 0 ? `${gap}px` : "0";
47547
+ break;
47548
+ case "33-66":
47549
+ flexBasis = index === 0 ? `calc(33.33% - ${gap / 2}px)` : `calc(66.67% - ${gap / 2}px)`;
47550
+ marginRight = index === 0 ? `${gap}px` : "0";
47551
+ break;
47552
+ case "66-33":
47553
+ flexBasis = index === 0 ? `calc(66.67% - ${gap / 2}px)` : `calc(33.33% - ${gap / 2}px)`;
47554
+ marginRight = index === 0 ? `${gap}px` : "0";
47555
+ break;
47556
+ case "33-33-33":
47557
+ flexBasis = `calc(33.33% - ${gap * 2 / 3}px)`;
47558
+ marginRight = index < 2 ? `${gap}px` : "0";
47559
+ break;
47560
+ case "25-50-25":
47561
+ if (index === 0 || index === 2) {
47562
+ flexBasis = `calc(25% - ${gap * 2 / 3}px)`;
47563
+ } else {
47564
+ flexBasis = `calc(50% - ${gap * 2 / 3}px)`;
47565
+ }
47566
+ marginRight = index < 2 ? `${gap}px` : "0";
47567
+ break;
47568
+ default:
47569
+ flexBasis = "100%";
47570
+ }
47571
+ return {
47572
+ flexBasis,
47573
+ marginRight,
47574
+ marginBottom: `${this.configData.columnGap || this.defaultConfig.columnGap}px`
47575
+ };
47576
+ },
47577
+ // 折叠/展开文本
47578
+ foldMessText() {
47579
+ this.messFold = !this.messFold;
47580
+ },
47581
+ // 处理跳转链接
47582
+ decodeJumpUrl(url) {
47583
+ if (!url) return;
47584
+ top.location.href = url;
47585
+ }
47586
+ }
47587
+ });
47588
+ ;// ./package/cms-column/View.vue?vue&type=script&lang=js
47589
+ /* harmony default export */ var cms_column_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
47590
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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/View.vue?vue&type=style&index=0&id=73699845&prod&lang=scss&scoped=true
47591
+ // extracted by mini-css-extract-plugin
47592
+
47593
+ ;// ./package/cms-column/View.vue?vue&type=style&index=0&id=73699845&prod&lang=scss&scoped=true
47594
+
47595
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
47596
+ var componentNormalizer = __webpack_require__(1656);
47597
+ ;// ./package/cms-column/View.vue
47598
+
47599
+
47600
+
47601
+ ;
47602
+
47603
+
47604
+ /* normalize component */
47605
+
47606
+ var component = (0,componentNormalizer/* default */.A)(
47607
+ cms_column_Viewvue_type_script_lang_js,
47608
+ render,
47609
+ staticRenderFns,
47610
+ false,
47611
+ null,
47612
+ "73699845",
47613
+ null
47614
+
47615
+ )
47616
+
47617
+ /* harmony default export */ var View = (component.exports);
47618
+
47203
47619
  /***/ }),
47204
47620
 
47205
47621
  /***/ 8066:
@@ -47296,7 +47712,7 @@ var render = function render() {
47296
47712
  var staticRenderFns = [];
47297
47713
 
47298
47714
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
47299
- var baseComp = __webpack_require__(7843);
47715
+ var baseComp = __webpack_require__(7135);
47300
47716
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-lineFour/View.vue?vue&type=script&lang=js
47301
47717
 
47302
47718
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -48573,7 +48989,7 @@ var swiper = __webpack_require__(828);
48573
48989
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
48574
48990
  var swiper_esm_bundle = __webpack_require__(1532);
48575
48991
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
48576
- var baseComp = __webpack_require__(7843);
48992
+ var baseComp = __webpack_require__(7135);
48577
48993
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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-threeScroll/View.vue?vue&type=script&lang=js
48578
48994
 
48579
48995
 
@@ -49119,276 +49535,6 @@ module.exports = URIError;
49119
49535
 
49120
49536
  /***/ }),
49121
49537
 
49122
- /***/ 8970:
49123
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
49124
-
49125
- "use strict";
49126
- // ESM COMPAT FLAG
49127
- __webpack_require__.r(__webpack_exports__);
49128
-
49129
- // EXPORTS
49130
- __webpack_require__.d(__webpack_exports__, {
49131
- "default": function() { return /* binding */ View; }
49132
- });
49133
-
49134
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/View.vue?vue&type=template&id=67ae24ec&scoped=true
49135
- var render = function render() {
49136
- var _vm = this,
49137
- _c = _vm._self._c;
49138
- return _c('BaseComp', _vm._b({
49139
- attrs: {
49140
- "data": _vm.data,
49141
- "nowCompId": _vm.nowCompId,
49142
- "isOpcacity": _vm.isOpcacity,
49143
- "isMask": false,
49144
- "lang": _vm.lang
49145
- },
49146
- on: {
49147
- "getConfigData": _vm.getConfigData
49148
- },
49149
- scopedSlots: _vm._u([{
49150
- key: "default",
49151
- fn: function (slotProps) {
49152
- return [_c('section', {
49153
- class: _vm.configData.widthType === 'full' ? 'width-full' : 'cmhk-home_main',
49154
- style: _vm.containerStyle
49155
- }, [_c('div', {
49156
- staticClass: "column-setting",
49157
- class: [`layout-${_vm.configData.layoutType || 'default'}`, `${slotProps.isMobile && _vm.configData.mobileLayout === 'vertical' ? 'mobile-vertical' : 'mobile-horizontal'}`],
49158
- style: _vm.columnStyle
49159
- }, _vm._l(_vm.data.childList, function (item, index) {
49160
- return _c('cms-column-card', {
49161
- key: item.componentId,
49162
- class: _vm.getColumnItemClass(index),
49163
- style: _vm.getColumnItemStyle(index),
49164
- attrs: {
49165
- "data": item,
49166
- "nowCompId": _vm.nowCompId,
49167
- "isOpcacity": _vm.isOpcacity,
49168
- "isMask": false,
49169
- "lang": _vm.lang
49170
- }
49171
- });
49172
- }), 1)])];
49173
- }
49174
- }])
49175
- }, 'BaseComp', _vm.$attrs, false));
49176
- };
49177
- var staticRenderFns = [];
49178
-
49179
- // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
49180
- var baseComp = __webpack_require__(7843);
49181
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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/View.vue?vue&type=script&lang=js
49182
-
49183
- /* harmony default export */ var Viewvue_type_script_lang_js = ({
49184
- name: "cms-column",
49185
- components: {
49186
- BaseComp: baseComp["default"]
49187
- },
49188
- props: {
49189
- data: {
49190
- type: Object,
49191
- default: () => {
49192
- return {};
49193
- }
49194
- },
49195
- nowCompId: {
49196
- type: [String, Number],
49197
- default: ""
49198
- },
49199
- isOpcacity: {
49200
- type: Boolean,
49201
- default: true
49202
- },
49203
- lang: {
49204
- type: String,
49205
- default: "zh-HK"
49206
- }
49207
- },
49208
- data() {
49209
- return {
49210
- configData: {},
49211
- messFold: true,
49212
- // 默认配置数据
49213
- defaultConfig: {
49214
- layoutType: "100",
49215
- heightType: "auto",
49216
- widthType: "auto",
49217
- mobileLayout: "vertical",
49218
- fixedHeight: 300,
49219
- borderWidth: 0,
49220
- borderStyle: "solid",
49221
- borderColor: "#409eff",
49222
- backgroundColor: "#FFF",
49223
- backgroundImage: "",
49224
- boxShadow: "",
49225
- borderRadius: 0,
49226
- columnGap: 0,
49227
- rowGap: 0,
49228
- title: "",
49229
- description: "",
49230
- input1: "",
49231
- showTitle: true,
49232
- showDescription: true,
49233
- animationDuration: 300,
49234
- responsiveBreakpoint: 768
49235
- }
49236
- };
49237
- },
49238
- mounted() {
49239
- this.initConfigData();
49240
- // 添加窗口大小变化监听
49241
- },
49242
- watch: {
49243
- configData: {
49244
- handler() {
49245
- this.updateStyles();
49246
- },
49247
- deep: true
49248
- }
49249
- },
49250
- computed: {
49251
- // 容器样式
49252
- containerStyle() {
49253
- return {
49254
- backgroundColor: this.configData.backgroundColor || this.defaultConfig.backgroundColor,
49255
- backgroundImage: this.configData.backgroundImage ? `url(${this.configData.backgroundImage})` : "",
49256
- backgroundSize: "cover",
49257
- backgroundRepeat: "no-repeat",
49258
- backgroundPosition: "center center",
49259
- boxShadow: this.configData.boxShadow || this.defaultConfig.boxShadow,
49260
- borderRadius: `${this.configData.borderRadius || this.defaultConfig.borderRadius}px`,
49261
- minHeight: this.configData.heightType === "fixed" ? `${this.configData.fixedHeight}px` : "auto"
49262
- };
49263
- },
49264
- // 分栏容器样式
49265
- columnStyle() {
49266
- // const gap = this.configData.rowGap || this.defaultConfig.rowGap;
49267
- return {
49268
- // gap: `${gap}px`,
49269
- border: this.configData.borderWidth ? `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}` : "none"
49270
- };
49271
- }
49272
- },
49273
- methods: {
49274
- // 初始化配置数据
49275
- initConfigData() {
49276
- // 合并默认配置和传入配置
49277
- this.configData = {
49278
- ...this.defaultConfig,
49279
- ...this.configData
49280
- };
49281
- },
49282
- // 获取配置数据
49283
- getConfigData(configData) {
49284
- this.configData = {
49285
- ...this.defaultConfig,
49286
- ...configData
49287
- };
49288
- this.updateStyles();
49289
- },
49290
- // 更新样式
49291
- updateStyles() {
49292
- this.$nextTick(() => {
49293
- // 触发样式更新
49294
- this.$forceUpdate();
49295
- });
49296
- },
49297
- // 获取分栏项的类名
49298
- getColumnItemClass(index) {
49299
- const layoutType = this.configData.layoutType || this.defaultConfig.layoutType;
49300
- return ["column-item", `column-item-${index}`, `layout-${layoutType}`, {
49301
- "min-h": this.$EventBus && this.isOpcacity,
49302
- "first-item": index === 0,
49303
- "last-item": index === this.data.childList.length - 1
49304
- }];
49305
- },
49306
- // 获取分栏项的样式
49307
- getColumnItemStyle(index) {
49308
- const layoutType = this.configData.layoutType || this.defaultConfig.layoutType;
49309
- const gap = this.configData.rowGap || this.defaultConfig.rowGap;
49310
- let flexBasis = "100%";
49311
- let marginRight = "0";
49312
-
49313
- // 根据布局类型设置宽度
49314
- switch (layoutType) {
49315
- case "50-50":
49316
- flexBasis = `calc(50% - ${gap / 2}px)`;
49317
- marginRight = index % 2 === 0 ? `${gap}px` : "0";
49318
- break;
49319
- case "33-66":
49320
- flexBasis = index === 0 ? `calc(33.33% - ${gap / 2}px)` : `calc(66.67% - ${gap / 2}px)`;
49321
- marginRight = index === 0 ? `${gap}px` : "0";
49322
- break;
49323
- case "66-33":
49324
- flexBasis = index === 0 ? `calc(66.67% - ${gap / 2}px)` : `calc(33.33% - ${gap / 2}px)`;
49325
- marginRight = index === 0 ? `${gap}px` : "0";
49326
- break;
49327
- case "33-33-33":
49328
- flexBasis = `calc(33.33% - ${gap * 2 / 3}px)`;
49329
- marginRight = index < 2 ? `${gap}px` : "0";
49330
- break;
49331
- case "25-50-25":
49332
- if (index === 0 || index === 2) {
49333
- flexBasis = `calc(25% - ${gap * 2 / 3}px)`;
49334
- } else {
49335
- flexBasis = `calc(50% - ${gap * 2 / 3}px)`;
49336
- }
49337
- marginRight = index < 2 ? `${gap}px` : "0";
49338
- break;
49339
- default:
49340
- flexBasis = "100%";
49341
- }
49342
- return {
49343
- flexBasis,
49344
- marginRight,
49345
- marginBottom: `${this.configData.columnGap || this.defaultConfig.columnGap}px`
49346
- };
49347
- },
49348
- // 折叠/展开文本
49349
- foldMessText() {
49350
- this.messFold = !this.messFold;
49351
- },
49352
- // 处理跳转链接
49353
- decodeJumpUrl(url) {
49354
- if (!url) return;
49355
- top.location.href = url;
49356
- }
49357
- }
49358
- });
49359
- ;// ./package/cms-column/View.vue?vue&type=script&lang=js
49360
- /* harmony default export */ var cms_column_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
49361
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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/View.vue?vue&type=style&index=0&id=67ae24ec&prod&lang=scss&scoped=true
49362
- // extracted by mini-css-extract-plugin
49363
-
49364
- ;// ./package/cms-column/View.vue?vue&type=style&index=0&id=67ae24ec&prod&lang=scss&scoped=true
49365
-
49366
- // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
49367
- var componentNormalizer = __webpack_require__(1656);
49368
- ;// ./package/cms-column/View.vue
49369
-
49370
-
49371
-
49372
- ;
49373
-
49374
-
49375
- /* normalize component */
49376
-
49377
- var component = (0,componentNormalizer/* default */.A)(
49378
- cms_column_Viewvue_type_script_lang_js,
49379
- render,
49380
- staticRenderFns,
49381
- false,
49382
- null,
49383
- "67ae24ec",
49384
- null
49385
-
49386
- )
49387
-
49388
- /* harmony default export */ var View = (component.exports);
49389
-
49390
- /***/ }),
49391
-
49392
49538
  /***/ 8981:
49393
49539
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
49394
49540
 
@@ -52424,12 +52570,520 @@ $({ target: 'Iterator', proto: true, real: true, forced: IS_PURE }, {
52424
52570
  __webpack_require__.r(__webpack_exports__);
52425
52571
  /* harmony default export */ __webpack_exports__["default"] = ({
52426
52572
  Expand: "展開",
52573
+ More: "查看更多",
52427
52574
  Collpase: "收起",
52428
52575
  discount: '優惠期限:'
52429
52576
  });
52430
52577
 
52431
52578
  /***/ }),
52432
52579
 
52580
+ /***/ 9421:
52581
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
52582
+
52583
+ "use strict";
52584
+ // ESM COMPAT FLAG
52585
+ __webpack_require__.r(__webpack_exports__);
52586
+
52587
+ // EXPORTS
52588
+ __webpack_require__.d(__webpack_exports__, {
52589
+ "default": function() { return /* binding */ View; }
52590
+ });
52591
+
52592
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
52593
+ var es_iterator_constructor = __webpack_require__(8111);
52594
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.drop.js
52595
+ var es_iterator_drop = __webpack_require__(9314);
52596
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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=28effaca&scoped=true
52597
+
52598
+
52599
+
52600
+
52601
+ var render = function render() {
52602
+ var _vm = this,
52603
+ _c = _vm._self._c;
52604
+ return _c('BaseComp', _vm._b({
52605
+ attrs: {
52606
+ "data": _vm.data,
52607
+ "nowCompId": _vm.nowCompId,
52608
+ "isOpcacity": _vm.isOpcacity,
52609
+ "isMask": false,
52610
+ "lang": _vm.lang,
52611
+ "showDel": false
52612
+ },
52613
+ on: {
52614
+ "getConfigData": _vm.getConfigData
52615
+ }
52616
+ }, 'BaseComp', _vm.$attrs, false), [_vm.isConfigPage ? _c('div', {
52617
+ staticClass: "main_drag hoverBorderClass",
52618
+ style: _vm.cardContainerStyle,
52619
+ attrs: {
52620
+ "id": `cardTarget${_vm.data.componentId}`
52621
+ },
52622
+ on: {
52623
+ "dragover": _vm.dragover,
52624
+ "dragend": function ($event) {
52625
+ _vm.showAddCom = false;
52626
+ },
52627
+ "drop": _vm.drop
52628
+ }
52629
+ }, [_c('Draggable', {
52630
+ staticStyle: {
52631
+ "position": "relative"
52632
+ },
52633
+ attrs: {
52634
+ "group": _vm.groupConfigForMain,
52635
+ "chosen-class": "chosen",
52636
+ "force-fallback": "true",
52637
+ "animation": "1000",
52638
+ "move": _vm.onMove
52639
+ },
52640
+ on: {
52641
+ "start": _vm.onStart,
52642
+ "end": function ($event) {
52643
+ _vm.showAddCom = false;
52644
+ }
52645
+ },
52646
+ model: {
52647
+ value: _vm.data.childList,
52648
+ callback: function ($$v) {
52649
+ _vm.$set(_vm.data, "childList", $$v);
52650
+ },
52651
+ expression: "data.childList"
52652
+ }
52653
+ }, [_vm._l(_vm.data.childList, function (item, index) {
52654
+ return _c('div', {
52655
+ key: item.componentId,
52656
+ staticStyle: {
52657
+ "position": "relative"
52658
+ }
52659
+ }, [_vm.showAddCom ? _c('div', {
52660
+ staticClass: "up_insert",
52661
+ attrs: {
52662
+ "id": `${item.componentId}-cardTargetup`
52663
+ }
52664
+ }, [_c('i', {
52665
+ staticClass: "icon-up",
52666
+ attrs: {
52667
+ "id": `${item.componentId}-upi`
52668
+ }
52669
+ }), _c('span', {
52670
+ attrs: {
52671
+ "id": `${item.componentId}-upspan`
52672
+ }
52673
+ }, [_vm._v("插入组件")])]) : _vm._e(), _c(item.cmsCompName, {
52674
+ tag: "component",
52675
+ style: {
52676
+ marginTop: _vm.showAddCom && index == 0 ? '20px' : '0px'
52677
+ },
52678
+ attrs: {
52679
+ "data": item,
52680
+ "lang": _vm.lang,
52681
+ "isOpcacity": _vm.isOpcacity,
52682
+ "nowCompId": _vm.nowCompId
52683
+ }
52684
+ })], 1);
52685
+ }), _vm.showAddCom ? _c('div', {
52686
+ staticClass: "up_insert insert_bottom",
52687
+ style: {
52688
+ bottom: _vm.data.childList.length ? '0px' : '-24px'
52689
+ },
52690
+ attrs: {
52691
+ "id": `-cardTargetdown`
52692
+ }
52693
+ }, [_c('i', {
52694
+ staticClass: "icon-up"
52695
+ }), _c('span', [_vm._v("插入组件")])]) : _vm._e()], 2)], 1) : _c('cms-view', _vm._b({
52696
+ style: _vm.cardContainerStyle,
52697
+ attrs: {
52698
+ "data": _vm.data.childList,
52699
+ "lang": _vm.lang,
52700
+ "isOpcacity": false
52701
+ }
52702
+ }, 'cms-view', _vm.$attrs, false))], 1);
52703
+ };
52704
+ var staticRenderFns = [];
52705
+
52706
+ ;// ./package/cms-column-card/View.vue?vue&type=template&id=28effaca&scoped=true
52707
+
52708
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
52709
+ var es_array_push = __webpack_require__(4114);
52710
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
52711
+ var baseComp = __webpack_require__(7135);
52712
+ // EXTERNAL MODULE: ./node_modules/vuedraggable/dist/vuedraggable.umd.js
52713
+ var vuedraggable_umd = __webpack_require__(9014);
52714
+ var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd);
52715
+ // EXTERNAL MODULE: ./package/baseConfig.js
52716
+ var baseConfig = __webpack_require__(2128);
52717
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.find.js
52718
+ var es_iterator_find = __webpack_require__(116);
52719
+ // EXTERNAL MODULE: ./src/utils/index.js
52720
+ var utils = __webpack_require__(9563);
52721
+ ;// ./src/views/standard_page.js
52722
+
52723
+
52724
+
52725
+
52726
+
52727
+ const standard_page_list = [{
52728
+ id: 1,
52729
+ componentId: 1,
52730
+ componentName: "范本1-防诈骗提示",
52731
+ standList: ["cms-banner", "cms-titleCenter", "cms-lineThree"]
52732
+ }, {
52733
+ id: 2,
52734
+ componentId: 2,
52735
+ componentName: "范本2-员工优惠",
52736
+ standList: ["cms-banner", "cms-description", "cms-activityCountdown", "cms-titleLeft", "cms-proCard", "cms-termsAndConditions"]
52737
+ }];
52738
+ const getComponentKey = (compList, id, noCompId = false) => {
52739
+ if (noCompId) return id;
52740
+ let compConfig = compList.find(item => item.id == id);
52741
+ if (compConfig.type == "1") {
52742
+ return compConfig.componentId;
52743
+ }
52744
+ return "cms-dynamic-comp";
52745
+ };
52746
+ const getCopyTemplateCompConfig = (compList, componentKey) => {
52747
+ let otherConfig = {};
52748
+ const configureJson = compList.find(item => item.id == componentKey).configureJson;
52749
+ if (configureJson.wujieConfig) {
52750
+ //如果是第三方组件加一个临时标识
52751
+ otherConfig = {
52752
+ originalComponentId: configureJson.componentId,
52753
+ originalVersionId: configureJson.wujieConfig.versionId,
52754
+ operation: "copyTemplate"
52755
+ };
52756
+ }
52757
+ return {
52758
+ ...configureJson,
52759
+ componentId: (0,utils/* getUuidCode */.J0)(32),
52760
+ ...otherConfig
52761
+ };
52762
+ };
52763
+ const isStaticComp = componentKey => {
52764
+ return ["cms-header", "cms-footer", "cms-breadCrumb"].includes(componentKey);
52765
+ };
52766
+ const getWujieCompInfo = (compList, componentId, isTemplate) => {
52767
+ let compConfig = compList.find(item => item.id == componentId);
52768
+ if (isTemplate) if (compConfig.type == "1") {
52769
+ return compConfig;
52770
+ }
52771
+ return {
52772
+ ...compConfig
52773
+ };
52774
+ };
52775
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.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
52776
+
52777
+
52778
+
52779
+
52780
+
52781
+
52782
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
52783
+ name: "cms-column-card",
52784
+ components: {
52785
+ BaseComp: baseComp["default"],
52786
+ Draggable: (vuedraggable_umd_default())
52787
+ },
52788
+ props: {
52789
+ data: {
52790
+ type: Object,
52791
+ default: () => {
52792
+ return {};
52793
+ }
52794
+ },
52795
+ nowCompId: {
52796
+ type: [String, Number],
52797
+ default: ""
52798
+ },
52799
+ isOpcacity: {
52800
+ type: Boolean,
52801
+ default: true
52802
+ },
52803
+ lang: {
52804
+ type: String,
52805
+ default: "zh-HK"
52806
+ }
52807
+ },
52808
+ data() {
52809
+ return {
52810
+ configData: {},
52811
+ messFold: true,
52812
+ showAddCom: false,
52813
+ temporaryList: []
52814
+ };
52815
+ },
52816
+ computed: {
52817
+ isConfigPage() {
52818
+ return this.$EventBus && this.isOpcacity;
52819
+ },
52820
+ groupConfigForMain() {
52821
+ return {
52822
+ name: "task",
52823
+ pull: true,
52824
+ // A列表的元素可以被拖出
52825
+ put: (to, from, dragEl) => {
52826
+ console.log(from.el.classList);
52827
+ if (from.el.classList.contains("main_drag")) {
52828
+ const dataId = this.findFirstComponentKey(dragEl);
52829
+ const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column"];
52830
+ console.log("allowedComponents", dataId);
52831
+ if (dataId === "cms-column") {
52832
+ if (!this.checkColumnNestingLevel()) {
52833
+ console.log("cms-column 嵌套层级超出限制");
52834
+ return false;
52835
+ }
52836
+ }
52837
+ return allowedComponents.includes(dataId);
52838
+ }
52839
+ return true;
52840
+ }
52841
+ };
52842
+ },
52843
+ // 卡片容器样式
52844
+ cardContainerStyle() {
52845
+ return {
52846
+ backgroundImage: this.configData.backgroundImage ? `url('${this.configData.backgroundImage}')` : "none",
52847
+ backgroundSize: "cover",
52848
+ backgroundRepeat: "no-repeat",
52849
+ backgroundPosition: "center center",
52850
+ height: this.getContainerHeight(),
52851
+ border: this.getContainerBorder(),
52852
+ borderRadius: this.getContainerBorderRadius(),
52853
+ backgroundColor: this.configData.backgroundColor || "transparent",
52854
+ boxShadow: this.configData.boxShadow || "none"
52855
+ };
52856
+ }
52857
+ },
52858
+ mounted() {
52859
+ if (this.$EventBus) {
52860
+ this.$EventBus.$on("handleDragEnd", () => {
52861
+ this.showAddCom = false;
52862
+ });
52863
+ }
52864
+ },
52865
+ watch: {},
52866
+ methods: {
52867
+ findFirstComponentKey(root) {
52868
+ var _root$querySelector;
52869
+ if (!root) return null;
52870
+
52871
+ // 若起点自身就有
52872
+ if (root.nodeType === 1 && root.hasAttribute("component-key")) {
52873
+ return root.getAttribute("component-key");
52874
+ }
52875
+
52876
+ // 向下查找第一个匹配的后代
52877
+ const el = (_root$querySelector = root.querySelector) === null || _root$querySelector === void 0 ? void 0 : _root$querySelector.call(root, "[component-key]");
52878
+ return el ? el.getAttribute("component-key") : null;
52879
+ },
52880
+ // 获取容器高度
52881
+ getContainerHeight() {
52882
+ if (this.configData.heightType === "fixed") {
52883
+ return `${this.configData.fixedHeight}px`;
52884
+ }
52885
+ return this.isOpcacity ? "100%" : "auto";
52886
+ },
52887
+ // 获取容器边框
52888
+ getContainerBorder() {
52889
+ if (this.configData.borderWidth) {
52890
+ return `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}`;
52891
+ }
52892
+ return "none";
52893
+ },
52894
+ // 获取容器圆角
52895
+ getContainerBorderRadius() {
52896
+ if (this.configData.borderRadius) {
52897
+ return `${this.configData.borderRadius}px`;
52898
+ }
52899
+ return "0";
52900
+ },
52901
+ getConfigData(configData) {
52902
+ this.configData = configData;
52903
+ },
52904
+ foldMessText() {
52905
+ this.messFold = !this.messFold;
52906
+ },
52907
+ decodeJumpUrl(url) {
52908
+ if (!url) return;
52909
+ top.location.href = url;
52910
+ },
52911
+ onStart(evt) {
52912
+ console.log("drag start in column-card", evt);
52913
+ this.showAddCom = true;
52914
+ },
52915
+ // 限制拖拽的组件类型
52916
+ onMove(evt) {
52917
+ const {
52918
+ draggedContext
52919
+ } = evt;
52920
+
52921
+ // 允许的组件类型
52922
+ const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
52923
+ ];
52924
+
52925
+ // 如果是从外部拖入的组件
52926
+ if (draggedContext && draggedContext.element) {
52927
+ const componentType = draggedContext.element.cmsCompName;
52928
+ if (componentType && !allowedComponents.includes(componentType)) {
52929
+ console.log("draggedContext.element", draggedContext.element);
52930
+ console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
52931
+ return false;
52932
+ }
52933
+
52934
+ // 特殊处理 cms-column:检查嵌套层级
52935
+ if (componentType === "cms-column") {
52936
+ if (!this.checkColumnNestingLevel()) {
52937
+ console.log("cms-column 嵌套层级超出限制");
52938
+ return false;
52939
+ }
52940
+ }
52941
+ }
52942
+ return true;
52943
+ },
52944
+ // 检查 cms-column 嵌套层级
52945
+ checkColumnNestingLevel() {
52946
+ // 检查当前 column-card 是否已经在 cms-column 内部
52947
+ let parent = this.$parent;
52948
+ let columnDepth = 0;
52949
+ while (parent) {
52950
+ // 检查父组件是否是 cms-column 或包含 cms-column
52951
+ if (parent.$options.name === "cms-column" || parent.$data && parent.$data.data && parent.$data.data.cmsCompName === "cms-column") {
52952
+ columnDepth++;
52953
+ }
52954
+
52955
+ // 如果已经有一层 cms-column,则不允许再嵌套
52956
+ if (columnDepth >= 2) {
52957
+ console.log(`检测到 cms-column 嵌套层级: ${columnDepth}, 超出限制`);
52958
+ return false;
52959
+ }
52960
+ parent = parent.$parent;
52961
+ }
52962
+ console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
52963
+ return true;
52964
+ },
52965
+ // 处理拖拽悬停
52966
+ dragover(e) {
52967
+ e.preventDefault();
52968
+ this.showAddCom = true;
52969
+ },
52970
+ // 处理拖拽放置
52971
+ drop(e) {
52972
+ e.preventDefault();
52973
+ const componentKey = e.dataTransfer.getData("componentKey");
52974
+ let temporaryId = "";
52975
+ this.temporaryList = e.dataTransfer.getData("temporaryList") ? JSON.parse(e.dataTransfer.getData("temporaryList")) : [];
52976
+ console.log("cms-colum-card-drop", componentKey, this.temporaryList);
52977
+ if (!componentKey) return;
52978
+ const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
52979
+ const isTemporary = isTemporaryItem === "true";
52980
+ if (isTemporary) {
52981
+ temporaryId = getCopyTemplateCompConfig(this.temporaryList, componentKey).cmsCompName;
52982
+ }
52983
+ const componentType = isTemporary ? temporaryId : componentKey;
52984
+ // 允许的组件类型
52985
+ const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
52986
+ ];
52987
+
52988
+ // 检查组件类型是否允许
52989
+ if (!allowedComponents.includes(componentType)) {
52990
+ console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
52991
+ this.$message && this.$message.warning(`该组件类型不支持拖入卡片容器`);
52992
+ this.showAddCom = false;
52993
+ return;
52994
+ }
52995
+
52996
+ // 特殊处理 cms-column:检查嵌套层级
52997
+ if (componentType === "cms-column") {
52998
+ if (!this.checkColumnNestingLevel()) {
52999
+ console.log("cms-column 嵌套层级超出限制");
53000
+ this.$message && this.$message.warning(`cms-column 只能嵌套一层`);
53001
+ this.showAddCom = false;
53002
+ return;
53003
+ }
53004
+ }
53005
+ this.addOneComp(e, componentKey);
53006
+ },
53007
+ // 添加组件到卡片容器
53008
+ addOneComp(e, componentKey) {
53009
+ this.showAddCom = false;
53010
+ console.log("drop to column-card", componentKey);
53011
+
53012
+ // 动态导入组件配置
53013
+ let initCompData;
53014
+ try {
53015
+ const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
53016
+ if (isTemporaryItem === "true") {
53017
+ initCompData = getCopyTemplateCompConfig(this.temporaryList, componentKey);
53018
+ } else {
53019
+ initCompData = __webpack_require__(1640)(`./${componentKey}`).default.settings(componentKey);
53020
+ }
53021
+ initCompData = {
53022
+ ...initCompData,
53023
+ styleConfig: {
53024
+ pc: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(16, 16, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")],
53025
+ mb: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(12, 12, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")]
53026
+ }
53027
+ };
53028
+ } catch (error) {
53029
+ console.error(`无法加载组件 ${componentKey}:`, error);
53030
+ this.$message && this.$message.error(`组件加载失败`);
53031
+ return;
53032
+ }
53033
+ const toElementId = e.toElement.id;
53034
+ if (toElementId === `cardTarget${this.data.componentId}` || toElementId.includes("cardTargetdown")) {
53035
+ // 添加到卡片容器末尾
53036
+ this.data.childList.push(initCompData);
53037
+ } else if (toElementId.includes("cardTargetup")) {
53038
+ // 插入到指定位置
53039
+ const underComponentId = toElementId.split("-cardTargetup")[0];
53040
+ const index = this.data.childList.findIndex(item => item.componentId === underComponentId);
53041
+ if (index !== -1) {
53042
+ this.data.childList.splice(index, 0, initCompData);
53043
+ }
53044
+ }
53045
+
53046
+ // 触发数据更新
53047
+ this.$emit("update:data", this.data);
53048
+ if (componentKey === "cms-column") {
53049
+ this.$EventBus.$emit("handleNowComp", initCompData);
53050
+ }
53051
+ }
53052
+ }
53053
+ });
53054
+ ;// ./package/cms-column-card/View.vue?vue&type=script&lang=js
53055
+ /* harmony default export */ var cms_column_card_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
53056
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.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=28effaca&prod&lang=scss&scoped=true
53057
+ // extracted by mini-css-extract-plugin
53058
+
53059
+ ;// ./package/cms-column-card/View.vue?vue&type=style&index=0&id=28effaca&prod&lang=scss&scoped=true
53060
+
53061
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
53062
+ var componentNormalizer = __webpack_require__(1656);
53063
+ ;// ./package/cms-column-card/View.vue
53064
+
53065
+
53066
+
53067
+ ;
53068
+
53069
+
53070
+ /* normalize component */
53071
+
53072
+ var component = (0,componentNormalizer/* default */.A)(
53073
+ cms_column_card_Viewvue_type_script_lang_js,
53074
+ render,
53075
+ staticRenderFns,
53076
+ false,
53077
+ null,
53078
+ "28effaca",
53079
+ null
53080
+
53081
+ )
53082
+
53083
+ /* harmony default export */ var View = (component.exports);
53084
+
53085
+ /***/ }),
53086
+
52433
53087
  /***/ 9429:
52434
53088
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
52435
53089
 
@@ -55263,7 +55917,7 @@ service.interceptors.request.use(config => {
55263
55917
  if (config.url.includes("/ecosp-console")) {
55264
55918
  document.cookie = "JSESSIONID=node017nm2falxdfe8c1parzfv9ilr29.node0";
55265
55919
  } else if (config.url.includes("omni-channel-service-console")) {
55266
- document.cookie = "JSESSIONID=78E8137DAEC4660E6E4A6310CAB2B300";
55920
+ document.cookie = "JSESSIONID=CA4058E3A195113C85AE1F926814CF89";
55267
55921
  }
55268
55922
  } else {
55269
55923
  if (config.url.includes("/api/") && is_cmsComp) {