@dnanpm/ui-components 0.8.0 → 0.9.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/dist/components/Accordion/Accordion.css +6 -3
- package/dist/components/AccordionItem/AccordionItem.css +6 -3
- package/dist/components/Breadcrumb/Breadcrumb.css +6 -3
- package/dist/components/Button/Button.css +2 -3
- package/dist/components/ButtonCard/ButtonCard.css +2 -3
- package/dist/components/ContentCard/ContentCard.cjs +96 -0
- package/dist/components/ContentCard/ContentCard.cjs.map +1 -0
- package/dist/components/ContentCard/ContentCard.css +249 -0
- package/dist/components/ContentCard/ContentCard.d.ts +3 -0
- package/dist/components/ContentCard/ContentCard.d.ts.map +1 -0
- package/dist/components/ContentCard/ContentCard.js +96 -0
- package/dist/components/ContentCard/ContentCard.js.map +1 -0
- package/dist/components/ContentCard/ContentCard.module.css.cjs +24 -0
- package/dist/components/ContentCard/ContentCard.module.css.cjs.map +1 -0
- package/dist/components/ContentCard/ContentCard.module.css.js +25 -0
- package/dist/components/ContentCard/ContentCard.module.css.js.map +1 -0
- package/dist/components/ContentCard/ContentCard.types.d.ts +99 -0
- package/dist/components/ContentCard/ContentCard.types.d.ts.map +1 -0
- package/dist/components/ContentCard/index.d.ts +3 -0
- package/dist/components/ContentCard/index.d.ts.map +1 -0
- package/dist/components/Drawer/Drawer.css +2 -3
- package/dist/components/Footer/Footer.css +6 -3
- package/dist/components/FunctionButton/FunctionButton.css +2 -3
- package/dist/components/Hero/Hero.cjs +24 -26
- package/dist/components/Hero/Hero.cjs.map +1 -1
- package/dist/components/Hero/Hero.css +81 -74
- package/dist/components/Hero/Hero.js +24 -26
- package/dist/components/Hero/Hero.js.map +1 -1
- package/dist/components/Hero/Hero.module.css.cjs +20 -17
- package/dist/components/Hero/Hero.module.css.cjs.map +1 -1
- package/dist/components/Hero/Hero.module.css.js +20 -17
- package/dist/components/Hero/Hero.module.css.js.map +1 -1
- package/dist/components/IconButton/IconButton.css +2 -3
- package/dist/components/Label/Label.css +2 -3
- package/dist/components/MainNavigation/MainNavigation.cjs +407 -96
- package/dist/components/MainNavigation/MainNavigation.cjs.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.css +255 -151
- package/dist/components/MainNavigation/MainNavigation.d.ts +1 -1
- package/dist/components/MainNavigation/MainNavigation.d.ts.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.js +409 -98
- package/dist/components/MainNavigation/MainNavigation.js.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.module.css.cjs +78 -68
- package/dist/components/MainNavigation/MainNavigation.module.css.cjs.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.module.css.js +78 -68
- package/dist/components/MainNavigation/MainNavigation.module.css.js.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.types.d.ts +64 -17
- package/dist/components/MainNavigation/MainNavigation.types.d.ts.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.utils.cjs +20 -0
- package/dist/components/MainNavigation/MainNavigation.utils.cjs.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.utils.d.ts +10 -1
- package/dist/components/MainNavigation/MainNavigation.utils.d.ts.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.utils.js +20 -0
- package/dist/components/MainNavigation/MainNavigation.utils.js.map +1 -1
- package/dist/components/MainNavigation/index.d.ts +1 -1
- package/dist/components/MainNavigation/index.d.ts.map +1 -1
- package/dist/components/Modal/Modal.css +2 -3
- package/dist/components/Notification/Notification.css +6 -3
- package/dist/components/Pictograph/Pictograph.css +6 -3
- package/dist/components/Pictograph/PictographItem.css +6 -3
- package/dist/components/Quote/Quote.css +2 -3
- package/dist/components/Spinner/Spinner.css +6 -3
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/styles/utils/elevation.css +2 -3
- package/dist/styles/utils/focus.css +25 -22
- package/dist/styles/utils/focus.module.css.cjs +3 -3
- package/dist/styles/utils/focus.module.css.js +3 -3
- package/dist/styles/utils/overlay.css +2 -3
- package/dist/styles/utils/text-decoration.css +2 -3
- package/dist/styles.css +17 -7
- package/package.json +1 -1
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
const relativeNavigationBaseUrl = "https://navigation.local";
|
|
2
2
|
const safeLinkProtocols = /* @__PURE__ */ new Set(["http:", "https:", "mailto:", "tel:"]);
|
|
3
|
+
const languageLinkAriaLabels = {
|
|
4
|
+
fi: "FI, siirry suomenkieliselle sivustolle",
|
|
5
|
+
en: "EN, customer support in English",
|
|
6
|
+
sv: "SV, kundsupport på svenska"
|
|
7
|
+
};
|
|
8
|
+
const languageToggleAnnouncementBuilders = {
|
|
9
|
+
en: (currentCode) => `Change language. Current language ${currentCode}.`,
|
|
10
|
+
fi: (currentCode) => `Vaihda kieli. Nykyinen kieli ${currentCode}.`,
|
|
11
|
+
sv: (currentCode) => `Ändra språk. Aktuellt språk ${currentCode}.`
|
|
12
|
+
};
|
|
13
|
+
const languageAnnouncementOrder = ["en", "fi", "sv"];
|
|
14
|
+
const getLanguageToggleAnnouncements = (presentCodes, currentCode) => {
|
|
15
|
+
const upperCurrentCode = currentCode.toUpperCase();
|
|
16
|
+
return languageAnnouncementOrder.filter((code) => presentCodes.includes(code)).map((code) => ({
|
|
17
|
+
lang: code,
|
|
18
|
+
text: languageToggleAnnouncementBuilders[code](upperCurrentCode)
|
|
19
|
+
}));
|
|
20
|
+
};
|
|
3
21
|
const isDesktopViewportByEnvironment = (windowObject) => {
|
|
4
22
|
if (windowObject == null) {
|
|
5
23
|
return false;
|
|
@@ -149,6 +167,7 @@ const assignRef = (target, value) => {
|
|
|
149
167
|
};
|
|
150
168
|
export {
|
|
151
169
|
assignRef,
|
|
170
|
+
getLanguageToggleAnnouncements,
|
|
152
171
|
getLinkRel,
|
|
153
172
|
getLinkTarget,
|
|
154
173
|
hasHref,
|
|
@@ -160,6 +179,7 @@ export {
|
|
|
160
179
|
isLinkInCurrentPath,
|
|
161
180
|
isMobileIosDeviceByEnvironment,
|
|
162
181
|
isMobileViewportByEnvironment,
|
|
182
|
+
languageLinkAriaLabels,
|
|
163
183
|
matchesPath,
|
|
164
184
|
normalizePathname,
|
|
165
185
|
toNavigableHref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainNavigation.utils.js","sources":["../../../src/components/MainNavigation/MainNavigation.utils.ts"],"sourcesContent":["import type { Ref } from 'react';\nimport type { MainNavigationItem, MainNavigationLink } from './MainNavigation.types';\n\nconst relativeNavigationBaseUrl = 'https://navigation.local';\nconst safeLinkProtocols = new Set(['http:', 'https:', 'mailto:', 'tel:']);\n\nexport type MainNavigationWindowLike = {\n innerWidth: number;\n matchMedia?: (query: string) => Pick<MediaQueryList, 'matches'>;\n MSStream?: unknown;\n};\n\nexport type MainNavigationNavigatorLike = {\n userAgent: string;\n};\n\nexport const isDesktopViewportByEnvironment = (\n windowObject: MainNavigationWindowLike | undefined,\n) => {\n if (windowObject == null) {\n return false;\n }\n\n if (typeof windowObject.matchMedia === 'function') {\n return windowObject.matchMedia('(min-width: 1024px)').matches;\n }\n\n return windowObject.innerWidth >= 1024;\n};\n\nexport const isMobileViewportByEnvironment = (\n windowObject: MainNavigationWindowLike | undefined,\n) => {\n if (windowObject == null) {\n return false;\n }\n\n if (typeof windowObject.matchMedia === 'function') {\n return windowObject.matchMedia('(max-width: 1023px)').matches;\n }\n\n return windowObject.innerWidth < 1024;\n};\n\nexport const isMobileIosDeviceByEnvironment = (\n windowObject: MainNavigationWindowLike | undefined,\n navigatorObject: MainNavigationNavigatorLike | undefined,\n) => {\n if (windowObject == null || navigatorObject == null) {\n return false;\n }\n\n const isIOS =\n /iPad|iPhone|iPod/.test(navigatorObject.userAgent) && !('MSStream' in windowObject);\n return isIOS && windowObject.innerWidth < 768;\n};\n\nexport const isExternalTarget = (target?: string) => target === '_blank';\n\nexport const isExternalLink = (link: Pick<MainNavigationLink, 'target' | 'external'>) => {\n if (link.external != null) {\n return link.external;\n }\n\n return isExternalTarget(link.target);\n};\n\nexport const getLinkRel = (target?: string) =>\n isExternalTarget(target) ? 'noopener noreferrer' : undefined;\n\nexport const getLinkTarget = (target?: string) => (isExternalTarget(target) ? '_blank' : undefined);\n\nexport const normalizePathname = (value: string) => {\n const path = value.split('?')[0].split('#')[0] || '/';\n const withLeadingSlash = path.startsWith('/') ? path : `/${path}`;\n\n if (withLeadingSlash === '/') {\n return '/';\n }\n\n return withLeadingSlash.replace(/\\/+$/, '');\n};\n\nexport const toNavigableHref = (href: string) => {\n const normalizedHref = href.trim();\n\n if (normalizedHref === '') {\n return '#';\n }\n\n const hrefWithProtocol = normalizedHref.toLowerCase().startsWith('www.')\n ? `https://${normalizedHref}`\n : normalizedHref;\n\n if (hrefWithProtocol.startsWith('./') || hrefWithProtocol.startsWith('../')) {\n return hrefWithProtocol;\n }\n\n if (\n hrefWithProtocol.startsWith('/') ||\n hrefWithProtocol.startsWith('#') ||\n hrefWithProtocol.startsWith('?')\n ) {\n return hrefWithProtocol;\n }\n\n const hasScheme = /^[a-zA-Z][a-zA-Z\\d+\\-.]*:/.test(hrefWithProtocol);\n\n if (!hasScheme) {\n return hrefWithProtocol;\n }\n\n try {\n const protocol = new URL(\n hrefWithProtocol,\n relativeNavigationBaseUrl,\n ).protocol.toLowerCase();\n if (safeLinkProtocols.has(protocol)) {\n return hrefWithProtocol;\n }\n } catch {\n return '#';\n }\n\n return '#';\n};\n\nexport const toPathname = (href?: string) => {\n if (href == null || href.trim() === '' || href === '#') {\n return null;\n }\n\n if (href.startsWith('/')) {\n return normalizePathname(href);\n }\n\n try {\n return normalizePathname(new URL(href).pathname);\n } catch {\n return normalizePathname(href);\n }\n};\n\nexport const matchesPath = (currentPathname: string, linkPathname: string) => {\n if (linkPathname === '/') {\n return currentPathname === '/';\n }\n\n return currentPathname === linkPathname || currentPathname.startsWith(`${linkPathname}/`);\n};\n\nexport const isLinkInCurrentPath = (link: MainNavigationLink, currentPathname?: string) => {\n if (link.current) {\n return true;\n }\n\n if (isExternalLink(link)) {\n return false;\n }\n\n if (currentPathname == null) {\n return false;\n }\n\n const linkPathname = toPathname(toNavigableHref(link.href));\n\n if (linkPathname == null) {\n return false;\n }\n\n return matchesPath(normalizePathname(currentPathname), linkPathname);\n};\n\nexport const hasHref = (item: MainNavigationItem): item is MainNavigationItem & { href: string } =>\n typeof item.href === 'string' && item.href.trim().length > 0;\n\nexport const isItemInCurrentPath = (item: MainNavigationItem, currentPathname?: string) => {\n if (hasHref(item) && isLinkInCurrentPath(item, currentPathname)) {\n return true;\n }\n\n if (\n item.panel?.columns?.some((column) =>\n column.links.some((link) => isLinkInCurrentPath(link, currentPathname)),\n )\n ) {\n return true;\n }\n\n return (\n item.panel?.featureLinks?.some((link) => isLinkInCurrentPath(link, currentPathname)) ??\n false\n );\n};\n\nexport const isLinkInCurrentPage = (link: MainNavigationLink, currentPathname?: string) => {\n if (link.current) {\n return true;\n }\n\n if (isExternalLink(link)) {\n return false;\n }\n\n if (currentPathname == null) {\n return false;\n }\n\n const linkPathname = toPathname(toNavigableHref(link.href));\n\n if (linkPathname == null) {\n return false;\n }\n\n return normalizePathname(currentPathname) === linkPathname;\n};\n\nconst isRefObject = <T>(target: Ref<T>): target is { current: T | null } =>\n typeof target === 'object' && target !== null && 'current' in target;\n\nexport const assignRef = <T>(target: Ref<T> | undefined, value: T | null) => {\n if (target == null) {\n return;\n }\n\n if (typeof target === 'function') {\n target(value);\n return;\n }\n\n if (isRefObject(target)) {\n target.current = value;\n }\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MainNavigation.utils.js","sources":["../../../src/components/MainNavigation/MainNavigation.utils.ts"],"sourcesContent":["import type { Ref } from 'react';\nimport type {\n MainNavigationItem,\n MainNavigationLanguageCode,\n MainNavigationLink,\n} from './MainNavigation.types';\n\nconst relativeNavigationBaseUrl = 'https://navigation.local';\nconst safeLinkProtocols = new Set(['http:', 'https:', 'mailto:', 'tel:']);\n\nexport const languageLinkAriaLabels: Record<MainNavigationLanguageCode, string> = {\n fi: 'FI, siirry suomenkieliselle sivustolle',\n en: 'EN, customer support in English',\n sv: 'SV, kundsupport på svenska',\n};\n\nconst languageToggleAnnouncementBuilders: Record<\n MainNavigationLanguageCode,\n (currentCode: string) => string\n> = {\n en: (currentCode) => `Change language. Current language ${currentCode}.`,\n fi: (currentCode) => `Vaihda kieli. Nykyinen kieli ${currentCode}.`,\n sv: (currentCode) => `Ändra språk. Aktuellt språk ${currentCode}.`,\n};\n\nconst languageAnnouncementOrder: readonly MainNavigationLanguageCode[] = ['en', 'fi', 'sv'];\n\n/**\n * Builds the toggle's screen-reader announcements: one per language present in the data, each in its\n * own language, with the current language code as the final token.\n */\nexport const getLanguageToggleAnnouncements = (\n presentCodes: readonly MainNavigationLanguageCode[],\n currentCode: MainNavigationLanguageCode,\n): ReadonlyArray<{ readonly lang: MainNavigationLanguageCode; readonly text: string }> => {\n const upperCurrentCode = currentCode.toUpperCase();\n\n return languageAnnouncementOrder\n .filter((code) => presentCodes.includes(code))\n .map((code) => ({\n lang: code,\n text: languageToggleAnnouncementBuilders[code](upperCurrentCode),\n }));\n};\n\nexport type MainNavigationWindowLike = {\n innerWidth: number;\n matchMedia?: (query: string) => Pick<MediaQueryList, 'matches'>;\n MSStream?: unknown;\n};\n\nexport type MainNavigationNavigatorLike = {\n userAgent: string;\n};\n\nexport const isDesktopViewportByEnvironment = (\n windowObject: MainNavigationWindowLike | undefined,\n) => {\n if (windowObject == null) {\n return false;\n }\n\n if (typeof windowObject.matchMedia === 'function') {\n return windowObject.matchMedia('(min-width: 1024px)').matches;\n }\n\n return windowObject.innerWidth >= 1024;\n};\n\nexport const isMobileViewportByEnvironment = (\n windowObject: MainNavigationWindowLike | undefined,\n) => {\n if (windowObject == null) {\n return false;\n }\n\n if (typeof windowObject.matchMedia === 'function') {\n return windowObject.matchMedia('(max-width: 1023px)').matches;\n }\n\n return windowObject.innerWidth < 1024;\n};\n\nexport const isMobileIosDeviceByEnvironment = (\n windowObject: MainNavigationWindowLike | undefined,\n navigatorObject: MainNavigationNavigatorLike | undefined,\n) => {\n if (windowObject == null || navigatorObject == null) {\n return false;\n }\n\n const isIOS =\n /iPad|iPhone|iPod/.test(navigatorObject.userAgent) && !('MSStream' in windowObject);\n return isIOS && windowObject.innerWidth < 768;\n};\n\nexport const isExternalTarget = (target?: string) => target === '_blank';\n\nexport const isExternalLink = (link: Pick<MainNavigationLink, 'target' | 'external'>) => {\n if (link.external != null) {\n return link.external;\n }\n\n return isExternalTarget(link.target);\n};\n\nexport const getLinkRel = (target?: string) =>\n isExternalTarget(target) ? 'noopener noreferrer' : undefined;\n\nexport const getLinkTarget = (target?: string) => (isExternalTarget(target) ? '_blank' : undefined);\n\nexport const normalizePathname = (value: string) => {\n const path = value.split('?')[0].split('#')[0] || '/';\n const withLeadingSlash = path.startsWith('/') ? path : `/${path}`;\n\n if (withLeadingSlash === '/') {\n return '/';\n }\n\n return withLeadingSlash.replace(/\\/+$/, '');\n};\n\nexport const toNavigableHref = (href: string) => {\n const normalizedHref = href.trim();\n\n if (normalizedHref === '') {\n return '#';\n }\n\n const hrefWithProtocol = normalizedHref.toLowerCase().startsWith('www.')\n ? `https://${normalizedHref}`\n : normalizedHref;\n\n if (hrefWithProtocol.startsWith('./') || hrefWithProtocol.startsWith('../')) {\n return hrefWithProtocol;\n }\n\n if (\n hrefWithProtocol.startsWith('/') ||\n hrefWithProtocol.startsWith('#') ||\n hrefWithProtocol.startsWith('?')\n ) {\n return hrefWithProtocol;\n }\n\n const hasScheme = /^[a-zA-Z][a-zA-Z\\d+\\-.]*:/.test(hrefWithProtocol);\n\n if (!hasScheme) {\n return hrefWithProtocol;\n }\n\n try {\n const protocol = new URL(\n hrefWithProtocol,\n relativeNavigationBaseUrl,\n ).protocol.toLowerCase();\n if (safeLinkProtocols.has(protocol)) {\n return hrefWithProtocol;\n }\n } catch {\n return '#';\n }\n\n return '#';\n};\n\nexport const toPathname = (href?: string) => {\n if (href == null || href.trim() === '' || href === '#') {\n return null;\n }\n\n if (href.startsWith('/')) {\n return normalizePathname(href);\n }\n\n try {\n return normalizePathname(new URL(href).pathname);\n } catch {\n return normalizePathname(href);\n }\n};\n\nexport const matchesPath = (currentPathname: string, linkPathname: string) => {\n if (linkPathname === '/') {\n return currentPathname === '/';\n }\n\n return currentPathname === linkPathname || currentPathname.startsWith(`${linkPathname}/`);\n};\n\nexport const isLinkInCurrentPath = (link: MainNavigationLink, currentPathname?: string) => {\n if (link.current) {\n return true;\n }\n\n if (isExternalLink(link)) {\n return false;\n }\n\n if (currentPathname == null) {\n return false;\n }\n\n const linkPathname = toPathname(toNavigableHref(link.href));\n\n if (linkPathname == null) {\n return false;\n }\n\n return matchesPath(normalizePathname(currentPathname), linkPathname);\n};\n\nexport const hasHref = (item: MainNavigationItem): item is MainNavigationItem & { href: string } =>\n typeof item.href === 'string' && item.href.trim().length > 0;\n\nexport const isItemInCurrentPath = (item: MainNavigationItem, currentPathname?: string) => {\n if (hasHref(item) && isLinkInCurrentPath(item, currentPathname)) {\n return true;\n }\n\n if (\n item.panel?.columns?.some((column) =>\n column.links.some((link) => isLinkInCurrentPath(link, currentPathname)),\n )\n ) {\n return true;\n }\n\n return (\n item.panel?.featureLinks?.some((link) => isLinkInCurrentPath(link, currentPathname)) ??\n false\n );\n};\n\nexport const isLinkInCurrentPage = (link: MainNavigationLink, currentPathname?: string) => {\n if (link.current) {\n return true;\n }\n\n if (isExternalLink(link)) {\n return false;\n }\n\n if (currentPathname == null) {\n return false;\n }\n\n const linkPathname = toPathname(toNavigableHref(link.href));\n\n if (linkPathname == null) {\n return false;\n }\n\n return normalizePathname(currentPathname) === linkPathname;\n};\n\nconst isRefObject = <T>(target: Ref<T>): target is { current: T | null } =>\n typeof target === 'object' && target !== null && 'current' in target;\n\nexport const assignRef = <T>(target: Ref<T> | undefined, value: T | null) => {\n if (target == null) {\n return;\n }\n\n if (typeof target === 'function') {\n target(value);\n return;\n }\n\n if (isRefObject(target)) {\n target.current = value;\n }\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { MainNavigation } from './MainNavigation';
|
|
2
|
-
export type { MainNavigationItem, MainNavigationLink, MainNavigationOrganizationLink, MainNavigationPanel, MainNavigationProps, MainNavigationSubmenuColumn, } from './MainNavigation.types';
|
|
2
|
+
export type { MainNavigationItem, MainNavigationLanguageCode, MainNavigationLanguageLinkProps, MainNavigationLanguageOption, MainNavigationLink, MainNavigationOrganizationLink, MainNavigationPanel, MainNavigationProps, MainNavigationRenderLanguageLink, MainNavigationSubmenuColumn, } from './MainNavigation.types';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/MainNavigation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACR,kBAAkB,EAClB,kBAAkB,EAClB,8BAA8B,EAC9B,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,GAC9B,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/MainNavigation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACR,kBAAkB,EAClB,0BAA0B,EAC1B,+BAA+B,EAC/B,4BAA4B,EAC5B,kBAAkB,EAClB,8BAA8B,EAC9B,mBAAmB,EACnB,mBAAmB,EACnB,gCAAgC,EAChC,2BAA2B,GAC9B,MAAM,wBAAwB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@layer dds-components {._modal_ewl1e_1 {
|
|
1
|
+
@layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._modal_ewl1e_1 {
|
|
2
2
|
--_modal-transition-duration-open: 400ms;
|
|
3
3
|
--_modal-transition-duration-close: 200ms;
|
|
4
4
|
display: flex;
|
|
@@ -201,5 +201,4 @@
|
|
|
201
201
|
background: ButtonFace;
|
|
202
202
|
color: ButtonText;
|
|
203
203
|
}
|
|
204
|
-
}
|
|
205
|
-
}
|
|
204
|
+
} }
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
@layer dds-components
|
|
1
|
+
@layer dds-base, dds-components;
|
|
2
|
+
|
|
3
|
+
@layer dds-components { @layer fallback, components; }
|
|
4
|
+
|
|
5
|
+
@layer dds-components.components{/**
|
|
2
6
|
* Notification Component Styles
|
|
3
7
|
*
|
|
4
8
|
* Design tokens are consumed via CSS custom properties (variables).
|
|
@@ -86,5 +90,4 @@
|
|
|
86
90
|
._notification__close_m746g_69 svg {
|
|
87
91
|
width: 24px;
|
|
88
92
|
height: 24px;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
93
|
+
} }
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
@layer dds-components
|
|
1
|
+
@layer dds-base, dds-components;
|
|
2
|
+
|
|
3
|
+
@layer dds-components { @layer fallback, components; }
|
|
4
|
+
|
|
5
|
+
@layer dds-components.components{/**
|
|
2
6
|
* Pictograph Component Styles
|
|
3
7
|
*
|
|
4
8
|
* Grid-based layout for pictograph items with responsive columns,
|
|
@@ -198,5 +202,4 @@
|
|
|
198
202
|
--_pictograph-text-color: var(--color-semantic-foreground-inverse);
|
|
199
203
|
--_pictograph-icon-color: var(--color-semantic-foreground-inverse);
|
|
200
204
|
}
|
|
201
|
-
}
|
|
202
|
-
}
|
|
205
|
+
} }
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
@layer dds-components
|
|
1
|
+
@layer dds-base, dds-components;
|
|
2
|
+
|
|
3
|
+
@layer dds-components { @layer fallback, components; }
|
|
4
|
+
|
|
5
|
+
@layer dds-components.components{/**
|
|
2
6
|
* PictographItem Component Styles
|
|
3
7
|
*
|
|
4
8
|
* Individual pictograph item containing an icon and text area.
|
|
@@ -62,5 +66,4 @@
|
|
|
62
66
|
|
|
63
67
|
._pictograph-item_1jsnm_9[data-pictograph-content='long'] ._pictograph-item__text_1jsnm_35 > p {
|
|
64
68
|
font: var(--_pictograph-long-body-font);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
69
|
+
} }
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@layer dds-components {._quote_1dakr_1 {
|
|
1
|
+
@layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._quote_1dakr_1 {
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: flex-start;
|
|
4
4
|
gap: var(--spacing-space-20);
|
|
@@ -91,5 +91,4 @@
|
|
|
91
91
|
._quote__mark_1dakr_15 {
|
|
92
92
|
color: CanvasText;
|
|
93
93
|
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
94
|
+
} }
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
@layer dds-components
|
|
1
|
+
@layer dds-base, dds-components;
|
|
2
|
+
|
|
3
|
+
@layer dds-components { @layer fallback, components; }
|
|
4
|
+
|
|
5
|
+
@layer dds-components.components{/* ─────────────────────────────────────────────────────────────
|
|
2
6
|
Spinner — base
|
|
3
7
|
───────────────────────────────────────────────────────────── */
|
|
4
8
|
|
|
@@ -112,5 +116,4 @@
|
|
|
112
116
|
._spinner__car_j28th_88 {
|
|
113
117
|
animation-duration: 3s;
|
|
114
118
|
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
119
|
+
} }
|
package/dist/index.cjs
CHANGED
|
@@ -7,6 +7,7 @@ const Breadcrumb = require("./components/Breadcrumb/Breadcrumb.cjs");
|
|
|
7
7
|
const Button = require("./components/Button/Button.cjs");
|
|
8
8
|
const ButtonCard = require("./components/ButtonCard/ButtonCard.cjs");
|
|
9
9
|
const ColorScheme = require("./components/ColorScheme/ColorScheme.cjs");
|
|
10
|
+
const ContentCard = require("./components/ContentCard/ContentCard.cjs");
|
|
10
11
|
const Drawer = require("./components/Drawer/Drawer.cjs");
|
|
11
12
|
const Footer = require("./components/Footer/Footer.cjs");
|
|
12
13
|
const FunctionButton = require("./components/FunctionButton/FunctionButton.cjs");
|
|
@@ -27,6 +28,7 @@ exports.Breadcrumb = Breadcrumb.Breadcrumb;
|
|
|
27
28
|
exports.Button = Button.Button;
|
|
28
29
|
exports.ButtonCard = ButtonCard.ButtonCard;
|
|
29
30
|
exports.ColorScheme = ColorScheme.ColorScheme;
|
|
31
|
+
exports.ContentCard = ContentCard.ContentCard;
|
|
30
32
|
exports.Drawer = Drawer.Drawer;
|
|
31
33
|
exports.Footer = Footer.Footer;
|
|
32
34
|
exports.FunctionButton = FunctionButton.FunctionButton;
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export { Breadcrumb } from './components/Breadcrumb';
|
|
|
4
4
|
export { Button } from './components/Button';
|
|
5
5
|
export { ButtonCard } from './components/ButtonCard';
|
|
6
6
|
export { ColorScheme } from './components/ColorScheme';
|
|
7
|
+
export { ContentCard } from './components/ContentCard';
|
|
7
8
|
export { Drawer } from './components/Drawer';
|
|
8
9
|
export { Footer } from './components/Footer';
|
|
9
10
|
export { Hero } from './components/Hero';
|
|
@@ -22,10 +23,11 @@ export type { BreadcrumbItem, BreadcrumbLinkProps, BreadcrumbProps } from './com
|
|
|
22
23
|
export type { ButtonProps, ButtonLinkProps, ButtonVariant, ButtonSize } from './components/Button';
|
|
23
24
|
export type { ButtonCardIcon, ButtonCardLinkProps, ButtonCardProps, ButtonCardSize, } from './components/ButtonCard';
|
|
24
25
|
export type { ColorSchemeProps, ColorSchemeValue } from './components/ColorScheme';
|
|
26
|
+
export type { ContentCardAppearance, ContentCardArticleProps, ContentCardDivProps, ContentCardElement, ContentCardHeadingLevel, ContentCardLiProps, ContentCardLogoBackground, ContentCardMediaKind, ContentCardMediaPosition, ContentCardMediaWidth, ContentCardProps, ContentCardSectionProps, } from './components/ContentCard';
|
|
25
27
|
export type { DrawerHeaderStyle, DrawerProps, DrawerSide, DrawerSize } from './components/Drawer';
|
|
26
28
|
export type { FooterAppLink, FooterAppLinks, FooterLanguage, FooterLink, FooterLinkMeta, FooterLinkProps, FooterMandatoryLink, FooterNavigationGroup, FooterOrganization, FooterProps, FooterRenderLink, FooterSocialLink, FooterSocialPlatform, FooterTopSectionGroup, FooterTopSectionLink, } from './components/Footer';
|
|
27
29
|
export type { HeroProps, HeroHeadingLevel, HeroCommonImageProps, HeroImageComponent, } from './components/Hero';
|
|
28
|
-
export type { MainNavigationItem, MainNavigationLink, MainNavigationOrganizationLink, MainNavigationPanel, MainNavigationProps, MainNavigationSubmenuColumn, } from './components/MainNavigation';
|
|
30
|
+
export type { MainNavigationItem, MainNavigationLanguageCode, MainNavigationLanguageLinkProps, MainNavigationLanguageOption, MainNavigationLink, MainNavigationOrganizationLink, MainNavigationPanel, MainNavigationProps, MainNavigationRenderLanguageLink, MainNavigationSubmenuColumn, } from './components/MainNavigation';
|
|
29
31
|
export type { NotificationProps, NotificationVariant } from './components/Notification';
|
|
30
32
|
export type { LabelProps, LabelVariant } from './components/Label';
|
|
31
33
|
export type { ModalHeaderStyle, ModalProps, ModalSize } from './components/Modal';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,7 @@ import { Breadcrumb } from "./components/Breadcrumb/Breadcrumb.js";
|
|
|
5
5
|
import { Button } from "./components/Button/Button.js";
|
|
6
6
|
import { ButtonCard } from "./components/ButtonCard/ButtonCard.js";
|
|
7
7
|
import { ColorScheme } from "./components/ColorScheme/ColorScheme.js";
|
|
8
|
+
import { ContentCard } from "./components/ContentCard/ContentCard.js";
|
|
8
9
|
import { Drawer } from "./components/Drawer/Drawer.js";
|
|
9
10
|
import { Footer } from "./components/Footer/Footer.js";
|
|
10
11
|
import { FunctionButton } from "./components/FunctionButton/FunctionButton.js";
|
|
@@ -26,6 +27,7 @@ export {
|
|
|
26
27
|
Button,
|
|
27
28
|
ButtonCard,
|
|
28
29
|
ColorScheme,
|
|
30
|
+
ContentCard,
|
|
29
31
|
Drawer,
|
|
30
32
|
Footer,
|
|
31
33
|
FunctionButton,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@layer dds-components {._elevationLow_dspr0_1 {
|
|
1
|
+
@layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._elevationLow_dspr0_1 {
|
|
2
2
|
--_elevation-style: var(--elevation-semantic-elevation-low-offset-x)
|
|
3
3
|
var(--elevation-semantic-elevation-low-offset-y)
|
|
4
4
|
var(--elevation-semantic-elevation-low-blur) var(--elevation-semantic-elevation-low-spread)
|
|
@@ -27,5 +27,4 @@
|
|
|
27
27
|
border: var(--borderwidth-semantic-xs) solid var(--color-semantic-border-neutral-base);
|
|
28
28
|
box-shadow: var(--_elevation-style);
|
|
29
29
|
border-radius: var(--radius-semantic-md);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
30
|
+
} }
|
|
@@ -1,16 +1,24 @@
|
|
|
1
|
-
@layer dds-components
|
|
1
|
+
@layer dds-base, dds-components;
|
|
2
|
+
@layer dds-components { @layer fallback, components; }
|
|
3
|
+
@layer dds-components.fallback{
|
|
4
|
+
._focusable_1be87_1:where(:focus, :focus-visible) {
|
|
5
|
+
border-radius: var(--radius-semantic-sm);
|
|
6
|
+
}
|
|
7
|
+
._focusableInset_1be87_33:where(:focus, :focus-visible) {
|
|
8
|
+
border-radius: var(--radius-semantic-sm);
|
|
9
|
+
} }
|
|
10
|
+
@layer dds-components.components{._focusable_1be87_1 {
|
|
2
11
|
/* Marker class for shared focus treatment */
|
|
3
12
|
}
|
|
4
13
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
14
|
+
/* Fallback radius: components that set their own border-radius always win.
|
|
15
|
+
The postcss layer-wrap plugin hoists @layer fallback below dds-components.components. */
|
|
8
16
|
|
|
9
|
-
.
|
|
17
|
+
._focusable_1be87_1:focus {
|
|
10
18
|
outline-color: transparent;
|
|
11
19
|
}
|
|
12
20
|
|
|
13
|
-
.
|
|
21
|
+
._focusable_1be87_1:focus-visible {
|
|
14
22
|
/* Transparent outline ensures a visible ring fallback in forced colors. */
|
|
15
23
|
outline: 2px solid transparent;
|
|
16
24
|
outline-offset: 2px;
|
|
@@ -20,25 +28,21 @@
|
|
|
20
28
|
}
|
|
21
29
|
|
|
22
30
|
@media (forced-colors: active) {
|
|
23
|
-
.
|
|
31
|
+
._focusable_1be87_1:focus-visible {
|
|
24
32
|
outline-color: Highlight;
|
|
25
33
|
box-shadow: none;
|
|
26
34
|
}
|
|
27
35
|
}
|
|
28
36
|
|
|
29
|
-
.
|
|
37
|
+
._focusableInset_1be87_33 {
|
|
30
38
|
/* Marker class for inset focus treatment (ring stays inside the element boundary) */
|
|
31
39
|
}
|
|
32
40
|
|
|
33
|
-
.
|
|
34
|
-
border-radius: var(--radius-semantic-sm);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
._focusableInset_bhneb_29:focus {
|
|
41
|
+
._focusableInset_1be87_33:focus {
|
|
38
42
|
outline-color: transparent;
|
|
39
43
|
}
|
|
40
44
|
|
|
41
|
-
.
|
|
45
|
+
._focusableInset_1be87_33:focus-visible {
|
|
42
46
|
outline: 2px solid transparent;
|
|
43
47
|
box-shadow:
|
|
44
48
|
inset 0 0 0 2px var(--color-semantic-utility-focus-strong),
|
|
@@ -46,34 +50,34 @@
|
|
|
46
50
|
}
|
|
47
51
|
|
|
48
52
|
@media (forced-colors: active) {
|
|
49
|
-
.
|
|
53
|
+
._focusableInset_1be87_33:focus-visible {
|
|
50
54
|
outline-color: Highlight;
|
|
51
55
|
box-shadow: none;
|
|
52
56
|
}
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
@scope ([data-color-scheme='dark']) to ([data-color-scheme='light']) {
|
|
56
|
-
.
|
|
60
|
+
._focusable_1be87_1:focus-visible {
|
|
57
61
|
box-shadow:
|
|
58
62
|
0 0 0 2px var(--color-semantic-utility-focus-strong),
|
|
59
63
|
0 0 0 4px var(--color-semantic-utility-focus-soft);
|
|
60
64
|
}
|
|
61
65
|
|
|
62
|
-
.
|
|
66
|
+
._focusableInset_1be87_33:focus-visible {
|
|
63
67
|
box-shadow:
|
|
64
68
|
inset 0 0 0 2px var(--color-semantic-utility-focus-soft),
|
|
65
69
|
inset 0 0 0 4px var(--color-semantic-utility-focus-strong);
|
|
66
70
|
}
|
|
67
71
|
|
|
68
72
|
@media (forced-colors: active) {
|
|
69
|
-
.
|
|
70
|
-
.
|
|
73
|
+
._focusable_1be87_1:focus-visible,
|
|
74
|
+
._focusableInset_1be87_33:focus-visible {
|
|
71
75
|
box-shadow: none;
|
|
72
76
|
}
|
|
73
77
|
}
|
|
74
78
|
}
|
|
75
79
|
|
|
76
|
-
.
|
|
80
|
+
._focusClipGuard_1be87_82 {
|
|
77
81
|
/*
|
|
78
82
|
* Prevents focus rings from being clipped when the container uses overflow: hidden.
|
|
79
83
|
*
|
|
@@ -84,5 +88,4 @@
|
|
|
84
88
|
--focus-clip-guard-bleed-inline: var(--spacing-space-4);
|
|
85
89
|
margin-inline: calc(var(--focus-clip-guard-bleed-inline) * -1);
|
|
86
90
|
padding-inline: var(--focus-clip-guard-bleed-inline);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
91
|
+
} }
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
require('./focus.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
4
|
-
const focusable = "
|
|
5
|
-
const focusableInset = "
|
|
6
|
-
const focusClipGuard = "
|
|
4
|
+
const focusable = "_focusable_1be87_1";
|
|
5
|
+
const focusableInset = "_focusableInset_1be87_33";
|
|
6
|
+
const focusClipGuard = "_focusClipGuard_1be87_82";
|
|
7
7
|
const focusStyles = {
|
|
8
8
|
focusable,
|
|
9
9
|
focusableInset,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import './focus.css';
|
|
2
|
-
const focusable = "
|
|
3
|
-
const focusableInset = "
|
|
4
|
-
const focusClipGuard = "
|
|
2
|
+
const focusable = "_focusable_1be87_1";
|
|
3
|
+
const focusableInset = "_focusableInset_1be87_33";
|
|
4
|
+
const focusClipGuard = "_focusClipGuard_1be87_82";
|
|
5
5
|
const focusStyles = {
|
|
6
6
|
focusable,
|
|
7
7
|
focusableInset,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@layer dds-components {._overlayStrong_1w2h3_1::before,
|
|
1
|
+
@layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._overlayStrong_1w2h3_1::before,
|
|
2
2
|
._overlaySoft_1w2h3_2::before {
|
|
3
3
|
content: '';
|
|
4
4
|
position: fixed;
|
|
@@ -33,5 +33,4 @@
|
|
|
33
33
|
|
|
34
34
|
._overlaySoft_1w2h3_2::before {
|
|
35
35
|
background: var(--color-semantic-utility-overlay-soft);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
36
|
+
} }
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@layer dds-components {._underlineLink_15fbp_1 {
|
|
1
|
+
@layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._underlineLink_15fbp_1 {
|
|
2
2
|
text-decoration: underline;
|
|
3
3
|
text-underline-offset: 0.2em;
|
|
4
4
|
text-decoration-skip-ink: auto;
|
|
@@ -11,5 +11,4 @@
|
|
|
11
11
|
text-underline-offset: 0.2em;
|
|
12
12
|
text-decoration-skip-ink: auto;
|
|
13
13
|
text-decoration-thickness: from-font;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
14
|
+
} }
|
package/dist/styles.css
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
@layer dds-base, dds-components;
|
|
3
|
+
/* Establish top-level layer priority before anything else so the base prelude
|
|
4
|
+
and component chunks agree on order regardless of which loads first in a
|
|
5
|
+
chunked runtime (e.g. Next.js + Turbopack). CSS registers layer priority by
|
|
6
|
+
first appearance, so declaring both names here keeps dds-base < dds-components
|
|
7
|
+
deterministic. A layer-name statement is permitted before @import. */
|
|
8
|
+
@layer dds-base{
|
|
2
9
|
|
|
3
10
|
/**
|
|
4
11
|
* Do not edit directly, this file was auto-generated.
|
|
@@ -161,8 +168,7 @@
|
|
|
161
168
|
--elevation-semantic-elevation-high-spread: 0px;
|
|
162
169
|
}
|
|
163
170
|
}
|
|
164
|
-
|
|
165
|
-
@layer dds-base {
|
|
171
|
+
@layer dds-base{
|
|
166
172
|
|
|
167
173
|
/* ==========================================================================
|
|
168
174
|
Extended typography tokens (hand-authored, CSS only)
|
|
@@ -261,8 +267,7 @@
|
|
|
261
267
|
var(--typography-font-family-text-with-fallback);
|
|
262
268
|
}
|
|
263
269
|
}
|
|
264
|
-
|
|
265
|
-
@layer dds-base {
|
|
270
|
+
@layer dds-base{
|
|
266
271
|
|
|
267
272
|
*,
|
|
268
273
|
*::before,
|
|
@@ -303,8 +308,7 @@ video {
|
|
|
303
308
|
max-width: 100%;
|
|
304
309
|
}
|
|
305
310
|
}
|
|
306
|
-
|
|
307
|
-
@layer dds-base {
|
|
311
|
+
@layer dds-base{
|
|
308
312
|
|
|
309
313
|
/* ==========================================================================
|
|
310
314
|
Base typography styles
|
|
@@ -480,3 +484,9 @@ ol {
|
|
|
480
484
|
}
|
|
481
485
|
}
|
|
482
486
|
}
|
|
487
|
+
/* Sublayer order within dds-components: fallback declarations (e.g. the shared
|
|
488
|
+
focus-ring radius) sit below component styles so components always override
|
|
489
|
+
them, regardless of stylesheet load order. */
|
|
490
|
+
@layer dds-components {
|
|
491
|
+
@layer fallback, components;
|
|
492
|
+
}
|