@algolia/satellite 1.0.0-beta.114 → 1.0.0-beta.118

Sign up to get free protection for your applications and to get access to all the features.
Files changed (127) hide show
  1. package/cjs/AnnouncementBadge/AnnouncementBadge.d.ts +1 -1
  2. package/cjs/AutoComplete/AutoComplete.tailwind.js +1 -1
  3. package/cjs/AutoComplete/components/AutoCompleteEmptyState.d.ts +1 -1
  4. package/cjs/Avatars/ApplicationAvatar.d.ts +13 -0
  5. package/cjs/Avatars/ApplicationAvatar.js +43 -0
  6. package/cjs/Avatars/UserAvatar.d.ts +13 -0
  7. package/cjs/Avatars/UserAvatar.js +64 -0
  8. package/cjs/Avatars/index.d.ts +3 -0
  9. package/cjs/Avatars/index.js +46 -0
  10. package/cjs/Avatars/types.d.ts +17 -0
  11. package/cjs/Avatars/types.js +5 -0
  12. package/cjs/Avatars/utils.d.ts +6 -0
  13. package/cjs/Avatars/utils.js +82 -0
  14. package/cjs/Card/Card.tailwind.js +2 -1
  15. package/cjs/Dropdown/Dropdown.d.ts +8 -2
  16. package/cjs/Dropdown/Dropdown.js +17 -2
  17. package/cjs/Dropdown/DropdownButton.d.ts +2 -0
  18. package/cjs/Dropdown/DropdownButton.js +4 -2
  19. package/cjs/Dropdown/components/DropdownButtonItem.js +10 -4
  20. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.d.ts +12 -0
  21. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.js +75 -0
  22. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.d.ts +7 -0
  23. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.js +26 -0
  24. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +7 -0
  25. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.js +23 -0
  26. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +9 -0
  27. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.js +50 -0
  28. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +9 -0
  29. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.js +46 -0
  30. package/cjs/Dropdown/components/DropdownCollapsibleItem/index.d.ts +5 -0
  31. package/cjs/Dropdown/components/DropdownCollapsibleItem/index.js +72 -0
  32. package/cjs/Dropdown/components/DropdownFooterItem.d.ts +7 -0
  33. package/cjs/Dropdown/components/DropdownFooterItem.js +38 -0
  34. package/cjs/Dropdown/components/DropdownLinkItem.js +1 -1
  35. package/cjs/Dropdown/components/DropdownRadioItem.js +3 -3
  36. package/cjs/Dropdown/index.d.ts +2 -0
  37. package/cjs/Dropdown/index.js +28 -0
  38. package/cjs/Modal/Modal.d.ts +1 -1
  39. package/cjs/Modal/Modal.js +10 -7
  40. package/cjs/Modal/Modal.tailwind.js +0 -5
  41. package/cjs/Modal/components/ModalSection.d.ts +10 -0
  42. package/cjs/Modal/components/ModalSection.js +32 -0
  43. package/cjs/Modal/index.d.ts +2 -0
  44. package/cjs/Modal/index.js +28 -0
  45. package/cjs/Pagination/CompactPagination/CompactPagination.d.ts +21 -0
  46. package/cjs/Pagination/CompactPagination/CompactPagination.js +78 -0
  47. package/cjs/Pagination/CompactPagination/index.d.ts +2 -0
  48. package/cjs/Pagination/CompactPagination/index.js +32 -0
  49. package/cjs/Pagination/DotPagination/DotPagination.d.ts +9 -0
  50. package/cjs/Pagination/DotPagination/DotPagination.js +40 -0
  51. package/cjs/Pagination/DotPagination/index.d.ts +2 -0
  52. package/cjs/Pagination/DotPagination/index.js +32 -0
  53. package/cjs/Pagination/{Pagination.d.ts → Pagination/Pagination.d.ts} +1 -1
  54. package/cjs/Pagination/{Pagination.js → Pagination/Pagination.js} +3 -3
  55. package/cjs/Pagination/Pagination/index.d.ts +2 -0
  56. package/cjs/Pagination/Pagination/index.js +32 -0
  57. package/cjs/Pagination/index.d.ts +2 -0
  58. package/cjs/Pagination/index.js +28 -0
  59. package/cjs/index.d.ts +1 -0
  60. package/cjs/index.js +14 -0
  61. package/cjs/utils/hashCode.d.ts +2 -0
  62. package/cjs/utils/hashCode.js +28 -0
  63. package/esm/AnnouncementBadge/AnnouncementBadge.d.ts +1 -1
  64. package/esm/AutoComplete/AutoComplete.tailwind.js +1 -1
  65. package/esm/AutoComplete/components/AutoCompleteEmptyState.d.ts +1 -1
  66. package/esm/Avatars/ApplicationAvatar.d.ts +13 -0
  67. package/esm/Avatars/ApplicationAvatar.js +27 -0
  68. package/esm/Avatars/UserAvatar.d.ts +13 -0
  69. package/esm/Avatars/UserAvatar.js +42 -0
  70. package/esm/Avatars/index.d.ts +3 -0
  71. package/esm/Avatars/index.js +3 -0
  72. package/esm/Avatars/types.d.ts +17 -0
  73. package/esm/Avatars/types.js +1 -0
  74. package/esm/Avatars/utils.d.ts +6 -0
  75. package/esm/Avatars/utils.js +56 -0
  76. package/esm/Card/Card.tailwind.js +2 -1
  77. package/esm/Dropdown/Dropdown.d.ts +8 -2
  78. package/esm/Dropdown/Dropdown.js +15 -2
  79. package/esm/Dropdown/DropdownButton.d.ts +2 -0
  80. package/esm/Dropdown/DropdownButton.js +4 -2
  81. package/esm/Dropdown/components/DropdownButtonItem.js +8 -4
  82. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.d.ts +12 -0
  83. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.js +51 -0
  84. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.d.ts +7 -0
  85. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.js +13 -0
  86. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +7 -0
  87. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.js +11 -0
  88. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +9 -0
  89. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.js +30 -0
  90. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +9 -0
  91. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.js +27 -0
  92. package/esm/Dropdown/components/DropdownCollapsibleItem/index.d.ts +5 -0
  93. package/esm/Dropdown/components/DropdownCollapsibleItem/index.js +5 -0
  94. package/esm/Dropdown/components/DropdownFooterItem.d.ts +7 -0
  95. package/esm/Dropdown/components/DropdownFooterItem.js +21 -0
  96. package/esm/Dropdown/components/DropdownLinkItem.js +1 -1
  97. package/esm/Dropdown/components/DropdownRadioItem.js +3 -3
  98. package/esm/Dropdown/index.d.ts +2 -0
  99. package/esm/Dropdown/index.js +2 -0
  100. package/esm/Modal/Modal.d.ts +1 -1
  101. package/esm/Modal/Modal.js +10 -7
  102. package/esm/Modal/Modal.tailwind.js +0 -5
  103. package/esm/Modal/components/ModalSection.d.ts +10 -0
  104. package/esm/Modal/components/ModalSection.js +17 -0
  105. package/esm/Modal/index.d.ts +2 -0
  106. package/esm/Modal/index.js +2 -0
  107. package/esm/Pagination/CompactPagination/CompactPagination.d.ts +21 -0
  108. package/esm/Pagination/CompactPagination/CompactPagination.js +56 -0
  109. package/esm/Pagination/CompactPagination/index.d.ts +2 -0
  110. package/esm/Pagination/CompactPagination/index.js +2 -0
  111. package/esm/Pagination/DotPagination/DotPagination.d.ts +9 -0
  112. package/esm/Pagination/DotPagination/DotPagination.js +26 -0
  113. package/esm/Pagination/DotPagination/index.d.ts +2 -0
  114. package/esm/Pagination/DotPagination/index.js +2 -0
  115. package/esm/Pagination/{Pagination.d.ts → Pagination/Pagination.d.ts} +1 -1
  116. package/esm/Pagination/{Pagination.js → Pagination/Pagination.js} +3 -3
  117. package/esm/Pagination/Pagination/index.d.ts +2 -0
  118. package/esm/Pagination/Pagination/index.js +2 -0
  119. package/esm/Pagination/index.d.ts +2 -0
  120. package/esm/Pagination/index.js +2 -0
  121. package/esm/index.d.ts +1 -0
  122. package/esm/index.js +1 -0
  123. package/esm/utils/hashCode.d.ts +2 -0
  124. package/esm/utils/hashCode.js +18 -0
  125. package/package.json +2 -1
  126. package/satellite.css +2 -5
  127. package/satellite.min.css +1 -1
