cms-chenhj-ui 2.0.13 → 2.0.15

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
@@ -756,6 +931,283 @@ var component = (0,componentNormalizer/* default */.A)(
756
931
 
757
932
  /***/ }),
758
933
 
934
+ /***/ 348:
935
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
936
+
937
+ "use strict";
938
+ // ESM COMPAT FLAG
939
+ __webpack_require__.r(__webpack_exports__);
940
+
941
+ // EXPORTS
942
+ __webpack_require__.d(__webpack_exports__, {
943
+ "default": function() { return /* binding */ View; }
944
+ });
945
+
946
+ ;// ./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=cd35c518&scoped=true
947
+ var render = function render() {
948
+ var _vm = this,
949
+ _c = _vm._self._c;
950
+ return _c('BaseComp', _vm._b({
951
+ attrs: {
952
+ "data": _vm.data,
953
+ "nowCompId": _vm.nowCompId,
954
+ "isOpcacity": _vm.isOpcacity,
955
+ "isMask": false,
956
+ "lang": _vm.lang
957
+ },
958
+ on: {
959
+ "getConfigData": _vm.getConfigData
960
+ },
961
+ scopedSlots: _vm._u([{
962
+ key: "default",
963
+ fn: function (slotProps) {
964
+ return [_c('section', {
965
+ class: (_vm.configData.widthType === 'full' ? 'width-full' : 'cmhk-home_main', {
966
+ hoverBorderClass: _vm.isConfigPage
967
+ }),
968
+ style: _vm.containerStyle
969
+ }, [_c('div', {
970
+ staticClass: "column-setting",
971
+ class: [`layout-${_vm.configData.layoutType || 'default'}`, `${slotProps.isMobile && _vm.configData.mobileLayout === 'vertical' ? 'mobile-vertical' : 'mobile-horizontal'}`],
972
+ style: _vm.columnStyle
973
+ }, _vm._l(_vm.data.childList, function (item, index) {
974
+ return _c('cms-column-card', _vm._b({
975
+ key: item.componentId,
976
+ class: _vm.getColumnItemClass(index),
977
+ style: _vm.getColumnItemStyle(index),
978
+ attrs: {
979
+ "data": item,
980
+ "nowCompId": _vm.nowCompId,
981
+ "isOpcacity": _vm.isOpcacity,
982
+ "isMask": false,
983
+ "lang": _vm.lang,
984
+ "isMobile": slotProps.isMobile,
985
+ "mobileLayout": _vm.configData.mobileLayout
986
+ }
987
+ }, 'cms-column-card', _vm.$attrs, false));
988
+ }), 1)])];
989
+ }
990
+ }])
991
+ }, 'BaseComp', _vm.$attrs, false));
992
+ };
993
+ var staticRenderFns = [];
994
+
995
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
996
+ var baseComp = __webpack_require__(7135);
997
+ ;// ./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
998
+
999
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
1000
+ name: "cms-column",
1001
+ components: {
1002
+ BaseComp: baseComp["default"]
1003
+ },
1004
+ props: {
1005
+ data: {
1006
+ type: Object,
1007
+ default: () => {
1008
+ return {};
1009
+ }
1010
+ },
1011
+ nowCompId: {
1012
+ type: [String, Number],
1013
+ default: ""
1014
+ },
1015
+ isOpcacity: {
1016
+ type: Boolean,
1017
+ default: true
1018
+ },
1019
+ lang: {
1020
+ type: String,
1021
+ default: "zh-HK"
1022
+ }
1023
+ },
1024
+ data() {
1025
+ return {
1026
+ configData: {},
1027
+ messFold: true,
1028
+ // 默认配置数据
1029
+ defaultConfig: {
1030
+ layoutType: "100",
1031
+ heightType: "auto",
1032
+ widthType: "auto",
1033
+ mobileLayout: "vertical",
1034
+ fixedHeight: 300,
1035
+ borderWidth: 0,
1036
+ borderStyle: "solid",
1037
+ borderColor: "",
1038
+ backgroundColor: "#FFF",
1039
+ backgroundImage: "",
1040
+ boxShadow: "",
1041
+ borderRadius: 0,
1042
+ columnGap: 0,
1043
+ rowGap: 0,
1044
+ title: "",
1045
+ description: "",
1046
+ input1: "",
1047
+ showTitle: true,
1048
+ showDescription: true,
1049
+ animationDuration: 300,
1050
+ responsiveBreakpoint: 768
1051
+ }
1052
+ };
1053
+ },
1054
+ mounted() {
1055
+ this.initConfigData();
1056
+ // 添加窗口大小变化监听
1057
+ },
1058
+ watch: {
1059
+ configData: {
1060
+ handler() {
1061
+ this.updateStyles();
1062
+ },
1063
+ deep: true
1064
+ }
1065
+ },
1066
+ computed: {
1067
+ isConfigPage() {
1068
+ return this.$EventBus && this.isOpcacity;
1069
+ },
1070
+ // 容器样式
1071
+ containerStyle() {
1072
+ return {
1073
+ backgroundColor: this.configData.backgroundColor || this.defaultConfig.backgroundColor,
1074
+ backgroundImage: this.configData.backgroundImage ? `url(${this.configData.backgroundImage})` : "",
1075
+ backgroundSize: "cover",
1076
+ backgroundRepeat: "no-repeat",
1077
+ backgroundPosition: "center center",
1078
+ boxShadow: this.configData.boxShadow || this.defaultConfig.boxShadow,
1079
+ borderRadius: `${this.configData.borderRadius || this.defaultConfig.borderRadius}px`,
1080
+ minHeight: this.configData.heightType === "fixed" ? `${this.configData.fixedHeight}px` : "auto"
1081
+ };
1082
+ },
1083
+ // 分栏容器样式
1084
+ columnStyle() {
1085
+ // const gap = this.configData.rowGap || this.defaultConfig.rowGap;
1086
+ return {
1087
+ // gap: `${gap}px`,
1088
+ border: this.configData.borderWidth ? `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}` : "none"
1089
+ };
1090
+ }
1091
+ },
1092
+ methods: {
1093
+ // 初始化配置数据
1094
+ initConfigData() {
1095
+ // 合并默认配置和传入配置
1096
+ this.configData = {
1097
+ ...this.defaultConfig,
1098
+ ...this.configData
1099
+ };
1100
+ },
1101
+ // 获取配置数据
1102
+ getConfigData(configData) {
1103
+ this.configData = {
1104
+ ...this.defaultConfig,
1105
+ ...configData
1106
+ };
1107
+ this.updateStyles();
1108
+ },
1109
+ // 更新样式
1110
+ updateStyles() {
1111
+ this.$nextTick(() => {
1112
+ // 触发样式更新
1113
+ this.$forceUpdate();
1114
+ });
1115
+ },
1116
+ // 获取分栏项的类名
1117
+ getColumnItemClass(index) {
1118
+ const layoutType = this.configData.layoutType || this.defaultConfig.layoutType;
1119
+ return ["column-item", `column-item-${index}`, `layout-${layoutType}`, {
1120
+ "min-h": this.$EventBus && this.isOpcacity,
1121
+ "first-item": index === 0,
1122
+ "last-item": index === this.data.childList.length - 1
1123
+ }];
1124
+ },
1125
+ // 获取分栏项的样式
1126
+ getColumnItemStyle(index) {
1127
+ const layoutType = this.configData.layoutType || this.defaultConfig.layoutType;
1128
+ const gap = this.configData.rowGap || this.defaultConfig.rowGap;
1129
+ let flexBasis = "100%";
1130
+ let marginRight = "0";
1131
+
1132
+ // 根据布局类型设置宽度
1133
+ switch (layoutType) {
1134
+ case "50-50":
1135
+ flexBasis = `calc(50% - ${gap / 2}px)`;
1136
+ marginRight = index % 2 === 0 ? `${gap}px` : "0";
1137
+ break;
1138
+ case "33-66":
1139
+ flexBasis = index === 0 ? `calc(33.33% - ${gap / 2}px)` : `calc(66.67% - ${gap / 2}px)`;
1140
+ marginRight = index === 0 ? `${gap}px` : "0";
1141
+ break;
1142
+ case "66-33":
1143
+ flexBasis = index === 0 ? `calc(66.67% - ${gap / 2}px)` : `calc(33.33% - ${gap / 2}px)`;
1144
+ marginRight = index === 0 ? `${gap}px` : "0";
1145
+ break;
1146
+ case "33-33-33":
1147
+ flexBasis = `calc(33.33% - ${gap * 2 / 3}px)`;
1148
+ marginRight = index < 2 ? `${gap}px` : "0";
1149
+ break;
1150
+ case "25-50-25":
1151
+ if (index === 0 || index === 2) {
1152
+ flexBasis = `calc(25% - ${gap * 2 / 3}px)`;
1153
+ } else {
1154
+ flexBasis = `calc(50% - ${gap * 2 / 3}px)`;
1155
+ }
1156
+ marginRight = index < 2 ? `${gap}px` : "0";
1157
+ break;
1158
+ default:
1159
+ flexBasis = "100%";
1160
+ }
1161
+ return {
1162
+ flexBasis,
1163
+ marginRight,
1164
+ marginBottom: `${this.configData.columnGap || this.defaultConfig.columnGap}px`
1165
+ };
1166
+ },
1167
+ // 折叠/展开文本
1168
+ foldMessText() {
1169
+ this.messFold = !this.messFold;
1170
+ },
1171
+ // 处理跳转链接
1172
+ decodeJumpUrl(url) {
1173
+ if (!url) return;
1174
+ top.location.href = url;
1175
+ }
1176
+ }
1177
+ });
1178
+ ;// ./package/cms-column/View.vue?vue&type=script&lang=js
1179
+ /* harmony default export */ var cms_column_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
1180
+ ;// ./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=cd35c518&prod&lang=scss&scoped=true
1181
+ // extracted by mini-css-extract-plugin
1182
+
1183
+ ;// ./package/cms-column/View.vue?vue&type=style&index=0&id=cd35c518&prod&lang=scss&scoped=true
1184
+
1185
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
1186
+ var componentNormalizer = __webpack_require__(1656);
1187
+ ;// ./package/cms-column/View.vue
1188
+
1189
+
1190
+
1191
+ ;
1192
+
1193
+
1194
+ /* normalize component */
1195
+
1196
+ var component = (0,componentNormalizer/* default */.A)(
1197
+ cms_column_Viewvue_type_script_lang_js,
1198
+ render,
1199
+ staticRenderFns,
1200
+ false,
1201
+ null,
1202
+ "cd35c518",
1203
+ null
1204
+
1205
+ )
1206
+
1207
+ /* harmony default export */ var View = (component.exports);
1208
+
1209
+ /***/ }),
1210
+
759
1211
  /***/ 350:
760
1212
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
761
1213
 
@@ -1024,6 +1476,524 @@ module.exports = function (it, Prototype) {
1024
1476
  };
1025
1477
 
1026
1478
 
