@ilo-org/react 0.14.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/components/Cards/CardGroup/CardGroup.js +7 -4
- package/lib/cjs/components/Cards/CardGroup/index.js +9 -8
- package/lib/cjs/components/Cards/DetailCard/DetailCard.js +2 -2
- package/lib/cjs/components/Cards/FactlistCard/FactListCard.js +2 -2
- package/lib/cjs/components/Cards/FeatureCard/FeatureCard.js +2 -2
- package/lib/cjs/components/Cards/MultilinkCard/MultiLinkCard.js +2 -2
- package/lib/cjs/components/Cards/PromoCard/PromoCard.js +2 -2
- package/lib/cjs/components/Cards/StatCard/StatCard.js +2 -2
- package/lib/cjs/components/Cards/TextCard/TextCard.js +2 -2
- package/lib/cjs/components/LogoGrid/LogoGrid.js +1 -1
- package/lib/cjs/components/Navigation/Navigation.js +34 -8
- package/lib/cjs/components/SocialMedia/SocialMedia.js +1 -1
- package/lib/cjs/hooks/index.js +0 -2
- package/lib/esm/components/Cards/CardGroup/CardGroup.js +7 -4
- package/lib/esm/components/Cards/CardGroup/index.js +9 -8
- package/lib/esm/components/Cards/DetailCard/DetailCard.js +2 -2
- package/lib/esm/components/Cards/FactlistCard/FactListCard.js +2 -2
- package/lib/esm/components/Cards/FeatureCard/FeatureCard.js +2 -2
- package/lib/esm/components/Cards/MultilinkCard/MultiLinkCard.js +2 -2
- package/lib/esm/components/Cards/PromoCard/PromoCard.js +2 -2
- package/lib/esm/components/Cards/StatCard/StatCard.js +2 -2
- package/lib/esm/components/Cards/TextCard/TextCard.js +2 -2
- package/lib/esm/components/LogoGrid/LogoGrid.js +1 -1
- package/lib/esm/components/Navigation/Navigation.js +35 -9
- package/lib/esm/components/SocialMedia/SocialMedia.js +1 -1
- package/lib/esm/hooks/index.js +0 -1
- package/lib/types/react/src/components/Cards/CardGroup/CardGroup.props.d.ts +28 -2
- package/lib/types/react/src/components/Cards/DetailCard/DetailCard.props.d.ts +5 -1
- package/lib/types/react/src/components/Cards/FactlistCard/FactListCard.props.d.ts +5 -1
- package/lib/types/react/src/components/Cards/FeatureCard/FeatureCard.props.d.ts +5 -1
- package/lib/types/react/src/components/Cards/MultilinkCard/MultilinkCard.props.d.ts +5 -1
- package/lib/types/react/src/components/Cards/PromoCard/PromoCard.props.d.ts +5 -1
- package/lib/types/react/src/components/Cards/StatCard/StatCard.props.d.ts +8 -1
- package/lib/types/react/src/components/Cards/TextCard/TextCard.props.d.ts +5 -1
- package/lib/types/react/src/hooks/index.d.ts +0 -1
- package/lib/types/react/src/types/index.d.ts +1 -0
- package/package.json +14 -11
- package/.eslintrc.cjs +0 -39
- package/.storybook/main.ts +0 -41
- package/.storybook/manager-head.html +0 -92
- package/.storybook/manager.ts +0 -6
- package/.storybook/preview-head.html +0 -5
- package/.storybook/preview.tsx +0 -81
- package/.storybook/styles.scss +0 -25
- package/.storybook/theme.ts +0 -46
- package/.turbo/turbo-build:lib.log +0 -15
- package/CHANGELOG.md +0 -884
- package/lib/cjs/hooks/useVideoPlayer.js +0 -75
- package/lib/esm/hooks/useVideoPlayer.js +0 -73
- package/lib/types/react/src/hooks/useVideoPlayer.d.ts +0 -12
- package/public/fao-logo.svg +0 -195
- package/public/favicon.ico +0 -0
- package/public/hero.jpg +0 -0
- package/public/ilo-dg.jpg +0 -0
- package/public/ilo-headquarters.jpg +0 -0
- package/public/large.jpg +0 -0
- package/public/media-file-poster.jpg +0 -0
- package/public/medium.jpg +0 -0
- package/public/react.svg +0 -8
- package/public/small.jpg +0 -0
- package/public/unhcr-logo.svg +0 -1
- package/public/unicef-logo.png +0 -0
- package/public/video-example.mp4 +0 -0
- package/public/wfp-logo.svg +0 -1
- package/public/who-logo.svg +0 -1
- package/public/youtube-video-poster.avif +0 -0
- package/rollup.config.mjs +0 -72
- package/src/__tests__/Accordion.test.tsx +0 -16
- package/src/__tests__/Button.test.tsx +0 -60
- package/src/__tests__/Callout.test.tsx +0 -43
- package/src/__tests__/ContextMenu.test.tsx +0 -19
- package/src/__tests__/Dropdown.test.tsx +0 -38
- package/src/__tests__/Heading.test.tsx +0 -51
- package/src/__tests__/Image.test.tsx +0 -21
- package/src/__tests__/LinkList.test.tsx +0 -17
- package/src/__tests__/List.test.tsx +0 -25
- package/src/__tests__/Loading.test.tsx +0 -33
- package/src/__tests__/Notification.test.tsx +0 -39
- package/src/__tests__/Pagination.test.tsx +0 -58
- package/src/__tests__/Profile.test.tsx +0 -48
- package/src/__tests__/ReadMore.test.tsx +0 -43
- package/src/__tests__/RichText.test.tsx +0 -16
- package/src/__tests__/SearchField.test.tsx +0 -35
- package/src/__tests__/TableOfContents.test.tsx +0 -12
- package/src/__tests__/Tag.test.tsx +0 -10
- package/src/components/Accordion/Accordion.args.ts +0 -16
- package/src/components/Accordion/Accordion.props.ts +0 -41
- package/src/components/Accordion/Accordion.tsx +0 -62
- package/src/components/Accordion/AccordionButton.props.ts +0 -13
- package/src/components/Accordion/AccordionButton.tsx +0 -58
- package/src/components/Accordion/AccordionCtx.ts +0 -9
- package/src/components/Accordion/AccordionItem.props.ts +0 -25
- package/src/components/Accordion/AccordionItem.tsx +0 -27
- package/src/components/Accordion/AccordionPanel.props.ts +0 -25
- package/src/components/Accordion/AccordionPanel.tsx +0 -46
- package/src/components/Accordion/index.ts +0 -4
- package/src/components/Breadcrumb/Breadcrumb.args.ts +0 -61
- package/src/components/Breadcrumb/Breadcrumb.props.ts +0 -13
- package/src/components/Breadcrumb/Breadcrumb.tsx +0 -82
- package/src/components/Breadcrumb/index.ts +0 -1
- package/src/components/Button/Button.args.ts +0 -35
- package/src/components/Button/Button.props.ts +0 -89
- package/src/components/Button/Button.tsx +0 -77
- package/src/components/Button/index.ts +0 -2
- package/src/components/Callout/Callout.args.ts +0 -38
- package/src/components/Callout/Callout.props.ts +0 -60
- package/src/components/Callout/Callout.tsx +0 -80
- package/src/components/Callout/index.ts +0 -2
- package/src/components/Cards/CardGroup/CardGroup.args.ts +0 -807
- package/src/components/Cards/CardGroup/CardGroup.props.ts +0 -78
- package/src/components/Cards/CardGroup/CardGroup.tsx +0 -54
- package/src/components/Cards/CardGroup/index.tsx +0 -3
- package/src/components/Cards/DataCard/DataCard.args.ts +0 -69
- package/src/components/Cards/DataCard/DataCard.props.ts +0 -60
- package/src/components/Cards/DataCard/DataCard.tsx +0 -107
- package/src/components/Cards/DataCard/index.tsx +0 -3
- package/src/components/Cards/DetailCard/DetailCard.args.ts +0 -17
- package/src/components/Cards/DetailCard/DetailCard.props.ts +0 -43
- package/src/components/Cards/DetailCard/DetailCard.tsx +0 -62
- package/src/components/Cards/DetailCard/index.tsx +0 -3
- package/src/components/Cards/FactlistCard/FactListCard.args.ts +0 -14
- package/src/components/Cards/FactlistCard/FactListCard.props.ts +0 -19
- package/src/components/Cards/FactlistCard/FactListCard.tsx +0 -42
- package/src/components/Cards/FactlistCard/index.tsx +0 -3
- package/src/components/Cards/FeatureCard/FeatureCard.args.ts +0 -30
- package/src/components/Cards/FeatureCard/FeatureCard.props.ts +0 -38
- package/src/components/Cards/FeatureCard/FeatureCard.tsx +0 -69
- package/src/components/Cards/FeatureCard/index.tsx +0 -3
- package/src/components/Cards/MultilinkCard/MultiLinkCard.tsx +0 -76
- package/src/components/Cards/MultilinkCard/MultilinkCard.args.ts +0 -33
- package/src/components/Cards/MultilinkCard/MultilinkCard.props.ts +0 -30
- package/src/components/Cards/MultilinkCard/index.tsx +0 -3
- package/src/components/Cards/PromoCard/PromoCard.args.ts +0 -19
- package/src/components/Cards/PromoCard/PromoCard.props.ts +0 -36
- package/src/components/Cards/PromoCard/PromoCard.tsx +0 -60
- package/src/components/Cards/PromoCard/index.tsx +0 -3
- package/src/components/Cards/StatCard/StatCard.args.ts +0 -14
- package/src/components/Cards/StatCard/StatCard.props.ts +0 -21
- package/src/components/Cards/StatCard/StatCard.tsx +0 -36
- package/src/components/Cards/StatCard/index.tsx +0 -3
- package/src/components/Cards/TextCard/TextCard.args.ts +0 -21
- package/src/components/Cards/TextCard/TextCard.props.ts +0 -32
- package/src/components/Cards/TextCard/TextCard.tsx +0 -62
- package/src/components/Cards/TextCard/index.tsx +0 -3
- package/src/components/Checkbox/Checkbox.args.ts +0 -42
- package/src/components/Checkbox/Checkbox.props.ts +0 -5
- package/src/components/Checkbox/Checkbox.tsx +0 -94
- package/src/components/Checkbox/index.ts +0 -2
- package/src/components/Collapse/Collapse.props.ts +0 -92
- package/src/components/Collapse/Collapse.tsx +0 -130
- package/src/components/Collapse/index.ts +0 -1
- package/src/components/ContextMenu/ContextMenu.args.ts +0 -62
- package/src/components/ContextMenu/ContextMenu.props.ts +0 -28
- package/src/components/ContextMenu/ContextMenu.tsx +0 -32
- package/src/components/ContextMenu/index.ts +0 -1
- package/src/components/Credit/Credit.args.ts +0 -14
- package/src/components/Credit/Credit.props.ts +0 -11
- package/src/components/Credit/Credit.tsx +0 -41
- package/src/components/Credit/index.ts +0 -1
- package/src/components/DatePicker/DatePicker.args.ts +0 -56
- package/src/components/DatePicker/DatePicker.props.ts +0 -26
- package/src/components/DatePicker/DatePicker.tsx +0 -80
- package/src/components/DatePicker/index.ts +0 -1
- package/src/components/Dropdown/Dropdown.args.ts +0 -70
- package/src/components/Dropdown/Dropdown.props.ts +0 -53
- package/src/components/Dropdown/Dropdown.tsx +0 -95
- package/src/components/Dropdown/index.ts +0 -1
- package/src/components/Empty/Empty.props.ts +0 -13
- package/src/components/Empty/Empty.tsx +0 -16
- package/src/components/Empty/index.ts +0 -1
- package/src/components/Fieldset/Fieldset.props.ts +0 -33
- package/src/components/Fieldset/Fieldset.tsx +0 -96
- package/src/components/Fieldset/index.ts +0 -1
- package/src/components/FileUpload/FileUpload.args.ts +0 -60
- package/src/components/FileUpload/FileUpload.props.ts +0 -21
- package/src/components/FileUpload/FileUpload.tsx +0 -116
- package/src/components/FileUpload/index.ts +0 -1
- package/src/components/Footer/Footer.args.ts +0 -74
- package/src/components/Footer/Footer.props.ts +0 -60
- package/src/components/Footer/Footer.tsx +0 -99
- package/src/components/Footer/index.ts +0 -1
- package/src/components/Form/Form.args.ts +0 -5
- package/src/components/Form/Form.props.ts +0 -8
- package/src/components/Form/Form.tsx +0 -23
- package/src/components/Form/index.ts +0 -2
- package/src/components/FormControl/FormControl.props.ts +0 -72
- package/src/components/FormControl/FormControl.tsx +0 -169
- package/src/components/FormControl/index.ts +0 -2
- package/src/components/FormElement/FormElement.props.ts +0 -60
- package/src/components/FormElement/FormElement.tsx +0 -19
- package/src/components/FormElement/index.ts +0 -1
- package/src/components/GlobalProvider/GlobalCtx.ts +0 -6
- package/src/components/GlobalProvider/GlobalProvider.props.ts +0 -15
- package/src/components/GlobalProvider/GlobalProvider.tsx +0 -21
- package/src/components/GlobalProvider/index.ts +0 -2
- package/src/components/Heading/Heading.args.ts +0 -49
- package/src/components/Heading/Heading.props.ts +0 -24
- package/src/components/Heading/Heading.tsx +0 -28
- package/src/components/Heading/index.ts +0 -1
- package/src/components/Hero/Hero.args.ts +0 -136
- package/src/components/Hero/Hero.props.ts +0 -62
- package/src/components/Hero/Hero.tsx +0 -94
- package/src/components/Hero/HeroCard.props.ts +0 -54
- package/src/components/Hero/HeroCard.tsx +0 -65
- package/src/components/Hero/index.ts +0 -2
- package/src/components/Icon/Icon.args.ts +0 -15
- package/src/components/Icon/Icon.props.ts +0 -16
- package/src/components/Icon/Icon.tsx +0 -25
- package/src/components/Icon/index.ts +0 -1
- package/src/components/Image/Image.args.ts +0 -29
- package/src/components/Image/Image.props.ts +0 -43
- package/src/components/Image/Image.tsx +0 -51
- package/src/components/Image/index.ts +0 -1
- package/src/components/Input/Input.args.ts +0 -139
- package/src/components/Input/Input.props.ts +0 -65
- package/src/components/Input/Input.tsx +0 -65
- package/src/components/Input/index.ts +0 -1
- package/src/components/Link/Link.props.ts +0 -39
- package/src/components/Link/Link.tsx +0 -42
- package/src/components/Link/index.ts +0 -1
- package/src/components/LinkList/LinkList.args.ts +0 -193
- package/src/components/LinkList/LinkList.props.ts +0 -52
- package/src/components/LinkList/LinkList.tsx +0 -59
- package/src/components/LinkList/index.ts +0 -1
- package/src/components/List/List.args.ts +0 -34
- package/src/components/List/List.props.ts +0 -29
- package/src/components/List/List.tsx +0 -36
- package/src/components/List/ListItem.props.ts +0 -18
- package/src/components/List/ListItem.tsx +0 -17
- package/src/components/List/index.ts +0 -2
- package/src/components/Loading/Loading.args.ts +0 -55
- package/src/components/Loading/Loading.props.ts +0 -23
- package/src/components/Loading/Loading.tsx +0 -24
- package/src/components/Loading/index.ts +0 -1
- package/src/components/LocalNav/LocalNav.args.ts +0 -64
- package/src/components/LocalNav/LocalNav.props.ts +0 -56
- package/src/components/LocalNav/LocalNav.tsx +0 -181
- package/src/components/LocalNav/index.ts +0 -1
- package/src/components/Logo/Logo.args.ts +0 -45
- package/src/components/Logo/Logo.props.ts +0 -67
- package/src/components/Logo/Logo.tsx +0 -247
- package/src/components/Logo/index.ts +0 -1
- package/src/components/LogoGrid/LogoGrid.args.ts +0 -50
- package/src/components/LogoGrid/LogoGrid.props.ts +0 -28
- package/src/components/LogoGrid/LogoGrid.tsx +0 -53
- package/src/components/LogoGrid/index.ts +0 -1
- package/src/components/Navigation/Navigation.args.ts +0 -113
- package/src/components/Navigation/Navigation.props.ts +0 -120
- package/src/components/Navigation/Navigation.tsx +0 -246
- package/src/components/Navigation/index.ts +0 -1
- package/src/components/Notification/Notification.args.ts +0 -157
- package/src/components/Notification/Notification.props.ts +0 -67
- package/src/components/Notification/Notification.tsx +0 -78
- package/src/components/Notification/index.ts +0 -1
- package/src/components/NumberPicker/NumberPicker.args.ts +0 -50
- package/src/components/NumberPicker/NumberPicker.props.ts +0 -26
- package/src/components/NumberPicker/NumberPicker.tsx +0 -88
- package/src/components/NumberPicker/index.ts +0 -1
- package/src/components/Pagination/Pagination.args.ts +0 -43
- package/src/components/Pagination/Pagination.props.ts +0 -66
- package/src/components/Pagination/Pagination.tsx +0 -115
- package/src/components/Pagination/index.ts +0 -1
- package/src/components/Profile/Profile.args.ts +0 -58
- package/src/components/Profile/Profile.props.ts +0 -55
- package/src/components/Profile/Profile.tsx +0 -51
- package/src/components/Profile/index.ts +0 -1
- package/src/components/Radio/Radio.args.ts +0 -15
- package/src/components/Radio/Radio.props.ts +0 -6
- package/src/components/Radio/Radio.tsx +0 -102
- package/src/components/Radio/index.ts +0 -2
- package/src/components/ReadMore/ReadMore.args.ts +0 -23
- package/src/components/ReadMore/ReadMore.props.ts +0 -38
- package/src/components/ReadMore/ReadMore.tsx +0 -55
- package/src/components/ReadMore/index.ts +0 -1
- package/src/components/RichText/RichText.props.ts +0 -11
- package/src/components/RichText/RichText.tsx +0 -22
- package/src/components/RichText/index.ts +0 -1
- package/src/components/RichText/richText.args.ts +0 -38
- package/src/components/SearchField/SearchField.args.ts +0 -73
- package/src/components/SearchField/SearchField.props.ts +0 -35
- package/src/components/SearchField/SearchField.tsx +0 -83
- package/src/components/SearchField/index.ts +0 -1
- package/src/components/SocialMedia/SocialMedia.args.ts +0 -54
- package/src/components/SocialMedia/SocialMedia.props.ts +0 -45
- package/src/components/SocialMedia/SocialMedia.tsx +0 -46
- package/src/components/SocialMedia/index.ts +0 -3
- package/src/components/TableOfContents/TableOfContents.args.ts +0 -35
- package/src/components/TableOfContents/TableOfContents.props.ts +0 -23
- package/src/components/TableOfContents/TableOfContents.tsx +0 -32
- package/src/components/TableOfContents/index.ts +0 -1
- package/src/components/Tabs/Tabs.args.tsx +0 -201
- package/src/components/Tabs/Tabs.props.ts +0 -13
- package/src/components/Tabs/Tabs.tsx +0 -60
- package/src/components/Tabs/index.ts +0 -1
- package/src/components/Tag/Tag.args.ts +0 -15
- package/src/components/Tag/Tag.props.ts +0 -34
- package/src/components/Tag/Tag.tsx +0 -104
- package/src/components/Tag/TagCtx.ts +0 -4
- package/src/components/Tag/TagSet.args.ts +0 -37
- package/src/components/Tag/TagSet.props.ts +0 -37
- package/src/components/Tag/TagSet.tsx +0 -61
- package/src/components/Tag/index.ts +0 -2
- package/src/components/TextInput/TextInput.args.ts +0 -75
- package/src/components/TextInput/TextInput.props.ts +0 -20
- package/src/components/TextInput/TextInput.tsx +0 -71
- package/src/components/TextInput/index.ts +0 -2
- package/src/components/Textarea/Textarea.args.ts +0 -34
- package/src/components/Textarea/Textarea.props.ts +0 -45
- package/src/components/Textarea/Textarea.tsx +0 -52
- package/src/components/Textarea/index.ts +0 -3
- package/src/components/Toggle/Toggle.args.ts +0 -62
- package/src/components/Toggle/Toggle.props.ts +0 -27
- package/src/components/Toggle/Toggle.tsx +0 -85
- package/src/components/Toggle/index.ts +0 -3
- package/src/components/Tooltip/Tooltip.args.ts +0 -39
- package/src/components/Tooltip/Tooltip.props.ts +0 -38
- package/src/components/Tooltip/Tooltip.tsx +0 -119
- package/src/components/Tooltip/index.ts +0 -1
- package/src/components/Video/Video.args.ts +0 -47
- package/src/components/Video/Video.props.ts +0 -35
- package/src/components/Video/Video.tsx +0 -34
- package/src/components/Video/VideoPlayer.props.ts +0 -51
- package/src/components/Video/VideoPlayer.tsx +0 -71
- package/src/components/Video/index.ts +0 -1
- package/src/components/Video/media-file-poster.jpg +0 -0
- package/src/components/index.ts +0 -46
- package/src/declarations.d.ts +0 -36
- package/src/hooks/index.ts +0 -2
- package/src/hooks/useGlobalSettings.ts +0 -13
- package/src/hooks/usePrevious.ts +0 -15
- package/src/hooks/useVideoPlayer.ts +0 -85
- package/src/index.ts +0 -1
- package/src/setup.ts +0 -6
- package/src/stories/Accordion/Accordion.stories.tsx +0 -145
- package/src/stories/Breadcrumb/Breadcrumb.mdx +0 -17
- package/src/stories/Breadcrumb/Breadcrumb.stories.tsx +0 -20
- package/src/stories/Button/Button.mdx +0 -94
- package/src/stories/Button/Button.stories.tsx +0 -68
- package/src/stories/Callout/Callout.mdx +0 -35
- package/src/stories/Callout/Callout.stories.tsx +0 -43
- package/src/stories/Card/DataCard.stories.tsx +0 -45
- package/src/stories/Card/DetailCard.stories.tsx +0 -41
- package/src/stories/Card/FactlistCard.stories.tsx +0 -48
- package/src/stories/Card/FeatureCard.stories.tsx +0 -56
- package/src/stories/Card/MultilinkCard.stories.tsx +0 -48
- package/src/stories/Card/PromoCard.stories.tsx +0 -48
- package/src/stories/Card/StatCard.stories.tsx +0 -45
- package/src/stories/Card/TextCard.stories.tsx +0 -45
- package/src/stories/CardGroup/CardGroup.mdx +0 -17
- package/src/stories/CardGroup/CardGroup.stories.tsx +0 -50
- package/src/stories/Checkbox/Checkbox.stories.tsx +0 -118
- package/src/stories/ContextMenu/ContextMenu.stories.tsx +0 -83
- package/src/stories/DatePicker/DatePicker.stories.tsx +0 -110
- package/src/stories/Dropdown/Dropdown.stories.tsx +0 -145
- package/src/stories/Empty/Empty.stories.tsx +0 -53
- package/src/stories/Fieldset/Fieldset.stories.tsx +0 -167
- package/src/stories/FileUpload/FileUpload.stories.tsx +0 -103
- package/src/stories/Footer/Footer.mdx +0 -17
- package/src/stories/Footer/Footer.stories.tsx +0 -15
- package/src/stories/Form/Form.mdx +0 -58
- package/src/stories/Form/Form.stories.tsx +0 -162
- package/src/stories/GetStarted.mdx +0 -57
- package/src/stories/Heading/Heading.stories.tsx +0 -193
- package/src/stories/Hero/Hero.stories.tsx +0 -68
- package/src/stories/Image/Image.stories.tsx +0 -50
- package/src/stories/Link/Link.stories.tsx +0 -81
- package/src/stories/LinkList/LinkList.args.ts +0 -190
- package/src/stories/LinkList/LinkList.stories.tsx +0 -60
- package/src/stories/List/List.stories.tsx +0 -167
- package/src/stories/Loading/Loading.stories.tsx +0 -97
- package/src/stories/LocalNav/LocalNav.mdx +0 -17
- package/src/stories/LocalNav/LocalNav.stories.tsx +0 -15
- package/src/stories/Logo/Logo.stories.tsx +0 -172
- package/src/stories/LogoGrid/LogoGrid.stories.tsx +0 -59
- package/src/stories/Navigation/Navigation.mdx +0 -17
- package/src/stories/Navigation/Navigation.stories.tsx +0 -15
- package/src/stories/Notification/Notification.stories.tsx +0 -187
- package/src/stories/NumberPicker/NumberPicker.stories.tsx +0 -69
- package/src/stories/Pagination/Pagination.stories.tsx +0 -86
- package/src/stories/Profile/Profile.stories.tsx +0 -64
- package/src/stories/Radio/Radio.stories.tsx +0 -232
- package/src/stories/ReadMore/ReadMore.stories.tsx +0 -59
- package/src/stories/RichText/RichText.stories.tsx +0 -63
- package/src/stories/SearchField/SearchField.stories.tsx +0 -91
- package/src/stories/SocialMedia/SocialMedia.stories.tsx +0 -60
- package/src/stories/TableOfContents/TableOfContents.stories.tsx +0 -55
- package/src/stories/Tabs/Tabs.mdx +0 -17
- package/src/stories/Tabs/Tabs.stories.tsx +0 -25
- package/src/stories/Tag/Tag.stories.tsx +0 -130
- package/src/stories/TextInput/TextInput.stories.tsx +0 -100
- package/src/stories/Textarea/Textarea.stories.tsx +0 -147
- package/src/stories/Toggle/Toggle.stories.tsx +0 -99
- package/src/stories/Tooltip/Tooltip.stories.tsx +0 -82
- package/src/stories/Video/Video.stories.tsx +0 -71
- package/src/stories/Welcome.stories.mdx +0 -37
- package/src/stories/assets/code-brackets.svg +0 -1
- package/src/stories/assets/colors.svg +0 -1
- package/src/stories/assets/comments.svg +0 -1
- package/src/stories/assets/direction.svg +0 -1
- package/src/stories/assets/flow.svg +0 -1
- package/src/stories/assets/plugin.svg +0 -1
- package/src/stories/assets/repo.svg +0 -1
- package/src/stories/assets/stackalt.svg +0 -1
- package/src/stories/welcome.scss +0 -133
- package/src/types/forms.args.ts +0 -288
- package/src/types/index.ts +0 -137
- package/src/types/temp.d.ts +0 -9
- package/src/utils/checkArrayDuplicates.ts +0 -3
- package/src/utils/createChainedFunction.ts +0 -31
- package/src/utils/getDefaultDimensionValue.ts +0 -28
- package/src/utils/hoursMinutesSeconds.ts +0 -8
- package/src/utils/index.ts +0 -6
- package/src/utils/transitionEndListener.ts +0 -29
- package/src/utils/triggerBrowserReflow.ts +0 -4
- package/tsconfig.build.json +0 -19
- package/tsconfig.json +0 -8
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { LabelledDropdownProps } from "./Dropdown.props";
|
|
2
|
-
|
|
3
|
-
export const options = [
|
|
4
|
-
{ label: "Switzerland", value: "CH" },
|
|
5
|
-
{ label: "Côte d'Ivoire ", value: "CI" },
|
|
6
|
-
{ label: "Thailand", value: "TH" },
|
|
7
|
-
{ label: "United States", value: "US" },
|
|
8
|
-
{ label: "Zimbabwe", value: "ZW" },
|
|
9
|
-
{ label: "Afghanistan", value: "AF" },
|
|
10
|
-
{ label: "Åland Islands", value: "AX" },
|
|
11
|
-
{ label: "Albania", value: "AL" },
|
|
12
|
-
{ label: "Algeria", value: "DZ" },
|
|
13
|
-
{ label: "American Samoa", value: "AS" },
|
|
14
|
-
{ label: "AndorrA", value: "AD" },
|
|
15
|
-
{ label: "Angola", value: "AO" },
|
|
16
|
-
{ label: "Anguilla", value: "AI" },
|
|
17
|
-
{ label: "Antarctica", value: "AQ" },
|
|
18
|
-
{ label: "Antigua and Barbuda", value: "AG" },
|
|
19
|
-
{ label: "Argentina", value: "AR" },
|
|
20
|
-
{ label: "Armenia", value: "AM" },
|
|
21
|
-
{ label: "Aruba", value: "AW" },
|
|
22
|
-
{ label: "Australia", value: "AU" },
|
|
23
|
-
{ label: "Austria", value: "AT" },
|
|
24
|
-
{ label: "Azerbaijan", value: "AZ" },
|
|
25
|
-
];
|
|
26
|
-
|
|
27
|
-
const basic: LabelledDropdownProps = {
|
|
28
|
-
label: "Select a country",
|
|
29
|
-
errorMessage: "Please select a country",
|
|
30
|
-
autocomplete: "false",
|
|
31
|
-
className: "storybook",
|
|
32
|
-
disabled: false,
|
|
33
|
-
error: false,
|
|
34
|
-
id: "dropdown",
|
|
35
|
-
name: "dropdown",
|
|
36
|
-
options,
|
|
37
|
-
required: false,
|
|
38
|
-
value: "option one",
|
|
39
|
-
style: { width: "100%" },
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
const haserror: LabelledDropdownProps = {
|
|
43
|
-
...basic,
|
|
44
|
-
error: true,
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
const hashelper: LabelledDropdownProps = {
|
|
48
|
-
...basic,
|
|
49
|
-
helper: "Please select a country",
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
const hastooltip: LabelledDropdownProps = {
|
|
53
|
-
...basic,
|
|
54
|
-
tooltip: "Please select a country",
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
const isdisabled: LabelledDropdownProps = {
|
|
58
|
-
...basic,
|
|
59
|
-
disabled: true,
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
const DropdownArgs = {
|
|
63
|
-
basic,
|
|
64
|
-
haserror,
|
|
65
|
-
hashelper,
|
|
66
|
-
hastooltip,
|
|
67
|
-
isdisabled,
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
export default DropdownArgs;
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { FormFieldProps } from "../../types";
|
|
2
|
-
import { LabelledFormFieldProps } from "../../types";
|
|
3
|
-
|
|
4
|
-
export interface OptionProps {
|
|
5
|
-
/**
|
|
6
|
-
* Is this option disabled?
|
|
7
|
-
*/
|
|
8
|
-
disabled?: boolean;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* The option's label
|
|
12
|
-
*/
|
|
13
|
-
label: string;
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* The option's value
|
|
17
|
-
*/
|
|
18
|
-
value?: string;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export interface DropdownProps extends FormFieldProps<HTMLSelectElement> {
|
|
22
|
-
/**
|
|
23
|
-
* A string providing a hint for a user agent's autocomplete feature.
|
|
24
|
-
*/
|
|
25
|
-
autocomplete?: string;
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* The form element to associate the Dropdown with if it's not nested in a form element.
|
|
29
|
-
*/
|
|
30
|
-
form?: string;
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Indicates that multiple options can be selected from the list.
|
|
34
|
-
*/
|
|
35
|
-
multiple?: boolean;
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* The Dropdown's options
|
|
39
|
-
*/
|
|
40
|
-
options?: OptionProps[];
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Number of rows in the list that should be visible at one time. Corresponds to the select element's size attribute.
|
|
44
|
-
*/
|
|
45
|
-
selectSize?: number;
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* The Dropdown's default selection; should match one of the values in `options`
|
|
49
|
-
*/
|
|
50
|
-
value?: string;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export type LabelledDropdownProps = LabelledFormFieldProps<DropdownProps>;
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import React, { forwardRef, useState } from "react";
|
|
2
|
-
import classNames from "classnames";
|
|
3
|
-
import { useGlobalSettings } from "../../hooks";
|
|
4
|
-
import { DropdownProps, LabelledDropdownProps } from "./Dropdown.props";
|
|
5
|
-
import FormControl, { useFormControl } from "../FormControl/FormControl";
|
|
6
|
-
|
|
7
|
-
const Dropdown = forwardRef<HTMLSelectElement, DropdownProps>((props, ref) => {
|
|
8
|
-
const {
|
|
9
|
-
autocomplete,
|
|
10
|
-
onChange,
|
|
11
|
-
onBlur,
|
|
12
|
-
disabled = false,
|
|
13
|
-
error,
|
|
14
|
-
id,
|
|
15
|
-
name,
|
|
16
|
-
options,
|
|
17
|
-
required,
|
|
18
|
-
value,
|
|
19
|
-
form,
|
|
20
|
-
multiple,
|
|
21
|
-
selectSize,
|
|
22
|
-
} = props;
|
|
23
|
-
|
|
24
|
-
const { prefix } = useGlobalSettings();
|
|
25
|
-
const formControlCtx = useFormControl();
|
|
26
|
-
const { ariaDescribedBy } = formControlCtx;
|
|
27
|
-
|
|
28
|
-
const baseClass = `${prefix}--dropdown`;
|
|
29
|
-
|
|
30
|
-
const dropdownClasses = classNames(baseClass, {
|
|
31
|
-
[`error`]: error,
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
const [currentvalue, setValue] = useState(value);
|
|
35
|
-
|
|
36
|
-
const handleChange = (e: React.ChangeEvent<HTMLSelectElement>) => {
|
|
37
|
-
setValue(e.target.value);
|
|
38
|
-
if (onChange) {
|
|
39
|
-
onChange(e);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
return (
|
|
44
|
-
<div className={`${baseClass}--wrapper`}>
|
|
45
|
-
<select
|
|
46
|
-
ref={ref}
|
|
47
|
-
id={id ? id : name}
|
|
48
|
-
autoComplete={autocomplete}
|
|
49
|
-
name={name}
|
|
50
|
-
required={required}
|
|
51
|
-
onChange={handleChange}
|
|
52
|
-
onBlur={onBlur}
|
|
53
|
-
disabled={disabled}
|
|
54
|
-
className={dropdownClasses}
|
|
55
|
-
value={currentvalue}
|
|
56
|
-
form={form}
|
|
57
|
-
multiple={multiple}
|
|
58
|
-
size={selectSize}
|
|
59
|
-
aria-describedby={ariaDescribedBy}
|
|
60
|
-
>
|
|
61
|
-
{options &&
|
|
62
|
-
options.map((option, i) => (
|
|
63
|
-
<option
|
|
64
|
-
disabled={option.disabled}
|
|
65
|
-
label={option.label}
|
|
66
|
-
value={option.value}
|
|
67
|
-
key={`${baseClass}--option--${i}`}
|
|
68
|
-
>
|
|
69
|
-
{option.label}
|
|
70
|
-
</option>
|
|
71
|
-
))}
|
|
72
|
-
</select>
|
|
73
|
-
</div>
|
|
74
|
-
);
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
const LabelledDropdown = forwardRef<HTMLSelectElement, LabelledDropdownProps>(
|
|
78
|
-
(props, ref) => {
|
|
79
|
-
const { style, inputStyle, className, ...rest } = props;
|
|
80
|
-
const fieldId = props.id ? props.id : props.name;
|
|
81
|
-
|
|
82
|
-
return (
|
|
83
|
-
<FormControl
|
|
84
|
-
fieldId={fieldId}
|
|
85
|
-
style={style}
|
|
86
|
-
className={className}
|
|
87
|
-
{...rest}
|
|
88
|
-
>
|
|
89
|
-
<Dropdown ref={ref} style={inputStyle} {...rest} />
|
|
90
|
-
</FormControl>
|
|
91
|
-
);
|
|
92
|
-
}
|
|
93
|
-
);
|
|
94
|
-
|
|
95
|
-
export default LabelledDropdown;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Dropdown } from "./Dropdown";
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FC } from "react";
|
|
2
|
-
import classNames from "classnames";
|
|
3
|
-
import useGlobalSettings from "../../hooks/useGlobalSettings";
|
|
4
|
-
import { EmptyProps } from "./Empty.props";
|
|
5
|
-
|
|
6
|
-
const Empty: FC<EmptyProps> = ({ className, style }) => {
|
|
7
|
-
const { prefix } = useGlobalSettings();
|
|
8
|
-
const baseClass = `${prefix}--empty`;
|
|
9
|
-
const emptyClasses = classNames(className, {
|
|
10
|
-
[baseClass]: true,
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
return <div style={style} className={emptyClasses}></div>;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
export default Empty;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Empty } from "./Empty";
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { HTMLProps } from "react";
|
|
2
|
-
|
|
3
|
-
export interface FieldsetProps extends HTMLProps<HTMLFieldSetElement> {
|
|
4
|
-
/**
|
|
5
|
-
* Optional helper text for the fieldset
|
|
6
|
-
*/
|
|
7
|
-
helper?: string;
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Optional error text for the fieldset
|
|
11
|
-
*/
|
|
12
|
-
errorMessage?: string;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Optional tooltip text for the fieldset
|
|
16
|
-
*/
|
|
17
|
-
tooltip?: string;
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* The fieldset's legend
|
|
21
|
-
*/
|
|
22
|
-
legend?: string;
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* The direction of the Fieldset's children
|
|
26
|
-
*/
|
|
27
|
-
direction?: "row" | "column" | "row-reverse" | "column-reverse";
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* How the Fieldset children will wrap
|
|
31
|
-
*/
|
|
32
|
-
wrap?: "reverse" | "nowrap" | "wrap" | "wrap-reverse";
|
|
33
|
-
}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { FC, createContext, useContext, useState } from "react";
|
|
2
|
-
import classNames from "classnames";
|
|
3
|
-
import useGlobalSettings from "../../hooks/useGlobalSettings";
|
|
4
|
-
import { FieldsetProps } from "./Fieldset.props";
|
|
5
|
-
import { Tooltip } from "../Tooltip";
|
|
6
|
-
|
|
7
|
-
type FieldsetContextType = {
|
|
8
|
-
hasError: boolean;
|
|
9
|
-
setHasError: (value: boolean) => void;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
// Create a new context for the error state
|
|
13
|
-
export const FieldsetErrorContext = createContext<FieldsetContextType>({
|
|
14
|
-
hasError: false,
|
|
15
|
-
setHasError: (value) => value,
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
// Custom hook to access the error state from the context
|
|
19
|
-
export const useFieldsetError = () => useContext(FieldsetErrorContext);
|
|
20
|
-
|
|
21
|
-
const Fieldset: FC<FieldsetProps> = ({
|
|
22
|
-
children,
|
|
23
|
-
className,
|
|
24
|
-
legend,
|
|
25
|
-
helper,
|
|
26
|
-
tooltip,
|
|
27
|
-
errorMessage,
|
|
28
|
-
disabled = false,
|
|
29
|
-
wrap = "nowrap",
|
|
30
|
-
direction = "column",
|
|
31
|
-
...props
|
|
32
|
-
}) => {
|
|
33
|
-
const { prefix } = useGlobalSettings();
|
|
34
|
-
|
|
35
|
-
const [hasError, setHasError] = useState(false);
|
|
36
|
-
|
|
37
|
-
const baseClass = `${prefix}--fieldset`;
|
|
38
|
-
const wrapClass = `${baseClass}--wrap__${wrap}`;
|
|
39
|
-
const directionClass = `${baseClass}--direction__${direction}`;
|
|
40
|
-
const helperClass = `${baseClass}--helper`;
|
|
41
|
-
const errorClass = `${baseClass}__error`;
|
|
42
|
-
const disabledClass = `${baseClass}__disabled`;
|
|
43
|
-
|
|
44
|
-
const fieldsetClasses = classNames(
|
|
45
|
-
className,
|
|
46
|
-
baseClass,
|
|
47
|
-
wrapClass,
|
|
48
|
-
directionClass,
|
|
49
|
-
{
|
|
50
|
-
[disabledClass]: disabled,
|
|
51
|
-
}
|
|
52
|
-
);
|
|
53
|
-
|
|
54
|
-
const helperClasses = classNames(helperClass, {
|
|
55
|
-
[errorClass]: hasError,
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
const contextValue = {
|
|
59
|
-
hasError,
|
|
60
|
-
setHasError,
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
const showHelper = !!helper || hasError;
|
|
64
|
-
|
|
65
|
-
const helperMessage = hasError ? errorMessage : helper;
|
|
66
|
-
|
|
67
|
-
return (
|
|
68
|
-
<fieldset className={fieldsetClasses} {...props}>
|
|
69
|
-
{legend || helper ? (
|
|
70
|
-
<div className={`${baseClass}--legend-wrapper`}>
|
|
71
|
-
{legend && (
|
|
72
|
-
<legend className={`${baseClass}--legend`}>
|
|
73
|
-
{legend}
|
|
74
|
-
{tooltip && (
|
|
75
|
-
<Tooltip
|
|
76
|
-
className={`${baseClass}--legend--tooltip`}
|
|
77
|
-
icon={true}
|
|
78
|
-
label={tooltip}
|
|
79
|
-
theme={"dark"}
|
|
80
|
-
></Tooltip>
|
|
81
|
-
)}
|
|
82
|
-
</legend>
|
|
83
|
-
)}
|
|
84
|
-
{showHelper && <span className={helperClasses}>{helperMessage}</span>}
|
|
85
|
-
</div>
|
|
86
|
-
) : null}
|
|
87
|
-
<div className={`${baseClass}--elements`}>
|
|
88
|
-
<FieldsetErrorContext.Provider value={contextValue}>
|
|
89
|
-
{children}
|
|
90
|
-
</FieldsetErrorContext.Provider>
|
|
91
|
-
</div>
|
|
92
|
-
</fieldset>
|
|
93
|
-
);
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
export default Fieldset;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Fieldset } from "./Fieldset";
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { FileUploadProps, LabelledFileUploadProps } from "./FileUpload.props";
|
|
2
|
-
|
|
3
|
-
const basic: LabelledFileUploadProps = {
|
|
4
|
-
label: "Upload your file",
|
|
5
|
-
id: "fileupload",
|
|
6
|
-
disabled: false,
|
|
7
|
-
error: false,
|
|
8
|
-
multiple: true,
|
|
9
|
-
name: "fileupload",
|
|
10
|
-
placeholder: "Select files",
|
|
11
|
-
required: false,
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
const hashelper: LabelledFileUploadProps = {
|
|
15
|
-
label: "Upload your file",
|
|
16
|
-
id: "fileupload",
|
|
17
|
-
disabled: false,
|
|
18
|
-
error: false,
|
|
19
|
-
multiple: true,
|
|
20
|
-
name: "fileupload",
|
|
21
|
-
placeholder: "Select files",
|
|
22
|
-
required: false,
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
const haserror: LabelledFileUploadProps = {
|
|
26
|
-
label: "Upload your file",
|
|
27
|
-
id: "fileupload",
|
|
28
|
-
disabled: false,
|
|
29
|
-
error: true,
|
|
30
|
-
multiple: true,
|
|
31
|
-
name: "fileupload",
|
|
32
|
-
placeholder: "Select files",
|
|
33
|
-
required: false,
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
const hastooltip: LabelledFileUploadProps = {
|
|
37
|
-
label: "Upload your file",
|
|
38
|
-
id: "fileupload",
|
|
39
|
-
disabled: false,
|
|
40
|
-
error: false,
|
|
41
|
-
multiple: true,
|
|
42
|
-
name: "fileupload",
|
|
43
|
-
placeholder: "Select files",
|
|
44
|
-
required: false,
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
const disabled: FileUploadProps = { ...basic, disabled: true };
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Sample prop definitions FileUpload's enumerable properties (imported in stories and test)
|
|
51
|
-
*/
|
|
52
|
-
const FileUploadArgs = {
|
|
53
|
-
basic,
|
|
54
|
-
hashelper,
|
|
55
|
-
haserror,
|
|
56
|
-
hastooltip,
|
|
57
|
-
disabled,
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
export default FileUploadArgs;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { FormFieldProps } from "../../types";
|
|
2
|
-
import { LabelledFormFieldProps } from "../../types";
|
|
3
|
-
|
|
4
|
-
export interface FileUploadProps extends FormFieldProps<HTMLInputElement> {
|
|
5
|
-
/**
|
|
6
|
-
* The placeholder for the input
|
|
7
|
-
*/
|
|
8
|
-
placeholder?: string;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* The accept attribute for the input
|
|
12
|
-
*/
|
|
13
|
-
accept?: string;
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Can the user upload more than one file?
|
|
17
|
-
*/
|
|
18
|
-
multiple?: boolean;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export type LabelledFileUploadProps = LabelledFormFieldProps<FileUploadProps>;
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import React, { useState } from "react";
|
|
2
|
-
import classNames from "classnames";
|
|
3
|
-
import useGlobalSettings from "../../hooks/useGlobalSettings";
|
|
4
|
-
import FormControl, { useFormControl } from "../FormControl/FormControl";
|
|
5
|
-
import { FileUploadProps, LabelledFileUploadProps } from "./FileUpload.props";
|
|
6
|
-
|
|
7
|
-
function formatBytes(bytes: number, decimals = 2) {
|
|
8
|
-
if (!+bytes) return "0 Bytes";
|
|
9
|
-
|
|
10
|
-
const k = 1024;
|
|
11
|
-
const dm = decimals < 0 ? 0 : decimals;
|
|
12
|
-
const sizes = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
|
|
13
|
-
|
|
14
|
-
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
15
|
-
|
|
16
|
-
return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
const FileUpload = React.forwardRef<HTMLInputElement, FileUploadProps>(
|
|
20
|
-
(
|
|
21
|
-
{
|
|
22
|
-
onChange,
|
|
23
|
-
onBlur,
|
|
24
|
-
disabled = false,
|
|
25
|
-
error,
|
|
26
|
-
id,
|
|
27
|
-
multiple,
|
|
28
|
-
name,
|
|
29
|
-
placeholder,
|
|
30
|
-
required,
|
|
31
|
-
accept,
|
|
32
|
-
},
|
|
33
|
-
ref
|
|
34
|
-
) => {
|
|
35
|
-
const { prefix } = useGlobalSettings();
|
|
36
|
-
const formControlCtx = useFormControl();
|
|
37
|
-
const { ariaDescribedBy } = formControlCtx;
|
|
38
|
-
|
|
39
|
-
const baseClass = `${prefix}--file-upload`;
|
|
40
|
-
const fileUploadClasses = classNames(baseClass, {
|
|
41
|
-
[`error`]: error,
|
|
42
|
-
});
|
|
43
|
-
const inputClass = `${baseClass}--input`;
|
|
44
|
-
|
|
45
|
-
const [uploadfiles, setUploadFiles] = useState<null | FileList>(null);
|
|
46
|
-
|
|
47
|
-
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
|
|
48
|
-
const files = e.target.files;
|
|
49
|
-
setUploadFiles(files);
|
|
50
|
-
|
|
51
|
-
if (onChange) {
|
|
52
|
-
onChange(e);
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
const inputId = id ? id : name;
|
|
57
|
-
|
|
58
|
-
return (
|
|
59
|
-
<>
|
|
60
|
-
<div className={fileUploadClasses}>
|
|
61
|
-
<label className={inputClass}>
|
|
62
|
-
{placeholder}
|
|
63
|
-
<input
|
|
64
|
-
ref={ref}
|
|
65
|
-
id={inputId}
|
|
66
|
-
name={name}
|
|
67
|
-
accept={accept}
|
|
68
|
-
onChange={handleChange}
|
|
69
|
-
onBlur={onBlur}
|
|
70
|
-
disabled={disabled}
|
|
71
|
-
multiple={multiple}
|
|
72
|
-
placeholder={placeholder}
|
|
73
|
-
required={required as any}
|
|
74
|
-
type="file"
|
|
75
|
-
data-label={placeholder}
|
|
76
|
-
aria-describedby={ariaDescribedBy}
|
|
77
|
-
/>
|
|
78
|
-
</label>
|
|
79
|
-
</div>
|
|
80
|
-
{uploadfiles && uploadfiles.length > 0 && (
|
|
81
|
-
<ul className={`${baseClass}--list`}>
|
|
82
|
-
{[...uploadfiles].map((file, i) => (
|
|
83
|
-
<li
|
|
84
|
-
className={`${baseClass}--list-item`}
|
|
85
|
-
key={`${baseClass}--list-item-${i}`}
|
|
86
|
-
>
|
|
87
|
-
{`${file.name} (${formatBytes(file.size)})`}
|
|
88
|
-
</li>
|
|
89
|
-
))}
|
|
90
|
-
</ul>
|
|
91
|
-
)}
|
|
92
|
-
</>
|
|
93
|
-
);
|
|
94
|
-
}
|
|
95
|
-
);
|
|
96
|
-
|
|
97
|
-
const LabelledFileUpload = React.forwardRef<
|
|
98
|
-
HTMLInputElement,
|
|
99
|
-
LabelledFileUploadProps
|
|
100
|
-
>((props, ref) => {
|
|
101
|
-
const { style, inputStyle, className, ...rest } = props;
|
|
102
|
-
const fieldId = props.id ? props.id : props.name;
|
|
103
|
-
|
|
104
|
-
return (
|
|
105
|
-
<FormControl
|
|
106
|
-
fieldId={fieldId}
|
|
107
|
-
style={style}
|
|
108
|
-
className={className}
|
|
109
|
-
{...rest}
|
|
110
|
-
>
|
|
111
|
-
<FileUpload ref={ref} style={inputStyle} {...rest} />
|
|
112
|
-
</FormControl>
|
|
113
|
-
);
|
|
114
|
-
});
|
|
115
|
-
|
|
116
|
-
export default LabelledFileUpload;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as FileUpload } from "./FileUpload";
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { FooterProps } from "./Footer.props";
|
|
2
|
-
import ilo_logo_white from "@ilo-org/brand-assets/logo_en_horizontal_white.svg";
|
|
3
|
-
import { darkArgs as socialMediaArgs } from "../SocialMedia/SocialMedia.args";
|
|
4
|
-
|
|
5
|
-
const basic: FooterProps = {
|
|
6
|
-
className: "footer",
|
|
7
|
-
logo: ilo_logo_white,
|
|
8
|
-
tagline: "Advancing social justice, promoting decent work",
|
|
9
|
-
subtagline: "ILO is a specialized agency of the United Nations",
|
|
10
|
-
address: [
|
|
11
|
-
"International Labour Organization",
|
|
12
|
-
"4 route des Morillons",
|
|
13
|
-
"CH-1211 Genève 22",
|
|
14
|
-
"Switzerland",
|
|
15
|
-
],
|
|
16
|
-
linkgroup: [
|
|
17
|
-
{
|
|
18
|
-
links: [
|
|
19
|
-
{
|
|
20
|
-
label: "Contact us",
|
|
21
|
-
url: "https://www.ilo.org",
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
label: "Contact us",
|
|
25
|
-
url: "https://www.ilo.org",
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
label: "Contact us",
|
|
29
|
-
url: "https://www.ilo.org",
|
|
30
|
-
},
|
|
31
|
-
],
|
|
32
|
-
},
|
|
33
|
-
],
|
|
34
|
-
socialmedia: socialMediaArgs,
|
|
35
|
-
subscribe: {
|
|
36
|
-
label: "Subscribe for updates",
|
|
37
|
-
url: "https://www.ilo.org",
|
|
38
|
-
},
|
|
39
|
-
legal: "© 1996-2023 International Labour Organization (ILO)",
|
|
40
|
-
secondarylinks: [
|
|
41
|
-
{
|
|
42
|
-
label: "Link One",
|
|
43
|
-
url: "https://www.ilo.org",
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
label: "Link Two",
|
|
47
|
-
url: "https://www.ilo.org",
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
label: "Link Three",
|
|
51
|
-
url: "https://www.ilo.org",
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
label: "Link Four",
|
|
55
|
-
url: "https://www.ilo.org",
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
label: "Link Five",
|
|
59
|
-
url: "https://www.ilo.org",
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
label: "Link Six",
|
|
63
|
-
url: "https://www.ilo.org",
|
|
64
|
-
},
|
|
65
|
-
],
|
|
66
|
-
anchorlink: {
|
|
67
|
-
label: "Back to Top",
|
|
68
|
-
url: "#anchor",
|
|
69
|
-
},
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
const FooterArgs = { basic };
|
|
73
|
-
|
|
74
|
-
export default FooterArgs;
|