@object-ui/plugin-detail 3.1.5 → 3.3.1
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/CHANGELOG.md +31 -0
- package/README.md +21 -1
- package/dist/AddressField-LgHnO2Lk.js +98 -0
- package/dist/AutoNumberField-xZCrU0eW.js +14 -0
- package/dist/{AvatarField-YGj51ozd.js → AvatarField-Dy2XGlPz.js} +16 -15
- package/dist/{BooleanField-CaA898Tk.js → BooleanField-C0Clfka5.js} +11 -10
- package/dist/CodeField-CHUa07B6.js +23 -0
- package/dist/ColorField-vxHqEhcS.js +38 -0
- package/dist/CurrencyField-DiWjYWDo.js +49 -0
- package/dist/DateField-DGaRPM4P.js +22 -0
- package/dist/DateTimeField-8QnpsI_h.js +30 -0
- package/dist/EmailField-CkVgMbpI.js +26 -0
- package/dist/FileField-5UPV7uek.js +149 -0
- package/dist/FormulaField-BUgt6-Pi.js +17 -0
- package/dist/GeolocationField-D9T_jgG6.js +118 -0
- package/dist/GridField-DE_HwiIN.js +49 -0
- package/dist/ImageField-Dswnqtzf.js +73 -0
- package/dist/LocationField-gjqbE6na.js +36 -0
- package/dist/LookupField-BcS3LRKc.js +901 -0
- package/dist/{MasterDetailField-I1A9oEGC.js → MasterDetailField-BF6_-X3A.js} +20 -19
- package/dist/NumberField-Dj2rYmrS.js +27 -0
- package/dist/ObjectField-BymIojwd.js +50 -0
- package/dist/{PasswordField-DBtluGJ1.js → PasswordField-ED_Xgqz-.js} +8 -7
- package/dist/PercentField-D-JKOxKC.js +61 -0
- package/dist/PhoneField-DSCaGYq7.js +26 -0
- package/dist/QRCodeField-CtcOUapi.js +73 -0
- package/dist/{RatingField-B_Mnr63i.js → RatingField-BDnyQFWy.js} +10 -9
- package/dist/RichTextField-CH6LVZQA.js +33 -0
- package/dist/SelectField-DE4dpkMV.js +36 -0
- package/dist/{SignatureField-CddhEK9u.js → SignatureField-B1wh3f5A.js} +18 -17
- package/dist/{SliderField-Df5hMzNc.js → SliderField-zoTCKh9n.js} +2 -1
- package/dist/SummaryField-BeBVT6VN.js +22 -0
- package/dist/TextAreaField-rfUGrRxh.js +37 -0
- package/dist/TextField-C_yM7ATQ.js +30 -0
- package/dist/TimeField-BcQmBZi9.js +22 -0
- package/dist/UrlField-BakaF6NI.js +31 -0
- package/dist/UserField-zS7y3eKb.js +76 -0
- package/dist/VectorField-CTZ4myDM.js +34 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1741 -1504
- package/dist/index.umd.cjs +43 -51
- package/dist/packages/plugin-detail/src/ActivityTimeline.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/CommentAttachment.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/CommentInput.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/DetailSection.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/DetailTabs.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/DetailView.d.ts +47 -0
- package/dist/packages/plugin-detail/src/DetailView.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/DetailView.stories.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/DiffView.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/FieldChangeItem.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/HeaderHighlight.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/InlineCreateRelated.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/MentionAutocomplete.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/PointInTimeRestore.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/ReactionPicker.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/RecordActivityTimeline.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/RecordChatterPanel.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/RecordComments.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/RecordNavigationEnhanced.d.ts.map +1 -0
- package/dist/{src → packages/plugin-detail/src}/RelatedList.d.ts +8 -0
- package/dist/packages/plugin-detail/src/RelatedList.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/RelationshipGraph.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/RichTextCommentInput.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/SectionGroup.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/SubscriptionToggle.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/ThreadedReplies.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/autoLayout.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/index.d.ts.map +1 -0
- package/dist/packages/plugin-detail/src/useDetailTranslation.d.ts.map +1 -0
- package/dist/plugin-detail.css +1 -2
- package/dist/rolldown-runtime-DnwLefa7.js +23 -0
- package/dist/{src-CXr1-vVl.js → src-DyUKLvMN.js} +29788 -37711
- package/dist/useFieldTranslation-BRgjC1oq.js +9 -0
- package/package.json +34 -12
- package/.turbo/turbo-build.log +0 -61
- package/dist/AddressField-DBkEyMcG.js +0 -93
- package/dist/AutoNumberField-Baa191z-.js +0 -14
- package/dist/CodeField-BU51nl1L.js +0 -22
- package/dist/ColorField-Cnf6ZM7c.js +0 -37
- package/dist/CurrencyField-Wg-XOId2.js +0 -51
- package/dist/DateField-Cth1ky_m.js +0 -21
- package/dist/DateTimeField-B0m6FhHL.js +0 -32
- package/dist/EmailField-Do7qT_L_.js +0 -28
- package/dist/FileField-aRJAdbQb.js +0 -151
- package/dist/FormulaField-DTMkagFx.js +0 -14
- package/dist/GeolocationField-RqpHWTEv.js +0 -113
- package/dist/GridField-D4IH0cpo.js +0 -51
- package/dist/ImageField-BYCFajjr.js +0 -75
- package/dist/LocationField-Bi_ew9sd.js +0 -35
- package/dist/LookupField-BjwlDPtt.js +0 -902
- package/dist/NumberField-D_NucQlp.js +0 -26
- package/dist/ObjectField-CG-LaM65.js +0 -52
- package/dist/PercentField-B6sO_J3i.js +0 -63
- package/dist/PhoneField-CcQAWwR6.js +0 -28
- package/dist/QRCodeField-CEjWs-J5.js +0 -72
- package/dist/RichTextField-qOEJl5Ai.js +0 -32
- package/dist/SelectField-C8hWu3gm.js +0 -30
- package/dist/SummaryField-DgiFm-Cr.js +0 -19
- package/dist/TextAreaField-DuriTqsD.js +0 -36
- package/dist/TextField-CGNSl7RU.js +0 -29
- package/dist/TimeField-YO58ctFg.js +0 -21
- package/dist/UrlField-1-BMM1jn.js +0 -33
- package/dist/UserField-B6GqxP_S.js +0 -78
- package/dist/VectorField-BkEjbSt0.js +0 -36
- package/dist/src/ActivityTimeline.d.ts.map +0 -1
- package/dist/src/CommentAttachment.d.ts.map +0 -1
- package/dist/src/CommentInput.d.ts.map +0 -1
- package/dist/src/DetailSection.d.ts.map +0 -1
- package/dist/src/DetailTabs.d.ts.map +0 -1
- package/dist/src/DetailView.d.ts +0 -23
- package/dist/src/DetailView.d.ts.map +0 -1
- package/dist/src/DetailView.stories.d.ts.map +0 -1
- package/dist/src/DiffView.d.ts.map +0 -1
- package/dist/src/FieldChangeItem.d.ts.map +0 -1
- package/dist/src/HeaderHighlight.d.ts.map +0 -1
- package/dist/src/InlineCreateRelated.d.ts.map +0 -1
- package/dist/src/MentionAutocomplete.d.ts.map +0 -1
- package/dist/src/PointInTimeRestore.d.ts.map +0 -1
- package/dist/src/ReactionPicker.d.ts.map +0 -1
- package/dist/src/RecordActivityTimeline.d.ts.map +0 -1
- package/dist/src/RecordChatterPanel.d.ts.map +0 -1
- package/dist/src/RecordComments.d.ts.map +0 -1
- package/dist/src/RecordNavigationEnhanced.d.ts.map +0 -1
- package/dist/src/RelatedList.d.ts.map +0 -1
- package/dist/src/RelationshipGraph.d.ts.map +0 -1
- package/dist/src/RichTextCommentInput.d.ts.map +0 -1
- package/dist/src/SectionGroup.d.ts.map +0 -1
- package/dist/src/SubscriptionToggle.d.ts.map +0 -1
- package/dist/src/ThreadedReplies.d.ts.map +0 -1
- package/dist/src/autoLayout.d.ts.map +0 -1
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/useDetailTranslation.d.ts.map +0 -1
- package/src/ActivityTimeline.tsx +0 -184
- package/src/CommentAttachment.tsx +0 -192
- package/src/CommentInput.tsx +0 -81
- package/src/DetailSection.tsx +0 -340
- package/src/DetailTabs.tsx +0 -73
- package/src/DetailView.stories.tsx +0 -334
- package/src/DetailView.tsx +0 -823
- package/src/DiffView.tsx +0 -231
- package/src/FieldChangeItem.tsx +0 -46
- package/src/HeaderHighlight.tsx +0 -88
- package/src/InlineCreateRelated.tsx +0 -291
- package/src/MentionAutocomplete.tsx +0 -123
- package/src/PointInTimeRestore.tsx +0 -261
- package/src/ReactionPicker.tsx +0 -106
- package/src/RecordActivityTimeline.tsx +0 -429
- package/src/RecordChatterPanel.tsx +0 -207
- package/src/RecordComments.tsx +0 -215
- package/src/RecordNavigationEnhanced.tsx +0 -211
- package/src/RelatedList.tsx +0 -413
- package/src/RelationshipGraph.tsx +0 -286
- package/src/RichTextCommentInput.tsx +0 -348
- package/src/SectionGroup.tsx +0 -101
- package/src/SubscriptionToggle.tsx +0 -60
- package/src/ThreadedReplies.tsx +0 -161
- package/src/__tests__/ActivityTimeline.test.tsx +0 -119
- package/src/__tests__/ActivityTimelineFiltering.test.tsx +0 -143
- package/src/__tests__/CommentInput.test.tsx +0 -57
- package/src/__tests__/DetailSection.test.tsx +0 -490
- package/src/__tests__/DetailView.test.tsx +0 -694
- package/src/__tests__/FieldChangeItem.test.tsx +0 -119
- package/src/__tests__/HeaderHighlight.test.tsx +0 -213
- package/src/__tests__/MentionAutocomplete.test.tsx +0 -97
- package/src/__tests__/ReactionPicker.test.tsx +0 -113
- package/src/__tests__/RecordActivityTimeline.test.tsx +0 -395
- package/src/__tests__/RecordChatterPanel.test.tsx +0 -265
- package/src/__tests__/RecordComments.test.tsx +0 -96
- package/src/__tests__/RecordCommentsPinSearch.test.tsx +0 -133
- package/src/__tests__/RelatedList.test.tsx +0 -160
- package/src/__tests__/SectionGroup.test.tsx +0 -101
- package/src/__tests__/SubscriptionToggle.test.tsx +0 -84
- package/src/__tests__/ThreadedReplies.test.tsx +0 -212
- package/src/__tests__/autoLayout.test.ts +0 -228
- package/src/__tests__/phase12-features.test.tsx +0 -583
- package/src/__tests__/roadmap-features.test.tsx +0 -478
- package/src/autoLayout.ts +0 -128
- package/src/index.tsx +0 -149
- package/src/useDetailTranslation.ts +0 -114
- package/tsconfig.json +0 -18
- package/vite.config.ts +0 -56
- package/vitest.config.ts +0 -13
- package/vitest.setup.ts +0 -1
- /package/dist/{src → packages/plugin-detail/src}/ActivityTimeline.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/CommentAttachment.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/CommentInput.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/DetailSection.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/DetailTabs.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/DetailView.stories.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/DiffView.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/FieldChangeItem.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/HeaderHighlight.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/InlineCreateRelated.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/MentionAutocomplete.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/PointInTimeRestore.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/ReactionPicker.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/RecordActivityTimeline.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/RecordChatterPanel.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/RecordComments.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/RecordNavigationEnhanced.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/RelationshipGraph.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/RichTextCommentInput.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/SectionGroup.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/SubscriptionToggle.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/ThreadedReplies.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/autoLayout.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/index.d.ts +0 -0
- /package/dist/{src → packages/plugin-detail/src}/useDetailTranslation.d.ts +0 -0
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { Bt as e, Ct as t, D as n, O as r, Z as i, hn as a } from "./src-CXr1-vVl.js";
|
|
2
|
-
import o from "react";
|
|
3
|
-
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
4
|
-
//#region ../fields/src/widgets/GeolocationField.tsx
|
|
5
|
-
var l = /* @__PURE__ */ a({ GeolocationField: () => u });
|
|
6
|
-
function u({ value: a, onChange: l, field: u, readonly: d, ...f }) {
|
|
7
|
-
let [p, m] = o.useState(!1), h = a || {}, g = (e, t) => {
|
|
8
|
-
l({
|
|
9
|
-
...h,
|
|
10
|
-
[e]: t ? Number(t) : void 0
|
|
11
|
-
});
|
|
12
|
-
}, _ = () => {
|
|
13
|
-
if (!navigator.geolocation) {
|
|
14
|
-
console.error("Geolocation is not supported by this browser");
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
m(!0), navigator.geolocation.getCurrentPosition((e) => {
|
|
18
|
-
l({
|
|
19
|
-
latitude: e.coords.latitude,
|
|
20
|
-
longitude: e.coords.longitude,
|
|
21
|
-
accuracy: e.coords.accuracy
|
|
22
|
-
}), m(!1);
|
|
23
|
-
}, (e) => {
|
|
24
|
-
console.error("Error getting location:", e.message), m(!1);
|
|
25
|
-
}, {
|
|
26
|
-
enableHighAccuracy: !0,
|
|
27
|
-
timeout: 5e3,
|
|
28
|
-
maximumAge: 0
|
|
29
|
-
});
|
|
30
|
-
}, v = (e) => !e.latitude || !e.longitude ? "-" : `${e.latitude.toFixed(6)}, ${e.longitude.toFixed(6)}`, y = () => {
|
|
31
|
-
if (!h.latitude || !h.longitude) return;
|
|
32
|
-
let e = `https://www.google.com/maps?q=${h.latitude},${h.longitude}`;
|
|
33
|
-
window.open(e, "_blank");
|
|
34
|
-
};
|
|
35
|
-
return d ? /* @__PURE__ */ c("div", {
|
|
36
|
-
className: "flex items-center gap-2",
|
|
37
|
-
children: [
|
|
38
|
-
/* @__PURE__ */ s(t, { className: "w-4 h-4 text-muted-foreground" }),
|
|
39
|
-
/* @__PURE__ */ s("span", {
|
|
40
|
-
className: "text-sm",
|
|
41
|
-
children: v(h)
|
|
42
|
-
}),
|
|
43
|
-
h.latitude && h.longitude && /* @__PURE__ */ s(i, {
|
|
44
|
-
type: "button",
|
|
45
|
-
variant: "link",
|
|
46
|
-
size: "sm",
|
|
47
|
-
onClick: y,
|
|
48
|
-
className: "p-0 h-auto",
|
|
49
|
-
children: "View on map"
|
|
50
|
-
})
|
|
51
|
-
]
|
|
52
|
-
}) : /* @__PURE__ */ c("div", {
|
|
53
|
-
className: "space-y-3",
|
|
54
|
-
children: [
|
|
55
|
-
/* @__PURE__ */ c("div", {
|
|
56
|
-
className: "flex items-center gap-2",
|
|
57
|
-
children: [/* @__PURE__ */ c(i, {
|
|
58
|
-
type: "button",
|
|
59
|
-
variant: "outline",
|
|
60
|
-
size: "sm",
|
|
61
|
-
onClick: _,
|
|
62
|
-
disabled: d || p,
|
|
63
|
-
children: [/* @__PURE__ */ s(e, { className: "w-4 h-4 mr-2" }), p ? "Getting location..." : "Use Current Location"]
|
|
64
|
-
}), h.latitude && h.longitude && /* @__PURE__ */ c(i, {
|
|
65
|
-
type: "button",
|
|
66
|
-
variant: "link",
|
|
67
|
-
size: "sm",
|
|
68
|
-
onClick: y,
|
|
69
|
-
children: [/* @__PURE__ */ s(t, { className: "w-4 h-4 mr-2" }), "View on map"]
|
|
70
|
-
})]
|
|
71
|
-
}),
|
|
72
|
-
/* @__PURE__ */ c("div", {
|
|
73
|
-
className: "grid grid-cols-2 gap-3",
|
|
74
|
-
children: [/* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s(r, {
|
|
75
|
-
htmlFor: "latitude",
|
|
76
|
-
className: "text-xs",
|
|
77
|
-
children: "Latitude"
|
|
78
|
-
}), /* @__PURE__ */ s(n, {
|
|
79
|
-
id: "latitude",
|
|
80
|
-
type: "number",
|
|
81
|
-
value: h.latitude ?? "",
|
|
82
|
-
onChange: (e) => g("latitude", e.target.value),
|
|
83
|
-
placeholder: "37.7749",
|
|
84
|
-
disabled: d || f.disabled,
|
|
85
|
-
step: "any",
|
|
86
|
-
className: f.className
|
|
87
|
-
})] }), /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s(r, {
|
|
88
|
-
htmlFor: "longitude",
|
|
89
|
-
className: "text-xs",
|
|
90
|
-
children: "Longitude"
|
|
91
|
-
}), /* @__PURE__ */ s(n, {
|
|
92
|
-
id: "longitude",
|
|
93
|
-
type: "number",
|
|
94
|
-
value: h.longitude ?? "",
|
|
95
|
-
onChange: (e) => g("longitude", e.target.value),
|
|
96
|
-
placeholder: "-122.4194",
|
|
97
|
-
disabled: d || f.disabled,
|
|
98
|
-
step: "any"
|
|
99
|
-
})] })]
|
|
100
|
-
}),
|
|
101
|
-
h.accuracy && /* @__PURE__ */ c("p", {
|
|
102
|
-
className: "text-xs text-muted-foreground",
|
|
103
|
-
children: [
|
|
104
|
-
"Accuracy: ±",
|
|
105
|
-
h.accuracy.toFixed(0),
|
|
106
|
-
"m"
|
|
107
|
-
]
|
|
108
|
-
})
|
|
109
|
-
]
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
//#endregion
|
|
113
|
-
export { l as t };
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { hn as e, un as t } from "./src-CXr1-vVl.js";
|
|
2
|
-
import "react";
|
|
3
|
-
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
-
//#region ../fields/src/widgets/GridField.tsx
|
|
5
|
-
var i = /* @__PURE__ */ e({ GridField: () => a });
|
|
6
|
-
function a({ value: e, field: i, readonly: a, ...o }) {
|
|
7
|
-
let s = (i || o.schema)?.columns || [];
|
|
8
|
-
return !e || !Array.isArray(e) ? /* @__PURE__ */ n("span", {
|
|
9
|
-
className: "text-sm text-muted-foreground",
|
|
10
|
-
children: "-"
|
|
11
|
-
}) : a ? /* @__PURE__ */ n("div", {
|
|
12
|
-
className: t("text-sm", o.className),
|
|
13
|
-
children: /* @__PURE__ */ r("span", {
|
|
14
|
-
className: "text-foreground",
|
|
15
|
-
children: [e.length, " rows"]
|
|
16
|
-
})
|
|
17
|
-
}) : /* @__PURE__ */ r("div", {
|
|
18
|
-
className: t("border border-border rounded-lg overflow-hidden", o.className),
|
|
19
|
-
children: [/* @__PURE__ */ n("div", {
|
|
20
|
-
className: "overflow-auto max-h-60",
|
|
21
|
-
children: /* @__PURE__ */ r("table", {
|
|
22
|
-
className: "w-full text-sm",
|
|
23
|
-
children: [/* @__PURE__ */ n("thead", {
|
|
24
|
-
className: "bg-muted border-b border-border",
|
|
25
|
-
children: /* @__PURE__ */ n("tr", { children: s.map((e, t) => /* @__PURE__ */ n("th", {
|
|
26
|
-
className: "px-3 py-2 text-left text-xs font-medium text-muted-foreground",
|
|
27
|
-
children: e.label || e.name
|
|
28
|
-
}, t)) })
|
|
29
|
-
}), /* @__PURE__ */ n("tbody", {
|
|
30
|
-
className: "divide-y divide-border",
|
|
31
|
-
children: e.slice(0, 5).map((e, t) => /* @__PURE__ */ n("tr", {
|
|
32
|
-
className: "hover:bg-muted/50 transition-colors",
|
|
33
|
-
children: s.map((t, r) => /* @__PURE__ */ n("td", {
|
|
34
|
-
className: "px-3 py-2 text-foreground",
|
|
35
|
-
children: e[t.name] == null ? "-" : String(e[t.name])
|
|
36
|
-
}, r))
|
|
37
|
-
}, t))
|
|
38
|
-
})]
|
|
39
|
-
})
|
|
40
|
-
}), e.length > 5 && /* @__PURE__ */ r("div", {
|
|
41
|
-
className: "bg-muted px-3 py-2 text-xs text-muted-foreground border-t border-border",
|
|
42
|
-
children: [
|
|
43
|
-
"Showing 5 of ",
|
|
44
|
-
e.length,
|
|
45
|
-
" rows"
|
|
46
|
-
]
|
|
47
|
-
})]
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
//#endregion
|
|
51
|
-
export { i as t };
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { $ as e, Z as t, hn as n, kt as r } from "./src-CXr1-vVl.js";
|
|
2
|
-
import { useRef as i } from "react";
|
|
3
|
-
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
4
|
-
//#region ../fields/src/widgets/ImageField.tsx
|
|
5
|
-
var s = /* @__PURE__ */ n({ ImageField: () => c });
|
|
6
|
-
function c({ value: n, onChange: s, field: c, readonly: l, ...u }) {
|
|
7
|
-
let d = i(null), f = c || u.schema, p = f?.multiple || !1, m = f?.accept ? f.accept.join(",") : "image/*";
|
|
8
|
-
if (l) return n ? /* @__PURE__ */ a("div", {
|
|
9
|
-
className: "flex flex-wrap gap-2",
|
|
10
|
-
children: (Array.isArray(n) ? n : [n]).map((e, t) => /* @__PURE__ */ a("img", {
|
|
11
|
-
src: e.url || "",
|
|
12
|
-
alt: e.name || `Image ${t + 1}`,
|
|
13
|
-
className: "size-20 rounded-md object-cover border border-gray-200"
|
|
14
|
-
}, t))
|
|
15
|
-
}) : /* @__PURE__ */ a("span", {
|
|
16
|
-
className: "text-sm",
|
|
17
|
-
children: "-"
|
|
18
|
-
});
|
|
19
|
-
let h = n ? Array.isArray(n) ? n : [n] : [], g = (e) => {
|
|
20
|
-
let t = Array.from(e.target.files || []);
|
|
21
|
-
if (t.length === 0) return;
|
|
22
|
-
let n = t.map((e) => ({
|
|
23
|
-
name: e.name,
|
|
24
|
-
original_name: e.name,
|
|
25
|
-
size: e.size,
|
|
26
|
-
mime_type: e.type,
|
|
27
|
-
url: URL.createObjectURL(e)
|
|
28
|
-
}));
|
|
29
|
-
s(p ? [...h, ...n] : n[0]);
|
|
30
|
-
}, _ = (e) => {
|
|
31
|
-
if (p) {
|
|
32
|
-
let t = h.filter((t, n) => n !== e);
|
|
33
|
-
s(t.length > 0 ? t : null);
|
|
34
|
-
} else s(null);
|
|
35
|
-
};
|
|
36
|
-
return /* @__PURE__ */ o("div", {
|
|
37
|
-
className: u.className,
|
|
38
|
-
children: [/* @__PURE__ */ a("input", {
|
|
39
|
-
ref: d,
|
|
40
|
-
type: "file",
|
|
41
|
-
multiple: p,
|
|
42
|
-
accept: m,
|
|
43
|
-
onChange: g,
|
|
44
|
-
className: "hidden"
|
|
45
|
-
}), /* @__PURE__ */ o("div", {
|
|
46
|
-
className: "space-y-2",
|
|
47
|
-
children: [h.length > 0 && /* @__PURE__ */ a("div", {
|
|
48
|
-
className: "grid grid-cols-4 gap-2",
|
|
49
|
-
children: h.map((n, r) => /* @__PURE__ */ o("div", {
|
|
50
|
-
className: "relative group",
|
|
51
|
-
children: [/* @__PURE__ */ a("img", {
|
|
52
|
-
src: n.url || "",
|
|
53
|
-
alt: n.name || `Image ${r + 1}`,
|
|
54
|
-
className: "size-20 rounded-md object-cover border border-gray-200"
|
|
55
|
-
}), /* @__PURE__ */ a(t, {
|
|
56
|
-
type: "button",
|
|
57
|
-
variant: "destructive",
|
|
58
|
-
size: "sm",
|
|
59
|
-
onClick: () => _(r),
|
|
60
|
-
className: "absolute top-1 right-1 h-6 w-6 p-0 opacity-0 group-hover:opacity-100 transition-opacity",
|
|
61
|
-
children: /* @__PURE__ */ a(e, { className: "size-3" })
|
|
62
|
-
})]
|
|
63
|
-
}, r))
|
|
64
|
-
}), /* @__PURE__ */ o(t, {
|
|
65
|
-
type: "button",
|
|
66
|
-
variant: "outline",
|
|
67
|
-
onClick: () => d.current?.click(),
|
|
68
|
-
className: "w-full",
|
|
69
|
-
children: [/* @__PURE__ */ a(r, { className: "size-4 mr-2" }), h.length > 0 ? "Add More Images" : "Upload Image"]
|
|
70
|
-
})]
|
|
71
|
-
})]
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
//#endregion
|
|
75
|
-
export { s as t };
|
|
@@ -1,35 +0,0 @@
|
|
|
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/LocationField.tsx
|
|
5
|
-
var r = /* @__PURE__ */ t({ LocationField: () => i });
|
|
6
|
-
function i({ value: t, onChange: r, field: i, readonly: a, ...o }) {
|
|
7
|
-
let s = i || o.schema, c = t && typeof t == "object" ? `${t.latitude || 0}, ${t.longitude || 0}` : "";
|
|
8
|
-
return a ? /* @__PURE__ */ n("span", {
|
|
9
|
-
className: "text-sm",
|
|
10
|
-
children: c || "-"
|
|
11
|
-
}) : /* @__PURE__ */ n(e, {
|
|
12
|
-
type: "text",
|
|
13
|
-
value: c,
|
|
14
|
-
onChange: (e) => {
|
|
15
|
-
let t = e.target.value;
|
|
16
|
-
if (!t.trim()) {
|
|
17
|
-
r(null);
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
let n = t.split(",").map((e) => e.trim());
|
|
21
|
-
if (n.length === 2) {
|
|
22
|
-
let e = parseFloat(n[0]), t = parseFloat(n[1]);
|
|
23
|
-
!isNaN(e) && !isNaN(t) && r({
|
|
24
|
-
latitude: e,
|
|
25
|
-
longitude: t
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
},
|
|
29
|
-
placeholder: s?.placeholder || "latitude, longitude",
|
|
30
|
-
disabled: a || o.disabled,
|
|
31
|
-
className: o.className
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
//#endregion
|
|
35
|
-
export { r as t };
|