@gaddario98/react-native-core 1.0.33 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/auth/index.d.ts +1 -1
  2. package/dist/auth/index.js +1 -1
  3. package/dist/auth/index.mjs +1 -1
  4. package/dist/config/index.d.ts +11 -16
  5. package/dist/config/index.js +122 -25
  6. package/dist/config/index.js.map +1 -1
  7. package/dist/config/index.mjs +122 -25
  8. package/dist/config/index.mjs.map +1 -1
  9. package/dist/expo/index.d.ts +17 -1
  10. package/dist/expo/index.js +445 -1
  11. package/dist/expo/index.js.map +1 -1
  12. package/dist/expo/index.mjs +445 -1
  13. package/dist/expo/index.mjs.map +1 -1
  14. package/dist/form/index.d.ts +1 -1
  15. package/dist/form/index.js +1 -1
  16. package/dist/form/index.mjs +1 -1
  17. package/dist/index.d.ts +160 -26
  18. package/dist/index.js +1 -26
  19. package/dist/index.js.map +1 -1
  20. package/dist/index.mjs +1 -26
  21. package/dist/index.mjs.map +1 -1
  22. package/dist/layouts/index.d.ts +30 -1
  23. package/dist/layouts/index.js +43 -1
  24. package/dist/layouts/index.js.map +1 -1
  25. package/dist/layouts/index.mjs +43 -1
  26. package/dist/layouts/index.mjs.map +1 -1
  27. package/dist/localization/index.d.ts +1 -1
  28. package/dist/localization/index.js +1 -1
  29. package/dist/localization/index.mjs +1 -1
  30. package/dist/pages/index.d.ts +11 -1
  31. package/dist/pages/index.js +231 -1
  32. package/dist/pages/index.js.map +1 -1
  33. package/dist/pages/index.mjs +231 -1
  34. package/dist/pages/index.mjs.map +1 -1
  35. package/dist/providers/index.d.ts +18 -1
  36. package/dist/providers/index.js +24 -1
  37. package/dist/providers/index.js.map +1 -1
  38. package/dist/providers/index.mjs +24 -1
  39. package/dist/providers/index.mjs.map +1 -1
  40. package/dist/queries/index.d.ts +1 -1
  41. package/dist/queries/index.js +1 -1
  42. package/dist/queries/index.mjs +1 -1
  43. package/dist/state/index.d.ts +10 -1
  44. package/dist/state/index.js +241 -1
  45. package/dist/state/index.js.map +1 -1
  46. package/dist/state/index.mjs +241 -1
  47. package/dist/state/index.mjs.map +1 -1
  48. package/dist/tabs/index.d.ts +89 -1
  49. package/dist/tabs/index.js +485 -1
  50. package/dist/tabs/index.js.map +1 -1
  51. package/dist/tabs/index.mjs +485 -1
  52. package/dist/tabs/index.mjs.map +1 -1
  53. package/dist/utiles/index.d.ts +5 -1
  54. package/dist/utiles/index.js +3 -1
  55. package/dist/utiles/index.js.map +1 -1
  56. package/dist/utiles/index.mjs +3 -1
  57. package/dist/utiles/index.mjs.map +1 -1
  58. package/package.json +47 -19
@@ -1 +1 @@
1
- export * from '@gaddario98/react-auth';
1
+ export * from '@gaddario98/react-core/auth';
@@ -1 +1 @@
1
- 'use strict';var reactAuth=require('@gaddario98/react-auth');Object.keys(reactAuth).forEach(function(k){if(k!=='default'&&!Object.prototype.hasOwnProperty.call(exports,k))Object.defineProperty(exports,k,{enumerable:true,get:function(){return reactAuth[k]}})});//# sourceMappingURL=index.js.map
1
+ 'use strict';var auth=require('@gaddario98/react-core/auth');Object.keys(auth).forEach(function(k){if(k!=='default'&&!Object.prototype.hasOwnProperty.call(exports,k))Object.defineProperty(exports,k,{enumerable:true,get:function(){return auth[k]}})});//# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- export*from'@gaddario98/react-auth';//# sourceMappingURL=index.mjs.map
1
+ export*from'@gaddario98/react-core/auth';//# sourceMappingURL=index.mjs.map
@@ -1,18 +1,13 @@
1
- import { PageConfigProps } from '@gaddario98/react-native-pages';
2
- import { setI18nInitializer, setTranslationAdapter } from '@gaddario98/react-localization';
3
- import { AppLinks } from '@gaddario98/react-native-utiles';
1
+ import * as _tanstack_query_persist_client_core from '@tanstack/query-persist-client-core';
2
+ import { CoreConfig } from '@gaddario98/react-core';
3
+ import * as react from 'react';
4
4
 
5
- interface SetReactNativeConfigProps {
6
- pages: Partial<PageConfigProps>;
7
- endpoints: Record<string, string>;
8
- links: Partial<AppLinks>;
9
- localization?: {
10
- i18nInitializer: Parameters<typeof setI18nInitializer>[0];
11
- translationAdapter: Parameters<typeof setTranslationAdapter>[0];
12
- localResources?: Record<string, object>;
13
- };
14
- }
15
- declare const setReactNativeConfig: ({ pages, endpoints, localization, links, }: SetReactNativeConfigProps) => void;
5
+ declare const asyncStoragePersister: _tanstack_query_persist_client_core.Persister;
6
+ declare const useReactNativeCoreConfig: (props: Partial<CoreConfig>) => void;
16
7
 
