@dcl/sdk 7.20.5-22674879735.commit-6a30e67 → 7.20.5-22683934262.commit-8314528

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/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@dcl/sdk",
3
3
  "description": "",
4
- "version": "7.20.5-22674879735.commit-6a30e67",
4
+ "version": "7.20.5-22683934262.commit-8314528",
5
5
  "author": "Decentraland",
6
6
  "dependencies": {
7
- "@dcl/ecs": "7.20.5-22674879735.commit-6a30e67",
7
+ "@dcl/ecs": "7.20.5-22683934262.commit-8314528",
8
8
  "@dcl/ecs-math": "2.1.0",
9
9
  "@dcl/explorer": "1.0.164509-20240802172549.commit-fb95b9b",
10
- "@dcl/js-runtime": "7.20.5-22674879735.commit-6a30e67",
11
- "@dcl/react-ecs": "7.20.5-22674879735.commit-6a30e67",
12
- "@dcl/sdk-commands": "7.20.5-22674879735.commit-6a30e67",
10
+ "@dcl/js-runtime": "7.20.5-22683934262.commit-8314528",
11
+ "@dcl/react-ecs": "7.20.5-22683934262.commit-8314528",
12
+ "@dcl/sdk-commands": "7.20.5-22683934262.commit-8314528",
13
13
  "text-encoding": "0.7.0"
14
14
  },
15
15
  "keywords": [],
@@ -35,5 +35,5 @@
35
35
  },
36
36
  "types": "./index.d.ts",
37
37
  "typings": "./index.d.ts",
38
- "commit": "6a30e674549401b71fb5c3b521a08339d7c5201e"
38
+ "commit": "8314528ab573055b83ee38a7b93e57ea0fdefe3d"
39
39
  }