1479
+ /***/ }),
1480
+
1481
+ /***/ 688:
1482
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
1483
+
1484
+ "use strict";
1485
+ // ESM COMPAT FLAG
1486
+ __webpack_require__.r(__webpack_exports__);
1487
+
1488
+ // EXPORTS
1489
+ __webpack_require__.d(__webpack_exports__, {
1490
+ "default": function() { return /* binding */ View; }
1491
+ });
1492
+
1493
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
1494
+ var es_iterator_constructor = __webpack_require__(8111);
1495
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.drop.js
1496
+ var es_iterator_drop = __webpack_require__(9314);
1497
+ ;// ./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=2dcb9de2&scoped=true
1498
+
1499
+
1500
+
1501
+
1502
+ var render = function render() {
1503
+ var _vm = this,
1504
+ _c = _vm._self._c;
1505
+ return _c('BaseComp', _vm._b({
1506
+ attrs: {
1507
+ "data": _vm.data,
1508
+ "nowCompId": _vm.nowCompId,
1509
+ "isOpcacity": _vm.isOpcacity,
1510
+ "isMask": false,
1511
+ "lang": _vm.lang,
1512
+ "showDel": false
1513
+ },
1514
+ on: {
1515
+ "getConfigData": _vm.getConfigData
1516
+ }
1517
+ }, 'BaseComp', _vm.$attrs, false), [_vm.isConfigPage ? _c('div', {
1518
+ staticClass: "main_drag hoverBorderClass",
1519
+ style: _vm.cardContainerStyle,
1520
+ attrs: {
1521
+ "id": `cardTarget${_vm.data.componentId}`
1522
+ },
1523
+ on: {
1524
+ "dragover": _vm.dragover,
1525
+ "dragend": function ($event) {
1526
+ _vm.showAddCom = false;
1527
+ },
1528
+ "drop": _vm.drop
1529
+ }
1530
+ }, [_c('Draggable', {
1531
+ staticStyle: {
1532
+ "position": "relative"
1533
+ },
1534
+ attrs: {
1535
+ "group": _vm.groupConfigForMain,
1536
+ "chosen-class": "chosen",
1537
+ "force-fallback": "true",
1538
+ "animation": "1000",
1539
+ "move": _vm.onMove
1540
+ },
1541
+ on: {
1542
+ "start": _vm.onStart,
1543
+ "end": function ($event) {
1544
+ _vm.showAddCom = false;
1545
+ }
1546
+ },
1547
+ model: {
1548
+ value: _vm.data.childList,
1549
+ callback: function ($$v) {
1550
+ _vm.$set(_vm.data, "childList", $$v);
1551
+ },
1552
+ expression: "data.childList"
1553
+ }
1554
+ }, [_vm._l(_vm.data.childList, function (item, index) {
1555
+ return _c('div', {
1556
+ key: item.componentId,
1557
+ staticStyle: {
1558
+ "position": "relative"
1559
+ }
1560
+ }, [_vm.showAddCom ? _c('div', {
1561
+ staticClass: "up_insert",
1562
+ attrs: {
1563
+ "id": `${item.componentId}-cardTargetup`
1564
+ }
1565
+ }, [_c('i', {
1566
+ staticClass: "icon-up",
1567
+ attrs: {
1568
+ "id": `${item.componentId}-upi`
1569
+ }
1570
+ }), _c('span', {
1571
+ attrs: {
1572
+ "id": `${item.componentId}-upspan`
1573
+ }
1574
+ }, [_vm._v("插入组件")])]) : _vm._e(), _c(item.cmsCompName, {
1575
+ tag: "component",
1576
+ style: {
1577
+ marginTop: _vm.showAddCom && index == 0 ? '20px' : '0px'
1578
+ },
1579
+ attrs: {
1580
+ "data": item,
1581
+ "lang": _vm.lang,
1582
+ "isOpcacity": _vm.isOpcacity,
1583
+ "nowCompId": _vm.nowCompId
1584
+ }
1585
+ })], 1);
1586
+ }), _vm.showAddCom ? _c('div', {
1587
+ staticClass: "up_insert insert_bottom",
1588
+ style: {
1589
+ bottom: _vm.data.childList.length ? '0px' : '-24px'
1590
+ },
1591
+ attrs: {
1592
+ "id": `-cardTargetdown`
1593
+ }
1594
+ }, [_c('i', {
1595
+ staticClass: "icon-up"
1596
+ }), _c('span', [_vm._v("插入组件")])]) : _vm._e()], 2)], 1) : _c('cms-view', _vm._b({
1597
+ style: _vm.cardContainerStyle,
1598
+ attrs: {
1599
+ "data": _vm.data.childList,
1600
+ "lang": _vm.lang,
1601
+ "isOpcacity": false
1602
+ }
1603
+ }, 'cms-view', _vm.$attrs, false))], 1);
1604
+ };
1605
+ var staticRenderFns = [];
1606
+
1607
+ ;// ./package/cms-column-card/View.vue?vue&type=template&id=2dcb9de2&scoped=true
1608
+
1609
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
1610
+ var es_array_push = __webpack_require__(4114);
1611
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
1612
+ var baseComp = __webpack_require__(7135);
1613
+ // EXTERNAL MODULE: ./node_modules/vuedraggable/dist/vuedraggable.umd.js
1614
+ var vuedraggable_umd = __webpack_require__(9014);
1615
+ var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_umd);
1616
+ // EXTERNAL MODULE: ./package/baseConfig.js
1617
+ var baseConfig = __webpack_require__(2128);
1618
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.find.js
1619
+ var es_iterator_find = __webpack_require__(116);
1620
+ // EXTERNAL MODULE: ./src/utils/index.js
1621
+ var utils = __webpack_require__(9563);
1622
+ ;// ./src/views/standard_page.js
1623
+
1624
+
1625
+
1626
+
1627
+
1628
+ const standard_page_list = [{
1629
+ id: 1,
1630
+ componentId: 1,
1631
+ componentName: "范本1-防诈骗提示",
1632
+ standList: ["cms-banner", "cms-titleCenter", "cms-lineThree"]
1633
+ }, {
1634
+ id: 2,
1635
+ componentId: 2,
1636
+ componentName: "范本2-员工优惠",
1637
+ standList: ["cms-banner", "cms-description", "cms-activityCountdown", "cms-titleLeft", "cms-proCard", "cms-termsAndConditions"]
1638
+ }];
1639
+ const getComponentKey = (compList, id, noCompId = false) => {
1640
+ if (noCompId) return id;
1641
+ let compConfig = compList.find(item => item.id == id);
1642
+ if (compConfig.type == "1") {
1643
+ return compConfig.componentId;
1644
+ }
1645
+ return "cms-dynamic-comp";
1646
+ };
1647
+ const getCopyTemplateCompConfig = (compList, componentKey) => {
1648
+ let otherConfig = {};
1649
+ const configureJson = compList.find(item => item.id == componentKey).configureJson;
1650
+ if (configureJson.wujieConfig) {
1651
+ //如果是第三方组件加一个临时标识
1652
+ otherConfig = {
1653
+ originalComponentId: configureJson.componentId,
1654
+ originalVersionId: configureJson.wujieConfig.versionId,
1655
+ operation: "copyTemplate"
1656
+ };
1657
+ }
1658
+ return {
1659
+ ...configureJson,
1660
+ componentId: (0,utils/* getUuidCode */.J0)(32),
1661
+ ...otherConfig
1662
+ };
1663
+ };
1664
+ const isStaticComp = componentKey => {
1665
+ return ["cms-header", "cms-footer", "cms-breadCrumb"].includes(componentKey);
1666
+ };
1667
+ const getWujieCompInfo = (compList, componentId, isTemplate) => {
1668
+ let compConfig = compList.find(item => item.id == componentId);
1669
+ if (isTemplate) if (compConfig.type == "1") {
1670
+ return compConfig;
1671
+ }
1672
+ return {
1673
+ ...compConfig
1674
+ };
1675
+ };
1676
+ ;// ./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
1677
+
1678
+
1679
+
1680
+
1681
+
1682
+
1683
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
1684
+ name: "cms-column-card",
1685
+ components: {
1686
+ BaseComp: baseComp["default"],
1687
+ Draggable: (vuedraggable_umd_default())
1688
+ },
1689
+ props: {
1690
+ data: {
1691
+ type: Object,
1692
+ default: () => {
1693
+ return {};
1694
+ }
1695
+ },
1696
+ nowCompId: {
1697
+ type: [String, Number],
1698
+ default: ""
1699
+ },
1700
+ isOpcacity: {
1701
+ type: Boolean,
1702
+ default: true
1703
+ },
1704
+ lang: {
1705
+ type: String,
1706
+ default: "zh-HK"
1707
+ },
1708
+ isMobile: {
1709
+ type: Boolean,
1710
+ default: false
1711
+ },
1712
+ mobileLayout: {
1713
+ type: String,
1714
+ default: ""
1715
+ }
1716
+ },
1717
+ data() {
1718
+ return {
1719
+ configData: {},
1720
+ messFold: true,
1721
+ showAddCom: false,
1722
+ temporaryList: []
1723
+ };
1724
+ },
1725
+ computed: {
1726
+ isConfigPage() {
1727
+ return this.$EventBus && this.isOpcacity;
1728
+ },
1729
+ groupConfigForMain() {
1730
+ return {
1731
+ name: "task",
1732
+ pull: true,
1733
+ // A列表的元素可以被拖出
1734
+ put: (to, from, dragEl) => {
1735
+ console.log(from.el.classList);
1736
+ if (from.el.classList.contains("main_drag")) {
1737
+ const dataId = this.findFirstComponentKey(dragEl);
1738
+ const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column"];
1739
+ console.log("allowedComponents", dataId);
1740
+ if (dataId === "cms-column") {
1741
+ if (!this.checkColumnNestingLevel()) {
1742
+ console.log("cms-column 嵌套层级超出限制");
1743
+ return false;
1744
+ }
1745
+ }
1746
+ return allowedComponents.includes(dataId);
1747
+ }
1748
+ return true;
1749
+ }
1750
+ };
1751
+ },
1752
+ // 卡片容器样式
1753
+ cardContainerStyle() {
1754
+ return {
1755
+ backgroundImage: this.configData.backgroundImage ? `url('${this.configData.backgroundImage}')` : "none",
1756
+ backgroundSize: "cover",
1757
+ backgroundRepeat: "no-repeat",
1758
+ backgroundPosition: "center center",
1759
+ height: this.getContainerHeight(),
1760
+ border: this.getContainerBorder(),
1761
+ borderRadius: this.getContainerBorderRadius(),
1762
+ backgroundColor: this.configData.backgroundColor || "transparent",
1763
+ boxShadow: this.configData.boxShadow || "none"
1764
+ };
1765
+ }
1766
+ },
1767
+ mounted() {
1768
+ if (this.$EventBus) {
1769
+ this.$EventBus.$on("handleDragEnd", () => {
1770
+ this.showAddCom = false;
1771
+ });
1772
+ }
1773
+ },
1774
+ watch: {},
1775
+ methods: {
1776
+ findFirstComponentKey(root) {
1777
+ var _root$querySelector;
1778
+ if (!root) return null;
1779
+
1780
+ // 若起点自身就有
1781
+ if (root.nodeType === 1 && root.hasAttribute("component-key")) {
1782
+ return root.getAttribute("component-key");
1783
+ }
1784
+
1785
+ // 向下查找第一个匹配的后代
1786
+ const el = (_root$querySelector = root.querySelector) === null || _root$querySelector === void 0 ? void 0 : _root$querySelector.call(root, "[component-key]");
1787
+ return el ? el.getAttribute("component-key") : null;
1788
+ },
1789
+ // 获取容器高度
1790
+ getContainerHeight() {
1791
+ if (this.configData.heightType === "fixed") {
1792
+ return `${this.configData.fixedHeight}px`;
1793
+ }
1794
+ return this.isMobile && this.mobileLayout == "vertical" ? "auto" : "100%";
1795
+ },
1796
+ // 获取容器边框
1797
+ getContainerBorder() {
1798
+ if (this.configData.borderWidth) {
1799
+ return `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}`;
1800
+ }
1801
+ return "none";
1802
+ },
1803
+ // 获取容器圆角
1804
+ getContainerBorderRadius() {
1805
+ if (this.configData.borderRadius) {
1806
+ return `${this.configData.borderRadius}px`;
1807
+ }
1808
+ return "0";
1809
+ },
1810
+ getConfigData(configData) {
1811
+ this.configData = configData;
1812
+ },
1813
+ foldMessText() {
1814
+ this.messFold = !this.messFold;
1815
+ },
1816
+ decodeJumpUrl(url) {
1817
+ if (!url) return;
1818
+ top.location.href = url;
1819
+ },
1820
+ onStart(evt) {
1821
+ console.log("drag start in column-card", evt);
1822
+ this.showAddCom = true;
1823
+ },
1824
+ // 限制拖拽的组件类型
1825
+ onMove(evt) {
1826
+ const {
1827
+ draggedContext
1828
+ } = evt;
1829
+
1830
+ // 允许的组件类型
1831
+ const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
1832
+ ];
1833
+
1834
+ // 如果是从外部拖入的组件
1835
+ if (draggedContext && draggedContext.element) {
1836
+ const componentType = draggedContext.element.cmsCompName;
1837
+ if (componentType && !allowedComponents.includes(componentType)) {
1838
+ console.log("draggedContext.element", draggedContext.element);
1839
+ console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
1840
+ return false;
1841
+ }
1842
+
1843
+ // 特殊处理 cms-column:检查嵌套层级
1844
+ if (componentType === "cms-column") {
1845
+ if (!this.checkColumnNestingLevel()) {
1846
+ console.log("cms-column 嵌套层级超出限制");
1847
+ return false;
1848
+ }
1849
+ }
1850
+ }
1851
+ return true;
1852
+ },
1853
+ // 检查 cms-column 嵌套层级
1854
+ checkColumnNestingLevel() {
1855
+ // 检查当前 column-card 是否已经在 cms-column 内部
1856
+ let parent = this.$parent;
1857
+ let columnDepth = 0;
1858
+ while (parent) {
1859
+ // 检查父组件是否是 cms-column 或包含 cms-column
1860
+ if (parent.$options.name === "cms-column" || parent.$data && parent.$data.data && parent.$data.data.cmsCompName === "cms-column") {
1861
+ columnDepth++;
1862
+ }
1863
+
1864
+ // 如果已经有一层 cms-column,则不允许再嵌套
1865
+ if (columnDepth >= 2) {
1866
+ console.log(`检测到 cms-column 嵌套层级: ${columnDepth}, 超出限制`);
1867
+ return false;
1868
+ }
1869
+ parent = parent.$parent;
1870
+ }
1871
+ console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
1872
+ return true;
1873
+ },
1874
+ // 处理拖拽悬停
1875
+ dragover(e) {
1876
+ e.preventDefault();
1877
+ this.showAddCom = true;
1878
+ },
1879
+ // 处理拖拽放置
1880
+ drop(e) {
1881
+ e.preventDefault();
1882
+ const componentKey = e.dataTransfer.getData("componentKey");
1883
+ let temporaryId = "";
1884
+ this.temporaryList = e.dataTransfer.getData("temporaryList") ? JSON.parse(e.dataTransfer.getData("temporaryList")) : [];
1885
+ console.log("cms-colum-card-drop", componentKey, this.temporaryList);
1886
+ if (!componentKey) return;
1887
+ const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
1888
+ const isTemporary = isTemporaryItem === "true";
1889
+ if (isTemporary) {
1890
+ temporaryId = getCopyTemplateCompConfig(this.temporaryList, componentKey).cmsCompName;
1891
+ }
1892
+ const componentType = isTemporary ? temporaryId : componentKey;
1893
+ // 允许的组件类型
1894
+ const allowedComponents = ["cms-text", "cms-image", "cms-video", "cms-button", "cms-richText", "cms-column" // 允许拖入 cms-column
1895
+ ];
1896
+
1897
+ // 检查组件类型是否允许
1898
+ if (!allowedComponents.includes(componentType)) {
1899
+ console.log(`组件类型 ${componentType} 不允许拖入 column-card`);
1900
+ this.$message && this.$message.warning(`该组件类型不支持拖入卡片容器`);
1901
+ this.showAddCom = false;
1902
+ return;
1903
+ }
1904
+
1905
+ // 特殊处理 cms-column:检查嵌套层级
1906
+ if (componentType === "cms-column") {
1907
+ if (!this.checkColumnNestingLevel()) {
1908
+ console.log("cms-column 嵌套层级超出限制");
1909
+ this.$message && this.$message.warning(`cms-column 只能嵌套一层`);
1910
+ this.showAddCom = false;
1911
+ return;
1912
+ }
1913
+ }
1914
+ this.addOneComp(e, componentKey);
1915
+ },
1916
+ // 添加组件到卡片容器
1917
+ addOneComp(e, componentKey) {
1918
+ this.showAddCom = false;
1919
+ console.log("drop to column-card", componentKey);
1920
+
1921
+ // 动态导入组件配置
1922
+ let initCompData;
1923
+ try {
1924
+ const isTemporaryItem = e.dataTransfer.getData("isTemporaryItem");
1925
+ const isTemporary = isTemporaryItem === "true";
1926
+ if (isTemporary) {
1927
+ initCompData = getCopyTemplateCompConfig(this.temporaryList, componentKey);
1928
+ } else {
1929
+ initCompData = __webpack_require__(1640)(`./${componentKey}`).default.settings(componentKey);
1930
+ }
1931
+ if (!isTemporary) {
1932
+ initCompData = {
1933
+ ...initCompData,
1934
+ styleConfig: {
1935
+ pc: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(16, 16, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")],
1936
+ mb: componentKey == "cms-text" ? [...(0,baseConfig.styleBaseConfig)(12, 12, 0, 0, "px")] : [...(0,baseConfig.styleBaseConfig)(0, 0, 0, 0, "px")]
1937
+ }
1938
+ };
1939
+ }
1940
+ } catch (error) {
1941
+ console.error(`无法加载组件 ${componentKey}:`, error);
1942
+ this.$message && this.$message.error(`组件加载失败`);
1943
+ return;
1944
+ }
1945
+ const toElementId = e.toElement.id;
1946
+ if (toElementId === `cardTarget${this.data.componentId}` || toElementId.includes("cardTargetdown")) {
1947
+ // 添加到卡片容器末尾
1948
+ this.data.childList.push(initCompData);
1949
+ } else if (toElementId.includes("cardTargetup")) {
1950
+ // 插入到指定位置
1951
+ const underComponentId = toElementId.split("-cardTargetup")[0];
1952
+ const index = this.data.childList.findIndex(item => item.componentId === underComponentId);
1953
+ if (index !== -1) {
1954
+ this.data.childList.splice(index, 0, initCompData);
1955
+ }
1956
+ }
1957
+
1958
+ // 触发数据更新
1959
+ this.$emit("update:data", this.data);
1960
+ if (componentKey === "cms-column") {
1961
+ this.$EventBus.$emit("handleNowComp", initCompData);
1962
+ }
1963
+ }
1964
+ }
1965
+ });
1966
+ ;// ./package/cms-column-card/View.vue?vue&type=script&lang=js
1967
+ /* harmony default export */ var cms_column_card_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
1968
+ ;// ./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=2dcb9de2&prod&lang=scss&scoped=true
1969
+ // extracted by mini-css-extract-plugin
1970
+
1971
+ ;// ./package/cms-column-card/View.vue?vue&type=style&index=0&id=2dcb9de2&prod&lang=scss&scoped=true
1972
+
1973
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
1974
+ var componentNormalizer = __webpack_require__(1656);
1975
+ ;// ./package/cms-column-card/View.vue
1976
+
1977
+
1978
+
1979
+ ;
1980
+
1981
+
1982
+ /* normalize component */
1983
+
1984
+ var component = (0,componentNormalizer/* default */.A)(
1985
+ cms_column_card_Viewvue_type_script_lang_js,
1986
+ render,
1987
+ staticRenderFns,
1988
+ false,
1989
+ null,
1990
+ "2dcb9de2",
1991
+ null
1992
+
1993
+ )
1994
+
1995
+ /* harmony default export */ var View = (component.exports);
1996
+
1027
1997
  /***/ }),
