@navikt/ds-react 0.13.0 → 0.14.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/form/Fieldset/Fieldset.js +6 -3
- package/cjs/form/Select.js +5 -2
- package/cjs/form/TextField.js +8 -3
- package/cjs/form/Textarea.js +5 -2
- package/cjs/form/checkbox/Checkbox.js +9 -8
- package/cjs/form/checkbox/useCheckbox.js +2 -1
- package/cjs/form/radio/Radio.js +8 -14
- package/cjs/form/radio/useRadio.js +2 -1
- package/cjs/form/search-field/SearchField.js +5 -2
- package/cjs/loader/Loader.js +1 -1
- package/dist/complete.js +15978 -0
- package/dist/partial.js +4039 -0
- package/esm/form/Fieldset/Fieldset.js +7 -4
- package/esm/form/Fieldset/Fieldset.js.map +1 -1
- package/esm/form/Select.js +5 -2
- package/esm/form/Select.js.map +1 -1
- package/esm/form/TextField.js +9 -4
- package/esm/form/TextField.js.map +1 -1
- package/esm/form/Textarea.js +5 -2
- package/esm/form/Textarea.js.map +1 -1
- package/esm/form/checkbox/Checkbox.d.ts +6 -1
- package/esm/form/checkbox/Checkbox.js +10 -9
- package/esm/form/checkbox/Checkbox.js.map +1 -1
- package/esm/form/checkbox/CheckboxGroup.d.ts +1 -1
- package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
- package/esm/form/checkbox/useCheckbox.js +2 -1
- package/esm/form/checkbox/useCheckbox.js.map +1 -1
- package/esm/form/radio/Radio.d.ts +4 -1
- package/esm/form/radio/Radio.js +9 -15
- package/esm/form/radio/Radio.js.map +1 -1
- package/esm/form/radio/RadioGroup.d.ts +1 -1
- package/esm/form/radio/RadioGroup.js.map +1 -1
- package/esm/form/radio/useRadio.js +2 -1
- package/esm/form/radio/useRadio.js.map +1 -1
- package/esm/form/search-field/SearchField.js +5 -2
- package/esm/form/search-field/SearchField.js.map +1 -1
- package/esm/loader/Loader.js +1 -1
- package/esm/loader/Loader.js.map +1 -1
- package/package.json +9 -6
- package/src/form/Fieldset/Fieldset.tsx +25 -12
- package/src/form/Select.tsx +5 -1
- package/src/form/TextField.tsx +30 -11
- package/src/form/Textarea.tsx +5 -1
- package/src/form/checkbox/Checkbox.tsx +30 -37
- package/src/form/checkbox/CheckboxGroup.tsx +2 -1
- package/src/form/checkbox/stories/checkbox.stories.mdx +17 -45
- package/src/form/checkbox/stories/checkbox.stories.tsx +55 -82
- package/src/form/checkbox/useCheckbox.ts +5 -1
- package/src/form/radio/Radio.tsx +26 -40
- package/src/form/radio/RadioGroup.tsx +2 -1
- package/src/form/radio/stories/radio.stories.mdx +3 -29
- package/src/form/radio/stories/radio.stories.tsx +33 -61
- package/src/form/radio/useRadio.ts +5 -1
- package/src/form/search-field/SearchField.tsx +5 -1
- package/src/form/search-field/stories/search-field.stories.tsx +25 -1
- package/src/form/stories/fieldset.stories.tsx +6 -2
- package/src/form/stories/select.stories.tsx +1 -1
- package/src/form/stories/text-field.stories.tsx +23 -1
- package/src/form/stories/textarea.stories.tsx +12 -2
- package/src/grid/stories/grid.stories.mdx +3 -3
- package/src/guide-panel/stories/example.css +4 -4
- package/src/guide-panel/stories/guidepanel.stories.mdx +7 -7
- package/src/guide-panel/stories/guidepanel.stories.tsx +6 -6
- package/src/loader/Loader.tsx +1 -1
- package/src/loader/stories/loader.stories.mdx +0 -16
- package/src/popover/stories/popover.stories.tsx +1 -1
- package/src/speech-bubble/stories/speechbubble.stories.mdx +4 -4
- package/src/speech-bubble/stories/speechbubble.stories.tsx +2 -2
- package/src/typography/stories/index.css +1 -1
- package/LICENCE +0 -31
|
@@ -58,9 +58,12 @@ const Fieldset = (0, react_1.forwardRef)((props, ref) => {
|
|
|
58
58
|
react_1.default.createElement(__1.Label, { size: size, as: "legend", className: (0, classnames_1.default)("navds-fieldset__legend", {
|
|
59
59
|
"sr-only": !!hideLegend,
|
|
60
60
|
}) }, legend),
|
|
61
|
-
!!description &&
|
|
62
|
-
|
|
63
|
-
|
|
61
|
+
!!description &&
|
|
62
|
+
(size === "medium" ? (react_1.default.createElement(__1.BodyShort, { className: (0, classnames_1.default)("navds-fieldset__description", {
|
|
63
|
+
"sr-only": !!hideLegend,
|
|
64
|
+
}), id: inputDescriptionId, size: "small", as: "div" }, props.description)) : (react_1.default.createElement(__1.Detail, { className: (0, classnames_1.default)("navds-fieldset__description", {
|
|
65
|
+
"sr-only": !!hideLegend,
|
|
66
|
+
}), id: inputDescriptionId, size: "small", as: "div" }, props.description))),
|
|
64
67
|
children,
|
|
65
68
|
react_1.default.createElement("div", { id: errorId, "aria-relevant": "additions removals", "aria-live": "polite", className: "navds-fieldset__error" }, showErrorMsg && (react_1.default.createElement(ErrorMessage_1.default, { size: size }, props.error))))));
|
|
66
69
|
});
|
package/cjs/form/Select.js
CHANGED
|
@@ -42,11 +42,14 @@ const useFormField_1 = require("./useFormField");
|
|
|
42
42
|
const Select = (0, react_1.forwardRef)((props, ref) => {
|
|
43
43
|
const { inputProps, errorId, showErrorMsg, hasError, size, inputDescriptionId, } = (0, useFormField_1.useFormField)(props, "textField");
|
|
44
44
|
const { children, label, className, description, htmlSize, hideLabel = false } = props, rest = __rest(props, ["children", "label", "className", "description", "htmlSize", "hideLabel"]);
|
|
45
|
-
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size}`, {
|
|
45
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size}`, {
|
|
46
|
+
"navds-select--error": hasError,
|
|
47
|
+
"navds-select--disabled": !!inputProps.disabled,
|
|
48
|
+
}) },
|
|
46
49
|
react_1.default.createElement(__1.Label, { htmlFor: inputProps.id, size: size, as: "label", className: (0, classnames_1.default)("navds-select__label", {
|
|
47
50
|
"sr-only": hideLabel,
|
|
48
51
|
}) }, label),
|
|
49
|
-
!!description && (react_1.default.createElement(__1.BodyShort, { className: (0, classnames_1.default)("navds-select__description", {
|
|
52
|
+
!!description && (react_1.default.createElement(__1.BodyShort, { as: "div", className: (0, classnames_1.default)("navds-select__description", {
|
|
50
53
|
"sr-only": hideLabel,
|
|
51
54
|
}), id: inputDescriptionId, size: size }, description)),
|
|
52
55
|
react_1.default.createElement("div", { className: "navds-select__container" },
|
package/cjs/form/TextField.js
CHANGED
|
@@ -41,11 +41,16 @@ const useFormField_1 = require("./useFormField");
|
|
|
41
41
|
const TextField = (0, react_1.forwardRef)((props, ref) => {
|
|
42
42
|
const { inputProps, errorId, showErrorMsg, hasError, size, inputDescriptionId, } = (0, useFormField_1.useFormField)(props, "textField");
|
|
43
43
|
const { label, className, description, htmlSize, hideLabel = false, type = "text" } = props, rest = __rest(props, ["label", "className", "description", "htmlSize", "hideLabel", "type"]);
|
|
44
|
-
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size}`, {
|
|
44
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size}`, {
|
|
45
|
+
"navds-text-field--error": hasError,
|
|
46
|
+
"navds-text-field--disabled": !!inputProps.disabled,
|
|
47
|
+
}) },
|
|
45
48
|
react_1.default.createElement(__1.Label, { htmlFor: inputProps.id, size: size, as: "label", className: (0, classnames_1.default)("navds-text-field__label", { "sr-only": hideLabel }) }, label),
|
|
46
|
-
!!description && (react_1.default.createElement(__1.BodyShort, { className: (0, classnames_1.default)("navds-text-field__description", {
|
|
49
|
+
!!description && (react_1.default.createElement(react_1.default.Fragment, null, size === "medium" ? (react_1.default.createElement(__1.BodyShort, { className: (0, classnames_1.default)("navds-text-field__description", {
|
|
47
50
|
"sr-only": hideLabel,
|
|
48
|
-
}), id: inputDescriptionId, size:
|
|
51
|
+
}), id: inputDescriptionId, size: "small", as: "div" }, description)) : (react_1.default.createElement(__1.Detail, { className: (0, classnames_1.default)("navds-text-field__description", {
|
|
52
|
+
"sr-only": hideLabel,
|
|
53
|
+
}), id: inputDescriptionId, size: "small", as: "div" }, description)))),
|
|
49
54
|
react_1.default.createElement("input", Object.assign({}, (0, __1.omit)(rest, ["error", "errorId", "size"]), inputProps, { ref: ref, type: type, className: (0, classnames_1.default)("navds-text-field__input", "navds-body-short", `navds-body-${size !== null && size !== void 0 ? size : "medium"}`), size: htmlSize })),
|
|
50
55
|
react_1.default.createElement("div", { id: errorId, "aria-relevant": "additions removals", "aria-live": "polite" }, showErrorMsg && react_1.default.createElement(ErrorMessage_1.default, { size: size }, props.error))));
|
|
51
56
|
});
|
package/cjs/form/Textarea.js
CHANGED
|
@@ -46,11 +46,14 @@ const Textarea = (0, react_1.forwardRef)((props, ref) => {
|
|
|
46
46
|
const { label, className, description, maxLength, hideLabel = false } = props, rest = __rest(props, ["label", "className", "description", "maxLength", "hideLabel"]);
|
|
47
47
|
const maxLengthId = `TextareaMaxLength-${(0, __2.useId)()}`;
|
|
48
48
|
const hasMaxLength = maxLength !== undefined && maxLength > 0;
|
|
49
|
-
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size}`, {
|
|
49
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size}`, {
|
|
50
|
+
"navds-textarea--error": hasError,
|
|
51
|
+
"navds-textarea--disabled": !!inputProps.disabled,
|
|
52
|
+
}) },
|
|
50
53
|
react_1.default.createElement(__1.Label, { htmlFor: inputProps.id, size: size, as: "label", className: (0, classnames_1.default)("navds-textarea__label", {
|
|
51
54
|
"sr-only": hideLabel,
|
|
52
55
|
}) }, label),
|
|
53
|
-
!!description && (react_1.default.createElement(__1.BodyShort, { className: (0, classnames_1.default)("navds-textarea__description", {
|
|
56
|
+
!!description && (react_1.default.createElement(__1.BodyShort, { as: "div", className: (0, classnames_1.default)("navds-textarea__description", {
|
|
54
57
|
"sr-only": hideLabel,
|
|
55
58
|
}), id: inputDescriptionId, size: size }, description)),
|
|
56
59
|
react_1.default.createElement("div", { className: "navds-textarea__wrapper" },
|
|
@@ -25,25 +25,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
25
25
|
const react_1 = __importStar(require("react"));
|
|
26
26
|
const classnames_1 = __importDefault(require("classnames"));
|
|
27
27
|
const useCheckbox_1 = __importDefault(require("./useCheckbox"));
|
|
28
|
-
const ErrorMessage_1 = __importDefault(require("../ErrorMessage"));
|
|
29
28
|
const __1 = require("../..");
|
|
30
29
|
const Checkbox = (0, react_1.forwardRef)((props, ref) => {
|
|
31
|
-
const { inputProps,
|
|
30
|
+
const { inputProps, hasError, size } = (0, useCheckbox_1.default)(props);
|
|
31
|
+
const Description = size === "medium" ? __1.BodyShort : __1.Detail;
|
|
32
32
|
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(props.className, "navds-checkbox", `navds-checkbox--${size}`, {
|
|
33
33
|
"navds-checkbox--error": hasError,
|
|
34
|
-
"navds-checkbox--
|
|
35
|
-
"navds-checkbox--with-description": !!props.description,
|
|
34
|
+
"navds-checkbox--disabled": inputProps.disabled,
|
|
36
35
|
}) },
|
|
37
36
|
react_1.default.createElement("input", Object.assign({}, (0, __1.omit)(props, [
|
|
38
37
|
"children",
|
|
39
38
|
"size",
|
|
40
39
|
"error",
|
|
41
|
-
"errorId",
|
|
42
40
|
"description",
|
|
43
41
|
"hideLabel",
|
|
44
42
|
]), inputProps, { className: "navds-checkbox__input", ref: ref })),
|
|
45
|
-
react_1.default.createElement(
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
react_1.default.createElement("label", { htmlFor: inputProps.id, className: "navds-checkbox__label" },
|
|
44
|
+
react_1.default.createElement("div", { className: (0, classnames_1.default)("navds-checkbox__content", {
|
|
45
|
+
"sr-only": props.hideLabel,
|
|
46
|
+
}) },
|
|
47
|
+
react_1.default.createElement(__1.BodyShort, { as: "div", size: size }, props.children),
|
|
48
|
+
props.description && (react_1.default.createElement(Description, { as: "div", size: "small", className: "navds-checkbox__description" }, props.description))))));
|
|
48
49
|
});
|
|
49
50
|
exports.default = Checkbox;
|
|
@@ -14,13 +14,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
const react_1 = require("react");
|
|
15
15
|
const useFormField_1 = require("../useFormField");
|
|
16
16
|
const CheckboxGroup_1 = require("./CheckboxGroup");
|
|
17
|
+
const __1 = require("../..");
|
|
17
18
|
/**
|
|
18
19
|
* Handles props for Checkboxes in context with Fieldset and CheckboxGroup
|
|
19
20
|
*/
|
|
20
21
|
const useCheckbox = (_a) => {
|
|
21
22
|
var { children } = _a, props = __rest(_a, ["children"]);
|
|
22
23
|
const checkboxGroup = (0, react_1.useContext)(CheckboxGroup_1.CheckboxGroupContext);
|
|
23
|
-
const _b = (0, useFormField_1.useFormField)(props, "checkbox"), { inputProps } = _b, rest = __rest(_b, ["inputProps"]);
|
|
24
|
+
const _b = (0, useFormField_1.useFormField)((0, __1.omit)(props, ["description"]), "checkbox"), { inputProps } = _b, rest = __rest(_b, ["inputProps"]);
|
|
24
25
|
if (checkboxGroup) {
|
|
25
26
|
if (props.checked) {
|
|
26
27
|
console.warn("`checked` is unsupported on <Checkbox> elements within a <CheckboxGroup>. Please set a `value` or `defaultValue` on <CheckboxGroup> instead.");
|
package/cjs/form/radio/Radio.js
CHANGED
|
@@ -25,24 +25,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
25
25
|
const react_1 = __importStar(require("react"));
|
|
26
26
|
const classnames_1 = __importDefault(require("classnames"));
|
|
27
27
|
const __1 = require("../..");
|
|
28
|
-
const ErrorMessage_1 = __importDefault(require("../ErrorMessage"));
|
|
29
28
|
const useRadio_1 = require("./useRadio");
|
|
30
29
|
const Radio = (0, react_1.forwardRef)((props, ref) => {
|
|
31
|
-
const { inputProps,
|
|
30
|
+
const { inputProps, size, hasError } = (0, useRadio_1.useRadio)(props);
|
|
31
|
+
const Description = size === "medium" ? __1.BodyShort : __1.Detail;
|
|
32
32
|
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(props.className, "navds-radio", `navds-radio--${size}`, {
|
|
33
33
|
"navds-radio--error": hasError,
|
|
34
|
-
"navds-radio--
|
|
35
|
-
"navds-radio--with-description": !!props.description,
|
|
34
|
+
"navds-radio--disabled": inputProps.disabled,
|
|
36
35
|
}) },
|
|
37
|
-
react_1.default.createElement("input", Object.assign({}, (0, __1.omit)(props, [
|
|
38
|
-
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
"description",
|
|
43
|
-
]), inputProps, { className: "navds-radio__input", ref: ref })),
|
|
44
|
-
react_1.default.createElement(__1.BodyShort, { as: "label", htmlFor: inputProps.id, size: size, className: "navds-radio__label" }, props.children),
|
|
45
|
-
props.description && (react_1.default.createElement(__1.BodyShort, { size: size, id: inputDescriptionId, className: "navds-radio__description" }, props.description)),
|
|
46
|
-
react_1.default.createElement("div", { id: errorId, "aria-relevant": "additions removals", "aria-live": "polite" }, showErrorMsg && react_1.default.createElement(ErrorMessage_1.default, { size: size }, props.error))));
|
|
36
|
+
react_1.default.createElement("input", Object.assign({}, (0, __1.omit)(props, ["children", "size", "description"]), inputProps, { className: "navds-radio__input", ref: ref })),
|
|
37
|
+
react_1.default.createElement("label", { htmlFor: inputProps.id, className: "navds-radio__label" },
|
|
38
|
+
react_1.default.createElement("div", { className: "navds-radio__content" },
|
|
39
|
+
react_1.default.createElement(__1.BodyShort, { as: "div", size: size }, props.children),
|
|
40
|
+
props.description && (react_1.default.createElement(Description, { as: "div", size: "small", className: "navds-radio__description" }, props.description))))));
|
|
47
41
|
});
|
|
48
42
|
exports.default = Radio;
|
|
@@ -15,12 +15,13 @@ exports.useRadio = void 0;
|
|
|
15
15
|
const react_1 = require("react");
|
|
16
16
|
const useFormField_1 = require("../useFormField");
|
|
17
17
|
const RadioGroup_1 = require("./RadioGroup");
|
|
18
|
+
const __1 = require("../..");
|
|
18
19
|
/**
|
|
19
20
|
* Handles props for Radios in context with Fieldset and RadioGroup
|
|
20
21
|
*/
|
|
21
22
|
const useRadio = (props) => {
|
|
22
23
|
const radioGroup = (0, react_1.useContext)(RadioGroup_1.RadioGroupContext);
|
|
23
|
-
const _a = (0, useFormField_1.useFormField)(props, "radio"), { inputProps } = _a, rest = __rest(_a, ["inputProps"]);
|
|
24
|
+
const _a = (0, useFormField_1.useFormField)((0, __1.omit)(props, ["description"]), "radio"), { inputProps } = _a, rest = __rest(_a, ["inputProps"]);
|
|
24
25
|
if (!radioGroup) {
|
|
25
26
|
console.warn("<Radio> must be used inside <RadioGroup>.");
|
|
26
27
|
}
|
|
@@ -46,11 +46,14 @@ exports.SearchFieldContext = react_1.default.createContext(null);
|
|
|
46
46
|
const SearchField = (0, react_1.forwardRef)((props, ref) => {
|
|
47
47
|
const { inputProps, errorId, showErrorMsg, hasError, size, inputDescriptionId, } = (0, useFormField_1.useFormField)(props, "searchfield");
|
|
48
48
|
const { className, hideLabel, children, label, description, error } = props, rest = __rest(props, ["className", "hideLabel", "children", "label", "description", "error"]);
|
|
49
|
-
return (react_1.default.createElement("div", Object.assign({ ref: ref }, (0, __1.omit)(rest, ["id", "error", "errorId", "size", "disabled"]), { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size !== null && size !== void 0 ? size : "medium"}`, "navds-search-field", {
|
|
49
|
+
return (react_1.default.createElement("div", Object.assign({ ref: ref }, (0, __1.omit)(rest, ["id", "error", "errorId", "size", "disabled"]), { className: (0, classnames_1.default)(className, "navds-form-field", `navds-form-field--${size !== null && size !== void 0 ? size : "medium"}`, "navds-search-field", {
|
|
50
|
+
"navds-search-field--error": hasError,
|
|
51
|
+
"navds-search-field--disabled": !!inputProps.disabled,
|
|
52
|
+
}) }),
|
|
50
53
|
react_1.default.createElement(__1.Label, { htmlFor: inputProps.id, size: size, as: "label", className: (0, classnames_1.default)("navds-text-field__label", {
|
|
51
54
|
"sr-only": hideLabel,
|
|
52
55
|
}) }, label),
|
|
53
|
-
!!description && (react_1.default.createElement(__1.BodyShort, { className: (0, classnames_1.default)("navds-text-field__description", {
|
|
56
|
+
!!description && (react_1.default.createElement(__1.BodyShort, { as: "div", className: (0, classnames_1.default)("navds-text-field__description", {
|
|
54
57
|
"sr-only": hideLabel,
|
|
55
58
|
}), id: inputDescriptionId, size: size }, description)),
|
|
56
59
|
react_1.default.createElement("div", { className: "navds-search-field__input-wrapper" },
|
package/cjs/loader/Loader.js
CHANGED
|
@@ -44,6 +44,6 @@ const Loader = (0, react_1.forwardRef)((_a, ref) => {
|
|
|
44
44
|
}), focusable: "false", viewBox: "0 0 50 50", preserveAspectRatio: "xMidYMid" }, rest),
|
|
45
45
|
react_1.default.createElement("title", { id: id !== null && id !== void 0 ? id : `loader-${internalId}` }, title),
|
|
46
46
|
react_1.default.createElement("circle", { className: "navds-loader__background", xmlns: "http://www.w3.org/2000/svg", cx: "25", cy: "25", r: "20", fill: "none", strokeWidth: "5" }),
|
|
47
|
-
react_1.default.createElement("circle", { className: "navds-loader__foreground", cx: "25", cy: "25", r: "20", stroke: "var(--navds-color-gray-
|
|
47
|
+
react_1.default.createElement("circle", { className: "navds-loader__foreground", cx: "25", cy: "25", r: "20", stroke: "var(--navds-global-color-gray-400)", fill: "none", strokeWidth: "5", strokeDasharray: "50 155", strokeLinecap: "round" })));
|
|
48
48
|
});
|
|
49
49
|
exports.default = Loader;
|