@doist/reactist 12.0.4 → 13.0.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 (167) hide show
  1. package/README.md +2 -0
  2. package/dist/reactist.cjs.development.js +153 -651
  3. package/dist/reactist.cjs.development.js.map +1 -1
  4. package/dist/reactist.cjs.production.min.js +1 -1
  5. package/dist/reactist.cjs.production.min.js.map +1 -1
  6. package/es/components/color-picker/color-picker.js +4 -4
  7. package/es/components/color-picker/color-picker.js.map +1 -1
  8. package/es/components/{dropdown → deprecated-dropdown}/dropdown.js +0 -0
  9. package/es/components/deprecated-dropdown/dropdown.js.map +1 -0
  10. package/es/components/{dropdown → deprecated-dropdown}/index.js +0 -0
  11. package/es/components/{checkbox → deprecated-dropdown}/index.js.map +0 -0
  12. package/es/components/{input → deprecated-input}/index.js +0 -0
  13. package/es/components/{dropdown → deprecated-input}/index.js.map +0 -0
  14. package/es/components/{input → deprecated-input}/input.js +0 -0
  15. package/es/components/deprecated-input/input.js.map +1 -0
  16. package/es/components/{select → deprecated-select}/index.js +0 -0
  17. package/es/components/{input → deprecated-select}/index.js.map +0 -0
  18. package/es/components/{select → deprecated-select}/select.js +0 -0
  19. package/es/components/deprecated-select/select.js.map +1 -0
  20. package/es/index.js +3 -7
  21. package/es/index.js.map +1 -1
  22. package/es/new-components/base-button/base-button.js +12 -9
  23. package/es/new-components/base-button/base-button.js.map +1 -1
  24. package/es/new-components/base-button/base-button.module.css.js +1 -1
  25. package/es/new-components/base-field/base-field.js +60 -16
  26. package/es/new-components/base-field/base-field.js.map +1 -1
  27. package/es/new-components/base-field/base-field.module.css.js +1 -1
  28. package/es/new-components/password-field/password-field.js +8 -2
  29. package/es/new-components/password-field/password-field.js.map +1 -1
  30. package/es/new-components/password-field/password-field.module.css.js +1 -1
  31. package/es/new-components/select-field/select-field.js +6 -2
  32. package/es/new-components/select-field/select-field.js.map +1 -1
  33. package/es/new-components/select-field/select-field.module.css.js +1 -1
  34. package/es/new-components/text/text.module.css.js +1 -1
  35. package/es/new-components/text-area/text-area.js +10 -3
  36. package/es/new-components/text-area/text-area.js.map +1 -1
  37. package/es/new-components/text-area/text-area.module.css.js +1 -1
  38. package/es/new-components/text-field/text-field.js +8 -2
  39. package/es/new-components/text-field/text-field.js.map +1 -1
  40. package/es/new-components/text-field/text-field.module.css.js +1 -1
  41. package/lib/components/color-picker/color-picker.js +1 -1
  42. package/lib/components/color-picker/color-picker.js.map +1 -1
  43. package/lib/components/{dropdown → deprecated-dropdown}/dropdown.d.ts +0 -0
  44. package/lib/components/{dropdown → deprecated-dropdown}/dropdown.js +0 -0
  45. package/lib/components/deprecated-dropdown/dropdown.js.map +1 -0
  46. package/lib/components/{dropdown → deprecated-dropdown}/dropdown.test.d.ts +0 -0
  47. package/lib/components/{dropdown → deprecated-dropdown}/index.d.ts +0 -0
  48. package/lib/components/{dropdown → deprecated-dropdown}/index.js +0 -0
  49. package/lib/components/{checkbox → deprecated-dropdown}/index.js.map +0 -0
  50. package/lib/components/{input → deprecated-input}/index.d.ts +0 -0
  51. package/lib/components/{input → deprecated-input}/index.js +0 -0
  52. package/lib/components/{dropdown → deprecated-input}/index.js.map +0 -0
  53. package/lib/components/{input → deprecated-input}/input.d.ts +0 -0
  54. package/lib/components/{input → deprecated-input}/input.js +0 -0
  55. package/lib/components/deprecated-input/input.js.map +1 -0
  56. package/lib/components/{input → deprecated-input}/input.test.d.ts +0 -0
  57. package/lib/components/{select → deprecated-select}/index.d.ts +0 -0
  58. package/lib/components/{select → deprecated-select}/index.js +0 -0
  59. package/lib/components/{input → deprecated-select}/index.js.map +0 -0
  60. package/lib/components/{select → deprecated-select}/select.d.ts +0 -0
  61. package/lib/components/{select → deprecated-select}/select.js +0 -0
  62. package/lib/components/deprecated-select/select.js.map +1 -0
  63. package/lib/components/{select → deprecated-select}/select.test.d.ts +0 -0
  64. package/lib/index.d.ts +3 -7
  65. package/lib/index.js +1 -1
  66. package/lib/new-components/base-button/base-button.d.ts +7 -4
  67. package/lib/new-components/base-button/base-button.js +1 -1
  68. package/lib/new-components/base-button/base-button.js.map +1 -1
  69. package/lib/new-components/base-button/base-button.module.css.js +1 -1
  70. package/lib/new-components/base-field/base-field.d.ts +66 -9
  71. package/lib/new-components/base-field/base-field.js +1 -1
  72. package/lib/new-components/base-field/base-field.js.map +1 -1
  73. package/lib/new-components/base-field/base-field.module.css.js +1 -1
  74. package/lib/new-components/password-field/password-field.d.ts +3 -2
  75. package/lib/new-components/password-field/password-field.js +1 -1
  76. package/lib/new-components/password-field/password-field.js.map +1 -1
  77. package/lib/new-components/password-field/password-field.module.css.js +1 -1
  78. package/lib/new-components/select-field/select-field.d.ts +1 -1
  79. package/lib/new-components/select-field/select-field.js +1 -1
  80. package/lib/new-components/select-field/select-field.js.map +1 -1
  81. package/lib/new-components/select-field/select-field.module.css.js +1 -1
  82. package/lib/new-components/switch-field/switch-field.d.ts +1 -1
  83. package/lib/new-components/text/text.module.css.js +1 -1
  84. package/lib/new-components/text-area/text-area.d.ts +3 -3
  85. package/lib/new-components/text-area/text-area.js +1 -1
  86. package/lib/new-components/text-area/text-area.js.map +1 -1
  87. package/lib/new-components/text-area/text-area.module.css.js +1 -1
  88. package/lib/new-components/text-field/text-field.d.ts +3 -2
  89. package/lib/new-components/text-field/text-field.js +1 -1
  90. package/lib/new-components/text-field/text-field.js.map +1 -1
  91. package/lib/new-components/text-field/text-field.module.css.js +1 -1
  92. package/package.json +1 -1
  93. package/styles/alert.css +1 -1
  94. package/styles/base-button.css +1 -1
  95. package/styles/base-button.module.css.css +1 -1
  96. package/styles/base-field.css +4 -3
  97. package/styles/base-field.module.css.css +1 -1
  98. package/styles/checkbox-field.css +1 -1
  99. package/styles/modal.css +1 -1
  100. package/styles/password-field.css +5 -4
  101. package/styles/password-field.module.css.css +1 -1
  102. package/styles/reactist.css +11 -15
  103. package/styles/select-field.css +4 -3
  104. package/styles/select-field.module.css.css +1 -1
  105. package/styles/switch-field.css +3 -2
  106. package/styles/text-area.css +4 -3
  107. package/styles/text-area.module.css.css +1 -1
  108. package/styles/text-field.css +4 -3
  109. package/styles/text-field.module.css.css +1 -1
  110. package/styles/text.css +1 -1
  111. package/styles/text.module.css.css +1 -1
  112. package/es/components/checkbox/checkbox.js +0 -24
  113. package/es/components/checkbox/checkbox.js.map +0 -1
  114. package/es/components/checkbox/index.js +0 -6
  115. package/es/components/deprecated-loading/deprecated-loading.js +0 -39
  116. package/es/components/deprecated-loading/deprecated-loading.js.map +0 -1
  117. package/es/components/deprecated-modal/deprecated-modal.js +0 -207
  118. package/es/components/deprecated-modal/deprecated-modal.js.map +0 -1
  119. package/es/components/deprecated-modal/index.js +0 -11
  120. package/es/components/deprecated-modal/index.js.map +0 -1
  121. package/es/components/dropdown/dropdown.js.map +0 -1
  122. package/es/components/input/input.js.map +0 -1
  123. package/es/components/popover/index.js +0 -6
  124. package/es/components/popover/index.js.map +0 -1
  125. package/es/components/popover/popover.js +0 -206
  126. package/es/components/popover/popover.js.map +0 -1
  127. package/es/components/popover/positioning-utils.js +0 -104
  128. package/es/components/popover/positioning-utils.js.map +0 -1
  129. package/es/components/select/index.js.map +0 -1
  130. package/es/components/select/select.js.map +0 -1
  131. package/lib/components/checkbox/checkbox.d.ts +0 -13
  132. package/lib/components/checkbox/checkbox.js +0 -2
  133. package/lib/components/checkbox/checkbox.js.map +0 -1
  134. package/lib/components/checkbox/checkbox.test.d.ts +0 -1
  135. package/lib/components/checkbox/index.d.ts +0 -2
  136. package/lib/components/checkbox/index.js +0 -2
  137. package/lib/components/deprecated-loading/deprecated-loading.d.ts +0 -19
  138. package/lib/components/deprecated-loading/deprecated-loading.js +0 -2
  139. package/lib/components/deprecated-loading/deprecated-loading.js.map +0 -1
  140. package/lib/components/deprecated-loading/deprecated-loading.test.d.ts +0 -1
  141. package/lib/components/deprecated-loading/index.d.ts +0 -1
  142. package/lib/components/deprecated-modal/deprecated-modal.d.ts +0 -88
  143. package/lib/components/deprecated-modal/deprecated-modal.js +0 -2
  144. package/lib/components/deprecated-modal/deprecated-modal.js.map +0 -1
  145. package/lib/components/deprecated-modal/deprecated-modal.test.d.ts +0 -1
  146. package/lib/components/deprecated-modal/index.d.ts +0 -10
  147. package/lib/components/deprecated-modal/index.js +0 -2
  148. package/lib/components/deprecated-modal/index.js.map +0 -1
  149. package/lib/components/dropdown/dropdown.js.map +0 -1
  150. package/lib/components/input/input.js.map +0 -1
  151. package/lib/components/popover/index.d.ts +0 -2
  152. package/lib/components/popover/index.js +0 -2
  153. package/lib/components/popover/index.js.map +0 -1
  154. package/lib/components/popover/popover.d.ts +0 -54
  155. package/lib/components/popover/popover.js +0 -2
  156. package/lib/components/popover/popover.js.map +0 -1
  157. package/lib/components/popover/popover.test.d.ts +0 -1
  158. package/lib/components/popover/positioning-utils.d.ts +0 -19
  159. package/lib/components/popover/positioning-utils.js +0 -2
  160. package/lib/components/popover/positioning-utils.js.map +0 -1
  161. package/lib/components/popover/positioning-utils.test.d.ts +0 -1
  162. package/lib/components/select/index.js.map +0 -1
  163. package/lib/components/select/select.js.map +0 -1
  164. package/styles/checkbox.css +0 -1
  165. package/styles/deprecated-loading.css +0 -1
  166. package/styles/deprecated-modal.css +0 -1
  167. package/styles/popover.css +0 -1
