jett.admin.npmpackage 1.0.72 → 1.0.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css CHANGED
@@ -258,6 +258,17 @@
258
258
  .visible {
259
259
  visibility: visible;
260
260
  }
261
+ .sr-only {
262
+ position: absolute;
263
+ width: 1px;
264
+ height: 1px;
265
+ padding: 0;
266
+ margin: -1px;
267
+ overflow: hidden;
268
+ clip-path: inset(50%);
269
+ white-space: nowrap;
270
+ border-width: 0;
271
+ }
261
272
  .absolute {
262
273
  position: absolute;
263
274
  }
@@ -276,6 +287,12 @@
276
287
  .top-0 {
277
288
  top: calc(var(--spacing) * 0);
278
289
  }
290
+ .top-5 {
291
+ top: calc(var(--spacing) * 5);
292
+ }
293
+ .top-\[-15px\] {
294
+ top: -15px;
295
+ }
279
296
  .top-full {
280
297
  top: 100%;
281
298
  }
@@ -288,6 +305,12 @@
288
305
  .left-0 {
289
306
  left: calc(var(--spacing) * 0);
290
307
  }
308
+ .left-1\/2 {
309
+ left: calc(1/2 * 100%);
310
+ }
311
+ .left-5 {
312
+ left: calc(var(--spacing) * 5);
313
+ }
291
314
  .z-10 {
292
315
  z-index: 10;
293
316
  }
@@ -321,6 +344,9 @@
321
344
  .ml-2 {
322
345
  margin-left: calc(var(--spacing) * 2);
323
346
  }
347
+ .ml-\[2px\] {
348
+ margin-left: 2px;
349
+ }
324
350
  .ml-\[8px\] {
325
351
  margin-left: 8px;
326
352
  }
@@ -354,6 +380,12 @@
354
380
  .h-6 {
355
381
  height: calc(var(--spacing) * 6);
356
382
  }
383
+ .h-7 {
384
+ height: calc(var(--spacing) * 7);
385
+ }
386
+ .h-8 {
387
+ height: calc(var(--spacing) * 8);
388
+ }
357
389
  .h-9 {
358
390
  height: calc(var(--spacing) * 9);
359
391
  }
@@ -396,6 +428,9 @@
396
428
  .w-6 {
397
429
  width: calc(var(--spacing) * 6);
398
430
  }
431
+ .w-7 {
432
+ width: calc(var(--spacing) * 7);
433
+ }
399
434
  .w-9 {
400
435
  width: calc(var(--spacing) * 9);
401
436
  }
@@ -405,6 +440,9 @@
405
440
  .w-11 {
406
441
  width: calc(var(--spacing) * 11);
407
442
  }
443
+ .w-16 {
444
+ width: calc(var(--spacing) * 16);
445
+ }
408
446
  .w-20 {
409
447
  width: calc(var(--spacing) * 20);
410
448
  }
@@ -438,6 +476,10 @@
438
476
  .border-collapse {
439
477
  border-collapse: collapse;
440
478
  }
479
+ .-translate-x-1\/2 {
480
+ --tw-translate-x: calc(calc(1/2 * 100%) * -1);
481
+ translate: var(--tw-translate-x) var(--tw-translate-y);
482
+ }
441
483
  .-translate-x-full {
442
484
  --tw-translate-x: -100%;
443
485
  translate: var(--tw-translate-x) var(--tw-translate-y);
@@ -454,6 +496,10 @@
454
496
  --tw-translate-x: calc(var(--spacing) * 6);
455
497
  translate: var(--tw-translate-x) var(--tw-translate-y);
456
498
  }
