@admin-layout/gluestack-ui-mobile 6.5.1-alpha.0 → 6.5.2-alpha.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.
package/CHANGELOG.md CHANGED
@@ -3,7 +3,7 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [6.5.1-alpha.0](https://github.com/cdmbase/admin-layout/compare/v3.0.0-alpha.50...v6.5.1-alpha.0) (2024-04-27)
6
+ ## [6.5.2-alpha.0](https://github.com/CDEBase/admin-layout/compare/v6.0.8-alpha.0...v6.5.2-alpha.0) (2024-05-13)
7
7
 
8
8
  **Note:** Version bump only for package @admin-layout/gluestack-ui-mobile
9
9
 
@@ -1,2 +1,2 @@
1
1
  import React, { ComponentType } from 'react';
2
- export declare function withInteractionsManaged<Props>(Component: ComponentType<Props>, Placeholder?: ComponentType | null): (props: Props) => React.JSX.Element;
2
+ export declare function withInteractionsManaged<Props>(Component: ComponentType<Props>, Placeholder?: ComponentType | null, interationTime?: number): (props: Props) => React.JSX.Element;
@@ -1,18 +1,79 @@
1
1
  import React from 'react';
2
- import { Transition, Transitioning } from 'react-native-reanimated';
2
+ // import { Transition, Transitioning } from 'react-native-reanimated';
3
+ import Animated from 'react-native-reanimated';
3
4
  import { useAfterInteractions } from '../hooks/use-after-interactions';
4
- import { Box, Spinner } from '@gluestack-ui/themed';
5
+ import { Spinner, Center } from '@gluestack-ui/themed';
5
6
  import hoistNonReactStatics from 'hoist-non-react-statics';
6
- export function withInteractionsManaged(Component, Placeholder = null) {
7
+ export function withInteractionsManaged(Component, Placeholder = null, interationTime) {
7
8
  const Wrapped = (props) => {
8
- const { transitionRef, interactionsComplete } = useAfterInteractions();
9
- const LoadingComponent = () => React.createElement(Box, { flex: 1 }, React.createElement(Spinner, { color: 'blue.500' }));
9
+ const { interactionsComplete, opacity, setInteractionsTimeOut } = useAfterInteractions();
10
+ React.useEffect(() => {
11
+ if (interationTime)
12
+ setInteractionsTimeOut(interationTime);
13
+ }, [interationTime]);
14
+ const LoadingComponent = () => (
15
+ // <SafeAreaView flex={1}>
16
+ React.createElement(Center, { flex: 1, justifyContent: 'center', alignItems: 'center' }, React.createElement(Spinner, { color: '$blue500' }))
17
+ // </SafeAreaView>
18
+ );
10
19
  console.log('interactionsComplete', interactionsComplete);
11
- return (React.createElement(Transitioning.View, { transition: React.createElement(Transition.Together, null,
12
- React.createElement(Transition.Change, { interpolation: "easeInOut" }),
13
- React.createElement(Transition.In, { type: "fade" })), style: { flex: 1 }, ref: transitionRef }, interactionsComplete ? React.createElement(Component, Object.assign({}, props)) : Placeholder ? React.createElement(Placeholder, null) : React.createElement(LoadingComponent, null)));
20
+ return (React.createElement(React.Fragment, null, interactionsComplete ? (React.createElement(Component, Object.assign({}, props))) : (React.createElement(Animated.View, { style: {
21
+ flex: 1,
22
+ opacity: opacity.value,
23
+ transform: [{ scale: opacity.value }],
24
+ } }, Placeholder ? React.createElement(Placeholder, null) : React.createElement(LoadingComponent, null)))));
14
25
  };
15
26
  hoistNonReactStatics(Wrapped, Component);
16
27
  return Wrapped;
17
28
  }
29
+ // export function withInteractionsManaged<Props>(
30
+ // Component: ComponentType<Props>,
31
+ // Placeholder: ComponentType | null = null,
32
+ // ) {
33
+ // const Wrapped = (props: Props) => {
34
+ // const { transitionRef, interactionsComplete,opacity } = useAfterInteractions();
35
+ // const LoadingComponent = () => <SafeAreaView><Box flex={1}>{<Spinner color={'blue.500'} />}</Box></SafeAreaView>;
36
+ // console.log('interactionsComplete', interactionsComplete);
37
+ // return (
38
+ // <Animated.View
39
+ // ref={transitionRef}
40
+ // style={{
41
+ // flex: 1,
42
+ // opacity: opacity.value,
43
+ // transform: [{ scale: opacity.value }],
44
+ // }}
45
+ // >
46
+ // {interactionsComplete ? <Component {...props} /> : Placeholder ? <Placeholder /> : <LoadingComponent />}
47
+ // </Animated.View>
48
+ // );
49
+ // };
50
+ // hoistNonReactStatics(Wrapped, Component);
51
+ // return Wrapped;
52
+ // }
53
+ // export function withInteractionsManaged<Props>(
54
+ // Component: ComponentType<Props>,
55
+ // Placeholder: ComponentType | null = null,
56
+ // ) {
57
+ // const Wrapped = (props: Props) => {
58
+ // const { transitionRef, interactionsComplete } = useAfterInteractions();
59
+ // const LoadingComponent = () => <Box flex={1}>{<Spinner color={'blue.500'} />}</Box>;
60
+ // console.log('interactionsComplete', interactionsComplete);
61
+ // return (
62
+ // <Transitioning.View
63
+ // transition={
64
+ // <Transition.Together>
65
+ // <Transition.Change interpolation="easeInOut" />
66
+ // <Transition.In type="fade" />
67
+ // </Transition.Together>
68
+ // }
69
+ // style={{ flex: 1 }}
70
+ // ref={transitionRef}
71
+ // >
72
+ // {interactionsComplete ? <Component {...props} /> : Placeholder ? <Placeholder /> : <LoadingComponent />}
73
+ // </Transitioning.View>
74
+ // );
75
+ // };
76
+ // hoistNonReactStatics(Wrapped, Component);
77
+ // return Wrapped;
78
+ // }
18
79
  //# sourceMappingURL=with-interactions-managed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"with-interactions-managed.js","sourceRoot":"","sources":["../../src/components/with-interactions-managed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAQ,MAAM,sBAAsB,CAAC;AAC1D,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAE3D,MAAM,UAAU,uBAAuB,CACnC,SAA+B,EAC/B,cAAoC,IAAI;IAExC,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;QAC7B,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CAAC;QACvE,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,oBAAC,GAAG,IAAC,IAAI,EAAE,CAAC,IAAG,oBAAC,OAAO,IAAC,KAAK,EAAE,UAAU,GAAI,CAAO,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QAC1D,OAAO,CACH,oBAAC,aAAa,CAAC,IAAI,IACf,UAAU,EACN,oBAAC,UAAU,CAAC,QAAQ;gBAChB,oBAAC,UAAU,CAAC,MAAM,IAAC,aAAa,EAAC,WAAW,GAAG;gBAC/C,oBAAC,UAAU,CAAC,EAAE,IAAC,IAAI,EAAC,MAAM,GAAG,CACX,EAE1B,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAClB,GAAG,EAAE,aAAa,IAEjB,oBAAoB,CAAC,CAAC,CAAC,oBAAC,SAAS,oBAAK,KAAK,EAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAC,WAAW,OAAG,CAAC,CAAC,CAAC,oBAAC,gBAAgB,OAAG,CACtF,CACxB,CAAC;IACN,CAAC,CAAC;IAEF,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"with-interactions-managed.js","sourceRoot":"","sources":["../../src/components/with-interactions-managed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,uEAAuE;AACvE,OAAO,QAAwC,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAO,OAAO,EAAgB,MAAM,EAAC,MAAM,sBAAsB,CAAC;AACzE,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAE3D,MAAM,UAAU,uBAAuB,CACnC,SAA+B,EAC/B,cAAoC,IAAI,EACxC,cAAsB;IAEtB,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;QAC7B,MAAM,EAAC,oBAAoB,EAAE,OAAO,EAAC,sBAAsB,EAAE,GAAG,oBAAoB,EAAE,CAAC;QAEvF,KAAK,CAAC,SAAS,CAAC,GAAE,EAAE;YAClB,IAAG,cAAc;gBAAE,sBAAsB,CAAC,cAAc,CAAC,CAAA;QAC3D,CAAC,EAAC,CAAC,cAAc,CAAC,CAAC,CAAA;QAEnB,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAC3B,0BAA0B;QACtB,oBAAC,MAAM,IAAC,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,IAAG,oBAAC,OAAO,IAAC,KAAK,EAAE,UAAU,GAAI,CAAU;QAC9G,kBAAkB;SACrB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QAC1D,OAAO,CACH,0CACK,oBAAoB,CAAC,CAAC,CAAC,CACpB,oBAAC,SAAS,oBAAK,KAAK,EAAI,CAC3B,CAAC,CAAC,CAAC,CACA,oBAAC,QAAQ,CAAC,IAAI,IACV,KAAK,EAAE;gBACH,IAAI,EAAE,CAAC;gBACP,OAAO,EAAE,OAAO,CAAC,KAAK;gBACtB,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;aACxC,IAEA,WAAW,CAAC,CAAC,CAAC,oBAAC,WAAW,OAAG,CAAC,CAAC,CAAC,oBAAC,gBAAgB,OAAG,CACzC,CACnB,CACF,CACN,CAAC;IACN,CAAC,CAAC;IAEF,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,kDAAkD;AAClD,uCAAuC;AACvC,gDAAgD;AAChD,MAAM;AACN,0CAA0C;AAC1C,0FAA0F;AAC1F,4HAA4H;AAC5H,qEAAqE;AACrE,mBAAmB;AACnB,6BAA6B;AAC7B,sCAAsC;AACtC,2BAA2B;AAC3B,+BAA+B;AAC/B,8CAA8C;AAC9C,6DAA6D;AAC7D,uBAAuB;AACvB,gBAAgB;AAChB,2HAA2H;AAC3H,+BAA+B;AAC/B,aAAa;AACb,SAAS;AAET,gDAAgD;AAChD,sBAAsB;AACtB,IAAI;AAEJ,kDAAkD;AAClD,uCAAuC;AACvC,gDAAgD;AAChD,MAAM;AACN,0CAA0C;AAC1C,kFAAkF;AAClF,+FAA+F;AAC/F,qEAAqE;AACrE,mBAAmB;AACnB,kCAAkC;AAClC,+BAA+B;AAC/B,4CAA4C;AAC5C,0EAA0E;AAC1E,wDAAwD;AACxD,6CAA6C;AAC7C,oBAAoB;AACpB,sCAAsC;AACtC,sCAAsC;AACtC,gBAAgB;AAChB,2HAA2H;AAC3H,oCAAoC;AACpC,aAAa;AACb,SAAS;AAET,gDAAgD;AAChD,sBAAsB;AACtB,IAAI"}
@@ -1,6 +1,7 @@
1
+ /// <reference types="react-native-reanimated" />
1
2
  import React from 'react';
2
- import { TransitioningView } from 'react-native-reanimated';
3
3
  export declare const useAfterInteractions: () => {
4
4
  interactionsComplete: boolean;
5
- transitionRef: React.MutableRefObject<TransitioningView>;
5
+ opacity: import("react-native-reanimated").SharedValue<number>;
6
+ setInteractionsTimeOut: React.Dispatch<any>;
6
7
  };
@@ -1,29 +1,51 @@
1
- import React, { useState, useRef } from 'react';
1
+ import React, { useState } from 'react';
2
2
  import { InteractionManager } from 'react-native';
3
+ // import { TransitioningView } from 'react-native-reanimated';
4
+ import { useSharedValue, withTiming } from 'react-native-reanimated';
3
5
  import { useFocusEffect } from '@react-navigation/native';
4
6
  export const useAfterInteractions = () => {
5
7
  const [interactionsComplete, setInteractionsComplete] = useState(false);
6
- const subscriptionRef = useRef(null);
7
- const transitionRef = useRef(null);
8
+ const [interactionTimeout, setInteractionsTimeOut] = useState(200);
9
+ const opacity = useSharedValue(0);
10
+ // const subscriptionRef = useRef(null);
11
+ // const transitionRef = useRef<any>(null);
8
12
  useFocusEffect(React.useCallback(() => {
9
13
  // Do something when the screen is focused
10
- subscriptionRef.current = InteractionManager.runAfterInteractions(() => {
11
- var _a;
12
- (_a = transitionRef.current) === null || _a === void 0 ? void 0 : _a.animateNextTransition();
13
- setInteractionsComplete(true);
14
- subscriptionRef.current = null;
14
+ const interactionPromise = InteractionManager.runAfterInteractions(() => {
15
+ // Simulate some asynchronous task
16
+ setTimeout(() => {
17
+ // Start the animation
18
+ opacity.value = withTiming(1, { duration: 500 });
19
+ setInteractionsComplete(true);
20
+ }, interactionTimeout);
15
21
  });
16
22
  return () => {
17
- var _a;
18
23
  // Do something when the screen is unfocused
19
24
  // Useful for cleanup functions
25
+ interactionPromise === null || interactionPromise === void 0 ? void 0 : interactionPromise.cancel();
20
26
  setInteractionsComplete(false);
21
- (_a = subscriptionRef.current) === null || _a === void 0 ? void 0 : _a.cancel();
22
27
  };
23
- }, []));
28
+ }, [interactionTimeout]));
29
+ // useFocusEffect(
30
+ // React.useCallback(() => {
31
+ // // Do something when the screen is focused
32
+ // subscriptionRef.current = InteractionManager.runAfterInteractions(() => {
33
+ // transitionRef.current?.animateNextTransition();
34
+ // setInteractionsComplete(true);
35
+ // subscriptionRef.current = null;
36
+ // });
37
+ // return () => {
38
+ // // Do something when the screen is unfocused
39
+ // // Useful for cleanup functions
40
+ // setInteractionsComplete(false);
41
+ // subscriptionRef.current?.cancel();
42
+ // };
43
+ // }, []),
44
+ // );
24
45
  return {
25
46
  interactionsComplete,
26
- transitionRef,
47
+ opacity,
48
+ setInteractionsTimeOut,
27
49
  };
28
50
  };
29
51
  //# sourceMappingURL=use-after-interactions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-after-interactions.js","sourceRoot":"","sources":["../../src/hooks/use-after-interactions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExE,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAErC,MAAM,aAAa,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAEtD,cAAc,CACV,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnB,0CAA0C;QAC1C,eAAe,CAAC,OAAO,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,EAAE;;YACnE,MAAA,aAAa,CAAC,OAAO,0CAAE,qBAAqB,EAAE,CAAC;YAC/C,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC9B,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;;YACR,4CAA4C;YAC5C,+BAA+B;YAC/B,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAA,eAAe,CAAC,OAAO,0CAAE,MAAM,EAAE,CAAC;QACtC,CAAC,CAAC;IACN,CAAC,EAAE,EAAE,CAAC,CACT,CAAC;IAEF,OAAO;QACH,oBAAoB;QACpB,aAAa;KAChB,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"use-after-interactions.js","sourceRoot":"","sources":["../../src/hooks/use-after-interactions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAU,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,+DAA+D;AAC/D,OAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAM,GAAG,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAClC,wCAAwC;IACxC,2CAA2C;IAE3C,cAAc,CACV,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnB,0CAA0C;QAC1C,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,EAAE;YACpE,kCAAkC;YAClC,UAAU,CAAC,GAAG,EAAE;gBACZ,sBAAsB;gBACtB,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;gBACjD,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACR,4CAA4C;YAC5C,+BAA+B;YAC/B,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,MAAM,EAAE,CAAC;YAC7B,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAC3B,CAAC;IAEF,kBAAkB;IAClB,gCAAgC;IAChC,qDAAqD;IACrD,oFAAoF;IACpF,8DAA8D;IAC9D,6CAA6C;IAC7C,8CAA8C;IAC9C,cAAc;IAEd,yBAAyB;IACzB,2DAA2D;IAC3D,8CAA8C;IAC9C,8CAA8C;IAC9C,iDAAiD;IACjD,aAAa;IACb,cAAc;IACd,KAAK;IAEL,OAAO;QACH,oBAAoB;QACpB,OAAO;QACP,sBAAsB;KACzB,CAAC;AACN,CAAC,CAAC"}
package/lib/index.d.ts CHANGED
@@ -4,11 +4,11 @@ import useIsReady from './hooks/useIsReady';
4
4
  import routeConfigKeyReplace from './utils/routeConfigKeyReplace';
5
5
  import LayoutFeature, { ProLayout, AppFeatures, AppLayout } from './containers/layout/module';
6
6
  import { useLayoutSetting, LayoutSettingProps } from './hooks/useLayoutSetting';
7
+ export * from './components';
8
+ export * from './containers/layout/Lifecycle';
7
9
  export * from '@gluestack-ui/themed';
8
10
  export * from '@gluestack-ui/config';
9
11
  export * from '@gluestack-style/react';
10
- export * from './containers/layout/Lifecycle';
11
- export * from './components';
12
12
  export { useLayoutSetting, LayoutSettingProps, routeConfigKeyReplace, LayoutFeature, ProLayout, AppFeatures, AppLayout, useAfterInteractions, useIsReady, };
13
13
  declare const _default: Feature;
14
14
  export default _default;
package/lib/index.js CHANGED
@@ -5,17 +5,15 @@ import { settingsReducer } from './redux/settings';
5
5
  import { useAfterInteractions } from './hooks/use-after-interactions';
6
6
  import useIsReady from './hooks/useIsReady';
7
7
  import routeConfigKeyReplace from './utils/routeConfigKeyReplace';
8
- //changed
9
8
  import LayoutFeature, { ProLayout, AppFeatures, AppLayout } from './containers/layout/module';
10
9
  import { useLayoutSetting } from './hooks/useLayoutSetting';
11
- //...........................No change....///
10
+ export * from './components';
11
+ export * from './containers/layout/Lifecycle';
12
+ //...........................glustack-ui library....///
12
13
  export * from '@gluestack-ui/themed';
13
14
  export * from '@gluestack-ui/config';
14
15
  export * from '@gluestack-style/react';
15
- export * from './containers/layout/Lifecycle';
16
- //............................No change....///
17
- //changed
18
- export * from './components';
16
+ //............................gluestack-ui....///
19
17
  export { useLayoutSetting, routeConfigKeyReplace, LayoutFeature, ProLayout, AppFeatures, AppLayout, useAfterInteractions, useIsReady, };
20
18
  export default new Feature({
21
19
  reducer: { settings: settingsReducer, applicationErrors },
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,qBAAqB,MAAM,+BAA+B,CAAC;AAClE,SAAS;AACT,OAAO,aAAa,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAsB,MAAM,0BAA0B,CAAC;AAEhF,6CAA6C;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,8CAA8C;AAE9C,SAAS;AACT,cAAc,cAAc,CAAC;AAI7B,OAAO,EACH,gBAAgB,EAEhB,qBAAqB,EACrB,aAAa,EACb,SAAS,EACT,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,UAAU,GACb,CAAC;AAEF,eAAe,IAAI,OAAO,CAAC;IACvB,OAAO,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE;IACzD,iBAAiB,EAAE;QACf,YAAY,EAAE,CAAC,cAAc,CAAC;KACjC;CACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,qBAAqB,MAAM,+BAA+B,CAAC;AAClE,OAAO,aAAa,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAsB,MAAM,0BAA0B,CAAC;AAGhF,cAAc,cAAc,CAAC;AAC7B,cAAc,+BAA+B,CAAC;AAE9C,uDAAuD;AACvD,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,iDAAiD;AAGjD,OAAO,EACH,gBAAgB,EAEhB,qBAAqB,EACrB,aAAa,EACb,SAAS,EACT,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,UAAU,GACb,CAAC;AAEF,eAAe,IAAI,OAAO,CAAC;IACvB,OAAO,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE;IACzD,iBAAiB,EAAE;QACf,YAAY,EAAE,CAAC,cAAc,CAAC;KACjC;CACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@admin-layout/gluestack-ui-mobile",
3
- "version": "6.5.1-alpha.0",
3
+ "version": "6.5.2-alpha.0",
4
4
  "description": "Glustack-ui for mobile component layout",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -23,8 +23,8 @@
23
23
  "author": "CDMBase LLC",
24
24
  "license": "ISC",
25
25
  "dependencies": {
26
- "@admin-layout/client": "6.5.1-alpha.0",
27
- "@common-stack/remix-router-redux": "^4.0.1-alpha.1",
26
+ "@admin-layout/client": "6.0.8-alpha.0",
27
+ "@common-stack/remix-router-redux": "^4.0.1-alpha.3",
28
28
  "@gluestack-style/react": "^1.0.53",
29
29
  "@gluestack-ui/config": "^1.1.18",
30
30
  "@gluestack-ui/themed": "^1.1.22",
@@ -36,5 +36,5 @@
36
36
  "typescript": {
37
37
  "definition": "lib/index.d.ts"
38
38
  },
39
- "gitHead": "c71dd945a16165bda37320de7533b1b3d9d6a0b4"
39
+ "gitHead": "3460b4ebee6797573c42f64fe62d5ce7177adf09"
40
40
  }
@@ -1,33 +1,101 @@
1
1
  import React, { ComponentType } from 'react';
2
- import { Transition, Transitioning } from 'react-native-reanimated';
2
+ // import { Transition, Transitioning } from 'react-native-reanimated';
3
+ import Animated, { useSharedValue, withTiming } from 'react-native-reanimated';
3
4
  import { useAfterInteractions } from '../hooks/use-after-interactions';
4
- import { Box, Spinner, Text } from '@gluestack-ui/themed';
5
+ import { Box, Spinner, SafeAreaView ,Center} from '@gluestack-ui/themed';
5
6
  import hoistNonReactStatics from 'hoist-non-react-statics';
6
7
 
7
8
  export function withInteractionsManaged<Props>(
8
9
  Component: ComponentType<Props>,
9
10
  Placeholder: ComponentType | null = null,
11
+ interationTime?:number,
10
12
  ) {
11
13
  const Wrapped = (props: Props) => {
12
- const { transitionRef, interactionsComplete } = useAfterInteractions();
13
- const LoadingComponent = () => <Box flex={1}>{<Spinner color={'blue.500'} />}</Box>;
14
+ const {interactionsComplete, opacity,setInteractionsTimeOut } = useAfterInteractions();
15
+
16
+ React.useEffect(()=>{
17
+ if(interationTime) setInteractionsTimeOut(interationTime)
18
+ },[interationTime])
19
+
20
+ const LoadingComponent = () => (
21
+ // <SafeAreaView flex={1}>
22
+ <Center flex={1} justifyContent={'center'} alignItems={'center'}>{<Spinner color={'$blue500'} />}</Center>
23
+ // </SafeAreaView>
24
+ );
14
25
  console.log('interactionsComplete', interactionsComplete);
15
26
  return (
16
- <Transitioning.View
17
- transition={
18
- <Transition.Together>
19
- <Transition.Change interpolation="easeInOut" />
20
- <Transition.In type="fade" />
21
- </Transition.Together>
22
- }
23
- style={{ flex: 1 }}
24
- ref={transitionRef}
25
- >
26
- {interactionsComplete ? <Component {...props} /> : Placeholder ? <Placeholder /> : <LoadingComponent />}
27
- </Transitioning.View>
27
+ <>
28
+ {interactionsComplete ? (
29
+ <Component {...props} />
30
+ ) : (
31
+ <Animated.View
32
+ style={{
33
+ flex: 1,
34
+ opacity: opacity.value,
35
+ transform: [{ scale: opacity.value }],
36
+ }}
37
+ >
38
+ {Placeholder ? <Placeholder /> : <LoadingComponent />}
39
+ </Animated.View>
40
+ )}
41
+ </>
28
42
  );
29
43
  };
30
44
 
31
45
  hoistNonReactStatics(Wrapped, Component);
32
46
  return Wrapped;
33
47
  }
48
+
49
+ // export function withInteractionsManaged<Props>(
50
+ // Component: ComponentType<Props>,
51
+ // Placeholder: ComponentType | null = null,
52
+ // ) {
53
+ // const Wrapped = (props: Props) => {
54
+ // const { transitionRef, interactionsComplete,opacity } = useAfterInteractions();
55
+ // const LoadingComponent = () => <SafeAreaView><Box flex={1}>{<Spinner color={'blue.500'} />}</Box></SafeAreaView>;
56
+ // console.log('interactionsComplete', interactionsComplete);
57
+ // return (
58
+ // <Animated.View
59
+ // ref={transitionRef}
60
+ // style={{
61
+ // flex: 1,
62
+ // opacity: opacity.value,
63
+ // transform: [{ scale: opacity.value }],
64
+ // }}
65
+ // >
66
+ // {interactionsComplete ? <Component {...props} /> : Placeholder ? <Placeholder /> : <LoadingComponent />}
67
+ // </Animated.View>
68
+ // );
69
+ // };
70
+
71
+ // hoistNonReactStatics(Wrapped, Component);
72
+ // return Wrapped;
73
+ // }
74
+
75
+ // export function withInteractionsManaged<Props>(
76
+ // Component: ComponentType<Props>,
77
+ // Placeholder: ComponentType | null = null,
78
+ // ) {
79
+ // const Wrapped = (props: Props) => {
80
+ // const { transitionRef, interactionsComplete } = useAfterInteractions();
81
+ // const LoadingComponent = () => <Box flex={1}>{<Spinner color={'blue.500'} />}</Box>;
82
+ // console.log('interactionsComplete', interactionsComplete);
83
+ // return (
84
+ // <Transitioning.View
85
+ // transition={
86
+ // <Transition.Together>
87
+ // <Transition.Change interpolation="easeInOut" />
88
+ // <Transition.In type="fade" />
89
+ // </Transition.Together>
90
+ // }
91
+ // style={{ flex: 1 }}
92
+ // ref={transitionRef}
93
+ // >
94
+ // {interactionsComplete ? <Component {...props} /> : Placeholder ? <Placeholder /> : <LoadingComponent />}
95
+ // </Transitioning.View>
96
+ // );
97
+ // };
98
+
99
+ // hoistNonReactStatics(Wrapped, Component);
100
+ // return Wrapped;
101
+ // }
@@ -1,35 +1,58 @@
1
1
  import React, { useState, useRef } from 'react';
2
2
  import { InteractionManager } from 'react-native';
3
- import { TransitioningView } from 'react-native-reanimated';
3
+ // import { TransitioningView } from 'react-native-reanimated';
4
+ import { useSharedValue, withTiming } from 'react-native-reanimated';
4
5
  import { useFocusEffect } from '@react-navigation/native';
5
6
 
6
7
  export const useAfterInteractions = () => {
7
8
  const [interactionsComplete, setInteractionsComplete] = useState(false);
8
-
9
- const subscriptionRef = useRef(null);
10
-
11
- const transitionRef = useRef<TransitioningView>(null);
9
+ const [interactionTimeout, setInteractionsTimeOut] = useState<any>(200);
10
+ const opacity = useSharedValue(0);
11
+ // const subscriptionRef = useRef(null);
12
+ // const transitionRef = useRef<any>(null);
12
13
 
13
14
  useFocusEffect(
14
15
  React.useCallback(() => {
15
16
  // Do something when the screen is focused
16
- subscriptionRef.current = InteractionManager.runAfterInteractions(() => {
17
- transitionRef.current?.animateNextTransition();
18
- setInteractionsComplete(true);
19
- subscriptionRef.current = null;
17
+ const interactionPromise = InteractionManager.runAfterInteractions(() => {
18
+ // Simulate some asynchronous task
19
+ setTimeout(() => {
20
+ // Start the animation
21
+ opacity.value = withTiming(1, { duration: 500 });
22
+ setInteractionsComplete(true);
23
+ }, interactionTimeout);
20
24
  });
21
25
 
22
26
  return () => {
23
27
  // Do something when the screen is unfocused
24
28
  // Useful for cleanup functions
29
+ interactionPromise?.cancel();
25
30
  setInteractionsComplete(false);
26
- subscriptionRef.current?.cancel();
27
31
  };
28
- }, []),
32
+ }, [interactionTimeout]),
29
33
  );
30
34
 
35
+ // useFocusEffect(
36
+ // React.useCallback(() => {
37
+ // // Do something when the screen is focused
38
+ // subscriptionRef.current = InteractionManager.runAfterInteractions(() => {
39
+ // transitionRef.current?.animateNextTransition();
40
+ // setInteractionsComplete(true);
41
+ // subscriptionRef.current = null;
42
+ // });
43
+
44
+ // return () => {
45
+ // // Do something when the screen is unfocused
46
+ // // Useful for cleanup functions
47
+ // setInteractionsComplete(false);
48
+ // subscriptionRef.current?.cancel();
49
+ // };
50
+ // }, []),
51
+ // );
52
+
31
53
  return {
32
54
  interactionsComplete,
33
- transitionRef,
55
+ opacity,
56
+ setInteractionsTimeOut,
34
57
  };
35
58
  };
package/src/index.ts CHANGED
@@ -5,20 +5,18 @@ import { settingsReducer } from './redux/settings';
5
5
  import { useAfterInteractions } from './hooks/use-after-interactions';
6
6
  import useIsReady from './hooks/useIsReady';
7
7
  import routeConfigKeyReplace from './utils/routeConfigKeyReplace';
8
- //changed
9
8
  import LayoutFeature, { ProLayout, AppFeatures, AppLayout } from './containers/layout/module';
10
9
  import { useLayoutSetting, LayoutSettingProps } from './hooks/useLayoutSetting';
11
10
 
12
- //...........................No change....///
13
- export * from '@gluestack-ui/themed';
14
- export * from '@gluestack-ui/config';
15
- export * from '@gluestack-style/react';
16
- export * from './containers/layout/Lifecycle';
17
- //............................No change....///
18
11
 
19
- //changed
20
12
  export * from './components';
13
+ export * from './containers/layout/Lifecycle';
21
14
 
15
+ //...........................glustack-ui library....///
16
+ export * from '@gluestack-ui/themed';
17
+ export * from '@gluestack-ui/config';
18
+ export * from '@gluestack-style/react';
19
+ //............................gluestack-ui....///
22
20
 
23
21
 
24
22
  export {