@innovaccer/design-system 2.13.3 → 2.13.4-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 (143) hide show
  1. package/core/components/atoms/dropdown/DropdownList.tsx +28 -56
  2. package/core/components/atoms/icon/__stories__/variants/Image.story.jsx +3 -3
  3. package/core/components/css-utilities/Miscellaneous/Miscellaneous.story.tsx +4 -0
  4. package/core/components/molecules/dropzone/FileSelectorUtils.tsx +3 -0
  5. package/core/components/molecules/sidesheet/__stories__/variants/twoSteps.story.jsx +6 -4
  6. package/core/components/organisms/dateRangePicker/__stories__/variants/withSingleInput.story.jsx +3 -0
  7. package/core/components/organisms/pageHeader/__stories__/withStepperL1.story.jsx +2 -2
  8. package/core/index.tsx +1 -0
  9. package/css/dist/index.css +3 -8
  10. package/css/dist/index.css.map +1 -1
  11. package/css/src/components/dropdown.css +2 -6
  12. package/css/src/components/metricInput.css +1 -0
  13. package/dist/core/index.d.ts +1 -0
  14. package/dist/index.esm.js +17 -36
  15. package/dist/index.js +44 -61
  16. package/dist/index.js.map +1 -1
  17. package/dist/index.umd.js +1 -1
  18. package/dist/index.umd.js.br +0 -0
  19. package/dist/index.umd.js.gz +0 -0
  20. package/docs/README.md +14 -0
  21. package/docs/cypress/e2e/main.cy.js +35 -0
  22. package/docs/cypress/fixtures/example.json +5 -0
  23. package/docs/cypress/support/commands.ts +37 -0
  24. package/docs/cypress/support/e2e.ts +20 -0
  25. package/docs/cypress.config.js +9 -0
  26. package/docs/package.json +7 -2
  27. package/docs/src/components/Footer/Footer.js +9 -1
  28. package/docs/src/components/Layout.js +12 -2
  29. package/docs/src/components/css/style.css +4 -0
  30. package/docs/src/data/components/images/Calendar.png +0 -0
  31. package/docs/src/data/components/images/MetaList.png +0 -0
  32. package/docs/src/data/components/images/PageHeader.png +0 -0
  33. package/docs/src/data/components/images/TimePicker.png +0 -0
  34. package/docs/src/data/components/images/mobile/Badge.png +0 -0
  35. package/docs/src/data/components/images/mobile/Dropdown.png +0 -0
  36. package/docs/src/data/components/images/mobile/Message.png +0 -0
  37. package/docs/src/data/components/images/mobile/MetaList.png +0 -0
  38. package/docs/src/data/components/images/mobile/Slider.png +0 -0
  39. package/docs/src/data/components/images/mobile/StatusHint.png +0 -0
  40. package/docs/src/data/components/images/mobile/Stepper.png +0 -0
  41. package/docs/src/data/components/index.js +80 -32
  42. package/docs/src/data/components/mobile.js +84 -0
  43. package/docs/src/data/nav/components.yaml +1 -7
  44. package/docs/src/pages/components/avatar/usage.mdx +1 -0
  45. package/docs/src/pages/components/calendar/usage.mdx +3 -3
  46. package/docs/src/pages/components/chips/images/actionchip-state.png +0 -0
  47. package/docs/src/pages/components/chips/images/inputchips-state.png +0 -0
  48. package/docs/src/pages/components/chips/images/selectionchip-state.png +0 -0
  49. package/docs/src/pages/components/chips/usage.mdx +24 -2
  50. package/docs/src/pages/components/datePicker/images/datePicker-3.png +0 -0
  51. package/docs/src/pages/components/datePicker/images/datePicker-6.png +0 -0
  52. package/docs/src/pages/components/datePicker/usage.mdx +9 -2
  53. package/docs/src/pages/components/inlineEditableFields/images/inlineEditableField-2.png +0 -0
  54. package/docs/src/pages/components/inlineEditableFields/images/inlineEditableField-3.png +0 -0
  55. package/docs/src/pages/components/inlineEditableFields/images/inlineEditableFields-1.png +0 -0
  56. package/docs/src/pages/components/inlineEditableFields/images/inlineEditableFields-4.png +0 -0
  57. package/docs/src/pages/components/inlineEditableFields/usage.mdx +4 -4
  58. package/docs/src/pages/components/inputs/usage.mdx +7 -7
  59. package/docs/src/pages/components/tabs/images/tabs-1.png +0 -0
  60. package/docs/src/pages/content/button-guidelines/tabs/button-glossary.mdx +1776 -1
  61. package/docs/src/pages/content/button-guidelines/tabs/confusing-buttons.mdx +479 -8
  62. package/docs/src/pages/content/email-guidelines.mdx +3 -3
  63. package/docs/src/pages/content/house-rules/tabs/date,-time-&-numbers.mdx +24 -0
  64. package/docs/src/pages/content/house-rules/tabs/grammer.mdx +42 -2
  65. package/docs/src/pages/content/house-rules/tabs/punctuations.mdx +32 -0
  66. package/docs/src/pages/foundations/colors.mdx +338 -24
  67. package/docs/src/pages/foundations/layout/index.mdx +57 -82
  68. package/docs/src/pages/foundations/response-time.mdx +32 -77
  69. package/docs/src/pages/mobile/components/badges/images/badge-1.png +0 -0
  70. package/docs/src/pages/mobile/components/badges/images/badge-2.png +0 -0
  71. package/docs/src/pages/mobile/components/badges/images/badge-3.png +0 -0
  72. package/docs/src/pages/mobile/components/badges/images/badge-4.png +0 -0
  73. package/docs/src/pages/mobile/components/badges/images/badge-5.png +0 -0
  74. package/docs/src/pages/mobile/components/badges/usage.mdx +100 -0
  75. package/docs/src/pages/mobile/components/card/images/mcard-1.png +0 -0
  76. package/docs/src/pages/mobile/components/card/images/mcard-2.png +0 -0
  77. package/docs/src/pages/mobile/components/card/images/mcard-3.png +0 -0
  78. package/docs/src/pages/mobile/components/card/images/mcard-4.png +0 -0
  79. package/docs/src/pages/mobile/components/card/images/mcard-5.png +0 -0
  80. package/docs/src/pages/mobile/components/card/images/mcard-6.png +0 -0
  81. package/docs/src/pages/mobile/components/card/usage.mdx +54 -67
  82. package/docs/src/pages/mobile/components/checkbox/images/checkbox-1.png +0 -0
  83. package/docs/src/pages/mobile/components/checkbox/usage.mdx +26 -2
  84. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-1.png +0 -0
  85. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-10.png +0 -0
  86. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-11.png +0 -0
  87. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-2.png +0 -0
  88. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-3.png +0 -0
  89. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-4.png +0 -0
  90. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-5.png +0 -0
  91. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-6.png +0 -0
  92. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-7.png +0 -0
  93. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-8.png +0 -0
  94. package/docs/src/pages/mobile/components/dropdowns/images/dropdown-9.png +0 -0
  95. package/docs/src/pages/mobile/components/dropdowns/usage.mdx +88 -0
  96. package/docs/src/pages/mobile/components/message/images/messages-1.png +0 -0
  97. package/docs/src/pages/mobile/components/message/images/messages-10.png +0 -0
  98. package/docs/src/pages/mobile/components/message/images/messages-11.png +0 -0
  99. package/docs/src/pages/mobile/components/message/images/messages-12.png +0 -0
  100. package/docs/src/pages/mobile/components/message/images/messages-2.png +0 -0
  101. package/docs/src/pages/mobile/components/message/images/messages-3.png +0 -0
  102. package/docs/src/pages/mobile/components/message/images/messages-4.png +0 -0
  103. package/docs/src/pages/mobile/components/message/images/messages-5.png +0 -0
  104. package/docs/src/pages/mobile/components/message/images/messages-6.png +0 -0
  105. package/docs/src/pages/mobile/components/message/images/messages-7.png +0 -0
  106. package/docs/src/pages/mobile/components/message/images/messages-8.png +0 -0
  107. package/docs/src/pages/mobile/components/message/images/messages-9.png +0 -0
  108. package/docs/src/pages/mobile/components/message/usage.mdx +170 -0
  109. package/docs/src/pages/mobile/components/metaList/images/metaList-1.png +0 -0
  110. package/docs/src/pages/mobile/components/metaList/images/metaList-2.png +0 -0
  111. package/docs/src/pages/mobile/components/metaList/images/metaList-3.png +0 -0
  112. package/docs/src/pages/mobile/components/metaList/images/metaList-4.png +0 -0
  113. package/docs/src/pages/mobile/components/metaList/usage.mdx +71 -0
  114. package/docs/src/pages/mobile/components/slider/images/slider-1.png +0 -0
  115. package/docs/src/pages/mobile/components/slider/images/slider-2.png +0 -0
  116. package/docs/src/pages/mobile/components/slider/images/slider-3.png +0 -0
  117. package/docs/src/pages/mobile/components/slider/images/slider-4.png +0 -0
  118. package/docs/src/pages/mobile/components/slider/images/slider-5.png +0 -0
  119. package/docs/src/pages/mobile/components/slider/usage.mdx +83 -0
  120. package/docs/src/pages/mobile/components/statusHint/images/statushint-1.png +0 -0
  121. package/docs/src/pages/mobile/components/statusHint/images/statushint-2.png +0 -0
  122. package/docs/src/pages/mobile/components/statusHint/images/statushint-3.png +0 -0
  123. package/docs/src/pages/mobile/components/statusHint/images/statushint-4.png +0 -0
  124. package/docs/src/pages/mobile/components/statusHint/images/statushint-5.png +0 -0
  125. package/docs/src/pages/mobile/components/statusHint/images/statushint-6.png +0 -0
  126. package/docs/src/pages/mobile/components/statusHint/images/statushint-7.png +0 -0
  127. package/docs/src/pages/mobile/components/statusHint/usage.mdx +108 -0
  128. package/docs/src/pages/mobile/components/steppers/images/stepper-1.png +0 -0
  129. package/docs/src/pages/mobile/components/steppers/images/stepper-2.png +0 -0
  130. package/docs/src/pages/mobile/components/steppers/images/stepper-3.png +0 -0
  131. package/docs/src/pages/mobile/components/steppers/images/stepper-4.png +0 -0
  132. package/docs/src/pages/mobile/components/steppers/images/stepper-5.png +0 -0
  133. package/docs/src/pages/mobile/components/steppers/images/stepper-6.png +0 -0
  134. package/docs/src/pages/mobile/components/steppers/usage.mdx +111 -0
  135. package/docs/src/pages/mobile/foundations/layout/images/layout-2.png +0 -0
  136. package/docs/src/pages/mobile/foundations/layout/index.mdx +3 -1
  137. package/docs/src/pages/mobile/foundations/page-types/index.mdx +0 -214
  138. package/docs/src/pages/mobile/foundations/spacing/index.mdx +5 -0
  139. package/docs/src/pages/mobile/foundations/typography.mdx +1 -1
  140. package/docs/src/pages/patterns/uiStates/usage.mdx +92 -0
  141. package/package.json +1 -1
  142. package/docs/src/pages/components/inlineEditableFields/images/inlineEditableFields-2.png +0 -0
  143. package/docs/src/pages/components/inlineEditableFields/images/inlineEditableFields-3.png +0 -0
