@multiplatform.one/frappe-ui 7.20.0 → 7.21.0
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/cjs/FrappeForm.cjs +80 -50
- package/dist/cjs/FrappeForm.native.js +82 -55
- package/dist/cjs/FrappeForm.native.js.map +1 -1
- package/dist/cjs/FrappeListView.cjs +6 -1
- package/dist/cjs/FrappeListView.native.js +6 -1
- package/dist/cjs/FrappeListView.native.js.map +1 -1
- package/dist/cjs/FrappeTable.cjs +10 -1
- package/dist/cjs/FrappeTable.native.js +10 -1
- package/dist/cjs/FrappeTable.native.js.map +1 -1
- package/dist/cjs/formEngine/docPermissions.cjs +83 -0
- package/dist/cjs/formEngine/docPermissions.native.js +155 -0
- package/dist/cjs/formEngine/docPermissions.native.js.map +1 -0
- package/dist/cjs/formEngine/index.cjs +9 -1
- package/dist/cjs/formEngine/index.native.js +8 -0
- package/dist/cjs/formEngine/index.native.js.map +1 -1
- package/dist/cjs/formEngine/useDocRights.cjs +54 -0
- package/dist/cjs/formEngine/useDocRights.native.js +60 -0
- package/dist/cjs/formEngine/useDocRights.native.js.map +1 -0
- package/dist/cjs/formEngine/useSessionRoles.cjs +47 -18
- package/dist/cjs/formEngine/useSessionRoles.native.js +53 -19
- package/dist/cjs/formEngine/useSessionRoles.native.js.map +1 -1
- package/dist/cjs/index.cjs +6 -0
- package/dist/cjs/index.native.js +6 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/FrappeForm.mjs +82 -52
- package/dist/esm/FrappeForm.mjs.map +1 -1
- package/dist/esm/FrappeForm.native.js +84 -57
- package/dist/esm/FrappeForm.native.js.map +1 -1
- package/dist/esm/FrappeListView.mjs +6 -1
- package/dist/esm/FrappeListView.mjs.map +1 -1
- package/dist/esm/FrappeListView.native.js +6 -1
- package/dist/esm/FrappeListView.native.js.map +1 -1
- package/dist/esm/FrappeTable.mjs +10 -1
- package/dist/esm/FrappeTable.mjs.map +1 -1
- package/dist/esm/FrappeTable.native.js +10 -1
- package/dist/esm/FrappeTable.native.js.map +1 -1
- package/dist/esm/formEngine/docPermissions.mjs +55 -0
- package/dist/esm/formEngine/docPermissions.mjs.map +1 -0
- package/dist/esm/formEngine/docPermissions.native.js +124 -0
- package/dist/esm/formEngine/docPermissions.native.js.map +1 -0
- package/dist/esm/formEngine/index.mjs +4 -2
- package/dist/esm/formEngine/index.mjs.map +1 -1
- package/dist/esm/formEngine/index.native.js +4 -2
- package/dist/esm/formEngine/index.native.js.map +1 -1
- package/dist/esm/formEngine/useDocRights.mjs +29 -0
- package/dist/esm/formEngine/useDocRights.mjs.map +1 -0
- package/dist/esm/formEngine/useDocRights.native.js +32 -0
- package/dist/esm/formEngine/useDocRights.native.js.map +1 -0
- package/dist/esm/formEngine/useSessionRoles.mjs +47 -19
- package/dist/esm/formEngine/useSessionRoles.mjs.map +1 -1
- package/dist/esm/formEngine/useSessionRoles.native.js +53 -20
- package/dist/esm/formEngine/useSessionRoles.native.js.map +1 -1
- package/dist/esm/index.mjs +2 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/jsx/FrappeForm.mjs +82 -52
- package/dist/jsx/FrappeForm.mjs.map +1 -1
- package/dist/jsx/FrappeForm.native.js +82 -55
- package/dist/jsx/FrappeForm.native.js.map +1 -1
- package/dist/jsx/FrappeListView.mjs +6 -1
- package/dist/jsx/FrappeListView.mjs.map +1 -1
- package/dist/jsx/FrappeListView.native.js +6 -1
- package/dist/jsx/FrappeListView.native.js.map +1 -1
- package/dist/jsx/FrappeTable.mjs +10 -1
- package/dist/jsx/FrappeTable.mjs.map +1 -1
- package/dist/jsx/FrappeTable.native.js +10 -1
- package/dist/jsx/FrappeTable.native.js.map +1 -1
- package/dist/jsx/formEngine/docPermissions.mjs +55 -0
- package/dist/jsx/formEngine/docPermissions.mjs.map +1 -0
- package/dist/jsx/formEngine/docPermissions.native.js +155 -0
- package/dist/jsx/formEngine/docPermissions.native.js.map +1 -0
- package/dist/jsx/formEngine/index.mjs +4 -2
- package/dist/jsx/formEngine/index.mjs.map +1 -1
- package/dist/jsx/formEngine/index.native.js +8 -0
- package/dist/jsx/formEngine/index.native.js.map +1 -1
- package/dist/jsx/formEngine/useDocRights.mjs +29 -0
- package/dist/jsx/formEngine/useDocRights.mjs.map +1 -0
- package/dist/jsx/formEngine/useDocRights.native.js +60 -0
- package/dist/jsx/formEngine/useDocRights.native.js.map +1 -0
- package/dist/jsx/formEngine/useSessionRoles.mjs +47 -19
- package/dist/jsx/formEngine/useSessionRoles.mjs.map +1 -1
- package/dist/jsx/formEngine/useSessionRoles.native.js +53 -19
- package/dist/jsx/formEngine/useSessionRoles.native.js.map +1 -1
- package/dist/jsx/index.js +2 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +2 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +6 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/package.json +16 -16
- package/src/FrappeForm.tsx +94 -62
- package/src/FrappeListView.tsx +12 -7
- package/src/FrappeTable.rights.spec.tsx +154 -0
- package/src/FrappeTable.tsx +21 -2
- package/src/formEngine/docPermissions.spec.ts +145 -0
- package/src/formEngine/docPermissions.ts +128 -0
- package/src/formEngine/index.ts +14 -1
- package/src/formEngine/useDocRights.ts +41 -0
- package/src/formEngine/useSessionRoles.ts +55 -29
- package/src/frappeRoutes.spec.tsx +116 -4
- package/src/index.ts +14 -0
- package/types/FrappeForm.d.ts.map +1 -1
- package/types/FrappeListView.d.ts +3 -2
- package/types/FrappeListView.d.ts.map +1 -1
- package/types/FrappeTable.d.ts +11 -2
- package/types/FrappeTable.d.ts.map +1 -1
- package/types/formEngine/docPermissions.d.ts +54 -0
- package/types/formEngine/docPermissions.d.ts.map +1 -0
- package/types/formEngine/index.d.ts +6 -1
- package/types/formEngine/index.d.ts.map +1 -1
- package/types/formEngine/useDocRights.d.ts +24 -0
- package/types/formEngine/useDocRights.d.ts.map +1 -0
- package/types/formEngine/useSessionRoles.d.ts +12 -2
- package/types/formEngine/useSessionRoles.d.ts.map +1 -1
- package/types/index.d.ts +2 -2
- package/types/index.d.ts.map +1 -1
package/dist/cjs/FrappeForm.cjs
CHANGED
|
@@ -47,7 +47,7 @@ var import_fetchFrom = require("./formEngine/fetchFrom.cjs");
|
|
|
47
47
|
var import_fieldPermissions = require("./formEngine/fieldPermissions.cjs");
|
|
48
48
|
var import_formActions = require("./formEngine/formActions.cjs");
|
|
49
49
|
var import_formLayout = require("./formEngine/formLayout.cjs");
|
|
50
|
-
var
|
|
50
|
+
var import_useDocRights = require("./formEngine/useDocRights.cjs");
|
|
51
51
|
var import_frappeConnections = require("./frappeConnections.cjs");
|
|
52
52
|
var import_FrappeFormConnections = require("./FrappeFormConnections.cjs");
|
|
53
53
|
var import_FrappeRowsReader = require("./FrappeRowsReader.cjs");
|
|
@@ -90,9 +90,6 @@ function fieldsFromDocument(doc) {
|
|
|
90
90
|
readOnly: true
|
|
91
91
|
}));
|
|
92
92
|
}
|
|
93
|
-
function hasRestrictedPermLevel(meta) {
|
|
94
|
-
return !!meta?.fields.some(field => Number(field.permlevel ?? 0) > 0);
|
|
95
|
-
}
|
|
96
93
|
function resolveFileUrl(value, baseURL) {
|
|
97
94
|
if (!value || typeof value !== "string") return void 0;
|
|
98
95
|
if (value.startsWith("http://") || value.startsWith("https://")) return value;
|
|
@@ -297,31 +294,12 @@ function FrappeFormBody({
|
|
|
297
294
|
isLoading: isMetaLoading,
|
|
298
295
|
error: metaError
|
|
299
296
|
} = (0, import_frappe.useDocTypeMeta)(frappeConfig, doctype);
|
|
300
|
-
const sessionRoles = (0, import_useSessionRoles.useSessionRoles)(!roles && hasRestrictedPermLevel(meta) ? frappeConfig : void 0);
|
|
301
|
-
const effectiveRoles = roles ?? sessionRoles;
|
|
302
|
-
const permLevels = (0, import_react2.useMemo)(() => (0, import_fieldPermissions.buildPermLevelMatrix)(meta?.permissions, effectiveRoles), [meta?.permissions, effectiveRoles]);
|
|
303
297
|
const isCreate = !name;
|
|
304
298
|
const docstatus = Number(baselineDoc?.docstatus ?? 0);
|
|
305
299
|
const layoutFields = (0, import_react2.useMemo)(() => {
|
|
306
300
|
if (!meta) return void 0;
|
|
307
301
|
return sections ? sectionsToLayoutFields(sections) : meta.fields;
|
|
308
302
|
}, [meta, sections]);
|
|
309
|
-
const formTabs = (0, import_react2.useMemo)(() => {
|
|
310
|
-
if (!layoutFields) return void 0;
|
|
311
|
-
return (0, import_formLayout.buildFormTabs)({
|
|
312
|
-
fields: layoutFields,
|
|
313
|
-
doc: {
|
|
314
|
-
...localDoc,
|
|
315
|
-
__islocal: isCreate ? 1 : 0
|
|
316
|
-
},
|
|
317
|
-
docstatus,
|
|
318
|
-
formReadOnly: !!meta?.read_only,
|
|
319
|
-
isCreate,
|
|
320
|
-
detailsLabel: t("Details"),
|
|
321
|
-
permLevels,
|
|
322
|
-
hiddenFields: hideFields
|
|
323
|
-
});
|
|
324
|
-
}, [layoutFields, localDoc, docstatus, meta?.read_only, isCreate, permLevels, hideFields, t]);
|
|
325
303
|
const readsWithoutMeta = !children && !meta && Boolean(metaError) && Boolean(name);
|
|
326
304
|
const recordTabs = (0, import_react2.useMemo)(() => {
|
|
327
305
|
if (!readsWithoutMeta || !baselineDoc) return void 0;
|
|
@@ -392,6 +370,33 @@ function FrappeFormBody({
|
|
|
392
370
|
_share: shareCollection
|
|
393
371
|
}) : null, [shareCollection]);
|
|
394
372
|
const shareRows = (0, import_react2.useMemo)(() => shareCollection ? rawShareRows ?? [] : void 0, [shareCollection, rawShareRows]);
|
|
373
|
+
const owner = baselineDoc?.owner;
|
|
374
|
+
const {
|
|
375
|
+
rights,
|
|
376
|
+
pending: rightsPending,
|
|
377
|
+
roles: effectiveRoles
|
|
378
|
+
} = (0, import_useDocRights.useDocRights)(frappeConfig, meta, {
|
|
379
|
+
roles,
|
|
380
|
+
owner: typeof owner === "string" ? owner : void 0,
|
|
381
|
+
shares: shareRows
|
|
382
|
+
});
|
|
383
|
+
const permLevels = (0, import_react2.useMemo)(() => (0, import_fieldPermissions.buildPermLevelMatrix)(meta?.permissions, effectiveRoles), [meta?.permissions, effectiveRoles]);
|
|
384
|
+
const formTabs = (0, import_react2.useMemo)(() => {
|
|
385
|
+
if (!layoutFields) return void 0;
|
|
386
|
+
return (0, import_formLayout.buildFormTabs)({
|
|
387
|
+
fields: layoutFields,
|
|
388
|
+
doc: {
|
|
389
|
+
...localDoc,
|
|
390
|
+
__islocal: isCreate ? 1 : 0
|
|
391
|
+
},
|
|
392
|
+
docstatus,
|
|
393
|
+
formReadOnly: !!meta?.read_only,
|
|
394
|
+
isCreate,
|
|
395
|
+
detailsLabel: t("Details"),
|
|
396
|
+
permLevels,
|
|
397
|
+
hiddenFields: hideFields
|
|
398
|
+
});
|
|
399
|
+
}, [layoutFields, localDoc, docstatus, meta?.read_only, isCreate, permLevels, hideFields, t]);
|
|
395
400
|
const assignmentCollection = (0, import_frappe.useFrappeCollection)(showSidebar && name && !frappeConfig.fixtures ? frappeConfig : void 0, "ToDo", {
|
|
396
401
|
fields: ["name", "allocated_to", "status", "reference_type", "reference_name"],
|
|
397
402
|
filters: {
|
|
@@ -556,8 +561,9 @@ function FrappeFormBody({
|
|
|
556
561
|
}
|
|
557
562
|
return validationErrors;
|
|
558
563
|
};
|
|
564
|
+
const canWriteRecord = isCreate ? rights.create : rights.write;
|
|
559
565
|
const handleSave = async () => {
|
|
560
|
-
if (wasDeleted) return;
|
|
566
|
+
if (wasDeleted || !canWriteRecord) return;
|
|
561
567
|
const requiredErrors = validateRequiredFields();
|
|
562
568
|
if (Object.keys(requiredErrors).length > 0) {
|
|
563
569
|
setErrors(requiredErrors);
|
|
@@ -639,7 +645,7 @@ function FrappeFormBody({
|
|
|
639
645
|
onCancel?.();
|
|
640
646
|
};
|
|
641
647
|
const handleDelete = async () => {
|
|
642
|
-
if (!docCollection || !name || wasDeleted) return;
|
|
648
|
+
if (!docCollection || !name || wasDeleted || !rights.delete) return;
|
|
643
649
|
if (!(await import_desktop.dialog.confirm(t("Delete this {{doctype}}?", {
|
|
644
650
|
doctype
|
|
645
651
|
})))) return;
|
|
@@ -694,6 +700,26 @@ function FrappeFormBody({
|
|
|
694
700
|
})
|
|
695
701
|
}));
|
|
696
702
|
}
|
|
703
|
+
if (!children && isCreate && meta && rightsPending) {
|
|
704
|
+
return frame(/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
705
|
+
...knobProps.panelPadding,
|
|
706
|
+
testID: "frappe-form-skeleton",
|
|
707
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncSkeleton, {
|
|
708
|
+
layout: "generic"
|
|
709
|
+
})
|
|
710
|
+
}));
|
|
711
|
+
}
|
|
712
|
+
if (!children && isCreate && meta && !rights.create) {
|
|
713
|
+
return frame(/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.EmptyState, {
|
|
714
|
+
testID: "frappe-form-not-permitted",
|
|
715
|
+
title: t("You can't create {{doctype}}", {
|
|
716
|
+
doctype
|
|
717
|
+
}),
|
|
718
|
+
description: t("Your roles don't grant creating a {{doctype}}.", {
|
|
719
|
+
doctype
|
|
720
|
+
})
|
|
721
|
+
}));
|
|
722
|
+
}
|
|
697
723
|
if (!children && metaError && !meta && !name) {
|
|
698
724
|
return frame(/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
|
|
699
725
|
...knobProps.panelPadding,
|
|
@@ -757,7 +783,13 @@ function FrappeFormBody({
|
|
|
757
783
|
}
|
|
758
784
|
const effectiveDisabled = disabled || wasDeleted;
|
|
759
785
|
const readOnlyView = Boolean(onEdit) || readsWithoutMeta;
|
|
760
|
-
const fieldsDisabled = effectiveDisabled || readOnlyView;
|
|
786
|
+
const fieldsDisabled = effectiveDisabled || readOnlyView || !canWriteRecord;
|
|
787
|
+
const showDelete = Boolean(name && onDelete && !wasDeleted && rights.delete);
|
|
788
|
+
const showEdit = Boolean(onEdit && rights.write);
|
|
789
|
+
const showSave = !onEdit && canWriteRecord;
|
|
790
|
+
const showCancel = !onEdit && Boolean(onCancel);
|
|
791
|
+
const showNotSaved = hasUnsavedChanges && !onEdit;
|
|
792
|
+
const toolbarShown = showToolbar && !readsWithoutMeta && (showDelete || showEdit || showSave || showCancel || showNotSaved);
|
|
761
793
|
const shownTabs = formTabs ?? recordTabs;
|
|
762
794
|
const imageFieldName = meta?.image_field;
|
|
763
795
|
const sidebarImageUrl = imageFieldName ? resolveFileUrl(localDoc[imageFieldName], finalBaseURL) : void 0;
|
|
@@ -871,7 +903,7 @@ function FrappeFormBody({
|
|
|
871
903
|
onChangeText: value => setValue("name", value),
|
|
872
904
|
placeholder: t("New document name"),
|
|
873
905
|
error: errors.name,
|
|
874
|
-
disabled: effectiveDisabled
|
|
906
|
+
disabled: effectiveDisabled || !canWriteRecord
|
|
875
907
|
}), tabItems.length > 1 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tabs, {
|
|
876
908
|
items: tabItems,
|
|
877
909
|
value: effectiveTab,
|
|
@@ -893,17 +925,17 @@ function FrappeFormBody({
|
|
|
893
925
|
color: import_forms.formCommonColors.error,
|
|
894
926
|
...knobProps.body,
|
|
895
927
|
children: errors.general
|
|
896
|
-
}),
|
|
928
|
+
}), toolbarShown && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
897
929
|
...knobProps.gap,
|
|
898
930
|
justifyContent: "flex-end",
|
|
899
931
|
alignItems: "center",
|
|
900
932
|
paddingTop: "$3",
|
|
901
|
-
children: [
|
|
933
|
+
children: [showNotSaved && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
902
934
|
color: "$orange11",
|
|
903
935
|
marginInlineEnd: "auto",
|
|
904
936
|
...knobProps.body,
|
|
905
937
|
children: t("Not Saved")
|
|
906
|
-
}),
|
|
938
|
+
}), showDelete && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
907
939
|
outlined: true,
|
|
908
940
|
error: true,
|
|
909
941
|
icon: import_react.TrashIcon,
|
|
@@ -913,7 +945,7 @@ function FrappeFormBody({
|
|
|
913
945
|
disabledReasonPlacement: "inline",
|
|
914
946
|
onPress: handleDelete,
|
|
915
947
|
children: t("Delete")
|
|
916
|
-
}),
|
|
948
|
+
}), showEdit && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
917
949
|
accent: true,
|
|
918
950
|
icon: import_react.PencilSimpleIcon,
|
|
919
951
|
disabled: effectiveDisabled,
|
|
@@ -921,25 +953,23 @@ function FrappeFormBody({
|
|
|
921
953
|
disabledReasonPlacement: "inline",
|
|
922
954
|
onPress: onEdit,
|
|
923
955
|
children: t("Edit")
|
|
924
|
-
})
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
children: isSubmitting ? t("Saving...") : t("Save")
|
|
942
|
-
})]
|
|
956
|
+
}), showCancel && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
957
|
+
outlined: true,
|
|
958
|
+
icon: import_react.XIcon,
|
|
959
|
+
disabled,
|
|
960
|
+
disabledReason: t("Form is read-only"),
|
|
961
|
+
disabledReasonPlacement: "inline",
|
|
962
|
+
onPress: handleCancel,
|
|
963
|
+
children: t("Cancel")
|
|
964
|
+
}), showSave && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
965
|
+
accent: true,
|
|
966
|
+
icon: import_react.FloppyDiskIcon,
|
|
967
|
+
loading: isSubmitting,
|
|
968
|
+
disabled: effectiveDisabled,
|
|
969
|
+
disabledReason: t("Form is read-only"),
|
|
970
|
+
disabledReasonPlacement: "inline",
|
|
971
|
+
onPress: handleSave,
|
|
972
|
+
children: isSubmitting ? t("Saving...") : t("Save")
|
|
943
973
|
})]
|
|
944
974
|
})]
|
|
945
975
|
})]
|
|
@@ -51,7 +51,7 @@ var import_fetchFrom = require("./formEngine/fetchFrom.native.js");
|
|
|
51
51
|
var import_fieldPermissions = require("./formEngine/fieldPermissions.native.js");
|
|
52
52
|
var import_formActions = require("./formEngine/formActions.native.js");
|
|
53
53
|
var import_formLayout = require("./formEngine/formLayout.native.js");
|
|
54
|
-
var
|
|
54
|
+
var import_useDocRights = require("./formEngine/useDocRights.native.js");
|
|
55
55
|
var import_frappeConnections = require("./frappeConnections.native.js");
|
|
56
56
|
var import_FrappeFormConnections = require("./FrappeFormConnections.native.js");
|
|
57
57
|
var import_FrappeRowsReader = require("./FrappeRowsReader.native.js");
|
|
@@ -109,12 +109,6 @@ function fieldsFromDocument(doc) {
|
|
|
109
109
|
};
|
|
110
110
|
});
|
|
111
111
|
}
|
|
112
|
-
function hasRestrictedPermLevel(meta) {
|
|
113
|
-
return !!(meta === null || meta === void 0 ? void 0 : meta.fields.some(function (field) {
|
|
114
|
-
var _field_permlevel;
|
|
115
|
-
return Number((_field_permlevel = field.permlevel) !== null && _field_permlevel !== void 0 ? _field_permlevel : 0) > 0;
|
|
116
|
-
}));
|
|
117
|
-
}
|
|
118
112
|
function resolveFileUrl(value, baseURL) {
|
|
119
113
|
if (!value || typeof value !== "string") return void 0;
|
|
120
114
|
if (value.startsWith("http://") || value.startsWith("https://")) return value;
|
|
@@ -350,33 +344,12 @@ function FrappeFormBody(param) {
|
|
|
350
344
|
isLoading: isMetaLoading,
|
|
351
345
|
error: metaError
|
|
352
346
|
} = (0, import_frappe.useDocTypeMeta)(frappeConfig, doctype);
|
|
353
|
-
var sessionRoles = (0, import_useSessionRoles.useSessionRoles)(!roles && hasRestrictedPermLevel(meta) ? frappeConfig : void 0);
|
|
354
|
-
var effectiveRoles = roles !== null && roles !== void 0 ? roles : sessionRoles;
|
|
355
|
-
var permLevels = (0, import_react3.useMemo)(function () {
|
|
356
|
-
return (0, import_fieldPermissions.buildPermLevelMatrix)(meta === null || meta === void 0 ? void 0 : meta.permissions, effectiveRoles);
|
|
357
|
-
}, [meta === null || meta === void 0 ? void 0 : meta.permissions, effectiveRoles]);
|
|
358
347
|
var isCreate = !name;
|
|
359
348
|
var docstatus = Number((_ref = baselineDoc === null || baselineDoc === void 0 ? void 0 : baselineDoc.docstatus) !== null && _ref !== void 0 ? _ref : 0);
|
|
360
349
|
var layoutFields = (0, import_react3.useMemo)(function () {
|
|
361
350
|
if (!meta) return void 0;
|
|
362
351
|
return sections ? sectionsToLayoutFields(sections) : meta.fields;
|
|
363
352
|
}, [meta, sections]);
|
|
364
|
-
var formTabs = (0, import_react3.useMemo)(function () {
|
|
365
|
-
if (!layoutFields) return void 0;
|
|
366
|
-
return (0, import_formLayout.buildFormTabs)({
|
|
367
|
-
fields: layoutFields,
|
|
368
|
-
doc: {
|
|
369
|
-
...localDoc,
|
|
370
|
-
__islocal: isCreate ? 1 : 0
|
|
371
|
-
},
|
|
372
|
-
docstatus,
|
|
373
|
-
formReadOnly: !!(meta === null || meta === void 0 ? void 0 : meta.read_only),
|
|
374
|
-
isCreate,
|
|
375
|
-
detailsLabel: t("Details"),
|
|
376
|
-
permLevels,
|
|
377
|
-
hiddenFields: hideFields
|
|
378
|
-
});
|
|
379
|
-
}, [layoutFields, localDoc, docstatus, meta === null || meta === void 0 ? void 0 : meta.read_only, isCreate, permLevels, hideFields, t]);
|
|
380
353
|
var readsWithoutMeta = !children && !meta && Boolean(metaError) && Boolean(name);
|
|
381
354
|
var recordTabs = (0, import_react3.useMemo)(function () {
|
|
382
355
|
if (!readsWithoutMeta || !baselineDoc) return void 0;
|
|
@@ -455,6 +428,35 @@ function FrappeFormBody(param) {
|
|
|
455
428
|
var shareRows = (0, import_react3.useMemo)(function () {
|
|
456
429
|
return shareCollection ? rawShareRows !== null && rawShareRows !== void 0 ? rawShareRows : [] : void 0;
|
|
457
430
|
}, [shareCollection, rawShareRows]);
|
|
431
|
+
var owner = baselineDoc === null || baselineDoc === void 0 ? void 0 : baselineDoc.owner;
|
|
432
|
+
var {
|
|
433
|
+
rights,
|
|
434
|
+
pending: rightsPending,
|
|
435
|
+
roles: effectiveRoles
|
|
436
|
+
} = (0, import_useDocRights.useDocRights)(frappeConfig, meta, {
|
|
437
|
+
roles,
|
|
438
|
+
owner: typeof owner === "string" ? owner : void 0,
|
|
439
|
+
shares: shareRows
|
|
440
|
+
});
|
|
441
|
+
var permLevels = (0, import_react3.useMemo)(function () {
|
|
442
|
+
return (0, import_fieldPermissions.buildPermLevelMatrix)(meta === null || meta === void 0 ? void 0 : meta.permissions, effectiveRoles);
|
|
443
|
+
}, [meta === null || meta === void 0 ? void 0 : meta.permissions, effectiveRoles]);
|
|
444
|
+
var formTabs = (0, import_react3.useMemo)(function () {
|
|
445
|
+
if (!layoutFields) return void 0;
|
|
446
|
+
return (0, import_formLayout.buildFormTabs)({
|
|
447
|
+
fields: layoutFields,
|
|
448
|
+
doc: {
|
|
449
|
+
...localDoc,
|
|
450
|
+
__islocal: isCreate ? 1 : 0
|
|
451
|
+
},
|
|
452
|
+
docstatus,
|
|
453
|
+
formReadOnly: !!(meta === null || meta === void 0 ? void 0 : meta.read_only),
|
|
454
|
+
isCreate,
|
|
455
|
+
detailsLabel: t("Details"),
|
|
456
|
+
permLevels,
|
|
457
|
+
hiddenFields: hideFields
|
|
458
|
+
});
|
|
459
|
+
}, [layoutFields, localDoc, docstatus, meta === null || meta === void 0 ? void 0 : meta.read_only, isCreate, permLevels, hideFields, t]);
|
|
458
460
|
var assignmentCollection = (0, import_frappe.useFrappeCollection)(showSidebar && name && !frappeConfig.fixtures ? frappeConfig : void 0, "ToDo", {
|
|
459
461
|
fields: ["name", "allocated_to", "status", "reference_type", "reference_name"],
|
|
460
462
|
filters: {
|
|
@@ -748,8 +750,9 @@ function FrappeFormBody(param) {
|
|
|
748
750
|
}
|
|
749
751
|
return validationErrors;
|
|
750
752
|
};
|
|
753
|
+
var canWriteRecord = isCreate ? rights.create : rights.write;
|
|
751
754
|
var handleSave = async function handleSave2() {
|
|
752
|
-
if (wasDeleted) return;
|
|
755
|
+
if (wasDeleted || !canWriteRecord) return;
|
|
753
756
|
var requiredErrors = validateRequiredFields();
|
|
754
757
|
if (Object.keys(requiredErrors).length > 0) {
|
|
755
758
|
setErrors(requiredErrors);
|
|
@@ -871,7 +874,7 @@ function FrappeFormBody(param) {
|
|
|
871
874
|
onCancel === null || onCancel === void 0 ? void 0 : onCancel();
|
|
872
875
|
};
|
|
873
876
|
var handleDelete = async function handleDelete2() {
|
|
874
|
-
if (!docCollection || !name || wasDeleted) return;
|
|
877
|
+
if (!docCollection || !name || wasDeleted || !rights.delete) return;
|
|
875
878
|
if (!(await import_desktop.dialog.confirm(t("Delete this {{doctype}}?", {
|
|
876
879
|
doctype
|
|
877
880
|
})))) return;
|
|
@@ -928,6 +931,26 @@ function FrappeFormBody(param) {
|
|
|
928
931
|
})
|
|
929
932
|
}));
|
|
930
933
|
}
|
|
934
|
+
if (!children && isCreate && meta && rightsPending) {
|
|
935
|
+
return frame(/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
936
|
+
...knobProps.panelPadding,
|
|
937
|
+
testID: "frappe-form-skeleton",
|
|
938
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncSkeleton, {
|
|
939
|
+
layout: "generic"
|
|
940
|
+
})
|
|
941
|
+
}));
|
|
942
|
+
}
|
|
943
|
+
if (!children && isCreate && meta && !rights.create) {
|
|
944
|
+
return frame(/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.EmptyState, {
|
|
945
|
+
testID: "frappe-form-not-permitted",
|
|
946
|
+
title: t("You can't create {{doctype}}", {
|
|
947
|
+
doctype
|
|
948
|
+
}),
|
|
949
|
+
description: t("Your roles don't grant creating a {{doctype}}.", {
|
|
950
|
+
doctype
|
|
951
|
+
})
|
|
952
|
+
}));
|
|
953
|
+
}
|
|
931
954
|
if (!children && metaError && !meta && !name) {
|
|
932
955
|
return frame(/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
|
|
933
956
|
...knobProps.panelPadding,
|
|
@@ -991,7 +1014,13 @@ function FrappeFormBody(param) {
|
|
|
991
1014
|
}
|
|
992
1015
|
var effectiveDisabled = disabled || wasDeleted;
|
|
993
1016
|
var readOnlyView = Boolean(onEdit) || readsWithoutMeta;
|
|
994
|
-
var fieldsDisabled = effectiveDisabled || readOnlyView;
|
|
1017
|
+
var fieldsDisabled = effectiveDisabled || readOnlyView || !canWriteRecord;
|
|
1018
|
+
var showDelete = Boolean(name && onDelete && !wasDeleted && rights.delete);
|
|
1019
|
+
var showEdit = Boolean(onEdit && rights.write);
|
|
1020
|
+
var showSave = !onEdit && canWriteRecord;
|
|
1021
|
+
var showCancel = !onEdit && Boolean(onCancel);
|
|
1022
|
+
var showNotSaved = hasUnsavedChanges && !onEdit;
|
|
1023
|
+
var toolbarShown = showToolbar && !readsWithoutMeta && (showDelete || showEdit || showSave || showCancel || showNotSaved);
|
|
995
1024
|
var shownTabs = formTabs !== null && formTabs !== void 0 ? formTabs : recordTabs;
|
|
996
1025
|
var imageFieldName = meta === null || meta === void 0 ? void 0 : meta.image_field;
|
|
997
1026
|
var sidebarImageUrl = imageFieldName ? resolveFileUrl(localDoc[imageFieldName], finalBaseURL) : void 0;
|
|
@@ -1125,7 +1154,7 @@ function FrappeFormBody(param) {
|
|
|
1125
1154
|
},
|
|
1126
1155
|
placeholder: t("New document name"),
|
|
1127
1156
|
error: errors.name,
|
|
1128
|
-
disabled: effectiveDisabled
|
|
1157
|
+
disabled: effectiveDisabled || !canWriteRecord
|
|
1129
1158
|
}), tabItems.length > 1 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tabs, {
|
|
1130
1159
|
items: tabItems,
|
|
1131
1160
|
value: effectiveTab,
|
|
@@ -1147,17 +1176,17 @@ function FrappeFormBody(param) {
|
|
|
1147
1176
|
color: import_forms.formCommonColors.error,
|
|
1148
1177
|
...knobProps.body,
|
|
1149
1178
|
children: errors.general
|
|
1150
|
-
}),
|
|
1179
|
+
}), toolbarShown && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
1151
1180
|
...knobProps.gap,
|
|
1152
1181
|
justifyContent: "flex-end",
|
|
1153
1182
|
alignItems: "center",
|
|
1154
1183
|
paddingTop: "$3",
|
|
1155
|
-
children: [
|
|
1184
|
+
children: [showNotSaved && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
1156
1185
|
color: "$orange11",
|
|
1157
1186
|
marginInlineEnd: "auto",
|
|
1158
1187
|
...knobProps.body,
|
|
1159
1188
|
children: t("Not Saved")
|
|
1160
|
-
}),
|
|
1189
|
+
}), showDelete && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
1161
1190
|
outlined: true,
|
|
1162
1191
|
error: true,
|
|
1163
1192
|
icon: import_react2.TrashIcon,
|
|
@@ -1167,7 +1196,7 @@ function FrappeFormBody(param) {
|
|
|
1167
1196
|
disabledReasonPlacement: "inline",
|
|
1168
1197
|
onPress: handleDelete,
|
|
1169
1198
|
children: t("Delete")
|
|
1170
|
-
}),
|
|
1199
|
+
}), showEdit && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
1171
1200
|
accent: true,
|
|
1172
1201
|
icon: import_react2.PencilSimpleIcon,
|
|
1173
1202
|
disabled: effectiveDisabled,
|
|
@@ -1175,25 +1204,23 @@ function FrappeFormBody(param) {
|
|
|
1175
1204
|
disabledReasonPlacement: "inline",
|
|
1176
1205
|
onPress: onEdit,
|
|
1177
1206
|
children: t("Edit")
|
|
1178
|
-
})
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
children: isSubmitting ? t("Saving...") : t("Save")
|
|
1196
|
-
})]
|
|
1207
|
+
}), showCancel && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
1208
|
+
outlined: true,
|
|
1209
|
+
icon: import_react2.XIcon,
|
|
1210
|
+
disabled,
|
|
1211
|
+
disabledReason: t("Form is read-only"),
|
|
1212
|
+
disabledReasonPlacement: "inline",
|
|
1213
|
+
onPress: handleCancel,
|
|
1214
|
+
children: t("Cancel")
|
|
1215
|
+
}), showSave && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
1216
|
+
accent: true,
|
|
1217
|
+
icon: import_react2.FloppyDiskIcon,
|
|
1218
|
+
loading: isSubmitting,
|
|
1219
|
+
disabled: effectiveDisabled,
|
|
1220
|
+
disabledReason: t("Form is read-only"),
|
|
1221
|
+
disabledReasonPlacement: "inline",
|
|
1222
|
+
onPress: handleSave,
|
|
1223
|
+
children: isSubmitting ? t("Saving...") : t("Save")
|
|
1197
1224
|
})]
|
|
1198
1225
|
})]
|
|
1199
1226
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","FrappeForm_exports","__export","FrappeForm","buildSidebarSections","mapDocToSidebarMetadata","resolveFileUrl","module","exports","import_jsx_runtime","require","import_react","import_frappe","import_components","import_schemaForm","import_FormSidebar","import_db","import_react2","import_react3","import_react_i18next","import_forms","import_tamagui","import_theme","import_FrappeProvider","import_FrappeReconnectIndicator","import_timeline","import_desktop","import_fetchFrom","import_fieldPermissions","import_formActions","import_formLayout","import_useSessionRoles","import_frappeConnections","import_FrappeFormConnections","import_frappeNavigation","_instanceof","left","right","Symbol","hasInstance","isEmptyFieldValue","trim","Array","isArray","length","sectionsToLayoutFields","sections","fields","forEach","section","sectionIndex","push","fieldname","fieldtype","tab","label","collapsible","columns","column","columnIndex","documentBookkeeping","Set","fieldsFromDocument","doc","Object","entries","filter","param","key","startsWith","has","map","name","replace","c","toUpperCase","type","Number","isInteger","readOnly","hasRestrictedPermLevel","meta","some","field","_field_permlevel","permlevel","baseURL","shares","t","assignments","assignees","row","allocated_to","user","Boolean","_assign","JSON","parse","unused","title","items","email","id","emptyText","share","_share_user","everyone","sublabel","write","read","metadata","owner","modified_by","creation","date","props","route","formProps","jsx","FrappeFormBody","FrappeFormRoute","nameProp","onSave","onCancel","onDelete","onEdit","router","useFrappeRouter","fromPath","frappeRouteTarget","pathname","target","mode","go","go2","next","navigate","frappeRouteHref","createElement","routePage","onBack","_doc_name","saved","auth","syncOptions","doctype","children","overrides","hideFields","readOnlyFields","order","roles","showToolbar","showSidebar","showTimeline","disabled","sectionHeadingLevel","connections","showConnections","initialDoc","loadingFallback","notFoundFallback","errorFallback","_ref","_ref1","_tabItems_","_tabItems_1","config","useFrappeConfig","knobProps","useResolvedKnobs","useTranslation","seedDoc","seedRef","useRef","current","localDoc","setLocalDoc","useState","baselineDoc","setBaselineDoc","docError","setDocError","conflictFields","setConflictFields","wasDeleted","setWasDeleted","isSubmitting","setIsSubmitting","errors","setErrors","activeTab","setActiveTab","everLoadedRef","localDocRef","baselineRef","finalBaseURL","finalAuth","finalSyncOptions","Error","frappeConfig","useMemo","socketPort","siteName","socketBaseURL","realtime","fixtures","isLoading","isMetaLoading","error","metaError","useDocTypeMeta","sessionRoles","useSessionRoles","effectiveRoles","permLevels","buildPermLevelMatrix","permissions","isCreate","docstatus","layoutFields","formTabs","buildFormTabs","__islocal","formReadOnly","read_only","detailsLabel","hiddenFields","readsWithoutMeta","recordTabs","recordFields","schema","promptNamed","isPromptNamed","autoname","naming_rule","fetchMap","buildFetchMap","handleDocSyncError","useCallback","err","String","docCollection","useFrappeCollection","filters","onSyncError","data","rawDocData","isDocLoading","useLiveQuery","q","from","_doc","where","param2","eq","liveDoc","_arr_","arr","collection","shareCollection","share_doctype","share_name","rawShareRows","_share","shareRows","assignmentCollection","reference_type","reference_name","status","rawAssignmentRows","_assignment","assignmentRows","useEffect","seed","effectiveConnections","connectionsFromMeta","readsConnections","connectionSnapshots","setConnectionSnapshots","connectionReads","link","_link_limit","options","connectionFields","limit","onChange","snapshot","prev","connectionRows","rows","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","done","_ref2","_connectionSnapshots_link_doctype","return","connectionsLoading","useFrappeDoctypeEvents","event","payload","incoming","baseline","local","merged","newConflicts","keys","localValue","remote","dirtyFieldNames","base","dirty","hasUnsavedChanges","runFetchFrom","runFetchFrom2","rules","get","applyPatch","applyPatch2","fetched2","patch","applyFetchedValues","linkField","find","metaField","targetDoctype","sources","rule","source","fetched","getDoc","then","validateLink","createHttpClient","catch","setValue","setValue2","newErrors","validateRequiredFields","validateRequiredFields2","validationErrors","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","required","handleSave","handleSave2","requiredErrors","changedFields","tx","update","draft","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","isPersisted","promise","_localDoc_name","_getFrappeSyncModule","temporaryName","Date","now","docToInsert","tx1","insert","createdName","getFrappeSyncModule","err1","e","exc_type","_server_messages","messages","msg","parsed","message","general"],"sources":["../../src/FrappeForm.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","FrappeForm_exports","__export","FrappeForm","buildSidebarSections","mapDocToSidebarMetadata","resolveFileUrl","module","exports","import_jsx_runtime","require","import_react","import_frappe","import_components","import_schemaForm","import_FormSidebar","import_db","import_react2","import_react3","import_react_i18next","import_forms","import_tamagui","import_theme","import_FrappeProvider","import_FrappeReconnectIndicator","import_timeline","import_desktop","import_fetchFrom","import_fieldPermissions","import_formActions","import_formLayout","import_useDocRights","import_frappeConnections","import_FrappeFormConnections","import_frappeNavigation","_instanceof","left","right","Symbol","hasInstance","isEmptyFieldValue","trim","Array","isArray","length","sectionsToLayoutFields","sections","fields","forEach","section","sectionIndex","push","fieldname","fieldtype","tab","label","collapsible","columns","column","columnIndex","documentBookkeeping","Set","fieldsFromDocument","doc","Object","entries","filter","param","key","startsWith","has","map","name","replace","c","toUpperCase","type","Number","isInteger","readOnly","baseURL","shares","t","assignments","assignees","row","allocated_to","user","Boolean","_assign","JSON","parse","unused","title","items","email","id","emptyText","share","_share_user","everyone","sublabel","write","read","metadata","owner","modified_by","creation","date","props","route","formProps","jsx","FrappeFormBody","FrappeFormRoute","nameProp","onSave","onCancel","onDelete","onEdit","router","useFrappeRouter","fromPath","frappeRouteTarget","pathname","target","mode","go","go2","next","navigate","frappeRouteHref","createElement","routePage","onBack","_doc_name","saved","auth","syncOptions","doctype","children","overrides","hideFields","readOnlyFields","order","roles","showToolbar","showSidebar","showTimeline","disabled","sectionHeadingLevel","connections","showConnections","initialDoc","loadingFallback","notFoundFallback","errorFallback","_ref","_ref1","_tabItems_","_tabItems_1","config","useFrappeConfig","knobProps","useResolvedKnobs","useTranslation","seedDoc","seedRef","useRef","current","localDoc","setLocalDoc","useState","baselineDoc","setBaselineDoc","docError","setDocError","conflictFields","setConflictFields","wasDeleted","setWasDeleted","isSubmitting","setIsSubmitting","errors","setErrors","activeTab","setActiveTab","everLoadedRef","localDocRef","baselineRef","finalBaseURL","finalAuth","finalSyncOptions","Error","frappeConfig","useMemo","socketPort","siteName","socketBaseURL","realtime","fixtures","meta","isLoading","isMetaLoading","error","metaError","useDocTypeMeta","isCreate","docstatus","layoutFields","readsWithoutMeta","recordTabs","recordFields","schema","promptNamed","isPromptNamed","autoname","naming_rule","fetchMap","buildFetchMap","handleDocSyncError","useCallback","err","String","docCollection","useFrappeCollection","filters","onSyncError","data","rawDocData","isDocLoading","useLiveQuery","q","from","_doc","where","param2","eq","liveDoc","_arr_","arr","collection","shareCollection","share_doctype","share_name","rawShareRows","_share","shareRows","rights","pending","rightsPending","effectiveRoles","useDocRights","permLevels","buildPermLevelMatrix","permissions","formTabs","buildFormTabs","__islocal","formReadOnly","read_only","detailsLabel","hiddenFields","assignmentCollection","reference_type","reference_name","status","rawAssignmentRows","_assignment","assignmentRows","useEffect","seed","effectiveConnections","connectionsFromMeta","readsConnections","connectionSnapshots","setConnectionSnapshots","connectionReads","link","_link_limit","options","connectionFields","limit","onChange","snapshot","prev","connectionRows","rows","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","done","_ref2","_connectionSnapshots_link_doctype","return","connectionsLoading","some","useFrappeDoctypeEvents","event","payload","incoming","baseline","local","merged","newConflicts","keys","localValue","remote","dirtyFieldNames","base","dirty","hasUnsavedChanges","runFetchFrom","runFetchFrom2","field","rules","get","applyPatch","applyPatch2","fetched2","patch","applyFetchedValues","linkField","find","metaField","targetDoctype","sources","rule","source","fetched","getDoc","then","validateLink","createHttpClient","catch","setValue","setValue2","newErrors","validateRequiredFields","validateRequiredFields2","validationErrors","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","required","canWriteRecord","create","handleSave","handleSave2","requiredErrors","changedFields","tx","update","draft","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","isPersisted","promise","_localDoc_name","_getFrappeSyncModule","temporaryName","Date","now","docToInsert","tx1","insert","createdName","getFrappeSyncModule","err1","e","exc_type","_server_messages","messages","msg","parsed","message","general","handleCancel","handleCancel2","handleDelete","handleDelete2","delete","dialog","confirm"],"sources":["../../src/FrappeForm.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -49,6 +49,7 @@ var import_store = require("@multiplatform.one/store");
|
|
|
49
49
|
var import_FrappeProvider = require("./FrappeProvider.cjs");
|
|
50
50
|
var import_FrappeList = require("./FrappeList.cjs");
|
|
51
51
|
var import_FrappeTable = require("./FrappeTable.cjs");
|
|
52
|
+
var import_useDocRights = require("./formEngine/useDocRights.cjs");
|
|
52
53
|
var import_frappeNavigation = require("./frappeNavigation.cjs");
|
|
53
54
|
var import_frappeConnections = require("./frappeConnections.cjs");
|
|
54
55
|
var import_liveErrors = require("./liveErrors.cjs");
|
|
@@ -168,7 +169,10 @@ function FrappeListView({
|
|
|
168
169
|
name: doc.name
|
|
169
170
|
}));
|
|
170
171
|
} : void 0);
|
|
171
|
-
const
|
|
172
|
+
const {
|
|
173
|
+
rights
|
|
174
|
+
} = (0, import_useDocRights.useDocRights)(connectionConfig, meta);
|
|
175
|
+
const onAdd = !rights.create ? void 0 : onAddProp ?? (route !== void 0 && navigate ? () => navigate((0, import_frappeNavigation.frappeRouteHref)(route, {
|
|
172
176
|
mode: "create"
|
|
173
177
|
})) : void 0);
|
|
174
178
|
const asPage = view => route === void 0 ? view : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.ListPageLayout, {
|
|
@@ -531,6 +535,7 @@ function FrappeListView({
|
|
|
531
535
|
filters: resolvedFilters,
|
|
532
536
|
columns: effectiveColumns,
|
|
533
537
|
onRowClick: onItemClick,
|
|
538
|
+
rights,
|
|
534
539
|
baseURL: finalBaseURL,
|
|
535
540
|
auth: finalAuth,
|
|
536
541
|
syncOptions: finalSyncOptions
|