@ailuracode/alpine-platform 1.1.0 → 1.1.1

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
@@ -22,13 +22,14 @@ Alpine.start();
22
22
 
23
23
  | Property | Type | Description |
24
24
  |----------|------|-------------|
25
- | `name` | `"macos" \| "windows" \| "linux" \| "ios" \| "android" \| "chromeos" \| "unknown"` | Resolved platform |
26
- | `isMac` | `boolean` | Desktop macOS |
27
- | `isWindows` | `boolean` | Windows |
28
- | `isLinux` | `boolean` | Desktop Linux |
29
- | `isIos` | `boolean` | iOS / iPadOS |
30
- | `isAndroid` | `boolean` | Android |
31
- | `isChromeos` | `boolean` | ChromeOS |
25
+ | `name` | `PlatformName` (getter) | Resolved platform |
26
+ | `isMac` | `boolean` (getter) | Desktop macOS |
27
+ | `isWindows` | `boolean` (getter) | Windows |
28
+ | `isLinux` | `boolean` (getter) | Desktop Linux |
29
+ | `isIos` | `boolean` (getter) | iOS / iPadOS |
30
+ | `isAndroid` | `boolean` (getter) | Android |
31
+ | `isChromeos` | `boolean` (getter) | ChromeOS |
32
+ | `is(platform)` | `boolean` | Platform name check |
32
33
 
33
34
  ## HTML examples
34
35
 
@@ -46,12 +47,15 @@ Pure detection functions are exported for use in other packages or tests:
46
47
 
47
48
  ```js
48
49
  import {
50
+ PLATFORM_NAMES,
51
+ createPlatformState,
49
52
  detectPlatformName,
50
53
  isAndroidDevice,
51
54
  isIosDevice,
52
55
  isLinuxDevice,
53
56
  isMacDevice,
54
57
  isWindowsDevice,
58
+ platformFlags,
55
59
  readPlatformState,
56
60
  } from "@ailuracode/alpine-platform";
57
61
  ```
package/dist/global.d.ts CHANGED
@@ -1,24 +1,45 @@
1
1
  /// <reference types="@types/alpinejs" />
2
2
 
3
- export type PlatformName =
4
- | "macos"
5
- | "windows"
6
- | "linux"
7
- | "ios"
8
- | "android"
9
- | "chromeos"
10
- | "unknown";
3
+ export declare const PLATFORM_NAMES: readonly [
4
+ "macos",
5
+ "windows",
6
+ "linux",
7
+ "ios",
8
+ "android",
9
+ "chromeos",
10
+ "unknown",
11
+ ];
11
12
 
