@js-empire/emperor-ui 1.2.2 → 1.2.3

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.
@@ -1,7 +1,7 @@
1
- import { i as re, m as T, p as W, a as le, n as B, b as he, c as Ot, d as Ut, r as Ft, t as Nt, f as S, e as b, S as ce, g as Wt, h as E, j as z, k as Gt, l as P, o as M, q as H, s as tt, u as I, v as ue, w as de, L as me, x as fe, y as pe } from "./index-DOwkJus4.js";
2
- import { A as zs, Z as Hs, B as $s, M as Xs, Q as Ys, R as Ks, N as qs, a7 as _s, P as Zs, z as Js, T as Qs, V as ti, al as ei, ad as si, aO as ii, aQ as ni, aS as oi, E as ai, aN as ri, a8 as li, ae as hi, U as ci, aK as ui, aM as di, aI as mi, aJ as fi, a0 as pi, a1 as gi, ah as yi, ao as vi, af as xi, $ as Pi, H as Ti, ag as Di, au as Si, _ as Ei, at as Vi, ai as Ai, aw as Li, av as Ri, aU as Ci, a9 as wi, aa as Mi, aH as Bi, ay as ji, I as ki, W as bi, X as Ii, az as Oi, aB as Ui, a6 as Fi, aX as Ni, aR as Wi, O as Gi, aC as zi, aA as Hi, aY as $i, C as Xi, D as Yi, am as Ki, aj as qi, F as _i, Y as Zi, a2 as Ji, aL as Qi, aV as tn, ap as en, a3 as sn, aE as nn, ab as on, ac as an, an as rn, aP as ln, aT as hn, ax as cn, as as un, a4 as dn, a5 as mn, ak as fn, aD as pn, J as gn, K as yn, aF as vn, aG as xn, aZ as Pn, aq as Tn, G as Dn, ar as Sn, a_ as En, aW as Vn } from "./index-DOwkJus4.js";
3
- import { i as L, s as et, p as Z, c as ge, a as zt, g as ye, h as w, t as O, b as U, e as st, f as ve, j as xe, k as Pe, l as Te, m as Q, n as De, o as Se, q as Ht, r as Ee, u as Ve, v as Ae, w as Le, x as Re, y as Ce, z as it, A as we, F as $t, d as Me } from "./features-animation-uyo1KMg-.js";
4
- import { D as Ln, Z as Rn, aw as Cn, ax as wn, J as Mn, N as Bn, E as jn, ay as kn, P as bn, Q as In, C as On, B as Un, aN as Fn, aF as Nn, a6 as Wn, aG as Gn, aO as zn, aP as Hn, aQ as $n, G as Xn, V as Yn, aK as Kn, az as qn, aR as _n, aS as Zn, a0 as Jn, aA as Qn, X as to, aT as eo, a1 as so, S as io, _ as no, aU as oo, aV as ao, aW as ro, a$ as lo, $ as ho, a7 as co, K as uo, L as mo, aj as fo, H as po, aB as go, a9 as yo, au as vo, R as xo, af as Po, ao as To, aZ as Do, a8 as So, a_ as Eo, Y as Vo, ad as Ao, ab as Lo, M as Ro, av as Co, T as wo, O as Mo, a2 as Bo, W as jo, aI as ko, aM as bo, aX as Io, ag as Oo, ak as Uo, ah as Fo, al as No, an as Wo, ai as Go, am as zo, ap as Ho, I as $o, ae as Xo, aa as Yo, aJ as Ko, aL as qo, aq as _o, aC as Zo, aY as Jo, ac as Qo, aD as ta, U as ea, a4 as sa, a3 as ia, a5 as na, ar as oa, as as aa, at as ra, aH as la, aE as ha } from "./features-animation-uyo1KMg-.js";
1
+ import { i as re, m as T, p as W, a as le, n as B, b as he, c as Ot, d as Ut, r as Ft, t as Nt, f as S, e as b, S as ce, g as Wt, h as E, j as z, k as Gt, l as P, o as M, q as H, s as tt, u as I, v as ue, w as de, L as me, x as fe, y as pe } from "./index-BY47HgaP.js";
2
+ import { A as zs, Z as Hs, B as $s, M as Xs, Q as Ys, R as Ks, N as qs, a7 as _s, P as Zs, z as Js, T as Qs, V as ti, al as ei, ad as si, aO as ii, aQ as ni, aS as oi, E as ai, aN as ri, a8 as li, ae as hi, U as ci, aK as ui, aM as di, aI as mi, aJ as fi, a0 as pi, a1 as gi, ah as yi, ao as vi, af as xi, $ as Pi, H as Ti, ag as Di, au as Si, _ as Ei, at as Vi, ai as Ai, aw as Li, av as Ri, aU as Ci, a9 as wi, aa as Mi, aH as Bi, ay as ji, I as ki, W as bi, X as Ii, az as Oi, aB as Ui, a6 as Fi, aX as Ni, aR as Wi, O as Gi, aC as zi, aA as Hi, aY as $i, C as Xi, D as Yi, am as Ki, aj as qi, F as _i, Y as Zi, a2 as Ji, aL as Qi, aV as tn, ap as en, a3 as sn, aE as nn, ab as on, ac as an, an as rn, aP as ln, aT as hn, ax as cn, as as un, a4 as dn, a5 as mn, ak as fn, aD as pn, J as gn, K as yn, aF as vn, aG as xn, aZ as Pn, aq as Tn, G as Dn, ar as Sn, a_ as En, aW as Vn } from "./index-BY47HgaP.js";
3
+ import { i as L, s as et, p as Z, c as ge, a as zt, g as ye, h as w, t as O, b as U, e as st, f as ve, j as xe, k as Pe, l as Te, m as Q, n as De, o as Se, q as Ht, r as Ee, u as Ve, v as Ae, w as Le, x as Re, y as Ce, z as it, A as we, F as $t, d as Me } from "./features-animation-w9dWMd15.js";
4
+ import { D as Ln, Z as Rn, aw as Cn, ax as wn, J as Mn, N as Bn, E as jn, ay as kn, P as bn, Q as In, C as On, B as Un, aN as Fn, aF as Nn, a6 as Wn, aG as Gn, aO as zn, aP as Hn, aQ as $n, G as Xn, V as Yn, aK as Kn, az as qn, aR as _n, aS as Zn, a0 as Jn, aA as Qn, X as to, aT as eo, a1 as so, S as io, _ as no, aU as oo, aV as ao, aW as ro, a$ as lo, $ as ho, a7 as co, K as uo, L as mo, aj as fo, H as po, aB as go, a9 as yo, au as vo, R as xo, af as Po, ao as To, aZ as Do, a8 as So, a_ as Eo, Y as Vo, ad as Ao, ab as Lo, M as Ro, av as Co, T as wo, O as Mo, a2 as Bo, W as jo, aI as ko, aM as bo, aX as Io, ag as Oo, ak as Uo, ah as Fo, al as No, an as Wo, ai as Go, am as zo, ap as Ho, I as $o, ae as Xo, aa as Yo, aJ as Ko, aL as qo, aq as _o, aC as Zo, aY as Jo, ac as Qo, aD as ta, U as ea, a4 as sa, a3 as ia, a5 as na, ar as oa, as as aa, at as ra, aH as la, aE as ha } from "./features-animation-w9dWMd15.js";
5
5
  import { useContext as nt, Component as Be } from "react";
