import './polyfills.server.mjs'; import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, Inject, Injectable, InjectionToken, Input, NgModule, Pipe, concat, concatMap, defer, forkJoin, isObservable, map, of, setClassMetadata, shareReplay, switchMap, take, ɵɵdefineDirective, ɵɵdefineInjectable, ɵɵdefineInjector, ɵɵdefineNgModule, ɵɵdefinePipe, ɵɵdirectiveInject, ɵɵgetInheritedFactory, ɵɵinject } from "./chunk-LDYM667O.mjs"; import { __spreadValues } from "./chunk-SDCGKQVP.mjs"; // src/environments/environment.ts var environment = { production: false, siteUrl: "https://test.immoresult.com", backend_url: "https://test.immoresult.com/api/v1", recaptcha_sitekey: "6Lco0gMqAAAAACkLqBcnstZGC2PpRamLwYcXkqav", appTitle: "ImmoResult", max: { property_image_size: 20, // MiB per property photo; keep aligned with MAX_PROPERTY_FILE_SIZE_MB on the backend agency_logo_size: 5, // MiB agent_photo_size: 5, // MiB max_property_files: 6, max_video_size: 100 //mb }, innovaitagence_url: "https://innovaitagence.com/", game_prix_immobilier_active: true }; // node_modules/@ngx-translate/core/fesm2020/ngx-translate-core.mjs var TranslateLoader = class { }; var TranslateFakeLoader = class extends TranslateLoader { getTranslation(lang) { return of({}); } }; TranslateFakeLoader.\u0275fac = /* @__PURE__ */ (() => { let \u0275TranslateFakeLoader_BaseFactory; return function TranslateFakeLoader_Factory(t) { return (\u0275TranslateFakeLoader_BaseFactory || (\u0275TranslateFakeLoader_BaseFactory = \u0275\u0275getInheritedFactory(TranslateFakeLoader)))(t || TranslateFakeLoader); }; })(); TranslateFakeLoader.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: TranslateFakeLoader, factory: TranslateFakeLoader.\u0275fac }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslateFakeLoader, [{ type: Injectable }], null, null); })(); var MissingTranslationHandler = class { }; var FakeMissingTranslationHandler = class { handle(params) { return params.key; } }; FakeMissingTranslationHandler.\u0275fac = function FakeMissingTranslationHandler_Factory(t) { return new (t || FakeMissingTranslationHandler)(); }; FakeMissingTranslationHandler.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: FakeMissingTranslationHandler, factory: FakeMissingTranslationHandler.\u0275fac }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(FakeMissingTranslationHandler, [{ type: Injectable }], null, null); })(); function equals(o1, o2) { if (o1 === o2) return true; if (o1 === null || o2 === null) return false; if (o1 !== o1 && o2 !== o2) return true; let t1 = typeof o1, t2 = typeof o2, length, key, keySet; if (t1 == t2 && t1 == "object") { if (Array.isArray(o1)) { if (!Array.isArray(o2)) return false; if ((length = o1.length) == o2.length) { for (key = 0; key < length; key++) { if (!equals(o1[key], o2[key])) return false; } return true; } } else { if (Array.isArray(o2)) { return false; } keySet = /* @__PURE__ */ Object.create(null); for (key in o1) { if (!equals(o1[key], o2[key])) { return false; } keySet[key] = true; } for (key in o2) { if (!(key in keySet) && typeof o2[key] !== "undefined") { return false; } } return true; } } return false; } function isDefined(value) { return typeof value !== "undefined" && value !== null; } function isObject(item) { return item && typeof item === "object" && !Array.isArray(item); } function mergeDeep(target, source) { let output = Object.assign({}, target); if (isObject(target) && isObject(source)) { Object.keys(source).forEach((key) => { if (isObject(source[key])) { if (!(key in target)) { Object.assign(output, { [key]: source[key] }); } else { output[key] = mergeDeep(target[key], source[key]); } } else { Object.assign(output, { [key]: source[key] }); } }); } return output; } var TranslateParser = class { }; var TranslateDefaultParser = class extends TranslateParser { constructor() { super(...arguments); this.templateMatcher = /{{\s?([^{}\s]*)\s?}}/g; } interpolate(expr, params) { let result; if (typeof expr === "string") { result = this.interpolateString(expr, params); } else if (typeof expr === "function") { result = this.interpolateFunction(expr, params); } else { result = expr; } return result; } getValue(target, key) { let keys = typeof key === "string" ? key.split(".") : [key]; key = ""; do { key += keys.shift(); if (isDefined(target) && isDefined(target[key]) && (typeof target[key] === "object" || !keys.length)) { target = target[key]; key = ""; } else if (!keys.length) { target = void 0; } else { key += "."; } } while (keys.length); return target; } interpolateFunction(fn, params) { return fn(params); } interpolateString(expr, params) { if (!params) { return expr; } return expr.replace(this.templateMatcher, (substring, b) => { let r = this.getValue(params, b); return isDefined(r) ? r : substring; }); } }; TranslateDefaultParser.\u0275fac = /* @__PURE__ */ (() => { let \u0275TranslateDefaultParser_BaseFactory; return function TranslateDefaultParser_Factory(t) { return (\u0275TranslateDefaultParser_BaseFactory || (\u0275TranslateDefaultParser_BaseFactory = \u0275\u0275getInheritedFactory(TranslateDefaultParser)))(t || TranslateDefaultParser); }; })(); TranslateDefaultParser.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: TranslateDefaultParser, factory: TranslateDefaultParser.\u0275fac }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslateDefaultParser, [{ type: Injectable }], null, null); })(); var TranslateCompiler = class { }; var TranslateFakeCompiler = class extends TranslateCompiler { compile(value, lang) { return value; } compileTranslations(translations, lang) { return translations; } }; TranslateFakeCompiler.\u0275fac = /* @__PURE__ */ (() => { let \u0275TranslateFakeCompiler_BaseFactory; return function TranslateFakeCompiler_Factory(t) { return (\u0275TranslateFakeCompiler_BaseFactory || (\u0275TranslateFakeCompiler_BaseFactory = \u0275\u0275getInheritedFactory(TranslateFakeCompiler)))(t || TranslateFakeCompiler); }; })(); TranslateFakeCompiler.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: TranslateFakeCompiler, factory: TranslateFakeCompiler.\u0275fac }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslateFakeCompiler, [{ type: Injectable }], null, null); })(); var TranslateStore = class { constructor() { this.currentLang = this.defaultLang; this.translations = {}; this.langs = []; this.onTranslationChange = new EventEmitter(); this.onLangChange = new EventEmitter(); this.onDefaultLangChange = new EventEmitter(); } }; var USE_STORE = new InjectionToken("USE_STORE"); var USE_DEFAULT_LANG = new InjectionToken("USE_DEFAULT_LANG"); var DEFAULT_LANGUAGE = new InjectionToken("DEFAULT_LANGUAGE"); var USE_EXTEND = new InjectionToken("USE_EXTEND"); var TranslateService = class { /** * * @param store an instance of the store (that is supposed to be unique) * @param currentLoader An instance of the loader currently used * @param compiler An instance of the compiler currently used * @param parser An instance of the parser currently used * @param missingTranslationHandler A handler for missing translations. * @param useDefaultLang whether we should use default language translation when current language translation is missing. * @param isolate whether this service should use the store or not * @param extend To make a child module extend (and use) translations from parent modules. * @param defaultLanguage Set the default language using configuration */ constructor(store, currentLoader, compiler, parser, missingTranslationHandler, useDefaultLang = true, isolate = false, extend = false, defaultLanguage) { this.store = store; this.currentLoader = currentLoader; this.compiler = compiler; this.parser = parser; this.missingTranslationHandler = missingTranslationHandler; this.useDefaultLang = useDefaultLang; this.isolate = isolate; this.extend = extend; this.pending = false; this._onTranslationChange = new EventEmitter(); this._onLangChange = new EventEmitter(); this._onDefaultLangChange = new EventEmitter(); this._langs = []; this._translations = {}; this._translationRequests = {}; if (defaultLanguage) { this.setDefaultLang(defaultLanguage); } } /** * An EventEmitter to listen to translation change events * onTranslationChange.subscribe((params: TranslationChangeEvent) => { * // do something * }); */ get onTranslationChange() { return this.isolate ? this._onTranslationChange : this.store.onTranslationChange; } /** * An EventEmitter to listen to lang change events * onLangChange.subscribe((params: LangChangeEvent) => { * // do something * }); */ get onLangChange() { return this.isolate ? this._onLangChange : this.store.onLangChange; } /** * An EventEmitter to listen to default lang change events * onDefaultLangChange.subscribe((params: DefaultLangChangeEvent) => { * // do something * }); */ get onDefaultLangChange() { return this.isolate ? this._onDefaultLangChange : this.store.onDefaultLangChange; } /** * The default lang to fallback when translations are missing on the current lang */ get defaultLang() { return this.isolate ? this._defaultLang : this.store.defaultLang; } set defaultLang(defaultLang) { if (this.isolate) { this._defaultLang = defaultLang; } else { this.store.defaultLang = defaultLang; } } /** * The lang currently used */ get currentLang() { return this.isolate ? this._currentLang : this.store.currentLang; } set currentLang(currentLang) { if (this.isolate) { this._currentLang = currentLang; } else { this.store.currentLang = currentLang; } } /** * an array of langs */ get langs() { return this.isolate ? this._langs : this.store.langs; } set langs(langs) { if (this.isolate) { this._langs = langs; } else { this.store.langs = langs; } } /** * a list of translations per lang */ get translations() { return this.isolate ? this._translations : this.store.translations; } set translations(translations) { if (this.isolate) { this._translations = translations; } else { this.store.translations = translations; } } /** * Sets the default language to use as a fallback */ setDefaultLang(lang) { if (lang === this.defaultLang) { return; } let pending = this.retrieveTranslations(lang); if (typeof pending !== "undefined") { if (this.defaultLang == null) { this.defaultLang = lang; } pending.pipe(take(1)).subscribe((res) => { this.changeDefaultLang(lang); }); } else { this.changeDefaultLang(lang); } } /** * Gets the default language used */ getDefaultLang() { return this.defaultLang; } /** * Changes the lang currently used */ use(lang) { if (lang === this.currentLang) { return of(this.translations[lang]); } let pending = this.retrieveTranslations(lang); if (typeof pending !== "undefined") { if (!this.currentLang) { this.currentLang = lang; } pending.pipe(take(1)).subscribe((res) => { this.changeLang(lang); }); return pending; } else { this.changeLang(lang); return of(this.translations[lang]); } } /** * Retrieves the given translations */ retrieveTranslations(lang) { let pending; if (typeof this.translations[lang] === "undefined" || this.extend) { this._translationRequests[lang] = this._translationRequests[lang] || this.getTranslation(lang); pending = this._translationRequests[lang]; } return pending; } /** * Gets an object of translations for a given language with the current loader * and passes it through the compiler */ getTranslation(lang) { this.pending = true; const loadingTranslations = this.currentLoader.getTranslation(lang).pipe(shareReplay(1), take(1)); this.loadingTranslations = loadingTranslations.pipe(map((res) => this.compiler.compileTranslations(res, lang)), shareReplay(1), take(1)); this.loadingTranslations.subscribe({ next: (res) => { this.translations[lang] = this.extend && this.translations[lang] ? __spreadValues(__spreadValues({}, res), this.translations[lang]) : res; this.updateLangs(); this.pending = false; }, error: (err) => { this.pending = false; } }); return loadingTranslations; } /** * Manually sets an object of translations for a given language * after passing it through the compiler */ setTranslation(lang, translations, shouldMerge = false) { translations = this.compiler.compileTranslations(translations, lang); if ((shouldMerge || this.extend) && this.translations[lang]) { this.translations[lang] = mergeDeep(this.translations[lang], translations); } else { this.translations[lang] = translations; } this.updateLangs(); this.onTranslationChange.emit({ lang, translations: this.translations[lang] }); } /** * Returns an array of currently available langs */ getLangs() { return this.langs; } /** * Add available langs */ addLangs(langs) { langs.forEach((lang) => { if (this.langs.indexOf(lang) === -1) { this.langs.push(lang); } }); } /** * Update the list of available langs */ updateLangs() { this.addLangs(Object.keys(this.translations)); } /** * Returns the parsed result of the translations */ getParsedResult(translations, key, interpolateParams) { let res; if (key instanceof Array) { let result = {}, observables = false; for (let k of key) { result[k] = this.getParsedResult(translations, k, interpolateParams); if (isObservable(result[k])) { observables = true; } } if (observables) { const sources = key.map((k) => isObservable(result[k]) ? result[k] : of(result[k])); return forkJoin(sources).pipe(map((arr) => { let obj = {}; arr.forEach((value, index) => { obj[key[index]] = value; }); return obj; })); } return result; } if (translations) { res = this.parser.interpolate(this.parser.getValue(translations, key), interpolateParams); } if (typeof res === "undefined" && this.defaultLang != null && this.defaultLang !== this.currentLang && this.useDefaultLang) { res = this.parser.interpolate(this.parser.getValue(this.translations[this.defaultLang], key), interpolateParams); } if (typeof res === "undefined") { let params = { key, translateService: this }; if (typeof interpolateParams !== "undefined") { params.interpolateParams = interpolateParams; } res = this.missingTranslationHandler.handle(params); } return typeof res !== "undefined" ? res : key; } /** * Gets the translated value of a key (or an array of keys) * @returns the translated key, or an object of translated keys */ get(key, interpolateParams) { if (!isDefined(key) || !key.length) { throw new Error(`Parameter "key" required`); } if (this.pending) { return this.loadingTranslations.pipe(concatMap((res) => { res = this.getParsedResult(res, key, interpolateParams); return isObservable(res) ? res : of(res); })); } else { let res = this.getParsedResult(this.translations[this.currentLang], key, interpolateParams); return isObservable(res) ? res : of(res); } } /** * Returns a stream of translated values of a key (or an array of keys) which updates * whenever the translation changes. * @returns A stream of the translated key, or an object of translated keys */ getStreamOnTranslationChange(key, interpolateParams) { if (!isDefined(key) || !key.length) { throw new Error(`Parameter "key" required`); } return concat(defer(() => this.get(key, interpolateParams)), this.onTranslationChange.pipe(switchMap((event) => { const res = this.getParsedResult(event.translations, key, interpolateParams); if (typeof res.subscribe === "function") { return res; } else { return of(res); } }))); } /** * Returns a stream of translated values of a key (or an array of keys) which updates * whenever the language changes. * @returns A stream of the translated key, or an object of translated keys */ stream(key, interpolateParams) { if (!isDefined(key) || !key.length) { throw new Error(`Parameter "key" required`); } return concat(defer(() => this.get(key, interpolateParams)), this.onLangChange.pipe(switchMap((event) => { const res = this.getParsedResult(event.translations, key, interpolateParams); return isObservable(res) ? res : of(res); }))); } /** * Returns a translation instantly from the internal state of loaded translation. * All rules regarding the current language, the preferred language of even fallback languages will be used except any promise handling. */ instant(key, interpolateParams) { if (!isDefined(key) || !key.length) { throw new Error(`Parameter "key" required`); } let res = this.getParsedResult(this.translations[this.currentLang], key, interpolateParams); if (isObservable(res)) { if (key instanceof Array) { let obj = {}; key.forEach((value, index) => { obj[key[index]] = key[index]; }); return obj; } return key; } else { return res; } } /** * Sets the translated value of a key, after compiling it */ set(key, value, lang = this.currentLang) { this.translations[lang][key] = this.compiler.compile(value, lang); this.updateLangs(); this.onTranslationChange.emit({ lang, translations: this.translations[lang] }); } /** * Changes the current lang */ changeLang(lang) { this.currentLang = lang; this.onLangChange.emit({ lang, translations: this.translations[lang] }); if (this.defaultLang == null) { this.changeDefaultLang(lang); } } /** * Changes the default lang */ changeDefaultLang(lang) { this.defaultLang = lang; this.onDefaultLangChange.emit({ lang, translations: this.translations[lang] }); } /** * Allows to reload the lang file from the file */ reloadLang(lang) { this.resetLang(lang); return this.getTranslation(lang); } /** * Deletes inner translation */ resetLang(lang) { this._translationRequests[lang] = void 0; this.translations[lang] = void 0; } /** * Returns the language code name from the browser, e.g. "de" */ getBrowserLang() { if (typeof window === "undefined" || typeof window.navigator === "undefined") { return void 0; } let browserLang = window.navigator.languages ? window.navigator.languages[0] : null; browserLang = browserLang || window.navigator.language || window.navigator.browserLanguage || window.navigator.userLanguage; if (typeof browserLang === "undefined") { return void 0; } if (browserLang.indexOf("-") !== -1) { browserLang = browserLang.split("-")[0]; } if (browserLang.indexOf("_") !== -1) { browserLang = browserLang.split("_")[0]; } return browserLang; } /** * Returns the culture language code name from the browser, e.g. "de-DE" */ getBrowserCultureLang() { if (typeof window === "undefined" || typeof window.navigator === "undefined") { return void 0; } let browserCultureLang = window.navigator.languages ? window.navigator.languages[0] : null; browserCultureLang = browserCultureLang || window.navigator.language || window.navigator.browserLanguage || window.navigator.userLanguage; return browserCultureLang; } }; TranslateService.\u0275fac = function TranslateService_Factory(t) { return new (t || TranslateService)(\u0275\u0275inject(TranslateStore), \u0275\u0275inject(TranslateLoader), \u0275\u0275inject(TranslateCompiler), \u0275\u0275inject(TranslateParser), \u0275\u0275inject(MissingTranslationHandler), \u0275\u0275inject(USE_DEFAULT_LANG), \u0275\u0275inject(USE_STORE), \u0275\u0275inject(USE_EXTEND), \u0275\u0275inject(DEFAULT_LANGUAGE)); }; TranslateService.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: TranslateService, factory: TranslateService.\u0275fac }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslateService, [{ type: Injectable }], function() { return [{ type: TranslateStore }, { type: TranslateLoader }, { type: TranslateCompiler }, { type: TranslateParser }, { type: MissingTranslationHandler }, { type: void 0, decorators: [{ type: Inject, args: [USE_DEFAULT_LANG] }] }, { type: void 0, decorators: [{ type: Inject, args: [USE_STORE] }] }, { type: void 0, decorators: [{ type: Inject, args: [USE_EXTEND] }] }, { type: void 0, decorators: [{ type: Inject, args: [DEFAULT_LANGUAGE] }] }]; }, null); })(); var TranslateDirective = class { constructor(translateService, element, _ref) { this.translateService = translateService; this.element = element; this._ref = _ref; if (!this.onTranslationChangeSub) { this.onTranslationChangeSub = this.translateService.onTranslationChange.subscribe((event) => { if (event.lang === this.translateService.currentLang) { this.checkNodes(true, event.translations); } }); } if (!this.onLangChangeSub) { this.onLangChangeSub = this.translateService.onLangChange.subscribe((event) => { this.checkNodes(true, event.translations); }); } if (!this.onDefaultLangChangeSub) { this.onDefaultLangChangeSub = this.translateService.onDefaultLangChange.subscribe((event) => { this.checkNodes(true); }); } } set translate(key) { if (key) { this.key = key; this.checkNodes(); } } set translateParams(params) { if (!equals(this.currentParams, params)) { this.currentParams = params; this.checkNodes(true); } } ngAfterViewChecked() { this.checkNodes(); } checkNodes(forceUpdate = false, translations) { let nodes = this.element.nativeElement.childNodes; if (!nodes.length) { this.setContent(this.element.nativeElement, this.key); nodes = this.element.nativeElement.childNodes; } for (let i = 0; i < nodes.length; ++i) { let node = nodes[i]; if (node.nodeType === 3) { let key; if (forceUpdate) { node.lastKey = null; } if (isDefined(node.lookupKey)) { key = node.lookupKey; } else if (this.key) { key = this.key; } else { let content = this.getContent(node); let trimmedContent = content.trim(); if (trimmedContent.length) { node.lookupKey = trimmedContent; if (content !== node.currentValue) { key = trimmedContent; node.originalContent = content || node.originalContent; } else if (node.originalContent) { key = node.originalContent.trim(); } else if (content !== node.currentValue) { key = trimmedContent; node.originalContent = content || node.originalContent; } } } this.updateValue(key, node, translations); } } } updateValue(key, node, translations) { if (key) { if (node.lastKey === key && this.lastParams === this.currentParams) { return; } this.lastParams = this.currentParams; let onTranslation = (res) => { if (res !== key) { node.lastKey = key; } if (!node.originalContent) { node.originalContent = this.getContent(node); } node.currentValue = isDefined(res) ? res : node.originalContent || key; this.setContent(node, this.key ? node.currentValue : node.originalContent.replace(key, node.currentValue)); this._ref.markForCheck(); }; if (isDefined(translations)) { let res = this.translateService.getParsedResult(translations, key, this.currentParams); if (isObservable(res)) { res.subscribe({ next: onTranslation }); } else { onTranslation(res); } } else { this.translateService.get(key, this.currentParams).subscribe(onTranslation); } } } getContent(node) { return isDefined(node.textContent) ? node.textContent : node.data; } setContent(node, content) { if (isDefined(node.textContent)) { node.textContent = content; } else { node.data = content; } } ngOnDestroy() { if (this.onLangChangeSub) { this.onLangChangeSub.unsubscribe(); } if (this.onDefaultLangChangeSub) { this.onDefaultLangChangeSub.unsubscribe(); } if (this.onTranslationChangeSub) { this.onTranslationChangeSub.unsubscribe(); } } }; TranslateDirective.\u0275fac = function TranslateDirective_Factory(t) { return new (t || TranslateDirective)(\u0275\u0275directiveInject(TranslateService), \u0275\u0275directiveInject(ElementRef), \u0275\u0275directiveInject(ChangeDetectorRef)); }; TranslateDirective.\u0275dir = /* @__PURE__ */ \u0275\u0275defineDirective({ type: TranslateDirective, selectors: [["", "translate", ""], ["", "ngx-translate", ""]], inputs: { translate: "translate", translateParams: "translateParams" } }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslateDirective, [{ type: Directive, args: [{ selector: "[translate],[ngx-translate]" }] }], function() { return [{ type: TranslateService }, { type: ElementRef }, { type: ChangeDetectorRef }]; }, { translate: [{ type: Input }], translateParams: [{ type: Input }] }); })(); var TranslatePipe = class { constructor(translate, _ref) { this.translate = translate; this._ref = _ref; this.value = ""; this.lastKey = null; this.lastParams = []; } updateValue(key, interpolateParams, translations) { let onTranslation = (res) => { this.value = res !== void 0 ? res : key; this.lastKey = key; this._ref.markForCheck(); }; if (translations) { let res = this.translate.getParsedResult(translations, key, interpolateParams); if (isObservable(res.subscribe)) { res.subscribe(onTranslation); } else { onTranslation(res); } } this.translate.get(key, interpolateParams).subscribe(onTranslation); } transform(query, ...args) { if (!query || !query.length) { return query; } if (equals(query, this.lastKey) && equals(args, this.lastParams)) { return this.value; } let interpolateParams = void 0; if (isDefined(args[0]) && args.length) { if (typeof args[0] === "string" && args[0].length) { let validArgs = args[0].replace(/(\')?([a-zA-Z0-9_]+)(\')?(\s)?:/g, '"$2":').replace(/:(\s)?(\')(.*?)(\')/g, ':"$3"'); try { interpolateParams = JSON.parse(validArgs); } catch (e) { throw new SyntaxError(`Wrong parameter in TranslatePipe. Expected a valid Object, received: ${args[0]}`); } } else if (typeof args[0] === "object" && !Array.isArray(args[0])) { interpolateParams = args[0]; } } this.lastKey = query; this.lastParams = args; this.updateValue(query, interpolateParams); this._dispose(); if (!this.onTranslationChange) { this.onTranslationChange = this.translate.onTranslationChange.subscribe((event) => { if (this.lastKey && event.lang === this.translate.currentLang) { this.lastKey = null; this.updateValue(query, interpolateParams, event.translations); } }); } if (!this.onLangChange) { this.onLangChange = this.translate.onLangChange.subscribe((event) => { if (this.lastKey) { this.lastKey = null; this.updateValue(query, interpolateParams, event.translations); } }); } if (!this.onDefaultLangChange) { this.onDefaultLangChange = this.translate.onDefaultLangChange.subscribe(() => { if (this.lastKey) { this.lastKey = null; this.updateValue(query, interpolateParams); } }); } return this.value; } /** * Clean any existing subscription to change events */ _dispose() { if (typeof this.onTranslationChange !== "undefined") { this.onTranslationChange.unsubscribe(); this.onTranslationChange = void 0; } if (typeof this.onLangChange !== "undefined") { this.onLangChange.unsubscribe(); this.onLangChange = void 0; } if (typeof this.onDefaultLangChange !== "undefined") { this.onDefaultLangChange.unsubscribe(); this.onDefaultLangChange = void 0; } } ngOnDestroy() { this._dispose(); } }; TranslatePipe.\u0275fac = function TranslatePipe_Factory(t) { return new (t || TranslatePipe)(\u0275\u0275directiveInject(TranslateService, 16), \u0275\u0275directiveInject(ChangeDetectorRef, 16)); }; TranslatePipe.\u0275pipe = /* @__PURE__ */ \u0275\u0275definePipe({ name: "translate", type: TranslatePipe, pure: false }); TranslatePipe.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: TranslatePipe, factory: TranslatePipe.\u0275fac }); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslatePipe, [{ type: Injectable }, { type: Pipe, args: [{ name: "translate", pure: false // required to update the value when the promise is resolved }] }], function() { return [{ type: TranslateService }, { type: ChangeDetectorRef }]; }, null); })(); var TranslateModule = class _TranslateModule { /** * Use this method in your root module to provide the TranslateService */ static forRoot(config = {}) { return { ngModule: _TranslateModule, providers: [config.loader || { provide: TranslateLoader, useClass: TranslateFakeLoader }, config.compiler || { provide: TranslateCompiler, useClass: TranslateFakeCompiler }, config.parser || { provide: TranslateParser, useClass: TranslateDefaultParser }, config.missingTranslationHandler || { provide: MissingTranslationHandler, useClass: FakeMissingTranslationHandler }, TranslateStore, { provide: USE_STORE, useValue: config.isolate }, { provide: USE_DEFAULT_LANG, useValue: config.useDefaultLang }, { provide: USE_EXTEND, useValue: config.extend }, { provide: DEFAULT_LANGUAGE, useValue: config.defaultLanguage }, TranslateService] }; } /** * Use this method in your other (non root) modules to import the directive/pipe */ static forChild(config = {}) { return { ngModule: _TranslateModule, providers: [config.loader || { provide: TranslateLoader, useClass: TranslateFakeLoader }, config.compiler || { provide: TranslateCompiler, useClass: TranslateFakeCompiler }, config.parser || { provide: TranslateParser, useClass: TranslateDefaultParser }, config.missingTranslationHandler || { provide: MissingTranslationHandler, useClass: FakeMissingTranslationHandler }, { provide: USE_STORE, useValue: config.isolate }, { provide: USE_DEFAULT_LANG, useValue: config.useDefaultLang }, { provide: USE_EXTEND, useValue: config.extend }, { provide: DEFAULT_LANGUAGE, useValue: config.defaultLanguage }, TranslateService] }; } }; TranslateModule.\u0275fac = function TranslateModule_Factory(t) { return new (t || TranslateModule)(); }; TranslateModule.\u0275mod = /* @__PURE__ */ \u0275\u0275defineNgModule({ type: TranslateModule }); TranslateModule.\u0275inj = /* @__PURE__ */ \u0275\u0275defineInjector({}); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(TranslateModule, [{ type: NgModule, args: [{ declarations: [TranslatePipe, TranslateDirective], exports: [TranslatePipe, TranslateDirective] }] }], null, null); })(); // src/shared/constants/backend.constants.ts var BackendConstants = class { static { this.BACKEND_URL = environment.backend_url; } }; export { environment, BackendConstants, TranslateLoader, TranslateService, TranslatePipe, TranslateModule };