@orbe-agro/client-core 5.6.118 → 5.6.119

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 (80) hide show
  1. package/dist/@types/base/@types/filters/index.d.ts +60 -0
  2. package/dist/@types/base/@types/filters/index.d.ts.map +1 -0
  3. package/dist/@types/base/@types/index.d.ts +1 -0
  4. package/dist/@types/base/@types/index.d.ts.map +1 -1
  5. package/dist/@types/base/components/filters/DynamicFilterField.d.ts +23 -0
  6. package/dist/@types/base/components/filters/DynamicFilterField.d.ts.map +1 -0
  7. package/dist/@types/base/components/filters/DynamicFilterPanel.d.ts +30 -0
  8. package/dist/@types/base/components/filters/DynamicFilterPanel.d.ts.map +1 -0
  9. package/dist/@types/base/components/filters/index.d.ts +3 -0
  10. package/dist/@types/base/components/filters/index.d.ts.map +1 -0
  11. package/dist/@types/base/components/index.d.ts +1 -0
  12. package/dist/@types/base/components/index.d.ts.map +1 -1
  13. package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts +4 -0
  14. package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts.map +1 -1
  15. package/dist/@types/base/configs/endpoints.config/centralNfe/config/nfe.d.ts +4 -0
  16. package/dist/@types/base/configs/endpoints.config/centralNfe/config/nfe.d.ts.map +1 -1
  17. package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +5 -0
  18. package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
  19. package/dist/@types/base/configs/endpoints.config/originacao/config/saldoTicket.d.ts +1 -0
  20. package/dist/@types/base/configs/endpoints.config/originacao/config/saldoTicket.d.ts.map +1 -1
  21. package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts +1 -0
  22. package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts.map +1 -1
  23. package/dist/@types/base/hooks/filters/useFilterMetadata.d.ts +26 -0
  24. package/dist/@types/base/hooks/filters/useFilterMetadata.d.ts.map +1 -0
  25. package/dist/@types/base/hooks/index.d.ts +1 -0
  26. package/dist/@types/base/hooks/index.d.ts.map +1 -1
  27. package/dist/@types/base/services/modules/centralNfe/nfe/NfeService.d.ts +1 -0
  28. package/dist/@types/base/services/modules/centralNfe/nfe/NfeService.d.ts.map +1 -1
  29. package/dist/@types/base/services/modules/originacao/saldoTicket/saldoTicketService.d.ts +2 -0
  30. package/dist/@types/base/services/modules/originacao/saldoTicket/saldoTicketService.d.ts.map +1 -1
  31. package/dist/@types/base/utils/filters/groupFilterFields.d.ts +15 -0
  32. package/dist/@types/base/utils/filters/groupFilterFields.d.ts.map +1 -0
  33. package/dist/@types/base/utils/index.d.ts +1 -0
  34. package/dist/@types/base/utils/index.d.ts.map +1 -1
  35. package/dist/base/@types/filters/index.js +2 -0
  36. package/dist/base/@types/filters/index.js.map +1 -0
  37. package/dist/base/@types/index.js +1 -0
  38. package/dist/base/@types/index.js.map +1 -1
  39. package/dist/base/components/filters/DynamicFilterField.js +156 -0
  40. package/dist/base/components/filters/DynamicFilterField.js.map +1 -0
  41. package/dist/base/components/filters/DynamicFilterPanel.js +19 -0
  42. package/dist/base/components/filters/DynamicFilterPanel.js.map +1 -0
  43. package/dist/base/components/filters/index.js +7 -0
  44. package/dist/base/components/filters/index.js.map +1 -0
  45. package/dist/base/components/index.js +11 -6
  46. package/dist/base/components/index.js.map +1 -1
  47. package/dist/base/configs/endpoints.config/centralNfe/config/nfe.js +1 -0
  48. package/dist/base/configs/endpoints.config/centralNfe/config/nfe.js.map +1 -1
  49. package/dist/base/configs/endpoints.config/originacao/config/saldoTicket.js +2 -1
  50. package/dist/base/configs/endpoints.config/originacao/config/saldoTicket.js.map +1 -1
  51. package/dist/base/hooks/filters/useFilterMetadata.js +23 -0
  52. package/dist/base/hooks/filters/useFilterMetadata.js.map +1 -0
  53. package/dist/base/hooks/index.js +2 -0
  54. package/dist/base/hooks/index.js.map +1 -1
  55. package/dist/base/index.js +230 -222
  56. package/dist/base/index.js.map +1 -1
  57. package/dist/base/services/modules/centralNfe/index.js +2 -1
  58. package/dist/base/services/modules/centralNfe/nfe/NfeService.js +7 -0
  59. package/dist/base/services/modules/centralNfe/nfe/NfeService.js.map +1 -1
  60. package/dist/base/services/modules/originacao/saldoTicket/saldoTicketService.js +7 -0
  61. package/dist/base/services/modules/originacao/saldoTicket/saldoTicketService.js.map +1 -1
  62. package/dist/base/utils/filters/groupFilterFields.js +56 -0
  63. package/dist/base/utils/filters/groupFilterFields.js.map +1 -0
  64. package/dist/base/utils/index.js +2 -0
  65. package/dist/base/utils/index.js.map +1 -1
  66. package/lib/base/@types/filters/index.ts +87 -0
  67. package/lib/base/@types/index.ts +1 -0
  68. package/lib/base/components/filters/DynamicFilterField.tsx +213 -0
  69. package/lib/base/components/filters/DynamicFilterPanel.tsx +50 -0
  70. package/lib/base/components/filters/index.ts +2 -0
  71. package/lib/base/components/index.ts +4 -1
  72. package/lib/base/configs/endpoints.config/centralNfe/config/nfe.ts +1 -0
  73. package/lib/base/configs/endpoints.config/originacao/config/saldoTicket.ts +2 -1
  74. package/lib/base/hooks/filters/useFilterMetadata.ts +43 -0
  75. package/lib/base/hooks/index.ts +2 -1
  76. package/lib/base/services/modules/centralNfe/nfe/NfeService.ts +8 -0
  77. package/lib/base/services/modules/originacao/saldoTicket/saldoTicketService.ts +8 -0
  78. package/lib/base/utils/filters/groupFilterFields.ts +93 -0
  79. package/lib/base/utils/index.ts +1 -0
  80. package/package.json +1 -1
