datocms-react-ui 0.2.0-alpha.60 → 0.2.0-y.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Button/index.js +3 -25
- package/dist/cjs/Button/index.js.map +1 -1
- package/dist/cjs/Button/styles.module.css.json +1 -1
- package/dist/cjs/Canvas/index.js +10 -2
- package/dist/cjs/Canvas/index.js.map +1 -1
- package/dist/cjs/Canvas/styles.module.css.json +1 -1
- package/dist/cjs/FieldError/index.js +14 -0
- package/dist/cjs/FieldError/index.js.map +1 -0
- package/dist/cjs/FieldError/styles.module.css.json +1 -0
- package/dist/cjs/FieldGroup/index.js +38 -0
- package/dist/cjs/FieldGroup/index.js.map +1 -0
- package/dist/cjs/FieldGroup/styles.module.css.json +1 -0
- package/dist/cjs/FieldHint/index.js +14 -0
- package/dist/cjs/FieldHint/index.js.map +1 -0
- package/dist/cjs/FieldHint/styles.module.css.json +1 -0
- package/dist/cjs/Form/index.js +69 -0
- package/dist/cjs/Form/index.js.map +1 -0
- package/dist/cjs/Form/styles.module.css.json +1 -0
- package/dist/cjs/FormLabel/index.js +45 -0
- package/dist/cjs/FormLabel/index.js.map +1 -0
- package/dist/cjs/FormLabel/styles.module.css.json +1 -0
- package/dist/cjs/SwitchField/index.js +34 -0
- package/dist/cjs/SwitchField/index.js.map +1 -0
- package/dist/cjs/SwitchField/styles.module.css.json +1 -0
- package/dist/cjs/SwitchInput/index.js +61 -0
- package/dist/cjs/SwitchInput/index.js.map +1 -0
- package/dist/cjs/SwitchInput/styles.module.css.json +1 -0
- package/dist/cjs/TextField/index.js +29 -0
- package/dist/cjs/TextField/index.js.map +1 -0
- package/dist/cjs/TextField/styles.module.css.json +1 -0
- package/dist/cjs/TextInput/index.js +34 -8
- package/dist/cjs/TextInput/index.js.map +1 -1
- package/dist/cjs/TextInput/styles.module.css.json +1 -1
- package/dist/cjs/index.js +9 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/Button/index.d.ts +5 -2
- package/dist/esm/Button/index.js +3 -25
- package/dist/esm/Button/index.js.map +1 -1
- package/dist/esm/Button/styles.module.css.json +1 -1
- package/dist/esm/Canvas/index.js +10 -2
- package/dist/esm/Canvas/index.js.map +1 -1
- package/dist/esm/Canvas/styles.module.css.json +1 -1
- package/dist/esm/FieldError/index.d.ts +6 -0
- package/dist/esm/FieldError/index.js +7 -0
- package/dist/esm/FieldError/index.js.map +1 -0
- package/dist/esm/FieldError/styles.module.css.json +1 -0
- package/dist/esm/FieldGroup/index.d.ts +7 -0
- package/dist/esm/FieldGroup/index.js +31 -0
- package/dist/esm/FieldGroup/index.js.map +1 -0
- package/dist/esm/FieldGroup/styles.module.css.json +1 -0
- package/dist/esm/FieldHint/index.d.ts +6 -0
- package/dist/esm/FieldHint/index.js +7 -0
- package/dist/esm/FieldHint/index.js.map +1 -0
- package/dist/esm/FieldHint/styles.module.css.json +1 -0
- package/dist/esm/Form/index.d.ts +9 -0
- package/dist/esm/Form/index.js +43 -0
- package/dist/esm/Form/index.js.map +1 -0
- package/dist/esm/Form/styles.module.css.json +1 -0
- package/dist/esm/FormLabel/index.d.ts +10 -0
- package/dist/esm/FormLabel/index.js +38 -0
- package/dist/esm/FormLabel/index.js.map +1 -0
- package/dist/esm/FormLabel/styles.module.css.json +1 -0
- package/dist/esm/SwitchField/index.d.ts +16 -0
- package/dist/esm/SwitchField/index.js +27 -0
- package/dist/esm/SwitchField/index.js.map +1 -0
- package/dist/esm/SwitchField/styles.module.css.json +1 -0
- package/dist/esm/SwitchInput/index.d.ts +10 -0
- package/dist/esm/SwitchInput/index.js +54 -0
- package/dist/esm/SwitchInput/index.js.map +1 -0
- package/dist/esm/SwitchInput/styles.module.css.json +1 -0
- package/dist/esm/TextField/index.d.ts +17 -0
- package/dist/esm/TextField/index.js +22 -0
- package/dist/esm/TextField/index.js.map +1 -0
- package/dist/esm/TextField/styles.module.css.json +1 -0
- package/dist/esm/TextInput/index.d.ts +12 -7
- package/dist/esm/TextInput/index.js +16 -9
- package/dist/esm/TextInput/index.js.map +1 -1
- package/dist/esm/TextInput/styles.module.css.json +1 -1
- package/dist/esm/index.d.ts +9 -1
- package/dist/esm/index.js +9 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/types/Button/index.d.ts +5 -2
- package/dist/types/FieldError/index.d.ts +6 -0
- package/dist/types/FieldGroup/index.d.ts +7 -0
- package/dist/types/FieldHint/index.d.ts +6 -0
- package/dist/types/Form/index.d.ts +9 -0
- package/dist/types/FormLabel/index.d.ts +10 -0
- package/dist/types/SwitchField/index.d.ts +16 -0
- package/dist/types/SwitchInput/index.d.ts +10 -0
- package/dist/types/TextField/index.d.ts +17 -0
- package/dist/types/TextInput/index.d.ts +12 -7
- package/dist/types/index.d.ts +9 -1
- package/package.json +4 -3
- package/styles.css +1 -1
- package/types.json +9799 -401
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
1
|
+
import React, { CSSProperties, MouseEventHandler, ReactNode } from 'react';
|
|
2
2
|
export declare type ButtonProps = {
|
|
3
3
|
children: ReactNode;
|
|
4
|
+
type: React.ButtonHTMLAttributes<HTMLButtonElement>['type'];
|
|
4
5
|
className?: string;
|
|
5
6
|
disabled?: boolean;
|
|
7
|
+
onClick?: MouseEventHandler;
|
|
6
8
|
buttonType?: 'primary' | 'muted' | 'negative';
|
|
7
9
|
buttonSize?: 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl';
|
|
8
10
|
fullWidth?: boolean;
|
|
11
|
+
style?: CSSProperties;
|
|
9
12
|
};
|
|
10
|
-
export declare function Button({ children, className, disabled, buttonType, buttonSize, fullWidth,
|
|
13
|
+
export declare function Button({ children, className, disabled, buttonType, buttonSize, fullWidth, onClick, style, type, }: ButtonProps): JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CSSProperties, FormEventHandler, ReactNode } from 'react';
|
|
2
|
+
export interface FormProps {
|
|
3
|
+
onSubmit?: FormEventHandler;
|
|
4
|
+
spacing?: 'condensed' | 'default';
|
|
5
|
+
style?: CSSProperties;
|
|
6
|
+
className?: string;
|
|
7
|
+
children: ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export declare const Form: ({ children, className, onSubmit, spacing, ...otherProps }: FormProps) => JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface FormLabelProps {
|
|
3
|
+
htmlFor: string;
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
error?: boolean;
|
|
8
|
+
code?: React.ReactNode;
|
|
9
|
+
}
|
|
10
|
+
export declare const FormLabel: ({ children, className, htmlFor, code, required, error, ...otherProps }: FormLabelProps) => JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { FormLabelProps, SwitchInputProps } from '..';
|
|
3
|
+
declare type SwitchFieldProps = {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
label: ReactNode;
|
|
7
|
+
hint?: ReactNode;
|
|
8
|
+
error?: ReactNode;
|
|
9
|
+
required?: boolean;
|
|
10
|
+
formLabelProps?: FormLabelProps;
|
|
11
|
+
value: SwitchInputProps['value'];
|
|
12
|
+
onChange: SwitchInputProps['onChange'];
|
|
13
|
+
switchInputProps?: SwitchInputProps;
|
|
14
|
+
};
|
|
15
|
+
export declare function SwitchField({ id, name, label, hint, error, required, formLabelProps, value, onChange, switchInputProps, }: SwitchFieldProps): JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export declare type SwitchInputChangeEventHandler = (newValue: boolean, event: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
|
|
3
|
+
export interface SwitchInputProps extends Omit<React.HTMLAttributes<HTMLButtonElement>, 'onChange'> {
|
|
4
|
+
name: string;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
onChange: SwitchInputChangeEventHandler;
|
|
7
|
+
onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement>;
|
|
8
|
+
value: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function SwitchInput({ className, value, disabled, onClick, onChange, onKeyDown, ...restProps }: SwitchInputProps): JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { FormLabelProps, TextInputProps } from '..';
|
|
3
|
+
declare type TextFieldProps = {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
label: ReactNode;
|
|
7
|
+
hint?: ReactNode;
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
error?: ReactNode;
|
|
10
|
+
required?: boolean;
|
|
11
|
+
formLabelProps?: FormLabelProps;
|
|
12
|
+
value: TextInputProps['value'];
|
|
13
|
+
onChange: TextInputProps['onChange'];
|
|
14
|
+
textInputProps?: TextInputProps;
|
|
15
|
+
};
|
|
16
|
+
export declare function TextField({ id, name, label, hint, error, required, placeholder, formLabelProps, value, onChange, textInputProps, }: TextFieldProps): JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
import React, { RefObject } from 'react';
|
|
2
|
+
export declare type TextInputChangeEventHandler = (newValue: string, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
2
3
|
export declare type TextInputProps = {
|
|
4
|
+
type?: 'text' | 'password' | 'email' | 'number' | 'search' | 'url' | 'date' | 'time';
|
|
5
|
+
name?: string;
|
|
6
|
+
labelText?: string;
|
|
7
|
+
id?: string;
|
|
3
8
|
className?: string;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
};
|
|
9
|
-
export declare
|
|
9
|
+
onChange?: TextInputChangeEventHandler;
|
|
10
|
+
value: string;
|
|
11
|
+
inputRef?: RefObject<HTMLInputElement>;
|
|
12
|
+
error?: boolean;
|
|
13
|
+
} & JSX.IntrinsicElements['input'];
|
|
14
|
+
export declare const TextInput: ({ className, disabled, error, id, inputRef, maxLength, name, labelText, onBlur, onChange, placeholder, required, type, value, ...otherProps }: TextInputProps) => JSX.Element;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
export * from './Button';
|
|
2
|
-
export * from './TextInput';
|
|
3
2
|
export * from './Canvas';
|
|
3
|
+
export * from './FieldError';
|
|
4
|
+
export * from './FieldGroup';
|
|
5
|
+
export * from './FieldHint';
|
|
6
|
+
export * from './Form';
|
|
7
|
+
export * from './FormLabel';
|
|
8
|
+
export * from './SwitchField';
|
|
9
|
+
export * from './SwitchInput';
|
|
10
|
+
export * from './TextField';
|
|
11
|
+
export * from './TextInput';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datocms-react-ui",
|
|
3
|
-
"version": "0.2.0-
|
|
3
|
+
"version": "0.2.0-y.0",
|
|
4
4
|
"description": "React components to use inside DatoCMS plugins",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"datocms",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"classnames": "^2.3.1",
|
|
42
|
-
"datocms-plugins-sdk": "^0.2.0-
|
|
42
|
+
"datocms-plugins-sdk": "^0.2.0-y.0"
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
|
45
45
|
"react": ">= 17.0.2"
|
|
@@ -48,11 +48,12 @@
|
|
|
48
48
|
"@types/react": "^17.0.3",
|
|
49
49
|
"@types/react-dom": "^17.0.3",
|
|
50
50
|
"cssnano": "^5.0.11",
|
|
51
|
+
"postcss-calc": "^8.0.0",
|
|
51
52
|
"postcss-cli": "^9.0.2",
|
|
52
53
|
"postcss-import": "^14.0.2",
|
|
53
54
|
"postcss-modules": "^4.2.2",
|
|
54
55
|
"postcss-nested": "^5.0.6",
|
|
55
56
|
"typedoc": "^0.22.8"
|
|
56
57
|
},
|
|
57
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "b12cac5d076b2c49a48db8bcc4895443f84a7b56"
|
|
58
59
|
}
|
package/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@import "https://use.typekit.net/iok7hkr.css";.
|
|
1
|
+
@import "https://use.typekit.net/iok7hkr.css";._button_p1vuc_1{-webkit-appearance:none;-moz-appearance:none;background-color:transparent;border:1px solid transparent;border-radius:4px;box-sizing:border-box;color:var(--base-body-color);cursor:pointer;display:inline-block;font-family:inherit;font-weight:500;line-height:inherit;opacity:1;text-decoration:none;transition:all .3s var(--material-ease);vertical-align:middle;white-space:nowrap}._button_p1vuc_1:focus,._button_p1vuc_1:hover{opacity:.8}._button_p1vuc_1:active{opacity:.7}._disabled_p1vuc_30{background-color:var(--light-bg-color);border-width:0;color:rgba(0,0,0,.2);cursor:not-allowed}._buttonType-muted_p1vuc_37{background-color:var(--light-color);color:var(--accent-color)}._buttonType-primary_p1vuc_42{background-color:var(--accent-color);border-width:0;color:#fff}._buttonType-primary_p1vuc_42:active,._buttonType-primary_p1vuc_42:focus,._buttonType-primary_p1vuc_42:hover{color:#fff}._buttonType-primary_p1vuc_42._disabled_p1vuc_30{background-color:var(--disabled-bg-color);color:rgba(0,0,0,.2)}._buttonType-primary_p1vuc_42._disabled_p1vuc_30:active,._buttonType-primary_p1vuc_42._disabled_p1vuc_30:focus,._buttonType-primary_p1vuc_42._disabled_p1vuc_30:hover{color:rgba(0,0,0,.2)}._buttonType-negative_p1vuc_64{border-width:0}._buttonType-negative_p1vuc_64,._buttonType-negative_p1vuc_64:active,._buttonType-negative_p1vuc_64:focus,._buttonType-negative_p1vuc_64:hover{background-color:var(--alert-color);color:#fff}._buttonType-negative_p1vuc_64._disabled_p1vuc_30{background-color:var(--disabled-bg-color);color:rgba(0,0,0,.2)}._buttonSize-xxs_p1vuc_82{font-size:1em;padding:.5em .8em}._buttonSize-xs_p1vuc_87{font-size:1em;padding:.6em .8em}._buttonSize-s_p1vuc_92{font-size:1em;padding:.7em 1em}._buttonSize-m_p1vuc_97{font-size:1.1em;padding:.7em 1em}._buttonSize-l_p1vuc_102{font-size:1.2em;padding:.7em 1em}._buttonSize-xl_p1vuc_107{font-size:1.2em;padding:1em}._fullWidth_p1vuc_112{display:block;text-align:center;width:100%}._canvas_1kptt_1{--base-body-color:#34363a;--light-body-color:#848484;--placeholder-body-color:#c6c6c6;--light-bg-color:#f5f5f5;--lighter-bg-color:#f8f8f8;--disabled-bg-color:#ededed;--border-color:#f0f0f0;--darker-border-color:#d7d7d7;--alert-color:#ff5e49;--alert-rgb-components:255,94,73;--warning-color:gold;--notice-color:#46d700;--warning-bg-color:#ffffe5;--add-color:#4cb06d;--remove-color:#eb576a;--base-font-family:"colfax-web","Roboto","Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;--monospaced-font-family:"Roboto Mono","Menlo","Bitstream Vera Sans Mono",Consolas,Courier,monospace;--spacing-s:0.375rem;--spacing-m:0.75rem;--spacing-l:1.5rem;--spacing-xl:2.25rem;--spacing-xxl:3.75rem;--spacing-xxxl:6rem;--font-size-xxs:0.6875rem;--font-size-xs:0.75rem;--font-size-s:0.875rem;--font-size-m:0.9375rem;--font-size-l:1.0625rem;--font-size-xl:1.1875rem;--font-size-xxl:1.5625rem;--font-size-xxxl:1.875rem;--font-size-xxxl:2.1875rem;--font-size-xxxl:3.125rem;--material-ease:cubic-bezier(0.55,0,0.1,1);--inertial-ease:cubic-bezier(0.19,1,0.22,1);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;color:var(--base-body-color);font-family:var(--base-font-family);font-size:var(--font-size-m);line-height:1.5}._fieldError_qi0xk_1{color:var(--alert-color);font-size:var(--font-size-xs);line-height:1.2;margin-top:var(--spacing-s)}._FieldGroup_uz9ju_1{display:block}._FieldGroup__item_uz9ju_5{display:block;margin-bottom:var(--spacing-l)}._FieldGroup__item_uz9ju_5:last-child{margin-bottom:0}._fieldHint_1dor2_1{color:var(--light-body-color);font-size:var(--font-size-xs);line-height:1.2;margin-top:var(--spacing-s)}._Form_5qspp_1,._Form__item_5qspp_5{display:block}._Form__item_5qspp_5:last-child{margin-bottom:0}._Form__item--default_5qspp_13{margin-bottom:var(--spacing-l)}._Form__item--condensed_5qspp_17{margin-bottom:var(--spacing-m)}._formLabel_tcjrv_1{align-items:center;color:var(--light-body-color);display:flex;margin-bottom:var(--spacing-s)}._formLabel_tcjrv_1:hover ._formLabel__code_tcjrv_8{opacity:1}._formLabel--error_tcjrv_14{color:var(--alert-color)}._formLabel__label_tcjrv_18{flex:1}._formLabel__code_tcjrv_8{font-family:var(--monospaced-font-family);font-size:.95em;opacity:0;position:absolute;transition:opacity .2s var(--material-ease)}._switchField__flex_16z4j_1{align-items:center;display:flex}._switchField__switchInput_16z4j_6{width:55px}._switchField__label_16z4j_10{color:var(--base-body-color);flex:1;line-height:1.1;line-height:20px;margin-bottom:0;pointer-events:none;-moz-user-select:text;-ms-user-select:text;user-select:text}._switchField__below_16z4j_22{margin-left:55px;margin-top:var(--spacing-s)}._switchInput__inner_1knbg_1{color:#fff;font-size:12px;left:24px;position:absolute}._switchInput_1knbg_1{background-color:#ccc;border:1px solid #ccc;border-radius:20px 20px;box-sizing:border-box;cursor:pointer;display:inline-block;height:22px;line-height:20px;position:relative;transition:all .3s cubic-bezier(.35,0,.25,1);vertical-align:middle;width:44px}._switchInput_1knbg_1:after{animation-duration:.3s;animation-name:_switchInput__off_1knbg_1;animation-timing-function:cubic-bezier(.35,0,.25,1);background-color:#fff;border-radius:50% 50%;box-shadow:0 2px 5px rgba(0,0,0,.26);content:" ";cursor:pointer;height:18px;left:2px;position:absolute;top:1px;transform:scale(1);transition:left .3s cubic-bezier(.35,0,.25,1);width:18px}._switchInput_1knbg_1:focus:after,._switchInput_1knbg_1:hover{animation-name:_switchInput__on_1knbg_1;transform:scale(1.1)}._switchInput__checked_1knbg_47{background-color:var(--accent-color);border:1px solid var(--accent-color)}._switchInput__checked_1knbg_47 ._switchInput__inner_1knbg_1{left:6px}._switchInput__checked_1knbg_47:after{left:22px}._switchInput__disabled_1knbg_60{background:#ccc;border-color:#ccc;cursor:no-drop}._switchInput__disabled_1knbg_60:after{animation-name:_none_1knbg_1;background:#9e9e9e;cursor:no-drop}._switchInput__disabled_1knbg_60:focus:after,._switchInput__disabled_1knbg_60:hover{animation-name:_none_1knbg_1;transform:scale(1)}@keyframes _switchInput__on_1knbg_1{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1.1)}}@keyframes _switchInput__off_1knbg_1{0%{transform:scale(1.1)}to{transform:scale(1)}}._TextInput--disabled_1m3nw_4{background:var(--lighter-bg-color);border-color:var(--border-color);color:var(--light-body-color)}._TextInput--error_1m3nw_10{border-color:var(--alert-color)}._TextInput--error_1m3nw_10:focus{box-shadow:0 0 0 3px rgba(var(--alert-rgb-components),.2)}._TextInput__input_1m3nw_18{appearance:none;background-image:none;border:1px solid var(--border-color);border-radius:0;box-sizing:border-box;display:block;font-size:var(--font-size-m);padding:10px;resize:none;transition:border .2s var(--material-ease);width:100%}._TextInput__input_1m3nw_18::placeholder{color:var(--placeholder-body-color)}._TextInput__input_1m3nw_18:hover{border-color:var(--darker-border-color)}._TextInput__input_1m3nw_18:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--semi-transparent-accent-color);outline:0}html{font-size:16px;height:auto}body,html{margin:0;padding:0}
|