import { basePath, csrfToken, apiFetch, escapeHtml, debounce } from 'ect/client-core';
import { applyTheme, initializeTheme } from 'ect/theme';
import { initializeGlobalNavigation } from 'ect/global-navigation';
import { normalizeCardLayout, cardImageTreatment, cardImagePreviewTreatment, cardImageLayoutClasses, cardImageLayoutDataAttrs } from 'ect/card-layout';
import { initializeFieldLimits } from 'ect/field-limits';
import { initializeCreateDeckDialog } from 'ect/create-deck-dialog';
import { initializeLocalNavigation } from 'ect/local-navigation';
import { initializeCardPreview } from 'ect/card-preview';
import { initializePolicyColorFilter } from 'ect/policy-color-filter';
import { initializeAccountRoleRequest } from 'ect/role-request';
import { initializeAccentPicker } from 'ect/accent-picker';
import { observeViewport } from 'ect/viewport-ui';

observeViewport();
initializeTheme();
initializeGlobalNavigation();
initializeFieldLimits();
initializeCreateDeckDialog();
initializeLocalNavigation();
initializeCardPreview();
initializePolicyColorFilter();
initializeAccountRoleRequest();
initializeAccentPicker();

export { basePath, csrfToken, apiFetch, applyTheme, escapeHtml, debounce, normalizeCardLayout, cardImageTreatment, cardImagePreviewTreatment, cardImageLayoutClasses, cardImageLayoutDataAttrs };