@@ -2,7 +2,7 @@ import React, { FunctionComponent } from "react";
2
2
  export declare type AnnouncementBadgeSizes = "default" | "small";
3
3
  export interface AnnouncementBadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
4
4
  size?: AnnouncementBadgeSizes;
5
- text?: "new" | "beta" | "internal";
5
+ text?: "new" | "beta" | "internal" | "pilot";
6
6
  variant?: "accent" | "red";
7
7
  children?: never;
8
8
  }
@@ -34,7 +34,7 @@ var autoCompletePlugin = function autoCompletePlugin(_ref) {
34
34
  display: "block",
35
35
  minHeight: 30,
36
36
  // don't ask me why 30
37
- fontSize: "0px"
37
+ fontSize: 0
38
38
  },
39
39
  "&.autocomplete-large": {
40
40
  minHeight: "3rem",
@@ -7,5 +7,5 @@ export interface AutoCompleteEmptyStateProps {
7
7
  title: React.ReactNode;
8
8
  description?: React.ReactNode;
9
9
  }
10
- export declare const AutoCompleteEmptyState: ({ icon, variant, title, description }: AutoCompleteEmptyStateProps) => JSX.Element;
10
+ export declare const AutoCompleteEmptyState: ({ icon, variant, title, description, }: AutoCompleteEmptyStateProps) => JSX.Element;
11
11
  export default AutoCompleteEmptyState;
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ import type { ApplicationAvatarSize, MinimalApplication } from "./types";
3
+ interface ApplicationAvatarProps {
4
+ /** A minimal application object containing `applicationID` and `name`. */
5
+ application: MinimalApplication;
6
+ /** @default "medium" */
7
+ size?: ApplicationAvatarSize;
8
+ /** @ignore */
9
+ className?: string;
10
+ }
11
+ /** The `ApplicationAvatar` is used as a visual representation of an application. */
12
+ export declare const ApplicationAvatar: ({ className, application, size }: ApplicationAvatarProps) => JSX.Element;
13
+ export default ApplicationAvatar;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.ApplicationAvatar = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _classnames = _interopRequireDefault(require("classnames"));
15
+
16
+ var _satellitePrefixer = _interopRequireDefault(require("../styles/helpers/satellitePrefixer"));
17
+
18
+ var _utils = require("./utils");
19
+
20
+ var _templateObject, _templateObject2, _templateObject3;
21
+
22
+ var SIZE_CLASSNAMES = {
23
+ small: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["w-4 h-4"]))),
24
+ medium: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["w-8 h-8"])))
25
+ };
26
+
27
+ /** The `ApplicationAvatar` is used as a visual representation of an application. */
28
+ var ApplicationAvatar = function ApplicationAvatar(_ref) {
29
+ var className = _ref.className,
30
+ application = _ref.application,
31
+ _ref$size = _ref.size,
32
+ size = _ref$size === void 0 ? "medium" : _ref$size;
33
+ return /*#__PURE__*/_react["default"].createElement("div", {
34
+ className: (0, _classnames["default"])((0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["rounded inline-flex flex-shrink-0 items-center justify-center uppercase"]))), (0, _utils.pickApplicationColors)(application.applicationId), SIZE_CLASSNAMES[size], className),
35
+ style: size === "small" ? {
36
+ fontSize: "8px"
37
+ } : {}
38
+ }, (0, _utils.getApplicationInitials)(application));
39
+ };
40
+
41
+ exports.ApplicationAvatar = ApplicationAvatar;
42
+ var _default = ApplicationAvatar;
43
+ exports["default"] = _default;
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ import type { MinimalUser } from "./types";
3
+ export declare type UserAvatarProps = {
4
+ /** A minimal user object containing `name`, `email` and `avatar`. */
5
+ user: MinimalUser;
6
+ /** @default 32 */
7
+ size?: number;
8
+ /** @ignore */
9
+ className?: string;
10
+ };
11
+ /** The `UserAvatar` is used as a visual representation of a user. */
12
+ export declare const UserAvatar: ({ className, user, size }: UserAvatarProps) => JSX.Element;
13
+ export default UserAvatar;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = exports.UserAvatar = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _classnames = _interopRequireDefault(require("classnames"));
19
+
20
+ var _satellitePrefixer = _interopRequireDefault(require("../styles/helpers/satellitePrefixer"));
21
+
22
+ var _utils = require("./utils");
23
+
24
+ var _templateObject, _templateObject2;
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+
30
+ /** The `UserAvatar` is used as a visual representation of a user. */
31
+ var UserAvatar = function UserAvatar(_ref) {
32
+ var _user$email;
33
+
34
+ var className = _ref.className,
35
+ user = _ref.user,
36
+ _ref$size = _ref.size,
37
+ size = _ref$size === void 0 ? 32 : _ref$size;
38
+
39
+ var _useState = (0, _react.useState)(false),
40
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
41
+ failedToLoadAvatar = _useState2[0],
42
+ setFailedToLoadAvatar = _useState2[1];
43
+
44
+ var initials = (0, _utils.getUserInitials)(user);
45
+ var hasValidAvatar = user.avatar && !failedToLoadAvatar;
46
+ return /*#__PURE__*/_react["default"].createElement("div", {
47
+ className: (0, _classnames["default"])((0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["relative overflow-hidden flex justify-center items-center rounded-full text-white uppercase"]))), !hasValidAvatar && (0, _utils.getUserBackgroundClassName)((_user$email = user.email) !== null && _user$email !== void 0 ? _user$email : "no-email"), className),
48
+ style: {
49
+ width: size,
50
+ height: size
51
+ }
52
+ }, /*#__PURE__*/_react["default"].createElement("span", null, initials), hasValidAvatar && /*#__PURE__*/_react["default"].createElement("img", {
53
+ className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["w-full absolute top-0 left-0"]))),
54
+ src: user.avatar,
55
+ alt: "".concat(user.name || user.email, "'s avatar"),
56
+ onError: function onError() {
57
+ return setFailedToLoadAvatar(true);
58
+ }
59
+ }));
60
+ };
61
+
62
+ exports.UserAvatar = UserAvatar;
63
+ var _default = UserAvatar;
64
+ exports["default"] = _default;
@@ -0,0 +1,3 @@
1
+ export * from "./ApplicationAvatar";
2
+ export * from "./UserAvatar";
3
+ export { default } from "./UserAvatar";
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ var _exportNames = {};
9
+ Object.defineProperty(exports, "default", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _UserAvatar["default"];
13
+ }
14
+ });
15
+
16
+ var _ApplicationAvatar = require("./ApplicationAvatar");
17
+
18
+ Object.keys(_ApplicationAvatar).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
21
+ if (key in exports && exports[key] === _ApplicationAvatar[key]) return;
22
+ Object.defineProperty(exports, key, {
23
+ enumerable: true,
24
+ get: function get() {
25
+ return _ApplicationAvatar[key];
26
+ }
27
+ });
28
+ });
29
+
30
+ var _UserAvatar = _interopRequireWildcard(require("./UserAvatar"));
31
+
32
+ Object.keys(_UserAvatar).forEach(function (key) {
33
+ if (key === "default" || key === "__esModule") return;
34
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
35
+ if (key in exports && exports[key] === _UserAvatar[key]) return;
36
+ Object.defineProperty(exports, key, {
37
+ enumerable: true,
38
+ get: function get() {
39
+ return _UserAvatar[key];
40
+ }
41
+ });
42
+ });
43
+
44
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
45
+
46
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -0,0 +1,17 @@
1
+ export declare type ApplicationAvatarSize = "small" | "medium";
2
+ export declare type MinimalApplication = {
3
+ applicationId: string;
4
+ name?: string;
5
+ };
6
+ declare type UserAvatarWithName = {
7
+ name: string;
8
+ email?: string;
9
+ };
10
+ declare type UserAvatarWithEmail = {
11
+ email: string;
12
+ name?: string;
13
+ };
14
+ export declare type MinimalUser = (UserAvatarWithName | UserAvatarWithEmail) & {
15
+ avatar?: string;
16
+ };
17
+ export {};
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,6 @@
1
+ import { MinimalApplication, MinimalUser } from "./types";
2
+ export declare const pickApplicationColors: (applicationId: string) => string;
3
+ export declare const getApplicationIdInitial: (applicationId: string) => string;
4
+ export declare const getApplicationInitials: ({ name, applicationId }: MinimalApplication) => string;
5
+ export declare const getUserBackgroundClassName: (email: string) => string;
6
+ export declare const getUserInitials: (user: MinimalUser) => string;
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getUserInitials = exports.getUserBackgroundClassName = exports.getApplicationInitials = exports.getApplicationIdInitial = exports.pickApplicationColors = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _diacritics = require("diacritics");
13
+
14
+ var _satellitePrefixer = _interopRequireDefault(require("../styles/helpers/satellitePrefixer"));
15
+
16
+ var _hashCode = _interopRequireDefault(require("../utils/hashCode"));
17
+
18
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28;
19
+
20
+ /** APPLICATION */
21
+ var APPLICATION_COLORS_CLASSNAMES = [(0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["bg-grey-200 text-grey-800"]))), (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["bg-nebula-200 text-nebula-800"]))), (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["bg-blue-200 text-blue-800"]))), (0, _satellitePrefixer["default"])(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["bg-green-200 text-green-800"]))), (0, _satellitePrefixer["default"])(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["bg-pink-200 text-pink-800"]))), (0, _satellitePrefixer["default"])(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["bg-red-200 text-red-800"]))), (0, _satellitePrefixer["default"])(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["bg-orange-200 text-orange-800"]))), // Darker variants
22
+ (0, _satellitePrefixer["default"])(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["bg-grey-300 text-grey-900"]))), (0, _satellitePrefixer["default"])(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["bg-nebula-300 text-nebula-900"]))), (0, _satellitePrefixer["default"])(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["bg-blue-300 text-blue-900"]))), (0, _satellitePrefixer["default"])(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["bg-green-300 text-green-900"]))), (0, _satellitePrefixer["default"])(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["bg-pink-300 text-pink-900"]))), (0, _satellitePrefixer["default"])(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["bg-red-300 text-red-900"]))), (0, _satellitePrefixer["default"])(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["bg-orange-300 text-orange-900"])))];
23
+
24
+ var pickApplicationColors = function pickApplicationColors(applicationId) {
25
+ var _APPLICATION_COLORS_C;
26
+
27
+ return (_APPLICATION_COLORS_C = APPLICATION_COLORS_CLASSNAMES[Math.abs((0, _hashCode["default"])(applicationId)) % APPLICATION_COLORS_CLASSNAMES.length]) !== null && _APPLICATION_COLORS_C !== void 0 ? _APPLICATION_COLORS_C : APPLICATION_COLORS_CLASSNAMES[0];
28
+ };
29
+
30
+ exports.pickApplicationColors = pickApplicationColors;
31
+
32
+ var getApplicationIdInitial = function getApplicationIdInitial(applicationId) {
33
+ return applicationId.startsWith("beta") ? applicationId.slice(4, 6) : applicationId.slice(0, 2);
34
+ };
35
+
36
+ exports.getApplicationIdInitial = getApplicationIdInitial;
37
+
38
+ var getApplicationInitials = function getApplicationInitials(_ref) {
39
+ var name = _ref.name,
40
+ applicationId = _ref.applicationId;
41
+
42
+ if (!name) {
43
+ return getApplicationIdInitial(applicationId);
44
+ }
45
+
46
+ var words = (0, _diacritics.remove)(name.trim()).toLocaleUpperCase().split(/\W+/).filter(function (word) {
47
+ return word.length >= 1;
48
+ });
49
+
50
+ if (words.length === 0 || words.length === 1 && words[0].length < 2) {
51
+ return getApplicationIdInitial(applicationId);
52
+ } else if (words.length === 1) {
53
+ return words[0].slice(0, 2);
54
+ }
55
+
56
+ return "".concat(words[0][0]).concat(words[1][0]);
57
+ };
58
+ /** USER */
59
+
60
+
61
+ exports.getApplicationInitials = getApplicationInitials;
62
+ var USER_COLORS_CLASSNAMES = [(0, _satellitePrefixer["default"])(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["bg-grey-400"]))), (0, _satellitePrefixer["default"])(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["bg-nebula-400"]))), (0, _satellitePrefixer["default"])(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["bg-blue-400"]))), (0, _satellitePrefixer["default"])(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["bg-green-400"]))), (0, _satellitePrefixer["default"])(_templateObject19 || (_templateObject19 = (0, _taggedTemplateLiteral2["default"])(["bg-pink-400"]))), (0, _satellitePrefixer["default"])(_templateObject20 || (_templateObject20 = (0, _taggedTemplateLiteral2["default"])(["bg-red-400"]))), (0, _satellitePrefixer["default"])(_templateObject21 || (_templateObject21 = (0, _taggedTemplateLiteral2["default"])(["bg-orange-400"]))), // Darker variants
63
+ (0, _satellitePrefixer["default"])(_templateObject22 || (_templateObject22 = (0, _taggedTemplateLiteral2["default"])(["bg-grey-700"]))), (0, _satellitePrefixer["default"])(_templateObject23 || (_templateObject23 = (0, _taggedTemplateLiteral2["default"])(["bg-nebula-700"]))), (0, _satellitePrefixer["default"])(_templateObject24 || (_templateObject24 = (0, _taggedTemplateLiteral2["default"])(["bg-blue-700"]))), (0, _satellitePrefixer["default"])(_templateObject25 || (_templateObject25 = (0, _taggedTemplateLiteral2["default"])(["bg-green-700"]))), (0, _satellitePrefixer["default"])(_templateObject26 || (_templateObject26 = (0, _taggedTemplateLiteral2["default"])(["bg-pink-700"]))), (0, _satellitePrefixer["default"])(_templateObject27 || (_templateObject27 = (0, _taggedTemplateLiteral2["default"])(["bg-red-700"]))), (0, _satellitePrefixer["default"])(_templateObject28 || (_templateObject28 = (0, _taggedTemplateLiteral2["default"])(["bg-orange-700"])))];
64
+
65
+ var getUserBackgroundClassName = function getUserBackgroundClassName(email) {
66
+ var _USER_COLORS_CLASSNAM;
67
+
68
+ return (_USER_COLORS_CLASSNAM = USER_COLORS_CLASSNAMES[Math.abs((0, _hashCode["default"])(email)) % USER_COLORS_CLASSNAMES.length]) !== null && _USER_COLORS_CLASSNAM !== void 0 ? _USER_COLORS_CLASSNAM : USER_COLORS_CLASSNAMES[0];
69
+ };
70
+
71
+ exports.getUserBackgroundClassName = getUserBackgroundClassName;
72
+
73
+ var getUserInitials = function getUserInitials(user) {
74
+ var _user$email, _user$email$match;
75
+
76
+ var words = user.name ? user.name.trim().split(/\s+/) : (_user$email = user.email) === null || _user$email === void 0 ? void 0 : (_user$email$match = _user$email.match(/^(.+)(?:\+.+?)?@.+$/)) === null || _user$email$match === void 0 ? void 0 : _user$email$match[1].split(".");
77
+ return words ? words.slice(0, 2).map(function (w) {
78
+ return w.toLocaleLowerCase()[0];
79
+ }).join("") : "??";
80
+ };
81
+
82
+ exports.getUserInitials = getUserInitials;
@@ -31,7 +31,8 @@ var cardPlugin = function cardPlugin(_ref) {
31
31
  boxShadow: theme("boxShadow.z400")
32
32
  },
