@ornikar/kitt-universal 27.9.1-canary.b005d681364bb7e16454f696f46b5af55d721a97.0 → 27.9.1-canary.e79ce5a70db58d281f30a0e111ad7cf70d64cdb1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/CHANGELOG.md +17 -5
  2. package/dist/definitions/CardModal/CardModalBody.d.ts +1 -1
  3. package/dist/definitions/CardModal/CardModalBody.d.ts.map +1 -1
  4. package/dist/definitions/CardModal/CardModalHeader.d.ts +17 -3
  5. package/dist/definitions/CardModal/CardModalHeader.d.ts.map +1 -1
  6. package/dist/definitions/FullscreenModal/Header.d.ts +18 -3
  7. package/dist/definitions/FullscreenModal/Header.d.ts.map +1 -1
  8. package/dist/definitions/NavigationBottomSheet/NavigationBottomSheet.d.ts +7 -7
  9. package/dist/definitions/NavigationBottomSheet/NavigationBottomSheet.d.ts.map +1 -1
  10. package/dist/definitions/NavigationBottomSheet/NavigationBottomSheet.web.d.ts +1 -1
  11. package/dist/definitions/NavigationBottomSheet/NavigationBottomSheet.web.d.ts.map +1 -1
  12. package/dist/definitions/Picker/Picker.d.ts.map +1 -1
  13. package/dist/definitions/TopNavBar/TopNavBar.d.ts +1 -1
  14. package/dist/definitions/TopNavBar/TopNavBar.d.ts.map +1 -1
  15. package/dist/definitions/forms/DatePicker/components/NativeUIDatePicker/ModalPlatformDateTimePicker.d.ts.map +1 -1
  16. package/dist/definitions/native-base/KittNativeBaseProvider.d.ts +12 -14
  17. package/dist/definitions/native-base/KittNativeBaseProvider.d.ts.map +1 -1
  18. package/dist/definitions/themes/default.d.ts +1 -0
  19. package/dist/definitions/themes/default.d.ts.map +1 -1
  20. package/dist/definitions/themes/late-ocean/fullscreenModal.d.ts +1 -1
  21. package/dist/definitions/themes/late-ocean/fullscreenModal.d.ts.map +1 -1
  22. package/dist/definitions/themes/late-ocean/iconButton.d.ts +6 -0
  23. package/dist/definitions/themes/late-ocean/iconButton.d.ts.map +1 -0
  24. package/dist/definitions/typography/Typography.d.ts +18 -6
  25. package/dist/definitions/typography/Typography.d.ts.map +1 -1
  26. package/dist/index-metro.es.android.js +366 -232
  27. package/dist/index-metro.es.android.js.map +1 -1
  28. package/dist/index-metro.es.ios.js +366 -232
  29. package/dist/index-metro.es.ios.js.map +1 -1
  30. package/dist/index-node-22.17.cjs.js +277 -150
  31. package/dist/index-node-22.17.cjs.js.map +1 -1
  32. package/dist/index-node-22.17.cjs.web.js +261 -142
  33. package/dist/index-node-22.17.cjs.web.js.map +1 -1
  34. package/dist/index-node-22.17.es.mjs +278 -151
  35. package/dist/index-node-22.17.es.mjs.map +1 -1
  36. package/dist/index-node-22.17.es.web.mjs +262 -143
  37. package/dist/index-node-22.17.es.web.mjs.map +1 -1
  38. package/dist/index.es.js +462 -327
  39. package/dist/index.es.js.map +1 -1
  40. package/dist/index.es.web.js +406 -280
  41. package/dist/index.es.web.js.map +1 -1
  42. package/dist/linaria-themes-metro.es.android.js +8 -2
  43. package/dist/linaria-themes-metro.es.android.js.map +1 -1
  44. package/dist/linaria-themes-metro.es.ios.js +8 -2
  45. package/dist/linaria-themes-metro.es.ios.js.map +1 -1
  46. package/dist/linaria-themes-node-22.17.cjs.js +8 -2
  47. package/dist/linaria-themes-node-22.17.cjs.js.map +1 -1
  48. package/dist/linaria-themes-node-22.17.cjs.web.js +8 -2
  49. package/dist/linaria-themes-node-22.17.cjs.web.js.map +1 -1
  50. package/dist/linaria-themes-node-22.17.es.mjs +8 -2
  51. package/dist/linaria-themes-node-22.17.es.mjs.map +1 -1
  52. package/dist/linaria-themes-node-22.17.es.web.mjs +8 -2
  53. package/dist/linaria-themes-node-22.17.es.web.mjs.map +1 -1
  54. package/dist/linaria-themes.es.js +9 -3
  55. package/dist/linaria-themes.es.js.map +1 -1
  56. package/dist/linaria-themes.es.web.js +9 -3
  57. package/dist/linaria-themes.es.web.js.map +1 -1
  58. package/dist/tsbuildinfo +1 -1
  59. package/package.json +28 -28
