smarthr-ui 35.4.0 → 36.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import React, { useMemo, } from 'react';
1
+ import React, { useCallback, useEffect, useMemo, } from 'react';
2
2
  import innerText from 'react-innertext';
3
3
  import styled, { css } from 'styled-components';
4
4
  import { Dropdown, DropdownContent, DropdownScrollArea, DropdownTrigger } from '..';
@@ -10,16 +10,84 @@ import { useClassNames } from './useClassNames';
10
10
  export const DropdownMenuButton = ({ label, children, triggerSize, onlyIconTrigger = false, className = '', ...props }) => {
11
11
  const themes = useTheme();
12
12
  const classNames = useClassNames();
13
+ const containerRef = React.useRef(null);
13
14
  const triggerLabel = useMemo(() => onlyIconTrigger ? (React.createElement(FaEllipsisHIcon, { alt: typeof label === 'string' ? label : innerText(label) })) : (label), [onlyIconTrigger, label]);
14
15
  const triggerSuffix = useMemo(
15
16
  // eslint-disable-next-line react/jsx-no-useless-fragment
16
17
  () => (onlyIconTrigger ? React.createElement(React.Fragment, null) : React.createElement(FaCaretDownIcon, { alt: "\u5019\u88DC\u3092\u958B\u304F" })), [onlyIconTrigger]);
18
+ const handleKeyDown = useCallback((e) => {
19
+ if (!containerRef.current || !document.activeElement) {
20
+ return;
21
+ }
22
+ const allItems = Array.from(containerRef.current.querySelectorAll("li > *"));
23
+ const { hoveredItem, tabbableItems: enabledItems, focusedIndex } = allItems.reduce((acc, item) => {
24
+ if (item.matches(":hover") && acc.hoveredItem === null) {
25
+ acc.hoveredItem = item;
26
+ }
27
+ // NOTE: disalbedの判定は、自身がdisabledか、または子要素にdisabledがあるかで判定する。
28
+ const isDisabled = item.matches(":disabled") || Array.from(item.children).some(child => child.matches(':disabled'));
29
+ if (isDisabled) {
30
+ return acc;
31
+ }
32
+ acc.tabbableItems.push(item);
33
+ if (document.activeElement === item) {
34
+ acc.focusedIndex = acc.tabbableItems.length - 1;
35
+ }
36
+ return acc;
37
+ }, {
38
+ hoveredItem: null,
39
+ tabbableItems: [],
40
+ focusedIndex: -1
41
+ });
42
+ if (e.key === 'Up' || e.key === 'ArrowUp' || e.key === 'Left' || e.key === 'ArrowLeft') {
43
+ const calculateNextIndex = () => {
44
+ // MEMO: itemにフォーカスがない && ホバー状態のアイテムがある場合は、その一つ前のアイテムをフォーカスする
45
+ if (focusedIndex < 0 && hoveredItem) {
46
+ return enabledItems.indexOf(hoveredItem) - 1;
47
+ }
48
+ // MEMO: フォーカスされているアイテムが最前列の場合は、最後尾のアイテムをフォーカスする
49
+ if (focusedIndex <= 0) {
50
+ return enabledItems.length - 1;
51
+ }
52
+ return focusedIndex - 1;
53
+ };
54
+ const nextIndex = calculateNextIndex();
55
+ const nextItem = enabledItems[nextIndex];
56
+ if (nextItem instanceof HTMLElement) {
57
+ nextItem.focus();
58
+ }
59
+ }
60
+ if (e.key === 'Down' || e.key === 'ArrowDown' || e.key === 'Right' || e.key === 'ArrowRight') {
61
+ const calculateNextIndex = () => {
62
+ // MEMO: フォーカスされているアイテムが最後尾の場合は、最初のアイテムをフォーカスする
63
+ if (focusedIndex > -1) {
64
+ return (focusedIndex + 1) % enabledItems.length;
65
+ }
66
+ // MEMO: itemにフォーカスがない && ホバー状態のアイテムがある場合は、その一つ後のアイテムをフォーカスする
67
+ if (hoveredItem) {
68
+ return (enabledItems.indexOf(hoveredItem) + 1) % enabledItems.length;
69
+ }
70
+ return 0;
71
+ };
72
+ const nextIndex = calculateNextIndex();
73
+ const nextItem = enabledItems[nextIndex];
74
+ if (nextItem instanceof HTMLElement) {
75
+ nextItem.focus();
76
+ }
77
+ }
78
+ }, []);
79
+ useEffect(() => {
80
+ document.addEventListener('keydown', handleKeyDown);
81
+ return () => {
82
+ document.removeEventListener('keydown', handleKeyDown);
83
+ };
84
+ }, [handleKeyDown]);
17
85
  return (React.createElement(Dropdown, null,
18
86
  React.createElement(DropdownTrigger, { className: `${classNames.wrapper}${className && ` ${className}`}` },
19
87
  React.createElement(TriggerButton, { ...props, suffix: triggerSuffix, size: triggerSize, square: onlyIconTrigger, className: classNames.trigger }, triggerLabel)),
20
88
  React.createElement(DropdownContent, null,
21
89
  React.createElement(DropdownScrollArea, null,
22
- React.createElement(ActionList, { themes: themes, className: classNames.panel }, React.Children.map(children, (item, i) =>
90
+ React.createElement(ActionList, { ref: containerRef, themes: themes, className: classNames.panel }, React.Children.map(children, (item, i) =>
23
91
  // MEMO: {flag && <Button/>}のような書き方に対応させる為、型を変換する
24
92
  // itemの存在チェックでfalsyな値は弾かれている想定
25
93
  item ? React.createElement("li", { key: i }, actionItem(item)) : null))))));
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenuButton.js","sourceRoot":"","sources":["../../../../src/components/Dropdown/DropdownMenuButton/DropdownMenuButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DropdownMenuButton.js","sourceRoot":"","sources":["../../../../src/components/Dropdown/DropdownMenuButton/DropdownMenuButton.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { useTheme } from '../../hooks/useTheme';
5
5
  import { Heading } from '../Heading';
6
6
  import { FaExclamationCircleIcon } from '../Icon';
7
7
  import { Input } from '../Input';
8
+ import { Stack } from '../Layout/Stack';
8
9
  import { StatusLabel } from '../StatusLabel';
9
10
  import { useClassNames } from './useClassNames';
10
11
  /**
@@ -12,6 +13,7 @@ import { useClassNames } from './useClassNames';
12
13
  */
13
14
  export const FieldSet = ({ label, labelType = 'subBlockTitle', labelTagType = 'span', errorMessage, helpMessage, className = '', labelSuffix, children, ...props }) => {
14
15
  const theme = useTheme();
16
+ const managedHtmlFor = useId();
15
17
  const helpId = useId();
16
18
  const classNames = useClassNames();
17
19
  return (React.createElement(Wrapper, { "$width": props.width || 'auto', className: `${className} ${classNames.wrapper}`, "aria-describedby": helpMessage ? helpId : undefined },
@@ -19,14 +21,12 @@ export const FieldSet = ({ label, labelType = 'subBlockTitle', labelTagType = 's
19
21
  React.createElement(LabelHeading, { type: labelType, tag: labelTagType, className: classNames.titleText }, label),
20
22
  props.required && (React.createElement(StatusLabel, { type: "red", className: classNames.label }, "\u5FC5\u9808")),
21
23
  labelSuffix && labelSuffix),
24
+ helpMessage && (React.createElement(HelpMessage, { themes: theme, id: helpId, className: classNames.help }, helpMessage)),
25
+ errorMessage && (React.createElement(StyledStack, { themes: theme, gap: 0, id: `${managedHtmlFor}_errorMessages` }, (Array.isArray(errorMessage) ? errorMessage : [errorMessage]).map((message, index) => (React.createElement(ErrorMessage, { themes: theme, key: index, className: classNames.error },
26
+ React.createElement(FaExclamationCircleIcon, { text: message, className: classNames.errorText })))))),
22
27
  children ? (children) : (
23
28
  // eslint-disable-next-line smarthr/a11y-input-has-name-attribute
24
- React.createElement(Input, { ...props, error: !!errorMessage, className: classNames.input })),
25
- errorMessage &&
26
- (Array.isArray(errorMessage) ? errorMessage : [errorMessage]).map((message, index) => (React.createElement(Error, { themes: theme, key: index, className: classNames.error },
27
- React.createElement(ErrorIcon, { color: theme.color.DANGER, className: classNames.errorIcon }),
28
- React.createElement(ErrorText, { className: classNames.errorText }, message)))),
29
- helpMessage && (React.createElement(Help, { id: helpId, themes: theme, className: classNames.help }, helpMessage))));
29
+ React.createElement(Input, { ...props, error: !!errorMessage, className: classNames.input }))));
30
30
  };
31
31
  const Wrapper = styled.div `
32
32
  ${({ $width }) => css `
@@ -48,26 +48,23 @@ const Title = styled.div `
48
48
  const LabelHeading = styled(Heading) `
49
49
  display: inline-block;
50
50
  `;
51
- const Help = styled.div `
52
- ${({ themes: { color, fontSize, spacingByChar } }) => css `
53
- margin: ${spacingByChar(0.5)} 0 0 0;
54
- font-size: ${fontSize.S};
55
- line-height: 1;
56
- color: ${color.TEXT_GREY};
51
+ const HelpMessage = styled.p `
52
+ ${({ themes: { spacingByChar } }) => css `
53
+ margin-bottom: ${spacingByChar(0.5)};
54
+
57
55
  `}
58
56
  `;
59
- const Error = styled.div `
60
- ${({ themes: { fontSize, spacingByChar } }) => css `
61
- margin: ${spacingByChar(0.5)} 0 0 0;
62
- font-size: ${fontSize.S};
63
- line-height: 1;
57
+ const StyledStack = styled(Stack) `
58
+ ${({ themes: { spacingByChar } }) => css `
59
+ margin-bottom: ${spacingByChar(0.5)};
60
+
64
61
  `}
65
62
  `;
66
- const ErrorIcon = styled(FaExclamationCircleIcon) `
67
- margin-right: 0.4rem;
68
- vertical-align: middle;
69
- `;
70
- const ErrorText = styled.span `
71
- vertical-align: middle;
63
+ const ErrorMessage = styled.p `
64
+ ${({ themes: { color } }) => css `
65
+ .smarthr-ui-FieldSet-errorText {
66
+ color: ${color.DANGER};
67
+ }
68
+ `}
72
69
  `;
73
70
  //# sourceMappingURL=FieldSet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldSet.js","sourceRoot":"","sources":["../../../src/components/FieldSet/FieldSet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldSet.js","sourceRoot":"","sources":["../../../src/components/FieldSet/FieldSet.tsx"],"names":[],"mappings":"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"}