@cloudscape-design/components 3.0.599 → 3.0.601
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/app-layout/classic.d.ts +5 -1
- package/app-layout/classic.d.ts.map +1 -1
- package/app-layout/classic.js +1 -1
- package/app-layout/classic.js.map +1 -1
- package/app-layout/implementation.d.ts +5 -1
- package/app-layout/implementation.d.ts.map +1 -1
- package/app-layout/implementation.js.map +1 -1
- package/app-layout/interfaces.d.ts +2 -0
- package/app-layout/interfaces.d.ts.map +1 -1
- package/app-layout/interfaces.js.map +1 -1
- package/app-layout/internal.d.ts +5 -1
- package/app-layout/internal.d.ts.map +1 -1
- package/app-layout/visual-refresh/context.d.ts +3 -3
- package/app-layout/visual-refresh/context.d.ts.map +1 -1
- package/app-layout/visual-refresh/context.js +1 -1
- package/app-layout/visual-refresh/context.js.map +1 -1
- package/app-layout/visual-refresh/index.d.ts +5 -1
- package/app-layout/visual-refresh/index.d.ts.map +1 -1
- package/app-layout/visual-refresh/index.js.map +1 -1
- package/app-layout/widget.d.ts +2 -2
- package/app-layout/widget.d.ts.map +1 -1
- package/app-layout/widget.js.map +1 -1
- package/button-dropdown/internal.d.ts.map +1 -1
- package/button-dropdown/internal.js +2 -1
- package/button-dropdown/internal.js.map +1 -1
- package/calendar/grid/index.d.ts +1 -1
- package/calendar/grid/index.d.ts.map +1 -1
- package/calendar/grid/index.js.map +1 -1
- package/calendar/grid/use-calendar-grid-keyboard-navigation.d.ts +1 -1
- package/calendar/grid/use-calendar-grid-keyboard-navigation.d.ts.map +1 -1
- package/calendar/grid/use-calendar-grid-keyboard-navigation.js +16 -28
- package/calendar/grid/use-calendar-grid-keyboard-navigation.js.map +1 -1
- package/code-editor/index.d.ts.map +1 -1
- package/code-editor/index.js +2 -2
- package/code-editor/index.js.map +1 -1
- package/code-editor/interfaces.d.ts +2 -1
- package/code-editor/interfaces.d.ts.map +1 -1
- package/code-editor/interfaces.js.map +1 -1
- package/code-editor/preferences-modal.d.ts +2 -0
- package/code-editor/preferences-modal.d.ts.map +1 -1
- package/code-editor/preferences-modal.js +1 -1
- package/code-editor/preferences-modal.js.map +1 -1
- package/collection-preferences/index.d.ts +1 -1
- package/collection-preferences/index.d.ts.map +1 -1
- package/collection-preferences/index.js +2 -2
- package/collection-preferences/index.js.map +1 -1
- package/collection-preferences/interfaces.d.ts +2 -1
- package/collection-preferences/interfaces.d.ts.map +1 -1
- package/collection-preferences/interfaces.js.map +1 -1
- package/date-range-picker/calendar/grids/grid.d.ts +1 -1
- package/date-range-picker/calendar/grids/grid.d.ts.map +1 -1
- package/date-range-picker/calendar/grids/grid.js +4 -4
- package/date-range-picker/calendar/grids/grid.js.map +1 -1
- package/date-range-picker/calendar/grids/index.d.ts.map +1 -1
- package/date-range-picker/calendar/grids/index.js +14 -28
- package/date-range-picker/calendar/grids/index.js.map +1 -1
- package/date-range-picker/calendar/grids/styles.css.js +27 -25
- package/date-range-picker/calendar/grids/styles.scoped.css +54 -54
- package/date-range-picker/calendar/grids/styles.selectors.js +27 -25
- package/internal/components/portal/index.d.ts +3 -1
- package/internal/components/portal/index.d.ts.map +1 -1
- package/internal/components/portal/index.js +36 -9
- package/internal/components/portal/index.js.map +1 -1
- package/internal/direction.d.ts +9 -0
- package/internal/direction.d.ts.map +1 -0
- package/internal/direction.js +15 -0
- package/internal/direction.js.map +1 -0
- package/internal/environment.js +1 -1
- package/internal/environment.json +1 -1
- package/internal/manifest.json +1 -1
- package/internal/utils/handle-key.d.ts +13 -0
- package/internal/utils/handle-key.d.ts.map +1 -0
- package/internal/utils/handle-key.js +37 -0
- package/internal/utils/handle-key.js.map +1 -0
- package/modal/interfaces.d.ts +16 -2
- package/modal/interfaces.d.ts.map +1 -1
- package/modal/interfaces.js.map +1 -1
- package/modal/internal.d.ts +1 -1
- package/modal/internal.d.ts.map +1 -1
- package/modal/internal.js +4 -4
- package/modal/internal.js.map +1 -1
- package/package.json +1 -1
- package/s3-resource-selector/index.d.ts.map +1 -1
- package/s3-resource-selector/index.js +3 -1
- package/s3-resource-selector/index.js.map +1 -1
- package/s3-resource-selector/interfaces.d.ts +2 -1
- package/s3-resource-selector/interfaces.d.ts.map +1 -1
- package/s3-resource-selector/interfaces.js.map +1 -1
- package/s3-resource-selector/s3-modal/index.d.ts +3 -1
- package/s3-resource-selector/s3-modal/index.d.ts.map +1 -1
- package/s3-resource-selector/s3-modal/index.js +2 -2
- package/s3-resource-selector/s3-modal/index.js.map +1 -1
- package/segmented-control/internal-segmented-control.d.ts.map +1 -1
- package/segmented-control/internal-segmented-control.js +5 -6
- package/segmented-control/internal-segmented-control.js.map +1 -1
- package/table/body-cell/styles.css.js +43 -42
- package/table/body-cell/styles.scoped.css +203 -200
- package/table/body-cell/styles.selectors.js +43 -42
- package/table/body-cell/td-element.js +1 -1
- package/table/body-cell/td-element.js.map +1 -1
- package/table/index.d.ts.map +1 -1
- package/table/index.js +3 -0
- package/table/index.js.map +1 -1
- package/table/table-role/grid-navigation.js +8 -8
- package/table/table-role/grid-navigation.js.map +1 -1
- package/table/table-role/utils.js +1 -1
- package/table/table-role/utils.js.map +1 -1
- package/tabs/scroll-utils.d.ts +4 -4
- package/tabs/scroll-utils.d.ts.map +1 -1
- package/tabs/scroll-utils.js +14 -14
- package/tabs/scroll-utils.js.map +1 -1
- package/tabs/tab-header-bar.d.ts.map +1 -1
- package/tabs/tab-header-bar.js +25 -50
- package/tabs/tab-header-bar.js.map +1 -1
|
@@ -10,6 +10,7 @@ import { hasValue } from '../../../internal/utils/has-value';
|
|
|
10
10
|
import { useDateCache } from '../../../internal/hooks/use-date-cache';
|
|
11
11
|
import { moveNextDay, movePrevDay, moveNextWeek, movePrevWeek, getBaseDay } from '../../../calendar/utils/navigation';
|
|
12
12
|
import { findDateToFocus } from '../utils';
|
|
13
|
+
import handleKey from '../../../internal/utils/handle-key';
|
|
13
14
|
function isVisible(date, baseDate, isSingleGrid) {
|
|
14
15
|
if (isSingleGrid) {
|
|
15
16
|
return isSameMonth(date, baseDate);
|
|
@@ -33,37 +34,22 @@ export const Grids = ({ baseDate, selectedStartDate, selectedEndDate, focusedDat
|
|
|
33
34
|
onFocusedDateChange(newFocusedDate);
|
|
34
35
|
}
|
|
35
36
|
}, [baseDate, focusedDate, isSingleGrid, isDateEnabled, onFocusedDateChange]);
|
|
36
|
-
const onGridKeyDownHandler = (
|
|
37
|
+
const onGridKeyDownHandler = (event) => {
|
|
37
38
|
let updatedFocusDate;
|
|
38
|
-
|
|
39
|
+
const keys = [KeyCode.up, KeyCode.down, KeyCode.left, KeyCode.right, KeyCode.space, KeyCode.enter];
|
|
40
|
+
if (focusedDate === null || keys.indexOf(event.keyCode) === -1) {
|
|
39
41
|
return;
|
|
40
42
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
updatedFocusDate = moveNextDay(focusedDate, isDateEnabled);
|
|
52
|
-
break;
|
|
53
|
-
case KeyCode.left:
|
|
54
|
-
e.preventDefault();
|
|
55
|
-
updatedFocusDate = movePrevDay(focusedDate, isDateEnabled);
|
|
56
|
-
break;
|
|
57
|
-
case KeyCode.up:
|
|
58
|
-
e.preventDefault();
|
|
59
|
-
updatedFocusDate = movePrevWeek(focusedDate, isDateEnabled);
|
|
60
|
-
break;
|
|
61
|
-
case KeyCode.down:
|
|
62
|
-
e.preventDefault();
|
|
63
|
-
updatedFocusDate = moveNextWeek(focusedDate, isDateEnabled);
|
|
64
|
-
break;
|
|
65
|
-
default:
|
|
66
|
-
return;
|
|
43
|
+
event.preventDefault();
|
|
44
|
+
handleKey(event, {
|
|
45
|
+
onActivate: () => focusedDate && onSelectDate(focusedDate),
|
|
46
|
+
onBlockEnd: () => focusedDate && (updatedFocusDate = moveNextWeek(focusedDate, isDateEnabled)),
|
|
47
|
+
onBlockStart: () => focusedDate && (updatedFocusDate = movePrevWeek(focusedDate, isDateEnabled)),
|
|
48
|
+
onInlineEnd: () => focusedDate && (updatedFocusDate = moveNextDay(focusedDate, isDateEnabled)),
|
|
49
|
+
onInlineStart: () => focusedDate && (updatedFocusDate = movePrevDay(focusedDate, isDateEnabled)),
|
|
50
|
+
});
|
|
51
|
+
if (!updatedFocusDate) {
|
|
52
|
+
return;
|
|
67
53
|
}
|
|
68
54
|
const updatedDateIsVisible = isVisible(updatedFocusDate, baseDate, isSingleGrid);
|
|
69
55
|
if (!updatedDateIsVisible) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/date-range-picker/calendar/grids/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef, useState } from 'react';\nimport { KeyCode } from '../../../internal/keycode';\nimport { isSameMonth, isAfter, isBefore, addMonths, min, max } from 'date-fns';\n\nimport { DateRangePickerProps, DayIndex } from '../../interfaces';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { Grid } from './grid';\nimport styles from '../../styles.css.js';\n\nimport { hasValue } from '../../../internal/utils/has-value';\nimport { useDateCache } from '../../../internal/hooks/use-date-cache';\nimport { moveNextDay, movePrevDay, moveNextWeek, movePrevWeek, getBaseDay } from '../../../calendar/utils/navigation';\nimport { findDateToFocus } from '../utils';\n\nfunction isVisible(date: Date, baseDate: Date, isSingleGrid: boolean) {\n if (isSingleGrid) {\n return isSameMonth(date, baseDate);\n }\n\n const previousMonth = addMonths(baseDate, -1);\n\n return isSameMonth(date, previousMonth) || isSameMonth(date, baseDate);\n}\n\nexport interface GridProps {\n baseDate: Date;\n selectedStartDate: Date | null;\n selectedEndDate: Date | null;\n\n focusedDate: Date | null;\n onFocusedDateChange: React.Dispatch<React.SetStateAction<Date | null>>;\n\n isDateEnabled: DateRangePickerProps.IsDateEnabledFunction;\n isSingleGrid: boolean;\n\n onSelectDate: (date: Date) => void;\n onChangeMonth: (date: Date) => void;\n\n locale: string;\n startOfWeek: DayIndex;\n todayAriaLabel?: string;\n headingIdPrefix: string;\n}\n\nexport const Grids = ({\n baseDate,\n selectedStartDate,\n selectedEndDate,\n\n focusedDate,\n onFocusedDateChange,\n\n isDateEnabled,\n isSingleGrid,\n\n onSelectDate,\n onChangeMonth,\n\n locale,\n startOfWeek,\n todayAriaLabel,\n headingIdPrefix,\n}: GridProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [gridHasFocus, setGridHasFocus] = useState(false);\n\n const focusedDateRef = useRef<HTMLTableCellElement>(null);\n\n const dateCache = useDateCache();\n baseDate = dateCache(baseDate);\n focusedDate = focusedDate ? dateCache(focusedDate) : null;\n\n useEffect(() => {\n if (focusedDate && !isVisible(focusedDate, baseDate, isSingleGrid)) {\n const direction = isAfter(focusedDate, baseDate) ? -1 : 1;\n\n const newMonth = !isSingleGrid && direction === -1 ? addMonths(baseDate, -1) : baseDate;\n const nearestBaseDate = getBaseDay(newMonth, isDateEnabled);\n\n const newFocusedDate = findDateToFocus(focusedDate, nearestBaseDate, isDateEnabled);\n\n onFocusedDateChange(newFocusedDate);\n }\n }, [baseDate, focusedDate, isSingleGrid, isDateEnabled, onFocusedDateChange]);\n\n const onGridKeyDownHandler = (e: React.KeyboardEvent) => {\n let updatedFocusDate;\n\n if (focusedDate === null) {\n return;\n }\n\n switch (e.keyCode) {\n case KeyCode.space:\n case KeyCode.enter:\n e.preventDefault();\n if (focusedDate) {\n onSelectDate(focusedDate);\n }\n return;\n case KeyCode.right:\n e.preventDefault();\n updatedFocusDate = moveNextDay(focusedDate, isDateEnabled);\n break;\n case KeyCode.left:\n e.preventDefault();\n updatedFocusDate = movePrevDay(focusedDate, isDateEnabled);\n break;\n case KeyCode.up:\n e.preventDefault();\n updatedFocusDate = movePrevWeek(focusedDate, isDateEnabled);\n break;\n case KeyCode.down:\n e.preventDefault();\n updatedFocusDate = moveNextWeek(focusedDate, isDateEnabled);\n break;\n default:\n return;\n }\n\n const updatedDateIsVisible = isVisible(updatedFocusDate, baseDate, isSingleGrid);\n\n if (!updatedDateIsVisible) {\n const newMonthIsOnLeftSide = !isSingleGrid && isBefore(updatedFocusDate, baseDate);\n\n onChangeMonth(newMonthIsOnLeftSide ? addMonths(updatedFocusDate, 1) : updatedFocusDate);\n }\n onFocusedDateChange(updatedFocusDate);\n };\n\n useEffect(() => {\n // focus current date if the focus is already inside the calendar\n if (focusedDate !== null && gridHasFocus) {\n if (focusedDateRef.current && focusedDateRef.current !== document.activeElement) {\n focusedDateRef.current.focus();\n }\n }\n }, [focusedDate, gridHasFocus]);\n\n const onGridBlur = (event: React.FocusEvent) => {\n /*\n IE11 does not support event.relatedTarget, but sets document.activeElement to the newly\n focused element before the onBlur handler is called.\n\n However, other browsers do not make any guarantees for the value of document.activeElement\n during the execution of an onBlur handler. Therefore, we have to use event.relatedTarget\n instead.\n */\n const newFocusTarget = event.relatedTarget || document.activeElement;\n const newFocusTargetIsInGrid = containerRef.current?.contains(newFocusTarget as Node);\n if (newFocusTarget && !newFocusTargetIsInGrid && gridHasFocus) {\n setGridHasFocus(false);\n }\n };\n\n const onGridFocus = () => {\n if (!gridHasFocus) {\n setGridHasFocus(true);\n }\n };\n\n const isRangeVisible = (selectedStartDate && selectedEndDate) || gridHasFocus;\n\n const rangeEnds: Date[] = [selectedStartDate ?? focusedDate, selectedEndDate ?? focusedDate].filter(hasValue);\n\n const rangeStartDate = min(rangeEnds);\n const rangeEndDate = max(rangeEnds);\n\n return (\n <div ref={containerRef} onFocus={onGridFocus} onBlur={onGridBlur}>\n <InternalSpaceBetween size=\"xs\" direction=\"horizontal\">\n {!isSingleGrid && (\n <Grid\n className={styles['first-grid']}\n baseDate={addMonths(baseDate, -1)}\n selectedEndDate={selectedEndDate}\n selectedStartDate={selectedStartDate}\n rangeStartDate={isRangeVisible ? rangeStartDate : null}\n rangeEndDate={isRangeVisible ? rangeEndDate : null}\n focusedDate={focusedDate}\n focusedDateRef={focusedDateRef}\n isDateEnabled={isDateEnabled}\n onSelectDate={onSelectDate}\n onGridKeyDownHandler={onGridKeyDownHandler}\n onFocusedDateChange={onFocusedDateChange}\n locale={locale}\n startOfWeek={startOfWeek}\n todayAriaLabel={todayAriaLabel}\n ariaLabelledby={`${headingIdPrefix}-prevmonth`}\n />\n )}\n <Grid\n className={styles['second-grid']}\n baseDate={baseDate}\n selectedEndDate={selectedEndDate}\n selectedStartDate={selectedStartDate}\n rangeStartDate={isRangeVisible ? rangeStartDate : null}\n rangeEndDate={isRangeVisible ? rangeEndDate : null}\n focusedDate={focusedDate}\n focusedDateRef={focusedDateRef}\n isDateEnabled={isDateEnabled}\n onSelectDate={onSelectDate}\n onGridKeyDownHandler={onGridKeyDownHandler}\n onFocusedDateChange={onFocusedDateChange}\n locale={locale}\n startOfWeek={startOfWeek}\n todayAriaLabel={todayAriaLabel}\n ariaLabelledby={`${headingIdPrefix}-currentmonth`}\n />\n </InternalSpaceBetween>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/date-range-picker/calendar/grids/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef, useState } from 'react';\nimport { KeyCode } from '../../../internal/keycode';\nimport { isSameMonth, isAfter, isBefore, addMonths, min, max } from 'date-fns';\n\nimport { DateRangePickerProps, DayIndex } from '../../interfaces';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { Grid } from './grid';\nimport styles from '../../styles.css.js';\n\nimport { hasValue } from '../../../internal/utils/has-value';\nimport { useDateCache } from '../../../internal/hooks/use-date-cache';\nimport { moveNextDay, movePrevDay, moveNextWeek, movePrevWeek, getBaseDay } from '../../../calendar/utils/navigation';\nimport { findDateToFocus } from '../utils';\nimport handleKey from '../../../internal/utils/handle-key';\n\nfunction isVisible(date: Date, baseDate: Date, isSingleGrid: boolean) {\n if (isSingleGrid) {\n return isSameMonth(date, baseDate);\n }\n\n const previousMonth = addMonths(baseDate, -1);\n\n return isSameMonth(date, previousMonth) || isSameMonth(date, baseDate);\n}\n\nexport interface GridProps {\n baseDate: Date;\n selectedStartDate: Date | null;\n selectedEndDate: Date | null;\n\n focusedDate: Date | null;\n onFocusedDateChange: React.Dispatch<React.SetStateAction<Date | null>>;\n\n isDateEnabled: DateRangePickerProps.IsDateEnabledFunction;\n isSingleGrid: boolean;\n\n onSelectDate: (date: Date) => void;\n onChangeMonth: (date: Date) => void;\n\n locale: string;\n startOfWeek: DayIndex;\n todayAriaLabel?: string;\n headingIdPrefix: string;\n}\n\nexport const Grids = ({\n baseDate,\n selectedStartDate,\n selectedEndDate,\n\n focusedDate,\n onFocusedDateChange,\n\n isDateEnabled,\n isSingleGrid,\n\n onSelectDate,\n onChangeMonth,\n\n locale,\n startOfWeek,\n todayAriaLabel,\n headingIdPrefix,\n}: GridProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [gridHasFocus, setGridHasFocus] = useState(false);\n\n const focusedDateRef = useRef<HTMLTableCellElement>(null);\n\n const dateCache = useDateCache();\n baseDate = dateCache(baseDate);\n focusedDate = focusedDate ? dateCache(focusedDate) : null;\n\n useEffect(() => {\n if (focusedDate && !isVisible(focusedDate, baseDate, isSingleGrid)) {\n const direction = isAfter(focusedDate, baseDate) ? -1 : 1;\n\n const newMonth = !isSingleGrid && direction === -1 ? addMonths(baseDate, -1) : baseDate;\n const nearestBaseDate = getBaseDay(newMonth, isDateEnabled);\n\n const newFocusedDate = findDateToFocus(focusedDate, nearestBaseDate, isDateEnabled);\n\n onFocusedDateChange(newFocusedDate);\n }\n }, [baseDate, focusedDate, isSingleGrid, isDateEnabled, onFocusedDateChange]);\n\n const onGridKeyDownHandler = (event: React.KeyboardEvent<HTMLElement>) => {\n let updatedFocusDate;\n\n const keys = [KeyCode.up, KeyCode.down, KeyCode.left, KeyCode.right, KeyCode.space, KeyCode.enter];\n\n if (focusedDate === null || keys.indexOf(event.keyCode) === -1) {\n return;\n }\n\n event.preventDefault();\n\n handleKey(event, {\n onActivate: () => focusedDate && onSelectDate(focusedDate),\n onBlockEnd: () => focusedDate && (updatedFocusDate = moveNextWeek(focusedDate, isDateEnabled)),\n onBlockStart: () => focusedDate && (updatedFocusDate = movePrevWeek(focusedDate, isDateEnabled)),\n onInlineEnd: () => focusedDate && (updatedFocusDate = moveNextDay(focusedDate, isDateEnabled)),\n onInlineStart: () => focusedDate && (updatedFocusDate = movePrevDay(focusedDate, isDateEnabled)),\n });\n\n if (!updatedFocusDate) {\n return;\n }\n\n const updatedDateIsVisible = isVisible(updatedFocusDate, baseDate, isSingleGrid);\n\n if (!updatedDateIsVisible) {\n const newMonthIsOnLeftSide = !isSingleGrid && isBefore(updatedFocusDate, baseDate);\n\n onChangeMonth(newMonthIsOnLeftSide ? addMonths(updatedFocusDate, 1) : updatedFocusDate);\n }\n onFocusedDateChange(updatedFocusDate);\n };\n\n useEffect(() => {\n // focus current date if the focus is already inside the calendar\n if (focusedDate !== null && gridHasFocus) {\n if (focusedDateRef.current && focusedDateRef.current !== document.activeElement) {\n focusedDateRef.current.focus();\n }\n }\n }, [focusedDate, gridHasFocus]);\n\n const onGridBlur = (event: React.FocusEvent) => {\n /*\n IE11 does not support event.relatedTarget, but sets document.activeElement to the newly\n focused element before the onBlur handler is called.\n\n However, other browsers do not make any guarantees for the value of document.activeElement\n during the execution of an onBlur handler. Therefore, we have to use event.relatedTarget\n instead.\n */\n const newFocusTarget = event.relatedTarget || document.activeElement;\n const newFocusTargetIsInGrid = containerRef.current?.contains(newFocusTarget as Node);\n if (newFocusTarget && !newFocusTargetIsInGrid && gridHasFocus) {\n setGridHasFocus(false);\n }\n };\n\n const onGridFocus = () => {\n if (!gridHasFocus) {\n setGridHasFocus(true);\n }\n };\n\n const isRangeVisible = (selectedStartDate && selectedEndDate) || gridHasFocus;\n\n const rangeEnds: Date[] = [selectedStartDate ?? focusedDate, selectedEndDate ?? focusedDate].filter(hasValue);\n\n const rangeStartDate = min(rangeEnds);\n const rangeEndDate = max(rangeEnds);\n\n return (\n <div ref={containerRef} onFocus={onGridFocus} onBlur={onGridBlur}>\n <InternalSpaceBetween size=\"xs\" direction=\"horizontal\">\n {!isSingleGrid && (\n <Grid\n className={styles['first-grid']}\n baseDate={addMonths(baseDate, -1)}\n selectedEndDate={selectedEndDate}\n selectedStartDate={selectedStartDate}\n rangeStartDate={isRangeVisible ? rangeStartDate : null}\n rangeEndDate={isRangeVisible ? rangeEndDate : null}\n focusedDate={focusedDate}\n focusedDateRef={focusedDateRef}\n isDateEnabled={isDateEnabled}\n onSelectDate={onSelectDate}\n onGridKeyDownHandler={onGridKeyDownHandler}\n onFocusedDateChange={onFocusedDateChange}\n locale={locale}\n startOfWeek={startOfWeek}\n todayAriaLabel={todayAriaLabel}\n ariaLabelledby={`${headingIdPrefix}-prevmonth`}\n />\n )}\n <Grid\n className={styles['second-grid']}\n baseDate={baseDate}\n selectedEndDate={selectedEndDate}\n selectedStartDate={selectedStartDate}\n rangeStartDate={isRangeVisible ? rangeStartDate : null}\n rangeEndDate={isRangeVisible ? rangeEndDate : null}\n focusedDate={focusedDate}\n focusedDateRef={focusedDateRef}\n isDateEnabled={isDateEnabled}\n onSelectDate={onSelectDate}\n onGridKeyDownHandler={onGridKeyDownHandler}\n onFocusedDateChange={onFocusedDateChange}\n locale={locale}\n startOfWeek={startOfWeek}\n todayAriaLabel={todayAriaLabel}\n ariaLabelledby={`${headingIdPrefix}-currentmonth`}\n />\n </InternalSpaceBetween>\n </div>\n );\n};\n"]}
|
|
@@ -1,30 +1,32 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"grid": "
|
|
5
|
-
"grid-cell": "awsui_grid-
|
|
6
|
-
"day-header": "awsui_day-
|
|
7
|
-
"week": "
|
|
8
|
-
"day": "
|
|
9
|
-
"day-inner": "awsui_day-
|
|
10
|
-
"in-first-row": "awsui_in-first-
|
|
11
|
-
"in-previous-month": "awsui_in-previous-
|
|
12
|
-
"last-day-of-month": "awsui_last-day-of-
|
|
13
|
-
"in-next-month": "awsui_in-next-
|
|
14
|
-
"in-first-column": "awsui_in-first-
|
|
15
|
-
"in-current-month": "awsui_in-current-
|
|
16
|
-
"enabled": "
|
|
17
|
-
"in-range": "awsui_in-
|
|
18
|
-
"end-date": "awsui_end-
|
|
19
|
-
"start-date": "awsui_start-
|
|
20
|
-
"no-range": "awsui_no-
|
|
21
|
-
"selected": "
|
|
22
|
-
"today": "
|
|
23
|
-
"range-start-date": "awsui_range-start-
|
|
24
|
-
"in-range-border-bottom": "awsui_in-range-border-
|
|
25
|
-
"range-end-date": "awsui_range-end-
|
|
26
|
-
"in-range-border-top": "awsui_in-range-border-
|
|
27
|
-
"in-range-border-
|
|
28
|
-
"in-range-border-
|
|
4
|
+
"grid": "awsui_grid_1mfbn_f3jvf_103",
|
|
5
|
+
"grid-cell": "awsui_grid-cell_1mfbn_f3jvf_108",
|
|
6
|
+
"day-header": "awsui_day-header_1mfbn_f3jvf_115",
|
|
7
|
+
"week": "awsui_week_1mfbn_f3jvf_125",
|
|
8
|
+
"day": "awsui_day_1mfbn_f3jvf_115",
|
|
9
|
+
"day-inner": "awsui_day-inner_1mfbn_f3jvf_172",
|
|
10
|
+
"in-first-row": "awsui_in-first-row_1mfbn_f3jvf_177",
|
|
11
|
+
"in-previous-month": "awsui_in-previous-month_1mfbn_f3jvf_177",
|
|
12
|
+
"last-day-of-month": "awsui_last-day-of-month_1mfbn_f3jvf_181",
|
|
13
|
+
"in-next-month": "awsui_in-next-month_1mfbn_f3jvf_185",
|
|
14
|
+
"in-first-column": "awsui_in-first-column_1mfbn_f3jvf_189",
|
|
15
|
+
"in-current-month": "awsui_in-current-month_1mfbn_f3jvf_192",
|
|
16
|
+
"enabled": "awsui_enabled_1mfbn_f3jvf_196",
|
|
17
|
+
"in-range": "awsui_in-range_1mfbn_f3jvf_202",
|
|
18
|
+
"end-date": "awsui_end-date_1mfbn_f3jvf_202",
|
|
19
|
+
"start-date": "awsui_start-date_1mfbn_f3jvf_202",
|
|
20
|
+
"no-range": "awsui_no-range_1mfbn_f3jvf_202",
|
|
21
|
+
"selected": "awsui_selected_1mfbn_f3jvf_212",
|
|
22
|
+
"today": "awsui_today_1mfbn_f3jvf_217",
|
|
23
|
+
"range-start-date": "awsui_range-start-date_1mfbn_f3jvf_262",
|
|
24
|
+
"in-range-border-bottom": "awsui_in-range-border-bottom_1mfbn_f3jvf_265",
|
|
25
|
+
"range-end-date": "awsui_range-end-date_1mfbn_f3jvf_268",
|
|
26
|
+
"in-range-border-top": "awsui_in-range-border-top_1mfbn_f3jvf_271",
|
|
27
|
+
"in-range-border-block-start": "awsui_in-range-border-block-start_1mfbn_f3jvf_284",
|
|
28
|
+
"in-range-border-inline-end": "awsui_in-range-border-inline-end_1mfbn_f3jvf_287",
|
|
29
|
+
"in-range-border-block-end": "awsui_in-range-border-block-end_1mfbn_f3jvf_290",
|
|
30
|
+
"in-range-border-inline-start": "awsui_in-range-border-inline-start_1mfbn_f3jvf_293"
|
|
29
31
|
};
|
|
30
32
|
|
|
@@ -100,19 +100,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
100
100
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
101
101
|
SPDX-License-Identifier: Apache-2.0
|
|
102
102
|
*/
|
|
103
|
-
.
|
|
103
|
+
.awsui_grid_1mfbn_f3jvf_103:not(#\9) {
|
|
104
104
|
inline-size: var(--size-calendar-grid-width-lrunz7, 238px);
|
|
105
105
|
border-spacing: 0;
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
.awsui_grid-
|
|
108
|
+
.awsui_grid-cell_1mfbn_f3jvf_108:not(#\9) {
|
|
109
109
|
inline-size: 14.2857142857%;
|
|
110
110
|
word-break: break-word;
|
|
111
111
|
text-align: center;
|
|
112
112
|
font-weight: unset;
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
.awsui_day-
|
|
115
|
+
.awsui_day-header_1mfbn_f3jvf_115:not(#\9) {
|
|
116
116
|
padding-block-start: var(--space-s-34lx8l, 12px);
|
|
117
117
|
padding-block-end: var(--space-xxs-p8yyaw, 4px);
|
|
118
118
|
padding-inline: 0;
|
|
@@ -122,11 +122,11 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
122
122
|
letter-spacing: var(--letter-spacing-body-s-z9jkwp, 0.005em);
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
.
|
|
125
|
+
.awsui_week_1mfbn_f3jvf_125:not(#\9) {
|
|
126
126
|
/* used for identifying element */
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
-
.
|
|
129
|
+
.awsui_day_1mfbn_f3jvf_115:not(#\9) {
|
|
130
130
|
border-block-end: 1px solid var(--color-border-calendar-grid-u86q1u, transparent);
|
|
131
131
|
border-inline-end: 1px solid var(--color-border-calendar-grid-u86q1u, transparent);
|
|
132
132
|
padding-block: var(--space-xxs-p8yyaw, 4px);
|
|
@@ -134,10 +134,10 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
134
134
|
color: var(--color-text-dropdown-item-disabled-6oq3n6, #9ba7b6);
|
|
135
135
|
position: relative;
|
|
136
136
|
}
|
|
137
|
-
.
|
|
137
|
+
.awsui_day_1mfbn_f3jvf_115:not(#\9):focus {
|
|
138
138
|
outline: none;
|
|
139
139
|
}
|
|
140
|
-
.
|
|
140
|
+
.awsui_day_1mfbn_f3jvf_115:not(#\9)::after {
|
|
141
141
|
content: "";
|
|
142
142
|
position: absolute;
|
|
143
143
|
z-index: 1;
|
|
@@ -147,15 +147,15 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
147
147
|
inset-inline-end: calc(-1 * var(--border-item-width-yel47s, 2px));
|
|
148
148
|
background-color: transparent;
|
|
149
149
|
}
|
|
150
|
-
body[data-awsui-focus-visible=true] .
|
|
150
|
+
body[data-awsui-focus-visible=true] .awsui_day_1mfbn_f3jvf_115:not(#\9):focus {
|
|
151
151
|
z-index: 2;
|
|
152
152
|
position: relative;
|
|
153
153
|
}
|
|
154
|
-
body[data-awsui-focus-visible=true] .
|
|
154
|
+
body[data-awsui-focus-visible=true] .awsui_day_1mfbn_f3jvf_115:not(#\9):focus {
|
|
155
155
|
outline: 2px dotted transparent;
|
|
156
156
|
outline-offset: calc(var(--space-calendar-grid-focus-outline-gutter-g00bgj, -5px) - 1px);
|
|
157
157
|
}
|
|
158
|
-
body[data-awsui-focus-visible=true] .
|
|
158
|
+
body[data-awsui-focus-visible=true] .awsui_day_1mfbn_f3jvf_115:not(#\9):focus::before {
|
|
159
159
|
content: " ";
|
|
160
160
|
display: block;
|
|
161
161
|
position: absolute;
|
|
@@ -169,52 +169,52 @@ body[data-awsui-focus-visible=true] .awsui_day_1mfbn_h5iwu_115:not(#\9):focus::b
|
|
|
169
169
|
border-end-end-radius: var(--border-radius-calendar-day-focus-ring-545h0w, 3px);
|
|
170
170
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-b2ntyl, #0972d3);
|
|
171
171
|
}
|
|
172
|
-
.
|
|
172
|
+
.awsui_day_1mfbn_f3jvf_115 > .awsui_day-inner_1mfbn_f3jvf_172:not(#\9) {
|
|
173
173
|
position: relative;
|
|
174
174
|
z-index: 1;
|
|
175
175
|
}
|
|
176
176
|
|
|
177
|
-
.awsui_in-first-
|
|
177
|
+
.awsui_in-first-row_1mfbn_f3jvf_177:not(#\9):not(.awsui_in-previous-month_1mfbn_f3jvf_177) {
|
|
178
178
|
border-block-start: 1px solid var(--color-border-calendar-grid-u86q1u, transparent);
|
|
179
179
|
}
|
|
180
180
|
|
|
181
|
-
.awsui_in-previous-
|
|
181
|
+
.awsui_in-previous-month_1mfbn_f3jvf_177:not(#\9):not(.awsui_last-day-of-month_1mfbn_f3jvf_181) {
|
|
182
182
|
border-inline-end-color: transparent;
|
|
183
183
|
}
|
|
184
184
|
|
|
185
|
-
.awsui_in-next-
|
|
185
|
+
.awsui_in-next-month_1mfbn_f3jvf_185:not(#\9) {
|
|
186
186
|
border-color: transparent;
|
|
187
187
|
}
|
|
188
188
|
|
|
189
|
-
.awsui_in-first-
|
|
189
|
+
.awsui_in-first-column_1mfbn_f3jvf_189:not(#\9) {
|
|
190
190
|
border-inline-start: 1px solid transparent;
|
|
191
191
|
}
|
|
192
|
-
.awsui_in-first-
|
|
192
|
+
.awsui_in-first-column_1mfbn_f3jvf_189.awsui_in-current-month_1mfbn_f3jvf_192:not(#\9) {
|
|
193
193
|
border-inline-start: 1px solid var(--color-border-calendar-grid-u86q1u, transparent);
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
.
|
|
196
|
+
.awsui_enabled_1mfbn_f3jvf_196:not(#\9) {
|
|
197
197
|
cursor: pointer;
|
|
198
198
|
}
|
|
199
|
-
.
|
|
199
|
+
.awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192:not(#\9) {
|
|
200
200
|
color: var(--color-text-dropdown-item-default-4o4hes, #000716);
|
|
201
201
|
}
|
|
202
|
-
.
|
|
202
|
+
.awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192:not(#\9):not(.awsui_in-range_1mfbn_f3jvf_202), .awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192:not(#\9):not(.awsui_in-range_1mfbn_f3jvf_202)::after, .awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192.awsui_end-date_1mfbn_f3jvf_202.awsui_start-date_1mfbn_f3jvf_202:not(#\9), .awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192.awsui_end-date_1mfbn_f3jvf_202.awsui_start-date_1mfbn_f3jvf_202:not(#\9)::after, .awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192.awsui_no-range_1mfbn_f3jvf_202:not(#\9), .awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192.awsui_no-range_1mfbn_f3jvf_202:not(#\9)::after {
|
|
203
203
|
border-start-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
204
204
|
border-start-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
205
205
|
border-end-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
206
206
|
border-end-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
207
207
|
}
|
|
208
|
-
.
|
|
208
|
+
.awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192:not(#\9):hover {
|
|
209
209
|
color: var(--color-text-calendar-date-hover-llr4as, #000716);
|
|
210
210
|
background-color: var(--color-background-dropdown-item-hover-swsulg, #f4f4f4);
|
|
211
211
|
}
|
|
212
|
-
.
|
|
212
|
+
.awsui_enabled_1mfbn_f3jvf_196.awsui_in-current-month_1mfbn_f3jvf_192:not(#\9):hover:not(.awsui_selected_1mfbn_f3jvf_212)::after {
|
|
213
213
|
border-block: var(--border-item-width-yel47s, 2px) solid var(--color-border-dropdown-item-hover-461g78, #7d8998);
|
|
214
214
|
border-inline: var(--border-item-width-yel47s, 2px) solid var(--color-border-dropdown-item-hover-461g78, #7d8998);
|
|
215
215
|
}
|
|
216
216
|
|
|
217
|
-
.
|
|
217
|
+
.awsui_today_1mfbn_f3jvf_217:not(#\9):not(.awsui_in-range_1mfbn_f3jvf_202) {
|
|
218
218
|
background-color: var(--color-background-calendar-current-date-kmb0ji, #f4f4f4);
|
|
219
219
|
border-start-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
220
220
|
border-start-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
@@ -223,20 +223,20 @@ body[data-awsui-focus-visible=true] .awsui_day_1mfbn_h5iwu_115:not(#\9):focus::b
|
|
|
223
223
|
font-weight: 700;
|
|
224
224
|
}
|
|
225
225
|
|
|
226
|
-
.
|
|
226
|
+
.awsui_selected_1mfbn_f3jvf_212:not(#\9) {
|
|
227
227
|
border-color: transparent;
|
|
228
228
|
position: relative;
|
|
229
229
|
z-index: 2;
|
|
230
230
|
font-weight: 700;
|
|
231
231
|
}
|
|
232
|
-
body[data-awsui-focus-visible=true] .
|
|
232
|
+
body[data-awsui-focus-visible=true] .awsui_selected_1mfbn_f3jvf_212:not(#\9):focus {
|
|
233
233
|
position: relative;
|
|
234
234
|
}
|
|
235
|
-
body[data-awsui-focus-visible=true] .
|
|
235
|
+
body[data-awsui-focus-visible=true] .awsui_selected_1mfbn_f3jvf_212:not(#\9):focus {
|
|
236
236
|
outline: 2px dotted transparent;
|
|
237
237
|
outline-offset: calc(var(--space-calendar-grid-selected-focus-outline-gutter-hxbct6, -5px) - 1px);
|
|
238
238
|
}
|
|
239
|
-
body[data-awsui-focus-visible=true] .
|
|
239
|
+
body[data-awsui-focus-visible=true] .awsui_selected_1mfbn_f3jvf_212:not(#\9):focus::before {
|
|
240
240
|
content: " ";
|
|
241
241
|
display: block;
|
|
242
242
|
position: absolute;
|
|
@@ -250,58 +250,58 @@ body[data-awsui-focus-visible=true] .awsui_selected_1mfbn_h5iwu_212:not(#\9):foc
|
|
|
250
250
|
border-end-end-radius: var(--border-radius-calendar-day-focus-ring-545h0w, 3px);
|
|
251
251
|
box-shadow: 0 0 0 2px var(--color-border-calendar-grid-selected-focus-ring-thqa8y, #fbfbfb);
|
|
252
252
|
}
|
|
253
|
-
body[data-awsui-focus-visible=true] .
|
|
253
|
+
body[data-awsui-focus-visible=true] .awsui_selected_1mfbn_f3jvf_212:not(#\9):focus::before {
|
|
254
254
|
z-index: 1;
|
|
255
255
|
}
|
|
256
|
-
.
|
|
256
|
+
.awsui_selected_1mfbn_f3jvf_212:not(#\9)::after {
|
|
257
257
|
background-color: var(--color-background-control-checked-w517i0, #0972d3);
|
|
258
258
|
border-block: var(--border-item-width-yel47s, 2px) solid var(--color-background-control-checked-w517i0, #0972d3);
|
|
259
259
|
border-inline: var(--border-item-width-yel47s, 2px) solid var(--color-background-control-checked-w517i0, #0972d3);
|
|
260
260
|
z-index: 0;
|
|
261
261
|
}
|
|
262
|
-
.
|
|
263
|
-
border-
|
|
262
|
+
.awsui_selected_1mfbn_f3jvf_212.awsui_start-date_1mfbn_f3jvf_202:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_start-date_1mfbn_f3jvf_202:not(#\9)::after, .awsui_selected_1mfbn_f3jvf_212.awsui_range-start-date_1mfbn_f3jvf_262:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_range-start-date_1mfbn_f3jvf_262:not(#\9)::after {
|
|
263
|
+
border-start-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
264
264
|
}
|
|
265
|
-
.
|
|
266
|
-
border-
|
|
265
|
+
.awsui_selected_1mfbn_f3jvf_212.awsui_start-date_1mfbn_f3jvf_202.awsui_in-range-border-bottom_1mfbn_f3jvf_265:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_start-date_1mfbn_f3jvf_202.awsui_in-range-border-bottom_1mfbn_f3jvf_265:not(#\9)::after, .awsui_selected_1mfbn_f3jvf_212.awsui_range-start-date_1mfbn_f3jvf_262.awsui_in-range-border-bottom_1mfbn_f3jvf_265:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_range-start-date_1mfbn_f3jvf_262.awsui_in-range-border-bottom_1mfbn_f3jvf_265:not(#\9)::after {
|
|
266
|
+
border-end-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
267
267
|
}
|
|
268
|
-
.
|
|
269
|
-
border-
|
|
268
|
+
.awsui_selected_1mfbn_f3jvf_212.awsui_end-date_1mfbn_f3jvf_202:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_end-date_1mfbn_f3jvf_202:not(#\9)::after, .awsui_selected_1mfbn_f3jvf_212.awsui_range-end-date_1mfbn_f3jvf_268:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_range-end-date_1mfbn_f3jvf_268:not(#\9)::after {
|
|
269
|
+
border-end-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
270
270
|
}
|
|
271
|
-
.
|
|
272
|
-
border-
|
|
271
|
+
.awsui_selected_1mfbn_f3jvf_212.awsui_end-date_1mfbn_f3jvf_202.awsui_in-range-border-top_1mfbn_f3jvf_271:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_end-date_1mfbn_f3jvf_202.awsui_in-range-border-top_1mfbn_f3jvf_271:not(#\9)::after, .awsui_selected_1mfbn_f3jvf_212.awsui_range-end-date_1mfbn_f3jvf_268.awsui_in-range-border-top_1mfbn_f3jvf_271:not(#\9), .awsui_selected_1mfbn_f3jvf_212.awsui_range-end-date_1mfbn_f3jvf_268.awsui_in-range-border-top_1mfbn_f3jvf_271:not(#\9)::after {
|
|
272
|
+
border-start-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
273
273
|
}
|
|
274
|
-
.
|
|
274
|
+
.awsui_selected_1mfbn_f3jvf_212 > .awsui_day-inner_1mfbn_f3jvf_172:not(#\9) {
|
|
275
275
|
color: var(--color-background-control-default-qzruqy, #ffffff);
|
|
276
276
|
position: relative;
|
|
277
277
|
z-index: 2;
|
|
278
278
|
}
|
|
279
279
|
|
|
280
|
-
.awsui_in-
|
|
280
|
+
.awsui_in-range_1mfbn_f3jvf_202:not(#\9) {
|
|
281
281
|
background-color: var(--color-background-dropdown-item-selected-n136dm, #f2f8fd);
|
|
282
282
|
font-weight: 700;
|
|
283
283
|
}
|
|
284
|
-
.awsui_in-
|
|
285
|
-
border-
|
|
284
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-start_1mfbn_f3jvf_284:not(#\9)::after {
|
|
285
|
+
border-block-start: var(--border-item-width-yel47s, 2px) solid var(--color-background-control-checked-w517i0, #0972d3);
|
|
286
286
|
}
|
|
287
|
-
.awsui_in-
|
|
288
|
-
border-
|
|
287
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-inline-end_1mfbn_f3jvf_287:not(#\9)::after {
|
|
288
|
+
border-inline-end: var(--border-item-width-yel47s, 2px) solid var(--color-background-control-checked-w517i0, #0972d3);
|
|
289
289
|
}
|
|
290
|
-
.awsui_in-
|
|
291
|
-
border-
|
|
290
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-end_1mfbn_f3jvf_290:not(#\9)::after {
|
|
291
|
+
border-block-end: var(--border-item-width-yel47s, 2px) solid var(--color-background-control-checked-w517i0, #0972d3);
|
|
292
292
|
}
|
|
293
|
-
.awsui_in-
|
|
294
|
-
border-
|
|
293
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-inline-start_1mfbn_f3jvf_293:not(#\9)::after {
|
|
294
|
+
border-inline-start: var(--border-item-width-yel47s, 2px) solid var(--color-background-control-checked-w517i0, #0972d3);
|
|
295
295
|
}
|
|
296
|
-
.awsui_in-
|
|
297
|
-
border-
|
|
296
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-start_1mfbn_f3jvf_284.awsui_in-range-border-inline-end_1mfbn_f3jvf_287:not(#\9), .awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-start_1mfbn_f3jvf_284.awsui_in-range-border-inline-end_1mfbn_f3jvf_287:not(#\9)::after {
|
|
297
|
+
border-start-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
298
298
|
}
|
|
299
|
-
.awsui_in-
|
|
300
|
-
border-
|
|
299
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-end_1mfbn_f3jvf_290.awsui_in-range-border-inline-end_1mfbn_f3jvf_287:not(#\9), .awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-end_1mfbn_f3jvf_290.awsui_in-range-border-inline-end_1mfbn_f3jvf_287:not(#\9)::after {
|
|
300
|
+
border-end-end-radius: var(--border-radius-item-05df9h, 8px);
|
|
301
301
|
}
|
|
302
|
-
.awsui_in-
|
|
303
|
-
border-
|
|
302
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-end_1mfbn_f3jvf_290.awsui_in-range-border-inline-start_1mfbn_f3jvf_293:not(#\9), .awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-end_1mfbn_f3jvf_290.awsui_in-range-border-inline-start_1mfbn_f3jvf_293:not(#\9)::after {
|
|
303
|
+
border-end-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
304
304
|
}
|
|
305
|
-
.awsui_in-
|
|
306
|
-
border-
|
|
305
|
+
.awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-start_1mfbn_f3jvf_284.awsui_in-range-border-inline-start_1mfbn_f3jvf_293:not(#\9), .awsui_in-range_1mfbn_f3jvf_202.awsui_in-range-border-block-start_1mfbn_f3jvf_284.awsui_in-range-border-inline-start_1mfbn_f3jvf_293:not(#\9)::after {
|
|
306
|
+
border-start-start-radius: var(--border-radius-item-05df9h, 8px);
|
|
307
307
|
}
|
|
@@ -2,30 +2,32 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"grid": "
|
|
6
|
-
"grid-cell": "awsui_grid-
|
|
7
|
-
"day-header": "awsui_day-
|
|
8
|
-
"week": "
|
|
9
|
-
"day": "
|
|
10
|
-
"day-inner": "awsui_day-
|
|
11
|
-
"in-first-row": "awsui_in-first-
|
|
12
|
-
"in-previous-month": "awsui_in-previous-
|
|
13
|
-
"last-day-of-month": "awsui_last-day-of-
|
|
14
|
-
"in-next-month": "awsui_in-next-
|
|
15
|
-
"in-first-column": "awsui_in-first-
|
|
16
|
-
"in-current-month": "awsui_in-current-
|
|
17
|
-
"enabled": "
|
|
18
|
-
"in-range": "awsui_in-
|
|
19
|
-
"end-date": "awsui_end-
|
|
20
|
-
"start-date": "awsui_start-
|
|
21
|
-
"no-range": "awsui_no-
|
|
22
|
-
"selected": "
|
|
23
|
-
"today": "
|
|
24
|
-
"range-start-date": "awsui_range-start-
|
|
25
|
-
"in-range-border-bottom": "awsui_in-range-border-
|
|
26
|
-
"range-end-date": "awsui_range-end-
|
|
27
|
-
"in-range-border-top": "awsui_in-range-border-
|
|
28
|
-
"in-range-border-
|
|
29
|
-
"in-range-border-
|
|
5
|
+
"grid": "awsui_grid_1mfbn_f3jvf_103",
|
|
6
|
+
"grid-cell": "awsui_grid-cell_1mfbn_f3jvf_108",
|
|
7
|
+
"day-header": "awsui_day-header_1mfbn_f3jvf_115",
|
|
8
|
+
"week": "awsui_week_1mfbn_f3jvf_125",
|
|
9
|
+
"day": "awsui_day_1mfbn_f3jvf_115",
|
|
10
|
+
"day-inner": "awsui_day-inner_1mfbn_f3jvf_172",
|
|
11
|
+
"in-first-row": "awsui_in-first-row_1mfbn_f3jvf_177",
|
|
12
|
+
"in-previous-month": "awsui_in-previous-month_1mfbn_f3jvf_177",
|
|
13
|
+
"last-day-of-month": "awsui_last-day-of-month_1mfbn_f3jvf_181",
|
|
14
|
+
"in-next-month": "awsui_in-next-month_1mfbn_f3jvf_185",
|
|
15
|
+
"in-first-column": "awsui_in-first-column_1mfbn_f3jvf_189",
|
|
16
|
+
"in-current-month": "awsui_in-current-month_1mfbn_f3jvf_192",
|
|
17
|
+
"enabled": "awsui_enabled_1mfbn_f3jvf_196",
|
|
18
|
+
"in-range": "awsui_in-range_1mfbn_f3jvf_202",
|
|
19
|
+
"end-date": "awsui_end-date_1mfbn_f3jvf_202",
|
|
20
|
+
"start-date": "awsui_start-date_1mfbn_f3jvf_202",
|
|
21
|
+
"no-range": "awsui_no-range_1mfbn_f3jvf_202",
|
|
22
|
+
"selected": "awsui_selected_1mfbn_f3jvf_212",
|
|
23
|
+
"today": "awsui_today_1mfbn_f3jvf_217",
|
|
24
|
+
"range-start-date": "awsui_range-start-date_1mfbn_f3jvf_262",
|
|
25
|
+
"in-range-border-bottom": "awsui_in-range-border-bottom_1mfbn_f3jvf_265",
|
|
26
|
+
"range-end-date": "awsui_range-end-date_1mfbn_f3jvf_268",
|
|
27
|
+
"in-range-border-top": "awsui_in-range-border-top_1mfbn_f3jvf_271",
|
|
28
|
+
"in-range-border-block-start": "awsui_in-range-border-block-start_1mfbn_f3jvf_284",
|
|
29
|
+
"in-range-border-inline-end": "awsui_in-range-border-inline-end_1mfbn_f3jvf_287",
|
|
30
|
+
"in-range-border-block-end": "awsui_in-range-border-block-end_1mfbn_f3jvf_290",
|
|
31
|
+
"in-range-border-inline-start": "awsui_in-range-border-inline-start_1mfbn_f3jvf_293"
|
|
30
32
|
};
|
|
31
33
|
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export interface PortalProps {
|
|
3
3
|
container?: null | Element;
|
|
4
|
+
getContainer?: () => Promise<HTMLElement>;
|
|
5
|
+
removeContainer?: (container: HTMLElement) => void;
|
|
4
6
|
children: React.ReactNode;
|
|
5
7
|
}
|
|
6
8
|
/**
|
|
7
9
|
* A safe react portal component that renders to a provided node.
|
|
8
10
|
* If a node isn't provided, it creates one under document.body.
|
|
9
11
|
*/
|
|
10
|
-
export default function Portal({ container, children }: PortalProps): React.ReactPortal | null;
|
|
12
|
+
export default function Portal({ container, getContainer, removeContainer, children }: PortalProps): React.ReactPortal | null;
|
|
11
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/portal/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/portal/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;AAKzD,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1C,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,KAAK,IAAI,CAAC;IACnD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA+BD;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,WAAW,4BAwBjG"}
|
|
@@ -2,25 +2,52 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import { useLayoutEffect, useState } from 'react';
|
|
4
4
|
import { createPortal } from 'react-dom';
|
|
5
|
+
import { warnOnce } from '@cloudscape-design/component-toolkit/internal';
|
|
6
|
+
import { isDevelopment } from '../../is-development';
|
|
7
|
+
function manageDefaultContainer(setState) {
|
|
8
|
+
const newContainer = document.createElement('div');
|
|
9
|
+
document.body.appendChild(newContainer);
|
|
10
|
+
setState(newContainer);
|
|
11
|
+
return () => {
|
|
12
|
+
document.body.removeChild(newContainer);
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function manageAsyncContainer(getContainer, removeContainer, setState) {
|
|
16
|
+
let newContainer;
|
|
17
|
+
getContainer().then(container => {
|
|
18
|
+
newContainer = container;
|
|
19
|
+
setState(container);
|
|
20
|
+
}, error => {
|
|
21
|
+
console.warn('[AwsUi] [portal]: failed to load portal root', error);
|
|
22
|
+
});
|
|
23
|
+
return () => {
|
|
24
|
+
removeContainer(newContainer);
|
|
25
|
+
};
|
|
26
|
+
}
|
|
5
27
|
/**
|
|
6
28
|
* A safe react portal component that renders to a provided node.
|
|
7
29
|
* If a node isn't provided, it creates one under document.body.
|
|
8
30
|
*/
|
|
9
|
-
export default function Portal({ container, children }) {
|
|
31
|
+
export default function Portal({ container, getContainer, removeContainer, children }) {
|
|
10
32
|
const [activeContainer, setActiveContainer] = useState(container !== null && container !== void 0 ? container : null);
|
|
11
33
|
useLayoutEffect(() => {
|
|
12
34
|
if (container) {
|
|
13
35
|
setActiveContainer(container);
|
|
14
36
|
return;
|
|
15
37
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
38
|
+
if (isDevelopment) {
|
|
39
|
+
if (getContainer && !removeContainer) {
|
|
40
|
+
warnOnce('portal', '`removeContainer` is required when `getContainer` is provided');
|
|
41
|
+
}
|
|
42
|
+
if (!getContainer && removeContainer) {
|
|
43
|
+
warnOnce('portal', '`getContainer` is required when `removeContainer` is provided');
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (getContainer && removeContainer) {
|
|
47
|
+
return manageAsyncContainer(getContainer, removeContainer, setActiveContainer);
|
|
48
|
+
}
|
|
49
|
+
return manageDefaultContainer(setActiveContainer);
|
|
50
|
+
}, [container, getContainer, removeContainer]);
|
|
24
51
|
return activeContainer && createPortal(children, activeContainer);
|
|
25
52
|
}
|
|
26
53
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/portal/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/portal/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AASrD,SAAS,sBAAsB,CAAC,QAA8D;IAC5F,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACnD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACxC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvB,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,YAAwC,EACxC,eAAiD,EACjD,QAA8D;IAE9D,IAAI,YAAyB,CAAC;IAC9B,YAAY,EAAE,CAAC,IAAI,CACjB,SAAS,CAAC,EAAE;QACV,YAAY,GAAG,SAAS,CAAC;QACzB,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,EACD,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;IACtE,CAAC,CACF,CAAC;IACF,OAAO,GAAG,EAAE;QACV,eAAe,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAe;IAChG,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAiB,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAI,CAAC,CAAC;IAE1F,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE;YACb,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC9B,OAAO;SACR;QACD,IAAI,aAAa,EAAE;YACjB,IAAI,YAAY,IAAI,CAAC,eAAe,EAAE;gBACpC,QAAQ,CAAC,QAAQ,EAAE,+DAA+D,CAAC,CAAC;aACrF;YACD,IAAI,CAAC,YAAY,IAAI,eAAe,EAAE;gBACpC,QAAQ,CAAC,QAAQ,EAAE,+DAA+D,CAAC,CAAC;aACrF;SACF;QAED,IAAI,YAAY,IAAI,eAAe,EAAE;YACnC,OAAO,oBAAoB,CAAC,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;SAChF;QACD,OAAO,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IACpD,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;IAE/C,OAAO,eAAe,IAAI,YAAY,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AACpE,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useLayoutEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport { warnOnce } from '@cloudscape-design/component-toolkit/internal';\nimport { isDevelopment } from '../../is-development';\n\nexport interface PortalProps {\n container?: null | Element;\n getContainer?: () => Promise<HTMLElement>;\n removeContainer?: (container: HTMLElement) => void;\n children: React.ReactNode;\n}\n\nfunction manageDefaultContainer(setState: React.Dispatch<React.SetStateAction<Element | null>>) {\n const newContainer = document.createElement('div');\n document.body.appendChild(newContainer);\n setState(newContainer);\n return () => {\n document.body.removeChild(newContainer);\n };\n}\n\nfunction manageAsyncContainer(\n getContainer: () => Promise<HTMLElement>,\n removeContainer: (container: HTMLElement) => void,\n setState: React.Dispatch<React.SetStateAction<Element | null>>\n) {\n let newContainer: HTMLElement;\n getContainer().then(\n container => {\n newContainer = container;\n setState(container);\n },\n error => {\n console.warn('[AwsUi] [portal]: failed to load portal root', error);\n }\n );\n return () => {\n removeContainer(newContainer);\n };\n}\n\n/**\n * A safe react portal component that renders to a provided node.\n * If a node isn't provided, it creates one under document.body.\n */\nexport default function Portal({ container, getContainer, removeContainer, children }: PortalProps) {\n const [activeContainer, setActiveContainer] = useState<Element | null>(container ?? null);\n\n useLayoutEffect(() => {\n if (container) {\n setActiveContainer(container);\n return;\n }\n if (isDevelopment) {\n if (getContainer && !removeContainer) {\n warnOnce('portal', '`removeContainer` is required when `getContainer` is provided');\n }\n if (!getContainer && removeContainer) {\n warnOnce('portal', '`getContainer` is required when `removeContainer` is provided');\n }\n }\n\n if (getContainer && removeContainer) {\n return manageAsyncContainer(getContainer, removeContainer, setActiveContainer);\n }\n return manageDefaultContainer(setActiveContainer);\n }, [container, getContainer, removeContainer]);\n\n return activeContainer && createPortal(children, activeContainer);\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function isRtl(element: HTMLElement | SVGElement): boolean;
|
|
2
|
+
/**
|
|
3
|
+
* The scrollLeft value will be a negative number if the direction is RTL and
|
|
4
|
+
* needs to be converted to a positive value for direction independent scroll
|
|
5
|
+
* computations. Additionally, the scrollLeft value can be a decimal value on
|
|
6
|
+
* systems using display scaling requiring the floor and ceiling calls.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getScrollInlineStart(element: HTMLElement): number;
|
|
9
|
+
//# sourceMappingURL=direction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"direction.d.ts","sourceRoot":"","sources":["../../../src/internal/direction.ts"],"names":[],"mappings":"AAGA,wBAAgB,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,UAAU,WAEtD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,UAExD"}
|