diff --git a/api/generated-schema.graphql b/api/generated-schema.graphql
index a17ae1ee06..f5d6b0dcea 100644
--- a/api/generated-schema.graphql
+++ b/api/generated-schema.graphql
@@ -939,6 +939,11 @@ type BrandingConfig {
"""
bannerImage: String
+ """
+ Built-in case model value written to case-model.cfg when no custom override is supplied.
+ """
+ caseModel: String
+
"""
Case model image source. Supports local path, remote URL, or data URI/base64.
"""
@@ -1425,6 +1430,7 @@ input BrandingConfigInput {
showBannerGradient: Boolean
theme: String
bannerImage: String
+ caseModel: String
caseModelImage: String
partnerLogoLightUrl: String
partnerLogoDarkUrl: String
diff --git a/api/src/unraid-api/graph/resolvers/customization/activation-code.model.ts b/api/src/unraid-api/graph/resolvers/customization/activation-code.model.ts
index a3ea1de5ed..aa8bf8741d 100644
--- a/api/src/unraid-api/graph/resolvers/customization/activation-code.model.ts
+++ b/api/src/unraid-api/graph/resolvers/customization/activation-code.model.ts
@@ -145,6 +145,16 @@ export class BrandingConfig {
@Transform(({ value }) => sanitizeString(value))
bannerImage?: string | null;
+ @Field(() => String, {
+ nullable: true,
+ description:
+ 'Built-in case model value written to case-model.cfg when no custom override is supplied.',
+ })
+ @IsOptional()
+ @IsString()
+ @Transform(({ value }) => sanitizeString(value))
+ caseModel?: string | null;
+
@Field(() => String, {
nullable: true,
description: 'Case model image source. Supports local path, remote URL, or data URI/base64.',
diff --git a/api/src/unraid-api/graph/resolvers/customization/onboarding.service.spec.ts b/api/src/unraid-api/graph/resolvers/customization/onboarding.service.spec.ts
index e510b2fccc..79ad738de2 100644
--- a/api/src/unraid-api/graph/resolvers/customization/onboarding.service.spec.ts
+++ b/api/src/unraid-api/graph/resolvers/customization/onboarding.service.spec.ts
@@ -948,6 +948,27 @@ describe('OnboardingService', () => {
);
});
+ it('applyCaseModelConfig should write the built-in case model when no custom asset exists', async () => {
+ (service as any).activationData = plainToInstance(ActivationCode, {
+ ...mockActivationData,
+ branding: {
+ ...mockActivationData.branding,
+ caseModel: 'mid-tower',
+ caseModelImage: null,
+ },
+ });
+ (service as any).materializedPartnerMedia = {
+ banner: true,
+ caseModel: false,
+ };
+ vi.mocked(fileExists).mockResolvedValue(false);
+
+ await (service as any).applyCaseModelConfig();
+
+ expect(fs.writeFile).toHaveBeenCalledWith(caseModelCfg, 'mid-tower');
+ expect(loggerLogSpy).toHaveBeenCalledWith(`Case model set to mid-tower in ${caseModelCfg}`);
+ });
+
it('applyServerIdentity should call emcmd directly', async () => {
const updateSpy = vi.spyOn(service as any, 'updateCfgFile');
@@ -1478,7 +1499,7 @@ describe('applyActivationCustomizations specific tests', () => {
)
);
expect(loggerLogSpy).toHaveBeenCalledWith(
- 'No partner case-model image configured in activation code, skipping case model setup.'
+ 'No partner case-model configured in activation code, skipping case model setup.'
);
// Other steps should still run
diff --git a/api/src/unraid-api/graph/resolvers/customization/onboarding.service.ts b/api/src/unraid-api/graph/resolvers/customization/onboarding.service.ts
index 1863183c8a..5f798d715a 100644
--- a/api/src/unraid-api/graph/resolvers/customization/onboarding.service.ts
+++ b/api/src/unraid-api/graph/resolvers/customization/onboarding.service.ts
@@ -782,9 +782,10 @@ export class OnboardingService implements OnModuleInit {
this.logger.warn('No activation data available for case model setup.');
return;
}
- if (!this.materializedPartnerMedia.caseModel) {
+ const configuredCaseModel = this.activationData.branding?.caseModel?.trim() ?? '';
+ if (!this.materializedPartnerMedia.caseModel && !configuredCaseModel) {
this.logger.log(
- 'No partner case-model image configured in activation code, skipping case model setup.'
+ 'No partner case-model configured in activation code, skipping case model setup.'
);
return;
}
@@ -805,6 +806,10 @@ export class OnboardingService implements OnModuleInit {
await fs.mkdir(path.dirname(this.caseModelCfg), { recursive: true });
await fs.writeFile(this.caseModelCfg, modelToSet);
this.logger.log(`Case model set to ${modelToSet} in ${this.caseModelCfg}`);
+ } else if (configuredCaseModel) {
+ await fs.mkdir(path.dirname(this.caseModelCfg), { recursive: true });
+ await fs.writeFile(this.caseModelCfg, configuredCaseModel);
+ this.logger.log(`Case model set to ${configuredCaseModel} in ${this.caseModelCfg}`);
} else {
this.logger.log('No custom case model file found in activation assets.');
}
diff --git a/api/src/unraid-api/graph/resolvers/onboarding/onboarding.model.ts b/api/src/unraid-api/graph/resolvers/onboarding/onboarding.model.ts
index dadfe46f06..f16f5534a8 100644
--- a/api/src/unraid-api/graph/resolvers/onboarding/onboarding.model.ts
+++ b/api/src/unraid-api/graph/resolvers/onboarding/onboarding.model.ts
@@ -113,6 +113,11 @@ export class BrandingConfigInput {
@IsString()
bannerImage?: string;
+ @Field(() => String, { nullable: true })
+ @IsOptional()
+ @IsString()
+ caseModel?: string;
+
@Field(() => String, { nullable: true })
@IsOptional()
@IsString()
diff --git a/web/src/components/Onboarding/graphql/activationCode.query.ts b/web/src/components/Onboarding/graphql/activationCode.query.ts
index c55faebaa5..6f4d5be232 100644
--- a/web/src/components/Onboarding/graphql/activationCode.query.ts
+++ b/web/src/components/Onboarding/graphql/activationCode.query.ts
@@ -23,6 +23,7 @@ export const ACTIVATION_CODE_QUERY = parse(/* GraphQL */ `
showBannerGradient
theme
bannerImage
+ caseModel
caseModelImage
partnerLogoLightUrl
partnerLogoDarkUrl
diff --git a/web/src/components/Onboarding/standalone/OnboardingAdminPanel.standalone.vue b/web/src/components/Onboarding/standalone/OnboardingAdminPanel.standalone.vue
index 1b050cea1a..bcbe62d2cd 100644
--- a/web/src/components/Onboarding/standalone/OnboardingAdminPanel.standalone.vue
+++ b/web/src/components/Onboarding/standalone/OnboardingAdminPanel.standalone.vue
@@ -79,6 +79,7 @@ type PartnerConfigPayload = {
type BrandingConfigPayload = {
bannerImage?: string;
+ caseModel?: string;
caseModelImage?: string;
partnerLogoLightUrl?: string;
partnerLogoDarkUrl?: string;
@@ -140,6 +141,7 @@ const genericPartnerConfig: PartnerConfigPayload = {
const genericBrandingConfig: BrandingConfigPayload = {
bannerImage: './assets/banner.png',
+ caseModel: 'mid-tower',
caseModelImage: './assets/case-model.png',
partnerLogoLightUrl: './assets/partner-logo-light.svg',
partnerLogoDarkUrl: './assets/partner-logo-dark.svg',
@@ -1026,6 +1028,16 @@ const currentRegistrationState = computed({
Banner image source (optional): relative path, URL, data URI, or base64
+
| activationCode.branding.caseModelImage |
diff --git a/web/src/composables/gql/gql.ts b/web/src/composables/gql/gql.ts
index 9aab9a29b9..5267cbd49b 100644
--- a/web/src/composables/gql/gql.ts
+++ b/web/src/composables/gql/gql.ts
@@ -65,7 +65,7 @@ type Documents = {
"\n subscription NotificationAddedSub {\n notificationAdded {\n ...NotificationFragment\n }\n }\n": typeof types.NotificationAddedSubDocument,
"\n subscription NotificationOverviewSub {\n notificationsOverview {\n archive {\n ...NotificationCountFragment\n }\n unread {\n ...NotificationCountFragment\n }\n }\n }\n": typeof types.NotificationOverviewSubDocument,
"\n subscription NotificationsWarningsAndAlertsSub {\n notificationsWarningsAndAlerts {\n ...NotificationFragment\n }\n }\n": typeof types.NotificationsWarningsAndAlertsSubDocument,
- "\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n": typeof types.ActivationCodeDocument,
+ "\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModel\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n": typeof types.ActivationCodeDocument,
"\n query Onboarding {\n customization {\n onboarding {\n status\n isPartnerBuild\n completed\n completedAtVersion\n }\n }\n }\n": typeof types.OnboardingDocument,
"\n query GetAvailableLanguages {\n customization {\n availableLanguages {\n code\n name\n url\n }\n }\n }\n": typeof types.GetAvailableLanguagesDocument,
"\n mutation CompleteOnboarding {\n onboarding {\n completeOnboarding {\n status\n isPartnerBuild\n completed\n completedAtVersion\n }\n }\n }\n": typeof types.CompleteOnboardingDocument,
@@ -150,7 +150,7 @@ const documents: Documents = {
"\n subscription NotificationAddedSub {\n notificationAdded {\n ...NotificationFragment\n }\n }\n": types.NotificationAddedSubDocument,
"\n subscription NotificationOverviewSub {\n notificationsOverview {\n archive {\n ...NotificationCountFragment\n }\n unread {\n ...NotificationCountFragment\n }\n }\n }\n": types.NotificationOverviewSubDocument,
"\n subscription NotificationsWarningsAndAlertsSub {\n notificationsWarningsAndAlerts {\n ...NotificationFragment\n }\n }\n": types.NotificationsWarningsAndAlertsSubDocument,
- "\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n": types.ActivationCodeDocument,
+ "\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModel\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n": types.ActivationCodeDocument,
"\n query Onboarding {\n customization {\n onboarding {\n status\n isPartnerBuild\n completed\n completedAtVersion\n }\n }\n }\n": types.OnboardingDocument,
"\n query GetAvailableLanguages {\n customization {\n availableLanguages {\n code\n name\n url\n }\n }\n }\n": types.GetAvailableLanguagesDocument,
"\n mutation CompleteOnboarding {\n onboarding {\n completeOnboarding {\n status\n isPartnerBuild\n completed\n completedAtVersion\n }\n }\n }\n": types.CompleteOnboardingDocument,
@@ -405,7 +405,7 @@ export function graphql(source: "\n subscription NotificationsWarningsAndAlerts
/**
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
*/
-export function graphql(source: "\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n"): (typeof documents)["\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n"];
+export function graphql(source: "\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModel\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n"): (typeof documents)["\n query ActivationCode {\n customization {\n activationCode {\n code\n partner {\n name\n url\n hardwareSpecsUrl\n manualUrl\n supportUrl\n extraLinks {\n title\n url\n }\n }\n branding {\n header\n headermetacolor\n background\n showBannerGradient\n theme\n bannerImage\n caseModel\n caseModelImage\n partnerLogoLightUrl\n partnerLogoDarkUrl\n hasPartnerLogo\n onboardingTitle\n onboardingSubtitle\n onboardingTitleFreshInstall\n onboardingSubtitleFreshInstall\n onboardingTitleUpgrade\n onboardingSubtitleUpgrade\n onboardingTitleDowngrade\n onboardingSubtitleDowngrade\n onboardingTitleIncomplete\n onboardingSubtitleIncomplete\n }\n system {\n serverName\n model\n }\n }\n onboarding {\n onboardingState {\n registrationState\n isRegistered\n isFreshInstall\n hasActivationCode\n activationRequired\n }\n }\n }\n }\n"];
/**
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
*/
diff --git a/web/src/composables/gql/graphql.ts b/web/src/composables/gql/graphql.ts
index 14ba4c5a20..6165ee2024 100644
--- a/web/src/composables/gql/graphql.ts
+++ b/web/src/composables/gql/graphql.ts
@@ -413,6 +413,8 @@ export type BrandingConfig = {
background?: Maybe;
/** Banner image source. Supports local path, remote URL, or data URI/base64. */
bannerImage?: Maybe;
+ /** Built-in case model value written to case-model.cfg when no custom override is supplied. */
+ caseModel?: Maybe;
/** Case model image source. Supports local path, remote URL, or data URI/base64. */
caseModelImage?: Maybe;
/** Indicates if a partner logo exists */
@@ -450,6 +452,7 @@ export type BrandingConfig = {
export type BrandingConfigInput = {
background?: InputMaybe;
bannerImage?: InputMaybe;
+ caseModel?: InputMaybe;
caseModelImage?: InputMaybe;
hasPartnerLogo?: InputMaybe;
header?: InputMaybe;
@@ -3841,7 +3844,7 @@ export type NotificationsWarningsAndAlertsSubSubscription = { __typename?: 'Subs
export type ActivationCodeQueryVariables = Exact<{ [key: string]: never; }>;
-export type ActivationCodeQuery = { __typename?: 'Query', customization?: { __typename?: 'Customization', activationCode?: { __typename?: 'ActivationCode', code?: string | null, partner?: { __typename?: 'PartnerConfig', name?: string | null, url?: string | null, hardwareSpecsUrl?: string | null, manualUrl?: string | null, supportUrl?: string | null, extraLinks?: Array<{ __typename?: 'PartnerLink', title: string, url: string }> | null } | null, branding?: { __typename?: 'BrandingConfig', header?: string | null, headermetacolor?: string | null, background?: string | null, showBannerGradient?: boolean | null, theme?: string | null, bannerImage?: string | null, caseModelImage?: string | null, partnerLogoLightUrl?: string | null, partnerLogoDarkUrl?: string | null, hasPartnerLogo?: boolean | null, onboardingTitle?: string | null, onboardingSubtitle?: string | null, onboardingTitleFreshInstall?: string | null, onboardingSubtitleFreshInstall?: string | null, onboardingTitleUpgrade?: string | null, onboardingSubtitleUpgrade?: string | null, onboardingTitleDowngrade?: string | null, onboardingSubtitleDowngrade?: string | null, onboardingTitleIncomplete?: string | null, onboardingSubtitleIncomplete?: string | null } | null, system?: { __typename?: 'SystemConfig', serverName?: string | null, model?: string | null } | null } | null, onboarding: { __typename?: 'Onboarding', onboardingState: { __typename?: 'OnboardingState', registrationState?: RegistrationState | null, isRegistered: boolean, isFreshInstall: boolean, hasActivationCode: boolean, activationRequired: boolean } } } | null };
+export type ActivationCodeQuery = { __typename?: 'Query', customization?: { __typename?: 'Customization', activationCode?: { __typename?: 'ActivationCode', code?: string | null, partner?: { __typename?: 'PartnerConfig', name?: string | null, url?: string | null, hardwareSpecsUrl?: string | null, manualUrl?: string | null, supportUrl?: string | null, extraLinks?: Array<{ __typename?: 'PartnerLink', title: string, url: string }> | null } | null, branding?: { __typename?: 'BrandingConfig', header?: string | null, headermetacolor?: string | null, background?: string | null, showBannerGradient?: boolean | null, theme?: string | null, bannerImage?: string | null, caseModel?: string | null, caseModelImage?: string | null, partnerLogoLightUrl?: string | null, partnerLogoDarkUrl?: string | null, hasPartnerLogo?: boolean | null, onboardingTitle?: string | null, onboardingSubtitle?: string | null, onboardingTitleFreshInstall?: string | null, onboardingSubtitleFreshInstall?: string | null, onboardingTitleUpgrade?: string | null, onboardingSubtitleUpgrade?: string | null, onboardingTitleDowngrade?: string | null, onboardingSubtitleDowngrade?: string | null, onboardingTitleIncomplete?: string | null, onboardingSubtitleIncomplete?: string | null } | null, system?: { __typename?: 'SystemConfig', serverName?: string | null, model?: string | null } | null } | null, onboarding: { __typename?: 'Onboarding', onboardingState: { __typename?: 'OnboardingState', registrationState?: RegistrationState | null, isRegistered: boolean, isFreshInstall: boolean, hasActivationCode: boolean, activationRequired: boolean } } } | null };
export type OnboardingQueryVariables = Exact<{ [key: string]: never; }>;
@@ -4079,7 +4082,7 @@ export const NotifyIfUniqueDocument = {"kind":"Document","definitions":[{"kind":
export const NotificationAddedSubDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"subscription","name":{"kind":"Name","value":"NotificationAddedSub"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"notificationAdded"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"NotificationFragment"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"NotificationFragment"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"Notification"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"subject"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"importance"}},{"kind":"Field","name":{"kind":"Name","value":"link"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"timestamp"}},{"kind":"Field","name":{"kind":"Name","value":"formattedTimestamp"}}]}}]} as unknown as DocumentNode;
export const NotificationOverviewSubDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"subscription","name":{"kind":"Name","value":"NotificationOverviewSub"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"notificationsOverview"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"archive"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"NotificationCountFragment"}}]}},{"kind":"Field","name":{"kind":"Name","value":"unread"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"NotificationCountFragment"}}]}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"NotificationCountFragment"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"NotificationCounts"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"total"}},{"kind":"Field","name":{"kind":"Name","value":"info"}},{"kind":"Field","name":{"kind":"Name","value":"warning"}},{"kind":"Field","name":{"kind":"Name","value":"alert"}}]}}]} as unknown as DocumentNode;
export const NotificationsWarningsAndAlertsSubDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"subscription","name":{"kind":"Name","value":"NotificationsWarningsAndAlertsSub"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"notificationsWarningsAndAlerts"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"NotificationFragment"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"NotificationFragment"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"Notification"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"subject"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"importance"}},{"kind":"Field","name":{"kind":"Name","value":"link"}},{"kind":"Field","name":{"kind":"Name","value":"type"}},{"kind":"Field","name":{"kind":"Name","value":"timestamp"}},{"kind":"Field","name":{"kind":"Name","value":"formattedTimestamp"}}]}}]} as unknown as DocumentNode;
-export const ActivationCodeDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"ActivationCode"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"customization"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"activationCode"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"code"}},{"kind":"Field","name":{"kind":"Name","value":"partner"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"url"}},{"kind":"Field","name":{"kind":"Name","value":"hardwareSpecsUrl"}},{"kind":"Field","name":{"kind":"Name","value":"manualUrl"}},{"kind":"Field","name":{"kind":"Name","value":"supportUrl"}},{"kind":"Field","name":{"kind":"Name","value":"extraLinks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"url"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"branding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"header"}},{"kind":"Field","name":{"kind":"Name","value":"headermetacolor"}},{"kind":"Field","name":{"kind":"Name","value":"background"}},{"kind":"Field","name":{"kind":"Name","value":"showBannerGradient"}},{"kind":"Field","name":{"kind":"Name","value":"theme"}},{"kind":"Field","name":{"kind":"Name","value":"bannerImage"}},{"kind":"Field","name":{"kind":"Name","value":"caseModelImage"}},{"kind":"Field","name":{"kind":"Name","value":"partnerLogoLightUrl"}},{"kind":"Field","name":{"kind":"Name","value":"partnerLogoDarkUrl"}},{"kind":"Field","name":{"kind":"Name","value":"hasPartnerLogo"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitle"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitle"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleFreshInstall"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleFreshInstall"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleUpgrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleUpgrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleDowngrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleDowngrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleIncomplete"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleIncomplete"}}]}},{"kind":"Field","name":{"kind":"Name","value":"system"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"serverName"}},{"kind":"Field","name":{"kind":"Name","value":"model"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"onboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"onboardingState"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"registrationState"}},{"kind":"Field","name":{"kind":"Name","value":"isRegistered"}},{"kind":"Field","name":{"kind":"Name","value":"isFreshInstall"}},{"kind":"Field","name":{"kind":"Name","value":"hasActivationCode"}},{"kind":"Field","name":{"kind":"Name","value":"activationRequired"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
+export const ActivationCodeDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"ActivationCode"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"customization"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"activationCode"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"code"}},{"kind":"Field","name":{"kind":"Name","value":"partner"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"url"}},{"kind":"Field","name":{"kind":"Name","value":"hardwareSpecsUrl"}},{"kind":"Field","name":{"kind":"Name","value":"manualUrl"}},{"kind":"Field","name":{"kind":"Name","value":"supportUrl"}},{"kind":"Field","name":{"kind":"Name","value":"extraLinks"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"url"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"branding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"header"}},{"kind":"Field","name":{"kind":"Name","value":"headermetacolor"}},{"kind":"Field","name":{"kind":"Name","value":"background"}},{"kind":"Field","name":{"kind":"Name","value":"showBannerGradient"}},{"kind":"Field","name":{"kind":"Name","value":"theme"}},{"kind":"Field","name":{"kind":"Name","value":"bannerImage"}},{"kind":"Field","name":{"kind":"Name","value":"caseModel"}},{"kind":"Field","name":{"kind":"Name","value":"caseModelImage"}},{"kind":"Field","name":{"kind":"Name","value":"partnerLogoLightUrl"}},{"kind":"Field","name":{"kind":"Name","value":"partnerLogoDarkUrl"}},{"kind":"Field","name":{"kind":"Name","value":"hasPartnerLogo"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitle"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitle"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleFreshInstall"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleFreshInstall"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleUpgrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleUpgrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleDowngrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleDowngrade"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingTitleIncomplete"}},{"kind":"Field","name":{"kind":"Name","value":"onboardingSubtitleIncomplete"}}]}},{"kind":"Field","name":{"kind":"Name","value":"system"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"serverName"}},{"kind":"Field","name":{"kind":"Name","value":"model"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"onboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"onboardingState"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"registrationState"}},{"kind":"Field","name":{"kind":"Name","value":"isRegistered"}},{"kind":"Field","name":{"kind":"Name","value":"isFreshInstall"}},{"kind":"Field","name":{"kind":"Name","value":"hasActivationCode"}},{"kind":"Field","name":{"kind":"Name","value":"activationRequired"}}]}}]}}]}}]}}]} as unknown as DocumentNode;
export const OnboardingDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"Onboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"customization"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"onboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"isPartnerBuild"}},{"kind":"Field","name":{"kind":"Name","value":"completed"}},{"kind":"Field","name":{"kind":"Name","value":"completedAtVersion"}}]}}]}}]}}]} as unknown as DocumentNode;
export const GetAvailableLanguagesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetAvailableLanguages"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"customization"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"availableLanguages"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"code"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"url"}}]}}]}}]}}]} as unknown as DocumentNode;
export const CompleteOnboardingDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"CompleteOnboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"onboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"completeOnboarding"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"status"}},{"kind":"Field","name":{"kind":"Name","value":"isPartnerBuild"}},{"kind":"Field","name":{"kind":"Name","value":"completed"}},{"kind":"Field","name":{"kind":"Name","value":"completedAtVersion"}}]}}]}}]}}]} as unknown as DocumentNode;
|