ts-glitter 21.4.0 → 21.4.2

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 (97) hide show
  1. package/lowcode/Entry.js +18 -1
  2. package/lowcode/Entry.ts +19 -1
  3. package/lowcode/api/pageConfig.js +29 -10
  4. package/lowcode/api/pageConfig.ts +43 -11
  5. package/lowcode/backend-manager/bg-blog.js +5 -0
  6. package/lowcode/backend-manager/bg-blog.ts +5 -0
  7. package/lowcode/cms-plugin/menus-setting.js +15 -6
  8. package/lowcode/cms-plugin/menus-setting.ts +23 -6
  9. package/lowcode/cms-plugin/module/user-excel.js +11 -5
  10. package/lowcode/cms-plugin/module/user-excel.ts +11 -5
  11. package/lowcode/cms-plugin/shopping-discount-setting.js +236 -234
  12. package/lowcode/cms-plugin/shopping-discount-setting.ts +137 -134
  13. package/lowcode/cms-plugin/third-party-line.js +34 -0
  14. package/lowcode/cms-plugin/third-party-line.ts +34 -0
  15. package/lowcode/editor-components/global-editor.js +60 -0
  16. package/lowcode/editor-components/global-editor.ts +65 -0
  17. package/lowcode/editor-components/global-widget/bridge.js +40 -34
  18. package/lowcode/editor-components/global-widget/bridge.ts +42 -34
  19. package/lowcode/glitterBundle/html-component/global-widget.js +265 -170
  20. package/lowcode/glitterBundle/html-component/global-widget.ts +264 -159
  21. package/lowcode/index.html +1 -1
  22. package/lowcode/jspage/function-page/tool-setting.js +9 -1
  23. package/lowcode/jspage/function-page/tool-setting.ts +9 -1
  24. package/lowcode/jspage/main.js +78 -16
  25. package/lowcode/jspage/main.ts +108 -22
  26. package/lowcode/official_view_component/official/component.js +17 -10
  27. package/lowcode/official_view_component/official/component.ts +38 -27
  28. package/lowcode/public-components/blogs/blogs-01.js +200 -140
  29. package/lowcode/public-components/blogs/blogs-01.ts +232 -145
  30. package/lowcode/public-components/checkout/index.js +1 -1
  31. package/lowcode/public-components/checkout/index.ts +1 -1
  32. package/lowcode/public-components/headers/head-initial.ts +1 -1
  33. package/lowcode/public-components/headers/sy-02.js +1 -0
  34. package/lowcode/public-components/headers/sy-02.ts +1 -0
  35. package/lowcode/public-components/headers/sy-03.js +1 -0
  36. package/lowcode/public-components/headers/sy-03.ts +1 -0
  37. package/lowcode/public-components/headers/sy-04.js +1 -0
  38. package/lowcode/public-components/headers/sy-04.ts +1 -0
  39. package/lowcode/public-components/headers/sy-05.js +1 -0
  40. package/lowcode/public-components/headers/sy-05.ts +1 -0
  41. package/lowcode/public-components/product/product-detail.js +2 -2
  42. package/lowcode/public-components/product/product-detail.ts +4 -4
  43. package/lowcode/public-components/terms-related/index.ts +1 -0
  44. package/lowcode/public-components/user-manager/um-login.js +7 -1
  45. package/lowcode/public-components/user-manager/um-login.ts +8 -1
  46. package/package.json +1 -1
  47. package/src/api-public/models/glitter-finance.js +1 -2
  48. package/src/api-public/models/glitter-finance.js.map +1 -1
  49. package/src/api-public/services/checkout-event.js +1 -0
  50. package/src/api-public/services/checkout-event.js.map +1 -1
  51. package/src/api-public/services/checkout-event.ts +1 -0
  52. package/src/api-public/services/ezpay/tool.d.ts +0 -1
  53. package/src/api-public/services/user.js +7 -3
  54. package/src/api-public/services/user.js.map +1 -1
  55. package/src/api-public/services/user.ts +6 -3
  56. package/src/app-project/serverless/src/modules/database.d.ts +1 -1
  57. package/src/app-project/serverless/src/modules/redis.d.ts +1 -1
  58. package/src/controllers/template.js +2 -2
  59. package/src/controllers/template.js.map +1 -1
  60. package/src/controllers/template.ts +5 -2
  61. package/src/firebase/message.js +1 -2
  62. package/src/firebase/message.js.map +1 -1
  63. package/src/helper/app_creater.js +1 -2
  64. package/src/helper/app_creater.js.map +1 -1
  65. package/src/helper/glitter-util.d.ts +0 -1
  66. package/src/index.js +1 -1
  67. package/src/index.js.map +1 -1
  68. package/src/index.ts +1 -1
  69. package/src/lambda/interface.js +2 -2
  70. package/src/lambda/interface.js.map +1 -1
  71. package/src/modules/database.d.ts +1 -1
  72. package/src/run.js +1 -2
  73. package/src/run.js.map +1 -1
  74. package/src/seo-config.d.ts +1 -1
  75. package/src/seo-config.js +13 -12
  76. package/src/seo-config.js.map +1 -1
  77. package/src/seo-config.ts +18 -12
  78. package/src/services/app.d.ts +2 -1
  79. package/src/services/app.js +4 -2
  80. package/src/services/app.js.map +1 -1
  81. package/src/services/app.ts +5 -2
  82. package/src/services/backend-service.js +7 -17
  83. package/src/services/backend-service.js.map +1 -1
  84. package/src/services/saas-table-check.js +2 -2
  85. package/src/services/saas-table-check.js.map +1 -1
  86. package/src/services/seo.d.ts +2 -1
  87. package/src/services/seo.js +7 -4
  88. package/src/services/seo.js.map +1 -1
  89. package/src/services/seo.ts +7 -4
  90. package/src/services/ses.js +1 -2
  91. package/src/services/ses.js.map +1 -1
  92. package/src/services/template.d.ts +3 -1
  93. package/src/services/template.js +55 -34
  94. package/src/services/template.js.map +1 -1
  95. package/src/services/template.ts +68 -35
  96. package/nxv0ptv53w.json +0 -1
  97. package/omr85cp878.json +0 -1