6
6
  function je(t) {
7
7
  return t === "x" || t === "y" ? L[t] ? null : (L[t] = !0, () => {
@@ -0,0 +1,5 @@
1
+ import { d as a } from "./features-animation-w9dWMd15.js";
2
+ var o = a;
3
+ export {
4
+ o as default
5
+ };
package/dist/index.d.ts CHANGED
@@ -56,7 +56,7 @@ declare const ar: {
56
56
  templates: {};
57
57
  };
58
58
 
59
- export declare function AvatarLabel(): JSX.Element;
59
+ export declare function AvatarLabel(): JSX.Element | null;
60
60
 
61
61
  export declare const Brand: ForwardRefExoticComponent<Omit<ClassAttributes<HTMLDivElement> & HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
62
62
  variant?: null | undefined;
@@ -705,6 +705,7 @@ export declare type UploaderContextState = {
705
705
  label?: string;
706
706
  avatar?: string;
707
707
  listing?: string;
708
+ listingItem?: string;
708
709
  error?: string;
709
710
  input?: string;
710
711
  title?: string;
@@ -729,9 +730,9 @@ export declare function UploadFileErrorBox(): JSX.Element | null;
729
730
 
730
731
  export declare function UploadFileInput(): JSX.Element;
731
732
 
732
- export declare function UploadFileLabel(): JSX.Element;
733
+ export declare function UploadFileLabel(): JSX.Element | null;
733
734
 
734
- export declare function UploadFileListing(): (JSX.Element | null)[];
735
+ export declare function UploadFileListing(): JSX.Element;
735
736
 
736
737
  export declare function useEmperorUI(): ConfigContextState;
737
738
 
@@ -0,0 +1,5 @@
1
+ import { d as a } from "./features-animation-w9dWMd15.js";
2
+ var r = a;
3
+ export {
4
+ r as default
5
+ };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@js-empire/emperor-ui",
3
3
  "description": "They provide the atoms, we provide the empire.",
4
- "version": "1.2.2",
4
+ "version": "1.2.3",
5
5
  "author": "JS Empire - Mustafa Alhasanat",
6
6
  "license": "ISC",
7
7
  "type": "module",
@@ -18,6 +18,7 @@ export function AvatarLabel() {
18
18
  placeholderImage,
19
19
  files,
20
20
  isLoading,
21
+ isMulti,
21
22
  } = useUploaderContext();
22
23
 
23
24
  const locales = config?.interLocalization?.locales;
@@ -45,6 +46,10 @@ export function AvatarLabel() {
45
46
  setDraggableMessage("");
46
47
  };
47
48
 
49
+ if (!isMulti && files?.length > 0) {
50
+ return null;
51
+ }
52
+
48
53
  if (isLoading)
49
54
  return (
50
55
  <div className={cn("mx-auto", classNames?.label)}>
@@ -39,7 +39,7 @@ export const Default: Story = {
39
39
  args: {},
40
40
  render: () => {
41
41
  const uploadProps = useUploader({
42
- fileTypes: ["image"],
42
+ fileTypes: ["image", "pdf"],
43
43
  labelId: "image",
44
44
  });
45
45
 
@@ -51,7 +51,7 @@ export const MultiFiles: Story = {
51
51
  args: {},
52
52
  render: () => {
53
53
  const uploadProps = useUploader({
54
- fileTypes: ["image"],
54
+ fileTypes: ["image", "pdf"],
55
55
  labelId: "image",
56
56
  isMulti: true,
57
57
  });
@@ -15,6 +15,8 @@ export function UploadFileLabel() {
15
15
  isDraggable,
16
16
  onInputChange,
17
17
  isLoading,
18
+ isMulti,
19
+ files,
18
20
  } = useUploaderContext();
19
21
 
20
22
  const locales = config?.interLocalization?.locales;
@@ -42,6 +44,10 @@ export function UploadFileLabel() {
42
44
  setDraggableMessage("");
43
45
  };
44
46
 
47
+ if (!isMulti && files?.length > 0) {
48
+ return null;
49
+ }
50
+
45
51
  if (isLoading)
46
52
  return (
47
53
  <div className={cn("w-full flex mx-auto", classNames?.label)}>
@@ -8,48 +8,56 @@ export function UploadFileListing() {
8
8
  const { files, setSelectedFile, handleClearFile, classNames, modal } =
9
9
  useUploaderContext();
10
10
 
11
- return files?.map((file) => {
12
- const isFileViewable =
13
- modal?.onOpen && file?.view && file?.file?.name && file?.type === "image";
11
+ return (
12
+ <ul className={cn("w-full flex flex-col gap-2", classNames?.listing)}>
13
+ {files?.map((file) => {
14
+ const isFileViewable =
15
+ modal?.onOpen &&
16
+ file?.view &&
17
+ file?.file?.name &&
18
+ file?.type === "image";
14
19
 
15
- if (file)
16
- return (
17
- <div
18
- key={file?.file?.name}
19
- className={cn(
20
- "flex justify-between items-center p-2 gap-2 w-full border border-black/30 rounded-lg",
21
- classNames?.listing,
22
- )}
23
- >
24
- <p className="w-full line-clamp-1 text-xs max-w-60">
25
- {file?.file?.name}
26
- </p>
20
+ if (!file) return null;
27
21
 
28
- <Button
29
- isIconOnly
30
- variant="flat"
31
- className="size-8 min-w-8 rounded-full"
32
- color="danger"
33
- onPress={() => handleClearFile(file?.file?.name)}
34
- startContent={<Trash2 className="rounded-lg size-4" />}
35
- />
22
+ return (
23
+ <li
24
+ key={file?.file?.name}
25
+ className={cn(
26
+ "flex justify-between items-center p-2 gap-2 w-full border border-black/30 rounded-lg",
27
+ classNames?.listingItem,
28
+ )}
29
+ >
30
+ <p className="w-full line-clamp-1 text-xs max-w-60">
31
+ {file?.file?.name}
32
+ </p>
36
33
 
37
- {isFileViewable && (
38
34
  <Button
39
35
  isIconOnly
40
36
  variant="flat"
41
- className="size-8 min-w-8 rounded-full"
42
- color="primary"
43
- onPress={() => {
44
- setSelectedFile?.(file);
45
- modal?.onOpen?.();
46
- }}
47
- startContent={<Eye className="rounded-lg size-4" />}
37
+ radius="full"
38
+ className="size-6 min-w-6"
39
+ color="danger"
40
+ onPress={() => handleClearFile(file?.file?.name)}
41
+ startContent={<Trash2 className="rounded-lg size-3" />}
48
42
  />
49
- )}
50
- </div>
51
- );
52
43
 
53
- return null;
54
- });
44
+ {isFileViewable && (
45
+ <Button
46
+ isIconOnly
47
+ variant="flat"
48
+ radius="full"
49
+ className="size-6 min-w-6"
50
+ color="primary"
51
+ onPress={() => {
52
+ setSelectedFile?.(file);
53
+ modal?.onOpen?.();
54
+ }}
55
+ startContent={<Eye className="rounded-lg size-3" />}
56
+ />
57
+ )}
58
+ </li>
59
+ );
60
+ })}
61
+ </ul>
62
+ );
55
63
  }
@@ -86,6 +86,7 @@ export type UploaderContextState = {
86
86
  label?: string;
87
87
  avatar?: string;
88
88
  listing?: string;
89
+ listingItem?: string;
89
90
  error?: string;
90
91
  input?: string;
91
92
  title?: string;
@@ -1,5 +0,0 @@
1
- import { d as a } from "./features-animation-uyo1KMg-.js";
2
- var o = a;
3
- export {
4
- o as default
5
- };
@@ -1,5 +0,0 @@
1
- import { d as a } from "./features-animation-uyo1KMg-.js";
2
- var r = a;
3
- export {
4
- r as default
5
- };