@ornikar/kitt-universal 9.1.3 → 9.3.1
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/definitions/ModalBehaviour/ModalBehaviour.d.ts +18 -0
- package/dist/definitions/ModalBehaviour/ModalBehaviour.d.ts.map +1 -0
- package/dist/definitions/ModalBehaviour/ModalBehaviourPortal.d.ts +7 -0
- package/dist/definitions/ModalBehaviour/ModalBehaviourPortal.d.ts.map +1 -0
- package/dist/definitions/ModalBehaviour/ModalBehaviourPortal.web.d.ts +4 -0
- package/dist/definitions/ModalBehaviour/ModalBehaviourPortal.web.d.ts.map +1 -0
- package/dist/definitions/ModalBehaviour/OnCloseContext.d.ts +11 -0
- package/dist/definitions/ModalBehaviour/OnCloseContext.d.ts.map +1 -0
- package/dist/definitions/NavigationModal/Body.d.ts +9 -0
- package/dist/definitions/NavigationModal/Body.d.ts.map +1 -0
- package/dist/definitions/NavigationModal/ContentPadding.d.ts +7 -0
- package/dist/definitions/NavigationModal/ContentPadding.d.ts.map +1 -0
- package/dist/definitions/NavigationModal/Footer.d.ts +11 -0
- package/dist/definitions/NavigationModal/Footer.d.ts.map +1 -0
- package/dist/definitions/NavigationModal/Header.d.ts +31 -0
- package/dist/definitions/NavigationModal/Header.d.ts.map +1 -0
- package/dist/definitions/NavigationModal/NavigationModal.d.ts +17 -0
- package/dist/definitions/NavigationModal/NavigationModal.d.ts.map +1 -0
- package/dist/definitions/NavigationModal/NavigationModalContainer.d.ts +8 -0
- package/dist/definitions/NavigationModal/NavigationModalContainer.d.ts.map +1 -0
- package/dist/definitions/index.d.ts +6 -0
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/definitions/native-base/KittNativeBaseProvider.d.ts +3498 -3556
- package/dist/definitions/native-base/KittNativeBaseProvider.d.ts.map +1 -1
- package/dist/definitions/native-base/acceptable-native-base-props.d.ts +9 -0
- package/dist/definitions/native-base/acceptable-native-base-props.d.ts.map +1 -0
- package/dist/definitions/native-base/layout.d.ts +23 -0
- package/dist/definitions/native-base/layout.d.ts.map +1 -0
- package/dist/definitions/native-base/primitives.d.ts +21 -0
- package/dist/definitions/native-base/primitives.d.ts.map +1 -0
- package/dist/definitions/themes/default.d.ts +1 -0
- package/dist/definitions/themes/default.d.ts.map +1 -1
- package/dist/definitions/themes/late-ocean/navigationModal.d.ts +6 -0
- package/dist/definitions/themes/late-ocean/navigationModal.d.ts.map +1 -0
- package/dist/definitions/typography/Typography.d.ts.map +1 -1
- package/dist/index-browser-all.es.android.js +378 -70
- package/dist/index-browser-all.es.android.js.map +1 -1
- package/dist/index-browser-all.es.ios.js +378 -70
- package/dist/index-browser-all.es.ios.js.map +1 -1
- package/dist/index-browser-all.es.js +378 -70
- package/dist/index-browser-all.es.js.map +1 -1
- package/dist/index-browser-all.es.web.js +457 -126
- package/dist/index-browser-all.es.web.js.map +1 -1
- package/dist/index-node-14.17.cjs.js +337 -19
- package/dist/index-node-14.17.cjs.js.map +1 -1
- package/dist/index-node-14.17.cjs.web.css +1 -0
- package/dist/index-node-14.17.cjs.web.js +349 -19
- package/dist/index-node-14.17.cjs.web.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.android.js +7 -1
- package/dist/linaria-themes-browser-all.es.android.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.ios.js +7 -1
- package/dist/linaria-themes-browser-all.es.ios.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.js +7 -1
- package/dist/linaria-themes-browser-all.es.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.web.js +7 -1
- package/dist/linaria-themes-browser-all.es.web.js.map +1 -1
- package/dist/linaria-themes-node-14.17.cjs.js +7 -1
- package/dist/linaria-themes-node-14.17.cjs.js.map +1 -1
- package/dist/linaria-themes-node-14.17.cjs.web.js +7 -1
- package/dist/linaria-themes-node-14.17.cjs.web.js.map +1 -1
- package/dist/styles.css +1 -0
- package/dist/tsbuildinfo +1 -1
- package/package.json +6 -3
|
@@ -181,6 +181,14 @@ function Typography({
|
|
|
181
181
|
base: baseOrDefaultToBody
|
|
182
182
|
});
|
|
183
183
|
|
|
184
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
185
|
+
Object.entries(type).forEach(([key, value]) => {
|
|
186
|
+
if (value && isTypeHeader(value) !== isHeader) {
|
|
187
|
+
throw new Error(`Invalid value for "${key}": "${value}" is ${isHeader ? 'not' : ''} an header. Don't mix headers and bodies.`);
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
|
|
184
192
|
const text = /*#__PURE__*/jsxRuntime.jsx(nativeBase.Text, {
|
|
185
193
|
accessibilityRole: accessibilityRole || undefined,
|
|
186
194
|
fontSize: fontSizeForNativeBase,
|
|
@@ -867,15 +875,15 @@ function ExternalAppLink({
|
|
|
867
875
|
const canOpen = await reactNative.Linking.canOpenURL(href);
|
|
868
876
|
|
|
869
877
|
if (canOpen) {
|
|
870
|
-
reactNative.Linking.openURL(href).catch(err => {
|
|
871
|
-
console.error(`An error occurred while opening ${href}`, err);
|
|
872
|
-
onOpenAppError?.(`An error occurred while opening ${href}`);
|
|
873
|
-
});
|
|
874
|
-
|
|
875
878
|
if (onPress) {
|
|
876
879
|
onPress(e);
|
|
877
880
|
if (e?.defaultPrevented) return;
|
|
878
881
|
}
|
|
882
|
+
|
|
883
|
+
reactNative.Linking.openURL(href).catch(err => {
|
|
884
|
+
console.error(`An error occurred while opening ${href}`, err);
|
|
885
|
+
onOpenAppError?.(`An error occurred while opening ${href}`);
|
|
886
|
+
});
|
|
879
887
|
} else {
|
|
880
888
|
onOpenAppError?.(`Cannot open url: ${href}`);
|
|
881
889
|
}
|
|
@@ -1425,6 +1433,11 @@ const listItem = {
|
|
|
1425
1433
|
innerMargin: 8
|
|
1426
1434
|
};
|
|
1427
1435
|
|
|
1436
|
+
const navigationModal = {
|
|
1437
|
+
height: 56,
|
|
1438
|
+
padding: 16
|
|
1439
|
+
};
|
|
1440
|
+
|
|
1428
1441
|
const pageLoader = {
|
|
1429
1442
|
size: 60,
|
|
1430
1443
|
strokeWidth: 3,
|
|
@@ -1570,7 +1583,8 @@ const theme = {
|
|
|
1570
1583
|
skeleton,
|
|
1571
1584
|
tag,
|
|
1572
1585
|
tooltip,
|
|
1573
|
-
typography
|
|
1586
|
+
typography,
|
|
1587
|
+
navigationModal
|
|
1574
1588
|
};
|
|
1575
1589
|
|
|
1576
1590
|
function matchWindowSize({
|
|
@@ -2239,7 +2253,7 @@ function IconButton({
|
|
|
2239
2253
|
});
|
|
2240
2254
|
}
|
|
2241
2255
|
|
|
2242
|
-
const OnCloseContext = /*#__PURE__*/React.createContext(() => {});
|
|
2256
|
+
const OnCloseContext$1 = /*#__PURE__*/React.createContext(() => {});
|
|
2243
2257
|
|
|
2244
2258
|
const HeaderView = /*#__PURE__*/styled__default.View.withConfig({
|
|
2245
2259
|
displayName: "Header__HeaderView",
|
|
@@ -2273,7 +2287,7 @@ function ModalHeader({
|
|
|
2273
2287
|
right,
|
|
2274
2288
|
children
|
|
2275
2289
|
}) {
|
|
2276
|
-
const onClose = React.useContext(OnCloseContext);
|
|
2290
|
+
const onClose = React.useContext(OnCloseContext$1);
|
|
2277
2291
|
const isIconLeft = !!left;
|
|
2278
2292
|
return /*#__PURE__*/jsxRuntime.jsxs(HeaderView, {
|
|
2279
2293
|
children: [isIconLeft && /*#__PURE__*/jsxRuntime.jsx(LeftIconView, {
|
|
@@ -2313,7 +2327,7 @@ function Modal({
|
|
|
2313
2327
|
onEntered,
|
|
2314
2328
|
onExited
|
|
2315
2329
|
}) {
|
|
2316
|
-
return /*#__PURE__*/jsxRuntime.jsx(OnCloseContext.Provider, {
|
|
2330
|
+
return /*#__PURE__*/jsxRuntime.jsx(OnCloseContext$1.Provider, {
|
|
2317
2331
|
value: onClose,
|
|
2318
2332
|
children: /*#__PURE__*/jsxRuntime.jsx(reactNative.Modal, {
|
|
2319
2333
|
transparent: true,
|
|
@@ -2878,7 +2892,7 @@ function TextArea({ ...props
|
|
|
2878
2892
|
});
|
|
2879
2893
|
}
|
|
2880
2894
|
|
|
2881
|
-
const Body = /*#__PURE__*/styled__default.View.withConfig({
|
|
2895
|
+
const Body$1 = /*#__PURE__*/styled__default.View.withConfig({
|
|
2882
2896
|
displayName: "Body",
|
|
2883
2897
|
componentId: "kitt-universal__sc-1ofncfn-0"
|
|
2884
2898
|
})(["", " background-color:", ";flex:1;"], ({
|
|
@@ -2893,7 +2907,7 @@ const Body = /*#__PURE__*/styled__default.View.withConfig({
|
|
|
2893
2907
|
function FullScreenModalBody({
|
|
2894
2908
|
children
|
|
2895
2909
|
}) {
|
|
2896
|
-
return /*#__PURE__*/jsxRuntime.jsx(Body, {
|
|
2910
|
+
return /*#__PURE__*/jsxRuntime.jsx(Body$1, {
|
|
2897
2911
|
children: children
|
|
2898
2912
|
});
|
|
2899
2913
|
}
|
|
@@ -2918,7 +2932,7 @@ function getHeaderHorizontalMediumPadding(spacing) {
|
|
|
2918
2932
|
return spacing * 6;
|
|
2919
2933
|
}
|
|
2920
2934
|
|
|
2921
|
-
const Header = /*#__PURE__*/styled__default.View.withConfig({
|
|
2935
|
+
const Header$1 = /*#__PURE__*/styled__default.View.withConfig({
|
|
2922
2936
|
displayName: "Header",
|
|
2923
2937
|
componentId: "kitt-universal__sc-dfmxi1-1"
|
|
2924
2938
|
})(["", ";border-bottom-color:", ";border-bottom-width:1px;flex-direction:row;align-items:center;"], ({
|
|
@@ -2995,7 +3009,7 @@ function FullScreenModalHeader({
|
|
|
2995
3009
|
setRightWidth(event.nativeEvent.layout.width);
|
|
2996
3010
|
};
|
|
2997
3011
|
|
|
2998
|
-
return /*#__PURE__*/jsxRuntime.jsxs(Header, {
|
|
3012
|
+
return /*#__PURE__*/jsxRuntime.jsxs(Header$1, {
|
|
2999
3013
|
insetTop: reactNative.Platform.OS === 'ios' ? undefined : top,
|
|
3000
3014
|
children: [left ? /*#__PURE__*/jsxRuntime.jsx(SideContainer, {
|
|
3001
3015
|
onLayout: e => handleLayoutChange(e, 'left'),
|
|
@@ -3360,6 +3374,69 @@ function Message({
|
|
|
3360
3374
|
});
|
|
3361
3375
|
}
|
|
3362
3376
|
|
|
3377
|
+
function ModalBehaviourPortal({
|
|
3378
|
+
children
|
|
3379
|
+
}) {
|
|
3380
|
+
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
3381
|
+
return /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
3382
|
+
children: children
|
|
3383
|
+
});
|
|
3384
|
+
}
|
|
3385
|
+
|
|
3386
|
+
const OnCloseContext = /*#__PURE__*/React.createContext(() => {});
|
|
3387
|
+
function OnCloseProvider({
|
|
3388
|
+
children,
|
|
3389
|
+
onClose
|
|
3390
|
+
}) {
|
|
3391
|
+
return /*#__PURE__*/jsxRuntime.jsx(OnCloseContext.Provider, {
|
|
3392
|
+
value: onClose,
|
|
3393
|
+
children: children
|
|
3394
|
+
});
|
|
3395
|
+
}
|
|
3396
|
+
function useOnCloseModalBehaviour() {
|
|
3397
|
+
const onClose = React.useContext(OnCloseContext);
|
|
3398
|
+
return onClose;
|
|
3399
|
+
}
|
|
3400
|
+
|
|
3401
|
+
function CloseButton({
|
|
3402
|
+
children,
|
|
3403
|
+
onPress
|
|
3404
|
+
}) {
|
|
3405
|
+
const onCloseContextCallback = useOnCloseModalBehaviour();
|
|
3406
|
+
return /*#__PURE__*/React.cloneElement(children, {
|
|
3407
|
+
onPress: () => {
|
|
3408
|
+
if (onPress) onPress();
|
|
3409
|
+
onCloseContextCallback();
|
|
3410
|
+
}
|
|
3411
|
+
});
|
|
3412
|
+
}
|
|
3413
|
+
|
|
3414
|
+
const ModalBehaviourContainer = /*#__PURE__*/styled__default(reactNative.View).withConfig({
|
|
3415
|
+
displayName: "ModalBehaviour__ModalBehaviourContainer",
|
|
3416
|
+
componentId: "kitt-universal__sc-tj3606-0"
|
|
3417
|
+
})(["", ""], () => {
|
|
3418
|
+
if (reactNative.Platform.OS !== 'web') return undefined;
|
|
3419
|
+
return styled.css(["position:fixed;top:0;left:0;width:100%;"]);
|
|
3420
|
+
});
|
|
3421
|
+
function ModalBehaviour({
|
|
3422
|
+
children,
|
|
3423
|
+
visible,
|
|
3424
|
+
style,
|
|
3425
|
+
onClose
|
|
3426
|
+
}) {
|
|
3427
|
+
return /*#__PURE__*/jsxRuntime.jsx(OnCloseProvider, {
|
|
3428
|
+
onClose: onClose,
|
|
3429
|
+
children: /*#__PURE__*/jsxRuntime.jsx(ModalBehaviourPortal, {
|
|
3430
|
+
visible: visible,
|
|
3431
|
+
children: visible ? /*#__PURE__*/jsxRuntime.jsx(ModalBehaviourContainer, {
|
|
3432
|
+
style: style,
|
|
3433
|
+
children: children
|
|
3434
|
+
}) : null
|
|
3435
|
+
})
|
|
3436
|
+
});
|
|
3437
|
+
}
|
|
3438
|
+
ModalBehaviour.CloseButton = CloseButton;
|
|
3439
|
+
|
|
3363
3440
|
const createKittSpaces = spacing => {
|
|
3364
3441
|
const sizes = {};
|
|
3365
3442
|
|
|
@@ -3368,12 +3445,15 @@ const createKittSpaces = spacing => {
|
|
|
3368
3445
|
}
|
|
3369
3446
|
|
|
3370
3447
|
return sizes;
|
|
3371
|
-
}; //
|
|
3448
|
+
}; // reset native-base to be able to set size / space as a number
|
|
3449
|
+
// https://docs.nativebase.io/next/default-theme#h2-size
|
|
3372
3450
|
|
|
3373
3451
|
|
|
3452
|
+
const overridenNativeBaseSizeandSpaceScale = Object.fromEntries([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 16, 20, 24, 32, 40, 48, 56, 64, 72, 80, 96, 0.5, 1.5, 2.5, 3.5].map(value => [value, value])); // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type -- let typescript infer types
|
|
3453
|
+
|
|
3374
3454
|
const createKittNativeBaseCustomTheme = theme => {
|
|
3375
3455
|
const spaces = createKittSpaces(theme.spacing);
|
|
3376
|
-
|
|
3456
|
+
const extendedTheme = nativeBase.extendTheme({
|
|
3377
3457
|
colors: {
|
|
3378
3458
|
kitt: { ...theme.colors,
|
|
3379
3459
|
typography: theme.typography.colors
|
|
@@ -3383,11 +3463,11 @@ const createKittNativeBaseCustomTheme = theme => {
|
|
|
3383
3463
|
'kitt.borderRadius': theme.card.borderRadius
|
|
3384
3464
|
},
|
|
3385
3465
|
sizes: { ...spaces,
|
|
3386
|
-
|
|
3387
|
-
|
|
3388
|
-
|
|
3466
|
+
...overridenNativeBaseSizeandSpaceScale
|
|
3467
|
+
},
|
|
3468
|
+
space: { ...spaces,
|
|
3469
|
+
...overridenNativeBaseSizeandSpaceScale
|
|
3389
3470
|
},
|
|
3390
|
-
space: spaces,
|
|
3391
3471
|
breakpoints: {
|
|
3392
3472
|
// kitt breakpoints
|
|
3393
3473
|
base: KittBreakpoints.BASE,
|
|
@@ -3483,6 +3563,9 @@ const createKittNativeBaseCustomTheme = theme => {
|
|
|
3483
3563
|
}
|
|
3484
3564
|
}
|
|
3485
3565
|
});
|
|
3566
|
+
return { ...extendedTheme,
|
|
3567
|
+
space: extendedTheme.space
|
|
3568
|
+
};
|
|
3486
3569
|
};
|
|
3487
3570
|
function KittNativeBaseProvider({
|
|
3488
3571
|
theme,
|
|
@@ -3498,6 +3581,233 @@ function KittNativeBaseProvider({
|
|
|
3498
3581
|
});
|
|
3499
3582
|
}
|
|
3500
3583
|
|
|
3584
|
+
const Stack = nativeBase.Stack;
|
|
3585
|
+
const VStack = nativeBase.VStack;
|
|
3586
|
+
const HStack = nativeBase.HStack;
|
|
3587
|
+
|
|
3588
|
+
const View = nativeBase.View;
|
|
3589
|
+
const ScrollView = nativeBase.ScrollView;
|
|
3590
|
+
const Pressable = nativeBase.Pressable;
|
|
3591
|
+
|
|
3592
|
+
const ViewWithPadding = /*#__PURE__*/styled__default(reactNative.View).withConfig({
|
|
3593
|
+
displayName: "ContentPadding__ViewWithPadding",
|
|
3594
|
+
componentId: "kitt-universal__sc-1rprqcv-0"
|
|
3595
|
+
})(["padding:", ";"], ({
|
|
3596
|
+
theme
|
|
3597
|
+
}) => `0 ${theme.kitt.navigationModal.padding}px`);
|
|
3598
|
+
function ContentPadding({
|
|
3599
|
+
children,
|
|
3600
|
+
...props
|
|
3601
|
+
}) {
|
|
3602
|
+
return /*#__PURE__*/jsxRuntime.jsx(ViewWithPadding, { ...props,
|
|
3603
|
+
children: children
|
|
3604
|
+
});
|
|
3605
|
+
}
|
|
3606
|
+
|
|
3607
|
+
const StyledViewWithPadding = /*#__PURE__*/styled__default(ContentPadding).withConfig({
|
|
3608
|
+
displayName: "Body__StyledViewWithPadding",
|
|
3609
|
+
componentId: "kitt-universal__sc-oc39vn-0"
|
|
3610
|
+
})(["padding-top:", "px;padding-bottom:", "px;"], ({
|
|
3611
|
+
theme
|
|
3612
|
+
}) => theme.kitt.spacing * 6, ({
|
|
3613
|
+
theme,
|
|
3614
|
+
$insetBottom
|
|
3615
|
+
}) => Math.max(theme.kitt.spacing * 4, $insetBottom));
|
|
3616
|
+
function Body({
|
|
3617
|
+
children,
|
|
3618
|
+
shouldHandleBottomNotch,
|
|
3619
|
+
style,
|
|
3620
|
+
...props
|
|
3621
|
+
}) {
|
|
3622
|
+
const {
|
|
3623
|
+
bottom
|
|
3624
|
+
} = reactNativeSafeAreaContext.useSafeAreaInsets();
|
|
3625
|
+
const insetBottom = shouldHandleBottomNotch ? bottom : 0;
|
|
3626
|
+
return /*#__PURE__*/jsxRuntime.jsx(StyledViewWithPadding, { ...props,
|
|
3627
|
+
$insetBottom: insetBottom,
|
|
3628
|
+
style: style,
|
|
3629
|
+
children: children
|
|
3630
|
+
});
|
|
3631
|
+
}
|
|
3632
|
+
|
|
3633
|
+
const FooterContainer = /*#__PURE__*/styled__default(ContentPadding).withConfig({
|
|
3634
|
+
displayName: "Footer__FooterContainer",
|
|
3635
|
+
componentId: "kitt-universal__sc-1yjprfg-0"
|
|
3636
|
+
})(["padding-top:", "px;padding-bottom:", "px;", ";"], ({
|
|
3637
|
+
theme
|
|
3638
|
+
}) => theme.kitt.spacing * 3, ({
|
|
3639
|
+
theme,
|
|
3640
|
+
$insetBottom
|
|
3641
|
+
}) => Math.max(theme.kitt.spacing * 3, $insetBottom), ({
|
|
3642
|
+
$hasSeparator
|
|
3643
|
+
}) => {
|
|
3644
|
+
if (!$hasSeparator) return undefined;
|
|
3645
|
+
return styled.css(["border-top-width:1px;border-top-color:", ";"], ({
|
|
3646
|
+
theme
|
|
3647
|
+
}) => theme.kitt.colors.separator);
|
|
3648
|
+
});
|
|
3649
|
+
function Footer({
|
|
3650
|
+
shouldHandleBottomNotch = true,
|
|
3651
|
+
hasSeparator = true,
|
|
3652
|
+
children,
|
|
3653
|
+
style
|
|
3654
|
+
}) {
|
|
3655
|
+
const {
|
|
3656
|
+
bottom
|
|
3657
|
+
} = reactNativeSafeAreaContext.useSafeAreaInsets();
|
|
3658
|
+
const insetBottom = shouldHandleBottomNotch ? bottom : 0;
|
|
3659
|
+
return /*#__PURE__*/jsxRuntime.jsx(FooterContainer, {
|
|
3660
|
+
$insetBottom: insetBottom,
|
|
3661
|
+
$hasSeparator: hasSeparator,
|
|
3662
|
+
style: style,
|
|
3663
|
+
children: children
|
|
3664
|
+
});
|
|
3665
|
+
}
|
|
3666
|
+
|
|
3667
|
+
const HeaderContainer = /*#__PURE__*/styled__default(ContentPadding).withConfig({
|
|
3668
|
+
displayName: "Header__HeaderContainer",
|
|
3669
|
+
componentId: "kitt-universal__sc-1g7sbq-0"
|
|
3670
|
+
})(["height:", "px;width:100%;justify-content:center;background-color:", ";padding-right:", "px;padding-left:", "px;", ";"], ({
|
|
3671
|
+
theme
|
|
3672
|
+
}) => theme.kitt.navigationModal.height, ({
|
|
3673
|
+
theme,
|
|
3674
|
+
$isTransparent
|
|
3675
|
+
}) => {
|
|
3676
|
+
if ($isTransparent) return 'transparent';
|
|
3677
|
+
return theme.kitt.colors.uiBackgroundLight;
|
|
3678
|
+
}, ({
|
|
3679
|
+
theme,
|
|
3680
|
+
$hasRight
|
|
3681
|
+
}) => $hasRight ? theme.kitt.spacing * 2 : theme.kitt.navigationModal.padding, ({
|
|
3682
|
+
theme,
|
|
3683
|
+
$hasLeft
|
|
3684
|
+
}) => $hasLeft ? theme.kitt.spacing * 2 : theme.kitt.navigationModal.padding, ({
|
|
3685
|
+
$hasSeparator
|
|
3686
|
+
}) => {
|
|
3687
|
+
if (!$hasSeparator) return undefined;
|
|
3688
|
+
return styled.css(["border-bottom-width:1px;border-bottom-color:", ";"], ({
|
|
3689
|
+
theme
|
|
3690
|
+
}) => theme.kitt.colors.separator);
|
|
3691
|
+
});
|
|
3692
|
+
const Row = /*#__PURE__*/styled__default(reactNative.View).withConfig({
|
|
3693
|
+
displayName: "Header__Row",
|
|
3694
|
+
componentId: "kitt-universal__sc-1g7sbq-1"
|
|
3695
|
+
})(["flex-direction:row;justify-content:", ";align-items:center;"], ({
|
|
3696
|
+
$hasContent,
|
|
3697
|
+
$hasLeft
|
|
3698
|
+
}) => !$hasContent && !$hasLeft ? 'flex-end' : 'space-between');
|
|
3699
|
+
const ButtonContainer = /*#__PURE__*/styled__default.View.withConfig({
|
|
3700
|
+
displayName: "Header__ButtonContainer",
|
|
3701
|
+
componentId: "kitt-universal__sc-1g7sbq-2"
|
|
3702
|
+
})(["width:", "px;"], ({
|
|
3703
|
+
theme
|
|
3704
|
+
}) => theme.kitt.iconButton.width);
|
|
3705
|
+
const ChildrenComponent = /*#__PURE__*/styled__default(reactNative.View).withConfig({
|
|
3706
|
+
displayName: "Header__ChildrenComponent",
|
|
3707
|
+
componentId: "kitt-universal__sc-1g7sbq-3"
|
|
3708
|
+
})(["flex:1;align-items:center;", ";"], ({
|
|
3709
|
+
theme,
|
|
3710
|
+
$hasLeft,
|
|
3711
|
+
$hasRight
|
|
3712
|
+
}) => {
|
|
3713
|
+
const paddingHorizontal = theme.kitt.spacing * 2;
|
|
3714
|
+
return styled.css(["padding-right:", "px;padding-left:", "px;"], $hasRight ? paddingHorizontal : 0, $hasLeft ? paddingHorizontal : 0);
|
|
3715
|
+
});
|
|
3716
|
+
const HeaderTitle = /*#__PURE__*/styled__default(Typography.Text).withConfig({
|
|
3717
|
+
displayName: "Header__HeaderTitle",
|
|
3718
|
+
componentId: "kitt-universal__sc-1g7sbq-4"
|
|
3719
|
+
})(["flex:1;text-align:", ";", ";"], ({
|
|
3720
|
+
$hasLeft,
|
|
3721
|
+
$hasRight
|
|
3722
|
+
}) => {
|
|
3723
|
+
if (!$hasLeft && $hasRight) return 'left';
|
|
3724
|
+
return 'center';
|
|
3725
|
+
}, ({
|
|
3726
|
+
theme,
|
|
3727
|
+
$hasLeft,
|
|
3728
|
+
$hasRight
|
|
3729
|
+
}) => {
|
|
3730
|
+
const paddingHorizontal = theme.kitt.spacing * 2;
|
|
3731
|
+
return styled.css(["padding-right:", "px;padding-left:", "px;"], $hasRight ? paddingHorizontal : 0, $hasLeft ? paddingHorizontal : 0);
|
|
3732
|
+
});
|
|
3733
|
+
function Header({
|
|
3734
|
+
hasSeparator = true,
|
|
3735
|
+
isTransparent,
|
|
3736
|
+
title,
|
|
3737
|
+
children,
|
|
3738
|
+
right,
|
|
3739
|
+
left,
|
|
3740
|
+
style
|
|
3741
|
+
}) {
|
|
3742
|
+
const sharedProps = {
|
|
3743
|
+
$hasLeft: Boolean(left),
|
|
3744
|
+
$hasRight: Boolean(right)
|
|
3745
|
+
};
|
|
3746
|
+
return /*#__PURE__*/jsxRuntime.jsx(HeaderContainer, {
|
|
3747
|
+
$isTransparent: isTransparent,
|
|
3748
|
+
$hasSeparator: hasSeparator,
|
|
3749
|
+
$hasLeft: Boolean(left),
|
|
3750
|
+
$hasRight: Boolean(right),
|
|
3751
|
+
style: style,
|
|
3752
|
+
children: /*#__PURE__*/jsxRuntime.jsxs(Row, {
|
|
3753
|
+
$hasContent: Boolean(title || children),
|
|
3754
|
+
...sharedProps,
|
|
3755
|
+
children: [left ? /*#__PURE__*/jsxRuntime.jsx(ButtonContainer, {
|
|
3756
|
+
children: left
|
|
3757
|
+
}) : null, title ? /*#__PURE__*/jsxRuntime.jsx(HeaderTitle, { ...sharedProps,
|
|
3758
|
+
variant: "bold",
|
|
3759
|
+
children: title
|
|
3760
|
+
}) : null, children ? /*#__PURE__*/jsxRuntime.jsx(ChildrenComponent, { ...sharedProps,
|
|
3761
|
+
children: children
|
|
3762
|
+
}) : null, right || left ? /*#__PURE__*/jsxRuntime.jsx(ButtonContainer, {
|
|
3763
|
+
children: right
|
|
3764
|
+
}) : null]
|
|
3765
|
+
})
|
|
3766
|
+
});
|
|
3767
|
+
}
|
|
3768
|
+
|
|
3769
|
+
const NavigationModalContainer = /*#__PURE__*/styled__default(reactNative.View).withConfig({
|
|
3770
|
+
displayName: "NavigationModalContainer",
|
|
3771
|
+
componentId: "kitt-universal__sc-n0bwvk-0"
|
|
3772
|
+
})(["position:relative;background-color:", ";flex:1;", ""], ({
|
|
3773
|
+
theme,
|
|
3774
|
+
$backgroundColor
|
|
3775
|
+
}) => $backgroundColor || theme.kitt.colors.uiBackgroundLight, () => {
|
|
3776
|
+
if (reactNative.Platform.OS !== 'web') return undefined;
|
|
3777
|
+
return styled.css(["min-height:100vh;"]);
|
|
3778
|
+
});
|
|
3779
|
+
|
|
3780
|
+
const ContainerWithoutHeader = /*#__PURE__*/styled__default(reactNative.View).withConfig({
|
|
3781
|
+
displayName: "NavigationModal__ContainerWithoutHeader",
|
|
3782
|
+
componentId: "kitt-universal__sc-ls8t24-0"
|
|
3783
|
+
})(["justify-content:space-between;flex:1;"]);
|
|
3784
|
+
function NavigationModal({
|
|
3785
|
+
body,
|
|
3786
|
+
header,
|
|
3787
|
+
footer,
|
|
3788
|
+
backgroundColor
|
|
3789
|
+
}) {
|
|
3790
|
+
return /*#__PURE__*/jsxRuntime.jsxs(NavigationModalContainer, {
|
|
3791
|
+
$backgroundColor: backgroundColor,
|
|
3792
|
+
children: [header ? /*#__PURE__*/jsxRuntime.jsx(reactNative.View, {
|
|
3793
|
+
children: header
|
|
3794
|
+
}) : null, /*#__PURE__*/jsxRuntime.jsxs(ContainerWithoutHeader, {
|
|
3795
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(reactNative.ScrollView, {
|
|
3796
|
+
bounces: false,
|
|
3797
|
+
contentContainerStyle: {
|
|
3798
|
+
flexGrow: 1,
|
|
3799
|
+
position: 'relative'
|
|
3800
|
+
},
|
|
3801
|
+
children: body
|
|
3802
|
+
}), footer || null]
|
|
3803
|
+
})]
|
|
3804
|
+
});
|
|
3805
|
+
}
|
|
3806
|
+
NavigationModal.Header = Header;
|
|
3807
|
+
NavigationModal.Footer = Footer;
|
|
3808
|
+
NavigationModal.Body = Body;
|
|
3809
|
+
NavigationModal.Padding = ContentPadding;
|
|
3810
|
+
|
|
3501
3811
|
function Notification({
|
|
3502
3812
|
type,
|
|
3503
3813
|
children,
|
|
@@ -4799,6 +5109,7 @@ exports.ExternalAppLink = ExternalAppLink;
|
|
|
4799
5109
|
exports.ExternalLink = ExternalLink;
|
|
4800
5110
|
exports.Flex = Flex;
|
|
4801
5111
|
exports.FullScreenModal = FullScreenModal;
|
|
5112
|
+
exports.HStack = HStack;
|
|
4802
5113
|
exports.Icon = Icon;
|
|
4803
5114
|
exports.IconButton = IconButton;
|
|
4804
5115
|
exports.InputEmail = InputEmail;
|
|
@@ -4821,14 +5132,19 @@ exports.LoaderIcon = LoaderIcon;
|
|
|
4821
5132
|
exports.MatchWindowSize = MatchWindowSize;
|
|
4822
5133
|
exports.Message = Message;
|
|
4823
5134
|
exports.Modal = Modal;
|
|
5135
|
+
exports.ModalBehaviour = ModalBehaviour;
|
|
5136
|
+
exports.NavigationModal = NavigationModal;
|
|
4824
5137
|
exports.Notification = Notification;
|
|
4825
5138
|
exports.Overlay = Overlay;
|
|
4826
5139
|
exports.PageLoader = PageLoader;
|
|
4827
5140
|
exports.Picker = Picker;
|
|
5141
|
+
exports.Pressable = Pressable;
|
|
4828
5142
|
exports.Radio = Radio;
|
|
5143
|
+
exports.ScrollView = ScrollView;
|
|
4829
5144
|
exports.Section = DeprecatedSection;
|
|
4830
5145
|
exports.Skeleton = Skeleton;
|
|
4831
5146
|
exports.SpinningIcon = SpinningIcon;
|
|
5147
|
+
exports.Stack = Stack;
|
|
4832
5148
|
exports.Story = Story;
|
|
4833
5149
|
exports.StoryBlock = StoryBlock;
|
|
4834
5150
|
exports.StoryContainer = StoryContainer;
|
|
@@ -4845,6 +5161,8 @@ exports.Typography = Typography;
|
|
|
4845
5161
|
exports.TypographyEmoji = TypographyEmoji;
|
|
4846
5162
|
exports.TypographyIcon = TypographyIcon;
|
|
4847
5163
|
exports.TypographyLink = TypographyLink;
|
|
5164
|
+
exports.VStack = VStack;
|
|
5165
|
+
exports.View = View;
|
|
4848
5166
|
exports.createWindowSizeHelper = createWindowSizeHelper;
|
|
4849
5167
|
exports.hex2rgba = hex2rgba;
|
|
4850
5168
|
exports.matchWindowSize = matchWindowSize;
|