@@ -1,11 +1,18 @@
1
1
  import {GVC} from "../GVController.js";
2
2
  import {Storage} from "../helper/storage.js";
3
-
3
+ import { ApiPageConfig } from '../../api/pageConfig.js';
4
+ import { ToolSetting } from '../../jspage/function-page/tool-setting.js';
4
5
  enum ViewType {
5
6
  mobile = 'mobile',
6
7
  desktop = 'desktop',
7
8
  def = 'def'
8
9
  }
10
+ export interface OptionsItem {
11
+ key: string;
12
+ value: string;
13
+ note?: string;
14
+ image?: string;
15
+ }
9
16
 
10
17
  const html = String.raw
11
18
 
@@ -160,7 +167,40 @@ export class GlobalWidget {
160
167
  })
161
168
 
162
169
  }
163
-
170
+ static select(obj: {
171
+ gvc: GVC;
172
+ callback: (value: any) => void;
173
+ default: string;
174
+ options: OptionsItem[];
175
+ style?: string;
176
+ title?: string;
177
+ readonly?: boolean;
178
+ place_holder?: string;
179
+ }) {
180
+ return html` ${obj.title ? html` <div class="tx_normal fw-normal mb-2">${obj.title}</div>` : ``}
181
+ <select
182
+ class="c_select c_select_w_100"
183
+ style="${obj.style ?? ''}; ${obj.readonly ? 'background: #f7f7f7;' : ''}"
184
+ onchange="${obj.gvc.event(e => {
185
+ obj.callback(e.value);
186
+ })}"
187
+ ${obj.readonly ? 'disabled' : ''}
188
+ >
189
+ ${obj.gvc.map(
190
+ obj.options.map(
191
+ opt =>
192
+ html` <option class="c_select_option" value="${opt.key}" ${obj.default === opt.key ? 'selected' : ''}>
193
+ ${opt.value}
194
+ </option>`
195
+ )
196
+ )}
197
+ ${(obj.options as any).find((opt: any) => {
198
+ return obj.default === opt.key;
199
+ })
200
+ ? ``
201
+ : `<option class="d-none" selected>${obj.place_holder || `請選擇項目`}</option>`}
202
+ </select>`;
203
+ }
164
204
  public static switchButton(gvc: GVC, def: boolean, callback: (value: boolean) => void) {
165
205
  return html`
166
206
  <div class="form-check form-switch d-flex align-items-center my-0" style=" cursor: pointer;">
@@ -185,200 +225,265 @@ export class GlobalWidget {
185
225
  hide_selector?: boolean
186
226
  hide_ai?: boolean
187
227
  }) {
188
- GlobalWidget.glitter_view_type = ViewType.desktop
189
- if (Storage.view_type === 'mobile') {
190
- GlobalWidget.glitter_view_type = ViewType.mobile
191
- }
228
+ const outer_id=obj.gvc.glitter.getUUID()
192
229
 
193
- if (['mobile', 'desktop'].includes(obj.gvc.glitter.getCookieByName('ViewType')) && GlobalWidget.glitter_view_type !== 'def') {
194
- GlobalWidget.glitter_view_type = obj.gvc.glitter.getCookieByName('ViewType')
195
- }
230
+ const glitter = obj.gvc.glitter;
231
+ const gvc = obj.gvc;
232
+ return gvc.bindView(()=>{
233
+ return {
234
+ bind:outer_id,
235
+ view:()=>{
236
+ return ``
237
+ },
238
+ divCreate:{
239
+ class:`${outer_id}`
240
+ },
241
+ onCreate:async ()=>{
242
+ let civ:string[]=[]
243
+ const is_sub_page = ['pages/','hidden/','shop/'].find((dd)=>{
244
+ return (obj.gvc.glitter.getUrlParameter('page') || '').startsWith(dd)
245
+ });
246
+ if(!glitter.share.c_header_list){
247
+ glitter.share.c_header_list=(await ApiPageConfig.getPageTemplate({
248
+ template_from: 'all',
249
+ page: '0',
250
+ limit: '3000',
251
+ type: 'module',
252
+ tag: '標頭元件',
253
+ })).response.result.data;
254
+ }
255
+ if(is_sub_page && glitter.share.c_header_list.find((d1:any)=>{
256
+ return d1.tag===obj.widget.data.tag && d1.appName===obj.widget.data.refer_app
257
+ })){
258
+ glitter.share.header_refer= glitter.share.header_refer || 'def'
259
+ civ.push(`<div class="mt-2 fs-6 mb-2" style="color: black;margin-bottom: 5px;"
260
+ >標頭樣式參照</div>`)
261
+ civ.push( GlobalWidget.select({
262
+ gvc: gvc,
263
+ callback: (text: any) => {
264
+ glitter.share.header_refer = text;
265
+ glitter.share.selectEditorItem();
266
+ },
267
+ default: glitter.share.header_refer,
268
+ options: [
269
+ {
270
+ key: 'custom',
271
+ value: '自定義標頭樣式',
272
+ },
273
+ {
274
+ key: 'def',
275
+ value: '全站預設樣式',
276
+ },
277
+ ],
278
+ }))
279
+ if(glitter.share.header_refer==='def'){
280
+ (window.parent as any).document.querySelector('.'+outer_id).outerHTML = civ.join('');
281
+ return
282
+ }
283
+ }
284
+ civ.push((()=>{
285
+ GlobalWidget.glitter_view_type = ViewType.desktop
286
+ if (Storage.view_type === 'mobile') {
287
+ GlobalWidget.glitter_view_type = ViewType.mobile
288
+ }
196
289
 
197
- if ((GlobalWidget.glitter_view_type === 'def') || (obj.gvc.glitter.getUrlParameter('device') === 'mobile')) {
198
- return obj.view(obj.widget, 'def')
199
- } else {
200
- const id = obj.gvc.glitter.getUUID()
201
- const gvc = obj.gvc;
202
- GlobalWidget.initialShowCaseData({widget: obj.widget, gvc: obj.gvc})
203
- let select_bt = 'form_editor'
290
+ if (['mobile', 'desktop'].includes(obj.gvc.glitter.getCookieByName('ViewType')) && GlobalWidget.glitter_view_type !== 'def') {
291
+ GlobalWidget.glitter_view_type = obj.gvc.glitter.getCookieByName('ViewType')
292
+ }
204
293
 
205
- function ai_switch() {
206
- return `<div class="d-flex align-items-center shadow border-bottom mt-n2"
294
+ if ((GlobalWidget.glitter_view_type === 'def') || (obj.gvc.glitter.getUrlParameter('device') === 'mobile')) {
295
+ return obj.view(obj.widget, 'def')
296
+ } else {
297
+ const id = obj.gvc.glitter.getUUID()
298
+ const gvc = obj.gvc;
299
+ GlobalWidget.initialShowCaseData({widget: obj.widget, gvc: obj.gvc})
300
+ let select_bt = 'form_editor'
301
+
302
+ function ai_switch() {
303
+ if(is_sub_page){
304
+ return ``
305
+ }
306
+ return `<div class="d-flex align-items-center shadow border-bottom mt-n2"
207
307
  style="">
208
308
  ${(() => {
209
309
  const list = [
210
- {
211
- key: 'form_editor',
212
- label: `元件設計`,
213
- icon: `fa-regular fa-pencil`
214
- },
215
- {
216
- key: 'ai_editor',
217
- label: 'AI 設計',
218
- icon: `fa-regular fa-wand-magic-sparkles`
219
- }
310
+ {
311
+ key: 'form_editor',
312
+ label: `元件設計`,
313
+ icon: `fa-regular fa-pencil`
314
+ },
315
+ {
316
+ key: 'ai_editor',
317
+ label: 'AI 設計',
318
+ icon: `fa-regular fa-wand-magic-sparkles`
319
+ }
220
320
  ];
221
321
  return list
222
- .map((dd) => {
223
- if (select_bt === dd.key) {
224
- return html`
322
+ .map((dd) => {
323
+ if (select_bt === dd.key) {
324
+ return html`
225
325
  <div class="d-flex align-items-center justify-content-center fw-bold px-2 py-2 fw-500 select-label-ai-message_ fs-6"
226
326
  style="gap:5px;">
227
327
  <i class="${dd.icon} "></i>${dd.label}
228
328
  </div>`;
229
- } else {
230
- return html`
329
+ } else {
330
+ return html`
231
331
  <div class="d-flex align-items-center justify-content-center fw-bold px-2 py-2 fw-500 select-btn-ai-message_ fs-6"
232
332
  style="gap:5px;"
233
333
  onclick="${gvc.event(() => {
234
- select_bt = dd.key
235
- gvc.notifyDataChange(id)
236
- })}"
334
+ select_bt = dd.key
335
+ gvc.notifyDataChange(id)
336
+ })}"
237
337
  >
