ts-glitter 16.6.6 → 16.6.8

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 (42) hide show
  1. package/lowcode/Entry.js +1 -1
  2. package/lowcode/Entry.ts +1 -1
  3. package/lowcode/backend-manager/bg-guide.js +41 -285
  4. package/lowcode/backend-manager/bg-guide.ts +226 -300
  5. package/lowcode/cms-plugin/POS-setting.js +242 -199
  6. package/lowcode/cms-plugin/POS-setting.ts +552 -507
  7. package/lowcode/cms-plugin/filter-options.js +2 -0
  8. package/lowcode/cms-plugin/filter-options.ts +2 -0
  9. package/lowcode/cms-plugin/pos-pages/models.ts +0 -5
  10. package/lowcode/cms-plugin/pos-pages/payment-function.js +1 -1
  11. package/lowcode/cms-plugin/pos-pages/payment-function.ts +1 -4
  12. package/lowcode/cms-plugin/pos-pages/payment-page.js +70 -41
  13. package/lowcode/cms-plugin/pos-pages/payment-page.ts +85 -57
  14. package/lowcode/cms-plugin/pos-pages/pos-function.js +19 -12
  15. package/lowcode/cms-plugin/pos-pages/pos-function.ts +19 -12
  16. package/lowcode/cms-plugin/shopping-market-shopee.js +13 -2
  17. package/lowcode/cms-plugin/shopping-market-shopee.ts +14 -3
  18. package/lowcode/cms-plugin/shopping-order-manager.js +5 -1
  19. package/lowcode/cms-plugin/shopping-order-manager.ts +5 -2
  20. package/lowcode/glitter-base/route/shopee.js +2 -2
  21. package/lowcode/glitter-base/route/shopee.ts +3 -4
  22. package/package.json +1 -1
  23. package/rv3gwtya3h.json +1 -0
  24. package/src/api-public/controllers/shopee.js +3 -3
  25. package/src/api-public/controllers/shopee.js.map +1 -1
  26. package/src/api-public/controllers/shopee.ts +3 -3
  27. package/src/api-public/services/monitor.d.ts +1 -0
  28. package/src/api-public/services/shopee.d.ts +22 -2
  29. package/src/api-public/services/shopee.js +28 -3
  30. package/src/api-public/services/shopee.js.map +1 -1
  31. package/src/api-public/services/shopee.ts +35 -9
  32. package/src/api-public/services/shopping.d.ts +1 -1
  33. package/src/api-public/services/shopping.js +31 -1
  34. package/src/api-public/services/shopping.js.map +1 -1
  35. package/src/api-public/services/shopping.ts +37 -1
  36. package/src/api-public/services/user.js.map +1 -1
  37. package/src/app-project/serverless/src/modules/ssh.js.map +1 -1
  38. package/src/helper/glitter-util.d.ts +1 -0
  39. package/src/modules/ssh.js.map +1 -1
  40. package/src/modules/tool.d.ts +3 -3
  41. package/src/modules/tool.js +2 -1
  42. package/src/modules/tool.js.map +1 -1
package/lowcode/Entry.js CHANGED
@@ -90,7 +90,7 @@ export class Entry {
90
90
  }
91
91
  window.renderClock = (_b = window.renderClock) !== null && _b !== void 0 ? _b : clockF();
92
92
  console.log(`Entry-time:`, window.renderClock.stop());
93
- glitter.share.editerVersion = 'V_16.6.6';
93
+ glitter.share.editerVersion = 'V_16.6.8';
94
94
  glitter.share.start = new Date();
