km-card-layout-component-miniprogram 0.1.33 → 0.1.35

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.
@@ -46,7 +46,6 @@
46
46
  word-break: break-all;
47
47
  word-wrap: break-word;
48
48
  white-space: pre-wrap;
49
- vertical-align: bottom;
50
49
  }
51
50
 
52
51
  .km-node__text-icon--wrapper {
@@ -37,6 +37,7 @@ function normalizeMoreCompany(data) {
37
37
  };
38
38
  }
39
39
  exports.normalizeMoreCompany = normalizeMoreCompany;
40
+ const delay = (ms = 200) => new Promise((resolve) => setTimeout(resolve, ms));
40
41
  const pickCardId = (layout, idx) => {
41
42
  if (layout && (layout.name || layout.id))
42
43
  return layout.name || layout.id;
@@ -103,8 +104,11 @@ Component({
103
104
  const cards = buildCards(normalizedLayouts);
104
105
  this.setData({ cards, rootData, firstCard: [cards[0]] });
105
106
  },
106
- async handleDrawCanvas() {
107
+ async handleDrawCanvas(options) {
107
108
  try {
109
+ if ((options === null || options === void 0 ? void 0 : options.delay) !== false) {
110
+ await delay(200);
111
+ }
108
112
  const canvas = this.selectComponent(`#layout-canvas`);
109
113
  await canvas.draw(this);
110
114
  const filePath = await canvas.toTempFilePath();
@@ -116,7 +120,9 @@ Component({
116
120
  },
117
121
  async handleDrawShareCanvas() {
118
122
  var _a, _b, _c;
119
- const layoutPath = await this.handleDrawCanvas();
123
+ // 分享流程统一延迟一次
124
+ await delay(200);
125
+ const layoutPath = await this.handleDrawCanvas({ delay: false });
120
126
  if (!layoutPath)
121
127
  return;
122
128
  const shareCanvas = this.selectComponent(`#share-canvas`);
@@ -3,7 +3,7 @@
3
3
  <image
4
4
  class="share-card share-item"
5
5
  src="{{shareImage}}"
6
- mode="scaleToFill"
6
+ mode="widthFix"
7
7
  style="margin-left: {{shareOffsetX}}rpx; margin-top: {{shareOffsetY}}rpx;"
8
8
  />
9
9
  <image class="share-bg share-item" src="{{shareBgImage}}" />
@@ -3,6 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  width: 422rpx;
5
5
  height: 338rpx;
6
+ overflow: hidden;
6
7
  }
7
8
 
8
9
  .share-hidden {
@@ -23,7 +24,6 @@
23
24
 
24
25
  .share-card {
25
26
  width: 402rpx;
26
- height: 247rpx;
27
27
  border-radius: 16rpx;
28
28
  z-index: 10;
29
29
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "km-card-layout-component-miniprogram",
3
- "version": "0.1.33",
3
+ "version": "0.1.35",
4
4
  "description": "",
5
5
  "main": "miniprogram_dist/index.js",
6
6
  "miniprogram": "miniprogram_dist",
@@ -46,7 +46,6 @@
46
46
  word-break: break-all;
47
47
  word-wrap: break-word;
48
48
  white-space: pre-wrap;
49
- vertical-align: bottom;
50
49
  }
51
50
 
52
51
  .km-node__text-icon--wrapper {
@@ -63,6 +63,8 @@ type RenderCard = {
63
63
  elements: RenderElement[];
64
64
  };
65
65
 
66
+ const delay = (ms = 200) => new Promise((resolve) => setTimeout(resolve, ms));
67
+
66
68
  const pickCardId = (layout: any, idx: number) => {
67
69
  if (layout && (layout.name || layout.id)) return layout.name || layout.id;
68
70
  return `card-${idx}`;
@@ -131,8 +133,11 @@ Component({
131
133
  this.setData({ cards, rootData, firstCard: [cards[0]] });
132
134
  },
133
135
 
134
- async handleDrawCanvas() {
136
+ async handleDrawCanvas(options?: { delay?: boolean }) {
135
137
  try {
138
+ if (options?.delay !== false) {
139
+ await delay(200);
140
+ }
136
141
  const canvas = this.selectComponent(`#layout-canvas`);
137
142
  await canvas.draw(this);
138
143
  const filePath = await canvas.toTempFilePath();
@@ -143,7 +148,10 @@ Component({
143
148
  },
144
149
 
145
150
  async handleDrawShareCanvas() {
146
- const layoutPath = await this.handleDrawCanvas();
151
+ // 分享流程统一延迟一次
152
+ await delay(200);
153
+
154
+ const layoutPath = await this.handleDrawCanvas({ delay: false });
147
155
  if (!layoutPath) return;
148
156
 
149
157
  const shareCanvas = this.selectComponent(`#share-canvas`) as any;
@@ -154,6 +162,7 @@ Component({
154
162
  layoutPath,
155
163
  shareStyleId,
156
164
  });
165
+
157
166
  if (filePath) {
158
167
  this.setData({ shareImage: filePath });
159
168
  }
@@ -3,7 +3,7 @@
3
3
  <image
4
4
  class="share-card share-item"
5
5
  src="{{shareImage}}"
6
- mode="scaleToFill"
6
+ mode="widthFix"
7
7
  style="margin-left: {{shareOffsetX}}rpx; margin-top: {{shareOffsetY}}rpx;"
8
8
  />
9
9
  <image class="share-bg share-item" src="{{shareBgImage}}" />
@@ -3,6 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  width: 422rpx;
5
5
  height: 338rpx;
6
+ overflow: hidden;
6
7
  }
7
8
 
8
9
  .share-hidden {
@@ -23,7 +24,6 @@
23
24
 
24
25
  .share-card {
25
26
  width: 402rpx;
26
- height: 247rpx;
27
27
  border-radius: 16rpx;
28
28
  z-index: 10;
29
29
  }
@@ -10,6 +10,7 @@ export interface TemplateBackground {
10
10
  fontColor?: string;
11
11
  fontColorExtra?: { name: string | string[]; color: string }[];
12
12
  imgUrl: string;
13
+ previewImg?: string;
13
14
  }
14
15
 
15
16
  /**