@@ -2,7 +2,7 @@ import { useContext, createContext, forwardRef, useMemo, cloneElement, useState,
2
2
  import { View as View$1, ScrollView as ScrollView$1, Pressable as Pressable$1, Image as Image$1, FlatList as FlatList$1, SectionList as SectionList$1, Stack as Stack$1, VStack as VStack$1, HStack as HStack$1, Center as Center$1, useBreakpointValue as useBreakpointValue$1, useSx, Text, Input, NativeBaseProvider, extendTheme } from 'native-base';
3
3
  export { useClipboard, useContrastText, useMediaQuery, useSx, useToken } from 'native-base';
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
- import { SpinnerGapRegularIcon, UserRegularIcon, XRegularIcon, ArrowLeftRegularIcon, CaretUpFillIcon, CaretDownFillIcon, MapPinRegularIcon, EyeClosedRegularIcon, EyeRegularIcon, CheckCircleFillIcon, CaretDownRegularIcon, CaretRightRegularIcon, InfoRegularIcon, WarningRegularIcon, CheckRegularIcon, WarningCircleRegularIcon, ArrowCounterClockwiseRegularIcon, InfoFillIcon, WarningCircleFillIcon, WarningFillIcon } from '@ornikar/kitt-icons/phosphor';
5
+ import { SpinnerGapRegularIcon, UserRegularIcon, CaretUpFillIcon, CaretDownFillIcon, MapPinRegularIcon, EyeClosedRegularIcon, EyeRegularIcon, CheckCircleFillIcon, CaretDownRegularIcon, XRegularIcon, CaretRightRegularIcon, InfoRegularIcon, WarningRegularIcon, CheckRegularIcon, WarningCircleRegularIcon, ArrowCounterClockwiseRegularIcon, InfoFillIcon, WarningCircleFillIcon, WarningFillIcon, ArrowLeftRegularIcon } from '@ornikar/kitt-icons/phosphor';
6
6
  import { createPortal } from 'react-dom';
7
7
  import { CSSTransition } from 'react-transition-group';
8
8
  import { ScrollView as ScrollView$2, View as View$2, Linking, Pressable as Pressable$2, useWindowDimensions } from 'react-native';
@@ -1798,12 +1798,12 @@ const fullscreenModal = {
1798
1798
  header: {
1799
1799
  height: 56
1800
1800
  },
1801
- horizontalPadding: 16,
1801
+ sharedHorizontalPadding: 16,
1802
1802
  footer: {
1803
1803
  verticalPadding: 12
1804
1804
  },
1805
1805
  body: {
1806
- verticalPadding: 16
1806
+ verticalPadding: 24
1807
1807
  },
1808
1808
  animation: {
1809
1809
  overlay: {
@@ -1890,6 +1890,11 @@ const icon = {
1890
1890
  defaultSize: 20
1891
1891
  };
1892
1892
 
1893
+ const iconButton = {
1894
+ width: button.height.medium,
1895
+ height: button.height.medium
1896
+ };
1897
+
1893
1898
  const listItem = {
1894
1899
  padding: '12px 16px',
1895
1900
  verticalPadding: 12,
@@ -2619,6 +2624,7 @@ const theme = {
2619
2624
  highlight,
2620
2625
  icon,
2621
2626
  buttonBadge,
2627
+ iconButton,
2622
2628
  listItem,
2623
2629
  pageLoader,
2624
2630
  picker,
@@ -4186,13 +4192,21 @@ function CardModalBehaviour({
4186
4192
 
4187
4193
  function CardModalBody({
4188
4194
  children,
4189
- padding = 'kitt.4',
4195
+ paddingX = {
4196
+ base: 'kitt.4',
4197
+ medium: 'kitt.6'
4198
+ },
4199
+ paddingY = {
4200
+ base: 'kitt.4',
4201
+ medium: 'kitt.6'
4202
+ },
4190
4203
  ...props
4191
4204
  }) {
4192
4205
  return /*#__PURE__*/jsx(ScrollView, {
4193
4206
  showsVerticalScrollIndicator: false,
4194
4207
  _contentContainerStyle: {
4195
- padding
4208
+ paddingX,
4209
+ paddingY
4196
4210
  },
4197
4211
  ...props,
4198
4212
  children: children
@@ -4222,145 +4236,53 @@ function CardModalFooter({
4222
4236
  });
4223
4237
  }
4224
4238
 
4225
- const getButtonTypeAndVariant = iconColor => {
4226
- switch (iconColor) {
4227
- case 'black':
4228
- return {
4229
- type: 'tertiary'
4230
- };
4231
- case 'secondary':
4232
- return {
4233
- type: 'secondary'
4234
- };
4235
- case 'primary':
4236
- return {
4237
- type: 'primary'
4238
- };
4239
- case 'primary-plain':
4240
- return {
4241
- type: 'primary'
4242
- };
4243
- case 'ghost':
4244
- return {
4245
- type: 'tertiary',
4246
- variant: 'revert'
4247
- };
4248
- default:
4249
- return {
4250
- type: 'secondary'
4251
- };
4252
- }
4253
- };
4254
-
4255
- /**
4256
- * @deprecated IconButton should only be used as a navigation button
4257
- * Other use cases should use a <Button> component with an icon
4258
- */
4259
- function IconButton({
4260
- color = 'black',
4261
- ariaLabel,
4262
- ...props
4263
- }) {
4264
- const {
4265
- type: legacyColorToType,
4266
- variant: legacyColorToVariant
4267
- } = getButtonTypeAndVariant(color);
4268
- return /*#__PURE__*/jsx(Button, {
4269
- variant: legacyColorToVariant,
4270
- type: legacyColorToType,
4271
- ...props
4272
- });
4273
- }
4274
- function CloseIconButton(props) {
4275
- return /*#__PURE__*/jsx(IconButton, {
4276
- icon: /*#__PURE__*/jsx(XRegularIcon, {}),
4277
- ...props
4278
- });
4279
- }
4280
-
4281
- function TopNavBar({
4282
- left,
4283
- right,
4239
+ function CardModalHeader({
4240
+ children,
4284
4241
  title,
4285
- titleAlign = 'center',
4286
- stickers,
4287
- mode = 'default',
4288
- hasSeparator = true
4242
+ paddingBottom = {
4243
+ base: 'kitt.4',
4244
+ medium: 'kitt.2'
4245
+ },
4246
+ hasSeparator = true,
4247
+ right,
4248
+ left,
4249
+ ...props
4289
4250
  }) {
4290
- const isLargeTitleMode = mode === 'largeTitle';
4291
- const leftEmptySpace = !left && titleAlign === 'left' ? null : /*#__PURE__*/jsx(View, {
4292
- width: "kitt.button.minWidth"
4293
- });
4294
- return /*#__PURE__*/jsxs(VStack, {
4295
- space: isLargeTitleMode ? 'kitt.2' : undefined,
4296
- width: "100%",
4297
- height: mode === 'default' ? 56 : undefined,
4298
- justifyContent: "center",
4299
- paddingX: "kitt.2",
4300
- paddingTop: isLargeTitleMode ? 'kitt.2' : 'kitt.3',
4301
- paddingBottom: "kitt.3",
4302
- borderBottomWidth: hasSeparator && mode === 'default' ? 1 : 0,
4251
+ const defaultContainerPadding = {
4252
+ base: 'kitt.4',
4253
+ medium: 'kitt.6'
4254
+ };
4255
+ return /*#__PURE__*/jsx(View, {
4256
+ ...props,
4257
+ padding: paddingBottom,
4258
+ borderBottomWidth: hasSeparator ? 'kitt.cardModal.footer.borderWidth' : 0,
4303
4259
  borderColor: "kitt.separator",
4304
- children: [/*#__PURE__*/jsxs(HStack, {
4260
+ justifyContent: "center",
4261
+ width: "100%",
4262
+ height: "kitt.cardModal.header.height",
4263
+ paddingRight: right ? 'kitt.2' : defaultContainerPadding,
4264
+ paddingLeft: left ? 'kitt.2' : defaultContainerPadding,
4265
+ children: /*#__PURE__*/jsxs(View, {
4305
4266
  alignItems: "center",
4306
- justifyContent: !title && !left ? 'flex-end' : 'space-between',
4307
- children: [left ?? leftEmptySpace, mode === 'default' ? /*#__PURE__*/jsx(View, {
4267
+ flexDirection: "row",
4268
+ justifyContent: !children && !left ? 'flex-end' : 'space-between',
4269
+ children: [left ? /*#__PURE__*/jsx(View, {
4270
+ width: "kitt.iconButton.width",
4271
+ children: left
4272
+ }) : null, /*#__PURE__*/jsxs(View, {
4308
4273
  flexGrow: "1",
4309
- flexShrink: 1,
4310
- paddingRight: "kitt.2",
4311
- paddingLeft: "kitt.2",
4312
- children: title ? /*#__PURE__*/jsx(Typography.Text, {
4313
- textAlign: titleAlign,
4274
+ paddingRight: right ? 'kitt.2' : 0,
4275
+ paddingLeft: left ? 'kitt.2' : 0,
4276
+ children: [title ? /*#__PURE__*/jsx(Typography.Text, {
4277
+ textAlign: !left && right ? 'left' : 'center',
4314
4278
  variant: "bold",
4315
- ellipsizeMode: "tail",
4316
- numberOfLines: 1,
4317
4279
  children: title
4318
- }) : null
4319
- }) : null, right ?? /*#__PURE__*/jsx(View, {
4320
- width: "kitt.button.minWidth"
4321
- })]
4322
- }), mode === 'largeTitle' ? /*#__PURE__*/jsxs(VStack, {
4323
- space: "kitt.4",
4324
- paddingX: "kitt.2",
4325
- children: [stickers ? /*#__PURE__*/jsx(HStack, {
4326
- width: "100%",
4327
- space: "kitt.1",
4328
- flexShrink: 1,
4329
- flexWrap: "wrap",
4330
- style: {
4331
- rowGap: theme.getSpacing(1)
4332
- },
4333
- children: stickers.map((sticker, index) =>
4334
- /*#__PURE__*/
4335
- // eslint-disable-next-line react/no-array-index-key
4336
- jsx(View, {
4337
- children: sticker
4338
- }, index))
4339
- }) : null, /*#__PURE__*/jsx(Typography.Text, {
4340
- base: "heading-m",
4341
- children: title
4342
- })]
4343
- }) : null]
4344
- });
4345
- }
4346
- function CloseButton(props) {
4347
- return /*#__PURE__*/jsx(IconButton, {
4348
- icon: /*#__PURE__*/jsx(XRegularIcon, {}),
4349
- ...props
4350
- });
4351
- }
4352
- function BackButton(props) {
4353
- return /*#__PURE__*/jsx(IconButton, {
4354
- icon: /*#__PURE__*/jsx(ArrowLeftRegularIcon, {}),
4355
- ...props
4356
- });
4357
- }
4358
- TopNavBar.CloseButton = CloseButton;
4359
- TopNavBar.BackButton = BackButton;
4360
-
4361
- function CardModalHeader(props) {
4362
- return /*#__PURE__*/jsx(TopNavBar, {
4363
- ...props
4280
+ }) : null, children]
4281
+ }), right ? /*#__PURE__*/jsx(View, {
4282
+ width: "kitt.iconButton.width",
4283
+ children: right
4284
+ }) : null]
4285
+ })
4364
4286
  });
4365
4287
  }
4366
4288
 
@@ -7423,16 +7345,60 @@ function FullscreenModalContainer({
7423
7345
  }
7424
7346
 
7425
7347
  function FullscreenModalHeader({
7348
+ hasSeparator = true,
7349
+ isTransparent,
7350
+ title,
7351
+ children,
7352
+ right,
7353
+ left,
7426
7354
  shouldHandleTopNotch = true,
7427
7355
  ...props
7428
7356
  }) {
7429
7357
  const {
7430
7358
  top
7431
7359
  } = useSafeAreaInsets();
7360
+ const hasRight = Boolean(right);
7361
+ const hasLeft = Boolean(left);
7362
+ const hasContent = Boolean(title || children);
7432
7363
  return /*#__PURE__*/jsx(View, {
7364
+ backgroundColor: isTransparent ? 'kitt.transparent' : 'kitt.uiBackgroundLight',
7365
+ minHeight: "kitt.fullscreenModal.header.height",
7366
+ width: "100%",
7367
+ justifyContent: "center",
7433
7368
  paddingTop: shouldHandleTopNotch ? top : undefined,
7434
- children: /*#__PURE__*/jsx(TopNavBar, {
7435
- ...props
7369
+ paddingRight: hasRight ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding',
7370
+ paddingLeft: hasLeft ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding',
7371
+ borderBottomColor: "kitt.separator",
7372
+ borderBottomWidth: hasSeparator ? 1 : undefined,
7373
+ ...props,
7374
+ children: /*#__PURE__*/jsxs(View, {
7375
+ flexDirection: "row",
7376
+ alignItems: "center",
7377
+ justifyContent: !hasContent && !hasLeft ? 'flex-end' : 'space-between',
7378
+ children: [left ? /*#__PURE__*/jsx(View, {
7379
+ width: "kitt.iconButton.width",
7380
+ children: left
7381
+ }) : null, title ? /*#__PURE__*/jsx(View, {
7382
+ flexGrow: 1,
7383
+ flexShrink: 1,
7384
+ paddingLeft: hasLeft ? 'kitt.2' : undefined,
7385
+ paddingRight: hasRight ? 'kitt.2' : 0,
7386
+ children: /*#__PURE__*/jsx(Typography.Text, {
7387
+ variant: "bold",
7388
+ textAlign: !hasLeft && hasRight ? 'left' : 'center',
7389
+ children: title
7390
+ })
7391
+ }) : null, children ? /*#__PURE__*/jsx(View, {
7392
+ flexGrow: 1,
7393
+ flexShrink: 1,
7394
+ alignItems: "center",
7395
+ paddingLeft: hasLeft ? 'kitt.2' : undefined,
7396
+ paddingRight: hasRight ? 'kitt.2' : undefined,
7397
+ children: children
7398
+ }) : null, right || left ? /*#__PURE__*/jsx(View, {
7399
+ width: "kitt.iconButton.width",
7400
+ children: right
7401
+ }) : null]
7436
7402
  })
7437
7403
  });
7438
7404
  }
@@ -7698,6 +7664,62 @@ function Highlight({
7698
7664
  });
7699
7665
  }
7700
7666
 
7667
+ const getButtonTypeAndVariant = iconColor => {
7668
+ switch (iconColor) {
7669
+ case 'black':
7670
+ return {
7671
+ type: 'tertiary'
7672
+ };
7673
+ case 'secondary':
7674
+ return {
7675
+ type: 'secondary'
7676
+ };
7677
+ case 'primary':
7678
+ return {
7679
+ type: 'primary'
7680
+ };
7681
+ case 'primary-plain':
7682
+ return {
7683
+ type: 'primary'
7684
+ };
7685
+ case 'ghost':
7686
+ return {
7687
+ type: 'tertiary',
7688
+ variant: 'revert'
7689
+ };
7690
+ default:
7691
+ return {
7692
+ type: 'secondary'
7693
+ };
7694
+ }
7695
+ };
7696
+
7697
+ /**
7698
+ * @deprecated IconButton should only be used as a navigation button
7699
+ * Other use cases should use a <Button> component with an icon
7700
+ */
7701
+ function IconButton({
7702
+ color = 'black',
7703
+ ariaLabel,
7704
+ ...props
7705
+ }) {
7706
+ const {
7707
+ type: legacyColorToType,
7708
+ variant: legacyColorToVariant
7709
+ } = getButtonTypeAndVariant(color);
7710
+ return /*#__PURE__*/jsx(Button, {
7711
+ variant: legacyColorToVariant,
7712
+ type: legacyColorToType,
7713
+ ...props
7714
+ });
7715
+ }
7716
+ function CloseIconButton(props) {
7717
+ return /*#__PURE__*/jsx(IconButton, {
7718
+ icon: /*#__PURE__*/jsx(XRegularIcon, {}),
7719
+ ...props
7720
+ });
7721
+ }
7722
+
7701
7723
  function InfoCard({
7702
7724
  title,
7703
7725
  action,
@@ -9506,6 +9528,9 @@ function createKittNativeBaseCustomTheme(theme, appTheme) {
9506
9528
  },
9507
9529
  icon: theme.icon,
9508
9530
  cardModal: {
9531
+ header: {
9532
+ height: theme.cardModal.header.height
9533
+ },
9509
9534
  maxWidth: theme.cardModal.maxWidth,
9510
9535
  maxWidthWithPadding: theme.cardModal.maxWidthWithPadding,
9511
9536
  minHeight: theme.cardModal.minHeight
@@ -9806,6 +9831,15 @@ function createKittNativeBaseCustomTheme(theme, appTheme) {
9806
9831
  }
9807
9832
  }
9808
9833
  },
9834
+ iconButton: {
9835
+ width: theme.iconButton.width,
9836
+ height: theme.iconButton.height
9837
+ },
9838
+ fullscreenModal: {
9839
+ header: {
9840
+ height: theme.fullscreenModal.header.height
9841
+ }
9842
+ },
9809
9843
  pageLoader: {
9810
9844
  size: theme.pageLoader.size
9811
9845
  },
@@ -9903,7 +9937,7 @@ function createKittNativeBaseCustomTheme(theme, appTheme) {
9903
9937
  }
9904
9938
  },
9905
9939
  fullscreenModal: {
9906
- horizontalPadding: theme.fullscreenModal.horizontalPadding,
9940
+ horizontalPadding: theme.fullscreenModal.sharedHorizontalPadding,
9907
9941
  body: {
9908
9942
  verticalPadding: theme.fullscreenModal.body.verticalPadding
9909
9943
  },
@@ -10880,11 +10914,17 @@ function NavigationBottomSheet({
10880
10914
  })
10881
10915
  });
10882
10916
  }
10883
- function NavigationBottomSheetHeader(props) {
10917
+ function NavigationBottomSheetHeader({
10918
+ children,
10919
+ left
10920
+ }) {
10884
10921
  return /*#__PURE__*/jsx(NavigationModal.Header, {
10885
- ...props,
10922
+ title: children,
10923
+ left: left,
10886
10924
  right: /*#__PURE__*/jsx(ModalBehaviour.CloseButton, {
10887
- children: /*#__PURE__*/jsx(TopNavBar.CloseButton, {})
10925
+ children: /*#__PURE__*/jsx(IconButton, {
10926
+ icon: /*#__PURE__*/jsx(XRegularIcon, {})
10927
+ })
10888
10928
  })
10889
10929
  });
10890
10930
  }
@@ -12629,6 +12669,85 @@ function Tooltip({
12629
12669
  Tooltip.Arrow = Arrow;
12630
12670
  Tooltip.Content = TooltipContent;
12631
12671
 
12672
+ function TopNavBar({
12673
+ left,
12674
+ right,
12675
+ title,
12676
+ titleAlign = 'center',
12677
+ stickers,
12678
+ mode = 'default',
12679
+ hasSeparator = true
12680
+ }) {
12681
+ const isLargeTitleMode = mode === 'largeTitle';
12682
+ return /*#__PURE__*/jsxs(VStack, {
12683
+ space: isLargeTitleMode ? 'kitt.2' : undefined,
12684
+ width: "100%",
12685
+ height: mode === 'default' ? 56 : undefined,
12686
+ justifyContent: "center",
12687
+ paddingX: "kitt.2",
12688
+ paddingTop: isLargeTitleMode ? 'kitt.2' : 'kitt.3',
12689
+ paddingBottom: "kitt.3",
12690
+ borderBottomWidth: hasSeparator && mode === 'default' ? 1 : 0,
12691
+ borderColor: "kitt.separator",
12692
+ children: [/*#__PURE__*/jsxs(HStack, {
12693
+ alignItems: "center",
12694
+ justifyContent: !title && !left ? 'flex-end' : 'space-between',
12695
+ children: [left ?? /*#__PURE__*/jsx(View, {
12696
+ width: "kitt.button.minWidth"
12697
+ }), mode === 'default' ? /*#__PURE__*/jsx(View, {
12698
+ flexGrow: "1",
12699
+ flexShrink: 1,
12700
+ paddingRight: "kitt.2",
12701
+ paddingLeft: "kitt.2",
12702
+ children: title ? /*#__PURE__*/jsx(Typography.Text, {
12703
+ textAlign: titleAlign,
12704
+ variant: "bold",
12705
+ ellipsizeMode: "tail",
12706
+ numberOfLines: 1,
12707
+ children: title
12708
+ }) : null
12709
+ }) : null, right ?? /*#__PURE__*/jsx(View, {
12710
+ width: "kitt.button.minWidth"
12711
+ })]
12712
+ }), mode === 'largeTitle' ? /*#__PURE__*/jsxs(VStack, {
12713
+ space: "kitt.4",
12714
+ paddingX: "kitt.2",
12715
+ children: [stickers ? /*#__PURE__*/jsx(HStack, {
12716
+ width: "100%",
12717
+ space: "kitt.1",
12718
+ flexShrink: 1,
12719
+ flexWrap: "wrap",
12720
+ style: {
12721
+ rowGap: theme.getSpacing(1)
12722
+ },
12723
+ children: stickers.map((sticker, index) =>
12724
+ /*#__PURE__*/
12725
+ // eslint-disable-next-line react/no-array-index-key
12726
+ jsx(View, {
12727
+ children: sticker
12728
+ }, index))
12729
+ }) : null, /*#__PURE__*/jsx(Typography.Text, {
12730
+ base: "heading-m",
12731
+ children: title
12732
+ })]
12733
+ }) : null]
12734
+ });
12735
+ }
12736
+ function CloseButton(props) {
12737
+ return /*#__PURE__*/jsx(IconButton, {
12738
+ icon: /*#__PURE__*/jsx(XRegularIcon, {}),
12739
+ ...props
12740
+ });
12741
+ }
12742
+ function BackButton(props) {
12743
+ return /*#__PURE__*/jsx(IconButton, {
12744
+ icon: /*#__PURE__*/jsx(ArrowLeftRegularIcon, {}),
12745
+ ...props
12746
+ });
12747
+ }
12748
+ TopNavBar.CloseButton = CloseButton;
12749
+ TopNavBar.BackButton = BackButton;
12750
+
12632
12751
  function getTypographyTypeConfig(type, theme) {
12633
12752
  const {
12634
12753
  configs