@@ -579,9 +579,9 @@ function Spinner({
579
579
  })));
580
580
  }
581
581
 
582
- var modules_b9569bce = {"baseButton":"_7a2031d6","label":"_09c23660","align-start":"dd82f17a","align-center":"_8a9315ae","align-end":"_6acb4219","size-small":"_1e48abcb","size-normal":"_949f7858","size-large":"_34ac3da9","disabled":"_7e5800ce","iconButton":"_1bdc5d38","startIcon":"_270d7bdf","endIcon":"_471c6e23","variant-primary":"a878a9a4","variant-secondary":"_81c213d2","variant-tertiary":"_12f96f70","variant-quaternary":"_8c546508","tone-destructive":"_441a7e3a"};
582
+ var modules_b9569bce = {"baseButton":"a8af2163","label":"bbdb467b","shape-rounded":"ca02fc07","size-small":"_45ffe137","size-normal":"_352995bd","size-large":"_3991076f","disabled":"f82232b7","iconButton":"ef4c88db","startIcon":"a08c25c7","endIcon":"_2f6adc11","variant-primary":"_3d1243b2","variant-secondary":"_16b6b062","variant-tertiary":"cffaea5e","variant-quaternary":"_98cd5c3f","tone-destructive":"_99cb1c4d"};
583
583
 
584
- const _excluded$7 = ["as", "variant", "tone", "size", "disabled", "loading", "tooltip", "tooltipGapSize", "onClick", "exceptionallySetClassName", "children", "startIcon", "endIcon", "icon", "width", "align"];
584
+ const _excluded$7 = ["as", "variant", "tone", "size", "shape", "disabled", "loading", "tooltip", "onClick", "exceptionallySetClassName", "children", "startIcon", "endIcon", "icon", "width", "align"];
585
585
 
586
586
  function preventDefault(event) {
587
587
  event.preventDefault();
@@ -601,10 +601,10 @@ const BaseButton = /*#__PURE__*/polymorphicComponent(function BaseButton(_ref, r
601
601
  variant,
602
602
  tone = 'normal',
603
603
  size = 'normal',
604
+ shape = 'normal',
604
605
  disabled = false,
605
606
  loading = false,
606
607
  tooltip,
607
- tooltipGapSize,
608
608
  onClick,
609
609
  exceptionallySetClassName,
610
610
  children,
@@ -612,7 +612,7 @@ const BaseButton = /*#__PURE__*/polymorphicComponent(function BaseButton(_ref, r
612
612
  endIcon,
613
613
  icon,
614
614
  width = 'auto',
615
- align
615
+ align = 'center'
616
616
  } = _ref,
617
617
  props = _objectWithoutProperties(_ref, _excluded$7);
618
618
 
@@ -623,23 +623,26 @@ const BaseButton = /*#__PURE__*/polymorphicComponent(function BaseButton(_ref, r
623
623
  "aria-disabled": isDisabled,
624
624
  onClick: isDisabled ? preventDefault : onClick,
625
625
  width: icon ? undefined : width,
626
- className: [exceptionallySetClassName, modules_b9569bce.baseButton, modules_b9569bce["variant-" + variant], modules_b9569bce["tone-" + tone], modules_b9569bce["size-" + size], width !== 'auto' && icon == null && align != null ? modules_b9569bce["align-" + align] : null, icon ? modules_b9569bce.iconButton : null, disabled ? modules_b9569bce.disabled : null]
626
+ className: [exceptionallySetClassName, modules_b9569bce.baseButton, modules_b9569bce["variant-" + variant], modules_b9569bce["tone-" + tone], modules_b9569bce["size-" + size], shape === 'rounded' ? modules_b9569bce['shape-rounded'] : null, icon ? modules_b9569bce.iconButton : null, disabled ? modules_b9569bce.disabled : null]
627
627
  }), icon ? loading && /*#__PURE__*/React.createElement(Spinner, null) || icon : /*#__PURE__*/React.createElement(React.Fragment, null, startIcon ? /*#__PURE__*/React.createElement(Box, {
628
628
  display: "flex",
629
629
  className: modules_b9569bce.startIcon,
630
630
  "aria-hidden": true
631
- }, loading && !endIcon ? /*#__PURE__*/React.createElement(Spinner, null) : startIcon) : null, children ? /*#__PURE__*/React.createElement("span", {
632
- className: modules_b9569bce.label
631
+ }, loading && !endIcon ? /*#__PURE__*/React.createElement(Spinner, null) : startIcon) : null, children ? /*#__PURE__*/React.createElement(Box, {
632
+ as: "span",
633
+ className: modules_b9569bce.label,
634
+ overflow: "hidden",
635
+ width: width === 'full' ? 'full' : undefined,
636
+ textAlign: width === 'auto' ? 'center' : align
633
637
  }, children) : null, endIcon || loading && !startIcon ? /*#__PURE__*/React.createElement(Box, {
634
638
  display: "flex",
635
639
  className: modules_b9569bce.endIcon,
636
640
  "aria-hidden": true
637
641
  }, loading ? /*#__PURE__*/React.createElement(Spinner, null) : endIcon) : null)); // If it's an icon-only button, make sure it uses the aria-label as tooltip if no tooltip was provided
638
642
 
639
- const tooltipContent = icon ? tooltip != null ? tooltip : props['aria-label'] : tooltip;
643
+ const tooltipContent = icon && tooltip === undefined ? props['aria-label'] : tooltip;
640
644
  return tooltipContent ? /*#__PURE__*/React.createElement(Tooltip, {
641
- content: tooltipContent,
642
- gapSize: tooltipGapSize
645
+ content: tooltipContent
643
646
  }, buttonElement) : buttonElement;
644
647
  });
645
648
 
@@ -886,7 +889,7 @@ const Heading = /*#__PURE__*/React.forwardRef(function Heading(_ref, ref) {
886
889
  }), children);
