flowboard-react 0.6.2 → 0.6.4

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 (88) hide show
  1. package/README.md +185 -52
  2. package/app.plugin.js +341 -0
  3. package/bin/setup.js +428 -0
  4. package/lib/module/FlowboardProvider.js +1 -1
  5. package/lib/module/FlowboardProvider.js.map +1 -1
  6. package/lib/module/components/FlowboardFlow.js +6 -6
  7. package/lib/module/components/FlowboardFlow.js.map +1 -1
  8. package/lib/module/components/FlowboardRenderer.js +6 -6
  9. package/lib/module/components/FlowboardRenderer.js.map +1 -1
  10. package/lib/module/core/clientContext.js +10 -29
  11. package/lib/module/core/clientContext.js.map +1 -1
  12. package/lib/module/core/fontAwesome.js +2 -9
  13. package/lib/module/core/fontAwesome.js.map +1 -1
  14. package/lib/module/core/onboardingRepository.js +13 -13
  15. package/lib/module/core/onboardingRepository.js.map +1 -1
  16. package/lib/module/native/asyncStorage.js +55 -0
  17. package/lib/module/native/asyncStorage.js.map +1 -0
  18. package/lib/module/native/deviceInfo.js +46 -0
  19. package/lib/module/native/deviceInfo.js.map +1 -0
  20. package/lib/module/native/inAppReview.js +17 -0
  21. package/lib/module/native/inAppReview.js.map +1 -0
  22. package/lib/module/native/linearGradient.js +29 -0
  23. package/lib/module/native/linearGradient.js.map +1 -0
  24. package/lib/module/native/lottie.js +20 -0
  25. package/lib/module/native/lottie.js.map +1 -0
  26. package/lib/module/native/maskedView.js +26 -0
  27. package/lib/module/native/maskedView.js.map +1 -0
  28. package/lib/module/native/pagerView.js +79 -0
  29. package/lib/module/native/pagerView.js.map +1 -0
  30. package/lib/module/native/permissions.js +30 -0
  31. package/lib/module/native/permissions.js.map +1 -0
  32. package/lib/module/native/runtime.js +81 -0
  33. package/lib/module/native/runtime.js.map +1 -0
  34. package/lib/module/native/safeAreaContext.js +43 -0
  35. package/lib/module/native/safeAreaContext.js.map +1 -0
  36. package/lib/module/native/svg.js +83 -0
  37. package/lib/module/native/svg.js.map +1 -0
  38. package/lib/module/native/vectorIcons.js +41 -0
  39. package/lib/module/native/vectorIcons.js.map +1 -0
  40. package/lib/typescript/src/components/FlowboardFlow.d.ts.map +1 -1
  41. package/lib/typescript/src/components/FlowboardRenderer.d.ts.map +1 -1
  42. package/lib/typescript/src/core/clientContext.d.ts.map +1 -1
  43. package/lib/typescript/src/core/fontAwesome.d.ts +1 -1
  44. package/lib/typescript/src/core/fontAwesome.d.ts.map +1 -1
  45. package/lib/typescript/src/core/onboardingRepository.d.ts.map +1 -1
  46. package/lib/typescript/src/native/asyncStorage.d.ts +16 -0
  47. package/lib/typescript/src/native/asyncStorage.d.ts.map +1 -0
  48. package/lib/typescript/src/native/deviceInfo.d.ts +11 -0
  49. package/lib/typescript/src/native/deviceInfo.d.ts.map +1 -0
  50. package/lib/typescript/src/native/inAppReview.d.ts +4 -0
  51. package/lib/typescript/src/native/inAppReview.d.ts.map +1 -0
  52. package/lib/typescript/src/native/linearGradient.d.ts +3 -0
  53. package/lib/typescript/src/native/linearGradient.d.ts.map +1 -0
  54. package/lib/typescript/src/native/lottie.d.ts +3 -0
  55. package/lib/typescript/src/native/lottie.d.ts.map +1 -0
  56. package/lib/typescript/src/native/maskedView.d.ts +3 -0
  57. package/lib/typescript/src/native/maskedView.d.ts.map +1 -0
  58. package/lib/typescript/src/native/pagerView.d.ts +14 -0
  59. package/lib/typescript/src/native/pagerView.d.ts.map +1 -0
  60. package/lib/typescript/src/native/permissions.d.ts +9 -0
  61. package/lib/typescript/src/native/permissions.d.ts.map +1 -0
  62. package/lib/typescript/src/native/runtime.d.ts +13 -0
  63. package/lib/typescript/src/native/runtime.d.ts.map +1 -0
  64. package/lib/typescript/src/native/safeAreaContext.d.ts +15 -0
  65. package/lib/typescript/src/native/safeAreaContext.d.ts.map +1 -0
  66. package/lib/typescript/src/native/svg.d.ts +8 -0
  67. package/lib/typescript/src/native/svg.d.ts.map +1 -0
  68. package/lib/typescript/src/native/vectorIcons.d.ts +4 -0
  69. package/lib/typescript/src/native/vectorIcons.d.ts.map +1 -0
  70. package/package.json +21 -14
  71. package/src/FlowboardProvider.tsx +1 -1
  72. package/src/components/FlowboardFlow.tsx +10 -7
  73. package/src/components/FlowboardRenderer.tsx +8 -13
  74. package/src/core/clientContext.ts +10 -32
  75. package/src/core/fontAwesome.ts +2 -9
  76. package/src/core/onboardingRepository.ts +18 -13
  77. package/src/native/asyncStorage.ts +99 -0
  78. package/src/native/deviceInfo.ts +88 -0
  79. package/src/native/inAppReview.ts +34 -0
  80. package/src/native/linearGradient.tsx +24 -0
  81. package/src/native/lottie.tsx +17 -0
  82. package/src/native/maskedView.tsx +19 -0
  83. package/src/native/pagerView.tsx +95 -0
  84. package/src/native/permissions.ts +59 -0
  85. package/src/native/runtime.ts +110 -0
  86. package/src/native/safeAreaContext.tsx +44 -0
  87. package/src/native/svg.tsx +82 -0
  88. package/src/native/vectorIcons.tsx +50 -0
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import AsyncStorage from '@react-native-async-storage/async-storage';
4
- import DeviceInfo from 'react-native-device-info';
5
3
  import { Platform } from 'react-native';
6
4
  import { v4 as uuidv4 } from 'uuid';
7
5
  import 'react-native-get-random-values';
