@ornikar/kitt-universal 27.9.1-canary.4b911192ae095bb2eb65643367ed285b3f849cd8.0 → 27.9.1-canary.7887d5a9313c31fdf8e4d5a4b645a75389e9e991.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 (57) hide show
  1. package/CHANGELOG.md +3 -7
  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 -6
  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/index-metro.es.android.js +285 -153
  25. package/dist/index-metro.es.android.js.map +1 -1
  26. package/dist/index-metro.es.ios.js +285 -153
  27. package/dist/index-metro.es.ios.js.map +1 -1
  28. package/dist/index-node-22.17.cjs.js +275 -151
  29. package/dist/index-node-22.17.cjs.js.map +1 -1
  30. package/dist/index-node-22.17.cjs.web.js +261 -142
  31. package/dist/index-node-22.17.cjs.web.js.map +1 -1
  32. package/dist/index-node-22.17.es.mjs +276 -152
  33. package/dist/index-node-22.17.es.mjs.map +1 -1
  34. package/dist/index-node-22.17.es.web.mjs +262 -143
  35. package/dist/index-node-22.17.es.web.mjs.map +1 -1
  36. package/dist/index.es.js +291 -159
  37. package/dist/index.es.js.map +1 -1
  38. package/dist/index.es.web.js +345 -219
  39. package/dist/index.es.web.js.map +1 -1
  40. package/dist/linaria-themes-metro.es.android.js +8 -2
  41. package/dist/linaria-themes-metro.es.android.js.map +1 -1
  42. package/dist/linaria-themes-metro.es.ios.js +8 -2
  43. package/dist/linaria-themes-metro.es.ios.js.map +1 -1
  44. package/dist/linaria-themes-node-22.17.cjs.js +8 -2
  45. package/dist/linaria-themes-node-22.17.cjs.js.map +1 -1
  46. package/dist/linaria-themes-node-22.17.cjs.web.js +8 -2
  47. package/dist/linaria-themes-node-22.17.cjs.web.js.map +1 -1
  48. package/dist/linaria-themes-node-22.17.es.mjs +8 -2
  49. package/dist/linaria-themes-node-22.17.es.mjs.map +1 -1
  50. package/dist/linaria-themes-node-22.17.es.web.mjs +8 -2
  51. package/dist/linaria-themes-node-22.17.es.web.mjs.map +1 -1
  52. package/dist/linaria-themes.es.js +8 -2
  53. package/dist/linaria-themes.es.js.map +1 -1
  54. package/dist/linaria-themes.es.web.js +8 -2
  55. package/dist/linaria-themes.es.web.js.map +1 -1
  56. package/dist/tsbuildinfo +1 -1
  57. package/package.json +3 -3
