@digigov/react-icons 2.0.0-rc.0 → 2.0.0-rc.10

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.
@@ -0,0 +1,95 @@
1
+ import React from 'react';
2
+ type AsProp<C extends React.ElementType> = {
3
+ as?: C;
4
+ };
5
+ type PropsToOmit<C extends React.ElementType, P> = keyof (AsProp<C> & P);
6
+ type PolymorphicComponentProp<C extends React.ElementType, Props = Record<string, unknown>> = React.PropsWithChildren<Props & AsProp<C>> & Omit<React.ComponentPropsWithoutRef<C>, PropsToOmit<C, Props>>;
7
+ type PolymorphicComponentPropWithRef<C extends React.ElementType, Props = Record<string, unknown>> = PolymorphicComponentProp<C, Props> & {
8
+ ref?: any;
9
+ };
10
+ /**
11
+ * This is the updated component props using PolymorphicComponentPropWithRef
12
+ */
13
+ export type BaseProps<C extends React.ElementType> = PolymorphicComponentPropWithRef<C, {
14
+ /** margin is optional. It has not a default value. */
15
+ margin?: spacingValues;
16
+ /** marginTop is optional. It has not a default value. */
17
+ marginTop?: spacingValues;
18
+ /** marginBottom is optional. It has not a default value. */
19
+ marginBottom?: spacingValues;
20
+ /** marginLeft is optional. It has not a default value. */
21
+ marginLeft?: spacingValues;
22
+ /** marginRight is optional. It has not a default value. */
23
+ marginRight?: spacingValues;
24
+ /** Alternative for margin. Margin is optional. It has not a default value. */
25
+ m?: spacingValues;
26
+ /** Alternative for marginTop. MarginTop is optional. It has not a default value. */
27
+ mt?: spacingValues;
28
+ /** Alternative for marginBottom. MarginBottom is optional. It has not a default value. */
29
+ mb?: spacingValues;
30
+ /** Alternative for marginLeft. MarginLeft is optional. It has not a default value. */
31
+ ml?: spacingValues;
32
+ /** Alternative for marginRight. MarginRight is optional. It has not a default value. */
33
+ mr?: spacingValues;
34
+ /** Alternative for marginX. MarginX is optional. It has not a default value. */
35
+ mx?: spacingValues;
36
+ /** Alternative for marginY. MarginY is optional. It has not a default value. */
37
+ my?: spacingValues;
38
+ /** padding is optional. It has not a default value. */
39
+ padding?: spacingValues;
40
+ /** paddingTop is optional. It has not a default value. */
41
+ paddingTop?: spacingValues;
42
+ /** paddingBottom is optional. It has not a default value. */
43
+ paddingBottom?: spacingValues;
44
+ /** paddingLeft is optional. It has not a default value. */
45
+ paddingLeft?: spacingValues;
46
+ /** paddingRight is optional. It has not a default value. */
47
+ paddingRight?: spacingValues;
48
+ /** Alternative for padding. Padding is optional. It has not a default value. */
49
+ p?: spacingValues;
50
+ /** Alternative for paddingTop. PaddingTop is optional. It has not a default value. */
51
+ pt?: spacingValues;
52
+ /** Alternative for paddingBottom. PaddingBottom is optional. It has not a default value. */
53
+ pb?: spacingValues;
54
+ /** Alternative for paddingLeft. PaddingLeft is optional. It has not a default value. */
55
+ pl?: spacingValues;
56
+ /** Alternative for paddingRight. PaddingRight is optional. It has not a default value. */
57
+ pr?: spacingValues;
58
+ /** Alternative for paddingX. PaddingX is optional. It has not a default value. */
59
+ px?: spacingValues;
60
+ /** Alternative for paddingY. PaddingY is optional. It has not a default value. */
61
+ py?: spacingValues;
62
+ /** printHidden is optional. Default value is false. When true, the component is hidden at print. */
63
+ printHidden?: boolean;
64
+ /** printVisible is optional. When block, the component is displayed as block. When inline, the component is displayed as inline.*/
65
+ printVisible?: 'block' | 'inline';
66
+ /** Components will be hidden at all screen sizes. */
67
+ hidden?: boolean;
68
+ /** Components will be hidden from 'xs' screen size and up. */
69
+ xsUpHidden?: boolean;
70
+ /** Components will be hidden from 'sm' screen size and up. */
71
+ smUpHidden?: boolean;
72
+ /** Components will be hidden from 'md' screen size and up. */
73
+ mdUpHidden?: boolean;
74
+ /** Components will be hidden from 'lg' screen size and up. */
75
+ lgUpHidden?: boolean;
76
+ /** Components will be hidden from 'xl' screen size and up. */
77
+ xlUpHidden?: boolean;
78
+ /** Components will be hidden between xs and sm screen size. */
79
+ xsHidden?: boolean;
80
+ /** Components will be hidden between sm and md screen size. */
81
+ smHidden?: boolean;
82
+ /** Components will be hidden between md and lg screen size. */
83
+ mdHidden?: boolean;
84
+ /** Components will be hidden between lg and xl screen size. */
85
+ lgHidden?: boolean;
86
+ /** Components will be hidden between xl and 2xl screen size. */
87
+ xlHidden?: boolean;
88
+ }>;
89
+ type spacingValues = 0 | 0.5 | 1 | 1.5 | 2 | 2.5 | 3 | 3.5 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 14 | 16 | 20 | 24 | 28 | 32 | 36 | 40 | 44 | 48 | 52 | 56 | 60 | 64 | 72 | 80 | 96;
90
+ /**
91
+ * This is the type used in the type annotation for the component
92
+ */
93
+ type BaseComponent = <C extends React.ElementType = 'span'>(props: BaseProps<C>) => React.ReactElement | null;
94
+ export declare const Base: BaseComponent;
95
+ export default Base;
package/Base/index.js ADDED
@@ -0,0 +1,69 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["as", "margin", "marginTop", "marginBottom", "marginLeft", "marginRight", "m", "mt", "mb", "ml", "mr", "mx", "my", "padding", "paddingTop", "paddingBottom", "paddingLeft", "paddingRight", "p", "pt", "pb", "pr", "pl", "px", "py", "printHidden", "printVisible", "hidden", "xsUpHidden", "smUpHidden", "mdUpHidden", "lgUpHidden", "xlUpHidden", "xsHidden", "smHidden", "mdHidden", "lgHidden", "xlHidden", "children", "className"];
4
+ import React from 'react';
5
+ import clsx from 'clsx';
6
+
7
+ // This is the first reusable type utility we built
8
+
9
+ // This is a new type utitlity with ref!
10
+
11
+ // This is the type for the "ref" only
12
+
13
+ /**
14
+ * This is the updated component props using PolymorphicComponentPropWithRef
15
+ */
16
+
17
+ /**
18
+ * This is the type used in the type annotation for the component
19
+ */
20
+
21
+ export var Base = /*#__PURE__*/React.forwardRef(function Base(_ref, ref) {
22
+ var as = _ref.as,
23
+ margin = _ref.margin,
24
+ marginTop = _ref.marginTop,
25
+ marginBottom = _ref.marginBottom,
26
+ marginLeft = _ref.marginLeft,
27
+ marginRight = _ref.marginRight,
28
+ m = _ref.m,
29
+ mt = _ref.mt,
30
+ mb = _ref.mb,
31
+ ml = _ref.ml,
32
+ mr = _ref.mr,
33
+ mx = _ref.mx,
34
+ my = _ref.my,
35
+ padding = _ref.padding,
36
+ paddingTop = _ref.paddingTop,
37
+ paddingBottom = _ref.paddingBottom,
38
+ paddingLeft = _ref.paddingLeft,
39
+ paddingRight = _ref.paddingRight,
40
+ p = _ref.p,
41
+ pt = _ref.pt,
42
+ pb = _ref.pb,
43
+ pr = _ref.pr,
44
+ pl = _ref.pl,
45
+ px = _ref.px,
46
+ py = _ref.py,
47
+ printHidden = _ref.printHidden,
48
+ printVisible = _ref.printVisible,
49
+ hidden = _ref.hidden,
50
+ xsUpHidden = _ref.xsUpHidden,
51
+ smUpHidden = _ref.smUpHidden,
52
+ mdUpHidden = _ref.mdUpHidden,
53
+ lgUpHidden = _ref.lgUpHidden,
54
+ xlUpHidden = _ref.xlUpHidden,
55
+ xsHidden = _ref.xsHidden,
56
+ smHidden = _ref.smHidden,
57
+ mdHidden = _ref.mdHidden,
58
+ lgHidden = _ref.lgHidden,
59
+ xlHidden = _ref.xlHidden,
60
+ children = _ref.children,
61
+ className = _ref.className,
62
+ props = _objectWithoutProperties(_ref, _excluded);
63
+ var Component = as || 'span';
64
+ return /*#__PURE__*/React.createElement(Component, _extends({
65
+ className: clsx(className, (paddingBottom !== undefined ? true : undefined) && "ds-pb-".concat(paddingBottom), (marginBottom !== undefined ? true : undefined) && "ds-mb-".concat(marginBottom), (paddingRight !== undefined ? true : undefined) && "ds-pr-".concat(paddingRight), (marginRight !== undefined ? true : undefined) && "ds-mr-".concat(marginRight), (paddingLeft !== undefined ? true : undefined) && "ds-pl-".concat(paddingLeft), (marginLeft !== undefined ? true : undefined) && "ds-ml-".concat(marginLeft), (paddingTop !== undefined ? true : undefined) && "ds-pt-".concat(paddingTop), (marginTop !== undefined ? true : undefined) && "ds-mt-".concat(marginTop), (padding !== undefined ? true : undefined) && "ds-p-".concat(padding), (margin !== undefined ? true : undefined) && "ds-m-".concat(margin), (mt !== undefined ? true : undefined) && "ds-mt-".concat(mt), (mb !== undefined ? true : undefined) && "ds-mb-".concat(mb), (mr !== undefined ? true : undefined) && "ds-mr-".concat(mr), (ml !== undefined ? true : undefined) && "ds-ml-".concat(ml), (mx !== undefined ? true : undefined) && "ds-mx-".concat(mx), (my !== undefined ? true : undefined) && "ds-my-".concat(my), (pt !== undefined ? true : undefined) && "ds-pt-".concat(pt), (pb !== undefined ? true : undefined) && "ds-pb-".concat(pb), (pr !== undefined ? true : undefined) && "ds-pr-".concat(pr), (pl !== undefined ? true : undefined) && "ds-pl-".concat(pl), (px !== undefined ? true : undefined) && "ds-px-".concat(px), (py !== undefined ? true : undefined) && "ds-py-".concat(py), (m !== undefined ? true : undefined) && "ds-m-".concat(m), (p !== undefined ? true : undefined) && "ds-p-".concat(p), printVisible === 'inline' && 'ds-print-visible-inline', printVisible === 'block' && 'ds-print-visible-block', !!printHidden && 'ds-print-hidden', !!xsUpHidden && 'ds-hidden-xs-up', !!smUpHidden && 'ds-hidden-sm-up', !!mdUpHidden && 'ds-hidden-md-up', !!lgUpHidden && 'ds-hidden-lg-up', !!xlUpHidden && 'ds-hidden-xl-up', !!xsHidden && 'ds-hidden-xs', !!smHidden && 'ds-hidden-sm', !!mdHidden && 'ds-hidden-md', !!lgHidden && 'ds-hidden-lg', !!xlHidden && 'ds-hidden-xl', !!hidden && 'ds-hidden'),
66
+ ref: ref
67
+ }, props), children);
68
+ });
69
+ export default Base;
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": false,
3
+ "module": "./index.js",
4
+ "types": "./index.d.ts",
5
+ "main": "../cjs/Base/index.js"
6
+ }
package/Icon/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SvgIconProps } from '@digigov/react-core/SvgIcon';
2
+ import { SvgIconProps } from '@digigov/react-icons/SvgIcon';
3
3
  import type { IconTypes } from '@digigov/react-icons/icons';
