ts-glitter 13.4.8 → 13.5.0

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.
Files changed (190) hide show
  1. package/lowcode/Entry.js +1 -1
  2. package/lowcode/Entry.ts +1 -2
  3. package/lowcode/backend-manager/bg-blog.js +691 -761
  4. package/lowcode/backend-manager/bg-blog.ts +956 -1041
  5. package/lowcode/backend-manager/bg-graph-api.js +3 -3
  6. package/lowcode/backend-manager/bg-graph-api.ts +3 -5
  7. package/lowcode/backend-manager/bg-guide.js +69 -24
  8. package/lowcode/backend-manager/bg-guide.ts +82 -27
  9. package/lowcode/backend-manager/bg-line.js +18 -18
  10. package/lowcode/backend-manager/bg-line.ts +18 -35
  11. package/lowcode/backend-manager/bg-notify.js +18 -18
  12. package/lowcode/backend-manager/bg-notify.ts +18 -34
  13. package/lowcode/backend-manager/bg-project.js +11 -11
  14. package/lowcode/backend-manager/bg-project.ts +11 -20
  15. package/lowcode/backend-manager/bg-recommend.js +656 -652
  16. package/lowcode/backend-manager/bg-recommend.ts +31 -40
  17. package/lowcode/backend-manager/bg-seo.js +25 -20
  18. package/lowcode/backend-manager/bg-seo.ts +121 -105
  19. package/lowcode/backend-manager/bg-shopping.js +14 -14
  20. package/lowcode/backend-manager/bg-shopping.ts +14 -25
  21. package/lowcode/backend-manager/bg-sns.js +18 -18
  22. package/lowcode/backend-manager/bg-sns.ts +18 -34
  23. package/lowcode/backend-manager/bg-wallet.js +5 -5
  24. package/lowcode/backend-manager/bg-wallet.ts +5 -7
  25. package/lowcode/backend-manager/bg-widget.js +25 -14
  26. package/lowcode/backend-manager/bg-widget.ts +43 -17
  27. package/lowcode/cms-plugin/ai-points-list.js +54 -57
  28. package/lowcode/cms-plugin/ai-points-list.ts +55 -63
  29. package/lowcode/cms-plugin/ai-points.js +2 -2
  30. package/lowcode/cms-plugin/ai-points.ts +2 -4
  31. package/lowcode/cms-plugin/app-release.js +45 -46
  32. package/lowcode/cms-plugin/app-release.ts +221 -209
  33. package/lowcode/cms-plugin/auto-reply.js +3 -3
  34. package/lowcode/cms-plugin/auto-reply.ts +3 -5
  35. package/lowcode/cms-plugin/form-setting.js +6 -6
  36. package/lowcode/cms-plugin/form-setting.ts +6 -10
  37. package/lowcode/cms-plugin/line-auto-reply.js +3 -3
  38. package/lowcode/cms-plugin/line-auto-reply.ts +3 -5
  39. package/lowcode/cms-plugin/member-group-list.js +2 -2
  40. package/lowcode/cms-plugin/member-group-list.ts +2 -3
  41. package/lowcode/cms-plugin/member-setting.js +75 -88
  42. package/lowcode/cms-plugin/member-setting.ts +143 -157
  43. package/lowcode/cms-plugin/member-type-list.js +243 -240
  44. package/lowcode/cms-plugin/member-type-list.ts +14 -19
  45. package/lowcode/cms-plugin/menus-setting.js +2 -2
  46. package/lowcode/cms-plugin/menus-setting.ts +2 -4
  47. package/lowcode/cms-plugin/permission-setting.js +17 -18
  48. package/lowcode/cms-plugin/permission-setting.ts +145 -147
  49. package/lowcode/cms-plugin/pos-checkout-setting.js +7 -10
  50. package/lowcode/cms-plugin/pos-checkout-setting.ts +174 -179
  51. package/lowcode/cms-plugin/shopping-collections.js +224 -218
  52. package/lowcode/cms-plugin/shopping-collections.ts +152 -153
  53. package/lowcode/cms-plugin/shopping-discount-setting.js +855 -852
  54. package/lowcode/cms-plugin/shopping-discount-setting.ts +14 -18
  55. package/lowcode/cms-plugin/shopping-finance-setting.js +259 -265
  56. package/lowcode/cms-plugin/shopping-finance-setting.ts +273 -284
  57. package/lowcode/cms-plugin/shopping-order-manager.js +520 -497
  58. package/lowcode/cms-plugin/shopping-order-manager.ts +347 -325
  59. package/lowcode/cms-plugin/shopping-order-return.js +10 -9
  60. package/lowcode/cms-plugin/shopping-order-return.ts +23 -27
  61. package/lowcode/cms-plugin/shopping-product-setting.js +1079 -1055
  62. package/lowcode/cms-plugin/shopping-product-setting.ts +348 -337
  63. package/lowcode/cms-plugin/shopping-product-stock.js +2 -2
  64. package/lowcode/cms-plugin/shopping-product-stock.ts +2 -3
  65. package/lowcode/cms-plugin/shopping-product-text.js +32 -36
  66. package/lowcode/cms-plugin/shopping-product-text.ts +78 -81
  67. package/lowcode/cms-plugin/shopping-rebate-setting.js +321 -316
  68. package/lowcode/cms-plugin/shopping-rebate-setting.ts +15 -17
  69. package/lowcode/cms-plugin/shopping-rebate.js +102 -59
  70. package/lowcode/cms-plugin/shopping-rebate.ts +110 -71
  71. package/lowcode/cms-plugin/shopping-shipment-setting.js +382 -426
  72. package/lowcode/cms-plugin/shopping-shipment-setting.ts +489 -531
  73. package/lowcode/cms-plugin/sms-points.js +2 -2
  74. package/lowcode/cms-plugin/sms-points.ts +2 -4
  75. package/lowcode/cms-plugin/sns-auto-reply.js +3 -3
  76. package/lowcode/cms-plugin/sns-auto-reply.ts +3 -5
  77. package/lowcode/cms-plugin/third-party-apple.js +22 -28
  78. package/lowcode/cms-plugin/third-party-apple.ts +189 -191
  79. package/lowcode/cms-plugin/third-party-facebook.js +31 -32
  80. package/lowcode/cms-plugin/third-party-facebook.ts +240 -234
  81. package/lowcode/cms-plugin/third-party-google.js +33 -29
  82. package/lowcode/cms-plugin/third-party-google.ts +216 -202
  83. package/lowcode/cms-plugin/third-party-line.js +19 -22
  84. package/lowcode/cms-plugin/third-party-line.ts +166 -162
  85. package/lowcode/cms-plugin/user-list.js +449 -441
  86. package/lowcode/cms-plugin/user-list.ts +63 -65
  87. package/lowcode/cms-plugin/user-login-setting.js +2 -2
  88. package/lowcode/cms-plugin/user-login-setting.ts +2 -5
  89. package/lowcode/cms-plugin/wallet-list.js +5 -5
  90. package/lowcode/cms-plugin/wallet-list.ts +5 -7
  91. package/lowcode/cms-plugin/web-config-setting.js +5 -5
  92. package/lowcode/cms-plugin/web-config-setting.ts +5 -8
  93. package/lowcode/cms-plugin/widget-manager.js +1 -1
  94. package/lowcode/cms-plugin/widget-manager.ts +1 -2
  95. package/lowcode/css/editor.css +12 -1
  96. package/lowcode/glitter-base/route/shopping.js +17 -0
  97. package/lowcode/glitter-base/route/shopping.ts +17 -0
  98. package/lowcode/glitter-base/route/user.js +2 -2
  99. package/lowcode/glitter-base/route/user.ts +26 -27
  100. package/lowcode/glitterBundle/Glitter.js +1 -1
  101. package/lowcode/glitterBundle/Glitter.ts +1 -1
  102. package/lowcode/jspage/editor.js +1 -1
  103. package/lowcode/jspage/editor.ts +1 -1
  104. package/lowcode/jspage/function-page/server-editor/router/api-manager.js +4 -4
  105. package/lowcode/jspage/function-page/server-editor/router/api-manager.ts +4 -6
  106. package/lowcode/jspage/function-page/server-editor/router/database.js +8 -8
  107. package/lowcode/jspage/function-page/server-editor/router/database.ts +53 -48
  108. package/lowcode/jspage/function-page/server-editor/router/domain-manager.js +2 -2
  109. package/lowcode/jspage/function-page/server-editor/router/domain-manager.ts +2 -3
  110. package/lowcode/jspage/function-page/server-editor/router/server-status.js +50 -38
  111. package/lowcode/jspage/function-page/server-editor/router/server-status.ts +93 -76
  112. package/lowcode/jspage/main.js +9 -5
  113. package/lowcode/jspage/main.ts +9 -7
  114. package/lowcode/view-model/saas-view-model.js +454 -285
  115. package/lowcode/view-model/saas-view-model.ts +917 -722
  116. package/package.json +1 -1
  117. package/src/api-public/controllers/ai-points.js.map +1 -1
  118. package/src/api-public/controllers/chat.js.map +1 -1
  119. package/src/api-public/controllers/delivery.js.map +1 -1
  120. package/src/api-public/controllers/fb-message.js.map +1 -1
  121. package/src/api-public/controllers/index.js.map +1 -1
  122. package/src/api-public/controllers/invoice.js.map +1 -1
  123. package/src/api-public/controllers/line-message.js.map +1 -1
  124. package/src/api-public/controllers/oauth.js.map +1 -1
  125. package/src/api-public/controllers/rebate.js.map +1 -1
  126. package/src/api-public/controllers/recommend.js.map +1 -1
  127. package/src/api-public/controllers/sms-points.js.map +1 -1
  128. package/src/api-public/controllers/wallet.js.map +1 -1
  129. package/src/api-public/services/EcInvoice.js.map +1 -1
  130. package/src/api-public/services/ai-pointes.js.map +1 -1
  131. package/src/api-public/services/article.js.map +1 -1
  132. package/src/api-public/services/auto-send-email.js.map +1 -1
  133. package/src/api-public/services/delivery.js.map +1 -1
  134. package/src/api-public/services/ezpay/tool.d.ts +0 -1
  135. package/src/api-public/services/ezpay/tool.js.map +1 -1
  136. package/src/api-public/services/fake-data-model/fake-product.js.map +1 -1
  137. package/src/api-public/services/fb-message.js.map +1 -5
  138. package/src/api-public/services/filter-protect-data.js.map +1 -1
  139. package/src/api-public/services/financial-service.js.map +1 -1
  140. package/src/api-public/services/graph-api.js.map +1 -1
  141. package/src/api-public/services/invoice.js.map +1 -1
  142. package/src/api-public/services/monitor.d.ts +0 -1
  143. package/src/api-public/services/monitor.js.map +1 -1
  144. package/src/api-public/services/public-table-check.js.map +1 -1
  145. package/src/api-public/services/rebate.js.map +1 -1
  146. package/src/api-public/services/recommend.js.map +1 -1
  147. package/src/api-public/services/share-permission.js.map +1 -1
  148. package/src/api-public/services/shopping.d.ts +1 -1
  149. package/src/api-public/services/shopping.js +44 -36
  150. package/src/api-public/services/shopping.js.map +1 -1
  151. package/src/api-public/services/shopping.ts +184 -183
  152. package/src/api-public/services/sms-pointes.js.map +1 -1
  153. package/src/api-public/services/sms.js.map +1 -1
  154. package/src/api-public/services/wallet.js.map +1 -1
  155. package/src/api-public/services/workers.d.ts +1 -1
  156. package/src/api-public/utils/ut-database.js.map +1 -1
  157. package/src/app-project/serverless/src/controllers/index.js.map +1 -1
  158. package/src/app-project/serverless/src/controllers/sample.js.map +1 -1
  159. package/src/app-project/serverless/src/modules/database.d.ts +1 -2
  160. package/src/app-project/serverless/src/modules/database.js.map +1 -1
  161. package/src/app-project/serverless/src/modules/exception.js.map +1 -1
  162. package/src/app-project/serverless/src/modules/hooks.js.map +1 -1
  163. package/src/app-project/serverless/src/modules/logger.js.map +1 -1
  164. package/src/app-project/serverless/src/modules/redis.d.ts +1 -1
  165. package/src/app-project/serverless/src/modules/redis.js.map +1 -1
  166. package/src/app-project/serverless/src/modules/response.js.map +1 -1
  167. package/src/app-project/serverless/src/modules/ssh.js.map +1 -1
  168. package/src/config.js.map +1 -5
  169. package/src/controllers/ai.js.map +1 -1
  170. package/src/controllers/global-event.js.map +1 -1
  171. package/src/controllers/page.js.map +1 -1
  172. package/src/controllers/private_config.js.map +1 -1
  173. package/src/export/export-test.js.map +1 -1
  174. package/src/firebase/message.js +1 -2
  175. package/src/firebase/message.js.map +1 -1
  176. package/src/helper/app_creater.js +1 -2
  177. package/src/helper/app_creater.js.map +1 -1
  178. package/src/helper/glitter-util.d.ts +0 -1
  179. package/src/helper/glitter-util.js.map +1 -1
  180. package/src/lambda/interface.d.ts +1 -1
  181. package/src/lambda/interface.js +2 -2
  182. package/src/lambda/interface.js.map +1 -1
  183. package/src/modules/exception.js.map +1 -1
  184. package/src/modules/hooks.js.map +1 -1
  185. package/src/modules/response.js.map +1 -1
  186. package/src/modules/ssh.js.map +1 -1
  187. package/src/services/ses.js +1 -2
  188. package/src/services/ses.js.map +1 -1
  189. package/src/services/system-schedule.js.map +1 -1
  190. package/g1b90plcfb.csv +0 -1289