887
890
  });
888
891
 
889
- var modules_a9637dd3 = {"text":"_2282cb83","size-caption":"_087a8179","size-copy":"a4423c2a","size-subtitle":"_03365a63","weight-semibold":"_5213e4ab","weight-bold":"_3d58c8f2","tone-secondary":"_892a359a","tone-danger":"f9cb5d8a","tone-positive":"fcedb234","lineClampMultipleLines":"_765949c1","lineClamp-1":"c3e4800e","lineClamp-2":"b25b652b","lineClamp-3":"bb13d214","lineClamp-4":"_6db1928e","lineClamp-5":"e9944c1d"};
892
+ var modules_a9637dd3 = {"text":"a83bd4e0","size-caption":"_266d6623","size-copy":"a8d37c6e","size-subtitle":"_39f4eb1f","weight-semibold":"_7be5c531","weight-bold":"e214ff2e","tone-secondary":"_6a3e5ade","tone-danger":"_8f5b5f2b","tone-positive":"_9ae47ae4","lineClampMultipleLines":"_969f18f7","lineClamp-1":"_2f303ac3","lineClamp-2":"d3e04245","lineClamp-3":"_33411704","lineClamp-4":"bfc32640","lineClamp-5":"f813c82f"};
890
893
 
891
894
  const _excluded$c = ["as", "size", "weight", "tone", "align", "children", "lineClamp", "exceptionallySetClassName"];
