@dyrected/admin 2.5.35 → 2.5.38

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/admin.css CHANGED
@@ -1058,6 +1058,10 @@
1058
1058
  bottom: 0.75rem;
1059
1059
  }
1060
1060
 
1061
+ .dy-bottom-4{
1062
+ bottom: 1rem;
1063
+ }
1064
+
1061
1065
  .dy-left-0{
1062
1066
  left: 0px;
1063
1067
  }
@@ -1178,6 +1182,10 @@
1178
1182
  z-index: 100;
1179
1183
  }
1180
1184
 
1185
+ .dy-z-\[150\]{
1186
+ z-index: 150;
1187
+ }
1188
+
1181
1189
  .dy-order-1{
1182
1190
  order: 1;
1183
1191
  }
@@ -1480,6 +1488,10 @@
1480
1488
  height: 0.875rem;
1481
1489
  }
1482
1490
 
1491
+ .dy-h-32{
1492
+ height: 8rem;
1493
+ }
1494
+
1483
1495
  .dy-h-4{
1484
1496
  height: 1rem;
1485
1497
  }
@@ -1592,6 +1604,10 @@
1592
1604
  max-height: 10rem;
1593
1605
  }
1594
1606
 
1607
+ .dy-max-h-60{
1608
+ max-height: 15rem;
1609
+ }
1610
+
1595
1611
  .dy-max-h-80{
1596
1612
  max-height: 20rem;
1597
1613
  }
@@ -1604,6 +1620,10 @@
1604
1620
  max-height: 1000px;
1605
1621
  }
1606
1622
 
1623
+ .dy-max-h-\[200px\]{
1624
+ max-height: 200px;
1625
+ }
1626
+
1607
1627
  .dy-max-h-\[240px\]{
1608
1628
  max-height: 240px;
1609
1629
  }
@@ -1676,6 +1696,10 @@
1676
1696
  min-height: 180px;
1677
1697
  }
1678
1698
 
1699
+ .dy-min-h-\[200px\]{
1700
+ min-height: 200px;
1701
+ }
1702
+
1679
1703
  .dy-min-h-\[220px\]{
1680
1704
  min-height: 220px;
1681
1705
  }
@@ -1796,6 +1820,10 @@
1796
1820
  width: 2rem;
1797
1821
  }
1798
1822
 
1823
+ .dy-w-80{
1824
+ width: 20rem;
1825
+ }
1826
+
1799
1827
  .dy-w-9{
1800
1828
  width: 2.25rem;
1801
1829
  }
@@ -1824,6 +1852,10 @@
1824
1852
  width: 1px;
1825
1853
  }
1826
1854
 
1855
+ .dy-w-\[200px\]{
1856
+ width: 200px;
1857
+ }
1858
+
1827
1859
  .dy-w-\[220px\]{
1828
1860
  width: 220px;
1829
1861
  }
@@ -2108,6 +2140,10 @@
2108
2140
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2109
2141
  }
2110
2142
 
2143
+ .dy-transform{
2144
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2145
+ }
2146
+
2111
2147
  @keyframes dy-bounce{
2112
2148
 
2113
2149
  0%, 100%{
@@ -2187,6 +2223,10 @@
2187
2223
  resize: none;
2188
2224
  }
2189
2225
 
2226
+ .dy-resize-y{
2227
+ resize: vertical;
2228
+ }
2229
+
2190
2230
  .dy-list-inside{
2191
2231
  list-style-position: inside;
2192
2232
  }
@@ -2407,6 +2447,10 @@
2407
2447
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
2408
2448
  }
2409
2449
 
2450
+ .dy-divide-border > :not([hidden]) ~ :not([hidden]){
2451
+ border-color: hsl(var(--border));
2452
+ }
2453
+
2410
2454
  .dy-divide-border\/30 > :not([hidden]) ~ :not([hidden]){
2411
2455
  border-color: hsl(var(--border) / 0.3);
2412
2456
  }
@@ -2751,6 +2795,10 @@
2751
2795
  background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
2752
2796
  }
2753
2797
 
2798
+ .dy-bg-amber-500\/5{
2799
+ background-color: rgb(245 158 11 / 0.05);
2800
+ }
2801
+
2754
2802
  .dy-bg-background{
2755
2803
  background-color: hsl(var(--background));
2756
2804
  }
@@ -3161,6 +3209,11 @@
3161
3209
  padding-bottom: 0.375rem;
3162
3210
  }
3163
3211
 
