@veeqo/ui 14.2.0 → 14.3.0-beta-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.
Files changed (114) hide show
  1. package/dist/components/Accordion/styled.cjs +19 -9
  2. package/dist/components/Accordion/styled.cjs.map +1 -1
  3. package/dist/components/Accordion/styled.d.ts +9 -23
  4. package/dist/components/Accordion/styled.js +19 -9
  5. package/dist/components/Accordion/styled.js.map +1 -1
  6. package/dist/components/Action/Action.d.ts +4 -4
  7. package/dist/components/AnimatedDropdown/components/styled.d.ts +2 -1
  8. package/dist/components/AnimatedDropdown/styled.d.ts +2 -2
  9. package/dist/components/Badge/styled.cjs +27 -4
  10. package/dist/components/Badge/styled.cjs.map +1 -1
  11. package/dist/components/Badge/styled.d.ts +4 -3
  12. package/dist/components/Badge/styled.js +27 -4
  13. package/dist/components/Badge/styled.js.map +1 -1
  14. package/dist/components/Banner/styled.cjs +27 -8
  15. package/dist/components/Banner/styled.cjs.map +1 -1
  16. package/dist/components/Banner/styled.d.ts +7 -7
  17. package/dist/components/Banner/styled.js +27 -8
  18. package/dist/components/Banner/styled.js.map +1 -1
  19. package/dist/components/BaseContainer/BaseContainer.cjs +7 -3
  20. package/dist/components/BaseContainer/BaseContainer.cjs.map +1 -1
  21. package/dist/components/BaseContainer/BaseContainer.d.ts +2 -1
  22. package/dist/components/BaseContainer/BaseContainer.js +6 -2
  23. package/dist/components/BaseContainer/BaseContainer.js.map +1 -1
  24. package/dist/components/BaseContainer/BaseContainer.module.scss.cjs +9 -0
  25. package/dist/components/BaseContainer/BaseContainer.module.scss.cjs.map +1 -0
  26. package/dist/components/BaseContainer/BaseContainer.module.scss.js +7 -0
  27. package/dist/components/BaseContainer/BaseContainer.module.scss.js.map +1 -0
  28. package/dist/components/DataTable/components/ColumnHeader.d.ts +1 -1
  29. package/dist/components/DimensionsInput/DimensionsInput.cjs +8 -8
  30. package/dist/components/DimensionsInput/DimensionsInput.cjs.map +1 -1
  31. package/dist/components/DimensionsInput/DimensionsInput.d.ts +8 -8
  32. package/dist/components/DimensionsInput/DimensionsInput.js +1 -1
  33. package/dist/components/FilterTag/styled.d.ts +4 -4
  34. package/dist/components/Grid/index.cjs +7 -1
  35. package/dist/components/Grid/index.cjs.map +1 -1
  36. package/dist/components/Grid/index.d.ts +2 -1
  37. package/dist/components/Grid/index.js +7 -1
  38. package/dist/components/Grid/index.js.map +1 -1
  39. package/dist/components/InputAffix/InputAffix.cjs +3 -4
  40. package/dist/components/InputAffix/InputAffix.cjs.map +1 -1
  41. package/dist/components/InputAffix/InputAffix.js +1 -2
  42. package/dist/components/InputAffix/InputAffix.js.map +1 -1
  43. package/dist/components/InputGroup/InputGroup.cjs +21 -0
  44. package/dist/components/InputGroup/InputGroup.cjs.map +1 -0
  45. package/dist/components/InputGroup/InputGroup.d.ts +2 -0
  46. package/dist/components/InputGroup/InputGroup.js +15 -0
  47. package/dist/components/InputGroup/InputGroup.js.map +1 -0
  48. package/dist/components/InputGroup/InputGroup.module.scss.cjs +9 -0
  49. package/dist/components/InputGroup/InputGroup.module.scss.cjs.map +1 -0
  50. package/dist/components/InputGroup/InputGroup.module.scss.js +7 -0
  51. package/dist/components/InputGroup/InputGroup.module.scss.js.map +1 -0
  52. package/dist/components/InputGroup/index.d.ts +2 -4
  53. package/dist/components/InputGroup/types.d.ts +3 -0
  54. package/dist/components/LegacyDataTable/SpecificState/styled.d.ts +4 -4
  55. package/dist/components/Pagination/styled.d.ts +8 -8
  56. package/dist/components/PhoneInput/index.d.ts +8 -8
  57. package/dist/components/PriceInput/PriceInput.cjs +4 -4
  58. package/dist/components/PriceInput/PriceInput.cjs.map +1 -1
  59. package/dist/components/PriceInput/PriceInput.js +1 -1
  60. package/dist/components/Search/Search.d.ts +8 -8
  61. package/dist/components/Search/styled.cjs +12 -2
  62. package/dist/components/Search/styled.cjs.map +1 -1
  63. package/dist/components/Search/styled.d.ts +9 -9
  64. package/dist/components/Search/styled.js +12 -2
  65. package/dist/components/Search/styled.js.map +1 -1
  66. package/dist/components/SegmentedControl/styled.d.ts +2 -1
  67. package/dist/components/Stack/Stack.cjs +26 -45
  68. package/dist/components/Stack/Stack.cjs.map +1 -1
  69. package/dist/components/Stack/Stack.d.ts +9 -2
  70. package/dist/components/Stack/Stack.js +25 -44
  71. package/dist/components/Stack/Stack.js.map +1 -1
  72. package/dist/components/Stack/Stack.module.scss.cjs +9 -0
  73. package/dist/components/Stack/Stack.module.scss.cjs.map +1 -0
  74. package/dist/components/Stack/Stack.module.scss.js +7 -0
  75. package/dist/components/Stack/Stack.module.scss.js.map +1 -0
  76. package/dist/components/Stack/types.d.ts +6 -6
  77. package/dist/components/Stepper/styled.cjs +16 -3
  78. package/dist/components/Stepper/styled.cjs.map +1 -1
  79. package/dist/components/Stepper/styled.d.ts +9 -1
  80. package/dist/components/Stepper/styled.js +16 -3
  81. package/dist/components/Stepper/styled.js.map +1 -1
  82. package/dist/components/Text/Text.d.ts +1 -1
  83. package/dist/components/TextField/TextField.d.ts +8 -8
  84. package/dist/components/TextField/index.d.ts +8 -8
  85. package/dist/components/ToastsLayout/components/styled.cjs +37 -4
  86. package/dist/components/ToastsLayout/components/styled.cjs.map +1 -1
  87. package/dist/components/ToastsLayout/components/styled.d.ts +26 -5
  88. package/dist/components/ToastsLayout/components/styled.js +37 -4
  89. package/dist/components/ToastsLayout/components/styled.js.map +1 -1
  90. package/dist/components/Toggle/styled.d.ts +2 -1
  91. package/dist/components/VideoModal/components/styled.d.ts +4 -3
  92. package/dist/components/View/styled.d.ts +4 -4
  93. package/dist/components/ViewTab/ViewTab.d.ts +1 -1
  94. package/dist/components/WeightInput/WeightInput.cjs +8 -8
  95. package/dist/components/WeightInput/WeightInput.cjs.map +1 -1
  96. package/dist/components/WeightInput/WeightInput.js +1 -1
  97. package/dist/components/index.d.ts +1 -1
  98. package/dist/hoc/withClassNames/withClassNames.d.ts +1 -1
  99. package/dist/hoc/withLabels/styled.d.ts +9 -1
  100. package/dist/index.cjs +10 -10
  101. package/dist/index.js +1 -1
  102. package/dist/utils/forms/inputStyles.cjs +1 -2
  103. package/dist/utils/forms/inputStyles.cjs.map +1 -1
  104. package/dist/utils/forms/inputStyles.js +1 -2
  105. package/dist/utils/forms/inputStyles.js.map +1 -1
  106. package/package.json +1 -1
  107. package/dist/components/InputGroup/index.cjs +0 -13
  108. package/dist/components/InputGroup/index.cjs.map +0 -1
  109. package/dist/components/InputGroup/index.js +0 -7
  110. package/dist/components/InputGroup/index.js.map +0 -1
  111. package/dist/components/Stack/Alignments.cjs +0 -12
  112. package/dist/components/Stack/Alignments.cjs.map +0 -1
  113. package/dist/components/Stack/Alignments.js +0 -12
  114. package/dist/components/Stack/Alignments.js.map +0 -1
