@codecademy/gamut 70.0.0 → 70.0.1-alpha.5a599b.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.
Files changed (85) hide show
  1. package/agent-tools/DESIGN.Codecademy.md +1 -1
  2. package/agent-tools/rules/accessibility.mdc +1 -1
  3. package/bin/lib/claude.mjs +14 -5
  4. package/bin/lib/cursor.mjs +4 -1
  5. package/dist/AccordionButtonDeprecated/ButtonDeprecated/index.d.ts +2 -2
  6. package/dist/AccordionButtonDeprecated/ButtonDeprecated/index.js +1 -1
  7. package/dist/Alert/elements.d.ts +2 -2
  8. package/dist/Anchor/index.d.ts +19 -9
  9. package/dist/Anchor/index.js +9 -6
  10. package/dist/BarChart/BarRow/elements.d.ts +47 -45
  11. package/dist/BarChart/utils/hooks.d.ts +2 -2
  12. package/dist/BarChart/utils/hooks.js +3 -1
  13. package/dist/Box/GridBox.d.ts +1 -0
  14. package/dist/Box/GridBox.js +1 -1
  15. package/dist/Box/props.d.ts +1 -1
  16. package/dist/Breadcrumbs/index.d.ts +5 -5
  17. package/dist/Breadcrumbs/index.js +2 -2
  18. package/dist/Button/CTAButton.d.ts +2 -2
  19. package/dist/Button/FillButton.d.ts +4 -4
  20. package/dist/Button/IconButton.d.ts +4 -4
  21. package/dist/Button/StrokeButton.d.ts +4 -4
  22. package/dist/Button/TextButton.d.ts +4 -4
  23. package/dist/Button/shared/InlineIconButton.d.ts +2 -2
  24. package/dist/Button/shared/styles.d.ts +3 -3
  25. package/dist/Button/shared/types.d.ts +1 -1
  26. package/dist/ButtonBase/ButtonBase.d.ts +9 -4
  27. package/dist/ButtonBase/ButtonBase.js +11 -4
  28. package/dist/Card/elements.d.ts +109 -103
  29. package/dist/Card/styles.d.ts +8 -8
  30. package/dist/Coachmark/index.d.ts +1 -1
  31. package/dist/ConnectedForm/ConnectedForm.d.ts +1 -1
  32. package/dist/ConnectedForm/ConnectedFormGroup.js +7 -5
  33. package/dist/ConnectedForm/SubmitButton.js +3 -2
  34. package/dist/ConnectedForm/utils.d.ts +1 -1
  35. package/dist/ConnectedForm/utils.js +1 -1
  36. package/dist/DatePicker/DatePickerInput/index.d.ts +1 -1
  37. package/dist/Disclosure/elements.d.ts +18 -12
  38. package/dist/FeatureShimmer/index.js +1 -1
  39. package/dist/Form/SelectDropdown/SelectDropdown.js +1 -1
  40. package/dist/Form/SelectDropdown/elements/containers.js +1 -1
  41. package/dist/Form/SelectDropdown/elements/controls.js +2 -2
  42. package/dist/Form/SelectDropdown/elements/multi-value.js +2 -2
  43. package/dist/Form/SelectDropdown/types/internal.d.ts +2 -2
  44. package/dist/Form/SelectDropdown/utils.js +2 -1
  45. package/dist/Form/elements/Form.d.ts +15 -15
  46. package/dist/Form/elements/FormGroup.d.ts +1 -1
  47. package/dist/Form/styles/Checkbox-styles.d.ts +1 -1
  48. package/dist/GridForm/GridFormButtons/index.d.ts +4 -4
  49. package/dist/GridForm/GridFormInputGroup/index.js +4 -3
  50. package/dist/List/ListProvider.d.ts +1 -1
  51. package/dist/List/elements.d.ts +44 -42
  52. package/dist/Menu/MenuItem.js +10 -6
  53. package/dist/Menu/elements.d.ts +2 -2
  54. package/dist/Modals/Dialog.js +6 -2
  55. package/dist/Modals/Modal.js +5 -2
  56. package/dist/Modals/elements.d.ts +1 -1
  57. package/dist/Pagination/AnimatedPaginationButtons.d.ts +31 -29
  58. package/dist/Pagination/EllipsisButton.d.ts +2 -2
  59. package/dist/Pagination/PaginationButton.d.ts +6 -6
  60. package/dist/Pagination/utils.d.ts +31 -29
  61. package/dist/Pagination/utils.js +14 -11
  62. package/dist/Popover/Popover.js +6 -6
  63. package/dist/Popover/types.d.ts +4 -3
  64. package/dist/PopoverContainer/PopoverContainer.js +9 -9
  65. package/dist/PopoverContainer/hooks.d.ts +16 -4
  66. package/dist/PopoverContainer/hooks.js +50 -27
  67. package/dist/PopoverContainer/types.d.ts +2 -1
  68. package/dist/Tabs/TabButton.d.ts +2 -2
  69. package/dist/Tabs/TabNavLink.d.ts +2 -2
  70. package/dist/Tag/elements.d.ts +14 -8
  71. package/dist/Tag/index.js +1 -1
  72. package/dist/Tip/InfoTip/InfoTipButton.d.ts +4 -4
  73. package/dist/Tip/PreviewTip/elements.d.ts +12 -6
  74. package/dist/Tip/__tests__/helpers.d.ts +1 -1
  75. package/dist/Tip/shared/FloatingTip.js +2 -2
  76. package/dist/Tip/shared/types.d.ts +2 -2
  77. package/dist/Tip/shared/utils.js +1 -1
  78. package/dist/index.d.ts +0 -1
  79. package/dist/index.js +0 -1
  80. package/dist/utils/nullish.d.ts +10 -0
  81. package/dist/utils/nullish.js +11 -0
  82. package/dist/utils/react.js +4 -2
  83. package/package.json +10 -10
  84. package/dist/HiddenText/index.d.ts +0 -7
  85. package/dist/HiddenText/index.js +0 -16