238
338
  <i class="${dd.icon}"></i>${dd.label}
239
339
  </div>`;
240
- }
241
- })
242
- .join(`<div class="border-end" style="width:1px;height:39px;"></div>`);
243
- })()}
340
+ }
341
+ })
342
+ .join(`<div class="border-end" style="width:1px;height:39px;"></div>`);
343
+ })()}
244
344
  </div>`
245
- }
345
+ }
246
346
 
247
- function selector(widget: any, key: string) {
248
- if (obj.hide_selector) {
347
+ function selector(widget: any, key: string) {
348
+ if (obj.hide_selector) {
249
349
  return ``
250
- }
251
- return html`
350
+ }
351
+ return html`
252
352
  <div class=" mx-n2"
253
353
  style="">${
254
- [
255
- ...(() => {
256
- if (obj.hide_ai) {
257
- return []
258
- } else {
259
- return [ai_switch()]
260
- }
261
- })(),
262
- obj.gvc.bindView(() => {
263
- const id = gvc.glitter.getUUID()
264
- return {
265
- bind: id,
266
- view: () => {
267
- return html`
354
+ [
355
+ ...(() => {
356
+ if (obj.hide_ai) {
357
+ return []
358
+ } else {
359
+ return [ai_switch()]
360
+ }
361
+ })(),
362
+ obj.gvc.bindView(() => {
363
+ const id = gvc.glitter.getUUID()
364
+ return {
365
+ bind: id,
366
+ view: () => {
367
+ return html`
268
368
  <div class="my-auto tx_title fw-normal d-flex align-items-center"
269
369
  style="white-space: nowrap;font-size: 16px;">在${(() => {
270
- if (GlobalWidget.glitter_view_type === "mobile") {
271
- return `手機`
272
- } else {
273
- return `電腦`
274
- }
275
- })()}版上${(obj.widget[key].refer === 'hide') ? `不` : ``}顯示
370
+ if (GlobalWidget.glitter_view_type === "mobile") {
371
+ return `手機`
372
+ } else {
373
+ return `電腦`
374
+ }
375
+ })()}版上${(obj.widget[key].refer === 'hide') ? `不` : ``}顯示
276
376
  </div>
277
377
  ${GlobalWidget.switchButton(obj.gvc, obj.widget[key].refer !== 'hide', (bool) => {
278
- // vm.data.main = bool;
279
- if (bool) {
280
- obj.widget[key].refer = 'def'
281
- } else {
282
- obj.widget[key].refer = 'hide'
283
- }
284
- obj.toggle_visible && obj.toggle_visible(bool);
285
- gvc.notifyDataChange(id)
286
- setTimeout(() => {
287
- obj.widget.refreshComponent()
288
- }, 250)
289
- })}`
290
- },
291
- divCreate: {
292
- class: `d-flex align-content-center px-3`,
293
- style: `gap:10px;margin-bottom:18px;margin-top:13px;`
294
- }
295
- }
296
- })
297
- ].concat((() => {
298
- if (obj.widget[key].refer === 'hide') {
299
- return []
300
- } else {
301
- if (obj.custom_edit) {
302
- return []
303
- } else {
304
- return [(obj.gvc.bindView(() => {
305
- const id = gvc.glitter.getUUID()
306
- return {
307
- bind: id,
308
- view: () => {
309
- return `<div class="my-auto tx_title fw-normal d-flex align-items-center" style="white-space: nowrap;font-size: 16px;">顯示獨立樣式</div>
378
+ // vm.data.main = bool;
379
+ if (bool) {
380
+ obj.widget[key].refer = 'def'
381
+ } else {
382
+ obj.widget[key].refer = 'hide'
383
+ }
384
+ obj.toggle_visible && obj.toggle_visible(bool);
385
+ gvc.notifyDataChange(id)
386
+ setTimeout(() => {
387
+ obj.widget.refreshComponent()
388
+ }, 250)
389
+ })}`
390
+ },
391
+ divCreate: {
392
+ class: `d-flex align-content-center px-3`,
393
+ style: `gap:10px;margin-bottom:18px;margin-top:13px;`
394
+ }
395
+ }
396
+ })
397
+ ].concat((() => {
398
+ if (obj.widget[key].refer === 'hide') {
399
+ return []
400
+ } else {
401
+ if (obj.custom_edit) {
402
+ return []
403
+ } else {
404
+ return [(obj.gvc.bindView(() => {
405
+ const id = gvc.glitter.getUUID()
406
+ return {
407
+ bind: id,
408
+ view: () => {
409
+ return `<div class="my-auto tx_title fw-normal d-flex align-items-center" style="white-space: nowrap;font-size: 16px;">顯示獨立樣式</div>
310
410
  ${GlobalWidget.switchButton(obj.gvc, obj.widget[key].refer === 'custom', (bool) => {
311
- obj.widget[key].refer = (bool) ? `custom` : `def`;
312
- if (obj.widget.refreshComponent) {
313
- obj.widget.refreshComponent()
314
- } else if (obj.widget.refreshAll) {
315
- obj.widget.refreshAll()
316
- }
317
- })}`
318
- },
319
- divCreate: {
320
- class: `d-flex align-content-center px-3`,
321
- style: `gap:10px;margin-top:13px;`
322
- }
323
- }
324
- }) + `<div class="px-3 pt-2" style="white-space: normal;word-break: break-all;color: #8D8D8D; font-size: 14px; font-weight: 400; ">透過設定獨立樣式在${(() => {
325
- if (GlobalWidget.glitter_view_type === "mobile") {
326
- return `手機`
327
- } else {
328
- return `電腦`
329
- }
330
- })()}版上顯示特定設計效果</div>`), `<div class="mx-n3" style="background: #DDD;height: 1px;"></div>`].join(`<div style="height:18px;"></div>`)
331
- }
411
+ obj.widget[key].refer = (bool) ? `custom` : `def`;
412
+ if (obj.widget.refreshComponent) {
413
+ obj.widget.refreshComponent()
414
+ } else if (obj.widget.refreshAll) {
415
+ obj.widget.refreshAll()
416
+ }
417
+ })}`
418
+ },
419
+ divCreate: {
420
+ class: `d-flex align-content-center px-3`,
421
+ style: `gap:10px;margin-top:13px;`
422
+ }
423
+ }
424
+ }) + `<div class="px-3 pt-2" style="white-space: normal;word-break: break-all;color: #8D8D8D; font-size: 14px; font-weight: 400; ">透過設定獨立樣式在${(() => {
425
+ if (GlobalWidget.glitter_view_type === "mobile") {
426
+ return `手機`
427
+ } else {
428
+ return `電腦`
429
+ }
430
+ })()}版上顯示特定設計效果</div>`), `<div class="mx-n3" style="background: #DDD;height: 1px;"></div>`].join(`<div style="height:18px;"></div>`)
431
+ }
332
432
 