1028
1998
 
1029
1999
  /***/ 713:
@@ -10129,7 +11099,7 @@ var render = function render() {
10129
11099
  var staticRenderFns = [];
10130
11100
 
10131
11101
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
10132
- var baseComp = __webpack_require__(5651);
11102
+ var baseComp = __webpack_require__(7135);
10133
11103
  ;// ./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
11104
 
10135
11105
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -10614,7 +11584,7 @@ var es_iterator_constructor = __webpack_require__(8111);
10614
11584
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
10615
11585
  var es_iterator_for_each = __webpack_require__(7588);
10616
11586
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
10617
- var baseComp = __webpack_require__(5651);
11587
+ var baseComp = __webpack_require__(7135);
10618
11588
  ;// ./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
11589
 
10620
11590
 
@@ -10991,7 +11961,7 @@ var render = function render() {
10991
11961
  var staticRenderFns = [];
10992
11962
 
10993
11963
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
10994
- var baseComp = __webpack_require__(5651);
11964
+ var baseComp = __webpack_require__(7135);
10995
11965
  ;// ./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
11966
 
10997
11967
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -11151,7 +12121,7 @@ var swiper = __webpack_require__(828);
11151
12121
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
11152
12122
  var swiper_esm_bundle = __webpack_require__(1532);
11153
12123
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
11154
- var baseComp = __webpack_require__(5651);
12124
+ var baseComp = __webpack_require__(7135);
11155
12125
  ;// ./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
12126
 
11157
12127
 
@@ -19677,8 +20647,8 @@ module.exports = uncurryThis({}.isPrototypeOf);
19677
20647
 
19678
20648
  var map = {
19679
20649
  "./": 6959,
19680
- "./baseComp": 5651,
19681
- "./baseComp.vue": 5651,
20650
+ "./baseComp": 7135,
20651
+ "./baseComp.vue": 7135,
19682
20652
  "./baseConfig": 2128,
19683
20653
  "./baseConfig.js": 2128,
19684
20654
  "./cms-aLineThreeLeftOne": 918,
@@ -19728,13 +20698,13 @@ var map = {
19728
20698
  "./cms-column": 3154,
19729
20699
  "./cms-column-card": 3583,
19730
20700
  "./cms-column-card/": 3583,
19731
- "./cms-column-card/View": 3894,
19732
- "./cms-column-card/View.vue": 3894,
20701
+ "./cms-column-card/View": 688,
20702
+ "./cms-column-card/View.vue": 688,
19733
20703
  "./cms-column-card/index": 3583,
19734
20704
  "./cms-column-card/index.js": 3583,
19735
20705
  "./cms-column/": 3154,
19736
- "./cms-column/View": 8970,
19737
- "./cms-column/View.vue": 8970,
20706
+ "./cms-column/View": 348,
20707
+ "./cms-column/View.vue": 348,
19738
20708
  "./cms-column/index": 3154,
19739
20709
  "./cms-column/index.js": 3154,
19740
20710
  "./cms-description": 98,
@@ -19756,9 +20726,15 @@ var map = {
19756
20726
  "./cms-iconFour/index": 653,
19757
20727
  "./cms-iconFour/index.js": 653,
19758
20728
  "./cms-image": 3513,
20729
+ "./cms-image-group": 2987,
20730
+ "./cms-image-group/": 2987,
20731
+ "./cms-image-group/View": 7583,
20732
+ "./cms-image-group/View.vue": 7583,
20733
+ "./cms-image-group/index": 2987,
20734
+ "./cms-image-group/index.js": 2987,
19759
20735
  "./cms-image/": 3513,
19760
- "./cms-image/View": 6345,
19761
- "./cms-image/View.vue": 6345,
20736
+ "./cms-image/View": 3823,
20737
+ "./cms-image/View.vue": 3823,
19762
20738
  "./cms-image/index": 3513,
19763
20739
  "./cms-image/index.js": 3513,
19764
20740
  "./cms-imgFour": 3395,
@@ -19870,9 +20846,15 @@ var map = {
19870
20846
  "./cms-via-storedValueCard/index": 9711,
19871
20847
  "./cms-via-storedValueCard/index.js": 9711,
19872
20848
  "./cms-video": 3275,
20849
+ "./cms-video-group": 2697,
20850
+ "./cms-video-group/": 2697,
20851
+ "./cms-video-group/View": 103,
20852
+ "./cms-video-group/View.vue": 103,
20853
+ "./cms-video-group/index": 2697,
20854
+ "./cms-video-group/index.js": 2697,
19873
20855
  "./cms-video/": 3275,
19874
- "./cms-video/View": 4297,
19875
- "./cms-video/View.vue": 4297,
20856
+ "./cms-video/View": 5846,
20857
+ "./cms-video/View.vue": 5846,
19876
20858
  "./cms-video/index": 3275,
19877
20859
  "./cms-video/index.js": 3275,
19878
20860
  "./cms-view": 725,
@@ -20226,7 +21208,7 @@ var staticRenderFns = [];
20226
21208
  ;// ./package/cms-prodCustomization/View.vue?vue&type=template&id=61a0a18c&scoped=true
20227
21209
 
20228
21210
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
20229
- var baseComp = __webpack_require__(5651);
21211
+ var baseComp = __webpack_require__(7135);
20230
21212
  ;// ./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
21213
 
20232
21214
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -20435,7 +21417,7 @@ var render = function render() {
20435
21417
  var staticRenderFns = [];
20436
21418
 
20437
21419
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
20438
- var baseComp = __webpack_require__(5651);
21420
+ var baseComp = __webpack_require__(7135);
20439
21421
  ;// ./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
21422
 
20441
21423
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -22372,19 +23354,19 @@ __webpack_require__.r(__webpack_exports__);
22372
23354
 
22373
23355
  const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 4726));
22374
23356
  const langData = {
22375
- input1: "高亮标题",
23357
+ input1: "描述",
22376
23358
  input2: "标题",
22377
- input3: "描述"
23359
+ input3: "高亮标题"
22378
23360
  };
22379
23361
  const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
22380
23362
  input1: {
22381
- label: "高亮标题"
23363
+ label: "描述"
22382
23364
  },
22383
23365
  input2: {
22384
23366
  label: "标题"
22385
23367
  },
22386
23368
  input3: {
22387
- label: "描述"
23369
+ label: "高亮标题"
22388
23370
  }
22389
23371
  });
22390
23372
  const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
@@ -22542,7 +23524,7 @@ var staticRenderFns = [];
22542
23524
  ;// ./package/cms-activityTime/View.vue?vue&type=template&id=0e496ed4&scoped=true
22543
23525
 
22544
23526
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
22545
- var baseComp = __webpack_require__(5651);
23527
+ var baseComp = __webpack_require__(7135);
22546
23528
  ;// ./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
23529
 
22548
23530
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -22706,6 +23688,64 @@ module.exports = function (iterable, unboundFunction, options) {
22706
23688
  };
22707
23689
 
22708
23690
 
23691
+ /***/ }),
23692
+
23693
+ /***/ 2697:
23694
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
23695
+
23696
+ "use strict";
23697
+ __webpack_require__.r(__webpack_exports__);
23698
+ /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
23699
+
23700
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 103));
23701
+ const langData = {
23702
+ colNums: 1,
23703
+ defaultCol: 12,
23704
+ gap: 10
23705
+ };
23706
+ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
23707
+ // 布局配置
23708
+ colNums: {
23709
+ label: "视频样式",
23710
+ widgetType: "el-radio-group",
23711
+ options: [{
23712
+ label: "一行一个",
23713
+ value: 1
23714
+ }, {
23715
+ label: "一行两个",
23716
+ value: 2
23717
+ }, {
23718
+ label: "一行三个",
23719
+ value: 3
23720
+ }],
23721
+ isCol: true
23722
+ },
23723
+ defaultCol: {
23724
+ label: "默认展示(行)",
23725
+ widgetType: "el-input-number",
23726
+ size: "small",
23727
+ min: 1,
23728
+ max: 12,
23729
+ step: 1,
23730
+ isCol: true,
23731
+ unit: "行"
23732
+ }
23733
+ });
23734
+ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
23735
+ /* harmony default export */ __webpack_exports__["default"] = ({
23736
+ View,
23737
+ validateSchema,
23738
+ configDataType,
23739
+ langData,
23740
+ settings: cmsCompName => {
23741
+ return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
23742
+ cmsCompName,
23743
+ langData,
23744
+ isLangAll: true
23745
+ });
23746
+ }
23747
+ });
23748
+
22709
23749
  /***/ }),
22710
23750
 
22711
23751
  /***/ 2730:
@@ -22991,7 +24031,7 @@ var render = function render() {
22991
24031
  var staticRenderFns = [];
22992
24032
 
22993
24033
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
22994
- var baseComp = __webpack_require__(5651);
24034
+ var baseComp = __webpack_require__(7135);
22995
24035
  ;// ./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
24036
 
22997
24037
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -23135,6 +24175,64 @@ module.exports = Math.pow;
23135
24175
 
23136
24176
  /***/ }),
23137
24177
 
24178
+ /***/ 2987:
24179
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
24180
+
24181
+ "use strict";
24182
+ __webpack_require__.r(__webpack_exports__);
24183
+ /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
24184
+
24185
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 7583));
24186
+ const langData = {
24187
+ colNums: 1,
24188
+ defaultCol: 12,
24189
+ gap: 10
24190
+ };
24191
+ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
24192
+ // 布局配置
24193
+ colNums: {
24194
+ label: "视频样式",
24195
+ widgetType: "el-radio-group",
24196
+ options: [{
24197
+ label: "一行一个",
24198
+ value: 1
24199
+ }, {
24200
+ label: "一行两个",
24201
+ value: 2
24202
+ }, {
24203
+ label: "一行三个",
24204
+ value: 3
24205
+ }],
24206
+ isCol: true
24207
+ },
24208
+ defaultCol: {
24209
+ label: "默认展示(行)",
24210
+ widgetType: "el-input-number",
24211
+ size: "small",
24212
+ min: 1,
24213
+ max: 12,
24214
+ step: 1,
24215
+ isCol: true,
24216
+ unit: "行"
24217
+ }
24218
+ });
24219
+ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
24220
+ /* harmony default export */ __webpack_exports__["default"] = ({
24221
+ View,
24222
+ validateSchema,
24223
+ configDataType,
24224
+ langData,
24225
+ settings: cmsCompName => {
24226
+ return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
24227
+ cmsCompName,
24228
+ langData,
24229
+ isLangAll: true
24230
+ });
24231
+ }
24232
+ });
24233
+
24234
+ /***/ }),
24235
+
23138
24236
  /***/ 3003:
23139
24237
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
23140
24238
 
@@ -23208,7 +24306,7 @@ module.exports = Math.min;
23208
24306
  __webpack_require__.r(__webpack_exports__);
23209
24307
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
23210
24308
 
23211
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 8970));
24309
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 348));
23212
24310
  const langData = {
23213
24311
  // 布局配置
23214
24312
  layoutType: "100",
@@ -23217,9 +24315,9 @@ const langData = {
23217
24315
  mobileLayout: "vertical",
23218
24316
  fixedHeight: 300,
23219
24317
  // 边框配置
23220
- borderWidth: 1,
24318
+ borderWidth: 0,
23221
24319
  borderStyle: "solid",
23222
- borderColor: "#409eff",
24320
+ borderColor: "",
23223
24321
  borderRadius: 0,
23224
24322
  // 背景配置
23225
24323
  backgroundColor: "#FFF",
@@ -23335,7 +24433,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
23335
24433
  },
23336
24434
  borderColor: {
23337
24435
  label: "边框颜色",
23338
- widgetType: "el-color-picker"
24436
+ widgetType: "el-color-picker",
24437
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
23339
24438
  },
23340
24439
  borderRadius: {
23341
24440
  label: "圆角(px)",
@@ -23347,7 +24446,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
23347
24446
  // 背景配置
23348
24447
  backgroundColor: {
23349
24448
  label: "背景颜色",
23350
- widgetType: "el-color-picker"
24449
+ widgetType: "el-color-picker",
24450
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
23351
24451
  },
23352
24452
  backgroundImage: {
23353
24453
  label: "背景图片",
@@ -23578,9 +24678,10 @@ module.exports = function (O) {
23578
24678
  __webpack_require__.r(__webpack_exports__);
23579
24679
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
23580
24680
 
23581
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 4297));
24681
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 5846));
23582
24682
  const langData = {
23583
24683
  // 视频源设置
24684
+ title: '',
23584
24685
  videoType: "direct",
23585
24686
  videoUrl: "",
23586
24687
  embedCode: "",
@@ -23607,6 +24708,11 @@ const langData = {
23607
24708
  };
23608
24709
  const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
23609
24710
  // 视频源设置配置
24711
+ title: {
24712
+ label: "视频标题",
24713
+ widgetType: "el-input",
24714
+ placeholder: "请输入视频标题"
24715
+ },
23610
24716
  videoType: {
23611
24717
  label: "视频类型",
23612
24718
  widgetType: "el-radio-group",
@@ -24037,9 +25143,10 @@ module.exports = function (argument) {
24037
25143
  __webpack_require__.r(__webpack_exports__);
24038
25144
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
24039
25145
 
24040
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 6345));
25146
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 3823));
24041
25147
  const langData = {
24042
25148
  // 图片设置
25149
+ remark: "",
24043
25150
  imageUrl: "",
24044
25151
  altText: "图片",
24045
25152
  title: "",
@@ -24062,6 +25169,11 @@ const langData = {
24062
25169
  lazyLoad: false
24063
25170
  };
24064
25171
  const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
25172
+ remark: {
25173
+ label: "图片备注",
25174
+ widgetType: "el-input",
25175
+ placeholder: "请输入图片备注"
25176
+ },
24065
25177
  // 图片设置配置
24066
25178
  imageUrl: {
24067
25179
  label: "图片地址",
@@ -24069,15 +25181,16 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
24069
25181
  placeholder: "请选择或输入图片地址"
24070
25182
  },
24071
25183
  altText: {
24072
- label: "替代文本",
25184
+ label: "alt属性",
24073
25185
  widgetType: "el-input",
24074
- placeholder: "请输入图片的替代文本"
24075
- },
24076
- title: {
24077
- label: "图片标题",
24078
- widgetType: "el-input",
24079
- placeholder: "请输入图片标题(鼠标悬停时显示)"
25186
+ placeholder: "请输入图片的alt属性"
24080
25187
  },
25188
+ // title: {
25189
+ // label: "图片标题",
25190
+ // widgetType: "el-input",
25191
+ // placeholder: "请输入图片标题(鼠标悬停时显示)"
25192
+ // },
25193
+
24081
25194
  // 尺寸控制配置
24082
25195
  widthType: {
24083
25196
  label: "宽度类型",
@@ -32139,7 +33252,7 @@ $({ target: 'Iterator', proto: true, real: true }, {
32139
33252
  __webpack_require__.r(__webpack_exports__);
32140
33253
  /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
32141
33254
 
32142
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 3894));
33255
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 688));
32143
33256
 
32144
33257
  // 默认配置数据
