@object-ui/plugin-detail 3.1.2 → 3.1.4
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/.turbo/turbo-build.log +53 -47
- package/CHANGELOG.md +20 -0
- package/dist/AddressField-DBkEyMcG.js +93 -0
- package/dist/AutoNumberField-Baa191z-.js +14 -0
- package/dist/AvatarField-YGj51ozd.js +80 -0
- package/dist/BooleanField-CaA898Tk.js +40 -0
- package/dist/CodeField-BU51nl1L.js +22 -0
- package/dist/ColorField-Cnf6ZM7c.js +37 -0
- package/dist/CurrencyField-Wg-XOId2.js +51 -0
- package/dist/DateField-Cth1ky_m.js +21 -0
- package/dist/DateTimeField-B0m6FhHL.js +32 -0
- package/dist/EmailField-Do7qT_L_.js +28 -0
- package/dist/FileField-aRJAdbQb.js +151 -0
- package/dist/FormulaField-DTMkagFx.js +14 -0
- package/dist/GeolocationField-RqpHWTEv.js +113 -0
- package/dist/GridField-D4IH0cpo.js +51 -0
- package/dist/ImageField-BYCFajjr.js +75 -0
- package/dist/LocationField-Bi_ew9sd.js +35 -0
- package/dist/LookupField-BjwlDPtt.js +902 -0
- package/dist/MasterDetailField-I1A9oEGC.js +94 -0
- package/dist/NumberField-D_NucQlp.js +26 -0
- package/dist/ObjectField-CG-LaM65.js +52 -0
- package/dist/PasswordField-DBtluGJ1.js +35 -0
- package/dist/PercentField-B6sO_J3i.js +63 -0
- package/dist/PhoneField-CcQAWwR6.js +28 -0
- package/dist/QRCodeField-CEjWs-J5.js +72 -0
- package/dist/RatingField-B_Mnr63i.js +39 -0
- package/dist/RichTextField-qOEJl5Ai.js +32 -0
- package/dist/SelectField-C8hWu3gm.js +30 -0
- package/dist/SignatureField-CddhEK9u.js +92 -0
- package/dist/SliderField-Df5hMzNc.js +34 -0
- package/dist/SummaryField-DgiFm-Cr.js +19 -0
- package/dist/TextAreaField-DuriTqsD.js +36 -0
- package/dist/TextField-CGNSl7RU.js +29 -0
- package/dist/TimeField-YO58ctFg.js +21 -0
- package/dist/UrlField-1-BMM1jn.js +33 -0
- package/dist/UserField-B6GqxP_S.js +78 -0
- package/dist/VectorField-BkEjbSt0.js +36 -0
- package/dist/index.js +4092 -33
- package/dist/index.umd.cjs +88 -81
- package/dist/plugin-detail.css +3 -1
- package/dist/src/DetailSection.d.ts +10 -0
- package/dist/src/DetailSection.d.ts.map +1 -1
- package/dist/src/HeaderHighlight.d.ts +2 -0
- package/dist/src/HeaderHighlight.d.ts.map +1 -1
- package/dist/src/RecordChatterPanel.d.ts +2 -0
- package/dist/src/RecordChatterPanel.d.ts.map +1 -1
- package/dist/src/autoLayout.d.ts +10 -3
- package/dist/src/autoLayout.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src-CXr1-vVl.js +77662 -0
- package/package.json +10 -10
- package/src/DetailSection.tsx +40 -1
- package/src/DetailView.tsx +1 -1
- package/src/HeaderHighlight.tsx +22 -1
- package/src/RecordChatterPanel.tsx +6 -1
- package/src/RelatedList.tsx +1 -1
- package/src/__tests__/DetailSection.test.tsx +61 -0
- package/src/__tests__/HeaderHighlight.test.tsx +145 -0
- package/src/__tests__/RecordChatterPanel.test.tsx +38 -0
- package/src/__tests__/RelatedList.test.tsx +3 -3
- package/src/__tests__/autoLayout.test.ts +44 -0
- package/src/autoLayout.ts +25 -8
- package/src/index.tsx +1 -1
- package/dist/AddressField-QBIlXCFl.js +0 -96
- package/dist/AutoNumberField-BxnFqllo.js +0 -8
- package/dist/AvatarField-BEZuQTAH.js +0 -82
- package/dist/BooleanField-doa93aFX.js +0 -37
- package/dist/CodeField-jVV-hIXg.js +0 -21
- package/dist/ColorField-B53qKQGW.js +0 -42
- package/dist/CurrencyField-og0NJ2ax.js +0 -43
- package/dist/DateField-BFx64AtG.js +0 -21
- package/dist/DateTimeField-Cxs2Rx2f.js +0 -28
- package/dist/EmailField-BfcpzRe7.js +0 -31
- package/dist/FileField-KarqvhYm.js +0 -133
- package/dist/FormulaField-CJkkwIK8.js +0 -9
- package/dist/GeolocationField-B5SKZaqn.js +0 -123
- package/dist/GridField-DOotrUTo.js +0 -30
- package/dist/ImageField-Ddotp4u-.js +0 -90
- package/dist/LocationField-tOkQaPIM.js +0 -31
- package/dist/LookupField-DF36GvIP.js +0 -96
- package/dist/MasterDetailField-CpHw3nTE.js +0 -108
- package/dist/NumberField-CzBb2a28.js +0 -26
- package/dist/ObjectField-BoL-JqE4.js +0 -48
- package/dist/PasswordField-DrTzkYgj.js +0 -38
- package/dist/PercentField-B9ZUQ3zE.js +0 -63
- package/dist/PhoneField-Bf9lhpdu.js +0 -31
- package/dist/QRCodeField-PzMpdBKd.js +0 -77
- package/dist/RatingField-CeBMFe8o.js +0 -47
- package/dist/RichTextField-Ch7CHSQ0.js +0 -38
- package/dist/SelectField-f5Nbi02x.js +0 -26
- package/dist/SignatureField-CpxTX2tR.js +0 -85
- package/dist/SliderField-BoZtzgcr.js +0 -30
- package/dist/SummaryField-ugYPYxjP.js +0 -9
- package/dist/TextAreaField-rT1DLnV2.js +0 -39
- package/dist/TextField-CflRxusu.js +0 -32
- package/dist/TimeField-DeVeCpRu.js +0 -21
- package/dist/UrlField-UWKfhP9T.js +0 -33
- package/dist/UserField-Cp2zQDjz.js +0 -49
- package/dist/VectorField-CKg9jdGa.js +0 -25
- package/dist/index-V_WBvcaA.js +0 -100249
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { D as e, hn as t, t as n } from "./src-CXr1-vVl.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
4
|
+
//#region ../fields/src/widgets/TextField.tsx
|
|
5
|
+
var i = /* @__PURE__ */ t({ TextField: () => a });
|
|
6
|
+
function a({ value: t, onChange: i, field: a, readonly: o, ...s }) {
|
|
7
|
+
let c = a || s.schema;
|
|
8
|
+
if (o) return /* @__PURE__ */ r("span", {
|
|
9
|
+
className: "text-sm",
|
|
10
|
+
children: t || "-"
|
|
11
|
+
});
|
|
12
|
+
let l = c?.rows, { inputType: u, ...d } = s;
|
|
13
|
+
return l && l > 1 ? /* @__PURE__ */ r(n, {
|
|
14
|
+
...d,
|
|
15
|
+
value: t || "",
|
|
16
|
+
onChange: (e) => i(e.target.value),
|
|
17
|
+
placeholder: c?.placeholder,
|
|
18
|
+
disabled: o || d.disabled
|
|
19
|
+
}) : /* @__PURE__ */ r(e, {
|
|
20
|
+
...d,
|
|
21
|
+
type: c?.type === "password" ? "password" : "text",
|
|
22
|
+
value: t || "",
|
|
23
|
+
onChange: (e) => i(e.target.value),
|
|
24
|
+
placeholder: c?.placeholder,
|
|
25
|
+
disabled: o || d.disabled
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
//#endregion
|
|
29
|
+
export { i as t };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { D as e, hn as t } from "./src-CXr1-vVl.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as n } from "react/jsx-runtime";
|
|
4
|
+
//#region ../fields/src/widgets/TimeField.tsx
|
|
5
|
+
var r = /* @__PURE__ */ t({ TimeField: () => i });
|
|
6
|
+
function i({ value: t, onChange: r, field: i, readonly: a, ...o }) {
|
|
7
|
+
if (a) return /* @__PURE__ */ n("span", {
|
|
8
|
+
className: "text-sm",
|
|
9
|
+
children: t || "-"
|
|
10
|
+
});
|
|
11
|
+
let { inputType: s, ...c } = o;
|
|
12
|
+
return /* @__PURE__ */ n(e, {
|
|
13
|
+
...c,
|
|
14
|
+
type: "time",
|
|
15
|
+
value: t || "",
|
|
16
|
+
onChange: (e) => r(e.target.value),
|
|
17
|
+
disabled: a || c.disabled
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//#endregion
|
|
21
|
+
export { r as t };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { D as e, hn as t } from "./src-CXr1-vVl.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as n } from "react/jsx-runtime";
|
|
4
|
+
//#region ../fields/src/widgets/UrlField.tsx
|
|
5
|
+
var r = /* @__PURE__ */ t({ UrlField: () => i });
|
|
6
|
+
function i({ value: t, onChange: r, field: i, readonly: a, errorMessage: o, ...s }) {
|
|
7
|
+
let c = i || s.schema;
|
|
8
|
+
if (a) return t ? t.startsWith("http://") || t.startsWith("https://") ? /* @__PURE__ */ n("a", {
|
|
9
|
+
href: t,
|
|
10
|
+
target: "_blank",
|
|
11
|
+
rel: "noopener noreferrer",
|
|
12
|
+
className: "text-sm text-blue-600 hover:text-blue-800 hover:underline",
|
|
13
|
+
children: t
|
|
14
|
+
}) : /* @__PURE__ */ n("span", {
|
|
15
|
+
className: "text-sm",
|
|
16
|
+
children: t
|
|
17
|
+
}) : /* @__PURE__ */ n("span", {
|
|
18
|
+
className: "text-sm",
|
|
19
|
+
children: "-"
|
|
20
|
+
});
|
|
21
|
+
let { inputType: l, ...u } = s;
|
|
22
|
+
return /* @__PURE__ */ n(e, {
|
|
23
|
+
...u,
|
|
24
|
+
type: "url",
|
|
25
|
+
value: t || "",
|
|
26
|
+
onChange: (e) => r(e.target.value),
|
|
27
|
+
placeholder: c?.placeholder || "https://example.com",
|
|
28
|
+
disabled: a || u.disabled,
|
|
29
|
+
"aria-invalid": !!o
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//#endregion
|
|
33
|
+
export { r as t };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { $ as e, J as t, Y as n, hn as r, q as i } from "./src-CXr1-vVl.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
4
|
+
//#region ../fields/src/widgets/UserField.tsx
|
|
5
|
+
var s = /* @__PURE__ */ r({ UserField: () => c });
|
|
6
|
+
function c({ value: r, onChange: s, field: c, readonly: l, ...u }) {
|
|
7
|
+
let d = (c || u.schema)?.multiple || !1;
|
|
8
|
+
if (l) {
|
|
9
|
+
if (!r) return /* @__PURE__ */ a("span", {
|
|
10
|
+
className: "text-sm",
|
|
11
|
+
children: "-"
|
|
12
|
+
});
|
|
13
|
+
let e = Array.isArray(r) ? r : [r];
|
|
14
|
+
return /* @__PURE__ */ o("div", {
|
|
15
|
+
className: "flex -space-x-2",
|
|
16
|
+
children: [e.slice(0, 3).map((e, r) => {
|
|
17
|
+
let i = e.name || e.username || "User";
|
|
18
|
+
return /* @__PURE__ */ a(t, {
|
|
19
|
+
className: "size-8 border-2 border-white",
|
|
20
|
+
title: i,
|
|
21
|
+
children: /* @__PURE__ */ a(n, {
|
|
22
|
+
className: "bg-blue-500 text-white text-xs",
|
|
23
|
+
children: i.split(" ").map((e) => e[0]).join("").toUpperCase().slice(0, 2)
|
|
24
|
+
})
|
|
25
|
+
}, r);
|
|
26
|
+
}), e.length > 3 && /* @__PURE__ */ a(t, {
|
|
27
|
+
className: "size-8 border-2 border-white",
|
|
28
|
+
children: /* @__PURE__ */ o(n, {
|
|
29
|
+
className: "bg-gray-200 text-gray-600 text-xs",
|
|
30
|
+
children: ["+", e.length - 3]
|
|
31
|
+
})
|
|
32
|
+
})]
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
let f = r ? Array.isArray(r) ? r : [r] : [], p = (e) => {
|
|
36
|
+
if (d) {
|
|
37
|
+
let t = f.filter((t, n) => n !== e);
|
|
38
|
+
s(t.length > 0 ? t : null);
|
|
39
|
+
} else s(null);
|
|
40
|
+
};
|
|
41
|
+
return /* @__PURE__ */ o("div", {
|
|
42
|
+
className: u.className,
|
|
43
|
+
children: [f.length > 0 && /* @__PURE__ */ a("div", {
|
|
44
|
+
className: "flex flex-wrap gap-2 mb-2",
|
|
45
|
+
children: f.map((r, s) => {
|
|
46
|
+
let c = r.name || r.username || "User";
|
|
47
|
+
return /* @__PURE__ */ o(i, {
|
|
48
|
+
variant: "outline",
|
|
49
|
+
className: "gap-2 pr-1",
|
|
50
|
+
children: [
|
|
51
|
+
/* @__PURE__ */ a(t, {
|
|
52
|
+
className: "size-5",
|
|
53
|
+
children: /* @__PURE__ */ a(n, {
|
|
54
|
+
className: "bg-blue-500 text-white text-xs",
|
|
55
|
+
children: c.split(" ").map((e) => e[0]).join("").toUpperCase().slice(0, 2)
|
|
56
|
+
})
|
|
57
|
+
}),
|
|
58
|
+
/* @__PURE__ */ a("span", {
|
|
59
|
+
className: "text-sm",
|
|
60
|
+
children: c
|
|
61
|
+
}),
|
|
62
|
+
/* @__PURE__ */ a("button", {
|
|
63
|
+
type: "button",
|
|
64
|
+
onClick: () => p(s),
|
|
65
|
+
className: "ml-1 rounded-full hover:bg-gray-200 p-0.5",
|
|
66
|
+
children: /* @__PURE__ */ a(e, { className: "size-3" })
|
|
67
|
+
})
|
|
68
|
+
]
|
|
69
|
+
}, s);
|
|
70
|
+
})
|
|
71
|
+
}), /* @__PURE__ */ a("div", {
|
|
72
|
+
className: "text-sm text-gray-500 italic",
|
|
73
|
+
children: "User selection component requires integration with user management system"
|
|
74
|
+
})]
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
//#endregion
|
|
78
|
+
export { s as t };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { hn as e } from "./src-CXr1-vVl.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
4
|
+
//#region ../fields/src/widgets/VectorField.tsx
|
|
5
|
+
var r = /* @__PURE__ */ e({ VectorField: () => i });
|
|
6
|
+
function i({ value: e, field: r, ...i }) {
|
|
7
|
+
let a = (r || i.schema)?.dimensions || (Array.isArray(e) ? e.length : 0);
|
|
8
|
+
if (!e || !Array.isArray(e)) return /* @__PURE__ */ t("span", {
|
|
9
|
+
className: "text-sm text-gray-500",
|
|
10
|
+
children: "-"
|
|
11
|
+
});
|
|
12
|
+
let o = e.slice(0, 3).map((e) => {
|
|
13
|
+
let t = Number(e);
|
|
14
|
+
return isNaN(t) ? "0" : t.toFixed(4);
|
|
15
|
+
}).join(", ");
|
|
16
|
+
return /* @__PURE__ */ n("div", {
|
|
17
|
+
className: `text-sm ${i.className || ""}`,
|
|
18
|
+
children: [/* @__PURE__ */ n("span", {
|
|
19
|
+
className: "font-mono text-gray-700",
|
|
20
|
+
children: [
|
|
21
|
+
"[",
|
|
22
|
+
o,
|
|
23
|
+
"...]"
|
|
24
|
+
]
|
|
25
|
+
}), /* @__PURE__ */ n("span", {
|
|
26
|
+
className: "text-gray-500 ml-2",
|
|
27
|
+
children: [
|
|
28
|
+
"(",
|
|
29
|
+
a,
|
|
30
|
+
"D)"
|
|
31
|
+
]
|
|
32
|
+
})]
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
//#endregion
|
|
36
|
+
export { r as t };
|