@codecademy/brand 3.7.0 → 3.8.0-alpha.923923e1fa.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.
@@ -5,5 +5,6 @@ export declare const DietCardGrid: ({ children }: {
5
5
  export declare const CareerPathCard: () => import("react/jsx-runtime").JSX.Element;
6
6
  export declare const CareerPathsPanel: () => import("react/jsx-runtime").JSX.Element;
7
7
  export declare const SkillPathsPanel: () => import("react/jsx-runtime").JSX.Element;
8
+ export declare const getCertificationProviderLogoUrl: (fileName: string) => string;
8
9
  export declare const CertificationPathsPanel: () => import("react/jsx-runtime").JSX.Element;
9
10
  export declare const LiveLearningPanel: () => import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,4 @@
1
+ import _styled from "@emotion/styled/base";
1
2
  /* eslint-disable react/no-array-index-key */ // can be removed once we add dynamic data
2
3
  import { Anchor, Box, Card, FlexBox, GridBox, Text } from '@codecademy/gamut';
3
4
  import { LevelIcon } from '@codecademy/gamut-icons';
@@ -8,6 +9,7 @@ import { liveLearningHubItems, topLanguages } from '../../../lib/catalogList';
8
9
  import { AppHeaderDietCard } from '../AppHeaderDietCard';
9
10
  import { useAppHeaderSectionContext } from '../AppHeaderSection/AppHeaderSectionContext';
10
11
  import { PanelLayout } from '../AppHeaderSection/PanelLayout';
12
+ import { CERTIFICATION_PROVIDERS } from './consts';
11
13
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
12
14
  export const CourseTopicsPanel = () => {
13
15
  const {
@@ -129,22 +131,95 @@ export const SkillPathsPanel = () => {
129
131
  })
130
132
  });
131
133
  };