3212
+ .dy-py-10{
3213
+ padding-top: 2.5rem;
3214
+ padding-bottom: 2.5rem;
3215
+ }
3216
+
3164
3217
  .dy-py-12{
3165
3218
  padding-top: 3rem;
3166
3219
  padding-bottom: 3rem;
@@ -3289,6 +3342,10 @@
3289
3342
  padding-top: 0px;
3290
3343
  }
3291
3344
 
3345
+ .dy-pt-0\.5{
3346
+ padding-top: 0.125rem;
3347
+ }
3348
+
3292
3349
  .dy-pt-2{
3293
3350
  padding-top: 0.5rem;
3294
3351
  }
@@ -3593,6 +3650,11 @@
3593
3650
  color: hsl(var(--foreground) / 0.9);
3594
3651
  }
3595
3652
 
3653
+ .dy-text-green-500{
3654
+ --tw-text-opacity: 1;
3655
+ color: rgb(34 197 94 / var(--tw-text-opacity, 1));
3656
+ }
3657
+
3596
3658
  .dy-text-muted-foreground{
3597
3659
  color: hsl(var(--muted-foreground));
3598
3660
  }
@@ -4179,6 +4241,75 @@
4179
4241
  pointer-events: none;
4180
4242
  }
4181
4243
 
4244
+ /* React Datasheet Grid custom design system variables integration */
4245
+
4246
+ .dy-admin-ui .dsg-container {
4247
+ --dsg-border-color: hsl(var(--border) / 0.8) !important;
4248
+ --dsg-selection-border-color: hsl(var(--intelligence)) !important;
4249
+ --dsg-selection-border-radius: var(--radius) !important;
4250
+ --dsg-selection-border-width: 2px !important;
4251
+ --dsg-selection-background-color: hsl(var(--intelligence) / 0.04) !important;
4252
+ --dsg-selection-disabled-border-color: hsl(var(--muted-foreground) / 0.5) !important;
4253
+ --dsg-selection-disabled-background-color: hsl(var(--muted) / 0.2) !important;
4254
+ --dsg-corner-indicator-width: 8px !important;
4255
+ --dsg-header-text-color: hsl(var(--muted-foreground)) !important;
4256
+ --dsg-header-active-text-color: hsl(var(--foreground)) !important;
4257
+ --dsg-cell-background-color: hsl(var(--card)) !important;
4258
+ --dsg-cell-disabled-background-color: hsl(var(--muted) / 0.1) !important;
4259
+ --dsg-transition-duration: .15s !important;
4260
+ --dsg-expand-rows-indicator-width: 10px !important;
4261
+ --dsg-scroll-shadow-width: 8px !important;
4262
+ --dsg-scroll-shadow-color: rgba(0, 0, 0, 0.08) !important;
4263
+ border: 1px solid var(--dsg-border-color);
4264
+ border-radius: var(--radius);
4265
+ overflow: hidden;
4266
+ box-shadow: none;
4267
+ font-family: var(--font-sans) !important;
4268
+ }
4269
+
4270
+ .dy-admin-ui .dsg-row-header,
4271
+ .dy-admin-ui .dsg-corner-header {
4272
+ background-color: hsl(var(--muted) / 0.3) !important;
4273
+ font-size: 11px;
4274
+ font-weight: 500;
4275
+ text-transform: uppercase;
4276
+ letter-spacing: 0.05em;
4277
+ }
4278
+
4279
+ .dy-admin-ui .dsg-cell {
4280
+ font-size: 13px !important;
4281
+ color: hsl(var(--foreground)) !important;
4282
+ }
4283
+
4284
+ .dy-admin-ui .dsg-input {
4285
+ font-family: var(--font-sans) !important;
4286
+ font-size: 13px !important;
4287
+ color: hsl(var(--foreground)) !important;
4288
+ padding: 0 8px !important;
4289
+ }
4290
+
4291
+ .dy-admin-ui .dsg-container {
4292
+ border: solid 1px hsl(var(--border) / 0.8) !important;
4293
+ border-top: none !important;
4294
+ border-left: none !important;
4295
+ cursor: cell !important;
4296
+ -webkit-user-select: none !important;
4297
+ -moz-user-select: none !important;
4298
+ user-select: none !important;
4299
+ box-sizing: border-box !important;
4300
+ color: hsl(var(--foreground)) !important;
4301
+ background: hsl(var(--card)) !important;
4302
+ position: relative !important;
4303
+ width: 100% !important;
4304
+ overflow: auto !important;
4305
+ will-change: transform !important;
4306
+ direction: ltr !important;
4307
+ }
4308
+
4309
+ .dy-admin-ui .dsg-container .dsg-add-row {
4310
+ background: hsl(var(--card)) !important;
4311
+ }
4312
+
4182
4313
  .dy-admin-ui .hover\:dy-text-primary:hover {
4183
4314
  color: hsl(var(--intelligence));
4184
4315
  }
