@firecms/core 3.0.0-canary.279 → 3.0.0-canary.280
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/components/UserDisplay.d.ts +7 -0
- package/dist/components/VirtualTable/fields/VirtualTableUserSelect.d.ts +12 -0
- package/dist/contexts/InternalUserManagementContext.d.ts +3 -0
- package/dist/core/FireCMS.d.ts +0 -1
- package/dist/core/field_configs.d.ts +1 -1
- package/dist/form/field_bindings/UserSelectFieldBinding.d.ts +12 -0
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useInternalUserManagementController.d.ts +12 -0
- package/dist/index.es.js +474 -84
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +473 -83
- package/dist/index.umd.js.map +1 -1
- package/dist/preview/components/UserPreview.d.ts +8 -0
- package/dist/preview/index.d.ts +1 -0
- package/dist/types/firecms.d.ts +15 -0
- package/dist/types/firecms_context.d.ts +16 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/internal_user_management.d.ts +20 -0
- package/dist/types/plugins.d.ts +2 -0
- package/dist/types/properties.d.ts +9 -0
- package/dist/types/property_config.d.ts +1 -1
- package/dist/types/user.d.ts +1 -1
- package/package.json +5 -5
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +12 -0
- package/src/components/UserDisplay.tsx +54 -0
- package/src/components/VirtualTable/fields/VirtualTableUserSelect.tsx +99 -0
- package/src/contexts/InternalUserManagementContext.tsx +4 -0
- package/src/core/FireCMS.tsx +22 -13
- package/src/core/field_configs.tsx +15 -1
- package/src/form/field_bindings/UserSelectFieldBinding.tsx +94 -0
- package/src/hooks/index.tsx +2 -0
- package/src/hooks/useFireCMSContext.tsx +6 -2
- package/src/hooks/useInternalUserManagementController.tsx +16 -0
- package/src/preview/PropertyPreview.tsx +8 -0
- package/src/preview/components/UserPreview.tsx +22 -0
- package/src/preview/index.ts +1 -0
- package/src/types/firecms.tsx +16 -0
- package/src/types/firecms_context.tsx +17 -0
- package/src/types/index.ts +1 -0
- package/src/types/internal_user_management.ts +24 -0
- package/src/types/plugins.tsx +3 -0
- package/src/types/properties.ts +10 -0
- package/src/types/property_config.tsx +1 -0
- package/src/types/user.ts +1 -1
- package/src/util/entities.ts +1 -1
- package/src/util/entity_cache.ts +2 -2
package/dist/index.umd.js
CHANGED
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
return result;
|
|
521
521
|
}
|
|
522
522
|
function getReferenceFrom(entity) {
|
|
523
|
-
return new EntityReference(entity.id, entity.path);
|
|
523
|
+
return new EntityReference(entity.id, entity.path, entity.databaseId);
|
|
524
524
|
}
|
|
525
525
|
function traverseValuesProperties(inputValues, properties, operation) {
|
|
526
526
|
const updatedValues = Object.entries(properties).map(([key, property]) => {
|
|
@@ -4071,6 +4071,10 @@
|
|
|
4071
4071
|
const useAnalyticsController = () => {
|
|
4072
4072
|
return React.useContext(AnalyticsContext);
|
|
4073
4073
|
};
|
|
4074
|
+
const InternalUserManagementContext = React.createContext({});
|
|
4075
|
+
const useInternalUserManagementController = () => {
|
|
4076
|
+
return React.useContext(InternalUserManagementContext);
|
|
4077
|
+
};
|
|
4074
4078
|
const useFireCMSContext = () => {
|
|
4075
4079
|
const authController = useAuthController();
|
|
4076
4080
|
const sideDialogsController = useSideDialogsController();
|
|
@@ -4083,6 +4087,7 @@
|
|
|
4083
4087
|
const dialogsController = useDialogsController();
|
|
4084
4088
|
const customizationController = useCustomizationController();
|
|
4085
4089
|
const analyticsController = useAnalyticsController();
|
|
4090
|
+
const userManagement = useInternalUserManagementController();
|
|
4086
4091
|
const fireCMSContextRef = React.useRef({
|
|
4087
4092
|
authController,
|
|
4088
4093
|
sideDialogsController,
|
|
@@ -4094,7 +4099,8 @@
|
|
|
4094
4099
|
userConfigPersistence,
|
|
4095
4100
|
dialogsController,
|
|
4096
4101
|
customizationController,
|
|
4097
|
-
analyticsController
|
|
4102
|
+
analyticsController,
|
|
4103
|
+
userManagement
|
|
4098
4104
|
});
|
|
4099
4105
|
React.useEffect(() => {
|
|
4100
4106
|
fireCMSContextRef.current = {
|
|
@@ -4108,7 +4114,8 @@
|
|
|
4108
4114
|
userConfigPersistence,
|
|
4109
4115
|
dialogsController,
|
|
4110
4116
|
customizationController,
|
|
4111
|
-
analyticsController
|
|
4117
|
+
analyticsController,
|
|
4118
|
+
userManagement
|
|
4112
4119
|
};
|
|
4113
4120
|
}, [authController, dialogsController, navigation, sideDialogsController]);
|
|
4114
4121
|
return fireCMSContextRef.current;
|
|
@@ -4169,7 +4176,7 @@
|
|
|
4169
4176
|
}
|
|
4170
4177
|
setDataLoading(false);
|
|
4171
4178
|
setDataLoadingError(void 0);
|
|
4172
|
-
setData(entities.map(_temp$
|
|
4179
|
+
setData(entities.map(_temp$t));
|
|
4173
4180
|
setNoMoreToLoad(!itemCount || entities.length < itemCount);
|
|
4174
4181
|
};
|
|
4175
4182
|
const onError = (error) => {
|
|
@@ -4202,7 +4209,7 @@
|
|
|
4202
4209
|
orderBy: sortByProperty,
|
|
4203
4210
|
order: currentSort
|
|
4204
4211
|
}).then(onEntitiesUpdate).catch(onError);
|
|
4205
|
-
return _temp2$
|
|
4212
|
+
return _temp2$e;
|
|
4206
4213
|
}
|
|
4207
4214
|
};
|
|
4208
4215
|
$[4] = collection;
|
|
@@ -4250,9 +4257,9 @@
|
|
|
4250
4257
|
}
|
|
4251
4258
|
return t5;
|
|
4252
4259
|
}
|
|
4253
|
-
function _temp2$
|
|
4260
|
+
function _temp2$e() {
|
|
4254
4261
|
}
|
|
4255
|
-
function _temp$
|
|
4262
|
+
function _temp$t(e_0) {
|
|
4256
4263
|
return {
|
|
4257
4264
|
...e_0
|
|
4258
4265
|
};
|
|
@@ -4317,7 +4324,7 @@
|
|
|
4317
4324
|
setEntity(CACHE[`${path}/${entityId}`]);
|
|
4318
4325
|
setDataLoading(false);
|
|
4319
4326
|
setDataLoadingError(void 0);
|
|
4320
|
-
return _temp$
|
|
4327
|
+
return _temp$s;
|
|
4321
4328
|
} else {
|
|
4322
4329
|
if (entityId && path && collection) {
|
|
4323
4330
|
if (dataSource.listenEntity) {
|
|
@@ -4336,7 +4343,7 @@
|
|
|
4336
4343
|
databaseId,
|
|
4337
4344
|
collection
|
|
4338
4345
|
}).then(onEntityUpdate).catch(onError);
|
|
4339
|
-
return _temp2$
|
|
4346
|
+
return _temp2$d;
|
|
4340
4347
|
}
|
|
4341
4348
|
} else {
|
|
4342
4349
|
onEntityUpdate(void 0);
|
|
@@ -4383,9 +4390,9 @@
|
|
|
4383
4390
|
}
|
|
4384
4391
|
function _temp3$4() {
|
|
4385
4392
|
}
|
|
4386
|
-
function _temp2$
|
|
4393
|
+
function _temp2$d() {
|
|
4387
4394
|
}
|
|
4388
|
-
function _temp$
|
|
4395
|
+
function _temp$s() {
|
|
4389
4396
|
}
|
|
4390
4397
|
async function saveEntityWithCallbacks({
|
|
4391
4398
|
collection,
|
|
@@ -5012,7 +5019,7 @@
|
|
|
5012
5019
|
}
|
|
5013
5020
|
let t9;
|
|
5014
5021
|
if ($[16] !== url) {
|
|
5015
|
-
t9 = /* @__PURE__ */ jsxRuntime.jsx(ui.Tooltip, { title: "Open image in new tab", side: "bottom", children: /* @__PURE__ */ jsxRuntime.jsx(ui.IconButton, { className: "invisible group-hover:visible", variant: "filled", component: "a", href: url, rel: "noopener noreferrer", target: "_blank", size: "smallest", onClick: _temp$
|
|
5022
|
+
t9 = /* @__PURE__ */ jsxRuntime.jsx(ui.Tooltip, { title: "Open image in new tab", side: "bottom", children: /* @__PURE__ */ jsxRuntime.jsx(ui.IconButton, { className: "invisible group-hover:visible", variant: "filled", component: "a", href: url, rel: "noopener noreferrer", target: "_blank", size: "smallest", onClick: _temp$r, children: t8 }) });
|
|
5016
5023
|
$[16] = url;
|
|
5017
5024
|
$[17] = t9;
|
|
5018
5025
|
} else {
|
|
@@ -5046,7 +5053,7 @@
|
|
|
5046
5053
|
}
|
|
5047
5054
|
return t11;
|
|
5048
5055
|
}
|
|
5049
|
-
function _temp$
|
|
5056
|
+
function _temp$r(e_0) {
|
|
5050
5057
|
return e_0.stopPropagation();
|
|
5051
5058
|
}
|
|
5052
5059
|
function UrlComponentPreview(t0) {
|
|
@@ -5079,7 +5086,7 @@
|
|
|
5079
5086
|
}
|
|
5080
5087
|
let t3;
|
|
5081
5088
|
if ($[2] !== url) {
|
|
5082
|
-
t3 = /* @__PURE__ */ jsxRuntime.jsxs("a", { className: "flex gap-4 break-words items-center font-medium text-primary visited:text-primary dark:visited:text-primary dark:text-primary", href: url, rel: "noopener noreferrer", onMouseDown: _temp$
|
|
5089
|
+
t3 = /* @__PURE__ */ jsxRuntime.jsxs("a", { className: "flex gap-4 break-words items-center font-medium text-primary visited:text-primary dark:visited:text-primary dark:text-primary", href: url, rel: "noopener noreferrer", onMouseDown: _temp$q, target: "_blank", children: [
|
|
5083
5090
|
t2,
|
|
5084
5091
|
url
|
|
5085
5092
|
] });
|
|
@@ -5182,7 +5189,7 @@
|
|
|
5182
5189
|
}
|
|
5183
5190
|
let t7;
|
|
5184
5191
|
if ($[24] !== t4 || $[25] !== t6 || $[26] !== url) {
|
|
5185
|
-
t7 = /* @__PURE__ */ jsxRuntime.jsxs("a", { href: url, rel: "noopener noreferrer", target: "_blank", onClick: _temp2$
|
|
5192
|
+
t7 = /* @__PURE__ */ jsxRuntime.jsxs("a", { href: url, rel: "noopener noreferrer", target: "_blank", onClick: _temp2$c, className: "flex flex-col items-center justify-center", style: t4, children: [
|
|
5186
5193
|
t5,
|
|
5187
5194
|
t6
|
|
5188
5195
|
] });
|
|
@@ -5207,10 +5214,10 @@
|
|
|
5207
5214
|
}
|
|
5208
5215
|
}
|
|
5209
5216
|
}
|
|
5210
|
-
function _temp2$
|
|
5217
|
+
function _temp2$c(e_0) {
|
|
5211
5218
|
return e_0.stopPropagation();
|
|
5212
5219
|
}
|
|
5213
|
-
function _temp$
|
|
5220
|
+
function _temp$q(e) {
|
|
5214
5221
|
e.preventDefault();
|
|
5215
5222
|
}
|
|
5216
5223
|
function VideoPreview(t0) {
|
|
@@ -5344,7 +5351,7 @@
|
|
|
5344
5351
|
if (Array.isArray(arrayProperty.of)) {
|
|
5345
5352
|
let t1;
|
|
5346
5353
|
if ($[6] !== arrayProperty.of) {
|
|
5347
|
-
t1 = arrayProperty.of.map(_temp$
|
|
5354
|
+
t1 = arrayProperty.of.map(_temp$p);
|
|
5348
5355
|
$[6] = arrayProperty.of;
|
|
5349
5356
|
$[7] = t1;
|
|
5350
5357
|
} else {
|
|
@@ -5482,7 +5489,7 @@
|
|
|
5482
5489
|
}
|
|
5483
5490
|
return content || null;
|
|
5484
5491
|
}
|
|
5485
|
-
function _temp$
|
|
5492
|
+
function _temp$p(p, i) {
|
|
5486
5493
|
return renderGenericArrayCell(p, i);
|
|
5487
5494
|
}
|
|
5488
5495
|
function renderMap(property, size) {
|
|
@@ -6665,7 +6672,7 @@
|
|
|
6665
6672
|
}
|
|
6666
6673
|
let t1;
|
|
6667
6674
|
if ($[1] !== value) {
|
|
6668
|
-
t1 = Object.entries(value).map(_temp$
|
|
6675
|
+
t1 = Object.entries(value).map(_temp$o);
|
|
6669
6676
|
$[1] = value;
|
|
6670
6677
|
$[2] = t1;
|
|
6671
6678
|
} else {
|
|
@@ -6681,7 +6688,7 @@
|
|
|
6681
6688
|
}
|
|
6682
6689
|
return t2;
|
|
6683
6690
|
}
|
|
6684
|
-
function _temp$
|
|
6691
|
+
function _temp$o(t0) {
|
|
6685
6692
|
const [key, childValue] = t0;
|
|
6686
6693
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ui.cls(ui.defaultBorderMixin, "last:border-b-0 border-b"), children: [
|
|
6687
6694
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row pt-0.5 pb-0.5 gap-2", children: [
|
|
@@ -6814,6 +6821,120 @@
|
|
|
6814
6821
|
return t1;
|
|
6815
6822
|
}
|
|
6816
6823
|
}
|
|
6824
|
+
function UserDisplay(t0) {
|
|
6825
|
+
const $ = reactCompilerRuntime.c(18);
|
|
6826
|
+
const {
|
|
6827
|
+
user
|
|
6828
|
+
} = t0;
|
|
6829
|
+
if (!user) {
|
|
6830
|
+
let t12;
|
|
6831
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
6832
|
+
t12 = /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-text-secondary dark:text-text-secondary-dark", children: "Select a user" });
|
|
6833
|
+
$[0] = t12;
|
|
6834
|
+
} else {
|
|
6835
|
+
t12 = $[0];
|
|
6836
|
+
}
|
|
6837
|
+
return t12;
|
|
6838
|
+
}
|
|
6839
|
+
let t1;
|
|
6840
|
+
if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
|
|
6841
|
+
t1 = ui.cls("inline-flex items-center gap-4 px-2 py-1 rounded-xl", "bg-surface-accent-100 dark:bg-surface-accent-800", "border", ui.defaultBorderMixin);
|
|
6842
|
+
$[1] = t1;
|
|
6843
|
+
} else {
|
|
6844
|
+
t1 = $[1];
|
|
6845
|
+
}
|
|
6846
|
+
let t2;
|
|
6847
|
+
if ($[2] !== user.displayName || $[3] !== user.email || $[4] !== user.photoURL) {
|
|
6848
|
+
t2 = user.photoURL ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: user.photoURL, alt: user.displayName || user.email || "User", className: ui.cls("rounded-full object-cover", "w-6 h-6") }) : /* @__PURE__ */ jsxRuntime.jsx(ui.AccountCircleIcon, { className: ui.cls("text-text-secondary dark:text-text-secondary-dark", "w-6 h-6") });
|
|
6849
|
+
$[2] = user.displayName;
|
|
6850
|
+
$[3] = user.email;
|
|
6851
|
+
$[4] = user.photoURL;
|
|
6852
|
+
$[5] = t2;
|
|
6853
|
+
} else {
|
|
6854
|
+
t2 = $[5];
|
|
6855
|
+
}
|
|
6856
|
+
let t3;
|
|
6857
|
+
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
|
|
6858
|
+
t3 = ui.cls("font-regular truncate", "text-sm");
|
|
6859
|
+
$[6] = t3;
|
|
6860
|
+
} else {
|
|
6861
|
+
t3 = $[6];
|
|
6862
|
+
}
|
|
6863
|
+
const t4 = user.displayName || user.email || "-";
|
|
6864
|
+
let t5;
|
|
6865
|
+
if ($[7] !== t4) {
|
|
6866
|
+
t5 = /* @__PURE__ */ jsxRuntime.jsx("span", { className: t3, children: t4 });
|
|
6867
|
+
$[7] = t4;
|
|
6868
|
+
$[8] = t5;
|
|
6869
|
+
} else {
|
|
6870
|
+
t5 = $[8];
|
|
6871
|
+
}
|
|
6872
|
+
let t6;
|
|
6873
|
+
if ($[9] !== user.displayName || $[10] !== user.email) {
|
|
6874
|
+
t6 = user.displayName && user.email && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ui.cls("text-text-secondary dark:text-text-secondary-dark truncate", "text-xs"), children: user.email });
|
|
6875
|
+
$[9] = user.displayName;
|
|
6876
|
+
$[10] = user.email;
|
|
6877
|
+
$[11] = t6;
|
|
6878
|
+
} else {
|
|
6879
|
+
t6 = $[11];
|
|
6880
|
+
}
|
|
6881
|
+
let t7;
|
|
6882
|
+
if ($[12] !== t5 || $[13] !== t6) {
|
|
6883
|
+
t7 = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col min-w-0", children: [
|
|
6884
|
+
t5,
|
|
6885
|
+
t6
|
|
6886
|
+
] });
|
|
6887
|
+
$[12] = t5;
|
|
6888
|
+
$[13] = t6;
|
|
6889
|
+
$[14] = t7;
|
|
6890
|
+
} else {
|
|
6891
|
+
t7 = $[14];
|
|
6892
|
+
}
|
|
6893
|
+
let t8;
|
|
6894
|
+
if ($[15] !== t2 || $[16] !== t7) {
|
|
6895
|
+
t8 = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: t1, children: [
|
|
6896
|
+
t2,
|
|
6897
|
+
t7
|
|
6898
|
+
] });
|
|
6899
|
+
$[15] = t2;
|
|
6900
|
+
$[16] = t7;
|
|
6901
|
+
$[17] = t8;
|
|
6902
|
+
} else {
|
|
6903
|
+
t8 = $[17];
|
|
6904
|
+
}
|
|
6905
|
+
return t8;
|
|
6906
|
+
}
|
|
6907
|
+
function UserPreview(t0) {
|
|
6908
|
+
const $ = reactCompilerRuntime.c(5);
|
|
6909
|
+
const {
|
|
6910
|
+
value
|
|
6911
|
+
} = t0;
|
|
6912
|
+
const {
|
|
6913
|
+
getUser
|
|
6914
|
+
} = useInternalUserManagementController();
|
|
6915
|
+
if (!value) {
|
|
6916
|
+
return null;
|
|
6917
|
+
}
|
|
6918
|
+
let t1;
|
|
6919
|
+
if ($[0] !== getUser || $[1] !== value) {
|
|
6920
|
+
t1 = getUser(value);
|
|
6921
|
+
$[0] = getUser;
|
|
6922
|
+
$[1] = value;
|
|
6923
|
+
$[2] = t1;
|
|
6924
|
+
} else {
|
|
6925
|
+
t1 = $[2];
|
|
6926
|
+
}
|
|
6927
|
+
const user = t1;
|
|
6928
|
+
let t2;
|
|
6929
|
+
if ($[3] !== user) {
|
|
6930
|
+
t2 = /* @__PURE__ */ jsxRuntime.jsx(UserDisplay, { user });
|
|
6931
|
+
$[3] = user;
|
|
6932
|
+
$[4] = t2;
|
|
6933
|
+
} else {
|
|
6934
|
+
t2 = $[4];
|
|
6935
|
+
}
|
|
6936
|
+
return t2;
|
|
6937
|
+
}
|
|
6817
6938
|
const PropertyPreview = React.memo(function PropertyPreview2(props) {
|
|
6818
6939
|
const $ = reactCompilerRuntime.c(31);
|
|
6819
6940
|
const authController = useAuthController();
|
|
@@ -6914,21 +7035,25 @@
|
|
|
6914
7035
|
}
|
|
6915
7036
|
content = t02;
|
|
6916
7037
|
} else {
|
|
6917
|
-
if (stringProperty.
|
|
6918
|
-
|
|
6919
|
-
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
t02 = /* @__PURE__ */ jsxRuntime.jsx(EmptyValue, {});
|
|
6924
|
-
$[23] = t02;
|
|
7038
|
+
if (stringProperty.userSelect) {
|
|
7039
|
+
content = /* @__PURE__ */ jsxRuntime.jsx(UserPreview, { value, property: stringProperty, propertyKey, size: props.size });
|
|
7040
|
+
} else {
|
|
7041
|
+
if (stringProperty.reference) {
|
|
7042
|
+
if (typeof stringProperty.reference.path === "string") {
|
|
7043
|
+
content = /* @__PURE__ */ jsxRuntime.jsx(ReferencePreview, { disabled: !stringProperty.reference.path, previewProperties: stringProperty.reference.previewProperties, includeId: stringProperty.reference.includeId, includeEntityLink: stringProperty.reference.includeEntityLink, size: props.size, reference: new EntityReference(value, stringProperty.reference.path) });
|
|
6925
7044
|
} else {
|
|
6926
|
-
t02
|
|
7045
|
+
let t02;
|
|
7046
|
+
if ($[23] === Symbol.for("react.memo_cache_sentinel")) {
|
|
7047
|
+
t02 = /* @__PURE__ */ jsxRuntime.jsx(EmptyValue, {});
|
|
7048
|
+
$[23] = t02;
|
|
7049
|
+
} else {
|
|
7050
|
+
t02 = $[23];
|
|
7051
|
+
}
|
|
7052
|
+
content = t02;
|
|
6927
7053
|
}
|
|
6928
|
-
|
|
7054
|
+
} else {
|
|
7055
|
+
content = /* @__PURE__ */ jsxRuntime.jsx(StringPropertyPreview, { ...props, property: stringProperty, value });
|
|
6929
7056
|
}
|
|
6930
|
-
} else {
|
|
6931
|
-
content = /* @__PURE__ */ jsxRuntime.jsx(StringPropertyPreview, { ...props, property: stringProperty, value });
|
|
6932
7057
|
}
|
|
6933
7058
|
}
|
|
6934
7059
|
}
|
|
@@ -7449,7 +7574,7 @@
|
|
|
7449
7574
|
console.trace("onChange");
|
|
7450
7575
|
if (valueType === "number") {
|
|
7451
7576
|
if (multiple) {
|
|
7452
|
-
const newValue = updatedValue.map(_temp$
|
|
7577
|
+
const newValue = updatedValue.map(_temp$n);
|
|
7453
7578
|
updateValue(newValue);
|
|
7454
7579
|
} else {
|
|
7455
7580
|
updateValue(parseFloat(updatedValue));
|
|
@@ -7486,7 +7611,7 @@
|
|
|
7486
7611
|
const renderValue = t3;
|
|
7487
7612
|
let t4;
|
|
7488
7613
|
if ($[10] !== disabled || $[11] !== enumValues || $[12] !== internalValue || $[13] !== multiple || $[14] !== onChange || $[15] !== renderValue || $[16] !== small || $[17] !== validValue) {
|
|
7489
|
-
t4 = multiple ? /* @__PURE__ */ jsxRuntime.jsx(ui.MultiSelect, { inputRef: ref, className: "w-full h-full p-0 bg-transparent", position: "item-aligned", disabled, includeClear: false, useChips: false, value: validValue ? internalValue.map(_temp2$
|
|
7614
|
+
t4 = multiple ? /* @__PURE__ */ jsxRuntime.jsx(ui.MultiSelect, { inputRef: ref, className: "w-full h-full p-0 bg-transparent", position: "item-aligned", disabled, includeClear: false, useChips: false, value: validValue ? internalValue.map(_temp2$b) : [], onValueChange: onChange, children: enumValues?.map((enumConfig) => /* @__PURE__ */ jsxRuntime.jsx(ui.MultiSelectItem, { value: String(enumConfig.id), children: /* @__PURE__ */ jsxRuntime.jsx(EnumValuesChip, { enumKey: enumConfig.id, enumValues, size: small ? "small" : "medium" }) }, enumConfig.id)) }) : /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { inputRef: ref, size: "large", fullWidth: true, className: "w-full h-full p-0 bg-transparent", position: "item-aligned", disabled, padding: false, value: validValue ? internalValue?.toString() : "", onValueChange: onChange, renderValue, children: enumValues?.map((enumConfig_0) => /* @__PURE__ */ jsxRuntime.jsx(ui.SelectItem, { value: String(enumConfig_0.id), children: /* @__PURE__ */ jsxRuntime.jsx(EnumValuesChip, { enumKey: enumConfig_0.id, enumValues, size: small ? "small" : "medium" }) }, enumConfig_0.id)) });
|
|
7490
7615
|
$[10] = disabled;
|
|
7491
7616
|
$[11] = enumValues;
|
|
7492
7617
|
$[12] = internalValue;
|
|
@@ -7501,10 +7626,10 @@
|
|
|
7501
7626
|
}
|
|
7502
7627
|
return t4;
|
|
7503
7628
|
}
|
|
7504
|
-
function _temp2$
|
|
7629
|
+
function _temp2$b(v_0) {
|
|
7505
7630
|
return v_0.toString();
|
|
7506
7631
|
}
|
|
7507
|
-
function _temp$
|
|
7632
|
+
function _temp$n(v) {
|
|
7508
7633
|
return parseFloat(v);
|
|
7509
7634
|
}
|
|
7510
7635
|
function VirtualTableNumberInput(props) {
|
|
@@ -7635,6 +7760,89 @@
|
|
|
7635
7760
|
}
|
|
7636
7761
|
return t4;
|
|
7637
7762
|
}
|
|
7763
|
+
function VirtualTableUserSelect(props) {
|
|
7764
|
+
const $ = reactCompilerRuntime.c(15);
|
|
7765
|
+
const {
|
|
7766
|
+
internalValue,
|
|
7767
|
+
disabled,
|
|
7768
|
+
focused,
|
|
7769
|
+
updateValue,
|
|
7770
|
+
multiple
|
|
7771
|
+
} = props;
|
|
7772
|
+
const {
|
|
7773
|
+
users,
|
|
7774
|
+
getUser
|
|
7775
|
+
} = useInternalUserManagementController();
|
|
7776
|
+
const validValue = Array.isArray(internalValue) && multiple || !Array.isArray(internalValue) && !multiple;
|
|
7777
|
+
const ref = React.useRef(null);
|
|
7778
|
+
let t0;
|
|
7779
|
+
let t1;
|
|
7780
|
+
if ($[0] !== focused) {
|
|
7781
|
+
t0 = () => {
|
|
7782
|
+
if (ref.current && focused) {
|
|
7783
|
+
ref.current?.focus({
|
|
7784
|
+
preventScroll: true
|
|
7785
|
+
});
|
|
7786
|
+
}
|
|
7787
|
+
};
|
|
7788
|
+
t1 = [focused, ref];
|
|
7789
|
+
$[0] = focused;
|
|
7790
|
+
$[1] = t0;
|
|
7791
|
+
$[2] = t1;
|
|
7792
|
+
} else {
|
|
7793
|
+
t0 = $[1];
|
|
7794
|
+
t1 = $[2];
|
|
7795
|
+
}
|
|
7796
|
+
React.useEffect(t0, t1);
|
|
7797
|
+
let t2;
|
|
7798
|
+
if ($[3] !== updateValue) {
|
|
7799
|
+
t2 = (updatedValue) => {
|
|
7800
|
+
if (!updatedValue) {
|
|
7801
|
+
updateValue(null);
|
|
7802
|
+
} else {
|
|
7803
|
+
updateValue(updatedValue);
|
|
7804
|
+
}
|
|
7805
|
+
};
|
|
7806
|
+
$[3] = updateValue;
|
|
7807
|
+
$[4] = t2;
|
|
7808
|
+
} else {
|
|
7809
|
+
t2 = $[4];
|
|
7810
|
+
}
|
|
7811
|
+
const onChange = t2;
|
|
7812
|
+
let t3;
|
|
7813
|
+
if ($[5] !== getUser) {
|
|
7814
|
+
t3 = (userId) => {
|
|
7815
|
+
const user = getUser(userId);
|
|
7816
|
+
return /* @__PURE__ */ jsxRuntime.jsx(UserDisplay, { user });
|
|
7817
|
+
};
|
|
7818
|
+
$[5] = getUser;
|
|
7819
|
+
$[6] = t3;
|
|
7820
|
+
} else {
|
|
7821
|
+
t3 = $[6];
|
|
7822
|
+
}
|
|
7823
|
+
const renderValue = t3;
|
|
7824
|
+
let t4;
|
|
7825
|
+
if ($[7] !== disabled || $[8] !== internalValue || $[9] !== multiple || $[10] !== onChange || $[11] !== renderValue || $[12] !== users || $[13] !== validValue) {
|
|
7826
|
+
t4 = multiple ? /* @__PURE__ */ jsxRuntime.jsx(ui.MultiSelect, { inputRef: ref, className: "w-full h-full p-0 bg-transparent", position: "item-aligned", disabled, includeClear: false, useChips: false, value: validValue ? internalValue : [], onValueChange: onChange, children: users?.map(_temp$m) }) : /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { inputRef: ref, size: "large", fullWidth: true, className: "w-full h-full p-0 bg-transparent", position: "item-aligned", disabled, padding: false, value: validValue ? internalValue : "", onValueChange: onChange, renderValue, children: users?.map(_temp2$a) });
|
|
7827
|
+
$[7] = disabled;
|
|
7828
|
+
$[8] = internalValue;
|
|
7829
|
+
$[9] = multiple;
|
|
7830
|
+
$[10] = onChange;
|
|
7831
|
+
$[11] = renderValue;
|
|
7832
|
+
$[12] = users;
|
|
7833
|
+
$[13] = validValue;
|
|
7834
|
+
$[14] = t4;
|
|
7835
|
+
} else {
|
|
7836
|
+
t4 = $[14];
|
|
7837
|
+
}
|
|
7838
|
+
return t4;
|
|
7839
|
+
}
|
|
7840
|
+
function _temp2$a(user_1) {
|
|
7841
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ui.SelectItem, { value: user_1.uid, children: /* @__PURE__ */ jsxRuntime.jsx(UserDisplay, { user: user_1 }) }, user_1.uid);
|
|
7842
|
+
}
|
|
7843
|
+
function _temp$m(user_0) {
|
|
7844
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ui.MultiSelectItem, { value: user_0.uid, children: /* @__PURE__ */ jsxRuntime.jsx(UserDisplay, { user: user_0 }) }, user_0.uid);
|
|
7845
|
+
}
|
|
7638
7846
|
class ErrorBoundary extends React.Component {
|
|
7639
7847
|
constructor(props) {
|
|
7640
7848
|
super(props);
|
|
@@ -8063,7 +8271,7 @@
|
|
|
8063
8271
|
const snackbarContext = useSnackbarController();
|
|
8064
8272
|
let t1;
|
|
8065
8273
|
if ($[0] !== storage.acceptedFiles) {
|
|
8066
|
-
t1 = storage.acceptedFiles ? storage.acceptedFiles.map(_temp$
|
|
8274
|
+
t1 = storage.acceptedFiles ? storage.acceptedFiles.map(_temp$l).reduce(_temp2$9, {}) : void 0;
|
|
8067
8275
|
$[0] = storage.acceptedFiles;
|
|
8068
8276
|
$[1] = t1;
|
|
8069
8277
|
} else {
|
|
@@ -8292,7 +8500,7 @@
|
|
|
8292
8500
|
...b
|
|
8293
8501
|
};
|
|
8294
8502
|
}
|
|
8295
|
-
function _temp$
|
|
8503
|
+
function _temp$l(e) {
|
|
8296
8504
|
return {
|
|
8297
8505
|
[e]: []
|
|
8298
8506
|
};
|
|
@@ -8399,7 +8607,7 @@
|
|
|
8399
8607
|
let t1;
|
|
8400
8608
|
if ($[2] !== updateValue) {
|
|
8401
8609
|
t1 = (entities) => {
|
|
8402
|
-
updateValue(entities.map(_temp$
|
|
8610
|
+
updateValue(entities.map(_temp$k));
|
|
8403
8611
|
};
|
|
8404
8612
|
$[2] = updateValue;
|
|
8405
8613
|
$[3] = t1;
|
|
@@ -8560,7 +8768,7 @@
|
|
|
8560
8768
|
}
|
|
8561
8769
|
return t10;
|
|
8562
8770
|
}, equal);
|
|
8563
|
-
function _temp$
|
|
8771
|
+
function _temp$k(e) {
|
|
8564
8772
|
return getReferenceFrom(e);
|
|
8565
8773
|
}
|
|
8566
8774
|
function _temp2$8(ref) {
|
|
@@ -9422,6 +9630,9 @@
|
|
|
9422
9630
|
if (stringProperty_0.enumValues) {
|
|
9423
9631
|
innerComponent = /* @__PURE__ */ jsxRuntime.jsx(VirtualTableSelect, { name: propertyKey, multiple: false, focused: selected, disabled, valueType: "string", small: getPreviewSizeFrom(size) !== "medium", enumValues: stringProperty_0.enumValues, error: validationError ?? error, internalValue, updateValue });
|
|
9424
9632
|
fullHeight = true;
|
|
9633
|
+
} else if (stringProperty_0.userSelect) {
|
|
9634
|
+
innerComponent = /* @__PURE__ */ jsxRuntime.jsx(VirtualTableUserSelect, { name: propertyKey, multiple: false, focused: selected, disabled, small: getPreviewSizeFrom(size) !== "medium", error: validationError ?? error, internalValue, updateValue });
|
|
9635
|
+
fullHeight = true;
|
|
9425
9636
|
} else if (stringProperty_0.markdown || !stringProperty_0.storage || !stringProperty_0.reference) {
|
|
9426
9637
|
const multiline = Boolean(stringProperty_0.multiline) || Boolean(stringProperty_0.markdown);
|
|
9427
9638
|
innerComponent = /* @__PURE__ */ jsxRuntime.jsx(VirtualTableInput, { error: validationError ?? error, disabled, multiline, focused: selected, value: internalValue, updateValue });
|
|
@@ -9486,7 +9697,8 @@
|
|
|
9486
9697
|
return {
|
|
9487
9698
|
__type: "EntityReference",
|
|
9488
9699
|
id: value.id,
|
|
9489
|
-
path: value.path
|
|
9700
|
+
path: value.path,
|
|
9701
|
+
databaseId: value.databaseId
|
|
9490
9702
|
};
|
|
9491
9703
|
}
|
|
9492
9704
|
if (value instanceof GeoPoint) {
|
|
@@ -9510,7 +9722,7 @@
|
|
|
9510
9722
|
case "Date":
|
|
9511
9723
|
return new Date(value.value);
|
|
9512
9724
|
case "EntityReference":
|
|
9513
|
-
return new EntityReference(value.id, value.path);
|
|
9725
|
+
return new EntityReference(value.id, value.path, value.databaseId);
|
|
9514
9726
|
case "GeoPoint":
|
|
9515
9727
|
return new GeoPoint(value.latitude, value.longitude);
|
|
9516
9728
|
case "Vector":
|
|
@@ -9722,7 +9934,7 @@
|
|
|
9722
9934
|
}
|
|
9723
9935
|
let t6;
|
|
9724
9936
|
if ($[6] !== t3 || $[7] !== t4) {
|
|
9725
|
-
t6 = /* @__PURE__ */ jsxRuntime.jsx(ui.Tooltip, { title: "Table row size", side: "right", sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: t3, className: "w-16 ml-2", size: "small", onValueChange: t4, renderValue: _temp$
|
|
9937
|
+
t6 = /* @__PURE__ */ jsxRuntime.jsx(ui.Tooltip, { title: "Table row size", side: "right", sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: t3, className: "w-16 ml-2", size: "small", onValueChange: t4, renderValue: _temp$j, children: t5 }) });
|
|
9726
9938
|
$[6] = t3;
|
|
9727
9939
|
$[7] = t4;
|
|
9728
9940
|
$[8] = t6;
|
|
@@ -9809,7 +10021,7 @@
|
|
|
9809
10021
|
function _temp2$7(size_0) {
|
|
9810
10022
|
return /* @__PURE__ */ jsxRuntime.jsx(ui.SelectItem, { value: size_0, className: "w-12 font-medium text-center", children: size_0.toUpperCase() }, size_0);
|
|
9811
10023
|
}
|
|
9812
|
-
function _temp$
|
|
10024
|
+
function _temp$j(v_0) {
|
|
9813
10025
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: v_0.toUpperCase() });
|
|
9814
10026
|
}
|
|
9815
10027
|
function getTableCellAlignment(property) {
|
|
@@ -10923,7 +11135,7 @@
|
|
|
10923
11135
|
let t1;
|
|
10924
11136
|
if ($[0] !== text) {
|
|
10925
11137
|
const urlRegex = /https?:\/\/[^\s]+/g;
|
|
10926
|
-
t1 = text.replace(urlRegex, _temp$
|
|
11138
|
+
t1 = text.replace(urlRegex, _temp$i);
|
|
10927
11139
|
$[0] = text;
|
|
10928
11140
|
$[1] = t1;
|
|
10929
11141
|
} else {
|
|
@@ -10942,7 +11154,7 @@
|
|
|
10942
11154
|
}
|
|
10943
11155
|
return t2;
|
|
10944
11156
|
};
|
|
10945
|
-
function _temp$
|
|
11157
|
+
function _temp$i(url) {
|
|
10946
11158
|
return `<a href="${url}" class="underline" target="_blank">Link</a><br/>`;
|
|
10947
11159
|
}
|
|
10948
11160
|
const operationLabels$2 = {
|
|
@@ -11150,7 +11362,7 @@
|
|
|
11150
11362
|
}
|
|
11151
11363
|
let t6;
|
|
11152
11364
|
if ($[16] !== operation || $[17] !== t4 || $[18] !== t5) {
|
|
11153
|
-
t6 = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-[80px]", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: operation, fullWidth: true, position: "item-aligned", onValueChange: t4, renderValue: _temp$
|
|
11365
|
+
t6 = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-[80px]", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: operation, fullWidth: true, position: "item-aligned", onValueChange: t4, renderValue: _temp$h, children: t5 }) });
|
|
11154
11366
|
$[16] = operation;
|
|
11155
11367
|
$[17] = t4;
|
|
11156
11368
|
$[18] = t5;
|
|
@@ -11274,7 +11486,7 @@
|
|
|
11274
11486
|
function _temp2$6(op_1) {
|
|
11275
11487
|
return /* @__PURE__ */ jsxRuntime.jsx(ui.SelectItem, { value: op_1, children: operationLabels$1[op_1] }, op_1);
|
|
11276
11488
|
}
|
|
11277
|
-
function _temp$
|
|
11489
|
+
function _temp$h(op_0) {
|
|
11278
11490
|
return operationLabels$1[op_0];
|
|
11279
11491
|
}
|
|
11280
11492
|
function BooleanFilterField(t0) {
|
|
@@ -11413,7 +11625,7 @@
|
|
|
11413
11625
|
}
|
|
11414
11626
|
let t6;
|
|
11415
11627
|
if ($[13] !== operation || $[14] !== t4 || $[15] !== t5) {
|
|
11416
|
-
t6 = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-[80px]", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: operation, size: "large", fullWidth: true, onValueChange: t4, renderValue: _temp$
|
|
11628
|
+
t6 = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-[80px]", children: /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: operation, size: "large", fullWidth: true, onValueChange: t4, renderValue: _temp$g, children: t5 }) });
|
|
11417
11629
|
$[13] = operation;
|
|
11418
11630
|
$[14] = t4;
|
|
11419
11631
|
$[15] = t5;
|
|
@@ -11502,7 +11714,7 @@
|
|
|
11502
11714
|
function _temp2$5(op_1) {
|
|
11503
11715
|
return /* @__PURE__ */ jsxRuntime.jsx(ui.SelectItem, { value: op_1, children: operationLabels[op_1] }, op_1);
|
|
11504
11716
|
}
|
|
11505
|
-
function _temp$
|
|
11717
|
+
function _temp$g(op_0) {
|
|
11506
11718
|
return operationLabels[op_0];
|
|
11507
11719
|
}
|
|
11508
11720
|
const SelectableTable = function SelectableTable2({
|
|
@@ -12206,7 +12418,7 @@
|
|
|
12206
12418
|
const searchBlocked = t12;
|
|
12207
12419
|
let t2;
|
|
12208
12420
|
if ($[15] !== customizationController.plugins || $[16] !== dataSource?.initTextSearch) {
|
|
12209
|
-
t2 = Boolean(dataSource?.initTextSearch) || customizationController.plugins?.find(_temp$
|
|
12421
|
+
t2 = Boolean(dataSource?.initTextSearch) || customizationController.plugins?.find(_temp$f);
|
|
12210
12422
|
$[15] = customizationController.plugins;
|
|
12211
12423
|
$[16] = dataSource?.initTextSearch;
|
|
12212
12424
|
$[17] = t2;
|
|
@@ -12298,7 +12510,7 @@
|
|
|
12298
12510
|
}
|
|
12299
12511
|
return t1;
|
|
12300
12512
|
}
|
|
12301
|
-
function _temp$
|
|
12513
|
+
function _temp$f(p_0) {
|
|
12302
12514
|
return Boolean(p_0.collectionView?.onTextSearchClick);
|
|
12303
12515
|
}
|
|
12304
12516
|
function DeleteEntityDialog({
|
|
@@ -12891,7 +13103,7 @@
|
|
|
12891
13103
|
T0 = ui.Collapse;
|
|
12892
13104
|
t4 = favouriteCollections.length > 0;
|
|
12893
13105
|
t2 = "flex flex-row flex-wrap gap-2 pb-2 min-h-[32px]";
|
|
12894
|
-
t3 = favouriteCollections.map(_temp$
|
|
13106
|
+
t3 = favouriteCollections.map(_temp$e);
|
|
12895
13107
|
$[2] = navigationController;
|
|
12896
13108
|
$[3] = t1;
|
|
12897
13109
|
$[4] = T0;
|
|
@@ -12925,7 +13137,7 @@
|
|
|
12925
13137
|
}
|
|
12926
13138
|
return t6;
|
|
12927
13139
|
}
|
|
12928
|
-
function _temp$
|
|
13140
|
+
function _temp$e(entry_0) {
|
|
12929
13141
|
return /* @__PURE__ */ jsxRuntime.jsx(NavigationChip, { entry: entry_0 }, entry_0.path);
|
|
12930
13142
|
}
|
|
12931
13143
|
const scrollsMap = {};
|
|
@@ -13142,7 +13354,7 @@
|
|
|
13142
13354
|
}
|
|
13143
13355
|
let t4;
|
|
13144
13356
|
if ($[4] !== actions) {
|
|
13145
|
-
t4 = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1", onClick: _temp$
|
|
13357
|
+
t4 = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1", onClick: _temp$d, children: actions });
|
|
13146
13358
|
$[4] = actions;
|
|
13147
13359
|
$[5] = t4;
|
|
13148
13360
|
} else {
|
|
@@ -13229,7 +13441,7 @@
|
|
|
13229
13441
|
}
|
|
13230
13442
|
return t12;
|
|
13231
13443
|
});
|
|
13232
|
-
function _temp$
|
|
13444
|
+
function _temp$d(event) {
|
|
13233
13445
|
event.preventDefault();
|
|
13234
13446
|
event.stopPropagation();
|
|
13235
13447
|
}
|
|
@@ -16103,7 +16315,7 @@
|
|
|
16103
16315
|
}
|
|
16104
16316
|
let t5;
|
|
16105
16317
|
if ($[14] !== placeholder) {
|
|
16106
|
-
t5 = placeholder && /* @__PURE__ */ jsxRuntime.jsx("div", { onClick: _temp$
|
|
16318
|
+
t5 = placeholder && /* @__PURE__ */ jsxRuntime.jsx("div", { onClick: _temp$c, className: "flex flex-col items-center justify-center w-full h-full", children: /* @__PURE__ */ jsxRuntime.jsx(ui.DescriptionIcon, { className: "text-surface-700 dark:text-surface-300" }) });
|
|
16107
16319
|
$[14] = placeholder;
|
|
16108
16320
|
$[15] = t5;
|
|
16109
16321
|
} else {
|
|
@@ -16126,7 +16338,7 @@
|
|
|
16126
16338
|
}
|
|
16127
16339
|
return t6;
|
|
16128
16340
|
}
|
|
16129
|
-
function _temp$
|
|
16341
|
+
function _temp$c(e) {
|
|
16130
16342
|
return e.stopPropagation();
|
|
16131
16343
|
}
|
|
16132
16344
|
const dropZoneClasses = "box-border relative pt-[2px] items-center border border-transparent min-h-[254px] outline-none rounded-md duration-200 ease-[cubic-bezier(0.4,0,0.2,1)] focus:border-primary-solid";
|
|
@@ -16344,7 +16556,7 @@
|
|
|
16344
16556
|
t4 = $[7];
|
|
16345
16557
|
}
|
|
16346
16558
|
const style = t4;
|
|
16347
|
-
const getImageSizeNumber = _temp$
|
|
16559
|
+
const getImageSizeNumber = _temp$b;
|
|
16348
16560
|
let child;
|
|
16349
16561
|
if (entry.storagePathOrDownloadUrl) {
|
|
16350
16562
|
const t52 = `storage_preview_${entry.storagePathOrDownloadUrl}`;
|
|
@@ -16419,7 +16631,7 @@
|
|
|
16419
16631
|
}
|
|
16420
16632
|
return t6;
|
|
16421
16633
|
}
|
|
16422
|
-
function _temp$
|
|
16634
|
+
function _temp$b(previewSize) {
|
|
16423
16635
|
switch (previewSize) {
|
|
16424
16636
|
case "small": {
|
|
16425
16637
|
return 40;
|
|
@@ -17875,7 +18087,7 @@
|
|
|
17875
18087
|
} else {
|
|
17876
18088
|
t42 = $[20];
|
|
17877
18089
|
}
|
|
17878
|
-
t3 = Object.entries(mapProperties).filter(_temp$
|
|
18090
|
+
t3 = Object.entries(mapProperties).filter(_temp$a).map(t42);
|
|
17879
18091
|
$[6] = autoFocus;
|
|
17880
18092
|
$[7] = context;
|
|
17881
18093
|
$[8] = disabled;
|
|
@@ -17945,7 +18157,7 @@
|
|
|
17945
18157
|
}
|
|
17946
18158
|
return t10;
|
|
17947
18159
|
}
|
|
17948
|
-
function _temp$
|
|
18160
|
+
function _temp$a(t0) {
|
|
17949
18161
|
const [, property_0] = t0;
|
|
17950
18162
|
return !isHidden(property_0);
|
|
17951
18163
|
}
|
|
@@ -19015,7 +19227,7 @@
|
|
|
19015
19227
|
const property = t4;
|
|
19016
19228
|
let t5;
|
|
19017
19229
|
if ($[9] !== properties) {
|
|
19018
|
-
t5 = Object.entries(properties).map(_temp$
|
|
19230
|
+
t5 = Object.entries(properties).map(_temp$9);
|
|
19019
19231
|
$[9] = properties;
|
|
19020
19232
|
$[10] = t5;
|
|
19021
19233
|
} else {
|
|
@@ -19106,7 +19318,7 @@
|
|
|
19106
19318
|
}
|
|
19107
19319
|
return t11;
|
|
19108
19320
|
}
|
|
19109
|
-
function _temp$
|
|
19321
|
+
function _temp$9(t0) {
|
|
19110
19322
|
const [key, property_0] = t0;
|
|
19111
19323
|
return {
|
|
19112
19324
|
id: key,
|
|
@@ -20763,7 +20975,7 @@
|
|
|
20763
20975
|
}
|
|
20764
20976
|
let t7;
|
|
20765
20977
|
if ($[18] !== breadcrumbs.breadcrumbs) {
|
|
20766
|
-
t7 = (breadcrumbs.breadcrumbs ?? []).length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mr-8 hidden lg:block", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-row gap-2", children: breadcrumbs.breadcrumbs.map(_temp$
|
|
20978
|
+
t7 = (breadcrumbs.breadcrumbs ?? []).length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mr-8 hidden lg:block", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-row gap-2", children: breadcrumbs.breadcrumbs.map(_temp$8) }) });
|
|
20767
20979
|
$[18] = breadcrumbs.breadcrumbs;
|
|
20768
20980
|
$[19] = t7;
|
|
20769
20981
|
} else {
|
|
@@ -20875,7 +21087,7 @@
|
|
|
20875
21087
|
}
|
|
20876
21088
|
return t14;
|
|
20877
21089
|
};
|
|
20878
|
-
function _temp$
|
|
21090
|
+
function _temp$8(breadcrumb, index) {
|
|
20879
21091
|
return /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
|
|
20880
21092
|
/* @__PURE__ */ jsxRuntime.jsx(ui.Typography, { variant: "caption", color: "secondary", children: "/" }),
|
|
20881
21093
|
/* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Link, { className: "visited:text-inherit visited:dark:text-inherit block", to: breadcrumb.url, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Typography, { variant: "caption", color: "secondary", children: breadcrumb.title }) }, index)
|
|
@@ -21309,7 +21521,7 @@
|
|
|
21309
21521
|
} else {
|
|
21310
21522
|
const searchResult = iconsSearch.search(value);
|
|
21311
21523
|
const limited = searchResult.slice(0, 50);
|
|
21312
|
-
setKeys(limited.map(_temp$
|
|
21524
|
+
setKeys(limited.map(_temp$7));
|
|
21313
21525
|
}
|
|
21314
21526
|
}, UPDATE_SEARCH_INDEX_WAIT_MS);
|
|
21315
21527
|
$[0] = t3;
|
|
@@ -21376,7 +21588,7 @@
|
|
|
21376
21588
|
}
|
|
21377
21589
|
return t8;
|
|
21378
21590
|
}
|
|
21379
|
-
function _temp$
|
|
21591
|
+
function _temp$7(e) {
|
|
21380
21592
|
return e.item.key;
|
|
21381
21593
|
}
|
|
21382
21594
|
function FieldCaption(t0) {
|
|
@@ -22002,7 +22214,7 @@
|
|
|
22002
22214
|
t0 = $[0];
|
|
22003
22215
|
}
|
|
22004
22216
|
const configCache = React.useRef(t0);
|
|
22005
|
-
const getCollectionFromStorage = _temp$
|
|
22217
|
+
const getCollectionFromStorage = _temp$6;
|
|
22006
22218
|
let t1;
|
|
22007
22219
|
if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
|
|
22008
22220
|
t1 = (path) => {
|
|
@@ -22125,7 +22337,7 @@
|
|
|
22125
22337
|
}
|
|
22126
22338
|
return t11;
|
|
22127
22339
|
}
|
|
22128
|
-
function _temp$
|
|
22340
|
+
function _temp$6(storageKey) {
|
|
22129
22341
|
const item = localStorage.getItem(storageKey);
|
|
22130
22342
|
return item ? JSON.parse(item) : {};
|
|
22131
22343
|
}
|
|
@@ -23460,7 +23672,7 @@
|
|
|
23460
23672
|
t3 = () => {
|
|
23461
23673
|
const state = location.state;
|
|
23462
23674
|
const panelKeys = state?.panels ?? [];
|
|
23463
|
-
const newPanels_0 = panelKeys.map((key) => routesStore.current[key]).filter(_temp$
|
|
23675
|
+
const newPanels_0 = panelKeys.map((key) => routesStore.current[key]).filter(_temp$5);
|
|
23464
23676
|
if (!equal(sidePanelsRef.current.map(_temp2$3), newPanels_0.map(_temp3$1))) {
|
|
23465
23677
|
updateSidePanels(newPanels_0);
|
|
23466
23678
|
}
|
|
@@ -23608,7 +23820,7 @@
|
|
|
23608
23820
|
function _temp2$3(p_0) {
|
|
23609
23821
|
return p_0.key;
|
|
23610
23822
|
}
|
|
23611
|
-
function _temp$
|
|
23823
|
+
function _temp$5(p) {
|
|
23612
23824
|
return Boolean(p);
|
|
23613
23825
|
}
|
|
23614
23826
|
function useBuildDataSource({
|
|
@@ -23903,7 +24115,7 @@
|
|
|
23903
24115
|
const dataSourceKey = dataSourceDelegate.key;
|
|
23904
24116
|
let t1;
|
|
23905
24117
|
if ($[0] !== plugins) {
|
|
23906
|
-
t1 = plugins?.map(_temp$
|
|
24118
|
+
t1 = plugins?.map(_temp$4);
|
|
23907
24119
|
$[0] = plugins;
|
|
23908
24120
|
$[1] = t1;
|
|
23909
24121
|
} else {
|
|
@@ -23939,7 +24151,7 @@
|
|
|
23939
24151
|
React.useEffect(t2, t3);
|
|
23940
24152
|
return accessResponse;
|
|
23941
24153
|
}
|
|
23942
|
-
function _temp$
|
|
24154
|
+
function _temp$4(plugin) {
|
|
23943
24155
|
return plugin.key;
|
|
23944
24156
|
}
|
|
23945
24157
|
function FireCMS(props) {
|
|
@@ -23952,22 +24164,27 @@
|
|
|
23952
24164
|
authController,
|
|
23953
24165
|
storageSource,
|
|
23954
24166
|
dataSourceDelegate,
|
|
23955
|
-
plugins:
|
|
24167
|
+
plugins: _pluginsProp,
|
|
23956
24168
|
onAnalyticsEvent,
|
|
23957
24169
|
propertyConfigs,
|
|
23958
24170
|
entityViews,
|
|
23959
24171
|
entityActions,
|
|
23960
24172
|
components,
|
|
23961
24173
|
navigationController,
|
|
23962
|
-
apiKey
|
|
24174
|
+
apiKey,
|
|
24175
|
+
userManagement: _userManagement
|
|
23963
24176
|
} = props;
|
|
23964
|
-
if (
|
|
24177
|
+
if (_pluginsProp) {
|
|
23965
24178
|
console.warn("The `plugins` prop is deprecated in the FireCMS component. You should pass your plugins to `useBuildNavigationController` instead.");
|
|
23966
24179
|
}
|
|
23967
|
-
const plugins = navigationController.plugins ??
|
|
24180
|
+
const plugins = navigationController.plugins ?? _pluginsProp;
|
|
24181
|
+
const userManagement = plugins?.find((p) => p.userManagement)?.userManagement ?? _userManagement ?? {
|
|
24182
|
+
users: [],
|
|
24183
|
+
getUser: (uid) => null
|
|
24184
|
+
};
|
|
23968
24185
|
const sideDialogsController = useBuildSideDialogsController();
|
|
23969
24186
|
const sideEntityController = useBuildSideEntityController(navigationController, sideDialogsController, authController);
|
|
23970
|
-
const pluginsLoading = plugins?.some((
|
|
24187
|
+
const pluginsLoading = plugins?.some((p_0) => p_0.loading) ?? false;
|
|
23971
24188
|
const loading = authController.initialLoading || navigationController.loading || pluginsLoading;
|
|
23972
24189
|
const customizationController = {
|
|
23973
24190
|
dateTimeFormat,
|
|
@@ -24014,7 +24231,7 @@
|
|
|
24014
24231
|
accessResponse?.message && /* @__PURE__ */ jsxRuntime.jsx(ui.Typography, { children: accessResponse?.message })
|
|
24015
24232
|
] });
|
|
24016
24233
|
}
|
|
24017
|
-
return /* @__PURE__ */ jsxRuntime.jsx(AnalyticsContext.Provider, { value: analyticsController, children: /* @__PURE__ */ jsxRuntime.jsx(CustomizationControllerContext.Provider, { value: customizationController, children: /* @__PURE__ */ jsxRuntime.jsx(UserConfigurationPersistenceContext.Provider, { value: userConfigPersistence, children: /* @__PURE__ */ jsxRuntime.jsx(StorageSourceContext.Provider, { value: storageSource, children: /* @__PURE__ */ jsxRuntime.jsx(DataSourceContext.Provider, { value: dataSource, children: /* @__PURE__ */ jsxRuntime.jsx(AuthControllerContext.Provider, { value: authController, children: /* @__PURE__ */ jsxRuntime.jsx(SideDialogsControllerContext.Provider, { value: sideDialogsController, children: /* @__PURE__ */ jsxRuntime.jsx(SideEntityControllerContext.Provider, { value: sideEntityController, children: /* @__PURE__ */ jsxRuntime.jsx(NavigationContext.Provider, { value: navigationController, children: /* @__PURE__ */ jsxRuntime.jsx(DialogsProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbsProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(FireCMSInternal, { loading, children }) }) }) }) }) }) }) }) }) }) }) });
|
|
24234
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AnalyticsContext.Provider, { value: analyticsController, children: /* @__PURE__ */ jsxRuntime.jsx(CustomizationControllerContext.Provider, { value: customizationController, children: /* @__PURE__ */ jsxRuntime.jsx(UserConfigurationPersistenceContext.Provider, { value: userConfigPersistence, children: /* @__PURE__ */ jsxRuntime.jsx(StorageSourceContext.Provider, { value: storageSource, children: /* @__PURE__ */ jsxRuntime.jsx(DataSourceContext.Provider, { value: dataSource, children: /* @__PURE__ */ jsxRuntime.jsx(AuthControllerContext.Provider, { value: authController, children: /* @__PURE__ */ jsxRuntime.jsx(SideDialogsControllerContext.Provider, { value: sideDialogsController, children: /* @__PURE__ */ jsxRuntime.jsx(SideEntityControllerContext.Provider, { value: sideEntityController, children: /* @__PURE__ */ jsxRuntime.jsx(NavigationContext.Provider, { value: navigationController, children: /* @__PURE__ */ jsxRuntime.jsx(InternalUserManagementContext.Provider, { value: userManagement, children: /* @__PURE__ */ jsxRuntime.jsx(DialogsProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbsProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(FireCMSInternal, { loading, children }) }) }) }) }) }) }) }) }) }) }) }) });
|
|
24018
24235
|
}
|
|
24019
24236
|
function FireCMSInternal(t0) {
|
|
24020
24237
|
const $ = reactCompilerRuntime.c(7);
|
|
@@ -24184,7 +24401,7 @@
|
|
|
24184
24401
|
} = navigation.topLevelNavigation;
|
|
24185
24402
|
let t1;
|
|
24186
24403
|
if ($[0] !== adminMenuOpen || $[1] !== analyticsController || $[2] !== className || $[3] !== closeDrawer || $[4] !== drawerOpen || $[5] !== groups || $[6] !== largeLayout || $[7] !== logo || $[8] !== navigate || $[9] !== navigationEntries || $[10] !== style || $[11] !== tooltipsOpen) {
|
|
24187
|
-
const adminViews = navigationEntries.filter(_temp$
|
|
24404
|
+
const adminViews = navigationEntries.filter(_temp$3) ?? [];
|
|
24188
24405
|
let t2;
|
|
24189
24406
|
let t3;
|
|
24190
24407
|
let t4;
|
|
@@ -24337,7 +24554,7 @@
|
|
|
24337
24554
|
function _temp2$2(g) {
|
|
24338
24555
|
return g !== "Admin";
|
|
24339
24556
|
}
|
|
24340
|
-
function _temp$
|
|
24557
|
+
function _temp$3(e) {
|
|
24341
24558
|
return e.type === "admin";
|
|
24342
24559
|
}
|
|
24343
24560
|
function DrawerLogo(t0) {
|
|
@@ -24397,6 +24614,165 @@
|
|
|
24397
24614
|
}
|
|
24398
24615
|
return t6;
|
|
24399
24616
|
}
|
|
24617
|
+
function UserSelectFieldBinding(t0) {
|
|
24618
|
+
const $ = reactCompilerRuntime.c(43);
|
|
24619
|
+
const {
|
|
24620
|
+
propertyKey,
|
|
24621
|
+
value,
|
|
24622
|
+
setValue,
|
|
24623
|
+
error,
|
|
24624
|
+
showError,
|
|
24625
|
+
disabled,
|
|
24626
|
+
property,
|
|
24627
|
+
includeDescription,
|
|
24628
|
+
size: t1
|
|
24629
|
+
} = t0;
|
|
24630
|
+
const size = t1 === void 0 ? "large" : t1;
|
|
24631
|
+
const {
|
|
24632
|
+
users,
|
|
24633
|
+
getUser
|
|
24634
|
+
} = useInternalUserManagementController();
|
|
24635
|
+
let t2;
|
|
24636
|
+
if ($[0] !== setValue) {
|
|
24637
|
+
t2 = (e) => {
|
|
24638
|
+
e.stopPropagation();
|
|
24639
|
+
e.preventDefault();
|
|
24640
|
+
setValue(null);
|
|
24641
|
+
};
|
|
24642
|
+
$[0] = setValue;
|
|
24643
|
+
$[1] = t2;
|
|
24644
|
+
} else {
|
|
24645
|
+
t2 = $[1];
|
|
24646
|
+
}
|
|
24647
|
+
const handleClearClick = t2;
|
|
24648
|
+
let t3;
|
|
24649
|
+
if ($[2] !== value) {
|
|
24650
|
+
t3 = value !== void 0 && value != null ? value.toString() : "";
|
|
24651
|
+
$[2] = value;
|
|
24652
|
+
$[3] = t3;
|
|
24653
|
+
} else {
|
|
24654
|
+
t3 = $[3];
|
|
24655
|
+
}
|
|
24656
|
+
let t4;
|
|
24657
|
+
if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
|
|
24658
|
+
t4 = ui.cls("w-full");
|
|
24659
|
+
$[4] = t4;
|
|
24660
|
+
} else {
|
|
24661
|
+
t4 = $[4];
|
|
24662
|
+
}
|
|
24663
|
+
let t5;
|
|
24664
|
+
if ($[5] !== property) {
|
|
24665
|
+
t5 = getIconForProperty(property, "small");
|
|
24666
|
+
$[5] = property;
|
|
24667
|
+
$[6] = t5;
|
|
24668
|
+
} else {
|
|
24669
|
+
t5 = $[6];
|
|
24670
|
+
}
|
|
24671
|
+
const t6 = property.validation?.required;
|
|
24672
|
+
let t7;
|
|
24673
|
+
if ($[7] !== property.name || $[8] !== t5 || $[9] !== t6) {
|
|
24674
|
+
t7 = /* @__PURE__ */ jsxRuntime.jsx(LabelWithIcon, { icon: t5, required: t6, title: property.name, className: "h-8 text-text-secondary dark:text-text-secondary-dark ml-3.5 my-0" });
|
|
24675
|
+
$[7] = property.name;
|
|
24676
|
+
$[8] = t5;
|
|
24677
|
+
$[9] = t6;
|
|
24678
|
+
$[10] = t7;
|
|
24679
|
+
} else {
|
|
24680
|
+
t7 = $[10];
|
|
24681
|
+
}
|
|
24682
|
+
let t8;
|
|
24683
|
+
if ($[11] !== propertyKey || $[12] !== t7) {
|
|
24684
|
+
t8 = /* @__PURE__ */ jsxRuntime.jsx(PropertyIdCopyTooltip, { propertyKey, children: t7 });
|
|
24685
|
+
$[11] = propertyKey;
|
|
24686
|
+
$[12] = t7;
|
|
24687
|
+
$[13] = t8;
|
|
24688
|
+
} else {
|
|
24689
|
+
t8 = $[13];
|
|
24690
|
+
}
|
|
24691
|
+
let t9;
|
|
24692
|
+
if ($[14] !== disabled || $[15] !== handleClearClick || $[16] !== property.clearable || $[17] !== value) {
|
|
24693
|
+
t9 = property.clearable && !disabled && value && /* @__PURE__ */ jsxRuntime.jsx(ui.IconButton, { size: "small", onClick: handleClearClick, children: /* @__PURE__ */ jsxRuntime.jsx(ui.CloseIcon, { size: "small" }) });
|
|
24694
|
+
$[14] = disabled;
|
|
24695
|
+
$[15] = handleClearClick;
|
|
24696
|
+
$[16] = property.clearable;
|
|
24697
|
+
$[17] = value;
|
|
24698
|
+
$[18] = t9;
|
|
24699
|
+
} else {
|
|
24700
|
+
t9 = $[18];
|
|
24701
|
+
}
|
|
24702
|
+
let t10;
|
|
24703
|
+
if ($[19] !== setValue) {
|
|
24704
|
+
t10 = (updatedValue) => {
|
|
24705
|
+
const newValue = updatedValue || null;
|
|
24706
|
+
return setValue(newValue);
|
|
24707
|
+
};
|
|
24708
|
+
$[19] = setValue;
|
|
24709
|
+
$[20] = t10;
|
|
24710
|
+
} else {
|
|
24711
|
+
t10 = $[20];
|
|
24712
|
+
}
|
|
24713
|
+
let t11;
|
|
24714
|
+
if ($[21] !== getUser) {
|
|
24715
|
+
t11 = (userId) => {
|
|
24716
|
+
const user = getUser(userId);
|
|
24717
|
+
return /* @__PURE__ */ jsxRuntime.jsx(UserDisplay, { user });
|
|
24718
|
+
};
|
|
24719
|
+
$[21] = getUser;
|
|
24720
|
+
$[22] = t11;
|
|
24721
|
+
} else {
|
|
24722
|
+
t11 = $[22];
|
|
24723
|
+
}
|
|
24724
|
+
let t12;
|
|
24725
|
+
if ($[23] !== users) {
|
|
24726
|
+
t12 = users && users.map(_temp$2);
|
|
24727
|
+
$[23] = users;
|
|
24728
|
+
$[24] = t12;
|
|
24729
|
+
} else {
|
|
24730
|
+
t12 = $[24];
|
|
24731
|
+
}
|
|
24732
|
+
let t13;
|
|
24733
|
+
if ($[25] !== disabled || $[26] !== size || $[27] !== t10 || $[28] !== t11 || $[29] !== t12 || $[30] !== t3 || $[31] !== t8 || $[32] !== t9) {
|
|
24734
|
+
t13 = /* @__PURE__ */ jsxRuntime.jsx(ui.Select, { value: t3, disabled, size, fullWidth: true, position: "item-aligned", inputClassName: t4, label: t8, endAdornment: t9, onValueChange: t10, renderValue: t11, children: t12 });
|
|
24735
|
+
$[25] = disabled;
|
|
24736
|
+
$[26] = size;
|
|
24737
|
+
$[27] = t10;
|
|
24738
|
+
$[28] = t11;
|
|
24739
|
+
$[29] = t12;
|
|
24740
|
+
$[30] = t3;
|
|
24741
|
+
$[31] = t8;
|
|
24742
|
+
$[32] = t9;
|
|
24743
|
+
$[33] = t13;
|
|
24744
|
+
} else {
|
|
24745
|
+
t13 = $[33];
|
|
24746
|
+
}
|
|
24747
|
+
let t14;
|
|
24748
|
+
if ($[34] !== disabled || $[35] !== error || $[36] !== includeDescription || $[37] !== property || $[38] !== showError) {
|
|
24749
|
+
t14 = /* @__PURE__ */ jsxRuntime.jsx(FieldHelperText, { includeDescription, showError, error, disabled, property });
|
|
24750
|
+
$[34] = disabled;
|
|
24751
|
+
$[35] = error;
|
|
24752
|
+
$[36] = includeDescription;
|
|
24753
|
+
$[37] = property;
|
|
24754
|
+
$[38] = showError;
|
|
24755
|
+
$[39] = t14;
|
|
24756
|
+
} else {
|
|
24757
|
+
t14 = $[39];
|
|
24758
|
+
}
|
|
24759
|
+
let t15;
|
|
24760
|
+
if ($[40] !== t13 || $[41] !== t14) {
|
|
24761
|
+
t15 = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
24762
|
+
t13,
|
|
24763
|
+
t14
|
|
24764
|
+
] });
|
|
24765
|
+
$[40] = t13;
|
|
24766
|
+
$[41] = t14;
|
|
24767
|
+
$[42] = t15;
|
|
24768
|
+
} else {
|
|
24769
|
+
t15 = $[42];
|
|
24770
|
+
}
|
|
24771
|
+
return t15;
|
|
24772
|
+
}
|
|
24773
|
+
function _temp$2(user_0) {
|
|
24774
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ui.SelectItem, { value: user_0.uid, children: /* @__PURE__ */ jsxRuntime.jsx(UserDisplay, { user: user_0 }) }, user_0.uid);
|
|
24775
|
+
}
|
|
24400
24776
|
function isDefaultFieldConfigId(id) {
|
|
24401
24777
|
return Object.keys(DEFAULT_FIELD_CONFIGS).includes(id);
|
|
24402
24778
|
}
|
|
@@ -24498,6 +24874,16 @@
|
|
|
24498
24874
|
Field: MultiSelectFieldBinding
|
|
24499
24875
|
}
|
|
24500
24876
|
},
|
|
24877
|
+
user_select: {
|
|
24878
|
+
key: "user_select",
|
|
24879
|
+
name: "User select",
|
|
24880
|
+
description: "Select a user from the user management system. Store the user ID.",
|
|
24881
|
+
Icon: ui.PersonIcon,
|
|
24882
|
+
property: {
|
|
24883
|
+
dataType: "string",
|
|
24884
|
+
Field: UserSelectFieldBinding
|
|
24885
|
+
}
|
|
24886
|
+
},
|
|
24501
24887
|
number_input: {
|
|
24502
24888
|
key: "number_input",
|
|
24503
24889
|
name: "Number input",
|
|
@@ -24712,6 +25098,8 @@
|
|
|
24712
25098
|
return "email";
|
|
24713
25099
|
} else if (property.enumValues) {
|
|
24714
25100
|
return "select";
|
|
25101
|
+
} else if (property.userSelect) {
|
|
25102
|
+
return "user_select";
|
|
24715
25103
|
} else if (property.reference) {
|
|
24716
25104
|
return "reference_as_string";
|
|
24717
25105
|
} else {
|
|
@@ -25750,6 +26138,7 @@
|
|
|
25750
26138
|
exports2.SwitchFieldBinding = SwitchFieldBinding;
|
|
25751
26139
|
exports2.TextFieldBinding = TextFieldBinding;
|
|
25752
26140
|
exports2.UrlComponentPreview = UrlComponentPreview;
|
|
26141
|
+
exports2.UserPreview = UserPreview;
|
|
25753
26142
|
exports2.Vector = Vector;
|
|
25754
26143
|
exports2.VirtualTable = VirtualTable;
|
|
25755
26144
|
exports2.addInitialSlash = addInitialSlash;
|
|
@@ -25895,6 +26284,7 @@
|
|
|
25895
26284
|
exports2.useDialogsController = useDialogsController;
|
|
25896
26285
|
exports2.useEntityFetch = useEntityFetch;
|
|
25897
26286
|
exports2.useFireCMSContext = useFireCMSContext;
|
|
26287
|
+
exports2.useInternalUserManagementController = useInternalUserManagementController;
|
|
25898
26288
|
exports2.useLargeLayout = useLargeLayout;
|
|
25899
26289
|
exports2.useModeController = useModeController;
|
|
25900
26290
|
exports2.useNavigationController = useNavigationController;
|