fix/modo-lectura-activo-fijo
This commit is contained in:
@@ -5,7 +5,6 @@
|
|||||||
import type { Sector } from "./columns.js";
|
import type { Sector } from "./columns.js";
|
||||||
import CreateEditDialog from "./create-edit-dialog.svelte";
|
import CreateEditDialog from "./create-edit-dialog.svelte";
|
||||||
import DetailsDialog from "./details-dialog.svelte";
|
import DetailsDialog from "./details-dialog.svelte";
|
||||||
import DeleteDialog from "./delete-dialog.svelte";
|
|
||||||
|
|
||||||
let {
|
let {
|
||||||
item,
|
item,
|
||||||
@@ -17,7 +16,6 @@
|
|||||||
|
|
||||||
let showDetailsDialog = $state(false);
|
let showDetailsDialog = $state(false);
|
||||||
let showEditDialog = $state(false);
|
let showEditDialog = $state(false);
|
||||||
let showDeleteDialog = $state(false);
|
|
||||||
|
|
||||||
function handleCopyId() {
|
function handleCopyId() {
|
||||||
navigator.clipboard.writeText(item.key.toString());
|
navigator.clipboard.writeText(item.key.toString());
|
||||||
@@ -30,10 +28,6 @@
|
|||||||
function handleEdit() {
|
function handleEdit() {
|
||||||
showEditDialog = true;
|
showEditDialog = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleDelete() {
|
|
||||||
showDeleteDialog = true;
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<DropdownMenu.Root>
|
<DropdownMenu.Root>
|
||||||
@@ -55,12 +49,9 @@
|
|||||||
<DropdownMenu.Separator />
|
<DropdownMenu.Separator />
|
||||||
<DropdownMenu.Item onclick={handleViewDetails}>Ver detalles</DropdownMenu.Item>
|
<DropdownMenu.Item onclick={handleViewDetails}>Ver detalles</DropdownMenu.Item>
|
||||||
<DropdownMenu.Item onclick={handleEdit}>Editar</DropdownMenu.Item>
|
<DropdownMenu.Item onclick={handleEdit}>Editar</DropdownMenu.Item>
|
||||||
<DropdownMenu.Separator />
|
|
||||||
<DropdownMenu.Item class="text-destructive" onclick={handleDelete}>Eliminar</DropdownMenu.Item>
|
|
||||||
</DropdownMenu.Content>
|
</DropdownMenu.Content>
|
||||||
</DropdownMenu.Root>
|
</DropdownMenu.Root>
|
||||||
|
|
||||||
<!-- Dialogs -->
|
<!-- Dialogs -->
|
||||||
<DetailsDialog bind:open={showDetailsDialog} {item} />
|
<DetailsDialog bind:open={showDetailsDialog} {item} />
|
||||||
<CreateEditDialog bind:open={showEditDialog} item={item} {onSuccess} />
|
<CreateEditDialog bind:open={showEditDialog} item={item} {onSuccess} />
|
||||||
<DeleteDialog bind:open={showDeleteDialog} {item} {onSuccess} />
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ export type State = {
|
|||||||
ame_key?: string | null;
|
ame_key?: string | null;
|
||||||
};
|
};
|
||||||
|
|
||||||
export function createColumns(onSuccess?: () => void): ColumnDef<State>[] {
|
export function createColumns(onSuccess?: () => void, readOnly = false): ColumnDef<State>[] {
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
accessorKey: "m3_key",
|
accessorKey: "m3_key",
|
||||||
@@ -74,11 +74,11 @@ export function createColumns(onSuccess?: () => void): ColumnDef<State>[] {
|
|||||||
{
|
{
|
||||||
id: "actions",
|
id: "actions",
|
||||||
cell: ({ row }) => {
|
cell: ({ row }) => {
|
||||||
return renderComponent(DataTableActions, { item: row.original, onSuccess });
|
return renderComponent(DataTableActions, { item: row.original, onSuccess, readOnly });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mantener compatibilidad hacia atrás
|
// Mantener compatibilidad hacia atrás
|
||||||
export const columns = createColumns();
|
export const columns = createColumns(undefined, true);
|
||||||
|
|||||||
@@ -9,10 +9,12 @@
|
|||||||
|
|
||||||
let {
|
let {
|
||||||
item,
|
item,
|
||||||
onSuccess
|
onSuccess,
|
||||||
|
readOnly = false
|
||||||
}: {
|
}: {
|
||||||
item: State;
|
item: State;
|
||||||
onSuccess?: () => void;
|
onSuccess?: () => void;
|
||||||
|
readOnly?: boolean;
|
||||||
} = $props();
|
} = $props();
|
||||||
|
|
||||||
let showDetailsDialog = $state(false);
|
let showDetailsDialog = $state(false);
|
||||||
@@ -54,13 +56,17 @@
|
|||||||
</DropdownMenu.Group>
|
</DropdownMenu.Group>
|
||||||
<DropdownMenu.Separator />
|
<DropdownMenu.Separator />
|
||||||
<DropdownMenu.Item onclick={handleViewDetails}>Ver detalles</DropdownMenu.Item>
|
<DropdownMenu.Item onclick={handleViewDetails}>Ver detalles</DropdownMenu.Item>
|
||||||
<DropdownMenu.Item onclick={handleEdit}>Editar</DropdownMenu.Item>
|
{#if !readOnly}
|
||||||
<DropdownMenu.Separator />
|
<DropdownMenu.Item onclick={handleEdit}>Editar</DropdownMenu.Item>
|
||||||
<DropdownMenu.Item class="text-destructive" onclick={handleDelete}>Eliminar</DropdownMenu.Item>
|
<DropdownMenu.Separator />
|
||||||
|
<DropdownMenu.Item class="text-destructive" onclick={handleDelete}>Eliminar</DropdownMenu.Item>
|
||||||
|
{/if}
|
||||||
</DropdownMenu.Content>
|
</DropdownMenu.Content>
|
||||||
</DropdownMenu.Root>
|
</DropdownMenu.Root>
|
||||||
|
|
||||||
<!-- Dialogs -->
|
<!-- Dialogs -->
|
||||||
<DetailsDialog bind:open={showDetailsDialog} {item} />
|
<DetailsDialog bind:open={showDetailsDialog} {item} />
|
||||||
<CreateEditDialog bind:open={showEditDialog} item={item} {onSuccess} />
|
{#if !readOnly}
|
||||||
<DeleteDialog bind:open={showDeleteDialog} {item} {onSuccess} />
|
<CreateEditDialog bind:open={showEditDialog} item={item} {onSuccess} />
|
||||||
|
<DeleteDialog bind:open={showDeleteDialog} {item} {onSuccess} />
|
||||||
|
{/if}
|
||||||
|
|||||||
@@ -140,7 +140,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Crear columnas con el callback onSuccess
|
// Crear columnas con el callback onSuccess
|
||||||
const columns = createColumns(handleSuccess);
|
const columns = createColumns(handleSuccess, true);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="flex flex-col gap-6 p-6 h-[calc(100svh-4rem)] group-has-data-[collapsible=icon]/sidebar-wrapper:h-[calc(100svh-3rem)] overflow-hidden">
|
<div class="flex flex-col gap-6 p-6 h-[calc(100svh-4rem)] group-has-data-[collapsible=icon]/sidebar-wrapper:h-[calc(100svh-3rem)] overflow-hidden">
|
||||||
|
|||||||
Reference in New Issue
Block a user