ts-glitter 20.8.7 → 20.9.1

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 (180) hide show
  1. package/lowcode/Entry.js +1 -1
  2. package/lowcode/Entry.ts +1 -1
  3. package/lowcode/backend-manager/bg-product.js +1 -1
  4. package/lowcode/backend-manager/bg-product.ts +1 -1
  5. package/lowcode/backend-manager/bg-recommend.js +1 -1
  6. package/lowcode/backend-manager/bg-recommend.ts +2 -2
  7. package/lowcode/backend-manager/bg-shopping.js +2 -5
  8. package/lowcode/backend-manager/bg-shopping.ts +2 -5
  9. package/lowcode/cms-plugin/POS-setting.js +58 -34
  10. package/lowcode/cms-plugin/POS-setting.ts +69 -33
  11. package/lowcode/cms-plugin/data-analyze-orders.js +0 -1
  12. package/lowcode/cms-plugin/data-analyze-orders.ts +1 -1
  13. package/lowcode/cms-plugin/data-analyze.js +1 -21
  14. package/lowcode/cms-plugin/data-analyze.ts +25 -25
  15. package/lowcode/cms-plugin/filter-options.js +1 -1
  16. package/lowcode/cms-plugin/filter-options.ts +1 -2
  17. package/lowcode/cms-plugin/information/information-module.js +275 -0
  18. package/lowcode/cms-plugin/information/information-module.ts +308 -0
  19. package/lowcode/cms-plugin/pos-pages/models.ts +3 -1
  20. package/lowcode/cms-plugin/pos-pages/payment-page.js +3 -11
  21. package/lowcode/cms-plugin/pos-pages/payment-page.ts +3 -11
  22. package/lowcode/cms-plugin/pos-pages/pos-function.js +1 -0
  23. package/lowcode/cms-plugin/pos-pages/pos-function.ts +1 -0
  24. package/lowcode/cms-plugin/pos-pages/products-page.js +1 -1
  25. package/lowcode/cms-plugin/pos-pages/products-page.ts +1 -1
  26. package/lowcode/cms-plugin/product-service.js +4 -9
  27. package/lowcode/cms-plugin/product-service.ts +4 -13
  28. package/lowcode/cms-plugin/shopping-discount-setting.js +76 -27
  29. package/lowcode/cms-plugin/shopping-discount-setting.ts +123 -63
  30. package/lowcode/cms-plugin/shopping-information.js +21 -167
  31. package/lowcode/cms-plugin/shopping-information.ts +35 -191
  32. package/lowcode/cms-plugin/shopping-order-return.js +212 -360
  33. package/lowcode/cms-plugin/shopping-order-return.ts +349 -482
  34. package/lowcode/cms-plugin/shopping-product-setting.js +8 -0
  35. package/lowcode/cms-plugin/shopping-product-setting.ts +12 -4
  36. package/lowcode/form-view/e-commerce/product-select.js +59 -51
  37. package/lowcode/form-view/e-commerce/product-select.ts +279 -266
  38. package/lowcode/glitter-base/global/language.js +2 -1
  39. package/lowcode/glitter-base/global/language.ts +2 -1
  40. package/lowcode/public-components/checkout/index.ts +2078 -2078
  41. package/lowcode/public-components/headers/sy-02.js +190 -179
  42. package/lowcode/public-components/headers/sy-02.ts +397 -370
  43. package/lowcode/public-components/headers/sy-03.js +133 -107
  44. package/lowcode/public-components/headers/sy-03.ts +276 -244
  45. package/lowcode/public-components/headers/sy-04.js +181 -146
  46. package/lowcode/public-components/headers/sy-04.ts +289 -247
  47. package/lowcode/public-components/product/pd-class.js +31 -23
  48. package/lowcode/public-components/product/pd-class.ts +51 -29
  49. package/lowcode/public-components/user-manager/um-voucher.js +1 -0
  50. package/lowcode/public-components/user-manager/um-voucher.ts +1 -0
  51. package/package.json +1 -1
  52. package/src/Language.js +1 -1
  53. package/src/Language.js.map +1 -1
  54. package/src/Language.ts +1 -1
  55. package/src/api-public/controllers/ai-chat.js.map +1 -1
  56. package/src/api-public/controllers/chat.js.map +1 -1
  57. package/src/api-public/controllers/customer-sessions.js.map +1 -1
  58. package/src/api-public/controllers/fb-message.js.map +1 -1
  59. package/src/api-public/controllers/fb-service.js.map +1 -1
  60. package/src/api-public/controllers/invoice.js.map +1 -1
  61. package/src/api-public/controllers/line-message.js.map +1 -1
  62. package/src/api-public/controllers/oauth.js.map +1 -1
  63. package/src/api-public/controllers/progress.js.map +1 -1
  64. package/src/api-public/controllers/rebate.js.map +1 -1
  65. package/src/api-public/controllers/recommend.js.map +1 -1
  66. package/src/api-public/controllers/reconciliation.js.map +1 -1
  67. package/src/api-public/controllers/shop.js +5 -2
  68. package/src/api-public/controllers/shop.js.map +1 -1
  69. package/src/api-public/controllers/shop.ts +7 -3
  70. package/src/api-public/controllers/shopee.js.map +1 -1
  71. package/src/api-public/controllers/sms.js.map +1 -1
  72. package/src/api-public/controllers/smtp.js.map +1 -1
  73. package/src/api-public/controllers/stock.js.map +1 -1
  74. package/src/api-public/controllers/track.js.map +1 -1
  75. package/src/api-public/controllers/voucher.js.map +1 -1
  76. package/src/api-public/models/glitter-finance.js +1 -2
  77. package/src/api-public/models/glitter-finance.js.map +1 -1
  78. package/src/api-public/services/EcInvoice.js.map +1 -1
  79. package/src/api-public/services/article.js.map +1 -1
  80. package/src/api-public/services/auto-send-email.js.map +1 -1
  81. package/src/api-public/services/chat.js.map +1 -1
  82. package/src/api-public/services/checkout-event.d.ts +1 -0
  83. package/src/api-public/services/checkout-event.js +17 -7
  84. package/src/api-public/services/checkout-event.js.map +1 -1
  85. package/src/api-public/services/checkout-event.ts +21 -9
  86. package/src/api-public/services/checkout.js.map +1 -1
  87. package/src/api-public/services/custom-code.js.map +1 -1
  88. package/src/api-public/services/customer-sessions.js.map +1 -1
  89. package/src/api-public/services/data-analyze.js +209 -196
  90. package/src/api-public/services/data-analyze.js.map +1 -1
  91. package/src/api-public/services/data-analyze.ts +219 -205
  92. package/src/api-public/services/delivery.js.map +1 -1
  93. package/src/api-public/services/ezpay/tool.d.ts +0 -1
  94. package/src/api-public/services/ezpay/tool.js.map +1 -1
  95. package/src/api-public/services/fake-data-model/fake-order.js.map +1 -1
  96. package/src/api-public/services/fake-data-model/fake-product.js.map +1 -1
  97. package/src/api-public/services/fake-data-model/fake-user.js.map +1 -1
  98. package/src/api-public/services/fb-api.js.map +1 -1
  99. package/src/api-public/services/filter-protect-data.js.map +1 -1
  100. package/src/api-public/services/financial-service.js +0 -1
  101. package/src/api-public/services/financial-service.js.map +1 -1
  102. package/src/api-public/services/form-check.js.map +1 -1
  103. package/src/api-public/services/graph-api.js.map +1 -1
  104. package/src/api-public/services/initial-fake-data.js.map +1 -1
  105. package/src/api-public/services/invoice.d.ts +3 -9
  106. package/src/api-public/services/invoice.js +66 -85
  107. package/src/api-public/services/invoice.js.map +1 -1
  108. package/src/api-public/services/invoice.ts +287 -293
  109. package/src/api-public/services/language-setting.js.map +1 -1
  110. package/src/api-public/services/mail.js.map +1 -1
  111. package/src/api-public/services/manager.js.map +1 -1
  112. package/src/api-public/services/paynow-logistics.js.map +1 -1
  113. package/src/api-public/services/phone-verify.js.map +1 -1
  114. package/src/api-public/services/pos.js.map +1 -1
  115. package/src/api-public/services/post.js.map +1 -1
  116. package/src/api-public/services/product-initial.js.map +1 -1
  117. package/src/api-public/services/rebate.js.map +1 -1
  118. package/src/api-public/services/reconciliation.js.map +1 -1
  119. package/src/api-public/services/schedule.d.ts +1 -0
  120. package/src/api-public/services/schedule.js +27 -0
  121. package/src/api-public/services/schedule.js.map +1 -1
  122. package/src/api-public/services/schedule.ts +30 -0
  123. package/src/api-public/services/shopping.d.ts +4 -3
  124. package/src/api-public/services/shopping.js +40 -20
  125. package/src/api-public/services/shopping.js.map +1 -1
  126. package/src/api-public/services/shopping.ts +52 -28
  127. package/src/api-public/services/stock.js.map +1 -1
  128. package/src/api-public/services/terms-check.js.map +1 -1
  129. package/src/api-public/services/updated-table-checked.js.map +1 -1
  130. package/src/api-public/services/user-update.js.map +1 -1
  131. package/src/api-public/services/user.d.ts +10 -0
  132. package/src/api-public/services/user.js +35 -8
  133. package/src/api-public/services/user.js.map +1 -1
  134. package/src/api-public/services/user.ts +50 -7
  135. package/src/api-public/services/voucher.js.map +1 -1
  136. package/src/api-public/utils/ut-database.js.map +1 -1
  137. package/src/app-project/android/app/src/main/res/xml/network_security_config.xml +3 -3
  138. package/src/app-project/android/app/src/main/res/xml/s.xml +5 -5
  139. package/src/app-project/android/gradlew.bat +94 -94
  140. package/src/app-project/serverless/src/controllers/index.js.map +1 -1
  141. package/src/app-project/serverless/src/controllers/sample.js.map +1 -1
  142. package/src/app-project/serverless/src/modules/database.d.ts +1 -2
  143. package/src/app-project/serverless/src/modules/database.js.map +1 -1
  144. package/src/app-project/serverless/src/modules/exception.js.map +1 -1
  145. package/src/app-project/serverless/src/modules/hooks.js.map +1 -1
  146. package/src/app-project/serverless/src/modules/logger.js.map +1 -1
  147. package/src/app-project/serverless/src/modules/redis.d.ts +1 -1
  148. package/src/app-project/serverless/src/modules/redis.js.map +1 -1
  149. package/src/app-project/serverless/src/modules/response.js.map +1 -1
  150. package/src/app-project/serverless/src/modules/ssh.js.map +1 -1
  151. package/src/controllers/ai.js.map +1 -1
  152. package/src/controllers/global-event.js.map +1 -1
  153. package/src/controllers/page.js.map +1 -1
  154. package/src/controllers/private_config.js.map +1 -1
  155. package/src/export/export-test.js.map +1 -1
  156. package/src/firebase/message.js +1 -2
  157. package/src/firebase/message.js.map +1 -1
  158. package/src/helper/app_creater.js +1 -2
  159. package/src/helper/app_creater.js.map +1 -1
  160. package/src/helper/glitter-util.d.ts +0 -1
  161. package/src/helper/glitter-util.js.map +1 -1
  162. package/src/lambda/interface.d.ts +1 -1
  163. package/src/lambda/interface.js +2 -2
  164. package/src/lambda/interface.js.map +1 -1
  165. package/src/modules/database.js +4 -3
  166. package/src/modules/database.js.map +1 -1
  167. package/src/modules/database.ts +4 -4
  168. package/src/modules/exception.js.map +1 -1
  169. package/src/modules/hooks.js.map +1 -1
  170. package/src/modules/response.js.map +1 -1
  171. package/src/modules/ssh.js.map +1 -1
  172. package/src/public-config-initial/auto-fcm.js.map +1 -1
  173. package/src/run.js.map +1 -1
  174. package/src/run.ts +12 -12
  175. package/src/services/ai.js.map +1 -1
  176. package/src/services/ses.js +1 -2
  177. package/src/services/ses.js.map +1 -1
  178. package/src/services/system-schedule.js.map +1 -1
  179. package/src/update-progress-track.js.map +1 -1
  180. package/src/update-script.js.map +1 -1