@@ -1,4 +1,5 @@
1
1
  import { Children, isValidElement } from 'react';
2
+ import { isNullish } from './nullish';
2
3
 
3
4
  /**
4
5
  * Recursively extracts plain text content from React children.
@@ -29,11 +30,12 @@ export const extractTextContent = children => {
29
30
  if (typeof child === 'string' || typeof child === 'number') {
30
31
  return String(child);
31
32
  }
32
- if (typeof child === 'boolean' || child == null) {
33
+ if (typeof child === 'boolean' || isNullish(child)) {
33
34
  return '';
34
35
  }
35
36
  if (/*#__PURE__*/isValidElement(child)) {
36
- const textContent = child.props.children ?? child.props.text ?? '';
37
+ const props = child.props;
38
+ const textContent = props.children ?? props.text ?? '';
37
39
  return extractTextContent(textContent);
38
40
  }
39
41
  return '';
package/package.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
2
  "name": "@codecademy/gamut",
3
3
  "description": "Styleguide & Component library for Codecademy",
4
- "version": "70.0.0",
4
+ "version": "70.0.1-alpha.5a599b.0",
5
5
  "author": "Codecademy Engineering <dev@codecademy.com>",
6
6
  "bin": "./bin/gamut.mjs",
7
7
  "dependencies": {
8
- "@codecademy/gamut-icons": "9.57.7",
9
- "@codecademy/gamut-illustrations": "0.58.13",
10
- "@codecademy/gamut-patterns": "0.10.32",
11
- "@codecademy/gamut-styles": "20.0.0",
12
- "@codecademy/variance": "0.26.1",
8
+ "@codecademy/gamut-icons": "9.57.8-alpha.5a599b.0",
9
+ "@codecademy/gamut-illustrations": "0.58.14-alpha.5a599b.0",
10
+ "@codecademy/gamut-patterns": "0.10.33-alpha.5a599b.0",
11
+ "@codecademy/gamut-styles": "20.0.1-alpha.5a599b.0",
12
+ "@codecademy/variance": "0.26.2-alpha.5a599b.0",
13
13
  "@formatjs/intl-locale": "5.3.1",
14
14
  "@react-aria/interactions": "3.25.0",
15
15
  "@types/marked": "^4.0.8",
16
16
  "@vidstack/react": "^1.12.12",
17
17
  "classnames": "^2.2.5",
18
- "framer-motion": "^11.18.0",
18
+ "framer-motion": "^12.0.0",
19
19
  "html-to-react": "^1.6.0",
20
20
  "invariant": "^2.2.4",
21
21
  "lodash": "^4.17.23",
@@ -23,7 +23,7 @@
23
23
  "polished": "^4.1.2",
24
24
  "react-aria-components": "1.7.1",
25
25
  "react-focus-on": "3.10.0",
26
- "react-hook-form": "^7.65.0",
26
+ "react-hook-form": "^7.71.2",
27
27
  "react-player": "^2.16.0",
28
28
  "react-select": "^5.2.2",
29
29
  "react-truncate-markup": "^5.1.2",
@@ -44,8 +44,8 @@
44
44
  "peerDependencies": {
45
45
  "@emotion/react": "^11.4.0",
46
46
  "@emotion/styled": "^11.3.0",
47
- "react": "^17.0.2 || ^18.3.0",
48
- "react-dom": "^17.0.2 || ^18.3.0"
47
+ "react": "^17.0.2 || ^18.3.0 || ^19.0.0",
48
+ "react-dom": "^17.0.2 || ^18.3.0 || ^19.0.0"
49
49
  },
50
50
  "publishConfig": {
51
51
  "access": "public"
@@ -1,7 +0,0 @@
1
- /**
2
- * @deprecated Use `<Text>` instead with `screenreader='true'`
3
- */
4
- export declare const HiddenText: import("@emotion/styled").StyledComponent<{
5
- theme?: import("@emotion/react").Theme;
6
- as?: React.ElementType;
7
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
@@ -1,16 +0,0 @@
1
- import _styled from "@emotion/styled/base";
2
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
3
- /**
4
- * @deprecated Use `<Text>` instead with `screenreader='true'`
5
- */
6
- export const HiddenText = /*#__PURE__*/_styled("span", {
7
- target: "e88fw8k0",
8
- label: "HiddenText"
9
- })(process.env.NODE_ENV === "production" ? {
10
- name: "3a43ku",
11
- styles: "display:inline-block;font-size:0;height:1px;overflow:hidden;position:absolute;width:1px"
12
- } : {
13
- name: "3a43ku",
14
- styles: "display:inline-block;font-size:0;height:1px;overflow:hidden;position:absolute;width:1px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9IaWRkZW5UZXh0L2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLcUMiLCJmaWxlIjoiLi4vLi4vc3JjL0hpZGRlblRleHQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSBgPFRleHQ+YCBpbnN0ZWFkIHdpdGggYHNjcmVlbnJlYWRlcj0ndHJ1ZSdgXG4gKi9cbmV4cG9ydCBjb25zdCBIaWRkZW5UZXh0ID0gc3R5bGVkLnNwYW5gXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuYDtcbiJdfQ== */",
15
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
16
- });