ts-glitter 20.4.2 → 20.4.4

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.
package/src/seo-config.js CHANGED
@@ -10,6 +10,14 @@ const database_js_1 = __importDefault(require("./modules/database.js"));
10
10
  const manager_js_1 = require("./api-public/services/manager.js");
11
11
  const ut_database_js_1 = require("./api-public/utils/ut-database.js");
12
12
  const shopping_js_1 = require("./api-public/services/shopping.js");
13
+ const config_js_1 = require("./config.js");
14
+ const public_table_check_js_1 = require("./api-public/services/public-table-check.js");
15
+ const app_js_1 = require("./services/app.js");
16
+ const user_js_1 = require("./api-public/services/user.js");
17
+ const monitor_js_1 = require("./api-public/services/monitor.js");
18
+ const seo_js_1 = require("./services/seo.js");
19
+ const Language_js_1 = require("./Language.js");
20
+ const private_config_js_1 = require("./services/private_config.js");
13
21
  const html = String.raw;
14
22
  class SeoConfig {
15
23
  static async collectionSeo(cf) {
@@ -333,6 +341,387 @@ class SeoConfig {
333
341
  })
334
342
  .join('');
335
343
  }
344
+ static async seoDetail(in_app, req, resp) {
345
+ var _a, _b, _c, _d, _e, _f;
346
+ const og_url = req.headers['x-original-url'];
347
+ try {
348
+ if (req.query.state === 'google_login') {
349
+ req.query.page = 'login';
350
+ }
351
+ let appName = in_app;
352
+ if (req.query.appName) {
353
+ appName = req.query.appName;
354
+ }
355
+ else if (og_url) {
356
+ const new_app = (await database_js_1.default.query(`SELECT *
357
+ FROM \`${config_js_1.saasConfig.SAAS_NAME}\`.app_config
358
+ where LOWER(domain) = ?`, [og_url]))[0];
359
+ if (new_app && new_app.appName) {
360
+ appName = new_app && new_app.appName;
361
+ }
362
+ else {
363
+ return {
364
+ head: '',
365
+ body: `<script>window.location.href='https://shopnex.tw'</script>`,
366
+ };
367
+ }
368
+ }
369
+ req.headers['g-app'] = appName;
370
+ const start = new Date().getTime();
371
+ console.log(`getPageInfo==>`, (new Date().getTime() - start) / 1000);
372
+ await public_table_check_js_1.ApiPublic.createScheme(appName);
373
+ const find_app = public_table_check_js_1.ApiPublic.app301.find(dd => {
374
+ return dd.app_name === appName;
375
+ });
376
+ if (find_app) {
377
+ const router = find_app.router.find(dd => {
378
+ if (dd.legacy_url.startsWith('/')) {
379
+ dd.legacy_url = dd.legacy_url.substring(1);
380
+ }
381
+ if (dd.new_url.startsWith('/')) {
382
+ dd.new_url = dd.new_url.substring(1);
383
+ }
384
+ return dd.legacy_url === req.query.page;
385
+ });
386
+ if (router) {
387
+ return {
388
+ redirect: `https://${(await app_js_1.App.checkBrandAndMemberType(appName)).domain}/${router.new_url}`,
389
+ };
390
+ }
391
+ }
392
+ let seo_content = [];
393
+ let [customCode, FBCode, store_info, language_label, check_schema, brandAndMemberType, login_config, ip_country,] = await Promise.all([
394
+ new user_js_1.User(appName).getConfigV2({
395
+ key: 'ga4_config',
396
+ user_id: 'manager',
397
+ }),
398
+ new user_js_1.User(appName).getConfigV2({
399
+ key: 'login_fb_setting',
400
+ user_id: 'manager',
401
+ }),
402
+ new user_js_1.User(appName).getConfigV2({
403
+ key: 'store-information',
404
+ user_id: 'manager',
405
+ }),
406
+ new user_js_1.User(appName).getConfigV2({
407
+ key: 'language-label',
408
+ user_id: 'manager',
409
+ }),
410
+ public_table_check_js_1.ApiPublic.createScheme(appName),
411
+ app_js_1.App.checkBrandAndMemberType(appName),
412
+ new user_js_1.User(req.get('g-app'), req.body.token).getConfigV2({
413
+ key: 'login_config',
414
+ user_id: 'manager',
415
+ }),
416
+ user_js_1.User.ipInfo((req.query.ip || req.headers['x-real-ip'] || req.ip)),
417
+ ]);
418
+ const language = await SeoConfig.language(store_info, req);
419
+ monitor_js_1.Monitor.insertHistory({
420
+ req_type: 'file',
421
+ req: req,
422
+ });
423
+ console.log(`app_info==>`, {
424
+ page: req.query.page,
425
+ appName: appName
426
+ });
427
+ let data = await seo_js_1.Seo.getPageInfo(appName, req.query.page, language);
428
+ let home_page_data = await (async () => {
429
+ return await seo_js_1.Seo.getPageInfo(appName, 'index', language);
430
+ })();
431
+ if (`${req.query.page}`.startsWith('products/') && !data) {
432
+ data = home_page_data;
433
+ }
434
+ if (data && data.page_config) {
435
+ data.page_config = (_a = data.page_config) !== null && _a !== void 0 ? _a : {};
436
+ const d = (_b = data.page_config.seo) !== null && _b !== void 0 ? _b : {};
437
+ if (`${req.query.page}`.startsWith('products/')) {
438
+ await SeoConfig.productSEO({
439
+ data,
440
+ language,
441
+ appName,
442
+ product_id: req.query.product_id,
443
+ page: req.query.page,
444
+ });
445
+ }
446
+ else if (`${req.query.page}` === 'blogs') {
447
+ const seo = await new user_js_1.User(req.get('g-app'), req.body.token).getConfigV2({
448
+ key: 'article_seo_data_' + language,
449
+ user_id: 'manager',
450
+ });
451
+ data.page_config.seo.title = seo.title || data.page_config.seo.title;
452
+ data.page_config.seo.content = seo.content || data.page_config.seo.content;
453
+ data.page_config.seo.keywords = seo.keywords || data.page_config.seo.keywords;
454
+ data.page_config.seo.image = seo.image || data.page_config.seo.image;
455
+ data.page_config.seo.logo = seo.logo || data.page_config.seo.logo;
456
+ }
457
+ else if (`${req.query.page}`.startsWith('blogs/')) {
458
+ data.page_config.seo = await SeoConfig.articleSeo({
459
+ article: req.query.article,
460
+ page: req.query.page,
461
+ language,
462
+ appName,
463
+ data,
464
+ });
465
+ }
466
+ else if (`${req.query.page}`.startsWith('pages/')) {
467
+ await SeoConfig.articleSeo({
468
+ article: req.query.article,
469
+ page: req.query.page,
470
+ language,
471
+ appName,
472
+ data,
473
+ });
474
+ }
475
+ else if (['privacy', 'term', 'refund', 'delivery'].includes(`${req.query.page}`)) {
476
+ data.page_config.seo = {
477
+ title: Language_js_1.Language.text(`${req.query.page}`, language),
478
+ content: Language_js_1.Language.text(`${req.query.page}`, language),
479
+ };
480
+ }
481
+ else if (d.type !== 'custom') {
482
+ data = home_page_data;
483
+ }
484
+ const preload = req.query.isIframe === 'true'
485
+ ? {}
486
+ : await app_js_1.App.preloadPageData(appName, req.query.page, language);
487
+ data.page_config = (_c = data.page_config) !== null && _c !== void 0 ? _c : {};
488
+ data.page_config.seo = (_d = data.page_config.seo) !== null && _d !== void 0 ? _d : {};
489
+ const seo_detail = await getSeoDetail(appName, req);
490
+ if (seo_detail) {
491
+ Object.keys(seo_detail).map(dd => {
492
+ data.page_config.seo[dd] = seo_detail[dd];
493
+ });
494
+ }
495
+ let link_prefix = req.originalUrl.split('/')[1];
496
+ if (link_prefix.includes('?')) {
497
+ link_prefix = link_prefix.substring(0, link_prefix.indexOf('?'));
498
+ }
499
+ if (config_js_1.ConfigSetting.is_local) {
500
+ if (link_prefix !== 'shopnex' && link_prefix !== 'codenex_v2') {
501
+ link_prefix = '';
502
+ }
503
+ }
504
+ else {
505
+ link_prefix = '';
506
+ }
507
+ let distribution_code = '';
508
+ req.query.page = req.query.page || 'index';
509
+ if (req.query.page.split('/')[0] === 'order_detail' && req.query.EndCheckout === '1') {
510
+ distribution_code = `
511
+ localStorage.setItem('distributionCode','');
512
+ `;
513
+ }
514
+ console.log(`req.query.page`, req.query.page);
515
+ if (req.query.page.split('/')[0] === 'distribution' &&
516
+ req.query.page.split('/')[1]) {
517
+ distribution_code = await SeoConfig.distributionSEO({
518
+ appName: appName,
519
+ url: req.url,
520
+ page: req.query.page,
521
+ link_prefix: link_prefix,
522
+ data,
523
+ language,
524
+ });
525
+ }
526
+ if (req.query.page.split('/')[0] === 'collections' &&
527
+ req.query.page.split('/')[1]) {
528
+ await SeoConfig.collectionSeo({ appName, language, data, page: req.query.page });
529
+ }
530
+ if (FBCode) {
531
+ if (!(req.headers['user-agent'].includes('iosGlitter') && !(req.headers['user-agent'].includes('allow_track')))) {
532
+ seo_content.push(SeoConfig.fbCode(FBCode));
533
+ }
534
+ }
535
+ const home_seo = home_page_data.page_config.seo || {};
536
+ const seo = data.page_config.seo;
537
+ const head = [
538
+ (() => {
539
+ var _a;
540
+ return html `
541
+ ${(() => {
542
+ var _a, _b, _c;
543
+ if (req.query.type === 'editor') {
544
+ return SeoConfig.editorSeo;
545
+ }
546
+ else {
547
+ const d = seo;
548
+ return html `<title>
549
+ ${[home_seo.title_prefix || '', d.title || '', home_seo.title_suffix || ''].join('') ||
550
+ '尚未設定標題'}
551
+ </title>
552
+ <link
553
+ rel="canonical"
554
+ href="${(() => {
555
+ if (data.tag === 'index') {
556
+ return `https://${brandAndMemberType.domain}`;
557
+ }
558
+ else if (req.query.page === 'blogs') {
559
+ return `https://${brandAndMemberType.domain}/blogs`;
560
+ }
561
+ {
562
+ return `https://${brandAndMemberType.domain}/${data.tag}`;
563
+ }
564
+ })()}"
565
+ />
566
+ ${((data.tag !== req.query.page || req.query.page === 'index-mobile') && req.query.page !== 'blogs')
567
+ ? `<meta name="robots" content="noindex">`
568
+ : `<meta name="robots" content="index, follow"/>`}
569
+ <meta name="keywords" content="${(d.keywords || '尚未設定關鍵字').replace(/"/g, '&quot;')}" />
570
+ <link
571
+ id="appImage"
572
+ rel="shortcut icon"
573
+ href="${d.logo || home_seo.logo || ''}"
574
+ type="image/x-icon"
575
+ />
576
+ <link rel="icon" href="${d.logo || home_seo.logo || ''}" type="image/png" sizes="128x128" />
577
+ <meta property="og:image" content="${d.image || home_seo.image || ''}" />
578
+ <meta
579
+ property="og:title"
580
+ content="${((_a = d.title) !== null && _a !== void 0 ? _a : '').replace(/\n/g, '').replace(/"/g, '&quot;')}"
581
+ />
582
+ <meta
583
+ name="description"
584
+ content="${((_b = d.content) !== null && _b !== void 0 ? _b : '').replace(/\n/g, '').replace(/"/g, '&quot;')}"
585
+ />
586
+ <meta
587
+ name="og:description"
588
+ content="${((_c = d.content) !== null && _c !== void 0 ? _c : '').replace(/\n/g, '').replace(/"/g, '&quot;')}"
589
+ />
590
+
591
+ ${[{ src: 'css/front-end.css', type: 'text/css' }]
592
+ .map(dd => {
593
+ return html `
594
+ <link href="/${link_prefix && `${link_prefix}/`}${dd.src}" type="${dd.type}"
595
+ rel="stylesheet"></link>`;
596
+ })
597
+ .join('')} `;
598
+ }
599
+ })()}
600
+ ${(_a = d.code) !== null && _a !== void 0 ? _a : ''}
601
+ ${(() => {
602
+ var _a;
603
+ if (req.query.type === 'editor') {
604
+ return ``;
605
+ }
606
+ else {
607
+ return `${((_a = data.config.globalStyle) !== null && _a !== void 0 ? _a : [])
608
+ .map((dd) => {
609
+ try {
610
+ if (dd.data.elem === 'link') {
611
+ return html ` <link
612
+ type="text/css"
613
+ rel="stylesheet"
614
+ href="${dd.data.attr.find((dd) => {
615
+ return dd.attr === 'href';
616
+ }).value}"
617
+ />`;
618
+ }
619
+ }
620
+ catch (e) {
621
+ return ``;
622
+ }
623
+ })
624
+ .join('')}`;
625
+ }
626
+ })()}
627
+ `;
628
+ })(),
629
+ `<script>
630
+ ${[
631
+ (_e = (req.query.type !== 'editor' && d.custom_script)) !== null && _e !== void 0 ? _e : '',
632
+ `window.login_config = ${JSON.stringify(login_config)};`,
633
+ `window.appName = '${appName}';`,
634
+ `window.glitterBase = '${brandAndMemberType.brand}';`,
635
+ `window.memberType = '${brandAndMemberType.memberType}';`,
636
+ `window.glitterBackend = '${config_js_1.config.domain}';`,
637
+ `window.preloadData = ${JSON.stringify(preload)
638
+ .replace(/<\/script>/g, 'sdjuescript_prepand')
639
+ .replace(/<script>/g, 'sdjuescript_prefix')};`,
640
+ `window.glitter_page = '${req.query.page}';`,
641
+ `window.store_info = ${JSON.stringify(store_info)};`,
642
+ `window.server_execute_time = ${(new Date().getTime() - start) / 1000};`,
643
+ `window.language = '${language}';`,
644
+ `${distribution_code}`,
645
+ `window.ip_country = '${ip_country.country || 'TW'}';`,
646
+ `window.currency_covert = ${JSON.stringify(await shopping_js_1.Shopping.currencyCovert((req.query.base || 'TWD')))};`,
647
+ `window.language_list = ${JSON.stringify(language_label.label)};`,
648
+ `window.home_seo=${JSON.stringify(home_seo)
649
+ .replace(/<\/script>/g, 'sdjuescript_prepand')
650
+ .replace(/<script>/g, 'sdjuescript_prefix')};`,
651
+ ]
652
+ .map(dd => {
653
+ return (dd || '').trim();
654
+ })
655
+ .filter(dd => {
656
+ return dd;
657
+ })
658
+ .join(';\n')}
659
+ </script>
660
+ ${[
661
+ { src: 'glitterBundle/GlitterInitial.js', type: 'module' },
662
+ { src: 'glitterBundle/module/html-generate.js', type: 'module' },
663
+ { src: 'glitterBundle/html-component/widget.js', type: 'module' },
664
+ { src: 'glitterBundle/plugins/trigger-event.js', type: 'module' },
665
+ { src: 'api/pageConfig.js', type: 'module' },
666
+ ]
667
+ .map(dd => {
668
+ return html ` <script
669
+ src="/${link_prefix && `${link_prefix}/`}${dd.src}"
670
+ type="${dd.type}"
671
+ ></script>`;
672
+ })
673
+ .join('')}
674
+ ${((_f = preload.event) !== null && _f !== void 0 ? _f : [])
675
+ .filter((dd) => {
676
+ return dd;
677
+ })
678
+ .map((dd) => {
679
+ const link = dd.fun.replace(`TriggerEvent.setEventRouter(import.meta.url, '.`, 'official_event');
680
+ return link.substring(0, link.length - 2);
681
+ })
682
+ .map((dd) => html ` <script src="/${link_prefix && `${link_prefix}/`}${dd}" type="module"></script>`)
683
+ .join('')}
684
+ ${(() => {
685
+ if (req.query.type === 'editor') {
686
+ return ``;
687
+ }
688
+ else {
689
+ if (req.headers['user-agent'].includes('iosGlitter') && !(req.headers['user-agent'].includes('allow_track'))) {
690
+ customCode.ga4 = [];
691
+ customCode.g_tag = [];
692
+ }
693
+ return html `
694
+ ${SeoConfig.gA4(customCode.ga4)} ${SeoConfig.gTag(customCode.g_tag)}
695
+ ${seo_content
696
+ .map(dd => {
697
+ return dd.trim();
698
+ })
699
+ .join('\n')}
700
+ `;
701
+ }
702
+ })()}`,
703
+ ].join('');
704
+ return {
705
+ head: head,
706
+ body: ``,
707
+ seo_detail: seo
708
+ };
709
+ }
710
+ else {
711
+ return {
712
+ head: await seo_js_1.Seo.redirectToHomePage(appName, req),
713
+ body: ``,
714
+ };
715
+ }
716
+ }
717
+ catch (e) {
718
+ console.error(e);
719
+ return {
720
+ head: ``,
721
+ body: `${e}`,
722
+ };
723
+ }
724
+ }
336
725
  }
337
726
  exports.SeoConfig = SeoConfig;
338
727
  SeoConfig.editorSeo = html `<title>SHOPNEX後台系統</title>
