@nypl/design-system-react-components 1.0.7 → 1.0.8
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 +21 -0
- package/dist/components/Accordion/Accordion.d.ts +5 -0
- package/dist/components/Image/Image.d.ts +3 -3
- package/dist/components/StyleGuide/ColorCard.d.ts +22 -18
- package/dist/components/Template/Template.d.ts +14 -4
- package/dist/design-system-react-components.cjs.development.js +388 -234
- package/dist/design-system-react-components.cjs.development.js.map +1 -1
- package/dist/design-system-react-components.cjs.production.min.js +1 -1
- package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
- package/dist/design-system-react-components.esm.js +388 -234
- package/dist/design-system-react-components.esm.js.map +1 -1
- package/dist/hooks/useNYPLTheme.d.ts +1 -0
- package/dist/styles.css +1 -1
- package/dist/theme/components/skipNavigation.d.ts +2 -2
- package/dist/theme/components/template.d.ts +32 -57
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { chakra, useStyleConfig, Icon as Icon$2, Box, Accordion as Accordion$2, AccordionPanel, AccordionItem, AccordionButton, Breadcrumb as Breadcrumb$1, BreadcrumbItem, BreadcrumbLink, Button as Button$2, useMediaQuery, Stack, Heading as Heading$2, useMultiStyleConfig, useMergeRefs, LinkBox, LinkOverlay, Text as Text$2, Checkbox as Checkbox$2, CheckboxGroup as CheckboxGroup$2, SimpleGrid as SimpleGrid$1, TableCaption, Thead, Tr, Th, Table as Table$1, Tbody, Td, Input, Textarea, extendTheme, ChakraProvider, useDisclosure, Modal, ModalOverlay, ModalContent, ModalHeader, ModalCloseButton, ModalBody, ModalFooter, CircularProgress, CircularProgressLabel, Progress, Radio as Radio$2, RadioGroup as RadioGroup$2, Select as Select$2, Skeleton as Skeleton$1, RangeSlider, RangeSliderTrack, RangeSliderFilledTrack, RangeSliderThumb, Slider as Slider$1, SliderTrack, SliderFilledTrack, SliderThumb, Tabs as Tabs$1, Tab, TabPanel, TabList, TabPanels, Switch as Switch$1
|
|
1
|
+
import { chakra, useStyleConfig, Icon as Icon$2, Box, Accordion as Accordion$2, AccordionPanel, AccordionItem, AccordionButton, Breadcrumb as Breadcrumb$1, BreadcrumbItem, BreadcrumbLink, Button as Button$2, useMediaQuery, Stack, Heading as Heading$2, useMultiStyleConfig, useMergeRefs, LinkBox, LinkOverlay, Text as Text$2, Checkbox as Checkbox$2, CheckboxGroup as CheckboxGroup$2, SimpleGrid as SimpleGrid$1, TableCaption, Thead, Tr, Th, Table as Table$1, Tbody, Td, useTheme, Input, Textarea, extendTheme, ChakraProvider, useDisclosure, Modal, ModalOverlay, ModalContent, ModalHeader, ModalCloseButton, ModalBody, ModalFooter, CircularProgress, CircularProgressLabel, Progress, Radio as Radio$2, RadioGroup as RadioGroup$2, Select as Select$2, Skeleton as Skeleton$1, RangeSlider, RangeSliderTrack, RangeSliderFilledTrack, RangeSliderThumb, Slider as Slider$1, SliderTrack, SliderFilledTrack, SliderThumb, Tabs as Tabs$1, Tab, TabPanel, TabList, TabPanels, Switch as Switch$1 } from '@chakra-ui/react';
|
|
2
2
|
export { Box, Center, Circle, ColorModeScript, Flex, Grid, GridItem, HStack, Spacer, Square, Stack, Tab, TabList, TabPanel, TabPanels, VStack, cookieStorageManager, localStorageManager, useColorMode, useColorModeValue } from '@chakra-ui/react';
|
|
3
3
|
import React__default, { createElement, forwardRef, useState, useEffect, Fragment, useRef } from 'react';
|
|
4
4
|
import useNativeLazyLoading from '@charlietango/use-native-lazy-loading';
|
|
@@ -1720,7 +1720,7 @@ var Icon = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
1720
1720
|
}
|
|
1721
1721
|
});
|
|
1722
1722
|
|
|
1723
|
-
var _excluded$R = ["accordionData", "id", "isDefaultOpen"];
|
|
1723
|
+
var _excluded$R = ["accordionData", "id", "isDefaultOpen", "panelMaxHeight"];
|
|
1724
1724
|
/**
|
|
1725
1725
|
* Get the minus or plus icon depending on whether the accordion
|
|
1726
1726
|
* is open or closed.
|
|
@@ -1745,7 +1745,7 @@ var getIcon = function getIcon(isExpanded, index, id) {
|
|
|
1745
1745
|
*/
|
|
1746
1746
|
|
|
1747
1747
|
|
|
1748
|
-
var getElementsFromData = function getElementsFromData(data, id) {
|
|
1748
|
+
var getElementsFromData = function getElementsFromData(data, id, panelMaxHeight) {
|
|
1749
1749
|
var _data, _data2;
|
|
1750
1750
|
|
|
1751
1751
|
if (data === void 0) {
|
|
@@ -1768,10 +1768,14 @@ var getElementsFromData = function getElementsFromData(data, id) {
|
|
|
1768
1768
|
key: index,
|
|
1769
1769
|
dangerouslySetInnerHTML: {
|
|
1770
1770
|
__html: content.panel
|
|
1771
|
-
}
|
|
1771
|
+
},
|
|
1772
|
+
maxHeight: panelMaxHeight,
|
|
1773
|
+
overflow: "auto"
|
|
1772
1774
|
}) : React__default.createElement(AccordionPanel, {
|
|
1773
1775
|
id: id + "-panel-" + index,
|
|
1774
|
-
key: index
|
|
1776
|
+
key: index,
|
|
1777
|
+
maxHeight: panelMaxHeight,
|
|
1778
|
+
overflow: "auto"
|
|
1775
1779
|
}, content.panel);
|
|
1776
1780
|
return React__default.createElement(AccordionItem, {
|
|
1777
1781
|
id: id + "-item-" + index,
|
|
@@ -1796,7 +1800,7 @@ var getElementsFromData = function getElementsFromData(data, id) {
|
|
|
1796
1800
|
flex: "1",
|
|
1797
1801
|
fontSize: multipleFontSize,
|
|
1798
1802
|
textAlign: "left"
|
|
1799
|
-
}, content.label), getIcon(isExpanded, index, id)), panel);
|
|
1803
|
+
}, content.label), getIcon(isExpanded, index, id)), isExpanded && panel);
|
|
1800
1804
|
});
|
|
1801
1805
|
});
|
|
1802
1806
|
};
|
|
@@ -1811,6 +1815,7 @@ var Accordion = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, re
|
|
|
1811
1815
|
id = props.id,
|
|
1812
1816
|
_props$isDefaultOpen = props.isDefaultOpen,
|
|
1813
1817
|
isDefaultOpen = _props$isDefaultOpen === void 0 ? false : _props$isDefaultOpen,
|
|
1818
|
+
panelMaxHeight = props.panelMaxHeight,
|
|
1814
1819
|
rest = _objectWithoutPropertiesLoose(props, _excluded$R); // Pass `0` to open the first accordion in the 0-index based array.
|
|
1815
1820
|
|
|
1816
1821
|
|
|
@@ -1820,7 +1825,7 @@ var Accordion = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, re
|
|
|
1820
1825
|
defaultIndex: openFirstAccordion,
|
|
1821
1826
|
id: id,
|
|
1822
1827
|
ref: ref
|
|
1823
|
-
}, rest), getElementsFromData(accordionData, id));
|
|
1828
|
+
}, rest), getElementsFromData(accordionData, id, panelMaxHeight));
|
|
1824
1829
|
}));
|
|
1825
1830
|
|
|
1826
1831
|
var _excluded$S = ["breadcrumbsData", "breadcrumbsType", "className", "id"];
|
|
@@ -2352,19 +2357,19 @@ var Image = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
2352
2357
|
loading: isLazy ? "lazy" : undefined
|
|
2353
2358
|
}, srcProp, {
|
|
2354
2359
|
__css: _extends({}, styles.img, additionalImageStyles)
|
|
2355
|
-
}));
|
|
2360
|
+
}, rest));
|
|
2356
2361
|
var finalImage = useImageWrapper ? React__default.createElement(ImageWrapper, Object.assign({
|
|
2357
2362
|
additionalWrapperStyles: additionalWrapperStyles,
|
|
2358
2363
|
aspectRatio: aspectRatio,
|
|
2359
2364
|
className: className,
|
|
2360
2365
|
size: size
|
|
2361
2366
|
}, caption || credit ? {} : rest), imageComponent) : imageComponent;
|
|
2362
|
-
return React__default.createElement(Box,
|
|
2367
|
+
return React__default.createElement(Box, {
|
|
2363
2368
|
ref: finalRefs
|
|
2364
|
-
},
|
|
2369
|
+
}, caption || credit ? React__default.createElement(Box, {
|
|
2365
2370
|
as: "figure",
|
|
2366
2371
|
__css: _extends({}, styles.figure, additionalFigureStyles)
|
|
2367
|
-
},
|
|
2372
|
+
}, finalImage, React__default.createElement(Box, {
|
|
2368
2373
|
as: "figcaption",
|
|
2369
2374
|
__css: styles.figcaption
|
|
2370
2375
|
}, caption && React__default.createElement(Box, {
|
|
@@ -3305,14 +3310,119 @@ var Table = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
3305
3310
|
}, rest), tableCaption, columnHeadersElems, tableBodyElems());
|
|
3306
3311
|
}));
|
|
3307
3312
|
|
|
3313
|
+
/**
|
|
3314
|
+
* A custom hook that returns the Chakra-based NYPL theme object. This must be
|
|
3315
|
+
* used inside a component that is wrapped in the `DSProvider` component, so
|
|
3316
|
+
* that the theme object can be available to use.
|
|
3317
|
+
*/
|
|
3318
|
+
|
|
3319
|
+
function useNYPLTheme() {
|
|
3320
|
+
var theme = useTheme();
|
|
3321
|
+
|
|
3322
|
+
if (!theme || Object.keys(theme).length === 0) {
|
|
3323
|
+
console.warn("NYPL Reservoir useNYPLTheme: hook must be used inside of `<DSProvider />`.");
|
|
3324
|
+
return {};
|
|
3325
|
+
} // Chakra provides a lot of their own styles but
|
|
3326
|
+
// only NYPL styles should be exported.
|
|
3327
|
+
|
|
3328
|
+
|
|
3329
|
+
return {
|
|
3330
|
+
// base, sm, md, lg, xl, 2xl
|
|
3331
|
+
breakpoints: theme.breakpoints,
|
|
3332
|
+
colors: {
|
|
3333
|
+
// primary, secondary
|
|
3334
|
+
brand: theme.colors.brand,
|
|
3335
|
+
// dark mode colors:
|
|
3336
|
+
// ui.disabled, ui.error, ui.focus, ui.link,
|
|
3337
|
+
// ui.status, ui.success, ui.test, ui.warning,
|
|
3338
|
+
// ui.bg, ui.border, ui.typography
|
|
3339
|
+
dark: theme.colors.dark,
|
|
3340
|
+
// blogs, books-and-more, education, locations,
|
|
3341
|
+
// research, research-library, whats-on
|
|
3342
|
+
section: theme.colors.section,
|
|
3343
|
+
transparent: theme.colors.transparent,
|
|
3344
|
+
// black, white, gray, disabled, error, focus, link,
|
|
3345
|
+
// status, success, test, warning, bg, border, typography
|
|
3346
|
+
ui: theme.colors.ui
|
|
3347
|
+
},
|
|
3348
|
+
fontSizes: {
|
|
3349
|
+
"-3": theme.fontSizes["-3"],
|
|
3350
|
+
"-2": theme.fontSizes["-2"],
|
|
3351
|
+
"-1": theme.fontSizes["-1"],
|
|
3352
|
+
"0": theme.fontSizes["0"],
|
|
3353
|
+
"1": theme.fontSizes["1"],
|
|
3354
|
+
"2": theme.fontSizes["2"],
|
|
3355
|
+
"3": theme.fontSizes["3"],
|
|
3356
|
+
"4": theme.fontSizes["4"],
|
|
3357
|
+
// default
|
|
3358
|
+
breadcrumbs: theme.fontSizes.breadcrumbs,
|
|
3359
|
+
// default
|
|
3360
|
+
button: theme.fontSizes.button,
|
|
3361
|
+
// primary, secondary, tertiary, callout
|
|
3362
|
+
heading: theme.fontSizes.heading,
|
|
3363
|
+
// default
|
|
3364
|
+
helper: theme.fontSizes.helper,
|
|
3365
|
+
// default, secondary
|
|
3366
|
+
label: theme.fontSizes.label,
|
|
3367
|
+
// default, caption, tag, mini
|
|
3368
|
+
text: theme.fontSizes.text
|
|
3369
|
+
},
|
|
3370
|
+
fontWeights: {
|
|
3371
|
+
light: theme.fontWeights.light,
|
|
3372
|
+
regular: theme.fontWeights.regular,
|
|
3373
|
+
medium: theme.fontWeights.medium,
|
|
3374
|
+
bold: theme.fontWeights.bold,
|
|
3375
|
+
// default, lastChild
|
|
3376
|
+
breadcrumbs: theme.fontWeights.breadcrumbs,
|
|
3377
|
+
// default
|
|
3378
|
+
button: theme.fontWeights.button,
|
|
3379
|
+
// primary, secondary, tertiary, callout
|
|
3380
|
+
heading: theme.fontWeights.heading,
|
|
3381
|
+
// default
|
|
3382
|
+
helper: theme.fontWeights.helper,
|
|
3383
|
+
// default
|
|
3384
|
+
label: theme.fontWeights.label,
|
|
3385
|
+
// default, caption, tag, mini
|
|
3386
|
+
text: theme.fontWeights.text
|
|
3387
|
+
},
|
|
3388
|
+
fonts: {
|
|
3389
|
+
body: theme.fonts.body,
|
|
3390
|
+
heading: theme.fonts.heading
|
|
3391
|
+
},
|
|
3392
|
+
radii: theme.radii,
|
|
3393
|
+
space: {
|
|
3394
|
+
xxs: theme.space.xxs,
|
|
3395
|
+
xs: theme.space.xs,
|
|
3396
|
+
s: theme.space.s,
|
|
3397
|
+
m: theme.space.m,
|
|
3398
|
+
l: theme.space.l,
|
|
3399
|
+
xl: theme.space.xl,
|
|
3400
|
+
xxl: theme.space.xxl,
|
|
3401
|
+
xxxl: theme.space.xxxl
|
|
3402
|
+
}
|
|
3403
|
+
};
|
|
3404
|
+
}
|
|
3405
|
+
|
|
3308
3406
|
var DataTable = function DataTable(props) {
|
|
3309
|
-
var
|
|
3310
|
-
|
|
3311
|
-
_props$
|
|
3312
|
-
|
|
3407
|
+
var dataBgPageColor = props.dataBgPageColor,
|
|
3408
|
+
dataBgDefaultColor = props.dataBgDefaultColor,
|
|
3409
|
+
_props$dataBlackColor = props.dataBlackColor,
|
|
3410
|
+
dataBlackColor = _props$dataBlackColor === void 0 ? ["--", "--", "--"] : _props$dataBlackColor,
|
|
3411
|
+
dataHeadingColor = props.dataHeadingColor,
|
|
3412
|
+
dataBodyColor = props.dataBodyColor,
|
|
3413
|
+
_props$dataWhiteColor = props.dataWhiteColor,
|
|
3414
|
+
dataWhiteColor = _props$dataWhiteColor === void 0 ? ["--", "--", "--"] : _props$dataWhiteColor,
|
|
3313
3415
|
_props$textColor = props.textColor,
|
|
3314
3416
|
textColor = _props$textColor === void 0 ? "ui.white" : _props$textColor;
|
|
3315
3417
|
|
|
3418
|
+
var _useNYPLTheme = useNYPLTheme(),
|
|
3419
|
+
ui = _useNYPLTheme.colors.ui;
|
|
3420
|
+
|
|
3421
|
+
var grayxxxxDark = ui.gray["xxxx-dark"];
|
|
3422
|
+
var grayxxxDark = ui.gray["xxx-dark"];
|
|
3423
|
+
var grayLightCool = ui.gray["light-cool"];
|
|
3424
|
+
var grayMedium = ui.gray.medium;
|
|
3425
|
+
|
|
3316
3426
|
var SuccessIcon = function SuccessIcon() {
|
|
3317
3427
|
return createElement(Icon, {
|
|
3318
3428
|
color: textColor,
|
|
@@ -3325,24 +3435,44 @@ var DataTable = function DataTable(props) {
|
|
|
3325
3435
|
});
|
|
3326
3436
|
};
|
|
3327
3437
|
|
|
3328
|
-
var
|
|
3329
|
-
|
|
3330
|
-
|
|
3331
|
-
|
|
3332
|
-
|
|
3438
|
+
var successfulContrast = function successfulContrast(dataColor, textSize) {
|
|
3439
|
+
if (textSize === void 0) {
|
|
3440
|
+
textSize = "small";
|
|
3441
|
+
}
|
|
3442
|
+
|
|
3443
|
+
var dataTextIndex = textSize === "small" ? 1 : 2;
|
|
3444
|
+
return (dataColor[dataTextIndex] === "AA" || dataColor[dataTextIndex] === "AAA") && createElement(SuccessIcon, null);
|
|
3445
|
+
};
|
|
3446
|
+
|
|
3447
|
+
var columnHeaders = ["Color", "Ratio", "16px", "36px"]; // All color data have the following two rows.
|
|
3448
|
+
|
|
3449
|
+
var whiteSmallTextSuccess = successfulContrast(dataWhiteColor);
|
|
3450
|
+
var whiteLargeTextSuccess = successfulContrast(dataWhiteColor, "large");
|
|
3451
|
+
var blackSmallTextSuccess = successfulContrast(dataBlackColor);
|
|
3452
|
+
var blackLargeTextSuccess = successfulContrast(dataBlackColor, "large"); // The dark theme colors might have the following color contrast information.
|
|
3453
|
+
|
|
3454
|
+
var bgPageSmallTextSuccess = dataBgPageColor && successfulContrast(dataBgPageColor);
|
|
3455
|
+
var bgPageLargeTextSuccess = dataBgPageColor && successfulContrast(dataBgPageColor, "large");
|
|
3456
|
+
var bgDefaultSmallTextSuccess = dataBgDefaultColor && successfulContrast(dataBgDefaultColor);
|
|
3457
|
+
var bgDefaultLargeTextSuccess = dataBgDefaultColor && successfulContrast(dataBgDefaultColor, "large");
|
|
3458
|
+
var headingSmallTextSuccess = dataHeadingColor && successfulContrast(dataHeadingColor);
|
|
3459
|
+
var headingLargeTextSuccess = dataHeadingColor && successfulContrast(dataHeadingColor, "large");
|
|
3460
|
+
var textSmallTextSuccess = dataBodyColor && successfulContrast(dataBodyColor);
|
|
3461
|
+
var textLargeTextSuccess = dataBodyColor && successfulContrast(dataBodyColor, "large"); // All ColorCards have these two rows.
|
|
3462
|
+
|
|
3333
3463
|
var tableData = [[createElement("span", {
|
|
3334
3464
|
key: "colorUiWhite",
|
|
3335
3465
|
style: {
|
|
3336
3466
|
color: "white",
|
|
3337
3467
|
padding: 0
|
|
3338
3468
|
}
|
|
3339
|
-
}, "ui.white"),
|
|
3469
|
+
}, "ui.white"), dataWhiteColor[0] + ":1", createElement(Fragment, null, dataWhiteColor[1], whiteSmallTextSuccess), createElement(Fragment, null, dataWhiteColor[2], whiteLargeTextSuccess)], [createElement("span", {
|
|
3340
3470
|
key: "colorUiBlack",
|
|
3341
3471
|
style: {
|
|
3342
3472
|
color: "black",
|
|
3343
3473
|
padding: 0
|
|
3344
3474
|
}
|
|
3345
|
-
}, "ui.black"),
|
|
3475
|
+
}, "ui.black"), dataBlackColor[0] + ":1", createElement(Fragment, null, dataBlackColor[1], blackSmallTextSuccess), createElement(Fragment, null, dataBlackColor[2], blackLargeTextSuccess)]];
|
|
3346
3476
|
var cellStyles = {
|
|
3347
3477
|
borderColor: textColor === "ui.white" ? "white !important" : "black !important",
|
|
3348
3478
|
fontWeight: "medium",
|
|
@@ -3364,7 +3494,48 @@ var DataTable = function DataTable(props) {
|
|
|
3364
3494
|
fontSize: "text.tag"
|
|
3365
3495
|
}, cellStyles)
|
|
3366
3496
|
}
|
|
3367
|
-
};
|
|
3497
|
+
}; // For dark mode `ColorCard`s, there are four extra rows.
|
|
3498
|
+
|
|
3499
|
+
if (dataBgPageColor && dataBgPageColor.length > 0) {
|
|
3500
|
+
tableData.push([createElement("span", {
|
|
3501
|
+
key: "colorBgPage",
|
|
3502
|
+
style: {
|
|
3503
|
+
color: grayxxxxDark,
|
|
3504
|
+
padding: 0
|
|
3505
|
+
}
|
|
3506
|
+
}, "bg page"), dataBgPageColor[0] + ":1", createElement(Fragment, null, dataBgPageColor[1], bgPageSmallTextSuccess), createElement(Fragment, null, dataBgPageColor[2], bgPageLargeTextSuccess)]);
|
|
3507
|
+
}
|
|
3508
|
+
|
|
3509
|
+
if (dataBgDefaultColor && dataBgDefaultColor.length > 0) {
|
|
3510
|
+
tableData.push([createElement("span", {
|
|
3511
|
+
key: "colorBgDefault",
|
|
3512
|
+
style: {
|
|
3513
|
+
color: grayxxxDark,
|
|
3514
|
+
padding: 0
|
|
3515
|
+
}
|
|
3516
|
+
}, "bg default"), dataBgDefaultColor[0] + ":1", createElement(Fragment, null, dataBgDefaultColor[1], bgDefaultSmallTextSuccess), createElement(Fragment, null, dataBgDefaultColor[2], bgDefaultLargeTextSuccess)]);
|
|
3517
|
+
}
|
|
3518
|
+
|
|
3519
|
+
if (dataHeadingColor && dataHeadingColor.length > 0) {
|
|
3520
|
+
tableData.push([createElement("span", {
|
|
3521
|
+
key: "colorHeading",
|
|
3522
|
+
style: {
|
|
3523
|
+
color: grayLightCool,
|
|
3524
|
+
padding: 0
|
|
3525
|
+
}
|
|
3526
|
+
}, "heading"), dataHeadingColor[0] + ":1", createElement(Fragment, null, dataHeadingColor[1], headingSmallTextSuccess), createElement(Fragment, null, dataHeadingColor[2], headingLargeTextSuccess)]);
|
|
3527
|
+
}
|
|
3528
|
+
|
|
3529
|
+
if (dataBodyColor && dataBodyColor.length > 0) {
|
|
3530
|
+
tableData.push([createElement("span", {
|
|
3531
|
+
key: "colorText",
|
|
3532
|
+
style: {
|
|
3533
|
+
color: grayMedium,
|
|
3534
|
+
padding: 0
|
|
3535
|
+
}
|
|
3536
|
+
}, "body"), dataBodyColor[0] + ":1", createElement(Fragment, null, dataBodyColor[1], textSmallTextSuccess), createElement(Fragment, null, dataBodyColor[2], textLargeTextSuccess)]);
|
|
3537
|
+
}
|
|
3538
|
+
|
|
3368
3539
|
return createElement(Table, {
|
|
3369
3540
|
columnHeaders: columnHeaders,
|
|
3370
3541
|
showRowDividers: true,
|
|
@@ -3375,13 +3546,17 @@ var DataTable = function DataTable(props) {
|
|
|
3375
3546
|
};
|
|
3376
3547
|
var ColorCard = function ColorCard(props) {
|
|
3377
3548
|
var backgroundColor = props.backgroundColor,
|
|
3549
|
+
dataBgPageColor = props.dataBgPageColor,
|
|
3550
|
+
dataBgDefaultColor = props.dataBgDefaultColor,
|
|
3378
3551
|
_props$colorName = props.colorName,
|
|
3379
3552
|
colorName = _props$colorName === void 0 ? "" : _props$colorName,
|
|
3380
3553
|
colorSource = props.colorSource,
|
|
3381
|
-
_props$
|
|
3382
|
-
|
|
3383
|
-
|
|
3384
|
-
|
|
3554
|
+
_props$dataBlackColor2 = props.dataBlackColor,
|
|
3555
|
+
dataBlackColor = _props$dataBlackColor2 === void 0 ? ["--", "--", "--"] : _props$dataBlackColor2,
|
|
3556
|
+
dataHeadingColor = props.dataHeadingColor,
|
|
3557
|
+
dataBodyColor = props.dataBodyColor,
|
|
3558
|
+
_props$dataWhiteColor2 = props.dataWhiteColor,
|
|
3559
|
+
dataWhiteColor = _props$dataWhiteColor2 === void 0 ? ["--", "--", "--"] : _props$dataWhiteColor2,
|
|
3385
3560
|
_props$textColor2 = props.textColor,
|
|
3386
3561
|
textColor = _props$textColor2 === void 0 ? "ui.white" : _props$textColor2;
|
|
3387
3562
|
var cssVarName = "--nypl-colors-" + colorName.replace(/\./g, "-");
|
|
@@ -3406,9 +3581,13 @@ var ColorCard = function ColorCard(props) {
|
|
|
3406
3581
|
fontWeight: "medium",
|
|
3407
3582
|
noSpace: true,
|
|
3408
3583
|
size: "tag"
|
|
3409
|
-
}, "
|
|
3410
|
-
|
|
3411
|
-
|
|
3584
|
+
}, "Source: ", colorSource)), createElement(DataTable, {
|
|
3585
|
+
dataBgPageColor: dataBgPageColor,
|
|
3586
|
+
dataBgDefaultColor: dataBgDefaultColor,
|
|
3587
|
+
dataBlackColor: dataBlackColor,
|
|
3588
|
+
dataHeadingColor: dataHeadingColor,
|
|
3589
|
+
dataBodyColor: dataBodyColor,
|
|
3590
|
+
dataWhiteColor: dataWhiteColor,
|
|
3412
3591
|
textColor: textColor
|
|
3413
3592
|
})));
|
|
3414
3593
|
};
|
|
@@ -4171,21 +4350,32 @@ var breakpoints = /*#__PURE__*/createBreakpoints({
|
|
|
4171
4350
|
* All colors can be found in Storybook:
|
|
4172
4351
|
* https://nypl.github.io/nypl-design-system/reservoir/v1/?path=/docs/style-guide-colors--page
|
|
4173
4352
|
*
|
|
4174
|
-
* All UI colors can be found in Figma:
|
|
4353
|
+
* All UI Fills colors can be found in Figma:
|
|
4175
4354
|
* https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=47083%3A27674
|
|
4176
4355
|
*
|
|
4177
|
-
* All Brand colors can be found in Figma:
|
|
4356
|
+
* All Brand Fills colors can be found in Figma:
|
|
4178
4357
|
* https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=15454%3A47007
|
|
4179
4358
|
*
|
|
4359
|
+
* All Dark Mode UI Fills colors can be found in Figma:
|
|
4360
|
+
* https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=61991%3A45315
|
|
4361
|
+
*
|
|
4180
4362
|
* At the end of this file, there are objects that extend Chakra's default
|
|
4181
4363
|
* color shade palette for individual colors. WE DO NOT RECOMMEND to use them
|
|
4182
4364
|
* and only recommend to use the colors defined by the Design System such as the
|
|
4183
4365
|
* following "ui", "brand", and "section" colors below.
|
|
4184
4366
|
*/
|
|
4185
4367
|
// Reusable variables:
|
|
4368
|
+
var black = "#000";
|
|
4369
|
+
var white = "#fff";
|
|
4370
|
+
var grayDark = "#616161";
|
|
4371
|
+
var grayxxxxDark = "#121212";
|
|
4372
|
+
var grayxxxDark = "#191919";
|
|
4373
|
+
var grayxxDark = "#212121";
|
|
4374
|
+
var grayxDark = "#424242";
|
|
4375
|
+
var grayMedium = "#BDBDBD";
|
|
4186
4376
|
var grayLightCool = "#E9E9E9";
|
|
4377
|
+
var grayxLightCool = "#F5F5F5";
|
|
4187
4378
|
var grayxxLightCool = "#FAFAFA";
|
|
4188
|
-
var grayMedium = "#BDBDBD";
|
|
4189
4379
|
var brandPrimary = "#C60917";
|
|
4190
4380
|
var brandSecondary = "#760000";
|
|
4191
4381
|
var brandObj = {
|
|
@@ -4196,8 +4386,8 @@ var colors = {
|
|
|
4196
4386
|
transparent: "transparent",
|
|
4197
4387
|
// ui fills
|
|
4198
4388
|
ui: {
|
|
4199
|
-
black:
|
|
4200
|
-
white:
|
|
4389
|
+
black: black,
|
|
4390
|
+
white: white,
|
|
4201
4391
|
/// State and link utilities
|
|
4202
4392
|
disabled: {
|
|
4203
4393
|
primary: grayLightCool,
|
|
@@ -4225,18 +4415,81 @@ var colors = {
|
|
|
4225
4415
|
primary: "#F0974E",
|
|
4226
4416
|
secondary: "#EC7B1F"
|
|
4227
4417
|
},
|
|
4418
|
+
// Semantic colors
|
|
4419
|
+
bg: {
|
|
4420
|
+
"default": grayxLightCool,
|
|
4421
|
+
hover: grayLightCool,
|
|
4422
|
+
active: grayMedium
|
|
4423
|
+
},
|
|
4424
|
+
border: {
|
|
4425
|
+
"default": grayMedium,
|
|
4426
|
+
hover: grayDark
|
|
4427
|
+
},
|
|
4428
|
+
typography: {
|
|
4429
|
+
heading: black,
|
|
4430
|
+
body: black
|
|
4431
|
+
},
|
|
4228
4432
|
// Grayscale
|
|
4229
4433
|
gray: {
|
|
4230
|
-
"
|
|
4231
|
-
"
|
|
4232
|
-
|
|
4233
|
-
dark:
|
|
4434
|
+
"xxxx-dark": grayxxxxDark,
|
|
4435
|
+
"xxx-dark": grayxxxDark,
|
|
4436
|
+
"xx-dark": grayxxDark,
|
|
4437
|
+
"x-dark": grayxDark,
|
|
4438
|
+
dark: grayDark,
|
|
4234
4439
|
medium: grayMedium,
|
|
4235
4440
|
"light-cool": grayLightCool,
|
|
4441
|
+
"x-light-cool": grayxLightCool,
|
|
4442
|
+
"xx-light-cool": grayxxLightCool,
|
|
4443
|
+
// Gray Alts
|
|
4236
4444
|
"light-warm": "#EFEDEB",
|
|
4237
|
-
"x-light-
|
|
4238
|
-
|
|
4239
|
-
|
|
4445
|
+
"x-light-warm": "#F8F8F7"
|
|
4446
|
+
}
|
|
4447
|
+
},
|
|
4448
|
+
// dark mode ui fills
|
|
4449
|
+
dark: {
|
|
4450
|
+
ui: {
|
|
4451
|
+
/// State and link utilities
|
|
4452
|
+
disabled: {
|
|
4453
|
+
primary: grayxDark,
|
|
4454
|
+
secondary: grayxxDark
|
|
4455
|
+
},
|
|
4456
|
+
error: {
|
|
4457
|
+
primary: "#E1454C",
|
|
4458
|
+
secondary: "#F67C82"
|
|
4459
|
+
},
|
|
4460
|
+
focus: "#5181D4",
|
|
4461
|
+
link: {
|
|
4462
|
+
primary: "#2085D8",
|
|
4463
|
+
secondary: "#50A0E1"
|
|
4464
|
+
},
|
|
4465
|
+
status: {
|
|
4466
|
+
primary: "#6F6544",
|
|
4467
|
+
secondary: "#6F6765"
|
|
4468
|
+
},
|
|
4469
|
+
success: {
|
|
4470
|
+
primary: "#0E3B15",
|
|
4471
|
+
secondary: "#0F2912"
|
|
4472
|
+
},
|
|
4473
|
+
test: "#592B22",
|
|
4474
|
+
warning: {
|
|
4475
|
+
primary: "#493320",
|
|
4476
|
+
secondary: "#482C15"
|
|
4477
|
+
},
|
|
4478
|
+
// Semantic colors
|
|
4479
|
+
bg: {
|
|
4480
|
+
page: grayxxxxDark,
|
|
4481
|
+
"default": grayxxxDark,
|
|
4482
|
+
hover: grayxxDark,
|
|
4483
|
+
active: grayxDark
|
|
4484
|
+
},
|
|
4485
|
+
border: {
|
|
4486
|
+
"default": grayxDark,
|
|
4487
|
+
hover: grayMedium
|
|
4488
|
+
},
|
|
4489
|
+
typography: {
|
|
4490
|
+
heading: grayLightCool,
|
|
4491
|
+
body: grayMedium
|
|
4492
|
+
}
|
|
4240
4493
|
}
|
|
4241
4494
|
},
|
|
4242
4495
|
|
|
@@ -4268,21 +4521,21 @@ var colors = {
|
|
|
4268
4521
|
|
|
4269
4522
|
/** Research is used for the Research Catalog and SCC. */
|
|
4270
4523
|
research: {
|
|
4271
|
-
primary: "#
|
|
4524
|
+
primary: "#00838A",
|
|
4272
4525
|
secondary: "#006166"
|
|
4273
4526
|
},
|
|
4274
4527
|
|
|
4275
4528
|
/** Research libraries with specific brand colors to adhere to. */
|
|
4276
4529
|
"research-library": {
|
|
4277
|
-
lpa: "#
|
|
4278
|
-
schomburg: "#
|
|
4530
|
+
lpa: "#005D53",
|
|
4531
|
+
schomburg: "#A03E31",
|
|
4279
4532
|
schwartzman: brandSecondary
|
|
4280
4533
|
},
|
|
4281
4534
|
|
|
4282
4535
|
/** What's On is used for Exhibitions & Events. */
|
|
4283
4536
|
"whats-on": {
|
|
4284
4537
|
primary: "#242424",
|
|
4285
|
-
secondary:
|
|
4538
|
+
secondary: black
|
|
4286
4539
|
}
|
|
4287
4540
|
},
|
|
4288
4541
|
|
|
@@ -6477,11 +6730,11 @@ var SkipNavigation = {
|
|
|
6477
6730
|
width: "1px",
|
|
6478
6731
|
// Only display when the user focuses on the links.
|
|
6479
6732
|
_focus: {
|
|
6480
|
-
border: "1px solid var(—nypl-colors-ui-gray-dark)",
|
|
6481
6733
|
height: "auto",
|
|
6482
|
-
left: "
|
|
6483
|
-
|
|
6484
|
-
|
|
6734
|
+
left: "1rem",
|
|
6735
|
+
paddingX: "inset.extranarrow",
|
|
6736
|
+
paddingY: "inset.extranarrow",
|
|
6737
|
+
top: "1rem",
|
|
6485
6738
|
width: "auto"
|
|
6486
6739
|
}
|
|
6487
6740
|
}
|
|
@@ -7073,87 +7326,72 @@ var CustomTabs = {
|
|
|
7073
7326
|
}
|
|
7074
7327
|
};
|
|
7075
7328
|
|
|
7076
|
-
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
marginEnd: "calc(-50vw + 50%)",
|
|
7080
|
-
marginStart: "calc(-50vw + 50%)"
|
|
7081
|
-
}; // From the `wrapper` SCSS mixin.
|
|
7082
|
-
// TODO: Eventually we may be able to put shared JS style objects
|
|
7083
|
-
// into a utils file for other mixins that are shared.
|
|
7084
|
-
|
|
7085
|
-
var wrapperStyles$1 = {
|
|
7086
|
-
marginY: 0,
|
|
7087
|
-
marginX: "auto",
|
|
7088
|
-
maxWidth: "1280px",
|
|
7089
|
-
paddingTop: 0,
|
|
7090
|
-
paddingBottom: 0,
|
|
7091
|
-
paddingEnd: "s",
|
|
7092
|
-
paddingStart: "s",
|
|
7093
|
-
width: "100%"
|
|
7094
|
-
};
|
|
7329
|
+
/**
|
|
7330
|
+
* Grid layout based on https://www.joshwcomeau.com/css/full-bleed/
|
|
7331
|
+
*/
|
|
7095
7332
|
var Template = {
|
|
7096
7333
|
baseStyle: {
|
|
7097
7334
|
boxSizing: "border-box",
|
|
7098
7335
|
color: "ui.black",
|
|
7099
|
-
|
|
7100
|
-
|
|
7101
|
-
|
|
7102
|
-
"*": {
|
|
7103
|
-
boxSizing: "inherit"
|
|
7104
|
-
},
|
|
7105
|
-
"*::after": {
|
|
7106
|
-
boxSizing: "inherit"
|
|
7107
|
-
},
|
|
7108
|
-
"*::before": {
|
|
7109
|
-
boxSizing: "inherit"
|
|
7110
|
-
}
|
|
7336
|
+
display: "grid",
|
|
7337
|
+
gridTemplateColumns: "\n 1fr\n min(1280px, 100%)\n 1fr",
|
|
7338
|
+
rowGap: "grid.l"
|
|
7111
7339
|
},
|
|
7112
7340
|
sizes: {},
|
|
7113
7341
|
defaultProps: {}
|
|
7114
|
-
};
|
|
7115
|
-
|
|
7342
|
+
}; // Elements that need to breakout will span outside
|
|
7343
|
+
// the center 1280px grid column.
|
|
7344
|
+
|
|
7345
|
+
var TemplateBreakout = {
|
|
7116
7346
|
baseStyle: {
|
|
7117
|
-
|
|
7347
|
+
width: "100%",
|
|
7348
|
+
// This could be "1 / 4" and it would mean the same. This is
|
|
7349
|
+
// "future-proof" the grid column assignment to the last column.
|
|
7350
|
+
gridColumn: "1 / -1"
|
|
7118
7351
|
}
|
|
7119
7352
|
};
|
|
7120
|
-
var TemplateBreakout = {
|
|
7121
|
-
baseStyle: /*#__PURE__*/_extends({}, breakout, {
|
|
7122
|
-
width: "100vw",
|
|
7123
|
-
marginBottom: "page.hstack"
|
|
7124
|
-
})
|
|
7125
|
-
};
|
|
7126
7353
|
var TemplateContent = {
|
|
7127
|
-
baseStyle:
|
|
7128
|
-
|
|
7129
|
-
|
|
7130
|
-
|
|
7354
|
+
baseStyle: {
|
|
7355
|
+
// Set this element to start on the second 1280px grid column.
|
|
7356
|
+
gridColumn: "2",
|
|
7357
|
+
// But this element also contains its own grid system within.
|
|
7358
|
+
display: "grid",
|
|
7359
|
+
gridTemplateColumns: "1fr",
|
|
7360
|
+
paddingY: 0,
|
|
7361
|
+
paddingX: "s",
|
|
7362
|
+
gap: "grid.l"
|
|
7363
|
+
},
|
|
7364
|
+
// With left or right sidebars, we need to set two grid columns and
|
|
7365
|
+
// the column for the sidebar is max 255px width.
|
|
7131
7366
|
variants: {
|
|
7132
|
-
|
|
7133
|
-
|
|
7134
|
-
|
|
7135
|
-
|
|
7136
|
-
|
|
7367
|
+
left: {
|
|
7368
|
+
gridTemplateColumns: {
|
|
7369
|
+
md: "255px 1fr"
|
|
7370
|
+
}
|
|
7371
|
+
},
|
|
7372
|
+
right: {
|
|
7373
|
+
gridTemplateColumns: {
|
|
7374
|
+
md: "1fr 255px"
|
|
7137
7375
|
}
|
|
7138
7376
|
}
|
|
7139
7377
|
}
|
|
7140
7378
|
};
|
|
7141
|
-
var
|
|
7379
|
+
var TemplateContentTopBottom = {
|
|
7142
7380
|
baseStyle: {
|
|
7143
|
-
|
|
7144
|
-
|
|
7381
|
+
gridColumn: {
|
|
7382
|
+
base: "1",
|
|
7383
|
+
md: "1 / span 2"
|
|
7384
|
+
},
|
|
7385
|
+
height: "100%"
|
|
7145
7386
|
}
|
|
7146
7387
|
};
|
|
7147
7388
|
var TemplateContentPrimary = {
|
|
7148
|
-
baseStyle: {
|
|
7149
|
-
flex: "1 1",
|
|
7150
|
-
marginBottom: "page.hstack"
|
|
7151
|
-
},
|
|
7152
7389
|
variants: {
|
|
7153
7390
|
left: {
|
|
7154
|
-
|
|
7155
|
-
|
|
7156
|
-
|
|
7391
|
+
gridColumn: {
|
|
7392
|
+
base: "1",
|
|
7393
|
+
md: "2"
|
|
7394
|
+
},
|
|
7157
7395
|
marginEnd: {
|
|
7158
7396
|
md: 0
|
|
7159
7397
|
},
|
|
@@ -7164,37 +7402,23 @@ var TemplateContentPrimary = {
|
|
|
7164
7402
|
}
|
|
7165
7403
|
};
|
|
7166
7404
|
var TemplateContentSidebar = {
|
|
7167
|
-
baseStyle: {
|
|
7168
|
-
flex: {
|
|
7169
|
-
base: "0 0 auto",
|
|
7170
|
-
md: "0 0 255px"
|
|
7171
|
-
},
|
|
7172
|
-
order: {
|
|
7173
|
-
md: "page.vstack"
|
|
7174
|
-
},
|
|
7175
|
-
marginBottom: "page.hstack"
|
|
7176
|
-
},
|
|
7177
7405
|
variants: {
|
|
7178
7406
|
left: {
|
|
7179
|
-
|
|
7180
|
-
base: 0,
|
|
7181
|
-
md: "page.vstack"
|
|
7182
|
-
}
|
|
7407
|
+
gridColumn: "1"
|
|
7183
7408
|
},
|
|
7184
7409
|
right: {
|
|
7185
|
-
|
|
7186
|
-
base:
|
|
7187
|
-
md: "
|
|
7410
|
+
gridColumn: {
|
|
7411
|
+
base: "1",
|
|
7412
|
+
md: "2"
|
|
7188
7413
|
}
|
|
7189
7414
|
}
|
|
7190
7415
|
}
|
|
7191
7416
|
};
|
|
7192
7417
|
var TemplateStyles = {
|
|
7193
7418
|
Template: Template,
|
|
7194
|
-
TemplateHeader: TemplateHeader,
|
|
7195
7419
|
TemplateBreakout: TemplateBreakout,
|
|
7196
7420
|
TemplateContent: TemplateContent,
|
|
7197
|
-
|
|
7421
|
+
TemplateContentTopBottom: TemplateContentTopBottom,
|
|
7198
7422
|
TemplateContentPrimary: TemplateContentPrimary,
|
|
7199
7423
|
TemplateContentSidebar: TemplateContentSidebar
|
|
7200
7424
|
};
|
|
@@ -12043,7 +12267,7 @@ var Tabs = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
12043
12267
|
}, React__default.createElement(Box, Object.assign({}, carouselStyle), tabs)), nextButton), panels);
|
|
12044
12268
|
})); // Tabs is also exported above so the props can display in Storybook.
|
|
12045
12269
|
|
|
12046
|
-
var _excluded$29 = ["aboveHeader", "breakout", "contentId", "contentPrimary", "contentSidebar", "contentTop", "footer", "header", "sidebar", "renderFooterElement", "renderHeaderElement", "renderSkipNavigation"];
|
|
12270
|
+
var _excluded$29 = ["aboveHeader", "breakout", "contentId", "contentBottom", "contentPrimary", "contentSidebar", "contentTop", "footer", "header", "sidebar", "renderFooterElement", "renderHeaderElement", "renderSkipNavigation"];
|
|
12047
12271
|
/**
|
|
12048
12272
|
* The main top-level parent component that wraps all template-related
|
|
12049
12273
|
* components.
|
|
@@ -12080,11 +12304,11 @@ var TemplateAboveHeader = function TemplateAboveHeader(props) {
|
|
|
12080
12304
|
*/
|
|
12081
12305
|
|
|
12082
12306
|
|
|
12083
|
-
var TemplateHeader
|
|
12307
|
+
var TemplateHeader = function TemplateHeader(_ref) {
|
|
12084
12308
|
var children = _ref.children,
|
|
12085
12309
|
_ref$renderHeaderElem = _ref.renderHeaderElement,
|
|
12086
12310
|
renderHeaderElement = _ref$renderHeaderElem === void 0 ? true : _ref$renderHeaderElem;
|
|
12087
|
-
var styles = useStyleConfig("
|
|
12311
|
+
var styles = useStyleConfig("TemplateBreakout", {});
|
|
12088
12312
|
var headerElement = React__default.createElement(Box, {
|
|
12089
12313
|
__css: styles
|
|
12090
12314
|
}, children); // The user wants to render the `header` HTML element.
|
|
@@ -12108,9 +12332,10 @@ var TemplateHeader$1 = function TemplateHeader(_ref) {
|
|
|
12108
12332
|
return headerElement;
|
|
12109
12333
|
};
|
|
12110
12334
|
/**
|
|
12111
|
-
* This
|
|
12112
|
-
*
|
|
12113
|
-
*
|
|
12335
|
+
* This component should be used inside the `Template` component to contain both
|
|
12336
|
+
* the `TemplateAboveHeader` and `TemplateHeader` components. This is meant to
|
|
12337
|
+
* render its children from edge to edge and is most useful for the headers,
|
|
12338
|
+
* `Breadcrumbs`, and `Hero` components or other banner-like components.
|
|
12114
12339
|
*/
|
|
12115
12340
|
|
|
12116
12341
|
|
|
@@ -12139,7 +12364,7 @@ var TemplateContent$1 = function TemplateContent(props) {
|
|
|
12139
12364
|
_props$sidebar = props.sidebar,
|
|
12140
12365
|
sidebar = _props$sidebar === void 0 ? "none" : _props$sidebar;
|
|
12141
12366
|
var styles = useStyleConfig("TemplateContent", {
|
|
12142
|
-
variant: sidebar
|
|
12367
|
+
variant: sidebar
|
|
12143
12368
|
}); // Manually pass in the `sidebar` prop to the `TemplateContentPrimary` and
|
|
12144
12369
|
// `TemplateContentSidebar` components.
|
|
12145
12370
|
|
|
@@ -12169,8 +12394,22 @@ var TemplateContent$1 = function TemplateContent(props) {
|
|
|
12169
12394
|
*/
|
|
12170
12395
|
|
|
12171
12396
|
|
|
12172
|
-
var TemplateContentTop
|
|
12173
|
-
var styles = useStyleConfig("
|
|
12397
|
+
var TemplateContentTop = function TemplateContentTop(props) {
|
|
12398
|
+
var styles = useStyleConfig("TemplateContentTopBottom", {});
|
|
12399
|
+
return React__default.createElement(Box, {
|
|
12400
|
+
__css: styles
|
|
12401
|
+
}, props.children);
|
|
12402
|
+
};
|
|
12403
|
+
/**
|
|
12404
|
+
* This optional component must be used inside the `TemplateContent` component
|
|
12405
|
+
* and after the `TemplateContentPrimary` or `TemplateContentSidebar` component.
|
|
12406
|
+
* This renders content in the main width of the container and should always
|
|
12407
|
+
* render below the primary component and the sidebar component (if any).
|
|
12408
|
+
*/
|
|
12409
|
+
|
|
12410
|
+
|
|
12411
|
+
var TemplateContentBottom = function TemplateContentBottom(props) {
|
|
12412
|
+
var styles = useStyleConfig("TemplateContentTopBottom", {});
|
|
12174
12413
|
return React__default.createElement(Box, {
|
|
12175
12414
|
__css: styles
|
|
12176
12415
|
}, props.children);
|
|
@@ -12228,6 +12467,7 @@ var TemplateFooter = function TemplateFooter(_ref2) {
|
|
|
12228
12467
|
var children = _ref2.children,
|
|
12229
12468
|
_ref2$renderFooterEle = _ref2.renderFooterElement,
|
|
12230
12469
|
renderFooterElement = _ref2$renderFooterEle === void 0 ? true : _ref2$renderFooterEle;
|
|
12470
|
+
var styles = useStyleConfig("TemplateBreakout", {});
|
|
12231
12471
|
var footerElement = React__default.createElement(React__default.Fragment, null, children); // The user wants to render the `footer` HTML element.
|
|
12232
12472
|
|
|
12233
12473
|
if (renderFooterElement) {
|
|
@@ -12240,7 +12480,8 @@ var TemplateFooter = function TemplateFooter(_ref2) {
|
|
|
12240
12480
|
}
|
|
12241
12481
|
});
|
|
12242
12482
|
footerElement = React__default.createElement(Box, {
|
|
12243
|
-
as: "footer"
|
|
12483
|
+
as: "footer",
|
|
12484
|
+
__css: styles
|
|
12244
12485
|
}, children);
|
|
12245
12486
|
}
|
|
12246
12487
|
|
|
@@ -12260,6 +12501,7 @@ var TemplateAppContainer = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function
|
|
|
12260
12501
|
breakout = props.breakout,
|
|
12261
12502
|
_props$contentId = props.contentId,
|
|
12262
12503
|
contentId = _props$contentId === void 0 ? "mainContent" : _props$contentId,
|
|
12504
|
+
contentBottom = props.contentBottom,
|
|
12263
12505
|
contentPrimary = props.contentPrimary,
|
|
12264
12506
|
contentSidebar = props.contentSidebar,
|
|
12265
12507
|
contentTop = props.contentTop,
|
|
@@ -12276,20 +12518,20 @@ var TemplateAppContainer = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function
|
|
|
12276
12518
|
rest = _objectWithoutPropertiesLoose(props, _excluded$29);
|
|
12277
12519
|
|
|
12278
12520
|
var aboveHeaderElem = aboveHeader && React__default.createElement(TemplateAboveHeader, null, aboveHeader);
|
|
12279
|
-
var
|
|
12280
|
-
var contentTopElem = contentTop && React__default.createElement(TemplateContentTop$1, null, contentTop);
|
|
12521
|
+
var contentTopElem = contentTop && React__default.createElement(TemplateContentTop, null, contentTop);
|
|
12281
12522
|
var contentPrimaryElem = contentPrimary && React__default.createElement(TemplateContentPrimary$1, null, contentPrimary);
|
|
12523
|
+
var contentBottomElem = contentBottom && React__default.createElement(TemplateContentBottom, null, contentBottom);
|
|
12282
12524
|
var contentSidebarElem = contentSidebar && React__default.createElement(TemplateContentSidebar$1, null, contentSidebar);
|
|
12283
|
-
return React__default.createElement(Template$1, Object.assign({
|
|
12525
|
+
return React__default.createElement(React__default.Fragment, null, renderSkipNavigation ? React__default.createElement(SkipNavigation$1, null) : null, React__default.createElement(Template$1, Object.assign({
|
|
12284
12526
|
ref: ref
|
|
12285
|
-
}, rest),
|
|
12527
|
+
}, rest), React__default.createElement(TemplateBreakout$1, null, aboveHeaderElem, (header || breakout) && React__default.createElement(TemplateHeader, {
|
|
12286
12528
|
renderHeaderElement: renderHeaderElement
|
|
12287
|
-
}, header,
|
|
12529
|
+
}, header, breakout)), React__default.createElement(TemplateContent$1, {
|
|
12288
12530
|
id: contentId,
|
|
12289
12531
|
sidebar: sidebar
|
|
12290
|
-
}, contentTopElem, sidebar === "left" && contentSidebarElem, contentPrimaryElem, sidebar === "right" && contentSidebarElem), footer && React__default.createElement(TemplateFooter, {
|
|
12532
|
+
}, contentTopElem, sidebar === "left" && contentSidebarElem, contentPrimaryElem, sidebar === "right" && contentSidebarElem, contentBottomElem), footer && React__default.createElement(TemplateFooter, {
|
|
12291
12533
|
renderFooterElement: renderFooterElement
|
|
12292
|
-
}, footer));
|
|
12534
|
+
}, footer)));
|
|
12293
12535
|
}));
|
|
12294
12536
|
|
|
12295
12537
|
var _excluded$2a = ["defaultChecked", "helperText", "id", "invalidText", "isChecked", "isDisabled", "isInvalid", "isRequired", "labelText", "name", "onChange", "size"];
|
|
@@ -12368,94 +12610,6 @@ var Toggle$2 = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, ref
|
|
|
12368
12610
|
}), labelText)));
|
|
12369
12611
|
}));
|
|
12370
12612
|
|
|
12371
|
-
/**
|
|
12372
|
-
* A custom hook that returns the Chakra-based NYPL theme object. This must be
|
|
12373
|
-
* used inside a component that is wrapped in the `DSProvider` component, so
|
|
12374
|
-
* that the theme object can be available to use.
|
|
12375
|
-
*/
|
|
12376
|
-
|
|
12377
|
-
function useNYPLTheme() {
|
|
12378
|
-
var theme = useTheme();
|
|
12379
|
-
|
|
12380
|
-
if (!theme || Object.keys(theme).length === 0) {
|
|
12381
|
-
console.warn("NYPL Reservoir useNYPLTheme: hook must be used inside of `<DSProvider />`.");
|
|
12382
|
-
return {};
|
|
12383
|
-
} // Chakra provides a lot of their own styles but
|
|
12384
|
-
// only NYPL styles should be exported.
|
|
12385
|
-
|
|
12386
|
-
|
|
12387
|
-
return {
|
|
12388
|
-
// base, sm, md, lg, xl, 2xl
|
|
12389
|
-
breakpoints: theme.breakpoints,
|
|
12390
|
-
colors: {
|
|
12391
|
-
// primary, secondary
|
|
12392
|
-
brand: theme.colors.brand,
|
|
12393
|
-
// blogs, books-and-more, education, locations,
|
|
12394
|
-
// research, research-library, whats-on
|
|
12395
|
-
section: theme.colors.section,
|
|
12396
|
-
transparent: theme.colors.transparent,
|
|
12397
|
-
// black, disabled, error, focus, gray, link,
|
|
12398
|
-
// status, success, test, warning, white
|
|
12399
|
-
ui: theme.colors.ui
|
|
12400
|
-
},
|
|
12401
|
-
fontSizes: {
|
|
12402
|
-
"-3": theme.fontSizes["-3"],
|
|
12403
|
-
"-2": theme.fontSizes["-2"],
|
|
12404
|
-
"-1": theme.fontSizes["-1"],
|
|
12405
|
-
"0": theme.fontSizes["0"],
|
|
12406
|
-
"1": theme.fontSizes["1"],
|
|
12407
|
-
"2": theme.fontSizes["2"],
|
|
12408
|
-
"3": theme.fontSizes["3"],
|
|
12409
|
-
"4": theme.fontSizes["4"],
|
|
12410
|
-
// default
|
|
12411
|
-
breadcrumbs: theme.fontSizes.breadcrumbs,
|
|
12412
|
-
// default
|
|
12413
|
-
button: theme.fontSizes.button,
|
|
12414
|
-
// primary, secondary, tertiary, callout
|
|
12415
|
-
heading: theme.fontSizes.heading,
|
|
12416
|
-
// default
|
|
12417
|
-
helper: theme.fontSizes.helper,
|
|
12418
|
-
// default, secondary
|
|
12419
|
-
label: theme.fontSizes.label,
|
|
12420
|
-
// default, caption, tag, mini
|
|
12421
|
-
text: theme.fontSizes.text
|
|
12422
|
-
},
|
|
12423
|
-
fontWeights: {
|
|
12424
|
-
light: theme.fontWeights.light,
|
|
12425
|
-
regular: theme.fontWeights.regular,
|
|
12426
|
-
medium: theme.fontWeights.medium,
|
|
12427
|
-
bold: theme.fontWeights.bold,
|
|
12428
|
-
// default, lastChild
|
|
12429
|
-
breadcrumbs: theme.fontWeights.breadcrumbs,
|
|
12430
|
-
// default
|
|
12431
|
-
button: theme.fontWeights.button,
|
|
12432
|
-
// primary, secondary, tertiary, callout
|
|
12433
|
-
heading: theme.fontWeights.heading,
|
|
12434
|
-
// default
|
|
12435
|
-
helper: theme.fontWeights.helper,
|
|
12436
|
-
// default
|
|
12437
|
-
label: theme.fontWeights.label,
|
|
12438
|
-
// default, caption, tag, mini
|
|
12439
|
-
text: theme.fontWeights.text
|
|
12440
|
-
},
|
|
12441
|
-
fonts: {
|
|
12442
|
-
body: theme.fonts.body,
|
|
12443
|
-
heading: theme.fonts.heading
|
|
12444
|
-
},
|
|
12445
|
-
radii: theme.radii,
|
|
12446
|
-
space: {
|
|
12447
|
-
xxs: theme.space.xxs,
|
|
12448
|
-
xs: theme.space.xs,
|
|
12449
|
-
s: theme.space.s,
|
|
12450
|
-
m: theme.space.m,
|
|
12451
|
-
l: theme.space.l,
|
|
12452
|
-
xl: theme.space.xl,
|
|
12453
|
-
xxl: theme.space.xxl,
|
|
12454
|
-
xxxl: theme.space.xxxl
|
|
12455
|
-
}
|
|
12456
|
-
};
|
|
12457
|
-
}
|
|
12458
|
-
|
|
12459
12613
|
var _excluded$2b = ["aspectRatio", "className", "descriptionText", "embedCode", "headingText", "helperText", "id", "iframeTitle", "showHelperInvalidText", "videoId", "videoType"];
|
|
12460
12614
|
var VideoPlayer$1 = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
12461
12615
|
var aspectRatio = props.aspectRatio,
|
|
@@ -12540,5 +12694,5 @@ var VideoPlayer$1 = /*#__PURE__*/chakra( /*#__PURE__*/forwardRef(function (props
|
|
|
12540
12694
|
}, embedElement)));
|
|
12541
12695
|
}));
|
|
12542
12696
|
|
|
12543
|
-
export { Accordion, Breadcrumbs, Button, ButtonGroup, Card, CardActions, CardContent, CardHeading, Checkbox, CheckboxGroup, ColorCard, DSProvider, DatePicker, Fieldset, Form, FormField, FormRow, Heading, HelperErrorText, Hero$1 as Hero, HorizontalRule$1 as HorizontalRule, Icon, Image, Label, Link, List$1 as List, Logo$1 as Logo, ModalTrigger, Notification$1 as Notification, Pagination$1 as Pagination, ProgressIndicator$1 as ProgressIndicator, Radio$1 as Radio, RadioGroup$1 as RadioGroup, SearchBar$1 as SearchBar, Select$1 as Select, SimpleGrid, SkeletonLoader$1 as SkeletonLoader, SkipNavigation$1 as SkipNavigation, Slider, StatusBadge$1 as StatusBadge, StructuredContent$1 as StructuredContent, Table, Tabs, Template$1 as Template, TemplateAboveHeader, TemplateAppContainer, TemplateBreakout$1 as TemplateBreakout, TemplateContent$1 as TemplateContent, TemplateContentPrimary$1 as TemplateContentPrimary, TemplateContentSidebar$1 as TemplateContentSidebar, TemplateContentTop
|
|
12697
|
+
export { Accordion, Breadcrumbs, Button, ButtonGroup, Card, CardActions, CardContent, CardHeading, Checkbox, CheckboxGroup, ColorCard, DSProvider, DatePicker, Fieldset, Form, FormField, FormRow, Heading, HelperErrorText, Hero$1 as Hero, HorizontalRule$1 as HorizontalRule, Icon, Image, Label, Link, List$1 as List, Logo$1 as Logo, ModalTrigger, Notification$1 as Notification, Pagination$1 as Pagination, ProgressIndicator$1 as ProgressIndicator, Radio$1 as Radio, RadioGroup$1 as RadioGroup, SearchBar$1 as SearchBar, Select$1 as Select, SimpleGrid, SkeletonLoader$1 as SkeletonLoader, SkipNavigation$1 as SkipNavigation, Slider, StatusBadge$1 as StatusBadge, StructuredContent$1 as StructuredContent, Table, Tabs, Template$1 as Template, TemplateAboveHeader, TemplateAppContainer, TemplateBreakout$1 as TemplateBreakout, TemplateContent$1 as TemplateContent, TemplateContentPrimary$1 as TemplateContentPrimary, TemplateContentSidebar$1 as TemplateContentSidebar, TemplateContentTop, TemplateFooter, TemplateHeader, Text, TextInput, Toggle$2 as Toggle, VideoPlayer$1 as VideoPlayer, useCarouselStyles, useModal, useNYPLBreakpoints, useNYPLTheme, useWindowSize };
|
|
12544
12698
|
//# sourceMappingURL=design-system-react-components.esm.js.map
|