@instructure/ui-link 11.7.4-snapshot-3 → 11.7.4-snapshot-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.
package/CHANGELOG.md CHANGED
@@ -3,9 +3,45 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [11.7.4-snapshot-3](https://github.com/instructure/instructure-ui/compare/v11.7.3...v11.7.4-snapshot-3) (2026-05-12)
6
+ ## [11.7.4-snapshot-5](https://github.com/instructure/instructure-ui/compare/v11.7.3...v11.7.4-snapshot-5) (2026-05-12)
7
7
 
8
- **Note:** Version bump only for package @instructure/ui-link
8
+
9
+ ### Features
10
+
11
+ * **many:** remove deprecated v2 items ([d5c1198](https://github.com/instructure/instructure-ui/commit/d5c1198820342f674c99bd7ef016ab2094d62a89))
12
+
13
+
14
+ ### BREAKING CHANGES
15
+
16
+ * **many:** Removed FormFieldLabel component
17
+
18
+ Removed _content prop from DrawerLayout.Tray and DrawerLayout.Content
19
+
20
+ Removed _link prop from Link
21
+
22
+ Removed _node prop from Menu.Item
23
+
24
+ Removed _root prop from Pagination, TreeBrowser
25
+
26
+ Removed _select prop from SimpleSelect and TimeSelect
27
+
28
+ Removed _ref prop from TruncateText
29
+
30
+ Removed _element prop from View
31
+
32
+ Removed color="ai" from Heading
33
+
34
+ Removed variant="inline-small" and variant="standalone-small" from Link
35
+
36
+ Removed title prop from Tag
37
+
38
+ Removed focusRingBorderRadius prop from View
39
+
40
+ Removed hideActionsUserSeparator prop from TopNavBar.Layout
41
+
42
+ Removed handleFocusOutlineColor, handleFocusOutlineWidth, handleShadowColor from RangeInput
43
+
44
+ INSTUI-5025
9
45
 
10
46
 
11
47
 
@@ -54,9 +54,6 @@ let Link = (_dec = withStyleNew(generateStyle), _dec(_class = class Link extends
54
54
  state = {
55
55
  hasFocus: false
56
56
  };
57
- get _link() {
58
- return this.ref;
59
- }
60
57
  ref = null;
61
58
  componentDidMount() {
62
59
  this.props.makeStyles?.(this.makeStyleProps());
@@ -66,23 +63,11 @@ let Link = (_dec = withStyleNew(generateStyle), _dec(_class = class Link extends
66
63
  }
67
64
  makeStyleProps = () => {
68
65
  const {
69
- variant: variantProp,
66
+ variant,
70
67
  size: sizeProp
71
68
  } = this.props;
72
-
73
- // Handle deprecated variant values by mapping them to new variant + size props
74
- let variant = variantProp;
75
69
  let size = sizeProp;
76
- if (variantProp === 'inline-small' || variantProp === 'standalone-small') {
77
- warn(false, `[Link] The variant value "${variantProp}" is deprecated. Use variant="${variantProp.replace('-small', '')}" with size="small" instead.`);
78
- variant = variantProp.replace('-small', '');
79
- // Only set size from deprecated variant if size prop is not explicitly provided
80
- if (!sizeProp) {
81
- size = 'small';
82
- }
83
- } else if ((variantProp === 'inline' || variantProp === 'standalone') && !sizeProp) {
84
- // When using new variant values without explicit size, default to medium
85
- // This maintains the old behavior where 'inline' and 'standalone' were medium-sized
70
+ if ((variant === 'inline' || variant === 'standalone') && !sizeProp) {
86
71
  size = 'medium';
87
72
  }
88
73
  return {
@@ -192,18 +177,14 @@ let Link = (_dec = withStyleNew(generateStyle), _dec(_class = class Link extends
192
177
  const {
193
178
  display,
194
179
  renderIcon,
195
- variant: variantProp,
180
+ variant,
196
181
  size: sizeProp
197
182
  } = this.props;
198
183
  warn(
199
184
  // if display prop is used, warn about icon or TruncateText
200
185
  display === undefined, '[Link] Using the display property with an icon may cause layout issues.');
201
-
202
- // Determine the actual size being used (considering deprecated variants)
203
186
  let size = sizeProp;
204
- if (variantProp === 'inline-small' || variantProp === 'standalone-small') {
205
- size = sizeProp || 'small';
206
- } else if ((variantProp === 'inline' || variantProp === 'standalone') && !sizeProp) {
187
+ if ((variant === 'inline' || variant === 'standalone') && !sizeProp) {
207
188
  size = 'medium';
208
189
  }
209
190
 
@@ -64,9 +64,6 @@ let Link = exports.Link = (_dec = (0, _emotion.withStyleNew)(_styles.default), _
64
64
  state = {
65
65
  hasFocus: false
66
66
  };
67
- get _link() {
68
- return this.ref;
69
- }
70
67
  ref = null;
71
68
  componentDidMount() {
72
69
  this.props.makeStyles?.(this.makeStyleProps());
@@ -76,23 +73,11 @@ let Link = exports.Link = (_dec = (0, _emotion.withStyleNew)(_styles.default), _
76
73
  }
77
74
  makeStyleProps = () => {
78
75
  const {
79
- variant: variantProp,
76
+ variant,
80
77
  size: sizeProp
81
78
  } = this.props;
82
-
83
- // Handle deprecated variant values by mapping them to new variant + size props
84
- let variant = variantProp;
85
79
  let size = sizeProp;
86
- if (variantProp === 'inline-small' || variantProp === 'standalone-small') {
87
- (0, _console.logWarn)(false, `[Link] The variant value "${variantProp}" is deprecated. Use variant="${variantProp.replace('-small', '')}" with size="small" instead.`);
88
- variant = variantProp.replace('-small', '');
89
- // Only set size from deprecated variant if size prop is not explicitly provided
90
- if (!sizeProp) {
91
- size = 'small';
92
- }
93
- } else if ((variantProp === 'inline' || variantProp === 'standalone') && !sizeProp) {
94
- // When using new variant values without explicit size, default to medium
95
- // This maintains the old behavior where 'inline' and 'standalone' were medium-sized
80
+ if ((variant === 'inline' || variant === 'standalone') && !sizeProp) {
96
81
  size = 'medium';
97
82
  }
98
83
  return {
@@ -202,18 +187,14 @@ let Link = exports.Link = (_dec = (0, _emotion.withStyleNew)(_styles.default), _
202
187
  const {
203
188
  display,
204
189
  renderIcon,
205
- variant: variantProp,
190
+ variant,
206
191
  size: sizeProp
207
192
  } = this.props;
208
193
  (0, _console.logWarn)(
209
194
  // if display prop is used, warn about icon or TruncateText
210
195
  display === undefined, '[Link] Using the display property with an icon may cause layout issues.');
211
-
212
- // Determine the actual size being used (considering deprecated variants)
213
196
  let size = sizeProp;
214
- if (variantProp === 'inline-small' || variantProp === 'standalone-small') {
215
- size = sizeProp || 'small';
216
- } else if ((variantProp === 'inline' || variantProp === 'standalone') && !sizeProp) {
197
+ if ((variant === 'inline' || variant === 'standalone') && !sizeProp) {
217
198
  size = 'medium';
218
199
  }
219
200
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/ui-link",
3
- "version": "11.7.4-snapshot-3",
3
+ "version": "11.7.4-snapshot-5",
4
4
  "description": "A component for creating links",
5
5
  "author": "Instructure, Inc. Engineering and Product Design",
6
6
  "module": "./es/index.js",
@@ -15,25 +15,25 @@
15
15
  "license": "MIT",
16
16
  "dependencies": {
17
17
  "@babel/runtime": "^7.29.2",
18
- "@instructure/console": "11.7.4-snapshot-3",
19
- "@instructure/emotion": "11.7.4-snapshot-3",
20
- "@instructure/shared-types": "11.7.4-snapshot-3",
21
- "@instructure/ui-color-utils": "11.7.4-snapshot-3",
22
- "@instructure/ui-a11y-utils": "11.7.4-snapshot-3",
23
- "@instructure/ui-dom-utils": "11.7.4-snapshot-3",
24
- "@instructure/ui-icons": "11.7.4-snapshot-3",
25
- "@instructure/ui-react-utils": "11.7.4-snapshot-3",
26
- "@instructure/ui-view": "11.7.4-snapshot-3",
27
- "@instructure/ui-utils": "11.7.4-snapshot-3",
28
- "@instructure/ui-themes": "11.7.4-snapshot-3"
18
+ "@instructure/console": "11.7.4-snapshot-5",
19
+ "@instructure/emotion": "11.7.4-snapshot-5",
20
+ "@instructure/shared-types": "11.7.4-snapshot-5",
21
+ "@instructure/ui-a11y-utils": "11.7.4-snapshot-5",
22
+ "@instructure/ui-color-utils": "11.7.4-snapshot-5",
23
+ "@instructure/ui-dom-utils": "11.7.4-snapshot-5",
24
+ "@instructure/ui-icons": "11.7.4-snapshot-5",
25
+ "@instructure/ui-react-utils": "11.7.4-snapshot-5",
26
+ "@instructure/ui-utils": "11.7.4-snapshot-5",
27
+ "@instructure/ui-themes": "11.7.4-snapshot-5",
28
+ "@instructure/ui-view": "11.7.4-snapshot-5"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@testing-library/jest-dom": "^6.6.3",
32
32
  "@testing-library/react": "15.0.7",
33
33
  "@testing-library/user-event": "^14.6.1",
34
34
  "vitest": "^3.2.2",
35
- "@instructure/ui-babel-preset": "11.7.4-snapshot-3",
36
- "@instructure/ui-axe-check": "11.7.4-snapshot-3"
35
+ "@instructure/ui-axe-check": "11.7.4-snapshot-5",
36
+ "@instructure/ui-babel-preset": "11.7.4-snapshot-5"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "react": ">=18 <=19"
@@ -97,28 +97,6 @@ type: example
97
97
  </div>
98
98
  ```
99
99
 
100
- #### Deprecated variant values
101
-
102
- **The following variant values are deprecated and will be removed in a future version:**
103
-
104
- - `inline-small`
105
- - `standalone-small`
106
-
107
- These deprecated values are still supported for backward compatibility but will trigger console warnings. Please update your code to use the new `variant` + `size` prop combination.
108
-
109
- ```js
110
- ---
111
- type: code
112
- ---
113
- // Deprecated (still works but triggers warning)
114
- <Link variant="inline-small" href="#">Link</Link>
115
- <Link variant="standalone-small" href="#">Link</Link>
116
-
117
- // Recommended
118
- <Link variant="inline" size="small" href="#">Link</Link>
119
- <Link variant="standalone" size="small" href="#">Link</Link>
120
- ```
121
-
122
100
  ### Adding margin
123
101
 
124
102
  Use the `margin` prop to add space to the left or right of the Link. Because
@@ -65,13 +65,6 @@ class Link extends Component<LinkProps, LinkState> {
65
65
 
66
66
  state = { hasFocus: false }
67
67
 
68
- get _link() {
69
- console.warn(
70
- '_link property is deprecated and will be removed in v9, please use ref instead'
71
- )
72
-
73
- return this.ref
74
- }
75
68
  ref: Element | null = null
76
69
 
77
70
  componentDidMount() {
@@ -86,31 +79,11 @@ class Link extends Component<LinkProps, LinkState> {
86
79
  variant?: LinkProps['variant']
87
80
  size?: LinkProps['size']
88
81
  } => {
89
- const { variant: variantProp, size: sizeProp } = this.props
82
+ const { variant, size: sizeProp } = this.props
90
83
 
91
- // Handle deprecated variant values by mapping them to new variant + size props
92
- let variant: 'inline' | 'standalone' | undefined = variantProp as any
93
84
  let size = sizeProp
94
85
 
95
- if (variantProp === 'inline-small' || variantProp === 'standalone-small') {
96
- warn(
97
- false,
98
- `[Link] The variant value "${variantProp}" is deprecated. Use variant="${variantProp.replace(
99
- '-small',
100
- ''
101
- )}" with size="small" instead.`
102
- )
103
- variant = variantProp.replace('-small', '') as 'inline' | 'standalone'
104
- // Only set size from deprecated variant if size prop is not explicitly provided
105
- if (!sizeProp) {
106
- size = 'small'
107
- }
108
- } else if (
109
- (variantProp === 'inline' || variantProp === 'standalone') &&
110
- !sizeProp
111
- ) {
112
- // When using new variant values without explicit size, default to medium
113
- // This maintains the old behavior where 'inline' and 'standalone' were medium-sized
86
+ if ((variant === 'inline' || variant === 'standalone') && !sizeProp) {
114
87
  size = 'medium'
115
88
  }
116
89
 
@@ -225,12 +198,7 @@ class Link extends Component<LinkProps, LinkState> {
225
198
  }
226
199
 
227
200
  renderIcon() {
228
- const {
229
- display,
230
- renderIcon,
231
- variant: variantProp,
232
- size: sizeProp
233
- } = this.props
201
+ const { display, renderIcon, variant, size: sizeProp } = this.props
234
202
 
235
203
  warn(
236
204
  // if display prop is used, warn about icon or TruncateText
@@ -238,14 +206,8 @@ class Link extends Component<LinkProps, LinkState> {
238
206
  '[Link] Using the display property with an icon may cause layout issues.'
239
207
  )
240
208
 
241
- // Determine the actual size being used (considering deprecated variants)
242
209
  let size = sizeProp
243
- if (variantProp === 'inline-small' || variantProp === 'standalone-small') {
244
- size = sizeProp || 'small'
245
- } else if (
246
- (variantProp === 'inline' || variantProp === 'standalone') &&
247
- !sizeProp
248
- ) {
210
+ if ((variant === 'inline' || variant === 'standalone') && !sizeProp) {
249
211
  size = 'medium'
250
212
  }
251
213
 
@@ -127,12 +127,8 @@ type LinkOwnProps = {
127
127
  * Sets pre-defined values for the component to achieve specific roles for the component
128
128
  * - `inline`
129
129
  * - `standalone`
130
- *
131
- * __Deprecated values:__
132
- * - `inline-small`
133
- * - `standalone-small`
134
130
  */
135
- variant?: 'inline' | 'standalone' | 'inline-small' | 'standalone-small'
131
+ variant?: 'inline' | 'standalone'
136
132
 
137
133
  /**
138
134
  * Sets the size of the link (font size, line height, and icon gap)