499
+ .translate-x-8 {
500
+ --tw-translate-x: calc(var(--spacing) * 8);
501
+ translate: var(--tw-translate-x) var(--tw-translate-y);
502
+ }
457
503
  .translate-x-\[100\%\] {
458
504
  --tw-translate-x: 100%;
459
505
  translate: var(--tw-translate-x) var(--tw-translate-y);
@@ -592,6 +638,9 @@
592
638
  .border-red-500 {
593
639
  border-color: var(--color-red-500);
594
640
  }
641
+ .bg-\[\#F7FAFC\] {
642
+ background-color: #F7FAFC;
643
+ }
595
644
  .bg-\[\#ef4444\] {
596
645
  background-color: #ef4444;
597
646
  }
@@ -739,6 +788,9 @@
739
788
  .text-\[\#3f3f46cc\] {
740
789
  color: #3f3f46cc;
741
790
  }
791
+ .text-\[\#6B7280\] {
792
+ color: #6B7280;
793
+ }
742
794
  .text-\[\#737373\] {
743
795
  color: #737373;
744
796
  }
@@ -775,6 +827,9 @@
775
827
  .text-yellow-800 {
776
828
  color: var(--color-yellow-800);
777
829
  }
830
+ .opacity-0 {
831
+ opacity: 0%;
832
+ }
778
833
  .shadow {
779
834
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
780
835
  box-shadow:
@@ -784,6 +839,15 @@
784
839
  var(--tw-ring-shadow),
785
840
  var(--tw-shadow);
786
841
  }
842
+ .shadow-inner {
843
+ --tw-shadow: inset 0 2px 4px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
844
+ box-shadow:
845
+ var(--tw-inset-shadow),
846
+ var(--tw-inset-ring-shadow),
847
+ var(--tw-ring-offset-shadow),
848
+ var(--tw-ring-shadow),
849
+ var(--tw-shadow);
850
+ }
787
851
  .shadow-lg {
788
852
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
789
853
  box-shadow:
@@ -847,6 +911,11 @@
847
911
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
848
912
  transition-duration: var(--tw-duration, var(--default-transition-duration));
849
913
  }
914
+ .transition-opacity {
915
+ transition-property: opacity;
916
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
917
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
918
+ }
850
919
  .transition-transform {
851
920
  transition-property:
852
921
  transform,
@@ -878,6 +947,13 @@
878
947
  -webkit-user-select: none;
879
948
  user-select: none;
880
949
  }
950
+ .group-hover\:opacity-80 {
951
+ &:is(:where(.group):hover *) {
952
+ @media (hover: hover) {
953
+ opacity: 80%;
954
+ }
955
+ }
956
+ }
881
957
  .peer-checked\:border-primary {
882
958
  &:is(:where(.peer):checked ~ *) {
883
959
  border-color: var(--color-primary);
@@ -911,6 +987,13 @@
911
987
  }
912
988
  }
913
989
  }
990
+ .hover\:bg-\[\#F7FAFC\] {
991
+ &:hover {
992
+ @media (hover: hover) {
993
+ background-color: #F7FAFC;
994
+ }
995
+ }
996
+ }
914
997
  .hover\:bg-accent {
915
998
  &:hover {
916
999
  @media (hover: hover) {
@@ -1062,6 +1145,11 @@
1062
1145
  background-color: #1d1d20;
1063
1146
  }
1064
1147
  }
1148
+ .dark\:bg-\[\#4B5563\] {
1149
+ &:where(.dark, .dark *) {
1150
+ background-color: #4B5563;
1151
+ }
1152
+ }
1065
1153
  .dark\:bg-\[\#18181b\] {
1066
1154
  &:where(.dark, .dark *) {
1067
1155
  background-color: #18181b;
@@ -1072,6 +1160,11 @@
1072
1160
  background-color: #27272a;
1073
1161
  }
1074
1162
  }
1163
+ .dark\:bg-\[\#303036\] {
1164
+ &:where(.dark, .dark *) {
1165
+ background-color: #303036;
1166
+ }
1167
+ }
1075
1168
  .dark\:bg-gray-800 {
1076
1169
  &:where(.dark, .dark *) {
1077
1170
  background-color: var(--color-gray-800);
@@ -1146,11 +1239,20 @@
1146
1239
  }
1147
1240
  }
1148
1241
  }