32145
33258
  const langData = {
@@ -32147,9 +33260,9 @@ const langData = {
32147
33260
  heightType: "auto",
32148
33261
  fixedHeight: 300,
32149
33262
  // 边框设置
32150
- borderWidth: 1,
33263
+ borderWidth: 0,
32151
33264
  borderStyle: "solid",
32152
- borderColor: "#1c4fc6ff",
33265
+ borderColor: "",
32153
33266
  borderRadius: 0,
32154
33267
  // 背景设置
32155
33268
  backgroundColor: "",
@@ -32208,7 +33321,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
32208
33321
  },
32209
33322
  borderColor: {
32210
33323
  label: "边框颜色",
32211
- widgetType: "el-color-picker"
33324
+ widgetType: "el-color-picker",
33325
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
32212
33326
  },
32213
33327
  borderRadius: {
32214
33328
  label: "圆角(px)",
@@ -32221,7 +33335,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
32221
33335
  // 背景设置配置
32222
33336
  backgroundColor: {
32223
33337
  label: "背景颜色",
32224
- widgetType: "el-color-picker"
33338
+ widgetType: "el-color-picker",
33339
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
32225
33340
  },
32226
33341
  backgroundImage: {
32227
33342
  label: "背景图片",
@@ -32522,53 +33637,7 @@ module.exports = function (obj) {
32522
33637
 
32523
33638
  /***/ }),
32524
33639
 
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:
33640
+ /***/ 3823:
32572
33641
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
32573
33642
 
32574
33643
  "use strict";
@@ -32580,15 +33649,7 @@ __webpack_require__.d(__webpack_exports__, {
32580
33649
  "default": function() { return /* binding */ View; }
32581
33650
  });
32582
33651
 
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
-
33652
+ ;// ./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
33653
  var render = function render() {
32593
33654
  var _vm = this,
32594
33655
  _c = _vm._self._c;
@@ -32597,137 +33658,71 @@ var render = function render() {
32597
33658
  "data": _vm.data,
32598
33659
  "nowCompId": _vm.nowCompId,
32599
33660
  "isOpcacity": _vm.isOpcacity,
32600
- "isMask": false,
32601
- "lang": _vm.lang,
32602
- "showDel": false
33661
+ "lang": _vm.lang
32603
33662
  },
32604
33663
  on: {
32605
33664
  "getConfigData": _vm.getConfigData
32606
33665
  }
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
- },
33666
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
33667
+ staticClass: "cms-image-container",
33668
+ class: [_vm.configData.customClass || '', {
33669
+ 'has-link': _vm.configData.linkUrl
33670
+ }],
33671
+ style: _vm.containerStyle
33672
+ }, [_c('div', {
33673
+ staticClass: "image-wrapper",
33674
+ style: _vm.wrapperStyle,
32613
33675
  on: {
32614
- "dragover": _vm.dragover,
32615
- "dragend": function ($event) {
32616
- _vm.showAddCom = false;
32617
- },
32618
- "drop": _vm.drop
33676
+ "click": _vm.handleClick
32619
33677
  }
32620
- }, [_c('Draggable', {
32621
- staticStyle: {
32622
- "position": "relative"
32623
- },
33678
+ }, [_vm.configData.imageUrl ? _c('img', {
33679
+ staticClass: "cms-image",
33680
+ style: _vm.imageStyle,
32624
33681
  attrs: {
32625
- "chosen-class": "chosen",
32626
- "force-fallback": "true",
32627
- "animation": "1000",
32628
- "move": _vm.onMove
33682
+ "src": _vm.configData.imageUrl,
33683
+ "alt": _vm.configData.altText || '图片',
33684
+ "title": _vm.configData.title
32629
33685
  },
32630
33686
  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"
33687
+ "load": _vm.onImageLoad,
33688
+ "error": _vm.onImageError
32642
33689
  }
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'
33690
+ }) : _c('div', {
33691
+ staticClass: "image-placeholder",
33692
+ style: _vm.placeholderStyle
33693
+ }, [_c('img', {
33694
+ staticStyle: {
33695
+ "width": "200px",
33696
+ "height": "200px"
32692
33697
  },
32693
33698
  attrs: {
32694
- "id": `-cardTargetdown`
33699
+ "src": __webpack_require__(4806),
33700
+ "alt": "Picture"
32695
33701
  }
32696
- }, [_c('i', {
32697
- staticClass: "icon-up"
32698
- }), _c('span', [_vm._v("插入组件")])])], 2)], 1) : _c('cms-view', _vm._b({
32699
- style: _vm.cardContainerStyle,
32700
- attrs: {
32701
- "data": _vm.data.childList,
32702
- "lang": _vm.lang,
32703
- "isOpcacity": false
32704
- }
32705
- }, 'cms-view', _vm.$attrs, false))], 1);
33702
+ })])])]), _c('div', {
33703
+ staticClass: "f-c-c"
33704
+ }, [_vm._v(_vm._s(_vm.configData.remark))])]);
32706
33705
  };
32707
33706
  var staticRenderFns = [];
32708
33707
 
32709
- ;// ./package/cms-column-card/View.vue?vue&type=template&id=971892d6&scoped=true
33708
+ ;// ./package/cms-image/View.vue?vue&type=template&id=5dac7dea&scoped=true
32710
33709
 
32711
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
32712
- var es_array_push = __webpack_require__(4114);
33710
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
33711
+ var es_iterator_constructor = __webpack_require__(8111);
33712
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
33713
+ var es_iterator_for_each = __webpack_require__(7588);
32713
33714
  // 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
33715
+ var baseComp = __webpack_require__(7135);
33716
+ ;// ./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
33717
 
32722
33718
 
32723
33719
 
32724
33720
 
32725
33721
 
32726
33722
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
32727
- name: "cms-column-card",
33723
+ name: "cms-image",
32728
33724
  components: {
32729
- BaseComp: baseComp["default"],
32730
- Draggable: (vuedraggable_umd_default())
33725
+ BaseComp: baseComp["default"]
32731
33726
  },
32732
33727
  props: {
32733
33728
  data: {
@@ -32752,206 +33747,207 @@ var baseConfig = __webpack_require__(2128);
32752
33747
  data() {
32753
33748
  return {
32754
33749
  configData: {},
32755
- messFold: true,
32756
- showAddCom: false
33750
+ imageLoaded: false,
33751
+ imageError: false,
33752
+ // 默认配置数据
33753
+ defaultConfig: {
33754
+ // 图片设置
33755
+ imageUrl: "",
33756
+ altText: "图片",
33757
+ title: "",
33758
+ // 尺寸控制
33759
+ widthType: "auto",
33760
+ widthValue: 100,
33761
+ heightType: "auto",
33762
+ heightValue: 100,
33763
+ maxWidth: 0,
33764
+ maxHeight: 0,
33765
+ // 样式设置
33766
+ borderRadius: 0,
33767
+ objectFit: "cover",
33768
+ // 交互功能
33769
+ linkUrl: "",
33770
+ linkTarget: "_self",
33771
+ // 高级配置
33772
+ customClass: "",
33773
+ customStyle: "",
33774
+ lazyLoad: false
33775
+ }
32757
33776
  };
32758
33777
  },
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
33778
  mounted() {
32776
- if (this.$EventBus) {
32777
- this.$EventBus.$on("handleDragEnd", () => {
32778
- this.showAddCom = false;
32779
- });
33779
+ this.initConfigData();
33780
+ },
33781
+ watch: {
33782
+ configData: {
33783
+ handler() {
33784
+ this.updateStyles();
33785
+ },
33786
+ deep: true
32780
33787
  }
32781
33788
  },
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";
33789
+ computed: {
33790
+ // 容器样式
33791
+ containerStyle() {
33792
+ const config = {
33793
+ ...this.defaultConfig,
33794
+ ...this.configData
33795
+ };
33796
+ return {
33797
+ ...this.parseCustomStyle(config.customStyle)
33798
+ };
32790
33799
  },
32791
- // 获取容器边框
32792
- getContainerBorder() {
32793
- if (this.configData.borderWidth) {
32794
- return `${this.configData.borderWidth}px ${this.configData.borderStyle} ${this.configData.borderColor}`;
33800
+ // 包装器样式
33801
+ wrapperStyle() {
33802
+ const config = {
33803
+ ...this.defaultConfig,
33804
+ ...this.configData
33805
+ };
33806
+ let width = "100%";
33807
+ let height = "auto";
33808
+
33809
+ // 宽度设置
33810
+ if (config.widthType === "fixed") {
33811
+ width = `${config.widthValue}px`;
33812
+ } else if (config.widthType === "percent") {
33813
+ width = `${config.widthValue}%`;
32795
33814
  }
32796
- return "none";
32797
- },
32798
- // 获取容器圆角
32799
- getContainerBorderRadius() {
32800
- if (this.configData.borderRadius) {
32801
- return `${this.configData.borderRadius}px`;
33815
+
33816
+ // 高度设置
33817
+ if (config.heightType === "fixed") {
33818
+ height = `${config.heightValue}px`;
33819
+ } else if (config.heightType === "percent") {
33820
+ height = `${config.heightValue}%`;
32802
33821
  }
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;
33822
+ return {
33823
+ width,
33824
+ height,
33825
+ maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : "none",
33826
+ maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : "none",
33827
+ borderRadius: `${config.borderRadius}px`,
33828
+ overflow: "hidden",
33829
+ cursor: config.linkUrl ? "pointer" : "default",
33830
+ display: "inline-block"
33831
+ };
32814
33832
  },
32815
- onStart(evt) {
32816
- console.log("drag start in column-card", evt);
32817
- this.showAddCom = true;
33833
+ // 图片样式
33834
+ imageStyle() {
33835
+ const config = {
33836
+ ...this.defaultConfig,
33837
+ ...this.configData
33838
+ };
33839
+ return {
33840
+ width: "100%",
33841
+ height: "100%",
33842
+ objectFit: config.objectFit,
33843
+ display: "block"
33844
+ };
32818
33845
  },
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
- }
33846
+ // 占位符样式
33847
+ placeholderStyle() {
33848
+ const config = {
33849
+ ...this.defaultConfig,
33850
+ ...this.configData
33851
+ };
33852
+ let width = "100%";
33853
+ let height = "auto";
32836
33854
 
32837
- // 特殊处理 cms-column:检查嵌套层级
32838
- if (componentType === "cms-column") {
32839
- if (!this.checkColumnNestingLevel()) {
32840
- console.log("cms-column 嵌套层级超出限制");
32841
- return false;
32842
- }
32843
- }
33855
+ // 如果设置了固定尺寸,使用设置的尺寸
33856
+ if (config.widthType === "fixed") {
33857
+ width = `${config.widthValue}px`;
32844
33858
  }
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;
33859
+ if (config.heightType === "fixed") {
33860
+ height = `${config.heightValue}px`;
32864
33861
  }
32865
- console.log(`cms-column 嵌套层级检查通过: ${columnDepth}`);
32866
- return true;
33862
+ return {
33863
+ width,
33864
+ height,
33865
+ backgroundColor: "#F2F9FF",
33866
+ border: "1px dashed #dcdfe6",
33867
+ borderRadius: `${config.borderRadius}px`,
33868
+ display: "flex",
33869
+ flexDirection: "column",
33870
+ alignItems: "center",
33871
+ justifyContent: "center",
33872
+ color: "#909399",
33873
+ fontSize: "14px"
33874
+ };
33875
+ }
33876
+ },
33877
+ methods: {
33878
+ // 初始化配置数据
33879
+ initConfigData() {
33880
+ this.configData = {
33881
+ ...this.defaultConfig,
33882
+ ...this.configData
33883
+ };
32867
33884
  },
32868
- // 处理拖拽悬停
32869
- dragover(e) {
32870
- e.preventDefault();
32871
- this.showAddCom = true;
33885
+ // 获取配置数据
33886
+ getConfigData(configData) {
33887
+ this.configData = {
33888
+ ...this.defaultConfig,
33889
+ ...configData
33890
+ };
33891
+ this.updateStyles();
32872
33892
  },
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;
33893
+ // 更新样式
33894
+ updateStyles() {
33895
+ this.$nextTick(() => {
33896
+ this.$forceUpdate();
33897
+ });
33898
+ },
33899
+ // 处理点击事件
33900
+ handleClick() {
33901
+ if (this.configData.linkUrl) {
33902
+ const target = this.configData.linkTarget || "_self";
33903
+ if (target === "_blank") {
33904
+ window.open(this.configData.linkUrl, "_blank");
33905
+ } else {
33906
+ window.location.href = this.configData.linkUrl;
32899
33907
  }
32900
33908
  }
32901
- this.addOneComp(e, componentKey);
32902
33909
  },
32903
- // 添加组件到卡片容器
32904
- addOneComp(e, componentKey) {
32905
- this.showAddCom = false;
32906
- console.log("drop to column-card", componentKey);
32907
-
32908
- // 动态导入组件配置
32909
- let initCompData;
33910
+ // 图片加载成功
33911
+ onImageLoad() {
33912
+ this.imageLoaded = true;
33913
+ this.imageError = false;
33914
+ },
33915
+ // 图片加载失败
33916
+ onImageError() {
33917
+ this.imageLoaded = false;
33918
+ this.imageError = true;
33919
+ },
33920
+ // 解析自定义样式
33921
+ parseCustomStyle(customStyle) {
33922
+ if (!customStyle) return {};
32910
33923
  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")]
33924
+ const styles = {};
33925
+ const declarations = customStyle.split(";");
33926
+ declarations.forEach(declaration => {
33927
+ const [property, value] = declaration.split(":");
33928
+ if (property && value) {
33929
+ const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
33930
+ styles[camelCaseProperty] = value.trim();
32917
33931
  }
32918
- };
33932
+ });
33933
+ return styles;
32919
33934
  } 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);
33935
+ console.warn("解析自定义样式失败:", error);
33936
+ return {};
32941
33937
  }
32942
33938
  }
32943
33939
  }
32944
33940
  });
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
33941
+ ;// ./package/cms-image/View.vue?vue&type=script&lang=js
33942
+ /* harmony default export */ var cms_image_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
33943
+ ;// ./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
33944
  // extracted by mini-css-extract-plugin
32949
33945
 
32950
- ;// ./package/cms-column-card/View.vue?vue&type=style&index=0&id=971892d6&prod&lang=scss&scoped=true
33946
+ ;// ./package/cms-image/View.vue?vue&type=style&index=0&id=5dac7dea&prod&lang=scss&scoped=true
32951
33947
 
32952
33948
  // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
32953
33949
  var componentNormalizer = __webpack_require__(1656);
32954
- ;// ./package/cms-column-card/View.vue
33950
+ ;// ./package/cms-image/View.vue
32955
33951
 
32956
33952
 
32957
33953
 
@@ -32961,18 +33957,64 @@ var componentNormalizer = __webpack_require__(1656);
32961
33957
  /* normalize component */
32962
33958
 
32963
33959
  var component = (0,componentNormalizer/* default */.A)(
32964
- cms_column_card_Viewvue_type_script_lang_js,
33960
+ cms_image_Viewvue_type_script_lang_js,
32965
33961
  render,
32966
33962
  staticRenderFns,
32967
33963
  false,
32968
33964
  null,
32969
- "971892d6",
33965
+ "5dac7dea",
32970
33966
  null
32971
33967
 
32972
33968
  )
32973
33969
 
32974
33970
  /* harmony default export */ var View = (component.exports);
32975
33971
 
33972
+ /***/ }),
33973
+
33974
+ /***/ 3838:
33975
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
33976
+
33977
+ "use strict";
33978
+
33979
+ var aSet = __webpack_require__(7080);
33980
+ var size = __webpack_require__(5170);
33981
+ var iterate = __webpack_require__(8469);
33982
+ var getSetRecord = __webpack_require__(3789);
33983
+
33984
+ // `Set.prototype.isSubsetOf` method
33985
+ // https://tc39.github.io/proposal-set-methods/#Set.prototype.isSubsetOf
33986
+ module.exports = function isSubsetOf(other) {
33987
+ var O = aSet(this);
33988
+ var otherRec = getSetRecord(other);
33989
+ if (size(O) > otherRec.size) return false;
33990
+ return iterate(O, function (e) {
33991
+ if (!otherRec.includes(e)) return false;
33992
+ }, true) !== false;
33993
+ };
33994
+
33995
+
33996
+ /***/ }),
33997
+
33998
+ /***/ 3853:
33999
+ /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
34000
+
34001
+ "use strict";
34002
+
34003
+ var $ = __webpack_require__(6518);
34004
+ var isDisjointFrom = __webpack_require__(4449);
34005
+ var setMethodAcceptSetLike = __webpack_require__(4916);
34006
+
34007
+ var INCORRECT = !setMethodAcceptSetLike('isDisjointFrom', function (result) {
34008
+ return !result;
34009
+ });
34010
+
34011
+ // `Set.prototype.isDisjointFrom` method
34012
+ // https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom
34013
+ $({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
34014
+ isDisjointFrom: isDisjointFrom
34015
+ });
34016
+
34017
+
32976
34018
  /***/ }),