4
4
  export type IconProps<N extends keyof IconTypes> = SvgIconProps & IconTypes[N] & {
5
5
  /**
package/Icon/index.js CHANGED
@@ -4,7 +4,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
4
4
  var _excluded = ["icon", "className"];
5
5
  import React from 'react';
6
6
  import clsx from 'clsx';
7
- import SvgIcon from '@digigov/react-core/SvgIcon';
7
+ import SvgIcon from '@digigov/react-icons/SvgIcon';
8
8
  import * as icons from '@digigov/react-icons/icons';
9
9
  /**
10
10
  * Icon is used whenever we need a GOV.GR icon.
@@ -0,0 +1,390 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`renders the SvgIcon with no props 1`] = `
4
+ <ForwardRef(SvgIcon)>
5
+ <ForwardRef(Base)
6
+ aria-hidden="true"
7
+ as="svg"
8
+ className="ds-svg-icon"
9
+ focusable="false"
10
+ viewBox="0 0 24 24"
11
+ >
12
+ <svg
13
+ aria-hidden="true"
14
+ className="ds-svg-icon"
15
+ focusable="false"
16
+ viewBox="0 0 24 24"
17
+ />
18
+ </ForwardRef(Base)>
19
+ </ForwardRef(SvgIcon)>
20
+ `;
21
+
22
+ exports[`renders the SvgIcon with prop color=base-content 1`] = `
23
+ <ForwardRef(SvgIcon)
24
+ color="base-content"
25
+ >
26
+ <ForwardRef(Base)
27
+ aria-hidden="true"
28
+ as="svg"
29
+ className="ds-svg-icon--base-content ds-svg-icon"
30
+ focusable="false"
31
+ viewBox="0 0 24 24"
32
+ >
33
+ <svg
34
+ aria-hidden="true"
35
+ className="ds-svg-icon--base-content ds-svg-icon"
36
+ focusable="false"
37
+ viewBox="0 0 24 24"
38
+ >
39
+ hello
40
+ </svg>
41
+ </ForwardRef(Base)>
42
+ </ForwardRef(SvgIcon)>
43
+ `;
44
+
45
+ exports[`renders the SvgIcon with prop color=dark 1`] = `
46
+ <ForwardRef(SvgIcon)
47
+ color="dark"
48
+ >
49
+ <ForwardRef(Base)
50
+ aria-hidden="true"
51
+ as="svg"
52
+ className="ds-svg-icon--dark ds-svg-icon"
53
+ focusable="false"
54
+ viewBox="0 0 24 24"
55
+ >
56
+ <svg
57
+ aria-hidden="true"
58
+ className="ds-svg-icon--dark ds-svg-icon"
59
+ focusable="false"
60
+ viewBox="0 0 24 24"
61
+ >
62
+ hello
63
+ </svg>
64
+ </ForwardRef(Base)>
65
+ </ForwardRef(SvgIcon)>
66
+ `;
67
+
68
+ exports[`renders the SvgIcon with prop color=error 1`] = `
69
+ <ForwardRef(SvgIcon)
70
+ color="error"
71
+ >
72
+ <ForwardRef(Base)
73
+ aria-hidden="true"
74
+ as="svg"
75
+ className="ds-svg-icon--error ds-svg-icon"
76
+ focusable="false"
77
+ viewBox="0 0 24 24"
78
+ >
79
+ <svg
80
+ aria-hidden="true"
81
+ className="ds-svg-icon--error ds-svg-icon"
82
+ focusable="false"
83
+ viewBox="0 0 24 24"
84
+ >
85
+ hello
86
+ </svg>
87
+ </ForwardRef(Base)>
88
+ </ForwardRef(SvgIcon)>
89
+ `;
90
+
91
+ exports[`renders the SvgIcon with prop color=error and size= xl 1`] = `
92
+ <ForwardRef(SvgIcon)
93
+ color="warning"
94
+ size="xl"
95
+ >
96
+ <ForwardRef(Base)
97
+ aria-hidden="true"
98
+ as="svg"
99
+ className="ds-svg-icon--warning ds-svg-icon--xl ds-svg-icon"
100
+ focusable="false"
101
+ viewBox="0 0 24 24"
102
+ >
103
+ <svg
104
+ aria-hidden="true"
105
+ className="ds-svg-icon--warning ds-svg-icon--xl ds-svg-icon"
106
+ focusable="false"
107
+ viewBox="0 0 24 24"
108
+ >
109
+ hello
110
+ </svg>
111
+ </ForwardRef(Base)>
112
+ </ForwardRef(SvgIcon)>
113
+ `;
114
+
115
+ exports[`renders the SvgIcon with prop color=focus 1`] = `
116
+ <ForwardRef(SvgIcon)
117
+ color="focus"
118
+ >
119
+ <ForwardRef(Base)
120
+ aria-hidden="true"
121
+ as="svg"
122
+ className="ds-svg-icon--focus ds-svg-icon"
123
+ focusable="false"
124
+ viewBox="0 0 24 24"
125
+ >
126
+ <svg
127
+ aria-hidden="true"
128
+ className="ds-svg-icon--focus ds-svg-icon"
129
+ focusable="false"
130
+ viewBox="0 0 24 24"
131
+ >
132
+ hello
133
+ </svg>
134
+ </ForwardRef(Base)>
135
+ </ForwardRef(SvgIcon)>
136
+ `;
137
+
138
+ exports[`renders the SvgIcon with prop color=gray 1`] = `
139
+ <ForwardRef(SvgIcon)
140
+ color="gray"
141
+ >
142
+ <ForwardRef(Base)
143
+ aria-hidden="true"
144
+ as="svg"
145
+ className="ds-svg-icon--gray ds-svg-icon"
146
+ focusable="false"
147
+ viewBox="0 0 24 24"
148
+ >
149
+ <svg
150
+ aria-hidden="true"
151
+ className="ds-svg-icon--gray ds-svg-icon"
152
+ focusable="false"
153
+ viewBox="0 0 24 24"
154
+ >
155
+ hello
156
+ </svg>
157
+ </ForwardRef(Base)>
158
+ </ForwardRef(SvgIcon)>
159
+ `;
160
+
161
+ exports[`renders the SvgIcon with prop color=primary 1`] = `
162
+ <ForwardRef(SvgIcon)
163
+ color="primary"
164
+ >
165
+ <ForwardRef(Base)
166
+ aria-hidden="true"
167
+ as="svg"
168
+ className="ds-svg-icon--primary ds-svg-icon"
169
+ focusable="false"
170
+ viewBox="0 0 24 24"
171
+ >
172
+ <svg
173
+ aria-hidden="true"
174
+ className="ds-svg-icon--primary ds-svg-icon"
175
+ focusable="false"
176
+ viewBox="0 0 24 24"
177
+ >
178
+ hello
179
+ </svg>
180
+ </ForwardRef(Base)>
181
+ </ForwardRef(SvgIcon)>
182
+ `;
183
+
184
+ exports[`renders the SvgIcon with prop color=success 1`] = `
185
+ <ForwardRef(SvgIcon)
186
+ color="success"
187
+ >
188
+ <ForwardRef(Base)
189
+ aria-hidden="true"
190
+ as="svg"
191
+ className="ds-svg-icon--success ds-svg-icon"
192
+ focusable="false"
193
+ viewBox="0 0 24 24"
194
+ >
195
+ <svg
196
+ aria-hidden="true"
197
+ className="ds-svg-icon--success ds-svg-icon"
198
+ focusable="false"
199
+ viewBox="0 0 24 24"
200
+ >
201
+ hello
202
+ </svg>
203
+ </ForwardRef(Base)>
204
+ </ForwardRef(SvgIcon)>
205
+ `;
206
+
207
+ exports[`renders the SvgIcon with prop color=warning 1`] = `
208
+ <ForwardRef(SvgIcon)
209
+ color="warning"
210
+ >
211
+ <ForwardRef(Base)
212
+ aria-hidden="true"
213
+ as="svg"
214
+ className="ds-svg-icon--warning ds-svg-icon"
215
+ focusable="false"
216
+ viewBox="0 0 24 24"
217
+ >
218
+ <svg
219
+ aria-hidden="true"
220
+ className="ds-svg-icon--warning ds-svg-icon"
221
+ focusable="false"
222
+ viewBox="0 0 24 24"
223
+ >
224
+ hello
225
+ </svg>
226
+ </ForwardRef(Base)>
227
+ </ForwardRef(SvgIcon)>
228
+ `;
229
+
230
+ exports[`renders the SvgIcon with prop color=warning and size=sm 1`] = `
231
+ <ForwardRef(SvgIcon)
232
+ color="warning"
233
+ size="sm"
234
+ >
235
+ <ForwardRef(Base)
236
+ aria-hidden="true"
237
+ as="svg"
238
+ className="ds-svg-icon--warning ds-svg-icon--sm ds-svg-icon"
239
+ focusable="false"
240
+ viewBox="0 0 24 24"
241
+ >
242
+ <svg
243
+ aria-hidden="true"
244
+ className="ds-svg-icon--warning ds-svg-icon--sm ds-svg-icon"
245
+ focusable="false"
246
+ viewBox="0 0 24 24"
247
+ >
248
+ hello
249
+ </svg>
250
+ </ForwardRef(Base)>
251
+ </ForwardRef(SvgIcon)>
252
+ `;
253
+
254
+ exports[`renders the SvgIcon with prop color=white 1`] = `
255
+ <ForwardRef(SvgIcon)
256
+ color="white"
257
+ >
258
+ <ForwardRef(Base)
259
+ aria-hidden="true"
260
+ as="svg"
261
+ className="ds-svg-icon--white ds-svg-icon"
262
+ focusable="false"
263
+ viewBox="0 0 24 24"
264
+ >
265
+ <svg
266
+ aria-hidden="true"
267
+ className="ds-svg-icon--white ds-svg-icon"
268
+ focusable="false"
269
+ viewBox="0 0 24 24"
270
+ >
271
+ hello
272
+ </svg>
273
+ </ForwardRef(Base)>
274
+ </ForwardRef(SvgIcon)>
275
+ `;
276
+
277
+ exports[`renders the SvgIcon with prop size=lg 1`] = `
278
+ <ForwardRef(SvgIcon)
279
+ size="lg"
280
+ >
281
+ <ForwardRef(Base)
282
+ aria-hidden="true"
283
+ as="svg"
284
+ className="ds-svg-icon--lg ds-svg-icon"
285
+ focusable="false"
286
+ viewBox="0 0 24 24"
287
+ >
288
+ <svg
289
+ aria-hidden="true"
290
+ className="ds-svg-icon--lg ds-svg-icon"
291
+ focusable="false"
292
+ viewBox="0 0 24 24"
293
+ >
294
+ hello
295
+ </svg>
296
+ </ForwardRef(Base)>
297
+ </ForwardRef(SvgIcon)>
298
+ `;
299
+
300
+ exports[`renders the SvgIcon with prop size=md 1`] = `
301
+ <ForwardRef(SvgIcon)
302
+ size="md"
303
+ >
304
+ <ForwardRef(Base)
305
+ aria-hidden="true"
306
+ as="svg"
307
+ className="ds-svg-icon--md ds-svg-icon"
308
+ focusable="false"
309
+ viewBox="0 0 24 24"
310
+ >
311
+ <svg
312
+ aria-hidden="true"
313
+ className="ds-svg-icon--md ds-svg-icon"
314
+ focusable="false"
315
+ viewBox="0 0 24 24"
316
+ >
317
+ hello
318
+ </svg>
319
+ </ForwardRef(Base)>
320
+ </ForwardRef(SvgIcon)>
321
+ `;
322
+
323
+ exports[`renders the SvgIcon with prop size=sm 1`] = `
324
+ <ForwardRef(SvgIcon)
325
+ size="sm"
326
+ >
327
+ <ForwardRef(Base)
328
+ aria-hidden="true"
329
+ as="svg"
330
+ className="ds-svg-icon--sm ds-svg-icon"
331
+ focusable="false"
332
+ viewBox="0 0 24 24"
333
+ >
334
+ <svg
335
+ aria-hidden="true"
336
+ className="ds-svg-icon--sm ds-svg-icon"
337
+ focusable="false"
338
+ viewBox="0 0 24 24"
339
+ >
340
+ hello
341
+ </svg>
342
+ </ForwardRef(Base)>
343
+ </ForwardRef(SvgIcon)>
344
+ `;
345
+
346
+ exports[`renders the SvgIcon with prop size=xl 1`] = `
347
+ <ForwardRef(SvgIcon)
348
+ size="xl"
349
+ >
350
+ <ForwardRef(Base)
351
+ aria-hidden="true"
352
+ as="svg"
353
+ className="ds-svg-icon--xl ds-svg-icon"
354
+ focusable="false"
355
+ viewBox="0 0 24 24"
356
+ >
357
+ <svg
358
+ aria-hidden="true"
359
+ className="ds-svg-icon--xl ds-svg-icon"
360
+ focusable="false"
361
+ viewBox="0 0 24 24"
362
+ >
363
+ hello
364
+ </svg>
365
+ </ForwardRef(Base)>
366
+ </ForwardRef(SvgIcon)>
367
+ `;
368
+
369
+ exports[`renders the SvgIcon with prop size=xs 1`] = `
370
+ <ForwardRef(SvgIcon)
371
+ size="xs"
372
+ >
373
+ <ForwardRef(Base)
374
+ aria-hidden="true"
375
+ as="svg"
376
+ className="ds-svg-icon--xs ds-svg-icon"
377
+ focusable="false"
378
+ viewBox="0 0 24 24"
379
+ >
380
+ <svg
381
+ aria-hidden="true"
382
+ className="ds-svg-icon--xs ds-svg-icon"
383
+ focusable="false"
384
+ viewBox="0 0 24 24"
385
+ >
386
+ hello
387
+ </svg>
388
+ </ForwardRef(Base)>
389
+ </ForwardRef(SvgIcon)>
390
+ `;
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import { BaseProps } from '@digigov/react-icons/Base';
3
+ export interface SvgIconProps extends BaseProps<'svg'> {
4
+ /**
5
+ * size is optional.
6
+ * size prop declares the size of the svg icon.
7
+ * @value 'xs'
8
+ * @value 'sm'
9
+ * @value 'md'
10
+ * @value 'lg'
11
+ * @value 'xl'
12
+ * @default 'sm'
13
+ */
14
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
15
+ /**
16
+ * color property styles svg icon with Gov.gr palette's basic colors.
17
+ * color property is optional.
18
+ * @value 'base-content'
19
+ * @value 'dark', always dark, among all themes
20
+ * @value 'white', always white, among all themes
21
+ * @value 'gray'
22
+ * @value 'primary'
23
+ * @value 'success'
24
+ * @value 'warning'
25
+ * @value 'error'
26
+ * @value 'focus', use only in focus state, in dark background
27
+ * @value 'info'
28
+ * @value 'link'
29
+ */
30
+ color?: 'base-content' | 'dark' | 'white' | 'gray' | 'primary' | 'success' | 'warning' | 'error' | 'focus' | 'info' | 'link';
31
+ }
32
+ /**
33
+ * Use SvgIcon as global svg component.
34
+ * SvgIcon can be used inside other svg components as children such as CheckIcon, CaretIcon etc.
35
+ */
36
+ export declare const SvgIcon: React.ForwardRefExoticComponent<Pick<SvgIconProps, "string" | "p" | "style" | "clipPath" | "filter" | "mask" | "path" | "children" | "direction" | "as" | "className" | "color" | "height" | "id" | "lang" | "max" | "media" | "method" | "min" | "name" | "target" | "type" | "width" | "role" | "tabIndex" | "crossOrigin" | "accentHeight" | "accumulate" | "additive" | "alignmentBaseline" | "allowReorder" | "alphabetic" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "azimuth" | "baseFrequency" | "baselineShift" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clip" | "clipPathUnits" | "clipRule" | "colorInterpolation" | "colorInterpolationFilters" | "colorProfile" | "colorRendering" | "contentScriptType" | "contentStyleType" | "cursor" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "display" | "divisor" | "dominantBaseline" | "dur" | "dx" | "dy" | "edgeMode" | "elevation" | "enableBackground" | "end" | "exponent" | "externalResourcesRequired" | "fill" | "fillOpacity" | "fillRule" | "filterRes" | "filterUnits" | "floodColor" | "floodOpacity" | "focusable" | "fontFamily" | "fontSize" | "fontSizeAdjust" | "fontStretch" | "fontStyle" | "fontVariant" | "fontWeight" | "format" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphOrientationVertical" | "glyphRef" | "gradientTransform" | "gradientUnits" | "hanging" | "horizAdvX" | "horizOriginX" | "href" | "ideographic" | "imageRendering" | "in2" | "in" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "letterSpacing" | "lightingColor" | "limitingConeAngle" | "local" | "markerEnd" | "markerHeight" | "markerMid" | "markerStart" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "mathematical" | "mode" | "numOctaves" | "offset" | "opacity" | "operator" | "order" | "orient" | "orientation" | "origin" | "overflow" | "overlinePosition" | "overlineThickness" | "paintOrder" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "pointerEvents" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rotate" | "rx" | "ry" | "scale" | "seed" | "shapeRendering" | "slope" | "spacing" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "stopColor" | "stopOpacity" | "strikethroughPosition" | "strikethroughThickness" | "stroke" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textAnchor" | "textDecoration" | "textLength" | "textRendering" | "to" | "transform" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicode" | "unicodeBidi" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "values" | "vectorEffect" | "version" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewBox" | "viewTarget" | "visibility" | "vMathematical" | "widths" | "wordSpacing" | "writingMode" | "x1" | "x2" | "x" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "y" | "yChannelSelector" | "z" | "zoomAndPan" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "hidden" | "size" | "margin" | "marginTop" | "marginBottom" | "marginLeft" | "marginRight" | "m" | "mt" | "mb" | "ml" | "mr" | "mx" | "my" | "padding" | "paddingTop" | "paddingBottom" | "paddingLeft" | "paddingRight" | "pt" | "pb" | "pl" | "pr" | "px" | "py" | "printHidden" | "printVisible" | "xsUpHidden" | "smUpHidden" | "mdUpHidden" | "lgUpHidden" | "xlUpHidden" | "xsHidden" | "smHidden" | "mdHidden" | "lgHidden" | "xlHidden"> & React.RefAttributes<SVGSVGElement>>;
37
+ export default SvgIcon;
@@ -0,0 +1,26 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["size", "color", "children", "className"];
4
+ import React from 'react';
5
+ import clsx from 'clsx';
6
+ import Base from '@digigov/react-icons/Base';
7
+ /**
8
+ * Use SvgIcon as global svg component.
9
+ * SvgIcon can be used inside other svg components as children such as CheckIcon, CaretIcon etc.
10
+ */
11
+ export var SvgIcon = /*#__PURE__*/React.forwardRef(function SvgIcon(_ref, ref) {
12
+ var size = _ref.size,
13
+ color = _ref.color,
14
+ children = _ref.children,
15
+ className = _ref.className,
16
+ props = _objectWithoutProperties(_ref, _excluded);
17
+ return /*#__PURE__*/React.createElement(Base, _extends({
18
+ as: "svg",
19
+ ref: ref,
20
+ className: clsx(className, color !== undefined && "ds-svg-icon--".concat(color), size !== undefined && "ds-svg-icon--".concat(size), true && 'ds-svg-icon'),
21
+ focusable: "false",
22
+ viewBox: "0 0 24 24",
23
+ "aria-hidden": "true"
24
+ }, props), children);
25
+ });
26
+ export default SvgIcon;