33
33
  ".card-z500": {
34
- boxShadow: theme("boxShadow.z500")
34
+ boxShadow: theme("boxShadow.z500"),
35
+ borderRadius: 8
35
36
  }
36
37
  });
37
38
  };
@@ -13,6 +13,7 @@ export interface DropdownProps {
13
13
  /** Defines which side to open the menu */
14
14
  placement?: "bottom-start" | "bottom-end";
15
15
  renderTarget: (params: RenderTargetParams) => React.ReactNode;
16
+ renderFooter?: (params: RenderTargetParams) => React.ReactNode;
16
17
  children?: React.ReactNode;
17
18
  }
18
19
  export declare const DEFAULT_DROPDOWN_POPPER_MODIFIERS: StrictModifier[];
@@ -27,7 +28,7 @@ export declare const DEFAULT_DROPDOWN_POPPER_MODIFIERS: StrictModifier[];
27
28
  * - Make sure the most common options are listed. These can be grouped into sub-categories under headings
28
29
  */
29
30
  export declare const Dropdown: {
30
- ({ placement, menuClassName, modifiers, renderTarget, children }: DropdownProps): JSX.Element;
31
+ ({ placement, menuClassName, modifiers, renderTarget, renderFooter, children, }: DropdownProps): JSX.Element;
31
32
  ButtonItem: {
32
33
  (props: import("./components/DropdownButtonItem").DropdownButtonItemProps): JSX.Element;
33
34
  defaultProps: {
@@ -44,7 +45,7 @@ export declare const Dropdown: {
44
45
  (props: import("./components/DropdownRadioItem").DropdownRadioItemProps): JSX.Element;
45
46
  defaultProps: {
46
47
  toggle: boolean;
47
- }; /** Classes for the opened menu */
48
+ };
48
49
  };
49
50
  ToggleItem: {
50
51
  (props: import("./components/DropdownToggleItem").DropdownToggleItemProps): JSX.Element;
@@ -52,6 +53,11 @@ export declare const Dropdown: {
52
53
  toggle: boolean;
53
54
  };
54
55
  };
56
+ CollapsibleItem: React.FC<import("./components/DropdownCollapsibleItem").DropdownCollapsibleItemProps>;
57
+ FooterItem: ({ children, className, ...props }: {
58
+ className?: string | undefined;
59
+ children: React.ReactNode;
60
+ }) => JSX.Element | null;
55
61
  Divider: () => JSX.Element;
56
62
  Title: React.FunctionComponent<React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>>;
57
63
  };
@@ -39,6 +39,10 @@ var _DropdownRadioItem = _interopRequireDefault(require("./components/DropdownRa
39
39
 
40
40
  var _DropdownToggleItem = _interopRequireDefault(require("./components/DropdownToggleItem"));
41
41
 
42
+ var _DropdownCollapsibleItem = require("./components/DropdownCollapsibleItem");
43
+
44
+ var _DropdownFooterItem = _interopRequireDefault(require("./components/DropdownFooterItem"));
45
+
42
46
  var _DropdownDivider = _interopRequireDefault(require("./components/DropdownDivider"));
43
47
 
44
48
  var _DropdownTitle = _interopRequireDefault(require("./components/DropdownTitle"));
@@ -71,12 +75,15 @@ var DEFAULT_DROPDOWN_POPPER_MODIFIERS = [{
71
75
  exports.DEFAULT_DROPDOWN_POPPER_MODIFIERS = DEFAULT_DROPDOWN_POPPER_MODIFIERS;
72
76
 
73
77
  var Dropdown = function Dropdown(_ref) {
78
+ var _renderFooter;
79
+
74
80
  var _ref$placement = _ref.placement,
75
81
  placement = _ref$placement === void 0 ? "bottom-start" : _ref$placement,
76
82
  menuClassName = _ref.menuClassName,
77
83
  _ref$modifiers = _ref.modifiers,
78
84
  modifiers = _ref$modifiers === void 0 ? [] : _ref$modifiers,
79
85
  renderTarget = _ref.renderTarget,
86
+ renderFooter = _ref.renderFooter,
80
87
  children = _ref.children;
81
88
 
82
89
  var _useState = (0, _react.useState)(false),
@@ -108,11 +115,17 @@ var Dropdown = function Dropdown(_ref) {
108
115
  },
109
116
  isShowingMenu: showMenu
110
117
  });
118
+ var footer = (_renderFooter = renderFooter === null || renderFooter === void 0 ? void 0 : renderFooter({
119
+ toggle: function toggle(open) {
120
+ return setShowMenu(open === undefined ? !showMenu : open);
121
+ },
122
+ isShowingMenu: showMenu
123
+ })) !== null && _renderFooter !== void 0 ? _renderFooter : null;
111
124
  return /*#__PURE__*/_react["default"].createElement(_DropdownContext["default"].Provider, {
112
125
  value: {
113
126
  showMenu: setShowMenu
114
127
  }
115
- }, /*#__PURE__*/_react["default"].createElement("span", {
128
+ }, /*#__PURE__*/_react["default"].createElement(_DropdownCollapsibleItem.DropdownCollapsibleItemsSingleGroup, null, /*#__PURE__*/_react["default"].createElement("span", {
116
129
  className: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["inline-block leading-none"]))),
117
130
  ref: setTargetEl
118
131
  }, target), showMenu && targetEl && /*#__PURE__*/(0, _reactDom.createPortal)( /*#__PURE__*/_react["default"].createElement(_ClickAwayContainer.ClickAwayContainer, {
@@ -132,7 +145,7 @@ var Dropdown = function Dropdown(_ref) {
132
145
  fullBleed: true,
133
146
  elevation: "300",
134
147
  className: (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["flex flex-col py-1"])))
135
- }, children))), document.body));
148
+ }, children, footer ? /*#__PURE__*/_react["default"].createElement(_DropdownFooterItem["default"], null, footer) : null))), document.body)));
136
149
  };
