@acvl/frontend-components 0.0.95 → 0.0.97
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/index.d.ts +109 -6
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2937,6 +2937,32 @@ interface SubsectionProps {
|
|
|
2937
2937
|
bgColor?: string;
|
|
2938
2938
|
title?: string;
|
|
2939
2939
|
description?: string;
|
|
2940
|
+
/**
|
|
2941
|
+
* Deja plegar la subsección desde su título: la flecha aparece a su izquierda y el renglón
|
|
2942
|
+
* entero se vuelve el interruptor.
|
|
2943
|
+
*
|
|
2944
|
+
* Apagado por defecto. Plegar es una decisión de la ficha —un bloque largo, o uno que casi
|
|
2945
|
+
* nunca se mira—, no una consecuencia de ponerle título: antes bastaba con titularla para
|
|
2946
|
+
* que apareciera la flecha, así que un clic distraído en el encabezado escondía campos que
|
|
2947
|
+
* nadie pidió esconder.
|
|
2948
|
+
*
|
|
2949
|
+
* Plegada mide sólo su encabezado, así que deja de estirarse a lo alto del renglón que
|
|
2950
|
+
* comparte con sus hermanas: el hueco que ocupaba se lo queda lo que siga.
|
|
2951
|
+
*
|
|
2952
|
+
* Sin `title` no hay de dónde plegar —la flecha vive en su renglón—, así que se ignora.
|
|
2953
|
+
* @default false
|
|
2954
|
+
*/
|
|
2955
|
+
collapsible?: boolean;
|
|
2956
|
+
/**
|
|
2957
|
+
* Arranca plegada. Sólo aplica con `collapsible` —si no, no habría flecha con que abrirla—.
|
|
2958
|
+
*
|
|
2959
|
+
* Es el arranque, no una orden: en cuanto el usuario la pliega o la despliega manda su
|
|
2960
|
+
* elección, que se recuerda mientras dure la sesión y para todas las fichas del mismo tipo
|
|
2961
|
+
* (ver `DetailFormProps.storageScope`). Así que esto es para lo que casi nunca se mira
|
|
2962
|
+
* —auditoría, totales de detalle— y no para esconder algo que el usuario va a necesitar.
|
|
2963
|
+
* @default false
|
|
2964
|
+
*/
|
|
2965
|
+
defaultCollapsed?: boolean;
|
|
2940
2966
|
first?: boolean;
|
|
2941
2967
|
slotProps?: {
|
|
2942
2968
|
/**
|
|
@@ -2945,8 +2971,9 @@ interface SubsectionProps {
|
|
|
2945
2971
|
* que un `{ xs: 12, md: 6 }` parte el formulario en dos columnas cuando *el formulario*
|
|
2946
2972
|
* es ancho, no cuando lo es la pantalla.
|
|
2947
2973
|
*
|
|
2948
|
-
* La subsección se estira a lo alto del renglón que comparte con sus hermanas
|
|
2949
|
-
* `alignSelf: "flex-start"` aquí la devuelve a
|
|
2974
|
+
* La subsección se estira a lo alto del renglón que comparte con sus hermanas —salvo
|
|
2975
|
+
* plegada, que mide su encabezado—; un `alignSelf: "flex-start"` aquí la devuelve a
|
|
2976
|
+
* medir solo lo que su contenido.
|
|
2950
2977
|
*/
|
|
2951
2978
|
parentGrid?: Partial<GridProps>;
|
|
2952
2979
|
};
|
|
@@ -2966,7 +2993,16 @@ interface SubsectionProps {
|
|
|
2966
2993
|
actions?: ReactNode | ((data: any) => ReactNode);
|
|
2967
2994
|
}
|
|
2968
2995
|
|
|
2969
|
-
|
|
2996
|
+
/**
|
|
2997
|
+
* Una sección de la ficha. Cuando hay más de una visible se vuelven pestañas, y el número de
|
|
2998
|
+
* cada una lo pone `DetailForm` por su orden entre las visibles —"1", "2", "3"—.
|
|
2999
|
+
*
|
|
3000
|
+
* De ahí que no lleve `value`: la posición en la lista ya es su identidad, y escribirlo a mano
|
|
3001
|
+
* era repetirla con otra letra. Repetida se desincroniza —una sección escondida dejaba huecos
|
|
3002
|
+
* ("1" y "3") y la ficha abría en una pestaña que no estaba; una sección nueva al principio
|
|
3003
|
+
* obligaba a renumerar a las de abajo—.
|
|
3004
|
+
*/
|
|
3005
|
+
interface SectionProps extends Partial<Omit<MyTab, "children" | "value">> {
|
|
2970
3006
|
pageType?: PageType;
|
|
2971
3007
|
display?: boolean;
|
|
2972
3008
|
subsections: SubsectionProps[];
|
|
@@ -3138,6 +3174,20 @@ interface DetailFormProps {
|
|
|
3138
3174
|
formId?: string;
|
|
3139
3175
|
/** Persist-tab key for multi-section forms. Defaults to `formId`. */
|
|
3140
3176
|
storageKey?: string;
|
|
3177
|
+
/**
|
|
3178
|
+
* Bajo qué nombre recuerda el formulario lo que el usuario acomoda en él: hoy, cuáles
|
|
3179
|
+
* subsecciones dejó plegadas (ver `SubsectionProps.collapsible`).
|
|
3180
|
+
*
|
|
3181
|
+
* Es a propósito más grueso que `storageKey`: este no lleva el registro, así que plegar una
|
|
3182
|
+
* subsección en un embarque la deja plegada en todos. `DetailPage_v2` lo arma solo, con su
|
|
3183
|
+
* ruta sin los parámetros.
|
|
3184
|
+
*
|
|
3185
|
+
* Sin esto no se recuerda nada —las subsecciones abren como diga `defaultCollapsed` y ya—.
|
|
3186
|
+
* Ese es el default en un cajón o un diálogo, donde el `formId` es generado (`useId`) y la
|
|
3187
|
+
* ruta es la del listado de atrás: ninguno de los dos nombra la ficha. Dales uno estable
|
|
3188
|
+
* aquí —`"/embarques/bultos"`— y sus subsecciones empiezan a recordar.
|
|
3189
|
+
*/
|
|
3190
|
+
storageScope?: string;
|
|
3141
3191
|
/** Height factor passed to the loading spinner. Defaults to `0.7`. */
|
|
3142
3192
|
loadingHeight?: number;
|
|
3143
3193
|
/**
|
|
@@ -3168,7 +3218,7 @@ interface DetailFormProps {
|
|
|
3168
3218
|
* element and the section/tab render tree — no page layout, no header buttons. Compose it
|
|
3169
3219
|
* inside a page, dialog or drawer shell that supplies the surrounding chrome.
|
|
3170
3220
|
*/
|
|
3171
|
-
declare function DetailForm({ controller, formId, storageKey, loadingHeight, responsiveTo, containerBreakpoints, slotProps, }: DetailFormProps): react_jsx_runtime.JSX.Element;
|
|
3221
|
+
declare function DetailForm({ controller, formId, storageKey, storageScope, loadingHeight, responsiveTo, containerBreakpoints, slotProps, }: DetailFormProps): react_jsx_runtime.JSX.Element;
|
|
3172
3222
|
|
|
3173
3223
|
/**
|
|
3174
3224
|
* An action the consumer hangs off a record's chrome — cerrar, revertir, descargar el PDF —
|
|
@@ -3793,6 +3843,20 @@ interface DetailFormDrawerProps {
|
|
|
3793
3843
|
* página. `display` y `onClick` reciben el registro cargado.
|
|
3794
3844
|
*/
|
|
3795
3845
|
extraButtons?: DetailExtraButton[];
|
|
3846
|
+
/**
|
|
3847
|
+
* El historial del registro, igual que en su página completa: se ofrece sólo cuando el
|
|
3848
|
+
* registro dice traerlo (`has_history`), abre el mismo panel y atiende el mismo
|
|
3849
|
+
* Ctrl+Shift+H.
|
|
3850
|
+
*
|
|
3851
|
+
* `endpoint` es obligatorio en la práctica aunque el tipo lo deje pasar: el panel lo
|
|
3852
|
+
* adivina de la ruta, y la ruta de un cajón es la del listado de atrás —`/embarques`, no
|
|
3853
|
+
* `/embarques/123`—, así que sin él pediría el historial del listado. Sin `endpoint` no
|
|
3854
|
+
* hay nada que ofrecer. `DrawerGrid_v2` lo arma solo con la ruta del registro.
|
|
3855
|
+
*
|
|
3856
|
+
* El panel hereda la colocación del cajón: acoplado si el cajón lo está, flotando si no
|
|
3857
|
+
* —ver `variant`—.
|
|
3858
|
+
*/
|
|
3859
|
+
historial?: DetailActionsProps["historial"];
|
|
3796
3860
|
/**
|
|
3797
3861
|
* Footer record navigator: prev/next arrows (Alt+↑ / Alt+↓) that step through a list of
|
|
3798
3862
|
* sibling records — e.g. the rows of the grid the drawer was opened from — without
|
|
@@ -3838,6 +3902,13 @@ interface DetailFormDrawerProps {
|
|
|
3838
3902
|
responsiveTo?: DetailFormProps["responsiveTo"];
|
|
3839
3903
|
/** @see DetailFormProps.containerBreakpoints */
|
|
3840
3904
|
containerBreakpoints?: DetailFormProps["containerBreakpoints"];
|
|
3905
|
+
/**
|
|
3906
|
+
* Enciende la memoria de las subsecciones plegadas, bajo este nombre. Aquí no hay default
|
|
3907
|
+
* que valga: el `formId` es generado y la ruta es la del listado de atrás, así que la
|
|
3908
|
+
* ficha tiene que nombrarse a mano —`"/embarques/bultos"`—.
|
|
3909
|
+
* @see DetailFormProps.storageScope
|
|
3910
|
+
*/
|
|
3911
|
+
storageScope?: DetailFormProps["storageScope"];
|
|
3841
3912
|
labels?: {
|
|
3842
3913
|
save?: string;
|
|
3843
3914
|
cancel?: string;
|
|
@@ -3889,7 +3960,7 @@ interface DetailFormDrawerProps {
|
|
|
3889
3960
|
* deja el registro en pantalla y editando — para formularios que se capturan de a poco o que
|
|
3890
3961
|
* llevan una grilla adentro.
|
|
3891
3962
|
*/
|
|
3892
|
-
declare function DetailFormDrawer({ open, onClose, title, api, form, sections, pageType, startInEdit, recordKey, permissionsPath, onSuccess, keepOpenOnSave, extraButtons, navigation, width, anchor, variant, resizable, minWidth, maxWidth, widthStorageKey, onWidthChange, responsiveTo, containerBreakpoints, labels, slots, slotProps, }: DetailFormDrawerProps): react_jsx_runtime.JSX.Element;
|
|
3963
|
+
declare function DetailFormDrawer({ open, onClose, title, api, form, sections, pageType, startInEdit, recordKey, permissionsPath, onSuccess, keepOpenOnSave, extraButtons, historial, navigation, width, anchor, variant, resizable, minWidth, maxWidth, widthStorageKey, onWidthChange, responsiveTo, containerBreakpoints, storageScope, labels, slots, slotProps, }: DetailFormDrawerProps): react_jsx_runtime.JSX.Element;
|
|
3893
3964
|
|
|
3894
3965
|
interface DrawerGridDrawerConfig {
|
|
3895
3966
|
/** Shared field layout, used by every mode. Same shape as `DetailPage_v2`'s `form`/`sections`. */
|
|
@@ -3971,6 +4042,19 @@ interface DrawerGridDrawerConfig {
|
|
|
3971
4042
|
* de abrirlo en su página.
|
|
3972
4043
|
*/
|
|
3973
4044
|
extraButtons?: DetailExtraButton[];
|
|
4045
|
+
/**
|
|
4046
|
+
* Afina el historial del registro en la cabecera del cajón — el ancho del panel, o la ruta
|
|
4047
|
+
* cuando no es la del registro. No hace falta declararlo para tenerlo: se ofrece solo en
|
|
4048
|
+
* cuanto el registro dice traerlo (`has_history`).
|
|
4049
|
+
*
|
|
4050
|
+
* La ruta sale sola de la del registro, la misma que abre "ver en página completa" — que es
|
|
4051
|
+
* de donde la saca también la página, del `pathname`. En una grilla con
|
|
4052
|
+
* `showOpenFullPage: false` no hay ruta de la que sacarla, así que ahí hay que darla a mano
|
|
4053
|
+
* o el historial no se ofrece.
|
|
4054
|
+
*
|
|
4055
|
+
* @see DetailFormDrawerProps.historial
|
|
4056
|
+
*/
|
|
4057
|
+
historial?: DetailFormDrawerProps["historial"];
|
|
3974
4058
|
/**
|
|
3975
4059
|
* El estado del registro, junto al título de la cabecera del cajón —igual que en su página
|
|
3976
4060
|
* completa—. `path` es la ruta al campo dentro del dato, que el backend manda como
|
|
@@ -4177,6 +4261,25 @@ interface DetailFormDialogProps {
|
|
|
4177
4261
|
responsiveTo?: DetailFormProps["responsiveTo"];
|
|
4178
4262
|
/** @see DetailFormProps.containerBreakpoints */
|
|
4179
4263
|
containerBreakpoints?: DetailFormProps["containerBreakpoints"];
|
|
4264
|
+
/**
|
|
4265
|
+
* Enciende la memoria de las subsecciones plegadas, bajo este nombre. Aquí no hay default
|
|
4266
|
+
* que valga: el `formId` es generado y la ruta es la del listado de atrás, así que la
|
|
4267
|
+
* ficha tiene que nombrarse a mano —`"/embarques/bultos"`—.
|
|
4268
|
+
* @see DetailFormProps.storageScope
|
|
4269
|
+
*/
|
|
4270
|
+
storageScope?: DetailFormProps["storageScope"];
|
|
4271
|
+
/**
|
|
4272
|
+
* El historial del registro, igual que en su página completa: un botón en el renglón del
|
|
4273
|
+
* título, con su Ctrl+Shift+H, que abre el mismo panel. Se ofrece sólo cuando el registro
|
|
4274
|
+
* dice traerlo (`has_history`).
|
|
4275
|
+
*
|
|
4276
|
+
* `endpoint` es obligatorio en la práctica aunque el tipo lo deje pasar: el panel lo adivina
|
|
4277
|
+
* de la ruta, y la ruta de un diálogo es la de la pantalla de atrás, no la del registro.
|
|
4278
|
+
*
|
|
4279
|
+
* El panel va flotando por fuerza: un diálogo es modal, y uno acoplado se pintaría en el
|
|
4280
|
+
* hueco del layout, o sea por debajo de su backdrop.
|
|
4281
|
+
*/
|
|
4282
|
+
historial?: DetailActionsProps["historial"];
|
|
4180
4283
|
labels?: {
|
|
4181
4284
|
save?: string;
|
|
4182
4285
|
cancel?: string;
|
|
@@ -4210,7 +4313,7 @@ interface DetailFormDialogProps {
|
|
|
4210
4313
|
* becomes a `DialogTitle` and the buttons move into `DialogActions`. The save button lives
|
|
4211
4314
|
* outside the `<form>` tree, so it submits via the native `form={formId}` attribute.
|
|
4212
4315
|
*/
|
|
4213
|
-
declare function DetailFormDialog({ open, onClose, title, api, form, sections, pageType, permissionsPath, onSuccess, responsiveTo, containerBreakpoints, labels, slots, slotProps, }: DetailFormDialogProps): react_jsx_runtime.JSX.Element;
|
|
4316
|
+
declare function DetailFormDialog({ open, onClose, title, api, form, sections, pageType, permissionsPath, onSuccess, responsiveTo, containerBreakpoints, storageScope, historial, labels, slots, slotProps, }: DetailFormDialogProps): react_jsx_runtime.JSX.Element;
|
|
4214
4317
|
|
|
4215
4318
|
/**
|
|
4216
4319
|
* Encabezado por defecto del `PageContainer`: resuelve título y breadcrumbs a
|
package/package.json
CHANGED