@dynamic-labs/iconic 0.0.1 → 0.0.3

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,12 @@
1
+ import { type FC } from 'react';
2
+ export type Iconic = FC<{
3
+ alt?: string;
4
+ width?: number;
5
+ height?: number;
6
+ className?: string;
7
+ }>;
8
+ export declare const createIconic: (props: {
9
+ sourcePath: string;
10
+ iconName: string;
11
+ alt: string;
12
+ }) => Iconic;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createIconic = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const CDN_BASE_URL = 'https://iconic.dynamic-static-assets.com';
6
+ const createIconic = (props) => {
7
+ const Icon = Object.assign(Object.assign({}, props), { function: (props) => {
8
+ return ((0, jsx_runtime_1.jsx)("img", Object.assign({ "data-testid": Icon.iconName, src: `${CDN_BASE_URL}${Icon.sourcePath}`, alt: Icon.alt }, props)));
9
+ } });
10
+ return Icon.function.bind(Icon);
11
+ };
12
+ exports.createIconic = createIconic;
@@ -1,156 +1,3 @@
1
- /// <reference types="react" />
2
- declare const BraveIcon_base: {
3
- new (props: {
4
- className?: string;
5
- size: "24x24" | "32x32" | "16x16";
6
- } | Readonly<{
7
- className?: string;
8
- size: "24x24" | "32x32" | "16x16";
9
- }>): {
10
- readonly iconName: string;
11
- readonly alt: string;
12
- readonly categoryName: string;
13
- readonly resolutions: readonly ["24x24", "32x32", "16x16"];
14
- readonly formats: {
15
- "24x24": {
16
- height: number;
17
- width: number;
18
- };
19
- "32x32": {
20
- height: number;
21
- width: number;
22
- };
23
- "16x16": {
24
- height: number;
25
- width: number;
26
- };
27
- };
28
- readonly sourcePath: string;
29
- readonly baseUrl: string;
30
- render(): JSX.Element;
31
- context: unknown;
32
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
33
- className?: string;
34
- size: "24x24" | "32x32" | "16x16";
35
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
36
- forceUpdate(callback?: () => void): void;
37
- readonly props: Readonly<{
38
- className?: string;
39
- size: "24x24" | "32x32" | "16x16";
40
- }>;
41
- state: Readonly<{}>;
42
- refs: {
43
- [key: string]: import("react").ReactInstance;
44
- };
45
- componentDidMount?(): void;
46
- shouldComponentUpdate?(nextProps: Readonly<{
47
- className?: string;
48
- size: "24x24" | "32x32" | "16x16";
49
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
50
- componentWillUnmount?(): void;
51
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
52
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
53
- className?: string;
54
- size: "24x24" | "32x32" | "16x16";
55
- }>, prevState: Readonly<{}>): any;
56
- componentDidUpdate?(prevProps: Readonly<{
57
- className?: string;
58
- size: "24x24" | "32x32" | "16x16";
59
- }>, prevState: Readonly<{}>, snapshot?: any): void;
60
- componentWillMount?(): void;
61
- UNSAFE_componentWillMount?(): void;
62
- componentWillReceiveProps?(nextProps: Readonly<{
63
- className?: string;
64
- size: "24x24" | "32x32" | "16x16";
65
- }>, nextContext: any): void;
66
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
67
- className?: string;
68
- size: "24x24" | "32x32" | "16x16";
69
- }>, nextContext: any): void;
70
- componentWillUpdate?(nextProps: Readonly<{
71
- className?: string;
72
- size: "24x24" | "32x32" | "16x16";
73
- }>, nextState: Readonly<{}>, nextContext: any): void;
74
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
75
- className?: string;
76
- size: "24x24" | "32x32" | "16x16";
77
- }>, nextState: Readonly<{}>, nextContext: any): void;
78
- };
79
- new (props: {
80
- className?: string;
81
- size: "24x24" | "32x32" | "16x16";
82
- }, context: any): {
83
- readonly iconName: string;
84
- readonly alt: string;
85
- readonly categoryName: string;
86
- readonly resolutions: readonly ["24x24", "32x32", "16x16"];
87
- readonly formats: {
88
- "24x24": {
89
- height: number;
90
- width: number;
91
- };
92
- "32x32": {
93
- height: number;
94
- width: number;
95
- };
96
- "16x16": {
97
- height: number;
98
- width: number;
99
- };
100
- };
101
- readonly sourcePath: string;
102
- readonly baseUrl: string;
103
- render(): JSX.Element;
104
- context: unknown;
105
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
106
- className?: string;
107
- size: "24x24" | "32x32" | "16x16";
108
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
109
- forceUpdate(callback?: () => void): void;
110
- readonly props: Readonly<{
111
- className?: string;
112
- size: "24x24" | "32x32" | "16x16";
113
- }>;
114
- state: Readonly<{}>;
115
- refs: {
116
- [key: string]: import("react").ReactInstance;
117
- };
118
- componentDidMount?(): void;
119
- shouldComponentUpdate?(nextProps: Readonly<{
120
- className?: string;
121
- size: "24x24" | "32x32" | "16x16";
122
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
123
- componentWillUnmount?(): void;
124
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
125
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
126
- className?: string;
127
- size: "24x24" | "32x32" | "16x16";
128
- }>, prevState: Readonly<{}>): any;
129
- componentDidUpdate?(prevProps: Readonly<{
130
- className?: string;
131
- size: "24x24" | "32x32" | "16x16";
132
- }>, prevState: Readonly<{}>, snapshot?: any): void;
133
- componentWillMount?(): void;
134
- UNSAFE_componentWillMount?(): void;
135
- componentWillReceiveProps?(nextProps: Readonly<{
136
- className?: string;
137
- size: "24x24" | "32x32" | "16x16";
138
- }>, nextContext: any): void;
139
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
140
- className?: string;
141
- size: "24x24" | "32x32" | "16x16";
142
- }>, nextContext: any): void;
143
- componentWillUpdate?(nextProps: Readonly<{
144
- className?: string;
145
- size: "24x24" | "32x32" | "16x16";
146
- }>, nextState: Readonly<{}>, nextContext: any): void;
147
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
148
- className?: string;
149
- size: "24x24" | "32x32" | "16x16";
150
- }>, nextState: Readonly<{}>, nextContext: any): void;
151
- };
152
- contextType?: import("react").Context<any>;
153
- };
154
- export declare class BraveIcon extends BraveIcon_base {
155
- }
1
+ import { type Iconic } from '../../../Iconic';
2
+ export declare const BraveIcon: Iconic;
156
3
  export default BraveIcon;
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BraveIcon = void 0;
4
- const BrowserIconComponent_1 = require("../BrowserIconComponent");
5
- class BraveIcon extends (0, BrowserIconComponent_1.BrowserIconComponent)({
6
- alt: 'Brave Browser',
4
+ const Iconic_1 = require("../../../Iconic");
5
+ exports.BraveIcon = (0, Iconic_1.createIconic)({
7
6
  iconName: 'brave',
8
- resolutions: ['24x24', '32x32', '16x16']
9
- }) {
10
- }
11
- exports.BraveIcon = BraveIcon;
12
- exports.default = BraveIcon;
7
+ alt: 'Brave Browser',
8
+ sourcePath: 'icons/browsers/brave/brave.svg'
9
+ });
10
+ exports.default = exports.BraveIcon;
@@ -1,148 +1,3 @@
1
- /// <reference types="react" />
2
- declare const ArbitrumIcon_base: {
3
- new (props: {
4
- className?: string;
5
- size: "24x24" | "32x32";
6
- } | Readonly<{
7
- className?: string;
8
- size: "24x24" | "32x32";
9
- }>): {
10
- readonly iconName: string;
11
- readonly alt: string;
12
- readonly categoryName: string;
13
- readonly resolutions: readonly ["24x24", "32x32"];
14
- readonly formats: {
15
- "24x24": {
16
- height: number;
17
- width: number;
18
- };
19
- "32x32": {
20
- height: number;
21
- width: number;
22
- };
23
- };
24
- readonly sourcePath: string;
25
- readonly baseUrl: string;
26
- render(): JSX.Element;
27
- context: unknown;
28
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
29
- className?: string;
30
- size: "24x24" | "32x32";
31
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
32
- forceUpdate(callback?: () => void): void;
33
- readonly props: Readonly<{
34
- className?: string;
35
- size: "24x24" | "32x32";
36
- }>;
37
- state: Readonly<{}>;
38
- refs: {
39
- [key: string]: import("react").ReactInstance;
40
- };
41
- componentDidMount?(): void;
42
- shouldComponentUpdate?(nextProps: Readonly<{
43
- className?: string;
44
- size: "24x24" | "32x32";
45
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
46
- componentWillUnmount?(): void;
47
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
48
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
49
- className?: string;
50
- size: "24x24" | "32x32";
51
- }>, prevState: Readonly<{}>): any;
52
- componentDidUpdate?(prevProps: Readonly<{
53
- className?: string;
54
- size: "24x24" | "32x32";
55
- }>, prevState: Readonly<{}>, snapshot?: any): void;
56
- componentWillMount?(): void;
57
- UNSAFE_componentWillMount?(): void;
58
- componentWillReceiveProps?(nextProps: Readonly<{
59
- className?: string;
60
- size: "24x24" | "32x32";
61
- }>, nextContext: any): void;
62
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
63
- className?: string;
64
- size: "24x24" | "32x32";
65
- }>, nextContext: any): void;
66
- componentWillUpdate?(nextProps: Readonly<{
67
- className?: string;
68
- size: "24x24" | "32x32";
69
- }>, nextState: Readonly<{}>, nextContext: any): void;
70
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
71
- className?: string;
72
- size: "24x24" | "32x32";
73
- }>, nextState: Readonly<{}>, nextContext: any): void;
74
- };
75
- new (props: {
76
- className?: string;
77
- size: "24x24" | "32x32";
78
- }, context: any): {
79
- readonly iconName: string;
80
- readonly alt: string;
81
- readonly categoryName: string;
82
- readonly resolutions: readonly ["24x24", "32x32"];
83
- readonly formats: {
84
- "24x24": {
85
- height: number;
86
- width: number;
87
- };
88
- "32x32": {
89
- height: number;
90
- width: number;
91
- };
92
- };
93
- readonly sourcePath: string;
94
- readonly baseUrl: string;
95
- render(): JSX.Element;
96
- context: unknown;
97
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
98
- className?: string;
99
- size: "24x24" | "32x32";
100
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
101
- forceUpdate(callback?: () => void): void;
102
- readonly props: Readonly<{
103
- className?: string;
104
- size: "24x24" | "32x32";
105
- }>;
106
- state: Readonly<{}>;
107
- refs: {
108
- [key: string]: import("react").ReactInstance;
109
- };
110
- componentDidMount?(): void;
111
- shouldComponentUpdate?(nextProps: Readonly<{
112
- className?: string;
113
- size: "24x24" | "32x32";
114
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
115
- componentWillUnmount?(): void;
116
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
117
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
118
- className?: string;
119
- size: "24x24" | "32x32";
120
- }>, prevState: Readonly<{}>): any;
121
- componentDidUpdate?(prevProps: Readonly<{
122
- className?: string;
123
- size: "24x24" | "32x32";
124
- }>, prevState: Readonly<{}>, snapshot?: any): void;
125
- componentWillMount?(): void;
126
- UNSAFE_componentWillMount?(): void;
127
- componentWillReceiveProps?(nextProps: Readonly<{
128
- className?: string;
129
- size: "24x24" | "32x32";
130
- }>, nextContext: any): void;
131
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
132
- className?: string;
133
- size: "24x24" | "32x32";
134
- }>, nextContext: any): void;
135
- componentWillUpdate?(nextProps: Readonly<{
136
- className?: string;
137
- size: "24x24" | "32x32";
138
- }>, nextState: Readonly<{}>, nextContext: any): void;
139
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
140
- className?: string;
141
- size: "24x24" | "32x32";
142
- }>, nextState: Readonly<{}>, nextContext: any): void;
143
- };
144
- contextType?: import("react").Context<any>;
145
- };
146
- export declare class ArbitrumIcon extends ArbitrumIcon_base {
147
- }
1
+ import { type Iconic } from '../../../Iconic';
2
+ export declare const ArbitrumIcon: Iconic;
148
3
  export default ArbitrumIcon;
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ArbitrumIcon = void 0;
4
- const ChainIconComponent_1 = require("../ChainIconComponent");
5
- class ArbitrumIcon extends (0, ChainIconComponent_1.ChainIconComponent)({
6
- alt: 'Arbitrum Browser',
4
+ const Iconic_1 = require("../../../Iconic");
5
+ exports.ArbitrumIcon = (0, Iconic_1.createIconic)({
7
6
  iconName: 'arbitrum',
8
- resolutions: ['24x24', '32x32']
9
- }) {
10
- }
11
- exports.ArbitrumIcon = ArbitrumIcon;
12
- exports.default = ArbitrumIcon;
7
+ alt: 'Arbitrum Chain',
8
+ sourcePath: 'icons/chains/arbitrum/arbitrum.svg'
9
+ });
10
+ exports.default = exports.ArbitrumIcon;
@@ -1 +1,2 @@
1
1
  export * from './icons';
