@fluentui/react-components 9.7.4 → 9.8.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.json +964 -1
- package/CHANGELOG.md +110 -2
- package/dist/index.d.ts +24 -0
- package/dist/unstable.d.ts +51 -24
- package/lib/Concepts/Icons/ReactIconGrid.js +35 -44
- package/lib/Concepts/Icons/ReactIconGrid.js.map +1 -1
- package/lib/index.js +5 -4
- package/lib/index.js.map +1 -1
- package/lib/unstable/index.js +1 -2
- package/lib/unstable/index.js.map +1 -1
- package/lib-amd/index.js +25 -20
- package/lib-amd/index.js.map +1 -1
- package/lib-commonjs/Concepts/Icons/ReactIconGrid.js +35 -48
- package/lib-commonjs/Concepts/Icons/ReactIconGrid.js.map +1 -1
- package/lib-commonjs/index.js +152 -177
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/unstable/index.js +72 -78
- package/lib-commonjs/unstable/index.js.map +1 -1
- package/package.json +42 -42
- package/MIGRATION-NOTES.md +0 -407
- package/lib/AccessibilityScenarios/utils.js +0 -27
- package/lib/AccessibilityScenarios/utils.js.map +0 -1
- package/lib-commonjs/AccessibilityScenarios/utils.js +0 -46
- package/lib-commonjs/AccessibilityScenarios/utils.js.map +0 -1
|
@@ -3,69 +3,60 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const React = /*#__PURE__*/require("react");
|
|
7
|
+
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
10
8
|
const ReactIcons = /*#__PURE__*/require("@fluentui/react-icons");
|
|
11
|
-
|
|
12
9
|
const react_input_1 = /*#__PURE__*/require("@fluentui/react-input");
|
|
13
|
-
|
|
14
10
|
const react_1 = /*#__PURE__*/require("@griffel/react");
|
|
15
|
-
|
|
16
11
|
const useStyles = /*#__PURE__*/react_1.__styles({
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
12
|
+
grid: {
|
|
13
|
+
mc9l5x: "f13qh94s",
|
|
14
|
+
Budl1dq: "f103s1qi",
|
|
15
|
+
w08cwm: "fz44487",
|
|
16
|
+
De3pzq: "f1vbpgwy",
|
|
17
|
+
Bqyf3fh: "f1y7pwzt",
|
|
18
|
+
tuaewz: "fkjsrz3",
|
|
19
|
+
js62xs: "f1v4pbv1",
|
|
20
|
+
ge08ax: "f10n702m",
|
|
21
|
+
vwmem1: "fukf1g8",
|
|
22
|
+
pq1t01: "f1ke9dqw",
|
|
23
|
+
Bspu8ag: ["ft83mph", "fduese8"],
|
|
24
|
+
B83reyd: "ffztlgx",
|
|
25
|
+
d2aa3c: ["fduese8", "ft83mph"],
|
|
26
|
+
Bo0llhl: "f1ad31ox",
|
|
27
|
+
Bfpbev4: "f1pcllc0",
|
|
28
|
+
Bs90se3: "fdkswtx",
|
|
29
|
+
B83tkto: "f1yxgqk0",
|
|
30
|
+
pxe6pr: "fg04g75",
|
|
31
|
+
Beqvepd: "fvrpp50",
|
|
32
|
+
Bq5m64l: ["f1xqymmk", "f1mqnmtg"],
|
|
33
|
+
B0xcf35: "f12h2kxz",
|
|
34
|
+
B9c2vit: ["f1mqnmtg", "f1xqymmk"]
|
|
40
35
|
},
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
searchBox: {
|
|
37
|
+
De3pzq: "f1vbpgwy",
|
|
38
|
+
B2u0y6b: "f1ogbl2p",
|
|
39
|
+
jrapky: "f1dl2k97"
|
|
45
40
|
},
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
41
|
+
radio: {
|
|
42
|
+
De3pzq: "f1vbpgwy",
|
|
43
|
+
Be2twd7: "fnsq08h"
|
|
49
44
|
}
|
|
50
45
|
}, {
|
|
51
|
-
|
|
46
|
+
d: [".f13qh94s{display:grid;}", ".f103s1qi{grid-template-columns:auto auto auto auto;}", ".fz44487{grid-gap:10px;}", ".f1vbpgwy{background-color:#F7F7F7;}", ".f1y7pwzt>div{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".fkjsrz3>div{background-color:#FFFFFF;}", ".f1v4pbv1>div{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f10n702m>div{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}", ".fukf1g8>div{-webkit-box-pack:space-around;-ms-flex-pack:space-around;-webkit-justify-content:space-around;justify-content:space-around;}", ".f1ke9dqw>div{padding-top:8px;}", ".ft83mph>div{padding-right:8px;}", ".fduese8>div{padding-left:8px;}", ".ffztlgx>div{padding-bottom:8px;}", ".f1ad31ox>div{overflow-x:hidden;}", ".f1pcllc0>div{overflow-y:hidden;}", ".fdkswtx>div>code{font-size:8px;}", ".f1yxgqk0>div>code{display:inline-block;}", ".fg04g75>div>code{height:auto;}", ".fvrpp50>div>code{padding-top:0px 8px;}", ".f1xqymmk>div>code{padding-right:0px 8px;}", ".f1mqnmtg>div>code{padding-left:0px 8px;}", ".f12h2kxz>div>code{padding-bottom:0px 8px;}", ".f1ogbl2p{max-width:320px;}", ".f1dl2k97{margin-bottom:10px;}", ".fnsq08h{font-size:11px;}"]
|
|
52
47
|
});
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
const reactIcons = /*#__PURE__*/Object.keys(ReactIcons)
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
55
50
|
.map(iconName => ReactIcons[iconName]).filter(icon => !!icon && !!icon.displayName);
|
|
56
|
-
|
|
57
51
|
const ReactIconGrid = () => {
|
|
58
52
|
const [search, setSearch] = React.useState('');
|
|
59
53
|
const [size, setSize] = React.useState(24);
|
|
60
54
|
const styles = useStyles();
|
|
61
|
-
|
|
62
55
|
const _onSearchQueryChanged = ev => {
|
|
63
56
|
setSearch(ev ? ev.currentTarget.value : '');
|
|
64
57
|
};
|
|
65
|
-
|
|
66
58
|
const _filterBySize = ev => {
|
|
67
59
|
const newSize = ev ? ev.currentTarget.value : '';
|
|
68
|
-
|
|
69
60
|
if (newSize === 'All') {
|
|
70
61
|
setSize('');
|
|
71
62
|
} else if (newSize === 'Unsized') {
|
|
@@ -74,17 +65,14 @@ const ReactIconGrid = () => {
|
|
|
74
65
|
setSize(newSize);
|
|
75
66
|
}
|
|
76
67
|
};
|
|
77
|
-
|
|
78
68
|
const _renderIcon = Icon => {
|
|
79
69
|
return React.createElement("div", {
|
|
80
70
|
key: Icon.displayName,
|
|
81
71
|
"aria-label": Icon.displayName
|
|
82
72
|
}, React.createElement(Icon, null), React.createElement("br", null), React.createElement("code", null, Icon.displayName));
|
|
83
73
|
};
|
|
84
|
-
|
|
85
74
|
const filteredIcons = React.useMemo(() => reactIcons.filter(icon => {
|
|
86
75
|
var _a, _b;
|
|
87
|
-
|
|
88
76
|
return size === 'Unsized' ? icon.displayName && !/\d/.test(icon.displayName.toLowerCase()) : ((_a = icon.displayName) === null || _a === void 0 ? void 0 : _a.toLowerCase().indexOf(search.toLowerCase())) !== -1 && ((_b = icon.displayName) === null || _b === void 0 ? void 0 : _b.indexOf(String(size))) !== -1;
|
|
89
77
|
}), [search, size]);
|
|
90
78
|
return React.createElement("div", null, React.createElement(react_input_1.Input, {
|
|
@@ -109,6 +97,5 @@ const ReactIconGrid = () => {
|
|
|
109
97
|
className: styles.grid
|
|
110
98
|
}, filteredIcons.map(_renderIcon)));
|
|
111
99
|
};
|
|
112
|
-
|
|
113
100
|
exports.default = ReactIconGrid;
|
|
114
101
|
//# sourceMappingURL=ReactIconGrid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"mappings":"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","names":["useStyles","react_1","reactIcons","Object","keys","ReactIcons","map","iconName","filter","icon","displayName","ReactIconGrid","search","setSearch","React","useState","size","setSize","styles","_onSearchQueryChanged","ev","currentTarget","value","_filterBySize","newSize","_renderIcon","Icon","key","filteredIcons","useMemo","test","toLowerCase","indexOf","String","react_input_1","type","placeholder","onChange","className","searchBox","option","id","defaultChecked","name","htmlFor","radio","grid","exports"],"sourceRoot":"../src/","sources":["packages/react-components/react-components/src/Concepts/Icons/ReactIconGrid.tsx"],"sourcesContent":["import * as React from 'react';\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport { FluentIconsProps } from '@fluentui/react-icons';\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as ReactIcons from '@fluentui/react-icons';\nimport { Input } from '@fluentui/react-input';\nimport { makeStyles, shorthands } from '@griffel/react';\n\nconst useStyles = makeStyles({\n grid: {\n display: 'grid',\n gridTemplateColumns: 'auto auto auto auto',\n gridGap: '10px',\n backgroundColor: '#F7F7F7',\n\n '> div': {\n alignItems: 'center',\n backgroundColor: '#FFFFFF',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-around',\n ...shorthands.padding('8px'),\n ...shorthands.overflow('hidden'),\n\n '> code': {\n fontSize: '8px',\n display: 'inline-block',\n height: 'auto',\n ...shorthands.padding('0px 8px'),\n },\n },\n },\n\n searchBox: {\n backgroundColor: '#F7F7F7',\n maxWidth: '320px',\n marginBottom: '10px',\n },\n\n radio: {\n backgroundColor: '#F7F7F7',\n fontSize: '11px',\n },\n});\n\nconst reactIcons: React.FC<ReactIcons.FluentIconsProps>[] = Object.keys(ReactIcons)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .map(iconName => (ReactIcons as any)[iconName])\n .filter(icon => !!icon && !!icon.displayName);\n\nconst ReactIconGrid = () => {\n const [search, setSearch] = React.useState('');\n const [size, setSize] = React.useState<string | number>(24);\n const styles = useStyles();\n\n const _onSearchQueryChanged = (ev?: React.FormEvent<HTMLInputElement>) => {\n setSearch(ev ? ev.currentTarget.value : '');\n };\n\n const _filterBySize = (ev?: React.FormEvent<HTMLElement | HTMLInputElement>) => {\n const newSize = ev ? (ev.currentTarget as HTMLInputElement).value : '';\n if (newSize === 'All') {\n setSize('');\n } else if (newSize === 'Unsized') {\n setSize('Unsized');\n } else {\n setSize(newSize);\n }\n };\n\n const _renderIcon = (Icon: React.FC<FluentIconsProps>): JSX.Element => {\n return (\n <div key={Icon.displayName} aria-label={Icon.displayName}>\n <Icon />\n <br />\n <code>{Icon.displayName}</code>\n </div>\n );\n };\n\n const filteredIcons = React.useMemo(\n () =>\n reactIcons.filter(icon =>\n size === 'Unsized'\n ? icon.displayName! && !/\\d/.test(icon.displayName.toLowerCase())\n : icon.displayName?.toLowerCase().indexOf(search.toLowerCase()) !== -1 &&\n icon.displayName?.indexOf(String(size)) !== -1,\n ),\n [search, size],\n );\n\n return (\n <div>\n <Input\n type=\"search\"\n placeholder=\"Search icons\"\n value={search}\n aria-label=\"search\"\n // eslint-disable-next-line react/jsx-no-bind\n onChange={_onSearchQueryChanged}\n className={styles.searchBox}\n />\n {[16, 20, 24, 28, 32, 48, 'Unsized', 'All'].map(option => (\n <>\n <input\n id={`option-${option}`}\n defaultChecked={option === 24}\n type=\"radio\"\n value={option}\n name=\"size\"\n onChange={_filterBySize}\n />\n <label htmlFor={`option-${option}`} className={styles.radio}>\n {option}\n </label>\n </>\n ))}\n <div className={styles.grid}>{filteredIcons.map(_renderIcon)}</div>\n </div>\n );\n};\n\nexport default ReactIconGrid;\n"]}
|