@@ -13,18 +13,19 @@ import { HeaderMobile } from './header-mobile.js';
13
13
  const html = String.raw;
14
14
 
15
15
  export class Sy04 {
16
- public static main(gvc: GVC, widget: any, subData: any) {
17
- return HeadInitial.initial({
18
- browser:()=>{
19
- let changePage = (index: string, type: 'page' | 'home', subData: any) => {};
20
- gvc.glitter.getModule(new URL('./official_event/page/change-page.js', gvc.glitter.root_path).href, (cl) => {
21
- changePage = cl.changePage;
22
- });
23
- const colors = Color.getTheme(gvc, widget.formData);
24
- return html` <div style="height: 76px;"></div>
16
+ public static main(gvc: GVC, widget: any, subData: any) {
17
+ return HeadInitial.initial({
18
+ browser: () => {
19
+ let changePage = (index: string, type: 'page' | 'home', subData: any) => {};
20
+ gvc.glitter.getModule(new URL('./official_event/page/change-page.js', gvc.glitter.root_path).href, cl => {
21
+ changePage = cl.changePage;
22
+ });
23
+ const colors = Color.getTheme(gvc, widget.formData);
24
+ return html` <div style="height: 76px;"></div>
25
25
  <nav
26
26
  class="navbar navbar-expand-lg vw-100 header header-place shadow position-fixed top-0 left-0 py-0"
27
- style="background: ${widget.formData.theme_color['background'] ?? '#000'} !important;height: 76px;z-index:9999;"
27
+ style="background: ${widget.formData.theme_color['background'] ??
28
+ '#000'} !important;height: 76px;z-index:9999;"
28
29
  >
29
30
  <div class="container header-place h-100">
30
31
  <!--LOGO顯示區塊-->
@@ -40,147 +41,158 @@ export class Sy04 {
40
41
  return {
41
42
  bind: id,
42
43
  view: () => {
43
- return html` <div class="div d-flex align-items-center flex-column w-100 p-3" style="border-bottom:1px solid ${widget.formData.theme_color['title']};">
44
- <div class="d-flex align-items-center ">
45
- <div>
46
- <div
47
- class="h-100"
48
- onclick="${gvc.event(() => {
49
- changePage('index', 'home', {});
50
- })}"
51
- >
52
- ${widget.formData.logo.type === 'text'
53
- ? html`
54
- <div
55
- class=" fw-bold d-flex align-items-center justify-content-center"
56
- style="margin-bottom: 20px;font-size: 20px;color: ${widget.formData.theme_color['title'] ?? '#000'};"
57
- >
58
- ${widget.formData.logo.value}
59
- </div>
60
- `
61
- : html`<img
62
- style="width: 150px;
44
+ return html` <div
45
+ class="div d-flex align-items-center flex-column w-100 p-3"
46
+ style="border-bottom:1px solid ${widget.formData.theme_color['title']};"
47
+ >
48
+ <div class="d-flex align-items-center ">
49
+ <div>
50
+ <div
51
+ class="h-100"
52
+ onclick="${gvc.event(() => {
53
+ changePage('index', 'home', {});
54
+ })}"
55
+ >
56
+ ${widget.formData.logo.type === 'text'
57
+ ? html`
58
+ <div
59
+ class=" fw-bold d-flex align-items-center justify-content-center"
60
+ style="margin-bottom: 20px;font-size: 20px;color: ${widget.formData
61
+ .theme_color['title'] ?? '#000'};"
62
+ >
63
+ ${widget.formData.logo.value}
64
+ </div>
65
+ `
66
+ : html`<img
67
+ style="width: 150px;
63
68
  background-position: center;
64
69
  background-size: cover;
65
70
  background-repeat: no-repeat;
66
71
  margin-bottom: 20px;"
67
- src="${widget.formData.logo.value}"
68
- /> `}
69
- </div>
70
- </div>
71
- </div>
72
- ${LanguageView.selectLanguage(gvc, colors) ? `<div class="mb-3">${LanguageView.selectLanguage(gvc, colors)}</div>`:``}
73
- <div class="position-relative">
74
- <input
75
- class="form-control fw-500 "
76
- placeholder="${Language.text('find_product')}"
77
- autocomplete="off"
78
- value=""
79
- onchange="${gvc.event((e, event) => {
80
- gvc.glitter.href = `/all-product?search=${e.value}`;
81
- })}"
82
- />
72
+ src="${widget.formData.logo.value}"
73
+ /> `}
74
+ </div>
75
+ </div>
76
+ </div>
77
+ ${LanguageView.selectLanguage(gvc, colors)
78
+ ? `<div class="mb-3">${LanguageView.selectLanguage(gvc, colors)}</div>`
79
+ : ``}
80
+ <div class="position-relative">
81
+ <input
82
+ class="form-control fw-500 "
83
+ placeholder="${Language.text('find_product')}"
84
+ autocomplete="off"
85
+ value=""
86
+ onchange="${gvc.event((e, event) => {
87
+ gvc.glitter.href = `/all-product?search=${e.value}`;
88
+ })}"
89
+ />
83
90
 
84
- <div
85
- style=" position: absolute;
91
+ <div
92
+ style=" position: absolute;
86
93
  right: 10px;
87
94
  top: 50%;
88
95
  transform: translateY(-50%);
89
96
  color: rgb(107, 114, 128);"
90
- >
91
- <i class="fa-solid fa-magnifying-glass"></i>
92
- </div>
93
- </div>
94
- </div>
97
+ >
98
+ <i class="fa-solid fa-magnifying-glass"></i>
99
+ </div>
100
+ </div>
101
+ </div>
95
102
 
96
- <div class="offcanvas-body p-0 ">
97
- ${gvc.bindView(() => {
98
- const id = gvc.glitter.getUUID();
99
- const vm = {
100
- data: [],
101
- };
102
- ApiUser.getPublicConfig('menu-setting', 'manager', (window as any).appName).then((res) => {
103
- vm.data = res.response.value[Language.getLanguage()];
103
+ <div class="offcanvas-body p-0 ">
104
+ ${gvc.bindView(() => {
105
+ const id = gvc.glitter.getUUID();
106
+ const vm = {
107
+ data: [],
108
+ };
109
+ ApiUser.getPublicConfig('menu-setting', 'manager', (window as any).appName).then(
110
+ res => {
111
+ vm.data = res.response.value[Language.getLanguage()];
104
112
 
105
- gvc.notifyDataChange(id);
106
- });
107
- return {
108
- bind: id,
109
- view: () => {
110
- function resetToggle() {
111
- function loop(data: any) {
112
- data.map((dd: any) => {
113
- (dd as any).open = false;
114
- loop((dd as any).items ?? []);
115
- });
113
+ gvc.notifyDataChange(id);
116
114
  }
115
+ );
116
+ return {
117
+ bind: id,
118
+ view: () => {
119
+ function resetToggle() {
120
+ function loop(data: any) {
121
+ data.map((dd: any) => {
122
+ (dd as any).open = false;
123
+ loop((dd as any).items ?? []);
124
+ });
125
+ }
117
126
 
118
- loop(vm.data);
119
- }
127
+ loop(vm.data);
128
+ }
120
129
 
121
- function loopItems(data: any, show_border: boolean) {
122
- return data
123
- .map((dd: any) => {
124
- return html`
125
- <li
126
- style="${show_border
127
- ? `border-bottom: 1px solid ${widget.formData.theme_color['title'] ?? '#000'} !important;`
128
- : ``}"
129
- >
130
- <div
131
- class="nav-link d-flex justify-content-between"
132
- style="padding: 16px;"
133
- onclick="${gvc.event(() => {
134
- if (((dd as any).items ?? []).length === 0) {
135
- if (dd.link) {
136
- gvc.glitter.href = dd.link;
137
- gvc.glitter.closeDrawer();
138
- }
139
- } else {
140
- let og = dd.open;
141
- resetToggle();
142
- if (!og) {
143
- dd.open = true;
144
- }
145
- gvc.notifyDataChange(id);
146
- }
147
- })}"
148
- >
149
- <div
150
- style="color: ${widget.formData.theme_color['title'] ?? '#000'} !important;"
151
- onclick="${gvc.event((e, event) => {
152
- if (dd.link) {
153
- gvc.glitter.href = dd.link;
154
- gvc.glitter.closeDrawer();
155
- }
156
- event.stopPropagation();
157
- event.preventDefault();
158
- })}"
159
- >
160
- ${dd.title}
161
- </div>
162
- ${(dd.items ?? []).length
163
- ? `<i class="fa-solid ${dd.open ? `fa-angle-up` : `fa-angle-down`}"
130
+ function loopItems(data: any, show_border: boolean) {
131
+ return data
132
+ .map((dd: any) => {
133
+ return html`
134
+ <li
135
+ style="${show_border
136
+ ? `border-bottom: 1px solid ${widget.formData.theme_color['title'] ?? '#000'} !important;`
137
+ : ``}"
138
+ >
139
+ <div
140
+ class="nav-link d-flex justify-content-between"
141
+ style="padding: 16px;"
142
+ onclick="${gvc.event(() => {
143
+ if (((dd as any).items ?? []).length === 0) {
144
+ if (dd.link) {
145
+ gvc.glitter.href = dd.link;
146
+ gvc.glitter.closeDrawer();
147
+ }
148
+ } else {
149
+ let og = dd.open;
150
+ resetToggle();
151
+ if (!og) {
152
+ dd.open = true;
153
+ }
154
+ gvc.notifyDataChange(id);
155
+ }
156
+ })}"
157
+ >
158
+ <div
159
+ style="color: ${widget.formData.theme_color['title'] ??
160
+ '#000'} !important;"
161
+ onclick="${gvc.event((e, event) => {
162
+ if (dd.link) {
163
+ gvc.glitter.href = dd.link;
164
+ gvc.glitter.closeDrawer();
165
+ }
166
+ event.stopPropagation();
167
+ event.preventDefault();
168
+ })}"
169
+ >
170
+ ${dd.title}
171
+ </div>
172
+ ${(dd.items ?? []).length
173
+ ? `<i class="fa-solid ${dd.open ? `fa-angle-up` : `fa-angle-down`}"
164
174
  style="color: ${widget.formData.theme_color['title'] ?? '#000'} !important;"></i>`
165
- : ``}
166
- </div>
167
- ${dd.open ? `<ul class="ps-3 pb-2">${loopItems(dd.items ?? [], false)}</ul>` : ``}
168
- </li>
169
- `;
170
- })
171
- .join('');
172
- }
175
+ : ``}
176
+ </div>
177
+ ${dd.open
178
+ ? `<ul class="ps-3 pb-2">${loopItems(dd.items ?? [], false)}</ul>`
179
+ : ``}
180
+ </li>
181
+ `;
182
+ })
183
+ .join('');
184
+ }
173
185
 
174
- return loopItems(vm.data, true);
175
- },
176
- divCreate: {
177
- class: `navbar-nav me-auto mb-2 mb-lg-0`,
178
- style: ``,
179
- elem: `ul`,
180
- },
181
- };
182
- })}
183
- </div>`;
186
+ return loopItems(vm.data, true);
187
+ },
188
+ divCreate: {
189
+ class: `navbar-nav me-auto mb-2 mb-lg-0`,
190
+ style: ``,
191
+ elem: `ul`,
192
+ },
193
+ };
194
+ })}
195
+ </div>`;
184
196
  },
185
197
  divCreate: {
186
198
  class: `w-100 h-100`,
@@ -209,25 +221,43 @@ background: ${colors.bgr ?? '#000'};overflow-x: hidden;`,
209
221
  >
210
222
  ${widget.formData.logo.type === 'text'
211
223
  ? html`
212
- <div
213
- class="fw-bold d-flex align-items-center h-100 mb-1 mb-sm-auto"
214
- style="letter-spacing: 1.5px; font-size: 19px;line-height: 28px;color: ${widget.formData.theme_color['title'] ?? '#000'};"
215
- >
216
- ${widget.formData.logo.value}
217
- </div>
218
- `
219
- : html` <div class="d-flex align-items-center justify-content-center h-100 py-2" style="${document.body.clientWidth<800 ? `max-width:calc(100vw - 200px);`:`max-width:200px;`}"><img src="${widget.formData.logo.value}" style="max-height: 100%;${document.body.clientWidth<800 ? `max-width:calc(100vw - 200px);`:`max-width:200px;`}" /></div> `}
224
+ <div
225
+ class="fw-bold d-flex align-items-center h-100 mb-1 mb-sm-auto"
226
+ style="letter-spacing: 1.5px; font-size: 19px;line-height: 28px;color: ${widget.formData
227
+ .theme_color['title'] ?? '#000'};"
228
+ >
229
+ ${widget.formData.logo.value}
230
+ </div>
231
+ `
232
+ : html`
233
+ <div
234
+ class="d-flex align-items-center justify-content-center h-100 py-2"
235
+ style="${document.body.clientWidth < 800
236
+ ? `max-width:calc(100vw - 200px);`
237
+ : `max-width:200px;`}"
238
+ >
239
+ <img
240
+ src="${widget.formData.logo.value}"
241
+ style="max-height: 100%;${document.body.clientWidth < 800
242
+ ? `max-width:calc(100vw - 200px);`
243
+ : `max-width:200px;`}"
244
+ />
245
+ </div>
246
+ `}
220
247
  </div>
221
248
  </div>
222
249
  <div class="">
223
250
  <!--選單列表顯示區塊-->
224
- <ul class="navbar-nav position-absolute start-50 top-50 d-none d-lg-block" style="transform: translate(-50%, -50%);">
251
+ <ul
252
+ class="navbar-nav position-absolute start-50 top-50 d-none d-lg-block"
253
+ style="transform: translate(-50%, -50%);"
254
+ >
225
255
  ${gvc.bindView(() => {
226
256
  const id = gvc.glitter.getUUID();
227
257
  const vm = {
228
258
  data: [],
229
259
  };
230
- ApiUser.getPublicConfig('menu-setting', 'manager', (window as any).appName).then((res) => {
260
+ ApiUser.getPublicConfig('menu-setting', 'manager', (window as any).appName).then(res => {
231
261
  vm.data = res.response.value[Language.getLanguage()];
232
262
  gvc.notifyDataChange(id);
233
263
  });
@@ -238,22 +268,24 @@ background: ${colors.bgr ?? '#000'};overflow-x: hidden;`,
238
268
  return data
239
269
  .map((dd: any) => {
240
270
  return html` <li class="nav-item dropdown">
241
- <a
242
- class="nav-link header-link "
243
- style="color: ${widget.formData.theme_color['title'] ?? '#000'} !important;cursor: pointer;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;"
244
- onclick="${gvc.event(() => {
245
- if (dd.link) {
246
- gvc.glitter.href = dd.link;
247
- }
248
- })}"
249
- >${dd.title} ${dd.items.length > 0 ? `<i class="fa-solid fa-angle-down ms-2"></i>` : ``}</a
250
- >
251
- ${dd.items.length > 0
252
- ? `<ul class="dropdown-menu" style="background:${widget.formData.theme_color['background'] ?? '#000'} !important;
271
+ <a
272
+ class="nav-link header-link "
273
+ style="color: ${widget.formData.theme_color['title'] ??
274
+ '#000'} !important;cursor: pointer;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;"
275
+ onclick="${gvc.event(() => {
276
+ if (dd.link) {
277
+ gvc.glitter.href = dd.link;
278
+ }
279
+ })}"
280
+ >${dd.title}
281
+ ${dd.items.length > 0 ? `<i class="fa-solid fa-angle-down ms-2"></i>` : ``}</a
282
+ >
283
+ ${dd.items.length > 0
284
+ ? `<ul class="dropdown-menu" style="background:${widget.formData.theme_color['background'] ?? '#000'} !important;
253
285
  cursor: pointer;
254
286
  z-index: 99999;">${loopItems(dd.items)}</ul>`
255
- : ``}
256
- </li>`;
287
+ : ``}
288
+ </li>`;
257
289
  })
258
290
  .join('');
259
291
  }
@@ -275,7 +307,7 @@ background: ${colors.bgr ?? '#000'};overflow-x: hidden;`,
275
307
  const vm = {
276
308
  visible: false,
277
309
  };
278
- ApiUser.getPublicConfig('store-information', 'manager').then((res) => {
310
+ ApiUser.getPublicConfig('store-information', 'manager').then(res => {
279
311
  if (res.response.value.ai_search) {
280
312
  vm.visible = true;
281
313
  gvc.notifyDataChange(id);
@@ -309,54 +341,58 @@ padding-bottom: 2px;
309
341
  },
310
342
  };
311
343
  })}
312
- ${(HeaderClass.hideShopperBtn()) ? ``:`<li class="nav-item d-none d-sm-flex align-items-center justify-content-center" style="">
344
+ ${HeaderClass.hideShopperBtn()
345
+ ? ``
346
+ : `<li class="nav-item d-none d-sm-flex align-items-center justify-content-center" style="">
313
347
  ${gvc.bindView(() => {
314
- const vm = {
315
- id: gvc.glitter.getUUID(),
316
- toggle: false,
317
- };
318
- return {
319
- bind: vm.id,
320
- view: () => {
321
- if (!vm.toggle) {
322
- return html`<i
323
- class="fa-regular fa-magnifying-glass"
324
- style="color: ${widget.formData.theme_color['title'] ?? '#000'};cursor: pointer;font-size:20px;"
325
- onclick="${gvc.event(() => {
326
- vm.toggle = !vm.toggle;
327
- gvc.notifyDataChange(vm.id);
328
- })}"
329
- ></i>`;
330
- } else {
331
- return html`<a class="nav-link search-container d-flex align-items-center"
332
- ><i
333
- class="fa-regular fa-circle-xmark"
334
- style="color: ${widget.formData.theme_color['title'] ?? '#000'};cursor: pointer;font-size:20px;"
335
- onclick="${gvc.event(() => {
336
- vm.toggle = !vm.toggle;
337
- gvc.notifyDataChange(vm.id);
338
- })}"
339
- ></i
340
- ><input
341
- class="ms-3 form-control"
342
- style="height:40px;"
343
- placeholder="${Language.text('input_product_keyword')}"
344
- autocomplete="off"
345
- onchange="${gvc.event((e, event) => {
346
- gvc.glitter.href = `/all-product?search=${e.value}`;
347
- vm.toggle = !vm.toggle;
348
- gvc.notifyDataChange(vm.id);
349
- })}"
350
- />
351
- </a>`;
352
- }
353
- },
354
- divCreate: {
355
- class: `nav-link search-container`,
356
- elem: `a`,
357
- },
358
- };
359
- })}
348
+ const vm = {
349
+ id: gvc.glitter.getUUID(),
350
+ toggle: false,
351
+ };
352
+ return {
353
+ bind: vm.id,
354
+ view: () => {
355
+ if (!vm.toggle) {
356
+ return html`<i
357
+ class="fa-regular fa-magnifying-glass"
358
+ style="color: ${widget.formData.theme_color['title'] ??
359
+ '#000'};cursor: pointer;font-size:20px;"
360
+ onclick="${gvc.event(() => {
361
+ vm.toggle = !vm.toggle;
362
+ gvc.notifyDataChange(vm.id);
363
+ })}"
364
+ ></i>`;
365
+ } else {
366
+ return html`<a class="nav-link search-container d-flex align-items-center"
367
+ ><i
368
+ class="fa-regular fa-circle-xmark"
369
+ style="color: ${widget.formData.theme_color['title'] ??
370
+ '#000'};cursor: pointer;font-size:20px;"
371
+ onclick="${gvc.event(() => {
372
+ vm.toggle = !vm.toggle;
373
+ gvc.notifyDataChange(vm.id);
374
+ })}"
375
+ ></i
376
+ ><input
377
+ class="ms-3 form-control"
378
+ style="height:40px;"
379
+ placeholder="${Language.text('input_product_keyword')}"
380
+ autocomplete="off"
381
+ onchange="${gvc.event((e, event) => {
382
+ gvc.glitter.href = `/all-product?search=${`${e.value}`.trim()}`;
383
+ vm.toggle = !vm.toggle;
384
+ gvc.notifyDataChange(vm.id);
385
+ })}"
386
+ />
387
+ </a>`;
388
+ }
389
+ },
390
+ divCreate: {
391
+ class: `nav-link search-container`,
392
+ elem: `a`,
393
+ },
394
+ };
395
+ })}
360
396
  </li>`}
