native-fn 1.0.70 → 1.0.72

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 (195) hide show
  1. package/dist/native.cjs +2 -507
  2. package/dist/native.min.cjs +1 -1
  3. package/dist/native.min.mjs +1 -1
  4. package/dist/native.mjs +2 -507
  5. package/dist/native.umd.js +2 -507
  6. package/dist/native.umd.min.js +1 -1
  7. package/dist/plugin/app/index.cjs +434 -429
  8. package/dist/plugin/app/index.d.ts +8 -33
  9. package/dist/plugin/app/index.min.cjs +1 -1
  10. package/dist/plugin/app/index.min.mjs +1 -1
  11. package/dist/plugin/app/index.mjs +434 -429
  12. package/dist/plugin/app/index.umd.js +434 -429
  13. package/dist/plugin/app/index.umd.min.js +1 -1
  14. package/dist/plugin/app/src/plugin/app/cores/index.d.ts +0 -4
  15. package/dist/plugin/app/src/plugin/app/types/app.d.ts +1 -1
  16. package/dist/plugin/app/src/plugin/camera/cores/index.d.ts +2 -2
  17. package/dist/plugin/app/src/plugin/clipboard/cores/index.d.ts +2 -2
  18. package/dist/plugin/app/src/plugin/fullscreen/cores/index.d.ts +2 -2
  19. package/dist/plugin/app/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  20. package/dist/plugin/app/src/plugin/platform/constants/index.d.ts +42 -0
  21. package/dist/plugin/app/src/plugin/platform/cores/index.d.ts +28 -0
  22. package/dist/plugin/app/src/plugin/platform/index.d.ts +2 -2
  23. package/dist/plugin/app/src/plugin/platform/types/index.d.ts +5 -1
  24. package/dist/plugin/app/src/plugin/platform/types/platform.d.ts +5 -2
  25. package/dist/plugin/app/src/plugin/theme/constants/index.d.ts +0 -12
  26. package/dist/plugin/app/src/plugin/theme/cores/index.d.ts +2 -2
  27. package/dist/plugin/app/src/plugin/theme/index.d.ts +1 -13
  28. package/dist/plugin/app/src/plugin/theme/types/index.d.ts +0 -12
  29. package/dist/plugin/app/src/plugin/theme/types/theme.d.ts +2 -22
  30. package/dist/plugin/appearance/index.cjs +30 -16
  31. package/dist/plugin/appearance/index.min.cjs +1 -1
  32. package/dist/plugin/appearance/index.min.mjs +1 -1
  33. package/dist/plugin/appearance/index.mjs +30 -16
  34. package/dist/plugin/appearance/index.umd.js +30 -16
  35. package/dist/plugin/appearance/index.umd.min.js +1 -1
  36. package/dist/plugin/appearance/src/plugin/app/cores/index.d.ts +0 -4
  37. package/dist/plugin/appearance/src/plugin/app/types/app.d.ts +1 -1
  38. package/dist/plugin/appearance/src/plugin/camera/cores/index.d.ts +2 -2
  39. package/dist/plugin/appearance/src/plugin/clipboard/cores/index.d.ts +2 -2
  40. package/dist/plugin/appearance/src/plugin/fullscreen/cores/index.d.ts +2 -2
  41. package/dist/plugin/appearance/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  42. package/dist/plugin/appearance/src/plugin/platform/constants/index.d.ts +42 -0
  43. package/dist/plugin/appearance/src/plugin/platform/cores/index.d.ts +28 -0
  44. package/dist/plugin/appearance/src/plugin/platform/index.d.ts +11 -0
  45. package/dist/plugin/appearance/src/plugin/platform/types/index.d.ts +11 -0
  46. package/dist/plugin/appearance/src/plugin/platform/types/platform.d.ts +18 -0
  47. package/dist/plugin/appearance/src/plugin/theme/constants/index.d.ts +0 -12
  48. package/dist/plugin/appearance/src/plugin/theme/cores/index.d.ts +2 -2
  49. package/dist/plugin/appearance/src/plugin/theme/index.d.ts +1 -13
  50. package/dist/plugin/appearance/src/plugin/theme/types/index.d.ts +0 -12
  51. package/dist/plugin/appearance/src/plugin/theme/types/theme.d.ts +2 -22
  52. package/dist/plugin/camera/index.cjs +118 -109
  53. package/dist/plugin/camera/index.min.cjs +1 -1
  54. package/dist/plugin/camera/index.min.mjs +1 -1
  55. package/dist/plugin/camera/index.mjs +118 -109
  56. package/dist/plugin/camera/index.umd.js +118 -109
  57. package/dist/plugin/camera/index.umd.min.js +1 -1
  58. package/dist/plugin/camera/src/plugin/app/cores/index.d.ts +0 -4
  59. package/dist/plugin/camera/src/plugin/app/types/app.d.ts +1 -1
  60. package/dist/plugin/camera/src/plugin/camera/cores/index.d.ts +2 -2
  61. package/dist/plugin/camera/src/plugin/clipboard/cores/index.d.ts +2 -2
  62. package/dist/plugin/camera/src/plugin/fullscreen/cores/index.d.ts +2 -2
  63. package/dist/plugin/camera/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  64. package/dist/plugin/camera/src/plugin/platform/constants/index.d.ts +42 -0
  65. package/dist/plugin/camera/src/plugin/platform/cores/index.d.ts +28 -0
  66. package/dist/plugin/camera/src/plugin/platform/index.d.ts +2 -2
  67. package/dist/plugin/camera/src/plugin/platform/types/index.d.ts +5 -1
  68. package/dist/plugin/camera/src/plugin/platform/types/platform.d.ts +5 -2
  69. package/dist/plugin/camera/src/plugin/theme/constants/index.d.ts +0 -12
  70. package/dist/plugin/camera/src/plugin/theme/cores/index.d.ts +2 -2
  71. package/dist/plugin/camera/src/plugin/theme/index.d.ts +1 -13
  72. package/dist/plugin/camera/src/plugin/theme/types/index.d.ts +0 -12
  73. package/dist/plugin/camera/src/plugin/theme/types/theme.d.ts +2 -22
  74. package/dist/plugin/clipboard/index.cjs +226 -212
  75. package/dist/plugin/clipboard/index.min.cjs +1 -1
  76. package/dist/plugin/clipboard/index.min.mjs +1 -1
  77. package/dist/plugin/clipboard/index.mjs +226 -212
  78. package/dist/plugin/clipboard/index.umd.js +226 -212
  79. package/dist/plugin/clipboard/index.umd.min.js +1 -1
  80. package/dist/plugin/clipboard/src/plugin/app/cores/index.d.ts +0 -4
  81. package/dist/plugin/clipboard/src/plugin/app/types/app.d.ts +1 -1
  82. package/dist/plugin/clipboard/src/plugin/camera/cores/index.d.ts +2 -2
  83. package/dist/plugin/clipboard/src/plugin/clipboard/cores/index.d.ts +2 -2
  84. package/dist/plugin/clipboard/src/plugin/fullscreen/cores/index.d.ts +2 -2
  85. package/dist/plugin/clipboard/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  86. package/dist/plugin/clipboard/src/plugin/platform/constants/index.d.ts +42 -0
  87. package/dist/plugin/clipboard/src/plugin/platform/cores/index.d.ts +28 -0
  88. package/dist/plugin/clipboard/src/plugin/platform/index.d.ts +2 -2
  89. package/dist/plugin/clipboard/src/plugin/platform/types/index.d.ts +5 -1
  90. package/dist/plugin/clipboard/src/plugin/platform/types/platform.d.ts +5 -2
  91. package/dist/plugin/clipboard/src/plugin/theme/constants/index.d.ts +0 -12
  92. package/dist/plugin/clipboard/src/plugin/theme/cores/index.d.ts +2 -2
  93. package/dist/plugin/clipboard/src/plugin/theme/index.d.ts +1 -13
  94. package/dist/plugin/clipboard/src/plugin/theme/types/index.d.ts +0 -12
  95. package/dist/plugin/clipboard/src/plugin/theme/types/theme.d.ts +2 -22
  96. package/dist/plugin/fullscreen/index.cjs +34 -20
  97. package/dist/plugin/fullscreen/index.d.ts +4 -13
  98. package/dist/plugin/fullscreen/index.min.cjs +1 -1
  99. package/dist/plugin/fullscreen/index.min.mjs +1 -1
  100. package/dist/plugin/fullscreen/index.mjs +34 -20
  101. package/dist/plugin/fullscreen/index.umd.js +34 -20
  102. package/dist/plugin/fullscreen/index.umd.min.js +1 -1
  103. package/dist/plugin/fullscreen/src/plugin/app/cores/index.d.ts +0 -4
  104. package/dist/plugin/fullscreen/src/plugin/app/types/app.d.ts +1 -1
  105. package/dist/plugin/fullscreen/src/plugin/camera/cores/index.d.ts +2 -2
  106. package/dist/plugin/fullscreen/src/plugin/clipboard/cores/index.d.ts +2 -2
  107. package/dist/plugin/fullscreen/src/plugin/fullscreen/cores/index.d.ts +2 -2
  108. package/dist/plugin/fullscreen/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  109. package/dist/plugin/fullscreen/src/plugin/platform/constants/index.d.ts +42 -0
  110. package/dist/plugin/fullscreen/src/plugin/platform/cores/index.d.ts +28 -0
  111. package/dist/plugin/fullscreen/src/plugin/platform/index.d.ts +2 -2
  112. package/dist/plugin/fullscreen/src/plugin/platform/types/index.d.ts +5 -1
  113. package/dist/plugin/fullscreen/src/plugin/platform/types/platform.d.ts +5 -2
  114. package/dist/plugin/fullscreen/src/plugin/theme/constants/index.d.ts +0 -12
  115. package/dist/plugin/fullscreen/src/plugin/theme/cores/index.d.ts +2 -2
  116. package/dist/plugin/fullscreen/src/plugin/theme/index.d.ts +1 -13
  117. package/dist/plugin/fullscreen/src/plugin/theme/types/index.d.ts +0 -12
  118. package/dist/plugin/fullscreen/src/plugin/theme/types/theme.d.ts +2 -22
  119. package/dist/plugin/platform/index.cjs +355 -109
  120. package/dist/plugin/platform/index.d.ts +15 -20
  121. package/dist/plugin/platform/index.min.cjs +1 -1
  122. package/dist/plugin/platform/index.min.mjs +1 -1
  123. package/dist/plugin/platform/index.mjs +355 -109
  124. package/dist/plugin/platform/index.umd.js +355 -109
  125. package/dist/plugin/platform/index.umd.min.js +1 -1
  126. package/dist/plugin/platform/src/plugin/app/constants/index.d.ts +12 -0
  127. package/dist/plugin/platform/src/plugin/app/cores/index.d.ts +13 -0
  128. package/dist/plugin/platform/src/plugin/app/index.d.ts +1 -1
  129. package/dist/plugin/platform/src/plugin/app/types/app.d.ts +11 -2
  130. package/dist/plugin/platform/src/plugin/app/types/index.d.ts +2 -2
  131. package/dist/plugin/platform/src/plugin/appearance/constants/index.d.ts +11 -0
  132. package/dist/plugin/platform/src/plugin/appearance/cores/index.d.ts +3 -0
  133. package/dist/plugin/platform/src/plugin/appearance/index.d.ts +8 -0
  134. package/dist/plugin/platform/src/plugin/appearance/types/appearance.d.ts +12 -0
  135. package/dist/plugin/platform/src/plugin/appearance/types/index.d.ts +13 -0
  136. package/dist/plugin/platform/src/plugin/camera/constants/inedx.d.ts +4 -0
  137. package/dist/plugin/platform/src/plugin/camera/cores/index.d.ts +3 -0
  138. package/dist/plugin/platform/src/plugin/camera/index.d.ts +1 -1
  139. package/dist/plugin/platform/src/plugin/camera/types/camera.d.ts +1 -1
  140. package/dist/plugin/platform/src/plugin/camera/types/index.d.ts +1 -1
  141. package/dist/plugin/platform/src/plugin/camera/utils/try-open-camera.d.ts +1 -1
  142. package/dist/plugin/platform/src/plugin/clipboard/cores/index.d.ts +3 -0
  143. package/dist/plugin/platform/src/plugin/fullscreen/cores/index.d.ts +35 -0
  144. package/dist/plugin/platform/src/plugin/fullscreen/types/fullscreen.d.ts +5 -5
  145. package/dist/plugin/platform/src/plugin/platform/constants/index.d.ts +42 -0
  146. package/dist/plugin/platform/src/plugin/platform/cores/index.d.ts +28 -0
  147. package/dist/plugin/platform/src/plugin/platform/index.d.ts +2 -2
  148. package/dist/plugin/platform/src/plugin/platform/types/index.d.ts +5 -1
  149. package/dist/plugin/platform/src/plugin/platform/types/platform.d.ts +5 -2
  150. package/dist/plugin/platform/src/plugin/theme/constants/index.d.ts +2 -0
  151. package/dist/plugin/platform/src/plugin/theme/cores/index.d.ts +3 -0
  152. package/dist/plugin/platform/src/plugin/theme/index.d.ts +1 -13
  153. package/dist/plugin/platform/src/plugin/theme/types/index.d.ts +0 -12
  154. package/dist/plugin/platform/src/plugin/theme/types/theme.d.ts +2 -21
  155. package/dist/plugin/platform/src/utils/create-hidden-element.d.ts +1 -1
  156. package/dist/plugin/theme/index.cjs +63 -906
  157. package/dist/plugin/theme/index.d.ts +4 -87
  158. package/dist/plugin/theme/index.min.cjs +1 -1
  159. package/dist/plugin/theme/index.min.mjs +1 -1
  160. package/dist/plugin/theme/index.mjs +63 -906
  161. package/dist/plugin/theme/index.umd.js +63 -906
  162. package/dist/plugin/theme/index.umd.min.js +1 -1
  163. package/dist/plugin/theme/src/plugin/app/cores/index.d.ts +0 -4
  164. package/dist/plugin/theme/src/plugin/app/types/app.d.ts +1 -1
  165. package/dist/plugin/theme/src/plugin/camera/cores/index.d.ts +2 -2
  166. package/dist/plugin/theme/src/plugin/clipboard/cores/index.d.ts +2 -2
  167. package/dist/plugin/theme/src/plugin/fullscreen/cores/index.d.ts +2 -2
  168. package/dist/plugin/theme/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  169. package/dist/plugin/theme/src/plugin/platform/constants/index.d.ts +42 -0
  170. package/dist/plugin/theme/src/plugin/platform/cores/index.d.ts +28 -0
  171. package/dist/plugin/theme/src/plugin/platform/index.d.ts +2 -2
  172. package/dist/plugin/theme/src/plugin/platform/types/index.d.ts +5 -1
  173. package/dist/plugin/theme/src/plugin/platform/types/platform.d.ts +5 -2
  174. package/dist/plugin/theme/src/plugin/theme/constants/index.d.ts +0 -12
  175. package/dist/plugin/theme/src/plugin/theme/cores/index.d.ts +2 -2
  176. package/dist/plugin/theme/src/plugin/theme/index.d.ts +1 -13
  177. package/dist/plugin/theme/src/plugin/theme/types/index.d.ts +0 -12
  178. package/dist/plugin/theme/src/plugin/theme/types/theme.d.ts +2 -22
  179. package/dist/src/plugin/app/cores/index.d.ts +0 -4
  180. package/dist/src/plugin/app/types/app.d.ts +1 -1
  181. package/dist/src/plugin/camera/cores/index.d.ts +2 -2
  182. package/dist/src/plugin/clipboard/cores/index.d.ts +2 -2
  183. package/dist/src/plugin/fullscreen/cores/index.d.ts +2 -2
  184. package/dist/src/plugin/fullscreen/types/fullscreen.d.ts +3 -10
  185. package/dist/src/plugin/platform/constants/index.d.ts +42 -0
  186. package/dist/src/plugin/platform/cores/index.d.ts +28 -0
  187. package/dist/src/plugin/platform/index.d.ts +2 -2
  188. package/dist/src/plugin/platform/types/index.d.ts +5 -1
  189. package/dist/src/plugin/platform/types/platform.d.ts +5 -2
  190. package/dist/src/plugin/theme/constants/index.d.ts +0 -12
  191. package/dist/src/plugin/theme/cores/index.d.ts +2 -2
  192. package/dist/src/plugin/theme/index.d.ts +1 -13
  193. package/dist/src/plugin/theme/types/index.d.ts +0 -12
  194. package/dist/src/plugin/theme/types/theme.d.ts +2 -22
  195. package/package.json +1 -1
