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

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 (209) 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 +6 -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/DataTable/index.scss +12 -0
  11. package/dist/Dropdown/dropdown-bootstrap.scss +6 -0
  12. package/dist/Dropzone/index.scss +34 -0
  13. package/dist/Form/_FormText.scss +1 -1
  14. package/dist/Form/_bootstrap-custom-forms.scss +40 -0
  15. package/dist/Form/_index.scss +9 -0
  16. package/dist/Form/_mixins.scss +22 -0
  17. package/dist/IconButton/index.d.ts +1 -1
  18. package/dist/IconButton/index.scss +146 -0
  19. package/dist/Menu/index.scss +8 -0
  20. package/dist/Modal/ModalDialog.js +8 -4
  21. package/dist/Modal/ModalDialog.js.map +1 -1
  22. package/dist/Modal/_ModalDialog.scss +22 -2
  23. package/dist/Nav/index.scss +8 -0
  24. package/dist/Overlay/index.d.ts +2 -2
  25. package/dist/PageBanner/index.scss +2 -2
  26. package/dist/Pagination/pagination-bootstrap.scss +9 -0
  27. package/dist/Popover/index.scss +1 -1
  28. package/dist/ProductTour/Checkpoint.scss +1 -1
  29. package/dist/ProgressBar/bootstrap-progress.scss +20 -5
  30. package/dist/ProgressBar/index.scss +3 -3
  31. package/dist/Stepper/index.scss +1 -1
  32. package/dist/Sticky/index.scss +12 -0
  33. package/dist/Toast/index.scss +13 -1
  34. package/dist/Tooltip/index.scss +16 -0
  35. package/dist/core.css +911 -470
  36. package/dist/core.css.map +1 -1
  37. package/dist/core.min.css +1 -1
  38. package/dist/light.css +2035 -1315
  39. package/dist/light.css.map +1 -1
  40. package/dist/light.min.css +1 -1
  41. package/lib/build-tokens.js +67 -31
  42. package/package.json +7 -4
  43. package/src/Annotation/index.scss +16 -0
  44. package/src/Card/CardDeck.jsx +0 -3
  45. package/src/Card/README.md +0 -31
  46. package/src/Card/index.scss +6 -6
  47. package/src/Carousel/index.scss +24 -1
  48. package/src/CloseButton/index.scss +8 -0
  49. package/src/ColorPicker/index.scss +1 -1
  50. package/src/DataTable/index.scss +12 -0
  51. package/src/Dropdown/dropdown-bootstrap.scss +6 -0
  52. package/src/Dropzone/index.scss +34 -0
  53. package/src/Form/_FormText.scss +1 -1
  54. package/src/Form/_bootstrap-custom-forms.scss +40 -0
  55. package/src/Form/_index.scss +9 -0
  56. package/src/Form/_mixins.scss +22 -0
  57. package/src/IconButton/index.scss +146 -0
  58. package/src/Menu/index.scss +8 -0
  59. package/src/Modal/ModalDialog.jsx +7 -3
  60. package/src/Modal/_ModalDialog.scss +22 -2
  61. package/src/Modal/modal-dialog.mdx +95 -6
  62. package/src/Modal/tests/ModalDialog.test.jsx +2 -0
  63. package/src/Nav/index.scss +8 -0
  64. package/src/PageBanner/index.scss +2 -2
  65. package/src/Pagination/pagination-bootstrap.scss +9 -0
  66. package/src/Popover/index.scss +1 -1
  67. package/src/ProductTour/Checkpoint.scss +1 -1
  68. package/src/ProgressBar/bootstrap-progress.scss +20 -5
  69. package/src/ProgressBar/index.scss +3 -3
  70. package/src/Stepper/index.scss +1 -1
  71. package/src/Sticky/index.scss +12 -0
  72. package/src/Toast/index.scss +13 -1
  73. package/src/Tooltip/index.scss +16 -0
  74. package/styles/css/core/abstraction-variables.css +44 -0
  75. package/styles/css/core/custom-media-breakpoints.css +3 -4
  76. package/styles/css/core/index.css +2 -1
  77. package/styles/css/core/variables.css +494 -430
  78. package/styles/css/themes/light/abstraction-variables.css +304 -0
  79. package/styles/css/themes/light/index.css +1 -0
  80. package/styles/css/themes/light/utility-classes.css +2 -3
  81. package/styles/css/themes/light/variables.css +1753 -1334
  82. package/styles/scss/core/_typography.scss +16 -4
  83. package/styles/scss/core/_utilities.scss +7 -3
  84. package/styles/scss/core/_variables.scss +43 -30
  85. package/styles/scss/core/core.scss +1 -0
  86. package/tokens/src/core/alias/size.json +6 -5
  87. package/tokens/src/core/components/ActionRow.json +3 -2
  88. package/tokens/src/core/components/Alert.json +12 -10
  89. package/tokens/src/core/components/Annotation.json +9 -7
  90. package/tokens/src/core/components/Avatar.json +9 -9
  91. package/tokens/src/core/components/AvatarButton.json +4 -3
  92. package/tokens/src/core/components/Badge.json +12 -9
  93. package/tokens/src/core/components/Breadcrumb.json +7 -5
  94. package/tokens/src/core/components/Bubble.json +4 -3
  95. package/tokens/src/core/components/Button/core.json +35 -59
  96. package/tokens/src/core/components/Card.json +33 -44
  97. package/tokens/src/core/components/Carousel.json +39 -13
  98. package/tokens/src/core/components/Chip.json +13 -21
  99. package/tokens/src/core/components/ChipCarousel.json +4 -5
  100. package/tokens/src/core/components/CloseButton.json +2 -6
  101. package/tokens/src/core/components/Code.json +9 -8
  102. package/tokens/src/core/components/Collapsible.json +10 -13
  103. package/tokens/src/core/components/ColorPicker.json +3 -2
  104. package/tokens/src/core/components/Container.json +6 -5
  105. package/tokens/src/core/components/DataTable.json +17 -9
  106. package/tokens/src/core/components/Dropdown.json +24 -29
  107. package/tokens/src/core/components/Dropzone.json +5 -7
  108. package/tokens/src/core/components/Form/other.json +5 -4
  109. package/tokens/src/core/components/Form/size.json +72 -119
  110. package/tokens/src/core/components/Form/spacing.json +39 -83
  111. package/tokens/src/core/components/Form/transition.json +43 -7
  112. package/tokens/src/core/components/Form/typography.json +24 -88
  113. package/tokens/src/core/components/Icon.json +6 -5
  114. package/tokens/src/core/components/IconButton.json +4 -7
  115. package/tokens/src/core/components/Image.json +7 -6
  116. package/tokens/src/core/components/Menu.json +14 -12
  117. package/tokens/src/core/components/Modal.json +26 -21
  118. package/tokens/src/core/components/Nav.json +14 -16
  119. package/tokens/src/core/components/Navbar.json +15 -30
  120. package/tokens/src/core/components/Pagination.json +23 -24
  121. package/tokens/src/core/components/Popover.json +18 -14
  122. package/tokens/src/core/components/ProductTour.json +8 -14
  123. package/tokens/src/core/components/ProgressBar.json +29 -14
  124. package/tokens/src/core/components/SearchField.json +7 -9
  125. package/tokens/src/core/components/SelectableBox.json +4 -3
  126. package/tokens/src/core/components/Sheet.json +3 -2
  127. package/tokens/src/core/components/Spinner.json +9 -7
  128. package/tokens/src/core/components/Stack.json +2 -1
  129. package/tokens/src/core/components/Stepper.json +12 -14
  130. package/tokens/src/core/components/Sticky.json +2 -1
  131. package/tokens/src/core/components/Tab.json +8 -7
  132. package/tokens/src/core/components/Tabs.json +5 -5
  133. package/tokens/src/core/components/Toast.json +11 -8
  134. package/tokens/src/core/components/Tooltip.json +13 -11
  135. package/tokens/src/core/components/general/caret.json +5 -3
  136. package/tokens/src/core/components/general/headings.json +5 -4
  137. package/tokens/src/core/components/general/hr.json +3 -2
  138. package/tokens/src/core/components/general/input.json +19 -19
  139. package/tokens/src/core/components/general/link.json +13 -12
  140. package/tokens/src/core/components/general/list.json +9 -6
  141. package/tokens/src/core/components/general/text.json +6 -12
  142. package/tokens/src/core/global/breakpoints.json +25 -6
  143. package/tokens/src/core/global/elevation.json +55 -13
  144. package/tokens/src/core/global/other.json +5 -1
  145. package/tokens/src/core/global/spacing.json +70 -17
  146. package/tokens/src/core/global/transition.json +41 -4
  147. package/tokens/src/core/global/typography.json +248 -53
  148. package/tokens/src/core/utilities/color.json +35 -4
  149. package/tokens/src/themes/light/alias/color.json +276 -75
  150. package/tokens/src/themes/light/components/Alert.json +15 -26
  151. package/tokens/src/themes/light/components/Annotation.json +27 -13
  152. package/tokens/src/themes/light/components/Avatar.json +2 -1
  153. package/tokens/src/themes/light/components/Badge.json +57 -122
  154. package/tokens/src/themes/light/components/Breadcrumb.json +6 -5
  155. package/tokens/src/themes/light/components/Bubble.json +9 -8
  156. package/tokens/src/themes/light/components/Button/brand.json +171 -119
  157. package/tokens/src/themes/light/components/Button/core.json +8 -9
  158. package/tokens/src/themes/light/components/Button/danger.json +171 -112
  159. package/tokens/src/themes/light/components/Button/dark.json +188 -106
  160. package/tokens/src/themes/light/components/Button/info.json +186 -112
  161. package/tokens/src/themes/light/components/Button/light.json +186 -110
  162. package/tokens/src/themes/light/components/Button/primary.json +178 -116
  163. package/tokens/src/themes/light/components/Button/secondary.json +166 -132
  164. package/tokens/src/themes/light/components/Button/success.json +176 -117
  165. package/tokens/src/themes/light/components/Button/tertiary.json +34 -60
  166. package/tokens/src/themes/light/components/Button/warning.json +164 -128
  167. package/tokens/src/themes/light/components/Card.json +10 -21
  168. package/tokens/src/themes/light/components/Carousel.json +12 -11
  169. package/tokens/src/themes/light/components/Chip.json +14 -26
  170. package/tokens/src/themes/light/components/CloseButton.json +12 -2
  171. package/tokens/src/themes/light/components/Code.json +7 -9
  172. package/tokens/src/themes/light/components/DataTable.json +7 -11
  173. package/tokens/src/themes/light/components/Dropdown.json +17 -20
  174. package/tokens/src/themes/light/components/Dropzone.json +49 -11
  175. package/tokens/src/themes/light/components/Form/color.json +101 -155
  176. package/tokens/src/themes/light/components/Form/elevation.json +38 -42
  177. package/tokens/src/themes/light/components/Form/other.json +44 -41
  178. package/tokens/src/themes/light/components/IconButton.json +408 -256
  179. package/tokens/src/themes/light/components/Image.json +7 -4
  180. package/tokens/src/themes/light/components/Menu.json +12 -10
  181. package/tokens/src/themes/light/components/Modal.json +22 -12
  182. package/tokens/src/themes/light/components/Nav.json +82 -94
  183. package/tokens/src/themes/light/components/Navbar.json +32 -76
  184. package/tokens/src/themes/light/components/OverflowScroll.json +3 -1
  185. package/tokens/src/themes/light/components/PageBanner.json +11 -10
  186. package/tokens/src/themes/light/components/Pagination.json +19 -23
  187. package/tokens/src/themes/light/components/Popover.json +22 -27
  188. package/tokens/src/themes/light/components/ProductTour.json +9 -20
  189. package/tokens/src/themes/light/components/ProgressBar.json +12 -10
  190. package/tokens/src/themes/light/components/Scrollable.json +3 -3
  191. package/tokens/src/themes/light/components/SearchField.json +9 -9
  192. package/tokens/src/themes/light/components/Sheet.json +6 -7
  193. package/tokens/src/themes/light/components/Stepper.json +12 -17
  194. package/tokens/src/themes/light/components/Sticky.json +31 -6
  195. package/tokens/src/themes/light/components/Tab.json +47 -24
  196. package/tokens/src/themes/light/components/Toast.json +26 -14
  197. package/tokens/src/themes/light/components/Tooltip.json +25 -10
  198. package/tokens/src/themes/light/components/general/body.json +3 -2
  199. package/tokens/src/themes/light/components/general/headings.json +2 -1
  200. package/tokens/src/themes/light/components/general/hr.json +3 -6
  201. package/tokens/src/themes/light/components/general/input.json +11 -4
  202. package/tokens/src/themes/light/components/general/link.json +34 -43
  203. package/tokens/src/themes/light/components/general/list.json +15 -19
  204. package/tokens/src/themes/light/components/general/text.json +5 -6
  205. package/tokens/src/themes/light/global/color.json +1592 -867
  206. package/tokens/src/themes/light/global/elevation.json +481 -93
  207. package/tokens/style-dictionary.js +342 -144
  208. package/tokens/utils.js +176 -6
  209. package/tokens/src/core/global/display.json +0 -22
