@react-fabric/core 1.0.0-beta.57 → 1.0.0-beta.59

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.
Files changed (85) hide show
  1. package/css/components/_icon.css +3 -3
  2. package/css/components/_stepper.css +86 -0
  3. package/css/components/index.css +1 -0
  4. package/dist/cjs/components/avatar/Avatar.js +1 -0
  5. package/dist/cjs/components/badge/Badge.js +2 -10
  6. package/dist/cjs/components/button/Button.js +4 -11
  7. package/dist/cjs/components/chip/Chip.js +5 -12
  8. package/dist/cjs/components/icon/Icon.js +28 -3
  9. package/dist/cjs/components/menu/MenuItem.js +5 -12
  10. package/dist/cjs/components/panel/Panel.js +4 -13
  11. package/dist/cjs/components/tabpanel/Tab.js +3 -12
  12. package/dist/cjs/core/aside/Aside.js +2 -11
  13. package/dist/cjs/core/headfoot/HeadFoot.js +4 -2
  14. package/dist/cjs/core/page/Page.js +4 -13
  15. package/dist/cjs/hooks/useStepper.js +75 -0
  16. package/dist/cjs/index.js +3 -0
  17. package/dist/cjs/overlays/alert/Alert.js +3 -1
  18. package/dist/cjs/overlays/flyout/Flyout.js +4 -11
  19. package/dist/cjs/overlays/message/Message.js +2 -0
  20. package/dist/cjs/overlays/modal/Modal.js +4 -11
  21. package/dist/cjs/overlays/toast/Toast.js +3 -1
  22. package/dist/cjs/types/icons.js +2 -1
  23. package/dist/esm/components/avatar/Avatar.js +1 -0
  24. package/dist/esm/components/badge/Badge.js +3 -11
  25. package/dist/esm/components/button/Button.js +6 -13
  26. package/dist/esm/components/chip/Chip.js +6 -13
  27. package/dist/esm/components/icon/Icon.js +30 -6
  28. package/dist/esm/components/menu/MenuItem.js +6 -13
  29. package/dist/esm/components/panel/Panel.js +5 -14
  30. package/dist/esm/components/tabpanel/Tab.js +4 -13
  31. package/dist/esm/core/aside/Aside.js +3 -12
  32. package/dist/esm/core/headfoot/HeadFoot.js +4 -2
  33. package/dist/esm/core/page/Page.js +5 -14
  34. package/dist/esm/hooks/useStepper.js +75 -0
  35. package/dist/esm/index.js +2 -1
  36. package/dist/esm/overlays/alert/Alert.js +3 -1
  37. package/dist/esm/overlays/flyout/Flyout.js +5 -12
  38. package/dist/esm/overlays/message/Message.js +2 -0
  39. package/dist/esm/overlays/modal/Modal.js +5 -12
  40. package/dist/esm/overlays/toast/Toast.js +3 -1
  41. package/dist/esm/types/icons.js +2 -1
  42. package/dist/types/components/badge/Badge.d.ts +8 -3
  43. package/dist/types/components/button/Button.d.ts +8 -3
  44. package/dist/types/components/chip/Chip.d.ts +8 -3
  45. package/dist/types/components/icon/Icon.d.ts +10 -4
  46. package/dist/types/components/index.d.ts +1 -1
  47. package/dist/types/components/menu/MenuItem.d.ts +1 -1
  48. package/dist/types/components/menu/types.d.ts +7 -2
  49. package/dist/types/components/panel/Panel.d.ts +8 -5
  50. package/dist/types/components/tabpanel/Tab.d.ts +8 -5
  51. package/dist/types/core/aside/Aside.d.ts +8 -5
  52. package/dist/types/core/page/Page.d.ts +8 -5
  53. package/dist/types/hooks/useStepper.d.ts +15 -0
  54. package/dist/types/index.d.ts +1 -0
  55. package/dist/types/overlays/alert/Alert.d.ts +15 -3
  56. package/dist/types/overlays/flyout/Flyout.d.ts +5 -5
  57. package/dist/types/overlays/message/Message.d.ts +15 -3
  58. package/dist/types/overlays/modal/Modal.d.ts +5 -5
  59. package/dist/types/overlays/toast/Toast.d.ts +15 -3
  60. package/dist/types/types/icons.d.ts +2 -1
  61. package/dist/types/types/index.d.ts +0 -18
  62. package/package.json +14 -14
  63. package/src/components/avatar/Avatar.tsx +1 -1
  64. package/src/components/badge/Badge.tsx +7 -13
  65. package/src/components/button/Button.tsx +10 -18
  66. package/src/components/chip/Chip.tsx +7 -11
  67. package/src/components/icon/Icon.tsx +43 -6
  68. package/src/components/index.ts +1 -1
  69. package/src/components/menu/MenuItem.tsx +4 -9
  70. package/src/components/menu/types.ts +6 -6
  71. package/src/components/panel/Panel.tsx +7 -13
  72. package/src/components/tabpanel/Tab.tsx +6 -17
  73. package/src/core/aside/Aside.tsx +7 -13
  74. package/src/core/headfoot/HeadFoot.tsx +2 -2
  75. package/src/core/page/Page.tsx +8 -23
  76. package/src/hooks/useStepper.tsx +68 -0
  77. package/src/index.ts +1 -0
  78. package/src/overlays/alert/Alert.tsx +24 -5
  79. package/src/overlays/flyout/Flyout.tsx +5 -21
  80. package/src/overlays/message/Message.tsx +18 -3
  81. package/src/overlays/modal/Modal.tsx +5 -21
  82. package/src/overlays/toast/Toast.tsx +23 -4
  83. package/src/types/global.d.ts +8 -0
  84. package/src/types/icons.ts +3 -1
  85. package/src/types/index.ts +0 -19
package/dist/cjs/index.js CHANGED
@@ -72,6 +72,7 @@ var useNavigator = require('./hooks/useNavigator.js');
72
72
  var useOverlayService = require('./hooks/useOverlayService.js');
73
73
  var useResize = require('./hooks/useResize.js');