@@ -1825,12 +1825,12 @@ const fullscreenModal = {
1825
1825
  header: {
1826
1826
  height: 56
1827
1827
  },
1828
- horizontalPadding: 16,
1828
+ sharedHorizontalPadding: 16,
1829
1829
  footer: {
1830
1830
  verticalPadding: 12
1831
1831
  },
1832
1832
  body: {
1833
- verticalPadding: 16
1833
+ verticalPadding: 24
1834
1834
  },
1835
1835
  animation: {
1836
1836
  overlay: {
@@ -1917,6 +1917,11 @@ const icon = {
1917
1917
  defaultSize: 20
1918
1918
  };
1919
1919
 
1920
+ const iconButton = {
1921
+ width: button.height.medium,
1922
+ height: button.height.medium
1923
+ };
1924
+
1920
1925
  const listItem = {
1921
1926
  padding: '12px 16px',
1922
1927
  verticalPadding: 12,
@@ -2646,6 +2651,7 @@ const theme = {
2646
2651
  highlight,
2647
2652
  icon,
2648
2653
  buttonBadge,
2654
+ iconButton,
2649
2655
  listItem,
2650
2656
  pageLoader,
2651
2657
  picker,
@@ -4352,13 +4358,21 @@ function CardModalBehaviour({
4352
4358
 
4353
4359
  function CardModalBody({
4354
4360
  children,
4355
- padding = 'kitt.4',
4361
+ paddingX = {
4362
+ base: 'kitt.4',
4363
+ medium: 'kitt.6'
4364
+ },
4365
+ paddingY = {
4366
+ base: 'kitt.4',
4367
+ medium: 'kitt.6'
4368
+ },
4356
4369
  ...props
4357
4370
  }) {
4358
4371
  return /*#__PURE__*/jsxRuntime.jsx(ScrollView, {
4359
4372
  showsVerticalScrollIndicator: false,
4360
4373
  _contentContainerStyle: {
4361
- padding
4374
+ paddingX,
4375
+ paddingY
4362
4376
  },
4363
4377
  ...props,
4364
4378
  children: children
@@ -4388,145 +4402,53 @@ function CardModalFooter({
4388
4402
  });
4389
4403
  }
4390
4404
 
4391
- const getButtonTypeAndVariant = iconColor => {
4392
- switch (iconColor) {
4393
- case 'black':
4394
- return {
4395
- type: 'tertiary'
4396
- };
4397
- case 'secondary':
4398
- return {
4399
- type: 'secondary'
4400
- };
4401
- case 'primary':
4402
- return {
4403
- type: 'primary'
4404
- };
4405
- case 'primary-plain':
4406
- return {
4407
- type: 'primary'
4408
- };
4409
- case 'ghost':
4410
- return {
4411
- type: 'tertiary',
4412
- variant: 'revert'
4413
- };
4414
- default:
4415
- return {
4416
- type: 'secondary'
4417
- };
4418
- }
4419
- };
4420
-
4421
- /**
4422
- * @deprecated IconButton should only be used as a navigation button
4423
- * Other use cases should use a <Button> component with an icon
4424
- */
4425
- function IconButton({
4426
- color = 'black',
4427
- ariaLabel,
4428
- ...props
4429
- }) {
4430
- const {
4431
- type: legacyColorToType,
4432
- variant: legacyColorToVariant
4433
- } = getButtonTypeAndVariant(color);
4434
- return /*#__PURE__*/jsxRuntime.jsx(Button, {
4435
- variant: legacyColorToVariant,
4436
- type: legacyColorToType,
4437
- ...props
4438
- });
4439
- }
4440
- function CloseIconButton(props) {
4441
- return /*#__PURE__*/jsxRuntime.jsx(IconButton, {
4442
- icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.XRegularIcon, {}),
4443
- ...props
4444
- });
4445
- }
4446
-
4447
- function TopNavBar({
4448
- left,
4449
- right,
4405
+ function CardModalHeader({
4406
+ children,
4450
4407
  title,
4451
- titleAlign = 'center',
4452
- stickers,
4453
- mode = 'default',
4454
- hasSeparator = true
4408
+ paddingBottom = {
4409
+ base: 'kitt.4',
4410
+ medium: 'kitt.2'
4411
+ },
4412
+ hasSeparator = true,
4413
+ right,
4414
+ left,
4415
+ ...props
4455
4416
  }) {
4456
- const isLargeTitleMode = mode === 'largeTitle';
4457
- const leftEmptySpace = !left && titleAlign === 'left' ? null : /*#__PURE__*/jsxRuntime.jsx(View, {
4458
- width: "kitt.button.minWidth"
4459
- });
4460
- return /*#__PURE__*/jsxRuntime.jsxs(VStack, {
4461
- space: isLargeTitleMode ? 'kitt.2' : undefined,
4462
- width: "100%",
4463
- height: mode === 'default' ? 56 : undefined,
4464
- justifyContent: "center",
4465
- paddingX: "kitt.2",
4466
- paddingTop: isLargeTitleMode ? 'kitt.2' : 'kitt.3',
4467
- paddingBottom: "kitt.3",
4468
- borderBottomWidth: hasSeparator && mode === 'default' ? 1 : 0,
4417
+ const defaultContainerPadding = {
4418
+ base: 'kitt.4',
4419
+ medium: 'kitt.6'
4420
+ };
4421
+ return /*#__PURE__*/jsxRuntime.jsx(View, {
4422
+ ...props,
4423
+ padding: paddingBottom,
4424
+ borderBottomWidth: hasSeparator ? 'kitt.cardModal.footer.borderWidth' : 0,
4469
4425
  borderColor: "kitt.separator",
4470
- children: [/*#__PURE__*/jsxRuntime.jsxs(HStack, {
4426
+ justifyContent: "center",
4427
+ width: "100%",
4428
+ height: "kitt.cardModal.header.height",
4429
+ paddingRight: right ? 'kitt.2' : defaultContainerPadding,
4430
+ paddingLeft: left ? 'kitt.2' : defaultContainerPadding,
4431
+ children: /*#__PURE__*/jsxRuntime.jsxs(View, {
4471
4432
  alignItems: "center",
4472
- justifyContent: !title && !left ? 'flex-end' : 'space-between',
4473
- children: [left ?? leftEmptySpace, mode === 'default' ? /*#__PURE__*/jsxRuntime.jsx(View, {
4433
+ flexDirection: "row",
4434
+ justifyContent: !children && !left ? 'flex-end' : 'space-between',
4435
+ children: [left ? /*#__PURE__*/jsxRuntime.jsx(View, {
4436
+ width: "kitt.iconButton.width",
4437
+ children: left
4438
+ }) : null, /*#__PURE__*/jsxRuntime.jsxs(View, {
4474
4439
  flexGrow: "1",
4475
- flexShrink: 1,
4476
- paddingRight: "kitt.2",
4477
- paddingLeft: "kitt.2",
4478
- children: title ? /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
4479
- textAlign: titleAlign,
4440
+ paddingRight: right ? 'kitt.2' : 0,
4441
+ paddingLeft: left ? 'kitt.2' : 0,
4442
+ children: [title ? /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
4443
+ textAlign: !left && right ? 'left' : 'center',
4480
4444
  variant: "bold",
4481
- ellipsizeMode: "tail",
4482
- numberOfLines: 1,
4483
4445
  children: title
4484
- }) : null
4485
- }) : null, right ?? /*#__PURE__*/jsxRuntime.jsx(View, {
4486
- width: "kitt.button.minWidth"
4487
- })]
4488
- }), mode === 'largeTitle' ? /*#__PURE__*/jsxRuntime.jsxs(VStack, {
4489
- space: "kitt.4",
4490
- paddingX: "kitt.2",
4491
- children: [stickers ? /*#__PURE__*/jsxRuntime.jsx(HStack, {
4492
- width: "100%",
4493
- space: "kitt.1",
4494
- flexShrink: 1,
4495
- flexWrap: "wrap",
4496
- style: {
4497
- rowGap: theme.getSpacing(1)
4498
- },
4499
- children: stickers.map((sticker, index) =>
4500
- /*#__PURE__*/
4501
- // eslint-disable-next-line react/no-array-index-key
4502
- jsxRuntime.jsx(View, {
4503
- children: sticker
4504
- }, index))
4505
- }) : null, /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
4506
- base: "heading-m",
4507
- children: title
4508
- })]
4509
- }) : null]
4510
- });
4511
- }
4512
- function CloseButton(props) {
4513
- return /*#__PURE__*/jsxRuntime.jsx(IconButton, {
4514
- icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.XRegularIcon, {}),
4515
- ...props
4516
- });
4517
- }
4518
- function BackButton(props) {
4519
- return /*#__PURE__*/jsxRuntime.jsx(IconButton, {
4520
- icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.ArrowLeftRegularIcon, {}),
4521
- ...props
4522
- });
4523
- }
4524
- TopNavBar.CloseButton = CloseButton;
4525
- TopNavBar.BackButton = BackButton;
4526
-
4527
- function CardModalHeader(props) {
4528
- return /*#__PURE__*/jsxRuntime.jsx(TopNavBar, {
4529
- ...props
4446
+ }) : null, children]
4447
+ }), right ? /*#__PURE__*/jsxRuntime.jsx(View, {
4448
+ width: "kitt.iconButton.width",
4449
+ children: right
4450
+ }) : null]
4451
+ })
4530
4452
  });
4531
4453
  }
4532
4454
 
@@ -6378,7 +6300,11 @@ function ModalTitle({
6378
6300
  children
6379
6301
  }) {
6380
6302
  return /*#__PURE__*/jsxRuntime.jsx(CardModal.Header, {
6381
- title: children
6303
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
6304
+ base: "body-m",
6305
+ variant: "bold",
6306
+ children: children
6307
+ })
6382
6308
  });
6383
6309
  }
6384
6310
  function ModalPlatformDateTimePicker({
@@ -8310,16 +8236,60 @@ function FullscreenModalContainer({
8310
8236
  }
8311
8237
 
8312
8238
  function FullscreenModalHeader({
8239
+ hasSeparator = true,
8240
+ isTransparent,
8241
+ title,
8242
+ children,
8243
+ right,
8244
+ left,
8313
8245
  shouldHandleTopNotch = true,
8314
8246
  ...props
8315
8247
  }) {
8316
8248
  const {
8317
8249
  top
8318
8250
  } = reactNativeSafeAreaContext.useSafeAreaInsets();
8251
+ const hasRight = Boolean(right);
8252
+ const hasLeft = Boolean(left);
8253
+ const hasContent = Boolean(title || children);
8319
8254
  return /*#__PURE__*/jsxRuntime.jsx(View, {
8255
+ backgroundColor: isTransparent ? 'kitt.transparent' : 'kitt.uiBackgroundLight',
8256
+ minHeight: "kitt.fullscreenModal.header.height",
8257
+ width: "100%",
8258
+ justifyContent: "center",
8320
8259
  paddingTop: shouldHandleTopNotch ? top : undefined,
8321
- children: /*#__PURE__*/jsxRuntime.jsx(TopNavBar, {
8322
- ...props
8260
+ paddingRight: hasRight ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding',
8261
+ paddingLeft: hasLeft ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding',
8262
+ borderBottomColor: "kitt.separator",
8263
+ borderBottomWidth: hasSeparator ? 1 : undefined,
8264
+ ...props,
8265
+ children: /*#__PURE__*/jsxRuntime.jsxs(View, {
8266
+ flexDirection: "row",
8267
+ alignItems: "center",
8268
+ justifyContent: !hasContent && !hasLeft ? 'flex-end' : 'space-between',
8269
+ children: [left ? /*#__PURE__*/jsxRuntime.jsx(View, {
8270
+ width: "kitt.iconButton.width",
8271
+ children: left
8272
+ }) : null, title ? /*#__PURE__*/jsxRuntime.jsx(View, {
8273
+ flexGrow: 1,
8274
+ flexShrink: 1,
8275
+ paddingLeft: hasLeft ? 'kitt.2' : undefined,
8276
+ paddingRight: hasRight ? 'kitt.2' : 0,
8277
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
8278
+ variant: "bold",
8279
+ textAlign: !hasLeft && hasRight ? 'left' : 'center',
8280
+ children: title
8281
+ })
8282
+ }) : null, children ? /*#__PURE__*/jsxRuntime.jsx(View, {
8283
+ flexGrow: 1,
8284
+ flexShrink: 1,
8285
+ alignItems: "center",
8286
+ paddingLeft: hasLeft ? 'kitt.2' : undefined,
8287
+ paddingRight: hasRight ? 'kitt.2' : undefined,
8288
+ children: children
8289
+ }) : null, right || left ? /*#__PURE__*/jsxRuntime.jsx(View, {
8290
+ width: "kitt.iconButton.width",
8291
+ children: right
8292
+ }) : null]
8323
8293
  })
8324
8294
  });
8325
8295
  }
@@ -8615,6 +8585,62 @@ function Highlight({
8615
8585
  });
8616
8586
  }
8617
8587
 
8588
+ const getButtonTypeAndVariant = iconColor => {
8589
+ switch (iconColor) {
8590
+ case 'black':
8591
+ return {
8592
+ type: 'tertiary'
8593
+ };
8594
+ case 'secondary':
8595
+ return {
8596
+ type: 'secondary'
8597
+ };
8598
+ case 'primary':
8599
+ return {
8600
+ type: 'primary'
8601
+ };
8602
+ case 'primary-plain':
8603
+ return {
8604
+ type: 'primary'
8605
+ };
8606
+ case 'ghost':
8607
+ return {
8608
+ type: 'tertiary',
8609
+ variant: 'revert'
8610
+ };
8611
+ default:
8612
+ return {
8613
+ type: 'secondary'
8614
+ };
8615
+ }
8616
+ };
8617
+
8618
+ /**
8619
+ * @deprecated IconButton should only be used as a navigation button
8620
+ * Other use cases should use a <Button> component with an icon
8621
+ */
8622
+ function IconButton({
8623
+ color = 'black',
8624
+ ariaLabel,
8625
+ ...props
8626
+ }) {
8627
+ const {
8628
+ type: legacyColorToType,
8629
+ variant: legacyColorToVariant
8630
+ } = getButtonTypeAndVariant(color);
8631
+ return /*#__PURE__*/jsxRuntime.jsx(Button, {
8632
+ variant: legacyColorToVariant,
8633
+ type: legacyColorToType,
8634
+ ...props
8635
+ });
8636
+ }
8637
+ function CloseIconButton(props) {
8638
+ return /*#__PURE__*/jsxRuntime.jsx(IconButton, {
8639
+ icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.XRegularIcon, {}),
8640
+ ...props
8641
+ });
8642
+ }
8643
+
8618
8644
  function InfoCard({
8619
8645
  title,
8620
8646
  action,
@@ -10340,6 +10366,9 @@ function createKittNativeBaseCustomTheme(theme, appTheme) {
10340
10366
  },
10341
10367
  icon: theme.icon,
10342
10368
  cardModal: {
10369
+ header: {
10370
+ height: theme.cardModal.header.height
10371
+ },
10343
10372
  maxWidth: theme.cardModal.maxWidth,
10344
10373
  maxWidthWithPadding: theme.cardModal.maxWidthWithPadding,
10345
10374
  minHeight: theme.cardModal.minHeight
@@ -10640,6 +10669,15 @@ function createKittNativeBaseCustomTheme(theme, appTheme) {
10640
10669
  }
10641
10670
  }
10642
10671
  },
10672
+ iconButton: {
10673
+ width: theme.iconButton.width,
10674
+ height: theme.iconButton.height
10675
+ },
10676
+ fullscreenModal: {
10677
+ header: {
10678
+ height: theme.fullscreenModal.header.height
10679
+ }
10680
+ },
10643
10681
  pageLoader: {
10644
10682
  size: theme.pageLoader.size
10645
10683
  },
@@ -10737,7 +10775,7 @@ function createKittNativeBaseCustomTheme(theme, appTheme) {
10737
10775
  }
10738
10776
  },
10739
10777
  fullscreenModal: {
10740
- horizontalPadding: theme.fullscreenModal.horizontalPadding,
10778
+ horizontalPadding: theme.fullscreenModal.sharedHorizontalPadding,
10741
10779
  body: {
10742
10780
  verticalPadding: theme.fullscreenModal.body.verticalPadding
10743
10781
  },
@@ -11593,17 +11631,19 @@ function NavigationBottomSheet({
11593
11631
  })
11594
11632
  });
11595
11633
  }
11596
-
11597
- /**
11598
- * Web only: display right CloseButton
11599
- */
11600
-
11601
11634
  function NavigationBottomSheetHeader({
11602
- right,
11603
- ...props
11635
+ children,
11636
+ left
11604
11637
  }) {
11605
- return /*#__PURE__*/jsxRuntime.jsx(TopNavBar, {
11606
- ...props
11638
+ return /*#__PURE__*/jsxRuntime.jsx(HStack, {
11639
+ marginBottom: "kitt.6",
11640
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
11641
+ flexGrow: 1,
11642
+ flexShrink: 1,
11643
+ variant: "bold",
11644
+ textAlign: "center",
11645
+ children: children
11646
+ })
11607
11647
  });
11608
11648
  }
11609
11649
  function NavigationBottomSheetBody(props) {
@@ -12058,9 +12098,14 @@ function Picker({
12058
12098
  onClose: handleClose,
12059
12099
  children: /*#__PURE__*/jsxRuntime.jsxs(CardModal, {
12060
12100
  children: [/*#__PURE__*/jsxRuntime.jsx(CardModal.Header, {
12061
- title: title,
12062
- right: /*#__PURE__*/jsxRuntime.jsx(TopNavBar.CloseButton, {
12101
+ right: /*#__PURE__*/jsxRuntime.jsx(IconButton, {
12102
+ icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.XRegularIcon, {}),
12063
12103
  onPress: handleClose
12104
+ }),
12105
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
12106
+ base: "body-m",
12107
+ variant: "bold",
12108
+ children: title
12064
12109
  })
12065
12110
  }), reactNative.Platform.OS === 'ios' && shouldDisplayNativePickerOnIOS ? /*#__PURE__*/jsxRuntime.jsx(picker$1.Picker, {
12066
12111
  testID: testID,
@@ -13604,6 +13649,85 @@ function Tooltip({
13604
13649
  Tooltip.Arrow = Arrow;
13605
13650
  Tooltip.Content = TooltipContent;
13606
13651
 
13652
+ function TopNavBar({
13653
+ left,
13654
+ right,
13655
+ title,
13656
+ titleAlign = 'center',
13657
+ stickers,
13658
+ mode = 'default',
13659
+ hasSeparator = true
13660
+ }) {
13661
+ const isLargeTitleMode = mode === 'largeTitle';
13662
+ return /*#__PURE__*/jsxRuntime.jsxs(VStack, {
13663
+ space: isLargeTitleMode ? 'kitt.2' : undefined,
13664
+ width: "100%",
13665
+ height: mode === 'default' ? 56 : undefined,
13666
+ justifyContent: "center",
13667
+ paddingX: "kitt.2",
13668
+ paddingTop: isLargeTitleMode ? 'kitt.2' : 'kitt.3',
13669
+ paddingBottom: "kitt.3",
13670
+ borderBottomWidth: hasSeparator && mode === 'default' ? 1 : 0,
13671
+ borderColor: "kitt.separator",
13672
+ children: [/*#__PURE__*/jsxRuntime.jsxs(HStack, {
13673
+ alignItems: "center",
13674
+ justifyContent: !title && !left ? 'flex-end' : 'space-between',
13675
+ children: [left ?? /*#__PURE__*/jsxRuntime.jsx(View, {
13676
+ width: "kitt.button.minWidth"
13677
+ }), mode === 'default' ? /*#__PURE__*/jsxRuntime.jsx(View, {
13678
+ flexGrow: "1",
13679
+ flexShrink: 1,
13680
+ paddingRight: "kitt.2",
13681
+ paddingLeft: "kitt.2",
13682
+ children: title ? /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
13683
+ textAlign: titleAlign,
13684
+ variant: "bold",
13685
+ ellipsizeMode: "tail",
13686
+ numberOfLines: 1,
13687
+ children: title
13688
+ }) : null
13689
+ }) : null, right ?? /*#__PURE__*/jsxRuntime.jsx(View, {
13690
+ width: "kitt.button.minWidth"
13691
+ })]
13692
+ }), mode === 'largeTitle' ? /*#__PURE__*/jsxRuntime.jsxs(VStack, {
13693
+ space: "kitt.4",
13694
+ paddingX: "kitt.2",
13695
+ children: [stickers ? /*#__PURE__*/jsxRuntime.jsx(HStack, {
13696
+ width: "100%",
13697
+ space: "kitt.1",
13698
+ flexShrink: 1,
13699
+ flexWrap: "wrap",
13700
+ style: {
13701
+ rowGap: theme.getSpacing(1)
13702
+ },
13703
+ children: stickers.map((sticker, index) =>
13704
+ /*#__PURE__*/
13705
+ // eslint-disable-next-line react/no-array-index-key
13706
+ jsxRuntime.jsx(View, {
13707
+ children: sticker
13708
+ }, index))
13709
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
13710
+ base: "heading-m",
13711
+ children: title
13712
+ })]
13713
+ }) : null]
13714
+ });
13715
+ }
13716
+ function CloseButton(props) {
13717
+ return /*#__PURE__*/jsxRuntime.jsx(IconButton, {
13718
+ icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.XRegularIcon, {}),
13719
+ ...props
13720
+ });
13721
+ }
13722
+ function BackButton(props) {
13723
+ return /*#__PURE__*/jsxRuntime.jsx(IconButton, {
13724
+ icon: /*#__PURE__*/jsxRuntime.jsx(phosphor.ArrowLeftRegularIcon, {}),
13725
+ ...props
13726
+ });
13727
+ }
13728
+ TopNavBar.CloseButton = CloseButton;
13729
+ TopNavBar.BackButton = BackButton;
13730
+
13607
13731
  function getTypographyTypeConfig(type, theme) {
13608
13732
  const {
13609
13733
  configs