@24i/bigscreen-sdk 1.0.37-alpha.2644 → 1.0.37-alpha.2649

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.
@@ -0,0 +1,6 @@
1
+ {
2
+ "cSpell.words": [
3
+ "MEDIAPAYLOAD",
4
+ "Tealium"
5
+ ]
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@24i/bigscreen-sdk",
3
- "version": "1.0.37-alpha.2644",
3
+ "version": "1.0.37-alpha.2649",
4
4
  "description": "SmartApps BIGscreen SDK monorepo",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -38,7 +38,7 @@
38
38
  },
39
39
  "homepage": "https://github.com/24i/smartapps-bigscreen-sdk#readme",
40
40
  "dependencies": {
41
- "@24i/appstage-shared-analytics": "1.0.20-alpha.70",
41
+ "@24i/appstage-shared-analytics": "1.0.20-alpha.72",
42
42
  "@24i/appstage-shared-events-manager": "1.0.11",
43
43
  "@24i/appstage-shared-perf-utils": "1.0.11",
44
44
  "@24i/bigscreen-players-engine-base": "4.0.4",
@@ -2,6 +2,7 @@ import { Storage } from '@24i/bigscreen-sdk/storage';
2
2
  import { MINUTE_IN_MS } from '@24i/bigscreen-sdk/utils/timeConstants';
3
3
  import { createTimeout } from '@24i/bigscreen-sdk/utils/timers';
4
4
  import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
5
+ import { findIdForLanguage } from './findIdForLanguage';
5
6
  import {
6
7
  BIGSCREEN_APP_TYPE,
7
8
  BIGSCREEN_OTT_TYPE,
@@ -16,11 +17,13 @@ import type {
16
17
  Payload,
17
18
  TealiumAnalyticsConfiguration,
18
19
  TeaResult,
20
+ TealiumDataMapper,
21
+ TealiumCustomConfiguration,
22
+ CustomMappers,
19
23
  } from './types';
20
24
 
21
25
  // eslint-disable-next-line no-magic-numbers
22
26
  const SESSION_TIMEOUT = 30 * MINUTE_IN_MS;
23
- const TEALIUM_INSTANCE = 'tealium_analytics_bigscreen';
24
27
  const TEALIUM_SESSION_COUNTER = 'tealium_session_counter';
25
28
  const TEALIUM_BASE_URL = 'https://collect.tealiumiq.com/event';
26
29
 
@@ -52,6 +55,8 @@ export class TealiumAnalytics implements AnalyticsClient {
52
55
 
53
56
  baseUrl: string = '';
54
57
 
58
+ customMappers: CustomMappers | undefined = undefined;
59
+
55
60
  constructor(private config: TealiumAnalyticsConfiguration, private appVersion: string = '') {
56
61
  this.init();
57
62
  }
@@ -62,37 +67,43 @@ export class TealiumAnalytics implements AnalyticsClient {
62
67
  }
63
68
 
64
69
  prepareDatasetPayload() {
65
- const { options } = this.config;
66
- if (!options) {
67
- console.warn(`[${this.name}] prepareDatasetPayload missing options`);
70
+ if (!this.config) {
71
+ console.warn(`[${this.name}] prepareDatasetPayload missing configuration`);
68
72
  return;
69
73
  }
70
74
  const {
71
- datasource,
72
- entity,
73
- language,
74
75
  account,
75
76
  profile,
76
77
  environment,
77
- property_id: propertyId,
78
+ datasource,
79
+ customMappers,
80
+ dataMapper = {} as TealiumDataMapper,
81
+ } = this.config || {} as TealiumCustomConfiguration;
82
+ const {
83
+ entity,
84
+ property_ids: propertyIds,
85
+ language,
78
86
  short_language_service: shortLanguageService,
79
- } = options;
87
+ platform_short: platformShort,
88
+ platform_type: platformType,
89
+ app_type: appType,
90
+ } = dataMapper || {} as TealiumDataMapper;
91
+ this.customMappers = customMappers;
80
92
  this.constantPayload = {
81
93
  tealium_account: account,
82
94
  tealium_profile: profile,
83
95
  tealium_environment: environment,
84
- tealium_datasource: datasource,
85
- instance: TEALIUM_INSTANCE,
86
- language,
96
+ ...(datasource && { tealium_datasource: datasource }),
97
+ language: language || '',
87
98
  language_service: `${entity} ${language}`,
88
99
  entity,
89
- property_id: `${propertyId}`,
90
- short_language_service: shortLanguageService,
91
- platform_short: BIGSCREEN_PLATFORM_SHORT,
92
- platform_type: BIGSCREEN_PLATFORM_TYPE,
93
- app_type: BIGSCREEN_APP_TYPE,
100
+ property_id: findIdForLanguage(propertyIds, language || '').toString(),
101
+ short_language_service: shortLanguageService || '',
102
+ platform_short: platformShort ?? BIGSCREEN_PLATFORM_SHORT,
103
+ platform_type: platformType ?? BIGSCREEN_PLATFORM_TYPE,
104
+ app_type: appType ?? BIGSCREEN_APP_TYPE,
94
105
  ott_type: BIGSCREEN_OTT_TYPE,
95
- app_id: `${entity} ${language} ${this.appVersion}`,
106
+ app_id: `${entity} ${language}:${this.appVersion}`,
96
107
  };
97
108
  }
98
109
 
@@ -137,7 +148,9 @@ export class TealiumAnalytics implements AnalyticsClient {
137
148
  if (!events) return;
138
149
  await Promise.all(
139
150
  events.map(async (event) => {
140
- const mappingFunction = EVENTS_MAPPING[event];
151
+ const mappingFunction = this.customMappers && this.customMappers[event]
152
+ ? this.customMappers[event]
153
+ : EVENTS_MAPPING[event];
141
154
  try {
142
155
  if (!mappingFunction) {
143
156
  throw Error(`Missing mapping function for "${event}"`);
@@ -2,7 +2,7 @@ import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
2
 
3
3
  export const BIGSCREEN_OTT_TYPE = 'SmartTV';
4
4
 
5
- export const BIGSCREEN_APP_TYPE = 'HTML5';
5
+ export const BIGSCREEN_APP_TYPE = 'html5';
6
6
 
7
7
  export const BIGSCREEN_PLATFORM_SHORT = 'o';
8
8
 
@@ -0,0 +1,9 @@
1
+ import { PropertyIds } from '@24i/bigscreen-sdk/analytics/TealiumAnalytics';
2
+
3
+ export const findIdForLanguage = (
4
+ property_ids: PropertyIds = {},
5
+ language: string,
6
+ ): number => {
7
+ const languageKey = Object.keys(property_ids).find((key) => key.endsWith(language));
8
+ return languageKey ? property_ids[languageKey] : -1;
9
+ };
@@ -1,3 +1,4 @@
1
1
  export { TealiumAnalytics } from './TealiumAnalytics';
2
- export { TEALIUM_TRIGGERS } from './constants';
3
- export { TealiumAnalyticsOptions, TealiumAnalyticsConfiguration } from './types';
2
+ export { findIdForLanguage } from './findIdForLanguage';
3
+ export * from './constants';
4
+ export * from './types';
@@ -11,7 +11,7 @@ export const MEDIA_PAYLOAD: Payload = {
11
11
  provider: 'provider',
12
12
  assetId: '12345',
13
13
  app_id: 'app_id',
14
- app_type: 'HTML5',
14
+ app_type: 'html5',
15
15
  sceneName: '',
16
16
  sceneId: '',
17
17
  sceneType: '',
@@ -40,21 +40,20 @@ export const TEALIUM_PAGEINFO_PAYLOAD = {
40
40
  };
41
41
 
42
42
  export const TEALIUM_STATIC_CORE_PAYLOAD = {
43
- tealium_account: 'bbg',
43
+ tealium_account: 'test',
44
44
  tealium_profile: 'main',
45
45
  tealium_environment: 'dev',
46
46
  tealium_datasource: 'abc',
47
- app_id: 'rfe russian v1.0-test',
48
- app_type: 'HTML5',
49
- entity: 'rfe',
50
- instance: 'tealium_analytics_bigscreen',
51
- language: 'russian',
52
- language_service: 'rfe russian',
47
+ app_id: 'auto english:v1.0-test',
48
+ app_type: 'html5',
49
+ entity: 'auto',
50
+ language: 'english',
51
+ language_service: 'auto english',
53
52
  ott_type: 'SmartTV',
54
53
  platform_short: 'o',
55
54
  platform_type: 'ott',
56
- property_id: '414',
57
- short_language_service: 'rus',
55
+ property_id: '1',
56
+ short_language_service: 'eng',
58
57
  };
59
58
 
60
59
  export const TEALIUM_MEDIA_PAYLOAD = {
@@ -1,37 +1,46 @@
1
1
  import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { AppEvents, TrackEventType as TrackEventTypeEnum } from './constants';
2
+ import { AppEvents, EVENTS, TrackEventType as TrackEventTypeEnum } from './constants';
3
3
  import type {
4
4
  UserInfo, AppInfo, VideoProgress, SceneInfo, PlayerSession, ErrorInfo,
5
5
  } from '../../interface';
6
6
 
7
7
  export type TeaEventType = 'view' | 'link';
8
- type TeaAppType = 'HTML5' | 'react' | 'native';
8
+ type TeaAppType = 'html5' | 'react' | 'native';
9
9
  type TeaOttType = 'Samsung' | 'LG' | 'AndroidTV' | 'FireTV' | 'tvOS' | 'Chromecast'
10
10
  | 'Roku' | 'Set-top Box' | 'Xiaomi' | 'SmartTV';
11
11
  type TeaTrackEventType = `${TrackEventTypeEnum}`;
12
12
  type TeaAppEventValues = typeof AppEvents[keyof typeof AppEvents];
13
13
  type TeaAnalyticsTriggerValues = `${AnalyticsTriggers}`;
14
14
 
15
- export type TealiumAnalyticsOptions = {
16
- account: string, // e.g: 'bbg'
17
- profile: string, // e.g: 'main'
18
- environment: string, // e.g: 'dev'
19
- app_type: TeaAppType, // e.g. 'HTML5' for bigscreen
15
+ export interface PropertyIds {
16
+ [key: string]: number;
17
+ }
18
+
19
+ export type CustomMappers = Partial<Record<EVENTS, EventMappingFunction>>;
20
+
21
+ export type TealiumDataMapper = {
22
+ app_type: TeaAppType, // e.g. 'html5' for bigscreen
20
23
  entity: string, // e.g: 'rfe'
21
- language: string, // e.g: 'russian'
22
- short_language_service: string, // e.g: 'rus'
23
- property_id: number, // e.g: 414
24
- datasource?: string, // e.g: '6g2fzf'
25
- instance?: string, // unique instance name
24
+ property_ids: PropertyIds, // e.g: 414
25
+ language?: string, // e.g: 'english'
26
+ platform_short?: string,
27
+ platform_type?: string,
28
+ short_language_service?: string, // e.g: 'eng'
26
29
  };
27
30
 
28
- export type TealiumAnalyticsConfiguration = {
29
- name: string, // Telium
30
- baseURL: string, // e.g: 'https://collect.tealiumiq.com/event',
31
- enabled: boolean,
32
- options?: TealiumAnalyticsOptions,
31
+ export type TealiumCustomConfiguration = {
32
+ customMappers?: CustomMappers,
33
33
  };
34
34
 
35
+ export type TealiumAnalyticsConfiguration = {
36
+ account: string, // e.g: 'bbg'
37
+ profile: string, // e.g: 'main'
38
+ environment: string, // e.g: 'dev'
39
+ dataMapper?: TealiumDataMapper,
40
+ datasource?: string, // e.g: '6g2fzf'
41
+ baseURL?: string, // e.g: 'https://collect.tealiumiq.com/event',
42
+ } & TealiumCustomConfiguration;
43
+
35
44
  export type CorePayload = {
36
45
  app_id: string;
37
46
  app_type: TeaAppType;
@@ -89,23 +98,23 @@ export type TeaStaticCoreResult = {
89
98
  language: string;
90
99
  language_service: string;
91
100
  ott_type: TeaOttType;
92
- platform_short: 'o';
93
- platform_type: 'ott';
101
+ platform_short: string;
102
+ platform_type: string;
94
103
  property_id: string;
95
104
  short_language_service: string;
96
105
  };
97
106
 
98
107
  export type TeaCoreResult = {
99
- app_events: TeaAppEventValues | '', // '' for Scene View event
108
+ app_events?: TeaAppEventValues | '', // '' for Scene View event
100
109
  event_trigger: TeaAnalyticsTriggerValues,
101
110
  track_event_type: TeaTrackEventType,
102
111
  };
103
112
 
104
113
  export type TeaPageResult = {
105
- page_title: string,
106
114
  page_name: string,
115
+ page_title?: string,
107
116
  content_type: string,
108
- section: string,
117
+ section?: string,
109
118
  categories: string,
110
119
  subcontent_type?: string;
111
120
  };
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.main = void 0;
5
+ const path = require("path");
6
+ const fs = require("fs");
7
+ const fse = require("fs-extra");
8
+ const chalk = require("chalk");
9
+ const minimist = require("minimist");
10
+ const questions_1 = require("./questionnaire/questions");
11
+ const Settings_1 = require("./settings/Settings");
12
+ async function isDirectoryEmpty(dirPath) {
13
+ const files = await fs.promises.readdir(dirPath);
14
+ return !files.length;
15
+ }
16
+ async function copyTemplateFiles(templateDir, targetDir) {
17
+ return fse.copy(templateDir, targetDir);
18
+ }
19
+ function updatePackageJsonFile(filePath, options) {
20
+ let data = fs.readFileSync(filePath, 'utf8');
21
+ const keywords = options.keywords.map((word) => `"${word}"`).join(', ');
22
+ data = data.replace(/("name": ")(.*)(")/, `$1${options.name}$3`);
23
+ data = data.replace(/("version": ")(.*)(")/, `$1${options.version}$3`);
24
+ data = data.replace(/("description": ")(.*)(")/, `$1${options.description}$3`);
25
+ data = data.replace(/("keywords": \[)(.*)(\])/, `$1${keywords}$3`);
26
+ data = data.replace(/("author": ")(.*)(")/, `$1${options.author}$3`);
27
+ fs.writeFileSync(filePath, data);
28
+ }
29
+ function parseArguments(rawArgv) {
30
+ const argv = minimist(rawArgv.slice(2));
31
+ const dirName = argv._[0];
32
+ if (!dirName) {
33
+ console.error('Error: Missing package name');
34
+ process.exit(1);
35
+ }
36
+ return {
37
+ dirName,
38
+ };
39
+ }
40
+ async function main() {
41
+ const { dirName: destDirName } = parseArguments(process.argv);
42
+ const destDir = path.join(process.cwd(), 'packages/', destDirName);
43
+ if (fs.existsSync(destDir)) {
44
+ console.error(`Error: Target directory "${destDir}" already exists`);
45
+ process.exit(1);
46
+ }
47
+ fs.mkdirSync(destDir, { recursive: true });
48
+ const isDirEmpty = await isDirectoryEmpty(destDir);
49
+ if (!isDirEmpty) {
50
+ console.error(`Error: Target directory "${destDir}" is not empty.`);
51
+ process.exit(1);
52
+ }
53
+ const settings = Object.assign({}, Settings_1.Settings);
54
+ settings.name = `${Settings_1.Settings.name}${destDirName}`.toLowerCase();
55
+ const details = await (0, questions_1.promptPackageDetails)(settings);
56
+ const templateDir = path.join(__dirname, '..', 'templates/typescript');
57
+ await copyTemplateFiles(templateDir, destDir);
58
+ const packageJsonFile = path.join(destDir, 'package.json');
59
+ updatePackageJsonFile(packageJsonFile, details);
60
+ const docsSymlinkTarget = path.join('../../../packages/', destDirName, '/README.md');
61
+ const docsSymlinkPath = path.join(process.cwd(), 'docs/packages/', destDirName, '/README.md');
62
+ await fse.ensureSymlink(docsSymlinkTarget, docsSymlinkPath);
63
+ console.log(`${chalk.green('Success')}, package has been initialized!`);
64
+ }
65
+ exports.main = main;
66
+ //# sourceMappingURL=createPackage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPackage.js","sourceRoot":"","sources":["../src/createPackage.ts"],"names":[],"mappings":";;;;AAEA,6BAA6B;AAC7B,yBAAyB;AACzB,gCAAgC;AAChC,+BAA+B;AAC/B,qCAAqC;AACrC,yDAAiE;AACjE,kDAA+C;AAG/C,KAAK,UAAU,gBAAgB,CAAC,OAAe;IAC3C,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;AACzB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,WAAmB,EAAE,SAAiB;IACnE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAgB,EAAE,OAAwB;IACrE,IAAI,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,KAAK,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC;IACjE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,KAAK,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IACvE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE,KAAK,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC;IAC/E,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC;IACnE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IACrE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CAAC,OAAsB;IAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1B,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACnB;IAED,OAAO;QACH,OAAO;KACV,CAAC;AACN,CAAC;AAEM,KAAK,UAAU,IAAI;IACtB,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACnE,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QACxB,OAAO,CAAC,KAAK,CAAC,4BAA4B,OAAO,kBAAkB,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACnB;IACD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3C,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,EAAE;QACb,OAAO,CAAC,KAAK,CAAC,4BAA4B,OAAO,iBAAiB,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACnB;IAED,MAAM,QAAQ,qBAAQ,mBAAQ,CAAE,CAAC;IACjC,QAAQ,CAAC,IAAI,GAAG,GAAG,mBAAQ,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC;IAE/D,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAoB,EAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC;IAEvE,MAAM,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAC3D,qBAAqB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAGhD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IACrF,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9F,MAAM,GAAG,CAAC,aAAa,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;IAE5D,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;AAC5E,CAAC;AA/BD,oBA+BC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const createPackage_1 = require("./createPackage");
4
+ (0, createPackage_1.main)();
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,mDAAuC;AAEvC,IAAA,oBAAI,GAAE,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.promptPackageDetails = void 0;
4
+ const inquirer = require("inquirer");
5
+ async function promptPackageDetails(defaultValues) {
6
+ return inquirer.prompt([
7
+ {
8
+ type: 'input',
9
+ name: 'name',
10
+ message: 'Package name:',
11
+ default: defaultValues.name,
12
+ }, {
13
+ type: 'input',
14
+ name: 'version',
15
+ message: 'Version:',
16
+ default: defaultValues.version,
17
+ }, {
18
+ type: 'input',
19
+ name: 'description',
20
+ message: 'Description:',
21
+ }, {
22
+ type: 'input',
23
+ name: 'keywords',
24
+ message: 'Keywords:',
25
+ filter: (ans) => ans.split(/[\s,]+/),
26
+ }, {
27
+ type: 'input',
28
+ name: 'author',
29
+ message: 'Author:',
30
+ default: defaultValues.author,
31
+ },
32
+ ]);
33
+ }
34
+ exports.promptPackageDetails = promptPackageDetails;
35
+ //# sourceMappingURL=questions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/questionnaire/questions.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAWrC,KAAK,UAAU,oBAAoB,CAAC,aAA4C;IAC5E,OAAO,QAAQ,CAAC,MAAM,CAAC;QACnB;YACI,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,aAAa,CAAC,IAAI;SAC9B,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,UAAU;YACnB,OAAO,EAAE,aAAa,CAAC,OAAO;SACjC,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,cAAc;SAC1B,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,WAAW;YACpB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;SACvC,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,aAAa,CAAC,MAAM;SAChC;KACJ,CAAC,CAAC;AACP,CAAC;AAEQ,oDAAoB"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Settings = void 0;
4
+ const Settings = {
5
+ name: '@24i/smartapps-bigscreen-',
6
+ version: '0.0.1',
7
+ author: '24i',
8
+ };
9
+ exports.Settings = Settings;
10
+ //# sourceMappingURL=Settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Settings.js","sourceRoot":"","sources":["../../src/settings/Settings.ts"],"names":[],"mappings":";;;AAAA,MAAM,QAAQ,GAAG;IACb,IAAI,EAAE,2BAA2B;IACjC,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,KAAK;CAChB,CAAC;AAEO,4BAAQ"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -43,7 +43,7 @@ const push = (branchName: string, noVerify = false) => {
43
43
  };
44
44
 
45
45
  const pushTag = (version: string) => {
46
- const cmd = `git push v${version}`;
46
+ const cmd = `git push origin v${version}`;
47
47
  return cmdSyncPipeOut(cmd);
48
48
  };
49
49
 
@@ -122,7 +122,7 @@ const release = (versionType: string | 'major' | 'minor' | 'patch') => {
122
122
 
123
123
  console.log(`Bumping version with "${versionType}" ...`);
124
124
  bumpVersion(versionType);
125
- const version = cmdSyncTrimOut('npm pkg get version');
125
+ const version = cmdSyncTrimOut('npm pkg get version').replace(/"/g, '');
126
126
  ok(version, 'Oops, cannot get current version from package.json');
127
127
 
128
128
  console.log(`Publishing package version: ${version} ...`);