12
- export interface PlatformMagic {
13
- name: PlatformName;
14
- isMac: boolean;
15
- isWindows: boolean;
16
- isLinux: boolean;
17
- isIos: boolean;
18
- isAndroid: boolean;
19
- isChromeos: boolean;
13
+ export type PlatformName = (typeof PLATFORM_NAMES)[number];
14
+
15
+ export type PlatformFlags = {
16
+ readonly isMac: boolean;
17
+ readonly isWindows: boolean;
18
+ readonly isLinux: boolean;
19
+ readonly isIos: boolean;
20
+ readonly isAndroid: boolean;
21
+ readonly isChromeos: boolean;
22
+ };
23
+
24
+ export type PlatformSnapshot = PlatformFlags & {
25
+ readonly name: PlatformName;
26
+ };
27
+
28
+ export interface PlatformMagic extends PlatformSnapshot {
29
+ is(platform: PlatformName): boolean;
20
30
  }
21
31
 
32
+ export function detectPlatformName(): PlatformName;
33
+ export function isIosDevice(): boolean;
34
+ export function isAndroidDevice(): boolean;
35
+ export function isChromeOsDevice(): boolean;
36
+ export function isWindowsDevice(): boolean;
37
+ export function isMacDevice(): boolean;
38
+ export function isLinuxDevice(): boolean;
39
+ export function platformFlags(name: PlatformName): PlatformFlags;
40
+ export function readPlatformState(): PlatformSnapshot;
41
+ export function createPlatformState(): PlatformMagic;
42
+
22
43
  declare global {
23
44
  namespace Alpine {
24
45
  interface Magics<T> {
package/dist/index.d.ts CHANGED
@@ -1,14 +1,20 @@
1
1
  import AlpineType from 'alpinejs';
2
2
 
3
- type PlatformName = "macos" | "windows" | "linux" | "ios" | "android" | "chromeos" | "unknown";
4
- interface PlatformMagic {
5
- name: PlatformName;
6
- isMac: boolean;
7
- isWindows: boolean;
8
- isLinux: boolean;
9
- isIos: boolean;
10
- isAndroid: boolean;
11
- isChromeos: boolean;
3
+ declare const PLATFORM_NAMES: readonly ["macos", "windows", "linux", "ios", "android", "chromeos", "unknown"];
4
+ type PlatformName = (typeof PLATFORM_NAMES)[number];
5
+ type PlatformFlags = {
6
+ readonly isMac: boolean;
7
+ readonly isWindows: boolean;
8
+ readonly isLinux: boolean;
9
+ readonly isIos: boolean;
10
+ readonly isAndroid: boolean;
11
+ readonly isChromeos: boolean;
12
+ };
13
+ type PlatformSnapshot = PlatformFlags & {
14
+ readonly name: PlatformName;
15
+ };
16
+ interface PlatformMagic extends PlatformSnapshot {
17
+ is(platform: PlatformName): boolean;
12
18
  }
13
19
  /** Detects iOS/iPadOS (including iPadOS desktop UA). */
14
20
  declare function isIosDevice(): boolean;
@@ -24,8 +30,11 @@ declare function isMacDevice(): boolean;
24
30
  declare function isLinuxDevice(): boolean;
25
31
  /** Resolves the primary platform name for the current environment. */
26
32
  declare function detectPlatformName(): PlatformName;
27
- /** Reads the current platform state from the environment. */
28
- declare function readPlatformState(): PlatformMagic;
33
+ declare function platformFlags(name: PlatformName): PlatformFlags;
34
+ /** Reads a snapshot of the current platform state from the environment. */
35
+ declare function readPlatformState(): PlatformSnapshot;
36
+ /** Builds live platform magic state with getter-based flags. */
37
+ declare function createPlatformState(): PlatformMagic;
29
38
  /** Alpine.js platform plugin. Registers reactive magic `$platform`. */
30
39
  declare function platformPlugin(Alpine: AlpineType.Alpine): void;
31
40
  declare global {
@@ -36,4 +45,4 @@ declare global {
36
45
  }
37
46
  }
38
47
 
39
- export { type PlatformMagic, type PlatformName, platformPlugin as default, detectPlatformName, isAndroidDevice, isChromeOsDevice, isIosDevice, isLinuxDevice, isMacDevice, isWindowsDevice, readPlatformState };
48
+ export { PLATFORM_NAMES, type PlatformFlags, type PlatformMagic, type PlatformName, type PlatformSnapshot, createPlatformState, platformPlugin as default, detectPlatformName, isAndroidDevice, isChromeOsDevice, isIosDevice, isLinuxDevice, isMacDevice, isWindowsDevice, platformFlags, readPlatformState };
package/dist/index.js CHANGED
@@ -1,4 +1,13 @@
1
1
  // src/index.ts
2
+ var PLATFORM_NAMES = [
3
+ "macos",
4
+ "windows",
5
+ "linux",
6
+ "ios",
7
+ "android",
8
+ "chromeos",
9
+ "unknown"
10
+ ];
2
11
  function getNavigator() {
3
12
  return typeof navigator !== "undefined" ? navigator : void 0;
4
13
  }
@@ -91,10 +100,8 @@ function detectPlatformName() {
91
100
  }
92
101
  return "unknown";
93
102
  }
94
- function readPlatformState() {
95
- const name = detectPlatformName();
103
+ function platformFlags(name) {
96
104
  return {
97
- name,
98
105
  isMac: name === "macos",
99
106
  isWindows: name === "windows",
100
107
  isLinux: name === "linux",
@@ -103,11 +110,48 @@ function readPlatformState() {
103
110
  isChromeos: name === "chromeos"
104
111
  };
105
112
  }
113
+ function readPlatformState() {
114
+ const name = detectPlatformName();
115
+ return {
116
+ name,
117
+ ...platformFlags(name)
118
+ };
119
+ }
120
+ function createPlatformState() {
121
+ return {
122
+ get name() {
123
+ return detectPlatformName();
124
+ },
125
+ get isMac() {
126
+ return platformFlags(detectPlatformName()).isMac;
127
+ },
128
+ get isWindows() {
129
+ return platformFlags(detectPlatformName()).isWindows;
130
+ },
131
+ get isLinux() {
132
+ return platformFlags(detectPlatformName()).isLinux;
133
+ },
134
+ get isIos() {
135
+ return platformFlags(detectPlatformName()).isIos;
136
+ },
137
+ get isAndroid() {
138
+ return platformFlags(detectPlatformName()).isAndroid;
139
+ },
140
+ get isChromeos() {
141
+ return platformFlags(detectPlatformName()).isChromeos;
142
+ },
143
+ is(platform) {
144
+ return detectPlatformName() === platform;
145
+ }
146
+ };
147
+ }
106
148
  function platformPlugin(Alpine) {
107
- const state = Alpine.reactive(readPlatformState());
149
+ const state = Alpine.reactive(createPlatformState());
108
150
  Alpine.magic("platform", () => state);
109
151
  }
110
152
  export {
153
+ PLATFORM_NAMES,
154
+ createPlatformState,
111
155
  platformPlugin as default,
112
156
  detectPlatformName,
113
157
  isAndroidDevice,
@@ -116,6 +160,7 @@ export {
116
160
  isLinuxDevice,
117
161
  isMacDevice,
118
162
  isWindowsDevice,
163
+ platformFlags,
119
164
  readPlatformState
120
165
  };
121
166
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type AlpineType from \"alpinejs\";\n\nexport type PlatformName =\n | \"macos\"\n | \"windows\"\n | \"linux\"\n | \"ios\"\n | \"android\"\n | \"chromeos\"\n | \"unknown\";\n\nexport interface PlatformMagic {\n name: PlatformName;\n isMac: boolean;\n isWindows: boolean;\n isLinux: boolean;\n isIos: boolean;\n isAndroid: boolean;\n isChromeos: boolean;\n}\n\ntype NavigatorWithUserAgentData = Navigator & {\n userAgentData?: {\n platform?: string;\n };\n};\n\nfunction getNavigator(): Navigator | undefined {\n return typeof navigator !== \"undefined\" ? navigator : undefined;\n}\n\nfunction getClientHintPlatform(): string | undefined {\n const nav = getNavigator() as NavigatorWithUserAgentData | undefined;\n return nav?.userAgentData?.platform?.toLowerCase();\n}\n\n/** Detects iOS/iPadOS (including iPadOS desktop UA). */\nexport function isIosDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const ua = nav.userAgent;\n if (/iPad|iPhone|iPod/i.test(ua)) {\n return true;\n }\n\n return nav.platform === \"MacIntel\" && nav.maxTouchPoints > 1;\n}\n\n/** Detects Android phones and tablets. */\nexport function isAndroidDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n return /Android/i.test(nav.userAgent);\n}\n\n/** Detects ChromeOS devices. */\nexport function isChromeOsDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n return /CrOS/i.test(nav.userAgent);\n}\n\n/** Detects desktop Windows. */\nexport function isWindowsDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const hint = getClientHintPlatform();\n if (hint === \"windows\") {\n return true;\n }\n\n return /Win/i.test(nav.platform) || /Windows/i.test(nav.userAgent);\n}\n\n/** Detects desktop macOS (excludes iOS/iPadOS). */\nexport function isMacDevice(): boolean {\n if (isIosDevice()) {\n return false;\n }\n\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const hint = getClientHintPlatform();\n if (hint === \"macos\") {\n return true;\n }\n\n return /Mac/i.test(nav.platform) || /Macintosh/i.test(nav.userAgent);\n}\n\n/** Detects desktop Linux (excludes Android and ChromeOS). */\nexport function isLinuxDevice(): boolean {\n if (isAndroidDevice() || isChromeOsDevice()) {\n return false;\n }\n\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const hint = getClientHintPlatform();\n if (hint === \"linux\") {\n return true;\n }\n\n return /Linux/i.test(nav.platform) || /X11/i.test(nav.userAgent);\n}\n\n/** Resolves the primary platform name for the current environment. */\nexport function detectPlatformName(): PlatformName {\n if (isIosDevice()) {\n return \"ios\";\n }\n if (isAndroidDevice()) {\n return \"android\";\n }\n if (isChromeOsDevice()) {\n return \"chromeos\";\n }\n if (isWindowsDevice()) {\n return \"windows\";\n }\n if (isMacDevice()) {\n return \"macos\";\n }\n if (isLinuxDevice()) {\n return \"linux\";\n }\n\n return \"unknown\";\n}\n\n/** Reads the current platform state from the environment. */\nexport function readPlatformState(): PlatformMagic {\n const name = detectPlatformName();\n\n return {\n name,\n isMac: name === \"macos\",\n isWindows: name === \"windows\",\n isLinux: name === \"linux\",\n isIos: name === \"ios\",\n isAndroid: name === \"android\",\n isChromeos: name === \"chromeos\",\n };\n}\n\n/** Alpine.js platform plugin. Registers reactive magic `$platform`. */\nexport default function platformPlugin(Alpine: AlpineType.Alpine): void {\n const state = Alpine.reactive(readPlatformState());\n\n Alpine.magic(\"platform\", () => state);\n}\n\ndeclare global {\n namespace Alpine {\n interface Magics<T> {\n $platform: PlatformMagic;\n }\n }\n}\n"],"mappings":";AA2BA,SAAS,eAAsC;AAC7C,SAAO,OAAO,cAAc,cAAc,YAAY;AACxD;AAEA,SAAS,wBAA4C;AACnD,QAAM,MAAM,aAAa;AACzB,SAAO,KAAK,eAAe,UAAU,YAAY;AACnD;AAGO,SAAS,cAAuB;AACrC,QAAM,MAAM,aAAa;AACzB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,QAAM,KAAK,IAAI;AACf,MAAI,oBAAoB,KAAK,EAAE,GAAG;AAChC,WAAO;AAAA,EACT;AAEA,SAAO,IAAI,aAAa,cAAc,IAAI,iBAAiB;AAC7D;AAGO,SAAS,kBAA2B;AACzC,QAAM,MAAM,aAAa;AACzB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,SAAO,WAAW,KAAK,IAAI,SAAS;AACtC;AAGO,SAAS,mBAA4B;AAC1C,QAAM,MAAM,aAAa;AACzB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,SAAO,QAAQ,KAAK,IAAI,SAAS;AACnC;AAGO,SAAS,kBAA2B;AACzC,QAAM,MAAM,aAAa;AACzB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,sBAAsB;AACnC,MAAI,SAAS,WAAW;AACtB,WAAO;AAAA,EACT;AAEA,SAAO,OAAO,KAAK,IAAI,QAAQ,KAAK,WAAW,KAAK,IAAI,SAAS;AACnE;AAGO,SAAS,cAAuB;AACrC,MAAI,YAAY,GAAG;AACjB,WAAO;AAAA,EACT;AAEA,QAAM,MAAM,aAAa;AACzB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,sBAAsB;AACnC,MAAI,SAAS,SAAS;AACpB,WAAO;AAAA,EACT;AAEA,SAAO,OAAO,KAAK,IAAI,QAAQ,KAAK,aAAa,KAAK,IAAI,SAAS;AACrE;AAGO,SAAS,gBAAyB;AACvC,MAAI,gBAAgB,KAAK,iBAAiB,GAAG;AAC3C,WAAO;AAAA,EACT;AAEA,QAAM,MAAM,aAAa;AACzB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,sBAAsB;AACnC,MAAI,SAAS,SAAS;AACpB,WAAO;AAAA,EACT;AAEA,SAAO,SAAS,KAAK,IAAI,QAAQ,KAAK,OAAO,KAAK,IAAI,SAAS;AACjE;AAGO,SAAS,qBAAmC;AACjD,MAAI,YAAY,GAAG;AACjB,WAAO;AAAA,EACT;AACA,MAAI,gBAAgB,GAAG;AACrB,WAAO;AAAA,EACT;AACA,MAAI,iBAAiB,GAAG;AACtB,WAAO;AAAA,EACT;AACA,MAAI,gBAAgB,GAAG;AACrB,WAAO;AAAA,EACT;AACA,MAAI,YAAY,GAAG;AACjB,WAAO;AAAA,EACT;AACA,MAAI,cAAc,GAAG;AACnB,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAGO,SAAS,oBAAmC;AACjD,QAAM,OAAO,mBAAmB;AAEhC,SAAO;AAAA,IACL;AAAA,IACA,OAAO,SAAS;AAAA,IAChB,WAAW,SAAS;AAAA,IACpB,SAAS,SAAS;AAAA,IAClB,OAAO,SAAS;AAAA,IAChB,WAAW,SAAS;AAAA,IACpB,YAAY,SAAS;AAAA,EACvB;AACF;AAGe,SAAR,eAAgC,QAAiC;AACtE,QAAM,QAAQ,OAAO,SAAS,kBAAkB,CAAC;AAEjD,SAAO,MAAM,YAAY,MAAM,KAAK;AACtC;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type AlpineType from \"alpinejs\";\n\nexport const PLATFORM_NAMES = [\n \"macos\",\n \"windows\",\n \"linux\",\n \"ios\",\n \"android\",\n \"chromeos\",\n \"unknown\",\n] as const;\n\nexport type PlatformName = (typeof PLATFORM_NAMES)[number];\n\nexport type PlatformFlags = {\n readonly isMac: boolean;\n readonly isWindows: boolean;\n readonly isLinux: boolean;\n readonly isIos: boolean;\n readonly isAndroid: boolean;\n readonly isChromeos: boolean;\n};\n\nexport type PlatformSnapshot = PlatformFlags & {\n readonly name: PlatformName;\n};\n\nexport interface PlatformMagic extends PlatformSnapshot {\n is(platform: PlatformName): boolean;\n}\n\ntype NavigatorWithUserAgentData = Navigator & {\n userAgentData?: {\n platform?: string;\n };\n};\n\nfunction getNavigator(): Navigator | undefined {\n return typeof navigator !== \"undefined\" ? navigator : undefined;\n}\n\nfunction getClientHintPlatform(): string | undefined {\n const nav = getNavigator() as NavigatorWithUserAgentData | undefined;\n return nav?.userAgentData?.platform?.toLowerCase();\n}\n\n/** Detects iOS/iPadOS (including iPadOS desktop UA). */\nexport function isIosDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const ua = nav.userAgent;\n if (/iPad|iPhone|iPod/i.test(ua)) {\n return true;\n }\n\n return nav.platform === \"MacIntel\" && nav.maxTouchPoints > 1;\n}\n\n/** Detects Android phones and tablets. */\nexport function isAndroidDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n return /Android/i.test(nav.userAgent);\n}\n\n/** Detects ChromeOS devices. */\nexport function isChromeOsDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n return /CrOS/i.test(nav.userAgent);\n}\n\n/** Detects desktop Windows. */\nexport function isWindowsDevice(): boolean {\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const hint = getClientHintPlatform();\n if (hint === \"windows\") {\n return true;\n }\n\n return /Win/i.test(nav.platform) || /Windows/i.test(nav.userAgent);\n}\n\n/** Detects desktop macOS (excludes iOS/iPadOS). */\nexport function isMacDevice(): boolean {\n if (isIosDevice()) {\n return false;\n }\n\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const hint = getClientHintPlatform();\n if (hint === \"macos\") {\n return true;\n }\n\n return /Mac/i.test(nav.platform) || /Macintosh/i.test(nav.userAgent);\n}\n\n/** Detects desktop Linux (excludes Android and ChromeOS). */\nexport function isLinuxDevice(): boolean {\n if (isAndroidDevice() || isChromeOsDevice()) {\n return false;\n }\n\n const nav = getNavigator();\n if (!nav) {\n return false;\n }\n\n const hint = getClientHintPlatform();\n if (hint === \"linux\") {\n return true;\n }\n\n return /Linux/i.test(nav.platform) || /X11/i.test(nav.userAgent);\n}\n\n/** Resolves the primary platform name for the current environment. */\nexport function detectPlatformName(): PlatformName {\n if (isIosDevice()) {\n return \"ios\";\n }\n if (isAndroidDevice()) {\n return \"android\";\n }\n if (isChromeOsDevice()) {\n return \"chromeos\";\n }\n if (isWindowsDevice()) {\n return \"windows\";\n }\n if (isMacDevice()) {\n return \"macos\";\n }\n if (isLinuxDevice()) {\n return \"linux\";\n }\n\n return \"unknown\";\n}\n\nexport function platformFlags(name: PlatformName): PlatformFlags {\n return {\n isMac: name === \"macos\",\n isWindows: name === \"windows\",\n isLinux: name === \"linux\",\n isIos: name === \"ios\",\n isAndroid: name === \"android\",\n isChromeos: name === \"chromeos\",\n };\n}\n\n/** Reads a snapshot of the current platform state from the environment. */\nexport function readPlatformState(): PlatformSnapshot {\n const name = detectPlatformName();\n\n return {\n name,\n ...platformFlags(name),\n };\n}\n\n/** Builds live platform magic state with getter-based flags. */\nexport function createPlatformState(): PlatformMagic {\n return {\n get name() {\n return detectPlatformName();\n },\n get isMac() {\n return platformFlags(detectPlatformName()).isMac;\n },\n get isWindows() {\n return platformFlags(detectPlatformName()).isWindows;\n },\n get isLinux() {\n return platformFlags(detectPlatformName()).isLinux;\n },\n get isIos() {\n return platformFlags(detectPlatformName()).isIos;\n },\n get isAndroid() {\n return platformFlags(detectPlatformName()).isAndroid;\n },\n get isChromeos() {\n return platformFlags(detectPlatformName()).isChromeos;\n },\n is(platform: PlatformName) {\n return detectPlatformName() === platform;\n },\n };\n}\n\n/** Alpine.js platform plugin. Registers reactive magic `$platform`. */\nexport default function platformPlugin(Alpine: AlpineType.Alpine): void {\n const state = Alpine.reactive(createPlatformState());\n\n Alpine.magic(\"platform\", () => state as PlatformMagic);\n}\n\ndeclare global {\n namespace Alpine {\n interface Magics<T> {\n $platform: PlatformMagic;\n }\n }\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ailuracode/alpine-platform",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "Alpine.js client platform and operating system detection magic",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -56,6 +56,6 @@
56
56
  ],
57
57
  "scripts": {
58
58
  "build": "tsup src/index.ts --format esm --dts --clean --sourcemap --out-dir dist && cp src/global.d.ts dist/global.d.ts",
59
- "test": "vitest run --config ../../vitest.config.js test"
59
+ "test": "vitest run --config ../../vitest.config.ts test"
60
60
  }
61
61
  }