one 1.2.5 → 1.2.7
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/dist/cjs/ui/Slot.cjs +42 -0
- package/dist/cjs/ui/Slot.js +27 -0
- package/dist/cjs/ui/Slot.js.map +6 -0
- package/dist/cjs/ui/Slot.native.js +48 -0
- package/dist/cjs/ui/Slot.native.js.map +1 -0
- package/dist/cjs/ui/TabContext.cjs +44 -0
- package/dist/cjs/ui/TabContext.js +35 -0
- package/dist/cjs/ui/TabContext.js.map +6 -0
- package/dist/cjs/ui/TabContext.native.js +47 -0
- package/dist/cjs/ui/TabContext.native.js.map +1 -0
- package/dist/cjs/ui/TabList.cjs +52 -0
- package/dist/cjs/ui/TabList.js +38 -0
- package/dist/cjs/ui/TabList.js.map +6 -0
- package/dist/cjs/ui/TabList.native.js +57 -0
- package/dist/cjs/ui/TabList.native.js.map +1 -0
- package/dist/cjs/ui/TabRouter.cjs +47 -0
- package/dist/cjs/ui/TabRouter.js +41 -0
- package/dist/cjs/ui/TabRouter.js.map +6 -0
- package/dist/cjs/ui/TabRouter.native.js +57 -0
- package/dist/cjs/ui/TabRouter.native.js.map +1 -0
- package/dist/cjs/ui/TabSlot.cjs +115 -0
- package/dist/cjs/ui/TabSlot.js +91 -0
- package/dist/cjs/ui/TabSlot.js.map +6 -0
- package/dist/cjs/ui/TabSlot.native.js +120 -0
- package/dist/cjs/ui/TabSlot.native.js.map +1 -0
- package/dist/cjs/ui/TabTrigger.cjs +151 -0
- package/dist/cjs/ui/TabTrigger.js +120 -0
- package/dist/cjs/ui/TabTrigger.js.map +6 -0
- package/dist/cjs/ui/TabTrigger.native.js +153 -0
- package/dist/cjs/ui/TabTrigger.native.js.map +1 -0
- package/dist/cjs/ui/Tabs.cjs +175 -0
- package/dist/cjs/ui/Tabs.js +121 -0
- package/dist/cjs/ui/Tabs.js.map +6 -0
- package/dist/cjs/ui/Tabs.native.js +191 -0
- package/dist/cjs/ui/Tabs.native.js.map +1 -0
- package/dist/cjs/ui/common.cjs +160 -0
- package/dist/cjs/ui/common.js +146 -0
- package/dist/cjs/ui/common.js.map +6 -0
- package/dist/cjs/ui/common.native.js +223 -0
- package/dist/cjs/ui/common.native.js.map +1 -0
- package/dist/cjs/ui/index.cjs +18 -0
- package/dist/cjs/ui/index.js +15 -0
- package/dist/cjs/ui/index.js.map +6 -0
- package/dist/cjs/ui/index.native.js +21 -0
- package/dist/cjs/ui/index.native.js.map +1 -0
- package/dist/cjs/ui/useComponent.cjs +46 -0
- package/dist/cjs/ui/useComponent.js +37 -0
- package/dist/cjs/ui/useComponent.js.map +6 -0
- package/dist/cjs/ui/useComponent.native.js +53 -0
- package/dist/cjs/ui/useComponent.native.js.map +1 -0
- package/dist/esm/ui/Slot.js +17 -0
- package/dist/esm/ui/Slot.js.map +6 -0
- package/dist/esm/ui/Slot.mjs +19 -0
- package/dist/esm/ui/Slot.mjs.map +1 -0
- package/dist/esm/ui/Slot.native.js +22 -0
- package/dist/esm/ui/Slot.native.js.map +1 -0
- package/dist/esm/ui/TabContext.js +19 -0
- package/dist/esm/ui/TabContext.js.map +6 -0
- package/dist/esm/ui/TabContext.mjs +17 -0
- package/dist/esm/ui/TabContext.mjs.map +1 -0
- package/dist/esm/ui/TabContext.native.js +17 -0
- package/dist/esm/ui/TabContext.native.js.map +1 -0
- package/dist/esm/ui/TabList.js +24 -0
- package/dist/esm/ui/TabList.js.map +6 -0
- package/dist/esm/ui/TabList.mjs +28 -0
- package/dist/esm/ui/TabList.mjs.map +1 -0
- package/dist/esm/ui/TabList.native.js +30 -0
- package/dist/esm/ui/TabList.native.js.map +1 -0
- package/dist/esm/ui/TabRouter.js +27 -0
- package/dist/esm/ui/TabRouter.js.map +6 -0
- package/dist/esm/ui/TabRouter.mjs +24 -0
- package/dist/esm/ui/TabRouter.mjs.map +1 -0
- package/dist/esm/ui/TabRouter.native.js +31 -0
- package/dist/esm/ui/TabRouter.native.js.map +1 -0
- package/dist/esm/ui/TabSlot.js +80 -0
- package/dist/esm/ui/TabSlot.js.map +6 -0
- package/dist/esm/ui/TabSlot.mjs +89 -0
- package/dist/esm/ui/TabSlot.mjs.map +1 -0
- package/dist/esm/ui/TabSlot.native.js +91 -0
- package/dist/esm/ui/TabSlot.native.js.map +1 -0
- package/dist/esm/ui/TabTrigger.js +115 -0
- package/dist/esm/ui/TabTrigger.js.map +6 -0
- package/dist/esm/ui/TabTrigger.mjs +126 -0
- package/dist/esm/ui/TabTrigger.mjs.map +1 -0
- package/dist/esm/ui/TabTrigger.native.js +125 -0
- package/dist/esm/ui/TabTrigger.native.js.map +1 -0
- package/dist/esm/ui/Tabs.js +130 -0
- package/dist/esm/ui/Tabs.js.map +6 -0
- package/dist/esm/ui/Tabs.mjs +149 -0
- package/dist/esm/ui/Tabs.mjs.map +1 -0
- package/dist/esm/ui/Tabs.native.js +162 -0
- package/dist/esm/ui/Tabs.native.js.map +1 -0
- package/dist/esm/ui/common.js +133 -0
- package/dist/esm/ui/common.js.map +6 -0
- package/dist/esm/ui/common.mjs +135 -0
- package/dist/esm/ui/common.mjs.map +1 -0
- package/dist/esm/ui/common.native.js +195 -0
- package/dist/esm/ui/common.native.js.map +1 -0
- package/dist/esm/ui/index.js +2 -0
- package/dist/esm/ui/index.js.map +6 -0
- package/dist/esm/ui/index.mjs +2 -0
- package/dist/esm/ui/index.mjs.map +1 -0
- package/dist/esm/ui/index.native.js +2 -0
- package/dist/esm/ui/index.native.js.map +1 -0
- package/dist/esm/ui/useComponent.js +22 -0
- package/dist/esm/ui/useComponent.js.map +6 -0
- package/dist/esm/ui/useComponent.mjs +23 -0
- package/dist/esm/ui/useComponent.mjs.map +1 -0
- package/dist/esm/ui/useComponent.native.js +27 -0
- package/dist/esm/ui/useComponent.native.js.map +1 -0
- package/package.json +18 -9
- package/src/ui/README.md +121 -0
- package/src/ui/Slot.tsx +34 -0
- package/src/ui/TabContext.tsx +115 -0
- package/src/ui/TabList.tsx +47 -0
- package/src/ui/TabRouter.tsx +79 -0
- package/src/ui/TabSlot.tsx +170 -0
- package/src/ui/TabTrigger.tsx +282 -0
- package/src/ui/Tabs.tsx +313 -0
- package/src/ui/common.tsx +277 -0
- package/src/ui/index.ts +1 -0
- package/src/ui/useComponent.tsx +42 -0
- package/types/ui/Slot.d.ts +6 -0
- package/types/ui/Slot.d.ts.map +1 -0
- package/types/ui/TabContext.d.ts +190 -0
- package/types/ui/TabContext.d.ts.map +1 -0
- package/types/ui/TabList.d.ts +25 -0
- package/types/ui/TabList.d.ts.map +1 -0
- package/types/ui/TabRouter.d.ts +103 -0
- package/types/ui/TabRouter.d.ts.map +1 -0
- package/types/ui/TabSlot.d.ts +73 -0
- package/types/ui/TabSlot.d.ts.map +1 -0
- package/types/ui/TabTrigger.d.ts +88 -0
- package/types/ui/TabTrigger.d.ts.map +1 -0
- package/types/ui/Tabs.d.ts +255 -0
- package/types/ui/Tabs.d.ts.map +1 -0
- package/types/ui/common.d.ts +40 -0
- package/types/ui/common.d.ts.map +1 -0
- package/types/ui/index.d.ts +2 -0
- package/types/ui/index.d.ts.map +1 -0
- package/types/ui/useComponent.d.ts +10 -0
- package/types/ui/useComponent.d.ts.map +1 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: !0
|
|
9
|
+
});
|
|
10
|
+
},
|
|
11
|
+
__copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
13
|
+
get: () => from[key],
|
|
14
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
|
+
});
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
+
value: !0
|
|
20
|
+
}), mod);
|
|
21
|
+
var useComponent_exports = {};
|
|
22
|
+
__export(useComponent_exports, {
|
|
23
|
+
useComponent: () => useComponent
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(useComponent_exports);
|
|
26
|
+
var import_react = require("react"),
|
|
27
|
+
import_jsx_runtime = require("react/jsx-runtime");
|
|
28
|
+
const NavigationContent = ({
|
|
29
|
+
render,
|
|
30
|
+
children
|
|
31
|
+
}) => render(children);
|
|
32
|
+
function useComponent(render) {
|
|
33
|
+
const renderRef = (0, import_react.useRef)(render);
|
|
34
|
+
return renderRef.current = render, (0, import_react.useEffect)(() => {
|
|
35
|
+
renderRef.current = null;
|
|
36
|
+
}), (0, import_react.useRef)((0, import_react.forwardRef)(({
|
|
37
|
+
children
|
|
38
|
+
}, _ref) => {
|
|
39
|
+
const render2 = renderRef.current;
|
|
40
|
+
if (render2 === null) throw new Error("The returned component must be rendered in the same render phase as the hook.");
|
|
41
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(NavigationContent, {
|
|
42
|
+
render: render2,
|
|
43
|
+
children
|
|
44
|
+
});
|
|
45
|
+
})).current;
|
|
46
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
8
|
+
}, __copyProps = (to, from, except, desc) => {
|
|
9
|
+
if (from && typeof from == "object" || typeof from == "function")
|
|
10
|
+
for (let key of __getOwnPropNames(from))
|
|
11
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
15
|
+
var useComponent_exports = {};
|
|
16
|
+
__export(useComponent_exports, {
|
|
17
|
+
useComponent: () => useComponent
|
|
18
|
+
});
|
|
19
|
+
module.exports = __toCommonJS(useComponent_exports);
|
|
20
|
+
var import_react = require("react"), import_jsx_runtime = require("react/jsx-runtime");
|
|
21
|
+
const NavigationContent = ({ render, children }) => render(children);
|
|
22
|
+
function useComponent(render) {
|
|
23
|
+
const renderRef = (0, import_react.useRef)(render);
|
|
24
|
+
return renderRef.current = render, (0, import_react.useEffect)(() => {
|
|
25
|
+
renderRef.current = null;
|
|
26
|
+
}), (0, import_react.useRef)(
|
|
27
|
+
(0, import_react.forwardRef)(({ children }, _ref) => {
|
|
28
|
+
const render2 = renderRef.current;
|
|
29
|
+
if (render2 === null)
|
|
30
|
+
throw new Error(
|
|
31
|
+
"The returned component must be rendered in the same render phase as the hook."
|
|
32
|
+
);
|
|
33
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NavigationContent, { render: render2, children });
|
|
34
|
+
})
|
|
35
|
+
).current;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=useComponent.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ui/useComponent.tsx"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwD,kBAsC3C;AA1Bb,MAAM,oBAAoB,CAAC,EAAE,QAAQ,SAAS,MACrC,OAAO,QAAQ;AAGjB,SAAS,aAAa,QAAgB;AAC3C,QAAM,gBAAY,qBAAsB,MAAM;AAK9C,mBAAU,UAAU,YAEpB,wBAAU,MAAM;AACd,cAAU,UAAU;AAAA,EACtB,CAAC,OAEM;AAAA,QACL,yBAAW,CAAC,EAAE,SAAS,GAAkC,SAAS;AAChE,YAAMA,UAAS,UAAU;AAEzB,UAAIA,YAAW;AACb,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAGF,aAAO,4CAAC,qBAAkB,QAAQA,SAAS,UAAS;AAAA,IACtD,CAAC;AAAA,EACH,EAAE;AACJ;",
|
|
5
|
+
"names": ["render"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: !0
|
|
11
|
+
});
|
|
12
|
+
},
|
|
13
|
+
__copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
15
|
+
get: () => from[key],
|
|
16
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
+
});
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
+
value: !0
|
|
22
|
+
}), mod);
|
|
23
|
+
var useComponent_exports = {};
|
|
24
|
+
__export(useComponent_exports, {
|
|
25
|
+
useComponent: () => useComponent
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(useComponent_exports);
|
|
28
|
+
var import_jsx_runtime = require("react/jsx-runtime"),
|
|
29
|
+
import_react = require("react"),
|
|
30
|
+
NavigationContent = function (param) {
|
|
31
|
+
var {
|
|
32
|
+
render,
|
|
33
|
+
children
|
|
34
|
+
} = param;
|
|
35
|
+
return render(children);
|
|
36
|
+
};
|
|
37
|
+
function useComponent(render) {
|
|
38
|
+
var renderRef = (0, import_react.useRef)(render);
|
|
39
|
+
return renderRef.current = render, (0, import_react.useEffect)(function () {
|
|
40
|
+
renderRef.current = null;
|
|
41
|
+
}), (0, import_react.useRef)(/* @__PURE__ */(0, import_react.forwardRef)(function (param, _ref) {
|
|
42
|
+
var {
|
|
43
|
+
children
|
|
44
|
+
} = param,
|
|
45
|
+
_$render = renderRef.current;
|
|
46
|
+
if (_$render === null) throw new Error("The returned component must be rendered in the same render phase as the hook.");
|
|
47
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(NavigationContent, {
|
|
48
|
+
render: _$render,
|
|
49
|
+
children
|
|
50
|
+
});
|
|
51
|
+
})).current;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=useComponent.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useComponent_exports","__export","useComponent","module","exports","import_jsx_runtime","require","import_react","NavigationContent","param","render","children","renderRef","useRef","current","useEffect","forwardRef","_ref","_$render","Error","jsx"],"sources":["../../../src/ui/useComponent.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,oBAAA;AAAAC,QAAA,CAAAD,oBAAA;EAAAE,YAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAwD,CAAAK,oBAsC3C;AA1Bb,IAAAK,kBAAM,GAAAC,OAAuB,oBACpB;EAAAC,YAAe,GAAAD,OAAA;EAAAE,iBAAA,YAAAA,CAAAC,KAAA;IAGjB;MAAAC,MAAS;MAAAC;IAAa,IAAAF,KAAgB;IAC3C,OAAMC,MAAA,CAAAC,QAAY;EAKlB;AAGE,SAAAT,YAAUA,CAAAQ,MAAU;EACtB,IAACE,SAEM,OAAAL,YAAA,CAAAM,MAAA,EAAAH,MAAA;EAAA,OACLE,SAAA,CAAAE,OAAA,GAAAJ,MAAY,EAAE,IAAAH,YAA2C,CAAAQ,SAAS;IAChEH,SAAM,CAAAE,OAAA,GAAS;EAEf,QAAIP,YAAW,CAAAM,MAAA,qBAAAN,YAAA,CAAAS,UAAA,YAAAP,KAAA,EAAAQ,IAAA;IACb;QAAAN;MAAU,IAAAF,KAAA;MAAAS,QAAA,GAAAN,SAAA,CAAAE,OAAA;IAAA,IAAAI,QACR,iBACF,IAAAC,KAAA;IAGF,sBAAO,IAAAd,kBAAA,CAAAe,GAAA,EAAAZ,iBAAC;MACTE,MAAA,EAAAQ,QAAA;MACDP;IACJ","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Slot as RUISlot } from "@radix-ui/react-slot";
|
|
2
|
+
import {
|
|
3
|
+
forwardRef,
|
|
4
|
+
useMemo
|
|
5
|
+
} from "react";
|
|
6
|
+
import { StyleSheet } from "react-native-web";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
function ShimSlotForReactNative(Component) {
|
|
9
|
+
return forwardRef(function({ style, ...props }, ref) {
|
|
10
|
+
return style = useMemo(() => StyleSheet.flatten(style), [style]), /* @__PURE__ */ jsx(Component, { ref, ...props, style });
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
const Slot = ShimSlotForReactNative(RUISlot);
|
|
14
|
+
export {
|
|
15
|
+
Slot
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=Slot.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ui/Slot.tsx"],
|
|
4
|
+
"mappings": "AAAA,SAAS,QAAQ,eAAe;AAChC;AAAA,EACE;AAAA,EACA;AAAA,OAIK;AACP,SAAS,kBAAkC;AAkBhC;AAHX,SAAS,uBAAuB,WAA2C;AACzE,SAAO,WAAW,SAAmB,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK;AAC7D,mBAAQ,QAAQ,MAAM,WAAW,QAAQ,KAAK,GAAG,CAAC,KAAK,CAAC,GACjD,oBAAC,aAAU,KAAW,GAAG,OAAO,OAAc;AAAA,EACvD,CAAC;AACH;AAKO,MAAM,OAAa,uBAAuB,OAAO;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Slot as RUISlot } from "@radix-ui/react-slot";
|
|
2
|
+
import { forwardRef, useMemo } from "react";
|
|
3
|
+
import { StyleSheet } from "react-native-web";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
function ShimSlotForReactNative(Component) {
|
|
6
|
+
return forwardRef(function ({
|
|
7
|
+
style,
|
|
8
|
+
...props
|
|
9
|
+
}, ref) {
|
|
10
|
+
return style = useMemo(() => StyleSheet.flatten(style), [style]), /* @__PURE__ */jsx(Component, {
|
|
11
|
+
ref,
|
|
12
|
+
...props,
|
|
13
|
+
style
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
const Slot = ShimSlotForReactNative(RUISlot);
|
|
18
|
+
export { Slot };
|
|
19
|
+
//# sourceMappingURL=Slot.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Slot","RUISlot","forwardRef","useMemo","StyleSheet","jsx","ShimSlotForReactNative","Component","style","props","ref","flatten"],"sources":["../../../src/ui/Slot.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAA,IAAQC,OAAA,QAAe;AAChC,SACEC,UAAA,EACAC,OAAA,QAIK;AACP,SAASC,UAAA,QAAkC;AAkBhC,SAAAC,GAAA;AAHX,SAASC,uBAAuBC,SAAA,EAA2C;EACzE,OAAOL,UAAA,CAAW,UAAmB;IAAEM,KAAA;IAAO,GAAGC;EAAM,GAAGC,GAAA,EAAK;IAC7D,OAAAF,KAAA,GAAQL,OAAA,CAAQ,MAAMC,UAAA,CAAWO,OAAA,CAAQH,KAAK,GAAG,CAACA,KAAK,CAAC,GACjD,eAAAH,GAAA,CAACE,SAAA;MAAUG,GAAA;MAAW,GAAGD,KAAA;MAAOD;IAAA,CAAc;EACvD,CAAC;AACH;AAKO,MAAMR,IAAA,GAAaM,sBAAA,CAAuBL,OAAO","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Slot as RUISlot } from "@radix-ui/react-slot";
|
|
3
|
+
import { forwardRef, useMemo } from "react";
|
|
4
|
+
import { StyleSheet } from "react-native";
|
|
5
|
+
function ShimSlotForReactNative(Component) {
|
|
6
|
+
return /* @__PURE__ */forwardRef(function (param, ref) {
|
|
7
|
+
var {
|
|
8
|
+
style,
|
|
9
|
+
...props
|
|
10
|
+
} = param;
|
|
11
|
+
return style = useMemo(function () {
|
|
12
|
+
return StyleSheet.flatten(style);
|
|
13
|
+
}, [style]), /* @__PURE__ */_jsx(Component, {
|
|
14
|
+
ref,
|
|
15
|
+
...props,
|
|
16
|
+
style
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
var Slot = ShimSlotForReactNative(RUISlot);
|
|
21
|
+
export { Slot };
|
|
22
|
+
//# sourceMappingURL=Slot.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","Slot","RUISlot","forwardRef","useMemo","StyleSheet","ShimSlotForReactNative","Component","param","ref","style","props","flatten"],"sources":["../../../src/ui/Slot.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAQ,2BAAe;AAChC,SAAAC,IAAA,IAAAC,OAAA;AAAA,SACEC,UAAA,EAAAC,OAAA;AAAA,SACAC,UAAA;AAAA,SAIKC,uBAAAC,SAAA;EACP,OAAS,eAAAJ,UAAkC,WAAAK,KAAA,EAAAC,GAAA;IAkBhC;MAAAC,KAAA;MAAA,GAAAC;IAAA,IAAAH,KAAA;IAHX,OAASE,KAAA,GAAAN,OAAA,aAAuB;MAC9B,OAAOC,UAAW,CAAAO,OAAqB,CAAAF,KAAA,CAAO;IAC5C,IAEDA,KAAA,CACH,kBAAAV,IAAA,CAAAO,SAAA;MAKaE,GAAA","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { createContext } from "react";
|
|
2
|
+
const TabContext = createContext({}), TabTriggerMapContext = createContext({}), TabsDescriptorsContext = createContext({}), TabsNavigatorContext = createContext(null), TabsStateContext = createContext({
|
|
3
|
+
type: "tab",
|
|
4
|
+
preloadedRouteKeys: [],
|
|
5
|
+
history: [],
|
|
6
|
+
index: -1,
|
|
7
|
+
key: "",
|
|
8
|
+
stale: !1,
|
|
9
|
+
routeNames: [],
|
|
10
|
+
routes: []
|
|
11
|
+
});
|
|
12
|
+
export {
|
|
13
|
+
TabContext,
|
|
14
|
+
TabTriggerMapContext,
|
|
15
|
+
TabsDescriptorsContext,
|
|
16
|
+
TabsNavigatorContext,
|
|
17
|
+
TabsStateContext
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=TabContext.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ui/TabContext.tsx"],
|
|
4
|
+
"mappings": "AAWA,SAAS,qBAAqB;AA2EvB,MAAM,aAAa,cAA+B,CAAC,CAAC,GAI9C,uBAAuB,cAA0B,CAAC,CAAC,GAInD,yBAAyB,cAA+C,CAAC,CAAC,GAI1E,uBAAuB,cAAqD,IAAI,GAIhF,mBAAmB,cAAyC;AAAA,EACvE,MAAM;AAAA,EACN,oBAAoB,CAAC;AAAA,EACrB,SAAS,CAAC;AAAA,EACV,OAAO;AAAA,EACP,KAAK;AAAA,EACL,OAAO;AAAA,EACP,YAAY,CAAC;AAAA,EACb,QAAQ,CAAC;AACX,CAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createContext } from "react";
|
|
2
|
+
const TabContext = createContext({}),
|
|
3
|
+
TabTriggerMapContext = createContext({}),
|
|
4
|
+
TabsDescriptorsContext = createContext({}),
|
|
5
|
+
TabsNavigatorContext = createContext(null),
|
|
6
|
+
TabsStateContext = createContext({
|
|
7
|
+
type: "tab",
|
|
8
|
+
preloadedRouteKeys: [],
|
|
9
|
+
history: [],
|
|
10
|
+
index: -1,
|
|
11
|
+
key: "",
|
|
12
|
+
stale: !1,
|
|
13
|
+
routeNames: [],
|
|
14
|
+
routes: []
|
|
15
|
+
});
|
|
16
|
+
export { TabContext, TabTriggerMapContext, TabsDescriptorsContext, TabsNavigatorContext, TabsStateContext };
|
|
17
|
+
//# sourceMappingURL=TabContext.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","TabContext","TabTriggerMapContext","TabsDescriptorsContext","TabsNavigatorContext","TabsStateContext","type","preloadedRouteKeys","history","index","key","stale","routeNames","routes"],"sources":["../../../src/ui/TabContext.tsx"],"sourcesContent":[null],"mappings":"AAWA,SAASA,aAAA,QAAqB;AA2EvB,MAAMC,UAAA,GAAaD,aAAA,CAA+B,CAAC,CAAC;EAI9CE,oBAAA,GAAuBF,aAAA,CAA0B,CAAC,CAAC;EAInDG,sBAAA,GAAyBH,aAAA,CAA+C,CAAC,CAAC;EAI1EI,oBAAA,GAAuBJ,aAAA,CAAqD,IAAI;EAIhFK,gBAAA,GAAmBL,aAAA,CAAyC;IACvEM,IAAA,EAAM;IACNC,kBAAA,EAAoB,EAAC;IACrBC,OAAA,EAAS,EAAC;IACVC,KAAA,EAAO;IACPC,GAAA,EAAK;IACLC,KAAA,EAAO;IACPC,UAAA,EAAY,EAAC;IACbC,MAAA,EAAQ;EACV,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createContext } from "react";
|
|
2
|
+
var TabContext = /* @__PURE__ */createContext({}),
|
|
3
|
+
TabTriggerMapContext = /* @__PURE__ */createContext({}),
|
|
4
|
+
TabsDescriptorsContext = /* @__PURE__ */createContext({}),
|
|
5
|
+
TabsNavigatorContext = /* @__PURE__ */createContext(null),
|
|
6
|
+
TabsStateContext = /* @__PURE__ */createContext({
|
|
7
|
+
type: "tab",
|
|
8
|
+
preloadedRouteKeys: [],
|
|
9
|
+
history: [],
|
|
10
|
+
index: -1,
|
|
11
|
+
key: "",
|
|
12
|
+
stale: !1,
|
|
13
|
+
routeNames: [],
|
|
14
|
+
routes: []
|
|
15
|
+
});
|
|
16
|
+
export { TabContext, TabTriggerMapContext, TabsDescriptorsContext, TabsNavigatorContext, TabsStateContext };
|
|
17
|
+
//# sourceMappingURL=TabContext.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","TabContext","TabTriggerMapContext","TabsDescriptorsContext","TabsNavigatorContext","TabsStateContext","type","preloadedRouteKeys","history","index","key","stale","routeNames","routes"],"sources":["../../../src/ui/TabContext.tsx"],"sourcesContent":[null],"mappings":"AAWA,SAASA,aAAA,QAAqB;AA2EvB,IAAAC,UAAM,kBAA4CD,aAI5C;EAAAE,oBAAuB,GAA0B,eAIjDF,aAAA,CAAyB;EAAAG,sBAIzB,kBAAuBH,aAAqD,CAAI,GAIhF;EAAAI,oBAAmB,kBAAyCJ,aAAA;EAAAK,gBAAA,kBAAAL,aAAA;IACvEM,IAAA,EAAM;IACNC,kBAAA,EAAoB,EAAC;IACrBC,OAAA,EAAS,EAAC;IACVC,KAAA,EAAO;IACPC,GAAA,EAAK;IACLC,KAAA,EAAO;IACPC,UAAA,EAAY,EAAC;IACbC,MAAA,EAAQ;EACV,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { View, StyleSheet } from "react-native-web";
|
|
2
|
+
import { ViewSlot } from "./common";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
function TabList({ asChild, style, ...props }) {
|
|
5
|
+
return /* @__PURE__ */ jsx(asChild ? ViewSlot : View, { style: [styles.tabList, style], ...props });
|
|
6
|
+
}
|
|
7
|
+
function isTabList(child) {
|
|
8
|
+
return child.type === TabList;
|
|
9
|
+
}
|
|
10
|
+
const styles = StyleSheet.create({
|
|
11
|
+
tabList: {
|
|
12
|
+
flexDirection: "row",
|
|
13
|
+
justifyContent: "space-between"
|
|
14
|
+
},
|
|
15
|
+
tabTrigger: {
|
|
16
|
+
flexDirection: "row",
|
|
17
|
+
justifyContent: "space-between"
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
export {
|
|
21
|
+
TabList,
|
|
22
|
+
isTabList
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=TabList.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ui/TabList.tsx"],
|
|
4
|
+
"mappings": "AACA,SAAS,MAAM,kBAAkC;AAEjD,SAAS,gBAAgB;AAsBhB;AAFF,SAAS,QAAQ,EAAE,SAAS,OAAO,GAAG,MAAM,GAAiB;AAElE,SAAO,oBADM,UAAU,WAAW,MAC1B,EAAK,OAAO,CAAC,OAAO,SAAS,KAAK,GAAI,GAAG,OAAO;AAC1D;AAKO,SAAS,UACd,OACuD;AACvD,SAAO,MAAM,SAAS;AACxB;AAEA,MAAM,SAAS,WAAW,OAAO;AAAA,EAC/B,SAAS;AAAA,IACP,eAAe;AAAA,IACf,gBAAgB;AAAA,EAClB;AAAA,EACA,YAAY;AAAA,IACV,eAAe;AAAA,IACf,gBAAgB;AAAA,EAClB;AACF,CAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { View, StyleSheet } from "react-native-web";
|
|
2
|
+
import { ViewSlot } from "./common.mjs";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
function TabList({
|
|
5
|
+
asChild,
|
|
6
|
+
style,
|
|
7
|
+
...props
|
|
8
|
+
}) {
|
|
9
|
+
return /* @__PURE__ */jsx(asChild ? ViewSlot : View, {
|
|
10
|
+
style: [styles.tabList, style],
|
|
11
|
+
...props
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
function isTabList(child) {
|
|
15
|
+
return child.type === TabList;
|
|
16
|
+
}
|
|
17
|
+
const styles = StyleSheet.create({
|
|
18
|
+
tabList: {
|
|
19
|
+
flexDirection: "row",
|
|
20
|
+
justifyContent: "space-between"
|
|
21
|
+
},
|
|
22
|
+
tabTrigger: {
|
|
23
|
+
flexDirection: "row",
|
|
24
|
+
justifyContent: "space-between"
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
export { TabList, isTabList };
|
|
28
|
+
//# sourceMappingURL=TabList.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["View","StyleSheet","ViewSlot","jsx","TabList","asChild","style","props","styles","tabList","isTabList","child","type","create","flexDirection","justifyContent","tabTrigger"],"sources":["../../../src/ui/TabList.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,IAAA,EAAMC,UAAA,QAAkC;AAEjD,SAASC,QAAA,QAAgB;AAsBhB,SAAAC,GAAA;AAFF,SAASC,QAAQ;EAAEC,OAAA;EAASC,KAAA;EAAO,GAAGC;AAAM,GAAiB;EAElE,OAAO,eAAAJ,GAAA,CADME,OAAA,GAAUH,QAAA,GAAWF,IAAA,EAC1B;IAAKM,KAAA,EAAO,CAACE,MAAA,CAAOC,OAAA,EAASH,KAAK;IAAI,GAAGC;EAAA,CAAO;AAC1D;AAKO,SAASG,UACdC,KAAA,EACuD;EACvD,OAAOA,KAAA,CAAMC,IAAA,KAASR,OAAA;AACxB;AAEA,MAAMI,MAAA,GAASP,UAAA,CAAWY,MAAA,CAAO;EAC/BJ,OAAA,EAAS;IACPK,aAAA,EAAe;IACfC,cAAA,EAAgB;EAClB;EACAC,UAAA,EAAY;IACVF,aAAA,EAAe;IACfC,cAAA,EAAgB;EAClB;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { View, StyleSheet } from "react-native";
|
|
3
|
+
import { ViewSlot } from "./common.native.js";
|
|
4
|
+
function TabList(param) {
|
|
5
|
+
var {
|
|
6
|
+
asChild,
|
|
7
|
+
style,
|
|
8
|
+
...props
|
|
9
|
+
} = param,
|
|
10
|
+
Comp = asChild ? ViewSlot : View;
|
|
11
|
+
return /* @__PURE__ */_jsx(Comp, {
|
|
12
|
+
style: [styles.tabList, style],
|
|
13
|
+
...props
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
function isTabList(child) {
|
|
17
|
+
return child.type === TabList;
|
|
18
|
+
}
|
|
19
|
+
var styles = StyleSheet.create({
|
|
20
|
+
tabList: {
|
|
21
|
+
flexDirection: "row",
|
|
22
|
+
justifyContent: "space-between"
|
|
23
|
+
},
|
|
24
|
+
tabTrigger: {
|
|
25
|
+
flexDirection: "row",
|
|
26
|
+
justifyContent: "space-between"
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
export { TabList, isTabList };
|
|
30
|
+
//# sourceMappingURL=TabList.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","View","StyleSheet","ViewSlot","TabList","param","asChild","style","props","Comp","styles","tabList","isTabList","child","type","create","flexDirection"],"sources":["../../../src/ui/TabList.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAMC,IAAA,2BAAkC;AAEjD,SAASC,IAAA,EAAAC,UAAgB;AAsBhB,SAAAC,QAAA;AAFF,SAASC,QAAQC,KAAE;EAExB;MAAAC,OAAO;MAAAC,KAAA;MAAA,GAAAC;IADM,IAAAH,KAAU;IAAAI,IAAA,GAAWH,OACrB,GAAAH,QAAQ,GAAAF,IAAO;EAC9B,sBAAAD,IAAA,CAAAS,IAAA;IAKOF,KAAS,GAGdG,MAAO,CAAAC,OAAM,EACfJ,KAAA,CAEA;IACE,GAAAC;EAAS,EACP;AAAe;AACC,SAClBI,UAAAC,KAAA;EACA,OAAAA,KAAY,CAAAC,IAAA,KAAAV,OAAA;AAAA;AACK,IACfM,MAAA,GAAAR,UAAgB,CAAAa,MAAA;EAClBJ,OAAA;IACDK,aAAA","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {
|
|
2
|
+
TabRouter as RNTabRouter
|
|
3
|
+
} from "@react-navigation/native";
|
|
4
|
+
function ExpoTabRouter(options) {
|
|
5
|
+
const rnTabRouter = RNTabRouter(options);
|
|
6
|
+
return {
|
|
7
|
+
...rnTabRouter,
|
|
8
|
+
getStateForAction(state, action, options2) {
|
|
9
|
+
if (action.type !== "JUMP_TO")
|
|
10
|
+
return rnTabRouter.getStateForAction(state, action, options2);
|
|
11
|
+
const route = state.routes.find((route2) => route2.name === action.payload.name);
|
|
12
|
+
if (!route)
|
|
13
|
+
return null;
|
|
14
|
+
let shouldReset = !state.history.some((item) => item.key === route?.key) && !route.state;
|
|
15
|
+
return !shouldReset && "resetOnFocus" in action.payload && action.payload.resetOnFocus && (shouldReset = state.routes[state.index].key !== route.key), shouldReset ? (options2.routeParamList[route.name] = {
|
|
16
|
+
...options2.routeParamList[route.name]
|
|
17
|
+
}, state = {
|
|
18
|
+
...state,
|
|
19
|
+
routes: state.routes.map((r) => r.key !== route.key ? r : { ...r, state: void 0 })
|
|
20
|
+
}, rnTabRouter.getStateForAction(state, action, options2)) : rnTabRouter.getStateForRouteFocus(state, route.key);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
ExpoTabRouter
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=TabRouter.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ui/TabRouter.tsx"],
|
|
4
|
+
"mappings": "AAAA;AAAA,EAGE,aAAa;AAAA,OAKR;AAsBA,SAAS,cAAc,SAA+B;AAC3D,QAAM,cAAc,YAAY,OAAO;AA8CvC,SAzCI;AAAA,IACF,GAAG;AAAA,IACH,kBAAkB,OAAO,QAAQA,UAAS;AACxC,UAAI,OAAO,SAAS;AAClB,eAAO,YAAY,kBAAkB,OAAO,QAAQA,QAAO;AAG7D,YAAM,QAAQ,MAAM,OAAO,KAAK,CAACC,WAAUA,OAAM,SAAS,OAAO,QAAQ,IAAI;AAE7E,UAAI,CAAC;AAEH,eAAO;AAIT,UAAI,cAAc,CAAC,MAAM,QAAQ,KAAK,CAAC,SAAS,KAAK,QAAQ,OAAO,GAAG,KAAK,CAAC,MAAM;AAMnF,aAJI,CAAC,eAAe,kBAAkB,OAAO,WAAW,OAAO,QAAQ,iBACrE,cAAc,MAAM,OAAO,MAAM,KAAK,EAAE,QAAQ,MAAM,MAGpD,eACFD,SAAQ,eAAe,MAAM,IAAI,IAAI;AAAA,QACnC,GAAGA,SAAQ,eAAe,MAAM,IAAI;AAAA,MACtC,GACA,QAAQ;AAAA,QACN,GAAG;AAAA,QACH,QAAQ,MAAM,OAAO,IAAI,CAAC,MACpB,EAAE,QAAQ,MAAM,MACX,IAEF,EAAE,GAAG,GAAG,OAAO,OAAU,CACjC;AAAA,MACH,GACO,YAAY,kBAAkB,OAAO,QAAQA,QAAO,KAEpD,YAAY,sBAAsB,OAAO,MAAM,GAAG;AAAA,IAE7D;AAAA,EACF;AAGF;",
|
|
5
|
+
"names": ["options", "route"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TabRouter as RNTabRouter } from "@react-navigation/native";
|
|
2
|
+
function ExpoTabRouter(options) {
|
|
3
|
+
const rnTabRouter = RNTabRouter(options);
|
|
4
|
+
return {
|
|
5
|
+
...rnTabRouter,
|
|
6
|
+
getStateForAction(state, action, options2) {
|
|
7
|
+
if (action.type !== "JUMP_TO") return rnTabRouter.getStateForAction(state, action, options2);
|
|
8
|
+
const route = state.routes.find(route2 => route2.name === action.payload.name);
|
|
9
|
+
if (!route) return null;
|
|
10
|
+
let shouldReset = !state.history.some(item => item.key === route?.key) && !route.state;
|
|
11
|
+
return !shouldReset && "resetOnFocus" in action.payload && action.payload.resetOnFocus && (shouldReset = state.routes[state.index].key !== route.key), shouldReset ? (options2.routeParamList[route.name] = {
|
|
12
|
+
...options2.routeParamList[route.name]
|
|
13
|
+
}, state = {
|
|
14
|
+
...state,
|
|
15
|
+
routes: state.routes.map(r => r.key !== route.key ? r : {
|
|
16
|
+
...r,
|
|
17
|
+
state: void 0
|
|
18
|
+
})
|
|
19
|
+
}, rnTabRouter.getStateForAction(state, action, options2)) : rnTabRouter.getStateForRouteFocus(state, route.key);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export { ExpoTabRouter };
|
|
24
|
+
//# sourceMappingURL=TabRouter.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TabRouter","RNTabRouter","ExpoTabRouter","options","rnTabRouter","getStateForAction","state","action","options2","type","route","routes","find","route2","name","payload","shouldReset","history","some","item","key","resetOnFocus","index","routeParamList","map","r","getStateForRouteFocus"],"sources":["../../../src/ui/TabRouter.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAGEA,SAAA,IAAaC,WAAA,QAKR;AAsBA,SAASC,cAAcC,OAAA,EAA+B;EAC3D,MAAMC,WAAA,GAAcH,WAAA,CAAYE,OAAO;EA8CvC,OAzCI;IACF,GAAGC,WAAA;IACHC,kBAAkBC,KAAA,EAAOC,MAAA,EAAQC,QAAA,EAAS;MACxC,IAAID,MAAA,CAAOE,IAAA,KAAS,WAClB,OAAOL,WAAA,CAAYC,iBAAA,CAAkBC,KAAA,EAAOC,MAAA,EAAQC,QAAO;MAG7D,MAAME,KAAA,GAAQJ,KAAA,CAAMK,MAAA,CAAOC,IAAA,CAAMC,MAAA,IAAUA,MAAA,CAAMC,IAAA,KAASP,MAAA,CAAOQ,OAAA,CAAQD,IAAI;MAE7E,IAAI,CAACJ,KAAA,EAEH,OAAO;MAIT,IAAIM,WAAA,GAAc,CAACV,KAAA,CAAMW,OAAA,CAAQC,IAAA,CAAMC,IAAA,IAASA,IAAA,CAAKC,GAAA,KAAQV,KAAA,EAAOU,GAAG,KAAK,CAACV,KAAA,CAAMJ,KAAA;MAMnF,OAJI,CAACU,WAAA,IAAe,kBAAkBT,MAAA,CAAOQ,OAAA,IAAWR,MAAA,CAAOQ,OAAA,CAAQM,YAAA,KACrEL,WAAA,GAAcV,KAAA,CAAMK,MAAA,CAAOL,KAAA,CAAMgB,KAAK,EAAEF,GAAA,KAAQV,KAAA,CAAMU,GAAA,GAGpDJ,WAAA,IACFR,QAAA,CAAQe,cAAA,CAAeb,KAAA,CAAMI,IAAI,IAAI;QACnC,GAAGN,QAAA,CAAQe,cAAA,CAAeb,KAAA,CAAMI,IAAI;MACtC,GACAR,KAAA,GAAQ;QACN,GAAGA,KAAA;QACHK,MAAA,EAAQL,KAAA,CAAMK,MAAA,CAAOa,GAAA,CAAKC,CAAA,IACpBA,CAAA,CAAEL,GAAA,KAAQV,KAAA,CAAMU,GAAA,GACXK,CAAA,GAEF;UAAE,GAAGA,CAAA;UAAGnB,KAAA,EAAO;QAAU,CACjC;MACH,GACOF,WAAA,CAAYC,iBAAA,CAAkBC,KAAA,EAAOC,MAAA,EAAQC,QAAO,KAEpDJ,WAAA,CAAYsB,qBAAA,CAAsBpB,KAAA,EAAOI,KAAA,CAAMU,GAAG;IAE7D;EACF;AAGF","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { TabRouter as RNTabRouter } from "@react-navigation/native";
|
|
2
|
+
function ExpoTabRouter(options) {
|
|
3
|
+
var rnTabRouter = RNTabRouter(options),
|
|
4
|
+
router = {
|
|
5
|
+
...rnTabRouter,
|
|
6
|
+
getStateForAction(state, action, options2) {
|
|
7
|
+
if (action.type !== "JUMP_TO") return rnTabRouter.getStateForAction(state, action, options2);
|
|
8
|
+
var route = state.routes.find(function (route2) {
|
|
9
|
+
return route2.name === action.payload.name;
|
|
10
|
+
});
|
|
11
|
+
if (!route) return null;
|
|
12
|
+
var shouldReset = !state.history.some(function (item) {
|
|
13
|
+
return item.key === route?.key;
|
|
14
|
+
}) && !route.state;
|
|
15
|
+
return !shouldReset && "resetOnFocus" in action.payload && action.payload.resetOnFocus && (shouldReset = state.routes[state.index].key !== route.key), shouldReset ? (options2.routeParamList[route.name] = {
|
|
16
|
+
...options2.routeParamList[route.name]
|
|
17
|
+
}, state = {
|
|
18
|
+
...state,
|
|
19
|
+
routes: state.routes.map(function (r) {
|
|
20
|
+
return r.key !== route.key ? r : {
|
|
21
|
+
...r,
|
|
22
|
+
state: void 0
|
|
23
|
+
};
|
|
24
|
+
})
|
|
25
|
+
}, rnTabRouter.getStateForAction(state, action, options2)) : rnTabRouter.getStateForRouteFocus(state, route.key);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
return router;
|
|
29
|
+
}
|
|
30
|
+
export { ExpoTabRouter };
|
|
31
|
+
//# sourceMappingURL=TabRouter.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TabRouter","RNTabRouter","ExpoTabRouter","options","rnTabRouter","router","getStateForAction","state","action","options2","type","route","routes","find","route2","name","payload","shouldReset","history","some","item","key","resetOnFocus","index","routeParamList","map","r"],"sources":["../../../src/ui/TabRouter.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAAA,SAAA,IAAAC,WAAA;AAAA,SAGEC,aAAaA,CAAAC,OAAA;EAAA,IAAAC,WAKR,GAAAH,WAAA,CAAAE,OAAA;IAAAE,MAAA;MAsBA,GAAAD,WAAS;MACdE,iBAAMA,CAAcC,KAAA,EAAAC,MAAY,EAAAC,QAAO;QA8CvC,IAzCID,MAAA,CAAAE,IAAA,gBACC,OAAAN,WAAA,CAAAE,iBAAA,CAAAC,KAAA,EAAAC,MAAA,EAAAC,QAAA;QACH,IAAAE,KAAA,GAAAJ,KAAkB,CAAAK,MAAO,CAAAC,IAAA,WAAQC,MAAS;UACxC,OAAIA,MAAO,CAAAC,IAAS,KAAAP,MAAA,CAAAQ,OAAA,CAAAD,IAAA;QAClB;QAGF,KAAAJ,KAAM,EAEN,OAAK;QAEH,IAAAM,WAAO,IAAAV,KAAA,CAAAW,OAAA,CAAAC,IAAA,WAAAC,IAAA;UAIT,OAAIA,IAAA,CAAAC,GAAA,KAAeV,KAAM,EAAAU,GAAA;QAMzB,OAJIV,KAAC,CAAAJ,KAAA;QAKkC,OAChC,CAAAU,WAAQ,kBAAqB,IAAIT,MAAA,CAAAQ,OAAA,IAAAR,MAAA,CAAAQ,OAAA,CAAAM,YAAA,KAAAL,WAAA,GAAAV,KAAA,CAAAK,MAAA,CAAAL,KAAA,CAAAgB,KAAA,EAAAF,GAAA,KAAAV,KAAA,CAAAU,GAAA,GAAAJ,WAAA,IAAAR,QAAA,CAAAe,cAAA,CAAAb,KAAA,CAAAI,IAAA;UACtC,GACAN,QAAQ,CAAAe,cAAA,CAAAb,KAAA,CAAAI,IAAA;QAAA,GACNR,KAAG;UACH,GAAAA,KAAQ;UAMVK,MACO,EAAAL,KAAY,CAAAK,MAAA,CAAAa,GAAA,WAAkBC,CAAA;YAIzC,OAAAA,CAAA,CAAAL,GAAA,KAAAV,KAAA,CAAAU,GAAA,GAAAK,CAAA;cACF,GAAAA,CAAA;cAGFnB,KAAA","ignoreList":[]}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { useState } from "react";
|
|
2
|
+
import { Platform, StyleSheet } from "react-native-web";
|
|
3
|
+
import { ScreenContainer, Screen } from "react-native-screens";
|
|
4
|
+
import { TabContext } from "./TabContext";
|
|
5
|
+
import { useNavigatorContext } from "../views/Navigator";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
function useTabSlot({
|
|
8
|
+
detachInactiveScreens = ["android", "ios", "web"].includes(Platform.OS),
|
|
9
|
+
style,
|
|
10
|
+
renderFn = defaultTabsSlotRender
|
|
11
|
+
} = {}) {
|
|
12
|
+
const { state, descriptors } = useNavigatorContext(), focusedRouteKey = state.routes[state.index].key, [loaded, setLoaded] = useState({ [focusedRouteKey]: !0 });
|
|
13
|
+
return loaded[focusedRouteKey] || setLoaded({ ...loaded, [focusedRouteKey]: !0 }), /* @__PURE__ */ jsx(
|
|
14
|
+
ScreenContainer,
|
|
15
|
+
{
|
|
16
|
+
enabled: detachInactiveScreens,
|
|
17
|
+
hasTwoStates: !0,
|
|
18
|
+
style: [styles.screenContainer, style],
|
|
19
|
+
children: state.routes.map((route, index) => {
|
|
20
|
+
const descriptor = descriptors[route.key];
|
|
21
|
+
return /* @__PURE__ */ jsx(TabContext.Provider, { value: descriptor.options, children: renderFn(descriptor, {
|
|
22
|
+
index,
|
|
23
|
+
isFocused: state.index === index,
|
|
24
|
+
loaded: loaded[route.key],
|
|
25
|
+
detachInactiveScreens
|
|
26
|
+
}) }, descriptor.route.key);
|
|
27
|
+
})
|
|
28
|
+
}
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
function TabSlot(props) {
|
|
32
|
+
return useTabSlot(props);
|
|
33
|
+
}
|
|
34
|
+
function defaultTabsSlotRender(descriptor, { isFocused, loaded, detachInactiveScreens }) {
|
|
35
|
+
const { lazy = !0, unmountOnBlur, freezeOnBlur } = descriptor.options;
|
|
36
|
+
return unmountOnBlur && !isFocused || lazy && !loaded && !isFocused ? null : /* @__PURE__ */ jsx(
|
|
37
|
+
Screen,
|
|
38
|
+
{
|
|
39
|
+
enabled: detachInactiveScreens,
|
|
40
|
+
activityState: isFocused ? 2 : 0,
|
|
41
|
+
freezeOnBlur,
|
|
42
|
+
style: [styles.screen, isFocused ? styles.focused : styles.unfocused],
|
|
43
|
+
children: descriptor.render()
|
|
44
|
+
},
|
|
45
|
+
descriptor.route.key
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
function isTabSlot(child) {
|
|
49
|
+
return child.type === TabSlot;
|
|
50
|
+
}
|
|
51
|
+
const styles = StyleSheet.create({
|
|
52
|
+
screen: {
|
|
53
|
+
flex: 1,
|
|
54
|
+
position: "relative",
|
|
55
|
+
height: "100%"
|
|
56
|
+
},
|
|
57
|
+
screenContainer: {
|
|
58
|
+
flexShrink: 0,
|
|
59
|
+
flexGrow: 1
|
|
60
|
+
},
|
|
61
|
+
focused: {
|
|
62
|
+
zIndex: 1,
|
|
63
|
+
display: "flex",
|
|
64
|
+
flexShrink: 0,
|
|
65
|
+
flexGrow: 1
|
|
66
|
+
},
|
|
67
|
+
unfocused: {
|
|
68
|
+
zIndex: -1,
|
|
69
|
+
display: "none",
|
|
70
|
+
flexShrink: 1,
|
|
71
|
+
flexGrow: 0
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
export {
|
|
75
|
+
TabSlot,
|
|
76
|
+
defaultTabsSlotRender,
|
|
77
|
+
isTabSlot,
|
|
78
|
+
useTabSlot
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=TabSlot.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ui/TabSlot.tsx"],
|
|
4
|
+
"mappings": "AAAA,SAAiD,gBAAgB;AACjE,SAAS,UAAU,kBAAkB;AACrC,SAAS,iBAAiB,cAAc;AAExC,SAAS,kBAAuC;AAEhD,SAAS,2BAA2B;AAsE1B;AAvBH,SAAS,WAAW;AAAA,EACzB,wBAAwB,CAAC,WAAW,OAAO,KAAK,EAAE,SAAS,SAAS,EAAE;AAAA,EACtE;AAAA,EACA,WAAW;AACb,IAAkB,CAAC,GAAG;AACpB,QAAM,EAAE,OAAO,YAAY,IAAI,oBAAoB,GAC7C,kBAAkB,MAAM,OAAO,MAAM,KAAK,EAAE,KAC5C,CAAC,QAAQ,SAAS,IAAI,SAAS,EAAE,CAAC,eAAe,GAAG,GAAK,CAAC;AAEhE,SAAK,OAAO,eAAe,KACzB,UAAU,EAAE,GAAG,QAAQ,CAAC,eAAe,GAAG,GAAK,CAAC,GAIhD;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,cAAY;AAAA,MACZ,OAAO,CAAC,OAAO,iBAAiB,KAAK;AAAA,MAEpC,gBAAM,OAAO,IAAI,CAAC,OAAO,UAAU;AAClC,cAAM,aAAa,YAAY,MAAM,GAAG;AAExC,eACE,oBAAC,WAAW,UAAX,EAA+C,OAAO,WAAW,SAC/D,mBAAS,YAAY;AAAA,UACpB;AAAA,UACA,WAAW,MAAM,UAAU;AAAA,UAC3B,QAAQ,OAAO,MAAM,GAAG;AAAA,UACxB;AAAA,QACF,CAAC,KANuB,WAAW,MAAM,GAO3C;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;AAiBO,SAAS,QAAQ,OAAqB;AAC3C,SAAO,WAAW,KAAK;AACzB;AAKO,SAAS,sBACd,YACA,EAAE,WAAW,QAAQ,sBAAsB,GAC3C;AACA,QAAM,EAAE,OAAO,IAAM,eAAe,aAAa,IAAI,WAAW;AAMhE,SAJI,iBAAiB,CAAC,aAIlB,QAAQ,CAAC,UAAU,CAAC,YAEf,OAIP;AAAA,IAAC;AAAA;AAAA,MAEC,SAAS;AAAA,MACT,eAAe,YAAY,IAAI;AAAA,MAC/B;AAAA,MACA,OAAO,CAAC,OAAO,QAAQ,YAAY,OAAO,UAAU,OAAO,SAAS;AAAA,MAEnE,qBAAW,OAAO;AAAA;AAAA,IANd,WAAW,MAAM;AAAA,EAOxB;AAEJ;AAKO,SAAS,UAAU,OAA+D;AACvF,SAAO,MAAM,SAAS;AACxB;AAEA,MAAM,SAAS,WAAW,OAAO;AAAA,EAC/B,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA,EACA,iBAAiB;AAAA,IACf,YAAY;AAAA,IACZ,UAAU;AAAA,EACZ;AAAA,EACA,SAAS;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,UAAU;AAAA,EACZ;AAAA,EACA,WAAW;AAAA,IACT,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,UAAU;AAAA,EACZ;AACF,CAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|