1149
- .dark\:hover\:bg-gray-800 {
1242
+ .dark\:hover\:bg-\[\#303036\] {
1243
+ &:where(.dark, .dark *) {
1244
+ &:hover {
1245
+ @media (hover: hover) {
1246
+ background-color: #303036;
1247
+ }
1248
+ }
1249
+ }
1250
+ }
1251
+ .dark\:hover\:text-white {
1150
1252
  &:where(.dark, .dark *) {
1151
1253
  &:hover {
1152
1254
  @media (hover: hover) {
1153
- background-color: var(--color-gray-800);
1255
+ color: var(--color-white);
1154
1256
  }
1155
1257
  }
1156
1258
  }
package/dist/index.js CHANGED
@@ -152,7 +152,7 @@ var CustomAutocomplete = ({
152
152
  "span",
153
153
  {
154
154
  key: opt.value,
155
- className: "bg-gray-100 border border-gray-300 px-2 dark:bg-gray-800 dark:text-white py-0.5 rounded text-xs flex items-center gap-1"
155
+ className: "bg-[#F7FAFC] dark:bg-[#303036] border border-gray-300 px-2 dark:text-white py-0.5 rounded text-xs flex items-center gap-1"
156
156
  },
157
157
  opt.label,
158
158
  /* @__PURE__ */ import_react2.default.createElement(
@@ -162,7 +162,7 @@ var CustomAutocomplete = ({
162
162
  e.stopPropagation();
163
163
  toggleValue(opt.value);
164
164
  },
165
- className: "text-gray-500 hover:text-gray-700 dark:text-white"
165
+ className: "text-gray-500 hover:text-gray-700 dark:text-white cursor-pointer dark:hover:text-white"
166
166
  },
167
167
  "\u2715"
168
168
  )
@@ -190,7 +190,7 @@ var CustomAutocomplete = ({
190
190
  {
191
191
  key: opt.value,
192
192
  onClick: () => toggleValue(opt.value),
193
- className: `flex items-center gap-2 px-3 py-2 text-sm cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-800 ${selected ? "bg-gray-50 font-medium" : ""}`
193
+ className: `flex items-center gap-2 px-3 py-2 text-sm cursor-pointer hover:bg-[#F7FAFC] dark:hover:bg-[#303036] ${selected ? "bg-[#F7FAFC] dark:bg-[#303036] font-medium" : ""}`
194
194
  },
195
195
  /* @__PURE__ */ import_react2.default.createElement(
196
196
  "span",
@@ -734,6 +734,23 @@ var AppSideBar = ({
734
734
  const [authData, setAuthData] = (0, import_react12.useState)(null);
735
735
  const [selectedCountry, setSelectedCountry] = (0, import_react12.useState)("dubai");
736
736
  const [isMobileMenuOpen, setIsMobileMenuOpen] = (0, import_react12.useState)(false);
737
+ const [currAppearance, setCurrAppearance] = (0, import_react12.useState)("light");
738
+ (0, import_react12.useEffect)(() => {
739
+ const savedTheme = localStorage.getItem("themeMode") || "light";
740
+ setCurrAppearance(savedTheme);
741
+ }, []);
742
+ const handleCurrAppearance = (appearance) => {
743
+ setCurrAppearance(appearance);
744
+ localStorage.setItem("themeMode", appearance);
745
+ };
746
+ (0, import_react12.useEffect)(() => {
747
+ const root = document.documentElement;
748
+ if (currAppearance === "light") {
749
+ root.classList.remove("dark");
750
+ } else {
751
+ root.classList.add("dark");
752
+ }
753
+ }, [currAppearance]);
737
754
  const countryOptions = [
738
755
  { label: "India", value: "india" },
739
756
  { label: "Dubai", value: "dubai" },
@@ -909,7 +926,24 @@ var AppSideBar = ({
909
926
  },
910
927
  /* @__PURE__ */ import_react12.default.createElement("div", { className: "flex items-center gap-3" }, /* @__PURE__ */ import_react12.default.createElement("span", { className: "relative flex shrink-0 overflow-hidden dark:bg-[#27272a] rounded-full h-10 w-10" }, /* @__PURE__ */ import_react12.default.createElement("span", { className: "flex h-full w-full items-center justify-center rounded-full bg-muted dark:text-white" }, ((_a = authData == null ? void 0 : authData.userInfo) == null ? void 0 : _a.UserName) ? authData.userInfo.UserName.split("")[0] : "A")), /* @__PURE__ */ import_react12.default.createElement("div", null, /* @__PURE__ */ import_react12.default.createElement("p", { className: "font-semibold dark:text-white" }, ((_b = authData == null ? void 0 : authData.userInfo) == null ? void 0 : _b.UserName) ? authData.userInfo.UserName : "Admin User"), /* @__PURE__ */ import_react12.default.createElement("p", { className: "text-sm dark:text-[#f4f4f5cc]" }, role))),
911
928
  /* @__PURE__ */ import_react12.default.createElement("div", { className: "dark:text-[#f4f4f5cc]" }, /* @__PURE__ */ import_react12.default.createElement(import_lucide_react6.LogOut, null))
912
- ))
929
+ )),
930
+ /* @__PURE__ */ import_react12.default.createElement("div", { className: "flex items-center gap-4 absolute top-5 left-5 group" }, /* @__PURE__ */ import_react12.default.createElement("label", { className: "inline-flex items-center cursor-pointer relative" }, /* @__PURE__ */ import_react12.default.createElement(
931
+ "input",
932
+ {
933
+ type: "checkbox",
934
+ className: "sr-only",
935
+ checked: currAppearance === "dark",
936
+ onChange: () => handleCurrAppearance(
937
+ currAppearance === "light" ? "dark" : "light"
938
+ )
939
+ }
940
+ ), /* @__PURE__ */ import_react12.default.createElement("div", { className: "w-16 h-8 bg-gray-200 dark:bg-[#4B5563] rounded-full shadow-inner" }), /* @__PURE__ */ import_react12.default.createElement(
941
+ "div",
942
+ {
943
+ className: `dot ml-[2px] absolute w-7 h-7 bg-white rounded-full transition-transform duration-200 ease-in-out flex items-center justify-center ${currAppearance === "dark" ? "translate-x-8" : "translate-x-0"}`
944
+ },
945
+ currAppearance === "light" ? /* @__PURE__ */ import_react12.default.createElement(import_lucide_react6.Sun, { width: 18, height: 18 }) : /* @__PURE__ */ import_react12.default.createElement(import_lucide_react6.Moon, { width: 18, height: 18, className: "text-black" })
946
+ ), /* @__PURE__ */ import_react12.default.createElement("span", { className: "absolute top-[-15px] left-1/2 -translate-x-1/2 font-medium text-[#6B7280]] dark:text-[#f4f4f5cc] text-xs opacity-0 group-hover:opacity-80 transition-opacity" }, "Theme")))
913
947
  ));
914
948
  };
915
949
 
package/dist/index.mjs CHANGED
@@ -103,7 +103,7 @@ var CustomAutocomplete = ({
103
103
  "span",
104
104
  {
105
105
  key: opt.value,
106
- className: "bg-gray-100 border border-gray-300 px-2 dark:bg-gray-800 dark:text-white py-0.5 rounded text-xs flex items-center gap-1"
106
+ className: "bg-[#F7FAFC] dark:bg-[#303036] border border-gray-300 px-2 dark:text-white py-0.5 rounded text-xs flex items-center gap-1"
107
107
  },
108
108
  opt.label,
109
109
  /* @__PURE__ */ React2.createElement(
@@ -113,7 +113,7 @@ var CustomAutocomplete = ({
113
113
  e.stopPropagation();
114
114
  toggleValue(opt.value);
115
115
  },
116
- className: "text-gray-500 hover:text-gray-700 dark:text-white"
116
+ className: "text-gray-500 hover:text-gray-700 dark:text-white cursor-pointer dark:hover:text-white"
117
117
  },
118
118
  "\u2715"
119
119
  )
@@ -141,7 +141,7 @@ var CustomAutocomplete = ({
141
141
  {
142
142
  key: opt.value,
143
143
  onClick: () => toggleValue(opt.value),
144
- className: `flex items-center gap-2 px-3 py-2 text-sm cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-800 ${selected ? "bg-gray-50 font-medium" : ""}`
144
+ className: `flex items-center gap-2 px-3 py-2 text-sm cursor-pointer hover:bg-[#F7FAFC] dark:hover:bg-[#303036] ${selected ? "bg-[#F7FAFC] dark:bg-[#303036] font-medium" : ""}`
145
145
  },
146
146
  /* @__PURE__ */ React2.createElement(
147
147
  "span",
@@ -391,7 +391,7 @@ var CustomUpload = ({
391
391
  };
392
392
 
393
393
  // src/sideBar/SideBar.jsx
394
- import { ChevronDown as ChevronDown3, Globe as Globe2, LogOut, Menu, X } from "lucide-react";
394
+ import { ChevronDown as ChevronDown3, Globe as Globe2, LogOut, Menu, Moon, Sun, X } from "lucide-react";
395
395
  import React12, { useEffect, useState as useState3 } from "react";
396
396
 
397
397
  // ConstantUI.js
@@ -699,6 +699,23 @@ var AppSideBar = ({
699
699
  const [authData, setAuthData] = useState3(null);
700
700
  const [selectedCountry, setSelectedCountry] = useState3("dubai");
701
701
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState3(false);
702
+ const [currAppearance, setCurrAppearance] = useState3("light");
703
+ useEffect(() => {
704
+ const savedTheme = localStorage.getItem("themeMode") || "light";
705
+ setCurrAppearance(savedTheme);
706
+ }, []);
707
+ const handleCurrAppearance = (appearance) => {
708
+ setCurrAppearance(appearance);
709
+ localStorage.setItem("themeMode", appearance);
710
+ };
711
+ useEffect(() => {
712
+ const root = document.documentElement;
713
+ if (currAppearance === "light") {
714
+ root.classList.remove("dark");
715
+ } else {
716
+ root.classList.add("dark");
717
+ }
718
+ }, [currAppearance]);
702
719
  const countryOptions = [
703
720
  { label: "India", value: "india" },
704
721
  { label: "Dubai", value: "dubai" },
@@ -874,7 +891,24 @@ var AppSideBar = ({
874
891
  },
875
892
  /* @__PURE__ */ React12.createElement("div", { className: "flex items-center gap-3" }, /* @__PURE__ */ React12.createElement("span", { className: "relative flex shrink-0 overflow-hidden dark:bg-[#27272a] rounded-full h-10 w-10" }, /* @__PURE__ */ React12.createElement("span", { className: "flex h-full w-full items-center justify-center rounded-full bg-muted dark:text-white" }, ((_a = authData == null ? void 0 : authData.userInfo) == null ? void 0 : _a.UserName) ? authData.userInfo.UserName.split("")[0] : "A")), /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement("p", { className: "font-semibold dark:text-white" }, ((_b = authData == null ? void 0 : authData.userInfo) == null ? void 0 : _b.UserName) ? authData.userInfo.UserName : "Admin User"), /* @__PURE__ */ React12.createElement("p", { className: "text-sm dark:text-[#f4f4f5cc]" }, role))),
876
893
  /* @__PURE__ */ React12.createElement("div", { className: "dark:text-[#f4f4f5cc]" }, /* @__PURE__ */ React12.createElement(LogOut, null))
877
- ))
894
+ )),
895
+ /* @__PURE__ */ React12.createElement("div", { className: "flex items-center gap-4 absolute top-5 left-5 group" }, /* @__PURE__ */ React12.createElement("label", { className: "inline-flex items-center cursor-pointer relative" }, /* @__PURE__ */ React12.createElement(
896
+ "input",
897
+ {
898
+ type: "checkbox",
899
+ className: "sr-only",
900
+ checked: currAppearance === "dark",
901
+ onChange: () => handleCurrAppearance(
902
+ currAppearance === "light" ? "dark" : "light"
903
+ )
904
+ }
905
+ ), /* @__PURE__ */ React12.createElement("div", { className: "w-16 h-8 bg-gray-200 dark:bg-[#4B5563] rounded-full shadow-inner" }), /* @__PURE__ */ React12.createElement(
906
+ "div",
907
+ {
908
+ className: `dot ml-[2px] absolute w-7 h-7 bg-white rounded-full transition-transform duration-200 ease-in-out flex items-center justify-center ${currAppearance === "dark" ? "translate-x-8" : "translate-x-0"}`
909
+ },
910
+ currAppearance === "light" ? /* @__PURE__ */ React12.createElement(Sun, { width: 18, height: 18 }) : /* @__PURE__ */ React12.createElement(Moon, { width: 18, height: 18, className: "text-black" })
911
+ ), /* @__PURE__ */ React12.createElement("span", { className: "absolute top-[-15px] left-1/2 -translate-x-1/2 font-medium text-[#6B7280]] dark:text-[#f4f4f5cc] text-xs opacity-0 group-hover:opacity-80 transition-opacity" }, "Theme")))
878
912
  ));
879
913
  };
880
914
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jett.admin.npmpackage",
3
- "version": "1.0.72",
3
+ "version": "1.0.74",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.mjs",
6
6
  "exports": {