ts-glitter 14.5.7 → 14.5.9

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 (76) hide show
  1. package/lowcode/Entry.js +19 -16
  2. package/lowcode/Entry.ts +37 -35
  3. package/lowcode/backend-manager/bg-guide.js +17 -17
  4. package/lowcode/backend-manager/bg-guide.ts +23 -23
  5. package/lowcode/backend-manager/bg-widget.js +2 -2
  6. package/lowcode/backend-manager/bg-widget.ts +2 -2
  7. package/lowcode/cms-plugin/shopping-information.js +3 -4
  8. package/lowcode/cms-plugin/shopping-information.ts +3 -4
  9. package/lowcode/index.html +1 -0
  10. package/lowcode/landing-page/about-us.ts +1 -0
  11. package/lowcode/modules/image-library.js +0 -1
  12. package/lowcode/modules/image-library.ts +0 -1
  13. package/lowcode/public-components/checkout/index.js +3 -4
  14. package/lowcode/public-components/checkout/index.ts +6 -7
  15. package/lowcode/public-components/footer/footer-01.js +3 -3
  16. package/lowcode/public-components/footer/footer-01.ts +3 -3
  17. package/lowcode/public-components/footer/footer-02.js +10 -3
  18. package/lowcode/public-components/footer/footer-02.ts +10 -3
  19. package/lowcode/public-components/footer/footer-03.js +7 -3
  20. package/lowcode/public-components/footer/footer-03.ts +7 -3
  21. package/lowcode/public-components/headers/sy-02.js +4 -0
  22. package/lowcode/public-components/headers/sy-02.ts +4 -0
  23. package/lowcode/public-components/headers/sy-03.js +4 -0
  24. package/lowcode/public-components/headers/sy-03.ts +5 -0
  25. package/lowcode/public-components/headers/sy-04.js +4 -0
  26. package/lowcode/public-components/headers/sy-04.ts +6 -1
  27. package/lowcode/public-components/{footer/ft-class.js → public/color.js} +2 -2
  28. package/lowcode/public-components/{footer/ft-class.ts → public/color.ts} +2 -2
  29. package/lowcode/public-components/user-manager/um-order.js +109 -0
  30. package/lowcode/public-components/user-manager/um-order.ts +338 -0
  31. package/package.json +1 -1
  32. package/src/api-public/controllers/ai-chat.js.map +1 -1
  33. package/src/api-public/controllers/app-release.js.map +1 -1
  34. package/src/api-public/controllers/article.js.map +1 -1
  35. package/src/api-public/controllers/fcm.js.map +1 -1
  36. package/src/api-public/controllers/manager.js.map +3 -3
  37. package/src/api-public/controllers/post.js.map +1 -1
  38. package/src/api-public/controllers/rebate.js.map +1 -1
  39. package/src/api-public/controllers/shop.js +17 -1
  40. package/src/api-public/controllers/shop.js.map +1 -1
  41. package/src/api-public/controllers/shop.ts +24 -2
  42. package/src/api-public/controllers/user.js.map +1 -1
  43. package/src/api-public/services/ai-robot.js.map +1 -1
  44. package/src/api-public/services/auto-send-email.js.map +1 -1
  45. package/src/api-public/services/chat.js.map +1 -1
  46. package/src/api-public/services/custom-code.js.map +1 -1
  47. package/src/api-public/services/fb-message.js.map +1 -1
  48. package/src/api-public/services/financial-service.d.ts +15 -5
  49. package/src/api-public/services/financial-service.js +38 -10
  50. package/src/api-public/services/financial-service.js.map +1 -1
  51. package/src/api-public/services/financial-service.ts +57 -19
  52. package/src/api-public/services/line-message.js.map +1 -1
  53. package/src/api-public/services/manager.js.map +3 -3
  54. package/src/api-public/services/post.js.map +1 -1
  55. package/src/api-public/services/rebate.js.map +1 -1
  56. package/src/api-public/services/recommend.js.map +1 -1
  57. package/src/api-public/services/schedule.js.map +1 -1
  58. package/src/api-public/services/share-permission.js.map +1 -1
  59. package/src/api-public/services/shopping.d.ts +8 -8
  60. package/src/api-public/services/shopping.js +79 -87
  61. package/src/api-public/services/shopping.js.map +1 -1
  62. package/src/api-public/services/shopping.ts +216 -238
  63. package/src/api-public/services/sms.js.map +1 -1
  64. package/src/api-public/services/user.js.map +1 -1
  65. package/src/controllers/ai.js.map +1 -1
  66. package/src/controllers/app.js.map +1 -1
  67. package/src/controllers/global-event.js.map +1 -1
  68. package/src/controllers/template.js.map +1 -1
  69. package/src/index.html +1 -0
  70. package/src/index.js +3 -3
  71. package/src/index.js.map +1 -1
  72. package/src/services/app.js.map +1 -1
  73. package/src/services/backend-service.js.map +1 -1
  74. package/src/services/private_config.js.map +1 -1
  75. package/src/services/seo.js.map +1 -1
  76. package/src/services/template.js.map +1 -1