892
895
  const Text = /*#__PURE__*/polymorphicComponent(function Text(_ref, ref) {
@@ -1116,7 +1119,7 @@ function useId(providedId) {
1116
1119
  return ref.current;
1117
1120
  }
1118
1121
 
1119
- var modules_540a88ff = {"container":"ed7d894c","primaryLabel":"_22213081","secondaryLabel":"be8637dd","auxiliaryLabel":"_72b46ad5"};
1122
+ var modules_540a88ff = {"container":"_2e189908","auxiliaryLabel":"_83051e0a","bordered":"fd20ef50","error":"d1a17d92","primaryLabel":"_75e0afa0","secondaryLabel":"d04a867d","messageIcon":"_77b2107e"};
1120
1123
 
1121
1124
  function FieldHint(props) {
1122
1125
  return /*#__PURE__*/React.createElement(Text, _objectSpread2({
@@ -1126,11 +1129,52 @@ function FieldHint(props) {
1126
1129
  }, props));
1127
1130
  }
1128
1131
 
1132
+ function MessageIcon(props) {
1133
+ return /*#__PURE__*/React.createElement("svg", _objectSpread2({
1134
+ width: "16",
1135
+ height: "16",
1136
+ viewBox: "0 0 16 16",
1137
+ fill: "none",
1138
+ xmlns: "http://www.w3.org/2000/svg"
1139
+ }, props), /*#__PURE__*/React.createElement("path", {
1140
+ fillRule: "evenodd",
1141
+ clipRule: "evenodd",
1142
+ d: "M8 2.5C4.96243 2.5 2.5 4.96243 2.5 8C2.5 11.0376 4.96243 13.5 8 13.5C11.0376 13.5 13.5 11.0376 13.5 8C13.5 4.96243 11.0376 2.5 8 2.5ZM1.5 8C1.5 4.41015 4.41015 1.5 8 1.5C11.5899 1.5 14.5 4.41015 14.5 8C14.5 11.5899 11.5899 14.5 8 14.5C4.41015 14.5 1.5 11.5899 1.5 8ZM8.66667 10.3333C8.66667 10.7015 8.36819 11 8 11C7.63181 11 7.33333 10.7015 7.33333 10.3333C7.33333 9.96514 7.63181 9.66667 8 9.66667C8.36819 9.66667 8.66667 9.96514 8.66667 10.3333ZM8.65766 5.65766C8.65766 5.29445 8.36322 5 8 5C7.99087 5.00008 7.98631 5.00013 7.98175 5.00025C7.97719 5.00038 7.97263 5.00059 7.96352 5.00101C7.60086 5.02116 7.3232 5.33149 7.34335 5.69415L7.50077 8.52774C7.53575 9.15742 8.46425 9.15742 8.49923 8.52774L8.65665 5.69415C8.65707 5.68503 8.65728 5.68047 8.65741 5.67591C8.65754 5.67135 8.65758 5.66679 8.65766 5.65766Z",
1143
+ fill: "currentColor"
1144
+ }));
1145
+ }
1146
+
1147
+ function FieldMessage({
1148
+ id,
1149
+ children,
1150
+ tone
1151
+ }) {
1152
+ const textTone = tone === 'error' ? 'danger' : tone === 'success' ? 'positive' : 'normal';
1153
+ return /*#__PURE__*/React.createElement(Text, {
1154
+ as: "p",
1155
+ tone: textTone,
1156
+ size: "copy",
1157
+ id: id
1158
+ }, /*#__PURE__*/React.createElement(Box, {
1159
+ as: "span",
1160
+ marginRight: "xsmall",
1161
+ display: "inlineFlex",
1162
+ className: modules_540a88ff.messageIcon
1163
+ }, tone === 'loading' ? /*#__PURE__*/React.createElement(Spinner, {
1164
+ size: 16
1165
+ }) : /*#__PURE__*/React.createElement(MessageIcon, {
1166
+ "aria-hidden": true
1167
+ })), children);
1168
+ }
1169
+
1129
1170
  function BaseField({
1171
+ variant = 'default',
1130
1172
  label,
1131
1173
  secondaryLabel,
1132
1174
  auxiliaryLabel,
1133
1175
  hint,
1176
+ message,
1177
+ tone = 'neutral',
1134
1178
  className,
1135
1179
  children,
1136
1180
  maxWidth,
@@ -1140,21 +1184,26 @@ function BaseField({
1140
1184
  }) {
1141
1185
  const id = useId(originalId);
1142
1186
  const hintId = useId();
1143
- const ariaDescribedBy = originalAriaDescribedBy != null ? originalAriaDescribedBy : hint ? hintId : undefined;
1187
+ const messageId = useId();
1188
+ const ariaDescribedBy = originalAriaDescribedBy != null ? originalAriaDescribedBy : [message ? messageId : null, hintId].filter(Boolean).join(' ');
1189
+ const childrenProps = {
1190
+ id,
1191
+ 'aria-describedby': ariaDescribedBy,
1192
+ 'aria-invalid': tone === 'error' ? true : undefined
1193
+ };
1144
1194
  return /*#__PURE__*/React.createElement(Stack, {
1145
- space: "small"
1146
- }, /*#__PURE__*/React.createElement(Box, {
1147
- className: [className, modules_540a88ff.container],
1148
- maxWidth: maxWidth,
1195
+ space: "small",
1149
1196
  hidden: hidden
1197
+ }, /*#__PURE__*/React.createElement(Box, {
1198
+ className: [className, modules_540a88ff.container, tone === 'error' ? modules_540a88ff.error : null, variant === 'bordered' ? modules_540a88ff.bordered : null],
1199
+ maxWidth: maxWidth
1150
1200
  }, /*#__PURE__*/React.createElement(Box, {
1151
1201
  as: "span",
1152
1202
  display: "flex",
1153
1203
  justifyContent: "spaceBetween",
1154
- alignItems: "flexEnd",
1155
- paddingBottom: "small"
1204
+ alignItems: "flexEnd"
1156
1205
  }, /*#__PURE__*/React.createElement(Text, {
1157
- size: "body",
1206
+ size: variant === 'bordered' ? 'caption' : 'body',
1158
1207
  as: "label",
1159
1208
  htmlFor: id
1160
1209
  }, label ? /*#__PURE__*/React.createElement("span", {
@@ -1164,13 +1213,10 @@ function BaseField({
1164
1213
  }, "\u00A0(", secondaryLabel, ")") : null), auxiliaryLabel ? /*#__PURE__*/React.createElement(Box, {
1165
1214
  className: modules_540a88ff.auxiliaryLabel,
1166
1215
  paddingLeft: "small"
1167
- }, auxiliaryLabel) : null), children(ariaDescribedBy ? {
1168
- id,
1169
- 'aria-describedby': ariaDescribedBy
1170
- } : {
1171
- id
1172
- })), hint ? /*#__PURE__*/React.createElement(FieldHint, {
1173
- hidden: hidden,
1216
+ }, auxiliaryLabel) : null), children(childrenProps)), message ? /*#__PURE__*/React.createElement(FieldMessage, {
1217
+ id: messageId,
1218
+ tone: tone
1219
+ }, message) : null, hint ? /*#__PURE__*/React.createElement(FieldHint, {
1174
1220
  id: hintId
1175
1221
  }, hint) : null);
1176
1222
  }
@@ -1218,17 +1264,20 @@ function PasswordHiddenIcon(props) {
1218
1264
  })));
1219
1265
  }
1220
1266
 
1221
- var modules_3f03ead6 = {"inputWrapper":"_460d581b"};
1267
+ var modules_3f03ead6 = {"inputWrapper":"_66b448b3"};
1222
1268
 
1223
- var modules_aaf25250 = {"inputWrapper":"dd9ffeab"};
1269
+ var modules_aaf25250 = {"inputWrapper":"_9d172ece","bordered":"c59d0239","error":"_7e63ee20"};
1224
1270
 
1225
- const _excluded$h = ["label", "secondaryLabel", "auxiliaryLabel", "hint", "maxWidth", "togglePasswordLabel", "hidden", "aria-describedby"];
1271
+ const _excluded$h = ["variant", "label", "secondaryLabel", "auxiliaryLabel", "hint", "message", "tone", "maxWidth", "togglePasswordLabel", "hidden", "aria-describedby"];
1226
1272
  const PasswordField = /*#__PURE__*/React.forwardRef(function PasswordField(_ref, ref) {
1227
1273
  let {
1274
+ variant = 'default',
1228
1275
  label,
1229
1276
  secondaryLabel,
1230
1277
  auxiliaryLabel,
1231
1278
  hint,
1279
+ message,
1280
+ tone,
1232
1281
  maxWidth,
1233
1282
  togglePasswordLabel = 'Toggle password visibility',
1234
1283
  hidden,
@@ -1249,18 +1298,21 @@ const PasswordField = /*#__PURE__*/React.forwardRef(function PasswordField(_ref,
1249
1298
  }
1250
1299
 
1251
1300
  return /*#__PURE__*/React.createElement(BaseField, {
1301
+ variant: variant,
1252
1302
  id: id,
1253
1303
  label: label,
1254
1304
  secondaryLabel: secondaryLabel,
1255
1305
  auxiliaryLabel: auxiliaryLabel,
1256
1306
  hint: hint,
1307
+ message: message,
1308
+ tone: tone,
1257
1309
  maxWidth: maxWidth,
1258
1310
  hidden: hidden,
1259
1311
  "aria-describedby": ariaDescribedBy
1260
1312
  }, extraProps => /*#__PURE__*/React.createElement(Box, {
1261
1313
  display: "flex",
1262
1314
  alignItems: "center",
1263
- className: [modules_3f03ead6.inputWrapper, modules_aaf25250.inputWrapper]
1315
+ className: [modules_3f03ead6.inputWrapper, modules_aaf25250.inputWrapper, tone === 'error' ? modules_aaf25250.error : null, variant === 'bordered' ? modules_aaf25250.bordered : null]
1264
1316
  }, /*#__PURE__*/React.createElement("input", _objectSpread2(_objectSpread2(_objectSpread2({}, props), extraProps), {}, {
1265
1317
  ref: inputRef,
1266
1318
  type: isPasswordVisible ? 'text' : 'password'
@@ -1278,9 +1330,9 @@ const PasswordField = /*#__PURE__*/React.forwardRef(function PasswordField(_ref,
1278
1330
  })))));
1279
1331
  });
1280
1332
 
1281
- var modules_1fa9b208 = {"selectWrapper":"_828e09c5"};
1333
+ var modules_1fa9b208 = {"selectWrapper":"_07e75293","error":"f147bcea"};
1282
1334
 
1283
- const _excluded$i = ["id", "label", "secondaryLabel", "auxiliaryLabel", "hint", "maxWidth", "children", "hidden", "aria-describedby"];
1335
+ const _excluded$i = ["id", "label", "secondaryLabel", "auxiliaryLabel", "hint", "message", "tone", "maxWidth", "children", "hidden", "aria-describedby"];
1284
1336
  const SelectField = /*#__PURE__*/React.forwardRef(function SelectField(_ref, ref) {
1285
1337
  let {
1286
1338
  id,
@@ -1288,6 +1340,8 @@ const SelectField = /*#__PURE__*/React.forwardRef(function SelectField(_ref, ref
1288
1340
  secondaryLabel,
1289
1341
  auxiliaryLabel,
1290
1342
  hint,
1343
+ message,
1344
+ tone,
1291
1345
  maxWidth,
1292
1346
  children,
1293
1347
  hidden,
@@ -1301,11 +1355,13 @@ const SelectField = /*#__PURE__*/React.forwardRef(function SelectField(_ref, ref
1301
1355
  secondaryLabel: secondaryLabel,
1302
1356
  auxiliaryLabel: auxiliaryLabel,
1303
1357
  hint: hint,
1358
+ message: message,
1359
+ tone: tone,
1304
1360
  maxWidth: maxWidth,
1305
1361
  hidden: hidden,
1306
1362
  "aria-describedby": ariaDescribedBy
1307
1363
  }, extraProps => /*#__PURE__*/React.createElement(Box, {
1308
- className: modules_1fa9b208.selectWrapper
1364
+ className: [modules_1fa9b208.selectWrapper, tone === 'error' ? modules_1fa9b208.error : null]
1309
1365
  }, /*#__PURE__*/React.createElement("select", _objectSpread2(_objectSpread2(_objectSpread2({}, props), extraProps), {}, {
1310
1366
  ref: ref
1311
1367
  }), children), /*#__PURE__*/React.createElement(SelectChevron, {
@@ -1401,42 +1457,52 @@ const SwitchField = /*#__PURE__*/React.forwardRef(function SwitchField(_ref, ref
1401
1457
  }, hint) : null);
1402
1458
  });
1403
1459
 
1404
- var modules_2728c236 = {"container":"_5a579f96"};
1460
+ var modules_2728c236 = {"container":"d6ec37c5","bordered":"a60d6043","error":"bef49c61"};
1405
1461
 
1406
- const _excluded$k = ["id", "label", "secondaryLabel", "auxiliaryLabel", "hint", "maxWidth"];
1462
+ const _excluded$k = ["variant", "id", "label", "secondaryLabel", "auxiliaryLabel", "hint", "message", "tone", "maxWidth"];
1407
1463
 
1408
1464
  function TextArea(_ref) {
1409
1465
  let {
1466
+ variant = 'default',
1410
1467
  id,
1411
1468
  label,
1412
1469
  secondaryLabel,
1413
1470
  auxiliaryLabel,
1414
1471
  hint,
1472
+ message,
1473
+ tone,
1415
1474
  maxWidth
1416
1475
  } = _ref,
1417
1476
  props = _objectWithoutProperties(_ref, _excluded$k);
1418
1477
 
1419
1478
  return /*#__PURE__*/React.createElement(BaseField, {
1479
+ variant: variant,
1420
1480
  id: id,
1421
1481
  label: label,
1422
1482
  secondaryLabel: secondaryLabel,
1423
1483
  auxiliaryLabel: auxiliaryLabel,
1424
1484
  hint: hint,
1425
- className: modules_2728c236.container,
1485
+ message: message,
1486
+ tone: tone,
1487
+ className: [modules_2728c236.container, tone === 'error' ? modules_2728c236.error : null, variant === 'bordered' ? modules_2728c236.bordered : null],
1426
1488
  maxWidth: maxWidth
1427
1489
  }, extraProps => /*#__PURE__*/React.createElement(Box, {
1428
- width: "full"
1490
+ width: "full",
1491
+ display: "flex"
1429
1492
  }, /*#__PURE__*/React.createElement("textarea", _objectSpread2(_objectSpread2({}, props), extraProps))));
1430
1493
  }
1431
1494
 
1432
- const _excluded$l = ["id", "label", "secondaryLabel", "auxiliaryLabel", "hint", "type", "maxWidth", "hidden", "aria-describedby"];
1495
+ const _excluded$l = ["variant", "id", "label", "secondaryLabel", "auxiliaryLabel", "hint", "message", "tone", "type", "maxWidth", "hidden", "aria-describedby"];
1433
1496
  const TextField = /*#__PURE__*/React.forwardRef(function TextField(_ref, ref) {
1434
1497
  let {
1498
+ variant = 'default',
1435
1499
  id,
1436
1500
  label,
1437
1501
  secondaryLabel,
1438
1502
  auxiliaryLabel,
1439
1503
  hint,
1504
+ message,
1505
+ tone,
1440
1506
  type = 'text',
1441
1507
  maxWidth,
1442
1508
  hidden,
@@ -1445,16 +1511,19 @@ const TextField = /*#__PURE__*/React.forwardRef(function TextField(_ref, ref) {
1445
1511
  props = _objectWithoutProperties(_ref, _excluded$l);
1446
1512
 
1447
1513
  return /*#__PURE__*/React.createElement(BaseField, {
1514
+ variant: variant,
1448
1515
  id: id,
1449
1516
  label: label,
1450
1517
  secondaryLabel: secondaryLabel,
1451
1518
  auxiliaryLabel: auxiliaryLabel,
1452
1519
  hint: hint,
1520
+ message: message,
1521
+ tone: tone,
1453
1522
  maxWidth: maxWidth,
1454
1523
  hidden: hidden,
1455
1524
  "aria-describedby": ariaDescribedBy
1456
1525
  }, extraProps => /*#__PURE__*/React.createElement(Box, {
1457
- className: modules_aaf25250.inputWrapper
1526
+ className: [modules_aaf25250.inputWrapper, tone === 'error' ? modules_aaf25250.error : null, variant === 'bordered' ? modules_aaf25250.bordered : null]
1458
1527
  }, /*#__PURE__*/React.createElement("input", _objectSpread2(_objectSpread2(_objectSpread2({}, props), extraProps), {}, {
1459
1528
  type: type,
1460
1529
  ref: ref
@@ -1901,26 +1970,6 @@ function Avatar(_ref) {
1901
1970
 
1902
1971
  Avatar.displayName = 'Avatar';
1903
1972
 
1904
- function Checkbox({
1905
- label,
1906
- disabled,
1907
- checked = false,
1908
- onChange
1909
- }) {
1910
- return /*#__PURE__*/React__default.createElement("label", {
1911
- className: "reactist_checkbox"
1912
- }, /*#__PURE__*/React__default.createElement("input", {
1913
- className: "reactist_checkbox--input",
1914
- value: label,
1915
- checked: checked,
1916
- disabled: disabled,
1917
- onChange: disabled || !onChange ? undefined : event => onChange(event.target.checked),
1918
- type: "checkbox"
1919
- }), label);
1920
- }
1921
-
1922
- Checkbox.displayName = 'Checkbox';
1923
-
1924
1973
  const _excluded$p = ["type", "variant", "size", "loading", "disabled", "tooltip", "onClick", "children"];
1925
1974
  /**
1926
1975
  * @deprecated
@@ -2237,15 +2286,6 @@ function ColorItem({
2237
2286
 
2238
2287
  ColorItem.displayName = 'ColorItem';
2239
2288
 
2240
- const Input = /*#__PURE__*/React__default.forwardRef((props, ref) => {
2241
- const className = classNames('reactist_input', props.className);
2242
- return /*#__PURE__*/React__default.createElement("input", _objectSpread2(_objectSpread2({}, props), {}, {
2243
- className: className,
2244
- ref: ref
2245
- }));
2246
- });
2247
- Input.displayName = 'Input';
2248
-
2249
2289
  const _excluded$r = ["children", "className", "translateKey", "isMac"];
2250
2290
  // Support for setting up how to translate modifiers globally.
2251
2291
  //
@@ -2524,308 +2564,6 @@ function KeyCapturer(props) {
2524
2564
  }, composingEventHandlers));
2525
2565
  }
2526
2566
 
2527
- const hasEnoughSpace = (windowDimensions, elementDimensions, wrapperDimensions, wrapperPosition, position, gap = 0) => {
2528
- const {
2529
- height: windowHeight,
2530
- width: windowWidth
2531
- } = windowDimensions;
2532
- const {
2533
- height: elementHeight,
2534
- width: elementWidth
2535
- } = elementDimensions;
2536
- const {
2537
- height: wrapperHeight,
2538
- width: wrapperWidth
2539
- } = wrapperDimensions;
2540
- const {
2541
- x: wrapperX,
2542
- y: wrapperY
2543
- } = wrapperPosition;
2544
-
2545
- const verticalPosition = _calculateVerticalPosition(wrapperPosition, wrapperDimensions, elementDimensions);
2546
-
2547
- const horizontalPosition = _calculateHorizontalPosition(wrapperPosition, wrapperDimensions, elementDimensions);
2548
-
2549
- const canPlaceVertically = verticalPosition >= 0 && verticalPosition + elementWidth <= windowWidth;
2550
- const canPlaceHorizontally = horizontalPosition >= 0 && horizontalPosition + elementHeight <= windowHeight;
2551
-
2552
- if (position === 'top') {
2553
- return canPlaceVertically && wrapperY - elementHeight - gap >= 0;
2554
- } else if (position === 'right') {
2555
- return canPlaceHorizontally && wrapperX + wrapperWidth + elementWidth + gap <= windowWidth;
2556
- } else if (position === 'left') {
2557
- return canPlaceHorizontally && wrapperX - elementWidth - gap >= 0;
2558
- } else if (position === 'bottom') {
2559
- return canPlaceVertically && wrapperY + wrapperHeight + elementHeight + gap <= windowHeight;
2560
- }
2561
-
2562
- return false;
2563
- };
2564
-
2565
- function _calculateVerticalPosition(wrapperPosition, wrapperDimensions, elementDimensions) {
2566
- return wrapperPosition.x + (wrapperDimensions.width - elementDimensions.width) / 2;
2567
- }
2568
-
2569
- function _calculateHorizontalPosition(wrapperPosition, wrapperDimensions, elementDimensions) {
2570
- return wrapperPosition.y + (wrapperDimensions.height - elementDimensions.height) / 2;
2571
- }
2572
-
2573
- const calculateTopCenterPosition = (wrapperDimensions, wrapperPosition, elementDimensions, gap = 0) => {
2574
- const x = _calculateVerticalPosition(wrapperPosition, wrapperDimensions, elementDimensions);
2575
-
2576
- const y = wrapperPosition.y - elementDimensions.height - gap;
2577
- return {
2578
- x,
2579
- y
2580
- };
2581
- };
2582
-
2583
- const calculateBottomCenterPosition = (wrapperDimensions, wrapperPosition, elementDimensions, gap = 0) => {
2584
- const x = _calculateVerticalPosition(wrapperPosition, wrapperDimensions, elementDimensions);
2585
-
2586
- const y = wrapperPosition.y + wrapperDimensions.height + gap;
2587
- return {
2588
- x,
2589
- y
2590
- };
2591
- };
2592
-
2593
- const calculateRightCenterPosition = (wrapperDimensions, wrapperPosition, elementDimensions, gap = 0) => {
2594
- const x = wrapperPosition.x + wrapperDimensions.width + gap;
2595
-
2596
- const y = _calculateHorizontalPosition(wrapperPosition, wrapperDimensions, elementDimensions);
2597
-
2598
- return {
2599
- x,
2600
- y
2601
- };
2602
- };
2603
-
2604
- const calculateLeftCenterPosition = (wrapperDimensions, wrapperPosition, elementDimensions, gap = 0) => {
2605
- const x = wrapperPosition.x - elementDimensions.width - gap;
2606
-
2607
- const y = _calculateHorizontalPosition(wrapperPosition, wrapperDimensions, elementDimensions);
2608
-
2609
- return {
2610
- x,
2611
- y
2612
- };
2613
- };
2614
-
2615
- const calculatePosition = (position, wrapperDimensions, wrapperPosition, elementDimensions, gap = 0) => {
2616
- if (position === 'top') {
2617
- return calculateTopCenterPosition(wrapperDimensions, wrapperPosition, elementDimensions, gap);
2618
- } else if (position === 'right') {
2619
- return calculateRightCenterPosition(wrapperDimensions, wrapperPosition, elementDimensions, gap);
2620
- } else if (position === 'bottom') {
2621
- return calculateBottomCenterPosition(wrapperDimensions, wrapperPosition, elementDimensions, gap);
2622
- } else if (position === 'left') {
2623
- return calculateLeftCenterPosition(wrapperDimensions, wrapperPosition, elementDimensions, gap);
2624
- }
2625
-
2626
- return wrapperPosition;
2627
- };
2628
-
2629
- class Popover extends React__default.Component {
2630
- constructor(...args) {
2631
- super(...args);
2632
- this.popover = void 0;
2633
- this.wrapper = void 0;
2634
-
2635
- this._updatePopoverPosition = () => {
2636
- const {
2637
- position,
2638
- allowVaguePositioning,
2639
- gapSize
2640
- } = this.props;
2641
- const wrapperRect = this.wrapper.getBoundingClientRect();
2642
- const popoverRect = this.popover.getBoundingClientRect(); // Instead of using the documentElement find the nearest absolutely positioned element
2643
-
2644
- const documentEl = document.documentElement;
2645
- let node = this.wrapper;
2646
- let foundParent = false;
2647
-
2648
- while (!foundParent) {
2649
- const styles = getComputedStyle(node);
2650
- const position = styles.getPropertyValue('position');
2651
-
2652
- if (position === 'absolute' || node === documentEl || !node.parentElement) {
2653
- foundParent = true;
2654
- } else {
2655
- node = node.parentElement;
2656
- }
2657
- }
2658
-
2659
- const nodeRect = node.getBoundingClientRect();
2660
- const windowDimensions = {
2661
- height: nodeRect.height,
2662
- width: nodeRect.width
2663
- };
2664
- const popoverDimensions = {
2665
- height: popoverRect.height,
2666
- width: popoverRect.width
2667
- };
2668
- const wrapperDimensions = {
2669
- height: wrapperRect.height,
2670
- width: wrapperRect.width
2671
- };
2672
- const wrapperPositionRelative = {
2673
- x: wrapperRect.left - nodeRect.left,
2674
- y: wrapperRect.top - nodeRect.top
2675
- };
2676
- const wrapperPositionAbsolute = {
2677
- x: wrapperRect.left,
2678
- y: wrapperRect.top
2679
- };
2680
- const positionsToTry = position === 'auto' ? ['top', 'right', 'bottom', 'left', 'top'] : position === 'vertical' ? ['top', 'bottom'] : position === 'horizontal' ? ['left', 'right'] : [position];
2681
-
2682
- for (let index = 0; index < positionsToTry.length; index++) {
2683
- const currentPosition = positionsToTry[index];
2684
- const enoughSpaceAtPosition = currentPosition != null ? hasEnoughSpace(windowDimensions, popoverDimensions, wrapperDimensions, wrapperPositionRelative, currentPosition, gapSize) : false;
2685
-
2686
- if (enoughSpaceAtPosition || index === positionsToTry.length - 1) {
2687
- const popoverPosition = currentPosition != null ? calculatePosition(currentPosition, wrapperDimensions, wrapperPositionAbsolute, popoverDimensions, gapSize) : wrapperPositionAbsolute;
2688
- this.popover.style.top = popoverPosition.y + "px";
2689
- this.popover.style.left = popoverPosition.x + "px";
2690
- /**
2691
- * Correct placement if vague positioning is allowed.
2692
- * When it's not allowed we "cut off" popovers and display them
2693
- * out of the viewport to maintain their centered position.
2694
- */
2695
-
2696
- if (allowVaguePositioning) {
2697
- // correct horizontally
2698
- if (popoverPosition.x < 0) {
2699
- this.popover.style.left = 2 * gapSize + "px";
2700
- } // correct vertically
2701
-
2702
-
2703
- if (popoverPosition.y + popoverDimensions.height > windowDimensions.height) {
2704
- this.popover.style.top = windowDimensions.height - popoverDimensions.height - 2 * gapSize + "px";
2705
- }
2706
- }
2707
-
2708
- if (currentPosition !== position) {
2709
- this.popover.className = this._getClassNameForPosition(currentPosition);
2710
- }
2711
-
2712
- break;
2713
- }
2714
- }
2715
- };
2716
-
2717
- this._getClassNameForPosition = position => {
2718
- const {
2719
- visible,
2720
- withArrow,
2721
- arrowClassName
2722
- } = this.props;
2723
- const className = classNames('reactist_popover', {
2724
- visible
2725
- });
2726
-
2727
- if (visible && withArrow) {
2728
- return classNames(className, arrowClassName, {
2729
- arrow_top: position === 'bottom',
2730
- arrow_right: position === 'left',
2731
- arrow_bottom: position === 'auto' || position === 'top',
2732
- arrow_left: position === 'right'
2733
- });
2734
- }
2735
-
2736
- return className;
2737
- };
2738
-
2739
- this._updatePopoverRef = popover => {
2740
- this.popover = popover;
2741
-
2742
- if (typeof this.props.popoverRef === 'function') {
2743
- this.props.popoverRef(popover);
2744
- }
2745
- };
2746
-
2747
- this._updateWrapperRef = wrapper => {
2748
- this.wrapper = wrapper;
2749
-
2750
- if (typeof this.props.wrapperRef === 'function') {
2751
- this.props.wrapperRef(wrapper);
2752
- }
2753
- };
2754
- }
2755
-
2756
- componentDidMount() {
2757
- if (this.props.visible) {
2758
- this._updatePopoverPosition();
2759
- }
2760
- }
2761
-
2762
- componentDidUpdate(prevProps) {
2763
- if (this.wrapper && this.props.visible) {
2764
- const positionChanged = prevProps.position !== this.props.position;
2765
- const vaguePositioningChanged = prevProps.allowVaguePositioning !== this.props.allowVaguePositioning;
2766
- const visibilityChanged = prevProps.visible !== this.props.visible;
2767
- const arrowChanged = prevProps.withArrow !== this.props.withArrow;
2768
- const gapSizeChanged = prevProps.gapSize !== this.props.gapSize;
2769
- const contentChanged = prevProps.content !== this.props.content;
2770
-
2771
- if (positionChanged || vaguePositioningChanged || visibilityChanged || arrowChanged || gapSizeChanged || contentChanged) {
2772
- this._updatePopoverPosition();
2773
- }
2774
- }
2775
- }
2776
-
2777
- render() {
2778
- const {
2779
- position,
2780
- wrapperClassName,
2781
- popoverClassName,
2782
- onMouseEnter,
2783
- onMouseLeave,
2784
- onClick,
2785
- trigger,
2786
- content
2787
- } = this.props;
2788
- const popoverClass = position ? this._getClassNameForPosition(position) : '';
2789
- const popoverContentClass = classNames('reactist_popover__content', popoverClassName);
2790
- const wrapperClass = classNames('reactist_popover__wrapper', wrapperClassName);
2791
- const triggerElement = React__default.Children.only(trigger);
2792
-
2793
- function handleTriggerClick(event) {
2794
- // @ts-expect-error This is temporary while we revisit the Popover interface
2795
- if (onClick) onClick(event); // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
2796
-
2797
- if (typeof triggerElement.props.onClick === 'function') {
2798
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-call
2799
- triggerElement.props.onClick(event);
2800
- }
2801
- }
2802
-
2803
- return /*#__PURE__*/React__default.createElement("span", {
2804
- className: wrapperClass,
2805
- onMouseEnter: onMouseEnter,
2806
- onMouseLeave: onMouseLeave,
2807
- ref: this._updateWrapperRef
2808
- }, /*#__PURE__*/React__default.cloneElement(triggerElement, {
2809
- onClick: handleTriggerClick
2810
- }), /*#__PURE__*/React__default.createElement("span", {
2811
- className: popoverClass,
2812
- ref: this._updatePopoverRef
2813
- }, this.props.visible ? /*#__PURE__*/React__default.createElement("span", {
2814
- className: popoverContentClass
2815
- }, typeof content === 'function' ? content() : content) : null));
2816
- }
2817
-
2818
- }
2819
-
2820
- Popover.displayName = void 0;
2821
- Popover.defaultProps = void 0;
2822
- Popover.displayName = 'Popover';
2823
- Popover.defaultProps = {
2824
- position: 'auto',
2825
- gapSize: 5 // default size of the arrow (see `tooltip.less`)
2826
-
2827
- };
2828
-
2829
2567
  function ProgressBar({
2830
2568
  fillPercentage = 0,
2831
2569
  className,
@@ -2849,41 +2587,6 @@ function ProgressBar({
2849
2587
 
2850
2588
  ProgressBar.displayName = 'ProgressBar';
2851
2589
 
2852
- const _excluded$s = ["value", "options", "onChange", "disabled", "className", "defaultValue"];
2853
-
2854
- function Select(_ref) {
2855
- let {
2856
- value,
2857
- options = [],
2858
- onChange,
2859
- disabled = true,
2860
- className = '',
2861
- defaultValue
2862
- } = _ref,
2863
- otherProps = _objectWithoutProperties(_ref, _excluded$s);
2864
-
2865
- const selectClassName = classNames('reactist_select', {
2866
- disabled
2867
- }, className);
2868
- return /*#__PURE__*/React__default.createElement("select", _objectSpread2({
2869
- className: selectClassName,
2870
- value: value,
2871
- onChange: event => onChange ? onChange(event.target.value) : undefined,
2872
- disabled: disabled,
2873
- defaultValue: defaultValue
2874
- }, otherProps), options == null ? void 0 : options.map(option => /*#__PURE__*/React__default.createElement("option", {
2875
- key: option.key || option.value,
2876
- value: option.value,
2877
- disabled: option.disabled
2878
- }, option.text)));
2879
- }
2880
-
2881
- Select.displayName = 'Select';
2882
- Select.defaultProps = {
2883
- options: [],
2884
- disabled: false
2885
- };
2886
-
2887
2590
  dayjs.extend(LocalizedFormat);
2888
2591
  const TimeUtils = {
2889
2592
  SHORT_FORMAT_CURRENT_YEAR: 'L',
@@ -3081,7 +2784,7 @@ const CloseIcon$1 = () => /*#__PURE__*/React__default.createElement("svg", {
3081
2784
  d: "M11.293 12L5.146 5.854a.5.5 0 1 1 .708-.708L12 11.293l6.146-6.147a.5.5 0 0 1 .708.708L12.707 12l6.147 6.146a.5.5 0 0 1-.708.708L12 12.707l-6.146 6.147a.5.5 0 0 1-.708-.708L11.293 12z"
3082
2785
  }));
3083
2786
 
3084
- const _excluded$t = ["id", "icon", "title", "subtitle", "children", "customCloseButton", "onClick", "onClose", "closeAltText", "className", "aria-live"];
2787
+ const _excluded$s = ["id", "icon", "title", "subtitle", "children", "customCloseButton", "onClick", "onClose", "closeAltText", "className", "aria-live"];
3085
2788
 
3086
2789
  function Notification(_ref) {
3087
2790
  let {
@@ -3097,7 +2800,7 @@ function Notification(_ref) {
3097
2800
  className,
3098
2801
  'aria-live': ariaLive = 'polite'
3099
2802
  } = _ref,
3100
- rest = _objectWithoutProperties(_ref, _excluded$t);
2803
+ rest = _objectWithoutProperties(_ref, _excluded$s);
3101
2804
 
3102
2805
  const titleId = title ? id + "-title" : null;
3103
2806
  const titleIdAttribute = titleId ? {
@@ -3147,7 +2850,7 @@ function Notification(_ref) {
3147
2850
  }, customCloseButton != null ? customCloseButton : /*#__PURE__*/React__default.createElement(CloseIcon$1, null)) : null);
3148
2851
  }
3149
2852
 
3150
- const _excluded$u = ["children", "onItemSelect"],
2853
+ const _excluded$t = ["children", "onItemSelect"],
3151
2854
  _excluded2$3 = ["exceptionallySetClassName"],
3152
2855
  _excluded3$2 = ["exceptionallySetClassName"],
3153
2856
  _excluded4$1 = ["value", "children", "onSelect", "hideOnSelect", "onClick", "exceptionallySetClassName", "as"],
@@ -3169,7 +2872,7 @@ function Menu(_ref) {
3169
2872
  children,
3170
2873
  onItemSelect
3171
2874
  } = _ref,
3172
- props = _objectWithoutProperties(_ref, _excluded$u);
2875
+ props = _objectWithoutProperties(_ref, _excluded$t);
3173
2876
 
3174
2877
  const state = Ariakit.useMenuState(_objectSpread2({
3175
2878
  focusLoop: true,
@@ -3345,268 +3048,69 @@ const MenuGroup = /*#__PURE__*/polymorphicComponent(function MenuGroup(_ref5, re
3345
3048
  }, label) : null, children);
3346
3049
  });
3347
3050
 
3348
- /** @deprecated */
3349
-
3350
- class Box$2 extends React__default.Component {
3351
- constructor(...args) {
3352
- super(...args);
3353
-
3354
- this._closeModal = () => {
3355
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3356
- const modalElement = document.getElementById('modal_box');
3357
- ReactDOM.unmountComponentAtNode(modalElement);
3358
- };
3359
-
3360
- this._handleKeyDown = event => {
3361
- if (event.keyCode === 27) {
3362
- // ESC
3363
- this._closeModal();
3364
-
3365
- if (event.preventDefault) event.preventDefault();
3366
- }
3367
- };
3368
-
3369
- this._handleOverlayClick = event => {
3370
- if (event.target instanceof Element && (event.target.id === 'reactist-overlay' || event.target.id === 'reactist-overlay-inner')) {
3371
- this._closeModal();
3372
- }
3373
- };
3374
- }
3375
-
3376
- componentDidMount() {
3377
- window.addEventListener('keydown', this._handleKeyDown);
3378
- }
3379
-
3380
- componentWillUnmount() {
3381
- window.removeEventListener('keydown', this._handleKeyDown);
3382
- }
3383
-
3384
- render() {
3385
- const {
3386
- large,
3387
- medium,
3388
- style,
3389
- children,
3390
- closeOnOverlayClick
3391
- } = this.props;
3392
- const className = classNames('reactist_modal_box', {
3393
- large,
3394
- medium
3395
- }, this.props.className);
3396
- return /*#__PURE__*/React__default.createElement("div", {
3397
- className: "reactist_overlay",
3398
- id: "reactist-overlay",
3399
- onClick: closeOnOverlayClick ? this._handleOverlayClick : undefined
3400
- }, /*#__PURE__*/React__default.createElement("div", {
3401
- className: "reactist_overlay_inner",
3402
- id: "reactist-overlay-inner"
3403
- }, /*#__PURE__*/React__default.createElement("div", {
3404
- style: style,
3405
- className: className
3406
- }, children)));
3407
- }
3408
-
3409
- }
3410
-
3411
- Box$2.displayName = void 0;
3412
- Box$2.defaultProps = void 0;
3413
- Box$2.displayName = 'Modal.Box';
3414
- Box$2.defaultProps = {
3415
- large: false,
3416
- closeOnOverlayClick: false
3417
- };
3418
- /** @deprecated */
3419
-
3420
- class Header extends React__default.Component {
3421
- _closeModal(event) {
3422
- event.preventDefault();
3423
-
3424
- if (typeof this.props.beforeClose === 'function') {
3425
- this.props.beforeClose();
3426
- } // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3427
-
3428
-
3429
- const modalElement = document.getElementById('modal_box');
3430
- ReactDOM.unmountComponentAtNode(modalElement);
3431
- }
3432
-
3433
- render() {
3434
- return (
3435
- /*#__PURE__*/
3436
-
3437
- /* eslint-disable jsx-a11y/anchor-is-valid */
3438
- React__default.createElement("div", {
3439
- className: "reactist_modal_box__header"
3440
- }, /*#__PURE__*/React__default.createElement("p", null, this.props.title && /*#__PURE__*/React__default.createElement("span", {
3441
- className: "title"
3442
- }, this.props.title), this.props.subtitle && /*#__PURE__*/React__default.createElement("span", {
3443
- className: "subtitle"
3444
- }, this.props.subtitle), this.props.children), /*#__PURE__*/React__default.createElement("a", {
3445
- className: "close",
3446
- onClick: this._closeModal.bind(this),
3447
- href: "#"
3448
- }, /*#__PURE__*/React__default.createElement(CloseIcon$1, null)))
3449
- /* eslint-enable jsx-a11y/anchor-is-valid */
3450
-
3451
- );
3452
- }
3453
-
3454
- }
3455
-
3456
- Header.displayName = void 0;
3457
- Header.defaultProps = void 0;
3458
- Header.displayName = 'Modal.Header';
3459
- /** @deprecated */
3460
-
3461
- class Body$1 extends React__default.Component {
3462
- _closeModal(event) {
3463
- event.preventDefault(); // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3464
-
3465
- const modalElement = document.getElementById('modal_box');
3466
- ReactDOM.unmountComponentAtNode(modalElement);
3467
- }
3468
-
3469
- render() {
3470
- const {
3471
- icon,
3472
- plain,
3473
- children,
3474
- style,
3475
- showCloseIcon
3476
- } = this.props;
3477
- const className = classNames('reactist_modal_box__body', {
3478
- plain
3479
- }, this.props.className);
3480
- return (
3481
- /*#__PURE__*/
3482
-
3483
- /* eslint-disable jsx-a11y/anchor-is-valid */
3484
- React__default.createElement("div", {
3485
- className: className,
3486
- style: style
3487
- }, showCloseIcon && /*#__PURE__*/React__default.createElement("a", {
3488
- className: "close",
3489
- onClick: this._closeModal.bind(this),
3490
- href: "#"
3491
- }, /*#__PURE__*/React__default.createElement(CloseIcon$1, null)), icon ? /*#__PURE__*/React__default.createElement("div", {
3492
- className: "dialog"
3493
- }, /*#__PURE__*/React__default.createElement("div", {
3494
- className: "reactist_icon"
3495
- }, icon), /*#__PURE__*/React__default.createElement("div", {
3496
- className: "content"
3497
- }, children)) : children)
3498
- /* eslint-enable jsx-a11y/anchor-is-valid */
3499
-
3500
- );
3501
- }
3502
-
3503
- }
3504
-
3505
- Body$1.displayName = void 0;
3506
- Body$1.defaultProps = void 0;
3507
- Body$1.displayName = 'Modal.Body';
3508
- Body$1.defaultProps = {
3509
- showCloseIcon: false
3510
- };
3511
- /** @deprecated */
3512
-
3513
- class Actions extends React__default.Component {
3514
- _onClick(onClick) {
3515
- if (onClick) {
3516
- onClick();
3517
- } // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3518
-
3051
+ const Input = /*#__PURE__*/React__default.forwardRef((props, ref) => {
3052
+ const className = classNames('reactist_input', props.className);
3053
+ return /*#__PURE__*/React__default.createElement("input", _objectSpread2(_objectSpread2({}, props), {}, {
3054
+ className: className,
3055
+ ref: ref
3056
+ }));
3057
+ });
3058
+ Input.displayName = 'Input';
3519
3059
 
3520
- const modalElement = document.getElementById('modal_box');
3521
- ReactDOM.unmountComponentAtNode(modalElement);
3522
- }
3060
+ const _excluded$u = ["value", "options", "onChange", "disabled", "className", "defaultValue"];
3523
3061
 
3524
- render() {
3525
- const children = React__default.Children.map( // see: https://github.com/microsoft/TypeScript/issues/21699
3526
- // @ts-expect-error Children cannot be typed properly yet in React
3527
- this.props.children, child => {
3528
- var _child$props;
3529
-
3530
- if (child != null && (_child$props = child.props) != null && _child$props.close) {
3531
- return /*#__PURE__*/React__default.cloneElement(child, {
3532
- onClick: () => this._onClick(child.props.onClick)
3533
- });
3534
- } else {
3535
- return child ? /*#__PURE__*/React__default.cloneElement(child) : /*#__PURE__*/React__default.createElement(React__default.Fragment, null);
3536
- }
3537
- });
3538
- return /*#__PURE__*/React__default.createElement("div", {
3539
- className: "reactist_modal_box__actions"
3540
- }, children);
3541
- }
3062
+ function Select(_ref) {
3063
+ let {
3064
+ value,
3065
+ options = [],
3066
+ onChange,
3067
+ disabled = true,
3068
+ className = '',
3069
+ defaultValue
3070
+ } = _ref,
3071
+ otherProps = _objectWithoutProperties(_ref, _excluded$u);
3542
3072
 
3073
+ const selectClassName = classNames('reactist_select', {
3074
+ disabled
3075
+ }, className);
3076
+ return /*#__PURE__*/React__default.createElement("select", _objectSpread2({
3077
+ className: selectClassName,
3078
+ value: value,
3079
+ onChange: event => onChange ? onChange(event.target.value) : undefined,
3080
+ disabled: disabled,
3081
+ defaultValue: defaultValue
3082
+ }, otherProps), options == null ? void 0 : options.map(option => /*#__PURE__*/React__default.createElement("option", {
3083
+ key: option.key || option.value,
3084
+ value: option.value,
3085
+ disabled: option.disabled
3086
+ }, option.text)));
3543
3087
  }
3544
3088
 
3545
- Actions.displayName = void 0;
3546
- Actions.displayName = 'Modal.Actions';
3547
-
3548
- var index = {
3549
- Box: Box$2,
3550
- Header,
3551
- Body: Body$1,
3552
- Actions
3089
+ Select.displayName = 'Select';
3090
+ Select.defaultProps = {
3091
+ options: [],
3092
+ disabled: false
3553
3093
  };
3554
3094
 
3555
- /** @deprecated */
3556
-
3557
- function Loading$1({
3558
- className,
3559
- spinnerColor = '#3F82EF',
3560
- bgColor = '#D9E6FB',
3561
- size = 24,
3562
- 'aria-label': ariaLabel = 'Loading'
3563
- }) {
3564
- return /*#__PURE__*/React__default.createElement("div", {
3565
- className: classNames('reactist_loading', className),
3566
- "aria-label": ariaLabel,
3567
- "aria-live": "assertive",
3568
- role: "alert"
3569
- }, /*#__PURE__*/React__default.createElement("span", {
3570
- className: "reactist_loading--spinner"
3571
- }, /*#__PURE__*/React__default.createElement("svg", {
3572
- width: size,
3573
- height: size,
3574
- viewBox: '0 0 24 24'
3575
- }, /*#__PURE__*/React__default.createElement("g", {
3576
- fill: "none",
3577
- fillRule: "nonzero"
3578
- }, /*#__PURE__*/React__default.createElement("path", {
3579
- fill: spinnerColor,
3580
- d: "M17.945 3.958A9.955 9.955 0 0 0 12 2c-2.19 0-4.217.705-5.865 1.9L5.131 2.16A11.945 11.945 0 0 1 12 0c2.59 0 4.99.82 6.95 2.217l-1.005 1.741z"
3581
- }), /*#__PURE__*/React__default.createElement("path", {
3582
- fill: bgColor,
3583
- d: "M5.13 2.16L6.136 3.9A9.987 9.987 0 0 0 2 12c0 5.523 4.477 10 10 10s10-4.477 10-10a9.986 9.986 0 0 0-4.055-8.042l1.006-1.741A11.985 11.985 0 0 1 24 12c0 6.627-5.373 12-12 12S0 18.627 0 12c0-4.073 2.029-7.671 5.13-9.84z"
3584
- })))));
3585
- }
3586
-
3587
- Loading$1.displayName = 'Loading';
3588
-
3589
3095
  exports.Alert = Alert;
3590
3096
  exports.Avatar = Avatar;
3591
3097
  exports.Box = Box;
3592
3098
  exports.Button = Button;
3593
3099
  exports.ButtonLink = ButtonLink;
3594
3100
  exports.COLORS = COLORS;
3595
- exports.Checkbox = Checkbox;
3596
3101
  exports.CheckboxField = CheckboxField;
3597
3102
  exports.ColorPicker = ColorPicker;
3598
3103
  exports.Column = Column;
3599
3104
  exports.Columns = Columns;
3600
3105
  exports.DeprecatedButton = Button$1;
3601
- exports.DeprecatedLoading = Loading$1;
3602
- exports.DeprecatedModal = index;
3106
+ exports.DeprecatedDropdown = Dropdown;
3107
+ exports.DeprecatedInput = Input;
3108
+ exports.DeprecatedSelect = Select;
3603
3109
  exports.Divider = Divider;
3604
- exports.Dropdown = Dropdown;
3605
3110
  exports.Heading = Heading;
3606
3111
  exports.Hidden = Hidden;
3607
3112
  exports.HiddenVisually = HiddenVisually;
3608
3113
  exports.Inline = Inline;
3609
- exports.Input = Input;
3610
3114
  exports.KeyCapturer = KeyCapturer;
3611
3115
  exports.KeyboardShortcut = KeyboardShortcut;
3612
3116
  exports.Loading = Loading;
@@ -3624,10 +3128,8 @@ exports.ModalHeader = ModalHeader;
3624
3128
  exports.Notice = Notice;
3625
3129
  exports.Notification = Notification;
3626
3130
  exports.PasswordField = PasswordField;
3627
- exports.Popover = Popover;
3628
3131
  exports.ProgressBar = ProgressBar;
3629
3132
  exports.SUPPORTED_KEYS = SUPPORTED_KEYS;
3630
- exports.Select = Select;
3631
3133
  exports.SelectField = SelectField;
3632
3134
  exports.Stack = Stack;
3633
3135
  exports.SubMenu = SubMenu;