@anoki/fse-ui 1.0.736 → 1.0.738
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.cjs15.js +1 -1
- package/dist/index.cjs15.js.map +1 -1
- package/dist/index.cjs258.js +1 -1
- package/dist/index.cjs266.js +1 -1
- package/dist/index.cjs275.js +1 -1
- package/dist/index.cjs325.js +1 -1
- package/dist/index.cjs353.js +1 -1
- package/dist/index.cjs354.js +1 -1
- package/dist/index.cjs365.js +1 -1
- package/dist/index.cjs383.js +1 -1
- package/dist/index.cjs384.js +1 -1
- package/dist/index.cjs385.js +1 -1
- package/dist/index.cjs386.js +1 -1
- package/dist/index.cjs392.js +1 -1
- package/dist/index.cjs393.js +1 -1
- package/dist/index.cjs395.js +2 -0
- package/dist/index.cjs395.js.map +1 -0
- package/dist/index.cjs396.js +2 -0
- package/dist/index.cjs396.js.map +1 -0
- package/dist/{index.cjs402.js → index.cjs397.js} +2 -2
- package/dist/{index.cjs402.js.map → index.cjs397.js.map} +1 -1
- package/dist/{index.cjs403.js → index.cjs398.js} +1 -1
- package/dist/{index.cjs403.js.map → index.cjs398.js.map} +1 -1
- package/dist/{index.cjs404.js → index.cjs399.js} +1 -1
- package/dist/{index.cjs404.js.map → index.cjs399.js.map} +1 -1
- package/dist/index.cjs400.js +1 -1
- package/dist/index.cjs400.js.map +1 -1
- package/dist/index.cjs401.js +1 -1
- package/dist/index.cjs401.js.map +1 -1
- package/dist/index.cjs419.js +1 -1
- package/dist/index.cjs419.js.map +1 -1
- package/dist/index.cjs420.js +1 -1
- package/dist/index.cjs420.js.map +1 -1
- package/dist/index.cjs421.js +1 -1
- package/dist/index.cjs421.js.map +1 -1
- package/dist/index.cjs422.js +1 -1
- package/dist/index.cjs422.js.map +1 -1
- package/dist/index.cjs423.js +1 -1
- package/dist/index.cjs423.js.map +1 -1
- package/dist/index.cjs424.js +2 -0
- package/dist/index.cjs424.js.map +1 -0
- package/dist/index.cjs425.js +1 -1
- package/dist/index.cjs434.js +1 -1
- package/dist/index.cjs436.js +1 -1
- package/dist/index.cjs441.js +1 -38
- package/dist/index.cjs441.js.map +1 -1
- package/dist/index.cjs442.js +38 -1
- package/dist/index.cjs442.js.map +1 -1
- package/dist/index.cjs443.js +1 -1
- package/dist/index.cjs443.js.map +1 -1
- package/dist/index.cjs444.js +1 -1
- package/dist/index.cjs444.js.map +1 -1
- package/dist/index.cjs445.js +1 -1
- package/dist/index.cjs445.js.map +1 -1
- package/dist/index.cjs454.js +1 -1
- package/dist/index.cjs464.js +1 -1
- package/dist/index.cjs465.js +1 -27
- package/dist/index.cjs465.js.map +1 -1
- package/dist/index.cjs466.js +1 -1
- package/dist/index.cjs466.js.map +1 -1
- package/dist/index.cjs467.js +1 -1
- package/dist/index.cjs467.js.map +1 -1
- package/dist/index.cjs468.js +1 -1
- package/dist/index.cjs468.js.map +1 -1
- package/dist/index.cjs469.js +27 -1
- package/dist/index.cjs469.js.map +1 -1
- package/dist/index.cjs470.js +1 -1
- package/dist/index.cjs470.js.map +1 -1
- package/dist/index.cjs94.js +1 -1
- package/dist/index.cjs94.js.map +1 -1
- package/dist/index.es15.js +24 -24
- package/dist/index.es15.js.map +1 -1
- package/dist/index.es258.js +7 -7
- package/dist/index.es266.js +1 -1
- package/dist/index.es275.js +1 -1
- package/dist/index.es325.js +1 -1
- package/dist/index.es353.js +2 -2
- package/dist/index.es354.js +3 -3
- package/dist/index.es365.js +1 -1
- package/dist/index.es383.js +1 -1
- package/dist/index.es384.js +1 -1
- package/dist/index.es385.js +12 -12
- package/dist/index.es386.js +1 -1
- package/dist/index.es392.js +1 -1
- package/dist/index.es393.js +1 -1
- package/dist/index.es395.js +128 -0
- package/dist/index.es395.js.map +1 -0
- package/dist/index.es396.js +138 -0
- package/dist/index.es396.js.map +1 -0
- package/dist/{index.es402.js → index.es397.js} +2 -2
- package/dist/{index.es402.js.map → index.es397.js.map} +1 -1
- package/dist/{index.es403.js → index.es398.js} +1 -1
- package/dist/{index.es403.js.map → index.es398.js.map} +1 -1
- package/dist/{index.es404.js → index.es399.js} +1 -1
- package/dist/{index.es404.js.map → index.es399.js.map} +1 -1
- package/dist/index.es400.js +47 -122
- package/dist/index.es400.js.map +1 -1
- package/dist/index.es401.js +47 -129
- package/dist/index.es401.js.map +1 -1
- package/dist/index.es419.js +10 -45
- package/dist/index.es419.js.map +1 -1
- package/dist/index.es420.js +45 -7
- package/dist/index.es420.js.map +1 -1
- package/dist/index.es421.js +7 -217
- package/dist/index.es421.js.map +1 -1
- package/dist/index.es422.js +203 -163
- package/dist/index.es422.js.map +1 -1
- package/dist/index.es423.js +177 -3
- package/dist/index.es423.js.map +1 -1
- package/dist/index.es424.js +7 -0
- package/dist/index.es424.js.map +1 -0
- package/dist/index.es425.js +1 -1
- package/dist/index.es434.js +1 -1
- package/dist/index.es436.js +4 -4
- package/dist/index.es441.js +65 -69
- package/dist/index.es441.js.map +1 -1
- package/dist/index.es442.js +68 -8
- package/dist/index.es442.js.map +1 -1
- package/dist/index.es443.js +9 -14
- package/dist/index.es443.js.map +1 -1
- package/dist/index.es444.js +14 -62
- package/dist/index.es444.js.map +1 -1
- package/dist/index.es445.js +61 -64
- package/dist/index.es445.js.map +1 -1
- package/dist/index.es454.js +2 -2
- package/dist/index.es464.js +3 -3
- package/dist/index.es465.js +9 -3674
- package/dist/index.es465.js.map +1 -1
- package/dist/index.es466.js +178 -2
- package/dist/index.es466.js.map +1 -1
- package/dist/index.es467.js +3 -9
- package/dist/index.es467.js.map +1 -1
- package/dist/index.es468.js +126 -171
- package/dist/index.es468.js.map +1 -1
- package/dist/index.es469.js +3674 -3
- package/dist/index.es469.js.map +1 -1
- package/dist/index.es470.js +2 -133
- package/dist/index.es470.js.map +1 -1
- package/dist/index.es94.js +33 -32
- package/dist/index.es94.js.map +1 -1
- package/package.json +1 -1
- package/dist/index.cjs405.js +0 -2
- package/dist/index.cjs405.js.map +0 -1
- package/dist/index.cjs406.js +0 -2
- package/dist/index.cjs406.js.map +0 -1
- package/dist/index.cjs418.js +0 -2
- package/dist/index.cjs418.js.map +0 -1
- package/dist/index.es405.js +0 -53
- package/dist/index.es405.js.map +0 -1
- package/dist/index.es406.js +0 -56
- package/dist/index.es406.js.map +0 -1
- package/dist/index.es418.js +0 -14
- package/dist/index.es418.js.map +0 -1
- /package/dist/components/ui/{ConsentModal/ConsentModalContent/ConsentModalContent.css → DoctorConfirmModal/DoctorConfirmModalContent/DoctorConfirmModalContent.css} +0 -0
package/dist/index.cjs470.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e={exports:{}};exports.__module=e;
|
|
2
2
|
//# sourceMappingURL=index.cjs470.js.map
|
package/dist/index.cjs470.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs470.js","sources":[
|
|
1
|
+
{"version":3,"file":"index.cjs470.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/index.cjs94.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/CardFile/CardFile.css');const e=require("./index.cjs212.js");;/* empty css */const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/CardFile/CardFile.css');const e=require("./index.cjs212.js");;/* empty css */const d=require("./index.cjs25.js"),a=require("./index.cjs36.js"),x=require("./index.cjs213.js"),c=require("./index.cjs159.js"),p=require("./index.cjs164.js"),j=require("./index.cjs132.js");var l=(t=>(t.DOWNLOAD="download",t.GOTO="goto",t.EXTERNAL="external",t))(l||{});function u({title:t,description:i,issued_at:n,file:r,action:s}){const o=s.type==="download"?"p-x16":"p-x24";return e.jsxRuntimeExports.jsxs("div",{className:"card-file shadow rounded h-100 w-100 bg-white",children:[e.jsxRuntimeExports.jsxs("div",{className:x.clsx("top-container",o),children:[s.type==="download"&&e.jsxRuntimeExports.jsx("div",{className:"icon-wrapper",children:e.jsxRuntimeExports.jsx(c.File,{height:27,width:27})}),e.jsxRuntimeExports.jsxs("div",{className:"content-container",children:[e.jsxRuntimeExports.jsxs("div",{children:[e.jsxRuntimeExports.jsx("h4",{className:"card-file-title text-slate-20 mt-x8",children:t}),r&&e.jsxRuntimeExports.jsxs("p",{className:"file-type text-muted",children:[`${r.type} | `,r.size]})]}),i&&e.jsxRuntimeExports.jsx("p",{className:"description text-slate-28",children:i}),n&&e.jsxRuntimeExports.jsx("p",{className:"description text-slate-28",children:n})]})]}),e.jsxRuntimeExports.jsx("div",{className:x.clsx("card-file-footer py-x12 px-x16",s.type),children:s.type==="download"?e.jsxRuntimeExports.jsxs(d.Button,{className:"bg-transparent download-button",asLink:"a",target:"_blank",href:s.link.link,children:[e.jsxRuntimeExports.jsx(p.Download,{}),s.link.title]}):s.type==="goto"?e.jsxRuntimeExports.jsx(a.ArrowLink,{href:s.link.link,children:s.link.title}):e.jsxRuntimeExports.jsx(j.ExternalLink,{color:"primary",height:32,width:32})})]})}exports.CardFile=u;exports.CardFileActionTypeEnum=l;
|
|
2
2
|
//# sourceMappingURL=index.cjs94.js.map
|
package/dist/index.cjs94.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs94.js","sources":["../src/components/ui/CardFile/index.tsx"],"sourcesContent":["import \"./CardFile.scss\";\nimport { GetValues, Link } from \"@anoki/fse-common\";\nimport { Download, ExternalLink, File } from \"@/icons\";\nimport { Button } from \"../Button\";\nimport { ArrowLink } from \"../ArrowLink\";\nimport clsx from \"clsx\";\n\nexport enum CardFileActionTypeEnum {\n DOWNLOAD = \"download\",\n GOTO = \"goto\",\n EXTERNAL = \"external\",\n}\n\nexport type CardFileActionTypeTypes = GetValues<typeof CardFileActionTypeEnum>;\n\nexport type CardFileProps = {\n title: string;\n description?: string;\n issued_at: string;\n file?: {\n type: string;\n size: string;\n };\n action: {\n type: CardFileActionTypeTypes;\n link: Link;\n };\n};\n\nexport function CardFile({\n title,\n description,\n issued_at,\n file,\n action,\n}: CardFileProps) {\n return (\n <div className=\"card-file shadow rounded h-100 w-100 bg-white\">\n <div className
|
|
1
|
+
{"version":3,"file":"index.cjs94.js","sources":["../src/components/ui/CardFile/index.tsx"],"sourcesContent":["import \"./CardFile.scss\";\nimport { GetValues, Link } from \"@anoki/fse-common\";\nimport { Download, ExternalLink, File } from \"@/icons\";\nimport { Button } from \"../Button\";\nimport { ArrowLink } from \"../ArrowLink\";\nimport clsx from \"clsx\";\n\nexport enum CardFileActionTypeEnum {\n DOWNLOAD = \"download\",\n GOTO = \"goto\",\n EXTERNAL = \"external\",\n}\n\nexport type CardFileActionTypeTypes = GetValues<typeof CardFileActionTypeEnum>;\n\nexport type CardFileProps = {\n title: string;\n description?: string;\n issued_at: string;\n file?: {\n type: string;\n size: string;\n };\n action: {\n type: CardFileActionTypeTypes;\n link: Link;\n };\n};\n\nexport function CardFile({\n title,\n description,\n issued_at,\n file,\n action,\n}: CardFileProps) {\n const padding = action.type === \"download\" ? \"p-x16\" : \"p-x24\";\n return (\n <div className=\"card-file shadow rounded h-100 w-100 bg-white\">\n <div className={clsx(\"top-container\", padding)}>\n {action.type === \"download\" && (\n <div className=\"icon-wrapper\">\n <File height={27} width={27} />\n </div>\n )}\n <div className=\"content-container\">\n <div>\n <h4 className=\"card-file-title text-slate-20 mt-x8\">{title}</h4>\n {file && (\n <p className=\"file-type text-muted\">\n {`${file.type} | `}\n {file.size}\n </p>\n )}\n </div>\n {description && (\n <p className=\"description text-slate-28\">{description}</p>\n )}\n {issued_at && (\n <p className=\"description text-slate-28\">{issued_at}</p>\n )}\n </div>\n </div>\n <div className={clsx(\"card-file-footer py-x12 px-x16\", action.type)}>\n {action.type === \"download\" ? (\n <Button\n className=\"bg-transparent download-button\"\n asLink={\"a\"}\n target={\"_blank\"}\n href={action.link.link}\n >\n <Download />\n {action.link.title}\n </Button>\n ) : action.type === \"goto\" ? (\n <ArrowLink href={action.link.link}>{action.link.title}</ArrowLink>\n ) : (\n <ExternalLink color=\"primary\" height={32} width={32} />\n )}\n </div>\n </div>\n );\n}\n"],"names":["CardFileActionTypeEnum","CardFile","title","description","issued_at","file","action","padding","jsxs","clsx","jsx","File","Button","Download","ArrowLink","ExternalLink"],"mappings":"gVAOY,IAAAA,GAAAA,IACVA,EAAA,SAAW,WACXA,EAAA,KAAO,OACPA,EAAA,SAAW,WAHDA,IAAAA,GAAA,CAAA,CAAA,EAsBL,SAASC,EAAS,CACvB,MAAAC,EACA,YAAAC,EACA,UAAAC,EACA,KAAAC,EACA,OAAAC,CACF,EAAkB,CAChB,MAAMC,EAAUD,EAAO,OAAS,WAAa,QAAU,QAErD,OAAAE,EAAA,kBAAA,KAAC,MAAI,CAAA,UAAU,gDACb,SAAA,CAAAA,EAAA,kBAAA,KAAC,MAAI,CAAA,UAAWC,EAAK,KAAA,gBAAiBF,CAAO,EAC1C,SAAA,CAAAD,EAAO,OAAS,YACdI,EAAAA,kBAAAA,IAAA,MAAA,CAAI,UAAU,eACb,SAACA,EAAAA,kBAAAA,IAAAC,EAAAA,KAAA,CAAK,OAAQ,GAAI,MAAO,EAAI,CAAA,EAC/B,EAEFH,EAAAA,kBAAAA,KAAC,MAAI,CAAA,UAAU,oBACb,SAAA,CAAAA,yBAAC,MACC,CAAA,SAAA,CAACE,EAAA,kBAAA,IAAA,KAAA,CAAG,UAAU,sCAAuC,SAAMR,EAAA,EAC1DG,GACCG,EAAA,kBAAA,KAAC,IAAE,CAAA,UAAU,uBACV,SAAA,CAAA,GAAGH,EAAK,IAAI,MACZA,EAAK,IAAA,CACR,CAAA,CAAA,EAEJ,EACCF,GACCO,EAAA,kBAAA,IAAC,IAAE,CAAA,UAAU,4BAA6B,SAAYP,EAAA,EAEvDC,GACCM,EAAA,kBAAA,IAAC,IAAE,CAAA,UAAU,4BAA6B,SAAUN,CAAA,CAAA,CAAA,CAExD,CAAA,CAAA,EACF,EACAM,EAAAA,kBAAAA,IAAC,MAAI,CAAA,UAAWD,EAAAA,KAAK,iCAAkCH,EAAO,IAAI,EAC/D,SAAOA,EAAA,OAAS,WACfE,EAAA,kBAAA,KAACI,EAAA,OAAA,CACC,UAAU,iCACV,OAAQ,IACR,OAAQ,SACR,KAAMN,EAAO,KAAK,KAElB,SAAA,CAAAI,EAAA,kBAAA,IAACG,EAAS,SAAA,EAAA,EACTP,EAAO,KAAK,KAAA,CAAA,CACf,EACEA,EAAO,OAAS,+BACjBQ,EAAU,UAAA,CAAA,KAAMR,EAAO,KAAK,KAAO,SAAAA,EAAO,KAAK,MAAM,0BAErDS,EAAAA,aAAa,CAAA,MAAM,UAAU,OAAQ,GAAI,MAAO,EAAI,CAAA,CAEzD,CAAA,CAAA,EACF,CAEJ"}
|
package/dist/index.es15.js
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
1
|
import { j as e } from "./index.es212.js";
|
|
2
|
-
import { useState as
|
|
2
|
+
import { useState as w } from "react";
|
|
3
3
|
import { clsx as n } from "./index.es213.js";
|
|
4
4
|
import './components/ui/SearchGeneric/SearchGeneric.css';/* empty css */
|
|
5
5
|
import { useMediaQuery as B } from "./index.es220.js";
|
|
6
6
|
import { Close as E } from "./index.es134.js";
|
|
7
7
|
import { Col as M } from "./index.es10.js";
|
|
8
8
|
import { Button as R } from "./index.es25.js";
|
|
9
|
-
function
|
|
10
|
-
btnText:
|
|
11
|
-
helperText:
|
|
12
|
-
mobileHelperText:
|
|
13
|
-
value:
|
|
14
|
-
items:
|
|
15
|
-
setValue:
|
|
9
|
+
function J({
|
|
10
|
+
btnText: b,
|
|
11
|
+
helperText: u,
|
|
12
|
+
mobileHelperText: j = u,
|
|
13
|
+
value: v,
|
|
14
|
+
items: C,
|
|
15
|
+
setValue: l,
|
|
16
16
|
setTypedValue: h,
|
|
17
17
|
getSearchField: p,
|
|
18
18
|
getDisplayField: d = p,
|
|
19
19
|
onItemSelect: x,
|
|
20
|
-
minCharsToSearch:
|
|
21
|
-
className:
|
|
20
|
+
minCharsToSearch: N = 3,
|
|
21
|
+
className: y
|
|
22
22
|
}) {
|
|
23
|
-
const [r,
|
|
23
|
+
const [r, c] = w(v || ""), [f, a] = w([]), I = B("(min-width: 768px)"), g = (t) => {
|
|
24
24
|
const s = t.target.value;
|
|
25
|
-
if (
|
|
26
|
-
const
|
|
25
|
+
if (c(s), h && h(s), s.length >= N) {
|
|
26
|
+
const m = C.filter((i) => {
|
|
27
27
|
const o = p(i);
|
|
28
28
|
return o == null ? void 0 : o.toLowerCase().includes(s.toLowerCase());
|
|
29
29
|
});
|
|
30
|
-
a(
|
|
30
|
+
a(m);
|
|
31
31
|
} else
|
|
32
32
|
a([]);
|
|
33
33
|
}, L = (t) => {
|
|
34
34
|
const s = d(t);
|
|
35
|
-
|
|
35
|
+
c(s), l(s), a([]), x && x(t);
|
|
36
36
|
}, k = (t, s) => {
|
|
37
37
|
if (!s) return t;
|
|
38
|
-
const
|
|
39
|
-
return /* @__PURE__ */ e.jsx(e.Fragment, { children:
|
|
38
|
+
const m = t.split(new RegExp(`(${s})`, "gi"));
|
|
39
|
+
return /* @__PURE__ */ e.jsx(e.Fragment, { children: m.map(
|
|
40
40
|
(i, o) => i.toLowerCase() === s.toLowerCase() ? /* @__PURE__ */ e.jsx("span", { className: "text-primary fw-bold", children: i }, o) : i
|
|
41
41
|
) });
|
|
42
42
|
};
|
|
@@ -46,7 +46,7 @@ function H({
|
|
|
46
46
|
className: n(
|
|
47
47
|
"ui-search",
|
|
48
48
|
"br-x4 bg-border-secondary w-full",
|
|
49
|
-
|
|
49
|
+
y
|
|
50
50
|
),
|
|
51
51
|
children: [
|
|
52
52
|
/* @__PURE__ */ e.jsxs("div", { className: "position-relative", children: [
|
|
@@ -60,10 +60,10 @@ function H({
|
|
|
60
60
|
"fs-6 md-fs-custom text-slate-20 br-x4 w-full pl-x24",
|
|
61
61
|
r && r.length >= 3 && "has-clear-icon"
|
|
62
62
|
),
|
|
63
|
-
placeholder:
|
|
63
|
+
placeholder: I ? u : j,
|
|
64
64
|
"aria-label": "Barra di ricerca",
|
|
65
65
|
value: r,
|
|
66
|
-
onChange:
|
|
66
|
+
onChange: g,
|
|
67
67
|
maxLength: 30
|
|
68
68
|
}
|
|
69
69
|
),
|
|
@@ -72,7 +72,7 @@ function H({
|
|
|
72
72
|
{
|
|
73
73
|
className: "ui-clean-button",
|
|
74
74
|
onClick: () => {
|
|
75
|
-
|
|
75
|
+
c(""), a([]), l(""), g({ target: { value: "" } });
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
)
|
|
@@ -104,9 +104,9 @@ function H({
|
|
|
104
104
|
"bg-primary text-white fs-7 md-fs-6 fw-semibold br-x4"
|
|
105
105
|
),
|
|
106
106
|
onClick: () => {
|
|
107
|
-
a([]),
|
|
107
|
+
a([]), l(r);
|
|
108
108
|
},
|
|
109
|
-
children:
|
|
109
|
+
children: b
|
|
110
110
|
}
|
|
111
111
|
) })
|
|
112
112
|
]
|
|
@@ -114,6 +114,6 @@ function H({
|
|
|
114
114
|
);
|
|
115
115
|
}
|
|
116
116
|
export {
|
|
117
|
-
|
|
117
|
+
J as SearchGeneric
|
|
118
118
|
};
|
|
119
119
|
//# sourceMappingURL=index.es15.js.map
|
package/dist/index.es15.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es15.js","sources":["../src/components/ui/SearchGeneric/index.tsx"],"sourcesContent":["import { ChangeEvent, useState } from \"react\";\nimport clsx from \"clsx\";\nimport { Button, Col } from \"@/components\";\nimport { Close } from \"@/icons\";\nimport \"./SearchGeneric.scss\";\nimport { useMediaQuery } from \"@/hooks/useMediaQuery.ts\";\n\nexport type SearchGenericProps<T extends object> = {\n btnText: string;\n helperText: string;\n mobileHelperText?: string;\n value: string;\n items: T[];\n setValue: (value: string) => void;\n setTypedValue?: (value: string) => void;\n getSearchField: (item: T) => string;\n getDisplayField?: (item: T) => string;\n onItemSelect?: (item: T) => void;\n minCharsToSearch?: number;\n className?: string;\n};\n\nexport function SearchGeneric<T extends object>({\n btnText,\n helperText,\n mobileHelperText = helperText,\n value,\n items,\n setValue,\n setTypedValue,\n getSearchField,\n getDisplayField = getSearchField,\n onItemSelect,\n minCharsToSearch = 3,\n className,\n}: SearchGenericProps<T>) {\n const [valueInput, setValueInput] = useState<string>(value || \"\");\n const [filteredItems, setFilteredItems] = useState<T[]>([]);\n const isDesktop = useMediaQuery(\"(min-width: 768px)\");\n\n const handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {\n const inputValue = e.target.value;\n setValueInput(inputValue);\n if (setTypedValue) {\n setTypedValue(inputValue);\n }\n if (inputValue.length >= minCharsToSearch) {\n const results = items.filter((item) => {\n const searchField = getSearchField(item);\n return searchField?.toLowerCase().includes(inputValue.toLowerCase());\n });\n setFilteredItems(results);\n } else {\n setFilteredItems([]);\n }\n };\n\n const handleSelectItem = (item: T) => {\n const displayValue = getDisplayField(item);\n setValueInput(displayValue);\n setValue(displayValue);\n setFilteredItems([]);\n\n if (onItemSelect) {\n onItemSelect(item);\n }\n };\n\n const highlightMatch = (text: string, query: string) => {\n if (!query) return text;\n\n const parts = text.split(new RegExp(`(${query})`, \"gi\"));\n\n return (\n <>\n {parts.map((part, i) =>\n part.toLowerCase() === query.toLowerCase() ? (\n <span key={i} className=\"text-primary fw-bold\">\n {part}\n </span>\n ) : (\n part\n ),\n )}\n </>\n );\n };\n\n return (\n <div\n className={clsx(\n \"ui-search\",\n \"br-x4 bg-border-secondary w-full\",\n className,\n )}\n >\n <div className=\"position-relative\">\n <input\n id=\"search\"\n type=\"text\"\n className={clsx(\n \"ui-search-input\",\n \"fs-6 md-fs-custom text-slate-20 br-x4 w-full pl-x24\",\n valueInput && valueInput.length >= 3 && \"has-clear-icon\",\n )}\n placeholder={isDesktop ? helperText : mobileHelperText}\n aria-label=\"Barra di ricerca\"\n value={valueInput}\n onChange={handleInputChange}\n maxLength={30}\n />\n {valueInput && (\n <Close\n className=\"ui-clean-button\"\n onClick={() => {\n setValueInput(\"\");\n setFilteredItems([]);\n }}\n />\n )}\n </div>\n {filteredItems.length > 0 && (\n <div className=\"ui-wrap-list-item-search shadow position-absolute p-x24\">\n <Col\n gap={\"x24\"}\n fw={\"regular\"}\n text={\"secondary\"}\n fs={\"6\"}\n className=\"ui-list-item-search overflow-y-auto \"\n >\n {filteredItems.map((item, index) => (\n <div\n key={index}\n onClick={() => handleSelectItem(item)}\n className=\"hover:bg-primary\"\n >\n {highlightMatch(getDisplayField(item), valueInput)}\n </div>\n ))}\n </Col>\n </div>\n )}\n <div className={clsx(\"ui-div-btn\")}>\n <Button\n className={clsx(\n \"ui-btn-search\",\n \"bg-primary text-white fs-7 md-fs-6 fw-semibold br-x4\",\n )}\n onClick={() => {\n setFilteredItems([]);\n setValue(valueInput);\n }}\n >\n {btnText}\n </Button>\n </div>\n </div>\n );\n}\n"],"names":["SearchGeneric","btnText","helperText","mobileHelperText","value","items","setValue","setTypedValue","getSearchField","getDisplayField","onItemSelect","minCharsToSearch","className","valueInput","setValueInput","useState","filteredItems","setFilteredItems","isDesktop","useMediaQuery","handleInputChange","e","inputValue","results","item","searchField","handleSelectItem","displayValue","highlightMatch","text","query","parts","part","i","jsxs","clsx","jsx","Close","Col","index","Button"],"mappings":";;;;;;;;AAsBO,SAASA,EAAgC;AAAA,EAC9C,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,kBAAAC,IAAmBD;AAAA,EACnB,OAAAE;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,iBAAAC,IAAkBD;AAAA,EAClB,cAAAE;AAAA,EACA,kBAAAC,IAAmB;AAAA,EACnB,WAAAC;AACF,GAA0B;AACxB,QAAM,CAACC,GAAYC,CAAa,IAAIC,EAAiBX,KAAS,EAAE,GAC1D,CAACY,GAAeC,CAAgB,IAAIF,EAAc,CAAA,CAAE,GACpDG,IAAYC,EAAc,oBAAoB,GAE9CC,IAAoB,CAACC,MAAqC;AACxD,UAAAC,IAAaD,EAAE,OAAO;AAKxB,QAJJP,EAAcQ,CAAU,GACpBf,KACFA,EAAce,CAAU,GAEtBA,EAAW,UAAUX,GAAkB;AACzC,YAAMY,IAAUlB,EAAM,OAAO,CAACmB,MAAS;AAC/B,cAAAC,IAAcjB,EAAegB,CAAI;AACvC,eAAOC,KAAA,gBAAAA,EAAa,cAAc,SAASH,EAAW;MAAa,CACpE;AACD,MAAAL,EAAiBM,CAAO;AAAA,IAAA;AAExB,MAAAN,EAAiB,CAAA,CAAE;AAAA,EAEvB,GAEMS,IAAmB,CAACF,MAAY;AAC9B,UAAAG,IAAelB,EAAgBe,CAAI;AACzC,IAAAV,EAAca,CAAY,GAC1BrB,EAASqB,CAAY,GACrBV,EAAiB,CAAA,CAAE,GAEfP,KACFA,EAAac,CAAI;AAAA,EAErB,GAEMI,IAAiB,CAACC,GAAcC,MAAkB;AAClD,QAAA,CAACA,EAAc,QAAAD;AAEb,UAAAE,IAAQF,EAAK,MAAM,IAAI,OAAO,IAAIC,CAAK,KAAK,IAAI,CAAC;AAEvD,+CAEK,UAAMC,EAAA;AAAA,MAAI,CAACC,GAAMC,MAChBD,EAAK,YAAkB,MAAAF,EAAM,YAAY,0BACtC,QAAa,EAAA,WAAU,wBACrB,UAAAE,EAAA,GADQC,CAEX,IAEAD;AAAA,IAAA,GAGN;AAAA,EAEJ;AAGE,SAAAE,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACA;AAAA,QACAvB;AAAA,MACF;AAAA,MAEA,UAAA;AAAA,QAACsB,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAU,qBACb,UAAA;AAAA,UAAAE,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAG;AAAA,cACH,MAAK;AAAA,cACL,WAAWD;AAAA,gBACT;AAAA,gBACA;AAAA,gBACAtB,KAAcA,EAAW,UAAU,KAAK;AAAA,cAC1C;AAAA,cACA,aAAaK,IAAYhB,IAAaC;AAAA,cACtC,cAAW;AAAA,cACX,OAAOU;AAAA,cACP,UAAUO;AAAA,cACV,WAAW;AAAA,YAAA;AAAA,UACb;AAAA,UACCP,KACCuB,gBAAAA,EAAA;AAAA,YAACC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,SAAS,MAAM;AACb,gBAAAvB,EAAc,EAAE,GAChBG,EAAiB,CAAA,CAAE;AAAA,cAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"index.es15.js","sources":["../src/components/ui/SearchGeneric/index.tsx"],"sourcesContent":["import { ChangeEvent, useState } from \"react\";\nimport clsx from \"clsx\";\nimport { Button, Col } from \"@/components\";\nimport { Close } from \"@/icons\";\nimport \"./SearchGeneric.scss\";\nimport { useMediaQuery } from \"@/hooks/useMediaQuery.ts\";\n\nexport type SearchGenericProps<T extends object> = {\n btnText: string;\n helperText: string;\n mobileHelperText?: string;\n value: string;\n items: T[];\n setValue: (value: string) => void;\n setTypedValue?: (value: string) => void;\n getSearchField: (item: T) => string;\n getDisplayField?: (item: T) => string;\n onItemSelect?: (item: T) => void;\n minCharsToSearch?: number;\n className?: string;\n};\n\nexport function SearchGeneric<T extends object>({\n btnText,\n helperText,\n mobileHelperText = helperText,\n value,\n items,\n setValue,\n setTypedValue,\n getSearchField,\n getDisplayField = getSearchField,\n onItemSelect,\n minCharsToSearch = 3,\n className,\n}: SearchGenericProps<T>) {\n const [valueInput, setValueInput] = useState<string>(value || \"\");\n const [filteredItems, setFilteredItems] = useState<T[]>([]);\n const isDesktop = useMediaQuery(\"(min-width: 768px)\");\n\n const handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {\n const inputValue = e.target.value;\n setValueInput(inputValue);\n if (setTypedValue) {\n setTypedValue(inputValue);\n }\n if (inputValue.length >= minCharsToSearch) {\n const results = items.filter((item) => {\n const searchField = getSearchField(item);\n return searchField?.toLowerCase().includes(inputValue.toLowerCase());\n });\n setFilteredItems(results);\n } else {\n setFilteredItems([]);\n }\n };\n\n const handleSelectItem = (item: T) => {\n const displayValue = getDisplayField(item);\n setValueInput(displayValue);\n setValue(displayValue);\n setFilteredItems([]);\n\n if (onItemSelect) {\n onItemSelect(item);\n }\n };\n\n const highlightMatch = (text: string, query: string) => {\n if (!query) return text;\n\n const parts = text.split(new RegExp(`(${query})`, \"gi\"));\n\n return (\n <>\n {parts.map((part, i) =>\n part.toLowerCase() === query.toLowerCase() ? (\n <span key={i} className=\"text-primary fw-bold\">\n {part}\n </span>\n ) : (\n part\n ),\n )}\n </>\n );\n };\n\n return (\n <div\n className={clsx(\n \"ui-search\",\n \"br-x4 bg-border-secondary w-full\",\n className,\n )}\n >\n <div className=\"position-relative\">\n <input\n id=\"search\"\n type=\"text\"\n className={clsx(\n \"ui-search-input\",\n \"fs-6 md-fs-custom text-slate-20 br-x4 w-full pl-x24\",\n valueInput && valueInput.length >= 3 && \"has-clear-icon\",\n )}\n placeholder={isDesktop ? helperText : mobileHelperText}\n aria-label=\"Barra di ricerca\"\n value={valueInput}\n onChange={handleInputChange}\n maxLength={30}\n />\n {valueInput && (\n <Close\n className=\"ui-clean-button\"\n onClick={() => {\n setValueInput(\"\");\n setFilteredItems([]);\n setValue(\"\");\n handleInputChange({ target: { value: \"\" } } as any);\n }}\n />\n )}\n </div>\n {filteredItems.length > 0 && (\n <div className=\"ui-wrap-list-item-search shadow position-absolute p-x24\">\n <Col\n gap={\"x24\"}\n fw={\"regular\"}\n text={\"secondary\"}\n fs={\"6\"}\n className=\"ui-list-item-search overflow-y-auto \"\n >\n {filteredItems.map((item, index) => (\n <div\n key={index}\n onClick={() => handleSelectItem(item)}\n className=\"hover:bg-primary\"\n >\n {highlightMatch(getDisplayField(item), valueInput)}\n </div>\n ))}\n </Col>\n </div>\n )}\n <div className={clsx(\"ui-div-btn\")}>\n <Button\n className={clsx(\n \"ui-btn-search\",\n \"bg-primary text-white fs-7 md-fs-6 fw-semibold br-x4\",\n )}\n onClick={() => {\n setFilteredItems([]);\n setValue(valueInput);\n }}\n >\n {btnText}\n </Button>\n </div>\n </div>\n );\n}\n"],"names":["SearchGeneric","btnText","helperText","mobileHelperText","value","items","setValue","setTypedValue","getSearchField","getDisplayField","onItemSelect","minCharsToSearch","className","valueInput","setValueInput","useState","filteredItems","setFilteredItems","isDesktop","useMediaQuery","handleInputChange","e","inputValue","results","item","searchField","handleSelectItem","displayValue","highlightMatch","text","query","parts","part","i","jsxs","clsx","jsx","Close","Col","index","Button"],"mappings":"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"}
|
package/dist/index.es258.js
CHANGED
|
@@ -4,15 +4,15 @@ import { useComposedRefs as C } from "./index.es381.js";
|
|
|
4
4
|
import { createContextScope as B, createContext as H } from "./index.es382.js";
|
|
5
5
|
import { useId as x } from "./index.es386.js";
|
|
6
6
|
import { useControllableState as V } from "./index.es383.js";
|
|
7
|
-
import { DismissableLayer as q } from "./index.
|
|
8
|
-
import { FocusScope as K } from "./index.
|
|
9
|
-
import { Portal as U } from "./index.
|
|
7
|
+
import { DismissableLayer as q } from "./index.es395.js";
|
|
8
|
+
import { FocusScope as K } from "./index.es396.js";
|
|
9
|
+
import { Portal as U } from "./index.es397.js";
|
|
10
10
|
import { Presence as R } from "./index.es393.js";
|
|
11
11
|
import { Primitive as m } from "./index.es384.js";
|
|
12
|
-
import { useFocusGuards as Y } from "./index.
|
|
13
|
-
import Z from "./index.
|
|
14
|
-
import { hideOthers as z } from "./index.
|
|
15
|
-
import { createSlot as J } from "./index.
|
|
12
|
+
import { useFocusGuards as Y } from "./index.es398.js";
|
|
13
|
+
import Z from "./index.es399.js";
|
|
14
|
+
import { hideOthers as z } from "./index.es400.js";
|
|
15
|
+
import { createSlot as J } from "./index.es401.js";
|
|
16
16
|
import { j as i } from "./index.es212.js";
|
|
17
17
|
var _ = "Dialog", [N, he] = B(_), [Q, u] = N(_), P = (e) => {
|
|
18
18
|
const {
|
package/dist/index.es266.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { j as n } from "./index.es212.js";
|
|
2
2
|
import { clsx as r } from "./index.es213.js";
|
|
3
|
-
import './components/ui/
|
|
3
|
+
import './components/ui/DoctorConfirmModal/DoctorConfirmModalContent/DoctorConfirmModalContent.css';/* empty css */
|
|
4
4
|
const i = ({
|
|
5
5
|
overrideClassNames: o,
|
|
6
6
|
children: t
|
package/dist/index.es275.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { j as r } from "./index.es212.js";
|
|
2
2
|
import { clsx as m } from "./index.es213.js";
|
|
3
|
-
import './components/ui/
|
|
3
|
+
import './components/ui/DoctorConfirmModal/DoctorConfirmModalContent/DoctorConfirmModalContent.css';/* empty css */
|
|
4
4
|
const e = ({
|
|
5
5
|
overrideClassNames: o,
|
|
6
6
|
children: t
|
package/dist/index.es325.js
CHANGED
|
@@ -3,7 +3,7 @@ import { createContextScope as T } from "./index.es382.js";
|
|
|
3
3
|
import { useComposedRefs as A } from "./index.es381.js";
|
|
4
4
|
import { createDialogScope as v, Root as O, Portal as j, Overlay as b, WarningProvider as w, Content as M, Title as I, Description as L, Close as f, Trigger as $ } from "./index.es258.js";
|
|
5
5
|
import { composeEventHandlers as F } from "./index.es380.js";
|
|
6
|
-
import { createSlottable as G } from "./index.
|
|
6
|
+
import { createSlottable as G } from "./index.es401.js";
|
|
7
7
|
import { j as i } from "./index.es212.js";
|
|
8
8
|
var D = "AlertDialog", [W, te] = T(D, [
|
|
9
9
|
v
|
package/dist/index.es353.js
CHANGED
package/dist/index.es354.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as $ } from "./index.
|
|
2
|
-
import { c as F } from "./index.
|
|
3
|
-
import { m, a as E, f as T, h as S } from "./index.
|
|
1
|
+
import { c as $ } from "./index.es467.js";
|
|
2
|
+
import { c as F } from "./index.es465.js";
|
|
3
|
+
import { m, a as E, f as T, h as S } from "./index.es466.js";
|
|
4
4
|
function N(I) {
|
|
5
5
|
let {
|
|
6
6
|
swiper: e,
|
package/dist/index.es365.js
CHANGED
package/dist/index.es383.js
CHANGED
package/dist/index.es384.js
CHANGED
package/dist/index.es385.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import * as r from "react";
|
|
2
2
|
import { composeEventHandlers as M } from "./index.es380.js";
|
|
3
|
-
import { createCollection as Xe } from "./index.
|
|
3
|
+
import { createCollection as Xe } from "./index.es420.js";
|
|
4
4
|
import { useComposedRefs as k, composeRefs as He } from "./index.es381.js";
|
|
5
5
|
import { createContextScope as We } from "./index.es382.js";
|
|
6
|
-
import { useDirection as ze } from "./index.
|
|
7
|
-
import { DismissableLayer as Ze } from "./index.
|
|
8
|
-
import { useFocusGuards as $e } from "./index.
|
|
9
|
-
import { FocusScope as qe } from "./index.
|
|
10
|
-
import { createPopperScope as pe, Root as Je, Anchor as Qe, Content as et, Arrow as tt } from "./index.
|
|
11
|
-
import { Portal as nt } from "./index.
|
|
6
|
+
import { useDirection as ze } from "./index.es421.js";
|
|
7
|
+
import { DismissableLayer as Ze } from "./index.es395.js";
|
|
8
|
+
import { useFocusGuards as $e } from "./index.es398.js";
|
|
9
|
+
import { FocusScope as qe } from "./index.es396.js";
|
|
10
|
+
import { createPopperScope as pe, Root as Je, Anchor as Qe, Content as et, Arrow as tt } from "./index.es422.js";
|
|
11
|
+
import { Portal as nt } from "./index.es397.js";
|
|
12
12
|
import { Presence as H } from "./index.es393.js";
|
|
13
13
|
import { Primitive as N, dispatchDiscreteCustomEvent as ot } from "./index.es384.js";
|
|
14
|
-
import { createRovingFocusGroupScope as ve, Item as rt, Root as ct } from "./index.
|
|
15
|
-
import { createSlot as st } from "./index.
|
|
16
|
-
import { useCallbackRef as Me } from "./index.
|
|
17
|
-
import { hideOthers as at } from "./index.
|
|
18
|
-
import ut from "./index.
|
|
14
|
+
import { createRovingFocusGroupScope as ve, Item as rt, Root as ct } from "./index.es423.js";
|
|
15
|
+
import { createSlot as st } from "./index.es401.js";
|
|
16
|
+
import { useCallbackRef as Me } from "./index.es419.js";
|
|
17
|
+
import { hideOthers as at } from "./index.es400.js";
|
|
18
|
+
import ut from "./index.es399.js";
|
|
19
19
|
import { j as u } from "./index.es212.js";
|
|
20
20
|
var Q = ["Enter", " "], it = ["ArrowDown", "PageUp", "Home"], he = ["ArrowUp", "PageDown", "End"], lt = [...it, ...he], dt = {
|
|
21
21
|
ltr: [...Q, "ArrowRight"],
|
package/dist/index.es386.js
CHANGED
package/dist/index.es392.js
CHANGED
package/dist/index.es393.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as a from "react";
|
|
2
2
|
import { useComposedRefs as E } from "./index.es381.js";
|
|
3
|
-
import { useLayoutEffect as A } from "./index.
|
|
3
|
+
import { useLayoutEffect as A } from "./index.es424.js";
|
|
4
4
|
function T(n, e) {
|
|
5
5
|
return a.useReducer((r, t) => e[r][t] ?? r, n);
|
|
6
6
|
}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import * as n from "react";
|
|
2
|
+
import { composeEventHandlers as m } from "./index.es380.js";
|
|
3
|
+
import { Primitive as R, dispatchDiscreteCustomEvent as k } from "./index.es384.js";
|
|
4
|
+
import { useComposedRefs as g } from "./index.es381.js";
|
|
5
|
+
import { useCallbackRef as w } from "./index.es419.js";
|
|
6
|
+
import { useEscapeKeydown as U } from "./index.es425.js";
|
|
7
|
+
import { j as x } from "./index.es212.js";
|
|
8
|
+
var j = "DismissableLayer", p = "dismissableLayer.update", z = "dismissableLayer.pointerDownOutside", H = "dismissableLayer.focusOutside", L, T = n.createContext({
|
|
9
|
+
layers: /* @__PURE__ */ new Set(),
|
|
10
|
+
layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
|
|
11
|
+
branches: /* @__PURE__ */ new Set()
|
|
12
|
+
}), M = n.forwardRef(
|
|
13
|
+
(r, e) => {
|
|
14
|
+
const {
|
|
15
|
+
disableOutsidePointerEvents: i = !1,
|
|
16
|
+
onEscapeKeyDown: o,
|
|
17
|
+
onPointerDownOutside: t,
|
|
18
|
+
onFocusOutside: a,
|
|
19
|
+
onInteractOutside: l,
|
|
20
|
+
onDismiss: d,
|
|
21
|
+
...v
|
|
22
|
+
} = r, c = n.useContext(T), [u, S] = n.useState(null), f = (u == null ? void 0 : u.ownerDocument) ?? (globalThis == null ? void 0 : globalThis.document), [, F] = n.useState({}), W = g(e, (s) => S(s)), y = Array.from(c.layers), [A] = [...c.layersWithOutsidePointerEventsDisabled].slice(-1), N = y.indexOf(A), b = u ? y.indexOf(u) : -1, I = c.layersWithOutsidePointerEventsDisabled.size > 0, P = b >= N, _ = q((s) => {
|
|
23
|
+
const E = s.target, C = [...c.branches].some((h) => h.contains(E));
|
|
24
|
+
!P || C || (t == null || t(s), l == null || l(s), s.defaultPrevented || d == null || d());
|
|
25
|
+
}, f), D = G((s) => {
|
|
26
|
+
const E = s.target;
|
|
27
|
+
[...c.branches].some((h) => h.contains(E)) || (a == null || a(s), l == null || l(s), s.defaultPrevented || d == null || d());
|
|
28
|
+
}, f);
|
|
29
|
+
return U((s) => {
|
|
30
|
+
b === c.layers.size - 1 && (o == null || o(s), !s.defaultPrevented && d && (s.preventDefault(), d()));
|
|
31
|
+
}, f), n.useEffect(() => {
|
|
32
|
+
if (u)
|
|
33
|
+
return i && (c.layersWithOutsidePointerEventsDisabled.size === 0 && (L = f.body.style.pointerEvents, f.body.style.pointerEvents = "none"), c.layersWithOutsidePointerEventsDisabled.add(u)), c.layers.add(u), O(), () => {
|
|
34
|
+
i && c.layersWithOutsidePointerEventsDisabled.size === 1 && (f.body.style.pointerEvents = L);
|
|
35
|
+
};
|
|
36
|
+
}, [u, f, i, c]), n.useEffect(() => () => {
|
|
37
|
+
u && (c.layers.delete(u), c.layersWithOutsidePointerEventsDisabled.delete(u), O());
|
|
38
|
+
}, [u, c]), n.useEffect(() => {
|
|
39
|
+
const s = () => F({});
|
|
40
|
+
return document.addEventListener(p, s), () => document.removeEventListener(p, s);
|
|
41
|
+
}, []), /* @__PURE__ */ x.jsx(
|
|
42
|
+
R.div,
|
|
43
|
+
{
|
|
44
|
+
...v,
|
|
45
|
+
ref: W,
|
|
46
|
+
style: {
|
|
47
|
+
pointerEvents: I ? P ? "auto" : "none" : void 0,
|
|
48
|
+
...r.style
|
|
49
|
+
},
|
|
50
|
+
onFocusCapture: m(r.onFocusCapture, D.onFocusCapture),
|
|
51
|
+
onBlurCapture: m(r.onBlurCapture, D.onBlurCapture),
|
|
52
|
+
onPointerDownCapture: m(
|
|
53
|
+
r.onPointerDownCapture,
|
|
54
|
+
_.onPointerDownCapture
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
);
|
|
60
|
+
M.displayName = j;
|
|
61
|
+
var X = "DismissableLayerBranch", Y = n.forwardRef((r, e) => {
|
|
62
|
+
const i = n.useContext(T), o = n.useRef(null), t = g(e, o);
|
|
63
|
+
return n.useEffect(() => {
|
|
64
|
+
const a = o.current;
|
|
65
|
+
if (a)
|
|
66
|
+
return i.branches.add(a), () => {
|
|
67
|
+
i.branches.delete(a);
|
|
68
|
+
};
|
|
69
|
+
}, [i.branches]), /* @__PURE__ */ x.jsx(R.div, { ...r, ref: t });
|
|
70
|
+
});
|
|
71
|
+
Y.displayName = X;
|
|
72
|
+
function q(r, e = globalThis == null ? void 0 : globalThis.document) {
|
|
73
|
+
const i = w(r), o = n.useRef(!1), t = n.useRef(() => {
|
|
74
|
+
});
|
|
75
|
+
return n.useEffect(() => {
|
|
76
|
+
const a = (d) => {
|
|
77
|
+
if (d.target && !o.current) {
|
|
78
|
+
let v = function() {
|
|
79
|
+
B(
|
|
80
|
+
z,
|
|
81
|
+
i,
|
|
82
|
+
c,
|
|
83
|
+
{ discrete: !0 }
|
|
84
|
+
);
|
|
85
|
+
};
|
|
86
|
+
const c = { originalEvent: d };
|
|
87
|
+
d.pointerType === "touch" ? (e.removeEventListener("click", t.current), t.current = v, e.addEventListener("click", t.current, { once: !0 })) : v();
|
|
88
|
+
} else
|
|
89
|
+
e.removeEventListener("click", t.current);
|
|
90
|
+
o.current = !1;
|
|
91
|
+
}, l = window.setTimeout(() => {
|
|
92
|
+
e.addEventListener("pointerdown", a);
|
|
93
|
+
}, 0);
|
|
94
|
+
return () => {
|
|
95
|
+
window.clearTimeout(l), e.removeEventListener("pointerdown", a), e.removeEventListener("click", t.current);
|
|
96
|
+
};
|
|
97
|
+
}, [e, i]), {
|
|
98
|
+
// ensures we check React component tree (not just DOM tree)
|
|
99
|
+
onPointerDownCapture: () => o.current = !0
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
function G(r, e = globalThis == null ? void 0 : globalThis.document) {
|
|
103
|
+
const i = w(r), o = n.useRef(!1);
|
|
104
|
+
return n.useEffect(() => {
|
|
105
|
+
const t = (a) => {
|
|
106
|
+
a.target && !o.current && B(H, i, { originalEvent: a }, {
|
|
107
|
+
discrete: !1
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
return e.addEventListener("focusin", t), () => e.removeEventListener("focusin", t);
|
|
111
|
+
}, [e, i]), {
|
|
112
|
+
onFocusCapture: () => o.current = !0,
|
|
113
|
+
onBlurCapture: () => o.current = !1
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function O() {
|
|
117
|
+
const r = new CustomEvent(p);
|
|
118
|
+
document.dispatchEvent(r);
|
|
119
|
+
}
|
|
120
|
+
function B(r, e, i, { discrete: o }) {
|
|
121
|
+
const t = i.originalEvent.target, a = new CustomEvent(r, { bubbles: !1, cancelable: !0, detail: i });
|
|
122
|
+
e && t.addEventListener(r, e, { once: !0 }), o ? k(t, a) : t.dispatchEvent(a);
|
|
123
|
+
}
|
|
124
|
+
export {
|
|
125
|
+
M as DismissableLayer,
|
|
126
|
+
Y as DismissableLayerBranch
|
|
127
|
+
};
|
|
128
|
+
//# sourceMappingURL=index.es395.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es395.js","sources":["../node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/dismissable-layer/src/dismissable-layer.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { Primitive, dispatchDiscreteCustomEvent } from \"@radix-ui/react-primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useEscapeKeydown } from \"@radix-ui/react-use-escape-keydown\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DISMISSABLE_LAYER_NAME = \"DismissableLayer\";\nvar CONTEXT_UPDATE = \"dismissableLayer.update\";\nvar POINTER_DOWN_OUTSIDE = \"dismissableLayer.pointerDownOutside\";\nvar FOCUS_OUTSIDE = \"dismissableLayer.focusOutside\";\nvar originalBodyPointerEvents;\nvar DismissableLayerContext = React.createContext({\n layers: /* @__PURE__ */ new Set(),\n layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),\n branches: /* @__PURE__ */ new Set()\n});\nvar DismissableLayer = React.forwardRef(\n (props, forwardedRef) => {\n const {\n disableOutsidePointerEvents = false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n ...layerProps\n } = props;\n const context = React.useContext(DismissableLayerContext);\n const [node, setNode] = React.useState(null);\n const ownerDocument = node?.ownerDocument ?? globalThis?.document;\n const [, force] = React.useState({});\n const composedRefs = useComposedRefs(forwardedRef, (node2) => setNode(node2));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [...context.layersWithOutsidePointerEventsDisabled].slice(-1);\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled);\n const index = node ? layers.indexOf(node) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n const pointerDownOutside = usePointerDownOutside((event) => {\n const target = event.target;\n const isPointerDownOnBranch = [...context.branches].some((branch) => branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n const focusOutside = useFocusOutside((event) => {\n const target = event.target;\n const isFocusInBranch = [...context.branches].some((branch) => branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n useEscapeKeydown((event) => {\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n React.useEffect(() => {\n if (!node) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = \"none\";\n }\n context.layersWithOutsidePointerEventsDisabled.add(node);\n }\n context.layers.add(node);\n dispatchUpdate();\n return () => {\n if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) {\n ownerDocument.body.style.pointerEvents = originalBodyPointerEvents;\n }\n };\n }, [node, ownerDocument, disableOutsidePointerEvents, context]);\n React.useEffect(() => {\n return () => {\n if (!node) return;\n context.layers.delete(node);\n context.layersWithOutsidePointerEventsDisabled.delete(node);\n dispatchUpdate();\n };\n }, [node, context]);\n React.useEffect(() => {\n const handleUpdate = () => force({});\n document.addEventListener(CONTEXT_UPDATE, handleUpdate);\n return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);\n }, []);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...layerProps,\n ref: composedRefs,\n style: {\n pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? \"auto\" : \"none\" : void 0,\n ...props.style\n },\n onFocusCapture: composeEventHandlers(props.onFocusCapture, focusOutside.onFocusCapture),\n onBlurCapture: composeEventHandlers(props.onBlurCapture, focusOutside.onBlurCapture),\n onPointerDownCapture: composeEventHandlers(\n props.onPointerDownCapture,\n pointerDownOutside.onPointerDownCapture\n )\n }\n );\n }\n);\nDismissableLayer.displayName = DISMISSABLE_LAYER_NAME;\nvar BRANCH_NAME = \"DismissableLayerBranch\";\nvar DismissableLayerBranch = React.forwardRef((props, forwardedRef) => {\n const context = React.useContext(DismissableLayerContext);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return () => {\n context.branches.delete(node);\n };\n }\n }, [context.branches]);\n return /* @__PURE__ */ jsx(Primitive.div, { ...props, ref: composedRefs });\n});\nDismissableLayerBranch.displayName = BRANCH_NAME;\nfunction usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis?.document) {\n const handlePointerDownOutside = useCallbackRef(onPointerDownOutside);\n const isPointerInsideReactTreeRef = React.useRef(false);\n const handleClickRef = React.useRef(() => {\n });\n React.useEffect(() => {\n const handlePointerDown = (event) => {\n if (event.target && !isPointerInsideReactTreeRef.current) {\n let handleAndDispatchPointerDownOutsideEvent2 = function() {\n handleAndDispatchCustomEvent(\n POINTER_DOWN_OUTSIDE,\n handlePointerDownOutside,\n eventDetail,\n { discrete: true }\n );\n };\n var handleAndDispatchPointerDownOutsideEvent = handleAndDispatchPointerDownOutsideEvent2;\n const eventDetail = { originalEvent: event };\n if (event.pointerType === \"touch\") {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent2;\n ownerDocument.addEventListener(\"click\", handleClickRef.current, { once: true });\n } else {\n handleAndDispatchPointerDownOutsideEvent2();\n }\n } else {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n }\n isPointerInsideReactTreeRef.current = false;\n };\n const timerId = window.setTimeout(() => {\n ownerDocument.addEventListener(\"pointerdown\", handlePointerDown);\n }, 0);\n return () => {\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener(\"pointerdown\", handlePointerDown);\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n };\n }, [ownerDocument, handlePointerDownOutside]);\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: () => isPointerInsideReactTreeRef.current = true\n };\n}\nfunction useFocusOutside(onFocusOutside, ownerDocument = globalThis?.document) {\n const handleFocusOutside = useCallbackRef(onFocusOutside);\n const isFocusInsideReactTreeRef = React.useRef(false);\n React.useEffect(() => {\n const handleFocus = (event) => {\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = { originalEvent: event };\n handleAndDispatchCustomEvent(FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false\n });\n }\n };\n ownerDocument.addEventListener(\"focusin\", handleFocus);\n return () => ownerDocument.removeEventListener(\"focusin\", handleFocus);\n }, [ownerDocument, handleFocusOutside]);\n return {\n onFocusCapture: () => isFocusInsideReactTreeRef.current = true,\n onBlurCapture: () => isFocusInsideReactTreeRef.current = false\n };\n}\nfunction dispatchUpdate() {\n const event = new CustomEvent(CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\nfunction handleAndDispatchCustomEvent(name, handler, detail, { discrete }) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, { bubbles: false, cancelable: true, detail });\n if (handler) target.addEventListener(name, handler, { once: true });\n if (discrete) {\n dispatchDiscreteCustomEvent(target, event);\n } else {\n target.dispatchEvent(event);\n }\n}\nvar Root = DismissableLayer;\nvar Branch = DismissableLayerBranch;\nexport {\n Branch,\n DismissableLayer,\n DismissableLayerBranch,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["DISMISSABLE_LAYER_NAME","CONTEXT_UPDATE","POINTER_DOWN_OUTSIDE","FOCUS_OUTSIDE","originalBodyPointerEvents","DismissableLayerContext","React","DismissableLayer","props","forwardedRef","disableOutsidePointerEvents","onEscapeKeyDown","onPointerDownOutside","onFocusOutside","onInteractOutside","onDismiss","layerProps","context","node","setNode","ownerDocument","force","composedRefs","useComposedRefs","node2","layers","highestLayerWithOutsidePointerEventsDisabled","highestLayerWithOutsidePointerEventsDisabledIndex","index","isBodyPointerEventsDisabled","isPointerEventsEnabled","pointerDownOutside","usePointerDownOutside","event","target","isPointerDownOnBranch","branch","focusOutside","useFocusOutside","useEscapeKeydown","dispatchUpdate","handleUpdate","jsx","Primitive","composeEventHandlers","BRANCH_NAME","DismissableLayerBranch","ref","handlePointerDownOutside","useCallbackRef","isPointerInsideReactTreeRef","handleClickRef","handlePointerDown","handleAndDispatchPointerDownOutsideEvent2","handleAndDispatchCustomEvent","eventDetail","timerId","handleFocusOutside","isFocusInsideReactTreeRef","handleFocus","name","handler","detail","discrete","dispatchDiscreteCustomEvent"],"mappings":"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","x_google_ignoreList":[0]}
|