137
150
 
138
151
  exports.Dropdown = Dropdown;
@@ -140,6 +153,8 @@ Dropdown.ButtonItem = _DropdownButtonItem["default"];
140
153
  Dropdown.LinkItem = _DropdownLinkItem["default"];
141
154
  Dropdown.RadioItem = _DropdownRadioItem["default"];
142
155
  Dropdown.ToggleItem = _DropdownToggleItem["default"];
156
+ Dropdown.CollapsibleItem = _DropdownCollapsibleItem.DropdownCollapsibleItem;
157
+ Dropdown.FooterItem = _DropdownFooterItem["default"];
143
158
  Dropdown.Divider = _DropdownDivider["default"];
144
159
  Dropdown.Title = _DropdownTitle["default"];
145
160
  var _default = Dropdown;
@@ -1,8 +1,10 @@
1
1
  import React, { FunctionComponent } from "react";
2
2
  import { ButtonProps } from "../Button";
3
+ import { RenderTargetParams } from "./Dropdown";
3
4
  export interface DropdownButtonProps extends Omit<ButtonProps<"button">, "title"> {
4
5
  /** Title displayed in the `Dropdown` */
5
6
  title: React.ReactNode;
7
+ renderFooter?: (args: RenderTargetParams) => React.ReactNode;
6
8
  }
