12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- export function formatApiCall(url, args) {
- const find = /\{.*?\}/g;
- const replace = (match) => {
- const key = match.replace(/\{|\}/g, "");
- return args[key] || "";
- };
- return url.replace(/\/+$/, "").replace(find, replace).replace(find,replace);
- }
- function getURLSearchParams(widget, endpoint) {
- const params = new URLSearchParams({
- type: widget.type,
- group: widget.service_group,
- service: widget.service_name,
- endpoint,
- });
- return params;
- }
- export function formatProxyUrlWithSegments(widget, endpoint, segments) {
- const params = getURLSearchParams(widget, endpoint);
- if (segments) {
- params.append("segments", JSON.stringify(segments));
- }
- return `/api/services/proxy?${params.toString()}`;
- }
- export function formatProxyUrl(widget, endpoint, queryParams) {
- const params = getURLSearchParams(widget, endpoint);
- if (queryParams) {
- params.append("query", JSON.stringify(queryParams));
- }
- return `/api/services/proxy?${params.toString()}`;
- }
- export function asJson(data) {
- if (data?.length > 0) {
- const json = JSON.parse(data.toString());
- return json;
- }
- return data;
- }
- export function jsonArrayTransform(data, transform) {
- const json = asJson(data);
- if (json instanceof Array) {
- return transform(json);
- }
- return json;
- }
- export function jsonArrayFilter(data, filter) {
- return jsonArrayTransform(data, (items) => items.filter(filter));
- }
- export function sanitizeErrorURL(errorURL) {
- // Dont display sensitive params on frontend
- const url = new URL(errorURL);
- ["apikey", "api_key", "token", "t"].forEach(key => {
- if (url.searchParams.has(key)) url.searchParams.set(key, "***")
- });
- return url.toString();
- }
|