@firecms/core 3.0.0-canary.144 → 3.0.0-canary.145

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.
Files changed (95) hide show
  1. package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +1 -1
  2. package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +2 -2
  3. package/dist/components/common/useDataSourceEntityCollectionTableController.d.ts +1 -1
  4. package/dist/core/EntityEditView.d.ts +1 -1
  5. package/dist/core/FireCMS.d.ts +1 -1
  6. package/dist/hooks/data/delete.d.ts +4 -4
  7. package/dist/hooks/data/save.d.ts +3 -3
  8. package/dist/hooks/data/useCollectionFetch.d.ts +1 -1
  9. package/dist/hooks/data/useEntityFetch.d.ts +3 -3
  10. package/dist/hooks/useAuthController.d.ts +1 -1
  11. package/dist/hooks/useBuildNavigationController.d.ts +3 -3
  12. package/dist/hooks/useFireCMSContext.d.ts +1 -1
  13. package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
  14. package/dist/hooks/useValidateAuthenticator.d.ts +3 -3
  15. package/dist/index.es.js +70 -67
  16. package/dist/index.es.js.map +1 -1
  17. package/dist/index.umd.js +70 -67
  18. package/dist/index.umd.js.map +1 -1
  19. package/dist/types/auth.d.ts +8 -6
  20. package/dist/types/collections.d.ts +12 -12
  21. package/dist/types/datasource.d.ts +0 -4
  22. package/dist/types/entity_actions.d.ts +4 -4
  23. package/dist/types/entity_callbacks.d.ts +16 -16
  24. package/dist/types/export_import.d.ts +4 -4
  25. package/dist/types/firecms.d.ts +2 -2
  26. package/dist/types/firecms_context.d.ts +1 -1
  27. package/dist/types/permissions.d.ts +4 -4
  28. package/dist/types/plugins.d.ts +8 -8
  29. package/dist/types/user.d.ts +1 -0
  30. package/dist/util/builders.d.ts +2 -2
  31. package/dist/util/permissions.d.ts +4 -4
  32. package/package.json +5 -5
  33. package/src/app/Scaffold.tsx +2 -2
  34. package/src/components/ArrayContainer.tsx +1 -1
  35. package/src/components/CircularProgressCenter.tsx +1 -1
  36. package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +1 -1
  37. package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +5 -5
  38. package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +2 -2
  39. package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +3 -3
  40. package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +2 -2
  41. package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +1 -1
  42. package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +4 -4
  43. package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +3 -3
  44. package/src/components/EntityCollectionView/EntityCollectionView.tsx +3 -3
  45. package/src/components/EntityPreview.tsx +2 -2
  46. package/src/components/EntityView.tsx +4 -4
  47. package/src/components/HomePage/FavouritesView.tsx +1 -1
  48. package/src/components/HomePage/NavigationCard.tsx +1 -1
  49. package/src/components/HomePage/NavigationCardBinding.tsx +1 -1
  50. package/src/components/HomePage/NavigationGroup.tsx +1 -1
  51. package/src/components/PropertyConfigBadge.tsx +1 -1
  52. package/src/components/PropertyIdCopyTooltip.tsx +1 -1
  53. package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +1 -1
  54. package/src/components/SelectableTable/SelectableTable.tsx +2 -2
  55. package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +1 -1
  56. package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +1 -1
  57. package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +1 -1
  58. package/src/components/VirtualTable/VirtualTableHeader.tsx +8 -8
  59. package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +1 -1
  60. package/src/components/VirtualTable/VirtualTableRow.tsx +1 -1
  61. package/src/components/common/useDataSourceEntityCollectionTableController.tsx +2 -2
  62. package/src/core/DefaultDrawer.tsx +2 -2
  63. package/src/core/DrawerNavigationItem.tsx +3 -3
  64. package/src/core/EntityEditView.tsx +4 -4
  65. package/src/core/FireCMS.tsx +1 -1
  66. package/src/core/SideDialogs.tsx +1 -1
  67. package/src/core/field_configs.tsx +1 -1
  68. package/src/form/components/StorageItemPreview.tsx +2 -2
  69. package/src/form/field_bindings/MapFieldBinding.tsx +1 -1
  70. package/src/form/field_bindings/ReferenceFieldBinding.tsx +3 -3
  71. package/src/hooks/data/delete.ts +4 -4
  72. package/src/hooks/data/save.ts +3 -3
  73. package/src/hooks/data/useCollectionFetch.tsx +2 -2
  74. package/src/hooks/data/useEntityFetch.tsx +5 -5
  75. package/src/hooks/useAuthController.tsx +1 -1
  76. package/src/hooks/useBuildNavigationController.tsx +7 -6
  77. package/src/hooks/useFireCMSContext.tsx +5 -5
  78. package/src/hooks/useResolvedNavigationFrom.tsx +5 -5
  79. package/src/hooks/useValidateAuthenticator.tsx +3 -3
  80. package/src/preview/components/EmptyValue.tsx +1 -1
  81. package/src/preview/components/ImagePreview.tsx +2 -2
  82. package/src/preview/components/UrlComponentPreview.tsx +1 -1
  83. package/src/types/auth.tsx +8 -8
  84. package/src/types/collections.ts +12 -12
  85. package/src/types/datasource.ts +0 -5
  86. package/src/types/entity_actions.tsx +4 -4
  87. package/src/types/entity_callbacks.ts +18 -18
  88. package/src/types/export_import.ts +4 -4
  89. package/src/types/firecms.tsx +2 -2
  90. package/src/types/firecms_context.tsx +1 -1
  91. package/src/types/permissions.ts +5 -5
  92. package/src/types/plugins.tsx +8 -8
  93. package/src/types/user.ts +2 -0
  94. package/src/util/builders.ts +6 -6
  95. package/src/util/permissions.ts +8 -8