74
74
  var useResizeObserver = require('./hooks/useResizeObserver.js');
75
+ var useStepper = require('./hooks/useStepper.js');
75
76
  var useStorage = require('./hooks/useStorage.js');
76
77
  var HotKey = require('./hotkeys/HotKey.js');
77
78
  var HotKeyLabel = require('./hotkeys/HotKeyLabel.js');
@@ -107,6 +108,7 @@ exports.DropdownDismiss = Dropdown.DropdownDismiss;
107
108
  exports.DropdownTool = DropdownTool.DropdownTool;
108
109
  exports.EmptyContent = EmptyContent.EmptyContent;
109
110
  exports.Icon = Icon.Icon;
111
+ exports.getIconProps = Icon.getIconProps;
110
112
  exports.Image = Media.Image;
111
113
  exports.Video = Media.Video;
112
114
  exports.ContextMenu = ContextMenu.ContextMenu;
@@ -159,6 +161,7 @@ exports.useNavigator = useNavigator.useNavigator;
159
161
  exports.useOverlayService = useOverlayService.useOverlayService;
160
162
  exports.useResize = useResize.useResize;
161
163
  exports.useResizeObserver = useResizeObserver.useResizeObserver;
164
+ exports.useStepper = useStepper.useStepper;
162
165
  exports.useLocalStorage = useStorage.useLocalStorage;
163
166
  exports.useSessionStorage = useStorage.useSessionStorage;
164
167
  exports.HotKey = HotKey.HotKey;
