@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.
- package/cjs/AnnouncementBadge/AnnouncementBadge.d.ts +1 -1
- package/cjs/AutoComplete/AutoComplete.tailwind.js +1 -1
- package/cjs/AutoComplete/components/AutoCompleteEmptyState.d.ts +1 -1
- package/cjs/Avatars/ApplicationAvatar.d.ts +13 -0
- package/cjs/Avatars/ApplicationAvatar.js +43 -0
- package/cjs/Avatars/UserAvatar.d.ts +13 -0
- package/cjs/Avatars/UserAvatar.js +64 -0
- package/cjs/Avatars/index.d.ts +3 -0
- package/cjs/Avatars/index.js +46 -0
- package/cjs/Avatars/types.d.ts +17 -0
- package/cjs/Avatars/types.js +5 -0
- package/cjs/Avatars/utils.d.ts +6 -0
- package/cjs/Avatars/utils.js +82 -0
- package/cjs/Card/Card.tailwind.js +2 -1
- package/cjs/Dropdown/Dropdown.d.ts +8 -2
- package/cjs/Dropdown/Dropdown.js +17 -2
- package/cjs/Dropdown/DropdownButton.d.ts +2 -0
- package/cjs/Dropdown/DropdownButton.js +4 -2
- package/cjs/Dropdown/components/DropdownButtonItem.js +10 -4
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.d.ts +12 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.js +75 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.d.ts +7 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.js +26 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +7 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.js +23 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +9 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.js +50 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +9 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.js +46 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/index.d.ts +5 -0
- package/cjs/Dropdown/components/DropdownCollapsibleItem/index.js +72 -0
- package/cjs/Dropdown/components/DropdownFooterItem.d.ts +7 -0
- package/cjs/Dropdown/components/DropdownFooterItem.js +38 -0
- package/cjs/Dropdown/components/DropdownLinkItem.js +1 -1
- package/cjs/Dropdown/components/DropdownRadioItem.js +3 -3
- package/cjs/Dropdown/index.d.ts +2 -0
- package/cjs/Dropdown/index.js +28 -0
- package/cjs/Modal/Modal.d.ts +1 -1
- package/cjs/Modal/Modal.js +10 -7
- package/cjs/Modal/Modal.tailwind.js +0 -5
- package/cjs/Modal/components/ModalSection.d.ts +10 -0
- package/cjs/Modal/components/ModalSection.js +32 -0
- package/cjs/Modal/index.d.ts +2 -0
- package/cjs/Modal/index.js +28 -0
- package/cjs/Pagination/CompactPagination/CompactPagination.d.ts +21 -0
- package/cjs/Pagination/CompactPagination/CompactPagination.js +78 -0
- package/cjs/Pagination/CompactPagination/index.d.ts +2 -0
- package/cjs/Pagination/CompactPagination/index.js +32 -0
- package/cjs/Pagination/DotPagination/DotPagination.d.ts +9 -0
- package/cjs/Pagination/DotPagination/DotPagination.js +40 -0
- package/cjs/Pagination/DotPagination/index.d.ts +2 -0
- package/cjs/Pagination/DotPagination/index.js +32 -0
- package/cjs/Pagination/{Pagination.d.ts → Pagination/Pagination.d.ts} +1 -1
- package/cjs/Pagination/{Pagination.js → Pagination/Pagination.js} +3 -3
- package/cjs/Pagination/Pagination/index.d.ts +2 -0
- package/cjs/Pagination/Pagination/index.js +32 -0
- package/cjs/Pagination/index.d.ts +2 -0
- package/cjs/Pagination/index.js +28 -0
- package/cjs/index.d.ts +1 -0
- package/cjs/index.js +14 -0
- package/cjs/utils/hashCode.d.ts +2 -0
- package/cjs/utils/hashCode.js +28 -0
- package/esm/AnnouncementBadge/AnnouncementBadge.d.ts +1 -1
- package/esm/AutoComplete/AutoComplete.tailwind.js +1 -1
- package/esm/AutoComplete/components/AutoCompleteEmptyState.d.ts +1 -1
- package/esm/Avatars/ApplicationAvatar.d.ts +13 -0
- package/esm/Avatars/ApplicationAvatar.js +27 -0
- package/esm/Avatars/UserAvatar.d.ts +13 -0
- package/esm/Avatars/UserAvatar.js +42 -0
- package/esm/Avatars/index.d.ts +3 -0
- package/esm/Avatars/index.js +3 -0
- package/esm/Avatars/types.d.ts +17 -0
- package/esm/Avatars/types.js +1 -0
- package/esm/Avatars/utils.d.ts +6 -0
- package/esm/Avatars/utils.js +56 -0
- package/esm/Card/Card.tailwind.js +2 -1
- package/esm/Dropdown/Dropdown.d.ts +8 -2
- package/esm/Dropdown/Dropdown.js +15 -2
- package/esm/Dropdown/DropdownButton.d.ts +2 -0
- package/esm/Dropdown/DropdownButton.js +4 -2
- package/esm/Dropdown/components/DropdownButtonItem.js +8 -4
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.d.ts +12 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.js +51 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.d.ts +7 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.js +13 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +7 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.js +11 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +9 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.js +30 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +9 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.js +27 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/index.d.ts +5 -0
- package/esm/Dropdown/components/DropdownCollapsibleItem/index.js +5 -0
- package/esm/Dropdown/components/DropdownFooterItem.d.ts +7 -0
- package/esm/Dropdown/components/DropdownFooterItem.js +21 -0
- package/esm/Dropdown/components/DropdownLinkItem.js +1 -1
- package/esm/Dropdown/components/DropdownRadioItem.js +3 -3
- package/esm/Dropdown/index.d.ts +2 -0
- package/esm/Dropdown/index.js +2 -0
- package/esm/Modal/Modal.d.ts +1 -1
- package/esm/Modal/Modal.js +10 -7
- package/esm/Modal/Modal.tailwind.js +0 -5
- package/esm/Modal/components/ModalSection.d.ts +10 -0
- package/esm/Modal/components/ModalSection.js +17 -0
- package/esm/Modal/index.d.ts +2 -0
- package/esm/Modal/index.js +2 -0
- package/esm/Pagination/CompactPagination/CompactPagination.d.ts +21 -0
- package/esm/Pagination/CompactPagination/CompactPagination.js +56 -0
- package/esm/Pagination/CompactPagination/index.d.ts +2 -0
- package/esm/Pagination/CompactPagination/index.js +2 -0
- package/esm/Pagination/DotPagination/DotPagination.d.ts +9 -0
- package/esm/Pagination/DotPagination/DotPagination.js +26 -0
- package/esm/Pagination/DotPagination/index.d.ts +2 -0
- package/esm/Pagination/DotPagination/index.js +2 -0
- package/esm/Pagination/{Pagination.d.ts → Pagination/Pagination.d.ts} +1 -1
- package/esm/Pagination/{Pagination.js → Pagination/Pagination.js} +3 -3
- package/esm/Pagination/Pagination/index.d.ts +2 -0
- package/esm/Pagination/Pagination/index.js +2 -0
- package/esm/Pagination/index.d.ts +2 -0
- package/esm/Pagination/index.js +2 -0
- package/esm/index.d.ts +1 -0
- package/esm/index.js +1 -0
- package/esm/utils/hashCode.d.ts +2 -0
- package/esm/utils/hashCode.js +18 -0
- package/package.json +2 -1
- package/satellite.css +2 -5
- 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
|
}
|
@@ -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,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,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;
|
@@ -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
|
-
};
|
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
|
};
|
package/cjs/Dropdown/Dropdown.js
CHANGED
@@ -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",
|
42
|
-
className: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["
|
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"])(
|
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;
|