package/dist/index.es.js CHANGED
@@ -613,7 +613,7 @@ function PropertyIdCopyTooltipContent({ propertyKey }) {
613
613
  Typography,
614
614
  {
615
615
  variant: "caption",
616
- className: "min-w-20 text-slate-400",
616
+ className: "min-w-20 text-surface-accent-400",
617
617
  color: "disabled",
618
618
  children: copied ? "Copied" : "Property ID"
619
619
  }
@@ -4053,11 +4053,11 @@ function EntityView({
4053
4053
  const properties = resolvedCollection.properties;
4054
4054
  return /* @__PURE__ */ jsx("div", { className: "w-full " + className, children: /* @__PURE__ */ jsxs("div", { className: "w-full mb-4", children: [
4055
4055
  /* @__PURE__ */ jsxs("div", { className: cls(defaultBorderMixin, "flex justify-between py-2 border-b last:border-b-0"), children: [
4056
- /* @__PURE__ */ jsx("div", { className: "flex items-center w-1/4", children: /* @__PURE__ */ jsx("span", { className: "pl-2 text-sm text-gray-600", children: "Id" }) }),
4056
+ /* @__PURE__ */ jsx("div", { className: "flex items-center w-1/4", children: /* @__PURE__ */ jsx("span", { className: "pl-2 text-sm text-surface-600", children: "Id" }) }),
4057
4057
  /* @__PURE__ */ jsxs(
4058
4058
  "div",
4059
4059
  {
4060
- className: "flex-grow p-2 ml-2 w-3/4 text-gray-900 dark:text-white min-h-[56px] flex items-center",
4060
+ className: "flex-grow p-2 ml-2 w-3/4 text-surface-900 dark:text-white min-h-[56px] flex items-center",
4061
4061
  children: [
4062
4062
  /* @__PURE__ */ jsx("span", { className: "flex-grow mr-2", children: entity.id }),
4063
4063
  customizationController?.entityLinkBuilder && /* @__PURE__ */ jsx(
@@ -4085,11 +4085,11 @@ function EntityView({
4085
4085
  {
4086
4086
  className: cls(defaultBorderMixin, "flex justify-between py-2 border-b last:border-b-0"),
4087
4087
  children: [
4088
- /* @__PURE__ */ jsx("div", { className: "flex items-center w-1/4", children: /* @__PURE__ */ jsx("span", { className: "pl-2 text-sm text-gray-600", children: property.name }) }),
4088
+ /* @__PURE__ */ jsx("div", { className: "flex items-center w-1/4", children: /* @__PURE__ */ jsx("span", { className: "pl-2 text-sm text-surface-600", children: property.name }) }),
4089
4089
  /* @__PURE__ */ jsx(
4090
4090
  "div",
4091
4091
  {
4092
- className: "flex-grow p-2 ml-2 w-3/4 text-gray-900 dark:text-white min-h-[56px] flex items-center",
4092
+ className: "flex-grow p-2 ml-2 w-3/4 text-surface-900 dark:text-white min-h-[56px] flex items-center",
4093
4093
  children: /* @__PURE__ */ jsx(
4094
4094
  PropertyPreview,
4095
4095
  {
@@ -4960,7 +4960,7 @@ function StorageUpload$1({
4960
4960
  children: /* @__PURE__ */ jsx(
4961
4961
  Typography,
4962
4962
  {
4963
- className: "text-gray-400 dark:text-gray-600",
4963
+ className: "text-surface-400 dark:text-surface-600",
4964
4964
  variant: "body2",
4965
4965
  align: "center",
4966
4966
  children: helpText
@@ -4982,7 +4982,7 @@ function StorageUpload$1({
4982
4982
  color: "inherit",
4983
4983
  size: "small",
4984
4984
  onClick: open,
4985
- children: /* @__PURE__ */ jsx(EditIcon, { size: "small", className: "text-gray-500" })
4985
+ children: /* @__PURE__ */ jsx(EditIcon, { size: "small", className: "text-surface-500" })
4986
4986
  }
4987
4987
  )
4988
4988
  }
@@ -5165,11 +5165,11 @@ const EntityPreviewContainer = React.forwardRef(({
5165
5165
  tabindex: 0
5166
5166
  },
5167
5167
  className: cls(
5168
- "bg-white dark:bg-gray-900",
5168
+ "bg-white dark:bg-surface-900",
5169
5169
  "min-h-[42px]",
5170
5170
  fullwidth ? "w-full" : "",
5171
5171
  "items-center",
5172
- hover ? "hover:bg-slate-50 dark:hover:bg-gray-800 group-hover:bg-slate-50 dark:group-hover:bg-gray-800" : "",
5172
+ hover ? "hover:bg-surface-accent-50 dark:hover:bg-surface-800 group-hover:bg-surface-accent-50 dark:group-hover:bg-surface-800" : "",
5173
5173
  size === "smallest" ? "p-1" : "px-2 py-1",
5174
5174
  "flex border rounded-lg",
5175
5175
  onClick ? "cursor-pointer" : "",
@@ -5305,7 +5305,7 @@ const TableReferenceFieldInternal = React__default.memo(
5305
5305
  className: cls(
5306
5306
  "px-4 py-2 text-sm font-medium flex items-center uppercase",
5307
5307
  multiselect ? "gap-4" : "gap-6",
5308
- disabled ? "text-slate-500" : "cursor-pointer text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-gray-800 group-hover:bg-slate-50 dark:group-hover:bg-gray-800"
5308
+ disabled ? "text-surface-accent-500" : "cursor-pointer text-surface-accent-700 dark:text-surface-accent-300 hover:bg-surface-accent-50 dark:hover:bg-surface-800 group-hover:bg-surface-accent-50 dark:group-hover:bg-surface-800"
5309
5309
  ),
5310
5310
  onClick: handleOpen,
5311
5311
  size: "medium",
@@ -5315,7 +5315,7 @@ const TableReferenceFieldInternal = React__default.memo(
5315
5315
  {
5316
5316
  size: "small",
5317
5317
  collectionOrView: collection,
5318
- className: "text-gray-300 dark:text-gray-600"
5318
+ className: "text-surface-300 dark:text-surface-600"
5319
5319
  }
5320
5320
  ),
5321
5321
  "Edit ",
@@ -5799,10 +5799,10 @@ const EntityTableCell = React__default.memo(
5799
5799
  className: cls(
5800
5800
  "transition-colors duration-100 ease-in-out",
5801
5801
  `flex relative h-full rounded-md p-${p} border border-4 border-opacity-75`,
5802
- onHover && !disabled ? "bg-gray-50 dark:bg-gray-900" : "",
5803
- saved ? "bg-gray-100 bg-opacity-75 dark:bg-gray-800 dark:bg-opacity-75" : "",
5802
+ onHover && !disabled ? "bg-surface-50 dark:bg-surface-900" : "",
5803
+ saved ? "bg-surface-100 bg-opacity-75 dark:bg-surface-800 dark:bg-opacity-75" : "",
5804
5804
  hideOverflow ? "overflow-hidden" : "",
5805
- isSelected ? "bg-gray-50 dark:bg-gray-900" : "",
5805
+ isSelected ? "bg-surface-50 dark:bg-surface-900" : "",
5806
5806
  borderClass
5807
5807
  ),
5808
5808
  ref,
@@ -5844,7 +5844,7 @@ const EntityTableCell = React__default.memo(
5844
5844
  )
5845
5845
  ] }),
5846
5846
  actions,
5847
- disabled && onHover && disabledTooltip && /* @__PURE__ */ jsx("div", { className: "absolute top-1 right-1 text-xs", children: /* @__PURE__ */ jsx(Tooltip, { title: disabledTooltip, children: /* @__PURE__ */ jsx(RemoveCircleIcon, { size: "smallest", color: "disabled", className: "text-gray-500" }) }) })
5847
+ disabled && onHover && disabledTooltip && /* @__PURE__ */ jsx("div", { className: "absolute top-1 right-1 text-xs", children: /* @__PURE__ */ jsx(Tooltip, { title: disabledTooltip, children: /* @__PURE__ */ jsx(RemoveCircleIcon, { size: "smallest", color: "disabled", className: "text-surface-500" }) }) })
5848
5848
  ]
5849
5849
  }
5850
5850
  );
@@ -6325,7 +6325,7 @@ const EntityCollectionRowActions = function EntityCollectionRowActions2({
6325
6325
  "div",
6326
6326
  {
6327
6327
  className: cls(
6328
- "h-full flex items-center justify-center flex-col bg-gray-50 dark:bg-gray-900 bg-opacity-90 dark:bg-opacity-90 z-10",
6328
+ "h-full flex items-center justify-center flex-col bg-surface-50 dark:bg-surface-900 bg-opacity-90 dark:bg-opacity-90 z-10",
6329
6329
  frozen ? "sticky left-0" : ""
6330
6330
  ),
6331
6331
  style: {
@@ -6456,7 +6456,7 @@ function CollectionTableToolbar({
6456
6456
  return /* @__PURE__ */ jsxs(
6457
6457
  "div",
6458
6458
  {
6459
- className: cls(defaultBorderMixin, "no-scrollbar min-h-[56px] overflow-x-auto px-2 md:px-4 bg-gray-50 dark:bg-gray-900 border-b flex flex-row justify-between items-center w-full"),
6459
+ className: cls(defaultBorderMixin, "no-scrollbar min-h-[56px] overflow-x-auto px-2 md:px-4 bg-surface-50 dark:bg-surface-900 border-b flex flex-row justify-between items-center w-full"),
6460
6460
  children: [
6461
6461
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 md:mr-4 mr-2", children: [
6462
6462
  title && /* @__PURE__ */ jsx("div", { className: "hidden lg:block", children: title }),
@@ -6702,7 +6702,7 @@ function CircularProgressCenter({ text, ...props }) {
6702
6702
  return /* @__PURE__ */ jsx(
6703
6703
  "div",
6704
6704
  {
6705
- className: "flex w-full h-screen max-h-full max-w-full bg-gray-50 dark:bg-gray-900 gap-4",
6705
+ className: "flex w-full h-screen max-h-full max-w-full bg-surface-50 dark:bg-surface-900 gap-4",
6706
6706
  children: /* @__PURE__ */ jsxs("div", { className: "m-auto flex flex-col gap-2 items-center", children: [
6707
6707
  /* @__PURE__ */ jsx(CircularProgress, { ...props }),
6708
6708
  text && /* @__PURE__ */ jsx(
@@ -6750,9 +6750,9 @@ const VirtualTableHeader = React__default.memo(
6750
6750
  "div",
6751
6751
  {
6752
6752
  className: cls(
6753
- "flex py-0 px-3 h-full text-xs uppercase font-semibold relative select-none items-center bg-gray-50 dark:bg-gray-900",
6754
- "text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200 ",
6755
- "hover:bg-gray-100 dark:hover:bg-gray-800 hover:bg-opacity-50 dark:hover:bg-opacity-50",
6753
+ "flex py-0 px-3 h-full text-xs uppercase font-semibold relative select-none items-center bg-surface-50 dark:bg-surface-900",
6754
+ "text-text-secondary hover:text-text-primary dark:text-text-secondary-dark dark:hover:text-text-primary-dark",
6755
+ "hover:bg-surface-100 dark:hover:bg-surface-800 hover:bg-opacity-50 dark:hover:bg-opacity-50",
6756
6756
  column.frozen ? "sticky left-0 z-10" : "relative z-0"
6757
6757
  ),
6758
6758
  style: {
@@ -6798,7 +6798,7 @@ const VirtualTableHeader = React__default.memo(
6798
6798
  IconButton,
6799
6799
  {
6800
6800
  size: "small",
6801
- className: onHover || openFilter ? "bg-white dark:bg-gray-950" : void 0,
6801
+ className: onHover || openFilter ? "bg-white dark:bg-surface-950" : void 0,
6802
6802
  onClick: () => {
6803
6803
  onColumnSort(column.key);
6804
6804
  },
@@ -6827,7 +6827,7 @@ const VirtualTableHeader = React__default.memo(
6827
6827
  trigger: /* @__PURE__ */ jsx(
6828
6828
  IconButton,
6829
6829
  {
6830
- className: onHover || openFilter ? "bg-white dark:bg-gray-950" : void 0,
6830
+ className: onHover || openFilter ? "bg-white dark:bg-surface-950" : void 0,
6831
6831
  size: "small",
6832
6832
  onClick: handleSettingsClick,
6833
6833
  children: /* @__PURE__ */ jsx(FilterListIcon, { size: "small" })
@@ -6855,7 +6855,7 @@ const VirtualTableHeader = React__default.memo(
6855
6855
  ref: resizeHandleRef,
6856
6856
  className: cls(
6857
6857
  "absolute h-full w-[6px] top-0 right-0 cursor-col-resize",
6858
- hovered && "bg-gray-300 dark:bg-gray-700"
6858
+ hovered && "bg-surface-300 dark:bg-surface-700"
6859
6859
  ),
6860
6860
  onMouseDown: onClickResizeColumn ? () => onClickResizeColumn(columnIndex, column) : void 0
6861
6861
  }
@@ -6906,12 +6906,12 @@ function FilterForm({
6906
6906
  e.preventDefault();
6907
6907
  submit();
6908
6908
  },
6909
- className: "text-gray-900 dark:text-white",
6909
+ className: "text-surface-900 dark:text-white",
6910
6910
  children: [
6911
6911
  /* @__PURE__ */ jsx(
6912
6912
  "div",
6913
6913
  {
6914
- className: cls(defaultBorderMixin, "py-4 px-6 text-xs font-semibold uppercase border-b"),
6914
+ className: cls(defaultBorderMixin, "py-4 px-6 typography-label border-b"),
6915
6915
  children: column.title ?? id
6916
6916
  }
6917
6917
  ),
@@ -7028,7 +7028,7 @@ const VirtualTableHeaderRow = ({
7028
7028
  return /* @__PURE__ */ jsxs(
7029
7029
  "div",
7030
7030
  {
7031
- className: cls(defaultBorderMixin, "z-20 sticky min-w-full flex w-fit flex-row top-0 left-0 h-12 border-b bg-gray-50 dark:bg-gray-900"),
7031
+ className: cls(defaultBorderMixin, "z-20 sticky min-w-full flex w-fit flex-row top-0 left-0 h-12 border-b bg-surface-50 dark:bg-surface-900"),
7032
7032
  children: [
7033
7033
  columns.map((c, columnIndex) => {
7034
7034
  const column = columns[columnIndex];
@@ -7078,7 +7078,7 @@ const VirtualTableRow = React__default.memo(
7078
7078
  "div",
7079
7079
  {
7080
7080
  className: cls(
7081
- "flex min-w-full text-sm border-b border-gray-200 dark:border-gray-800 border-opacity-40 dark:border-opacity-40",
7081
+ "flex min-w-full text-sm border-b border-surface-200 dark:border-surface-800 border-opacity-40 dark:border-opacity-40",
7082
7082
  rowClassName ? rowClassName(rowData) : "",
7083
7083
  {
7084
7084
  "hover:bg-opacity-95": hoverRow,
@@ -7585,7 +7585,7 @@ function ReferenceFilterField({
7585
7585
  !isArray && /* @__PURE__ */ jsxs(
7586
7586
  Label,
7587
7587
  {
7588
- className: "border cursor-pointer rounded-md p-2 flex items-center gap-2 [&:has(:checked)]:bg-gray-100 dark:[&:has(:checked)]:bg-gray-800",
7588
+ className: "border cursor-pointer rounded-md p-2 flex items-center gap-2 [&:has(:checked)]:bg-surface-100 dark:[&:has(:checked)]:bg-surface-800",
7589
7589
  htmlFor: "null-filter",
7590
7590
  children: [
7591
7591
  /* @__PURE__ */ jsx(
@@ -7777,7 +7777,7 @@ function StringNumberFilterField({
7777
7777
  !isArray && /* @__PURE__ */ jsxs(
7778
7778
  Label,
7779
7779
  {
7780
- className: "border cursor-pointer rounded-md p-2 flex items-center gap-2 [&:has(:checked)]:bg-gray-100 dark:[&:has(:checked)]:bg-gray-800",
7780
+ className: "border cursor-pointer rounded-md p-2 flex items-center gap-2 [&:has(:checked)]:bg-surface-100 dark:[&:has(:checked)]:bg-surface-800",
7781
7781
  htmlFor: "null-filter",
7782
7782
  children: [
7783
7783
  /* @__PURE__ */ jsx(
@@ -7904,7 +7904,7 @@ function DateTimeFilterField({
7904
7904
  /* @__PURE__ */ jsxs(
7905
7905
  Label,
7906
7906
  {
7907
- className: "border cursor-pointer rounded-md p-2 flex items-center gap-2 [&:has(:checked)]:bg-gray-100 dark:[&:has(:checked)]:bg-gray-800",
7907
+ className: "border cursor-pointer rounded-md p-2 flex items-center gap-2 [&:has(:checked)]:bg-surface-100 dark:[&:has(:checked)]:bg-surface-800",
7908
7908
  htmlFor: "null-filter",
7909
7909
  children: [
7910
7910
  /* @__PURE__ */ jsx(
@@ -8018,7 +8018,7 @@ const SelectableTable = React__default.memo(
8018
8018
  children: /* @__PURE__ */ jsx(
8019
8019
  "div",
8020
8020
  {
8021
- className: "h-full w-full flex flex-col bg-white dark:bg-gray-950",
8021
+ className: "h-full w-full flex flex-col bg-white dark:bg-surface-950",
8022
8022
  ref,
8023
8023
  children: /* @__PURE__ */ jsx(
8024
8024
  VirtualTable,
@@ -8041,7 +8041,7 @@ const SelectableTable = React__default.memo(
8041
8041
  checkFilterCombination,
8042
8042
  createFilterField: filterable ? createFilterField : void 0,
8043
8043
  rowClassName: useCallback((entity) => {
8044
- return highlightedRow?.(entity) ? "bg-gray-100 bg-opacity-75 dark:bg-gray-800 dark:bg-opacity-75" : "";
8044
+ return highlightedRow?.(entity) ? "bg-surface-100 bg-opacity-75 dark:bg-surface-800 dark:bg-opacity-75" : "";
8045
8045
  }, [highlightedRow]),
8046
8046
  className: "flex-grow",
8047
8047
  emptyComponent,
@@ -8341,7 +8341,7 @@ const EntityCollectionTable = function EntityCollectionTable2({
8341
8341
  {
8342
8342
  ref,
8343
8343
  style,
8344
- className: cls("h-full w-full flex flex-col bg-white dark:bg-gray-950", className),
8344
+ className: cls("h-full w-full flex flex-col bg-white dark:bg-surface-950", className),
8345
8345
  children: [
8346
8346
  /* @__PURE__ */ jsx(
8347
8347
  CollectionTableToolbar,
@@ -9158,7 +9158,7 @@ function ReferenceSelectionTable({
9158
9158
  {
9159
9159
  size: "small",
9160
9160
  collectionOrView: collection,
9161
- className: "text-gray-300 dark:text-gray-600"
9161
+ className: "text-surface-300 dark:text-surface-600"
9162
9162
  }
9163
9163
  ),
9164
9164
  collection.singularName ? `Select ${collection.singularName}` : `Select from ${collection.name}`
@@ -9258,7 +9258,7 @@ function NavigationGroup({
9258
9258
  ExpandablePanel,
9259
9259
  {
9260
9260
  invisible: true,
9261
- titleClassName: "font-medium text-sm text-gray-600 dark:text-gray-400",
9261
+ titleClassName: "font-medium text-sm text-surface-600 dark:text-surface-400",
9262
9262
  innerClassName: "py-4",
9263
9263
  initiallyExpanded: !(userConfigurationPersistence?.collapsedGroups ?? []).includes(group ?? "ungrouped"),
9264
9264
  onExpandedChange: (expanded) => {
@@ -9306,7 +9306,7 @@ function NavigationCard({
9306
9306
  /* @__PURE__ */ jsxs(
9307
9307
  "div",
9308
9308
  {
9309
- className: "h-10 flex items-center w-full justify-between text-gray-300 dark:text-gray-600",
9309
+ className: "h-10 flex items-center w-full justify-between text-surface-300 dark:text-surface-600",
9310
9310
  children: [
9311
9311
  icon,
9312
9312
  /* @__PURE__ */ jsx(
@@ -9426,7 +9426,7 @@ function NavigationCardBinding({
9426
9426
  StarBorderIcon,
9427
9427
  {
9428
9428
  size: 18,
9429
- className: "text-gray-400 dark:text-gray-500"
9429
+ className: "text-surface-400 dark:text-surface-500"
9430
9430
  }
9431
9431
  )
9432
9432
  },
@@ -9515,7 +9515,7 @@ function NavigationChip({ entry }) {
9515
9515
  {
9516
9516
  onClick: onIconClick,
9517
9517
  size: 18,
9518
- className: "text-gray-400 dark:text-gray-500"
9518
+ className: "text-surface-400 dark:text-surface-500"
9519
9519
  }
9520
9520
  ),
9521
9521
  children: entry.name
@@ -10754,7 +10754,7 @@ function EntityEditViewInner({
10754
10754
  pluginActions.length > 0 && /* @__PURE__ */ jsx(
10755
10755
  "div",
10756
10756
  {
10757
- className: cls("w-full flex justify-end items-center sticky top-0 right-0 left-0 z-10 bg-opacity-60 bg-slate-200 dark:bg-opacity-60 dark:bg-slate-800 backdrop-blur-md"),
10757
+ className: cls("w-full flex justify-end items-center sticky top-0 right-0 left-0 z-10 bg-opacity-60 bg-surface-accent-200 dark:bg-opacity-60 dark:bg-surface-accent-800 backdrop-blur-md"),
10758
10758
  children: pluginActions
10759
10759
  }
10760
10760
  ),
@@ -10879,7 +10879,7 @@ function EntityEditViewInner({
10879
10879
  /* @__PURE__ */ jsxs(
10880
10880
  "div",
10881
10881
  {
10882
- className: cls(defaultBorderMixin, "no-scrollbar h-16 border-b pl-2 pr-2 pt-1 flex items-end overflow-scroll bg-gray-50 dark:bg-gray-950"),
10882
+ className: cls(defaultBorderMixin, "no-scrollbar h-16 border-b pl-2 pr-2 pt-1 flex items-end overflow-scroll bg-surface-50 dark:bg-surface-950"),
10883
10883
  children: [
10884
10884
  /* @__PURE__ */ jsx(
10885
10885
  "div",
@@ -11249,7 +11249,7 @@ function PopupFormFieldInternal({
11249
11249
  const form = /* @__PURE__ */ jsxs(
11250
11250
  "div",
11251
11251
  {
11252
- className: `text-gray-900 dark:text-white overflow-auto rounded rounded-md bg-white dark:bg-gray-950 ${!open ? "hidden" : ""} cursor-grab max-w-[100vw]`,
11252
+ className: `text-surface-900 dark:text-white overflow-auto rounded rounded-md bg-white dark:bg-surface-950 ${!open ? "hidden" : ""} cursor-grab max-w-[100vw]`,
11253
11253
  children: [
11254
11254
  internalForm,
11255
11255
  savingError && /* @__PURE__ */ jsx(Typography, { color: "error", children: savingError.message })
@@ -11262,7 +11262,7 @@ function PopupFormFieldInternal({
11262
11262
  style: {
11263
11263
  boxShadow: "0 0 0 2px rgba(128,128,128,0.2)"
11264
11264
  },
11265
- className: `inline-block fixed z-20 shadow-outline rounded-md bg-white dark:bg-gray-950 ${!open ? "invisible" : "visible"} cursor-grab overflow-visible`,
11265
+ className: `inline-block fixed z-20 shadow-outline rounded-md bg-white dark:bg-surface-950 ${!open ? "invisible" : "visible"} cursor-grab overflow-visible`,
11266
11266
  ref: draggableRef,
11267
11267
  children: [
11268
11268
  /* @__PURE__ */ jsx(ElementResizeListener, { onResize: adaptResize }),
@@ -11275,7 +11275,7 @@ function PopupFormFieldInternal({
11275
11275
  /* @__PURE__ */ jsx(
11276
11276
  "div",
11277
11277
  {
11278
- className: "absolute -top-3.5 -right-3.5 bg-gray-500 rounded-full",
11278
+ className: "absolute -top-3.5 -right-3.5 bg-surface-500 rounded-full",
11279
11279
  style: {
11280
11280
  width: "32px",
11281
11281
  height: "32px"
@@ -11736,7 +11736,7 @@ const EntityCollectionView = React__default.memo(
11736
11736
  }
11737
11737
  )
11738
11738
  ] }),
11739
- children: collection.description && /* @__PURE__ */ jsx("div", { className: "m-4 text-gray-900 dark:text-white", children: /* @__PURE__ */ jsx(Markdown, { source: collection.description }) })
11739
+ children: collection.description && /* @__PURE__ */ jsx("div", { className: "m-4 text-surface-900 dark:text-white", children: /* @__PURE__ */ jsx(Markdown, { source: collection.description }) })
11740
11740
  }
11741
11741
  );
11742
11742
  const buildAdditionalHeaderWidget = useCallback(({
@@ -11978,7 +11978,7 @@ function EntityIdHeaderWidget({
11978
11978
  align: "start",
11979
11979
  alignOffset: -117,
11980
11980
  trigger: /* @__PURE__ */ jsx(IconButton, { size: "small", children: /* @__PURE__ */ jsx(SearchIcon, { size: "small" }) }),
11981
- children: /* @__PURE__ */ jsxs("div", { className: cls("my-2 rounded-lg bg-gray-50 dark:bg-gray-950 text-gray-900 dark:text-white"), children: [
11981
+ children: /* @__PURE__ */ jsxs("div", { className: cls("my-2 rounded-lg bg-surface-50 dark:bg-surface-950 text-surface-900 dark:text-white"), children: [
11982
11982
  /* @__PURE__ */ jsx(
11983
11983
  "form",
11984
11984
  {
@@ -12006,7 +12006,7 @@ function EntityIdHeaderWidget({
12006
12006
  setSearchString(e.target.value);
12007
12007
  },
12008
12008
  value: searchString,
12009
- className: "rounded-lg bg-white dark:bg-gray-800 flex-grow bg-transparent outline-none p-2 " + focusedDisabled
12009
+ className: "rounded-lg bg-white dark:bg-surface-800 flex-grow bg-transparent outline-none p-2 " + focusedDisabled
12010
12010
  }
12011
12011
  ),
12012
12012
  /* @__PURE__ */ jsx(
@@ -12048,7 +12048,7 @@ function PropertyConfigBadge({
12048
12048
  propertyConfig,
12049
12049
  disabled
12050
12050
  }) {
12051
- const classes = "h-8 w-8 p-1 rounded-full shadow text-white " + (disabled ? "bg-gray-400 dark:bg-gray-600" : "");
12051
+ const classes = "h-8 w-8 p-1 rounded-full shadow text-white " + (disabled ? "bg-surface-400 dark:bg-surface-600" : "");
12052
12052
  const defaultPropertyConfig = typeof propertyConfig?.property === "object" ? getDefaultFieldConfig(propertyConfig.property) : void 0;
12053
12053
  return /* @__PURE__ */ jsx(
12054
12054
  "div",
@@ -12578,7 +12578,7 @@ function ArrayContainerItem({
12578
12578
  ref: provided.innerRef,
12579
12579
  ...provided.draggableProps,
12580
12580
  style: provided.draggableProps.style,
12581
- className: `${!isDragging ? "hover:bg-slate-50 dark:hover:bg-gray-800 dark:hover:bg-opacity-20" : ""} rounded-md opacity-100`,
12581
+ className: `${!isDragging ? "hover:bg-surface-accent-50 dark:hover:bg-surface-800 dark:hover:bg-opacity-20" : ""} rounded-md opacity-100`,
12582
12582
  children: /* @__PURE__ */ jsxs(
12583
12583
  "div",
12584
12584
  {
@@ -13094,6 +13094,7 @@ function useBuildNavigationController(props) {
13094
13094
  const refreshNavigation = useCallback(async () => {
13095
13095
  if (authController.initialLoading)
13096
13096
  return;
13097
+ console.log("refresh", authController);
13097
13098
  console.debug("Refreshing navigation");
13098
13099
  try {
13099
13100
  const [resolvedCollections = [], resolvedViews, resolvedAdminViews = []] = await Promise.all(
@@ -13314,7 +13315,9 @@ async function resolveCollections(collections, collectionPermissions, authContro
13314
13315
  resolvedCollections = injectCollections(resolvedCollections ?? []);
13315
13316
  }
13316
13317
  resolvedCollections = applyPermissionsFunctionIfEmpty(resolvedCollections, collectionPermissions);
13318
+ console.log("resolvedCollections 2", resolvedCollections, collectionPermissions);
13317
13319
  resolvedCollections = filterOutNotAllowedCollections(resolvedCollections, authController);
13320
+ console.log("resolvedCollections 3", resolvedCollections, authController);
13318
13321
  return resolvedCollections;
13319
13322
  }
13320
13323
  async function resolveCMSViews(baseViews, authController, dataSource) {
@@ -13532,7 +13535,7 @@ function EmptyValue() {
13532
13535
  return /* @__PURE__ */ jsx(
13533
13536
  "div",
13534
13537
  {
13535
- className: "rounded-full bg-gray-200 bg-opacity-30 dark:bg-opacity-20 w-5 h-2 inline-block"
13538
+ className: "rounded-full bg-surface-200 bg-opacity-30 dark:bg-opacity-20 w-5 h-2 inline-block"
13536
13539
  }
13537
13540
  );
13538
13541
  }
@@ -13599,7 +13602,7 @@ function ImagePreview({
13599
13602
  children: /* @__PURE__ */ jsx(
13600
13603
  ContentCopyIcon,
13601
13604
  {
13602
- className: "text-gray-700 dark:text-gray-300",
13605
+ className: "text-surface-700 dark:text-surface-300",
13603
13606
  size: "smallest"
13604
13607
  }
13605
13608
  )
@@ -13621,7 +13624,7 @@ function ImagePreview({
13621
13624
  children: /* @__PURE__ */ jsx(
13622
13625
  OpenInNewIcon,
13623
13626
  {
13624
- className: "text-gray-700 dark:text-gray-300",
13627
+ className: "text-surface-700 dark:text-surface-300",
13625
13628
  size: "smallest"
13626
13629
  }
13627
13630
  )
@@ -13697,7 +13700,7 @@ function UrlComponentPreview({
13697
13700
  height: getThumbnailMeasure(size)
13698
13701
  },
13699
13702
  children: [
13700
- /* @__PURE__ */ jsx(DescriptionIcon, { className: "text-gray-700 dark:text-gray-300" }),
13703
+ /* @__PURE__ */ jsx(DescriptionIcon, { className: "text-surface-700 dark:text-surface-300" }),
13701
13704
  hint && /* @__PURE__ */ jsx(Tooltip, { title: hint, children: /* @__PURE__ */ jsx(
13702
13705
  Typography,
13703
13706
  {
@@ -15365,7 +15368,7 @@ function StorageItemPreview({
15365
15368
  !placeholder && !disabled && /* @__PURE__ */ jsx(
15366
15369
  "div",
15367
15370
  {
15368
- className: "absolute rounded-full -top-2 -right-2 z-10 bg-white dark:bg-gray-900",
15371
+ className: "absolute rounded-full -top-2 -right-2 z-10 bg-white dark:bg-surface-900",
15369
15372
  children: /* @__PURE__ */ jsx(
15370
15373
  Tooltip,
15371
15374
  {
@@ -15401,7 +15404,7 @@ function StorageItemPreview({
15401
15404
  {
15402
15405
  onClick: (e) => e.stopPropagation(),
15403
15406
  className: "flex flex-col items-center justify-center w-full h-full",
15404
- children: /* @__PURE__ */ jsx(DescriptionIcon, { className: "text-gray-700 dark:text-gray-300" })
15407
+ children: /* @__PURE__ */ jsx(DescriptionIcon, { className: "text-surface-700 dark:text-surface-300" })
15405
15408
  }
15406
15409
  )
15407
15410
  ] });
@@ -16111,7 +16114,7 @@ function ReferenceFieldBindingInternal({
16111
16114
  {
16112
16115
  className: cls(
16113
16116
  "px-6 h-16 text-sm font-medium flex items-center gap-6",
16114
- disabled || isSubmitting ? "text-slate-500" : "cursor-pointer text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-gray-800 group-hover:bg-slate-50 dark:group-hover:bg-gray-800"
16117
+ disabled || isSubmitting ? "text-surface-accent-500" : "cursor-pointer text-surface-accent-700 dark:text-surface-accent-300 hover:bg-surface-accent-50 dark:hover:bg-surface-800 group-hover:bg-surface-accent-50 dark:group-hover:bg-surface-800"
16115
16118
  ),
16116
16119
  onClick: onEntryClick,
16117
16120
  size: "medium",
@@ -16120,7 +16123,7 @@ function ReferenceFieldBindingInternal({
16120
16123
  IconForView,
16121
16124
  {
16122
16125
  collectionOrView: collection,
16123
- className: "text-gray-300 dark:text-gray-600"
16126
+ className: "text-surface-300 dark:text-surface-600"
16124
16127
  }
16125
16128
  ),
16126
16129
  `Edit ${property.name}`.toUpperCase()
@@ -16452,7 +16455,7 @@ function MapFieldBinding({
16452
16455
  expanded: expanded2
16453
16456
  });
16454
16457
  },
16455
- innerClassName: "px-2 md:px-4 pb-2 md:pb-4 pt-1 md:pt-2 bg-white dark:bg-gray-900",
16458
+ innerClassName: "px-2 md:px-4 pb-2 md:pb-4 pt-1 md:pt-2 bg-white dark:bg-surface-900",
16456
16459
  title,
16457
16460
  children: mapFormView
16458
16461
  }
@@ -17709,7 +17712,7 @@ const DEFAULT_FIELD_CONFIGS = {
17709
17712
  },
17710
17713
  multi_select: {
17711
17714
  key: "multi_select",
17712
- name: "Multi select",
17715
+ name: "Multi select (enum)",
17713
17716
  description: "Select multiple text values from within an enumeration",
17714
17717
  Icon: ListAltIcon,
17715
17718
  color: "#4223c9",
@@ -18483,7 +18486,7 @@ function SideDialogView({
18483
18486
  panel && /* @__PURE__ */ jsx(
18484
18487
  "div",
18485
18488
  {
18486
- className: "transform max-w-[100vw] lg:max-w-[95vw] flex flex-col h-full transition-all duration-250 ease-in-out bg-white dark:bg-gray-900 ",
18489
+ className: "transform max-w-[100vw] lg:max-w-[95vw] flex flex-col h-full transition-all duration-250 ease-in-out bg-white dark:bg-surface-900 ",
18487
18490
  style: {
18488
18491
  width: panel.width,
18489
18492
  transform: `translateX(-${offsetPosition * 200}px)`
@@ -19364,7 +19367,7 @@ const Scaffold = React__default.memo(
19364
19367
  }, children: /* @__PURE__ */ jsxs(
19365
19368
  "div",
19366
19369
  {
19367
- className: cls("flex h-screen w-screen bg-gray-50 dark:bg-gray-900 text-gray-900 dark:text-white overflow-hidden", className),
19370
+ className: cls("flex h-screen w-screen bg-surface-50 dark:bg-surface-900 text-surface-900 dark:text-white overflow-hidden", className),
19368
19371
  style: {
19369
19372
  paddingTop: "env(safe-area-inset-top)",
19370
19373
  paddingLeft: "env(safe-area-inset-left)",
@@ -19436,7 +19439,7 @@ function DrawerWrapper(props) {
19436
19439
  children: /* @__PURE__ */ jsx(
19437
19440
  "div",
19438
19441
  {
19439
- className: "ml-2 fixed top-1 left-2 sm:top-2 sm:left-3 !bg-gray-50 dark:!bg-gray-900 rounded-full w-fit z-20",
19442
+ className: "ml-2 fixed top-1 left-2 sm:top-2 sm:left-3 !bg-surface-50 dark:!bg-surface-900 rounded-full w-fit z-20",
19440
19443
  children: /* @__PURE__ */ jsx(
19441
19444
  IconButton,
19442
19445
  {
@@ -19526,7 +19529,7 @@ function DrawerNavigationItem({
19526
19529
  const iconWrap = /* @__PURE__ */ jsx(
19527
19530
  "div",
19528
19531
  {
19529
- className: "text-gray-600 dark:text-gray-500",
19532
+ className: "text-text-secondary dark:text-text-secondary-dark",
19530
19533
  children: icon
19531
19534
  }
19532
19535
  );
@@ -19540,13 +19543,13 @@ function DrawerNavigationItem({
19540
19543
  },
19541
19544
  className: ({ isActive }) => cls(
19542
19545
  "rounded-lg truncate",
19543
- "hover:bg-slate-300 hover:bg-opacity-75 dark:hover:bg-slate-800 dark:hover:bg-opacity-75 text-gray-800 dark:text-gray-200 hover:text-gray-900 hover:dark:text-white",
19546
+ "hover:bg-surface-accent-300 hover:bg-opacity-75 dark:hover:bg-surface-accent-800 dark:hover:bg-opacity-75 text-text-secondary dark:text-surface-200 hover:text-surface-900 hover:dark:text-white",
19544
19547
  "flex flex-row items-center mr-8",
19545
19548
  // "transition-all ease-in-out delay-100 duration-300",
19546
19549
  // drawerOpen ? "w-full" : "w-18",
19547
19550
  drawerOpen ? "pl-4 h-12" : "pl-4 h-11",
19548
19551
  "font-medium text-sm",
19549
- isActive ? "bg-slate-200 bg-opacity-60 dark:bg-gray-800 dark:bg-opacity-50" : ""
19552
+ isActive ? "bg-surface-accent-200 bg-opacity-60 dark:bg-surface-800 dark:bg-opacity-50" : ""
19550
19553
  ),
19551
19554
  to: url,
19552
19555
  children: [
@@ -19634,7 +19637,7 @@ function DefaultDrawer({
19634
19637
  children: groupsWithoutAdmin.map((group) => /* @__PURE__ */ jsxs(
19635
19638
  "div",
19636
19639
  {
19637
- className: "bg-gray-50 dark:bg-gray-800 dark:bg-opacity-30 my-4 rounded-lg ml-4",
19640
+ className: "bg-surface-50 dark:bg-surface-800 dark:bg-opacity-30 my-4 rounded-lg ml-4",
19638
19641
  children: [
19639
19642
  buildGroupHeader(group),
19640
19643
  Object.values(navigationEntries).filter((e) => e.group === group).map((view, index) => /* @__PURE__ */ jsx(
@@ -19666,7 +19669,7 @@ function DefaultDrawer({
19666
19669
  IconButton,
19667
19670
  {
19668
19671
  shape: "square",
19669
- className: "m-4 text-gray-900 dark:text-white w-fit",
19672
+ className: "m-4 text-surface-900 dark:text-white w-fit",
19670
19673
  children: [
19671
19674
  /* @__PURE__ */ jsx(
19672
19675
  Tooltip,