@@ -0,0 +1,5 @@
1
+ export type Platform = 'mobile' | 'desktop' | 'web';
2
+ export declare function getPlatform(): Platform | null;
3
+ export declare function isMobile(): boolean;
4
+ export declare function isDesktop(): boolean;
5
+ export declare function isWeb(): boolean;
@@ -0,0 +1,29 @@
1
+ import { getExplorerInformation } from '~system/Runtime';
2
+ const VALID_PLATFORMS = new Set(['mobile', 'desktop', 'web']);
3
+ let platform = null;
4
+ void getExplorerInformation({})
5
+ .then((response) => {
6
+ const normalized = response.platform.toLowerCase();
7
+ if (VALID_PLATFORMS.has(normalized)) {
8
+ platform = normalized;
9
+ }
10
+ else {
11
+ console.error(`Unknown platform value: "${response.platform}"`);
12
+ }
13
+ })
14
+ .catch((error) => {
15
+ console.error('Failed to get explorer information:', error);
16
+ });
17
+ export function getPlatform() {
18
+ return platform;
19
+ }
20
+ export function isMobile() {
21
+ return getPlatform() === 'mobile';
22
+ }
23
+ export function isDesktop() {
24
+ return getPlatform() === 'desktop';
25
+ }
26
+ export function isWeb() {
27
+ return getPlatform() === 'web';
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcGxhdGZvcm0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFJeEQsTUFBTSxlQUFlLEdBQWdCLElBQUksR0FBRyxDQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFBO0FBRWxGLElBQUksUUFBUSxHQUFvQixJQUFJLENBQUE7QUFDcEMsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFLENBQUM7S0FDNUIsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7SUFDakIsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUNsRCxJQUFJLGVBQWUsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDbkMsUUFBUSxHQUFHLFVBQXNCLENBQUE7S0FDbEM7U0FBTTtRQUNMLE9BQU8sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFBO0tBQ2hFO0FBQ0gsQ0FBQyxDQUFDO0tBQ0QsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHFDQUFxQyxFQUFFLEtBQUssQ0FBQyxDQUFBO0FBQzdELENBQUMsQ0FBQyxDQUFBO0FBRUosTUFBTSxVQUFVLFdBQVc7SUFDekIsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQztBQUVELE1BQU0sVUFBVSxRQUFRO0lBQ3RCLE9BQU8sV0FBVyxFQUFFLEtBQUssUUFBUSxDQUFBO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUztJQUN2QixPQUFPLFdBQVcsRUFBRSxLQUFLLFNBQVMsQ0FBQTtBQUNwQyxDQUFDO0FBRUQsTUFBTSxVQUFVLEtBQUs7SUFDbkIsT0FBTyxXQUFXLEVBQUUsS0FBSyxLQUFLLENBQUE7QUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEV4cGxvcmVySW5mb3JtYXRpb24gfSBmcm9tICd+c3lzdGVtL1J1bnRpbWUnXG5cbmV4cG9ydCB0eXBlIFBsYXRmb3JtID0gJ21vYmlsZScgfCAnZGVza3RvcCcgfCAnd2ViJ1xuXG5jb25zdCBWQUxJRF9QTEFURk9STVM6IFNldDxzdHJpbmc+ID0gbmV3IFNldDxzdHJpbmc+KFsnbW9iaWxlJywgJ2Rlc2t0b3AnLCAnd2ViJ10pXG5cbmxldCBwbGF0Zm9ybTogUGxhdGZvcm0gfCBudWxsID0gbnVsbFxudm9pZCBnZXRFeHBsb3JlckluZm9ybWF0aW9uKHt9KVxuICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICBjb25zdCBub3JtYWxpemVkID0gcmVzcG9uc2UucGxhdGZvcm0udG9Mb3dlckNhc2UoKVxuICAgIGlmIChWQUxJRF9QTEFURk9STVMuaGFzKG5vcm1hbGl6ZWQpKSB7XG4gICAgICBwbGF0Zm9ybSA9IG5vcm1hbGl6ZWQgYXMgUGxhdGZvcm1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcihgVW5rbm93biBwbGF0Zm9ybSB2YWx1ZTogXCIke3Jlc3BvbnNlLnBsYXRmb3JtfVwiYClcbiAgICB9XG4gIH0pXG4gIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gZ2V0IGV4cGxvcmVyIGluZm9ybWF0aW9uOicsIGVycm9yKVxuICB9KVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGxhdGZvcm0oKTogUGxhdGZvcm0gfCBudWxsIHtcbiAgcmV0dXJuIHBsYXRmb3JtXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgcmV0dXJuIGdldFBsYXRmb3JtKCkgPT09ICdtb2JpbGUnXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Rlc2t0b3AoKTogYm9vbGVhbiB7XG4gIHJldHVybiBnZXRQbGF0Zm9ybSgpID09PSAnZGVza3RvcCdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzV2ViKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZ2V0UGxhdGZvcm0oKSA9PT0gJ3dlYidcbn1cbiJdfQ==
@@ -0,0 +1,35 @@
1
+ import { getExplorerInformation } from '~system/Runtime'
2
+
3
+ export type Platform = 'mobile' | 'desktop' | 'web'
4
+
5
+ const VALID_PLATFORMS: Set<string> = new Set<string>(['mobile', 'desktop', 'web'])
6
+
7
+ let platform: Platform | null = null
8
+ void getExplorerInformation({})
9
+ .then((response) => {
10
+ const normalized = response.platform.toLowerCase()
11
+ if (VALID_PLATFORMS.has(normalized)) {
12
+ platform = normalized as Platform
13
+ } else {
14
+ console.error(`Unknown platform value: "${response.platform}"`)
15
+ }
16
+ })
17
+ .catch((error) => {
18
+ console.error('Failed to get explorer information:', error)
19
+ })
20
+
21
+ export function getPlatform(): Platform | null {
22
+ return platform
23
+ }
24
+
25
+ export function isMobile(): boolean {
26
+ return getPlatform() === 'mobile'
27
+ }
28
+
29
+ export function isDesktop(): boolean {
30
+ return getPlatform() === 'desktop'
31
+ }
32
+
33
+ export function isWeb(): boolean {
34
+ return getPlatform() === 'web'
35
+ }