@orbe-agro/client-core 5.6.288 → 5.6.290
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/@ecme/components/template/Footer.js +1 -1
- package/dist/@types/base/@types/api/response/originacao/TRelatorioDinamicoResponse.d.ts +67 -0
- package/dist/@types/base/@types/api/response/originacao/TRelatorioDinamicoResponse.d.ts.map +1 -0
- package/dist/@types/base/@types/models/compras/Dashboard.d.ts +19 -18
- package/dist/@types/base/@types/models/compras/Dashboard.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/compras/compras.d.ts +4 -4
- package/dist/@types/base/configs/endpoints.config/compras/config/dashboard.d.ts +0 -4
- package/dist/@types/base/configs/endpoints.config/compras/config/dashboard.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/compras/config/requisicaoCompra.d.ts +4 -0
- package/dist/@types/base/configs/endpoints.config/compras/config/requisicaoCompra.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +13 -4
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/originacao/config/relatoriosDinamicos.d.ts +11 -0
- package/dist/@types/base/configs/endpoints.config/originacao/config/relatoriosDinamicos.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts +9 -0
- package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/originacao/relatoriosDinamicos/submenu.relatoriosDinamicos.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/originacao/relatoriosDinamicos/submenu.relatoriosDinamicos.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/originacao/relatorios.submenu.d.ts.map +1 -1
- package/dist/@types/base/services/modules/compras/dashboard/DashboardService.d.ts +1 -2
- package/dist/@types/base/services/modules/compras/dashboard/DashboardService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/compras/requisicaoCompra/RequisicaoCompraService.d.ts +2 -1
- package/dist/@types/base/services/modules/compras/requisicaoCompra/RequisicaoCompraService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/originacao/index.d.ts +1 -0
- package/dist/@types/base/services/modules/originacao/index.d.ts.map +1 -1
- package/dist/@types/base/services/modules/originacao/relatoriosDinamicos/relatoriosDinamicosService.d.ts +14 -0
- package/dist/@types/base/services/modules/originacao/relatoriosDinamicos/relatoriosDinamicosService.d.ts.map +1 -0
- package/dist/base/@types/api/response/originacao/TRelatorioDinamicoResponse.js +2 -0
- package/dist/base/@types/api/response/originacao/TRelatorioDinamicoResponse.js.map +1 -0
- package/dist/base/configs/endpoints.config/compras/config/dashboard.js +0 -1
- package/dist/base/configs/endpoints.config/compras/config/dashboard.js.map +1 -1
- package/dist/base/configs/endpoints.config/compras/config/requisicaoCompra.js +2 -1
- package/dist/base/configs/endpoints.config/compras/config/requisicaoCompra.js.map +1 -1
- package/dist/base/configs/endpoints.config/originacao/config/relatoriosDinamicos.js +14 -0
- package/dist/base/configs/endpoints.config/originacao/config/relatoriosDinamicos.js.map +1 -0
- package/dist/base/configs/endpoints.config/originacao/originacao.js +2 -0
- package/dist/base/configs/endpoints.config/originacao/originacao.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/originacao/relatoriosDinamicos/submenu.relatoriosDinamicos.js +15 -0
- package/dist/base/configs/navigation.config/modules.submenu/originacao/relatoriosDinamicos/submenu.relatoriosDinamicos.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/originacao/relatorios.submenu.js +3 -1
- package/dist/base/configs/navigation.config/submenu/originacao/relatorios.submenu.js.map +1 -1
- package/dist/base/index.js +12 -3
- package/dist/base/index.js.map +1 -1
- package/dist/base/services/index.js +12 -3
- package/dist/base/services/index.js.map +1 -1
- package/dist/base/services/modules/compras/dashboard/DashboardService.js +0 -8
- package/dist/base/services/modules/compras/dashboard/DashboardService.js.map +1 -1
- package/dist/base/services/modules/compras/index.js +3 -3
- package/dist/base/services/modules/compras/requisicaoCompra/RequisicaoCompraService.js +8 -0
- package/dist/base/services/modules/compras/requisicaoCompra/RequisicaoCompraService.js.map +1 -1
- package/dist/base/services/modules/index.js +12 -3
- package/dist/base/services/modules/index.js.map +1 -1
- package/dist/base/services/modules/originacao/index.js +9 -0
- package/dist/base/services/modules/originacao/index.js.map +1 -1
- package/dist/base/services/modules/originacao/relatoriosDinamicos/relatoriosDinamicosService.js +91 -0
- package/dist/base/services/modules/originacao/relatoriosDinamicos/relatoriosDinamicosService.js.map +1 -0
- package/lib/base/@types/api/response/originacao/TRelatorioDinamicoResponse.ts +74 -0
- package/lib/base/@types/models/compras/Dashboard.ts +19 -18
- package/lib/base/configs/endpoints.config/compras/config/dashboard.ts +0 -1
- package/lib/base/configs/endpoints.config/compras/config/requisicaoCompra.ts +2 -1
- package/lib/base/configs/endpoints.config/originacao/config/relatoriosDinamicos.ts +11 -0
- package/lib/base/configs/endpoints.config/originacao/originacao.ts +2 -0
- package/lib/base/configs/navigation.config/modules.submenu/originacao/relatoriosDinamicos/submenu.relatoriosDinamicos.ts +13 -0
- package/lib/base/configs/navigation.config/submenu/originacao/relatorios.submenu.ts +2 -0
- package/lib/base/services/modules/compras/dashboard/DashboardService.ts +1 -11
- package/lib/base/services/modules/compras/requisicaoCompra/RequisicaoCompraService.ts +10 -0
- package/lib/base/services/modules/originacao/index.ts +1 -0
- package/lib/base/services/modules/originacao/relatoriosDinamicos/relatoriosDinamicosService.ts +120 -0
- package/package.json +1 -1
|
@@ -95,40 +95,41 @@ export type TDashboardEvolucaoMensal = {
|
|
|
95
95
|
tempoMedioDiasUteis: number
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
export type TDashboardComprasDiretasPayload =
|
|
98
|
+
export type TDashboardComprasDiretasPayload = {
|
|
99
99
|
departamento?: string
|
|
100
|
-
|
|
101
|
-
|
|
100
|
+
dtInicial?: string
|
|
101
|
+
dtFinal?: string
|
|
102
|
+
usuario?: number
|
|
103
|
+
material?: number
|
|
102
104
|
}
|
|
103
105
|
|
|
104
106
|
export type TDashboardComprasDiretasUsuario = {
|
|
105
107
|
idUsuario: number
|
|
106
108
|
nomeUsuario: string
|
|
107
|
-
|
|
108
|
-
valorTotal: number
|
|
109
|
+
quantidadePedidos: number
|
|
110
|
+
valorTotal: number | string | null
|
|
109
111
|
}
|
|
110
112
|
|
|
111
113
|
export type TDashboardComprasDiretasDepartamento = {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
valorTotal: number
|
|
114
|
+
posicao: number
|
|
115
|
+
departamento: string
|
|
116
|
+
quantidadePedidos: number
|
|
117
|
+
valorTotal: number | string | null
|
|
116
118
|
}
|
|
117
119
|
|
|
118
120
|
export type TDashboardComprasDiretasMaterial = {
|
|
119
121
|
idMaterial: number
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
valorTotal: number
|
|
122
|
+
codigoMaterial: string
|
|
123
|
+
descricaoMaterial: string
|
|
124
|
+
quantidadePedidos: number
|
|
125
|
+
quantidadeTotal: number | string | null
|
|
125
126
|
}
|
|
126
127
|
|
|
127
128
|
export type TDashboardComprasDiretasResponse = {
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
valorTotalComprasDiretas: number | string | null
|
|
130
|
+
quantidadePedidosGerados: number
|
|
131
|
+
comprasPorUsuario: TDashboardComprasDiretasUsuario[]
|
|
132
|
+
rankingDepartamentos: TDashboardComprasDiretasDepartamento[]
|
|
132
133
|
materiaisMaisComprados: TDashboardComprasDiretasMaterial[]
|
|
133
134
|
}
|
|
134
135
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
const DASHBOARD_BASE_URL = '/compras/api/dashboard'
|
|
2
2
|
|
|
3
3
|
const dashboard = {
|
|
4
|
-
comprasDiretas: { endpoint: `${DASHBOARD_BASE_URL}/compras-diretas`, httpMethod: 'post' },
|
|
5
4
|
pedidosPendentes: { endpoint: `${DASHBOARD_BASE_URL}/pedidos-pendentes`, httpMethod: 'post' },
|
|
6
5
|
opcoesFiltro: { endpoint: `${DASHBOARD_BASE_URL}/opcoes-filtro`, httpMethod: 'get' },
|
|
7
6
|
}
|
|
@@ -11,7 +11,8 @@ const requisicaoCompra = {
|
|
|
11
11
|
adicionarObservacao: { endpoint: `${REQUISICAO_COMPRA_BASE_URL}/{id}/observacao`, httpMethod: 'post' },
|
|
12
12
|
lock: { endpoint: `${REQUISICAO_COMPRA_BASE_URL}/lock`, httpMethod: 'post' },
|
|
13
13
|
dashboard: { endpoint: `${REQUISICAO_COMPRA_BASE_URL}/dashboard`, httpMethod: 'post' },
|
|
14
|
-
dashboardRankings: { endpoint: `${REQUISICAO_COMPRA_BASE_URL}/dashboard/rankings`, httpMethod: 'post' }
|
|
14
|
+
dashboardRankings: { endpoint: `${REQUISICAO_COMPRA_BASE_URL}/dashboard/rankings`, httpMethod: 'post' },
|
|
15
|
+
dashboardComprasDiretas: { endpoint: `${REQUISICAO_COMPRA_BASE_URL}/dashboard/compras-diretas`, httpMethod: 'post' }
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
export default requisicaoCompra
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const root = '/originacao/api/relatorios-dinamicos'
|
|
2
|
+
const relatoriosDinamicos = {
|
|
3
|
+
catalogo: (base?: string) => `${root}/catalogo${base ? `?base=${encodeURIComponent(base)}` : ''}`,
|
|
4
|
+
findAll: (params?: string) => `${root}${params ? `?${params}` : ''}`,
|
|
5
|
+
add: root,
|
|
6
|
+
findOne: (id: number | string) => `${root}/${id}`,
|
|
7
|
+
editarCompartilhado: (id: number | string) => `${root}/${id}/compartilhado`,
|
|
8
|
+
consultar: (id: number | string) => `${root}/${id}/consultar`,
|
|
9
|
+
exportar: (id: number | string) => `${root}/${id}/exportar`,
|
|
10
|
+
}
|
|
11
|
+
export default relatoriosDinamicos
|
|
@@ -36,8 +36,10 @@ import tarefaLiquidacao from "./config/tarefaLiquidacao";
|
|
|
36
36
|
import campoFixo from "./config/campoFixo";
|
|
37
37
|
import relatorioAuditoriaMensal from "./config/relatorios/relatorioAuditoriaMensal";
|
|
38
38
|
import alteracaoTransgenia from "./config/alteracaoTransgenia";
|
|
39
|
+
import relatoriosDinamicos from "./config/relatoriosDinamicos";
|
|
39
40
|
|
|
40
41
|
const originacao = {
|
|
42
|
+
relatoriosDinamicos,
|
|
41
43
|
alteracaoTransgenia,
|
|
42
44
|
preContrato,
|
|
43
45
|
contrato,
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { NavigationTree } from '@/@types/navigation'
|
|
2
|
+
const subMenuRelatoriosDinamicos: NavigationTree = {
|
|
3
|
+
key: 'originacao.relatoriosDinamicos',
|
|
4
|
+
path: '/originacao/relatorios-dinamicos',
|
|
5
|
+
title: 'Relatórios dinâmicos',
|
|
6
|
+
translateKey: 'modules.originacao.relatoriosDinamicos.title',
|
|
7
|
+
icon: 'form',
|
|
8
|
+
type: 'item',
|
|
9
|
+
authority: [],
|
|
10
|
+
subMenu: [],
|
|
11
|
+
forceShowTitle: true,
|
|
12
|
+
}
|
|
13
|
+
export default subMenuRelatoriosDinamicos
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { NavigationTree } from "@/@types/navigation"
|
|
2
2
|
import relatorioAuditoriaMensalSubmenu from "./config/relatorioAuditoriaMensal.submenu"
|
|
3
|
+
import subMenuRelatoriosDinamicos from '../../modules.submenu/originacao/relatoriosDinamicos/submenu.relatoriosDinamicos'
|
|
3
4
|
|
|
4
5
|
const relatorioSubmenu: NavigationTree[] = [
|
|
5
6
|
relatorioAuditoriaMensalSubmenu,
|
|
7
|
+
subMenuRelatoriosDinamicos,
|
|
6
8
|
]
|
|
7
9
|
|
|
8
10
|
export default relatorioSubmenu
|
|
@@ -1,24 +1,14 @@
|
|
|
1
1
|
import ApiService from "@/services/ApiService";
|
|
2
2
|
import endpointConfig from "@base/configs/endpoints.config/endpoints.navigation";
|
|
3
3
|
import {
|
|
4
|
-
TDashboardComprasDiretasPayload,
|
|
5
|
-
TDashboardComprasDiretasResponse,
|
|
6
4
|
TDashboardOpcoesFiltro,
|
|
7
5
|
TDashboardPedidosPendentesPayload,
|
|
8
6
|
TDashboardPedidosPendentesResponse,
|
|
9
7
|
} from "@base/@types/models/compras/Dashboard";
|
|
10
8
|
|
|
11
|
-
//
|
|
9
|
+
// compras e requisições e compras diretas usam /requisicao-compra/dashboard/* (RequisicaoCompraService)
|
|
12
10
|
const DASHBOARD_ENDPOINT = endpointConfig.compras.dashboard;
|
|
13
11
|
|
|
14
|
-
export async function apiGetDashboardComprasDiretas(data: TDashboardComprasDiretasPayload) {
|
|
15
|
-
return ApiService.fetchDataWithAxios<TDashboardComprasDiretasResponse>({
|
|
16
|
-
url: DASHBOARD_ENDPOINT.comprasDiretas.endpoint,
|
|
17
|
-
method: DASHBOARD_ENDPOINT.comprasDiretas.httpMethod,
|
|
18
|
-
data,
|
|
19
|
-
})
|
|
20
|
-
}
|
|
21
|
-
|
|
22
12
|
export async function apiGetDashboardPedidosPendentes(data: TDashboardPedidosPendentesPayload) {
|
|
23
13
|
return ApiService.fetchDataWithAxios<TDashboardPedidosPendentesResponse>({
|
|
24
14
|
url: DASHBOARD_ENDPOINT.pedidosPendentes.endpoint,
|
|
@@ -3,6 +3,8 @@ import { IFilterParams, TQueryResponse } from "@base/@types/api";
|
|
|
3
3
|
import endpointConfig from "@base/configs/endpoints.config/endpoints.navigation";
|
|
4
4
|
import { TObservacaoRequisicaoCompra } from "@base/@types/models/compras/RequisicaoCompra";
|
|
5
5
|
import {
|
|
6
|
+
TDashboardComprasDiretasPayload,
|
|
7
|
+
TDashboardComprasDiretasResponse,
|
|
6
8
|
TDashboardRankingsPayload,
|
|
7
9
|
TDashboardRankingsResponse,
|
|
8
10
|
TDashboardRequisicaoCompraPayload,
|
|
@@ -94,4 +96,12 @@ export async function apiDashboardRankingsRequisicaoCompra(data: TDashboardRanki
|
|
|
94
96
|
method: REQUISICAO_COMPRA_ENDPOINT.dashboardRankings.httpMethod,
|
|
95
97
|
data
|
|
96
98
|
})
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export async function apiDashboardComprasDiretasRequisicaoCompra(data: TDashboardComprasDiretasPayload) {
|
|
102
|
+
return ApiService.fetchDataWithAxios<TDashboardComprasDiretasResponse>({
|
|
103
|
+
url: REQUISICAO_COMPRA_ENDPOINT.dashboardComprasDiretas.endpoint,
|
|
104
|
+
method: REQUISICAO_COMPRA_ENDPOINT.dashboardComprasDiretas.httpMethod,
|
|
105
|
+
data
|
|
106
|
+
})
|
|
97
107
|
}
|
|
@@ -21,3 +21,4 @@ export * from './vinculoOperacaoLiquidacao/vinculoOperacaoLiquidacaoService';
|
|
|
21
21
|
export * from './alteracaoTransgenia/alteracaoTransgeniaService';
|
|
22
22
|
export * from './tarefaLiquidacao/tarefaLiquidacaoService';
|
|
23
23
|
export * from './campoFixo/campoFixoService';
|
|
24
|
+
export * from './relatoriosDinamicos/relatoriosDinamicosService';
|
package/lib/base/services/modules/originacao/relatoriosDinamicos/relatoriosDinamicosService.ts
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import ApiService from '@/services/ApiService'
|
|
2
|
+
import { isAxiosError } from 'axios'
|
|
3
|
+
import AxiosBase from '@/services/axios/AxiosBase'
|
|
4
|
+
import endpointNavigationConfig from '@base/configs/endpoints.config/endpoints.navigation'
|
|
5
|
+
import type { TQueryResponse } from '@base/@types/api'
|
|
6
|
+
import type {
|
|
7
|
+
TBaseRelatorioDinamico,
|
|
8
|
+
TCatalogoRelatorioDinamico,
|
|
9
|
+
TRelatorioDinamicoResponse,
|
|
10
|
+
TCriarRelatorioDinamicoRequest,
|
|
11
|
+
TEditarRelatorioDinamicoRequest,
|
|
12
|
+
TConsultarRelatorioDinamicoRequest,
|
|
13
|
+
TExportarRelatorioDinamicoRequest,
|
|
14
|
+
TResultadoRelatorioDinamico,
|
|
15
|
+
} from '@base/@types/api/response/originacao/TRelatorioDinamicoResponse'
|
|
16
|
+
|
|
17
|
+
const endpoints = endpointNavigationConfig.originacao.relatoriosDinamicos
|
|
18
|
+
export const apiCatalogoRelatorioDinamico = (base?: TBaseRelatorioDinamico) =>
|
|
19
|
+
ApiService.fetchDataWithAxios<TCatalogoRelatorioDinamico>({
|
|
20
|
+
url: endpoints.catalogo(base),
|
|
21
|
+
method: 'get',
|
|
22
|
+
})
|
|
23
|
+
export const apiListarRelatoriosDinamicos = (params?: string) =>
|
|
24
|
+
ApiService.fetchDataWithAxios<TQueryResponse<TRelatorioDinamicoResponse>>({
|
|
25
|
+
url: endpoints.findAll(params),
|
|
26
|
+
method: 'get',
|
|
27
|
+
})
|
|
28
|
+
export const apiObterRelatorioDinamico = (id: string | number) =>
|
|
29
|
+
ApiService.fetchDataWithAxios<TRelatorioDinamicoResponse>({
|
|
30
|
+
url: endpoints.findOne(id),
|
|
31
|
+
method: 'get',
|
|
32
|
+
})
|
|
33
|
+
export const apiCriarRelatorioDinamico = (
|
|
34
|
+
data: TCriarRelatorioDinamicoRequest,
|
|
35
|
+
) =>
|
|
36
|
+
ApiService.fetchDataWithAxios<TRelatorioDinamicoResponse>({
|
|
37
|
+
url: endpoints.add,
|
|
38
|
+
method: 'post',
|
|
39
|
+
data,
|
|
40
|
+
})
|
|
41
|
+
export const apiEditarRelatorioDinamico = (
|
|
42
|
+
id: string | number,
|
|
43
|
+
data: TEditarRelatorioDinamicoRequest,
|
|
44
|
+
compartilhado: boolean,
|
|
45
|
+
) =>
|
|
46
|
+
ApiService.fetchDataWithAxios<TRelatorioDinamicoResponse>({
|
|
47
|
+
url: compartilhado
|
|
48
|
+
? endpoints.editarCompartilhado(id)
|
|
49
|
+
: endpoints.findOne(id),
|
|
50
|
+
method: 'put',
|
|
51
|
+
data,
|
|
52
|
+
})
|
|
53
|
+
export const apiExcluirRelatorioDinamico = (id: string | number) =>
|
|
54
|
+
ApiService.fetchDataWithAxios<void>({
|
|
55
|
+
url: endpoints.findOne(id),
|
|
56
|
+
method: 'delete',
|
|
57
|
+
})
|
|
58
|
+
export const apiConsultarRelatorioDinamico = (
|
|
59
|
+
id: string | number,
|
|
60
|
+
data: TConsultarRelatorioDinamicoRequest,
|
|
61
|
+
) =>
|
|
62
|
+
ApiService.fetchDataWithAxios<TResultadoRelatorioDinamico>({
|
|
63
|
+
url: endpoints.consultar(id),
|
|
64
|
+
method: 'post',
|
|
65
|
+
data,
|
|
66
|
+
})
|
|
67
|
+
|
|
68
|
+
export async function apiExportarRelatorioDinamico(
|
|
69
|
+
id: string | number,
|
|
70
|
+
data: TExportarRelatorioDinamicoRequest,
|
|
71
|
+
): Promise<{ arquivo: Blob; nome: string }> {
|
|
72
|
+
try {
|
|
73
|
+
const response = await AxiosBase<Blob>({
|
|
74
|
+
url: endpoints.exportar(id),
|
|
75
|
+
method: 'post',
|
|
76
|
+
data,
|
|
77
|
+
responseType: 'blob',
|
|
78
|
+
})
|
|
79
|
+
const disposition = String(
|
|
80
|
+
response.headers['content-disposition'] ?? '',
|
|
81
|
+
)
|
|
82
|
+
const encoded = /filename\*=UTF-8''([^;]+)/i.exec(disposition)?.[1]
|
|
83
|
+
const plain = /filename="?([^";]+)"?/i.exec(disposition)?.[1]
|
|
84
|
+
let nome = plain ?? `relatorio-${id}.xlsx`
|
|
85
|
+
if (encoded) {
|
|
86
|
+
try {
|
|
87
|
+
nome = decodeURIComponent(encoded)
|
|
88
|
+
} catch {
|
|
89
|
+
nome = `relatorio-${id}.xlsx`
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return { arquivo: response.data, nome: nome.replace(/[\\/]/g, '_') }
|
|
93
|
+
} catch (error: unknown) {
|
|
94
|
+
const response = isAxiosError(error) ? error.response : undefined
|
|
95
|
+
if (response?.data instanceof Blob) {
|
|
96
|
+
const text = await response.data.text()
|
|
97
|
+
let message = 'Não foi possível exportar o relatório.'
|
|
98
|
+
try {
|
|
99
|
+
const problem: unknown = JSON.parse(text)
|
|
100
|
+
if (problem && typeof problem === 'object') {
|
|
101
|
+
if (
|
|
102
|
+
'detail' in problem &&
|
|
103
|
+
typeof problem.detail === 'string'
|
|
104
|
+
)
|
|
105
|
+
message = problem.detail
|
|
106
|
+
else if (
|
|
107
|
+
'title' in problem &&
|
|
108
|
+
typeof problem.title === 'string'
|
|
109
|
+
)
|
|
110
|
+
message = problem.title
|
|
111
|
+
}
|
|
112
|
+
} catch {
|
|
113
|
+
if (text && text.length < 500 && !text.includes('<html'))
|
|
114
|
+
message = text
|
|
115
|
+
}
|
|
116
|
+
throw new Error(message)
|
|
117
|
+
}
|
|
118
|
+
throw error
|
|
119
|
+
}
|
|
120
|
+
}
|
package/package.json
CHANGED