@openedx/paragon 23.0.0-alpha.3 → 23.0.0-alpha.5

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 (258) hide show
  1. package/bin/paragon-scripts.js +10 -0
  2. package/dist/Annotation/index.scss +16 -0
  3. package/dist/Card/CardDeck.js +0 -2
  4. package/dist/Card/CardDeck.js.map +1 -1
  5. package/dist/Card/index.scss +8 -6
  6. package/dist/Carousel/index.scss +24 -1
  7. package/dist/Chip/ChipIcon.d.ts +1 -1
  8. package/dist/CloseButton/index.scss +8 -0
  9. package/dist/ColorPicker/index.scss +1 -1
  10. package/dist/Container/index.d.ts +16 -0
  11. package/dist/Container/index.js +15 -13
  12. package/dist/Container/index.js.map +1 -1
  13. package/dist/DataTable/index.scss +12 -0
  14. package/dist/Dropdown/dropdown-bootstrap.scss +6 -0
  15. package/dist/Dropzone/index.scss +34 -0
  16. package/dist/Form/_FormText.scss +1 -1
  17. package/dist/Form/_bootstrap-custom-forms.scss +40 -0
  18. package/dist/Form/_index.scss +9 -0
  19. package/dist/Form/_mixins.scss +22 -0
  20. package/dist/IconButton/index.d.ts +1 -1
  21. package/dist/IconButton/index.js +1 -1
  22. package/dist/IconButton/index.js.map +1 -1
  23. package/dist/IconButton/index.scss +146 -0
  24. package/dist/Menu/SelectMenu.js +9 -4
  25. package/dist/Menu/SelectMenu.js.map +1 -1
  26. package/dist/Menu/index.scss +8 -0
  27. package/dist/Modal/ModalContext.d.ts +15 -0
  28. package/dist/Modal/ModalContext.js +7 -14
  29. package/dist/Modal/ModalContext.js.map +1 -1
  30. package/dist/Modal/ModalDialog.d.ts +110 -0
  31. package/dist/Modal/ModalDialog.js +30 -24
  32. package/dist/Modal/ModalDialog.js.map +1 -1
  33. package/dist/Modal/ModalDialogHeader.d.ts +10 -0
  34. package/dist/Modal/ModalDialogHeader.js +6 -7
  35. package/dist/Modal/ModalDialogHeader.js.map +1 -1
  36. package/dist/Modal/ModalLayer.d.ts +53 -0
  37. package/dist/Modal/ModalLayer.js +5 -14
  38. package/dist/Modal/ModalLayer.js.map +1 -1
  39. package/dist/Modal/Portal.d.ts +11 -0
  40. package/dist/Modal/Portal.js +5 -6
  41. package/dist/Modal/Portal.js.map +1 -1
  42. package/dist/Modal/_ModalDialog.scss +22 -2
  43. package/dist/Nav/index.scss +8 -0
  44. package/dist/Overlay/index.d.ts +2 -2
  45. package/dist/PageBanner/index.scss +2 -2
  46. package/dist/Pagination/pagination-bootstrap.scss +9 -0
  47. package/dist/Popover/index.scss +1 -1
  48. package/dist/ProductTour/Checkpoint.scss +1 -1
  49. package/dist/ProgressBar/bootstrap-progress.scss +20 -5
  50. package/dist/ProgressBar/index.scss +3 -3
  51. package/dist/Stepper/index.scss +1 -1
  52. package/dist/Sticky/index.scss +12 -0
  53. package/dist/Toast/index.scss +13 -1
  54. package/dist/Tooltip/index.scss +16 -0
  55. package/dist/core.css +913 -470
  56. package/dist/core.css.map +1 -1
  57. package/dist/core.min.css +1 -1
  58. package/dist/hooks/useArrowKeyNavigation.js +2 -3
  59. package/dist/hooks/useArrowKeyNavigation.js.map +1 -1
  60. package/dist/index.d.ts +19 -5
  61. package/dist/index.js +5 -5
  62. package/dist/light.css +2035 -1315
  63. package/dist/light.css.map +1 -1
  64. package/dist/light.min.css +1 -1
  65. package/icons/es5/Newsstand.js +15 -0
  66. package/icons/es5/index.js +1 -0
  67. package/icons/es5/index.ts +1 -0
  68. package/icons/jsx/Newsstand.jsx +17 -0
  69. package/icons/jsx/index.jsx +1 -0
  70. package/icons/svg/newsstand.svg +1 -0
  71. package/lib/build-tokens.js +67 -31
  72. package/package.json +8 -5
  73. package/src/Annotation/index.scss +16 -0
  74. package/src/Card/CardDeck.jsx +0 -3
  75. package/src/Card/README.md +0 -31
  76. package/src/Card/index.scss +8 -6
  77. package/src/Carousel/index.scss +24 -1
  78. package/src/CloseButton/index.scss +8 -0
  79. package/src/ColorPicker/index.scss +1 -1
  80. package/src/Container/{Container.test.jsx → Container.test.tsx} +14 -8
  81. package/src/Container/README.md +4 -0
  82. package/src/Container/index.tsx +64 -0
  83. package/src/DataTable/index.scss +12 -0
  84. package/src/DataTable/selection/tests/ControlledSelectHeader.test.jsx +7 -7
  85. package/src/Dropdown/dropdown-bootstrap.scss +6 -0
  86. package/src/Dropzone/index.scss +34 -0
  87. package/src/Form/_FormText.scss +1 -1
  88. package/src/Form/_bootstrap-custom-forms.scss +40 -0
  89. package/src/Form/_index.scss +9 -0
  90. package/src/Form/_mixins.scss +22 -0
  91. package/src/IconButton/index.scss +146 -0
  92. package/src/IconButton/index.tsx +1 -1
  93. package/src/Menu/SelectMenu.jsx +5 -0
  94. package/src/Menu/SelectMenu.test.jsx +6 -0
  95. package/src/Menu/index.scss +8 -0
  96. package/src/Menu/select-menu.md +8 -0
  97. package/src/Modal/{ModalContext.jsx → ModalContext.tsx} +19 -16
  98. package/src/Modal/{ModalDialog.jsx → ModalDialog.tsx} +57 -26
  99. package/src/Modal/{ModalDialogHeader.jsx → ModalDialogHeader.tsx} +17 -11
  100. package/src/Modal/{ModalLayer.jsx → ModalLayer.tsx} +17 -17
  101. package/src/Modal/{Portal.jsx → Portal.tsx} +10 -7
  102. package/src/Modal/_ModalDialog.scss +22 -2
  103. package/src/Modal/modal-dialog.mdx +95 -6
  104. package/src/Modal/tests/{ModalDialog.test.jsx → ModalDialog.test.tsx} +18 -10
  105. package/src/Modal/tests/{ModalLayer.test.jsx → ModalLayer.test.tsx} +5 -5
  106. package/src/Modal/tests/{Portal.test.jsx → Portal.test.tsx} +3 -3
  107. package/src/Nav/index.scss +8 -0
  108. package/src/PageBanner/index.scss +2 -2
  109. package/src/Pagination/pagination-bootstrap.scss +9 -0
  110. package/src/Popover/index.scss +1 -1
  111. package/src/ProductTour/Checkpoint.scss +1 -1
  112. package/src/ProgressBar/bootstrap-progress.scss +20 -5
  113. package/src/ProgressBar/index.scss +3 -3
  114. package/src/Stepper/index.scss +1 -1
  115. package/src/Sticky/index.scss +12 -0
  116. package/src/Toast/index.scss +13 -1
  117. package/src/Tooltip/index.scss +16 -0
  118. package/src/hooks/useArrowKeyNavigation.jsx +1 -2
  119. package/src/index.d.ts +19 -5
  120. package/src/index.js +5 -5
  121. package/styles/css/core/abstraction-variables.css +44 -0
  122. package/styles/css/core/custom-media-breakpoints.css +3 -4
  123. package/styles/css/core/index.css +2 -1
  124. package/styles/css/core/variables.css +494 -430
  125. package/styles/css/themes/light/abstraction-variables.css +304 -0
  126. package/styles/css/themes/light/index.css +1 -0
  127. package/styles/css/themes/light/utility-classes.css +2 -3
  128. package/styles/css/themes/light/variables.css +1753 -1334
  129. package/styles/scss/core/_typography.scss +16 -4
  130. package/styles/scss/core/_utilities.scss +7 -3
  131. package/styles/scss/core/_variables.scss +43 -30
  132. package/styles/scss/core/core.scss +1 -0
  133. package/tokens/src/core/alias/size.json +6 -5
  134. package/tokens/src/core/components/ActionRow.json +3 -2
  135. package/tokens/src/core/components/Alert.json +12 -10
  136. package/tokens/src/core/components/Annotation.json +9 -7
  137. package/tokens/src/core/components/Avatar.json +9 -9
  138. package/tokens/src/core/components/AvatarButton.json +4 -3
  139. package/tokens/src/core/components/Badge.json +12 -9
  140. package/tokens/src/core/components/Breadcrumb.json +7 -5
  141. package/tokens/src/core/components/Bubble.json +4 -3
  142. package/tokens/src/core/components/Button/core.json +35 -59
  143. package/tokens/src/core/components/Card.json +33 -44
  144. package/tokens/src/core/components/Carousel.json +39 -13
  145. package/tokens/src/core/components/Chip.json +13 -21
  146. package/tokens/src/core/components/ChipCarousel.json +4 -5
  147. package/tokens/src/core/components/CloseButton.json +2 -6
  148. package/tokens/src/core/components/Code.json +9 -8
  149. package/tokens/src/core/components/Collapsible.json +10 -13
  150. package/tokens/src/core/components/ColorPicker.json +3 -2
  151. package/tokens/src/core/components/Container.json +6 -5
  152. package/tokens/src/core/components/DataTable.json +17 -9
  153. package/tokens/src/core/components/Dropdown.json +24 -29
  154. package/tokens/src/core/components/Dropzone.json +5 -7
  155. package/tokens/src/core/components/Form/other.json +5 -4
  156. package/tokens/src/core/components/Form/size.json +72 -119
  157. package/tokens/src/core/components/Form/spacing.json +39 -83
  158. package/tokens/src/core/components/Form/transition.json +43 -7
  159. package/tokens/src/core/components/Form/typography.json +24 -88
  160. package/tokens/src/core/components/Icon.json +6 -5
  161. package/tokens/src/core/components/IconButton.json +4 -7
  162. package/tokens/src/core/components/Image.json +7 -6
  163. package/tokens/src/core/components/Menu.json +14 -12
  164. package/tokens/src/core/components/Modal.json +26 -21
  165. package/tokens/src/core/components/Nav.json +14 -16
  166. package/tokens/src/core/components/Navbar.json +15 -30
  167. package/tokens/src/core/components/Pagination.json +23 -24
  168. package/tokens/src/core/components/Popover.json +18 -14
  169. package/tokens/src/core/components/ProductTour.json +8 -14
  170. package/tokens/src/core/components/ProgressBar.json +29 -14
  171. package/tokens/src/core/components/SearchField.json +7 -9
  172. package/tokens/src/core/components/SelectableBox.json +4 -3
  173. package/tokens/src/core/components/Sheet.json +3 -2
  174. package/tokens/src/core/components/Spinner.json +9 -7
  175. package/tokens/src/core/components/Stack.json +2 -1
  176. package/tokens/src/core/components/Stepper.json +12 -14
  177. package/tokens/src/core/components/Sticky.json +2 -1
  178. package/tokens/src/core/components/Tab.json +8 -7
  179. package/tokens/src/core/components/Tabs.json +5 -5
  180. package/tokens/src/core/components/Toast.json +11 -8
  181. package/tokens/src/core/components/Tooltip.json +13 -11
  182. package/tokens/src/core/components/general/caret.json +5 -3
  183. package/tokens/src/core/components/general/headings.json +5 -4
  184. package/tokens/src/core/components/general/hr.json +3 -2
  185. package/tokens/src/core/components/general/input.json +19 -19
  186. package/tokens/src/core/components/general/link.json +13 -12
  187. package/tokens/src/core/components/general/list.json +9 -6
  188. package/tokens/src/core/components/general/text.json +6 -12
  189. package/tokens/src/core/global/breakpoints.json +25 -6
  190. package/tokens/src/core/global/elevation.json +55 -13
  191. package/tokens/src/core/global/other.json +5 -1
  192. package/tokens/src/core/global/spacing.json +70 -17
  193. package/tokens/src/core/global/transition.json +41 -4
  194. package/tokens/src/core/global/typography.json +248 -53
  195. package/tokens/src/core/utilities/color.json +35 -4
  196. package/tokens/src/themes/light/alias/color.json +276 -75
  197. package/tokens/src/themes/light/components/Alert.json +15 -26
  198. package/tokens/src/themes/light/components/Annotation.json +27 -13
  199. package/tokens/src/themes/light/components/Avatar.json +2 -1
  200. package/tokens/src/themes/light/components/Badge.json +57 -122
  201. package/tokens/src/themes/light/components/Breadcrumb.json +6 -5
  202. package/tokens/src/themes/light/components/Bubble.json +9 -8
  203. package/tokens/src/themes/light/components/Button/brand.json +171 -119
  204. package/tokens/src/themes/light/components/Button/core.json +8 -9
  205. package/tokens/src/themes/light/components/Button/danger.json +171 -112
  206. package/tokens/src/themes/light/components/Button/dark.json +188 -106
  207. package/tokens/src/themes/light/components/Button/info.json +186 -112
  208. package/tokens/src/themes/light/components/Button/light.json +186 -110
  209. package/tokens/src/themes/light/components/Button/primary.json +178 -116
  210. package/tokens/src/themes/light/components/Button/secondary.json +166 -132
  211. package/tokens/src/themes/light/components/Button/success.json +176 -117
  212. package/tokens/src/themes/light/components/Button/tertiary.json +34 -60
  213. package/tokens/src/themes/light/components/Button/warning.json +164 -128
  214. package/tokens/src/themes/light/components/Card.json +10 -21
  215. package/tokens/src/themes/light/components/Carousel.json +12 -11
  216. package/tokens/src/themes/light/components/Chip.json +14 -26
  217. package/tokens/src/themes/light/components/CloseButton.json +12 -2
  218. package/tokens/src/themes/light/components/Code.json +7 -9
  219. package/tokens/src/themes/light/components/DataTable.json +7 -11
  220. package/tokens/src/themes/light/components/Dropdown.json +17 -20
  221. package/tokens/src/themes/light/components/Dropzone.json +49 -11
  222. package/tokens/src/themes/light/components/Form/color.json +101 -155
  223. package/tokens/src/themes/light/components/Form/elevation.json +38 -42
  224. package/tokens/src/themes/light/components/Form/other.json +44 -41
  225. package/tokens/src/themes/light/components/IconButton.json +408 -256
  226. package/tokens/src/themes/light/components/Image.json +7 -4
  227. package/tokens/src/themes/light/components/Menu.json +12 -10
  228. package/tokens/src/themes/light/components/Modal.json +22 -12
  229. package/tokens/src/themes/light/components/Nav.json +82 -94
  230. package/tokens/src/themes/light/components/Navbar.json +32 -76
  231. package/tokens/src/themes/light/components/OverflowScroll.json +3 -1
  232. package/tokens/src/themes/light/components/PageBanner.json +11 -10
  233. package/tokens/src/themes/light/components/Pagination.json +19 -23
  234. package/tokens/src/themes/light/components/Popover.json +22 -27
  235. package/tokens/src/themes/light/components/ProductTour.json +9 -20
  236. package/tokens/src/themes/light/components/ProgressBar.json +12 -10
  237. package/tokens/src/themes/light/components/Scrollable.json +3 -3
  238. package/tokens/src/themes/light/components/SearchField.json +9 -9
  239. package/tokens/src/themes/light/components/Sheet.json +6 -7
  240. package/tokens/src/themes/light/components/Stepper.json +12 -17
  241. package/tokens/src/themes/light/components/Sticky.json +31 -6
  242. package/tokens/src/themes/light/components/Tab.json +47 -24
  243. package/tokens/src/themes/light/components/Toast.json +26 -14
  244. package/tokens/src/themes/light/components/Tooltip.json +25 -10
  245. package/tokens/src/themes/light/components/general/body.json +3 -2
  246. package/tokens/src/themes/light/components/general/headings.json +2 -1
  247. package/tokens/src/themes/light/components/general/hr.json +3 -6
  248. package/tokens/src/themes/light/components/general/input.json +11 -4
  249. package/tokens/src/themes/light/components/general/link.json +34 -43
  250. package/tokens/src/themes/light/components/general/list.json +15 -19
  251. package/tokens/src/themes/light/components/general/text.json +5 -6
  252. package/tokens/src/themes/light/global/color.json +1592 -867
  253. package/tokens/src/themes/light/global/elevation.json +481 -93
  254. package/tokens/style-dictionary.js +342 -144
  255. package/tokens/utils.js +176 -6
  256. package/src/Container/index.jsx +0 -49
  257. package/tokens/src/core/global/display.json +0 -22
  258. /package/src/Truncate/{Truncate.test.js → utils.test.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ModalDialogHeader.js","names":["React","PropTypes","classNames","ModalDialogHeader","_ref","as","children","props","_objectWithoutProperties","_excluded","createElement","_objectSpread","className","propTypes","elementType","node","isRequired","string","defaultProps","undefined"],"sources":["../../src/Modal/ModalDialogHeader.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nfunction ModalDialogHeader({\n as,\n children,\n ...props\n}) {\n return React.createElement(\n as,\n {\n ...props,\n className: classNames('pgn__modal-header', props.className),\n },\n children,\n );\n}\n\nModalDialogHeader.propTypes = {\n /** Specifies the base element */\n as: PropTypes.elementType,\n /** Specifies the contents of the header */\n children: PropTypes.node.isRequired,\n /** Specifies class name to append to the base element */\n className: PropTypes.string,\n};\n\nModalDialogHeader.defaultProps = {\n as: 'div',\n className: undefined,\n};\n\nexport default ModalDialogHeader;\n"],"mappings":";;;;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AAEnC,SAASC,iBAAiBA,CAAAC,IAAA,EAIvB;EAAA,IAHDC,EAAE,GAAAD,IAAA,CAAFC,EAAE;IACFC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IACLC,KAAK,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EAER,oBAAOT,KAAK,CAACU,aAAa,CACxBL,EAAE,EAAAM,aAAA,CAAAA,aAAA,KAEGJ,KAAK;IACRK,SAAS,EAAEV,UAAU,CAAC,mBAAmB,EAAEK,KAAK,CAACK,SAAS;EAAC,IAE7DN,QACF,CAAC;AACH;AAEAH,iBAAiB,CAACU,SAAS,GAAG;EAC5B;EACAR,EAAE,EAAEJ,SAAS,CAACa,WAAW;EACzB;EACAR,QAAQ,EAAEL,SAAS,CAACc,IAAI,CAACC,UAAU;EACnC;EACAJ,SAAS,EAAEX,SAAS,CAACgB;AACvB,CAAC;AAEDd,iBAAiB,CAACe,YAAY,GAAG;EAC/Bb,EAAE,EAAE,KAAK;EACTO,SAAS,EAAEO;AACb,CAAC;AAED,eAAehB,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"ModalDialogHeader.js","names":["React","PropTypes","classNames","ModalDialogHeader","forwardRef","_ref","ref","_ref$as","as","children","props","_objectWithoutProperties","_excluded","createElement","_objectSpread","className","propTypes","elementType","node","isRequired","string"],"sources":["../../src/Modal/ModalDialogHeader.tsx"],"sourcesContent":["/* eslint-disable react/require-default-props */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport type { ComponentWithAsProp } from '../utils/types/bootstrap';\n\nexport interface Props {\n as?: string;\n children: React.ReactNode;\n className?: string;\n}\n\ntype HeaderType = ComponentWithAsProp<'div', Props>;\n\nconst ModalDialogHeader: HeaderType = React.forwardRef<HTMLDivElement, Props>(({\n as = 'div',\n children,\n ...props\n}, ref) => (\n React.createElement(\n as,\n {\n ...props,\n ref,\n className: classNames('pgn__modal-header', props.className),\n },\n children,\n )\n));\n\nModalDialogHeader.propTypes = {\n /** Specifies the base element */\n as: PropTypes.elementType,\n /** Specifies the contents of the header */\n children: PropTypes.node.isRequired,\n /** Specifies class name to append to the base element */\n className: PropTypes.string,\n};\n\nexport default ModalDialogHeader;\n"],"mappings":";;;;;;;;;AAAA;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AAWnC,IAAMC,iBAA6B,gBAAGH,KAAK,CAACI,UAAU,CAAwB,UAAAC,IAAA,EAI3EC,GAAG;EAAA,IAAAC,OAAA,GAAAF,IAAA,CAHJG,EAAE;IAAFA,EAAE,GAAAD,OAAA,cAAG,KAAK,GAAAA,OAAA;IACVE,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACLC,KAAK,GAAAC,wBAAA,CAAAN,IAAA,EAAAO,SAAA;EAAA,oBAERZ,KAAK,CAACa,aAAa,CACjBL,EAAE,EAAAM,aAAA,CAAAA,aAAA,KAEGJ,KAAK;IACRJ,GAAG,EAAHA,GAAG;IACHS,SAAS,EAAEb,UAAU,CAAC,mBAAmB,EAAEQ,KAAK,CAACK,SAAS;EAAC,IAE7DN,QACF,CAAC;AAAA,CACF,CAAC;AAEFN,iBAAiB,CAACa,SAAS,GAAG;EAC5B;EACAR,EAAE,EAAEP,SAAS,CAACgB,WAAW;EACzB;EACAR,QAAQ,EAAER,SAAS,CAACiB,IAAI,CAACC,UAAU;EACnC;EACAJ,SAAS,EAAEd,SAAS,CAACmB;AACvB,CAAC;AAED,eAAejB,iBAAiB","ignoreList":[]}