7
9
  export declare const DropdownButton: FunctionComponent<DropdownButtonProps>;
8
10
  export default DropdownButton;
@@ -19,11 +19,12 @@ var _Button = _interopRequireDefault(require("../Button"));
19
19
 
20
20
  var _Dropdown = _interopRequireDefault(require("./Dropdown"));
21
21
 
22
- var _excluded = ["children", "title"];
22
+ var _excluded = ["children", "title", "renderFooter"];
23
23
 
24
24
  var DropdownButton = function DropdownButton(_ref) {
25
25
  var children = _ref.children,
26
26
  title = _ref.title,
27
+ renderFooter = _ref.renderFooter,
27
28
  buttonProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
28
29
 
29
30
  var renderButton = function renderButton(_ref2) {
@@ -46,7 +47,8 @@ var DropdownButton = function DropdownButton(_ref) {
46
47
  };
47
48
 
48
49
  return /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
49
- renderTarget: renderButton
50
+ renderTarget: renderButton,
51
+ renderFooter: renderFooter
50
52
  }, children);
51
53
  };
52
54
 
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = exports.DropdownButtonItem = void 0;
9
9
 
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
10
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
13
 
12
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
@@ -15,11 +17,13 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
15
17
 
16
18
  var _react = _interopRequireDefault(require("react"));