@@ -0,0 +1,19 @@
1
+ import { jsx, Fragment } from "react/jsx-runtime";
2
+ import { useMemo } from "react";
3
+ import { groupFilterFields } from "../../utils/filters/groupFilterFields.js";
4
+ import DynamicFilterField from "./DynamicFilterField.js";
5
+ const DynamicFilterPanel = ({ fields, lookupRegistry }) => {
6
+ const renderItems = useMemo(() => groupFilterFields(fields), [fields]);
7
+ return /* @__PURE__ */ jsx(Fragment, { children: renderItems.map((item) => /* @__PURE__ */ jsx(
8
+ DynamicFilterField,
9
+ {
10
+ item,
11
+ lookupRegistry
12
+ },
13
+ item.kind === "range" ? `range__${item.rangeGroup}` : item.descriptor.field
14
+ )) });
15
+ };
16
+ export {
17
+ DynamicFilterPanel as default
18
+ };
19
+ //# sourceMappingURL=DynamicFilterPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DynamicFilterPanel.js","sources":["../../../../lib/base/components/filters/DynamicFilterPanel.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport type { IFilterFieldDescriptor, TLookupComponentRegistry } from '@base/@types/filters'\nimport { groupFilterFields } from '@base/utils/filters/groupFilterFields'\nimport DynamicFilterField from './DynamicFilterField'\n\ninterface DynamicFilterPanelProps {\n /** Metadados de filtros vindos do endpoint /filter-metadata */\n fields: IFilterFieldDescriptor[]\n /**\n * Mapa de resource → componente de lookup.\n * Definido pelo microfrontend consumidor — permite que cada app\n * registre os seus próprios componentes de async select.\n */\n lookupRegistry?: TLookupComponentRegistry\n}\n\n/**\n * Renderiza todos os campos de filtro dinamicamente a partir dos metadados do backend.\n *\n * - Agrupa automaticamente campos de range (mesmo rangeGroup + BETWEEN) em um DatePickerRange.\n * - Delega a renderização individual para DynamicFilterField.\n * - Deve ser usado DENTRO de um FormProvider.\n *\n * @example\n * <FormProvider {...methods}>\n * <DynamicFilterPanel\n * fields={metadataFields}\n * lookupRegistry={saldoTicketLookupRegistry}\n * />\n * </FormProvider>\n */\nconst DynamicFilterPanel: React.FC<DynamicFilterPanelProps> = ({ fields, lookupRegistry }) => {\n // groupFilterFields é uma função pura — o useMemo garante que o agrupamento\n // só recalcula quando `fields` muda (na prática, apenas uma vez por sessão)\n const renderItems = useMemo(() => groupFilterFields(fields), [fields])\n\n return (\n <>\n {renderItems.map((item) => (\n <DynamicFilterField\n key={item.kind === 'range' ? `range__${item.rangeGroup}` : item.descriptor.field}\n item={item}\n lookupRegistry={lookupRegistry}\n />\n ))}\n </>\n )\n}\n\nexport default DynamicFilterPanel\n"],"names":[],"mappings":";;;;AA+BA,MAAM,qBAAwD,CAAC,EAAE,QAAQ,qBAAqB;AAG1F,QAAM,cAAc,QAAQ,MAAM,kBAAkB,MAAM,GAAG,CAAC,MAAM,CAAC;AAErE,SACI,oBAAA,UAAA,EACK,UAAA,YAAY,IAAI,CAAC,SACd;AAAA,IAAC;AAAA,IAAA;AAAA,MAEG;AAAA,MACA;AAAA,IAAA;AAAA,IAFK,KAAK,SAAS,UAAU,UAAU,KAAK,UAAU,KAAK,KAAK,WAAW;AAAA,EAAA,CAIlF,GACL;AAER;"}
@@ -0,0 +1,7 @@
1
+ import { default as default2 } from "./DynamicFilterField.js";
2
+ import { default as default3 } from "./DynamicFilterPanel.js";
3
+ export {
4
+ default2 as DynamicFilterField,
5
+ default3 as DynamicFilterPanel
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -2,14 +2,19 @@ import "./routes/index.js";
2
2
  import "./table/index.js";
3
3
  import "./tools/index.js";
4
4
  import "./views/index.js";
5
+ import "./filters/index.js";
6
+ import { default as default2 } from "./filters/DynamicFilterField.js";
7
+ import { default as default3 } from "./filters/DynamicFilterPanel.js";
5
8
  import { ListColumn } from "./table/ListColumn.js";
6
- import { default as default2 } from "./tools/NavFilter.js";
7
- import { default as default3 } from "./routes/RoutesBase.js";
8
- import { default as default4 } from "./views/ViewsBase.js";
9
+ import { default as default4 } from "./tools/NavFilter.js";
10
+ import { default as default5 } from "./routes/RoutesBase.js";
11
+ import { default as default6 } from "./views/ViewsBase.js";
9
12
  export {
13
+ default2 as DynamicFilterField,
14
+ default3 as DynamicFilterPanel,
10
15
  ListColumn,
11
- default2 as NavFilter,
12
- default3 as RoutesBase,
13
- default4 as ViewsBase
16
+ default4 as NavFilter,
17
+ default5 as RoutesBase,
18
+ default6 as ViewsBase
14
19
  };
15
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -10,6 +10,7 @@ const nfe = {
10
10
  desvincularOrdemCompra: { endpoint: `${NFE_BASE_URL}/desvincular-ordem-compra`, httpMethod: "post" },
11
11
  estornarPedidoCompra: { endpoint: `${NFE_BASE_URL}/estornar-pedido-compra/{numeroPedido}`, httpMethod: "post" },
12
12
  estornarOperacao: { endpoint: `${NFE_BASE_URL}/estornar-operacao?id={id}`, httpMethod: "post" },
13
+ finalizarPedido: { endpoint: `${NFE_BASE_URL}/finalizar-pedido/{numeroPedido}`, httpMethod: "post" },
13
14
  lock: { endpoint: `${NFE_BASE_URL}/lock`, httpMethod: "post" }
14
15
  };
15
16
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"nfe.js","sources":["../../../../../../lib/base/configs/endpoints.config/centralNfe/config/nfe.ts"],"sourcesContent":["const NFE_BASE_URL = '/central-nfe/api/nfe'\n\nconst nfe = {\n findMonitor: { endpoint: `${NFE_BASE_URL}/find-monitor`, httpMethod: 'post' },\n findOne: { endpoint: NFE_BASE_URL, httpMethod: 'get' },\n update: { endpoint: NFE_BASE_URL, httpMethod: 'patch' },\n count: { endpoint: `${NFE_BASE_URL}/count`, httpMethod: 'post' },\n downloadPdfByChaveAcesso: { endpoint: `${NFE_BASE_URL}/download-pdf`, httpMethod: 'get' },\n validacaoImposto: { endpoint: `${NFE_BASE_URL}/{id}/{numeroPedido}/validacao-imposto`, httpMethod: 'post' },\n addLancamentoManual: { endpoint: `${NFE_BASE_URL}/add/lancamento-manual`, httpMethod: 'patch' },\n desvincularOrdemCompra: { endpoint: `${NFE_BASE_URL}/desvincular-ordem-compra`, httpMethod: 'post' },\n estornarPedidoCompra: { endpoint: `${NFE_BASE_URL}/estornar-pedido-compra/{numeroPedido}`, httpMethod: 'post' },\n estornarOperacao: { endpoint: `${NFE_BASE_URL}/estornar-operacao?id={id}`, httpMethod: 'post' },\n lock: { endpoint: `${NFE_BASE_URL}/lock`, httpMethod: 'post' },\n}\n\nexport default nfe"],"names":[],"mappings":"AAAA,MAAM,eAAe;AAErB,MAAM,MAAM;AAAA,EACR,aAAa,EAAE,UAAU,GAAG,YAAY,iBAAiB,YAAY,OAAA;AAAA,EACrE,SAAS,EAAE,UAAU,cAAc,YAAY,MAAA;AAAA,EAC/C,QAAQ,EAAE,UAAU,cAAc,YAAY,QAAA;AAAA,EAC9C,OAAO,EAAE,UAAU,GAAG,YAAY,UAAU,YAAY,OAAA;AAAA,EACxD,0BAA0B,EAAE,UAAU,GAAG,YAAY,iBAAiB,YAAY,MAAA;AAAA,EAClF,kBAAkB,EAAE,UAAU,GAAG,YAAY,0CAA0C,YAAY,OAAA;AAAA,EACnG,qBAAqB,EAAE,UAAU,GAAG,YAAY,0BAA0B,YAAY,QAAA;AAAA,EACtF,wBAAwB,EAAE,UAAU,GAAG,YAAY,6BAA6B,YAAY,OAAA;AAAA,EAC5F,sBAAsB,EAAE,UAAU,GAAG,YAAY,0CAA0C,YAAY,OAAA;AAAA,EACvG,kBAAkB,EAAE,UAAU,GAAG,YAAY,8BAA8B,YAAY,OAAA;AAAA,EACvF,MAAM,EAAE,UAAU,GAAG,YAAY,SAAS,YAAY,OAAA;AAC1D;"}
1
+ {"version":3,"file":"nfe.js","sources":["../../../../../../lib/base/configs/endpoints.config/centralNfe/config/nfe.ts"],"sourcesContent":["const NFE_BASE_URL = '/central-nfe/api/nfe'\n\nconst nfe = {\n findMonitor: { endpoint: `${NFE_BASE_URL}/find-monitor`, httpMethod: 'post' },\n findOne: { endpoint: NFE_BASE_URL, httpMethod: 'get' },\n update: { endpoint: NFE_BASE_URL, httpMethod: 'patch' },\n count: { endpoint: `${NFE_BASE_URL}/count`, httpMethod: 'post' },\n downloadPdfByChaveAcesso: { endpoint: `${NFE_BASE_URL}/download-pdf`, httpMethod: 'get' },\n validacaoImposto: { endpoint: `${NFE_BASE_URL}/{id}/{numeroPedido}/validacao-imposto`, httpMethod: 'post' },\n addLancamentoManual: { endpoint: `${NFE_BASE_URL}/add/lancamento-manual`, httpMethod: 'patch' },\n desvincularOrdemCompra: { endpoint: `${NFE_BASE_URL}/desvincular-ordem-compra`, httpMethod: 'post' },\n estornarPedidoCompra: { endpoint: `${NFE_BASE_URL}/estornar-pedido-compra/{numeroPedido}`, httpMethod: 'post' },\n estornarOperacao: { endpoint: `${NFE_BASE_URL}/estornar-operacao?id={id}`, httpMethod: 'post' },\n finalizarPedido: { endpoint: `${NFE_BASE_URL}/finalizar-pedido/{numeroPedido}`, httpMethod: 'post' },\n lock: { endpoint: `${NFE_BASE_URL}/lock`, httpMethod: 'post' },\n}\n\nexport default nfe"],"names":[],"mappings":"AAAA,MAAM,eAAe;AAErB,MAAM,MAAM;AAAA,EACR,aAAa,EAAE,UAAU,GAAG,YAAY,iBAAiB,YAAY,OAAA;AAAA,EACrE,SAAS,EAAE,UAAU,cAAc,YAAY,MAAA;AAAA,EAC/C,QAAQ,EAAE,UAAU,cAAc,YAAY,QAAA;AAAA,EAC9C,OAAO,EAAE,UAAU,GAAG,YAAY,UAAU,YAAY,OAAA;AAAA,EACxD,0BAA0B,EAAE,UAAU,GAAG,YAAY,iBAAiB,YAAY,MAAA;AAAA,EAClF,kBAAkB,EAAE,UAAU,GAAG,YAAY,0CAA0C,YAAY,OAAA;AAAA,EACnG,qBAAqB,EAAE,UAAU,GAAG,YAAY,0BAA0B,YAAY,QAAA;AAAA,EACtF,wBAAwB,EAAE,UAAU,GAAG,YAAY,6BAA6B,YAAY,OAAA;AAAA,EAC5F,sBAAsB,EAAE,UAAU,GAAG,YAAY,0CAA0C,YAAY,OAAA;AAAA,EACvG,kBAAkB,EAAE,UAAU,GAAG,YAAY,8BAA8B,YAAY,OAAA;AAAA,EACvF,iBAAiB,EAAE,UAAU,GAAG,YAAY,oCAAoC,YAAY,OAAA;AAAA,EAC5F,MAAM,EAAE,UAAU,GAAG,YAAY,SAAS,YAAY,OAAA;AAC1D;"}
@@ -4,7 +4,8 @@ const saldoTicket = {
4
4
  historicoById: (id, params) => `/originacao/api/saldo-ticket/${id}/historicos?${params ?? ""}`,
5
5
  buscarSaldoDisponivel: "/originacao/api/saldo-ticket/saldo-disponivel",
6
6
  findAllMetrics: (params) => `/originacao/api/saldo-ticket/metrics?${params ?? ""}`,
7
- updateStatus: (id) => `/originacao/api/saldo-ticket/${id}/forcar-status-saldo`
7
+ updateStatus: (id) => `/originacao/api/saldo-ticket/${id}/forcar-status-saldo`,
8
+ filterMetadata: "/originacao/api/saldo-ticket/filter-metadata"
8
9
  };