@@ -1,10 +1,9 @@
1
- import {GVC} from '../glitterBundle/GVController.js';
2
- import {ShareDialog} from '../glitterBundle/dialog/ShareDialog.js';
3
- import {BgWidget} from '../backend-manager/bg-widget.js';
4
- import {EditorElem} from '../glitterBundle/plugins/editor-elem.js';
1
+ import { GVC } from '../glitterBundle/GVController.js';
2
+ import { ShareDialog } from '../glitterBundle/dialog/ShareDialog.js';
3
+ import { BgWidget } from '../backend-manager/bg-widget.js';
4
+ import { EditorElem } from '../glitterBundle/plugins/editor-elem.js';
5
5
 
6
6
  export class ShoppingShipmentSetting {
7
-
8
7
  public static main(gvc: GVC) {
9
8
  const saasConfig: { config: any; api: any } = (window.parent as any).saasConfig;
10
9
  const html = String.raw;
@@ -22,116 +21,133 @@ export class ShoppingShipmentSetting {
22
21
  volume: [{ key: number; value: number }];
23
22
  selectCalc: string;
24
23
  } = {
25
- weight: [{key: 0, value: 0}],
26
- volume: [{key: 0, value: 0}],
24
+ weight: [{ key: 0, value: 0 }],
25
+ volume: [{ key: 0, value: 0 }],
27
26
  selectCalc: 'weight',
28
27
  };
29
28
  let data: any = {};
30
29
 
31
- let page = 'def'
30
+ let page = 'def';
32
31
 
33
32
  function save(next: () => void) {
34
33
  const dialog = new ShareDialog(gvc.glitter);
35
- dialog.dataLoading({text: '設定中', visible: true});
36
- saasConfig.api.setPrivateConfig(saasConfig.config.appName, (() => {
37
- if (page === 'def') {
38
- return `glitter_shipment`
39
- } else {
40
- return `glitter_shipment_${page}`
41
- }
42
- })(), shipmentArray).then((r: {
43
- response: any;
44
- result: boolean
45
- }) => {
46
- dialog.dataLoading({visible: false});
47
- if (r.response) {
48
- next();
49
- } else {
50
- dialog.errorMessage({text: '設定失敗'});
51
- }
52
- });
34
+ dialog.dataLoading({ text: '設定中', visible: true });
35
+ saasConfig.api
36
+ .setPrivateConfig(
37
+ saasConfig.config.appName,
38
+ (() => {
39
+ if (page === 'def') {
40
+ return `glitter_shipment`;
41
+ } else {
42
+ return `glitter_shipment_${page}`;
43
+ }
44
+ })(),
45
+ shipmentArray
46
+ )
47
+ .then((r: { response: any; result: boolean }) => {
48
+ dialog.dataLoading({ visible: false });
49
+ if (r.response) {
50
+ next();
51
+ } else {
52
+ dialog.errorMessage({ text: '設定失敗' });
53
+ }
54
+ });
53
55
  }
54
56
 
55
57
  return (
56
58
  BgWidget.container(
57
59
  html`
58
- <div class="d-flex w-100 align-items-center">
59
- ${BgWidget.title(`運費設定`)}
60
+ <div class="title-container">
61
+ ${BgWidget.title('運費設定')}
60
62
  <div class="flex-fill"></div>
61
63
  </div>
62
64
  ${gvc.bindView(() => {
63
- const id = gvc.glitter.getUUID()
65
+ const id = gvc.glitter.getUUID();
64
66
  return {
65
67
  bind: id,
66
68
  view: () => {
67
69
  return new Promise(async (resolve, reject) => {
68
- const logistics_setting = ((await saasConfig.api.getPrivateConfig(saasConfig.config.appName, 'logistics_setting')).response.result[0] ?? {value: {}}).value;
69
- resolve(BgWidget.tab(
70
+ const logistics_setting = ((await saasConfig.api.getPrivateConfig(saasConfig.config.appName, 'logistics_setting')).response.result[0] ?? { value: {} }).value;
71
+ resolve(
72
+ BgWidget.tab(
70
73
  [
71
74
  {
72
- title: '預設運費', key: 'def'
75
+ title: '預設運費',
76
+ key: 'def',
73
77
  },
74
78
  ...(() => {
75
- return [{
76
- title: '一般宅配', key: 'normal'
77
- },
79
+ return [
78
80
  {
79
- title: '全家店到店', key: 'FAMIC2C'
81
+ title: '一般宅配',
82
+ key: 'normal',
80
83
  },
81
84
  {
82
- title: '萊爾富店到店', key: 'HILIFEC2C'
85
+ title: '全家店到店',
86
+ key: 'FAMIC2C',
83
87
  },
84
88
  {
85
- title: 'OK超商店到店', key: 'OKMARTC2C'
89
+ title: '萊爾富店到店',
90
+ key: 'HILIFEC2C',
86
91
  },
87
92
  {
88
- title: '7-ELEVEN超商交貨便', key: 'UNIMARTC2C'
93
+ title: 'OK超商店到店',
94
+ key: 'OKMARTC2C',
89
95
  },
90
96
  {
91
- title: '門市取貨', key: 'shop'
92
- }].concat((logistics_setting.custom_delivery ?? []).map((dd:any)=>{
93
- return {
94
- title:dd.name,
95
- key:dd.id
96
- }
97
- })).filter((d1) => {
98
- return logistics_setting.support.find((d2: any) => {
99
- return d2 === d1.key
100
- })
101
- })
97
+ title: '7-ELEVEN超商交貨便',
98
+ key: 'UNIMARTC2C',
99
+ },
100
+ {
101
+ title: '門市取貨',
102
+ key: 'shop',
103
+ },
104
+ ]
105
+ .concat(
106
+ (logistics_setting.custom_delivery ?? []).map((dd: any) => {
107
+ return {
108
+ title: dd.name,
109
+ key: dd.id,
110
+ };
111
+ })
112
+ )
113
+ .filter((d1) => {
114
+ return logistics_setting.support.find((d2: any) => {
115
+ return d2 === d1.key;
116
+ });
117
+ });
102
118
  })(),
103
119
  ...(() => {
104
- return []
105
- })()
120
+ return [];
121
+ })(),
106
122
  ],
107
123
  gvc,
108
124
  page,
109
125
  (text) => {
110
- page = text
111
- data.response = undefined
112
- // vm.filter_type = text as any;
126
+ page = text;
127
+ data.response = undefined;
113
128
  gvc.notifyDataChange([page_id, id]);
114
- }
115
- ))
116
- })
117
-
129
+ },
130
+ 'margin-bottom: 12px;'
131
+ )
132
+ );
133
+ });
118
134
  },
119
135
  divCreate: {
120
- class: `d-flex w-100 mb-n4`, style: 'gap:10px;overflow-x: auto;'
121
- }
122
- }
136
+ class: 'title-container',
137
+ style: 'overflow-x: auto;',
138
+ },
139
+ };
123
140
  })}
124
141
  ${gvc.bindView(() => {
125
-
126
142
  return {
127
143
  bind: page_id,
128
144
  view: () => {
129
145
  return new Promise(async (resolve, reject) => {
130
146
  if (!data.response) {
131
- dialog.dataLoading({visible: true})
132
- shipmentArray = (await ShoppingShipmentSetting.getShipmentData(page)) as any
133
- data.response = true
134
- dialog.dataLoading({visible: false})
147
+ dialog.dataLoading({ visible: true });
148
+ shipmentArray = (await ShoppingShipmentSetting.getShipmentData(page)) as any;
149
+ data.response = true;
150
+ dialog.dataLoading({ visible: false });
135
151
  }
136
152
  gvc.addStyle(`
137
153
  /* 隱藏 Chrome, Safari, Edge 的箭頭 */
@@ -148,485 +164,427 @@ export class ShoppingShipmentSetting {
148
164
  `);
149
165
 
150
166
  resolve(
151
- gvc.bindView({
152
- bind: 'addShipment',
153
- view: () => {
154
- return BgWidget.container(
155
- [
156
- BgWidget.container(
157
- (() => {
158
- let view: string[] = []
159
- if (page !== 'def') {
160
- view.push(BgWidget.mainCard(html`
161
- <div style="display: flex;flex-direction: column;align-items: flex-start;gap: 18px;">
162
- <div style="font-size: 16px;font-weight: 700;">
163
- 運費計算方式
167
+ gvc.bindView({
168
+ bind: 'addShipment',
169
+ view: () => {
170
+ return BgWidget.container(
171
+ [
172
+ BgWidget.container1x2(
173
+ {
174
+ html: (() => {
175
+ let view: string[] = [];
176
+ if (page !== 'def') {
177
+ view.push(
178
+ BgWidget.mainCard(html`
179
+ <div style="display: flex;flex-direction: column;align-items: flex-start;gap: 18px;">
180
+ <div style="font-size: 16px;font-weight: 700;">運費計算方式</div>
181
+ ${EditorElem.select({
182
+ title: '',
183
+ def: shipmentArray.selectCalc === 'def' ? `def` : 'custom',
184
+ gvc: gvc,
185
+ array: [
186
+ {
187
+ title: '參照預設',
188
+ value: 'def',
189
+ },
190
+ {
191
+ title: '自定義',
192
+ value: 'custom',
193
+ },
194
+ ],
195
+ callback: (text) => {
196
+ if (text === 'def') {
197
+ shipmentArray.selectCalc = 'def';
198
+ } else {
199
+ shipmentArray.selectCalc = 'weight';
200
+ }
201
+ gvc.notifyDataChange(page_id);
202
+ },
203
+ })}
204
+ </div>
205
+ `)
206
+ );
207
+ }
208
+ if (shipmentArray.selectCalc !== 'def') {
209
+ view = view.concat([
210
+ BgWidget.mainCard(html`
211
+ <div style="display: flex;flex-direction: column;align-items: flex-start;gap: 18px;">
212
+ <div class="w-100 guide4-3-1" style="font-size: 16px;font-weight: 700;">整份訂單的「總材積」計算</div>
213
+ <div
214
+ class="guide4-4"
215
+ style="display: flex;flex-direction: column;align-items: center;gap: 8px;align-self: stretch;"
216
+ >
217
+ <div
218
+ style="display: flex;align-items: flex-start;gap: 12px;align-self: stretch;font-size: 16px;font-weight: 400;"
219
+ >
220
+ <div style="width: 60%">材積區間</div>
221
+ <div style="width: 40%">運費</div>
164
222
  </div>
165
- ${EditorElem.select({
166
- title: '',
167
- def: (shipmentArray.selectCalc === 'def') ? `def` : 'custom',
168
- gvc: gvc,
169
- array: [
170
- {
171
- title: '參照預設',
172
- value: 'def'
173
- },
174
- {
175
- title: '自定義',
176
- value: 'custom'
177
- }
178
- ],
179
- callback: (text) => {
180
- if (text === 'def') {
181
- shipmentArray.selectCalc = 'def'
182
- } else {
183
- shipmentArray.selectCalc = 'weight'
184
- }
185
- gvc.notifyDataChange(page_id)
223
+ <div style="display: flex;flex-direction: column;align-items: center;gap: 18px;align-self: stretch;gap:8px;">
224
+ ${(() => {
225
+ let temp = ``;
226
+ shipmentArray.volume.map((data, index) => {
227
+ temp += html`
228
+ <div
229
+ class="d-flex w-100 position-relative align-items-center"
230
+ style="gap: ${document.body.clientWidth > 768 ? 18 : 6}px"
231
+ >
232
+ <div class="flex-fill position-relative" style="width: 60%">
233
+ <input
234
+ class="w-100"
235
+ style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
236
+ type="number"
237
+ placeholder="0"
238
+ onchange="${gvc.event((e) => {
239
+ data.key = e.value;
240
+ gvc.notifyDataChange(page_id);
241
+ })}"
242
+ value="${data.key ?? ''}"
243
+ />
244
+ <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">
245
+ 立方公分(含)以上
246
+ </div>
247
+ </div>
248
+ <div class="flex-fill position-relative" style="width: 35%">
249
+ <input
250
+ class="w-100"
251
+ style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
252
+ type="number"
253
+ placeholder="0"
254
+ onchange="${gvc.event((e) => {
255
+ data.value = e.value;
256
+ gvc.notifyDataChange(page_id);
257
+ })}"
258
+ value="${data.value ?? ''}"
259
+ />
260
+ <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">元</div>
261
+ </div>
262
+ <div
263
+ style="cursor: pointer; width: auto;"
264
+ class="guide4-6"
265
+ onclick="${gvc.event(() => {
266
+ dialog.checkYesOrNot({
267
+ text: '是否要刪除',
268
+ callback: (response) => {
269
+ if (response) {
270
+ shipmentArray.volume.splice(index, 1);
271
+ gvc.notifyDataChange(page_id);
272
+ }
273
+ },
274
+ });
275
+ })}"
276
+ >
277
+ <i class="fa-duotone fa-xmark"></i>
278
+ </div>
279
+ </div>
280
+ `;
281
+ });
282
+ return temp;
283
+ })()}
284
+ </div>
285
+ </div>
286
+ <div
287
+ class="w-100 d-flex align-items-center justify-content-center cursor_pointer guide4-5"
288
+ style="color: #36B; font-size: 16px; font-weight: 400;"
289
+ onclick="${gvc.event(() => {
290
+ shipmentArray.volume.push({
291
+ key: 0,
292
+ value: 0,
293
+ });
294
+ gvc.notifyDataChange('addShipment');
295
+ })}"
296
+ >
297
+ <div>新增一個區間</div>
298
+ <div>
299
+ <i class="fa-solid fa-plus ps-2" style="font-size: 16px; height: 14px; width: 14px;"></i>
300
+ </div>
301
+ </div>
302
+ <div
303
+ style="display: flex;align-items: center;gap: 6px;align-self: stretch;font-size: 16px;cursor: pointer;"
304
+ class="guide4-7"
305
+ onclick="${gvc.event(() => {
306
+ shipmentArray.selectCalc = 'volume';
307
+ gvc.notifyDataChange(page_id);
308
+ })}"
309
+ >
310
+ ${(() => {
311
+ if (shipmentArray.selectCalc == 'volume') {
312
+ return html`
313
+ <svg
314
+ class="volumeSelect"
315
+ xmlns="http://www.w3.org/2000/svg"
316
+ width="16"
317
+ height="16"
318
+ viewBox="0 0 16 16"
319
+ fill="none"
320
+ >
321
+ <rect width="16" height="16" rx="3" fill="#393939" />
322
+ <path
323
+ d="M4.5 8.5L7 11L11.5 5"
324
+ stroke="white"
325
+ stroke-width="2"
326
+ stroke-linecap="round"
327
+ stroke-linejoin="round"
328
+ />
329
+ </svg>
330
+ 新增商品時將套用此運費計算方式
331
+ `;
332
+ } else {
333
+ return html`
334
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
335
+ <rect x="0.5" y="0.5" width="15" height="15" rx="2.5" stroke="#DDDDDD" />
336
+ </svg>
337
+ 新增商品時將套用此運費計算方式
338
+ `;
186
339
  }
187
- })}
340
+ })()}
188
341
  </div>
189
- `))
190
- }
191
- if (shipmentArray.selectCalc !== 'def') {
192
- view = view.concat([
193
- BgWidget.mainCard(html`
194
- <div style="display: flex;flex-direction: column;align-items: flex-start;gap: 18px;">
195
- <div class="w-100 guide4-3-1"
196
- style="font-size: 16px;font-weight: 700;">
197
- 整份訂單的「總材積」計算
198
- </div>
199
- <div class="guide4-4"
200
- style="display: flex;flex-direction: column;align-items: center;gap: 8px;align-self: stretch;">
201
- <div style="display: flex;align-items: flex-start;gap: 12px;align-self: stretch;font-size: 16px;font-weight: 400;">
202
- <div style="width: 60%">
203
- 材積區間
204
- </div>
205
- <div style="width: 40%">
206
- 運費
207
- </div>
208
- </div>
209
- <div style="display: flex;flex-direction: column;align-items: center;gap: 18px;align-self: stretch;gap:8px;">
210
- ${(() => {
211
- let temp = ``;
212
- shipmentArray.volume.map((data, index) => {
213
- temp += html`
214
- <div
215
- class="d-flex w-100 position-relative align-items-center"
216
- style="gap: ${document.body.clientWidth > 768 ? 18 : 6}px"
217
- >
218
- <div class="flex-fill position-relative"
219
- style="width: 60%">
220
- <input
221
- class="w-100"
222
- style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
223
- type="number"
224
- placeholder="0"
225
- onchange="${gvc.event((e) => {
226
- data.key = e.value;
227
- gvc.notifyDataChange(page_id);
228
- })}"
229
- value="${data.key ?? ''}"
230
- />
231
- <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">
232
- 立方公分(含)以上
233
- </div>
234
- </div>
235
- <div class="flex-fill position-relative"
236
- style="width: 35%">
237
- <input
238
- class="w-100"
239
- style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
240
- type="number"
241
- placeholder="0"
242
- onchange="${gvc.event((e) => {
243
- data.value = e.value;
244
- gvc.notifyDataChange(page_id);
245
- })}"
246
- value="${data.value ?? ''}"
247
- />
248
- <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">
249
-
250
- </div>
251
- </div>
252
- <div
253
- style="cursor: pointer; width: auto;"
254
- class="guide4-6"
255
- onclick="${gvc.event(() => {
256
- dialog.checkYesOrNot({
257
- text: '是否要刪除',
258
- callback: (response) => {
259
- if (response) {
260
- shipmentArray.volume.splice(index, 1);
261
- gvc.notifyDataChange(page_id);
262
- }
263
- },
264
- });
265
- })}"
266
- >
267
- <i class="fa-duotone fa-xmark"></i>
268
- </div>
269
- </div>
270
- `;
271
- });
272
- return temp;
273
- })()}
274
- </div>
275
- </div>
276
- <div
277
- class="w-100 d-flex align-items-center justify-content-center cursor_pointer guide4-5"
278
- style="color: #36B; font-size: 16px; font-weight: 400;"
279
- onclick="${gvc.event(() => {
280
- shipmentArray.volume.push({
281
- key: 0,
282
- value: 0
283
- });
284
- gvc.notifyDataChange('addShipment');
285
- })}"
286
- >
287
- <div>新增一個區間</div>
288
- <div>
289
- <i class="fa-solid fa-plus ps-2"
290
- style="font-size: 16px; height: 14px; width: 14px;"></i>
291
- </div>
292
- </div>
293
- <div
294
- style="display: flex;align-items: center;gap: 6px;align-self: stretch;font-size: 16px;cursor: pointer;"
295
- class="guide4-7"
296
- onclick="${gvc.event(() => {
297
- shipmentArray.selectCalc = 'volume';
298
- gvc.notifyDataChange(page_id);
299
- })}"
300
- >
301
- ${(() => {
302
- if (shipmentArray.selectCalc == 'volume') {
303
- return html`
304
- <svg class="volumeSelect"
305
- xmlns="http://www.w3.org/2000/svg"
306
- width="16"
307
- height="16"
308
- viewBox="0 0 16 16"
309
- fill="none">
310
- <rect width="16"
311
- height="16"
312
- rx="3"
313
- fill="#393939"/>
314
- <path
315
- d="M4.5 8.5L7 11L11.5 5"
316
- stroke="white"
317
- stroke-width="2"
318
- stroke-linecap="round"
319
- stroke-linejoin="round"
342
+ </div>
343
+ `),
344
+ BgWidget.mainCard(html`
345
+ <div style="display: flex;flex-direction: column;align-items: flex-start;gap: 18px;">
346
+ <div class="w-100 guide4-3-2" style="font-size: 16px;font-weight: 700;">整份訂單的「總重量」計算</div>
347
+ <div style="display: flex;flex-direction: column;align-items: center;gap: 8px;align-self: stretch;">
348
+ <div
349
+ style="display: flex;align-items: flex-start;gap: 12px;align-self: stretch;font-size: 16px;font-weight: 400;"
350
+ >
351
+ <div style="width: 60%">重量區間</div>
352
+ <div style="width: 40%">運費</div>
353
+ </div>
354
+ <div style="display: flex;flex-direction: column;align-items: center;gap: 18px;align-self: stretch;gap:8px;">
355
+ ${(() => {
356
+ let temp = ``;
357
+ shipmentArray.weight.map((data, index) => {
358
+ temp += html`
359
+ <div
360
+ class="d-flex w-100 align-items-center"
361
+ style="position:relative; gap: ${document.body.clientWidth > 768 ? 18 : 6}px"
362
+ >
363
+ <div class="flex-fill position-relative" style="width: 60%">
364
+ <input
365
+ class="w-100"
366
+ style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
367
+ type="number"
368
+ placeholder="0"
369
+ onchange="${gvc.event((e) => {
370
+ data.key = e.value;
371
+ gvc.notifyDataChange(page_id);
372
+ })}"
373
+ value="${data.key ?? ''}"
320
374
  />
321
- </svg>
322
- 新增商品時將套用此運費計算方式
323
- `;
324
- } else {
325
- return html`
326
- <svg width="16"
327
- height="16"
328
- viewBox="0 0 16 16"
329
- fill="none"
330
- xmlns="http://www.w3.org/2000/svg">
331
- <rect x="0.5"
332
- y="0.5"
333
- width="15"
334
- height="15"
335
- rx="2.5"
336
- stroke="#DDDDDD"/>
337
- </svg>
338
- 新增商品時將套用此運費計算方式
339
- `;
340
- }
341
- })()}
342
- </div>
375
+ <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">公斤(含)以上</div>
376
+ </div>
377
+ <div class="flex-fill position-relative" style="width: 35%">
378
+ <input
379
+ class="w-100"
380
+ style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
381
+ type="number"
382
+ placeholder="0"
383
+ onchange="${gvc.event((e) => {
384
+ data.value = e.value;
385
+ gvc.notifyDataChange(page_id);
386
+ })}"
387
+ value="${data.value ?? ''}"
388
+ />
389
+ <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">元</div>
390
+ </div>
391
+ <div
392
+ style="cursor: pointer; width: auto"
393
+ onclick="${gvc.event(() => {
394
+ dialog.checkYesOrNot({
395
+ text: '是否要刪除',
396
+ callback: (response) => {
397
+ if (response) {
398
+ shipmentArray.weight.splice(index, 1);
399
+ gvc.notifyDataChange(page_id);
400
+ }
401
+ },
402
+ });
403
+ })}"
404
+ >
405
+ <i class="fa-duotone fa-xmark"></i>
406
+ </div>
407
+ </div>
408
+ `;
409
+ });
410
+ return temp;
411
+ })()}
343
412
  </div>
344
- `),
345
- BgWidget.mainCard(html`
346
- <div style="display: flex;flex-direction: column;align-items: flex-start;gap: 18px;">
347
- <div class="w-100 guide4-3-2"
348
- style="font-size: 16px;font-weight: 700;">
349
- 整份訂單的「總重量」計算
350
- </div>
351
- <div style="display: flex;flex-direction: column;align-items: center;gap: 8px;align-self: stretch;">
352
- <div style="display: flex;align-items: flex-start;gap: 12px;align-self: stretch;font-size: 16px;font-weight: 400;">
353
- <div style="width: 60%">
354
- 重量區間
355
- </div>
356
- <div style="width: 40%">
357
- 運費
358
- </div>
413
+ </div>
414
+ <div
415
+ class="w-100 d-flex align-items-center justify-content-center cursor_pointer"
416
+ style="color: #36B; font-size: 16px; font-weight: 400;"
417
+ onclick="${gvc.event(() => {
418
+ shipmentArray.weight.push({
419
+ key: 0,
420
+ value: 0,
421
+ });
422
+ gvc.notifyDataChange('addShipment');
423
+ })}"
424
+ >
425
+ <div>新增一個區間</div>
426
+ <div>
427
+ <i class="fa-solid fa-plus ps-2" style="font-size: 16px; height: 14px; width: 14px;"></i>
428
+ </div>
429
+ </div>
430
+ <div
431
+ style="display: flex;align-items: center;gap: 6px;align-self: stretch;font-size: 16px;cursor: pointer;"
432
+ onclick="${gvc.event(() => {
433
+ shipmentArray.selectCalc = 'weight';
434
+ gvc.notifyDataChange(page_id);
435
+ })}"
436
+ >
437
+ ${(() => {
438
+ if (shipmentArray.selectCalc == 'weight') {
439
+ return html`
440
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
441
+ <rect width="16" height="16" rx="3" fill="#393939" />
442
+ <path
443
+ d="M4.5 8.5L7 11L11.5 5"
444
+ stroke="white"
445
+ stroke-width="2"
446
+ stroke-linecap="round"
447
+ stroke-linejoin="round"
448
+ />
449
+ </svg>
450
+ 新增商品時將套用此運費計算方式
451
+ `;
452
+ } else {
453
+ return html`
454
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
455
+ <rect x="0.5" y="0.5" width="15" height="15" rx="2.5" stroke="#DDDDDD" />
456
+ </svg>
457
+ 新增商品時將套用此運費計算方式
458
+ `;
459
+ }
460
+ })()}
461
+ </div>
462
+ </div>
463
+ `),
464
+ ]);
465
+ }
466
+ return view.join('<div style="margin-bottom: 24px;"></div>');
467
+ })(),
468
+ ratio: 65,
469
+ },
470
+ {
471
+ html: (() => {
472
+ const id = gvc.glitter.getUUID();
473
+ return gvc.bindView({
474
+ bind: id,
475
+ view: () => {
476
+ const ogShop = shipmentArray;
477
+ return new Promise(async (resolve, reject) => {
478
+ const shipmentArray: any = ogShop.selectCalc !== 'def' ? ogShop : await ShoppingShipmentSetting.getShipmentData('def');
479
+ resolve(
480
+ `${BgWidget.mainCard(
481
+ html`
482
+ <div style="gap: 18px;display: flex;flex-direction: column;">
483
+ <div style="font-size: 16px;font-weight: 700;">摘要</div>
484
+ <div style="font-size: 16px;font-weight: 400;">
485
+ 預設運費設定: 依${shipmentArray.selectCalc == 'weight' ? '重量' : '材積'} 計算
359
486
  </div>
360
- <div style="display: flex;flex-direction: column;align-items: center;gap: 18px;align-self: stretch;gap:8px;">
361
- ${(() => {
362
- let temp = ``;
363
- shipmentArray.weight.map((data, index) => {
364
- temp += html`
365
- <div
366
- class="d-flex w-100 align-items-center"
367
- style="position:relative; gap: ${document.body.clientWidth > 768 ? 18 : 6}px"
368
- >
369
- <div class="flex-fill position-relative"
370
- style="width: 60%">
371
- <input
372
- class="w-100"
373
- style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
374
- type="number"
375
- placeholder="0"
376
- onchange="${gvc.event((e) => {
377
- data.key = e.value;
378
- gvc.notifyDataChange(page_id);
379
- })}"
380
- value="${data.key ?? ''}"
381
- />
382
- <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">
383
- 公斤(含)以上
384
- </div>
487
+ <div style="width:100%;height:1px;background-color: #DDD"></div>
488
+ <div style="display: flex;flex-direction: column;gap: 12px;">
489
+ <div style="color:#393939;font-weight: 400;font-size: 16px;">依材積計算:</div>
490
+ <div
491
+ style="border-radius: 10px;border: 1px solid #DDD;color: #393939;font-weight: 400;font-size: 14px;padding: 20px;gap:12px;"
492
+ >
493
+ ${(() => {
494
+ let returnHTML = ``;
495
+ shipmentArray.volume.map((data: any) => {
496
+ returnHTML += html`
497
+ <div class="">
498
+ <span style="font-size: 24px;">${data.key}</span>
499
+ 立方公分(含)以上,運費
500
+ <span style="font-size: 24px;">${data.value}</span>
501
+
385
502
  </div>
386
- <div class="flex-fill position-relative"
387
- style="width: 35%">
388
- <input
389
- class="w-100"
390
- style="padding: 9px 18px;border-radius: 10px;height:40px;border: 1px solid #DDD;"
391
- type="number"
392
- placeholder="0"
393
- onchange="${gvc.event((e) => {
394
- data.value = e.value;
395
- gvc.notifyDataChange(page_id);
396
- })}"
397
- value="${data.value ?? ''}"
398
- />
399
- <div style="color: #8D8D8D;position: absolute;top:9px;right:18px;">
400
-
401
- </div>
402
- </div>
403
- <div
404
- style="cursor: pointer; width: auto"
405
- onclick="${gvc.event(() => {
406
- dialog.checkYesOrNot({
407
- text: '是否要刪除',
408
- callback: (response) => {
409
- if (response) {
410
- shipmentArray.weight.splice(index, 1);
411
- gvc.notifyDataChange(page_id);
412
- }
413
- },
414
- });
415
- })}"
416
- >
417
- <i class="fa-duotone fa-xmark"></i>
418
- </div>
419
- </div>
420
- `;
421
- });
422
- return temp;
423
- })()}
503
+ `;
504
+ });
505
+ return returnHTML;
506
+ })()}
507
+ </div>
424
508
  </div>
425
- </div>
426
- <div
427
- class="w-100 d-flex align-items-center justify-content-center cursor_pointer"
428
- style="color: #36B; font-size: 16px; font-weight: 400;"
429
- onclick="${gvc.event(() => {
430
- shipmentArray.weight.push({
431
- key: 0,
432
- value: 0
433
- });
434
- gvc.notifyDataChange('addShipment');
435
- })}"
436
- >
437
- <div>新增一個區間</div>
438
- <div>
439
- <i class="fa-solid fa-plus ps-2"
440
- style="font-size: 16px; height: 14px; width: 14px;"></i>
509
+ <div style="display: flex;flex-direction: column;gap: 12px;">
510
+ <div style="color:#393939;font-weight: 400;font-size: 16px;">依重量計算:</div>
511
+ <div
512
+ style="border-radius: 10px;border: 1px solid #DDD;color: #393939;font-weight: 400;font-size: 14px;padding: 20px;"
513
+ >
514
+ ${(() => {
515
+ let returnHTML = ``;
516
+ shipmentArray.weight.map((data: any) => {
517
+ returnHTML += html`
518
+ <div class="">
519
+ <span style="font-size: 24px;">${data.key}</span>
520
+ 公斤(含)以上,運費
521
+ <span style="font-size: 24px;">${data.value}</span>
522
+
523
+ </div>
524
+ `;
525
+ });
526
+ return returnHTML;
527
+ })()}
528
+ </div>
441
529
  </div>
