mirror of
https://github.com/idanoo/GoScrobble
synced 2025-07-01 21:52:19 +00:00
0.2.0 - Mid migration
This commit is contained in:
parent
139e6a915e
commit
7e38fdbd7d
42393 changed files with 5358157 additions and 62 deletions
193
web/node_modules/@material-ui/core/InputBase/InputBase.d.ts
generated
vendored
Normal file
193
web/node_modules/@material-ui/core/InputBase/InputBase.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,193 @@
|
|||
import * as React from 'react';
|
||||
import { StandardProps } from '..';
|
||||
|
||||
export interface InputBaseProps
|
||||
extends StandardProps<
|
||||
React.HTMLAttributes<HTMLDivElement>,
|
||||
InputBaseClassKey,
|
||||
/*
|
||||
* `onChange`, `onKeyUp`, `onKeyDown`, `onBlur`, `onFocus` are applied to the inner `InputComponent`,
|
||||
* which by default is an input or textarea. Since these handlers differ from the
|
||||
* ones inherited by `React.HTMLAttributes<HTMLDivElement>` we need to omit them.
|
||||
*/
|
||||
'children' | 'onChange' | 'onKeyUp' | 'onKeyDown' | 'onBlur' | 'onFocus' | 'defaultValue'
|
||||
> {
|
||||
'aria-describedby'?: string;
|
||||
/**
|
||||
* This prop helps users to fill forms faster, especially on mobile devices.
|
||||
* The name can be confusing, as it's more like an autofill.
|
||||
* You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
|
||||
*/
|
||||
autoComplete?: string;
|
||||
/**
|
||||
* If `true`, the `input` element will be focused during the first mount.
|
||||
*/
|
||||
autoFocus?: boolean;
|
||||
/**
|
||||
* The color of the component. It supports those theme colors that make sense for this component.
|
||||
*/
|
||||
color?: 'primary' | 'secondary';
|
||||
/**
|
||||
* The default `input` element value. Use when the component is not controlled.
|
||||
*/
|
||||
defaultValue?: unknown;
|
||||
/**
|
||||
* If `true`, the `input` element will be disabled.
|
||||
*/
|
||||
disabled?: boolean;
|
||||
/**
|
||||
* End `InputAdornment` for this component.
|
||||
*/
|
||||
endAdornment?: React.ReactNode;
|
||||
/**
|
||||
* If `true`, the input will indicate an error. This is normally obtained via context from
|
||||
* FormControl.
|
||||
*/
|
||||
error?: boolean;
|
||||
/**
|
||||
* If `true`, the input will take up the full width of its container.
|
||||
*/
|
||||
fullWidth?: boolean;
|
||||
/**
|
||||
* The id of the `input` element.
|
||||
*/
|
||||
id?: string;
|
||||
/**
|
||||
* The component used for the `input` element.
|
||||
* Either a string to use a HTML element or a component.
|
||||
*/
|
||||
inputComponent?: React.ElementType<InputBaseComponentProps>;
|
||||
/**
|
||||
* [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
|
||||
*/
|
||||
inputProps?: InputBaseComponentProps;
|
||||
/**
|
||||
* Pass a ref to the `input` element.
|
||||
*/
|
||||
inputRef?: React.Ref<any>;
|
||||
/**
|
||||
* If `dense`, will adjust vertical spacing. This is normally obtained via context from
|
||||
* FormControl.
|
||||
*/
|
||||
margin?: 'dense' | 'none';
|
||||
/**
|
||||
* If `true`, a textarea element will be rendered.
|
||||
*/
|
||||
multiline?: boolean;
|
||||
/**
|
||||
* Name attribute of the `input` element.
|
||||
*/
|
||||
name?: string;
|
||||
/**
|
||||
* Callback fired when the input is blurred.
|
||||
*
|
||||
* Notice that the first argument (event) might be undefined.
|
||||
*/
|
||||
onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;
|
||||
/**
|
||||
* Callback fired when the value is changed.
|
||||
*
|
||||
* @param {object} event The event source of the callback.
|
||||
* You can pull out the new value by accessing `event.target.value` (string).
|
||||
*/
|
||||
onChange?: React.ChangeEventHandler<HTMLTextAreaElement | HTMLInputElement>;
|
||||
onFocus?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;
|
||||
onKeyDown?: React.KeyboardEventHandler<HTMLTextAreaElement | HTMLInputElement>;
|
||||
onKeyUp?: React.KeyboardEventHandler<HTMLTextAreaElement | HTMLInputElement>;
|
||||
/**
|
||||
* The short hint displayed in the input before the user enters a value.
|
||||
*/
|
||||
placeholder?: string;
|
||||
/**
|
||||
* It prevents the user from changing the value of the field
|
||||
* (not from interacting with the field).
|
||||
*/
|
||||
readOnly?: boolean;
|
||||
/**
|
||||
* If `true`, the `input` element will be required.
|
||||
*/
|
||||
required?: boolean;
|
||||
renderSuffix?: (state: {
|
||||
disabled?: boolean;
|
||||
error?: boolean;
|
||||
filled?: boolean;
|
||||
focused?: boolean;
|
||||
margin?: 'dense' | 'none' | 'normal';
|
||||
required?: boolean;
|
||||
startAdornment?: React.ReactNode;
|
||||
}) => React.ReactNode;
|
||||
/**
|
||||
* Number of rows to display when multiline option is set to true.
|
||||
*/
|
||||
rows?: string | number;
|
||||
/**
|
||||
* Maximum number of rows to display.
|
||||
* @deprecated Use `maxRows` instead.
|
||||
*/
|
||||
rowsMax?: string | number;
|
||||
/**
|
||||
* Minimum number of rows to display.
|
||||
* @deprecated Use `minRows` instead.
|
||||
*/
|
||||
rowsMin?: string | number;
|
||||
/**
|
||||
* Maximum number of rows to display when multiline option is set to true.
|
||||
*/
|
||||
maxRows?: string | number;
|
||||
/**
|
||||
* Minimum number of rows to display when multiline option is set to true.
|
||||
*/
|
||||
minRows?: string | number;
|
||||
/**
|
||||
* Start `InputAdornment` for this component.
|
||||
*/
|
||||
startAdornment?: React.ReactNode;
|
||||
/**
|
||||
* Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).
|
||||
*/
|
||||
type?: string;
|
||||
/**
|
||||
* The value of the `input` element, required for a controlled component.
|
||||
*/
|
||||
value?: unknown;
|
||||
}
|
||||
|
||||
export interface InputBaseComponentProps
|
||||
extends React.HTMLAttributes<HTMLInputElement | HTMLTextAreaElement> {
|
||||
// Accommodate arbitrary additional props coming from the `inputProps` prop
|
||||
[arbitrary: string]: any;
|
||||
}
|
||||
|
||||
export type InputBaseClassKey =
|
||||
| 'root'
|
||||
| 'formControl'
|
||||
| 'focused'
|
||||
| 'disabled'
|
||||
| 'adornedEnd'
|
||||
| 'adornedStart'
|
||||
| 'error'
|
||||
| 'marginDense'
|
||||
| 'multiline'
|
||||
| 'fullWidth'
|
||||
| 'colorSecondary'
|
||||
| 'input'
|
||||
| 'inputMarginDense'
|
||||
| 'inputMultiline'
|
||||
| 'inputTypeSearch'
|
||||
| 'inputAdornedStart'
|
||||
| 'inputAdornedEnd'
|
||||
| 'inputHiddenLabel';
|
||||
|
||||
/**
|
||||
* `InputBase` contains as few styles as possible.
|
||||
* It aims to be a simple building block for creating an input.
|
||||
* It contains a load of style reset and some state logic.
|
||||
* Demos:
|
||||
*
|
||||
* - [Text Fields](https://material-ui.com/components/text-fields/)
|
||||
*
|
||||
* API:
|
||||
*
|
||||
* - [InputBase API](https://material-ui.com/api/input-base/)
|
||||
*/
|
||||
export default function InputBase(props: InputBaseProps): JSX.Element;
|
692
web/node_modules/@material-ui/core/InputBase/InputBase.js
generated
vendored
Normal file
692
web/node_modules/@material-ui/core/InputBase/InputBase.js
generated
vendored
Normal file
|
@ -0,0 +1,692 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = exports.styles = void 0;
|
||||
|
||||
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
||||
|
||||
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
||||
|
||||
var _utils = require("@material-ui/utils");
|
||||
|
||||
var React = _interopRequireWildcard(require("react"));
|
||||
|
||||
var _propTypes = _interopRequireDefault(require("prop-types"));
|
||||
|
||||
var _clsx = _interopRequireDefault(require("clsx"));
|
||||
|
||||
var _formControlState = _interopRequireDefault(require("../FormControl/formControlState"));
|
||||
|
||||
var _FormControlContext = _interopRequireWildcard(require("../FormControl/FormControlContext"));
|
||||
|
||||
var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
|
||||
|
||||
var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
|
||||
|
||||
var _useForkRef = _interopRequireDefault(require("../utils/useForkRef"));
|
||||
|
||||
var _TextareaAutosize = _interopRequireDefault(require("../TextareaAutosize"));
|
||||
|
||||
var _utils2 = require("./utils");
|
||||
|
||||
/* eslint-disable jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions */
|
||||
var styles = function styles(theme) {
|
||||
var light = theme.palette.type === 'light';
|
||||
var placeholder = {
|
||||
color: 'currentColor',
|
||||
opacity: light ? 0.42 : 0.5,
|
||||
transition: theme.transitions.create('opacity', {
|
||||
duration: theme.transitions.duration.shorter
|
||||
})
|
||||
};
|
||||
var placeholderHidden = {
|
||||
opacity: '0 !important'
|
||||
};
|
||||
var placeholderVisible = {
|
||||
opacity: light ? 0.42 : 0.5
|
||||
};
|
||||
return {
|
||||
'@global': {
|
||||
'@keyframes mui-auto-fill': {},
|
||||
'@keyframes mui-auto-fill-cancel': {}
|
||||
},
|
||||
|
||||
/* Styles applied to the root element. */
|
||||
root: (0, _extends2.default)({}, theme.typography.body1, {
|
||||
color: theme.palette.text.primary,
|
||||
lineHeight: '1.1876em',
|
||||
// Reset (19px), match the native input line-height
|
||||
boxSizing: 'border-box',
|
||||
// Prevent padding issue with fullWidth.
|
||||
position: 'relative',
|
||||
cursor: 'text',
|
||||
display: 'inline-flex',
|
||||
alignItems: 'center',
|
||||
'&$disabled': {
|
||||
color: theme.palette.text.disabled,
|
||||
cursor: 'default'
|
||||
}
|
||||
}),
|
||||
|
||||
/* Styles applied to the root element if the component is a descendant of `FormControl`. */
|
||||
formControl: {},
|
||||
|
||||
/* Styles applied to the root element if the component is focused. */
|
||||
focused: {},
|
||||
|
||||
/* Styles applied to the root element if `disabled={true}`. */
|
||||
disabled: {},
|
||||
|
||||
/* Styles applied to the root element if `startAdornment` is provided. */
|
||||
adornedStart: {},
|
||||
|
||||
/* Styles applied to the root element if `endAdornment` is provided. */
|
||||
adornedEnd: {},
|
||||
|
||||
/* Pseudo-class applied to the root element if `error={true}`. */
|
||||
error: {},
|
||||
|
||||
/* Styles applied to the `input` element if `margin="dense"`. */
|
||||
marginDense: {},
|
||||
|
||||
/* Styles applied to the root element if `multiline={true}`. */
|
||||
multiline: {
|
||||
padding: "".concat(8 - 2, "px 0 ").concat(8 - 1, "px"),
|
||||
'&$marginDense': {
|
||||
paddingTop: 4 - 1
|
||||
}
|
||||
},
|
||||
|
||||
/* Styles applied to the root element if the color is secondary. */
|
||||
colorSecondary: {},
|
||||
|
||||
/* Styles applied to the root element if `fullWidth={true}`. */
|
||||
fullWidth: {
|
||||
width: '100%'
|
||||
},
|
||||
|
||||
/* Styles applied to the `input` element. */
|
||||
input: {
|
||||
font: 'inherit',
|
||||
letterSpacing: 'inherit',
|
||||
color: 'currentColor',
|
||||
padding: "".concat(8 - 2, "px 0 ").concat(8 - 1, "px"),
|
||||
border: 0,
|
||||
boxSizing: 'content-box',
|
||||
background: 'none',
|
||||
height: '1.1876em',
|
||||
// Reset (19px), match the native input line-height
|
||||
margin: 0,
|
||||
// Reset for Safari
|
||||
WebkitTapHighlightColor: 'transparent',
|
||||
display: 'block',
|
||||
// Make the flex item shrink with Firefox
|
||||
minWidth: 0,
|
||||
width: '100%',
|
||||
// Fix IE 11 width issue
|
||||
animationName: 'mui-auto-fill-cancel',
|
||||
animationDuration: '10ms',
|
||||
'&::-webkit-input-placeholder': placeholder,
|
||||
'&::-moz-placeholder': placeholder,
|
||||
// Firefox 19+
|
||||
'&:-ms-input-placeholder': placeholder,
|
||||
// IE 11
|
||||
'&::-ms-input-placeholder': placeholder,
|
||||
// Edge
|
||||
'&:focus': {
|
||||
outline: 0
|
||||
},
|
||||
// Reset Firefox invalid required input style
|
||||
'&:invalid': {
|
||||
boxShadow: 'none'
|
||||
},
|
||||
'&::-webkit-search-decoration': {
|
||||
// Remove the padding when type=search.
|
||||
'-webkit-appearance': 'none'
|
||||
},
|
||||
// Show and hide the placeholder logic
|
||||
'label[data-shrink=false] + $formControl &': {
|
||||
'&::-webkit-input-placeholder': placeholderHidden,
|
||||
'&::-moz-placeholder': placeholderHidden,
|
||||
// Firefox 19+
|
||||
'&:-ms-input-placeholder': placeholderHidden,
|
||||
// IE 11
|
||||
'&::-ms-input-placeholder': placeholderHidden,
|
||||
// Edge
|
||||
'&:focus::-webkit-input-placeholder': placeholderVisible,
|
||||
'&:focus::-moz-placeholder': placeholderVisible,
|
||||
// Firefox 19+
|
||||
'&:focus:-ms-input-placeholder': placeholderVisible,
|
||||
// IE 11
|
||||
'&:focus::-ms-input-placeholder': placeholderVisible // Edge
|
||||
|
||||
},
|
||||
'&$disabled': {
|
||||
opacity: 1 // Reset iOS opacity
|
||||
|
||||
},
|
||||
'&:-webkit-autofill': {
|
||||
animationDuration: '5000s',
|
||||
animationName: 'mui-auto-fill'
|
||||
}
|
||||
},
|
||||
|
||||
/* Styles applied to the `input` element if `margin="dense"`. */
|
||||
inputMarginDense: {
|
||||
paddingTop: 4 - 1
|
||||
},
|
||||
|
||||
/* Styles applied to the `input` element if `multiline={true}`. */
|
||||
inputMultiline: {
|
||||
height: 'auto',
|
||||
resize: 'none',
|
||||
padding: 0
|
||||
},
|
||||
|
||||
/* Styles applied to the `input` element if `type="search"`. */
|
||||
inputTypeSearch: {
|
||||
// Improve type search style.
|
||||
'-moz-appearance': 'textfield',
|
||||
'-webkit-appearance': 'textfield'
|
||||
},
|
||||
|
||||
/* Styles applied to the `input` element if `startAdornment` is provided. */
|
||||
inputAdornedStart: {},
|
||||
|
||||
/* Styles applied to the `input` element if `endAdornment` is provided. */
|
||||
inputAdornedEnd: {},
|
||||
|
||||
/* Styles applied to the `input` element if `hiddenLabel={true}`. */
|
||||
inputHiddenLabel: {}
|
||||
};
|
||||
};
|
||||
|
||||
exports.styles = styles;
|
||||
var useEnhancedEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;
|
||||
/**
|
||||
* `InputBase` contains as few styles as possible.
|
||||
* It aims to be a simple building block for creating an input.
|
||||
* It contains a load of style reset and some state logic.
|
||||
*/
|
||||
|
||||
var InputBase = /*#__PURE__*/React.forwardRef(function InputBase(props, ref) {
|
||||
var ariaDescribedby = props['aria-describedby'],
|
||||
autoComplete = props.autoComplete,
|
||||
autoFocus = props.autoFocus,
|
||||
classes = props.classes,
|
||||
className = props.className,
|
||||
color = props.color,
|
||||
defaultValue = props.defaultValue,
|
||||
disabled = props.disabled,
|
||||
endAdornment = props.endAdornment,
|
||||
error = props.error,
|
||||
_props$fullWidth = props.fullWidth,
|
||||
fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,
|
||||
id = props.id,
|
||||
_props$inputComponent = props.inputComponent,
|
||||
inputComponent = _props$inputComponent === void 0 ? 'input' : _props$inputComponent,
|
||||
_props$inputProps = props.inputProps,
|
||||
inputPropsProp = _props$inputProps === void 0 ? {} : _props$inputProps,
|
||||
inputRefProp = props.inputRef,
|
||||
margin = props.margin,
|
||||
_props$multiline = props.multiline,
|
||||
multiline = _props$multiline === void 0 ? false : _props$multiline,
|
||||
name = props.name,
|
||||
onBlur = props.onBlur,
|
||||
onChange = props.onChange,
|
||||
onClick = props.onClick,
|
||||
onFocus = props.onFocus,
|
||||
onKeyDown = props.onKeyDown,
|
||||
onKeyUp = props.onKeyUp,
|
||||
placeholder = props.placeholder,
|
||||
readOnly = props.readOnly,
|
||||
renderSuffix = props.renderSuffix,
|
||||
rows = props.rows,
|
||||
rowsMax = props.rowsMax,
|
||||
rowsMin = props.rowsMin,
|
||||
maxRows = props.maxRows,
|
||||
minRows = props.minRows,
|
||||
startAdornment = props.startAdornment,
|
||||
_props$type = props.type,
|
||||
type = _props$type === void 0 ? 'text' : _props$type,
|
||||
valueProp = props.value,
|
||||
other = (0, _objectWithoutProperties2.default)(props, ["aria-describedby", "autoComplete", "autoFocus", "classes", "className", "color", "defaultValue", "disabled", "endAdornment", "error", "fullWidth", "id", "inputComponent", "inputProps", "inputRef", "margin", "multiline", "name", "onBlur", "onChange", "onClick", "onFocus", "onKeyDown", "onKeyUp", "placeholder", "readOnly", "renderSuffix", "rows", "rowsMax", "rowsMin", "maxRows", "minRows", "startAdornment", "type", "value"]);
|
||||
var value = inputPropsProp.value != null ? inputPropsProp.value : valueProp;
|
||||
|
||||
var _React$useRef = React.useRef(value != null),
|
||||
isControlled = _React$useRef.current;
|
||||
|
||||
var inputRef = React.useRef();
|
||||
var handleInputRefWarning = React.useCallback(function (instance) {
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
if (instance && instance.nodeName !== 'INPUT' && !instance.focus) {
|
||||
console.error(['Material-UI: You have provided a `inputComponent` to the input component', 'that does not correctly handle the `inputRef` prop.', 'Make sure the `inputRef` prop is called with a HTMLInputElement.'].join('\n'));
|
||||
}
|
||||
}
|
||||
}, []);
|
||||
var handleInputPropsRefProp = (0, _useForkRef.default)(inputPropsProp.ref, handleInputRefWarning);
|
||||
var handleInputRefProp = (0, _useForkRef.default)(inputRefProp, handleInputPropsRefProp);
|
||||
var handleInputRef = (0, _useForkRef.default)(inputRef, handleInputRefProp);
|
||||
|
||||
var _React$useState = React.useState(false),
|
||||
focused = _React$useState[0],
|
||||
setFocused = _React$useState[1];
|
||||
|
||||
var muiFormControl = (0, _FormControlContext.useFormControl)();
|
||||
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||
React.useEffect(function () {
|
||||
if (muiFormControl) {
|
||||
return muiFormControl.registerEffect();
|
||||
}
|
||||
|
||||
return undefined;
|
||||
}, [muiFormControl]);
|
||||
}
|
||||
|
||||
var fcs = (0, _formControlState.default)({
|
||||
props: props,
|
||||
muiFormControl: muiFormControl,
|
||||
states: ['color', 'disabled', 'error', 'hiddenLabel', 'margin', 'required', 'filled']
|
||||
});
|
||||
fcs.focused = muiFormControl ? muiFormControl.focused : focused; // The blur won't fire when the disabled state is set on a focused input.
|
||||
// We need to book keep the focused state manually.
|
||||
|
||||
React.useEffect(function () {
|
||||
if (!muiFormControl && disabled && focused) {
|
||||
setFocused(false);
|
||||
|
||||
if (onBlur) {
|
||||
onBlur();
|
||||
}
|
||||
}
|
||||
}, [muiFormControl, disabled, focused, onBlur]);
|
||||
var onFilled = muiFormControl && muiFormControl.onFilled;
|
||||
var onEmpty = muiFormControl && muiFormControl.onEmpty;
|
||||
var checkDirty = React.useCallback(function (obj) {
|
||||
if ((0, _utils2.isFilled)(obj)) {
|
||||
if (onFilled) {
|
||||
onFilled();
|
||||
}
|
||||
} else if (onEmpty) {
|
||||
onEmpty();
|
||||
}
|
||||
}, [onFilled, onEmpty]);
|
||||
useEnhancedEffect(function () {
|
||||
if (isControlled) {
|
||||
checkDirty({
|
||||
value: value
|
||||
});
|
||||
}
|
||||
}, [value, checkDirty, isControlled]);
|
||||
|
||||
var handleFocus = function handleFocus(event) {
|
||||
// Fix a bug with IE 11 where the focus/blur events are triggered
|
||||
// while the input is disabled.
|
||||
if (fcs.disabled) {
|
||||
event.stopPropagation();
|
||||
return;
|
||||
}
|
||||
|
||||
if (onFocus) {
|
||||
onFocus(event);
|
||||
}
|
||||
|
||||
if (inputPropsProp.onFocus) {
|
||||
inputPropsProp.onFocus(event);
|
||||
}
|
||||
|
||||
if (muiFormControl && muiFormControl.onFocus) {
|
||||
muiFormControl.onFocus(event);
|
||||
} else {
|
||||
setFocused(true);
|
||||
}
|
||||
};
|
||||
|
||||
var handleBlur = function handleBlur(event) {
|
||||
if (onBlur) {
|
||||
onBlur(event);
|
||||
}
|
||||
|
||||
if (inputPropsProp.onBlur) {
|
||||
inputPropsProp.onBlur(event);
|
||||
}
|
||||
|
||||
if (muiFormControl && muiFormControl.onBlur) {
|
||||
muiFormControl.onBlur(event);
|
||||
} else {
|
||||
setFocused(false);
|
||||
}
|
||||
};
|
||||
|
||||
var handleChange = function handleChange(event) {
|
||||
if (!isControlled) {
|
||||
var element = event.target || inputRef.current;
|
||||
|
||||
if (element == null) {
|
||||
throw new Error(process.env.NODE_ENV !== "production" ? "Material-UI: Expected valid input target. Did you use a custom `inputComponent` and forget to forward refs? See https://material-ui.com/r/input-component-ref-interface for more info." : (0, _utils.formatMuiErrorMessage)(1));
|
||||
}
|
||||
|
||||
checkDirty({
|
||||
value: element.value
|
||||
});
|
||||
}
|
||||
|
||||
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
||||
args[_key - 1] = arguments[_key];
|
||||
}
|
||||
|
||||
if (inputPropsProp.onChange) {
|
||||
inputPropsProp.onChange.apply(inputPropsProp, [event].concat(args));
|
||||
} // Perform in the willUpdate
|
||||
|
||||
|
||||
if (onChange) {
|
||||
onChange.apply(void 0, [event].concat(args));
|
||||
}
|
||||
}; // Check the input state on mount, in case it was filled by the user
|
||||
// or auto filled by the browser before the hydration (for SSR).
|
||||
|
||||
|
||||
React.useEffect(function () {
|
||||
checkDirty(inputRef.current);
|
||||
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
||||
|
||||
var handleClick = function handleClick(event) {
|
||||
if (inputRef.current && event.currentTarget === event.target) {
|
||||
inputRef.current.focus();
|
||||
}
|
||||
|
||||
if (onClick) {
|
||||
onClick(event);
|
||||
}
|
||||
};
|
||||
|
||||
var InputComponent = inputComponent;
|
||||
var inputProps = (0, _extends2.default)({}, inputPropsProp, {
|
||||
ref: handleInputRef
|
||||
});
|
||||
|
||||
if (typeof InputComponent !== 'string') {
|
||||
inputProps = (0, _extends2.default)({
|
||||
// Rename ref to inputRef as we don't know the
|
||||
// provided `inputComponent` structure.
|
||||
inputRef: handleInputRef,
|
||||
type: type
|
||||
}, inputProps, {
|
||||
ref: null
|
||||
});
|
||||
} else if (multiline) {
|
||||
if (rows && !maxRows && !minRows && !rowsMax && !rowsMin) {
|
||||
InputComponent = 'textarea';
|
||||
} else {
|
||||
inputProps = (0, _extends2.default)({
|
||||
minRows: rows || minRows,
|
||||
rowsMax: rowsMax,
|
||||
maxRows: maxRows
|
||||
}, inputProps);
|
||||
InputComponent = _TextareaAutosize.default;
|
||||
}
|
||||
} else {
|
||||
inputProps = (0, _extends2.default)({
|
||||
type: type
|
||||
}, inputProps);
|
||||
}
|
||||
|
||||
var handleAutoFill = function handleAutoFill(event) {
|
||||
// Provide a fake value as Chrome might not let you access it for security reasons.
|
||||
checkDirty(event.animationName === 'mui-auto-fill-cancel' ? inputRef.current : {
|
||||
value: 'x'
|
||||
});
|
||||
};
|
||||
|
||||
React.useEffect(function () {
|
||||
if (muiFormControl) {
|
||||
muiFormControl.setAdornedStart(Boolean(startAdornment));
|
||||
}
|
||||
}, [muiFormControl, startAdornment]);
|
||||
return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
|
||||
className: (0, _clsx.default)(classes.root, classes["color".concat((0, _capitalize.default)(fcs.color || 'primary'))], className, fcs.disabled && classes.disabled, fcs.error && classes.error, fullWidth && classes.fullWidth, fcs.focused && classes.focused, muiFormControl && classes.formControl, multiline && classes.multiline, startAdornment && classes.adornedStart, endAdornment && classes.adornedEnd, fcs.margin === 'dense' && classes.marginDense),
|
||||
onClick: handleClick,
|
||||
ref: ref
|
||||
}, other), startAdornment, /*#__PURE__*/React.createElement(_FormControlContext.default.Provider, {
|
||||
value: null
|
||||
}, /*#__PURE__*/React.createElement(InputComponent, (0, _extends2.default)({
|
||||
"aria-invalid": fcs.error,
|
||||
"aria-describedby": ariaDescribedby,
|
||||
autoComplete: autoComplete,
|
||||
autoFocus: autoFocus,
|
||||
defaultValue: defaultValue,
|
||||
disabled: fcs.disabled,
|
||||
id: id,
|
||||
onAnimationStart: handleAutoFill,
|
||||
name: name,
|
||||
placeholder: placeholder,
|
||||
readOnly: readOnly,
|
||||
required: fcs.required,
|
||||
rows: rows,
|
||||
value: value,
|
||||
onKeyDown: onKeyDown,
|
||||
onKeyUp: onKeyUp
|
||||
}, inputProps, {
|
||||
className: (0, _clsx.default)(classes.input, inputPropsProp.className, fcs.disabled && classes.disabled, multiline && classes.inputMultiline, fcs.hiddenLabel && classes.inputHiddenLabel, startAdornment && classes.inputAdornedStart, endAdornment && classes.inputAdornedEnd, type === 'search' && classes.inputTypeSearch, fcs.margin === 'dense' && classes.inputMarginDense),
|
||||
onBlur: handleBlur,
|
||||
onChange: handleChange,
|
||||
onFocus: handleFocus
|
||||
}))), endAdornment, renderSuffix ? renderSuffix((0, _extends2.default)({}, fcs, {
|
||||
startAdornment: startAdornment
|
||||
})) : null);
|
||||
});
|
||||
process.env.NODE_ENV !== "production" ? InputBase.propTypes = {
|
||||
// ----------------------------- Warning --------------------------------
|
||||
// | These PropTypes are generated from the TypeScript type definitions |
|
||||
// | To update them edit the d.ts file and run "yarn proptypes" |
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
'aria-describedby': _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* This prop helps users to fill forms faster, especially on mobile devices.
|
||||
* The name can be confusing, as it's more like an autofill.
|
||||
* You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
|
||||
*/
|
||||
autoComplete: _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* If `true`, the `input` element will be focused during the first mount.
|
||||
*/
|
||||
autoFocus: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* Override or extend the styles applied to the component.
|
||||
* See [CSS API](#css) below for more details.
|
||||
*/
|
||||
classes: _propTypes.default.object,
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
className: _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* The color of the component. It supports those theme colors that make sense for this component.
|
||||
*/
|
||||
color: _propTypes.default.oneOf(['primary', 'secondary']),
|
||||
|
||||
/**
|
||||
* The default `input` element value. Use when the component is not controlled.
|
||||
*/
|
||||
defaultValue: _propTypes.default.any,
|
||||
|
||||
/**
|
||||
* If `true`, the `input` element will be disabled.
|
||||
*/
|
||||
disabled: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* End `InputAdornment` for this component.
|
||||
*/
|
||||
endAdornment: _propTypes.default.node,
|
||||
|
||||
/**
|
||||
* If `true`, the input will indicate an error. This is normally obtained via context from
|
||||
* FormControl.
|
||||
*/
|
||||
error: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* If `true`, the input will take up the full width of its container.
|
||||
*/
|
||||
fullWidth: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* The id of the `input` element.
|
||||
*/
|
||||
id: _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* The component used for the `input` element.
|
||||
* Either a string to use a HTML element or a component.
|
||||
*/
|
||||
inputComponent: _propTypes.default.elementType,
|
||||
|
||||
/**
|
||||
* [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
|
||||
*/
|
||||
inputProps: _propTypes.default.object,
|
||||
|
||||
/**
|
||||
* Pass a ref to the `input` element.
|
||||
*/
|
||||
inputRef: _utils.refType,
|
||||
|
||||
/**
|
||||
* If `dense`, will adjust vertical spacing. This is normally obtained via context from
|
||||
* FormControl.
|
||||
*/
|
||||
margin: _propTypes.default.oneOf(['dense', 'none']),
|
||||
|
||||
/**
|
||||
* Maximum number of rows to display when multiline option is set to true.
|
||||
*/
|
||||
maxRows: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
||||
|
||||
/**
|
||||
* Minimum number of rows to display when multiline option is set to true.
|
||||
*/
|
||||
minRows: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
||||
|
||||
/**
|
||||
* If `true`, a textarea element will be rendered.
|
||||
*/
|
||||
multiline: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* Name attribute of the `input` element.
|
||||
*/
|
||||
name: _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* Callback fired when the input is blurred.
|
||||
*
|
||||
* Notice that the first argument (event) might be undefined.
|
||||
*/
|
||||
onBlur: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* Callback fired when the value is changed.
|
||||
*
|
||||
* @param {object} event The event source of the callback.
|
||||
* You can pull out the new value by accessing `event.target.value` (string).
|
||||
*/
|
||||
onChange: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
onClick: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
onFocus: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
onKeyDown: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
onKeyUp: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* The short hint displayed in the input before the user enters a value.
|
||||
*/
|
||||
placeholder: _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* It prevents the user from changing the value of the field
|
||||
* (not from interacting with the field).
|
||||
*/
|
||||
readOnly: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
renderSuffix: _propTypes.default.func,
|
||||
|
||||
/**
|
||||
* If `true`, the `input` element will be required.
|
||||
*/
|
||||
required: _propTypes.default.bool,
|
||||
|
||||
/**
|
||||
* Number of rows to display when multiline option is set to true.
|
||||
*/
|
||||
rows: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
||||
|
||||
/**
|
||||
* Maximum number of rows to display.
|
||||
* @deprecated Use `maxRows` instead.
|
||||
*/
|
||||
rowsMax: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
||||
|
||||
/**
|
||||
* Minimum number of rows to display.
|
||||
* @deprecated Use `minRows` instead.
|
||||
*/
|
||||
rowsMin: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
||||
|
||||
/**
|
||||
* Start `InputAdornment` for this component.
|
||||
*/
|
||||
startAdornment: _propTypes.default.node,
|
||||
|
||||
/**
|
||||
* Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).
|
||||
*/
|
||||
type: _propTypes.default.string,
|
||||
|
||||
/**
|
||||
* The value of the `input` element, required for a controlled component.
|
||||
*/
|
||||
value: _propTypes.default.any
|
||||
} : void 0;
|
||||
|
||||
var _default = (0, _withStyles.default)(styles, {
|
||||
name: 'MuiInputBase'
|
||||
})(InputBase);
|
||||
|
||||
exports.default = _default;
|
2
web/node_modules/@material-ui/core/InputBase/index.d.ts
generated
vendored
Normal file
2
web/node_modules/@material-ui/core/InputBase/index.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
export { default } from './InputBase';
|
||||
export * from './InputBase';
|
15
web/node_modules/@material-ui/core/InputBase/index.js
generated
vendored
Normal file
15
web/node_modules/@material-ui/core/InputBase/index.js
generated
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
Object.defineProperty(exports, "default", {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
return _InputBase.default;
|
||||
}
|
||||
});
|
||||
|
||||
var _InputBase = _interopRequireDefault(require("./InputBase"));
|
5
web/node_modules/@material-ui/core/InputBase/package.json
generated
vendored
Normal file
5
web/node_modules/@material-ui/core/InputBase/package.json
generated
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"sideEffects": false,
|
||||
"module": "../esm/InputBase/index.js",
|
||||
"typings": "./index.d.ts"
|
||||
}
|
40
web/node_modules/@material-ui/core/InputBase/utils.js
generated
vendored
Normal file
40
web/node_modules/@material-ui/core/InputBase/utils.js
generated
vendored
Normal file
|
@ -0,0 +1,40 @@
|
|||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.hasValue = hasValue;
|
||||
exports.isFilled = isFilled;
|
||||
exports.isAdornedStart = isAdornedStart;
|
||||
|
||||
// Supports determination of isControlled().
|
||||
// Controlled input accepts its current value as a prop.
|
||||
//
|
||||
// @see https://facebook.github.io/react/docs/forms.html#controlled-components
|
||||
// @param value
|
||||
// @returns {boolean} true if string (including '') or number (including zero)
|
||||
function hasValue(value) {
|
||||
return value != null && !(Array.isArray(value) && value.length === 0);
|
||||
} // Determine if field is empty or filled.
|
||||
// Response determines if label is presented above field or as placeholder.
|
||||
//
|
||||
// @param obj
|
||||
// @param SSR
|
||||
// @returns {boolean} False when not present or empty string.
|
||||
// True when any number or string with length.
|
||||
|
||||
|
||||
function isFilled(obj) {
|
||||
var SSR = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
||||
return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');
|
||||
} // Determine if an Input is adorned on start.
|
||||
// It's corresponding to the left with LTR.
|
||||
//
|
||||
// @param obj
|
||||
// @returns {boolean} False when no adornments.
|
||||
// True when adorned at the start.
|
||||
|
||||
|
||||
function isAdornedStart(obj) {
|
||||
return obj.startAdornment;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue