@khanacademy/perseus 1.1.2 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/dist/es/index.css +4 -5
- package/dist/es/index.js +1282 -1429
- package/dist/es/index.js.map +1 -1
- package/dist/index.css +4 -5
- package/dist/index.js +1283 -1429
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
- package/src/__tests__/__snapshots__/renderer_test.jsx.snap +21 -3
- package/src/components/highlighting/ui/highlight-tooltip.jsx +29 -23
- package/src/components/highlighting/ui/selection-tracker.jsx +17 -28
- package/src/styles/articles.less +0 -2
- package/src/styles/perseus-renderer.less +1 -1
- package/src/styles/widgets/passage.less +7 -3
- package/src/widgets/__stories__/passage-ref.stories.jsx +6 -2
- package/src/widgets/__stories__/passage.stories.jsx +9 -1
- package/src/widgets/__stories__/radio.stories.jsx +11 -0
- package/src/widgets/__testdata__/passage-ref_testdata.js +62 -0
- package/src/widgets/__testdata__/passage_testdata.js +25 -0
- package/src/widgets/__testdata__/radio_testdata.js +52 -0
- package/src/widgets/__tests__/__snapshots__/dropdown_test.jsx.snap +16 -2
- package/src/widgets/__tests__/__snapshots__/passage-ref_test.jsx.snap +18 -18
- package/src/widgets/__tests__/__snapshots__/passage_test.jsx.snap +36 -36
- package/src/widgets/__tests__/passage_test.jsx +6 -8
- package/src/widgets/__tests__/radio_test.jsx +3 -1
- package/src/widgets/passage.jsx +12 -41
- package/src/widgets/radio/widget.jsx +128 -129
- package/src/components/new-tooltip/README.md +0 -3
- package/src/components/new-tooltip/__stories__/new-tooltip.stories.jsx +0 -665
- package/src/components/new-tooltip/__tests__/style-constants_test.js +0 -8
- package/src/components/new-tooltip/new-tooltip.jsx +0 -155
- package/src/components/new-tooltip/style-constants.js +0 -13
- package/src/components/new-tooltip/types.js +0 -183
- package/src/widgets/passage/get-line-height-for-node.js +0 -9
package/dist/index.js
CHANGED
|
@@ -20,13 +20,14 @@ var pureMarkdown = require('@khanacademy/pure-markdown');
|
|
|
20
20
|
var aphrodite = require('aphrodite');
|
|
21
21
|
var MathQuill = require('mathquill');
|
|
22
22
|
var wonderBlocksForm = require('@khanacademy/wonder-blocks-form');
|
|
23
|
-
var
|
|
23
|
+
var Spacing = require('@khanacademy/wonder-blocks-spacing');
|
|
24
|
+
var Tooltip$1 = require('@khanacademy/wonder-blocks-tooltip');
|
|
24
25
|
var Button = require('@khanacademy/wonder-blocks-button');
|
|
25
26
|
var Clickable = require('@khanacademy/wonder-blocks-clickable');
|
|
26
27
|
var Color = require('@khanacademy/wonder-blocks-color');
|
|
27
28
|
var wonderBlocksCore = require('@khanacademy/wonder-blocks-core');
|
|
28
29
|
var wonderBlocksLayout = require('@khanacademy/wonder-blocks-layout');
|
|
29
|
-
var
|
|
30
|
+
var wonderBlocksPopover = require('@khanacademy/wonder-blocks-popover');
|
|
30
31
|
var wonderBlocksDropdown = require('@khanacademy/wonder-blocks-dropdown');
|
|
31
32
|
var debounce = require('lodash.debounce');
|
|
32
33
|
var Link = require('@khanacademy/wonder-blocks-link');
|
|
@@ -64,10 +65,11 @@ var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
|
|
|
64
65
|
var createReactClass__default = /*#__PURE__*/_interopDefaultLegacy(createReactClass);
|
|
65
66
|
var SimpleMarkdown__default = /*#__PURE__*/_interopDefaultLegacy(SimpleMarkdown);
|
|
66
67
|
var MathQuill__default = /*#__PURE__*/_interopDefaultLegacy(MathQuill);
|
|
68
|
+
var Spacing__default = /*#__PURE__*/_interopDefaultLegacy(Spacing);
|
|
69
|
+
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip$1);
|
|
67
70
|
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
68
71
|
var Clickable__default = /*#__PURE__*/_interopDefaultLegacy(Clickable);
|
|
69
72
|
var Color__default = /*#__PURE__*/_interopDefaultLegacy(Color);
|
|
70
|
-
var Spacing__default = /*#__PURE__*/_interopDefaultLegacy(Spacing);
|
|
71
73
|
var debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);
|
|
72
74
|
var Link__default = /*#__PURE__*/_interopDefaultLegacy(Link);
|
|
73
75
|
|
|
@@ -24481,1192 +24483,52 @@ const styles$y = aphrodite.StyleSheet.create({
|
|
|
24481
24483
|
}
|
|
24482
24484
|
});
|
|
24483
24485
|
|
|
24484
|
-
|
|
24485
|
-
|
|
24486
|
-
|
|
24487
|
-
|
|
24488
|
-
|
|
24489
|
-
|
|
24490
|
-
|
|
24491
|
-
|
|
24492
|
-
|
|
24493
|
-
|
|
24494
|
-
|
|
24495
|
-
|
|
24496
|
-
|
|
24497
|
-
|
|
24498
|
-
const purple = "#7A43B6";
|
|
24499
|
-
const bodyBackground = "#FFFFFF";
|
|
24500
|
-
const textColor = "#444444";
|
|
24501
|
-
const linkColor = "#005987";
|
|
24502
|
-
const linkColorHover = "#678D00";
|
|
24503
|
-
const sansFontFamily = "'Helvetica Neue',Helvetica,Arial,sans-serif";
|
|
24504
|
-
const serifFontFamily = "Georgia,'Times New Roman',Times,serif";
|
|
24505
|
-
const monoFontFamily = "Monaco,Menlo,Consolas,'Courier New',monospace";
|
|
24506
|
-
const baseFontSize = "14px";
|
|
24507
|
-
const baseFontFamily = "inherit";
|
|
24508
|
-
const baseLineHeight = "20px";
|
|
24509
|
-
const altFontFamily = "Georgia,'Times New Roman',Times,serif";
|
|
24510
|
-
const headingsFontFamily = "inherit";
|
|
24511
|
-
const headingsFontWeight = "bold";
|
|
24512
|
-
const headingsColor = "inherit";
|
|
24513
|
-
const fontSizeLarge = "18px";
|
|
24514
|
-
const fontSizeSmall = "12px";
|
|
24515
|
-
const fontSizeMini = "10.5px";
|
|
24516
|
-
const paddingLarge = "11px 19px";
|
|
24517
|
-
const paddingSmall = "2px 10px";
|
|
24518
|
-
const paddingMini = "0 6px";
|
|
24519
|
-
const baseBorderRadius = "4px";
|
|
24520
|
-
const borderRadiusLarge = "6px";
|
|
24521
|
-
const borderRadiusSmall = "3px";
|
|
24522
|
-
const tableBackground = "#000000";
|
|
24523
|
-
const tableBackgroundAccent = "#F9F9F9";
|
|
24524
|
-
const tableBackgroundHover = "#F5F5F5";
|
|
24525
|
-
const tableBorder = "#DDDDDD";
|
|
24526
|
-
const btnBackground = "#FFFFFF";
|
|
24527
|
-
const btnBackgroundHighlight = "rgb(230, 230, 230)";
|
|
24528
|
-
const btnBorder = "#CCCCCC";
|
|
24529
|
-
const btnPrimaryBackground = "#0088CC";
|
|
24530
|
-
const btnPrimaryBackgroundHighlight = "rgb(0, 68, 204)";
|
|
24531
|
-
const btnInfoBackground = "#5BC0DE";
|
|
24532
|
-
const btnInfoBackgroundHighlight = "#2F96B4";
|
|
24533
|
-
const btnSuccessBackground = "#62C462";
|
|
24534
|
-
const btnSuccessBackgroundHighlight = "#51A351";
|
|
24535
|
-
const btnWarningBackground = "rgb(251, 180, 81)";
|
|
24536
|
-
const btnWarningBackgroundHighlight = "#F89406";
|
|
24537
|
-
const btnDangerBackground = "#EE5F5B";
|
|
24538
|
-
const btnDangerBackgroundHighlight = "#BD362F";
|
|
24539
|
-
const btnInverseBackground = "#444444";
|
|
24540
|
-
const btnInverseBackgroundHighlight = "#222222";
|
|
24541
|
-
const inputBackground = "#FFFFFF";
|
|
24542
|
-
const inputBorder = "#CCCCCC";
|
|
24543
|
-
const inputBorderRadius = "4px";
|
|
24544
|
-
const inputDisabledBackground = "#EEEEEE";
|
|
24545
|
-
const formActionsBackground = "#F5F5F5";
|
|
24546
|
-
const inputHeight = "30px";
|
|
24547
|
-
const dropdownBackground = "#FFFFFF";
|
|
24548
|
-
const dropdownBorder = "rgba(0, 0, 0, 0.2)";
|
|
24549
|
-
const dropdownDividerTop = "#E5E5E5";
|
|
24550
|
-
const dropdownDividerBottom = "#FFFFFF";
|
|
24551
|
-
const dropdownLinkColor = "#333333";
|
|
24552
|
-
const dropdownLinkColorHover = "#FFFFFF";
|
|
24553
|
-
const dropdownLinkColorActive = "#FFFFFF";
|
|
24554
|
-
const dropdownLinkBackgroundActive = "#0088CC";
|
|
24555
|
-
const dropdownLinkBackgroundHover = "#0088CC";
|
|
24556
|
-
const zindexDropdown = 1000;
|
|
24557
|
-
const zindexPopover = 1010;
|
|
24558
|
-
const zindexTooltip = 1030;
|
|
24559
|
-
const zindexFixedNavbar = 1030;
|
|
24560
|
-
const zindexHeader = 1060;
|
|
24561
|
-
const zindexModalBackdrop = 1070;
|
|
24562
|
-
const zindexModal = 1080;
|
|
24563
|
-
const zindexAboveModal = 1090;
|
|
24564
|
-
const iconSpritePath = "../img/glyphicons-halflings.png";
|
|
24565
|
-
const iconWhiteSpritePath = "../img/glyphicons-halflings-white.png";
|
|
24566
|
-
const placeholderText = "#999999";
|
|
24567
|
-
const hrBorder = "#EEEEEE";
|
|
24568
|
-
const horizontalComponentOffset = "180px";
|
|
24569
|
-
const wellBackground = "#F5F5F5";
|
|
24570
|
-
const navbarCollapseWidth = "979px";
|
|
24571
|
-
const navbarCollapseDesktopWidth = "980px";
|
|
24572
|
-
const navbarHeight = "40px";
|
|
24573
|
-
const navbarBackgroundHighlight = "#FFFFFF";
|
|
24574
|
-
const navbarBackground = "rgb(242, 242, 242)";
|
|
24575
|
-
const navbarBorder = "rgb(212, 212, 212)";
|
|
24576
|
-
const navbarText = "#777777";
|
|
24577
|
-
const navbarLinkColor = "#777777";
|
|
24578
|
-
const navbarLinkColorHover = "#333333";
|
|
24579
|
-
const navbarLinkColorActive = "#555555";
|
|
24580
|
-
const navbarLinkBackgroundHover = "#000000";
|
|
24581
|
-
const navbarLinkBackgroundActive = "rgb(230, 230, 230)";
|
|
24582
|
-
const navbarBrandColor = "#777777";
|
|
24583
|
-
const navbarInverseBackground = "#111111";
|
|
24584
|
-
const navbarInverseBackgroundHighlight = "#222222";
|
|
24585
|
-
const navbarInverseBorder = "#252525";
|
|
24586
|
-
const navbarInverseText = "#999999";
|
|
24587
|
-
const navbarInverseLinkColor = "#999999";
|
|
24588
|
-
const navbarInverseLinkColorHover = "#FFFFFF";
|
|
24589
|
-
const navbarInverseLinkColorActive = "#FFFFFF";
|
|
24590
|
-
const navbarInverseLinkBackgroundHover = "#000000";
|
|
24591
|
-
const navbarInverseLinkBackgroundActive = "#111111";
|
|
24592
|
-
const navbarInverseSearchBackground = "rgb(82, 82, 82)";
|
|
24593
|
-
const navbarInverseSearchBackgroundFocus = "#FFFFFF";
|
|
24594
|
-
const navbarInverseSearchBorder = "#111111";
|
|
24595
|
-
const navbarInverseSearchPlaceholderColor = "#CCCCCC";
|
|
24596
|
-
const navbarInverseBrandColor = "#999999";
|
|
24597
|
-
const paginationBackground = "#FFFFFF";
|
|
24598
|
-
const paginationBorder = "#DDDDDD";
|
|
24599
|
-
const paginationActiveBackground = "#F5F5F5";
|
|
24600
|
-
const heroUnitBackground = "#EEEEEE";
|
|
24601
|
-
const heroUnitHeadingColor = "inherit";
|
|
24602
|
-
const heroUnitLeadColor = "inherit";
|
|
24603
|
-
const warningText = "#C09853";
|
|
24604
|
-
const warningBackground = "#FCF8E3";
|
|
24605
|
-
const warningBorder = "rgb(251, 239, 213)";
|
|
24606
|
-
const errorText = "#B94A48";
|
|
24607
|
-
const errorBackground = "#F2DEDE";
|
|
24608
|
-
const errorBorder = "rgb(238, 211, 215)";
|
|
24609
|
-
const successText = "#468847";
|
|
24610
|
-
const successBackground = "#DFF0D8";
|
|
24611
|
-
const successBorder = "rgb(212, 232, 197)";
|
|
24612
|
-
const infoText = "#4A7C17";
|
|
24613
|
-
const infoBackground = "#EDF2DF";
|
|
24614
|
-
const infoBorder = "rgb(228, 232, 197)";
|
|
24615
|
-
const tooltipColor = "#FFFFFF";
|
|
24616
|
-
const tooltipBackground = "#000000";
|
|
24617
|
-
const tooltipArrowWidth = "5px";
|
|
24618
|
-
const tooltipArrowColor = "#000000";
|
|
24619
|
-
const popoverBackground = "#FFFFFF";
|
|
24620
|
-
const popoverArrowWidth = "10px";
|
|
24621
|
-
const popoverArrowColor = "#FFFFFF";
|
|
24622
|
-
const popoverTitleBackground = "rgb(247, 247, 247)";
|
|
24623
|
-
const popoverArrowOuterWidth = "11px";
|
|
24624
|
-
const popoverArrowOuterColor = "rgba(0, 0, 0, 0.25)";
|
|
24625
|
-
const gridColumns = "12";
|
|
24626
|
-
const gridColumnWidth = "60px";
|
|
24627
|
-
const gridGutterWidth = "20px";
|
|
24628
|
-
const gridRowWidth = "940px";
|
|
24629
|
-
const gridColumnWidth1200 = "70px";
|
|
24630
|
-
const gridGutterWidth1200 = "30px";
|
|
24631
|
-
const gridRowWidth1200 = "1170px";
|
|
24632
|
-
const gridColumnWidth768 = "42px";
|
|
24633
|
-
const gridGutterWidth768 = "20px";
|
|
24634
|
-
const gridRowWidth768 = "724px";
|
|
24635
|
-
const fluidGridColumnWidth = "6.382978723404255%";
|
|
24636
|
-
const fluidGridGutterWidth = "2.127659574468085%";
|
|
24637
|
-
const fluidGridColumnWidth1200 = "5.982905982905983%";
|
|
24638
|
-
const fluidGridGutterWidth1200 = "2.564102564102564%";
|
|
24639
|
-
const fluidGridColumnWidth768 = "5.801104972375691%";
|
|
24640
|
-
const fluidGridGutterWidth768 = "2.7624309392265194%";
|
|
24641
|
-
const kaGreen = "#71B307";
|
|
24642
|
-
const kaGreenLight = "#BED47A";
|
|
24643
|
-
const kaBlue = "#314453";
|
|
24644
|
-
const kaBlueLight = "#4D6779";
|
|
24645
|
-
const grayExtraDark = "#111111";
|
|
24646
|
-
const grayExtraLight = "#EEEEEE";
|
|
24647
|
-
const graySuperLight = "#F7F7F7";
|
|
24648
|
-
const whiteDark = "#FDFDFD";
|
|
24649
|
-
const dark = "#21242C";
|
|
24650
|
-
const blueDarkUnsaturated = "#3B414E";
|
|
24651
|
-
const blueDarkSaturated = "#1F3043";
|
|
24652
|
-
const blueLight = "#A9C0D1";
|
|
24653
|
-
const greenLight = "#C6D1AD";
|
|
24654
|
-
const greenDark = "#356700";
|
|
24655
|
-
const yellowGreen = "#9DB63B";
|
|
24656
|
-
const okGreen = "#A7CF5B";
|
|
24657
|
-
const alertRed = "#C42420";
|
|
24658
|
-
const coral = "#EE6666";
|
|
24659
|
-
const grayBlue = "#9AB3B9";
|
|
24660
|
-
const lightPageBackground = "#FDFDFD";
|
|
24661
|
-
const yclaBlue = "#49BAD5";
|
|
24662
|
-
const yclaTeal = "#56D0B3";
|
|
24663
|
-
const yclaTealDark = "#50C1A7";
|
|
24664
|
-
const yclaGreenDark = "#3D9A82";
|
|
24665
|
-
const yclaGreen = "#81C262";
|
|
24666
|
-
const learnstormBlue = "#4898FC";
|
|
24667
|
-
const homepageBlue = "#46A8BF";
|
|
24668
|
-
const backgroundBlue = "#00294A";
|
|
24669
|
-
const teacherSignupBlue = "#335d7d";
|
|
24670
|
-
const homepageGreen = "#2B8E7B";
|
|
24671
|
-
const streakColor = "#F79734";
|
|
24672
|
-
const facebookColor = "#1A60A2";
|
|
24673
|
-
const blueGoogleColor = "#2CAFE2";
|
|
24674
|
-
const redGoogleColor = "#BF4434";
|
|
24675
|
-
const homepageColor = "#2D585E";
|
|
24676
|
-
const lightTextColor = "#898989";
|
|
24677
|
-
const fontSizeTiny = "11px";
|
|
24678
|
-
const fontSizeNormal = "14px";
|
|
24679
|
-
const fontSizeMedium = "16px";
|
|
24680
|
-
const fontSizeExtraLarge = "24px";
|
|
24681
|
-
const fontSizeHuge = "36px";
|
|
24682
|
-
const fontSizeBakana = "48px";
|
|
24683
|
-
const fontSizeBananas = "60px";
|
|
24684
|
-
const fixedWidthFontFamily = "'Helvetica Neue',Helvetica,Arial,sans-serif";
|
|
24685
|
-
const contentPadding = "20px";
|
|
24686
|
-
const primaryButtonBackground = "#89B908";
|
|
24687
|
-
const primaryButtonBorder = "#76A005";
|
|
24688
|
-
const buttonTextColor = "rgb(122, 122, 122)";
|
|
24689
|
-
const buttonBorderRadius = "3px";
|
|
24690
|
-
const basicBorderColor = "#CCCCCC";
|
|
24691
|
-
const minContainerWidth = "1000px";
|
|
24692
|
-
const maxContainerWidth = "1200px";
|
|
24693
|
-
const formHintColor = "#999999";
|
|
24694
|
-
const guidelineExampleText = "#606060";
|
|
24695
|
-
const hoverCardWidth = "450px";
|
|
24696
|
-
const menuHighlightColor = "#96AB4F";
|
|
24697
|
-
const menuHighlightBorderColor = "#76A005";
|
|
24698
|
-
const menuActiveTextColor = "#FFFFFF";
|
|
24699
|
-
const menuInactiveTextColor = "#444444";
|
|
24700
|
-
const menuSubheaderTextColor = "rgb(120, 120, 120)";
|
|
24701
|
-
const menuBorderColor = "#94A170";
|
|
24702
|
-
const unreadBackgroundColor = "#ECEEF4";
|
|
24703
|
-
const menuLineHeight = "18px";
|
|
24704
|
-
const menuSubheaderLineHeight = "17px";
|
|
24705
|
-
const menuSubheaderFontSize = "9px";
|
|
24706
|
-
const notificationBarColor = "#4858A4";
|
|
24707
|
-
const modalBodyTopPadding = "20px";
|
|
24708
|
-
const modalDialogPadding = "15px";
|
|
24709
|
-
const modalSectionPadding = "9px";
|
|
24710
|
-
const mathDomain1 = "#11ACCD";
|
|
24711
|
-
const mathDomain2 = "#63D9EA";
|
|
24712
|
-
const mathDomain3 = "#027d97";
|
|
24713
|
-
const mathDomain4 = "#085566";
|
|
24714
|
-
const partnerContentDomain1 = "#01A995";
|
|
24715
|
-
const partnerContentDomain2 = "#01D1C1";
|
|
24716
|
-
const partnerContentDomain3 = "#208170";
|
|
24717
|
-
const partnerContentDomain4 = "#144F44";
|
|
24718
|
-
const csDomain1 = "#1FAB54";
|
|
24719
|
-
const csDomain2 = "#74CF70";
|
|
24720
|
-
const csDomain3 = "#0D923F";
|
|
24721
|
-
const csDomain4 = "#085E29";
|
|
24722
|
-
const economicsDomain1 = "#E07D10";
|
|
24723
|
-
const economicsDomain2 = "#FFBE26";
|
|
24724
|
-
const economicsDomain3 = "#A75A05";
|
|
24725
|
-
const economicsDomain4 = "#953C02";
|
|
24726
|
-
const collegeCareersMoreDomain1 = "#01A995";
|
|
24727
|
-
const collegeCareersMoreDomain2 = "#01D1C1";
|
|
24728
|
-
const collegeCareersMoreDomain3 = "#208170";
|
|
24729
|
-
const collegeCareersMoreDomain4 = "#144F44";
|
|
24730
|
-
const humanitiesDomain1 = "#E84D39";
|
|
24731
|
-
const humanitiesDomain2 = "#FF8482";
|
|
24732
|
-
const humanitiesDomain3 = "#BE2612";
|
|
24733
|
-
const humanitiesDomain4 = "#8C1C0D";
|
|
24734
|
-
const gtpDomain1 = "#1865F2";
|
|
24735
|
-
const gtpDomain2 = "#1865F2";
|
|
24736
|
-
const gtpDomain3 = "#1865F2";
|
|
24737
|
-
const gtpDomain4 = "#1865F2";
|
|
24738
|
-
const scienceDomain1 = "#CA337C";
|
|
24739
|
-
const scienceDomain2 = "#FF92C6";
|
|
24740
|
-
const scienceDomain3 = "#9E034E";
|
|
24741
|
-
const scienceDomain4 = "#6B0235";
|
|
24742
|
-
const testPrepDomain1 = "#1865F2";
|
|
24743
|
-
const testPrepDomain2 = "#1865F2";
|
|
24744
|
-
const testPrepDomain3 = "#1865F2";
|
|
24745
|
-
const testPrepDomain4 = "#1865F2";
|
|
24746
|
-
const defaultDomain1 = "#1865F2";
|
|
24747
|
-
const defaultDomain2 = "#66afe9";
|
|
24748
|
-
const defaultDomain3 = "#1152b0";
|
|
24749
|
-
const defaultDomain4 = "#0d3d82";
|
|
24750
|
-
const defaultDomainColor = "#314453";
|
|
24751
|
-
const defaultSubjectColor = "#4D6779";
|
|
24752
|
-
const defaultTopicColor = "#6A8DA6";
|
|
24753
|
-
const defaultHoverColor = "#314453";
|
|
24754
|
-
const defaultLinkColor = "#314453";
|
|
24755
|
-
const defaultLinkHoverColor = "#6A8DA6";
|
|
24756
|
-
const scienceDomainColor = "#94424F";
|
|
24757
|
-
const scienceSubjectColor = "#9D4A5A";
|
|
24758
|
-
const scienceTopicColor = "#C55F73";
|
|
24759
|
-
const scienceHoverColor = "#94424F";
|
|
24760
|
-
const scienceLinkColor = "#94424F";
|
|
24761
|
-
const scienceLinkHoverColor = "#C55F73";
|
|
24762
|
-
const humanitiesDomainColor = "#AD3434";
|
|
24763
|
-
const humanitiesSubjectColor = "#C13B31";
|
|
24764
|
-
const humanitiesTopicColor = "#D24A45";
|
|
24765
|
-
const humanitiesHoverColor = "#AD3434";
|
|
24766
|
-
const humanitiesLinkColor = "#AD3434";
|
|
24767
|
-
const humanitiesLinkHoverColor = "#D24A45";
|
|
24768
|
-
const economicsDomainColor = "#B77033";
|
|
24769
|
-
const economicsSubjectColor = "#BF7B34";
|
|
24770
|
-
const economicsTopicColor = "#D1933B";
|
|
24771
|
-
const economicsHoverColor = "#B77033";
|
|
24772
|
-
const economicsLinkColor = "#B77033";
|
|
24773
|
-
const economicsLinkHoverColor = "#D1933B";
|
|
24774
|
-
const csDomainColor = "#437A39";
|
|
24775
|
-
const csSubjectColor = "#53893E";
|
|
24776
|
-
const csTopicColor = "#689B51";
|
|
24777
|
-
const csHoverColor = "#437A39";
|
|
24778
|
-
const csLinkColor = "#437A39";
|
|
24779
|
-
const csLinkHoverColor = "#689B51";
|
|
24780
|
-
const partnerContentDomainColor = "#218270";
|
|
24781
|
-
const partnerContentSubjectColor = "#2C8D7B";
|
|
24782
|
-
const partnerContentTopicColor = "#329A86";
|
|
24783
|
-
const partnerContentHoverColor = "#218270";
|
|
24784
|
-
const partnerContentLinkColor = "#218270";
|
|
24785
|
-
const partnerContentLinkHoverColor = "#329A86";
|
|
24786
|
-
const essayDomainColor = "#0071B3";
|
|
24787
|
-
const mathDomainColor = "#1C758A";
|
|
24788
|
-
const mathSubjectColor = "#46A8BF";
|
|
24789
|
-
const mathTopicColor = "#4FBAD4";
|
|
24790
|
-
const mathHoverColor = "#1C758A";
|
|
24791
|
-
const mathLinkColor = "#1C758A";
|
|
24792
|
-
const mathLinkHoverColor = "#4FBAD4";
|
|
24793
|
-
const testPrepDomainColor = "#644172";
|
|
24794
|
-
const testPrepSubjectColor = "#7E5F8E";
|
|
24795
|
-
const testPrepTopicColor = "#9A72AC";
|
|
24796
|
-
const testPrepHoverColor = "#644172";
|
|
24797
|
-
const testPrepLinkColor = "#644172";
|
|
24798
|
-
const testPrepLinkHoverColor = "#9A72AC";
|
|
24799
|
-
const collegeCareersMoreDomainColor = "#218270";
|
|
24800
|
-
const collegeCareersMoreSubjectColor = "#2C8D7B";
|
|
24801
|
-
const collegeCareersMoreTopicColor = "#329A86";
|
|
24802
|
-
const collegeCareersMoreHoverColor = "#218270";
|
|
24803
|
-
const collegeCareersMoreLinkColor = "#218270";
|
|
24804
|
-
const collegeCareersMoreLinkHoverColor = "#329A86";
|
|
24805
|
-
const satDomainColor = "#0084CE";
|
|
24806
|
-
const satSubjectColor = "#0084CE";
|
|
24807
|
-
const satTopicColor = "#0084CE";
|
|
24808
|
-
const satHoverColor = "#0084CE";
|
|
24809
|
-
const satLinkColor = "#0084CE";
|
|
24810
|
-
const satLinkHoverColor = "#0084CE";
|
|
24811
|
-
const colorProficient = "#1C758A";
|
|
24812
|
-
const colorPracticed = "rgb(158, 221, 235)";
|
|
24813
|
-
const colorMastery1 = "rgb(90, 197, 221)";
|
|
24814
|
-
const colorMastery2 = "rgb(42, 174, 203)";
|
|
24815
|
-
const colorMastery3 = "#1C758A";
|
|
24816
|
-
const colorSuggested = "#73982C";
|
|
24817
|
-
const colorReview = "#E35D04";
|
|
24818
|
-
const colorNotStarted = "#CCCCCC";
|
|
24819
|
-
const colorStarted = "#C7E5F7";
|
|
24820
|
-
const colorStruggling = "#C30202";
|
|
24821
|
-
const colorPersonal = "#00809C";
|
|
24822
|
-
const colorPractice = "#96D9FF";
|
|
24823
|
-
const colorEnergyPoints = "#005987";
|
|
24824
|
-
const pureSmMin$1 = "568px";
|
|
24825
|
-
const pureMdMin$1 = "768px";
|
|
24826
|
-
const pureLgMin$1 = "1024px";
|
|
24827
|
-
const pureXlMin$1 = "1200px";
|
|
24828
|
-
const pureXsMax$1 = "567px";
|
|
24829
|
-
const pureSmMax$1 = "767px";
|
|
24830
|
-
const pureMdMax$1 = "1023px";
|
|
24831
|
-
const pureLgMax$1 = "1199px";
|
|
24486
|
+
/**
|
|
24487
|
+
* A tooltip to point to the focus of a highlight.
|
|
24488
|
+
*
|
|
24489
|
+
* We use the NewTooltip component, which positions itself not by coordinate,
|
|
24490
|
+
* but by watching the position of a target DOM element. So, we render a 0x0
|
|
24491
|
+
* DOM element, absolute-position it to the position of the the highlight
|
|
24492
|
+
* focus, and point the tooltip at that 0x0 element.
|
|
24493
|
+
*
|
|
24494
|
+
* This technique enables NewTooltip to use its existing visibility-watching
|
|
24495
|
+
* and scroll-tracking logic to effectively "watch" the focus of this
|
|
24496
|
+
* highlight. So, we get lots of the repositioning logic for free! But we _do_
|
|
24497
|
+
* still have to notify the tooltip to remeasure itself when the highlight
|
|
24498
|
+
* focus _changes_.
|
|
24499
|
+
*/
|
|
24832
24500
|
|
|
24833
|
-
|
|
24834
|
-
|
|
24835
|
-
|
|
24836
|
-
|
|
24837
|
-
|
|
24838
|
-
|
|
24839
|
-
|
|
24840
|
-
grayLighter: grayLighter,
|
|
24841
|
-
white: white,
|
|
24842
|
-
blue: blue,
|
|
24843
|
-
blueDark: blueDark,
|
|
24844
|
-
green: green,
|
|
24845
|
-
red: red,
|
|
24846
|
-
yellow: yellow,
|
|
24847
|
-
orange: orange,
|
|
24848
|
-
pink: pink,
|
|
24849
|
-
purple: purple,
|
|
24850
|
-
bodyBackground: bodyBackground,
|
|
24851
|
-
textColor: textColor,
|
|
24852
|
-
linkColor: linkColor,
|
|
24853
|
-
linkColorHover: linkColorHover,
|
|
24854
|
-
sansFontFamily: sansFontFamily,
|
|
24855
|
-
serifFontFamily: serifFontFamily,
|
|
24856
|
-
monoFontFamily: monoFontFamily,
|
|
24857
|
-
baseFontSize: baseFontSize,
|
|
24858
|
-
baseFontFamily: baseFontFamily,
|
|
24859
|
-
baseLineHeight: baseLineHeight,
|
|
24860
|
-
altFontFamily: altFontFamily,
|
|
24861
|
-
headingsFontFamily: headingsFontFamily,
|
|
24862
|
-
headingsFontWeight: headingsFontWeight,
|
|
24863
|
-
headingsColor: headingsColor,
|
|
24864
|
-
fontSizeLarge: fontSizeLarge,
|
|
24865
|
-
fontSizeSmall: fontSizeSmall,
|
|
24866
|
-
fontSizeMini: fontSizeMini,
|
|
24867
|
-
paddingLarge: paddingLarge,
|
|
24868
|
-
paddingSmall: paddingSmall,
|
|
24869
|
-
paddingMini: paddingMini,
|
|
24870
|
-
baseBorderRadius: baseBorderRadius,
|
|
24871
|
-
borderRadiusLarge: borderRadiusLarge,
|
|
24872
|
-
borderRadiusSmall: borderRadiusSmall,
|
|
24873
|
-
tableBackground: tableBackground,
|
|
24874
|
-
tableBackgroundAccent: tableBackgroundAccent,
|
|
24875
|
-
tableBackgroundHover: tableBackgroundHover,
|
|
24876
|
-
tableBorder: tableBorder,
|
|
24877
|
-
btnBackground: btnBackground,
|
|
24878
|
-
btnBackgroundHighlight: btnBackgroundHighlight,
|
|
24879
|
-
btnBorder: btnBorder,
|
|
24880
|
-
btnPrimaryBackground: btnPrimaryBackground,
|
|
24881
|
-
btnPrimaryBackgroundHighlight: btnPrimaryBackgroundHighlight,
|
|
24882
|
-
btnInfoBackground: btnInfoBackground,
|
|
24883
|
-
btnInfoBackgroundHighlight: btnInfoBackgroundHighlight,
|
|
24884
|
-
btnSuccessBackground: btnSuccessBackground,
|
|
24885
|
-
btnSuccessBackgroundHighlight: btnSuccessBackgroundHighlight,
|
|
24886
|
-
btnWarningBackground: btnWarningBackground,
|
|
24887
|
-
btnWarningBackgroundHighlight: btnWarningBackgroundHighlight,
|
|
24888
|
-
btnDangerBackground: btnDangerBackground,
|
|
24889
|
-
btnDangerBackgroundHighlight: btnDangerBackgroundHighlight,
|
|
24890
|
-
btnInverseBackground: btnInverseBackground,
|
|
24891
|
-
btnInverseBackgroundHighlight: btnInverseBackgroundHighlight,
|
|
24892
|
-
inputBackground: inputBackground,
|
|
24893
|
-
inputBorder: inputBorder,
|
|
24894
|
-
inputBorderRadius: inputBorderRadius,
|
|
24895
|
-
inputDisabledBackground: inputDisabledBackground,
|
|
24896
|
-
formActionsBackground: formActionsBackground,
|
|
24897
|
-
inputHeight: inputHeight,
|
|
24898
|
-
dropdownBackground: dropdownBackground,
|
|
24899
|
-
dropdownBorder: dropdownBorder,
|
|
24900
|
-
dropdownDividerTop: dropdownDividerTop,
|
|
24901
|
-
dropdownDividerBottom: dropdownDividerBottom,
|
|
24902
|
-
dropdownLinkColor: dropdownLinkColor,
|
|
24903
|
-
dropdownLinkColorHover: dropdownLinkColorHover,
|
|
24904
|
-
dropdownLinkColorActive: dropdownLinkColorActive,
|
|
24905
|
-
dropdownLinkBackgroundActive: dropdownLinkBackgroundActive,
|
|
24906
|
-
dropdownLinkBackgroundHover: dropdownLinkBackgroundHover,
|
|
24907
|
-
zindexDropdown: zindexDropdown,
|
|
24908
|
-
zindexPopover: zindexPopover,
|
|
24909
|
-
zindexTooltip: zindexTooltip,
|
|
24910
|
-
zindexFixedNavbar: zindexFixedNavbar,
|
|
24911
|
-
zindexHeader: zindexHeader,
|
|
24912
|
-
zindexModalBackdrop: zindexModalBackdrop,
|
|
24913
|
-
zindexModal: zindexModal,
|
|
24914
|
-
zindexAboveModal: zindexAboveModal,
|
|
24915
|
-
iconSpritePath: iconSpritePath,
|
|
24916
|
-
iconWhiteSpritePath: iconWhiteSpritePath,
|
|
24917
|
-
placeholderText: placeholderText,
|
|
24918
|
-
hrBorder: hrBorder,
|
|
24919
|
-
horizontalComponentOffset: horizontalComponentOffset,
|
|
24920
|
-
wellBackground: wellBackground,
|
|
24921
|
-
navbarCollapseWidth: navbarCollapseWidth,
|
|
24922
|
-
navbarCollapseDesktopWidth: navbarCollapseDesktopWidth,
|
|
24923
|
-
navbarHeight: navbarHeight,
|
|
24924
|
-
navbarBackgroundHighlight: navbarBackgroundHighlight,
|
|
24925
|
-
navbarBackground: navbarBackground,
|
|
24926
|
-
navbarBorder: navbarBorder,
|
|
24927
|
-
navbarText: navbarText,
|
|
24928
|
-
navbarLinkColor: navbarLinkColor,
|
|
24929
|
-
navbarLinkColorHover: navbarLinkColorHover,
|
|
24930
|
-
navbarLinkColorActive: navbarLinkColorActive,
|
|
24931
|
-
navbarLinkBackgroundHover: navbarLinkBackgroundHover,
|
|
24932
|
-
navbarLinkBackgroundActive: navbarLinkBackgroundActive,
|
|
24933
|
-
navbarBrandColor: navbarBrandColor,
|
|
24934
|
-
navbarInverseBackground: navbarInverseBackground,
|
|
24935
|
-
navbarInverseBackgroundHighlight: navbarInverseBackgroundHighlight,
|
|
24936
|
-
navbarInverseBorder: navbarInverseBorder,
|
|
24937
|
-
navbarInverseText: navbarInverseText,
|
|
24938
|
-
navbarInverseLinkColor: navbarInverseLinkColor,
|
|
24939
|
-
navbarInverseLinkColorHover: navbarInverseLinkColorHover,
|
|
24940
|
-
navbarInverseLinkColorActive: navbarInverseLinkColorActive,
|
|
24941
|
-
navbarInverseLinkBackgroundHover: navbarInverseLinkBackgroundHover,
|
|
24942
|
-
navbarInverseLinkBackgroundActive: navbarInverseLinkBackgroundActive,
|
|
24943
|
-
navbarInverseSearchBackground: navbarInverseSearchBackground,
|
|
24944
|
-
navbarInverseSearchBackgroundFocus: navbarInverseSearchBackgroundFocus,
|
|
24945
|
-
navbarInverseSearchBorder: navbarInverseSearchBorder,
|
|
24946
|
-
navbarInverseSearchPlaceholderColor: navbarInverseSearchPlaceholderColor,
|
|
24947
|
-
navbarInverseBrandColor: navbarInverseBrandColor,
|
|
24948
|
-
paginationBackground: paginationBackground,
|
|
24949
|
-
paginationBorder: paginationBorder,
|
|
24950
|
-
paginationActiveBackground: paginationActiveBackground,
|
|
24951
|
-
heroUnitBackground: heroUnitBackground,
|
|
24952
|
-
heroUnitHeadingColor: heroUnitHeadingColor,
|
|
24953
|
-
heroUnitLeadColor: heroUnitLeadColor,
|
|
24954
|
-
warningText: warningText,
|
|
24955
|
-
warningBackground: warningBackground,
|
|
24956
|
-
warningBorder: warningBorder,
|
|
24957
|
-
errorText: errorText,
|
|
24958
|
-
errorBackground: errorBackground,
|
|
24959
|
-
errorBorder: errorBorder,
|
|
24960
|
-
successText: successText,
|
|
24961
|
-
successBackground: successBackground,
|
|
24962
|
-
successBorder: successBorder,
|
|
24963
|
-
infoText: infoText,
|
|
24964
|
-
infoBackground: infoBackground,
|
|
24965
|
-
infoBorder: infoBorder,
|
|
24966
|
-
tooltipColor: tooltipColor,
|
|
24967
|
-
tooltipBackground: tooltipBackground,
|
|
24968
|
-
tooltipArrowWidth: tooltipArrowWidth,
|
|
24969
|
-
tooltipArrowColor: tooltipArrowColor,
|
|
24970
|
-
popoverBackground: popoverBackground,
|
|
24971
|
-
popoverArrowWidth: popoverArrowWidth,
|
|
24972
|
-
popoverArrowColor: popoverArrowColor,
|
|
24973
|
-
popoverTitleBackground: popoverTitleBackground,
|
|
24974
|
-
popoverArrowOuterWidth: popoverArrowOuterWidth,
|
|
24975
|
-
popoverArrowOuterColor: popoverArrowOuterColor,
|
|
24976
|
-
gridColumns: gridColumns,
|
|
24977
|
-
gridColumnWidth: gridColumnWidth,
|
|
24978
|
-
gridGutterWidth: gridGutterWidth,
|
|
24979
|
-
gridRowWidth: gridRowWidth,
|
|
24980
|
-
gridColumnWidth1200: gridColumnWidth1200,
|
|
24981
|
-
gridGutterWidth1200: gridGutterWidth1200,
|
|
24982
|
-
gridRowWidth1200: gridRowWidth1200,
|
|
24983
|
-
gridColumnWidth768: gridColumnWidth768,
|
|
24984
|
-
gridGutterWidth768: gridGutterWidth768,
|
|
24985
|
-
gridRowWidth768: gridRowWidth768,
|
|
24986
|
-
fluidGridColumnWidth: fluidGridColumnWidth,
|
|
24987
|
-
fluidGridGutterWidth: fluidGridGutterWidth,
|
|
24988
|
-
fluidGridColumnWidth1200: fluidGridColumnWidth1200,
|
|
24989
|
-
fluidGridGutterWidth1200: fluidGridGutterWidth1200,
|
|
24990
|
-
fluidGridColumnWidth768: fluidGridColumnWidth768,
|
|
24991
|
-
fluidGridGutterWidth768: fluidGridGutterWidth768,
|
|
24992
|
-
kaGreen: kaGreen,
|
|
24993
|
-
kaGreenLight: kaGreenLight,
|
|
24994
|
-
kaBlue: kaBlue,
|
|
24995
|
-
kaBlueLight: kaBlueLight,
|
|
24996
|
-
grayExtraDark: grayExtraDark,
|
|
24997
|
-
grayExtraLight: grayExtraLight,
|
|
24998
|
-
graySuperLight: graySuperLight,
|
|
24999
|
-
whiteDark: whiteDark,
|
|
25000
|
-
dark: dark,
|
|
25001
|
-
blueDarkUnsaturated: blueDarkUnsaturated,
|
|
25002
|
-
blueDarkSaturated: blueDarkSaturated,
|
|
25003
|
-
blueLight: blueLight,
|
|
25004
|
-
greenLight: greenLight,
|
|
25005
|
-
greenDark: greenDark,
|
|
25006
|
-
yellowGreen: yellowGreen,
|
|
25007
|
-
okGreen: okGreen,
|
|
25008
|
-
alertRed: alertRed,
|
|
25009
|
-
coral: coral,
|
|
25010
|
-
grayBlue: grayBlue,
|
|
25011
|
-
lightPageBackground: lightPageBackground,
|
|
25012
|
-
yclaBlue: yclaBlue,
|
|
25013
|
-
yclaTeal: yclaTeal,
|
|
25014
|
-
yclaTealDark: yclaTealDark,
|
|
25015
|
-
yclaGreenDark: yclaGreenDark,
|
|
25016
|
-
yclaGreen: yclaGreen,
|
|
25017
|
-
learnstormBlue: learnstormBlue,
|
|
25018
|
-
homepageBlue: homepageBlue,
|
|
25019
|
-
backgroundBlue: backgroundBlue,
|
|
25020
|
-
teacherSignupBlue: teacherSignupBlue,
|
|
25021
|
-
homepageGreen: homepageGreen,
|
|
25022
|
-
streakColor: streakColor,
|
|
25023
|
-
facebookColor: facebookColor,
|
|
25024
|
-
blueGoogleColor: blueGoogleColor,
|
|
25025
|
-
redGoogleColor: redGoogleColor,
|
|
25026
|
-
homepageColor: homepageColor,
|
|
25027
|
-
lightTextColor: lightTextColor,
|
|
25028
|
-
fontSizeTiny: fontSizeTiny,
|
|
25029
|
-
fontSizeNormal: fontSizeNormal,
|
|
25030
|
-
fontSizeMedium: fontSizeMedium,
|
|
25031
|
-
fontSizeExtraLarge: fontSizeExtraLarge,
|
|
25032
|
-
fontSizeHuge: fontSizeHuge,
|
|
25033
|
-
fontSizeBakana: fontSizeBakana,
|
|
25034
|
-
fontSizeBananas: fontSizeBananas,
|
|
25035
|
-
fixedWidthFontFamily: fixedWidthFontFamily,
|
|
25036
|
-
contentPadding: contentPadding,
|
|
25037
|
-
primaryButtonBackground: primaryButtonBackground,
|
|
25038
|
-
primaryButtonBorder: primaryButtonBorder,
|
|
25039
|
-
buttonTextColor: buttonTextColor,
|
|
25040
|
-
buttonBorderRadius: buttonBorderRadius,
|
|
25041
|
-
basicBorderColor: basicBorderColor,
|
|
25042
|
-
minContainerWidth: minContainerWidth,
|
|
25043
|
-
maxContainerWidth: maxContainerWidth,
|
|
25044
|
-
formHintColor: formHintColor,
|
|
25045
|
-
guidelineExampleText: guidelineExampleText,
|
|
25046
|
-
hoverCardWidth: hoverCardWidth,
|
|
25047
|
-
menuHighlightColor: menuHighlightColor,
|
|
25048
|
-
menuHighlightBorderColor: menuHighlightBorderColor,
|
|
25049
|
-
menuActiveTextColor: menuActiveTextColor,
|
|
25050
|
-
menuInactiveTextColor: menuInactiveTextColor,
|
|
25051
|
-
menuSubheaderTextColor: menuSubheaderTextColor,
|
|
25052
|
-
menuBorderColor: menuBorderColor,
|
|
25053
|
-
unreadBackgroundColor: unreadBackgroundColor,
|
|
25054
|
-
menuLineHeight: menuLineHeight,
|
|
25055
|
-
menuSubheaderLineHeight: menuSubheaderLineHeight,
|
|
25056
|
-
menuSubheaderFontSize: menuSubheaderFontSize,
|
|
25057
|
-
notificationBarColor: notificationBarColor,
|
|
25058
|
-
modalBodyTopPadding: modalBodyTopPadding,
|
|
25059
|
-
modalDialogPadding: modalDialogPadding,
|
|
25060
|
-
modalSectionPadding: modalSectionPadding,
|
|
25061
|
-
mathDomain1: mathDomain1,
|
|
25062
|
-
mathDomain2: mathDomain2,
|
|
25063
|
-
mathDomain3: mathDomain3,
|
|
25064
|
-
mathDomain4: mathDomain4,
|
|
25065
|
-
partnerContentDomain1: partnerContentDomain1,
|
|
25066
|
-
partnerContentDomain2: partnerContentDomain2,
|
|
25067
|
-
partnerContentDomain3: partnerContentDomain3,
|
|
25068
|
-
partnerContentDomain4: partnerContentDomain4,
|
|
25069
|
-
csDomain1: csDomain1,
|
|
25070
|
-
csDomain2: csDomain2,
|
|
25071
|
-
csDomain3: csDomain3,
|
|
25072
|
-
csDomain4: csDomain4,
|
|
25073
|
-
economicsDomain1: economicsDomain1,
|
|
25074
|
-
economicsDomain2: economicsDomain2,
|
|
25075
|
-
economicsDomain3: economicsDomain3,
|
|
25076
|
-
economicsDomain4: economicsDomain4,
|
|
25077
|
-
collegeCareersMoreDomain1: collegeCareersMoreDomain1,
|
|
25078
|
-
collegeCareersMoreDomain2: collegeCareersMoreDomain2,
|
|
25079
|
-
collegeCareersMoreDomain3: collegeCareersMoreDomain3,
|
|
25080
|
-
collegeCareersMoreDomain4: collegeCareersMoreDomain4,
|
|
25081
|
-
humanitiesDomain1: humanitiesDomain1,
|
|
25082
|
-
humanitiesDomain2: humanitiesDomain2,
|
|
25083
|
-
humanitiesDomain3: humanitiesDomain3,
|
|
25084
|
-
humanitiesDomain4: humanitiesDomain4,
|
|
25085
|
-
gtpDomain1: gtpDomain1,
|
|
25086
|
-
gtpDomain2: gtpDomain2,
|
|
25087
|
-
gtpDomain3: gtpDomain3,
|
|
25088
|
-
gtpDomain4: gtpDomain4,
|
|
25089
|
-
scienceDomain1: scienceDomain1,
|
|
25090
|
-
scienceDomain2: scienceDomain2,
|
|
25091
|
-
scienceDomain3: scienceDomain3,
|
|
25092
|
-
scienceDomain4: scienceDomain4,
|
|
25093
|
-
testPrepDomain1: testPrepDomain1,
|
|
25094
|
-
testPrepDomain2: testPrepDomain2,
|
|
25095
|
-
testPrepDomain3: testPrepDomain3,
|
|
25096
|
-
testPrepDomain4: testPrepDomain4,
|
|
25097
|
-
defaultDomain1: defaultDomain1,
|
|
25098
|
-
defaultDomain2: defaultDomain2,
|
|
25099
|
-
defaultDomain3: defaultDomain3,
|
|
25100
|
-
defaultDomain4: defaultDomain4,
|
|
25101
|
-
defaultDomainColor: defaultDomainColor,
|
|
25102
|
-
defaultSubjectColor: defaultSubjectColor,
|
|
25103
|
-
defaultTopicColor: defaultTopicColor,
|
|
25104
|
-
defaultHoverColor: defaultHoverColor,
|
|
25105
|
-
defaultLinkColor: defaultLinkColor,
|
|
25106
|
-
defaultLinkHoverColor: defaultLinkHoverColor,
|
|
25107
|
-
scienceDomainColor: scienceDomainColor,
|
|
25108
|
-
scienceSubjectColor: scienceSubjectColor,
|
|
25109
|
-
scienceTopicColor: scienceTopicColor,
|
|
25110
|
-
scienceHoverColor: scienceHoverColor,
|
|
25111
|
-
scienceLinkColor: scienceLinkColor,
|
|
25112
|
-
scienceLinkHoverColor: scienceLinkHoverColor,
|
|
25113
|
-
humanitiesDomainColor: humanitiesDomainColor,
|
|
25114
|
-
humanitiesSubjectColor: humanitiesSubjectColor,
|
|
25115
|
-
humanitiesTopicColor: humanitiesTopicColor,
|
|
25116
|
-
humanitiesHoverColor: humanitiesHoverColor,
|
|
25117
|
-
humanitiesLinkColor: humanitiesLinkColor,
|
|
25118
|
-
humanitiesLinkHoverColor: humanitiesLinkHoverColor,
|
|
25119
|
-
economicsDomainColor: economicsDomainColor,
|
|
25120
|
-
economicsSubjectColor: economicsSubjectColor,
|
|
25121
|
-
economicsTopicColor: economicsTopicColor,
|
|
25122
|
-
economicsHoverColor: economicsHoverColor,
|
|
25123
|
-
economicsLinkColor: economicsLinkColor,
|
|
25124
|
-
economicsLinkHoverColor: economicsLinkHoverColor,
|
|
25125
|
-
csDomainColor: csDomainColor,
|
|
25126
|
-
csSubjectColor: csSubjectColor,
|
|
25127
|
-
csTopicColor: csTopicColor,
|
|
25128
|
-
csHoverColor: csHoverColor,
|
|
25129
|
-
csLinkColor: csLinkColor,
|
|
25130
|
-
csLinkHoverColor: csLinkHoverColor,
|
|
25131
|
-
partnerContentDomainColor: partnerContentDomainColor,
|
|
25132
|
-
partnerContentSubjectColor: partnerContentSubjectColor,
|
|
25133
|
-
partnerContentTopicColor: partnerContentTopicColor,
|
|
25134
|
-
partnerContentHoverColor: partnerContentHoverColor,
|
|
25135
|
-
partnerContentLinkColor: partnerContentLinkColor,
|
|
25136
|
-
partnerContentLinkHoverColor: partnerContentLinkHoverColor,
|
|
25137
|
-
essayDomainColor: essayDomainColor,
|
|
25138
|
-
mathDomainColor: mathDomainColor,
|
|
25139
|
-
mathSubjectColor: mathSubjectColor,
|
|
25140
|
-
mathTopicColor: mathTopicColor,
|
|
25141
|
-
mathHoverColor: mathHoverColor,
|
|
25142
|
-
mathLinkColor: mathLinkColor,
|
|
25143
|
-
mathLinkHoverColor: mathLinkHoverColor,
|
|
25144
|
-
testPrepDomainColor: testPrepDomainColor,
|
|
25145
|
-
testPrepSubjectColor: testPrepSubjectColor,
|
|
25146
|
-
testPrepTopicColor: testPrepTopicColor,
|
|
25147
|
-
testPrepHoverColor: testPrepHoverColor,
|
|
25148
|
-
testPrepLinkColor: testPrepLinkColor,
|
|
25149
|
-
testPrepLinkHoverColor: testPrepLinkHoverColor,
|
|
25150
|
-
collegeCareersMoreDomainColor: collegeCareersMoreDomainColor,
|
|
25151
|
-
collegeCareersMoreSubjectColor: collegeCareersMoreSubjectColor,
|
|
25152
|
-
collegeCareersMoreTopicColor: collegeCareersMoreTopicColor,
|
|
25153
|
-
collegeCareersMoreHoverColor: collegeCareersMoreHoverColor,
|
|
25154
|
-
collegeCareersMoreLinkColor: collegeCareersMoreLinkColor,
|
|
25155
|
-
collegeCareersMoreLinkHoverColor: collegeCareersMoreLinkHoverColor,
|
|
25156
|
-
satDomainColor: satDomainColor,
|
|
25157
|
-
satSubjectColor: satSubjectColor,
|
|
25158
|
-
satTopicColor: satTopicColor,
|
|
25159
|
-
satHoverColor: satHoverColor,
|
|
25160
|
-
satLinkColor: satLinkColor,
|
|
25161
|
-
satLinkHoverColor: satLinkHoverColor,
|
|
25162
|
-
colorProficient: colorProficient,
|
|
25163
|
-
colorPracticed: colorPracticed,
|
|
25164
|
-
colorMastery1: colorMastery1,
|
|
25165
|
-
colorMastery2: colorMastery2,
|
|
25166
|
-
colorMastery3: colorMastery3,
|
|
25167
|
-
colorSuggested: colorSuggested,
|
|
25168
|
-
colorReview: colorReview,
|
|
25169
|
-
colorNotStarted: colorNotStarted,
|
|
25170
|
-
colorStarted: colorStarted,
|
|
25171
|
-
colorStruggling: colorStruggling,
|
|
25172
|
-
colorPersonal: colorPersonal,
|
|
25173
|
-
colorPractice: colorPractice,
|
|
25174
|
-
colorEnergyPoints: colorEnergyPoints,
|
|
25175
|
-
pureSmMin: pureSmMin$1,
|
|
25176
|
-
pureMdMin: pureMdMin$1,
|
|
25177
|
-
pureLgMin: pureLgMin$1,
|
|
25178
|
-
pureXlMin: pureXlMin$1,
|
|
25179
|
-
pureXsMax: pureXsMax$1,
|
|
25180
|
-
pureSmMax: pureSmMax$1,
|
|
25181
|
-
pureMdMax: pureMdMax$1,
|
|
25182
|
-
pureLgMax: pureLgMax$1
|
|
25183
|
-
});
|
|
25184
|
-
|
|
25185
|
-
/**
|
|
25186
|
-
* A default set of media queries to use for different screen sizes. Based on
|
|
25187
|
-
* the breakpoints from purecss.
|
|
25188
|
-
*
|
|
25189
|
-
* Use like:
|
|
25190
|
-
* StyleSheet.create({
|
|
25191
|
-
* blah: {
|
|
25192
|
-
* [mediaQueries.xs]: {
|
|
25193
|
-
*
|
|
25194
|
-
* },
|
|
25195
|
-
* },
|
|
25196
|
-
* });
|
|
25197
|
-
*/
|
|
25198
|
-
const {
|
|
25199
|
-
pureXsMax,
|
|
25200
|
-
pureSmMin,
|
|
25201
|
-
pureSmMax,
|
|
25202
|
-
pureMdMin,
|
|
25203
|
-
pureMdMax,
|
|
25204
|
-
pureLgMin,
|
|
25205
|
-
pureLgMax,
|
|
25206
|
-
pureXlMin
|
|
25207
|
-
} = constants$1;
|
|
25208
|
-
var mediaQueries = {
|
|
25209
|
-
xs: "@media screen and (max-width: ".concat(pureXsMax, ")"),
|
|
25210
|
-
sm: "@media screen and (min-width: ".concat(pureSmMin, ") and ") + "(max-width: ".concat(pureSmMax, ")"),
|
|
25211
|
-
md: "@media screen and (min-width: ".concat(pureMdMin, ") and ") + "(max-width: ".concat(pureMdMax, ")"),
|
|
25212
|
-
lg: "@media screen and (min-width: ".concat(pureLgMin, ") and ") + "(max-width: ".concat(pureLgMax, ")"),
|
|
25213
|
-
xl: "@media screen and (min-width: ".concat(pureXlMin, ")"),
|
|
25214
|
-
xsOrSmaller: "@media screen and (max-width: ".concat(pureXsMax, ")"),
|
|
25215
|
-
smOrSmaller: "@media screen and (max-width: ".concat(pureSmMax, ")"),
|
|
25216
|
-
mdOrSmaller: "@media screen and (max-width: ".concat(pureMdMax, ")"),
|
|
25217
|
-
lgOrSmaller: "@media screen and (max-width: ".concat(pureLgMax, ")"),
|
|
25218
|
-
smOrLarger: "@media screen and (min-width: ".concat(pureSmMin, ")"),
|
|
25219
|
-
mdOrLarger: "@media screen and (min-width: ".concat(pureMdMin, ")"),
|
|
25220
|
-
lgOrLarger: "@media screen and (min-width: ".concat(pureLgMin, ")"),
|
|
25221
|
-
xlOrLarger: "@media screen and (min-width: ".concat(pureXlMin, ")")
|
|
25222
|
-
};
|
|
25223
|
-
|
|
25224
|
-
const colors$1 = {
|
|
25225
|
-
white: "#FFFFFF",
|
|
25226
|
-
gray98: "#FAFAFA",
|
|
25227
|
-
gray97: "#F6F7F7",
|
|
25228
|
-
gray95: "#F0F1F2",
|
|
25229
|
-
gray90: "#E3E5E6",
|
|
25230
|
-
gray85: "#D6D8DA",
|
|
25231
|
-
gray76: "#BABEC2",
|
|
25232
|
-
gray72: "#999A9D",
|
|
25233
|
-
gray68: "#888D93",
|
|
25234
|
-
gray55: "#707378",
|
|
25235
|
-
gray41: "#626569",
|
|
25236
|
-
gray25: "#3B3E40",
|
|
25237
|
-
gray17: "#21242C",
|
|
25238
|
-
gray10: "#1499af",
|
|
25239
|
-
black: "#000000",
|
|
25240
|
-
// These colors are pulled out from constants.js, which is itself generated
|
|
25241
|
-
// from variables.less. We should probably avoid duplicating these here.
|
|
25242
|
-
alertRed,
|
|
25243
|
-
homepageBlue,
|
|
25244
|
-
kaBlue,
|
|
25245
|
-
kaBlueLight,
|
|
25246
|
-
kaGreen,
|
|
25247
|
-
kaGreenLight,
|
|
25248
|
-
learnstormBlue,
|
|
25249
|
-
backgroundBlue,
|
|
25250
|
-
adminGreen: "#78C008",
|
|
25251
|
-
kaBlueExtraLight: "#39c2db",
|
|
25252
|
-
kaBlueHover: "#0c7f99",
|
|
25253
|
-
kaGreenHover: "#518005",
|
|
25254
|
-
// Domain-agnostic colors related to the study guide experience in the
|
|
25255
|
-
// content library.
|
|
25256
|
-
skyDark: "#001f4d",
|
|
25257
|
-
recommendationGold: "#ffbe26",
|
|
25258
|
-
starAced: "#ff9c39",
|
|
25259
|
-
// We interploate the domain colors into this colors object for
|
|
25260
|
-
// historical reasons, but everyone using domain-specific colors
|
|
25261
|
-
// should switch to using the domainColors() function to look up
|
|
25262
|
-
// colors instead.
|
|
25263
|
-
//
|
|
25264
|
-
// TODO(davidflanagan): remove this line once everything is
|
|
25265
|
-
// working correctly with the domainColors() accessor.
|
|
25266
|
-
// ...domainToColorsMap,
|
|
25267
|
-
// mission: missionColors,
|
|
25268
|
-
// Colors for various OAuth providers
|
|
25269
|
-
google: "#C1432f",
|
|
25270
|
-
modernGoogle: "#be2612",
|
|
25271
|
-
modernGoogleHover: "#8c1c0d",
|
|
25272
|
-
facebook: "#4267B2",
|
|
25273
|
-
modernFacebook: "#4267B2",
|
|
25274
|
-
modernFacebookHover: "#00294a",
|
|
25275
|
-
wonderBlocksGold: "#FFB100",
|
|
25276
|
-
wonderBlocksLightBlue: "#37C5FD",
|
|
25277
|
-
// We're using rgba instead of opacity to avoid affecting the focus outline
|
|
25278
|
-
// when we just want to make the color transparent.
|
|
25279
|
-
breadcrumbs: "rgba(255, 255, 255, 0.7)"
|
|
25280
|
-
};
|
|
25281
|
-
const borderRadius = 4;
|
|
25282
|
-
const breadcrumbStyles = {
|
|
25283
|
-
color: colors$1.breadcrumbs,
|
|
25284
|
-
fontFamily: "inherit",
|
|
25285
|
-
fontSize: 15,
|
|
25286
|
-
fontWeight: "bold",
|
|
25287
|
-
letterSpacing: 0.8,
|
|
25288
|
-
lineHeight: "19px",
|
|
25289
|
-
textTransform: "uppercase",
|
|
25290
|
-
// Disable subpixel antialiasing for OSX (improves light on dark text)
|
|
25291
|
-
MozOsxFontSmoothing: "grayscale",
|
|
25292
|
-
WebkitFontSmoothing: "antialiased"
|
|
25293
|
-
};
|
|
25294
|
-
const fonts = {
|
|
25295
|
-
// The body of the page is setup to use 'Helvetica' by default and
|
|
25296
|
-
// 'Lato' if/once it downloads. For your elements to follow this
|
|
25297
|
-
// pattern, all you need is to make the text in your element
|
|
25298
|
-
// inherit from the body using the "inherit" value.
|
|
25299
|
-
regular: "inherit"
|
|
25300
|
-
};
|
|
25301
|
-
const typography = {
|
|
25302
|
-
// For subject names
|
|
25303
|
-
subjectHeadingDesktop: {
|
|
25304
|
-
fontFamily: "inherit",
|
|
25305
|
-
fontSize: 50,
|
|
25306
|
-
fontWeight: "bold",
|
|
25307
|
-
lineHeight: "61px"
|
|
25308
|
-
},
|
|
25309
|
-
subjectHeadingMobile: {
|
|
25310
|
-
fontFamily: "inherit",
|
|
25311
|
-
fontSize: 35,
|
|
25312
|
-
fontWeight: "bold",
|
|
25313
|
-
lineHeight: "37px"
|
|
25314
|
-
},
|
|
25315
|
-
// For the most important thing on the page
|
|
25316
|
-
conceptHeadingDesktop: {
|
|
25317
|
-
fontFamily: "inherit",
|
|
25318
|
-
fontSize: 35,
|
|
25319
|
-
fontWeight: "bold",
|
|
25320
|
-
lineHeight: "37px"
|
|
25321
|
-
},
|
|
25322
|
-
conceptHeadingMobile: {
|
|
25323
|
-
fontFamily: "inherit",
|
|
25324
|
-
fontSize: 23,
|
|
25325
|
-
fontWeight: "bold",
|
|
25326
|
-
lineHeight: "27px"
|
|
25327
|
-
},
|
|
25328
|
-
// For sections or modules
|
|
25329
|
-
subheadingDesktop: {
|
|
25330
|
-
fontFamily: "inherit",
|
|
25331
|
-
fontSize: 23,
|
|
25332
|
-
fontWeight: "bold",
|
|
25333
|
-
lineHeight: "27px"
|
|
25334
|
-
},
|
|
25335
|
-
subheadingMobile: {
|
|
25336
|
-
fontFamily: "inherit",
|
|
25337
|
-
fontSize: 20,
|
|
25338
|
-
fontWeight: "bold",
|
|
25339
|
-
lineHeight: "24px"
|
|
25340
|
-
},
|
|
25341
|
-
smallSubheadingDesktop: {
|
|
25342
|
-
fontFamily: "inherit",
|
|
25343
|
-
fontSize: 20,
|
|
25344
|
-
lineHeight: 1.25
|
|
25345
|
-
},
|
|
25346
|
-
smallSubheadingMobile: {
|
|
25347
|
-
fontFamily: "inherit",
|
|
25348
|
-
fontSize: 15,
|
|
25349
|
-
lineHeight: 1.25
|
|
25350
|
-
},
|
|
25351
|
-
// For callouts
|
|
25352
|
-
smallHeading: {
|
|
25353
|
-
color: colors$1.gray25,
|
|
25354
|
-
fontFamily: "inherit",
|
|
25355
|
-
fontSize: 17,
|
|
25356
|
-
fontWeight: "bold",
|
|
25357
|
-
lineHeight: "23px"
|
|
25358
|
-
},
|
|
25359
|
-
smallHeadingMobile: {
|
|
25360
|
-
color: colors$1.gray25,
|
|
25361
|
-
fontFamily: "inherit",
|
|
25362
|
-
fontSize: 15,
|
|
25363
|
-
fontWeight: "bold",
|
|
25364
|
-
lineHeight: "18px"
|
|
25365
|
-
},
|
|
25366
|
-
// Accent headings
|
|
25367
|
-
accentHeading: {
|
|
25368
|
-
color: colors$1.gray68,
|
|
25369
|
-
fontFamily: "inherit",
|
|
25370
|
-
fontSize: 15,
|
|
25371
|
-
fontWeight: "bold",
|
|
25372
|
-
letterSpacing: 0.8,
|
|
25373
|
-
lineHeight: "19px",
|
|
25374
|
-
textTransform: "uppercase"
|
|
25375
|
-
},
|
|
25376
|
-
bodyLarge: {
|
|
25377
|
-
// For articles with multiple paragraphs
|
|
25378
|
-
fontFamily: fonts.regular,
|
|
25379
|
-
fontSize: 20,
|
|
25380
|
-
lineHeight: "30px"
|
|
25381
|
-
},
|
|
25382
|
-
bodySmall: {
|
|
25383
|
-
// For small blocks of copy
|
|
25384
|
-
fontFamily: fonts.regular,
|
|
25385
|
-
fontSize: 17,
|
|
25386
|
-
fontWeight: "normal",
|
|
25387
|
-
lineHeight: "23px"
|
|
25388
|
-
},
|
|
25389
|
-
bodySmallBold: {
|
|
25390
|
-
// For small blocks of copy
|
|
25391
|
-
fontFamily: fonts.regular,
|
|
25392
|
-
fontSize: 17,
|
|
25393
|
-
fontWeight: "bold",
|
|
25394
|
-
lineHeight: "23px"
|
|
25395
|
-
},
|
|
25396
|
-
bodyXsmall: {
|
|
25397
|
-
// For metadata, descriptions, etc
|
|
25398
|
-
fontFamily: fonts.regular,
|
|
25399
|
-
fontSize: 15,
|
|
25400
|
-
lineHeight: "22px"
|
|
25401
|
-
},
|
|
25402
|
-
bodyXsmallBold: {
|
|
25403
|
-
// For emphasized metadata, descriptions, etc
|
|
25404
|
-
fontFamily: "inherit",
|
|
25405
|
-
fontSize: 15,
|
|
25406
|
-
fontWeight: "bold",
|
|
25407
|
-
lineHeight: "22px"
|
|
25408
|
-
},
|
|
25409
|
-
breadcrumb: breadcrumbStyles,
|
|
25410
|
-
// For in-page tabs, breadcrumbs
|
|
25411
|
-
breadcrumbSmall: { // For in-page tabs and leaf page breadcrumbs
|
|
25412
|
-
...breadcrumbStyles,
|
|
25413
|
-
fontSize: 12,
|
|
25414
|
-
lineHeight: "13px"
|
|
25415
|
-
},
|
|
25416
|
-
labelLarge: {
|
|
25417
|
-
// For chiclets and thumbnail titles
|
|
25418
|
-
fontFamily: "inherit",
|
|
25419
|
-
fontSize: 23,
|
|
25420
|
-
fontWeight: "bold",
|
|
25421
|
-
lineHeight: "27px"
|
|
25422
|
-
},
|
|
25423
|
-
labelMedium: {
|
|
25424
|
-
// For chiclets and thumbnail titles
|
|
25425
|
-
fontFamily: "inherit",
|
|
25426
|
-
fontSize: 15,
|
|
25427
|
-
fontWeight: "bold",
|
|
25428
|
-
lineHeight: "18px"
|
|
25429
|
-
},
|
|
25430
|
-
labelSmall: {
|
|
25431
|
-
// Generally used with labelLarge, for breadcrumbs in thumbnails
|
|
25432
|
-
fontFamily: fonts.regular,
|
|
25433
|
-
fontSize: 12,
|
|
25434
|
-
lineHeight: "14px"
|
|
25435
|
-
},
|
|
25436
|
-
caption: {
|
|
25437
|
-
// For image captions
|
|
25438
|
-
fontFamily: fonts.regular,
|
|
25439
|
-
fontSize: 14,
|
|
25440
|
-
fontStyle: "italic",
|
|
25441
|
-
lineHeight: "17px"
|
|
25442
|
-
},
|
|
25443
|
-
desktopScalingOnMobile: {
|
|
25444
|
-
// For when you need Mobile Safari and friends to stick to desktop
|
|
25445
|
-
// sizes
|
|
25446
|
-
MozTextSizeAdjust: "100%",
|
|
25447
|
-
MsTextSizeAdjust: "100%",
|
|
25448
|
-
WebkitTextSizeAdjust: "100%"
|
|
25449
|
-
},
|
|
25450
|
-
// TODO (josh): This should move to within <ModalHeader>
|
|
25451
|
-
modalSubtitle: {
|
|
25452
|
-
fontSize: 12,
|
|
25453
|
-
lineHeight: 1.65,
|
|
25454
|
-
// NOTE (josh): Font smoothing used here to create a 'medium' weight
|
|
25455
|
-
// font, between normal and bold, on webkit browsers.
|
|
25456
|
-
// This prop is an a11y risk when used on non-bold text, since it
|
|
25457
|
-
// makes text very thin, but it's fine on bold text.
|
|
25458
|
-
WebkitFontSmoothing: "antialiased",
|
|
25459
|
-
fontWeight: "bold"
|
|
25460
|
-
},
|
|
25461
|
-
// HACK(kevinb): temporary wonder blocks styles for header only
|
|
25462
|
-
// TODO(kevinb): use components from wonder-blocks-typography instead
|
|
25463
|
-
wonderBlocksHeader: {
|
|
25464
|
-
paddingLeft: 16,
|
|
25465
|
-
paddingRight: 16,
|
|
25466
|
-
paddingBottom: 24,
|
|
25467
|
-
paddingTop: 34,
|
|
25468
|
-
[mediaQueries.mdOrLarger]: {
|
|
25469
|
-
paddingBottom: 32
|
|
25470
|
-
}
|
|
25471
|
-
},
|
|
25472
|
-
// HACK(kevinb): temporary wonder blocks styles for header only
|
|
25473
|
-
// TODO(kevinb): use components from wonder-blocks-typography instead
|
|
25474
|
-
wonderBlocksTitle: {
|
|
25475
|
-
color: colors$1.white,
|
|
25476
|
-
fontWeight: 900,
|
|
25477
|
-
// "Black" weight
|
|
25478
|
-
fontSize: 28,
|
|
25479
|
-
lineHeight: "32px",
|
|
25480
|
-
margin: 0,
|
|
25481
|
-
[mediaQueries.mdOrLarger]: {
|
|
25482
|
-
fontSize: 36,
|
|
25483
|
-
lineHeight: "40px"
|
|
25484
|
-
}
|
|
25485
|
-
},
|
|
25486
|
-
// HACK(kevinb): temporary wonder blocks styles for header only
|
|
25487
|
-
// TODO(kevinb): use components from wonder-blocks-typography instead
|
|
25488
|
-
wonderBlocksLabelLarge: {
|
|
25489
|
-
fontSize: 16,
|
|
25490
|
-
lineHeight: "20px",
|
|
25491
|
-
fontWeight: 700 // Bold
|
|
25492
|
-
|
|
25493
|
-
}
|
|
25494
|
-
};
|
|
24501
|
+
class HighlightTooltip extends React__namespace.PureComponent {
|
|
24502
|
+
_getFocusRect() {
|
|
24503
|
+
const {
|
|
24504
|
+
focusNode,
|
|
24505
|
+
focusOffset,
|
|
24506
|
+
offsetParent
|
|
24507
|
+
} = this.props; // Get a range of *just* the focus point of the selection.
|
|
25495
24508
|
|
|
25496
|
-
|
|
25497
|
-
|
|
25498
|
-
|
|
25499
|
-
|
|
25500
|
-
|
|
25501
|
-
|
|
25502
|
-
|
|
24509
|
+
const focusRange = document.createRange();
|
|
24510
|
+
focusRange.setStart(focusNode, focusOffset);
|
|
24511
|
+
focusRange.setEnd(focusNode, focusOffset); // Then, get the bounding box of the collapsed range. This will be a
|
|
24512
|
+
// zero-width rectangle, but still have positioning information, which
|
|
24513
|
+
// we can use the position the tooltip.
|
|
24514
|
+
//
|
|
24515
|
+
// NOTE(mdr): If we used getClientBoundingRect here instead, Safari
|
|
24516
|
+
// would return an unpositioned rect. But all tested browsers at
|
|
24517
|
+
// time of writing (latest Chrome, Firefox, Safari) return at least
|
|
24518
|
+
// one rectangle from getClientRects, and it's well-positioned.
|
|
25503
24519
|
|
|
25504
|
-
const
|
|
25505
|
-
|
|
25506
|
-
|
|
25507
|
-
|
|
25508
|
-
|
|
25509
|
-
|
|
25510
|
-
color: colors$1.gray17,
|
|
25511
|
-
inverted: false,
|
|
25512
|
-
dismissOnClickClose: false,
|
|
25513
|
-
toggleOnHover: true,
|
|
25514
|
-
showOnMount: false
|
|
25515
|
-
});
|
|
24520
|
+
const focusRect = focusRange.getClientRects()[0]; // NOTE(mdr): ...except in the case where the focus is between two
|
|
24521
|
+
// paragraphs, in which case the focus range has no client rects?
|
|
24522
|
+
// Not sure why, or in what browsers (only noticed in Chrome 60),
|
|
24523
|
+
// but let's catch that case and bail out.
|
|
24524
|
+
// TODO(mdr): Instead, we should somehow walk back the range until we
|
|
24525
|
+
// find an appropriate position for the tooltip. Sounds tricky!
|
|
25516
24526
|
|
|
25517
|
-
|
|
25518
|
-
|
|
25519
|
-
|
|
25520
|
-
|
|
25521
|
-
|
|
25522
|
-
if (this.props.dismissed == null) {
|
|
25523
|
-
// We're serving as an "uncontrolled component": our dismissed
|
|
25524
|
-
// state is managed by us, not by incoming props.
|
|
25525
|
-
this.setState({
|
|
25526
|
-
dismissed: true
|
|
25527
|
-
});
|
|
25528
|
-
}
|
|
25529
|
-
|
|
25530
|
-
this.props.onDismiss && this.props.onDismiss();
|
|
25531
|
-
});
|
|
25532
|
-
|
|
25533
|
-
_defineProperty(this, "_popoverContentColor", () => {
|
|
25534
|
-
const {
|
|
25535
|
-
inverted,
|
|
25536
|
-
color
|
|
25537
|
-
} = this.props;
|
|
25538
|
-
|
|
25539
|
-
if (inverted) {
|
|
25540
|
-
return "darkBlue";
|
|
25541
|
-
} else if (color === "blue") {
|
|
25542
|
-
return "blue";
|
|
25543
|
-
}
|
|
25544
|
-
|
|
25545
|
-
return "white";
|
|
25546
|
-
});
|
|
25547
|
-
|
|
25548
|
-
this.state = {
|
|
25549
|
-
dismissed: props.dismissed != null ? props.dismissed : false,
|
|
25550
|
-
hovered: false
|
|
25551
|
-
};
|
|
25552
|
-
}
|
|
25553
|
-
|
|
25554
|
-
UNSAFE_componentWillReceiveProps(nextProps) {
|
|
25555
|
-
if (Object.keys(nextProps).includes("dismissed")) {
|
|
25556
|
-
this.setState({
|
|
25557
|
-
dismissed: nextProps.dismissed
|
|
25558
|
-
});
|
|
25559
|
-
}
|
|
25560
|
-
}
|
|
25561
|
-
|
|
25562
|
-
_shouldShowTooltip() {
|
|
25563
|
-
const {
|
|
25564
|
-
toggleOnHover,
|
|
25565
|
-
showOnMount
|
|
25566
|
-
} = this.props;
|
|
25567
|
-
const {
|
|
25568
|
-
dismissed
|
|
25569
|
-
} = this.state; // If the tooltip was dismissed, or we're not sure yet, don't show it.
|
|
25570
|
-
|
|
25571
|
-
if (dismissed) {
|
|
25572
|
-
return false;
|
|
25573
|
-
} // If the tooltip should show on mount, and nothing has changed yet
|
|
25574
|
-
// that would cause it to hide (i.e., the `dismissed` case above fell
|
|
25575
|
-
// through), show the tooltip.
|
|
25576
|
-
|
|
25577
|
-
|
|
25578
|
-
if (showOnMount) {
|
|
25579
|
-
return true;
|
|
25580
|
-
} // If the target is hovered, and our visibility is hover-based, show
|
|
25581
|
-
// the tooltip.
|
|
25582
|
-
|
|
25583
|
-
|
|
25584
|
-
if (toggleOnHover && this.state.hovered) {
|
|
25585
|
-
return true;
|
|
25586
|
-
}
|
|
25587
|
-
|
|
25588
|
-
return false;
|
|
25589
|
-
}
|
|
25590
|
-
|
|
25591
|
-
render() {
|
|
25592
|
-
const {
|
|
25593
|
-
side,
|
|
25594
|
-
children,
|
|
25595
|
-
content,
|
|
25596
|
-
dismissOnClickClose
|
|
25597
|
-
} = this.props;
|
|
25598
|
-
const {
|
|
25599
|
-
onMouseEnter,
|
|
25600
|
-
onMouseLeave
|
|
25601
|
-
} = this.props;
|
|
25602
|
-
return /*#__PURE__*/React__namespace.createElement(wonderBlocksPopover.Popover, {
|
|
25603
|
-
content: /*#__PURE__*/React__namespace.createElement(wonderBlocksPopover.PopoverContentCore, {
|
|
25604
|
-
color: this._popoverContentColor(),
|
|
25605
|
-
closeButtonVisible: dismissOnClickClose,
|
|
25606
|
-
style: {}
|
|
25607
|
-
}, content),
|
|
25608
|
-
placement: side,
|
|
25609
|
-
opened: this._shouldShowTooltip(),
|
|
25610
|
-
onClose: this._handleDismiss,
|
|
25611
|
-
dismissEnabled: false,
|
|
25612
|
-
testId: "question-id"
|
|
25613
|
-
}, /*#__PURE__*/React__namespace.createElement("div", {
|
|
25614
|
-
onMouseEnter: () => {
|
|
25615
|
-
onMouseEnter && onMouseEnter();
|
|
25616
|
-
this.setState({
|
|
25617
|
-
hovered: true
|
|
25618
|
-
});
|
|
25619
|
-
},
|
|
25620
|
-
onMouseLeave: () => {
|
|
25621
|
-
onMouseLeave && onMouseLeave();
|
|
25622
|
-
this.setState({
|
|
25623
|
-
hovered: false
|
|
25624
|
-
});
|
|
25625
|
-
}
|
|
25626
|
-
}, children));
|
|
25627
|
-
}
|
|
25628
|
-
|
|
25629
|
-
}
|
|
25630
|
-
|
|
25631
|
-
_defineProperty(NewTooltip, "defaultProps", DefaultPropValues);
|
|
25632
|
-
|
|
25633
|
-
class HighlightTooltip extends React__namespace.PureComponent {
|
|
25634
|
-
constructor() {
|
|
25635
|
-
super(...arguments);
|
|
25636
|
-
|
|
25637
|
-
_defineProperty(this, "_tooltip", void 0);
|
|
25638
|
-
}
|
|
25639
|
-
|
|
25640
|
-
_getFocusRect() {
|
|
25641
|
-
const {
|
|
25642
|
-
focusNode,
|
|
25643
|
-
focusOffset,
|
|
25644
|
-
offsetParent
|
|
25645
|
-
} = this.props; // Get a range of *just* the focus point of the selection.
|
|
25646
|
-
|
|
25647
|
-
const focusRange = document.createRange();
|
|
25648
|
-
focusRange.setStart(focusNode, focusOffset);
|
|
25649
|
-
focusRange.setEnd(focusNode, focusOffset); // Then, get the bounding box of the collapsed range. This will be a
|
|
25650
|
-
// zero-width rectangle, but still have positioning information, which
|
|
25651
|
-
// we can use the position the tooltip.
|
|
25652
|
-
//
|
|
25653
|
-
// NOTE(mdr): If we used getClientBoundingRect here instead, Safari
|
|
25654
|
-
// would return an unpositioned rect. But all tested browsers at
|
|
25655
|
-
// time of writing (latest Chrome, Firefox, Safari) return at least
|
|
25656
|
-
// one rectangle from getClientRects, and it's well-positioned.
|
|
25657
|
-
|
|
25658
|
-
const focusRect = focusRange.getClientRects()[0]; // NOTE(mdr): ...except in the case where the focus is between two
|
|
25659
|
-
// paragraphs, in which case the focus range has no client rects?
|
|
25660
|
-
// Not sure why, or in what browsers (only noticed in Chrome 60),
|
|
25661
|
-
// but let's catch that case and bail out.
|
|
25662
|
-
// TODO(mdr): Instead, we should somehow walk back the range until we
|
|
25663
|
-
// find an appropriate position for the tooltip. Sounds tricky!
|
|
25664
|
-
|
|
25665
|
-
if (!focusRect) {
|
|
25666
|
-
Log.log("[Highlighting] Known bug: Could not determine the focus " + 'position, so did not show an "Add Highlight" tooltip. ' + "https://app.asana.com/0/329800276300868/413878480039713 " + "(see also /r/asana-links)");
|
|
25667
|
-
return null;
|
|
25668
|
-
} // Compute the desired position of the tooltip relative to the offset
|
|
25669
|
-
// parent.
|
|
24527
|
+
if (!focusRect) {
|
|
24528
|
+
Log.log("[Highlighting] Known bug: Could not determine the focus " + 'position, so did not show an "Add Highlight" tooltip. ' + "https://app.asana.com/0/329800276300868/413878480039713 " + "(see also /r/asana-links)");
|
|
24529
|
+
return null;
|
|
24530
|
+
} // Compute the desired position of the tooltip relative to the offset
|
|
24531
|
+
// parent.
|
|
25670
24532
|
|
|
25671
24533
|
|
|
25672
24534
|
const {
|
|
@@ -25690,29 +24552,30 @@ class HighlightTooltip extends React__namespace.PureComponent {
|
|
|
25690
24552
|
|
|
25691
24553
|
if (!focusRect) {
|
|
25692
24554
|
return null;
|
|
25693
|
-
}
|
|
24555
|
+
} // using div instead of TooltipContent because
|
|
24556
|
+
// TooltipContent wouldn't let me overwrite
|
|
24557
|
+
// user-select and onClick
|
|
24558
|
+
|
|
25694
24559
|
|
|
25695
24560
|
const content = /*#__PURE__*/React__namespace.createElement("div", {
|
|
25696
|
-
className: aphrodite.css(styles$x.tooltipLabel)
|
|
24561
|
+
className: aphrodite.css(styles$x.tooltipLabel),
|
|
24562
|
+
onClick: this.props.onClick
|
|
25697
24563
|
}, this.props.label);
|
|
25698
|
-
|
|
25699
|
-
|
|
25700
|
-
|
|
25701
|
-
|
|
25702
|
-
|
|
24564
|
+
const style = {
|
|
24565
|
+
position: "absolute",
|
|
24566
|
+
left: focusRect.left,
|
|
24567
|
+
// offset the spacing WB provides around tooltips
|
|
24568
|
+
top: "calc(".concat(Math.round(focusRect.top), "px + 0.95em)"),
|
|
24569
|
+
height: 0
|
|
24570
|
+
};
|
|
24571
|
+
return /*#__PURE__*/React__namespace.createElement("div", {
|
|
24572
|
+
style: style,
|
|
25703
24573
|
onMouseEnter: this.props.onMouseEnter,
|
|
25704
|
-
onMouseLeave: this.props.onMouseLeave
|
|
25705
|
-
|
|
25706
|
-
|
|
25707
|
-
|
|
25708
|
-
}, /*#__PURE__*/React__namespace.createElement("div",
|
|
25709
|
-
style: {
|
|
25710
|
-
position: "absolute",
|
|
25711
|
-
left: focusRect.left,
|
|
25712
|
-
top: focusRect.top,
|
|
25713
|
-
height: focusRect.height
|
|
25714
|
-
}
|
|
25715
|
-
}));
|
|
24574
|
+
onMouseLeave: this.props.onMouseLeave
|
|
24575
|
+
}, /*#__PURE__*/React__namespace.createElement(Tooltip__default["default"], {
|
|
24576
|
+
content: content,
|
|
24577
|
+
opened: true
|
|
24578
|
+
}, /*#__PURE__*/React__namespace.createElement("div", null)));
|
|
25716
24579
|
}
|
|
25717
24580
|
|
|
25718
24581
|
}
|
|
@@ -25724,7 +24587,10 @@ const styles$x = aphrodite.StyleSheet.create({
|
|
|
25724
24587
|
// the user accidentally selects the "Add highlight" tooltip text, then
|
|
25725
24588
|
// we lose our reference to the _actual_ text they want to highlight,
|
|
25726
24589
|
// and the "Add highlight" action fails.
|
|
25727
|
-
userSelect: "none"
|
|
24590
|
+
userSelect: "none",
|
|
24591
|
+
fontFamily: "\"Lato\", sans-serif",
|
|
24592
|
+
padding: "10px ".concat(Spacing__default["default"].medium_16, "px"),
|
|
24593
|
+
cursor: "pointer"
|
|
25728
24594
|
}
|
|
25729
24595
|
});
|
|
25730
24596
|
|
|
@@ -25875,7 +24741,7 @@ class SelectionTracker extends React__namespace.PureComponent {
|
|
|
25875
24741
|
});
|
|
25876
24742
|
|
|
25877
24743
|
_defineProperty(this, "_handleSelectionChange", () => {
|
|
25878
|
-
this._updateTrackedSelection(
|
|
24744
|
+
this._updateTrackedSelection();
|
|
25879
24745
|
|
|
25880
24746
|
if (this.state.mouseState === "down") {
|
|
25881
24747
|
this.setState({
|
|
@@ -25901,15 +24767,15 @@ class SelectionTracker extends React__namespace.PureComponent {
|
|
|
25901
24767
|
this._updateListeners(false, this.props.enabled);
|
|
25902
24768
|
}
|
|
25903
24769
|
|
|
25904
|
-
|
|
25905
|
-
if (this.props.buildHighlight !==
|
|
24770
|
+
componentDidUpdate(prevProps) {
|
|
24771
|
+
if (this.props.buildHighlight !== prevProps.buildHighlight) {
|
|
25906
24772
|
// The highlight-building function changed, so the
|
|
25907
24773
|
// proposedHighlight we built with it might be different, or no
|
|
25908
24774
|
// longer be valid. Update accordingly.
|
|
25909
|
-
this._updateTrackedSelection(
|
|
24775
|
+
this._updateTrackedSelection();
|
|
25910
24776
|
}
|
|
25911
24777
|
|
|
25912
|
-
this._updateListeners(
|
|
24778
|
+
this._updateListeners(prevProps.enabled, this.props.enabled);
|
|
25913
24779
|
}
|
|
25914
24780
|
|
|
25915
24781
|
componentWillUnmount() {
|
|
@@ -25966,15 +24832,18 @@ class SelectionTracker extends React__namespace.PureComponent {
|
|
|
25966
24832
|
};
|
|
25967
24833
|
}
|
|
25968
24834
|
/**
|
|
25969
|
-
* Compute the
|
|
24835
|
+
* Compute and update the TrackedSelection to reflect the document state.
|
|
25970
24836
|
*/
|
|
25971
24837
|
|
|
25972
24838
|
|
|
25973
|
-
|
|
24839
|
+
_updateTrackedSelection() {
|
|
25974
24840
|
const focusAndRange = this._computeFocusAndRange();
|
|
25975
24841
|
|
|
25976
24842
|
if (!focusAndRange) {
|
|
25977
|
-
|
|
24843
|
+
this.setState({
|
|
24844
|
+
trackedSelection: null
|
|
24845
|
+
});
|
|
24846
|
+
return;
|
|
25978
24847
|
}
|
|
25979
24848
|
|
|
25980
24849
|
const {
|
|
@@ -25982,26 +24851,20 @@ class SelectionTracker extends React__namespace.PureComponent {
|
|
|
25982
24851
|
focusOffset,
|
|
25983
24852
|
range
|
|
25984
24853
|
} = focusAndRange;
|
|
25985
|
-
const proposedHighlight = buildHighlight(range);
|
|
24854
|
+
const proposedHighlight = this.props.buildHighlight(range);
|
|
25986
24855
|
|
|
25987
24856
|
if (!proposedHighlight) {
|
|
25988
|
-
|
|
24857
|
+
this.setState({
|
|
24858
|
+
trackedSelection: null
|
|
24859
|
+
});
|
|
24860
|
+
return;
|
|
25989
24861
|
}
|
|
25990
24862
|
|
|
25991
|
-
|
|
24863
|
+
const trackedSelection = {
|
|
25992
24864
|
focusNode,
|
|
25993
24865
|
focusOffset,
|
|
25994
24866
|
proposedHighlight
|
|
25995
24867
|
};
|
|
25996
|
-
}
|
|
25997
|
-
/**
|
|
25998
|
-
* Update the TrackedSelection to reflect the document state.
|
|
25999
|
-
*/
|
|
26000
|
-
|
|
26001
|
-
|
|
26002
|
-
_updateTrackedSelection(buildHighlight) {
|
|
26003
|
-
const trackedSelection = this._computeTrackedSelection(buildHighlight);
|
|
26004
|
-
|
|
26005
24868
|
this.setState({
|
|
26006
24869
|
trackedSelection
|
|
26007
24870
|
});
|
|
@@ -26379,10 +25242,6 @@ const styles$w = aphrodite.StyleSheet.create({
|
|
|
26379
25242
|
}
|
|
26380
25243
|
});
|
|
26381
25244
|
|
|
26382
|
-
const getLineHeightForNode = (line1, line2) => {
|
|
26383
|
-
return $__default["default"](line2).offset().top - $__default["default"](line1).offset().top;
|
|
26384
|
-
};
|
|
26385
|
-
|
|
26386
25245
|
function getInitialParseState() {
|
|
26387
25246
|
return {
|
|
26388
25247
|
currentRef: [],
|
|
@@ -26750,65 +25609,40 @@ var PassageMarkdown = {
|
|
|
26750
25609
|
getInitialParseState
|
|
26751
25610
|
};
|
|
26752
25611
|
|
|
26753
|
-
// A fake paragraph to measure the line height of the passage
|
|
26754
|
-
//
|
|
26755
|
-
// the line height often ends up being a fractional number of pixels close to
|
|
26756
|
-
// 22 pixels.
|
|
25612
|
+
// A fake paragraph to measure the line height of the passage,
|
|
25613
|
+
// so we can adapt to browser zoom
|
|
26757
25614
|
class LineHeightMeasurer extends React__namespace.Component {
|
|
26758
25615
|
constructor() {
|
|
26759
25616
|
super(...arguments);
|
|
26760
25617
|
|
|
26761
|
-
_defineProperty(this, "
|
|
26762
|
-
|
|
26763
|
-
_defineProperty(this, "body", void 0);
|
|
26764
|
-
|
|
26765
|
-
_defineProperty(this, "end", void 0);
|
|
25618
|
+
_defineProperty(this, "_line", void 0);
|
|
26766
25619
|
}
|
|
26767
25620
|
|
|
26768
25621
|
measureLineHeight() {
|
|
26769
|
-
if (
|
|
26770
|
-
|
|
25622
|
+
if (!this._line) {
|
|
25623
|
+
return 0;
|
|
26771
25624
|
}
|
|
26772
25625
|
|
|
26773
|
-
return this.
|
|
26774
|
-
}
|
|
26775
|
-
|
|
26776
|
-
forceMeasureLineHeight() {
|
|
26777
|
-
const body = this.body;
|
|
26778
|
-
const end = this.end;
|
|
26779
|
-
|
|
26780
|
-
if (!body || !end) {
|
|
26781
|
-
return;
|
|
26782
|
-
} // Add some text which magically fills an entire line.
|
|
26783
|
-
|
|
26784
|
-
|
|
26785
|
-
body.textContent = " \u0080"; // Now, the line height is the difference between the top of the
|
|
26786
|
-
// second line and the top of the first line.
|
|
26787
|
-
|
|
26788
|
-
this._cachedLineHeight = getLineHeightForNode(body, end); // Clear out the first line so it doesn't overlap the passage.
|
|
26789
|
-
|
|
26790
|
-
body.textContent = "";
|
|
25626
|
+
return this._line.clientHeight;
|
|
26791
25627
|
}
|
|
26792
25628
|
|
|
26793
25629
|
render() {
|
|
26794
25630
|
return /*#__PURE__*/React__namespace.createElement("div", {
|
|
26795
|
-
className: aphrodite.css(styles$v.measurer)
|
|
26796
|
-
|
|
26797
|
-
|
|
25631
|
+
className: aphrodite.css(styles$v.measurer),
|
|
25632
|
+
"aria-hidden": "true"
|
|
25633
|
+
}, /*#__PURE__*/React__namespace.createElement("div", {
|
|
25634
|
+
ref: ref => this._line = ref,
|
|
26798
25635
|
className: "paragraph"
|
|
26799
|
-
}
|
|
26800
|
-
ref: ref => this.end = ref
|
|
26801
|
-
})));
|
|
25636
|
+
}, "Line Height Measurement"));
|
|
26802
25637
|
}
|
|
26803
25638
|
|
|
26804
25639
|
}
|
|
26805
|
-
|
|
26806
25640
|
const styles$v = aphrodite.StyleSheet.create({
|
|
26807
25641
|
measurer: {
|
|
26808
25642
|
position: "absolute",
|
|
26809
|
-
width: "100%",
|
|
26810
25643
|
top: 0,
|
|
26811
25644
|
left: 0,
|
|
25645
|
+
visibility: "hidden",
|
|
26812
25646
|
// keep from blocking text selection
|
|
26813
25647
|
zIndex: -1
|
|
26814
25648
|
}
|
|
@@ -26855,7 +25689,7 @@ class Passage extends React__namespace.Component {
|
|
|
26855
25689
|
// listen for resize events.
|
|
26856
25690
|
|
|
26857
25691
|
|
|
26858
|
-
(_this$_lineHeightMeas = this._lineHeightMeasurerRef) === null || _this$_lineHeightMeas === void 0 ? void 0 : _this$_lineHeightMeas.
|
|
25692
|
+
(_this$_lineHeightMeas = this._lineHeightMeasurerRef) === null || _this$_lineHeightMeas === void 0 ? void 0 : _this$_lineHeightMeas.measureLineHeight();
|
|
26859
25693
|
|
|
26860
25694
|
this._updateState();
|
|
26861
25695
|
}, 500);
|
|
@@ -27419,6 +26253,45 @@ var PassageRef$1 = {
|
|
|
27419
26253
|
}
|
|
27420
26254
|
};
|
|
27421
26255
|
|
|
26256
|
+
/**
|
|
26257
|
+
* A default set of media queries to use for different screen sizes. Based on
|
|
26258
|
+
* the breakpoints from purecss.
|
|
26259
|
+
*
|
|
26260
|
+
* Use like:
|
|
26261
|
+
* StyleSheet.create({
|
|
26262
|
+
* blah: {
|
|
26263
|
+
* [mediaQueries.xs]: {
|
|
26264
|
+
*
|
|
26265
|
+
* },
|
|
26266
|
+
* },
|
|
26267
|
+
* });
|
|
26268
|
+
*/
|
|
26269
|
+
const {
|
|
26270
|
+
pureXsMax: pureXsMax$1,
|
|
26271
|
+
pureSmMin: pureSmMin$1,
|
|
26272
|
+
pureSmMax: pureSmMax$1,
|
|
26273
|
+
pureMdMin: pureMdMin$1,
|
|
26274
|
+
pureMdMax: pureMdMax$1,
|
|
26275
|
+
pureLgMin: pureLgMin$1,
|
|
26276
|
+
pureLgMax: pureLgMax$1,
|
|
26277
|
+
pureXlMin: pureXlMin$1
|
|
26278
|
+
} = constants$1;
|
|
26279
|
+
var mediaQueries = {
|
|
26280
|
+
xs: "@media screen and (max-width: ".concat(pureXsMax$1, ")"),
|
|
26281
|
+
sm: "@media screen and (min-width: ".concat(pureSmMin$1, ") and ") + "(max-width: ".concat(pureSmMax$1, ")"),
|
|
26282
|
+
md: "@media screen and (min-width: ".concat(pureMdMin$1, ") and ") + "(max-width: ".concat(pureMdMax$1, ")"),
|
|
26283
|
+
lg: "@media screen and (min-width: ".concat(pureLgMin$1, ") and ") + "(max-width: ".concat(pureLgMax$1, ")"),
|
|
26284
|
+
xl: "@media screen and (min-width: ".concat(pureXlMin$1, ")"),
|
|
26285
|
+
xsOrSmaller: "@media screen and (max-width: ".concat(pureXsMax$1, ")"),
|
|
26286
|
+
smOrSmaller: "@media screen and (max-width: ".concat(pureSmMax$1, ")"),
|
|
26287
|
+
mdOrSmaller: "@media screen and (max-width: ".concat(pureMdMax$1, ")"),
|
|
26288
|
+
lgOrSmaller: "@media screen and (max-width: ".concat(pureLgMax$1, ")"),
|
|
26289
|
+
smOrLarger: "@media screen and (min-width: ".concat(pureSmMin$1, ")"),
|
|
26290
|
+
mdOrLarger: "@media screen and (min-width: ".concat(pureMdMin$1, ")"),
|
|
26291
|
+
lgOrLarger: "@media screen and (min-width: ".concat(pureLgMin$1, ")"),
|
|
26292
|
+
xlOrLarger: "@media screen and (min-width: ".concat(pureXlMin$1, ")")
|
|
26293
|
+
};
|
|
26294
|
+
|
|
27422
26295
|
const {
|
|
27423
26296
|
zIndexAboveScratchpad,
|
|
27424
26297
|
zIndexInteractiveComponent,
|
|
@@ -29144,6 +28017,129 @@ class Radio$1 extends React__namespace.Component {
|
|
|
29144
28017
|
});
|
|
29145
28018
|
}
|
|
29146
28019
|
|
|
28020
|
+
static validate(userInput, rubric) {
|
|
28021
|
+
const numSelected = userInput.choicesSelected.reduce((sum, selected) => {
|
|
28022
|
+
return sum + (selected ? 1 : 0);
|
|
28023
|
+
}, 0);
|
|
28024
|
+
|
|
28025
|
+
if (numSelected === 0) {
|
|
28026
|
+
return {
|
|
28027
|
+
type: "invalid",
|
|
28028
|
+
message: null
|
|
28029
|
+
};
|
|
28030
|
+
}
|
|
28031
|
+
|
|
28032
|
+
if (userInput.numCorrect && userInput.numCorrect > 1 && numSelected !== userInput.numCorrect) {
|
|
28033
|
+
return {
|
|
28034
|
+
type: "invalid",
|
|
28035
|
+
message: i18n__namespace._("Please choose the correct number of answers.")
|
|
28036
|
+
}; // If NOTA and some other answer are checked, ...
|
|
28037
|
+
}
|
|
28038
|
+
|
|
28039
|
+
if (userInput.noneOfTheAboveSelected && numSelected > 1) {
|
|
28040
|
+
return {
|
|
28041
|
+
type: "invalid",
|
|
28042
|
+
message: i18n__namespace._("'None of the above' may not be selected " + "when other answers are selected.")
|
|
28043
|
+
};
|
|
28044
|
+
}
|
|
28045
|
+
|
|
28046
|
+
const correct = userInput.choicesSelected.every((selected, i) => {
|
|
28047
|
+
let isCorrect;
|
|
28048
|
+
|
|
28049
|
+
if (userInput.noneOfTheAboveIndex === i) {
|
|
28050
|
+
isCorrect = rubric.choices.every((choice, j) => {
|
|
28051
|
+
return i === j || !choice.correct;
|
|
28052
|
+
});
|
|
28053
|
+
} else {
|
|
28054
|
+
isCorrect = !!rubric.choices[i].correct;
|
|
28055
|
+
}
|
|
28056
|
+
|
|
28057
|
+
return isCorrect === selected;
|
|
28058
|
+
});
|
|
28059
|
+
return {
|
|
28060
|
+
type: "points",
|
|
28061
|
+
earned: correct ? 1 : 0,
|
|
28062
|
+
total: 1,
|
|
28063
|
+
message: null
|
|
28064
|
+
};
|
|
28065
|
+
}
|
|
28066
|
+
|
|
28067
|
+
static getUserInputFromProps(props) {
|
|
28068
|
+
// Return checked inputs in the form {choicesSelected: [bool]}. (Dear
|
|
28069
|
+
// future timeline implementers: this used to be {value: i} before
|
|
28070
|
+
// multiple select was added)
|
|
28071
|
+
if (props.choiceStates) {
|
|
28072
|
+
let noneOfTheAboveIndex = null;
|
|
28073
|
+
let noneOfTheAboveSelected = false;
|
|
28074
|
+
const choiceStates = props.choiceStates;
|
|
28075
|
+
const choicesSelected = choiceStates.map(() => false);
|
|
28076
|
+
const countChoices = props.countChoices;
|
|
28077
|
+
const numCorrect = props.numCorrect;
|
|
28078
|
+
|
|
28079
|
+
for (let i = 0; i < choicesSelected.length; i++) {
|
|
28080
|
+
const index = props.choices[i].originalIndex;
|
|
28081
|
+
choicesSelected[index] = choiceStates[i].selected;
|
|
28082
|
+
|
|
28083
|
+
if (props.choices[i].isNoneOfTheAbove) {
|
|
28084
|
+
noneOfTheAboveIndex = index;
|
|
28085
|
+
|
|
28086
|
+
if (choicesSelected[i]) {
|
|
28087
|
+
noneOfTheAboveSelected = true;
|
|
28088
|
+
}
|
|
28089
|
+
}
|
|
28090
|
+
}
|
|
28091
|
+
|
|
28092
|
+
return {
|
|
28093
|
+
countChoices,
|
|
28094
|
+
choicesSelected,
|
|
28095
|
+
numCorrect,
|
|
28096
|
+
noneOfTheAboveIndex,
|
|
28097
|
+
noneOfTheAboveSelected
|
|
28098
|
+
}; // Support legacy choiceState implementation
|
|
28099
|
+
}
|
|
28100
|
+
/* istanbul ignore if - props.values is deprecated */
|
|
28101
|
+
|
|
28102
|
+
|
|
28103
|
+
const {
|
|
28104
|
+
values
|
|
28105
|
+
} = props;
|
|
28106
|
+
|
|
28107
|
+
if (values) {
|
|
28108
|
+
let noneOfTheAboveIndex = null;
|
|
28109
|
+
let noneOfTheAboveSelected = false;
|
|
28110
|
+
const choicesSelected = [...values];
|
|
28111
|
+
const countChoices = props.countChoices;
|
|
28112
|
+
const numCorrect = props.numCorrect;
|
|
28113
|
+
const valuesLength = values.length;
|
|
28114
|
+
|
|
28115
|
+
for (let i = 0; i < valuesLength; i++) {
|
|
28116
|
+
const index = props.choices[i].originalIndex;
|
|
28117
|
+
choicesSelected[index] = values[i];
|
|
28118
|
+
|
|
28119
|
+
if (props.choices[i].isNoneOfTheAbove) {
|
|
28120
|
+
noneOfTheAboveIndex = index;
|
|
28121
|
+
|
|
28122
|
+
if (choicesSelected[i]) {
|
|
28123
|
+
noneOfTheAboveSelected = true;
|
|
28124
|
+
}
|
|
28125
|
+
}
|
|
28126
|
+
}
|
|
28127
|
+
|
|
28128
|
+
return {
|
|
28129
|
+
choicesSelected,
|
|
28130
|
+
noneOfTheAboveIndex,
|
|
28131
|
+
noneOfTheAboveSelected,
|
|
28132
|
+
countChoices,
|
|
28133
|
+
numCorrect
|
|
28134
|
+
};
|
|
28135
|
+
} // Nothing checked
|
|
28136
|
+
|
|
28137
|
+
|
|
28138
|
+
return {
|
|
28139
|
+
choicesSelected: props.choices.map(() => false)
|
|
28140
|
+
};
|
|
28141
|
+
}
|
|
28142
|
+
|
|
29147
28143
|
// TODO(LP-10672): I think this might be unused right now. I can't find anywhere
|
|
29148
28144
|
// that we pass a value to `.focus()` and it seems to have been used for
|
|
29149
28145
|
// adding hints when editing.
|
|
@@ -29274,129 +28270,6 @@ class Radio$1 extends React__namespace.Component {
|
|
|
29274
28270
|
});
|
|
29275
28271
|
}
|
|
29276
28272
|
|
|
29277
|
-
static validate(userInput, rubric) {
|
|
29278
|
-
const numSelected = userInput.choicesSelected.reduce((sum, selected) => {
|
|
29279
|
-
return sum + (selected ? 1 : 0);
|
|
29280
|
-
}, 0);
|
|
29281
|
-
|
|
29282
|
-
if (numSelected === 0) {
|
|
29283
|
-
return {
|
|
29284
|
-
type: "invalid",
|
|
29285
|
-
message: null
|
|
29286
|
-
};
|
|
29287
|
-
}
|
|
29288
|
-
|
|
29289
|
-
if (userInput.numCorrect && userInput.numCorrect > 1 && numSelected !== userInput.numCorrect) {
|
|
29290
|
-
return {
|
|
29291
|
-
type: "invalid",
|
|
29292
|
-
message: i18n__namespace._("Please choose the correct number of answers.")
|
|
29293
|
-
}; // If NOTA and some other answer are checked, ...
|
|
29294
|
-
}
|
|
29295
|
-
|
|
29296
|
-
if (userInput.noneOfTheAboveSelected && numSelected > 1) {
|
|
29297
|
-
return {
|
|
29298
|
-
type: "invalid",
|
|
29299
|
-
message: i18n__namespace._("'None of the above' may not be selected " + "when other answers are selected.")
|
|
29300
|
-
};
|
|
29301
|
-
}
|
|
29302
|
-
|
|
29303
|
-
const correct = userInput.choicesSelected.every((selected, i) => {
|
|
29304
|
-
let isCorrect;
|
|
29305
|
-
|
|
29306
|
-
if (userInput.noneOfTheAboveIndex === i) {
|
|
29307
|
-
isCorrect = rubric.choices.every((choice, j) => {
|
|
29308
|
-
return i === j || !choice.correct;
|
|
29309
|
-
});
|
|
29310
|
-
} else {
|
|
29311
|
-
isCorrect = !!rubric.choices[i].correct;
|
|
29312
|
-
}
|
|
29313
|
-
|
|
29314
|
-
return isCorrect === selected;
|
|
29315
|
-
});
|
|
29316
|
-
return {
|
|
29317
|
-
type: "points",
|
|
29318
|
-
earned: correct ? 1 : 0,
|
|
29319
|
-
total: 1,
|
|
29320
|
-
message: null
|
|
29321
|
-
};
|
|
29322
|
-
}
|
|
29323
|
-
|
|
29324
|
-
static getUserInputFromProps(props) {
|
|
29325
|
-
// Return checked inputs in the form {choicesSelected: [bool]}. (Dear
|
|
29326
|
-
// future timeline implementers: this used to be {value: i} before
|
|
29327
|
-
// multiple select was added)
|
|
29328
|
-
if (props.choiceStates) {
|
|
29329
|
-
let noneOfTheAboveIndex = null;
|
|
29330
|
-
let noneOfTheAboveSelected = false;
|
|
29331
|
-
const choiceStates = props.choiceStates;
|
|
29332
|
-
const choicesSelected = choiceStates.map(() => false);
|
|
29333
|
-
const countChoices = props.countChoices;
|
|
29334
|
-
const numCorrect = props.numCorrect;
|
|
29335
|
-
|
|
29336
|
-
for (let i = 0; i < choicesSelected.length; i++) {
|
|
29337
|
-
const index = props.choices[i].originalIndex;
|
|
29338
|
-
choicesSelected[index] = choiceStates[i].selected;
|
|
29339
|
-
|
|
29340
|
-
if (props.choices[i].isNoneOfTheAbove) {
|
|
29341
|
-
noneOfTheAboveIndex = index;
|
|
29342
|
-
|
|
29343
|
-
if (choicesSelected[i]) {
|
|
29344
|
-
noneOfTheAboveSelected = true;
|
|
29345
|
-
}
|
|
29346
|
-
}
|
|
29347
|
-
}
|
|
29348
|
-
|
|
29349
|
-
return {
|
|
29350
|
-
countChoices,
|
|
29351
|
-
choicesSelected,
|
|
29352
|
-
numCorrect,
|
|
29353
|
-
noneOfTheAboveIndex,
|
|
29354
|
-
noneOfTheAboveSelected
|
|
29355
|
-
}; // Support legacy choiceState implementation
|
|
29356
|
-
}
|
|
29357
|
-
/* istanbul ignore if - props.values is deprecated */
|
|
29358
|
-
|
|
29359
|
-
|
|
29360
|
-
const {
|
|
29361
|
-
values
|
|
29362
|
-
} = props;
|
|
29363
|
-
|
|
29364
|
-
if (values) {
|
|
29365
|
-
let noneOfTheAboveIndex = null;
|
|
29366
|
-
let noneOfTheAboveSelected = false;
|
|
29367
|
-
const choicesSelected = [...values];
|
|
29368
|
-
const countChoices = props.countChoices;
|
|
29369
|
-
const numCorrect = props.numCorrect;
|
|
29370
|
-
const valuesLength = values.length;
|
|
29371
|
-
|
|
29372
|
-
for (let i = 0; i < valuesLength; i++) {
|
|
29373
|
-
const index = props.choices[i].originalIndex;
|
|
29374
|
-
choicesSelected[index] = values[i];
|
|
29375
|
-
|
|
29376
|
-
if (props.choices[i].isNoneOfTheAbove) {
|
|
29377
|
-
noneOfTheAboveIndex = index;
|
|
29378
|
-
|
|
29379
|
-
if (choicesSelected[i]) {
|
|
29380
|
-
noneOfTheAboveSelected = true;
|
|
29381
|
-
}
|
|
29382
|
-
}
|
|
29383
|
-
}
|
|
29384
|
-
|
|
29385
|
-
return {
|
|
29386
|
-
choicesSelected,
|
|
29387
|
-
noneOfTheAboveIndex,
|
|
29388
|
-
noneOfTheAboveSelected,
|
|
29389
|
-
countChoices,
|
|
29390
|
-
numCorrect
|
|
29391
|
-
};
|
|
29392
|
-
} // Nothing checked
|
|
29393
|
-
|
|
29394
|
-
|
|
29395
|
-
return {
|
|
29396
|
-
choicesSelected: props.choices.map(() => false)
|
|
29397
|
-
};
|
|
29398
|
-
}
|
|
29399
|
-
|
|
29400
28273
|
}
|
|
29401
28274
|
|
|
29402
28275
|
_defineProperty(Radio$1, "defaultProps", {
|
|
@@ -36054,51 +34927,1032 @@ class InteractiveGraph extends React__namespace.Component {
|
|
|
36054
34927
|
// actually just wrong
|
|
36055
34928
|
|
|
36056
34929
|
|
|
36057
|
-
if (!hasValue || ___default["default"].isEqual(state, rubric.graph)) {
|
|
36058
|
-
// We're where we started.
|
|
36059
|
-
return {
|
|
36060
|
-
type: "invalid",
|
|
36061
|
-
message: null
|
|
36062
|
-
};
|
|
34930
|
+
if (!hasValue || ___default["default"].isEqual(state, rubric.graph)) {
|
|
34931
|
+
// We're where we started.
|
|
34932
|
+
return {
|
|
34933
|
+
type: "invalid",
|
|
34934
|
+
message: null
|
|
34935
|
+
};
|
|
34936
|
+
}
|
|
34937
|
+
|
|
34938
|
+
return {
|
|
34939
|
+
type: "points",
|
|
34940
|
+
earned: 0,
|
|
34941
|
+
total: 1,
|
|
34942
|
+
message: null
|
|
34943
|
+
};
|
|
34944
|
+
}
|
|
34945
|
+
|
|
34946
|
+
static getUserInputFromProps(props) {
|
|
34947
|
+
return props.graph;
|
|
34948
|
+
}
|
|
34949
|
+
|
|
34950
|
+
}
|
|
34951
|
+
|
|
34952
|
+
_defineProperty(InteractiveGraph, "defaultProps", {
|
|
34953
|
+
labels: ["x", "y"],
|
|
34954
|
+
range: [[-10, 10], [-10, 10]],
|
|
34955
|
+
step: [1, 1],
|
|
34956
|
+
// $FlowFixMe[prop-missing]
|
|
34957
|
+
backgroundImage: defaultBackgroundImage$1,
|
|
34958
|
+
markings: "graph",
|
|
34959
|
+
showTooltips: false,
|
|
34960
|
+
showProtractor: false,
|
|
34961
|
+
showRuler: false,
|
|
34962
|
+
rulerLabel: "",
|
|
34963
|
+
rulerTicks: 10,
|
|
34964
|
+
graph: {
|
|
34965
|
+
type: "linear"
|
|
34966
|
+
}
|
|
34967
|
+
});
|
|
34968
|
+
|
|
34969
|
+
var InteractiveGraph$1 = {
|
|
34970
|
+
name: "interactive-graph",
|
|
34971
|
+
displayName: "Interactive graph",
|
|
34972
|
+
widget: InteractiveGraph
|
|
34973
|
+
};
|
|
34974
|
+
|
|
34975
|
+
const black = "#000000";
|
|
34976
|
+
const grayDarker = "#333333";
|
|
34977
|
+
const grayDark = "#555555";
|
|
34978
|
+
const gray = "#999999";
|
|
34979
|
+
const grayLight = "#AAAAAA";
|
|
34980
|
+
const grayLighter = "#DDDDDD";
|
|
34981
|
+
const white = "#FFFFFF";
|
|
34982
|
+
const blue = "#005A88";
|
|
34983
|
+
const blueDark = "#2C3747";
|
|
34984
|
+
const green = "#76A005";
|
|
34985
|
+
const red = "#CF5044";
|
|
34986
|
+
const yellow = "#FFC40D";
|
|
34987
|
+
const orange = "#BF4F04";
|
|
34988
|
+
const pink = "#C3325F";
|
|
34989
|
+
const purple = "#7A43B6";
|
|
34990
|
+
const bodyBackground = "#FFFFFF";
|
|
34991
|
+
const textColor = "#444444";
|
|
34992
|
+
const linkColor = "#005987";
|
|
34993
|
+
const linkColorHover = "#678D00";
|
|
34994
|
+
const sansFontFamily = "'Helvetica Neue',Helvetica,Arial,sans-serif";
|
|
34995
|
+
const serifFontFamily = "Georgia,'Times New Roman',Times,serif";
|
|
34996
|
+
const monoFontFamily = "Monaco,Menlo,Consolas,'Courier New',monospace";
|
|
34997
|
+
const baseFontSize = "14px";
|
|
34998
|
+
const baseFontFamily = "inherit";
|
|
34999
|
+
const baseLineHeight = "20px";
|
|
35000
|
+
const altFontFamily = "Georgia,'Times New Roman',Times,serif";
|
|
35001
|
+
const headingsFontFamily = "inherit";
|
|
35002
|
+
const headingsFontWeight = "bold";
|
|
35003
|
+
const headingsColor = "inherit";
|
|
35004
|
+
const fontSizeLarge = "18px";
|
|
35005
|
+
const fontSizeSmall = "12px";
|
|
35006
|
+
const fontSizeMini = "10.5px";
|
|
35007
|
+
const paddingLarge = "11px 19px";
|
|
35008
|
+
const paddingSmall = "2px 10px";
|
|
35009
|
+
const paddingMini = "0 6px";
|
|
35010
|
+
const baseBorderRadius = "4px";
|
|
35011
|
+
const borderRadiusLarge = "6px";
|
|
35012
|
+
const borderRadiusSmall = "3px";
|
|
35013
|
+
const tableBackground = "#000000";
|
|
35014
|
+
const tableBackgroundAccent = "#F9F9F9";
|
|
35015
|
+
const tableBackgroundHover = "#F5F5F5";
|
|
35016
|
+
const tableBorder = "#DDDDDD";
|
|
35017
|
+
const btnBackground = "#FFFFFF";
|
|
35018
|
+
const btnBackgroundHighlight = "rgb(230, 230, 230)";
|
|
35019
|
+
const btnBorder = "#CCCCCC";
|
|
35020
|
+
const btnPrimaryBackground = "#0088CC";
|
|
35021
|
+
const btnPrimaryBackgroundHighlight = "rgb(0, 68, 204)";
|
|
35022
|
+
const btnInfoBackground = "#5BC0DE";
|
|
35023
|
+
const btnInfoBackgroundHighlight = "#2F96B4";
|
|
35024
|
+
const btnSuccessBackground = "#62C462";
|
|
35025
|
+
const btnSuccessBackgroundHighlight = "#51A351";
|
|
35026
|
+
const btnWarningBackground = "rgb(251, 180, 81)";
|
|
35027
|
+
const btnWarningBackgroundHighlight = "#F89406";
|
|
35028
|
+
const btnDangerBackground = "#EE5F5B";
|
|
35029
|
+
const btnDangerBackgroundHighlight = "#BD362F";
|
|
35030
|
+
const btnInverseBackground = "#444444";
|
|
35031
|
+
const btnInverseBackgroundHighlight = "#222222";
|
|
35032
|
+
const inputBackground = "#FFFFFF";
|
|
35033
|
+
const inputBorder = "#CCCCCC";
|
|
35034
|
+
const inputBorderRadius = "4px";
|
|
35035
|
+
const inputDisabledBackground = "#EEEEEE";
|
|
35036
|
+
const formActionsBackground = "#F5F5F5";
|
|
35037
|
+
const inputHeight = "30px";
|
|
35038
|
+
const dropdownBackground = "#FFFFFF";
|
|
35039
|
+
const dropdownBorder = "rgba(0, 0, 0, 0.2)";
|
|
35040
|
+
const dropdownDividerTop = "#E5E5E5";
|
|
35041
|
+
const dropdownDividerBottom = "#FFFFFF";
|
|
35042
|
+
const dropdownLinkColor = "#333333";
|
|
35043
|
+
const dropdownLinkColorHover = "#FFFFFF";
|
|
35044
|
+
const dropdownLinkColorActive = "#FFFFFF";
|
|
35045
|
+
const dropdownLinkBackgroundActive = "#0088CC";
|
|
35046
|
+
const dropdownLinkBackgroundHover = "#0088CC";
|
|
35047
|
+
const zindexDropdown = 1000;
|
|
35048
|
+
const zindexPopover = 1010;
|
|
35049
|
+
const zindexTooltip = 1030;
|
|
35050
|
+
const zindexFixedNavbar = 1030;
|
|
35051
|
+
const zindexHeader = 1060;
|
|
35052
|
+
const zindexModalBackdrop = 1070;
|
|
35053
|
+
const zindexModal = 1080;
|
|
35054
|
+
const zindexAboveModal = 1090;
|
|
35055
|
+
const iconSpritePath = "../img/glyphicons-halflings.png";
|
|
35056
|
+
const iconWhiteSpritePath = "../img/glyphicons-halflings-white.png";
|
|
35057
|
+
const placeholderText = "#999999";
|
|
35058
|
+
const hrBorder = "#EEEEEE";
|
|
35059
|
+
const horizontalComponentOffset = "180px";
|
|
35060
|
+
const wellBackground = "#F5F5F5";
|
|
35061
|
+
const navbarCollapseWidth = "979px";
|
|
35062
|
+
const navbarCollapseDesktopWidth = "980px";
|
|
35063
|
+
const navbarHeight = "40px";
|
|
35064
|
+
const navbarBackgroundHighlight = "#FFFFFF";
|
|
35065
|
+
const navbarBackground = "rgb(242, 242, 242)";
|
|
35066
|
+
const navbarBorder = "rgb(212, 212, 212)";
|
|
35067
|
+
const navbarText = "#777777";
|
|
35068
|
+
const navbarLinkColor = "#777777";
|
|
35069
|
+
const navbarLinkColorHover = "#333333";
|
|
35070
|
+
const navbarLinkColorActive = "#555555";
|
|
35071
|
+
const navbarLinkBackgroundHover = "#000000";
|
|
35072
|
+
const navbarLinkBackgroundActive = "rgb(230, 230, 230)";
|
|
35073
|
+
const navbarBrandColor = "#777777";
|
|
35074
|
+
const navbarInverseBackground = "#111111";
|
|
35075
|
+
const navbarInverseBackgroundHighlight = "#222222";
|
|
35076
|
+
const navbarInverseBorder = "#252525";
|
|
35077
|
+
const navbarInverseText = "#999999";
|
|
35078
|
+
const navbarInverseLinkColor = "#999999";
|
|
35079
|
+
const navbarInverseLinkColorHover = "#FFFFFF";
|
|
35080
|
+
const navbarInverseLinkColorActive = "#FFFFFF";
|
|
35081
|
+
const navbarInverseLinkBackgroundHover = "#000000";
|
|
35082
|
+
const navbarInverseLinkBackgroundActive = "#111111";
|
|
35083
|
+
const navbarInverseSearchBackground = "rgb(82, 82, 82)";
|
|
35084
|
+
const navbarInverseSearchBackgroundFocus = "#FFFFFF";
|
|
35085
|
+
const navbarInverseSearchBorder = "#111111";
|
|
35086
|
+
const navbarInverseSearchPlaceholderColor = "#CCCCCC";
|
|
35087
|
+
const navbarInverseBrandColor = "#999999";
|
|
35088
|
+
const paginationBackground = "#FFFFFF";
|
|
35089
|
+
const paginationBorder = "#DDDDDD";
|
|
35090
|
+
const paginationActiveBackground = "#F5F5F5";
|
|
35091
|
+
const heroUnitBackground = "#EEEEEE";
|
|
35092
|
+
const heroUnitHeadingColor = "inherit";
|
|
35093
|
+
const heroUnitLeadColor = "inherit";
|
|
35094
|
+
const warningText = "#C09853";
|
|
35095
|
+
const warningBackground = "#FCF8E3";
|
|
35096
|
+
const warningBorder = "rgb(251, 239, 213)";
|
|
35097
|
+
const errorText = "#B94A48";
|
|
35098
|
+
const errorBackground = "#F2DEDE";
|
|
35099
|
+
const errorBorder = "rgb(238, 211, 215)";
|
|
35100
|
+
const successText = "#468847";
|
|
35101
|
+
const successBackground = "#DFF0D8";
|
|
35102
|
+
const successBorder = "rgb(212, 232, 197)";
|
|
35103
|
+
const infoText = "#4A7C17";
|
|
35104
|
+
const infoBackground = "#EDF2DF";
|
|
35105
|
+
const infoBorder = "rgb(228, 232, 197)";
|
|
35106
|
+
const tooltipColor = "#FFFFFF";
|
|
35107
|
+
const tooltipBackground = "#000000";
|
|
35108
|
+
const tooltipArrowWidth = "5px";
|
|
35109
|
+
const tooltipArrowColor = "#000000";
|
|
35110
|
+
const popoverBackground = "#FFFFFF";
|
|
35111
|
+
const popoverArrowWidth = "10px";
|
|
35112
|
+
const popoverArrowColor = "#FFFFFF";
|
|
35113
|
+
const popoverTitleBackground = "rgb(247, 247, 247)";
|
|
35114
|
+
const popoverArrowOuterWidth = "11px";
|
|
35115
|
+
const popoverArrowOuterColor = "rgba(0, 0, 0, 0.25)";
|
|
35116
|
+
const gridColumns = "12";
|
|
35117
|
+
const gridColumnWidth = "60px";
|
|
35118
|
+
const gridGutterWidth = "20px";
|
|
35119
|
+
const gridRowWidth = "940px";
|
|
35120
|
+
const gridColumnWidth1200 = "70px";
|
|
35121
|
+
const gridGutterWidth1200 = "30px";
|
|
35122
|
+
const gridRowWidth1200 = "1170px";
|
|
35123
|
+
const gridColumnWidth768 = "42px";
|
|
35124
|
+
const gridGutterWidth768 = "20px";
|
|
35125
|
+
const gridRowWidth768 = "724px";
|
|
35126
|
+
const fluidGridColumnWidth = "6.382978723404255%";
|
|
35127
|
+
const fluidGridGutterWidth = "2.127659574468085%";
|
|
35128
|
+
const fluidGridColumnWidth1200 = "5.982905982905983%";
|
|
35129
|
+
const fluidGridGutterWidth1200 = "2.564102564102564%";
|
|
35130
|
+
const fluidGridColumnWidth768 = "5.801104972375691%";
|
|
35131
|
+
const fluidGridGutterWidth768 = "2.7624309392265194%";
|
|
35132
|
+
const kaGreen = "#71B307";
|
|
35133
|
+
const kaGreenLight = "#BED47A";
|
|
35134
|
+
const kaBlue = "#314453";
|
|
35135
|
+
const kaBlueLight = "#4D6779";
|
|
35136
|
+
const grayExtraDark = "#111111";
|
|
35137
|
+
const grayExtraLight = "#EEEEEE";
|
|
35138
|
+
const graySuperLight = "#F7F7F7";
|
|
35139
|
+
const whiteDark = "#FDFDFD";
|
|
35140
|
+
const dark = "#21242C";
|
|
35141
|
+
const blueDarkUnsaturated = "#3B414E";
|
|
35142
|
+
const blueDarkSaturated = "#1F3043";
|
|
35143
|
+
const blueLight = "#A9C0D1";
|
|
35144
|
+
const greenLight = "#C6D1AD";
|
|
35145
|
+
const greenDark = "#356700";
|
|
35146
|
+
const yellowGreen = "#9DB63B";
|
|
35147
|
+
const okGreen = "#A7CF5B";
|
|
35148
|
+
const alertRed = "#C42420";
|
|
35149
|
+
const coral = "#EE6666";
|
|
35150
|
+
const grayBlue = "#9AB3B9";
|
|
35151
|
+
const lightPageBackground = "#FDFDFD";
|
|
35152
|
+
const yclaBlue = "#49BAD5";
|
|
35153
|
+
const yclaTeal = "#56D0B3";
|
|
35154
|
+
const yclaTealDark = "#50C1A7";
|
|
35155
|
+
const yclaGreenDark = "#3D9A82";
|
|
35156
|
+
const yclaGreen = "#81C262";
|
|
35157
|
+
const learnstormBlue = "#4898FC";
|
|
35158
|
+
const homepageBlue = "#46A8BF";
|
|
35159
|
+
const backgroundBlue = "#00294A";
|
|
35160
|
+
const teacherSignupBlue = "#335d7d";
|
|
35161
|
+
const homepageGreen = "#2B8E7B";
|
|
35162
|
+
const streakColor = "#F79734";
|
|
35163
|
+
const facebookColor = "#1A60A2";
|
|
35164
|
+
const blueGoogleColor = "#2CAFE2";
|
|
35165
|
+
const redGoogleColor = "#BF4434";
|
|
35166
|
+
const homepageColor = "#2D585E";
|
|
35167
|
+
const lightTextColor = "#898989";
|
|
35168
|
+
const fontSizeTiny = "11px";
|
|
35169
|
+
const fontSizeNormal = "14px";
|
|
35170
|
+
const fontSizeMedium = "16px";
|
|
35171
|
+
const fontSizeExtraLarge = "24px";
|
|
35172
|
+
const fontSizeHuge = "36px";
|
|
35173
|
+
const fontSizeBakana = "48px";
|
|
35174
|
+
const fontSizeBananas = "60px";
|
|
35175
|
+
const fixedWidthFontFamily = "'Helvetica Neue',Helvetica,Arial,sans-serif";
|
|
35176
|
+
const contentPadding = "20px";
|
|
35177
|
+
const primaryButtonBackground = "#89B908";
|
|
35178
|
+
const primaryButtonBorder = "#76A005";
|
|
35179
|
+
const buttonTextColor = "rgb(122, 122, 122)";
|
|
35180
|
+
const buttonBorderRadius = "3px";
|
|
35181
|
+
const basicBorderColor = "#CCCCCC";
|
|
35182
|
+
const minContainerWidth = "1000px";
|
|
35183
|
+
const maxContainerWidth = "1200px";
|
|
35184
|
+
const formHintColor = "#999999";
|
|
35185
|
+
const guidelineExampleText = "#606060";
|
|
35186
|
+
const hoverCardWidth = "450px";
|
|
35187
|
+
const menuHighlightColor = "#96AB4F";
|
|
35188
|
+
const menuHighlightBorderColor = "#76A005";
|
|
35189
|
+
const menuActiveTextColor = "#FFFFFF";
|
|
35190
|
+
const menuInactiveTextColor = "#444444";
|
|
35191
|
+
const menuSubheaderTextColor = "rgb(120, 120, 120)";
|
|
35192
|
+
const menuBorderColor = "#94A170";
|
|
35193
|
+
const unreadBackgroundColor = "#ECEEF4";
|
|
35194
|
+
const menuLineHeight = "18px";
|
|
35195
|
+
const menuSubheaderLineHeight = "17px";
|
|
35196
|
+
const menuSubheaderFontSize = "9px";
|
|
35197
|
+
const notificationBarColor = "#4858A4";
|
|
35198
|
+
const modalBodyTopPadding = "20px";
|
|
35199
|
+
const modalDialogPadding = "15px";
|
|
35200
|
+
const modalSectionPadding = "9px";
|
|
35201
|
+
const mathDomain1 = "#11ACCD";
|
|
35202
|
+
const mathDomain2 = "#63D9EA";
|
|
35203
|
+
const mathDomain3 = "#027d97";
|
|
35204
|
+
const mathDomain4 = "#085566";
|
|
35205
|
+
const partnerContentDomain1 = "#01A995";
|
|
35206
|
+
const partnerContentDomain2 = "#01D1C1";
|
|
35207
|
+
const partnerContentDomain3 = "#208170";
|
|
35208
|
+
const partnerContentDomain4 = "#144F44";
|
|
35209
|
+
const csDomain1 = "#1FAB54";
|
|
35210
|
+
const csDomain2 = "#74CF70";
|
|
35211
|
+
const csDomain3 = "#0D923F";
|
|
35212
|
+
const csDomain4 = "#085E29";
|
|
35213
|
+
const economicsDomain1 = "#E07D10";
|
|
35214
|
+
const economicsDomain2 = "#FFBE26";
|
|
35215
|
+
const economicsDomain3 = "#A75A05";
|
|
35216
|
+
const economicsDomain4 = "#953C02";
|
|
35217
|
+
const collegeCareersMoreDomain1 = "#01A995";
|
|
35218
|
+
const collegeCareersMoreDomain2 = "#01D1C1";
|
|
35219
|
+
const collegeCareersMoreDomain3 = "#208170";
|
|
35220
|
+
const collegeCareersMoreDomain4 = "#144F44";
|
|
35221
|
+
const humanitiesDomain1 = "#E84D39";
|
|
35222
|
+
const humanitiesDomain2 = "#FF8482";
|
|
35223
|
+
const humanitiesDomain3 = "#BE2612";
|
|
35224
|
+
const humanitiesDomain4 = "#8C1C0D";
|
|
35225
|
+
const gtpDomain1 = "#1865F2";
|
|
35226
|
+
const gtpDomain2 = "#1865F2";
|
|
35227
|
+
const gtpDomain3 = "#1865F2";
|
|
35228
|
+
const gtpDomain4 = "#1865F2";
|
|
35229
|
+
const scienceDomain1 = "#CA337C";
|
|
35230
|
+
const scienceDomain2 = "#FF92C6";
|
|
35231
|
+
const scienceDomain3 = "#9E034E";
|
|
35232
|
+
const scienceDomain4 = "#6B0235";
|
|
35233
|
+
const testPrepDomain1 = "#1865F2";
|
|
35234
|
+
const testPrepDomain2 = "#1865F2";
|
|
35235
|
+
const testPrepDomain3 = "#1865F2";
|
|
35236
|
+
const testPrepDomain4 = "#1865F2";
|
|
35237
|
+
const defaultDomain1 = "#1865F2";
|
|
35238
|
+
const defaultDomain2 = "#66afe9";
|
|
35239
|
+
const defaultDomain3 = "#1152b0";
|
|
35240
|
+
const defaultDomain4 = "#0d3d82";
|
|
35241
|
+
const defaultDomainColor = "#314453";
|
|
35242
|
+
const defaultSubjectColor = "#4D6779";
|
|
35243
|
+
const defaultTopicColor = "#6A8DA6";
|
|
35244
|
+
const defaultHoverColor = "#314453";
|
|
35245
|
+
const defaultLinkColor = "#314453";
|
|
35246
|
+
const defaultLinkHoverColor = "#6A8DA6";
|
|
35247
|
+
const scienceDomainColor = "#94424F";
|
|
35248
|
+
const scienceSubjectColor = "#9D4A5A";
|
|
35249
|
+
const scienceTopicColor = "#C55F73";
|
|
35250
|
+
const scienceHoverColor = "#94424F";
|
|
35251
|
+
const scienceLinkColor = "#94424F";
|
|
35252
|
+
const scienceLinkHoverColor = "#C55F73";
|
|
35253
|
+
const humanitiesDomainColor = "#AD3434";
|
|
35254
|
+
const humanitiesSubjectColor = "#C13B31";
|
|
35255
|
+
const humanitiesTopicColor = "#D24A45";
|
|
35256
|
+
const humanitiesHoverColor = "#AD3434";
|
|
35257
|
+
const humanitiesLinkColor = "#AD3434";
|
|
35258
|
+
const humanitiesLinkHoverColor = "#D24A45";
|
|
35259
|
+
const economicsDomainColor = "#B77033";
|
|
35260
|
+
const economicsSubjectColor = "#BF7B34";
|
|
35261
|
+
const economicsTopicColor = "#D1933B";
|
|
35262
|
+
const economicsHoverColor = "#B77033";
|
|
35263
|
+
const economicsLinkColor = "#B77033";
|
|
35264
|
+
const economicsLinkHoverColor = "#D1933B";
|
|
35265
|
+
const csDomainColor = "#437A39";
|
|
35266
|
+
const csSubjectColor = "#53893E";
|
|
35267
|
+
const csTopicColor = "#689B51";
|
|
35268
|
+
const csHoverColor = "#437A39";
|
|
35269
|
+
const csLinkColor = "#437A39";
|
|
35270
|
+
const csLinkHoverColor = "#689B51";
|
|
35271
|
+
const partnerContentDomainColor = "#218270";
|
|
35272
|
+
const partnerContentSubjectColor = "#2C8D7B";
|
|
35273
|
+
const partnerContentTopicColor = "#329A86";
|
|
35274
|
+
const partnerContentHoverColor = "#218270";
|
|
35275
|
+
const partnerContentLinkColor = "#218270";
|
|
35276
|
+
const partnerContentLinkHoverColor = "#329A86";
|
|
35277
|
+
const essayDomainColor = "#0071B3";
|
|
35278
|
+
const mathDomainColor = "#1C758A";
|
|
35279
|
+
const mathSubjectColor = "#46A8BF";
|
|
35280
|
+
const mathTopicColor = "#4FBAD4";
|
|
35281
|
+
const mathHoverColor = "#1C758A";
|
|
35282
|
+
const mathLinkColor = "#1C758A";
|
|
35283
|
+
const mathLinkHoverColor = "#4FBAD4";
|
|
35284
|
+
const testPrepDomainColor = "#644172";
|
|
35285
|
+
const testPrepSubjectColor = "#7E5F8E";
|
|
35286
|
+
const testPrepTopicColor = "#9A72AC";
|
|
35287
|
+
const testPrepHoverColor = "#644172";
|
|
35288
|
+
const testPrepLinkColor = "#644172";
|
|
35289
|
+
const testPrepLinkHoverColor = "#9A72AC";
|
|
35290
|
+
const collegeCareersMoreDomainColor = "#218270";
|
|
35291
|
+
const collegeCareersMoreSubjectColor = "#2C8D7B";
|
|
35292
|
+
const collegeCareersMoreTopicColor = "#329A86";
|
|
35293
|
+
const collegeCareersMoreHoverColor = "#218270";
|
|
35294
|
+
const collegeCareersMoreLinkColor = "#218270";
|
|
35295
|
+
const collegeCareersMoreLinkHoverColor = "#329A86";
|
|
35296
|
+
const satDomainColor = "#0084CE";
|
|
35297
|
+
const satSubjectColor = "#0084CE";
|
|
35298
|
+
const satTopicColor = "#0084CE";
|
|
35299
|
+
const satHoverColor = "#0084CE";
|
|
35300
|
+
const satLinkColor = "#0084CE";
|
|
35301
|
+
const satLinkHoverColor = "#0084CE";
|
|
35302
|
+
const colorProficient = "#1C758A";
|
|
35303
|
+
const colorPracticed = "rgb(158, 221, 235)";
|
|
35304
|
+
const colorMastery1 = "rgb(90, 197, 221)";
|
|
35305
|
+
const colorMastery2 = "rgb(42, 174, 203)";
|
|
35306
|
+
const colorMastery3 = "#1C758A";
|
|
35307
|
+
const colorSuggested = "#73982C";
|
|
35308
|
+
const colorReview = "#E35D04";
|
|
35309
|
+
const colorNotStarted = "#CCCCCC";
|
|
35310
|
+
const colorStarted = "#C7E5F7";
|
|
35311
|
+
const colorStruggling = "#C30202";
|
|
35312
|
+
const colorPersonal = "#00809C";
|
|
35313
|
+
const colorPractice = "#96D9FF";
|
|
35314
|
+
const colorEnergyPoints = "#005987";
|
|
35315
|
+
const pureSmMin = "568px";
|
|
35316
|
+
const pureMdMin = "768px";
|
|
35317
|
+
const pureLgMin = "1024px";
|
|
35318
|
+
const pureXlMin = "1200px";
|
|
35319
|
+
const pureXsMax = "567px";
|
|
35320
|
+
const pureSmMax = "767px";
|
|
35321
|
+
const pureMdMax = "1023px";
|
|
35322
|
+
const pureLgMax = "1199px";
|
|
35323
|
+
|
|
35324
|
+
var globalConstants = /*#__PURE__*/Object.freeze({
|
|
35325
|
+
__proto__: null,
|
|
35326
|
+
black: black,
|
|
35327
|
+
grayDarker: grayDarker,
|
|
35328
|
+
grayDark: grayDark,
|
|
35329
|
+
gray: gray,
|
|
35330
|
+
grayLight: grayLight,
|
|
35331
|
+
grayLighter: grayLighter,
|
|
35332
|
+
white: white,
|
|
35333
|
+
blue: blue,
|
|
35334
|
+
blueDark: blueDark,
|
|
35335
|
+
green: green,
|
|
35336
|
+
red: red,
|
|
35337
|
+
yellow: yellow,
|
|
35338
|
+
orange: orange,
|
|
35339
|
+
pink: pink,
|
|
35340
|
+
purple: purple,
|
|
35341
|
+
bodyBackground: bodyBackground,
|
|
35342
|
+
textColor: textColor,
|
|
35343
|
+
linkColor: linkColor,
|
|
35344
|
+
linkColorHover: linkColorHover,
|
|
35345
|
+
sansFontFamily: sansFontFamily,
|
|
35346
|
+
serifFontFamily: serifFontFamily,
|
|
35347
|
+
monoFontFamily: monoFontFamily,
|
|
35348
|
+
baseFontSize: baseFontSize,
|
|
35349
|
+
baseFontFamily: baseFontFamily,
|
|
35350
|
+
baseLineHeight: baseLineHeight,
|
|
35351
|
+
altFontFamily: altFontFamily,
|
|
35352
|
+
headingsFontFamily: headingsFontFamily,
|
|
35353
|
+
headingsFontWeight: headingsFontWeight,
|
|
35354
|
+
headingsColor: headingsColor,
|
|
35355
|
+
fontSizeLarge: fontSizeLarge,
|
|
35356
|
+
fontSizeSmall: fontSizeSmall,
|
|
35357
|
+
fontSizeMini: fontSizeMini,
|
|
35358
|
+
paddingLarge: paddingLarge,
|
|
35359
|
+
paddingSmall: paddingSmall,
|
|
35360
|
+
paddingMini: paddingMini,
|
|
35361
|
+
baseBorderRadius: baseBorderRadius,
|
|
35362
|
+
borderRadiusLarge: borderRadiusLarge,
|
|
35363
|
+
borderRadiusSmall: borderRadiusSmall,
|
|
35364
|
+
tableBackground: tableBackground,
|
|
35365
|
+
tableBackgroundAccent: tableBackgroundAccent,
|
|
35366
|
+
tableBackgroundHover: tableBackgroundHover,
|
|
35367
|
+
tableBorder: tableBorder,
|
|
35368
|
+
btnBackground: btnBackground,
|
|
35369
|
+
btnBackgroundHighlight: btnBackgroundHighlight,
|
|
35370
|
+
btnBorder: btnBorder,
|
|
35371
|
+
btnPrimaryBackground: btnPrimaryBackground,
|
|
35372
|
+
btnPrimaryBackgroundHighlight: btnPrimaryBackgroundHighlight,
|
|
35373
|
+
btnInfoBackground: btnInfoBackground,
|
|
35374
|
+
btnInfoBackgroundHighlight: btnInfoBackgroundHighlight,
|
|
35375
|
+
btnSuccessBackground: btnSuccessBackground,
|
|
35376
|
+
btnSuccessBackgroundHighlight: btnSuccessBackgroundHighlight,
|
|
35377
|
+
btnWarningBackground: btnWarningBackground,
|
|
35378
|
+
btnWarningBackgroundHighlight: btnWarningBackgroundHighlight,
|
|
35379
|
+
btnDangerBackground: btnDangerBackground,
|
|
35380
|
+
btnDangerBackgroundHighlight: btnDangerBackgroundHighlight,
|
|
35381
|
+
btnInverseBackground: btnInverseBackground,
|
|
35382
|
+
btnInverseBackgroundHighlight: btnInverseBackgroundHighlight,
|
|
35383
|
+
inputBackground: inputBackground,
|
|
35384
|
+
inputBorder: inputBorder,
|
|
35385
|
+
inputBorderRadius: inputBorderRadius,
|
|
35386
|
+
inputDisabledBackground: inputDisabledBackground,
|
|
35387
|
+
formActionsBackground: formActionsBackground,
|
|
35388
|
+
inputHeight: inputHeight,
|
|
35389
|
+
dropdownBackground: dropdownBackground,
|
|
35390
|
+
dropdownBorder: dropdownBorder,
|
|
35391
|
+
dropdownDividerTop: dropdownDividerTop,
|
|
35392
|
+
dropdownDividerBottom: dropdownDividerBottom,
|
|
35393
|
+
dropdownLinkColor: dropdownLinkColor,
|
|
35394
|
+
dropdownLinkColorHover: dropdownLinkColorHover,
|
|
35395
|
+
dropdownLinkColorActive: dropdownLinkColorActive,
|
|
35396
|
+
dropdownLinkBackgroundActive: dropdownLinkBackgroundActive,
|
|
35397
|
+
dropdownLinkBackgroundHover: dropdownLinkBackgroundHover,
|
|
35398
|
+
zindexDropdown: zindexDropdown,
|
|
35399
|
+
zindexPopover: zindexPopover,
|
|
35400
|
+
zindexTooltip: zindexTooltip,
|
|
35401
|
+
zindexFixedNavbar: zindexFixedNavbar,
|
|
35402
|
+
zindexHeader: zindexHeader,
|
|
35403
|
+
zindexModalBackdrop: zindexModalBackdrop,
|
|
35404
|
+
zindexModal: zindexModal,
|
|
35405
|
+
zindexAboveModal: zindexAboveModal,
|
|
35406
|
+
iconSpritePath: iconSpritePath,
|
|
35407
|
+
iconWhiteSpritePath: iconWhiteSpritePath,
|
|
35408
|
+
placeholderText: placeholderText,
|
|
35409
|
+
hrBorder: hrBorder,
|
|
35410
|
+
horizontalComponentOffset: horizontalComponentOffset,
|
|
35411
|
+
wellBackground: wellBackground,
|
|
35412
|
+
navbarCollapseWidth: navbarCollapseWidth,
|
|
35413
|
+
navbarCollapseDesktopWidth: navbarCollapseDesktopWidth,
|
|
35414
|
+
navbarHeight: navbarHeight,
|
|
35415
|
+
navbarBackgroundHighlight: navbarBackgroundHighlight,
|
|
35416
|
+
navbarBackground: navbarBackground,
|
|
35417
|
+
navbarBorder: navbarBorder,
|
|
35418
|
+
navbarText: navbarText,
|
|
35419
|
+
navbarLinkColor: navbarLinkColor,
|
|
35420
|
+
navbarLinkColorHover: navbarLinkColorHover,
|
|
35421
|
+
navbarLinkColorActive: navbarLinkColorActive,
|
|
35422
|
+
navbarLinkBackgroundHover: navbarLinkBackgroundHover,
|
|
35423
|
+
navbarLinkBackgroundActive: navbarLinkBackgroundActive,
|
|
35424
|
+
navbarBrandColor: navbarBrandColor,
|
|
35425
|
+
navbarInverseBackground: navbarInverseBackground,
|
|
35426
|
+
navbarInverseBackgroundHighlight: navbarInverseBackgroundHighlight,
|
|
35427
|
+
navbarInverseBorder: navbarInverseBorder,
|
|
35428
|
+
navbarInverseText: navbarInverseText,
|
|
35429
|
+
navbarInverseLinkColor: navbarInverseLinkColor,
|
|
35430
|
+
navbarInverseLinkColorHover: navbarInverseLinkColorHover,
|
|
35431
|
+
navbarInverseLinkColorActive: navbarInverseLinkColorActive,
|
|
35432
|
+
navbarInverseLinkBackgroundHover: navbarInverseLinkBackgroundHover,
|
|
35433
|
+
navbarInverseLinkBackgroundActive: navbarInverseLinkBackgroundActive,
|
|
35434
|
+
navbarInverseSearchBackground: navbarInverseSearchBackground,
|
|
35435
|
+
navbarInverseSearchBackgroundFocus: navbarInverseSearchBackgroundFocus,
|
|
35436
|
+
navbarInverseSearchBorder: navbarInverseSearchBorder,
|
|
35437
|
+
navbarInverseSearchPlaceholderColor: navbarInverseSearchPlaceholderColor,
|
|
35438
|
+
navbarInverseBrandColor: navbarInverseBrandColor,
|
|
35439
|
+
paginationBackground: paginationBackground,
|
|
35440
|
+
paginationBorder: paginationBorder,
|
|
35441
|
+
paginationActiveBackground: paginationActiveBackground,
|
|
35442
|
+
heroUnitBackground: heroUnitBackground,
|
|
35443
|
+
heroUnitHeadingColor: heroUnitHeadingColor,
|
|
35444
|
+
heroUnitLeadColor: heroUnitLeadColor,
|
|
35445
|
+
warningText: warningText,
|
|
35446
|
+
warningBackground: warningBackground,
|
|
35447
|
+
warningBorder: warningBorder,
|
|
35448
|
+
errorText: errorText,
|
|
35449
|
+
errorBackground: errorBackground,
|
|
35450
|
+
errorBorder: errorBorder,
|
|
35451
|
+
successText: successText,
|
|
35452
|
+
successBackground: successBackground,
|
|
35453
|
+
successBorder: successBorder,
|
|
35454
|
+
infoText: infoText,
|
|
35455
|
+
infoBackground: infoBackground,
|
|
35456
|
+
infoBorder: infoBorder,
|
|
35457
|
+
tooltipColor: tooltipColor,
|
|
35458
|
+
tooltipBackground: tooltipBackground,
|
|
35459
|
+
tooltipArrowWidth: tooltipArrowWidth,
|
|
35460
|
+
tooltipArrowColor: tooltipArrowColor,
|
|
35461
|
+
popoverBackground: popoverBackground,
|
|
35462
|
+
popoverArrowWidth: popoverArrowWidth,
|
|
35463
|
+
popoverArrowColor: popoverArrowColor,
|
|
35464
|
+
popoverTitleBackground: popoverTitleBackground,
|
|
35465
|
+
popoverArrowOuterWidth: popoverArrowOuterWidth,
|
|
35466
|
+
popoverArrowOuterColor: popoverArrowOuterColor,
|
|
35467
|
+
gridColumns: gridColumns,
|
|
35468
|
+
gridColumnWidth: gridColumnWidth,
|
|
35469
|
+
gridGutterWidth: gridGutterWidth,
|
|
35470
|
+
gridRowWidth: gridRowWidth,
|
|
35471
|
+
gridColumnWidth1200: gridColumnWidth1200,
|
|
35472
|
+
gridGutterWidth1200: gridGutterWidth1200,
|
|
35473
|
+
gridRowWidth1200: gridRowWidth1200,
|
|
35474
|
+
gridColumnWidth768: gridColumnWidth768,
|
|
35475
|
+
gridGutterWidth768: gridGutterWidth768,
|
|
35476
|
+
gridRowWidth768: gridRowWidth768,
|
|
35477
|
+
fluidGridColumnWidth: fluidGridColumnWidth,
|
|
35478
|
+
fluidGridGutterWidth: fluidGridGutterWidth,
|
|
35479
|
+
fluidGridColumnWidth1200: fluidGridColumnWidth1200,
|
|
35480
|
+
fluidGridGutterWidth1200: fluidGridGutterWidth1200,
|
|
35481
|
+
fluidGridColumnWidth768: fluidGridColumnWidth768,
|
|
35482
|
+
fluidGridGutterWidth768: fluidGridGutterWidth768,
|
|
35483
|
+
kaGreen: kaGreen,
|
|
35484
|
+
kaGreenLight: kaGreenLight,
|
|
35485
|
+
kaBlue: kaBlue,
|
|
35486
|
+
kaBlueLight: kaBlueLight,
|
|
35487
|
+
grayExtraDark: grayExtraDark,
|
|
35488
|
+
grayExtraLight: grayExtraLight,
|
|
35489
|
+
graySuperLight: graySuperLight,
|
|
35490
|
+
whiteDark: whiteDark,
|
|
35491
|
+
dark: dark,
|
|
35492
|
+
blueDarkUnsaturated: blueDarkUnsaturated,
|
|
35493
|
+
blueDarkSaturated: blueDarkSaturated,
|
|
35494
|
+
blueLight: blueLight,
|
|
35495
|
+
greenLight: greenLight,
|
|
35496
|
+
greenDark: greenDark,
|
|
35497
|
+
yellowGreen: yellowGreen,
|
|
35498
|
+
okGreen: okGreen,
|
|
35499
|
+
alertRed: alertRed,
|
|
35500
|
+
coral: coral,
|
|
35501
|
+
grayBlue: grayBlue,
|
|
35502
|
+
lightPageBackground: lightPageBackground,
|
|
35503
|
+
yclaBlue: yclaBlue,
|
|
35504
|
+
yclaTeal: yclaTeal,
|
|
35505
|
+
yclaTealDark: yclaTealDark,
|
|
35506
|
+
yclaGreenDark: yclaGreenDark,
|
|
35507
|
+
yclaGreen: yclaGreen,
|
|
35508
|
+
learnstormBlue: learnstormBlue,
|
|
35509
|
+
homepageBlue: homepageBlue,
|
|
35510
|
+
backgroundBlue: backgroundBlue,
|
|
35511
|
+
teacherSignupBlue: teacherSignupBlue,
|
|
35512
|
+
homepageGreen: homepageGreen,
|
|
35513
|
+
streakColor: streakColor,
|
|
35514
|
+
facebookColor: facebookColor,
|
|
35515
|
+
blueGoogleColor: blueGoogleColor,
|
|
35516
|
+
redGoogleColor: redGoogleColor,
|
|
35517
|
+
homepageColor: homepageColor,
|
|
35518
|
+
lightTextColor: lightTextColor,
|
|
35519
|
+
fontSizeTiny: fontSizeTiny,
|
|
35520
|
+
fontSizeNormal: fontSizeNormal,
|
|
35521
|
+
fontSizeMedium: fontSizeMedium,
|
|
35522
|
+
fontSizeExtraLarge: fontSizeExtraLarge,
|
|
35523
|
+
fontSizeHuge: fontSizeHuge,
|
|
35524
|
+
fontSizeBakana: fontSizeBakana,
|
|
35525
|
+
fontSizeBananas: fontSizeBananas,
|
|
35526
|
+
fixedWidthFontFamily: fixedWidthFontFamily,
|
|
35527
|
+
contentPadding: contentPadding,
|
|
35528
|
+
primaryButtonBackground: primaryButtonBackground,
|
|
35529
|
+
primaryButtonBorder: primaryButtonBorder,
|
|
35530
|
+
buttonTextColor: buttonTextColor,
|
|
35531
|
+
buttonBorderRadius: buttonBorderRadius,
|
|
35532
|
+
basicBorderColor: basicBorderColor,
|
|
35533
|
+
minContainerWidth: minContainerWidth,
|
|
35534
|
+
maxContainerWidth: maxContainerWidth,
|
|
35535
|
+
formHintColor: formHintColor,
|
|
35536
|
+
guidelineExampleText: guidelineExampleText,
|
|
35537
|
+
hoverCardWidth: hoverCardWidth,
|
|
35538
|
+
menuHighlightColor: menuHighlightColor,
|
|
35539
|
+
menuHighlightBorderColor: menuHighlightBorderColor,
|
|
35540
|
+
menuActiveTextColor: menuActiveTextColor,
|
|
35541
|
+
menuInactiveTextColor: menuInactiveTextColor,
|
|
35542
|
+
menuSubheaderTextColor: menuSubheaderTextColor,
|
|
35543
|
+
menuBorderColor: menuBorderColor,
|
|
35544
|
+
unreadBackgroundColor: unreadBackgroundColor,
|
|
35545
|
+
menuLineHeight: menuLineHeight,
|
|
35546
|
+
menuSubheaderLineHeight: menuSubheaderLineHeight,
|
|
35547
|
+
menuSubheaderFontSize: menuSubheaderFontSize,
|
|
35548
|
+
notificationBarColor: notificationBarColor,
|
|
35549
|
+
modalBodyTopPadding: modalBodyTopPadding,
|
|
35550
|
+
modalDialogPadding: modalDialogPadding,
|
|
35551
|
+
modalSectionPadding: modalSectionPadding,
|
|
35552
|
+
mathDomain1: mathDomain1,
|
|
35553
|
+
mathDomain2: mathDomain2,
|
|
35554
|
+
mathDomain3: mathDomain3,
|
|
35555
|
+
mathDomain4: mathDomain4,
|
|
35556
|
+
partnerContentDomain1: partnerContentDomain1,
|
|
35557
|
+
partnerContentDomain2: partnerContentDomain2,
|
|
35558
|
+
partnerContentDomain3: partnerContentDomain3,
|
|
35559
|
+
partnerContentDomain4: partnerContentDomain4,
|
|
35560
|
+
csDomain1: csDomain1,
|
|
35561
|
+
csDomain2: csDomain2,
|
|
35562
|
+
csDomain3: csDomain3,
|
|
35563
|
+
csDomain4: csDomain4,
|
|
35564
|
+
economicsDomain1: economicsDomain1,
|
|
35565
|
+
economicsDomain2: economicsDomain2,
|
|
35566
|
+
economicsDomain3: economicsDomain3,
|
|
35567
|
+
economicsDomain4: economicsDomain4,
|
|
35568
|
+
collegeCareersMoreDomain1: collegeCareersMoreDomain1,
|
|
35569
|
+
collegeCareersMoreDomain2: collegeCareersMoreDomain2,
|
|
35570
|
+
collegeCareersMoreDomain3: collegeCareersMoreDomain3,
|
|
35571
|
+
collegeCareersMoreDomain4: collegeCareersMoreDomain4,
|
|
35572
|
+
humanitiesDomain1: humanitiesDomain1,
|
|
35573
|
+
humanitiesDomain2: humanitiesDomain2,
|
|
35574
|
+
humanitiesDomain3: humanitiesDomain3,
|
|
35575
|
+
humanitiesDomain4: humanitiesDomain4,
|
|
35576
|
+
gtpDomain1: gtpDomain1,
|
|
35577
|
+
gtpDomain2: gtpDomain2,
|
|
35578
|
+
gtpDomain3: gtpDomain3,
|
|
35579
|
+
gtpDomain4: gtpDomain4,
|
|
35580
|
+
scienceDomain1: scienceDomain1,
|
|
35581
|
+
scienceDomain2: scienceDomain2,
|
|
35582
|
+
scienceDomain3: scienceDomain3,
|
|
35583
|
+
scienceDomain4: scienceDomain4,
|
|
35584
|
+
testPrepDomain1: testPrepDomain1,
|
|
35585
|
+
testPrepDomain2: testPrepDomain2,
|
|
35586
|
+
testPrepDomain3: testPrepDomain3,
|
|
35587
|
+
testPrepDomain4: testPrepDomain4,
|
|
35588
|
+
defaultDomain1: defaultDomain1,
|
|
35589
|
+
defaultDomain2: defaultDomain2,
|
|
35590
|
+
defaultDomain3: defaultDomain3,
|
|
35591
|
+
defaultDomain4: defaultDomain4,
|
|
35592
|
+
defaultDomainColor: defaultDomainColor,
|
|
35593
|
+
defaultSubjectColor: defaultSubjectColor,
|
|
35594
|
+
defaultTopicColor: defaultTopicColor,
|
|
35595
|
+
defaultHoverColor: defaultHoverColor,
|
|
35596
|
+
defaultLinkColor: defaultLinkColor,
|
|
35597
|
+
defaultLinkHoverColor: defaultLinkHoverColor,
|
|
35598
|
+
scienceDomainColor: scienceDomainColor,
|
|
35599
|
+
scienceSubjectColor: scienceSubjectColor,
|
|
35600
|
+
scienceTopicColor: scienceTopicColor,
|
|
35601
|
+
scienceHoverColor: scienceHoverColor,
|
|
35602
|
+
scienceLinkColor: scienceLinkColor,
|
|
35603
|
+
scienceLinkHoverColor: scienceLinkHoverColor,
|
|
35604
|
+
humanitiesDomainColor: humanitiesDomainColor,
|
|
35605
|
+
humanitiesSubjectColor: humanitiesSubjectColor,
|
|
35606
|
+
humanitiesTopicColor: humanitiesTopicColor,
|
|
35607
|
+
humanitiesHoverColor: humanitiesHoverColor,
|
|
35608
|
+
humanitiesLinkColor: humanitiesLinkColor,
|
|
35609
|
+
humanitiesLinkHoverColor: humanitiesLinkHoverColor,
|
|
35610
|
+
economicsDomainColor: economicsDomainColor,
|
|
35611
|
+
economicsSubjectColor: economicsSubjectColor,
|
|
35612
|
+
economicsTopicColor: economicsTopicColor,
|
|
35613
|
+
economicsHoverColor: economicsHoverColor,
|
|
35614
|
+
economicsLinkColor: economicsLinkColor,
|
|
35615
|
+
economicsLinkHoverColor: economicsLinkHoverColor,
|
|
35616
|
+
csDomainColor: csDomainColor,
|
|
35617
|
+
csSubjectColor: csSubjectColor,
|
|
35618
|
+
csTopicColor: csTopicColor,
|
|
35619
|
+
csHoverColor: csHoverColor,
|
|
35620
|
+
csLinkColor: csLinkColor,
|
|
35621
|
+
csLinkHoverColor: csLinkHoverColor,
|
|
35622
|
+
partnerContentDomainColor: partnerContentDomainColor,
|
|
35623
|
+
partnerContentSubjectColor: partnerContentSubjectColor,
|
|
35624
|
+
partnerContentTopicColor: partnerContentTopicColor,
|
|
35625
|
+
partnerContentHoverColor: partnerContentHoverColor,
|
|
35626
|
+
partnerContentLinkColor: partnerContentLinkColor,
|
|
35627
|
+
partnerContentLinkHoverColor: partnerContentLinkHoverColor,
|
|
35628
|
+
essayDomainColor: essayDomainColor,
|
|
35629
|
+
mathDomainColor: mathDomainColor,
|
|
35630
|
+
mathSubjectColor: mathSubjectColor,
|
|
35631
|
+
mathTopicColor: mathTopicColor,
|
|
35632
|
+
mathHoverColor: mathHoverColor,
|
|
35633
|
+
mathLinkColor: mathLinkColor,
|
|
35634
|
+
mathLinkHoverColor: mathLinkHoverColor,
|
|
35635
|
+
testPrepDomainColor: testPrepDomainColor,
|
|
35636
|
+
testPrepSubjectColor: testPrepSubjectColor,
|
|
35637
|
+
testPrepTopicColor: testPrepTopicColor,
|
|
35638
|
+
testPrepHoverColor: testPrepHoverColor,
|
|
35639
|
+
testPrepLinkColor: testPrepLinkColor,
|
|
35640
|
+
testPrepLinkHoverColor: testPrepLinkHoverColor,
|
|
35641
|
+
collegeCareersMoreDomainColor: collegeCareersMoreDomainColor,
|
|
35642
|
+
collegeCareersMoreSubjectColor: collegeCareersMoreSubjectColor,
|
|
35643
|
+
collegeCareersMoreTopicColor: collegeCareersMoreTopicColor,
|
|
35644
|
+
collegeCareersMoreHoverColor: collegeCareersMoreHoverColor,
|
|
35645
|
+
collegeCareersMoreLinkColor: collegeCareersMoreLinkColor,
|
|
35646
|
+
collegeCareersMoreLinkHoverColor: collegeCareersMoreLinkHoverColor,
|
|
35647
|
+
satDomainColor: satDomainColor,
|
|
35648
|
+
satSubjectColor: satSubjectColor,
|
|
35649
|
+
satTopicColor: satTopicColor,
|
|
35650
|
+
satHoverColor: satHoverColor,
|
|
35651
|
+
satLinkColor: satLinkColor,
|
|
35652
|
+
satLinkHoverColor: satLinkHoverColor,
|
|
35653
|
+
colorProficient: colorProficient,
|
|
35654
|
+
colorPracticed: colorPracticed,
|
|
35655
|
+
colorMastery1: colorMastery1,
|
|
35656
|
+
colorMastery2: colorMastery2,
|
|
35657
|
+
colorMastery3: colorMastery3,
|
|
35658
|
+
colorSuggested: colorSuggested,
|
|
35659
|
+
colorReview: colorReview,
|
|
35660
|
+
colorNotStarted: colorNotStarted,
|
|
35661
|
+
colorStarted: colorStarted,
|
|
35662
|
+
colorStruggling: colorStruggling,
|
|
35663
|
+
colorPersonal: colorPersonal,
|
|
35664
|
+
colorPractice: colorPractice,
|
|
35665
|
+
colorEnergyPoints: colorEnergyPoints,
|
|
35666
|
+
pureSmMin: pureSmMin,
|
|
35667
|
+
pureMdMin: pureMdMin,
|
|
35668
|
+
pureLgMin: pureLgMin,
|
|
35669
|
+
pureXlMin: pureXlMin,
|
|
35670
|
+
pureXsMax: pureXsMax,
|
|
35671
|
+
pureSmMax: pureSmMax,
|
|
35672
|
+
pureMdMax: pureMdMax,
|
|
35673
|
+
pureLgMax: pureLgMax
|
|
35674
|
+
});
|
|
35675
|
+
|
|
35676
|
+
const colors$1 = {
|
|
35677
|
+
white: "#FFFFFF",
|
|
35678
|
+
gray98: "#FAFAFA",
|
|
35679
|
+
gray97: "#F6F7F7",
|
|
35680
|
+
gray95: "#F0F1F2",
|
|
35681
|
+
gray90: "#E3E5E6",
|
|
35682
|
+
gray85: "#D6D8DA",
|
|
35683
|
+
gray76: "#BABEC2",
|
|
35684
|
+
gray72: "#999A9D",
|
|
35685
|
+
gray68: "#888D93",
|
|
35686
|
+
gray55: "#707378",
|
|
35687
|
+
gray41: "#626569",
|
|
35688
|
+
gray25: "#3B3E40",
|
|
35689
|
+
gray17: "#21242C",
|
|
35690
|
+
gray10: "#1499af",
|
|
35691
|
+
black: "#000000",
|
|
35692
|
+
// These colors are pulled out from constants.js, which is itself generated
|
|
35693
|
+
// from variables.less. We should probably avoid duplicating these here.
|
|
35694
|
+
alertRed,
|
|
35695
|
+
homepageBlue,
|
|
35696
|
+
kaBlue,
|
|
35697
|
+
kaBlueLight,
|
|
35698
|
+
kaGreen,
|
|
35699
|
+
kaGreenLight,
|
|
35700
|
+
learnstormBlue,
|
|
35701
|
+
backgroundBlue,
|
|
35702
|
+
adminGreen: "#78C008",
|
|
35703
|
+
kaBlueExtraLight: "#39c2db",
|
|
35704
|
+
kaBlueHover: "#0c7f99",
|
|
35705
|
+
kaGreenHover: "#518005",
|
|
35706
|
+
// Domain-agnostic colors related to the study guide experience in the
|
|
35707
|
+
// content library.
|
|
35708
|
+
skyDark: "#001f4d",
|
|
35709
|
+
recommendationGold: "#ffbe26",
|
|
35710
|
+
starAced: "#ff9c39",
|
|
35711
|
+
// We interploate the domain colors into this colors object for
|
|
35712
|
+
// historical reasons, but everyone using domain-specific colors
|
|
35713
|
+
// should switch to using the domainColors() function to look up
|
|
35714
|
+
// colors instead.
|
|
35715
|
+
//
|
|
35716
|
+
// TODO(davidflanagan): remove this line once everything is
|
|
35717
|
+
// working correctly with the domainColors() accessor.
|
|
35718
|
+
// ...domainToColorsMap,
|
|
35719
|
+
// mission: missionColors,
|
|
35720
|
+
// Colors for various OAuth providers
|
|
35721
|
+
google: "#C1432f",
|
|
35722
|
+
modernGoogle: "#be2612",
|
|
35723
|
+
modernGoogleHover: "#8c1c0d",
|
|
35724
|
+
facebook: "#4267B2",
|
|
35725
|
+
modernFacebook: "#4267B2",
|
|
35726
|
+
modernFacebookHover: "#00294a",
|
|
35727
|
+
wonderBlocksGold: "#FFB100",
|
|
35728
|
+
wonderBlocksLightBlue: "#37C5FD",
|
|
35729
|
+
// We're using rgba instead of opacity to avoid affecting the focus outline
|
|
35730
|
+
// when we just want to make the color transparent.
|
|
35731
|
+
breadcrumbs: "rgba(255, 255, 255, 0.7)"
|
|
35732
|
+
};
|
|
35733
|
+
const borderRadius = 4;
|
|
35734
|
+
const breadcrumbStyles = {
|
|
35735
|
+
color: colors$1.breadcrumbs,
|
|
35736
|
+
fontFamily: "inherit",
|
|
35737
|
+
fontSize: 15,
|
|
35738
|
+
fontWeight: "bold",
|
|
35739
|
+
letterSpacing: 0.8,
|
|
35740
|
+
lineHeight: "19px",
|
|
35741
|
+
textTransform: "uppercase",
|
|
35742
|
+
// Disable subpixel antialiasing for OSX (improves light on dark text)
|
|
35743
|
+
MozOsxFontSmoothing: "grayscale",
|
|
35744
|
+
WebkitFontSmoothing: "antialiased"
|
|
35745
|
+
};
|
|
35746
|
+
const fonts = {
|
|
35747
|
+
// The body of the page is setup to use 'Helvetica' by default and
|
|
35748
|
+
// 'Lato' if/once it downloads. For your elements to follow this
|
|
35749
|
+
// pattern, all you need is to make the text in your element
|
|
35750
|
+
// inherit from the body using the "inherit" value.
|
|
35751
|
+
regular: "inherit"
|
|
35752
|
+
};
|
|
35753
|
+
const typography = {
|
|
35754
|
+
// For subject names
|
|
35755
|
+
subjectHeadingDesktop: {
|
|
35756
|
+
fontFamily: "inherit",
|
|
35757
|
+
fontSize: 50,
|
|
35758
|
+
fontWeight: "bold",
|
|
35759
|
+
lineHeight: "61px"
|
|
35760
|
+
},
|
|
35761
|
+
subjectHeadingMobile: {
|
|
35762
|
+
fontFamily: "inherit",
|
|
35763
|
+
fontSize: 35,
|
|
35764
|
+
fontWeight: "bold",
|
|
35765
|
+
lineHeight: "37px"
|
|
35766
|
+
},
|
|
35767
|
+
// For the most important thing on the page
|
|
35768
|
+
conceptHeadingDesktop: {
|
|
35769
|
+
fontFamily: "inherit",
|
|
35770
|
+
fontSize: 35,
|
|
35771
|
+
fontWeight: "bold",
|
|
35772
|
+
lineHeight: "37px"
|
|
35773
|
+
},
|
|
35774
|
+
conceptHeadingMobile: {
|
|
35775
|
+
fontFamily: "inherit",
|
|
35776
|
+
fontSize: 23,
|
|
35777
|
+
fontWeight: "bold",
|
|
35778
|
+
lineHeight: "27px"
|
|
35779
|
+
},
|
|
35780
|
+
// For sections or modules
|
|
35781
|
+
subheadingDesktop: {
|
|
35782
|
+
fontFamily: "inherit",
|
|
35783
|
+
fontSize: 23,
|
|
35784
|
+
fontWeight: "bold",
|
|
35785
|
+
lineHeight: "27px"
|
|
35786
|
+
},
|
|
35787
|
+
subheadingMobile: {
|
|
35788
|
+
fontFamily: "inherit",
|
|
35789
|
+
fontSize: 20,
|
|
35790
|
+
fontWeight: "bold",
|
|
35791
|
+
lineHeight: "24px"
|
|
35792
|
+
},
|
|
35793
|
+
smallSubheadingDesktop: {
|
|
35794
|
+
fontFamily: "inherit",
|
|
35795
|
+
fontSize: 20,
|
|
35796
|
+
lineHeight: 1.25
|
|
35797
|
+
},
|
|
35798
|
+
smallSubheadingMobile: {
|
|
35799
|
+
fontFamily: "inherit",
|
|
35800
|
+
fontSize: 15,
|
|
35801
|
+
lineHeight: 1.25
|
|
35802
|
+
},
|
|
35803
|
+
// For callouts
|
|
35804
|
+
smallHeading: {
|
|
35805
|
+
color: colors$1.gray25,
|
|
35806
|
+
fontFamily: "inherit",
|
|
35807
|
+
fontSize: 17,
|
|
35808
|
+
fontWeight: "bold",
|
|
35809
|
+
lineHeight: "23px"
|
|
35810
|
+
},
|
|
35811
|
+
smallHeadingMobile: {
|
|
35812
|
+
color: colors$1.gray25,
|
|
35813
|
+
fontFamily: "inherit",
|
|
35814
|
+
fontSize: 15,
|
|
35815
|
+
fontWeight: "bold",
|
|
35816
|
+
lineHeight: "18px"
|
|
35817
|
+
},
|
|
35818
|
+
// Accent headings
|
|
35819
|
+
accentHeading: {
|
|
35820
|
+
color: colors$1.gray68,
|
|
35821
|
+
fontFamily: "inherit",
|
|
35822
|
+
fontSize: 15,
|
|
35823
|
+
fontWeight: "bold",
|
|
35824
|
+
letterSpacing: 0.8,
|
|
35825
|
+
lineHeight: "19px",
|
|
35826
|
+
textTransform: "uppercase"
|
|
35827
|
+
},
|
|
35828
|
+
bodyLarge: {
|
|
35829
|
+
// For articles with multiple paragraphs
|
|
35830
|
+
fontFamily: fonts.regular,
|
|
35831
|
+
fontSize: 20,
|
|
35832
|
+
lineHeight: "30px"
|
|
35833
|
+
},
|
|
35834
|
+
bodySmall: {
|
|
35835
|
+
// For small blocks of copy
|
|
35836
|
+
fontFamily: fonts.regular,
|
|
35837
|
+
fontSize: 17,
|
|
35838
|
+
fontWeight: "normal",
|
|
35839
|
+
lineHeight: "23px"
|
|
35840
|
+
},
|
|
35841
|
+
bodySmallBold: {
|
|
35842
|
+
// For small blocks of copy
|
|
35843
|
+
fontFamily: fonts.regular,
|
|
35844
|
+
fontSize: 17,
|
|
35845
|
+
fontWeight: "bold",
|
|
35846
|
+
lineHeight: "23px"
|
|
35847
|
+
},
|
|
35848
|
+
bodyXsmall: {
|
|
35849
|
+
// For metadata, descriptions, etc
|
|
35850
|
+
fontFamily: fonts.regular,
|
|
35851
|
+
fontSize: 15,
|
|
35852
|
+
lineHeight: "22px"
|
|
35853
|
+
},
|
|
35854
|
+
bodyXsmallBold: {
|
|
35855
|
+
// For emphasized metadata, descriptions, etc
|
|
35856
|
+
fontFamily: "inherit",
|
|
35857
|
+
fontSize: 15,
|
|
35858
|
+
fontWeight: "bold",
|
|
35859
|
+
lineHeight: "22px"
|
|
35860
|
+
},
|
|
35861
|
+
breadcrumb: breadcrumbStyles,
|
|
35862
|
+
// For in-page tabs, breadcrumbs
|
|
35863
|
+
breadcrumbSmall: { // For in-page tabs and leaf page breadcrumbs
|
|
35864
|
+
...breadcrumbStyles,
|
|
35865
|
+
fontSize: 12,
|
|
35866
|
+
lineHeight: "13px"
|
|
35867
|
+
},
|
|
35868
|
+
labelLarge: {
|
|
35869
|
+
// For chiclets and thumbnail titles
|
|
35870
|
+
fontFamily: "inherit",
|
|
35871
|
+
fontSize: 23,
|
|
35872
|
+
fontWeight: "bold",
|
|
35873
|
+
lineHeight: "27px"
|
|
35874
|
+
},
|
|
35875
|
+
labelMedium: {
|
|
35876
|
+
// For chiclets and thumbnail titles
|
|
35877
|
+
fontFamily: "inherit",
|
|
35878
|
+
fontSize: 15,
|
|
35879
|
+
fontWeight: "bold",
|
|
35880
|
+
lineHeight: "18px"
|
|
35881
|
+
},
|
|
35882
|
+
labelSmall: {
|
|
35883
|
+
// Generally used with labelLarge, for breadcrumbs in thumbnails
|
|
35884
|
+
fontFamily: fonts.regular,
|
|
35885
|
+
fontSize: 12,
|
|
35886
|
+
lineHeight: "14px"
|
|
35887
|
+
},
|
|
35888
|
+
caption: {
|
|
35889
|
+
// For image captions
|
|
35890
|
+
fontFamily: fonts.regular,
|
|
35891
|
+
fontSize: 14,
|
|
35892
|
+
fontStyle: "italic",
|
|
35893
|
+
lineHeight: "17px"
|
|
35894
|
+
},
|
|
35895
|
+
desktopScalingOnMobile: {
|
|
35896
|
+
// For when you need Mobile Safari and friends to stick to desktop
|
|
35897
|
+
// sizes
|
|
35898
|
+
MozTextSizeAdjust: "100%",
|
|
35899
|
+
MsTextSizeAdjust: "100%",
|
|
35900
|
+
WebkitTextSizeAdjust: "100%"
|
|
35901
|
+
},
|
|
35902
|
+
// TODO (josh): This should move to within <ModalHeader>
|
|
35903
|
+
modalSubtitle: {
|
|
35904
|
+
fontSize: 12,
|
|
35905
|
+
lineHeight: 1.65,
|
|
35906
|
+
// NOTE (josh): Font smoothing used here to create a 'medium' weight
|
|
35907
|
+
// font, between normal and bold, on webkit browsers.
|
|
35908
|
+
// This prop is an a11y risk when used on non-bold text, since it
|
|
35909
|
+
// makes text very thin, but it's fine on bold text.
|
|
35910
|
+
WebkitFontSmoothing: "antialiased",
|
|
35911
|
+
fontWeight: "bold"
|
|
35912
|
+
},
|
|
35913
|
+
// HACK(kevinb): temporary wonder blocks styles for header only
|
|
35914
|
+
// TODO(kevinb): use components from wonder-blocks-typography instead
|
|
35915
|
+
wonderBlocksHeader: {
|
|
35916
|
+
paddingLeft: 16,
|
|
35917
|
+
paddingRight: 16,
|
|
35918
|
+
paddingBottom: 24,
|
|
35919
|
+
paddingTop: 34,
|
|
35920
|
+
[mediaQueries.mdOrLarger]: {
|
|
35921
|
+
paddingBottom: 32
|
|
36063
35922
|
}
|
|
35923
|
+
},
|
|
35924
|
+
// HACK(kevinb): temporary wonder blocks styles for header only
|
|
35925
|
+
// TODO(kevinb): use components from wonder-blocks-typography instead
|
|
35926
|
+
wonderBlocksTitle: {
|
|
35927
|
+
color: colors$1.white,
|
|
35928
|
+
fontWeight: 900,
|
|
35929
|
+
// "Black" weight
|
|
35930
|
+
fontSize: 28,
|
|
35931
|
+
lineHeight: "32px",
|
|
35932
|
+
margin: 0,
|
|
35933
|
+
[mediaQueries.mdOrLarger]: {
|
|
35934
|
+
fontSize: 36,
|
|
35935
|
+
lineHeight: "40px"
|
|
35936
|
+
}
|
|
35937
|
+
},
|
|
35938
|
+
// HACK(kevinb): temporary wonder blocks styles for header only
|
|
35939
|
+
// TODO(kevinb): use components from wonder-blocks-typography instead
|
|
35940
|
+
wonderBlocksLabelLarge: {
|
|
35941
|
+
fontSize: 16,
|
|
35942
|
+
lineHeight: "20px",
|
|
35943
|
+
fontWeight: 700 // Bold
|
|
36064
35944
|
|
|
36065
|
-
return {
|
|
36066
|
-
type: "points",
|
|
36067
|
-
earned: 0,
|
|
36068
|
-
total: 1,
|
|
36069
|
-
message: null
|
|
36070
|
-
};
|
|
36071
|
-
}
|
|
36072
|
-
|
|
36073
|
-
static getUserInputFromProps(props) {
|
|
36074
|
-
return props.graph;
|
|
36075
35945
|
}
|
|
35946
|
+
};
|
|
36076
35947
|
|
|
36077
|
-
|
|
36078
|
-
|
|
36079
|
-
|
|
36080
|
-
|
|
36081
|
-
|
|
36082
|
-
|
|
36083
|
-
// $FlowFixMe[prop-missing]
|
|
36084
|
-
backgroundImage: defaultBackgroundImage$1,
|
|
36085
|
-
markings: "graph",
|
|
36086
|
-
showTooltips: false,
|
|
36087
|
-
showProtractor: false,
|
|
36088
|
-
showRuler: false,
|
|
36089
|
-
rulerLabel: "",
|
|
36090
|
-
rulerTicks: 10,
|
|
36091
|
-
graph: {
|
|
36092
|
-
type: "linear"
|
|
36093
|
-
}
|
|
35948
|
+
var globalStyles = /*#__PURE__*/Object.freeze({
|
|
35949
|
+
__proto__: null,
|
|
35950
|
+
colors: colors$1,
|
|
35951
|
+
borderRadius: borderRadius,
|
|
35952
|
+
fonts: fonts,
|
|
35953
|
+
typography: typography
|
|
36094
35954
|
});
|
|
36095
35955
|
|
|
36096
|
-
var InteractiveGraph$1 = {
|
|
36097
|
-
name: "interactive-graph",
|
|
36098
|
-
displayName: "Interactive graph",
|
|
36099
|
-
widget: InteractiveGraph
|
|
36100
|
-
};
|
|
36101
|
-
|
|
36102
35956
|
class AnswerChoice extends React__namespace.Component {
|
|
36103
35957
|
constructor() {
|
|
36104
35958
|
super(...arguments);
|