package/lowcode/Entry.js CHANGED
@@ -14,7 +14,7 @@ import { BaseApi } from './glitterBundle/api/base.js';
14
14
  import { GlobalUser } from './glitter-base/global/global-user.js';
15
15
  import { EditorConfig } from './editor-config.js';
16
16
  import { ShareDialog } from './glitterBundle/dialog/ShareDialog.js';
17
- import { Language } from "./glitter-base/global/language.js";
17
+ import { Language } from './glitter-base/global/language.js';
18
18
  export class Entry {
19
19
  static onCreate(glitter) {
20
20
  var _a;
@@ -61,26 +61,26 @@ export class Entry {
61
61
  }
62
62
  glitter.share.logID = glitter.getUUID();
63
63
  glitter.addStyle(`
64
- @media (prefers-reduced-motion: no-preference) {
64
+ @media (prefers-reduced-motion: no-preference) {
65
65
  :root {
66
66
  scroll-behavior: auto !important;
67
67
  }
68
68
  }
69
-
70
- .hide-elem {
71
- display: none !important;
72
- }
73
-
74
- .hy-drawer-left {
75
- left:-1000px !important;
76
- }
69
+
70
+ .hide-elem {
71
+ display: none !important;
72
+ }
73
+
74
+ .hy-drawer-left {
75
+ left: -1000px !important;
76
+ }
77
77
  `);
78
78
  if (glitter.getUrlParameter('appName')) {
79
79
  window.appName = glitter.getUrlParameter('appName');
80
80
  }
81
81
  window.renderClock = (_a = window.renderClock) !== null && _a !== void 0 ? _a : clockF();
82
82
  console.log(`Entry-time:`, window.renderClock.stop());
83
- glitter.share.editerVersion = 'V_14.5.7';
83
+ glitter.share.editerVersion = 'V_14.5.9';
84
84
  glitter.share.start = new Date();
85
85
  const vm = {
86
86
  appConfig: [],
@@ -470,8 +470,8 @@ export class Entry {
470
470
  });
471
471
  callback();
472
472
  }
473
- const login_config = (window.login_config);
474
- if (login_config.password_to_see && (localStorage.getItem('password_to_see') !== login_config.shop_pwd)) {
473
+ const login_config = window.login_config;
474
+ if (login_config.password_to_see && localStorage.getItem('password_to_see') !== login_config.shop_pwd) {
475
475
  const pwd = window.prompt('請輸入網站密碼', '');
476
476
  localStorage.setItem('password_to_see', pwd !== null && pwd !== void 0 ? pwd : '');
477
477
  if (login_config.shop_pwd === pwd) {
@@ -480,9 +480,12 @@ export class Entry {
480
480
  else {
481
481
  glitter.closeDiaLog();
482
482
  const dialog = new ShareDialog(glitter);
483
- dialog.checkYesOrNot({ text: '網站密碼輸入錯誤', callback: () => {
483
+ dialog.checkYesOrNot({
484
+ text: '網站密碼輸入錯誤',
485
+ callback: () => {
484
486
  authPass();
485
- } });
487
+ },
488
+ });
486
489
  }
487
490
  }
488
491
  else {
@@ -602,7 +605,7 @@ export class Entry {
602
605
  function loopVersion() {
603
606
  ApiPageConfig.getGlitterVersion().then((res) => {
604
607
  console.log('glitterVersion:', res.response.result);
605
- if (res.result && (!glitter.share.editerVersion.includes(res.response.result))) {
608
+ if (res.result && !glitter.share.editerVersion.includes(res.response.result)) {
606
609
  const dialog = new ShareDialog(glitter);
607
610
  dialog.checkYesOrNot({
608
611
  text: '新版本已發佈,是否進行更新?',
package/lowcode/Entry.ts CHANGED
@@ -6,19 +6,18 @@ import { BaseApi } from './glitterBundle/api/base.js';
6
6
  import { GlobalUser } from './glitter-base/global/global-user.js';
7
7
  import { EditorConfig } from './editor-config.js';
8
8
  import { ShareDialog } from './glitterBundle/dialog/ShareDialog.js';
9
- import {EditorElem} from "./glitterBundle/plugins/editor-elem.js";
10
- import {Language} from "./glitter-base/global/language.js";
9
+ import { Language } from './glitter-base/global/language.js';
11
10
 
12
11
  export class Entry {
13
12
  public static onCreate(glitter: Glitter) {
14
- Language.getLanguage()
15
- if((window as any).language !== Language.getLanguage()){
16
- const url=new URL(`${glitter.root_path}${Language.getLanguageLinkPrefix()}${(window as any).glitter_page}`)
17
- if(glitter.getUrlParameter('appName')){
18
- url.searchParams.set('appName',glitter.getUrlParameter('appName'))
13
+ Language.getLanguage();
14
+ if ((window as any).language !== Language.getLanguage()) {
15
+ const url = new URL(`${glitter.root_path}${Language.getLanguageLinkPrefix()}${(window as any).glitter_page}`);
16
+ if (glitter.getUrlParameter('appName')) {
17
+ url.searchParams.set('appName', glitter.getUrlParameter('appName'));
19
18
  }
20
- location.href=url.href;
21
- return
19
+ location.href = url.href;
20
+ return;
22
21
  }
23
22
  glitter.share.reload = (page: string, app_name: string) => {
24
23
  (window as any).appName = app_name || (window as any).appName;
@@ -63,26 +62,27 @@ Language.getLanguage()
63
62
 
64
63
  glitter.share.logID = glitter.getUUID();
65
64
  glitter.addStyle(`
66
- @media (prefers-reduced-motion: no-preference) {
65
+ @media (prefers-reduced-motion: no-preference) {
67
66
  :root {
68
67
  scroll-behavior: auto !important;
69
68
  }
70
69
  }
71
-
72
- .hide-elem {
73
- display: none !important;
74
- }
75
-
76
- .hy-drawer-left {
77
- left:-1000px !important;
78
- }
70
+
71
+ .hide-elem {
72
+ display: none !important;
73
+ }
74
+
75
+ .hy-drawer-left {
76
+ left: -1000px !important;
77
+ }
79
78
  `);
80
79
  if (glitter.getUrlParameter('appName')) {
81
80
  (window as any).appName = glitter.getUrlParameter('appName');
82
81
  }
83
82
  (window as any).renderClock = (window as any).renderClock ?? clockF();
84
83
  console.log(`Entry-time:`, (window as any).renderClock.stop());
85
- glitter.share.editerVersion = 'V_14.5.7';
84
+ glitter.share.editerVersion = 'V_14.5.9';
85
+
86
86
  glitter.share.start = new Date();
87
87
  const vm: {
88
88
  appConfig: any;
@@ -511,7 +511,7 @@ Language.getLanguage()
511
511
  );
512
512
 
513
513
  function authPass() {
514
- function next(){
514
+ function next() {
515
515
  glitter.htmlGenerate.setHome({
516
516
  app_config: vm.appConfig,
517
517
  page_config: data.response.result[0].page_config,
@@ -521,23 +521,25 @@ Language.getLanguage()
521
521
  });
522
522
  callback();
523
523
  }
524
- const login_config=((window as any).login_config)
525
- if(login_config.password_to_see && (localStorage.getItem('password_to_see') !== login_config.shop_pwd)){
524
+ const login_config = (window as any).login_config;
525
+ if (login_config.password_to_see && localStorage.getItem('password_to_see') !== login_config.shop_pwd) {
526
526
  const pwd = window.prompt('請輸入網站密碼', '');
527
- localStorage.setItem('password_to_see',pwd ?? '');
528
- if(login_config.shop_pwd===pwd){
529
- next()
530
- }else{
531
- glitter.closeDiaLog()
532
- const dialog=new ShareDialog(glitter)
533
- dialog.checkYesOrNot({text:'網站密碼輸入錯誤',callback:()=>{
534
- authPass()
535
- }})
527
+ localStorage.setItem('password_to_see', pwd ?? '');
528
+ if (login_config.shop_pwd === pwd) {
529
+ next();
530
+ } else {
531
+ glitter.closeDiaLog();
532
+ const dialog = new ShareDialog(glitter);
533
+ dialog.checkYesOrNot({
534
+ text: '網站密碼輸入錯誤',
535
+ callback: () => {
536
+ authPass();
537
+ },
538
+ });
536
539
  }
537
- }else{
538
- next()
540
+ } else {
541
+ next();
539
542
  }
540
-
541
543
  }
542
544
 
543
545
  function authError(message: string) {
@@ -673,7 +675,7 @@ Language.getLanguage()
673
675
  function loopVersion() {
674
676
  ApiPageConfig.getGlitterVersion().then((res) => {
675
677
  console.log('glitterVersion:', res.response.result);
676
- if (res.result && (!glitter.share.editerVersion.includes(res.response.result))) {
678
+ if (res.result && !glitter.share.editerVersion.includes(res.response.result)) {
677
679
  const dialog = new ShareDialog(glitter);
678
680
  dialog.checkYesOrNot({
679
681
  text: '新版本已發佈,是否進行更新?',
@@ -1508,7 +1508,7 @@ export class BgGuide {
1508
1508
  }, 500);
1509
1509
  return ``;
1510
1510
  }
1511
- return this.drawSecondRowBG(BG, vm, `.guide6-2`, viewID, '商店訊息', 5);
1511
+ return this.drawSecondRowBG(BG, vm, `.guide6-2`, viewID, '商店訊息', 4);
1512
1512
  }
1513
1513
  case 3: {
1514
1514
  let target = this.findIframeDom(`.guide6-3`);
@@ -1521,7 +1521,7 @@ export class BgGuide {
1521
1521
  }
1522
1522
  }, 400);
1523
1523
  }
1524
- return this.drawBGwithBelowWindow(BG, vm, '.guide6-3', viewID, 3, 5, {
1524
+ return this.drawBGwithBelowWindow(BG, vm, '.guide6-3', viewID, 3, 4, {
1525
1525
  width: 332,
1526
1526
  height: 209,
1527
1527
  title: '商店基本資訊',
@@ -1530,6 +1530,20 @@ export class BgGuide {
1530
1530
  });
1531
1531
  }
1532
1532
  case 4: {
1533
+ let target = this.findIframeDom(`.guide6-5`);
1534
+ target.parentElement.scrollIntoView({});
1535
+ return this.drawBGwithBelowWindow(BG, vm, '.guide6-5', viewID, 4, 4, {
1536
+ width: 332,
1537
+ height: 209,
1538
+ title: '網域設定',
1539
+ content: '您可以選擇使用免費的子網域,或是額外付費申請獨立網域',
1540
+ btnText: '完成',
1541
+ }, () => {
1542
+ this.leaveGuide(vm, 0);
1543
+ this.finGuide('shop_information');
1544
+ });
1545
+ }
1546
+ case -4: {
1533
1547
  let target = this.findIframeDom(`.guide6-4`);
1534
1548
  if (!target) {
1535
1549
  const timer = setInterval(() => {
@@ -1547,22 +1561,8 @@ export class BgGuide {
1547
1561
  content: '完善SEO系統,提升網站的曝光度。',
1548
1562
  });
1549
1563
  }
1550
- case 5: {
1551
- let target = this.findIframeDom(`.guide6-5`);
1552
- target.parentElement.scrollIntoView({});
1553
- return this.drawBGwithBelowWindow(BG, vm, '.guide6-5', viewID, 5, 5, {
1554
- width: 332,
1555
- height: 209,
1556
- title: '網域設定',
1557
- content: '您可以選擇使用免費的子網域,或是額外付費申請獨立網域',
1558
- btnText: '完成',
1559
- }, () => {
1560
- this.leaveGuide(vm, 0);
1561
- this.finGuide('shop_information');
1562
- });
1563
- }
1564
1564
  default: {
1565
- return this.drawMainRowBG(BG, vm, `.mainRow1`, viewID, 5);
1565
+ return this.drawMainRowBG(BG, vm, `.mainRow1`, viewID, 4);
1566
1566
  }
1567
1567
  }
1568
1568
  },
@@ -1726,7 +1726,7 @@ export class BgGuide {
1726
1726
  }, 500);
1727
1727
  return ``
1728
1728
  }
1729
- return this.drawSecondRowBG(BG, vm, `.guide6-2`, viewID, '商店訊息', 5);
1729
+ return this.drawSecondRowBG(BG, vm, `.guide6-2`, viewID, '商店訊息', 4);
1730
1730
  }
1731
1731
  case 3: {
1732
1732
  let target = this.findIframeDom(`.guide6-3`);
@@ -1746,7 +1746,7 @@ export class BgGuide {
1746
1746
  '.guide6-3',
1747
1747
  viewID,
1748
1748
  3,
1749
- 5,
1749
+ 4,
1750
1750
  {
1751
1751
  width: 332,
1752
1752
  height: 209,
@@ -1758,24 +1758,6 @@ export class BgGuide {
1758
1758
  );
1759
1759
  }
1760
1760
  case 4: {
1761
- let target = this.findIframeDom(`.guide6-4`);
1762
- if (!target) {
1763
- const timer = setInterval(() => {
1764
- if (this.findIframeDom(`.guide6-4`)) {
1765
- clearInterval(timer);
1766
- gvc.notifyDataChange(viewID);
1767
- }
1768
- }, 400);
1769
- }
1770
- target.parentElement.parentElement.scrollIntoView();
1771
- return this.drawBGwithBelowWindow(BG, vm, '.guide6-4', viewID, 4, 5, {
1772
- width: 332,
1773
- height: 209,
1774
- title: 'SEO設定',
1775
- content: '完善SEO系統,提升網站的曝光度。',
1776
- });
1777
- }
1778
- case 5: {
1779
1761
  let target = this.findIframeDom(`.guide6-5`);
1780
1762
  target.parentElement.scrollIntoView({});
1781
1763
 
@@ -1784,8 +1766,8 @@ export class BgGuide {
1784
1766
  vm,
1785
1767
  '.guide6-5',
1786
1768
  viewID,
1787
- 5,
1788
- 5,
1769
+ 4,
1770
+ 4,
1789
1771
  {
1790
1772
  width: 332,
1791
1773
  height: 209,
@@ -1800,8 +1782,26 @@ export class BgGuide {
1800
1782
  }
1801
1783
  );
1802
1784
  }
1785
+ case -4: {
1786
+ let target = this.findIframeDom(`.guide6-4`);
1787
+ if (!target) {
1788
+ const timer = setInterval(() => {
1789
+ if (this.findIframeDom(`.guide6-4`)) {
1790
+ clearInterval(timer);
1791
+ gvc.notifyDataChange(viewID);
1792
+ }
1793
+ }, 400);
1794
+ }
1795
+ target.parentElement.parentElement.scrollIntoView();
1796
+ return this.drawBGwithBelowWindow(BG, vm, '.guide6-4', viewID, 4, 5, {
1797
+ width: 332,
1798
+ height: 209,
1799
+ title: 'SEO設定',
1800
+ content: '完善SEO系統,提升網站的曝光度。',
1801
+ });
1802
+ }
1803
1803
  default: {
1804
- return this.drawMainRowBG(BG, vm, `.mainRow1`, viewID, 5);
1804
+ return this.drawMainRowBG(BG, vm, `.mainRow1`, viewID, 4);
1805
1805
  }
1806
1806
  }
1807
1807
  },
@@ -1786,9 +1786,9 @@ ${(_c = obj.default) !== null && _c !== void 0 ? _c : ''}</textarea
1786
1786
  static card(htmlString, classStyle = 'p-3 bg-white rounded-3 shadow border w-100') {
1787
1787
  return this.mainCard(htmlString);
1788
1788
  }
1789
- static mainCard(htmlString) {
1789
+ static mainCard(htmlString, customerClass) {
1790
1790
  return html `
1791
- <div class="main-card">${htmlString}</div>`;
1791
+ <div class="main-card ${customerClass !== null && customerClass !== void 0 ? customerClass : ''}">${htmlString}</div>`;
1792
1792
  }
1793
1793
  static summaryCard(htmlString) {
1794
1794
  return html `
@@ -2162,9 +2162,9 @@ ${obj.default ?? ''}</textarea
2162
2162
  return this.mainCard(htmlString);
2163
2163
  }
2164
2164
 
2165
- static mainCard(htmlString: string) {
2165
+ static mainCard(htmlString: string , customerClass?:string) {
2166
2166
  return html`
2167
- <div class="main-card">${htmlString}</div>`;
2167
+ <div class="main-card ${customerClass??''}">${htmlString}</div>`;
2168
2168
  }
2169
2169
 
2170
2170
  static summaryCard(htmlString: string) {
@@ -204,7 +204,7 @@ export class ShoppingInformation {
204
204
  });
205
205
  };
206
206
  return BgWidget.mainCard(html `
207
- <div class="d-flex flex-column" style="gap:18px;">
207
+ <div class="d-flex flex-column " style="gap:18px;">
208
208
  <div style="font-size: 16px;font-weight: 700;">商店基本資訊</div>
209
209
  <div class="d-flex w-100" style="gap:24px;">
210
210
  ${BgWidget.editeInput({
@@ -229,7 +229,6 @@ export class ShoppingInformation {
229
229
  style: 'width:100%;margin: 8px 0;',
230
230
  })}
231
231
  </div>
232
-
233
232
  </div>
234
233
  <div class="d-flex w-100" style="gap:24px;">
235
234
  ${BgWidget.editeInput({
@@ -420,7 +419,7 @@ export class ShoppingInformation {
420
419
  })}
421
420
  </div>
422
421
  </div>
423
- `);
422
+ `, `guide6-3`);
424
423
  }, divCreate: {}
425
424
  })}
426
425
  <div style="margin-top: 24px;"></div>
@@ -592,7 +591,7 @@ ${BgWidget.title('GoDaddy DNS 設定指南')}
592
591
  }), '申請')}
593
592
  </div>
594
593
  </div>
595
- `);
594
+ `, 'guide6-5');
596
595
  }
597
596
  };
598
597
  })}
@@ -211,7 +211,7 @@ export class ShoppingInformation {
211
211
  })
212
212
  }
213
213
  return BgWidget.mainCard(html`
214
- <div class="d-flex flex-column" style="gap:18px;">
214
+ <div class="d-flex flex-column " style="gap:18px;">
215
215
  <div style="font-size: 16px;font-weight: 700;">商店基本資訊</div>
216
216
  <div class="d-flex w-100" style="gap:24px;">
217
217
  ${BgWidget.editeInput({
@@ -236,7 +236,6 @@ export class ShoppingInformation {
236
236
  style: 'width:100%;margin: 8px 0;',
237
237
  })}
238
238
  </div>
239
-
240
239
  </div>
241
240
  <div class="d-flex w-100" style="gap:24px;">
242
241
  ${BgWidget.editeInput({
@@ -435,7 +434,7 @@ export class ShoppingInformation {
435
434
  })}
436
435
  </div>
437
436
  </div>
438
- `)
437
+ `,`guide6-3`)
439
438
  }, divCreate: {}
440
439
  })}
441
440
  <div style="margin-top: 24px;"></div>
@@ -606,7 +605,7 @@ ${BgWidget.title('GoDaddy DNS 設定指南')}
606
605
  }), '申請')}
607
606
  </div>
608
607
  </div>
609
- `)
608
+ `,'guide6-5')
610
609
 
611
610
  }
612
611
  }
@@ -13,6 +13,7 @@
13
13
 
14
14
  <style id="style_base" style="">
15
15
  .selectComponentHover {
16
+
16
17
  border: 4px solid dodgerblue !important;
17
18
  border-radius: 5px !important;
18
19
  box-sizing: border-box !important;
@@ -5,6 +5,7 @@ const html = String.raw
5
5
  export class AboutUs {
6
6
  public static main(gvc: GVC) {
7
7
  const css = String.raw
8
+
8
9
  gvc.addStyle(css`
9
10
  .f_40 {
10
11
  color: #393939;
@@ -1003,7 +1003,6 @@ export class imageLibrary {
1003
1003
  return html `
1004
1004
  <div class="w-100 d-flex flex-column">
1005
1005
  <div style="font-size: 13px;">您只能選擇圖片當作子類媒體</div>
1006
-
1007
1006
  <div class="d-flex flex-wrap w-100" style="gap: 0.5rem;margin-top:1rem;">
1008
1007
  ${gvc.bindView({
1009
1008
  bind: "imageArray",
@@ -1159,7 +1159,6 @@ export class imageLibrary {
1159
1159
  return html`
1160
1160
  <div class="w-100 d-flex flex-column">
1161
1161
  <div style="font-size: 13px;">您只能選擇圖片當作子類媒體</div>
1162
-
1163
1162
  <div class="d-flex flex-wrap w-100" style="gap: 0.5rem;margin-top:1rem;">
1164
1163
  ${gvc.bindView({
1165
1164
  bind: "imageArray",
@@ -2319,16 +2319,15 @@ export class CheckoutIndex {
2319
2319
  give_away: ApiCart.cart.give_away,
2320
2320
  }).then((res) => {
2321
2321
  dialog.dataLoading({ visible: false });
2322
- console.log('res -- ', res);
2323
2322
  if (res.response.off_line || res.response.is_free) {
2324
2323
  ApiCart.clearCart();
2325
2324
  location.href = res.response.return_url;
2326
2325
  }
2327
2326
  else {
2328
2327
  ApiCart.clearCart();
2329
- if (res.response.form.returnCode == "0000") {
2330
- console.log("res.response.form.info.paymentUrl.web -- ", res.response.form.info.paymentUrl.web);
2331
- location.href = res.response.form.info.paymentUrl.web;
2328
+ if (res.response.returnCode == "0000" && vm.cartData.customer_info.payment_select == "line_pay") {
2329
+ console.log("res.response.form.info.paymentUrl.web -- ", res.response.info.paymentUrl.web);
2330
+ location.href = res.response.info.paymentUrl.web;
2332
2331
  }
2333
2332
  else if (res.response.approveLink) {
2334
2333
  location.href = res.response.approveLink;
@@ -2423,7 +2423,9 @@ export class CheckoutIndex {
2423
2423
  }
2424
2424
  });
2425
2425
  const dialog = new ShareDialog(gvc.glitter);
2426
+
2426
2427
  dialog.dataLoading({visible: true});
2428
+
2427
2429
  ApiShop.toCheckout({
2428
2430
  line_items: vm.cartData.lineItems.map((dd: any) => {
2429
2431
  return {
@@ -2449,18 +2451,16 @@ export class CheckoutIndex {
2449
2451
  give_away: ApiCart.cart.give_away,
2450
2452
  }).then((res) => {
2451
2453
  dialog.dataLoading({visible: false});
2452
- console.log('res -- ', res);
2453
-
2454
2454
  if (res.response.off_line || res.response.is_free) {
2455
2455
  ApiCart.clearCart();
2456
2456
  location.href = res.response.return_url;
2457
2457
  } else {
2458
-
2458
+
2459
2459
  ApiCart.clearCart();
2460
2460
  // todo if 他是paypal的key值 上面應該有select之類的
2461
- if (res.response.form.returnCode == "0000"){
2462
- console.log("res.response.form.info.paymentUrl.web -- " , res.response.form.info.paymentUrl.web)
2463
- location.href = res.response.form.info.paymentUrl.web;
2461
+ if (res.response.returnCode == "0000" && vm.cartData.customer_info.payment_select == "line_pay"){
2462
+ console.log("res.response.form.info.paymentUrl.web -- " , res.response.info.paymentUrl.web)
2463
+ location.href = res.response.info.paymentUrl.web;
2464
2464
  // todo 手機跳轉用這個
2465
2465
  // location.href = res.response.form.info.paymentUrl.app;
2466
2466
  }else if (res.response.approveLink) {
@@ -2477,7 +2477,6 @@ export class CheckoutIndex {
2477
2477
  // if (res.response.form.approveLink || 付款方式是PayPal){
2478
2478
  // location.href = res.response.form.approveLink;
2479
2479
  // }else{
2480
-
2481
2480
  }
2482
2481
  });
2483
2482
  })}"
@@ -1,12 +1,12 @@
1
- import { FtClass } from './ft-class.js';
1
+ import { Color } from '../public/color.js';
2
2
  import { ApiUser } from '../../glitter-base/route/user.js';
3
3
  import { LanguageView } from '../public/language-view.js';
4
- import { Language } from "../../glitter-base/global/language.js";
4
+ import { Language } from '../../glitter-base/global/language.js';
5
5
  const html = String.raw;
6
6
  export class Footer01 {
7
7
  static main(gvc, widget, subData) {
8
8
  const formData = widget.formData;
9
- const colors = FtClass.getColor(gvc, formData);
9
+ const colors = Color.getTheme(gvc, formData);
10
10
  const footer = {
11
11
  list: [],
12
12
  };
@@ -1,8 +1,8 @@
1
1
  import { GVC } from '../../glitterBundle/GVController.js';
2
- import { FtClass } from './ft-class.js';
2
+ import { Color } from '../public/color.js';
3
3
  import { ApiUser } from '../../glitter-base/route/user.js';
4
4
  import { LanguageView } from '../public/language-view.js';
5
- import {Language} from "../../glitter-base/global/language.js";
5
+ import { Language } from '../../glitter-base/global/language.js';
6
6
 
7
7
  const html = String.raw;
8
8
 
@@ -20,7 +20,7 @@ type FooterItem = {
20
20
  export class Footer01 {
21
21
  static main(gvc: GVC, widget: any, subData: any) {
22
22
  const formData = widget.formData;
23
- const colors = FtClass.getColor(gvc, formData);
23
+ const colors = Color.getTheme(gvc, formData);
24
24
  const footer = {
25
25
  list: [],
26
26
  };
@@ -1,12 +1,13 @@
1
- import { FtClass } from './ft-class.js';
1
+ import { Color } from '../public/color.js';
2
2
  import { ApiUser } from '../../glitter-base/route/user.js';
3
- import { Language } from "../../glitter-base/global/language.js";
3
+ import { Language } from '../../glitter-base/global/language.js';
4
+ import { LanguageView } from '../public/language-view.js';
4
5
  const html = String.raw;
5
6
  export class Footer02 {
6
7
  static main(gvc, widget, subData) {
7
8
  var _a;
8
9
  const formData = widget.formData;
9
- const colors = FtClass.getColor(gvc, formData);
10
+ const colors = Color.getTheme(gvc, formData);
10
11
  const footer = {
11
12
  list: [],
12
13
  };
@@ -155,7 +156,13 @@ export class Footer02 {
155
156
  }
156
157
  })()}
157
158
  </div>
159
+ ${window.store_info.language_setting.support.length > 1 && document.body.clientWidth < 800
160
+ ? html `<div class="col-12 d-flex justify-content-center mb-3">${LanguageView.selectLanguage(gvc, colors)}</div>`
161
+ : ``}
158
162
  <div class="col-12 col-md-3 col-lg-6 f-title-container d-flex flex-column ms-auto">
163
+ ${window.store_info.language_setting.support.length > 1 && document.body.clientWidth >= 800
164
+ ? html `<div class="d-flex justify-content-end mb-3">${LanguageView.selectLanguage(gvc, colors)}</div>`
165
+ : ``}
159
166
  <div class="d-flex gap-2 p-0 pb-3 justify-content-${document.body.clientWidth > 768 ? 'end' : 'center'}">
160
167
  ${(() => {
161
168
  try {