@@ -398,4 +787,46 @@ function isCurrentTimeWithinRange(data) {
398
787
  return now >= startDateTime;
399
788
  }
400
789
  }
790
+ async function getSeoDetail(appName, req) {
791
+ const sqlData = await private_config_js_1.Private_config.getConfig({
792
+ appName: appName,
793
+ key: 'seo_webhook',
794
+ });
795
+ if (!sqlData[0] || !sqlData[0].value) {
796
+ return undefined;
797
+ }
798
+ const html = String.raw;
799
+ return await database_js_1.default.queryLambada({
800
+ database: appName,
801
+ }, async (db) => {
802
+ db.execute = db.query;
803
+ const functionValue = [
804
+ {
805
+ key: 'db',
806
+ data: () => {
807
+ return db;
808
+ },
809
+ },
810
+ {
811
+ key: 'req',
812
+ data: () => {
813
+ return req;
814
+ },
815
+ },
816
+ ];
817
+ const evalString = `
818
+ return {
819
+ execute:(${functionValue
820
+ .map(d2 => {
821
+ return d2.key;
822
+ })
823
+ .join(',')})=>{
824
+ try {
825
+ ${sqlData[0].value.value.replace(/new\s*Promise\s*\(\s*async\s*\(\s*resolve\s*,\s*reject\s*\)\s*=>\s*\{([\s\S]*)\}\s*\)/i, 'new Promise(async (resolve, reject) => { try { $1 } catch (error) { console.log(error);reject(error); } })')}
826
+ }catch (e) { console.log(e) } } }
827
+ `;
828
+ const myFunction = new Function(evalString);
829
+ return await myFunction().execute(functionValue[0].data(), functionValue[1].data());
830
+ });
831
+ }
401
832
  //# sourceMappingURL=seo-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"seo-config.js","sourceRoot":"","sources":["seo-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seo-config.js","sourceRoot":"","sources":["seo-config.ts"],"names":[],"mappings":"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"}