se-design 0.0.97 → 0.0.99

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.
Files changed (169) hide show
  1. package/dist/assets/icons/attachment.svg +3 -0
  2. package/dist/assets/icons/banner-demo-img.svg +51 -0
  3. package/dist/assets/icons/file-red.svg +8 -0
  4. package/dist/assets/icons/next.svg +3 -0
  5. package/dist/assets/icons/padlock.svg +5 -0
  6. package/dist/assets/icons/slideout.svg +12 -0
  7. package/dist/assets/icons/sms.svg +3 -0
  8. package/dist/assets/icons/space.svg +3 -0
  9. package/dist/assets/style.css +1 -1
  10. package/dist/components/Badge/index.d.ts +11 -0
  11. package/dist/components/Banner/index.d.ts +18 -0
  12. package/dist/components/Button/index.d.ts +5 -1
  13. package/dist/components/Dropdown/index.d.ts +1 -1
  14. package/dist/components/HamburgerMenu/index.d.ts +2 -4
  15. package/dist/components/Header/index.d.ts +2 -1
  16. package/dist/components/Icon/index.d.ts +5 -1
  17. package/dist/components/KebabMenu/index.d.ts +1 -1
  18. package/dist/components/LabelChip/index.d.ts +6 -1
  19. package/dist/components/MenuItem/index.d.ts +1 -1
  20. package/dist/components/Pagination/index.d.ts +9 -0
  21. package/dist/components/Popover/index.d.ts +3 -3
  22. package/dist/components/SidebarOverlay/index.d.ts +2 -1
  23. package/dist/components/Tabs/index.d.ts +14 -0
  24. package/dist/components/Toggle/index.d.ts +1 -0
  25. package/dist/components/Tooltip/index.d.ts +2 -1
  26. package/dist/components/index.d.ts +4 -1
  27. package/dist/index.js +39 -33
  28. package/dist/index.js.map +1 -1
  29. package/dist/index10.js +30 -22
  30. package/dist/index10.js.map +1 -1
  31. package/dist/index11.js +30 -30
  32. package/dist/index11.js.map +1 -1
  33. package/dist/index12.js +18 -21
  34. package/dist/index12.js.map +1 -1
  35. package/dist/index13.js +100 -5
  36. package/dist/index13.js.map +1 -1
  37. package/dist/index14.js +29 -63
  38. package/dist/index14.js.map +1 -1
  39. package/dist/index15.js +27 -12
  40. package/dist/index15.js.map +1 -1
  41. package/dist/index16.js +70 -36
  42. package/dist/index16.js.map +1 -1
  43. package/dist/index17.js +20 -32
  44. package/dist/index17.js.map +1 -1
  45. package/dist/index18.js +22 -9
  46. package/dist/index18.js.map +1 -1
  47. package/dist/index19.js +58 -18
  48. package/dist/index19.js.map +1 -1
  49. package/dist/index20.js +133 -30
  50. package/dist/index20.js.map +1 -1
  51. package/dist/index21.js +18 -47
  52. package/dist/index21.js.map +1 -1
  53. package/dist/index22.js +44 -5
  54. package/dist/index22.js.map +1 -1
  55. package/dist/index23.js +29 -22
  56. package/dist/index23.js.map +1 -1
  57. package/dist/index24.js +62 -6
  58. package/dist/index24.js.map +1 -1
  59. package/dist/index25.js +27 -2
  60. package/dist/index25.js.map +1 -1
  61. package/dist/index26.js +1 -1
  62. package/dist/index26.js.map +1 -1
  63. package/dist/index27.js +1 -1
  64. package/dist/index27.js.map +1 -1
  65. package/dist/index28.js +1 -1
  66. package/dist/index28.js.map +1 -1
  67. package/dist/index29.js +1 -1
  68. package/dist/index29.js.map +1 -1
  69. package/dist/index3.js +71 -0
  70. package/dist/index3.js.map +1 -0
  71. package/dist/index30.js +1 -1
  72. package/dist/index30.js.map +1 -1
  73. package/dist/index31.js +2 -2
  74. package/dist/index31.js.map +1 -1
  75. package/dist/index32.js +1 -1
  76. package/dist/index32.js.map +1 -1
  77. package/dist/index33.js +2 -149
  78. package/dist/index33.js.map +1 -1
  79. package/dist/index34.js +5 -0
  80. package/dist/index34.js.map +1 -0
  81. package/dist/index35.js +5 -0
  82. package/dist/index35.js.map +1 -0
  83. package/dist/index36.js +2 -2
  84. package/dist/index36.js.map +1 -1
  85. package/dist/index37.js +2 -33
  86. package/dist/index37.js.map +1 -1
  87. package/dist/index38.js +2 -405
  88. package/dist/index38.js.map +1 -1
  89. package/dist/index39.js +2 -2
  90. package/dist/index39.js.map +1 -1
  91. package/dist/index4.js +49 -41
  92. package/dist/index4.js.map +1 -1
  93. package/dist/index40.js +2 -2
  94. package/dist/index40.js.map +1 -1
  95. package/dist/index41.js +2 -10
  96. package/dist/index41.js.map +1 -1
  97. package/dist/index42.js +148 -9
  98. package/dist/index42.js.map +1 -1
  99. package/dist/index46.js +9 -5
  100. package/dist/index46.js.map +1 -1
  101. package/dist/index47.js +9 -5
  102. package/dist/index47.js.map +1 -1
  103. package/dist/index48.js +4 -37
  104. package/dist/index48.js.map +1 -1
  105. package/dist/index49.js +170 -2
  106. package/dist/index49.js.map +1 -1
  107. package/dist/index5.js +63 -14
  108. package/dist/index5.js.map +1 -1
  109. package/dist/index50.js +11 -8
  110. package/dist/index50.js.map +1 -1
  111. package/dist/index51.js +5 -326
  112. package/dist/index51.js.map +1 -1
  113. package/dist/index52.js +5 -49
  114. package/dist/index52.js.map +1 -1
  115. package/dist/index53.js +38 -2
  116. package/dist/index53.js.map +1 -1
  117. package/dist/index54.js +2 -76
  118. package/dist/index54.js.map +1 -1
  119. package/dist/index55.js +7 -92
  120. package/dist/index55.js.map +1 -1
  121. package/dist/index56.js +323 -48
  122. package/dist/index56.js.map +1 -1
  123. package/dist/index57.js +49 -7
  124. package/dist/index57.js.map +1 -1
  125. package/dist/index58.js +2 -5
  126. package/dist/index58.js.map +1 -1
  127. package/dist/index59.js +72 -48
  128. package/dist/index59.js.map +1 -1
  129. package/dist/index6.js +24 -35
  130. package/dist/index6.js.map +1 -1
  131. package/dist/index60.js +93 -2
  132. package/dist/index60.js.map +1 -1
  133. package/dist/index61.js +52 -2
  134. package/dist/index61.js.map +1 -1
  135. package/dist/index62.js +11 -0
  136. package/dist/index62.js.map +1 -0
  137. package/dist/index63.js +8 -0
  138. package/dist/index63.js.map +1 -0
  139. package/dist/index64.js +55 -0
  140. package/dist/index64.js.map +1 -0
  141. package/dist/index65.js +5 -0
  142. package/dist/index65.js.map +1 -0
  143. package/dist/index66.js +5 -0
  144. package/dist/index66.js.map +1 -0
  145. package/dist/index7.js +19 -38
  146. package/dist/index7.js.map +1 -1
  147. package/dist/index8.js +46 -3
  148. package/dist/index8.js.map +1 -1
  149. package/dist/index9.js +33 -24
  150. package/dist/index9.js.map +1 -1
  151. package/dist/typographyMixin.scss +79 -0
  152. package/package.json +11 -5
  153. package/dist/assets/colors.css +0 -1
  154. package/dist/assets/src/components/SidebarOverlay/style.css +0 -1
  155. package/dist/assets/src/components/TableContentLoader/style.css +0 -1
  156. package/dist/components/Button/Button.stories.d.ts +0 -26
  157. package/dist/components/HamburgerMenu/HamburgerMenu.stories.d.ts +0 -6
  158. package/dist/components/Icon/Icon.stories.d.ts +0 -6
  159. package/dist/components/Icon/Icon.types.d.ts +0 -4
  160. package/dist/components/KebabMenu/KebabMenu.stories.d.ts +0 -8
  161. package/dist/components/Modal/Modal.stories.d.ts +0 -12
  162. package/dist/components/SplitButton/SplitButton.stories.d.ts +0 -13
  163. package/dist/components/Tag/index.d.ts +0 -6
  164. package/dist/index43.js +0 -8
  165. package/dist/index43.js.map +0 -1
  166. package/dist/index44.js +0 -173
  167. package/dist/index44.js.map +0 -1
  168. package/dist/index45.js +0 -14
  169. package/dist/index45.js.map +0 -1