@@ -1,3 +1,86 @@
1
+ function getTopmostWindow() {
2
+ try {
3
+ if (globalThis.top && globalThis.top !== window) {
4
+ void globalThis.top.location.href;
5
+ return globalThis.top;
6
+ }
7
+ }
8
+ catch (_) {
9
+ }
10
+ return window;
11
+ }
12
+
13
+ function dispatchClickEvent(element, view) {
14
+ if (view === void 0) { view = window; }
15
+ var fake;
16
+ try {
17
+ fake = new MouseEvent('click', {
18
+ bubbles: true,
19
+ cancelable: true,
20
+ view: view
21
+ });
22
+ }
23
+ catch (_) {
24
+ fake = globalThis.document.createEvent('MouseEvents');
25
+ fake.initMouseEvent('click', true, true, view, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
26
+ }
27
+ element.dispatchEvent(fake);
28
+ }
29
+
30
+ function createHiddenElement(tagName, focusable) {
31
+ if (focusable === void 0) { focusable = true; }
32
+ if (typeof globalThis.document === 'undefined')
33
+ return undefined;
34
+ var element = globalThis.document.createElement(tagName);
35
+ if ('width' in element)
36
+ element.width = '0';
37
+ if ('height' in element)
38
+ element.height = '0';
39
+ if ('border' in element)
40
+ element.border = '0';
41
+ if ('frameBorder' in element)
42
+ element.frameBorder = '0';
43
+ if ('scrolling' in element)
44
+ element.scrolling = 'no';
45
+ if ('cellPadding' in element)
46
+ element.cellPadding = '0';
47
+ if ('cellSpacing' in element)
48
+ element.cellSpacing = '0';
49
+ if ('frame' in element)
50
+ element.frame = 'void';
51
+ if ('rules' in element)
52
+ element.rules = 'none';
53
+ if ('noWrap' in element)
54
+ element.noWrap = true;
55
+ element.tabIndex = -1;
56
+ element.setAttribute('role', 'presentation');
57
+ if (focusable) {
58
+ element.style.width = '1px';
59
+ element.style.height = '1px';
60
+ }
61
+ else {
62
+ element.setAttribute('aria-hidden', 'true');
63
+ element.style.width = '0';
64
+ element.style.height = '0';
65
+ element.style.zIndex = '-9999';
66
+ element.style.display = 'none';
67
+ element.style.visibility = 'hidden';
68
+ element.style.pointerEvents = 'none';
69
+ }
70
+ element.style.position = 'absolute';
71
+ element.style.top = '0';
72
+ element.style.left = '0';
73
+ element.style.padding = '0';
74
+ element.style.margin = '0';
75
+ element.style.border = 'none';
76
+ element.style.outline = 'none';
77
+ element.style.clip = 'rect(1px, 1px, 1px, 1px)';
78
+ element.style.clipPath = 'inset(50%)';
79
+ element.style.overflow = 'hidden';
80
+ element.style.whiteSpace = 'nowrap';
81
+ return element;
82
+ }
83
+
1
84
  function compareVersion(lhs, rhs) {
2
85
  var pa = lhs.split('.');
3
86
  var pb = rhs.split('.');
@@ -60,24 +143,31 @@ var Browsers;
60
143
  Browsers["IE"] = "IE";
61
144
  Browsers["SamsungInternet"] = "SamsungInternet";
62
145
  })(Browsers || (Browsers = {}));