361
397
  <li class="nav-item d-flex align-items-center justify-content-center" style="width:40px !important;">
362
398
  ${gvc.bindView(() => {
@@ -368,37 +404,44 @@ padding-bottom: 2px;
368
404
  bind: vm.id,
369
405
  view: () => {
370
406
  return html`<span
371
- class="position-relative"
372
- onclick="${gvc.event(() => {
373
- HeaderClass.rightCartMenu(gvc, widget);
374
- })}"
407
+ class="position-relative"
408
+ onclick="${gvc.event(() => {
409
+ HeaderClass.rightCartMenu(gvc, widget);
410
+ })}"
411
+ >
412
+ <i
413
+ class="fa-duotone fa-cart-shopping"
414
+ style="color: ${widget.formData.theme_color['title'] ??
415
+ '#000'} !important;cursor: pointer;font-size:20px;"
416
+ ></i>
417
+ ${gvc.bindView(() => {
418
+ return {
419
+ bind: gvc.glitter.getUUID(),
420
+ view: () => {
421
+ return new Promise((resolve, reject) => {
422
+ getCheckoutCount(count => {
423
+ vm.count = count;
424
+ resolve(
425
+ vm.count
426
+ ? html`<div
427
+ class="position-absolute"
428
+ style="font-size: 10px;right: -10px;top: -6px;"
375
429
  >
376
- <i class="fa-duotone fa-cart-shopping" style="color: ${widget.formData.theme_color['title'] ?? '#000'} !important;cursor: pointer;font-size:20px;"></i>
377
- ${gvc.bindView(() => {
378
- return {
379
- bind: gvc.glitter.getUUID(),
380
- view: () => {
381
- return new Promise((resolve, reject) => {
382
- getCheckoutCount((count) => {
383
- vm.count = count;
384
- resolve(
385
- vm.count
386
- ? html`<div class="position-absolute" style="font-size: 10px;right: -10px;top: -6px;">
387
- <div
388
- class="rounded-circle bg-danger text-white align-items-center justify-content-center fw-500 d-flex"
389
- style="width:18px;height: 18px;color: white !important;background:#fe5541;"
390
- >
391
- ${vm.count}
392
- </div>
393
- </div>`
394
- : ``
395
- );
430
+ <div
431
+ class="rounded-circle bg-danger text-white align-items-center justify-content-center fw-500 d-flex"
432
+ style="width:18px;height: 18px;color: white !important;background:#fe5541;"
433
+ >
434
+ ${vm.count}
435
+ </div>
436
+ </div>`
437
+ : ``
438
+ );
439
+ });
396
440
  });
397
- });
398
- },
399
- };
400
- })}
401
- </span>`;
441
+ },
442
+ };
443
+ })}
444
+ </span>`;
402
445
  },
403
446
  divCreate: {
404
447
  class: `nav-link js-cart-count `,
@@ -428,17 +471,16 @@ padding-bottom: 2px;
428
471
  </div>
429
472
  </div>
430
473
  </nav>`;
431
- },
432
- mobile:()=>{
433
- return HeaderMobile.mian({
434
- gvc:gvc,
435
- widget:widget
436
- })
437
- },
438
- gvc:gvc
439
- })
440
-
441
- }
474
+ },
475
+ mobile: () => {
476
+ return HeaderMobile.mian({
477
+ gvc: gvc,
478
+ widget: widget,
479
+ });
480
+ },
481
+ gvc: gvc,
482
+ });
483
+ }
442
484
  }
443
485
 
444
486
  (window as any).glitter.setModule(import.meta.url, Sy04);