32977
34019
 
32978
34020
  /***/ 3923:
@@ -33041,7 +34083,7 @@ var render = function render() {
33041
34083
  var staticRenderFns = [];
33042
34084
 
33043
34085
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
33044
- var baseComp = __webpack_require__(5651);
34086
+ var baseComp = __webpack_require__(7135);
33045
34087
  ;// ./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
34088
 
33047
34089
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -33330,7 +34372,7 @@ var render = function render() {
33330
34372
  var staticRenderFns = [];
33331
34373
 
33332
34374
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
33333
- var baseComp = __webpack_require__(5651);
34375
+ var baseComp = __webpack_require__(7135);
33334
34376
  // EXTERNAL MODULE: ./package/patch.js
33335
34377
  var patch = __webpack_require__(4229);
33336
34378
  ;// ./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 +34896,6 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
33854
34896
 
33855
34897
  /***/ }),
33856
34898
 
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
34899
  /***/ 4326:
34219
34900
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
34220
34901
 
@@ -34854,7 +35535,7 @@ var render = function render() {
34854
35535
  var staticRenderFns = [];
34855
35536
 
34856
35537
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
34857
- var baseComp = __webpack_require__(5651);
35538
+ var baseComp = __webpack_require__(7135);
34858
35539
  // EXTERNAL MODULE: ./src/utils/request.js + 2 modules
34859
35540
  var utils_request = __webpack_require__(9688);
34860
35541
  ;// ./src/api/servePlan.js
@@ -35123,7 +35804,7 @@ var render = function render() {
35123
35804
  var staticRenderFns = [];
35124
35805
 
35125
35806
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
35126
- var baseComp = __webpack_require__(5651);
35807
+ var baseComp = __webpack_require__(7135);
35127
35808
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
35128
35809
  var jumpUrl = __webpack_require__(4102);
35129
35810
  ;// ./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 +36222,7 @@ var render = function render() {
35541
36222
  var staticRenderFns = [];
35542
36223
 
35543
36224
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
35544
- var baseComp = __webpack_require__(5651);
36225
+ var baseComp = __webpack_require__(7135);
35545
36226
  ;// ./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
36227
 
35547
36228
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -35668,7 +36349,7 @@ const langData = {
35668
36349
  fontWeight: "normal",
35669
36350
  fontStyle: "normal",
35670
36351
  textDecoration: "none",
35671
- fontFamily: "inherit",
36352
+ fontFamily: "Microsoft YaHei",
35672
36353
  // 布局设置
35673
36354
  paddingTop: 0,
35674
36355
  paddingBottom: 0,
@@ -35776,7 +36457,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35776
36457
  // 样式美化配置
35777
36458
  fontColor: {
35778
36459
  label: "字体颜色",
35779
- widgetType: "el-color-picker"
36460
+ widgetType: "el-color-picker",
36461
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
35780
36462
  },
35781
36463
  fontWeight: {
35782
36464
  label: "字体粗细",
@@ -35847,35 +36529,21 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35847
36529
  value: "overline"
35848
36530
  }]
35849
36531
  },
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
- },
36532
+ // fontFamily: {
36533
+ // label: "字体族",
36534
+ // widgetType: "el-select",
36535
+ // options: [
36536
+ // { label: "默认", value: "inherit" },
36537
+ // { label: "微软雅黑", value: "Microsoft YaHei" },
36538
+ // { label: "宋体", value: "SimSun" },
36539
+ // { label: "黑体", value: "SimHei" },
36540
+ // { label: "楷体", value: "KaiTi" },
36541
+ // { label: "Arial", value: "Arial" },
36542
+ // { label: "Times New Roman", value: "Times New Roman" },
36543
+ // { label: "Helvetica", value: "Helvetica" },
36544
+ // ],
36545
+ // },
36546
+
35879
36547
  // 布局设置配置
35880
36548
  paddingTop: {
35881
36549
  label: "上内边距(px)",
@@ -35935,7 +36603,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35935
36603
  },
35936
36604
  backgroundColor: {
35937
36605
  label: "背景颜色",
35938
- widgetType: "el-color-picker"
36606
+ widgetType: "el-color-picker",
36607
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
35939
36608
  },
35940
36609
  // 视觉效果配置
35941
36610
  borderWidth: {
@@ -35964,7 +36633,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35964
36633
  },
35965
36634
  borderColor: {
35966
36635
  label: "边框颜色",
35967
- widgetType: "el-color-picker"
36636
+ widgetType: "el-color-picker",
36637
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
35968
36638
  },
35969
36639
  borderRadius: {
35970
36640
  label: "圆角(px)",
@@ -35995,15 +36665,16 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
35995
36665
  label: "新窗口",
35996
36666
  value: "_blank"
35997
36667
  }]
35998
- },
35999
- showLinkIcon: {
36000
- label: "显示链接图标",
36001
- widgetType: "el-switch"
36002
- },
36003
- hoverEffect: {
36004
- label: "悬停效果",
36005
- widgetType: "el-switch"
36006
- },
36668
+ }
36669
+ // showLinkIcon: {
36670
+ // label: "显示链接图标",
36671
+ // widgetType: "el-switch",
36672
+ // },
36673
+ // hoverEffect: {
36674
+ // label: "链接悬停效果",
36675
+ // widgetType: "el-switch",
36676
+ // },
36677
+
36007
36678
  // 高级配置
36008
36679
  // customClass: {
36009
36680
  // label: "自定义CSS类",
@@ -36016,41 +36687,30 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
36016
36687
  // type: "textarea",
36017
36688
  // placeholder: "请输入CSS样式,如: color: red; font-size: 18px;",
36018
36689
  // },
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
- }
36690
+ // enableAnimation: {
36691
+ // label: "启用动画",
36692
+ // widgetType: "el-switch",
36693
+ // },
36694
+ // animationType: {
36695
+ // label: "动画类型",
36696
+ // widgetType: "el-select",
36697
+ // options: [
36698
+ // { label: "淡入", value: "fadeIn" },
36699
+ // { label: "从左滑入", value: "slideInLeft" },
36700
+ // { label: "从右滑入", value: "slideInRight" },
36701
+ // { label: "从上滑入", value: "slideInDown" },
36702
+ // { label: "从下滑入", value: "slideInUp" },
36703
+ // { label: "缩放进入", value: "zoomIn" },
36704
+ // ],
36705
+ // },
36706
+ // animationDuration: {
36707
+ // label: "动画时长(ms)",
36708
+ // widgetType: "el-input-number",
36709
+ // size: "small",
36710
+ // min: 100,
36711
+ // max: 2000,
36712
+ // step: 100,
36713
+ // },
36054
36714
  });
36055
36715
  const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
36056
36716
  /* harmony default export */ __webpack_exports__["default"] = ({
@@ -36068,6 +36728,14 @@ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSc
36068
36728
 
36069
36729
  /***/ }),
36070
36730
 
36731
+ /***/ 4806:
36732
+ /***/ (function(module) {
36733
+
36734
+ "use strict";
36735
+ 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=";
36736
+
36737
+ /***/ }),
36738
+
36071
36739
  /***/ 4829:
36072
36740
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
36073
36741
 
@@ -36796,6 +37464,7 @@ module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
36796
37464
  __webpack_require__.r(__webpack_exports__);
36797
37465
  /* harmony default export */ __webpack_exports__["default"] = ({
36798
37466
  Expand: "展开",
37467
+ More: "查看更多",
36799
37468
  Collpase: "收起",
36800
37469
  discount: '优惠期限:'
36801
37470
  });
@@ -36856,12 +37525,13 @@ var map = {
36856
37525
  "./cms-banner/View.vue": 7747,
36857
37526
  "./cms-button/View.vue": 1163,
36858
37527
  "./cms-cells/View.vue": 983,
36859
- "./cms-column-card/View.vue": 3894,
36860
- "./cms-column/View.vue": 8970,
37528
+ "./cms-column-card/View.vue": 688,
37529
+ "./cms-column/View.vue": 348,
36861
37530
  "./cms-description/View.vue": 6296,
36862
37531
  "./cms-dynamic-comp/View.vue": 7298,
36863
37532
  "./cms-iconFour/View.vue": 2946,
36864
- "./cms-image/View.vue": 6345,
37533
+ "./cms-image-group/View.vue": 7583,
37534
+ "./cms-image/View.vue": 3823,
36865
37535
  "./cms-imgFour/View.vue": 1282,
36866
37536
  "./cms-lineFive/View.vue": 1716,
36867
37537
  "./cms-lineFour/View.vue": 8067,
@@ -36880,7 +37550,8 @@ var map = {
36880
37550
  "./cms-titleCenter/View.vue": 4003,
36881
37551
  "./cms-titleLeft/View.vue": 4598,
36882
37552
  "./cms-via-storedValueCard/View.vue": 4109,
36883
- "./cms-video/View.vue": 4297,
37553
+ "./cms-video-group/View.vue": 103,
37554
+ "./cms-video/View.vue": 5846,
36884
37555
  "./cms-view/View.vue": 3774
36885
37556
  };
36886
37557
 
@@ -37528,7 +38199,7 @@ module.exports = function getSideChannelList() {
37528
38199
 
37529
38200
  /***/ }),
37530
38201
 
37531
- /***/ 5651:
38202
+ /***/ 5713:
37532
38203
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
37533
38204
 
37534
38205
  "use strict";
@@ -37537,77 +38208,44 @@ __webpack_require__.r(__webpack_exports__);
37537
38208
 
37538
38209
  // EXPORTS
37539
38210
  __webpack_require__.d(__webpack_exports__, {
37540
- "default": function() { return /* binding */ baseComp; }
38211
+ "default": function() { return /* binding */ View; }
37541
38212
  });
37542
38213
 
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
38214
+ ;// ./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-richText/View.vue?vue&type=template&id=2cd59962&scoped=true
37544
38215
  var render = function render() {
37545
38216
  var _vm = this,
37546
38217
  _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",
38218
+ return _c('BaseComp', _vm._b({
38219
+ attrs: {
38220
+ "data": _vm.data,
38221
+ "nowCompId": _vm.nowCompId,
38222
+ "isOpcacity": _vm.isOpcacity,
38223
+ "lang": _vm.lang
38224
+ },
37570
38225
  on: {
37571
- "click": function ($event) {
37572
- $event.stopPropagation();
37573
- return _vm.delComp.apply(null, arguments);
37574
- }
38226
+ "getConfigData": _vm.getConfigData
37575
38227
  }
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
- }
38228
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
38229
+ staticClass: "cmhk-home_main"
38230
+ }, [_c('div', [_c('div', {
38231
+ staticClass: "inner"
38232
+ }, [_c('p', {
38233
+ domProps: {
38234
+ "innerHTML": _vm._s(_vm.configData.input1)
37583
38235
  }
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();
38236
+ })])])])]);
37589
38237
  };
37590
38238
  var staticRenderFns = [];
37591
38239
 
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
-
38240
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
38241
+ var baseComp = __webpack_require__(7135);
38242
+ ;// ./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
37608
38243
 
37609
- /* harmony default export */ var baseCompvue_type_script_lang_js = ({
37610
- name: "baseComp",
38244
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
38245
+ name: "cms-richText",
38246
+ components: {
38247
+ BaseComp: baseComp["default"]
38248
+ },
37611
38249
  props: {
37612
38250
  data: {
37613
38251
  type: Object,
@@ -37623,151 +38261,42 @@ var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
37623
38261
  type: Boolean,
37624
38262
  default: true
37625
38263
  },
37626
- isMask: {
37627
- type: Boolean,
37628
- default: true
37629
- },
37630
38264
  lang: {
37631
38265
  type: String,
37632
38266
  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
38267
  }
37646
38268
  },
37647
38269
  data() {
37648
38270
  return {
37649
- styleConfig_mb: {},
37650
- styleConfig_pc: {},
37651
38271
  configData: {},
37652
- elementWidth: 0,
37653
- resizeObserver: null
38272
+ messFold: false
37654
38273
  };
37655
38274
  },
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
- },
38275
+ mounted() {},
38276
+ watch: {},
37698
38277
  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;
38278
+ getConfigData(configData) {
38279
+ this.configData = configData;
37739
38280
  },
37740
- isMobile() {
37741
- return this.elementWidth < 760;
38281
+ foldMessText() {
38282
+ this.messFold = !this.messFold;
37742
38283
  },
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;
38284
+ decodeJumpUrl(url) {
38285
+ if (!url) return;
38286
+ top.location.href = url;
37758
38287
  }
37759
38288
  }
37760
38289
  });
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
38290
+ ;// ./package/cms-richText/View.vue?vue&type=script&lang=js
38291
+ /* harmony default export */ var cms_richText_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
38292
+ ;// ./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-richText/View.vue?vue&type=style&index=0&id=2cd59962&prod&lang=scss&scoped=true
37764
38293
  // extracted by mini-css-extract-plugin
37765
38294
 
37766
- ;// ./package/baseComp.vue?vue&type=style&index=0&id=9d54e5e0&prod&lang=scss&scoped=true
38295
+ ;// ./package/cms-richText/View.vue?vue&type=style&index=0&id=2cd59962&prod&lang=scss&scoped=true
37767
38296
 
37768
38297
  // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
37769
38298
  var componentNormalizer = __webpack_require__(1656);
37770
- ;// ./package/baseComp.vue
38299
+ ;// ./package/cms-richText/View.vue
37771
38300
 
37772
38301
 
37773
38302
 
@@ -37777,21 +38306,114 @@ var componentNormalizer = __webpack_require__(1656);
37777
38306
  /* normalize component */
37778
38307
 
37779
38308
  var component = (0,componentNormalizer/* default */.A)(
37780
- package_baseCompvue_type_script_lang_js,
38309
+ cms_richText_Viewvue_type_script_lang_js,
37781
38310
  render,
37782
38311
  staticRenderFns,
37783
38312
  false,
37784
38313
  null,
37785
- "9d54e5e0",
38314
+ "2cd59962",
37786
38315
  null
37787
38316
 
37788
38317
  )
37789
38318
 
37790
- /* harmony default export */ var baseComp = (component.exports);
38319
+ /* harmony default export */ var View = (component.exports);
37791
38320
 
37792
38321
  /***/ }),
37793
38322
 
