@acvl/frontend-components 0.0.89 → 0.0.90
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 +26 -9
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2243,11 +2243,8 @@ interface FieldProps {
|
|
|
2243
2243
|
*
|
|
2244
2244
|
* **La unicidad de `codigo` la garantiza el backend, no la grilla.** Un choque vuelve como un
|
|
2245
2245
|
* 400 con el error en `codigo`, y la edición en línea lo pinta sobre la celda
|
|
2246
|
-
* (`renderEditCellWithErrorTooltip` con `mutationErrors`); la ficha, sobre el campo.
|
|
2247
|
-
* `
|
|
2248
|
-
* panel de filtros la ofrezca como selector múltiple, con las opciones que sirve el
|
|
2249
|
-
* `como_opciones` de ese mismo endpoint, y filtre por `codigo__in`. Por eso el recurso también
|
|
2250
|
-
* tiene que servir `como_opciones`.
|
|
2246
|
+
* (`renderEditCellWithErrorTooltip` con `mutationErrors`); la ficha, sobre el campo. La columna
|
|
2247
|
+
* `codigo` del listado no es filtrable, así que el backend no tiene que atender `codigo__in`.
|
|
2251
2248
|
*
|
|
2252
2249
|
* Y lo que ya pide cualquier pantalla de la librería:
|
|
2253
2250
|
*
|
|
@@ -2259,6 +2256,14 @@ interface FieldProps {
|
|
|
2259
2256
|
* borrado que el servidor va a rechazar.
|
|
2260
2257
|
* - Guardar (POST o PATCH) contesta `{ detail, list }`: `manualCacheRefresh` copia `detail` en la
|
|
2261
2258
|
* caché del detalle y `list` en el renglón del listado, sin volver a pedirlos.
|
|
2259
|
+
*
|
|
2260
|
+
* Y lo que necesita quien lo referencie, aunque ni el listado ni la ficha lo consultan:
|
|
2261
|
+
*
|
|
2262
|
+
* - `como_opciones`, con `{ value, label }`. De ahí saca sus opciones cualquier selector que
|
|
2263
|
+
* liste el catálogo (`ControlledAutocomplete` con `queryArgs: { endpoint }`): el campo con el
|
|
2264
|
+
* que el formulario de otro modelo lo elige, o la columna que apunta a él en el panel de
|
|
2265
|
+
* filtros de otra grilla. Sin esto el catálogo se administra, pero no se puede elegir desde
|
|
2266
|
+
* ningún lado.
|
|
2262
2267
|
*/
|
|
2263
2268
|
interface DefinicionDeCatalogo {
|
|
2264
2269
|
/**
|
|
@@ -2363,10 +2368,11 @@ declare const crearFabricaDeCatalogos: <BaseQuery extends BaseQueryFn<string | F
|
|
|
2363
2368
|
* Un catálogo puede omitir alguna de las de la base con `ocultarColumnas` — quitar, nunca cambiar
|
|
2364
2369
|
* lo que hacen; ver `DefinicionDeCatalogo`.
|
|
2365
2370
|
*
|
|
2366
|
-
* `codigo`
|
|
2367
|
-
*
|
|
2368
|
-
*
|
|
2369
|
-
*
|
|
2371
|
+
* `codigo` **no es filtrable**. En el panel de filtros una columna de texto es un selector
|
|
2372
|
+
* múltiple que filtra por `<campo>__in`, y el contrato no le pide al backend `codigo__in`: donde
|
|
2373
|
+
* no lo atiende —django-filter ignora en silencio el parámetro que no conoce— el filtro se
|
|
2374
|
+
* ofrecía y no hacía nada. Tampoco valida la unicidad: eso lo hace el backend al guardar, y el
|
|
2375
|
+
* choque vuelve como el error que `renderEditCellWithErrorTooltip` pinta sobre la celda.
|
|
2370
2376
|
*/
|
|
2371
2377
|
declare const columnasDeCatalogo: (definicion: DefinicionDeCatalogo) => (props?: EditGridColumnsProps) => GridColDefPropsOverrides[];
|
|
2372
2378
|
|
|
@@ -2672,6 +2678,9 @@ interface CatalogoListProps {
|
|
|
2672
2678
|
* una pestaña hay que pasarla explícitamente: ahí `useLocation()` devuelve la ruta de la
|
|
2673
2679
|
* página contenedora, así que sin esto los renglones navegarían al detalle de la página que
|
|
2674
2680
|
* contiene las pestañas y todas ellas compartirían una sola llave de persistencia.
|
|
2681
|
+
*
|
|
2682
|
+
* No decide contra qué recurso se exporta: eso es siempre `definicion.endpoint` (ver
|
|
2683
|
+
* `CatalogoList`).
|
|
2675
2684
|
*/
|
|
2676
2685
|
pathname?: string;
|
|
2677
2686
|
/**
|
|
@@ -2700,6 +2709,14 @@ interface CatalogoListProps {
|
|
|
2700
2709
|
*
|
|
2701
2710
|
* El alta siempre está —sujeta al permiso de agregar—; la importación CSV sólo si se pasa
|
|
2702
2711
|
* `csvUpload`.
|
|
2712
|
+
*
|
|
2713
|
+
* **La exportación CSV va siempre contra `definicion.endpoint`.** `ExportCSV` exporta contra el
|
|
2714
|
+
* `csvProps.endpoint` que reciba y, sin él, contra la ruta de la página (`useLocation()`) —a
|
|
2715
|
+
* propósito no contra el `pathname` de la grilla, que también es llave de persistencia y no tiene
|
|
2716
|
+
* por qué ser una URL—. Pero la ruta es de la página, no del recurso: dentro de una pestaña es la
|
|
2717
|
+
* de la página que contiene las pestañas, y la descarga pedía algo que no es el catálogo. El
|
|
2718
|
+
* endpoint es el recurso esté donde esté montado el listado, así que se pasa siempre, igual como
|
|
2719
|
+
* página propia que como pestaña. Lo arma `dataGridPropsDeCatalogo`.
|
|
2703
2720
|
*/
|
|
2704
2721
|
declare const CatalogoList: ({ definicion, api, pathname, csvUpload }: CatalogoListProps) => react_jsx_runtime.JSX.Element;
|
|
2705
2722
|
|
package/package.json
CHANGED