2
+ export * from './Iconic';
package/dist/src/index.js CHANGED
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./icons"), exports);
18
+ __exportStar(require("./Iconic"), exports);
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@dynamic-labs/iconic",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "A library of icons used by Dynamic Lab's SDK, served via CDN",
5
- "main": "src/index.js",
5
+ "main": "dist/src/index.js",
6
6
  "scripts": {
7
- "build": "rimraf dist build && tsc && ts-node ./scripts/build-icons.ts",
7
+ "build": "rimraf dist build && tsc",
8
8
  "test": "jest",
9
9
  "lint": "eslint .",
10
10
  "lint:fix": "eslint --fix",
@@ -27,7 +27,7 @@
27
27
  "@types/jest": "^29.4.0",
28
28
  "@types/node": "^18.13.0",
29
29
  "@types/react": "^18.0.27",
30
- "@types/sharp": "^0.31.1",
30
+ "@types/svgo": "^3.0.0",
31
31
  "@typescript-eslint/eslint-plugin": "^5.0.0",
32
32
  "eslint": "^8.0.1",
33
33
  "eslint-config-prettier": "^8.6.0",
@@ -37,14 +37,13 @@
37
37
  "eslint-plugin-prettier": "^4.2.1",
38
38
  "eslint-plugin-promise": "^6.0.0",
39
39
  "eslint-plugin-react": "^7.32.2",
40
- "fs-extra": "^11.1.0",
41
40
  "jest": "^29.4.2",
42
41
  "jest-environment-jsdom": "^29.4.2",
43
42
  "prettier": "^2.8.4",
44
43
  "react": "^18.0.0",
45
44
  "react-dom": "^18.0.0",
46
45
  "rimraf": "^4.1.2",
47
- "sharp": "^0.31.3",
46
+ "svgo": "^3.0.2",
48
47
  "ts-jest": "^29.0.5",
49
48
  "ts-node": "^10.9.1",
50
49
  "typescript": "*"
@@ -53,9 +52,8 @@
53
52
  "react": "^17.0.2 || ^18.0.0"
54
53
  },