@@ -2,16 +2,16 @@
2
2
  type SpecificStateContainerPropTypes = {
3
3
  height: number;
4
4
  };
5
- declare const SpecificStateContainer: import("styled-components").StyledComponent<"div", any, SpecificStateContainerPropTypes, never>;
6
- declare const EllipseContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
5
+ declare const SpecificStateContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>, any, SpecificStateContainerPropTypes, never>;
6
+ declare const EllipseContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>, any, {}, never>;
7
7
  declare const TitleText: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<{
8
8
  as?: import("../../Text").ValidTextTag | undefined;
9
9
  muted?: boolean | undefined;
10
- variant?: "body" | "button" | "link" | "headingXXL" | "headingXL" | "headingLarge" | "headingMedium" | "headingSmall" | "headingTable" | "subheadingLarge" | "subheadingMedium" | "subheadingSmall" | "subheadingSmallBold" | "bodySmall" | "bodyBold" | "bodyBoldDark" | "bodySmallBold" | "inputLabel" | "inputLabelSmall" | "hintText" | "placeholder" | "placeholderSmall" | "placeholderCode" | "placeholderCodeSmall" | "error" | "errorSmall" | "successSmall" | "buttonSmall" | "linkLarge" | "linkMedium" | "linkSmall" | undefined;
10
+ variant?: "placeholder" | "link" | "body" | "button" | "headingXXL" | "headingXL" | "headingLarge" | "headingMedium" | "headingSmall" | "headingTable" | "subheadingLarge" | "subheadingMedium" | "subheadingSmall" | "subheadingSmallBold" | "bodySmall" | "bodyBold" | "bodyBoldDark" | "bodySmallBold" | "inputLabel" | "inputLabelSmall" | "hintText" | "placeholderSmall" | "placeholderCode" | "placeholderCodeSmall" | "error" | "errorSmall" | "successSmall" | "buttonSmall" | "linkLarge" | "linkMedium" | "linkSmall" | undefined;
11
11
  } & import("react").HTMLAttributes<HTMLElement> & import("react").LabelHTMLAttributes<HTMLLabelElement> & import("react").RefAttributes<HTMLElement>>, any, {}, never>;
12
12
  declare const SubTitleText: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<{
13
13
  as?: import("../../Text").ValidTextTag | undefined;
14
14
  muted?: boolean | undefined;
15
- variant?: "body" | "button" | "link" | "headingXXL" | "headingXL" | "headingLarge" | "headingMedium" | "headingSmall" | "headingTable" | "subheadingLarge" | "subheadingMedium" | "subheadingSmall" | "subheadingSmallBold" | "bodySmall" | "bodyBold" | "bodyBoldDark" | "bodySmallBold" | "inputLabel" | "inputLabelSmall" | "hintText" | "placeholder" | "placeholderSmall" | "placeholderCode" | "placeholderCodeSmall" | "error" | "errorSmall" | "successSmall" | "buttonSmall" | "linkLarge" | "linkMedium" | "linkSmall" | undefined;
15
+ variant?: "placeholder" | "link" | "body" | "button" | "headingXXL" | "headingXL" | "headingLarge" | "headingMedium" | "headingSmall" | "headingTable" | "subheadingLarge" | "subheadingMedium" | "subheadingSmall" | "subheadingSmallBold" | "bodySmall" | "bodyBold" | "bodyBoldDark" | "bodySmallBold" | "inputLabel" | "inputLabelSmall" | "hintText" | "placeholderSmall" | "placeholderCode" | "placeholderCodeSmall" | "error" | "errorSmall" | "successSmall" | "buttonSmall" | "linkLarge" | "linkMedium" | "linkSmall" | undefined;
16
16
  } & import("react").HTMLAttributes<HTMLElement> & import("react").LabelHTMLAttributes<HTMLLabelElement> & import("react").RefAttributes<HTMLElement>>, any, {}, never>;
17
17
  export { SpecificStateContainer, EllipseContainer, TitleText, SubTitleText };
@@ -16,14 +16,7 @@ export declare const PaginationButton: import("styled-components").StyledCompone
16
16
  contentStyles?: import("react").CSSProperties | undefined;
17
17
  } & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("../../hoc/withTokens").WithTokensProps & import("react").RefAttributes<HTMLButtonElement>>, any, {}, never>;
