@datawheel/bespoke 0.9.2 → 0.10.0-beta.1
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/README.md +8 -0
- package/css/mixins.scss +178 -0
- package/dist/Search-BWmRyIa9.d.mts +129 -0
- package/dist/auth-BwgF4GT9.d.mts +139 -0
- package/dist/auth.d.mts +42 -0
- package/dist/auth.js +1 -1
- package/dist/cms.css +1 -1
- package/dist/cms.d.mts +13 -0
- package/dist/cms.js +38 -66
- package/dist/explore.css +1 -1
- package/dist/explore.d.mts +40 -0
- package/dist/explore.js +8 -36
- package/dist/index.d.mts +24 -0
- package/dist/index.js +1 -1
- package/dist/redux-store.d.mts +175 -0
- package/dist/redux-store.js +3 -4
- package/dist/report.css +1 -1
- package/dist/report.d.mts +132 -0
- package/dist/report.js +14 -42
- package/dist/server.d.mts +108 -0
- package/dist/server.js +10 -11
- package/dist/store-De3Xknzr.d.mts +545 -0
- package/dist/types-BcIo0oyw.d.mts +847 -0
- package/package.json +76 -40
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import react from 'react';
|
|
3
|
+
|
|
4
|
+
interface ConfirmPrompt {
|
|
5
|
+
title?: string;
|
|
6
|
+
message: string;
|
|
7
|
+
cancelText?: string;
|
|
8
|
+
confirmText?: string;
|
|
9
|
+
}
|
|
10
|
+
type Prompt = ConfirmPrompt;
|
|
11
|
+
interface RequestFactory<T extends Prompt> {
|
|
12
|
+
(request: T, delayed?: false): Promise<void>;
|
|
13
|
+
(request: T, delayed: true): {
|
|
14
|
+
show(): Promise<void>;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
type DialogContextProps = {
|
|
18
|
+
newConfirmation: RequestFactory<ConfirmPrompt>;
|
|
19
|
+
};
|
|
20
|
+
type DialogProviderProps = react.PropsWithChildren<Record<string, unknown>>;
|
|
21
|
+
declare function DialogProvider(props: DialogProviderProps): react_jsx_runtime.JSX.Element;
|
|
22
|
+
declare function useDialog(): DialogContextProps;
|
|
23
|
+
|
|
24
|
+
export { DialogProvider, useDialog };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {useMantineTheme,Modal,Group,Button}from'@mantine/core';import p,{useState,useCallback,useContext}from'react';import {jsxs,jsx}from'react/jsx-runtime';var C=p.createContext(void 0);function b(n){let[o,r]=useState(false),[e,i]=useState(null),s=p.useMemo(()=>{function t(d,v){return v?{show:()=>t(d)}:new Promise((
|
|
1
|
+
import {useMantineTheme,Modal,Group,Button}from'@mantine/core';import p,{useState,useCallback,useContext}from'react';import {jsxs,jsx}from'react/jsx-runtime';var C=p.createContext(void 0);function b(n){let[o,r]=useState(false),[e,i]=useState(null),s=p.useMemo(()=>{function t(d,v){return v?{show:()=>t(d)}:new Promise((x,y)=>{i({request:d,onResolve:x,onReject:y}),r(true);})}return {newConfirmation:t}},[]),u=()=>{r(false),setTimeout(()=>i(null),200);},P=useCallback(t=>{!o||!e||(e.onResolve(t),u());},[o,e]),g=useCallback(t=>{!o||!e||(e.onReject(t),u());},[o,e]);return jsxs(C.Provider,{value:s,children:[e&&jsx(k,{opened:o,request:e.request,onConfirm:P,onCancel:g}),n.children]})}function k(n){let{request:o,opened:r,onCancel:e,onConfirm:i}=n,s=useMantineTheme();return jsxs(Modal,{centered:true,zIndex:1002,opened:r,title:o.title,onClose:e,children:[o.message,jsxs(Group,{justify:"flex-end",style:{marginTop:s.spacing.sm},children:[jsx(Button,{onClick:e,children:o.cancelText||"Cancel"}),jsx(Button,{color:"red",onClick:i,children:o.confirmText||"Confirm"})]})]})}function M(){let n=useContext(C);if(n===void 0)throw new Error("useConfirmationDialog must be used within ConfirmationDialogProvider.");return n}export{b as DialogProvider,M as useDialog};
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { R as RecordsKey, A as AppThunk, a as ReadMembersResult, V as ValidateVariantSlugResponse, b as RegenerateSearchResponse, c as ReadMembersParams, d as ReadMembersResponse, S as SearchMemberParams, e as SearchMemberResponse, P as ProxyRequestParams, f as AppDispatch, g as AppState } from './store-De3Xknzr.mjs';
|
|
2
|
+
export { s as storeWrapper } from './store-De3Xknzr.mjs';
|
|
3
|
+
import * as _reduxjs_toolkit from '@reduxjs/toolkit';
|
|
4
|
+
import { D as DataSource, A as AnyBlock, R as Result, a as AnyNestedBlock, N as NestedDimension, F as Formatter, b as AnyReport, c as AnyNestedReport, d as Section, e as NestedSection, V as Variant, f as DeleteParams, g as ReadParams, h as Dimension, i as SearchReportParams, j as SearchReportResponse, k as ReadMetadataParams, l as ReadMetadataResponse, S as SearchUsersParams, U as UpdateUserParams, m as UpdateMyDataParams, n as ReadPrivateBlocksParams, o as ReadPrivateBlocksResponse, p as RevalidateUrlRequest, q as RevalidateUrlResponse, r as RevalidateReportRequest, s as RevalidateReportResponse, t as ReadEnvSecretsResponse } from './types-BcIo0oyw.mjs';
|
|
5
|
+
import { d as BespokeUserProfile } from './auth-BwgF4GT9.mjs';
|
|
6
|
+
import { TypedUseSelectorHook } from 'react-redux';
|
|
7
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
8
|
+
import 'next/app';
|
|
9
|
+
import 'next';
|
|
10
|
+
import 'querystring';
|
|
11
|
+
import 'next-redux-wrapper';
|
|
12
|
+
import 'sequelize';
|
|
13
|
+
import 'next-auth';
|
|
14
|
+
import 'next-auth/react';
|
|
15
|
+
|
|
16
|
+
interface ResourceContextType {
|
|
17
|
+
pathSegment: string;
|
|
18
|
+
formatterFunctions: Record<string, Record<string, (value: any) => string>>;
|
|
19
|
+
datasourceFunctions: DataSource[];
|
|
20
|
+
profilePrefix: string;
|
|
21
|
+
previewPrefix?: string | null;
|
|
22
|
+
siteProps?: Record<string, any>;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
type VariableUpdateParams = {
|
|
26
|
+
sid: number;
|
|
27
|
+
bid: number;
|
|
28
|
+
previews: Record<string, any>[];
|
|
29
|
+
query: Record<string, any>;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
declare const createEntity: <T extends RecordsKey>(type: T, payload: Parameters<{
|
|
33
|
+
block: (payload: Pick<AnyBlock, "type" | "blockrow" | "blockcol" | "section_id"> & {
|
|
34
|
+
locales: Array<string>;
|
|
35
|
+
}) => AppThunk<Promise<Result<AnyNestedBlock>>>;
|
|
36
|
+
dimension: (payload: Pick<NestedDimension, "report_id" | "name" | "ordering">) => AppThunk<Promise<Result<NestedDimension>>>;
|
|
37
|
+
formatter: (payload: Pick<Formatter, "content" | "name">) => AppThunk<Promise<Result<Formatter>>>;
|
|
38
|
+
report: (payload: Pick<AnyReport, "name">) => AppThunk<Promise<Result<AnyNestedReport>>>;
|
|
39
|
+
section: (payload: Pick<Section, "report_id" | "ordering">) => AppThunk<Promise<Result<NestedSection>>>;
|
|
40
|
+
variant: (payload: Pick<Variant, "dimension_id" | "slug" | "name">) => AppThunk<Promise<Result<Variant>>>;
|
|
41
|
+
datasource: (payload: Pick<DataSource, "content" | "description" | "name">) => AppThunk<Promise<Result<DataSource>>>;
|
|
42
|
+
}[T]>[0]) => any;
|
|
43
|
+
declare const readEntity: <T extends RecordsKey>(type: T, payload: Parameters<{
|
|
44
|
+
block: (payload: ReadParams) => AppThunk<Promise<Result<AnyBlock[] | AnyNestedBlock[], string>>>;
|
|
45
|
+
dimension: (payload: ReadParams) => AppThunk<Promise<Result<NestedDimension[] | Dimension[], string>>>;
|
|
46
|
+
formatter: (payload: ReadParams) => AppThunk<Promise<Result<Formatter[], string>>>;
|
|
47
|
+
report: (payload: ReadParams) => AppThunk<Promise<Result<AnyNestedReport[] | AnyReport[], string>>>;
|
|
48
|
+
section: (payload: ReadParams) => AppThunk<Promise<Result<NestedSection[] | Section[], string>>>;
|
|
49
|
+
variant: (payload: ReadParams) => AppThunk<Promise<Result<Variant[], string>>>;
|
|
50
|
+
datasource: (payload: ReadParams) => AppThunk<Promise<Result<DataSource[], string>>>;
|
|
51
|
+
}[T]>[0]) => any;
|
|
52
|
+
declare const updateEntity: <T extends RecordsKey>(type: T, payload: Parameters<{
|
|
53
|
+
block: (payload: Partial<AnyNestedBlock> & {
|
|
54
|
+
id: number;
|
|
55
|
+
inputAction?: {
|
|
56
|
+
operation: "create" | "delete";
|
|
57
|
+
input: {
|
|
58
|
+
input_id: number;
|
|
59
|
+
block_id: number;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
}) => AppThunk<Promise<Result<AnyNestedBlock>>>;
|
|
63
|
+
dimension: (payload: Partial<NestedDimension> & {
|
|
64
|
+
id: number;
|
|
65
|
+
}) => AppThunk<Promise<Result<NestedDimension>>>;
|
|
66
|
+
formatter: (payload: Partial<Formatter> & {
|
|
67
|
+
id: number;
|
|
68
|
+
}) => AppThunk<Promise<Result<Formatter>>>;
|
|
69
|
+
report: (payload: Partial<AnyNestedReport> & {
|
|
70
|
+
id: number;
|
|
71
|
+
}) => AppThunk<Promise<Result<AnyNestedReport>>>;
|
|
72
|
+
section: (payload: Partial<NestedSection> & {
|
|
73
|
+
id: number;
|
|
74
|
+
}) => AppThunk<Promise<Result<NestedSection>>>;
|
|
75
|
+
variant: (payload: Partial<Variant> & {
|
|
76
|
+
id: number;
|
|
77
|
+
}) => AppThunk<Promise<Result<Variant>>>;
|
|
78
|
+
datasource: (payload: Partial<DataSource> & {
|
|
79
|
+
id: number;
|
|
80
|
+
}) => AppThunk<Promise<Result<DataSource>>>;
|
|
81
|
+
}[T]>[0]) => any;
|
|
82
|
+
declare const deleteEntity: <T extends RecordsKey>(type: T, payload: Parameters<{
|
|
83
|
+
block: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
84
|
+
dimension: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
85
|
+
formatter: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
86
|
+
report: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
87
|
+
section: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
88
|
+
variant: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
89
|
+
datasource: (payload: DeleteParams) => AppThunk<Promise<void>>;
|
|
90
|
+
}[T]>[0]) => any;
|
|
91
|
+
declare const cloneEntity: <T extends RecordsKey>(type: T, payload: Parameters<Record<RecordsKey, AnyThunk>[T]>[0]) => any;
|
|
92
|
+
type AnyThunk = (p: any) => any;
|
|
93
|
+
|
|
94
|
+
declare const setStatus: _reduxjs_toolkit.ActionCreatorWithNonInferrablePayload<"status/setStatus">;
|
|
95
|
+
declare const setPreviews: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<ReadMembersResult[], "status/setPreviews">;
|
|
96
|
+
declare const setSectionState: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<Record<number, any>, "status/setSectionState">;
|
|
97
|
+
declare const resetSectionState: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<number, "status/resetSectionState">;
|
|
98
|
+
declare const setCurrentLocale: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<string, "status/setCurrentLocale">;
|
|
99
|
+
declare const setPreferredLocale: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<string, "status/setPreferredLocale">;
|
|
100
|
+
declare const addRunConsumersRunning: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<number[], "status/addRunConsumersRunning">;
|
|
101
|
+
declare const removeRunConsumersRunning: _reduxjs_toolkit.ActionCreatorWithOptionalPayload<number[], "status/removeRunConsumersRunning">;
|
|
102
|
+
declare function variantValidateSlug(dimension: number, slug: string): AppThunk<Promise<ValidateVariantSlugResponse>>;
|
|
103
|
+
declare function reportSearch(filters: SearchReportParams): AppThunk<Promise<SearchReportResponse>>;
|
|
104
|
+
declare function searchRegenerate(): AppThunk<Promise<RegenerateSearchResponse>>;
|
|
105
|
+
declare function readMember(params: ReadMembersParams): AppThunk<Promise<ReadMembersResponse>>;
|
|
106
|
+
declare function searchMember(params: SearchMemberParams): AppThunk<Promise<SearchMemberResponse>>;
|
|
107
|
+
/** Deletes a given key from the current query parameters */
|
|
108
|
+
declare function deleteQueryParam(resource: any, key: any): (dispatch: any, getState: any) => Promise<void>;
|
|
109
|
+
/** Adds to or edits the current status query parameters to include the given key/val */
|
|
110
|
+
declare function setQueryParam(resource: any, key: any, value: any): (dispatch: any, getState: any) => Promise<void>;
|
|
111
|
+
declare function recalculateVariables(resource: ResourceContextType, params?: Partial<VariableUpdateParams>): AppThunk;
|
|
112
|
+
declare function readMetadata(filters: ReadMetadataParams): AppThunk<Promise<ReadMetadataResponse>>;
|
|
113
|
+
declare function urlProxy(config: ProxyRequestParams): AppThunk<Promise<any>>;
|
|
114
|
+
/** Users actions */
|
|
115
|
+
declare function searchRole(): AppThunk<Promise<any>>;
|
|
116
|
+
declare function searchUser(filters: SearchUsersParams): AppThunk<Promise<any>>;
|
|
117
|
+
declare function readUser(userId: string): AppThunk<Promise<BespokeUserProfile>>;
|
|
118
|
+
declare function updateUser({ user }: {
|
|
119
|
+
user: UpdateUserParams;
|
|
120
|
+
}): AppThunk<Promise<any>>;
|
|
121
|
+
declare function updateMyData(params: UpdateMyDataParams): AppThunk<Promise<any>>;
|
|
122
|
+
/** Remove a list of blocks from state, only used for private blocks during getStaticProps */
|
|
123
|
+
declare function removeBlocksFromState(privateBlockIds: number[]): AppThunk<Promise<void>>;
|
|
124
|
+
declare function addBlockToState(newBlocks: any): AppThunk<Promise<void>>;
|
|
125
|
+
declare function readPrivateBlocks(params: ReadPrivateBlocksParams): AppThunk<Promise<ReadPrivateBlocksResponse>>;
|
|
126
|
+
declare function revalidateUrl(params: RevalidateUrlRequest): AppThunk<Promise<RevalidateUrlResponse>>;
|
|
127
|
+
declare function revalidateReport(params: RevalidateReportRequest): AppThunk<Promise<RevalidateReportResponse>>;
|
|
128
|
+
declare function readEnvSecrets(): AppThunk<Promise<ReadEnvSecretsResponse>>;
|
|
129
|
+
declare function removeDataSourceLogic(): AppThunk<Promise<void>>;
|
|
130
|
+
|
|
131
|
+
declare const actions_addBlockToState: typeof addBlockToState;
|
|
132
|
+
declare const actions_addRunConsumersRunning: typeof addRunConsumersRunning;
|
|
133
|
+
declare const actions_cloneEntity: typeof cloneEntity;
|
|
134
|
+
declare const actions_createEntity: typeof createEntity;
|
|
135
|
+
declare const actions_deleteEntity: typeof deleteEntity;
|
|
136
|
+
declare const actions_deleteQueryParam: typeof deleteQueryParam;
|
|
137
|
+
declare const actions_readEntity: typeof readEntity;
|
|
138
|
+
declare const actions_readEnvSecrets: typeof readEnvSecrets;
|
|
139
|
+
declare const actions_readMember: typeof readMember;
|
|
140
|
+
declare const actions_readMetadata: typeof readMetadata;
|
|
141
|
+
declare const actions_readPrivateBlocks: typeof readPrivateBlocks;
|
|
142
|
+
declare const actions_readUser: typeof readUser;
|
|
143
|
+
declare const actions_recalculateVariables: typeof recalculateVariables;
|
|
144
|
+
declare const actions_removeBlocksFromState: typeof removeBlocksFromState;
|
|
145
|
+
declare const actions_removeDataSourceLogic: typeof removeDataSourceLogic;
|
|
146
|
+
declare const actions_removeRunConsumersRunning: typeof removeRunConsumersRunning;
|
|
147
|
+
declare const actions_reportSearch: typeof reportSearch;
|
|
148
|
+
declare const actions_resetSectionState: typeof resetSectionState;
|
|
149
|
+
declare const actions_revalidateReport: typeof revalidateReport;
|
|
150
|
+
declare const actions_revalidateUrl: typeof revalidateUrl;
|
|
151
|
+
declare const actions_searchMember: typeof searchMember;
|
|
152
|
+
declare const actions_searchRegenerate: typeof searchRegenerate;
|
|
153
|
+
declare const actions_searchRole: typeof searchRole;
|
|
154
|
+
declare const actions_searchUser: typeof searchUser;
|
|
155
|
+
declare const actions_setCurrentLocale: typeof setCurrentLocale;
|
|
156
|
+
declare const actions_setPreferredLocale: typeof setPreferredLocale;
|
|
157
|
+
declare const actions_setPreviews: typeof setPreviews;
|
|
158
|
+
declare const actions_setQueryParam: typeof setQueryParam;
|
|
159
|
+
declare const actions_setSectionState: typeof setSectionState;
|
|
160
|
+
declare const actions_setStatus: typeof setStatus;
|
|
161
|
+
declare const actions_updateEntity: typeof updateEntity;
|
|
162
|
+
declare const actions_updateMyData: typeof updateMyData;
|
|
163
|
+
declare const actions_updateUser: typeof updateUser;
|
|
164
|
+
declare const actions_urlProxy: typeof urlProxy;
|
|
165
|
+
declare const actions_variantValidateSlug: typeof variantValidateSlug;
|
|
166
|
+
declare namespace actions {
|
|
167
|
+
export { actions_addBlockToState as addBlockToState, actions_addRunConsumersRunning as addRunConsumersRunning, actions_cloneEntity as cloneEntity, actions_createEntity as createEntity, actions_deleteEntity as deleteEntity, actions_deleteQueryParam as deleteQueryParam, actions_readEntity as readEntity, actions_readEnvSecrets as readEnvSecrets, actions_readMember as readMember, actions_readMetadata as readMetadata, actions_readPrivateBlocks as readPrivateBlocks, actions_readUser as readUser, actions_recalculateVariables as recalculateVariables, actions_removeBlocksFromState as removeBlocksFromState, actions_removeDataSourceLogic as removeDataSourceLogic, actions_removeRunConsumersRunning as removeRunConsumersRunning, actions_reportSearch as reportSearch, actions_resetSectionState as resetSectionState, actions_revalidateReport as revalidateReport, actions_revalidateUrl as revalidateUrl, actions_searchMember as searchMember, actions_searchRegenerate as searchRegenerate, actions_searchRole as searchRole, actions_searchUser as searchUser, actions_setCurrentLocale as setCurrentLocale, actions_setPreferredLocale as setPreferredLocale, actions_setPreviews as setPreviews, actions_setQueryParam as setQueryParam, actions_setSectionState as setSectionState, actions_setStatus as setStatus, actions_updateEntity as updateEntity, actions_updateMyData as updateMyData, actions_updateUser as updateUser, actions_urlProxy as urlProxy, actions_variantValidateSlug as variantValidateSlug };
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
declare const useAppDispatch: () => AppDispatch;
|
|
171
|
+
declare const useAppSelector: TypedUseSelectorHook<AppState>;
|
|
172
|
+
|
|
173
|
+
declare const withBespokeStore: (Component: any) => (props: any) => react_jsx_runtime.JSX.Element;
|
|
174
|
+
|
|
175
|
+
export { AppDispatch, AppState, actions, useAppDispatch as useBespokeDispatch, useAppSelector as useBespokeSelector, withBespokeStore };
|
package/dist/redux-store.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {createSlice,configureStore}from'@reduxjs/toolkit';import {HYDRATE,createWrapper}from'next-redux-wrapper';import nt from'axios';import {schema,normalize}from'normalizr';import {merge,closest,assign,isObject}from'd3plus-common';import*as fo from'd3-array';import*as mo from'd3-collection';import*as yo from'd3-format';import*as Ro from'd3-time-format';import {formatAbbreviate}from'd3plus-format';import {date}from'd3plus-axis';import {titleCase,strip}from'd3plus-text';import vo from'jsonwebtoken';import Rr from'axios-retry';import Xo from'yn';import {format}from'pretty-format';import yn from'toposort';import {csvParse}from'd3-dsv';import pn from'next/config';import {getSession}from'next-auth/react';import {notifications}from'@mantine/notifications';import {createContext}from'react';import {useDispatch,useSelector}from'react-redux';import'react/jsx-runtime';import'@mantine/core';var oo=Object.defineProperty;var no=(e,t)=>{for(var r in t)oo(e,r,{get:t[r],enumerable:true});};function ee(e,t){return e.request(t).then(r=>{let{status:o,data:n}=r;return "error"in n?{ok:false,status:o,error:n.error}:{ok:true,status:o,wrapper:n.wrapper,data:n.data}},r=>{if("isAxiosError"in r){let{status:o,data:n}=r.response||{status:500};return {ok:false,status:o,error:n?.error??r.message}}return {ok:false,status:500,error:r.message}})}function F(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>ee(e,{...o,method:"GET",params:r?r(n):n})}function q(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>ee(e,{...o,method:"POST",data:n})}function ie(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>ee(e,{...o,method:"DELETE",params:r?r(n):n})}function fe(e,t){return r=>ee(e,{method:"POST",url:`images/save/${t}`,params:{prompt:r.prompt,provider:t}})}function _e(e,t){return r=>ee(e,{method:"GET",url:`images/search/${t}`,params:{prompt:r.prompt,page:r.page,provider:t}})}function zt(e,t){return ()=>ee(e,{method:"GET",url:`list/icons/${t}`,params:{provider:t}})}function jt(e,t){return r=>ee(e,{method:"GET",url:`read/icons/${t}/icon.svg`,params:{name:r.name}})}var me=e=>({id:e}),ao=e=>{if(e.mode==="slugs"){let t=e.slugs.map(r=>[r.variantSlug,r.memberSlug].join("/")).join(",");return {...e,slugs:t}}return ["related","whole"].includes(e.mode)?{...e}:{...e,[e.mode]:e[e.mode].join(",")}};function Me(e){let t=nt.create({baseURL:e});return {createBulkBlock:q(t,"create/bulk/block"),createBlock:q(t,"create/block"),createDimension:q(t,"create/dimension"),createFormatter:q(t,"create/formatter"),createReport:q(t,"create/report"),createSection:q(t,"create/section"),createVariant:q(t,"create/variant"),createDatasource:q(t,"create/datasource"),deleteBlock:ie(t,"delete/block",me),deleteDimension:ie(t,"delete/dimension",me),deleteFormatter:ie(t,"delete/formatter",me),deleteReport:ie(t,"delete/report",me),deleteSection:ie(t,"delete/section",me),deleteVariant:ie(t,"delete/variant",me),deleteDatasource:ie(t,"delete/datasource",me),readBlock:F(t,"read/block"),readDimension:F(t,"read/dimension"),readFormatter:F(t,"read/formatter"),readReport:F(t,"read/report"),readSection:F(t,"read/section"),readVariant:F(t,"read/variant"),readDatasource:F(t,"read/datasource"),updateBulkBlock:q(t,"update/bulk/block"),updateBlock:q(t,"update/block"),updateDimension:q(t,"update/dimension"),updateFormatter:q(t,"update/formatter"),updateReport:q(t,"update/report"),updateSection:q(t,"update/section"),updateVariant:q(t,"update/variant"),updateDatasource:q(t,"update/datasource"),searchReport:F(t,"search/reports"),validateVariantSlug:F(t,"validate/variant"),readMember:F(t,"read/members",ao),readMemberImage:F(t,{url:"member/image",responseType:"blob"}),searchMember:F(t,"search/members"),updateMember:F(t,"update/members"),imageLocalSearch:_e(t,"local"),imageLocalSave:fe(t,"local"),imageFlickrSearch:_e(t,"flickr"),imageFlickrSave:fe(t,"flickr"),imageUnsplashSearch:_e(t,"unsplash"),imageUnsplashSave:fe(t,"unsplash"),imageUploadSave:fe(t,"upload"),imageAdobeSearch:_e(t,"adobe"),imageAdobeSave:fe(t,"adobe"),imagePixabaySearch:_e(t,"pixabay"),imagePixabaySave:fe(t,"pixabay"),readMetadata:F(t,"read/metadata"),regenerateSearch:q(t,"search/regenerate"),urlProxy:F(t,"url/proxy"),searchRole:F(t,"auth/search/roles"),searchUser:F(t,"auth/search/users"),readUser:F(t,"auth/read/user"),updateUser:q(t,"auth/update/user"),updateMyData:q(t,"auth/update/me"),revalidateReport:F(t,"revalidate/report"),revalidateUrl:F(t,"revalidate/url"),readPrivateBlocks:q(t,"read/blocks/private"),listTablerIcons:zt(t,"tabler"),readTablerIcon:jt(t,"tabler"),readEnvSecrets:F(t,"read/secrets")}}function io(e,t){return +(e<t)-+(e>t)}function Ke(e,t,r="ordering"){return io(t[r],e[r])}function pt(e){let t=1+76.18009173/e-86.50532033/(e+1)+24.01409822/(e+2)-1.231739516/(e+3)+.00120858003/(e+4)-536382e-11/(e+5);return (e-.5)*Math.log(e+4.5)-(e+4.5)+Math.log(t*2.50662827465)}function Gt(e,t,r){let o=0,n=1,s=1,a=1,i=0,c=0,u;for(;Math.abs((s-c)/s)>1e-5;)c=s,u=-(t+i)*(t+r+i)*e/(t+2*i)/(t+2*i+1),o=s+u*o,n=a+u*n,i+=1,u=i*(r-i)*e/(t+2*i-1)/(t+2*i),s=o+u*s,a=n+u*a,o/=a,n/=a,s/=a,a=1;return s/t}function co(e,t,r){let o,n;if(e<0)n=0;else if(e>=t)n=1;else {e=Math.floor(e);let s=r,a=e+1,i=t-e,c=a+i,u=Math.exp(pt(c)-pt(i)-pt(a)+a*Math.log(s)+i*Math.log(1-s));s<(a+1)/(c+2)?o=u*Gt(s,a,i):o=1-u*Gt(1-s,i,a),n=1-o;}return Math.round(n*1e5)/1e5}function uo(e){return {.99999:15.137,.99:6.635,.95:3.841,.9:2.706}[e]}function De(e,t,r,o){let n=t/(1-t),s=0,a=1,i=0,c=0;for(;s<=e;)c+=a,s>=r&s<=o&&(i+=a),c>1e30&&(i/=1e30,c/=1e30,a/=1e30),s+=1,a=a*n*(e+1-s)/s;return i/c}function lo(e,t,r){let o=e/t,s=(100-r*100)/2,a,i;if(e===0)a=0;else {let c=o/2,u=0,l=o,p=s/100;for(;l-u>1e-5;)De(t,c,e,e)*.5+De(t,c,e+1,t)>p?(l=c,c=(u+c)/2):(u=c,c=(l+c)/2);a=c;}if(e===t)i=0;else {let c=(1+o)/2,u=o,l=1,p=s/100;for(;l-u>1e-5;)De(t,c,e,e)*.5+De(t,c,0,e-1)<p?(l=c,c=(u+c)/2):(u=c,c=(l+c)/2);i=c;}return {lci:a,uci:i}}function po(e,t){let r=e,o=t,n=r,s=o,a=95,i=.5,c=.5,l=(100-a)/2/100,p=n;for(;c>1e-5;)c/=2,Ye((1+p)*i/(1-i),p+1,1e10)+.5*Ye((1+p)*i/(1-i),p,p)>l?i-=c:i+=c;let d=(1+p)*i/(1-i)/s;for(i=.5,c=.5,l=(100-a)/2/100;c>1e-5;)c/=2,Ye((1+p)*i/(1-i),0,p-1)+.5*Ye((1+p)*i/(1-i),p,p)<l?i-=c:i+=c;let T=(1+p)*i/(1-i)/s;return {lci:d,uci:T}}function Ye(e,t,r){let o=1,n=0,s=0,a=0;for(;a<e||o>n*1e-10;)n+=o,a>=t&a<=r&&(s+=o),n>1e30&&(s/=1e30,n/=1e30,o/=1e30),a+=1,o=o*e/a;return s/n}var Ht={binomialCdf:co,binP:De,computeMidP:lo,criticalValue:uo,smr:po};var Oe={d3:{...fo,...mo,...yo,...Ro},d3plus:{assign:assign,closest:closest,date:date,formatAbbreviate:formatAbbreviate,merge:merge,strip:strip,titleCase:titleCase},stats:Ht};var Kt={jwt:vo};var Wt=(e,t={})=>{let r={libs:Kt,...t};function o(s){return Function("globals",...s.vars,`with (globals) { ${s.logic} }`).bind(r,r)}function n(s){if(s.vars&&s.logic)return o(s);for(let a in s)Array.isArray(s[a])?s[a]=s[a].map(i=>isObject(i)?n(i):i):isObject(s[a])&&(s[a]=n(s[a]));return s}return n(e)};var xo=()=>{let e=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",t=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[e];return t.includes(e)||t.push(e),{localeDefault:e,locales:t}},re=xo;re();var Ue=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});Ue.define({consumers:[Ue],inputs:[Ue]});var Qt=new schema.Entity("variant"),Xt=new schema.Entity("dimension",{variants:[Qt]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),Zt=new schema.Entity("section",{blocks:[Ue]}),ko=new schema.Entity("report",{dimensions:[Xt],sections:[Zt]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(Ke):[]}}}),Po=new schema.Entity("formatter"),Lo=new schema.Entity("datasource"),_o={report:ko,section:Zt,block:Ue,dimension:Xt,variant:Qt,formatter:Po,datasource:Lo};function We(e,t){let r=_o[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:ye(o,"report"),dimension:ye(o,"dimension"),section:ye(o,"section"),block:ye(o,"block"),variant:ye(o,"variant"),formatter:ye(o,"formatter"),datasource:ye(o,"datasource")}}function ye(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:{}}var Jt=(e,t=void 0)=>{let{sid:r,bid:o,previews:n=[],query:s={}}=t||{},a,i,c={};return r?(a=r,c.activeSection=a):a=e.activeSection,n.length>0?(i=n,c.previews=i.filter(Boolean)):i=e.previews,{parsedParams:{sid:a,bid:o,previews:i,query:s},statusPayload:c}};var Bo={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}}},ae=createSlice({name:"records",initialState:Bo,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Fe(e.entities,r.entities||{}),requests:Fe(e.requests,r.requests||{}),reports:r.reports||e.reports,tree:r.tree||e.tree}},setRequest:(e,t)=>{let r=t.payload;e.requests[r.type][r.key]=r;},setCreateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=We(r.type,o),s=Fe(e.entities,n);if(e.entities=s,r.type==="report"){let a=r.data;e.reports?e.reports.indexOf(a.id)===-1&&(e.reports=[...e.reports,a.id]):e.reports=[a.id];}else if(r.type==="dimension"){let a=r.data;e.entities.report[a.report_id].dimensions.push(a.id),e.entities.report[a.report_id].dimensions=Qe(s.report[a.report_id].dimensions,s.dimension);}else if(r.type==="variant"){let a=r.data;e.entities.dimension[a.dimension_id].variants.push(a.id);}else if(r.type==="section"&&!Array.isArray(r.data)){let a=r.data;e.entities.report[a.report_id].sections.push(a.id),e.entities.report[a.report_id].sections=Qe(s.report[a.report_id].sections,s.section);}else if(r.type==="block")if(Array.isArray(r.data)){let a=r.data,i=a[0],c=a.map(u=>u.id);e.entities.section[i.section_id].blocks.concat(c);}else {let a=r.data;e.entities.section[a.section_id].blocks.push(a.id);}}},setReadRequest(e,t){let r=t.payload;if(r.type!=="report"&&(e.requests[r.type][r.key]=r),r.status==="SUCCESS"){let o=We(r.type,r.data),n=Fe(e.entities,o);e.entities=n;}},setUpdateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=We(r.type,o),s,a,i;if(r.type==="block"&&!Array.isArray(r.data)){let u=e.entities.block[r.data.id].inputs,l=n.block[r.data.id].inputs;s=u.length!==l.length,s&&(i=u.length>l.length,a=i?u.filter(p=>!l.includes(p))[0]:l.filter(p=>!u.includes(p))[0]),Object.values(n.block).forEach(p=>{p.block_input&&delete n.block[p.id];});}let c=Fe(e.entities,n);if(e.entities=c,r.type==="dimension"){let u=r.data;e.entities.report[u.report_id].dimensions=Qe(c.report[u.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let u=r.data;e.entities.report[u.report_id].sections=Qe(c.report[u.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let u=r.data;s&&(i?e.entities.block[a].consumers=e.entities.block[a].consumers.filter(l=>l!==u.id):e.entities.block[a].consumers.push(u.id));}}},setDeleteRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let{id:o,parentId:n,parentType:s}=r.data;if(delete e.entities[r.type][o],s&&n!=null){let a=`${r.type}s`;wo(e.entities[s][n][a],o);}}},removeBlocks:(e,t)=>{let r=t.payload,o={...e.entities.block};return r.forEach(n=>{delete o[n];}),{...e,entities:{...e.entities,block:o}}},addBlocks:(e,t)=>{let r=t.payload;return {...e,entities:{...e.entities,block:{...e.entities.block,...r}}}},removeDataSourceLogic:e=>{let t={...e.entities.datasource};Object.keys(t).forEach(r=>{e.entities.datasource[r].content.useProxy&&(delete e.entities.datasource[r].content.logic,delete e.entities.datasource[r].content.testUrl,delete e.entities.datasource[r].content.access);});}},extraReducers:{[HYDRATE]:(e,t)=>{let r=t.payload.records,o=r.entities;return {entities:o,reports:Object.values(o.report).map(n=>n.id),requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}},tree:r.tree}}}});function Fe(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function Qe(e,t){return e.map(n=>t[n]).sort((n,s)=>typeof n.ordering=="string"&&typeof s.ordering=="string"?Ke(n,s):typeof n.ordering=="number"&&typeof s.ordering=="number"?n.ordering-s.ordering:String(n.ordering).localeCompare(String(s.ordering))).map(n=>n.id)}function wo(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}var ge=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",Xe=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[ge];Xe.includes(ge)||Xe.push(ge);var Do={localeDefault:ge,locales:Xe,currentLocale:ge,preferredLocale:ge,showToolbar:false,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:true,settings:false,reportEditor:false},isCMS:false,isRunConsumersRunning:[]},Ze=createSlice({name:"status",initialState:Do,reducers:{setStatus:(e,t)=>{Object.assign(e,t.payload);},setPreviews(e,t){e.previews=t.payload;},setCurrentLocale(e,t){e.currentLocale=t.payload;},setPreferredLocale(e,t){e.preferredLocale=t.payload;},setSectionState(e,t){e.sectionState={...e.sectionState,...t.payload};},resetSectionState(e,t){e.sectionState={...e.sectionState,[t.payload]:{}};},setActiveEntity(e,t){e.activeEntity=t.payload;},openSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:true};},closeSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:false};},toggleSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!e.sidebarStatus[t.payload]};},addRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.concat(t.payload);},removeRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.filter(r=>!t.payload.includes(r));}},extraReducers:{[HYDRATE]:(e,t)=>({...e,previews:t.payload.status.previews})}}),Ie=Ze.actions;var Vo={attributes:{},variables:{},status:{}},Je=createSlice({name:"variables",initialState:Vo,reducers:{setVariableChange:(e,t)=>{e.attributes={...e.attributes,...t.payload.attributes},e.variables={...e.variables,...t.payload.variables},e.status={...e.status,...t.payload.status};}},extraReducers:{[HYDRATE]:(e,t)=>({attributes:{...e.attributes,...t.payload.variables.attributes},status:{...e.status,...t.payload.variables.status},variables:{...e.variables,...t.payload.variables.variables}})}}),er=Je.actions;var tr=()=>configureStore({reducer:{[ae.name]:ae.reducer,[Ze.name]:Ze.reducer,[Je.name]:Je.reducer},middleware(e){return e({thunk:{extraArgument:Me("/api/cms/")}})}}),rr=createWrapper(tr);var ut={};no(ut,{addBlockToState:()=>us,addRunConsumersRunning:()=>Hr,cloneEntity:()=>Fr,createEntity:()=>Mr,deleteEntity:()=>Ur,deleteQueryParam:()=>Jn,readEntity:()=>ze,readEnvSecrets:()=>fs,readMember:()=>Yr,readMetadata:()=>ts,readPrivateBlocks:()=>ls,readUser:()=>ss,recalculateVariables:()=>Qr,removeBlocksFromState:()=>cs,removeDataSourceLogic:()=>ms,removeRunConsumersRunning:()=>Kr,reportSearch:()=>Qn,resetSectionState:()=>Gr,revalidateReport:()=>ds,revalidateUrl:()=>ps,searchMember:()=>Zn,searchRegenerate:()=>Xn,searchRole:()=>os,searchUser:()=>ns,setCurrentLocale:()=>Kn,setPreferredLocale:()=>Yn,setPreviews:()=>Hn,setQueryParam:()=>es,setSectionState:()=>jr,setStatus:()=>zr,updateEntity:()=>Dr,updateMyData:()=>is,updateUser:()=>as,urlProxy:()=>rs,variantValidateSlug:()=>Wn});var{localeDefault:Go}=re();function Z(e){return {variables:e.variables||{},query:e.query||{},locale:e.locale||Go}}var he={SINGLE:"single",MULTI:"multi"};var dt={ALLOWED:"allowed",ALLOWED_LOGIC:"allowedLogic",IGNORE_CASCADE:"ignoreCascade"},Ho={ACCESS:"access",ACCESS_LOGIC:"accessLogic"},Ko={DISABLED:"disabled"},Yo={FALLBACK:"fallback"};var Wo={IMAGE:"image",PARAGRAPH:"paragraph",SELECTOR:"selector",STAT:"stat",SUBTITLE:"subtitle",TITLE:"title",NAV:"nav",RESET_BUTTON:"reset_button",COMPARISON_BUTTON:"comparison_button",TABLE:"table",BUTTON:"button",MULTIHIERARCHY_SELECTOR:"multihierarchy_selector",FALLBACK:"fallback"},ft={GENERATOR:"generator",RELATED:"related",VIZ:"visualization",SECTION_FLAG:"section_flag"},mt="logic",S={...Wo,...ft},ar={...dt,...Ho,...Yo,...Ko};var Jo=Xo(process.env.REPORTS_LOGGING),Se=en;function en(e,t,r,o,n=void 0,s){let a={},i=[],{locale:c}=Z(s);try{if(t){let u=new Proxy(console,{get(p,d){return tn(d,"log","debug","info","warn","error")?(...f)=>{i.push(`${d} ${Date.now()} - ${f.map(T=>format(T)).join(" ")}`),Jo&&p[d](...f);}:p[d]}}),l;return n?l=new Function(e,"console","libs","formatters","locale","variables",r)(t,u,Oe,o,c,n):l=new Function(e,"console","libs","formatters","locale",r)(t,u,Oe,o,c),typeof l=="object"&&Object.keys(l).length>0&&Object.assign(a,l),{vars:a,error:null,log:i,output:l}}return {vars:a,error:"Invalid API Link",log:i}}catch(u){return {vars:a,error:u.message,log:i}}}function tn(e,...t){return t.includes(e)}function yt(e){return e.reduce((t,r,o)=>(o?o===e.length-1&&o===1?t+=` and ${r}`:o===e.length-1?t+=`, and ${r}`:t+=`, ${r}`:t+=r,t),"")}var Te=rn;function rn(e,t,r,o=false){let{variables:n}=Z(r);if(!e)return e;let s=/([A-z0-9]*)\{\{([^\}]+)\}\}/g;return e.replace(s,(i,c,u)=>{let l=d=>d;if(c){let d=c.replace(/^\w/g,f=>f.toLowerCase());d in t?l=t[d]:l=f=>`${c}${f}`;}let p=Array.isArray(n[u])?yt(n[u]):n[u];if(p===void 0)return o?i:"N/A";try{return l(p,Oe,t)}catch(d){return console.error(`Error using formatter ${l.name}
|
|
2
|
-
`,`Error message: ${
|
|
1
|
+
import {createSlice,configureStore}from'@reduxjs/toolkit';import {HYDRATE,createWrapper}from'next-redux-wrapper';import We from'axios';import {schema,normalize}from'normalizr';import {date,assign,isObject}from'@d3plus/dom';import*as Dr from'd3-array';import*as Ur from'd3-collection';import*as Fr from'd3-format';import {formatLocale}from'd3-format';import*as qr from'd3-time-format';import {closest}from'@d3plus/math';import {merge}from'@d3plus/data';import {titleCase,strip}from'@d3plus/text';import jr from'jsonwebtoken';import zt from'axios-retry';import bo from'yn';import {format}from'pretty-format';import Uo from'toposort';import {csvParse}from'd3-dsv';import Mo from'next/config';import {getSession}from'next-auth/react';import {notifications}from'@mantine/notifications';import {produce}from'immer';import {createContext}from'react';import {useDispatch,useSelector,Provider}from'react-redux';import {jsx}from'react/jsx-runtime';import'@mantine/core';var hr=Object.defineProperty;var xr=(e,t)=>{for(var r in t)hr(e,r,{get:t[r],enumerable:true});};function Z(e,t){return e.request(t).then(r=>{let{status:o,data:n}=r;return "error"in n?{ok:false,status:o,error:n.error}:{ok:true,status:o,wrapper:n.wrapper,data:n.data}},r=>{if("isAxiosError"in r){let{status:o,data:n}=r.response||{status:500};return {ok:false,status:o,error:n?.error??r.message}}return {ok:false,status:500,error:r.message}})}function F(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>Z(e,{...o,method:"GET",params:r?r(n):n})}function $(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>Z(e,{...o,method:"POST",data:n})}function oe(e,t,r){let o=typeof t=="string"?{url:t}:t;return n=>Z(e,{...o,method:"DELETE",params:r?r(n):n})}function le(e,t){return r=>Z(e,{method:"POST",url:`images/save/${t}`,params:{prompt:r.prompt,provider:t}})}function xe(e,t){return r=>Z(e,{method:"GET",url:`images/search/${t}`,params:{prompt:r.prompt,page:r.page,provider:t}})}function gt(e,t){return ()=>Z(e,{method:"GET",url:`list/icons/${t}`,params:{provider:t}})}function Et(e,t){return r=>Z(e,{method:"GET",url:`read/icons/${t}/icon.svg`,params:{name:r.name}})}var ue=e=>({id:e}),kr=e=>{if(e.mode==="slugs"){let t=e.slugs.map(r=>[r.variantSlug,r.memberSlug].join("/")).join(",");return {...e,slugs:t}}return ["related","whole"].includes(e.mode)?{...e}:{...e,[e.mode]:e[e.mode].join(",")}};function Le(e){let t=We.create({baseURL:e});return {createBulkBlock:$(t,"create/bulk/block"),createBlock:$(t,"create/block"),createDimension:$(t,"create/dimension"),createFormatter:$(t,"create/formatter"),createReport:$(t,"create/report"),createSection:$(t,"create/section"),createVariant:$(t,"create/variant"),createDatasource:$(t,"create/datasource"),deleteBlock:oe(t,"delete/block",ue),deleteDimension:oe(t,"delete/dimension",ue),deleteFormatter:oe(t,"delete/formatter",ue),deleteReport:oe(t,"delete/report",ue),deleteSection:oe(t,"delete/section",ue),deleteVariant:oe(t,"delete/variant",ue),deleteDatasource:oe(t,"delete/datasource",ue),readBlock:F(t,"read/block"),readDimension:F(t,"read/dimension"),readFormatter:F(t,"read/formatter"),readReport:F(t,"read/report"),readSection:F(t,"read/section"),readVariant:F(t,"read/variant"),readDatasource:F(t,"read/datasource"),updateBulkBlock:$(t,"update/bulk/block"),updateBlock:$(t,"update/block"),updateDimension:$(t,"update/dimension"),updateFormatter:$(t,"update/formatter"),updateReport:$(t,"update/report"),updateSection:$(t,"update/section"),updateVariant:$(t,"update/variant"),updateDatasource:$(t,"update/datasource"),searchReport:F(t,"search/reports"),validateVariantSlug:F(t,"validate/variant"),readMember:F(t,"read/members",kr),readMemberImage:F(t,{url:"member/image",responseType:"blob"}),searchMember:F(t,"search/members"),updateMember:F(t,"update/members"),imageLocalSearch:xe(t,"local"),imageLocalSave:le(t,"local"),imageFlickrSearch:xe(t,"flickr"),imageFlickrSave:le(t,"flickr"),imageUnsplashSearch:xe(t,"unsplash"),imageUnsplashSave:le(t,"unsplash"),imageUploadSave:le(t,"upload"),imageAdobeSearch:xe(t,"adobe"),imageAdobeSave:le(t,"adobe"),imagePixabaySearch:xe(t,"pixabay"),imagePixabaySave:le(t,"pixabay"),readMetadata:F(t,"read/metadata"),regenerateSearch:$(t,"search/regenerate"),urlProxy:F(t,"url/proxy"),searchRole:F(t,"auth/search/roles"),searchUser:F(t,"auth/search/users"),readUser:F(t,"auth/read/user"),updateUser:$(t,"auth/update/user"),updateMyData:$(t,"auth/update/me"),revalidateReport:F(t,"revalidate/report"),revalidateUrl:F(t,"revalidate/url"),readPrivateBlocks:$(t,"read/blocks/private"),listTablerIcons:gt(t,"tabler"),readTablerIcon:Et(t,"tabler"),readEnvSecrets:F(t,"read/secrets")}}function Lr(e,t){return +(e<t)-+(e>t)}function we(e,t,r="ordering"){return Lr(t[r],e[r])}var De={"ar-SA":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m",""," \u0623\u0644\u0641"," \u0645\u0644\u064A\u0648\u0646"," \u0628\u0644\u064A\u0648\u0646"," \u062A\u0631\u064A\u0644\u064A\u0648\u0646"," \u0643\u0648\u0627\u062F\u0631\u064A\u0644\u064A\u0648\u0646"," \u0643\u0648\u064A\u0646\u062A\u064A\u0644\u064A\u0648\u0646"," \u0633\u0643\u0633\u062A\u0644\u064A\u0648\u0646","\u0633\u0628\u062A\u064A\u0644\u064A\u0648\u0646"],grouping:[3],delimiters:{thousands:",",decimal:"."},currency:["SAR ",""]},"en-GB":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m","","k","M","B","T","q","Q","Z","Y"],grouping:[3],delimiters:{thousands:",",decimal:"."},currency:["\xA3",""]},"en-US":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m","","k","M","B","T","q","Q","Z","Y"],grouping:[3],delimiters:{thousands:",",decimal:"."},currency:["$",""]},"en-SA":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m",""," thousand"," million"," billion"," trillion"," quadrillion"," quintillion"," sextillion","septillion"],grouping:[3],delimiters:{thousands:",",decimal:"."},currency:["$",""]},"es-CL":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m","","k","M","MM","B","T","Q","Z","Y"],grouping:[3],delimiters:{thousands:".",decimal:","},currency:["$",""]},"es-MX":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m","","k","M","MM","B","T","Q","Z","Y"],grouping:[3],delimiters:{thousands:",",decimal:"."},currency:["$",""]},"es-ES":{separator:"",suffixes:["y","z","a","f","p","n","\xB5","m","","k","mm","b","t","q","Q","Z","Y"],grouping:[3],delimiters:{thousands:".",decimal:","},currency:["\u20AC",""]},"et-EE":{separator:" ",suffixes:["y","z","a","f","p","n","\xB5","m","","tuhat","miljonit","miljardit","triljonit","q","Q","Z","Y"],grouping:[3],delimiters:{thousands:" ",decimal:","},currency:["","eurot"]},"fr-FR":{suffixes:["y","z","a","f","p","n","\xB5","m","","k","m","b","t","q","Q","Z","Y"],grouping:[3],delimiters:{thousands:" ",decimal:","},currency:["\u20AC",""]},"zh-CN":{separator:"",suffixes:["\u5E7A","\u4EC4","\u963F","\u98DE","\u76AE","\u7EB3","\u5FAE","\u6BEB","","\u5343","\u5146","\u5409","\u592A","\u62CD","\u827E","\u6CFD","\u5C27"],grouping:[3],delimiters:{thousands:",",decimal:"."},currency:["\xA5",""]}};function Pr(e){"@swc/helpers - typeof";return e&&typeof Symbol<"u"&&e.constructor===Symbol?"symbol":typeof e}var Br=function(e,t){return parseFloat(Math.round(e*Math.pow(10,t))/Math.pow(10,t)).toFixed(t)};function vr(e,t,r){var o=0,n=parseFloat(e.replace("\u2212","-"),10);n&&(n<0&&(n*=-1),o=1+Math.floor(1e-12+Math.log(n)/Math.LN10),o=Math.max(-24,Math.min(24,Math.floor((o-1)/3)*3)));var a=r[8+o/3];return {number:Br(a.scale(n),t),symbol:a.symbol}}function Ir(e,t){var r=Math.pow(10,Math.abs(8-t)*3);return {scale:t>8?function(o){return o/r}:function(o){return o*r},symbol:e}}function Je(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"en-US",r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;if(isFinite(e))e*=1;else return "N/A";var o=e<0,n=e.toString().split(".")[0].replace("-","").length,a=(typeof t>"u"?"undefined":Pr(t))==="object"?t:De[t]||De["en-US"],s=a.suffixes.map(Ir),i=a.delimiters.decimal||".",c=a.separator||"",l=a.delimiters.thousands||",",p=formatLocale({currency:a.currency||["$",""],decimal:i,grouping:a.grouping||[3],thousands:l}),u;if(r)u=p.format(r)(e);else if(e===0)u="0";else if(n>=3){var m=vr(p.format(".3r")(e),2,s),d=parseFloat(m.number).toString().replace(".",i),b=m.symbol;u="".concat(d).concat(c).concat(b);}else n===3?u=p.format(",f")(e):e<1&&e>-1?u=p.format(".2g")(e):u=p.format(".3g")(e);return "".concat(o&&u.charAt(0)!=="\u2212"?"\u2212":"").concat(u).replace(/−/g,"-").replace(/(\.[0]*[1-9]*)[0]*$/g,"$1").replace(/\.[0]*$/g,"")}function et(e){let t=1+76.18009173/e-86.50532033/(e+1)+24.01409822/(e+2)-1.231739516/(e+3)+.00120858003/(e+4)-536382e-11/(e+5);return (e-.5)*Math.log(e+4.5)-(e+4.5)+Math.log(t*2.50662827465)}function St(e,t,r){let o=0,n=1,a=1,s=1,i=0,c=0,l;for(;Math.abs((a-c)/a)>1e-5;)c=a,l=-(t+i)*(t+r+i)*e/(t+2*i)/(t+2*i+1),o=a+l*o,n=s+l*n,i+=1,l=i*(r-i)*e/(t+2*i-1)/(t+2*i),a=o+l*a,s=n+l*s,o/=s,n/=s,a/=s,s=1;return a/t}function Or(e,t,r){let o,n;if(e<0)n=0;else if(e>=t)n=1;else {e=Math.floor(e);let a=r,s=e+1,i=t-e,c=s+i,l=Math.exp(et(c)-et(i)-et(s)+s*Math.log(a)+i*Math.log(1-a));a<(s+1)/(c+2)?o=l*St(a,s,i):o=1-l*St(1-a,i,s),n=1-o;}return Math.round(n*1e5)/1e5}function Mr(e){return {.99999:15.137,.99:6.635,.95:3.841,.9:2.706}[e]}function Pe(e,t,r,o){let n=t/(1-t),a=0,s=1,i=0,c=0;for(;a<=e;)c+=s,a>=r&a<=o&&(i+=s),c>1e30&&(i/=1e30,c/=1e30,s/=1e30),a+=1,s=s*n*(e+1-a)/a;return i/c}function Nr(e,t,r){let o=e/t,a=(100-r*100)/2,s,i;if(e===0)s=0;else {let c=o/2,l=0,p=o,u=a/100;for(;p-l>1e-5;)Pe(t,c,e,e)*.5+Pe(t,c,e+1,t)>u?(p=c,c=(l+c)/2):(l=c,c=(p+c)/2);s=c;}if(e===t)i=0;else {let c=(1+o)/2,l=o,p=1,u=a/100;for(;p-l>1e-5;)Pe(t,c,e,e)*.5+Pe(t,c,0,e-1)<u?(p=c,c=(l+c)/2):(l=c,c=(p+c)/2);i=c;}return {lci:s,uci:i}}function wr(e,t){let r=e,o=t,n=r,a=o,s=95,i=.5,c=.5,p=(100-s)/2/100,u=n;for(;c>1e-5;)c/=2,Ue((1+u)*i/(1-i),u+1,1e10)+.5*Ue((1+u)*i/(1-i),u,u)>p?i-=c:i+=c;let m=(1+u)*i/(1-i)/a;for(i=.5,c=.5,p=(100-s)/2/100;c>1e-5;)c/=2,Ue((1+u)*i/(1-i),0,u-1)+.5*Ue((1+u)*i/(1-i),u,u)<p?i-=c:i+=c;let b=(1+u)*i/(1-i)/a;return {lci:m,uci:b}}function Ue(e,t,r){let o=1,n=0,a=0,s=0;for(;s<e||o>n*1e-10;)n+=o,s>=t&s<=r&&(a+=o),n>1e30&&(a/=1e30,n/=1e30,o/=1e30),s+=1,o=o*e/s;return a/n}var Tt={binomialCdf:Or,binP:Pe,computeMidP:Nr,criticalValue:Mr,smr:wr};var Ce={d3:{...Dr,...Ur,...Fr,...qr},d3plus:{assign:assign,closest:closest,date:date,formatAbbreviate:Je,merge:merge,strip:strip,titleCase:titleCase},stats:Tt};var bt={jwt:jr};var ht=(e,t={})=>{let r={libs:bt,...t};function o(a){return Function("globals",...a.vars,`with (globals) { ${a.logic} }`).bind(r,r)}function n(a){if(a.vars&&a.logic)return o(a);for(let s in a)Array.isArray(a[s])?a[s]=a[s].map(i=>isObject(i)?n(i):i):isObject(a[s])&&(a[s]=n(a[s]));return a}return n(e)};var Yr=()=>{let e=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",t=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[e];return t.includes(e)||t.push(e),{localeDefault:e,locales:t}},J=Yr;J();var _e=new schema.Entity("block",{},{mergeStrategy(e,t){return t.block_input?e||{}:{...e,...t}}});_e.define({consumers:[_e],inputs:[_e]});var xt=new schema.Entity("variant"),Ct=new schema.Entity("dimension",{variants:[xt]},{processStrategy(e){return {...e,variants:"variants"in e?e.variants:[]}}}),kt=new schema.Entity("section",{blocks:[_e]}),Qr=new schema.Entity("report",{dimensions:[Ct],sections:[kt]},{processStrategy(e){return {...e,sections:"sections"in e?e.sections.sort(we):[]}}}),Zr=new schema.Entity("formatter"),Xr=new schema.Entity("datasource"),Jr={report:Qr,section:kt,block:_e,dimension:Ct,variant:xt,formatter:Zr,datasource:Xr};function Fe(e,t){let r=Jr[e];if(!r)throw new Error(`Invalid entity type: ${e}`);let{entities:o}=normalize(t,[r]);return {report:pe(o,"report"),dimension:pe(o,"dimension"),section:pe(o,"section"),block:pe(o,"block"),variant:pe(o,"variant"),formatter:pe(o,"formatter"),datasource:pe(o,"datasource")}}function pe(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:{}}var Lt=(e,t=void 0)=>{let{sid:r,bid:o,previews:n=[],query:a={}}=t||{},s,i,c={};return r?(s=r,c.activeSection=s):s=e.activeSection,n.length>0?(i=n,c.previews=i.filter(Boolean)):i=e.previews,{parsedParams:{sid:s,bid:o,previews:i,query:a},statusPayload:c}};var ro={tree:[],reports:null,entities:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}},requests:{block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}}},re=createSlice({name:"records",initialState:ro,reducers:{set:(e,t)=>{let r=t.payload;return {entities:Be(e.entities,r.entities||{}),requests:Be(e.requests,r.requests||{}),reports:r.reports||e.reports,tree:r.tree||e.tree}},setRequest:(e,t)=>{let r=t.payload;e.requests[r.type][r.key]=r;},setCreateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=Fe(r.type,o),a=Be(e.entities,n);if(e.entities=a,r.type==="report"){let s=r.data;e.reports?e.reports.indexOf(s.id)===-1&&(e.reports=[...e.reports,s.id]):e.reports=[s.id];}else if(r.type==="dimension"){let s=r.data;e.entities.report[s.report_id].dimensions.push(s.id),e.entities.report[s.report_id].dimensions=qe(a.report[s.report_id].dimensions,a.dimension);}else if(r.type==="variant"){let s=r.data;e.entities.dimension[s.dimension_id].variants.push(s.id);}else if(r.type==="section"&&!Array.isArray(r.data)){let s=r.data;e.entities.report[s.report_id].sections.push(s.id),e.entities.report[s.report_id].sections=qe(a.report[s.report_id].sections,a.section);}else if(r.type==="block")if(Array.isArray(r.data)){let s=r.data,i=s[0],c=s.map(l=>l.id);e.entities.section[i.section_id].blocks.concat(c);}else {let s=r.data;e.entities.section[s.section_id].blocks.push(s.id);}}},setReadRequest(e,t){let r=t.payload;if(r.type!=="report"&&(e.requests[r.type][r.key]=r),r.status==="SUCCESS"){let o=Fe(r.type,r.data),n=Be(e.entities,o);e.entities=n;}},setUpdateRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let o=Array.isArray(r.data)?r.data:[r.data],n=Fe(r.type,o),a,s,i;if(r.type==="block"&&!Array.isArray(r.data)){let l=e.entities.block[r.data.id].inputs,p=n.block[r.data.id].inputs;a=l.length!==p.length,a&&(i=l.length>p.length,s=i?l.filter(u=>!p.includes(u))[0]:p.filter(u=>!l.includes(u))[0]),Object.values(n.block).forEach(u=>{u.block_input&&delete n.block[u.id];});}let c=Be(e.entities,n);if(e.entities=c,r.type==="dimension"){let l=r.data;e.entities.report[l.report_id].dimensions=qe(c.report[l.report_id].dimensions,c.dimension);}else if(r.type==="section"&&!Array.isArray(r.data)){let l=r.data;e.entities.report[l.report_id].sections=qe(c.report[l.report_id].sections,c.section);}else if(r.type==="block"&&!Array.isArray(r.data)){let l=r.data;a&&(i?e.entities.block[s].consumers=e.entities.block[s].consumers.filter(p=>p!==l.id):e.entities.block[s].consumers.push(l.id));}}},setDeleteRequest(e,t){let r=t.payload;if(e.requests[r.type][r.key]=r,r.status==="SUCCESS"){let{id:o,parentId:n,parentType:a}=r.data;if(delete e.entities[r.type][o],a&&n!=null){let s=`${r.type}s`;oo(e.entities[a][n][s],o);}}},removeBlocks:(e,t)=>{let r=t.payload,o={...e.entities.block};return r.forEach(n=>{delete o[n];}),{...e,entities:{...e.entities,block:o}}},addBlocks:(e,t)=>{let r=t.payload;return {...e,entities:{...e.entities,block:{...e.entities.block,...r}}}},removeDataSourceLogic:e=>{let t={...e.entities.datasource};Object.keys(t).forEach(r=>{e.entities.datasource[r].content.useProxy&&(delete e.entities.datasource[r].content.logic,delete e.entities.datasource[r].content.testUrl,delete e.entities.datasource[r].content.access);});}},extraReducers:e=>{e.addCase(HYDRATE,(t,r)=>{let o=r.payload.records,n=o.entities;t.entities=n,t.reports=Object.values(n.report).map(a=>a.id),t.requests={block:{},dimension:{},report:{},section:{},variant:{},formatter:{},datasource:{}},t.tree=o.tree;});}});function Be(e,t){return Object.fromEntries(Object.keys(e).map(r=>[r,{...e[r],...t[r]}]))}function qe(e,t){return e.map(n=>t[n]).sort((n,a)=>typeof n.ordering=="string"&&typeof a.ordering=="string"?we(n,a):typeof n.ordering=="number"&&typeof a.ordering=="number"?n.ordering-a.ordering:String(n.ordering).localeCompare(String(a.ordering))).map(n=>n.id)}function oo(e,t){let r=e.indexOf(t);r>-1&&e.splice(r,1);}var me=process.env.NEXT_PUBLIC_REPORTS_LOCALE_DEFAULT||"en",$e=process.env.NEXT_PUBLIC_REPORTS_LOCALES?.split(",")||[me];$e.includes(me)||$e.push(me);var ao={localeDefault:me,locales:$e,currentLocale:me,preferredLocale:me,showToolbar:false,activeSection:null,previews:[],query:{},sectionState:{},activeEntity:{type:null,id:null},sidebarStatus:{tools:true,settings:false,reportEditor:false},isCMS:false,isRunConsumersRunning:[]},Ve=createSlice({name:"status",initialState:ao,reducers:{setStatus:(e,t)=>{Object.assign(e,t.payload);},setPreviews(e,t){e.previews=t.payload;},setCurrentLocale(e,t){e.currentLocale=t.payload;},setPreferredLocale(e,t){e.preferredLocale=t.payload;},setSectionState(e,t){e.sectionState={...e.sectionState,...t.payload};},resetSectionState(e,t){e.sectionState={...e.sectionState,[t.payload]:{}};},setActiveEntity(e,t){e.activeEntity=t.payload;},openSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:true};},closeSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:false};},toggleSidebar(e,t){e.sidebarStatus={...e.sidebarStatus,[t.payload]:!e.sidebarStatus[t.payload]};},addRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.concat(t.payload);},removeRunConsumersRunning(e,t){e.isRunConsumersRunning=e.isRunConsumersRunning.filter(r=>!t.payload.includes(r));}},extraReducers:e=>{e.addCase(HYDRATE,(t,r)=>{t.previews=r.payload.status.previews;});}}),ke=Ve.actions;var lo={attributes:{},variables:{},status:{}},ze=createSlice({name:"variables",initialState:lo,reducers:{setVariableChange:(e,t)=>{e.attributes={...e.attributes,...t.payload.attributes},e.variables={...e.variables,...t.payload.variables},e.status={...e.status,...t.payload.status};}},extraReducers:e=>{e.addCase(HYDRATE,(t,r)=>{let o=r.payload.variables;t.attributes={...t.attributes,...o.attributes},t.status={...t.status,...o.status},t.variables={...t.variables,...o.variables};});}}),Pt=ze.actions;var _t=()=>configureStore({reducer:{[re.name]:re.reducer,[Ve.name]:Ve.reducer,[ze.name]:ze.reducer},middleware(e){return e({thunk:{extraArgument:Le("/api/cms/")}})}}),Ge=createWrapper(_t);var Qe={};xr(Qe,{addBlockToState:()=>Tn,addRunConsumersRunning:()=>lr,cloneEntity:()=>rr,createEntity:()=>Jt,deleteEntity:()=>tr,deleteQueryParam:()=>un,readEntity:()=>Ie,readEnvSecrets:()=>xn,readMember:()=>pr,readMetadata:()=>dn,readPrivateBlocks:()=>bn,readUser:()=>Rn,recalculateVariables:()=>mr,removeBlocksFromState:()=>Sn,removeDataSourceLogic:()=>Cn,removeRunConsumersRunning:()=>ur,reportSearch:()=>an,resetSectionState:()=>cr,revalidateReport:()=>hn,revalidateUrl:()=>An,searchMember:()=>ln,searchRegenerate:()=>cn,searchRole:()=>fn,searchUser:()=>yn,setCurrentLocale:()=>on,setPreferredLocale:()=>nn,setPreviews:()=>rn,setQueryParam:()=>pn,setSectionState:()=>ir,setStatus:()=>ar,updateEntity:()=>er,updateMyData:()=>En,updateUser:()=>gn,urlProxy:()=>mn,variantValidateSlug:()=>sn});var{localeDefault:yo}=J();function W(e){return {variables:e.variables||{},query:e.query||{},locale:e.locale||yo}}var ye={SINGLE:"single",MULTI:"multi"};var tt={ALLOWED:"allowed",ALLOWED_LOGIC:"allowedLogic",IGNORE_CASCADE:"ignoreCascade"},Ro={ACCESS:"access",ACCESS_LOGIC:"accessLogic"},go={DISABLED:"disabled"},Eo={FALLBACK:"fallback"};var So={IMAGE:"image",PARAGRAPH:"paragraph",SELECTOR:"selector",STAT:"stat",SUBTITLE:"subtitle",TITLE:"title",NAV:"nav",RESET_BUTTON:"reset_button",COMPARISON_BUTTON:"comparison_button",TABLE:"table",BUTTON:"button",MULTIHIERARCHY_SELECTOR:"multihierarchy_selector",FALLBACK:"fallback"},rt={GENERATOR:"generator",RELATED:"related",VIZ:"visualization",SECTION_FLAG:"section_flag"},ot="logic",T={...So,...rt},Ot={...tt,...Ro,...Eo,...go};var ho=bo(process.env.REPORTS_LOGGING),Re=xo;function xo(e,t,r,o,n=void 0,a){let s={},i=[],{locale:c}=W(a);try{if(t){let l=new Proxy(console,{get(u,m){return Co(m,"log","debug","info","warn","error")?(...d)=>{i.push(`${m} ${Date.now()} - ${d.map(b=>format(b)).join(" ")}`),ho&&u[m](...d);}:u[m]}}),p;return n?p=new Function(e,"console","libs","formatters","locale","variables",r)(t,l,Ce,o,c,n):p=new Function(e,"console","libs","formatters","locale",r)(t,l,Ce,o,c),typeof p=="object"&&Object.keys(p).length>0&&Object.assign(s,p),{vars:s,error:null,log:i,output:p}}return {vars:s,error:"Invalid API Link",log:i}}catch(l){return {vars:s,error:l.message,log:i}}}function Co(e,...t){return t.includes(e)}function nt(e){return e.reduce((t,r,o)=>(o?o===e.length-1&&o===1?t+=` and ${r}`:o===e.length-1?t+=`, and ${r}`:t+=`, ${r}`:t+=r,t),"")}var ge=ko;function ko(e,t,r,o=false){let{variables:n}=W(r);if(!e)return e;let a=/([A-z0-9]*)\{\{([^\}]+)\}\}/g;return e.replace(a,(i,c,l)=>{let p=m=>m;if(c){let m=c.replace(/^\w/g,d=>d.toLowerCase());m in t?p=t[m]:p=d=>`${c}${d}`;}let u=Array.isArray(n[l])?nt(n[l]):n[l];if(u===void 0)return o?i:"N/A";try{return p(u,Ce,t)}catch(m){return console.error(`Error using formatter ${p.name}
|
|
2
|
+
`,`Error message: ${m.message}`),"N/A"}})}var st=(e,t,r)=>{let{variables:o}=r,n=s=>s.allowed==="never"?false:!s.allowed||s.allowed==="always"||o[s.allowed],a={...e};return Object.keys(a).forEach(s=>{typeof a[s]=="string"?a[s]=ge(a[s],t,r):Array.isArray(a[s])?a[s]=a[s].filter(n).map(i=>typeof i=="object"?st(i,t,r):typeof i=="string"?ge(i,t,r):i):typeof a[s]=="object"&&a[s]!==null&&!(a[s]instanceof Date)&&(a[s]=st(a[s],t,r));}),a},Ke=st;var Mt=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?{allowed:"always",label:t,id:t}:{allowed:"always",label:t.id,...t}):[];var Lo=(e,t,r)=>{if(!r)return false;if(e===ye.SINGLE)return r.find(n=>n.id===t);let o=Array.isArray(t)?t:t.split(",");return Array.isArray(o)&&o.every(n=>r.map(a=>a.id).includes(n))},at=Lo;function it(e,t,r,o,n=false){let{variables:a}=W(o),s=Ke({logic:t},r,o).logic,i=Re("variables",a,s,r,void 0,o),{vars:c,log:l,error:p}=i,u=c.type||ye.SINGLE,m=c.component||"Selector",d=c.hideLabel||"false",b=c.resetSectionVars||"false",_=c.name||"Unlabeled Selector",f=Mt(c.options||[]),M=I=>u===ye.MULTI&&!Array.isArray(I)?[I]:I,h=c.defaultValue,C;if(h&&(h=M(h),at(u,h,f)&&(C=h)),!C){let I=f&&f[0]&&f[0].id||f[0]||"";C=M(I);}if(n&&typeof window<"u"){let I=`selector${e}id`,Q=new URLSearchParams(window.location.search),L=Object.fromEntries(Q)[I];L&&!at(u,L,f)&&L!==void 0&&(Q.delete(I),window.history.replaceState(null,null,`?${Q.toString()}`));}return {config:{name:_,type:u,options:f,defaultValue:C,component:m,hideLabel:d,resetSectionVars:b},log:l,error:p}}function ct(e,t,r){if(!e)return false;let o=Array.isArray(r)?r:r.split(",");return Array.isArray(o)&&o.every(n=>e.map(a=>`${a[`${t} ID`]}`).includes(n))}function lt(e,t,r,o,n=false){let{variables:a}=W(o),s=Ke({logic:t},r,o).logic,i=Re("variables",a,s,r,void 0,o),{vars:c,log:l,error:p}=i;if(n&&typeof window<"u"){let m=`multihierarchySelector${e}-value`,d=`multihierarchySelector${e}-type`,b=new URLSearchParams(window.location.search),_=Object.fromEntries(b),f=_[m],M=_[d];f&&f!==void 0&&M&&M!==void 0&&!ct(c.data,M,f)&&(b.delete(m),b.delete(d),window.history.replaceState(null,null,`?${b.toString()}`));}return {config:c,log:l,error:p}}var Po=(e,t,r)=>{let o=`selector${e}id`,n=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),a=new URLSearchParams(t).get(o),s=n||a;if(r.type===ye.MULTI){let l=s?s.split(","):r.defaultValue,p=r.options.filter(u=>l.includes(u.id));return {[`selector${e}id`]:l,[`selector${e}label`]:(p||[]).map(u=>u.label)}}let i=s&&r.options.find(l=>l.id===s)?s:r.defaultValue,c=r.options.find(l=>l.id===i);return {[`selector${e}id`]:i,[`selector${e}label`]:c&&c.label||void 0}},Nt=Po;var _o=(e,t,r)=>{let o=`multihierarchySelector${e}-value`,n=`multihierarchySelector${e}-type`,a=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(o),s=new URLSearchParams(typeof location<"u"&&location?.search?location.search:"").get(n),i=new URLSearchParams(t).get(o),c=new URLSearchParams(t).get(n),l=a||i,p=s||c,u=l?l.split(","):r.defaultValue||[],m=p||r.defaultValueType||"",d=r.data?.filter(b=>u.includes(`${b[`${m} ID`]}`))||[];return {[`multihierarchySelector${e}id`]:u,[`multihierarchySelector${e}label`]:[...new Set((d||[]).map(b=>b[m]))],[`multihierarchySelector${e}type`]:m}},wt=_o;var{localeDefault:Dt,locales:Bo}=J(),vo=Object.values(rt),Io=(e,t=Dt)=>e&&vo.includes(e.type)?{locale:ot,locales:[ot]}:{locale:t,locales:Bo},Ut=(e,t=Dt)=>{if(!e)return {};let{locale:r}=Io(e,t);return e.contentByLocale?.[r]?.content};function Oo(e,t){let r=Object.values(t),o=r.filter(n=>n.shared&&n.section_id!==e).map(n=>n.id);return Object.fromEntries(r.filter(n=>n.section_id===e&&(n.inputs.length===0||n.inputs.some(a=>o.includes(a)))).map(n=>[n.id,n]))}var Ft=Oo;var qt=(e,t)=>t&&typeof t=="string"?t.split(".").reduce((r,o)=>r[o],e):e;var $t="SECTION_ALLOWED";function ut(e){return e.type===T.SECTION_FLAG&&e.inputs.length===0&&e.consumers.length===0}function No(){let{publicRuntimeConfig:e}=Mo(),t=e.bespoke_report_env_vars||{};return {...Object.keys(t).reduce((r,o)=>(r[`ENV_${o}`]=t[o]||"N/A",r),{})}}var ve=No;function wo(){return typeof process>"u"?{}:Object.entries(process.env).filter(([e])=>e.startsWith("BESPOKE_SECRET_")).reduce((e,[t,r])=>({...e,[t.replace("BESPOKE_SECRET_","ENV_SECRET_")]:r}),{})}var Vt=wo;var ne=bo(process.env.NEXT_PUBLIC_REPORTS_DEBUG),Vo=process.env.REPORTS_ORIGIN||"",zo=process.env.NEXT_PUBLIC_REPORTS_AXIOS_RETRIES,Kt=5;try{Kt=parseInt(`${zo||5}`,10);}catch(e){console.error("Error setting axios retries NEXT_PUBLIC_REPORTS_AXIOS_RETRIES defaults to 5",e);}zt(We,{retries:Kt,retryDelay:zt.exponentialDelay,onRetry:(e,t,r)=>{console.error("Generator request failed. Retrying... Count: ",e),console.error("URL: ",r.url),console.error(t.message);}});We.interceptors.request.use(e=>({...e,requestStart:Date.now()}));We.interceptors.response.use(e=>({...e,requestDuration:new Date().getTime()-e.config.requestStart}),e=>Promise.reject(e));var Go=(e,t,r)=>{let o=ge(e,t,r);return o.startsWith("http")||(o=`${Vo}${o.startsWith("/")?"":"/"}${o}`),o},{urlProxy:Ho}=Le("/api/cms");function Ye(e){return e.ok!==void 0}function je(e){this.message=e,this.name="ApiFetchException";}var Gt=process.env.NEXT_PUBLIC_REPORTS_API_FETCH_TIMEOUT||0;async function Ko(e,t,r="en",o,n){let a=Date.now(),s=e,i,c=ve(),l=Vt(),p={envs:{...c,...l}},u=new URL(e),m=new URLSearchParams(u.searchParams.toString());m.has("bespoke_slugs")&&(u.searchParams.delete("bespoke_slugs"),s=u.toString());let d={datasource:void 0};o.find(h=>{if(!h.content?.pattern)return false;try{let C=new RegExp(h.content.pattern,"gm");return C.test(s)?(d.datasource=h,!0):C.test(s)}catch{return false}});let b=n?n.settings:{},_=!!(b&&b.useProxy&&b.useProxy==="true"),f=d.datasource&&typeof d.datasource.content.useProxy=="boolean"?d.datasource.content.useProxy:false,M=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/api/cms/url/proxy?url=${encodeURIComponent(s)}`;if(typeof window=="object"&&(_||f)){let h=await Ho({url:s,timeout:Gt});if(h.ok===true)i=h.data;else throw new je(h?.error)}else try{let C={url:s,timeout:Gt};if(d.datasource){let I=p;if(typeof window<"u")try{let L=await getSession();if(L){let x={user:L.user,status:"authenticated",isLoading:!1,update:async()=>L};I={...p,session:x};}}catch(L){console.warn("Could not retrieve user session:",L);}let k=await ht({vars:["url","libs","session"],logic:d.datasource.content.logic},I)(s);if(k.axiosConfig)C=k.axiosConfig;else throw new je(`AxiosConfig is missing in Data Source ${d.datasource.name} (ID: ${d.datasource.id}).`)}let z=await We(C);if(z.status===200)z.headers["content-type"]==="text/csv"?i=csvParse(z.data):i=z.data;else throw new je("No response for: "+s)}catch(h){throw new je(h.message)}if(m.has("bespoke_slugs")){let h=m.get("bespoke_slugs");if(h){let C=h.split(",");if(C.length===3){let[z,I,Q]=C,k=qt(i,Q);if(k&&Array.isArray(k)){let L=Array.from(new Set(k.map(x=>`${x[I]}`).filter(x=>!["","undefined"].includes(x))));if(L.length>0){let x=L.join("").length>2e3,B=await t({mode:x?"whole":"ids",ids:x?void 0:L,all:false,locale:r,variant:[parseInt(z,10)],output:"lite",limit:L.length+1,allowNulls:true}).then(N=>{let q=[];return Ye(N)?N.ok&&(q=N.data.results):q=N.results,q&&Array.isArray(q)?q:[]}).catch(N=>(console.error(`Error hydrating slugs for Variant: ${z}, Key: ${I}, Accessor: ${Q}`),console.error(` Url ${e}`),n&&console.error(` From Section ${n.section_id} and Block ${n.id}`),console.error(N),[]));if(B){let N=Object.fromEntries(B.map(q=>[q.id,`/${q.variant_slug}/${q.slug}`]));k.map(q=>(q.bespoke_slug=N[q[I]]?N[q[I]]:null,q));}}}}}}return {data:i,requestDuration:Date.now()-a,finalUrl:f||_?M:s,apiDataSource:d.datasource?d.datasource:false}}function jo(e){this.name="BlockException",this.message=e;}async function Ht(e,t,r,o,n){let{locale:a,variables:s,query:i}=W(r),c=Wo(e,r,s,t),l=null,p=e.contentByLocale?.logic?.content?.api,u=null,m=null,d=null,b=null,_=null;if(!c)return {outputVariables:{},renderVariables:{},status:{allowed:false,hiddenByCascade:e.id}};if(e.type===T.FALLBACK)return {outputVariables:{},renderVariables:{},status:{allowed:c,hiddenByCascade:e.id}};if(p){d=Go(p,t,r);let k=d.split("|||").filter(B=>B!==""),L=[];for(let B=0;B<k.length;B++){let N=k[B];new RegExp("^(?:[a-z+]+:)?//","i").test(d)||(N=`${process.env.NEXT_PUBLIC_REPORTS_BASE_URL}/${N}`.replace(/([^:]\/)\/+/g,"$1")),L.push(Ko(N,o,a,n,e).catch(H=>{throw new jo(` Excecution of ${e.type}-${e.id} in section ${e.section_id} in report ${s.report_name} (${s.report_id}) failed.
|
|
3
3
|
Error fetching ${N}.
|
|
4
4
|
Message: ${H.message}.
|
|
5
|
-
`)}));}let C=await Promise.all(P).catch(O=>O.message);if(typeof C=="string"&&C)return {outputVariables:{},renderVariables:{},status:{error:C}};u=C.length===1?C[0].data:C.map(O=>O.data),d=C.reduce((O,N)=>O+JSON.stringify(N.data).length/1024,0),p=Math.max(...C.map(O=>O.requestDuration)),T=C.map(O=>O.apiDataSource?`${O.apiDataSource.name} (${O.apiDataSource.id})`:null),b=C.map(O=>O.finalUrl);}if(e.type===S.SELECTOR){let{config:k,log:P,error:C}=Et(e.id,e.contentByLocale[s].content.logic,t,r,true);return {outputVariables:cr(e.id,i,k),renderVariables:k,status:{log:P,error:C,allowed:c}}}if(e.type===S.MULTIHIERARCHY_SELECTOR){let{config:k,log:P,error:C}=St(e.id,e.contentByLocale[s].content.logic,t,r,true);return {outputVariables:ur(e.id,i,k),renderVariables:k,status:{log:P,error:C,allowed:c}}}if(e.type===S.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:c}};if(e.type===S.RELATED){let k=e.contentByLocale?.logic?.content?.simple?.compare||"variant",P=e.contentByLocale?.logic?.content?.simple?.limit||4,C=Object.keys(a).filter(R=>R.startsWith("report_id")).map(R=>a[R]),O=Object.keys(a).filter(R=>R.startsWith("dimension_id")).map(R=>a[R]),N=Object.keys(a).filter(R=>R.startsWith("variant_id")).map(R=>a[R]),V=Object.keys(a).filter(R=>R.startsWith("id")).map(R=>a[R]);if(!V.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:false}};let H=await Promise.all(V.map((R,h)=>o({mode:"ids",locale:s,ids:[R],output:"lite",variant:[N[h]]}))).then(R=>R.flatMap(h=>{let A=[];return ot(h)?h.ok&&(A=h.data.results):A=h.results,A&&Array.isArray(A)?A:[]})).catch(R=>(console.error("Error getting related members",R),[]));if(O.length>1){let R=Object.keys(a).filter(w=>w.startsWith("variant_slug")).map(w=>a[w]),h=H.map((w,z)=>{let U={mode:"related",locale:s,related:P??4,current_ids:[w.content_id],output:"full",variant_ids:[w.variant_id]};return z===0&&(U.include_ids=[w.content_id]),U}),A=await Promise.all(h.map(w=>o(w))).then(w=>w.flatMap(z=>{let U=[];return ot(z)?z.ok&&(U=z.data.results):U=z.results,U&&Array.isArray(U)?U:[]})).catch(w=>(console.error("Error getting related members",w),[])),pe=A.reduce((w,z)=>{let U=z.variant_slug;return w[U]||(w[U]=[]),w[U].push(z),w},{}),He=[],G=Object.keys(pe),se=[{combination:[],index:0}];for(;se.length>0;){let w=se.pop();if(!w)continue;let{combination:z,index:U}=w;if(U===G.length){He.push(z);continue}let de=G[U],Y=pe[de];for(let W of Y)se.push({combination:[...z,W],index:U+1});}return {outputVariables:{related_reports:He.map(w=>{let z=w.sort((U,de)=>R.indexOf(U.variant_slug)-R.indexOf(de.variant_slug));return {entities:z,link:"/"+z.map(U=>`${U.variant_slug}/${U.slug}`).join("/")}})},renderVariables:{},status:{log:[],allowed:A.length>0}}}let L=H.map(R=>R.content_id),M={mode:"related",locale:s,related:P??4,current_ids:L,output:"full"};k&&(k==="report"?M.report_ids=C:k==="dimension"?M.dimension_ids=O:M.variant_ids=N);let K=await o(M).then(R=>{let h=[];return ot(R)?R.ok&&(h=R.data.results):h=R.results,h&&Array.isArray(h)?h:[]}).catch(R=>(console.error("Error getting related members",R),[]));return {outputVariables:{related_reports:K.map(R=>({entities:[R],link:`/${R.variant_slug}/${R.slug}`}))},renderVariables:{},status:{log:[],allowed:K.length>0}}}let{logic:m}=pr(e,s),I=Te(m,t,r),v=Se("resp",u||{},I,t,a,r),{vars:x,error:$,log:_}=v;if(typeof x!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:_,duration:p,responseSize:d,resp:u,api:f,allowed:c,apiFinalUrls:b,apiDataSources:T}};let J=Object.keys(x).reduce((k,P)=>({...k,[`${e.type}${e.id}${P}`]:x[P]}),{});return {renderVariables:x,outputVariables:[S.GENERATOR,S.SECTION_FLAG].includes(e.type)?x:J,status:{log:_,error:$,duration:p,responseSize:d,resp:u,api:f,allowed:c,apiFinalUrls:b,apiDataSources:T}}}function xn(e,t,r,o,n,s,a){return e.consumers.forEach(i=>{if(t[i]){let c=`${r}-${i}`;!o.includes(c)&&(t[i].section_id===t[r].section_id||!n)&&o.push(c),e.consumers.filter(u=>t[u]&&t[u].section_id===t[r].section_id||!n).forEach(u=>bt(u,t,o,false,s,n,a));}})}var bt=(e,t,r=[],o=true,n=true,s=true,a=[])=>{if(a.includes(e))return [];a.push(e);let i=t[e];return i&&i.inputs.length&&o&&i.inputs.forEach(c=>{let u=`${c}-${e}`;r.includes(u)||r.push(u),i.inputs.forEach(l=>bt(l,t,r,o,false,s,a));}),i&&i.consumers.length&&n&&xn(i,t,e,r,s,n,a),r},Cn=(e,t,r,o)=>{let n=true;if(e&&"allowed"in e.settings&&e.settings.allowed!=="always")if(e.settings.allowed==="never")n=false;else {let s=Z(t),{error:a,output:i}=Se("variables",r,e.settings.allowedLogic||"return false;",o,void 0,s);a||(n=!!i);}return n},Sr=async(e,t,r,o,n,s={},a,i="section",c)=>{let u=i==="section",l=Z(n),p=l.variables,d={...s.variables??{}},f={...s.status??{}},T=new Set,b=[],m={};r?m={...m,[r]:e[r]}:t?m=(t??[]).reduce((L,{id:M})=>({...L,...dr(M,e)}),{}):m=Object.values(e).filter(L=>Tt(L)).reduce((L,M)=>({...L,[M.id]:M}),{});let I=Object.values(m).filter(L=>Tt(L));if(I.length>0){ce&&console.info("%crunConsumers: calculating section flags","color:purple",I.map(y=>y.id).join(", "));let L=Object.fromEntries(await Promise.all(I.map(async y=>[y.id,await Er(y,o,{...l,variables:p,locale:p.locale},a,c).then(R=>{let{outputVariables:h,status:A}=R;if(A.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${y.id}, Section ${y.section_id}) failed with message: ${A.error}. `);f[y.id]={allowed:false,error:A.error},d[y.id]={};}return (y.consumers.length>0||[S.GENERATOR,S.SECTION_FLAG,S.RELATED].includes(y.type))&&A.allowed&&Object.keys(h).length>0?d[y.id]=h:d[y.id]={},i==="report"?(f[y.id]={allowed:A.allowed},[S.GENERATOR,S.SECTION_FLAG].includes(y.type)&&A.api&&(f[y.id].api=A.api)):f[y.id]=A,R})]))),K=Object.entries(L).filter(([,y])=>!y.outputVariables[mr]).map(([y])=>Number(y));T=new Set(K.map(y=>e[y].section_id)),Object.values(m).filter(y=>T.has(y.section_id)).forEach(y=>{b.push(y.id),delete m[y.id];}),ce&&console.info("%crunConsumers: removing sections","color:purple",T.keys());}let v=T.size>0?Object.fromEntries(Object.entries(e).filter(([,L])=>T?.has(L.section_id)?(b.includes(L.id)||b.push(L.id),false):true)):e;if(b.length>0&&(v=Object.fromEntries(Object.entries(v).map(([L,M])=>{let K={...M,inputs:M.inputs.filter(y=>!b.includes(y)),consumers:M.consumers.filter(y=>!b.includes(y))};return [L,K]}))),!r&&!t)return {variables:{...s.variables??{},...d},status:{...s.status??{},...f}};i==="report"&&b.length>0&&b.forEach(L=>{delete d[L],delete f[L],delete e[L];}),ce&&console.info("%crunConsumers: running root blocks","color:purple",Object.keys(m));let x=Object.keys(m).reduce((L,M)=>{let K=new Date,y=bt(Number(M),v,[],!r,true,u).map(A=>A.split("-")),h=(new Date().getTime()-K.getTime())/1e3;return ce&&console.info(`%cResolved dependencies for ${M} (${h.toFixed(2)}s)`,"color:blue"),[...L,...y]},[]),$=new Date,_=Object.keys(m).reduce((L,M)=>L.includes(M)?[...L]:[M,...L],yn(x)),k=(new Date().getTime()-$.getTime())/1e3;ce&&console.info(`%cResolved DAG (${k.toFixed(2)}s): `,"color:green",_);let P=process.env.NEXT_PUBLIC_REPORTS_MAX_CONCURRENT_QUERIES_PER_REPORT,C=parseInt(`${P||0}`,10);async function O(L,M){let K=new Map,y=[],R=async()=>y.length;for(let h of L){if(C!==0){let G=await R();for(;G>=C;)ce&&console.info("Too many pending promises, waiting...",G,y),await new Promise(se=>setTimeout(se,500)),G=await R();}let A=M[h],He=Promise.all(A.inputs.filter(G=>L.includes(String(G))).map(G=>K.get(Number(G)))).then(async()=>{let G=A.inputs.reduce((Y,W)=>({...Y,...d[W]}),p),se=A.inputs.find(Y=>(A.settings?.ignoreCascade?A.settings?.ignoreCascade:[]).includes(Y)||!f[Y]?false:!f[Y].allowed||f[Y].hiddenByCascade);if(se){f[h]={allowed:false,hiddenByCascade:f[se].hiddenByCascade||se},d[h]={},y.splice(y.indexOf(Number(h)),1);return}let $t=new Date,w;typeof window<"u"&&[S.SELECTOR,S.MULTIHIERARCHY_SELECTOR].includes(A.type)&&A.settings[ar.DISABLED]?w=new Promise(Y=>{Y({outputVariables:d[h],status:f[h]});}):w=Er(A,o,{...l,variables:G,locale:G.locale},a,c);let z=await w.then(({outputVariables:Y,status:W})=>{if(W.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${h}, Section ${A.section_id}) failed with message: ${W.error}.`);f[h]={allowed:false,error:W.error},d[h]={};}(A.consumers.length>0||[S.GENERATOR,S.SECTION_FLAG,S.RELATED].includes(A.type))&&W.allowed&&Object.keys(Y).length>0?d[h]=Y:d[h]={},i==="report"?(f[h]={allowed:W.allowed},[S.GENERATOR,S.SECTION_FLAG].includes(A.type)&&W.api&&(f[h].api=W.api)):f[h]=W;}),de=(new Date().getTime()-$t.getTime())/1e3;return ce&&console.info(`%cBlock ${A.id} resolved in ${de.toFixed(3)}s`,de>500?"color:red":"color:green"),f[h].duration=f[h].duration?f[h].duration:de,y.splice(y.indexOf(Number(h)),1),z}).catch(G=>{throw y.splice(y.indexOf(Number(h)),1),G});y.push(Number(h)),K.set(Number(h),He);}await Promise.all(Array.from(K.values()));}let N=new Date;await O(_,v);let H=(new Date().getTime()-N.getTime())/1e3;return ce&&console.info(`%cResolved Variables (${H.toFixed(2)}s), ${_.length} blocks`,"color:green"),{variables:{...s.variables??{},...d},status:{...s.status??{},...f}}};function kn(e=[]){return e.reduce((t,r,o)=>{if(r){let n=o+1;t[`id${n}`]=r.id,t[`name${n}`]=r.name,t[`slug${n}`]=r.slug,"attributes"in r&&Object.keys(r.attributes).forEach(s=>{t[`attr_${s}${n}`]=r.attributes[s];}),t[`variant_id${n}`]=r.variant_id,t[`variant_name${n}`]=r.variant_name,t[`variant_slug${n}`]=r.variant_slug,t[`dimension_id${n}`]=r.dimension_id,t[`dimension_name${n}`]=r.dimension_name,t.report_id=r.report_id,t.report_name=r.report_name;}return t},{})}var Tr=kn;function be(e,t,r){if(t==="createBulk"||t==="updateBulk"){let n=`${t}${br(r)}`;return e[n]}let o=`${t}${br(r)}`;return e[o]}function br(e){return e[0].toUpperCase()+e.slice(1)}function j(e){for(var t=arguments.length,r=Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];if(process.env.NODE_ENV!=="production"){var n=Nn[e],s=n?typeof n=="function"?n.apply(null,r):n:"unknown error nr: "+e;throw Error("[Immer] "+s)}throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map((function(a){return "'"+a+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function Be(e){return !!e&&!!e[Q]}function ve(e){var t;return !!e&&((function(r){if(!r||typeof r!="object")return false;var o=Object.getPrototypeOf(r);if(o===null)return true;var n=Object.hasOwnProperty.call(o,"constructor")&&o.constructor;return n===Object||typeof n=="function"&&Function.toString.call(n)===Mn})(e)||Array.isArray(e)||!!e[_r]||!!(!((t=e.constructor)===null||t===void 0)&&t[_r])||It(e)||Bt(e))}function $e(e,t,r){r===void 0&&(r=false),Ne(e)===0?(r?Object.keys:Ut)(e).forEach((function(o){r&&typeof o=="symbol"||t(o,e[o],e);})):e.forEach((function(o,n){return t(n,o,e)}));}function Ne(e){var t=e[Q];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:It(e)?2:Bt(e)?3:0}function kt(e,t){return Ne(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Pn(e,t){return Ne(e)===2?e.get(t):e[t]}function Or(e,t,r){var o=Ne(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r;}function Ln(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function It(e){return Bn&&e instanceof Map}function Bt(e){return wn&&e instanceof Set}function Ae(e){return e.o||e.t}function wt(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Dn(e);delete t[Q];for(var r=Ut(t),o=0;o<r.length;o++){var n=r[o],s=t[n];s.writable===false&&(s.writable=true,s.configurable=true),(s.get||s.set)&&(t[n]={configurable:true,writable:true,enumerable:s.enumerable,value:e[n]});}return Object.create(Object.getPrototypeOf(e),t)}function Nt(e,t){return t===void 0&&(t=false),Mt(e)||Be(e)||!ve(e)||(Ne(e)>1&&(e.set=e.add=e.clear=e.delete=_n),Object.freeze(e),t&&$e(e,(function(r,o){return Nt(o,true)}),true)),e}function _n(){j(2);}function Mt(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function oe(e){var t=Un[e];return t||j(18,e),t}function Ar(){return process.env.NODE_ENV==="production"||we||j(0),we}function At(e,t){t&&(oe("Patches"),e.u=[],e.s=[],e.v=t);}function st(e){Pt(e),e.p.forEach(On),e.p=null;}function Pt(e){e===we&&(we=e.l);}function vr(e){return we={p:[],l:we,h:e,m:true,_:0}}function On(e){var t=e[Q];t.i===0||t.i===1?t.j():t.g=true;}function vt(e,t){t._=t.p.length;var r=t.p[0],o=e!==void 0&&e!==r;return t.h.O||oe("ES5").S(t,e,o),o?(r[Q].P&&(st(t),j(4)),ve(e)&&(e=at(t,e),t.l||it(t,e)),t.u&&oe("Patches").M(r[Q].t,e,t.u,t.s)):e=at(t,r,[]),st(t),t.u&&t.v(t.u,t.s),e!==Ir?e:void 0}function at(e,t,r){if(Mt(t))return t;var o=t[Q];if(!o)return $e(t,(function(i,c){return xr(e,o,t,i,c,r)}),true),t;if(o.A!==e)return t;if(!o.P)return it(e,o.t,true),o.t;if(!o.I){o.I=true,o.A._--;var n=o.i===4||o.i===5?o.o=wt(o.k):o.o,s=n,a=false;o.i===3&&(s=new Set(n),n.clear(),a=true),$e(s,(function(i,c){return xr(e,o,n,i,c,r,a)})),it(e,n,false),r&&e.u&&oe("Patches").N(o,r,e.u,e.s);}return o.o}function xr(e,t,r,o,n,s,a){if(process.env.NODE_ENV!=="production"&&n===r&&j(5),Be(n)){var i=at(e,n,s&&t&&t.i!==3&&!kt(t.R,o)?s.concat(o):void 0);if(Or(r,o,i),!Be(i))return;e.m=false;}else a&&r.add(n);if(ve(n)&&!Mt(n)){if(!e.h.D&&e._<1)return;at(e,n),t&&t.A.l||it(e,n);}}function it(e,t,r){r===void 0&&(r=false),!e.l&&e.h.D&&e.m&&Nt(t,r);}function xt(e,t){var r=e[Q];return (r?Ae(r):e)[t]}function Cr(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Object.getPrototypeOf(r);}}function Lt(e){e.P||(e.P=true,e.l&&Lt(e.l));}function Ct(e){e.o||(e.o=wt(e.t));}function _t(e,t,r){var o=It(t)?oe("MapSet").F(t,r):Bt(t)?oe("MapSet").T(t,r):e.O?(function(n,s){var a=Array.isArray(n),i={i:a?1:0,A:s?s.A:Ar(),P:false,I:false,R:{},l:s,t:n,k:null,o:null,j:null,C:false},c=i,u=Ot;a&&(c=[i],u=qe);var l=Proxy.revocable(c,u),p=l.revoke,d=l.proxy;return i.k=d,i.j=p,d})(t,r):oe("ES5").J(t,r);return (r?r.A:Ar()).p.push(o),o}function In(e){return Be(e)||j(22,e),(function t(r){if(!ve(r))return r;var o,n=r[Q],s=Ne(r);if(n){if(!n.P&&(n.i<4||!oe("ES5").K(n)))return n.t;n.I=true,o=kr(r,s),n.I=false;}else o=kr(r,s);return $e(o,(function(a,i){n&&Pn(n.t,a)===i||Or(o,a,t(i));})),s===3?new Set(o):o})(e)}function kr(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return wt(e)}var Pr,we,Dt=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",Bn=typeof Map<"u",wn=typeof Set<"u",Lr=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Ir=Dt?Symbol.for("immer-nothing"):((Pr={})["immer-nothing"]=true,Pr),_r=Dt?Symbol.for("immer-draftable"):"__$immer_draftable",Q=Dt?Symbol.for("immer-state"):"__$immer_state";var Nn={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(e){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(e){return "Cannot apply patch, path doesn't resolve: "+e},16:'Sets cannot have "replace" patches.',17:function(e){return "Unsupported patch operation: "+e},18:function(e){return "The plugin for '"+e+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+e+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(e){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+e+"'"},22:function(e){return "'current' expects a draft, got: "+e},23:function(e){return "'original' expects a draft, got: "+e},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Mn=""+Object.prototype.constructor,Ut=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Dn=Object.getOwnPropertyDescriptors||function(e){var t={};return Ut(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r);})),t},Un={},Ot={get:function(e,t){if(t===Q)return e;var r=Ae(e);if(!kt(r,t))return (function(n,s,a){var i,c=Cr(s,a);return c?"value"in c?c.value:(i=c.get)===null||i===void 0?void 0:i.call(n.k):void 0})(e,r,t);var o=r[t];return e.I||!ve(o)?o:o===xt(e.t,t)?(Ct(e),e.o[t]=_t(e.A.h,o,e)):o},has:function(e,t){return t in Ae(e)},ownKeys:function(e){return Reflect.ownKeys(Ae(e))},set:function(e,t,r){var o=Cr(Ae(e),t);if(o?.set)return o.set.call(e.k,r),true;if(!e.P){var n=xt(Ae(e),t),s=n?.[Q];if(s&&s.t===r)return e.o[t]=r,e.R[t]=false,true;if(Ln(r,n)&&(r!==void 0||kt(e.t,t)))return true;Ct(e),Lt(e);}return e.o[t]===r&&(r!==void 0||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=true),true},deleteProperty:function(e,t){return xt(e.t,t)!==void 0||t in e.t?(e.R[t]=false,Ct(e),Lt(e)):delete e.R[t],e.o&&delete e.o[t],true},getOwnPropertyDescriptor:function(e,t){var r=Ae(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:true,configurable:e.i!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty:function(){j(11);},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){j(12);}},qe={};$e(Ot,(function(e,t){qe[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)};})),qe.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&j(13),qe.set.call(this,e,t,void 0)},qe.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&j(14),Ot.set.call(this,e[0],t,r,e[0])};var Fn=(function(){function e(r){var o=this;this.O=Lr,this.D=true,this.produce=function(n,s,a){if(typeof n=="function"&&typeof s!="function"){var i=s;s=n;var c=o;return function(b){var m=this;b===void 0&&(b=i);for(var I=arguments.length,v=Array(I>1?I-1:0),x=1;x<I;x++)v[x-1]=arguments[x];return c.produce(b,(function($){var _;return (_=s).call.apply(_,[m,$].concat(v))}))}}var u;if(typeof s!="function"&&j(6),a!==void 0&&typeof a!="function"&&j(7),ve(n)){var l=vr(o),p=_t(o,n,void 0),d=true;try{u=s(p),d=!1;}finally{d?st(l):Pt(l);}return typeof Promise<"u"&&u instanceof Promise?u.then((function(b){return At(l,a),vt(b,l)}),(function(b){throw st(l),b})):(At(l,a),vt(u,l))}if(!n||typeof n!="object"){if((u=s(n))===void 0&&(u=n),u===Ir&&(u=void 0),o.D&&Nt(u,true),a){var f=[],T=[];oe("Patches").M(n,u,f,T),a(f,T);}return u}j(21,n);},this.produceWithPatches=function(n,s){if(typeof n=="function")return function(u){for(var l=arguments.length,p=Array(l>1?l-1:0),d=1;d<l;d++)p[d-1]=arguments[d];return o.produceWithPatches(u,(function(f){return n.apply(void 0,[f].concat(p))}))};var a,i,c=o.produce(n,s,(function(u,l){a=u,i=l;}));return typeof Promise<"u"&&c instanceof Promise?c.then((function(u){return [u,a,i]})):[c,a,i]},typeof r?.useProxies=="boolean"&&this.setUseProxies(r.useProxies),typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze);}var t=e.prototype;return t.createDraft=function(r){ve(r)||j(8),Be(r)&&(r=In(r));var o=vr(this),n=_t(this,r,void 0);return n[Q].C=true,Pt(o),n},t.finishDraft=function(r,o){var n=r&&r[Q];process.env.NODE_ENV!=="production"&&(n&&n.C||j(9),n.I&&j(10));var s=n.A;return At(s,o),vt(void 0,s)},t.setAutoFreeze=function(r){this.D=r;},t.setUseProxies=function(r){r&&!Lr&&j(20),this.O=r;},t.applyPatches=function(r,o){var n;for(n=o.length-1;n>=0;n--){var s=o[n];if(s.path.length===0&&s.op==="replace"){r=s.value;break}}n>-1&&(o=o.slice(n+1));var a=oe("Patches").$;return Be(r)?a(r,o):this.produce(r,(function(i){return a(i,o)}))},e})(),X=new Fn,Vn=X.produce;X.produceWithPatches.bind(X);X.setAutoFreeze.bind(X);X.setUseProxies.bind(X);X.applyPatches.bind(X);X.createDraft.bind(X);X.finishDraft.bind(X);var ct=Vn;var te=ae.actions,Mr=je({block:ue("block"),dimension:ue("dimension"),formatter:ue("formatter"),report:ue("report"),section:ue("section"),variant:ue("variant"),datasource:ue("datasource")}),ze=je({block:le("block"),dimension:le("dimension"),formatter:le("formatter"),report:le("report"),section:le("section"),variant:le("variant"),datasource:le("datasource")}),Dr=je({block:ne("block"),dimension:ne("dimension"),formatter:ne("formatter"),report:ne("report"),section:ne("section"),variant:ne("variant"),datasource:ne("datasource")}),Ur=je({block:xe("block"),dimension:xe("dimension"),formatter:xe("formatter"),report:xe("report"),section:xe("section"),variant:xe("variant"),datasource:xe("datasource")}),Fr=je({block:wr("block"),section:wr("section")});function je(e){return (t,r)=>{let o=e[t];if(!o)throw new Error(`Attempting to dispatch action for invalid entity type '${t}'`);return o(r)}}function ke(e,t){return (r,o)=>{let s=o().records.requests[e][t],a=!s||s.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(te.setRequest({key:t,type:e,status:a}));}}function Ce(e,t,r,o){return n=>{typeof window=="object"&¬ifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(te.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function ue(e){return t=>{let r=Vt(e,t);return (o,n,s)=>(o(ke(e,r)),be(s,"create",e)(t).then(i=>(i.ok===true?o(te.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(Ce(e,r,i.status,i.error)),i)))}}function zn(e){return t=>{let r=Vt(e,t[0]);return (o,n,s)=>(o(ke(e,r)),be(s,"createBulk",e)(t).then(i=>(i.ok===true?o(te.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(Ce(e,r,i.status,i.error)),i)))}}function Br(e,t,r){return r.replace(new RegExp(e,"g"),t)}function jn(e){return e.section_id!==void 0}function Gn(e){return e.report_id!==void 0}function wr(e){return t=>{let{create:r}=t;return (o,n,s)=>ue(e)(r)(o,n,s).then(async i=>{if(i.ok){let{data:c}=i,{id:u}=c,{update:l}=t,p=$r(e,{id:u});if(o(ke(e,`${p}`)),e==="block"&&jn(r)){let d=ct(l,m=>{m.id=u;}),{contentByLocale:f}=d;f&&(d=ct(d,m=>{m.id=u,m.contentByLocale=Object.keys(f).reduce((I,v)=>{let x=f?f[v]:{};return I[v]={...x,id:u},I},{});}));let b=d.inputs?.map(m=>({type:m.type,id:m.id,inputAction:{operation:"create",input:{input_id:m.id,block_id:d.id}}}));return b&&b.length>0&&Nr(e)([d,...b])(o,n,s).then(()=>le("section")({id:d.section_id,include:true})(o,n,s).then(m=>(m.ok&&o(te.setRequest({key:p,type:e,status:"SUCCESS",data:m.data})),m))),ne(e)(d)(o,n,s).then(m=>(m.ok&&o(te.setRequest({key:p,type:e,status:"SUCCESS",data:m.data})),m))}if(e==="section"&&Gn(r)){let{id:d}=c,f=ct(l,m=>{m.id=d;}),{blocks:T}=f,b=T?.map(m=>({type:m.type,blockcol:m.blockcol,blockrow:m.blockrow,section_id:d,locales:Object.keys(m.contentByLocale).map(I=>I)}));return b&&T&&await zn("block")(b)(o,n,s).then(m=>{if(m.ok){let I=m.data,v=[],x=I.map(($,_)=>{let k={...$},P=k.id,C=T[_];C.contentByLocale&&(k.contentByLocale=Object.keys(C.contentByLocale).reduce((y,R)=>{let h=C.contentByLocale[R];return y[R]={...h,content:{...h.content},id:k.id},y},{}));let{settings:O}=C,{contentByLocale:N,id:V}=k;k.settings=O;let H={id:V,contentByLocale:N,settings:O};return C.inputs.map(y=>y.id).reduce((y,R)=>{let h=T.findIndex(A=>A.id===R);return [...y,h]},[]).map(y=>({...I[y],originalBlock:T[y]})).forEach(y=>{let{id:R,type:h,originalBlock:A}=y;if([S.SELECTOR,S.VIZ].includes(h)){if(H.contentByLocale?.logic?.content?.api){let pe=H.contentByLocale?.logic.content.api;H.contentByLocale.logic.content.api=Br(`(selector${A.id}id)`,`selector${R}id`,pe);}if(H.contentByLocale?.logic?.content?.logic){let pe=H.contentByLocale.logic.content.logic;H.contentByLocale.logic.content.logic=Br(`(selector${A.id}id)`,`selector${R}id`,pe);}}v.push({id:R,inputAction:{operation:"create",input:{input_id:R,block_id:P}}});}),H});return Nr("block")([...x,...v])(o,n,s)}}),ne(e)(f)(o,n,s).then(m=>(m.ok&&o(te.setRequest({key:p,type:e,status:"SUCCESS",data:m.data})),m))}return ne(e)({...l,id:c.id})(o,n,s)}})}}function le(e){return t=>{let r=Vr(e,t);return (o,n,s)=>{o(ke(e,r));let a=be(s,"read",e);if(typeof a!="function"){let i=`Failed to get valid RPC method for entity "${e}"`;return o(Ce(e,r,500,i)),Promise.reject(new Error(i))}return a(t).then(i=>(i.ok===true?o(te.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(Ce(e,r,i.status,i.error)),i))}}}function ne(e){return t=>{let r=qt(e,t);return (o,n,s)=>(o(ke(e,r)),be(s,"update",e)(t).then(i=>(i.ok===true?o(te.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(Ce(e,r,i.status,i.error)),i)))}}function Nr(e){return t=>{let r=qt(e,t[0]);return (o,n,s)=>(o(ke(e,r)),be(s,"updateBulk",e)(t).then(i=>(i.ok===true?o(te.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(Ce(e,r,i.status,i.error)),i)))}}function xe(e){return t=>{let r=qr(e,t);return (o,n,s)=>(o(ke(e,r)),be(s,"delete",e)(t).then(i=>{i.ok===true?o(te.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(Ce(e,r,i.status,i.error));}))}}function Vt(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function Vr(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function qt(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function qr(e,t){return `delete(${e}, ${t})`}function $r(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:zr,setPreviews:Hn,setSectionState:jr,resetSectionState:Gr,setCurrentLocale:Kn,setPreferredLocale:Yn,addRunConsumersRunning:Hr,removeRunConsumersRunning:Kr}=Ie;function Wn(e,t){return async(r,o,n)=>{let s=await n.validateVariantSlug({dimension:e,slug:t});if("error"in s)throw new Error(s.error);return s.data}}function Qn(e){return async(t,r,o)=>{let n=await o.searchReport(e);if("error"in n)throw new Error(n.error);return n.data}}function Xn(){return async(e,t,r)=>{let o=await r.regenerateSearch(void 0);if("error"in o)throw new Error(o.error);return o.data}}function Yr(e){return async(t,r,o)=>{let n=await o.readMember(e);if("error"in n)throw new Error(n.error);return n.data}}function Zn(e){return async(t,r,o)=>{let n=await o.searchMember(e);if(n.ok===true)return n.data;throw new Error(n.error)}}async function Wr(e,t,r,o){let n=r().status,s={...n,...o},a={...n.query,...o.query};Object.keys(a).forEach(c=>a[c]===void 0&&delete a[c]);let i={...s,query:a};t(zr(i)),n.activeSection&&t(Qr(e,{query:a}));}function Jn(e,t){return async(r,o)=>Wr(e,r,o,{query:{[t]:void 0}})}function es(e,t,r){return async(o,n)=>Wr(e,o,n,{query:{[t]:r}})}function Qr(e,t){return async(r,o)=>{let n=o(),{currentLocale:s}=n.status,a=n.records.entities.block,i=e.formatterFunctions[s],c=e.datasourceFunctions,{parsedParams:u,statusPayload:l}=Jt(n.status,t),{sid:p,bid:d,previews:f,query:T}=u;Object.keys(l).length&&r(Ie.setStatus(l));let b={...Tr(f),locale:s,...Ve()},m={variables:b,query:T,locale:s};r(Ie.addRunConsumersRunning([p]));let I=n.records.entities.section[p],v=async x=>r(Yr(x));try{let x=await Sr(a,I&&[I],d,i,m,void 0,v,"section",c),{variables:$,status:_}=x;r(er.setVariableChange({attributes:b,variables:$,status:_})),r(Ie.removeRunConsumersRunning([p]));}catch(x){console.error("Error in runConsumers client side: recalculateVariables",x);}}}function ts(e){return async(t,r,o)=>{let n=await o.readMetadata(e);if("error"in n)throw new Error(n.error);return n.data}}function rs(e){return async(t,r,o)=>{let n=await o.urlProxy(e);if("error"in n)throw new Error(n.error);return n.data}}function os(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function ns(e){return async(t,r,o)=>{let n=await o.searchUser(e);if("error"in n)throw new Error(n.error);return n.data}}function ss(e){return async(t,r,o)=>{let n=await o.readUser({user_id:e});if("error"in n)throw new Error(n.error);return n.data}}function as({user:e}){return async(t,r,o)=>{let n=await o.updateUser(e);if("error"in n)throw new Error(n.error);return n.data}}function is(e){return async(t,r,o)=>{let n=await o.updateMyData(e);if("error"in n)throw new Error(n.error);return n.data}}function cs(e){let{removeBlocks:t}=ae.actions;return async r=>{await r(t(e));}}function us(e){let{addBlocks:t}=ae.actions;return async r=>{await r(t(e));}}function ls(e){return async(t,r,o)=>{let n=await o.readPrivateBlocks({...e,roles:[]});if("error"in n)throw new Error(n.error);return n.data}}function ps(e){return async(t,r,o)=>{let n=await o.revalidateUrl({target:e.target});if("error"in n)throw new Error(n.error);return n.data}}function ds(e){return async(t,r,o)=>{let n=await o.revalidateReport({reportId:e.reportId,profilePrefix:e.profilePrefix});if("error"in n)throw new Error(n.error);return n.data}}function fs(){return async(e,t,r)=>{let o=await r.readEnvSecrets({});if("error"in o)throw new Error(o.error);return o.data}}function ms(){let{removeDataSourceLogic:e}=ae.actions;return async t=>{await t(e());}}var {locales:Rs}=re(),gs={pathSegment:"path",formatterFunctions:Rs.reduce((e,t)=>({...e,[t]:{}}),{}),datasourceFunctions:[],profilePrefix:"path",previewPrefix:null,siteProps:{}};createContext(gs);re();var lt=useDispatch,Ge=useSelector;
|
|
6
|
-
export{ut as actions,rr as storeWrapper,lt as useBespokeDispatch,Ge as useBespokeSelector};
|
|
5
|
+
`)}));}let x=await Promise.all(L).catch(B=>B.message);if(typeof x=="string"&&x)return {outputVariables:{},renderVariables:{},status:{error:x}};l=x.length===1?x[0].data:x.map(B=>B.data),m=x.reduce((B,N)=>B+JSON.stringify(N.data).length/1024,0),u=Math.max(...x.map(B=>B.requestDuration)),b=x.map(B=>B.apiDataSource?`${B.apiDataSource.name} (${B.apiDataSource.id})`:null),_=x.map(B=>B.finalUrl);}if(e.type===T.SELECTOR){let{config:k,log:L,error:x}=it(e.id,e.contentByLocale[a].content.logic,t,r,true);return {outputVariables:Nt(e.id,i,k),renderVariables:k,status:{log:L,error:x,allowed:c}}}if(e.type===T.MULTIHIERARCHY_SELECTOR){let{config:k,log:L,error:x}=lt(e.id,e.contentByLocale[a].content.logic,t,r,true);return {outputVariables:wt(e.id,i,k),renderVariables:k,status:{log:L,error:x,allowed:c}}}if(e.type===T.VIZ)return {outputVariables:{},renderVariables:e.contentByLocale.logic.content,status:{log:[],allowed:c}};if(e.type===T.RELATED){let k=e.contentByLocale?.logic?.content?.simple?.compare||"variant",L=e.contentByLocale?.logic?.content?.simple?.limit||4,x=Object.keys(s).filter(E=>E.startsWith("report_id")).map(E=>s[E]),B=Object.keys(s).filter(E=>E.startsWith("dimension_id")).map(E=>s[E]),N=Object.keys(s).filter(E=>E.startsWith("variant_id")).map(E=>s[E]),q=Object.keys(s).filter(E=>E.startsWith("id")).map(E=>s[E]);if(!q.length)return {outputVariables:{related_reports:[]},renderVariables:{},status:{log:[],allowed:false}};let H=await Promise.all(q.map((E,S)=>o({mode:"ids",locale:a,ids:[E],output:"lite",variant:[N[S]]}))).then(E=>E.flatMap(S=>{let A=[];return Ye(S)?S.ok&&(A=S.data.results):A=S.results,A&&Array.isArray(A)?A:[]})).catch(E=>(console.error("Error getting related members",E),[]));if(B.length>1){let E=Object.keys(s).filter(O=>O.startsWith("variant_slug")).map(O=>s[O]),S=H.map((O,V)=>{let U={mode:"related",locale:a,related:L??4,current_ids:[O.content_id],output:"full",variant_ids:[O.variant_id]};return V===0&&(U.include_ids=[O.content_id]),U}),A=await Promise.all(S.map(O=>o(O))).then(O=>O.flatMap(V=>{let U=[];return Ye(V)?V.ok&&(U=V.data.results):U=V.results,U&&Array.isArray(U)?U:[]})).catch(O=>(console.error("Error getting related members",O),[])),ie=A.reduce((O,V)=>{let U=V.variant_slug;return O[U]||(O[U]=[]),O[U].push(V),O},{}),Ne=[],G=Object.keys(ie),te=[{combination:[],index:0}];for(;te.length>0;){let O=te.pop();if(!O)continue;let{combination:V,index:U}=O;if(U===G.length){Ne.push(V);continue}let ce=G[U],j=ie[ce];for(let Y of j)te.push({combination:[...V,Y],index:U+1});}return {outputVariables:{related_reports:Ne.map(O=>{let V=O.sort((U,ce)=>E.indexOf(U.variant_slug)-E.indexOf(ce.variant_slug));return {entities:V,link:"/"+V.map(U=>`${U.variant_slug}/${U.slug}`).join("/")}})},renderVariables:{},status:{log:[],allowed:A.length>0}}}let P=H.map(E=>E.content_id),w={mode:"related",locale:a,related:L??4,current_ids:P,output:"full"};k&&(k==="report"?w.report_ids=x:k==="dimension"?w.dimension_ids=B:w.variant_ids=N);let K=await o(w).then(E=>{let S=[];return Ye(E)?E.ok&&(S=E.data.results):S=E.results,S&&Array.isArray(S)?S:[]}).catch(E=>(console.error("Error getting related members",E),[]));return {outputVariables:{related_reports:K.map(E=>({entities:[E],link:`/${E.variant_slug}/${E.slug}`}))},renderVariables:{},status:{log:[],allowed:K.length>0}}}let{logic:f}=Ut(e,a),M=ge(f,t,r),h=Re("resp",l||{},M,t,s,r),{vars:C,error:z,log:I}=h;if(typeof C!="object")return {outputVariables:{},renderVariables:{},status:{error:"Configuration did not return an object",log:I,duration:u,responseSize:m,resp:l,api:d,allowed:c,apiFinalUrls:_,apiDataSources:b}};let Q=Object.keys(C).reduce((k,L)=>({...k,[`${e.type}${e.id}${L}`]:C[L]}),{});return {renderVariables:C,outputVariables:[T.GENERATOR,T.SECTION_FLAG].includes(e.type)?C:Q,status:{log:I,error:z,duration:u,responseSize:m,resp:l,api:d,allowed:c,apiFinalUrls:_,apiDataSources:b}}}function Yo(e,t,r,o,n,a,s){return e.consumers.forEach(i=>{if(t[i]){let c=`${r}-${i}`;!o.includes(c)&&(t[i].section_id===t[r].section_id||!n)&&o.push(c),e.consumers.filter(l=>t[l]&&t[l].section_id===t[r].section_id||!n).forEach(l=>pt(l,t,o,false,a,n,s));}})}var pt=(e,t,r=[],o=true,n=true,a=true,s=[])=>{if(s.includes(e))return [];s.push(e);let i=t[e];return i&&i.inputs.length&&o&&i.inputs.forEach(c=>{let l=`${c}-${e}`;r.includes(l)||r.push(l),i.inputs.forEach(p=>pt(p,t,r,o,false,a,s));}),i&&i.consumers.length&&n&&Yo(i,t,e,r,a,n,s),r},Wo=(e,t,r,o)=>{let n=true;if(e&&"allowed"in e.settings&&e.settings.allowed!=="always")if(e.settings.allowed==="never")n=false;else {let a=W(t),{error:s,output:i}=Re("variables",r,e.settings.allowedLogic||"return false;",o,void 0,a);s||(n=!!i);}return n},jt=async(e,t,r,o,n,a={},s,i="section",c)=>{let l=i==="section",p=W(n),u=p.variables,m={...a.variables??{}},d={...a.status??{}},b=new Set,_=[],f={};r?f={...f,[r]:e[r]}:t?f=(t??[]).reduce((P,{id:w})=>({...P,...Ft(w,e)}),{}):f=Object.values(e).filter(P=>ut(P)).reduce((P,w)=>({...P,[w.id]:w}),{});let M=Object.values(f).filter(P=>ut(P));if(M.length>0){ne&&console.info("%crunConsumers: calculating section flags","color:purple",M.map(y=>y.id).join(", "));let P=Object.fromEntries(await Promise.all(M.map(async y=>[y.id,await Ht(y,o,{...p,variables:u,locale:u.locale},s,c).then(E=>{let{outputVariables:S,status:A}=E;if(A.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${y.id}, Section ${y.section_id}) failed with message: ${A.error}. `);d[y.id]={allowed:false,error:A.error},m[y.id]={};}return (y.consumers.length>0||[T.GENERATOR,T.SECTION_FLAG,T.RELATED].includes(y.type))&&A.allowed&&Object.keys(S).length>0?m[y.id]=S:m[y.id]={},i==="report"?(d[y.id]={allowed:A.allowed},[T.GENERATOR,T.SECTION_FLAG].includes(y.type)&&A.api&&(d[y.id].api=A.api)):d[y.id]=A,E})]))),K=Object.entries(P).filter(([,y])=>!y.outputVariables[$t]).map(([y])=>Number(y));b=new Set(K.map(y=>e[y].section_id)),Object.values(f).filter(y=>b.has(y.section_id)).forEach(y=>{_.push(y.id),delete f[y.id];}),ne&&console.info("%crunConsumers: removing sections","color:purple",b.keys());}let h=b.size>0?Object.fromEntries(Object.entries(e).filter(([,P])=>b?.has(P.section_id)?(_.includes(P.id)||_.push(P.id),false):true)):e;if(_.length>0&&(h=Object.fromEntries(Object.entries(h).map(([P,w])=>{let K={...w,inputs:w.inputs.filter(y=>!_.includes(y)),consumers:w.consumers.filter(y=>!_.includes(y))};return [P,K]}))),!r&&!t)return {variables:{...a.variables??{},...m},status:{...a.status??{},...d}};i==="report"&&_.length>0&&_.forEach(P=>{delete m[P],delete d[P],delete e[P];}),ne&&console.info("%crunConsumers: running root blocks","color:purple",Object.keys(f));let C=Object.keys(f).reduce((P,w)=>{let K=new Date,y=pt(Number(w),h,[],!r,true,l).map(A=>A.split("-")),S=(new Date().getTime()-K.getTime())/1e3;return ne&&console.info(`%cResolved dependencies for ${w} (${S.toFixed(2)}s)`,"color:blue"),[...P,...y]},[]),z=new Date,I=Object.keys(f).reduce((P,w)=>P.includes(w)?[...P]:[w,...P],Uo(C)),k=(new Date().getTime()-z.getTime())/1e3;ne&&console.info(`%cResolved DAG (${k.toFixed(2)}s): `,"color:green",I);let L=process.env.NEXT_PUBLIC_REPORTS_MAX_CONCURRENT_QUERIES_PER_REPORT,x=parseInt(`${L||0}`,10);async function B(P,w){let K=new Map,y=[],E=async()=>y.length;for(let S of P){if(x!==0){let G=await E();for(;G>=x;)ne&&console.info("Too many pending promises, waiting...",G,y),await new Promise(te=>setTimeout(te,500)),G=await E();}let A=w[S],Ne=Promise.all(A.inputs.filter(G=>P.includes(String(G))).map(G=>K.get(Number(G)))).then(async()=>{let G=A.inputs.reduce((j,Y)=>({...j,...m[Y]}),u),te=A.inputs.find(j=>(A.settings?.ignoreCascade?A.settings?.ignoreCascade:[]).includes(j)||!d[j]?false:!d[j].allowed||d[j].hiddenByCascade);if(te){d[S]={allowed:false,hiddenByCascade:d[te].hiddenByCascade||te},m[S]={},y.splice(y.indexOf(Number(S)),1);return}let Rt=new Date,O;typeof window<"u"&&[T.SELECTOR,T.MULTIHIERARCHY_SELECTOR].includes(A.type)&&A.settings[Ot.DISABLED]?O=new Promise(j=>{j({outputVariables:m[S],status:d[S]});}):O=Ht(A,o,{...p,variables:G,locale:G.locale},s,c);let V=await O.then(({outputVariables:j,status:Y})=>{if(Y.error){if(typeof window>"u")throw new Error(`Run consumers (Block: ${S}, Section ${A.section_id}) failed with message: ${Y.error}.`);d[S]={allowed:false,error:Y.error},m[S]={};}(A.consumers.length>0||[T.GENERATOR,T.SECTION_FLAG,T.RELATED].includes(A.type))&&Y.allowed&&Object.keys(j).length>0?m[S]=j:m[S]={},i==="report"?(d[S]={allowed:Y.allowed},[T.GENERATOR,T.SECTION_FLAG].includes(A.type)&&Y.api&&(d[S].api=Y.api)):d[S]=Y;}),ce=(new Date().getTime()-Rt.getTime())/1e3;return ne&&console.info(`%cBlock ${A.id} resolved in ${ce.toFixed(3)}s`,ce>500?"color:red":"color:green"),d[S].duration=d[S].duration?d[S].duration:ce,y.splice(y.indexOf(Number(S)),1),V}).catch(G=>{throw y.splice(y.indexOf(Number(S)),1),G});y.push(Number(S)),K.set(Number(S),Ne);}await Promise.all(Array.from(K.values()));}let N=new Date;await B(I,h);let H=(new Date().getTime()-N.getTime())/1e3;return ne&&console.info(`%cResolved Variables (${H.toFixed(2)}s), ${I.length} blocks`,"color:green"),{variables:{...a.variables??{},...m},status:{...a.status??{},...d}}};function Qo(e=[]){return e.reduce((t,r,o)=>{if(r){let n=o+1;t[`id${n}`]=r.id,t[`name${n}`]=r.name,t[`slug${n}`]=r.slug,"attributes"in r&&Object.keys(r.attributes).forEach(a=>{t[`attr_${a}${n}`]=r.attributes[a];}),t[`variant_id${n}`]=r.variant_id,t[`variant_name${n}`]=r.variant_name,t[`variant_slug${n}`]=r.variant_slug,t[`dimension_id${n}`]=r.dimension_id,t[`dimension_name${n}`]=r.dimension_name,t.report_id=r.report_id,t.report_name=r.report_name;}return t},{})}var Yt=Qo;function Ee(e,t,r){if(t==="createBulk"||t==="updateBulk"){let n=`${t}${Wt(r)}`;return e[n]}let o=`${t}${Wt(r)}`;return e[o]}function Wt(e){return e[0].toUpperCase()+e.slice(1)}var X=re.actions,Jt=Oe({block:se("block"),dimension:se("dimension"),formatter:se("formatter"),report:se("report"),section:se("section"),variant:se("variant"),datasource:se("datasource")}),Ie=Oe({block:ae("block"),dimension:ae("dimension"),formatter:ae("formatter"),report:ae("report"),section:ae("section"),variant:ae("variant"),datasource:ae("datasource")}),er=Oe({block:ee("block"),dimension:ee("dimension"),formatter:ee("formatter"),report:ee("report"),section:ee("section"),variant:ee("variant"),datasource:ee("datasource")}),tr=Oe({block:Se("block"),dimension:Se("dimension"),formatter:Se("formatter"),report:Se("report"),section:Se("section"),variant:Se("variant"),datasource:Se("datasource")}),rr=Oe({block:Zt("block"),section:Zt("section")});function Oe(e){return (t,r)=>{let o=e[t];if(!o)throw new Error(`Attempting to dispatch action for invalid entity type '${t}'`);return o(r)}}function be(e,t){return (r,o)=>{let a=o().records.requests[e][t],s=!a||a.status==="UNINITIALIZED"?"LOADING":"FETCHING";r(X.setRequest({key:t,type:e,status:s}));}}function Te(e,t,r,o){return n=>{typeof window=="object"&¬ifications.show({autoClose:3e3,color:"red",id:t,message:o,title:"Error"}),n(X.setRequest({key:t,type:e,status:"FAILURE",error:{code:r,message:o}}));}}function se(e){return t=>{let r=ft(e,t);return (o,n,a)=>(o(be(e,r)),Ee(a,"create",e)(t).then(i=>(i.ok===true?o(X.setCreateRequest({key:r,operation:"create",status:"SUCCESS",type:e,data:i.data})):o(Te(e,r,i.status,i.error)),i)))}}function Jo(e){return t=>{let r=ft(e,t[0]);return (o,n,a)=>(o(be(e,r)),Ee(a,"createBulk",e)(t).then(i=>(i.ok===true?o(X.setCreateRequest({key:r,operation:"createBulk",status:"SUCCESS",type:e,data:i.data})):o(Te(e,r,i.status,i.error)),i)))}}function Qt(e,t,r){return r.replace(new RegExp(e,"g"),t)}function en(e){return e.section_id!==void 0}function tn(e){return e.report_id!==void 0}function Zt(e){return t=>{let{create:r}=t;return (o,n,a)=>se(e)(r)(o,n,a).then(async i=>{if(i.ok){let{data:c}=i,{id:l}=c,{update:p}=t,u=sr(e,{id:l});if(o(be(e,`${u}`)),e==="block"&&en(r)){let m=produce(p,f=>{f.id=l;}),{contentByLocale:d}=m;d&&(m=produce(m,f=>{f.id=l,f.contentByLocale=Object.keys(d).reduce((M,h)=>{let C=d?d[h]:{};return M[h]={...C,id:l},M},{});}));let _=m.inputs?.map(f=>({type:f.type,id:f.id,inputAction:{operation:"create",input:{input_id:f.id,block_id:m.id}}}));return _&&_.length>0&&Xt(e)([m,..._])(o,n,a).then(()=>ae("section")({id:m.section_id,include:true})(o,n,a).then(f=>(f.ok&&o(X.setRequest({key:u,type:e,status:"SUCCESS",data:f.data})),f))),ee(e)(m)(o,n,a).then(f=>(f.ok&&o(X.setRequest({key:u,type:e,status:"SUCCESS",data:f.data})),f))}if(e==="section"&&tn(r)){let{id:m}=c,d=produce(p,f=>{f.id=m;}),{blocks:b}=d,_=b?.map(f=>({type:f.type,blockcol:f.blockcol,blockrow:f.blockrow,section_id:m,locales:Object.keys(f.contentByLocale).map(M=>M)}));return _&&b&&await Jo("block")(_)(o,n,a).then(f=>{if(f.ok){let M=f.data,h=[],C=M.map((z,I)=>{let k={...z},L=k.id,x=b[I];x.contentByLocale&&(k.contentByLocale=Object.keys(x.contentByLocale).reduce((y,E)=>{let S=x.contentByLocale[E];return y[E]={...S,content:{...S.content},id:k.id},y},{}));let{settings:B}=x,{contentByLocale:N,id:q}=k;k.settings=B;let H={id:q,contentByLocale:N,settings:B};return x.inputs.map(y=>y.id).reduce((y,E)=>{let S=b.findIndex(A=>A.id===E);return [...y,S]},[]).map(y=>({...M[y],originalBlock:b[y]})).forEach(y=>{let{id:E,type:S,originalBlock:A}=y;if([T.SELECTOR,T.VIZ].includes(S)){if(H.contentByLocale?.logic?.content?.api){let ie=H.contentByLocale?.logic.content.api;H.contentByLocale.logic.content.api=Qt(`(selector${A.id}id)`,`selector${E}id`,ie);}if(H.contentByLocale?.logic?.content?.logic){let ie=H.contentByLocale.logic.content.logic;H.contentByLocale.logic.content.logic=Qt(`(selector${A.id}id)`,`selector${E}id`,ie);}}h.push({id:E,inputAction:{operation:"create",input:{input_id:E,block_id:L}}});}),H});return Xt("block")([...C,...h])(o,n,a)}}),ee(e)(d)(o,n,a).then(f=>(f.ok&&o(X.setRequest({key:u,type:e,status:"SUCCESS",data:f.data})),f))}return ee(e)({...p,id:c.id})(o,n,a)}})}}function ae(e){return t=>{let r=or(e,t);return (o,n,a)=>{o(be(e,r));let s=Ee(a,"read",e);if(typeof s!="function"){let i=`Failed to get valid RPC method for entity "${e}"`;return o(Te(e,r,500,i)),Promise.reject(new Error(i))}return s(t).then(i=>(i.ok===true?o(X.setReadRequest({key:r,operation:"read",status:"SUCCESS",type:e,data:i.data})):o(Te(e,r,i.status,i.error)),i))}}}function ee(e){return t=>{let r=yt(e,t);return (o,n,a)=>(o(be(e,r)),Ee(a,"update",e)(t).then(i=>(i.ok===true?o(X.setUpdateRequest({key:r,operation:"update",status:"SUCCESS",type:e,data:i.data})):o(Te(e,r,i.status,i.error)),i)))}}function Xt(e){return t=>{let r=yt(e,t[0]);return (o,n,a)=>(o(be(e,r)),Ee(a,"updateBulk",e)(t).then(i=>(i.ok===true?o(X.setUpdateRequest({key:r,operation:"updateBulk",status:"SUCCESS",type:e,data:i.data})):o(Te(e,r,i.status,i.error)),i)))}}function Se(e){return t=>{let r=nr(e,t);return (o,n,a)=>(o(be(e,r)),Ee(a,"delete",e)(t).then(i=>{i.ok===true?o(X.setDeleteRequest({key:r,operation:"delete",status:"SUCCESS",type:e,data:i.data})):o(Te(e,r,i.status,i.error));}))}}function ft(e,t){if(e==="variant"){let r=t;return `create(variant, [${r.dimension_id}, ${r.name}])`}return `create(${e}, [${Object.keys(t)}])`}function or(e,t={}){let r=t.id==null?null:`'${t.id}'`;return `read(${e}, ${r}, ${!!t.include})`}function yt(e,t){let{id:r,...o}=t;return `update(${e}, ${r}, [${Object.keys(o)}])`}function nr(e,t){return `delete(${e}, ${t})`}function sr(e,t){let r=t.id==null?null:`'${t.id}'`;return `clone(${e}, ${r})`}var{setStatus:ar,setPreviews:rn,setSectionState:ir,resetSectionState:cr,setCurrentLocale:on,setPreferredLocale:nn,addRunConsumersRunning:lr,removeRunConsumersRunning:ur}=ke;function sn(e,t){return async(r,o,n)=>{let a=await n.validateVariantSlug({dimension:e,slug:t});if("error"in a)throw new Error(a.error);return a.data}}function an(e){return async(t,r,o)=>{let n=await o.searchReport(e);if("error"in n)throw new Error(n.error);return n.data}}function cn(){return async(e,t,r)=>{let o=await r.regenerateSearch(void 0);if("error"in o)throw new Error(o.error);return o.data}}function pr(e){return async(t,r,o)=>{let n=await o.readMember(e);if("error"in n)throw new Error(n.error);return n.data}}function ln(e){return async(t,r,o)=>{let n=await o.searchMember(e);if(n.ok===true)return n.data;throw new Error(n.error)}}async function dr(e,t,r,o){let n=r().status,a={...n,...o},s={...n.query,...o.query};Object.keys(s).forEach(c=>s[c]===void 0&&delete s[c]);let i={...a,query:s};t(ar(i)),n.activeSection&&t(mr(e,{query:s}));}function un(e,t){return async(r,o)=>dr(e,r,o,{query:{[t]:void 0}})}function pn(e,t,r){return async(o,n)=>dr(e,o,n,{query:{[t]:r}})}function mr(e,t){return async(r,o)=>{let n=o(),{currentLocale:a}=n.status,s=n.records.entities.block,i=e.formatterFunctions[a],c=e.datasourceFunctions,{parsedParams:l,statusPayload:p}=Lt(n.status,t),{sid:u,bid:m,previews:d,query:b}=l;Object.keys(p).length&&r(ke.setStatus(p));let _={...Yt(d),locale:a,...ve()},f={variables:_,query:b,locale:a};r(ke.addRunConsumersRunning([u]));let M=n.records.entities.section[u],h=async C=>r(pr(C));try{let C=await jt(s,M&&[M],m,i,f,void 0,h,"section",c),{variables:z,status:I}=C;r(Pt.setVariableChange({attributes:_,variables:z,status:I})),r(ke.removeRunConsumersRunning([u]));}catch(C){console.error("Error in runConsumers client side: recalculateVariables",C);}}}function dn(e){return async(t,r,o)=>{let n=await o.readMetadata(e);if("error"in n)throw new Error(n.error);return n.data}}function mn(e){return async(t,r,o)=>{let n=await o.urlProxy(e);if("error"in n)throw new Error(n.error);return n.data}}function fn(){return async(e,t,r)=>{let o=await r.searchRole("");if("error"in o)throw new Error(o.error);return o.data}}function yn(e){return async(t,r,o)=>{let n=await o.searchUser(e);if("error"in n)throw new Error(n.error);return n.data}}function Rn(e){return async(t,r,o)=>{let n=await o.readUser({user_id:e});if("error"in n)throw new Error(n.error);return n.data}}function gn({user:e}){return async(t,r,o)=>{let n=await o.updateUser(e);if("error"in n)throw new Error(n.error);return n.data}}function En(e){return async(t,r,o)=>{let n=await o.updateMyData(e);if("error"in n)throw new Error(n.error);return n.data}}function Sn(e){let{removeBlocks:t}=re.actions;return async r=>{await r(t(e));}}function Tn(e){let{addBlocks:t}=re.actions;return async r=>{await r(t(e));}}function bn(e){return async(t,r,o)=>{let n=await o.readPrivateBlocks({...e,roles:[]});if("error"in n)throw new Error(n.error);return n.data}}function An(e){return async(t,r,o)=>{let n=await o.revalidateUrl({target:e.target});if("error"in n)throw new Error(n.error);return n.data}}function hn(e){return async(t,r,o)=>{let n=await o.revalidateReport({reportId:e.reportId,profilePrefix:e.profilePrefix});if("error"in n)throw new Error(n.error);return n.data}}function xn(){return async(e,t,r)=>{let o=await r.readEnvSecrets({});if("error"in o)throw new Error(o.error);return o.data}}function Cn(){let{removeDataSourceLogic:e}=re.actions;return async t=>{await t(e());}}var {locales:Ln}=J(),Pn={pathSegment:"path",formatterFunctions:Ln.reduce((e,t)=>({...e,[t]:{}}),{}),datasourceFunctions:[],profilePrefix:"path",previewPrefix:null,siteProps:{}};createContext(Pn);J();var Xe=useDispatch,Me=useSelector;var Ar=e=>r=>{let{store:o,props:n}=Ge.useWrappedStore(r);return jsx(Provider,{store:o,children:jsx(e,{...n})})};export{Qe as actions,Ge as storeWrapper,Xe as useBespokeDispatch,Me as useBespokeSelector,Ar as withBespokeStore};
|
package/dist/report.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.
|
|
1
|
+
.vt{position:"absolute";top:"50%";z-index:10;opacity:.55}.vt:hover{opacity:1}.vt[data-direction=left]{left:16px}.vt[data-direction=right]{right:16px}.Ht{table-layout:fixed}.It{min-height:100px;max-height:350px;overflow-x:"auto";background:red}.Jt{padding:5px!important;text-wrap:wrap}.qt{display:block}@media(min-width:1000px){.qt{display:none}}.At{display:none}@media(min-width:1000px){.At{display:block}}.Bt.Ct{font-size:11px;padding:0}.Bt.Ct .Kt{background-color:transparent!important;padding:0}.kt .Lt{border-bottom:0}.kt .Mt{padding:2px}.kt .Nt{padding:0}.kt .Ot{margin-right:4px}.zt{display:flex;gap:1rem;align-items:center;list-style-type:none}.zt[data-align=left]{justify-content:flex-start}.zt[data-align=center]{justify-content:center}.zt[data-align=right]{justify-content:flex-end}.jt{display:flex}.jt[data-align=left]{justify-content:flex-start}.jt[data-align=center]{justify-content:center}.jt[data-align=right]{justify-content:flex-end}.jt li{margin-right:1rem}.Dt{display:flex}.Dt .chart{flex:1 1 100%}.Pt{border-radius:4px;transform:translate(-50%);z-index:20}.Et{flex-direction:column}@media(min-width:62em){.Et{flex-direction:row}}.Ft{max-width:100%;min-width:unset}@media(min-width:62em){.Ft{max-width:var(--column-max-width);min-width:300px}}.Gt{position:relative}.Gt:before{content:"";position:absolute;top:.25rem;bottom:.25rem;left:calc(.875rem + var(--level) * 1.5rem);width:.0625rem;background-color:#dee2e6;z-index:0}
|