cms-chenhj-ui 2.0.13 → 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__(5651);
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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": 5651,
19681
- "./baseComp.vue": 5651,
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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: "替代文本",
24073
- widgetType: "el-input",
24074
- placeholder: "请输入图片的替代文本"
24075
- },
24076
- title: {
24077
- label: "图片标题",
24389
+ label: "alt属性",
24078
24390
  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`
32695
- }
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
32904
+ "src": __webpack_require__(4806),
32905
+ "alt": "Picture"
32704
32906
  }
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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__(5651);
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
 
@@ -37528,269 +37404,6 @@ module.exports = function getSideChannelList() {
37528
37404
 
37529
37405
  /***/ }),
37530
37406
 
37531
- /***/ 5651:
37532
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
37533
-
37534
- "use strict";
37535
- // ESM COMPAT FLAG
37536
- __webpack_require__.r(__webpack_exports__);
37537
-
37538
- // EXPORTS
37539
- __webpack_require__.d(__webpack_exports__, {
37540
- "default": function() { return /* binding */ baseComp; }
37541
- });
37542
-
37543
- ;// ./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=9d54e5e0&scoped=true
37544
- var render = function render() {
37545
- var _vm = this,
37546
- _c = _vm._self._c;
37547
- return _vm.$EventBus && _vm.isOpcacity ? _c('div', {
37548
- key: _vm.data.componentId,
37549
- class: [_vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? 'highLight' : ''],
37550
- style: _vm.showStyleConfig,
37551
- on: {
37552
- "click": function ($event) {
37553
- $event.stopPropagation();
37554
- return _vm.handleNowComp.apply(null, arguments);
37555
- }
37556
- }
37557
- }, [_c('div', {
37558
- staticClass: "mask-wrap"
37559
- }, [_vm._t("default", null, {
37560
- "isMobile": _vm.isMobile
37561
- }), _vm.isMask ? _c('div', {
37562
- staticClass: "mask",
37563
- on: {
37564
- "click": _vm.handleNowComp
37565
- }
37566
- }) : _vm._e()], 2), _vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? _c('div', {
37567
- staticClass: "com-delete"
37568
- }, [_vm.showDel ? _c('i', {
37569
- staticClass: "el-icon-delete",
37570
- on: {
37571
- "click": function ($event) {
37572
- $event.stopPropagation();
37573
- return _vm.delComp.apply(null, arguments);
37574
- }
37575
- }
37576
- }) : _vm._e(), _c('i', {
37577
- staticClass: "el-icon-top",
37578
- on: {
37579
- "click": function ($event) {
37580
- $event.stopPropagation();
37581
- return _vm.selectParentDom.apply(null, arguments);
37582
- }
37583
- }
37584
- })]) : _vm._e()]) : _vm.showSlot ? _c('div', {
37585
- key: _vm.data.componentId,
37586
- ref: "targetElement",
37587
- style: _vm.showStyleConfig
37588
- }, [_vm._t("default")], 2) : _vm._e();
37589
- };
37590
- var staticRenderFns = [];
37591
-
37592
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
37593
- var es_iterator_constructor = __webpack_require__(8111);
37594
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.reduce.js
37595
- var es_iterator_reduce = __webpack_require__(8237);
37596
- // EXTERNAL MODULE: ./package/patch.js
37597
- var patch = __webpack_require__(4229);
37598
- // EXTERNAL MODULE: ./node_modules/dayjs/dayjs.min.js
37599
- var dayjs_min = __webpack_require__(8655);
37600
- var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
37601
- ;// ./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
37602
-
37603
-
37604
-
37605
-
37606
- // 待办:判断移动pc端填充不同的样式
37607
-
37608
-
37609
- /* harmony default export */ var baseCompvue_type_script_lang_js = ({
37610
- name: "baseComp",
37611
- props: {
37612
- data: {
37613
- type: Object,
37614
- default: () => {
37615
- return {};
37616
- }
37617
- },
37618
- nowCompId: {
37619
- type: [String, Number],
37620
- default: ""
37621
- },
37622
- isOpcacity: {
37623
- type: Boolean,
37624
- default: true
37625
- },
37626
- isMask: {
37627
- type: Boolean,
37628
- default: true
37629
- },
37630
- lang: {
37631
- type: String,
37632
- default: "zh-HK"
37633
- },
37634
- timeline: {
37635
- type: String,
37636
- default: ""
37637
- },
37638
- cmhkChannel: {
37639
- type: String,
37640
- default: "WWW"
37641
- },
37642
- showDel: {
37643
- type: Boolean,
37644
- default: true
37645
- }
37646
- },
37647
- data() {
37648
- return {
37649
- styleConfig_mb: {},
37650
- styleConfig_pc: {},
37651
- configData: {},
37652
- elementWidth: 0,
37653
- resizeObserver: null
37654
- };
37655
- },
37656
- watch: {
37657
- data: {
37658
- handler(val) {
37659
- this.getStyleConfig(val, "pc");
37660
- this.getStyleConfig(val, "mb");
37661
- this.getValue(this.lang);
37662
- },
37663
- deep: true,
37664
- immediate: true
37665
- },
37666
- lang: {
37667
- handler(val) {
37668
- this.getValue(val);
37669
- },
37670
- deep: true,
37671
- immediate: true
37672
- }
37673
- },
37674
- mounted() {
37675
- if (this.$EventBus && this.isOpcacity) {
37676
- this.elementWidth = 800;
37677
- this.$EventBus.$on("handleDeviceChange", isMobile => {
37678
- this.elementWidth = isMobile ? 700 : 800;
37679
- });
37680
- } else if (this.showSlot) {
37681
- this.resizeObserver = new ResizeObserver(entries => {
37682
- for (let entry of entries) {
37683
- this.elementWidth = entry.contentRect.width;
37684
- // 可以在这里触发自定义逻辑
37685
- // this.onWidthChange(this.elementWidth);
37686
- }
37687
- });
37688
- const element = document.getElementById("app") || document.getElementById("__nuxt");
37689
- this.resizeObserver.observe(element);
37690
- }
37691
- },
37692
- beforeDestroy() {
37693
- // 组件销毁时停止观察
37694
- if (this.resizeObserver) {
37695
- this.resizeObserver.disconnect();
37696
- }
37697
- },
37698
- methods: {
37699
- selectParentDom() {
37700
- if (!this.isOpcacity) return;
37701
- this.$EventBus.$emit("handleParentComp", this.data);
37702
- },
37703
- onWidthChange(newWidth) {
37704
- console.log("新宽度:", newWidth, this.isMobile);
37705
- },
37706
- getValue(cur_lang) {
37707
- var _this$data, _this$data$settings;
37708
- const obj = {
37709
- "zh-CN": "lang_sc",
37710
- "zh-HK": "lang_tc",
37711
- "en-US": "lang_en"
37712
- };
37713
- 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) {
37714
- const baseInfo = (0,patch.transfor)(this.data);
37715
- this.configData = baseInfo.contentConfig.lang_all ? baseInfo.contentConfig.lang_all : baseInfo.contentConfig[`${obj[cur_lang]}`];
37716
- } else {
37717
- this.configData = this.data.contentConfig.lang_all ? this.data.contentConfig.lang_all : this.data.contentConfig[`${obj[cur_lang]}`];
37718
- }
37719
- this.$emit("getConfigData", this.configData);
37720
- },
37721
- getStyleConfig(data, type) {
37722
- this[`styleConfig_${type}`] = data.styleConfig[type].reduce((pre, cur) => {
37723
- pre[cur.key] = cur.value + cur.unit;
37724
- return pre;
37725
- }, {});
37726
- },
37727
- handleNowComp() {
37728
- if (!this.isOpcacity) return;
37729
- this.$EventBus.$emit("handleNowComp", this.data);
37730
- },
37731
- delComp() {
37732
- this.$EventBus.$emit("handleDeleteComp", this.data.componentId);
37733
- }
37734
- },
37735
- computed: {
37736
- showStyleConfig() {
37737
- if (!this.elementWidth) return {};
37738
- return this.isMobile ? this.styleConfig_mb : this.styleConfig_pc;
37739
- },
37740
- isMobile() {
37741
- return this.elementWidth < 760;
37742
- },
37743
- showSlot() {
37744
- if (this.$EventBus && this.isOpcacity) return false;
37745
- const {
37746
- cmhkChannelConfList = [],
37747
- startTime = "",
37748
- endTime = ""
37749
- } = this.data.baseConfig;
37750
- console.log("this.cmhkChannel", this.cmhkChannel, this.data.baseConfig);
37751
- const channelVisable = cmhkChannelConfList.includes("ALL") || cmhkChannelConfList.includes(this.cmhkChannel);
37752
- if (!channelVisable) return false;
37753
- if (!startTime && !endTime) return true;
37754
- const currentTime = this.timeline ? dayjs_min_default()(this.timeline) : dayjs_min_default()();
37755
- const isStart = startTime ? dayjs_min_default()(currentTime).isAfter(dayjs_min_default()(startTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(startTime)) : true;
37756
- const isEnd = endTime ? dayjs_min_default()(currentTime).isBefore(dayjs_min_default()(endTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(endTime)) : true;
37757
- return isStart && isEnd;
37758
- }
37759
- }
37760
- });
37761
- ;// ./package/baseComp.vue?vue&type=script&lang=js
37762
- /* harmony default export */ var package_baseCompvue_type_script_lang_js = (baseCompvue_type_script_lang_js);
37763
- ;// ./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=9d54e5e0&prod&lang=scss&scoped=true
37764
- // extracted by mini-css-extract-plugin
37765
-
37766
- ;// ./package/baseComp.vue?vue&type=style&index=0&id=9d54e5e0&prod&lang=scss&scoped=true
37767
-
37768
- // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
37769
- var componentNormalizer = __webpack_require__(1656);
37770
- ;// ./package/baseComp.vue
37771
-
37772
-
37773
-
37774
- ;
37775
-
37776
-
37777
- /* normalize component */
37778
-
37779
- var component = (0,componentNormalizer/* default */.A)(
37780
- package_baseCompvue_type_script_lang_js,
37781
- render,
37782
- staticRenderFns,
37783
- false,
37784
- null,
37785
- "9d54e5e0",
37786
- null
37787
-
37788
- )
37789
-
37790
- /* harmony default export */ var baseComp = (component.exports);
37791
-
37792
- /***/ }),
37793
-
37794
37407
  /***/ 5713:
37795
37408
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
37796
37409
 
@@ -37830,7 +37443,7 @@ var render = function render() {
37830
37443
  var staticRenderFns = [];
37831
37444
 
37832
37445
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
37833
- var baseComp = __webpack_require__(5651);
37446
+ var baseComp = __webpack_require__(7135);
37834
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
37835
37448
 
37836
37449
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -38244,6 +37857,18 @@ function queryPageHfList(data) {
38244
37857
  });
38245
37858
  }
38246
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
+
38247
37872
  /**
38248
37873
  * 创建页面
38249
37874
  * @param {Object} pageData 页面数据
@@ -38402,11 +38027,18 @@ function emallHeartbeat(data) {
38402
38027
  data
38403
38028
  });
38404
38029
  }
38030
+ function qryBtList(data) {
38031
+ return request({
38032
+ method: "post",
38033
+ url: "/omni-channel-service-console/rest/component/qryBtList",
38034
+ data
38035
+ });
38036
+ }
38405
38037
  // EXTERNAL MODULE: ./node_modules/qs/lib/index.js
38406
38038
  var lib = __webpack_require__(7087);
38407
38039
  var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
38408
38040
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
38409
- var baseComp = __webpack_require__(5651);
38041
+ var baseComp = __webpack_require__(7135);
38410
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
38411
38043
 
38412
38044
 
@@ -38646,6 +38278,14 @@ module.exports = function (key) {
38646
38278
  };
38647
38279
 
38648
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
+
38649
38289
  /***/ }),
38650
38290
 
38651
38291
  /***/ 6193:
@@ -41898,6 +41538,384 @@ Sortable.mount(Remove, Revert);
41898
41538
  /* harmony default export */ __webpack_exports__["default"] = (Sortable);
41899
41539
 
41900
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
+
41901
41919
  /***/ }),
41902
41920
 
41903
41921
  /***/ 6269:
@@ -42009,7 +42027,7 @@ var es_iterator_for_each = __webpack_require__(7588);
42009
42027
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.map.js
42010
42028
  var es_iterator_map = __webpack_require__(1701);
42011
42029
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
42012
- var baseComp = __webpack_require__(5651);
42030
+ var baseComp = __webpack_require__(7135);
42013
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
42014
42032
 
42015
42033
 
@@ -42155,7 +42173,7 @@ var render = function render() {
42155
42173
  var staticRenderFns = [];
42156
42174
 
42157
42175
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
42158
- var baseComp = __webpack_require__(5651);
42176
+ var baseComp = __webpack_require__(7135);
42159
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
42160
42178
 
42161
42179
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -42616,329 +42634,6 @@ module.exports = function (iterator, fn, value, ENTRIES) {
42616
42634
  };
42617
42635
 
42618
42636
 
42619
- /***/ }),
42620
-
42621
- /***/ 6345:
42622
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
42623
-
42624
- "use strict";
42625
- // ESM COMPAT FLAG
42626
- __webpack_require__.r(__webpack_exports__);
42627
-
42628
- // EXPORTS
42629
- __webpack_require__.d(__webpack_exports__, {
42630
- "default": function() { return /* binding */ View; }
42631
- });
42632
-
42633
- ;// ./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
42634
- var render = function render() {
42635
- var _vm = this,
42636
- _c = _vm._self._c;
42637
- return _c('BaseComp', _vm._b({
42638
- attrs: {
42639
- "data": _vm.data,
42640
- "nowCompId": _vm.nowCompId,
42641
- "isOpcacity": _vm.isOpcacity,
42642
- "lang": _vm.lang
42643
- },
42644
- on: {
42645
- "getConfigData": _vm.getConfigData
42646
- }
42647
- }, 'BaseComp', _vm.$attrs, false), [_c('section', {
42648
- staticClass: "cms-image-container",
42649
- class: [_vm.configData.customClass || '', {
42650
- 'has-link': _vm.configData.linkUrl
42651
- }],
42652
- style: _vm.containerStyle
42653
- }, [_c('div', {
42654
- staticClass: "image-wrapper",
42655
- style: _vm.wrapperStyle,
42656
- on: {
42657
- "click": _vm.handleClick
42658
- }
42659
- }, [_vm.configData.imageUrl ? _c('img', {
42660
- staticClass: "cms-image",
42661
- style: _vm.imageStyle,
42662
- attrs: {
42663
- "src": _vm.configData.imageUrl,
42664
- "alt": _vm.configData.altText || '图片',
42665
- "title": _vm.configData.title
42666
- },
42667
- on: {
42668
- "load": _vm.onImageLoad,
42669
- "error": _vm.onImageError
42670
- }
42671
- }) : _c('div', {
42672
- staticClass: "image-placeholder",
42673
- style: _vm.placeholderStyle
42674
- }, [_c('i', {
42675
- staticClass: "el-icon-picture-outline"
42676
- }), _c('p', [_vm._v("请选择图片")])])])])]);
42677
- };
42678
- var staticRenderFns = [];
42679
-
42680
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
42681
- var es_iterator_constructor = __webpack_require__(8111);
42682
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
42683
- var es_iterator_for_each = __webpack_require__(7588);
42684
- // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
42685
- var baseComp = __webpack_require__(5651);
42686
- ;// ./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
42687
-
42688
-
42689
-
42690
-
42691
-
42692
- /* harmony default export */ var Viewvue_type_script_lang_js = ({
42693
- name: "cms-image",
42694
- components: {
42695
- BaseComp: baseComp["default"]
42696
- },
42697
- props: {
42698
- data: {
42699
- type: Object,
42700
- default: () => {
42701
- return {};
42702
- }
42703
- },
42704
- nowCompId: {
42705
- type: [String, Number],
42706
- default: ""
42707
- },
42708
- isOpcacity: {
42709
- type: Boolean,
42710
- default: true
42711
- },
42712
- lang: {
42713
- type: String,
42714
- default: "zh-HK"
42715
- }
42716
- },
42717
- data() {
42718
- return {
42719
- configData: {},
42720
- imageLoaded: false,
42721
- imageError: false,
42722
- // 默认配置数据
42723
- defaultConfig: {
42724
- // 图片设置
42725
- imageUrl: "",
42726
- altText: "图片",
42727
- title: "",
42728
- // 尺寸控制
42729
- widthType: "auto",
42730
- widthValue: 100,
42731
- heightType: "auto",
42732
- heightValue: 100,
42733
- maxWidth: 0,
42734
- maxHeight: 0,
42735
- // 样式设置
42736
- borderRadius: 0,
42737
- objectFit: "cover",
42738
- // 交互功能
42739
- linkUrl: "",
42740
- linkTarget: "_self",
42741
- // 高级配置
42742
- customClass: "",
42743
- customStyle: "",
42744
- lazyLoad: false
42745
- }
42746
- };
42747
- },
42748
- mounted() {
42749
- this.initConfigData();
42750
- },
42751
- watch: {
42752
- configData: {
42753
- handler() {
42754
- this.updateStyles();
42755
- },
42756
- deep: true
42757
- }
42758
- },
42759
- computed: {
42760
- // 容器样式
42761
- containerStyle() {
42762
- const config = {
42763
- ...this.defaultConfig,
42764
- ...this.configData
42765
- };
42766
- return {
42767
- ...this.parseCustomStyle(config.customStyle)
42768
- };
42769
- },
42770
- // 包装器样式
42771
- wrapperStyle() {
42772
- const config = {
42773
- ...this.defaultConfig,
42774
- ...this.configData
42775
- };
42776
- let width = 'auto';
42777
- let height = 'auto';
42778
-
42779
- // 宽度设置
42780
- if (config.widthType === 'fixed') {
42781
- width = `${config.widthValue}px`;
42782
- } else if (config.widthType === 'percent') {
42783
- width = `${config.widthValue}%`;
42784
- }
42785
-
42786
- // 高度设置
42787
- if (config.heightType === 'fixed') {
42788
- height = `${config.heightValue}px`;
42789
- } else if (config.heightType === 'percent') {
42790
- height = `${config.heightValue}%`;
42791
- }
42792
- return {
42793
- width,
42794
- height,
42795
- maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : 'none',
42796
- maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : 'none',
42797
- borderRadius: `${config.borderRadius}px`,
42798
- overflow: 'hidden',
42799
- cursor: config.linkUrl ? 'pointer' : 'default',
42800
- display: 'inline-block'
42801
- };
42802
- },
42803
- // 图片样式
42804
- imageStyle() {
42805
- const config = {
42806
- ...this.defaultConfig,
42807
- ...this.configData
42808
- };
42809
- return {
42810
- width: '100%',
42811
- height: '100%',
42812
- objectFit: config.objectFit,
42813
- display: 'block'
42814
- };
42815
- },
42816
- // 占位符样式
42817
- placeholderStyle() {
42818
- const config = {
42819
- ...this.defaultConfig,
42820
- ...this.configData
42821
- };
42822
- let width = '200px';
42823
- let height = '150px';
42824
-
42825
- // 如果设置了固定尺寸,使用设置的尺寸
42826
- if (config.widthType === 'fixed') {
42827
- width = `${config.widthValue}px`;
42828
- }
42829
- if (config.heightType === 'fixed') {
42830
- height = `${config.heightValue}px`;
42831
- }
42832
- return {
42833
- width,
42834
- height,
42835
- backgroundColor: '#f5f7fa',
42836
- border: '1px dashed #dcdfe6',
42837
- borderRadius: `${config.borderRadius}px`,
42838
- display: 'flex',
42839
- flexDirection: 'column',
42840
- alignItems: 'center',
42841
- justifyContent: 'center',
42842
- color: '#909399',
42843
- fontSize: '14px'
42844
- };
42845
- }
42846
- },
42847
- methods: {
42848
- // 初始化配置数据
42849
- initConfigData() {
42850
- this.configData = {
42851
- ...this.defaultConfig,
42852
- ...this.configData
42853
- };
42854
- },
42855
- // 获取配置数据
42856
- getConfigData(configData) {
42857
- this.configData = {
42858
- ...this.defaultConfig,
42859
- ...configData
42860
- };
42861
- this.updateStyles();
42862
- },
42863
- // 更新样式
42864
- updateStyles() {
42865
- this.$nextTick(() => {
42866
- this.$forceUpdate();
42867
- });
42868
- },
42869
- // 处理点击事件
42870
- handleClick() {
42871
- if (this.configData.linkUrl) {
42872
- const target = this.configData.linkTarget || '_self';
42873
- if (target === '_blank') {
42874
- window.open(this.configData.linkUrl, '_blank');
42875
- } else {
42876
- window.location.href = this.configData.linkUrl;
42877
- }
42878
- }
42879
- },
42880
- // 图片加载成功
42881
- onImageLoad() {
42882
- this.imageLoaded = true;
42883
- this.imageError = false;
42884
- },
42885
- // 图片加载失败
42886
- onImageError() {
42887
- this.imageLoaded = false;
42888
- this.imageError = true;
42889
- },
42890
- // 解析自定义样式
42891
- parseCustomStyle(customStyle) {
42892
- if (!customStyle) return {};
42893
- try {
42894
- const styles = {};
42895
- const declarations = customStyle.split(';');
42896
- declarations.forEach(declaration => {
42897
- const [property, value] = declaration.split(':');
42898
- if (property && value) {
42899
- const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
42900
- styles[camelCaseProperty] = value.trim();
42901
- }
42902
- });
42903
- return styles;
42904
- } catch (error) {
42905
- console.warn('解析自定义样式失败:', error);
42906
- return {};
42907
- }
42908
- }
42909
- }
42910
- });
42911
- ;// ./package/cms-image/View.vue?vue&type=script&lang=js
42912
- /* harmony default export */ var cms_image_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
42913
- ;// ./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
42914
- // extracted by mini-css-extract-plugin
42915
-
42916
- ;// ./package/cms-image/View.vue?vue&type=style&index=0&id=2c876c4d&prod&lang=scss&scoped=true
42917
-
42918
- // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
42919
- var componentNormalizer = __webpack_require__(1656);
42920
- ;// ./package/cms-image/View.vue
42921
-
42922
-
42923
-
42924
- ;
42925
-
42926
-
42927
- /* normalize component */
42928
-
42929
- var component = (0,componentNormalizer/* default */.A)(
42930
- cms_image_Viewvue_type_script_lang_js,
42931
- render,
42932
- staticRenderFns,
42933
- false,
42934
- null,
42935
- "2c876c4d",
42936
- null
42937
-
42938
- )
42939
-
42940
- /* harmony default export */ var View = (component.exports);
42941
-
42942
42637
  /***/ }),
42943
42638
 
42944
42639
  /***/ 6368:
@@ -43242,7 +42937,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43242
42937
  },
43243
42938
  fontColor: {
43244
42939
  label: "文字颜色",
43245
- widgetType: "el-color-picker"
42940
+ widgetType: "el-color-picker",
42941
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43246
42942
  },
43247
42943
  fontWeight: {
43248
42944
  label: "字体粗细",
@@ -43288,7 +42984,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43288
42984
  // 样式控制配置
43289
42985
  backgroundColor: {
43290
42986
  label: "背景颜色",
43291
- widgetType: "el-color-picker"
42987
+ widgetType: "el-color-picker",
42988
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43292
42989
  },
43293
42990
  borderRadius: {
43294
42991
  label: "圆角(px)",
@@ -43325,7 +43022,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43325
43022
  },
43326
43023
  borderColor: {
43327
43024
  label: "边框颜色",
43328
- widgetType: "el-color-picker"
43025
+ widgetType: "el-color-picker",
43026
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43329
43027
  },
43330
43028
  // 空间布局配置
43331
43029
  paddingTop: {
@@ -44029,7 +43727,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
44029
43727
  },
44030
43728
  color: {
44031
43729
  label: "色值",
44032
- widgetType: "el-color-picker"
43730
+ widgetType: "el-color-picker",
43731
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
44033
43732
  }
44034
43733
  }]
44035
43734
  },
@@ -44164,7 +43863,7 @@ var swiper = __webpack_require__(828);
44164
43863
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
44165
43864
  var swiper_esm_bundle = __webpack_require__(1532);
44166
43865
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
44167
- var baseComp = __webpack_require__(5651);
43866
+ var baseComp = __webpack_require__(7135);
44168
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
44169
43868
 
44170
43869
 
@@ -44353,6 +44052,272 @@ module.exports = {
44353
44052
 
44354
44053
  /***/ }),
44355
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
+
44356
44321
  /***/ 7210:
44357
44322
  /***/ (function(module) {
44358
44323
 
@@ -44948,7 +44913,7 @@ var render = function render() {
44948
44913
  var staticRenderFns = [];
44949
44914
 
44950
44915
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
44951
- var baseComp = __webpack_require__(5651);
44916
+ var baseComp = __webpack_require__(7135);
44952
44917
  // EXTERNAL MODULE: ./package/patch.js
44953
44918
  var patch = __webpack_require__(4229);
44954
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
@@ -45134,7 +45099,7 @@ var es_iterator_filter = __webpack_require__(2489);
45134
45099
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
45135
45100
  var es_iterator_for_each = __webpack_require__(7588);
45136
45101
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
45137
- var baseComp = __webpack_require__(5651);
45102
+ var baseComp = __webpack_require__(7135);
45138
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
45139
45104
 
45140
45105
 
@@ -45733,7 +45698,7 @@ var swiper = __webpack_require__(828);
45733
45698
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
45734
45699
  var swiper_esm_bundle = __webpack_require__(1532);
45735
45700
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
45736
- var baseComp = __webpack_require__(5651);
45701
+ var baseComp = __webpack_require__(7135);
45737
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
45738
45703
 
45739
45704
 
@@ -45896,6 +45861,181 @@ if (params.has('a', 2) || !params.has('a', undefined)) {
45896
45861
  }
45897
45862
 
45898
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
+
45899
46039
  /***/ }),
45900
46040
 
45901
46041
  /***/ 7588:
@@ -45933,6 +46073,7 @@ $({ target: 'Iterator', proto: true, real: true }, {
45933
46073
  __webpack_require__.r(__webpack_exports__);
45934
46074
  /* harmony default export */ __webpack_exports__["default"] = ({
45935
46075
  Expand: "Expand",
46076
+ More: "More",
45936
46077
  Collpase: "Collpase",
45937
46078
  discount: 'Discount period:'
45938
46079
  });
@@ -46304,7 +46445,7 @@ var swiper_esm_bundle = __webpack_require__(1532);
46304
46445
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
46305
46446
  var jumpUrl = __webpack_require__(4102);
46306
46447
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46307
- var baseComp = __webpack_require__(5651);
46448
+ var baseComp = __webpack_require__(7135);
46308
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
46309
46450
 
46310
46451
 
@@ -46611,7 +46752,7 @@ var render = function render() {
46611
46752
  var staticRenderFns = [];
46612
46753
 
46613
46754
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46614
- var baseComp = __webpack_require__(5651);
46755
+ var baseComp = __webpack_require__(7135);
46615
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
46616
46757
 
46617
46758
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -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__(5651);
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__(5651);
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__(5651);
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__(5651);
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) {