55
54
  "exports": {
56
- ".": "./dist/index.js",
57
- "./package.json": "./package.json",
58
- "./icons/*": "./src/icons/*.js"
55
+ ".": "./dist/src/index.js",
56
+ "./package.json": "./package.json"
59
57
  },
60
58
  "files": [
61
59
  "dist",
@@ -1,142 +0,0 @@
1
- /// <reference types="react" />
2
- type Resolutions = readonly string[];
3
- type UnionOfResolutions<T extends Resolutions> = T extends T ? T[number] : never;
4
- type Formats<T extends Resolutions> = {
5
- [key in UnionOfResolutions<T>]: {
6
- height: number;
7
- width: number;
8
- };
9
- };
10
- export declare const IconComponentKlass: (props: {
11
- categoryName: string;
12
- }) => <T extends Resolutions>(classProps: {
13
- resolutions: T;
14
- alt: string;
15
- iconName: string;
16
- }) => {
17
- new (props: {
18
- className?: string;
19
- size: UnionOfResolutions<T>;
20
- } | Readonly<{
21
- className?: string;
22
- size: UnionOfResolutions<T>;
23
- }>): {
24
- readonly iconName: string;
25
- readonly alt: string;
26
- readonly categoryName: string;
27
- readonly resolutions: T;
28
- readonly formats: Formats<T>;
29
- readonly sourcePath: string;
30
- readonly baseUrl: string;
31
- render(): JSX.Element;
32
- context: unknown;
33
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
34
- className?: string;
35
- size: UnionOfResolutions<T>;
36
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
37
- forceUpdate(callback?: () => void): void;
38
- readonly props: Readonly<{
39
- className?: string;
40
- size: UnionOfResolutions<T>;
41
- }>;
42
- state: Readonly<{}>;
43
- refs: {
44
- [key: string]: import("react").ReactInstance;
45
- };
46
- componentDidMount?(): void;
47
- shouldComponentUpdate?(nextProps: Readonly<{
48
- className?: string;
49
- size: UnionOfResolutions<T>;
50
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
51
- componentWillUnmount?(): void;
52
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
53
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
54
- className?: string;
55
- size: UnionOfResolutions<T>;
56
- }>, prevState: Readonly<{}>): any;
57
- componentDidUpdate?(prevProps: Readonly<{
58
- className?: string;
59
- size: UnionOfResolutions<T>;
60
- }>, prevState: Readonly<{}>, snapshot?: any): void;
61
- componentWillMount?(): void;
62
- UNSAFE_componentWillMount?(): void;
63
- componentWillReceiveProps?(nextProps: Readonly<{
64
- className?: string;
65
- size: UnionOfResolutions<T>;
66
- }>, nextContext: any): void;
67
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
68
- className?: string;
69
- size: UnionOfResolutions<T>;
70
- }>, nextContext: any): void;
71
- componentWillUpdate?(nextProps: Readonly<{
72
- className?: string;
73
- size: UnionOfResolutions<T>;
74
- }>, nextState: Readonly<{}>, nextContext: any): void;
75
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
76
- className?: string;
77
- size: UnionOfResolutions<T>;
78
- }>, nextState: Readonly<{}>, nextContext: any): void;
79
- };
80
- new (props: {
81
- className?: string;
82
- size: UnionOfResolutions<T>;
83
- }, context: any): {
84
- readonly iconName: string;
85
- readonly alt: string;
86
- readonly categoryName: string;
87
- readonly resolutions: T;
88
- readonly formats: Formats<T>;
89
- readonly sourcePath: string;
90
- readonly baseUrl: string;
91
- render(): JSX.Element;
92
- context: unknown;
93
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
94
- className?: string;
95
- size: UnionOfResolutions<T>;
96
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
97
- forceUpdate(callback?: () => void): void;
98
- readonly props: Readonly<{
99
- className?: string;
100
- size: UnionOfResolutions<T>;
101
- }>;
102
- state: Readonly<{}>;
103
- refs: {
104
- [key: string]: import("react").ReactInstance;
105
- };
106
- componentDidMount?(): void;
107
- shouldComponentUpdate?(nextProps: Readonly<{
108
- className?: string;
109
- size: UnionOfResolutions<T>;
110
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
111
- componentWillUnmount?(): void;
112
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
113
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
114
- className?: string;
115
- size: UnionOfResolutions<T>;
116
- }>, prevState: Readonly<{}>): any;
117
- componentDidUpdate?(prevProps: Readonly<{
118
- className?: string;
119
- size: UnionOfResolutions<T>;
120
- }>, prevState: Readonly<{}>, snapshot?: any): void;
121
- componentWillMount?(): void;
122
- UNSAFE_componentWillMount?(): void;
123
- componentWillReceiveProps?(nextProps: Readonly<{
124
- className?: string;
125
- size: UnionOfResolutions<T>;
126
- }>, nextContext: any): void;
127
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
128
- className?: string;
129
- size: UnionOfResolutions<T>;
130
- }>, nextContext: any): void;
131
- componentWillUpdate?(nextProps: Readonly<{
132
- className?: string;
133
- size: UnionOfResolutions<T>;
134
- }>, nextState: Readonly<{}>, nextContext: any): void;
135
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
136
- className?: string;
137
- size: UnionOfResolutions<T>;
138
- }>, nextState: Readonly<{}>, nextContext: any): void;
139
- };
140
- contextType?: import("react").Context<any>;
141
- };
142
- export {};
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IconComponentKlass = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const CDN_BASE_URL = 'https://iconic.dynamic-static-assets.com';
7
- class IconComponent extends react_1.Component {
8
- get formats() {
9
- const formats = Object.create({});
10
- this.resolutions.forEach((resolution) => {
11
- const [width, height] = resolution.split('x').map((x) => parseInt(x));
12
- formats[resolution] = { height, width };
13
- });
14
- return formats;
15
- }
16
- get sourcePath() {
17
- return `icons/${this.categoryName}/${this.iconName}`;
18
- }
19
- get baseUrl() {
20
- return `${CDN_BASE_URL}/${this.sourcePath}/${this.iconName}_${this.props.size}`;
21
- }
22
- render() {
23
- var _a, _b;
24
- const props = Object.assign(Object.assign({ alt: (_a = this.alt) !== null && _a !== void 0 ? _a : '' }, this.props), { iconName: this.iconName, height: this.formats[this.props.size].height, width: this.formats[this.props.size].height, size: this.props.size });
25
- return ((0, jsx_runtime_1.jsxs)("picture", Object.assign({ "data-testid": `${this.iconName}-icon` }, { children: [(0, jsx_runtime_1.jsx)("source", { type: "image/webp", srcSet: `${this.baseUrl}.webp` }), (0, jsx_runtime_1.jsx)("img", { src: `${this.baseUrl}.png`, alt: (_b = props.alt) !== null && _b !== void 0 ? _b : '', width: props.width, height: props.height, className: props.className })] })));
26
- }
27
- }
28
- const IconComponentKlass = (props) => {
29
- return (classProps) => {
30
- return class extends IconComponent {
31
- constructor() {
32
- super(...arguments);
33
- this.iconName = classProps.iconName;
34
- this.alt = classProps.alt;
35
- this.categoryName = props.categoryName;
36
- this.resolutions = classProps.resolutions;
37
- }
38
- };
39
- };
40
- };
41
- exports.IconComponentKlass = IconComponentKlass;
@@ -1,137 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const BrowserIconComponent: <T extends readonly string[]>(classProps: {
3
- resolutions: T;
4
- alt: string;
5
- iconName: string;
6
- }) => {
7
- new (props: {
8
- className?: string;
9
- size: T extends T ? T[number] : never;
10
- } | Readonly<{
11
- className?: string;
12
- size: T extends T ? T[number] : never;
13
- }>): {
14
- readonly iconName: string;
15
- readonly alt: string;
16
- readonly categoryName: string;
17
- readonly resolutions: T;
18
- readonly formats: { [key in T extends T ? T[number] : never]: {
19
- height: number;
20
- width: number;
21
- }; };
22
- readonly sourcePath: string;
23
- readonly baseUrl: string;
24
- render(): JSX.Element;
25
- context: unknown;
26
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
27
- className?: string;
28
- size: T extends T ? T[number] : never;
29
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
30
- forceUpdate(callback?: () => void): void;
31
- readonly props: Readonly<{
32
- className?: string;
33
- size: T extends T ? T[number] : never;
34
- }>;
35
- state: Readonly<{}>;
36
- refs: {
37
- [key: string]: import("react").ReactInstance;
38
- };
39
- componentDidMount?(): void;
40
- shouldComponentUpdate?(nextProps: Readonly<{
41
- className?: string;
42
- size: T extends T ? T[number] : never;
43
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
44
- componentWillUnmount?(): void;
45
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
46
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
47
- className?: string;
48
- size: T extends T ? T[number] : never;
49
- }>, prevState: Readonly<{}>): any;
50
- componentDidUpdate?(prevProps: Readonly<{
51
- className?: string;
52
- size: T extends T ? T[number] : never;
53
- }>, prevState: Readonly<{}>, snapshot?: any): void;
54
- componentWillMount?(): void;
55
- UNSAFE_componentWillMount?(): void;
56
- componentWillReceiveProps?(nextProps: Readonly<{
57
- className?: string;
58
- size: T extends T ? T[number] : never;
59
- }>, nextContext: any): void;
60
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
61
- className?: string;
62
- size: T extends T ? T[number] : never;
63
- }>, nextContext: any): void;
64
- componentWillUpdate?(nextProps: Readonly<{
65
- className?: string;
66
- size: T extends T ? T[number] : never;
67
- }>, nextState: Readonly<{}>, nextContext: any): void;
68
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
69
- className?: string;
70
- size: T extends T ? T[number] : never;
71
- }>, nextState: Readonly<{}>, nextContext: any): void;
72
- };
73
- new (props: {
74
- className?: string;
75
- size: T extends T ? T[number] : never;
76
- }, context: any): {
77
- readonly iconName: string;
78
- readonly alt: string;
79
- readonly categoryName: string;
80
- readonly resolutions: T;
81
- readonly formats: { [key in T extends T ? T[number] : never]: {
82
- height: number;
83
- width: number;
84
- }; };
85
- readonly sourcePath: string;
86
- readonly baseUrl: string;
87
- render(): JSX.Element;
88
- context: unknown;
89
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
90
- className?: string;
91
- size: T extends T ? T[number] : never;
92
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
93
- forceUpdate(callback?: () => void): void;
94
- readonly props: Readonly<{
95
- className?: string;
96
- size: T extends T ? T[number] : never;
97
- }>;
98
- state: Readonly<{}>;
99
- refs: {
100
- [key: string]: import("react").ReactInstance;
101
- };
102
- componentDidMount?(): void;
103
- shouldComponentUpdate?(nextProps: Readonly<{
104
- className?: string;
105
- size: T extends T ? T[number] : never;
106
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
107
- componentWillUnmount?(): void;
108
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
109
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
110
- className?: string;
111
- size: T extends T ? T[number] : never;
112
- }>, prevState: Readonly<{}>): any;
113
- componentDidUpdate?(prevProps: Readonly<{
114
- className?: string;
115
- size: T extends T ? T[number] : never;
116
- }>, prevState: Readonly<{}>, snapshot?: any): void;
117
- componentWillMount?(): void;
118
- UNSAFE_componentWillMount?(): void;
119
- componentWillReceiveProps?(nextProps: Readonly<{
120
- className?: string;
121
- size: T extends T ? T[number] : never;
122
- }>, nextContext: any): void;
123
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
124
- className?: string;
125
- size: T extends T ? T[number] : never;
126
- }>, nextContext: any): void;
127
- componentWillUpdate?(nextProps: Readonly<{
128
- className?: string;
129
- size: T extends T ? T[number] : never;
130
- }>, nextState: Readonly<{}>, nextContext: any): void;
131
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
132
- className?: string;
133
- size: T extends T ? T[number] : never;
134
- }>, nextState: Readonly<{}>, nextContext: any): void;
135
- };
136
- contextType?: import("react").Context<any>;
137
- };
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BrowserIconComponent = void 0;
4
- const IconComponent_1 = require("../../IconComponent");
5
- exports.BrowserIconComponent = (0, IconComponent_1.IconComponentKlass)({
6
- categoryName: 'browsers'
7
- });
@@ -1,137 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const ChainIconComponent: <T extends readonly string[]>(classProps: {
3
- resolutions: T;
4
- alt: string;
5
- iconName: string;
6
- }) => {
7
- new (props: {
8
- className?: string;
9
- size: T extends T ? T[number] : never;
10
- } | Readonly<{
11
- className?: string;
12
- size: T extends T ? T[number] : never;
13
- }>): {
14
- readonly iconName: string;
15
- readonly alt: string;
16
- readonly categoryName: string;
17
- readonly resolutions: T;
18
- readonly formats: { [key in T extends T ? T[number] : never]: {
19
- height: number;
20
- width: number;
21
- }; };
22
- readonly sourcePath: string;
23
- readonly baseUrl: string;
24
- render(): JSX.Element;
25
- context: unknown;
26
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
27
- className?: string;
28
- size: T extends T ? T[number] : never;
29
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
30
- forceUpdate(callback?: () => void): void;
31
- readonly props: Readonly<{
32
- className?: string;
33
- size: T extends T ? T[number] : never;
34
- }>;
35
- state: Readonly<{}>;
36
- refs: {
37
- [key: string]: import("react").ReactInstance;
38
- };
39
- componentDidMount?(): void;
40
- shouldComponentUpdate?(nextProps: Readonly<{
41
- className?: string;
42
- size: T extends T ? T[number] : never;
43
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
44
- componentWillUnmount?(): void;
45
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
46
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
47
- className?: string;
48
- size: T extends T ? T[number] : never;
49
- }>, prevState: Readonly<{}>): any;
50
- componentDidUpdate?(prevProps: Readonly<{
51
- className?: string;
52
- size: T extends T ? T[number] : never;
53
- }>, prevState: Readonly<{}>, snapshot?: any): void;
54
- componentWillMount?(): void;
55
- UNSAFE_componentWillMount?(): void;
56
- componentWillReceiveProps?(nextProps: Readonly<{
57
- className?: string;
58
- size: T extends T ? T[number] : never;
59
- }>, nextContext: any): void;
60
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
61
- className?: string;
62
- size: T extends T ? T[number] : never;
63
- }>, nextContext: any): void;
64
- componentWillUpdate?(nextProps: Readonly<{
65
- className?: string;
66
- size: T extends T ? T[number] : never;
67
- }>, nextState: Readonly<{}>, nextContext: any): void;
68
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
69
- className?: string;
70
- size: T extends T ? T[number] : never;
71
- }>, nextState: Readonly<{}>, nextContext: any): void;
72
- };
73
- new (props: {
74
- className?: string;
75
- size: T extends T ? T[number] : never;
76
- }, context: any): {
77
- readonly iconName: string;
78
- readonly alt: string;
79
- readonly categoryName: string;
80
- readonly resolutions: T;
81
- readonly formats: { [key in T extends T ? T[number] : never]: {
82
- height: number;
83
- width: number;
84
- }; };
85
- readonly sourcePath: string;
86
- readonly baseUrl: string;
87
- render(): JSX.Element;
88
- context: unknown;
89
- setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
90
- className?: string;
91
- size: T extends T ? T[number] : never;
92
- }>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
93
- forceUpdate(callback?: () => void): void;
94
- readonly props: Readonly<{
95
- className?: string;
96
- size: T extends T ? T[number] : never;
97
- }>;
98
- state: Readonly<{}>;
99
- refs: {
100
- [key: string]: import("react").ReactInstance;
101
- };
102
- componentDidMount?(): void;
103
- shouldComponentUpdate?(nextProps: Readonly<{
104
- className?: string;
105
- size: T extends T ? T[number] : never;
106
- }>, nextState: Readonly<{}>, nextContext: any): boolean;
107
- componentWillUnmount?(): void;
108
- componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
109
- getSnapshotBeforeUpdate?(prevProps: Readonly<{
110
- className?: string;
111
- size: T extends T ? T[number] : never;
112
- }>, prevState: Readonly<{}>): any;
113
- componentDidUpdate?(prevProps: Readonly<{
114
- className?: string;
115
- size: T extends T ? T[number] : never;
116
- }>, prevState: Readonly<{}>, snapshot?: any): void;
117
- componentWillMount?(): void;
118
- UNSAFE_componentWillMount?(): void;
119
- componentWillReceiveProps?(nextProps: Readonly<{
120
- className?: string;
121
- size: T extends T ? T[number] : never;
122
- }>, nextContext: any): void;
123
- UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{
124
- className?: string;
125
- size: T extends T ? T[number] : never;
126
- }>, nextContext: any): void;
127
- componentWillUpdate?(nextProps: Readonly<{
128
- className?: string;
129
- size: T extends T ? T[number] : never;
130
- }>, nextState: Readonly<{}>, nextContext: any): void;
131
- UNSAFE_componentWillUpdate?(nextProps: Readonly<{
132
- className?: string;
133
- size: T extends T ? T[number] : never;
134
- }>, nextState: Readonly<{}>, nextContext: any): void;
135
- };
136
- contextType?: import("react").Context<any>;
137
- };
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChainIconComponent = void 0;
4
- const IconComponent_1 = require("../../IconComponent");
5
- exports.ChainIconComponent = (0, IconComponent_1.IconComponentKlass)({
6
- categoryName: 'chains'
7
- });