@@ -23,6 +23,7 @@ var Alert = function Alert(_ref) {
23
23
  _ref$color = _ref.color,
24
24
  color = _ref$color === void 0 ? "primary" : _ref$color,
25
25
  icon = _ref.icon,
26
+ iconSrc = _ref.iconSrc,
26
27
  rtlFlip = _ref.rtlFlip,
27
28
  actions = _ref.actions,
28
29
  onClose = _ref.onClose,
@@ -57,6 +58,7 @@ var Alert = function Alert(_ref) {
57
58
  var iconType = react.useMemo(function () {
58
59
  if (icon) return /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
59
60
  icon: icon,
61
+ iconSrc: iconSrc,
60
62
  size: "md",
61
63
  rtlFlip: rtlFlip,
62
64
  color: "".concat(color, "-600")
@@ -83,7 +85,7 @@ var Alert = function Alert(_ref) {
83
85
  color: "".concat(color, "-600")
84
86
  });
85
87
  }
86
- }, [color, type, icon]);
88
+ }, [color, type, icon, iconSrc, rtlFlip]);
87
89
  var handleClose = react.useCallback(function (ret) {
88
90
  refs.floating.current && (refs.floating.current.dataset.show = "false");
89
91
  setTimeout(function () {
@@ -13,15 +13,12 @@ var HotKeyWrapper = require('../../hotkeys/HotKeyWrapper.js');
13
13
  var icons = require('../../types/icons.js');
14
14
  var jsxRuntime = require('react/jsx-runtime');
15
15
 
16
- var _excluded = ["icon", "iconBg", "iconColor", "iconClassName", "rtlFlip", "title", "actions", "closeOnClick", "headerClassName", "onClose", "onBeforeClose", "children", "loading", "size", "width", "minWidth", "root", "hideMask", "align"];
16
+ var _excluded = ["icon", "iconClassName", "title", "actions", "closeOnClick", "headerClassName", "onClose", "onBeforeClose", "children", "loading", "size", "width", "minWidth", "root", "hideMask", "align"];
17
17
  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; }
18
18
  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; }
19
19
  var Flyout = function Flyout(_ref) {
20
20
  var icon = _ref.icon,
21
- iconBg = _ref.iconBg,
22
- iconColor = _ref.iconColor,
23
21
  iconClassName = _ref.iconClassName,
24
- rtlFlip = _ref.rtlFlip,
25
22
  title = _ref.title,
26
23
  actions = _ref.actions,
27
24
  closeOnClick = _ref.closeOnClick,
@@ -111,13 +108,9 @@ var Flyout = function Flyout(_ref) {
111
108
  flex: true,
112
109
  align: "center",
113
110
  className: classNames("fabric-flyoutHeader", headerClassName),
114
- children: [utilities.isString(icon) && /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
115
- icon: icon,
116
- bg: iconBg,
117
- color: iconColor,
118
- className: classNames(iconClassName, "p-1"),
119
- rtlFlip: rtlFlip
120
- }), /*#__PURE__*/react$1.isValidElement(icon) && icon, /*#__PURE__*/jsxRuntime.jsx("label", {
111
+ children: [utilities.isString(icon) && /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, _objectSpread({
112
+ className: classNames(iconClassName, "p-1")
113
+ }, Icon.getIconProps(icon))), /*#__PURE__*/react$1.isValidElement(icon) && icon, /*#__PURE__*/jsxRuntime.jsx("label", {
121
114
  className: "flex-1 truncate py-2 px-1",
122
115
  children: title
123
116
  }), actions, /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
@@ -35,6 +35,7 @@ var Message = function Message(_ref) {
35
35
  message = _ref.message,
36
36
  color = _ref.color,
37
37
  icon = _ref.icon,
38
+ iconSrc = _ref.iconSrc,
38
39
  rtlFlip = _ref.rtlFlip,
39
40
  actions = _ref.actions,
40
41
  onClose = _ref.onClose;
@@ -59,6 +60,7 @@ var Message = function Message(_ref) {
59
60
  ref: elRef,
60
61
  children: [icon && /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
61
62
  icon: icon,
63
+ iconSrc: iconSrc,
62
64
  size: "md",
63
65
  rtlFlip: rtlFlip
64
66
  }), title && /*#__PURE__*/jsxRuntime.jsx("div", {
@@ -13,15 +13,12 @@ var HotKeyWrapper = require('../../hotkeys/HotKeyWrapper.js');
13
13
  var icons = require('../../types/icons.js');
14
14
  var jsxRuntime = require('react/jsx-runtime');
15
15
 
16
- var _excluded = ["icon", "iconBg", "iconColor", "iconClassName", "rtlFlip", "title", "actions", "headerClassName", "onClose", "onBeforeClose", "children", "loading", "root", "size", "hideMask", "width", "height", "minHeight", "minWidth"];
16
+ var _excluded = ["icon", "iconClassName", "title", "actions", "headerClassName", "onClose", "onBeforeClose", "children", "loading", "root", "size", "hideMask", "width", "height", "minHeight", "minWidth"];
17
17
  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; }
18
18
  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; }
19
19
  var Modal = function Modal(_ref) {
20
20
  var icon = _ref.icon,
21
- iconBg = _ref.iconBg,
22
- iconColor = _ref.iconColor,
23
21
  iconClassName = _ref.iconClassName,
24
- rtlFlip = _ref.rtlFlip,
25
22
  title = _ref.title,
26
23
  actions = _ref.actions,
27
24
  headerClassName = _ref.headerClassName,
@@ -103,13 +100,9 @@ var Modal = function Modal(_ref) {
103
100
  flex: true,
104
101
  align: "center",
105
102
  className: classNames("fabric-modalHeader", headerClassName),
106
- children: [utilities.isString(icon) && /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
107
- icon: icon,
108
- bg: iconBg,
109
- color: iconColor,
110
- className: classNames(iconClassName, "p-1"),
111
- rtlFlip: rtlFlip
112
- }), /*#__PURE__*/react$1.isValidElement(icon) && icon, /*#__PURE__*/jsxRuntime.jsx("label", {
103
+ children: [utilities.isString(icon) && /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, _objectSpread({
104
+ className: classNames(iconClassName, "p-1")
105
+ }, Icon.getIconProps(icon))), /*#__PURE__*/react$1.isValidElement(icon) && icon, /*#__PURE__*/jsxRuntime.jsx("label", {
113
106
  className: "flex-1 truncate py-2 px-1",
114
107
  children: title
115
108
  }), actions, /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
@@ -40,6 +40,7 @@ var Toast = function Toast(_ref) {
40
40
  _ref$color = _ref.color,
41
41
  color = _ref$color === void 0 ? "primary" : _ref$color,
42
42
  icon = _ref.icon,
43
+ iconSrc = _ref.iconSrc,
43
44
  rtlFlip = _ref.rtlFlip,
44
45
  actions = _ref.actions,
45
46
  onClose = _ref.onClose,
@@ -52,6 +53,7 @@ var Toast = function Toast(_ref) {
52
53
  var iconType = react.useMemo(function () {
53
54
  if (icon) return /*#__PURE__*/jsxRuntime.jsx(Icon.Icon, {
54
55
  icon: icon,
56
+ iconSrc: iconSrc,
55
57
  size: "md",
56
58
  rtlFlip: rtlFlip,
57
59
  color: color + "-600"
@@ -78,7 +80,7 @@ var Toast = function Toast(_ref) {
78
80
  color: "".concat(color, "-600")
79
81
  });
80
82
  }
81
- }, [color, type, icon]);
83
+ }, [color, type, icon, iconSrc, rtlFlip]);
82
84
  var elRef = react.useRef(null);
83
85
  var handleClose = react.useCallback(function (ret) {
84
86
  elRef.current && (elRef.current.dataset.show = "false");
@@ -183,7 +183,7 @@ exports.CoreIcons = void 0;
183
183
  _CoreIcons.mediaAspect = "M19,12H17V15H14V17H19V12M7,9H10V7H5V12H7V9M21,3H3A2,2 0 0,0 1,5V19A2,2 0 0,0 3,21H21A2,2 0 0,0 23,19V5A2,2 0 0,0 21,3M21,19H3V5H21V19Z";
184
184
  _CoreIcons.mediaZoomer = "M15 0.004c-4.97 0-9 4.030-9 9 0 1.52 0.38 2.95 1.046 4.206l-6.258 6.256 0.005 0.005c-0.489 0.481-0.794 1.147-0.794 1.887 0 1.462 1.185 2.647 2.647 2.647 0.739 0 1.406-0.304 1.886-0.794l-0.002-0.001 6.256-6.255c1.257 0.668 2.689 1.050 4.213 1.050 4.97 0 9-4.030 9-9s-4.030-9-9-9zM3.596 22.273c-0.241 0.25-0.576 0.407-0.95 0.407-0.731 0-1.324-0.592-1.324-1.323 0-0.373 0.157-0.707 0.407-0.95l-0.007-0.006 6.050-6.050c0.529 0.713 1.159 1.343 1.87 1.874l-6.047 6.047zM15 16.505c-4.142 0-7.5-3.359-7.5-7.5s3.358-7.5 7.5-7.5c4.141 0 7.5 3.358 7.5 7.5s-3.359 7.5-7.5 7.5zM15 3.754c0.206 0 0.375 0.168 0.375 0.375s-0.169 0.375-0.375 0.375c-2.486 0-4.5 2.015-4.5 4.5 0 0.207-0.168 0.375-0.375 0.375s-0.375-0.168-0.375-0.375c0-2.9 2.35-5.25 5.25-5.25z";
185
185
  _CoreIcons.mediaOrient = "M7.34,6.41L0.86,12.9L7.35,19.38L13.84,12.9L7.34,6.41M3.69,12.9L7.35,9.24L11,12.9L7.34,16.56L3.69,12.9M19.36,6.64C17.61,4.88 15.3,4 13,4V0.76L8.76,5L13,9.24V6C14.79,6 16.58,6.68 17.95,8.05C20.68,10.78 20.68,15.22 17.95,17.95C16.58,19.32 14.79,20 13,20C12.03,20 11.06,19.79 10.16,19.39L8.67,20.88C10,21.62 11.5,22 13,22C15.3,22 17.61,21.12 19.36,19.36C22.88,15.85 22.88,10.15 19.36,6.64Z";
186
- _CoreIcons.mediaCrop = "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";
186
+ _CoreIcons.mediaCrop = "M13,17H17V13H19V17H23V19H19V23H17V19H13V17M11,17V19H9V17H11M7,17V19H5V17H7M19,9V11H17V9H19M19,5V7H17V5H19M15,5V7H13V5H15M11,5V7H9V5H11M7,5V7H5V5H7M7,13V15H5V13H7M7,9V11H5V9H7Z";
187
187
  _CoreIcons.mediaImage = "M19,19H5V5H19M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M13.96,12.29L11.21,15.83L9.25,13.47L6.5,17H17.5L13.96,12.29Z";
188
188
  _CoreIcons.mediaVideo = "M15,8V16H5V8H15M16,6H4A1,1 0 0,0 3,7V17A1,1 0 0,0 4,18H16A1,1 0 0,0 17,17V13.5L21,17.5V6.5L17,10.5V7A1,1 0 0,0 16,6Z";
189
189
  _CoreIcons.mediaAudio = "M17.3,11C17.3,14 14.76,16.1 12,16.1C9.24,16.1 6.7,14 6.7,11H5C5,14.41 7.72,17.23 11,17.72V21H13V17.72C16.28,17.23 19,14.41 19,11M10.8,4.9C10.8,4.24 11.34,3.7 12,3.7C12.66,3.7 13.2,4.24 13.2,4.9L13.19,11.1C13.19,11.76 12.66,12.3 12,12.3C11.34,12.3 10.8,11.76 10.8,11.1M12,14A3,3 0 0,0 15,11V5A3,3 0 0,0 12,2A3,3 0 0,0 9,5V11A3,3 0 0,0 12,14Z";
@@ -205,6 +205,7 @@ exports.CoreIcons = void 0;
205
205
  _CoreIcons.mediaVolume3 = "M14,3.23V5.29C16.89,6.15 19,8.83 19,12C19,15.17 16.89,17.84 14,18.7V20.77C18,19.86 21,16.28 21,12C21,7.72 18,4.14 14,3.23M16.5,12C16.5,10.23 15.5,8.71 14,7.97V16C15.5,15.29 16.5,13.76 16.5,12M3,9V15H7L12,20V4L7,9H3Z";
206
206
  _CoreIcons.mediaComment = "M9,22A1,1 0 0,1 8,21V18H4A2,2 0 0,1 2,16V4C2,2.89 2.9,2 4,2H20A2,2 0 0,1 22,4V16A2,2 0 0,1 20,18H13.9L10.2,21.71C10,21.9 9.75,22 9.5,22V22H9M10,16V19.08L13.08,16H20V4H4V16H10M6,7H18V9H6V7M6,11H15V13H6V11Z";
207
207
  _CoreIcons.mediaCommentAdd = "M9,22A1,1 0 0,1 8,21V18H4A2,2 0 0,1 2,16V4C2,2.89 2.9,2 4,2H20A2,2 0 0,1 22,4V16A2,2 0 0,1 20,18H13.9L10.2,21.71C10,21.9 9.75,22 9.5,22V22H9M10,16V19.08L13.08,16H20V4H4V16H10M11,6H13V9H16V11H13V14H11V11H8V9H11V6Z";
208
+ _CoreIcons.mediaCapture = "M12,10L11.06,12.06L9,13L11.06,13.94L12,16L12.94,13.94L15,13L12.94,12.06L12,10M20,5H16.83L15,3H9L7.17,5H4A2,2 0 0,0 2,7V19A2,2 0 0,0 4,21H20A2,2 0 0,0 22,19V7A2,2 0 0,0 20,5M20,19H4V7H8.05L8.64,6.35L9.88,5H14.12L15.36,6.35L15.95,7H20V19M12,8A5,5 0 0,0 7,13A5,5 0 0,0 12,18A5,5 0 0,0 17,13A5,5 0 0,0 12,8M12,16A3,3 0 0,1 9,13A3,3 0 0,1 12,10A3,3 0 0,1 15,13A3,3 0 0,1 12,16Z";
208
209
  _CoreIcons.mediaLightness = "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";
209
210
  _CoreIcons.mediaColor = "M19,11.5C19,11.5 17,13.67 17,15A2,2 0 0,0 19,17A2,2 0 0,0 21,15C21,13.67 19,11.5 19,11.5M5.21,10L10,5.21L14.79,10M16.56,8.94L7.62,0L6.21,1.41L8.59,3.79L3.44,8.94C2.85,9.5 2.85,10.47 3.44,11.06L8.94,16.56C9.23,16.85 9.62,17 10,17C10.38,17 10.77,16.85 11.06,16.56L16.56,11.06C17.15,10.47 17.15,9.5 16.56,8.94Z";
210
211
  _CoreIcons.mediaInvert = "M12,19.58V19.58C10.4,19.58 8.89,18.96 7.76,17.83C6.62,16.69 6,15.19 6,13.58C6,12 6.62,10.47 7.76,9.34L12,5.1M17.66,7.93L12,2.27V2.27L6.34,7.93C3.22,11.05 3.22,16.12 6.34,19.24C7.9,20.8 9.95,21.58 12,21.58C14.05,21.58 16.1,20.8 17.66,19.24C20.78,16.12 20.78,11.05 17.66,7.93Z";
@@ -119,6 +119,7 @@ var Avatar = function Avatar(_ref) {
119
119
  if (fallbackIcon) {
120
120
  return isSvgPath(fallbackIcon) ? /*#__PURE__*/jsx("svg", {
121
121
  viewBox: viewBox,
122
+ className: "p-[0.125em]",
122
123
  children: /*#__PURE__*/jsx("path", {
123
124
  fill: "currentColor",
124
125
  d: fallbackIcon.toString()
@@ -5,10 +5,10 @@ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProper
5
5
  import { isObject, isNil, isNumber, mergeRefs } from '@react-fabric/utilities';
6
6
  import classNames from 'classnames';
7
7
  import { isValidElement, useMemo, cloneElement } from 'react';
8
- import { Icon } from '../icon/Icon.js';
8
+ import { Icon, getIconProps } from '../icon/Icon.js';
9
9
  import { jsxs, jsx } from 'react/jsx-runtime';
10
10
 
11
- var _excluded = ["ref", "className", "value", "max", "ping", "block", "inline", "placement", "children", "forButton", "icon", "iconBg", "iconColor", "rtlFlip"];
11
+ var _excluded = ["ref", "className", "value", "max", "ping", "block", "inline", "placement", "children", "forButton", "icon"];
12
12
  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; }
13
13
  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; }
14
14
  /**
@@ -65,9 +65,6 @@ var Badge = function Badge(_ref) {
65
65
  _ref$forButton = _ref.forButton,
66
66
  forButton = _ref$forButton === void 0 ? false : _ref$forButton,
67
67
  icon = _ref.icon,
68
- iconBg = _ref.iconBg,
69
- iconColor = _ref.iconColor,
70
- rtlFlip = _ref.rtlFlip,
71
68
  rest = _objectWithoutProperties(_ref, _excluded);
72
69
  var label = useMemo(function () {
73
70
  if ( /*#__PURE__*/isValidElement(value)) {
@@ -99,12 +96,7 @@ var Badge = function Badge(_ref) {
99
96
  children: [label && /*#__PURE__*/jsx("span", {
100
97
  className: "p-1",
101
98
  children: label
102
- }), icon && /*#__PURE__*/jsx(Icon, {
103
- icon: icon,
104
- bg: iconBg,
105
- color: iconColor,
106
- rtlFlip: rtlFlip
107
- })]
99
+ }), icon && /*#__PURE__*/jsx(Icon, _objectSpread({}, getIconProps(icon)))]
108
100
  })]
109
101
  });
110
102
  };
@@ -3,7 +3,7 @@
3
3
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
4
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
5
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
6
- import { mergeRefs, isString, isNil } from '@react-fabric/utilities';
6
+ import { mergeRefs, isString, isObject, isNil } from '@react-fabric/utilities';
7
7
  import classNames from 'classnames';
8
8
  import { useRef, useState, useCallback, useEffect, useMemo, Fragment, isValidElement } from 'react';
9
9
  import { useEffectDebugger } from '../../hooks/useEffectDebugger.js';
@@ -14,9 +14,9 @@ import { jsxs, jsx } from 'react/jsx-runtime';
14
14
  import { getColor } from '../../utils/getColor.js';
15
15
  import { AnimationIndicator } from '../animations/Animations.js';
16
16
  import { getBadgeProps, Badge } from '../badge/Badge.js';
17
- import { Icon } from '../icon/Icon.js';
17
+ import { Icon, getIconProps } from '../icon/Icon.js';
18
18
 
19
- var _excluded = ["as", "ref", "children", "className", "active", "color", "icon", "iconBg", "iconColor", "iconAlign", "altIcon", "rtlFlip", "rounded", "size", "disabled", "loading", "variant", "badge", "fullWidth", "spinOnHover", "onClick", "actionMessage", "preventDefault", "stopPropagation", "type", "hotKey", "showActionDone", "showActionDoneEvent", "tabIndex", "data-ref"];
19
+ var _excluded = ["as", "ref", "children", "className", "active", "color", "icon", "iconAlign", "altIcon", "rounded", "size", "disabled", "loading", "variant", "badge", "fullWidth", "spinOnHover", "onClick", "actionMessage", "preventDefault", "stopPropagation", "type", "hotKey", "showActionDone", "showActionDoneEvent", "tabIndex", "data-ref"];
20
20
  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; }
21
21
  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; }
22
22
  /**
@@ -52,12 +52,9 @@ var Button = function Button(_ref) {
52
52
  _ref$color = _ref.color,
53
53
  color = _ref$color === void 0 ? "primary" : _ref$color,
54
54
  icon = _ref.icon,
55
- iconBg = _ref.iconBg,
56
- iconColor = _ref.iconColor,
57
55
  _ref$iconAlign = _ref.iconAlign,
58
56
  iconAlign = _ref$iconAlign === void 0 ? "start" : _ref$iconAlign,
59
57
  altIcon = _ref.altIcon,
60
- rtlFlip = _ref.rtlFlip,
61
58
  rounded = _ref.rounded,
62
59
  size = _ref.size,
63
60
  disabled = _ref.disabled,
@@ -162,19 +159,15 @@ var Button = function Button(_ref) {
162
159
  "data-active": active,
163
160
  "data-variant": variant
164
161
  }, aria), {}, {
165
- children: [icon && /*#__PURE__*/jsx(Icon, {
162
+ children: [icon && /*#__PURE__*/jsx(Icon, _objectSpread({
166
163
  className: "fabric-buttonIcon",
167
- icon: icon,
168
- bg: iconBg,
169
- color: iconColor,
170
- rtlFlip: rtlFlip,
171
164
  "data-align": iconAlign
172
- }), /*#__PURE__*/isValidElement(children) && /*#__PURE__*/jsx("div", {
165
+ }, getIconProps(icon))), /*#__PURE__*/isValidElement(children) && /*#__PURE__*/jsx("div", {
173
166
  className: "fabric-buttonChild",
174
167
  children: children
175
168
  }), isString(children) && /*#__PURE__*/jsx("label", {
176
169
  className: classNames("fabric-buttonLabel", "truncate"),
177
- "data-colored-icon": !!iconBg,
170
+ "data-colored-icon": isObject(icon) && "bg" in icon,
178
171
  children: children
179
172
  }), !isNil(badge) && /*#__PURE__*/jsx(Badge, _objectSpread({}, badgeProps)), hotKey && children && /*#__PURE__*/jsx(HotKeyLabel, {
180
173
  keyCombo: hotKey
@@ -8,9 +8,9 @@ import { useMemoDebugger } from '../../hooks/useEffectDebugger.js';
8
8
  import { jsxs, jsx } from 'react/jsx-runtime';
9
9
  import { getColor } from '../../utils/getColor.js';
10
10
  import '@react-fabric/utilities';
11
- import { Icon } from '../icon/Icon.js';
11
+ import { Icon, getIconProps } from '../icon/Icon.js';
12
12
 
13
- var _excluded = ["ref", "children", "className", "size", "color", "variant", "icon", "iconBg", "iconColor", "rtlFlip", "disabled", "onClick", "onIconClick", "onRemove", "rounded", "preventDefault", "stopPropagation", "as"];
13
+ var _excluded = ["ref", "children", "className", "size", "color", "variant", "icon", "disabled", "onClick", "onIconClick", "onRemove", "rounded", "preventDefault", "stopPropagation", "as"];
14
14
  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; }
15
15
  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; }
16
16
  var SizeMap = {
@@ -49,9 +49,6 @@ var Chip = function Chip(_ref) {
49
49
  color = _ref.color,
50
50
  variant = _ref.variant,
51
51
  icon = _ref.icon,
52
- iconBg = _ref.iconBg,
53
- iconColor = _ref.iconColor,
54
- rtlFlip = _ref.rtlFlip,
55
52
  disabled = _ref.disabled,
56
53
  onClick = _ref.onClick,
57
54
  onIconClick = _ref.onIconClick,
@@ -95,17 +92,13 @@ var Chip = function Chip(_ref) {
95
92
  "data-inner-clickable": !!onClick,
96
93
  onClick: disabled ? undefined : clickHandler
97
94
  }, aria), {}, {
98
- children: [icon && /*#__PURE__*/jsx(Icon, {
95
+ children: [icon && /*#__PURE__*/jsx(Icon, _objectSpread({
99
96
  "data-ref": "chipIcon",
100
97
  className: classNames("fabric-chipIcon", "m-1 flex-content"),
101
- icon: icon,
102
- bg: iconBg,
103
- onClick: onIconClick,
104
- color: iconColor,
105
- rtlFlip: rtlFlip
106
- }), children && /*#__PURE__*/jsx("label", {
98
+ onClick: onIconClick
99
+ }, getIconProps(icon))), children && /*#__PURE__*/jsx("label", {
107
100
  "data-ref": "chipLabel",
108
- className: classNames("fabric-chipLabel", "truncate"),
101
+ className: classNames("fabric-chipLabel", "truncate flex-1"),
109
102
  children: children
110
103
  }), onRemove && /*#__PURE__*/jsx("span", {
111
104
  role: "none",
@@ -1,16 +1,25 @@
1
1
  'use client';
2
2
 
3
3
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
4
5
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
5
6
  import { isSvgPath, isString } from '@react-fabric/utilities';
6
7
  import classNames from 'classnames';
7
- import { useMemo } from 'react';
8
- import { jsx } from 'react/jsx-runtime';
8
+ import { useState, useEffect, useMemo, isValidElement } from 'react';
9
+ import { jsx, jsxs } from 'react/jsx-runtime';
9
10
  import { getColor } from '../../utils/getColor.js';
10
11
 
11
- var _excluded = ["ref", "icon", "bg", "color", "size", "rtlFlip", "animate", "rounded", "disabled", "viewBox", "className", "onClick"];
12
+ var _excluded = ["ref", "icon", "iconSrc", "bg", "color", "size", "rtlFlip", "animate", "rounded", "disabled", "viewBox", "className", "onClick"];
12
13
  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; }
13
14
  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; }
15
+ var getIconProps = function getIconProps(props) {
16
+ if (typeof props === "string") {
17
+ return {
18
+ icon: props
19
+ };
20
+ }
21
+ return props;
22
+ };
14
23
  var SvgTextSize = ["", ".875em", ".525em", ".35em", ".25em"];
15
24
  var SizeMap = {
16
25
  xs: "0.625rem",
@@ -52,6 +61,7 @@ var SizeMap = {
52
61
  var Icon = function Icon(_ref) {
53
62
  var ref = _ref.ref,
54
63
  icon = _ref.icon,
64
+ iconSrc = _ref.iconSrc,
55
65
  bg = _ref.bg,
56
66
  color = _ref.color,
57
67
  _ref$size = _ref.size,
@@ -65,6 +75,14 @@ var Icon = function Icon(_ref) {
65
75
  className = _ref.className,
66
76
  _onClick = _ref.onClick,
67
77
  rest = _objectWithoutProperties(_ref, _excluded);
78
+ var _useState = useState(false),
79
+ _useState2 = _slicedToArray(_useState, 2),
80
+ imageFailed = _useState2[0],
81
+ setImageFailed = _useState2[1];
82
+ useEffect(function () {
83
+ setImageFailed(false);
84
+ }, [iconSrc]);
85
+
68
86
  /** ***************** style map *******************/
69
87
  var styles = useMemo(function () {
70
88
  var s = {};
@@ -90,6 +108,7 @@ var Icon = function Icon(_ref) {
90
108
 
91
109
  /** ***************** render icon *******************/
92
110
  var iconEl = useMemo(function () {
111
+ if ( /*#__PURE__*/isValidElement(icon)) return icon;
93
112
  if (!isString(icon)) {
94
113
  throw Error("Invalid icon expected string");
95
114
  }
@@ -116,7 +135,7 @@ var Icon = function Icon(_ref) {
116
135
  className: "".concat(icon)
117
136
  });
118
137
  }, [icon, isSvg, viewBox]);
119
- return /*#__PURE__*/jsx("dfn", _objectSpread(_objectSpread({
138
+ return /*#__PURE__*/jsxs("dfn", _objectSpread(_objectSpread({
120
139
  "data-ref": "icon",
121
140
  ref: ref
122
141
  }, rest), {}, {
@@ -131,8 +150,13 @@ var Icon = function Icon(_ref) {
131
150
  style: styles,
132
151
  "data-clickable": !!_onClick,
133
152
  "data-inner-clickable": !!_onClick,
134
- children: iconEl
153
+ children: [iconSrc && !imageFailed && /*#__PURE__*/jsx("img", {
154
+ src: iconSrc,
155
+ onError: function onError() {
156
+ return setImageFailed(true);
157
+ }
158
+ }), (!iconSrc || imageFailed) && iconEl]
135
159
  }));
136
160
  };
137
161
 
138
- export { Icon };
162
+ export { Icon, getIconProps };
@@ -14,11 +14,11 @@ import '../../hooks/useEffectDebugger.js';
14
14
  import { jsx, jsxs } from 'react/jsx-runtime';
15
15
  import { Tooltip } from '../../overlays/tooltip/Tooltip.js';
16
16
  import { getBadgeProps, Badge } from '../badge/Badge.js';
17
- import { Icon } from '../icon/Icon.js';
17
+ import { Icon, getIconProps } from '../icon/Icon.js';
18
18
  import '../../types/icons.js';
19
19
  import '../../hotkeys/HotKeyWrapper.js';
20
20
 
21
- var _excluded = ["as", "label", "color", "className", "icon", "iconBg", "iconColor", "appendLabel", "rtlFlip", "altIcon", "id", "active", "disabled", "onClick", "badge", "hotKey", "tabIndex", "minimal", "data-open", "ref"],
21
+ var _excluded = ["as", "label", "color", "className", "icon", "appendLabel", "altIcon", "id", "active", "disabled", "onClick", "badge", "hotKey", "tabIndex", "minimal", "data-open", "ref"],
22
22
  _excluded2 = ["children"];
23
23
  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; }
24
24
  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; }
@@ -50,10 +50,7 @@ var MenuItem = function MenuItem(_ref) {
50
50
  color = _ref$color === void 0 ? "primary" : _ref$color,
51
51
  className = _ref.className,
52
52
  icon = _ref.icon,
53
- iconBg = _ref.iconBg,
54
- iconColor = _ref.iconColor,
55
53
  appendLabel = _ref.appendLabel,
56
- rtlFlip = _ref.rtlFlip,
57
54
  altIcon = _ref.altIcon,
58
55
  id = _ref.id,
59
56
  active = _ref.active,
@@ -82,14 +79,10 @@ var MenuItem = function MenuItem(_ref) {
82
79
  if (minimal && !path) {
83
80
  path = iconToken(label);
84
81
  }
85
- return /*#__PURE__*/jsx(Icon, {
86
- className: classNames("fabric-menuIcon", minimal && "minimal"),
87
- icon: (_path = path) !== null && _path !== void 0 ? _path : "",
88
- bg: iconBg,
89
- color: iconColor,
90
- rtlFlip: rtlFlip
91
- });
92
- }, [icon, iconBg, iconColor, rtlFlip, minimal, label]);
82
+ return /*#__PURE__*/jsx(Icon, _objectSpread({
83
+ className: classNames("fabric-menuIcon", minimal && "minimal")
84
+ }, getIconProps((_path = path) !== null && _path !== void 0 ? _path : "")));
85
+ }, [icon, minimal, label]);
93
86
  var Wrapper = useCallback(function (_ref2) {
94
87
  var children = _ref2.children,
95
88
  rest = _objectWithoutProperties(_ref2, _excluded2);
@@ -6,13 +6,13 @@ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProper
6
6
  import classNames from 'classnames';
7
7
  import { useMemo } from 'react';
8
8
  import { usePropToggle } from '../../hooks/usePropToggle.js';
9
+ import { HotKey } from '../../hotkeys/HotKey.js';
9
10
  import { CoreIcons } from '../../types/icons.js';
10
11
  import { Loading } from '../animations/Animations.js';
11
- import { Icon } from '../icon/Icon.js';
12
- import { HotKey } from '../../hotkeys/HotKey.js';
12
+ import { Icon, getIconProps } from '../icon/Icon.js';
13
13
  import { jsxs, jsx } from 'react/jsx-runtime';
14
14
 
15
- var _excluded = ["children", "className", "titleClassName", "headerClassName", "title", "actions", "icon", "iconBg", "iconColor", "rtlFlip", "panelId", "height", "width", "minHeight", "minWidth", "maxHeight", "maxWidth", "loading", "expandable", "expanded", "onExpand", "collapsable", "collapsed", "onCollapse", "onClose", "onBack"];
15
+ var _excluded = ["children", "className", "titleClassName", "headerClassName", "title", "actions", "icon", "panelId", "height", "width", "minHeight", "minWidth", "maxHeight", "maxWidth", "loading", "expandable", "expanded", "onExpand", "collapsable", "collapsed", "onCollapse", "onClose", "onBack"];
16
16
  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; }
17
17
  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; }
18
18
  /**
@@ -31,8 +31,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
31
31
  * <Panel
32
32
  * title="Panel Title"
33
33
  * icon={CoreIcons.info}
34
- * iconBg="bg-blue-500"
35
- * iconColor="text-white"
36
34
  * actions={<button>Action</button>}
37
35
  * expandable
38
36
  * collapsable
@@ -60,9 +58,6 @@ var Panel = function Panel(_ref) {
60
58
  title = _ref.title,
61
59
  actions = _ref.actions,
62
60
  icon = _ref.icon,
63
- iconBg = _ref.iconBg,
64
- iconColor = _ref.iconColor,
65
- rtlFlip = _ref.rtlFlip,
66
61
  panelId = _ref.panelId,
67
62
  height = _ref.height,
68
63
  width = _ref.width,
@@ -121,13 +116,9 @@ var Panel = function Panel(_ref) {
121
116
  className: classNames("fabric-panelAction", "cursor-pointer"),
122
117
  icon: CoreIcons.chevronLeft,
123
118
  onClick: onBack
124
- }), icon && /*#__PURE__*/jsx(Icon, {
125
- icon: icon,
126
- bg: iconBg,
127
- color: iconColor,
128
- rtlFlip: rtlFlip,
119
+ }), icon && /*#__PURE__*/jsx(Icon, _objectSpread({
129
120
  className: "p-2 text-md select-none pointer-events-none"
130
- }), /*#__PURE__*/jsx("div", {
121
+ }, getIconProps(icon))), /*#__PURE__*/jsx("div", {
131
122
  className: classNames(titleClassName, "flex-1 select-none truncate", title && "py-1 first:px-2"),
132
123
  children: title
133
124
  }), /*#__PURE__*/jsx("div", {
@@ -13,11 +13,11 @@ import { jsx, jsxs } from 'react/jsx-runtime';
13
13
  import '../../hotkeys/HotKeyWrapper.js';
14
14
  import { Tooltip } from '../../overlays/tooltip/Tooltip.js';
15
15
  import { getBadgeProps, Badge } from '../badge/Badge.js';
16
- import { Icon } from '../icon/Icon.js';
16
+ import { Icon, getIconProps } from '../icon/Icon.js';
17
17
  import '../../types/icons.js';
18
18
  import { DropdownTool } from '../dropdown/DropdownTool.js';
19
19
 
20
- var _excluded = ["ref", "as", "id", "className", "label", "icon", "iconBg", "iconColor", "rtlFlip", "badge", "disabled", "onClose", "active", "onClick", "tabFlex", "color", "actions", "tooltip", "activeClassName"];
20
+ var _excluded = ["ref", "as", "id", "className", "label", "icon", "badge", "disabled", "onClose", "active", "onClick", "tabFlex", "color", "actions", "tooltip", "activeClassName"];
21
21
  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; }
22
22
  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; }
23
23
  /**
@@ -34,8 +34,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
34
34
  * id="tab1"
35
35
  * label="Tab 1"
36
36
  * icon="home"
37
- * iconBg="bg-blue-500"
38
- * iconColor="text-white"
39
37
  * badge="New"
40
38
  * onClick={(id) => console.log(`Tab clicked: ${id}`)}
41
39
  * onClose={() => console.log("Tab closed")}
@@ -58,9 +56,6 @@ var Tab = function Tab(_ref) {
58
56
  className = _ref.className,
59
57
  label = _ref.label,
60
58
  icon = _ref.icon,
61
- iconBg = _ref.iconBg,
62
- iconColor = _ref.iconColor,
63
- rtlFlip = _ref.rtlFlip,
64
59
  badge = _ref.badge,
65
60
  disabled = _ref.disabled,
66
61
  onClose = _ref.onClose,
@@ -98,13 +93,9 @@ var Tab = function Tab(_ref) {
98
93
  },
99
94
  ref: ref
100
95
  }, aria), {}, {
101
- children: [icon && /*#__PURE__*/jsx(Icon, {
102
- icon: icon,
103
- bg: iconBg,
104
- color: iconColor,
105
- rtlFlip: rtlFlip,
96
+ children: [icon && /*#__PURE__*/jsx(Icon, _objectSpread({
106
97
  className: "flex-content p-2"
107
- }), !minimal && /*#__PURE__*/jsx("label", {
98
+ }, getIconProps(icon))), !minimal && /*#__PURE__*/jsx("label", {
108
99
  className: "flex-initial truncate text-center px-1 py-1",
109
100
  children: label
110
101
  }), badge && /*#__PURE__*/jsx(Badge, _objectSpread(_objectSpread({}, badgeProps), {}, {
@@ -5,7 +5,7 @@ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
5
  import classNames from 'classnames';
6
6
  import { useRef, useState, useEffect, useCallback, useMemo } from 'react';
7
7
  import { Loading } from '../../components/animations/Animations.js';
8
- import { Icon } from '../../components/icon/Icon.js';
8
+ import { Icon, getIconProps } from '../../components/icon/Icon.js';
9
9
  import { useLayoutEffectDebugger } from '../../hooks/useEffectDebugger.js';
10
10
  import { usePropToggle } from '../../hooks/usePropToggle.js';
11
11
  import { useResize } from '../../hooks/useResize.js';
@@ -28,8 +28,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
28
28
  * <Aside
29
29
  * title="Sidebar Title"
30
30
  * icon={CoreIcons.menu}
31
- * iconBg="bg-gray-200"
32
- * iconColor="text-gray-800"
33
31
  * rtlFlip={true}
34
32
  * className="custom-aside"
35
33
  * bodyClassName="custom-aside-body"
@@ -59,9 +57,6 @@ var Aside = function Aside(_ref) {
59
57
  var children = _ref.children,
60
58
  title = _ref.title,
61
59
  icon = _ref.icon,
62
- iconBg = _ref.iconBg,
63
- iconColor = _ref.iconColor,
64
- rtlFlip = _ref.rtlFlip,
65
60
  className = _ref.className,
66
61
  bodyClassName = _ref.bodyClassName,
67
62
  headerClassName = _ref.headerClassName,
@@ -160,13 +155,9 @@ var Aside = function Aside(_ref) {
160
155
  rtlFlip: true,
161
156
  onClick: toggleCollapse,
162
157
  "data-ref": "asideToggle"
163
- }), icon && /*#__PURE__*/jsx(Icon, {
164
- icon: icon,
165
- bg: iconBg,
166
- color: iconColor,
167
- rtlFlip: rtlFlip,
158
+ }), icon && /*#__PURE__*/jsx(Icon, _objectSpread({
168
159
  className: classNames("fabric-asideIcon", "p-1 text-lg select-none pointer-events-none")
169
- }), actions && /*#__PURE__*/jsx("div", {
160
+ }, getIconProps(icon))), actions && /*#__PURE__*/jsx("div", {
170
161
  className: "fabric-asideActions",
171
162
  children: actions
172
163
  })]
@@ -50,7 +50,8 @@ var HeadFoot = function HeadFoot(_ref) {
50
50
  var Header = function Header(props) {
51
51
  return /*#__PURE__*/jsx(HeadFoot, _objectSpread({
52
52
  as: "header",
53
- area: "head"
53
+ area: "head",
54
+ "data-ref": "header"
54
55
  }, props));
55
56
  };
56
57
 
@@ -78,7 +79,8 @@ var Header = function Header(props) {
78
79
  var Footer = function Footer(props) {
79
80
  return /*#__PURE__*/jsx(HeadFoot, _objectSpread({
80
81
  as: "footer",
81
- area: "foot"
82
+ area: "foot",
83
+ "data-ref": "footer"
82
84
  }, props));
83
85
  };
84
86