@mirohq/design-system-base-input 0.4.12 → 0.5.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.
package/dist/main.js CHANGED
@@ -8,6 +8,7 @@ var designSystemUtils = require('@mirohq/design-system-utils');
8
8
  var designSystemUsePress = require('@mirohq/design-system-use-press');
9
9
  var interactions = require('@react-aria/interactions');
10
10
  var utils = require('@react-aria/utils');
11
+ var designSystemExperiments = require('@mirohq/design-system-experiments');
11
12
  var designSystemPrimitive = require('@mirohq/design-system-primitive');
12
13
  var designSystemStitches = require('@mirohq/design-system-stitches');
13
14
  var designSystemIcons = require('@mirohq/design-system-icons');
@@ -32,6 +33,12 @@ const StyledIconSlot = designSystemStitches.styled(designSystemPrimitive.Primiti
32
33
  pointerEvents: "none"
33
34
  },
34
35
  variants: {
36
+ variant: {
37
+ outline: {},
38
+ subtle: {
39
+ color: "$icon-neutrals"
40
+ }
41
+ },
35
42
  disabled: {
36
43
  true: {
37
44
  "& svg": {
@@ -83,12 +90,19 @@ const StyledBaseInput = designSystemStitches.styled("div", {
83
90
  height: "max-content",
84
91
  ...designSystemBaseTextField.textFieldStyles.variants.idle,
85
92
  variants: {
93
+ v1: {
94
+ true: designSystemBaseTextField.textFieldStyles.v1.idle
95
+ },
96
+ variant: {
97
+ outline: {},
98
+ subtle: {}
99
+ },
86
100
  hovered: {
87
101
  true: {},
88
102
  false: {}
89
103
  },
90
104
  focused: {
91
- true: designSystemBaseTextField.textFieldStyles.variants.focused,
105
+ true: {},
92
106
  false: {}
93
107
  },
94
108
  valid: {
@@ -166,20 +180,44 @@ const StyledBaseInput = designSystemStitches.styled("div", {
166
180
  ariaDisabled: false,
167
181
  css: designSystemBaseTextField.textFieldStyles.variants.valid.idle
168
182
  },
169
- /** Focus States */
170
183
  {
171
- focused: true,
184
+ readOnly: true,
185
+ v1: true,
186
+ css: designSystemBaseTextField.textFieldStyles.v1.readOnly
187
+ },
188
+ {
189
+ variant: "subtle",
190
+ valid: void 0,
191
+ hovered: false,
172
192
  readOnly: false,
193
+ disabled: false,
194
+ ariaDisabled: false,
195
+ css: {
196
+ backgroundColor: "$background-neutrals-subtle",
197
+ borderColor: "transparent"
198
+ }
199
+ },
200
+ {
201
+ v1: true,
202
+ size: "x-large",
173
203
  css: {
174
- borderColor: designSystemBaseTextField.textFieldStyles.variants.focused.borderColor
204
+ fontSize: "$200",
205
+ lineHeight: "$500"
175
206
  }
176
207
  },
208
+ /** Focus States */
209
+ {
210
+ focused: true,
211
+ v1: false,
212
+ css: designSystemBaseTextField.textFieldStyles.variants.focused
213
+ },
177
214
  {
178
215
  focused: true,
179
216
  readOnly: false,
180
217
  valid: false,
181
218
  disabled: false,
182
219
  ariaDisabled: false,
220
+ v1: false,
183
221
  css: designSystemBaseTextField.textFieldStyles.variants.invalid.focused
184
222
  },
185
223
  {
@@ -188,8 +226,32 @@ const StyledBaseInput = designSystemStitches.styled("div", {
188
226
  valid: true,
189
227
  disabled: false,
190
228
  ariaDisabled: false,
229
+ v1: false,
191
230
  css: designSystemBaseTextField.textFieldStyles.variants.valid.focused
192
231
  },
232
+ {
233
+ focused: true,
234
+ v1: true,
235
+ css: designSystemBaseTextField.textFieldStyles.v1.focused
236
+ },
237
+ {
238
+ focused: true,
239
+ readOnly: false,
240
+ valid: false,
241
+ disabled: false,
242
+ ariaDisabled: false,
243
+ v1: true,
244
+ css: designSystemBaseTextField.textFieldStyles.v1.invalid.focused
245
+ },
246
+ {
247
+ focused: true,
248
+ readOnly: false,
249
+ valid: true,
250
+ disabled: false,
251
+ ariaDisabled: false,
252
+ v1: true,
253
+ css: designSystemBaseTextField.textFieldStyles.v1.valid.focused
254
+ },
193
255
  /** Hover states */
194
256
  {
195
257
  hovered: true,
@@ -215,6 +277,17 @@ const StyledBaseInput = designSystemStitches.styled("div", {
215
277
  disabled: false,
216
278
  ariaDisabled: false,
217
279
  css: designSystemBaseTextField.textFieldStyles.variants.valid.hovered
280
+ },
281
+ {
282
+ variant: "subtle",
283
+ valid: void 0,
284
+ hovered: true,
285
+ readOnly: false,
286
+ disabled: false,
287
+ ariaDisabled: false,
288
+ css: {
289
+ backgroundColor: "$background-neutrals-subtle-hover"
290
+ }
218
291
  }
219
292
  ],
220
293
  defaultVariants: {
@@ -232,14 +305,26 @@ const StyledInput = designSystemStitches.styled(designSystemPrimitive.Primitive.
232
305
  order: 2,
233
306
  padding: "0 $50",
234
307
  height: "100%",
235
- "&::placeholder": {
236
- fontStyle: "italic"
237
- },
238
- ["&:not(".concat(disabledAndReadonlySelectors, ")::placeholder")]: designSystemBaseTextField.textFieldStyles.base.placeholder,
239
- "&:read-only": {
240
- color: designSystemBaseTextField.textFieldStyles.variants.readOnly.color
241
- },
242
- "&:disabled, &[aria-disabled=true], &[data-disabled]": designSystemBaseTextField.textFieldStyles.base.disabled
308
+ "&:disabled, &[aria-disabled=true], &[data-disabled]": designSystemBaseTextField.textFieldStyles.base.disabled,
309
+ variants: {
310
+ v1: {
311
+ true: {
312
+ ["&:not(".concat(disabledAndReadonlySelectors, ")::placeholder")]: designSystemBaseTextField.textFieldStyles.base.placeholder.v1,
313
+ "&:read-only": {
314
+ color: designSystemBaseTextField.textFieldStyles.v1.readOnly.color
315
+ }
316
+ },
317
+ false: {
318
+ "&::placeholder": {
319
+ fontStyle: "italic"
320
+ },
321
+ ["&:not(".concat(disabledAndReadonlySelectors, ")::placeholder")]: designSystemBaseTextField.textFieldStyles.base.placeholder.old,
322
+ "&:read-only": {
323
+ color: designSystemBaseTextField.textFieldStyles.variants.readOnly.color
324
+ }
325
+ }
326
+ }
327
+ }
243
328
  });
244
329
 
245
330
  const InputContext = React.createContext({});
@@ -298,7 +383,8 @@ const Input = React__default["default"].forwardRef(
298
383
  inputRef,
299
384
  required,
300
385
  readOnly,
301
- onChange
386
+ onChange,
387
+ v1
302
388
  } = useInputContext();
303
389
  const { onBlur, onFocus, ...elementProps } = designSystemUseAriaDisabled.useAriaDisabled({
304
390
  ...restProps,
@@ -322,6 +408,7 @@ const Input = React__default["default"].forwardRef(
322
408
  StyledInput,
323
409
  {
324
410
  ...elementProps,
411
+ v1,
325
412
  id,
326
413
  readOnly,
327
414
  "aria-describedby": ariaDescribedBy,
@@ -380,7 +467,8 @@ const IconSlot = React__default["default"].forwardRef(({ children, ...restProps
380
467
  const {
381
468
  "aria-disabled": ariaDisabled,
382
469
  disabled,
383
- setHasIconSlot
470
+ setHasIconSlot,
471
+ variant
384
472
  } = useInputContext();
385
473
  const formattedChildren = designSystemUtils.addPropsToChildren(children, designSystemBaseIcon.isIconComponent, {
386
474
  size: "small",
@@ -394,6 +482,7 @@ const IconSlot = React__default["default"].forwardRef(({ children, ...restProps
394
482
  StyledIconSlot,
395
483
  {
396
484
  ...restProps,
485
+ variant,
397
486
  disabled: designSystemUtils.booleanify(disabled != null ? disabled : ariaDisabled),
398
487
  ref: forwardRef,
399
488
  children: formattedChildren
@@ -413,7 +502,9 @@ const Root = React__default["default"].forwardRef(({ children, size, ...restProp
413
502
  setHovered,
414
503
  inputRef,
415
504
  actionButtonRef,
416
- setFocused
505
+ setFocused,
506
+ v1,
507
+ variant
417
508
  } = useInputContext();
418
509
  const { hoverProps, isHovered: hovered } = interactions.useHover({
419
510
  onHoverChange: setHovered
@@ -450,6 +541,8 @@ const Root = React__default["default"].forwardRef(({ children, size, ...restProp
450
541
  "data-form-element": "input",
451
542
  ref: designSystemUtils.mergeRefs([ref, forwardRef]),
452
543
  size,
544
+ v1,
545
+ variant,
453
546
  hovered,
454
547
  focused,
455
548
  valid,
@@ -459,7 +552,7 @@ const Root = React__default["default"].forwardRef(({ children, size, ...restProp
459
552
  "data-testid": process.env.NODE_ENV === "test" ? "input-container" : void 0,
460
553
  children: [
461
554
  children,
462
- showValidityIcon && /* @__PURE__ */ jsxRuntime.jsx(StyledValidityBox, { children: /* @__PURE__ */ jsxRuntime.jsx(ValidIcon, { size: "small", weight: "thin" }) })
555
+ !v1 && showValidityIcon && /* @__PURE__ */ jsxRuntime.jsx(StyledValidityBox, { children: /* @__PURE__ */ jsxRuntime.jsx(ValidIcon, { size: "small", weight: "thin" }) })
463
556
  ]
464
557
  }
465
558
  );
@@ -472,19 +565,25 @@ const BaseInput = React__default["default"].forwardRef(
472
565
  readOnly,
473
566
  required,
474
567
  onChange,
568
+ variant,
475
569
  ...restProps
476
- }, forwardRef) => /* @__PURE__ */ jsxRuntime.jsx(
477
- InputProvider,
478
- {
479
- valid,
480
- disabled,
481
- "aria-disabled": ariaDisabled,
482
- readOnly,
483
- required,
484
- onChange,
485
- children: /* @__PURE__ */ jsxRuntime.jsx(Root, { ...restProps, ref: forwardRef })
486
- }
487
- )
570
+ }, forwardRef) => {
571
+ const [v1] = designSystemExperiments.useNewDesignLanguage();
572
+ return /* @__PURE__ */ jsxRuntime.jsx(
573
+ InputProvider,
574
+ {
575
+ valid,
576
+ disabled,
577
+ "aria-disabled": ariaDisabled,
578
+ readOnly,
579
+ required,
580
+ onChange,
581
+ variant,
582
+ v1,
583
+ children: /* @__PURE__ */ jsxRuntime.jsx(Root, { ...restProps, ref: forwardRef })
584
+ }
585
+ );
586
+ }
488
587
  );
489
588
  BaseInput.Input = Input;
490
589
  BaseInput.ActionButton = ActionButton;
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sources":["../src/partials/icon-slot.styled.tsx","../src/partials/action-button.styled.tsx","../src/base-input.styled.tsx","../src/partials/input.styled.tsx","../src/hooks/use-input-context.tsx","../src/partials/input.tsx","../src/partials/action-button.tsx","../src/partials/icon-slot.tsx","../src/base-input.tsx"],"sourcesContent":["import { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { Primitive } from '@mirohq/design-system-primitive'\n\nexport const StyledIconSlot = styled(Primitive.div, {\n order: 1,\n alignContent: 'center',\n display: 'flex',\n justifyContent: 'center',\n color: '$icon-neutrals-subtle',\n\n '& svg, & img': {\n pointerEvents: 'none',\n },\n\n variants: {\n disabled: {\n true: {\n '& svg': {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n },\n})\n\nexport type StyledIconSlotProps = ComponentPropsWithRef<typeof StyledIconSlot>\n","import { styled } from '@mirohq/design-system-stitches'\nimport { BaseButton } from '@mirohq/design-system-base-button'\nimport type { ComponentPropsWithRef } from 'react'\nimport { actionButtonStyles } from '@mirohq/design-system-base-text-field'\n\nexport const StyledActionButton = styled(BaseButton, {\n ...actionButtonStyles,\n order: 3,\n\n variants: {\n readOnlyAppearance: {\n true: {\n '& svg[data-icon-component], & img[data-icon-component]': {\n color: '$icon-neutrals-subtle',\n },\n },\n },\n disableAppearance: {\n true: {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n})\n\nexport type StyledActionButtonProps = ComponentPropsWithRef<\n typeof StyledActionButton\n>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport {\n IconExclamationPointCircle,\n IconCheckMark,\n} from '@mirohq/design-system-icons'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nimport { StyledIconSlot } from './partials/icon-slot.styled'\nimport { StyledActionButton } from './partials/action-button.styled'\n\nexport const StyledIconExclamationPointCircle = styled(\n IconExclamationPointCircle,\n {\n color: '$icon-danger',\n }\n)\n\nexport const StyledIconCheckMark = styled(IconCheckMark, {\n color: '$icon-success',\n})\n\nexport const StyledValidityBox = styled(Primitive.div, {\n order: 3,\n display: 'flex',\n alignItems: 'center',\n padding: '6px',\n})\n\nexport const StyledBaseInput = styled('div', {\n position: 'relative',\n alignItems: 'center',\n display: 'inline-flex',\n height: 'max-content',\n ...textFieldStyles.variants.idle,\n\n variants: {\n hovered: {\n true: {},\n false: {},\n },\n focused: {\n true: textFieldStyles.variants.focused,\n false: {},\n },\n valid: {\n true: {},\n false: {},\n },\n readOnly: {\n true: textFieldStyles.variants.readOnly,\n false: {},\n },\n disabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n ariaDisabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n size: {\n medium: {\n fontSize: '$175',\n height: '$8',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n large: {\n height: '$10',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n 'x-large': {\n height: '$12',\n padding: '0 $150',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$100',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$100',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n },\n },\n compoundVariants: [\n /** Idle states */\n {\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.idle,\n },\n {\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.idle,\n },\n /** Focus States */\n {\n focused: true,\n readOnly: false,\n css: {\n borderColor: textFieldStyles.variants.focused.borderColor,\n },\n },\n {\n focused: true,\n readOnly: false,\n valid: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: true,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.focused,\n },\n /** Hover states */\n {\n hovered: true,\n disabled: false,\n ariaDisabled: false,\n readOnly: false,\n css: textFieldStyles.variants.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.hovered,\n },\n ],\n defaultVariants: {\n size: 'large',\n },\n})\n\nexport type StyledBaseInputProps = ComponentPropsWithRef<typeof StyledBaseInput>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nconst disabledAndReadonlySelectors =\n ':read-only, :disabled, [aria-disabled=\"true\"], [data-disabled]'\n\nexport const StyledInput = styled(Primitive.input, {\n all: 'unset',\n background: 'transparent',\n color: '$text-neutrals',\n width: '100%',\n borderRadius: '$50',\n order: 2,\n padding: '0 $50',\n height: '100%',\n\n '&::placeholder': {\n fontStyle: 'italic',\n },\n\n [`&:not(${disabledAndReadonlySelectors})::placeholder`]:\n textFieldStyles.base.placeholder,\n\n '&:read-only': {\n color: textFieldStyles.variants.readOnly.color,\n },\n\n '&:disabled, &[aria-disabled=true], &[data-disabled]':\n textFieldStyles.base.disabled,\n})\n\nexport type StyledInputProps = ComponentPropsWithRef<typeof StyledInput>\n","import React, { createContext, useContext, useState, useRef } from 'react'\nimport type { PropsWithChildren } from 'react'\nimport { booleanify } from '@mirohq/design-system-utils'\nimport type { FormElementProps } from '@mirohq/design-system-base-form'\n\ninterface InputProps extends FormElementProps {\n onChange?: React.ChangeEventHandler<HTMLInputElement>\n}\n\ninterface InputContextProps extends InputProps {\n focused: boolean\n setFocused: React.Dispatch<React.SetStateAction<boolean>>\n hovered: boolean\n setHovered: React.Dispatch<React.SetStateAction<boolean>>\n hasIconSlot: boolean\n setHasIconSlot: React.Dispatch<React.SetStateAction<boolean>>\n actionButtonRef: React.RefObject<HTMLAnchorElement | HTMLButtonElement>\n inputRef: React.RefObject<HTMLInputElement>\n editable: boolean\n}\n\nexport type InputProviderProps = InputProps\n\nconst InputContext = createContext<InputContextProps>({} as any)\n\nexport const InputProvider = ({\n children,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n required,\n valid,\n ...restProps\n}: PropsWithChildren<InputProviderProps>): JSX.Element => {\n const actionButtonRef = useRef<HTMLAnchorElement | HTMLButtonElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n const [focused, setFocused] = useState(false)\n const [hovered, setHovered] = useState(false)\n const [hasIconSlot, setHasIconSlot] = useState(false)\n const editable =\n !booleanify(disabled) && !booleanify(ariaDisabled) && !booleanify(readOnly)\n\n return (\n <InputContext.Provider\n value={{\n ...restProps,\n setFocused,\n setHovered,\n setHasIconSlot,\n hasIconSlot,\n hovered,\n focused,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n editable,\n inputRef,\n actionButtonRef,\n required,\n valid,\n }}\n >\n {children}\n </InputContext.Provider>\n )\n}\n\nexport const useInputContext = (): InputContextProps => useContext(InputContext)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs } from '@mirohq/design-system-utils'\nimport { useAriaDisabled } from '@mirohq/design-system-use-aria-disabled'\n\nimport { StyledInput } from './input.styled'\nimport type { StyledInputProps } from './input.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type InputProps = Omit<\n StyledInputProps,\n // these props should be set in the root\n 'aria-disabled' | 'disabled' | 'readOnly' | 'required' | 'onChange'\n>\n\nexport const Input = React.forwardRef<\n ElementRef<typeof StyledInput>,\n InputProps\n>(\n (\n {\n id,\n 'aria-describedby': ariaDescribedBy,\n 'aria-invalid': ariaInvalid,\n ...restProps\n },\n forwardRef\n ) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setFocused,\n inputRef,\n required,\n readOnly,\n onChange,\n } = useInputContext()\n\n const { onBlur, onFocus, ...elementProps } = useAriaDisabled({\n ...restProps,\n ariaDisabled,\n })\n\n const onFocusHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true)\n onFocus?.(e)\n },\n [setFocused, onFocus]\n )\n const onBlurHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false)\n onBlur?.(e)\n },\n [setFocused, onBlur]\n )\n\n return (\n <StyledInput\n {...elementProps}\n id={id}\n readOnly={readOnly}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n disabled={disabled === true || undefined}\n required={required === true || undefined}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onChange={onChange}\n ref={mergeRefs([inputRef, forwardRef])}\n />\n )\n }\n)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs, booleanify } from '@mirohq/design-system-utils'\nimport { Tooltip } from '@mirohq/design-system-tooltip'\n\nimport { StyledActionButton } from './action-button.styled'\nimport type { StyledActionButtonProps } from './action-button.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type ActionButtonProps = StyledActionButtonProps &\n (\n | {\n label: string\n 'aria-label'?: string\n }\n // force aria-label if label is not present\n | {\n label?: never\n 'aria-label': string\n }\n )\n\nexport const ActionButton = React.forwardRef<\n ElementRef<typeof StyledActionButton>,\n ActionButtonProps\n>(({ 'aria-label': ariaLabel, label, children, ...restProps }, forwardRef) => {\n const {\n valid,\n hovered,\n editable,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n actionButtonRef,\n } = useInputContext()\n\n const showInputSlot = valid === undefined || booleanify(hovered)\n\n const hasPressEvent = Object.keys(restProps).some(key =>\n key.startsWith('onPress')\n )\n const customDisabled = restProps.disabled\n\n const actionButton = (\n <StyledActionButton\n type='button'\n {...restProps}\n aria-label={ariaLabel ?? label}\n disabled={hasPressEvent ? customDisabled : customDisabled ?? !editable}\n disableAppearance={\n hasPressEvent\n ? !booleanify(readOnly) && customDisabled\n : booleanify(disabled ?? ariaDisabled)\n }\n readOnlyAppearance={readOnly}\n ref={mergeRefs([forwardRef, actionButtonRef])}\n >\n {children}\n </StyledActionButton>\n )\n\n if (!showInputSlot) return <></>\n\n if (\n (label === undefined || label === '') &&\n ariaLabel !== undefined &&\n ariaLabel !== ''\n ) {\n return actionButton\n }\n\n return (\n <Tooltip>\n <Tooltip.Trigger asChild>{actionButton}</Tooltip.Trigger>\n <Tooltip.Content>{label}</Tooltip.Content>\n </Tooltip>\n )\n})\n","import React from 'react'\nimport { addPropsToChildren, booleanify } from '@mirohq/design-system-utils'\nimport { isIconComponent } from '@mirohq/design-system-base-icon'\nimport type { ElementRef } from 'react'\nimport { useLayoutEffect } from '@mirohq/design-system-use-layout-effect'\n\nimport { StyledIconSlot } from './icon-slot.styled'\nimport { useInputContext } from '../hooks/use-input-context'\nimport type { StyledIconSlotProps } from './icon-slot.styled'\n\nexport interface IconSlotProps extends StyledIconSlotProps {}\n\nexport const IconSlot = React.forwardRef<\n ElementRef<typeof StyledIconSlot>,\n StyledIconSlotProps\n>(({ children, ...restProps }, forwardRef) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setHasIconSlot,\n } = useInputContext()\n const formattedChildren = addPropsToChildren(children, isIconComponent, {\n size: 'small',\n weight: 'thin',\n })\n\n useLayoutEffect(() => {\n setHasIconSlot(true)\n return () => setHasIconSlot(false)\n }, [setHasIconSlot])\n\n return (\n <StyledIconSlot\n {...restProps}\n disabled={booleanify(disabled ?? ariaDisabled)}\n ref={forwardRef}\n >\n {formattedChildren}\n </StyledIconSlot>\n )\n})\n\nIconSlot.displayName = 'IconSlot'\n","import React, { useRef } from 'react'\nimport type { ElementRef, ForwardRefExoticComponent } from 'react'\nimport {\n booleanify,\n booleanishAttrValue,\n mergeRefs,\n} from '@mirohq/design-system-utils'\nimport { usePress } from '@mirohq/design-system-use-press'\nimport { useHover } from '@react-aria/interactions'\nimport { mergeProps } from '@react-aria/utils'\n\nimport type { StyledBaseInputProps } from './base-input.styled'\nimport {\n StyledBaseInput,\n StyledValidityBox,\n StyledIconExclamationPointCircle,\n StyledIconCheckMark,\n} from './base-input.styled'\nimport { Input } from './partials/input'\nimport type { InputProviderProps } from './hooks/use-input-context'\nimport { InputProvider, useInputContext } from './hooks/use-input-context'\nimport { ActionButton } from './partials/action-button'\nimport { IconSlot } from './partials/icon-slot'\n\ntype BaseInputRootProps = Omit<\n StyledBaseInputProps,\n // these props come from useInputContext, we don't pass it to BaseInput directly\n | 'hovered'\n | 'focused'\n | 'valid'\n | 'readOnly'\n | 'disabled'\n | 'ariaDisabled'\n // these shouldn't be applied to div\n | 'value'\n | 'defaultValue'\n | 'placeholder'\n>\n\nconst Root = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputRootProps\n>(({ children, size, ...restProps }, forwardRef) => {\n const ref = useRef<HTMLDivElement>(null)\n const {\n valid,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n focused,\n setHovered,\n inputRef,\n actionButtonRef,\n setFocused,\n } = useInputContext()\n const { hoverProps, isHovered: hovered } = useHover({\n onHoverChange: setHovered,\n })\n\n const { pressProps } = usePress({\n onPressStart: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const shouldPrevent =\n document.activeElement === inputRef.current &&\n target !== inputRef.current // to not stop text selection\n\n // to not lose focus on container click\n if (shouldPrevent) {\n e.originalEvent.preventDefault()\n }\n },\n onPressEnd: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const isActionButton =\n target === actionButtonRef.current ||\n actionButtonRef.current?.contains(target as Node) === true\n\n const shouldFocusInput =\n !isActionButton && !booleanify(disabled) && !booleanify(focused)\n\n if (shouldFocusInput) {\n inputRef.current?.focus()\n setFocused(true)\n }\n },\n preventFocusOnPress: 'auto',\n })\n\n const ariaDisabledOrDisabled =\n booleanify(ariaDisabled) || booleanify(disabled)\n\n // validity\n const showValidityIcon =\n !booleanify(readOnly) &&\n !ariaDisabledOrDisabled &&\n !hovered &&\n !focused &&\n valid !== undefined\n const ValidIcon =\n valid === true ? StyledIconCheckMark : StyledIconExclamationPointCircle\n\n return (\n <StyledBaseInput\n {...mergeProps(restProps, hoverProps, pressProps)}\n data-invalid={booleanishAttrValue(valid === false)}\n data-valid={booleanishAttrValue(valid === true)}\n data-form-element='input'\n ref={mergeRefs([ref, forwardRef])}\n size={size}\n hovered={hovered}\n focused={focused}\n valid={valid}\n disabled={booleanify(disabled)}\n ariaDisabled={booleanify(ariaDisabled)}\n readOnly={booleanify(readOnly)}\n data-testid={\n process.env.NODE_ENV === 'test' ? 'input-container' : undefined\n }\n >\n {children}\n {showValidityIcon && (\n <StyledValidityBox>\n <ValidIcon size='small' weight='thin' />\n </StyledValidityBox>\n )}\n </StyledBaseInput>\n )\n})\n\nexport type BaseInputProps = BaseInputRootProps & InputProviderProps\n\nexport const BaseInput = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputProps\n>(\n (\n {\n 'aria-disabled': ariaDisabled,\n disabled,\n valid,\n readOnly,\n required,\n onChange,\n ...restProps\n },\n forwardRef\n ) => (\n <InputProvider\n valid={valid}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n readOnly={readOnly}\n required={required}\n onChange={onChange}\n >\n <Root {...restProps} ref={forwardRef} />\n </InputProvider>\n )\n) as ForwardRefExoticComponent<BaseInputProps> & Partials\n\n// Partials\n// -----------------------------------------------------------------------------\nexport interface Partials {\n Input: typeof Input\n ActionButton: typeof ActionButton\n IconSlot: typeof IconSlot\n}\n\nBaseInput.Input = Input\nBaseInput.ActionButton = ActionButton\nBaseInput.IconSlot = IconSlot\n"],"names":["styled","Primitive","BaseButton","actionButtonStyles","IconExclamationPointCircle","IconCheckMark","textFieldStyles","createContext","useRef","useState","booleanify","jsx","useContext","React","useAriaDisabled","mergeRefs","Fragment","Tooltip","addPropsToChildren","isIconComponent","useLayoutEffect","useHover","usePress","jsxs","mergeProps","booleanishAttrValue"],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sources":["../src/partials/icon-slot.styled.tsx","../src/partials/action-button.styled.tsx","../src/base-input.styled.tsx","../src/partials/input.styled.tsx","../src/hooks/use-input-context.tsx","../src/partials/input.tsx","../src/partials/action-button.tsx","../src/partials/icon-slot.tsx","../src/base-input.tsx"],"sourcesContent":["import { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { Primitive } from '@mirohq/design-system-primitive'\n\nexport const StyledIconSlot = styled(Primitive.div, {\n order: 1,\n alignContent: 'center',\n display: 'flex',\n justifyContent: 'center',\n color: '$icon-neutrals-subtle',\n\n '& svg, & img': {\n pointerEvents: 'none',\n },\n\n variants: {\n variant: {\n outline: {},\n subtle: {\n color: '$icon-neutrals',\n },\n },\n disabled: {\n true: {\n '& svg': {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n },\n})\n\nexport type StyledIconSlotProps = ComponentPropsWithRef<typeof StyledIconSlot>\n","import { styled } from '@mirohq/design-system-stitches'\nimport { BaseButton } from '@mirohq/design-system-base-button'\nimport type { ComponentPropsWithRef } from 'react'\nimport { actionButtonStyles } from '@mirohq/design-system-base-text-field'\n\nexport const StyledActionButton = styled(BaseButton, {\n ...actionButtonStyles,\n order: 3,\n\n variants: {\n readOnlyAppearance: {\n true: {\n '& svg[data-icon-component], & img[data-icon-component]': {\n color: '$icon-neutrals-subtle',\n },\n },\n },\n disableAppearance: {\n true: {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n})\n\nexport type StyledActionButtonProps = ComponentPropsWithRef<\n typeof StyledActionButton\n>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport {\n IconExclamationPointCircle,\n IconCheckMark,\n} from '@mirohq/design-system-icons'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nimport { StyledIconSlot } from './partials/icon-slot.styled'\nimport { StyledActionButton } from './partials/action-button.styled'\n\nexport const StyledIconExclamationPointCircle = styled(\n IconExclamationPointCircle,\n {\n color: '$icon-danger',\n }\n)\n\nexport const StyledIconCheckMark = styled(IconCheckMark, {\n color: '$icon-success',\n})\n\nexport const StyledValidityBox = styled(Primitive.div, {\n order: 3,\n display: 'flex',\n alignItems: 'center',\n padding: '6px',\n})\n\nexport const StyledBaseInput = styled('div', {\n position: 'relative',\n alignItems: 'center',\n display: 'inline-flex',\n height: 'max-content',\n ...textFieldStyles.variants.idle,\n\n variants: {\n v1: {\n true: textFieldStyles.v1.idle,\n },\n variant: {\n outline: {},\n subtle: {},\n },\n hovered: {\n true: {},\n false: {},\n },\n focused: {\n true: {},\n false: {},\n },\n valid: {\n true: {},\n false: {},\n },\n readOnly: {\n true: textFieldStyles.variants.readOnly,\n false: {},\n },\n disabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n ariaDisabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n size: {\n medium: {\n fontSize: '$175',\n height: '$8',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n large: {\n height: '$10',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n 'x-large': {\n height: '$12',\n padding: '0 $150',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$100',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$100',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n },\n },\n compoundVariants: [\n /** Idle states */\n {\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.idle,\n },\n {\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.idle,\n },\n {\n readOnly: true,\n v1: true,\n css: textFieldStyles.v1.readOnly,\n },\n {\n variant: 'subtle',\n valid: undefined,\n hovered: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: {\n backgroundColor: '$background-neutrals-subtle',\n borderColor: 'transparent',\n },\n },\n {\n v1: true,\n size: 'x-large',\n css: {\n fontSize: '$200',\n lineHeight: '$500',\n },\n },\n /** Focus States */\n {\n focused: true,\n v1: false,\n css: textFieldStyles.variants.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: false,\n disabled: false,\n ariaDisabled: false,\n v1: false,\n css: textFieldStyles.variants.invalid.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: true,\n disabled: false,\n ariaDisabled: false,\n v1: false,\n css: textFieldStyles.variants.valid.focused,\n },\n {\n focused: true,\n v1: true,\n css: textFieldStyles.v1.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: false,\n disabled: false,\n ariaDisabled: false,\n v1: true,\n css: textFieldStyles.v1.invalid.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: true,\n disabled: false,\n ariaDisabled: false,\n v1: true,\n css: textFieldStyles.v1.valid.focused,\n },\n /** Hover states */\n {\n hovered: true,\n disabled: false,\n ariaDisabled: false,\n readOnly: false,\n css: textFieldStyles.variants.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.hovered,\n },\n {\n variant: 'subtle',\n valid: undefined,\n hovered: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: {\n backgroundColor: '$background-neutrals-subtle-hover',\n },\n },\n ],\n defaultVariants: {\n size: 'large',\n },\n})\n\nexport type StyledBaseInputProps = ComponentPropsWithRef<typeof StyledBaseInput>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nconst disabledAndReadonlySelectors =\n ':read-only, :disabled, [aria-disabled=\"true\"], [data-disabled]'\n\nexport const StyledInput = styled(Primitive.input, {\n all: 'unset',\n background: 'transparent',\n color: '$text-neutrals',\n width: '100%',\n borderRadius: '$50',\n order: 2,\n padding: '0 $50',\n height: '100%',\n\n '&:disabled, &[aria-disabled=true], &[data-disabled]':\n textFieldStyles.base.disabled,\n\n variants: {\n v1: {\n true: {\n [`&:not(${disabledAndReadonlySelectors})::placeholder`]:\n textFieldStyles.base.placeholder.v1,\n\n '&:read-only': {\n color: textFieldStyles.v1.readOnly.color,\n },\n },\n false: {\n '&::placeholder': {\n fontStyle: 'italic',\n },\n\n [`&:not(${disabledAndReadonlySelectors})::placeholder`]:\n textFieldStyles.base.placeholder.old,\n\n '&:read-only': {\n color: textFieldStyles.variants.readOnly.color,\n },\n },\n },\n },\n})\n\nexport type StyledInputProps = ComponentPropsWithRef<typeof StyledInput>\n","import React, { createContext, useContext, useState, useRef } from 'react'\nimport type { PropsWithChildren } from 'react'\nimport { booleanify } from '@mirohq/design-system-utils'\nimport type { FormElementProps } from '@mirohq/design-system-base-form'\n\ninterface InputProps extends FormElementProps {\n onChange?: React.ChangeEventHandler<HTMLInputElement>\n v1: boolean\n variant?: 'outline' | 'subtle'\n}\n\ninterface InputContextProps extends InputProps {\n focused: boolean\n setFocused: React.Dispatch<React.SetStateAction<boolean>>\n hovered: boolean\n setHovered: React.Dispatch<React.SetStateAction<boolean>>\n hasIconSlot: boolean\n setHasIconSlot: React.Dispatch<React.SetStateAction<boolean>>\n actionButtonRef: React.RefObject<HTMLAnchorElement | HTMLButtonElement>\n inputRef: React.RefObject<HTMLInputElement>\n editable: boolean\n}\n\nexport type InputProviderProps = InputProps\n\nconst InputContext = createContext<InputContextProps>({} as any)\n\nexport const InputProvider = ({\n children,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n required,\n valid,\n ...restProps\n}: PropsWithChildren<InputProviderProps>): JSX.Element => {\n const actionButtonRef = useRef<HTMLAnchorElement | HTMLButtonElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n const [focused, setFocused] = useState(false)\n const [hovered, setHovered] = useState(false)\n const [hasIconSlot, setHasIconSlot] = useState(false)\n const editable =\n !booleanify(disabled) && !booleanify(ariaDisabled) && !booleanify(readOnly)\n\n return (\n <InputContext.Provider\n value={{\n ...restProps,\n setFocused,\n setHovered,\n setHasIconSlot,\n hasIconSlot,\n hovered,\n focused,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n editable,\n inputRef,\n actionButtonRef,\n required,\n valid,\n }}\n >\n {children}\n </InputContext.Provider>\n )\n}\n\nexport const useInputContext = (): InputContextProps => useContext(InputContext)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs } from '@mirohq/design-system-utils'\nimport { useAriaDisabled } from '@mirohq/design-system-use-aria-disabled'\n\nimport { StyledInput } from './input.styled'\nimport type { StyledInputProps } from './input.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type InputProps = Omit<\n StyledInputProps,\n // these props should be set in the root\n 'aria-disabled' | 'disabled' | 'readOnly' | 'required' | 'onChange'\n>\n\nexport const Input = React.forwardRef<\n ElementRef<typeof StyledInput>,\n InputProps\n>(\n (\n {\n id,\n 'aria-describedby': ariaDescribedBy,\n 'aria-invalid': ariaInvalid,\n ...restProps\n },\n forwardRef\n ) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setFocused,\n inputRef,\n required,\n readOnly,\n onChange,\n v1,\n } = useInputContext()\n\n const { onBlur, onFocus, ...elementProps } = useAriaDisabled({\n ...restProps,\n ariaDisabled,\n })\n\n const onFocusHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true)\n onFocus?.(e)\n },\n [setFocused, onFocus]\n )\n const onBlurHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false)\n onBlur?.(e)\n },\n [setFocused, onBlur]\n )\n\n return (\n <StyledInput\n {...elementProps}\n v1={v1}\n id={id}\n readOnly={readOnly}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n disabled={disabled === true || undefined}\n required={required === true || undefined}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onChange={onChange}\n ref={mergeRefs([inputRef, forwardRef])}\n />\n )\n }\n)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs, booleanify } from '@mirohq/design-system-utils'\nimport { Tooltip } from '@mirohq/design-system-tooltip'\n\nimport { StyledActionButton } from './action-button.styled'\nimport type { StyledActionButtonProps } from './action-button.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type ActionButtonProps = StyledActionButtonProps &\n (\n | {\n label: string\n 'aria-label'?: string\n }\n // force aria-label if label is not present\n | {\n label?: never\n 'aria-label': string\n }\n )\n\nexport const ActionButton = React.forwardRef<\n ElementRef<typeof StyledActionButton>,\n ActionButtonProps\n>(({ 'aria-label': ariaLabel, label, children, ...restProps }, forwardRef) => {\n const {\n valid,\n hovered,\n editable,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n actionButtonRef,\n } = useInputContext()\n\n const showInputSlot = valid === undefined || booleanify(hovered)\n\n const hasPressEvent = Object.keys(restProps).some(key =>\n key.startsWith('onPress')\n )\n const customDisabled = restProps.disabled\n\n const actionButton = (\n <StyledActionButton\n type='button'\n {...restProps}\n aria-label={ariaLabel ?? label}\n disabled={hasPressEvent ? customDisabled : customDisabled ?? !editable}\n disableAppearance={\n hasPressEvent\n ? !booleanify(readOnly) && customDisabled\n : booleanify(disabled ?? ariaDisabled)\n }\n readOnlyAppearance={readOnly}\n ref={mergeRefs([forwardRef, actionButtonRef])}\n >\n {children}\n </StyledActionButton>\n )\n\n if (!showInputSlot) return <></>\n\n if (\n (label === undefined || label === '') &&\n ariaLabel !== undefined &&\n ariaLabel !== ''\n ) {\n return actionButton\n }\n\n return (\n <Tooltip>\n <Tooltip.Trigger asChild>{actionButton}</Tooltip.Trigger>\n <Tooltip.Content>{label}</Tooltip.Content>\n </Tooltip>\n )\n})\n","import React from 'react'\nimport { addPropsToChildren, booleanify } from '@mirohq/design-system-utils'\nimport { isIconComponent } from '@mirohq/design-system-base-icon'\nimport type { ElementRef } from 'react'\nimport { useLayoutEffect } from '@mirohq/design-system-use-layout-effect'\n\nimport { StyledIconSlot } from './icon-slot.styled'\nimport { useInputContext } from '../hooks/use-input-context'\nimport type { StyledIconSlotProps } from './icon-slot.styled'\n\nexport interface IconSlotProps extends Omit<StyledIconSlotProps, 'variant'> {}\n\nexport const IconSlot = React.forwardRef<\n ElementRef<typeof StyledIconSlot>,\n StyledIconSlotProps\n>(({ children, ...restProps }, forwardRef) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setHasIconSlot,\n variant,\n } = useInputContext()\n const formattedChildren = addPropsToChildren(children, isIconComponent, {\n size: 'small',\n weight: 'thin',\n })\n\n useLayoutEffect(() => {\n setHasIconSlot(true)\n return () => setHasIconSlot(false)\n }, [setHasIconSlot])\n\n return (\n <StyledIconSlot\n {...restProps}\n variant={variant}\n disabled={booleanify(disabled ?? ariaDisabled)}\n ref={forwardRef}\n >\n {formattedChildren}\n </StyledIconSlot>\n )\n})\n\nIconSlot.displayName = 'IconSlot'\n","import React, { useRef } from 'react'\nimport type { ElementRef, ForwardRefExoticComponent } from 'react'\nimport {\n booleanify,\n booleanishAttrValue,\n mergeRefs,\n} from '@mirohq/design-system-utils'\nimport { usePress } from '@mirohq/design-system-use-press'\nimport { useHover } from '@react-aria/interactions'\nimport { mergeProps } from '@react-aria/utils'\nimport { useNewDesignLanguage } from '@mirohq/design-system-experiments'\n\nimport type { StyledBaseInputProps } from './base-input.styled'\nimport {\n StyledBaseInput,\n StyledValidityBox,\n StyledIconExclamationPointCircle,\n StyledIconCheckMark,\n} from './base-input.styled'\nimport { Input } from './partials/input'\nimport type { InputProviderProps } from './hooks/use-input-context'\nimport { InputProvider, useInputContext } from './hooks/use-input-context'\nimport { ActionButton } from './partials/action-button'\nimport { IconSlot } from './partials/icon-slot'\n\ntype BaseInputRootProps = Omit<\n StyledBaseInputProps,\n // these props come from useInputContext, we don't pass it to BaseInput directly\n | 'v1'\n | 'hovered'\n | 'focused'\n | 'valid'\n | 'readOnly'\n | 'disabled'\n | 'ariaDisabled'\n // these shouldn't be applied to div\n | 'value'\n | 'defaultValue'\n | 'placeholder'\n>\n\nconst Root = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputRootProps\n>(({ children, size, ...restProps }, forwardRef) => {\n const ref = useRef<HTMLDivElement>(null)\n const {\n valid,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n focused,\n setHovered,\n inputRef,\n actionButtonRef,\n setFocused,\n v1,\n variant,\n } = useInputContext()\n const { hoverProps, isHovered: hovered } = useHover({\n onHoverChange: setHovered,\n })\n\n const { pressProps } = usePress({\n onPressStart: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const shouldPrevent =\n document.activeElement === inputRef.current &&\n target !== inputRef.current // to not stop text selection\n\n // to not lose focus on container click\n if (shouldPrevent) {\n e.originalEvent.preventDefault()\n }\n },\n onPressEnd: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const isActionButton =\n target === actionButtonRef.current ||\n actionButtonRef.current?.contains(target as Node) === true\n\n const shouldFocusInput =\n !isActionButton && !booleanify(disabled) && !booleanify(focused)\n\n if (shouldFocusInput) {\n inputRef.current?.focus()\n setFocused(true)\n }\n },\n preventFocusOnPress: 'auto',\n })\n\n const ariaDisabledOrDisabled =\n booleanify(ariaDisabled) || booleanify(disabled)\n\n // validity\n const showValidityIcon =\n !booleanify(readOnly) &&\n !ariaDisabledOrDisabled &&\n !hovered &&\n !focused &&\n valid !== undefined\n const ValidIcon =\n valid === true ? StyledIconCheckMark : StyledIconExclamationPointCircle\n\n return (\n <StyledBaseInput\n {...mergeProps(restProps, hoverProps, pressProps)}\n data-invalid={booleanishAttrValue(valid === false)}\n data-valid={booleanishAttrValue(valid === true)}\n data-form-element='input'\n ref={mergeRefs([ref, forwardRef])}\n size={size}\n v1={v1}\n variant={variant}\n hovered={hovered}\n focused={focused}\n valid={valid}\n disabled={booleanify(disabled)}\n ariaDisabled={booleanify(ariaDisabled)}\n readOnly={booleanify(readOnly)}\n data-testid={\n process.env.NODE_ENV === 'test' ? 'input-container' : undefined\n }\n >\n {children}\n {!v1 && showValidityIcon && (\n <StyledValidityBox>\n <ValidIcon size='small' weight='thin' />\n </StyledValidityBox>\n )}\n </StyledBaseInput>\n )\n})\n\nexport type BaseInputProps = BaseInputRootProps & Omit<InputProviderProps, 'v1'>\n\nexport const BaseInput = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputProps\n>(\n (\n {\n 'aria-disabled': ariaDisabled,\n disabled,\n valid,\n readOnly,\n required,\n onChange,\n variant,\n ...restProps\n },\n forwardRef\n ) => {\n const [v1] = useNewDesignLanguage()\n\n return (\n <InputProvider\n valid={valid}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n readOnly={readOnly}\n required={required}\n onChange={onChange}\n variant={variant}\n v1={v1}\n >\n <Root {...restProps} ref={forwardRef} />\n </InputProvider>\n )\n }\n) as ForwardRefExoticComponent<BaseInputProps> & Partials\n\n// Partials\n// -----------------------------------------------------------------------------\nexport interface Partials {\n Input: typeof Input\n ActionButton: typeof ActionButton\n IconSlot: typeof IconSlot\n}\n\nBaseInput.Input = Input\nBaseInput.ActionButton = ActionButton\nBaseInput.IconSlot = IconSlot\n"],"names":["styled","Primitive","BaseButton","actionButtonStyles","IconExclamationPointCircle","IconCheckMark","textFieldStyles","createContext","useRef","useState","booleanify","jsx","useContext","React","useAriaDisabled","mergeRefs","Fragment","Tooltip","addPropsToChildren","isIconComponent","useLayoutEffect","useHover","usePress","jsxs","mergeProps","booleanishAttrValue","useNewDesignLanguage"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIa,MAAA,cAAA,GAAiBA,2BAAO,CAAAC,+BAAA,CAAU,GAAK,EAAA;AAAA,EAClD,KAAO,EAAA,CAAA;AAAA,EACP,YAAc,EAAA,QAAA;AAAA,EACd,OAAS,EAAA,MAAA;AAAA,EACT,cAAgB,EAAA,QAAA;AAAA,EAChB,KAAO,EAAA,uBAAA;AAAA,EAEP,cAAgB,EAAA;AAAA,IACd,aAAe,EAAA,MAAA;AAAA,GACjB;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,OAAS,EAAA;AAAA,MACP,SAAS,EAAC;AAAA,MACV,MAAQ,EAAA;AAAA,QACN,KAAO,EAAA,gBAAA;AAAA,OACT;AAAA,KACF;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAM,EAAA;AAAA,QACJ,OAAS,EAAA;AAAA,UACP,KAAO,EAAA,yBAAA;AAAA,SACT;AAAA,OACF;AAAA,KACF;AAAA,GACF;AACF,CAAC,CAAA;;ACzBY,MAAA,kBAAA,GAAqBD,4BAAOE,iCAAY,EAAA;AAAA,EACnD,GAAGC,4CAAA;AAAA,EACH,KAAO,EAAA,CAAA;AAAA,EAEP,QAAU,EAAA;AAAA,IACR,kBAAoB,EAAA;AAAA,MAClB,IAAM,EAAA;AAAA,QACJ,wDAA0D,EAAA;AAAA,UACxD,KAAO,EAAA,uBAAA;AAAA,SACT;AAAA,OACF;AAAA,KACF;AAAA,IACA,iBAAmB,EAAA;AAAA,MACjB,IAAM,EAAA;AAAA,QACJ,KAAO,EAAA,yBAAA;AAAA,OACT;AAAA,KACF;AAAA,GACF;AACF,CAAC,CAAA;;ACXM,MAAM,gCAAmC,GAAAH,2BAAA;AAAA,EAC9CI,4CAAA;AAAA,EACA;AAAA,IACE,KAAO,EAAA,cAAA;AAAA,GACT;AACF,CAAA,CAAA;AAEa,MAAA,mBAAA,GAAsBJ,4BAAOK,+BAAe,EAAA;AAAA,EACvD,KAAO,EAAA,eAAA;AACT,CAAC,CAAA,CAAA;AAEY,MAAA,iBAAA,GAAoBL,2BAAO,CAAAC,+BAAA,CAAU,GAAK,EAAA;AAAA,EACrD,KAAO,EAAA,CAAA;AAAA,EACP,OAAS,EAAA,MAAA;AAAA,EACT,UAAY,EAAA,QAAA;AAAA,EACZ,OAAS,EAAA,KAAA;AACX,CAAC,CAAA,CAAA;AAEY,MAAA,eAAA,GAAkBD,4BAAO,KAAO,EAAA;AAAA,EAC3C,QAAU,EAAA,UAAA;AAAA,EACV,UAAY,EAAA,QAAA;AAAA,EACZ,OAAS,EAAA,aAAA;AAAA,EACT,MAAQ,EAAA,aAAA;AAAA,EACR,GAAGM,0CAAgB,QAAS,CAAA,IAAA;AAAA,EAE5B,QAAU,EAAA;AAAA,IACR,EAAI,EAAA;AAAA,MACF,IAAA,EAAMA,0CAAgB,EAAG,CAAA,IAAA;AAAA,KAC3B;AAAA,IACA,OAAS,EAAA;AAAA,MACP,SAAS,EAAC;AAAA,MACV,QAAQ,EAAC;AAAA,KACX;AAAA,IACA,OAAS,EAAA;AAAA,MACP,MAAM,EAAC;AAAA,MACP,OAAO,EAAC;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,MAAM,EAAC;AAAA,MACP,OAAO,EAAC;AAAA,KACV;AAAA,IACA,KAAO,EAAA;AAAA,MACL,MAAM,EAAC;AAAA,MACP,OAAO,EAAC;AAAA,KACV;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAA,EAAMA,0CAAgB,QAAS,CAAA,QAAA;AAAA,MAC/B,OAAO,EAAC;AAAA,KACV;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAA,EAAMA,0CAAgB,QAAS,CAAA,QAAA;AAAA,MAC/B,OAAO,EAAC;AAAA,KACV;AAAA,IACA,YAAc,EAAA;AAAA,MACZ,IAAA,EAAMA,0CAAgB,QAAS,CAAA,QAAA;AAAA,MAC/B,OAAO,EAAC;AAAA,KACV;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,MAAQ,EAAA;AAAA,QACN,QAAU,EAAA,MAAA;AAAA,QACV,MAAQ,EAAA,IAAA;AAAA,QACR,OAAS,EAAA,SAAA;AAAA,QACT,CAAC,IAAK,CAAA,MAAA,CAAA,cAAA,CAAgB,GAAG;AAAA,UACvB,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,QACA,CAAC,IAAA,CAAK,MAAkB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAO,yBAAmB,GAAG;AAAA,UACnD,UAAY,EAAA,KAAA;AAAA,SACd;AAAA,QACA,CAAC,IAAK,CAAA,MAAA,CAAA,iBAAA,CAAmB,GAAG;AAAA,UAC1B,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,OACF;AAAA,MACA,KAAO,EAAA;AAAA,QACL,MAAQ,EAAA,KAAA;AAAA,QACR,OAAS,EAAA,SAAA;AAAA,QACT,CAAC,IAAK,CAAA,MAAA,CAAA,cAAA,CAAgB,GAAG;AAAA,UACvB,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,QACA,CAAC,IAAA,CAAK,MAAkB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAO,yBAAmB,GAAG;AAAA,UACnD,UAAY,EAAA,KAAA;AAAA,SACd;AAAA,QACA,CAAC,IAAK,CAAA,MAAA,CAAA,iBAAA,CAAmB,GAAG;AAAA,UAC1B,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,OACF;AAAA,MACA,SAAW,EAAA;AAAA,QACT,MAAQ,EAAA,KAAA;AAAA,QACR,OAAS,EAAA,QAAA;AAAA,QACT,CAAC,IAAK,CAAA,MAAA,CAAA,cAAA,CAAgB,GAAG;AAAA,UACvB,YAAc,EAAA,MAAA;AAAA,SAChB;AAAA,QACA,CAAC,IAAA,CAAK,MAAkB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAO,yBAAmB,GAAG;AAAA,UACnD,UAAY,EAAA,MAAA;AAAA,SACd;AAAA,QACA,CAAC,IAAK,CAAA,MAAA,CAAA,iBAAA,CAAmB,GAAG;AAAA,UAC1B,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,OACF;AAAA,KACF;AAAA,GACF;AAAA,EACA,gBAAkB,EAAA;AAAA;AAAA,IAEhB;AAAA,MACE,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAKA,yCAAgB,CAAA,QAAA,CAAS,OAAQ,CAAA,IAAA;AAAA,KACxC;AAAA,IACA;AAAA,MACE,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAKA,yCAAgB,CAAA,QAAA,CAAS,KAAM,CAAA,IAAA;AAAA,KACtC;AAAA,IACA;AAAA,MACE,QAAU,EAAA,IAAA;AAAA,MACV,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAKA,0CAAgB,EAAG,CAAA,QAAA;AAAA,KAC1B;AAAA,IACA;AAAA,MACE,OAAS,EAAA,QAAA;AAAA,MACT,KAAO,EAAA,KAAA,CAAA;AAAA,MACP,OAAS,EAAA,KAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAK,EAAA;AAAA,QACH,eAAiB,EAAA,6BAAA;AAAA,QACjB,WAAa,EAAA,aAAA;AAAA,OACf;AAAA,KACF;AAAA,IACA;AAAA,MACE,EAAI,EAAA,IAAA;AAAA,MACJ,IAAM,EAAA,SAAA;AAAA,MACN,GAAK,EAAA;AAAA,QACH,QAAU,EAAA,MAAA;AAAA,QACV,UAAY,EAAA,MAAA;AAAA,OACd;AAAA,KACF;AAAA;AAAA,IAEA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,EAAI,EAAA,KAAA;AAAA,MACJ,GAAA,EAAKA,0CAAgB,QAAS,CAAA,OAAA;AAAA,KAChC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,KAAA;AAAA,MACJ,GAAA,EAAKA,yCAAgB,CAAA,QAAA,CAAS,OAAQ,CAAA,OAAA;AAAA,KACxC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,KAAA;AAAA,MACJ,GAAA,EAAKA,yCAAgB,CAAA,QAAA,CAAS,KAAM,CAAA,OAAA;AAAA,KACtC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAKA,0CAAgB,EAAG,CAAA,OAAA;AAAA,KAC1B;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAKA,yCAAgB,CAAA,EAAA,CAAG,OAAQ,CAAA,OAAA;AAAA,KAClC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAKA,yCAAgB,CAAA,EAAA,CAAG,KAAM,CAAA,OAAA;AAAA,KAChC;AAAA;AAAA,IAEA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,QAAU,EAAA,KAAA;AAAA,MACV,GAAA,EAAKA,0CAAgB,QAAS,CAAA,OAAA;AAAA,KAChC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,OAAS,EAAA,KAAA;AAAA,MACT,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAKA,yCAAgB,CAAA,QAAA,CAAS,OAAQ,CAAA,OAAA;AAAA,KACxC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,OAAS,EAAA,KAAA;AAAA,MACT,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAKA,yCAAgB,CAAA,QAAA,CAAS,KAAM,CAAA,OAAA;AAAA,KACtC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,QAAA;AAAA,MACT,KAAO,EAAA,KAAA,CAAA;AAAA,MACP,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAK,EAAA;AAAA,QACH,eAAiB,EAAA,mCAAA;AAAA,OACnB;AAAA,KACF;AAAA,GACF;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,OAAA;AAAA,GACR;AACF,CAAC,CAAA;;AC5OD,MAAM,4BACJ,GAAA,gEAAA,CAAA;AAEW,MAAA,WAAA,GAAcN,2BAAO,CAAAC,+BAAA,CAAU,KAAO,EAAA;AAAA,EACjD,GAAK,EAAA,OAAA;AAAA,EACL,UAAY,EAAA,aAAA;AAAA,EACZ,KAAO,EAAA,gBAAA;AAAA,EACP,KAAO,EAAA,MAAA;AAAA,EACP,YAAc,EAAA,KAAA;AAAA,EACd,KAAO,EAAA,CAAA;AAAA,EACP,OAAS,EAAA,OAAA;AAAA,EACT,MAAQ,EAAA,MAAA;AAAA,EAER,qDAAA,EACEK,0CAAgB,IAAK,CAAA,QAAA;AAAA,EAEvB,QAAU,EAAA;AAAA,IACR,EAAI,EAAA;AAAA,MACF,IAAM,EAAA;AAAA,QACJ,CAAC,QAAS,CAAA,MAAA,CAAA,4BAAA,EAA4B,iBAAgB,GACpDA,yCAAA,CAAgB,KAAK,WAAY,CAAA,EAAA;AAAA,QAEnC,aAAe,EAAA;AAAA,UACb,KAAA,EAAOA,yCAAgB,CAAA,EAAA,CAAG,QAAS,CAAA,KAAA;AAAA,SACrC;AAAA,OACF;AAAA,MACA,KAAO,EAAA;AAAA,QACL,gBAAkB,EAAA;AAAA,UAChB,SAAW,EAAA,QAAA;AAAA,SACb;AAAA,QAEA,CAAC,QAAS,CAAA,MAAA,CAAA,4BAAA,EAA4B,iBAAgB,GACpDA,yCAAA,CAAgB,KAAK,WAAY,CAAA,GAAA;AAAA,QAEnC,aAAe,EAAA;AAAA,UACb,KAAA,EAAOA,yCAAgB,CAAA,QAAA,CAAS,QAAS,CAAA,KAAA;AAAA,SAC3C;AAAA,OACF;AAAA,KACF;AAAA,GACF;AACF,CAAC,CAAA;;ACpBD,MAAM,YAAA,GAAeC,mBAAiC,CAAA,EAAS,CAAA,CAAA;AAExD,MAAM,gBAAgB,CAAC;AAAA,EAC5B,QAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAiB,EAAA,YAAA;AAAA,EACjB,QAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAG,SAAA;AACL,CAA0D,KAAA;AACxD,EAAM,MAAA,eAAA,GAAkBC,aAA8C,IAAI,CAAA,CAAA;AAC1E,EAAM,MAAA,QAAA,GAAWA,aAAyB,IAAI,CAAA,CAAA;AAC9C,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAIC,eAAS,KAAK,CAAA,CAAA;AAC5C,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAIA,eAAS,KAAK,CAAA,CAAA;AAC5C,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAIA,eAAS,KAAK,CAAA,CAAA;AACpD,EAAM,MAAA,QAAA,GACJ,CAACC,4BAAA,CAAW,QAAQ,CAAA,IAAK,CAACA,4BAAA,CAAW,YAAY,CAAA,IAAK,CAACA,4BAAA,CAAW,QAAQ,CAAA,CAAA;AAE5E,EACE,uBAAAC,cAAA;AAAA,IAAC,YAAa,CAAA,QAAA;AAAA,IAAb;AAAA,MACC,KAAO,EAAA;AAAA,QACL,GAAG,SAAA;AAAA,QACH,UAAA;AAAA,QACA,UAAA;AAAA,QACA,cAAA;AAAA,QACA,WAAA;AAAA,QACA,OAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,eAAiB,EAAA,YAAA;AAAA,QACjB,QAAA;AAAA,QACA,QAAA;AAAA,QACA,QAAA;AAAA,QACA,eAAA;AAAA,QACA,QAAA;AAAA,QACA,KAAA;AAAA,OACF;AAAA,MAEC,QAAA;AAAA,KAAA;AAAA,GACH,CAAA;AAEJ,CAAA,CAAA;AAEa,MAAA,eAAA,GAAkB,MAAyBC,gBAAA,CAAW,YAAY;;ACtDxE,MAAM,QAAQC,yBAAM,CAAA,UAAA;AAAA,EAIzB,CACE;AAAA,IACE,EAAA;AAAA,IACA,kBAAoB,EAAA,eAAA;AAAA,IACpB,cAAgB,EAAA,WAAA;AAAA,IAChB,GAAG,SAAA;AAAA,KAEL,UACG,KAAA;AACH,IAAM,MAAA;AAAA,MACJ,eAAiB,EAAA,YAAA;AAAA,MACjB,QAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,EAAA;AAAA,QACE,eAAgB,EAAA,CAAA;AAEpB,IAAA,MAAM,EAAE,MAAQ,EAAA,OAAA,EAAS,GAAG,YAAA,KAAiBC,2CAAgB,CAAA;AAAA,MAC3D,GAAG,SAAA;AAAA,MACH,YAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,iBAAiBD,yBAAM,CAAA,WAAA;AAAA,MAC3B,CAAC,CAA0C,KAAA;AACzC,QAAA,UAAA,CAAW,IAAI,CAAA,CAAA;AACf,QAAU,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OACZ;AAAA,MACA,CAAC,YAAY,OAAO,CAAA;AAAA,KACtB,CAAA;AACA,IAAA,MAAM,gBAAgBA,yBAAM,CAAA,WAAA;AAAA,MAC1B,CAAC,CAA0C,KAAA;AACzC,QAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAChB,QAAS,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OACX;AAAA,MACA,CAAC,YAAY,MAAM,CAAA;AAAA,KACrB,CAAA;AAEA,IACE,uBAAAF,cAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QACE,GAAG,YAAA;AAAA,QACJ,EAAA;AAAA,QACA,EAAA;AAAA,QACA,QAAA;AAAA,QACA,kBAAkB,EAAA,eAAA;AAAA,QAClB,cAAc,EAAA,WAAA;AAAA,QACd,QAAA,EAAU,aAAa,IAAQ,IAAA,KAAA,CAAA;AAAA,QAC/B,QAAA,EAAU,aAAa,IAAQ,IAAA,KAAA,CAAA;AAAA,QAC/B,OAAS,EAAA,cAAA;AAAA,QACT,MAAQ,EAAA,aAAA;AAAA,QACR,QAAA;AAAA,QACA,GAAK,EAAAI,2BAAA,CAAU,CAAC,QAAA,EAAU,UAAU,CAAC,CAAA;AAAA,OAAA;AAAA,KACvC,CAAA;AAAA,GAEJ;AACF,CAAA;;ACtDO,MAAM,YAAe,GAAAF,yBAAA,CAAM,UAGhC,CAAA,CAAC,EAAE,YAAA,EAAc,SAAW,EAAA,KAAA,EAAO,QAAU,EAAA,GAAG,SAAU,EAAA,EAAG,UAAe,KAAA;AAC5E,EAAM,MAAA;AAAA,IACJ,KAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAA;AAAA,MACE,eAAgB,EAAA,CAAA;AAEpB,EAAA,MAAM,aAAgB,GAAA,KAAA,KAAU,KAAa,CAAA,IAAAH,4BAAA,CAAW,OAAO,CAAA,CAAA;AAE/D,EAAA,MAAM,aAAgB,GAAA,MAAA,CAAO,IAAK,CAAA,SAAS,CAAE,CAAA,IAAA;AAAA,IAAK,CAAA,GAAA,KAChD,GAAI,CAAA,UAAA,CAAW,SAAS,CAAA;AAAA,GAC1B,CAAA;AACA,EAAA,MAAM,iBAAiB,SAAU,CAAA,QAAA,CAAA;AAEjC,EAAA,MAAM,YACJ,mBAAAC,cAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MACC,IAAK,EAAA,QAAA;AAAA,MACJ,GAAG,SAAA;AAAA,MACJ,cAAY,SAAa,IAAA,IAAA,GAAA,SAAA,GAAA,KAAA;AAAA,MACzB,QAAU,EAAA,aAAA,GAAgB,cAAiB,GAAA,cAAA,IAAA,IAAA,GAAA,cAAA,GAAkB,CAAC,QAAA;AAAA,MAC9D,iBAAA,EACE,gBACI,CAACD,4BAAA,CAAW,QAAQ,CAAK,IAAA,cAAA,GACzBA,4BAAW,CAAA,QAAA,IAAA,IAAA,GAAA,QAAA,GAAY,YAAY,CAAA;AAAA,MAEzC,kBAAoB,EAAA,QAAA;AAAA,MACpB,GAAK,EAAAK,2BAAA,CAAU,CAAC,UAAA,EAAY,eAAe,CAAC,CAAA;AAAA,MAE3C,QAAA;AAAA,KAAA;AAAA,GACH,CAAA;AAGF,EAAA,IAAI,CAAC,aAAA;AAAe,IAAA,uBAASJ,cAAA,CAAAK,mBAAA,EAAA,EAAA,CAAA,CAAA;AAE7B,EAAA,IAAA,CACG,UAAU,KAAa,CAAA,IAAA,KAAA,KAAU,OAClC,SAAc,KAAA,KAAA,CAAA,IACd,cAAc,EACd,EAAA;AACA,IAAO,OAAA,YAAA,CAAA;AAAA,GACT;AAEA,EAAA,uCACGC,2BACC,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAAN,cAAA,CAACM,2BAAQ,CAAA,OAAA,EAAR,EAAgB,OAAA,EAAO,MAAE,QAAa,EAAA,YAAA,EAAA,CAAA;AAAA,oBACtCN,cAAA,CAAAM,2BAAA,CAAQ,OAAR,EAAA,EAAiB,QAAM,EAAA,KAAA,EAAA,CAAA;AAAA,GAC1B,EAAA,CAAA,CAAA;AAEJ,CAAC,CAAA;;ACjEY,MAAA,QAAA,GAAWJ,0BAAM,UAG5B,CAAA,CAAC,EAAE,QAAU,EAAA,GAAG,SAAU,EAAA,EAAG,UAAe,KAAA;AAC5C,EAAM,MAAA;AAAA,IACJ,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,cAAA;AAAA,IACA,OAAA;AAAA,MACE,eAAgB,EAAA,CAAA;AACpB,EAAM,MAAA,iBAAA,GAAoBK,oCAAmB,CAAA,QAAA,EAAUC,oCAAiB,EAAA;AAAA,IACtE,IAAM,EAAA,OAAA;AAAA,IACN,MAAQ,EAAA,MAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAAC,2CAAA,CAAgB,MAAM;AACpB,IAAA,cAAA,CAAe,IAAI,CAAA,CAAA;AACnB,IAAO,OAAA,MAAM,eAAe,KAAK,CAAA,CAAA;AAAA,GACnC,EAAG,CAAC,cAAc,CAAC,CAAA,CAAA;AAEnB,EACE,uBAAAT,cAAA;AAAA,IAAC,cAAA;AAAA,IAAA;AAAA,MACE,GAAG,SAAA;AAAA,MACJ,OAAA;AAAA,MACA,QAAA,EAAUD,4BAAW,CAAA,QAAA,IAAA,IAAA,GAAA,QAAA,GAAY,YAAY,CAAA;AAAA,MAC7C,GAAK,EAAA,UAAA;AAAA,MAEJ,QAAA,EAAA,iBAAA;AAAA,KAAA;AAAA,GACH,CAAA;AAEJ,CAAC,CAAA,CAAA;AAED,QAAA,CAAS,WAAc,GAAA,UAAA;;ACHvB,MAAM,IAAA,GAAOG,yBAAM,CAAA,UAAA,CAGjB,CAAC,EAAE,UAAU,IAAM,EAAA,GAAG,SAAU,EAAA,EAAG,UAAe,KAAA;AAClD,EAAM,MAAA,GAAA,GAAML,aAAuB,IAAI,CAAA,CAAA;AACvC,EAAM,MAAA;AAAA,IACJ,KAAA;AAAA,IACA,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,QAAA;AAAA,IACA,OAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAA;AAAA,IACA,UAAA;AAAA,IACA,EAAA;AAAA,IACA,OAAA;AAAA,MACE,eAAgB,EAAA,CAAA;AACpB,EAAA,MAAM,EAAE,UAAA,EAAY,SAAW,EAAA,OAAA,KAAYa,qBAAS,CAAA;AAAA,IAClD,aAAe,EAAA,UAAA;AAAA,GAChB,CAAA,CAAA;AAED,EAAM,MAAA,EAAE,UAAW,EAAA,GAAIC,6BAAS,CAAA;AAAA,IAC9B,cAAc,CAAK,CAAA,KAAA;AACjB,MAAM,MAAA,EAAE,MAAO,EAAA,GAAI,CAAE,CAAA,aAAA,CAAA;AAErB,MAAA,MAAM,gBACJ,QAAS,CAAA,aAAA,KAAkB,QAAS,CAAA,OAAA,IACpC,WAAW,QAAS,CAAA,OAAA,CAAA;AAGtB,MAAA,IAAI,aAAe,EAAA;AACjB,QAAA,CAAA,CAAE,cAAc,cAAe,EAAA,CAAA;AAAA,OACjC;AAAA,KACF;AAAA,IACA,YAAY,CAAK,CAAA,KAAA;AA5ErB,MAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AA6EM,MAAM,MAAA,EAAE,MAAO,EAAA,GAAI,CAAE,CAAA,aAAA,CAAA;AAErB,MAAM,MAAA,cAAA,GACJ,WAAW,eAAgB,CAAA,OAAA,IAAA,CAAA,CAC3B,qBAAgB,OAAhB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAyB,SAAS,MAAoB,CAAA,MAAA,IAAA,CAAA;AAExD,MAAM,MAAA,gBAAA,GACJ,CAAC,cAAkB,IAAA,CAACZ,6BAAW,QAAQ,CAAA,IAAK,CAACA,4BAAA,CAAW,OAAO,CAAA,CAAA;AAEjE,MAAA,IAAI,gBAAkB,EAAA;AACpB,QAAA,CAAA,EAAA,GAAA,QAAA,CAAS,YAAT,IAAkB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAClB,QAAA,UAAA,CAAW,IAAI,CAAA,CAAA;AAAA,OACjB;AAAA,KACF;AAAA,IACA,mBAAqB,EAAA,MAAA;AAAA,GACtB,CAAA,CAAA;AAED,EAAA,MAAM,sBACJ,GAAAA,4BAAA,CAAW,YAAY,CAAA,IAAKA,6BAAW,QAAQ,CAAA,CAAA;AAGjD,EAAM,MAAA,gBAAA,GACJ,CAACA,4BAAA,CAAW,QAAQ,CAAA,IACpB,CAAC,sBAAA,IACD,CAAC,OAAA,IACD,CAAC,OAAA,IACD,KAAU,KAAA,KAAA,CAAA,CAAA;AACZ,EAAM,MAAA,SAAA,GACJ,KAAU,KAAA,IAAA,GAAO,mBAAsB,GAAA,gCAAA,CAAA;AAEzC,EACE,uBAAAa,eAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACE,GAAGC,gBAAA,CAAW,SAAW,EAAA,UAAA,EAAY,UAAU,CAAA;AAAA,MAChD,cAAA,EAAcC,qCAAoB,CAAA,KAAA,KAAU,KAAK,CAAA;AAAA,MACjD,YAAA,EAAYA,qCAAoB,CAAA,KAAA,KAAU,IAAI,CAAA;AAAA,MAC9C,mBAAkB,EAAA,OAAA;AAAA,MAClB,GAAK,EAAAV,2BAAA,CAAU,CAAC,GAAA,EAAK,UAAU,CAAC,CAAA;AAAA,MAChC,IAAA;AAAA,MACA,EAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA,EAAUL,6BAAW,QAAQ,CAAA;AAAA,MAC7B,YAAA,EAAcA,6BAAW,YAAY,CAAA;AAAA,MACrC,QAAA,EAAUA,6BAAW,QAAQ,CAAA;AAAA,MAC7B,aACE,EAAA,OAAA,CAAQ,GAAI,CAAA,QAAA,KAAa,SAAS,iBAAoB,GAAA,KAAA,CAAA;AAAA,MAGvD,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,CAAC,EAAM,IAAA,gBAAA,oBACLC,cAAA,CAAA,iBAAA,EAAA,EACC,QAAC,kBAAAA,cAAA,CAAA,SAAA,EAAA,EAAU,IAAK,EAAA,OAAA,EAAQ,MAAO,EAAA,MAAA,EAAO,CACxC,EAAA,CAAA;AAAA,OAAA;AAAA,KAAA;AAAA,GAEJ,CAAA;AAEJ,CAAC,CAAA,CAAA;AAIM,MAAM,YAAYE,yBAAM,CAAA,UAAA;AAAA,EAI7B,CACE;AAAA,IACE,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,OAAA;AAAA,IACA,GAAG,SAAA;AAAA,KAEL,UACG,KAAA;AACH,IAAM,MAAA,CAAC,EAAE,CAAA,GAAIa,4CAAqB,EAAA,CAAA;AAElC,IACE,uBAAAf,cAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,KAAA;AAAA,QACA,QAAA;AAAA,QACA,eAAe,EAAA,YAAA;AAAA,QACf,QAAA;AAAA,QACA,QAAA;AAAA,QACA,QAAA;AAAA,QACA,OAAA;AAAA,QACA,EAAA;AAAA,QAEA,QAAC,kBAAAA,cAAA,CAAA,IAAA,EAAA,EAAM,GAAG,SAAA,EAAW,KAAK,UAAY,EAAA,CAAA;AAAA,OAAA;AAAA,KACxC,CAAA;AAAA,GAEJ;AACF,EAAA;AAUA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAClB,SAAA,CAAU,YAAe,GAAA,YAAA,CAAA;AACzB,SAAA,CAAU,QAAW,GAAA,QAAA;;;;;"}
package/dist/module.js CHANGED
@@ -4,6 +4,7 @@ import { booleanify, mergeRefs, addPropsToChildren, booleanishAttrValue } from '
4
4
  import { usePress } from '@mirohq/design-system-use-press';
5
5
  import { useHover } from '@react-aria/interactions';
6
6
  import { mergeProps } from '@react-aria/utils';
7
+ import { useNewDesignLanguage } from '@mirohq/design-system-experiments';
7
8
  import { Primitive } from '@mirohq/design-system-primitive';
8
9
  import { styled } from '@mirohq/design-system-stitches';
9
10
  import { IconExclamationPointCircle, IconCheckMark } from '@mirohq/design-system-icons';
@@ -24,6 +25,12 @@ const StyledIconSlot = styled(Primitive.div, {
24
25
  pointerEvents: "none"
25
26
  },
26
27
  variants: {
28
+ variant: {
29
+ outline: {},
30
+ subtle: {
31
+ color: "$icon-neutrals"
32
+ }
33
+ },
27
34
  disabled: {
28
35
  true: {
29
36
  "& svg": {
@@ -75,12 +82,19 @@ const StyledBaseInput = styled("div", {
75
82
  height: "max-content",
76
83
  ...textFieldStyles.variants.idle,
77
84
  variants: {
85
+ v1: {
86
+ true: textFieldStyles.v1.idle
87
+ },
88
+ variant: {
89
+ outline: {},
90
+ subtle: {}
91
+ },
78
92
  hovered: {
79
93
  true: {},
80
94
  false: {}
81
95
  },
82
96
  focused: {
83
- true: textFieldStyles.variants.focused,
97
+ true: {},
84
98
  false: {}
85
99
  },
86
100
  valid: {
@@ -158,20 +172,44 @@ const StyledBaseInput = styled("div", {
158
172
  ariaDisabled: false,
159
173
  css: textFieldStyles.variants.valid.idle
160
174
  },
161
- /** Focus States */
162
175
  {
163
- focused: true,
176
+ readOnly: true,
177
+ v1: true,
178
+ css: textFieldStyles.v1.readOnly
179
+ },
180
+ {
181
+ variant: "subtle",
182
+ valid: void 0,
183
+ hovered: false,
164
184
  readOnly: false,
185
+ disabled: false,
186
+ ariaDisabled: false,
187
+ css: {
188
+ backgroundColor: "$background-neutrals-subtle",
189
+ borderColor: "transparent"
190
+ }
191
+ },
192
+ {
193
+ v1: true,
194
+ size: "x-large",
165
195
  css: {
166
- borderColor: textFieldStyles.variants.focused.borderColor
196
+ fontSize: "$200",
197
+ lineHeight: "$500"
167
198
  }
168
199
  },
200
+ /** Focus States */
201
+ {
202
+ focused: true,
203
+ v1: false,
204
+ css: textFieldStyles.variants.focused
205
+ },
169
206
  {
170
207
  focused: true,
171
208
  readOnly: false,
172
209
  valid: false,
173
210
  disabled: false,
174
211
  ariaDisabled: false,
212
+ v1: false,
175
213
  css: textFieldStyles.variants.invalid.focused
176
214
  },
177
215
  {
@@ -180,8 +218,32 @@ const StyledBaseInput = styled("div", {
180
218
  valid: true,
181
219
  disabled: false,
182
220
  ariaDisabled: false,
221
+ v1: false,
183
222
  css: textFieldStyles.variants.valid.focused
184
223
  },
224
+ {
225
+ focused: true,
226
+ v1: true,
227
+ css: textFieldStyles.v1.focused
228
+ },
229
+ {
230
+ focused: true,
231
+ readOnly: false,
232
+ valid: false,
233
+ disabled: false,
234
+ ariaDisabled: false,
235
+ v1: true,
236
+ css: textFieldStyles.v1.invalid.focused
237
+ },
238
+ {
239
+ focused: true,
240
+ readOnly: false,
241
+ valid: true,
242
+ disabled: false,
243
+ ariaDisabled: false,
244
+ v1: true,
245
+ css: textFieldStyles.v1.valid.focused
246
+ },
185
247
  /** Hover states */
186
248
  {
187
249
  hovered: true,
@@ -207,6 +269,17 @@ const StyledBaseInput = styled("div", {
207
269
  disabled: false,
208
270
  ariaDisabled: false,
209
271
  css: textFieldStyles.variants.valid.hovered
272
+ },
273
+ {
274
+ variant: "subtle",
275
+ valid: void 0,
276
+ hovered: true,
277
+ readOnly: false,
278
+ disabled: false,
279
+ ariaDisabled: false,
280
+ css: {
281
+ backgroundColor: "$background-neutrals-subtle-hover"
282
+ }
210
283
  }
211
284
  ],
212
285
  defaultVariants: {
@@ -224,14 +297,26 @@ const StyledInput = styled(Primitive.input, {
224
297
  order: 2,
225
298
  padding: "0 $50",
226
299
  height: "100%",
227
- "&::placeholder": {
228
- fontStyle: "italic"
229
- },
230
- ["&:not(".concat(disabledAndReadonlySelectors, ")::placeholder")]: textFieldStyles.base.placeholder,
231
- "&:read-only": {
232
- color: textFieldStyles.variants.readOnly.color
233
- },
234
- "&:disabled, &[aria-disabled=true], &[data-disabled]": textFieldStyles.base.disabled
300
+ "&:disabled, &[aria-disabled=true], &[data-disabled]": textFieldStyles.base.disabled,
301
+ variants: {
302
+ v1: {
303
+ true: {
304
+ ["&:not(".concat(disabledAndReadonlySelectors, ")::placeholder")]: textFieldStyles.base.placeholder.v1,
305
+ "&:read-only": {
306
+ color: textFieldStyles.v1.readOnly.color
307
+ }
308
+ },
309
+ false: {
310
+ "&::placeholder": {
311
+ fontStyle: "italic"
312
+ },
313
+ ["&:not(".concat(disabledAndReadonlySelectors, ")::placeholder")]: textFieldStyles.base.placeholder.old,
314
+ "&:read-only": {
315
+ color: textFieldStyles.variants.readOnly.color
316
+ }
317
+ }
318
+ }
319
+ }
235
320
  });
236
321
 
237
322
  const InputContext = createContext({});
@@ -290,7 +375,8 @@ const Input = React.forwardRef(
290
375
  inputRef,
291
376
  required,
292
377
  readOnly,
293
- onChange
378
+ onChange,
379
+ v1
294
380
  } = useInputContext();
295
381
  const { onBlur, onFocus, ...elementProps } = useAriaDisabled({
296
382
  ...restProps,
@@ -314,6 +400,7 @@ const Input = React.forwardRef(
314
400
  StyledInput,
315
401
  {
316
402
  ...elementProps,
403
+ v1,
317
404
  id,
318
405
  readOnly,
319
406
  "aria-describedby": ariaDescribedBy,
@@ -372,7 +459,8 @@ const IconSlot = React.forwardRef(({ children, ...restProps }, forwardRef) => {
372
459
  const {
373
460
  "aria-disabled": ariaDisabled,
374
461
  disabled,
375
- setHasIconSlot
462
+ setHasIconSlot,
463
+ variant
376
464
  } = useInputContext();
377
465
  const formattedChildren = addPropsToChildren(children, isIconComponent, {
378
466
  size: "small",
@@ -386,6 +474,7 @@ const IconSlot = React.forwardRef(({ children, ...restProps }, forwardRef) => {
386
474
  StyledIconSlot,
387
475
  {
388
476
  ...restProps,
477
+ variant,
389
478
  disabled: booleanify(disabled != null ? disabled : ariaDisabled),
390
479
  ref: forwardRef,
391
480
  children: formattedChildren
@@ -405,7 +494,9 @@ const Root = React.forwardRef(({ children, size, ...restProps }, forwardRef) =>
405
494
  setHovered,
406
495
  inputRef,
407
496
  actionButtonRef,
408
- setFocused
497
+ setFocused,
498
+ v1,
499
+ variant
409
500
  } = useInputContext();
410
501
  const { hoverProps, isHovered: hovered } = useHover({
411
502
  onHoverChange: setHovered
@@ -442,6 +533,8 @@ const Root = React.forwardRef(({ children, size, ...restProps }, forwardRef) =>
442
533
  "data-form-element": "input",
443
534
  ref: mergeRefs([ref, forwardRef]),
444
535
  size,
536
+ v1,
537
+ variant,
445
538
  hovered,
446
539
  focused,
447
540
  valid,
@@ -451,7 +544,7 @@ const Root = React.forwardRef(({ children, size, ...restProps }, forwardRef) =>
451
544
  "data-testid": process.env.NODE_ENV === "test" ? "input-container" : void 0,
452
545
  children: [
453
546
  children,
454
- showValidityIcon && /* @__PURE__ */ jsx(StyledValidityBox, { children: /* @__PURE__ */ jsx(ValidIcon, { size: "small", weight: "thin" }) })
547
+ !v1 && showValidityIcon && /* @__PURE__ */ jsx(StyledValidityBox, { children: /* @__PURE__ */ jsx(ValidIcon, { size: "small", weight: "thin" }) })
455
548
  ]
456
549
  }
457
550
  );
@@ -464,19 +557,25 @@ const BaseInput = React.forwardRef(
464
557
  readOnly,
465
558
  required,
466
559
  onChange,
560
+ variant,
467
561
  ...restProps
468
- }, forwardRef) => /* @__PURE__ */ jsx(
469
- InputProvider,
470
- {
471
- valid,
472
- disabled,
473
- "aria-disabled": ariaDisabled,
474
- readOnly,
475
- required,
476
- onChange,
477
- children: /* @__PURE__ */ jsx(Root, { ...restProps, ref: forwardRef })
478
- }
479
- )
562
+ }, forwardRef) => {
563
+ const [v1] = useNewDesignLanguage();
564
+ return /* @__PURE__ */ jsx(
565
+ InputProvider,
566
+ {
567
+ valid,
568
+ disabled,
569
+ "aria-disabled": ariaDisabled,
570
+ readOnly,
571
+ required,
572
+ onChange,
573
+ variant,
574
+ v1,
575
+ children: /* @__PURE__ */ jsx(Root, { ...restProps, ref: forwardRef })
576
+ }
577
+ );
578
+ }
480
579
  );
481
580
  BaseInput.Input = Input;
482
581
  BaseInput.ActionButton = ActionButton;
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sources":["../src/partials/icon-slot.styled.tsx","../src/partials/action-button.styled.tsx","../src/base-input.styled.tsx","../src/partials/input.styled.tsx","../src/hooks/use-input-context.tsx","../src/partials/input.tsx","../src/partials/action-button.tsx","../src/partials/icon-slot.tsx","../src/base-input.tsx"],"sourcesContent":["import { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { Primitive } from '@mirohq/design-system-primitive'\n\nexport const StyledIconSlot = styled(Primitive.div, {\n order: 1,\n alignContent: 'center',\n display: 'flex',\n justifyContent: 'center',\n color: '$icon-neutrals-subtle',\n\n '& svg, & img': {\n pointerEvents: 'none',\n },\n\n variants: {\n disabled: {\n true: {\n '& svg': {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n },\n})\n\nexport type StyledIconSlotProps = ComponentPropsWithRef<typeof StyledIconSlot>\n","import { styled } from '@mirohq/design-system-stitches'\nimport { BaseButton } from '@mirohq/design-system-base-button'\nimport type { ComponentPropsWithRef } from 'react'\nimport { actionButtonStyles } from '@mirohq/design-system-base-text-field'\n\nexport const StyledActionButton = styled(BaseButton, {\n ...actionButtonStyles,\n order: 3,\n\n variants: {\n readOnlyAppearance: {\n true: {\n '& svg[data-icon-component], & img[data-icon-component]': {\n color: '$icon-neutrals-subtle',\n },\n },\n },\n disableAppearance: {\n true: {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n})\n\nexport type StyledActionButtonProps = ComponentPropsWithRef<\n typeof StyledActionButton\n>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport {\n IconExclamationPointCircle,\n IconCheckMark,\n} from '@mirohq/design-system-icons'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nimport { StyledIconSlot } from './partials/icon-slot.styled'\nimport { StyledActionButton } from './partials/action-button.styled'\n\nexport const StyledIconExclamationPointCircle = styled(\n IconExclamationPointCircle,\n {\n color: '$icon-danger',\n }\n)\n\nexport const StyledIconCheckMark = styled(IconCheckMark, {\n color: '$icon-success',\n})\n\nexport const StyledValidityBox = styled(Primitive.div, {\n order: 3,\n display: 'flex',\n alignItems: 'center',\n padding: '6px',\n})\n\nexport const StyledBaseInput = styled('div', {\n position: 'relative',\n alignItems: 'center',\n display: 'inline-flex',\n height: 'max-content',\n ...textFieldStyles.variants.idle,\n\n variants: {\n hovered: {\n true: {},\n false: {},\n },\n focused: {\n true: textFieldStyles.variants.focused,\n false: {},\n },\n valid: {\n true: {},\n false: {},\n },\n readOnly: {\n true: textFieldStyles.variants.readOnly,\n false: {},\n },\n disabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n ariaDisabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n size: {\n medium: {\n fontSize: '$175',\n height: '$8',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n large: {\n height: '$10',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n 'x-large': {\n height: '$12',\n padding: '0 $150',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$100',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$100',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n },\n },\n compoundVariants: [\n /** Idle states */\n {\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.idle,\n },\n {\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.idle,\n },\n /** Focus States */\n {\n focused: true,\n readOnly: false,\n css: {\n borderColor: textFieldStyles.variants.focused.borderColor,\n },\n },\n {\n focused: true,\n readOnly: false,\n valid: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: true,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.focused,\n },\n /** Hover states */\n {\n hovered: true,\n disabled: false,\n ariaDisabled: false,\n readOnly: false,\n css: textFieldStyles.variants.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.hovered,\n },\n ],\n defaultVariants: {\n size: 'large',\n },\n})\n\nexport type StyledBaseInputProps = ComponentPropsWithRef<typeof StyledBaseInput>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nconst disabledAndReadonlySelectors =\n ':read-only, :disabled, [aria-disabled=\"true\"], [data-disabled]'\n\nexport const StyledInput = styled(Primitive.input, {\n all: 'unset',\n background: 'transparent',\n color: '$text-neutrals',\n width: '100%',\n borderRadius: '$50',\n order: 2,\n padding: '0 $50',\n height: '100%',\n\n '&::placeholder': {\n fontStyle: 'italic',\n },\n\n [`&:not(${disabledAndReadonlySelectors})::placeholder`]:\n textFieldStyles.base.placeholder,\n\n '&:read-only': {\n color: textFieldStyles.variants.readOnly.color,\n },\n\n '&:disabled, &[aria-disabled=true], &[data-disabled]':\n textFieldStyles.base.disabled,\n})\n\nexport type StyledInputProps = ComponentPropsWithRef<typeof StyledInput>\n","import React, { createContext, useContext, useState, useRef } from 'react'\nimport type { PropsWithChildren } from 'react'\nimport { booleanify } from '@mirohq/design-system-utils'\nimport type { FormElementProps } from '@mirohq/design-system-base-form'\n\ninterface InputProps extends FormElementProps {\n onChange?: React.ChangeEventHandler<HTMLInputElement>\n}\n\ninterface InputContextProps extends InputProps {\n focused: boolean\n setFocused: React.Dispatch<React.SetStateAction<boolean>>\n hovered: boolean\n setHovered: React.Dispatch<React.SetStateAction<boolean>>\n hasIconSlot: boolean\n setHasIconSlot: React.Dispatch<React.SetStateAction<boolean>>\n actionButtonRef: React.RefObject<HTMLAnchorElement | HTMLButtonElement>\n inputRef: React.RefObject<HTMLInputElement>\n editable: boolean\n}\n\nexport type InputProviderProps = InputProps\n\nconst InputContext = createContext<InputContextProps>({} as any)\n\nexport const InputProvider = ({\n children,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n required,\n valid,\n ...restProps\n}: PropsWithChildren<InputProviderProps>): JSX.Element => {\n const actionButtonRef = useRef<HTMLAnchorElement | HTMLButtonElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n const [focused, setFocused] = useState(false)\n const [hovered, setHovered] = useState(false)\n const [hasIconSlot, setHasIconSlot] = useState(false)\n const editable =\n !booleanify(disabled) && !booleanify(ariaDisabled) && !booleanify(readOnly)\n\n return (\n <InputContext.Provider\n value={{\n ...restProps,\n setFocused,\n setHovered,\n setHasIconSlot,\n hasIconSlot,\n hovered,\n focused,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n editable,\n inputRef,\n actionButtonRef,\n required,\n valid,\n }}\n >\n {children}\n </InputContext.Provider>\n )\n}\n\nexport const useInputContext = (): InputContextProps => useContext(InputContext)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs } from '@mirohq/design-system-utils'\nimport { useAriaDisabled } from '@mirohq/design-system-use-aria-disabled'\n\nimport { StyledInput } from './input.styled'\nimport type { StyledInputProps } from './input.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type InputProps = Omit<\n StyledInputProps,\n // these props should be set in the root\n 'aria-disabled' | 'disabled' | 'readOnly' | 'required' | 'onChange'\n>\n\nexport const Input = React.forwardRef<\n ElementRef<typeof StyledInput>,\n InputProps\n>(\n (\n {\n id,\n 'aria-describedby': ariaDescribedBy,\n 'aria-invalid': ariaInvalid,\n ...restProps\n },\n forwardRef\n ) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setFocused,\n inputRef,\n required,\n readOnly,\n onChange,\n } = useInputContext()\n\n const { onBlur, onFocus, ...elementProps } = useAriaDisabled({\n ...restProps,\n ariaDisabled,\n })\n\n const onFocusHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true)\n onFocus?.(e)\n },\n [setFocused, onFocus]\n )\n const onBlurHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false)\n onBlur?.(e)\n },\n [setFocused, onBlur]\n )\n\n return (\n <StyledInput\n {...elementProps}\n id={id}\n readOnly={readOnly}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n disabled={disabled === true || undefined}\n required={required === true || undefined}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onChange={onChange}\n ref={mergeRefs([inputRef, forwardRef])}\n />\n )\n }\n)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs, booleanify } from '@mirohq/design-system-utils'\nimport { Tooltip } from '@mirohq/design-system-tooltip'\n\nimport { StyledActionButton } from './action-button.styled'\nimport type { StyledActionButtonProps } from './action-button.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type ActionButtonProps = StyledActionButtonProps &\n (\n | {\n label: string\n 'aria-label'?: string\n }\n // force aria-label if label is not present\n | {\n label?: never\n 'aria-label': string\n }\n )\n\nexport const ActionButton = React.forwardRef<\n ElementRef<typeof StyledActionButton>,\n ActionButtonProps\n>(({ 'aria-label': ariaLabel, label, children, ...restProps }, forwardRef) => {\n const {\n valid,\n hovered,\n editable,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n actionButtonRef,\n } = useInputContext()\n\n const showInputSlot = valid === undefined || booleanify(hovered)\n\n const hasPressEvent = Object.keys(restProps).some(key =>\n key.startsWith('onPress')\n )\n const customDisabled = restProps.disabled\n\n const actionButton = (\n <StyledActionButton\n type='button'\n {...restProps}\n aria-label={ariaLabel ?? label}\n disabled={hasPressEvent ? customDisabled : customDisabled ?? !editable}\n disableAppearance={\n hasPressEvent\n ? !booleanify(readOnly) && customDisabled\n : booleanify(disabled ?? ariaDisabled)\n }\n readOnlyAppearance={readOnly}\n ref={mergeRefs([forwardRef, actionButtonRef])}\n >\n {children}\n </StyledActionButton>\n )\n\n if (!showInputSlot) return <></>\n\n if (\n (label === undefined || label === '') &&\n ariaLabel !== undefined &&\n ariaLabel !== ''\n ) {\n return actionButton\n }\n\n return (\n <Tooltip>\n <Tooltip.Trigger asChild>{actionButton}</Tooltip.Trigger>\n <Tooltip.Content>{label}</Tooltip.Content>\n </Tooltip>\n )\n})\n","import React from 'react'\nimport { addPropsToChildren, booleanify } from '@mirohq/design-system-utils'\nimport { isIconComponent } from '@mirohq/design-system-base-icon'\nimport type { ElementRef } from 'react'\nimport { useLayoutEffect } from '@mirohq/design-system-use-layout-effect'\n\nimport { StyledIconSlot } from './icon-slot.styled'\nimport { useInputContext } from '../hooks/use-input-context'\nimport type { StyledIconSlotProps } from './icon-slot.styled'\n\nexport interface IconSlotProps extends StyledIconSlotProps {}\n\nexport const IconSlot = React.forwardRef<\n ElementRef<typeof StyledIconSlot>,\n StyledIconSlotProps\n>(({ children, ...restProps }, forwardRef) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setHasIconSlot,\n } = useInputContext()\n const formattedChildren = addPropsToChildren(children, isIconComponent, {\n size: 'small',\n weight: 'thin',\n })\n\n useLayoutEffect(() => {\n setHasIconSlot(true)\n return () => setHasIconSlot(false)\n }, [setHasIconSlot])\n\n return (\n <StyledIconSlot\n {...restProps}\n disabled={booleanify(disabled ?? ariaDisabled)}\n ref={forwardRef}\n >\n {formattedChildren}\n </StyledIconSlot>\n )\n})\n\nIconSlot.displayName = 'IconSlot'\n","import React, { useRef } from 'react'\nimport type { ElementRef, ForwardRefExoticComponent } from 'react'\nimport {\n booleanify,\n booleanishAttrValue,\n mergeRefs,\n} from '@mirohq/design-system-utils'\nimport { usePress } from '@mirohq/design-system-use-press'\nimport { useHover } from '@react-aria/interactions'\nimport { mergeProps } from '@react-aria/utils'\n\nimport type { StyledBaseInputProps } from './base-input.styled'\nimport {\n StyledBaseInput,\n StyledValidityBox,\n StyledIconExclamationPointCircle,\n StyledIconCheckMark,\n} from './base-input.styled'\nimport { Input } from './partials/input'\nimport type { InputProviderProps } from './hooks/use-input-context'\nimport { InputProvider, useInputContext } from './hooks/use-input-context'\nimport { ActionButton } from './partials/action-button'\nimport { IconSlot } from './partials/icon-slot'\n\ntype BaseInputRootProps = Omit<\n StyledBaseInputProps,\n // these props come from useInputContext, we don't pass it to BaseInput directly\n | 'hovered'\n | 'focused'\n | 'valid'\n | 'readOnly'\n | 'disabled'\n | 'ariaDisabled'\n // these shouldn't be applied to div\n | 'value'\n | 'defaultValue'\n | 'placeholder'\n>\n\nconst Root = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputRootProps\n>(({ children, size, ...restProps }, forwardRef) => {\n const ref = useRef<HTMLDivElement>(null)\n const {\n valid,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n focused,\n setHovered,\n inputRef,\n actionButtonRef,\n setFocused,\n } = useInputContext()\n const { hoverProps, isHovered: hovered } = useHover({\n onHoverChange: setHovered,\n })\n\n const { pressProps } = usePress({\n onPressStart: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const shouldPrevent =\n document.activeElement === inputRef.current &&\n target !== inputRef.current // to not stop text selection\n\n // to not lose focus on container click\n if (shouldPrevent) {\n e.originalEvent.preventDefault()\n }\n },\n onPressEnd: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const isActionButton =\n target === actionButtonRef.current ||\n actionButtonRef.current?.contains(target as Node) === true\n\n const shouldFocusInput =\n !isActionButton && !booleanify(disabled) && !booleanify(focused)\n\n if (shouldFocusInput) {\n inputRef.current?.focus()\n setFocused(true)\n }\n },\n preventFocusOnPress: 'auto',\n })\n\n const ariaDisabledOrDisabled =\n booleanify(ariaDisabled) || booleanify(disabled)\n\n // validity\n const showValidityIcon =\n !booleanify(readOnly) &&\n !ariaDisabledOrDisabled &&\n !hovered &&\n !focused &&\n valid !== undefined\n const ValidIcon =\n valid === true ? StyledIconCheckMark : StyledIconExclamationPointCircle\n\n return (\n <StyledBaseInput\n {...mergeProps(restProps, hoverProps, pressProps)}\n data-invalid={booleanishAttrValue(valid === false)}\n data-valid={booleanishAttrValue(valid === true)}\n data-form-element='input'\n ref={mergeRefs([ref, forwardRef])}\n size={size}\n hovered={hovered}\n focused={focused}\n valid={valid}\n disabled={booleanify(disabled)}\n ariaDisabled={booleanify(ariaDisabled)}\n readOnly={booleanify(readOnly)}\n data-testid={\n process.env.NODE_ENV === 'test' ? 'input-container' : undefined\n }\n >\n {children}\n {showValidityIcon && (\n <StyledValidityBox>\n <ValidIcon size='small' weight='thin' />\n </StyledValidityBox>\n )}\n </StyledBaseInput>\n )\n})\n\nexport type BaseInputProps = BaseInputRootProps & InputProviderProps\n\nexport const BaseInput = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputProps\n>(\n (\n {\n 'aria-disabled': ariaDisabled,\n disabled,\n valid,\n readOnly,\n required,\n onChange,\n ...restProps\n },\n forwardRef\n ) => (\n <InputProvider\n valid={valid}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n readOnly={readOnly}\n required={required}\n onChange={onChange}\n >\n <Root {...restProps} ref={forwardRef} />\n </InputProvider>\n )\n) as ForwardRefExoticComponent<BaseInputProps> & Partials\n\n// Partials\n// -----------------------------------------------------------------------------\nexport interface Partials {\n Input: typeof Input\n ActionButton: typeof ActionButton\n IconSlot: typeof IconSlot\n}\n\nBaseInput.Input = Input\nBaseInput.ActionButton = ActionButton\nBaseInput.IconSlot = IconSlot\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sources":["../src/partials/icon-slot.styled.tsx","../src/partials/action-button.styled.tsx","../src/base-input.styled.tsx","../src/partials/input.styled.tsx","../src/hooks/use-input-context.tsx","../src/partials/input.tsx","../src/partials/action-button.tsx","../src/partials/icon-slot.tsx","../src/base-input.tsx"],"sourcesContent":["import { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { Primitive } from '@mirohq/design-system-primitive'\n\nexport const StyledIconSlot = styled(Primitive.div, {\n order: 1,\n alignContent: 'center',\n display: 'flex',\n justifyContent: 'center',\n color: '$icon-neutrals-subtle',\n\n '& svg, & img': {\n pointerEvents: 'none',\n },\n\n variants: {\n variant: {\n outline: {},\n subtle: {\n color: '$icon-neutrals',\n },\n },\n disabled: {\n true: {\n '& svg': {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n },\n})\n\nexport type StyledIconSlotProps = ComponentPropsWithRef<typeof StyledIconSlot>\n","import { styled } from '@mirohq/design-system-stitches'\nimport { BaseButton } from '@mirohq/design-system-base-button'\nimport type { ComponentPropsWithRef } from 'react'\nimport { actionButtonStyles } from '@mirohq/design-system-base-text-field'\n\nexport const StyledActionButton = styled(BaseButton, {\n ...actionButtonStyles,\n order: 3,\n\n variants: {\n readOnlyAppearance: {\n true: {\n '& svg[data-icon-component], & img[data-icon-component]': {\n color: '$icon-neutrals-subtle',\n },\n },\n },\n disableAppearance: {\n true: {\n color: '$icon-neutrals-disabled',\n },\n },\n },\n})\n\nexport type StyledActionButtonProps = ComponentPropsWithRef<\n typeof StyledActionButton\n>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport {\n IconExclamationPointCircle,\n IconCheckMark,\n} from '@mirohq/design-system-icons'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nimport { StyledIconSlot } from './partials/icon-slot.styled'\nimport { StyledActionButton } from './partials/action-button.styled'\n\nexport const StyledIconExclamationPointCircle = styled(\n IconExclamationPointCircle,\n {\n color: '$icon-danger',\n }\n)\n\nexport const StyledIconCheckMark = styled(IconCheckMark, {\n color: '$icon-success',\n})\n\nexport const StyledValidityBox = styled(Primitive.div, {\n order: 3,\n display: 'flex',\n alignItems: 'center',\n padding: '6px',\n})\n\nexport const StyledBaseInput = styled('div', {\n position: 'relative',\n alignItems: 'center',\n display: 'inline-flex',\n height: 'max-content',\n ...textFieldStyles.variants.idle,\n\n variants: {\n v1: {\n true: textFieldStyles.v1.idle,\n },\n variant: {\n outline: {},\n subtle: {},\n },\n hovered: {\n true: {},\n false: {},\n },\n focused: {\n true: {},\n false: {},\n },\n valid: {\n true: {},\n false: {},\n },\n readOnly: {\n true: textFieldStyles.variants.readOnly,\n false: {},\n },\n disabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n ariaDisabled: {\n true: textFieldStyles.variants.disabled,\n false: {},\n },\n size: {\n medium: {\n fontSize: '$175',\n height: '$8',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n large: {\n height: '$10',\n padding: '0 $100 ',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$50',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$50',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n 'x-large': {\n height: '$12',\n padding: '0 $150',\n [`& ${StyledIconSlot}`]: {\n paddingRight: '$100',\n },\n [`& ${StyledActionButton}, & ${StyledValidityBox}`]: {\n marginLeft: '$100',\n },\n [`& ${StyledValidityBox}`]: {\n paddingRight: '6px',\n },\n },\n },\n },\n compoundVariants: [\n /** Idle states */\n {\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.idle,\n },\n {\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.idle,\n },\n {\n readOnly: true,\n v1: true,\n css: textFieldStyles.v1.readOnly,\n },\n {\n variant: 'subtle',\n valid: undefined,\n hovered: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: {\n backgroundColor: '$background-neutrals-subtle',\n borderColor: 'transparent',\n },\n },\n {\n v1: true,\n size: 'x-large',\n css: {\n fontSize: '$200',\n lineHeight: '$500',\n },\n },\n /** Focus States */\n {\n focused: true,\n v1: false,\n css: textFieldStyles.variants.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: false,\n disabled: false,\n ariaDisabled: false,\n v1: false,\n css: textFieldStyles.variants.invalid.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: true,\n disabled: false,\n ariaDisabled: false,\n v1: false,\n css: textFieldStyles.variants.valid.focused,\n },\n {\n focused: true,\n v1: true,\n css: textFieldStyles.v1.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: false,\n disabled: false,\n ariaDisabled: false,\n v1: true,\n css: textFieldStyles.v1.invalid.focused,\n },\n {\n focused: true,\n readOnly: false,\n valid: true,\n disabled: false,\n ariaDisabled: false,\n v1: true,\n css: textFieldStyles.v1.valid.focused,\n },\n /** Hover states */\n {\n hovered: true,\n disabled: false,\n ariaDisabled: false,\n readOnly: false,\n css: textFieldStyles.variants.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: false,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.invalid.hovered,\n },\n {\n hovered: true,\n focused: false,\n valid: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: textFieldStyles.variants.valid.hovered,\n },\n {\n variant: 'subtle',\n valid: undefined,\n hovered: true,\n readOnly: false,\n disabled: false,\n ariaDisabled: false,\n css: {\n backgroundColor: '$background-neutrals-subtle-hover',\n },\n },\n ],\n defaultVariants: {\n size: 'large',\n },\n})\n\nexport type StyledBaseInputProps = ComponentPropsWithRef<typeof StyledBaseInput>\n","import { Primitive } from '@mirohq/design-system-primitive'\nimport { styled } from '@mirohq/design-system-stitches'\nimport type { ComponentPropsWithRef } from 'react'\nimport { textFieldStyles } from '@mirohq/design-system-base-text-field'\n\nconst disabledAndReadonlySelectors =\n ':read-only, :disabled, [aria-disabled=\"true\"], [data-disabled]'\n\nexport const StyledInput = styled(Primitive.input, {\n all: 'unset',\n background: 'transparent',\n color: '$text-neutrals',\n width: '100%',\n borderRadius: '$50',\n order: 2,\n padding: '0 $50',\n height: '100%',\n\n '&:disabled, &[aria-disabled=true], &[data-disabled]':\n textFieldStyles.base.disabled,\n\n variants: {\n v1: {\n true: {\n [`&:not(${disabledAndReadonlySelectors})::placeholder`]:\n textFieldStyles.base.placeholder.v1,\n\n '&:read-only': {\n color: textFieldStyles.v1.readOnly.color,\n },\n },\n false: {\n '&::placeholder': {\n fontStyle: 'italic',\n },\n\n [`&:not(${disabledAndReadonlySelectors})::placeholder`]:\n textFieldStyles.base.placeholder.old,\n\n '&:read-only': {\n color: textFieldStyles.variants.readOnly.color,\n },\n },\n },\n },\n})\n\nexport type StyledInputProps = ComponentPropsWithRef<typeof StyledInput>\n","import React, { createContext, useContext, useState, useRef } from 'react'\nimport type { PropsWithChildren } from 'react'\nimport { booleanify } from '@mirohq/design-system-utils'\nimport type { FormElementProps } from '@mirohq/design-system-base-form'\n\ninterface InputProps extends FormElementProps {\n onChange?: React.ChangeEventHandler<HTMLInputElement>\n v1: boolean\n variant?: 'outline' | 'subtle'\n}\n\ninterface InputContextProps extends InputProps {\n focused: boolean\n setFocused: React.Dispatch<React.SetStateAction<boolean>>\n hovered: boolean\n setHovered: React.Dispatch<React.SetStateAction<boolean>>\n hasIconSlot: boolean\n setHasIconSlot: React.Dispatch<React.SetStateAction<boolean>>\n actionButtonRef: React.RefObject<HTMLAnchorElement | HTMLButtonElement>\n inputRef: React.RefObject<HTMLInputElement>\n editable: boolean\n}\n\nexport type InputProviderProps = InputProps\n\nconst InputContext = createContext<InputContextProps>({} as any)\n\nexport const InputProvider = ({\n children,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n required,\n valid,\n ...restProps\n}: PropsWithChildren<InputProviderProps>): JSX.Element => {\n const actionButtonRef = useRef<HTMLAnchorElement | HTMLButtonElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n const [focused, setFocused] = useState(false)\n const [hovered, setHovered] = useState(false)\n const [hasIconSlot, setHasIconSlot] = useState(false)\n const editable =\n !booleanify(disabled) && !booleanify(ariaDisabled) && !booleanify(readOnly)\n\n return (\n <InputContext.Provider\n value={{\n ...restProps,\n setFocused,\n setHovered,\n setHasIconSlot,\n hasIconSlot,\n hovered,\n focused,\n disabled,\n 'aria-disabled': ariaDisabled,\n readOnly,\n editable,\n inputRef,\n actionButtonRef,\n required,\n valid,\n }}\n >\n {children}\n </InputContext.Provider>\n )\n}\n\nexport const useInputContext = (): InputContextProps => useContext(InputContext)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs } from '@mirohq/design-system-utils'\nimport { useAriaDisabled } from '@mirohq/design-system-use-aria-disabled'\n\nimport { StyledInput } from './input.styled'\nimport type { StyledInputProps } from './input.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type InputProps = Omit<\n StyledInputProps,\n // these props should be set in the root\n 'aria-disabled' | 'disabled' | 'readOnly' | 'required' | 'onChange'\n>\n\nexport const Input = React.forwardRef<\n ElementRef<typeof StyledInput>,\n InputProps\n>(\n (\n {\n id,\n 'aria-describedby': ariaDescribedBy,\n 'aria-invalid': ariaInvalid,\n ...restProps\n },\n forwardRef\n ) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setFocused,\n inputRef,\n required,\n readOnly,\n onChange,\n v1,\n } = useInputContext()\n\n const { onBlur, onFocus, ...elementProps } = useAriaDisabled({\n ...restProps,\n ariaDisabled,\n })\n\n const onFocusHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true)\n onFocus?.(e)\n },\n [setFocused, onFocus]\n )\n const onBlurHandler = React.useCallback(\n (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false)\n onBlur?.(e)\n },\n [setFocused, onBlur]\n )\n\n return (\n <StyledInput\n {...elementProps}\n v1={v1}\n id={id}\n readOnly={readOnly}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n disabled={disabled === true || undefined}\n required={required === true || undefined}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onChange={onChange}\n ref={mergeRefs([inputRef, forwardRef])}\n />\n )\n }\n)\n","import React from 'react'\nimport type { ElementRef } from 'react'\nimport { mergeRefs, booleanify } from '@mirohq/design-system-utils'\nimport { Tooltip } from '@mirohq/design-system-tooltip'\n\nimport { StyledActionButton } from './action-button.styled'\nimport type { StyledActionButtonProps } from './action-button.styled'\nimport { useInputContext } from '../hooks/use-input-context'\n\nexport type ActionButtonProps = StyledActionButtonProps &\n (\n | {\n label: string\n 'aria-label'?: string\n }\n // force aria-label if label is not present\n | {\n label?: never\n 'aria-label': string\n }\n )\n\nexport const ActionButton = React.forwardRef<\n ElementRef<typeof StyledActionButton>,\n ActionButtonProps\n>(({ 'aria-label': ariaLabel, label, children, ...restProps }, forwardRef) => {\n const {\n valid,\n hovered,\n editable,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n actionButtonRef,\n } = useInputContext()\n\n const showInputSlot = valid === undefined || booleanify(hovered)\n\n const hasPressEvent = Object.keys(restProps).some(key =>\n key.startsWith('onPress')\n )\n const customDisabled = restProps.disabled\n\n const actionButton = (\n <StyledActionButton\n type='button'\n {...restProps}\n aria-label={ariaLabel ?? label}\n disabled={hasPressEvent ? customDisabled : customDisabled ?? !editable}\n disableAppearance={\n hasPressEvent\n ? !booleanify(readOnly) && customDisabled\n : booleanify(disabled ?? ariaDisabled)\n }\n readOnlyAppearance={readOnly}\n ref={mergeRefs([forwardRef, actionButtonRef])}\n >\n {children}\n </StyledActionButton>\n )\n\n if (!showInputSlot) return <></>\n\n if (\n (label === undefined || label === '') &&\n ariaLabel !== undefined &&\n ariaLabel !== ''\n ) {\n return actionButton\n }\n\n return (\n <Tooltip>\n <Tooltip.Trigger asChild>{actionButton}</Tooltip.Trigger>\n <Tooltip.Content>{label}</Tooltip.Content>\n </Tooltip>\n )\n})\n","import React from 'react'\nimport { addPropsToChildren, booleanify } from '@mirohq/design-system-utils'\nimport { isIconComponent } from '@mirohq/design-system-base-icon'\nimport type { ElementRef } from 'react'\nimport { useLayoutEffect } from '@mirohq/design-system-use-layout-effect'\n\nimport { StyledIconSlot } from './icon-slot.styled'\nimport { useInputContext } from '../hooks/use-input-context'\nimport type { StyledIconSlotProps } from './icon-slot.styled'\n\nexport interface IconSlotProps extends Omit<StyledIconSlotProps, 'variant'> {}\n\nexport const IconSlot = React.forwardRef<\n ElementRef<typeof StyledIconSlot>,\n StyledIconSlotProps\n>(({ children, ...restProps }, forwardRef) => {\n const {\n 'aria-disabled': ariaDisabled,\n disabled,\n setHasIconSlot,\n variant,\n } = useInputContext()\n const formattedChildren = addPropsToChildren(children, isIconComponent, {\n size: 'small',\n weight: 'thin',\n })\n\n useLayoutEffect(() => {\n setHasIconSlot(true)\n return () => setHasIconSlot(false)\n }, [setHasIconSlot])\n\n return (\n <StyledIconSlot\n {...restProps}\n variant={variant}\n disabled={booleanify(disabled ?? ariaDisabled)}\n ref={forwardRef}\n >\n {formattedChildren}\n </StyledIconSlot>\n )\n})\n\nIconSlot.displayName = 'IconSlot'\n","import React, { useRef } from 'react'\nimport type { ElementRef, ForwardRefExoticComponent } from 'react'\nimport {\n booleanify,\n booleanishAttrValue,\n mergeRefs,\n} from '@mirohq/design-system-utils'\nimport { usePress } from '@mirohq/design-system-use-press'\nimport { useHover } from '@react-aria/interactions'\nimport { mergeProps } from '@react-aria/utils'\nimport { useNewDesignLanguage } from '@mirohq/design-system-experiments'\n\nimport type { StyledBaseInputProps } from './base-input.styled'\nimport {\n StyledBaseInput,\n StyledValidityBox,\n StyledIconExclamationPointCircle,\n StyledIconCheckMark,\n} from './base-input.styled'\nimport { Input } from './partials/input'\nimport type { InputProviderProps } from './hooks/use-input-context'\nimport { InputProvider, useInputContext } from './hooks/use-input-context'\nimport { ActionButton } from './partials/action-button'\nimport { IconSlot } from './partials/icon-slot'\n\ntype BaseInputRootProps = Omit<\n StyledBaseInputProps,\n // these props come from useInputContext, we don't pass it to BaseInput directly\n | 'v1'\n | 'hovered'\n | 'focused'\n | 'valid'\n | 'readOnly'\n | 'disabled'\n | 'ariaDisabled'\n // these shouldn't be applied to div\n | 'value'\n | 'defaultValue'\n | 'placeholder'\n>\n\nconst Root = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputRootProps\n>(({ children, size, ...restProps }, forwardRef) => {\n const ref = useRef<HTMLDivElement>(null)\n const {\n valid,\n 'aria-disabled': ariaDisabled,\n disabled,\n readOnly,\n focused,\n setHovered,\n inputRef,\n actionButtonRef,\n setFocused,\n v1,\n variant,\n } = useInputContext()\n const { hoverProps, isHovered: hovered } = useHover({\n onHoverChange: setHovered,\n })\n\n const { pressProps } = usePress({\n onPressStart: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const shouldPrevent =\n document.activeElement === inputRef.current &&\n target !== inputRef.current // to not stop text selection\n\n // to not lose focus on container click\n if (shouldPrevent) {\n e.originalEvent.preventDefault()\n }\n },\n onPressEnd: e => {\n const { target } = e.originalEvent as PointerEvent\n\n const isActionButton =\n target === actionButtonRef.current ||\n actionButtonRef.current?.contains(target as Node) === true\n\n const shouldFocusInput =\n !isActionButton && !booleanify(disabled) && !booleanify(focused)\n\n if (shouldFocusInput) {\n inputRef.current?.focus()\n setFocused(true)\n }\n },\n preventFocusOnPress: 'auto',\n })\n\n const ariaDisabledOrDisabled =\n booleanify(ariaDisabled) || booleanify(disabled)\n\n // validity\n const showValidityIcon =\n !booleanify(readOnly) &&\n !ariaDisabledOrDisabled &&\n !hovered &&\n !focused &&\n valid !== undefined\n const ValidIcon =\n valid === true ? StyledIconCheckMark : StyledIconExclamationPointCircle\n\n return (\n <StyledBaseInput\n {...mergeProps(restProps, hoverProps, pressProps)}\n data-invalid={booleanishAttrValue(valid === false)}\n data-valid={booleanishAttrValue(valid === true)}\n data-form-element='input'\n ref={mergeRefs([ref, forwardRef])}\n size={size}\n v1={v1}\n variant={variant}\n hovered={hovered}\n focused={focused}\n valid={valid}\n disabled={booleanify(disabled)}\n ariaDisabled={booleanify(ariaDisabled)}\n readOnly={booleanify(readOnly)}\n data-testid={\n process.env.NODE_ENV === 'test' ? 'input-container' : undefined\n }\n >\n {children}\n {!v1 && showValidityIcon && (\n <StyledValidityBox>\n <ValidIcon size='small' weight='thin' />\n </StyledValidityBox>\n )}\n </StyledBaseInput>\n )\n})\n\nexport type BaseInputProps = BaseInputRootProps & Omit<InputProviderProps, 'v1'>\n\nexport const BaseInput = React.forwardRef<\n ElementRef<typeof StyledBaseInput>,\n BaseInputProps\n>(\n (\n {\n 'aria-disabled': ariaDisabled,\n disabled,\n valid,\n readOnly,\n required,\n onChange,\n variant,\n ...restProps\n },\n forwardRef\n ) => {\n const [v1] = useNewDesignLanguage()\n\n return (\n <InputProvider\n valid={valid}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n readOnly={readOnly}\n required={required}\n onChange={onChange}\n variant={variant}\n v1={v1}\n >\n <Root {...restProps} ref={forwardRef} />\n </InputProvider>\n )\n }\n) as ForwardRefExoticComponent<BaseInputProps> & Partials\n\n// Partials\n// -----------------------------------------------------------------------------\nexport interface Partials {\n Input: typeof Input\n ActionButton: typeof ActionButton\n IconSlot: typeof IconSlot\n}\n\nBaseInput.Input = Input\nBaseInput.ActionButton = ActionButton\nBaseInput.IconSlot = IconSlot\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIa,MAAA,cAAA,GAAiB,MAAO,CAAA,SAAA,CAAU,GAAK,EAAA;AAAA,EAClD,KAAO,EAAA,CAAA;AAAA,EACP,YAAc,EAAA,QAAA;AAAA,EACd,OAAS,EAAA,MAAA;AAAA,EACT,cAAgB,EAAA,QAAA;AAAA,EAChB,KAAO,EAAA,uBAAA;AAAA,EAEP,cAAgB,EAAA;AAAA,IACd,aAAe,EAAA,MAAA;AAAA,GACjB;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,OAAS,EAAA;AAAA,MACP,SAAS,EAAC;AAAA,MACV,MAAQ,EAAA;AAAA,QACN,KAAO,EAAA,gBAAA;AAAA,OACT;AAAA,KACF;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAM,EAAA;AAAA,QACJ,OAAS,EAAA;AAAA,UACP,KAAO,EAAA,yBAAA;AAAA,SACT;AAAA,OACF;AAAA,KACF;AAAA,GACF;AACF,CAAC,CAAA;;ACzBY,MAAA,kBAAA,GAAqB,OAAO,UAAY,EAAA;AAAA,EACnD,GAAG,kBAAA;AAAA,EACH,KAAO,EAAA,CAAA;AAAA,EAEP,QAAU,EAAA;AAAA,IACR,kBAAoB,EAAA;AAAA,MAClB,IAAM,EAAA;AAAA,QACJ,wDAA0D,EAAA;AAAA,UACxD,KAAO,EAAA,uBAAA;AAAA,SACT;AAAA,OACF;AAAA,KACF;AAAA,IACA,iBAAmB,EAAA;AAAA,MACjB,IAAM,EAAA;AAAA,QACJ,KAAO,EAAA,yBAAA;AAAA,OACT;AAAA,KACF;AAAA,GACF;AACF,CAAC,CAAA;;ACXM,MAAM,gCAAmC,GAAA,MAAA;AAAA,EAC9C,0BAAA;AAAA,EACA;AAAA,IACE,KAAO,EAAA,cAAA;AAAA,GACT;AACF,CAAA,CAAA;AAEa,MAAA,mBAAA,GAAsB,OAAO,aAAe,EAAA;AAAA,EACvD,KAAO,EAAA,eAAA;AACT,CAAC,CAAA,CAAA;AAEY,MAAA,iBAAA,GAAoB,MAAO,CAAA,SAAA,CAAU,GAAK,EAAA;AAAA,EACrD,KAAO,EAAA,CAAA;AAAA,EACP,OAAS,EAAA,MAAA;AAAA,EACT,UAAY,EAAA,QAAA;AAAA,EACZ,OAAS,EAAA,KAAA;AACX,CAAC,CAAA,CAAA;AAEY,MAAA,eAAA,GAAkB,OAAO,KAAO,EAAA;AAAA,EAC3C,QAAU,EAAA,UAAA;AAAA,EACV,UAAY,EAAA,QAAA;AAAA,EACZ,OAAS,EAAA,aAAA;AAAA,EACT,MAAQ,EAAA,aAAA;AAAA,EACR,GAAG,gBAAgB,QAAS,CAAA,IAAA;AAAA,EAE5B,QAAU,EAAA;AAAA,IACR,EAAI,EAAA;AAAA,MACF,IAAA,EAAM,gBAAgB,EAAG,CAAA,IAAA;AAAA,KAC3B;AAAA,IACA,OAAS,EAAA;AAAA,MACP,SAAS,EAAC;AAAA,MACV,QAAQ,EAAC;AAAA,KACX;AAAA,IACA,OAAS,EAAA;AAAA,MACP,MAAM,EAAC;AAAA,MACP,OAAO,EAAC;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,MAAM,EAAC;AAAA,MACP,OAAO,EAAC;AAAA,KACV;AAAA,IACA,KAAO,EAAA;AAAA,MACL,MAAM,EAAC;AAAA,MACP,OAAO,EAAC;AAAA,KACV;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAA,EAAM,gBAAgB,QAAS,CAAA,QAAA;AAAA,MAC/B,OAAO,EAAC;AAAA,KACV;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAA,EAAM,gBAAgB,QAAS,CAAA,QAAA;AAAA,MAC/B,OAAO,EAAC;AAAA,KACV;AAAA,IACA,YAAc,EAAA;AAAA,MACZ,IAAA,EAAM,gBAAgB,QAAS,CAAA,QAAA;AAAA,MAC/B,OAAO,EAAC;AAAA,KACV;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,MAAQ,EAAA;AAAA,QACN,QAAU,EAAA,MAAA;AAAA,QACV,MAAQ,EAAA,IAAA;AAAA,QACR,OAAS,EAAA,SAAA;AAAA,QACT,CAAC,IAAK,CAAA,MAAA,CAAA,cAAA,CAAgB,GAAG;AAAA,UACvB,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,QACA,CAAC,IAAA,CAAK,MAAkB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAO,yBAAmB,GAAG;AAAA,UACnD,UAAY,EAAA,KAAA;AAAA,SACd;AAAA,QACA,CAAC,IAAK,CAAA,MAAA,CAAA,iBAAA,CAAmB,GAAG;AAAA,UAC1B,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,OACF;AAAA,MACA,KAAO,EAAA;AAAA,QACL,MAAQ,EAAA,KAAA;AAAA,QACR,OAAS,EAAA,SAAA;AAAA,QACT,CAAC,IAAK,CAAA,MAAA,CAAA,cAAA,CAAgB,GAAG;AAAA,UACvB,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,QACA,CAAC,IAAA,CAAK,MAAkB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAO,yBAAmB,GAAG;AAAA,UACnD,UAAY,EAAA,KAAA;AAAA,SACd;AAAA,QACA,CAAC,IAAK,CAAA,MAAA,CAAA,iBAAA,CAAmB,GAAG;AAAA,UAC1B,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,OACF;AAAA,MACA,SAAW,EAAA;AAAA,QACT,MAAQ,EAAA,KAAA;AAAA,QACR,OAAS,EAAA,QAAA;AAAA,QACT,CAAC,IAAK,CAAA,MAAA,CAAA,cAAA,CAAgB,GAAG;AAAA,UACvB,YAAc,EAAA,MAAA;AAAA,SAChB;AAAA,QACA,CAAC,IAAA,CAAK,MAAkB,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAO,yBAAmB,GAAG;AAAA,UACnD,UAAY,EAAA,MAAA;AAAA,SACd;AAAA,QACA,CAAC,IAAK,CAAA,MAAA,CAAA,iBAAA,CAAmB,GAAG;AAAA,UAC1B,YAAc,EAAA,KAAA;AAAA,SAChB;AAAA,OACF;AAAA,KACF;AAAA,GACF;AAAA,EACA,gBAAkB,EAAA;AAAA;AAAA,IAEhB;AAAA,MACE,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAK,eAAgB,CAAA,QAAA,CAAS,OAAQ,CAAA,IAAA;AAAA,KACxC;AAAA,IACA;AAAA,MACE,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAK,eAAgB,CAAA,QAAA,CAAS,KAAM,CAAA,IAAA;AAAA,KACtC;AAAA,IACA;AAAA,MACE,QAAU,EAAA,IAAA;AAAA,MACV,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAK,gBAAgB,EAAG,CAAA,QAAA;AAAA,KAC1B;AAAA,IACA;AAAA,MACE,OAAS,EAAA,QAAA;AAAA,MACT,KAAO,EAAA,KAAA,CAAA;AAAA,MACP,OAAS,EAAA,KAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAK,EAAA;AAAA,QACH,eAAiB,EAAA,6BAAA;AAAA,QACjB,WAAa,EAAA,aAAA;AAAA,OACf;AAAA,KACF;AAAA,IACA;AAAA,MACE,EAAI,EAAA,IAAA;AAAA,MACJ,IAAM,EAAA,SAAA;AAAA,MACN,GAAK,EAAA;AAAA,QACH,QAAU,EAAA,MAAA;AAAA,QACV,UAAY,EAAA,MAAA;AAAA,OACd;AAAA,KACF;AAAA;AAAA,IAEA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,EAAI,EAAA,KAAA;AAAA,MACJ,GAAA,EAAK,gBAAgB,QAAS,CAAA,OAAA;AAAA,KAChC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,KAAA;AAAA,MACJ,GAAA,EAAK,eAAgB,CAAA,QAAA,CAAS,OAAQ,CAAA,OAAA;AAAA,KACxC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,KAAA;AAAA,MACJ,GAAA,EAAK,eAAgB,CAAA,QAAA,CAAS,KAAM,CAAA,OAAA;AAAA,KACtC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAK,gBAAgB,EAAG,CAAA,OAAA;AAAA,KAC1B;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAK,eAAgB,CAAA,EAAA,CAAG,OAAQ,CAAA,OAAA;AAAA,KAClC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,EAAI,EAAA,IAAA;AAAA,MACJ,GAAA,EAAK,eAAgB,CAAA,EAAA,CAAG,KAAM,CAAA,OAAA;AAAA,KAChC;AAAA;AAAA,IAEA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,QAAU,EAAA,KAAA;AAAA,MACV,GAAA,EAAK,gBAAgB,QAAS,CAAA,OAAA;AAAA,KAChC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,OAAS,EAAA,KAAA;AAAA,MACT,KAAO,EAAA,KAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAK,eAAgB,CAAA,QAAA,CAAS,OAAQ,CAAA,OAAA;AAAA,KACxC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,IAAA;AAAA,MACT,OAAS,EAAA,KAAA;AAAA,MACT,KAAO,EAAA,IAAA;AAAA,MACP,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAA,EAAK,eAAgB,CAAA,QAAA,CAAS,KAAM,CAAA,OAAA;AAAA,KACtC;AAAA,IACA;AAAA,MACE,OAAS,EAAA,QAAA;AAAA,MACT,KAAO,EAAA,KAAA,CAAA;AAAA,MACP,OAAS,EAAA,IAAA;AAAA,MACT,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,KAAA;AAAA,MACV,YAAc,EAAA,KAAA;AAAA,MACd,GAAK,EAAA;AAAA,QACH,eAAiB,EAAA,mCAAA;AAAA,OACnB;AAAA,KACF;AAAA,GACF;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,OAAA;AAAA,GACR;AACF,CAAC,CAAA;;AC5OD,MAAM,4BACJ,GAAA,gEAAA,CAAA;AAEW,MAAA,WAAA,GAAc,MAAO,CAAA,SAAA,CAAU,KAAO,EAAA;AAAA,EACjD,GAAK,EAAA,OAAA;AAAA,EACL,UAAY,EAAA,aAAA;AAAA,EACZ,KAAO,EAAA,gBAAA;AAAA,EACP,KAAO,EAAA,MAAA;AAAA,EACP,YAAc,EAAA,KAAA;AAAA,EACd,KAAO,EAAA,CAAA;AAAA,EACP,OAAS,EAAA,OAAA;AAAA,EACT,MAAQ,EAAA,MAAA;AAAA,EAER,qDAAA,EACE,gBAAgB,IAAK,CAAA,QAAA;AAAA,EAEvB,QAAU,EAAA;AAAA,IACR,EAAI,EAAA;AAAA,MACF,IAAM,EAAA;AAAA,QACJ,CAAC,QAAS,CAAA,MAAA,CAAA,4BAAA,EAA4B,iBAAgB,GACpD,eAAA,CAAgB,KAAK,WAAY,CAAA,EAAA;AAAA,QAEnC,aAAe,EAAA;AAAA,UACb,KAAA,EAAO,eAAgB,CAAA,EAAA,CAAG,QAAS,CAAA,KAAA;AAAA,SACrC;AAAA,OACF;AAAA,MACA,KAAO,EAAA;AAAA,QACL,gBAAkB,EAAA;AAAA,UAChB,SAAW,EAAA,QAAA;AAAA,SACb;AAAA,QAEA,CAAC,QAAS,CAAA,MAAA,CAAA,4BAAA,EAA4B,iBAAgB,GACpD,eAAA,CAAgB,KAAK,WAAY,CAAA,GAAA;AAAA,QAEnC,aAAe,EAAA;AAAA,UACb,KAAA,EAAO,eAAgB,CAAA,QAAA,CAAS,QAAS,CAAA,KAAA;AAAA,SAC3C;AAAA,OACF;AAAA,KACF;AAAA,GACF;AACF,CAAC,CAAA;;ACpBD,MAAM,YAAA,GAAe,aAAiC,CAAA,EAAS,CAAA,CAAA;AAExD,MAAM,gBAAgB,CAAC;AAAA,EAC5B,QAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAiB,EAAA,YAAA;AAAA,EACjB,QAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAG,SAAA;AACL,CAA0D,KAAA;AACxD,EAAM,MAAA,eAAA,GAAkB,OAA8C,IAAI,CAAA,CAAA;AAC1E,EAAM,MAAA,QAAA,GAAW,OAAyB,IAAI,CAAA,CAAA;AAC9C,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,KAAK,CAAA,CAAA;AAC5C,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,KAAK,CAAA,CAAA;AAC5C,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAS,KAAK,CAAA,CAAA;AACpD,EAAM,MAAA,QAAA,GACJ,CAAC,UAAA,CAAW,QAAQ,CAAA,IAAK,CAAC,UAAA,CAAW,YAAY,CAAA,IAAK,CAAC,UAAA,CAAW,QAAQ,CAAA,CAAA;AAE5E,EACE,uBAAA,GAAA;AAAA,IAAC,YAAa,CAAA,QAAA;AAAA,IAAb;AAAA,MACC,KAAO,EAAA;AAAA,QACL,GAAG,SAAA;AAAA,QACH,UAAA;AAAA,QACA,UAAA;AAAA,QACA,cAAA;AAAA,QACA,WAAA;AAAA,QACA,OAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,eAAiB,EAAA,YAAA;AAAA,QACjB,QAAA;AAAA,QACA,QAAA;AAAA,QACA,QAAA;AAAA,QACA,eAAA;AAAA,QACA,QAAA;AAAA,QACA,KAAA;AAAA,OACF;AAAA,MAEC,QAAA;AAAA,KAAA;AAAA,GACH,CAAA;AAEJ,CAAA,CAAA;AAEa,MAAA,eAAA,GAAkB,MAAyB,UAAA,CAAW,YAAY;;ACtDxE,MAAM,QAAQ,KAAM,CAAA,UAAA;AAAA,EAIzB,CACE;AAAA,IACE,EAAA;AAAA,IACA,kBAAoB,EAAA,eAAA;AAAA,IACpB,cAAgB,EAAA,WAAA;AAAA,IAChB,GAAG,SAAA;AAAA,KAEL,UACG,KAAA;AACH,IAAM,MAAA;AAAA,MACJ,eAAiB,EAAA,YAAA;AAAA,MACjB,QAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,EAAA;AAAA,QACE,eAAgB,EAAA,CAAA;AAEpB,IAAA,MAAM,EAAE,MAAQ,EAAA,OAAA,EAAS,GAAG,YAAA,KAAiB,eAAgB,CAAA;AAAA,MAC3D,GAAG,SAAA;AAAA,MACH,YAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,iBAAiB,KAAM,CAAA,WAAA;AAAA,MAC3B,CAAC,CAA0C,KAAA;AACzC,QAAA,UAAA,CAAW,IAAI,CAAA,CAAA;AACf,QAAU,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OACZ;AAAA,MACA,CAAC,YAAY,OAAO,CAAA;AAAA,KACtB,CAAA;AACA,IAAA,MAAM,gBAAgB,KAAM,CAAA,WAAA;AAAA,MAC1B,CAAC,CAA0C,KAAA;AACzC,QAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAChB,QAAS,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OACX;AAAA,MACA,CAAC,YAAY,MAAM,CAAA;AAAA,KACrB,CAAA;AAEA,IACE,uBAAA,GAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QACE,GAAG,YAAA;AAAA,QACJ,EAAA;AAAA,QACA,EAAA;AAAA,QACA,QAAA;AAAA,QACA,kBAAkB,EAAA,eAAA;AAAA,QAClB,cAAc,EAAA,WAAA;AAAA,QACd,QAAA,EAAU,aAAa,IAAQ,IAAA,KAAA,CAAA;AAAA,QAC/B,QAAA,EAAU,aAAa,IAAQ,IAAA,KAAA,CAAA;AAAA,QAC/B,OAAS,EAAA,cAAA;AAAA,QACT,MAAQ,EAAA,aAAA;AAAA,QACR,QAAA;AAAA,QACA,GAAK,EAAA,SAAA,CAAU,CAAC,QAAA,EAAU,UAAU,CAAC,CAAA;AAAA,OAAA;AAAA,KACvC,CAAA;AAAA,GAEJ;AACF,CAAA;;ACtDO,MAAM,YAAe,GAAA,KAAA,CAAM,UAGhC,CAAA,CAAC,EAAE,YAAA,EAAc,SAAW,EAAA,KAAA,EAAO,QAAU,EAAA,GAAG,SAAU,EAAA,EAAG,UAAe,KAAA;AAC5E,EAAM,MAAA;AAAA,IACJ,KAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAA;AAAA,MACE,eAAgB,EAAA,CAAA;AAEpB,EAAA,MAAM,aAAgB,GAAA,KAAA,KAAU,KAAa,CAAA,IAAA,UAAA,CAAW,OAAO,CAAA,CAAA;AAE/D,EAAA,MAAM,aAAgB,GAAA,MAAA,CAAO,IAAK,CAAA,SAAS,CAAE,CAAA,IAAA;AAAA,IAAK,CAAA,GAAA,KAChD,GAAI,CAAA,UAAA,CAAW,SAAS,CAAA;AAAA,GAC1B,CAAA;AACA,EAAA,MAAM,iBAAiB,SAAU,CAAA,QAAA,CAAA;AAEjC,EAAA,MAAM,YACJ,mBAAA,GAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MACC,IAAK,EAAA,QAAA;AAAA,MACJ,GAAG,SAAA;AAAA,MACJ,cAAY,SAAa,IAAA,IAAA,GAAA,SAAA,GAAA,KAAA;AAAA,MACzB,QAAU,EAAA,aAAA,GAAgB,cAAiB,GAAA,cAAA,IAAA,IAAA,GAAA,cAAA,GAAkB,CAAC,QAAA;AAAA,MAC9D,iBAAA,EACE,gBACI,CAAC,UAAA,CAAW,QAAQ,CAAK,IAAA,cAAA,GACzB,UAAW,CAAA,QAAA,IAAA,IAAA,GAAA,QAAA,GAAY,YAAY,CAAA;AAAA,MAEzC,kBAAoB,EAAA,QAAA;AAAA,MACpB,GAAK,EAAA,SAAA,CAAU,CAAC,UAAA,EAAY,eAAe,CAAC,CAAA;AAAA,MAE3C,QAAA;AAAA,KAAA;AAAA,GACH,CAAA;AAGF,EAAA,IAAI,CAAC,aAAA;AAAe,IAAA,uBAAS,GAAA,CAAA,QAAA,EAAA,EAAA,CAAA,CAAA;AAE7B,EAAA,IAAA,CACG,UAAU,KAAa,CAAA,IAAA,KAAA,KAAU,OAClC,SAAc,KAAA,KAAA,CAAA,IACd,cAAc,EACd,EAAA;AACA,IAAO,OAAA,YAAA,CAAA;AAAA,GACT;AAEA,EAAA,4BACG,OACC,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,OAAQ,CAAA,OAAA,EAAR,EAAgB,OAAA,EAAO,MAAE,QAAa,EAAA,YAAA,EAAA,CAAA;AAAA,oBACtC,GAAA,CAAA,OAAA,CAAQ,OAAR,EAAA,EAAiB,QAAM,EAAA,KAAA,EAAA,CAAA;AAAA,GAC1B,EAAA,CAAA,CAAA;AAEJ,CAAC,CAAA;;ACjEY,MAAA,QAAA,GAAW,MAAM,UAG5B,CAAA,CAAC,EAAE,QAAU,EAAA,GAAG,SAAU,EAAA,EAAG,UAAe,KAAA;AAC5C,EAAM,MAAA;AAAA,IACJ,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,cAAA;AAAA,IACA,OAAA;AAAA,MACE,eAAgB,EAAA,CAAA;AACpB,EAAM,MAAA,iBAAA,GAAoB,kBAAmB,CAAA,QAAA,EAAU,eAAiB,EAAA;AAAA,IACtE,IAAM,EAAA,OAAA;AAAA,IACN,MAAQ,EAAA,MAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,eAAA,CAAgB,MAAM;AACpB,IAAA,cAAA,CAAe,IAAI,CAAA,CAAA;AACnB,IAAO,OAAA,MAAM,eAAe,KAAK,CAAA,CAAA;AAAA,GACnC,EAAG,CAAC,cAAc,CAAC,CAAA,CAAA;AAEnB,EACE,uBAAA,GAAA;AAAA,IAAC,cAAA;AAAA,IAAA;AAAA,MACE,GAAG,SAAA;AAAA,MACJ,OAAA;AAAA,MACA,QAAA,EAAU,UAAW,CAAA,QAAA,IAAA,IAAA,GAAA,QAAA,GAAY,YAAY,CAAA;AAAA,MAC7C,GAAK,EAAA,UAAA;AAAA,MAEJ,QAAA,EAAA,iBAAA;AAAA,KAAA;AAAA,GACH,CAAA;AAEJ,CAAC,CAAA,CAAA;AAED,QAAA,CAAS,WAAc,GAAA,UAAA;;ACHvB,MAAM,IAAA,GAAO,KAAM,CAAA,UAAA,CAGjB,CAAC,EAAE,UAAU,IAAM,EAAA,GAAG,SAAU,EAAA,EAAG,UAAe,KAAA;AAClD,EAAM,MAAA,GAAA,GAAM,OAAuB,IAAI,CAAA,CAAA;AACvC,EAAM,MAAA;AAAA,IACJ,KAAA;AAAA,IACA,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,QAAA;AAAA,IACA,OAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAA;AAAA,IACA,UAAA;AAAA,IACA,EAAA;AAAA,IACA,OAAA;AAAA,MACE,eAAgB,EAAA,CAAA;AACpB,EAAA,MAAM,EAAE,UAAA,EAAY,SAAW,EAAA,OAAA,KAAY,QAAS,CAAA;AAAA,IAClD,aAAe,EAAA,UAAA;AAAA,GAChB,CAAA,CAAA;AAED,EAAM,MAAA,EAAE,UAAW,EAAA,GAAI,QAAS,CAAA;AAAA,IAC9B,cAAc,CAAK,CAAA,KAAA;AACjB,MAAM,MAAA,EAAE,MAAO,EAAA,GAAI,CAAE,CAAA,aAAA,CAAA;AAErB,MAAA,MAAM,gBACJ,QAAS,CAAA,aAAA,KAAkB,QAAS,CAAA,OAAA,IACpC,WAAW,QAAS,CAAA,OAAA,CAAA;AAGtB,MAAA,IAAI,aAAe,EAAA;AACjB,QAAA,CAAA,CAAE,cAAc,cAAe,EAAA,CAAA;AAAA,OACjC;AAAA,KACF;AAAA,IACA,YAAY,CAAK,CAAA,KAAA;AA5ErB,MAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AA6EM,MAAM,MAAA,EAAE,MAAO,EAAA,GAAI,CAAE,CAAA,aAAA,CAAA;AAErB,MAAM,MAAA,cAAA,GACJ,WAAW,eAAgB,CAAA,OAAA,IAAA,CAAA,CAC3B,qBAAgB,OAAhB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAyB,SAAS,MAAoB,CAAA,MAAA,IAAA,CAAA;AAExD,MAAM,MAAA,gBAAA,GACJ,CAAC,cAAkB,IAAA,CAAC,WAAW,QAAQ,CAAA,IAAK,CAAC,UAAA,CAAW,OAAO,CAAA,CAAA;AAEjE,MAAA,IAAI,gBAAkB,EAAA;AACpB,QAAA,CAAA,EAAA,GAAA,QAAA,CAAS,YAAT,IAAkB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAClB,QAAA,UAAA,CAAW,IAAI,CAAA,CAAA;AAAA,OACjB;AAAA,KACF;AAAA,IACA,mBAAqB,EAAA,MAAA;AAAA,GACtB,CAAA,CAAA;AAED,EAAA,MAAM,sBACJ,GAAA,UAAA,CAAW,YAAY,CAAA,IAAK,WAAW,QAAQ,CAAA,CAAA;AAGjD,EAAM,MAAA,gBAAA,GACJ,CAAC,UAAA,CAAW,QAAQ,CAAA,IACpB,CAAC,sBAAA,IACD,CAAC,OAAA,IACD,CAAC,OAAA,IACD,KAAU,KAAA,KAAA,CAAA,CAAA;AACZ,EAAM,MAAA,SAAA,GACJ,KAAU,KAAA,IAAA,GAAO,mBAAsB,GAAA,gCAAA,CAAA;AAEzC,EACE,uBAAA,IAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACE,GAAG,UAAA,CAAW,SAAW,EAAA,UAAA,EAAY,UAAU,CAAA;AAAA,MAChD,cAAA,EAAc,mBAAoB,CAAA,KAAA,KAAU,KAAK,CAAA;AAAA,MACjD,YAAA,EAAY,mBAAoB,CAAA,KAAA,KAAU,IAAI,CAAA;AAAA,MAC9C,mBAAkB,EAAA,OAAA;AAAA,MAClB,GAAK,EAAA,SAAA,CAAU,CAAC,GAAA,EAAK,UAAU,CAAC,CAAA;AAAA,MAChC,IAAA;AAAA,MACA,EAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA,EAAU,WAAW,QAAQ,CAAA;AAAA,MAC7B,YAAA,EAAc,WAAW,YAAY,CAAA;AAAA,MACrC,QAAA,EAAU,WAAW,QAAQ,CAAA;AAAA,MAC7B,aACE,EAAA,OAAA,CAAQ,GAAI,CAAA,QAAA,KAAa,SAAS,iBAAoB,GAAA,KAAA,CAAA;AAAA,MAGvD,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,CAAC,EAAM,IAAA,gBAAA,oBACL,GAAA,CAAA,iBAAA,EAAA,EACC,QAAC,kBAAA,GAAA,CAAA,SAAA,EAAA,EAAU,IAAK,EAAA,OAAA,EAAQ,MAAO,EAAA,MAAA,EAAO,CACxC,EAAA,CAAA;AAAA,OAAA;AAAA,KAAA;AAAA,GAEJ,CAAA;AAEJ,CAAC,CAAA,CAAA;AAIM,MAAM,YAAY,KAAM,CAAA,UAAA;AAAA,EAI7B,CACE;AAAA,IACE,eAAiB,EAAA,YAAA;AAAA,IACjB,QAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,OAAA;AAAA,IACA,GAAG,SAAA;AAAA,KAEL,UACG,KAAA;AACH,IAAM,MAAA,CAAC,EAAE,CAAA,GAAI,oBAAqB,EAAA,CAAA;AAElC,IACE,uBAAA,GAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,KAAA;AAAA,QACA,QAAA;AAAA,QACA,eAAe,EAAA,YAAA;AAAA,QACf,QAAA;AAAA,QACA,QAAA;AAAA,QACA,QAAA;AAAA,QACA,OAAA;AAAA,QACA,EAAA;AAAA,QAEA,QAAC,kBAAA,GAAA,CAAA,IAAA,EAAA,EAAM,GAAG,SAAA,EAAW,KAAK,UAAY,EAAA,CAAA;AAAA,OAAA;AAAA,KACxC,CAAA;AAAA,GAEJ;AACF,EAAA;AAUA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAClB,SAAA,CAAU,YAAe,GAAA,YAAA,CAAA;AACzB,SAAA,CAAU,QAAW,GAAA,QAAA;;;;"}
package/dist/types.d.ts CHANGED
@@ -9,7 +9,9 @@ import * as packages_components_internal_base_button_src_base_button from 'packa
9
9
  import * as _mirohq_design_system_hooks_use_press from '@mirohq/design-system-hooks/use-press';
10
10
  import * as _mirohq_design_system_components_primitive from '@mirohq/design-system-components/primitive';
11
11
 
12
- declare const StyledBaseInput: React$1.ForwardRefExoticComponent<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<"div">, "size" | "disabled" | "readOnly" | "ariaDisabled" | "hovered" | "focused" | "valid"> & _stitches_react_types_styled_component.TransformProps<{
12
+ declare const StyledBaseInput: React$1.ForwardRefExoticComponent<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<"div">, "size" | "disabled" | "readOnly" | "ariaDisabled" | "v1" | "variant" | "hovered" | "focused" | "valid"> & _stitches_react_types_styled_component.TransformProps<{
13
+ v1?: boolean | "true" | undefined;
14
+ variant?: "outline" | "subtle" | undefined;
13
15
  hovered?: boolean | "false" | "true" | undefined;
14
16
  focused?: boolean | "false" | "true" | undefined;
15
17
  valid?: boolean | "false" | "true" | undefined;
@@ -18,6 +20,8 @@ declare const StyledBaseInput: React$1.ForwardRefExoticComponent<Omit<Omit<_miro
18
20
  ariaDisabled?: boolean | "false" | "true" | undefined;
19
21
  size?: "medium" | "large" | "x-large" | undefined;
20
22
  }, {}> & _mirohq_design_system_stitches.CustomStylesProps, "ref"> & React$1.RefAttributes<HTMLDivElement>> & _mirohq_design_system_stitches.StitchesInternals<"div", {
23
+ v1?: boolean | "true" | undefined;
24
+ variant?: "outline" | "subtle" | undefined;
21
25
  hovered?: boolean | "false" | "true" | undefined;
22
26
  focused?: boolean | "false" | "true" | undefined;
23
27
  valid?: boolean | "false" | "true" | undefined;
@@ -28,7 +32,11 @@ declare const StyledBaseInput: React$1.ForwardRefExoticComponent<Omit<Omit<_miro
28
32
  }, {}>;
29
33
  declare type StyledBaseInputProps = ComponentPropsWithRef<typeof StyledBaseInput>;
30
34
 
31
- declare const StyledInput: React$1.ForwardRefExoticComponent<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"input">>>, never> & _stitches_react_types_styled_component.TransformProps<{}, {}> & _mirohq_design_system_stitches.CustomStylesProps, "ref"> & React$1.RefAttributes<HTMLInputElement>> & _mirohq_design_system_stitches.StitchesInternals<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"input">>, {}, {}>;
35
+ declare const StyledInput: React$1.ForwardRefExoticComponent<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"input">>>, "v1"> & _stitches_react_types_styled_component.TransformProps<{
36
+ v1?: boolean | "false" | "true" | undefined;
37
+ }, {}> & _mirohq_design_system_stitches.CustomStylesProps, "ref"> & React$1.RefAttributes<HTMLInputElement>> & _mirohq_design_system_stitches.StitchesInternals<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"input">>, {
38
+ v1?: boolean | "false" | "true" | undefined;
39
+ }, {}>;
32
40
  declare type StyledInputProps = ComponentPropsWithRef<typeof StyledInput>;
33
41
 
34
42
  declare type InputProps$2 = Omit<StyledInputProps, 'aria-disabled' | 'disabled' | 'readOnly' | 'required' | 'onChange'>;
@@ -36,6 +44,8 @@ declare const Input: React__default.ForwardRefExoticComponent<Omit<InputProps$2,
36
44
 
37
45
  interface InputProps$1 extends FormElementProps {
38
46
  onChange?: React__default.ChangeEventHandler<HTMLInputElement>;
47
+ v1: boolean;
48
+ variant?: 'outline' | 'subtle';
39
49
  }
40
50
  interface InputContextProps extends InputProps$1 {
41
51
  focused: boolean;
@@ -116,21 +126,24 @@ declare const ActionButton: React__default.ForwardRefExoticComponent<(Omit<Omit<
116
126
  'aria-label': string;
117
127
  }, "ref">) & React__default.RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
118
128
 
119
- declare const StyledIconSlot: React$1.ForwardRefExoticComponent<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"div">>>, "disabled"> & _stitches_react_types_styled_component.TransformProps<{
129
+ declare const StyledIconSlot: React$1.ForwardRefExoticComponent<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"div">>>, "disabled" | "variant"> & _stitches_react_types_styled_component.TransformProps<{
130
+ variant?: "outline" | "subtle" | undefined;
120
131
  disabled?: boolean | "true" | undefined;
121
132
  }, {}> & _mirohq_design_system_stitches.CustomStylesProps, "ref"> & React$1.RefAttributes<HTMLDivElement>> & _mirohq_design_system_stitches.StitchesInternals<React$1.ForwardRefExoticComponent<_mirohq_design_system_primitive.PrimitiveProps<"div">>, {
133
+ variant?: "outline" | "subtle" | undefined;
122
134
  disabled?: boolean | "true" | undefined;
123
135
  }, {}>;
124
136
  declare type StyledIconSlotProps = ComponentPropsWithRef<typeof StyledIconSlot>;
125
137
 
126
- interface IconSlotProps extends StyledIconSlotProps {
138
+ interface IconSlotProps extends Omit<StyledIconSlotProps, 'variant'> {
127
139
  }
128
- declare const IconSlot: React__default.ForwardRefExoticComponent<Omit<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<React__default.ForwardRefExoticComponent<_mirohq_design_system_components_primitive.PrimitiveProps<"div">>>, "disabled"> & _stitches_react_types_styled_component.TransformProps<{
140
+ declare const IconSlot: React__default.ForwardRefExoticComponent<Omit<Omit<Omit<_mirohq_design_system_stitches.StyledComponentProps<React__default.ForwardRefExoticComponent<_mirohq_design_system_components_primitive.PrimitiveProps<"div">>>, "disabled" | "variant"> & _stitches_react_types_styled_component.TransformProps<{
141
+ variant?: "outline" | "subtle" | undefined;
129
142
  disabled?: boolean | "true" | undefined;
130
143
  }, {}> & _mirohq_design_system_stitches.CustomStylesProps, "ref"> & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
131
144
 
132
- declare type BaseInputRootProps = Omit<StyledBaseInputProps, 'hovered' | 'focused' | 'valid' | 'readOnly' | 'disabled' | 'ariaDisabled' | 'value' | 'defaultValue' | 'placeholder'>;
133
- declare type BaseInputProps = BaseInputRootProps & InputProviderProps;
145
+ declare type BaseInputRootProps = Omit<StyledBaseInputProps, 'v1' | 'hovered' | 'focused' | 'valid' | 'readOnly' | 'disabled' | 'ariaDisabled' | 'value' | 'defaultValue' | 'placeholder'>;
146
+ declare type BaseInputProps = BaseInputRootProps & Omit<InputProviderProps, 'v1'>;
134
147
  declare const BaseInput: React__default.ForwardRefExoticComponent<BaseInputProps> & Partials;
135
148
  interface Partials {
136
149
  Input: typeof Input;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirohq/design-system-base-input",
3
- "version": "0.4.12",
3
+ "version": "0.5.1",
4
4
  "description": "",
5
5
  "author": "Miro",
6
6
  "source": "src/index.ts",
@@ -28,18 +28,19 @@
28
28
  "dependencies": {
29
29
  "@react-aria/interactions": "^3.13.0",
30
30
  "@react-aria/utils": "^3.13.0",
31
- "@mirohq/design-system-base-button": "^0.4.63",
31
+ "@mirohq/design-system-base-button": "^0.4.64",
32
+ "@mirohq/design-system-base-form": "^0.3.0",
32
33
  "@mirohq/design-system-base-icon": "^0.1.33",
33
- "@mirohq/design-system-base-form": "^0.2.33",
34
- "@mirohq/design-system-icons": "^0.58.1",
35
- "@mirohq/design-system-base-text-field": "^0.1.16",
36
- "@mirohq/design-system-stitches": "^2.6.26",
37
- "@mirohq/design-system-tooltip": "^3.5.4",
34
+ "@mirohq/design-system-base-text-field": "^0.2.0",
35
+ "@mirohq/design-system-experiments": "^0.2.0",
36
+ "@mirohq/design-system-icons": "^0.59.0",
38
37
  "@mirohq/design-system-primitive": "^1.1.2",
38
+ "@mirohq/design-system-stitches": "^2.6.27",
39
+ "@mirohq/design-system-tooltip": "^3.5.5",
39
40
  "@mirohq/design-system-use-aria-disabled": "^0.2.0",
40
41
  "@mirohq/design-system-use-layout-effect": "^0.2.1",
41
- "@mirohq/design-system-utils": "^0.15.4",
42
- "@mirohq/design-system-use-press": "^0.4.1"
42
+ "@mirohq/design-system-use-press": "^0.4.1",
43
+ "@mirohq/design-system-utils": "^0.15.4"
43
44
  },
44
45
  "scripts": {
45
46
  "build": "rollup -c ../../../../rollup.config.js",