Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions projects/ngx-translate/src/lib/translate.pipe.ts
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,10 @@ export class TranslatePipe implements PipeTransform, OnDestroy {
});
}

if (this.translate.hideBeforeDisplay && this.value === query) {
return "";
}

return this.value;
}

Expand Down
2 changes: 2 additions & 0 deletions projects/ngx-translate/src/lib/translate.providers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ export interface ChildTranslateServiceConfig extends Partial<TranslateProviders>
export interface RootTranslateServiceConfig extends ChildTranslateServiceConfig {
fallbackLang?: Language;
lang?: Language;
hideBeforeDisplay?: boolean;

/* @deprecated use `fallbackLang` */
useDefaultLang?: boolean;
Expand Down Expand Up @@ -109,6 +110,7 @@ export function defaultProviders(
fallbackLang: config.fallbackLang ?? null,
lang: config.lang,
extend: config.extend ?? false,
hideBeforeDisplay: config.hideBeforeDisplay ?? false,
};

providers.push({
Expand Down
6 changes: 6 additions & 0 deletions projects/ngx-translate/src/lib/translate.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ export interface TranslateServiceConfig {
lang?: Language;
fallbackLang?: Language | null;
extend: boolean;
hideBeforeDisplay?: boolean;
}

export const TRANSLATE_SERVICE_CONFIG = new InjectionToken<TranslateServiceConfig>(
Expand Down Expand Up @@ -186,6 +187,7 @@ export class TranslateService implements ITranslateService {
private store: TranslateStore = inject(TranslateStore);

private readonly extend: boolean = false;
public readonly hideBeforeDisplay: boolean = false;

/**
* An Observable to listen to translation change events
Expand Down Expand Up @@ -245,6 +247,10 @@ export class TranslateService implements ITranslateService {
if (config.extend) {
this.extend = true;
}

if (config.hideBeforeDisplay) {
this.hideBeforeDisplay = true;
}
}

/**
Expand Down
42 changes: 23 additions & 19 deletions projects/ngx-translate/src/tests/translate.providers.spec.ts
Original file line number Diff line number Diff line change
@@ -1,36 +1,36 @@
import { TestBed } from "@angular/core/testing";
import { Observable, of } from "rxjs";
import {
provideTranslateService,
ChildTranslateServiceConfig,
defaultProviders,
provideChildTranslateService,
provideTranslateLoader,
provideMissingTranslationHandler,
provideTranslateCompiler,
provideTranslateLoader,
provideTranslateParser,
provideMissingTranslationHandler,
defaultProviders,
provideTranslateService,
RootTranslateServiceConfig,
ChildTranslateServiceConfig,
} from "../lib/translate.providers";
import { Observable, of } from "rxjs";

import {
TranslateService,
TRANSLATE_SERVICE_CONFIG,
TranslationObject,
InterpolationParameters,
InterpolatableTranslationObject,
} from "../lib/translate.service";
import { TranslateLoader, TranslateNoOpLoader } from "../lib/translate.loader";
DefaultMissingTranslationHandler,
MissingTranslationHandler,
MissingTranslationHandlerParams,
} from "../lib/missing-translation-handler";
import { TranslateCompiler, TranslateNoOpCompiler } from "../lib/translate.compiler";
import { TranslateLoader, TranslateNoOpLoader } from "../lib/translate.loader";
import {
TranslateParser,
TranslateDefaultParser,
InterpolateFunction,
TranslateDefaultParser,
TranslateParser,
} from "../lib/translate.parser";
import {
MissingTranslationHandler,
DefaultMissingTranslationHandler,
MissingTranslationHandlerParams,
} from "../lib/missing-translation-handler";
InterpolatableTranslationObject,
InterpolationParameters,
TRANSLATE_SERVICE_CONFIG,
TranslateService,
TranslationObject,
} from "../lib/translate.service";
import { TranslateStore } from "../lib/translate.store";

class TestTranslateLoader extends TranslateLoader {
Expand Down Expand Up @@ -107,6 +107,7 @@ describe("Translate Providers", () => {
fallbackLang: null,
lang: undefined,
extend: true,
hideBeforeDisplay: false,
},
},
{
Expand Down Expand Up @@ -138,6 +139,7 @@ describe("Translate Providers", () => {
fallbackLang: null,
lang: undefined,
extend: false,
hideBeforeDisplay: false,
},
},
{
Expand Down Expand Up @@ -172,6 +174,7 @@ describe("Translate Providers", () => {
fallbackLang: null,
lang: undefined,
extend: false,
hideBeforeDisplay: false,
},
},
{
Expand Down Expand Up @@ -211,6 +214,7 @@ describe("Translate Providers", () => {
fallbackLang: null,
lang: undefined,
extend: true,
hideBeforeDisplay: false,
},
},
{
Expand Down