@@ -1,6 +1,10 @@
1
1
  const path = require('path');
2
2
  const minimist = require('minimist');
3
- const { StyleDictionary, colorTransform, createCustomCSSVariables } = require('../tokens/style-dictionary');
3
+ const {
4
+ initializeStyleDictionary,
5
+ getTokensStudioTransforms,
6
+ colorTransform,
7
+ } = require('../tokens/style-dictionary');
4
8
  const { createIndexCssFile } = require('../tokens/utils');
5
9
 
6
10
  /**
@@ -16,19 +20,34 @@ async function buildTokensCommand(commandArgs) {
16
20
  const defaultParams = {
17
21
  themes: ['light'],
18
22
  'build-dir': './build/',
23
+ 'source-tokens-only': false,
24
+ 'output-references': true,
25
+ verbose: false,
19
26
  };
20
27
 
21
28
  const alias = {
22
29
  'build-dir': 'b',
23
30
  themes: 't',
31
+ verbose: '-v',
24
32
  };
25
33
 
26
34
  const {
27
35
  'build-dir': buildDir,
28
36
  source: tokensSource,
29
- 'source-tokens-only': hasSourceTokensOnly,
37
+ 'source-tokens-only': transformSourceTokensOnly,
38
+ 'output-references': outputReferences,
30
39
  themes,
31
- } = minimist(commandArgs, { alias, default: defaultParams, boolean: 'source-tokens-only' });
40
+ verbose,
41
+ } = minimist(
42
+ commandArgs,
43
+ {
44
+ alias,
45
+ default: defaultParams,
46
+ boolean: ['source-tokens-only', 'output-references', 'verbose'],
47
+ },
48
+ );
49
+
50
+ const StyleDictionary = await initializeStyleDictionary({ themes });
32
51
 
33
52
  const coreConfig = {
34
53
  include: [
@@ -38,36 +57,42 @@ async function buildTokensCommand(commandArgs) {
38
57
  source: tokensSource
39
58
  ? [`${tokensSource}/core/**/*.json`, `${tokensSource}/core/**/*.toml`]
40
59
  : [],
60
+ preprocessors: ['pgn-annotate-token-extensions-with-references', 'tokens-studio'],
61
+ expand: {
62
+ typesMap: (await getTokensStudioTransforms()).expandTypesMap,
63
+ },
41
64
  platforms: {
42
65
  css: {
43
66
  prefix: 'pgn',
44
- transformGroup: 'css',
67
+ transformGroup: 'paragon-css',
45
68
  // NOTE: buildPath must end with a slash
46
69
  buildPath: buildDir.slice(-1) === '/' ? buildDir : `${buildDir}/`,
70
+ options: {
71
+ fileHeader: 'customFileHeader',
72
+ },
47
73
  files: [
48
74
  {
49
75
  format: 'css/custom-variables',
50
76
  destination: 'core/variables.css',
51
- filter: hasSourceTokensOnly ? 'isSource' : undefined,
77
+ filter: transformSourceTokensOnly ? 'isSource' : undefined,
52
78
  options: {
53
- outputReferences: !hasSourceTokensOnly,
79
+ outputReferences,
54
80
  },
55
81
  },
56
82
  {
57
83
  format: 'css/custom-media-breakpoints',
58
84
  destination: 'core/custom-media-breakpoints.css',
59
- filter: hasSourceTokensOnly ? 'isSource' : undefined,
85
+ filter: transformSourceTokensOnly ? 'isSource' : undefined,
60
86
  options: {
61
- outputReferences: !hasSourceTokensOnly,
87
+ outputReferences,
62
88
  },
63
89
  },
64
90
  ],
65
- transforms: StyleDictionary.transformGroup.css.filter(item => item !== 'size/rem').concat('color/sass-color-functions', 'str-replace'),
66
- options: {
67
- fileHeader: 'customFileHeader',
68
- },
69
91
  },
70
92
  },
93
+ log: {
94
+ verbosity: verbose ? 'verbose' : 'default',
95
+ },
71
96
  };
72
97
 
73
98
  const getStyleDictionaryConfig = (themeVariant) => ({
@@ -85,16 +110,10 @@ async function buildTokensCommand(commandArgs) {
85
110
  : [],
86
111
  transform: {
87
112
  'color/sass-color-functions': {
88
- ...StyleDictionary.transform['color/sass-color-functions'],
89
- transformer: (token) => colorTransform(token, themeVariant),
113
+ ...StyleDictionary.hooks.transforms['color/sass-color-functions'],
114
+ transform: (token) => colorTransform(token, themeVariant),
90
115
  },
91
116
  },
92
- format: {
93
- 'css/custom-variables': formatterArgs => createCustomCSSVariables({
94
- formatterArgs,
95
- themeVariant,
96
- }),
97
- },
98
117
  platforms: {
99
118
  css: {
100
119
  ...coreConfig.platforms.css,
@@ -102,17 +121,19 @@ async function buildTokensCommand(commandArgs) {
102
121
  {
103
122
  format: 'css/custom-variables',
104
123
  destination: `themes/${themeVariant}/variables.css`,
105
- filter: hasSourceTokensOnly ? 'isSource' : undefined,
124
+ filter: transformSourceTokensOnly
125
+ ? `isSource.${themeVariant}`
126
+ : `isThemeVariant.${themeVariant}`,
106
127
  options: {
107
- outputReferences: !hasSourceTokensOnly,
128
+ outputReferences,
108
129
  },
109
130
  },
110
131
  {
111
132
  format: 'css/utility-classes',
112
133
  destination: `themes/${themeVariant}/utility-classes.css`,
113
- filter: hasSourceTokensOnly ? 'isSource' : undefined,
134
+ filter: transformSourceTokensOnly ? 'isSource' : undefined,
114
135
  options: {
115
- outputReferences: !hasSourceTokensOnly,
136
+ outputReferences,
116
137
  },
117
138
  },
118
139
  ],
@@ -120,14 +141,29 @@ async function buildTokensCommand(commandArgs) {
120
141
  },
121
142
  });
122
143
 
123
- StyleDictionary.extend(coreConfig).buildAllPlatforms();
124
- createIndexCssFile({ buildDir, isTheme: false });
144
+ // Create list of style-dictionary configurations to build (core + theme variants)
145
+ const configs = [
146
+ { config: coreConfig },
147
+ ...themes.map((themeVariant) => {
148
+ const config = getStyleDictionaryConfig(themeVariant);
149
+ return {
150
+ config,
151
+ themeVariant,
152
+ };
153
+ }),
154
+ ];
125
155
 
126
- themes.forEach((themeVariant) => {
127
- const config = getStyleDictionaryConfig(themeVariant);
128
- StyleDictionary.extend(config).buildAllPlatforms();
129
- createIndexCssFile({ buildDir, isTheme: true, themeVariant });
130
- });
156
+ // Build tokens for each configuration
157
+ await Promise.all(configs.map(async ({ config, themeVariant }) => {
158
+ const sd = new StyleDictionary(config);
159
+ await sd.cleanAllPlatforms();
160
+ await sd.buildAllPlatforms();
161
+ createIndexCssFile({
162
+ buildDir,
163
+ isThemeVariant: !!themeVariant,
164
+ themeVariant,
165
+ });
166
+ }));
131
167
  }
132
168
 
133
169
  module.exports = buildTokensCommand;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openedx/paragon",
3
- "version": "23.0.0-alpha.3",
3
+ "version": "23.0.0-alpha.4",
4
4
  "description": "Accessible, responsive UI component library based on Bootstrap.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -51,11 +51,14 @@
51
51
  "playroom:build": "npm run playroom:build --workspace=www",
52
52
  "prepare": "husky || true",
53
53
  "build-tokens": "./bin/paragon-scripts.js build-tokens --build-dir ./styles/css",
54
+ "build-tokens:watch": "npx nodemon --ignore styles/css -x \"npm run build-tokens\"",
54
55
  "replace-variables-usage-with-css": "./bin/paragon-scripts.js replace-variables -p src -t usage",
55
- "replace-variables-definition-with-css": "./bin/paragon-scripts.js replace-variables -p src -t definition"
56
+ "replace-variables-definition-with-css": "./bin/paragon-scripts.js replace-variables -p src -t definition",
57
+ "cli:help": "./bin/paragon-scripts.js help"
56
58
  },
57
59
  "dependencies": {
58
60
  "@popperjs/core": "^2.11.4",
61
+ "@tokens-studio/sd-transforms": "^1.2.4",
59
62
  "axios": "^0.27.2",
60
63
  "bootstrap": "^4.6.2",
61
64
  "chalk": "^4.1.2",
@@ -93,7 +96,7 @@
93
96
  "react-table": "^7.7.0",
94
97
  "react-transition-group": "^4.4.2",
95
98
  "sass": "^1.58.3",
96
- "style-dictionary": "^3.7.1",
99
+ "style-dictionary": "^4.0.1",
97
100
  "tabbable": "^5.3.3",
98
101
  "uncontrollable": "^7.2.1",
99
102
  "uuid": "^9.0.0"
@@ -114,7 +117,7 @@
114
117
  "@babel/preset-typescript": "^7.16.7",
115
118
  "@edx/eslint-config": "^3.2.0",
116
119
  "@edx/stylelint-config-edx": "^2.3.0",
117
- "@edx/typescript-config": "^1.0.1",
120
+ "@edx/typescript-config": "^1.1.0",
118
121
  "@formatjs/cli": "^5.0.2",
119
122
  "@semantic-release/changelog": "^6.0.1",
120
123
  "@semantic-release/git": "^10.0.1",
@@ -1,5 +1,21 @@
1
1
  @import "mixins";
2
2
 
3
+ :root {
4
+ --pgn-elevation-annotation-box-shadow:
5
+ drop-shadow(
6
+ var(--pgn-elevation-annotation-box-shadow-1-offset-x)
7
+ var(--pgn-elevation-annotation-box-shadow-1-offset-y)
8
+ var(--pgn-elevation-annotation-box-shadow-1-blur)
9
+ var(--pgn-elevation-annotation-box-shadow-1-color)
10
+ )
11
+ drop-shadow(
12
+ var(--pgn-elevation-annotation-box-shadow-2-offset-x)
13
+ var(--pgn-elevation-annotation-box-shadow-2-offset-y)
14
+ var(--pgn-elevation-annotation-box-shadow-2-blur)
15
+ var(--pgn-elevation-annotation-box-shadow-2-color)
16
+ );
17
+ }
18
+
3
19
  .pgn__annotation {
4
20
  padding: var(--pgn-spacing-annotation-padding);
5
21
  border-radius: var(--pgn-size-annotation-border-radius);
@@ -1,7 +1,6 @@
1
1
  import React, { Children, useMemo } from 'react';
2
2
  import classNames from 'classnames';
3
3
  import PropTypes from 'prop-types';
4
- import BaseCardDeck from 'react-bootstrap/CardDeck';
5
4
  import Row from 'react-bootstrap/Row';
6
5
  import Col from 'react-bootstrap/Col';
7
6
  import { useOverflowScrollItems } from '../OverflowScroll';
@@ -102,6 +101,4 @@ CardDeck.defaultProps = {
102
101
  hasEqualColumnHeights: true,
103
102
  };
104
103
 
105
- CardDeck.Deprecated = BaseCardDeck;
106
-
107
104
  export default CardDeck;
@@ -899,37 +899,6 @@ For accessibility, if the child `Card` components are interactive (e.g., `isClic
899
899
  }