9
10
  export {
10
11
  saldoTicket as default
@@ -1 +1 @@
1
- {"version":3,"file":"saldoTicket.js","sources":["../../../../../../lib/base/configs/endpoints.config/originacao/config/saldoTicket.ts"],"sourcesContent":["const saldoTicket = {\n buscarSaldoContrato: (id: string) => `/originacao/api/saldo-ticket/contrato/${id}`,\n findAll: (params?: string) => `/originacao/api/saldo-ticket?${params ?? \"\"}`,\n historicoById: (id: string, params?: string) => `/originacao/api/saldo-ticket/${id}/historicos?${params ?? \"\"}`,\n buscarSaldoDisponivel: '/originacao/api/saldo-ticket/saldo-disponivel',\n findAllMetrics: (params?: string) => `/originacao/api/saldo-ticket/metrics?${params ?? \"\"}`,\n updateStatus: (id: string) => `/originacao/api/saldo-ticket/${id}/forcar-status-saldo`\n};\n\nexport default saldoTicket;"],"names":[],"mappings":"AAAA,MAAM,cAAc;AAAA,EAClB,qBAAqB,CAAC,OAAe,yCAAyC,EAAE;AAAA,EAChF,SAAS,CAAC,WAAoB,gCAAgC,UAAU,EAAE;AAAA,EAC1E,eAAe,CAAC,IAAY,WAAoB,gCAAgC,EAAE,eAAe,UAAU,EAAE;AAAA,EAC7G,uBAAuB;AAAA,EACvB,gBAAgB,CAAC,WAAoB,wCAAwC,UAAU,EAAE;AAAA,EACzF,cAAc,CAAC,OAAe,gCAAgC,EAAE;AAClE;"}
1
+ {"version":3,"file":"saldoTicket.js","sources":["../../../../../../lib/base/configs/endpoints.config/originacao/config/saldoTicket.ts"],"sourcesContent":["const saldoTicket = {\n buscarSaldoContrato: (id: string) => `/originacao/api/saldo-ticket/contrato/${id}`,\n findAll: (params?: string) => `/originacao/api/saldo-ticket?${params ?? \"\"}`,\n historicoById: (id: string, params?: string) => `/originacao/api/saldo-ticket/${id}/historicos?${params ?? \"\"}`,\n buscarSaldoDisponivel: '/originacao/api/saldo-ticket/saldo-disponivel',\n findAllMetrics: (params?: string) => `/originacao/api/saldo-ticket/metrics?${params ?? \"\"}`,\n updateStatus: (id: string) => `/originacao/api/saldo-ticket/${id}/forcar-status-saldo`,\n filterMetadata: '/originacao/api/saldo-ticket/filter-metadata',\n};\n\nexport default saldoTicket;"],"names":[],"mappings":"AAAA,MAAM,cAAc;AAAA,EAClB,qBAAqB,CAAC,OAAe,yCAAyC,EAAE;AAAA,EAChF,SAAS,CAAC,WAAoB,gCAAgC,UAAU,EAAE;AAAA,EAC1E,eAAe,CAAC,IAAY,WAAoB,gCAAgC,EAAE,eAAe,UAAU,EAAE;AAAA,EAC7G,uBAAuB;AAAA,EACvB,gBAAgB,CAAC,WAAoB,wCAAwC,UAAU,EAAE;AAAA,EACzF,cAAc,CAAC,OAAe,gCAAgC,EAAE;AAAA,EAChE,gBAAgB;AAClB;"}
@@ -0,0 +1,23 @@
1
+ import useSWR from "swr";
2
+ function useFilterMetadata(swrKey, fetcher) {
3
+ const { data, error, isLoading } = useSWR(
4
+ swrKey || null,
5
+ fetcher,
6
+ {
7
+ revalidateOnFocus: false,
8
+ revalidateOnReconnect: false,
9
+ revalidateIfStale: false,
10
+ dedupingInterval: 6e5
11
+ // 10 minutos — metadados são imutáveis por sessão
12
+ }
13
+ );
14
+ return {
15
+ fields: data ?? [],
16
+ isLoading,
17
+ error
18
+ };
19
+ }
20
+ export {
21
+ useFilterMetadata as default
22
+ };
23
+ //# sourceMappingURL=useFilterMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFilterMetadata.js","sources":["../../../../lib/base/hooks/filters/useFilterMetadata.ts"],"sourcesContent":["import useSWR from 'swr'\nimport type { IFilterFieldDescriptor } from '@base/@types/filters'\n\n/**\n * Busca e faz cache dos metadados de filtros de um endpoint específico.\n *\n * Usa configurações imutáveis de SWR: os dados são buscados uma única vez\n * por sessão e nunca revalidados automaticamente, pois metadados de filtro são\n * estruturais e não mudam durante o uso da aplicação.\n *\n * O `fetcher` deve ser a função de serviço correspondente ao endpoint,\n * garantindo que a chamada passe pelo ApiService (Axios + token de autenticação).\n *\n * @param swrKey - Chave única de cache SWR (ex: '/originacao/api/saldo-ticket/filter-metadata')\n * @param fetcher - Função que realiza a chamada à API e retorna IFilterFieldDescriptor[]\n *\n * @example\n * const { fields, isLoading, error } = useFilterMetadata(\n * '/originacao/api/saldo-ticket/filter-metadata',\n * apiFindSaldoFilterMetadata,\n * )\n */\nexport default function useFilterMetadata(\n swrKey: string,\n fetcher: () => Promise<IFilterFieldDescriptor[]>,\n) {\n const { data, error, isLoading } = useSWR<IFilterFieldDescriptor[]>(\n swrKey || null,\n fetcher,\n {\n revalidateOnFocus: false,\n revalidateOnReconnect: false,\n revalidateIfStale: false,\n dedupingInterval: 600_000, // 10 minutos — metadados são imutáveis por sessão\n }\n )\n\n return {\n fields: data ?? [],\n isLoading,\n error,\n }\n}\n"],"names":[],"mappings":";AAsBA,SAAwB,kBACpB,QACA,SACF;AACE,QAAM,EAAE,MAAM,OAAO,UAAA,IAAc;AAAA,IAC/B,UAAU;AAAA,IACV;AAAA,IACA;AAAA,MACI,mBAAmB;AAAA,MACnB,uBAAuB;AAAA,MACvB,mBAAmB;AAAA,MACnB,kBAAkB;AAAA;AAAA,IAAA;AAAA,EACtB;AAGJ,SAAO;AAAA,IACH,QAAQ,QAAQ,CAAA;AAAA,IAChB;AAAA,IACA;AAAA,EAAA;AAER;"}
@@ -77,6 +77,7 @@ import { default as default77 } from "./dm/produto/useFindProdutosByDepositoList
77
77
  import { default as default78 } from "./dm/businessPartner/useBusinessPartnerFindMonitorTransportadoraList.js";
78
78
  import { default as default79 } from "./sap/uniaoUtilizacaoLimiteCredito/useSapFindUniaoUtilizacaoLimiteCreditoByCliente.js";
79
79
  import { default as default80 } from "./crm/dadosUnificados/useDadosUnificadosList.js";
80
+ import { default as default81 } from "./filters/useFilterMetadata.js";
80
81
  export {
81
82
  default6 as useAreaById,
82
83
  default7 as useBusinessPartnerById,
@@ -110,6 +111,7 @@ export {
110
111
  default35 as useEquipeVendaListUseMulti,
111
112
  default36 as useEscritorioVendaByCodigoList,
112
113
  default37 as useEscritorioVendaList,
114
+ default81 as useFilterMetadata,
113
115
  default47 as useFindByCodigosProdutoList,
114
116
  default46 as useFindByIdsProdutoList,
115
117
  default40 as useFindFreteByUniqueList,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}