@instructure/ui-svg-images 8.11.2-snapshot.7 → 8.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,10 @@
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
+ # [8.12.0](https://github.com/instructure/instructure-ui/compare/v8.11.1...v8.12.0) (2021-11-17)
7
+
8
+ **Note:** Version bump only for package @instructure/ui-svg-images
9
+
6
10
  ## [8.11.1](https://github.com/instructure/instructure-ui/compare/v8.11.0...v8.11.1) (2021-10-19)
7
11
 
8
12
  **Note:** Version bump only for package @instructure/ui-svg-images
@@ -36,15 +36,18 @@ import { withStyle, jsx } from '@instructure/emotion';
36
36
  import generateStyle from './styles';
37
37
  import generateComponentTheme from './theme';
38
38
  import { allowedProps, propTypes } from './props';
39
+
39
40
  /**
40
41
  ---
41
42
  category: components/utilities
42
43
  ---
44
+ @tsProps
43
45
  **/
44
-
45
46
  let InlineSVG = (_dec = withStyle(generateStyle, generateComponentTheme), _dec2 = testable(), _dec(_class = _dec2(_class = (_temp = _class2 = class InlineSVG extends Component {
46
- constructor() {
47
- super();
47
+ constructor(props) {
48
+ super(props);
49
+ this.titleId = void 0;
50
+ this.descId = void 0;
48
51
  this.ref = null;
49
52
 
50
53
  this.handleRef = el => {
@@ -111,11 +114,11 @@ let InlineSVG = (_dec = withStyle(generateStyle, generateComponentTheme), _dec2
111
114
  if (this.props.src) {
112
115
  const src = InlineSVG.prepareSrc(this.props.src);
113
116
  return jsx("g", {
114
- role: "presentation",
117
+ role: "presentation" // eslint-disable-next-line react/no-danger
118
+ ,
115
119
  dangerouslySetInnerHTML: {
116
120
  __html: src
117
- } // eslint-disable-line react/no-danger
118
-
121
+ }
119
122
  });
120
123
  } else {
121
124
  return jsx("g", {
@@ -138,7 +141,7 @@ let InlineSVG = (_dec = withStyle(generateStyle, generateComponentTheme), _dec2
138
141
 
139
142
  const width = this.props.width === 'auto' ? void 0 : this.props.width;
140
143
  const height = this.props.height === 'auto' ? void 0 : this.props.height;
141
- return jsx("svg", Object.assign({}, parseAttributes(this.props.src), omitProps(this.props, InlineSVG.allowedProps, ['inline']), {
144
+ return jsx("svg", Object.assign({}, parseAttributes(src), omitProps(this.props, InlineSVG.allowedProps, ['inline']), {
142
145
  style: { ...style,
143
146
  width,
144
147
  height
@@ -161,7 +164,6 @@ let InlineSVG = (_dec = withStyle(generateStyle, generateComponentTheme), _dec2
161
164
  title: '',
162
165
  description: '',
163
166
  inline: true,
164
- children: null,
165
167
  width: '1em',
166
168
  height: '1em',
167
169
  color: 'inherit'
@@ -28,22 +28,10 @@ const propTypes = {
28
28
  title: PropTypes.string,
29
29
  description: PropTypes.string,
30
30
  focusable: PropTypes.bool,
31
-
32
- /**
33
- * To let the SVG expand to fill its container, use `auto`
34
- */
35
31
  width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
36
-
37
- /**
38
- * To let the SVG expand to fill its container, use `auto`
39
- */
40
32
  height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
41
33
  inline: PropTypes.bool,
42
34
  color: PropTypes.oneOf(['inherit', 'primary', 'secondary', 'primary-inverse', 'secondary-inverse', 'success', 'error', 'alert', 'warning', 'brand', 'auto']),
43
-
44
- /**
45
- * provides a reference to the underlying html root element
46
- */
47
35
  elementRef: PropTypes.func
48
36
  };
49
37
  const allowedProps = ['children', 'src', 'title', 'description', 'focusable', 'width', 'height', 'inline', 'color', 'elementRef'];
@@ -1,5 +1,5 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- const _excluded = ["rotate", "className", "size", "bidirectional", "makeStyles", "styles", "themeOverride"];
2
+ const _excluded = ["rotate", "className", "themeOverride", "size", "bidirectional", "makeStyles", "styles"];
3
3
 
4
4
  var _dec, _dec2, _class, _class2, _temp;
5
5
 
@@ -30,17 +30,18 @@ var _dec, _dec2, _class, _class2, _temp;
30
30
  /** @jsx jsx */
31
31
  import { Component } from 'react';
32
32
  import { testable } from '@instructure/ui-testable';
33
- import { InlineSVG } from '../InlineSVG';
34
33
  import { withStyle, jsx } from '@instructure/emotion';
34
+ import { InlineSVG } from '../InlineSVG';
35
35
  import generateStyle from './styles';
36
36
  import generateComponentTheme from './theme';
37
37
  import { allowedProps, propTypes } from './props';
38
+
38
39
  /**
39
40
  ---
40
41
  category: components/utilities
41
42
  ---
43
+ @tsProps
42
44
  **/
43
-
44
45
  let SVGIcon = (_dec = withStyle(generateStyle, generateComponentTheme), _dec2 = testable(), _dec(_class = _dec2(_class = (_temp = _class2 = class SVGIcon extends Component {
45
46
  constructor(...args) {
46
47
  super(...args);
@@ -72,11 +73,11 @@ let SVGIcon = (_dec = withStyle(generateStyle, generateComponentTheme), _dec2 =
72
73
  const _this$props3 = this.props,
73
74
  rotate = _this$props3.rotate,
74
75
  className = _this$props3.className,
76
+ themeOverride = _this$props3.themeOverride,
75
77
  size = _this$props3.size,
76
78
  bidirectional = _this$props3.bidirectional,
77
79
  makeStyles = _this$props3.makeStyles,
78
80
  styles = _this$props3.styles,
79
- themeOverride = _this$props3.themeOverride,
80
81
  props = _objectWithoutProperties(_this$props3, _excluded);
81
82
 
82
83
  return jsx(InlineSVG, Object.assign({}, props, {
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -33,10 +33,13 @@ var _dec, _dec2, _class, _class2, _temp;
33
33
  ---
34
34
  category: components/utilities
35
35
  ---
36
+ @tsProps
36
37
  **/
37
38
  let InlineSVG = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec2 = (0, _testable.testable)(), _dec(_class = _dec2(_class = (_temp = _class2 = class InlineSVG extends _react.Component {
38
- constructor() {
39
- super();
39
+ constructor(props) {
40
+ super(props);
41
+ this.titleId = void 0;
42
+ this.descId = void 0;
40
43
  this.ref = null;
41
44
 
42
45
  this.handleRef = el => {
@@ -103,11 +106,11 @@ let InlineSVG = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default)
103
106
  if (this.props.src) {
104
107
  const src = InlineSVG.prepareSrc(this.props.src);
105
108
  return (0, _emotion.jsx)("g", {
106
- role: "presentation",
109
+ role: "presentation" // eslint-disable-next-line react/no-danger
110
+ ,
107
111
  dangerouslySetInnerHTML: {
108
112
  __html: src
109
- } // eslint-disable-line react/no-danger
110
-
113
+ }
111
114
  });
112
115
  } else {
113
116
  return (0, _emotion.jsx)("g", {
@@ -129,7 +132,7 @@ let InlineSVG = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default)
129
132
 
130
133
  const width = this.props.width === 'auto' ? void 0 : this.props.width;
131
134
  const height = this.props.height === 'auto' ? void 0 : this.props.height;
132
- return (0, _emotion.jsx)("svg", Object.assign({}, parseAttributes(this.props.src), (0, _omitProps.omitProps)(this.props, InlineSVG.allowedProps, ['inline']), {
135
+ return (0, _emotion.jsx)("svg", Object.assign({}, parseAttributes(src), (0, _omitProps.omitProps)(this.props, InlineSVG.allowedProps, ['inline']), {
133
136
  style: { ...style,
134
137
  width,
135
138
  height
@@ -152,7 +155,6 @@ let InlineSVG = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default)
152
155
  title: '',
153
156
  description: '',
154
157
  inline: true,
155
- children: null,
156
158
  width: '1em',
157
159
  height: '1em',
158
160
  color: 'inherit'
@@ -38,22 +38,10 @@ const propTypes = {
38
38
  title: _propTypes.default.string,
39
39
  description: _propTypes.default.string,
40
40
  focusable: _propTypes.default.bool,
41
-
42
- /**
43
- * To let the SVG expand to fill its container, use `auto`
44
- */
45
41
  width: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
46
-
47
- /**
48
- * To let the SVG expand to fill its container, use `auto`
49
- */
50
42
  height: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
51
43
  inline: _propTypes.default.bool,
52
44
  color: _propTypes.default.oneOf(['inherit', 'primary', 'secondary', 'primary-inverse', 'secondary-inverse', 'success', 'error', 'alert', 'warning', 'brand', 'auto']),
53
-
54
- /**
55
- * provides a reference to the underlying html root element
56
- */
57
45
  elementRef: _propTypes.default.func
58
46
  };
59
47
  exports.propTypes = propTypes;
@@ -13,17 +13,17 @@ var _react = require("react");
13
13
 
14
14
  var _testable = require("@instructure/ui-testable/lib/testable.js");
15
15
 
16
- var _InlineSVG = require("../InlineSVG");
17
-
18
16
  var _emotion = require("@instructure/emotion");
19
17
 
18
+ var _InlineSVG = require("../InlineSVG");
19
+
20
20
  var _styles = _interopRequireDefault(require("./styles"));
21
21
 
22
22
  var _theme = _interopRequireDefault(require("./theme"));
23
23
 
24
24
  var _props = require("./props");
25
25
 
26
- const _excluded = ["rotate", "className", "size", "bidirectional", "makeStyles", "styles", "themeOverride"];
26
+ const _excluded = ["rotate", "className", "themeOverride", "size", "bidirectional", "makeStyles", "styles"];
27
27
 
28
28
  var _dec, _dec2, _class, _class2, _temp;
29
29
 
@@ -31,6 +31,7 @@ var _dec, _dec2, _class, _class2, _temp;
31
31
  ---
32
32
  category: components/utilities
33
33
  ---
34
+ @tsProps
34
35
  **/
35
36
  let SVGIcon = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec2 = (0, _testable.testable)(), _dec(_class = _dec2(_class = (_temp = _class2 = class SVGIcon extends _react.Component {
36
37
  constructor(...args) {
@@ -63,11 +64,11 @@ let SVGIcon = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default),
63
64
  const _this$props3 = this.props,
64
65
  rotate = _this$props3.rotate,
65
66
  className = _this$props3.className,
67
+ themeOverride = _this$props3.themeOverride,
66
68
  size = _this$props3.size,
67
69
  bidirectional = _this$props3.bidirectional,
68
70
  makeStyles = _this$props3.makeStyles,
69
71
  styles = _this$props3.styles,
70
- themeOverride = _this$props3.themeOverride,
71
72
  props = (0, _objectWithoutProperties2.default)(_this$props3, _excluded);
72
73
  return (0, _emotion.jsx)(_InlineSVG.InlineSVG, Object.assign({}, props, {
73
74
  themeOverride: themeOverride,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/ui-svg-images",
3
- "version": "8.11.2-snapshot.7+2681e145a",
3
+ "version": "8.12.0",
4
4
  "description": "A UI component library made by Instructure Inc.",
5
5
  "author": "Instructure, Inc. Engineering and Product Design",
6
6
  "type": "commonjs",
@@ -24,19 +24,19 @@
24
24
  },
25
25
  "license": "MIT",
26
26
  "devDependencies": {
27
- "@instructure/ui-babel-preset": "8.11.2-snapshot.7+2681e145a",
28
- "@instructure/ui-test-locator": "8.11.2-snapshot.7+2681e145a",
29
- "@instructure/ui-test-utils": "8.11.2-snapshot.7+2681e145a",
30
- "@instructure/ui-themes": "8.11.2-snapshot.7+2681e145a"
27
+ "@instructure/ui-babel-preset": "8.12.0",
28
+ "@instructure/ui-test-locator": "8.12.0",
29
+ "@instructure/ui-test-utils": "8.12.0",
30
+ "@instructure/ui-themes": "8.12.0"
31
31
  },
32
32
  "dependencies": {
33
33
  "@babel/runtime": "^7.13.10",
34
- "@instructure/emotion": "8.11.2-snapshot.7+2681e145a",
35
- "@instructure/shared-types": "8.11.2-snapshot.7+2681e145a",
36
- "@instructure/ui-react-utils": "8.11.2-snapshot.7+2681e145a",
37
- "@instructure/ui-testable": "8.11.2-snapshot.7+2681e145a",
38
- "@instructure/ui-utils": "8.11.2-snapshot.7+2681e145a",
39
- "@instructure/uid": "8.11.2-snapshot.7+2681e145a",
34
+ "@instructure/emotion": "8.12.0",
35
+ "@instructure/shared-types": "8.12.0",
36
+ "@instructure/ui-react-utils": "8.12.0",
37
+ "@instructure/ui-testable": "8.12.0",
38
+ "@instructure/ui-utils": "8.12.0",
39
+ "@instructure/uid": "8.12.0",
40
40
  "prop-types": "^15"
41
41
  },
42
42
  "peerDependencies": {
@@ -45,6 +45,5 @@
45
45
  "publishConfig": {
46
46
  "access": "public"
47
47
  },
48
- "sideEffects": false,
49
- "gitHead": "2681e145ad469e1396536d3e9eed75a19995eb8a"
48
+ "sideEffects": false
50
49
  }
@@ -33,13 +33,15 @@ import { withStyle, jsx } from '@instructure/emotion'
33
33
 
34
34
  import generateStyle from './styles'
35
35
  import generateComponentTheme from './theme'
36
- import type { InlineSVGProps } from './props'
36
+
37
37
  import { allowedProps, propTypes } from './props'
38
+ import type { InlineSVGProps } from './props'
38
39
 
39
40
  /**
40
41
  ---
41
42
  category: components/utilities
42
43
  ---
44
+ @tsProps
43
45
  **/
44
46
  @withStyle(generateStyle, generateComponentTheme)
45
47
  @testable()
@@ -55,12 +57,14 @@ class InlineSVG extends Component<InlineSVGProps> {
55
57
  title: '',
56
58
  description: '',
57
59
  inline: true,
58
- children: null,
59
60
  width: '1em',
60
61
  height: '1em',
61
62
  color: 'inherit'
62
63
  }
63
64
 
65
+ titleId?: string
66
+ descId?: string
67
+
64
68
  ref: Element | null = null
65
69
 
66
70
  handleRef = (el: Element | null) => {
@@ -73,13 +77,10 @@ class InlineSVG extends Component<InlineSVGProps> {
73
77
  }
74
78
  }
75
79
 
76
- constructor() {
77
- // @ts-expect-error ts-migrate(2554) FIXME: Expected 1-2 arguments, but got 0.
78
- super()
80
+ constructor(props: InlineSVGProps) {
81
+ super(props)
79
82
 
80
- // @ts-expect-error ts-migrate(2339) FIXME: Property 'titleId' does not exist on type 'InlineS... Remove this comment to see the full error message
81
83
  this.titleId = uid('InlineSVG-title')
82
- // @ts-expect-error ts-migrate(2339) FIXME: Property 'descId' does not exist on type 'InlineSV... Remove this comment to see the full error message
83
84
  this.descId = uid('InlineSVG-desc')
84
85
  }
85
86
 
@@ -91,8 +92,7 @@ class InlineSVG extends Component<InlineSVGProps> {
91
92
  this.props.makeStyles?.()
92
93
  }
93
94
 
94
- // @ts-expect-error ts-migrate(7006) FIXME: Parameter 'src' implicitly has an 'any' type.
95
- static prepareSrc = (src) => {
95
+ static prepareSrc = (src: string) => {
96
96
  const pattern = /<svg[^>]*>((.|[\n\r])*)<\/svg>/
97
97
  const matches = pattern.exec(src)
98
98
 
@@ -109,13 +109,10 @@ class InlineSVG extends Component<InlineSVGProps> {
109
109
 
110
110
  renderTitle() {
111
111
  const { title } = this.props
112
- // @ts-expect-error ts-migrate(2339) FIXME: Property 'titleId' does not exist on type 'InlineS... Remove this comment to see the full error message
113
112
  return title ? <title id={this.titleId}>{title}</title> : null
114
113
  }
115
114
 
116
- // @ts-expect-error ts-migrate(7006) FIXME: Parameter 'desc' implicitly has an 'any' type.
117
- renderDesc(desc) {
118
- // @ts-expect-error ts-migrate(2339) FIXME: Property 'descId' does not exist on type 'InlineSV... Remove this comment to see the full error message
115
+ renderDesc(desc: InlineSVGProps['description']) {
119
116
  return desc ? <desc id={this.descId}>{desc}</desc> : null
120
117
  }
121
118
 
@@ -123,12 +120,10 @@ class InlineSVG extends Component<InlineSVGProps> {
123
120
  const ids = []
124
121
 
125
122
  if (this.props.title) {
126
- // @ts-expect-error ts-migrate(2339) FIXME: Property 'titleId' does not exist on type 'InlineS... Remove this comment to see the full error message
127
123
  ids.push(this.titleId)
128
124
  }
129
125
 
130
126
  if (this.props.description) {
131
- // @ts-expect-error ts-migrate(2339) FIXME: Property 'descId' does not exist on type 'InlineSV... Remove this comment to see the full error message
132
127
  ids.push(this.descId)
133
128
  }
134
129
 
@@ -141,7 +136,8 @@ class InlineSVG extends Component<InlineSVGProps> {
141
136
  return (
142
137
  <g
143
138
  role="presentation"
144
- dangerouslySetInnerHTML={{ __html: src }} // eslint-disable-line react/no-danger
139
+ // eslint-disable-next-line react/no-danger
140
+ dangerouslySetInnerHTML={{ __html: src }}
145
141
  />
146
142
  )
147
143
  } else {
@@ -151,7 +147,7 @@ class InlineSVG extends Component<InlineSVGProps> {
151
147
 
152
148
  render() {
153
149
  const {
154
- style, // eslint-disable-line react/prop-types
150
+ style,
155
151
  title,
156
152
  description,
157
153
  focusable,
@@ -167,7 +163,7 @@ class InlineSVG extends Component<InlineSVGProps> {
167
163
 
168
164
  return (
169
165
  <svg
170
- {...parseAttributes(this.props.src)}
166
+ {...parseAttributes(src)}
171
167
  {...omitProps(this.props, InlineSVG.allowedProps, ['inline'])}
172
168
  style={{
173
169
  ...style,
@@ -192,9 +188,8 @@ class InlineSVG extends Component<InlineSVGProps> {
192
188
  }
193
189
  }
194
190
 
195
- // @ts-expect-error ts-migrate(7006) FIXME: Parameter 'src' implicitly has an 'any' type.
196
- function parseAttributes(src) {
197
- const attributes = {}
191
+ function parseAttributes(src: InlineSVGProps['src']) {
192
+ const attributes: Record<string, string> = {}
198
193
  const SVGAttributesRegExp = /<svg\s+([^>]*)\s*>/
199
194
  const namesAndValuesRegExp = /(\S+)=["']?((?:.(?!["']?\s+(?:\S+)=|[>"']))+.)["']?/g
200
195
 
@@ -207,7 +202,6 @@ function parseAttributes(src) {
207
202
 
208
203
  while (match != null) {
209
204
  if (excludes.indexOf(match[1]) === -1) {
210
- // @ts-expect-error ts-migrate(7053) FIXME: Element implicitly has an 'any' type because expre... Remove this comment to see the full error message
211
205
  attributes[match[1]] =
212
206
  match[2] ||
213
207
  (match[3] ? match[3] : match[4] ? match[4] : match[5]) ||
@@ -32,11 +32,18 @@ import type {
32
32
  import type { WithStyleProps, ComponentStyle } from '@instructure/emotion'
33
33
 
34
34
  type InlineSVGOwnProps = {
35
+ children?: React.ReactNode
35
36
  src?: string
36
37
  title?: string
37
38
  description?: string
38
39
  focusable?: boolean
40
+ /**
41
+ * To let the SVG expand to fill its container, use "`auto`"
42
+ */
39
43
  width?: string | number
44
+ /**
45
+ * To let the SVG expand to fill its container, use "`auto`"
46
+ */
40
47
  height?: string | number
41
48
  inline?: boolean
42
49
  color?:
@@ -51,7 +58,9 @@ type InlineSVGOwnProps = {
51
58
  | 'warning'
52
59
  | 'brand'
53
60
  | 'auto'
54
- children?: React.ReactNode
61
+ /**
62
+ * provides a reference to the underlying html root element
63
+ */
55
64
  elementRef?: (element: Element | null) => void
56
65
  }
57
66
 
@@ -71,13 +80,7 @@ const propTypes: PropValidators<PropKeys> = {
71
80
  title: PropTypes.string,
72
81
  description: PropTypes.string,
73
82
  focusable: PropTypes.bool,
74
- /**
75
- * To let the SVG expand to fill its container, use `auto`
76
- */
77
83
  width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
78
- /**
79
- * To let the SVG expand to fill its container, use `auto`
80
- */
81
84
  height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
82
85
  inline: PropTypes.bool,
83
86
  color: PropTypes.oneOf([
@@ -93,9 +96,6 @@ const propTypes: PropValidators<PropKeys> = {
93
96
  'brand',
94
97
  'auto'
95
98
  ]),
96
- /**
97
- * provides a reference to the underlying html root element
98
- */
99
99
  elementRef: PropTypes.func
100
100
  }
101
101
 
@@ -26,20 +26,21 @@
26
26
  import { Component, ReactInstance } from 'react'
27
27
 
28
28
  import { testable } from '@instructure/ui-testable'
29
+ import { withStyle, jsx } from '@instructure/emotion'
29
30
 
30
31
  import { InlineSVG } from '../InlineSVG'
31
32
 
32
- import { withStyle, jsx } from '@instructure/emotion'
33
-
34
33
  import generateStyle from './styles'
35
34
  import generateComponentTheme from './theme'
36
- import type { SVGIconProps } from './props'
35
+
37
36
  import { allowedProps, propTypes } from './props'
37
+ import type { SVGIconProps } from './props'
38
38
 
39
39
  /**
40
40
  ---
41
41
  category: components/utilities
42
42
  ---
43
+ @tsProps
43
44
  **/
44
45
  @withStyle(generateStyle, generateComponentTheme)
45
46
  @testable()
@@ -78,13 +79,15 @@ class SVGIcon extends Component<SVGIconProps> {
78
79
  const {
79
80
  rotate,
80
81
  className,
82
+ themeOverride,
83
+
84
+ // 'size', 'bidirectional', 'makeStyles' and 'styles' need to be added here,
85
+ // so it won't be passed to InlineSVG via '...props'
81
86
  size,
82
87
  bidirectional,
83
- // 'makeStyles' and 'styles' need to be added here,
84
- // so it won't be passed to InlineSVG via '...props'
85
88
  makeStyles,
86
89
  styles,
87
- themeOverride,
90
+
88
91
  ...props
89
92
  } = this.props
90
93
 
@@ -25,6 +25,7 @@ import PropTypes from 'prop-types'
25
25
 
26
26
  import { InlineSVG } from '../InlineSVG'
27
27
 
28
+ import type { SVGAttributes } from 'react'
28
29
  import type {
29
30
  InlineSVGTheme,
30
31
  OtherHTMLAttributes,
@@ -34,7 +35,6 @@ import type {
34
35
  import type { WithStyleProps, ComponentStyle } from '@instructure/emotion'
35
36
 
36
37
  import type { InlineSVGOwnProps } from '../InlineSVG/props'
37
- import { SVGAttributes } from 'react'
38
38
 
39
39
  type SVGIconOwnProps = InlineSVGOwnProps & {
40
40
  rotate?: '0' | '90' | '180' | '270'
@@ -6,6 +6,7 @@ import type { InlineSVGProps } from './props';
6
6
  ---
7
7
  category: components/utilities
8
8
  ---
9
+ @tsProps
9
10
  **/
10
11
  declare class InlineSVG extends Component<InlineSVGProps> {
11
12
  static readonly componentId = "InlineSVG";
@@ -17,20 +18,21 @@ declare class InlineSVG extends Component<InlineSVGProps> {
17
18
  title: string;
18
19
  description: string;
19
20
  inline: boolean;
20
- children: null;
21
21
  width: string;
22
22
  height: string;
23
23
  color: string;
24
24
  };
25
+ titleId?: string;
26
+ descId?: string;
25
27
  ref: Element | null;
26
28
  handleRef: (el: Element | null) => void;
27
- constructor();
29
+ constructor(props: InlineSVGProps);
28
30
  componentDidMount(): void;
29
31
  componentDidUpdate(): void;
30
- static prepareSrc: (src: any) => any;
32
+ static prepareSrc: (src: string) => string;
31
33
  get role(): "img" | "presentation";
32
34
  renderTitle(): jsx.JSX.Element | null;
33
- renderDesc(desc: any): jsx.JSX.Element | null;
35
+ renderDesc(desc: InlineSVGProps['description']): jsx.JSX.Element | null;
34
36
  get labelledBy(): string | undefined;
35
37
  renderContent(): jsx.JSX.Element;
36
38
  render(): jsx.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/InlineSVG/index.tsx"],"names":[],"mappings":"AAwBA,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMjC,OAAO,EAAa,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAIrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAG7C;;;;GAIG;AACH,cAEM,SAAU,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/C,MAAM,CAAC,QAAQ,CAAC,WAAW,eAAc;IAEzC,MAAM,CAAC,YAAY,yDAAe;IAClC,MAAM,CAAC,SAAS,mHAAY;IAE5B,MAAM,CAAC,YAAY;;;;;;;;;;MAUlB;IAED,GAAG,EAAE,OAAO,GAAG,IAAI,CAAO;IAE1B,SAAS,OAAQ,OAAO,GAAG,IAAI,UAQ9B;;IAYD,iBAAiB;IAIjB,kBAAkB;IAKlB,MAAM,CAAC,UAAU,oBAKhB;IAED,IAAI,IAAI,2BAMP;IAED,WAAW;IAOX,UAAU,CAAC,IAAI,KAAA;IAKf,IAAI,UAAU,uBAcb;IAED,aAAa;IAcb,MAAM;CAyCP;AA8BD,eAAe,SAAS,CAAA;AACxB,OAAO,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/InlineSVG/index.tsx"],"names":[],"mappings":"AAwBA,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMjC,OAAO,EAAa,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAMrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C;;;;;GAKG;AACH,cAEM,SAAU,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/C,MAAM,CAAC,QAAQ,CAAC,WAAW,eAAc;IAEzC,MAAM,CAAC,YAAY,yDAAe;IAClC,MAAM,CAAC,SAAS,mHAAY;IAE5B,MAAM,CAAC,YAAY;;;;;;;;;MASlB;IAED,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,GAAG,EAAE,OAAO,GAAG,IAAI,CAAO;IAE1B,SAAS,OAAQ,OAAO,GAAG,IAAI,UAQ9B;gBAEW,KAAK,EAAE,cAAc;IAOjC,iBAAiB;IAIjB,kBAAkB;IAIlB,MAAM,CAAC,UAAU,QAAS,MAAM,YAK/B;IAED,IAAI,IAAI,2BAMP;IAED,WAAW;IAKX,UAAU,CAAC,IAAI,EAAE,cAAc,CAAC,aAAa,CAAC;IAI9C,IAAI,UAAU,uBAYb;IAED,aAAa;IAeb,MAAM;CAyCP;AA4BD,eAAe,SAAS,CAAA;AACxB,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -2,15 +2,24 @@ import React, { SVGAttributes } from 'react';
2
2
  import type { PropValidators, InlineSVGTheme, OtherHTMLAttributes } from '@instructure/shared-types';
3
3
  import type { WithStyleProps, ComponentStyle } from '@instructure/emotion';
4
4
  declare type InlineSVGOwnProps = {
5
+ children?: React.ReactNode;
5
6
  src?: string;
6
7
  title?: string;
7
8
  description?: string;
8
9
  focusable?: boolean;
10
+ /**
11
+ * To let the SVG expand to fill its container, use "`auto`"
12
+ */
9
13
  width?: string | number;
14
+ /**
15
+ * To let the SVG expand to fill its container, use "`auto`"
16
+ */
10
17
  height?: string | number;
11
18
  inline?: boolean;
12
19
  color?: 'inherit' | 'primary' | 'secondary' | 'primary-inverse' | 'secondary-inverse' | 'success' | 'error' | 'alert' | 'warning' | 'brand' | 'auto';
13
- children?: React.ReactNode;
20
+ /**
21
+ * provides a reference to the underlying html root element
22
+ */
14
23
  elementRef?: (element: Element | null) => void;
15
24
  };
16
25
  declare type PropKeys = keyof InlineSVGOwnProps;
@@ -1 +1 @@
1
- {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/InlineSVG/props.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAG5C,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,mBAAmB,EACpB,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E,aAAK,iBAAiB,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EACF,SAAS,GACT,SAAS,GACT,WAAW,GACX,iBAAiB,GACjB,mBAAmB,GACnB,SAAS,GACT,OAAO,GACP,OAAO,GACP,SAAS,GACT,OAAO,GACP,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAA;CAC/C,CAAA;AAED,aAAK,QAAQ,GAAG,MAAM,iBAAiB,CAAA;AAEvC,aAAK,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;AAEhD,aAAK,cAAc,GAAG,iBAAiB,GACrC,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC,GAC9C,mBAAmB,CAAC,iBAAiB,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAE1E,aAAK,cAAc,GAAG,cAAc,CAAC,WAAW,CAAC,CAAA;AAEjD,QAAA,MAAM,SAAS,EAAE,cAAc,CAAC,QAAQ,CAgCvC,CAAA;AAED,QAAA,MAAM,YAAY,EAAE,eAWnB,CAAA;AAED,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/InlineSVG/props.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAG5C,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,mBAAmB,EACpB,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E,aAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EACF,SAAS,GACT,SAAS,GACT,WAAW,GACX,iBAAiB,GACjB,mBAAmB,GACnB,SAAS,GACT,OAAO,GACP,OAAO,GACP,SAAS,GACT,OAAO,GACP,MAAM,CAAA;IACV;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAA;CAC/C,CAAA;AAED,aAAK,QAAQ,GAAG,MAAM,iBAAiB,CAAA;AAEvC,aAAK,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;AAEhD,aAAK,cAAc,GAAG,iBAAiB,GACrC,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC,GAC9C,mBAAmB,CAAC,iBAAiB,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAE1E,aAAK,cAAc,GAAG,cAAc,CAAC,WAAW,CAAC,CAAA;AAEjD,QAAA,MAAM,SAAS,EAAE,cAAc,CAAC,QAAQ,CAuBvC,CAAA;AAED,QAAA,MAAM,YAAY,EAAE,eAWnB,CAAA;AAED,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,CAAA"}
@@ -6,6 +6,7 @@ import type { SVGIconProps } from './props';
6
6
  ---
7
7
  category: components/utilities
8
8
  ---
9
+ @tsProps
9
10
  **/
10
11
  declare class SVGIcon extends Component<SVGIconProps> {
11
12
  static readonly componentId = "SVGIcon";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/SVGIcon/index.tsx"],"names":[],"mappings":"AAwBA,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAMhD,OAAO,EAAa,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAIrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C;;;;GAIG;AACH,cAEM,OAAQ,SAAQ,SAAS,CAAC,YAAY,CAAC;IAC3C,MAAM,CAAC,QAAQ,CAAC,WAAW,aAAY;IAEvC,MAAM,CAAC,YAAY,0GAAe;IAClC,MAAM,CAAC,SAAS,oKAAY;IAE5B,MAAM,CAAC,YAAY;;;MAGlB;IAED,GAAG,EAAE,aAAa,GAAG,IAAI,CAAO;IAEhC,SAAS,OAAQ,OAAO,GAAG,IAAI,UAQ9B;IAED,iBAAiB;IAIjB,kBAAkB;IAIlB,MAAM;CAyBP;AAED,eAAe,OAAO,CAAA;AACtB,OAAO,EAAE,OAAO,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/SVGIcon/index.tsx"],"names":[],"mappings":"AAwBA,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAGhD,OAAO,EAAa,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAQrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C;;;;;GAKG;AACH,cAEM,OAAQ,SAAQ,SAAS,CAAC,YAAY,CAAC;IAC3C,MAAM,CAAC,QAAQ,CAAC,WAAW,aAAY;IAEvC,MAAM,CAAC,YAAY,0GAAe;IAClC,MAAM,CAAC,SAAS,oKAAY;IAE5B,MAAM,CAAC,YAAY;;;MAGlB;IAED,GAAG,EAAE,aAAa,GAAG,IAAI,CAAO;IAEhC,SAAS,OAAQ,OAAO,GAAG,IAAI,UAQ9B;IAED,iBAAiB;IAIjB,kBAAkB;IAIlB,MAAM;CA2BP;AAED,eAAe,OAAO,CAAA;AACtB,OAAO,EAAE,OAAO,EAAE,CAAA"}
@@ -1,7 +1,7 @@
1
+ import type { SVGAttributes } from 'react';
1
2
  import type { InlineSVGTheme, OtherHTMLAttributes, PropValidators, SVGIconTheme } from '@instructure/shared-types';
2
3
  import type { WithStyleProps, ComponentStyle } from '@instructure/emotion';
3
4
  import type { InlineSVGOwnProps } from '../InlineSVG/props';
4
- import { SVGAttributes } from 'react';
5
5
  declare type SVGIconOwnProps = InlineSVGOwnProps & {
6
6
  rotate?: '0' | '90' | '180' | '270';
7
7
  size?: 'x-small' | 'small' | 'medium' | 'large' | 'x-large';
@@ -1 +1 @@
1
- {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/SVGIcon/props.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,YAAY,EACb,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,aAAK,eAAe,GAAG,iBAAiB,GAAG;IACzC,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,CAAA;IACnC,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAA;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,aAAK,QAAQ,GAAG,MAAM,eAAe,CAAA;AAErC,aAAK,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;AAEhD,aAAK,YAAY,GAAG,eAAe,GACjC,cAAc,CAAC,YAAY,GAAG,cAAc,EAAE,YAAY,CAAC,GAC3D,mBAAmB,CAAC,eAAe,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC,CAAA;AAEtE,aAAK,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;AAE7C,QAAA,MAAM,SAAS,EAAE,cAAc,CAAC,QAAQ,CAMvC,CAAA;AAED,QAAA,MAAM,YAAY,EAAE,eAcnB,CAAA;AAED,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/SVGIcon/props.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,YAAY,EACb,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAE3D,aAAK,eAAe,GAAG,iBAAiB,GAAG;IACzC,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,CAAA;IACnC,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAA;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,aAAK,QAAQ,GAAG,MAAM,eAAe,CAAA;AAErC,aAAK,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;AAEhD,aAAK,YAAY,GAAG,eAAe,GACjC,cAAc,CAAC,YAAY,GAAG,cAAc,EAAE,YAAY,CAAC,GAC3D,mBAAmB,CAAC,eAAe,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC,CAAA;AAEtE,aAAK,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;AAE7C,QAAA,MAAM,SAAS,EAAE,cAAc,CAAC,QAAQ,CAMvC,CAAA;AAED,QAAA,MAAM,YAAY,EAAE,eAcnB,CAAA;AAED,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,CAAA"}
package/LICENSE.md DELETED
@@ -1,27 +0,0 @@
1
- ---
2
- title: The MIT License (MIT)
3
- category: Getting Started
4
- order: 9
5
- ---
6
-
7
- # The MIT License (MIT)
8
-
9
- Copyright (c) 2015 Instructure, Inc.
10
-
11
- **Permission is hereby granted, free of charge, to any person obtaining a copy
12
- of this software and associated documentation files (the "Software"), to deal
13
- in the Software without restriction, including without limitation the rights
14
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15
- copies of the Software, and to permit persons to whom the Software is
16
- furnished to do so, subject to the following conditions.**
17
-
18
- The above copyright notice and this permission notice shall be included in all
19
- copies or substantial portions of the Software.
20
-
21
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
27
- SOFTWARE.