@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
|
@@ -1726,7 +1726,7 @@ var Icon = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(function (pr
|
|
|
1726
1726
|
}
|
|
1727
1727
|
});
|
|
1728
1728
|
|
|
1729
|
-
var _excluded$R = ["accordionData", "id", "isDefaultOpen"];
|
|
1729
|
+
var _excluded$R = ["accordionData", "id", "isDefaultOpen", "panelMaxHeight"];
|
|
1730
1730
|
/**
|
|
1731
1731
|
* Get the minus or plus icon depending on whether the accordion
|
|
1732
1732
|
* is open or closed.
|
|
@@ -1751,7 +1751,7 @@ var getIcon = function getIcon(isExpanded, index, id) {
|
|
|
1751
1751
|
*/
|
|
1752
1752
|
|
|
1753
1753
|
|
|
1754
|
-
var getElementsFromData = function getElementsFromData(data, id) {
|
|
1754
|
+
var getElementsFromData = function getElementsFromData(data, id, panelMaxHeight) {
|
|
1755
1755
|
var _data, _data2;
|
|
1756
1756
|
|
|
1757
1757
|
if (data === void 0) {
|
|
@@ -1774,10 +1774,14 @@ var getElementsFromData = function getElementsFromData(data, id) {
|
|
|
1774
1774
|
key: index,
|
|
1775
1775
|
dangerouslySetInnerHTML: {
|
|
1776
1776
|
__html: content.panel
|
|
1777
|
-
}
|
|
1777
|
+
},
|
|
1778
|
+
maxHeight: panelMaxHeight,
|
|
1779
|
+
overflow: "auto"
|
|
1778
1780
|
}) : React__default.createElement(react.AccordionPanel, {
|
|
1779
1781
|
id: id + "-panel-" + index,
|
|
1780
|
-
key: index
|
|
1782
|
+
key: index,
|
|
1783
|
+
maxHeight: panelMaxHeight,
|
|
1784
|
+
overflow: "auto"
|
|
1781
1785
|
}, content.panel);
|
|
1782
1786
|
return React__default.createElement(react.AccordionItem, {
|
|
1783
1787
|
id: id + "-item-" + index,
|
|
@@ -1802,7 +1806,7 @@ var getElementsFromData = function getElementsFromData(data, id) {
|
|
|
1802
1806
|
flex: "1",
|
|
1803
1807
|
fontSize: multipleFontSize,
|
|
1804
1808
|
textAlign: "left"
|
|
1805
|
-
}, content.label), getIcon(isExpanded, index, id)), panel);
|
|
1809
|
+
}, content.label), getIcon(isExpanded, index, id)), isExpanded && panel);
|
|
1806
1810
|
});
|
|
1807
1811
|
});
|
|
1808
1812
|
};
|
|
@@ -1817,6 +1821,7 @@ var Accordion = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(functio
|
|
|
1817
1821
|
id = props.id,
|
|
1818
1822
|
_props$isDefaultOpen = props.isDefaultOpen,
|
|
1819
1823
|
isDefaultOpen = _props$isDefaultOpen === void 0 ? false : _props$isDefaultOpen,
|
|
1824
|
+
panelMaxHeight = props.panelMaxHeight,
|
|
1820
1825
|
rest = _objectWithoutPropertiesLoose(props, _excluded$R); // Pass `0` to open the first accordion in the 0-index based array.
|
|
1821
1826
|
|
|
1822
1827
|
|
|
@@ -1826,7 +1831,7 @@ var Accordion = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(functio
|
|
|
1826
1831
|
defaultIndex: openFirstAccordion,
|
|
1827
1832
|
id: id,
|
|
1828
1833
|
ref: ref
|
|
1829
|
-
}, rest), getElementsFromData(accordionData, id));
|
|
1834
|
+
}, rest), getElementsFromData(accordionData, id, panelMaxHeight));
|
|
1830
1835
|
}));
|
|
1831
1836
|
|
|
1832
1837
|
var _excluded$S = ["breadcrumbsData", "breadcrumbsType", "className", "id"];
|
|
@@ -2358,19 +2363,19 @@ var Image = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(function (p
|
|
|
2358
2363
|
loading: isLazy ? "lazy" : undefined
|
|
2359
2364
|
}, srcProp, {
|
|
2360
2365
|
__css: _extends({}, styles.img, additionalImageStyles)
|
|
2361
|
-
}));
|
|
2366
|
+
}, rest));
|
|
2362
2367
|
var finalImage = useImageWrapper ? React__default.createElement(ImageWrapper, Object.assign({
|
|
2363
2368
|
additionalWrapperStyles: additionalWrapperStyles,
|
|
2364
2369
|
aspectRatio: aspectRatio,
|
|
2365
2370
|
className: className,
|
|
2366
2371
|
size: size
|
|
2367
2372
|
}, caption || credit ? {} : rest), imageComponent) : imageComponent;
|
|
2368
|
-
return React__default.createElement(react.Box,
|
|
2373
|
+
return React__default.createElement(react.Box, {
|
|
2369
2374
|
ref: finalRefs
|
|
2370
|
-
},
|
|
2375
|
+
}, caption || credit ? React__default.createElement(react.Box, {
|
|
2371
2376
|
as: "figure",
|
|
2372
2377
|
__css: _extends({}, styles.figure, additionalFigureStyles)
|
|
2373
|
-
},
|
|
2378
|
+
}, finalImage, React__default.createElement(react.Box, {
|
|
2374
2379
|
as: "figcaption",
|
|
2375
2380
|
__css: styles.figcaption
|
|
2376
2381
|
}, caption && React__default.createElement(react.Box, {
|
|
@@ -3311,14 +3316,119 @@ var Table = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(function (p
|
|
|
3311
3316
|
}, rest), tableCaption, columnHeadersElems, tableBodyElems());
|
|
3312
3317
|
}));
|
|
3313
3318
|
|
|
3319
|
+
/**
|
|
3320
|
+
* A custom hook that returns the Chakra-based NYPL theme object. This must be
|
|
3321
|
+
* used inside a component that is wrapped in the `DSProvider` component, so
|
|
3322
|
+
* that the theme object can be available to use.
|
|
3323
|
+
*/
|
|
3324
|
+
|
|
3325
|
+
function useNYPLTheme() {
|
|
3326
|
+
var theme = react.useTheme();
|
|
3327
|
+
|
|
3328
|
+
if (!theme || Object.keys(theme).length === 0) {
|
|
3329
|
+
console.warn("NYPL Reservoir useNYPLTheme: hook must be used inside of `<DSProvider />`.");
|
|
3330
|
+
return {};
|
|
3331
|
+
} // Chakra provides a lot of their own styles but
|
|
3332
|
+
// only NYPL styles should be exported.
|
|
3333
|
+
|
|
3334
|
+
|
|
3335
|
+
return {
|
|
3336
|
+
// base, sm, md, lg, xl, 2xl
|
|
3337
|
+
breakpoints: theme.breakpoints,
|
|
3338
|
+
colors: {
|
|
3339
|
+
// primary, secondary
|
|
3340
|
+
brand: theme.colors.brand,
|
|
3341
|
+
// dark mode colors:
|
|
3342
|
+
// ui.disabled, ui.error, ui.focus, ui.link,
|
|
3343
|
+
// ui.status, ui.success, ui.test, ui.warning,
|
|
3344
|
+
// ui.bg, ui.border, ui.typography
|
|
3345
|
+
dark: theme.colors.dark,
|
|
3346
|
+
// blogs, books-and-more, education, locations,
|
|
3347
|
+
// research, research-library, whats-on
|
|
3348
|
+
section: theme.colors.section,
|
|
3349
|
+
transparent: theme.colors.transparent,
|
|
3350
|
+
// black, white, gray, disabled, error, focus, link,
|
|
3351
|
+
// status, success, test, warning, bg, border, typography
|
|
3352
|
+
ui: theme.colors.ui
|
|
3353
|
+
},
|
|
3354
|
+
fontSizes: {
|
|
3355
|
+
"-3": theme.fontSizes["-3"],
|
|
3356
|
+
"-2": theme.fontSizes["-2"],
|
|
3357
|
+
"-1": theme.fontSizes["-1"],
|
|
3358
|
+
"0": theme.fontSizes["0"],
|
|
3359
|
+
"1": theme.fontSizes["1"],
|
|
3360
|
+
"2": theme.fontSizes["2"],
|
|
3361
|
+
"3": theme.fontSizes["3"],
|
|
3362
|
+
"4": theme.fontSizes["4"],
|
|
3363
|
+
// default
|
|
3364
|
+
breadcrumbs: theme.fontSizes.breadcrumbs,
|
|
3365
|
+
// default
|
|
3366
|
+
button: theme.fontSizes.button,
|
|
3367
|
+
// primary, secondary, tertiary, callout
|
|
3368
|
+
heading: theme.fontSizes.heading,
|
|
3369
|
+
// default
|
|
3370
|
+
helper: theme.fontSizes.helper,
|
|
3371
|
+
// default, secondary
|
|
3372
|
+
label: theme.fontSizes.label,
|
|
3373
|
+
// default, caption, tag, mini
|
|
3374
|
+
text: theme.fontSizes.text
|
|
3375
|
+
},
|
|
3376
|
+
fontWeights: {
|
|
3377
|
+
light: theme.fontWeights.light,
|
|
3378
|
+
regular: theme.fontWeights.regular,
|
|
3379
|
+
medium: theme.fontWeights.medium,
|
|
3380
|
+
bold: theme.fontWeights.bold,
|
|
3381
|
+
// default, lastChild
|
|
3382
|
+
breadcrumbs: theme.fontWeights.breadcrumbs,
|
|
3383
|
+
// default
|
|
3384
|
+
button: theme.fontWeights.button,
|
|
3385
|
+
// primary, secondary, tertiary, callout
|
|
3386
|
+
heading: theme.fontWeights.heading,
|
|
3387
|
+
// default
|
|
3388
|
+
helper: theme.fontWeights.helper,
|
|
3389
|
+
// default
|
|
3390
|
+
label: theme.fontWeights.label,
|
|
3391
|
+
// default, caption, tag, mini
|
|
3392
|
+
text: theme.fontWeights.text
|
|
3393
|
+
},
|
|
3394
|
+
fonts: {
|
|
3395
|
+
body: theme.fonts.body,
|
|
3396
|
+
heading: theme.fonts.heading
|
|
3397
|
+
},
|
|
3398
|
+
radii: theme.radii,
|
|
3399
|
+
space: {
|
|
3400
|
+
xxs: theme.space.xxs,
|
|
3401
|
+
xs: theme.space.xs,
|
|
3402
|
+
s: theme.space.s,
|
|
3403
|
+
m: theme.space.m,
|
|
3404
|
+
l: theme.space.l,
|
|
3405
|
+
xl: theme.space.xl,
|
|
3406
|
+
xxl: theme.space.xxl,
|
|
3407
|
+
xxxl: theme.space.xxxl
|
|
3408
|
+
}
|
|
3409
|
+
};
|
|
3410
|
+
}
|
|
3411
|
+
|
|
3314
3412
|
var DataTable = function DataTable(props) {
|
|
3315
|
-
var
|
|
3316
|
-
|
|
3317
|
-
_props$
|
|
3318
|
-
|
|
3413
|
+
var dataBgPageColor = props.dataBgPageColor,
|
|
3414
|
+
dataBgDefaultColor = props.dataBgDefaultColor,
|
|
3415
|
+
_props$dataBlackColor = props.dataBlackColor,
|
|
3416
|
+
dataBlackColor = _props$dataBlackColor === void 0 ? ["--", "--", "--"] : _props$dataBlackColor,
|
|
3417
|
+
dataHeadingColor = props.dataHeadingColor,
|
|
3418
|
+
dataBodyColor = props.dataBodyColor,
|
|
3419
|
+
_props$dataWhiteColor = props.dataWhiteColor,
|
|
3420
|
+
dataWhiteColor = _props$dataWhiteColor === void 0 ? ["--", "--", "--"] : _props$dataWhiteColor,
|
|
3319
3421
|
_props$textColor = props.textColor,
|
|
3320
3422
|
textColor = _props$textColor === void 0 ? "ui.white" : _props$textColor;
|
|
3321
3423
|
|
|
3424
|
+
var _useNYPLTheme = useNYPLTheme(),
|
|
3425
|
+
ui = _useNYPLTheme.colors.ui;
|
|
3426
|
+
|
|
3427
|
+
var grayxxxxDark = ui.gray["xxxx-dark"];
|
|
3428
|
+
var grayxxxDark = ui.gray["xxx-dark"];
|
|
3429
|
+
var grayLightCool = ui.gray["light-cool"];
|
|
3430
|
+
var grayMedium = ui.gray.medium;
|
|
3431
|
+
|
|
3322
3432
|
var SuccessIcon = function SuccessIcon() {
|
|
3323
3433
|
return React.createElement(Icon, {
|
|
3324
3434
|
color: textColor,
|
|
@@ -3331,24 +3441,44 @@ var DataTable = function DataTable(props) {
|
|
|
3331
3441
|
});
|
|
3332
3442
|
};
|
|
3333
3443
|
|
|
3334
|
-
var
|
|
3335
|
-
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
|
|
3444
|
+
var successfulContrast = function successfulContrast(dataColor, textSize) {
|
|
3445
|
+
if (textSize === void 0) {
|
|
3446
|
+
textSize = "small";
|
|
3447
|
+
}
|
|
3448
|
+
|
|
3449
|
+
var dataTextIndex = textSize === "small" ? 1 : 2;
|
|
3450
|
+
return (dataColor[dataTextIndex] === "AA" || dataColor[dataTextIndex] === "AAA") && React.createElement(SuccessIcon, null);
|
|
3451
|
+
};
|
|
3452
|
+
|
|
3453
|
+
var columnHeaders = ["Color", "Ratio", "16px", "36px"]; // All color data have the following two rows.
|
|
3454
|
+
|
|
3455
|
+
var whiteSmallTextSuccess = successfulContrast(dataWhiteColor);
|
|
3456
|
+
var whiteLargeTextSuccess = successfulContrast(dataWhiteColor, "large");
|
|
3457
|
+
var blackSmallTextSuccess = successfulContrast(dataBlackColor);
|
|
3458
|
+
var blackLargeTextSuccess = successfulContrast(dataBlackColor, "large"); // The dark theme colors might have the following color contrast information.
|
|
3459
|
+
|
|
3460
|
+
var bgPageSmallTextSuccess = dataBgPageColor && successfulContrast(dataBgPageColor);
|
|
3461
|
+
var bgPageLargeTextSuccess = dataBgPageColor && successfulContrast(dataBgPageColor, "large");
|
|
3462
|
+
var bgDefaultSmallTextSuccess = dataBgDefaultColor && successfulContrast(dataBgDefaultColor);
|
|
3463
|
+
var bgDefaultLargeTextSuccess = dataBgDefaultColor && successfulContrast(dataBgDefaultColor, "large");
|
|
3464
|
+
var headingSmallTextSuccess = dataHeadingColor && successfulContrast(dataHeadingColor);
|
|
3465
|
+
var headingLargeTextSuccess = dataHeadingColor && successfulContrast(dataHeadingColor, "large");
|
|
3466
|
+
var textSmallTextSuccess = dataBodyColor && successfulContrast(dataBodyColor);
|
|
3467
|
+
var textLargeTextSuccess = dataBodyColor && successfulContrast(dataBodyColor, "large"); // All ColorCards have these two rows.
|
|
3468
|
+
|
|
3339
3469
|
var tableData = [[React.createElement("span", {
|
|
3340
3470
|
key: "colorUiWhite",
|
|
3341
3471
|
style: {
|
|
3342
3472
|
color: "white",
|
|
3343
3473
|
padding: 0
|
|
3344
3474
|
}
|
|
3345
|
-
}, "ui.white"),
|
|
3475
|
+
}, "ui.white"), dataWhiteColor[0] + ":1", React.createElement(React.Fragment, null, dataWhiteColor[1], whiteSmallTextSuccess), React.createElement(React.Fragment, null, dataWhiteColor[2], whiteLargeTextSuccess)], [React.createElement("span", {
|
|
3346
3476
|
key: "colorUiBlack",
|
|
3347
3477
|
style: {
|
|
3348
3478
|
color: "black",
|
|
3349
3479
|
padding: 0
|
|
3350
3480
|
}
|
|
3351
|
-
}, "ui.black"),
|
|
3481
|
+
}, "ui.black"), dataBlackColor[0] + ":1", React.createElement(React.Fragment, null, dataBlackColor[1], blackSmallTextSuccess), React.createElement(React.Fragment, null, dataBlackColor[2], blackLargeTextSuccess)]];
|
|
3352
3482
|
var cellStyles = {
|
|
3353
3483
|
borderColor: textColor === "ui.white" ? "white !important" : "black !important",
|
|
3354
3484
|
fontWeight: "medium",
|
|
@@ -3370,7 +3500,48 @@ var DataTable = function DataTable(props) {
|
|
|
3370
3500
|
fontSize: "text.tag"
|
|
3371
3501
|
}, cellStyles)
|
|
3372
3502
|
}
|
|
3373
|
-
};
|
|
3503
|
+
}; // For dark mode `ColorCard`s, there are four extra rows.
|
|
3504
|
+
|
|
3505
|
+
if (dataBgPageColor && dataBgPageColor.length > 0) {
|
|
3506
|
+
tableData.push([React.createElement("span", {
|
|
3507
|
+
key: "colorBgPage",
|
|
3508
|
+
style: {
|
|
3509
|
+
color: grayxxxxDark,
|
|
3510
|
+
padding: 0
|
|
3511
|
+
}
|
|
3512
|
+
}, "bg page"), dataBgPageColor[0] + ":1", React.createElement(React.Fragment, null, dataBgPageColor[1], bgPageSmallTextSuccess), React.createElement(React.Fragment, null, dataBgPageColor[2], bgPageLargeTextSuccess)]);
|
|
3513
|
+
}
|
|
3514
|
+
|
|
3515
|
+
if (dataBgDefaultColor && dataBgDefaultColor.length > 0) {
|
|
3516
|
+
tableData.push([React.createElement("span", {
|
|
3517
|
+
key: "colorBgDefault",
|
|
3518
|
+
style: {
|
|
3519
|
+
color: grayxxxDark,
|
|
3520
|
+
padding: 0
|
|
3521
|
+
}
|
|
3522
|
+
}, "bg default"), dataBgDefaultColor[0] + ":1", React.createElement(React.Fragment, null, dataBgDefaultColor[1], bgDefaultSmallTextSuccess), React.createElement(React.Fragment, null, dataBgDefaultColor[2], bgDefaultLargeTextSuccess)]);
|
|
3523
|
+
}
|
|
3524
|
+
|
|
3525
|
+
if (dataHeadingColor && dataHeadingColor.length > 0) {
|
|
3526
|
+
tableData.push([React.createElement("span", {
|
|
3527
|
+
key: "colorHeading",
|
|
3528
|
+
style: {
|
|
3529
|
+
color: grayLightCool,
|
|
3530
|
+
padding: 0
|
|
3531
|
+
}
|
|
3532
|
+
}, "heading"), dataHeadingColor[0] + ":1", React.createElement(React.Fragment, null, dataHeadingColor[1], headingSmallTextSuccess), React.createElement(React.Fragment, null, dataHeadingColor[2], headingLargeTextSuccess)]);
|
|
3533
|
+
}
|
|
3534
|
+
|
|
3535
|
+
if (dataBodyColor && dataBodyColor.length > 0) {
|
|
3536
|
+
tableData.push([React.createElement("span", {
|
|
3537
|
+
key: "colorText",
|
|
3538
|
+
style: {
|
|
3539
|
+
color: grayMedium,
|
|
3540
|
+
padding: 0
|
|
3541
|
+
}
|
|
3542
|
+
}, "body"), dataBodyColor[0] + ":1", React.createElement(React.Fragment, null, dataBodyColor[1], textSmallTextSuccess), React.createElement(React.Fragment, null, dataBodyColor[2], textLargeTextSuccess)]);
|
|
3543
|
+
}
|
|
3544
|
+
|
|
3374
3545
|
return React.createElement(Table, {
|
|
3375
3546
|
columnHeaders: columnHeaders,
|
|
3376
3547
|
showRowDividers: true,
|
|
@@ -3381,13 +3552,17 @@ var DataTable = function DataTable(props) {
|
|
|
3381
3552
|
};
|
|
3382
3553
|
var ColorCard = function ColorCard(props) {
|
|
3383
3554
|
var backgroundColor = props.backgroundColor,
|
|
3555
|
+
dataBgPageColor = props.dataBgPageColor,
|
|
3556
|
+
dataBgDefaultColor = props.dataBgDefaultColor,
|
|
3384
3557
|
_props$colorName = props.colorName,
|
|
3385
3558
|
colorName = _props$colorName === void 0 ? "" : _props$colorName,
|
|
3386
3559
|
colorSource = props.colorSource,
|
|
3387
|
-
_props$
|
|
3388
|
-
|
|
3389
|
-
|
|
3390
|
-
|
|
3560
|
+
_props$dataBlackColor2 = props.dataBlackColor,
|
|
3561
|
+
dataBlackColor = _props$dataBlackColor2 === void 0 ? ["--", "--", "--"] : _props$dataBlackColor2,
|
|
3562
|
+
dataHeadingColor = props.dataHeadingColor,
|
|
3563
|
+
dataBodyColor = props.dataBodyColor,
|
|
3564
|
+
_props$dataWhiteColor2 = props.dataWhiteColor,
|
|
3565
|
+
dataWhiteColor = _props$dataWhiteColor2 === void 0 ? ["--", "--", "--"] : _props$dataWhiteColor2,
|
|
3391
3566
|
_props$textColor2 = props.textColor,
|
|
3392
3567
|
textColor = _props$textColor2 === void 0 ? "ui.white" : _props$textColor2;
|
|
3393
3568
|
var cssVarName = "--nypl-colors-" + colorName.replace(/\./g, "-");
|
|
@@ -3412,9 +3587,13 @@ var ColorCard = function ColorCard(props) {
|
|
|
3412
3587
|
fontWeight: "medium",
|
|
3413
3588
|
noSpace: true,
|
|
3414
3589
|
size: "tag"
|
|
3415
|
-
}, "
|
|
3416
|
-
|
|
3417
|
-
|
|
3590
|
+
}, "Source: ", colorSource)), React.createElement(DataTable, {
|
|
3591
|
+
dataBgPageColor: dataBgPageColor,
|
|
3592
|
+
dataBgDefaultColor: dataBgDefaultColor,
|
|
3593
|
+
dataBlackColor: dataBlackColor,
|
|
3594
|
+
dataHeadingColor: dataHeadingColor,
|
|
3595
|
+
dataBodyColor: dataBodyColor,
|
|
3596
|
+
dataWhiteColor: dataWhiteColor,
|
|
3418
3597
|
textColor: textColor
|
|
3419
3598
|
})));
|
|
3420
3599
|
};
|
|
@@ -4177,21 +4356,32 @@ var breakpoints = /*#__PURE__*/themeTools.createBreakpoints({
|
|
|
4177
4356
|
* All colors can be found in Storybook:
|
|
4178
4357
|
* https://nypl.github.io/nypl-design-system/reservoir/v1/?path=/docs/style-guide-colors--page
|
|
4179
4358
|
*
|
|
4180
|
-
* All UI colors can be found in Figma:
|
|
4359
|
+
* All UI Fills colors can be found in Figma:
|
|
4181
4360
|
* https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=47083%3A27674
|
|
4182
4361
|
*
|
|
4183
|
-
* All Brand colors can be found in Figma:
|
|
4362
|
+
* All Brand Fills colors can be found in Figma:
|
|
4184
4363
|
* https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=15454%3A47007
|
|
4185
4364
|
*
|
|
4365
|
+
* All Dark Mode UI Fills colors can be found in Figma:
|
|
4366
|
+
* https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=61991%3A45315
|
|
4367
|
+
*
|
|
4186
4368
|
* At the end of this file, there are objects that extend Chakra's default
|
|
4187
4369
|
* color shade palette for individual colors. WE DO NOT RECOMMEND to use them
|
|
4188
4370
|
* and only recommend to use the colors defined by the Design System such as the
|
|
4189
4371
|
* following "ui", "brand", and "section" colors below.
|
|
4190
4372
|
*/
|
|
4191
4373
|
// Reusable variables:
|
|
4374
|
+
var black = "#000";
|
|
4375
|
+
var white = "#fff";
|
|
4376
|
+
var grayDark = "#616161";
|
|
4377
|
+
var grayxxxxDark = "#121212";
|
|
4378
|
+
var grayxxxDark = "#191919";
|
|
4379
|
+
var grayxxDark = "#212121";
|
|
4380
|
+
var grayxDark = "#424242";
|
|
4381
|
+
var grayMedium = "#BDBDBD";
|
|
4192
4382
|
var grayLightCool = "#E9E9E9";
|
|
4383
|
+
var grayxLightCool = "#F5F5F5";
|
|
4193
4384
|
var grayxxLightCool = "#FAFAFA";
|
|
4194
|
-
var grayMedium = "#BDBDBD";
|
|
4195
4385
|
var brandPrimary = "#C60917";
|
|
4196
4386
|
var brandSecondary = "#760000";
|
|
4197
4387
|
var brandObj = {
|
|
@@ -4202,8 +4392,8 @@ var colors = {
|
|
|
4202
4392
|
transparent: "transparent",
|
|
4203
4393
|
// ui fills
|
|
4204
4394
|
ui: {
|
|
4205
|
-
black:
|
|
4206
|
-
white:
|
|
4395
|
+
black: black,
|
|
4396
|
+
white: white,
|
|
4207
4397
|
/// State and link utilities
|
|
4208
4398
|
disabled: {
|
|
4209
4399
|
primary: grayLightCool,
|
|
@@ -4231,18 +4421,81 @@ var colors = {
|
|
|
4231
4421
|
primary: "#F0974E",
|
|
4232
4422
|
secondary: "#EC7B1F"
|
|
4233
4423
|
},
|
|
4424
|
+
// Semantic colors
|
|
4425
|
+
bg: {
|
|
4426
|
+
"default": grayxLightCool,
|
|
4427
|
+
hover: grayLightCool,
|
|
4428
|
+
active: grayMedium
|
|
4429
|
+
},
|
|
4430
|
+
border: {
|
|
4431
|
+
"default": grayMedium,
|
|
4432
|
+
hover: grayDark
|
|
4433
|
+
},
|
|
4434
|
+
typography: {
|
|
4435
|
+
heading: black,
|
|
4436
|
+
body: black
|
|
4437
|
+
},
|
|
4234
4438
|
// Grayscale
|
|
4235
4439
|
gray: {
|
|
4236
|
-
"
|
|
4237
|
-
"
|
|
4238
|
-
|
|
4239
|
-
dark:
|
|
4440
|
+
"xxxx-dark": grayxxxxDark,
|
|
4441
|
+
"xxx-dark": grayxxxDark,
|
|
4442
|
+
"xx-dark": grayxxDark,
|
|
4443
|
+
"x-dark": grayxDark,
|
|
4444
|
+
dark: grayDark,
|
|
4240
4445
|
medium: grayMedium,
|
|
4241
4446
|
"light-cool": grayLightCool,
|
|
4447
|
+
"x-light-cool": grayxLightCool,
|
|
4448
|
+
"xx-light-cool": grayxxLightCool,
|
|
4449
|
+
// Gray Alts
|
|
4242
4450
|
"light-warm": "#EFEDEB",
|
|
4243
|
-
"x-light-
|
|
4244
|
-
|
|
4245
|
-
|
|
4451
|
+
"x-light-warm": "#F8F8F7"
|
|
4452
|
+
}
|
|
4453
|
+
},
|
|
4454
|
+
// dark mode ui fills
|
|
4455
|
+
dark: {
|
|
4456
|
+
ui: {
|
|
4457
|
+
/// State and link utilities
|
|
4458
|
+
disabled: {
|
|
4459
|
+
primary: grayxDark,
|
|
4460
|
+
secondary: grayxxDark
|
|
4461
|
+
},
|
|
4462
|
+
error: {
|
|
4463
|
+
primary: "#E1454C",
|
|
4464
|
+
secondary: "#F67C82"
|
|
4465
|
+
},
|
|
4466
|
+
focus: "#5181D4",
|
|
4467
|
+
link: {
|
|
4468
|
+
primary: "#2085D8",
|
|
4469
|
+
secondary: "#50A0E1"
|
|
4470
|
+
},
|
|
4471
|
+
status: {
|
|
4472
|
+
primary: "#6F6544",
|
|
4473
|
+
secondary: "#6F6765"
|
|
4474
|
+
},
|
|
4475
|
+
success: {
|
|
4476
|
+
primary: "#0E3B15",
|
|
4477
|
+
secondary: "#0F2912"
|
|
4478
|
+
},
|
|
4479
|
+
test: "#592B22",
|
|
4480
|
+
warning: {
|
|
4481
|
+
primary: "#493320",
|
|
4482
|
+
secondary: "#482C15"
|
|
4483
|
+
},
|
|
4484
|
+
// Semantic colors
|
|
4485
|
+
bg: {
|
|
4486
|
+
page: grayxxxxDark,
|
|
4487
|
+
"default": grayxxxDark,
|
|
4488
|
+
hover: grayxxDark,
|
|
4489
|
+
active: grayxDark
|
|
4490
|
+
},
|
|
4491
|
+
border: {
|
|
4492
|
+
"default": grayxDark,
|
|
4493
|
+
hover: grayMedium
|
|
4494
|
+
},
|
|
4495
|
+
typography: {
|
|
4496
|
+
heading: grayLightCool,
|
|
4497
|
+
body: grayMedium
|
|
4498
|
+
}
|
|
4246
4499
|
}
|
|
4247
4500
|
},
|
|
4248
4501
|
|
|
@@ -4274,21 +4527,21 @@ var colors = {
|
|
|
4274
4527
|
|
|
4275
4528
|
/** Research is used for the Research Catalog and SCC. */
|
|
4276
4529
|
research: {
|
|
4277
|
-
primary: "#
|
|
4530
|
+
primary: "#00838A",
|
|
4278
4531
|
secondary: "#006166"
|
|
4279
4532
|
},
|
|
4280
4533
|
|
|
4281
4534
|
/** Research libraries with specific brand colors to adhere to. */
|
|
4282
4535
|
"research-library": {
|
|
4283
|
-
lpa: "#
|
|
4284
|
-
schomburg: "#
|
|
4536
|
+
lpa: "#005D53",
|
|
4537
|
+
schomburg: "#A03E31",
|
|
4285
4538
|
schwartzman: brandSecondary
|
|
4286
4539
|
},
|
|
4287
4540
|
|
|
4288
4541
|
/** What's On is used for Exhibitions & Events. */
|
|
4289
4542
|
"whats-on": {
|
|
4290
4543
|
primary: "#242424",
|
|
4291
|
-
secondary:
|
|
4544
|
+
secondary: black
|
|
4292
4545
|
}
|
|
4293
4546
|
},
|
|
4294
4547
|
|
|
@@ -6483,11 +6736,11 @@ var SkipNavigation = {
|
|
|
6483
6736
|
width: "1px",
|
|
6484
6737
|
// Only display when the user focuses on the links.
|
|
6485
6738
|
_focus: {
|
|
6486
|
-
border: "1px solid var(—nypl-colors-ui-gray-dark)",
|
|
6487
6739
|
height: "auto",
|
|
6488
|
-
left: "
|
|
6489
|
-
|
|
6490
|
-
|
|
6740
|
+
left: "1rem",
|
|
6741
|
+
paddingX: "inset.extranarrow",
|
|
6742
|
+
paddingY: "inset.extranarrow",
|
|
6743
|
+
top: "1rem",
|
|
6491
6744
|
width: "auto"
|
|
6492
6745
|
}
|
|
6493
6746
|
}
|
|
@@ -7079,87 +7332,72 @@ var CustomTabs = {
|
|
|
7079
7332
|
}
|
|
7080
7333
|
};
|
|
7081
7334
|
|
|
7082
|
-
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
marginEnd: "calc(-50vw + 50%)",
|
|
7086
|
-
marginStart: "calc(-50vw + 50%)"
|
|
7087
|
-
}; // From the `wrapper` SCSS mixin.
|
|
7088
|
-
// TODO: Eventually we may be able to put shared JS style objects
|
|
7089
|
-
// into a utils file for other mixins that are shared.
|
|
7090
|
-
|
|
7091
|
-
var wrapperStyles$1 = {
|
|
7092
|
-
marginY: 0,
|
|
7093
|
-
marginX: "auto",
|
|
7094
|
-
maxWidth: "1280px",
|
|
7095
|
-
paddingTop: 0,
|
|
7096
|
-
paddingBottom: 0,
|
|
7097
|
-
paddingEnd: "s",
|
|
7098
|
-
paddingStart: "s",
|
|
7099
|
-
width: "100%"
|
|
7100
|
-
};
|
|
7335
|
+
/**
|
|
7336
|
+
* Grid layout based on https://www.joshwcomeau.com/css/full-bleed/
|
|
7337
|
+
*/
|
|
7101
7338
|
var Template = {
|
|
7102
7339
|
baseStyle: {
|
|
7103
7340
|
boxSizing: "border-box",
|
|
7104
7341
|
color: "ui.black",
|
|
7105
|
-
|
|
7106
|
-
|
|
7107
|
-
|
|
7108
|
-
"*": {
|
|
7109
|
-
boxSizing: "inherit"
|
|
7110
|
-
},
|
|
7111
|
-
"*::after": {
|
|
7112
|
-
boxSizing: "inherit"
|
|
7113
|
-
},
|
|
7114
|
-
"*::before": {
|
|
7115
|
-
boxSizing: "inherit"
|
|
7116
|
-
}
|
|
7342
|
+
display: "grid",
|
|
7343
|
+
gridTemplateColumns: "\n 1fr\n min(1280px, 100%)\n 1fr",
|
|
7344
|
+
rowGap: "grid.l"
|
|
7117
7345
|
},
|
|
7118
7346
|
sizes: {},
|
|
7119
7347
|
defaultProps: {}
|
|
7120
|
-
};
|
|
7121
|
-
|
|
7348
|
+
}; // Elements that need to breakout will span outside
|
|
7349
|
+
// the center 1280px grid column.
|
|
7350
|
+
|
|
7351
|
+
var TemplateBreakout = {
|
|
7122
7352
|
baseStyle: {
|
|
7123
|
-
|
|
7353
|
+
width: "100%",
|
|
7354
|
+
// This could be "1 / 4" and it would mean the same. This is
|
|
7355
|
+
// "future-proof" the grid column assignment to the last column.
|
|
7356
|
+
gridColumn: "1 / -1"
|
|
7124
7357
|
}
|
|
7125
7358
|
};
|
|
7126
|
-
var TemplateBreakout = {
|
|
7127
|
-
baseStyle: /*#__PURE__*/_extends({}, breakout, {
|
|
7128
|
-
width: "100vw",
|
|
7129
|
-
marginBottom: "page.hstack"
|
|
7130
|
-
})
|
|
7131
|
-
};
|
|
7132
7359
|
var TemplateContent = {
|
|
7133
|
-
baseStyle:
|
|
7134
|
-
|
|
7135
|
-
|
|
7136
|
-
|
|
7360
|
+
baseStyle: {
|
|
7361
|
+
// Set this element to start on the second 1280px grid column.
|
|
7362
|
+
gridColumn: "2",
|
|
7363
|
+
// But this element also contains its own grid system within.
|
|
7364
|
+
display: "grid",
|
|
7365
|
+
gridTemplateColumns: "1fr",
|
|
7366
|
+
paddingY: 0,
|
|
7367
|
+
paddingX: "s",
|
|
7368
|
+
gap: "grid.l"
|
|
7369
|
+
},
|
|
7370
|
+
// With left or right sidebars, we need to set two grid columns and
|
|
7371
|
+
// the column for the sidebar is max 255px width.
|
|
7137
7372
|
variants: {
|
|
7138
|
-
|
|
7139
|
-
|
|
7140
|
-
|
|
7141
|
-
|
|
7142
|
-
|
|
7373
|
+
left: {
|
|
7374
|
+
gridTemplateColumns: {
|
|
7375
|
+
md: "255px 1fr"
|
|
7376
|
+
}
|
|
7377
|
+
},
|
|
7378
|
+
right: {
|
|
7379
|
+
gridTemplateColumns: {
|
|
7380
|
+
md: "1fr 255px"
|
|
7143
7381
|
}
|
|
7144
7382
|
}
|
|
7145
7383
|
}
|
|
7146
7384
|
};
|
|
7147
|
-
var
|
|
7385
|
+
var TemplateContentTopBottom = {
|
|
7148
7386
|
baseStyle: {
|
|
7149
|
-
|
|
7150
|
-
|
|
7387
|
+
gridColumn: {
|
|
7388
|
+
base: "1",
|
|
7389
|
+
md: "1 / span 2"
|
|
7390
|
+
},
|
|
7391
|
+
height: "100%"
|
|
7151
7392
|
}
|
|
7152
7393
|
};
|
|
7153
7394
|
var TemplateContentPrimary = {
|
|
7154
|
-
baseStyle: {
|
|
7155
|
-
flex: "1 1",
|
|
7156
|
-
marginBottom: "page.hstack"
|
|
7157
|
-
},
|
|
7158
7395
|
variants: {
|
|
7159
7396
|
left: {
|
|
7160
|
-
|
|
7161
|
-
|
|
7162
|
-
|
|
7397
|
+
gridColumn: {
|
|
7398
|
+
base: "1",
|
|
7399
|
+
md: "2"
|
|
7400
|
+
},
|
|
7163
7401
|
marginEnd: {
|
|
7164
7402
|
md: 0
|
|
7165
7403
|
},
|
|
@@ -7170,37 +7408,23 @@ var TemplateContentPrimary = {
|
|
|
7170
7408
|
}
|
|
7171
7409
|
};
|
|
7172
7410
|
var TemplateContentSidebar = {
|
|
7173
|
-
baseStyle: {
|
|
7174
|
-
flex: {
|
|
7175
|
-
base: "0 0 auto",
|
|
7176
|
-
md: "0 0 255px"
|
|
7177
|
-
},
|
|
7178
|
-
order: {
|
|
7179
|
-
md: "page.vstack"
|
|
7180
|
-
},
|
|
7181
|
-
marginBottom: "page.hstack"
|
|
7182
|
-
},
|
|
7183
7411
|
variants: {
|
|
7184
7412
|
left: {
|
|
7185
|
-
|
|
7186
|
-
base: 0,
|
|
7187
|
-
md: "page.vstack"
|
|
7188
|
-
}
|
|
7413
|
+
gridColumn: "1"
|
|
7189
7414
|
},
|
|
7190
7415
|
right: {
|
|
7191
|
-
|
|
7192
|
-
base:
|
|
7193
|
-
md: "
|
|
7416
|
+
gridColumn: {
|
|
7417
|
+
base: "1",
|
|
7418
|
+
md: "2"
|
|
7194
7419
|
}
|
|
7195
7420
|
}
|
|
7196
7421
|
}
|
|
7197
7422
|
};
|
|
7198
7423
|
var TemplateStyles = {
|
|
7199
7424
|
Template: Template,
|
|
7200
|
-
TemplateHeader: TemplateHeader,
|
|
7201
7425
|
TemplateBreakout: TemplateBreakout,
|
|
7202
7426
|
TemplateContent: TemplateContent,
|
|
7203
|
-
|
|
7427
|
+
TemplateContentTopBottom: TemplateContentTopBottom,
|
|
7204
7428
|
TemplateContentPrimary: TemplateContentPrimary,
|
|
7205
7429
|
TemplateContentSidebar: TemplateContentSidebar
|
|
7206
7430
|
};
|
|
@@ -12049,7 +12273,7 @@ var Tabs = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(function (pr
|
|
|
12049
12273
|
}, React__default.createElement(react.Box, Object.assign({}, carouselStyle), tabs)), nextButton), panels);
|
|
12050
12274
|
})); // Tabs is also exported above so the props can display in Storybook.
|
|
12051
12275
|
|
|
12052
|
-
var _excluded$29 = ["aboveHeader", "breakout", "contentId", "contentPrimary", "contentSidebar", "contentTop", "footer", "header", "sidebar", "renderFooterElement", "renderHeaderElement", "renderSkipNavigation"];
|
|
12276
|
+
var _excluded$29 = ["aboveHeader", "breakout", "contentId", "contentBottom", "contentPrimary", "contentSidebar", "contentTop", "footer", "header", "sidebar", "renderFooterElement", "renderHeaderElement", "renderSkipNavigation"];
|
|
12053
12277
|
/**
|
|
12054
12278
|
* The main top-level parent component that wraps all template-related
|
|
12055
12279
|
* components.
|
|
@@ -12086,11 +12310,11 @@ var TemplateAboveHeader = function TemplateAboveHeader(props) {
|
|
|
12086
12310
|
*/
|
|
12087
12311
|
|
|
12088
12312
|
|
|
12089
|
-
var TemplateHeader
|
|
12313
|
+
var TemplateHeader = function TemplateHeader(_ref) {
|
|
12090
12314
|
var children = _ref.children,
|
|
12091
12315
|
_ref$renderHeaderElem = _ref.renderHeaderElement,
|
|
12092
12316
|
renderHeaderElement = _ref$renderHeaderElem === void 0 ? true : _ref$renderHeaderElem;
|
|
12093
|
-
var styles = react.useStyleConfig("
|
|
12317
|
+
var styles = react.useStyleConfig("TemplateBreakout", {});
|
|
12094
12318
|
var headerElement = React__default.createElement(react.Box, {
|
|
12095
12319
|
__css: styles
|
|
12096
12320
|
}, children); // The user wants to render the `header` HTML element.
|
|
@@ -12114,9 +12338,10 @@ var TemplateHeader$1 = function TemplateHeader(_ref) {
|
|
|
12114
12338
|
return headerElement;
|
|
12115
12339
|
};
|
|
12116
12340
|
/**
|
|
12117
|
-
* This
|
|
12118
|
-
*
|
|
12119
|
-
*
|
|
12341
|
+
* This component should be used inside the `Template` component to contain both
|
|
12342
|
+
* the `TemplateAboveHeader` and `TemplateHeader` components. This is meant to
|
|
12343
|
+
* render its children from edge to edge and is most useful for the headers,
|
|
12344
|
+
* `Breadcrumbs`, and `Hero` components or other banner-like components.
|
|
12120
12345
|
*/
|
|
12121
12346
|
|
|
12122
12347
|
|
|
@@ -12145,7 +12370,7 @@ var TemplateContent$1 = function TemplateContent(props) {
|
|
|
12145
12370
|
_props$sidebar = props.sidebar,
|
|
12146
12371
|
sidebar = _props$sidebar === void 0 ? "none" : _props$sidebar;
|
|
12147
12372
|
var styles = react.useStyleConfig("TemplateContent", {
|
|
12148
|
-
variant: sidebar
|
|
12373
|
+
variant: sidebar
|
|
12149
12374
|
}); // Manually pass in the `sidebar` prop to the `TemplateContentPrimary` and
|
|
12150
12375
|
// `TemplateContentSidebar` components.
|
|
12151
12376
|
|
|
@@ -12175,8 +12400,22 @@ var TemplateContent$1 = function TemplateContent(props) {
|
|
|
12175
12400
|
*/
|
|
12176
12401
|
|
|
12177
12402
|
|
|
12178
|
-
var TemplateContentTop
|
|
12179
|
-
var styles = react.useStyleConfig("
|
|
12403
|
+
var TemplateContentTop = function TemplateContentTop(props) {
|
|
12404
|
+
var styles = react.useStyleConfig("TemplateContentTopBottom", {});
|
|
12405
|
+
return React__default.createElement(react.Box, {
|
|
12406
|
+
__css: styles
|
|
12407
|
+
}, props.children);
|
|
12408
|
+
};
|
|
12409
|
+
/**
|
|
12410
|
+
* This optional component must be used inside the `TemplateContent` component
|
|
12411
|
+
* and after the `TemplateContentPrimary` or `TemplateContentSidebar` component.
|
|
12412
|
+
* This renders content in the main width of the container and should always
|
|
12413
|
+
* render below the primary component and the sidebar component (if any).
|
|
12414
|
+
*/
|
|
12415
|
+
|
|
12416
|
+
|
|
12417
|
+
var TemplateContentBottom = function TemplateContentBottom(props) {
|
|
12418
|
+
var styles = react.useStyleConfig("TemplateContentTopBottom", {});
|
|
12180
12419
|
return React__default.createElement(react.Box, {
|
|
12181
12420
|
__css: styles
|
|
12182
12421
|
}, props.children);
|
|
@@ -12234,6 +12473,7 @@ var TemplateFooter = function TemplateFooter(_ref2) {
|
|
|
12234
12473
|
var children = _ref2.children,
|
|
12235
12474
|
_ref2$renderFooterEle = _ref2.renderFooterElement,
|
|
12236
12475
|
renderFooterElement = _ref2$renderFooterEle === void 0 ? true : _ref2$renderFooterEle;
|
|
12476
|
+
var styles = react.useStyleConfig("TemplateBreakout", {});
|
|
12237
12477
|
var footerElement = React__default.createElement(React__default.Fragment, null, children); // The user wants to render the `footer` HTML element.
|
|
12238
12478
|
|
|
12239
12479
|
if (renderFooterElement) {
|
|
@@ -12246,7 +12486,8 @@ var TemplateFooter = function TemplateFooter(_ref2) {
|
|
|
12246
12486
|
}
|
|
12247
12487
|
});
|
|
12248
12488
|
footerElement = React__default.createElement(react.Box, {
|
|
12249
|
-
as: "footer"
|
|
12489
|
+
as: "footer",
|
|
12490
|
+
__css: styles
|
|
12250
12491
|
}, children);
|
|
12251
12492
|
}
|
|
12252
12493
|
|
|
@@ -12266,6 +12507,7 @@ var TemplateAppContainer = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forward
|
|
|
12266
12507
|
breakout = props.breakout,
|
|
12267
12508
|
_props$contentId = props.contentId,
|
|
12268
12509
|
contentId = _props$contentId === void 0 ? "mainContent" : _props$contentId,
|
|
12510
|
+
contentBottom = props.contentBottom,
|
|
12269
12511
|
contentPrimary = props.contentPrimary,
|
|
12270
12512
|
contentSidebar = props.contentSidebar,
|
|
12271
12513
|
contentTop = props.contentTop,
|
|
@@ -12282,20 +12524,20 @@ var TemplateAppContainer = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forward
|
|
|
12282
12524
|
rest = _objectWithoutPropertiesLoose(props, _excluded$29);
|
|
12283
12525
|
|
|
12284
12526
|
var aboveHeaderElem = aboveHeader && React__default.createElement(TemplateAboveHeader, null, aboveHeader);
|
|
12285
|
-
var
|
|
12286
|
-
var contentTopElem = contentTop && React__default.createElement(TemplateContentTop$1, null, contentTop);
|
|
12527
|
+
var contentTopElem = contentTop && React__default.createElement(TemplateContentTop, null, contentTop);
|
|
12287
12528
|
var contentPrimaryElem = contentPrimary && React__default.createElement(TemplateContentPrimary$1, null, contentPrimary);
|
|
12529
|
+
var contentBottomElem = contentBottom && React__default.createElement(TemplateContentBottom, null, contentBottom);
|
|
12288
12530
|
var contentSidebarElem = contentSidebar && React__default.createElement(TemplateContentSidebar$1, null, contentSidebar);
|
|
12289
|
-
return React__default.createElement(Template$1, Object.assign({
|
|
12531
|
+
return React__default.createElement(React__default.Fragment, null, renderSkipNavigation ? React__default.createElement(SkipNavigation$1, null) : null, React__default.createElement(Template$1, Object.assign({
|
|
12290
12532
|
ref: ref
|
|
12291
|
-
}, rest),
|
|
12533
|
+
}, rest), React__default.createElement(TemplateBreakout$1, null, aboveHeaderElem, (header || breakout) && React__default.createElement(TemplateHeader, {
|
|
12292
12534
|
renderHeaderElement: renderHeaderElement
|
|
12293
|
-
}, header,
|
|
12535
|
+
}, header, breakout)), React__default.createElement(TemplateContent$1, {
|
|
12294
12536
|
id: contentId,
|
|
12295
12537
|
sidebar: sidebar
|
|
12296
|
-
}, contentTopElem, sidebar === "left" && contentSidebarElem, contentPrimaryElem, sidebar === "right" && contentSidebarElem), footer && React__default.createElement(TemplateFooter, {
|
|
12538
|
+
}, contentTopElem, sidebar === "left" && contentSidebarElem, contentPrimaryElem, sidebar === "right" && contentSidebarElem, contentBottomElem), footer && React__default.createElement(TemplateFooter, {
|
|
12297
12539
|
renderFooterElement: renderFooterElement
|
|
12298
|
-
}, footer));
|
|
12540
|
+
}, footer)));
|
|
12299
12541
|
}));
|
|
12300
12542
|
|
|
12301
12543
|
var _excluded$2a = ["defaultChecked", "helperText", "id", "invalidText", "isChecked", "isDisabled", "isInvalid", "isRequired", "labelText", "name", "onChange", "size"];
|
|
@@ -12374,94 +12616,6 @@ var Toggle$2 = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(function
|
|
|
12374
12616
|
}), labelText)));
|
|
12375
12617
|
}));
|
|
12376
12618
|
|
|
12377
|
-
/**
|
|
12378
|
-
* A custom hook that returns the Chakra-based NYPL theme object. This must be
|
|
12379
|
-
* used inside a component that is wrapped in the `DSProvider` component, so
|
|
12380
|
-
* that the theme object can be available to use.
|
|
12381
|
-
*/
|
|
12382
|
-
|
|
12383
|
-
function useNYPLTheme() {
|
|
12384
|
-
var theme = react.useTheme();
|
|
12385
|
-
|
|
12386
|
-
if (!theme || Object.keys(theme).length === 0) {
|
|
12387
|
-
console.warn("NYPL Reservoir useNYPLTheme: hook must be used inside of `<DSProvider />`.");
|
|
12388
|
-
return {};
|
|
12389
|
-
} // Chakra provides a lot of their own styles but
|
|
12390
|
-
// only NYPL styles should be exported.
|
|
12391
|
-
|
|
12392
|
-
|
|
12393
|
-
return {
|
|
12394
|
-
// base, sm, md, lg, xl, 2xl
|
|
12395
|
-
breakpoints: theme.breakpoints,
|
|
12396
|
-
colors: {
|
|
12397
|
-
// primary, secondary
|
|
12398
|
-
brand: theme.colors.brand,
|
|
12399
|
-
// blogs, books-and-more, education, locations,
|
|
12400
|
-
// research, research-library, whats-on
|
|
12401
|
-
section: theme.colors.section,
|
|
12402
|
-
transparent: theme.colors.transparent,
|
|
12403
|
-
// black, disabled, error, focus, gray, link,
|
|
12404
|
-
// status, success, test, warning, white
|
|
12405
|
-
ui: theme.colors.ui
|
|
12406
|
-
},
|
|
12407
|
-
fontSizes: {
|
|
12408
|
-
"-3": theme.fontSizes["-3"],
|
|
12409
|
-
"-2": theme.fontSizes["-2"],
|
|
12410
|
-
"-1": theme.fontSizes["-1"],
|
|
12411
|
-
"0": theme.fontSizes["0"],
|
|
12412
|
-
"1": theme.fontSizes["1"],
|
|
12413
|
-
"2": theme.fontSizes["2"],
|
|
12414
|
-
"3": theme.fontSizes["3"],
|
|
12415
|
-
"4": theme.fontSizes["4"],
|
|
12416
|
-
// default
|
|
12417
|
-
breadcrumbs: theme.fontSizes.breadcrumbs,
|
|
12418
|
-
// default
|
|
12419
|
-
button: theme.fontSizes.button,
|
|
12420
|
-
// primary, secondary, tertiary, callout
|
|
12421
|
-
heading: theme.fontSizes.heading,
|
|
12422
|
-
// default
|
|
12423
|
-
helper: theme.fontSizes.helper,
|
|
12424
|
-
// default, secondary
|
|
12425
|
-
label: theme.fontSizes.label,
|
|
12426
|
-
// default, caption, tag, mini
|
|
12427
|
-
text: theme.fontSizes.text
|
|
12428
|
-
},
|
|
12429
|
-
fontWeights: {
|
|
12430
|
-
light: theme.fontWeights.light,
|
|
12431
|
-
regular: theme.fontWeights.regular,
|
|
12432
|
-
medium: theme.fontWeights.medium,
|
|
12433
|
-
bold: theme.fontWeights.bold,
|
|
12434
|
-
// default, lastChild
|
|
12435
|
-
breadcrumbs: theme.fontWeights.breadcrumbs,
|
|
12436
|
-
// default
|
|
12437
|
-
button: theme.fontWeights.button,
|
|
12438
|
-
// primary, secondary, tertiary, callout
|
|
12439
|
-
heading: theme.fontWeights.heading,
|
|
12440
|
-
// default
|
|
12441
|
-
helper: theme.fontWeights.helper,
|
|
12442
|
-
// default
|
|
12443
|
-
label: theme.fontWeights.label,
|
|
12444
|
-
// default, caption, tag, mini
|
|
12445
|
-
text: theme.fontWeights.text
|
|
12446
|
-
},
|
|
12447
|
-
fonts: {
|
|
12448
|
-
body: theme.fonts.body,
|
|
12449
|
-
heading: theme.fonts.heading
|
|
12450
|
-
},
|
|
12451
|
-
radii: theme.radii,
|
|
12452
|
-
space: {
|
|
12453
|
-
xxs: theme.space.xxs,
|
|
12454
|
-
xs: theme.space.xs,
|
|
12455
|
-
s: theme.space.s,
|
|
12456
|
-
m: theme.space.m,
|
|
12457
|
-
l: theme.space.l,
|
|
12458
|
-
xl: theme.space.xl,
|
|
12459
|
-
xxl: theme.space.xxl,
|
|
12460
|
-
xxxl: theme.space.xxxl
|
|
12461
|
-
}
|
|
12462
|
-
};
|
|
12463
|
-
}
|
|
12464
|
-
|
|
12465
12619
|
var _excluded$2b = ["aspectRatio", "className", "descriptionText", "embedCode", "headingText", "helperText", "id", "iframeTitle", "showHelperInvalidText", "videoId", "videoType"];
|
|
12466
12620
|
var VideoPlayer$1 = /*#__PURE__*/react.chakra( /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
12467
12621
|
var aspectRatio = props.aspectRatio,
|
|
@@ -12716,9 +12870,9 @@ exports.TemplateBreakout = TemplateBreakout$1;
|
|
|
12716
12870
|
exports.TemplateContent = TemplateContent$1;
|
|
12717
12871
|
exports.TemplateContentPrimary = TemplateContentPrimary$1;
|
|
12718
12872
|
exports.TemplateContentSidebar = TemplateContentSidebar$1;
|
|
12719
|
-
exports.TemplateContentTop = TemplateContentTop
|
|
12873
|
+
exports.TemplateContentTop = TemplateContentTop;
|
|
12720
12874
|
exports.TemplateFooter = TemplateFooter;
|
|
12721
|
-
exports.TemplateHeader = TemplateHeader
|
|
12875
|
+
exports.TemplateHeader = TemplateHeader;
|
|
12722
12876
|
exports.Text = Text;
|
|
12723
12877
|
exports.TextInput = TextInput;
|
|
12724
12878
|
exports.Toggle = Toggle$2;
|