@@ -0,0 +1,53 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ declare function ModalBackdrop({ onClick }: {
4
+ onClick?: () => void;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ declare namespace ModalBackdrop {
7
+ var propTypes: {
8
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
9
+ };
10
+ }
11
+ declare function ModalContentContainer({ children }: {
12
+ children?: React.ReactNode;
13
+ }): import("react/jsx-runtime").JSX.Element;
14
+ declare namespace ModalContentContainer {
15
+ var propTypes: {
16
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
17
+ };
18
+ }
19
+ interface Props {
20
+ /** Specifies the contents of the modal */
21
+ children: React.ReactNode;
22
+ /** A callback function for when the modal is dismissed */
23
+ onClose: () => void;
24
+ /** Is the modal dialog open or closed */
25
+ isOpen: boolean;
26
+ /** Prevent clicking on the backdrop or pressing Esc to close the modal */
27
+ isBlocking?: boolean;
28
+ /** Specifies the z-index of the modal */
29
+ zIndex?: number;
30
+ }
31
+ /**
32
+ * The ModalLayer should be used for any component that wishes to engage the user
33
+ * in a "mode" where a layer on top of the application is interactive while the
34
+ * rest of the application is made non-interactive. The assumption made by this
35
+ * component is that if a modal object is visible then it is "enabled"
36
+ */
37
+ declare function ModalLayer({ children, onClose, isOpen, isBlocking, zIndex, }: Props): import("react/jsx-runtime").JSX.Element | null;
38
+ declare namespace ModalLayer {
39
+ var propTypes: {
40
+ /** Specifies the contents of the modal */
41
+ children: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
42
+ /** A callback function for when the modal is dismissed */
43
+ onClose: PropTypes.Validator<(...args: any[]) => any>;
44
+ /** Is the modal dialog open or closed */
45
+ isOpen: PropTypes.Validator<boolean>;
46
+ /** Prevent clicking on the backdrop or pressing Esc to close the modal */
47
+ isBlocking: PropTypes.Requireable<boolean>;
48
+ /** Specifies the z-index of the modal */
49
+ zIndex: PropTypes.Requireable<number>;
50
+ };
51
+ }
52
+ export { ModalBackdrop, ModalContentContainer };
53
+ export default ModalLayer;
@@ -22,13 +22,11 @@ function ModalBackdrop(_ref) {
22
22
  ModalBackdrop.propTypes = {
23
23
  onClick: PropTypes.func
24
24
  };
25
- ModalBackdrop.defaultProps = {
26
- onClick: undefined
27
- };
28
25
 
29
26
  // istanbul ignore next
30
27
  function ModalContentContainer(_ref2) {
31
- var children = _ref2.children;
28
+ var _ref2$children = _ref2.children,
29
+ children = _ref2$children === void 0 ? null : _ref2$children;
32
30
  return /*#__PURE__*/React.createElement("div", {
33
31
  className: "pgn__modal-content-container"
34
32
  }, children);
@@ -36,10 +34,6 @@ function ModalContentContainer(_ref2) {
36
34
  ModalContentContainer.propTypes = {
37
35
  children: PropTypes.node
38
36
  };
39
- ModalContentContainer.defaultProps = {
40
- children: null
41
- };
42
-
43
37
  /**
44
38
  * The ModalLayer should be used for any component that wishes to engage the user
45
39
  * in a "mode" where a layer on top of the application is interactive while the
@@ -50,7 +44,8 @@ function ModalLayer(_ref3) {
50
44
  var children = _ref3.children,
51
45
  onClose = _ref3.onClose,
52
46
  isOpen = _ref3.isOpen,
53
- isBlocking = _ref3.isBlocking,
47
+ _ref3$isBlocking = _ref3.isBlocking,
48
+ isBlocking = _ref3$isBlocking === void 0 ? false : _ref3$isBlocking,
54
49
  zIndex = _ref3.zIndex;
55
50
  useEffect(function () {
56
51
  if (isOpen) {
@@ -65,7 +60,7 @@ function ModalLayer(_ref3) {
65
60
  if (!isOpen) {
66
61
  return null;
67
62
  }
68
- var handleClose = isBlocking ? null : onClose;
63
+ var handleClose = isBlocking ? undefined : onClose;
69
64
  return /*#__PURE__*/React.createElement(ModalContextProvider, {
70
65
  onClose: onClose,
71
66
  isOpen: isOpen,
@@ -93,10 +88,6 @@ ModalLayer.propTypes = {
93
88
  /** Specifies the z-index of the modal */
94
89
  zIndex: PropTypes.number
95
90
  };
96
- ModalLayer.defaultProps = {
97
- isBlocking: false,
98
- zIndex: undefined
99
- };
100
91
  export { ModalBackdrop, ModalContentContainer };
101
92
  export default ModalLayer;
102
93
  //# sourceMappingURL=ModalLayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalLayer.js","names":["React","useEffect","classNames","PropTypes","FocusOn","Portal","ModalContextProvider","ModalBackdrop","_ref","onClick","createElement","className","onKeyDown","propTypes","func","defaultProps","undefined","ModalContentContainer","_ref2","children","node","ModalLayer","_ref3","onClose","isOpen","isBlocking","zIndex","document","body","classList","add","remove","handleClose","allowPinchZoom","scrollLock","enabled","onEscapeKey","onClickOutside","concat","isRequired","bool","number"],"sources":["../../src/Modal/ModalLayer.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { FocusOn } from 'react-focus-on';\nimport Portal from './Portal';\nimport { ModalContextProvider } from './ModalContext';\n\n// istanbul ignore next\nfunction ModalBackdrop({ onClick }) {\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n className=\"pgn__modal-backdrop\"\n onClick={onClick}\n onKeyDown={onClick}\n data-testid=\"modal-backdrop\"\n />\n );\n}\n\nModalBackdrop.propTypes = {\n onClick: PropTypes.func,\n};\n\nModalBackdrop.defaultProps = {\n onClick: undefined,\n};\n\n// istanbul ignore next\nfunction ModalContentContainer({ children }) {\n return <div className=\"pgn__modal-content-container\">{children}</div>;\n}\n\nModalContentContainer.propTypes = {\n children: PropTypes.node,\n};\n\nModalContentContainer.defaultProps = {\n children: null,\n};\n\n/**\n * The ModalLayer should be used for any component that wishes to engage the user\n * in a \"mode\" where a layer on top of the application is interactive while the\n * rest of the application is made non-interactive. The assumption made by this\n * component is that if a modal object is visible then it is \"enabled\"\n */\nfunction ModalLayer({\n children, onClose, isOpen, isBlocking, zIndex,\n}) {\n useEffect(() => {\n if (isOpen) {\n document.body.classList.add('pgn__hidden-scroll-padding-right');\n } else {\n document.body.classList.remove('pgn__hidden-scroll-padding-right');\n }\n return () => {\n document.body.classList.remove('pgn__hidden-scroll-padding-right');\n };\n }, [isOpen]);\n\n if (!isOpen) {\n return null;\n }\n\n const handleClose = isBlocking ? null : onClose;\n\n return (\n <ModalContextProvider onClose={onClose} isOpen={isOpen} isBlocking={isBlocking}>\n <Portal>\n <FocusOn\n allowPinchZoom\n scrollLock\n enabled={isOpen}\n onEscapeKey={handleClose}\n onClickOutside={handleClose}\n className={classNames(\n 'pgn__modal-layer',\n zIndex ? `zindex-${zIndex}` : '',\n )}\n >\n <ModalContentContainer>\n <ModalBackdrop onClick={handleClose} />\n {children}\n </ModalContentContainer>\n </FocusOn>\n </Portal>\n </ModalContextProvider>\n );\n}\n\nModalLayer.propTypes = {\n /** Specifies the contents of the modal */\n children: PropTypes.node.isRequired,\n /** A callback function for when the modal is dismissed */\n onClose: PropTypes.func.isRequired,\n /** Is the modal dialog open or closed */\n isOpen: PropTypes.bool.isRequired,\n /** Prevent clicking on the backdrop or pressing Esc to close the modal */\n isBlocking: PropTypes.bool,\n /** Specifies the z-index of the modal */\n zIndex: PropTypes.number,\n};\n\nModalLayer.defaultProps = {\n isBlocking: false,\n zIndex: undefined,\n};\n\nexport { ModalBackdrop, ModalContentContainer };\nexport default ModalLayer;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ModalLayer.js","names":["React","useEffect","classNames","PropTypes","FocusOn","Portal","ModalContextProvider","ModalBackdrop","_ref","onClick","createElement","className","onKeyDown","propTypes","func","ModalContentContainer","_ref2","_ref2$children","children","node","ModalLayer","_ref3","onClose","isOpen","_ref3$isBlocking","isBlocking","zIndex","document","body","classList","add","remove","handleClose","undefined","allowPinchZoom","scrollLock","enabled","onEscapeKey","onClickOutside","concat","isRequired","bool","number"],"sources":["../../src/Modal/ModalLayer.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { FocusOn } from 'react-focus-on';\nimport Portal from './Portal';\nimport { ModalContextProvider } from './ModalContext';\n\n// istanbul ignore next\nfunction ModalBackdrop({ onClick }: { onClick?: () => void }) {\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n className=\"pgn__modal-backdrop\"\n onClick={onClick}\n onKeyDown={onClick}\n data-testid=\"modal-backdrop\"\n />\n );\n}\n\nModalBackdrop.propTypes = {\n onClick: PropTypes.func,\n};\n\n// istanbul ignore next\nfunction ModalContentContainer({ children = null }: { children?: React.ReactNode }) {\n return <div className=\"pgn__modal-content-container\">{children}</div>;\n}\n\nModalContentContainer.propTypes = {\n children: PropTypes.node,\n};\n\ninterface Props {\n /** Specifies the contents of the modal */\n children: React.ReactNode;\n /** A callback function for when the modal is dismissed */\n onClose: () => void;\n /** Is the modal dialog open or closed */\n isOpen: boolean;\n /** Prevent clicking on the backdrop or pressing Esc to close the modal */\n isBlocking?: boolean;\n /** Specifies the z-index of the modal */\n zIndex?: number;\n}\n\n/**\n * The ModalLayer should be used for any component that wishes to engage the user\n * in a \"mode\" where a layer on top of the application is interactive while the\n * rest of the application is made non-interactive. The assumption made by this\n * component is that if a modal object is visible then it is \"enabled\"\n */\nfunction ModalLayer({\n children, onClose, isOpen, isBlocking = false, zIndex,\n}: Props) {\n useEffect(() => {\n if (isOpen) {\n document.body.classList.add('pgn__hidden-scroll-padding-right');\n } else {\n document.body.classList.remove('pgn__hidden-scroll-padding-right');\n }\n return () => {\n document.body.classList.remove('pgn__hidden-scroll-padding-right');\n };\n }, [isOpen]);\n\n if (!isOpen) {\n return null;\n }\n\n const handleClose = isBlocking ? undefined : onClose;\n\n return (\n <ModalContextProvider onClose={onClose} isOpen={isOpen} isBlocking={isBlocking}>\n <Portal>\n <FocusOn\n allowPinchZoom\n scrollLock\n enabled={isOpen}\n onEscapeKey={handleClose}\n onClickOutside={handleClose}\n className={classNames(\n 'pgn__modal-layer',\n zIndex ? `zindex-${zIndex}` : '',\n )}\n >\n <ModalContentContainer>\n <ModalBackdrop onClick={handleClose} />\n {children}\n </ModalContentContainer>\n </FocusOn>\n </Portal>\n </ModalContextProvider>\n );\n}\n\nModalLayer.propTypes = {\n /** Specifies the contents of the modal */\n children: PropTypes.node.isRequired,\n /** A callback function for when the modal is dismissed */\n onClose: PropTypes.func.isRequired,\n /** Is the modal dialog open or closed */\n isOpen: PropTypes.bool.isRequired,\n /** Prevent clicking on the backdrop or pressing Esc to close the modal */\n isBlocking: PropTypes.bool,\n /** Specifies the z-index of the modal */\n zIndex: PropTypes.number,\n};\n\nexport { ModalBackdrop, ModalContentContainer };\nexport default ModalLayer;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ interface Props {
3
+ children: React.ReactNode;
4
+ }
5
+ declare class Portal extends React.Component<Props> {
6
+ private rootName;
7
+ private rootElement;
8
+ constructor(props: Props);
9
+ render(): React.ReactPortal | null;
10
+ }
11
+ export default Portal;
@@ -2,8 +2,6 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
2
2
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
3
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
4
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
5
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
8
6
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9
7
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
@@ -11,9 +9,11 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
11
9
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
12
10
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
13
11
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
12
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
14
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
14
15
  import React from 'react';
15
16
  import ReactDOM from 'react-dom';
16
- import PropTypes from 'prop-types';
17
17
  var Portal = /*#__PURE__*/function (_React$Component) {
18
18
  _inherits(Portal, _React$Component);
19
19
  var _super = _createSuper(Portal);
@@ -21,6 +21,8 @@ var Portal = /*#__PURE__*/function (_React$Component) {
21
21
  var _this;
22
22
  _classCallCheck(this, Portal);
23
23
  _this = _super.call(this, props);
24
+ _defineProperty(_assertThisInitialized(_this), "rootName", void 0);
25
+ _defineProperty(_assertThisInitialized(_this), "rootElement", void 0);
24
26
  _this.rootName = 'paragon-portal-root';
25
27
  // istanbul ignore if
26
28
  if (typeof document === 'undefined') {
@@ -47,8 +49,5 @@ var Portal = /*#__PURE__*/function (_React$Component) {
47
49
  }]);
48
50
  return Portal;
49
51
  }(React.Component);
50
- Portal.propTypes = {
51
- children: PropTypes.node.isRequired
52
- };
53
52
  export default Portal;
54
53
  //# sourceMappingURL=Portal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Portal.js","names":["React","ReactDOM","PropTypes","Portal","_React$Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","rootName","document","rootElement","getElementById","createElement","setAttribute","body","appendChild","_createClass","key","value","render","createPortal","children","Component","propTypes","node","isRequired"],"sources":["../../src/Modal/Portal.jsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\n\nclass Portal extends React.Component {\n constructor(props) {\n super(props);\n this.rootName = 'paragon-portal-root';\n // istanbul ignore if\n if (typeof document === 'undefined') {\n this.rootElement = null;\n } else if (document.getElementById(this.rootName)) {\n this.rootElement = document.getElementById(this.rootName);\n } else {\n const rootElement = document.createElement('div');\n rootElement.setAttribute('id', this.rootName);\n this.rootElement = document.body.appendChild(rootElement);\n }\n }\n\n render() {\n // istanbul ignore else\n if (this.rootElement) {\n return ReactDOM.createPortal(\n this.props.children,\n this.rootElement,\n );\n }\n // istanbul ignore next\n return null;\n }\n}\n\nPortal.propTypes = {\n children: PropTypes.node.isRequired,\n};\n\nexport default Portal;\n"],"mappings":";;;;;;;;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,QAAQ,MAAM,WAAW;AAChC,OAAOC,SAAS,MAAM,YAAY;AAAC,IAE7BC,MAAM,0BAAAC,gBAAA;EAAAC,SAAA,CAAAF,MAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,MAAA;EACV,SAAAA,OAAYK,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAP,MAAA;IACjBM,KAAA,GAAAH,MAAA,CAAAK,IAAA,OAAMH,KAAK;IACXC,KAAA,CAAKG,QAAQ,GAAG,qBAAqB;IACrC;IACA,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;MACnCJ,KAAA,CAAKK,WAAW,GAAG,IAAI;IACzB,CAAC,MAAM,IAAID,QAAQ,CAACE,cAAc,CAACN,KAAA,CAAKG,QAAQ,CAAC,EAAE;MACjDH,KAAA,CAAKK,WAAW,GAAGD,QAAQ,CAACE,cAAc,CAACN,KAAA,CAAKG,QAAQ,CAAC;IAC3D,CAAC,MAAM;MACL,IAAME,WAAW,GAAGD,QAAQ,CAACG,aAAa,CAAC,KAAK,CAAC;MACjDF,WAAW,CAACG,YAAY,CAAC,IAAI,EAAER,KAAA,CAAKG,QAAQ,CAAC;MAC7CH,KAAA,CAAKK,WAAW,GAAGD,QAAQ,CAACK,IAAI,CAACC,WAAW,CAACL,WAAW,CAAC;IAC3D;IAAC,OAAAL,KAAA;EACH;EAACW,YAAA,CAAAjB,MAAA;IAAAkB,GAAA;IAAAC,KAAA,EAED,SAAAC,OAAA,EAAS;MACP;MACA,IAAI,IAAI,CAACT,WAAW,EAAE;QACpB,oBAAOb,QAAQ,CAACuB,YAAY,CAC1B,IAAI,CAAChB,KAAK,CAACiB,QAAQ,EACnB,IAAI,CAACX,WACP,CAAC;MACH;MACA;MACA,OAAO,IAAI;IACb;EAAC;EAAA,OAAAX,MAAA;AAAA,EA1BkBH,KAAK,CAAC0B,SAAS;AA6BpCvB,MAAM,CAACwB,SAAS,GAAG;EACjBF,QAAQ,EAAEvB,SAAS,CAAC0B,IAAI,CAACC;AAC3B,CAAC;AAED,eAAe1B,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"Portal.js","names":["React","ReactDOM","Portal","_React$Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","rootName","document","rootElement","getElementById","createElement","setAttribute","body","appendChild","_createClass","key","value","render","createPortal","children","Component"],"sources":["../../src/Modal/Portal.tsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\n\ninterface Props {\n children: React.ReactNode;\n}\n\nclass Portal extends React.Component<Props> {\n private rootName: string;\n\n private rootElement: HTMLElement | null;\n\n constructor(props: Props) {\n super(props);\n this.rootName = 'paragon-portal-root';\n // istanbul ignore if\n if (typeof document === 'undefined') {\n this.rootElement = null;\n } else if (document.getElementById(this.rootName)) {\n this.rootElement = document.getElementById(this.rootName);\n } else {\n const rootElement = document.createElement('div');\n rootElement.setAttribute('id', this.rootName);\n this.rootElement = document.body.appendChild(rootElement);\n }\n }\n\n render() {\n // istanbul ignore else\n if (this.rootElement) {\n return ReactDOM.createPortal(\n this.props.children,\n this.rootElement,\n );\n }\n // istanbul ignore next\n return null;\n }\n}\n\nexport default Portal;\n"],"mappings":";;;;;;;;;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,QAAQ,MAAM,WAAW;AAAC,IAM3BC,MAAM,0BAAAC,gBAAA;EAAAC,SAAA,CAAAF,MAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,MAAA;EAKV,SAAAA,OAAYK,KAAY,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAP,MAAA;IACxBM,KAAA,GAAAH,MAAA,CAAAK,IAAA,OAAMH,KAAK;IAAEI,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IACbA,KAAA,CAAKK,QAAQ,GAAG,qBAAqB;IACrC;IACA,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;MACnCN,KAAA,CAAKO,WAAW,GAAG,IAAI;IACzB,CAAC,MAAM,IAAID,QAAQ,CAACE,cAAc,CAACR,KAAA,CAAKK,QAAQ,CAAC,EAAE;MACjDL,KAAA,CAAKO,WAAW,GAAGD,QAAQ,CAACE,cAAc,CAACR,KAAA,CAAKK,QAAQ,CAAC;IAC3D,CAAC,MAAM;MACL,IAAME,WAAW,GAAGD,QAAQ,CAACG,aAAa,CAAC,KAAK,CAAC;MACjDF,WAAW,CAACG,YAAY,CAAC,IAAI,EAAEV,KAAA,CAAKK,QAAQ,CAAC;MAC7CL,KAAA,CAAKO,WAAW,GAAGD,QAAQ,CAACK,IAAI,CAACC,WAAW,CAACL,WAAW,CAAC;IAC3D;IAAC,OAAAP,KAAA;EACH;EAACa,YAAA,CAAAnB,MAAA;IAAAoB,GAAA;IAAAC,KAAA,EAED,SAAAC,OAAA,EAAS;MACP;MACA,IAAI,IAAI,CAACT,WAAW,EAAE;QACpB,oBAAOd,QAAQ,CAACwB,YAAY,CAC1B,IAAI,CAAClB,KAAK,CAACmB,QAAQ,EACnB,IAAI,CAACX,WACP,CAAC;MACH;MACA;MACA,OAAO,IAAI;IACb;EAAC;EAAA,OAAAb,MAAA;AAAA,EA9BkBF,KAAK,CAAC2B,SAAS;AAiCpC,eAAezB,MAAM","ignoreList":[]}
@@ -1,3 +1,23 @@
1
+ :root {
2
+ --pgn-elevation-modal-content-box-shadow-sm-up:
3
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-1-offset-x)
4
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-1-offset-y)
5
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-1-blur)
6
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-1-color),
7
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-2-offset-x)
8
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-2-offset-y)
9
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-2-blur)
10
+ var(--pgn-elevation-modal-content-box-shadow-sm-up-2-color);
11
+
12
+ --pgn-spacing-modal-footer-padding-base:
13
+ var(--pgn-spacing-modal-footer-padding-base-y)
14
+ var(--pgn-spacing-modal-footer-padding-base-x);
15
+
16
+ --pgn-spacing-modal-header-padding-base:
17
+ var(--pgn-spacing-modal-header-padding-base-y)
18
+ var(--pgn-spacing-modal-header-padding-base-x);
19
+ }
20
+
1
21
  .pgn__modal {
2
22
  background: var(--pgn-color-modal-content-bg);
3
23
  border-radius: calc(var(--pgn-size-modal-content-border-radius) - var(--pgn-size-modal-content-border-width));
@@ -122,7 +142,7 @@
122
142
  }
