@bcgov/design-system-react-components 0.4.1-rc1 → 0.5.0-pr507
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/README.md +23 -19
- package/dist/cjs/index.cjs +1609 -812
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/types/components/Accordion/Accordion.d.ts +6 -0
- package/dist/cjs/types/components/Accordion/index.d.ts +2 -0
- package/dist/cjs/types/components/AccordionGroup/AccordionGroup.d.ts +7 -0
- package/dist/cjs/types/components/AccordionGroup/index.d.ts +2 -0
- package/dist/cjs/types/components/Link/Link.d.ts +15 -0
- package/dist/cjs/types/components/Link/index.d.ts +2 -0
- package/dist/cjs/types/components/index.d.ts +3 -0
- package/dist/esm/index.js +1608 -814
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/components/Accordion/Accordion.d.ts +6 -0
- package/dist/esm/types/components/Accordion/index.d.ts +2 -0
- package/dist/esm/types/components/AccordionGroup/AccordionGroup.d.ts +7 -0
- package/dist/esm/types/components/AccordionGroup/index.d.ts +2 -0
- package/dist/esm/types/components/Link/Link.d.ts +15 -0
- package/dist/esm/types/components/Link/index.d.ts +2 -0
- package/dist/esm/types/components/index.d.ts +3 -0
- package/dist/index.d.ts +26 -2
- package/package.json +15 -15
package/dist/cjs/index.cjs
CHANGED
|
@@ -31,11 +31,8 @@ function styleInject(css, ref) {
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
var css_248z$m = "/**\n * Do not edit directly, this file was auto-generated.\n */\n\n:root {\n --surface-opacity-0: 0;\n --surface-opacity-10: 0.1;\n --surface-opacity-20: 0.2;\n --surface-opacity-30: 0.3;\n --surface-opacity-40: 0.4;\n --surface-opacity-50: 0.5;\n --surface-opacity-60: 0.6;\n --surface-opacity-70: 0.7;\n --surface-opacity-80: 0.8;\n --surface-opacity-90: 0.9;\n --surface-opacity-100: 1;\n --surface-shadow-none: 0 0.30000001192092896px 0.8999999761581421px 0 #0000001a, 0 1.600000023841858px 3.5999999046325684px 0 #00000021; /* Default shadow for most content and UI elements */\n --surface-shadow-small: 0 0.6000000238418579px 1.7999999523162842px 0 #0000001a, 0 3.200000047683716px 7.199999809265137px 0 #00000021; /* Reduced shadow for secondary UI elements */\n --surface-shadow-medium: 0 1.2000000476837158px 3.5999999046325684px 0 #0000001a, 0 6.400000095367432px 14.399999618530273px 0 #00000021; /* Standard shadow for UI elements like cards and buttons */\n --surface-shadow-large: 0 4.800000190734863px 14.399999618530273px 0 #0000002e, 0 25.600000381469727px 57.599998474121094px 0 #00000038; /* Larger shadow for emphasis. Use sparingly */\n --surface-color-primary-button-default: #013366; /* Default fill colour for primary buttons */\n --surface-color-primary-button-hover: #1E5189; /* Fill colour used when user hovers over primary button */\n --surface-color-primary-button-disabled: #EDEBE9; /* Fill colour for inactive primary buttons */\n --surface-color-primary-danger-button-default: #CE3E39; /* Default fill colour for buttons in danger/warning state */\n --surface-color-primary-danger-button-hover: #A2312D; /* Fill colour used when user hovers over danger/warning button */\n --surface-color-primary-danger-button-disabled: #EDEBE9; /* Default fill colour for disabled danger/warning button */\n --surface-color-primary-default: #013366; /* Default theme colour for components and layout */\n --surface-color-primary-hover: #1E5189; /* Hover variant of surface.color.primary.default */\n --surface-color-primary-pressed: #01264C; /* Selected/pressed variant of surface.color.primary.default */\n --surface-color-primary-disabled: #EDEBE9; /* Disabled/inactive variant of surface.color.primary default */\n --surface-color-secondary-button-default: #FFFFFF; /* Fill colour for secondary buttons */\n --surface-color-secondary-button-hover: #EDEBE9; /* Fill colour used when user hovers over secondary button */\n --surface-color-secondary-button-disabled: #EDEBE9; /* Fill colour for inactive secondary buttons */\n --surface-color-secondary-default: #FFFFFF; /* Light theme colour for components and layout */\n --surface-color-secondary-hover: #EDEBE9; /* Hover variant of surface.color.secondary.default */\n --surface-color-secondary-pressed: #E0DEDC; /* Selected/pressed variant of surface.color.secondary.default */\n --surface-color-secondary-disabled: #EDEBE9; /* Disabled/inactive variant of surface.color.secondary default */\n --surface-color-tertiary-button-default: rgba(255,255,255,0); /* Default fill colour for tertiary buttons */\n --surface-color-tertiary-button-hover: #ECEAE8; /* Fill colour used when user hovers over tertiary button */\n --surface-color-tertiary-button-disabled: #EDEBE9; /* Fill colour for inactive tertiary buttons */\n --surface-color-tertiary-default: #FFFFFF00; /* Alternative light theme colour for components and layout */\n --surface-color-tertiary-hover: #ECEAE8; /* Hover variant of surface.color.tertiary.default */\n --surface-color-tertiary-pressed: #E0DEDC; /* Selected/pressed variant of surface.color.tertiary.default */\n --surface-color-tertiary-disabled: #EDEBE9; /* Disabled/inactive variant of surface.color.tertiary default */\n --surface-color-menus-default: #FFFFFF; /* Default fill colour for menu items */\n --surface-color-menus-hover: #EDEBE9; /* Fill colour used when user hovers over a menu item */\n --surface-color-forms-default: #FFFFFF; /* Default fill colour for form/input fields */\n --surface-color-forms-disabled: #EDEBE9; /* Fill colour for inactive/disabled form/input fields */\n --surface-color-background-white: #FFFFFF; /* White background */\n --surface-color-background-light-gray: #FAF9F8; /* Default background colour for layout */\n --surface-color-background-light-blue: #F1F8FE; /* Light blue background */\n --surface-color-background-dark-blue: #053662; /* Dark blue background */\n --surface-color-border-default: #D8D8D8; /* Lighter border colour for UI elements */\n --surface-color-border-medium: #898785; /* Default border colour for UI elements */\n --surface-color-border-dark: #353433; /* Used as a hover colour for form fields and inputs */\n --surface-color-border-active: #2E5DD7; /* Used as the active stroke colour for UI elements */\n --surface-color-overlay-default: rgba(0,0,0,0.45); /* Background overlay colour for images and modal dialogues */\n --support-surface-color-info: #F7F9FC;\n --support-surface-color-danger: #F4E1E2; /* Background colour for error, failure or danger messages */\n --support-surface-color-success: #F6FFF8; /* Background colour for success messages */\n --support-surface-color-warning: #FEF1D8; /* Background colour for warning messages */\n --support-border-color-info: #053662; /* Border stroke for general/informational messages */\n --support-border-color-danger: #CE3E39; /* Border stroke for error, failure or danger messages */\n --support-border-color-success: #42814A; /* Border stroke for success messages */\n --support-border-color-warning: #F8BB47; /* Border stroke for warning messages */\n --icons-size-xsmall: 14px; /* Smallest icon size */\n --icons-size-small: 16px;\n --icons-size-medium: 20px; /* Default icon size */\n --icons-size-large: 24px;\n --icons-size-xlarge: 32px; /* Largest icon size */\n --icons-color-primary: #2D2D2D; /* Default colour for icons */\n --icons-color-secondary: #474543; /* Alternative colour for secondary/miscellaneous icons */\n --icons-color-disabled: #9F9D9C; /* Use only for inactive/disabled icons */\n --icons-color-link: #255A90; /* Use for hyperlinked icons */\n --icons-color-info: #053662; /* Emphasis colour for icons in general/informational state */\n --icons-color-danger: #CE3E39; /* Emphasis colour for icons in error, failure or danger state */\n --icons-color-success: #42814A; /* Emphasis colour for icons in success state */\n --icons-color-warning: #F8BB47; /* Emphasis colour for icons in warning state */\n --icons-color-primary-invert: #FFFFFF; /* Default colour for icons on dark backgrounds */\n --layout-border-width-none: 0;\n --layout-border-width-small: 1px;\n --layout-border-width-medium: 2px;\n --layout-border-width-large: 4px;\n --layout-padding-none: 0; /* No padding */\n --layout-padding-hair: 0.125rem; /* Smallest padding value for layout */\n --layout-padding-xsmall: 0.25rem;\n --layout-padding-small: 0.5rem;\n --layout-padding-medium: 1rem; /* Default padding value for layout */\n --layout-padding-large: 1.5rem;\n --layout-padding-xlarge: 2rem; /* Largest padding value for layout */\n --layout-margin-none: 0rem; /* No margin */\n --layout-margin-hair: 0.125rem; /* Smallest margin value for layout */\n --layout-margin-xsmall: 0.25rem;\n --layout-margin-small: 0.5rem; /* Default margin value for layout */\n --layout-margin-medium: 1rem;\n --layout-margin-large: 1.5rem;\n --layout-margin-xlarge: 2rem;\n --layout-margin-xxlarge: 2.5rem;\n --layout-margin-xxxlarge: 3rem;\n --layout-margin-huge: 3.5rem; /* Largest margin value for layout */\n --layout-border-radius-none: 0;\n --layout-border-radius-small: 2px;\n --layout-border-radius-medium: 4px;\n --layout-border-radius-large: 6px;\n --typography-font-families-bc-sans: 'BC Sans'; /* BC Sans font. Requires BC Sans package */\n --typography-line-heights-xxxdense: 1.125rem; /* Smallest line height */\n --typography-line-heights-xxdense: 1.313rem;\n --typography-line-heights-xdense: 1.688rem;\n --typography-line-heights-dense: 1.913rem;\n --typography-line-heights-regular: 2.125rem; /* Default line height */\n --typography-line-heights-sparse: 2.25rem;\n --typography-line-heights-xsparse: 3rem;\n --typography-line-heights-xxsparse: 3.375rem; /* Largest line height */\n --typography-line-heights-auto: AUTO; /* System token, used to generate type styles */\n --typography-font-weights-regular: 400; /* System token, used to generate text styles */\n --typography-font-weights-bold: 700; /* System token, used to generate text styles */\n --typography-font-weights-italic: Italic; /* DEPRECATED - will be removed in next major version. */\n --typography-font-weights-italic-weight: 400; /* System token, used to generate text styles */\n --typography-font-weights-italic-style: italic; /* System token, used to generate text styles */\n --typography-font-size-label: 0.75rem;\n --typography-font-size-small-body: 0.875rem;\n --typography-font-size-body: 1rem;\n --typography-font-size-large-body: 1.125rem;\n --typography-font-size-h5: 1.25rem;\n --typography-font-size-h4: 1.5rem;\n --typography-font-size-h3: 1.75rem;\n --typography-font-size-h2: 2rem;\n --typography-font-size-h1: 2.25rem;\n --typography-font-size-display: 3rem;\n --typography-letter-spacing-0: 0em; /* System token, used to generate type styles */\n --typography-paragraph-spacing-0: 0; /* System token, used to generate type styles */\n --typography-regular-label: 400 0.75rem/1.125rem 'BC Sans'; /* Labels and captions */\n --typography-regular-small-body: 400 0.875rem/1.313rem 'BC Sans'; /* Smaller body text */\n --typography-regular-body: 400 1rem/1.688rem 'BC Sans'; /* Default body text */\n --typography-regular-large-body: 400 1.125rem/1.913rem 'BC Sans'; /* Larger body text */\n --typography-regular-h6: 400 1.125rem/1.913rem 'BC Sans'; /* Alternate (unbolded) style for Heading 6 */\n --typography-regular-h5: 400 1.25rem/2.125rem 'BC Sans'; /* Alternate (unbolded) style for Heading 5 */\n --typography-regular-h4: 400 1.5rem/2.25rem 'BC Sans'; /* Alternate (unbolded) style for Heading 4 */\n --typography-regular-h3: 400 1.75rem/3rem 'BC Sans'; /* Alternate (unbolded) style for Heading 3 */\n --typography-regular-h2: 400 2rem/3.375rem 'BC Sans'; /* Alternate (unbolded) style for Heading 2 */\n --typography-regular-h1: 400 2.25rem/3rem 'BC Sans'; /* Alternate (unbolded) style for Heading 1 */\n --typography-regular-display: 400 3rem/AUTO 'BC Sans'; /* Extra-large body text size. Do not use for headings */\n --typography-bold-label: 700 0.75rem/1.125rem 'BC Sans'; /* Labels and captions (bolded) */\n --typography-bold-small-body: 700 0.875rem/1.313rem 'BC Sans'; /* Default for small body text (bolded) */\n --typography-bold-body: 700 1rem/1.688rem 'BC Sans'; /* Default for body text (bolded) */\n --typography-bold-large-body: 700 1.125rem/1.913rem 'BC Sans'; /* Larger text size for body text (bolded) */\n --typography-bold-h6: 700 1.125rem/1.913rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H6 */\n --typography-bold-h5: 700 1.25rem/2.125rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H5 */\n --typography-bold-h4: 700 1.5rem/2.25rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H4 */\n --typography-bold-h3: 700 1.75rem/3rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H3 */\n --typography-bold-h2: 700 2rem/3rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H2 */\n --typography-bold-h1: 700 2.25rem/3.375rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H1 */\n --typography-bold-display: 700 3rem/AUTO 'BC Sans'; /* Extra-large font size (bolded). Do not use for headings */\n --typography-italic-label: 400 italic 0.75rem/1.125rem 'BC Sans'; /* Labels and captions (italic) */\n --typography-italic-small-body: 400 italic 0.875rem/1.313rem 'BC Sans'; /* Small body text (italic) */\n --typography-italic-body: 400 italic 1rem/1.688rem 'BC Sans'; /* Default for body text (italic) */\n --typography-italic-large-body: 400 italic 1.125rem/1.913rem 'BC Sans'; /* Larger text size for body text (italic) */\n --typography-italic-h6: 400 italic 1.125rem/1.913rem 'BC Sans'; /* Alternate (italic) style for Heading 6 */\n --typography-italic-h5: 400 italic 1.25rem/2.125rem 'BC Sans'; /* Alternate (italic) style for Heading 5 */\n --typography-italic-h4: 400 italic 1.5rem/2.25rem 'BC Sans'; /* Alternate (italic) style for Heading 4 */\n --typography-italic-h3: 400 italic 1.75rem/3.375rem 'BC Sans'; /* Alternate (italic) style for Heading 3 */\n --typography-italic-h2: 400 italic 2rem/3rem 'BC Sans'; /* Alternate (italic) style for Heading 2 */\n --typography-italic-h1: 400 italic 2.25rem/3.375rem 'BC Sans'; /* Alternate (italic) style for Heading 1 */\n --typography-italic-display: 400 italic 3rem/AUTO 'BC Sans'; /* Extra-large font size (italic). Do not use for headings */\n --typography-text-case-none: none;\n --typography-text-decoration-none: none; /* System token, used to generate type styles */\n --typography-paragraph-indent-0: 0px; /* System token, used to generate type styles */\n --typography-color-primary: #2D2D2D; /* Default colour for all body text and headings */\n --typography-color-secondary: #474543; /* Alternative colour for secondary/miscellaneous text */\n --typography-color-placeholder: #9F9D9C; /* Use for placeholder text in forms */\n --typography-color-disabled: #9F9D9C; /* Use only for text in inactive user interface elements */\n --typography-color-link: #255A90; /* Use for hyperlinks in body text and headings */\n --typography-color-danger: #CE3E39; /* Use for error, failure or danger message text */\n --typography-color-primary-invert: #FFFFFF; /* Default colour for text on dark backgrounds */\n --typography-color-secondary-invert: #ECEAE8; /* Secondary colour for text on dark backgrounds */\n --theme-gold-10: #FEF8E8; /* Gold scale — lightest */\n --theme-gold-20: #FEF0D8; /* Gold scale */\n --theme-gold-30: #FDE9C4; /* Gold scale */\n --theme-gold-40: #FCE2B0; /* Gold scale */\n --theme-gold-50: #FBDA9D; /* Gold scale */\n --theme-gold-60: #FBD389; /* Gold scale */\n --theme-gold-70: #FACC75; /* Gold scale */\n --theme-gold-80: #F9C462; /* Gold scale */\n --theme-gold-90: #F8BA47; /* Gold scale */\n --theme-gold-100: #FCBA19; /* Gold scale — darkest */\n --theme-blue-10: #F1F8FE; /* Blue scale — lightest */\n --theme-blue-20: #D8EAFD; /* Blue scale */\n --theme-blue-30: #C1DDFC; /* Blue scale */\n --theme-blue-40: #A8D0FB; /* Blue scale */\n --theme-blue-50: #91C4FA; /* Blue scale */\n --theme-blue-60: #7AB8F9; /* Blue scale */\n --theme-blue-70: #5595D9; /* Blue scale */\n --theme-blue-80: #3470B1; /* Blue scale */\n --theme-blue-90: #1E5189; /* Blue scale */\n --theme-blue-100: #013366; /* Blue scale — darkest */\n --theme-gray-10: #FAF9F8; /* Greyscale — lightest */\n --theme-gray-20: #F3F2F1; /* Greyscale */\n --theme-gray-30: #ECEAE8; /* Greyscale */\n --theme-gray-40: #E0DEDC; /* Greyscale */\n --theme-gray-50: #D1CFCD; /* Greyscale */\n --theme-gray-60: #C6C5C3; /* Greyscale */\n --theme-gray-70: #9F9D9C; /* Greyscale */\n --theme-gray-80: #605E5C; /* Greyscale */\n --theme-gray-90: #3D3C3B; /* Greyscale */\n --theme-gray-100: #353433; /* Greyscale */\n --theme-gray-110: #252423; /* Greyscale — darkest */\n --theme-gray-white: #FFFFFF; /* White */\n --theme-primary-blue: #013366; /* Primary Blue (Blue 100) */\n --theme-primary-gold: #FCBA19; /* Primary Gold (Gold 100) */\n}\n";
|
|
35
|
-
styleInject(css_248z$
|
|
36
|
-
|
|
37
|
-
var css_248z$l = ".bcds-Alert-Banner {\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-around;\n width: 100%;\n padding: var(--layout-padding-none) var(--layout-padding-medium);\n}\n\n.bcds-Alert-Banner--Container {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--layout-padding-medium);\n max-width: 1100px;\n padding: var(--layout-padding-small) var(--layout-padding-none);\n}\n\n.bcds-Alert-Banner--Icon {\n align-self: first baseline;\n justify-self: flex-start;\n padding-top: var(--layout-padding-xsmall);\n color: var(--icons-color-primary-invert);\n}\n\n.bcds-Alert-Banner--Content {\n display: inline-flex;\n gap: var(--layout-margin-medium);\n align-items: first baseline;\n flex-grow: 1;\n flex-wrap: wrap;\n font: var(--typography-regular-body);\n color: var(--typography-color-primary-invert);\n}\n\n.bcds-Alert-Banner--closeIcon {\n align-self: first baseline;\n}\n\n.bcds-Alert-Banner--closeIcon > .bcds-react-aria-Button[data-hovered] svg {\n color: var(--icons-color-primary);\n}\n\n.bcds-Alert-Banner--closeIcon svg {\n color: var(--icons-color-primary-invert);\n}\n\n/* Variants */\n\n/* Info theme */\n.bcds-Alert-Banner.info {\n background-color: var(--surface-color-background-dark-blue);\n}\n\n/* Success theme */\n.bcds-Alert-Banner.success {\n background-color: var(--support-border-color-success);\n}\n\n/* Warning theme */\n.bcds-Alert-Banner.warning {\n background-color: var(--support-border-color-warning);\n}\n\n.bcds-Alert-Banner.warning .bcds-Alert-Banner--Icon {\n color: var(--icons-color-primary);\n}\n\n.bcds-Alert-Banner.warning .bcds-Alert-Banner--Content {\n color: var(--typography-color-primary);\n}\n\n.bcds-Alert-Banner.warning .bcds-Alert-Banner--closeIcon svg {\n color: var(--icons-color-primary);\n}\n\n/* Danger theme */\n.bcds-Alert-Banner.danger {\n background-color: var(--support-border-color-danger);\n}\n\n/* Black theme */\n\n.bcds-Alert-Banner.black {\n background-color: var(--theme-gray-110);\n}\n";
|
|
38
|
-
styleInject(css_248z$l);
|
|
34
|
+
var css_248z$p = "/**\n * Do not edit directly, this file was auto-generated.\n */\n\n:root {\n --surface-opacity-0: 0;\n --surface-opacity-10: 0.1;\n --surface-opacity-20: 0.2;\n --surface-opacity-30: 0.3;\n --surface-opacity-40: 0.4;\n --surface-opacity-50: 0.5;\n --surface-opacity-60: 0.6;\n --surface-opacity-70: 0.7;\n --surface-opacity-80: 0.8;\n --surface-opacity-90: 0.9;\n --surface-opacity-100: 1;\n --surface-shadow-none: 0 0.30000001192092896px 0.8999999761581421px 0 #0000001a, 0 1.600000023841858px 3.5999999046325684px 0 #00000021; /* Default shadow for most content and UI elements */\n --surface-shadow-small: 0 0.6000000238418579px 1.7999999523162842px 0 #0000001a, 0 3.200000047683716px 7.199999809265137px 0 #00000021; /* Reduced shadow for secondary UI elements */\n --surface-shadow-medium: 0 1.2000000476837158px 3.5999999046325684px 0 #0000001a, 0 6.400000095367432px 14.399999618530273px 0 #00000021; /* Standard shadow for UI elements like cards and buttons */\n --surface-shadow-large: 0 4.800000190734863px 14.399999618530273px 0 #0000002e, 0 25.600000381469727px 57.599998474121094px 0 #00000038; /* Larger shadow for emphasis. Use sparingly */\n --surface-color-primary-button-default: #013366; /* Default fill colour for primary buttons */\n --surface-color-primary-button-hover: #1E5189; /* Fill colour used when user hovers over primary button */\n --surface-color-primary-button-disabled: #EDEBE9; /* Fill colour for inactive primary buttons */\n --surface-color-primary-danger-button-default: #CE3E39; /* Default fill colour for buttons in danger/warning state */\n --surface-color-primary-danger-button-hover: #A2312D; /* Fill colour used when user hovers over danger/warning button */\n --surface-color-primary-danger-button-disabled: #EDEBE9; /* Default fill colour for disabled danger/warning button */\n --surface-color-primary-default: #013366; /* Default theme colour for components and layout */\n --surface-color-primary-hover: #1E5189; /* Hover variant of surface.color.primary.default */\n --surface-color-primary-pressed: #01264C; /* Selected/pressed variant of surface.color.primary.default */\n --surface-color-primary-disabled: #EDEBE9; /* Disabled/inactive variant of surface.color.primary default */\n --surface-color-secondary-button-default: #FFFFFF; /* Fill colour for secondary buttons */\n --surface-color-secondary-button-hover: #EDEBE9; /* Fill colour used when user hovers over secondary button */\n --surface-color-secondary-button-disabled: #EDEBE9; /* Fill colour for inactive secondary buttons */\n --surface-color-secondary-default: #FFFFFF; /* Light theme colour for components and layout */\n --surface-color-secondary-hover: #EDEBE9; /* Hover variant of surface.color.secondary.default */\n --surface-color-secondary-pressed: #E0DEDC; /* Selected/pressed variant of surface.color.secondary.default */\n --surface-color-secondary-disabled: #EDEBE9; /* Disabled/inactive variant of surface.color.secondary default */\n --surface-color-tertiary-button-default: rgba(255,255,255,0); /* Default fill colour for tertiary buttons */\n --surface-color-tertiary-button-hover: #ECEAE8; /* Fill colour used when user hovers over tertiary button */\n --surface-color-tertiary-button-disabled: #EDEBE9; /* Fill colour for inactive tertiary buttons */\n --surface-color-tertiary-default: #FFFFFF00; /* Alternative light theme colour for components and layout */\n --surface-color-tertiary-hover: #ECEAE8; /* Hover variant of surface.color.tertiary.default */\n --surface-color-tertiary-pressed: #E0DEDC; /* Selected/pressed variant of surface.color.tertiary.default */\n --surface-color-tertiary-disabled: #EDEBE9; /* Disabled/inactive variant of surface.color.tertiary default */\n --surface-color-menus-default: #FFFFFF; /* Default fill colour for menu items */\n --surface-color-menus-hover: #EDEBE9; /* Fill colour used when user hovers over a menu item */\n --surface-color-forms-default: #FFFFFF; /* Default fill colour for form/input fields */\n --surface-color-forms-disabled: #EDEBE9; /* Fill colour for inactive/disabled form/input fields */\n --surface-color-background-white: #FFFFFF; /* White background */\n --surface-color-background-light-gray: #FAF9F8; /* Default background colour for layout */\n --surface-color-background-light-blue: #F1F8FE; /* Light blue background */\n --surface-color-background-dark-blue: #053662; /* Dark blue background */\n --surface-color-border-default: #D8D8D8; /* Lighter border colour for UI elements */\n --surface-color-border-medium: #898785; /* Default border colour for UI elements */\n --surface-color-border-dark: #353433; /* Used as a hover colour for form fields and inputs */\n --surface-color-border-active: #2E5DD7; /* Used as the active stroke colour for UI elements */\n --surface-color-overlay-default: rgba(0,0,0,0.45); /* Background overlay colour for images and modal dialogues */\n --support-surface-color-info: #F7F9FC;\n --support-surface-color-danger: #F4E1E2; /* Background colour for error, failure or danger messages */\n --support-surface-color-success: #F6FFF8; /* Background colour for success messages */\n --support-surface-color-warning: #FEF1D8; /* Background colour for warning messages */\n --support-border-color-info: #053662; /* Border stroke for general/informational messages */\n --support-border-color-danger: #CE3E39; /* Border stroke for error, failure or danger messages */\n --support-border-color-success: #42814A; /* Border stroke for success messages */\n --support-border-color-warning: #F8BB47; /* Border stroke for warning messages */\n --icons-size-xsmall: 14px; /* Smallest icon size */\n --icons-size-small: 16px;\n --icons-size-medium: 20px; /* Default icon size */\n --icons-size-large: 24px;\n --icons-size-xlarge: 32px; /* Largest icon size */\n --icons-color-primary: #2D2D2D; /* Default colour for icons */\n --icons-color-secondary: #474543; /* Alternative colour for secondary/miscellaneous icons */\n --icons-color-disabled: #9F9D9C; /* Use only for inactive/disabled icons */\n --icons-color-link: #255A90; /* Use for hyperlinked icons */\n --icons-color-info: #053662; /* Emphasis colour for icons in general/informational state */\n --icons-color-danger: #CE3E39; /* Emphasis colour for icons in error, failure or danger state */\n --icons-color-success: #42814A; /* Emphasis colour for icons in success state */\n --icons-color-warning: #F8BB47; /* Emphasis colour for icons in warning state */\n --icons-color-primary-invert: #FFFFFF; /* Default colour for icons on dark backgrounds */\n --layout-border-width-none: 0;\n --layout-border-width-small: 1px;\n --layout-border-width-medium: 2px;\n --layout-border-width-large: 4px;\n --layout-padding-none: 0; /* No padding */\n --layout-padding-hair: 0.125rem; /* Smallest padding value for layout */\n --layout-padding-xsmall: 0.25rem;\n --layout-padding-small: 0.5rem;\n --layout-padding-medium: 1rem; /* Default padding value for layout */\n --layout-padding-large: 1.5rem;\n --layout-padding-xlarge: 2rem; /* Largest padding value for layout */\n --layout-margin-none: 0rem; /* No margin */\n --layout-margin-hair: 0.125rem; /* Smallest margin value for layout */\n --layout-margin-xsmall: 0.25rem;\n --layout-margin-small: 0.5rem; /* Default margin value for layout */\n --layout-margin-medium: 1rem;\n --layout-margin-large: 1.5rem;\n --layout-margin-xlarge: 2rem;\n --layout-margin-xxlarge: 2.5rem;\n --layout-margin-xxxlarge: 3rem;\n --layout-margin-huge: 3.5rem; /* Largest margin value for layout */\n --layout-border-radius-none: 0;\n --layout-border-radius-small: 2px;\n --layout-border-radius-medium: 4px;\n --layout-border-radius-large: 6px;\n --layout-border-radius-circular: 9999px; /* Used for components with a circular radius */\n --typography-font-families-bc-sans: 'BC Sans'; /* BC Sans font. Requires BC Sans package */\n --typography-line-heights-xxxdense: 1.125rem; /* Smallest line height */\n --typography-line-heights-xxdense: 1.313rem;\n --typography-line-heights-xdense: 1.688rem;\n --typography-line-heights-dense: 1.913rem;\n --typography-line-heights-regular: 2.125rem; /* Default line height */\n --typography-line-heights-sparse: 2.25rem;\n --typography-line-heights-xsparse: 3rem;\n --typography-line-heights-xxsparse: 3.375rem; /* Largest line height */\n --typography-line-heights-auto: AUTO; /* System token, used to generate type styles */\n --typography-font-weights-regular: 400; /* System token, used to generate text styles */\n --typography-font-weights-bold: 700; /* System token, used to generate text styles */\n --typography-font-weights-italic-weight: 400; /* System token, used to generate text styles */\n --typography-font-weights-italic-style: italic; /* System token, used to generate text styles */\n --typography-font-size-label: 0.75rem;\n --typography-font-size-small-body: 0.875rem;\n --typography-font-size-body: 1rem;\n --typography-font-size-large-body: 1.125rem;\n --typography-font-size-h5: 1.25rem;\n --typography-font-size-h4: 1.5rem;\n --typography-font-size-h3: 1.75rem;\n --typography-font-size-h2: 2rem;\n --typography-font-size-h1: 2.25rem;\n --typography-font-size-display: 3rem;\n --typography-letter-spacing-0: 0em; /* System token, used to generate type styles */\n --typography-paragraph-spacing-0: 0; /* System token, used to generate type styles */\n --typography-regular-label: 400 0.75rem/1.125rem 'BC Sans'; /* Labels and captions */\n --typography-regular-small-body: 400 0.875rem/1.313rem 'BC Sans'; /* Smaller body text */\n --typography-regular-body: 400 1rem/1.688rem 'BC Sans'; /* Default body text */\n --typography-regular-large-body: 400 1.125rem/1.913rem 'BC Sans'; /* Larger body text */\n --typography-regular-h6: 400 1.125rem/1.913rem 'BC Sans'; /* Alternate (unbolded) style for Heading 6 */\n --typography-regular-h5: 400 1.25rem/2.125rem 'BC Sans'; /* Alternate (unbolded) style for Heading 5 */\n --typography-regular-h4: 400 1.5rem/2.25rem 'BC Sans'; /* Alternate (unbolded) style for Heading 4 */\n --typography-regular-h3: 400 1.75rem/3rem 'BC Sans'; /* Alternate (unbolded) style for Heading 3 */\n --typography-regular-h2: 400 2rem/3.375rem 'BC Sans'; /* Alternate (unbolded) style for Heading 2 */\n --typography-regular-h1: 400 2.25rem/3rem 'BC Sans'; /* Alternate (unbolded) style for Heading 1 */\n --typography-regular-display: 400 3rem/AUTO 'BC Sans'; /* Extra-large body text size. Do not use for headings */\n --typography-bold-label: 700 0.75rem/1.125rem 'BC Sans'; /* Labels and captions (bolded) */\n --typography-bold-small-body: 700 0.875rem/1.313rem 'BC Sans'; /* Default for small body text (bolded) */\n --typography-bold-body: 700 1rem/1.688rem 'BC Sans'; /* Default for body text (bolded) */\n --typography-bold-large-body: 700 1.125rem/1.913rem 'BC Sans'; /* Larger text size for body text (bolded) */\n --typography-bold-h6: 700 1.125rem/1.913rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H6 */\n --typography-bold-h5: 700 1.25rem/2.125rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H5 */\n --typography-bold-h4: 700 1.5rem/2.25rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H4 */\n --typography-bold-h3: 700 1.75rem/3rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H3 */\n --typography-bold-h2: 700 2rem/3rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H2 */\n --typography-bold-h1: 700 2.25rem/3.375rem 'BC Sans'; /* Default style for Heading 6. Includes all sizing/spacing values for H1 */\n --typography-bold-display: 700 3rem/AUTO 'BC Sans'; /* Extra-large font size (bolded). Do not use for headings */\n --typography-italic-label: 400 italic 0.75rem/1.125rem 'BC Sans'; /* Labels and captions (italic) */\n --typography-italic-small-body: 400 italic 0.875rem/1.313rem 'BC Sans'; /* Small body text (italic) */\n --typography-italic-body: 400 italic 1rem/1.688rem 'BC Sans'; /* Default for body text (italic) */\n --typography-italic-large-body: 400 italic 1.125rem/1.913rem 'BC Sans'; /* Larger text size for body text (italic) */\n --typography-italic-h6: 400 italic 1.125rem/1.913rem 'BC Sans'; /* Alternate (italic) style for Heading 6 */\n --typography-italic-h5: 400 italic 1.25rem/2.125rem 'BC Sans'; /* Alternate (italic) style for Heading 5 */\n --typography-italic-h4: 400 italic 1.5rem/2.25rem 'BC Sans'; /* Alternate (italic) style for Heading 4 */\n --typography-italic-h3: 400 italic 1.75rem/3.375rem 'BC Sans'; /* Alternate (italic) style for Heading 3 */\n --typography-italic-h2: 400 italic 2rem/3rem 'BC Sans'; /* Alternate (italic) style for Heading 2 */\n --typography-italic-h1: 400 italic 2.25rem/3.375rem 'BC Sans'; /* Alternate (italic) style for Heading 1 */\n --typography-italic-display: 400 italic 3rem/AUTO 'BC Sans'; /* Extra-large font size (italic). Do not use for headings */\n --typography-text-case-none: none;\n --typography-text-decoration-none: none; /* System token, used to generate type styles */\n --typography-paragraph-indent-0: 0px; /* System token, used to generate type styles */\n --typography-color-primary: #2D2D2D; /* Default colour for all body text and headings */\n --typography-color-secondary: #474543; /* Alternative colour for secondary/miscellaneous text */\n --typography-color-placeholder: #9F9D9C; /* Use for placeholder text in forms */\n --typography-color-disabled: #9F9D9C; /* Use only for text in inactive user interface elements */\n --typography-color-link: #255A90; /* Use for hyperlinks in body text and headings */\n --typography-color-danger: #CE3E39; /* Use for error, failure or danger message text */\n --typography-color-primary-invert: #FFFFFF; /* Default colour for text on dark backgrounds */\n --typography-color-secondary-invert: #ECEAE8; /* Secondary colour for text on dark backgrounds */\n --theme-gold-10: #FEF8E8; /* Gold scale — lightest */\n --theme-gold-20: #FEF0D8; /* Gold scale */\n --theme-gold-30: #FDE9C4; /* Gold scale */\n --theme-gold-40: #FCE2B0; /* Gold scale */\n --theme-gold-50: #FBDA9D; /* Gold scale */\n --theme-gold-60: #FBD389; /* Gold scale */\n --theme-gold-70: #FACC75; /* Gold scale */\n --theme-gold-80: #F9C462; /* Gold scale */\n --theme-gold-90: #F8BA47; /* Gold scale */\n --theme-gold-100: #FCBA19; /* Gold scale — darkest */\n --theme-blue-10: #F1F8FE; /* Blue scale — lightest */\n --theme-blue-20: #D8EAFD; /* Blue scale */\n --theme-blue-30: #C1DDFC; /* Blue scale */\n --theme-blue-40: #A8D0FB; /* Blue scale */\n --theme-blue-50: #91C4FA; /* Blue scale */\n --theme-blue-60: #7AB8F9; /* Blue scale */\n --theme-blue-70: #5595D9; /* Blue scale */\n --theme-blue-80: #3470B1; /* Blue scale */\n --theme-blue-90: #1E5189; /* Blue scale */\n --theme-blue-100: #013366; /* Blue scale — darkest */\n --theme-gray-10: #FAF9F8; /* Greyscale — lightest */\n --theme-gray-20: #F3F2F1; /* Greyscale */\n --theme-gray-30: #ECEAE8; /* Greyscale */\n --theme-gray-40: #E0DEDC; /* Greyscale */\n --theme-gray-50: #D1CFCD; /* Greyscale */\n --theme-gray-60: #C6C5C3; /* Greyscale */\n --theme-gray-70: #9F9D9C; /* Greyscale */\n --theme-gray-80: #605E5C; /* Greyscale */\n --theme-gray-90: #3D3C3B; /* Greyscale */\n --theme-gray-100: #353433; /* Greyscale */\n --theme-gray-110: #252423; /* Greyscale — darkest */\n --theme-gray-white: #FFFFFF; /* White */\n --theme-primary-blue: #013366; /* Primary Blue (Blue 100) */\n --theme-primary-gold: #FCBA19; /* Primary Gold (Gold 100) */\n}\n";
|
|
35
|
+
styleInject(css_248z$p);
|
|
39
36
|
|
|
40
37
|
/*
|
|
41
38
|
* Copyright 2024 Adobe. All rights reserved.
|
|
@@ -392,11 +389,8 @@ class $681cc3c98f569e39$export$dc064fe9e59310fd extends $681cc3c98f569e39$export
|
|
|
392
389
|
setAttributeNS() {}
|
|
393
390
|
removeAttribute() {}
|
|
394
391
|
constructor(type, ownerDocument){
|
|
395
|
-
super(ownerDocument)
|
|
396
|
-
this.
|
|
397
|
-
;
|
|
398
|
-
this._index = 0;
|
|
399
|
-
this.hasSetProps = false;
|
|
392
|
+
super(ownerDocument), this.nodeType = 8 // COMMENT_NODE (we'd use ELEMENT_NODE but React DevTools will fail to get its dimensions)
|
|
393
|
+
, this._index = 0, this.hasSetProps = false;
|
|
400
394
|
this.node = new ($23b9f4fcf0fe224b$export$d68d59712b04d9d1)(type, `react-aria-${++ownerDocument.nodeId}`);
|
|
401
395
|
// Start a transaction so that no updates are emitted from the collection
|
|
402
396
|
// until the props for this node are set. We don't know the real id for the
|
|
@@ -492,18 +486,8 @@ class $681cc3c98f569e39$export$b34a105447964f9f extends $681cc3c98f569e39$export
|
|
|
492
486
|
}
|
|
493
487
|
constructor(collection){
|
|
494
488
|
// @ts-ignore
|
|
495
|
-
super(null)
|
|
496
|
-
this.
|
|
497
|
-
;
|
|
498
|
-
this.ownerDocument = this;
|
|
499
|
-
this.dirtyNodes = new Set();
|
|
500
|
-
this.isSSR = false;
|
|
501
|
-
this.nodeId = 0;
|
|
502
|
-
this.nodesByProps = new WeakMap();
|
|
503
|
-
this.isMounted = true;
|
|
504
|
-
this.mutatedNodes = new Set();
|
|
505
|
-
this.subscriptions = new Set();
|
|
506
|
-
this.transactionCount = 0;
|
|
489
|
+
super(null), this.nodeType = 11 // DOCUMENT_FRAGMENT_NODE
|
|
490
|
+
, this.ownerDocument = this, this.dirtyNodes = new Set(), this.isSSR = false, this.nodeId = 0, this.nodesByProps = new WeakMap(), this.isMounted = true, this.mutatedNodes = new Set(), this.subscriptions = new Set(), this.transactionCount = 0;
|
|
507
491
|
this.collection = collection;
|
|
508
492
|
this.collectionMutated = true;
|
|
509
493
|
}
|
|
@@ -535,9 +519,7 @@ function $e948873055cbafe4$export$727c8fc270210f13(props) {
|
|
|
535
519
|
var _rendered_props_id, _ref;
|
|
536
520
|
// @ts-ignore
|
|
537
521
|
let key = (_ref = (_rendered_props_id = rendered.props.id) !== null && _rendered_props_id !== void 0 ? _rendered_props_id : item.key) !== null && _ref !== void 0 ? _ref : item.id;
|
|
538
|
-
// eslint-disable-next-line max-depth
|
|
539
522
|
if (key == null) throw new Error('Could not determine key for item');
|
|
540
|
-
// eslint-disable-next-line max-depth
|
|
541
523
|
if (idScope) key = idScope + ':' + key;
|
|
542
524
|
// Note: only works if wrapped Item passes through id...
|
|
543
525
|
rendered = ($dbSRa$react.cloneElement)(rendered, addIdAndValue ? {
|
|
@@ -637,7 +619,6 @@ function $b5e257d569688ac6$var$useLegacySSRSafeId(defaultId) {
|
|
|
637
619
|
return defaultId || `${prefix}-${counter}`;
|
|
638
620
|
}
|
|
639
621
|
function $b5e257d569688ac6$var$useModernSSRSafeId(defaultId) {
|
|
640
|
-
// @ts-ignore
|
|
641
622
|
let id = ($dbSRa$react).useId();
|
|
642
623
|
let [didSSR] = ($dbSRa$react.useState)($b5e257d569688ac6$export$535bd6ca7f90a273());
|
|
643
624
|
let prefix = didSSR || process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${$b5e257d569688ac6$var$defaultContext.prefix}`;
|
|
@@ -832,7 +813,16 @@ function $bdb11010cef70236$export$f680877a34711e37(defaultId) {
|
|
|
832
813
|
let updateValue = ($dbSRa$react.useCallback)((val)=>{
|
|
833
814
|
nextId.current = val;
|
|
834
815
|
}, []);
|
|
835
|
-
if ($bdb11010cef70236$var$canUseDOM)
|
|
816
|
+
if ($bdb11010cef70236$var$canUseDOM) {
|
|
817
|
+
// TS not smart enough to know that `has` means the value exists
|
|
818
|
+
if ($bdb11010cef70236$var$idsUpdaterMap.has(res) && !$bdb11010cef70236$var$idsUpdaterMap.get(res).includes(updateValue)) $bdb11010cef70236$var$idsUpdaterMap.set(res, [
|
|
819
|
+
...$bdb11010cef70236$var$idsUpdaterMap.get(res),
|
|
820
|
+
updateValue
|
|
821
|
+
]);
|
|
822
|
+
else $bdb11010cef70236$var$idsUpdaterMap.set(res, [
|
|
823
|
+
updateValue
|
|
824
|
+
]);
|
|
825
|
+
}
|
|
836
826
|
($f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{
|
|
837
827
|
let r = res;
|
|
838
828
|
return ()=>{
|
|
@@ -854,14 +844,14 @@ function $bdb11010cef70236$export$f680877a34711e37(defaultId) {
|
|
|
854
844
|
}
|
|
855
845
|
function $bdb11010cef70236$export$cd8c9cb68f842629(idA, idB) {
|
|
856
846
|
if (idA === idB) return idA;
|
|
857
|
-
let
|
|
858
|
-
if (
|
|
859
|
-
|
|
847
|
+
let setIdsA = $bdb11010cef70236$var$idsUpdaterMap.get(idA);
|
|
848
|
+
if (setIdsA) {
|
|
849
|
+
setIdsA.forEach((fn)=>fn(idB));
|
|
860
850
|
return idB;
|
|
861
851
|
}
|
|
862
|
-
let
|
|
863
|
-
if (
|
|
864
|
-
|
|
852
|
+
let setIdsB = $bdb11010cef70236$var$idsUpdaterMap.get(idB);
|
|
853
|
+
if (setIdsB) {
|
|
854
|
+
setIdsB.forEach((fn)=>fn(idA));
|
|
865
855
|
return idA;
|
|
866
856
|
}
|
|
867
857
|
return idB;
|
|
@@ -1040,7 +1030,7 @@ function $7215afc6de606d6b$var$supportsPreventScroll() {
|
|
|
1040
1030
|
return true;
|
|
1041
1031
|
}
|
|
1042
1032
|
});
|
|
1043
|
-
} catch
|
|
1033
|
+
} catch {
|
|
1044
1034
|
// Ignore
|
|
1045
1035
|
}
|
|
1046
1036
|
}
|
|
@@ -1148,6 +1138,14 @@ const $ea8dcbcb9ea1b556$var$RouterContext = /*#__PURE__*/ ($dbSRa$react.createCo
|
|
|
1148
1138
|
function $ea8dcbcb9ea1b556$export$9a302a45f65d0572() {
|
|
1149
1139
|
return ($dbSRa$react.useContext)($ea8dcbcb9ea1b556$var$RouterContext);
|
|
1150
1140
|
}
|
|
1141
|
+
function $ea8dcbcb9ea1b556$export$efa8c9099e530235(link, modifiers) {
|
|
1142
|
+
// Use getAttribute here instead of link.target. Firefox will default link.target to "_parent" when inside an iframe.
|
|
1143
|
+
let target = link.getAttribute('target');
|
|
1144
|
+
return (!target || target === '_self') && link.origin === location.origin && !link.hasAttribute('download') && !modifiers.metaKey && // open in new tab (mac)
|
|
1145
|
+
!modifiers.ctrlKey && // open in new tab (windows)
|
|
1146
|
+
!modifiers.altKey && // download
|
|
1147
|
+
!modifiers.shiftKey;
|
|
1148
|
+
}
|
|
1151
1149
|
function $ea8dcbcb9ea1b556$export$95185d699e05d4d7(target, modifiers, setOpening = true) {
|
|
1152
1150
|
var _window_event_type, _window_event;
|
|
1153
1151
|
let { metaKey: metaKey, ctrlKey: ctrlKey, altKey: altKey, shiftKey: shiftKey } = modifiers;
|
|
@@ -1202,8 +1200,10 @@ function $ea8dcbcb9ea1b556$var$openSyntheticLink(target, modifiers) {
|
|
|
1202
1200
|
}
|
|
1203
1201
|
function $ea8dcbcb9ea1b556$export$bdc77b0c0a3a85d6(props) {
|
|
1204
1202
|
let router = $ea8dcbcb9ea1b556$export$9a302a45f65d0572();
|
|
1203
|
+
var _props_href;
|
|
1204
|
+
const href = router.useHref((_props_href = props.href) !== null && _props_href !== void 0 ? _props_href : '');
|
|
1205
1205
|
return {
|
|
1206
|
-
'data-href': props.href ?
|
|
1206
|
+
'data-href': props.href ? href : undefined,
|
|
1207
1207
|
'data-target': props.target,
|
|
1208
1208
|
'data-rel': props.rel,
|
|
1209
1209
|
'data-download': props.download,
|
|
@@ -1213,8 +1213,10 @@ function $ea8dcbcb9ea1b556$export$bdc77b0c0a3a85d6(props) {
|
|
|
1213
1213
|
}
|
|
1214
1214
|
function $ea8dcbcb9ea1b556$export$7e924b3091a3bd18(props) {
|
|
1215
1215
|
let router = $ea8dcbcb9ea1b556$export$9a302a45f65d0572();
|
|
1216
|
+
var _props_href;
|
|
1217
|
+
const href = router.useHref((_props_href = props === null || props === void 0 ? void 0 : props.href) !== null && _props_href !== void 0 ? _props_href : '');
|
|
1216
1218
|
return {
|
|
1217
|
-
href: (props === null || props === void 0 ? void 0 : props.href) ?
|
|
1219
|
+
href: (props === null || props === void 0 ? void 0 : props.href) ? href : undefined,
|
|
1218
1220
|
target: props === null || props === void 0 ? void 0 : props.target,
|
|
1219
1221
|
rel: props === null || props === void 0 ? void 0 : props.rel,
|
|
1220
1222
|
download: props === null || props === void 0 ? void 0 : props.download,
|
|
@@ -1337,7 +1339,6 @@ function $03deb23ff14920c4$export$4eaf04e54aa8eed6() {
|
|
|
1337
1339
|
}, [
|
|
1338
1340
|
removeGlobalListener
|
|
1339
1341
|
]);
|
|
1340
|
-
// eslint-disable-next-line arrow-body-style
|
|
1341
1342
|
($dbSRa$react.useEffect)(()=>{
|
|
1342
1343
|
return removeAllGlobalListeners;
|
|
1343
1344
|
}, [
|
|
@@ -1504,6 +1505,7 @@ function $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref) {
|
|
|
1504
1505
|
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
1505
1506
|
* governing permissions and limitations under the License.
|
|
1506
1507
|
*/ function $cc38e7bd3fc7b213$export$2bb74740c4e19def(node, checkForOverflow) {
|
|
1508
|
+
if (!node) return false;
|
|
1507
1509
|
let style = window.getComputedStyle(node);
|
|
1508
1510
|
let isScrollable = /(auto|scroll)/.test(style.overflow + style.overflowX + style.overflowY);
|
|
1509
1511
|
if (isScrollable && checkForOverflow) isScrollable = node.scrollHeight !== node.clientHeight || node.scrollWidth !== node.clientWidth;
|
|
@@ -1560,7 +1562,6 @@ function $a40c673dc9f6d9c7$export$94ed1c92c7beeb22(node, checkForOverflow) {
|
|
|
1560
1562
|
* governing permissions and limitations under the License.
|
|
1561
1563
|
*/
|
|
1562
1564
|
|
|
1563
|
-
// @ts-ignore
|
|
1564
1565
|
let $5df64b3807dc15ee$var$visualViewport = typeof document !== 'undefined' && window.visualViewport;
|
|
1565
1566
|
function $5df64b3807dc15ee$export$d699905dd57c73ca() {
|
|
1566
1567
|
let isSSR = ($b5e257d569688ac6$export$535bd6ca7f90a273)();
|
|
@@ -1725,7 +1726,7 @@ function $2f04cbc44ee30ce0$export$53a0910f038337bd(scrollView, element) {
|
|
|
1725
1726
|
return sum;
|
|
1726
1727
|
}
|
|
1727
1728
|
function $2f04cbc44ee30ce0$export$c826860796309d1b(targetElement, opts) {
|
|
1728
|
-
if (document.contains(targetElement)) {
|
|
1729
|
+
if (targetElement && document.contains(targetElement)) {
|
|
1729
1730
|
let root = document.scrollingElement || document.documentElement;
|
|
1730
1731
|
let isScrollPrevented = window.getComputedStyle(root).overflow === 'hidden';
|
|
1731
1732
|
// If scrolling is not currently prevented then we aren’t in a overlay nor is a overlay open, just use element.scrollIntoView to bring the element into view
|
|
@@ -2402,10 +2403,6 @@ function $e1995378a142960e$var$CollectionRoot({ children: children }) {
|
|
|
2402
2403
|
*/
|
|
2403
2404
|
|
|
2404
2405
|
const $7135fc7d473fd974$export$d40e14dec8b060a8 = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
2405
|
-
const $7135fc7d473fd974$export$6e2c8f0811a474ce = /*#__PURE__*/ ($e1995378a142960e$export$e953bb1cd0f19726)('section', (props, ref, section)=>{
|
|
2406
|
-
let { render: render } = ($dbSRa$react.useContext)($7135fc7d473fd974$export$d40e14dec8b060a8);
|
|
2407
|
-
return render(props, ref, section);
|
|
2408
|
-
});
|
|
2409
2406
|
const $7135fc7d473fd974$export$a164736487e3f0ae = {
|
|
2410
2407
|
CollectionRoot ({ collection: collection, renderDropIndicator: renderDropIndicator }) {
|
|
2411
2408
|
return $7135fc7d473fd974$var$useCollectionRender(collection, null, renderDropIndicator);
|
|
@@ -2664,7 +2661,6 @@ let $14c0b72509d70225$var$modifiedElementMap = new WeakMap();
|
|
|
2664
2661
|
function $14c0b72509d70225$export$16a4697467175487(target) {
|
|
2665
2662
|
if (($c87311424ea30a05$export$fedb369cb70207f1)()) {
|
|
2666
2663
|
if ($14c0b72509d70225$var$state === 'default') {
|
|
2667
|
-
// eslint-disable-next-line no-restricted-globals
|
|
2668
2664
|
const documentObject = ($431fbd86ca7dc216$export$b204af158042fbac)(target);
|
|
2669
2665
|
$14c0b72509d70225$var$savedUserSelect = documentObject.documentElement.style.webkitUserSelect;
|
|
2670
2666
|
documentObject.documentElement.style.webkitUserSelect = 'none';
|
|
@@ -2691,7 +2687,6 @@ function $14c0b72509d70225$export$b0d6fa1ab32e3295(target) {
|
|
|
2691
2687
|
($bbed8b41f857bcc0$export$24490316f764c430)(()=>{
|
|
2692
2688
|
// Avoid race conditions
|
|
2693
2689
|
if ($14c0b72509d70225$var$state === 'restoring') {
|
|
2694
|
-
// eslint-disable-next-line no-restricted-globals
|
|
2695
2690
|
const documentObject = ($431fbd86ca7dc216$export$b204af158042fbac)(target);
|
|
2696
2691
|
if (documentObject.documentElement.style.webkitUserSelect === 'none') documentObject.documentElement.style.webkitUserSelect = $14c0b72509d70225$var$savedUserSelect || '';
|
|
2697
2692
|
$14c0b72509d70225$var$savedUserSelect = '';
|
|
@@ -3030,7 +3025,7 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
|
|
|
3030
3025
|
}
|
|
3031
3026
|
// Due to browser inconsistencies, especially on mobile browsers, we prevent
|
|
3032
3027
|
// default on pointer down and handle focusing the pressable element ourselves.
|
|
3033
|
-
if ($f6c31cce2adf654f$var$
|
|
3028
|
+
if ($f6c31cce2adf654f$var$shouldPreventDefaultDown(e.currentTarget)) e.preventDefault();
|
|
3034
3029
|
state.pointerType = e.pointerType;
|
|
3035
3030
|
let shouldStopPropagation = true;
|
|
3036
3031
|
if (!state.isPressed) {
|
|
@@ -3053,7 +3048,7 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
|
|
|
3053
3048
|
// Chrome and Firefox on touch Windows devices require mouse down events
|
|
3054
3049
|
// to be canceled in addition to pointer events, or an extra asynchronous
|
|
3055
3050
|
// focus event will be fired.
|
|
3056
|
-
if ($f6c31cce2adf654f$var$
|
|
3051
|
+
if ($f6c31cce2adf654f$var$shouldPreventDefaultDown(e.currentTarget)) e.preventDefault();
|
|
3057
3052
|
e.stopPropagation();
|
|
3058
3053
|
}
|
|
3059
3054
|
};
|
|
@@ -3091,8 +3086,23 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
|
|
|
3091
3086
|
state.pointerType = null;
|
|
3092
3087
|
removeAllGlobalListeners();
|
|
3093
3088
|
if (!allowTextSelectionOnPress) ($14c0b72509d70225$export$b0d6fa1ab32e3295)(state.target);
|
|
3089
|
+
// Prevent subsequent touchend event from triggering onClick on unrelated elements on Android. See below.
|
|
3090
|
+
// Both 'touch' and 'pen' pointerTypes trigger onTouchEnd, but 'mouse' does not.
|
|
3091
|
+
if ('ontouchend' in state.target && e.pointerType !== 'mouse') addGlobalListener(state.target, 'touchend', onTouchEnd, {
|
|
3092
|
+
once: true
|
|
3093
|
+
});
|
|
3094
3094
|
}
|
|
3095
3095
|
};
|
|
3096
|
+
// This is a workaround for an Android Chrome/Firefox issue where click events are fired on an incorrect element
|
|
3097
|
+
// if the original target is removed during onPointerUp (before onClick).
|
|
3098
|
+
// https://github.com/adobe/react-spectrum/issues/1513
|
|
3099
|
+
// https://issues.chromium.org/issues/40732224
|
|
3100
|
+
// Note: this event must be registered directly on the element, not via React props in order to work.
|
|
3101
|
+
// https://github.com/facebook/react/issues/9809
|
|
3102
|
+
let onTouchEnd = (e)=>{
|
|
3103
|
+
// Don't preventDefault if we actually want the default (e.g. submit/link click).
|
|
3104
|
+
if ($f6c31cce2adf654f$var$shouldPreventDefaultUp(e.currentTarget)) e.preventDefault();
|
|
3105
|
+
};
|
|
3096
3106
|
let onPointerCancel = (e)=>{
|
|
3097
3107
|
cancel(e);
|
|
3098
3108
|
};
|
|
@@ -3107,7 +3117,7 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
|
|
|
3107
3117
|
if (e.button !== 0 || !e.currentTarget.contains(e.target)) return;
|
|
3108
3118
|
// Due to browser inconsistencies, especially on mobile browsers, we prevent
|
|
3109
3119
|
// default on mouse down and handle focusing the pressable element ourselves.
|
|
3110
|
-
if ($f6c31cce2adf654f$var$
|
|
3120
|
+
if ($f6c31cce2adf654f$var$shouldPreventDefaultDown(e.currentTarget)) e.preventDefault();
|
|
3111
3121
|
if (state.ignoreEmulatedMouseEvents) {
|
|
3112
3122
|
e.stopPropagation();
|
|
3113
3123
|
return;
|
|
@@ -3248,7 +3258,6 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
|
|
|
3248
3258
|
triggerPressUp
|
|
3249
3259
|
]);
|
|
3250
3260
|
// Remove user-select: none in case component unmounts immediately after pressStart
|
|
3251
|
-
// eslint-disable-next-line arrow-body-style
|
|
3252
3261
|
($dbSRa$react.useEffect)(()=>{
|
|
3253
3262
|
return ()=>{
|
|
3254
3263
|
var _ref_current_target;
|
|
@@ -3344,16 +3353,20 @@ function $f6c31cce2adf654f$var$isOverTarget(point, target) {
|
|
|
3344
3353
|
let pointRect = $f6c31cce2adf654f$var$getPointClientRect(point);
|
|
3345
3354
|
return $f6c31cce2adf654f$var$areRectanglesOverlapping(rect, pointRect);
|
|
3346
3355
|
}
|
|
3347
|
-
function $f6c31cce2adf654f$var$
|
|
3356
|
+
function $f6c31cce2adf654f$var$shouldPreventDefaultDown(target) {
|
|
3348
3357
|
// We cannot prevent default if the target is a draggable element.
|
|
3349
3358
|
return !(target instanceof HTMLElement) || !target.hasAttribute('draggable');
|
|
3350
3359
|
}
|
|
3351
|
-
function $f6c31cce2adf654f$var$
|
|
3352
|
-
if (target instanceof HTMLInputElement) return
|
|
3360
|
+
function $f6c31cce2adf654f$var$shouldPreventDefaultUp(target) {
|
|
3361
|
+
if (target instanceof HTMLInputElement) return false;
|
|
3353
3362
|
if (target instanceof HTMLButtonElement) return target.type !== 'submit' && target.type !== 'reset';
|
|
3354
3363
|
if ($f6c31cce2adf654f$var$isHTMLAnchorLink(target)) return false;
|
|
3355
3364
|
return true;
|
|
3356
3365
|
}
|
|
3366
|
+
function $f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(target, key) {
|
|
3367
|
+
if (target instanceof HTMLInputElement) return !$f6c31cce2adf654f$var$isValidInputKey(target, key);
|
|
3368
|
+
return $f6c31cce2adf654f$var$shouldPreventDefaultUp(target);
|
|
3369
|
+
}
|
|
3357
3370
|
const $f6c31cce2adf654f$var$nonTextInputTypes = new Set([
|
|
3358
3371
|
'checkbox',
|
|
3359
3372
|
'radio',
|
|
@@ -3463,7 +3476,6 @@ function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {
|
|
|
3463
3476
|
observer: null
|
|
3464
3477
|
});
|
|
3465
3478
|
// Clean up MutationObserver on unmount. See below.
|
|
3466
|
-
// eslint-disable-next-line arrow-body-style
|
|
3467
3479
|
($f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{
|
|
3468
3480
|
const state = stateRef.current;
|
|
3469
3481
|
return ()=>{
|
|
@@ -4561,7 +4573,6 @@ function $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain) {
|
|
|
4561
4573
|
contain
|
|
4562
4574
|
]);
|
|
4563
4575
|
// This is a useLayoutEffect so it is guaranteed to run before our async synthetic blur
|
|
4564
|
-
// eslint-disable-next-line arrow-body-style
|
|
4565
4576
|
($f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{
|
|
4566
4577
|
return ()=>{
|
|
4567
4578
|
if (raf.current) cancelAnimationFrame(raf.current);
|
|
@@ -4603,12 +4614,12 @@ function $9bf71ea28793e738$var$isAncestorScope(ancestor, scope) {
|
|
|
4603
4614
|
function $9bf71ea28793e738$var$focusElement(element, scroll = false) {
|
|
4604
4615
|
if (element != null && !scroll) try {
|
|
4605
4616
|
(0, $6a99195332edec8b$export$80f3e147d781571c)(element);
|
|
4606
|
-
} catch
|
|
4617
|
+
} catch {
|
|
4607
4618
|
// ignore
|
|
4608
4619
|
}
|
|
4609
4620
|
else if (element != null) try {
|
|
4610
4621
|
element.focus();
|
|
4611
|
-
} catch
|
|
4622
|
+
} catch {
|
|
4612
4623
|
// ignore
|
|
4613
4624
|
}
|
|
4614
4625
|
}
|
|
@@ -4715,7 +4726,7 @@ function $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain)
|
|
|
4715
4726
|
let onKeyDown = (e)=>{
|
|
4716
4727
|
if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey || !$9bf71ea28793e738$var$shouldContainFocus(scopeRef) || e.isComposing) return;
|
|
4717
4728
|
let focusedElement = ownerDocument.activeElement;
|
|
4718
|
-
if (!$9bf71ea28793e738$var$
|
|
4729
|
+
if (!$9bf71ea28793e738$var$isElementInChildScope(focusedElement, scopeRef) || !$9bf71ea28793e738$var$shouldRestoreFocus(scopeRef)) return;
|
|
4719
4730
|
let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);
|
|
4720
4731
|
if (!treeNode) return;
|
|
4721
4732
|
let nodeToRestore = treeNode.nodeToRestore;
|
|
@@ -4732,11 +4743,11 @@ function $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain)
|
|
|
4732
4743
|
}
|
|
4733
4744
|
// If there is no next element, or it is outside the current scope, move focus to the
|
|
4734
4745
|
// next element after the node to restore to instead.
|
|
4735
|
-
if ((!nextElement || !$9bf71ea28793e738$var$
|
|
4746
|
+
if ((!nextElement || !$9bf71ea28793e738$var$isElementInChildScope(nextElement, scopeRef)) && nodeToRestore) {
|
|
4736
4747
|
walker.currentNode = nodeToRestore;
|
|
4737
4748
|
// Skip over elements within the scope, in case the scope immediately follows the node to restore.
|
|
4738
4749
|
do nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();
|
|
4739
|
-
while ($9bf71ea28793e738$var$
|
|
4750
|
+
while ($9bf71ea28793e738$var$isElementInChildScope(nextElement, scopeRef));
|
|
4740
4751
|
e.preventDefault();
|
|
4741
4752
|
e.stopPropagation();
|
|
4742
4753
|
if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);
|
|
@@ -4769,8 +4780,7 @@ function $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain)
|
|
|
4769
4780
|
if (!treeNode) return;
|
|
4770
4781
|
let nodeToRestore = treeNode.nodeToRestore;
|
|
4771
4782
|
// if we already lost focus to the body and this was the active scope, then we should attempt to restore
|
|
4772
|
-
if (restoreFocus && nodeToRestore &&
|
|
4773
|
-
($9bf71ea28793e738$var$isElementInScope(ownerDocument.activeElement, scopeRef.current) || ownerDocument.activeElement === ownerDocument.body && $9bf71ea28793e738$var$shouldRestoreFocus(scopeRef))) {
|
|
4783
|
+
if (restoreFocus && nodeToRestore && (ownerDocument.activeElement && $9bf71ea28793e738$var$isElementInChildScope(ownerDocument.activeElement, scopeRef) || ownerDocument.activeElement === ownerDocument.body && $9bf71ea28793e738$var$shouldRestoreFocus(scopeRef))) {
|
|
4774
4784
|
// freeze the focusScopeTree so it persists after the raf, otherwise during unmount nodes are removed from it
|
|
4775
4785
|
let clonedTree = $9bf71ea28793e738$export$d06fae2ee68b101e.clone();
|
|
4776
4786
|
requestAnimationFrame(()=>{
|
|
@@ -5046,6 +5056,66 @@ function $83013635b024ae3d$export$eac1895992b9f3d6(ref, options) {
|
|
|
5046
5056
|
return isDisabled ? false : hasTabbableChild;
|
|
5047
5057
|
}
|
|
5048
5058
|
|
|
5059
|
+
/*
|
|
5060
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
5061
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
5062
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5063
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
5064
|
+
*
|
|
5065
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
5066
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
5067
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
5068
|
+
* governing permissions and limitations under the License.
|
|
5069
|
+
*/
|
|
5070
|
+
|
|
5071
|
+
|
|
5072
|
+
function $298d61e98472621b$export$dcf14c9974fe2767(props, ref) {
|
|
5073
|
+
let { elementType: elementType = 'a', onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, // @ts-ignore
|
|
5074
|
+
onClick: deprecatedOnClick, isDisabled: isDisabled, ...otherProps } = props;
|
|
5075
|
+
let linkProps = {};
|
|
5076
|
+
if (elementType !== 'a') linkProps = {
|
|
5077
|
+
role: 'link',
|
|
5078
|
+
tabIndex: !isDisabled ? 0 : undefined
|
|
5079
|
+
};
|
|
5080
|
+
let { focusableProps: focusableProps } = ($e6afbd83fe6ebbd2$export$4c014de7c8940b4c)(props, ref);
|
|
5081
|
+
let { pressProps: pressProps, isPressed: isPressed } = ($f6c31cce2adf654f$export$45712eceda6fad21)({
|
|
5082
|
+
onPress: onPress,
|
|
5083
|
+
onPressStart: onPressStart,
|
|
5084
|
+
onPressEnd: onPressEnd,
|
|
5085
|
+
isDisabled: isDisabled,
|
|
5086
|
+
ref: ref
|
|
5087
|
+
});
|
|
5088
|
+
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(otherProps, {
|
|
5089
|
+
labelable: true
|
|
5090
|
+
});
|
|
5091
|
+
let interactionHandlers = ($3ef42575df84b30b$export$9d1611c77c2fe928)(focusableProps, pressProps);
|
|
5092
|
+
let router = ($ea8dcbcb9ea1b556$export$9a302a45f65d0572)();
|
|
5093
|
+
let routerLinkProps = ($ea8dcbcb9ea1b556$export$7e924b3091a3bd18)(props);
|
|
5094
|
+
return {
|
|
5095
|
+
isPressed: isPressed,
|
|
5096
|
+
linkProps: ($3ef42575df84b30b$export$9d1611c77c2fe928)(domProps, routerLinkProps, {
|
|
5097
|
+
...interactionHandlers,
|
|
5098
|
+
...linkProps,
|
|
5099
|
+
'aria-disabled': isDisabled || undefined,
|
|
5100
|
+
'aria-current': props['aria-current'],
|
|
5101
|
+
onClick: (e)=>{
|
|
5102
|
+
var _pressProps_onClick;
|
|
5103
|
+
(_pressProps_onClick = pressProps.onClick) === null || _pressProps_onClick === void 0 ? void 0 : _pressProps_onClick.call(pressProps, e);
|
|
5104
|
+
if (deprecatedOnClick) {
|
|
5105
|
+
deprecatedOnClick(e);
|
|
5106
|
+
console.warn('onClick is deprecated, please use onPress');
|
|
5107
|
+
}
|
|
5108
|
+
// If a custom router is provided, prevent default and forward if this link should client navigate.
|
|
5109
|
+
if (!router.isNative && e.currentTarget instanceof HTMLAnchorElement && e.currentTarget.href && // If props are applied to a router Link component, it may have already prevented default.
|
|
5110
|
+
!e.isDefaultPrevented() && ($ea8dcbcb9ea1b556$export$efa8c9099e530235)(e.currentTarget, e) && props.href) {
|
|
5111
|
+
e.preventDefault();
|
|
5112
|
+
router.open(e.currentTarget, e, props.href, props.routerOptions);
|
|
5113
|
+
}
|
|
5114
|
+
}
|
|
5115
|
+
})
|
|
5116
|
+
};
|
|
5117
|
+
}
|
|
5118
|
+
|
|
5049
5119
|
/*
|
|
5050
5120
|
* Copyright 2020 Adobe. All rights reserved.
|
|
5051
5121
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -5092,7 +5162,6 @@ const $148a7a147e38ea7f$var$RTL_LANGS = new Set([
|
|
|
5092
5162
|
]);
|
|
5093
5163
|
function $148a7a147e38ea7f$export$702d680b21cbd764(localeString) {
|
|
5094
5164
|
// If the Intl.Locale API is available, use it to get the locale's text direction.
|
|
5095
|
-
// @ts-ignore
|
|
5096
5165
|
if (Intl.Locale) {
|
|
5097
5166
|
let locale = new Intl.Locale(localeString).maximize();
|
|
5098
5167
|
// Use the text info object to get the direction if possible.
|
|
@@ -5127,11 +5196,10 @@ const $1e5a04cdaf7d1af8$var$localeSymbol = Symbol.for('react-aria.i18n.locale');
|
|
|
5127
5196
|
function $1e5a04cdaf7d1af8$export$f09106e7c6677ec5() {
|
|
5128
5197
|
let locale = typeof window !== 'undefined' && window[$1e5a04cdaf7d1af8$var$localeSymbol] || typeof navigator !== 'undefined' && (navigator.language || navigator.userLanguage) || 'en-US';
|
|
5129
5198
|
try {
|
|
5130
|
-
// @ts-ignore
|
|
5131
5199
|
Intl.DateTimeFormat.supportedLocalesOf([
|
|
5132
5200
|
locale
|
|
5133
5201
|
]);
|
|
5134
|
-
} catch
|
|
5202
|
+
} catch {
|
|
5135
5203
|
locale = 'en-US';
|
|
5136
5204
|
}
|
|
5137
5205
|
return {
|
|
@@ -5377,8 +5445,7 @@ function $325a3faab7a68acd$export$a16aca283550c30d(options) {
|
|
|
5377
5445
|
|
|
5378
5446
|
|
|
5379
5447
|
function $701a24aa0da5b062$export$ea18c227d4417cc3(props, ref) {
|
|
5380
|
-
let { elementType: elementType = 'button', isDisabled: isDisabled, onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onPressChange: onPressChange, preventFocusOnPress: // @ts-ignore - undocumented
|
|
5381
|
-
preventFocusOnPress, allowFocusWhenDisabled: // @ts-ignore - undocumented
|
|
5448
|
+
let { elementType: elementType = 'button', isDisabled: isDisabled, onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onPressChange: onPressChange, preventFocusOnPress: preventFocusOnPress, allowFocusWhenDisabled: // @ts-ignore - undocumented
|
|
5382
5449
|
allowFocusWhenDisabled, // @ts-ignore
|
|
5383
5450
|
onClick: deprecatedOnClick, href: href, target: target, rel: rel, type: type = 'button' } = props;
|
|
5384
5451
|
let additionalProps;
|
|
@@ -5389,7 +5456,7 @@ function $701a24aa0da5b062$export$ea18c227d4417cc3(props, ref) {
|
|
|
5389
5456
|
else additionalProps = {
|
|
5390
5457
|
role: 'button',
|
|
5391
5458
|
tabIndex: isDisabled ? undefined : 0,
|
|
5392
|
-
href: elementType === 'a' && isDisabled ?
|
|
5459
|
+
href: elementType === 'a' && !isDisabled ? href : undefined,
|
|
5393
5460
|
target: elementType === 'a' ? target : undefined,
|
|
5394
5461
|
type: elementType === 'input' ? type : undefined,
|
|
5395
5462
|
disabled: elementType === 'input' ? isDisabled : undefined,
|
|
@@ -5441,8 +5508,20 @@ function $701a24aa0da5b062$export$ea18c227d4417cc3(props, ref) {
|
|
|
5441
5508
|
*/ /* Inspired by https://github.com/AlmeroSteyn/react-aria-live */ const $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY = 7000;
|
|
5442
5509
|
let $319e236875307eab$var$liveAnnouncer = null;
|
|
5443
5510
|
function $319e236875307eab$export$a9b970dcc4ae71a9(message, assertiveness = 'assertive', timeout = $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY) {
|
|
5444
|
-
if (!$319e236875307eab$var$liveAnnouncer)
|
|
5445
|
-
|
|
5511
|
+
if (!$319e236875307eab$var$liveAnnouncer) {
|
|
5512
|
+
$319e236875307eab$var$liveAnnouncer = new $319e236875307eab$var$LiveAnnouncer();
|
|
5513
|
+
// wait for the live announcer regions to be added to the dom, then announce
|
|
5514
|
+
// otherwise Safari won't announce the message if it's added too quickly
|
|
5515
|
+
// found most times less than 100ms were not consistent when announcing with Safari
|
|
5516
|
+
// IS_REACT_ACT_ENVIRONMENT is used by React 18. Previous versions checked for the `jest` global.
|
|
5517
|
+
// https://github.com/reactwg/react-18/discussions/102
|
|
5518
|
+
// if we're in a test environment, announce without waiting
|
|
5519
|
+
// @ts-ignore
|
|
5520
|
+
if (!(typeof IS_REACT_ACT_ENVIRONMENT === 'boolean' ? IS_REACT_ACT_ENVIRONMENT : typeof jest !== 'undefined')) setTimeout(()=>{
|
|
5521
|
+
if ($319e236875307eab$var$liveAnnouncer === null || $319e236875307eab$var$liveAnnouncer === void 0 ? void 0 : $319e236875307eab$var$liveAnnouncer.isAttached()) $319e236875307eab$var$liveAnnouncer === null || $319e236875307eab$var$liveAnnouncer === void 0 ? void 0 : $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);
|
|
5522
|
+
}, 100);
|
|
5523
|
+
else $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);
|
|
5524
|
+
} else $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);
|
|
5446
5525
|
}
|
|
5447
5526
|
// LiveAnnouncer is implemented using vanilla DOM, not React. That's because as of React 18
|
|
5448
5527
|
// ReactDOM.render is deprecated, and the replacement, ReactDOM.createRoot is moved into a
|
|
@@ -5451,6 +5530,10 @@ function $319e236875307eab$export$a9b970dcc4ae71a9(message, assertiveness = 'ass
|
|
|
5451
5530
|
// is simple enough to implement without React, so that's what we do here.
|
|
5452
5531
|
// See this discussion for more details: https://github.com/reactwg/react-18/discussions/125#discussioncomment-2382638
|
|
5453
5532
|
class $319e236875307eab$var$LiveAnnouncer {
|
|
5533
|
+
isAttached() {
|
|
5534
|
+
var _this_node;
|
|
5535
|
+
return (_this_node = this.node) === null || _this_node === void 0 ? void 0 : _this_node.isConnected;
|
|
5536
|
+
}
|
|
5454
5537
|
createLog(ariaLive) {
|
|
5455
5538
|
let node = document.createElement('div');
|
|
5456
5539
|
node.setAttribute('role', 'log');
|
|
@@ -5464,146 +5547,52 @@ class $319e236875307eab$var$LiveAnnouncer {
|
|
|
5464
5547
|
this.node = null;
|
|
5465
5548
|
}
|
|
5466
5549
|
announce(message, assertiveness = 'assertive', timeout = $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY) {
|
|
5550
|
+
var _this_assertiveLog, _this_politeLog;
|
|
5467
5551
|
if (!this.node) return;
|
|
5468
5552
|
let node = document.createElement('div');
|
|
5469
|
-
|
|
5470
|
-
|
|
5471
|
-
|
|
5553
|
+
if (typeof message === 'object') {
|
|
5554
|
+
// To read an aria-labelledby, the element must have an appropriate role, such as img.
|
|
5555
|
+
node.setAttribute('role', 'img');
|
|
5556
|
+
node.setAttribute('aria-labelledby', message['aria-labelledby']);
|
|
5557
|
+
} else node.textContent = message;
|
|
5558
|
+
if (assertiveness === 'assertive') (_this_assertiveLog = this.assertiveLog) === null || _this_assertiveLog === void 0 ? void 0 : _this_assertiveLog.appendChild(node);
|
|
5559
|
+
else (_this_politeLog = this.politeLog) === null || _this_politeLog === void 0 ? void 0 : _this_politeLog.appendChild(node);
|
|
5472
5560
|
if (message !== '') setTimeout(()=>{
|
|
5473
5561
|
node.remove();
|
|
5474
5562
|
}, timeout);
|
|
5475
5563
|
}
|
|
5476
5564
|
clear(assertiveness) {
|
|
5477
5565
|
if (!this.node) return;
|
|
5478
|
-
if (!assertiveness || assertiveness === 'assertive') this.assertiveLog.innerHTML = '';
|
|
5479
|
-
if (!assertiveness || assertiveness === 'polite') this.politeLog.innerHTML = '';
|
|
5566
|
+
if ((!assertiveness || assertiveness === 'assertive') && this.assertiveLog) this.assertiveLog.innerHTML = '';
|
|
5567
|
+
if ((!assertiveness || assertiveness === 'polite') && this.politeLog) this.politeLog.innerHTML = '';
|
|
5480
5568
|
}
|
|
5481
5569
|
constructor(){
|
|
5482
|
-
this.node =
|
|
5483
|
-
this.
|
|
5484
|
-
|
|
5485
|
-
|
|
5486
|
-
|
|
5487
|
-
|
|
5488
|
-
|
|
5489
|
-
|
|
5490
|
-
|
|
5491
|
-
|
|
5492
|
-
|
|
5493
|
-
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
|
|
5501
|
-
|
|
5502
|
-
|
|
5503
|
-
|
|
5504
|
-
|
|
5505
|
-
|
|
5506
|
-
* Copyright 2023 Adobe. All rights reserved.
|
|
5507
|
-
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
5508
|
-
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5509
|
-
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
5510
|
-
*
|
|
5511
|
-
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
5512
|
-
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
5513
|
-
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
5514
|
-
* governing permissions and limitations under the License.
|
|
5515
|
-
*/
|
|
5516
|
-
|
|
5517
|
-
|
|
5518
|
-
function $e93e671b31057976$export$b8473d3665f3a75a(props, state, ref) {
|
|
5519
|
-
let { validationBehavior: validationBehavior, focus: focus } = props;
|
|
5520
|
-
// This is a useLayoutEffect so that it runs before the useEffect in useFormValidationState, which commits the validation change.
|
|
5521
|
-
($f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{
|
|
5522
|
-
if (validationBehavior === 'native' && (ref === null || ref === void 0 ? void 0 : ref.current)) {
|
|
5523
|
-
let errorMessage = state.realtimeValidation.isInvalid ? state.realtimeValidation.validationErrors.join(' ') || 'Invalid value.' : '';
|
|
5524
|
-
ref.current.setCustomValidity(errorMessage);
|
|
5525
|
-
// Prevent default tooltip for validation message.
|
|
5526
|
-
// https://bugzilla.mozilla.org/show_bug.cgi?id=605277
|
|
5527
|
-
if (!ref.current.hasAttribute('title')) ref.current.title = '';
|
|
5528
|
-
if (!state.realtimeValidation.isInvalid) state.updateValidation($e93e671b31057976$var$getNativeValidity(ref.current));
|
|
5529
|
-
}
|
|
5530
|
-
});
|
|
5531
|
-
let onReset = ($8ae05eaa5c114e9c$export$7f54fc3180508a52)(()=>{
|
|
5532
|
-
state.resetValidation();
|
|
5533
|
-
});
|
|
5534
|
-
let onInvalid = ($8ae05eaa5c114e9c$export$7f54fc3180508a52)((e)=>{
|
|
5535
|
-
var _ref_current;
|
|
5536
|
-
// Only commit validation if we are not already displaying one.
|
|
5537
|
-
// This avoids clearing server errors that the user didn't actually fix.
|
|
5538
|
-
if (!state.displayValidation.isInvalid) state.commitValidation();
|
|
5539
|
-
// Auto focus the first invalid input in a form, unless the error already had its default prevented.
|
|
5540
|
-
let form = ref === null || ref === void 0 ? void 0 : (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.form;
|
|
5541
|
-
if (!e.defaultPrevented && ref && form && $e93e671b31057976$var$getFirstInvalidInput(form) === ref.current) {
|
|
5542
|
-
var _ref_current1;
|
|
5543
|
-
if (focus) focus();
|
|
5544
|
-
else (_ref_current1 = ref.current) === null || _ref_current1 === void 0 ? void 0 : _ref_current1.focus();
|
|
5545
|
-
// Always show focus ring.
|
|
5546
|
-
($507fabe10e71c6fb$export$8397ddfc504fdb9a)('keyboard');
|
|
5570
|
+
this.node = null;
|
|
5571
|
+
this.assertiveLog = null;
|
|
5572
|
+
this.politeLog = null;
|
|
5573
|
+
if (typeof document !== 'undefined') {
|
|
5574
|
+
this.node = document.createElement('div');
|
|
5575
|
+
this.node.dataset.liveAnnouncer = 'true';
|
|
5576
|
+
// copied from VisuallyHidden
|
|
5577
|
+
Object.assign(this.node.style, {
|
|
5578
|
+
border: 0,
|
|
5579
|
+
clip: 'rect(0 0 0 0)',
|
|
5580
|
+
clipPath: 'inset(50%)',
|
|
5581
|
+
height: '1px',
|
|
5582
|
+
margin: '-1px',
|
|
5583
|
+
overflow: 'hidden',
|
|
5584
|
+
padding: 0,
|
|
5585
|
+
position: 'absolute',
|
|
5586
|
+
width: '1px',
|
|
5587
|
+
whiteSpace: 'nowrap'
|
|
5588
|
+
});
|
|
5589
|
+
this.assertiveLog = this.createLog('assertive');
|
|
5590
|
+
this.node.appendChild(this.assertiveLog);
|
|
5591
|
+
this.politeLog = this.createLog('polite');
|
|
5592
|
+
this.node.appendChild(this.politeLog);
|
|
5593
|
+
document.body.prepend(this.node);
|
|
5547
5594
|
}
|
|
5548
|
-
// Prevent default browser error UI from appearing.
|
|
5549
|
-
e.preventDefault();
|
|
5550
|
-
});
|
|
5551
|
-
let onChange = ($8ae05eaa5c114e9c$export$7f54fc3180508a52)(()=>{
|
|
5552
|
-
state.commitValidation();
|
|
5553
|
-
});
|
|
5554
|
-
($dbSRa$react.useEffect)(()=>{
|
|
5555
|
-
let input = ref === null || ref === void 0 ? void 0 : ref.current;
|
|
5556
|
-
if (!input) return;
|
|
5557
|
-
let form = input.form;
|
|
5558
|
-
input.addEventListener('invalid', onInvalid);
|
|
5559
|
-
input.addEventListener('change', onChange);
|
|
5560
|
-
form === null || form === void 0 ? void 0 : form.addEventListener('reset', onReset);
|
|
5561
|
-
return ()=>{
|
|
5562
|
-
input.removeEventListener('invalid', onInvalid);
|
|
5563
|
-
input.removeEventListener('change', onChange);
|
|
5564
|
-
form === null || form === void 0 ? void 0 : form.removeEventListener('reset', onReset);
|
|
5565
|
-
};
|
|
5566
|
-
}, [
|
|
5567
|
-
ref,
|
|
5568
|
-
onInvalid,
|
|
5569
|
-
onChange,
|
|
5570
|
-
onReset,
|
|
5571
|
-
validationBehavior
|
|
5572
|
-
]);
|
|
5573
|
-
}
|
|
5574
|
-
function $e93e671b31057976$var$getValidity(input) {
|
|
5575
|
-
// The native ValidityState object is live, meaning each property is a getter that returns the current state.
|
|
5576
|
-
// We need to create a snapshot of the validity state at the time this function is called to avoid unpredictable React renders.
|
|
5577
|
-
let validity = input.validity;
|
|
5578
|
-
return {
|
|
5579
|
-
badInput: validity.badInput,
|
|
5580
|
-
customError: validity.customError,
|
|
5581
|
-
patternMismatch: validity.patternMismatch,
|
|
5582
|
-
rangeOverflow: validity.rangeOverflow,
|
|
5583
|
-
rangeUnderflow: validity.rangeUnderflow,
|
|
5584
|
-
stepMismatch: validity.stepMismatch,
|
|
5585
|
-
tooLong: validity.tooLong,
|
|
5586
|
-
tooShort: validity.tooShort,
|
|
5587
|
-
typeMismatch: validity.typeMismatch,
|
|
5588
|
-
valueMissing: validity.valueMissing,
|
|
5589
|
-
valid: validity.valid
|
|
5590
|
-
};
|
|
5591
|
-
}
|
|
5592
|
-
function $e93e671b31057976$var$getNativeValidity(input) {
|
|
5593
|
-
return {
|
|
5594
|
-
isInvalid: !input.validity.valid,
|
|
5595
|
-
validationDetails: $e93e671b31057976$var$getValidity(input),
|
|
5596
|
-
validationErrors: input.validationMessage ? [
|
|
5597
|
-
input.validationMessage
|
|
5598
|
-
] : []
|
|
5599
|
-
};
|
|
5600
|
-
}
|
|
5601
|
-
function $e93e671b31057976$var$getFirstInvalidInput(form) {
|
|
5602
|
-
for(let i = 0; i < form.elements.length; i++){
|
|
5603
|
-
let element = form.elements[i];
|
|
5604
|
-
if (!element.validity.valid) return element;
|
|
5605
5595
|
}
|
|
5606
|
-
return null;
|
|
5607
5596
|
}
|
|
5608
5597
|
|
|
5609
5598
|
/*
|
|
@@ -5668,11 +5657,15 @@ function $e5be200c675c3b3a$var$useFormValidationStateImpl(props) {
|
|
|
5668
5657
|
validationDetails: $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE
|
|
5669
5658
|
} : null;
|
|
5670
5659
|
// Perform custom client side validation.
|
|
5671
|
-
let clientError = ($dbSRa$react.useMemo)(()
|
|
5660
|
+
let clientError = ($dbSRa$react.useMemo)(()=>{
|
|
5661
|
+
if (!validate || value == null) return null;
|
|
5662
|
+
let validateErrors = $e5be200c675c3b3a$var$runValidate(validate, value);
|
|
5663
|
+
return $e5be200c675c3b3a$var$getValidationResult(validateErrors);
|
|
5664
|
+
}, [
|
|
5672
5665
|
validate,
|
|
5673
5666
|
value
|
|
5674
5667
|
]);
|
|
5675
|
-
if (builtinValidation === null || builtinValidation === void 0 ? void 0 : builtinValidation.validationDetails.valid) builtinValidation =
|
|
5668
|
+
if (builtinValidation === null || builtinValidation === void 0 ? void 0 : builtinValidation.validationDetails.valid) builtinValidation = undefined;
|
|
5676
5669
|
// Get relevant server errors from the form.
|
|
5677
5670
|
let serverErrors = ($dbSRa$react.useContext)($e5be200c675c3b3a$export$571b5131b7e65c11);
|
|
5678
5671
|
let serverErrorMessages = ($dbSRa$react.useMemo)(()=>{
|
|
@@ -5764,7 +5757,7 @@ function $e5be200c675c3b3a$var$getValidationResult(errors) {
|
|
|
5764
5757
|
}
|
|
5765
5758
|
function $e5be200c675c3b3a$var$isEqualValidation(a, b) {
|
|
5766
5759
|
if (a === b) return true;
|
|
5767
|
-
return a && b && a.isInvalid === b.isInvalid && a.validationErrors.length === b.validationErrors.length && a.validationErrors.every((a, i)=>a === b.validationErrors[i]) && Object.entries(a.validationDetails).every(([k, v])=>b.validationDetails[k] === v);
|
|
5760
|
+
return !!a && !!b && a.isInvalid === b.isInvalid && a.validationErrors.length === b.validationErrors.length && a.validationErrors.every((a, i)=>a === b.validationErrors[i]) && Object.entries(a.validationDetails).every(([k, v])=>b.validationDetails[k] === v);
|
|
5768
5761
|
}
|
|
5769
5762
|
function $e5be200c675c3b3a$export$75ee7c75d68f5b0e(...results) {
|
|
5770
5763
|
let errors = new Set();
|
|
@@ -5790,7 +5783,7 @@ function $e5be200c675c3b3a$export$75ee7c75d68f5b0e(...results) {
|
|
|
5790
5783
|
}
|
|
5791
5784
|
|
|
5792
5785
|
/*
|
|
5793
|
-
* Copyright
|
|
5786
|
+
* Copyright 2023 Adobe. All rights reserved.
|
|
5794
5787
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
5795
5788
|
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5796
5789
|
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
@@ -5802,38 +5795,142 @@ function $e5be200c675c3b3a$export$75ee7c75d68f5b0e(...results) {
|
|
|
5802
5795
|
*/
|
|
5803
5796
|
|
|
5804
5797
|
|
|
5805
|
-
function $
|
|
5806
|
-
let {
|
|
5807
|
-
|
|
5808
|
-
|
|
5809
|
-
|
|
5810
|
-
|
|
5811
|
-
|
|
5812
|
-
|
|
5813
|
-
|
|
5814
|
-
|
|
5815
|
-
|
|
5816
|
-
|
|
5817
|
-
let { pressProps: pressProps, isPressed: isPressed } = ($f6c31cce2adf654f$export$45712eceda6fad21)({
|
|
5818
|
-
isDisabled: isDisabled
|
|
5798
|
+
function $e93e671b31057976$export$b8473d3665f3a75a(props, state, ref) {
|
|
5799
|
+
let { validationBehavior: validationBehavior, focus: focus } = props;
|
|
5800
|
+
// This is a useLayoutEffect so that it runs before the useEffect in useFormValidationState, which commits the validation change.
|
|
5801
|
+
($f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{
|
|
5802
|
+
if (validationBehavior === 'native' && (ref === null || ref === void 0 ? void 0 : ref.current)) {
|
|
5803
|
+
let errorMessage = state.realtimeValidation.isInvalid ? state.realtimeValidation.validationErrors.join(' ') || 'Invalid value.' : '';
|
|
5804
|
+
ref.current.setCustomValidity(errorMessage);
|
|
5805
|
+
// Prevent default tooltip for validation message.
|
|
5806
|
+
// https://bugzilla.mozilla.org/show_bug.cgi?id=605277
|
|
5807
|
+
if (!ref.current.hasAttribute('title')) ref.current.title = '';
|
|
5808
|
+
if (!state.realtimeValidation.isInvalid) state.updateValidation($e93e671b31057976$var$getNativeValidity(ref.current));
|
|
5809
|
+
}
|
|
5819
5810
|
});
|
|
5820
|
-
|
|
5821
|
-
|
|
5822
|
-
|
|
5823
|
-
|
|
5824
|
-
|
|
5811
|
+
let onReset = ($8ae05eaa5c114e9c$export$7f54fc3180508a52)(()=>{
|
|
5812
|
+
state.resetValidation();
|
|
5813
|
+
});
|
|
5814
|
+
let onInvalid = ($8ae05eaa5c114e9c$export$7f54fc3180508a52)((e)=>{
|
|
5815
|
+
var _ref_current;
|
|
5816
|
+
// Only commit validation if we are not already displaying one.
|
|
5817
|
+
// This avoids clearing server errors that the user didn't actually fix.
|
|
5818
|
+
if (!state.displayValidation.isInvalid) state.commitValidation();
|
|
5819
|
+
// Auto focus the first invalid input in a form, unless the error already had its default prevented.
|
|
5820
|
+
let form = ref === null || ref === void 0 ? void 0 : (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.form;
|
|
5821
|
+
if (!e.defaultPrevented && ref && form && $e93e671b31057976$var$getFirstInvalidInput(form) === ref.current) {
|
|
5822
|
+
var _ref_current1;
|
|
5823
|
+
if (focus) focus();
|
|
5824
|
+
else (_ref_current1 = ref.current) === null || _ref_current1 === void 0 ? void 0 : _ref_current1.focus();
|
|
5825
|
+
// Always show focus ring.
|
|
5826
|
+
($507fabe10e71c6fb$export$8397ddfc504fdb9a)('keyboard');
|
|
5825
5827
|
}
|
|
5828
|
+
// Prevent default browser error UI from appearing.
|
|
5829
|
+
e.preventDefault();
|
|
5826
5830
|
});
|
|
5827
|
-
let
|
|
5828
|
-
|
|
5829
|
-
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props, {
|
|
5830
|
-
labelable: true
|
|
5831
|
+
let onChange = ($8ae05eaa5c114e9c$export$7f54fc3180508a52)(()=>{
|
|
5832
|
+
state.commitValidation();
|
|
5831
5833
|
});
|
|
5832
|
-
($
|
|
5834
|
+
($dbSRa$react.useEffect)(()=>{
|
|
5835
|
+
let input = ref === null || ref === void 0 ? void 0 : ref.current;
|
|
5836
|
+
if (!input) return;
|
|
5837
|
+
let form = input.form;
|
|
5838
|
+
input.addEventListener('invalid', onInvalid);
|
|
5839
|
+
input.addEventListener('change', onChange);
|
|
5840
|
+
form === null || form === void 0 ? void 0 : form.addEventListener('reset', onReset);
|
|
5841
|
+
return ()=>{
|
|
5842
|
+
input.removeEventListener('invalid', onInvalid);
|
|
5843
|
+
input.removeEventListener('change', onChange);
|
|
5844
|
+
form === null || form === void 0 ? void 0 : form.removeEventListener('reset', onReset);
|
|
5845
|
+
};
|
|
5846
|
+
}, [
|
|
5847
|
+
ref,
|
|
5848
|
+
onInvalid,
|
|
5849
|
+
onChange,
|
|
5850
|
+
onReset,
|
|
5851
|
+
validationBehavior
|
|
5852
|
+
]);
|
|
5853
|
+
}
|
|
5854
|
+
function $e93e671b31057976$var$getValidity(input) {
|
|
5855
|
+
// The native ValidityState object is live, meaning each property is a getter that returns the current state.
|
|
5856
|
+
// We need to create a snapshot of the validity state at the time this function is called to avoid unpredictable React renders.
|
|
5857
|
+
let validity = input.validity;
|
|
5833
5858
|
return {
|
|
5834
|
-
|
|
5835
|
-
|
|
5836
|
-
|
|
5859
|
+
badInput: validity.badInput,
|
|
5860
|
+
customError: validity.customError,
|
|
5861
|
+
patternMismatch: validity.patternMismatch,
|
|
5862
|
+
rangeOverflow: validity.rangeOverflow,
|
|
5863
|
+
rangeUnderflow: validity.rangeUnderflow,
|
|
5864
|
+
stepMismatch: validity.stepMismatch,
|
|
5865
|
+
tooLong: validity.tooLong,
|
|
5866
|
+
tooShort: validity.tooShort,
|
|
5867
|
+
typeMismatch: validity.typeMismatch,
|
|
5868
|
+
valueMissing: validity.valueMissing,
|
|
5869
|
+
valid: validity.valid
|
|
5870
|
+
};
|
|
5871
|
+
}
|
|
5872
|
+
function $e93e671b31057976$var$getNativeValidity(input) {
|
|
5873
|
+
return {
|
|
5874
|
+
isInvalid: !input.validity.valid,
|
|
5875
|
+
validationDetails: $e93e671b31057976$var$getValidity(input),
|
|
5876
|
+
validationErrors: input.validationMessage ? [
|
|
5877
|
+
input.validationMessage
|
|
5878
|
+
] : []
|
|
5879
|
+
};
|
|
5880
|
+
}
|
|
5881
|
+
function $e93e671b31057976$var$getFirstInvalidInput(form) {
|
|
5882
|
+
for(let i = 0; i < form.elements.length; i++){
|
|
5883
|
+
let element = form.elements[i];
|
|
5884
|
+
if (!element.validity.valid) return element;
|
|
5885
|
+
}
|
|
5886
|
+
return null;
|
|
5887
|
+
}
|
|
5888
|
+
|
|
5889
|
+
/*
|
|
5890
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
5891
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
5892
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5893
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
5894
|
+
*
|
|
5895
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
5896
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
5897
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
5898
|
+
* governing permissions and limitations under the License.
|
|
5899
|
+
*/
|
|
5900
|
+
|
|
5901
|
+
|
|
5902
|
+
function $d2c8e2b0480f3f34$export$cbe85ee05b554577(props, state, ref) {
|
|
5903
|
+
let { isDisabled: isDisabled = false, isReadOnly: isReadOnly = false, value: value, name: name, children: children, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby, validationState: validationState = 'valid', isInvalid: isInvalid } = props;
|
|
5904
|
+
let onChange = (e)=>{
|
|
5905
|
+
// since we spread props on label, onChange will end up there as well as in here.
|
|
5906
|
+
// so we have to stop propagation at the lowest level that we care about
|
|
5907
|
+
e.stopPropagation();
|
|
5908
|
+
state.setSelected(e.target.checked);
|
|
5909
|
+
};
|
|
5910
|
+
let hasChildren = children != null;
|
|
5911
|
+
let hasAriaLabel = ariaLabel != null || ariaLabelledby != null;
|
|
5912
|
+
if (!hasChildren && !hasAriaLabel) console.warn('If you do not provide children, you must specify an aria-label for accessibility');
|
|
5913
|
+
// This handles focusing the input on pointer down, which Safari does not do by default.
|
|
5914
|
+
let { pressProps: pressProps, isPressed: isPressed } = ($f6c31cce2adf654f$export$45712eceda6fad21)({
|
|
5915
|
+
isDisabled: isDisabled
|
|
5916
|
+
});
|
|
5917
|
+
// iOS does not toggle checkboxes if you drag off and back onto the label, so handle it ourselves.
|
|
5918
|
+
let { pressProps: labelProps, isPressed: isLabelPressed } = ($f6c31cce2adf654f$export$45712eceda6fad21)({
|
|
5919
|
+
isDisabled: isDisabled || isReadOnly,
|
|
5920
|
+
onPress () {
|
|
5921
|
+
state.toggle();
|
|
5922
|
+
}
|
|
5923
|
+
});
|
|
5924
|
+
let { focusableProps: focusableProps } = ($e6afbd83fe6ebbd2$export$4c014de7c8940b4c)(props, ref);
|
|
5925
|
+
let interactions = ($3ef42575df84b30b$export$9d1611c77c2fe928)(pressProps, focusableProps);
|
|
5926
|
+
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props, {
|
|
5927
|
+
labelable: true
|
|
5928
|
+
});
|
|
5929
|
+
($99facab73266f662$export$5add1d006293d136)(ref, state.isSelected, state.setSelected);
|
|
5930
|
+
return {
|
|
5931
|
+
labelProps: ($3ef42575df84b30b$export$9d1611c77c2fe928)(labelProps, {
|
|
5932
|
+
onClick: (e)=>e.preventDefault()
|
|
5933
|
+
}),
|
|
5837
5934
|
inputProps: ($3ef42575df84b30b$export$9d1611c77c2fe928)(domProps, {
|
|
5838
5935
|
'aria-invalid': isInvalid || validationState === 'invalid' || undefined,
|
|
5839
5936
|
'aria-errormessage': props['aria-errormessage'],
|
|
@@ -5870,6 +5967,8 @@ function $d2c8e2b0480f3f34$export$cbe85ee05b554577(props, state, ref) {
|
|
|
5870
5967
|
|
|
5871
5968
|
|
|
5872
5969
|
|
|
5970
|
+
|
|
5971
|
+
|
|
5873
5972
|
function $406796ff087fe49b$export$e375f10ce42261c5(props, state, inputRef) {
|
|
5874
5973
|
// Create validation state here because it doesn't make sense to add to general useToggleState.
|
|
5875
5974
|
let validationState = ($e5be200c675c3b3a$export$fc1a364ae1f3ff10)({
|
|
@@ -5888,8 +5987,18 @@ function $406796ff087fe49b$export$e375f10ce42261c5(props, state, inputRef) {
|
|
|
5888
5987
|
// https://css-tricks.com/indeterminate-checkboxes/
|
|
5889
5988
|
if (inputRef.current) inputRef.current.indeterminate = !!isIndeterminate;
|
|
5890
5989
|
});
|
|
5990
|
+
// Reset validation state on label press for checkbox with a hidden input.
|
|
5991
|
+
let { pressProps: pressProps } = ($f6c31cce2adf654f$export$45712eceda6fad21)({
|
|
5992
|
+
isDisabled: isDisabled || isReadOnly,
|
|
5993
|
+
onPress () {
|
|
5994
|
+
// @ts-expect-error
|
|
5995
|
+
let { [($e5be200c675c3b3a$export$a763b9476acd3eb)]: groupValidationState } = props;
|
|
5996
|
+
let { commitValidation: commitValidation } = groupValidationState ? groupValidationState : validationState;
|
|
5997
|
+
commitValidation();
|
|
5998
|
+
}
|
|
5999
|
+
});
|
|
5891
6000
|
return {
|
|
5892
|
-
labelProps: labelProps,
|
|
6001
|
+
labelProps: ($3ef42575df84b30b$export$9d1611c77c2fe928)(labelProps, pressProps),
|
|
5893
6002
|
inputProps: {
|
|
5894
6003
|
...inputProps,
|
|
5895
6004
|
checked: isSelected,
|
|
@@ -6160,6 +6269,168 @@ function $fba3e38d5ca8983f$export$353b32fc6898d37d(props, state, inputRef) {
|
|
|
6160
6269
|
};
|
|
6161
6270
|
}
|
|
6162
6271
|
|
|
6272
|
+
/*
|
|
6273
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
6274
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
6275
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
6276
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6277
|
+
*
|
|
6278
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
6279
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
6280
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
6281
|
+
* governing permissions and limitations under the License.
|
|
6282
|
+
*/
|
|
6283
|
+
|
|
6284
|
+
|
|
6285
|
+
const $5c3e21d68f1c4674$var$styles = {
|
|
6286
|
+
border: 0,
|
|
6287
|
+
clip: 'rect(0 0 0 0)',
|
|
6288
|
+
clipPath: 'inset(50%)',
|
|
6289
|
+
height: '1px',
|
|
6290
|
+
margin: '-1px',
|
|
6291
|
+
overflow: 'hidden',
|
|
6292
|
+
padding: 0,
|
|
6293
|
+
position: 'absolute',
|
|
6294
|
+
width: '1px',
|
|
6295
|
+
whiteSpace: 'nowrap'
|
|
6296
|
+
};
|
|
6297
|
+
function $5c3e21d68f1c4674$export$a966af930f325cab(props = {}) {
|
|
6298
|
+
let { style: style, isFocusable: isFocusable } = props;
|
|
6299
|
+
let [isFocused, setFocused] = ($dbSRa$react.useState)(false);
|
|
6300
|
+
let { focusWithinProps: focusWithinProps } = ($9ab94262bd0047c7$export$420e68273165f4ec)({
|
|
6301
|
+
isDisabled: !isFocusable,
|
|
6302
|
+
onFocusWithinChange: (val)=>setFocused(val)
|
|
6303
|
+
});
|
|
6304
|
+
// If focused, don't hide the element.
|
|
6305
|
+
let combinedStyles = ($dbSRa$react.useMemo)(()=>{
|
|
6306
|
+
if (isFocused) return style;
|
|
6307
|
+
else if (style) return {
|
|
6308
|
+
...$5c3e21d68f1c4674$var$styles,
|
|
6309
|
+
...style
|
|
6310
|
+
};
|
|
6311
|
+
else return $5c3e21d68f1c4674$var$styles;
|
|
6312
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6313
|
+
}, [
|
|
6314
|
+
isFocused
|
|
6315
|
+
]);
|
|
6316
|
+
return {
|
|
6317
|
+
visuallyHiddenProps: {
|
|
6318
|
+
...focusWithinProps,
|
|
6319
|
+
style: combinedStyles
|
|
6320
|
+
}
|
|
6321
|
+
};
|
|
6322
|
+
}
|
|
6323
|
+
function $5c3e21d68f1c4674$export$439d29a4e110a164(props) {
|
|
6324
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
6325
|
+
let { children: children, elementType: Element = 'div', isFocusable: isFocusable, style: style, ...otherProps } = props;
|
|
6326
|
+
let { visuallyHiddenProps: visuallyHiddenProps } = $5c3e21d68f1c4674$export$a966af930f325cab(props);
|
|
6327
|
+
return /*#__PURE__*/ ($dbSRa$react).createElement(Element, ($3ef42575df84b30b$export$9d1611c77c2fe928)(otherProps, visuallyHiddenProps), children);
|
|
6328
|
+
}
|
|
6329
|
+
|
|
6330
|
+
/*
|
|
6331
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
6332
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
6333
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
6334
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6335
|
+
*
|
|
6336
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
6337
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
6338
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
6339
|
+
* governing permissions and limitations under the License.
|
|
6340
|
+
*/
|
|
6341
|
+
|
|
6342
|
+
|
|
6343
|
+
|
|
6344
|
+
|
|
6345
|
+
|
|
6346
|
+
|
|
6347
|
+
function $2d73ec29415bd339$export$712718f7aec83d5(props, ref) {
|
|
6348
|
+
let { inputElementType: inputElementType = 'input', isDisabled: isDisabled = false, isRequired: isRequired = false, isReadOnly: isReadOnly = false, type: type = 'text', validationBehavior: validationBehavior = 'aria' } = props;
|
|
6349
|
+
let [value, setValue] = ($458b0a5536c1a7cf$export$40bfa8c7b0832715)(props.value, props.defaultValue || '', props.onChange);
|
|
6350
|
+
let { focusableProps: focusableProps } = ($e6afbd83fe6ebbd2$export$4c014de7c8940b4c)(props, ref);
|
|
6351
|
+
let validationState = ($e5be200c675c3b3a$export$fc1a364ae1f3ff10)({
|
|
6352
|
+
...props,
|
|
6353
|
+
value: value
|
|
6354
|
+
});
|
|
6355
|
+
let { isInvalid: isInvalid, validationErrors: validationErrors, validationDetails: validationDetails } = validationState.displayValidation;
|
|
6356
|
+
let { labelProps: labelProps, fieldProps: fieldProps, descriptionProps: descriptionProps, errorMessageProps: errorMessageProps } = ($2baaea4c71418dea$export$294aa081a6c6f55d)({
|
|
6357
|
+
...props,
|
|
6358
|
+
isInvalid: isInvalid,
|
|
6359
|
+
errorMessage: props.errorMessage || validationErrors
|
|
6360
|
+
});
|
|
6361
|
+
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props, {
|
|
6362
|
+
labelable: true
|
|
6363
|
+
});
|
|
6364
|
+
const inputOnlyProps = {
|
|
6365
|
+
type: type,
|
|
6366
|
+
pattern: props.pattern
|
|
6367
|
+
};
|
|
6368
|
+
($99facab73266f662$export$5add1d006293d136)(ref, value, setValue);
|
|
6369
|
+
($e93e671b31057976$export$b8473d3665f3a75a)(props, validationState, ref);
|
|
6370
|
+
($dbSRa$react.useEffect)(()=>{
|
|
6371
|
+
// This works around a React/Chrome bug that prevents textarea elements from validating when controlled.
|
|
6372
|
+
// We prevent React from updating defaultValue (i.e. children) of textarea when `value` changes,
|
|
6373
|
+
// which causes Chrome to skip validation. Only updating `value` is ok in our case since our
|
|
6374
|
+
// textareas are always controlled. React is planning on removing this synchronization in a
|
|
6375
|
+
// future major version.
|
|
6376
|
+
// https://github.com/facebook/react/issues/19474
|
|
6377
|
+
// https://github.com/facebook/react/issues/11896
|
|
6378
|
+
if (ref.current instanceof ($431fbd86ca7dc216$export$f21a1ffae260145a)(ref.current).HTMLTextAreaElement) {
|
|
6379
|
+
let input = ref.current;
|
|
6380
|
+
Object.defineProperty(input, 'defaultValue', {
|
|
6381
|
+
get: ()=>input.value,
|
|
6382
|
+
set: ()=>{},
|
|
6383
|
+
configurable: true
|
|
6384
|
+
});
|
|
6385
|
+
}
|
|
6386
|
+
}, [
|
|
6387
|
+
ref
|
|
6388
|
+
]);
|
|
6389
|
+
return {
|
|
6390
|
+
labelProps: labelProps,
|
|
6391
|
+
inputProps: ($3ef42575df84b30b$export$9d1611c77c2fe928)(domProps, inputElementType === 'input' ? inputOnlyProps : undefined, {
|
|
6392
|
+
disabled: isDisabled,
|
|
6393
|
+
readOnly: isReadOnly,
|
|
6394
|
+
required: isRequired && validationBehavior === 'native',
|
|
6395
|
+
'aria-required': isRequired && validationBehavior === 'aria' || undefined,
|
|
6396
|
+
'aria-invalid': isInvalid || undefined,
|
|
6397
|
+
'aria-errormessage': props['aria-errormessage'],
|
|
6398
|
+
'aria-activedescendant': props['aria-activedescendant'],
|
|
6399
|
+
'aria-autocomplete': props['aria-autocomplete'],
|
|
6400
|
+
'aria-haspopup': props['aria-haspopup'],
|
|
6401
|
+
value: value,
|
|
6402
|
+
onChange: (e)=>setValue(e.target.value),
|
|
6403
|
+
autoComplete: props.autoComplete,
|
|
6404
|
+
autoCapitalize: props.autoCapitalize,
|
|
6405
|
+
maxLength: props.maxLength,
|
|
6406
|
+
minLength: props.minLength,
|
|
6407
|
+
name: props.name,
|
|
6408
|
+
placeholder: props.placeholder,
|
|
6409
|
+
inputMode: props.inputMode,
|
|
6410
|
+
// Clipboard events
|
|
6411
|
+
onCopy: props.onCopy,
|
|
6412
|
+
onCut: props.onCut,
|
|
6413
|
+
onPaste: props.onPaste,
|
|
6414
|
+
// Composition events
|
|
6415
|
+
onCompositionEnd: props.onCompositionEnd,
|
|
6416
|
+
onCompositionStart: props.onCompositionStart,
|
|
6417
|
+
onCompositionUpdate: props.onCompositionUpdate,
|
|
6418
|
+
// Selection events
|
|
6419
|
+
onSelect: props.onSelect,
|
|
6420
|
+
// Input events
|
|
6421
|
+
onBeforeInput: props.onBeforeInput,
|
|
6422
|
+
onInput: props.onInput,
|
|
6423
|
+
...focusableProps,
|
|
6424
|
+
...fieldProps
|
|
6425
|
+
}),
|
|
6426
|
+
descriptionProps: descriptionProps,
|
|
6427
|
+
errorMessageProps: errorMessageProps,
|
|
6428
|
+
isInvalid: isInvalid,
|
|
6429
|
+
validationErrors: validationErrors,
|
|
6430
|
+
validationDetails: validationDetails
|
|
6431
|
+
};
|
|
6432
|
+
}
|
|
6433
|
+
|
|
6163
6434
|
/*
|
|
6164
6435
|
* Copyright 2020 Adobe. All rights reserved.
|
|
6165
6436
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -6196,12 +6467,12 @@ const $edcf132a9284368a$var$TOTAL_SIZE = {
|
|
|
6196
6467
|
height: 'totalHeight'
|
|
6197
6468
|
};
|
|
6198
6469
|
const $edcf132a9284368a$var$PARSED_PLACEMENT_CACHE = {};
|
|
6199
|
-
|
|
6200
|
-
let $edcf132a9284368a$var$visualViewport = typeof document !== 'undefined' && window.visualViewport;
|
|
6470
|
+
let $edcf132a9284368a$var$visualViewport = typeof document !== 'undefined' ? window.visualViewport : null;
|
|
6201
6471
|
function $edcf132a9284368a$var$getContainerDimensions(containerNode) {
|
|
6202
6472
|
let width = 0, height = 0, totalWidth = 0, totalHeight = 0, top = 0, left = 0;
|
|
6203
6473
|
let scroll = {};
|
|
6204
|
-
|
|
6474
|
+
var _visualViewport_scale;
|
|
6475
|
+
let isPinchZoomedIn = ((_visualViewport_scale = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.scale) !== null && _visualViewport_scale !== void 0 ? _visualViewport_scale : 1) > 1;
|
|
6205
6476
|
if (containerNode.tagName === 'BODY') {
|
|
6206
6477
|
let documentElement = document.documentElement;
|
|
6207
6478
|
totalWidth = documentElement.clientWidth;
|
|
@@ -6233,8 +6504,10 @@ function $edcf132a9284368a$var$getContainerDimensions(containerNode) {
|
|
|
6233
6504
|
// before pinch zoom happens
|
|
6234
6505
|
scroll.top = 0;
|
|
6235
6506
|
scroll.left = 0;
|
|
6236
|
-
|
|
6237
|
-
|
|
6507
|
+
var _visualViewport_pageTop;
|
|
6508
|
+
top = (_visualViewport_pageTop = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.pageTop) !== null && _visualViewport_pageTop !== void 0 ? _visualViewport_pageTop : 0;
|
|
6509
|
+
var _visualViewport_pageLeft;
|
|
6510
|
+
left = (_visualViewport_pageLeft = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.pageLeft) !== null && _visualViewport_pageLeft !== void 0 ? _visualViewport_pageLeft : 0;
|
|
6238
6511
|
}
|
|
6239
6512
|
return {
|
|
6240
6513
|
width: width,
|
|
@@ -6263,7 +6536,8 @@ boundaryDimensions, // The dimensions of the containing block element that the p
|
|
|
6263
6536
|
// is portaled somewhere other than the body and has an ancestor with
|
|
6264
6537
|
// position: relative/absolute, it will be different.
|
|
6265
6538
|
containerDimensions, padding, containerOffsetWithBoundary) {
|
|
6266
|
-
|
|
6539
|
+
var _containerDimensions_scroll_axis;
|
|
6540
|
+
let containerScroll = (_containerDimensions_scroll_axis = containerDimensions.scroll[axis]) !== null && _containerDimensions_scroll_axis !== void 0 ? _containerDimensions_scroll_axis : 0;
|
|
6267
6541
|
// The height/width of the boundary. Matches the axis along which we are adjusting the overlay position
|
|
6268
6542
|
let boundarySize = boundaryDimensions[$edcf132a9284368a$var$AXIS_SIZE[axis]];
|
|
6269
6543
|
// Calculate the edges of the boundary (accomodating for the boundary padding) and the edges of the overlay.
|
|
@@ -6308,14 +6582,16 @@ function $edcf132a9284368a$var$parsePlacement(input) {
|
|
|
6308
6582
|
function $edcf132a9284368a$var$computePosition(childOffset, boundaryDimensions, overlaySize, placementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned, arrowSize, arrowBoundaryOffset) {
|
|
6309
6583
|
let { placement: placement, crossPlacement: crossPlacement, axis: axis, crossAxis: crossAxis, size: size, crossSize: crossSize } = placementInfo;
|
|
6310
6584
|
let position = {};
|
|
6585
|
+
var _childOffset_crossAxis;
|
|
6311
6586
|
// button position
|
|
6312
|
-
position[crossAxis] = childOffset[crossAxis];
|
|
6587
|
+
position[crossAxis] = (_childOffset_crossAxis = childOffset[crossAxis]) !== null && _childOffset_crossAxis !== void 0 ? _childOffset_crossAxis : 0;
|
|
6588
|
+
var _childOffset_crossSize, _overlaySize_crossSize, _childOffset_crossSize1, _overlaySize_crossSize1;
|
|
6313
6589
|
if (crossPlacement === 'center') // + (button size / 2) - (overlay size / 2)
|
|
6314
6590
|
// at this point the overlay center should match the button center
|
|
6315
|
-
position[crossAxis] += (childOffset[crossSize] - overlaySize[crossSize]) / 2;
|
|
6591
|
+
position[crossAxis] += (((_childOffset_crossSize = childOffset[crossSize]) !== null && _childOffset_crossSize !== void 0 ? _childOffset_crossSize : 0) - ((_overlaySize_crossSize = overlaySize[crossSize]) !== null && _overlaySize_crossSize !== void 0 ? _overlaySize_crossSize : 0)) / 2;
|
|
6316
6592
|
else if (crossPlacement !== crossAxis) // + (button size) - (overlay size)
|
|
6317
6593
|
// at this point the overlay bottom should match the button bottom
|
|
6318
|
-
position[crossAxis] += childOffset[crossSize] - overlaySize[crossSize];
|
|
6594
|
+
position[crossAxis] += ((_childOffset_crossSize1 = childOffset[crossSize]) !== null && _childOffset_crossSize1 !== void 0 ? _childOffset_crossSize1 : 0) - ((_overlaySize_crossSize1 = overlaySize[crossSize]) !== null && _overlaySize_crossSize1 !== void 0 ? _overlaySize_crossSize1 : 0);
|
|
6319
6595
|
/* else {
|
|
6320
6596
|
the overlay top should match the button top
|
|
6321
6597
|
} */
|
|
@@ -6338,23 +6614,26 @@ function $edcf132a9284368a$var$computePosition(childOffset, boundaryDimensions,
|
|
|
6338
6614
|
}
|
|
6339
6615
|
function $edcf132a9284368a$var$getMaxHeight(position, boundaryDimensions, containerOffsetWithBoundary, isContainerPositioned, margins, padding, overlayHeight, heightGrowthDirection) {
|
|
6340
6616
|
const containerHeight = isContainerPositioned ? containerOffsetWithBoundary.height : boundaryDimensions[$edcf132a9284368a$var$TOTAL_SIZE.height];
|
|
6617
|
+
var _position_bottom;
|
|
6341
6618
|
// For cases where position is set via "bottom" instead of "top", we need to calculate the true overlay top with respect to the boundary. Reverse calculate this with the same method
|
|
6342
6619
|
// used in computePosition.
|
|
6343
|
-
let overlayTop = position.top != null ? containerOffsetWithBoundary.top + position.top : containerOffsetWithBoundary.top + (containerHeight - position.bottom - overlayHeight);
|
|
6620
|
+
let overlayTop = position.top != null ? containerOffsetWithBoundary.top + position.top : containerOffsetWithBoundary.top + (containerHeight - ((_position_bottom = position.bottom) !== null && _position_bottom !== void 0 ? _position_bottom : 0) - overlayHeight);
|
|
6621
|
+
var _boundaryDimensions_scroll_top, _margins_top, _margins_bottom, _boundaryDimensions_scroll_top1, _margins_top1, _margins_bottom1;
|
|
6344
6622
|
let maxHeight = heightGrowthDirection !== 'top' ? // We want the distance between the top of the overlay to the bottom of the boundary
|
|
6345
|
-
Math.max(0, boundaryDimensions.height + boundaryDimensions.top + boundaryDimensions.scroll.top // this is the
|
|
6346
|
-
-
|
|
6347
|
-
- (margins.top + margins.bottom + padding // save additional space for margin and padding
|
|
6623
|
+
Math.max(0, boundaryDimensions.height + boundaryDimensions.top + ((_boundaryDimensions_scroll_top = boundaryDimensions.scroll.top) !== null && _boundaryDimensions_scroll_top !== void 0 ? _boundaryDimensions_scroll_top : 0) - overlayTop // this is the top of the overlay
|
|
6624
|
+
- (((_margins_top = margins.top) !== null && _margins_top !== void 0 ? _margins_top : 0) + ((_margins_bottom = margins.bottom) !== null && _margins_bottom !== void 0 ? _margins_bottom : 0) + padding // save additional space for margin and padding
|
|
6348
6625
|
)) : Math.max(0, overlayTop + overlayHeight // this is the bottom of the overlay
|
|
6349
|
-
- (boundaryDimensions.top + boundaryDimensions.scroll.top // this is the top of the boundary
|
|
6350
|
-
) - (margins.top + margins.bottom + padding // save additional space for margin and padding
|
|
6626
|
+
- (boundaryDimensions.top + ((_boundaryDimensions_scroll_top1 = boundaryDimensions.scroll.top) !== null && _boundaryDimensions_scroll_top1 !== void 0 ? _boundaryDimensions_scroll_top1 : 0) // this is the top of the boundary
|
|
6627
|
+
) - (((_margins_top1 = margins.top) !== null && _margins_top1 !== void 0 ? _margins_top1 : 0) + ((_margins_bottom1 = margins.bottom) !== null && _margins_bottom1 !== void 0 ? _margins_bottom1 : 0) + padding // save additional space for margin and padding
|
|
6351
6628
|
));
|
|
6352
6629
|
return Math.min(boundaryDimensions.height - padding * 2, maxHeight);
|
|
6353
6630
|
}
|
|
6354
6631
|
function $edcf132a9284368a$var$getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding, placementInfo) {
|
|
6355
6632
|
let { placement: placement, axis: axis, size: size } = placementInfo;
|
|
6356
|
-
|
|
6357
|
-
return Math.max(0,
|
|
6633
|
+
var _boundaryDimensions_scroll_axis, _margins_axis;
|
|
6634
|
+
if (placement === axis) return Math.max(0, childOffset[axis] - boundaryDimensions[axis] - ((_boundaryDimensions_scroll_axis = boundaryDimensions.scroll[axis]) !== null && _boundaryDimensions_scroll_axis !== void 0 ? _boundaryDimensions_scroll_axis : 0) + containerOffsetWithBoundary[axis] - ((_margins_axis = margins[axis]) !== null && _margins_axis !== void 0 ? _margins_axis : 0) - margins[$edcf132a9284368a$var$FLIPPED_DIRECTION[axis]] - padding);
|
|
6635
|
+
var _margins_axis1;
|
|
6636
|
+
return Math.max(0, boundaryDimensions[size] + boundaryDimensions[axis] + boundaryDimensions.scroll[axis] - containerOffsetWithBoundary[axis] - childOffset[axis] - childOffset[size] - ((_margins_axis1 = margins[axis]) !== null && _margins_axis1 !== void 0 ? _margins_axis1 : 0) - margins[$edcf132a9284368a$var$FLIPPED_DIRECTION[axis]] - padding);
|
|
6358
6637
|
}
|
|
6359
6638
|
function $edcf132a9284368a$export$6839422d1f33cee9(placementInput, childOffset, overlaySize, scrollSize, margins, padding, flip, boundaryDimensions, containerDimensions, containerOffsetWithBoundary, offset, crossOffset, isContainerPositioned, userSetMaxHeight, arrowSize, arrowBoundaryOffset) {
|
|
6360
6639
|
let placementInfo = $edcf132a9284368a$var$parsePlacement(placementInput);
|
|
@@ -6400,8 +6679,9 @@ function $edcf132a9284368a$export$6839422d1f33cee9(placementInput, childOffset,
|
|
|
6400
6679
|
let preferredArrowPosition = childOffset[crossAxis] + .5 * childOffset[crossSize] - position[crossAxis] - margins[$edcf132a9284368a$var$AXIS[crossAxis]];
|
|
6401
6680
|
// Min/Max position limits for the arrow with respect to the overlay
|
|
6402
6681
|
const arrowMinPosition = arrowSize / 2 + arrowBoundaryOffset;
|
|
6682
|
+
var _margins_left, _margins_right, _margins_top, _margins_bottom;
|
|
6403
6683
|
// overlaySize[crossSize] - margins = true size of the overlay
|
|
6404
|
-
const overlayMargin = $edcf132a9284368a$var$AXIS[crossAxis] === 'left' ? margins.left + margins.right : margins.top + margins.bottom;
|
|
6684
|
+
const overlayMargin = $edcf132a9284368a$var$AXIS[crossAxis] === 'left' ? ((_margins_left = margins.left) !== null && _margins_left !== void 0 ? _margins_left : 0) + ((_margins_right = margins.right) !== null && _margins_right !== void 0 ? _margins_right : 0) : ((_margins_top = margins.top) !== null && _margins_top !== void 0 ? _margins_top : 0) + ((_margins_bottom = margins.bottom) !== null && _margins_bottom !== void 0 ? _margins_bottom : 0);
|
|
6405
6685
|
const arrowMaxPosition = overlaySize[crossSize] - overlayMargin - arrowSize / 2 - arrowBoundaryOffset;
|
|
6406
6686
|
// Min/Max position limits for the arrow with respect to the trigger/overlay anchor element
|
|
6407
6687
|
// Same margin accomodation done here as well as for the preferredArrowPosition
|
|
@@ -6432,8 +6712,10 @@ function $edcf132a9284368a$export$b3ceb0cbf1056d98(opts) {
|
|
|
6432
6712
|
}
|
|
6433
6713
|
let overlaySize = $edcf132a9284368a$var$getOffset(overlayNode);
|
|
6434
6714
|
let margins = $edcf132a9284368a$var$getMargins(overlayNode);
|
|
6435
|
-
|
|
6436
|
-
overlaySize.
|
|
6715
|
+
var _margins_left, _margins_right;
|
|
6716
|
+
overlaySize.width += ((_margins_left = margins.left) !== null && _margins_left !== void 0 ? _margins_left : 0) + ((_margins_right = margins.right) !== null && _margins_right !== void 0 ? _margins_right : 0);
|
|
6717
|
+
var _margins_top, _margins_bottom;
|
|
6718
|
+
overlaySize.height += ((_margins_top = margins.top) !== null && _margins_top !== void 0 ? _margins_top : 0) + ((_margins_bottom = margins.bottom) !== null && _margins_bottom !== void 0 ? _margins_bottom : 0);
|
|
6437
6719
|
let scrollSize = $edcf132a9284368a$var$getScroll(scrollNode);
|
|
6438
6720
|
let boundaryDimensions = $edcf132a9284368a$var$getContainerDimensions(boundaryElement);
|
|
6439
6721
|
let containerDimensions = $edcf132a9284368a$var$getContainerDimensions(container);
|
|
@@ -6506,9 +6788,7 @@ function $edcf132a9284368a$var$getContainingBlock(node) {
|
|
|
6506
6788
|
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
6507
6789
|
function $edcf132a9284368a$var$isContainingBlock(node) {
|
|
6508
6790
|
let style = window.getComputedStyle(node);
|
|
6509
|
-
return style.transform !== 'none' || /transform|perspective/.test(style.willChange) || style.filter !== 'none' || style.contain === 'paint' ||
|
|
6510
|
-
'backdropFilter' in style && style.backdropFilter !== 'none' || // @ts-ignore
|
|
6511
|
-
'WebkitBackdropFilter' in style && style.WebkitBackdropFilter !== 'none';
|
|
6791
|
+
return style.transform !== 'none' || /transform|perspective/.test(style.willChange) || style.filter !== 'none' || style.contain === 'paint' || 'backdropFilter' in style && style.backdropFilter !== 'none' || 'WebkitBackdropFilter' in style && style.WebkitBackdropFilter !== 'none';
|
|
6512
6792
|
}
|
|
6513
6793
|
|
|
6514
6794
|
/*
|
|
@@ -6565,18 +6845,11 @@ function $dd149f63282afbbf$export$18fc8428861184da(opts) {
|
|
|
6565
6845
|
|
|
6566
6846
|
|
|
6567
6847
|
|
|
6568
|
-
|
|
6569
|
-
let $2a41e45df1593e64$var$visualViewport = typeof document !== 'undefined' && window.visualViewport;
|
|
6848
|
+
let $2a41e45df1593e64$var$visualViewport = typeof document !== 'undefined' ? window.visualViewport : null;
|
|
6570
6849
|
function $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {
|
|
6571
6850
|
let { direction: direction } = ($18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();
|
|
6572
6851
|
let { arrowSize: arrowSize = 0, targetRef: targetRef, overlayRef: overlayRef, scrollRef: scrollRef = overlayRef, placement: placement = 'bottom', containerPadding: containerPadding = 12, shouldFlip: shouldFlip = true, boundaryElement: boundaryElement = typeof document !== 'undefined' ? document.body : null, offset: offset = 0, crossOffset: crossOffset = 0, shouldUpdatePosition: shouldUpdatePosition = true, isOpen: isOpen = true, onClose: onClose, maxHeight: maxHeight, arrowBoundaryOffset: arrowBoundaryOffset = 0 } = props;
|
|
6573
|
-
let [position, setPosition] = ($dbSRa$react.useState)(
|
|
6574
|
-
position: {},
|
|
6575
|
-
arrowOffsetLeft: undefined,
|
|
6576
|
-
arrowOffsetTop: undefined,
|
|
6577
|
-
maxHeight: undefined,
|
|
6578
|
-
placement: undefined
|
|
6579
|
-
});
|
|
6852
|
+
let [position, setPosition] = ($dbSRa$react.useState)(null);
|
|
6580
6853
|
let deps = [
|
|
6581
6854
|
shouldUpdatePosition,
|
|
6582
6855
|
placement,
|
|
@@ -6612,17 +6885,20 @@ function $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {
|
|
|
6612
6885
|
// changes, the focused element appears to stay in the same position.
|
|
6613
6886
|
let anchor = null;
|
|
6614
6887
|
if (scrollRef.current && scrollRef.current.contains(document.activeElement)) {
|
|
6615
|
-
|
|
6888
|
+
var _document_activeElement;
|
|
6889
|
+
let anchorRect = (_document_activeElement = document.activeElement) === null || _document_activeElement === void 0 ? void 0 : _document_activeElement.getBoundingClientRect();
|
|
6616
6890
|
let scrollRect = scrollRef.current.getBoundingClientRect();
|
|
6891
|
+
var _anchorRect_top;
|
|
6617
6892
|
// Anchor from the top if the offset is in the top half of the scrollable element,
|
|
6618
6893
|
// otherwise anchor from the bottom.
|
|
6619
6894
|
anchor = {
|
|
6620
6895
|
type: 'top',
|
|
6621
|
-
offset: anchorRect.top - scrollRect.top
|
|
6896
|
+
offset: ((_anchorRect_top = anchorRect === null || anchorRect === void 0 ? void 0 : anchorRect.top) !== null && _anchorRect_top !== void 0 ? _anchorRect_top : 0) - scrollRect.top
|
|
6622
6897
|
};
|
|
6623
6898
|
if (anchor.offset > scrollRect.height / 2) {
|
|
6624
6899
|
anchor.type = 'bottom';
|
|
6625
|
-
|
|
6900
|
+
var _anchorRect_bottom;
|
|
6901
|
+
anchor.offset = ((_anchorRect_bottom = anchorRect === null || anchorRect === void 0 ? void 0 : anchorRect.bottom) !== null && _anchorRect_bottom !== void 0 ? _anchorRect_bottom : 0) - scrollRect.bottom;
|
|
6626
6902
|
}
|
|
6627
6903
|
}
|
|
6628
6904
|
// Always reset the overlay's previous max height if not defined by the user so that we can compensate for
|
|
@@ -6649,6 +6925,7 @@ function $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {
|
|
|
6649
6925
|
arrowSize: arrowSize,
|
|
6650
6926
|
arrowBoundaryOffset: arrowBoundaryOffset
|
|
6651
6927
|
});
|
|
6928
|
+
if (!position.position) return;
|
|
6652
6929
|
// Modify overlay styles directly so positioning happens immediately without the need of a second render
|
|
6653
6930
|
// This is so we don't have to delay autoFocus scrolling or delay applying preventScroll for popovers
|
|
6654
6931
|
overlay.style.top = '';
|
|
@@ -6656,9 +6933,9 @@ function $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {
|
|
|
6656
6933
|
overlay.style.left = '';
|
|
6657
6934
|
overlay.style.right = '';
|
|
6658
6935
|
Object.keys(position.position).forEach((key)=>overlay.style[key] = position.position[key] + 'px');
|
|
6659
|
-
overlay.style.maxHeight = position.maxHeight != null ? position.maxHeight + 'px' :
|
|
6936
|
+
overlay.style.maxHeight = position.maxHeight != null ? position.maxHeight + 'px' : '';
|
|
6660
6937
|
// Restore scroll position relative to anchor element.
|
|
6661
|
-
if (anchor) {
|
|
6938
|
+
if (anchor && document.activeElement && scrollRef.current) {
|
|
6662
6939
|
let anchorRect = document.activeElement.getBoundingClientRect();
|
|
6663
6940
|
let scrollRect = scrollRef.current.getBoundingClientRect();
|
|
6664
6941
|
let newOffset = anchorRect[anchor.type] - scrollRect[anchor.type];
|
|
@@ -6711,7 +6988,7 @@ function $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {
|
|
|
6711
6988
|
updatePosition
|
|
6712
6989
|
]);
|
|
6713
6990
|
let close = ($dbSRa$react.useCallback)(()=>{
|
|
6714
|
-
if (!isResizing.current) onClose();
|
|
6991
|
+
if (!isResizing.current) onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
6715
6992
|
}, [
|
|
6716
6993
|
onClose,
|
|
6717
6994
|
isResizing
|
|
@@ -6723,23 +7000,23 @@ function $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {
|
|
|
6723
7000
|
isOpen: isOpen,
|
|
6724
7001
|
onClose: onClose && close
|
|
6725
7002
|
});
|
|
6726
|
-
var _position_maxHeight;
|
|
7003
|
+
var _position_maxHeight, _position_placement;
|
|
6727
7004
|
return {
|
|
6728
7005
|
overlayProps: {
|
|
6729
7006
|
style: {
|
|
6730
7007
|
position: 'absolute',
|
|
6731
7008
|
zIndex: 100000,
|
|
6732
|
-
...position.position,
|
|
6733
|
-
maxHeight: (_position_maxHeight = position.maxHeight) !== null && _position_maxHeight !== void 0 ? _position_maxHeight : '100vh'
|
|
7009
|
+
...position === null || position === void 0 ? void 0 : position.position,
|
|
7010
|
+
maxHeight: (_position_maxHeight = position === null || position === void 0 ? void 0 : position.maxHeight) !== null && _position_maxHeight !== void 0 ? _position_maxHeight : '100vh'
|
|
6734
7011
|
}
|
|
6735
7012
|
},
|
|
6736
|
-
placement: position.placement,
|
|
7013
|
+
placement: (_position_placement = position === null || position === void 0 ? void 0 : position.placement) !== null && _position_placement !== void 0 ? _position_placement : null,
|
|
6737
7014
|
arrowProps: {
|
|
6738
7015
|
'aria-hidden': 'true',
|
|
6739
7016
|
role: 'presentation',
|
|
6740
7017
|
style: {
|
|
6741
|
-
left: position.arrowOffsetLeft,
|
|
6742
|
-
top: position.arrowOffsetTop
|
|
7018
|
+
left: position === null || position === void 0 ? void 0 : position.arrowOffsetLeft,
|
|
7019
|
+
top: position === null || position === void 0 ? void 0 : position.arrowOffsetTop
|
|
6743
7020
|
}
|
|
6744
7021
|
},
|
|
6745
7022
|
updatePosition: updatePosition
|
|
@@ -6819,7 +7096,7 @@ function $a11501f3d1d39e6c$export$ea8f71083e90600f(props, ref) {
|
|
|
6819
7096
|
// Handle clicking outside the overlay to close it
|
|
6820
7097
|
($e0b6e0b68ec7f50f$export$872b660ac5a1ff98)({
|
|
6821
7098
|
ref: ref,
|
|
6822
|
-
onInteractOutside: isDismissable && isOpen ? onInteractOutside :
|
|
7099
|
+
onInteractOutside: isDismissable && isOpen ? onInteractOutside : undefined,
|
|
6823
7100
|
onInteractOutsideStart: onInteractOutsideStart
|
|
6824
7101
|
});
|
|
6825
7102
|
let { focusWithinProps: focusWithinProps } = ($9ab94262bd0047c7$export$420e68273165f4ec)({
|
|
@@ -6835,7 +7112,7 @@ function $a11501f3d1d39e6c$export$ea8f71083e90600f(props, ref) {
|
|
|
6835
7112
|
// do not close the outer overlay. At this point, the active scope should
|
|
6836
7113
|
// still be the outer overlay, since blur events run before focus.
|
|
6837
7114
|
if (!e.relatedTarget || ($9bf71ea28793e738$export$1258395f99bf9cbf)(e.relatedTarget)) return;
|
|
6838
|
-
if (!shouldCloseOnInteractOutside || shouldCloseOnInteractOutside(e.relatedTarget)) onClose();
|
|
7115
|
+
if (!shouldCloseOnInteractOutside || shouldCloseOnInteractOutside(e.relatedTarget)) onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
6839
7116
|
}
|
|
6840
7117
|
});
|
|
6841
7118
|
let onPointerDownUnderlay = (e)=>{
|
|
@@ -6886,7 +7163,7 @@ function $628037886ba31236$export$f9d5c8beee7d008d(props, state, ref) {
|
|
|
6886
7163
|
triggerProps: {
|
|
6887
7164
|
'aria-haspopup': ariaHasPopup,
|
|
6888
7165
|
'aria-expanded': isOpen,
|
|
6889
|
-
'aria-controls': isOpen ? overlayId :
|
|
7166
|
+
'aria-controls': isOpen ? overlayId : undefined,
|
|
6890
7167
|
onPress: state.toggle
|
|
6891
7168
|
},
|
|
6892
7169
|
overlayProps: {
|
|
@@ -6906,7 +7183,6 @@ function $628037886ba31236$export$f9d5c8beee7d008d(props, state, ref) {
|
|
|
6906
7183
|
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
6907
7184
|
* governing permissions and limitations under the License.
|
|
6908
7185
|
*/
|
|
6909
|
-
// @ts-ignore
|
|
6910
7186
|
const $49c51c25361d4cd2$var$visualViewport = typeof document !== 'undefined' && window.visualViewport;
|
|
6911
7187
|
// HTML input types that do not cause the software keyboard to appear.
|
|
6912
7188
|
const $49c51c25361d4cd2$var$nonTextInputTypes = new Set([
|
|
@@ -7089,22 +7365,26 @@ function $49c51c25361d4cd2$var$setStyle(element, style, value) {
|
|
|
7089
7365
|
}
|
|
7090
7366
|
// Adds an event listener to an element, and returns a function to remove it.
|
|
7091
7367
|
function $49c51c25361d4cd2$var$addEvent(target, event, handler, options) {
|
|
7368
|
+
// internal function, so it's ok to ignore the difficult to fix type error
|
|
7369
|
+
// @ts-ignore
|
|
7092
7370
|
target.addEventListener(event, handler, options);
|
|
7093
7371
|
return ()=>{
|
|
7372
|
+
// @ts-ignore
|
|
7094
7373
|
target.removeEventListener(event, handler, options);
|
|
7095
7374
|
};
|
|
7096
7375
|
}
|
|
7097
7376
|
function $49c51c25361d4cd2$var$scrollIntoView(target) {
|
|
7098
7377
|
let root = document.scrollingElement || document.documentElement;
|
|
7099
|
-
|
|
7378
|
+
let nextTarget = target;
|
|
7379
|
+
while(nextTarget && nextTarget !== root){
|
|
7100
7380
|
// Find the parent scrollable element and adjust the scroll position if the target is not already in view.
|
|
7101
|
-
let scrollable = ($62d8ded9296f3872$export$cfa2225e87938781)(
|
|
7102
|
-
if (scrollable !== document.documentElement && scrollable !== document.body && scrollable !==
|
|
7381
|
+
let scrollable = ($62d8ded9296f3872$export$cfa2225e87938781)(nextTarget);
|
|
7382
|
+
if (scrollable !== document.documentElement && scrollable !== document.body && scrollable !== nextTarget) {
|
|
7103
7383
|
let scrollableTop = scrollable.getBoundingClientRect().top;
|
|
7104
|
-
let targetTop =
|
|
7105
|
-
if (targetTop > scrollableTop +
|
|
7384
|
+
let targetTop = nextTarget.getBoundingClientRect().top;
|
|
7385
|
+
if (targetTop > scrollableTop + nextTarget.clientHeight) scrollable.scrollTop += targetTop - scrollableTop;
|
|
7106
7386
|
}
|
|
7107
|
-
|
|
7387
|
+
nextTarget = scrollable.parentElement;
|
|
7108
7388
|
}
|
|
7109
7389
|
}
|
|
7110
7390
|
function $49c51c25361d4cd2$var$willOpenKeyboard(target) {
|
|
@@ -7152,7 +7432,7 @@ function $f57aed4a881a3485$export$d9aaed4c3ece1bc0() {
|
|
|
7152
7432
|
let context = ($dbSRa$react.useContext)($f57aed4a881a3485$var$Context);
|
|
7153
7433
|
return {
|
|
7154
7434
|
modalProviderProps: {
|
|
7155
|
-
'aria-hidden': context && context.modalCount > 0 ? true :
|
|
7435
|
+
'aria-hidden': context && context.modalCount > 0 ? true : undefined
|
|
7156
7436
|
}
|
|
7157
7437
|
};
|
|
7158
7438
|
}
|
|
@@ -7424,64 +7704,6 @@ $a2f21f5f14f60553$exports = {
|
|
|
7424
7704
|
"zh-TW": $2b2734393847c884$exports
|
|
7425
7705
|
};
|
|
7426
7706
|
|
|
7427
|
-
/*
|
|
7428
|
-
* Copyright 2020 Adobe. All rights reserved.
|
|
7429
|
-
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
7430
|
-
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
7431
|
-
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
7432
|
-
*
|
|
7433
|
-
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
7434
|
-
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
7435
|
-
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
7436
|
-
* governing permissions and limitations under the License.
|
|
7437
|
-
*/
|
|
7438
|
-
|
|
7439
|
-
|
|
7440
|
-
const $5c3e21d68f1c4674$var$styles = {
|
|
7441
|
-
border: 0,
|
|
7442
|
-
clip: 'rect(0 0 0 0)',
|
|
7443
|
-
clipPath: 'inset(50%)',
|
|
7444
|
-
height: '1px',
|
|
7445
|
-
margin: '-1px',
|
|
7446
|
-
overflow: 'hidden',
|
|
7447
|
-
padding: 0,
|
|
7448
|
-
position: 'absolute',
|
|
7449
|
-
width: '1px',
|
|
7450
|
-
whiteSpace: 'nowrap'
|
|
7451
|
-
};
|
|
7452
|
-
function $5c3e21d68f1c4674$export$a966af930f325cab(props = {}) {
|
|
7453
|
-
let { style: style, isFocusable: isFocusable } = props;
|
|
7454
|
-
let [isFocused, setFocused] = ($dbSRa$react.useState)(false);
|
|
7455
|
-
let { focusWithinProps: focusWithinProps } = ($9ab94262bd0047c7$export$420e68273165f4ec)({
|
|
7456
|
-
isDisabled: !isFocusable,
|
|
7457
|
-
onFocusWithinChange: (val)=>setFocused(val)
|
|
7458
|
-
});
|
|
7459
|
-
// If focused, don't hide the element.
|
|
7460
|
-
let combinedStyles = ($dbSRa$react.useMemo)(()=>{
|
|
7461
|
-
if (isFocused) return style;
|
|
7462
|
-
else if (style) return {
|
|
7463
|
-
...$5c3e21d68f1c4674$var$styles,
|
|
7464
|
-
...style
|
|
7465
|
-
};
|
|
7466
|
-
else return $5c3e21d68f1c4674$var$styles;
|
|
7467
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
7468
|
-
}, [
|
|
7469
|
-
isFocused
|
|
7470
|
-
]);
|
|
7471
|
-
return {
|
|
7472
|
-
visuallyHiddenProps: {
|
|
7473
|
-
...focusWithinProps,
|
|
7474
|
-
style: combinedStyles
|
|
7475
|
-
}
|
|
7476
|
-
};
|
|
7477
|
-
}
|
|
7478
|
-
function $5c3e21d68f1c4674$export$439d29a4e110a164(props) {
|
|
7479
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
7480
|
-
let { children: children, elementType: Element = 'div', isFocusable: isFocusable, style: style, ...otherProps } = props;
|
|
7481
|
-
let { visuallyHiddenProps: visuallyHiddenProps } = $5c3e21d68f1c4674$export$a966af930f325cab(props);
|
|
7482
|
-
return /*#__PURE__*/ ($dbSRa$react).createElement(Element, ($3ef42575df84b30b$export$9d1611c77c2fe928)(otherProps, visuallyHiddenProps), children);
|
|
7483
|
-
}
|
|
7484
|
-
|
|
7485
7707
|
function $parcel$interopDefault$5(a) {
|
|
7486
7708
|
return a && a.__esModule ? a.default : a;
|
|
7487
7709
|
}
|
|
@@ -7543,7 +7765,7 @@ function $5e3802645cc19319$export$1c3ebcada18427bf(targets, root = document.body
|
|
|
7543
7765
|
// Also skip children of already hidden nodes, as aria-hidden is recursive. An exception is
|
|
7544
7766
|
// made for elements with role="row" since VoiceOver on iOS has issues hiding elements with role="row".
|
|
7545
7767
|
// For that case we want to hide the cells inside as well (https://bugs.webkit.org/show_bug.cgi?id=222623).
|
|
7546
|
-
if (visibleNodes.has(node) || hiddenNodes.has(node.parentElement) && node.parentElement.getAttribute('role') !== 'row') return NodeFilter.FILTER_REJECT;
|
|
7768
|
+
if (visibleNodes.has(node) || node.parentElement && hiddenNodes.has(node.parentElement) && node.parentElement.getAttribute('role') !== 'row') return NodeFilter.FILTER_REJECT;
|
|
7547
7769
|
// Skip this node but continue to children if one of the targets is inside the node.
|
|
7548
7770
|
for (let target of visibleNodes){
|
|
7549
7771
|
if (node.contains(target)) return NodeFilter.FILTER_SKIP;
|
|
@@ -7618,6 +7840,7 @@ function $5e3802645cc19319$export$1c3ebcada18427bf(targets, root = document.body
|
|
|
7618
7840
|
observer.disconnect();
|
|
7619
7841
|
for (let node of hiddenNodes){
|
|
7620
7842
|
let count = $5e3802645cc19319$var$refCountMap.get(node);
|
|
7843
|
+
if (count == null) continue;
|
|
7621
7844
|
if (count === 1) {
|
|
7622
7845
|
node.removeAttribute('aria-hidden');
|
|
7623
7846
|
$5e3802645cc19319$var$refCountMap.delete(node);
|
|
@@ -7649,7 +7872,8 @@ function $5e3802645cc19319$export$1c3ebcada18427bf(targets, root = document.body
|
|
|
7649
7872
|
function $f2f8a6077418541e$export$542a6fd13ac93354(props, state) {
|
|
7650
7873
|
let { triggerRef: triggerRef, popoverRef: popoverRef, isNonModal: isNonModal, isKeyboardDismissDisabled: isKeyboardDismissDisabled, shouldCloseOnInteractOutside: shouldCloseOnInteractOutside, ...otherProps } = props;
|
|
7651
7874
|
let { overlayProps: overlayProps, underlayProps: underlayProps } = ($a11501f3d1d39e6c$export$ea8f71083e90600f)({
|
|
7652
|
-
|
|
7875
|
+
// If popover is in the top layer, it should not prevent other popovers from being dismissed.
|
|
7876
|
+
isOpen: state.isOpen && !otherProps['data-react-aria-top-layer'],
|
|
7653
7877
|
onClose: state.close,
|
|
7654
7878
|
shouldCloseOnBlur: true,
|
|
7655
7879
|
isDismissable: !isNonModal,
|
|
@@ -7661,7 +7885,7 @@ function $f2f8a6077418541e$export$542a6fd13ac93354(props, state) {
|
|
|
7661
7885
|
targetRef: triggerRef,
|
|
7662
7886
|
overlayRef: popoverRef,
|
|
7663
7887
|
isOpen: state.isOpen,
|
|
7664
|
-
onClose: isNonModal ? state.close :
|
|
7888
|
+
onClose: isNonModal ? state.close : undefined
|
|
7665
7889
|
});
|
|
7666
7890
|
($49c51c25361d4cd2$export$ee0f7cc6afcd1c18)({
|
|
7667
7891
|
isDisabled: isNonModal || !state.isOpen
|
|
@@ -7779,7 +8003,7 @@ function $8ac8429251c45e4b$export$dbc0f175b25fb0fb(props, state, ref) {
|
|
|
7779
8003
|
});
|
|
7780
8004
|
($337b884510726a0d$export$14c98a7594375490)();
|
|
7781
8005
|
($dbSRa$react.useEffect)(()=>{
|
|
7782
|
-
if (state.isOpen) return ($5e3802645cc19319$export$1c3ebcada18427bf)([
|
|
8006
|
+
if (state.isOpen && ref.current) return ($5e3802645cc19319$export$1c3ebcada18427bf)([
|
|
7783
8007
|
ref.current
|
|
7784
8008
|
]);
|
|
7785
8009
|
}, [
|
|
@@ -7852,7 +8076,7 @@ function $fb3050f43d946246$export$e32c88dfddc6e1d8(options) {
|
|
|
7852
8076
|
let { keyboardDelegate: keyboardDelegate, selectionManager: selectionManager, onTypeSelect: onTypeSelect } = options;
|
|
7853
8077
|
let state = ($dbSRa$react.useRef)({
|
|
7854
8078
|
search: '',
|
|
7855
|
-
timeout:
|
|
8079
|
+
timeout: undefined
|
|
7856
8080
|
}).current;
|
|
7857
8081
|
let onKeyDown = (e)=>{
|
|
7858
8082
|
let character = $fb3050f43d946246$var$getStringForKey(e.key);
|
|
@@ -7866,14 +8090,16 @@ function $fb3050f43d946246$export$e32c88dfddc6e1d8(options) {
|
|
|
7866
8090
|
if (!('continuePropagation' in e)) e.stopPropagation();
|
|
7867
8091
|
}
|
|
7868
8092
|
state.search += character;
|
|
7869
|
-
|
|
7870
|
-
|
|
7871
|
-
|
|
7872
|
-
|
|
7873
|
-
|
|
7874
|
-
|
|
7875
|
-
|
|
7876
|
-
|
|
8093
|
+
if (keyboardDelegate.getKeyForSearch != null) {
|
|
8094
|
+
// Use the delegate to find a key to focus.
|
|
8095
|
+
// Prioritize items after the currently focused item, falling back to searching the whole list.
|
|
8096
|
+
let key = keyboardDelegate.getKeyForSearch(state.search, selectionManager.focusedKey);
|
|
8097
|
+
// If no key found, search from the top.
|
|
8098
|
+
if (key == null) key = keyboardDelegate.getKeyForSearch(state.search);
|
|
8099
|
+
if (key != null) {
|
|
8100
|
+
selectionManager.setFocusedKey(key);
|
|
8101
|
+
if (onTypeSelect) onTypeSelect(key);
|
|
8102
|
+
}
|
|
7877
8103
|
}
|
|
7878
8104
|
clearTimeout(state.timeout);
|
|
7879
8105
|
state.timeout = setTimeout(()=>{
|
|
@@ -7884,7 +8110,7 @@ function $fb3050f43d946246$export$e32c88dfddc6e1d8(options) {
|
|
|
7884
8110
|
typeSelectProps: {
|
|
7885
8111
|
// Using a capturing listener to catch the keydown event before
|
|
7886
8112
|
// other hooks in order to handle the Spacebar event.
|
|
7887
|
-
onKeyDownCapture: keyboardDelegate.getKeyForSearch ? onKeyDown :
|
|
8113
|
+
onKeyDownCapture: keyboardDelegate.getKeyForSearch ? onKeyDown : undefined
|
|
7888
8114
|
}
|
|
7889
8115
|
};
|
|
7890
8116
|
}
|
|
@@ -7921,21 +8147,23 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
7921
8147
|
let { direction: direction } = ($18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();
|
|
7922
8148
|
let router = ($ea8dcbcb9ea1b556$export$9a302a45f65d0572)();
|
|
7923
8149
|
let onKeyDown = (e)=>{
|
|
8150
|
+
var _ref_current;
|
|
7924
8151
|
// Prevent option + tab from doing anything since it doesn't move focus to the cells, only buttons/checkboxes
|
|
7925
8152
|
if (e.altKey && e.key === 'Tab') e.preventDefault();
|
|
7926
8153
|
// Keyboard events bubble through portals. Don't handle keyboard events
|
|
7927
8154
|
// for elements outside the collection (e.g. menus).
|
|
7928
|
-
if (!ref.current.contains(e.target)) return;
|
|
8155
|
+
if (!((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(e.target))) return;
|
|
7929
8156
|
const navigateToKey = (key, childFocus)=>{
|
|
7930
8157
|
if (key != null) {
|
|
7931
8158
|
if (manager.isLink(key) && linkBehavior === 'selection' && selectOnFocus && !($feb5ffebff200149$export$d3e3bd3e26688c04)(e)) {
|
|
8159
|
+
var _scrollRef_current;
|
|
7932
8160
|
// Set focused key and re-render synchronously to bring item into view if needed.
|
|
7933
8161
|
($iETbY$reactdom.flushSync)(()=>{
|
|
7934
8162
|
manager.setFocusedKey(key, childFocus);
|
|
7935
8163
|
});
|
|
7936
|
-
let item = scrollRef.current.querySelector(`[data-key="${CSS.escape(key.toString())}"]`);
|
|
8164
|
+
let item = (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 ? void 0 : _scrollRef_current.querySelector(`[data-key="${CSS.escape(key.toString())}"]`);
|
|
7937
8165
|
let itemProps = manager.getItemProps(key);
|
|
7938
|
-
router.open(item, e, itemProps.href, itemProps.routerOptions);
|
|
8166
|
+
if (item) router.open(item, e, itemProps.href, itemProps.routerOptions);
|
|
7939
8167
|
return;
|
|
7940
8168
|
}
|
|
7941
8169
|
manager.setFocusedKey(key, childFocus);
|
|
@@ -7947,38 +8175,46 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
7947
8175
|
switch(e.key){
|
|
7948
8176
|
case 'ArrowDown':
|
|
7949
8177
|
if (delegate.getKeyBelow) {
|
|
7950
|
-
var _delegate_getFirstKey, _delegate_getFirstKey1;
|
|
7951
|
-
|
|
7952
|
-
let nextKey = manager.focusedKey != null ? delegate.getKeyBelow(manager.focusedKey) : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate);
|
|
8178
|
+
var _delegate_getKeyBelow, _delegate_getFirstKey, _delegate_getFirstKey1;
|
|
8179
|
+
let nextKey = manager.focusedKey != null ? (_delegate_getKeyBelow = delegate.getKeyBelow) === null || _delegate_getKeyBelow === void 0 ? void 0 : _delegate_getKeyBelow.call(delegate, manager.focusedKey) : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate);
|
|
7953
8180
|
if (nextKey == null && shouldFocusWrap) nextKey = (_delegate_getFirstKey1 = delegate.getFirstKey) === null || _delegate_getFirstKey1 === void 0 ? void 0 : _delegate_getFirstKey1.call(delegate, manager.focusedKey);
|
|
7954
|
-
|
|
8181
|
+
if (nextKey != null) {
|
|
8182
|
+
e.preventDefault();
|
|
8183
|
+
navigateToKey(nextKey);
|
|
8184
|
+
}
|
|
7955
8185
|
}
|
|
7956
8186
|
break;
|
|
7957
8187
|
case 'ArrowUp':
|
|
7958
8188
|
if (delegate.getKeyAbove) {
|
|
7959
|
-
var _delegate_getLastKey, _delegate_getLastKey1;
|
|
7960
|
-
|
|
7961
|
-
let nextKey = manager.focusedKey != null ? delegate.getKeyAbove(manager.focusedKey) : (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate);
|
|
8189
|
+
var _delegate_getKeyAbove, _delegate_getLastKey, _delegate_getLastKey1;
|
|
8190
|
+
let nextKey = manager.focusedKey != null ? (_delegate_getKeyAbove = delegate.getKeyAbove) === null || _delegate_getKeyAbove === void 0 ? void 0 : _delegate_getKeyAbove.call(delegate, manager.focusedKey) : (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate);
|
|
7962
8191
|
if (nextKey == null && shouldFocusWrap) nextKey = (_delegate_getLastKey1 = delegate.getLastKey) === null || _delegate_getLastKey1 === void 0 ? void 0 : _delegate_getLastKey1.call(delegate, manager.focusedKey);
|
|
7963
|
-
|
|
8192
|
+
if (nextKey != null) {
|
|
8193
|
+
e.preventDefault();
|
|
8194
|
+
navigateToKey(nextKey);
|
|
8195
|
+
}
|
|
7964
8196
|
}
|
|
7965
8197
|
break;
|
|
7966
8198
|
case 'ArrowLeft':
|
|
7967
8199
|
if (delegate.getKeyLeftOf) {
|
|
7968
|
-
var _delegate_getFirstKey2, _delegate_getLastKey2;
|
|
7969
|
-
|
|
7970
|
-
let nextKey = delegate.getKeyLeftOf(manager.focusedKey);
|
|
8200
|
+
var _delegate_getKeyLeftOf, _delegate_getFirstKey2, _delegate_getLastKey2;
|
|
8201
|
+
let nextKey = manager.focusedKey != null ? (_delegate_getKeyLeftOf = delegate.getKeyLeftOf) === null || _delegate_getKeyLeftOf === void 0 ? void 0 : _delegate_getKeyLeftOf.call(delegate, manager.focusedKey) : null;
|
|
7971
8202
|
if (nextKey == null && shouldFocusWrap) nextKey = direction === 'rtl' ? (_delegate_getFirstKey2 = delegate.getFirstKey) === null || _delegate_getFirstKey2 === void 0 ? void 0 : _delegate_getFirstKey2.call(delegate, manager.focusedKey) : (_delegate_getLastKey2 = delegate.getLastKey) === null || _delegate_getLastKey2 === void 0 ? void 0 : _delegate_getLastKey2.call(delegate, manager.focusedKey);
|
|
7972
|
-
|
|
8203
|
+
if (nextKey != null) {
|
|
8204
|
+
e.preventDefault();
|
|
8205
|
+
navigateToKey(nextKey, direction === 'rtl' ? 'first' : 'last');
|
|
8206
|
+
}
|
|
7973
8207
|
}
|
|
7974
8208
|
break;
|
|
7975
8209
|
case 'ArrowRight':
|
|
7976
8210
|
if (delegate.getKeyRightOf) {
|
|
7977
|
-
var _delegate_getLastKey3, _delegate_getFirstKey3;
|
|
7978
|
-
|
|
7979
|
-
let nextKey = delegate.getKeyRightOf(manager.focusedKey);
|
|
8211
|
+
var _delegate_getKeyRightOf, _delegate_getLastKey3, _delegate_getFirstKey3;
|
|
8212
|
+
let nextKey = manager.focusedKey != null ? (_delegate_getKeyRightOf = delegate.getKeyRightOf) === null || _delegate_getKeyRightOf === void 0 ? void 0 : _delegate_getKeyRightOf.call(delegate, manager.focusedKey) : null;
|
|
7980
8213
|
if (nextKey == null && shouldFocusWrap) nextKey = direction === 'rtl' ? (_delegate_getLastKey3 = delegate.getLastKey) === null || _delegate_getLastKey3 === void 0 ? void 0 : _delegate_getLastKey3.call(delegate, manager.focusedKey) : (_delegate_getFirstKey3 = delegate.getFirstKey) === null || _delegate_getFirstKey3 === void 0 ? void 0 : _delegate_getFirstKey3.call(delegate, manager.focusedKey);
|
|
7981
|
-
|
|
8214
|
+
if (nextKey != null) {
|
|
8215
|
+
e.preventDefault();
|
|
8216
|
+
navigateToKey(nextKey, direction === 'rtl' ? 'last' : 'first');
|
|
8217
|
+
}
|
|
7982
8218
|
}
|
|
7983
8219
|
break;
|
|
7984
8220
|
case 'Home':
|
|
@@ -7986,8 +8222,10 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
7986
8222
|
e.preventDefault();
|
|
7987
8223
|
let firstKey = delegate.getFirstKey(manager.focusedKey, ($feb5ffebff200149$export$16792effe837dba3)(e));
|
|
7988
8224
|
manager.setFocusedKey(firstKey);
|
|
7989
|
-
if (
|
|
7990
|
-
|
|
8225
|
+
if (firstKey != null) {
|
|
8226
|
+
if (($feb5ffebff200149$export$16792effe837dba3)(e) && e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(firstKey);
|
|
8227
|
+
else if (selectOnFocus) manager.replaceSelection(firstKey);
|
|
8228
|
+
}
|
|
7991
8229
|
}
|
|
7992
8230
|
break;
|
|
7993
8231
|
case 'End':
|
|
@@ -7995,22 +8233,28 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
7995
8233
|
e.preventDefault();
|
|
7996
8234
|
let lastKey = delegate.getLastKey(manager.focusedKey, ($feb5ffebff200149$export$16792effe837dba3)(e));
|
|
7997
8235
|
manager.setFocusedKey(lastKey);
|
|
7998
|
-
if (
|
|
7999
|
-
|
|
8236
|
+
if (lastKey != null) {
|
|
8237
|
+
if (($feb5ffebff200149$export$16792effe837dba3)(e) && e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(lastKey);
|
|
8238
|
+
else if (selectOnFocus) manager.replaceSelection(lastKey);
|
|
8239
|
+
}
|
|
8000
8240
|
}
|
|
8001
8241
|
break;
|
|
8002
8242
|
case 'PageDown':
|
|
8003
|
-
if (delegate.getKeyPageBelow) {
|
|
8004
|
-
e.preventDefault();
|
|
8243
|
+
if (delegate.getKeyPageBelow && manager.focusedKey != null) {
|
|
8005
8244
|
let nextKey = delegate.getKeyPageBelow(manager.focusedKey);
|
|
8006
|
-
|
|
8245
|
+
if (nextKey != null) {
|
|
8246
|
+
e.preventDefault();
|
|
8247
|
+
navigateToKey(nextKey);
|
|
8248
|
+
}
|
|
8007
8249
|
}
|
|
8008
8250
|
break;
|
|
8009
8251
|
case 'PageUp':
|
|
8010
|
-
if (delegate.getKeyPageAbove) {
|
|
8011
|
-
e.preventDefault();
|
|
8252
|
+
if (delegate.getKeyPageAbove && manager.focusedKey != null) {
|
|
8012
8253
|
let nextKey = delegate.getKeyPageAbove(manager.focusedKey);
|
|
8013
|
-
|
|
8254
|
+
if (nextKey != null) {
|
|
8255
|
+
e.preventDefault();
|
|
8256
|
+
navigateToKey(nextKey);
|
|
8257
|
+
}
|
|
8014
8258
|
}
|
|
8015
8259
|
break;
|
|
8016
8260
|
case 'a':
|
|
@@ -8039,7 +8283,7 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8039
8283
|
let walker = ($9bf71ea28793e738$export$2d6ec8fc375ceafa)(ref.current, {
|
|
8040
8284
|
tabbable: true
|
|
8041
8285
|
});
|
|
8042
|
-
let next;
|
|
8286
|
+
let next = undefined;
|
|
8043
8287
|
let last;
|
|
8044
8288
|
do {
|
|
8045
8289
|
last = walker.lastChild();
|
|
@@ -8057,10 +8301,12 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8057
8301
|
top: 0,
|
|
8058
8302
|
left: 0
|
|
8059
8303
|
});
|
|
8060
|
-
($e9faafb641e167db$export$90fc3a17d93f704c)(scrollRef, 'scroll', isVirtualized ?
|
|
8304
|
+
($e9faafb641e167db$export$90fc3a17d93f704c)(scrollRef, 'scroll', isVirtualized ? undefined : ()=>{
|
|
8305
|
+
var _scrollRef_current, _scrollRef_current1;
|
|
8306
|
+
var _scrollRef_current_scrollTop, _scrollRef_current_scrollLeft;
|
|
8061
8307
|
scrollPos.current = {
|
|
8062
|
-
top: scrollRef.current.scrollTop,
|
|
8063
|
-
left: scrollRef.current.scrollLeft
|
|
8308
|
+
top: (_scrollRef_current_scrollTop = (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 ? void 0 : _scrollRef_current.scrollTop) !== null && _scrollRef_current_scrollTop !== void 0 ? _scrollRef_current_scrollTop : 0,
|
|
8309
|
+
left: (_scrollRef_current_scrollLeft = (_scrollRef_current1 = scrollRef.current) === null || _scrollRef_current1 === void 0 ? void 0 : _scrollRef_current1.scrollLeft) !== null && _scrollRef_current_scrollLeft !== void 0 ? _scrollRef_current_scrollLeft : 0
|
|
8064
8310
|
};
|
|
8065
8311
|
});
|
|
8066
8312
|
let onFocus = (e)=>{
|
|
@@ -8073,6 +8319,7 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8073
8319
|
if (!e.currentTarget.contains(e.target)) return;
|
|
8074
8320
|
manager.setFocused(true);
|
|
8075
8321
|
if (manager.focusedKey == null) {
|
|
8322
|
+
var _delegate_getLastKey, _delegate_getFirstKey;
|
|
8076
8323
|
let navigateToFirstKey = (key)=>{
|
|
8077
8324
|
if (key != null) {
|
|
8078
8325
|
manager.setFocusedKey(key);
|
|
@@ -8084,14 +8331,14 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8084
8331
|
// and either focus the first or last item accordingly.
|
|
8085
8332
|
let relatedTarget = e.relatedTarget;
|
|
8086
8333
|
var _manager_lastSelectedKey, _manager_firstSelectedKey;
|
|
8087
|
-
if (relatedTarget && e.currentTarget.compareDocumentPosition(relatedTarget) & Node.DOCUMENT_POSITION_FOLLOWING) navigateToFirstKey((_manager_lastSelectedKey = manager.lastSelectedKey) !== null && _manager_lastSelectedKey !== void 0 ? _manager_lastSelectedKey : delegate.getLastKey());
|
|
8088
|
-
else navigateToFirstKey((_manager_firstSelectedKey = manager.firstSelectedKey) !== null && _manager_firstSelectedKey !== void 0 ? _manager_firstSelectedKey : delegate.getFirstKey());
|
|
8089
|
-
} else if (!isVirtualized) {
|
|
8334
|
+
if (relatedTarget && e.currentTarget.compareDocumentPosition(relatedTarget) & Node.DOCUMENT_POSITION_FOLLOWING) navigateToFirstKey((_manager_lastSelectedKey = manager.lastSelectedKey) !== null && _manager_lastSelectedKey !== void 0 ? _manager_lastSelectedKey : (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate));
|
|
8335
|
+
else navigateToFirstKey((_manager_firstSelectedKey = manager.firstSelectedKey) !== null && _manager_firstSelectedKey !== void 0 ? _manager_firstSelectedKey : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate));
|
|
8336
|
+
} else if (!isVirtualized && scrollRef.current) {
|
|
8090
8337
|
// Restore the scroll position to what it was before.
|
|
8091
8338
|
scrollRef.current.scrollTop = scrollPos.current.top;
|
|
8092
8339
|
scrollRef.current.scrollLeft = scrollPos.current.left;
|
|
8093
8340
|
}
|
|
8094
|
-
if (manager.focusedKey != null) {
|
|
8341
|
+
if (manager.focusedKey != null && scrollRef.current) {
|
|
8095
8342
|
// Refocus and scroll the focused item into view if it exists within the scrollable region.
|
|
8096
8343
|
let element = scrollRef.current.querySelector(`[data-key="${CSS.escape(manager.focusedKey.toString())}"]`);
|
|
8097
8344
|
if (element) {
|
|
@@ -8111,10 +8358,13 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8111
8358
|
const autoFocusRef = ($dbSRa$react.useRef)(autoFocus);
|
|
8112
8359
|
($dbSRa$react.useEffect)(()=>{
|
|
8113
8360
|
if (autoFocusRef.current) {
|
|
8361
|
+
var _delegate_getFirstKey, _delegate_getLastKey;
|
|
8114
8362
|
let focusedKey = null;
|
|
8363
|
+
var _delegate_getFirstKey1;
|
|
8115
8364
|
// Check focus strategy to determine which item to focus
|
|
8116
|
-
if (autoFocus === 'first') focusedKey = delegate.getFirstKey();
|
|
8117
|
-
|
|
8365
|
+
if (autoFocus === 'first') focusedKey = (_delegate_getFirstKey1 = (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate)) !== null && _delegate_getFirstKey1 !== void 0 ? _delegate_getFirstKey1 : null;
|
|
8366
|
+
var _delegate_getLastKey1;
|
|
8367
|
+
if (autoFocus === 'last') focusedKey = (_delegate_getLastKey1 = (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate)) !== null && _delegate_getLastKey1 !== void 0 ? _delegate_getLastKey1 : null;
|
|
8118
8368
|
// If there are any selected keys, make the first one the new focus target
|
|
8119
8369
|
let selectedKeys = manager.selectedKeys;
|
|
8120
8370
|
if (selectedKeys.size) {
|
|
@@ -8126,14 +8376,14 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8126
8376
|
manager.setFocused(true);
|
|
8127
8377
|
manager.setFocusedKey(focusedKey);
|
|
8128
8378
|
// If no default focus key is selected, focus the collection itself.
|
|
8129
|
-
if (focusedKey == null && !shouldUseVirtualFocus) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
8379
|
+
if (focusedKey == null && !shouldUseVirtualFocus && ref.current) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
8130
8380
|
}
|
|
8131
8381
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
8132
8382
|
}, []);
|
|
8133
8383
|
// Scroll the focused element into view when the focusedKey changes.
|
|
8134
8384
|
let lastFocusedKey = ($dbSRa$react.useRef)(manager.focusedKey);
|
|
8135
8385
|
($dbSRa$react.useEffect)(()=>{
|
|
8136
|
-
if (manager.isFocused && manager.focusedKey != null && (manager.focusedKey !== lastFocusedKey.current || autoFocusRef.current) &&
|
|
8386
|
+
if (manager.isFocused && manager.focusedKey != null && (manager.focusedKey !== lastFocusedKey.current || autoFocusRef.current) && scrollRef.current && ref.current) {
|
|
8137
8387
|
let modality = ($507fabe10e71c6fb$export$630ff653c5ada6a9)();
|
|
8138
8388
|
let element = ref.current.querySelector(`[data-key="${CSS.escape(manager.focusedKey.toString())}"]`);
|
|
8139
8389
|
if (!element) // If item element wasn't found, return early (don't update autoFocusRef and lastFocusedKey).
|
|
@@ -8148,7 +8398,7 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8148
8398
|
}
|
|
8149
8399
|
}
|
|
8150
8400
|
// If the focused key becomes null (e.g. the last item is deleted), focus the whole collection.
|
|
8151
|
-
if (!shouldUseVirtualFocus && manager.isFocused && manager.focusedKey == null && lastFocusedKey.current != null) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
8401
|
+
if (!shouldUseVirtualFocus && manager.isFocused && manager.focusedKey == null && lastFocusedKey.current != null && ref.current) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
8152
8402
|
lastFocusedKey.current = manager.focusedKey;
|
|
8153
8403
|
autoFocusRef.current = false;
|
|
8154
8404
|
});
|
|
@@ -8176,7 +8426,7 @@ function $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {
|
|
|
8176
8426
|
// This will be marshalled to either the first or last item depending on where focus came from.
|
|
8177
8427
|
// If using virtual focus, don't set a tabIndex at all so that VoiceOver on iOS 14 doesn't try
|
|
8178
8428
|
// to move real DOM focus to the element anyway.
|
|
8179
|
-
let tabIndex;
|
|
8429
|
+
let tabIndex = undefined;
|
|
8180
8430
|
if (!shouldUseVirtualFocus) tabIndex = manager.focusedKey == null ? 0 : -1;
|
|
8181
8431
|
return {
|
|
8182
8432
|
collectionProps: {
|
|
@@ -8209,7 +8459,7 @@ function $880e95eb8b93ba9a$export$ecf600387e221c37(options) {
|
|
|
8209
8459
|
else {
|
|
8210
8460
|
if (manager.selectionMode === 'none') return;
|
|
8211
8461
|
if (manager.isLink(key)) {
|
|
8212
|
-
if (linkBehavior === 'selection') {
|
|
8462
|
+
if (linkBehavior === 'selection' && ref.current) {
|
|
8213
8463
|
let itemProps = manager.getItemProps(key);
|
|
8214
8464
|
router.open(ref.current, e, itemProps.href, itemProps.routerOptions);
|
|
8215
8465
|
// Always set selected keys back to what they were so that select and combobox close.
|
|
@@ -8231,7 +8481,7 @@ function $880e95eb8b93ba9a$export$ecf600387e221c37(options) {
|
|
|
8231
8481
|
let isFocused = key === manager.focusedKey;
|
|
8232
8482
|
if (isFocused && manager.isFocused && !shouldUseVirtualFocus) {
|
|
8233
8483
|
if (focus) focus();
|
|
8234
|
-
else if (document.activeElement !== ref.current) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
8484
|
+
else if (document.activeElement !== ref.current && ref.current) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
8235
8485
|
}
|
|
8236
8486
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
8237
8487
|
}, [
|
|
@@ -8274,7 +8524,7 @@ function $880e95eb8b93ba9a$export$ecf600387e221c37(options) {
|
|
|
8274
8524
|
let hadPrimaryActionOnPressStart = ($dbSRa$react.useRef)(false);
|
|
8275
8525
|
let performAction = (e)=>{
|
|
8276
8526
|
if (onAction) onAction();
|
|
8277
|
-
if (hasLinkAction) {
|
|
8527
|
+
if (hasLinkAction && ref.current) {
|
|
8278
8528
|
let itemProps = manager.getItemProps(key);
|
|
8279
8529
|
router.open(ref.current, e, itemProps.href, itemProps.routerOptions);
|
|
8280
8530
|
}
|
|
@@ -8302,10 +8552,10 @@ function $880e95eb8b93ba9a$export$ecf600387e221c37(options) {
|
|
|
8302
8552
|
} else if (e.pointerType !== 'keyboard' && allowsSelection) onSelect(e);
|
|
8303
8553
|
};
|
|
8304
8554
|
else {
|
|
8305
|
-
itemPressProps.onPressUp = hasPrimaryAction ?
|
|
8555
|
+
itemPressProps.onPressUp = hasPrimaryAction ? undefined : (e)=>{
|
|
8306
8556
|
if (e.pointerType !== 'keyboard' && allowsSelection) onSelect(e);
|
|
8307
8557
|
};
|
|
8308
|
-
itemPressProps.onPress = hasPrimaryAction ? performAction :
|
|
8558
|
+
itemPressProps.onPress = hasPrimaryAction ? performAction : undefined;
|
|
8309
8559
|
}
|
|
8310
8560
|
} else {
|
|
8311
8561
|
itemPressProps.onPressStart = (e)=>{
|
|
@@ -8398,6 +8648,7 @@ function $880e95eb8b93ba9a$var$isSelectionKey() {
|
|
|
8398
8648
|
*/ class $657e4dc4a6e88df0$export$8f5ed9ff9f511381 {
|
|
8399
8649
|
getItemRect(key) {
|
|
8400
8650
|
let container = this.ref.current;
|
|
8651
|
+
if (!container) return null;
|
|
8401
8652
|
let item = key != null ? container.querySelector(`[data-key="${CSS.escape(key.toString())}"]`) : null;
|
|
8402
8653
|
if (!item) return null;
|
|
8403
8654
|
let containerRect = container.getBoundingClientRect();
|
|
@@ -8411,18 +8662,20 @@ function $880e95eb8b93ba9a$var$isSelectionKey() {
|
|
|
8411
8662
|
}
|
|
8412
8663
|
getContentSize() {
|
|
8413
8664
|
let container = this.ref.current;
|
|
8665
|
+
var _container_scrollWidth, _container_scrollHeight;
|
|
8414
8666
|
return {
|
|
8415
|
-
width: container.scrollWidth,
|
|
8416
|
-
height: container.scrollHeight
|
|
8667
|
+
width: (_container_scrollWidth = container === null || container === void 0 ? void 0 : container.scrollWidth) !== null && _container_scrollWidth !== void 0 ? _container_scrollWidth : 0,
|
|
8668
|
+
height: (_container_scrollHeight = container === null || container === void 0 ? void 0 : container.scrollHeight) !== null && _container_scrollHeight !== void 0 ? _container_scrollHeight : 0
|
|
8417
8669
|
};
|
|
8418
8670
|
}
|
|
8419
8671
|
getVisibleRect() {
|
|
8420
8672
|
let container = this.ref.current;
|
|
8673
|
+
var _container_scrollLeft, _container_scrollTop, _container_offsetWidth, _container_offsetHeight;
|
|
8421
8674
|
return {
|
|
8422
|
-
x: container.scrollLeft,
|
|
8423
|
-
y: container.scrollTop,
|
|
8424
|
-
width: container.offsetWidth,
|
|
8425
|
-
height: container.offsetHeight
|
|
8675
|
+
x: (_container_scrollLeft = container === null || container === void 0 ? void 0 : container.scrollLeft) !== null && _container_scrollLeft !== void 0 ? _container_scrollLeft : 0,
|
|
8676
|
+
y: (_container_scrollTop = container === null || container === void 0 ? void 0 : container.scrollTop) !== null && _container_scrollTop !== void 0 ? _container_scrollTop : 0,
|
|
8677
|
+
width: (_container_offsetWidth = container === null || container === void 0 ? void 0 : container.offsetWidth) !== null && _container_offsetWidth !== void 0 ? _container_offsetWidth : 0,
|
|
8678
|
+
height: (_container_offsetHeight = container === null || container === void 0 ? void 0 : container.offsetHeight) !== null && _container_offsetHeight !== void 0 ? _container_offsetHeight : 0
|
|
8426
8679
|
};
|
|
8427
8680
|
}
|
|
8428
8681
|
constructor(ref){
|
|
@@ -8447,34 +8700,37 @@ class $2a25aae57d74318e$export$a05409b8bb224a5a {
|
|
|
8447
8700
|
var _item_props;
|
|
8448
8701
|
return this.disabledBehavior === 'all' && (((_item_props = item.props) === null || _item_props === void 0 ? void 0 : _item_props.isDisabled) || this.disabledKeys.has(item.key));
|
|
8449
8702
|
}
|
|
8450
|
-
|
|
8451
|
-
|
|
8452
|
-
while(
|
|
8453
|
-
let item = this.collection.getItem(
|
|
8454
|
-
if (item.type === 'item' && !this.isDisabled(item)) return
|
|
8455
|
-
|
|
8703
|
+
findNextNonDisabled(key, getNext) {
|
|
8704
|
+
let nextKey = key;
|
|
8705
|
+
while(nextKey != null){
|
|
8706
|
+
let item = this.collection.getItem(nextKey);
|
|
8707
|
+
if ((item === null || item === void 0 ? void 0 : item.type) === 'item' && !this.isDisabled(item)) return nextKey;
|
|
8708
|
+
nextKey = getNext(nextKey);
|
|
8456
8709
|
}
|
|
8457
8710
|
return null;
|
|
8458
8711
|
}
|
|
8712
|
+
getNextKey(key) {
|
|
8713
|
+
let nextKey = key;
|
|
8714
|
+
nextKey = this.collection.getKeyAfter(nextKey);
|
|
8715
|
+
return this.findNextNonDisabled(nextKey, (key)=>this.collection.getKeyAfter(key));
|
|
8716
|
+
}
|
|
8459
8717
|
getPreviousKey(key) {
|
|
8460
|
-
|
|
8461
|
-
|
|
8462
|
-
|
|
8463
|
-
if (item.type === 'item' && !this.isDisabled(item)) return key;
|
|
8464
|
-
key = this.collection.getKeyBefore(key);
|
|
8465
|
-
}
|
|
8466
|
-
return null;
|
|
8718
|
+
let nextKey = key;
|
|
8719
|
+
nextKey = this.collection.getKeyBefore(nextKey);
|
|
8720
|
+
return this.findNextNonDisabled(nextKey, (key)=>this.collection.getKeyBefore(key));
|
|
8467
8721
|
}
|
|
8468
8722
|
findKey(key, nextKey, shouldSkip) {
|
|
8469
|
-
let
|
|
8470
|
-
|
|
8723
|
+
let tempKey = key;
|
|
8724
|
+
let itemRect = this.layoutDelegate.getItemRect(tempKey);
|
|
8725
|
+
if (!itemRect || tempKey == null) return null;
|
|
8471
8726
|
// Find the item above or below in the same column.
|
|
8472
8727
|
let prevRect = itemRect;
|
|
8473
8728
|
do {
|
|
8474
|
-
|
|
8475
|
-
|
|
8476
|
-
|
|
8477
|
-
|
|
8729
|
+
tempKey = nextKey(tempKey);
|
|
8730
|
+
if (tempKey == null) break;
|
|
8731
|
+
itemRect = this.layoutDelegate.getItemRect(tempKey);
|
|
8732
|
+
}while (itemRect && shouldSkip(prevRect, itemRect) && tempKey != null);
|
|
8733
|
+
return tempKey;
|
|
8478
8734
|
}
|
|
8479
8735
|
isSameRow(prevRect, itemRect) {
|
|
8480
8736
|
return prevRect.y === itemRect.y || prevRect.x !== itemRect.x;
|
|
@@ -8494,6 +8750,13 @@ class $2a25aae57d74318e$export$a05409b8bb224a5a {
|
|
|
8494
8750
|
return right ? this.getPreviousKey(key) : this.getNextKey(key);
|
|
8495
8751
|
}
|
|
8496
8752
|
getKeyRightOf(key) {
|
|
8753
|
+
// This is a temporary solution for CardView until we refactor useSelectableCollection.
|
|
8754
|
+
// https://github.com/orgs/adobe/projects/19/views/32?pane=issue&itemId=77825042
|
|
8755
|
+
let layoutDelegateMethod = this.direction === 'ltr' ? 'getKeyRightOf' : 'getKeyLeftOf';
|
|
8756
|
+
if (this.layoutDelegate[layoutDelegateMethod]) {
|
|
8757
|
+
key = this.layoutDelegate[layoutDelegateMethod](key);
|
|
8758
|
+
return this.findNextNonDisabled(key, (key)=>this.layoutDelegate[layoutDelegateMethod](key));
|
|
8759
|
+
}
|
|
8497
8760
|
if (this.layout === 'grid') {
|
|
8498
8761
|
if (this.orientation === 'vertical') return this.getNextColumn(key, this.direction === 'rtl');
|
|
8499
8762
|
else return this.findKey(key, (key)=>this.getNextColumn(key, this.direction === 'rtl'), this.isSameColumn);
|
|
@@ -8501,6 +8764,11 @@ class $2a25aae57d74318e$export$a05409b8bb224a5a {
|
|
|
8501
8764
|
return null;
|
|
8502
8765
|
}
|
|
8503
8766
|
getKeyLeftOf(key) {
|
|
8767
|
+
let layoutDelegateMethod = this.direction === 'ltr' ? 'getKeyLeftOf' : 'getKeyRightOf';
|
|
8768
|
+
if (this.layoutDelegate[layoutDelegateMethod]) {
|
|
8769
|
+
key = this.layoutDelegate[layoutDelegateMethod](key);
|
|
8770
|
+
return this.findNextNonDisabled(key, (key)=>this.layoutDelegate[layoutDelegateMethod](key));
|
|
8771
|
+
}
|
|
8504
8772
|
if (this.layout === 'grid') {
|
|
8505
8773
|
if (this.orientation === 'vertical') return this.getNextColumn(key, this.direction === 'ltr');
|
|
8506
8774
|
else return this.findKey(key, (key)=>this.getNextColumn(key, this.direction === 'ltr'), this.isSameColumn);
|
|
@@ -8509,61 +8777,53 @@ class $2a25aae57d74318e$export$a05409b8bb224a5a {
|
|
|
8509
8777
|
}
|
|
8510
8778
|
getFirstKey() {
|
|
8511
8779
|
let key = this.collection.getFirstKey();
|
|
8512
|
-
|
|
8513
|
-
let item = this.collection.getItem(key);
|
|
8514
|
-
if ((item === null || item === void 0 ? void 0 : item.type) === 'item' && !this.isDisabled(item)) return key;
|
|
8515
|
-
key = this.collection.getKeyAfter(key);
|
|
8516
|
-
}
|
|
8517
|
-
return null;
|
|
8780
|
+
return this.findNextNonDisabled(key, (key)=>this.collection.getKeyAfter(key));
|
|
8518
8781
|
}
|
|
8519
8782
|
getLastKey() {
|
|
8520
8783
|
let key = this.collection.getLastKey();
|
|
8521
|
-
|
|
8522
|
-
let item = this.collection.getItem(key);
|
|
8523
|
-
if (item.type === 'item' && !this.isDisabled(item)) return key;
|
|
8524
|
-
key = this.collection.getKeyBefore(key);
|
|
8525
|
-
}
|
|
8526
|
-
return null;
|
|
8784
|
+
return this.findNextNonDisabled(key, (key)=>this.collection.getKeyBefore(key));
|
|
8527
8785
|
}
|
|
8528
8786
|
getKeyPageAbove(key) {
|
|
8529
8787
|
let menu = this.ref.current;
|
|
8530
8788
|
let itemRect = this.layoutDelegate.getItemRect(key);
|
|
8531
8789
|
if (!itemRect) return null;
|
|
8532
|
-
if (!($cc38e7bd3fc7b213$export$2bb74740c4e19def)(menu)) return this.getFirstKey();
|
|
8790
|
+
if (menu && !($cc38e7bd3fc7b213$export$2bb74740c4e19def)(menu)) return this.getFirstKey();
|
|
8791
|
+
let nextKey = key;
|
|
8533
8792
|
if (this.orientation === 'horizontal') {
|
|
8534
8793
|
let pageX = Math.max(0, itemRect.x + itemRect.width - this.layoutDelegate.getVisibleRect().width);
|
|
8535
|
-
while(itemRect && itemRect.x > pageX){
|
|
8536
|
-
|
|
8537
|
-
itemRect =
|
|
8794
|
+
while(itemRect && itemRect.x > pageX && nextKey != null){
|
|
8795
|
+
nextKey = this.getKeyAbove(nextKey);
|
|
8796
|
+
itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);
|
|
8538
8797
|
}
|
|
8539
8798
|
} else {
|
|
8540
8799
|
let pageY = Math.max(0, itemRect.y + itemRect.height - this.layoutDelegate.getVisibleRect().height);
|
|
8541
|
-
while(itemRect && itemRect.y > pageY){
|
|
8542
|
-
|
|
8543
|
-
itemRect =
|
|
8800
|
+
while(itemRect && itemRect.y > pageY && nextKey != null){
|
|
8801
|
+
nextKey = this.getKeyAbove(nextKey);
|
|
8802
|
+
itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);
|
|
8544
8803
|
}
|
|
8545
8804
|
}
|
|
8546
|
-
return
|
|
8805
|
+
return nextKey !== null && nextKey !== void 0 ? nextKey : this.getFirstKey();
|
|
8547
8806
|
}
|
|
8548
8807
|
getKeyPageBelow(key) {
|
|
8549
8808
|
let menu = this.ref.current;
|
|
8550
8809
|
let itemRect = this.layoutDelegate.getItemRect(key);
|
|
8551
8810
|
if (!itemRect) return null;
|
|
8552
|
-
if (!($cc38e7bd3fc7b213$export$2bb74740c4e19def)(menu)) return this.getLastKey();
|
|
8811
|
+
if (menu && !($cc38e7bd3fc7b213$export$2bb74740c4e19def)(menu)) return this.getLastKey();
|
|
8812
|
+
let nextKey = key;
|
|
8553
8813
|
if (this.orientation === 'horizontal') {
|
|
8554
8814
|
let pageX = Math.min(this.layoutDelegate.getContentSize().width, itemRect.y - itemRect.width + this.layoutDelegate.getVisibleRect().width);
|
|
8555
|
-
while(itemRect && itemRect.x < pageX){
|
|
8556
|
-
|
|
8557
|
-
itemRect =
|
|
8815
|
+
while(itemRect && itemRect.x < pageX && nextKey != null){
|
|
8816
|
+
nextKey = this.getKeyBelow(nextKey);
|
|
8817
|
+
itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);
|
|
8558
8818
|
}
|
|
8559
8819
|
} else {
|
|
8560
8820
|
let pageY = Math.min(this.layoutDelegate.getContentSize().height, itemRect.y - itemRect.height + this.layoutDelegate.getVisibleRect().height);
|
|
8561
|
-
while(itemRect && itemRect.y < pageY){
|
|
8562
|
-
|
|
8563
|
-
itemRect =
|
|
8821
|
+
while(itemRect && itemRect.y < pageY && nextKey != null){
|
|
8822
|
+
nextKey = this.getKeyBelow(nextKey);
|
|
8823
|
+
itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);
|
|
8564
8824
|
}
|
|
8565
8825
|
}
|
|
8566
|
-
return
|
|
8826
|
+
return nextKey !== null && nextKey !== void 0 ? nextKey : this.getLastKey();
|
|
8567
8827
|
}
|
|
8568
8828
|
getKeyForSearch(search, fromKey) {
|
|
8569
8829
|
if (!this.collator) return null;
|
|
@@ -8571,9 +8831,10 @@ class $2a25aae57d74318e$export$a05409b8bb224a5a {
|
|
|
8571
8831
|
let key = fromKey || this.getFirstKey();
|
|
8572
8832
|
while(key != null){
|
|
8573
8833
|
let item = collection.getItem(key);
|
|
8834
|
+
if (!item) return null;
|
|
8574
8835
|
let substring = item.textValue.slice(0, search.length);
|
|
8575
8836
|
if (item.textValue && this.collator.compare(substring, search) === 0) return key;
|
|
8576
|
-
key = this.
|
|
8837
|
+
key = this.getNextKey(key);
|
|
8577
8838
|
}
|
|
8578
8839
|
return null;
|
|
8579
8840
|
}
|
|
@@ -8744,17 +9005,26 @@ class $eb2240fc39a57fa5$export$bf788dd355e3a401 {
|
|
|
8744
9005
|
}
|
|
8745
9006
|
*iterateCollection(props) {
|
|
8746
9007
|
let { children: children, items: items } = props;
|
|
8747
|
-
if (
|
|
9008
|
+
if (($dbSRa$react).isValidElement(children) && children.type === ($dbSRa$react).Fragment) yield* this.iterateCollection({
|
|
9009
|
+
children: children.props.children,
|
|
9010
|
+
items: items
|
|
9011
|
+
});
|
|
9012
|
+
else if (typeof children === 'function') {
|
|
8748
9013
|
if (!items) throw new Error('props.children was a function but props.items is missing');
|
|
8749
|
-
|
|
8750
|
-
|
|
8751
|
-
|
|
8752
|
-
|
|
8753
|
-
|
|
9014
|
+
let index = 0;
|
|
9015
|
+
for (let item of items){
|
|
9016
|
+
yield* this.getFullNode({
|
|
9017
|
+
value: item,
|
|
9018
|
+
index: index
|
|
9019
|
+
}, {
|
|
9020
|
+
renderer: children
|
|
9021
|
+
});
|
|
9022
|
+
index++;
|
|
9023
|
+
}
|
|
8754
9024
|
} else {
|
|
8755
9025
|
let items = [];
|
|
8756
9026
|
($dbSRa$react).Children.forEach(children, (child)=>{
|
|
8757
|
-
items.push(child);
|
|
9027
|
+
if (child) items.push(child);
|
|
8758
9028
|
});
|
|
8759
9029
|
let index = 0;
|
|
8760
9030
|
for (let item of items){
|
|
@@ -8787,6 +9057,19 @@ class $eb2240fc39a57fa5$export$bf788dd355e3a401 {
|
|
|
8787
9057
|
};
|
|
8788
9058
|
}
|
|
8789
9059
|
*getFullNode(partialNode, state, parentKey, parentNode) {
|
|
9060
|
+
if (($dbSRa$react).isValidElement(partialNode.element) && partialNode.element.type === ($dbSRa$react).Fragment) {
|
|
9061
|
+
let children = [];
|
|
9062
|
+
($dbSRa$react).Children.forEach(partialNode.element.props.children, (child)=>{
|
|
9063
|
+
children.push(child);
|
|
9064
|
+
});
|
|
9065
|
+
var _partialNode_index;
|
|
9066
|
+
let index = (_partialNode_index = partialNode.index) !== null && _partialNode_index !== void 0 ? _partialNode_index : 0;
|
|
9067
|
+
for (const child of children)yield* this.getFullNode({
|
|
9068
|
+
element: child,
|
|
9069
|
+
index: index++
|
|
9070
|
+
}, state, parentKey, parentNode);
|
|
9071
|
+
return;
|
|
9072
|
+
}
|
|
8790
9073
|
// If there's a value instead of an element on the node, and a parent renderer function is available,
|
|
8791
9074
|
// use it to render an element for the value.
|
|
8792
9075
|
let element = partialNode.element;
|
|
@@ -8805,17 +9088,19 @@ class $eb2240fc39a57fa5$export$bf788dd355e3a401 {
|
|
|
8805
9088
|
if (($dbSRa$react).isValidElement(element)) {
|
|
8806
9089
|
let type = element.type;
|
|
8807
9090
|
if (typeof type !== 'function' && typeof type.getCollectionNode !== 'function') {
|
|
8808
|
-
let name =
|
|
9091
|
+
let name = element.type;
|
|
8809
9092
|
throw new Error(`Unknown element <${name}> in collection.`);
|
|
8810
9093
|
}
|
|
8811
9094
|
let childNodes = type.getCollectionNode(element.props, this.context);
|
|
8812
|
-
|
|
9095
|
+
var _partialNode_index1;
|
|
9096
|
+
let index = (_partialNode_index1 = partialNode.index) !== null && _partialNode_index1 !== void 0 ? _partialNode_index1 : 0;
|
|
8813
9097
|
let result = childNodes.next();
|
|
8814
9098
|
while(!result.done && result.value){
|
|
8815
9099
|
let childNode = result.value;
|
|
8816
9100
|
partialNode.index = index;
|
|
8817
|
-
|
|
8818
|
-
|
|
9101
|
+
var _childNode_key;
|
|
9102
|
+
let nodeKey = (_childNode_key = childNode.key) !== null && _childNode_key !== void 0 ? _childNode_key : null;
|
|
9103
|
+
if (nodeKey == null) nodeKey = childNode.element ? null : this.getKey(element, partialNode, state, parentKey);
|
|
8819
9104
|
let nodes = this.getFullNode({
|
|
8820
9105
|
...childNode,
|
|
8821
9106
|
key: nodeKey,
|
|
@@ -8826,12 +9111,14 @@ class $eb2240fc39a57fa5$export$bf788dd355e3a401 {
|
|
|
8826
9111
|
...nodes
|
|
8827
9112
|
];
|
|
8828
9113
|
for (let node of children){
|
|
9114
|
+
var _childNode_value, _ref;
|
|
8829
9115
|
// Cache the node based on its value
|
|
8830
|
-
node.value = childNode.value
|
|
9116
|
+
node.value = (_ref = (_childNode_value = childNode.value) !== null && _childNode_value !== void 0 ? _childNode_value : partialNode.value) !== null && _ref !== void 0 ? _ref : null;
|
|
8831
9117
|
if (node.value) this.cache.set(node.value, node);
|
|
9118
|
+
var _parentNode_type;
|
|
8832
9119
|
// The partial node may have specified a type for the child in order to specify a constraint.
|
|
8833
9120
|
// Verify that the full node that was built recursively matches this type.
|
|
8834
|
-
if (partialNode.type && node.type !== partialNode.type) throw new Error(`Unsupported type <${$eb2240fc39a57fa5$var$capitalize(node.type)}> in <${$eb2240fc39a57fa5$var$capitalize(parentNode.type)}>. Only <${$eb2240fc39a57fa5$var$capitalize(partialNode.type)}> is supported.`);
|
|
9121
|
+
if (partialNode.type && node.type !== partialNode.type) throw new Error(`Unsupported type <${$eb2240fc39a57fa5$var$capitalize(node.type)}> in <${$eb2240fc39a57fa5$var$capitalize((_parentNode_type = parentNode === null || parentNode === void 0 ? void 0 : parentNode.type) !== null && _parentNode_type !== void 0 ? _parentNode_type : 'unknown parent type')}>. Only <${$eb2240fc39a57fa5$var$capitalize(partialNode.type)}> is supported.`);
|
|
8835
9122
|
index++;
|
|
8836
9123
|
yield node;
|
|
8837
9124
|
}
|
|
@@ -8840,25 +9127,26 @@ class $eb2240fc39a57fa5$export$bf788dd355e3a401 {
|
|
|
8840
9127
|
return;
|
|
8841
9128
|
}
|
|
8842
9129
|
// Ignore invalid elements
|
|
8843
|
-
if (partialNode.key == null) return;
|
|
9130
|
+
if (partialNode.key == null || partialNode.type == null) return;
|
|
8844
9131
|
// Create full node
|
|
8845
9132
|
let builder = this;
|
|
9133
|
+
var _partialNode_value, _partialNode_textValue;
|
|
8846
9134
|
let node = {
|
|
8847
9135
|
type: partialNode.type,
|
|
8848
9136
|
props: partialNode.props,
|
|
8849
9137
|
key: partialNode.key,
|
|
8850
9138
|
parentKey: parentNode ? parentNode.key : null,
|
|
8851
|
-
value: partialNode.value,
|
|
9139
|
+
value: (_partialNode_value = partialNode.value) !== null && _partialNode_value !== void 0 ? _partialNode_value : null,
|
|
8852
9140
|
level: parentNode ? parentNode.level + 1 : 0,
|
|
8853
9141
|
index: partialNode.index,
|
|
8854
9142
|
rendered: partialNode.rendered,
|
|
8855
|
-
textValue: partialNode.textValue,
|
|
9143
|
+
textValue: (_partialNode_textValue = partialNode.textValue) !== null && _partialNode_textValue !== void 0 ? _partialNode_textValue : '',
|
|
8856
9144
|
'aria-label': partialNode['aria-label'],
|
|
8857
9145
|
wrapper: partialNode.wrapper,
|
|
8858
9146
|
shouldInvalidate: partialNode.shouldInvalidate,
|
|
8859
|
-
hasChildNodes: partialNode.hasChildNodes,
|
|
9147
|
+
hasChildNodes: partialNode.hasChildNodes || false,
|
|
8860
9148
|
childNodes: $eb2240fc39a57fa5$var$iterable(function*() {
|
|
8861
|
-
if (!partialNode.hasChildNodes) return;
|
|
9149
|
+
if (!partialNode.hasChildNodes || !partialNode.childNodes) return;
|
|
8862
9150
|
let index = 0;
|
|
8863
9151
|
for (let child of partialNode.childNodes()){
|
|
8864
9152
|
// Ensure child keys are globally unique by prepending the parent node's key
|
|
@@ -8867,8 +9155,10 @@ class $eb2240fc39a57fa5$export$bf788dd355e3a401 {
|
|
|
8867
9155
|
// but another parent has key `ab` and its child has a key `c`. The combined keys would result in both
|
|
8868
9156
|
// children having a key of `abc`.
|
|
8869
9157
|
child.key = `${node.key}${child.key}`;
|
|
8870
|
-
|
|
8871
|
-
|
|
9158
|
+
let nodes = builder.getFullNode({
|
|
9159
|
+
...child,
|
|
9160
|
+
index: index
|
|
9161
|
+
}, builder.getChildState(state, child), node.key, node);
|
|
8872
9162
|
for (let node of nodes){
|
|
8873
9163
|
index++;
|
|
8874
9164
|
yield node;
|
|
@@ -8997,9 +9287,10 @@ function $c5a24bc478652b5f$export$8c434b3a7a4dad6(collection, a, b) {
|
|
|
8997
9287
|
}
|
|
8998
9288
|
function $c5a24bc478652b5f$var$getAncestors(collection, node) {
|
|
8999
9289
|
let parents = [];
|
|
9000
|
-
|
|
9001
|
-
|
|
9002
|
-
|
|
9290
|
+
let currNode = node;
|
|
9291
|
+
while((currNode === null || currNode === void 0 ? void 0 : currNode.parentKey) != null){
|
|
9292
|
+
currNode = collection.getItem(currNode.parentKey);
|
|
9293
|
+
if (currNode) parents.unshift(currNode);
|
|
9003
9294
|
}
|
|
9004
9295
|
return parents;
|
|
9005
9296
|
}
|
|
@@ -9019,14 +9310,15 @@ const $453cc9f0df89c0a5$var$cache = new WeakMap();
|
|
|
9019
9310
|
function $453cc9f0df89c0a5$export$77d5aafae4e095b2(collection) {
|
|
9020
9311
|
let count = $453cc9f0df89c0a5$var$cache.get(collection);
|
|
9021
9312
|
if (count != null) return count;
|
|
9022
|
-
count
|
|
9313
|
+
// TS isn't smart enough to know we've ensured count is a number, so use a new variable
|
|
9314
|
+
let counter = 0;
|
|
9023
9315
|
let countItems = (items)=>{
|
|
9024
9316
|
for (let item of items)if (item.type === 'section') countItems(($c5a24bc478652b5f$export$1005530eda016c13)(item, collection));
|
|
9025
|
-
else
|
|
9317
|
+
else counter++;
|
|
9026
9318
|
};
|
|
9027
9319
|
countItems(collection);
|
|
9028
|
-
$453cc9f0df89c0a5$var$cache.set(collection,
|
|
9029
|
-
return
|
|
9320
|
+
$453cc9f0df89c0a5$var$cache.set(collection, counter);
|
|
9321
|
+
return counter;
|
|
9030
9322
|
}
|
|
9031
9323
|
|
|
9032
9324
|
/*
|
|
@@ -9457,144 +9749,41 @@ function $168583247155ddda$export$dc9c12ed27dd1b49(props, state, ref) {
|
|
|
9457
9749
|
let stringFormatter = ($fca6afa0e843324b$export$f12b703ca79dfbb1)((($parcel$interopDefault$4($2cbb7ca666678a14$exports))), '@react-aria/menu');
|
|
9458
9750
|
let { longPressProps: longPressProps } = ($8a26561d2877236e$export$c24ed0104d07eab9)({
|
|
9459
9751
|
isDisabled: isDisabled || trigger !== 'longPress',
|
|
9460
|
-
accessibilityDescription: stringFormatter.format('longPressMessage'),
|
|
9461
|
-
onLongPressStart () {
|
|
9462
|
-
state.close();
|
|
9463
|
-
},
|
|
9464
|
-
onLongPress () {
|
|
9465
|
-
state.open('first');
|
|
9466
|
-
}
|
|
9467
|
-
});
|
|
9468
|
-
let pressProps = {
|
|
9469
|
-
onPressStart (e) {
|
|
9470
|
-
// For consistency with native, open the menu on mouse/key down, but touch up.
|
|
9471
|
-
if (e.pointerType !== 'touch' && e.pointerType !== 'keyboard' && !isDisabled) // If opened with a screen reader, auto focus the first item.
|
|
9472
|
-
// Otherwise, the menu itself will be focused.
|
|
9473
|
-
state.open(e.pointerType === 'virtual' ? 'first' : null);
|
|
9474
|
-
},
|
|
9475
|
-
onPress (e) {
|
|
9476
|
-
if (e.pointerType === 'touch' && !isDisabled) state.toggle();
|
|
9477
|
-
}
|
|
9478
|
-
};
|
|
9479
|
-
// omit onPress from triggerProps since we override it above.
|
|
9480
|
-
delete triggerProps.onPress;
|
|
9481
|
-
return {
|
|
9482
|
-
|
|
9483
|
-
|
|
9484
|
-
...
|
|
9485
|
-
|
|
9486
|
-
|
|
9487
|
-
|
|
9488
|
-
|
|
9489
|
-
|
|
9490
|
-
|
|
9491
|
-
|
|
9492
|
-
|
|
9493
|
-
|
|
9494
|
-
|
|
9495
|
-
}
|
|
9496
|
-
|
|
9497
|
-
/*
|
|
9498
|
-
* Copyright 2020 Adobe. All rights reserved.
|
|
9499
|
-
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
9500
|
-
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
9501
|
-
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
9502
|
-
*
|
|
9503
|
-
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
9504
|
-
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9505
|
-
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
9506
|
-
* governing permissions and limitations under the License.
|
|
9507
|
-
*/
|
|
9508
|
-
|
|
9509
|
-
|
|
9510
|
-
|
|
9511
|
-
|
|
9512
|
-
|
|
9513
|
-
|
|
9514
|
-
function $2d73ec29415bd339$export$712718f7aec83d5(props, ref) {
|
|
9515
|
-
let { inputElementType: inputElementType = 'input', isDisabled: isDisabled = false, isRequired: isRequired = false, isReadOnly: isReadOnly = false, type: type = 'text', validationBehavior: validationBehavior = 'aria' } = props;
|
|
9516
|
-
let [value, setValue] = ($458b0a5536c1a7cf$export$40bfa8c7b0832715)(props.value, props.defaultValue || '', props.onChange);
|
|
9517
|
-
let { focusableProps: focusableProps } = ($e6afbd83fe6ebbd2$export$4c014de7c8940b4c)(props, ref);
|
|
9518
|
-
let validationState = ($e5be200c675c3b3a$export$fc1a364ae1f3ff10)({
|
|
9519
|
-
...props,
|
|
9520
|
-
value: value
|
|
9521
|
-
});
|
|
9522
|
-
let { isInvalid: isInvalid, validationErrors: validationErrors, validationDetails: validationDetails } = validationState.displayValidation;
|
|
9523
|
-
let { labelProps: labelProps, fieldProps: fieldProps, descriptionProps: descriptionProps, errorMessageProps: errorMessageProps } = ($2baaea4c71418dea$export$294aa081a6c6f55d)({
|
|
9524
|
-
...props,
|
|
9525
|
-
isInvalid: isInvalid,
|
|
9526
|
-
errorMessage: props.errorMessage || validationErrors
|
|
9527
|
-
});
|
|
9528
|
-
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props, {
|
|
9529
|
-
labelable: true
|
|
9530
|
-
});
|
|
9531
|
-
const inputOnlyProps = {
|
|
9532
|
-
type: type,
|
|
9533
|
-
pattern: props.pattern
|
|
9534
|
-
};
|
|
9535
|
-
($99facab73266f662$export$5add1d006293d136)(ref, value, setValue);
|
|
9536
|
-
($e93e671b31057976$export$b8473d3665f3a75a)(props, validationState, ref);
|
|
9537
|
-
($dbSRa$react.useEffect)(()=>{
|
|
9538
|
-
// This works around a React/Chrome bug that prevents textarea elements from validating when controlled.
|
|
9539
|
-
// We prevent React from updating defaultValue (i.e. children) of textarea when `value` changes,
|
|
9540
|
-
// which causes Chrome to skip validation. Only updating `value` is ok in our case since our
|
|
9541
|
-
// textareas are always controlled. React is planning on removing this synchronization in a
|
|
9542
|
-
// future major version.
|
|
9543
|
-
// https://github.com/facebook/react/issues/19474
|
|
9544
|
-
// https://github.com/facebook/react/issues/11896
|
|
9545
|
-
if (ref.current instanceof ($431fbd86ca7dc216$export$f21a1ffae260145a)(ref.current).HTMLTextAreaElement) {
|
|
9546
|
-
let input = ref.current;
|
|
9547
|
-
Object.defineProperty(input, 'defaultValue', {
|
|
9548
|
-
get: ()=>input.value,
|
|
9549
|
-
set: ()=>{},
|
|
9550
|
-
configurable: true
|
|
9551
|
-
});
|
|
9552
|
-
}
|
|
9553
|
-
}, [
|
|
9554
|
-
ref
|
|
9555
|
-
]);
|
|
9556
|
-
return {
|
|
9557
|
-
labelProps: labelProps,
|
|
9558
|
-
inputProps: ($3ef42575df84b30b$export$9d1611c77c2fe928)(domProps, inputElementType === 'input' ? inputOnlyProps : undefined, {
|
|
9559
|
-
disabled: isDisabled,
|
|
9560
|
-
readOnly: isReadOnly,
|
|
9561
|
-
required: isRequired && validationBehavior === 'native',
|
|
9562
|
-
'aria-required': isRequired && validationBehavior === 'aria' || undefined,
|
|
9563
|
-
'aria-invalid': isInvalid || undefined,
|
|
9564
|
-
'aria-errormessage': props['aria-errormessage'],
|
|
9565
|
-
'aria-activedescendant': props['aria-activedescendant'],
|
|
9566
|
-
'aria-autocomplete': props['aria-autocomplete'],
|
|
9567
|
-
'aria-haspopup': props['aria-haspopup'],
|
|
9568
|
-
value: value,
|
|
9569
|
-
onChange: (e)=>setValue(e.target.value),
|
|
9570
|
-
autoComplete: props.autoComplete,
|
|
9571
|
-
autoCapitalize: props.autoCapitalize,
|
|
9572
|
-
maxLength: props.maxLength,
|
|
9573
|
-
minLength: props.minLength,
|
|
9574
|
-
name: props.name,
|
|
9575
|
-
placeholder: props.placeholder,
|
|
9576
|
-
inputMode: props.inputMode,
|
|
9577
|
-
// Clipboard events
|
|
9578
|
-
onCopy: props.onCopy,
|
|
9579
|
-
onCut: props.onCut,
|
|
9580
|
-
onPaste: props.onPaste,
|
|
9581
|
-
// Composition events
|
|
9582
|
-
onCompositionEnd: props.onCompositionEnd,
|
|
9583
|
-
onCompositionStart: props.onCompositionStart,
|
|
9584
|
-
onCompositionUpdate: props.onCompositionUpdate,
|
|
9585
|
-
// Selection events
|
|
9586
|
-
onSelect: props.onSelect,
|
|
9587
|
-
// Input events
|
|
9588
|
-
onBeforeInput: props.onBeforeInput,
|
|
9589
|
-
onInput: props.onInput,
|
|
9590
|
-
...focusableProps,
|
|
9591
|
-
...fieldProps
|
|
9592
|
-
}),
|
|
9593
|
-
descriptionProps: descriptionProps,
|
|
9594
|
-
errorMessageProps: errorMessageProps,
|
|
9595
|
-
isInvalid: isInvalid,
|
|
9596
|
-
validationErrors: validationErrors,
|
|
9597
|
-
validationDetails: validationDetails
|
|
9752
|
+
accessibilityDescription: stringFormatter.format('longPressMessage'),
|
|
9753
|
+
onLongPressStart () {
|
|
9754
|
+
state.close();
|
|
9755
|
+
},
|
|
9756
|
+
onLongPress () {
|
|
9757
|
+
state.open('first');
|
|
9758
|
+
}
|
|
9759
|
+
});
|
|
9760
|
+
let pressProps = {
|
|
9761
|
+
onPressStart (e) {
|
|
9762
|
+
// For consistency with native, open the menu on mouse/key down, but touch up.
|
|
9763
|
+
if (e.pointerType !== 'touch' && e.pointerType !== 'keyboard' && !isDisabled) // If opened with a screen reader, auto focus the first item.
|
|
9764
|
+
// Otherwise, the menu itself will be focused.
|
|
9765
|
+
state.open(e.pointerType === 'virtual' ? 'first' : null);
|
|
9766
|
+
},
|
|
9767
|
+
onPress (e) {
|
|
9768
|
+
if (e.pointerType === 'touch' && !isDisabled) state.toggle();
|
|
9769
|
+
}
|
|
9770
|
+
};
|
|
9771
|
+
// omit onPress from triggerProps since we override it above.
|
|
9772
|
+
delete triggerProps.onPress;
|
|
9773
|
+
return {
|
|
9774
|
+
// @ts-ignore - TODO we pass out both DOMAttributes AND AriaButtonProps, but useButton will discard the longPress event handlers, it's only through PressResponder magic that this works for RSP and RAC. it does not work in aria examples
|
|
9775
|
+
menuTriggerProps: {
|
|
9776
|
+
...triggerProps,
|
|
9777
|
+
...trigger === 'press' ? pressProps : longPressProps,
|
|
9778
|
+
id: menuTriggerId,
|
|
9779
|
+
onKeyDown: onKeyDown
|
|
9780
|
+
},
|
|
9781
|
+
menuProps: {
|
|
9782
|
+
...overlayProps,
|
|
9783
|
+
'aria-labelledby': menuTriggerId,
|
|
9784
|
+
autoFocus: state.focusStrategy || true,
|
|
9785
|
+
onClose: state.close
|
|
9786
|
+
}
|
|
9598
9787
|
};
|
|
9599
9788
|
}
|
|
9600
9789
|
|
|
@@ -9668,6 +9857,85 @@ function $40df3f8667284809$export$d55e7ee900f34e93(props, ref) {
|
|
|
9668
9857
|
};
|
|
9669
9858
|
}
|
|
9670
9859
|
|
|
9860
|
+
/*
|
|
9861
|
+
* Copyright 2024 Adobe. All rights reserved.
|
|
9862
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the 'License');
|
|
9863
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
9864
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
9865
|
+
*
|
|
9866
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
9867
|
+
* the License is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9868
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
9869
|
+
* governing permissions and limitations under the License.
|
|
9870
|
+
*/
|
|
9871
|
+
|
|
9872
|
+
|
|
9873
|
+
|
|
9874
|
+
function $5e910fae8e128ead$export$6e3e27031a30522f(props, state, ref) {
|
|
9875
|
+
let { isDisabled: isDisabled } = props;
|
|
9876
|
+
let triggerId = ($bdb11010cef70236$export$f680877a34711e37)();
|
|
9877
|
+
let panelId = ($bdb11010cef70236$export$f680877a34711e37)();
|
|
9878
|
+
let isSSR = ($b5e257d569688ac6$export$535bd6ca7f90a273)();
|
|
9879
|
+
let supportsBeforeMatch = !isSSR && 'onbeforematch' in document.body;
|
|
9880
|
+
let raf = ($dbSRa$react.useRef)(null);
|
|
9881
|
+
let handleBeforeMatch = ($dbSRa$react.useCallback)(()=>{
|
|
9882
|
+
// Wait a frame to revert browser's removal of hidden attribute
|
|
9883
|
+
raf.current = requestAnimationFrame(()=>{
|
|
9884
|
+
if (ref.current) ref.current.setAttribute('hidden', 'until-found');
|
|
9885
|
+
});
|
|
9886
|
+
// Force sync state update
|
|
9887
|
+
($iETbY$reactdom.flushSync)(()=>{
|
|
9888
|
+
state.toggle();
|
|
9889
|
+
});
|
|
9890
|
+
}, [
|
|
9891
|
+
ref,
|
|
9892
|
+
state
|
|
9893
|
+
]);
|
|
9894
|
+
// @ts-ignore https://github.com/facebook/react/pull/24741
|
|
9895
|
+
($e9faafb641e167db$export$90fc3a17d93f704c)(ref, 'beforematch', supportsBeforeMatch ? handleBeforeMatch : null);
|
|
9896
|
+
($f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{
|
|
9897
|
+
// Cancel any pending RAF to prevent stale updates
|
|
9898
|
+
if (raf.current) cancelAnimationFrame(raf.current);
|
|
9899
|
+
// Until React supports hidden="until-found": https://github.com/facebook/react/pull/24741
|
|
9900
|
+
if (supportsBeforeMatch && ref.current && !isDisabled) {
|
|
9901
|
+
if (state.isExpanded) ref.current.removeAttribute('hidden');
|
|
9902
|
+
else ref.current.setAttribute('hidden', 'until-found');
|
|
9903
|
+
}
|
|
9904
|
+
}, [
|
|
9905
|
+
isDisabled,
|
|
9906
|
+
ref,
|
|
9907
|
+
state.isExpanded,
|
|
9908
|
+
supportsBeforeMatch
|
|
9909
|
+
]);
|
|
9910
|
+
($dbSRa$react.useEffect)(()=>{
|
|
9911
|
+
return ()=>{
|
|
9912
|
+
if (raf.current) cancelAnimationFrame(raf.current);
|
|
9913
|
+
};
|
|
9914
|
+
}, []);
|
|
9915
|
+
return {
|
|
9916
|
+
buttonProps: {
|
|
9917
|
+
id: triggerId,
|
|
9918
|
+
'aria-expanded': state.isExpanded,
|
|
9919
|
+
'aria-controls': panelId,
|
|
9920
|
+
onPress: (e)=>{
|
|
9921
|
+
if (!isDisabled && e.pointerType !== 'keyboard') state.toggle();
|
|
9922
|
+
},
|
|
9923
|
+
isDisabled: isDisabled,
|
|
9924
|
+
onPressStart (e) {
|
|
9925
|
+
if (e.pointerType === 'keyboard' && !isDisabled) state.toggle();
|
|
9926
|
+
}
|
|
9927
|
+
},
|
|
9928
|
+
panelProps: {
|
|
9929
|
+
id: panelId,
|
|
9930
|
+
// This can be overridden at the panel element level.
|
|
9931
|
+
role: 'group',
|
|
9932
|
+
'aria-labelledby': triggerId,
|
|
9933
|
+
'aria-hidden': !state.isExpanded,
|
|
9934
|
+
hidden: supportsBeforeMatch ? true : !state.isExpanded
|
|
9935
|
+
}
|
|
9936
|
+
};
|
|
9937
|
+
}
|
|
9938
|
+
|
|
9671
9939
|
/*
|
|
9672
9940
|
* Copyright 2020 Adobe. All rights reserved.
|
|
9673
9941
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -9680,7 +9948,8 @@ function $40df3f8667284809$export$d55e7ee900f34e93(props, ref) {
|
|
|
9680
9948
|
* governing permissions and limitations under the License.
|
|
9681
9949
|
*/ const $ce9b18daab526bbd$export$5b9bb410392e3991 = new WeakMap();
|
|
9682
9950
|
function $ce9b18daab526bbd$export$f45c25170b9a99c2(state, key) {
|
|
9683
|
-
|
|
9951
|
+
var _listMap_get;
|
|
9952
|
+
let { id: id } = (_listMap_get = $ce9b18daab526bbd$export$5b9bb410392e3991.get(state)) !== null && _listMap_get !== void 0 ? _listMap_get : {};
|
|
9684
9953
|
if (!id) throw new Error('Unknown list');
|
|
9685
9954
|
return `${id}-${$ce9b18daab526bbd$export$e0c709538cb8ae18(key)}`;
|
|
9686
9955
|
}
|
|
@@ -10342,7 +10611,7 @@ function $5b9b5b5723db6ae1$export$be42ebdab07ae4c2(props) {
|
|
|
10342
10611
|
let interactionDescription = ($dbSRa$react.useMemo)(()=>{
|
|
10343
10612
|
let selectionMode = props.selectionManager.selectionMode;
|
|
10344
10613
|
let selectionBehavior = props.selectionManager.selectionBehavior;
|
|
10345
|
-
let message
|
|
10614
|
+
let message;
|
|
10346
10615
|
if (shouldLongPress) message = stringFormatter.format('longPressToSelect');
|
|
10347
10616
|
return selectionBehavior === 'replace' && selectionMode !== 'none' && props.hasItemActions ? message : undefined;
|
|
10348
10617
|
}, [
|
|
@@ -10464,26 +10733,39 @@ function $4e8b0456ef72939f$export$9610e69494fadfd2(props, state, ref) {
|
|
|
10464
10733
|
var _ref_current;
|
|
10465
10734
|
// Don't shift focus to the row if the active element is a element within the row already
|
|
10466
10735
|
// (e.g. clicking on a row button)
|
|
10467
|
-
if (keyWhenFocused.current != null && node.key !== keyWhenFocused.current || !((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(document.activeElement))) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
10736
|
+
if (ref.current !== null && (keyWhenFocused.current != null && node.key !== keyWhenFocused.current || !((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(document.activeElement)))) ($6a99195332edec8b$export$80f3e147d781571c)(ref.current);
|
|
10468
10737
|
};
|
|
10469
10738
|
let treeGridRowProps = {};
|
|
10470
10739
|
let hasChildRows;
|
|
10471
10740
|
let hasLink = state.selectionManager.isLink(node.key);
|
|
10472
10741
|
if (node != null && 'expandedKeys' in state) {
|
|
10742
|
+
var _state_collection_getChildren, _state_collection, _filter_at;
|
|
10473
10743
|
// TODO: ideally node.hasChildNodes would be a way to tell if a row has child nodes, but the row's contents make it so that value is always
|
|
10474
10744
|
// true...
|
|
10745
|
+
let children = (_state_collection_getChildren = (_state_collection = state.collection).getChildren) === null || _state_collection_getChildren === void 0 ? void 0 : _state_collection_getChildren.call(_state_collection, node.key);
|
|
10475
10746
|
hasChildRows = [
|
|
10476
|
-
...
|
|
10747
|
+
...children !== null && children !== void 0 ? children : []
|
|
10477
10748
|
].length > 1;
|
|
10478
10749
|
if (onAction == null && !hasLink && state.selectionManager.selectionMode === 'none' && hasChildRows) onAction = ()=>state.toggleKey(node.key);
|
|
10479
10750
|
let isExpanded = hasChildRows ? state.expandedKeys.has(node.key) : undefined;
|
|
10751
|
+
let setSize = 1;
|
|
10752
|
+
var _filter_at_index;
|
|
10753
|
+
if (node.level > 0 && (node === null || node === void 0 ? void 0 : node.parentKey) != null) {
|
|
10754
|
+
let parent = state.collection.getItem(node.parentKey);
|
|
10755
|
+
if (parent) {
|
|
10756
|
+
var _state_collection_getChildren1, _state_collection1;
|
|
10757
|
+
// siblings must exist because our original node exists, same with lastItem
|
|
10758
|
+
let siblings = (_state_collection_getChildren1 = (_state_collection1 = state.collection).getChildren) === null || _state_collection_getChildren1 === void 0 ? void 0 : _state_collection_getChildren1.call(_state_collection1, parent.key);
|
|
10759
|
+
setSize = ($c5a24bc478652b5f$export$7475b2c64539e4cf)(siblings).index + 1;
|
|
10760
|
+
}
|
|
10761
|
+
} else setSize = ((_filter_at_index = (_filter_at = [
|
|
10762
|
+
...state.collection
|
|
10763
|
+
].filter((row)=>row.level === 0).at(-1)) === null || _filter_at === void 0 ? void 0 : _filter_at.index) !== null && _filter_at_index !== void 0 ? _filter_at_index : 0) + 1;
|
|
10480
10764
|
treeGridRowProps = {
|
|
10481
10765
|
'aria-expanded': isExpanded,
|
|
10482
10766
|
'aria-level': node.level + 1,
|
|
10483
10767
|
'aria-posinset': (node === null || node === void 0 ? void 0 : node.index) + 1,
|
|
10484
|
-
'aria-setsize':
|
|
10485
|
-
...state.collection
|
|
10486
|
-
].filter((row)=>row.level === 0).at(-1).index + 1
|
|
10768
|
+
'aria-setsize': setSize
|
|
10487
10769
|
};
|
|
10488
10770
|
}
|
|
10489
10771
|
let { itemProps: itemProps, ...itemStates } = ($880e95eb8b93ba9a$export$ecf600387e221c37)({
|
|
@@ -10497,7 +10779,7 @@ function $4e8b0456ef72939f$export$9610e69494fadfd2(props, state, ref) {
|
|
|
10497
10779
|
linkBehavior: linkBehavior
|
|
10498
10780
|
});
|
|
10499
10781
|
let onKeyDown = (e)=>{
|
|
10500
|
-
if (!e.currentTarget.contains(e.target)) return;
|
|
10782
|
+
if (!e.currentTarget.contains(e.target) || !ref.current || !document.activeElement) return;
|
|
10501
10783
|
let walker = ($9bf71ea28793e738$export$2d6ec8fc375ceafa)(ref.current);
|
|
10502
10784
|
walker.currentNode = document.activeElement;
|
|
10503
10785
|
if ('expandedKeys' in state && document.activeElement === ref.current) {
|
|
@@ -10582,9 +10864,10 @@ function $4e8b0456ef72939f$export$9610e69494fadfd2(props, state, ref) {
|
|
|
10582
10864
|
// to the row above/below instead. We need to re-dispatch the event from a higher parent so it still
|
|
10583
10865
|
// bubbles and gets handled by useSelectableCollection.
|
|
10584
10866
|
if (!e.altKey && ref.current.contains(e.target)) {
|
|
10867
|
+
var _ref_current_parentElement;
|
|
10585
10868
|
e.stopPropagation();
|
|
10586
10869
|
e.preventDefault();
|
|
10587
|
-
ref.current.parentElement.dispatchEvent(new KeyboardEvent(e.nativeEvent.type, e.nativeEvent));
|
|
10870
|
+
(_ref_current_parentElement = ref.current.parentElement) === null || _ref_current_parentElement === void 0 ? void 0 : _ref_current_parentElement.dispatchEvent(new KeyboardEvent(e.nativeEvent.type, e.nativeEvent));
|
|
10588
10871
|
}
|
|
10589
10872
|
break;
|
|
10590
10873
|
case 'Tab':
|
|
@@ -10653,8 +10936,8 @@ function $4e8b0456ef72939f$export$9610e69494fadfd2(props, state, ref) {
|
|
|
10653
10936
|
};
|
|
10654
10937
|
}
|
|
10655
10938
|
function $4e8b0456ef72939f$var$last(walker) {
|
|
10656
|
-
let next;
|
|
10657
|
-
let last;
|
|
10939
|
+
let next = null;
|
|
10940
|
+
let last = null;
|
|
10658
10941
|
do {
|
|
10659
10942
|
last = walker.lastChild();
|
|
10660
10943
|
if (last) next = last;
|
|
@@ -10896,7 +11179,7 @@ function $58aed456727eb0f3$export$e64b2f635402ca43(props, state, ref) {
|
|
|
10896
11179
|
usage: 'search',
|
|
10897
11180
|
sensitivity: 'base'
|
|
10898
11181
|
});
|
|
10899
|
-
let delegate = ($dbSRa$react.useMemo)(()=>keyboardDelegate || new ($2a25aae57d74318e$export$a05409b8bb224a5a)(state.collection, state.disabledKeys,
|
|
11182
|
+
let delegate = ($dbSRa$react.useMemo)(()=>keyboardDelegate || new ($2a25aae57d74318e$export$a05409b8bb224a5a)(state.collection, state.disabledKeys, ref, collator), [
|
|
10900
11183
|
keyboardDelegate,
|
|
10901
11184
|
state.collection,
|
|
10902
11185
|
state.disabledKeys,
|
|
@@ -10910,17 +11193,19 @@ function $58aed456727eb0f3$export$e64b2f635402ca43(props, state, ref) {
|
|
|
10910
11193
|
switch(e.key){
|
|
10911
11194
|
case 'ArrowLeft':
|
|
10912
11195
|
{
|
|
11196
|
+
var _delegate_getKeyAbove, _delegate_getFirstKey;
|
|
10913
11197
|
// prevent scrolling containers
|
|
10914
11198
|
e.preventDefault();
|
|
10915
|
-
let key = state.selectedKey != null ? delegate.getKeyAbove(state.selectedKey) : delegate.getFirstKey();
|
|
11199
|
+
let key = state.selectedKey != null ? (_delegate_getKeyAbove = delegate.getKeyAbove) === null || _delegate_getKeyAbove === void 0 ? void 0 : _delegate_getKeyAbove.call(delegate, state.selectedKey) : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate);
|
|
10916
11200
|
if (key) state.setSelectedKey(key);
|
|
10917
11201
|
break;
|
|
10918
11202
|
}
|
|
10919
11203
|
case 'ArrowRight':
|
|
10920
11204
|
{
|
|
11205
|
+
var _delegate_getKeyBelow, _delegate_getFirstKey1;
|
|
10921
11206
|
// prevent scrolling containers
|
|
10922
11207
|
e.preventDefault();
|
|
10923
|
-
let key = state.selectedKey != null ? delegate.getKeyBelow(state.selectedKey) : delegate.getFirstKey();
|
|
11208
|
+
let key = state.selectedKey != null ? (_delegate_getKeyBelow = delegate.getKeyBelow) === null || _delegate_getKeyBelow === void 0 ? void 0 : _delegate_getKeyBelow.call(delegate, state.selectedKey) : (_delegate_getFirstKey1 = delegate.getFirstKey) === null || _delegate_getFirstKey1 === void 0 ? void 0 : _delegate_getFirstKey1.call(delegate);
|
|
10924
11209
|
if (key) state.setSelectedKey(key);
|
|
10925
11210
|
break;
|
|
10926
11211
|
}
|
|
@@ -10958,7 +11243,8 @@ function $58aed456727eb0f3$export$e64b2f635402ca43(props, state, ref) {
|
|
|
10958
11243
|
...labelProps,
|
|
10959
11244
|
onClick: ()=>{
|
|
10960
11245
|
if (!props.isDisabled) {
|
|
10961
|
-
|
|
11246
|
+
var _ref_current;
|
|
11247
|
+
(_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.focus();
|
|
10962
11248
|
// Show the focus ring so the user knows where focus went
|
|
10963
11249
|
($507fabe10e71c6fb$export$8397ddfc504fdb9a)('keyboard');
|
|
10964
11250
|
}
|
|
@@ -11031,17 +11317,18 @@ function $58aed456727eb0f3$export$e64b2f635402ca43(props, state, ref) {
|
|
|
11031
11317
|
|
|
11032
11318
|
|
|
11033
11319
|
|
|
11034
|
-
|
|
11035
11320
|
function $bdd25dc72710631f$export$f809e80f58e251d1(props, state, triggerRef) {
|
|
11036
11321
|
let data = ($58aed456727eb0f3$export$703601b7e90536f8).get(state) || {};
|
|
11037
11322
|
let { autoComplete: autoComplete, name: name = data.name, isDisabled: isDisabled = data.isDisabled } = props;
|
|
11038
11323
|
let { validationBehavior: validationBehavior, isRequired: isRequired } = data;
|
|
11039
|
-
let modality = ($507fabe10e71c6fb$export$98e20ec92f614cfe)();
|
|
11040
11324
|
let { visuallyHiddenProps: visuallyHiddenProps } = ($5c3e21d68f1c4674$export$a966af930f325cab)();
|
|
11041
11325
|
($99facab73266f662$export$5add1d006293d136)(props.selectRef, state.selectedKey, state.setSelectedKey);
|
|
11042
11326
|
($e93e671b31057976$export$b8473d3665f3a75a)({
|
|
11043
11327
|
validationBehavior: validationBehavior,
|
|
11044
|
-
focus: ()=>
|
|
11328
|
+
focus: ()=>{
|
|
11329
|
+
var _triggerRef_current;
|
|
11330
|
+
return (_triggerRef_current = triggerRef.current) === null || _triggerRef_current === void 0 ? void 0 : _triggerRef_current.focus();
|
|
11331
|
+
}
|
|
11045
11332
|
}, state, props.selectRef);
|
|
11046
11333
|
var _state_selectedKey;
|
|
11047
11334
|
// In Safari, the <select> cannot have `display: none` or `hidden` for autofill to work.
|
|
@@ -11050,18 +11337,6 @@ function $bdd25dc72710631f$export$f809e80f58e251d1(props, state, triggerRef) {
|
|
|
11050
11337
|
// The solution is to use <VisuallyHidden> to hide the elements, which clips the elements to a
|
|
11051
11338
|
// 1px rectangle. In addition, we hide from screen readers with aria-hidden, and make the <select>
|
|
11052
11339
|
// non tabbable with tabIndex={-1}.
|
|
11053
|
-
//
|
|
11054
|
-
// In mobile browsers, there are next/previous buttons above the software keyboard for navigating
|
|
11055
|
-
// between fields in a form. These only support native form inputs that are tabbable. In order to
|
|
11056
|
-
// support those, an additional hidden input is used to marshall focus to the button. It is tabbable
|
|
11057
|
-
// except when the button is focused, so that shift tab works properly to go to the actual previous
|
|
11058
|
-
// input in the form. Using the <select> for this also works, but Safari on iOS briefly flashes
|
|
11059
|
-
// the native menu on focus, so this isn't ideal. A font-size of 16px or greater is required to
|
|
11060
|
-
// prevent Safari from zooming in on the input when it is focused.
|
|
11061
|
-
//
|
|
11062
|
-
// If the current interaction modality is null, then the user hasn't interacted with the page yet.
|
|
11063
|
-
// In this case, we set the tabIndex to -1 on the input element so that automated accessibility
|
|
11064
|
-
// checkers don't throw false-positives about focusable elements inside an aria-hidden parent.
|
|
11065
11340
|
return {
|
|
11066
11341
|
containerProps: {
|
|
11067
11342
|
...visuallyHiddenProps,
|
|
@@ -11072,13 +11347,9 @@ function $bdd25dc72710631f$export$f809e80f58e251d1(props, state, triggerRef) {
|
|
|
11072
11347
|
['data-a11y-ignore']: 'aria-hidden-focus'
|
|
11073
11348
|
},
|
|
11074
11349
|
inputProps: {
|
|
11075
|
-
type: 'text',
|
|
11076
|
-
tabIndex: modality == null || state.isFocused || state.isOpen ? -1 : 0,
|
|
11077
11350
|
style: {
|
|
11078
|
-
|
|
11079
|
-
}
|
|
11080
|
-
onFocus: ()=>triggerRef.current.focus(),
|
|
11081
|
-
disabled: isDisabled
|
|
11351
|
+
display: 'none'
|
|
11352
|
+
}
|
|
11082
11353
|
},
|
|
11083
11354
|
selectProps: {
|
|
11084
11355
|
tabIndex: -1,
|
|
@@ -11094,7 +11365,7 @@ function $bdd25dc72710631f$export$f809e80f58e251d1(props, state, triggerRef) {
|
|
|
11094
11365
|
function $bdd25dc72710631f$export$cbd84cdb2e668835(props) {
|
|
11095
11366
|
let { state: state, triggerRef: triggerRef, label: label, name: name, isDisabled: isDisabled } = props;
|
|
11096
11367
|
let selectRef = ($dbSRa$react.useRef)(null);
|
|
11097
|
-
let { containerProps: containerProps,
|
|
11368
|
+
let { containerProps: containerProps, selectProps: selectProps } = $bdd25dc72710631f$export$f809e80f58e251d1({
|
|
11098
11369
|
...props,
|
|
11099
11370
|
selectRef: selectRef
|
|
11100
11371
|
}, state, triggerRef);
|
|
@@ -11105,14 +11376,14 @@ function $bdd25dc72710631f$export$cbd84cdb2e668835(props) {
|
|
|
11105
11376
|
if (state.collection.size <= 300) return /*#__PURE__*/ ($dbSRa$react).createElement("div", {
|
|
11106
11377
|
...containerProps,
|
|
11107
11378
|
"data-testid": "hidden-select-container"
|
|
11108
|
-
}, /*#__PURE__*/ ($dbSRa$react).createElement("
|
|
11379
|
+
}, /*#__PURE__*/ ($dbSRa$react).createElement("label", null, label, /*#__PURE__*/ ($dbSRa$react).createElement("select", {
|
|
11109
11380
|
...selectProps,
|
|
11110
11381
|
ref: selectRef
|
|
11111
11382
|
}, /*#__PURE__*/ ($dbSRa$react).createElement("option", null), [
|
|
11112
11383
|
...state.collection.getKeys()
|
|
11113
11384
|
].map((key)=>{
|
|
11114
11385
|
let item = state.collection.getItem(key);
|
|
11115
|
-
if (item.type === 'item') return /*#__PURE__*/ ($dbSRa$react).createElement("option", {
|
|
11386
|
+
if (item && item.type === 'item') return /*#__PURE__*/ ($dbSRa$react).createElement("option", {
|
|
11116
11387
|
key: item.key,
|
|
11117
11388
|
value: item.key
|
|
11118
11389
|
}, item.textValue);
|
|
@@ -11547,7 +11818,6 @@ function $fc6126c82a4601f1$export$3f568fff7dff2f03(props, state, ref) {
|
|
|
11547
11818
|
let description = onRemove && (modality === 'keyboard' || modality === 'virtual') ? stringFormatter.format('removeDescription') : '';
|
|
11548
11819
|
let descProps = ($ef06256079686ba0$export$f8aeda7b10753fa1)(description);
|
|
11549
11820
|
let isFocused = item.key === state.selectionManager.focusedKey;
|
|
11550
|
-
// @ts-ignore - data attributes are ok but TS doesn't know about them.
|
|
11551
11821
|
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(item.props);
|
|
11552
11822
|
let linkProps = ($ea8dcbcb9ea1b556$export$bdc77b0c0a3a85d6)(item.props);
|
|
11553
11823
|
return {
|
|
@@ -11720,6 +11990,103 @@ function $4e1b34546679e357$export$a6da6c504e4bba8b(props, state, ref) {
|
|
|
11720
11990
|
*/
|
|
11721
11991
|
|
|
11722
11992
|
|
|
11993
|
+
const $4f118338184dc1d9$export$e2509388b49734e7 = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
11994
|
+
function $4f118338184dc1d9$var$Link(props, ref) {
|
|
11995
|
+
[props, ref] = ($64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $4f118338184dc1d9$export$e2509388b49734e7);
|
|
11996
|
+
let ElementType = props.href && !props.isDisabled ? 'a' : 'span';
|
|
11997
|
+
let { linkProps: linkProps, isPressed: isPressed } = ($298d61e98472621b$export$dcf14c9974fe2767)({
|
|
11998
|
+
...props,
|
|
11999
|
+
elementType: ElementType
|
|
12000
|
+
}, ref);
|
|
12001
|
+
let { hoverProps: hoverProps, isHovered: isHovered } = ($6179b936705e76d3$export$ae780daf29e6d456)(props);
|
|
12002
|
+
let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = ($f7dceffc5ad7768b$export$4e328f61c538687f)();
|
|
12003
|
+
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
12004
|
+
...props,
|
|
12005
|
+
defaultClassName: 'react-aria-Link',
|
|
12006
|
+
values: {
|
|
12007
|
+
isCurrent: !!props['aria-current'],
|
|
12008
|
+
isDisabled: props.isDisabled || false,
|
|
12009
|
+
isPressed: isPressed,
|
|
12010
|
+
isHovered: isHovered,
|
|
12011
|
+
isFocused: isFocused,
|
|
12012
|
+
isFocusVisible: isFocusVisible
|
|
12013
|
+
}
|
|
12014
|
+
});
|
|
12015
|
+
return /*#__PURE__*/ ($dbSRa$react).createElement(ElementType, {
|
|
12016
|
+
ref: ref,
|
|
12017
|
+
slot: props.slot || undefined,
|
|
12018
|
+
...($3ef42575df84b30b$export$9d1611c77c2fe928)(renderProps, linkProps, hoverProps, focusProps),
|
|
12019
|
+
"data-focused": isFocused || undefined,
|
|
12020
|
+
"data-hovered": isHovered || undefined,
|
|
12021
|
+
"data-pressed": isPressed || undefined,
|
|
12022
|
+
"data-focus-visible": isFocusVisible || undefined,
|
|
12023
|
+
"data-current": !!props['aria-current'] || undefined,
|
|
12024
|
+
"data-disabled": props.isDisabled || undefined
|
|
12025
|
+
}, renderProps.children);
|
|
12026
|
+
}
|
|
12027
|
+
/**
|
|
12028
|
+
* A link allows a user to navigate to another page or resource within a web page
|
|
12029
|
+
* or application.
|
|
12030
|
+
*/ const $4f118338184dc1d9$export$a6c7ac8248d6e38a = /*#__PURE__*/ ($dbSRa$react.forwardRef)($4f118338184dc1d9$var$Link);
|
|
12031
|
+
|
|
12032
|
+
/*
|
|
12033
|
+
* Copyright 2022 Adobe. All rights reserved.
|
|
12034
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
12035
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
12036
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
12037
|
+
*
|
|
12038
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
12039
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
12040
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
12041
|
+
* governing permissions and limitations under the License.
|
|
12042
|
+
*/
|
|
12043
|
+
|
|
12044
|
+
|
|
12045
|
+
const $01b77f81d0f07f68$export$75b6ee27786ba447 = /*#__PURE__*/ ($dbSRa$react.createContext)({});
|
|
12046
|
+
function $01b77f81d0f07f68$var$Label(props, ref) {
|
|
12047
|
+
[props, ref] = ($64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $01b77f81d0f07f68$export$75b6ee27786ba447);
|
|
12048
|
+
let { elementType: ElementType = 'label', ...labelProps } = props;
|
|
12049
|
+
// @ts-ignore
|
|
12050
|
+
return /*#__PURE__*/ ($dbSRa$react).createElement(ElementType, {
|
|
12051
|
+
className: "react-aria-Label",
|
|
12052
|
+
...labelProps,
|
|
12053
|
+
ref: ref
|
|
12054
|
+
});
|
|
12055
|
+
}
|
|
12056
|
+
const $01b77f81d0f07f68$export$b04be29aa201d4f5 = /*#__PURE__*/ ($f39a9eba43920ace$export$86427a43e3e48ebb)($01b77f81d0f07f68$var$Label);
|
|
12057
|
+
|
|
12058
|
+
/*
|
|
12059
|
+
* Copyright 2022 Adobe. All rights reserved.
|
|
12060
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
12061
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
12062
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
12063
|
+
*
|
|
12064
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
12065
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
12066
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
12067
|
+
* governing permissions and limitations under the License.
|
|
12068
|
+
*/
|
|
12069
|
+
|
|
12070
|
+
|
|
12071
|
+
|
|
12072
|
+
|
|
12073
|
+
const $0393f8ab869a0f1a$export$e9f3bf65a26ce129 = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
12074
|
+
|
|
12075
|
+
/*
|
|
12076
|
+
* Copyright 2022 Adobe. All rights reserved.
|
|
12077
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
12078
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
12079
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
12080
|
+
*
|
|
12081
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
12082
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
12083
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
12084
|
+
* governing permissions and limitations under the License.
|
|
12085
|
+
*/
|
|
12086
|
+
|
|
12087
|
+
|
|
12088
|
+
|
|
12089
|
+
|
|
11723
12090
|
|
|
11724
12091
|
|
|
11725
12092
|
const $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes = new Set([
|
|
@@ -11735,35 +12102,88 @@ const $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes = new Set([
|
|
|
11735
12102
|
const $d2b4bc8c273e7be6$export$24d547caef80ccd1 = /*#__PURE__*/ ($dbSRa$react.createContext)({});
|
|
11736
12103
|
function $d2b4bc8c273e7be6$var$Button(props, ref) {
|
|
11737
12104
|
[props, ref] = ($64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $d2b4bc8c273e7be6$export$24d547caef80ccd1);
|
|
12105
|
+
props = $d2b4bc8c273e7be6$var$disablePendingProps(props);
|
|
11738
12106
|
let ctx = props;
|
|
12107
|
+
let { isPending: isPending } = ctx;
|
|
11739
12108
|
let { buttonProps: buttonProps, isPressed: isPressed } = ($701a24aa0da5b062$export$ea18c227d4417cc3)(props, ref);
|
|
11740
12109
|
let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = ($f7dceffc5ad7768b$export$4e328f61c538687f)(props);
|
|
11741
|
-
let { hoverProps: hoverProps, isHovered: isHovered } = ($6179b936705e76d3$export$ae780daf29e6d456)(
|
|
12110
|
+
let { hoverProps: hoverProps, isHovered: isHovered } = ($6179b936705e76d3$export$ae780daf29e6d456)({
|
|
12111
|
+
...props,
|
|
12112
|
+
isDisabled: props.isDisabled || isPending
|
|
12113
|
+
});
|
|
12114
|
+
let renderValues = {
|
|
12115
|
+
isHovered: isHovered,
|
|
12116
|
+
isPressed: (ctx.isPressed || isPressed) && !isPending,
|
|
12117
|
+
isFocused: isFocused,
|
|
12118
|
+
isFocusVisible: isFocusVisible,
|
|
12119
|
+
isDisabled: props.isDisabled || false,
|
|
12120
|
+
isPending: isPending !== null && isPending !== void 0 ? isPending : false
|
|
12121
|
+
};
|
|
11742
12122
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
11743
12123
|
...props,
|
|
11744
|
-
values:
|
|
11745
|
-
isHovered: isHovered,
|
|
11746
|
-
isPressed: isPressed,
|
|
11747
|
-
isFocused: isFocused,
|
|
11748
|
-
isFocusVisible: isFocusVisible,
|
|
11749
|
-
isDisabled: props.isDisabled || false
|
|
11750
|
-
},
|
|
12124
|
+
values: renderValues,
|
|
11751
12125
|
defaultClassName: 'react-aria-Button'
|
|
11752
12126
|
});
|
|
12127
|
+
let buttonId = ($bdb11010cef70236$export$f680877a34711e37)(buttonProps.id);
|
|
12128
|
+
let progressId = ($bdb11010cef70236$export$f680877a34711e37)();
|
|
12129
|
+
let ariaLabelledby = buttonProps['aria-labelledby'];
|
|
12130
|
+
if (isPending) {
|
|
12131
|
+
// aria-labelledby wins over aria-label
|
|
12132
|
+
// https://www.w3.org/TR/accname-1.2/#computation-steps
|
|
12133
|
+
if (ariaLabelledby) ariaLabelledby = `${ariaLabelledby} ${progressId}`;
|
|
12134
|
+
else if (buttonProps['aria-label']) ariaLabelledby = `${buttonId} ${progressId}`;
|
|
12135
|
+
}
|
|
12136
|
+
let wasPending = ($dbSRa$react.useRef)(isPending);
|
|
12137
|
+
($dbSRa$react.useEffect)(()=>{
|
|
12138
|
+
let message = {
|
|
12139
|
+
'aria-labelledby': ariaLabelledby || buttonId
|
|
12140
|
+
};
|
|
12141
|
+
if (!wasPending.current && isFocused && isPending) ($319e236875307eab$export$a9b970dcc4ae71a9)(message, 'assertive');
|
|
12142
|
+
else if (wasPending.current && isFocused && !isPending) ($319e236875307eab$export$a9b970dcc4ae71a9)(message, 'assertive');
|
|
12143
|
+
wasPending.current = isPending;
|
|
12144
|
+
}, [
|
|
12145
|
+
isPending,
|
|
12146
|
+
isFocused,
|
|
12147
|
+
ariaLabelledby,
|
|
12148
|
+
buttonId
|
|
12149
|
+
]);
|
|
11753
12150
|
return /*#__PURE__*/ ($dbSRa$react).createElement("button", {
|
|
11754
12151
|
...($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props, {
|
|
11755
12152
|
propNames: $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes
|
|
11756
12153
|
}),
|
|
11757
12154
|
...($3ef42575df84b30b$export$9d1611c77c2fe928)(buttonProps, focusProps, hoverProps),
|
|
11758
12155
|
...renderProps,
|
|
12156
|
+
id: buttonId,
|
|
11759
12157
|
ref: ref,
|
|
12158
|
+
"aria-labelledby": ariaLabelledby,
|
|
11760
12159
|
slot: props.slot || undefined,
|
|
12160
|
+
"aria-disabled": isPending ? 'true' : buttonProps['aria-disabled'],
|
|
11761
12161
|
"data-disabled": props.isDisabled || undefined,
|
|
11762
|
-
"data-pressed":
|
|
12162
|
+
"data-pressed": renderValues.isPressed || undefined,
|
|
11763
12163
|
"data-hovered": isHovered || undefined,
|
|
11764
12164
|
"data-focused": isFocused || undefined,
|
|
12165
|
+
"data-pending": isPending || undefined,
|
|
11765
12166
|
"data-focus-visible": isFocusVisible || undefined
|
|
11766
|
-
})
|
|
12167
|
+
}, /*#__PURE__*/ ($dbSRa$react).createElement(($0393f8ab869a0f1a$export$e9f3bf65a26ce129).Provider, {
|
|
12168
|
+
value: {
|
|
12169
|
+
id: progressId
|
|
12170
|
+
}
|
|
12171
|
+
}, renderProps.children));
|
|
12172
|
+
}
|
|
12173
|
+
function $d2b4bc8c273e7be6$var$disablePendingProps(props) {
|
|
12174
|
+
// Don't allow interaction while isPending is true
|
|
12175
|
+
if (props.isPending) {
|
|
12176
|
+
props.onPress = undefined;
|
|
12177
|
+
props.onPressStart = undefined;
|
|
12178
|
+
props.onPressEnd = undefined;
|
|
12179
|
+
props.onPressChange = undefined;
|
|
12180
|
+
props.onPressUp = undefined;
|
|
12181
|
+
props.onKeyDown = undefined;
|
|
12182
|
+
props.onKeyUp = undefined;
|
|
12183
|
+
props.onClick = undefined;
|
|
12184
|
+
props.href = undefined;
|
|
12185
|
+
}
|
|
12186
|
+
return props;
|
|
11767
12187
|
}
|
|
11768
12188
|
/**
|
|
11769
12189
|
* A button allows a user to perform an action, with mouse, touch, and keyboard interactions.
|
|
@@ -11878,11 +12298,13 @@ function $587d3ad58be6d31f$export$daff6da51032a415(props = {}) {
|
|
|
11878
12298
|
}
|
|
11879
12299
|
getKeyBefore(key) {
|
|
11880
12300
|
let node = this.keyMap.get(key);
|
|
11881
|
-
|
|
12301
|
+
var _node_prevKey;
|
|
12302
|
+
return node ? (_node_prevKey = node.prevKey) !== null && _node_prevKey !== void 0 ? _node_prevKey : null : null;
|
|
11882
12303
|
}
|
|
11883
12304
|
getKeyAfter(key) {
|
|
11884
12305
|
let node = this.keyMap.get(key);
|
|
11885
|
-
|
|
12306
|
+
var _node_nextKey;
|
|
12307
|
+
return node ? (_node_nextKey = node.nextKey) !== null && _node_nextKey !== void 0 ? _node_nextKey : null : null;
|
|
11886
12308
|
}
|
|
11887
12309
|
getFirstKey() {
|
|
11888
12310
|
return this.firstKey;
|
|
@@ -11891,7 +12313,8 @@ function $587d3ad58be6d31f$export$daff6da51032a415(props = {}) {
|
|
|
11891
12313
|
return this.lastKey;
|
|
11892
12314
|
}
|
|
11893
12315
|
getItem(key) {
|
|
11894
|
-
|
|
12316
|
+
var _this_keyMap_get;
|
|
12317
|
+
return (_this_keyMap_get = this.keyMap.get(key)) !== null && _this_keyMap_get !== void 0 ? _this_keyMap_get : null;
|
|
11895
12318
|
}
|
|
11896
12319
|
at(idx) {
|
|
11897
12320
|
const keys = [
|
|
@@ -11905,13 +12328,15 @@ function $587d3ad58be6d31f$export$daff6da51032a415(props = {}) {
|
|
|
11905
12328
|
}
|
|
11906
12329
|
constructor(nodes){
|
|
11907
12330
|
this.keyMap = new Map();
|
|
12331
|
+
this.firstKey = null;
|
|
12332
|
+
this.lastKey = null;
|
|
11908
12333
|
this.iterable = nodes;
|
|
11909
12334
|
let visit = (node)=>{
|
|
11910
12335
|
this.keyMap.set(node.key, node);
|
|
11911
12336
|
if (node.childNodes && node.type === 'section') for (let child of node.childNodes)visit(child);
|
|
11912
12337
|
};
|
|
11913
12338
|
for (let node of nodes)visit(node);
|
|
11914
|
-
let last;
|
|
12339
|
+
let last = null;
|
|
11915
12340
|
let index = 0;
|
|
11916
12341
|
for (let [key, node] of this.keyMap){
|
|
11917
12342
|
if (last) {
|
|
@@ -11927,7 +12352,8 @@ function $587d3ad58be6d31f$export$daff6da51032a415(props = {}) {
|
|
|
11927
12352
|
// If it isn't the last node, last.nextKey will properly set at start of new loop
|
|
11928
12353
|
last.nextKey = undefined;
|
|
11929
12354
|
}
|
|
11930
|
-
|
|
12355
|
+
var _last_key;
|
|
12356
|
+
this.lastKey = (_last_key = last === null || last === void 0 ? void 0 : last.key) !== null && _last_key !== void 0 ? _last_key : null;
|
|
11931
12357
|
}
|
|
11932
12358
|
}
|
|
11933
12359
|
|
|
@@ -11945,11 +12371,11 @@ function $587d3ad58be6d31f$export$daff6da51032a415(props = {}) {
|
|
|
11945
12371
|
constructor(keys, anchorKey, currentKey){
|
|
11946
12372
|
super(keys);
|
|
11947
12373
|
if (keys instanceof $e40ea825a81a3709$export$52baac22726c72bf) {
|
|
11948
|
-
this.anchorKey = anchorKey
|
|
11949
|
-
this.currentKey = currentKey
|
|
12374
|
+
this.anchorKey = anchorKey !== null && anchorKey !== void 0 ? anchorKey : keys.anchorKey;
|
|
12375
|
+
this.currentKey = currentKey !== null && currentKey !== void 0 ? currentKey : keys.currentKey;
|
|
11950
12376
|
} else {
|
|
11951
|
-
this.anchorKey = anchorKey;
|
|
11952
|
-
this.currentKey = currentKey;
|
|
12377
|
+
this.anchorKey = anchorKey !== null && anchorKey !== void 0 ? anchorKey : null;
|
|
12378
|
+
this.currentKey = currentKey !== null && currentKey !== void 0 ? currentKey : null;
|
|
11953
12379
|
}
|
|
11954
12380
|
}
|
|
11955
12381
|
}
|
|
@@ -11975,7 +12401,7 @@ function $7af3f5b51489e0b5$var$equalSets(setA, setB) {
|
|
|
11975
12401
|
return true;
|
|
11976
12402
|
}
|
|
11977
12403
|
function $7af3f5b51489e0b5$export$253fe78d46329472(props) {
|
|
11978
|
-
let { selectionMode: selectionMode = 'none', disallowEmptySelection: disallowEmptySelection, allowDuplicateSelectionEvents: allowDuplicateSelectionEvents, selectionBehavior: selectionBehaviorProp = 'toggle', disabledBehavior: disabledBehavior = 'all' } = props;
|
|
12404
|
+
let { selectionMode: selectionMode = 'none', disallowEmptySelection: disallowEmptySelection = false, allowDuplicateSelectionEvents: allowDuplicateSelectionEvents, selectionBehavior: selectionBehaviorProp = 'toggle', disabledBehavior: disabledBehavior = 'all' } = props;
|
|
11979
12405
|
// We want synchronous updates to `isFocused` and `focusedKey` after their setters are called.
|
|
11980
12406
|
// But we also need to trigger a react re-render. So, we have both a ref (sync) and state (async).
|
|
11981
12407
|
let isFocusedRef = ($dbSRa$react.useRef)(false);
|
|
@@ -12114,8 +12540,9 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12114
12540
|
* Returns whether a key is selected.
|
|
12115
12541
|
*/ isSelected(key) {
|
|
12116
12542
|
if (this.state.selectionMode === 'none') return false;
|
|
12117
|
-
|
|
12118
|
-
|
|
12543
|
+
let mappedKey = this.getKey(key);
|
|
12544
|
+
if (mappedKey == null) return false;
|
|
12545
|
+
return this.state.selectedKeys === 'all' ? this.canSelectItem(mappedKey) : this.state.selectedKeys.has(mappedKey);
|
|
12119
12546
|
}
|
|
12120
12547
|
/**
|
|
12121
12548
|
* Whether the selection is empty.
|
|
@@ -12139,7 +12566,8 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12139
12566
|
let item = this.collection.getItem(key);
|
|
12140
12567
|
if (!first || item && ($c5a24bc478652b5f$export$8c434b3a7a4dad6)(this.collection, item, first) < 0) first = item;
|
|
12141
12568
|
}
|
|
12142
|
-
|
|
12569
|
+
var _first_key;
|
|
12570
|
+
return (_first_key = first === null || first === void 0 ? void 0 : first.key) !== null && _first_key !== void 0 ? _first_key : null;
|
|
12143
12571
|
}
|
|
12144
12572
|
get lastSelectedKey() {
|
|
12145
12573
|
let last = null;
|
|
@@ -12147,7 +12575,8 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12147
12575
|
let item = this.collection.getItem(key);
|
|
12148
12576
|
if (!last || item && ($c5a24bc478652b5f$export$8c434b3a7a4dad6)(this.collection, item, last) > 0) last = item;
|
|
12149
12577
|
}
|
|
12150
|
-
|
|
12578
|
+
var _last_key;
|
|
12579
|
+
return (_last_key = last === null || last === void 0 ? void 0 : last.key) !== null && _last_key !== void 0 ? _last_key : null;
|
|
12151
12580
|
}
|
|
12152
12581
|
get disabledKeys() {
|
|
12153
12582
|
return this.state.disabledKeys;
|
|
@@ -12163,18 +12592,21 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12163
12592
|
this.replaceSelection(toKey);
|
|
12164
12593
|
return;
|
|
12165
12594
|
}
|
|
12166
|
-
|
|
12595
|
+
let mappedToKey = this.getKey(toKey);
|
|
12596
|
+
if (mappedToKey == null) return;
|
|
12167
12597
|
let selection;
|
|
12168
12598
|
// Only select the one key if coming from a select all.
|
|
12169
12599
|
if (this.state.selectedKeys === 'all') selection = new ($e40ea825a81a3709$export$52baac22726c72bf)([
|
|
12170
|
-
|
|
12171
|
-
],
|
|
12600
|
+
mappedToKey
|
|
12601
|
+
], mappedToKey, mappedToKey);
|
|
12172
12602
|
else {
|
|
12173
12603
|
let selectedKeys = this.state.selectedKeys;
|
|
12174
|
-
|
|
12175
|
-
|
|
12176
|
-
|
|
12177
|
-
|
|
12604
|
+
var _selectedKeys_anchorKey;
|
|
12605
|
+
let anchorKey = (_selectedKeys_anchorKey = selectedKeys.anchorKey) !== null && _selectedKeys_anchorKey !== void 0 ? _selectedKeys_anchorKey : mappedToKey;
|
|
12606
|
+
selection = new ($e40ea825a81a3709$export$52baac22726c72bf)(selectedKeys, anchorKey, mappedToKey);
|
|
12607
|
+
var _selectedKeys_currentKey;
|
|
12608
|
+
for (let key of this.getKeyRange(anchorKey, (_selectedKeys_currentKey = selectedKeys.currentKey) !== null && _selectedKeys_currentKey !== void 0 ? _selectedKeys_currentKey : mappedToKey))selection.delete(key);
|
|
12609
|
+
for (let key of this.getKeyRange(mappedToKey, anchorKey))if (this.canSelectItem(key)) selection.add(key);
|
|
12178
12610
|
}
|
|
12179
12611
|
this.state.setSelectedKeys(selection);
|
|
12180
12612
|
}
|
|
@@ -12188,11 +12620,13 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12188
12620
|
return [];
|
|
12189
12621
|
}
|
|
12190
12622
|
getKeyRangeInternal(from, to) {
|
|
12623
|
+
var _this_layoutDelegate;
|
|
12624
|
+
if ((_this_layoutDelegate = this.layoutDelegate) === null || _this_layoutDelegate === void 0 ? void 0 : _this_layoutDelegate.getKeyRange) return this.layoutDelegate.getKeyRange(from, to);
|
|
12191
12625
|
let keys = [];
|
|
12192
12626
|
let key = from;
|
|
12193
|
-
while(key){
|
|
12627
|
+
while(key != null){
|
|
12194
12628
|
let item = this.collection.getItem(key);
|
|
12195
|
-
if (item && item.type === 'item' || item.type === 'cell' && this.allowsCellSelection) keys.push(key);
|
|
12629
|
+
if (item && (item.type === 'item' || item.type === 'cell' && this.allowsCellSelection)) keys.push(key);
|
|
12196
12630
|
if (key === to) return keys;
|
|
12197
12631
|
key = this.collection.getKeyAfter(key);
|
|
12198
12632
|
}
|
|
@@ -12205,7 +12639,7 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12205
12639
|
// If cell selection is allowed, just return the key.
|
|
12206
12640
|
if (item.type === 'cell' && this.allowsCellSelection) return key;
|
|
12207
12641
|
// Find a parent item to select
|
|
12208
|
-
while(item.type !== 'item' && item.parentKey != null)item = this.collection.getItem(item.parentKey);
|
|
12642
|
+
while(item && item.type !== 'item' && item.parentKey != null)item = this.collection.getItem(item.parentKey);
|
|
12209
12643
|
if (!item || item.type !== 'item') return null;
|
|
12210
12644
|
return item.key;
|
|
12211
12645
|
}
|
|
@@ -12217,14 +12651,14 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12217
12651
|
this.replaceSelection(key);
|
|
12218
12652
|
return;
|
|
12219
12653
|
}
|
|
12220
|
-
|
|
12221
|
-
if (
|
|
12654
|
+
let mappedKey = this.getKey(key);
|
|
12655
|
+
if (mappedKey == null) return;
|
|
12222
12656
|
let keys = new ($e40ea825a81a3709$export$52baac22726c72bf)(this.state.selectedKeys === 'all' ? this.getSelectAllKeys() : this.state.selectedKeys);
|
|
12223
|
-
if (keys.has(
|
|
12224
|
-
else if (this.canSelectItem(
|
|
12225
|
-
keys.add(
|
|
12226
|
-
keys.anchorKey =
|
|
12227
|
-
keys.currentKey =
|
|
12657
|
+
if (keys.has(mappedKey)) keys.delete(mappedKey);
|
|
12658
|
+
else if (this.canSelectItem(mappedKey)) {
|
|
12659
|
+
keys.add(mappedKey);
|
|
12660
|
+
keys.anchorKey = mappedKey;
|
|
12661
|
+
keys.currentKey = mappedKey;
|
|
12228
12662
|
}
|
|
12229
12663
|
if (this.disallowEmptySelection && keys.size === 0) return;
|
|
12230
12664
|
this.state.setSelectedKeys(keys);
|
|
@@ -12233,11 +12667,11 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12233
12667
|
* Replaces the selection with only the given key.
|
|
12234
12668
|
*/ replaceSelection(key) {
|
|
12235
12669
|
if (this.selectionMode === 'none') return;
|
|
12236
|
-
|
|
12237
|
-
if (
|
|
12238
|
-
let selection = this.canSelectItem(
|
|
12239
|
-
|
|
12240
|
-
],
|
|
12670
|
+
let mappedKey = this.getKey(key);
|
|
12671
|
+
if (mappedKey == null) return;
|
|
12672
|
+
let selection = this.canSelectItem(mappedKey) ? new ($e40ea825a81a3709$export$52baac22726c72bf)([
|
|
12673
|
+
mappedKey
|
|
12674
|
+
], mappedKey, mappedKey) : new ($e40ea825a81a3709$export$52baac22726c72bf)();
|
|
12241
12675
|
this.state.setSelectedKeys(selection);
|
|
12242
12676
|
}
|
|
12243
12677
|
/**
|
|
@@ -12246,9 +12680,9 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12246
12680
|
if (this.selectionMode === 'none') return;
|
|
12247
12681
|
let selection = new ($e40ea825a81a3709$export$52baac22726c72bf)();
|
|
12248
12682
|
for (let key of keys){
|
|
12249
|
-
|
|
12250
|
-
if (
|
|
12251
|
-
selection.add(
|
|
12683
|
+
let mappedKey = this.getKey(key);
|
|
12684
|
+
if (mappedKey != null) {
|
|
12685
|
+
selection.add(mappedKey);
|
|
12252
12686
|
if (this.selectionMode === 'single') break;
|
|
12253
12687
|
}
|
|
12254
12688
|
}
|
|
@@ -12259,10 +12693,12 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12259
12693
|
let addKeys = (key)=>{
|
|
12260
12694
|
while(key != null){
|
|
12261
12695
|
if (this.canSelectItem(key)) {
|
|
12696
|
+
var _getFirstItem;
|
|
12262
12697
|
let item = this.collection.getItem(key);
|
|
12263
|
-
if (item.type === 'item') keys.push(key);
|
|
12698
|
+
if ((item === null || item === void 0 ? void 0 : item.type) === 'item') keys.push(key);
|
|
12699
|
+
var _getFirstItem_key;
|
|
12264
12700
|
// Add child keys. If cell selection is allowed, then include item children too.
|
|
12265
|
-
if (item.hasChildNodes && (this.allowsCellSelection || item.type !== 'item')) addKeys(($c5a24bc478652b5f$export$fbdeaa6a76694f71)(($c5a24bc478652b5f$export$1005530eda016c13)(item, this.collection)).key);
|
|
12701
|
+
if ((item === null || item === void 0 ? void 0 : item.hasChildNodes) && (this.allowsCellSelection || item.type !== 'item')) addKeys((_getFirstItem_key = (_getFirstItem = ($c5a24bc478652b5f$export$fbdeaa6a76694f71)(($c5a24bc478652b5f$export$1005530eda016c13)(item, this.collection))) === null || _getFirstItem === void 0 ? void 0 : _getFirstItem.key) !== null && _getFirstItem_key !== void 0 ? _getFirstItem_key : null);
|
|
12266
12702
|
}
|
|
12267
12703
|
key = this.collection.getKeyAfter(key);
|
|
12268
12704
|
}
|
|
@@ -12335,6 +12771,7 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12335
12771
|
var _options_allowsCellSelection;
|
|
12336
12772
|
this.allowsCellSelection = (_options_allowsCellSelection = options === null || options === void 0 ? void 0 : options.allowsCellSelection) !== null && _options_allowsCellSelection !== void 0 ? _options_allowsCellSelection : false;
|
|
12337
12773
|
this._isSelectAll = null;
|
|
12774
|
+
this.layoutDelegate = (options === null || options === void 0 ? void 0 : options.layoutDelegate) || null;
|
|
12338
12775
|
}
|
|
12339
12776
|
}
|
|
12340
12777
|
|
|
@@ -12353,7 +12790,7 @@ class $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {
|
|
|
12353
12790
|
|
|
12354
12791
|
|
|
12355
12792
|
function $e72dd72e1c76a225$export$2f645645f7bca764(props) {
|
|
12356
|
-
let { filter: filter } = props;
|
|
12793
|
+
let { filter: filter, layoutDelegate: layoutDelegate } = props;
|
|
12357
12794
|
let selectionState = ($7af3f5b51489e0b5$export$253fe78d46329472)(props);
|
|
12358
12795
|
let disabledKeys = ($dbSRa$react.useMemo)(()=>props.disabledKeys ? new Set(props.disabledKeys) : new Set(), [
|
|
12359
12796
|
props.disabledKeys
|
|
@@ -12367,30 +12804,35 @@ function $e72dd72e1c76a225$export$2f645645f7bca764(props) {
|
|
|
12367
12804
|
props.suppressTextValueWarning
|
|
12368
12805
|
]);
|
|
12369
12806
|
let collection = ($7613b1592d41b092$export$6cd28814d92fa9c9)(props, factory, context);
|
|
12370
|
-
let selectionManager = ($dbSRa$react.useMemo)(()=>new ($d496c0a20b6e58ec$export$6c8a5aaad13c9852)(collection, selectionState
|
|
12807
|
+
let selectionManager = ($dbSRa$react.useMemo)(()=>new ($d496c0a20b6e58ec$export$6c8a5aaad13c9852)(collection, selectionState, {
|
|
12808
|
+
layoutDelegate: layoutDelegate
|
|
12809
|
+
}), [
|
|
12371
12810
|
collection,
|
|
12372
|
-
selectionState
|
|
12811
|
+
selectionState,
|
|
12812
|
+
layoutDelegate
|
|
12373
12813
|
]);
|
|
12374
12814
|
// Reset focused key if that item is deleted from the collection.
|
|
12375
12815
|
const cachedCollection = ($dbSRa$react.useRef)(null);
|
|
12376
12816
|
($dbSRa$react.useEffect)(()=>{
|
|
12377
|
-
if (selectionState.focusedKey != null && !collection.getItem(selectionState.focusedKey)) {
|
|
12817
|
+
if (selectionState.focusedKey != null && !collection.getItem(selectionState.focusedKey) && cachedCollection.current) {
|
|
12378
12818
|
const startItem = cachedCollection.current.getItem(selectionState.focusedKey);
|
|
12379
12819
|
const cachedItemNodes = [
|
|
12380
12820
|
...cachedCollection.current.getKeys()
|
|
12381
12821
|
].map((key)=>{
|
|
12382
12822
|
const itemNode = cachedCollection.current.getItem(key);
|
|
12383
|
-
return itemNode.type === 'item' ? itemNode : null;
|
|
12823
|
+
return (itemNode === null || itemNode === void 0 ? void 0 : itemNode.type) === 'item' ? itemNode : null;
|
|
12384
12824
|
}).filter((node)=>node !== null);
|
|
12385
12825
|
const itemNodes = [
|
|
12386
12826
|
...collection.getKeys()
|
|
12387
12827
|
].map((key)=>{
|
|
12388
12828
|
const itemNode = collection.getItem(key);
|
|
12389
|
-
return itemNode.type === 'item' ? itemNode : null;
|
|
12829
|
+
return (itemNode === null || itemNode === void 0 ? void 0 : itemNode.type) === 'item' ? itemNode : null;
|
|
12390
12830
|
}).filter((node)=>node !== null);
|
|
12391
|
-
|
|
12392
|
-
|
|
12393
|
-
|
|
12831
|
+
var _cachedItemNodes_length, _itemNodes_length;
|
|
12832
|
+
const diff = ((_cachedItemNodes_length = cachedItemNodes === null || cachedItemNodes === void 0 ? void 0 : cachedItemNodes.length) !== null && _cachedItemNodes_length !== void 0 ? _cachedItemNodes_length : 0) - ((_itemNodes_length = itemNodes === null || itemNodes === void 0 ? void 0 : itemNodes.length) !== null && _itemNodes_length !== void 0 ? _itemNodes_length : 0);
|
|
12833
|
+
var _startItem_index, _startItem_index1, _itemNodes_length1;
|
|
12834
|
+
let index = Math.min(diff > 1 ? Math.max(((_startItem_index = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index !== void 0 ? _startItem_index : 0) - diff + 1, 0) : (_startItem_index1 = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index1 !== void 0 ? _startItem_index1 : 0, ((_itemNodes_length1 = itemNodes === null || itemNodes === void 0 ? void 0 : itemNodes.length) !== null && _itemNodes_length1 !== void 0 ? _itemNodes_length1 : 0) - 1);
|
|
12835
|
+
let newNode = null;
|
|
12394
12836
|
let isReverseSearching = false;
|
|
12395
12837
|
while(index >= 0){
|
|
12396
12838
|
if (!selectionManager.isDisabled(itemNodes[index].key)) {
|
|
@@ -12401,7 +12843,8 @@ function $e72dd72e1c76a225$export$2f645645f7bca764(props) {
|
|
|
12401
12843
|
if (index < itemNodes.length - 1 && !isReverseSearching) index++;
|
|
12402
12844
|
else {
|
|
12403
12845
|
isReverseSearching = true;
|
|
12404
|
-
|
|
12846
|
+
var _startItem_index2, _startItem_index3;
|
|
12847
|
+
if (index > ((_startItem_index2 = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index2 !== void 0 ? _startItem_index2 : 0)) index = (_startItem_index3 = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index3 !== void 0 ? _startItem_index3 : 0;
|
|
12405
12848
|
index--;
|
|
12406
12849
|
}
|
|
12407
12850
|
}
|
|
@@ -12449,6 +12892,8 @@ function $a0d645289fe9b86b$export$e7f05e985daf4b5f(props) {
|
|
|
12449
12892
|
allowDuplicateSelectionEvents: true,
|
|
12450
12893
|
selectedKeys: selectedKeys,
|
|
12451
12894
|
onSelectionChange: (keys)=>{
|
|
12895
|
+
// impossible, but TS doesn't know that
|
|
12896
|
+
if (keys === 'all') return;
|
|
12452
12897
|
var _keys_values_next_value;
|
|
12453
12898
|
let key = (_keys_values_next_value = keys.values().next().value) !== null && _keys_values_next_value !== void 0 ? _keys_values_next_value : null;
|
|
12454
12899
|
// Always fire onSelectionChange, even if the key is the same
|
|
@@ -12499,11 +12944,150 @@ function $fc909762b330b746$export$61c6a8c84e605fb6(props) {
|
|
|
12499
12944
|
isOpen
|
|
12500
12945
|
]);
|
|
12501
12946
|
return {
|
|
12502
|
-
isOpen: isOpen,
|
|
12503
|
-
setOpen: setOpen,
|
|
12504
|
-
open: open,
|
|
12505
|
-
close: close,
|
|
12506
|
-
toggle: toggle
|
|
12947
|
+
isOpen: isOpen,
|
|
12948
|
+
setOpen: setOpen,
|
|
12949
|
+
open: open,
|
|
12950
|
+
close: close,
|
|
12951
|
+
toggle: toggle
|
|
12952
|
+
};
|
|
12953
|
+
}
|
|
12954
|
+
|
|
12955
|
+
/*
|
|
12956
|
+
* Copyright 2024 Adobe. All rights reserved.
|
|
12957
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
12958
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
12959
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
12960
|
+
*
|
|
12961
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
12962
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
12963
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
12964
|
+
* governing permissions and limitations under the License.
|
|
12965
|
+
*/
|
|
12966
|
+
|
|
12967
|
+
function $bf996d45f4a36925$export$3fcbf6e4407997e0(props) {
|
|
12968
|
+
let [isExpanded, setExpanded] = ($458b0a5536c1a7cf$export$40bfa8c7b0832715)(props.isExpanded, props.defaultExpanded || false, props.onExpandedChange);
|
|
12969
|
+
const expand = ($dbSRa$react.useCallback)(()=>{
|
|
12970
|
+
setExpanded(true);
|
|
12971
|
+
}, [
|
|
12972
|
+
setExpanded
|
|
12973
|
+
]);
|
|
12974
|
+
const collapse = ($dbSRa$react.useCallback)(()=>{
|
|
12975
|
+
setExpanded(false);
|
|
12976
|
+
}, [
|
|
12977
|
+
setExpanded
|
|
12978
|
+
]);
|
|
12979
|
+
const toggle = ($dbSRa$react.useCallback)(()=>{
|
|
12980
|
+
setExpanded(!isExpanded);
|
|
12981
|
+
}, [
|
|
12982
|
+
setExpanded,
|
|
12983
|
+
isExpanded
|
|
12984
|
+
]);
|
|
12985
|
+
return {
|
|
12986
|
+
isExpanded: isExpanded,
|
|
12987
|
+
setExpanded: setExpanded,
|
|
12988
|
+
expand: expand,
|
|
12989
|
+
collapse: collapse,
|
|
12990
|
+
toggle: toggle
|
|
12991
|
+
};
|
|
12992
|
+
}
|
|
12993
|
+
|
|
12994
|
+
/*
|
|
12995
|
+
* Copyright 2024 Adobe. All rights reserved.
|
|
12996
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
12997
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
12998
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
12999
|
+
*
|
|
13000
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
13001
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
13002
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
13003
|
+
* governing permissions and limitations under the License.
|
|
13004
|
+
*/
|
|
13005
|
+
|
|
13006
|
+
function $9385b3affbdec831$export$f36461af0ef4707d(props) {
|
|
13007
|
+
let { allowsMultipleExpanded: allowsMultipleExpanded = false, isDisabled: isDisabled = false } = props;
|
|
13008
|
+
let [expandedKeys, setExpandedKeys] = ($458b0a5536c1a7cf$export$40bfa8c7b0832715)(($dbSRa$react.useMemo)(()=>props.expandedKeys ? new Set(props.expandedKeys) : undefined, [
|
|
13009
|
+
props.expandedKeys
|
|
13010
|
+
]), ($dbSRa$react.useMemo)(()=>props.defaultExpandedKeys ? new Set(props.defaultExpandedKeys) : new Set(), [
|
|
13011
|
+
props.defaultExpandedKeys
|
|
13012
|
+
]), props.onExpandedChange);
|
|
13013
|
+
($dbSRa$react.useEffect)(()=>{
|
|
13014
|
+
// Ensure only one item is expanded if allowsMultipleExpanded is false.
|
|
13015
|
+
if (!allowsMultipleExpanded && expandedKeys.size > 1) setExpandedKeys(new Set([
|
|
13016
|
+
expandedKeys.values().next().value
|
|
13017
|
+
]));
|
|
13018
|
+
});
|
|
13019
|
+
return {
|
|
13020
|
+
allowsMultipleExpanded: allowsMultipleExpanded,
|
|
13021
|
+
isDisabled: isDisabled,
|
|
13022
|
+
expandedKeys: expandedKeys,
|
|
13023
|
+
setExpandedKeys: setExpandedKeys,
|
|
13024
|
+
toggleKey (key) {
|
|
13025
|
+
let keys;
|
|
13026
|
+
if (allowsMultipleExpanded) {
|
|
13027
|
+
keys = new Set(expandedKeys);
|
|
13028
|
+
if (keys.has(key)) keys.delete(key);
|
|
13029
|
+
else keys.add(key);
|
|
13030
|
+
} else keys = new Set(expandedKeys.has(key) ? [] : [
|
|
13031
|
+
key
|
|
13032
|
+
]);
|
|
13033
|
+
setExpandedKeys(keys);
|
|
13034
|
+
}
|
|
13035
|
+
};
|
|
13036
|
+
}
|
|
13037
|
+
|
|
13038
|
+
/*
|
|
13039
|
+
* Copyright 2020 Adobe. All rights reserved.
|
|
13040
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
13041
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
13042
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
13043
|
+
*
|
|
13044
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
13045
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
13046
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
13047
|
+
* governing permissions and limitations under the License.
|
|
13048
|
+
*/
|
|
13049
|
+
|
|
13050
|
+
function $a28c903ee9ad8dc5$export$79fefeb1c2091ac3(props) {
|
|
13051
|
+
let overlayTriggerState = ($fc909762b330b746$export$61c6a8c84e605fb6)(props);
|
|
13052
|
+
let [focusStrategy, setFocusStrategy] = ($dbSRa$react.useState)(null);
|
|
13053
|
+
let [expandedKeysStack, setExpandedKeysStack] = ($dbSRa$react.useState)([]);
|
|
13054
|
+
let closeAll = ()=>{
|
|
13055
|
+
setExpandedKeysStack([]);
|
|
13056
|
+
overlayTriggerState.close();
|
|
13057
|
+
};
|
|
13058
|
+
let openSubmenu = (triggerKey, level)=>{
|
|
13059
|
+
setExpandedKeysStack((oldStack)=>{
|
|
13060
|
+
if (level > oldStack.length) return oldStack;
|
|
13061
|
+
return [
|
|
13062
|
+
...oldStack.slice(0, level),
|
|
13063
|
+
triggerKey
|
|
13064
|
+
];
|
|
13065
|
+
});
|
|
13066
|
+
};
|
|
13067
|
+
let closeSubmenu = (triggerKey, level)=>{
|
|
13068
|
+
setExpandedKeysStack((oldStack)=>{
|
|
13069
|
+
let key = oldStack[level];
|
|
13070
|
+
if (key === triggerKey) return oldStack.slice(0, level);
|
|
13071
|
+
else return oldStack;
|
|
13072
|
+
});
|
|
13073
|
+
};
|
|
13074
|
+
return {
|
|
13075
|
+
focusStrategy: focusStrategy,
|
|
13076
|
+
...overlayTriggerState,
|
|
13077
|
+
open (focusStrategy = null) {
|
|
13078
|
+
setFocusStrategy(focusStrategy);
|
|
13079
|
+
overlayTriggerState.open();
|
|
13080
|
+
},
|
|
13081
|
+
toggle (focusStrategy = null) {
|
|
13082
|
+
setFocusStrategy(focusStrategy);
|
|
13083
|
+
overlayTriggerState.toggle();
|
|
13084
|
+
},
|
|
13085
|
+
close () {
|
|
13086
|
+
closeAll();
|
|
13087
|
+
},
|
|
13088
|
+
expandedKeysStack: expandedKeysStack,
|
|
13089
|
+
openSubmenu: openSubmenu,
|
|
13090
|
+
closeSubmenu: closeSubmenu
|
|
12507
13091
|
};
|
|
12508
13092
|
}
|
|
12509
13093
|
|
|
@@ -12632,7 +13216,7 @@ function $8796f90736e175cb$export$4d40659c25ecb50b(props = {}) {
|
|
|
12632
13216
|
let { delay: delay = $8796f90736e175cb$var$TOOLTIP_DELAY, closeDelay: closeDelay = $8796f90736e175cb$var$TOOLTIP_COOLDOWN } = props;
|
|
12633
13217
|
let { isOpen: isOpen, open: open, close: close } = ($fc909762b330b746$export$61c6a8c84e605fb6)(props);
|
|
12634
13218
|
let id = ($dbSRa$react.useMemo)(()=>`${++$8796f90736e175cb$var$tooltipId}`, []);
|
|
12635
|
-
let closeTimeout = ($dbSRa$react.useRef)(
|
|
13219
|
+
let closeTimeout = ($dbSRa$react.useRef)(null);
|
|
12636
13220
|
let closeCallback = ($dbSRa$react.useRef)(close);
|
|
12637
13221
|
let ensureTooltipEntry = ()=>{
|
|
12638
13222
|
$8796f90736e175cb$var$tooltips[id] = hideTooltip;
|
|
@@ -12644,7 +13228,7 @@ function $8796f90736e175cb$export$4d40659c25ecb50b(props = {}) {
|
|
|
12644
13228
|
}
|
|
12645
13229
|
};
|
|
12646
13230
|
let showTooltip = ()=>{
|
|
12647
|
-
clearTimeout(closeTimeout.current);
|
|
13231
|
+
if (closeTimeout.current) clearTimeout(closeTimeout.current);
|
|
12648
13232
|
closeTimeout.current = null;
|
|
12649
13233
|
closeOpenTooltips();
|
|
12650
13234
|
ensureTooltipEntry();
|
|
@@ -12661,7 +13245,7 @@ function $8796f90736e175cb$export$4d40659c25ecb50b(props = {}) {
|
|
|
12661
13245
|
};
|
|
12662
13246
|
let hideTooltip = (immediate)=>{
|
|
12663
13247
|
if (immediate || closeDelay <= 0) {
|
|
12664
|
-
clearTimeout(closeTimeout.current);
|
|
13248
|
+
if (closeTimeout.current) clearTimeout(closeTimeout.current);
|
|
12665
13249
|
closeTimeout.current = null;
|
|
12666
13250
|
closeCallback.current();
|
|
12667
13251
|
} else if (!closeTimeout.current) closeTimeout.current = setTimeout(()=>{
|
|
@@ -12696,10 +13280,9 @@ function $8796f90736e175cb$export$4d40659c25ecb50b(props = {}) {
|
|
|
12696
13280
|
}, [
|
|
12697
13281
|
close
|
|
12698
13282
|
]);
|
|
12699
|
-
// eslint-disable-next-line arrow-body-style
|
|
12700
13283
|
($dbSRa$react.useEffect)(()=>{
|
|
12701
13284
|
return ()=>{
|
|
12702
|
-
clearTimeout(closeTimeout.current);
|
|
13285
|
+
if (closeTimeout.current) clearTimeout(closeTimeout.current);
|
|
12703
13286
|
let tooltip = $8796f90736e175cb$var$tooltips[id];
|
|
12704
13287
|
if (tooltip) delete $8796f90736e175cb$var$tooltips[id];
|
|
12705
13288
|
};
|
|
@@ -12729,6 +13312,7 @@ function $8796f90736e175cb$export$4d40659c25ecb50b(props = {}) {
|
|
|
12729
13312
|
*/
|
|
12730
13313
|
|
|
12731
13314
|
|
|
13315
|
+
|
|
12732
13316
|
const $ee014567cb39d3f0$export$ff05c3ac10437e03 = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
12733
13317
|
function $ee014567cb39d3f0$var$FieldError(props, ref) {
|
|
12734
13318
|
let validation = ($dbSRa$react.useContext)($ee014567cb39d3f0$export$ff05c3ac10437e03);
|
|
@@ -12743,6 +13327,7 @@ function $ee014567cb39d3f0$var$FieldError(props, ref) {
|
|
|
12743
13327
|
*/ const $ee014567cb39d3f0$export$f551688fc98f2e09 = /*#__PURE__*/ ($dbSRa$react.forwardRef)($ee014567cb39d3f0$var$FieldError);
|
|
12744
13328
|
const $ee014567cb39d3f0$var$FieldErrorInner = /*#__PURE__*/ ($dbSRa$react.forwardRef)((props, ref)=>{
|
|
12745
13329
|
let validation = ($dbSRa$react.useContext)($ee014567cb39d3f0$export$ff05c3ac10437e03);
|
|
13330
|
+
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props);
|
|
12746
13331
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
12747
13332
|
...props,
|
|
12748
13333
|
defaultClassName: 'react-aria-FieldError',
|
|
@@ -12752,6 +13337,7 @@ const $ee014567cb39d3f0$var$FieldErrorInner = /*#__PURE__*/ ($dbSRa$react.forwar
|
|
|
12752
13337
|
if (renderProps.children == null) return null;
|
|
12753
13338
|
return /*#__PURE__*/ ($dbSRa$react).createElement(($514c0188e459b4c0$export$5f1af8db9871e1d6), {
|
|
12754
13339
|
slot: "errorMessage",
|
|
13340
|
+
...domProps,
|
|
12755
13341
|
...renderProps,
|
|
12756
13342
|
ref: ref
|
|
12757
13343
|
});
|
|
@@ -12806,32 +13392,6 @@ function $d3e0e05bdfcf66bd$var$Form(props, ref) {
|
|
|
12806
13392
|
*/
|
|
12807
13393
|
|
|
12808
13394
|
|
|
12809
|
-
const $01b77f81d0f07f68$export$75b6ee27786ba447 = /*#__PURE__*/ ($dbSRa$react.createContext)({});
|
|
12810
|
-
function $01b77f81d0f07f68$var$Label(props, ref) {
|
|
12811
|
-
[props, ref] = ($64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $01b77f81d0f07f68$export$75b6ee27786ba447);
|
|
12812
|
-
let { elementType: ElementType = 'label', ...labelProps } = props;
|
|
12813
|
-
// @ts-ignore
|
|
12814
|
-
return /*#__PURE__*/ ($dbSRa$react).createElement(ElementType, {
|
|
12815
|
-
className: "react-aria-Label",
|
|
12816
|
-
...labelProps,
|
|
12817
|
-
ref: ref
|
|
12818
|
-
});
|
|
12819
|
-
}
|
|
12820
|
-
const $01b77f81d0f07f68$export$b04be29aa201d4f5 = /*#__PURE__*/ ($f39a9eba43920ace$export$86427a43e3e48ebb)($01b77f81d0f07f68$var$Label);
|
|
12821
|
-
|
|
12822
|
-
/*
|
|
12823
|
-
* Copyright 2022 Adobe. All rights reserved.
|
|
12824
|
-
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
12825
|
-
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
12826
|
-
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
12827
|
-
*
|
|
12828
|
-
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
12829
|
-
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
12830
|
-
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
12831
|
-
* governing permissions and limitations under the License.
|
|
12832
|
-
*/
|
|
12833
|
-
|
|
12834
|
-
|
|
12835
13395
|
|
|
12836
13396
|
|
|
12837
13397
|
|
|
@@ -12915,7 +13475,7 @@ function $bc237834342dbd75$var$Checkbox(props, ref) {
|
|
|
12915
13475
|
let groupState = ($dbSRa$react.useContext)($bc237834342dbd75$export$139c5b8563afc1fc);
|
|
12916
13476
|
let inputRef = ($df56164dff5785e2$export$4338b53315abf666)(($5dc95899b306f630$export$c9058316764c140e)(userProvidedInputRef, props.inputRef !== undefined ? props.inputRef : null));
|
|
12917
13477
|
let { labelProps: labelProps, inputProps: inputProps, isSelected: isSelected, isDisabled: isDisabled, isReadOnly: isReadOnly, isPressed: isPressed, isInvalid: isInvalid } = groupState ? ($fba3e38d5ca8983f$export$353b32fc6898d37d)({
|
|
12918
|
-
...props,
|
|
13478
|
+
...($64fa3d84918910a7$export$ef03459518577ad4)(props),
|
|
12919
13479
|
// Value is optional for standalone checkboxes, but required for CheckboxGroup items;
|
|
12920
13480
|
// it's passed explicitly here to avoid typescript error (requires ignore).
|
|
12921
13481
|
// @ts-ignore
|
|
@@ -12923,7 +13483,7 @@ function $bc237834342dbd75$var$Checkbox(props, ref) {
|
|
|
12923
13483
|
// ReactNode type doesn't allow function children.
|
|
12924
13484
|
children: typeof props.children === 'function' ? true : props.children
|
|
12925
13485
|
}, groupState, inputRef) : ($406796ff087fe49b$export$e375f10ce42261c5)({
|
|
12926
|
-
...props,
|
|
13486
|
+
...($64fa3d84918910a7$export$ef03459518577ad4)(props),
|
|
12927
13487
|
children: typeof props.children === 'function' ? true : props.children,
|
|
12928
13488
|
validationBehavior: validationBehavior
|
|
12929
13489
|
}, ($3017fa7ffdddec74$export$8042c6c013fd5226)(props), inputRef);
|
|
@@ -12934,7 +13494,6 @@ function $bc237834342dbd75$var$Checkbox(props, ref) {
|
|
|
12934
13494
|
isDisabled: isInteractionDisabled
|
|
12935
13495
|
});
|
|
12936
13496
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
12937
|
-
// TODO: should data attrs go on the label or on the <input>? useCheckbox passes them to the input...
|
|
12938
13497
|
...props,
|
|
12939
13498
|
defaultClassName: 'react-aria-Checkbox',
|
|
12940
13499
|
values: {
|
|
@@ -13432,7 +13991,7 @@ function $612b8eb6cb90e02d$export$d1e8e3fbb7461f6(selectionManager, dragAndDropH
|
|
|
13432
13991
|
return new Set([
|
|
13433
13992
|
focusedKey,
|
|
13434
13993
|
dropTargetKey
|
|
13435
|
-
].filter((k)=>k
|
|
13994
|
+
].filter((k)=>k != null));
|
|
13436
13995
|
}, [
|
|
13437
13996
|
focusedKey,
|
|
13438
13997
|
dropTargetKey
|
|
@@ -13530,7 +14089,11 @@ function $eed445e0843c11d0$var$StandaloneListBox({ props: props, listBoxRef: lis
|
|
|
13530
14089
|
children: null,
|
|
13531
14090
|
items: null
|
|
13532
14091
|
};
|
|
13533
|
-
let
|
|
14092
|
+
let { layoutDelegate: layoutDelegate } = ($dbSRa$react.useContext)(($7135fc7d473fd974$export$4feb769f8ddf26c5));
|
|
14093
|
+
let state = ($e72dd72e1c76a225$export$2f645645f7bca764)({
|
|
14094
|
+
...props,
|
|
14095
|
+
layoutDelegate: layoutDelegate
|
|
14096
|
+
});
|
|
13534
14097
|
return /*#__PURE__*/ ($dbSRa$react).createElement($eed445e0843c11d0$var$ListBoxInner, {
|
|
13535
14098
|
state: state,
|
|
13536
14099
|
props: props,
|
|
@@ -13694,6 +14257,7 @@ function $eed445e0843c11d0$var$ListBoxInner({ state: state, props: props, listBo
|
|
|
13694
14257
|
[
|
|
13695
14258
|
($7135fc7d473fd974$export$d40e14dec8b060a8),
|
|
13696
14259
|
{
|
|
14260
|
+
name: 'ListBoxSection',
|
|
13697
14261
|
render: $eed445e0843c11d0$var$ListBoxSection
|
|
13698
14262
|
}
|
|
13699
14263
|
]
|
|
@@ -13705,7 +14269,7 @@ function $eed445e0843c11d0$var$ListBoxInner({ state: state, props: props, listBo
|
|
|
13705
14269
|
renderDropIndicator: ($612b8eb6cb90e02d$export$971707d8a129a1f7)(dragAndDropHooks, dropState)
|
|
13706
14270
|
})), emptyState, dragPreview));
|
|
13707
14271
|
}
|
|
13708
|
-
function $eed445e0843c11d0$var$ListBoxSection(props, ref, section) {
|
|
14272
|
+
function $eed445e0843c11d0$var$ListBoxSection(props, ref, section, className = 'react-aria-ListBoxSection') {
|
|
13709
14273
|
let state = ($dbSRa$react.useContext)($eed445e0843c11d0$export$7c5906fe4f1f2af2);
|
|
13710
14274
|
let { dragAndDropHooks: dragAndDropHooks, dropState: dropState } = ($dbSRa$react.useContext)(($612b8eb6cb90e02d$export$d188a835a7bc5783));
|
|
13711
14275
|
let { CollectionBranch: CollectionBranch } = ($dbSRa$react.useContext)(($7135fc7d473fd974$export$4feb769f8ddf26c5));
|
|
@@ -13716,7 +14280,7 @@ function $eed445e0843c11d0$var$ListBoxSection(props, ref, section) {
|
|
|
13716
14280
|
'aria-label': (_props_arialabel = props['aria-label']) !== null && _props_arialabel !== void 0 ? _props_arialabel : undefined
|
|
13717
14281
|
});
|
|
13718
14282
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
13719
|
-
defaultClassName:
|
|
14283
|
+
defaultClassName: className,
|
|
13720
14284
|
className: props.className,
|
|
13721
14285
|
style: props.style,
|
|
13722
14286
|
values: {}
|
|
@@ -13737,6 +14301,9 @@ function $eed445e0843c11d0$var$ListBoxSection(props, ref, section) {
|
|
|
13737
14301
|
renderDropIndicator: ($612b8eb6cb90e02d$export$971707d8a129a1f7)(dragAndDropHooks, dropState)
|
|
13738
14302
|
})));
|
|
13739
14303
|
}
|
|
14304
|
+
/**
|
|
14305
|
+
* A ListBoxSection represents a section within a ListBox.
|
|
14306
|
+
*/ const $eed445e0843c11d0$export$dca12b0bb56e4fc = /*#__PURE__*/ ($e1995378a142960e$export$e953bb1cd0f19726)('section', $eed445e0843c11d0$var$ListBoxSection);
|
|
13740
14307
|
const $eed445e0843c11d0$export$a11e76429ed99b4 = /*#__PURE__*/ ($e1995378a142960e$export$18af5c7a9e9b3664)('item', function ListBoxItem(props, forwardedRef, item) {
|
|
13741
14308
|
let ref = ($df56164dff5785e2$export$4338b53315abf666)(forwardedRef);
|
|
13742
14309
|
let state = ($dbSRa$react.useContext)($eed445e0843c11d0$export$7c5906fe4f1f2af2);
|
|
@@ -13865,9 +14432,9 @@ function $44f671af83e7d9e0$var$OverlayArrow(props, ref) {
|
|
|
13865
14432
|
let placement = props.placement;
|
|
13866
14433
|
let style = {
|
|
13867
14434
|
position: 'absolute',
|
|
13868
|
-
[placement]: '100%',
|
|
13869
14435
|
transform: placement === 'top' || placement === 'bottom' ? 'translateX(-50%)' : 'translateY(-50%)'
|
|
13870
14436
|
};
|
|
14437
|
+
if (placement != null) style[placement] = '100%';
|
|
13871
14438
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
13872
14439
|
...props,
|
|
13873
14440
|
defaultClassName: 'react-aria-OverlayArrow',
|
|
@@ -13978,6 +14545,7 @@ function $07b14b47974efb58$var$PopoverInner({ state: state, isExiting: isExiting
|
|
|
13978
14545
|
...renderProps.style
|
|
13979
14546
|
};
|
|
13980
14547
|
return /*#__PURE__*/ ($dbSRa$react).createElement(($337b884510726a0d$export$c6fdb837b070b4ff), {
|
|
14548
|
+
...props,
|
|
13981
14549
|
isExiting: isExiting,
|
|
13982
14550
|
portalContainer: UNSTABLE_portalContainer
|
|
13983
14551
|
}, !props.isNonModal && state.isOpen && /*#__PURE__*/ ($dbSRa$react).createElement("div", {
|
|
@@ -14010,6 +14578,8 @@ function $07b14b47974efb58$var$PopoverInner({ state: state, isExiting: isExiting
|
|
|
14010
14578
|
})));
|
|
14011
14579
|
}
|
|
14012
14580
|
|
|
14581
|
+
const $3674c52c6b3c5bce$export$795aec4671cbae19 = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14582
|
+
|
|
14013
14583
|
/*
|
|
14014
14584
|
* Copyright 2022 Adobe. All rights reserved.
|
|
14015
14585
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -14028,10 +14598,14 @@ function $07b14b47974efb58$var$PopoverInner({ state: state, isExiting: isExiting
|
|
|
14028
14598
|
|
|
14029
14599
|
|
|
14030
14600
|
|
|
14601
|
+
|
|
14602
|
+
|
|
14031
14603
|
const $de32f1b87079253c$export$8b93a07348a7730c = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14032
14604
|
const $de32f1b87079253c$export$d2f961adcb0afbe = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14033
14605
|
function $de32f1b87079253c$export$2e1e1122cf0cba88(props) {
|
|
14034
|
-
|
|
14606
|
+
// Use useMenuTriggerState instead of useOverlayTriggerState in case a menu is embedded in the dialog.
|
|
14607
|
+
// This is needed to handle submenus.
|
|
14608
|
+
let state = ($a28c903ee9ad8dc5$export$79fefeb1c2091ac3)(props);
|
|
14035
14609
|
let buttonRef = ($dbSRa$react.useRef)(null);
|
|
14036
14610
|
let { triggerProps: triggerProps, overlayProps: overlayProps } = ($628037886ba31236$export$f9d5c8beee7d008d)({
|
|
14037
14611
|
type: 'dialog'
|
|
@@ -14048,6 +14622,10 @@ function $de32f1b87079253c$export$2e1e1122cf0cba88(props) {
|
|
|
14048
14622
|
$de32f1b87079253c$export$d2f961adcb0afbe,
|
|
14049
14623
|
state
|
|
14050
14624
|
],
|
|
14625
|
+
[
|
|
14626
|
+
($3674c52c6b3c5bce$export$795aec4671cbae19),
|
|
14627
|
+
state
|
|
14628
|
+
],
|
|
14051
14629
|
[
|
|
14052
14630
|
$de32f1b87079253c$export$8b93a07348a7730c,
|
|
14053
14631
|
overlayProps
|
|
@@ -14076,24 +14654,27 @@ function $de32f1b87079253c$var$Dialog(props, ref) {
|
|
|
14076
14654
|
'aria-labelledby': originalAriaLabelledby
|
|
14077
14655
|
}, ref);
|
|
14078
14656
|
let state = ($dbSRa$react.useContext)($de32f1b87079253c$export$d2f961adcb0afbe);
|
|
14079
|
-
let children = props.children;
|
|
14080
|
-
if (typeof children === 'function') children = children({
|
|
14081
|
-
close: (state === null || state === void 0 ? void 0 : state.close) || (()=>{})
|
|
14082
|
-
});
|
|
14083
14657
|
if (!dialogProps['aria-label'] && !dialogProps['aria-labelledby']) {
|
|
14084
14658
|
// If aria-labelledby exists on props, we know it came from context.
|
|
14085
14659
|
// Use that as a fallback in case there is no title slot.
|
|
14086
14660
|
if (props['aria-labelledby']) dialogProps['aria-labelledby'] = props['aria-labelledby'];
|
|
14087
14661
|
else console.warn('If a Dialog does not contain a <Heading slot="title">, it must have an aria-label or aria-labelledby attribute for accessibility.');
|
|
14088
14662
|
}
|
|
14089
|
-
|
|
14663
|
+
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
14664
|
+
defaultClassName: 'react-aria-Dialog',
|
|
14665
|
+
className: props.className,
|
|
14666
|
+
style: props.style,
|
|
14667
|
+
children: props.children,
|
|
14668
|
+
values: {
|
|
14669
|
+
close: (state === null || state === void 0 ? void 0 : state.close) || (()=>{})
|
|
14670
|
+
}
|
|
14671
|
+
});
|
|
14090
14672
|
return /*#__PURE__*/ ($dbSRa$react).createElement("section", {
|
|
14091
14673
|
...($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props),
|
|
14092
14674
|
...dialogProps,
|
|
14675
|
+
...renderProps,
|
|
14093
14676
|
ref: ref,
|
|
14094
|
-
slot: props.slot || undefined
|
|
14095
|
-
style: props.style,
|
|
14096
|
-
className: (_props_className = props.className) !== null && _props_className !== void 0 ? _props_className : 'react-aria-Dialog'
|
|
14677
|
+
slot: props.slot || undefined
|
|
14097
14678
|
}, /*#__PURE__*/ ($dbSRa$react).createElement(($64fa3d84918910a7$export$2881499e37b75b9a), {
|
|
14098
14679
|
values: [
|
|
14099
14680
|
[
|
|
@@ -14107,14 +14688,180 @@ function $de32f1b87079253c$var$Dialog(props, ref) {
|
|
|
14107
14688
|
}
|
|
14108
14689
|
}
|
|
14109
14690
|
}
|
|
14691
|
+
],
|
|
14692
|
+
[
|
|
14693
|
+
($d2b4bc8c273e7be6$export$24d547caef80ccd1),
|
|
14694
|
+
{
|
|
14695
|
+
slots: {
|
|
14696
|
+
[($64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},
|
|
14697
|
+
close: {
|
|
14698
|
+
onPress: ()=>state === null || state === void 0 ? void 0 : state.close()
|
|
14699
|
+
}
|
|
14700
|
+
}
|
|
14701
|
+
}
|
|
14110
14702
|
]
|
|
14111
14703
|
]
|
|
14112
|
-
}, children));
|
|
14704
|
+
}, renderProps.children));
|
|
14113
14705
|
}
|
|
14114
14706
|
/**
|
|
14115
14707
|
* A dialog is an overlay shown above other content in an application.
|
|
14116
14708
|
*/ const $de32f1b87079253c$export$3ddf2d174ce01153 = /*#__PURE__*/ ($dbSRa$react.forwardRef)($de32f1b87079253c$var$Dialog);
|
|
14117
14709
|
|
|
14710
|
+
/*
|
|
14711
|
+
* Copyright 2024 Adobe. All rights reserved.
|
|
14712
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
14713
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
14714
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
14715
|
+
*
|
|
14716
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
14717
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
14718
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
14719
|
+
* governing permissions and limitations under the License.
|
|
14720
|
+
*/
|
|
14721
|
+
|
|
14722
|
+
|
|
14723
|
+
|
|
14724
|
+
|
|
14725
|
+
|
|
14726
|
+
|
|
14727
|
+
const $28f4fd908f0de97f$export$1d40e3e0cc4d5de = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14728
|
+
function $28f4fd908f0de97f$var$DisclosureGroup(props, ref) {
|
|
14729
|
+
let state = ($9385b3affbdec831$export$f36461af0ef4707d)(props);
|
|
14730
|
+
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
14731
|
+
...props,
|
|
14732
|
+
defaultClassName: 'react-aria-DisclosureGroup',
|
|
14733
|
+
values: {
|
|
14734
|
+
isDisabled: state.isDisabled,
|
|
14735
|
+
state: state
|
|
14736
|
+
}
|
|
14737
|
+
});
|
|
14738
|
+
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props);
|
|
14739
|
+
return /*#__PURE__*/ ($dbSRa$react).createElement("div", {
|
|
14740
|
+
...domProps,
|
|
14741
|
+
...renderProps,
|
|
14742
|
+
ref: ref,
|
|
14743
|
+
"data-disabled": props.isDisabled || undefined
|
|
14744
|
+
}, /*#__PURE__*/ ($dbSRa$react).createElement($28f4fd908f0de97f$export$1d40e3e0cc4d5de.Provider, {
|
|
14745
|
+
value: state
|
|
14746
|
+
}, renderProps.children));
|
|
14747
|
+
}
|
|
14748
|
+
/**
|
|
14749
|
+
* A DisclosureGroup is a grouping of related disclosures, sometimes called an accordion.
|
|
14750
|
+
* It supports both single and multiple expanded items.
|
|
14751
|
+
*/ const $28f4fd908f0de97f$export$944aceb4f8c89f10 = /*#__PURE__*/ ($dbSRa$react.forwardRef)($28f4fd908f0de97f$var$DisclosureGroup);
|
|
14752
|
+
const $28f4fd908f0de97f$export$d665dd135a51b28a = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14753
|
+
const $28f4fd908f0de97f$export$dab3ea4a6ef094da = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14754
|
+
const $28f4fd908f0de97f$var$InternalDisclosureContext = /*#__PURE__*/ ($dbSRa$react.createContext)(null);
|
|
14755
|
+
function $28f4fd908f0de97f$var$Disclosure(props, ref) {
|
|
14756
|
+
[props, ref] = ($64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $28f4fd908f0de97f$export$d665dd135a51b28a);
|
|
14757
|
+
let groupState = ($dbSRa$react.useContext)($28f4fd908f0de97f$export$1d40e3e0cc4d5de);
|
|
14758
|
+
let { id: id, ...otherProps } = props;
|
|
14759
|
+
// Generate an id if one wasn't provided.
|
|
14760
|
+
// (can't pass id into useId since it can also be a number)
|
|
14761
|
+
let defaultId = ($bdb11010cef70236$export$f680877a34711e37)();
|
|
14762
|
+
id || (id = defaultId);
|
|
14763
|
+
let isExpanded = groupState ? groupState.expandedKeys.has(id) : props.isExpanded;
|
|
14764
|
+
let state = ($bf996d45f4a36925$export$3fcbf6e4407997e0)({
|
|
14765
|
+
...props,
|
|
14766
|
+
isExpanded: isExpanded,
|
|
14767
|
+
onExpandedChange (isExpanded) {
|
|
14768
|
+
var _props_onExpandedChange;
|
|
14769
|
+
if (groupState) groupState.toggleKey(id);
|
|
14770
|
+
(_props_onExpandedChange = props.onExpandedChange) === null || _props_onExpandedChange === void 0 ? void 0 : _props_onExpandedChange.call(props, isExpanded);
|
|
14771
|
+
}
|
|
14772
|
+
});
|
|
14773
|
+
let panelRef = ($dbSRa$react).useRef(null);
|
|
14774
|
+
let isDisabled = props.isDisabled || (groupState === null || groupState === void 0 ? void 0 : groupState.isDisabled) || false;
|
|
14775
|
+
let { buttonProps: buttonProps, panelProps: panelProps } = ($5e910fae8e128ead$export$6e3e27031a30522f)({
|
|
14776
|
+
...props,
|
|
14777
|
+
isExpanded: isExpanded,
|
|
14778
|
+
isDisabled: isDisabled
|
|
14779
|
+
}, state, panelRef);
|
|
14780
|
+
let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = ($f7dceffc5ad7768b$export$4e328f61c538687f)({
|
|
14781
|
+
within: true
|
|
14782
|
+
});
|
|
14783
|
+
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
14784
|
+
...props,
|
|
14785
|
+
id: undefined,
|
|
14786
|
+
defaultClassName: 'react-aria-Disclosure',
|
|
14787
|
+
values: {
|
|
14788
|
+
isExpanded: state.isExpanded,
|
|
14789
|
+
isDisabled: isDisabled,
|
|
14790
|
+
isFocusVisibleWithin: isFocusVisibleWithin,
|
|
14791
|
+
state: state
|
|
14792
|
+
}
|
|
14793
|
+
});
|
|
14794
|
+
let domProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(otherProps);
|
|
14795
|
+
return /*#__PURE__*/ ($dbSRa$react).createElement(($64fa3d84918910a7$export$2881499e37b75b9a), {
|
|
14796
|
+
values: [
|
|
14797
|
+
[
|
|
14798
|
+
($d2b4bc8c273e7be6$export$24d547caef80ccd1),
|
|
14799
|
+
{
|
|
14800
|
+
slots: {
|
|
14801
|
+
[($64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},
|
|
14802
|
+
trigger: buttonProps
|
|
14803
|
+
}
|
|
14804
|
+
}
|
|
14805
|
+
],
|
|
14806
|
+
[
|
|
14807
|
+
$28f4fd908f0de97f$var$InternalDisclosureContext,
|
|
14808
|
+
{
|
|
14809
|
+
panelProps: panelProps,
|
|
14810
|
+
panelRef: panelRef
|
|
14811
|
+
}
|
|
14812
|
+
],
|
|
14813
|
+
[
|
|
14814
|
+
$28f4fd908f0de97f$export$dab3ea4a6ef094da,
|
|
14815
|
+
state
|
|
14816
|
+
]
|
|
14817
|
+
]
|
|
14818
|
+
}, /*#__PURE__*/ ($dbSRa$react).createElement("div", {
|
|
14819
|
+
ref: ref,
|
|
14820
|
+
"data-expanded": state.isExpanded || undefined,
|
|
14821
|
+
"data-disabled": isDisabled || undefined,
|
|
14822
|
+
"data-focus-visible-within": isFocusVisibleWithin || undefined,
|
|
14823
|
+
...domProps,
|
|
14824
|
+
...focusWithinProps,
|
|
14825
|
+
...renderProps
|
|
14826
|
+
}, renderProps.children));
|
|
14827
|
+
}
|
|
14828
|
+
function $28f4fd908f0de97f$var$DisclosurePanel(props, ref) {
|
|
14829
|
+
let { role: role = 'group' } = props;
|
|
14830
|
+
let { panelProps: panelProps, panelRef: panelRef } = ($dbSRa$react.useContext)($28f4fd908f0de97f$var$InternalDisclosureContext);
|
|
14831
|
+
let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = ($f7dceffc5ad7768b$export$4e328f61c538687f)({
|
|
14832
|
+
within: true
|
|
14833
|
+
});
|
|
14834
|
+
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
14835
|
+
...props,
|
|
14836
|
+
defaultClassName: 'react-aria-DisclosurePanel',
|
|
14837
|
+
values: {
|
|
14838
|
+
isFocusVisibleWithin: isFocusVisibleWithin
|
|
14839
|
+
}
|
|
14840
|
+
});
|
|
14841
|
+
let DOMProps = ($65484d02dcb7eb3e$export$457c3d6518dd4c6f)(props);
|
|
14842
|
+
return /*#__PURE__*/ ($dbSRa$react).createElement("div", {
|
|
14843
|
+
...DOMProps,
|
|
14844
|
+
ref: ($5dc95899b306f630$export$c9058316764c140e)(ref, panelRef),
|
|
14845
|
+
...($3ef42575df84b30b$export$9d1611c77c2fe928)(panelProps, focusWithinProps),
|
|
14846
|
+
...renderProps,
|
|
14847
|
+
role: role,
|
|
14848
|
+
"data-focus-visible-within": isFocusVisibleWithin || undefined
|
|
14849
|
+
}, /*#__PURE__*/ ($dbSRa$react).createElement(($64fa3d84918910a7$export$2881499e37b75b9a), {
|
|
14850
|
+
values: [
|
|
14851
|
+
[
|
|
14852
|
+
($d2b4bc8c273e7be6$export$24d547caef80ccd1),
|
|
14853
|
+
null
|
|
14854
|
+
]
|
|
14855
|
+
]
|
|
14856
|
+
}, props.children));
|
|
14857
|
+
}
|
|
14858
|
+
/**
|
|
14859
|
+
* A disclosure is a collapsible section of content. It is composed of a a header with a heading and trigger button, and a panel that contains the content.
|
|
14860
|
+
*/ const $28f4fd908f0de97f$export$74a362b31437ec83 = /*#__PURE__*/ ($dbSRa$react.forwardRef)($28f4fd908f0de97f$var$Disclosure);
|
|
14861
|
+
/**
|
|
14862
|
+
* A DisclosurePanel provides the content for a disclosure.
|
|
14863
|
+
*/ const $28f4fd908f0de97f$export$feabaa331e1d464c = /*#__PURE__*/ ($dbSRa$react.forwardRef)($28f4fd908f0de97f$var$DisclosurePanel);
|
|
14864
|
+
|
|
14118
14865
|
/*
|
|
14119
14866
|
* Copyright 2022 Adobe. All rights reserved.
|
|
14120
14867
|
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
@@ -14631,10 +15378,10 @@ function $82d7e5349645de74$var$SelectValue(props, ref) {
|
|
|
14631
15378
|
});
|
|
14632
15379
|
}
|
|
14633
15380
|
let stringFormatter = ($fca6afa0e843324b$export$f12b703ca79dfbb1)((($parcel$interopDefault($df39c1238ae2b5f3$exports))), 'react-aria-components');
|
|
14634
|
-
var _state_selectedItem_value, _state_selectedItem_textValue;
|
|
15381
|
+
var _ref, _state_selectedItem_value, _state_selectedItem_textValue;
|
|
14635
15382
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
14636
15383
|
...props,
|
|
14637
|
-
defaultChildren: rendered
|
|
15384
|
+
defaultChildren: (_ref = rendered !== null && rendered !== void 0 ? rendered : placeholder) !== null && _ref !== void 0 ? _ref : stringFormatter.format('selectPlaceholder'),
|
|
14638
15385
|
defaultClassName: 'react-aria-SelectValue',
|
|
14639
15386
|
values: {
|
|
14640
15387
|
selectedItem: (_state_selectedItem_value = (_state_selectedItem = state.selectedItem) === null || _state_selectedItem === void 0 ? void 0 : _state_selectedItem.value) !== null && _state_selectedItem_value !== void 0 ? _state_selectedItem_value : null,
|
|
@@ -15158,7 +15905,8 @@ function $4e3b923658d69c60$var$TooltipInner(props) {
|
|
|
15158
15905
|
isOpen: state.isOpen,
|
|
15159
15906
|
arrowSize: arrowWidth,
|
|
15160
15907
|
arrowBoundaryOffset: props.arrowBoundaryOffset,
|
|
15161
|
-
shouldFlip: props.shouldFlip
|
|
15908
|
+
shouldFlip: props.shouldFlip,
|
|
15909
|
+
onClose: ()=>state.close(true)
|
|
15162
15910
|
});
|
|
15163
15911
|
let isEntering = ($64fa3d84918910a7$export$6d3443f2c48bfc20)(props.tooltipRef, !!placement) || props.isEntering || false;
|
|
15164
15912
|
let renderProps = ($64fa3d84918910a7$export$4d86445c2cf5e3)({
|
|
@@ -15181,7 +15929,7 @@ function $4e3b923658d69c60$var$TooltipInner(props) {
|
|
|
15181
15929
|
...overlayProps.style,
|
|
15182
15930
|
...renderProps.style
|
|
15183
15931
|
},
|
|
15184
|
-
"data-placement": placement,
|
|
15932
|
+
"data-placement": placement !== null && placement !== void 0 ? placement : undefined,
|
|
15185
15933
|
"data-entering": isEntering || undefined,
|
|
15186
15934
|
"data-exiting": props.isExiting || undefined
|
|
15187
15935
|
}, /*#__PURE__*/ ($dbSRa$react).createElement(($44f671af83e7d9e0$export$2de4954e8ae13b9f).Provider, {
|
|
@@ -15193,13 +15941,58 @@ function $4e3b923658d69c60$var$TooltipInner(props) {
|
|
|
15193
15941
|
}, renderProps.children));
|
|
15194
15942
|
}
|
|
15195
15943
|
|
|
15196
|
-
var css_248z$
|
|
15197
|
-
styleInject(css_248z$
|
|
15944
|
+
var css_248z$o = ".bcds-react-aria-Disclosure {\n display: flex;\n flex-direction: column;\n border: var(--layout-border-width-small) solid\n var(--surface-color-border-default);\n border-radius: var(--layout-border-radius-medium);\n overflow: hidden;\n}\n\n.bcds-react-aria-Disclosure--Button {\n display: inline-flex;\n flex-direction: row;\n padding: var(--layout-padding-small) var(--layout-padding-medium);\n gap: var(--layout-margin-small);\n justify-content: space-between;\n align-items: center;\n background-color: var(--surface-color-background-light-gray);\n border: none;\n cursor: pointer;\n font: var(--typography-bold-body);\n color: var(--typography-color-primary);\n}\n\n/* Hover */\n.bcds-react-aria-Disclosure--Button[data-hovered] {\n background-color: var(--surface-color-menus-hover);\n}\n\n/* Accordion content */\n.bcds-react-aria-Disclosure[data-expanded]\n > .bcds-react-aria-Disclosure--Panel {\n display: flex;\n align-items: flex-start;\n padding: var(--layout-padding-medium);\n gap: var(--layout-margin-small);\n background-color: var(--surface-color-forms-default);\n font: var(--typography-regular-body);\n}\n\n/* Focus state */\n.bcds-react-aria-Disclosure[data-focus-visible-within] {\n outline: solid var(--layout-border-width-medium)\n var(--surface-color-border-active);\n outline-offset: var(--layout-margin-hair);\n}\n\n/* Override default focus behaviour for button */\n.bcds-react-aria-Disclosure[data-focus-visible-within]\n > .bcds-react-aria-Disclosure--Button {\n outline: none;\n}\n\n.bcds-react-aria-Disclosure--Button[data-focused] {\n outline: none;\n}\n\n/* Disabled state */\n.bcds-react-aria-Disclosure[data-disabled]\n > .bcds-react-aria-Disclosure--Button {\n background-color: var(--surface-color-forms-disabled);\n color: var(--typography-color-disabled);\n cursor: not-allowed;\n}\n";
|
|
15945
|
+
styleInject(css_248z$o);
|
|
15946
|
+
|
|
15947
|
+
var css_248z$n = ".bcds-react-aria-Button {\n border: none;\n border-radius: var(--layout-border-radius-medium);\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n gap: var(--layout-padding-small);\n font: var(--typography-regular-body);\n padding-left: 16px;\n padding-right: 16px;\n}\n.bcds-react-aria-Button[data-disabled] {\n cursor: not-allowed;\n}\n.bcds-react-aria-Button[data-focused] {\n outline: solid var(--layout-border-width-medium)\n var(--surface-color-border-active);\n outline-offset: var(--layout-margin-hair);\n}\n\n/* Icon button */\n.bcds-react-aria-Button.icon {\n align-items: center;\n justify-content: space-around;\n}\n\n/* Sizes */\n.bcds-react-aria-Button.small {\n min-height: 32px;\n}\n.bcds-react-aria-Button.small.icon {\n padding: unset;\n height: 32px;\n width: 32px;\n min-width: 32px;\n}\n.bcds-react-aria-Button.medium {\n min-height: 40px;\n}\n.bcds-react-aria-Button.medium.icon {\n padding: unset;\n height: 40px;\n width: 40px;\n min-width: 40px;\n}\n\n/* Variant - Primary */\n.bcds-react-aria-Button.primary {\n background: var(--surface-color-primary-button-default);\n color: var(--icons-color-primary-invert);\n}\n.bcds-react-aria-Button.primary.danger {\n background-color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Button.primary[data-disabled] {\n background-color: var(--surface-color-primary-danger-button-disabled);\n color: var(--typography-color-disabled);\n}\n.bcds-react-aria-Button.primary[data-hovered] {\n background-color: var(--surface-color-primary-button-hover);\n}\n.bcds-react-aria-Button.primary.danger[data-hovered] {\n background-color: var(--surface-color-primary-danger-button-hover);\n}\n\n/* Variant - Secondary */\n.bcds-react-aria-Button.secondary {\n background-color: var(--surface-color-secondary-button-default);\n border: 1px solid var(--surface-color-border-dark);\n color: var(--typography-color-primary);\n}\n.bcds-react-aria-Button.secondary.danger {\n border-color: var(--support-border-color-danger);\n color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Button.secondary[data-disabled] {\n background-color: var(--surface-color-secondary-button-disabled);\n border-color: var(--surface-color-border-default);\n color: var(--typography-color-disabled);\n}\n.bcds-react-aria-Button.secondary[data-hovered] {\n background-color: var(--surface-color-secondary-button-hover);\n}\n.bcds-react-aria-Button.secondary.danger[data-hovered] {\n background-color: var(--support-surface-color-danger);\n}\n\n/* Variant - Tertiary */\n.bcds-react-aria-Button.tertiary {\n background-color: var(--surface-color-tertiary-button-default);\n color: var(--typography-color-primary);\n}\n.bcds-react-aria-Button.tertiary.danger {\n color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Button.tertiary[data-disabled] {\n background-color: var(--surface-color-tertiary-button-default);\n color: var(--typography-color-disabled);\n}\n.bcds-react-aria-Button.tertiary[data-hovered] {\n background-color: var(--surface-color-tertiary-button-hover);\n}\n.bcds-react-aria-Button.tertiary.danger[data-hovered] {\n background-color: var(--support-surface-color-danger);\n}\n\n/* Variant - Link */\n.bcds-react-aria-Button.link {\n background-color: var(--surface-color-tertiary-button-default);\n color: var(--typography-color-link);\n text-decoration: underline;\n text-underline-offset: 0.3em;\n}\n.bcds-react-aria-Button.link.danger {\n color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Button.link[data-disabled] {\n color: var(--typography-color-disabled);\n}\n";
|
|
15948
|
+
styleInject(css_248z$n);
|
|
15198
15949
|
|
|
15199
15950
|
function Button({ size = "medium", variant = "primary", danger = false, isIconButton = false, ...props }) {
|
|
15200
15951
|
return (jsxRuntime.jsx($d2b4bc8c273e7be6$export$353f5b6fc5456de1, { className: `bcds-react-aria-Button ${size} ${variant} ${danger ? "danger" : ""} ${isIconButton ? "icon" : ""}`, ...props }));
|
|
15201
15952
|
}
|
|
15202
15953
|
|
|
15954
|
+
/* The component implements the Chevron Up icon from Font Awesome: https://fontawesome.com/icons/chevron-up */
|
|
15955
|
+
function SvgChevronUpIcon({ id = "chevron-up-icon" }) {
|
|
15956
|
+
return (jsxRuntime.jsx("svg", { id: id, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("path", { d: "M4.21231 13.3146L9.52695 8.2226C9.6939 8.08348 9.86086 8 10.0278 8C10.1948 8 10.3339 8.05565 10.473 8.16695L15.7876 13.259C16.066 13.5372 16.066 13.9546 15.8155 14.2051C15.5651 14.4833 15.1477 14.4833 14.8694 14.2329L10.0278 9.61387L5.13054 14.2885C4.88011 14.539 4.43491 14.539 4.18448 14.2607C3.93405 13.9825 3.93405 13.5651 4.21231 13.3146Z", fill: "currentColor" }) }));
|
|
15957
|
+
}
|
|
15958
|
+
|
|
15959
|
+
/* The component implements the Chevron Down icon from Font Awesome: https://fontawesome.com/icons/chevron-down */
|
|
15960
|
+
function SvgChevronDownIcon({ id = "chevron-down-icon" }) {
|
|
15961
|
+
return (jsxRuntime.jsx("svg", { id: id, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("path", { d: "M15.7882 9.15569L10.4858 14.236C10.3192 14.3748 10.1527 14.4303 10.0139 14.4303C9.84731 14.4303 9.68074 14.3748 9.54194 14.2637L4.21182 9.15569C3.9342 8.90584 3.9342 8.46167 4.18405 8.21182C4.4339 7.9342 4.87808 7.9342 5.12793 8.18405L10.0139 12.8479L14.872 8.18405C15.1219 7.9342 15.5661 7.9342 15.8159 8.21182C16.0658 8.46167 16.0658 8.90584 15.7882 9.15569Z", fill: "currentColor" }) }));
|
|
15962
|
+
}
|
|
15963
|
+
|
|
15964
|
+
function Accordion({ label, children, ...props }) {
|
|
15965
|
+
return (jsxRuntime.jsx($28f4fd908f0de97f$export$74a362b31437ec83, { className: `bcds-react-aria-Disclosure`, ...props, children: ({ isExpanded }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(Button, { className: "bcds-react-aria-Disclosure--Button", size: "small", variant: "link", slot: "trigger", children: [label, isExpanded ? jsxRuntime.jsx(SvgChevronUpIcon, {}) : jsxRuntime.jsx(SvgChevronDownIcon, {})] }), jsxRuntime.jsx($28f4fd908f0de97f$export$feabaa331e1d464c, { className: "bcds-react-aria-Disclosure--Panel", children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }) })] })) }));
|
|
15966
|
+
}
|
|
15967
|
+
|
|
15968
|
+
var css_248z$m = ".bcds-react-aria-DisclosureGroup {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n gap: var(--layout-border-width-small);\n background-color: var(--surface-color-border-default);\n border: var(--layout-border-width-small) solid\n var(--surface-color-border-default);\n border-radius: var(--layout-border-radius-medium);\n overflow: hidden;\n}\n\n/* Override individual accordion item borders */\n.bcds-react-aria-DisclosureGroup > .bcds-react-aria-Disclosure {\n border: none;\n border-radius: var(--layout-border-radius-none);\n}\n\n/* Focus state */\n.bcds-react-aria-DisclosureGroup\n > .bcds-react-aria-Disclosure[data-focus-visible-within] {\n border-radius: var(--layout-border-radius-hair);\n outline-offset: calc(var(--layout-margin-hair) * -1);\n}\n\n/* Title styles */\n.bcds-react-aria-DisclosureGroup--Title {\n color: var(--typography-color-primary);\n margin: var(--layout-margin-medium) var(--layout-margin-none);\n}\n\n.bcds-react-aria-DisclosureGroup--Title > h1 {\n font: var(--typography-bold-h1);\n margin-block-start: 0;\n margin-block-end: 0;\n}\n\n.bcds-react-aria-DisclosureGroup--Title > h2 {\n font: var(--typography-bold-h2);\n margin-block-start: 0;\n margin-block-end: 0;\n}\n\n.bcds-react-aria-DisclosureGroup--Title > h3 {\n font: var(--typography-bold-h3);\n margin-block-start: 0;\n margin-block-end: 0;\n}\n\n.bcds-react-aria-DisclosureGroup--Title > h4 {\n font: var(--typography-bold-h4);\n margin-block-start: 0;\n margin-block-end: 0;\n}\n\n.bcds-react-aria-DisclosureGroup--Title > h5 {\n font: var(--typography-bold-h5);\n margin-block-start: 0;\n margin-block-end: 0;\n}\n\n.bcds-react-aria-DisclosureGroup--Title > h6 {\n font: var(--typography-bold-h6);\n margin-block-start: 0;\n margin-block-end: 0;\n}\n\n.bcds-react-aria-DisclosureGroup--Title > span {\n font: var(--typography-bold-large-body);\n}\n";
|
|
15969
|
+
styleInject(css_248z$m);
|
|
15970
|
+
|
|
15971
|
+
function AccordionGroup({ title, titleElement, children, ...props }) {
|
|
15972
|
+
function getTitle() {
|
|
15973
|
+
switch (titleElement) {
|
|
15974
|
+
case "h1":
|
|
15975
|
+
return jsxRuntime.jsx("h1", { children: title });
|
|
15976
|
+
case "h2":
|
|
15977
|
+
return jsxRuntime.jsx("h2", { children: title });
|
|
15978
|
+
case "h3":
|
|
15979
|
+
return jsxRuntime.jsx("h3", { children: title });
|
|
15980
|
+
case "h4":
|
|
15981
|
+
return jsxRuntime.jsx("h4", { children: title });
|
|
15982
|
+
case "h5":
|
|
15983
|
+
return jsxRuntime.jsx("h5", { children: title });
|
|
15984
|
+
case "h6":
|
|
15985
|
+
return jsxRuntime.jsx("h6", { children: title });
|
|
15986
|
+
default:
|
|
15987
|
+
return jsxRuntime.jsx("span", { children: title });
|
|
15988
|
+
}
|
|
15989
|
+
}
|
|
15990
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [title && (jsxRuntime.jsx("div", { className: "bcds-react-aria-DisclosureGroup--Title", children: getTitle() })), jsxRuntime.jsx($28f4fd908f0de97f$export$944aceb4f8c89f10, { className: "bcds-react-aria-DisclosureGroup", ...props, children: children })] }));
|
|
15991
|
+
}
|
|
15992
|
+
|
|
15993
|
+
var css_248z$l = ".bcds-Alert-Banner {\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-around;\n width: 100%;\n padding: var(--layout-padding-none) var(--layout-padding-medium);\n}\n\n.bcds-Alert-Banner--Container {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--layout-padding-medium);\n max-width: 1100px;\n padding: var(--layout-padding-small) var(--layout-padding-none);\n}\n\n.bcds-Alert-Banner--Icon {\n align-self: first baseline;\n justify-self: flex-start;\n padding-top: var(--layout-padding-xsmall);\n color: var(--icons-color-primary-invert);\n}\n\n.bcds-Alert-Banner--Content {\n display: inline-flex;\n gap: var(--layout-margin-medium);\n align-items: first baseline;\n flex-grow: 1;\n flex-wrap: wrap;\n font: var(--typography-regular-body);\n color: var(--typography-color-primary-invert);\n}\n\n.bcds-Alert-Banner--closeIcon {\n align-self: first baseline;\n}\n\n.bcds-Alert-Banner--closeIcon > .bcds-react-aria-Button[data-hovered] svg {\n color: var(--icons-color-primary);\n}\n\n.bcds-Alert-Banner--closeIcon svg {\n color: var(--icons-color-primary-invert);\n}\n\n/* Variants */\n\n/* Info theme */\n.bcds-Alert-Banner.info {\n background-color: var(--surface-color-background-dark-blue);\n}\n\n/* Success theme */\n.bcds-Alert-Banner.success {\n background-color: var(--support-border-color-success);\n}\n\n/* Warning theme */\n.bcds-Alert-Banner.warning {\n background-color: var(--support-border-color-warning);\n}\n\n.bcds-Alert-Banner.warning .bcds-Alert-Banner--Icon {\n color: var(--icons-color-primary);\n}\n\n.bcds-Alert-Banner.warning .bcds-Alert-Banner--Content {\n color: var(--typography-color-primary);\n}\n\n.bcds-Alert-Banner.warning .bcds-Alert-Banner--closeIcon svg {\n color: var(--icons-color-primary);\n}\n\n/* Danger theme */\n.bcds-Alert-Banner.danger {\n background-color: var(--support-border-color-danger);\n}\n\n/* Black theme */\n\n.bcds-Alert-Banner.black {\n background-color: var(--theme-gray-110);\n}\n";
|
|
15994
|
+
styleInject(css_248z$l);
|
|
15995
|
+
|
|
15203
15996
|
/* The component implements the Circle Check icon from Font Awesome: https://fontawesome.com/icons/circle-check */
|
|
15204
15997
|
function SvgCheckCircleIcon({ id = "check-icon" }) {
|
|
15205
15998
|
return (jsxRuntime.jsx("svg", { id: id, width: "20", height: "20", viewBox: "0 0 20 20", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("g", { children: jsxRuntime.jsx("path", { d: "M12.4688 7.46875C12.75 7.1875 13.2188 7.1875 13.5 7.5C13.8125 7.78125 13.8125 8.25 13.5 8.53125L9.5 12.5312C9.375 12.6875 9.1875 12.75 9 12.75C8.78125 12.75 8.59375 12.6875 8.4375 12.5312L6.4375 10.5312C6.125 10.25 6.125 9.78125 6.4375 9.46875C6.71875 9.1875 7.1875 9.1875 7.5 9.46875L9 10.9688L12.4688 7.46875ZM10 2C14.4062 2 18 5.59375 18 10C18 14.4375 14.4062 18 10 18C5.5625 18 2 14.4375 2 10C2 5.59375 5.5625 2 10 2ZM10 16.5C13.5625 16.5 16.5 13.5938 16.5 10C16.5 6.4375 13.5625 3.5 10 3.5C6.40625 3.5 3.5 6.4375 3.5 10C3.5 13.5938 6.40625 16.5 10 16.5Z", fill: "currentColor" }) }) }));
|
|
@@ -15246,15 +16039,15 @@ function AlertBanner({ variant = "info", isIconHidden = false, isCloseable = tru
|
|
|
15246
16039
|
return (jsxRuntime.jsx("div", { className: `bcds-Alert-Banner ${variant}`, ...props, children: jsxRuntime.jsxs("div", { className: "bcds-Alert-Banner--Container", children: [" ", !isIconHidden && (jsxRuntime.jsx("span", { className: "bcds-Alert-Banner--Icon", children: customIcon ? customIcon : getIcon$2(variant) })), jsxRuntime.jsx("div", { className: "bcds-Alert-Banner--Content", role: role, children: children }), isCloseable && (jsxRuntime.jsx("span", { className: "bcds-Alert-Banner--closeIcon", children: jsxRuntime.jsx(Button, { variant: "tertiary", isIconButton: true, size: "small", "aria-label": "Close this alert", type: "button", onPress: onClose, children: jsxRuntime.jsx(SvgCloseIcon, {}) }) }))] }) }));
|
|
15247
16040
|
}
|
|
15248
16041
|
|
|
15249
|
-
var css_248z$
|
|
15250
|
-
styleInject(css_248z$
|
|
16042
|
+
var css_248z$k = ".bcds-ButtonGroup {\n display: flex;\n gap: var(--layout-margin-small);\n flex-grow: 1;\n}\n\n.bcds-ButtonGroup.horizontal {\n flex-direction: row;\n}\n\n.bcds-ButtonGroup.vertical {\n flex-direction: column;\n}\n\n.bcds-ButtonGroup.start {\n justify-content: flex-start;\n}\n\n.bcds-ButtonGroup.center {\n justify-content: center;\n}\n\n.bcds-ButtonGroup.end {\n justify-content: flex-end;\n}\n";
|
|
16043
|
+
styleInject(css_248z$k);
|
|
15251
16044
|
|
|
15252
16045
|
function ButtonGroup({ orientation = "horizontal", alignment = "start", ariaLabel, children, ...props }) {
|
|
15253
16046
|
return (jsxRuntime.jsx("div", { className: `bcds-ButtonGroup ${orientation} ${alignment}`, role: "group", "aria-label": ariaLabel, ...props, children: children }));
|
|
15254
16047
|
}
|
|
15255
16048
|
|
|
15256
|
-
var css_248z$
|
|
15257
|
-
styleInject(css_248z$
|
|
16049
|
+
var css_248z$j = ".bcds-react-aria-AlertDialog {\n display: flex;\n flex-direction: column;\n}\n\n/* Variant icons */\n.bcds-react-aria-AlertDialog.info .bcds-react-aria-AlertDialog--Icon {\n color: var(--icons-color-primary);\n}\n.bcds-react-aria-AlertDialog.confirmation .bcds-react-aria-AlertDialog--Icon {\n color: var(--icons-color-success);\n}\n.bcds-react-aria-AlertDialog.warning .bcds-react-aria-AlertDialog--Icon {\n color: var(--icons-color-warning);\n}\n.bcds-react-aria-AlertDialog.error .bcds-react-aria-AlertDialog--Icon {\n color: var(--icons-color-danger);\n}\n.bcds-react-aria-AlertDialog.destructive .bcds-react-aria-AlertDialog--Icon {\n color: var(--icons-color-danger);\n}\n\n.bcds-react-aria-AlertDialog--Header {\n display: inline-flex;\n flex-direction: row;\n gap: var(--layout-padding-small);\n justify-content: space-between;\n padding: var(--layout-padding-medium) var(--layout-padding-large);\n border-bottom: var(--layout-border-width-small) solid\n var(--surface-color-border-default);\n}\n\n.bcds-react-aria-AlertDialog--Title {\n flex-grow: 1;\n font: var(--typography-bold-h5);\n color: var(--typography-color-primary);\n}\n\n.bcds-react-aria-AlertDialog--Icon {\n justify-self: flex-start;\n align-self: center;\n padding-top: var(--layout-padding-xsmall);\n}\n\n.bcds-react-aria-AlertDialog--closeIcon {\n justify-self: flex-end;\n color: var(--icons-color-primary);\n}\n\n.bcds-react-aria-AlertDialog--children {\n font: var(--typography-regular-body);\n color: var(--typography-color-primary);\n padding: var(--layout-padding-medium) var(--layout-padding-large);\n border-bottom: var(--layout-border-width-small) solid\n var(--surface-color-border-default);\n}\n\n.bcds-react-aria-AlertDialog > .bcds-ButtonGroup {\n padding: var(--layout-padding-medium) var(--layout-padding-large);\n}\n";
|
|
16050
|
+
styleInject(css_248z$j);
|
|
15258
16051
|
|
|
15259
16052
|
/* Sets correct left icon for selected variant */
|
|
15260
16053
|
function getIcon$1(variant) {
|
|
@@ -15277,8 +16070,8 @@ function AlertDialog({ children, variant = "info", role = "dialog", title, isClo
|
|
|
15277
16070
|
return (jsxRuntime.jsx($de32f1b87079253c$export$3ddf2d174ce01153, { className: `bcds-react-aria-AlertDialog ${variant}`, role: role, ...props, children: ({ close }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("div", { className: "bcds-react-aria-AlertDialog--Header", children: [!isIconHidden && (jsxRuntime.jsx("div", { className: "bcds-react-aria-AlertDialog--Icon", children: getIcon$1(variant) })), title && (jsxRuntime.jsx("div", { className: "bcds-react-aria-AlertDialog--Title", slot: "title", children: title })), isCloseable && (jsxRuntime.jsx("div", { className: "bcds-react-aria-AlertDialog--closeIcon", children: jsxRuntime.jsx(Button, { variant: "tertiary", isIconButton: true, size: "small", "aria-label": "Close", type: "button", onPress: close, children: jsxRuntime.jsx(SvgCloseIcon, {}) }) }))] }), children && (jsxRuntime.jsx("div", { className: "bcds-react-aria-AlertDialog--children", slot: "children", children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }) })), buttons && (jsxRuntime.jsx(ButtonGroup, { alignment: "end", orientation: "horizontal", children: buttons }))] })) }));
|
|
15278
16071
|
}
|
|
15279
16072
|
|
|
15280
|
-
var css_248z$
|
|
15281
|
-
styleInject(css_248z$
|
|
16073
|
+
var css_248z$i = ".bcds-Callout {\n display: flex;\n width: 100%;\n box-sizing: border-box;\n padding: var(--layout-padding-medium) var(--layout-padding-large);\n border-radius: var(--layout-border-radius-medium)\n var(--layout-border-radius-none) var(--layout-border-radius-none)\n var(--layout-border-radius-medium);\n}\n\n.bcds-Callout--Container {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n gap: var(--layout-margin-small);\n}\n\n.bcds-Callout--Container > .bcds-Callout--Title {\n font: var(--typography-bold-large-body);\n color: var(--typography-color-primary);\n}\n\n.bcds-Callout--Container > .bcds-Callout--Description {\n font: var(--typography-regular-body);\n color: var(--typography-color-secondary);\n}\n\n/* Theme - light grey (default) */\n.bcds-Callout.lightGrey {\n background-color: var(--surface-color-background-light-gray);\n border-left: var(--layout-border-width-large) solid var(--theme-primary-blue);\n}\n\n/* Theme - light blue */\n.bcds-Callout.lightBlue {\n background-color: var(--theme-blue-10);\n border-left: var(--layout-border-width-large) solid var(--theme-primary-blue);\n}\n\n/* Theme - light gold */\n.bcds-Callout.lightGold {\n background-color: var(--theme-gold-10);\n border-left: var(--layout-border-width-large) solid var(--theme-primary-blue);\n}\n\n/* Theme - blue */\n.bcds-Callout.Blue {\n background-color: var(--surface-color-background-dark-blue);\n border-left: var(--layout-border-width-large) solid var(--theme-primary-gold);\n}\n\n.bcds-Callout.Blue .bcds-Callout--Title {\n color: var(--typography-color-primary-invert);\n}\n\n.bcds-Callout.Blue .bcds-Callout--Description {\n color: var(--typography-color-secondary-invert);\n}\n\n/* Theme - grey */\n.bcds-Callout.Grey {\n background-color: var(--theme-gray-80);\n border-left: var(--layout-border-width-large) solid var(--theme-primary-gold);\n}\n\n.bcds-Callout.Grey .bcds-Callout--Title {\n color: var(--typography-color-primary-invert);\n}\n\n.bcds-Callout.Grey .bcds-Callout--Description {\n color: var(--typography-color-secondary-invert);\n}\n\n/* Theme - black */\n.bcds-Callout.Black {\n background-color: var(--theme-gray-100);\n border-left: var(--layout-border-width-large) solid var(--theme-primary-gold);\n}\n\n.bcds-Callout.Black .bcds-Callout--Title {\n color: var(--typography-color-primary-invert);\n}\n\n.bcds-Callout.Black .bcds-Callout--Description {\n color: var(--typography-color-secondary-invert);\n}\n\n/* Border disabled */\n.bcds-Callout.lightGrey.noBorder,\n.bcds-Callout.lightGold.noBorder,\n.bcds-Callout.lightBlue.noBorder,\n.bcds-Callout.Blue.noBorder,\n.bcds-Callout.Grey.noBorder,\n.bcds-Callout.Black.noBorder {\n border-left: none;\n border-radius: var(--layout-border-radius-none);\n}\n";
|
|
16074
|
+
styleInject(css_248z$i);
|
|
15282
16075
|
|
|
15283
16076
|
function Callout({ variant = "lightGrey", title, description, buttons, role = "note", isLeftBorderDisabled = false, children, ...props }) {
|
|
15284
16077
|
return (jsxRuntime.jsx("div", { className: `bcds-Callout ${variant} ${isLeftBorderDisabled ? "noBorder" : ""}`, ...props, role: role, children: children ? (children) : (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("div", { className: "bcds-Callout--Container", "aria-labelledby": "callout-title", role: role, children: [title && (jsxRuntime.jsx("span", { className: "bcds-Callout--Title", id: "callout-title", children: title })), description && (jsxRuntime.jsx("span", { className: "bcds-Callout--Description", children: description })), buttons && (jsxRuntime.jsx(ButtonGroup, { alignment: "start", orientation: "horizontal", children: buttons }))] }) })) }));
|
|
@@ -15293,22 +16086,22 @@ function SvgDashIcon({ id = "dash-icon" }) {
|
|
|
15293
16086
|
return (jsxRuntime.jsx("svg", { id: id, width: "8", height: "10", viewBox: "0 0 8 2", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("path", { d: "M6.99005 1.96004H1.01005C0.479855 1.96004 0.0500488 1.53023 0.0500488 1.00004C0.0500488 0.469846 0.479855 0.0400391 1.01005 0.0400391H6.99005C7.52024 0.0400391 7.95005 0.469846 7.95005 1.00004C7.95005 1.53023 7.52024 1.96004 6.99005 1.96004H6.99005Z", fill: "currentColor" }) }));
|
|
15294
16087
|
}
|
|
15295
16088
|
|
|
15296
|
-
var css_248z$
|
|
15297
|
-
styleInject(css_248z$
|
|
16089
|
+
var css_248z$h = ".bcds-react-aria-Checkbox {\n cursor: pointer;\n display: flex;\n flex-direction: row;\n gap: 10px;\n align-items: center;\n}\n\n/* Checkbox */\n.bcds-react-aria-Checkbox > .checkbox {\n align-self: first baseline;\n display: flex;\n margin-top: var(--layout-margin-hair);\n justify-content: space-around;\n width: var(--icons-size-small);\n height: var(--icons-size-small);\n min-width: var(--icons-size-small);\n background-color: var(--surface-color-secondary-default);\n border-color: var(--surface-color-border-medium);\n border-style: solid;\n border-width: var(--layout-border-width-small);\n border-radius: var(--layout-border-radius-small);\n}\n.bcds-react-aria-Checkbox > .checkbox > svg {\n align-self: center;\n}\n\n/* Label */\n.bcds-react-aria-Checkbox > .label {\n font: var(--typography-regular-small-body);\n color: var(--typography-color-secondary);\n}\n\n/* Focus */\n.bcds-react-aria-Checkbox[data-focused] > .checkbox {\n outline: solid var(--layout-border-width-medium)\n var(--surface-color-border-active);\n outline-offset: var(--layout-margin-hair);\n}\n\n/* Hover */\n.bcds-react-aria-Checkbox[data-hovered] > .checkbox {\n border-color: var(--surface-color-border-dark);\n}\n.bcds-react-aria-Checkbox[data-selected][data-hovered] > .checkbox {\n background-color: var(--surface-color-primary-hover);\n border-color: var(--surface-color-primary-hover);\n}\n\n/* Pressed */\n.bcds-react-aria-Checkbox[data-pressed] > .checkbox {\n background-color: var(--surface-color-primary-default);\n}\n\n/* Selected */\n.bcds-react-aria-Checkbox[data-selected] > .checkbox {\n background-color: var(--surface-color-primary-default);\n border-color: var(--surface-color-primary-default);\n}\n.bcds-react-aria-Checkbox[data-selected] > .checkbox > svg {\n color: var(--icons-color-primary-invert);\n}\n\n/* Disabled */\n.bcds-react-aria-Checkbox[data-disabled] {\n cursor: not-allowed;\n}\n.bcds-react-aria-Checkbox[data-disabled] > .checkbox {\n border-color: var(--surface-color-border-medium);\n background-color: var(--surface-color-primary-disabled);\n}\n.bcds-react-aria-Checkbox[data-disabled] > .label {\n color: var(--typography-color-disabled);\n}\n.bcds-react-aria-Checkbox[data-selected][data-disabled] > .checkbox {\n border-color: var(--surface-color-primary-disabled);\n background-color: var(--surface-color-primary-disabled);\n}\n.bcds-react-aria-Checkbox[data-selected][data-disabled] > .checkbox > svg {\n color: var(--icons-color-disabled);\n}\n\n/* Indeterminate */\n.bcds-react-aria-Checkbox[data-indeterminate] > .checkbox {\n background-color: var(--surface-color-primary-default);\n border-color: var(--surface-color-primary-default);\n}\n.bcds-react-aria-Checkbox[data-indeterminate][data-disabled] > .checkbox {\n background-color: var(--surface-color-primary-disabled);\n border-color: var(--surface-color-primary-disabled);\n}\n.bcds-react-aria-Checkbox[data-indeterminate][data-invalid] > .checkbox {\n background-color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Checkbox[data-indeterminate] > .checkbox > svg {\n color: var(--icons-color-primary-invert);\n align-self: center;\n vertical-align: middle;\n}\n.bcds-react-aria-Checkbox[data-indeterminate][data-disabled] > .checkbox > svg {\n color: var(--icons-color-disabled);\n}\n\n/* Read-only */\n.bcds-react-aria-Checkbox[data-readonly] {\n cursor: not-allowed;\n}\n\n/* Invalid */\n.bcds-react-aria-Checkbox[data-invalid] > .checkbox {\n border-color: var(--support-border-color-danger);\n}\n.bcds-react-aria-Checkbox[data-invalid] > .checkbox > svg {\n color: var(--icons-color-primary-invert);\n}\n.bcds-react-aria-Checkbox[data-selected][data-invalid] > .checkbox {\n background-color: var(--surface-color-primary-danger-button-default);\n}\n";
|
|
16090
|
+
styleInject(css_248z$h);
|
|
15298
16091
|
|
|
15299
16092
|
function Checkbox({ value, children, ...props }) {
|
|
15300
16093
|
return (jsxRuntime.jsx($bc237834342dbd75$export$48513f6b9f8ce62d, { className: "bcds-react-aria-Checkbox", value: value, ...props, children: ({ isRequired, isSelected, isIndeterminate }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("div", { className: "checkbox", children: [isSelected && !isIndeterminate && jsxRuntime.jsx(SvgCheckIcon, {}), isIndeterminate && jsxRuntime.jsx(SvgDashIcon, {})] }), jsxRuntime.jsxs("span", { className: "label", children: [jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }), " ", isRequired && "(required)"] })] })) }));
|
|
15301
16094
|
}
|
|
15302
16095
|
|
|
15303
|
-
var css_248z$
|
|
15304
|
-
styleInject(css_248z$
|
|
16096
|
+
var css_248z$g = ".bcds-react-aria-CheckboxGroup {\n display: flex;\n flex-direction: column;\n gap: var(--layout-margin-small);\n}\n\n/* Orientation */\n.bcds-react-aria-CheckboxGroup--options {\n display: flex;\n}\n\n.bcds-react-aria-CheckboxGroup--options.vertical {\n flex-direction: column;\n gap: var(--layout-margin-small);\n}\n\n.bcds-react-aria-CheckboxGroup--options.horizontal {\n flex-direction: row;\n gap: var(--layout-margin-medium);\n}\n.bcds-react-aria-CheckboxGroup--options.horizontal.flex-wrap-nowrap {\n flex-wrap: nowrap;\n}\n.bcds-react-aria-CheckboxGroup--options.horizontal.flex-wrap-wrap {\n flex-wrap: wrap;\n}\n.bcds-react-aria-CheckboxGroup--options.horizontal.flex-wrap-wrap-reverse {\n flex-wrap: wrap-reverse;\n}\n\n/* Parts */\n.bcds-react-aria-CheckboxGroup--label {\n font: var(--typography-regular-small-body);\n color: var(--typography-color-primary);\n}\n\n.bcds-react-aria-CheckboxGroup--description {\n font: var(--typography-regular-small-body);\n color: var(--typography-color-secondary);\n}\n\n.bcds-react-aria-CheckboxGroup--error {\n display: inline-flex;\n flex-direction: row;\n gap: var(--layout-margin-xsmall);\n font: var(--typography-regular-small-body);\n color: var(--typography-color-danger);\n}\n";
|
|
16097
|
+
styleInject(css_248z$g);
|
|
15305
16098
|
|
|
15306
16099
|
function CheckboxGroup({ orientation = "vertical", label, description, errorMessage, flexWrap = "nowrap", children, ...props }) {
|
|
15307
16100
|
return (jsxRuntime.jsx($bc237834342dbd75$export$4aa08d5625cb8ead, { className: `bcds-react-aria-CheckboxGroup`, ...props, children: ({ isRequired, isInvalid }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [label && (jsxRuntime.jsxs($01b77f81d0f07f68$export$b04be29aa201d4f5, { className: "bcds-react-aria-CheckboxGroup--label", children: [label, " ", isRequired && "(required)"] })), jsxRuntime.jsx("div", { className: `bcds-react-aria-CheckboxGroup--options ${orientation} flex-wrap-${flexWrap}`, children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }) }), description && (jsxRuntime.jsx($514c0188e459b4c0$export$5f1af8db9871e1d6, { slot: "description", className: "bcds-react-aria-CheckboxGroup--description", children: description })), isInvalid && (jsxRuntime.jsxs("div", { className: "bcds-react-aria-CheckboxGroup--error", children: [jsxRuntime.jsx(SvgExclamationIcon, {}), jsxRuntime.jsx($ee014567cb39d3f0$export$f551688fc98f2e09, { children: errorMessage })] }))] })) }));
|
|
15308
16101
|
}
|
|
15309
16102
|
|
|
15310
|
-
var css_248z$
|
|
15311
|
-
styleInject(css_248z$
|
|
16103
|
+
var css_248z$f = ".bcds-react-aria-Dialog {\n display: flex;\n flex-direction: column;\n min-height: var(--layout-margin-xxxlarge);\n}\n\n.bcds-react-aria-Dialog--Container {\n position: relative;\n}\n\n/* Close icon */\n.bcds-react-aria-Dialog--closeIcon {\n color: var(--icons-color-primary);\n position: absolute;\n top: 0;\n right: 0;\n padding: var(--layout-padding-small);\n}\n.bcds-react-aria-Dialog--closeIcon > svg {\n min-width: var(--icons-size-medium);\n height: var(--icons-size-medium);\n}\n";
|
|
16104
|
+
styleInject(css_248z$f);
|
|
15312
16105
|
|
|
15313
16106
|
function Dialog({ isCloseable = true, role = "dialog", children, ...props }) {
|
|
15314
16107
|
return (jsxRuntime.jsx($de32f1b87079253c$export$3ddf2d174ce01153, { className: "bcds-react-aria-Dialog", role: role, ...props, children: ({ close }) => (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("div", { className: "bcds-react-aria-Dialog--Container", children: [isCloseable && (jsxRuntime.jsx("span", { className: "bcds-react-aria-Dialog--closeIcon", children: jsxRuntime.jsx(Button, { variant: "tertiary", isIconButton: true, size: "small", "aria-label": "Close", type: "button", onPress: close, children: jsxRuntime.jsx(SvgCloseIcon, {}) }) })), jsxRuntime.jsx(jsxRuntime.Fragment, { children: children })] }) })) }));
|
|
@@ -15319,8 +16112,8 @@ function SvgBcLogo({ id = "bcgov-logo" }) {
|
|
|
15319
16112
|
return (jsxRuntime.jsxs("svg", { id: id, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 847.65 327.01", children: [jsxRuntime.jsx("path", { d: "M109.59,226.32c44.7,0,106.54,25.17,151.41,25.17,32.02,0,63.26-8.54,81.04-21.13,1.24-7.39,1.9-14.97,1.9-22.72,0-75.13-60.91-136.04-136.04-136.04s-136.04,60.91-136.04,136.04c0,7.65.64,15.15,1.86,22.46,4.9-.91,21.57-3.79,35.87-3.79Z", style: { fill: "#fff", strokeWidth: "0px" } }), jsxRuntime.jsxs("g", { children: [jsxRuntime.jsxs("g", { children: [jsxRuntime.jsx("rect", { x: "415.4", y: "252.98", width: "314.66", height: "3.82", style: { fill: "#e3a82b", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M423.47,116.64c0-6.39-.45-8.08-4.76-8.43l-3-.21c-.49-.39-.35-2.12.1-2.16,5.17-.46,11.69-.69,20.6-.69,6.04,0,11.79.43,16.1,2.42,4.12,1.81,7.28,5.26,7.28,10.79,0,6.22-4.03,9.41-9.77,11.83,0,.86.77,1.12,1.82,1.29,5.17.86,12.84,5.18,12.84,14.42,0,10.01-8.24,16.75-25.49,16.75-2.78,0-7.47-.26-11.5-.26s-7.47.17-11.02.26c-.57-.26-.77-1.64-.19-2.16l1.73-.26c5.08-.78,5.27-1.73,5.27-10.79v-32.8ZM431.32,128.12c0,2.42.1,2.59,4.98,2.42,9.77-.35,15.04-2.94,15.04-11.05s-7-11.65-14.28-11.65c-2.11,0-3.55.17-4.41.52-.96.26-1.34.69-1.34,2.24v17.52ZM431.32,148.14c0,3.11.19,7.51,2.01,9.41,1.82,1.98,4.7,2.42,7.57,2.42,8.53,0,15.04-3.45,15.04-12.08,0-6.82-3.83-14.76-19.07-14.76-5.17,0-5.56.52-5.56,2.24v12.77Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M531.26,125.14c0-7.82-.16-9.07-4.99-9.44l-2.05-.15c-.49-.29-.33-1.62.16-1.84,4.09.15,6.87.22,10.31.22s6.06-.07,10.15-.22c.49.22.65,1.55.16,1.84l-2.04.15c-4.83.37-4.99,1.62-4.99,9.44v26.25c0,7.82.16,8.85,4.99,9.36l2.04.22c.49.29.33,1.62-.16,1.84-4.09-.15-6.87-.22-10.15-.22-3.44,0-6.22.07-10.31.22-.49-.22-.66-1.4-.16-1.84l2.05-.22c4.83-.52,4.99-1.55,4.99-9.36v-26.25Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M576.66,151.53c0,7.74.15,8.85,4.6,9.22l2.45.22c.46.29.31,1.62-.15,1.84-4.37-.15-6.98-.22-10.05-.22s-5.75.07-10.66.22c-.46-.22-.62-1.47,0-1.84l2.76-.22c4.37-.37,4.75-1.48,4.75-9.22v-32.96c0-2.28,0-2.36-2.3-2.36h-4.22c-3.3,0-7.51.15-9.43,1.84-1.84,1.62-2.61,3.24-3.45,5.09-.62.44-1.69.07-1.99-.52,1.22-3.32,2.38-8.04,2.91-10.98.23-.15,1.23-.22,1.46,0,.46,2.36,2.99,2.29,6.52,2.29h31.05c4.14,0,4.83-.15,5.98-2.06.38-.15,1.23-.07,1.38.22-.84,3.02-1.38,9-1.15,11.21-.31.59-1.61.59-1.99.15-.23-1.84-.77-4.57-1.92-5.38-1.76-1.25-4.68-1.84-8.89-1.84h-5.44c-2.3,0-2.22.07-2.22,2.51v32.81Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M609.53,125.14c0-7.82-.16-9.07-4.99-9.44l-2.05-.15c-.49-.29-.33-1.62.16-1.84,4.09.15,6.87.22,10.31.22s6.05-.07,10.15-.22c.49.22.66,1.55.17,1.84l-2.05.15c-4.83.37-4.99,1.62-4.99,9.44v26.25c0,7.82.16,8.85,4.99,9.36l2.05.22c.49.29.33,1.62-.17,1.84-4.09-.15-6.87-.22-10.15-.22-3.44,0-6.22.07-10.31.22-.49-.22-.65-1.4-.16-1.84l2.05-.22c4.83-.52,4.99-1.55,4.99-9.36v-26.25Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M646.2,163.57c-7.31,0-11.92-1.92-13.57-2.73-1.04-1.62-2.18-6.86-2.35-10.32.44-.52,1.74-.66,2.09-.22,1.31,3.76,4.87,10.98,14.96,10.98,7.31,0,10.87-4.05,10.87-8.48,0-3.24-.78-6.86-7.13-10.32l-8.26-4.57c-4.35-2.43-9.4-6.64-9.4-12.68,0-7,6.44-12.68,17.75-12.68,2.7,0,5.83.44,8.09.96,1.13.29,2.35.44,3.04.44.78,1.77,1.57,5.9,1.57,9-.35.44-1.74.66-2.18.22-1.13-3.54-3.48-8.33-11.83-8.33s-10.35,4.79-10.35,8.18c0,4.28,4.18,7.38,7.39,9.07l6.96,3.69c5.48,2.88,10.88,7.15,10.88,14.16,0,8.11-7.22,13.64-18.53,13.64Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M689.99,138.78c-3.81,0-3.96.15-3.96,2.36v10.4c0,7.74.4,8.77,4.84,9.22l2.3.22c.48.29.32,1.62-.16,1.84-4.28-.15-6.98-.22-10.08-.22-3.41,0-6.11.15-9.2.22-.47-.22-.63-1.4-.16-1.84l1.35-.22c4.45-.74,4.6-1.48,4.6-9.22v-26.54c0-7.74-.55-8.99-4.68-9.29l-2.06-.15c-.48-.29-.32-1.62.16-1.84,3.89.07,6.58.22,10,.22,3.1,0,5.79-.07,9.2-.22.48.22.63,1.55.16,1.84l-1.51.15c-4.6.44-4.76,1.55-4.76,9.29v8.48c0,2.28.16,2.36,3.96,2.36h22.69c3.81,0,3.97-.07,3.97-2.36v-8.48c0-7.74-.16-8.85-4.84-9.29l-1.51-.15c-.48-.29-.32-1.62.16-1.84,3.65.15,6.35.22,9.6.22s5.79-.07,9.36-.22c.48.22.63,1.55.16,1.84l-1.66.15c-4.6.44-4.76,1.55-4.76,9.29v26.54c0,7.74.16,8.7,4.76,9.22l1.9.22c.47.29.32,1.62-.16,1.84-3.81-.15-6.51-.22-9.6-.22-3.25,0-6.11.07-9.6.22-.48-.22-.63-1.4-.16-1.84l1.51-.22c4.84-.74,4.84-1.48,4.84-9.22v-10.4c0-2.21-.16-2.36-3.97-2.36h-22.69Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M378.06,179.01c6.52-5.07,14.83-7.57,24.12-7.57,4.82,0,11.61.98,15.81,2.14,1.07.27,1.7.45,2.5.36.09,2.05.54,7.65,1.25,13.09-.45.62-1.79.71-2.41.18-1.34-6.05-5.36-13-18.31-13-13.67,0-25.28,8.64-25.28,27.06s11.88,29.02,26.53,29.02c11.52,0,16.62-7.48,18.67-12.73.63-.44,1.97-.27,2.32.36-.62,4.63-2.95,10.5-4.29,12.2-1.07.18-2.14.53-3.13.89-1.97.71-8.4,2.05-14.11,2.05-8.04,0-15.72-1.6-22.24-5.96-7.15-4.9-12.69-12.99-12.69-24.48,0-9.88,4.47-18.34,11.26-23.59Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M426.92,207.81c0-14.75,11.61-26.03,27.56-26.03,17.88,0,26.86,12.31,26.86,25.29,0,14.89-11.92,25.73-26.86,25.73-17.19,0-27.56-11.72-27.56-25ZM473.6,209.35c0-12.17-5.65-25.29-20.44-25.29-8.05,0-18.5,5.24-18.5,21.38,0,10.91,5.57,25.07,20.82,25.07,9.29,0,18.12-6.64,18.12-21.16Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M568.68,201.47c0-4.57-.16-13.05-1.49-15.26-.55-.89-1.95-1.4-3.91-1.55l-1.95-.15c-.47-.52-.31-1.47.15-1.77,2.97.15,5.86.22,8.91.22,3.28,0,5.39-.08,8.21-.22.62.37.55,1.33.16,1.77l-1.88.15c-1.95.15-3.44.81-3.91,1.77-1.09,2.43-1.09,10.91-1.09,15.04v8.33c0,6.42-1.1,13.2-5.47,17.62-3.36,3.47-9.14,5.38-14.93,5.38-5.39,0-10.79-.96-14.62-4.05-4.14-3.24-6.1-8.63-6.1-17.4v-17.4c0-7.67-.16-8.92-4.69-9.29l-1.96-.15c-.47-.29-.31-1.55.15-1.77,3.91.15,6.57.22,9.69.22s5.78-.08,9.61-.22c.47.22.63,1.47.16,1.77l-1.88.15c-4.53.37-4.69,1.62-4.69,9.29v15.93c0,11.87,3.91,19.69,15.87,19.69,11.33,0,15.63-8.41,15.63-19.61v-8.48Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M659.52,192.26c0-5.51-.35-6.93-4.23-7.22l-2.77-.27c-.31-.28-.48-1.78.09-1.82,4.67-.35,10.54-.59,18.57-.59,5.44,0,10.62.37,14.51,2.08,3.71,1.57,6.56,4.54,6.56,9.31,0,5.36-3.63,8.12-8.81,10.2,0,.75.69.97,1.64,1.12,4.67.74,11.58,4.47,11.58,12.44,0,8.64-7.43,14.45-22.98,14.45-2.5,0-6.74-.22-10.37-.22s-6.74.15-9.93.22c-.52-.22-.69-1.41-.17-1.86l1.55-.22c4.58-.67,4.75-1.49,4.75-9.31v-28.3ZM666.6,202.16c0,2.09.09,2.24,4.49,2.09,8.81-.3,13.56-2.53,13.56-9.53s-6.3-10.05-12.87-10.05c-1.9,0-3.2.15-3.97.45-.87.22-1.21.59-1.21,1.94v15.12ZM666.6,219.44c0,2.68.17,6.48,1.81,8.12,1.64,1.71,4.23,2.08,6.82,2.08,7.69,0,13.56-2.98,13.56-10.43,0-5.88-3.45-12.73-17.19-12.73-4.67,0-5.01.44-5.01,1.94v11.02Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M518.75,160.97l-2.05-.18c-.41-.04-.78-.1-1.13-.15-2.99-.53-4.19-3.2-5.6-5.67l-7.08-12.32c-1.22-2.05-2.53-4.82-5.33-5.21,7.25-.87,13.81-5.06,13.81-12.24,0-8.3-8.21-12.01-16.52-12.01-4.98,0-9.52.13-14.59.13-2.79,0-6.12-.13-8.92-.13-1.55,0-1.57.32-1.57,1.18,0,1.28.54.92,2.19,1.02,5.9.33,5.68,1.43,5.68,6.49v32.31c0,4.62.4,6-4.46,6.44,0,0-.74.08-1.17.12l-2.06.21c-.49.44-.33,1.62.16,1.84,1.09-.04,3.03-.12,3.03-.12,2.69-.08,5.38-.28,8.06-.28s5.29.21,7.95.29h0c.94.03,1.94.07,3.03.1.49-.22.66-1.4.16-1.84l-2.07-.2c-.42-.05-1.15-.11-1.15-.11-4.9-.33-4.6-1.71-4.6-6.46v-12.17c0-.71-.09-2.61.44-3.16.44-.48,1.22-.4,1.92-.4,6.64,0,6.55.63,9.7,6.16l8.56,15.4c.7,1.19,1.22,2.69,2.97,2.69h7.44c.94.03,1.92.06,3.01.1.49-.22.65-1.4.16-1.84ZM488.92,136.74c-1.49,0-4.46.55-4.46-1.42v-14.14c0-5.53.18-6.32,6.82-6.32,7.78,0,12.58,3.95,12.58,11.22,0,3.16-1.14,6.08-4.02,8.06-3.32,2.29-6.9,2.61-10.92,2.61Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsxs("g", { children: [jsxRuntime.jsx("path", { d: "M490.53,194.2c0-7.74-.16-8.92-5.27-9.29l-2.03-.15c-.49-.3-.32-1.62.16-1.84,4.54.15,7.3.22,10.54.22s5.92-.07,9.98-.22c.49.22.65,1.55.16,1.84l-1.95.15c-4.78.37-4.95,1.55-4.95,9.29v25.66c0,4.64.24,6.56,1.7,7.96.89.81,2.43,1.7,8.84,1.7,6.89,0,8.6-.3,9.9-.96,1.62-.89,3.73-3.54,5.35-7.3.49-.37,2.03-.07,2.03.44,0,.81-2.27,8.33-3.41,10.32-4.13-.15-11.84-.22-20.2-.22h-7.46c-3.41,0-6,.07-10.54.22-.49-.22-.65-1.4-.16-1.84l2.43-.22c4.7-.44,4.87-1.48,4.87-9.22v-26.54Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M707.79,194.34c0-7.81-.16-9.07-4.86-9.44l-1.99-.15c-.48-.3-.32-1.62.16-1.84,3.98.15,6.69.22,10.03.22s5.89-.07,9.87-.22c.48.22.64,1.55.16,1.84l-1.99.15c-4.7.37-4.86,1.62-4.86,9.44v26.25c0,7.82.16,8.85,4.86,9.36l1.99.22c.48.3.32,1.62-.16,1.84-3.98-.15-6.69-.22-9.87-.22-3.35,0-6.05.07-10.03.22-.48-.22-.64-1.4-.16-1.84l1.99-.22c4.7-.52,4.86-1.55,4.86-9.36v-26.25Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M644.16,229.94c-.41-.04-1.17-.1-1.17-.1-.84-.08-1.59-.2-2.19-.86-1.03-1.1-.95-4.23-.95-5.48v-32.31c0-1.41-.34-4.46.69-5.56.52-.58,1.59-.67,2.55-.73h0c.58-.05.6-.05,1.11-.07l2.05-.15c.49-.3.33-1.62-.16-1.84-1.09.04-2.09.02-3.03.05h0s-8.7,0-8.7,0c-.95,0-1.81,0-2.32,1.02l-17.73,36.92-15.66-35.67c-.52-1.25-.6-2.27-2.24-2.27h-9.05c-.94-.03-1.98-.02-3.08-.06-.49.22-.66,1.55-.16,1.84l2.05.15c.42.03,1.19.09,1.19.09,3.4.22,3.61.98,3.3,4.55l-2.67,34.65c-.23,3.48-.42,5.32-4.07,5.66,0,0-.77.1-1.19.14l-2.04.22c-.49.44-.33,1.62.16,1.84,1.08-.04,3-.1,3-.1,1.85-.09,3.73-.25,5.61-.25,2.03,0,4.06.19,6.1.27h0c.94.03,1.94.07,3.03.1.49-.22.66-1.4.16-1.84l-2.04-.22c-.54-.04-1.14-.1-1.14-.1-5.26-.36-5.14-4.07-4.81-8.62l2.5-32.23h.6l16.95,39.66c.17.55.43,1.49,1.29,1.49.78,0,1.03-.86,1.29-1.41l19.1-40.68h.6v35.44c0,1.41.17,4.3-1.29,5.4-.76.57-3.25.91-3.25.91-.34.05-.7.1-1.11.15l-2.04.22c-.49.44-.33,1.62.16,1.84,1.08-.04,2.99-.1,2.99-.1,2.77-.08,5.59-.28,8.41-.28,2.03,0,6,.19,6,.19.95.03,2.02.13,3.12.17.49-.22.66-1.4.16-1.84l-2.05-.22Z", style: { fill: "#234075", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M777.13,230.14l-.28-.22c-.41-.04-.77-.09-1.11-.15-3.19-.71-4.43-4.55-5.61-7.29l-16.41-38.83c-.16-.47-.49-1.47-1.14-1.47-.89,0-1.14,1.08-1.38,1.7l-15.68,38.76c-.57,1.47-2.03,5.03-3.09,6.11-.81.83-1.86.99-2.99,1.1,0,0-.88.08-1.31.13l-1.93.2c-.49.44-.33,1.62.16,1.84,1.09-.04,3.03-.11,3.03-.11,2.14-.03,4.29-.3,6.44-.3,1.81,0,3.61.19,5.41.27,0,0,1.94.07,3.03.11.49-.22.65-1.4.16-1.84l-2.05-.22c-.41-.04-1.11-.11-1.11-.11-1.89-.21-4.24-.55-4.24-2.62,0-1.39.65-3.02,1.14-4.25l2.44-5.8c1.22-2.78.73-3.1,3.98-3.1h11.05c3.9,0,3.33,0,5.04,3.95l2.6,5.88c.41,1.01,1.14,2.71,1.14,3.79,0,1.94-2.12,2.07-4.11,2.24,0,0-.66.06-1.23.1l-1.97.14c-.49.44-.33,1.62.17,1.84,1.09-.04,3.03-.12,3.03-.12,2.31-.08,4.64-.26,6.87-.26,2.85,0,5.69.19,8.54.27h0c.93.03.14.06,1.22.1.49-.22.65-1.4.16-1.84ZM755.64,211.89h-9.57c-.33,0-3,.31-3-.47,0-.24.17-.7.25-.94l5.75-14.23c.17-.39.75-2.35,1.41-2.35.5,0,1.17,2.03,1.33,2.35l5.66,13.29c0,.16.58,1.41.58,1.72,0,.86-1.91.62-2.41.62Z", style: { fill: "#234075", strokeWidth: "0px" } })] }), jsxRuntime.jsx("rect", { width: "847.65", height: "327.01", style: { fill: "none", strokeWidth: "0px" } })] }), jsxRuntime.jsxs("g", { children: [jsxRuntime.jsx("polygon", { points: "295.89 176.17 301.27 178.4 313.19 170.08 295.89 176.17", style: { fill: "#e3a82b", strokeWidth: "0px" } }), jsxRuntime.jsx("path", { d: "M95.46,166.88l-14.14-4.97.71-1.73,15.92,5.31.07-.04,2.1-1.19.84-.53-17.36-7.39.73-1.82,38.75,15.67,1.28-.53-38.44-18.73.86-1.76,40.73,18.96.56-.29-39.49-22.4.81-1.68,57.03,31.03c.47-.86,1.44-2.44,1.95-3.28-21.68-20.39-42.61-35.69-42.61-35.69,0,0,21.52,14.41,48.07,27.81.88-1.09,1.6-1.97,2.53-3.01l-48.65-42.83,1.31-1.34,39.27,33.47-36.38-36.43,1.36-1.41,40.84,39.47-38.02-42.2,1.45-1.31,35.14,37.63-32.07-40.41,1.38-1.26,41.11,50.03c1.06-.92,1.95-1.61,3.06-2.46-12.44-26.91-26.02-48.8-26.02-48.8,0,0,14.46,21.28,33.96,43.56,1.19-.67,2.4-1.31,3.63-1.92l-.21-.13-28.81-57.5,1.71-.75,23.87,45.74-20.08-47.41,1.79-.8,23.08,51.9-19.45-53.37,1.84-.67,18.49,48.05-14.6-49.49,1.75-.65,19.22,61.38-.04.16.05-.02c1.28-.43,2.58-.81,3.89-1.16-1.46-29.48-5.82-54.7-5.82-54.7,0,0,5.4,25,15.08,52.87,1.35-.17,2.71-.31,4.07-.4l-.04-.06h.17l-.1-.14-5.17-64.11,1.87-.06,5,51.35-.86-51.48,1.96-.07,1.96,56.77,1.96-56.77,1.96.07-.86,51.48,5-51.35,1.87.06-5.17,64.11-.1.14h.03v.02s.07,0,.07,0c1.34.08,2.66.22,3.98.38,9.67-27.84,15.06-52.8,15.06-52.8,0,0-4.35,25.14-5.82,54.57,1.32.35,2.63.73,3.91,1.15l19.15-61.16,1.76.65-14.6,49.48,18.49-48.05,1.84.67-19.45,53.37,23.08-51.9,1.79.8-20.08,47.41,23.87-45.74,1.71.75-28.71,57.3.05.02c1.18.58,2.34,1.19,3.49,1.83,19.42-22.21,33.79-43.37,33.79-43.37,0,0-13.49,21.74-25.89,48.52,1.11.84,2.19,1.7,3.24,2.6l40.63-49.49,1.39,1.26-32.08,40.41,35.14-37.63,1.45,1.31-38.02,42.2,40.84-39.47,1.36,1.41-36.38,36.43,39.27-33.47,1.31,1.34-48.06,42.35.03.03c.84.94,1.65,1.9,2.44,2.88,26.39-13.34,47.71-27.62,47.71-27.62,0,0-20.72,15.16-42.29,35.4.59.99,1.55,2.67,2.09,3.69l56.22-30.61.81,1.69-44.88,25.45,46.68-21.72.86,1.76-43.48,21.19.83.29,44.24-17.89.74,1.82-41.12,17.49.77.32,27.4-9.13,4.13-2.88,1.37,1.05,9.02-3.01.71,1.73-7.8,2.75,11.27,8.6,3.61,2.01c-14.49-60.58-68.98-105.62-134-105.62s-121.42,46.63-134.73,108.82c.17-.08.34-.16.51-.24l1.65-.75,1.01-.47,19.01-10.66Z", style: { fill: "#e3a82b", strokeWidth: "0px" } })] }), jsxRuntime.jsx("path", { d: "M72.5,233.02s20.32-4.06,37.29-4.06c44.7,0,106.54,25.17,151.41,25.17,32.91,0,65.02-9.03,82.51-22.19,1.37-7.79,2.08-15.8,2.08-23.98,0-11.08-1.32-21.85-3.79-32.17l-18.7-10.43-21.95,15.39-14.76-5.75c-5,2.53-35.83,23.15-35.83,23.15l-11.84-8.57-12.7-2.51-16.93-12.33-19.42,13.33s-21.67,12.58-22.41,12.58-26.14-20.13-26.14-20.13l-11.7-12.33c-1.99,1.26-9.95,4.91-9.95,4.91l-.41.11-7.7-2.38-9.35-4.96-28.41,12.88c-.17.08-.34.16-.51.24-2,9.34-3.06,19.03-3.06,28.96,0,8.56.79,16.93,2.28,25.06Z", style: { fill: "#234075", strokeWidth: "0px" } })] })] }));
|
|
15320
16113
|
}
|
|
15321
16114
|
|
|
15322
|
-
var css_248z$
|
|
15323
|
-
styleInject(css_248z$
|
|
16115
|
+
var css_248z$e = ".bcds-footer {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n width: 100%;\n}\n\n.bcds-footer > .bcds-footer--acknowledgement {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-around;\n border-top: var(--layout-border-width-large) solid var(--theme-gold-60);\n border-bottom: var(--layout-border-width-large) solid var(--theme-gold-60);\n background-color: var(--theme-gray-110);\n padding: var(--layout-padding-xlarge);\n}\n\n.bcds-footer\n > .bcds-footer--acknowledgement\n > .bcds-footer--acknowledgement-text {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: stretch;\n color: var(--typography-color-primary-invert);\n font: var(--typography-regular-small-body);\n max-width: 1100px;\n width: 100%;\n}\n\n.bcds-footer\n > .bcds-footer--acknowledgement\n > .bcds-footer--acknowledgement-text\n > p {\n margin: var(--layout-margin-none);\n}\n\n.bcds-footer > .bcds-footer--container {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-around;\n background-color: var(--surface-color-background-light-gray);\n padding: var(--layout-padding-xlarge);\n}\n\n.bcds-footer > .bcds-footer--container > .bcds-footer--container-content {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n gap: var(--layout-padding-xlarge);\n max-width: 1100px;\n width: 100%;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: flex-start;\n column-gap: var(--layout-padding-xlarge);\n row-gap: var(--layout-padding-medium);\n justify-content: space-between;\n width: 100%;\n}\n\n/* `horizontal` class is the default, when no `children` prop is passed */\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links.horizontal {\n flex-direction: row;\n}\n\n/* `vertical` class is used when a `children` prop is passed */\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links.vertical {\n flex-direction: column;\n align-items: stretch;\n row-gap: var(--layout-padding-xlarge);\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo {\n display: flex;\n flex-direction: column;\n gap: var(--layout-padding-large);\n min-width: 324px;\n width: 576px;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo\n > #bcgov-logo-footer {\n width: 146px;\n min-width: 146px;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo\n > p {\n font: var(--typography-regular-small-body);\n margin: var(--layout-margin-none);\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo\n > p\n > a {\n color: var(--typography-color-secondary);\n font: var(--typography-regular-small-body);\n text-decoration: underline;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo\n > p\n > a:hover {\n text-decoration: none;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--links {\n margin: var(--layout-margin-none);\n}\n\n/*\n When Footer hasn't been passed `children`, expand the links container to take\n up 320px, as the default links are narrower.\n*/\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links.horizontal\n > .bcds-footer--links {\n min-width: 320px;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--links\n > .bcds-footer--links-title {\n display: block;\n font: var(--typography-bold-small-body);\n margin-bottom: var(--layout-padding-medium);\n text-transform: uppercase;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--links\n > ul {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n grid-template-rows: auto;\n grid-column-gap: var(--layout-padding-xlarge);\n grid-row-gap: var(--layout-padding-small);\n list-style: none;\n margin: var(--layout-margin-none);\n padding: var(--layout-padding-none);\n}\n\n/*\n When a Footer has been passed `children`, the logo-links container fills the\n full width of the container, so there's room for 4 columns of links.\n*/\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links.vertical\n > .bcds-footer--links\n > ul {\n grid-template-columns: repeat(4, 1fr);\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--links\n > ul\n > li {\n font: var(--typography-regular-small-body);\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--links\n > ul\n > li\n > a {\n color: var(--typography-color-primary);\n text-decoration: none;\n}\n\n.bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--links\n > ul\n > li\n > a:hover {\n text-decoration: underline;\n}\n\n.bcds-footer > .bcds-footer--container > .bcds-footer--container-content > hr {\n background-color: var(--surface-color-border-dark);\n border: var(--layout-border-width-none);\n height: var(--layout-border-width-small);\n margin: var(--layout-margin-none);\n width: 100%;\n}\n\np.bcds-footer--copyright {\n color: var(--typography-color-secondary);\n font: var(--typography-regular-body);\n margin: var(--layout-margin-none);\n}\n\n/* Tablet */\n@media (max-width: 991px) {\n /* Links drop beneath logo in the default configuration */\n .bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links {\n flex-wrap: wrap;\n }\n\n .bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo {\n max-width: 324px;\n }\n\n /*\n When the `children` prop is used with multiple FooterLinks components,\n only two columns of links appear on screen at once.\n */\n .bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links.vertical\n > .bcds-footer--links\n > ul {\n grid-template-columns: repeat(2, 1fr);\n }\n}\n\n/* Extra small screens */\n@media (max-width: 575px) {\n .bcds-footer > .bcds-footer--acknowledgement {\n padding: var(--layout-padding-xlarge) var(--layout-padding-medium);\n }\n\n .bcds-footer > .bcds-footer--container {\n padding: var(--layout-padding-medium);\n }\n\n .bcds-footer > .bcds-footer--container > .bcds-footer--container-content {\n gap: var(--layout-padding-medium);\n }\n\n .bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links\n > .bcds-footer--logo {\n gap: var(--layout-padding-medium);\n }\n\n /*\n When the `children` prop is used with multiple FooterLinks components,\n only one column of links appear on screen at once.\n */\n .bcds-footer\n > .bcds-footer--container\n > .bcds-footer--container-content\n > .bcds-footer--logo-links.vertical\n > .bcds-footer--links\n > ul {\n grid-template-columns: repeat(1, 1fr);\n }\n}\n";
|
|
16116
|
+
styleInject(css_248z$e);
|
|
15324
16117
|
|
|
15325
16118
|
/**
|
|
15326
16119
|
* A titled list of links for use in the Footer. Rendered inside a `<figure>`
|
|
@@ -15374,8 +16167,8 @@ function Form({ ...props }) {
|
|
|
15374
16167
|
return jsxRuntime.jsx($d3e0e05bdfcf66bd$export$a7fed597f4b8afd8, { ...props });
|
|
15375
16168
|
}
|
|
15376
16169
|
|
|
15377
|
-
var css_248z$
|
|
15378
|
-
styleInject(css_248z$
|
|
16170
|
+
var css_248z$d = ".bcds-header {\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-around;\n background-color: var(--surface-color-forms-default);\n border-bottom-color: var(--surface-color-border-default);\n border-bottom-style: solid;\n border-bottom-width: var(--layout-border-width-small);\n min-height: 65px;\n padding: var(--layout-padding-none) var(--layout-padding-medium);\n width: 100%;\n}\n\n.bcds-header > .bcds-header--container {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--layout-padding-medium);\n max-width: 1100px;\n}\n\n.bcds-header > .bcds-header--container > .bcds-header--title {\n flex-grow: 1;\n font: var(--typography-bold-h4);\n color: var(--typography-color-primary);\n}\n\n.bcds-header > .bcds-header--container > ul.bcds-header--skiplinks {\n list-style: none;\n margin: 0;\n padding: 0;\n position: absolute;\n}\n\n.bcds-header > .bcds-header--container > ul.bcds-header--skiplinks li a,\n.bcds-header > .bcds-header--container > ul.bcds-header--skiplinks li button {\n background-color: var(--surface-color-forms-default);\n box-sizing: border-box;\n color: var(--typography-color-link);\n font: var(--typography-regular-body);\n margin-top: -17.5px; /* Center the link visually in a single line-height header */\n padding: var(--layout-padding-xsmall) var(--layout-padding-medium);\n position: absolute;\n margin-left: -100000px;\n}\n\n.bcds-header > .bcds-header--container > ul.bcds-header--skiplinks li a:focus,\n.bcds-header\n > .bcds-header--container\n > ul.bcds-header--skiplinks\n li\n button:focus {\n margin-left: 0; /* Line up left edge with left edge of logo image */\n text-wrap: nowrap;\n}\n\n.bcds-header > .bcds-header--container > .bcds-header--line {\n background-color: var(--surface-color-border-default);\n width: 1px;\n height: 32px;\n}\n\n.bcds-header > .bcds-header--container svg#bcgov-logo-header {\n min-width: 129px;\n width: 129px;\n}\n";
|
|
16171
|
+
styleInject(css_248z$d);
|
|
15379
16172
|
|
|
15380
16173
|
function Header({ children, logoLinkElement, logoImage = jsxRuntime.jsx(SvgBcLogo, { id: "bcgov-logo-header" }), skipLinks, title = "", titleElement = "span", }) {
|
|
15381
16174
|
function getLogo() {
|
|
@@ -15408,8 +16201,8 @@ function Header({ children, logoLinkElement, logoImage = jsxRuntime.jsx(SvgBcLog
|
|
|
15408
16201
|
}) })), title && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("div", { className: "bcds-header--line" }), getTitle()] })), children] }) }));
|
|
15409
16202
|
}
|
|
15410
16203
|
|
|
15411
|
-
var css_248z$
|
|
15412
|
-
styleInject(css_248z$
|
|
16204
|
+
var css_248z$c = ".bcds-Inline-Alert {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n gap: var(--layout-margin-small);\n padding: var(--layout-padding-medium) var(--layout-padding-large);\n}\n\n/* Alert content */\n.bcds-Inline-Alert--container {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n\n.bcds-Inline-Alert--container > .title {\n font: var(--typography-bold-body);\n color: var(--typography-color-primary);\n}\n\n.bcds-Inline-Alert--container > .description {\n font: var(--typography-regular-body);\n color: var(--typography-color-primary);\n}\n\n/* Left icon */\n.bcds-Inline-Alert--icon {\n display: inline-flex;\n align-self: flex-start;\n padding-top: var(--layout-padding-xsmall);\n}\n\n.bcds-Inline-Alert--icon > svg {\n min-width: var(--icons-size-medium);\n height: var(--icons-size-medium);\n}\n\n/* Closeable */\n.bcds-Inline-Alert.closeable {\n /*\n Because the close icon button is removed from the document flow, we\n manually adjust the padding to push the `--container` element off the right\n edge of the InlineAlert.\n */\n padding: var(--layout-padding-medium) 52px var(--layout-padding-medium)\n var(--layout-padding-large);\n}\n\n.bcds-Inline-Alert--closeIcon {\n align-self: first baseline;\n color: var(--icons-color-primary);\n position: relative;\n}\n\n.bcds-Inline-Alert--closeIcon > button {\n position: absolute;\n /*\n Centers the button vertically.\n Button height (32px) minus line-height of text (27px) divided by 2.\n */\n top: -2.5px;\n}\n\n.bcds-Inline-Alert--closeIcon > svg {\n min-width: var(--icons-size-medium);\n height: var(--icons-size-medium);\n}\n\n/* Info variant */\n.bcds-Inline-Alert.info {\n background-color: var(--support-surface-color-info);\n border: var(--layout-border-width-small) solid\n var(--support-border-color-info);\n border-radius: var(--layout-border-radius-medium);\n}\n\n.bcds-Inline-Alert.info > .bcds-Inline-Alert--icon {\n color: var(--icons-color-info);\n}\n\n/* Success variant */\n.bcds-Inline-Alert.success {\n background-color: var(--suport-surface-color-success);\n border: var(--layout-border-width-small) solid\n var(--support-border-color-success);\n border-radius: var(--layout-border-radius-medium);\n}\n\n.bcds-Inline-Alert.success > .bcds-Inline-Alert--icon {\n color: var(--icons-color-success);\n}\n\n/* Warning variant */\n.bcds-Inline-Alert.warning {\n background-color: var(--support-surface-color-warning);\n border: var(--layout-border-width-small) solid\n var(--support-border-color-warning);\n border-radius: var(--layout-border-radius-medium);\n}\n\n.bcds-Inline-Alert.warning > .bcds-Inline-Alert--icon {\n color: var(--icons-color-warning);\n}\n\n/* Danger variant */\n.bcds-Inline-Alert.danger {\n background-color: var(--support-surface-color-danger);\n border: var(--layout-border-width-small) solid\n var(--support-border-color-danger);\n border-radius: var(--layout-border-radius-medium);\n}\n\n.bcds-Inline-Alert.danger > .bcds-Inline-Alert--icon {\n color: var(--icons-color-danger);\n}\n\n/* Button group */\n.bcds-Inline-Alert--container > .bcds-ButtonGroup {\n padding-top: var(--layout-padding-small);\n}\n";
|
|
16205
|
+
styleInject(css_248z$c);
|
|
15413
16206
|
|
|
15414
16207
|
function getIcon(variant) {
|
|
15415
16208
|
switch (variant) {
|
|
@@ -15429,6 +16222,17 @@ function InlineAlert({ variant = "info", title, description, isIconHidden = fals
|
|
|
15429
16222
|
return (jsxRuntime.jsxs("div", { className: `bcds-Inline-Alert ${variant} ${isCloseable ? "closeable" : null}`, ...props, children: [!isIconHidden && (jsxRuntime.jsx("span", { className: "bcds-Inline-Alert--icon", children: getIcon(variant) })), jsxRuntime.jsx("div", { className: "bcds-Inline-Alert--container", role: role, "aria-labelledby": "alert-title", children: children ? (children) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [title && (jsxRuntime.jsx("span", { className: "title", id: "alert-title", children: title })), description && jsxRuntime.jsx("span", { className: "description", children: description }), buttons && (jsxRuntime.jsx(ButtonGroup, { alignment: "end", orientation: "horizontal", children: buttons }))] })) }), isCloseable && (jsxRuntime.jsx("span", { className: "bcds-Inline-Alert--closeIcon", children: jsxRuntime.jsx(Button, { variant: "tertiary", isIconButton: true, size: "small", "aria-label": "Close this alert", type: "button", onPress: onClose, children: jsxRuntime.jsx(SvgCloseIcon, {}) }) }))] }));
|
|
15430
16223
|
}
|
|
15431
16224
|
|
|
16225
|
+
var css_248z$b = ".bcds-react-aria-Link {\n color: var(--typography-color-link);\n text-decoration: underline;\n text-underline-offset: var(--layout-padding-hair);\n cursor: pointer;\n}\n\n/* Icon slots */\n.bcds-react-aria-Link--Icon {\n display: inline-flex;\n flex-direction: row;\n vertical-align: text-bottom;\n margin: var(--layout-margin-none) var(--layout-margin-xsmall);\n}\n\n/* Sizing */\n.bcds-react-aria-Link.small {\n font: var(--typography-regular-small-body);\n}\n\n.bcds-react-aria-Link.medium {\n font: var(--typography-regular-body);\n}\n\n.bcds-react-aria-Link.large {\n font: var(--typography-regular-large-body);\n}\n\n/* Placeholder large button style */\n.bcds-react-aria-Button.large {\n min-height: 40px;\n}\n\n/* Hover */\n.bcds-react-aria-Link[data-hovered] {\n color: var(--surface-color-border-active);\n}\n\n.bcds-react-aria-Link[data-hovered].danger {\n color: var(--surface-color-primary-danger-button-hover);\n}\n\n/* Selected */\n.bcds-react-aria-Link[data-current] {\n color: var(--surface-color-border-active);\n}\n\n/* Focus */\n.bcds-react-aria-Link[data-focus-visible] {\n outline: solid var(--layout-border-width-medium)\n var(--surface-color-border-active);\n outline-offset: var(--layout-margin-hair);\n border-radius: var(--layout-border-radius-small);\n}\n\n/* Disabled */\n.bcds-react-aria-Link[data-disabled],\n.bcds-react-aria-Link[data-disabled].danger {\n color: var(--typography-color-disabled);\n cursor: not-allowed;\n}\n\n/* Danger */\n.bcds-react-aria-Link.danger {\n color: var(--typography-color-danger);\n}\n";
|
|
16226
|
+
styleInject(css_248z$b);
|
|
16227
|
+
|
|
16228
|
+
function Link({ children, size = "medium", danger = false, isButton = false, buttonVariant = "primary", isUnstyled = false, iconLeft, iconRight, ariaLabel, ...props }) {
|
|
16229
|
+
return (jsxRuntime.jsxs($4f118338184dc1d9$export$a6c7ac8248d6e38a, { className: !isUnstyled
|
|
16230
|
+
? isButton
|
|
16231
|
+
? `bcds-react-aria-Button ${size} ${buttonVariant} ${danger && "danger"}`
|
|
16232
|
+
: `bcds-react-aria-Link ${size} ${danger && "danger"}`
|
|
16233
|
+
: undefined, "aria-label": ariaLabel, ...props, children: [iconLeft && (jsxRuntime.jsx("span", { className: "bcds-react-aria-Link--Icon", children: iconLeft })), children, iconRight && (jsxRuntime.jsx("span", { className: "bcds-react-aria-Link--Icon", children: iconRight }))] }));
|
|
16234
|
+
}
|
|
16235
|
+
|
|
15432
16236
|
var css_248z$a = "/* Styles for overlay element */\n.react-aria-ModalOverlay:has(.bcds-react-aria-Modal) {\n position: fixed;\n inset: 0;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: var(--layout-margin-small);\n background: var(--surface-color-overlay-default);\n height: 100vh;\n width: 100vw;\n z-index: 1000;\n}\n.react-aria-ModalOverlay:has(.bcds-react-aria-Modal)[data-entering] {\n animation: modal-fade 200ms;\n}\n.react-aria-ModalOverlay:has(.bcds-react-aria-Modal)[data-exiting] {\n animation: modal-fade 150ms reverse ease-in;\n}\n@media (prefers-reduced-motion) {\n /* Don't animate modal fade in/out if prefers-reduced-motion is on */\n .react-aria-ModalOverlay:has(.bcds-react-aria-Modal)[data-entering] {\n animation: unset;\n }\n .react-aria-ModalOverlay:has(.bcds-react-aria-Modal)[data-exiting] {\n animation: unset;\n }\n}\n\n@keyframes modal-fade {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n/* Styles for content container */\n.bcds-react-aria-Modal {\n box-sizing: border-box;\n max-width: 100vw;\n width: 600px;\n max-height: 100vh;\n min-height: var(--layout-margin-xxxlarge);\n height: auto;\n margin: var(--layout-margin-large);\n border-radius: var(--layout-border-radius-medium);\n border: var(--layout-border-width-small) solid\n var(--surface-color-border-default);\n background: var(--surface-color-forms-default);\n box-shadow: var(--surface-shadow-large);\n}\n";
|
|
15433
16237
|
styleInject(css_248z$a);
|
|
15434
16238
|
|
|
@@ -15450,16 +16254,6 @@ function RadioGroup({ orientation = "vertical", label, description, children, er
|
|
|
15450
16254
|
return (jsxRuntime.jsx($b6c3ddc6086f204d$export$a98f0dcb43a68a25, { className: "bcds-react-aria-RadioGroup", ...props, children: ({ isRequired, isInvalid }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [label && (jsxRuntime.jsxs($01b77f81d0f07f68$export$b04be29aa201d4f5, { className: "bcds-react-aria-RadioGroup--label", children: [label, " ", isRequired && "(required)"] })), jsxRuntime.jsx("div", { className: `bcds-react-aria-RadioGroup--options ${orientation} flex-wrap-${flexWrap}`, children: children }), description && (jsxRuntime.jsx($514c0188e459b4c0$export$5f1af8db9871e1d6, { slot: "description", className: "bcds-react-aria-RadioGroup--description", children: description })), isInvalid && (jsxRuntime.jsxs("div", { className: "bcds-react-aria-RadioGroup--error", children: [jsxRuntime.jsx(SvgExclamationIcon, {}), jsxRuntime.jsx($ee014567cb39d3f0$export$f551688fc98f2e09, { children: errorMessage })] }))] })) }));
|
|
15451
16255
|
}
|
|
15452
16256
|
|
|
15453
|
-
/* The component implements the Chevron Up icon from Font Awesome: https://fontawesome.com/icons/chevron-up */
|
|
15454
|
-
function SvgChevronUpIcon({ id = "chevron-up-icon" }) {
|
|
15455
|
-
return (jsxRuntime.jsx("svg", { id: id, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("path", { d: "M4.21231 13.3146L9.52695 8.2226C9.6939 8.08348 9.86086 8 10.0278 8C10.1948 8 10.3339 8.05565 10.473 8.16695L15.7876 13.259C16.066 13.5372 16.066 13.9546 15.8155 14.2051C15.5651 14.4833 15.1477 14.4833 14.8694 14.2329L10.0278 9.61387L5.13054 14.2885C4.88011 14.539 4.43491 14.539 4.18448 14.2607C3.93405 13.9825 3.93405 13.5651 4.21231 13.3146Z", fill: "currentColor" }) }));
|
|
15456
|
-
}
|
|
15457
|
-
|
|
15458
|
-
/* The component implements the Chevron Down icon from Font Awesome: https://fontawesome.com/icons/chevron-down */
|
|
15459
|
-
function SvgChevronDownIcon({ id = "chevron-down-icon" }) {
|
|
15460
|
-
return (jsxRuntime.jsx("svg", { id: id, width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("path", { d: "M15.7882 9.15569L10.4858 14.236C10.3192 14.3748 10.1527 14.4303 10.0139 14.4303C9.84731 14.4303 9.68074 14.3748 9.54194 14.2637L4.21182 9.15569C3.9342 8.90584 3.9342 8.46167 4.18405 8.21182C4.4339 7.9342 4.87808 7.9342 5.12793 8.18405L10.0139 12.8479L14.872 8.18405C15.1219 7.9342 15.5661 7.9342 15.8159 8.21182C16.0658 8.46167 16.0658 8.90584 15.7882 9.15569Z", fill: "currentColor" }) }));
|
|
15461
|
-
}
|
|
15462
|
-
|
|
15463
16257
|
var css_248z$7 = ".bcds-react-aria-Select {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n /* Hacks for `stretch`: https://caniuse.com/mdn-css_properties_max-width_stretch */\n max-width: -moz-available;\n max-width: -webkit-fill-available;\n}\n\n/* Label above select input */\n.bcds-react-aria-Select--Label {\n color: var(--typography-color-secondary);\n font: var(--typography-regular-small-body);\n padding: var(--layout-padding-xsmall) var(--layout-padding-none);\n}\n.bcds-react-aria-Select[data-disabled] > .bcds-react-aria-Select--Label {\n color: var(--typography-color-disabled);\n}\n\n/* Text description below select input */\n.bcds-react-aria-Select--Description {\n font: var(--typography-regular-small-body);\n color: var(--typography-color-secondary);\n padding: var(--layout-padding-xsmall) var(--layout-padding-none);\n}\n\n/* Error message */\n.bcds-react-aria-Select--Error {\n font: var(--typography-regular-small-body);\n color: var(--typography-color-danger);\n}\n\n/* Error icon */\n.bcds-react-aria-Select[data-invalid]\n > .bcds-react-aria-Select--Button\n > svg:not(:last-child) {\n color: var(--icons-color-danger);\n}\n\n/* Select input equivalent */\n.bcds-react-aria-Select--Button {\n background-color: var(--surface-color-forms-default);\n border: 1px solid var(--surface-color-border-default);\n border-radius: var(--layout-border-radius-medium);\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n gap: var(--layout-margin-small);\n align-items: center;\n padding: 0 12px;\n max-width: 100%;\n}\n.bcds-react-aria-Select--Button.invalid {\n border-color: var(--support-border-color-danger);\n}\n.bcds-react-aria-Select[data-invalid] > .bcds-react-aria-Select--Button {\n border-color: var(--support-border-color-danger);\n}\n.bcds-react-aria-Select--Button[data-disabled] {\n background-color: var(--surface-color-forms-disabled);\n cursor: not-allowed;\n}\n.bcds-react-aria-Select--Button[data-hovered] {\n border-color: var(--surface-color-border-dark);\n}\n.bcds-react-aria-Select--Button[data-focused] {\n border-color: var(--surface-color-border-active);\n outline: solid var(--layout-border-width-medium)\n var(--surface-color-border-active);\n outline-offset: var(--layout-margin-hair);\n}\n.bcds-react-aria-Select--Button[data-pressed] {\n border-color: var(--surface-color-border-active);\n}\n.bcds-react-aria-Select--Button.medium {\n height: 40px;\n}\n.bcds-react-aria-Select--Button.small {\n height: 32px;\n}\n.bcds-react-aria-Select--Button > .bcds-react-aria-SelectValue {\n font: var(--typography-regular-body);\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n min-width: 0;\n}\n.bcds-react-aria-Select--Button > svg {\n flex-shrink: 0;\n}\n\n/* Dropdown menu panel */\n.bcds-react-aria-Select--Popover {\n background-color: var(--surface-color-forms-default);\n border: 1px solid var(--surface-color-border-default);\n border-radius: var(--layout-border-radius-medium);\n box-shadow: var(--surface-shadow-medium);\n box-sizing: border-box;\n overflow-y: auto;\n padding: var(--layout-padding-hair) var(--layout-padding-xsmall);\n width: var(\n --trigger-width\n ); /* Variable provided by Select component https://react-spectrum.adobe.com/react-aria/Select.html#popover-1 */\n}\n.bcds-react-aria-Select--ListBox[data-focused] {\n outline: none;\n}\n.bcds-react-aria-Select--ListBox > .bcds-react-aria-Section:not(:first-child) {\n border-top: 1px solid var(--surface-color-border-default);\n margin-top: 1px;\n padding-top: 2px;\n}\n\n/* Header label within Section of multi-section Select */\n.bcds-react-aria-Select--Header {\n color: var(--typography-color-secondary);\n font: var(--typography-regular-small-body);\n padding: var(--layout-padding-hair) var(--layout-padding-small);\n}\n\n/* ListBox option item */\n.bcds-react-aria-Select--ListBoxItem {\n border-radius: var(--layout-border-radius-medium);\n cursor: pointer;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--layout-margin-small);\n padding: var(--layout-padding-small);\n}\n.bcds-react-aria-Select--ListBoxItem[data-focused],\n.bcds-react-aria-Select--ListBoxItem[data-hovered] {\n background-color: var(--surface-color-secondary-button-hover);\n outline: none;\n}\n.bcds-react-aria-Select--ListBoxItem-icon {\n display: flex;\n align-items: center;\n justify-content: space-around;\n /* This `min-width` rule can cause horizontal overflow on very narrow Select\n instances, but if we leave it out, the icons will shrink instead. */\n min-width: 20px;\n}\n.bcds-react-aria-Select--ListBoxItem-Text-container {\n color: var(--typography-color-primary);\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n.bcds-react-aria-Select--ListBoxItem-Text-label {\n font: var(--typography-regular-body);\n}\n.bcds-react-aria-Select--ListBoxItem.destructive {\n color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Select--ListBoxItem.destructive\n .bcds-react-aria-Select--ListBoxItem-Text-label {\n color: var(--surface-color-primary-danger-button-default);\n}\n.bcds-react-aria-Select--ListBoxItem-Text-description {\n font: var(--typography-regular-small-body);\n color: var(--typography-color-secondary);\n}\n";
|
|
15464
16258
|
styleInject(css_248z$7);
|
|
15465
16259
|
|
|
@@ -15480,7 +16274,7 @@ function Select({ items, sections, label, description, placeholder, size = "medi
|
|
|
15480
16274
|
// support different markup within the same component.
|
|
15481
16275
|
items: sections
|
|
15482
16276
|
? sections
|
|
15483
|
-
: [{ id: "section", header: "", items: items ? items : [] }], children: (section) => (jsxRuntime.jsxs($
|
|
16277
|
+
: [{ id: "section", header: "", items: items ? items : [] }], children: (section) => (jsxRuntime.jsxs($eed445e0843c11d0$export$dca12b0bb56e4fc, { id: section.id, className: "bcds-react-aria-Section", children: [section?.header && (jsxRuntime.jsx($72a5793c14baf454$export$8b251419efc915eb, { className: "bcds-react-aria-Select--Header", children: section.header })), jsxRuntime.jsx($e1995378a142960e$export$fb8073518f34e6ec, { items: section.items, children: (item) => (jsxRuntime.jsxs($eed445e0843c11d0$export$a11e76429ed99b4, { id: item?.id ? item.id : item.label, className: `bcds-react-aria-Select--ListBoxItem ${item?.isDestructive ? "destructive" : ""}`, textValue: item.label, children: [item?.iconLeft && (jsxRuntime.jsx("div", { className: "bcds-react-aria-Select--ListBoxItem-icon", children: item.iconLeft })), jsxRuntime.jsxs("div", { className: "bcds-react-aria-Select--ListBoxItem-Text-container", children: [jsxRuntime.jsx($514c0188e459b4c0$export$5f1af8db9871e1d6, { slot: "label", className: "bcds-react-aria-Select--ListBoxItem-Text-label", children: item.label }), item.description && (jsxRuntime.jsx($514c0188e459b4c0$export$5f1af8db9871e1d6, { slot: "description", className: "bcds-react-aria-Select--ListBoxItem-Text-description", children: item.description }))] }), item?.iconRight && (jsxRuntime.jsx("div", { className: "bcds-react-aria-Select--ListBoxItem-icon", children: item.iconRight }))] })) })] })) }) })] })) }));
|
|
15484
16278
|
}
|
|
15485
16279
|
|
|
15486
16280
|
function SvgBcOutlineIcon({ id = "bc-outline-icon" }) {
|
|
@@ -15552,6 +16346,8 @@ function Tooltip(props) {
|
|
|
15552
16346
|
return (jsxRuntime.jsxs($4e3b923658d69c60$export$28c660c63b792dea, { className: "bcds-react-aria-Tooltip", ...props, children: [jsxRuntime.jsx($44f671af83e7d9e0$export$746d02f47f4d381, { className: "bcds-react-aria-OverlayArrow", children: jsxRuntime.jsx(SvgTooltipArrowUp, {}) }), jsxRuntime.jsx(jsxRuntime.Fragment, { children: props.children })] }));
|
|
15553
16347
|
}
|
|
15554
16348
|
|
|
16349
|
+
exports.Accordion = Accordion;
|
|
16350
|
+
exports.AccordionGroup = AccordionGroup;
|
|
15555
16351
|
exports.AlertBanner = AlertBanner;
|
|
15556
16352
|
exports.AlertDialog = AlertDialog;
|
|
15557
16353
|
exports.Button = Button;
|
|
@@ -15566,6 +16362,7 @@ exports.FooterLinks = FooterLinks;
|
|
|
15566
16362
|
exports.Form = Form;
|
|
15567
16363
|
exports.Header = Header;
|
|
15568
16364
|
exports.InlineAlert = InlineAlert;
|
|
16365
|
+
exports.Link = Link;
|
|
15569
16366
|
exports.Modal = Modal;
|
|
15570
16367
|
exports.Radio = Radio;
|
|
15571
16368
|
exports.RadioGroup = RadioGroup;
|