@digigov/ui 0.12.2 → 0.13.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/CHANGELOG.md +8 -1
- package/{src/core/ServiceBadge/ServiceBadge.mdx → LICENSE} +0 -0
- package/api/APIErrors.d.ts +22 -0
- package/api/APIErrors.js +117 -0
- package/api/APIProvider.d.ts +15 -0
- package/api/APIProvider.js +43 -0
- package/api/fetchAPI.d.ts +18 -0
- package/api/fetchAPI.js +64 -0
- package/api/index.d.ts +9 -0
- package/api/index.js +104 -0
- package/api/index.spec.d.ts +1 -0
- package/api/index.spec.js +584 -0
- package/{src/api → api}/introduction.md +0 -0
- package/api/useResource.d.ts +11 -0
- package/api/useResource.js +144 -0
- package/api/useResourceAction.d.ts +2 -0
- package/api/useResourceAction.js +157 -0
- package/api/useResourceQuery.d.ts +18 -0
- package/api/useResourceQuery.js +229 -0
- package/api/utils.d.ts +6 -0
- package/api/utils.js +250 -0
- package/app/App.d.ts +14 -0
- package/app/App.js +49 -0
- package/{src/app/Confirmation/index.tsx → app/Confirmation/index.d.ts} +0 -0
- package/app/Confirmation/index.js +44 -0
- package/{src/app/Footer/index.tsx → app/Footer/index.d.ts} +0 -0
- package/app/Footer/index.js +200 -0
- package/app/Header/HeaderLogo.d.ts +3 -0
- package/app/Header/HeaderLogo.js +30 -0
- package/app/Header/HeaderSection.d.ts +5 -0
- package/app/Header/HeaderSection.js +20 -0
- package/app/Header/HeaderTitle.d.ts +5 -0
- package/app/Header/HeaderTitle.js +30 -0
- package/{src/app → app}/Header/__snapshots__/index.spec.tsx.snap +0 -0
- package/app/Header/index.d.ts +11 -0
- package/app/Header/index.js +106 -0
- package/{src/app → app}/Header/index.mdx +0 -0
- package/app/Header/index.spec.d.ts +1 -0
- package/app/Header/index.spec.js +45 -0
- package/app/NotFound/index.d.ts +3 -0
- package/app/NotFound/index.js +29 -0
- package/app/OutdatedBrowserBanner.d.ts +2 -0
- package/app/OutdatedBrowserBanner.js +41 -0
- package/app/PageTitle.d.ts +10 -0
- package/app/PageTitle.js +76 -0
- package/{src/app → app}/QrCodeScanner/__snapshots__/index.spec.tsx.snap +0 -0
- package/app/QrCodeScanner/index.d.ts +29 -0
- package/app/QrCodeScanner/index.js +85 -0
- package/{src/app → app}/QrCodeScanner/index.mdx +0 -0
- package/app/QrCodeScanner/index.spec.d.ts +1 -0
- package/app/QrCodeScanner/index.spec.js +26 -0
- package/app/i18n.d.ts +10 -0
- package/app/i18n.js +63 -0
- package/{src/app/index.ts → app/index.d.ts} +0 -0
- package/app/index.js +70 -0
- package/{src/core → core}/Accordion/__snapshots__/index.spec.tsx.snap +0 -0
- package/core/Accordion/index.d.ts +21 -0
- package/core/Accordion/index.js +127 -0
- package/{src/core → core}/Accordion/index.mdx +0 -0
- package/core/Accordion/index.spec.d.ts +1 -0
- package/core/Accordion/index.spec.js +19 -0
- package/{src/core → core}/Blockquote/__snapshots__/index.spec.tsx.snap +0 -0
- package/core/Blockquote/index.d.ts +3 -0
- package/core/Blockquote/index.js +29 -0
- package/{src/core → core}/Blockquote/index.mdx +0 -0
- package/core/Blockquote/index.spec.d.ts +1 -0
- package/core/Blockquote/index.spec.js +21 -0
- package/{src/core/Breadcrumbs/index.tsx → core/Breadcrumbs/index.d.ts} +0 -0
- package/core/Breadcrumbs/index.js +44 -0
- package/core/Button/BackButton.d.ts +3 -0
- package/core/Button/BackButton.js +34 -0
- package/core/Button/ButtonLink.d.ts +4 -0
- package/core/Button/ButtonLink.js +28 -0
- package/core/Button/CallToAction.d.ts +7 -0
- package/core/Button/CallToAction.js +41 -0
- package/core/Button/Icon.d.ts +2 -0
- package/core/Button/Icon.js +19 -0
- package/{src/core → core}/Button/__snapshots__/index.spec.tsx.snap +0 -0
- package/core/Button/index.d.ts +15 -0
- package/core/Button/index.js +122 -0
- package/{src/core → core}/Button/index.mdx +0 -0
- package/core/Button/index.spec.d.ts +1 -0
- package/core/Button/index.spec.js +21 -0
- package/{src/core/Card/index.tsx → core/Card/index.d.ts} +0 -0
- package/core/Card/index.js +57 -0
- package/{src/core → core}/Details/__snapshots__/index.spec.tsx.snap +0 -0
- package/{src/core/Details/index.tsx → core/Details/index.d.ts} +0 -2
- package/core/Details/index.js +35 -0
- package/{src/core → core}/Details/index.mdx +0 -0
- package/core/Details/index.spec.d.ts +1 -0
- package/core/Details/index.spec.js +27 -0
- package/core/Divider/index.d.ts +5 -0
- package/core/Divider/index.js +20 -0
- package/{src/core → core}/ErrorSummary/__snapshots__/index.spec.tsx.snap +0 -0
- package/{src/core/ErrorSummary/index.tsx → core/ErrorSummary/index.d.ts} +0 -1
- package/core/ErrorSummary/index.js +19 -0
- package/{src/core → core}/ErrorSummary/index.mdx +0 -0
- package/core/ErrorSummary/index.spec.d.ts +1 -0
- package/core/ErrorSummary/index.spec.js +21 -0
- package/{src/core/Hidden/index.tsx → core/Hidden/index.d.ts} +0 -0
- package/core/Hidden/index.js +18 -0
- package/{src/core → core}/Link/__snapshots__/index.spec.tsx.snap +0 -0
- package/core/Link/index.d.ts +12 -0
- package/core/Link/index.js +50 -0
- package/core/Link/index.spec.d.ts +1 -0
- package/core/Link/index.spec.js +31 -0
- package/{src/core/List/List.tsx → core/List/List.d.ts} +0 -2
- package/core/List/List.js +19 -0
- package/{src/core/List/ListItem.tsx → core/List/ListItem.d.ts} +0 -2
- package/core/List/ListItem.js +19 -0
- package/core/List/ListItemContent.d.ts +7 -0
- package/core/List/ListItemContent.js +45 -0
- package/core/List/ListItemIcon.d.ts +7 -0
- package/core/List/ListItemIcon.js +48 -0
- package/core/List/ListItemText.d.ts +8 -0
- package/core/List/ListItemText.js +36 -0
- package/core/List/ListItemTitle.d.ts +10 -0
- package/core/List/ListItemTitle.js +44 -0
- package/{src/core → core}/List/__snapshots__/index.spec.tsx.snap +0 -0
- package/{src/core/List/index.tsx → core/List/index.d.ts} +0 -0
- package/core/List/index.js +96 -0
- package/{src/core → core}/List/index.mdx +0 -0
- package/core/List/index.spec.d.ts +1 -0
- package/core/List/index.spec.js +21 -0
- package/core/NavList/NavList.d.ts +17 -0
- package/core/NavList/NavList.js +99 -0
- package/core/NavList/NavListContext.d.ts +20 -0
- package/core/NavList/NavListContext.js +102 -0
- package/core/NavList/NavListItem.d.ts +13 -0
- package/core/NavList/NavListItem.js +171 -0
- package/core/NavList/NavListItemBase.d.ts +16 -0
- package/core/NavList/NavListItemBase.js +161 -0
- package/core/NavList/NavListSubMenu.d.ts +8 -0
- package/core/NavList/NavListSubMenu.js +52 -0
- package/{src/core → core}/NavList/__snapshots__/index.spec.tsx.snap +0 -0
- package/{src/core/NavList/index.tsx → core/NavList/index.d.ts} +0 -0
- package/core/NavList/index.js +68 -0
- package/{src/core → core}/NavList/index.mdx +0 -0
- package/core/NavList/index.spec.d.ts +1 -0
- package/core/NavList/index.spec.js +21 -0
- package/{src/core → core}/NotificationBanner/__snapshots__/index.spec.tsx.snap +0 -0
- package/core/NotificationBanner/index.d.ts +18 -0
- package/core/NotificationBanner/index.js +78 -0
- package/{src/core → core}/NotificationBanner/index.mdx +0 -0
- package/core/NotificationBanner/index.spec.d.ts +1 -0
- package/core/NotificationBanner/index.spec.js +32 -0
- package/core/ServiceBadge/ServiceBadge.mdx +0 -0
- package/core/ServiceBadge/index.d.ts +9 -0
- package/core/ServiceBadge/index.js +36 -0
- package/{src/core → core}/ServiceBadge/index.mdx +0 -0
- package/{src/core → core}/SummaryList/__snapshots__/index.spec.tsx.snap +0 -0
- package/{src/core/SummaryList/index.tsx → core/SummaryList/index.d.ts} +0 -2
- package/core/SummaryList/index.js +79 -0
- package/{src/core → core}/SummaryList/index.mdx +0 -0
- package/core/SummaryList/index.spec.d.ts +1 -0
- package/core/SummaryList/index.spec.js +19 -0
- package/{src/core/Table/index.tsx → core/Table/index.d.ts} +0 -0
- package/core/Table/index.js +96 -0
- package/core/Tabs/index.d.ts +16 -0
- package/core/Tabs/index.js +88 -0
- package/{src/core → core}/Tabs/index.mdx +0 -0
- package/{src/core/VisuallyHidden/index.tsx → core/VisuallyHidden/index.d.ts} +0 -0
- package/core/VisuallyHidden/index.js +18 -0
- package/{src/core → core}/WarningText/__snapshots__/index.spec.tsx.snap +0 -0
- package/{src/core/WarningText/index.tsx → core/WarningText/index.d.ts} +0 -1
- package/core/WarningText/index.js +19 -0
- package/{src/core → core}/WarningText/index.mdx +0 -0
- package/core/WarningText/index.spec.d.ts +1 -0
- package/core/WarningText/index.spec.js +21 -0
- package/{src/core/index.ts → core/index.d.ts} +0 -0
- package/core/index.js +227 -0
- package/custom.d.js +1 -0
- package/es/api/APIErrors.js +96 -0
- package/es/api/APIProvider.js +25 -0
- package/es/api/fetchAPI.js +49 -0
- package/{src/api/index.tsx → es/api/index.js} +3 -6
- package/es/api/index.spec.js +546 -0
- package/es/api/introduction.md +6 -0
- package/es/api/useResource.js +128 -0
- package/es/api/useResourceAction.js +141 -0
- package/es/api/useResourceQuery.js +208 -0
- package/es/api/utils.js +233 -0
- package/es/app/App.js +27 -0
- package/es/app/Confirmation/index.js +3 -0
- package/es/app/Footer/index.js +15 -0
- package/{src/app/Header/HeaderLogo.tsx → es/app/Header/HeaderLogo.js} +7 -9
- package/es/app/Header/HeaderSection.js +7 -0
- package/es/app/Header/HeaderTitle.js +17 -0
- package/es/app/Header/__snapshots__/index.spec.tsx.snap +393 -0
- package/{src/app/Header/index.tsx → es/app/Header/index.js} +4 -10
- package/es/app/Header/index.mdx +50 -0
- package/es/app/Header/index.spec.js +32 -0
- package/es/app/NotFound/index.js +12 -0
- package/es/app/OutdatedBrowserBanner.js +24 -0
- package/es/app/PageTitle.js +57 -0
- package/es/app/QrCodeScanner/__snapshots__/index.spec.tsx.snap +22 -0
- package/es/app/QrCodeScanner/index.js +64 -0
- package/es/app/QrCodeScanner/index.mdx +22 -0
- package/es/app/QrCodeScanner/index.spec.js +13 -0
- package/es/app/i18n.js +42 -0
- package/es/app/index.js +5 -0
- package/es/core/Accordion/__snapshots__/index.spec.tsx.snap +78 -0
- package/es/core/Accordion/index.js +67 -0
- package/es/core/Accordion/index.mdx +104 -0
- package/es/core/Accordion/index.spec.js +9 -0
- package/es/core/Blockquote/__snapshots__/index.spec.tsx.snap +13 -0
- package/{src/core/Blockquote/index.tsx → es/core/Blockquote/index.js} +7 -9
- package/es/core/Blockquote/index.mdx +61 -0
- package/es/core/Blockquote/index.spec.js +9 -0
- package/es/core/Breadcrumbs/index.js +3 -0
- package/{src/core/Button/BackButton.tsx → es/core/Button/BackButton.js} +8 -10
- package/es/core/Button/ButtonLink.js +16 -0
- package/es/core/Button/CallToAction.js +27 -0
- package/es/core/Button/Icon.js +7 -0
- package/es/core/Button/__snapshots__/index.spec.tsx.snap +13 -0
- package/es/core/Button/index.js +37 -0
- package/es/core/Button/index.mdx +65 -0
- package/es/core/Button/index.spec.js +9 -0
- package/es/core/Card/index.js +4 -0
- package/es/core/Details/__snapshots__/index.spec.tsx.snap +50 -0
- package/es/core/Details/index.js +5 -0
- package/es/core/Details/index.mdx +34 -0
- package/es/core/Details/index.spec.js +17 -0
- package/es/core/Divider/index.js +7 -0
- package/es/core/ErrorSummary/__snapshots__/index.spec.tsx.snap +322 -0
- package/es/core/ErrorSummary/index.js +3 -0
- package/es/core/ErrorSummary/index.mdx +61 -0
- package/es/core/ErrorSummary/index.spec.js +9 -0
- package/es/core/Hidden/index.js +1 -0
- package/es/core/Link/__snapshots__/index.spec.tsx.snap +31 -0
- package/es/core/Link/index.js +26 -0
- package/es/core/Link/index.spec.js +21 -0
- package/es/core/List/List.js +3 -0
- package/es/core/List/ListItem.js +3 -0
- package/es/core/List/ListItemContent.js +27 -0
- package/es/core/List/ListItemIcon.js +29 -0
- package/es/core/List/ListItemText.js +19 -0
- package/es/core/List/ListItemTitle.js +25 -0
- package/es/core/List/__snapshots__/index.spec.tsx.snap +322 -0
- package/es/core/List/index.js +7 -0
- package/es/core/List/index.mdx +40 -0
- package/es/core/List/index.spec.js +9 -0
- package/es/core/NavList/NavList.js +78 -0
- package/es/core/NavList/NavListContext.js +80 -0
- package/es/core/NavList/NavListItem.js +141 -0
- package/es/core/NavList/NavListItemBase.js +133 -0
- package/es/core/NavList/NavListSubMenu.js +27 -0
- package/es/core/NavList/__snapshots__/index.spec.tsx.snap +334 -0
- package/es/core/NavList/index.js +5 -0
- package/es/core/NavList/index.mdx +185 -0
- package/es/core/NavList/index.spec.js +9 -0
- package/es/core/NotificationBanner/__snapshots__/index.spec.tsx.snap +737 -0
- package/es/core/NotificationBanner/index.js +35 -0
- package/es/core/NotificationBanner/index.mdx +77 -0
- package/es/core/NotificationBanner/index.spec.js +20 -0
- package/es/core/ServiceBadge/ServiceBadge.mdx +0 -0
- package/es/core/ServiceBadge/index.js +20 -0
- package/es/core/ServiceBadge/index.mdx +42 -0
- package/es/core/SummaryList/__snapshots__/index.spec.tsx.snap +57 -0
- package/es/core/SummaryList/index.js +7 -0
- package/es/core/SummaryList/index.mdx +82 -0
- package/es/core/SummaryList/index.spec.js +9 -0
- package/es/core/Table/index.js +7 -0
- package/es/core/Tabs/index.js +37 -0
- package/es/core/Tabs/index.mdx +54 -0
- package/es/core/VisuallyHidden/index.js +1 -0
- package/es/core/WarningText/__snapshots__/index.spec.tsx.snap +336 -0
- package/es/core/WarningText/index.js +3 -0
- package/es/core/WarningText/index.mdx +46 -0
- package/es/core/WarningText/index.spec.js +9 -0
- package/es/core/index.js +17 -0
- package/es/custom.d.js +0 -0
- package/{src → es}/form/inputs/Input/index.mdx +0 -0
- package/es/govgr/Footer/Copyright.js +37 -0
- package/es/govgr/Footer/HellenicRepublicLogo.js +3 -0
- package/es/govgr/Footer/LicenseCCSA.js +18 -0
- package/es/govgr/Footer/index.js +21 -0
- package/{src → es}/govgr/Footer/index.mdx +0 -0
- package/{src/govgr/Footer/logo.ts → es/govgr/Footer/logo.js} +1 -1
- package/{src/govgr/Footer/logos/logo-el.ts → es/govgr/Footer/logos/logo-el.js} +1 -1
- package/{src/govgr/Footer/logos/logo-en.ts → es/govgr/Footer/logos/logo-en.js} +1 -1
- package/{src → es}/govgr/Logo/govgr-logo.svg +0 -0
- package/es/govgr/Logo/index.js +3 -0
- package/{src/govgr/Logo/logo.ts → es/govgr/Logo/logo.js} +1 -1
- package/es/govgr/index.js +4 -0
- package/es/hooks/useDebounce.js +41 -0
- package/es/hooks/useLatest.js +12 -0
- package/{src/hooks/useOutdatedBrowserCheck.ts → es/hooks/useOutdatedBrowserCheck.js} +15 -16
- package/es/hooks/useSearch.js +25 -0
- package/es/hooks/useTogglableSections.js +96 -0
- package/es/index.js +5 -0
- package/es/layouts/Basic/Bottom/index.js +3 -0
- package/{src → es}/layouts/Basic/Bottom/index.mdx +0 -0
- package/es/layouts/Basic/Content/index.js +18 -0
- package/{src → es}/layouts/Basic/Content/index.mdx +0 -0
- package/es/layouts/Basic/Main/index.js +3 -0
- package/{src → es}/layouts/Basic/Main/index.mdx +0 -0
- package/es/layouts/Basic/Masthead/index.js +4 -0
- package/{src → es}/layouts/Basic/Masthead/index.mdx +0 -0
- package/{src/layouts/Basic/Side/index.tsx → es/layouts/Basic/Side/index.js} +3 -5
- package/{src → es}/layouts/Basic/Side/index.mdx +0 -0
- package/{src/layouts/Basic/Top/index.tsx → es/layouts/Basic/Top/index.js} +5 -7
- package/{src → es}/layouts/Basic/Top/index.mdx +0 -0
- package/{src → es}/layouts/Basic/__snapshots__/index.spec.tsx.snap +0 -0
- package/es/layouts/Basic/index.js +8 -0
- package/{src → es}/layouts/Basic/index.mdx +0 -0
- package/es/layouts/Basic/index.spec.js +10 -0
- package/es/layouts/Grid/index.js +1 -0
- package/es/layouts/index.js +2 -0
- package/{src/locales/el.ts → es/locales/el.js} +14 -19
- package/{src/locales/en.ts → es/locales/en.js} +13 -17
- package/es/router/index.js +15 -0
- package/{src → es}/router/index.mdx +0 -0
- package/es/test-utils/delay.js +31 -0
- package/es/test-utils/mountWithTheme.js +30 -0
- package/{src → es}/themes/govgr.js +29 -33
- package/es/themes/grnet.js +110 -0
- package/es/themes/index.js +2 -0
- package/es/typography/Caption.js +7 -0
- package/es/typography/NormalText.js +3 -0
- package/es/typography/Paragraph.js +2 -0
- package/es/typography/Title.js +48 -0
- package/es/typography/index.js +8 -0
- package/{src → es}/typography/index.mdx +0 -0
- package/es/utils/evaluateBrowserVersion.js +201 -0
- package/es/utils/withDeprecation.js +103 -0
- package/esm/api/APIErrors.js +96 -0
- package/esm/api/APIProvider.js +25 -0
- package/esm/api/fetchAPI.js +49 -0
- package/esm/api/index.js +13 -0
- package/esm/api/index.spec.js +546 -0
- package/esm/api/introduction.md +6 -0
- package/esm/api/useResource.js +128 -0
- package/esm/api/useResourceAction.js +141 -0
- package/esm/api/useResourceQuery.js +208 -0
- package/esm/api/utils.js +233 -0
- package/esm/app/App.js +27 -0
- package/esm/app/Confirmation/index.js +3 -0
- package/esm/app/Footer/index.js +15 -0
- package/esm/app/Header/HeaderLogo.js +17 -0
- package/esm/app/Header/HeaderSection.js +7 -0
- package/esm/app/Header/HeaderTitle.js +17 -0
- package/esm/app/Header/__snapshots__/index.spec.tsx.snap +393 -0
- package/esm/app/Header/index.js +13 -0
- package/esm/app/Header/index.mdx +50 -0
- package/esm/app/Header/index.spec.js +32 -0
- package/esm/app/NotFound/index.js +12 -0
- package/esm/app/OutdatedBrowserBanner.js +24 -0
- package/esm/app/PageTitle.js +57 -0
- package/esm/app/QrCodeScanner/__snapshots__/index.spec.tsx.snap +22 -0
- package/esm/app/QrCodeScanner/index.js +64 -0
- package/esm/app/QrCodeScanner/index.mdx +22 -0
- package/esm/app/QrCodeScanner/index.spec.js +13 -0
- package/esm/app/i18n.js +42 -0
- package/esm/app/index.js +5 -0
- package/esm/core/Accordion/__snapshots__/index.spec.tsx.snap +78 -0
- package/esm/core/Accordion/index.js +67 -0
- package/esm/core/Accordion/index.mdx +104 -0
- package/esm/core/Accordion/index.spec.js +9 -0
- package/esm/core/Blockquote/__snapshots__/index.spec.tsx.snap +13 -0
- package/esm/core/Blockquote/index.js +16 -0
- package/esm/core/Blockquote/index.mdx +61 -0
- package/esm/core/Blockquote/index.spec.js +9 -0
- package/esm/core/Breadcrumbs/index.js +3 -0
- package/esm/core/Button/BackButton.js +21 -0
- package/esm/core/Button/ButtonLink.js +16 -0
- package/esm/core/Button/CallToAction.js +27 -0
- package/esm/core/Button/Icon.js +7 -0
- package/esm/core/Button/__snapshots__/index.spec.tsx.snap +13 -0
- package/esm/core/Button/index.js +37 -0
- package/esm/core/Button/index.mdx +65 -0
- package/esm/core/Button/index.spec.js +9 -0
- package/esm/core/Card/index.js +4 -0
- package/esm/core/Details/__snapshots__/index.spec.tsx.snap +50 -0
- package/esm/core/Details/index.js +5 -0
- package/esm/core/Details/index.mdx +34 -0
- package/esm/core/Details/index.spec.js +17 -0
- package/esm/core/Divider/index.js +7 -0
- package/esm/core/ErrorSummary/__snapshots__/index.spec.tsx.snap +322 -0
- package/esm/core/ErrorSummary/index.js +3 -0
- package/esm/core/ErrorSummary/index.mdx +61 -0
- package/esm/core/ErrorSummary/index.spec.js +9 -0
- package/esm/core/Hidden/index.js +1 -0
- package/esm/core/Link/__snapshots__/index.spec.tsx.snap +31 -0
- package/esm/core/Link/index.js +26 -0
- package/esm/core/Link/index.spec.js +21 -0
- package/esm/core/List/List.js +3 -0
- package/esm/core/List/ListItem.js +3 -0
- package/esm/core/List/ListItemContent.js +27 -0
- package/esm/core/List/ListItemIcon.js +29 -0
- package/esm/core/List/ListItemText.js +19 -0
- package/esm/core/List/ListItemTitle.js +25 -0
- package/esm/core/List/__snapshots__/index.spec.tsx.snap +322 -0
- package/esm/core/List/index.js +7 -0
- package/esm/core/List/index.mdx +40 -0
- package/esm/core/List/index.spec.js +9 -0
- package/esm/core/NavList/NavList.js +78 -0
- package/esm/core/NavList/NavListContext.js +80 -0
- package/esm/core/NavList/NavListItem.js +141 -0
- package/esm/core/NavList/NavListItemBase.js +133 -0
- package/esm/core/NavList/NavListSubMenu.js +27 -0
- package/esm/core/NavList/__snapshots__/index.spec.tsx.snap +334 -0
- package/esm/core/NavList/index.js +5 -0
- package/esm/core/NavList/index.mdx +185 -0
- package/esm/core/NavList/index.spec.js +9 -0
- package/esm/core/NotificationBanner/__snapshots__/index.spec.tsx.snap +737 -0
- package/esm/core/NotificationBanner/index.js +35 -0
- package/esm/core/NotificationBanner/index.mdx +77 -0
- package/esm/core/NotificationBanner/index.spec.js +20 -0
- package/esm/core/ServiceBadge/ServiceBadge.mdx +0 -0
- package/esm/core/ServiceBadge/index.js +20 -0
- package/esm/core/ServiceBadge/index.mdx +42 -0
- package/esm/core/SummaryList/__snapshots__/index.spec.tsx.snap +57 -0
- package/esm/core/SummaryList/index.js +7 -0
- package/esm/core/SummaryList/index.mdx +82 -0
- package/esm/core/SummaryList/index.spec.js +9 -0
- package/esm/core/Table/index.js +7 -0
- package/esm/core/Tabs/index.js +37 -0
- package/esm/core/Tabs/index.mdx +54 -0
- package/esm/core/VisuallyHidden/index.js +1 -0
- package/esm/core/WarningText/__snapshots__/index.spec.tsx.snap +336 -0
- package/esm/core/WarningText/index.js +3 -0
- package/esm/core/WarningText/index.mdx +46 -0
- package/esm/core/WarningText/index.spec.js +9 -0
- package/esm/core/index.js +17 -0
- package/esm/custom.d.js +0 -0
- package/esm/form/inputs/Input/index.mdx +10 -0
- package/esm/govgr/Footer/Copyright.js +37 -0
- package/esm/govgr/Footer/HellenicRepublicLogo.js +3 -0
- package/esm/govgr/Footer/LicenseCCSA.js +18 -0
- package/esm/govgr/Footer/index.js +21 -0
- package/esm/govgr/Footer/index.mdx +97 -0
- package/esm/govgr/Footer/logo.js +1 -0
- package/esm/govgr/Footer/logos/logo-el.js +1 -0
- package/esm/govgr/Footer/logos/logo-en.js +1 -0
- package/esm/govgr/Logo/govgr-logo.svg +1 -0
- package/esm/govgr/Logo/index.js +3 -0
- package/esm/govgr/Logo/logo.js +1 -0
- package/esm/govgr/index.js +4 -0
- package/esm/hooks/useDebounce.js +41 -0
- package/esm/hooks/useLatest.js +12 -0
- package/esm/hooks/useOutdatedBrowserCheck.js +46 -0
- package/esm/hooks/useSearch.js +25 -0
- package/esm/hooks/useTogglableSections.js +96 -0
- package/esm/index.js +10 -0
- package/esm/layouts/Basic/Bottom/index.js +3 -0
- package/esm/layouts/Basic/Bottom/index.mdx +37 -0
- package/esm/layouts/Basic/Content/index.js +18 -0
- package/esm/layouts/Basic/Content/index.mdx +64 -0
- package/esm/layouts/Basic/Main/index.js +3 -0
- package/esm/layouts/Basic/Main/index.mdx +64 -0
- package/esm/layouts/Basic/Masthead/index.js +4 -0
- package/esm/layouts/Basic/Masthead/index.mdx +74 -0
- package/esm/layouts/Basic/Side/index.js +7 -0
- package/esm/layouts/Basic/Side/index.mdx +71 -0
- package/esm/layouts/Basic/Top/index.js +11 -0
- package/esm/layouts/Basic/Top/index.mdx +74 -0
- package/esm/layouts/Basic/__snapshots__/index.spec.tsx.snap +54 -0
- package/esm/layouts/Basic/index.js +8 -0
- package/esm/layouts/Basic/index.mdx +62 -0
- package/esm/layouts/Basic/index.spec.js +10 -0
- package/esm/layouts/Grid/index.js +1 -0
- package/esm/layouts/index.js +2 -0
- package/esm/locales/el.js +55 -0
- package/esm/locales/en.js +55 -0
- package/esm/router/index.js +15 -0
- package/esm/router/index.mdx +40 -0
- package/esm/test-utils/delay.js +31 -0
- package/esm/test-utils/mountWithTheme.js +30 -0
- package/esm/themes/govgr.js +79 -0
- package/esm/themes/grnet.js +110 -0
- package/esm/themes/index.js +2 -0
- package/esm/typography/Caption.js +7 -0
- package/esm/typography/NormalText.js +3 -0
- package/esm/typography/Paragraph.js +2 -0
- package/esm/typography/Title.js +48 -0
- package/esm/typography/index.js +8 -0
- package/esm/typography/index.mdx +32 -0
- package/esm/utils/evaluateBrowserVersion.js +201 -0
- package/esm/utils/withDeprecation.js +103 -0
- package/form/inputs/Input/index.mdx +10 -0
- package/govgr/Footer/Copyright.d.ts +8 -0
- package/govgr/Footer/Copyright.js +52 -0
- package/{src/govgr/Footer/HellenicRepublicLogo.tsx → govgr/Footer/HellenicRepublicLogo.d.ts} +0 -1
- package/govgr/Footer/HellenicRepublicLogo.js +19 -0
- package/govgr/Footer/LicenseCCSA.d.ts +3 -0
- package/govgr/Footer/LicenseCCSA.js +33 -0
- package/govgr/Footer/index.d.ts +13 -0
- package/govgr/Footer/index.js +39 -0
- package/govgr/Footer/index.mdx +97 -0
- package/govgr/Footer/logo.d.ts +2 -0
- package/govgr/Footer/logo.js +8 -0
- package/govgr/Footer/logos/logo-el.d.ts +2 -0
- package/govgr/Footer/logos/logo-el.js +8 -0
- package/govgr/Footer/logos/logo-en.d.ts +2 -0
- package/govgr/Footer/logos/logo-en.js +8 -0
- package/govgr/Logo/govgr-logo.svg +1 -0
- package/{src/govgr/Logo/index.tsx → govgr/Logo/index.d.ts} +0 -2
- package/govgr/Logo/index.js +19 -0
- package/govgr/Logo/logo.d.ts +2 -0
- package/govgr/Logo/logo.js +8 -0
- package/{src/govgr/index.ts → govgr/index.d.ts} +0 -0
- package/govgr/index.js +57 -0
- package/hooks/useDebounce.d.ts +3 -0
- package/hooks/useDebounce.js +63 -0
- package/hooks/useLatest.d.ts +3 -0
- package/hooks/useLatest.js +26 -0
- package/hooks/useOutdatedBrowserCheck.d.ts +2 -0
- package/hooks/useOutdatedBrowserCheck.js +60 -0
- package/hooks/useSearch.d.ts +4 -0
- package/hooks/useSearch.js +40 -0
- package/hooks/useTogglableSections.d.ts +18 -0
- package/hooks/useTogglableSections.js +108 -0
- package/{src/index.ts → index.d.ts} +0 -0
- package/index.js +70 -0
- package/{src/layouts/Basic/Bottom/index.tsx → layouts/Basic/Bottom/index.d.ts} +0 -1
- package/layouts/Basic/Bottom/index.js +19 -0
- package/layouts/Basic/Bottom/index.mdx +37 -0
- package/layouts/Basic/Content/index.d.ts +5 -0
- package/layouts/Basic/Content/index.js +31 -0
- package/layouts/Basic/Content/index.mdx +64 -0
- package/{src/layouts/Basic/Main/index.tsx → layouts/Basic/Main/index.d.ts} +0 -1
- package/layouts/Basic/Main/index.js +19 -0
- package/layouts/Basic/Main/index.mdx +64 -0
- package/{src/layouts/Basic/Masthead/index.tsx → layouts/Basic/Masthead/index.d.ts} +0 -2
- package/layouts/Basic/Masthead/index.js +27 -0
- package/layouts/Basic/Masthead/index.mdx +74 -0
- package/layouts/Basic/Side/index.d.ts +3 -0
- package/layouts/Basic/Side/index.js +20 -0
- package/layouts/Basic/Side/index.mdx +71 -0
- package/layouts/Basic/Top/index.d.ts +3 -0
- package/layouts/Basic/Top/index.js +24 -0
- package/layouts/Basic/Top/index.mdx +74 -0
- package/layouts/Basic/__snapshots__/index.spec.tsx.snap +54 -0
- package/{src/layouts/Basic/index.tsx → layouts/Basic/index.d.ts} +0 -2
- package/layouts/Basic/index.js +97 -0
- package/layouts/Basic/index.mdx +62 -0
- package/layouts/Basic/index.spec.d.ts +1 -0
- package/layouts/Basic/index.spec.js +20 -0
- package/{src/layouts/Grid/index.tsx → layouts/Grid/index.d.ts} +0 -0
- package/layouts/Grid/index.js +18 -0
- package/{src/layouts/index.ts → layouts/index.d.ts} +0 -0
- package/layouts/index.js +34 -0
- package/locales/el.d.ts +56 -0
- package/locales/el.js +62 -0
- package/locales/en.d.ts +56 -0
- package/locales/en.js +62 -0
- package/package.json +8 -31
- package/router/index.d.ts +9 -0
- package/router/index.js +37 -0
- package/router/index.mdx +40 -0
- package/test-utils/delay.d.ts +2 -0
- package/test-utils/delay.js +45 -0
- package/test-utils/mountWithTheme.d.ts +3 -0
- package/test-utils/mountWithTheme.js +43 -0
- package/themes/govgr.d.ts +3 -0
- package/themes/govgr.js +89 -0
- package/themes/grnet.d.ts +2 -0
- package/themes/grnet.js +128 -0
- package/themes/index.d.ts +32 -0
- package/themes/index.js +19 -0
- package/typography/Caption.d.ts +7 -0
- package/typography/Caption.js +20 -0
- package/typography/NormalText.d.ts +5 -0
- package/typography/NormalText.js +19 -0
- package/typography/Paragraph.d.ts +6 -0
- package/typography/Paragraph.js +13 -0
- package/typography/Title.d.ts +9 -0
- package/typography/Title.js +63 -0
- package/{src/typography/index.ts → typography/index.d.ts} +0 -0
- package/typography/index.js +97 -0
- package/typography/index.mdx +32 -0
- package/utils/evaluateBrowserVersion.d.ts +15 -0
- package/utils/evaluateBrowserVersion.js +216 -0
- package/utils/withDeprecation.d.ts +16 -0
- package/utils/withDeprecation.js +116 -0
- package/.eslintrc.js +0 -4
- package/.prettierrc.js +0 -3
- package/.rush/temp/package-deps_build.json +0 -176
- package/.rush/temp/shrinkwrap-deps.json +0 -278
- package/CHANGELOG.json +0 -796
- package/docs/components.mdx +0 -1
- package/docs/create-a-new-service.mdx +0 -93
- package/docs/create-common-page-layout.mdx +0 -205
- package/docs/create-static-page.mdx +0 -179
- package/docs/edit-start-page.mdx +0 -143
- package/docs/index.mdx +0 -66
- package/docs/introduction.mdx +0 -34
- package/src/api/APIErrors.tsx +0 -44
- package/src/api/APIProvider.tsx +0 -27
- package/src/api/fetchAPI.ts +0 -45
- package/src/api/index.spec.tsx +0 -419
- package/src/api/useResource.tsx +0 -96
- package/src/api/useResourceAction.tsx +0 -80
- package/src/api/useResourceQuery.tsx +0 -177
- package/src/api/utils.tsx +0 -156
- package/src/app/App.tsx +0 -33
- package/src/app/Header/HeaderSection.tsx +0 -13
- package/src/app/Header/HeaderTitle.tsx +0 -24
- package/src/app/Header/index.spec.tsx +0 -32
- package/src/app/NotFound/index.tsx +0 -21
- package/src/app/OutdatedBrowserBanner.tsx +0 -37
- package/src/app/PageTitle.tsx +0 -70
- package/src/app/QrCodeScanner/index.spec.tsx +0 -19
- package/src/app/QrCodeScanner/index.tsx +0 -90
- package/src/app/i18n.tsx +0 -44
- package/src/core/Accordion/index.spec.tsx +0 -30
- package/src/core/Accordion/index.tsx +0 -86
- package/src/core/Blockquote/index.spec.tsx +0 -10
- package/src/core/Button/ButtonLink.tsx +0 -20
- package/src/core/Button/CallToAction.tsx +0 -31
- package/src/core/Button/Icon.tsx +0 -9
- package/src/core/Button/index.spec.tsx +0 -8
- package/src/core/Button/index.tsx +0 -46
- package/src/core/Details/index.spec.tsx +0 -38
- package/src/core/Divider/index.tsx +0 -13
- package/src/core/ErrorSummary/index.spec.tsx +0 -10
- package/src/core/Link/index.spec.tsx +0 -22
- package/src/core/Link/index.tsx +0 -41
- package/src/core/List/ListItemContent.tsx +0 -32
- package/src/core/List/ListItemIcon.tsx +0 -31
- package/src/core/List/ListItemText.tsx +0 -23
- package/src/core/List/ListItemTitle.tsx +0 -37
- package/src/core/List/index.spec.tsx +0 -10
- package/src/core/NavList/NavList.tsx +0 -103
- package/src/core/NavList/NavListContext.tsx +0 -85
- package/src/core/NavList/NavListItem.tsx +0 -143
- package/src/core/NavList/NavListItemBase.tsx +0 -146
- package/src/core/NavList/NavListSubMenu.tsx +0 -33
- package/src/core/NavList/index.spec.tsx +0 -10
- package/src/core/NotificationBanner/index.spec.tsx +0 -27
- package/src/core/NotificationBanner/index.tsx +0 -52
- package/src/core/ServiceBadge/index.tsx +0 -35
- package/src/core/SummaryList/index.spec.tsx +0 -28
- package/src/core/Tabs/index.tsx +0 -36
- package/src/core/WarningText/index.spec.tsx +0 -10
- package/src/custom.d.ts +0 -8
- package/src/govgr/Footer/Copyright.tsx +0 -64
- package/src/govgr/Footer/LicenseCCSA.tsx +0 -24
- package/src/govgr/Footer/index.tsx +0 -49
- package/src/hooks/useDebounce.ts +0 -50
- package/src/hooks/useLatest.ts +0 -12
- package/src/hooks/useSearch.ts +0 -47
- package/src/hooks/useTogglableSections.tsx +0 -102
- package/src/layouts/Basic/Content/index.tsx +0 -24
- package/src/layouts/Basic/index.spec.tsx +0 -24
- package/src/router/index.tsx +0 -28
- package/src/test-utils/delay.ts +0 -9
- package/src/test-utils/mountWithTheme.tsx +0 -33
- package/src/themes/grnet.js +0 -109
- package/src/themes/index.tsx +0 -38
- package/src/typography/Caption.tsx +0 -15
- package/src/typography/NormalText.tsx +0 -7
- package/src/typography/Paragraph.tsx +0 -9
- package/src/typography/Title.tsx +0 -51
- package/src/utils/evaluateBrowserVersion.ts +0 -346
- package/src/utils/withDeprecation.tsx +0 -97
- package/tsconfig.json +0 -18
- package/tsconfig.production.json +0 -27
- package/ui.build.log +0 -17
package/src/core/Tabs/index.tsx
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import Tabs from '@digigov/react-core/Tabs';
|
|
3
|
-
import TabsList from '@digigov/react-core/TabsList';
|
|
4
|
-
import TabsListItem from '@digigov/react-core/TabsListItem';
|
|
5
|
-
import TabsPanel from '@digigov/react-core/TabsPanel';
|
|
6
|
-
import TabsHeading from '@digigov/react-core/TabsHeading';
|
|
7
|
-
import {
|
|
8
|
-
useTogglableSections,
|
|
9
|
-
UseTogglableSectionsReturn,
|
|
10
|
-
} from '@digigov/ui/hooks/useTogglableSections';
|
|
11
|
-
|
|
12
|
-
export interface UseTabsReturn extends UseTogglableSectionsReturn {
|
|
13
|
-
panel: (key: string) => { active: boolean; tabIndex: number; id: string };
|
|
14
|
-
}
|
|
15
|
-
export { Tabs, TabsList, TabsListItem, TabsPanel, TabsHeading };
|
|
16
|
-
export const useTabs = (): UseTabsReturn => {
|
|
17
|
-
const { register, opened, ...rest } = useTogglableSections({
|
|
18
|
-
singleOpen: true,
|
|
19
|
-
toggleProperty: 'selected',
|
|
20
|
-
onToggleProperty: 'onClick',
|
|
21
|
-
firstOpen: true,
|
|
22
|
-
ariaNavigation: true,
|
|
23
|
-
});
|
|
24
|
-
const panel = useCallback(
|
|
25
|
-
(key: string) => {
|
|
26
|
-
return {
|
|
27
|
-
active: opened[key],
|
|
28
|
-
id: key,
|
|
29
|
-
tabIndex: opened[key] ? 1 : -1,
|
|
30
|
-
};
|
|
31
|
-
},
|
|
32
|
-
[opened]
|
|
33
|
-
);
|
|
34
|
-
return { register, opened, panel, ...rest };
|
|
35
|
-
};
|
|
36
|
-
export default Tabs;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import mountWithTheme from '@digigov/ui/test-utils/mountWithTheme';
|
|
3
|
-
|
|
4
|
-
import Component from '@digigov/ui/core/WarningText';
|
|
5
|
-
|
|
6
|
-
it('renders the WarningText with sample data', () => {
|
|
7
|
-
expect(
|
|
8
|
-
mountWithTheme(<Component>this is some random warning text</Component>)
|
|
9
|
-
).toMatchSnapshot();
|
|
10
|
-
});
|
package/src/custom.d.ts
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import CoreCopyright from '@digigov/react-core/Copyright';
|
|
3
|
-
import { useTranslation } from '@digigov/ui/app';
|
|
4
|
-
import Link from '@digigov/ui/core/Link';
|
|
5
|
-
|
|
6
|
-
const getCopyright = () => {
|
|
7
|
-
const year = new Date().getFullYear();
|
|
8
|
-
return `© Copyright ${year}`;
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export interface CopyrightProps {
|
|
12
|
-
copyright?: string;
|
|
13
|
-
createdBy?: React.ReactNode;
|
|
14
|
-
minDigitalCopyright?: boolean;
|
|
15
|
-
}
|
|
16
|
-
export const Copyright: React.FC<CopyrightProps> = ({
|
|
17
|
-
copyright = getCopyright(),
|
|
18
|
-
createdBy,
|
|
19
|
-
minDigitalCopyright,
|
|
20
|
-
}) => {
|
|
21
|
-
const { t } = useTranslation();
|
|
22
|
-
const copyrightInfo = minDigitalCopyright
|
|
23
|
-
? {
|
|
24
|
-
url: 'https://mindigital.gr',
|
|
25
|
-
label: t('footer.mindigital'),
|
|
26
|
-
}
|
|
27
|
-
: {
|
|
28
|
-
url: 'https://grnet.gr',
|
|
29
|
-
label: t('footer.grnet'),
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
return (
|
|
33
|
-
<CoreCopyright>
|
|
34
|
-
{copyright}
|
|
35
|
-
{' - '}
|
|
36
|
-
{createdBy || (
|
|
37
|
-
<>
|
|
38
|
-
{t('footer.created_by')}{' '}
|
|
39
|
-
<Link
|
|
40
|
-
href={copyrightInfo.url}
|
|
41
|
-
target="_blank"
|
|
42
|
-
rel="noopener noreferrer"
|
|
43
|
-
>
|
|
44
|
-
{copyrightInfo.label}
|
|
45
|
-
</Link>{' '}
|
|
46
|
-
{!minDigitalCopyright && (
|
|
47
|
-
<>
|
|
48
|
-
{t('footer.using')}{' '}
|
|
49
|
-
<Link
|
|
50
|
-
href="https://mathe.ellak.gr/"
|
|
51
|
-
target="_blank"
|
|
52
|
-
rel="noopener noreferrer"
|
|
53
|
-
>
|
|
54
|
-
{t('footer.open_source')}
|
|
55
|
-
</Link>
|
|
56
|
-
</>
|
|
57
|
-
)}
|
|
58
|
-
</>
|
|
59
|
-
)}
|
|
60
|
-
</CoreCopyright>
|
|
61
|
-
);
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
export default Copyright;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import NormalText from '@digigov/react-core/NormalText';
|
|
3
|
-
import { useTranslation } from '@digigov/ui/app';
|
|
4
|
-
import Link from '@digigov/ui/core/Link';
|
|
5
|
-
|
|
6
|
-
export const LicenseCCSA: React.FC = () => {
|
|
7
|
-
const { t } = useTranslation();
|
|
8
|
-
return (
|
|
9
|
-
<NormalText>
|
|
10
|
-
<>
|
|
11
|
-
{t('footer.creative_commons')}{' '}
|
|
12
|
-
<Link
|
|
13
|
-
href="https://creativecommons.org/licenses/by-sa/4.0/deed.el"
|
|
14
|
-
target="_blank"
|
|
15
|
-
rel="noopener noreferrer"
|
|
16
|
-
>
|
|
17
|
-
CC-BY-SA
|
|
18
|
-
</Link>{' '}
|
|
19
|
-
</>
|
|
20
|
-
</NormalText>
|
|
21
|
-
);
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export default LicenseCCSA;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import Copyright from '@digigov/ui/govgr/Footer/Copyright';
|
|
3
|
-
import HellenicRepublicLogo from '@digigov/ui/govgr/Footer/HellenicRepublicLogo';
|
|
4
|
-
import Footer, { FooterProps } from '@digigov/react-core/Footer';
|
|
5
|
-
import FooterContainer from '@digigov/react-core/FooterContainer';
|
|
6
|
-
import FooterMeta from '@digigov/react-core/FooterMeta';
|
|
7
|
-
import FooterMetaItem from '@digigov/react-core/FooterMetaItem';
|
|
8
|
-
|
|
9
|
-
export interface GovGRFooterProps extends FooterProps {
|
|
10
|
-
copyright?: React.ReactNode;
|
|
11
|
-
minDigitalCopyright?: boolean;
|
|
12
|
-
license?: string;
|
|
13
|
-
openSource?: string;
|
|
14
|
-
children?: React.ReactNode;
|
|
15
|
-
createdBy?: React.ReactNode;
|
|
16
|
-
className?: string;
|
|
17
|
-
}
|
|
18
|
-
export const GovGRFooter: React.FC<GovGRFooterProps> = ({
|
|
19
|
-
copyright,
|
|
20
|
-
children,
|
|
21
|
-
createdBy,
|
|
22
|
-
minDigitalCopyright,
|
|
23
|
-
}: GovGRFooterProps) => {
|
|
24
|
-
return (
|
|
25
|
-
<Footer>
|
|
26
|
-
<FooterContainer>
|
|
27
|
-
{children || (
|
|
28
|
-
<FooterMeta>
|
|
29
|
-
<FooterMetaItem>
|
|
30
|
-
{copyright ? (
|
|
31
|
-
copyright
|
|
32
|
-
) : (
|
|
33
|
-
<Copyright
|
|
34
|
-
createdBy={createdBy}
|
|
35
|
-
minDigitalCopyright={minDigitalCopyright}
|
|
36
|
-
/>
|
|
37
|
-
)}
|
|
38
|
-
</FooterMetaItem>
|
|
39
|
-
<FooterMetaItem>
|
|
40
|
-
<HellenicRepublicLogo />
|
|
41
|
-
</FooterMetaItem>
|
|
42
|
-
</FooterMeta>
|
|
43
|
-
)}
|
|
44
|
-
</FooterContainer>
|
|
45
|
-
</Footer>
|
|
46
|
-
);
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
export default GovGRFooter;
|
package/src/hooks/useDebounce.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import useLatest from '@digigov/ui/hooks/useLatest';
|
|
3
|
-
|
|
4
|
-
export const useDebounceCallback = <CallbackArgs extends any[]>(
|
|
5
|
-
callback: (...args: CallbackArgs) => void,
|
|
6
|
-
wait = 100,
|
|
7
|
-
leading = false
|
|
8
|
-
): ((...args: CallbackArgs) => void) => {
|
|
9
|
-
const storedCallback = useLatest(callback);
|
|
10
|
-
const timeout = React.useRef<ReturnType<typeof setTimeout>>();
|
|
11
|
-
const deps = [wait, leading, storedCallback];
|
|
12
|
-
// Cleans up pending timeouts when the deps change
|
|
13
|
-
React.useEffect(
|
|
14
|
-
() => () => {
|
|
15
|
-
timeout.current && clearTimeout(timeout.current);
|
|
16
|
-
timeout.current = void 0;
|
|
17
|
-
},
|
|
18
|
-
deps
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
return React.useCallback(function () {
|
|
22
|
-
// eslint-disable-next-line prefer-rest-params
|
|
23
|
-
const args = arguments;
|
|
24
|
-
const { current } = timeout;
|
|
25
|
-
// Calls on leading edge
|
|
26
|
-
if (current === void 0 && leading) {
|
|
27
|
-
timeout.current = setTimeout(() => {
|
|
28
|
-
timeout.current = void 0;
|
|
29
|
-
}, wait);
|
|
30
|
-
// eslint-disable-next-line prefer-spread
|
|
31
|
-
return storedCallback.current.apply(null, args as any);
|
|
32
|
-
}
|
|
33
|
-
// Clear the timeout every call and start waiting again
|
|
34
|
-
current && clearTimeout(current);
|
|
35
|
-
// Waits for `wait` before invoking the callback
|
|
36
|
-
timeout.current = setTimeout(() => {
|
|
37
|
-
timeout.current = void 0;
|
|
38
|
-
storedCallback.current.apply(null, args as any);
|
|
39
|
-
}, wait);
|
|
40
|
-
}, deps);
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export const useDebounce = <State extends any>(
|
|
44
|
-
initialState: State | (() => State),
|
|
45
|
-
wait?: number,
|
|
46
|
-
leading?: boolean
|
|
47
|
-
): [State, React.Dispatch<React.SetStateAction<State>>] => {
|
|
48
|
-
const state = React.useState(initialState);
|
|
49
|
-
return [state[0], useDebounceCallback(state[1], wait, leading)];
|
|
50
|
-
};
|
package/src/hooks/useLatest.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// copied from https://github.com/jaredLunde/react-hook/blob/master/packages/latest/src/index.tsx
|
|
2
|
-
import * as React from 'react'
|
|
3
|
-
|
|
4
|
-
const useLatest = <T extends any>(current: T) => {
|
|
5
|
-
const storedValue = React.useRef(current)
|
|
6
|
-
React.useEffect(() => {
|
|
7
|
-
storedValue.current = current
|
|
8
|
-
})
|
|
9
|
-
return storedValue
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export default useLatest
|
package/src/hooks/useSearch.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { useMemo } from 'react';
|
|
2
|
-
|
|
3
|
-
export function normalizeGreek(text) {
|
|
4
|
-
text = text
|
|
5
|
-
.replace(/Ά|Α|ά/g, 'α')
|
|
6
|
-
.replace(/Έ|Ε|έ/g, 'ε')
|
|
7
|
-
.replace(/Ή|Η|ή/g, 'η')
|
|
8
|
-
.replace(/Ί|Ϊ|Ι|ί|ΐ|ϊ/g, 'ι')
|
|
9
|
-
.replace(/Ό|Ο|ό/g, 'ο')
|
|
10
|
-
.replace(/Ύ|Ϋ|Υ|ύ|ΰ|ϋ/g, 'υ')
|
|
11
|
-
.replace(/Ώ|Ω|ώ/g, 'ω')
|
|
12
|
-
.replace(/Σ|ς/g, 'σ');
|
|
13
|
-
return text;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function fullTextSearch(data: Object, search: string): boolean {
|
|
17
|
-
if (!search) {
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
const q = normalizeGreek(
|
|
21
|
-
search
|
|
22
|
-
.normalize('NFC')
|
|
23
|
-
.replace(/[\u0300-\u036f]/g, '')
|
|
24
|
-
.toLowerCase()
|
|
25
|
-
);
|
|
26
|
-
const index = Object.keys(data)
|
|
27
|
-
.map(k => {
|
|
28
|
-
return data[k] ? data[k].toString().toLowerCase() : '';
|
|
29
|
-
})
|
|
30
|
-
.join('');
|
|
31
|
-
|
|
32
|
-
return normalizeGreek(
|
|
33
|
-
index.normalize('NFC').replace(/[\u0300-\u036f]/g, '')
|
|
34
|
-
).includes(q);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export function useSearch(
|
|
38
|
-
data: Array<Object>,
|
|
39
|
-
query?: string
|
|
40
|
-
) {
|
|
41
|
-
if(!query) return data
|
|
42
|
-
return useMemo(() => {
|
|
43
|
-
return data.filter(t => fullTextSearch(t, query));
|
|
44
|
-
}, [data, query]);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export default useSearch
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
/* eslint-disable react-hooks/exhaustive-deps */
|
|
2
|
-
import { useRef, useState, useCallback, useMemo } from 'react';
|
|
3
|
-
|
|
4
|
-
export interface UseTogglableSectionsInterface {
|
|
5
|
-
toggleProperty: string;
|
|
6
|
-
singleOpen?: boolean;
|
|
7
|
-
onToggleProperty: string;
|
|
8
|
-
initial?: Record<string, boolean>;
|
|
9
|
-
firstOpen?: boolean;
|
|
10
|
-
ariaNavigation?: boolean;
|
|
11
|
-
}
|
|
12
|
-
export interface UseTogglableSectionsReturn {
|
|
13
|
-
register: (el: HTMLElement) => void;
|
|
14
|
-
registered: { current: Record<string, HTMLElement> };
|
|
15
|
-
opened: Record<string, boolean>;
|
|
16
|
-
toggle: (id: string) => void;
|
|
17
|
-
setOpened: (
|
|
18
|
-
opened:
|
|
19
|
-
| ((curOpened: Record<string, boolean>) => Record<string, boolean>)
|
|
20
|
-
| Record<string, boolean>
|
|
21
|
-
) => void;
|
|
22
|
-
}
|
|
23
|
-
export function useTogglableSections({
|
|
24
|
-
toggleProperty,
|
|
25
|
-
singleOpen,
|
|
26
|
-
onToggleProperty,
|
|
27
|
-
initial,
|
|
28
|
-
firstOpen,
|
|
29
|
-
ariaNavigation,
|
|
30
|
-
}: UseTogglableSectionsInterface): UseTogglableSectionsReturn {
|
|
31
|
-
const [opened, setOpened] = useState(initial || {});
|
|
32
|
-
const registered = useRef<Record<string, HTMLElement>>({});
|
|
33
|
-
const sectionsOrder = useRef<string[]>([]);
|
|
34
|
-
const registerRef = useCallback((el) => {
|
|
35
|
-
if (!el) return;
|
|
36
|
-
const key = el.getAttribute('aria-controls') as string;
|
|
37
|
-
if (registered.current[key]) return;
|
|
38
|
-
registered.current[key] = el;
|
|
39
|
-
sectionsOrder.current.push(key);
|
|
40
|
-
if (firstOpen && sectionsOrder.current.length === 1) {
|
|
41
|
-
setOpened({
|
|
42
|
-
[key]: true,
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}, []);
|
|
46
|
-
const toggle = useCallback((e) => {
|
|
47
|
-
const key = e.currentTarget.getAttribute('aria-controls') as string;
|
|
48
|
-
e.preventDefault();
|
|
49
|
-
if (singleOpen) {
|
|
50
|
-
setOpened({ [key]: true });
|
|
51
|
-
} else {
|
|
52
|
-
setOpened((prev) => ({ ...prev, [key]: !prev[key] }));
|
|
53
|
-
}
|
|
54
|
-
}, []);
|
|
55
|
-
const onKeyDown = useCallback((e) => {
|
|
56
|
-
const key = e.target.getAttribute('aria-controls');
|
|
57
|
-
const currentIndex = sectionsOrder.current.findIndex((k) => k === key);
|
|
58
|
-
const nextKey = sectionsOrder.current[currentIndex + 1];
|
|
59
|
-
const previousKey = sectionsOrder.current[currentIndex - 1];
|
|
60
|
-
switch (e.key) {
|
|
61
|
-
case 'ArrowRight':
|
|
62
|
-
case 'ArrowDown':
|
|
63
|
-
if (nextKey) {
|
|
64
|
-
registered.current[nextKey].focus();
|
|
65
|
-
}
|
|
66
|
-
break;
|
|
67
|
-
case 'ArrowLeft':
|
|
68
|
-
case 'ArrowUp':
|
|
69
|
-
if (previousKey) {
|
|
70
|
-
registered.current[previousKey].focus();
|
|
71
|
-
}
|
|
72
|
-
break;
|
|
73
|
-
case ' ':
|
|
74
|
-
case 'Enter':
|
|
75
|
-
toggle(e);
|
|
76
|
-
break;
|
|
77
|
-
}
|
|
78
|
-
}, []);
|
|
79
|
-
const register = useCallback(
|
|
80
|
-
(key) => {
|
|
81
|
-
const isOpen = !!opened[key];
|
|
82
|
-
return {
|
|
83
|
-
ref: registerRef,
|
|
84
|
-
[toggleProperty]: isOpen,
|
|
85
|
-
[onToggleProperty]: toggle,
|
|
86
|
-
'aria-controls': `${key}`,
|
|
87
|
-
...(ariaNavigation && { onKeyDown, tabIndex: opened[key] ? 0 : -1 }),
|
|
88
|
-
};
|
|
89
|
-
},
|
|
90
|
-
[opened]
|
|
91
|
-
);
|
|
92
|
-
return useMemo(
|
|
93
|
-
() => ({
|
|
94
|
-
register,
|
|
95
|
-
registered,
|
|
96
|
-
opened,
|
|
97
|
-
toggle,
|
|
98
|
-
setOpened,
|
|
99
|
-
}),
|
|
100
|
-
[opened]
|
|
101
|
-
);
|
|
102
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import CoreContainer, {
|
|
2
|
-
ContainerProps as CoreContainerProps,
|
|
3
|
-
} from '@digigov/react-core/Container';
|
|
4
|
-
import withDeprecation from '@digigov/ui/utils/withDeprecation';
|
|
5
|
-
|
|
6
|
-
export type ContainerProps = CoreContainerProps;
|
|
7
|
-
|
|
8
|
-
export const Content = withDeprecation(CoreContainer, {
|
|
9
|
-
name: 'Content',
|
|
10
|
-
rename: 'Container',
|
|
11
|
-
props: {
|
|
12
|
-
maxWidth: {
|
|
13
|
-
error: true,
|
|
14
|
-
},
|
|
15
|
-
flex: {
|
|
16
|
-
error: true,
|
|
17
|
-
},
|
|
18
|
-
dense: {
|
|
19
|
-
error: true,
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
export default Content;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { mount } from 'enzyme';
|
|
3
|
-
|
|
4
|
-
import BasicLayout, {
|
|
5
|
-
Top,
|
|
6
|
-
Side,
|
|
7
|
-
Main,
|
|
8
|
-
Content,
|
|
9
|
-
Bottom,
|
|
10
|
-
} from '@digigov/ui/layouts/Basic';
|
|
11
|
-
|
|
12
|
-
it('renders the BasicLayout with Top, Content, Bottom, Main and Side children ', () => {
|
|
13
|
-
const jsx = (
|
|
14
|
-
<BasicLayout>
|
|
15
|
-
<Top>Header content</Top>
|
|
16
|
-
<Content>
|
|
17
|
-
<Main>Main content</Main>
|
|
18
|
-
<Side>Side content</Side>
|
|
19
|
-
</Content>
|
|
20
|
-
<Bottom>Bottom content</Bottom>
|
|
21
|
-
</BasicLayout>
|
|
22
|
-
);
|
|
23
|
-
expect(mount(jsx)).toMatchSnapshot();
|
|
24
|
-
});
|
package/src/router/index.tsx
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import React, { createContext, useContext } from 'react';
|
|
2
|
-
|
|
3
|
-
export type RouterInterface = {
|
|
4
|
-
children?: React.ReactNode;
|
|
5
|
-
router?: any;
|
|
6
|
-
};
|
|
7
|
-
export const RouterContext = createContext<RouterInterface>({});
|
|
8
|
-
|
|
9
|
-
export const useRouter = (): RouterInterface => {
|
|
10
|
-
return useContext(RouterContext);
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
export const RouterProvider: React.FC<RouterInterface> = ({
|
|
14
|
-
router,
|
|
15
|
-
children,
|
|
16
|
-
}) => {
|
|
17
|
-
return (
|
|
18
|
-
<RouterContext.Provider
|
|
19
|
-
value={{
|
|
20
|
-
router,
|
|
21
|
-
}}
|
|
22
|
-
>
|
|
23
|
-
{children}
|
|
24
|
-
</RouterContext.Provider>
|
|
25
|
-
);
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export default RouterContext;
|
package/src/test-utils/delay.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { mount } from 'enzyme';
|
|
3
|
-
import { ThemeProvider, createMuiTheme } from '@material-ui/core/styles';
|
|
4
|
-
|
|
5
|
-
const mockTheme = createMuiTheme({
|
|
6
|
-
header: {
|
|
7
|
-
height: '',
|
|
8
|
-
logo: {
|
|
9
|
-
component: '',
|
|
10
|
-
height: '',
|
|
11
|
-
},
|
|
12
|
-
border: {
|
|
13
|
-
width: '',
|
|
14
|
-
height: '',
|
|
15
|
-
background: '',
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
footer: {
|
|
19
|
-
link: '',
|
|
20
|
-
contrastText: '',
|
|
21
|
-
main: '',
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
const mountWithTheme = (tree: React.ReactNode): any => {
|
|
26
|
-
return mount(
|
|
27
|
-
<>
|
|
28
|
-
<ThemeProvider theme={mockTheme}>{tree}</ThemeProvider>
|
|
29
|
-
</>
|
|
30
|
-
);
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
export default mountWithTheme;
|
package/src/themes/grnet.js
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
createMuiTheme,
|
|
4
|
-
responsiveFontSizes,
|
|
5
|
-
makeStyles,
|
|
6
|
-
} from '@material-ui/core/styles';
|
|
7
|
-
import logo from '../govgr/Logo/govgr-logo.svg';
|
|
8
|
-
import { useTranslation } from '@digigov/ui/app/i18n';
|
|
9
|
-
import Title from '@digigov/ui/typography/Title';
|
|
10
|
-
import Container from '@material-ui/core/Container';
|
|
11
|
-
import Toolbar from '@material-ui/core/Toolbar';
|
|
12
|
-
import Typography from '@material-ui/core/Typography';
|
|
13
|
-
import Grid from '@digigov/react-core/Grid';
|
|
14
|
-
import MuiAppBar from '@material-ui/core/AppBar';
|
|
15
|
-
|
|
16
|
-
const useStyles = makeStyles((theme) => ({
|
|
17
|
-
title: {
|
|
18
|
-
lineHeight: '2em',
|
|
19
|
-
marginBottom: 0,
|
|
20
|
-
marginLeft: '5px',
|
|
21
|
-
marginRight: theme.spacing(2),
|
|
22
|
-
},
|
|
23
|
-
appbar: {
|
|
24
|
-
background: theme.palette.footer.main,
|
|
25
|
-
color: theme.palette.footer.contrastText,
|
|
26
|
-
},
|
|
27
|
-
text: {
|
|
28
|
-
flexGrow: 1,
|
|
29
|
-
},
|
|
30
|
-
}));
|
|
31
|
-
|
|
32
|
-
const Logo = () => {
|
|
33
|
-
const { t } = useTranslation();
|
|
34
|
-
const styles = useStyles();
|
|
35
|
-
return (
|
|
36
|
-
<div style={{ display: 'flex' }}>
|
|
37
|
-
<img
|
|
38
|
-
src={logo}
|
|
39
|
-
height={24}
|
|
40
|
-
width={24}
|
|
41
|
-
style={{ display: 'flex', marginTop: '6px' }}
|
|
42
|
-
/>
|
|
43
|
-
<Title size="sm" className={styles.title}>
|
|
44
|
-
{t('header_appbar.govgr_icon')}
|
|
45
|
-
</Title>
|
|
46
|
-
</div>
|
|
47
|
-
);
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
const Footer = () => {
|
|
51
|
-
const styles = useStyles();
|
|
52
|
-
return (
|
|
53
|
-
<MuiAppBar className={styles.appbar} position="static">
|
|
54
|
-
<Grid container>
|
|
55
|
-
<Container>
|
|
56
|
-
<Toolbar variant="dense" disableGutters>
|
|
57
|
-
<Typography variant="body2" className={styles.text}>
|
|
58
|
-
Powered by open source software
|
|
59
|
-
</Typography>
|
|
60
|
-
</Toolbar>
|
|
61
|
-
</Container>
|
|
62
|
-
</Grid>
|
|
63
|
-
</MuiAppBar>
|
|
64
|
-
);
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
let theme = createMuiTheme({
|
|
68
|
-
overrides: {
|
|
69
|
-
MuiButton: {
|
|
70
|
-
root: {
|
|
71
|
-
borderRadius: 0,
|
|
72
|
-
},
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
palette: {
|
|
76
|
-
primary: {
|
|
77
|
-
main: '#283d70',
|
|
78
|
-
},
|
|
79
|
-
secondary: {
|
|
80
|
-
main: '#ffffff',
|
|
81
|
-
dark: '#f5f5f5',
|
|
82
|
-
},
|
|
83
|
-
footer: {
|
|
84
|
-
main: '#e1e1e2',
|
|
85
|
-
contrastText: '#000',
|
|
86
|
-
},
|
|
87
|
-
},
|
|
88
|
-
typography: {
|
|
89
|
-
htmlFontSize: 14,
|
|
90
|
-
},
|
|
91
|
-
header: {
|
|
92
|
-
logo: {
|
|
93
|
-
component: Logo,
|
|
94
|
-
height: 45,
|
|
95
|
-
},
|
|
96
|
-
border: {
|
|
97
|
-
width: '92%',
|
|
98
|
-
height: '5px',
|
|
99
|
-
},
|
|
100
|
-
height: '45px',
|
|
101
|
-
},
|
|
102
|
-
footer: {
|
|
103
|
-
component: Footer,
|
|
104
|
-
},
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
theme = responsiveFontSizes(theme, ['sm', 'md', 'lg']);
|
|
108
|
-
|
|
109
|
-
export default theme;
|
package/src/themes/index.tsx
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { ReactChild } from 'react';
|
|
2
|
-
import { useTheme, makeStyles } from '@material-ui/core';
|
|
3
|
-
|
|
4
|
-
interface Logo {
|
|
5
|
-
component: ReactChild;
|
|
6
|
-
height: string | number;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
interface Footer {
|
|
10
|
-
link: string;
|
|
11
|
-
contrastText: string;
|
|
12
|
-
main: string;
|
|
13
|
-
component?: ReactChild;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
interface Header {
|
|
17
|
-
logo: Logo;
|
|
18
|
-
border: {
|
|
19
|
-
width: string | number;
|
|
20
|
-
height: string | number;
|
|
21
|
-
background: string;
|
|
22
|
-
};
|
|
23
|
-
height: string | number;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
declare module '@material-ui/core/styles/createMuiTheme' {
|
|
27
|
-
interface Theme {
|
|
28
|
-
header: Header;
|
|
29
|
-
footer: Footer;
|
|
30
|
-
}
|
|
31
|
-
// allow configuration using `createMuiTheme`
|
|
32
|
-
interface ThemeOptions {
|
|
33
|
-
header: Header;
|
|
34
|
-
footer: Footer;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export { useTheme, makeStyles };
|