17
19
 
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+
18
22
  var _satellitePrefixer = _interopRequireDefault(require("../../styles/helpers/satellitePrefixer"));
19
23
 
20
24
  var _useDropdownItemProps = _interopRequireDefault(require("../useDropdownItemProps"));
21
25
 
22
- var _templateObject, _templateObject2;
26
+ var _templateObject, _templateObject2, _templateObject3;
23
27
 
24
28
  var _excluded = ["children", "variant", "toggle", "startIcon"];
25
29
 
@@ -38,11 +42,13 @@ var DropdownButtonItem = function DropdownButtonItem(props) {
38
42
  mergedProps = (0, _objectWithoutProperties2["default"])(_props$dropdownItemPr, _excluded);
39
43
 
40
44
  var showDestructiveVariant = !props.disabled && variant === "destructive";
41
- return /*#__PURE__*/_react["default"].createElement("button", mergedProps, StartIcon && /*#__PURE__*/_react["default"].createElement(StartIcon, {
42
- className: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["mr-2 ", ""])), showDestructiveVariant ? "text-red-700" : "text-grey-500"),
45
+ return /*#__PURE__*/_react["default"].createElement("button", (0, _extends2["default"])({}, mergedProps, {
46
+ className: (0, _classnames["default"])(mergedProps.className, (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["w-full"]))))
47
+ }), StartIcon && /*#__PURE__*/_react["default"].createElement(StartIcon, {
48
+ className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["mr-2 ", ""])), showDestructiveVariant ? "text-red-700" : "text-grey-500"),
43
49
  size: "1rem"
