@fern-api/ui-core-utils 0.126.2-7df03394c → 0.126.2-96859d2ae

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/dist/bytes.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export declare function measureBytes(str: string): number;
1
2
  /**
2
3
  * Chunks a string into an array of strings, each of the specified byte size.
3
4
  * @param str - The string to chunk.
@@ -1 +1 @@
1
- {"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../src/bytes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAapE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKrE"}
1
+ {"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../src/bytes.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAapE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKrE"}
package/dist/bytes.js CHANGED
@@ -1,3 +1,6 @@
1
+ export function measureBytes(str) {
2
+ return new TextEncoder().encode(str).length;
3
+ }
1
4
  /**
2
5
  * Chunks a string into an array of strings, each of the specified byte size.
3
6
  * @param str - The string to chunk.
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ export { visitObject, type ObjectPropertiesVisitor } from "./ObjectPropertiesVis
2
2
  export { addPrefixToString } from "./addPrefixToString";
3
3
  export { assertNever, assertNeverNoThrow } from "./assertNever";
4
4
  export { assertVoidNoThrow } from "./assertVoidNoThrow";
5
- export { chunkToBytes, truncateToBytes } from "./bytes";
5
+ export { chunkToBytes, measureBytes, truncateToBytes } from "./bytes";
6
6
  export { combineURLs } from "./combineURLs";
7
7
  export { delay } from "./delay/delay";
8
8
  export { withMinimumTime } from "./delay/withMinimumTime";
@@ -14,7 +14,7 @@ export { entries, type Entries } from "./objects/entries";
14
14
  export { isPlainObject } from "./objects/isPlainObject";
15
15
  export { keys } from "./objects/keys";
16
16
  export { values, type Values } from "./objects/values";
17
- export { PLATFORM, type Platform } from "./platform";
17
+ export { getDevice, getPlatform, type Device, type Platform } from "./platform";
18
18
  export { titleCase } from "./titleCase";
19
19
  export type { Digit, Letter, LowercaseLetter, UppercaseLetter } from "./types";
20
20
  export { unknownToString } from "./unknownToString";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@ export { visitObject } from "./ObjectPropertiesVisitor";
2
2
  export { addPrefixToString } from "./addPrefixToString";
3
3
  export { assertNever, assertNeverNoThrow } from "./assertNever";
4
4
  export { assertVoidNoThrow } from "./assertVoidNoThrow";
5
- export { chunkToBytes, truncateToBytes } from "./bytes";
5
+ export { chunkToBytes, measureBytes, truncateToBytes } from "./bytes";
6
6
  export { combineURLs } from "./combineURLs";
7
7
  export { delay } from "./delay/delay";
8
8
  export { withMinimumTime } from "./delay/withMinimumTime";
@@ -14,7 +14,7 @@ export { entries } from "./objects/entries";
14
14
  export { isPlainObject } from "./objects/isPlainObject";
15
15
  export { keys } from "./objects/keys";
16
16
  export { values } from "./objects/values";
17
- export { PLATFORM } from "./platform";
17
+ export { getDevice, getPlatform } from "./platform";
18
18
  export { titleCase } from "./titleCase";
19
19
  export { unknownToString } from "./unknownToString";
20
20
  export { visitDiscriminatedUnion } from "./visitDiscriminatedUnion";
@@ -1,3 +1,6 @@
1
- export type Platform = "mac" | "windows" | "other";
2
- export declare const PLATFORM: Platform;
1
+ type Platform = "mac" | "windows" | "other";
2
+ type Device = "desktop" | "mobile" | "tablet";
3
+ declare const getPlatform: () => Platform;
4
+ declare const getDevice: () => Device;
5
+ export { getDevice, getPlatform, type Device, type Platform };
3
6
  //# sourceMappingURL=platform.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;AAEnD,eAAO,MAAM,QAAQ,UAWjB,CAAC"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAIA,KAAK,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;AAC5C,KAAK,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9C,QAAA,MAAM,WAAW,QAAO,QAWvB,CAAC;AAEF,QAAA,MAAM,SAAS,QAAO,MAQrB,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,CAAC"}
package/dist/platform.js CHANGED
@@ -1,14 +1,26 @@
1
1
  import { UAParser } from "ua-parser-js";
2
2
  const uaParser = new UAParser();
3
- export const PLATFORM = (function getPlatform() {
3
+ const getPlatform = () => {
4
4
  const { name } = uaParser.getOS();
5
5
  if (typeof name === "string") {
6
- if (name.startsWith("Mac OS")) {
6
+ if (name.startsWith("Mac") || name.startsWith("iOS")) {
7
+ // NOTE: iOS shares the same key bindings as Mac, i.e. the Magic Keyboard on iPad
7
8
  return "mac";
8
9
  }
9
- if (name.startsWith("Windows")) {
10
+ else if (name.startsWith("Windows")) {
10
11
  return "windows";
11
12
  }
12
13
  }
13
14
  return "other";
14
- })();
15
+ };
16
+ const getDevice = () => {
17
+ const { type } = uaParser.getDevice();
18
+ if (type === "mobile") {
19
+ return "mobile";
20
+ }
21
+ else if (type === "tablet") {
22
+ return "tablet";
23
+ }
24
+ return "desktop";
25
+ };
26
+ export { getDevice, getPlatform };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fern-api/ui-core-utils",
3
- "version": "0.126.2-7df03394c",
3
+ "version": "0.126.2-96859d2ae",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/fern-api/fern-platform.git",