134
+ export const getCertificationProviderLogoUrl = fileName => `https://static-assets.codecademy.com/assets/certification-provider-logos/catalog-dropdown/v1/${fileName}`;
135
+ const Image = Box.withComponent('img', {
136
+ target: "eqfnvo1",
137
+ label: "Image"
138
+ });
139
+ const GrayscaleToColorHoverCard = /*#__PURE__*/_styled(Card, {
140
+ target: "eqfnvo0",
141
+ label: "GrayscaleToColorHoverCard"
142
+ })("filter:grayscale(1);img{filter:", ({
143
+ overrideImgFilters
144
+ }) => overrideImgFilters ? 'contrast(5)' : 'brightness(0.25)', ";}transition:filter 0.2s ease-in-out;&:hover{filter:grayscale(0);img{filter:brightness(1);}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9BcHBIZWFkZXIvQXBwSGVhZGVyRWxlbWVudHMvQXBwSGVhZGVyQ2F0YWxvZ0Ryb3Bkb3duL05hdlBhbmVscy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0tFIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy9BcHBIZWFkZXIvQXBwSGVhZGVyRWxlbWVudHMvQXBwSGVhZGVyQ2F0YWxvZ0Ryb3Bkb3duL05hdlBhbmVscy50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9uby1hcnJheS1pbmRleC1rZXkgKi8gLy8gY2FuIGJlIHJlbW92ZWQgb25jZSB3ZSBhZGQgZHluYW1pYyBkYXRhXG5pbXBvcnQgeyBBbmNob3IsIEJveCwgQ2FyZCwgRmxleEJveCwgR3JpZEJveCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IExldmVsSWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgQ291cnNlRGlmZmljdWx0eSB9IGZyb20gJy4uLy4uLy4uL0NvbnRlbnRHcm91cEJhc2VDYXJkL3R5cGVzJztcbmltcG9ydCB7IHVzZUdsb2JhbEhlYWRlckl0ZW1DbGljayB9IGZyb20gJy4uLy4uLy4uL0dsb2JhbEhlYWRlci9jb250ZXh0JztcbmltcG9ydCB7IGxpdmVMZWFybmluZ0h1Ykl0ZW1zLCB0b3BMYW5ndWFnZXMgfSBmcm9tICcuLi8uLi8uLi9saWIvY2F0YWxvZ0xpc3QnO1xuaW1wb3J0IHsgQXBwSGVhZGVyRGlldENhcmQgfSBmcm9tICcuLi9BcHBIZWFkZXJEaWV0Q2FyZCc7XG5pbXBvcnQgeyB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCB9IGZyb20gJy4uL0FwcEhlYWRlclNlY3Rpb24vQXBwSGVhZGVyU2VjdGlvbkNvbnRleHQnO1xuaW1wb3J0IHsgUGFuZWxMYXlvdXQgfSBmcm9tICcuLi9BcHBIZWFkZXJTZWN0aW9uL1BhbmVsTGF5b3V0JztcbmltcG9ydCB7IENFUlRJRklDQVRJT05fUFJPVklERVJTIH0gZnJvbSAnLi9jb25zdHMnO1xuXG5leHBvcnQgY29uc3QgQ291cnNlVG9waWNzUGFuZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVySXRlbUNsaWNrIH0gPSB1c2VHbG9iYWxIZWFkZXJJdGVtQ2xpY2soKTtcbiAgY29uc3QgeyB0YWJJbmRleCB9ID0gdXNlQXBwSGVhZGVyU2VjdGlvbkNvbnRleHQoKTtcblxuICBjb25zdCBkZXNjcmlwdGlvbiA9IChcbiAgICA8PlxuICAgICAgRXhwbG9yZSBmcmVlIG9yIHBhaWQgY291cnNlcyBpbiBhIHdpZGUgdmFyaWV0eSBvZiB0b3BpY3MuIFdpdGggc29tZXRoaW5nXG4gICAgICBmb3IgZXZlcnkgc2tpbGwgbGV2ZWwsIGl0JmFwb3M7cyBlYXN5IHRvIGZpbmQgYSBjb3Vyc2UgdGhhdCBmaXRzIHlvdXJcbiAgICAgIGdvYWxzLiBOb3Qgc3VyZSB3aGVyZSB0byBzdGFydD8gJm5ic3A7XG4gICAgICA8QW5jaG9yXG4gICAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgICAgaHJlZj1cIi93ZWxjb21lL2ZpbmQtYS1jb3Vyc2VcIlxuICAgICAgICBvbkNsaWNrPXsoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PlxuICAgICAgICAgIGdsb2JhbEhlYWRlckl0ZW1DbGljayhldmVudCwge1xuICAgICAgICAgICAgdHlwZTogJ2xpbmsnLFxuICAgICAgICAgICAgaHJlZjogJy93ZWxjb21lL2ZpbmQtYS1jb3Vyc2UnLFxuICAgICAgICAgICAgdGV4dDogJ1Rha2UgdGhlIHF1aXonLFxuICAgICAgICAgICAgaWQ6ICd0YWtlLXRoZS1xdWl6JyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIFRha2UgdGhlIHF1aXpcbiAgICAgIDwvQW5jaG9yPlxuICAgIDwvPlxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPFBhbmVsTGF5b3V0XG4gICAgICBoZWFkaW5nPVwiQ291cnNlIHRvcGljc1wiXG4gICAgICBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259XG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZz90eXBlPWNvdXJzZScsXG4gICAgICAgIHRleHQ6ICdWaWV3IGFsbCBjb3Vyc2VzJyxcbiAgICAgICAgdHJhY2tpbmdUYXJnZXQ6ICdjYXRhbG9nLWhlYWRlci12aWV3LWFsbC1jb3Vyc2VzJyxcbiAgICAgICAgaWQ6ICd2aWV3LWFsbC1jb3Vyc2VzJyxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPEdyaWRCb3hcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucz17eyBfOiAnMWZyJywgeHM6ICcxZnIgMWZyJywgbWQ6ICcxZnIgMWZyIDFmcicgfX1cbiAgICAgICAgZ2FwPXs4fVxuICAgICAgICBwbD17MH1cbiAgICAgICAgYXM9XCJ1bFwiXG4gICAgICAgIGxpc3RTdHlsZT1cIm5vbmVcIlxuICAgICAgPlxuICAgICAgICB7dG9wTGFuZ3VhZ2VzLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgIDxBbmNob3JcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgaHJlZj17aXRlbS5ocmVmfVxuICAgICAgICAgICAgb25DbGljaz17KGV2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxBbmNob3JFbGVtZW50LCBNb3VzZUV2ZW50PikgPT5cbiAgICAgICAgICAgICAgZ2xvYmFsSGVhZGVySXRlbUNsaWNrKGV2ZW50LCBpdGVtKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAga2V5PXtgJHtpdGVtLmlkfWB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPEZsZXhCb3hcbiAgICAgICAgICAgICAgaGVpZ2h0PXs0OH1cbiAgICAgICAgICAgICAgcHg9ezE2fVxuICAgICAgICAgICAgICBweT17OH1cbiAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzPVwibWRcIlxuICAgICAgICAgICAgICBib3JkZXI9ezF9XG4gICAgICAgICAgICAgIGJvcmRlckNvbG9yPVwiYm9yZGVyLXRlcnRpYXJ5XCJcbiAgICAgICAgICAgICAgYWxpZ25JdGVtcz1cImNlbnRlclwiXG4gICAgICAgICAgICAgIGtleT17YCR7aXRlbS5pZH1gfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aXRlbS50ZXh0fVxuICAgICAgICAgICAgICB7aXRlbS5iYWRnZX1cbiAgICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICA8L0FuY2hvcj5cbiAgICAgICAgKSl9XG4gICAgICA8L0dyaWRCb3g+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBEaWV0Q2FyZEdyaWQgPSAoeyBjaGlsZHJlbiB9OiB7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfSkgPT4ge1xuICByZXR1cm4gKFxuICAgIDxHcmlkQm94XG4gICAgICBncmlkVGVtcGxhdGVDb2x1bW5zPXt7IF86ICcxZnInLCBzbTogJzFmciAxZnInLCBtZDogJ3JlcGVhdCgzLCAxZnIpJyB9fVxuICAgICAgZ2FwPXsxNn1cbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9HcmlkQm94PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IENhcmVlclBhdGhDYXJkID0gKCkgPT4ge1xuICBjb25zdCB7IHRhYkluZGV4IH0gPSB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCgpO1xuICByZXR1cm4gKFxuICAgIDxBcHBIZWFkZXJEaWV0Q2FyZFxuICAgICAgdGl0bGU9XCJGdWxsLVN0YWNrIEVuZ2luZWVyXCJcbiAgICAgIGhvdXJzPXsxNTB9XG4gICAgICBpY29uPXs8TGV2ZWxJY29uIC8+fVxuICAgICAgZGlmZmljdWx0eT17Q291cnNlRGlmZmljdWx0eS5CZWdpbm5lcn1cbiAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAvPlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IENhcmVlclBhdGhzUGFuZWwgPSAoKSA9PiB7XG4gIHJldHVybiAoXG4gICAgPFBhbmVsTGF5b3V0XG4gICAgICBoZWFkaW5nPVwiUG9wdWxhciBjYXJlZXIgcGF0aHNcIlxuICAgICAgZGVzY3JpcHRpb249XCJDaG9vc2UgeW91ciBjYXJlZXIgYW5kIHdlJ2xsIHRlYWNoIHlvdSB0aGUgc2tpbGxzIHRvIGdldCBqb2ItcmVhZHkuIEVhY2ggQ2FyZWVyIFBhdGggY29udGFpbnMgYSBjdXJhdGVkIGxpc3Qgb2YgbGVzc29ucywgcXVpenplcywgdmlkZW9zLCBhbmQgcHJvamVjdHMgdG8gaGVscCB5b3UgbGVhcm4gYW5kIHByYWN0aWNlIHJlYWwtd29ybGQgc2tpbGxzLlwiXG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZz90eXBlPWNhcmVlci1wYXRoJyxcbiAgICAgICAgdGV4dDogJ1ZpZXcgYWxsIGNhcmVlciBwYXRocycsXG4gICAgICAgIHRyYWNraW5nVGFyZ2V0OiAnY2F0YWxvZy1oZWFkZXItdmlldy1hbGwtY2FyZWVyLXBhdGhzJyxcbiAgICAgICAgaWQ6ICd2aWV3LWFsbC1jYXJlZXItcGF0aHMnLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8RGlldENhcmRHcmlkPlxuICAgICAgICB7QXJyYXkuZnJvbSh7IGxlbmd0aDogNiB9KS5tYXAoKF8sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPENhcmVlclBhdGhDYXJkIGtleT17YCR7aW5kZXh9LWNhcmRgfSAvPlxuICAgICAgICApKX1cbiAgICAgIDwvRGlldENhcmRHcmlkPlxuICAgIDwvUGFuZWxMYXlvdXQ+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgU2tpbGxQYXRoc1BhbmVsID0gKCkgPT4ge1xuICByZXR1cm4gKFxuICAgIDxQYW5lbExheW91dFxuICAgICAgaGVhZGluZz1cIlNraWxsIHBhdGhzXCJcbiAgICAgIGRlc2NyaXB0aW9uPVwiQnVpbGQgYSBzcGVjaWZpYyBza2lsbCBmYXN0IHdpdGggYSBzaG9ydCwgY3VyYXRlZCBwYXRoLlwiXG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZz90eXBlPXNraWxsLXBhdGgnLFxuICAgICAgICB0ZXh0OiAnVmlldyBhbGwgc2tpbGwgcGF0aHMnLFxuICAgICAgICB0cmFja2luZ1RhcmdldDogJ2NhdGFsb2ctaGVhZGVyLXZpZXctYWxsLXNraWxsLXBhdGhzJyxcbiAgICAgICAgaWQ6ICd2aWV3LWFsbC1za2lsbC1wYXRocycsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxEaWV0Q2FyZEdyaWQ+XG4gICAgICAgIHtBcnJheS5mcm9tKHsgbGVuZ3RoOiA2IH0pLm1hcCgoXywgaW5kZXgpID0+IChcbiAgICAgICAgICA8Q2FyZWVyUGF0aENhcmQga2V5PXtgJHtpbmRleH0tY2FyZGB9IC8+XG4gICAgICAgICkpfVxuICAgICAgPC9EaWV0Q2FyZEdyaWQ+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDZXJ0aWZpY2F0aW9uUHJvdmlkZXJMb2dvVXJsID0gKGZpbGVOYW1lOiBzdHJpbmcpID0+XG4gIGBodHRwczovL3N0YXRpYy1hc3NldHMuY29kZWNhZGVteS5jb20vYXNzZXRzL2NlcnRpZmljYXRpb24tcHJvdmlkZXItbG9nb3MvY2F0YWxvZy1kcm9wZG93bi92MS8ke2ZpbGVOYW1lfWA7XG5cbmNvbnN0IEltYWdlID0gQm94LndpdGhDb21wb25lbnQoJ2ltZycpO1xuXG5jb25zdCBHcmF5c2NhbGVUb0NvbG9ySG92ZXJDYXJkID0gc3R5bGVkKENhcmQpPHtcbiAgb3ZlcnJpZGVJbWdGaWx0ZXJzPzogYm9vbGVhbjtcbn0+YFxuICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgaW1nIHtcbiAgICBmaWx0ZXI6ICR7KHsgb3ZlcnJpZGVJbWdGaWx0ZXJzIH0pID0+XG4gICAgICBvdmVycmlkZUltZ0ZpbHRlcnMgPyAnY29udHJhc3QoNSknIDogJ2JyaWdodG5lc3MoMC4yNSknfTtcbiAgfVxuICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4ycyBlYXNlLWluLW91dDtcbiAgJjpob3ZlciB7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgaW1nIHtcbiAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxKTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IFByb3ZpZGVyQ2hpcCA9ICh7XG4gIG5hbWUsXG4gIGhyZWYsXG4gIGltZ1NyYyxcbiAgdGFiSW5kZXgsXG59OiB7XG4gIG5hbWU6IHN0cmluZztcbiAgaHJlZjogc3RyaW5nO1xuICBpbWdTcmM6IHN0cmluZztcbiAgdGFiSW5kZXg6IG51bWJlcjtcbn0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8QW5jaG9yXG4gICAgICBocmVmPXtocmVmfVxuICAgICAgdmFyaWFudD1cImludGVyZmFjZVwiXG4gICAgICBrZXk9e25hbWV9XG4gICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICBkaXNwbGF5PVwiYmxvY2tcIlxuICAgID5cbiAgICAgIDxHcmF5c2NhbGVUb0NvbG9ySG92ZXJDYXJkXG4gICAgICAgIGJvcmRlckNvbG9yPVwiYm9yZGVyLXRlcnRpYXJ5XCJcbiAgICAgICAgYm9yZGVyUmFkaXVzPVwibGdcIlxuICAgICAgICBpc0ludGVyYWN0aXZlXG4gICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgICBwPXs4fVxuICAgICAgICBvdmVycmlkZUltZ0ZpbHRlcnM9e25hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ2t1YmVybmV0ZXMnfVxuICAgICAgPlxuICAgICAgICA8SW1hZ2Ugc3JjPXtpbWdTcmN9IGFsdD17bmFtZX0gZGlzcGxheT1cImJsb2NrXCIgbT1cImF1dG9cIiBoZWlnaHQ9ezUyfSAvPlxuICAgICAgPC9HcmF5c2NhbGVUb0NvbG9ySG92ZXJDYXJkPlxuICAgIDwvQW5jaG9yPlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IENlcnRpZmljYXRpb25QYXRoc1BhbmVsID0gKCkgPT4ge1xuICBjb25zdCB7IHRhYkluZGV4IH0gPSB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCgpO1xuICByZXR1cm4gKFxuICAgIDxQYW5lbExheW91dFxuICAgICAgaGVhZGluZz1cIkNlcnRpZmljYXRpb24gcGF0aHNcIlxuICAgICAgZGVzY3JpcHRpb249XCJQcmVwYXJlIGZvciB0b3AgaW5kdXN0cnkgY2VydGlmaWNhdGlvbnMgd2l0aCBhIGd1aWRlZCBwYXRoLiBFYWNoIG9uZSBpbmNsdWRlcyBleHBlcnQtcmV2aWV3ZWQgbGVzc29ucywgaGFuZHMtb24gcHJvamVjdHMsIGFuZCBwcmFjdGljZSB0ZXN0cyB0byBoZWxwIHlvdSBwYXNzIHRoZSBleGFtLlwiXG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZy9jZXJ0aWZpY2F0aW9uLXByZXAnLFxuICAgICAgICB0ZXh0OiAnRXhwbG9yZSBhbGwgY2VydGlmaWNhdGlvbiBwYXRocycsXG4gICAgICAgIHRyYWNraW5nVGFyZ2V0OiAnY2F0YWxvZy1oZWFkZXItdmlldy1hbGwtY2VydGlmaWNhdGlvbi1wYXRocycsXG4gICAgICAgIGlkOiAndmlldy1hbGwtY2VydGlmaWNhdGlvbi1wYXRocycsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxUZXh0IGFzPVwiaDNcIiBmb250U2l6ZT17MTh9IGZvbnRXZWlnaHQ9XCJib2xkXCI+XG4gICAgICAgIFByb3ZpZGVyc1xuICAgICAgPC9UZXh0PlxuICAgICAgPEdyaWRCb3hcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucz17e1xuICAgICAgICAgIF86ICcxZnInLFxuICAgICAgICAgIHhzOiAncmVwZWF0KDIsIDFmciknLFxuICAgICAgICAgIHNtOiAncmVwZWF0KDMsIDFmciknLFxuICAgICAgICAgIG1kOiAncmVwZWF0KDQsIDFmciknLFxuICAgICAgICB9fVxuICAgICAgICBnYXA9ezE2fVxuICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICBhcz1cInVsXCJcbiAgICAgICAgbGlzdFN0eWxlPVwibm9uZVwiXG4gICAgICAgIHA9ezB9XG4gICAgICAgIG09ezB9XG4gICAgICA+XG4gICAgICAgIHtDRVJUSUZJQ0FUSU9OX1BST1ZJREVSUy5tYXAoKHsgbmFtZSwgbG9nb1VybCwgaHViVHlwZSB9KSA9PiAoXG4gICAgICAgICAgPEJveCBhcz1cImxpXCIga2V5PXtuYW1lfSB3aWR0aD1cIjEwMCVcIj5cbiAgICAgICAgICAgIDxQcm92aWRlckNoaXBcbiAgICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgICAgaHJlZj17XG4gICAgICAgICAgICAgICAgaHViVHlwZSA9PT0gJ3N1Ymh1YidcbiAgICAgICAgICAgICAgICAgID8gYC9zZWFyY2g/cXVlcnk9JHtuYW1lfSBjZXJ0aWZpY2F0aW9uc2BcbiAgICAgICAgICAgICAgICAgIDogYC9jYXRhbG9nL2NlcnRpZmljYXRpb24tcHJlcD9wcm92aWRlcj0ke25hbWUudG9Mb3dlckNhc2UoKX1gXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaW1nU3JjPXtsb2dvVXJsfVxuICAgICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICApKX1cbiAgICAgIDwvR3JpZEJveD5cbiAgICA8L1BhbmVsTGF5b3V0PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IExpdmVMZWFybmluZ1BhbmVsID0gKCkgPT4ge1xuICBjb25zdCB7IGdsb2JhbEhlYWRlckl0ZW1DbGljayB9ID0gdXNlR2xvYmFsSGVhZGVySXRlbUNsaWNrKCk7XG4gIHJldHVybiAoXG4gICAgPFBhbmVsTGF5b3V0XG4gICAgICBoZWFkaW5nPVwiTGl2ZSBsZWFybmluZ1wiXG4gICAgICBkZXNjcmlwdGlvbj1cIkV4cGxvcmUgdGhlIGxpdmUgbGVhcm5pbmcgb3Bwb3J0dW5pdGllcyBhdmFpbGFibGUgaW4gb3VyIGNvdXJzZXNcIlxuICAgICAgbGlua0l0ZW09e3tcbiAgICAgICAgdHlwZTogJ2xpbmsnLFxuICAgICAgICBocmVmOiAnL2xpdmUtbGVhcm5pbmcnLFxuICAgICAgICB0ZXh0OiAnTGVhcm4gbW9yZSBhYm91dCBsaXZlIGxlYXJuaW5nJyxcbiAgICAgICAgdHJhY2tpbmdUYXJnZXQ6ICdjYXRhbG9nLWhlYWRlci1sZWFybi1tb3JlLWFib3V0LWxpdmUtbGVhcm5pbmcnLFxuICAgICAgICBpZDogJ2xlYXJuLW1vcmUtYWJvdXQtbGl2ZS1sZWFybmluZycsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxHcmlkQm94XG4gICAgICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM9e3sgXzogJzFmcicsIG1kOiAncmVwZWF0KDIsIDFmciknIH19XG4gICAgICAgIGdhcD17MTZ9XG4gICAgICA+XG4gICAgICAgIHtsaXZlTGVhcm5pbmdIdWJJdGVtcy5kYXRhLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgIDxBbmNob3JcbiAgICAgICAgICAgIGhyZWY9e2l0ZW0uaHJlZn1cbiAgICAgICAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgICAgICAgIHZhcmlhbnQ9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgb25DbGljaz17KGV2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxBbmNob3JFbGVtZW50LCBNb3VzZUV2ZW50PikgPT5cbiAgICAgICAgICAgICAgZ2xvYmFsSGVhZGVySXRlbUNsaWNrKGV2ZW50LCBpdGVtKVxuICAgICAgICAgICAgfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxDYXJkIGlzSW50ZXJhY3RpdmUgcD17MH0+XG4gICAgICAgICAgICAgIDxCb3hcbiAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMjVweFwiXG4gICAgICAgICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kPXt0aGVtZS5jb2xvcnNbJ2dyYXktMzAwJ119XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxGbGV4Qm94IGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIiBnYXA9ezh9IHA9ezE2fT5cbiAgICAgICAgICAgICAgICA8VGV4dCB2YXJpYW50PVwidGl0bGUteHNcIj57aXRlbS50ZXh0fTwvVGV4dD5cbiAgICAgICAgICAgICAgICB7J2Rlc2NyaXB0aW9uJyBpbiBpdGVtICYmIDxUZXh0PntpdGVtLmRlc2NyaXB0aW9ufTwvVGV4dD59XG4gICAgICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICA8L0FuY2hvcj5cbiAgICAgICAgKSl9XG4gICAgICA8L0dyaWRCb3g+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG4iXX0= */"));
145
+ const ProviderChip = ({
146
+ name,
147
+ href,
148
+ imgSrc,
149
+ tabIndex
150
+ }) => {
151
+ return /*#__PURE__*/_jsx(Anchor, {
152
+ href: href,
153
+ variant: "interface",
154
+ tabIndex: tabIndex,
155
+ width: "100%",
156
+ height: "100%",
157
+ display: "block",
158
+ children: /*#__PURE__*/_jsx(GrayscaleToColorHoverCard, {
159
+ borderColor: "border-tertiary",
160
+ borderRadius: "lg",
161
+ isInteractive: true,
162
+ width: "100%",
163
+ height: "100%",
164
+ p: 8,
165
+ overrideImgFilters: name.toLowerCase() === 'kubernetes',
166
+ children: /*#__PURE__*/_jsx(Image, {
167
+ src: imgSrc,
168
+ alt: name,
169
+ display: "block",
170
+ m: "auto",
171
+ height: 52
172
+ })
173
+ })
174
+ }, name);
175
+ };
132
176
  export const CertificationPathsPanel = () => {
133
- return /*#__PURE__*/_jsx(PanelLayout, {
177
+ const {
178
+ tabIndex
179
+ } = useAppHeaderSectionContext();
180
+ return /*#__PURE__*/_jsxs(PanelLayout, {
134
181
  heading: "Certification paths",
135
- description: "Get ready for certification exams with guided learning paths.",
182
+ description: "Prepare for top industry certifications with a guided path. Each one includes expert-reviewed lessons, hands-on projects, and practice tests to help you pass the exam.",
136
183
  linkItem: {
137
184
  type: 'link',
138
- href: '/catalog?type=certification-path',
139
- text: 'View all certification paths',
185
+ href: '/catalog/certification-prep',
186
+ text: 'Explore all certification paths',
140
187
  trackingTarget: 'catalog-header-view-all-certification-paths',
141
188
  id: 'view-all-certification-paths'
142
189
  },
143
- children: /*#__PURE__*/_jsx(DietCardGrid, {
144
- children: Array.from({
145
- length: 6
146
- }).map((_, index) => /*#__PURE__*/_jsx(CareerPathCard, {}, `${index}-card`))
147
- })
190
+ children: [/*#__PURE__*/_jsx(Text, {
191
+ as: "h3",
192
+ fontSize: 18,
193
+ fontWeight: "bold",
194
+ children: "Providers"
195
+ }), /*#__PURE__*/_jsx(GridBox, {
196
+ gridTemplateColumns: {
197
+ _: '1fr',
198
+ xs: 'repeat(2, 1fr)',
199
+ sm: 'repeat(3, 1fr)',
200
+ md: 'repeat(4, 1fr)'
201
+ },
202
+ gap: 16,
203
+ width: "100%",
204
+ as: "ul",
205
+ listStyle: "none",
206
+ p: 0,
207
+ m: 0,
208
+ children: CERTIFICATION_PROVIDERS.map(({
209
+ name,
210
+ logoUrl,
211
+ hubType
212
+ }) => /*#__PURE__*/_jsx(Box, {
213
+ as: "li",
214
+ width: "100%",
215
+ children: /*#__PURE__*/_jsx(ProviderChip, {
216
+ name: name,
217
+ href: hubType === 'subhub' ? `/search?query=${name} certifications` : `/catalog/certification-prep?provider=${name.toLowerCase()}`,
218
+ imgSrc: logoUrl,
219
+ tabIndex: tabIndex
220
+ })
221
+ }, name))
222
+ })]
148
223
  });
149
224
  };
150
225
  export const LiveLearningPanel = () => {
@@ -11,3 +11,8 @@ export declare const bannerData: {
11
11
  text: string;
12
12
  href: string;
13
13
  };
14
+ export declare const CERTIFICATION_PROVIDERS: {
15
+ name: string;
16
+ logoUrl: string;
17
+ hubType: string;
18
+ }[];
@@ -1,5 +1,5 @@
1
1
  import { BookLibraryIcon, BriefcaseIcon, OnlineClassStudentIcon, ProfessionalCertificateIcon, StudyBookIcon } from '@codecademy/gamut-icons';
2
- import { CareerPathsPanel, CertificationPathsPanel, CourseTopicsPanel, LiveLearningPanel, SkillPathsPanel } from './NavPanels';
2
+ import { CareerPathsPanel, CertificationPathsPanel, CourseTopicsPanel, getCertificationProviderLogoUrl, LiveLearningPanel, SkillPathsPanel } from './NavPanels';
3
3
  export const CATALOG_NAV_SECTIONS = [{
4
4
  item: {
5
5
  icon: StudyBookIcon,
@@ -49,4 +49,53 @@ export const CATALOG_NAV_SECTIONS = [{
49
49
  export const bannerData = {
50
50
  text: 'Want to help shape digital products? Check out the new UX Designer career path.',
51
51
  href: '/learn/paths/ux-designer-career-path'
52
- };
52
+ };
53
+ export const CERTIFICATION_PROVIDERS = [{
54
+ name: 'Microsoft',
55
+ logoUrl: getCertificationProviderLogoUrl('microsoft.svg'),
56
+ hubType: 'subhub'
57
+ }, {
58
+ name: 'CompTIA',
59
+ logoUrl: getCertificationProviderLogoUrl('comptia.svg'),
60
+ hubType: 'subhub'
61
+ }, {
62
+ name: 'ISC2',
63
+ logoUrl: getCertificationProviderLogoUrl('isc2.svg'),
64
+ hubType: 'subhub'
65
+ }, {
66
+ name: 'AWS',
67
+ logoUrl: getCertificationProviderLogoUrl('aws.svg'),
68
+ hubType: 'subhub'
69
+ }, {
70
+ name: 'Google',
71
+ logoUrl: getCertificationProviderLogoUrl('google.svg'),
72
+ hubType: 'certification-prep'
73
+ }, {
74
+ name: 'Cisco',
75
+ logoUrl: getCertificationProviderLogoUrl('cisco.svg'),
76
+ hubType: 'certification-prep'
77
+ }, {
78
+ name: 'IIBA',
79
+ logoUrl: getCertificationProviderLogoUrl('iiba.svg'),
80
+ hubType: 'certification-prep'
81
+ }, {
82
+ name: 'ISTQB',
83
+ logoUrl: getCertificationProviderLogoUrl('istqb.svg'),
84
+ hubType: 'certification-prep'
85
+ }, {
86
+ name: 'ISACA',
87
+ logoUrl: getCertificationProviderLogoUrl('isaca.svg'),
88
+ hubType: 'certification-prep'
89
+ }, {
90
+ name: 'Kubernetes',
91
+ logoUrl: getCertificationProviderLogoUrl('kubernetes.svg'),
92
+ hubType: 'certification-prep'
93
+ }, {
94
+ name: 'Oracle',
95
+ logoUrl: getCertificationProviderLogoUrl('oracle.svg'),
96
+ hubType: 'certification-prep'
97
+ }, {
98
+ name: 'Project Management Institute',
99
+ logoUrl: getCertificationProviderLogoUrl('pmi.svg'),
100
+ hubType: 'certification-prep'
101
+ }];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@codecademy/brand",
3
3
  "description": "Brand component library for Codecademy",
4
- "version": "3.7.0",
4
+ "version": "3.8.0-alpha.923923e1fa.0",
5
5
  "author": "Codecademy Engineering <dev@codecademy.com>",
6
6
  "dependencies": {
7
7
  "@emotion/is-prop-valid": "^1.2.1",