18
18
  export declare const PageInput: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Omit<{
19
- form?: string | undefined;
20
- slot?: string | undefined;
21
- style?: import("react").CSSProperties | undefined;
22
- title?: string | undefined;
23
- pattern?: string | undefined;
24
19
  rel?: string | undefined;
25
- placeholder?: string | undefined;
26
- list?: string | undefined;
27
20
  className?: string | undefined;
28
21
  children?: import("react").ReactNode;
29
22
  defaultChecked?: boolean | undefined;
@@ -40,8 +33,12 @@ export declare const PageInput: import("styled-components").StyledComponent<impo
40
33
  id?: string | undefined;
41
34
  lang?: string | undefined;
42
35
  nonce?: string | undefined;
36
+ placeholder?: string | undefined;
37
+ slot?: string | undefined;
43
38
  spellCheck?: (boolean | "true" | "false") | undefined;
39
+ style?: import("react").CSSProperties | undefined;
44
40
  tabIndex?: number | undefined;
41
+ title?: string | undefined;
45
42
  translate?: "yes" | "no" | undefined;
46
43
  radioGroup?: string | undefined;
47
44
  role?: import("react").AriaRole | undefined;
@@ -67,7 +64,7 @@ export declare const PageInput: import("styled-components").StyledComponent<impo
67
64
  results?: number | undefined;
68
65
  security?: string | undefined;
69
66
  unselectable?: "on" | "off" | undefined;
70
- inputMode?: "text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
67
+ inputMode?: "search" | "text" | "none" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
71
68
  is?: string | undefined;
72
69
  'aria-activedescendant'?: string | undefined;
73
70
  'aria-atomic'?: (boolean | "true" | "false") | undefined;
@@ -279,6 +276,9 @@ export declare const PageInput: import("styled-components").StyledComponent<impo
279
276
  onAnimationIterationCapture?: (import("react").AnimationEventHandler<HTMLInputElement> & import("react").AnimationEventHandler<HTMLTextAreaElement>) | undefined;
280
277
  onTransitionEnd?: (import("react").TransitionEventHandler<HTMLInputElement> & import("react").TransitionEventHandler<HTMLTextAreaElement>) | undefined;
281
278
  onTransitionEndCapture?: (import("react").TransitionEventHandler<HTMLInputElement> & import("react").TransitionEventHandler<HTMLTextAreaElement>) | undefined;
279
+ form?: string | undefined;
280
+ pattern?: string | undefined;
281
+ list?: string | undefined;
282
282
  alt?: string | undefined;
283
283
  disabled?: boolean | undefined;
284
284
  formAction?: string | undefined;
@@ -1,13 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  export declare const PhoneInput: import("react").ForwardRefExoticComponent<{
3
- form?: string | undefined;
4
- slot?: string | undefined;
5
- style?: import("react").CSSProperties | undefined;
6
- title?: string | undefined;
7
- pattern?: string | undefined;
8
3
  rel?: string | undefined;
9
- placeholder?: string | undefined;
10
- list?: string | undefined;
11
4
  className?: string | undefined;
12
5
  children?: import("react").ReactNode;
13
6
  defaultChecked?: boolean | undefined;
@@ -24,8 +17,12 @@ export declare const PhoneInput: import("react").ForwardRefExoticComponent<{
24
17
  id?: string | undefined;
25
18
  lang?: string | undefined;
26
19
  nonce?: string | undefined;
20
+ placeholder?: string | undefined;
21
+ slot?: string | undefined;
27
22
  spellCheck?: (boolean | "true" | "false") | undefined;
23
+ style?: import("react").CSSProperties | undefined;
28
24
  tabIndex?: number | undefined;
25
+ title?: string | undefined;
29
26
  translate?: "yes" | "no" | undefined;
30
27
  radioGroup?: string | undefined;
31
28
  role?: import("react").AriaRole | undefined;
@@ -51,7 +48,7 @@ export declare const PhoneInput: import("react").ForwardRefExoticComponent<{
51
48
  results?: number | undefined;
52
49
  security?: string | undefined;
53
50
  unselectable?: "on" | "off" | undefined;
54
- inputMode?: "text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
51
+ inputMode?: "search" | "text" | "none" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
55
52
  is?: string | undefined;
56
53
  'aria-activedescendant'?: string | undefined;
57
54
  'aria-atomic'?: (boolean | "true" | "false") | undefined;
@@ -263,6 +260,9 @@ export declare const PhoneInput: import("react").ForwardRefExoticComponent<{
263
260
  onAnimationIterationCapture?: (import("react").AnimationEventHandler<HTMLInputElement> & import("react").AnimationEventHandler<HTMLTextAreaElement>) | undefined;
264
261
  onTransitionEnd?: (import("react").TransitionEventHandler<HTMLInputElement> & import("react").TransitionEventHandler<HTMLTextAreaElement>) | undefined;
265
262
  onTransitionEndCapture?: (import("react").TransitionEventHandler<HTMLInputElement> & import("react").TransitionEventHandler<HTMLTextAreaElement>) | undefined;
263
+ form?: string | undefined;
264
+ pattern?: string | undefined;
265
+ list?: string | undefined;
266
266
  alt?: string | undefined;
267
267
  disabled?: boolean | undefined;
268
268
  formAction?: string | undefined;
@@ -4,8 +4,8 @@ var React = require('react');
4
4
  var withLabels = require('../../hoc/withLabels/withLabels.cjs');
5
5
  var Stepper = require('../Stepper/Stepper.cjs');
6
6
  var InputAffix = require('../InputAffix/InputAffix.cjs');
7
- var index = require('../InputGroup/index.cjs');
8
- var index$1 = require('../TextField/index.cjs');
7
+ var InputGroup = require('../InputGroup/InputGroup.cjs');
8
+ var index = require('../TextField/index.cjs');
9
9
 
10
10
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
11
11
 
@@ -53,9 +53,9 @@ const PriceInput = withLabels.withLabels(({ className = '', hasError, currency,
53
53
  handleDecrement(onChange);
54
54
  };
55
55
  const compact = size === 'sm';
56
- return (React__default.default.createElement(index.InputGroup, { hasError: hasError, style: flexStyle, className: className },
56
+ return (React__default.default.createElement(InputGroup.InputGroup, { hasError: hasError, style: flexStyle, className: className },
57
57
  React__default.default.createElement(InputAffix.InputAffix, { compact: compact, hasError: hasError }, currency),
58
- React__default.default.createElement(index$1.TextField, { placeholder: "0.00", value: priceValue, step: step, onChange: handleChange, onBlur: handleBlur, onKeyDown: handleKeyDown, disabled: disabled, size: size, hasError: hasError, style: flexStyle, ...otherProps }),
58
+ React__default.default.createElement(index.TextField, { placeholder: "0.00", value: priceValue, step: step, onChange: handleChange, onBlur: handleBlur, onKeyDown: handleKeyDown, disabled: disabled, size: size, hasError: hasError, style: flexStyle, ...otherProps }),
59
59
  React__default.default.createElement(Stepper.Stepper, { onIncrement: () => handleIncrement(), onDecrement: () => handleDecrement(), disabled: disabled, hasError: hasError, size: size })));
60
60
  });
61
61
  PriceInput.displayName = 'PriceInput';
@@ -1 +1 @@
1
- {"version":3,"file":"PriceInput.cjs","sources":["../../../src/components/PriceInput/PriceInput.tsx"],"sourcesContent":["import React from 'react';\n\nimport { withLabels } from '../../hoc';\nimport { PriceInputProps } from './types';\n\nimport { Stepper } from '../Stepper';\nimport { InputAffix } from '../InputAffix';\nimport { InputGroup } from '../InputGroup';\nimport { TextField, TextFieldProps } from '../TextField';\n\nconst fractionDigits = 2;\n\nconst flexStyle = { flex: 1 };\n\nfunction stringToFixed(price: string) {\n const floatPrice = parseFloat(price.replace(',', '.'));\n return floatPrice.toFixed(fractionDigits);\n}\n\nexport const PriceInput = withLabels<PriceInputProps>(\n ({\n className = '',\n hasError,\n currency,\n disabled = false,\n onChange,\n onPriceChange,\n priceValue,\n step = '0.1',\n size = 'base',\n ...otherProps\n }) => {\n const handleChange = (value: string) =>\n onChange(value.replace(/[a-zA-Z]/g, '').replace(',', '.'));\n\n const handleBlur: TextFieldProps['onBlur'] = (e) => {\n const target = e.target as HTMLInputElement;\n const { value } = target;\n\n if (!value) {\n onPriceChange('');\n\n return;\n }\n\n const roundedValue = stringToFixed(value);\n\n onPriceChange(roundedValue);\n };\n\n const handleIncrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n\n callback((currentPrice + currentStep).toFixed(fractionDigits));\n };\n const handleDecrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n\n callback((currentPrice - currentStep).toFixed(fractionDigits));\n };\n\n const handleKeyDown: TextFieldProps['onKeyDown'] = (e) => {\n const { key } = e;\n const target = e.target as HTMLInputElement;\n const isInForm = target.form;\n\n if (!isInForm) {\n if (key === 'Enter') target.blur();\n }\n if (key === 'ArrowUp') handleIncrement(onChange);\n if (key === 'ArrowDown') handleDecrement(onChange);\n };\n\n const compact = size === 'sm';\n\n return (\n <InputGroup hasError={hasError} style={flexStyle} className={className}>\n <InputAffix compact={compact} hasError={hasError}>\n {currency}\n </InputAffix>\n <TextField\n placeholder=\"0.00\"\n value={priceValue}\n step={step}\n onChange={handleChange}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n disabled={disabled}\n size={size}\n hasError={hasError}\n style={flexStyle}\n {...otherProps}\n />\n <Stepper\n onIncrement={() => handleIncrement()}\n onDecrement={() => handleDecrement()}\n disabled={disabled}\n hasError={hasError}\n size={size}\n />\n </InputGroup>\n );\n },\n);\n\nPriceInput.displayName = 'PriceInput';\n"],"names":["withLabels","React","InputGroup","InputAffix","TextField","Stepper"],"mappings":"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"}
1
+ {"version":3,"file":"PriceInput.cjs","sources":["../../../src/components/PriceInput/PriceInput.tsx"],"sourcesContent":["import React from 'react';\n\nimport { withLabels } from '../../hoc';\nimport { PriceInputProps } from './types';\n\nimport { Stepper } from '../Stepper';\nimport { InputAffix } from '../InputAffix';\nimport { InputGroup } from '../InputGroup';\nimport { TextField, TextFieldProps } from '../TextField';\n\nconst fractionDigits = 2;\n\nconst flexStyle = { flex: 1 };\n\nfunction stringToFixed(price: string) {\n const floatPrice = parseFloat(price.replace(',', '.'));\n return floatPrice.toFixed(fractionDigits);\n}\n\nexport const PriceInput = withLabels<PriceInputProps>(\n ({\n className = '',\n hasError,\n currency,\n disabled = false,\n onChange,\n onPriceChange,\n priceValue,\n step = '0.1',\n size = 'base',\n ...otherProps\n }) => {\n const handleChange = (value: string) =>\n onChange(value.replace(/[a-zA-Z]/g, '').replace(',', '.'));\n\n const handleBlur: TextFieldProps['onBlur'] = (e) => {\n const target = e.target as HTMLInputElement;\n const { value } = target;\n\n if (!value) {\n onPriceChange('');\n\n return;\n }\n\n const roundedValue = stringToFixed(value);\n\n onPriceChange(roundedValue);\n };\n\n const handleIncrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n\n callback((currentPrice + currentStep).toFixed(fractionDigits));\n };\n const handleDecrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n\n callback((currentPrice - currentStep).toFixed(fractionDigits));\n };\n\n const handleKeyDown: TextFieldProps['onKeyDown'] = (e) => {\n const { key } = e;\n const target = e.target as HTMLInputElement;\n const isInForm = target.form;\n\n if (!isInForm) {\n if (key === 'Enter') target.blur();\n }\n if (key === 'ArrowUp') handleIncrement(onChange);\n if (key === 'ArrowDown') handleDecrement(onChange);\n };\n\n const compact = size === 'sm';\n\n return (\n <InputGroup hasError={hasError} style={flexStyle} className={className}>\n <InputAffix compact={compact} hasError={hasError}>\n {currency}\n </InputAffix>\n <TextField\n placeholder=\"0.00\"\n value={priceValue}\n step={step}\n onChange={handleChange}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n disabled={disabled}\n size={size}\n hasError={hasError}\n style={flexStyle}\n {...otherProps}\n />\n <Stepper\n onIncrement={() => handleIncrement()}\n onDecrement={() => handleDecrement()}\n disabled={disabled}\n hasError={hasError}\n size={size}\n />\n </InputGroup>\n );\n },\n);\n\nPriceInput.displayName = 'PriceInput';\n"],"names":["withLabels","React","InputGroup","InputAffix","TextField","Stepper"],"mappings":"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"}
@@ -2,7 +2,7 @@ import React__default from 'react';
2
2
  import { withLabels } from '../../hoc/withLabels/withLabels.js';
3
3
  import { Stepper } from '../Stepper/Stepper.js';
4
4
  import { InputAffix } from '../InputAffix/InputAffix.js';
5
- import { InputGroup } from '../InputGroup/index.js';
5
+ import { InputGroup } from '../InputGroup/InputGroup.js';
6
6
  import { TextField } from '../TextField/index.js';
7
7
 
8
8
  const fractionDigits = 2;
@@ -1,13 +1,6 @@
1
1
  import React from 'react';
2
2
  export declare const Search: React.ForwardRefExoticComponent<{
3
- form?: string | undefined;
4
- slot?: string | undefined;
5
- style?: React.CSSProperties | undefined;
6
- title?: string | undefined;
7
- pattern?: string | undefined;
8
3
  rel?: string | undefined;
9
- placeholder?: string | undefined;
10
- list?: string | undefined;
11
4
  className?: string | undefined;
12
5
  children?: React.ReactNode;
13
6
  defaultChecked?: boolean | undefined;
@@ -24,8 +17,12 @@ export declare const Search: React.ForwardRefExoticComponent<{
24
17
  id?: string | undefined;
25
18
  lang?: string | undefined;
26
19
  nonce?: string | undefined;
20
+ placeholder?: string | undefined;
21
+ slot?: string | undefined;
27
22
  spellCheck?: (boolean | "true" | "false") | undefined;
23
+ style?: React.CSSProperties | undefined;
28
24
  tabIndex?: number | undefined;
25
+ title?: string | undefined;
29
26
  translate?: "yes" | "no" | undefined;
30
27
  radioGroup?: string | undefined;
31
28
  role?: React.AriaRole | undefined;
@@ -51,7 +48,7 @@ export declare const Search: React.ForwardRefExoticComponent<{
51
48
  results?: number | undefined;
52
49
  security?: string | undefined;
53
50
  unselectable?: "on" | "off" | undefined;
54
- inputMode?: "text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
51
+ inputMode?: "search" | "text" | "none" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
55
52
  is?: string | undefined;
56
53
  'aria-activedescendant'?: string | undefined;
57
54
  'aria-atomic'?: (boolean | "true" | "false") | undefined;
@@ -263,6 +260,9 @@ export declare const Search: React.ForwardRefExoticComponent<{
263
260
  onAnimationIterationCapture?: (React.AnimationEventHandler<HTMLInputElement> & React.AnimationEventHandler<HTMLTextAreaElement>) | undefined;
264
261
  onTransitionEnd?: (React.TransitionEventHandler<HTMLInputElement> & React.TransitionEventHandler<HTMLTextAreaElement>) | undefined;
265
262
  onTransitionEndCapture?: (React.TransitionEventHandler<HTMLInputElement> & React.TransitionEventHandler<HTMLTextAreaElement>) | undefined;
263
+ form?: string | undefined;
264
+ pattern?: string | undefined;
265
+ list?: string | undefined;
266
266
  alt?: string | undefined;
267
267
  disabled?: boolean | undefined;
268
268
  formAction?: string | undefined;
@@ -11,7 +11,16 @@ var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
11
11
 
12
12
  const Input = styled__default.default(index.TextField).withConfig({ displayName: "vui--Input", componentId: "vui--je6y84" }) `flex-grow:2;margin-top:0;margin-bottom:0;`;
13
13
  const IconContainer = styled__default.default.div.withConfig({ displayName: "vui--IconContainer", componentId: "vui--113gfe8" }) `position:absolute;`;
14
- const Container = styled__default.default(BaseContainer.BaseContainer).withConfig({ displayName: "vui--Container", componentId: "vui--18q9h8i" }) `position:relative;display:flex;justify-content:flex-start;align-items:center;border-radius:0.25rem;${({ iconPosition }) => {
14
+ const Container = styled__default.default(BaseContainer.BaseContainer).withConfig({
15
+ shouldForwardProp: (prop) => !['iconPosition'].includes(prop),
16
+ }) `
17
+ position: relative;
18
+ display: flex;
19
+ justify-content: flex-start;
20
+ align-items: center;
21
+ border-radius: 0.25rem;
22
+
23
+ ${({ iconPosition }) => {
15
24
  let padding = 'padding-right: 2.5rem;';
16
25
  let position = 'right: 0.5rem;';
17
26
  if (iconPosition === 'left') {
@@ -27,7 +36,8 @@ const Container = styled__default.default(BaseContainer.BaseContainer).withConfi
27
36
  ${position}
28
37
  }
29
38
  `;
30
- }}`;
39
+ }}
40
+ `;
31
41
 
32
42
  exports.Container = Container;
33
43
  exports.IconContainer = IconContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"styled.cjs","sources":["../../../src/components/Search/styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Loader } from '../Loader';\n\nconst Input = styled(TextField)`\n flex-grow: 2;\n margin-top: 0;\n margin-bottom: 0;\n`;\n\nconst IconContainer = styled.div`\n position: absolute;\n`;\n\nconst Container = styled(BaseContainer)<{ iconPosition: 'left' | 'right' }>`\n position: relative;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n border-radius: 0.25rem;\n\n ${({ iconPosition }) => {\n let padding = 'padding-right: 2.5rem;';\n let position = 'right: 0.5rem;';\n\n if (iconPosition === 'left') {\n padding = 'padding-left: 2.5rem';\n position = 'left: 0.5rem;';\n }\n\n return `\n & ${Input} {\n ${padding}\n }\n\n & ${IconContainer} {\n ${position}\n }\n `;\n }}\n`;\n\nexport { Container, Input, IconContainer, Loader };\n"],"names":["styled","TextField","BaseContainer"],"mappings":";;;;;;;;;;;AAMA,MAAM,KAAK,GAAGA,uBAAM,CAACC,eAAS,CAAC;AAM/B,MAAM,aAAa,GAAGD,uBAAM,CAAC,GAAG;AAIhC,MAAM,SAAS,GAAGA,uBAAM,CAACE,2BAAa,CAAC,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,cAAA,EAAA,CAAA,CAAA,CAAA,mGAAA,EAOnC,CAAC,EAAE,YAAY,EAAE,KAAI;IACrB,IAAI,OAAO,GAAG,wBAAwB;IACtC,IAAI,QAAQ,GAAG,gBAAgB;IAE/B,IAAI,YAAY,KAAK,MAAM,EAAE;QAC3B,OAAO,GAAG,sBAAsB;QAChC,QAAQ,GAAG,eAAe;AAC3B,IAAA;IAED,OAAO;UACD,KAAK,CAAA;UACL,OAAO;;;UAGP,aAAa,CAAA;UACb,QAAQ;;KAEb;AACH,CAAC;;;;;;"}
1
+ {"version":3,"file":"styled.cjs","sources":["../../../src/components/Search/styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Loader } from '../Loader';\n\nconst Input = styled(TextField)`\n flex-grow: 2;\n margin-top: 0;\n margin-bottom: 0;\n`;\n\nconst IconContainer = styled.div`\n position: absolute;\n`;\n\nconst Container = styled(BaseContainer).withConfig({\n shouldForwardProp: (prop) => !['iconPosition'].includes(prop),\n})<{ iconPosition: 'left' | 'right' }>`\n position: relative;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n border-radius: 0.25rem;\n\n ${({ iconPosition }) => {\n let padding = 'padding-right: 2.5rem;';\n let position = 'right: 0.5rem;';\n\n if (iconPosition === 'left') {\n padding = 'padding-left: 2.5rem';\n position = 'left: 0.5rem;';\n }\n\n return `\n & ${Input} {\n ${padding}\n }\n\n & ${IconContainer} {\n ${position}\n }\n `;\n }}\n`;\n\nexport { Container, Input, IconContainer, Loader };\n"],"names":["styled","TextField","BaseContainer"],"mappings":";;;;;;;;;;;AAMA,MAAM,KAAK,GAAGA,uBAAM,CAACC,eAAS,CAAC;AAM/B,MAAM,aAAa,GAAGD,uBAAM,CAAC,GAAG;AAIhC,MAAM,SAAS,GAAGA,uBAAM,CAACE,2BAAa,CAAC,CAAC,UAAU,CAAC;AACjD,IAAA,iBAAiB,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC9D,CAAA,CAAC,CAAoC;;;;;;;AAOlC,EAAA,EAAA,CAAC,EAAE,YAAY,EAAE,KAAI;IACrB,IAAI,OAAO,GAAG,wBAAwB;IACtC,IAAI,QAAQ,GAAG,gBAAgB;IAE/B,IAAI,YAAY,KAAK,MAAM,EAAE;QAC3B,OAAO,GAAG,sBAAsB;QAChC,QAAQ,GAAG,eAAe;AAC3B,IAAA;IAED,OAAO;UACD,KAAK,CAAA;UACL,OAAO;;;UAGP,aAAa,CAAA;UACb,QAAQ;;KAEb;AACH,CAAC;;;;;;;"}
@@ -1,14 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { Loader } from '../Loader';
3
3
  declare const Input: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Omit<{
4
- form?: string | undefined;
5
- slot?: string | undefined;
6
- style?: import("react").CSSProperties | undefined;
7
- title?: string | undefined;
8
- pattern?: string | undefined;
9
4
  rel?: string | undefined;
10
- placeholder?: string | undefined;
11
- list?: string | undefined;
12
5
  className?: string | undefined;
13
6
  children?: import("react").ReactNode;
14
7
  defaultChecked?: boolean | undefined;
@@ -25,8 +18,12 @@ declare const Input: import("styled-components").StyledComponent<import("react")
25
18
  id?: string | undefined;
26
19
  lang?: string | undefined;
27
20
  nonce?: string | undefined;
21
+ placeholder?: string | undefined;
22
+ slot?: string | undefined;
28
23
  spellCheck?: (boolean | "true" | "false") | undefined;
24
+ style?: import("react").CSSProperties | undefined;
29
25
  tabIndex?: number | undefined;
26
+ title?: string | undefined;
30
27
  translate?: "yes" | "no" | undefined;
31
28
  radioGroup?: string | undefined;
32
29
  role?: import("react").AriaRole | undefined;
@@ -52,7 +49,7 @@ declare const Input: import("styled-components").StyledComponent<import("react")
52
49
  results?: number | undefined;
53
50
  security?: string | undefined;
54
51
  unselectable?: "on" | "off" | undefined;
55
- inputMode?: "text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
52
+ inputMode?: "search" | "text" | "none" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
56
53
  is?: string | undefined;
57
54
  'aria-activedescendant'?: string | undefined;
58
55
  'aria-atomic'?: (boolean | "true" | "false") | undefined;
@@ -264,6 +261,9 @@ declare const Input: import("styled-components").StyledComponent<import("react")
264
261
  onAnimationIterationCapture?: (import("react").AnimationEventHandler<HTMLInputElement> & import("react").AnimationEventHandler<HTMLTextAreaElement>) | undefined;
265
262
  onTransitionEnd?: (import("react").TransitionEventHandler<HTMLInputElement> & import("react").TransitionEventHandler<HTMLTextAreaElement>) | undefined;
266
263
  onTransitionEndCapture?: (import("react").TransitionEventHandler<HTMLInputElement> & import("react").TransitionEventHandler<HTMLTextAreaElement>) | undefined;
264
+ form?: string | undefined;
265
+ pattern?: string | undefined;
266
+ list?: string | undefined;
267
267
  alt?: string | undefined;
268
268
  disabled?: boolean | undefined;
269
269
  formAction?: string | undefined;
@@ -301,7 +301,7 @@ declare const Input: import("styled-components").StyledComponent<import("react")
301
301
  multiline?: boolean | undefined;
302
302
  } & import("react").RefAttributes<HTMLInputElement> & import("../../hoc/withLabels/withLabels").WithLabelsProps, "ref"> & import("react").RefAttributes<unknown>>, any, {}, never>;
303
303
  declare const IconContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
304
- declare const Container: import("styled-components").StyledComponent<"div", any, {
304
+ declare const Container: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>, any, {
305
305
  iconPosition: 'left' | 'right';
306
306
  }, never>;
307
307
  export { Container, Input, IconContainer, Loader };
@@ -5,7 +5,16 @@ import 'react';
5
5
 
6
6
  const Input = styled(TextField).withConfig({ displayName: "vui--Input", componentId: "vui--je6y84" }) `flex-grow:2;margin-top:0;margin-bottom:0;`;
7
7
  const IconContainer = styled.div.withConfig({ displayName: "vui--IconContainer", componentId: "vui--113gfe8" }) `position:absolute;`;
8
- const Container = styled(BaseContainer).withConfig({ displayName: "vui--Container", componentId: "vui--18q9h8i" }) `position:relative;display:flex;justify-content:flex-start;align-items:center;border-radius:0.25rem;${({ iconPosition }) => {
8
+ const Container = styled(BaseContainer).withConfig({
9
+ shouldForwardProp: (prop) => !['iconPosition'].includes(prop),
10
+ }) `
11
+ position: relative;
12
+ display: flex;
13
+ justify-content: flex-start;
14
+ align-items: center;
15
+ border-radius: 0.25rem;
16
+
17
+ ${({ iconPosition }) => {
9
18
  let padding = 'padding-right: 2.5rem;';
10
19
  let position = 'right: 0.5rem;';
11
20
  if (iconPosition === 'left') {
@@ -21,7 +30,8 @@ const Container = styled(BaseContainer).withConfig({ displayName: "vui--Containe
21
30
  ${position}
22
31
  }
23
32
  `;
24
- }}`;
33
+ }}
34
+ `;
25
35
 
26
36
  export { Container, IconContainer, Input };
27
37
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../src/components/Search/styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Loader } from '../Loader';\n\nconst Input = styled(TextField)`\n flex-grow: 2;\n margin-top: 0;\n margin-bottom: 0;\n`;\n\nconst IconContainer = styled.div`\n position: absolute;\n`;\n\nconst Container = styled(BaseContainer)<{ iconPosition: 'left' | 'right' }>`\n position: relative;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n border-radius: 0.25rem;\n\n ${({ iconPosition }) => {\n let padding = 'padding-right: 2.5rem;';\n let position = 'right: 0.5rem;';\n\n if (iconPosition === 'left') {\n padding = 'padding-left: 2.5rem';\n position = 'left: 0.5rem;';\n }\n\n return `\n & ${Input} {\n ${padding}\n }\n\n & ${IconContainer} {\n ${position}\n }\n `;\n }}\n`;\n\nexport { Container, Input, IconContainer, Loader };\n"],"names":[],"mappings":";;;;;AAMA,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;AAM/B,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG;AAIhC,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,cAAA,EAAA,CAAA,CAAA,CAAA,mGAAA,EAOnC,CAAC,EAAE,YAAY,EAAE,KAAI;IACrB,IAAI,OAAO,GAAG,wBAAwB;IACtC,IAAI,QAAQ,GAAG,gBAAgB;IAE/B,IAAI,YAAY,KAAK,MAAM,EAAE;QAC3B,OAAO,GAAG,sBAAsB;QAChC,QAAQ,GAAG,eAAe;AAC3B,IAAA;IAED,OAAO;UACD,KAAK,CAAA;UACL,OAAO;;;UAGP,aAAa,CAAA;UACb,QAAQ;;KAEb;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"styled.js","sources":["../../../src/components/Search/styled.ts"],"sourcesContent":["import styled from 'styled-components';\n\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Loader } from '../Loader';\n\nconst Input = styled(TextField)`\n flex-grow: 2;\n margin-top: 0;\n margin-bottom: 0;\n`;\n\nconst IconContainer = styled.div`\n position: absolute;\n`;\n\nconst Container = styled(BaseContainer).withConfig({\n shouldForwardProp: (prop) => !['iconPosition'].includes(prop),\n})<{ iconPosition: 'left' | 'right' }>`\n position: relative;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n border-radius: 0.25rem;\n\n ${({ iconPosition }) => {\n let padding = 'padding-right: 2.5rem;';\n let position = 'right: 0.5rem;';\n\n if (iconPosition === 'left') {\n padding = 'padding-left: 2.5rem';\n position = 'left: 0.5rem;';\n }\n\n return `\n & ${Input} {\n ${padding}\n }\n\n & ${IconContainer} {\n ${position}\n }\n `;\n }}\n`;\n\nexport { Container, Input, IconContainer, Loader };\n"],"names":[],"mappings":";;;;;AAMA,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;AAM/B,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG;AAIhC,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC;AACjD,IAAA,iBAAiB,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC9D,CAAA,CAAC,CAAoC;;;;;;;AAOlC,EAAA,EAAA,CAAC,EAAE,YAAY,EAAE,KAAI;IACrB,IAAI,OAAO,GAAG,wBAAwB;IACtC,IAAI,QAAQ,GAAG,gBAAgB;IAE/B,IAAI,YAAY,KAAK,MAAM,EAAE;QAC3B,OAAO,GAAG,sBAAsB;QAChC,QAAQ,GAAG,eAAe;AAC3B,IAAA;IAED,OAAO;UACD,KAAK,CAAA;UACL,OAAO;;;UAGP,aAAa,CAAA;UACb,QAAQ;;KAEb;AACH,CAAC;;;;;"}
@@ -1 +1,2 @@
1
- export declare const SegmentedControlContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
1
+ /// <reference types="react" />
2
+ export declare const SegmentedControlContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>, any, {}, never>;
@@ -1,59 +1,40 @@
1
1
  'use strict';
2
2
 
3
- var styled = require('styled-components');
4
- var Alignments = require('./Alignments.cjs');
3
+ var React = require('react');
5
4
  var index = require('../../theme/index.cjs');
5
+ var buildClassnames = require('../../utils/buildClassnames.cjs');
6
+ require('uid/secure');
7
+ var Stack_module = require('./Stack.module.scss.cjs');
6
8
 
7
9
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
8
10
 
9
- var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
11
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
10
12
 
11
13
  /**
12
14
  * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.
13
15
  * Layout component.
14
16
  */
15
- const Stack = styled__default.default.div.withConfig({ displayName: "vui--Stack", componentId: "vui--1mxdupo" }) `display:flex;${(props) => {
16
- const { direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base' } = props;
17
- let alignItems;
18
- let justifyContent;
19
- let flexDirection;
20
- let itemFlex;
21
- let marginTop = '';
22
- let marginLeft = '';
23
- if (direction === 'vertical') {
24
- alignItems = alignX && Alignments.Alignments[alignX];
25
- justifyContent = alignY && Alignments.Alignments[alignY];
26
- marginTop = index.theme.sizes[spacing];
27
- flexDirection = 'column';
28
- }
29
- else {
30
- alignItems = alignY && Alignments.Alignments[alignY];
31
- justifyContent = alignX && Alignments.Alignments[alignX];
32
- marginLeft = index.theme.sizes[spacing];
33
- flexDirection = 'row';
34
- }
35
- // These options result in 'justify-content: stretch' which doesn't exist,
36
- // so instead we set the flex of child elements
37
- if ((direction === 'vertical' && alignY === 'stretch') ||
38
- (direction === 'horizontal' && alignX === 'stretch')) {
39
- itemFlex = 1;
40
- }
41
- return `
42
- align-items: ${alignItems};
43
- justify-content: ${justifyContent};
44
- flex-direction: ${flexDirection};
45
-
46
- & > * {
47
- flex: ${itemFlex};
48
- }
49
-
50
- /* applies the margin-top/left to all components inside a stack except the first component */
51
- && > * + * {
52
- margin-top: ${marginTop};
53
- margin-left: ${marginLeft};
54
- }
55
- `;
56
- }}`;
17
+ const Stack = React__default.default.forwardRef(({ direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base', as: Element = 'div', className, children, style, ...rest }, ref) => {
18
+ const isVertical = direction === 'vertical';
19
+ const alignItemsKey = isVertical ? alignX : alignY;
20
+ const justifyContentKey = isVertical ? alignY : alignX;
21
+ const isStretch = isVertical ? alignY === 'stretch' : alignX === 'stretch';
22
+ const spacingValue = index.theme.sizes[spacing];
23
+ const spacingStyle = isVertical
24
+ ? { rowGap: spacingValue }
25
+ : { columnGap: spacingValue };
26
+ return (React__default.default.createElement(Element, { className: buildClassnames.buildClassnames([
27
+ Stack_module.base,
28
+ Stack_module[`${direction}-direction`],
29
+ Stack_module[`alignItems-${alignItemsKey}`],
30
+ Stack_module[`justifyContent-${justifyContentKey}`],
31
+ isStretch ? Stack_module['stretch-children'] : undefined,
32
+ className,
33
+ ]), style: {
34
+ ...spacingStyle,
35
+ ...style,
36
+ }, ref: ref, ...rest }, children));
37
+ });
57
38
  Stack.displayName = 'Stack';
58
39
 
59
40
  exports.Stack = Stack;
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.cjs","sources":["../../../src/components/Stack/Stack.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport { Alignments } from './Alignments';\nimport { StackProps } from './types';\n\nimport { theme } from '../../theme';\n\n/**\n * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.\n * Layout component.\n */\nexport const Stack = styled.div<StackProps>`\n display: flex;\n\n ${(props) => {\n const { direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base' } = props;\n\n let alignItems;\n let justifyContent;\n let flexDirection;\n let itemFlex;\n let marginTop = '';\n let marginLeft = '';\n\n if (direction === 'vertical') {\n alignItems = alignX && Alignments[alignX];\n justifyContent = alignY && Alignments[alignY];\n marginTop = theme.sizes[spacing];\n flexDirection = 'column';\n } else {\n alignItems = alignY && Alignments[alignY];\n justifyContent = alignX && Alignments[alignX];\n marginLeft = theme.sizes[spacing];\n flexDirection = 'row';\n }\n\n // These options result in 'justify-content: stretch' which doesn't exist,\n // so instead we set the flex of child elements\n if (\n (direction === 'vertical' && alignY === 'stretch') ||\n (direction === 'horizontal' && alignX === 'stretch')\n ) {\n itemFlex = 1;\n }\n\n return `\n align-items: ${alignItems};\n justify-content: ${justifyContent};\n flex-direction: ${flexDirection};\n\n & > * {\n flex: ${itemFlex};\n }\n\n /* applies the margin-top/left to all components inside a stack except the first component */\n && > * + * {\n margin-top: ${marginTop};\n margin-left: ${marginLeft};\n }\n `;\n }}\n`;\n\nStack.displayName = 'Stack';\n"],"names":["styled","Alignments","theme"],"mappings":";;;;;;;;;;AAOA;;;AAGG;AACI,MAAM,KAAK,GAAGA,uBAAM,CAAC,GAAG,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,YAAA,EAAA,WAAA,EAAA,cAAA,EAAA,CAAA,CAAA,CAAA,aAAA,EAG3B,CAAC,KAAK,KAAI;AACV,IAAA,MAAM,EAAE,SAAS,GAAG,UAAU,EAAE,MAAM,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,KAAK;AAE9F,IAAA,IAAI,UAAU;AACd,IAAA,IAAI,cAAc;AAClB,IAAA,IAAI,aAAa;AACjB,IAAA,IAAI,QAAQ;IACZ,IAAI,SAAS,GAAG,EAAE;IAClB,IAAI,UAAU,GAAG,EAAE;IAEnB,IAAI,SAAS,KAAK,UAAU,EAAE;AAC5B,QAAA,UAAU,GAAG,MAAM,IAAIC,qBAAU,CAAC,MAAM,CAAC;AACzC,QAAA,cAAc,GAAG,MAAM,IAAIA,qBAAU,CAAC,MAAM,CAAC;AAC7C,QAAA,SAAS,GAAGC,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QAChC,aAAa,GAAG,QAAQ;AACzB,IAAA;AAAM,SAAA;AACL,QAAA,UAAU,GAAG,MAAM,IAAID,qBAAU,CAAC,MAAM,CAAC;AACzC,QAAA,cAAc,GAAG,MAAM,IAAIA,qBAAU,CAAC,MAAM,CAAC;AAC7C,QAAA,UAAU,GAAGC,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QACjC,aAAa,GAAG,KAAK;AACtB,IAAA;;;IAID,IACE,CAAC,SAAS,KAAK,UAAU,IAAI,MAAM,KAAK,SAAS;SAChD,SAAS,KAAK,YAAY,IAAI,MAAM,KAAK,SAAS,CAAC,EACpD;QACA,QAAQ,GAAG,CAAC;AACb,IAAA;IAED,OAAO;qBACU,UAAU,CAAA;yBACN,cAAc,CAAA;wBACf,aAAa,CAAA;;;gBAGrB,QAAQ,CAAA;;;;;sBAKF,SAAS,CAAA;uBACR,UAAU,CAAA;;KAE5B;AACH,CAAC;AAGH,KAAK,CAAC,WAAW,GAAG,OAAO;;;;"}
1
+ {"version":3,"file":"Stack.cjs","sources":["../../../src/components/Stack/Stack.tsx"],"sourcesContent":["import React from 'react';\n\nimport { StackProps } from './types';\n\nimport { theme } from '../../theme';\nimport { buildClassnames } from '../../utils';\nimport styles from './Stack.module.scss';\n\n/**\n * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.\n * Layout component.\n */\nexport const Stack = React.forwardRef<HTMLElement, StackProps>(\n (\n {\n direction = 'vertical',\n alignX = 'start',\n alignY = 'start',\n spacing = 'base',\n as: Element = 'div',\n className,\n children,\n style,\n ...rest\n },\n ref,\n ) => {\n const isVertical = direction === 'vertical';\n\n const alignItemsKey = isVertical ? alignX : alignY;\n const justifyContentKey = isVertical ? alignY : alignX;\n\n const isStretch = isVertical ? alignY === 'stretch' : alignX === 'stretch';\n\n const spacingValue = theme.sizes[spacing];\n\n const spacingStyle = isVertical\n ? { rowGap: spacingValue }\n : { columnGap: spacingValue };\n\n return (\n <Element\n className={buildClassnames([\n styles.base,\n styles[`${direction}-direction`],\n styles[`alignItems-${alignItemsKey}`],\n styles[`justifyContent-${justifyContentKey}`],\n isStretch ? styles['stretch-children'] : undefined,\n className,\n ])}\n style={{\n ...spacingStyle,\n ...style,\n }}\n ref={ref}\n {...rest}\n >\n {children}\n </Element>\n );\n },\n);\n\nStack.displayName = 'Stack';\n"],"names":["React","theme","buildClassnames","styles"],"mappings":";;;;;;;;;;;;AAQA;;;AAGG;MACU,KAAK,GAAGA,sBAAK,CAAC,UAAU,CACnC,CACE,EACE,SAAS,GAAG,UAAU,EACtB,MAAM,GAAG,OAAO,EAChB,MAAM,GAAG,OAAO,EAChB,OAAO,GAAG,MAAM,EAChB,EAAE,EAAE,OAAO,GAAG,KAAK,EACnB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,GAAG,IAAI,EACR,EACD,GAAG,KACD;AACF,IAAA,MAAM,UAAU,GAAG,SAAS,KAAK,UAAU;IAE3C,MAAM,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM;IAClD,MAAM,iBAAiB,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM;AAEtD,IAAA,MAAM,SAAS,GAAG,UAAU,GAAG,MAAM,KAAK,SAAS,GAAG,MAAM,KAAK,SAAS;IAE1E,MAAM,YAAY,GAAGC,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAEzC,MAAM,YAAY,GAAG;AACnB,UAAE,EAAE,MAAM,EAAE,YAAY;AACxB,UAAE,EAAE,SAAS,EAAE,YAAY,EAAE;AAE/B,IAAA,QACED,sBAAA,CAAA,aAAA,CAAC,OAAO,IACN,SAAS,EAAEE,+BAAe,CAAC;AACzB,YAAAC,YAAM,CAAC,IAAI;AACX,YAAAA,YAAM,CAAC,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY,CAAC;AAChC,YAAAA,YAAM,CAAC,CAAA,WAAA,EAAc,aAAa,CAAA,CAAE,CAAC;AACrC,YAAAA,YAAM,CAAC,CAAA,eAAA,EAAkB,iBAAiB,CAAA,CAAE,CAAC;YAC7C,SAAS,GAAGA,YAAM,CAAC,kBAAkB,CAAC,GAAG,SAAS;YAClD,SAAS;SACV,CAAC,EACF,KAAK,EAAE;AACL,YAAA,GAAG,YAAY;AACf,YAAA,GAAG,KAAK;SACT,EACD,GAAG,EAAE,GAAG,EAAA,GACJ,IAAI,EAAA,EAEP,QAAQ,CACD;AAEd,CAAC;AAGH,KAAK,CAAC,WAAW,GAAG,OAAO;;;;"}
@@ -1,6 +1,13 @@
1
- import { StackProps } from './types';
1
+ import React from 'react';
2
2
  /**
3
3
  * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.
4
4
  * Layout component.
5
5
  */
6
- export declare const Stack: import("styled-components").StyledComponent<"div", any, StackProps, never>;
6
+ export declare const Stack: React.ForwardRefExoticComponent<{
7
+ children: React.ReactNode;
8
+ direction?: "horizontal" | "vertical" | undefined;
9
+ alignX?: "start" | "end" | "center" | "stretch" | "between" | "around" | undefined;
10
+ alignY?: "start" | "end" | "center" | "stretch" | "between" | "around" | undefined;
11
+ spacing?: keyof import("./types").SizeScale | undefined;
12
+ as?: React.ElementType<any> | undefined;
13
+ } & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLElement>>;
@@ -1,53 +1,34 @@
1
- import styled from 'styled-components';
2
- import { Alignments } from './Alignments.js';
1
+ import React__default from 'react';
3
2
  import { theme } from '../../theme/index.js';
3
+ import { buildClassnames } from '../../utils/buildClassnames.js';
4
+ import 'uid/secure';
5
+ import styles from './Stack.module.scss.js';
4
6
 
5
7
  /**
6
8
  * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.
7
9
  * Layout component.
8
10
  */
9
- const Stack = styled.div.withConfig({ displayName: "vui--Stack", componentId: "vui--1mxdupo" }) `display:flex;${(props) => {
10
- const { direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base' } = props;
11
- let alignItems;
12
- let justifyContent;
13
- let flexDirection;
14
- let itemFlex;
15
- let marginTop = '';
16
- let marginLeft = '';
17
- if (direction === 'vertical') {
18
- alignItems = alignX && Alignments[alignX];
19
- justifyContent = alignY && Alignments[alignY];
20
- marginTop = theme.sizes[spacing];
21
- flexDirection = 'column';
22
- }
23
- else {
24
- alignItems = alignY && Alignments[alignY];
25
- justifyContent = alignX && Alignments[alignX];
26
- marginLeft = theme.sizes[spacing];
27
- flexDirection = 'row';
28
- }
29
- // These options result in 'justify-content: stretch' which doesn't exist,
30
- // so instead we set the flex of child elements
31
- if ((direction === 'vertical' && alignY === 'stretch') ||
32
- (direction === 'horizontal' && alignX === 'stretch')) {
33
- itemFlex = 1;
34
- }
35
- return `
36
- align-items: ${alignItems};
37
- justify-content: ${justifyContent};
38
- flex-direction: ${flexDirection};
39
-
40
- & > * {
41
- flex: ${itemFlex};
42
- }
43
-
44
- /* applies the margin-top/left to all components inside a stack except the first component */
45
- && > * + * {
46
- margin-top: ${marginTop};
47
- margin-left: ${marginLeft};
48
- }
49
- `;
50
- }}`;
11
+ const Stack = React__default.forwardRef(({ direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base', as: Element = 'div', className, children, style, ...rest }, ref) => {
12
+ const isVertical = direction === 'vertical';
13
+ const alignItemsKey = isVertical ? alignX : alignY;
14
+ const justifyContentKey = isVertical ? alignY : alignX;
15
+ const isStretch = isVertical ? alignY === 'stretch' : alignX === 'stretch';
16
+ const spacingValue = theme.sizes[spacing];
17
+ const spacingStyle = isVertical
18
+ ? { rowGap: spacingValue }
19
+ : { columnGap: spacingValue };
20
+ return (React__default.createElement(Element, { className: buildClassnames([
21
+ styles.base,
22
+ styles[`${direction}-direction`],
23
+ styles[`alignItems-${alignItemsKey}`],
24
+ styles[`justifyContent-${justifyContentKey}`],
25
+ isStretch ? styles['stretch-children'] : undefined,
26
+ className,
27
+ ]), style: {
28
+ ...spacingStyle,
29
+ ...style,
30
+ }, ref: ref, ...rest }, children));
31
+ });
51
32
  Stack.displayName = 'Stack';
52
33
 
53
34
  export { Stack };
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.js","sources":["../../../src/components/Stack/Stack.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport { Alignments } from './Alignments';\nimport { StackProps } from './types';\n\nimport { theme } from '../../theme';\n\n/**\n * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.\n * Layout component.\n */\nexport const Stack = styled.div<StackProps>`\n display: flex;\n\n ${(props) => {\n const { direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base' } = props;\n\n let alignItems;\n let justifyContent;\n let flexDirection;\n let itemFlex;\n let marginTop = '';\n let marginLeft = '';\n\n if (direction === 'vertical') {\n alignItems = alignX && Alignments[alignX];\n justifyContent = alignY && Alignments[alignY];\n marginTop = theme.sizes[spacing];\n flexDirection = 'column';\n } else {\n alignItems = alignY && Alignments[alignY];\n justifyContent = alignX && Alignments[alignX];\n marginLeft = theme.sizes[spacing];\n flexDirection = 'row';\n }\n\n // These options result in 'justify-content: stretch' which doesn't exist,\n // so instead we set the flex of child elements\n if (\n (direction === 'vertical' && alignY === 'stretch') ||\n (direction === 'horizontal' && alignX === 'stretch')\n ) {\n itemFlex = 1;\n }\n\n return `\n align-items: ${alignItems};\n justify-content: ${justifyContent};\n flex-direction: ${flexDirection};\n\n & > * {\n flex: ${itemFlex};\n }\n\n /* applies the margin-top/left to all components inside a stack except the first component */\n && > * + * {\n margin-top: ${marginTop};\n margin-left: ${marginLeft};\n }\n `;\n }}\n`;\n\nStack.displayName = 'Stack';\n"],"names":[],"mappings":";;;;AAOA;;;AAGG;AACI,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,YAAA,EAAA,WAAA,EAAA,cAAA,EAAA,CAAA,CAAA,CAAA,aAAA,EAG3B,CAAC,KAAK,KAAI;AACV,IAAA,MAAM,EAAE,SAAS,GAAG,UAAU,EAAE,MAAM,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,KAAK;AAE9F,IAAA,IAAI,UAAU;AACd,IAAA,IAAI,cAAc;AAClB,IAAA,IAAI,aAAa;AACjB,IAAA,IAAI,QAAQ;IACZ,IAAI,SAAS,GAAG,EAAE;IAClB,IAAI,UAAU,GAAG,EAAE;IAEnB,IAAI,SAAS,KAAK,UAAU,EAAE;AAC5B,QAAA,UAAU,GAAG,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;AACzC,QAAA,cAAc,GAAG,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;AAC7C,QAAA,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QAChC,aAAa,GAAG,QAAQ;AACzB,IAAA;AAAM,SAAA;AACL,QAAA,UAAU,GAAG,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;AACzC,QAAA,cAAc,GAAG,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;AAC7C,QAAA,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QACjC,aAAa,GAAG,KAAK;AACtB,IAAA;;;IAID,IACE,CAAC,SAAS,KAAK,UAAU,IAAI,MAAM,KAAK,SAAS;SAChD,SAAS,KAAK,YAAY,IAAI,MAAM,KAAK,SAAS,CAAC,EACpD;QACA,QAAQ,GAAG,CAAC;AACb,IAAA;IAED,OAAO;qBACU,UAAU,CAAA;yBACN,cAAc,CAAA;wBACf,aAAa,CAAA;;;gBAGrB,QAAQ,CAAA;;;;;sBAKF,SAAS,CAAA;uBACR,UAAU,CAAA;;KAE5B;AACH,CAAC;AAGH,KAAK,CAAC,WAAW,GAAG,OAAO;;;;"}
1
+ {"version":3,"file":"Stack.js","sources":["../../../src/components/Stack/Stack.tsx"],"sourcesContent":["import React from 'react';\n\nimport { StackProps } from './types';\n\nimport { theme } from '../../theme';\nimport { buildClassnames } from '../../utils';\nimport styles from './Stack.module.scss';\n\n/**\n * @deprecated Replaced by {@link FlexCol} and {@link FlexRow}.\n * Layout component.\n */\nexport const Stack = React.forwardRef<HTMLElement, StackProps>(\n (\n {\n direction = 'vertical',\n alignX = 'start',\n alignY = 'start',\n spacing = 'base',\n as: Element = 'div',\n className,\n children,\n style,\n ...rest\n },\n ref,\n ) => {\n const isVertical = direction === 'vertical';\n\n const alignItemsKey = isVertical ? alignX : alignY;\n const justifyContentKey = isVertical ? alignY : alignX;\n\n const isStretch = isVertical ? alignY === 'stretch' : alignX === 'stretch';\n\n const spacingValue = theme.sizes[spacing];\n\n const spacingStyle = isVertical\n ? { rowGap: spacingValue }\n : { columnGap: spacingValue };\n\n return (\n <Element\n className={buildClassnames([\n styles.base,\n styles[`${direction}-direction`],\n styles[`alignItems-${alignItemsKey}`],\n styles[`justifyContent-${justifyContentKey}`],\n isStretch ? styles['stretch-children'] : undefined,\n className,\n ])}\n style={{\n ...spacingStyle,\n ...style,\n }}\n ref={ref}\n {...rest}\n >\n {children}\n </Element>\n );\n },\n);\n\nStack.displayName = 'Stack';\n"],"names":["React"],"mappings":";;;;;;AAQA;;;AAGG;MACU,KAAK,GAAGA,cAAK,CAAC,UAAU,CACnC,CACE,EACE,SAAS,GAAG,UAAU,EACtB,MAAM,GAAG,OAAO,EAChB,MAAM,GAAG,OAAO,EAChB,OAAO,GAAG,MAAM,EAChB,EAAE,EAAE,OAAO,GAAG,KAAK,EACnB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,GAAG,IAAI,EACR,EACD,GAAG,KACD;AACF,IAAA,MAAM,UAAU,GAAG,SAAS,KAAK,UAAU;IAE3C,MAAM,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM;IAClD,MAAM,iBAAiB,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM;AAEtD,IAAA,MAAM,SAAS,GAAG,UAAU,GAAG,MAAM,KAAK,SAAS,GAAG,MAAM,KAAK,SAAS;IAE1E,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAEzC,MAAM,YAAY,GAAG;AACnB,UAAE,EAAE,MAAM,EAAE,YAAY;AACxB,UAAE,EAAE,SAAS,EAAE,YAAY,EAAE;AAE/B,IAAA,QACEA,cAAA,CAAA,aAAA,CAAC,OAAO,IACN,SAAS,EAAE,eAAe,CAAC;AACzB,YAAA,MAAM,CAAC,IAAI;AACX,YAAA,MAAM,CAAC,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY,CAAC;AAChC,YAAA,MAAM,CAAC,CAAA,WAAA,EAAc,aAAa,CAAA,CAAE,CAAC;AACrC,YAAA,MAAM,CAAC,CAAA,eAAA,EAAkB,iBAAiB,CAAA,CAAE,CAAC;YAC7C,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC,GAAG,SAAS;YAClD,SAAS;SACV,CAAC,EACF,KAAK,EAAE;AACL,YAAA,GAAG,YAAY;AACf,YAAA,GAAG,KAAK;SACT,EACD,GAAG,EAAE,GAAG,EAAA,GACJ,IAAI,EAAA,EAEP,QAAQ,CACD;AAEd,CAAC;AAGH,KAAK,CAAC,WAAW,GAAG,OAAO;;;;"}