44
50
  }), /*#__PURE__*/_react["default"].createElement("span", {
45
- className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["w-full truncate ", ""])), showDestructiveVariant && "text-red-700")
51
+ className: (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["w-full truncate ", ""])), showDestructiveVariant && "text-red-700")
46
52
  }, children));
47
53
  };
48
54
 
@@ -0,0 +1,12 @@
1
+ import React, { FC } from "react";
2
+ export declare type DropdownCollapsibleValue = undefined | string | string[];
3
+ export declare type DropdownCollapsiblePropsOnChange = (name: string, value: DropdownCollapsibleValue) => void;
4
+ export interface DropdownCollapsibleItemProps {
5
+ title: React.ReactNode;
6
+ name?: string;
7
+ expanded?: boolean;
8
+ onClick?: (evt: React.MouseEvent<HTMLElement>, name: string, expandedItems: readonly string[]) => void;
9
+ children: React.ReactNode;
10
+ }
11
+ export declare const DropdownCollapsibleItem: FC<DropdownCollapsibleItemProps>;
12
+ export default DropdownCollapsibleItem;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = exports.DropdownCollapsibleItem = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _reactFeather = require("react-feather");
19
+
20
+ var _utils = require("../../../utils");
21
+
22
+ var _satellitePrefixer = _interopRequireDefault(require("../../../styles/helpers/satellitePrefixer"));
23
+
24
+ var _ = require(".");
25
+
26
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
27
+
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+
30
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
+
32
+ var DropdownCollapsibleItem = function DropdownCollapsibleItem(_ref) {
33
+ var title = _ref.title,
34
+ name = _ref.name,
35
+ expanded = _ref.expanded,
36
+ _onClick = _ref.onClick,
37
+ children = _ref.children;
38
+
39
+ var _useDropdownCollapsib = (0, _.useDropdownCollapsibleItemsGroup)(),
40
+ expandedItems = _useDropdownCollapsib.expandedItems,
41
+ onItemClick = _useDropdownCollapsib.onItemClick;
42
+
43
+ var _useState = (0, _react.useState)(function () {
44
+ return (0, _utils.uniqueId)("ddci");
45
+ }),
46
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
47
+ internalName = _useState2[0];
48
+
49
+ var itemName = name !== null && name !== void 0 ? name : internalName;
50
+ var isExpanded = typeof expanded === "boolean" ? expanded : expandedItems.includes(itemName);
51
+ return /*#__PURE__*/_react["default"].createElement("div", {
52
+ className: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["flex flex-col"])))
53
+ }, /*#__PURE__*/_react["default"].createElement("button", {
54
+ className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n w-full h-10 px-4\n flex items-center justify-between\n text-grey-900 hover:bg-grey-100 focus:bg-grey-100 focus:outline-none cursor-pointer\n "]))),
55
+ onClick: function onClick(evt) {
56
+ if (typeof expanded === "boolean") {
57
+ _onClick === null || _onClick === void 0 ? void 0 : _onClick(evt, itemName, expandedItems);
58
+ } else {
59
+ onItemClick(itemName);
60
+ }
61
+ }
62
+ }, /*#__PURE__*/_react["default"].createElement("div", null, title), isExpanded ? /*#__PURE__*/_react["default"].createElement(_reactFeather.ChevronDown, {
63
+ className: (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["text-grey-500"]))),
64
+ size: "1.25em"
65
+ }) : /*#__PURE__*/_react["default"].createElement(_reactFeather.ChevronRight, {
66
+ className: (0, _satellitePrefixer["default"])(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["text-grey-500"]))),
67
+ size: "1.25em"
68
+ })), isExpanded && /*#__PURE__*/_react["default"].createElement("div", {
69
+ className: (0, _satellitePrefixer["default"])(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["bg-grey-50 border-l-2 border-grey-300"])))
70
+ }, children));
71
+ };
72
+
73
+ exports.DropdownCollapsibleItem = DropdownCollapsibleItem;
74
+ var _default = DropdownCollapsibleItem;
75
+ exports["default"] = _default;
@@ -0,0 +1,7 @@
1
+ import { ReactNode } from "react";
2
+ export declare type DropdownCollapsibleItemsGroupProps = {
3
+ expandedItems: string[];
4
+ onItemClick(name: string): void;
5
+ children: ReactNode;
6
+ };
7
+ export declare const DropdownCollapsibleItemsGroup: ({ expandedItems, onItemClick, children, }: DropdownCollapsibleItemsGroupProps) => JSX.Element;