@@ -225,9 +225,6 @@ const DropdownList = (props: OptionsProps) => {
225
225
  const [popoverStyle, setPopoverStyle] = React.useState<PopoverProps['customStyle']>();
226
226
  const [cursor, setCursor] = React.useState(firstEnabledOption);
227
227
 
228
- // Re-initializes its value to 0 on every re-render
229
- let animateOrder = 0;
230
-
231
228
  React.useEffect(() => {
232
229
  if (dropdownOpen) {
233
230
  const { width, minWidth, maxWidth } = props;
@@ -285,27 +282,11 @@ const DropdownList = (props: OptionsProps) => {
285
282
  return Dropdown;
286
283
  };
287
284
 
288
- const animateClass = classNames({
289
- ['fade-in']: dropdownOpen,
290
- ['opacity-0']: dropdownOpen,
291
- ['Dropdown-items']: true,
292
- });
293
-
294
- const getAnimateOrderStyle = (order: number) => {
295
- const animateStyle: React.CSSProperties = {
296
- animationDelay: dropdownOpen ? order * 20 + 'ms' : '',
297
- };
298
- return animateStyle;
299
- };
300
-
301
285
  const getDropdownSectionClass = (showClearButton?: boolean) => {
302
- return classNames(
303
- {
304
- ['Dropdown-section']: true,
305
- ['Dropdown-section--withClear']: showClearButton,
306
- },
307
- animateClass
308
- );
286
+ return classNames({
287
+ ['Dropdown-section']: true,
288
+ ['Dropdown-section--withClear']: showClearButton,
289
+ });
309
290
  };
310
291
 
311
292
  const dropdownClass = classNames(
@@ -320,14 +301,11 @@ const DropdownList = (props: OptionsProps) => {
320
301
  ['Dropdown-wrapper--wrap']: !truncateOption,
321
302
  });
322
303
 
323
- const SelectAllClass = classNames(
324
- {
325
- ['Option-checkbox']: true,
326
- ['Option-checkbox--active']: cursor === 0,
327
- ['OptionWrapper']: true,
328
- },
329
- animateClass
330
- );
304
+ const SelectAllClass = classNames({
305
+ ['Option-checkbox']: true,
306
+ ['Option-checkbox--active']: cursor === 0,
307
+ ['OptionWrapper']: true,
308
+ });
331
309
 
332
310
  const onToggleDropdown = (open: boolean, type?: string) => {
333
311
  toggleDropdown(open, type);
@@ -369,7 +347,7 @@ const DropdownList = (props: OptionsProps) => {
369
347
  const renderFooter = () => {
370
348
  const { footerLabel = 'Search for more options' } = props;
371
349
  return (
372
- <div className={`Dropdown-footer ${animateClass}`} style={getAnimateOrderStyle(++animateOrder)}>
350
+ <div className="Dropdown-footer">
373
351
  <Text size="small" appearance={'subtle'}>
374
352
  {footerLabel}
375
353
  </Text>
@@ -382,7 +360,7 @@ const DropdownList = (props: OptionsProps) => {
382
360
  const isClearDisabled = selected.every((option) => option.disabled);
383
361
 
384
362
  return (
385
- <div className={getDropdownSectionClass(selectedGroup)} style={getAnimateOrderStyle(++animateOrder)}>
363
+ <div className={getDropdownSectionClass(selectedGroup)}>
386
364
  <Text size="small" appearance={'subtle'}>
387
365
  {group}
388
366
  </Text>
@@ -404,7 +382,7 @@ const DropdownList = (props: OptionsProps) => {
404
382
  const renderApplyButton = () => {
405
383
  const disable = _isEqual(previousSelected, tempSelected);
406
384
  return (
407
- <div className={`Dropdown-buttonWrapper ${animateClass}`} style={getAnimateOrderStyle(++animateOrder)}>
385
+ <div className="Dropdown-buttonWrapper">
408
386
  <Button
409
387
  ref={dropdownCancelButtonRef}
410
388
  className="mr-4"
@@ -432,7 +410,7 @@ const DropdownList = (props: OptionsProps) => {
432
410
 
433
411
  const renderSearch = () => {
434
412
  return (
435
- <div className={`Dropdown-inputWrapper ${animateClass}`} style={getAnimateOrderStyle(++animateOrder)}>
413
+ <div className="Dropdown-inputWrapper">
436
414
  <Input
437
415
  name="Dropdown-search"
438
416
  icon={'search'}
@@ -469,11 +447,7 @@ const DropdownList = (props: OptionsProps) => {
469
447
  const label = selectAllLabel.trim() ? selectAllLabel.trim() : 'Select All';
470
448
 
471
449
  return (
472
- <div
473
- style={getAnimateOrderStyle(++animateOrder)}
474
- className={SelectAllClass}
475
- onMouseEnter={() => updateActiveOption(0, true)}
476
- >
450
+ <div className={SelectAllClass} onMouseEnter={() => updateActiveOption(0, true)}>
477
451
  <Checkbox
478
452
  label={label}
479
453
  onChange={onSelectAll}
@@ -497,22 +471,20 @@ const DropdownList = (props: OptionsProps) => {
497
471
  const active = selectAllPresent ? index + 1 === cursor : index === cursor;
498
472
  const optionIsSelected = tempSelected.findIndex((option) => option.value === item.value) !== -1;
499
473
  return (
500
- <div style={getAnimateOrderStyle(++animateOrder)} className={animateClass}>
501
- <Option
502
- optionData={item}
503
- truncateOption={truncateOption}
504
- selected={optionIsSelected}
505
- index={index}
506
- updateActiveOption={updateActiveOption}
507
- optionRenderer={optionRenderer}
508
- active={active}
509
- checkboxes={withCheckbox}
510
- menu={menu}
511
- onClick={() => optionClickHandler(item)}
512
- onChange={(e) => props.onSelect(item, e.target.checked)}
513
- optionType={props.optionType}
514
- />
515
- </div>
474
+ <Option
475
+ optionData={item}
476
+ truncateOption={truncateOption}
477
+ selected={optionIsSelected}
478
+ index={index}
479
+ updateActiveOption={updateActiveOption}
480
+ optionRenderer={optionRenderer}
481
+ active={active}
482
+ checkboxes={withCheckbox}
483
+ menu={menu}
484
+ onClick={() => optionClickHandler(item)}
485
+ onChange={(e) => props.onSelect(item, e.target.checked)}
486
+ optionType={props.optionType}
487
+ />
516
488
  );
517
489
  };
518
490
 
@@ -6,9 +6,9 @@ export const image = () => {
6
6
  <Icon size={50}>
7
7
  <img
8
8
  alt="Innovaccer logo"
9
- src="https://innovaccer.com/static/image/site-logo/innovaccer-logo-black.svg"
10
- width="150"
11
- height="150"
9
+ src="https://design.innovaccer.com/images/withoutType.png"
10
+ width="50"
11
+ height="50"
12
12
  />
13
13
  </Icon>
14
14
  );
@@ -24,6 +24,10 @@ export const miscellaneous = () => {
24
24
  className: 'cursor-pointer',
25
25
  properties: 'cursor: pointer;',
26
26
  },
27
+ {
28
+ className: 'text-decoration--none',
29
+ properties: 'text-decoration: none;',
30
+ },
27
31
  ];
28
32
  return (
29
33
  <div className="mt-8 mb-8">
@@ -12,6 +12,9 @@ export const COMMON_MIME_TYPES = new Map([
12
12
  ['zip', 'application/zip'],
13
13
  ['doc', 'application/msword'],
14
14
  ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],
15
+ ['csv', 'text/csv'],
16
+ ['xlss', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],
17
+ ['xls', 'application/vnd.ms-excel'],
15
18
  ]);
16
19
 
17
20
  const FILES_TO_IGNORE = ['.DS_Store', 'Thumbs.db'];
@@ -3,7 +3,7 @@ import { action } from '@/utils/action';
3
3
  import { Heading, Text, Sidesheet, ModalDescription, Button } from '@/index';
4
4
 
5
5
  export const twoSteps = () => {
6
- const [page, setPage] = React.useState(2);
6
+ const [page, setPage] = React.useState(1);
7
7
  const [animate, setAnimate] = React.useState(true);
8
8
  const [open, setOpen] = React.useState(false);
9
9
  const seperator = false;
@@ -77,7 +77,9 @@ export const twoSteps = () => {
77
77
 
78
78
  return (
79
79
  <div>
80
- <Button appearance="primary" onClick={() => setOpen(true)}>Open Sidesheet</Button>
80
+ <Button appearance="primary" onClick={() => setOpen(true)}>
81
+ Open Sidesheet
82
+ </Button>
81
83
  <Sidesheet {...options}>
82
84
  <div className={animate ? 'fade-in' : ''} onAnimationEnd={() => setAnimate(false)}>
83
85
  <Heading size="s">{`Page ${page}`}</Heading>
@@ -92,11 +94,11 @@ export const twoSteps = () => {
92
94
 
93
95
  const customCode = `() => {
94
96
  const [open, setOpen] = React.useState(false);
95
- const [page, setPage] = React.useState(2);
97
+ const [page, setPage] = React.useState(1);
96
98
  const [animate, setAnimate] = React.useState(true);
97
99
 
98
100
  const onClose = () => {
99
- setOpen(!open);
101
+ setOpen(false);
100
102
  };
101
103
 
102
104
  React.useEffect(() => {
@@ -28,6 +28,8 @@ export const withSingleInput = () => {
28
28
 
29
29
  const monthNav = -1;
30
30
 
31
+ const open = false;
32
+
31
33
  const attr = {};
32
34
  if (disabledBefore) attr.disabledBefore = disabledBefore;
33
35
  if (disabledAfter) attr.disabledAfter = disabledAfter;
@@ -55,6 +57,7 @@ export const withSingleInput = () => {
55
57
  label: 'Date',
56
58
  }}
57
59
  {...attr}
60
+ open={open}
58
61
  />
59
62
  </div>
60
63
  );
@@ -71,7 +71,7 @@ export const level1WithStepper = () => {
71
71
  />
72
72
  );
73
73
  const badge = <Badge appearance="secondary">Message</Badge>;
74
- const meta = <MetaList list={[{ label: 'Draft' }]} seperator={true} />;
74
+ const meta = <MetaList list={[{ label: 'Draft' }]} seperator={false} />;
75
75
 
76
76
  return (
77
77
  <div className="w-100 p-6 bg-secondary-lightest">
@@ -163,7 +163,7 @@ const customCode = `() => {
163
163
  const meta = (
164
164
  <MetaList
165
165
  list={[{ label: 'Draft' }]}
166
- seperator={true}
166
+ seperator={false}
167
167
  />
168
168
  );
169
169
 
package/core/index.tsx CHANGED
@@ -65,6 +65,7 @@ export { Placeholder } from './components/molecules/placeholder';
65
65
  export { EditableInput } from './components/molecules/editableInput';
66
66
  export { EditableChipInput } from './components/molecules/editableChipInput';
67
67
  export { PlaceholderParagraph } from './components/atoms/placeholderParagraph';
68
+ export { PlaceholderImage } from './components/atoms/placeholderImage';
68
69
  export { ProgressRing } from './components/atoms/progressRing';
69
70
  export { Stepper } from './components/molecules/stepper';
70
71
  export { DateRangePicker } from './components/organisms/dateRangePicker';
@@ -2085,7 +2085,7 @@ body {
2085
2085
  }
2086
2086
 
2087
2087
  .Dropdown-inputWrapper {
2088
- border-bottom: var(--border);
2088
+ border-bottom: var(--spacing-xs) solid var(--secondary-dark);
2089
2089
  }
2090
2090
 
2091
2091
  .Dropdown-input {
@@ -2095,6 +2095,7 @@ body {
2095
2095
  .Dropdown-input,
2096
2096
  .Dropdown-input:focus-within {
2097
2097
  border: unset !important;
2098
+ box-shadow: none !important;
2098
2099
  }
2099
2100
 
2100
2101
  .Dropdown-section {
@@ -2135,13 +2136,6 @@ body {
2135
2136
  box-sizing: border-box;
2136
2137
  }
2137
2138
 
2138
- .Dropdown-items {
2139
- -webkit-animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9);
2140
- animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9);
2141
- -webkit-animation-fill-mode: forwards;
2142
- animation-fill-mode: forwards;
2143
- }
2144
-
2145
2139
  .Option {
2146
2140
  display: flex;
2147
2141
  transition: var(--duration--fast-01) var(--standard-productive-curve);
@@ -3858,6 +3852,7 @@ body {
3858
3852
  .MetricInput:focus-within {
3859
3853
  background: var(--white);
3860
3854
  border-color: var(--primary);
3855
+ box-shadow: var(--shadow-spread) var(--primary-shadow);
3861
3856
  }
3862
3857
 
3863
3858
  .MetricInput:focus-within .MetricInput-icon {