@appcorp/kismaa-web-ui 0.2.99 → 0.3.1

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.
@@ -3,11 +3,13 @@ import { ArrowLeftIcon } from '../../atoms/arrow-left-icon';
3
3
  import { ArrowRightIcon } from '../../atoms/arrow-right-icon';
4
4
  import { Button, BUTTON_SIZES, BUTTON_TYPES } from '../../molecules';
5
5
  export var Pagination = function (_a) {
6
- var currentPage = _a.currentPage, totalPages = _a.totalPages, onPrevious = _a.onPrevious, onNext = _a.onNext;
6
+ var currentPage = _a.currentPage, totalPages = _a.totalPages, onPrevious = _a.onPrevious, onNext = _a.onNext, _b = _a.disablePrevious, disablePrevious = _b === void 0 ? false : _b, _c = _a.disableNext, disableNext = _c === void 0 ? false : _c;
7
7
  var renderButton = function (label, isDisabled, onClick, type, iconPrefix, iconSuffix) { return (React.createElement(Button, { label: label, disabled: isDisabled, handleOnClick: onClick, type: type, size: BUTTON_SIZES.SM, iconPrefix: iconPrefix, iconSuffix: iconSuffix })); };
8
8
  return (React.createElement("div", { className: "flex items-center justify-center space-x-2", "aria-label": "Pagination" },
9
- React.createElement("div", { className: "w-fit" }, renderButton('Prev', currentPage === 1, onPrevious, currentPage === 1 ? BUTTON_TYPES.TERTIARY : BUTTON_TYPES.PRIMARY, React.createElement(ArrowLeftIcon, { className: "size-3", fill: "currentColor" }))),
10
- React.createElement("div", { className: "w-fit" }, renderButton('Next', currentPage === totalPages, onNext, currentPage === totalPages
9
+ React.createElement("div", { className: "w-fit" }, renderButton('Prev', disablePrevious || currentPage === 1, onPrevious, disablePrevious || currentPage === 1
10
+ ? BUTTON_TYPES.TERTIARY
11
+ : BUTTON_TYPES.PRIMARY, React.createElement(ArrowLeftIcon, { className: "size-3", fill: "currentColor" }))),
12
+ React.createElement("div", { className: "w-fit" }, renderButton('Next', disableNext || currentPage === totalPages, onNext, disableNext || currentPage === totalPages
11
13
  ? BUTTON_TYPES.TERTIARY
12
14
  : BUTTON_TYPES.QUATERNARY, undefined, React.createElement(ArrowRightIcon, { className: "size-3", fill: "currentColor" })))));
13
15
  };
@@ -4,4 +4,6 @@ export interface PaginationProps {
4
4
  onPageChange: (page: number) => void;
5
5
  onPrevious: () => void;
6
6
  onNext: () => void;
7
+ disablePrevious?: boolean;
8
+ disableNext?: boolean;
7
9
  }
@@ -69,5 +69,5 @@ export var ReviewSection = function (_a) {
69
69
  React.createElement("div", null,
70
70
  React.createElement("p", { className: "mt-4 space-y-6 text-base text-gray-600 italic" }, review.content)))); })))),
71
71
  items.length > 0 && (React.createElement("div", { className: "mt-12 flex justify-end" },
72
- React.createElement(Pagination, { currentPage: currentPage, totalPages: totalPages, onPageChange: onPageChange, onPrevious: onPrevious, onNext: onNext }))))))));
72
+ React.createElement(Pagination, { currentPage: currentPage, totalPages: totalPages, onPageChange: onPageChange, onPrevious: onPrevious, onNext: onNext, disablePrevious: currentPage === 1, disableNext: currentPage === totalPages }))))))));
73
73
  };
@@ -31,5 +31,9 @@ export var UserCardsGrid = function (_a) {
31
31
  return (React.createElement("div", { className: "mt-10" },
32
32
  React.createElement("div", { className: "grid gap-10 sm:grid-cols-1 md:grid-cols-2 lg:grid-cols-3" }, Array.from({ length: cardsLimit }).map(function (_, index) { return (React.createElement(UserCardShimmer, { key: index })); }))));
33
33
  return (React.createElement("div", { className: "mt-10" },
34
- React.createElement("div", { className: "grid gap-10 sm:grid-cols-1 md:grid-cols-2 lg:grid-cols-3" }, filteredCardItems === null || filteredCardItems === void 0 ? void 0 : filteredCardItems.map(function (userData) { return (React.createElement(UserCard, __assign({ key: userData.id }, userData))); }))));
34
+ React.createElement("div", { className: "grid gap-10 sm:grid-cols-1 md:grid-cols-2 lg:grid-cols-3" },
35
+ (filteredCardItems === null || filteredCardItems === void 0 ? void 0 : filteredCardItems.length) === 0 && (React.createElement("div", { className: "col-span-full flex flex-col items-center justify-center py-10" },
36
+ React.createElement("p", { className: "mt-4 text-lg font-medium text-gray-600" }, "No users found - Try again"))),
37
+ filteredCardItems.length > 0 &&
38
+ (filteredCardItems === null || filteredCardItems === void 0 ? void 0 : filteredCardItems.map(function (userData) { return (React.createElement(UserCard, __assign({ key: userData.id }, userData))); })))));
35
39
  };
@@ -8,6 +8,6 @@ export var UsersListExplore = function (_a) {
8
8
  React.createElement("div", { className: "kismaa-container" },
9
9
  React.createElement(SectionHeader, { badgeText: badgeText, breadcrumbs: breadcrumbs, btnIcon: btnIcon, btnOutlined: btnOutlined, btnText: btnText, btnType: btnType, handleButtonClick: handleButtonClick, heading: heading, numberOfFilters: numberOfFilters, renderCtaButton: true, subheading: subheading }),
10
10
  React.createElement(UserCardsGrid, { cardItems: cardItems, cardsLimit: cardsLimit, loading: loading }),
11
- React.createElement("div", { className: "mt-12" },
12
- React.createElement(Pagination, { currentPage: currentPage, totalPages: totalPages, onPageChange: onPageChange, onPrevious: onPrevious, onNext: onNext })))));
11
+ cardItems.length > 0 && (React.createElement("div", { className: "mt-12" },
12
+ React.createElement(Pagination, { currentPage: currentPage, totalPages: totalPages, onPageChange: onPageChange, onPrevious: onPrevious, onNext: onNext }))))));
13
13
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appcorp/kismaa-web-ui",
3
- "version": "0.2.99",
3
+ "version": "0.3.1",
4
4
  "source": "src/index.ts",
5
5
  "main": "lib/main.js",
6
6
  "module": "lib/module.js",