37794
- /***/ 5713:
38323
+ /***/ 5719:
38324
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
38325
+
38326
+ "use strict";
38327
+ __webpack_require__.r(__webpack_exports__);
38328
+ /* harmony default export */ __webpack_exports__["default"] = ({
38329
+ onlinePurchase: '在线购买',
38330
+ CMHK: 'CMHK 5G',
38331
+ servicePlans: '服务计划',
38332
+ broadband: '家居宽频',
38333
+ Gband: '5G宽频',
38334
+ devices: '手机及装置',
38335
+ card: '储值卡服务',
38336
+ data: '数据及增值服务',
38337
+ IDD: '漫游及IDD',
38338
+ policy: '隐私和条款',
38339
+ summary: '关键信息摘要',
38340
+ customer: '我们的客户修款',
38341
+ infomations: '你的资料',
38342
+ privacy: '隐私',
38343
+ conditions: '服务条款',
38344
+ us: '关于我们',
38345
+ overview: '公司概览',
38346
+ news: '新闻中心',
38347
+ notice: '招标公告',
38348
+ join: '企业招聘',
38349
+ links: '友情链接',
38350
+ partnerships: '合作伙伴',
38351
+ help: '帮助与支持',
38352
+ onlineHelp: '在线帮助与支持',
38353
+ education: '客户教学专区',
38354
+ fraud: '通讯防诈骗宣传栏目',
38355
+ shop: '附近的门店查询',
38356
+ contact: '联系我们',
38357
+ questions: '常见问题',
38358
+ service: '24小时客户服务热线 12580',
38359
+ hotline: '销售热线12588 (上午11时至下午8时)',
38360
+ follow: '关注或联系我们',
38361
+ download: '下载MyLinkApp、关注官方公众号,关注更多信息,享受移动服务',
38362
+ account: 'WeChat官方账号',
38363
+ bottomText: '© 2023 中国移动香港有限公司版权所有'
38364
+ });
38365
+
38366
+ /***/ }),
38367
+
38368
+ /***/ 5745:
38369
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
38370
+
38371
+ "use strict";
38372
+
38373
+ var store = __webpack_require__(7629);
38374
+
38375
+ module.exports = function (key, value) {
38376
+ return store[key] || (store[key] = value || {});
38377
+ };
38378
+
38379
+
38380
+ /***/ }),
38381
+
38382
+ /***/ 5786:
38383
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
38384
+
38385
+ "use strict";
38386
+ __webpack_require__.r(__webpack_exports__);
38387
+ /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
38388
+
38389
+ const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 330));
38390
+ const langData = {
38391
+ argument1: '27202306211671456568424927232'
38392
+ };
38393
+ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
38394
+ argument1: {
38395
+ label: "服务计划栏目",
38396
+ widgetType: "ServePlanTab"
38397
+ }
38398
+ });
38399
+ const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
38400
+ /* harmony default export */ __webpack_exports__["default"] = ({
38401
+ View,
38402
+ validateSchema,
38403
+ configDataType,
38404
+ langData,
38405
+ settings: cmsCompName => {
38406
+ return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
38407
+ cmsCompName,
38408
+ langData,
38409
+ isLangAll: true
38410
+ });
38411
+ }
38412
+ });
38413
+
38414
+ /***/ }),
38415
+
38416
+ /***/ 5846:
37795
38417
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
37796
38418
 
37797
38419
  "use strict";
@@ -37803,7 +38425,7 @@ __webpack_require__.d(__webpack_exports__, {
37803
38425
  "default": function() { return /* binding */ View; }
37804
38426
  });
37805
38427
 
37806
- ;// ./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-richText/View.vue?vue&type=template&id=2cd59962&scoped=true
38428
+ ;// ./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=b1a44b52&scoped=true
37807
38429
  var render = function render() {
37808
38430
  var _vm = this,
37809
38431
  _c = _vm._self._c;
@@ -37818,23 +38440,70 @@ var render = function render() {
37818
38440
  "getConfigData": _vm.getConfigData
37819
38441
  }
37820
38442
  }, 'BaseComp', _vm.$attrs, false), [_c('section', {
37821
- staticClass: "cmhk-home_main"
37822
- }, [_c('div', [_c('div', {
37823
- staticClass: "inner"
37824
- }, [_c('p', {
38443
+ staticClass: "cms-video-container",
38444
+ class: [_vm.configData.customClass || ''],
38445
+ style: _vm.containerStyle
38446
+ }, [_c('div', {
38447
+ staticClass: "f-c-c"
38448
+ }, [_vm._v(_vm._s(_vm.configData.title))]), _c('div', {
38449
+ staticClass: "video-wrapper",
38450
+ style: _vm.wrapperStyle
38451
+ }, [_vm.videoType === 'direct' && _vm.configData.videoUrl ? _c('video', {
38452
+ staticClass: "cms-video direct-video",
38453
+ style: _vm.videoStyle,
38454
+ attrs: {
38455
+ "src": _vm.configData.videoUrl,
38456
+ "controls": _vm.configData.showControls,
38457
+ "autoplay": _vm.configData.autoplay,
38458
+ "loop": _vm.configData.loop,
38459
+ "poster": _vm.configData.posterUrl
38460
+ },
37825
38461
  domProps: {
37826
- "innerHTML": _vm._s(_vm.configData.input1)
38462
+ "muted": _vm.configData.muted
38463
+ },
38464
+ on: {
38465
+ "loadstart": _vm.onVideoLoadStart,
38466
+ "loadeddata": _vm.onVideoLoaded,
38467
+ "error": _vm.onVideoError
38468
+ }
38469
+ }) : _vm.configData.embedCode ? _c('div', {
38470
+ staticClass: "cms-video embed-video",
38471
+ style: _vm.videoStyle,
38472
+ domProps: {
38473
+ "innerHTML": _vm._s(_vm.configData.embedCode)
38474
+ }
38475
+ }) : _c('div', {
38476
+ staticClass: "video-placeholder",
38477
+ style: _vm.placeholderStyle
38478
+ }, [_c('img', {
38479
+ staticStyle: {
38480
+ "width": "97.82px",
38481
+ "height": "97.82px"
38482
+ },
38483
+ attrs: {
38484
+ "src": __webpack_require__(6148),
38485
+ "alt": "Video Camera"
37827
38486
  }
37828
38487
  })])])])]);
37829
38488
  };
37830
38489
  var staticRenderFns = [];
37831
38490
 
38491
+ ;// ./package/cms-video/View.vue?vue&type=template&id=b1a44b52&scoped=true
38492
+
38493
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
38494
+ var es_iterator_constructor = __webpack_require__(8111);
38495
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
38496
+ var es_iterator_for_each = __webpack_require__(7588);
37832
38497
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
37833
- var baseComp = __webpack_require__(5651);
37834
- ;// ./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
38498
+ var baseComp = __webpack_require__(7135);
38499
+ ;// ./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
38500
+
38501
+
38502
+
38503
+
37835
38504
 
37836
38505
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
37837
- name: "cms-richText",
38506
+ name: "cms-video",
37838
38507
  components: {
37839
38508
  BaseComp: baseComp["default"]
37840
38509
  },
@@ -37861,34 +38530,243 @@ var baseComp = __webpack_require__(5651);
37861
38530
  data() {
37862
38531
  return {
37863
38532
  configData: {},
37864
- messFold: false
38533
+ videoLoaded: false,
38534
+ videoError: false,
38535
+ // 默认配置数据
38536
+ defaultConfig: {
38537
+ // 视频源设置
38538
+ videoType: "direct",
38539
+ videoUrl: "",
38540
+ embedCode: "",
38541
+ posterUrl: "",
38542
+ // 播放控制
38543
+ showControls: true,
38544
+ autoplay: false,
38545
+ loop: false,
38546
+ muted: false,
38547
+ // 尺寸控制
38548
+ widthType: "auto",
38549
+ widthValue: 100,
38550
+ heightType: "auto",
38551
+ heightValue: 100,
38552
+ aspectRatio: "16:9",
38553
+ customAspectRatio: "16:9",
38554
+ maxWidth: 0,
38555
+ maxHeight: 0,
38556
+ // 样式设置
38557
+ borderRadius: 0,
38558
+ // 高级配置
38559
+ customClass: "",
38560
+ customStyle: ""
38561
+ }
37865
38562
  };
37866
38563
  },
37867
- mounted() {},
37868
- watch: {},
38564
+ mounted() {
38565
+ this.initConfigData();
38566
+ },
38567
+ watch: {
38568
+ configData: {
38569
+ handler() {
38570
+ this.updateStyles();
38571
+ },
38572
+ deep: true
38573
+ }
38574
+ },
38575
+ computed: {
38576
+ // 视频类型
38577
+ videoType() {
38578
+ return this.configData.videoType || this.defaultConfig.videoType;
38579
+ },
38580
+ // 实际使用的宽高比
38581
+ actualAspectRatio() {
38582
+ const config = {
38583
+ ...this.defaultConfig,
38584
+ ...this.configData
38585
+ };
38586
+ if (config.aspectRatio === "custom") {
38587
+ return config.customAspectRatio || "16:9";
38588
+ }
38589
+ return config.aspectRatio;
38590
+ },
38591
+ // 容器样式
38592
+ containerStyle() {
38593
+ const config = {
38594
+ ...this.defaultConfig,
38595
+ ...this.configData
38596
+ };
38597
+ return {
38598
+ ...this.parseCustomStyle(config.customStyle)
38599
+ };
38600
+ },
38601
+ // 包装器样式
38602
+ wrapperStyle() {
38603
+ const config = {
38604
+ ...this.defaultConfig,
38605
+ ...this.configData
38606
+ };
38607
+ let width = "auto";
38608
+ let height = "auto";
38609
+
38610
+ // 宽度设置
38611
+ if (config.widthType === "fixed") {
38612
+ width = `${config.widthValue}px`;
38613
+ } else if (config.widthType === "percent") {
38614
+ width = `${config.widthValue}%`;
38615
+ }
38616
+
38617
+ // 高度设置
38618
+ if (config.heightType === "fixed") {
38619
+ height = `${config.heightValue}px`;
38620
+ } else if (config.heightType === "percent") {
38621
+ height = `${config.heightValue}%`;
38622
+ } else if (config.heightType === "aspect") {
38623
+ // 根据宽高比计算高度
38624
+ height = "auto";
38625
+ }
38626
+ return {
38627
+ width,
38628
+ height,
38629
+ maxWidth: config.maxWidth > 0 ? `${config.maxWidth}px` : "none",
38630
+ maxHeight: config.maxHeight > 0 ? `${config.maxHeight}px` : "none",
38631
+ borderRadius: `${config.borderRadius}px`,
38632
+ overflow: "hidden",
38633
+ display: "block",
38634
+ position: "relative"
38635
+ };
38636
+ },
38637
+ // 视频样式
38638
+ videoStyle() {
38639
+ const config = {
38640
+ ...this.defaultConfig,
38641
+ ...this.configData
38642
+ };
38643
+ let style = {
38644
+ width: "100%",
38645
+ height: "100%",
38646
+ display: "block",
38647
+ border: "none",
38648
+ outline: "none"
38649
+ };
38650
+
38651
+ // 如果是宽高比模式,设置aspect-ratio
38652
+ if (config.heightType === "aspect") {
38653
+ style.aspectRatio = this.actualAspectRatio.replace(":", "/");
38654
+ }
38655
+ return style;
38656
+ },
38657
+ // 占位符样式
38658
+ placeholderStyle() {
38659
+ const config = {
38660
+ ...this.defaultConfig,
38661
+ ...this.configData
38662
+ };
38663
+ let width = "100%";
38664
+ let height = "auto";
38665
+
38666
+ // 如果设置了固定尺寸,使用设置的尺寸
38667
+ if (config.widthType === "fixed") {
38668
+ width = `${config.widthValue}px`;
38669
+ } else if (config.widthType === "percent") {
38670
+ width = `${config.widthValue}%`;
38671
+ }
38672
+ if (config.heightType === "fixed") {
38673
+ height = `${config.heightValue}px`;
38674
+ } else if (config.heightType === "aspect") {
38675
+ // 使用aspect-ratio保持16:9比例
38676
+ height = "auto";
38677
+ } else {
38678
+ // 默认使用16:9比例
38679
+ height = "auto";
38680
+ }
38681
+ const style = {
38682
+ width,
38683
+ height,
38684
+ backgroundColor: "#f5f7fa",
38685
+ border: "1px dashed #dcdfe6",
38686
+ borderRadius: `${config.borderRadius}px`,
38687
+ display: "flex",
38688
+ flexDirection: "column",
38689
+ alignItems: "center",
38690
+ justifyContent: "center",
38691
+ color: "#909399",
38692
+ fontSize: "14px"
38693
+ };
38694
+
38695
+ // 如果不是固定高度,使用aspect-ratio保持16:9比例
38696
+ if (config.heightType !== "fixed") {
38697
+ style.aspectRatio = this.actualAspectRatio.replace(":", "/");
38698
+ }
38699
+ return style;
38700
+ }
38701
+ },
37869
38702
  methods: {
38703
+ // 初始化配置数据
38704
+ initConfigData() {
38705
+ this.configData = {
38706
+ ...this.defaultConfig,
38707
+ ...this.configData
38708
+ };
38709
+ },
38710
+ // 获取配置数据
37870
38711
  getConfigData(configData) {
37871
- this.configData = configData;
38712
+ this.configData = {
38713
+ ...this.defaultConfig,
38714
+ ...configData
38715
+ };
38716
+ this.updateStyles();
37872
38717
  },
37873
- foldMessText() {
37874
- this.messFold = !this.messFold;
38718
+ // 更新样式
38719
+ updateStyles() {
38720
+ this.$nextTick(() => {
38721
+ this.$forceUpdate();
38722
+ });
37875
38723
  },
37876
- decodeJumpUrl(url) {
37877
- if (!url) return;
37878
- top.location.href = url;
38724
+ // 视频开始加载
38725
+ onVideoLoadStart() {
38726
+ this.videoLoaded = false;
38727
+ this.videoError = false;
38728
+ },
38729
+ // 视频加载完成
38730
+ onVideoLoaded() {
38731
+ this.videoLoaded = true;
38732
+ this.videoError = false;
38733
+ },
38734
+ // 视频加载失败
38735
+ onVideoError() {
38736
+ this.videoLoaded = false;
38737
+ this.videoError = true;
38738
+ },
38739
+ // 解析自定义样式
38740
+ parseCustomStyle(customStyle) {
38741
+ if (!customStyle) return {};
38742
+ try {
38743
+ const styles = {};
38744
+ const declarations = customStyle.split(";");
38745
+ declarations.forEach(declaration => {
38746
+ const [property, value] = declaration.split(":");
38747
+ if (property && value) {
38748
+ const camelCaseProperty = property.trim().replace(/-([a-z])/g, g => g[1].toUpperCase());
38749
+ styles[camelCaseProperty] = value.trim();
38750
+ }
38751
+ });
38752
+ return styles;
38753
+ } catch (error) {
38754
+ console.warn("解析自定义样式失败:", error);
38755
+ return {};
38756
+ }
37879
38757
  }
37880
38758
  }
37881
38759
  });
37882
- ;// ./package/cms-richText/View.vue?vue&type=script&lang=js
37883
- /* harmony default export */ var cms_richText_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
37884
- ;// ./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-richText/View.vue?vue&type=style&index=0&id=2cd59962&prod&lang=scss&scoped=true
38760
+ ;// ./package/cms-video/View.vue?vue&type=script&lang=js
38761
+ /* harmony default export */ var cms_video_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
38762
+ ;// ./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=b1a44b52&prod&lang=scss&scoped=true
37885
38763
  // extracted by mini-css-extract-plugin
37886
38764
 
37887
- ;// ./package/cms-richText/View.vue?vue&type=style&index=0&id=2cd59962&prod&lang=scss&scoped=true
38765
+ ;// ./package/cms-video/View.vue?vue&type=style&index=0&id=b1a44b52&prod&lang=scss&scoped=true
37888
38766
 
37889
38767
  // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
37890
38768
  var componentNormalizer = __webpack_require__(1656);
37891
- ;// ./package/cms-richText/View.vue
38769
+ ;// ./package/cms-video/View.vue
37892
38770
 
37893
38771
 
37894
38772
 
@@ -37898,12 +38776,12 @@ var componentNormalizer = __webpack_require__(1656);
37898
38776
  /* normalize component */
37899
38777
 
37900
38778
  var component = (0,componentNormalizer/* default */.A)(
37901
- cms_richText_Viewvue_type_script_lang_js,
38779
+ cms_video_Viewvue_type_script_lang_js,
37902
38780
  render,
37903
38781
  staticRenderFns,
37904
38782
  false,
37905
38783
  null,
37906
- "2cd59962",
38784
+ "b1a44b52",
37907
38785
  null
37908
38786
 
37909
38787
  )
@@ -37912,99 +38790,6 @@ var component = (0,componentNormalizer/* default */.A)(
37912
38790
 
37913
38791
  /***/ }),
37914
38792
 
37915
- /***/ 5719:
37916
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
37917
-
37918
- "use strict";
37919
- __webpack_require__.r(__webpack_exports__);
37920
- /* harmony default export */ __webpack_exports__["default"] = ({
37921
- onlinePurchase: '在线购买',
37922
- CMHK: 'CMHK 5G',
37923
- servicePlans: '服务计划',
37924
- broadband: '家居宽频',
37925
- Gband: '5G宽频',
37926
- devices: '手机及装置',
37927
- card: '储值卡服务',
37928
- data: '数据及增值服务',
37929
- IDD: '漫游及IDD',
37930
- policy: '隐私和条款',
37931
- summary: '关键信息摘要',
37932
- customer: '我们的客户修款',
37933
- infomations: '你的资料',
37934
- privacy: '隐私',
37935
- conditions: '服务条款',
37936
- us: '关于我们',
37937
- overview: '公司概览',
37938
- news: '新闻中心',
37939
- notice: '招标公告',
37940
- join: '企业招聘',
37941
- links: '友情链接',
37942
- partnerships: '合作伙伴',
37943
- help: '帮助与支持',
37944
- onlineHelp: '在线帮助与支持',
37945
- education: '客户教学专区',
37946
- fraud: '通讯防诈骗宣传栏目',
37947
- shop: '附近的门店查询',
37948
- contact: '联系我们',
37949
- questions: '常见问题',
37950
- service: '24小时客户服务热线 12580',
37951
- hotline: '销售热线12588 (上午11时至下午8时)',
37952
- follow: '关注或联系我们',
37953
- download: '下载MyLinkApp、关注官方公众号,关注更多信息,享受移动服务',
37954
- account: 'WeChat官方账号',
37955
- bottomText: '© 2023 中国移动香港有限公司版权所有'
37956
- });
37957
-
37958
- /***/ }),
37959
-
37960
- /***/ 5745:
37961
- /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
37962
-
37963
- "use strict";
37964
-
37965
- var store = __webpack_require__(7629);
37966
-
37967
- module.exports = function (key, value) {
37968
- return store[key] || (store[key] = value || {});
37969
- };
37970
-
37971
-
37972
- /***/ }),
37973
-
37974
- /***/ 5786:
37975
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
37976
-
37977
- "use strict";
37978
- __webpack_require__.r(__webpack_exports__);
37979
- /* harmony import */ var _baseConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2128);
37980
-
37981
- const View = () => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 330));
37982
- const langData = {
37983
- argument1: '27202306211671456568424927232'
37984
- };
37985
- const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataType)(langData, {
37986
- argument1: {
37987
- label: "服务计划栏目",
37988
- widgetType: "ServePlanTab"
37989
- }
37990
- });
37991
- const validateSchema = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getValidateSchema)(langData);
37992
- /* harmony default export */ __webpack_exports__["default"] = ({
37993
- View,
37994
- validateSchema,
37995
- configDataType,
37996
- langData,
37997
- settings: cmsCompName => {
37998
- return (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getInitCompData)({
37999
- cmsCompName,
38000
- langData,
38001
- isLangAll: true
38002
- });
38003
- }
38004
- });
38005
-
38006
- /***/ }),
38007
-
38008
38793
  /***/ 5854:
38009
38794
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
38010
38795
 
@@ -38244,6 +39029,18 @@ function queryPageHfList(data) {
38244
39029
  });
38245
39030
  }
38246
39031
 
39032
+ /**
39033
+ * 查询URL接口
39034
+ * @returns {Promise}
39035
+ */
39036
+ function queryUrl(data) {
39037
+ return request({
39038
+ method: "post",
39039
+ url: "/omni-channel-service-console/rest/workBench/queryUrl",
39040
+ data
39041
+ });
39042
+ }
39043
+
38247
39044
  /**
38248
39045
  * 创建页面
38249
39046
  * @param {Object} pageData 页面数据
@@ -38402,11 +39199,18 @@ function emallHeartbeat(data) {
38402
39199
  data
38403
39200
  });
38404
39201
  }
39202
+ function qryBtList(data) {
39203
+ return request({
39204
+ method: "post",
39205
+ url: "/omni-channel-service-console/rest/component/qryBtList",
39206
+ data
39207
+ });
39208
+ }
38405
39209
  // EXTERNAL MODULE: ./node_modules/qs/lib/index.js
38406
39210
  var lib = __webpack_require__(7087);
38407
39211
  var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
38408
39212
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
38409
- var baseComp = __webpack_require__(5651);
39213
+ var baseComp = __webpack_require__(7135);
38410
39214
  ;// ./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
39215
 
38412
39216
 
@@ -38646,6 +39450,14 @@ module.exports = function (key) {
38646
39450
  };
38647
39451
 
38648
39452
 
39453
+ /***/ }),
39454
+
39455
+ /***/ 6148:
39456
+ /***/ (function(module) {
39457
+
39458
+ "use strict";
39459
+ 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";
39460
+
38649
39461
  /***/ }),
38650
39462
 
38651
39463
  /***/ 6193:
@@ -42009,7 +42821,7 @@ var es_iterator_for_each = __webpack_require__(7588);
42009
42821
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.map.js
42010
42822
  var es_iterator_map = __webpack_require__(1701);
42011
42823
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
42012
- var baseComp = __webpack_require__(5651);
42824
+ var baseComp = __webpack_require__(7135);
42013
42825
  ;// ./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
42826
 
42015
42827
 
@@ -42155,7 +42967,7 @@ var render = function render() {
42155
42967
  var staticRenderFns = [];
42156
42968
 
42157
42969
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
42158
- var baseComp = __webpack_require__(5651);
42970
+ var baseComp = __webpack_require__(7135);
42159
42971
  ;// ./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
42972
 
42161
42973
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -42616,329 +43428,6 @@ module.exports = function (iterator, fn, value, ENTRIES) {
42616
43428
  };
42617
43429
 
42618
43430
 
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
43431
  /***/ }),
42943
43432
 
42944
43433
  /***/ 6368:
@@ -43242,7 +43731,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43242
43731
  },
43243
43732
  fontColor: {
43244
43733
  label: "文字颜色",
43245
- widgetType: "el-color-picker"
43734
+ widgetType: "el-color-picker",
43735
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43246
43736
  },
43247
43737
  fontWeight: {
43248
43738
  label: "字体粗细",
@@ -43288,7 +43778,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43288
43778
  // 样式控制配置
43289
43779
  backgroundColor: {
43290
43780
  label: "背景颜色",
43291
- widgetType: "el-color-picker"
43781
+ widgetType: "el-color-picker",
43782
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43292
43783
  },
43293
43784
  borderRadius: {
43294
43785
  label: "圆角(px)",
@@ -43325,7 +43816,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
43325
43816
  },
43326
43817
  borderColor: {
43327
43818
  label: "边框颜色",
43328
- widgetType: "el-color-picker"
43819
+ widgetType: "el-color-picker",
43820
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
43329
43821
  },
43330
43822
  // 空间布局配置
43331
43823
  paddingTop: {
@@ -44029,7 +44521,8 @@ const configDataType = (0,_baseConfig__WEBPACK_IMPORTED_MODULE_0__.getLangDataTy
44029
44521
  },
44030
44522
  color: {
44031
44523
  label: "色值",
44032
- widgetType: "el-color-picker"
44524
+ widgetType: "el-color-picker",
44525
+ predefine: ['#2F85FF', '#f48427', '#52C41A', '#D6197F']
44033
44526
  }
44034
44527
  }]
44035
44528
  },
@@ -44164,7 +44657,7 @@ var swiper = __webpack_require__(828);
44164
44657
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
44165
44658
  var swiper_esm_bundle = __webpack_require__(1532);
44166
44659
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
44167
- var baseComp = __webpack_require__(5651);
44660
+ var baseComp = __webpack_require__(7135);
44168
44661
  ;// ./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
44662
 
44170
44663
 
@@ -44353,6 +44846,272 @@ module.exports = {
44353
44846
 
44354
44847
  /***/ }),
44355
44848
 
44849
+ /***/ 7135:
44850
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
44851
+
44852
+ "use strict";
44853
+ // ESM COMPAT FLAG
44854
+ __webpack_require__.r(__webpack_exports__);
44855
+
44856
+ // EXPORTS
44857
+ __webpack_require__.d(__webpack_exports__, {
44858
+ "default": function() { return /* binding */ baseComp; }
44859
+ });
44860
+
44861
+ ;// ./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
44862
+ var render = function render() {
44863
+ var _vm = this,
44864
+ _c = _vm._self._c;
44865
+ return _vm.$EventBus && _vm.isOpcacity ? _c('div', {
44866
+ key: _vm.data.componentId,
44867
+ class: [_vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? 'highLight' : ''],
44868
+ style: _vm.showStyleConfig,
44869
+ attrs: {
44870
+ "component-key": _vm.data.cmsCompName
44871
+ },
44872
+ on: {
44873
+ "click": function ($event) {
44874
+ $event.stopPropagation();
44875
+ return _vm.handleNowComp.apply(null, arguments);
44876
+ }
44877
+ }
44878
+ }, [_c('div', {
44879
+ staticClass: "mask-wrap"
44880
+ }, [_vm._t("default", null, {
44881
+ "isMobile": _vm.isMobile
44882
+ }), _vm.isMask ? _c('div', {
44883
+ staticClass: "mask",
44884
+ on: {
44885
+ "click": _vm.handleNowComp
44886
+ }
44887
+ }) : _vm._e()], 2), _vm.nowCompId !== '' && _vm.nowCompId == _vm.data.componentId ? _c('div', {
44888
+ staticClass: "com-delete"
44889
+ }, [_vm.showDel ? _c('i', {
44890
+ staticClass: "el-icon-delete",
44891
+ on: {
44892
+ "click": function ($event) {
44893
+ $event.stopPropagation();
44894
+ return _vm.delComp.apply(null, arguments);
44895
+ }
44896
+ }
44897
+ }) : _vm._e(), _c('i', {
44898
+ staticClass: "el-icon-top",
44899
+ on: {
44900
+ "click": function ($event) {
44901
+ $event.stopPropagation();
44902
+ return _vm.selectParentDom.apply(null, arguments);
44903
+ }
44904
+ }
44905
+ })]) : _vm._e()]) : _vm.showSlot ? _c('div', {
44906
+ key: _vm.data.componentId,
44907
+ ref: "targetElement",
44908
+ style: _vm.showStyleConfig
44909
+ }, [_vm._t("default")], 2) : _vm._e();
44910
+ };
44911
+ var staticRenderFns = [];
44912
+
44913
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
44914
+ var es_iterator_constructor = __webpack_require__(8111);
44915
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.reduce.js
44916
+ var es_iterator_reduce = __webpack_require__(8237);
44917
+ // EXTERNAL MODULE: ./package/patch.js
44918
+ var patch = __webpack_require__(4229);
44919
+ // EXTERNAL MODULE: ./node_modules/dayjs/dayjs.min.js
44920
+ var dayjs_min = __webpack_require__(8655);
44921
+ var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
44922
+ ;// ./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
44923
+
44924
+
44925
+
44926
+
44927
+ // 待办:判断移动pc端填充不同的样式
44928
+
44929
+
44930
+ /* harmony default export */ var baseCompvue_type_script_lang_js = ({
44931
+ name: "baseComp",
44932
+ props: {
44933
+ data: {
44934
+ type: Object,
44935
+ default: () => {
44936
+ return {};
44937
+ }
44938
+ },
44939
+ nowCompId: {
44940
+ type: [String, Number],
44941
+ default: ""
44942
+ },
44943
+ isOpcacity: {
44944
+ type: Boolean,
44945
+ default: true
44946
+ },
44947
+ isMask: {
44948
+ type: Boolean,
44949
+ default: true
44950
+ },
44951
+ lang: {
44952
+ type: String,
44953
+ default: "zh-HK"
44954
+ },
44955
+ timeline: {
44956
+ type: String,
44957
+ default: ""
44958
+ },
44959
+ cmhkChannel: {
44960
+ type: String,
44961
+ default: "WWW"
44962
+ },
44963
+ showDel: {
44964
+ type: Boolean,
44965
+ default: true
44966
+ }
44967
+ },
44968
+ data() {
44969
+ return {
44970
+ styleConfig_mb: {},
44971
+ styleConfig_pc: {},
44972
+ configData: {},
44973
+ elementWidth: 0,
44974
+ resizeObserver: null
44975
+ };
44976
+ },
44977
+ watch: {
44978
+ data: {
44979
+ handler(val) {
44980
+ this.getStyleConfig(val, "pc");
44981
+ this.getStyleConfig(val, "mb");
44982
+ this.getValue(this.lang);
44983
+ },
44984
+ deep: true,
44985
+ immediate: true
44986
+ },
44987
+ lang: {
44988
+ handler(val) {
44989
+ this.getValue(val);
44990
+ },
44991
+ deep: true,
44992
+ immediate: true
44993
+ }
44994
+ },
44995
+ mounted() {
44996
+ if (this.$EventBus && this.isOpcacity) {
44997
+ this.elementWidth = 800;
44998
+ this.$EventBus.$on("handleDeviceChange", isMobile => {
44999
+ this.elementWidth = isMobile ? 700 : 800;
45000
+ });
45001
+ } else if (this.showSlot) {
45002
+ this.resizeObserver = new ResizeObserver(entries => {
45003
+ for (let entry of entries) {
45004
+ this.elementWidth = entry.contentRect.width;
45005
+ // 可以在这里触发自定义逻辑
45006
+ // this.onWidthChange(this.elementWidth);
45007
+ }
45008
+ });
45009
+ const element = document.getElementById("app") || document.getElementById("__nuxt");
45010
+ this.resizeObserver.observe(element);
45011
+ }
45012
+ },
45013
+ beforeDestroy() {
45014
+ // 组件销毁时停止观察
45015
+ if (this.resizeObserver) {
45016
+ this.resizeObserver.disconnect();
45017
+ }
45018
+ },
45019
+ methods: {
45020
+ selectParentDom() {
45021
+ if (!this.isOpcacity) return;
45022
+ this.$EventBus.$emit("handleParentComp", this.data);
45023
+ },
45024
+ onWidthChange(newWidth) {
45025
+ console.log("新宽度:", newWidth, this.isMobile);
45026
+ },
45027
+ getValue(cur_lang) {
45028
+ var _this$data, _this$data$settings;
45029
+ const obj = {
45030
+ "zh-CN": "lang_sc",
45031
+ "zh-HK": "lang_tc",
45032
+ "en-US": "lang_en"
45033
+ };
45034
+ 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) {
45035
+ const baseInfo = (0,patch.transfor)(this.data);
45036
+ this.configData = baseInfo.contentConfig.lang_all ? baseInfo.contentConfig.lang_all : baseInfo.contentConfig[`${obj[cur_lang]}`];
45037
+ } else {
45038
+ this.configData = this.data.contentConfig.lang_all ? this.data.contentConfig.lang_all : this.data.contentConfig[`${obj[cur_lang]}`];
45039
+ }
45040
+ this.$emit("getConfigData", this.configData);
45041
+ },
45042
+ getStyleConfig(data, type) {
45043
+ this[`styleConfig_${type}`] = data.styleConfig[type].reduce((pre, cur) => {
45044
+ pre[cur.key] = cur.value + cur.unit;
45045
+ return pre;
45046
+ }, {});
45047
+ },
45048
+ handleNowComp() {
45049
+ if (!this.isOpcacity) return;
45050
+ this.$EventBus.$emit("handleNowComp", this.data);
45051
+ },
45052
+ delComp() {
45053
+ this.$EventBus.$emit("handleDeleteComp", this.data.componentId);
45054
+ }
45055
+ },
45056
+ computed: {
45057
+ showStyleConfig() {
45058
+ if (!this.elementWidth) return {};
45059
+ return this.isMobile ? this.styleConfig_mb : this.styleConfig_pc;
45060
+ },
45061
+ isMobile() {
45062
+ return this.elementWidth < 760;
45063
+ },
45064
+ showSlot() {
45065
+ if (this.$EventBus && this.isOpcacity) return false;
45066
+ const {
45067
+ cmhkChannelConfList = [],
45068
+ startTime = "",
45069
+ endTime = ""
45070
+ } = this.data.baseConfig;
45071
+ console.log("this.cmhkChannel", this.cmhkChannel, this.data.baseConfig);
45072
+ const channelVisable = cmhkChannelConfList.includes("ALL") || cmhkChannelConfList.includes(this.cmhkChannel);
45073
+ if (!channelVisable) return false;
45074
+ if (!startTime && !endTime) return true;
45075
+ const currentTime = this.timeline ? dayjs_min_default()(this.timeline) : dayjs_min_default()();
45076
+ const isStart = startTime ? dayjs_min_default()(currentTime).isAfter(dayjs_min_default()(startTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(startTime)) : true;
45077
+ const isEnd = endTime ? dayjs_min_default()(currentTime).isBefore(dayjs_min_default()(endTime)) || dayjs_min_default()(currentTime).isSame(dayjs_min_default()(endTime)) : true;
45078
+ return isStart && isEnd;
45079
+ }
45080
+ }
45081
+ });
45082
+ ;// ./package/baseComp.vue?vue&type=script&lang=js
45083
+ /* harmony default export */ var package_baseCompvue_type_script_lang_js = (baseCompvue_type_script_lang_js);
45084
+ ;// ./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
45085
+ // extracted by mini-css-extract-plugin
45086
+
45087
+ ;// ./package/baseComp.vue?vue&type=style&index=0&id=e19eaa9e&prod&lang=scss&scoped=true
45088
+
45089
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
45090
+ var componentNormalizer = __webpack_require__(1656);
45091
+ ;// ./package/baseComp.vue
45092
+
45093
+
45094
+
45095
+ ;
45096
+
45097
+
45098
+ /* normalize component */
45099
+
45100
+ var component = (0,componentNormalizer/* default */.A)(
45101
+ package_baseCompvue_type_script_lang_js,
45102
+ render,
45103
+ staticRenderFns,
45104
+ false,
45105
+ null,
45106
+ "e19eaa9e",
45107
+ null
45108
+
45109
+ )
45110
+
45111
+ /* harmony default export */ var baseComp = (component.exports);
45112
+
45113
+ /***/ }),
45114
+
44356
45115
  /***/ 7210:
