@vizor-vr/shared 0.1.0

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.
Files changed (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +21 -0
  3. package/dist/__tests__/defaults.test.d.ts +2 -0
  4. package/dist/__tests__/defaults.test.d.ts.map +1 -0
  5. package/dist/__tests__/defaults.test.js +78 -0
  6. package/dist/__tests__/defaults.test.js.map +1 -0
  7. package/dist/__tests__/events.test.d.ts +2 -0
  8. package/dist/__tests__/events.test.d.ts.map +1 -0
  9. package/dist/__tests__/events.test.js +56 -0
  10. package/dist/__tests__/events.test.js.map +1 -0
  11. package/dist/__tests__/formats.test.d.ts +2 -0
  12. package/dist/__tests__/formats.test.d.ts.map +1 -0
  13. package/dist/__tests__/formats.test.js +75 -0
  14. package/dist/__tests__/formats.test.js.map +1 -0
  15. package/dist/__tests__/keybindings.test.d.ts +2 -0
  16. package/dist/__tests__/keybindings.test.d.ts.map +1 -0
  17. package/dist/__tests__/keybindings.test.js +59 -0
  18. package/dist/__tests__/keybindings.test.js.map +1 -0
  19. package/dist/__tests__/license.test.d.ts +2 -0
  20. package/dist/__tests__/license.test.d.ts.map +1 -0
  21. package/dist/__tests__/license.test.js +57 -0
  22. package/dist/__tests__/license.test.js.map +1 -0
  23. package/dist/__tests__/math.test.d.ts +2 -0
  24. package/dist/__tests__/math.test.d.ts.map +1 -0
  25. package/dist/__tests__/math.test.js +131 -0
  26. package/dist/__tests__/math.test.js.map +1 -0
  27. package/dist/__tests__/media.test.d.ts +2 -0
  28. package/dist/__tests__/media.test.d.ts.map +1 -0
  29. package/dist/__tests__/media.test.js +32 -0
  30. package/dist/__tests__/media.test.js.map +1 -0
  31. package/dist/constants/defaults.d.ts +31 -0
  32. package/dist/constants/defaults.d.ts.map +1 -0
  33. package/dist/constants/defaults.js +55 -0
  34. package/dist/constants/defaults.js.map +1 -0
  35. package/dist/constants/events.d.ts +5 -0
  36. package/dist/constants/events.d.ts.map +1 -0
  37. package/dist/constants/events.js +45 -0
  38. package/dist/constants/events.js.map +1 -0
  39. package/dist/constants/formats.d.ts +9 -0
  40. package/dist/constants/formats.d.ts.map +1 -0
  41. package/dist/constants/formats.js +206 -0
  42. package/dist/constants/formats.js.map +1 -0
  43. package/dist/constants/index.d.ts +7 -0
  44. package/dist/constants/index.d.ts.map +1 -0
  45. package/dist/constants/index.js +7 -0
  46. package/dist/constants/index.js.map +1 -0
  47. package/dist/constants/keybindings.d.ts +10 -0
  48. package/dist/constants/keybindings.d.ts.map +1 -0
  49. package/dist/constants/keybindings.js +26 -0
  50. package/dist/constants/keybindings.js.map +1 -0
  51. package/dist/constants/license.d.ts +8 -0
  52. package/dist/constants/license.d.ts.map +1 -0
  53. package/dist/constants/license.js +111 -0
  54. package/dist/constants/license.js.map +1 -0
  55. package/dist/constants/media.d.ts +23 -0
  56. package/dist/constants/media.d.ts.map +1 -0
  57. package/dist/constants/media.js +20 -0
  58. package/dist/constants/media.js.map +1 -0
  59. package/dist/index.d.ts +5 -0
  60. package/dist/index.d.ts.map +1 -0
  61. package/dist/index.js +9 -0
  62. package/dist/index.js.map +1 -0
  63. package/dist/types/analytics.d.ts +30 -0
  64. package/dist/types/analytics.d.ts.map +1 -0
  65. package/dist/types/analytics.js +2 -0
  66. package/dist/types/analytics.js.map +1 -0
  67. package/dist/types/annotations.d.ts +22 -0
  68. package/dist/types/annotations.d.ts.map +1 -0
  69. package/dist/types/annotations.js +2 -0
  70. package/dist/types/annotations.js.map +1 -0
  71. package/dist/types/collaborative.d.ts +77 -0
  72. package/dist/types/collaborative.d.ts.map +1 -0
  73. package/dist/types/collaborative.js +2 -0
  74. package/dist/types/collaborative.js.map +1 -0
  75. package/dist/types/events.d.ts +60 -0
  76. package/dist/types/events.d.ts.map +1 -0
  77. package/dist/types/events.js +2 -0
  78. package/dist/types/events.js.map +1 -0
  79. package/dist/types/formats.d.ts +41 -0
  80. package/dist/types/formats.d.ts.map +1 -0
  81. package/dist/types/formats.js +33 -0
  82. package/dist/types/formats.js.map +1 -0
  83. package/dist/types/index.d.ts +10 -0
  84. package/dist/types/index.d.ts.map +1 -0
  85. package/dist/types/index.js +2 -0
  86. package/dist/types/index.js.map +1 -0
  87. package/dist/types/license.d.ts +39 -0
  88. package/dist/types/license.d.ts.map +1 -0
  89. package/dist/types/license.js +2 -0
  90. package/dist/types/license.js.map +1 -0
  91. package/dist/types/player.d.ts +107 -0
  92. package/dist/types/player.d.ts.map +1 -0
  93. package/dist/types/player.js +2 -0
  94. package/dist/types/player.js.map +1 -0
  95. package/dist/types/tour.d.ts +21 -0
  96. package/dist/types/tour.d.ts.map +1 -0
  97. package/dist/types/tour.js +2 -0
  98. package/dist/types/tour.js.map +1 -0
  99. package/dist/utils/index.d.ts +2 -0
  100. package/dist/utils/index.d.ts.map +1 -0
  101. package/dist/utils/index.js +2 -0
  102. package/dist/utils/index.js.map +1 -0
  103. package/dist/utils/math.d.ts +28 -0
  104. package/dist/utils/math.d.ts.map +1 -0
  105. package/dist/utils/math.js +46 -0
  106. package/dist/utils/math.js.map +1 -0
  107. package/package.json +42 -0
@@ -0,0 +1,28 @@
1
+ /** Convert degrees to radians */
2
+ export declare function degToRad(degrees: number): number;
3
+ /** Convert radians to degrees */
4
+ export declare function radToDeg(radians: number): number;
5
+ /** Clamp a value between min and max */
6
+ export declare function clamp(value: number, min: number, max: number): number;
7
+ /** Linear interpolation */
8
+ export declare function lerp(a: number, b: number, t: number): number;
9
+ /**
10
+ * Convert lat/lon (degrees) to spherical coordinates (radians).
11
+ * lat: -90 (bottom) to 90 (top)
12
+ * lon: -180 to 180
13
+ * Returns { phi, theta } where:
14
+ * phi = polar angle from Y axis (0 = top, PI = bottom)
15
+ * theta = azimuthal angle from Z axis
16
+ */
17
+ export declare function latLonToSpherical(lat: number, lon: number): {
18
+ phi: number;
19
+ theta: number;
20
+ };
21
+ /** Convert spherical (phi, theta in radians) back to lat/lon (degrees) */
22
+ export declare function sphericalToLatLon(phi: number, theta: number): {
23
+ lat: number;
24
+ lon: number;
25
+ };
26
+ /** Normalize angle to -180 to 180 range */
27
+ export declare function normalizeAngle(angle: number): number;
28
+ //# sourceMappingURL=math.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../src/utils/math.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,iCAAiC;AACjC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wCAAwC;AACxC,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAErE;AAED,2BAA2B;AAC3B,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAK1F;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAK1F;AAED,2CAA2C;AAC3C,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD"}
@@ -0,0 +1,46 @@
1
+ /** Convert degrees to radians */
2
+ export function degToRad(degrees) {
3
+ return (degrees * Math.PI) / 180;
4
+ }
5
+ /** Convert radians to degrees */
6
+ export function radToDeg(radians) {
7
+ return (radians * 180) / Math.PI;
8
+ }
9
+ /** Clamp a value between min and max */
10
+ export function clamp(value, min, max) {
11
+ return Math.min(Math.max(value, min), max);
12
+ }
13
+ /** Linear interpolation */
14
+ export function lerp(a, b, t) {
15
+ return a + (b - a) * t;
16
+ }
17
+ /**
18
+ * Convert lat/lon (degrees) to spherical coordinates (radians).
19
+ * lat: -90 (bottom) to 90 (top)
20
+ * lon: -180 to 180
21
+ * Returns { phi, theta } where:
22
+ * phi = polar angle from Y axis (0 = top, PI = bottom)
23
+ * theta = azimuthal angle from Z axis
24
+ */
25
+ export function latLonToSpherical(lat, lon) {
26
+ return {
27
+ phi: degToRad(90 - lat),
28
+ theta: degToRad(lon),
29
+ };
30
+ }
31
+ /** Convert spherical (phi, theta in radians) back to lat/lon (degrees) */
32
+ export function sphericalToLatLon(phi, theta) {
33
+ return {
34
+ lat: 90 - radToDeg(phi),
35
+ lon: radToDeg(theta),
36
+ };
37
+ }
38
+ /** Normalize angle to -180 to 180 range */
39
+ export function normalizeAngle(angle) {
40
+ while (angle > 180)
41
+ angle -= 360;
42
+ while (angle < -180)
43
+ angle += 360;
44
+ return angle;
45
+ }
46
+ //# sourceMappingURL=math.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.js","sourceRoot":"","sources":["../../src/utils/math.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,MAAM,UAAU,QAAQ,CAAC,OAAe;IACtC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;AACnC,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,QAAQ,CAAC,OAAe;IACtC,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;AACnC,CAAC;AAED,wCAAwC;AACxC,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAClD,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,GAAW;IACxD,OAAO;QACL,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,CAAC;QACvB,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,KAAa;IAC1D,OAAO;QACL,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC;QACvB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK,GAAG,GAAG;QAAE,KAAK,IAAI,GAAG,CAAC;IACjC,OAAO,KAAK,GAAG,CAAC,GAAG;QAAE,KAAK,IAAI,GAAG,CAAC;IAClC,OAAO,KAAK,CAAC;AACf,CAAC"}
package/package.json ADDED
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "@vizor-vr/shared",
3
+ "version": "0.1.0",
4
+ "description": "Shared types, constants, and utilities for Vizor VR Player",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "main": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js"
13
+ },
14
+ "./types": {
15
+ "types": "./dist/types/index.d.ts",
16
+ "import": "./dist/types/index.js"
17
+ },
18
+ "./constants": {
19
+ "types": "./dist/constants/index.d.ts",
20
+ "import": "./dist/constants/index.js"
21
+ }
22
+ },
23
+ "files": [
24
+ "dist"
25
+ ],
26
+ "publishConfig": {
27
+ "access": "public"
28
+ },
29
+ "devDependencies": {
30
+ "@vitest/coverage-v8": "^2.1.0",
31
+ "rimraf": "^6.0.0",
32
+ "typescript": "^5.7.0",
33
+ "vitest": "^2.1.0",
34
+ "@vizor-vr/ts-config": "0.0.0"
35
+ },
36
+ "scripts": {
37
+ "build": "tsc",
38
+ "test": "vitest run",
39
+ "typecheck": "tsc --noEmit",
40
+ "clean": "rimraf dist"
41
+ }
42
+ }