6
+ import { FlowboardAsyncStorage } from "../native/asyncStorage.js";
7
+ import { FlowboardDeviceInfo } from "../native/deviceInfo.js";
8
8
  const INSTALL_ID_KEY = 'flowboard_install_id';
9
9
  export class ClientContext {
10
10
  constructor(data) {
@@ -20,14 +20,14 @@ export class ClientContext {
20
20
  }
21
21
  static async create() {
22
22
  const installId = await getOrCreateInstallId();
23
- const appVersion = DeviceInfo.getVersion();
24
- const buildNumber = DeviceInfo.getBuildNumber();
25
- const bundleId = DeviceInfo.getBundleId();
26
- const locale = await getDeviceLocale();
23
+ const appVersion = FlowboardDeviceInfo.getVersion();
24
+ const buildNumber = FlowboardDeviceInfo.getBuildNumber();
25
+ const bundleId = FlowboardDeviceInfo.getBundleId();
26
+ const locale = await FlowboardDeviceInfo.getDeviceLocale();
27
27
  const country = locale.includes('_') ? locale.split('_').pop() ?? '' : '';
28
28
  const os = Platform.OS;
29
- const osVersion = DeviceInfo.getSystemVersion();
30
- const deviceType = mapDeviceType(await DeviceInfo.getDeviceType());
29
+ const osVersion = FlowboardDeviceInfo.getSystemVersion();
30
+ const deviceType = mapDeviceType(await FlowboardDeviceInfo.getDeviceType());
31
31
  return new ClientContext({
32
32
  appVersion,
33
33
  buildNumber,
@@ -63,31 +63,12 @@ export class ClientContext {
63
63
  }
64
64
  }
65
65
  async function getOrCreateInstallId() {
66
- const stored = await AsyncStorage.getItem(INSTALL_ID_KEY);
66
+ const stored = await FlowboardAsyncStorage.getItem(INSTALL_ID_KEY);
67
67
  if (stored) return stored;
68
68
  const installId = uuidv4();
69
- await AsyncStorage.setItem(INSTALL_ID_KEY, installId);
69
+ await FlowboardAsyncStorage.setItem(INSTALL_ID_KEY, installId);
70
70
  return installId;
71
71
  }
72
- async function getDeviceLocale() {
73
- const deviceInfoAny = DeviceInfo;
74
- if (typeof deviceInfoAny.getDeviceLocale === 'function') {
75
- const locale = await deviceInfoAny.getDeviceLocale();
76
- if (locale) return locale;
77
- }
78
- if (typeof deviceInfoAny.getDeviceLocales === 'function') {
79
- const locales = await deviceInfoAny.getDeviceLocales();
80
- if (Array.isArray(locales) && locales.length > 0) {
81
- const first = locales[0];
82
- if (typeof first === 'string') return first;
83
- if (first?.languageTag) return first.languageTag;
84
- if (first?.languageCode) {
85
- return first.countryCode ? `${first.languageCode}_${first.countryCode}` : first.languageCode;
86
- }
87
- }
88
- }
89
- return 'en_US';
90
- }
91
72
  function mapDeviceType(deviceType) {
92
73
  switch (deviceType?.toLowerCase()) {
93
74
  case 'handset':
@@ -1 +1 @@
1
- {"version":3,"names":["AsyncStorage","DeviceInfo","Platform","v4","uuidv4","INSTALL_ID_KEY","ClientContext","constructor","data","appVersion","buildNumber","locale","country","os","osVersion","deviceType","installId","bundleId","create","getOrCreateInstallId","getVersion","getBuildNumber","getBundleId","getDeviceLocale","includes","split","pop","OS","getSystemVersion","mapDeviceType","getDeviceType","toJson","app","version","build","user","platform","device","stored","getItem","setItem","deviceInfoAny","getDeviceLocales","locales","Array","isArray","length","first","languageTag","languageCode","countryCode","toLowerCase"],"sourceRoot":"../../../src","sources":["core/clientContext.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","v4","uuidv4","FlowboardAsyncStorage","FlowboardDeviceInfo","INSTALL_ID_KEY","ClientContext","constructor","data","appVersion","buildNumber","locale","country","os","osVersion","deviceType","installId","bundleId","create","getOrCreateInstallId","getVersion","getBuildNumber","getBundleId","getDeviceLocale","includes","split","pop","OS","getSystemVersion","mapDeviceType","getDeviceType","toJson","app","version","build","user","platform","device","stored","getItem","setItem","toLowerCase"],"sourceRoot":"../../../src","sources":["core/clientContext.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import FontAwesome6 from 'react-native-vector-icons/FontAwesome6';
3
+ import { FontAwesome6, getFontAwesomeGlyphMap } from "../native/vectorIcons.js";
4
4
  const hexRegex = /^(0x)?[a-fA-F0-9]{4,5}$/;
5
5
  export function resolveFontAwesomeIcon(name, style = 'solid') {
6
6
  if (!name) return {
@@ -47,14 +47,7 @@ export function resolveFontAwesomeIcon(name, style = 'solid') {
47
47
  };
48
48
  }
49
49
  function getGlyphMap() {
50
- const anyIcon = FontAwesome6;
51
- if (typeof anyIcon.getRawGlyphMap === 'function') {
52
- return anyIcon.getRawGlyphMap();
53
- }
54
- if (anyIcon.glyphMap) {
55
- return anyIcon.glyphMap;
56
- }
57
- return null;
50
+ return getFontAwesomeGlyphMap();
58
51
  }
59
52
  function styleProps(style) {
60
53
  const normalized = style.toLowerCase().replace(/-/g, '');
@@ -1 +1 @@
1
- {"version":3,"names":["FontAwesome6","hexRegex","resolveFontAwesomeIcon","name","style","props","styleProps","test","codePoint","parseInt","replace","glyphMap","getGlyphMap","fallback","iconName","value","Object","entries","toLowerCase","startsWith","includes","anyIcon","getRawGlyphMap","normalized","brand","regular","light","thin","duotone","sharp","solid"],"sourceRoot":"../../../src","sources":["core/fontAwesome.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FontAwesome6","getFontAwesomeGlyphMap","hexRegex","resolveFontAwesomeIcon","name","style","props","styleProps","test","codePoint","parseInt","replace","glyphMap","getGlyphMap","fallback","iconName","value","Object","entries","toLowerCase","startsWith","includes","normalized","brand","regular","light","thin","duotone","sharp","solid"],"sourceRoot":"../../../src","sources":["core/fontAwesome.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import AsyncStorage from '@react-native-async-storage/async-storage';
3
+ import { FlowboardAsyncStorage } from "../native/asyncStorage.js";
4
4
  const STORAGE_KEY = 'flowboard_onboarding_json';
5
5
  const FETCH_TIME_KEY = 'flowboard_fetch_time';
6
6
  const PROGRESS_FLOW_KEY = 'flowboard_progress_flow_id';
@@ -8,11 +8,11 @@ const PROGRESS_STEP_KEY = 'flowboard_progress_step';
8
8
  const PROGRESS_FORM_DATA_KEY = 'flowboard_progress_form_data';
9
9
  export class OnboardingRepository {
10
10
  async saveOnboardingJson(json) {
11
- await AsyncStorage.setItem(STORAGE_KEY, JSON.stringify(json));
12
- await AsyncStorage.setItem(FETCH_TIME_KEY, Date.now().toString());
11
+ await FlowboardAsyncStorage.setItem(STORAGE_KEY, JSON.stringify(json));
12
+ await FlowboardAsyncStorage.setItem(FETCH_TIME_KEY, Date.now().toString());
13
13
  }
14
14
  async getOnboardingJson() {
15
- const jsonString = await AsyncStorage.getItem(STORAGE_KEY);
15
+ const jsonString = await FlowboardAsyncStorage.getItem(STORAGE_KEY);
16
16
  if (!jsonString) return null;
17
17
  try {
18
18
  return JSON.parse(jsonString);
@@ -22,25 +22,25 @@ export class OnboardingRepository {
22
22
  }
23
23
  }
24
24
  async clearOnboardingJson() {
25
- await AsyncStorage.multiRemove([STORAGE_KEY, FETCH_TIME_KEY]);
25
+ await FlowboardAsyncStorage.multiRemove([STORAGE_KEY, FETCH_TIME_KEY]);
26
26
  }
27
27
  async saveProgress(params) {
28
- await AsyncStorage.setItem(PROGRESS_FLOW_KEY, params.flowId);
29
- await AsyncStorage.setItem(PROGRESS_STEP_KEY, params.stepIndex.toString());
30
- await AsyncStorage.setItem(PROGRESS_FORM_DATA_KEY, JSON.stringify(params.formData));
28
+ await FlowboardAsyncStorage.setItem(PROGRESS_FLOW_KEY, params.flowId);
29
+ await FlowboardAsyncStorage.setItem(PROGRESS_STEP_KEY, params.stepIndex.toString());
30
+ await FlowboardAsyncStorage.setItem(PROGRESS_FORM_DATA_KEY, JSON.stringify(params.formData));
31
31
  }
32
32
  async getProgressStepForFlow(flowId) {
33
- const storedFlowId = await AsyncStorage.getItem(PROGRESS_FLOW_KEY);
33
+ const storedFlowId = await FlowboardAsyncStorage.getItem(PROGRESS_FLOW_KEY);
34
34
  if (storedFlowId !== flowId) return null;
35
- const value = await AsyncStorage.getItem(PROGRESS_STEP_KEY);
35
+ const value = await FlowboardAsyncStorage.getItem(PROGRESS_STEP_KEY);
36
36
  if (!value) return null;
37
37
  const parsed = Number(value);
38
38
  return Number.isNaN(parsed) ? null : parsed;
39
39
  }
40
40
  async getProgressFormDataForFlow(flowId) {
41
- const storedFlowId = await AsyncStorage.getItem(PROGRESS_FLOW_KEY);
41
+ const storedFlowId = await FlowboardAsyncStorage.getItem(PROGRESS_FLOW_KEY);
42
42
  if (storedFlowId !== flowId) return null;
43
- const jsonString = await AsyncStorage.getItem(PROGRESS_FORM_DATA_KEY);
43
+ const jsonString = await FlowboardAsyncStorage.getItem(PROGRESS_FORM_DATA_KEY);
44
44
  if (!jsonString) return null;
45
45
  try {
46
46
  const decoded = JSON.parse(jsonString);
@@ -56,7 +56,7 @@ export class OnboardingRepository {
56
56
  }
57
57
  }
58
58
  async clearProgress() {
59
- await AsyncStorage.multiRemove([PROGRESS_FLOW_KEY, PROGRESS_STEP_KEY, PROGRESS_FORM_DATA_KEY]);
59
+ await FlowboardAsyncStorage.multiRemove([PROGRESS_FLOW_KEY, PROGRESS_STEP_KEY, PROGRESS_FORM_DATA_KEY]);
60
60
  }
61
61
  }
62
62
  //# sourceMappingURL=onboardingRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AsyncStorage","STORAGE_KEY","FETCH_TIME_KEY","PROGRESS_FLOW_KEY","PROGRESS_STEP_KEY","PROGRESS_FORM_DATA_KEY","OnboardingRepository","saveOnboardingJson","json","setItem","JSON","stringify","Date","now","toString","getOnboardingJson","jsonString","getItem","parse","clearOnboardingJson","multiRemove","saveProgress","params","flowId","stepIndex","formData","getProgressStepForFlow","storedFlowId","value","parsed","Number","isNaN","getProgressFormDataForFlow","decoded","clearProgress"],"sourceRoot":"../../../src","sources":["core/onboardingRepository.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FlowboardAsyncStorage","STORAGE_KEY","FETCH_TIME_KEY","PROGRESS_FLOW_KEY","PROGRESS_STEP_KEY","PROGRESS_FORM_DATA_KEY","OnboardingRepository","saveOnboardingJson","json","setItem","JSON","stringify","Date","now","toString","getOnboardingJson","jsonString","getItem","parse","clearOnboardingJson","multiRemove","saveProgress","params","flowId","stepIndex","formData","getProgressStepForFlow","storedFlowId","value","parsed","Number","isNaN","getProgressFormDataForFlow","decoded","clearProgress"],"sourceRoot":"../../../src","sources":["core/onboardingRepository.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ import AsyncStorage from '@react-native-async-storage/async-storage';
4
+ import { hasNativeModule, safeAsync } from "./runtime.js";
5
+ const memoryStore = new Map();
6
+ const warning = 'AsyncStorage is unavailable. Flowboard will fall back to in-memory storage until native setup is fixed.';
7
+ export const asyncStorageAvailable = hasNativeModule('RNCAsyncStorage', 'RNC_AsyncSQLiteDBStorage', 'AsyncSQLiteDBStorage', 'AsyncLocalStorage', 'PlatformLocalStorage');
8
+ function getMemoryValue(key) {
9
+ return memoryStore.has(key) ? memoryStore.get(key) ?? null : null;
10
+ }
11
+ async function getItem(key) {
12
+ const fallback = getMemoryValue(key);
13
+ return safeAsync('native-async-storage-get', asyncStorageAvailable, async () => {
14
+ const value = await AsyncStorage.getItem(key);
15
+ if (typeof value === 'string') {
16
+ memoryStore.set(key, value);
17
+ }
18
+ return value ?? fallback;
19
+ }, fallback, warning);
20
+ }
21
+ async function setItem(key, value) {
22
+ memoryStore.set(key, value);
23
+ await safeAsync('native-async-storage-set', asyncStorageAvailable, async () => {
24
+ await AsyncStorage.setItem(key, value);
25
+ }, undefined, warning);
26
+ }
27
+ async function removeItem(key) {
28
+ memoryStore.delete(key);
29
+ await safeAsync('native-async-storage-remove', asyncStorageAvailable, async () => {
30
+ await AsyncStorage.removeItem(key);
31
+ }, undefined, warning);
32
+ }
33
+ async function multiRemove(keys) {
34
+ keys.forEach(key => memoryStore.delete(key));
35
+ await safeAsync('native-async-storage-multi-remove', asyncStorageAvailable, async () => {
36
+ await AsyncStorage.multiRemove(keys);
37
+ }, undefined, warning);
38
+ }
39
+ async function clear() {
40
+ memoryStore.clear();
41
+ await safeAsync('native-async-storage-clear', asyncStorageAvailable, async () => {
42
+ if (typeof AsyncStorage.clear === 'function') {
43
+ await AsyncStorage.clear();
44
+ }
45
+ }, undefined, warning);
46
+ }
47
+ export const FlowboardAsyncStorage = {
48
+ available: asyncStorageAvailable,
49
+ clear,
50
+ getItem,
51
+ multiRemove,
52
+ removeItem,
53
+ setItem
54
+ };
55
+ //# sourceMappingURL=asyncStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AsyncStorage","hasNativeModule","safeAsync","memoryStore","Map","warning","asyncStorageAvailable","getMemoryValue","key","has","get","getItem","fallback","value","set","setItem","undefined","removeItem","delete","multiRemove","keys","forEach","clear","FlowboardAsyncStorage","available"],"sourceRoot":"../../../src","sources":["native/asyncStorage.ts"],"mappings":";;AAAA,OAAOA,YAAY,MAAM,2CAA2C;AACpE,SAASC,eAAe,EAAEC,SAAS,QAAQ,cAAW;AAEtD,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAAiB,CAAC;AAE7C,MAAMC,OAAO,GACX,yGAAyG;AAE3G,OAAO,MAAMC,qBAAqB,GAAGL,eAAe,CAClD,iBAAiB,EACjB,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,sBACF,CAAC;AAED,SAASM,cAAcA,CAACC,GAAW,EAAiB;EAClD,OAAOL,WAAW,CAACM,GAAG,CAACD,GAAG,CAAC,GAAGL,WAAW,CAACO,GAAG,CAACF,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI;AACnE;AAEA,eAAeG,OAAOA,CAACH,GAAW,EAA0B;EAC1D,MAAMI,QAAQ,GAAGL,cAAc,CAACC,GAAG,CAAC;EACpC,OAAON,SAAS,CACd,0BAA0B,EAC1BI,qBAAqB,EACrB,YAAY;IACV,MAAMO,KAAK,GAAG,MAAMb,YAAY,CAACW,OAAO,CAACH,GAAG,CAAC;IAC7C,IAAI,OAAOK,KAAK,KAAK,QAAQ,EAAE;MAC7BV,WAAW,CAACW,GAAG,CAACN,GAAG,EAAEK,KAAK,CAAC;IAC7B;IACA,OAAOA,KAAK,IAAID,QAAQ;EAC1B,CAAC,EACDA,QAAQ,EACRP,OACF,CAAC;AACH;AAEA,eAAeU,OAAOA,CAACP,GAAW,EAAEK,KAAa,EAAiB;EAChEV,WAAW,CAACW,GAAG,CAACN,GAAG,EAAEK,KAAK,CAAC;EAC3B,MAAMX,SAAS,CACb,0BAA0B,EAC1BI,qBAAqB,EACrB,YAAY;IACV,MAAMN,YAAY,CAACe,OAAO,CAACP,GAAG,EAAEK,KAAK,CAAC;EACxC,CAAC,EACDG,SAAS,EACTX,OACF,CAAC;AACH;AAEA,eAAeY,UAAUA,CAACT,GAAW,EAAiB;EACpDL,WAAW,CAACe,MAAM,CAACV,GAAG,CAAC;EACvB,MAAMN,SAAS,CACb,6BAA6B,EAC7BI,qBAAqB,EACrB,YAAY;IACV,MAAMN,YAAY,CAACiB,UAAU,CAACT,GAAG,CAAC;EACpC,CAAC,EACDQ,SAAS,EACTX,OACF,CAAC;AACH;AAEA,eAAec,WAAWA,CAACC,IAAc,EAAiB;EACxDA,IAAI,CAACC,OAAO,CAAEb,GAAG,IAAKL,WAAW,CAACe,MAAM,CAACV,GAAG,CAAC,CAAC;EAC9C,MAAMN,SAAS,CACb,mCAAmC,EACnCI,qBAAqB,EACrB,YAAY;IACV,MAAMN,YAAY,CAACmB,WAAW,CAACC,IAAI,CAAC;EACtC,CAAC,EACDJ,SAAS,EACTX,OACF,CAAC;AACH;AAEA,eAAeiB,KAAKA,CAAA,EAAkB;EACpCnB,WAAW,CAACmB,KAAK,CAAC,CAAC;EACnB,MAAMpB,SAAS,CACb,4BAA4B,EAC5BI,qBAAqB,EACrB,YAAY;IACV,IAAI,OAAQN,YAAY,CAASsB,KAAK,KAAK,UAAU,EAAE;MACrD,MAAOtB,YAAY,CAASsB,KAAK,CAAC,CAAC;IACrC;EACF,CAAC,EACDN,SAAS,EACTX,OACF,CAAC;AACH;AAEA,OAAO,MAAMkB,qBAAqB,GAAG;EACnCC,SAAS,EAAElB,qBAAqB;EAChCgB,KAAK;EACLX,OAAO;EACPQ,WAAW;EACXF,UAAU;EACVF;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ import DeviceInfo from 'react-native-device-info';
4
+ import { hasNativeModule, safeAsync, safeSync } from "./runtime.js";
5
+ const warning = 'react-native-device-info is unavailable. Flowboard will use generic device metadata until native setup is fixed.';
6
+ const nativeDeviceInfo = DeviceInfo;
7
+ export const deviceInfoAvailable = hasNativeModule('RNDeviceInfo');
8
+ export const FlowboardDeviceInfo = {
9
+ available: deviceInfoAvailable,
10
+ getBuildNumber() {
11
+ return safeSync('native-device-info-build-number', deviceInfoAvailable, () => String(nativeDeviceInfo.getBuildNumber?.() ?? '1'), '1', warning);
12
+ },
13
+ async getDeviceLocale() {
14
+ return safeAsync('native-device-info-locale', deviceInfoAvailable, async () => {
15
+ if (typeof nativeDeviceInfo.getDeviceLocale === 'function') {
16
+ const locale = await nativeDeviceInfo.getDeviceLocale();
17
+ if (locale) return String(locale);
18
+ }
19
+ if (typeof nativeDeviceInfo.getDeviceLocales === 'function') {
20
+ const locales = await nativeDeviceInfo.getDeviceLocales();
21
+ if (Array.isArray(locales) && locales.length > 0) {
22
+ const first = locales[0];
23
+ if (typeof first === 'string') return first;
24
+ if (first?.languageTag) return String(first.languageTag);
25
+ if (first?.languageCode) {
26
+ return first.countryCode ? `${first.languageCode}_${first.countryCode}` : String(first.languageCode);
27
+ }
28
+ }
29
+ }
30
+ return 'en_US';
31
+ }, 'en_US', warning);
32
+ },
33
+ async getDeviceType() {
34
+ return safeAsync('native-device-info-device-type', deviceInfoAvailable, async () => String((await nativeDeviceInfo.getDeviceType?.()) ?? 'Handset'), 'Handset', warning);
35
+ },
36
+ getBundleId() {
37
+ return safeSync('native-device-info-bundle-id', deviceInfoAvailable, () => String(nativeDeviceInfo.getBundleId?.() ?? 'unknown.bundle'), 'unknown.bundle', warning);
38
+ },
39
+ getSystemVersion() {
40
+ return safeSync('native-device-info-system-version', deviceInfoAvailable, () => String(nativeDeviceInfo.getSystemVersion?.() ?? '0'), '0', warning);
41
+ },
42
+ getVersion() {
43
+ return safeSync('native-device-info-version', deviceInfoAvailable, () => String(nativeDeviceInfo.getVersion?.() ?? '0.0.0'), '0.0.0', warning);
44
+ }
45
+ };
46
+ //# sourceMappingURL=deviceInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeviceInfo","hasNativeModule","safeAsync","safeSync","warning","nativeDeviceInfo","deviceInfoAvailable","FlowboardDeviceInfo","available","getBuildNumber","String","getDeviceLocale","locale","getDeviceLocales","locales","Array","isArray","length","first","languageTag","languageCode","countryCode","getDeviceType","getBundleId","getSystemVersion","getVersion"],"sourceRoot":"../../../src","sources":["native/deviceInfo.ts"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,0BAA0B;AACjD,SAASC,eAAe,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,cAAW;AAEhE,MAAMC,OAAO,GACX,kHAAkH;AACpH,MAAMC,gBAAgB,GAAGL,UAAiB;AAE1C,OAAO,MAAMM,mBAAmB,GAAGL,eAAe,CAAC,cAAc,CAAC;AAElE,OAAO,MAAMM,mBAAmB,GAAG;EACjCC,SAAS,EAAEF,mBAAmB;EAC9BG,cAAcA,CAAA,EAAW;IACvB,OAAON,QAAQ,CACb,iCAAiC,EACjCG,mBAAmB,EACnB,MAAMI,MAAM,CAACL,gBAAgB,CAACI,cAAc,GAAG,CAAC,IAAI,GAAG,CAAC,EACxD,GAAG,EACHL,OACF,CAAC;EACH,CAAC;EACD,MAAMO,eAAeA,CAAA,EAAoB;IACvC,OAAOT,SAAS,CACd,2BAA2B,EAC3BI,mBAAmB,EACnB,YAAY;MACV,IAAI,OAAOD,gBAAgB,CAACM,eAAe,KAAK,UAAU,EAAE;QAC1D,MAAMC,MAAM,GAAG,MAAMP,gBAAgB,CAACM,eAAe,CAAC,CAAC;QACvD,IAAIC,MAAM,EAAE,OAAOF,MAAM,CAACE,MAAM,CAAC;MACnC;MAEA,IAAI,OAAOP,gBAAgB,CAACQ,gBAAgB,KAAK,UAAU,EAAE;QAC3D,MAAMC,OAAO,GAAG,MAAMT,gBAAgB,CAACQ,gBAAgB,CAAC,CAAC;QACzD,IAAIE,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,IAAIA,OAAO,CAACG,MAAM,GAAG,CAAC,EAAE;UAChD,MAAMC,KAAK,GAAGJ,OAAO,CAAC,CAAC,CAAC;UACxB,IAAI,OAAOI,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK;UAC3C,IAAIA,KAAK,EAAEC,WAAW,EAAE,OAAOT,MAAM,CAACQ,KAAK,CAACC,WAAW,CAAC;UACxD,IAAID,KAAK,EAAEE,YAAY,EAAE;YACvB,OAAOF,KAAK,CAACG,WAAW,GACpB,GAAGH,KAAK,CAACE,YAAY,IAAIF,KAAK,CAACG,WAAW,EAAE,GAC5CX,MAAM,CAACQ,KAAK,CAACE,YAAY,CAAC;UAChC;QACF;MACF;MAEA,OAAO,OAAO;IAChB,CAAC,EACD,OAAO,EACPhB,OACF,CAAC;EACH,CAAC;EACD,MAAMkB,aAAaA,CAAA,EAAoB;IACrC,OAAOpB,SAAS,CACd,gCAAgC,EAChCI,mBAAmB,EACnB,YACEI,MAAM,CAAC,CAAC,MAAML,gBAAgB,CAACiB,aAAa,GAAG,CAAC,KAAK,SAAS,CAAC,EACjE,SAAS,EACTlB,OACF,CAAC;EACH,CAAC;EACDmB,WAAWA,CAAA,EAAW;IACpB,OAAOpB,QAAQ,CACb,8BAA8B,EAC9BG,mBAAmB,EACnB,MAAMI,MAAM,CAACL,gBAAgB,CAACkB,WAAW,GAAG,CAAC,IAAI,gBAAgB,CAAC,EAClE,gBAAgB,EAChBnB,OACF,CAAC;EACH,CAAC;EACDoB,gBAAgBA,CAAA,EAAW;IACzB,OAAOrB,QAAQ,CACb,mCAAmC,EACnCG,mBAAmB,EACnB,MAAMI,MAAM,CAACL,gBAAgB,CAACmB,gBAAgB,GAAG,CAAC,IAAI,GAAG,CAAC,EAC1D,GAAG,EACHpB,OACF,CAAC;EACH,CAAC;EACDqB,UAAUA,CAAA,EAAW;IACnB,OAAOtB,QAAQ,CACb,4BAA4B,EAC5BG,mBAAmB,EACnB,MAAMI,MAAM,CAACL,gBAAgB,CAACoB,UAAU,GAAG,CAAC,IAAI,OAAO,CAAC,EACxD,OAAO,EACPrB,OACF,CAAC;EACH;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ import InAppReview from 'react-native-in-app-review';
4
+ import { hasNativeModule, safeAsync, safeSync } from "./runtime.js";
5
+ const warning = 'react-native-in-app-review is unavailable. Flowboard will skip in-app review prompts until native setup is fixed.';
6
+ const nativeInAppReview = InAppReview;
7
+ export const inAppReviewAvailable = hasNativeModule('InAppReviewModule', 'RNInAppReviewIOS');
8
+ export function isInAppReviewAvailable() {
9
+ return safeSync('native-in-app-review-available', inAppReviewAvailable, () => Boolean(nativeInAppReview.isAvailable?.()), false, warning);
10
+ }
11
+ export async function requestInAppReview() {
12
+ return safeAsync('native-in-app-review-request', inAppReviewAvailable, async () => {
13
+ const result = nativeInAppReview.RequestInAppReview?.();
14
+ return typeof result === 'boolean' ? result : Boolean(await result);
15
+ }, false, warning);
16
+ }
17
+ //# sourceMappingURL=inAppReview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["InAppReview","hasNativeModule","safeAsync","safeSync","warning","nativeInAppReview","inAppReviewAvailable","isInAppReviewAvailable","Boolean","isAvailable","requestInAppReview","result","RequestInAppReview"],"sourceRoot":"../../../src","sources":["native/inAppReview.ts"],"mappings":";;AAAA,OAAOA,WAAW,MAAM,4BAA4B;AACpD,SAASC,eAAe,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,cAAW;AAEhE,MAAMC,OAAO,GACX,mHAAmH;AACrH,MAAMC,iBAAiB,GAAGL,WAAkB;AAE5C,OAAO,MAAMM,oBAAoB,GAAGL,eAAe,CACjD,mBAAmB,EACnB,kBACF,CAAC;AAED,OAAO,SAASM,sBAAsBA,CAAA,EAAY;EAChD,OAAOJ,QAAQ,CACb,gCAAgC,EAChCG,oBAAoB,EACpB,MAAME,OAAO,CAACH,iBAAiB,CAACI,WAAW,GAAG,CAAC,CAAC,EAChD,KAAK,EACLL,OACF,CAAC;AACH;AAEA,OAAO,eAAeM,kBAAkBA,CAAA,EAAqB;EAC3D,OAAOR,SAAS,CACd,8BAA8B,EAC9BI,oBAAoB,EACpB,YAAY;IACV,MAAMK,MAAM,GAAGN,iBAAiB,CAACO,kBAAkB,GAAG,CAAC;IACvD,OAAO,OAAOD,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGH,OAAO,CAAC,MAAMG,MAAM,CAAC;EACrE,CAAC,EACD,KAAK,EACLP,OACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ import { View } from 'react-native';
4
+ import NativeLinearGradient from 'react-native-linear-gradient';
5
+ import { hasViewManager, warnOnce } from "./runtime.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const warning = 'react-native-linear-gradient is unavailable. Flowboard will fall back to solid backgrounds until native setup is fixed.';
8
+ export const linearGradientAvailable = hasViewManager('BVLinearGradient');
9
+ export default function LinearGradient(props) {
10
+ if (!linearGradientAvailable) {
11
+ warnOnce('native-linear-gradient', warning);
12
+ const {
13
+ children,
14
+ colors,
15
+ style
16
+ } = props;
17
+ const backgroundColor = Array.isArray(colors) && colors.length > 0 ? colors[0] : undefined;
18
+ return /*#__PURE__*/_jsx(View, {
19
+ style: [style, backgroundColor ? {
20
+ backgroundColor
21
+ } : null],
22
+ children: children
23
+ });
24
+ }
25
+ return /*#__PURE__*/_jsx(NativeLinearGradient, {
26
+ ...props
27
+ });
28
+ }
29
+ //# sourceMappingURL=linearGradient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","NativeLinearGradient","hasViewManager","warnOnce","jsx","_jsx","warning","linearGradientAvailable","LinearGradient","props","children","colors","style","backgroundColor","Array","isArray","length","undefined"],"sourceRoot":"../../../src","sources":["native/linearGradient.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AACnC,OAAOC,oBAAoB,MAAM,8BAA8B;AAC/D,SAASC,cAAc,EAAEC,QAAQ,QAAQ,cAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErD,MAAMC,OAAO,GACX,yHAAyH;AAE3H,OAAO,MAAMC,uBAAuB,GAAGL,cAAc,CAAC,kBAAkB,CAAC;AAEzE,eAAe,SAASM,cAAcA,CAACC,KAAU,EAAE;EACjD,IAAI,CAACF,uBAAuB,EAAE;IAC5BJ,QAAQ,CAAC,wBAAwB,EAAEG,OAAO,CAAC;IAC3C,MAAM;MAAEI,QAAQ;MAAEC,MAAM;MAAEC;IAAM,CAAC,GAAGH,KAAK;IACzC,MAAMI,eAAe,GACnBC,KAAK,CAACC,OAAO,CAACJ,MAAM,CAAC,IAAIA,MAAM,CAACK,MAAM,GAAG,CAAC,GAAGL,MAAM,CAAC,CAAC,CAAC,GAAGM,SAAS;IACpE,oBACEZ,IAAA,CAACL,IAAI;MAACY,KAAK,EAAE,CAACA,KAAK,EAAEC,eAAe,GAAG;QAAEA;MAAgB,CAAC,GAAG,IAAI,CAAE;MAAAH,QAAA,EAChEA;IAAQ,CACL,CAAC;EAEX;EAEA,oBAAOL,IAAA,CAACJ,oBAAoB;IAAA,GAAKQ;EAAK,CAAG,CAAC;AAC5C","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ import { View } from 'react-native';
4
+ import NativeLottieView from 'lottie-react-native';
5
+ import { hasViewManager, warnOnce } from "./runtime.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const warning = 'lottie-react-native is unavailable. Flowboard will reserve space for animations but skip playback until native setup is fixed.';
8
+ export const lottieAvailable = hasViewManager('LottieAnimationView');
9
+ export default function LottieView(props) {
10
+ if (!lottieAvailable) {
11
+ warnOnce('native-lottie', warning);
12
+ return /*#__PURE__*/_jsx(View, {
13
+ style: props.style
14
+ });
15
+ }
16
+ return /*#__PURE__*/_jsx(NativeLottieView, {
17
+ ...props
18
+ });
19
+ }
20
+ //# sourceMappingURL=lottie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","NativeLottieView","hasViewManager","warnOnce","jsx","_jsx","warning","lottieAvailable","LottieView","props","style"],"sourceRoot":"../../../src","sources":["native/lottie.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AACnC,OAAOC,gBAAgB,MAAM,qBAAqB;AAClD,SAASC,cAAc,EAAEC,QAAQ,QAAQ,cAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErD,MAAMC,OAAO,GACX,gIAAgI;AAElI,OAAO,MAAMC,eAAe,GAAGL,cAAc,CAAC,qBAAqB,CAAC;AAEpE,eAAe,SAASM,UAAUA,CAACC,KAAU,EAAE;EAC7C,IAAI,CAACF,eAAe,EAAE;IACpBJ,QAAQ,CAAC,eAAe,EAAEG,OAAO,CAAC;IAClC,oBAAOD,IAAA,CAACL,IAAI;MAACU,KAAK,EAAED,KAAK,CAACC;IAAM,CAAE,CAAC;EACrC;EAEA,oBAAOL,IAAA,CAACJ,gBAAgB;IAAA,GAAKQ;EAAK,CAAG,CAAC;AACxC","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ import { View } from 'react-native';
4
+ import NativeMaskedView from '@react-native-masked-view/masked-view';
5
+ import { hasViewManager, warnOnce } from "./runtime.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const warning = '@react-native-masked-view/masked-view is unavailable. Flowboard will render masked content without the mask until native setup is fixed.';
8
+ export const maskedViewAvailable = hasViewManager('RNCMaskedView');
9
+ export default function MaskedView(props) {
10
+ if (!maskedViewAvailable) {
11
+ warnOnce('native-masked-view', warning);
12
+ const {
13
+ children,
14
+ ...viewProps
15
+ } = props;
16
+ delete viewProps.maskElement;
17
+ return /*#__PURE__*/_jsx(View, {
18
+ ...viewProps,
19
+ children: children
20
+ });
21
+ }
22
+ return /*#__PURE__*/_jsx(NativeMaskedView, {
23
+ ...props
24
+ });
25
+ }
26
+ //# sourceMappingURL=maskedView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","NativeMaskedView","hasViewManager","warnOnce","jsx","_jsx","warning","maskedViewAvailable","MaskedView","props","children","viewProps","maskElement"],"sourceRoot":"../../../src","sources":["native/maskedView.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AACnC,OAAOC,gBAAgB,MAAM,uCAAuC;AACpE,SAASC,cAAc,EAAEC,QAAQ,QAAQ,cAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErD,MAAMC,OAAO,GACX,0IAA0I;AAE5I,OAAO,MAAMC,mBAAmB,GAAGL,cAAc,CAAC,eAAe,CAAC;AAElE,eAAe,SAASM,UAAUA,CAACC,KAAU,EAAE;EAC7C,IAAI,CAACF,mBAAmB,EAAE;IACxBJ,QAAQ,CAAC,oBAAoB,EAAEG,OAAO,CAAC;IACvC,MAAM;MAAEI,QAAQ;MAAE,GAAGC;IAAU,CAAC,GAAGF,KAAK;IACxC,OAAOE,SAAS,CAACC,WAAW;IAC5B,oBAAOP,IAAA,CAACL,IAAI;MAAA,GAAKW,SAAS;MAAAD,QAAA,EAAGA;IAAQ,CAAO,CAAC;EAC/C;EAEA,oBAAOL,IAAA,CAACJ,gBAAgB;IAAA,GAAKQ;EAAK,CAAG,CAAC;AACxC","ignoreList":[]}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View } from 'react-native';
5
+ import NativePagerView from 'react-native-pager-view';
6
+ import { hasViewManager, warnOnce } from "./runtime.js";
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ const warning = 'react-native-pager-view is unavailable. Flowboard will render one page at a time without native paging until setup is fixed.';
9
+ export const pagerViewAvailable = hasViewManager('RNCViewPager');
10
+ function clampPage(index, totalPages) {
11
+ if (totalPages <= 0) return 0;
12
+ if (index < 0) return 0;
13
+ if (index >= totalPages) return totalPages - 1;
14
+ return index;
15
+ }
16
+ class PagerViewFallback extends React.Component {
17
+ constructor(props) {
18
+ super(props);
19
+ this.state = {
20
+ page: clampPage(Number(props.initialPage ?? 0), React.Children.count(props.children))
21
+ };
22
+ }
23
+ componentDidUpdate(prevProps) {
24
+ if (prevProps.initialPage !== this.props.initialPage) {
25
+ this.setPageWithoutAnimation(Number(this.props.initialPage ?? 0));
26
+ return;
27
+ }
28
+ const totalPages = React.Children.count(this.props.children);
29
+ const nextPage = clampPage(this.state.page, totalPages);
30
+ if (nextPage !== this.state.page) {
31
+ this.setState({
32
+ page: nextPage
33
+ });
34
+ }
35
+ }
36
+ setPage = index => {
37
+ this.updatePage(index);
38
+ };
39
+ setPageWithoutAnimation = index => {
40
+ this.updatePage(index);
41
+ };
42
+ updatePage(index) {
43
+ warnOnce('native-pager-view', warning);
44
+ const totalPages = React.Children.count(this.props.children);
45
+ const nextPage = clampPage(index, totalPages);
46
+ if (nextPage === this.state.page) return;
47
+ this.setState({
48
+ page: nextPage
49
+ });
50
+ this.props.onPageSelected?.({
51
+ nativeEvent: {
52
+ position: nextPage
53
+ }
54
+ });
55
+ }
56
+ render() {
57
+ const viewProps = {
58
+ ...this.props
59
+ };
60
+ const {
61
+ children,
62
+ style
63
+ } = viewProps;
64
+ delete viewProps.initialPage;
65
+ delete viewProps.onPageSelected;
66
+ delete viewProps.orientation;
67
+ delete viewProps.overdrag;
68
+ delete viewProps.pageMargin;
69
+ const pages = React.Children.toArray(children);
70
+ return /*#__PURE__*/_jsx(View, {
71
+ ...viewProps,
72
+ style: style,
73
+ children: pages[this.state.page] ?? null
74
+ });
75
+ }
76
+ }
77
+ const PagerViewComponent = pagerViewAvailable ? NativePagerView : PagerViewFallback;
78
+ export default PagerViewComponent;
79
+ //# sourceMappingURL=pagerView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","NativePagerView","hasViewManager","warnOnce","jsx","_jsx","warning","pagerViewAvailable","clampPage","index","totalPages","PagerViewFallback","Component","constructor","props","state","page","Number","initialPage","Children","count","children","componentDidUpdate","prevProps","setPageWithoutAnimation","nextPage","setState","setPage","updatePage","onPageSelected","nativeEvent","position","render","viewProps","style","orientation","overdrag","pageMargin","pages","toArray","PagerViewComponent"],"sourceRoot":"../../../src","sources":["native/pagerView.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ import { openSettings as nativeOpenSettings, PERMISSIONS as nativePermissions, request as nativeRequest, requestNotifications as nativeRequestNotifications, RESULTS as nativeResults } from 'react-native-permissions';
4
+ import { hasNativeModule, safeAsync } from "./runtime.js";
5
+ const warning = 'react-native-permissions is unavailable. Permission actions will return unavailable until native setup is fixed.';
6
+ export const permissionsAvailable = hasNativeModule('RNPermissions');
7
+ export const RESULTS = nativeResults ?? {
8
+ BLOCKED: 'blocked',
9
+ GRANTED: 'granted',
10
+ LIMITED: 'limited',
11
+ UNAVAILABLE: 'unavailable'
12
+ };
13
+ export const PERMISSIONS = nativePermissions ?? {
14
+ ANDROID: {},
15
+ IOS: {}
16
+ };
17
+ export async function openSettings() {
18
+ await safeAsync('native-permissions-open-settings', permissionsAvailable, async () => {
19
+ await nativeOpenSettings();
20
+ }, undefined, warning);
21
+ }
22
+ export async function request(permission) {
23
+ return safeAsync('native-permissions-request', permissionsAvailable && permission.length > 0, async () => nativeRequest(permission), RESULTS.UNAVAILABLE ?? 'unavailable', warning);
24
+ }
25
+ export async function requestNotifications(options) {
26
+ return safeAsync('native-permissions-request-notifications', permissionsAvailable, async () => nativeRequestNotifications(options), {
27
+ status: RESULTS.UNAVAILABLE ?? 'unavailable'
28
+ }, warning);
29
+ }
30
+ //# sourceMappingURL=permissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["openSettings","nativeOpenSettings","PERMISSIONS","nativePermissions","request","nativeRequest","requestNotifications","nativeRequestNotifications","RESULTS","nativeResults","hasNativeModule","safeAsync","warning","permissionsAvailable","BLOCKED","GRANTED","LIMITED","UNAVAILABLE","ANDROID","IOS","undefined","permission","length","options","status"],"sourceRoot":"../../../src","sources":["native/permissions.ts"],"mappings":";;AAAA,SACEA,YAAY,IAAIC,kBAAkB,EAClCC,WAAW,IAAIC,iBAAiB,EAChCC,OAAO,IAAIC,aAAa,EACxBC,oBAAoB,IAAIC,0BAA0B,EAClDC,OAAO,IAAIC,aAAa,QACnB,0BAA0B;AACjC,SAASC,eAAe,EAAEC,SAAS,QAAQ,cAAW;AAEtD,MAAMC,OAAO,GACX,kHAAkH;AAEpH,OAAO,MAAMC,oBAAoB,GAAGH,eAAe,CAAC,eAAe,CAAC;AAEpE,OAAO,MAAMF,OAAO,GAAGC,aAAa,IAAI;EACtCK,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE,SAAS;EAClBC,WAAW,EAAE;AACf,CAAC;AAED,OAAO,MAAMf,WAAW,GAAGC,iBAAiB,IAAI;EAC9Ce,OAAO,EAAE,CAAC,CAAC;EACXC,GAAG,EAAE,CAAC;AACR,CAAC;AAED,OAAO,eAAenB,YAAYA,CAAA,EAAkB;EAClD,MAAMW,SAAS,CACb,kCAAkC,EAClCE,oBAAoB,EACpB,YAAY;IACV,MAAMZ,kBAAkB,CAAC,CAAC;EAC5B,CAAC,EACDmB,SAAS,EACTR,OACF,CAAC;AACH;AAEA,OAAO,eAAeR,OAAOA,CAACiB,UAAkB,EAAmB;EACjE,OAAOV,SAAS,CACd,4BAA4B,EAC5BE,oBAAoB,IAAIQ,UAAU,CAACC,MAAM,GAAG,CAAC,EAC7C,YAAYjB,aAAa,CAACgB,UAAU,CAAC,EACrCb,OAAO,CAACS,WAAW,IAAI,aAAa,EACpCL,OACF,CAAC;AACH;AAEA,OAAO,eAAeN,oBAAoBA,CACxCiB,OAAkB,EACW;EAC7B,OAAOZ,SAAS,CACd,0CAA0C,EAC1CE,oBAAoB,EACpB,YAAYN,0BAA0B,CAACgB,OAAO,CAAC,EAC/C;IAAEC,MAAM,EAAEhB,OAAO,CAACS,WAAW,IAAI;EAAc,CAAC,EAChDL,OACF,CAAC;AACH","ignoreList":[]}