63
- var userAgent = typeof globalThis.navigator !== 'undefined' && typeof globalThis.navigator.userAgent === 'string' ? globalThis.navigator.userAgent : '';
64
- var IS_NODE_JS = typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.node !== undefined;
65
- (typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.electron !== undefined) || (/ electron\//i.test(userAgent));
66
- var IS_REACT_NATIVE = typeof globalThis.navigator !== 'undefined' && globalThis.navigator.product === 'ReactNative';
146
+ var CrossPlatformFramework;
147
+ (function (CrossPlatformFramework) {
148
+ CrossPlatformFramework["NotACrossPlatformFramework"] = "NotACrossPlatformFramework";
149
+ CrossPlatformFramework["ReactNative"] = "ReactNative";
150
+ CrossPlatformFramework["Electron"] = "Electron";
151
+ CrossPlatformFramework["Cordova"] = "Cordova";
152
+ })(CrossPlatformFramework || (CrossPlatformFramework = {}));
153
+ var USER_AGENT = typeof globalThis.navigator !== 'undefined' && typeof globalThis.navigator.userAgent === 'string' ? globalThis.navigator.userAgent : '';
154
+
67
155
  var Platform = {
68
156
  device: Devices.Unknown,
69
157
  os: OS.Unknown,
70
- osVersion: '',
71
158
  engine: Engines.Unknown,
72
- engineVersion: '',
73
159
  browser: Browsers.Unknown,
160
+ crossPlatformFramework: CrossPlatformFramework.NotACrossPlatformFramework,
161
+ osVersion: '',
162
+ engineVersion: '',
74
163
  browserVersion: '',
75
164
  renderer: getRenderer(),
76
- userAgent: userAgent,
165
+ userAgent: USER_AGENT,
166
+ isNode: typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.node !== undefined,
77
167
  isMobile: false,
78
168
  isDesktop: false,
79
169
  isStandalone: false,
80
- isWebview: /; ?wv|applewebkit(?!.*safari)/i.test(userAgent),
170
+ isWebview: /; ?wv|applewebkit(?!.*safari)/i.test(USER_AGENT),
81
171
  };
82
172
  var OS_RESOLVER_MAP = [
83
173
  [/windows nt (6\.[23]); arm/i, OS.Windows, resolveWindowsVersion],
@@ -346,6 +436,12 @@ function getSemanticVersion(string) {
346
436
  build: parseInt(parts[2] || '0')
347
437
  };
348
438
  }
439
+ if ((typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.electron !== undefined) || (/ electron\//i.test(USER_AGENT))) {
440
+ Platform.crossPlatformFramework = CrossPlatformFramework.Electron;
441
+ }
442
+ if (typeof globalThis.navigator !== 'undefined' && globalThis.navigator.product === 'ReactNative') {
443
+ Platform.crossPlatformFramework = CrossPlatformFramework.ReactNative;
444
+ }
349
445
  for (var i = 0; i < OS_RESOLVER_MAP.length; i++) {
350
446
  var map = OS_RESOLVER_MAP[i];
351
447
  var regexp = map[0];
@@ -387,7 +483,7 @@ for (var i = 0; i < BROWSER_RESOLVER_MAP.length; i++) {
387
483
  break;
388
484
  }
389
485
  }
390
- if (IS_REACT_NATIVE) {
486
+ if (Platform.crossPlatformFramework === CrossPlatformFramework.ReactNative) {
391
487
  try {
392
488
  var reactNative = require('react-native');
393
489
  var platform = reactNative.Platform;
@@ -416,7 +512,7 @@ if (IS_REACT_NATIVE) {
416
512
  catch (_) {
417
513
  }
418
514
  }
419
- if (IS_NODE_JS) {
515
+ if (Platform.isNode) {
420
516
  try {
421
517
  var os = require('os');
422
518
  var platform = os.platform();
@@ -448,6 +544,7 @@ if (IS_NODE_JS) {
448
544
  }
449
545
  if (typeof globalThis.document !== 'undefined') {
450
546
  globalThis.document.addEventListener("deviceready", function () {
547
+ Platform.crossPlatformFramework = CrossPlatformFramework.Cordova;
451
548
  if (Platform.os === OS.Unknown && typeof globalThis.device !== 'undefined') {
452
549
  switch (globalThis.device.platform) {
453
550
  case 'Android':
@@ -490,89 +587,6 @@ Platform.isMobile = Platform.device === Devices.Mobile;
490
587
  Platform.isDesktop = Platform.device === Devices.Desktop;
491
588
  Platform.isStandalone = getIsStandalone(Platform.os);
492
589
 
493
- function getTopmostWindow() {
494
- try {
495
- if (globalThis.top && globalThis.top !== window) {
496
- void globalThis.top.location.href;
497
- return globalThis.top;
498
- }
499
- }
500
- catch (_) {
501
- }
502
- return window;
503
- }
504
-
505
- function dispatchClickEvent(element, view) {
506
- if (view === void 0) { view = window; }
507
- var fake;
508
- try {
509
- fake = new MouseEvent('click', {
510
- bubbles: true,
511
- cancelable: true,
512
- view: view
513
- });
514
- }
515
- catch (_) {
516
- fake = globalThis.document.createEvent('MouseEvents');
517
- fake.initMouseEvent('click', true, true, view, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
518
- }
519
- element.dispatchEvent(fake);
520
- }
521
-
522
- function createHiddenElement(tagName, focusable) {
523
- if (focusable === void 0) { focusable = true; }
524
- if (typeof globalThis.document === 'undefined')
525
- return undefined;
526
- var element = globalThis.document.createElement(tagName);
527
- if ('width' in element)
528
- element.width = '0';
529
- if ('height' in element)
530
- element.height = '0';
531
- if ('border' in element)
532
- element.border = '0';
533
- if ('frameBorder' in element)
534
- element.frameBorder = '0';
535
- if ('scrolling' in element)
536
- element.scrolling = 'no';
537
- if ('cellPadding' in element)
538
- element.cellPadding = '0';
539
- if ('cellSpacing' in element)
540
- element.cellSpacing = '0';
541
- if ('frame' in element)
542
- element.frame = 'void';
543
- if ('rules' in element)
544
- element.rules = 'none';
545
- if ('noWrap' in element)
546
- element.noWrap = true;
547
- element.tabIndex = -1;
548
- element.setAttribute('role', 'presentation');
549
- if (focusable) {
550
- element.style.width = '1px';
551
- element.style.height = '1px';
552
- }
553
- else {
554
- element.setAttribute('aria-hidden', 'true');
555
- element.style.width = '0';
556
- element.style.height = '0';
557
- element.style.zIndex = '-9999';
558
- element.style.display = 'none';
559
- element.style.visibility = 'hidden';
560
- element.style.pointerEvents = 'none';
561
- }
562
- element.style.position = 'absolute';
563
- element.style.top = '0';
564
- element.style.left = '0';
565
- element.style.padding = '0';
566
- element.style.margin = '0';
567
- element.style.border = 'none';
568
- element.style.outline = 'none';
569
- element.style.clip = 'rect(1px, 1px, 1px, 1px)';
570
- element.style.clipPath = 'inset(50%)';
571
- element.style.overflow = 'hidden';
572
- element.style.whiteSpace = 'nowrap';
573
- return element;
574
- }
575
-
576
590
  function tryOpenCamera(type) {
577
591
  var top = getTopmostWindow();
578
592
  var document = top.document;
@@ -601,25 +615,20 @@ function tryOpenCamera(type) {
601
615
  }
602
616
  }
603
617
 
604
- var Index = {
618
+ var Camera = {
605
619
  open: open
606
620
  };
607
621
  function open(type) {
608
- switch (Platform.os) {
609
- case OS.Android:
622
+ if (Platform.os === OS.Android) {
623
+ tryOpenCamera(type);
624
+ }
625
+ else if (Platform.os === OS.iOS) {
626
+ if (compareVersion(Platform.osVersion, '10.3') >= 0) {
610
627
  tryOpenCamera(type);
611
- break;
612
- case OS.iOS:
613
- if (compareVersion(Platform.osVersion, '10.3') >= 0) {
614
- tryOpenCamera(type);
615
- }
616
- else {
617
- alert(Platform.osVersion);
618
- }
619
- break;
620
- case OS.Windows:
621
- case OS.MacOS:
622
- break;
628
+ }
629
+ else {
630
+ alert(Platform.osVersion);
631
+ }
623
632
  }
624
633
  }
625
634
 
@@ -632,7 +641,7 @@ var CameraType;
632
641
  var NativeMediaPlugin = {
633
642
  installed: false,
634
643
  name: 'Camera',
635
- module: Index,
644
+ module: Camera,
636
645
  Constants: {
637
646
  CameraType: CameraType
638
647
  },
@@ -4,6 +4,89 @@
4
4
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Camera = factory());
5
5
  })(this, (function () { 'use strict';
6
6
 
7
+ function getTopmostWindow() {
8
+ try {
9
+ if (globalThis.top && globalThis.top !== window) {
10
+ void globalThis.top.location.href;
11
+ return globalThis.top;
12
+ }
13
+ }
14
+ catch (_) {
15
+ }
16
+ return window;
17
+ }
18
+
19
+ function dispatchClickEvent(element, view) {
20
+ if (view === void 0) { view = window; }
21
+ var fake;
22
+ try {
23
+ fake = new MouseEvent('click', {
24
+ bubbles: true,
25
+ cancelable: true,
26
+ view: view
27
+ });
28
+ }
29
+ catch (_) {
30
+ fake = globalThis.document.createEvent('MouseEvents');
31
+ fake.initMouseEvent('click', true, true, view, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
32
+ }
33
+ element.dispatchEvent(fake);
34
+ }
35
+
36
+ function createHiddenElement(tagName, focusable) {
37
+ if (focusable === void 0) { focusable = true; }
38
+ if (typeof globalThis.document === 'undefined')
39
+ return undefined;
40
+ var element = globalThis.document.createElement(tagName);
41
+ if ('width' in element)
42
+ element.width = '0';
43
+ if ('height' in element)
44
+ element.height = '0';
45
+ if ('border' in element)
46
+ element.border = '0';
47
+ if ('frameBorder' in element)
48
+ element.frameBorder = '0';
49
+ if ('scrolling' in element)
50
+ element.scrolling = 'no';
51
+ if ('cellPadding' in element)
52
+ element.cellPadding = '0';
53
+ if ('cellSpacing' in element)
54
+ element.cellSpacing = '0';
55
+ if ('frame' in element)
56
+ element.frame = 'void';
57
+ if ('rules' in element)
58
+ element.rules = 'none';
59
+ if ('noWrap' in element)
60
+ element.noWrap = true;
61
+ element.tabIndex = -1;
62
+ element.setAttribute('role', 'presentation');
63
+ if (focusable) {
64
+ element.style.width = '1px';
65
+ element.style.height = '1px';
66
+ }
67
+ else {
68
+ element.setAttribute('aria-hidden', 'true');
69
+ element.style.width = '0';
70
+ element.style.height = '0';
71
+ element.style.zIndex = '-9999';
72
+ element.style.display = 'none';
73
+ element.style.visibility = 'hidden';
74
+ element.style.pointerEvents = 'none';
75
+ }
76
+ element.style.position = 'absolute';
77
+ element.style.top = '0';
78
+ element.style.left = '0';
79
+ element.style.padding = '0';
80
+ element.style.margin = '0';
81
+ element.style.border = 'none';
82
+ element.style.outline = 'none';
83
+ element.style.clip = 'rect(1px, 1px, 1px, 1px)';
84
+ element.style.clipPath = 'inset(50%)';
85
+ element.style.overflow = 'hidden';
86
+ element.style.whiteSpace = 'nowrap';
87
+ return element;
88
+ }
89
+
7
90
  function compareVersion(lhs, rhs) {
8
91
  var pa = lhs.split('.');
9
92
  var pb = rhs.split('.');
@@ -66,24 +149,31 @@
66
149
  Browsers["IE"] = "IE";
67
150
  Browsers["SamsungInternet"] = "SamsungInternet";
68
151
  })(Browsers || (Browsers = {}));
69
- var userAgent = typeof globalThis.navigator !== 'undefined' && typeof globalThis.navigator.userAgent === 'string' ? globalThis.navigator.userAgent : '';
70
- var IS_NODE_JS = typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.node !== undefined;
71
- (typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.electron !== undefined) || (/ electron\//i.test(userAgent));
72
- var IS_REACT_NATIVE = typeof globalThis.navigator !== 'undefined' && globalThis.navigator.product === 'ReactNative';
152
+ var CrossPlatformFramework;
153
+ (function (CrossPlatformFramework) {
154
+ CrossPlatformFramework["NotACrossPlatformFramework"] = "NotACrossPlatformFramework";
155
+ CrossPlatformFramework["ReactNative"] = "ReactNative";
156
+ CrossPlatformFramework["Electron"] = "Electron";
157
+ CrossPlatformFramework["Cordova"] = "Cordova";
158
+ })(CrossPlatformFramework || (CrossPlatformFramework = {}));
159
+ var USER_AGENT = typeof globalThis.navigator !== 'undefined' && typeof globalThis.navigator.userAgent === 'string' ? globalThis.navigator.userAgent : '';
160
+
73
161
  var Platform = {
74
162
  device: Devices.Unknown,
75
163
  os: OS.Unknown,
76
- osVersion: '',
77
164
  engine: Engines.Unknown,
78
- engineVersion: '',
79
165
  browser: Browsers.Unknown,
166
+ crossPlatformFramework: CrossPlatformFramework.NotACrossPlatformFramework,
167
+ osVersion: '',
168
+ engineVersion: '',
80
169
  browserVersion: '',
81
170
  renderer: getRenderer(),
82
- userAgent: userAgent,
171
+ userAgent: USER_AGENT,
172
+ isNode: typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.node !== undefined,
83
173
  isMobile: false,
84
174
  isDesktop: false,
85
175
  isStandalone: false,
86
- isWebview: /; ?wv|applewebkit(?!.*safari)/i.test(userAgent),
176
+ isWebview: /; ?wv|applewebkit(?!.*safari)/i.test(USER_AGENT),
87
177
  };
88
178
  var OS_RESOLVER_MAP = [
89
179
  [/windows nt (6\.[23]); arm/i, OS.Windows, resolveWindowsVersion],
@@ -352,6 +442,12 @@
352
442
  build: parseInt(parts[2] || '0')
353
443
  };
354
444
  }
445
+ if ((typeof globalThis.process !== 'undefined' && typeof globalThis.process.versions !== 'undefined' && globalThis.process.versions.electron !== undefined) || (/ electron\//i.test(USER_AGENT))) {
446
+ Platform.crossPlatformFramework = CrossPlatformFramework.Electron;
447
+ }
448
+ if (typeof globalThis.navigator !== 'undefined' && globalThis.navigator.product === 'ReactNative') {
449
+ Platform.crossPlatformFramework = CrossPlatformFramework.ReactNative;
450
+ }
355
451
  for (var i = 0; i < OS_RESOLVER_MAP.length; i++) {
356
452
  var map = OS_RESOLVER_MAP[i];
357
453
  var regexp = map[0];
@@ -393,7 +489,7 @@
393
489
  break;
394
490
  }
395
491
  }
396
- if (IS_REACT_NATIVE) {
492
+ if (Platform.crossPlatformFramework === CrossPlatformFramework.ReactNative) {
397
493
  try {
398
494
  var reactNative = require('react-native');
399
495
  var platform = reactNative.Platform;
@@ -422,7 +518,7 @@
422
518
  catch (_) {
423
519
  }
424
520
  }
425
- if (IS_NODE_JS) {
521
+ if (Platform.isNode) {
426
522
  try {
427
523
  var os = require('os');
428
524
  var platform = os.platform();
@@ -454,6 +550,7 @@
454
550
  }
455
551
  if (typeof globalThis.document !== 'undefined') {
456
552
  globalThis.document.addEventListener("deviceready", function () {
553
+ Platform.crossPlatformFramework = CrossPlatformFramework.Cordova;
457
554
  if (Platform.os === OS.Unknown && typeof globalThis.device !== 'undefined') {
458
555
  switch (globalThis.device.platform) {
459
556
  case 'Android':
@@ -496,89 +593,6 @@
496
593
  Platform.isDesktop = Platform.device === Devices.Desktop;
497
594
  Platform.isStandalone = getIsStandalone(Platform.os);
498
595
 
499
- function getTopmostWindow() {
500
- try {
501
- if (globalThis.top && globalThis.top !== window) {
502
- void globalThis.top.location.href;
503
- return globalThis.top;
504
- }
505
- }
506
- catch (_) {
507
- }
508
- return window;
509
- }
510
-
511
- function dispatchClickEvent(element, view) {
512
- if (view === void 0) { view = window; }
513
- var fake;
514
- try {
515
- fake = new MouseEvent('click', {
516
- bubbles: true,
517
- cancelable: true,
518
- view: view
519
- });
520
- }
521
- catch (_) {
522
- fake = globalThis.document.createEvent('MouseEvents');
523
- fake.initMouseEvent('click', true, true, view, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
524
- }
525
- element.dispatchEvent(fake);
526
- }
527
-
528
- function createHiddenElement(tagName, focusable) {
529
- if (focusable === void 0) { focusable = true; }
530
- if (typeof globalThis.document === 'undefined')
531
- return undefined;
532
- var element = globalThis.document.createElement(tagName);
533
- if ('width' in element)
534
- element.width = '0';
535
- if ('height' in element)
536
- element.height = '0';
537
- if ('border' in element)
538
- element.border = '0';
539
- if ('frameBorder' in element)
540
- element.frameBorder = '0';
541
- if ('scrolling' in element)
542
- element.scrolling = 'no';
543
- if ('cellPadding' in element)
544
- element.cellPadding = '0';
545
- if ('cellSpacing' in element)
546
- element.cellSpacing = '0';
547
- if ('frame' in element)
548
- element.frame = 'void';
549
- if ('rules' in element)
550
- element.rules = 'none';
551
- if ('noWrap' in element)
552
- element.noWrap = true;
553
- element.tabIndex = -1;
554
- element.setAttribute('role', 'presentation');
555
- if (focusable) {
556
- element.style.width = '1px';
557
- element.style.height = '1px';
558
- }
559
- else {
560
- element.setAttribute('aria-hidden', 'true');
561
- element.style.width = '0';
562
- element.style.height = '0';
563
- element.style.zIndex = '-9999';
564
- element.style.display = 'none';
565
- element.style.visibility = 'hidden';
566
- element.style.pointerEvents = 'none';
567
- }
568
- element.style.position = 'absolute';
569
- element.style.top = '0';
570
- element.style.left = '0';
571
- element.style.padding = '0';
572
- element.style.margin = '0';
573
- element.style.border = 'none';
574
- element.style.outline = 'none';
575
- element.style.clip = 'rect(1px, 1px, 1px, 1px)';
576
- element.style.clipPath = 'inset(50%)';
577
- element.style.overflow = 'hidden';
578
- element.style.whiteSpace = 'nowrap';
579
- return element;
580
- }
581
-
582
596
  function tryOpenCamera(type) {
583
597
  var top = getTopmostWindow();
584
598
  var document = top.document;
@@ -607,25 +621,20 @@
607
621
  }
608
622
  }
609
623
 
610
- var Index = {
624
+ var Camera = {
611
625
  open: open
612
626
  };
613
627
  function open(type) {
614
- switch (Platform.os) {
615
- case OS.Android:
628
+ if (Platform.os === OS.Android) {
629
+ tryOpenCamera(type);
630
+ }
631
+ else if (Platform.os === OS.iOS) {
632
+ if (compareVersion(Platform.osVersion, '10.3') >= 0) {
616
633
  tryOpenCamera(type);
617
- break;
618
- case OS.iOS:
619
- if (compareVersion(Platform.osVersion, '10.3') >= 0) {
620
- tryOpenCamera(type);
621
- }
622
- else {
623
- alert(Platform.osVersion);
624
- }
625
- break;
626
- case OS.Windows:
627
- case OS.MacOS:
628
- break;
634
+ }
635
+ else {
636
+ alert(Platform.osVersion);
637
+ }
629
638
  }
630
639
  }
631
640
 
@@ -638,7 +647,7 @@
638
647
  var NativeMediaPlugin = {
639
648
  installed: false,
640
649
  name: 'Camera',
641
- module: Index,
650
+ module: Camera,
642
651
  Constants: {
643
652
  CameraType: CameraType
644
653
  },
@@ -1 +1 @@
1
- !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):(e="undefined"!=typeof globalThis?globalThis:e||self).Camera=o()}(this,(function(){"use strict";function e(e,o){for(var i=e.split("."),r=o.split("."),n=Math.max(i.length,r.length),a=0;a<n;a++){var t=void 0,s=void 0;if((t=a<i.length?parseInt(i[a],10):0)>(s=a<r.length?parseInt(r[a],10):0))return 1;if(t<s)return-1}return 0}var o,i,r,n;!function(e){e.Unknown="Unknown",e.Android="Android",e.iOS="iOS",e.Windows="Windows",e.MacOS="MacOS"}(o||(o={})),function(e){e.Unknown="Unknown",e.Mobile="Mobile",e.Desktop="Desktop"}(i||(i={})),function(e){e.Unknown="Unknown",e.EdgeHTML="EdgeHTML",e.ArkWeb="ArkWeb",e.Blink="Blink",e.Presto="Presto",e.WebKit="WebKit",e.Trident="Trident",e.NetFront="NetFront",e.KHTML="KHTML",e.Tasman="Tasman",e.Gecko="Gecko"}(r||(r={})),function(e){e.Unknown="Unknown",e.Chrome="Chrome",e.Safari="Safari",e.Edge="Edge",e.Firefox="Firefox",e.Opera="Opera",e.IE="IE",e.SamsungInternet="SamsungInternet"}(n||(n={}));var a=void 0!==globalThis.navigator&&"string"==typeof globalThis.navigator.userAgent?globalThis.navigator.userAgent:"",t=void 0!==globalThis.process&&void 0!==globalThis.process.versions&&void 0!==globalThis.process.versions.node;void 0!==globalThis.process&&void 0!==globalThis.process.versions&&void 0!==globalThis.process.versions.electron||/ electron\//i.test(a);var s=void 0!==globalThis.navigator&&"ReactNative"===globalThis.navigator.product,d={device:i.Unknown,os:o.Unknown,osVersion:"",engine:r.Unknown,engineVersion:"",browser:n.Unknown,browserVersion:"",renderer:function(){if(void 0===globalThis.document)return"";var e=globalThis.document.createElement("canvas");if("function"!=typeof e.getContext)return"";var o=e.getContext("webgl2")||e.getContext("experimental-webgl")||e.getContext("webgl");if(null===o)return"";if(o instanceof WebGLRenderingContext||"getParameter"in o&&"function"==typeof o.getParameter){var i=o.getExtension("WEBGL_debug_renderer_info");return null===i?o.getParameter(o.RENDERER):o.getParameter(i.UNMASKED_RENDERER_WEBGL)}return""}(),userAgent:a,isMobile:!1,isDesktop:!1,isStandalone:!1,isWebview:/; ?wv|applewebkit(?!.*safari)/i.test(a)},l=[[/windows nt (6\.[23]); arm/i,o.Windows,w],[/windows (?:phone|mobile|iot)(?: os)?[\/ ]?([\d.]*( se)?)/i,o.Windows,w],[/windows[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i,o.Windows,w],[/windows nt ?([\d.)]*)(?!.+xbox)/i,o.Windows,w],[/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d.;]*)/i,o.Windows,w],[/windows ce\/?([\d.]*)/i,o.Windows,w],[/[adehimnop]{4,7}\b(?:.*os (\w+) like mac|; opera)/i,o.iOS,b],[/(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w.]+)/i,o.iOS,b],[/cfnetwork\/.+darwin/i,o.iOS,b],[/mac os x ?([\w. ]*)/i,o.MacOS,b],[/(?:macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i,o.MacOS,b],[/droid ([\w.]+)\b.+(android[- ]x86)/i,o.Android],[/android\w*[-\/.; ]?([\d.]*)/i,o.Android]],m=[[/windows.+ edge\/([\w.]+)/i,r.EdgeHTML],[/arkweb\/([\w.]+)/i,r.ArkWeb],[/webkit\/537\.36.+chrome\/(?!27)([\w.]+)/i,r.Blink],[/presto\/([\w.]+)/i,r.Presto],[/webkit\/([\w.]+)/i,r.WebKit],[/trident\/([\w.]+)/i,r.Trident],[/netfront\/([\w.]+)/i,r.NetFront],[/khtml[\/ ]\(?([\w.]+)/i,r.KHTML],[/tasman[\/ ]\(?([\w.]+)/i,r.Tasman],[/rv:([\w.]{1,9})\b.+gecko/i,r.Gecko]],c=[[/\b(?:crmo|crios)\/([\w.]+)/i,n.Chrome],[/webview.+edge\/([\w.]+)/i,n.Edge],[/edg(?:e|ios|a)?\/([\w.]+)/i,n.Edge],[/opera mini\/([-\w.]+)/i,n.Opera],[/opera [mobileta]{3,6}\b.+version\/([-\w.]+)/i,n.Opera],[/opera(?:.+version\/|[\/ ]+)([\w.]+)/i,n.Opera],[/opios[\/ ]+([\w.]+)/i,n.Opera],[/\bop(?:rg)?x\/([\w.]+)/i,n.Opera],[/\bopr\/([\w.]+)/i,n.Opera],[/iemobile(?:browser|boat|jet)[\/ ]?([\d.]*)/i,n.IE],[/(?:ms|\()ie ([\w.]+)/i,n.IE],[/trident.+rv[: ]([\w.]{1,9})\b.+like gecko/i,n.IE],[/\bfocus\/([\w.]+)/i,n.Firefox],[/\bopt\/([\w.]+)/i,n.Opera],[/coast\/([\w.]+)/i,n.Opera],[/fxios\/([\w.-]+)/i,n.Firefox],[/samsungbrowser\/([\w.]+)/i,n.SamsungInternet],[/headlesschrome(?:\/([\w.]+)| )/i,n.Chrome],[/wv\).+chrome\/([\w.]+).+edgw\//i,n.Edge],[/ wv\).+(chrome)\/([\w.]+)/i,n.Chrome],[/chrome\/([\w.]+) mobile/i,n.Chrome],[/chrome\/v?([\w.]+)/i,n.Chrome],[/version\/([\w.,]+) .*mobile(?:\/\w+ | ?)safari/i,n.Safari],[/iphone .*mobile(?:\/\w+ | ?)safari/i,n.Safari],[/version\/([\w.,]+) .*safari/i,n.Safari],[/webkit.+?(?:mobile ?safari|safari)(\/[\w.]+)/i,n.Safari,"1"],[/(?:mobile|tablet);.*firefox\/([\w.-]+)/i,n.Firefox],[/mobile vr; rv:([\w.]+)\).+firefox/i,n.Firefox],[/firefox\/([\w.]+)/i,n.Firefox]];function w(e){if(void 0===e)return"";var o={"4.90":"ME","NT3.51":"NT 3.11","NT4.0":"NT 4.0","NT 5.0":"2000","NT 5.1":"XP","NT 5.2":"XP","NT 6.0":"Vista","NT 6.1":"7","NT 6.2":"8","NT 6.3":"8.1","NT 6.4":"10","NT 10.0":"10",ARM:"RT"}[e];return void 0!==o?o:e}function b(e){return void 0===e?"":e.replace(/_/g,".")}function u(e,o){return 10===e.major&&0===e.minor&&e.build>=22e3?"11":10===e.major&&0===e.minor&&e.build<22e3?"10":6===e.major&&3===e.minor?"8.1":6===e.major&&2===e.minor?"8":6===e.major&&1===e.minor?"7":6===e.major&&0===e.minor?"Vista":5===e.major&&1===e.minor||5===e.major&&2===e.minor?"XP":5===e.major&&0===e.minor?"2000":4===e.major&&90===e.minor?"ME":4===e.major&&0===e.minor?"NT 4.0":3===e.major&&51===e.minor?"NT 3.11":o}function g(e,o){return"function"==typeof o?o(e):"string"==typeof o?o:void 0===e?"":e}function p(e){var o=e.split(".");return{major:parseInt(o[0]||"0"),minor:parseInt(o[1]||"0"),build:parseInt(o[2]||"0")}}for(var f=0;f<l.length;f++){var v=(k=l[f])[0],h=k[1],j=k[2];if(null!==(y=d.userAgent.match(v))){d.os=h,d.osVersion=g(y[1],j);break}}d.os===o.iOS&&0===e(d.osVersion,"18.6")&&(null!==(E=/\) Version\/([\d.]+)/.exec(d.userAgent))&&parseInt(E[1].substring(0,2),10)>=26&&(d.osVersion=E[1]));for(f=0;f<m.length;f++){v=(k=m[f])[0];var T=k[1];j=k[2];if(null!==(y=d.userAgent.match(v))){d.engine=T,d.engineVersion=g(y[1],j);break}}for(f=0;f<c.length;f++){v=(k=c[f])[0];var k,y,x=k[1];j=k[2];if(null!==(y=d.userAgent.match(v))){d.browser=x,d.browserVersion=g(y[1],j);break}}if(s)try{h=(V=require("react-native").Platform).OS;var E=p(S=""+V.Version);switch(h){case"android":d.os=o.Android,d.osVersion=function(e,o){return e.major>=36?"16":35===e.major?"15":34===e.major?"14":33===e.major?"13":32===e.major?"12.1":31===e.major?"12":30===e.major?"11":29===e.major?"10":28===e.major?"9":27===e.major?"8.1":26===e.major?"8.0":25===e.major?"7.1":24===e.major?"7.0":23===e.major?"6.0":22===e.major?"5.1":21===e.major?"5.0":20===e.major||19===e.major?"4.4":18===e.major?"4.3":17===e.major?"4.2":16===e.major?"4.1":15===e.major?"4.0.3":14===e.major?"4.0":13===e.major?"3.2":12===e.major?"3.1":11===e.major?"3.0":10===e.major?"2.3.3":9===e.major?"2.3":8===e.major?"2.2":7===e.major?"2.1":6===e.major?"2.0.1":5===e.major?"2.0":4===e.major?"1.6":3===e.major?"1.5":2===e.major?"1.1":1===e.major?"1.0":o}(E,S);break;case"ios":d.os=o.iOS,d.osVersion=S;break;case"windows":d.os=o.Windows,d.osVersion=u(E,S);break;case"macos":d.os=o.MacOS,d.osVersion=S}}catch(e){}if(t)try{var S,V=(h=require("os")).platform();E=p(S=h.release());switch(V){case"win32":d.os=o.Windows,d.osVersion=u(E,S);break;case"darwin":d.os=o.MacOS,d.osVersion=function(e,o){return e.major>=24?e.major-9+"."+e.minor+"."+e.build:23===e.major?"14."+e.minor+"."+e.build:22===e.major?"13."+e.minor+"."+e.build:21===e.major?"12."+e.minor+"."+e.build:20===e.major?"11."+e.minor+"."+e.build:19===e.major?"10.15."+e.minor:18===e.major?"10.14."+e.minor:17===e.major?"10.13."+e.minor:16===e.major?"10.12."+e.minor:15===e.major?"10.11."+e.minor:14===e.major?"10.10."+e.minor:13===e.major?"10.9."+e.minor:e.major>=5&&e.major<=12?"10."+(e.major-4)+"."+e.minor:o}(E,S);break;case"android":d.os=o.Android,d.osVersion=S;break;case"linux":/android/i.test(S)&&(d.os=o.Android,d.osVersion=S)}}catch(e){}function M(e){var i,r=function(){try{if(globalThis.top&&globalThis.top!==window)return globalThis.top.location.href,globalThis.top}catch(e){}return window}(),n=r.document;try{if(void 0===(i=function(e,o){if(void 0===o&&(o=!0),void 0!==globalThis.document){var i=globalThis.document.createElement(e);return"width"in i&&(i.width="0"),"height"in i&&(i.height="0"),"border"in i&&(i.border="0"),"frameBorder"in i&&(i.frameBorder="0"),"scrolling"in i&&(i.scrolling="no"),"cellPadding"in i&&(i.cellPadding="0"),"cellSpacing"in i&&(i.cellSpacing="0"),"frame"in i&&(i.frame="void"),"rules"in i&&(i.rules="none"),"noWrap"in i&&(i.noWrap=!0),i.tabIndex=-1,i.setAttribute("role","presentation"),o?(i.style.width="1px",i.style.height="1px"):(i.setAttribute("aria-hidden","true"),i.style.width="0",i.style.height="0",i.style.zIndex="-9999",i.style.display="none",i.style.visibility="hidden",i.style.pointerEvents="none"),i.style.position="absolute",i.style.top="0",i.style.left="0",i.style.padding="0",i.style.margin="0",i.style.border="none",i.style.outline="none",i.style.clip="rect(1px, 1px, 1px, 1px)",i.style.clipPath="inset(50%)",i.style.overflow="hidden",i.style.whiteSpace="nowrap",i}}("input")))return;if(i.type="file",i.accept=e+"/*","capture"in HTMLInputElement.prototype)i.capture="user";else if(d.os===o.Android){var a="";"image"===e?a="camera":"video"===e&&(a="camcorder"),i.accept=e+"/*;capture="+a}n.body.appendChild(i),function(e,o){var i;void 0===o&&(o=window);try{i=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:o})}catch(e){(i=globalThis.document.createEvent("MouseEvents")).initMouseEvent("click",!0,!0,o,0,0,0,0,0,!1,!1,!1,!1,0,null)}e.dispatchEvent(i)}(i,r)}catch(e){}}void 0!==globalThis.document&&globalThis.document.addEventListener("deviceready",(function(){if(d.os===o.Unknown&&void 0!==globalThis.device){switch(globalThis.device.platform){case"Android":d.os=o.Android;break;case"iOS":d.os=o.iOS}d.osVersion=globalThis.device.version}}),!1),void 0!==navigator.userAgentData&&void 0!==navigator.userAgentData.getHighEntropyValues&&navigator.userAgentData.getHighEntropyValues(["brands","fullVersionList","mobile","model","platform","platformVersion","architecture","formFactors","bitness","uaFullVersion","wow64"]).then((function(e){for(var i,r=e.fullVersionList||e.brands||[],n=e.platformVersion,a=0;a<r.length;a++){var t=null==(i=r[a])?{brand:"",version:""}:"string"==typeof i?{brand:i,version:""}:{brand:i.brand,version:i.version},s=t.brand,l=t.version;/not.a.brand/i.test(s)||"Chromium"===s&&(d.engineVersion=l)}"string"==typeof n&&(d.os===o.Windows&&parseInt(n.replace(/[^\d.]/g,"").split(".")[0],10)>=13?d.osVersion="11":d.osVersion=n)})),d.device=d.os===o.iOS||d.os===o.Android?i.Mobile:d.os===o.Windows||d.os===o.MacOS?i.Desktop:i.Unknown,d.isMobile=d.device===i.Mobile,d.isDesktop=d.device===i.Desktop,d.isStandalone=function(e){return"matchMedia"in globalThis&&(e===o.iOS?"standalone"in navigator&&!!navigator.standalone:globalThis.matchMedia("(display-mode: standalone)").matches)}(d.os);var O,A={open:function(i){switch(d.os){case o.Android:M(i);break;case o.iOS:e(d.osVersion,"10.3")>=0?M(i):alert(d.osVersion);case o.Windows:case o.MacOS:}}};return function(e){e.Image="image",e.Video="video"}(O||(O={})),{installed:!1,name:"Camera",module:A,Constants:{CameraType:O},Errors:{}}}));
1
+ !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(o="undefined"!=typeof globalThis?globalThis:o||self).Camera=e()}(this,(function(){"use strict";function o(o,e){for(var r=o.split("."),i=e.split("."),n=Math.max(r.length,i.length),a=0;a<n;a++){var t=void 0,s=void 0;if((t=a<r.length?parseInt(r[a],10):0)>(s=a<i.length?parseInt(i[a],10):0))return 1;if(t<s)return-1}return 0}var e,r,i,n,a;!function(o){o.Unknown="Unknown",o.Android="Android",o.iOS="iOS",o.Windows="Windows",o.MacOS="MacOS"}(e||(e={})),function(o){o.Unknown="Unknown",o.Mobile="Mobile",o.Desktop="Desktop"}(r||(r={})),function(o){o.Unknown="Unknown",o.EdgeHTML="EdgeHTML",o.ArkWeb="ArkWeb",o.Blink="Blink",o.Presto="Presto",o.WebKit="WebKit",o.Trident="Trident",o.NetFront="NetFront",o.KHTML="KHTML",o.Tasman="Tasman",o.Gecko="Gecko"}(i||(i={})),function(o){o.Unknown="Unknown",o.Chrome="Chrome",o.Safari="Safari",o.Edge="Edge",o.Firefox="Firefox",o.Opera="Opera",o.IE="IE",o.SamsungInternet="SamsungInternet"}(n||(n={})),function(o){o.NotACrossPlatformFramework="NotACrossPlatformFramework",o.ReactNative="ReactNative",o.Electron="Electron",o.Cordova="Cordova"}(a||(a={}));var t=void 0!==globalThis.navigator&&"string"==typeof globalThis.navigator.userAgent?globalThis.navigator.userAgent:"",s={device:r.Unknown,os:e.Unknown,engine:i.Unknown,browser:n.Unknown,crossPlatformFramework:a.NotACrossPlatformFramework,osVersion:"",engineVersion:"",browserVersion:"",renderer:function(){if(void 0===globalThis.document)return"";var o=globalThis.document.createElement("canvas");if("function"!=typeof o.getContext)return"";var e=o.getContext("webgl2")||o.getContext("experimental-webgl")||o.getContext("webgl");if(null===e)return"";if(e instanceof WebGLRenderingContext||"getParameter"in e&&"function"==typeof e.getParameter){var r=e.getExtension("WEBGL_debug_renderer_info");return null===r?e.getParameter(e.RENDERER):e.getParameter(r.UNMASKED_RENDERER_WEBGL)}return""}(),userAgent:t,isNode:void 0!==globalThis.process&&void 0!==globalThis.process.versions&&void 0!==globalThis.process.versions.node,isMobile:!1,isDesktop:!1,isStandalone:!1,isWebview:/; ?wv|applewebkit(?!.*safari)/i.test(t)},l=[[/windows nt (6\.[23]); arm/i,e.Windows,c],[/windows (?:phone|mobile|iot)(?: os)?[\/ ]?([\d.]*( se)?)/i,e.Windows,c],[/windows[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i,e.Windows,c],[/windows nt ?([\d.)]*)(?!.+xbox)/i,e.Windows,c],[/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d.;]*)/i,e.Windows,c],[/windows ce\/?([\d.]*)/i,e.Windows,c],[/[adehimnop]{4,7}\b(?:.*os (\w+) like mac|; opera)/i,e.iOS,w],[/(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w.]+)/i,e.iOS,w],[/cfnetwork\/.+darwin/i,e.iOS,w],[/mac os x ?([\w. ]*)/i,e.MacOS,w],[/(?:macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i,e.MacOS,w],[/droid ([\w.]+)\b.+(android[- ]x86)/i,e.Android],[/android\w*[-\/.; ]?([\d.]*)/i,e.Android]],d=[[/windows.+ edge\/([\w.]+)/i,i.EdgeHTML],[/arkweb\/([\w.]+)/i,i.ArkWeb],[/webkit\/537\.36.+chrome\/(?!27)([\w.]+)/i,i.Blink],[/presto\/([\w.]+)/i,i.Presto],[/webkit\/([\w.]+)/i,i.WebKit],[/trident\/([\w.]+)/i,i.Trident],[/netfront\/([\w.]+)/i,i.NetFront],[/khtml[\/ ]\(?([\w.]+)/i,i.KHTML],[/tasman[\/ ]\(?([\w.]+)/i,i.Tasman],[/rv:([\w.]{1,9})\b.+gecko/i,i.Gecko]],m=[[/\b(?:crmo|crios)\/([\w.]+)/i,n.Chrome],[/webview.+edge\/([\w.]+)/i,n.Edge],[/edg(?:e|ios|a)?\/([\w.]+)/i,n.Edge],[/opera mini\/([-\w.]+)/i,n.Opera],[/opera [mobileta]{3,6}\b.+version\/([-\w.]+)/i,n.Opera],[/opera(?:.+version\/|[\/ ]+)([\w.]+)/i,n.Opera],[/opios[\/ ]+([\w.]+)/i,n.Opera],[/\bop(?:rg)?x\/([\w.]+)/i,n.Opera],[/\bopr\/([\w.]+)/i,n.Opera],[/iemobile(?:browser|boat|jet)[\/ ]?([\d.]*)/i,n.IE],[/(?:ms|\()ie ([\w.]+)/i,n.IE],[/trident.+rv[: ]([\w.]{1,9})\b.+like gecko/i,n.IE],[/\bfocus\/([\w.]+)/i,n.Firefox],[/\bopt\/([\w.]+)/i,n.Opera],[/coast\/([\w.]+)/i,n.Opera],[/fxios\/([\w.-]+)/i,n.Firefox],[/samsungbrowser\/([\w.]+)/i,n.SamsungInternet],[/headlesschrome(?:\/([\w.]+)| )/i,n.Chrome],[/wv\).+chrome\/([\w.]+).+edgw\//i,n.Edge],[/ wv\).+(chrome)\/([\w.]+)/i,n.Chrome],[/chrome\/([\w.]+) mobile/i,n.Chrome],[/chrome\/v?([\w.]+)/i,n.Chrome],[/version\/([\w.,]+) .*mobile(?:\/\w+ | ?)safari/i,n.Safari],[/iphone .*mobile(?:\/\w+ | ?)safari/i,n.Safari],[/version\/([\w.,]+) .*safari/i,n.Safari],[/webkit.+?(?:mobile ?safari|safari)(\/[\w.]+)/i,n.Safari,"1"],[/(?:mobile|tablet);.*firefox\/([\w.-]+)/i,n.Firefox],[/mobile vr; rv:([\w.]+)\).+firefox/i,n.Firefox],[/firefox\/([\w.]+)/i,n.Firefox]];function c(o){if(void 0===o)return"";var e={"4.90":"ME","NT3.51":"NT 3.11","NT4.0":"NT 4.0","NT 5.0":"2000","NT 5.1":"XP","NT 5.2":"XP","NT 6.0":"Vista","NT 6.1":"7","NT 6.2":"8","NT 6.3":"8.1","NT 6.4":"10","NT 10.0":"10",ARM:"RT"}[o];return void 0!==e?e:o}function w(o){return void 0===o?"":o.replace(/_/g,".")}function u(o,e){return 10===o.major&&0===o.minor&&o.build>=22e3?"11":10===o.major&&0===o.minor&&o.build<22e3?"10":6===o.major&&3===o.minor?"8.1":6===o.major&&2===o.minor?"8":6===o.major&&1===o.minor?"7":6===o.major&&0===o.minor?"Vista":5===o.major&&1===o.minor||5===o.major&&2===o.minor?"XP":5===o.major&&0===o.minor?"2000":4===o.major&&90===o.minor?"ME":4===o.major&&0===o.minor?"NT 4.0":3===o.major&&51===o.minor?"NT 3.11":e}function b(o,e){return"function"==typeof e?e(o):"string"==typeof e?e:void 0===o?"":o}function f(o){var e=o.split(".");return{major:parseInt(e[0]||"0"),minor:parseInt(e[1]||"0"),build:parseInt(e[2]||"0")}}(void 0!==globalThis.process&&void 0!==globalThis.process.versions&&void 0!==globalThis.process.versions.electron||/ electron\//i.test(t))&&(s.crossPlatformFramework=a.Electron),void 0!==globalThis.navigator&&"ReactNative"===globalThis.navigator.product&&(s.crossPlatformFramework=a.ReactNative);for(var g=0;g<l.length;g++){var p=(k=l[g])[0],v=k[1],h=k[2];if(null!==(T=s.userAgent.match(p))){s.os=v,s.osVersion=b(T[1],h);break}}s.os===e.iOS&&0===o(s.osVersion,"18.6")&&(null!==(E=/\) Version\/([\d.]+)/.exec(s.userAgent))&&parseInt(E[1].substring(0,2),10)>=26&&(s.osVersion=E[1]));for(g=0;g<d.length;g++){p=(k=d[g])[0];var j=k[1];h=k[2];if(null!==(T=s.userAgent.match(p))){s.engine=j,s.engineVersion=b(T[1],h);break}}for(g=0;g<m.length;g++){p=(k=m[g])[0];var k,T,y=k[1];h=k[2];if(null!==(T=s.userAgent.match(p))){s.browser=y,s.browserVersion=b(T[1],h);break}}if(s.crossPlatformFramework===a.ReactNative)try{v=(S=require("react-native").Platform).OS;var E=f(x=""+S.Version);switch(v){case"android":s.os=e.Android,s.osVersion=function(o,e){return o.major>=36?"16":35===o.major?"15":34===o.major?"14":33===o.major?"13":32===o.major?"12.1":31===o.major?"12":30===o.major?"11":29===o.major?"10":28===o.major?"9":27===o.major?"8.1":26===o.major?"8.0":25===o.major?"7.1":24===o.major?"7.0":23===o.major?"6.0":22===o.major?"5.1":21===o.major?"5.0":20===o.major||19===o.major?"4.4":18===o.major?"4.3":17===o.major?"4.2":16===o.major?"4.1":15===o.major?"4.0.3":14===o.major?"4.0":13===o.major?"3.2":12===o.major?"3.1":11===o.major?"3.0":10===o.major?"2.3.3":9===o.major?"2.3":8===o.major?"2.2":7===o.major?"2.1":6===o.major?"2.0.1":5===o.major?"2.0":4===o.major?"1.6":3===o.major?"1.5":2===o.major?"1.1":1===o.major?"1.0":e}(E,x);break;case"ios":s.os=e.iOS,s.osVersion=x;break;case"windows":s.os=e.Windows,s.osVersion=u(E,x);break;case"macos":s.os=e.MacOS,s.osVersion=x}}catch(o){}if(s.isNode)try{var x,S=(v=require("os")).platform();E=f(x=v.release());switch(S){case"win32":s.os=e.Windows,s.osVersion=u(E,x);break;case"darwin":s.os=e.MacOS,s.osVersion=function(o,e){return o.major>=24?o.major-9+"."+o.minor+"."+o.build:23===o.major?"14."+o.minor+"."+o.build:22===o.major?"13."+o.minor+"."+o.build:21===o.major?"12."+o.minor+"."+o.build:20===o.major?"11."+o.minor+"."+o.build:19===o.major?"10.15."+o.minor:18===o.major?"10.14."+o.minor:17===o.major?"10.13."+o.minor:16===o.major?"10.12."+o.minor:15===o.major?"10.11."+o.minor:14===o.major?"10.10."+o.minor:13===o.major?"10.9."+o.minor:o.major>=5&&o.major<=12?"10."+(o.major-4)+"."+o.minor:e}(E,x);break;case"android":s.os=e.Android,s.osVersion=x;break;case"linux":/android/i.test(x)&&(s.os=e.Android,s.osVersion=x)}}catch(o){}function V(o){var r,i=function(){try{if(globalThis.top&&globalThis.top!==window)return globalThis.top.location.href,globalThis.top}catch(o){}return window}(),n=i.document;try{if(void 0===(r=function(o,e){if(void 0===e&&(e=!0),void 0!==globalThis.document){var r=globalThis.document.createElement(o);return"width"in r&&(r.width="0"),"height"in r&&(r.height="0"),"border"in r&&(r.border="0"),"frameBorder"in r&&(r.frameBorder="0"),"scrolling"in r&&(r.scrolling="no"),"cellPadding"in r&&(r.cellPadding="0"),"cellSpacing"in r&&(r.cellSpacing="0"),"frame"in r&&(r.frame="void"),"rules"in r&&(r.rules="none"),"noWrap"in r&&(r.noWrap=!0),r.tabIndex=-1,r.setAttribute("role","presentation"),e?(r.style.width="1px",r.style.height="1px"):(r.setAttribute("aria-hidden","true"),r.style.width="0",r.style.height="0",r.style.zIndex="-9999",r.style.display="none",r.style.visibility="hidden",r.style.pointerEvents="none"),r.style.position="absolute",r.style.top="0",r.style.left="0",r.style.padding="0",r.style.margin="0",r.style.border="none",r.style.outline="none",r.style.clip="rect(1px, 1px, 1px, 1px)",r.style.clipPath="inset(50%)",r.style.overflow="hidden",r.style.whiteSpace="nowrap",r}}("input")))return;if(r.type="file",r.accept=o+"/*","capture"in HTMLInputElement.prototype)r.capture="user";else if(s.os===e.Android){var a="";"image"===o?a="camera":"video"===o&&(a="camcorder"),r.accept=o+"/*;capture="+a}n.body.appendChild(r),function(o,e){var r;void 0===e&&(e=window);try{r=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:e})}catch(o){(r=globalThis.document.createEvent("MouseEvents")).initMouseEvent("click",!0,!0,e,0,0,0,0,0,!1,!1,!1,!1,0,null)}o.dispatchEvent(r)}(r,i)}catch(o){}}void 0!==globalThis.document&&globalThis.document.addEventListener("deviceready",(function(){if(s.crossPlatformFramework=a.Cordova,s.os===e.Unknown&&void 0!==globalThis.device){switch(globalThis.device.platform){case"Android":s.os=e.Android;break;case"iOS":s.os=e.iOS}s.osVersion=globalThis.device.version}}),!1),void 0!==navigator.userAgentData&&void 0!==navigator.userAgentData.getHighEntropyValues&&navigator.userAgentData.getHighEntropyValues(["brands","fullVersionList","mobile","model","platform","platformVersion","architecture","formFactors","bitness","uaFullVersion","wow64"]).then((function(o){for(var r,i=o.fullVersionList||o.brands||[],n=o.platformVersion,a=0;a<i.length;a++){var t=null==(r=i[a])?{brand:"",version:""}:"string"==typeof r?{brand:r,version:""}:{brand:r.brand,version:r.version},l=t.brand,d=t.version;/not.a.brand/i.test(l)||"Chromium"===l&&(s.engineVersion=d)}"string"==typeof n&&(s.os===e.Windows&&parseInt(n.replace(/[^\d.]/g,"").split(".")[0],10)>=13?s.osVersion="11":s.osVersion=n)})),s.device=s.os===e.iOS||s.os===e.Android?r.Mobile:s.os===e.Windows||s.os===e.MacOS?r.Desktop:r.Unknown,s.isMobile=s.device===r.Mobile,s.isDesktop=s.device===r.Desktop,s.isStandalone=function(o){return"matchMedia"in globalThis&&(o===e.iOS?"standalone"in navigator&&!!navigator.standalone:globalThis.matchMedia("(display-mode: standalone)").matches)}(s.os);var A,N={open:function(r){s.os===e.Android?V(r):s.os===e.iOS&&(o(s.osVersion,"10.3")>=0?V(r):alert(s.osVersion))}};return function(o){o.Image="image",o.Video="video"}(A||(A={})),{installed:!1,name:"Camera",module:N,Constants:{CameraType:A},Errors:{}}}));