442
530
  </div>
443
- <div
444
- style="display: flex;align-items: center;gap: 6px;align-self: stretch;font-size: 16px;cursor: pointer;"
445
- onclick="${gvc.event(() => {
446
- shipmentArray.selectCalc = 'weight';
447
- gvc.notifyDataChange(page_id);
448
- })}"
449
- >
450
- ${(() => {
451
- if (shipmentArray.selectCalc == 'weight') {
452
- return html`
453
- <svg xmlns="http://www.w3.org/2000/svg"
454
- width="16"
455
- height="16"
456
- viewBox="0 0 16 16"
457
- fill="none">
458
- <rect width="16"
459
- height="16"
460
- rx="3"
461
- fill="#393939"/>
462
- <path
463
- d="M4.5 8.5L7 11L11.5 5"
464
- stroke="white"
465
- stroke-width="2"
466
- stroke-linecap="round"
467
- stroke-linejoin="round"
468
- />
469
- </svg>
470
- 新增商品時將套用此運費計算方式
471
- `;
472
- } else {
473
- return html`
474
- <svg width="16"
475
- height="16"
476
- viewBox="0 0 16 16"
477
- fill="none"
478
- xmlns="http://www.w3.org/2000/svg">
479
- <rect x="0.5"
480
- y="0.5"
481
- width="15"
482
- height="15"
483
- rx="2.5"
484
- stroke="#DDDDDD"/>
485
- </svg>
486
- 新增商品時將套用此運費計算方式
487
- `;
488
- }
489
- })()}
490
- </div>
491
- </div>
492
- `)
493
- ])
494
- }
495
- return view.join('<div style="margin-bottom: 24px;"></div>')
496
- })(),
497
- undefined,
498
- 'padding: 0; margin: 0 !important; width: 60%;'
499
- ),
500
- BgWidget.container(
501
- (() => {
502
- return gvc.bindView(() => {
503
- const id = gvc.glitter.getUUID()
504
- return {
505
- bind: id,
506
- view: () => {
507
- const ogShop = shipmentArray;
508
- return new Promise(async (resolve, reject) => {
509
- const shipmentArray: any = (ogShop.selectCalc !== 'def') ? ogShop : await ShoppingShipmentSetting.getShipmentData('def')
510
- resolve(`${BgWidget.mainCard(
511
- html`
512
- <div style="gap: 18px;display: flex;flex-direction: column;">
513
- <div style="font-size: 16px;font-weight: 700;">
514
- 摘要
515
- </div>
516
- <div style="font-size: 16px;font-weight: 400;">
517
- 預設運費設定:
518
- 依${shipmentArray.selectCalc == 'weight' ? '重量' : '材積'}
519
- 計算
520
- </div>
521
- <div style="width:100%;height:1px;background-color: #DDD"></div>
522
- <div style="display: flex;flex-direction: column;gap: 12px;">
523
- <div style="color:#393939;font-weight: 400;font-size: 16px;">
524
- 依材積計算:
525
- </div>
526
- <div
527
- style="border-radius: 10px;border: 1px solid #DDD;color: #393939;font-weight: 400;font-size: 14px;padding: 20px;gap:12px;"
528
- >
529
- ${(() => {
530
- let returnHTML = ``;
531
- shipmentArray.volume.map((data: any) => {
532
- returnHTML += html`
533
- <div class="">
534
- <span style="font-size: 24px;">${data.key}</span>
535
- 立方公分(含)以上,運費
536
- <span style="font-size: 24px;">${data.value}</span>
537
-
538
- </div>
539
- `;
540
- });
541
- return returnHTML;
542
- })()}
543
- </div>
544
- </div>
545
- <div style="display: flex;flex-direction: column;gap: 12px;">
546
- <div style="color:#393939;font-weight: 400;font-size: 16px;">
547
- 依重量計算:
548
- </div>
549
- <div style="border-radius: 10px;border: 1px solid #DDD;color: #393939;font-weight: 400;font-size: 14px;padding: 20px;">
550
- ${(() => {
551
- let returnHTML = ``;
552
- shipmentArray.weight.map((data: any) => {
553
- returnHTML += html`
554
- <div class="">
555
- <span style="font-size: 24px;">${data.key}</span>
556
- 公斤(含)以上,運費
557
- <span style="font-size: 24px;">${data.value}</span>
558
-
559
- </div>
560
- `;
561
- });
562
- return returnHTML;
563
- })()}
564
- </div>
565
- </div>
566
- </div>
567
- `,
568
- 'summary-card'
569
- )}`)
570
- })
571
- },
572
- divCreate: {class: `w-100 m-0 p-0`}
573
- }
574
- })
575
- })(),
576
- undefined,
577
- 'padding: 0; margin: 0 !important; width: 40%; min-width: 300px;'
578
- ),
579
- BgWidget.mbContainer(240),
580
- html`
581
- <div class="update-bar-container">
582
- ${BgWidget.save(
583
- gvc.event(() => {
584
- save(() => {
585
- dialog.successMessage({
586
- text: '設定成功',
587
- });
588
- });
589
- }), "儲存", "guide4-8"
590
- )}
591
- </div>`,
592
- ].join(''),
593
- BgWidget.getContainerWidth(),
594
- `
595
- gap: 24px;
596
- color: #393939;
597
- width: 100%;
598
- color: #393939;
599
- display: flex;
600
- `
601
- );
602
- },
603
- divCreate: {class: `w-100`, style: ``},
604
- })
531
+ `
532
+ )}`
533
+ );
534
+ });
535
+ },
536
+ divCreate: { class: `w-100 m-0 p-0 summary-card` },
537
+ });
538
+ })(),
539
+ ratio: 35,
540
+ }
541
+ ),
542
+ BgWidget.mbContainer(240),
543
+ html` <div class="update-bar-container">
544
+ ${BgWidget.save(
545
+ gvc.event(() => {
546
+ save(() => {
547
+ dialog.successMessage({
548
+ text: '設定成功',
549
+ });
550
+ });
551
+ }),
552
+ '儲存',
553
+ 'guide4-8'
554
+ )}
555
+ </div>`,
556
+ ].join('')
557
+ );
558
+ },
559
+ divCreate: { class: `w-100`, style: `` },
560
+ })
605
561
  );
606
562
  });
607
563
  },
608
564
  divCreate: {
609
565
  class: `d-flex flex-column flex-column-reverse flex-md-row`,
610
- style: `gap:10px; padding: 0;`
566
+ style: `gap:10px; padding: 0;`,
611
567
  },
612
568
  };
613
569
  })}
614
- `,
615
- BgWidget.getContainerWidth()
570
+ `
616
571
  ) + BgWidget.mbContainer(240)
617
572
  );
618
573
  }
619
574
 
620
575
  public static async getShipmentData(page: string) {
621
- let shipmentArray = {}
576
+ let shipmentArray = {};
622
577
  const saasConfig: { config: any; api: any } = (window.parent as any).saasConfig;
623
- const data = await saasConfig.api.getPrivateConfig(saasConfig.config.appName, (() => {
624
- if (page === 'def') {
625
- return `glitter_shipment`
626
- } else {
627
- return `glitter_shipment_${page}`
628
- }
629
- })());
578
+ const data = await saasConfig.api.getPrivateConfig(
579
+ saasConfig.config.appName,
580
+ (() => {
581
+ if (page === 'def') {
582
+ return `glitter_shipment`;
583
+ } else {
584
+ return `glitter_shipment_${page}`;
585
+ }
586
+ })()
587
+ );
630
588
  if (data.response.result[0]) {
631
589
  if (Array.isArray(data.response.result[0].value.weight)) {
632
590
  shipmentArray = data.response.result[0].value;
@@ -634,19 +592,19 @@ export class ShoppingShipmentSetting {
634
592
  } else {
635
593
  if (page === 'def') {
636
594
  shipmentArray = {
637
- weight: [{key: 0, value: 0}],
638
- volume: [{key: 0, value: 0}],
639
- selectCalc: 'weight'
640
- }
595
+ weight: [{ key: 0, value: 0 }],
596
+ volume: [{ key: 0, value: 0 }],
597
+ selectCalc: 'weight',
598
+ };
641
599
  } else {
642
600
  shipmentArray = {
643
- weight: [{key: 0, value: 0}],
644
- volume: [{key: 0, value: 0}],
645
- selectCalc: 'def'
646
- }
601
+ weight: [{ key: 0, value: 0 }],
602
+ volume: [{ key: 0, value: 0 }],
603
+ selectCalc: 'def',
604
+ };
647
605
  }
648
606
  }
649
- return shipmentArray
607
+ return shipmentArray;
650
608
  }
651
609
  }
652
610