900
900
  ```
901
901
 
902
- ### CardDeck.Deprecated
903
-
904
- Gives any child `Card` components equal height with an appropriate gutter between cards. Each child `Card` component's width will be adjusted (e.g., become more narrow) to ensure all `Card` components fit within its parent's width.
905
-
906
- Note: This component is a pass-thru from `react-bootstrap`.
907
-
908
- ```jsx live
909
- () => {
910
- const CardComponent = () => (
911
- <Card>
912
- <Card.ImageCap
913
- src="https://picsum.photos/360/200/"
914
- srcAlt="Card image"
915
- />
916
- <Card.Header title="Card title" />
917
- <Card.Section title="Section title">
918
- <HipsterIpsum numShortParagraphs={1} />
919
- </Card.Section>
920
- </Card>
921
- );
922
-
923
- return (
924
- <CardDeck.Deprecated>
925
- <CardComponent />
926
- <CardComponent />
927
- <CardComponent />
928
- </CardDeck.Deprecated>
929
- )
930
- }
931
- ```
932
-
933
902
  ## CardCarousel
934
903
 
935
904
  Extends `CardDeck` to support navigating between any overflow `Card` components via left and right `IconButton` components as a scrollable carousel.
@@ -136,11 +136,11 @@ a.pgn__card {
136
136
  }
137
137
 
138
138
  .pgn__card-header-title-sm {
139
- font-size: var(--pgn-typography-font-size-h4);
139
+ font-size: var(--pgn-typography-font-size-h4-base);
140
140
  }
141
141
 
142
142
  .pgn__card-header-title-md {
143
- font-size: var(--pgn-typography-font-size-h3);
143
+ font-size: var(--pgn-typography-font-size-h3-base);
144
144
  }
145
145
 
146
146
  %header-subtitle {
@@ -155,11 +155,11 @@ a.pgn__card {
155
155
  }
156
156
 
157
157
  .pgn__card-header-subtitle-sm {
158
- font-size: var(--pgn-typography-font-size-h5);
158
+ font-size: var(--pgn-typography-font-size-h5-base);
159
159
  }
160
160
 
161
161
  .pgn__card-header-subtitle-md {
162
- font-size: var(--pgn-typography-font-size-h4);
162
+ font-size: var(--pgn-typography-font-size-h4-base);
163
163
  }
164
164
 
165
165
  .pgn__card-header-actions {
@@ -271,7 +271,7 @@ a.pgn__card {
271
271
  .pgn__card-section-title {
272
272
  color: var(--pgn-color-black);
273
273
  font-weight: var(--pgn-typography-font-weight-bold);
274
- font-size: var(--pgn-typography-font-size-h5);
274
+ font-size: var(--pgn-typography-font-size-h5-base);
275
275
  margin-bottom: var(--pgn-spacing-card-spacer-y);
276
276
  }
277
277
 
@@ -392,7 +392,7 @@ a.pgn__card {
392
392
  }
393
393
 
394
394
  .pgn__card-status__heading {
395
- font-size: var(--pgn-typography-font-size-h4);
395
+ font-size: var(--pgn-typography-font-size-h4-base);
396
396
  color: var(--pgn-color-black);
397
397
  display: flex;
398
398
  font-weight: var(--pgn-typography-font-weight-bold);
@@ -1,3 +1,26 @@
1
+ :root {
2
+ --pgn-transition-carousel-base:
3
+ var(--pgn-transition-carousel-base-property)
4
+ var(--pgn-transition-carousel-base-duration)
5
+ var(--pgn-transition-carousel-base-timing-function)
6
+ var(--pgn-transition-carousel-base-delay)
7
+ var(--pgn-transition-carousel-base-behavior);
8
+
9
+ --pgn-transition-carousel-indicator:
10
+ var(--pgn-transition-carousel-indicator-property)
11
+ var(--pgn-transition-carousel-indicator-duration)
12
+ var(--pgn-transition-carousel-indicator-timing-function)
13
+ var(--pgn-transition-carousel-indicator-delay)
14
+ var(--pgn-transition-carousel-indicator-behavior);
15
+
16
+ --pgn-transition-carousel-control:
17
+ var(--pgn-transition-carousel-control-property)
18
+ var(--pgn-transition-carousel-control-duration)
19
+ var(--pgn-transition-carousel-control-timing-function)
20
+ var(--pgn-transition-carousel-control-delay)
21
+ var(--pgn-transition-carousel-control-behavior);
22
+ }
23
+
1
24
  .carousel {
2
25
  position: relative;
3
26
  }
@@ -58,7 +81,7 @@
58
81
  .active.carousel-item-right {
59
82
  z-index: 0;
60
83
  opacity: 0;
61
- transition: opacity 0s var(--pgn-transition-carousel-base);
84
+ transition: var(--pgn-transition-carousel-base);
62
85
  }
63
86
  }
64
87
 
@@ -1,3 +1,11 @@
1
+ :root {
2
+ --pgn-elevation-close-button-text-shadow:
3
+ var(--pgn-elevation-close-button-text-shadow-offset-x)
4
+ var(--pgn-elevation-close-button-text-shadow-offset-y)
5
+ var(--pgn-elevation-close-button-text-shadow-blur)
6
+ var(--pgn-elevation-close-button-text-shadow-color);
7
+ }
8
+
1
9
  .close {
2
10
  float: right;
3
11
  font-weight: var(--pgn-typography-close-button-font-weight);
@@ -37,7 +37,7 @@
37
37
 
38
38
  .pgn__hex-label {
39
39
  font-weight: bold;
40
- font-size: var(--pgn-typography-font-size-mobile-h5);
40
+ font-size: var(--pgn-typography-font-size-h5-mobile);
41
41
  padding: .5rem;
42
42
  margin-bottom: 0 !important;
43
43
  }
@@ -1,3 +1,15 @@
1
+ :root {
2
+ --pgn-elevation-data-table-box-shadow:
3
+ var(--pgn-elevation-data-table-box-shadow-offset-x)
4
+ var(--pgn-elevation-data-table-box-shadow-offset-y)
5
+ var(--pgn-elevation-data-table-box-shadow-blur)
6
+ var(--pgn-elevation-data-table-box-shadow-color);
7
+
8
+ --pgn-spacing-data-table-padding-cell:
9
+ var(--pgn-spacing-data-table-padding-cell-x)
10
+ var(--pgn-spacing-data-table-padding-cell-y);
11
+ }
12
+
1
13
  .pgn__data-table-wrapper {
2
14
  font-size: var(--pgn-typography-font-size-sm);
3
15
  border-radius: var(--pgn-size-border-radius-base);
@@ -1,3 +1,9 @@
1
+ :root {
2
+ --pgn-spacing-dropdown-padding-header:
3
+ var(--pgn-spacing-dropdown-padding-header-y)
4
+ var(--pgn-spacing-dropdown-padding-header-x);
5
+ }
6
+
1
7
  .dropup,
2
8
  .dropright,
3
9
  .dropdown,
@@ -1,3 +1,37 @@
1
+ :root {
2
+ --pgn-elevation-dropzone-hover:
3
+ var(--pgn-elevation-dropzone-hover-inset)
4
+ var(--pgn-elevation-dropzone-hover-offset-x)
5
+ var(--pgn-elevation-dropzone-hover-offset-y)
6
+ var(--pgn-elevation-dropzone-hover-blur)
7
+ var(--pgn-elevation-dropzone-hover-spread)
8
+ var(--pgn-elevation-dropzone-hover-color);
9
+
10
+ --pgn-elevation-dropzone-focus:
11
+ var(--pgn-elevation-dropzone-focus-inset)
12
+ var(--pgn-elevation-dropzone-focus-offset-x)
13
+ var(--pgn-elevation-dropzone-focus-offset-y)
14
+ var(--pgn-elevation-dropzone-focus-blur)
15
+ var(--pgn-elevation-dropzone-focus-spread)
16
+ var(--pgn-elevation-dropzone-focus-color);
17
+
18
+ --pgn-elevation-dropzone-error:
19
+ var(--pgn-elevation-dropzone-error-inset)
20
+ var(--pgn-elevation-dropzone-error-offset-x)
21
+ var(--pgn-elevation-dropzone-error-offset-y)
22
+ var(--pgn-elevation-dropzone-error-blur)
23
+ var(--pgn-elevation-dropzone-error-spread)
24
+ var(--pgn-elevation-dropzone-error-color);
25
+
26
+ --pgn-elevation-dropzone-active:
27
+ var(--pgn-elevation-dropzone-active-inset)
28
+ var(--pgn-elevation-dropzone-active-offset-x)
29
+ var(--pgn-elevation-dropzone-active-offset-y)
30
+ var(--pgn-elevation-dropzone-active-blur)
31
+ var(--pgn-elevation-dropzone-active-spread)
32
+ var(--pgn-elevation-dropzone-active-color);
33
+ }
34
+
1
35
  .pgn__dropzone {
2
36
  display: flex;
3
37
  justify-content: center;
@@ -1,5 +1,5 @@
1
1
  .pgn__form-text {
2
- font-size: var(--pgn-typography-font-size-small-base);
2
+ font-size: var(--pgn-typography-font-size-sm);
3
3
  display: flex;
4
4
  align-items: center;
5
5
 
@@ -1,3 +1,43 @@
1
+ :root {
2
+ --pgn-elevation-form-control-indicator-checked-focus:
3
+ var(--pgn-elevation-form-control-indicator-checked-focus-offset-x)
4
+ var(--pgn-elevation-form-control-indicator-checked-focus-offset-y)
5
+ var(--pgn-elevation-form-control-indicator-checked-focus-blur)
6
+ var(--pgn-elevation-form-control-indicator-checked-focus-spread)
7
+ var(--pgn-elevation-form-control-indicator-checked-focus-color);
8
+
9
+ --pgn-elevation-form-control-select-border-focus:
10
+ var(--pgn-elevation-form-control-select-border-focus-offset-x)
11
+ var(--pgn-elevation-form-control-select-border-focus-offset-y)
12
+ var(--pgn-elevation-form-control-select-border-focus-blur)
13
+ var(--pgn-elevation-form-control-select-border-focus-spread)
14
+ var(--pgn-elevation-form-control-select-border-focus-color);
15
+
16
+ --pgn-elevation-form-control-file-focus:
17
+ var(--pgn-elevation-form-control-file-focus-offset-x)
18
+ var(--pgn-elevation-form-control-file-focus-offset-y)
19
+ var(--pgn-elevation-form-control-file-focus-blur)
20
+ var(--pgn-elevation-form-control-file-focus-spread)
21
+ var(--pgn-elevation-form-control-file-focus-color);
22
+
23
+ --pgn-transition-form-control:
24
+ var(--pgn-transition-form-control-1-property)
25
+ var(--pgn-transition-form-control-1-duration)
26
+ var(--pgn-transition-form-control-1-timing-function)
27
+ var(--pgn-transition-form-control-1-delay)
28
+ var(--pgn-transition-form-control-1-behavior),
29
+ var(--pgn-transition-form-control-2-property)
30
+ var(--pgn-transition-form-control-2-duration)
31
+ var(--pgn-transition-form-control-2-timing-function)
32
+ var(--pgn-transition-form-control-2-delay)
33
+ var(--pgn-transition-form-control-2-behavior),
34
+ var(--pgn-transition-form-control-3-property)
35
+ var(--pgn-transition-form-control-3-duration)
36
+ var(--pgn-transition-form-control-3-timing-function)
37
+ var(--pgn-transition-form-control-3-delay)
38
+ var(--pgn-transition-form-control-3-behavior);
39
+ }
40
+
1
41
  // Embedded icons from Open Iconic.
2
42
  // Released under MIT and copyright 2014 Waybury.
3
43
  // https://useiconic.com/open
@@ -5,6 +5,15 @@
5
5
  @import "FormText";
6
6
  @import "FormControlSet";
7
7
 
8
+ :root {
9
+ --pgn-elevation-form-control-indicator-checked-focus:
10
+ var(--pgn-elevation-form-control-indicator-checked-focus-offset-x)
11
+ var(--pgn-elevation-form-control-indicator-checked-focus-offset-y)
12
+ var(--pgn-elevation-form-control-indicator-checked-focus-blur)
13
+ var(--pgn-elevation-form-control-indicator-checked-focus-spread)
14
+ var(--pgn-elevation-form-control-indicator-checked-focus-color);
15
+ }
16
+
8
17
  // A form input state used by the now deprecate Fieldset and asInput
9
18
  // we can remove this when they are deleted.
10
19
  .form-control.is-invalid.is-invalid-nodanger {
@@ -1,3 +1,25 @@
1
+ :root {
2
+ --pgn-elevation-form-input-focus:
3
+ var(--pgn-elevation-form-input-focus-offset-x)
4
+ var(--pgn-elevation-form-input-focus-offset-y)
5
+ var(--pgn-elevation-form-input-focus-blur)
6
+ var(--pgn-elevation-form-input-focus-spread)
7
+ var(--pgn-elevation-form-input-focus-color);
8
+
9
+ --pgn-spacing-form-control-select-feedback-icon-position:
10
+ var(--pgn-spacing-form-control-select-feedback-icon-position-position-y)
11
+ var(--pgn-spacing-form-control-select-feedback-icon-position-position-x)
12
+ var(--pgn-spacing-form-control-select-feedback-icon-position-offset-x)
13
+ var(--pgn-spacing-form-control-select-feedback-icon-position-offset-y);
14
+
15
+ --pgn-other-content-form-control-select-bg:
16
+ var(--pgn-other-content-form-control-select-bg-image)
17
+ var(--pgn-other-content-form-control-select-bg-position-x)
18
+ var(--pgn-other-content-form-control-select-bg-offset-y)
19
+ var(--pgn-other-content-form-control-select-bg-position-y)
20
+ / var(--pgn-other-content-form-control-select-bg-color); // stylelint-disable-line scss/operator-no-newline-before
21
+ }
22
+
1
23
  @mixin form-control-floating-label-initial(
2
24
  $padding-x,
3
25
  $padding-y,