@@ -4554,6 +4685,10 @@
4554
4685
  background-color: hsl(var(--accent) / 0.7);
4555
4686
  }
4556
4687
 
4688
+ .hover\:dy-bg-amber-500\/10:hover{
4689
+ background-color: rgb(245 158 11 / 0.1);
4690
+ }
4691
+
4557
4692
  .hover\:dy-bg-background:hover{
4558
4693
  background-color: hsl(var(--background));
4559
4694
  }
@@ -4849,6 +4984,10 @@
4849
4984
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4850
4985
  }
4851
4986
 
4987
+ .active\:dy-cursor-grabbing:active{
4988
+ cursor: grabbing;
4989
+ }
4990
+
4852
4991
  .active\:dy-bg-sidebar-accent:active{
4853
4992
  background-color: hsl(var(--sidebar-accent));
4854
4993
  }
@@ -0,0 +1,9 @@
1
+ import { CollectionConfig } from '@dyrected/core';
2
+ interface CsvImporterDialogProps {
3
+ open: boolean;
4
+ onOpenChange: (open: boolean) => void;
5
+ slug: string;
6
+ schema: CollectionConfig;
7
+ }
8
+ export declare function CsvImporterDialog({ open, onOpenChange, slug, schema }: CsvImporterDialogProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,8 @@
1
+ import { CollectionConfig } from '@dyrected/core';
2
+ interface CsvImporterProps {
3
+ slug: string;
4
+ schema: CollectionConfig;
5
+ onClose: () => void;
6
+ }
7
+ export declare function CsvImporter({ slug, schema, onClose }: CsvImporterProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -10,6 +10,7 @@ interface DataTableProps<TData, TValue> {
10
10
  toolbarActions?: React.ReactNode;
11
11
  persistenceKey?: string;
12
12
  initialColumnVisibility?: VisibilityState;
13
+ hideViewButton?: boolean;
13
14
  }
14
- export declare function DataTable<TData, TValue>({ columns, data, searchKey, rowSelection: externalRowSelection, onRowSelectionChange, bulkActions, toolbarActions, persistenceKey, initialColumnVisibility, }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
15
+ export declare function DataTable<TData, TValue>({ columns, data, searchKey, rowSelection: externalRowSelection, onRowSelectionChange, bulkActions, toolbarActions, persistenceKey, initialColumnVisibility, hideViewButton, }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
15
16
  export {};
@@ -3,4 +3,5 @@ import * as PopoverPrimitive from "@radix-ui/react-popover";
3
3
  declare const Popover: React.FC<PopoverPrimitive.PopoverProps>;
4
4
  declare const PopoverTrigger: React.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React.RefAttributes<HTMLButtonElement>>;
5
5
  declare const PopoverContent: React.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
6
- export { Popover, PopoverTrigger, PopoverContent };
6
+ declare const PopoverAnchor: React.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & React.RefAttributes<HTMLDivElement>>;
7
+ export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };
@@ -0,0 +1,10 @@
1
+ import { CollectionConfig } from '@dyrected/core';
2
+ interface SpreadsheetEditorProps {
3
+ slug: string;
4
+ schema: CollectionConfig;
5
+ data: Record<string, unknown>[];
6
+ onSave: (updates: Record<string, Record<string, unknown>>, creates?: Record<string, unknown>[]) => Promise<void>;
7
+ isSaving: boolean;
8
+ }
9
+ export declare function SpreadsheetEditor({ slug, schema, data, onSave, isSaving, }: SpreadsheetEditorProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,19 @@
1
+ export interface LayoutItem {
2
+ name: string;
3
+ width?: string;
4
+ }
5
+ interface UseLayoutPreferenceOptions<T> {
6
+ key: string;
7
+ defaultKeys: T[];
8
+ }
9
+ export declare function useLayoutPreference<T extends string | LayoutItem>({ key, defaultKeys }: UseLayoutPreferenceOptions<T>): {
10
+ layout: T[];
11
+ setLayout: import('react').Dispatch<import('react').SetStateAction<T[]>>;
12
+ reconciledLayout: T[];
13
+ saveLayout: (scope: "personal" | "global") => Promise<void>;
14
+ resetLayout: (scope: "personal" | "global") => Promise<void>;
15
+ isLoading: boolean;
16
+ isSaving: boolean;
17
+ isResetting: boolean;
18
+ };
19
+ export {};