@24i/bigscreen-sdk 1.0.41-alpha.2695 → 1.0.42-alpha.2709

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/README.md CHANGED
@@ -6,9 +6,8 @@ sidebar_label: README
6
6
  ---
7
7
 
8
8
  # SmartApps BIGscreen SDK
9
-
10
- [![Build Status](https://travis-ci.com/24i/smartapps-bigscreen-sdk.svg?token=TvpGGSB2Z1L12QwPagEp&branch=development)](https://travis-ci.com/24i/smartapps-bigscreen-sdk)
11
- [![Coverage Status](https://coveralls.io/repos/github/24i/smartapps-bigscreen-sdk/badge.svg?branch=development&t=8n9LTd&kill_cache=1)](https://coveralls.io/github/24i/smartapps-bigscreen-sdk?branch=development)
9
+ [![Build Status](https://github.com/24i/smartapps-bigscreen-sdk/actions/workflows/pull-request.yml/badge.svg)](https://github.com/24i/smartapps-bigscreen-sdk/actions/workflows/pull-request.yml)
10
+ [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=24i_smartapps-bigscreen-sdk&metric=coverage&token=3d35c42d12a876ed9fde3dd5adba282b14656069)](https://sonarcloud.io/summary/new_code?id=24i_smartapps-bigscreen-sdk)
12
11
 
13
12
  * [GitHub](https://github.com/24i/smartapps-bigscreen-sdk)
14
13
  * [Confluence](https://24imedia.atlassian.net/wiki/spaces/PRDNGBIGSCR/overview)
@@ -0,0 +1,153 @@
1
+ #!/usr/bin/env bash
2
+
3
+ : '
4
+ Resolves whether CI job can be skipped or not.
5
+
6
+ It requires to be executed with "source", as the script exports result as a variable
7
+ which needs to be processed outside the script.
8
+
9
+ - EXPORTS:
10
+ Exports numeric variable IS_CI_JOB_SKIPPABLE,
11
+ where 0 represents not skippable build and 1 represent skippable build.
12
+
13
+ - PARAMETERS:
14
+ File paths or glob patterns with paths to files which are not relevant for the CI job.
15
+ Each glob pattern has to be wrapped into double quotes.
16
+
17
+ - USAGE:
18
+ source <path/to/script.sh> "filePathOrGlob1" "filePathOrGlob2" ... "filePathOrGlobN"
19
+
20
+ - EXAMPLE:
21
+ source path/to/script.sh "docs/**/*" ".eslintrc.json"
22
+ if [[ "$IS_CI_JOB_SKIPPABLE" -eq 1 ]]; then
23
+ # job is skippable, do something here
24
+ fi
25
+ '
26
+
27
+ # Includes filenames beginning with a ‘.’ in the results of filename expansion.
28
+ # The filenames ‘.’ and ‘..’ must always be matched explicitly, even if dotglob is set.
29
+ shopt -s dotglob
30
+
31
+ # Patterns which fail to match filenames during filename expansion will not result in an expansion error.
32
+ shopt -u failglob
33
+
34
+ # The pattern ‘**’ used in a filename expansion context will match all files and zero or more directories and subdirectories.
35
+ shopt -s globstar
36
+
37
+ # Bash allows filename patterns which match no files to expand to a null string, rather than themselves.
38
+ shopt -s nullglob
39
+
40
+ function printFormattedArrayItems () {
41
+ FUNCTION_INPUT_ARRAY=("$@")
42
+ for i in "${FUNCTION_INPUT_ARRAY[@]}"; do
43
+ echo " - $i"
44
+ done
45
+ }
46
+
47
+ # Exported numeric variable with the result.
48
+ # 0 represents not skippable build, 1 represent skippable build.
49
+ IS_CI_JOB_SKIPPABLE=0
50
+
51
+ # Printed when build is skippable.
52
+ RESULT_TRUE_STRING="It's possible to skip the CI job!"
53
+
54
+ # Printed when build is not skippable.
55
+ RESULT_FALSE_STRING="It's NOT possible to skip the CI job!"
56
+
57
+ # Variable for providing details about the result.
58
+ RESULT_REASON_STRING="N/A"
59
+
60
+ # The range of commits that were included in the push or pull request.
61
+ # Example "SHA1...SHA2".
62
+ COMMIT_RANGE=""
63
+
64
+ echo ""
65
+ echo "==========================================================================================="
66
+ echo "RESOLVING THE POSSIBILITY TO SKIP THE CI JOB..."
67
+
68
+ # GitHub Actions CI
69
+ if [[ "$GITHUB_EVENT_NAME" == "pull_request" ]]; then
70
+ # This is a Pull Request event
71
+ if [[ -z "$GITHUB_BASE_REF" ]]; then
72
+ RESULT_REASON_STRING="GITHUB_BASE_REF is empty for this CI build."
73
+ elif [[ -z "$GITHUB_HEAD_REF" ]]; then
74
+ RESULT_REASON_STRING="GITHUB_HEAD_REF is empty for this CI build."
75
+ else
76
+ COMMIT_RANGE="origin/${GITHUB_BASE_REF}...origin/${GITHUB_HEAD_REF}"
77
+ echo "set COMMIT_RANGE for PR (GA) to \"${COMMIT_RANGE}\""
78
+ fi
79
+ else
80
+ # This is not Pull Request event (it is for example push)
81
+ if [[ "$GA_EVENT_BEFORE" == "0000000000000000000000000000000000000000" ]]; then
82
+ # variable it is set to zeros for the initial commit of a new branch
83
+ RESULT_REASON_STRING="GA_EVENT_BEFORE is zeros for this CI build."
84
+ elif [[ -z "$GA_EVENT_BEFORE" ]]; then
85
+ RESULT_REASON_STRING="GA_EVENT_BEFORE is empty for this CI build."
86
+ elif [[ -z "$GA_EVENT_AFTER" ]]; then
87
+ RESULT_REASON_STRING="GA_EVENT_AFTER is empty for this CI build."
88
+ else
89
+ COMMIT_RANGE="${GA_EVENT_BEFORE}...${GA_EVENT_AFTER}"
90
+ echo "set COMMIT_RANGE for \"${GITHUB_EVENT_NAME}\" (GA) to \"${COMMIT_RANGE}\""
91
+ fi
92
+ fi
93
+
94
+ if [[ ! -z "$COMMIT_RANGE" ]]; then
95
+ CHANGED_FILES_ARRAY=()
96
+ while IFS= read -r line; do
97
+ CHANGED_FILES_ARRAY+=("${line}")
98
+ done < <(git diff --name-only "$COMMIT_RANGE")
99
+
100
+ IRRELEVANT_FILES_INPUT_ARRAY=($@) # array with all params
101
+
102
+ RESOLVED_RELEVANT_FILES=()
103
+ RESOLVED_IRRELEVANT_FILES=()
104
+ for i in "${CHANGED_FILES_ARRAY[@]}"; do
105
+ if [[ "${IRRELEVANT_FILES_INPUT_ARRAY[*]}" =~ $i ]]; then
106
+ RESOLVED_IRRELEVANT_FILES+=("$i")
107
+ else
108
+ RESOLVED_RELEVANT_FILES+=("$i")
109
+ fi
110
+ done
111
+
112
+ echo ""
113
+ echo "Provided filter for irrelevant files ($#):"
114
+ printFormattedArrayItems "$@"
115
+
116
+ echo ""
117
+ echo "Resolved provided filter for irrelevant files (${#IRRELEVANT_FILES_INPUT_ARRAY[@]}):"
118
+ printFormattedArrayItems "${IRRELEVANT_FILES_INPUT_ARRAY[@]}"
119
+
120
+ echo ""
121
+ echo "Detected changed files from GIT (${#CHANGED_FILES_ARRAY[@]}):"
122
+ printFormattedArrayItems "${CHANGED_FILES_ARRAY[@]}"
123
+
124
+ echo ""
125
+ echo "Changed files resolved as relevant for the CI job (${#RESOLVED_RELEVANT_FILES[@]}):"
126
+ printFormattedArrayItems "${RESOLVED_RELEVANT_FILES[@]}"
127
+
128
+ echo ""
129
+ echo "Changed files resolved as irrelevant for the CI job: (${#RESOLVED_IRRELEVANT_FILES[@]}):"
130
+ printFormattedArrayItems "${RESOLVED_IRRELEVANT_FILES[@]}"
131
+
132
+ if [[ ${#RESOLVED_RELEVANT_FILES[@]} -eq 0 ]]; then
133
+ IS_CI_JOB_SKIPPABLE=1
134
+ RESULT_REASON_STRING="With given filter, all changed files are irrelevant for this CI job."
135
+ else
136
+ RESULT_REASON_STRING="With given filter, there are changes which have to be processed in this CI job."
137
+ fi
138
+ fi
139
+
140
+ echo ""
141
+ echo "The result:"
142
+ if [[ "$IS_CI_JOB_SKIPPABLE" -eq 1 ]]; then
143
+ echo " $RESULT_TRUE_STRING"
144
+ else
145
+ echo " $RESULT_FALSE_STRING"
146
+ fi
147
+ echo ""
148
+ echo "The reason of the result:"
149
+ echo " $RESULT_REASON_STRING"
150
+ echo "==========================================================================================="
151
+ echo ""
152
+
153
+ export IS_CI_JOB_SKIPPABLE
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@24i/bigscreen-sdk",
3
- "version": "1.0.41-alpha.2695",
3
+ "version": "1.0.42-alpha.2709",
4
4
  "description": "SmartApps BIGscreen SDK monorepo",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -157,7 +157,7 @@ export class TealiumAnalytics implements AnalyticsClient {
157
157
  }
158
158
  const eventBody = {
159
159
  ...this.constantPayload,
160
- ...mappingFunction.call(this, triggerName, payload as Payload),
160
+ ...mappingFunction(triggerName, payload as Payload, this.config),
161
161
  };
162
162
  const filteredEventBody: TeaResult = Object.entries(eventBody).reduce(
163
163
  (acc: any, [key, value]) => {
@@ -3,7 +3,7 @@ import { Payload, TeaSceneViewResult } from '../types';
3
3
  import { TrackEventType } from '../constants';
4
4
 
5
5
  export const mapSceneView = (
6
- triggerName: AnalyticsTriggers,
6
+ _: AnalyticsTriggers,
7
7
  payload: Payload,
8
8
  ): TeaSceneViewResult => ({
9
9
  app_events: '',
@@ -83,7 +83,8 @@ ErrorInfo;
83
83
 
84
84
  export type EventMappingFunction = (
85
85
  triggerName: AnalyticsTriggers,
86
- payload: Payload
86
+ payload: Payload,
87
+ config?: TealiumAnalyticsConfiguration,
87
88
  ) => TeaResult;
88
89
 
89
90
  export type TeaStaticCoreResult = {
@@ -14,25 +14,18 @@ import { CorePayload, DeviceInfo, EventBody, Payload, SessionInfo } from './type
14
14
  // eslint-disable-next-line no-magic-numbers
15
15
  const SESSION_TIMEOUT = 30 * MINUTE_IN_MS;
16
16
 
17
- const TWENYFOURIQ_SESSION_COUNTER = '24iQ_session_counter';
17
+ const TWENTY_FOUR_IQ_SESSION_COUNTER = '24iQ_session_counter';
18
18
 
19
19
  export class TwentyFourIQClient implements AnalyticsClient {
20
20
  name = '24iQ';
21
21
 
22
- deviceInfo = {
23
- manufacturer: '',
24
- platform: '',
25
- platformVersion: '',
26
- deviceId: '',
27
- appVersion: '',
28
- applicationId: '',
29
- deviceType: '',
30
- };
31
-
32
22
  constantPayload: CorePayload & SessionInfo & DeviceInfo = {
33
23
  sessionNumber: 0,
34
24
  sessionId: 0,
35
- ...this.deviceInfo,
25
+ appVersion: '',
26
+ deviceId: '',
27
+ manufacturer: '',
28
+ platform: '',
36
29
  };
37
30
 
38
31
  sessionTimeout = createTimeout();
@@ -46,24 +39,20 @@ export class TwentyFourIQClient implements AnalyticsClient {
46
39
  }
47
40
 
48
41
  async init() {
49
- this.deviceInfo.manufacturer = await device.getManufacturerName();
50
- this.deviceInfo.platform = await device.getPlatformName();
51
- this.deviceInfo.platformVersion = await device.getPlatformVersion();
52
- this.deviceInfo.deviceId = await device.getUuid();
42
+ this.constantPayload.deviceId = await device.getUuid();
43
+ this.constantPayload.manufacturer = await device.getManufacturerName();
44
+ this.constantPayload.platform = await device.getPlatformName();
45
+ this.constantPayload.appVersion = this.appVersion;
53
46
  await this.startSession();
54
47
  }
55
48
 
56
49
  async startSession() {
57
50
  const sessionNumber = parseInt(
58
- await Storage.getItem(TWENYFOURIQ_SESSION_COUNTER) ?? '0', 10,
51
+ await Storage.getItem(TWENTY_FOUR_IQ_SESSION_COUNTER) ?? '0', 10,
59
52
  ) + 1;
60
53
  this.constantPayload.sessionNumber = sessionNumber;
61
54
  this.constantPayload.sessionId = generateSessionId();
62
- this.constantPayload.manufacturer = this.deviceInfo.manufacturer;
63
- this.constantPayload.platform = this.deviceInfo.platform;
64
- this.constantPayload.platformVersion = this.deviceInfo.platformVersion;
65
- this.constantPayload.appVersion = this.appVersion;
66
- await Storage.setItem(TWENYFOURIQ_SESSION_COUNTER, sessionNumber.toString());
55
+ await Storage.setItem(TWENTY_FOUR_IQ_SESSION_COUNTER, sessionNumber.toString());
67
56
  this.isSessionActive = true;
68
57
  this.setSessionTimeout();
69
58
  }
@@ -92,6 +92,7 @@ export const TRIGGER_NAME_TO_24IQ_EVENTS: { [K in AnalyticsTriggers]?: EVENTS[];
92
92
  [AnalyticsTriggers.SCROLL_75]: [EVENTS.SCROLL],
93
93
  [AnalyticsTriggers.SCROLL_90]: [EVENTS.SCROLL],
94
94
  [AnalyticsTriggers.APP_CLOSE]: [EVENTS.VIDEO_STOP, EVENTS.PLAYER_CLOSE],
95
+ // VERSION 2 ?
95
96
  [AnalyticsTriggers.AD_LOADED]: [EVENTS.AD_LOADED],
96
97
  [AnalyticsTriggers.AD_SKIPPED]: [EVENTS.AD_SKIPPED],
97
98
  };
@@ -4,14 +4,15 @@ import { formatDateTime, getTimezoneOffsetString } from '../helper';
4
4
 
5
5
  export const mapBase = (payload: Payload): BaseResult => {
6
6
  const timestampDate = time.getCurrentTime();
7
- const formatedTimestamp = getTimezoneOffsetString();
7
+ const formattedTimestamp = getTimezoneOffsetString();
8
8
  return {
9
9
  session_id: payload.sessionId.toString(),
10
10
  timestamp_initiated: formatDateTime(timestampDate),
11
11
  device_id: payload.deviceId,
12
- device_type: payload.deviceType,
12
+ device_type: 'SmartTV',
13
13
  device_platform: payload.platform || '',
14
- device_timezone: formatedTimestamp,
14
+ device_manufacturer: payload.manufacturer || '',
15
+ device_timezone: formattedTimestamp,
15
16
  service_id: payload.serviceId || '',
16
17
  user_id: payload.userId || '',
17
18
  user_profile_id: payload.userProfileId,
@@ -27,7 +27,6 @@ export interface DeviceInfo {
27
27
  appVersion: string,
28
28
  manufacturer: string,
29
29
  platform: string,
30
- platformVersion: string,
31
30
  deviceId: string,
32
31
  }
33
32
 
@@ -37,7 +36,7 @@ export interface SceneInfo {
37
36
  sceneType?: string,
38
37
  }
39
38
 
40
- export type Payload = CorePayload & SceneInfo & SessionInfo & UserInfo & AppInfo;
39
+ export type Payload = CorePayload & SceneInfo & SessionInfo & UserInfo & DeviceInfo & AppInfo;
41
40
 
42
41
  export type EventBody = AnyPayload;
43
42
 
@@ -52,6 +51,7 @@ export type BaseResult = {
52
51
  device_id: string;
53
52
  device_type: string;
54
53
  device_platform: string;
54
+ device_manufacturer: string;
55
55
  device_timezone: string;
56
56
  service_id: string;
57
57
  user_id?: string;
@@ -43,7 +43,13 @@ export class ConsoleLogger extends LoggerBase {
43
43
  let errorMessage = category ? `[${category.toUpperCase()}] ${message}` : message;
44
44
  if (additionalData) {
45
45
  if (additionalData.message) errorMessage += ` - ${additionalData.message}`;
46
- logFunction(errorMessage, JSON.stringify(additionalData, null, LOG_MESSAGE_SPACE_SIZE));
46
+ let stringifiedAdditionalData;
47
+ try {
48
+ stringifiedAdditionalData = JSON.stringify(
49
+ additionalData, null, LOG_MESSAGE_SPACE_SIZE,
50
+ );
51
+ } catch {}
52
+ logFunction(errorMessage, stringifiedAdditionalData);
47
53
  } else {
48
54
  logFunction(errorMessage);
49
55
  }
@@ -170,7 +170,9 @@ export class SentryLogger extends LoggerBase {
170
170
  }
171
171
  if (additionalData) {
172
172
  if (additionalData.message) logMessage += ` - ${additionalData.message}`;
173
- scope.setExtra(contextKeys.ADDITIONAL_DATA, JSON.stringify(additionalData));
173
+ try {
174
+ scope.setExtra(contextKeys.ADDITIONAL_DATA, JSON.stringify(additionalData));
175
+ } catch {}
174
176
  }
175
177
  Sentry.captureMessage(logMessage, level);
176
178
  });
@@ -1,6 +0,0 @@
1
- {
2
- "cSpell.words": [
3
- "MEDIAPAYLOAD",
4
- "Tealium"
5
- ]
6
- }
@@ -1,66 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"createPackage.js","sourceRoot":"","sources":["../src/createPackage.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,mDAAuC;AAEvC,IAAA,oBAAI,GAAE,CAAC"}
@@ -1,35 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,10 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}