123
143
 
124
144
  .pgn__modal-title {
125
- font-size: var(--pgn-typography-font-size-h3);
145
+ font-size: var(--pgn-typography-font-size-h3-base);
126
146
  margin-inline-end: 3rem; // roughly accomodate the width of the close buttonn
127
147
  text-align: start;
128
148
  }
@@ -310,7 +330,7 @@
310
330
  }
311
331
 
312
332
  .pgn__modal-title {
313
- font-size: var(--pgn-typography-font-size-h4);
333
+ font-size: var(--pgn-typography-font-size-h4-base);
314
334
  display: flex;
315
335
  flex-grow: 1;
316
336
  align-items: center;
@@ -1,5 +1,13 @@
1
1
  @import "mixins";
2
2
 
3
+ :root {
4
+ --pgn-border-color-nav-tabs-link-border-hover:
5
+ var(--pgn-border-color-nav-tabs-link-border-hover-top)
6
+ var(--pgn-border-color-nav-tabs-link-border-hover-right)
7
+ var(--pgn-border-color-nav-tabs-link-border-hover-bottom)
8
+ var(--pgn-border-color-nav-tabs-link-border-hover-left);
9
+ }
10
+
3
11
  // Base class
4
12
  //
5
13
  // Kickstart any navigation component with a set of style resets. Works with
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { type OverlayProps } from 'react-bootstrap/Overlay';
3
3
  import { type OverlayTriggerProps, type OverlayTriggerType } from 'react-bootstrap/OverlayTrigger';
4
4
  import PropTypes from 'prop-types';
5
- declare function Overlay(props: OverlayProps): React.JSX.Element;
5
+ declare function Overlay(props: OverlayProps): import("react/jsx-runtime").JSX.Element;
6
6
  declare namespace Overlay {
7
7
  var propTypes: {
8
8
  /** Specifies the content of the `Overlay`. */
@@ -72,7 +72,7 @@ declare namespace Overlay {
72
72
  transition: React.ForwardRefExoticComponent<import("react-bootstrap/Fade").FadeProps & React.RefAttributes<import("react-transition-group/Transition").default<any>>>;
73
73
  };
74
74
  }
75
- declare function OverlayTrigger(props: OverlayTriggerProps): React.JSX.Element;
75
+ declare function OverlayTrigger(props: OverlayTriggerProps): import("react/jsx-runtime").JSX.Element;
76
76
  declare namespace OverlayTrigger {
77
77
  var propTypes: {
78
78
  /** Specifies the content of the `OverlayTrigger`. */
@@ -4,12 +4,12 @@
4
4
  min-height: 36px;
5
5
  display: flex;
6
6
  flex-wrap: nowrap;
7
- font-size: var(--pgn-typography-font-size-small-x);
7
+ font-size: var(--pgn-typography-font-size-xs);
8
8
  background-color: var(--pgn-page-baner-bg, inherit);
9
9
  color: var(--pgn-page-baner-color, inherit);
10
10
 
11
11
  @include media-breakpoint-up(md) {
12
- font-size: var(--pgn-typography-font-size-small-base);
12
+ font-size: var(--pgn-typography-font-size-sm);
13
13
  }
14
14
  }
15
15
 
@@ -1,3 +1,12 @@
1
+ :root {
2
+ --pgn-elevation-pagination-focus-box-shadow:
3
+ var(--pgn-elevation-pagination-focus-box-shadow-offset-x)
4
+ var(--pgn-elevation-pagination-focus-box-shadow-offset-y)
5
+ var(--pgn-elevation-pagination-focus-box-shadow-blur)
6
+ var(--pgn-elevation-pagination-focus-box-shadow-spread)
7
+ var(--pgn-elevation-pagination-focus-box-shadow-color);
8
+ }
9
+
1
10
  .pagination {
2
11
  display: flex;
3
12
 
@@ -7,7 +7,7 @@
7
7
  .popover-header {
8
8
  display: flex;
9
9
  align-items: center;
10
- font-size: var(--pgn-typography-font-size-h5);
10
+ font-size: var(--pgn-typography-font-size-h5-base);
11
11
  }
12
12
 
13
13
  .pgn__icon {
@@ -88,7 +88,7 @@
88
88
  }
89
89
 
90
90
  #pgn__checkpoint-title {
91
- font-size: var(--pgn-typography-font-size-h3);
91
+ font-size: var(--pgn-typography-font-size-h3-base);
92
92
  margin-inline-end: map_get($spacers, 2\.5);
93
93
  margin-bottom: 0;
94
94
  }
@@ -1,3 +1,18 @@
1
+ :root {
2
+ --pgn-transition-progress-bar-animation-timing:
3
+ var(--pgn-transition-progress-bar-animation-timing-duration)
4
+ var(--pgn-transition-progress-bar-animation-timing-timing-function)
5
+ var(--pgn-transition-progress-bar-animation-timing-iteration-count)
6
+ var(--pgn-transition-progress-bar-animation-timing-delay);
7
+
8
+ --pgn-transition-progress-bar-transition:
9
+ var(--pgn-transition-progress-bar-transition-property)
10
+ var(--pgn-transition-progress-bar-transition-duration)
11
+ var(--pgn-transition-progress-bar-transition-timing-function)
12
+ var(--pgn-transition-progress-bar-transition-delay)
13
+ var(--pgn-transition-progress-bar-transition-behavior);
14
+ }
15
+
1
16
  @if $enable-transitions {
2
17
  @keyframes progress-bar-stripes {
3
18
  from { background-position: var(--pgn-size-progress-bar-height-base) 0; }
@@ -10,7 +25,7 @@
10
25
  height: var(--pgn-size-progress-bar-height-base);
11
26
  overflow: hidden;
12
27
  line-height: 0;
13
- background-color: var(--pgn-color-progress-bar-bg);
28
+ background-color: var(--pgn-color-progress-bg);
14
29
  box-shadow: var(--pgn-elevation-progress-bar-box-shadow);
15
30
 
16
31
  @include font-size(var(--pgn-typography-progress-bar-font-size));
@@ -22,12 +37,12 @@
22
37
  flex-direction: column;
23
38
  justify-content: center;
24
39
  overflow: hidden;
25
- color: var(--pgn-color-progress-bar-bar-base);
40
+ color: var(--pgn-color-progress-bar-base);
26
41
  text-align: center;
27
42
  white-space: nowrap;
28
- background-color: var(--pgn-color-progress-bar-bar-bg-base);
43
+ background-color: var(--pgn-color-progress-bar-bg-base);
29
44
 
30
- @include transition(var(--pgn-transition-progress-bar-bar-transition));
45
+ @include transition(var(--pgn-transition-progress-bar-transition));
31
46
  }
32
47
 
33
48
  .progress-bar-striped {
@@ -38,7 +53,7 @@
38
53
 
39
54
  @if $enable-transitions {
40
55
  .progress-bar-animated {
41
- animation: var(--pgn-transition-progress-bar-bar-animation-timing) progress-bar-stripes;
56
+ animation: var(--pgn-transition-progress-bar-animation-timing) progress-bar-stripes;
42
57
 
43
58
  @if $enable-prefers-reduced-motion-media-query {
44
59
  @media (prefers-reduced-motion: reduce) {
@@ -6,7 +6,7 @@
6
6
  }
7
7
 
8
8
  .progress-bar {
9
- background-color: var(--pgn-color-progress-bar-bar-bg-base);
9
+ background-color: var(--pgn-color-progress-bar-bg-base);
10
10
  }
11
11
 
12
12
  .pgn__progress-annotated {
@@ -22,7 +22,7 @@
22
22
  border: none;
23
23
 
24
24
  .progress-bar {
25
- background-color: var(--pgn-color-progress-bar-bar-bg-annotated);
25
+ background-color: var(--pgn-color-progress-bar-bg-annotated);
26
26
  overflow: visible;
27
27
  position: relative;
28
28
  }
@@ -87,6 +87,6 @@
87
87
  .pgn__progress-hint {
88
88
  box-sizing: border-box;
89
89
  padding: 0 var(--pgn-spacing-progress-bar-hint-annotation-gap);
90
- font-size: var(--pgn-typography-font-size-small-base);
90
+ font-size: var(--pgn-typography-font-size-sm);
91
91
  }
92
92
  }
@@ -56,7 +56,7 @@
56
56
  }
57
57
 
58
58
  .pgn__stepper-header-step-description {
59
- font-size: var(--pgn-typography-font-size-small-x);
59
+ font-size: var(--pgn-typography-font-size-xs);
60
60
  }
61
61
 
62
62
  &.pgn__stepper-header-step-active ~ .pgn__stepper-header-step {
@@ -1,3 +1,15 @@
1
+ :root {
2
+ --pgn-elevation-sticky-shadow-bottom:
3
+ var(--pgn-elevation-sticky-shadow-bottom-1-offset-x)
4
+ var(--pgn-elevation-sticky-shadow-bottom-1-offset-y)
5
+ var(--pgn-elevation-sticky-shadow-bottom-1-blur)
6
+ var(--pgn-elevation-sticky-shadow-bottom-1-color),
7
+ var(--pgn-elevation-sticky-shadow-bottom-2-offset-x)
8
+ var(--pgn-elevation-sticky-shadow-bottom-2-offset-y)
9
+ var(--pgn-elevation-sticky-shadow-bottom-2-blur)
10
+ var(--pgn-elevation-sticky-shadow-bottom-2-color);
11
+ }
12
+
1
13
  .pgn__sticky {
2
14
  display: flex;
3
15
  width: 100%;
@@ -1,5 +1,17 @@
1
1
  @import "bootstrap-toast";
2
2
 
3
+ :root {
4
+ --pgn-elevation-toast-box-shadow:
5
+ var(--pgn-elevation-toast-box-shadow-1-offset-x)
6
+ var(--pgn-elevation-toast-box-shadow-1-offset-y)
7
+ var(--pgn-elevation-toast-box-shadow-1-blur)
8
+ var(--pgn-elevation-toast-box-shadow-1-color),
9
+ var(--pgn-elevation-toast-box-shadow-2-offset-x)
10
+ var(--pgn-elevation-toast-box-shadow-2-offset-y)
11
+ var(--pgn-elevation-toast-box-shadow-2-blur)
12
+ var(--pgn-elevation-toast-box-shadow-2-color);
13
+ }
14
+
3
15
  .toast {
4
16
  background-color: var(--pgn-color-toast-bg);
5
17
  box-shadow: var(--pgn-elevation-toast-box-shadow);
@@ -31,7 +43,7 @@
31
43
  padding: 0;
32
44
 
33
45
  p {
34
- font-size: var(--pgn-typography-font-size-small-base);
46
+ font-size: var(--pgn-typography-font-size-sm);
35
47
  margin: 0;
36
48
  padding-right: .75rem;
37
49
  }
@@ -1,3 +1,19 @@
1
+ :root {
2
+ --pgn-elevation-tooltip-box-shadow:
3
+ drop-shadow(
4
+ var(--pgn-elevation-tooltip-box-shadow-1-offset-x)
5
+ var(--pgn-elevation-tooltip-box-shadow-1-offset-y)
6
+ var(--pgn-elevation-tooltip-box-shadow-1-blur)
7
+ var(--pgn-elevation-tooltip-box-shadow-1-color)
8
+ )
9
+ drop-shadow(
10
+ var(--pgn-elevation-tooltip-box-shadow-2-offset-x)
11
+ var(--pgn-elevation-tooltip-box-shadow-2-offset-y)
12
+ var(--pgn-elevation-tooltip-box-shadow-2-blur)
13
+ var(--pgn-elevation-tooltip-box-shadow-2-color)
14
+ );
15
+ }
16
+
1
17
  // Base class
2
18
  .tooltip {
3
19
  position: absolute;