44357
45116
  /***/ (function(module) {
44358
45117
 
@@ -44948,7 +45707,7 @@ var render = function render() {
44948
45707
  var staticRenderFns = [];
44949
45708
 
44950
45709
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
44951
- var baseComp = __webpack_require__(5651);
45710
+ var baseComp = __webpack_require__(7135);
44952
45711
  // EXTERNAL MODULE: ./package/patch.js
44953
45712
  var patch = __webpack_require__(4229);
44954
45713
  ;// ./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 +45893,7 @@ var es_iterator_filter = __webpack_require__(2489);
45134
45893
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
45135
45894
  var es_iterator_for_each = __webpack_require__(7588);
45136
45895
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
45137
- var baseComp = __webpack_require__(5651);
45896
+ var baseComp = __webpack_require__(7135);
45138
45897
  ;// ./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
45898
 
45140
45899
 
@@ -45733,7 +46492,7 @@ var swiper = __webpack_require__(828);
45733
46492
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
45734
46493
  var swiper_esm_bundle = __webpack_require__(1532);
45735
46494
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
45736
- var baseComp = __webpack_require__(5651);
46495
+ var baseComp = __webpack_require__(7135);
45737
46496
  ;// ./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
46497
 
45739
46498
 
@@ -45896,6 +46655,181 @@ if (params.has('a', 2) || !params.has('a', undefined)) {
45896
46655
  }
45897
46656
 
45898
46657
 
46658
+ /***/ }),
46659
+
46660
+ /***/ 7583:
46661
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
46662
+
46663
+ "use strict";
46664
+ // ESM COMPAT FLAG
46665
+ __webpack_require__.r(__webpack_exports__);
46666
+
46667
+ // EXPORTS
46668
+ __webpack_require__.d(__webpack_exports__, {
46669
+ "default": function() { return /* binding */ View; }
46670
+ });
46671
+
46672
+ ;// ./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
46673
+ var render = function render() {
46674
+ var _vm = this,
46675
+ _c = _vm._self._c;
46676
+ return _c('BaseComp', _vm._b({
46677
+ attrs: {
46678
+ "data": _vm.data,
46679
+ "nowCompId": _vm.nowCompId,
46680
+ "isOpcacity": _vm.isOpcacity,
46681
+ "isMask": false,
46682
+ "lang": _vm.lang
46683
+ },
46684
+ on: {
46685
+ "getConfigData": _vm.getConfigData
46686
+ }
46687
+ }, 'BaseComp', _vm.$attrs, false), [_c('section', {
46688
+ staticClass: "cmhk-home_main"
46689
+ }, [_c('div', {
46690
+ staticClass: "wrap",
46691
+ style: {
46692
+ 'grid-template-columns': `repeat(${_vm.configData.colNums}, 1fr)`,
46693
+ 'grid-gap': `${_vm.configData.gap}px`
46694
+ }
46695
+ }, _vm._l(_vm.showVideoList, function (item) {
46696
+ return _c('cms-image', {
46697
+ key: item.componentId,
46698
+ staticStyle: {
46699
+ "overflow": "hidden"
46700
+ },
46701
+ attrs: {
46702
+ "data": item,
46703
+ "nowCompId": _vm.nowCompId,
46704
+ "isOpcacity": _vm.isOpcacity,
46705
+ "isMask": false,
46706
+ "lang": _vm.lang
46707
+ }
46708
+ });
46709
+ }), 1), _vm.isShowPannel ? [_c('div', {
46710
+ staticClass: "view-more-container"
46711
+ }, [_c('div', {
46712
+ staticClass: "view-more-btn",
46713
+ on: {
46714
+ "click": _vm.foldMessText
46715
+ }
46716
+ }, [_c('span', {
46717
+ staticClass: "view-more-text"
46718
+ }, [_vm._v(" " + _vm._s(_vm.messFold ? _vm.$t("roamIndex.Collpase") : _vm.$t("roamIndex.More")) + " ")]), _c('i', {
46719
+ class: ['view-more-icon', _vm.messFold ? 'el-icon-arrow-up' : 'el-icon-arrow-down']
46720
+ })])])] : _vm._e()], 2)]);
46721
+ };
46722
+ var staticRenderFns = [];
46723
+
46724
+ // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46725
+ var baseComp = __webpack_require__(7135);
46726
+ ;// ./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
46727
+
46728
+ /* harmony default export */ var Viewvue_type_script_lang_js = ({
46729
+ name: "cms-image-group",
46730
+ components: {
46731
+ BaseComp: baseComp["default"]
46732
+ },
46733
+ props: {
46734
+ data: {
46735
+ type: Object,
46736
+ default: () => {
46737
+ return {};
46738
+ }
46739
+ },
46740
+ nowCompId: {
46741
+ type: [String, Number],
46742
+ default: ""
46743
+ },
46744
+ isOpcacity: {
46745
+ type: Boolean,
46746
+ default: true
46747
+ },
46748
+ lang: {
46749
+ type: String,
46750
+ default: "zh-HK"
46751
+ }
46752
+ },
46753
+ data() {
46754
+ return {
46755
+ configData: {},
46756
+ messFold: false,
46757
+ // 默认配置数据
46758
+ isShowPannel: false
46759
+ };
46760
+ },
46761
+ mounted() {},
46762
+ watch: {
46763
+ configData: {
46764
+ handler() {
46765
+ this.updateStyles();
46766
+ },
46767
+ deep: true
46768
+ }
46769
+ },
46770
+ computed: {
46771
+ showVideoList() {
46772
+ if (this.isShowPannel && !this.messFold) return this.data.childList.slice(0, this.configData.colNums * this.configData.defaultCol);
46773
+ return this.data.childList;
46774
+ },
46775
+ isConfigPage() {
46776
+ return this.$EventBus && this.isOpcacity;
46777
+ }
46778
+ },
46779
+ methods: {
46780
+ // 获取配置数据
46781
+ getConfigData(configData) {
46782
+ this.configData = {
46783
+ ...this.defaultConfig,
46784
+ ...configData
46785
+ };
46786
+ this.updateStyles();
46787
+ this.isShowPannel = this.configData.colNums * this.configData.defaultCol < this.data.childList.length;
46788
+ },
46789
+ // 更新样式
46790
+ updateStyles() {
46791
+ this.$nextTick(() => {
46792
+ // 触发样式更新
46793
+ this.$forceUpdate();
46794
+ });
46795
+ },
46796
+ // 折叠/展开文本
46797
+ foldMessText() {
46798
+ this.messFold = !this.messFold;
46799
+ }
46800
+ }
46801
+ });
46802
+ ;// ./package/cms-image-group/View.vue?vue&type=script&lang=js
46803
+ /* harmony default export */ var cms_image_group_Viewvue_type_script_lang_js = (Viewvue_type_script_lang_js);
46804
+ ;// ./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
46805
+ // extracted by mini-css-extract-plugin
46806
+
46807
+ ;// ./package/cms-image-group/View.vue?vue&type=style&index=0&id=7cb50abc&prod&lang=scss&scoped=true
46808
+
46809
+ // EXTERNAL MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
46810
+ var componentNormalizer = __webpack_require__(1656);
46811
+ ;// ./package/cms-image-group/View.vue
46812
+
46813
+
46814
+
46815
+ ;
46816
+
46817
+
46818
+ /* normalize component */
46819
+
46820
+ var component = (0,componentNormalizer/* default */.A)(
46821
+ cms_image_group_Viewvue_type_script_lang_js,
46822
+ render,
46823
+ staticRenderFns,
46824
+ false,
46825
+ null,
46826
+ "7cb50abc",
46827
+ null
46828
+
46829
+ )
46830
+
46831
+ /* harmony default export */ var View = (component.exports);
46832
+
45899
46833
  /***/ }),
45900
46834
 
45901
46835
  /***/ 7588:
@@ -45933,6 +46867,7 @@ $({ target: 'Iterator', proto: true, real: true }, {
45933
46867
  __webpack_require__.r(__webpack_exports__);
45934
46868
  /* harmony default export */ __webpack_exports__["default"] = ({
45935
46869
  Expand: "Expand",
46870
+ More: "More",
45936
46871
  Collpase: "Collpase",
45937
46872
  discount: 'Discount period:'
45938
46873
  });
@@ -46304,7 +47239,7 @@ var swiper_esm_bundle = __webpack_require__(1532);
46304
47239
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
46305
47240
  var jumpUrl = __webpack_require__(4102);
46306
47241
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46307
- var baseComp = __webpack_require__(5651);
47242
+ var baseComp = __webpack_require__(7135);
46308
47243
  ;// ./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
47244
 
46310
47245
 
@@ -46611,7 +47546,7 @@ var render = function render() {
46611
47546
  var staticRenderFns = [];
46612
47547
 
46613
47548
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46614
- var baseComp = __webpack_require__(5651);
47549
+ var baseComp = __webpack_require__(7135);
46615
47550
  ;// ./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
47551
 
46617
47552
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -46823,7 +47758,7 @@ var render = function render() {
46823
47758
  var staticRenderFns = [];
46824
47759
 
46825
47760
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
46826
- var baseComp = __webpack_require__(5651);
47761
+ var baseComp = __webpack_require__(7135);
46827
47762
  // EXTERNAL MODULE: ./src/utils/jumpUrl.js
46828
47763
  var jumpUrl = __webpack_require__(4102);
46829
47764
  // EXTERNAL MODULE: ./node_modules/vue/dist/vue.runtime.esm.js
@@ -47296,7 +48231,7 @@ var render = function render() {
47296
48231
  var staticRenderFns = [];
47297
48232
 
47298
48233
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
47299
- var baseComp = __webpack_require__(5651);
48234
+ var baseComp = __webpack_require__(7135);
47300
48235
  ;// ./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
48236
 
47302
48237
  /* harmony default export */ var Viewvue_type_script_lang_js = ({
@@ -48573,7 +49508,7 @@ var swiper = __webpack_require__(828);
48573
49508
  // EXTERNAL MODULE: ./node_modules/swiper/dist/js/swiper.esm.bundle.js + 3 modules
48574
49509
  var swiper_esm_bundle = __webpack_require__(1532);
48575
49510
  // EXTERNAL MODULE: ./package/baseComp.vue + 5 modules
48576
- var baseComp = __webpack_require__(5651);
49511
+ var baseComp = __webpack_require__(7135);
48577
49512
  ;// ./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
49513
 
48579
49514
 
@@ -49119,276 +50054,6 @@ module.exports = URIError;
49119
50054
 
49120
50055
  /***/ }),
49121
50056
 
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
50057
  /***/ 8981:
49393
50058
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
49394
50059
 
@@ -52424,6 +53089,7 @@ $({ target: 'Iterator', proto: true, real: true, forced: IS_PURE }, {
52424
53089
  __webpack_require__.r(__webpack_exports__);
52425
53090
  /* harmony default export */ __webpack_exports__["default"] = ({
52426
53091
  Expand: "展開",
53092
+ More: "查看更多",
52427
53093
  Collpase: "收起",
52428
53094
  discount: '優惠期限:'
52429
53095
  });
@@ -55263,7 +55929,7 @@ service.interceptors.request.use(config => {
55263
55929
  if (config.url.includes("/ecosp-console")) {
55264
55930
  document.cookie = "JSESSIONID=node017nm2falxdfe8c1parzfv9ilr29.node0";
55265
55931
  } else if (config.url.includes("omni-channel-service-console")) {
55266
- document.cookie = "JSESSIONID=78E8137DAEC4660E6E4A6310CAB2B300";
55932
+ document.cookie = "JSESSIONID=CA4058E3A195113C85AE1F926814CF89";
55267
55933
  }
55268
55934
  } else {
55269
55935
  if (config.url.includes("/api/") && is_cmsComp) {