333
433
 
334
- }
335
- })()).join('<div class="my-3"></div>')
336
- }
434
+ }
435
+ })()).join('<div class="my-3"></div>')
436
+ }
337
437
  </div>`
338
- }
438
+ }
339
439
 
340
- return obj.gvc.bindView(() => {
341
- return {
440
+ return obj.gvc.bindView(() => {
441
+ return {
342
442
  bind: id,
343
443
  view: () => {
344
- if (select_bt === 'ai_editor') {
345
- return new Promise((resolve, reject) => {
346
- gvc.glitter.getModule(gvc.glitter.root_path+'cms-plugin/ai-generator/editor-ai.js', (EditorAi) => {
347
- resolve([`<div class="mx-n2">${ai_switch()}</div>`, EditorAi.view(gvc)].join(''))
348
- })
349
- })
350
- }
351
- const view = (() => {
352
- try {
353
- if (GlobalWidget.glitter_view_type === 'mobile') {
354
- const view = [selector(obj.widget.mobile, 'mobile')]
355
- if (obj.widget.mobile.refer === 'custom') {
356
- view.push(obj.view(obj.widget.mobile, 'mobile'))
357
- } else {
358
- view.push(obj.view(obj.widget, 'def'))
359
- }
360
- return view.join('')
361
- } else if (GlobalWidget.glitter_view_type === 'desktop') {
362
- const view = [selector(obj.widget.desktop, 'desktop')]
363
- if (obj.widget.desktop.refer === 'custom') {
364
- view.push(obj.view(obj.widget.desktop, 'desktop'))
365
- } else {
366
- view.push(obj.view(obj.widget, 'def'))
367
- }
368
- return view.join('')
369
- } else {
370
- return obj.view(obj.widget, 'def')
371
- }
372
- } catch (e) {
373
- console.log(e)
374
- return `${e}`
444
+ if (select_bt === 'ai_editor') {
445
+ return new Promise((resolve, reject) => {
446
+ gvc.glitter.getModule(gvc.glitter.root_path+'cms-plugin/ai-generator/editor-ai.js', (EditorAi) => {
447
+ resolve([`<div class="mx-n2">${ai_switch()}</div>`, EditorAi.view(gvc)].join(''))
448
+ })
449
+ })
450
+ }
451
+ const view = (() => {
452
+ try {
453
+ if (GlobalWidget.glitter_view_type === 'mobile') {
454
+ const view = [selector(obj.widget.mobile, 'mobile')]
455
+ if (obj.widget.mobile.refer === 'custom') {
456
+ view.push(obj.view(obj.widget.mobile, 'mobile'))
457
+ } else {
458
+ view.push(obj.view(obj.widget, 'def'))
459
+ }
460
+ return view.join('')
461
+ } else if (GlobalWidget.glitter_view_type === 'desktop') {
462
+ const view = [selector(obj.widget.desktop, 'desktop')]
463
+ if (obj.widget.desktop.refer === 'custom') {
464
+ view.push(obj.view(obj.widget.desktop, 'desktop'))
465
+ } else {
466
+ view.push(obj.view(obj.widget, 'def'))
375
467
  }
376
- })()
377
- return [view].join('')
468
+ return view.join('')
469
+ } else {
470
+ return obj.view(obj.widget, 'def')
471
+ }
472
+ } catch (e) {
473
+ console.log(e)
474
+ return `${e}`
475
+ }
476
+ })()
477
+ return [view].join('')
378
478
  }
379
- }
380
- })
479
+ }
480
+ })
481
+ }
482
+ })());
483
+ (window.parent as any).document.querySelector('.'+outer_id).outerHTML = civ.join('')
484
+ }
381
485
  }
486
+ })
382
487
  }
383
488
 
384
489
  public static showCaseData(obj: {
@@ -2936,7 +2936,7 @@
2936
2936
  };
2937
2937
 
2938
2938
  function execute() {
2939
- fetch(window.glitterBackend + `/api/v1/template?appName=${appName}&tag=${encodeURIComponent((typeof cf === 'object') ? cf.tag : tag)}&preload=true`, requestOptions)
2939
+ fetch(window.glitterBackend + `/api/v1/template?appName=${appName}&tag=${encodeURIComponent((typeof cf === 'object') ? cf.tag : tag)}&preload=true&page_refer=${encodeURIComponent(window.page_refer || '')}`, requestOptions)
2940
2940
  .then(response => response.json())
2941
2941
  .then(response => {
2942
2942
  for (const b of response.result) {
@@ -219,7 +219,14 @@ export class ToolSetting {
219
219
  <div
220
220
  style="align-self: stretch; color: #393939; font-size: 15px; font-weight: 400; word-wrap: break-word"
221
221
  >
222
- ${refer_widget.template_config.name}
222
+ ${(() => {
223
+ if ((dd.tag === '標頭元件') && gvc.glitter.share.is_blog_editor()) {
224
+ return gvc.glitter.share.editorViewModel.selectItem.label;
225
+ }
226
+ else {
227
+ return refer_widget.template_config.name;
228
+ }
229
+ })()}
223
230
  </div>
224
231
  </div>
225
232
 
@@ -354,3 +361,4 @@ ToolSetting.tool_setting_list = [
354
361
  hint: `用戶於首頁時會彈跳出來的輪播廣告`,
355
362
  },
356
363
  ];
364
+ window.glitter.setModule(import.meta.url, ToolSetting);
@@ -190,6 +190,7 @@ export class ToolSetting {
190
190
  //主元件
191
191
  const refer_widget = await (async () => {
192
192
  if (['標頭元件', '頁腳元件', '商品卡片', '廣告輪播'].includes(dd.tag)) {
193
+
193
194
  return (
194
195
  await ApiPageConfig.getPage({
195
196
  appName: widget.config[0].data.refer_app,
@@ -261,7 +262,13 @@ export class ToolSetting {
261
262
  <div
262
263
  style="align-self: stretch; color: #393939; font-size: 15px; font-weight: 400; word-wrap: break-word"
263
264
  >
264
- ${refer_widget.template_config.name}
265
+ ${(()=>{
266
+ if((dd.tag==='標頭元件') && gvc.glitter.share.is_blog_editor()){
267
+ return gvc.glitter.share.editorViewModel.selectItem.label;
268
+ }else{
269
+ return refer_widget.template_config.name;
270
+ }
271
+ })()}
265
272
  </div>
266
273
  </div>
267
274
 
@@ -371,3 +378,4 @@ export class ToolSetting {
371
378
  ].join('');
372
379
  }
373
380
  }
381
+ (window as any).glitter.setModule(import.meta.url,ToolSetting)