@assembly-js/design-system 3.1.1 → 3.1.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.
- package/dist/esm/components/Icon.js +38 -0
- package/dist/esm/components/IconPicker/IconGrid.js +201 -0
- package/dist/esm/components/IconPicker/IconPicker.js +254 -0
- package/dist/esm/components/IconPicker/__tests__/searchIcons.test.js +55 -0
- package/dist/esm/components/IconPicker/dsPickerIcons.js +18 -0
- package/dist/esm/components/IconPicker/icons.generated.js +3 -0
- package/dist/esm/components/IconPicker/index.js +3 -0
- package/dist/esm/components/IconPicker/pickerIcons.js +20 -0
- package/dist/esm/components/IconPicker/searchIcons.js +122 -0
- package/dist/esm/icons/ChevronLeft.js +2 -2
- package/dist/esm/icons/Details.js +20 -0
- package/dist/esm/icons/iconToFaMap.js +309 -0
- package/dist/esm/icons/index.js +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/types/components/Avatar/Avatar.d.ts +4 -4
- package/dist/esm/types/components/Icon.d.ts +10 -1
- package/dist/esm/types/components/IconPicker/IconGrid.d.ts +13 -0
- package/dist/esm/types/components/IconPicker/IconPicker.d.ts +15 -0
- package/dist/esm/types/components/IconPicker/IconPicker.stories.d.ts +8 -0
- package/dist/esm/types/components/IconPicker/__tests__/searchIcons.test.d.ts +1 -0
- package/dist/esm/types/components/IconPicker/dsPickerIcons.d.ts +7 -0
- package/dist/esm/types/components/IconPicker/icons.generated.d.ts +9 -0
- package/dist/esm/types/components/IconPicker/index.d.ts +3 -0
- package/dist/esm/types/components/IconPicker/pickerIcons.d.ts +8 -0
- package/dist/esm/types/components/IconPicker/searchIcons.d.ts +2 -0
- package/dist/esm/types/components/Toast/Toast.d.ts +1 -1
- package/dist/esm/types/icons/Details.d.ts +3 -0
- package/dist/esm/types/icons/iconToFaMap.d.ts +8 -0
- package/dist/esm/types/icons/index.d.ts +1 -0
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/tsconfig.tsbuildinfo +1 -1
- package/dist/styles/main.css +1 -1
- package/dist/types/components/Avatar/Avatar.d.ts +4 -4
- package/dist/types/components/Icon.d.ts +10 -1
- package/dist/types/components/IconPicker/IconGrid.d.ts +13 -0
- package/dist/types/components/IconPicker/IconPicker.d.ts +15 -0
- package/dist/types/components/IconPicker/IconPicker.stories.d.ts +8 -0
- package/dist/types/components/IconPicker/__tests__/searchIcons.test.d.ts +1 -0
- package/dist/types/components/IconPicker/dsPickerIcons.d.ts +7 -0
- package/dist/types/components/IconPicker/icons.generated.d.ts +9 -0
- package/dist/types/components/IconPicker/index.d.ts +3 -0
- package/dist/types/components/IconPicker/pickerIcons.d.ts +8 -0
- package/dist/types/components/IconPicker/searchIcons.d.ts +2 -0
- package/dist/types/components/Toast/Toast.d.ts +1 -1
- package/dist/types/icons/Details.d.ts +3 -0
- package/dist/types/icons/iconToFaMap.d.ts +8 -0
- package/dist/types/icons/index.d.ts +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dist/umd/components/Icon.js +40 -4
- package/dist/umd/components/IconPicker/IconGrid.js +222 -0
- package/dist/umd/components/IconPicker/IconPicker.js +269 -0
- package/dist/umd/components/IconPicker/__tests__/searchIcons.test.js +70 -0
- package/dist/umd/components/IconPicker/dsPickerIcons.js +41 -0
- package/dist/umd/components/IconPicker/icons.generated.js +3 -0
- package/dist/umd/components/IconPicker/index.js +28 -0
- package/dist/umd/components/IconPicker/pickerIcons.js +38 -0
- package/dist/umd/components/IconPicker/searchIcons.js +141 -0
- package/dist/umd/icons/ChevronLeft.js +2 -2
- package/dist/umd/icons/Details.js +43 -0
- package/dist/umd/icons/iconToFaMap.js +329 -0
- package/dist/umd/icons/index.js +14 -4
- package/dist/umd/index.js +14 -4
- package/dist/umd/types/components/Avatar/Avatar.d.ts +4 -4
- package/dist/umd/types/components/Icon.d.ts +10 -1
- package/dist/umd/types/components/IconPicker/IconGrid.d.ts +13 -0
- package/dist/umd/types/components/IconPicker/IconPicker.d.ts +15 -0
- package/dist/umd/types/components/IconPicker/IconPicker.stories.d.ts +8 -0
- package/dist/umd/types/components/IconPicker/__tests__/searchIcons.test.d.ts +1 -0
- package/dist/umd/types/components/IconPicker/dsPickerIcons.d.ts +7 -0
- package/dist/umd/types/components/IconPicker/icons.generated.d.ts +9 -0
- package/dist/umd/types/components/IconPicker/index.d.ts +3 -0
- package/dist/umd/types/components/IconPicker/pickerIcons.d.ts +8 -0
- package/dist/umd/types/components/IconPicker/searchIcons.d.ts +2 -0
- package/dist/umd/types/components/Toast/Toast.d.ts +1 -1
- package/dist/umd/types/icons/Details.d.ts +3 -0
- package/dist/umd/types/icons/iconToFaMap.d.ts +8 -0
- package/dist/umd/types/icons/index.d.ts +1 -0
- package/dist/umd/types/index.d.ts +1 -0
- package/dist/umd/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -2
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// This file is generated by a script. Do not edit this file directly.
|
|
2
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
3
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
6
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
7
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
9
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
11
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
12
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
13
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
14
|
+
import { icons as allFaIcons } from "./icons.generated";
|
|
15
|
+
import { dsPickerIcons } from "./dsPickerIcons";
|
|
16
|
+
export var pickerIcons = [].concat(_toConsumableArray(dsPickerIcons), _toConsumableArray(allFaIcons.map(function (icon) {
|
|
17
|
+
return _objectSpread(_objectSpread({}, icon), {}, {
|
|
18
|
+
source: 'fa'
|
|
19
|
+
});
|
|
20
|
+
})));
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
// This file is generated by a script. Do not edit this file directly.
|
|
2
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
3
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
4
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
5
|
+
import { searchTermsMap } from "./icons.generated";
|
|
6
|
+
function createNode() {
|
|
7
|
+
return {
|
|
8
|
+
children: new Map(),
|
|
9
|
+
icons: new Set()
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
function insert(root, key, icon) {
|
|
13
|
+
var node = root;
|
|
14
|
+
var _iterator = _createForOfIteratorHelper(key),
|
|
15
|
+
_step;
|
|
16
|
+
try {
|
|
17
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
18
|
+
var _char = _step.value;
|
|
19
|
+
var child = node.children.get(_char);
|
|
20
|
+
if (!child) {
|
|
21
|
+
child = createNode();
|
|
22
|
+
node.children.set(_char, child);
|
|
23
|
+
}
|
|
24
|
+
node = child;
|
|
25
|
+
node.icons.add(icon);
|
|
26
|
+
}
|
|
27
|
+
} catch (err) {
|
|
28
|
+
_iterator.e(err);
|
|
29
|
+
} finally {
|
|
30
|
+
_iterator.f();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function lookup(root, prefix) {
|
|
34
|
+
var node = root;
|
|
35
|
+
var _iterator2 = _createForOfIteratorHelper(prefix),
|
|
36
|
+
_step2;
|
|
37
|
+
try {
|
|
38
|
+
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
39
|
+
var _char2 = _step2.value;
|
|
40
|
+
var child = node.children.get(_char2);
|
|
41
|
+
if (!child) return new Set();
|
|
42
|
+
node = child;
|
|
43
|
+
}
|
|
44
|
+
} catch (err) {
|
|
45
|
+
_iterator2.e(err);
|
|
46
|
+
} finally {
|
|
47
|
+
_iterator2.f();
|
|
48
|
+
}
|
|
49
|
+
return node.icons;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/** Split PascalCase into lowercase words: "GoogleDrive" → ["google", "drive"] */
|
|
53
|
+
function splitPascalCase(name) {
|
|
54
|
+
var parts = name.match(/[A-Z][a-z]*|[a-z]+|[A-Z]+(?=[A-Z][a-z]|\d|\b)/g);
|
|
55
|
+
if (!parts || parts.length <= 1) return [];
|
|
56
|
+
return parts.map(function (p) {
|
|
57
|
+
return p.toLowerCase();
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
function buildTrie(icons) {
|
|
61
|
+
var root = createNode();
|
|
62
|
+
var _iterator3 = _createForOfIteratorHelper(icons),
|
|
63
|
+
_step3;
|
|
64
|
+
try {
|
|
65
|
+
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
66
|
+
var icon = _step3.value;
|
|
67
|
+
insert(root, icon.name.toLowerCase(), icon);
|
|
68
|
+
var terms = searchTermsMap[icon.name];
|
|
69
|
+
if (terms) {
|
|
70
|
+
var _iterator4 = _createForOfIteratorHelper(terms),
|
|
71
|
+
_step4;
|
|
72
|
+
try {
|
|
73
|
+
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
74
|
+
var term = _step4.value;
|
|
75
|
+
insert(root, term.toLowerCase(), icon);
|
|
76
|
+
}
|
|
77
|
+
} catch (err) {
|
|
78
|
+
_iterator4.e(err);
|
|
79
|
+
} finally {
|
|
80
|
+
_iterator4.f();
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
if (icon.source === 'ds') {
|
|
84
|
+
var _iterator5 = _createForOfIteratorHelper(splitPascalCase(icon.name)),
|
|
85
|
+
_step5;
|
|
86
|
+
try {
|
|
87
|
+
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
88
|
+
var word = _step5.value;
|
|
89
|
+
insert(root, word, icon);
|
|
90
|
+
}
|
|
91
|
+
} catch (err) {
|
|
92
|
+
_iterator5.e(err);
|
|
93
|
+
} finally {
|
|
94
|
+
_iterator5.f();
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
} catch (err) {
|
|
99
|
+
_iterator3.e(err);
|
|
100
|
+
} finally {
|
|
101
|
+
_iterator3.f();
|
|
102
|
+
}
|
|
103
|
+
return root;
|
|
104
|
+
}
|
|
105
|
+
var cache = new WeakMap();
|
|
106
|
+
function getOrBuildTrie(icons) {
|
|
107
|
+
var trie = cache.get(icons);
|
|
108
|
+
if (!trie) {
|
|
109
|
+
trie = buildTrie(icons);
|
|
110
|
+
cache.set(icons, trie);
|
|
111
|
+
}
|
|
112
|
+
return trie;
|
|
113
|
+
}
|
|
114
|
+
export function searchIcons(query, icons) {
|
|
115
|
+
var q = query.trim().toLowerCase();
|
|
116
|
+
if (!q) return icons;
|
|
117
|
+
var trie = getOrBuildTrie(icons);
|
|
118
|
+
var matches = lookup(trie, q);
|
|
119
|
+
return icons.filter(function (icon) {
|
|
120
|
+
return matches.has(icon);
|
|
121
|
+
});
|
|
122
|
+
}
|
|
@@ -5,9 +5,9 @@ export var ChevronLeft = function ChevronLeft(props) {
|
|
|
5
5
|
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
6
6
|
xmlns: "http://www.w3.org/2000/svg",
|
|
7
7
|
fill: "none",
|
|
8
|
-
viewBox: "0 0 20
|
|
8
|
+
viewBox: "0 0 20 20"
|
|
9
9
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
10
10
|
fill: "currentColor",
|
|
11
|
-
d: "
|
|
11
|
+
d: "M4.293 9.336a.934.934 0 0 0 0 1.324l7.812 7.813a.937.937 0 0 0 1.324-1.324L6.282 10l7.149-7.148a.937.937 0 0 0-1.324-1.324z"
|
|
12
12
|
}));
|
|
13
13
|
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// This file is generated by a script. Do not edit this file directly.
|
|
2
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
export var Details = function Details(props) {
|
|
5
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
6
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
7
|
+
fill: "none",
|
|
8
|
+
viewBox: "0 0 20 20"
|
|
9
|
+
}, props), /*#__PURE__*/React.createElement("g", {
|
|
10
|
+
clipPath: "url(#details-a)"
|
|
11
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
12
|
+
fill: "currentColor",
|
|
13
|
+
d: "M5 1.875a.627.627 0 0 0-.625.625v15c0 .344.281.625.625.625h10a.627.627 0 0 0 .625-.625v-15A.627.627 0 0 0 15 1.875zM2.5 2.5C2.5 1.121 3.621 0 5 0h10c1.379 0 2.5 1.121 2.5 2.5v15c0 1.379-1.121 2.5-2.5 2.5H5a2.5 2.5 0 0 1-2.5-2.5zM7.188 5h5.625c.519 0 .937.418.937.938 0 .519-.418.937-.937.937H7.187a.935.935 0 0 1-.937-.937c0-.52.418-.938.938-.938m0 3.75h5.625c.519 0 .937.418.937.938 0 .519-.418.937-.937.937H7.187a.935.935 0 0 1-.937-.937c0-.52.418-.938.938-.938m0 3.75h1.875c.519 0 .937.418.937.938 0 .519-.418.937-.937.937H7.187a.935.935 0 0 1-.937-.937c0-.52.418-.938.938-.938"
|
|
14
|
+
})), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
|
|
15
|
+
id: "details-a"
|
|
16
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
17
|
+
fill: "currentColor",
|
|
18
|
+
d: "M0 0h20v20H0z"
|
|
19
|
+
}))));
|
|
20
|
+
};
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
// This file is generated by a script. Do not edit this file directly.
|
|
2
|
+
/**
|
|
3
|
+
* Maps webapp module icon names to their FontAwesome equivalents.
|
|
4
|
+
*
|
|
5
|
+
* • Webapp module icons are keyed by their component name (e.g. "HomeIcon")
|
|
6
|
+
* • Values are FA icon names as they appear in the IconPicker
|
|
7
|
+
*/
|
|
8
|
+
export var iconToFaMap = {
|
|
9
|
+
// ──────────────────────────────────────────────
|
|
10
|
+
// Webapp module icons
|
|
11
|
+
// ──────────────────────────────────────────────
|
|
12
|
+
|
|
13
|
+
// Accessibility & People
|
|
14
|
+
AccessibilityIcon: 'wheelchair-move',
|
|
15
|
+
BodyIcon: 'person',
|
|
16
|
+
FemaleIcon: 'venus',
|
|
17
|
+
MaleIcon: 'mars',
|
|
18
|
+
MaleFemaleIcon: 'mars-and-venus',
|
|
19
|
+
ManIcon: 'person',
|
|
20
|
+
WomanIcon: 'person-dress',
|
|
21
|
+
TransgenderIcon: 'transgender',
|
|
22
|
+
HappyIcon: 'face-smile',
|
|
23
|
+
SadIcon: 'face-frown',
|
|
24
|
+
// Travel & Transport
|
|
25
|
+
AirplaneIcon: 'plane',
|
|
26
|
+
BicycleIcon: 'bicycle',
|
|
27
|
+
BoatIcon: 'sailboat',
|
|
28
|
+
BusIcon: 'bus',
|
|
29
|
+
CarIcon: 'car',
|
|
30
|
+
CarSportIcon: 'car-side',
|
|
31
|
+
SubwayIcon: 'train-subway',
|
|
32
|
+
TrainIcon: 'train-subway',
|
|
33
|
+
WalkIcon: 'person-walking',
|
|
34
|
+
FootstepsIcon: 'shoe-prints',
|
|
35
|
+
NavigateIcon: 'location-arrow',
|
|
36
|
+
// Time & Calendar
|
|
37
|
+
AlarmIcon: 'alarm-clock',
|
|
38
|
+
CalendarIcon: 'calendar',
|
|
39
|
+
CalendarClearIcon: 'calendar-xmark',
|
|
40
|
+
CalendarNumberIcon: 'calendar-days',
|
|
41
|
+
HourglassIcon: 'hourglass',
|
|
42
|
+
TimeIcon: 'clock',
|
|
43
|
+
TimerIcon: 'timer',
|
|
44
|
+
TodayIcon: 'calendar-check',
|
|
45
|
+
StopwatchIcon: 'stopwatch',
|
|
46
|
+
WatchIcon: 'watch',
|
|
47
|
+
// Music & Media
|
|
48
|
+
AlbumsIcon: 'record-vinyl',
|
|
49
|
+
DiscIcon: 'compact-disc',
|
|
50
|
+
FilmIcon: 'film',
|
|
51
|
+
MusicalNoteIcon: 'music-note',
|
|
52
|
+
MusicalNotesIcon: 'music',
|
|
53
|
+
RadioIcon: 'radio',
|
|
54
|
+
RadioButtonOnIcon: 'circle-dot',
|
|
55
|
+
VideocamIcon: 'video',
|
|
56
|
+
// Sports & Fitness
|
|
57
|
+
AmericanFootballIcon: 'football',
|
|
58
|
+
FootballIcon: 'football',
|
|
59
|
+
BaseballIcon: 'baseball',
|
|
60
|
+
BasketballIcon: 'basketball',
|
|
61
|
+
BowlingBallIcon: 'bowling-ball',
|
|
62
|
+
GolfIcon: 'golf-ball-tee',
|
|
63
|
+
TennisballIcon: 'tennis-ball',
|
|
64
|
+
BarbellIcon: 'dumbbell',
|
|
65
|
+
FitnessIcon: 'heart-pulse',
|
|
66
|
+
// Charts & Analytics
|
|
67
|
+
AnalyticsIcon: 'chart-line',
|
|
68
|
+
BarChartIcon: 'chart-bar',
|
|
69
|
+
PieChartIcon: 'chart-pie',
|
|
70
|
+
StatsChartIcon: 'chart-mixed',
|
|
71
|
+
TrendingDownIcon: 'chart-line-down',
|
|
72
|
+
TrendingUpIcon: 'chart-line-up',
|
|
73
|
+
PulseIcon: 'wave-pulse',
|
|
74
|
+
SpeedometerIcon: 'gauge',
|
|
75
|
+
PodiumIcon: 'podium',
|
|
76
|
+
// UI & Layout
|
|
77
|
+
ApertureIcon: 'aperture',
|
|
78
|
+
AppsIcon: 'grid-2',
|
|
79
|
+
GridIcon: 'grip-vertical',
|
|
80
|
+
LayersIcon: 'layer-group',
|
|
81
|
+
OptionsIcon: 'sliders',
|
|
82
|
+
ToggleIcon: 'toggle-on',
|
|
83
|
+
EllipseIcon: 'circle',
|
|
84
|
+
SquareIcon: 'square',
|
|
85
|
+
TriangleIcon: 'triangle-exclamation',
|
|
86
|
+
ShapesIcon: 'shapes',
|
|
87
|
+
// Shopping & Commerce
|
|
88
|
+
BagIcon: 'bag-shopping',
|
|
89
|
+
BagAddIcon: 'bag-shopping-plus',
|
|
90
|
+
BagCheckIcon: 'bag-shopping',
|
|
91
|
+
BagHandleIcon: 'bag-shopping',
|
|
92
|
+
BagRemoveIcon: 'bag-shopping-minus',
|
|
93
|
+
BasketIcon: 'basket-shopping',
|
|
94
|
+
CartIcon: 'cart-shopping',
|
|
95
|
+
CardIcon: 'credit-card',
|
|
96
|
+
CashIcon: 'money-bill',
|
|
97
|
+
PricetagIcon: 'tag',
|
|
98
|
+
PricetagsIcon: 'tags',
|
|
99
|
+
ReceiptIcon: 'receipt',
|
|
100
|
+
StorefrontIcon: 'store',
|
|
101
|
+
WalletIcon: 'wallet',
|
|
102
|
+
// Communication
|
|
103
|
+
CallIcon: 'phone',
|
|
104
|
+
ChatboxEllipsesIcon: 'comment-dots',
|
|
105
|
+
ChatboxIcon: 'comment',
|
|
106
|
+
ChatbubbleEllipsesIcon: 'message-dots',
|
|
107
|
+
ChatbubbleIcon: 'message',
|
|
108
|
+
ChatbubblesIcon: 'comments',
|
|
109
|
+
MegaphoneIcon: 'bullhorn',
|
|
110
|
+
NotificationsIcon: 'bell',
|
|
111
|
+
PaperPlaneIcon: 'paper-plane',
|
|
112
|
+
// Weather & Nature
|
|
113
|
+
BalloonIcon: 'balloon',
|
|
114
|
+
BonfireIcon: 'fire',
|
|
115
|
+
CloudIcon: 'cloud',
|
|
116
|
+
CloudCircleIcon: 'cloud',
|
|
117
|
+
CloudyIcon: 'clouds',
|
|
118
|
+
CloudyNightIcon: 'cloud-moon',
|
|
119
|
+
FlameIcon: 'fire-flame-curved',
|
|
120
|
+
FlashIcon: 'bolt-lightning',
|
|
121
|
+
FlashOffIcon: 'bolt-slash',
|
|
122
|
+
FlowerIcon: 'flower',
|
|
123
|
+
LeafIcon: 'leaf',
|
|
124
|
+
MoonIcon: 'moon',
|
|
125
|
+
PartlySunnyIcon: 'cloud-sun',
|
|
126
|
+
RainyIcon: 'cloud-rain',
|
|
127
|
+
SnowIcon: 'snowflake',
|
|
128
|
+
SunnyIcon: 'sun',
|
|
129
|
+
ThunderstormIcon: 'cloud-bolt',
|
|
130
|
+
UmbrellaIcon: 'umbrella',
|
|
131
|
+
WaterIcon: 'water',
|
|
132
|
+
RoseIcon: 'seedling',
|
|
133
|
+
// Food & Drink
|
|
134
|
+
BeerIcon: 'beer-mug-empty',
|
|
135
|
+
CalculatorIcon: 'calculator',
|
|
136
|
+
CafeIcon: 'mug-hot',
|
|
137
|
+
FastFoodIcon: 'burger',
|
|
138
|
+
IceCreamIcon: 'ice-cream',
|
|
139
|
+
NutritionIcon: 'apple-whole',
|
|
140
|
+
PintIcon: 'glass-citrus',
|
|
141
|
+
PizzaIcon: 'pizza-slice',
|
|
142
|
+
RestaurantIcon: 'utensils',
|
|
143
|
+
WineIcon: 'wine-glass',
|
|
144
|
+
EggIcon: 'egg',
|
|
145
|
+
FishIcon: 'fish',
|
|
146
|
+
// Medical & Health
|
|
147
|
+
BandageIcon: 'bandage',
|
|
148
|
+
MedkitIcon: 'suitcase-medical',
|
|
149
|
+
MedicalIcon: 'kit-medical',
|
|
150
|
+
ThermometerIcon: 'temperature-half',
|
|
151
|
+
EarthIcon: 'earth-americas',
|
|
152
|
+
EarIcon: 'ear',
|
|
153
|
+
// Science & Tech
|
|
154
|
+
BeakerIcon: 'flask',
|
|
155
|
+
FlaskIcon: 'flask-vial',
|
|
156
|
+
NuclearIcon: 'atom',
|
|
157
|
+
PlanetIcon: 'globe',
|
|
158
|
+
TelescopeIcon: 'telescope',
|
|
159
|
+
PrismIcon: 'chart-pyramid',
|
|
160
|
+
HardwareChipIcon: 'microchip',
|
|
161
|
+
QrCodeIcon: 'qrcode',
|
|
162
|
+
BarcodeIcon: 'barcode',
|
|
163
|
+
TerminalIcon: 'terminal',
|
|
164
|
+
// Files & Documents
|
|
165
|
+
ClipboardIcon: 'clipboard',
|
|
166
|
+
DocumentIcon: 'file',
|
|
167
|
+
DocumentTextIcon: 'file-lines',
|
|
168
|
+
DocumentsIcon: 'files',
|
|
169
|
+
BookIcon: 'book',
|
|
170
|
+
BookmarksIcon: 'bookmark',
|
|
171
|
+
NewspaperIcon: 'newspaper',
|
|
172
|
+
ReaderIcon: 'book-open',
|
|
173
|
+
NotificationClipboardIcon: 'clipboard-check',
|
|
174
|
+
// Folders & Storage
|
|
175
|
+
FolderIcon: 'folder',
|
|
176
|
+
FolderOpenIcon: 'folder-open',
|
|
177
|
+
FileTrayIcon: 'inbox',
|
|
178
|
+
FileTrayFullIcon: 'inbox-full',
|
|
179
|
+
FileTrayStackedIcon: 'inboxes',
|
|
180
|
+
ServerIcon: 'server',
|
|
181
|
+
SaveIcon: 'floppy-disk',
|
|
182
|
+
// Camera & Image
|
|
183
|
+
CameraIcon: 'camera',
|
|
184
|
+
CameraReverseIcon: 'camera-rotate',
|
|
185
|
+
ImageIcon: 'image',
|
|
186
|
+
ImagesIcon: 'images',
|
|
187
|
+
ColorFillIcon: 'fill-drip',
|
|
188
|
+
ColorFilterIcon: 'swatchbook',
|
|
189
|
+
ColorPaletteIcon: 'palette',
|
|
190
|
+
ColorWandIcon: 'wand-magic-sparkles',
|
|
191
|
+
EyedropIcon: 'eye-dropper',
|
|
192
|
+
// Home & Building
|
|
193
|
+
HomeIcon: 'house',
|
|
194
|
+
BusinessIcon: 'building',
|
|
195
|
+
BedIcon: 'bed',
|
|
196
|
+
SchoolIcon: 'graduation-cap',
|
|
197
|
+
// Devices
|
|
198
|
+
DesktopIcon: 'desktop',
|
|
199
|
+
LaptopIcon: 'laptop',
|
|
200
|
+
PhoneLandscapeIcon: 'mobile-screen-button',
|
|
201
|
+
PhonePortraitIcon: 'mobile',
|
|
202
|
+
TabletLandscapeIcon: 'tablet-screen-button',
|
|
203
|
+
TabletPortraitIcon: 'tablet',
|
|
204
|
+
TvIcon: 'tv',
|
|
205
|
+
HeadsetIcon: 'headset',
|
|
206
|
+
CellularIcon: 'signal',
|
|
207
|
+
// Tools & Construction
|
|
208
|
+
BuildIcon: 'wrench',
|
|
209
|
+
ConstructIcon: 'helmet-safety',
|
|
210
|
+
HammerIcon: 'hammer',
|
|
211
|
+
BrushIcon: 'paintbrush',
|
|
212
|
+
CutIcon: 'scissors',
|
|
213
|
+
PencilIcon: 'pencil',
|
|
214
|
+
FlashlightIcon: 'flashlight',
|
|
215
|
+
// Actions & Misc
|
|
216
|
+
AttachIcon: 'paperclip',
|
|
217
|
+
CompassIcon: 'compass',
|
|
218
|
+
ContractIcon: 'file-contract',
|
|
219
|
+
CubeIcon: 'cube',
|
|
220
|
+
DetailsIcon: 'circle-nodes',
|
|
221
|
+
DiceIcon: 'dice',
|
|
222
|
+
DisableIcon: 'ban',
|
|
223
|
+
ExtensionPuzzleIcon: 'puzzle-piece',
|
|
224
|
+
FingerPrintIcon: 'fingerprint',
|
|
225
|
+
FlagIcon: 'flag',
|
|
226
|
+
FunnelIcon: 'filter',
|
|
227
|
+
GameControllerIcon: 'gamepad-modern',
|
|
228
|
+
GiftIcon: 'gift',
|
|
229
|
+
GlassesIcon: 'glasses',
|
|
230
|
+
GlobeIcon: 'globe',
|
|
231
|
+
HandLeftIcon: 'hand-point-left',
|
|
232
|
+
HandRightIcon: 'hand-point-right',
|
|
233
|
+
HeartIcon: 'heart',
|
|
234
|
+
HeartCircleIcon: 'heart-circle-check',
|
|
235
|
+
HeartHalfIcon: 'heart-half',
|
|
236
|
+
HelpBuoyIcon: 'life-ring',
|
|
237
|
+
HelpCircleIcon: 'circle-question',
|
|
238
|
+
HelpIcon: 'circle-info',
|
|
239
|
+
IdCardIcon: 'id-card',
|
|
240
|
+
InfiniteIcon: 'infinity',
|
|
241
|
+
InformationCircleIcon: 'circle-info',
|
|
242
|
+
InformationIcon: 'circle-info',
|
|
243
|
+
InvertModeIcon: 'circle-half-stroke',
|
|
244
|
+
KeyIcon: 'key',
|
|
245
|
+
KeypadIcon: 'grid-2-plus',
|
|
246
|
+
LanguageIcon: 'language',
|
|
247
|
+
LibraryIcon: 'landmark-dome',
|
|
248
|
+
LinkIcon: 'link',
|
|
249
|
+
ListIcon: 'list',
|
|
250
|
+
ListCircleIcon: 'list-ul',
|
|
251
|
+
LocateIcon: 'crosshairs',
|
|
252
|
+
LocationIcon: 'location-dot',
|
|
253
|
+
LockClosedIcon: 'lock',
|
|
254
|
+
LockOpenIcon: 'lock-open',
|
|
255
|
+
MagnetIcon: 'magnet',
|
|
256
|
+
MapIcon: 'map',
|
|
257
|
+
MedalIcon: 'medal',
|
|
258
|
+
PinIcon: 'thumbtack',
|
|
259
|
+
PrintIcon: 'print',
|
|
260
|
+
RecordingIcon: 'circle-dot',
|
|
261
|
+
RibbonIcon: 'ribbon',
|
|
262
|
+
RocketIcon: 'rocket',
|
|
263
|
+
ScaleIcon: 'scale-balanced',
|
|
264
|
+
ShareSocialIcon: 'share-nodes',
|
|
265
|
+
ShieldIcon: 'shield',
|
|
266
|
+
ShieldCheckmarkIcon: 'shield-check',
|
|
267
|
+
ShieldHalfIcon: 'shield-halved',
|
|
268
|
+
ShirtIcon: 'shirt',
|
|
269
|
+
SparklesIcon: 'sparkles',
|
|
270
|
+
StarIcon: 'star',
|
|
271
|
+
StarHalfIcon: 'star-half',
|
|
272
|
+
ThumbsDownIcon: 'thumbs-down',
|
|
273
|
+
ThumbsUpIcon: 'thumbs-up',
|
|
274
|
+
TicketIcon: 'ticket',
|
|
275
|
+
TrailSignIcon: 'diamond-turn-right',
|
|
276
|
+
TrashIcon: 'trash',
|
|
277
|
+
TrashBinIcon: 'trash-can',
|
|
278
|
+
TrophyIcon: 'trophy',
|
|
279
|
+
WarningIcon: 'triangle-exclamation',
|
|
280
|
+
PawIcon: 'paw',
|
|
281
|
+
BulbIcon: 'lightbulb',
|
|
282
|
+
BrowsersIcon: 'window-restore',
|
|
283
|
+
BugIcon: 'bug',
|
|
284
|
+
BriefcaseIcon: 'briefcase',
|
|
285
|
+
EaselIcon: 'chalkboard',
|
|
286
|
+
TextIcon: 'font',
|
|
287
|
+
// Git
|
|
288
|
+
GitBranchIcon: 'code-branch',
|
|
289
|
+
GitCommitIcon: 'code-commit',
|
|
290
|
+
GitCompareIcon: 'code-compare',
|
|
291
|
+
GitMergeIcon: 'code-merge',
|
|
292
|
+
GitNetworkIcon: 'diagram-project',
|
|
293
|
+
GitPullRequestIcon: 'code-pull-request',
|
|
294
|
+
// Custom / App-specific (best-effort match)
|
|
295
|
+
AutomationsIcon: 'bolt-lightning',
|
|
296
|
+
PartnerAppsIcon: 'handshake',
|
|
297
|
+
// Default modules map
|
|
298
|
+
contracts: 'signature',
|
|
299
|
+
dashboard: 'gauge',
|
|
300
|
+
forms: 'clipboard',
|
|
301
|
+
knowledge: 'book-open',
|
|
302
|
+
payments: 'credit-card',
|
|
303
|
+
// sidebar nav icons map
|
|
304
|
+
NotificationIcon: 'bell',
|
|
305
|
+
BuildingIcon: 'building',
|
|
306
|
+
CustomizationIcon: 'palette',
|
|
307
|
+
PortalModulesIcon: 'list-ul',
|
|
308
|
+
MainSettingsIcon: 'gear'
|
|
309
|
+
};
|
package/dist/esm/icons/index.js
CHANGED
package/dist/esm/index.js
CHANGED
|
@@ -31,5 +31,6 @@ export * from "./components/Radio/Radio";
|
|
|
31
31
|
export * from "./components/Tooltip/Tooltip";
|
|
32
32
|
export * from "./components/Callout/Callout";
|
|
33
33
|
export * from "./components/Toolbar";
|
|
34
|
+
export * from "./components/IconPicker";
|
|
34
35
|
export * from "./components/UserCompanySelector/UserCompanySelector";
|
|
35
36
|
export {};
|
|
@@ -83,7 +83,7 @@ declare const Avatar: React.ForwardRefExoticComponent<({
|
|
|
83
83
|
"aria-colindextext"?: string | undefined;
|
|
84
84
|
"aria-colspan"?: number | undefined;
|
|
85
85
|
"aria-controls"?: string | undefined;
|
|
86
|
-
"aria-current"?: boolean | "time" | "true" | "false" | "
|
|
86
|
+
"aria-current"?: boolean | "time" | "true" | "false" | "page" | "date" | "location" | "step" | undefined;
|
|
87
87
|
"aria-describedby"?: string | undefined;
|
|
88
88
|
"aria-description"?: string | undefined;
|
|
89
89
|
"aria-details"?: string | undefined;
|
|
@@ -294,7 +294,7 @@ declare const Avatar: React.ForwardRefExoticComponent<({
|
|
|
294
294
|
fallbackColor?: string | undefined;
|
|
295
295
|
fallbackClassName?: string | undefined;
|
|
296
296
|
subAvatar?: Omit<AvatarProps, "size" | "subAvatar"> | undefined;
|
|
297
|
-
icon?:
|
|
297
|
+
icon?: IconType | undefined;
|
|
298
298
|
} | {
|
|
299
299
|
content?: string | undefined;
|
|
300
300
|
translate?: "yes" | "no" | undefined;
|
|
@@ -362,7 +362,7 @@ declare const Avatar: React.ForwardRefExoticComponent<({
|
|
|
362
362
|
"aria-colindextext"?: string | undefined;
|
|
363
363
|
"aria-colspan"?: number | undefined;
|
|
364
364
|
"aria-controls"?: string | undefined;
|
|
365
|
-
"aria-current"?: boolean | "time" | "true" | "false" | "
|
|
365
|
+
"aria-current"?: boolean | "time" | "true" | "false" | "page" | "date" | "location" | "step" | undefined;
|
|
366
366
|
"aria-describedby"?: string | undefined;
|
|
367
367
|
"aria-description"?: string | undefined;
|
|
368
368
|
"aria-details"?: string | undefined;
|
|
@@ -574,6 +574,6 @@ declare const Avatar: React.ForwardRefExoticComponent<({
|
|
|
574
574
|
fallbackColor?: string | undefined;
|
|
575
575
|
fallbackClassName?: string | undefined;
|
|
576
576
|
subAvatar?: Omit<AvatarProps, "size" | "subAvatar"> | undefined;
|
|
577
|
-
icon?:
|
|
577
|
+
icon?: IconType | undefined;
|
|
578
578
|
}) & React.RefAttributes<HTMLSpanElement>>;
|
|
579
579
|
export { Avatar };
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import type { SVGProps } from 'react';
|
|
2
2
|
import * as icons from '../icons';
|
|
3
|
-
|
|
3
|
+
import { type FAIconName } from './IconPicker/icons.generated';
|
|
4
|
+
export type IconType = keyof typeof icons | FAIconName;
|
|
5
|
+
/**
|
|
6
|
+
* Icon component that renders either a Font Awesome icon or a Design System icon.
|
|
7
|
+
* it checks if the icon name is in the Font Awesome icon set and renders the corresponding icon.
|
|
8
|
+
* if not, it falls back to the Design System icon set and renders the corresponding icon.
|
|
9
|
+
* @param icon - The name of the icon to render.
|
|
10
|
+
* @param props - The props to pass to the icon component.
|
|
11
|
+
* @returns The icon component.
|
|
12
|
+
*/
|
|
4
13
|
export declare const Icon: ({ icon, ...props }: {
|
|
5
14
|
icon: IconType;
|
|
6
15
|
} & SVGProps<SVGSVGElement>) => import("react").JSX.Element | null;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type PickerIcon } from './pickerIcons';
|
|
3
|
+
export interface IconGridHandle {
|
|
4
|
+
focusFirst: () => void;
|
|
5
|
+
resetFocus: () => void;
|
|
6
|
+
}
|
|
7
|
+
export interface IconGridProps {
|
|
8
|
+
icons: PickerIcon[];
|
|
9
|
+
onSelect: (icon: PickerIcon) => void;
|
|
10
|
+
selectedIcon?: string;
|
|
11
|
+
onEscapeFromGrid?: () => void;
|
|
12
|
+
}
|
|
13
|
+
export declare const IconGrid: React.ForwardRefExoticComponent<IconGridProps & React.RefAttributes<IconGridHandle>>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface IconPickerProps {
|
|
3
|
+
/** Currently selected FA icon name (controlled mode) */
|
|
4
|
+
value?: string;
|
|
5
|
+
/** Callback when an icon is selected — returns the FA icon name */
|
|
6
|
+
onChange?: (iconName: string) => void;
|
|
7
|
+
/** Default FA icon name (uncontrolled mode) */
|
|
8
|
+
defaultValue?: string;
|
|
9
|
+
/** Placeholder text when no icon is selected */
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
className?: string;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
}
|
|
14
|
+
declare const IconPicker: React.ForwardRefExoticComponent<IconPickerProps & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export { IconPicker };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import type { ComponentProps } from 'react';
|
|
3
|
+
import { IconPicker } from './IconPicker';
|
|
4
|
+
declare const meta: Meta<ComponentProps<typeof IconPicker>>;
|
|
5
|
+
export default meta;
|
|
6
|
+
type Story = StoryObj<typeof meta>;
|
|
7
|
+
export declare const Default: Story;
|
|
8
|
+
export declare const WithValue: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|