95
95
  const vm = {
96
96
  appConfig: [],
package/lowcode/Entry.ts CHANGED
@@ -90,7 +90,7 @@ export class Entry {
90
90
  }
91
91
  (window as any).renderClock = (window as any).renderClock ?? clockF();
92
92
  console.log(`Entry-time:`, (window as any).renderClock.stop());
93
- glitter.share.editerVersion = 'V_16.6.6';
93
+ glitter.share.editerVersion = 'V_16.6.8';
94
94
  glitter.share.start = new Date();
95
95
  const vm: {
96
96
  appConfig: any;
@@ -227,8 +227,24 @@ export class BgGuide {
227
227
  }
228
228
  drawMainRowBG(BG, vm, targetSelector, viewID, step, title) {
229
229
  const target = document.querySelector(targetSelector);
230
+ const icon = target === null || target === void 0 ? void 0 : target.querySelector('i');
231
+ const cover = (icon && icon.classList.contains('fa-angle-down'));
230
232
  const rect = target ? target.getBoundingClientRect() : '';
231
233
  if (rect) {
234
+ if (cover) {
235
+ let body = document.querySelector('.editorContainer');
236
+ if (body && !document.querySelector('.clickInterface')) {
237
+ $(body).append(html `
238
+ <div class="clickInterface"
239
+ style="height: 100vh;width: 100vw;position: fixed;left: 0;top: 0;z-index: 1030;cursor: pointer;"
240
+ onclick="${this.gvc.event(() => {
241
+ vm.step = 2;
242
+ this.gvc.notifyDataChange(viewID);
243
+ document.querySelector('.clickInterface').remove();
244
+ })}"></div>
245
+ `);
246
+ }
247
+ }
232
248
  BG.style.clipPath = `polygon(0 0, 100% 0, 100% 100%, 0 100%, 0 ${rect.bottom}px, ${rect.right}px ${rect.bottom}px, ${rect.right}px ${rect.top}px, 0 ${rect.top}px)`;
233
249
  this.detectClickThrough(target, () => {
234
250
  vm.step = 2;
@@ -2110,6 +2126,7 @@ export class BgGuide {
2110
2126
  close();
2111
2127
  gvc.notifyDataChange('shipInit');
2112
2128
  }
2129
+ let body = document.querySelector('.editorContainer');
2113
2130
  let iframeRect = iframe.getBoundingClientRect();
2114
2131
  let target = this.findIframeDom('.guide3-3');
2115
2132
  if (!target) {
@@ -2120,6 +2137,7 @@ export class BgGuide {
2120
2137
  }
2121
2138
  }, 500);
2122
2139
  }
2140
+ target.scrollIntoView();
2123
2141
  let rect = target.getBoundingClientRect();
2124
2142
  let left = rect.left + iframeRect.left;
2125
2143
  let top = rect.top + iframeRect.top;
@@ -2137,8 +2155,11 @@ export class BgGuide {
2137
2155
  bind: `guide3-3`,
2138
2156
  view: () => {
2139
2157
  return html `
2158
+ <div class="d-flex align-items-center justify-content-center" style="height:100vh;width:100vw;position: fixed;left:0;top:0;z-index:1;">
2159
+
2160
+ </div>
2140
2161
  <div class="d-flex flex-column"
2141
- style="width: 332px;height: 209px;flex-shrink: 0;position: absolute;left: calc(50% - 166px);bottom:calc(50% - 104px);filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.40));">
2162
+ style="width: 332px;height: 209px;flex-shrink: 0;position: absolute;left: calc(50% - 166px);bottom:calc(50% - 104px);filter: drop-shadow(0px 0px 20px rgba(0, 0, 0, 0.40));z-index:2;">
2142
2163
  <div class="w-100" style="border-radius: 10px;">
2143
2164
  <div
2144
2165
  style="display: flex;padding: 12px 24px;gap: 10px;width: 100%;background: #FEAD20;border-radius: 10px 10px 0 0;color:white;font-size: 20px;font-style: normal;font-weight: 700;line-height: normal;letter-spacing: 0.8px;"
@@ -2199,6 +2220,7 @@ export class BgGuide {
2199
2220
  </div>
2200
2221
  </div>
2201
2222
  </div>
2223
+
2202
2224
  `;
2203
2225
  },
2204
2226
  divCreate: { class: `innerGuide` },
@@ -2216,114 +2238,6 @@ export class BgGuide {
2216
2238
  content: '填寫詳細配送說明,將會出現在結帳頁供顧客閱讀',
2217
2239
  }, () => {
2218
2240
  });
2219
- const scrollEvent = this.disableScroll();
2220
- function close() {
2221
- BG.classList.remove(`guide3-4`);
2222
- that.enableScroll(scrollEvent);
2223
- that.findIframeDom('.innerGuide').remove();
2224
- }
2225
- function next() {
2226
- vm.step++;
2227
- close();
2228
- gvc.notifyDataChange('shipInit');
2229
- }
2230
- let iframeRect = iframe.getBoundingClientRect();
2231
- let rect = target.getBoundingClientRect();
2232
- let left = rect.left + iframeRect.left;
2233
- let top = rect.top + iframeRect.top;
2234
- let right = rect.right + iframeRect.left;
2235
- let bottom = rect.bottom + iframeRect.top;
2236
- gvc.addStyle(`
2237
- .guide3-4 {
2238
- ${this.holeBG(left, right, top, bottom)}
2239
- }
2240
- `);
2241
- BG.classList.add(`guide3-4`);
2242
- target.classList.add(`position-relative`);
2243
- const child_gvc = document.querySelector(`iframe`).contentWindow.glitter.pageConfig[0].gvc;
2244
- $(target).append(child_gvc.bindView({
2245
- bind: `guide3-4`,
2246
- view: () => {
2247
- return html `
2248
- <div
2249
- class="d-flex flex-column"
2250
- style="width: 332px;height: 209px;flex-shrink: 0;position: absolute;left: 50%;bottom:35px;filter: drop-shadow(2px 2px 10px rgba(0, 0, 0, 0.15));transform: translate(-50%,0%);z-index: 1;"
2251
- >
2252
- <div class="w-100" style="padding-left: 155px;height:23px;">
2253
- <svg xmlns="http://www.w3.org/2000/svg" width="22" height="18"
2254
- viewBox="0 0 22 18" fill="none">
2255
- <path d="M11.002 0L21.3943 18L0.609648 18L11.002 0Z"
2256
- fill="#FEAD20"/>
2257
- </svg>
2258
- </div>
2259
- <div class="w-100" style="border-radius: 10px;">
2260
- <div
2261
- style="display: flex;padding: 12px 24px;gap: 10px;width: 100%;background: #FEAD20;border-radius: 10px 10px 0 0;color:white;font-size: 20px;font-style: normal;font-weight: 700;line-height: normal;letter-spacing: 0.8px;"
2262
- >
2263
- 填寫配送說明
2264
- <div
2265
- class="d-flex ms-auto align-items-center"
2266
- style="gap:10px;color: #FFF;font-size: 16px;font-style: normal;font-weight: 400;line-height: normal;letter-spacing: 0.64px;"
2267
- >
2268
- 步驟 4/5
2269
- <svg
2270
- style="cursor: pointer;"
2271
- xmlns="http://www.w3.org/2000/svg"
2272
- width="14"
2273
- height="13"
2274
- viewBox="0 0 14 13"
2275
- fill="none"
2276
- onclick="${child_gvc.event(() => {
2277
- close();
2278
- this.leaveGuide(vm);
2279
- })}"
2280
- >
2281
- <path d="M1 0.5L13 12.5" stroke="white"
2282
- stroke-linecap="round"/>
2283
- <path d="M13 0.5L1 12.5" stroke="white"
2284
- stroke-linecap="round"/>
2285
- </svg>
2286
- </div>
2287
- </div>
2288
- <div
2289
- class="d-flex flex-column w-100"
2290
- style="background: #FFF;width:100%;padding: 18px 24px;border-radius: 0 0 10px 10px;font-size: 16px;font-style: normal;font-weight: 400;line-height: 160%;letter-spacing: 0.64px;"
2291
- >
2292
- 填寫詳細配送說明,將會出現在結帳頁供顧客閱讀
2293
- <div class="d-flex align-items-center justify-content-between"
2294
- style="margin-top: 24px;height:52px;">
2295
- <div
2296
- style="padding: 6px 18px;border-radius: 10px;border:solid 1px #FEAD20;color: #FEAD20;font-size: 16px;font-style: normal;font-weight: 700;line-height: normal;cursor: pointer;"
2297
- onclick="${child_gvc.event(() => {
2298
- vm.step--;
2299
- close();
2300
- that.findIframeDom('.guide3-3').parentElement.scrollIntoView({});
2301
- gvc.notifyDataChange('shipInit');
2302
- })}"
2303
- >
2304
- 上一步
2305
- </div>
2306
- <div class="d-flex align-items-center justify-content-center"
2307
- style="width: 96px;height: 46px;">
2308
- <div
2309
- class="breathing-light"
2310
- style="padding: 6px 18px;border-radius: 10px;background: #FEAD20;color: #FFF; ;font-size: 16px;font-style: normal;font-weight: 700;line-height: normal;cursor: pointer;"
2311
- onclick="${child_gvc.event(() => {
2312
- next();
2313
- })}"
2314
- >
2315
- 下一步
2316
- </div>
2317
- </div>
2318
- </div>
2319
- </div>
2320
- </div>
2321
- </div>
2322
- `;
2323
- },
2324
- divCreate: { class: `innerGuide` },
2325
- }));
2326
- return ``;
2327
2241
  }
2328
2242
  case 5: {
2329
2243
  return this.drawFinBG(BG, vm, 'guide3-5', 'shipInit', 5, 'shippment_setting', { loading: true });
@@ -2494,183 +2408,22 @@ export class BgGuide {
2494
2408
  let element = that.findIframeDom('.innerGuide');
2495
2409
  element.remove();
2496
2410
  }
2497
- setTimeout(() => {
2498
- let target = this.findIframeDom('.guide2-5');
2499
- target.parentElement.parentElement.scrollIntoView();
2500
- let iframe = this.findPageIframe();
2501
- let iframeRect = iframe.getBoundingClientRect();
2502
- let rect = target.getBoundingClientRect();
2503
- let left = rect.left + iframeRect.left - 30;
2504
- let top = iframeRect.top + 10;
2505
- let right = rect.right + iframeRect.left + 24;
2506
- let bottom = iframeRect.bottom - 230;
2507
- const scrollEvent = this.disableScroll();
2508
- BG.classList.add('guide2-5');
2509
- target.classList.add(`position-relative`);
2510
- const child_gvc = iframe.contentWindow.glitter.pageConfig[0].gvc;
2511
- gvc.addStyle(`
2512
- .guide2-5 {
2513
- ${this.holeBG(left, right, top, bottom)}
2514
- .breathing-light {
2515
- position:relative;
2516
- z-index: 1;
2517
- border: 1px solid rgba(255, 233, 178, 0.5);
2518
- }
2519
-
2520
- `);
2521
- child_gvc.addStyle(`
2522
- .breathing-light {
2523
- position:relative;
2524
- z-index: 1;
2525
- border: 1px solid rgba(255, 233, 178, 0.5);
2526
- }
2527
- .breathing-light::before {
2528
- content: '';
2529
- position: absolute;
2530
- top: -5px; /* 控制光效范围 */
2531
- left: -5px;
2532
- right: -5px;
2533
- bottom: -5px;
2534
- border: 5px solid #FFE9B2; /* 边框颜色 */
2535
- border-radius: inherit; /* 保持和容器一样的圆角 */
2536
- filter: blur(2px); /* 模糊程度 */
2537
- animation: breathing 1s infinite alternate; /* 呼吸灯效果 */
2538
- }
2539
- @keyframes breathing {
2540
-
2541
- 0% {
2542
- opacity: 1;
2543
- transform: scale(1); /* 放大效果 */
2544
- box-shadow: 0 0 4px 6px rgba(255, 233, 178, 0.8);
2545
- }
2546
- 100% {
2547
- opacity: 0.5;
2548
- transform: scale(1);
2549
- box-shadow: 0 0 4px rgba(255, 233, 178, 0.5);
2550
- }
2551
- }
2411
+ let target = this.findIframeDom('.guide2-5');
2412
+ if (!target) {
2413
+ const timer = setInterval(() => {
2414
+ if (this.findIframeDom(`.guide2-5`)) {
2415
+ clearInterval(timer);
2416
+ gvc.notifyDataChange(viewID);
2552
2417
  }
2553
- `);
2554
- $(target).append(child_gvc.bindView({
2555
- bind: `guide2-5`,
2556
- view: () => {
2557
- let inputGroup = target.querySelectorAll('input');
2558
- let allCheck = true;
2559
- inputGroup.forEach((el) => {
2560
- if (el.value.length == 0) {
2561
- allCheck = false;
2562
- this.detectOninputThrough(el, () => {
2563
- child_gvc.notifyDataChange(`guide2-5`);
2564
- });
2565
- }
2566
- });
2567
- return html `
2568
- <div class="d-flex "
2569
- style="width: 457px;height: 191px;flex-shrink: 0;position: absolute;right: 2px;top:245px;z-index:1;">
2570
- <div class="h-100 d-flex align-items-center justify-content-center"
2571
- style="width: 24px;">
2572
- <svg xmlns="http://www.w3.org/2000/svg" width="18" height="22"
2573
- viewBox="0 0 18 22" fill="none">
2574
- <path d="M-5.24537e-07 11L18 0.607696L18 21.3923L-5.24537e-07 11Z"
2575
- fill="white"/>
2576
- </svg>
2577
- </div>
2578
-
2579
- <div class="flex-fill "
2580
- style="border-radius: 10px;filter: drop-shadow(2px 2px 10px rgba(0, 0, 0, 0.15));">
2581
- <div
2582
- style="display: flex;padding: 12px 24px;gap: 10px;width: 100%;background: #FEAD20;border-radius: 10px 10px 0 0;color:white;font-size: 20px;font-style: normal;font-weight: 700;line-height: normal;letter-spacing: 0.8px;"
2583
- >
2584
- 填寫付款資訊
2585
- <div
2586
- class="d-flex ms-auto align-items-center"
2587
- style="gap:10px;color: #FFF;font-size: 16px;font-style: normal;font-weight: 400;line-height: normal;letter-spacing: 0.64px;"
2588
- >
2589
- 步驟 5/6
2590
- <svg
2591
- style="cursor: pointer;"
2592
- xmlns="http://www.w3.org/2000/svg"
2593
- width="14"
2594
- height="13"
2595
- viewBox="0 0 14 13"
2596
- fill="none"
2597
- onclick="${child_gvc.event(() => {
2598
- close();
2599
- this.enableScroll(scrollEvent);
2600
- this.leaveGuide(vm);
2601
- })}"
2602
- >
2603
- <path d="M1 0.5L13 12.5" stroke="white"
2604
- stroke-linecap="round"/>
2605
- <path d="M13 0.5L1 12.5" stroke="white"
2606
- stroke-linecap="round"/>
2607
- </svg>
2608
- </div>
2609
- </div>
2610
- <div
2611
- class="d-flex flex-column w-100 "
2612
- style="background: #FFF;width:100%;padding: 18px 24px;border-radius: 0 0 10px 10px;font-size: 16px;font-style: normal;font-weight: 400;line-height: 160%;letter-spacing: 0.64px;"
2613
- >
2614
- 填寫銀行資訊及付款說明
2615
- <div class="d-flex align-items-center justify-content-between"
2616
- style="margin-top: 24px;height:52px;">
2617
- <div
2618
- style="padding: 6px 18px;border-radius: 10px;border:solid 1px #FEAD20;color: #FEAD20;font-size: 16px;font-style: normal;font-weight: 700;line-height: normal;cursor: pointer;"
2619
- onclick="${child_gvc.event(() => {
2620
- let iframe = this.findPageIframe();
2621
- const openGroup = iframe === null || iframe === void 0 ? void 0 : iframe.contentWindow.document.querySelectorAll('.openIt');
2622
- openGroup.forEach((el) => {
2623
- el.classList.toggle('openIt');
2624
- });
2625
- this.enableScroll(scrollEvent);
2626
- close();
2627
- setTimeout(() => {
2628
- this.findIframeDom('.guide2-4').scrollIntoView({});
2629
- vm.step = 4;
2630
- gvc.notifyDataChange('financeInit');
2631
- }, 600);
2632
- })}"
2633
- >
2634
- 上一步
2635
- </div>
2636
- ${allCheck
2637
- ? html `
2638
- <div class="d-flex align-items-center justify-content-center"
2639
- style="width: 96px;height: 46px;">
2640
- <div
2641
- class="breathing-light"
2642
- style="padding: 6px 18px;border-radius: 10px;background: #FEAD20;color: #FFF;font-size: 16px;font-style: normal;font-weight: 700;line-height: normal;cursor: pointer;"
2643
- onclick="${child_gvc.event(() => {
2644
- vm.step++;
2645
- this.enableScroll(scrollEvent);
2646
- close();
2647
- gvc.notifyDataChange('financeInit');
2648
- })}"
2649
- >
2650
- 下一步
2651
- </div>
2652
- </div>
2653
- `
2654
- : html `
2655
- <div class="d-flex align-items-center justify-content-center"
2656
- style="width: 96px;height: 46px;">
2657
- <div
2658
- class="breathing-light"
2659
- style="opacity: 0.8;padding: 6px 18px;border-radius: 10px;background: #FFE9B2;color: #FFF;font-size: 16px;font-style: normal;font-weight: 700;line-height: normal;"
2660
- >
2661
- 下一步
2662
- </div>
2663
- </div>
2664
- `}
2665
- </div>
2666
- </div>
2667
- </div>
2668
- </div>
2669
- `;
2670
- },
2671
- divCreate: { class: `innerGuide` },
2672
- }));
2673
- }, 400);
2418
+ }, 400);
2419
+ }
2420
+ return this.drawBGwithBelowWindow(BG, vm, '.guide2-5', viewID, 5, 6, {
2421
+ width: 457,
2422
+ height: 191,
2423
+ title: '填寫付款資訊',
2424
+ content: '填寫銀行資訊及付款說明',
2425
+ cover: true
2426
+ });
2674
2427
  return ``;
2675
2428
  }
2676
2429
  case 6: {
@@ -2756,6 +2509,9 @@ export class BgGuide {
2756
2509
  ApiShop.setGuide(vm.progress).then((r) => {
2757
2510
  });
2758
2511
  }
2512
+ else {
2513
+ vm.progress = vm.progress.filter(item => item.title !== "運費設定");
2514
+ }
2759
2515
  vm.progressLoading = false;
2760
2516
  gvc.notifyDataChange('init');
2761
2517
  });