17
- export { setReactNativeConfig };
18
- export type { SetReactNativeConfigProps };
8
+ declare const ReactNativeCoreProvider: ({ children, coreConfig, }: {
9
+ children: React.ReactNode;
10
+ coreConfig?: Partial<CoreConfig>;
11
+ }) => react.ReactNode;
12
+
13
+ export { ReactNativeCoreProvider, asyncStoragePersister, useReactNativeCoreConfig };
@@ -1,26 +1,123 @@
1
- 'use strict';var jsxRuntime=require('react/jsx-runtime'),reactNativeState=require('@gaddario98/react-native-state'),reactQueries=require('@gaddario98/react-queries'),reactNativePages=require('@gaddario98/react-native-pages'),reactLocalization=require('@gaddario98/react-localization'),reactNativeUtiles=require('@gaddario98/react-native-utiles'),reactNative=require('react-native'),reactForm=require('@gaddario98/react-form');var setReactNativeConfig = function setReactNativeConfig(_ref) {
2
- var pages = _ref.pages,
3
- endpoints = _ref.endpoints,
4
- localization = _ref.localization,
5
- links = _ref.links;
6
- if (localization === null || localization === void 0 ? void 0 : localization.i18nInitializer) {
7
- reactLocalization.setI18nInitializer(localization.i18nInitializer);
8
- }
9
- if (localization === null || localization === void 0 ? void 0 : localization.translationAdapter) {
10
- reactLocalization.setTranslationAdapter(localization.translationAdapter);
11
- }
12
- if (localization === null || localization === void 0 ? void 0 : localization.localResources) {
13
- reactLocalization.initializeI18n(localization.localResources);
14
- }
15
- reactNativeState.setReactNativeStorage();
16
- reactNativePages.setReactNativePageConfig(pages);
17
- reactQueries.setEndpoints(endpoints);
18
- reactNativeUtiles.setAppLinks(links);
19
- reactForm.setDefaultFormContainer(function (_ref2) {
20
- var children = _ref2.children;
21
- return jsxRuntime.jsx(reactNative.KeyboardAvoidingView, {
22
- behavior: reactNative.Platform.OS === "ios" ? "padding" : undefined,
23
- children: children
24
- });
1
+ 'use strict';var jsxRuntime=require('react/jsx-runtime'),reactCore=require('@gaddario98/react-core'),react=require('react'),index_ts$1=require('../auth/index.js'),index_ts$2=require('../localization/index.js'),notifications=require('@gaddario98/react-core/notifications'),queryAsyncStoragePersister=require('@tanstack/query-async-storage-persister'),index_ts=require('../state/index.js'),index_ts$3=require('../pages/index.js'),reactNative=require('react-native'),compilerRuntime=require('react/compiler-runtime');var asyncStoragePersister = queryAsyncStoragePersister.createAsyncStoragePersister({
2
+ storage: index_ts.storage
3
+ });
4
+ var DEFAULT_PADDING = 16;
5
+ var useReactNativeCoreConfig = function useReactNativeCoreConfig(props) {
6
+ var auth = index_ts$1.useAuthValue();
7
+ var _useTranslation = index_ts$2.useTranslation(),
8
+ translateText = _useTranslation.t;
9
+ var _useNotification = notifications.useNotification(),
10
+ showNotification = _useNotification.showNotification;
11
+ reactCore.useCoreConfig({
12
+ apiConfig: react.useMemo(function () {
13
+ var _a, _b, _c, _d, _e;
14
+ return Object.assign(Object.assign({
15
+ validateAuthFn: function validateAuthFn() {
16
+ return true;
17
+ },
18
+ showNotification: showNotification
19
+ }, (_a = props.apiConfig) !== null && _a !== void 0 ? _a : {}), {
20
+ defaultHeaders: Object.assign({
21
+ Authorization: (auth === null || auth === void 0 ? void 0 : auth.token) ? "Bearer ".concat(auth.token) : ""
22
+ }, (_c = (_b = props.apiConfig) === null || _b === void 0 ? void 0 : _b.defaultHeaders) !== null && _c !== void 0 ? _c : {}),
23
+ persistOptions: Object.assign({
24
+ persister: asyncStoragePersister,
25
+ maxAge: Infinity,
26
+ buster: "persister-v1"
27
+ }, (_e = (_d = props.apiConfig) === null || _d === void 0 ? void 0 : _d.persistOptions) !== null && _e !== void 0 ? _e : {})
28
+ });
29
+ }, [auth === null || auth === void 0 ? void 0 : auth.token, props.apiConfig, showNotification]),
30
+ localization: react.useMemo(function () {
31
+ return props.localization;
32
+ }, [props.localization]),
33
+ pages: react.useMemo(function () {
34
+ var _a_0;
35
+ return Object.assign(Object.assign({}, (_a_0 = props.pages) !== null && _a_0 !== void 0 ? _a_0 : {}), {
36
+ authValues: auth,
37
+ FooterContainer: index_ts$3.Element,
38
+ HeaderContainer: index_ts$3.Element,
39
+ ItemsContainer: function ItemsContainer(_ref) {
40
+ var children = _ref.children;
41
+ return jsxRuntime.jsx(reactNative.View, {
42
+ style: {
43
+ paddingHorizontal: DEFAULT_PADDING,
44
+ flexDirection: "row",
45
+ alignItems: "center",
46
+ flexWrap: "wrap",
47
+ width: "100%"
48
+ },
49
+ children: children
50
+ });
51
+ },
52
+ BodyContainer: index_ts$3.DefaultView,
53
+ PageContainer: function PageContainer(_ref2) {
54
+ var children_0 = _ref2.children,
55
+ id = _ref2.id;
56
+ return jsxRuntime.jsx(reactNative.View, {
57
+ style: {
58
+ flex: 1
59
+ },
60
+ id: id,
61
+ children: children_0
62
+ }, id);
63
+ },
64
+ LoaderComponent: function LoaderComponent(_ref3) {
65
+ var loading = _ref3.loading,
66
+ message = _ref3.message;
67
+ return loading && jsxRuntime.jsxs(reactNative.View, {
68
+ style: {
69
+ position: "relative",
70
+ top: 0,
71
+ marginHorizontal: DEFAULT_PADDING,
72
+ marginTop: DEFAULT_PADDING,
73
+ zIndex: 1000,
74
+ left: 0,
75
+ right: 0,
76
+ flexDirection: "row",
77
+ alignItems: "center",
78
+ padding: DEFAULT_PADDING,
79
+ backgroundColor: "#e3f2fd",
80
+ borderRadius: 8
81
+ },
82
+ children: [jsxRuntime.jsx(reactNative.ActivityIndicator, {
83
+ size: "small",
84
+ style: {
85
+ marginRight: 8
86
+ }
87
+ }), jsxRuntime.jsx(reactNative.Text, {
88
+ children: message !== null && message !== void 0 ? message : "Caricamento in corso..."
89
+ })]
90
+ });
91
+ }
92
+ });
93
+ }, [auth, props.pages]),
94
+ form: react.useMemo(function () {
95
+ return {
96
+ translateText: translateText,
97
+ showNotification: showNotification,
98
+ formFieldContainer: function formFieldContainer(_ref4) {
99
+ var children_1 = _ref4.children;
100
+ return jsxRuntime.jsx(reactNative.KeyboardAvoidingView, {
101
+ behavior: reactNative.Platform.OS === "ios" ? "padding" : undefined,
102
+ children: children_1
103
+ });
104
+ }
105
+ };
106
+ }, [showNotification, translateText])
25
107
  });
26
- };exports.setReactNativeConfig=setReactNativeConfig;//# sourceMappingURL=index.js.map
108
+ };index_ts.setReactNativeStorage();
109
+ var ReactNativeCoreProvider = function ReactNativeCoreProvider(t0) {
110
+ var $ = compilerRuntime.c(2);
111
+ var children = t0.children,
112
+ coreConfig = t0.coreConfig;
113
+ var t1;
114
+ if ($[0] !== coreConfig) {
115
+ t1 = coreConfig !== null && coreConfig !== void 0 ? coreConfig : {};
116
+ $[0] = coreConfig;
117
+ $[1] = t1;
118
+ } else {
119
+ t1 = $[1];
120
+ }
121
+ useReactNativeCoreConfig(t1);
122
+ return children;
123
+ };exports.ReactNativeCoreProvider=ReactNativeCoreProvider;exports.asyncStoragePersister=asyncStoragePersister;exports.useReactNativeCoreConfig=useReactNativeCoreConfig;//# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../config/index.tsx"],"sourcesContent":["import { setReactNativeStorage } from \"../state\";\nimport { setEndpoints } from \"../queries\";\nimport { PageConfigProps, setReactNativePageConfig } from \"../pages\";\nimport {\n initializeI18n,\n setI18nInitializer,\n setTranslationAdapter,\n} from \"../localization\";\nimport { AppLinks, setAppLinks } from \"../utiles\";\nimport { KeyboardAvoidingView, Platform } from \"react-native\";\nimport { setDefaultFormContainer } from \"../form\";\n\nexport interface SetReactNativeConfigProps {\n pages: Partial<PageConfigProps>;\n endpoints: Record<string, string>;\n links: Partial<AppLinks>;\n localization?: {\n i18nInitializer: Parameters<typeof setI18nInitializer>[0];\n translationAdapter: Parameters<typeof setTranslationAdapter>[0];\n localResources?: Record<string, object>;\n };\n}\n\nexport const setReactNativeConfig = ({\n pages,\n endpoints,\n localization,\n links,\n}: SetReactNativeConfigProps) => {\n if (localization?.i18nInitializer) {\n setI18nInitializer(localization.i18nInitializer);\n }\n if (localization?.translationAdapter) {\n setTranslationAdapter(localization.translationAdapter);\n }\n if (localization?.localResources) {\n initializeI18n(localization.localResources);\n }\n setReactNativeStorage();\n setReactNativePageConfig(pages);\n setEndpoints(endpoints);\n setAppLinks(links);\n setDefaultFormContainer(({ children }) => {\n return (\n <KeyboardAvoidingView\n behavior={Platform.OS === \"ios\" ? \"padding\" : undefined}\n >\n {children}\n </KeyboardAvoidingView>\n );\n });\n};\n"],"names":["setReactNativeConfig","_ref","pages","endpoints","localization","links","i18nInitializer","setI18nInitializer","translationAdapter","setTranslationAdapter","localResources","initializeI18n","setReactNativeStorage","setReactNativePageConfig","setEndpoints","setAppLinks","setDefaultFormContainer","_ref2","children","_jsx","KeyboardAvoidingView","behavior","Platform","OS","undefined"],"mappings":"8aAuBaA,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,IAAA,EAKD;AAAA,EAAA,IAJ9BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,YAAY,GAAAH,IAAA,CAAZG,YAAY;IACZC,KAAK,GAAAJ,IAAA,CAALI,KAAK;AAEL,EAAA,IAAID,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEE,eAAe,EAAE;AACjCC,IAAAA,oCAAkB,CAACH,YAAY,CAACE,eAAe,CAAC;AAClD,EAAA;AACA,EAAA,IAAIF,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEI,kBAAkB,EAAE;AACpCC,IAAAA,uCAAqB,CAACL,YAAY,CAACI,kBAAkB,CAAC;AACxD,EAAA;AACA,EAAA,IAAIJ,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEM,cAAc,EAAE;AAChCC,IAAAA,gCAAc,CAACP,YAAY,CAACM,cAAc,CAAC;AAC7C,EAAA;AACAE,EAAAA,sCAAqB,EAAE;EACvBC,yCAAwB,CAACX,KAAK,CAAC;EAC/BY,yBAAY,CAACX,SAAS,CAAC;EACvBY,6BAAW,CAACV,KAAK,CAAC;EAClBW,iCAAuB,CAAC,UAAAC,KAAA,EAAiB;AAAA,IAAA,IAAdC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IACjC,OACEC,eAACC,gCAAoB,EAAA;MACnBC,QAAQ,EAAEC,oBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,SAAS,GAAGC,SAAS;AAAAN,MAAAA,QAAA,EAEtDA;AAAQ,KAAA,CACY;AAE3B,EAAA,CAAC,CAAC;AACJ"}
1
+ {"version":3,"file":"index.js","sources":["../../config/useReactNativeCoreConfig.tsx","../../config/provider.tsx"],"sourcesContent":["import { useCoreConfig, type CoreConfig } from \"@gaddario98/react-core\";\nimport { useMemo } from \"react\";\nimport { useAuthValue } from \"../auth\";\nimport { useTranslation } from \"../localization\";\nimport { useNotification } from \"../notifications\";\nimport { createAsyncStoragePersister } from \"@tanstack/query-async-storage-persister\";\nimport { storage } from \"../state\";\nimport { DefaultView, Element } from \"../pages\";\nimport {\n ActivityIndicator,\n KeyboardAvoidingView,\n Platform,\n Text,\n View,\n} from \"react-native\";\n\nexport const asyncStoragePersister = createAsyncStoragePersister({\n storage: storage,\n});\nconst DEFAULT_PADDING = 16;\nexport const useReactNativeCoreConfig = (props: Partial<CoreConfig>) => {\n const auth = useAuthValue();\n const { t: translateText } = useTranslation();\n const { showNotification } = useNotification();\n\n useCoreConfig({\n apiConfig: useMemo(\n () => ({\n validateAuthFn: () => true,\n showNotification,\n ...(props.apiConfig ?? {}),\n defaultHeaders: {\n Authorization: auth?.token ? `Bearer ${auth.token}` : \"\",\n ...(props.apiConfig?.defaultHeaders ?? {}),\n },\n persistOptions: {\n persister: asyncStoragePersister,\n maxAge: Infinity,\n buster: \"persister-v1\",\n ...(props.apiConfig?.persistOptions ?? {}),\n },\n }),\n [auth?.token, props.apiConfig, showNotification],\n ),\n localization: useMemo(() => props.localization, [props.localization]),\n pages: useMemo(\n () => ({\n ...(props.pages ?? {}),\n authValues: auth,\n FooterContainer: Element,\n HeaderContainer: Element,\n ItemsContainer: ({ children }) => (\n <View\n style={{\n paddingHorizontal: DEFAULT_PADDING,\n flexDirection: \"row\",\n alignItems: \"center\",\n flexWrap: \"wrap\",\n width: \"100%\",\n }}\n >\n {children}\n </View>\n ),\n BodyContainer: DefaultView,\n PageContainer: ({ children, id }) => (\n <View style={{ flex: 1 }} id={id} key={id}>\n {children as React.JSX.Element}\n </View>\n ),\n LoaderComponent: ({ loading, message }) =>\n loading && (\n <View\n style={{\n position: \"relative\",\n top: 0,\n marginHorizontal: DEFAULT_PADDING,\n marginTop: DEFAULT_PADDING,\n zIndex: 1000,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n alignItems: \"center\",\n padding: DEFAULT_PADDING,\n backgroundColor: \"#e3f2fd\",\n borderRadius: 8,\n }}\n >\n <ActivityIndicator size=\"small\" style={{ marginRight: 8 }} />\n <Text>{message ?? \"Caricamento in corso...\"}</Text>\n </View>\n ),\n }),\n [auth, props.pages],\n ),\n form: useMemo(\n () => ({\n translateText,\n showNotification,\n formFieldContainer: ({ children }) => (\n <KeyboardAvoidingView\n behavior={Platform.OS === \"ios\" ? \"padding\" : undefined}\n >\n {children as React.JSX.Element}\n </KeyboardAvoidingView>\n ),\n }),\n [showNotification, translateText],\n ),\n });\n};\n","import { CoreConfig } from \"@gaddario98/react-core\";\nimport { useReactNativeCoreConfig } from \"./useReactNativeCoreConfig\";\nimport { setReactNativeStorage } from \"../state\";\n\nsetReactNativeStorage();\n\nexport const ReactNativeCoreProvider = ({\n children,\n coreConfig,\n}: {\n children: React.ReactNode;\n coreConfig?: Partial<CoreConfig>;\n}) => {\n useReactNativeCoreConfig(coreConfig ?? {});\n return children;\n};\n"],"names":["asyncStoragePersister","createAsyncStoragePersister","storage","DEFAULT_PADDING","useReactNativeCoreConfig","props","auth","useAuthValue","_useTranslation","useTranslation","translateText","t","_useNotification","useNotification","showNotification","useCoreConfig","apiConfig","useMemo","validateAuthFn","_a","defaultHeaders","Object","assign","Authorization","token","concat","_c","_b","persistOptions","persister","maxAge","Infinity","buster","_e","_d","localization","pages","authValues","FooterContainer","Element","HeaderContainer","ItemsContainer","_ref","children","_jsx","View","style","paddingHorizontal","flexDirection","alignItems","flexWrap","width","BodyContainer","DefaultView","PageContainer","_ref2","id","flex","LoaderComponent","_ref3","loading","message","_jsxs","position","top","marginHorizontal","marginTop","zIndex","left","right","padding","backgroundColor","borderRadius","ActivityIndicator","size","marginRight","Text","form","formFieldContainer","_ref4","KeyboardAvoidingView","behavior","Platform","OS","undefined","setReactNativeStorage","ReactNativeCoreProvider","t0","$","coreConfig","t1"],"mappings":"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"}
@@ -1,26 +1,123 @@
1
- import {jsx}from'react/jsx-runtime';import {setReactNativeStorage}from'@gaddario98/react-native-state';import {setEndpoints}from'@gaddario98/react-queries';import {setReactNativePageConfig}from'@gaddario98/react-native-pages';import {setI18nInitializer,setTranslationAdapter,initializeI18n}from'@gaddario98/react-localization';import {setAppLinks}from'@gaddario98/react-native-utiles';import {KeyboardAvoidingView,Platform}from'react-native';import {setDefaultFormContainer}from'@gaddario98/react-form';var setReactNativeConfig = function setReactNativeConfig(_ref) {
2
- var pages = _ref.pages,
3
- endpoints = _ref.endpoints,
4
- localization = _ref.localization,
5
- links = _ref.links;
6
- if (localization === null || localization === void 0 ? void 0 : localization.i18nInitializer) {
7
- setI18nInitializer(localization.i18nInitializer);
8
- }
9
- if (localization === null || localization === void 0 ? void 0 : localization.translationAdapter) {
10
- setTranslationAdapter(localization.translationAdapter);
11
- }
12
- if (localization === null || localization === void 0 ? void 0 : localization.localResources) {
13
- initializeI18n(localization.localResources);
14
- }
15
- setReactNativeStorage();
16
- setReactNativePageConfig(pages);
17
- setEndpoints(endpoints);
18
- setAppLinks(links);
19
- setDefaultFormContainer(function (_ref2) {
20
- var children = _ref2.children;
21
- return jsx(KeyboardAvoidingView, {
22
- behavior: Platform.OS === "ios" ? "padding" : undefined,
23
- children: children
24
- });
1
+ import {jsx,jsxs}from'react/jsx-runtime';import {useCoreConfig}from'@gaddario98/react-core';import {useMemo}from'react';import {useAuthValue}from'../auth/index.mjs';import {useTranslation}from'../localization/index.mjs';import {useNotification}from'@gaddario98/react-core/notifications';import {createAsyncStoragePersister}from'@tanstack/query-async-storage-persister';import {storage,setReactNativeStorage}from'../state/index.mjs';import {DefaultView,Element}from'../pages/index.mjs';import {KeyboardAvoidingView,Platform,View,ActivityIndicator,Text}from'react-native';import {c}from'react/compiler-runtime';var asyncStoragePersister = createAsyncStoragePersister({
2
+ storage: storage
3
+ });
4
+ var DEFAULT_PADDING = 16;
5
+ var useReactNativeCoreConfig = function useReactNativeCoreConfig(props) {
6
+ var auth = useAuthValue();
7
+ var _useTranslation = useTranslation(),
8
+ translateText = _useTranslation.t;
9
+ var _useNotification = useNotification(),
10
+ showNotification = _useNotification.showNotification;
11
+ useCoreConfig({
12
+ apiConfig: useMemo(function () {
13
+ var _a, _b, _c, _d, _e;
14
+ return Object.assign(Object.assign({
15
+ validateAuthFn: function validateAuthFn() {
16
+ return true;
17
+ },
18
+ showNotification: showNotification
19
+ }, (_a = props.apiConfig) !== null && _a !== void 0 ? _a : {}), {
20
+ defaultHeaders: Object.assign({
21
+ Authorization: (auth === null || auth === void 0 ? void 0 : auth.token) ? "Bearer ".concat(auth.token) : ""
22
+ }, (_c = (_b = props.apiConfig) === null || _b === void 0 ? void 0 : _b.defaultHeaders) !== null && _c !== void 0 ? _c : {}),
23
+ persistOptions: Object.assign({
24
+ persister: asyncStoragePersister,
25
+ maxAge: Infinity,
26
+ buster: "persister-v1"
27
+ }, (_e = (_d = props.apiConfig) === null || _d === void 0 ? void 0 : _d.persistOptions) !== null && _e !== void 0 ? _e : {})
28
+ });
29
+ }, [auth === null || auth === void 0 ? void 0 : auth.token, props.apiConfig, showNotification]),
30
+ localization: useMemo(function () {
31
+ return props.localization;
32
+ }, [props.localization]),
33
+ pages: useMemo(function () {
34
+ var _a_0;
35
+ return Object.assign(Object.assign({}, (_a_0 = props.pages) !== null && _a_0 !== void 0 ? _a_0 : {}), {
36
+ authValues: auth,
37
+ FooterContainer: Element,
38
+ HeaderContainer: Element,
39
+ ItemsContainer: function ItemsContainer(_ref) {
40
+ var children = _ref.children;
41
+ return jsx(View, {
42
+ style: {
43
+ paddingHorizontal: DEFAULT_PADDING,
44
+ flexDirection: "row",
45
+ alignItems: "center",
46
+ flexWrap: "wrap",
47
+ width: "100%"
48
+ },
49
+ children: children
50
+ });
51
+ },
52
+ BodyContainer: DefaultView,
53
+ PageContainer: function PageContainer(_ref2) {
54
+ var children_0 = _ref2.children,
55
+ id = _ref2.id;
56
+ return jsx(View, {
57
+ style: {
58
+ flex: 1
59
+ },
60
+ id: id,
61
+ children: children_0
62
+ }, id);
63
+ },
64
+ LoaderComponent: function LoaderComponent(_ref3) {
65
+ var loading = _ref3.loading,
66
+ message = _ref3.message;
67
+ return loading && jsxs(View, {
68
+ style: {
69
+ position: "relative",
70
+ top: 0,
71
+ marginHorizontal: DEFAULT_PADDING,
72
+ marginTop: DEFAULT_PADDING,
73
+ zIndex: 1000,
74
+ left: 0,
75
+ right: 0,
76
+ flexDirection: "row",
77
+ alignItems: "center",
78
+ padding: DEFAULT_PADDING,
79
+ backgroundColor: "#e3f2fd",
80
+ borderRadius: 8
81
+ },
82
+ children: [jsx(ActivityIndicator, {
83
+ size: "small",
84
+ style: {
85
+ marginRight: 8
86
+ }
87
+ }), jsx(Text, {
88
+ children: message !== null && message !== void 0 ? message : "Caricamento in corso..."
89
+ })]
90
+ });
91
+ }
92
+ });
93
+ }, [auth, props.pages]),
94
+ form: useMemo(function () {
95
+ return {
96
+ translateText: translateText,
97
+ showNotification: showNotification,
98
+ formFieldContainer: function formFieldContainer(_ref4) {
99
+ var children_1 = _ref4.children;
100
+ return jsx(KeyboardAvoidingView, {
101
+ behavior: Platform.OS === "ios" ? "padding" : undefined,
102
+ children: children_1
103
+ });
104
+ }
105
+ };
106
+ }, [showNotification, translateText])
25
107
  });
26
- };export{setReactNativeConfig};//# sourceMappingURL=index.mjs.map
108
+ };setReactNativeStorage();
109
+ var ReactNativeCoreProvider = function ReactNativeCoreProvider(t0) {
110
+ var $ = c(2);
111
+ var children = t0.children,
112
+ coreConfig = t0.coreConfig;
113
+ var t1;
114
+ if ($[0] !== coreConfig) {
115
+ t1 = coreConfig !== null && coreConfig !== void 0 ? coreConfig : {};
116
+ $[0] = coreConfig;
117
+ $[1] = t1;
118
+ } else {
119
+ t1 = $[1];
120
+ }
121
+ useReactNativeCoreConfig(t1);
122
+ return children;
123
+ };export{ReactNativeCoreProvider,asyncStoragePersister,useReactNativeCoreConfig};//# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../config/index.tsx"],"sourcesContent":["import { setReactNativeStorage } from \"../state\";\nimport { setEndpoints } from \"../queries\";\nimport { PageConfigProps, setReactNativePageConfig } from \"../pages\";\nimport {\n initializeI18n,\n setI18nInitializer,\n setTranslationAdapter,\n} from \"../localization\";\nimport { AppLinks, setAppLinks } from \"../utiles\";\nimport { KeyboardAvoidingView, Platform } from \"react-native\";\nimport { setDefaultFormContainer } from \"../form\";\n\nexport interface SetReactNativeConfigProps {\n pages: Partial<PageConfigProps>;\n endpoints: Record<string, string>;\n links: Partial<AppLinks>;\n localization?: {\n i18nInitializer: Parameters<typeof setI18nInitializer>[0];\n translationAdapter: Parameters<typeof setTranslationAdapter>[0];\n localResources?: Record<string, object>;\n };\n}\n\nexport const setReactNativeConfig = ({\n pages,\n endpoints,\n localization,\n links,\n}: SetReactNativeConfigProps) => {\n if (localization?.i18nInitializer) {\n setI18nInitializer(localization.i18nInitializer);\n }\n if (localization?.translationAdapter) {\n setTranslationAdapter(localization.translationAdapter);\n }\n if (localization?.localResources) {\n initializeI18n(localization.localResources);\n }\n setReactNativeStorage();\n setReactNativePageConfig(pages);\n setEndpoints(endpoints);\n setAppLinks(links);\n setDefaultFormContainer(({ children }) => {\n return (\n <KeyboardAvoidingView\n behavior={Platform.OS === \"ios\" ? \"padding\" : undefined}\n >\n {children}\n </KeyboardAvoidingView>\n );\n });\n};\n"],"names":["setReactNativeConfig","_ref","pages","endpoints","localization","links","i18nInitializer","setI18nInitializer","translationAdapter","setTranslationAdapter","localResources","initializeI18n","setReactNativeStorage","setReactNativePageConfig","setEndpoints","setAppLinks","setDefaultFormContainer","_ref2","children","_jsx","KeyboardAvoidingView","behavior","Platform","OS","undefined"],"mappings":"2fAuBaA,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,IAAA,EAKD;AAAA,EAAA,IAJ9BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,YAAY,GAAAH,IAAA,CAAZG,YAAY;IACZC,KAAK,GAAAJ,IAAA,CAALI,KAAK;AAEL,EAAA,IAAID,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEE,eAAe,EAAE;AACjCC,IAAAA,kBAAkB,CAACH,YAAY,CAACE,eAAe,CAAC;AAClD,EAAA;AACA,EAAA,IAAIF,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEI,kBAAkB,EAAE;AACpCC,IAAAA,qBAAqB,CAACL,YAAY,CAACI,kBAAkB,CAAC;AACxD,EAAA;AACA,EAAA,IAAIJ,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEM,cAAc,EAAE;AAChCC,IAAAA,cAAc,CAACP,YAAY,CAACM,cAAc,CAAC;AAC7C,EAAA;AACAE,EAAAA,qBAAqB,EAAE;EACvBC,wBAAwB,CAACX,KAAK,CAAC;EAC/BY,YAAY,CAACX,SAAS,CAAC;EACvBY,WAAW,CAACV,KAAK,CAAC;EAClBW,uBAAuB,CAAC,UAAAC,KAAA,EAAiB;AAAA,IAAA,IAAdC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IACjC,OACEC,IAACC,oBAAoB,EAAA;MACnBC,QAAQ,EAAEC,QAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,SAAS,GAAGC,SAAS;AAAAN,MAAAA,QAAA,EAEtDA;AAAQ,KAAA,CACY;AAE3B,EAAA,CAAC,CAAC;AACJ"}
1
+ {"version":3,"file":"index.mjs","sources":["../../config/useReactNativeCoreConfig.tsx","../../config/provider.tsx"],"sourcesContent":["import { useCoreConfig, type CoreConfig } from \"@gaddario98/react-core\";\nimport { useMemo } from \"react\";\nimport { useAuthValue } from \"../auth\";\nimport { useTranslation } from \"../localization\";\nimport { useNotification } from \"../notifications\";\nimport { createAsyncStoragePersister } from \"@tanstack/query-async-storage-persister\";\nimport { storage } from \"../state\";\nimport { DefaultView, Element } from \"../pages\";\nimport {\n ActivityIndicator,\n KeyboardAvoidingView,\n Platform,\n Text,\n View,\n} from \"react-native\";\n\nexport const asyncStoragePersister = createAsyncStoragePersister({\n storage: storage,\n});\nconst DEFAULT_PADDING = 16;\nexport const useReactNativeCoreConfig = (props: Partial<CoreConfig>) => {\n const auth = useAuthValue();\n const { t: translateText } = useTranslation();\n const { showNotification } = useNotification();\n\n useCoreConfig({\n apiConfig: useMemo(\n () => ({\n validateAuthFn: () => true,\n showNotification,\n ...(props.apiConfig ?? {}),\n defaultHeaders: {\n Authorization: auth?.token ? `Bearer ${auth.token}` : \"\",\n ...(props.apiConfig?.defaultHeaders ?? {}),\n },\n persistOptions: {\n persister: asyncStoragePersister,\n maxAge: Infinity,\n buster: \"persister-v1\",\n ...(props.apiConfig?.persistOptions ?? {}),\n },\n }),\n [auth?.token, props.apiConfig, showNotification],\n ),\n localization: useMemo(() => props.localization, [props.localization]),\n pages: useMemo(\n () => ({\n ...(props.pages ?? {}),\n authValues: auth,\n FooterContainer: Element,\n HeaderContainer: Element,\n ItemsContainer: ({ children }) => (\n <View\n style={{\n paddingHorizontal: DEFAULT_PADDING,\n flexDirection: \"row\",\n alignItems: \"center\",\n flexWrap: \"wrap\",\n width: \"100%\",\n }}\n >\n {children}\n </View>\n ),\n BodyContainer: DefaultView,\n PageContainer: ({ children, id }) => (\n <View style={{ flex: 1 }} id={id} key={id}>\n {children as React.JSX.Element}\n </View>\n ),\n LoaderComponent: ({ loading, message }) =>\n loading && (\n <View\n style={{\n position: \"relative\",\n top: 0,\n marginHorizontal: DEFAULT_PADDING,\n marginTop: DEFAULT_PADDING,\n zIndex: 1000,\n left: 0,\n right: 0,\n flexDirection: \"row\",\n alignItems: \"center\",\n padding: DEFAULT_PADDING,\n backgroundColor: \"#e3f2fd\",\n borderRadius: 8,\n }}\n >\n <ActivityIndicator size=\"small\" style={{ marginRight: 8 }} />\n <Text>{message ?? \"Caricamento in corso...\"}</Text>\n </View>\n ),\n }),\n [auth, props.pages],\n ),\n form: useMemo(\n () => ({\n translateText,\n showNotification,\n formFieldContainer: ({ children }) => (\n <KeyboardAvoidingView\n behavior={Platform.OS === \"ios\" ? \"padding\" : undefined}\n >\n {children as React.JSX.Element}\n </KeyboardAvoidingView>\n ),\n }),\n [showNotification, translateText],\n ),\n });\n};\n","import { CoreConfig } from \"@gaddario98/react-core\";\nimport { useReactNativeCoreConfig } from \"./useReactNativeCoreConfig\";\nimport { setReactNativeStorage } from \"../state\";\n\nsetReactNativeStorage();\n\nexport const ReactNativeCoreProvider = ({\n children,\n coreConfig,\n}: {\n children: React.ReactNode;\n coreConfig?: Partial<CoreConfig>;\n}) => {\n useReactNativeCoreConfig(coreConfig ?? {});\n return children;\n};\n"],"names":["asyncStoragePersister","createAsyncStoragePersister","storage","DEFAULT_PADDING","useReactNativeCoreConfig","props","auth","useAuthValue","_useTranslation","useTranslation","translateText","t","_useNotification","useNotification","showNotification","useCoreConfig","apiConfig","useMemo","validateAuthFn","_a","defaultHeaders","Object","assign","Authorization","token","concat","_c","_b","persistOptions","persister","maxAge","Infinity","buster","_e","_d","localization","pages","authValues","FooterContainer","Element","HeaderContainer","ItemsContainer","_ref","children","_jsx","View","style","paddingHorizontal","flexDirection","alignItems","flexWrap","width","BodyContainer","DefaultView","PageContainer","_ref2","id","flex","LoaderComponent","_ref3","loading","message","_jsxs","position","top","marginHorizontal","marginTop","zIndex","left","right","padding","backgroundColor","borderRadius","ActivityIndicator","size","marginRight","Text","form","formFieldContainer","_ref4","KeyboardAvoidingView","behavior","Platform","OS","undefined","setReactNativeStorage","ReactNativeCoreProvider","t0","$","coreConfig","t1"],"mappings":"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"}
@@ -1 +1,17 @@
1
- export * from '@gaddario98/expo';
1
+ import * as Notifications from 'expo-notifications';
2
+
3
+ type NotificationPermissionStatus = "granted" | "denied" | "undetermined";
4
+ interface UseNotificationsReturn {
5
+ expoPushToken: string;
6
+ permissionStatus: NotificationPermissionStatus | null;
7
+ initializeNotifications: (id: string) => Promise<void>;
8
+ sendLocalNotification: (title: string, body: string, data?: Record<string, unknown>) => Promise<void>;
9
+ }
10
+ interface Props {
11
+ updateToken: (token: string) => Promise<void>;
12
+ setNotification: (notification: Notifications.Notification) => void;
13
+ }
14
+ declare const useExpoNotifications: ({ updateToken, setNotification, }: Props) => UseNotificationsReturn;
15
+
16
+ export { useExpoNotifications };
17
+ export type { UseNotificationsReturn };