package/dist/index16.js CHANGED
@@ -1,41 +1,75 @@
1
- import { j as e } from "./index24.js";
2
- import { createElement as m } from "react";
3
- import { Popover as h } from "./index14.js";
4
- import { MenuItem as l } from "./index12.js";
5
- const j = ({
6
- menuItems: n,
7
- className: i = "",
8
- automationId: s = "",
9
- popoverContentAutomationId: d = "",
10
- onMenuItemClick: t
11
- }) => {
12
- const a = (o, r) => {
13
- t && t(o), r();
14
- };
15
- return /* @__PURE__ */ e.jsx(
16
- h,
17
- {
18
- className: i,
19
- position: "bottom-left",
20
- automationId: s,
21
- popoverContentAutomationId: d,
22
- renderPopoverSrcElement: ({ displayPopover: o }) => /* @__PURE__ */ e.jsx("div", { className: `${o ? "bg-[rgba(0,0,0,0.20)]" : ""} hover:bg-[rgba(0,0,0,0.20)] rounded-[6px] transition-all duration-300`, children: /* @__PURE__ */ e.jsxs("svg", { width: "28", height: "28", viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
23
- /* @__PURE__ */ e.jsx("path", { d: "M6 8.25H22", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }),
24
- /* @__PURE__ */ e.jsx("path", { d: "M6 14H22", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }),
25
- /* @__PURE__ */ e.jsx("path", { d: "M6 19.75H22", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })
26
- ] }) }),
27
- renderPopoverContents: ({ closePopoverCb: o }) => /* @__PURE__ */ e.jsx("div", { className: "min-w-[212px]", children: n.map((r, p) => /* @__PURE__ */ m(
28
- l,
29
- {
30
- ...r,
31
- key: `item-${p}`,
32
- onClick: () => a(r, o)
33
- }
34
- )) })
1
+ var c = Object.getOwnPropertySymbols;
2
+ var E = Object.prototype.hasOwnProperty, v = Object.prototype.propertyIsEnumerable;
3
+ var i = (t, l) => {
4
+ var n = {};
5
+ for (var e in t)
6
+ E.call(t, e) && l.indexOf(e) < 0 && (n[e] = t[e]);
7
+ if (t != null && c)
8
+ for (var e of c(t))
9
+ l.indexOf(e) < 0 && v.call(t, e) && (n[e] = t[e]);
10
+ return n;
11
+ };
12
+ import r, { useRef as y, useEffect as w } from "react";
13
+ import { TableContentLoader as O } from "./index21.js";
14
+ function a() {
15
+ return a = Object.assign ? Object.assign.bind() : function(t) {
16
+ for (var l = 1; l < arguments.length; l++) {
17
+ var n = arguments[l];
18
+ for (var e in n) ({}).hasOwnProperty.call(n, e) && (t[e] = n[e]);
35
19
  }
36
- );
20
+ return t;
21
+ }, a.apply(null, arguments);
22
+ }
23
+ const _ = (x) => {
24
+ var s = x, {
25
+ className: t = "",
26
+ automationId: l = "",
27
+ loading: n,
28
+ headerColSpan: e = [],
29
+ headerData: o,
30
+ tableData: f,
31
+ renderTableContentLoader: T,
32
+ getTableHeaders: m,
33
+ getTableBody: b,
34
+ onSortUiUpdate: g,
35
+ onRowClick: p
36
+ } = s, d = i(s, [
37
+ "className",
38
+ "automationId",
39
+ "loading",
40
+ "headerColSpan",
41
+ "headerData",
42
+ "tableData",
43
+ "renderTableContentLoader",
44
+ "getTableHeaders",
45
+ "getTableBody",
46
+ "onSortUiUpdate",
47
+ "onRowClick"
48
+ ]);
49
+ const u = y(null);
50
+ return w(() => {
51
+ u.current && console.log("Table initialized!");
52
+ }, []), /* @__PURE__ */ r.createElement("div", a({
53
+ className: "se-design-table-layout-wrapper" + (t.length > 0 ? ` ${t}` : "")
54
+ }, d), /* @__PURE__ */ r.createElement("table", {
55
+ className: "se-design-table w-full bg-[var(--color-white)] border-collapse table-fixed",
56
+ ref: u,
57
+ "data-automation-id": l
58
+ }, /* @__PURE__ */ r.createElement("thead", null, /* @__PURE__ */ r.createElement("tr", null, m({
59
+ headerData: o,
60
+ sortData: {},
61
+ onSortUiUpdate: g,
62
+ loading: n
63
+ }))), /* @__PURE__ */ r.createElement("tbody", null, n ? /* @__PURE__ */ r.createElement(O, {
64
+ noOfColumns: o == null ? void 0 : o.length,
65
+ colSpan: e
66
+ }) : b({
67
+ tableData: f,
68
+ onRowClick: p,
69
+ loading: n
70
+ }))));
37
71
  };
38
72
  export {
39
- j as HamburgerMenu
73
+ _ as TableLayout
40
74
  };
41
75
  //# sourceMappingURL=index16.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index16.js","sources":["../src/components/HamburgerMenu/index.tsx"],"sourcesContent":["import { FC } from 'react';\n\nimport { Popover } from 'src/components/Popover';\nimport { MenuItem, MenuItemProps } from 'src/components/MenuItem';\n\nexport interface HamburgerMenuProps {\n menuItems: MenuItemProps[];\n className?: string;\n automationId?: string;\n popoverContentAutomationId?: string;\n onMenuItemClick?: (item: MenuItemProps) => void;\n}\n\nexport const HamburgerMenu: FC<HamburgerMenuProps> = ({\n menuItems,\n className = '',\n automationId = '',\n popoverContentAutomationId = '',\n onMenuItemClick\n}) => {\n const handleMenuItemClick = (item: MenuItemProps, closePopoverCb: () => void) => {\n if(onMenuItemClick) {\n onMenuItemClick(item);\n }\n closePopoverCb();\n }\n return (\n <Popover\n className={className}\n position='bottom-left'\n automationId={automationId}\n popoverContentAutomationId={popoverContentAutomationId}\n renderPopoverSrcElement={({ displayPopover }) => (\n <div className={`${displayPopover ? 'bg-[rgba(0,0,0,0.20)]' : ''} hover:bg-[rgba(0,0,0,0.20)] rounded-[6px] transition-all duration-300`}>\n <svg width=\"28\" height=\"28\" viewBox=\"0 0 28 28\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 8.25H22\" stroke=\"white\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n <path d=\"M6 14H22\" stroke=\"white\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n <path d=\"M6 19.75H22\" stroke=\"white\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n </svg>\n </div>\n )}\n renderPopoverContents={({ closePopoverCb }) => (\n <div className=\"min-w-[212px]\">\n {menuItems.map((item, index) => (\n <MenuItem {...item} key={`item-${index}`}\n onClick={() => handleMenuItemClick(item, closePopoverCb)}\n />\n ))}\n </div>\n )}\n />\n );\n};\n"],"names":["HamburgerMenu","menuItems","className","automationId","popoverContentAutomationId","onMenuItemClick","handleMenuItemClick","item","closePopoverCb","jsx","Popover","displayPopover","jsxs","index","createElement","MenuItem"],"mappings":";;;;AAaO,MAAMA,IAAwC,CAAC;AAAA,EACpD,WAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,cAAAC,IAAe;AAAA,EACf,4BAAAC,IAA6B;AAAA,EAC7B,iBAAAC;AACF,MAAM;AACE,QAAAC,IAAsB,CAACC,GAAqBC,MAA+B;AAC/E,IAAGH,KACDA,EAAgBE,CAAI,GAEPC,EAAA;AAAA,EACjB;AAEE,SAAAC,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAAR;AAAA,MACA,UAAS;AAAA,MACT,cAAAC;AAAA,MACA,4BAAAC;AAAA,MACA,yBAAyB,CAAC,EAAE,gBAAAO,8BACzB,OAAI,EAAA,WAAW,GAAGA,IAAiB,0BAA0B,EAAE,0EAC5D,UAACC,gBAAAA,EAAA,KAAA,OAAA,EAAI,OAAM,MAAK,QAAO,MAAK,SAAQ,aAAY,MAAK,QAAO,OAAM,8BAC9D,UAAA;AAAA,QAACH,gBAAAA,EAAAA,IAAA,QAAA,EAAK,GAAE,cAAa,QAAO,SAAQ,aAAY,OAAM,eAAc,SAAQ,gBAAe,QAAO,CAAA;AAAA,QAClGA,gBAAAA,EAAAA,IAAC,QAAK,EAAA,GAAE,YAAW,QAAO,SAAQ,aAAY,OAAM,eAAc,SAAQ,gBAAe,QAAO,CAAA;AAAA,QAChGA,gBAAAA,EAAAA,IAAC,QAAK,EAAA,GAAE,eAAc,QAAO,SAAQ,aAAY,OAAM,eAAc,SAAQ,gBAAe,QAAO,CAAA;AAAA,MAAA,EAAA,CACvG,EACJ,CAAA;AAAA,MAEF,uBAAuB,CAAC,EAAE,gBAAAD,EACxB,MAAAC,gBAAAA,EAAA,IAAC,OAAI,EAAA,WAAU,iBACZ,UAAAR,EAAU,IAAI,CAACM,GAAMM,MACpB,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UAAU,GAAGR;AAAA,UAAM,KAAK,QAAQM,CAAK;AAAA,UACpC,SAAS,MAAMP,EAAoBC,GAAMC,CAAc;AAAA,QAAA;AAAA,MAAA,CAE1D,EACH,CAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
1
+ {"version":3,"file":"index16.js","sources":["../src/components/TableLayout/index.tsx"],"sourcesContent":["import React, { FC, ReactNode, useEffect, useRef } from 'react';\nimport { TableContentLoader } from 'components/TableContentLoader';\n\nexport interface TableLayoutProps {\n className?: string;\n automationId?: string;\n loading: boolean;\n headerData: any[];\n tableData: any[];\n headerColSpan?: number[];\n renderTableContentLoader?: (noOfColumns: number) => ReactNode;\n getTableHeaders: (props: { headerData: any[], sortData: any, onSortUiUpdate: any, loading: boolean }) => ReactNode;\n getTableBody: (props: { tableData: any[], onRowClick: any, loading: boolean }) => ReactNode;\n onSortUiUpdate: (newSortData: any) => void;\n onRowClick: (rowData: any) => void;\n}\n\nexport const TableLayout: FC<TableLayoutProps> = ({\n className = '',\n automationId = '',\n loading,\n headerColSpan = [],\n headerData,\n tableData,\n renderTableContentLoader,\n getTableHeaders,\n getTableBody,\n onSortUiUpdate,\n onRowClick,\n ...props\n}) => {\n const tableRef = useRef<HTMLTableElement>(null);\n\n useEffect(() => {\n if (tableRef.current) {\n console.log('Table initialized!');\n }\n }, []);\n\n return (\n <div className={'se-design-table-layout-wrapper' + (className.length > 0 ? ` ${className}` : '')} {...props}>\n <table\n className={'se-design-table w-full bg-[var(--color-white)] border-collapse table-fixed'}\n ref={tableRef}\n data-automation-id={automationId}\n >\n <thead>\n <tr>\n {getTableHeaders({ headerData, sortData: {}, onSortUiUpdate, loading })}\n </tr>\n </thead>\n <tbody>\n {loading ? (\n <TableContentLoader noOfColumns={headerData?.length} colSpan={headerColSpan} />\n ) : (\n getTableBody({ tableData, onRowClick, loading })\n )}\n </tbody>\n </table>\n </div>\n );\n};\n"],"names":["TableLayout","_a","_b","className","automationId","loading","headerColSpan","headerData","tableData","renderTableContentLoader","getTableHeaders","getTableBody","onSortUiUpdate","onRowClick","props","tableRef","useRef","useEffect","current","console","log","React","createElement","_extends","length","ref","sortData","TableContentLoader","noOfColumns","colSpan"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAiBO,MAAMA,IAAoCA,CAACC,MAa5C;AAb4C,MAAAC,IAAAD,GAChDE;AAAAA,eAAAA,IAAY;AAAA,IACZC,cAAAA,IAAe;AAAA,IACfC,SAAAA;AAAAA,IACAC,eAAAA,IAAgB,CAAE;AAAA,IAClBC,YAAAA;AAAAA,IACAC,WAAAA;AAAAA,IACAC,0BAAAA;AAAAA,IACAC,iBAAAA;AAAAA,IACAC,cAAAA;AAAAA,IACAC,gBAAAA;AAAAA,IACAC,YAAAA;AAAAA,MAXgDX,GAY7CY,IAAAA,EAZ6CZ,GAY7CY;AAAAA,IAXHX;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA;AAGME,QAAAA,IAAWC,EAAyB,IAAI;AAE9CC,SAAAA,EAAU,MAAM;AACd,IAAIF,EAASG,WACXC,QAAQC,IAAI,oBAAoB;AAAA,EAEpC,GAAG,EAAE,GAGHC,gBAAAA,EAAAC,cAAA,OAAAC,EAAA;AAAA,IAAKpB,WAAW,oCAAoCA,EAAUqB,SAAS,IAAI,IAAIrB,CAAS,KAAK;AAAA,EAASW,GAAAA,CAAK,GACzGO,gBAAAA,EAAAC,cAAA,SAAA;AAAA,IACEnB,WAAW;AAAA,IACXsB,KAAKV;AAAAA,IACL,sBAAoBX;AAAAA,EAAAA,qBAEpBkB,cAAA,SAAA,MACEA,gBAAAA,EAAAA,cACGZ,MAAAA,MAAAA,EAAgB;AAAA,IAAEH,YAAAA;AAAAA,IAAYmB,UAAU,CAAC;AAAA,IAAGd,gBAAAA;AAAAA,IAAgBP,SAAAA;AAAAA,EAAAA,CAAS,CACpE,CACC,GACPgB,gBAAAA,EAAAC,cACGjB,SAAAA,MAAAA,IACCiB,gBAAAA,EAAAA,cAACK,GAAkB;AAAA,IAACC,aAAarB,KAAAA,gBAAAA,EAAYiB;AAAAA,IAAQK,SAASvB;AAAAA,EAAgB,CAAA,IAE9EK,EAAa;AAAA,IAAEH,WAAAA;AAAAA,IAAWK,YAAAA;AAAAA,IAAYR,SAAAA;AAAAA,EAAS,CAAA,CAE5C,CACF,CACJ;AAET;"}
package/dist/index17.js CHANGED
@@ -1,37 +1,25 @@
1
- import { j as e } from "./index24.js";
2
- import { useRef as d, useEffect as p } from "react";
3
- import { TableContentLoader as j } from "./index22.js";
4
- const w = ({
5
- className: t = "",
6
- automationId: n = "",
7
- loading: l,
8
- headerColSpan: i = [],
9
- headerData: o,
10
- tableData: s,
11
- renderTableContentLoader: m,
12
- getTableHeaders: b,
13
- getTableBody: c,
14
- onSortUiUpdate: f,
15
- onRowClick: u,
16
- ...x
1
+ import h, { useState as u } from "react";
2
+ const i = ({
3
+ className: c = "",
4
+ automationId: a = "",
5
+ defaultChecked: l = !1,
6
+ disabled: o = !1,
7
+ onChange: r
17
8
  }) => {
18
- const r = d(null);
19
- return p(() => {
20
- r.current && console.log("Table initialized!");
21
- }, []), /* @__PURE__ */ e.jsx("div", { className: "table-layout-wrapper" + (t.length > 0 ? ` ${t}` : ""), ...x, children: /* @__PURE__ */ e.jsxs(
22
- "table",
23
- {
24
- className: "se-table w-full bg-[var(--color-white)] border-collapse table-fixed" + (t ? ` ${t}` : ""),
25
- ref: r,
26
- "data-automation-id": n,
27
- children: [
28
- /* @__PURE__ */ e.jsx("thead", { children: /* @__PURE__ */ e.jsx("tr", { children: b({ headerData: o, sortData: {}, onSortUiUpdate: f, loading: l }) }) }),
29
- /* @__PURE__ */ e.jsx("tbody", { children: l ? /* @__PURE__ */ e.jsx(j, { noOfColumns: o == null ? void 0 : o.length, colSpan: i }) : c({ tableData: s, onRowClick: u, loading: l }) })
30
- ]
31
- }
32
- ) });
9
+ const [e, n] = u(l), s = () => {
10
+ const t = !e;
11
+ n(t), r && r(t);
12
+ }, d = o ? "bg-[var(--color-gray-600)] text-[var(--color-gray-600)] hover:text-[var(--color-gray-600)] bg-[var(--color-gray-600)] cursor-not-allowed" : e ? "text-[var(--color-blue-500)]" : "text-[var(--color-white)]";
13
+ return /* @__PURE__ */ h.createElement("input", {
14
+ type: "checkbox",
15
+ className: `se-design-checkbox ${c} block w-4 h-4 ${d} hover:text-[var(--color-blue-600)] border-[var(--color-gray-500)] rounded-md focus:ring-transparent cursor-pointer`,
16
+ "data-automation-id": a,
17
+ checked: e,
18
+ onChange: s,
19
+ disabled: o
20
+ });
33
21
  };
34
22
  export {
35
- w as TableLayout
23
+ i as Checkbox
36
24
  };
37
25
  //# sourceMappingURL=index17.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index17.js","sources":["../src/components/TableLayout/index.tsx"],"sourcesContent":["import { FC, ReactNode, useEffect, useRef } from 'react';\nimport { TableContentLoader } from 'components/TableContentLoader';\n\nexport interface TableLayoutProps {\n className?: string;\n automationId?: string;\n loading: boolean;\n headerData: any[];\n tableData: any[];\n headerColSpan?: number[];\n renderTableContentLoader?: (noOfColumns: number) => ReactNode;\n getTableHeaders: (props: { headerData: any[], sortData: any, onSortUiUpdate: any, loading: boolean }) => ReactNode;\n getTableBody: (props: { tableData: any[], onRowClick: any, loading: boolean }) => ReactNode;\n onSortUiUpdate: (newSortData: any) => void;\n onRowClick: (rowData: any) => void;\n}\n\nexport const TableLayout: FC<TableLayoutProps> = ({\n className = '',\n automationId = '',\n loading,\n headerColSpan = [],\n headerData,\n tableData,\n renderTableContentLoader,\n getTableHeaders,\n getTableBody,\n onSortUiUpdate,\n onRowClick,\n ...props\n}) => {\n const tableRef = useRef<HTMLTableElement>(null);\n\n useEffect(() => {\n if (tableRef.current) {\n console.log('Table initialized!');\n }\n }, []);\n\n return (\n <div className={'table-layout-wrapper' + (className.length > 0 ? ` ${className}` : '')} {...props}>\n <table\n className={'se-table w-full bg-[var(--color-white)] border-collapse table-fixed' + (className ? ` ${className}` : '')}\n ref={tableRef}\n data-automation-id={automationId}\n >\n <thead>\n <tr>\n {getTableHeaders({ headerData, sortData: {}, onSortUiUpdate, loading })}\n </tr>\n </thead>\n <tbody>\n {loading ? (\n <TableContentLoader noOfColumns={headerData?.length} colSpan={headerColSpan} />\n ) : (\n getTableBody({ tableData, onRowClick, loading })\n )}\n </tbody>\n </table>\n </div>\n );\n};\n"],"names":["TableLayout","className","automationId","loading","headerColSpan","headerData","tableData","renderTableContentLoader","getTableHeaders","getTableBody","onSortUiUpdate","onRowClick","props","tableRef","useRef","useEffect","jsx","jsxs","TableContentLoader"],"mappings":";;;AAiBO,MAAMA,IAAoC,CAAC;AAAA,EAChD,WAAAC,IAAY;AAAA,EACZ,cAAAC,IAAe;AAAA,EACf,SAAAC;AAAA,EACA,eAAAC,IAAgB,CAAC;AAAA,EACjB,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,0BAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,YAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAAC,IAAWC,EAAyB,IAAI;AAE9C,SAAAC,EAAU,MAAM;AACd,IAAIF,EAAS,WACX,QAAQ,IAAI,oBAAoB;AAAA,EAEpC,GAAG,EAAE,GAGFG,gBAAAA,EAAAA,IAAA,OAAA,EAAI,WAAW,0BAA0Bf,EAAU,SAAS,IAAI,IAAIA,CAAS,KAAK,KAAM,GAAGW,GAC1F,UAAAK,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,yEAAyEhB,IAAY,IAAIA,CAAS,KAAK;AAAA,MAClH,KAAKY;AAAA,MACL,sBAAoBX;AAAA,MAEpB,UAAA;AAAA,QAAAc,gBAAAA,EAAA,IAAC,SACC,EAAA,UAAAA,gBAAAA,EAAAA,IAAC,MACE,EAAA,UAAAR,EAAgB,EAAE,YAAAH,GAAY,UAAU,IAAI,gBAAAK,GAAgB,SAAAP,EAAS,CAAA,EACxE,CAAA,GACF;AAAA,8BACC,SACE,EAAA,UAAAA,IACEa,gBAAAA,EAAAA,IAAAE,GAAA,EAAmB,aAAab,KAAA,gBAAAA,EAAY,QAAQ,SAASD,EAAe,CAAA,IAE7EK,EAAa,EAAE,WAAAH,GAAW,YAAAK,GAAY,SAAAR,EAAA,CAAS,EAEnD,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"index17.js","sources":["../src/components/Checkbox/index.tsx"],"sourcesContent":["import React, { FC, useState } from 'react';\n\nexport interface CheckboxProps {\n className?: string;\n automationId?: string;\n defaultChecked?: boolean;\n onChange?: (checked: boolean) => void;\n disabled?: boolean;\n}\n\nexport const Checkbox: FC<CheckboxProps> = ({ className = '', automationId = '', defaultChecked = false, disabled = false, onChange }) => {\n const [isChecked, setIsChecked] = useState(defaultChecked);\n\n const handleClick = () => {\n const newCheckedState = !isChecked;\n setIsChecked(newCheckedState);\n if(onChange) {\n onChange(newCheckedState);\n }\n }\n const backgroundColor = disabled ? 'bg-[var(--color-gray-600)] text-[var(--color-gray-600)] hover:text-[var(--color-gray-600)] bg-[var(--color-gray-600)] cursor-not-allowed' : isChecked ? 'text-[var(--color-blue-500)]' : 'text-[var(--color-white)]';\n \n return <input type=\"checkbox\" className={`se-design-checkbox ${className} block w-4 h-4 ${backgroundColor} hover:text-[var(--color-blue-600)] border-[var(--color-gray-500)] rounded-md focus:ring-transparent cursor-pointer`} data-automation-id={automationId} checked={isChecked} onChange={handleClick} disabled={disabled} />;\n};\n"],"names":["Checkbox","className","automationId","defaultChecked","disabled","onChange","isChecked","setIsChecked","useState","handleClick","newCheckedState","backgroundColor","React","createElement","type","checked"],"mappings":";AAUO,MAAMA,IAA8BA,CAAC;AAAA,EAAEC,WAAAA,IAAY;AAAA,EAAIC,cAAAA,IAAe;AAAA,EAAIC,gBAAAA,IAAiB;AAAA,EAAOC,UAAAA,IAAW;AAAA,EAAOC,UAAAA;AAAS,MAAM;AACtI,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAASL,CAAc,GAEnDM,IAAcA,MAAM;AACtB,UAAMC,IAAkB,CAACJ;AACzBC,IAAAA,EAAaG,CAAe,GACzBL,KACCA,EAASK,CAAe;AAAA,EAEhC,GACMC,IAAkBP,IAAW,6IAA6IE,IAAY,iCAAiC;AAExNM,SAAAA,gBAAAA,EAAAC,cAAA,SAAA;AAAA,IAAOC,MAAK;AAAA,IAAWb,WAAW,sBAAsBA,CAAS,kBAAkBU,CAAe;AAAA,IAAuH,sBAAoBT;AAAAA,IAAca,SAAST;AAAAA,IAAWD,UAAUI;AAAAA,IAAaL,UAAAA;AAAAA,EAAAA,CAAqB;AACpU;"}
package/dist/index18.js CHANGED
@@ -1,13 +1,26 @@
1
- import { j as d } from "./index24.js";
2
- import { useState as h } from "react";
3
- const v = ({ className: a = "", automationId: c = "", defaultChecked: s = !1, disabled: r = !1, onChange: e }) => {
4
- const [o, l] = h(s), n = () => {
5
- const t = !o;
6
- l(t), e && e(t);
7
- }, u = r ? "bg-[var(--color-gray-600)] text-[var(--color-gray-600)] hover:text-[var(--color-gray-600)] bg-[var(--color-gray-600)] cursor-not-allowed" : o ? "text-[var(--color-blue-500)]" : "text-[var(--color-white)]";
8
- return /* @__PURE__ */ d.jsx("input", { type: "checkbox", className: `${a} block w-4 h-4 ${u} hover:text-[var(--color-blue-600)] border-[var(--color-gray-500)] rounded-md focus:ring-transparent cursor-pointer`, "data-automation-id": c, checked: o, onChange: n, disabled: r });
1
+ import e from "react";
2
+ import { Badge as c } from "./index7.js";
3
+ const m = (t) => {
4
+ const {
5
+ label: a,
6
+ color: l,
7
+ onClick: r = () => {
8
+ },
9
+ tag: o
10
+ } = t;
11
+ return /* @__PURE__ */ e.createElement("div", {
12
+ className: "se-design-color-coded-label flex items-center gap-2",
13
+ onClick: r
14
+ }, l && /* @__PURE__ */ e.createElement("span", {
15
+ className: "w-[15px] h-[15px] rounded-[3px] inline-block",
16
+ style: {
17
+ backgroundColor: l
18
+ }
19
+ }), /* @__PURE__ */ e.createElement("div", null, a), o && /* @__PURE__ */ e.createElement(c, {
20
+ label: o
21
+ }));
9
22
  };
10
23
  export {
11
- v as Checkbox
24
+ m as ColorCodedLabel
12
25
  };
13
26
  //# sourceMappingURL=index18.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index18.js","sources":["../src/components/Checkbox/index.tsx"],"sourcesContent":["import { FC, useState } from 'react';\n\nexport interface CheckboxProps {\n className?: string;\n automationId?: string;\n defaultChecked?: boolean;\n onChange?: (checked: boolean) => void;\n disabled?: boolean;\n}\n\nexport const Checkbox: FC<CheckboxProps> = ({ className = '', automationId = '', defaultChecked = false, disabled = false, onChange }) => {\n const [isChecked, setIsChecked] = useState(defaultChecked);\n\n const handleClick = () => {\n const newCheckedState = !isChecked;\n setIsChecked(newCheckedState);\n if(onChange) {\n onChange(newCheckedState);\n }\n }\n const backgroundColor = disabled ? 'bg-[var(--color-gray-600)] text-[var(--color-gray-600)] hover:text-[var(--color-gray-600)] bg-[var(--color-gray-600)] cursor-not-allowed' : isChecked ? 'text-[var(--color-blue-500)]' : 'text-[var(--color-white)]';\n \n return <input type=\"checkbox\" className={`${className} block w-4 h-4 ${backgroundColor} hover:text-[var(--color-blue-600)] border-[var(--color-gray-500)] rounded-md focus:ring-transparent cursor-pointer`} data-automation-id={automationId} checked={isChecked} onChange={handleClick} disabled={disabled} />;\n};\n"],"names":["Checkbox","className","automationId","defaultChecked","disabled","onChange","isChecked","setIsChecked","useState","handleClick","newCheckedState","backgroundColor"],"mappings":";;AAUO,MAAMA,IAA8B,CAAC,EAAE,WAAAC,IAAY,IAAI,cAAAC,IAAe,IAAI,gBAAAC,IAAiB,IAAO,UAAAC,IAAW,IAAO,UAAAC,EAAA,MAAe;AACtI,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAASL,CAAc,GAEnDM,IAAc,MAAM;AACtB,UAAMC,IAAkB,CAACJ;AACzB,IAAAC,EAAaG,CAAe,GACzBL,KACCA,EAASK,CAAe;AAAA,EAEhC,GACMC,IAAkBP,IAAW,6IAA6IE,IAAY,iCAAiC;AAE/N,+BAAQ,SAAM,EAAA,MAAK,YAAW,WAAW,GAAGL,CAAS,kBAAkBU,CAAe,uHAAuH,sBAAoBT,GAAc,SAASI,GAAW,UAAUG,GAAa,UAAAL,GAAoB;AAChT;"}
1
+ {"version":3,"file":"index18.js","sources":["../src/components/ColorCodedLabel/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport { Badge } from 'src/components/Badge';\n\nexport type ColorCodedLabelProps = {\n label: string;\n tag?: string;\n color?: string;\n onClick?: () => void;\n};\n\nexport const ColorCodedLabel: FC<ColorCodedLabelProps> = (props) => {\n const { label, color, onClick = () => {}, tag } = props;\n return (\n <div\n className=\"se-design-color-coded-label flex items-center gap-2\"\n onClick={onClick}\n >\n {color && <span className=\"w-[15px] h-[15px] rounded-[3px] inline-block\" style={{ backgroundColor: color }}></span>}\n <div>{label}</div>\n {tag && <Badge label={tag} />}\n </div>\n );\n};\n"],"names":["React__default","Badge","ColorCodedLabel","props","label","color","onClick","tag","React","createElement","className","style","backgroundColor"],"mappings":"AAUO,OAAAA,OAAA;AAAA,SAAA,SAAAC,SAAA;AAAA,MAAMC,IAA6CC,CAAUA,MAAA;AAC5D,QAAA;AAAA,IAAEC,OAAAA;AAAAA,IAAOC,OAAAA;AAAAA,IAAOC,SAAAA,IAAUA,MAAM;AAAA,IAAC;AAAA,IAAGC,KAAAA;AAAAA,EAAAA,IAAQJ;AAEhDK,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IACEC,WAAU;AAAA,IACVJ,SAAAA;AAAAA,EAECD,GAAAA,KAASI,gBAAAA,EAAAA,cAAA,QAAA;AAAA,IAAMC,WAAU;AAAA,IAA+CC,OAAO;AAAA,MAAEC,iBAAiBP;AAAAA,IAAAA;AAAAA,EAAe,CAAA,GAClHG,gBAAAA,EAAAC,cAAML,OAAAA,MAAAA,CAAW,GAChBG,KAAOE,gBAAAA,EAAAA,cAACR,GAAK;AAAA,IAACG,OAAOG;AAAAA,EAAAA,CAAM,CACzB;AAET;"}
package/dist/index19.js CHANGED
@@ -1,22 +1,62 @@
1
- import { j as o } from "./index24.js";
2
- import { Tag as n } from "./index8.js";
3
- const i = (s) => {
4
- const { label: r, color: e, onClick: a = () => {
5
- }, tag: l } = s;
6
- return /* @__PURE__ */ o.jsxs(
7
- "div",
8
- {
9
- className: "flex items-center gap-2",
10
- onClick: a,
11
- children: [
12
- e && /* @__PURE__ */ o.jsx("span", { className: "w-[15px] h-[15px] rounded-[3px] inline-block", style: { backgroundColor: e } }),
13
- /* @__PURE__ */ o.jsx("div", { children: r }),
14
- l && /* @__PURE__ */ o.jsx(n, { label: l })
15
- ]
16
- }
17
- );
1
+ var $ = Object.defineProperty, k = Object.defineProperties;
2
+ var V = Object.getOwnPropertyDescriptors;
3
+ var w = Object.getOwnPropertySymbols;
4
+ var I = Object.prototype.hasOwnProperty, O = Object.prototype.propertyIsEnumerable;
5
+ var y = (e, t, o) => t in e ? $(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o, C = (e, t) => {
6
+ for (var o in t || (t = {}))
7
+ I.call(t, o) && y(e, o, t[o]);
8
+ if (w)
9
+ for (var o of w(t))
10
+ O.call(t, o) && y(e, o, t[o]);
11
+ return e;
12
+ }, D = (e, t) => k(e, V(t));
13
+ import r, { useState as g, useRef as R } from "react";
14
+ import { Popover as T } from "./index13.js";
15
+ import { Icon as _ } from "./index4.js";
16
+ const q = (e) => {
17
+ const [t, o] = g(!1), [d, S] = g(() => (e == null ? void 0 : e.defaultSelectedValue) || {}), u = R(null), {
18
+ selectBy: i = "",
19
+ optionsUniqueBy: c = "",
20
+ displaySelected: E = !1,
21
+ dropDownOptions: m,
22
+ defaultText: f = "Select"
23
+ } = e, h = (n) => {
24
+ var l, a;
25
+ S(n), (l = u.current) == null || l.togglePopover(), (a = e == null ? void 0 : e.onOptionClick) == null || a.call(e, n);
26
+ }, v = (n) => e != null && e.renderOptionChip ? e == null ? void 0 : e.renderOptionChip(n) : /* @__PURE__ */ r.createElement("span", {
27
+ className: "option-chip"
28
+ }, n[i] || f), x = (n) => {
29
+ const l = n[i], a = d[i] || f, P = c != null && c.length ? n[c] == d[c] : !0, s = E && l === a && P;
30
+ return /* @__PURE__ */ r.createElement("div", {
31
+ key: `$drop-option-${l}`,
32
+ className: `option px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between ${s ? "selected" : ""}`,
33
+ onClick: () => h(n)
34
+ }, v(D(C({}, n), {
35
+ isOptionSelected: s
36
+ })), s && /* @__PURE__ */ r.createElement("div", null, "✓"));
37
+ }, b = () => /* @__PURE__ */ r.createElement("div", {
38
+ className: "dropdown-content dropdown-options"
39
+ }, m == null ? void 0 : m.map((n) => x(n))), N = () => {
40
+ const l = `dropdown-src-element flex px-3 py-2 border rounded-md ${t ? "border-[var(--color-gray-900)]" : "border-[var(--color-gray-200)]"}`;
41
+ return /* @__PURE__ */ r.createElement("div", {
42
+ className: l
43
+ }, v(d), /* @__PURE__ */ r.createElement(_, {
44
+ name: "down",
45
+ className: `ml-auto ${t ? "rotate-180" : ""} transition-transform`
46
+ }));
47
+ };
48
+ return /* @__PURE__ */ r.createElement("div", {
49
+ className: "se-design-dropdown-container",
50
+ style: e == null ? void 0 : e.style
51
+ }, /* @__PURE__ */ r.createElement(T, {
52
+ ref: u,
53
+ renderPopoverContents: b,
54
+ contentWidth: "full",
55
+ renderPopoverSrcElement: N,
56
+ onPopoverToggle: (n) => o(n)
57
+ }));
18
58
  };
19
59
  export {
20
- i as ColorCodedLabel
60
+ q as Dropdown
21
61
  };
22
62
  //# sourceMappingURL=index19.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index19.js","sources":["../src/components/ColorCodedLabel/index.tsx"],"sourcesContent":["import { FC } from 'react';\nimport { Tag } from 'src/components/Tag';\n\nexport type ColorCodedLabelProps = {\n label: string;\n tag?: string;\n color?: string;\n onClick?: () => void;\n};\n\nexport const ColorCodedLabel: FC<ColorCodedLabelProps> = (props) => {\n const { label, color, onClick = () => {}, tag } = props;\n return (\n <div\n className=\"flex items-center gap-2\"\n onClick={onClick}\n >\n {color && <span className=\"w-[15px] h-[15px] rounded-[3px] inline-block\" style={{ backgroundColor: color }}></span>}\n <div>{label}</div>\n {tag && <Tag label={tag} />}\n </div>\n );\n};\n"],"names":["jsxRuntimeExports","Tag","ColorCodedLabel","props","label","color","onClick","tag","jsxs","jsx"],"mappings":"AAUa,SAAA,KAAAA,SAAA;AAAA,SAAA,OAAAC,SAAA;AAAA,MAAAC,IAA4C,CAACC,MAAU;AAClE,QAAM,EAAE,OAAAC,GAAO,OAAAC,GAAO,SAAAC,IAAU,MAAM;AAAA,EAAA,GAAI,KAAAC,EAAQ,IAAAJ;AAEhD,SAAAK,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAAF;AAAA,MAEC,UAAA;AAAA,QAASD,KAAAI,gBAAAA,EAAAA,IAAC,UAAK,WAAU,gDAA+C,OAAO,EAAE,iBAAiBJ,KAAS;AAAA,QAC5GI,gBAAAA,EAAAA,IAAC,SAAK,UAAML,EAAA,CAAA;AAAA,QACXG,KAAOE,gBAAAA,EAAAA,IAACR,GAAI,EAAA,OAAOM,EAAK,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAC3B;AAEJ;"}
1
+ {"version":3,"file":"index19.js","sources":["../src/components/Dropdown/index.tsx"],"sourcesContent":["import React, { FC, useState, useRef } from 'react';\n\nimport { Popover, PopoverHandle } from 'src/components/Popover';\nimport { Icon } from 'components/Icon';\n\ntype DropdownValue = {\n [key: string]: any;\n};\n\ntype DropdownProps = {\n label?: string;\n type: 'select';\n dropDownOptions?: DropdownValue[];\n defaultText?: string;\n selectBy?: string;\n optionsUniqueBy?: string;\n displaySelected?: boolean;\n defaultSelectedValue?: DropdownValue;\n onOptionClick?: (selectedValue: DropdownValue) => void;\n style?: React.CSSProperties;\n renderOptionChip?: (option: DropdownValue) => React.ReactNode;\n};\n\nexport const Dropdown: FC<DropdownProps> = (props) => {\n const [isDropDownOpen, setIsDropDownOpen] = useState(false);\n const [selectedDropDownValue, setSelectedDropDownValue] = useState<DropdownValue>(() => props?.defaultSelectedValue || {});\n const popoverRef = useRef<HTMLDivElement & PopoverHandle>(null);\n\n const { selectBy = '', optionsUniqueBy = '', displaySelected = false, dropDownOptions, defaultText = 'Select' } = props;\n\n const handleDropDownOptionClick = (dropDownOption: any) => {\n setSelectedDropDownValue(dropDownOption);\n popoverRef.current?.togglePopover();\n props?.onOptionClick?.(dropDownOption);\n };\n\n const optionChip = (option: DropdownValue) => {\n if(props?.renderOptionChip) {\n return props?.renderOptionChip(option);\n }\n return <span className={`option-chip`}>{option[selectBy] || defaultText}</span>\n }\n\n const dropDownOptionJsx = (dropDownOption: DropdownValue) => {\n const optionTxt = dropDownOption[selectBy];\n const dropDownSelectedValue = selectedDropDownValue[selectBy] || defaultText;\n const selectByUniqueId = optionsUniqueBy?.length\n ? dropDownOption[optionsUniqueBy] == selectedDropDownValue[optionsUniqueBy]\n : true;\n const isOptionSelected = displaySelected && optionTxt === dropDownSelectedValue && selectByUniqueId;\n return <div\n key={`$drop-option-${optionTxt}`}\n className={`option px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between ${isOptionSelected ? 'selected' : ''}`}\n onClick={() => handleDropDownOptionClick(dropDownOption)}\n >\n {optionChip({...dropDownOption, isOptionSelected})}\n {isOptionSelected && <div>&#10003;</div>}\n </div>;\n }\n\n const renderDropdownContents = () => {\n return <div className=\"dropdown-content dropdown-options\">{dropDownOptions?.map((dropDownOption) => dropDownOptionJsx(dropDownOption))}</div>;\n };\n\n const renderDropdownSelect = () => {\n const borderColor = isDropDownOpen ? 'border-[var(--color-gray-900)]' : 'border-[var(--color-gray-200)]';\n const drowDownSelectClass = `dropdown-src-element flex px-3 py-2 border rounded-md ${borderColor}`;\n\n return <div className={drowDownSelectClass}>\n {optionChip(selectedDropDownValue)}\n <Icon name=\"down\" className={`ml-auto ${isDropDownOpen ? 'rotate-180' : ''} transition-transform`} />\n </div>;\n };\n\n return (\n <div className=\"se-design-dropdown-container\" style={props?.style}>\n <Popover ref={popoverRef} renderPopoverContents={renderDropdownContents} contentWidth={'full'} renderPopoverSrcElement={renderDropdownSelect} onPopoverToggle={(value) => setIsDropDownOpen(value)} />\n </div>\n );\n};\n"],"names":["React__default","useState","useRef","Popover","Icon","Dropdown","props","isDropDownOpen","setIsDropDownOpen","selectedDropDownValue","setSelectedDropDownValue","defaultSelectedValue","popoverRef","selectBy","optionsUniqueBy","displaySelected","dropDownOptions","defaultText","handleDropDownOptionClick","dropDownOption","_a","_b","current","togglePopover","onOptionClick","optionChip","option","renderOptionChip","React","createElement","className","dropDownOptionJsx","optionTxt","dropDownSelectedValue","selectByUniqueId","length","isOptionSelected","key","onClick","__spreadProps","__spreadValues","renderDropdownContents","map","renderDropdownSelect","drowDownSelectClass","name","style","ref","renderPopoverContents","contentWidth","renderPopoverSrcElement","onPopoverToggle","value"],"mappings":";;;;;;;;;;;;AAuBO,OAAAA,KAAA,YAAAC,GAAA,UAAAC,SAAA;AAAA,SAAA,WAAAC,SAAA;AAAA,SAAA,QAAAC,SAAA;AAAA,MAAMC,IAA+BC,CAAUA,MAAA;AACpD,QAAM,CAACC,GAAgBC,CAAiB,IAAIP,EAAS,EAAK,GACpD,CAACQ,GAAuBC,CAAwB,IAAIT,EAAwB,OAAMK,KAAAA,gBAAAA,EAAOK,yBAAwB,EAAE,GACnHC,IAAaV,EAAuC,IAAI,GAExD;AAAA,IAAEW,UAAAA,IAAW;AAAA,IAAIC,iBAAAA,IAAkB;AAAA,IAAIC,iBAAAA,IAAkB;AAAA,IAAOC,iBAAAA;AAAAA,IAAiBC,aAAAA,IAAc;AAAA,EAAA,IAAaX,GAE5GY,IAA4BA,CAACC,MAAwB;AAPtD,QAAAC,GAAAC;AAQHX,IAAAA,EAAyBS,CAAc,IACvCP,IAAAA,EAAWU,YAAXV,QAAAA,EAAoBW,kBACpBjB,IAAAA,KAAAA,gBAAAA,EAAOkB,kBAAPlB,QAAAA,EAAAA,KAAAA,GAAuBa;AAAAA,EACzB,GAEMM,IAAaA,CAACC,MACfpB,KAAAA,QAAAA,EAAOqB,mBACDrB,KAAAA,gBAAAA,EAAOqB,iBAAiBD,KAE1BE,gBAAAA,EAAAC,cAAA,QAAA;AAAA,IAAMC,WAAW;AAAA,EAAA,GAAgBJ,EAAOb,CAAQ,KAAKI,CAAkB,GAG1Ec,IAAoBA,CAACZ,MAAkC;AACrDa,UAAAA,IAAYb,EAAeN,CAAQ,GACnCoB,IAAwBxB,EAAsBI,CAAQ,KAAKI,GAC3DiB,IAAmBpB,KAAAA,QAAAA,EAAiBqB,SACtChB,EAAeL,CAAe,KAAKL,EAAsBK,CAAe,IACxE,IACEsB,IAAmBrB,KAAmBiB,MAAcC,KAAyBC;AAC5EN,WAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,MACLQ,KAAK,gBAAgBL,CAAS;AAAA,MAC9BF,WAAW,uFAAuFM,IAAmB,aAAa,EAAE;AAAA,MACpIE,SAASA,MAAMpB,EAA0BC,CAAc;AAAA,OAEtDM,EAAWc,EAAAC,EAAA,IAAIrB,IAAJ;AAAA,MAAoBiB,kBAAAA;AAAAA,IAAAA,EAAiB,GAChDA,KAAoBR,gBAAAA,EAAAC,cAAA,OAAA,MAAK,GAAa,CACpC;AAAA,EACP,GAEMY,IAAyBA,MACtBb,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GAAqCd,KAAAA,gBAAAA,EAAiB0B,IAAKvB,OAAmBY,EAAkBZ,CAAc,EAAQ,GAGxIwB,IAAuBA,MAAM;AAE3BC,UAAAA,IAAsB,yDADRrC,IAAiB,mCAAmC,gCACwB;AAEzFqB,WAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,MAAKC,WAAWc;AAAAA,OAClBnB,EAAWhB,CAAqB,GACjCmB,gBAAAA,EAAAC,cAACzB,GAAI;AAAA,MAACyC,MAAK;AAAA,MAAOf,WAAW,WAAWvB,IAAiB,eAAe,EAAE;AAAA,IAAA,CAA0B,CACjG;AAAA,EACT;AAGEqB,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,IAA+BgB,OAAOxC,KAAAA,gBAAAA,EAAOwC;AAAAA,EAAAA,GAC1DjB,gBAAAA,EAAAA,cAAC1B,GAAO;AAAA,IAAC4C,KAAKnC;AAAAA,IAAYoC,uBAAuBP;AAAAA,IAAwBQ,cAAc;AAAA,IAAQC,yBAAyBP;AAAAA,IAAsBQ,iBAAkBC,CAAU5C,MAAAA,EAAkB4C,CAAK;AAAA,EAAA,CAAI,CAClM;AAET;"}
package/dist/index20.js CHANGED
@@ -1,35 +1,138 @@
1
- import { j as n } from "./index24.js";
2
- import { useState as f, useRef as g } from "react";
3
- import { Popover as b } from "./index14.js";
4
- import { Icon as N } from "./index5.js";
5
- const I = (e) => {
6
- const [a, h] = f(!1), [c, v] = f(() => (e == null ? void 0 : e.defaultSelectedValue) || {}), u = g(null), { selectBy: d = "", optionsUniqueBy: r = "", displaySelected: w = !1, dropDownOptions: i, defaultText: m = "Select" } = e, j = (t) => {
7
- var o, l;
8
- v(t), (o = u.current) == null || o.togglePopup(), (l = e == null ? void 0 : e.onOptionClick) == null || l.call(e, t);
9
- }, x = (t) => e != null && e.renderOptionChip ? e == null ? void 0 : e.renderOptionChip(t) : /* @__PURE__ */ n.jsx("span", { className: "option-chip", children: t[d] || m }), C = (t) => {
10
- const o = t[d], l = c[d] || m, S = r != null && r.length ? t[r] == c[r] : !0, s = w && o === l && S;
11
- return /* @__PURE__ */ n.jsxs(
12
- "div",
13
- {
14
- className: `option px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between ${s ? "selected" : ""}`,
15
- onClick: () => j(t),
16
- children: [
17
- x({ ...t, isOptionSelected: s }),
18
- s && /* @__PURE__ */ n.jsx("div", { children: "✓" })
19
- ]
20
- },
21
- `$drop-option-${o}`
22
- );
23
- }, D = () => /* @__PURE__ */ n.jsx("div", { className: "dropdown-content dropdown-options", children: i == null ? void 0 : i.map((t) => C(t)) }), y = () => {
24
- const o = `dropdown-src-element flex px-3 py-2 border rounded-md ${a ? "border-[var(--color-gray-900)]" : "border-[var(--color-gray-200)]"}`;
25
- return /* @__PURE__ */ n.jsxs("div", { className: o, children: [
26
- x(c),
27
- /* @__PURE__ */ n.jsx(N, { name: "down", className: `ml-auto ${a ? "rotate-180" : ""} transition-transform` })
28
- ] });
1
+ import e from "react";
2
+ import { Popover as c } from "./index13.js";
3
+ const m = ({
4
+ menuItems: n,
5
+ onMenuItemClick: o,
6
+ activeItem: l = "",
7
+ variant: a = "primary",
8
+ className: C = "",
9
+ automationId: i = ""
10
+ }) => {
11
+ const s = () => {
12
+ switch (a) {
13
+ case "primary":
14
+ return /* @__PURE__ */ e.createElement("svg", {
15
+ xmlns: "http://www.w3.org/2000/svg",
16
+ width: "24",
17
+ height: "24",
18
+ viewBox: "0 0 24 24",
19
+ fill: "none"
20
+ }, /* @__PURE__ */ e.createElement("path", {
21
+ d: "M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z",
22
+ fill: "#5E6673"
23
+ }), /* @__PURE__ */ e.createElement("path", {
24
+ d: "M19 13C19.5523 13 20 12.5523 20 12C20 11.4477 19.5523 11 19 11C18.4477 11 18 11.4477 18 12C18 12.5523 18.4477 13 19 13Z",
25
+ fill: "#5E6673"
26
+ }), /* @__PURE__ */ e.createElement("path", {
27
+ d: "M5 13C5.55228 13 6 12.5523 6 12C6 11.4477 5.55228 11 5 11C4.44772 11 4 11.4477 4 12C4 12.5523 4.44772 13 5 13Z",
28
+ fill: "#5E6673"
29
+ }), /* @__PURE__ */ e.createElement("path", {
30
+ d: "M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z",
31
+ stroke: "#5E6673",
32
+ "stroke-linecap": "round",
33
+ "stroke-linejoin": "round"
34
+ }), /* @__PURE__ */ e.createElement("path", {
35
+ d: "M19 13C19.5523 13 20 12.5523 20 12C20 11.4477 19.5523 11 19 11C18.4477 11 18 11.4477 18 12C18 12.5523 18.4477 13 19 13Z",
36
+ stroke: "#5E6673",
37
+ "stroke-linecap": "round",
38
+ "stroke-linejoin": "round"
39
+ }), /* @__PURE__ */ e.createElement("path", {
40
+ d: "M5 13C5.55228 13 6 12.5523 6 12C6 11.4477 5.55228 11 5 11C4.44772 11 4 11.4477 4 12C4 12.5523 4.44772 13 5 13Z",
41
+ stroke: "#5E6673",
42
+ "stroke-linecap": "round",
43
+ "stroke-linejoin": "round"
44
+ }));
45
+ case "secondary":
46
+ return /* @__PURE__ */ e.createElement("svg", {
47
+ xmlns: "http://www.w3.org/2000/svg",
48
+ width: "24",
49
+ height: "24",
50
+ viewBox: "0 0 24 24",
51
+ fill: "none"
52
+ }, /* @__PURE__ */ e.createElement("path", {
53
+ d: "M12 14C12.5523 14 13 13.5523 13 13C13 12.4477 12.5523 12 12 12C11.4477 12 11 12.4477 11 13C11 13.5523 11.4477 14 12 14Z",
54
+ fill: "#1088E7"
55
+ }), /* @__PURE__ */ e.createElement("path", {
56
+ d: "M19 14C19.5523 14 20 13.5523 20 13C20 12.4477 19.5523 12 19 12C18.4477 12 18 12.4477 18 13C18 13.5523 18.4477 14 19 14Z",
57
+ fill: "#1088E7"
58
+ }), /* @__PURE__ */ e.createElement("path", {
59
+ d: "M5 14C5.55228 14 6 13.5523 6 13C6 12.4477 5.55228 12 5 12C4.44772 12 4 12.4477 4 13C4 13.5523 4.44772 14 5 14Z",
60
+ fill: "#1088E7"
61
+ }), /* @__PURE__ */ e.createElement("path", {
62
+ d: "M12 14C12.5523 14 13 13.5523 13 13C13 12.4477 12.5523 12 12 12C11.4477 12 11 12.4477 11 13C11 13.5523 11.4477 14 12 14Z",
63
+ stroke: "#1088E7",
64
+ strokeLinecap: "round",
65
+ strokeLinejoin: "round"
66
+ }), /* @__PURE__ */ e.createElement("path", {
67
+ d: "M19 14C19.5523 14 20 13.5523 20 13C20 12.4477 19.5523 12 19 12C18.4477 12 18 12.4477 18 13C18 13.5523 18.4477 14 19 14Z",
68
+ stroke: "#1088E7",
69
+ strokeLinecap: "round",
70
+ strokeLinejoin: "round"
71
+ }), /* @__PURE__ */ e.createElement("path", {
72
+ d: "M5 14C5.55228 14 6 13.5523 6 13C6 12.4477 5.55228 12 5 12C4.44772 12 4 12.4477 4 13C4 13.5523 4.44772 14 5 14Z",
73
+ stroke: "#1088E7",
74
+ strokeLinecap: "round",
75
+ strokeLinejoin: "round"
76
+ }));
77
+ default:
78
+ return /* @__PURE__ */ e.createElement("svg", {
79
+ xmlns: "http://www.w3.org/2000/svg",
80
+ width: "24",
81
+ height: "24",
82
+ viewBox: "0 0 24 24",
83
+ fill: "none"
84
+ }, /* @__PURE__ */ e.createElement("path", {
85
+ d: "M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z",
86
+ fill: "#5E6673"
87
+ }), /* @__PURE__ */ e.createElement("path", {
88
+ d: "M19 13C19.5523 13 20 12.5523 20 12C20 11.4477 19.5523 11 19 11C18.4477 11 18 11.4477 18 12C18 12.5523 18.4477 13 19 13Z",
89
+ fill: "#5E6673"
90
+ }), /* @__PURE__ */ e.createElement("path", {
91
+ d: "M5 13C5.55228 13 6 12.5523 6 12C6 11.4477 5.55228 11 5 11C4.44772 11 4 11.4477 4 12C4 12.5523 4.44772 13 5 13Z",
92
+ fill: "#5E6673"
93
+ }), /* @__PURE__ */ e.createElement("path", {
94
+ d: "M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z",
95
+ stroke: "#5E6673",
96
+ "stroke-linecap": "round",
97
+ "stroke-linejoin": "round"
98
+ }), /* @__PURE__ */ e.createElement("path", {
99
+ d: "M19 13C19.5523 13 20 12.5523 20 12C20 11.4477 19.5523 11 19 11C18.4477 11 18 11.4477 18 12C18 12.5523 18.4477 13 19 13Z",
100
+ stroke: "#5E6673",
101
+ "stroke-linecap": "round",
102
+ "stroke-linejoin": "round"
103
+ }), /* @__PURE__ */ e.createElement("path", {
104
+ d: "M5 13C5.55228 13 6 12.5523 6 12C6 11.4477 5.55228 11 5 11C4.44772 11 4 11.4477 4 12C4 12.5523 4.44772 13 5 13Z",
105
+ stroke: "#5E6673",
106
+ "stroke-linecap": "round",
107
+ "stroke-linejoin": "round"
108
+ }));
109
+ }
29
110
  };
30
- return /* @__PURE__ */ n.jsx("div", { className: "dropdown-container", style: e == null ? void 0 : e.style, children: /* @__PURE__ */ n.jsx(b, { ref: u, renderPopoverContents: D, contentWidth: "full", renderPopoverSrcElement: y, onPopoverToggle: (t) => h(t) }) });
111
+ return /* @__PURE__ */ e.createElement(c, {
112
+ className: C,
113
+ position: "bottom-left",
114
+ automationId: i,
115
+ renderPopoverSrcElement: ({
116
+ displayPopover: r
117
+ }) => /* @__PURE__ */ e.createElement("div", {
118
+ className: `se-design-kebab-menu ${r ? "bg-[var(--color-blue-100)]" : ""} hover:bg-[var(--color-blue-100)] rounded-[4px] transition-all duration-300 w-max`
119
+ }, s()),
120
+ renderPopoverContents: ({
121
+ closePopoverCb: r
122
+ }) => /* @__PURE__ */ e.createElement("div", {
123
+ className: "min-w-[212px] px-1 py-2"
124
+ }, n.map((t, d) => /* @__PURE__ */ e.createElement("div", {
125
+ key: d,
126
+ className: "w-full text-left",
127
+ onClick: () => {
128
+ o && !t.isDisabled && o(t), !t.isDisabled && r();
129
+ }
130
+ }, /* @__PURE__ */ e.createElement("p", {
131
+ className: `py-2 px-1 hover:bg-[var(--color-blue-100)] rounded-[6px] ${l.toLowerCase() === t.label.toLowerCase() ? "bg-[var(--color-blue-100)]" : ""} ${t.isDisabled ? "text-[var(--color-gray-600)] hover:bg-transparent cursor-not-allowed" : ""}`
132
+ }, t.label))))
133
+ });
31
134
  };
32
135
  export {
33
- I as Dropdown
136
+ m as KebabMenu
34
137
  };
35
138
  //# sourceMappingURL=index20.js.map