@educarehq/solaris-services 0.0.6 → 0.0.8

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.
@@ -1,7 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, inject, Pipe, makeEnvironmentProviders, Injectable, provideAppInitializer } from '@angular/core';
3
+ import { ActivatedRoute, Router, NavigationEnd } from '@angular/router';
4
+ import { Title } from '@angular/platform-browser';
5
+ import { filter, startWith, combineLatest, of, firstValueFrom } from 'rxjs';
3
6
  import { TranslocoService, provideTransloco, provideTranslocoMissingHandler } from '@jsverse/transloco';
4
- import { of, firstValueFrom } from 'rxjs';
5
7
 
6
8
  const SOLARIS_TRANSLATION_CONFIGURATION = new InjectionToken('SOLARIS_TRANSLATION_CONFIGURATION');
7
9
  const SOLARIS_TRANSLATION = new InjectionToken('SOLARIS_TRANSLATION');
@@ -31,6 +33,34 @@ function provideSolarisTranslationContributions(contributions) {
31
33
  ]);
32
34
  }
33
35
 
36
+ class SolarisTranslationRouteTitleAdapter {
37
+ activatedRoute = inject(ActivatedRoute);
38
+ transloco = inject(TranslocoService);
39
+ router = inject(Router);
40
+ title = inject(Title);
41
+ init() {
42
+ const navEnd$ = this.router.events.pipe(filter((e) => e instanceof NavigationEnd), startWith(null));
43
+ combineLatest([navEnd$, this.transloco.langChanges$.pipe(startWith(this.transloco.getActiveLang()))])
44
+ .subscribe(() => {
45
+ const deepest = this.getDeepestRoute(this.activatedRoute);
46
+ const routeTitle = deepest.snapshot.title;
47
+ if (routeTitle)
48
+ this.title.setTitle(routeTitle);
49
+ });
50
+ }
51
+ getDeepestRoute(route) {
52
+ let r = route;
53
+ while (r.firstChild)
54
+ r = r.firstChild;
55
+ return r;
56
+ }
57
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SolarisTranslationRouteTitleAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
58
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SolarisTranslationRouteTitleAdapter });
59
+ }
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SolarisTranslationRouteTitleAdapter, decorators: [{
61
+ type: Injectable
62
+ }] });
63
+
34
64
  const SOLARIS_UI_DICTIONARY_EN_US = {
35
65
  solaris: {
36
66
  common: {
@@ -186,20 +216,8 @@ class SolarisMissingHandler {
186
216
  return key;
187
217
  }
188
218
  }
189
- function initSolarisTranslation() {
190
- const transloco = inject(TranslocoService);
191
- const configuration = inject(SOLARIS_TRANSLATION_CONFIGURATION);
192
- return async () => {
193
- transloco.setActiveLang(configuration.defaultLanguage);
194
- await firstValueFrom(transloco.load(configuration.defaultLanguage));
195
- };
196
- }
197
219
  function provideSolarisTranslation(config) {
198
220
  return makeEnvironmentProviders([
199
- provideAppInitializer(() => {
200
- const initializerFn = initSolarisTranslation();
201
- return initializerFn();
202
- }),
203
221
  { provide: SOLARIS_TRANSLATION_CONFIGURATION, useValue: { ...config, uiScope: config.uiScope ?? 'ui' } },
204
222
  ...provideTransloco({
205
223
  config: {
@@ -211,9 +229,14 @@ function provideSolarisTranslation(config) {
211
229
  loader: SolarisTranslationLoader,
212
230
  }),
213
231
  provideTranslocoMissingHandler(SolarisMissingHandler),
232
+ provideAppInitializer(() => {
233
+ const transloco = inject(TranslocoService);
234
+ const configuration = inject(SOLARIS_TRANSLATION_CONFIGURATION);
235
+ transloco.setActiveLang(configuration.defaultLanguage);
236
+ return firstValueFrom(transloco.load(configuration.defaultLanguage));
237
+ }),
214
238
  SolarisTranslationImpl,
215
239
  { provide: SOLARIS_TRANSLATION, useExisting: SolarisTranslationImpl },
216
- TranslocoService,
217
240
  ]);
218
241
  }
219
242
 
@@ -223,5 +246,5 @@ const SOLARIS_SERVICES_VERSION = '0.0.1';
223
246
  * Generated bundle index. Do not edit.
224
247
  */
225
248
 
226
- export { SOLARIS_SERVICES_VERSION, SOLARIS_TRANSLATION_CONTRIBUTIONS, SolarisTranslationImpl, SolarisTranslationLoader, SolarisTranslationPipe, provideSolarisTranslation, provideSolarisTranslationContributions };
249
+ export { SOLARIS_SERVICES_VERSION, SOLARIS_TRANSLATION_CONTRIBUTIONS, SolarisTranslationImpl, SolarisTranslationLoader, SolarisTranslationPipe, SolarisTranslationRouteTitleAdapter, provideSolarisTranslation, provideSolarisTranslationContributions };
227
250
  //# sourceMappingURL=educarehq-solaris-services.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"educarehq-solaris-services.mjs","sources":["../../../projects/solaris-services/src/lib/translation/api/token/solaris-translation.tokens.ts","../../../projects/solaris-services/src/lib/translation/pipe/solaris-translation.pipe.ts","../../../projects/solaris-services/src/lib/translation/api/providers/contributions/solaris-translation.contributions.ts","../../../projects/solaris-services/src/lib/translation/api/providers/contributions/provide-solaris-translation-contributions.ts","../../../projects/solaris-services/src/lib/translation/dictionaries/en-us/ui.ts","../../../projects/solaris-services/src/lib/translation/dictionaries/pt-br/ui.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-loader.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-adapter.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-provider.ts","../../../projects/solaris-services/src/lib/version.ts","../../../projects/solaris-services/src/educarehq-solaris-services.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nimport { SolarisTranslationInterface } from '../interface/solaris-translation-interface';\r\nimport { SolarisTranslationConfiguration } from '../model/solaris-translation.type';\r\n\r\nexport const SOLARIS_TRANSLATION_CONFIGURATION = new InjectionToken<SolarisTranslationConfiguration>('SOLARIS_TRANSLATION_CONFIGURATION');\r\nexport const SOLARIS_TRANSLATION = new InjectionToken<SolarisTranslationInterface>('SOLARIS_TRANSLATION');\r\n","import { inject, Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport { SolarisTranslationParams } from '../api/model/solaris-translation.type';\r\nimport { SOLARIS_TRANSLATION } from '../api/token/solaris-translation.tokens';\r\n\r\n@Pipe({\r\n name: 'translate',\r\n standalone: true,\r\n pure: false,\r\n})\r\nexport class SolarisTranslationPipe implements PipeTransform {\r\n private readonly translationService = inject(SOLARIS_TRANSLATION);\r\n\r\n public transform(key: string, params?: SolarisTranslationParams) {\r\n return this.translationService.translate(key, params);\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nimport { SolarisTranslationContributions } from 'solaris-services';\r\n\r\nexport const SOLARIS_TRANSLATION_CONTRIBUTIONS = new InjectionToken<SolarisTranslationContributions[]>(\r\n 'SOLARIS_TRANSLATION_CONTRIBUTIONS'\r\n);\r\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\r\n\r\nimport { SOLARIS_TRANSLATION_CONTRIBUTIONS } from './solaris-translation.contributions';\r\nimport { SolarisTranslationContributions } from '../../model/solaris-translation.type';\r\n\r\nexport function provideSolarisTranslationContributions(contributions: SolarisTranslationContributions): EnvironmentProviders {\r\n return makeEnvironmentProviders([\r\n { provide: SOLARIS_TRANSLATION_CONTRIBUTIONS, useValue: contributions, multi: true }\r\n ])\r\n}\r\n","export const SOLARIS_UI_DICTIONARY_EN_US = {\r\n solaris: {\r\n common: {\r\n examples: 'Examples',\r\n howToUse: 'How to use'\r\n },\r\n inputs: {\r\n email: {\r\n label: 'Email',\r\n placeholder: 'Enter your email'\r\n },\r\n password: {\r\n label: 'Password',\r\n placeholder: 'Enter your password'\r\n }\r\n },\r\n validation: {\r\n required: 'This field is required.',\r\n email: 'Invalid email.',\r\n invalid: 'Invalid value.',\r\n password: {\r\n invalid: 'Invalid password.',\r\n minLength: 'Password must be at least {requiredLength} characters.',\r\n uppercase: 'Password must contain at least 1 uppercase letter.',\r\n lowercase: 'Password must contain at least 1 lowercase letter.',\r\n number: 'Password must contain at least 1 number.',\r\n special: 'Password must contain at least 1 special character.',\r\n },\r\n },\r\n }\r\n} as const;\r\n","export const SOLARIS_UI_DICTIONARY_PT_BR = {\r\n solaris: {\r\n common: {\r\n examples: 'Exemplos',\r\n howToUse: 'Como usar',\r\n docs: 'Docs',\r\n api: 'API',\r\n preview: 'Prévia',\r\n usage: 'Uso',\r\n installation: 'Instalação',\r\n copy: 'Copiar',\r\n copied: 'Copiado',\r\n previous: 'Anterior',\r\n next: 'Próximo',\r\n },\r\n\r\n inputs: {\r\n email: {\r\n label: 'Email',\r\n placeholder: 'Digite seu e-mail',\r\n },\r\n password: {\r\n label: 'Senha',\r\n placeholder: 'Digite sua senha',\r\n },\r\n },\r\n\r\n validation: {\r\n required: 'Campo obrigatório.',\r\n email: 'E-mail inválido.',\r\n invalid: 'Valor inválido.',\r\n password: {\r\n invalid: 'Senha inválida.',\r\n minLength: 'A senha deve ter no mínimo {requiredLength} caracteres.',\r\n uppercase: 'A senha deve conter pelo menos 1 letra maiúscula.',\r\n lowercase: 'A senha deve conter pelo menos 1 letra minúscula.',\r\n number: 'A senha deve conter pelo menos 1 número.',\r\n special: 'A senha deve conter pelo menos 1 caractere especial.',\r\n },\r\n },\r\n },\r\n} as const;\r\n","import { TranslocoLoader } from '@jsverse/transloco';\r\nimport { inject, Injectable } from '@angular/core';\r\n\r\nimport { SOLARIS_TRANSLATION_CONTRIBUTIONS } from '../contributions/solaris-translation.contributions';\r\nimport { SOLARIS_TRANSLATION_CONFIGURATION } from '../../token/solaris-translation.tokens';\r\nimport { Dict, SolarisTranslationContributions } from '../../model/solaris-translation.type';\r\nimport { SOLARIS_UI_DICTIONARY_EN_US } from '../../../dictionaries/en-us/ui';\r\nimport { SOLARIS_UI_DICTIONARY_PT_BR } from '../../../dictionaries/pt-br/ui';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class SolarisTranslationLoader implements TranslocoLoader {\r\n private readonly contributions = inject(SOLARIS_TRANSLATION_CONTRIBUTIONS, { optional: true }) ?? [];\r\n private readonly configuration = inject(SOLARIS_TRANSLATION_CONFIGURATION);\r\n\r\n public getTranslation(language: string): Observable<Dict> {\r\n const uiScope = this.configuration.uiScope ?? 'ui';\r\n const norm = language.toLowerCase();\r\n const uiDict = norm.startsWith('en')\r\n ? SOLARIS_UI_DICTIONARY_EN_US : SOLARIS_UI_DICTIONARY_PT_BR;\r\n\r\n const base: Dict = { [uiScope]: uiDict };\r\n const stacks = Array.isArray(this.contributions) ? this.contributions : [];\r\n const picked = this.pickContributionsFor(language, stacks);\r\n\r\n const merged = deepMerge(base, picked);\r\n return of(merged);\r\n }\r\n\r\n private pickContributionsFor(lang: string, stacks: SolarisTranslationContributions[]): Dict {\r\n const out: Dict = {};\r\n const norm = lang.toLowerCase();\r\n\r\n for (const stack of stacks) {\r\n const exact = stack?.[lang];\r\n const normalized = stack?.[norm];\r\n\r\n if (exact) deepMerge(out, exact);\r\n if (normalized) deepMerge(out, normalized);\r\n }\r\n\r\n return out;\r\n }\r\n}\r\n\r\nfunction deepMerge<T extends Record<string, any>>(target: T, source: Record<string, any>): T {\r\n for (const key of Object.keys(source)) {\r\n const sv = source[key];\r\n const tv = (target as any)[key];\r\n\r\n if (isPlainObject(tv) && isPlainObject(sv)) {\r\n deepMerge(tv, sv);\r\n } else {\r\n (target as any)[key] = sv;\r\n }\r\n }\r\n return target;\r\n}\r\n\r\nfunction isPlainObject(v: unknown): v is Record<string, any> {\r\n return !!v && typeof v === 'object' && !Array.isArray(v);\r\n}\r\n","import { inject, Injectable } from '@angular/core';\r\n\r\nimport { SolarisTranslationInterface } from '../../interface/solaris-translation-interface';\r\nimport { SolarisTranslationParams } from '../../model/solaris-translation.type';\r\nimport { TranslocoService } from '@jsverse/transloco';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class SolarisTranslationImpl implements SolarisTranslationInterface {\r\n private readonly translocoService = inject(TranslocoService);\r\n\r\n public language(): string {\r\n return this.translocoService.getActiveLang();\r\n }\r\n\r\n public setLanguage(lang: string): void {\r\n this.translocoService.setActiveLang(lang);\r\n }\r\n\r\n public languageChanges(): Observable<string> {\r\n return this.translocoService.langChanges$;\r\n }\r\n\r\n public translate(key: string, params?: SolarisTranslationParams): string {\r\n return this.translocoService.translate(key, params);\r\n }\r\n\r\n public select(key: string, params?: SolarisTranslationParams): Observable<string> {\r\n return this.translocoService.selectTranslate(key, params);\r\n }\r\n\r\n public translate$(key: string, params?: SolarisTranslationParams): Observable<string> {\r\n return this.translocoService.selectTranslate(key, params);\r\n }\r\n}\r\n","import { EnvironmentProviders, inject, makeEnvironmentProviders, provideAppInitializer } from '@angular/core';\r\n\r\nimport { provideTransloco, provideTranslocoMissingHandler, TranslocoMissingHandler, TranslocoMissingHandlerData,\r\n TranslocoService } from '@jsverse/transloco';\r\nimport { SOLARIS_TRANSLATION, SOLARIS_TRANSLATION_CONFIGURATION } from '../../token/solaris-translation.tokens';\r\nimport { SolarisTranslationConfiguration } from '../../model/solaris-translation.type';\r\nimport { SolarisTranslationLoader } from './solaris-translation-loader';\r\nimport { SolarisTranslationImpl } from './solaris-translation-adapter';\r\nimport { firstValueFrom } from 'rxjs';\r\n\r\nclass SolarisMissingHandler implements TranslocoMissingHandler {\r\n handle(key: string, _data: TranslocoMissingHandlerData) {\r\n return key;\r\n }\r\n}\r\n\r\nfunction initSolarisTranslation() {\r\n const transloco = inject(TranslocoService);\r\n const configuration = inject(SOLARIS_TRANSLATION_CONFIGURATION);\r\n\r\n return async () => {\r\n transloco.setActiveLang(configuration.defaultLanguage);\r\n await firstValueFrom(transloco.load(configuration.defaultLanguage));\r\n };\r\n}\r\n\r\nexport function provideSolarisTranslation(config: SolarisTranslationConfiguration &\r\n { prodMode?: boolean }): EnvironmentProviders {\r\n return makeEnvironmentProviders([\r\n provideAppInitializer(() => {\r\n const initializerFn = initSolarisTranslation();\r\n return initializerFn();\r\n }),\r\n { provide: SOLARIS_TRANSLATION_CONFIGURATION, useValue: { ...config, uiScope: config.uiScope ?? 'ui' } },\r\n ...provideTransloco({\r\n config: {\r\n availableLangs: config.availableLanguages,\r\n defaultLang: config.defaultLanguage,\r\n fallbackLang: config.fallbackLanguage,\r\n prodMode: config.prodMode ?? false,\r\n },\r\n loader: SolarisTranslationLoader,\r\n }),\r\n provideTranslocoMissingHandler(SolarisMissingHandler),\r\n SolarisTranslationImpl,\r\n { provide: SOLARIS_TRANSLATION, useExisting: SolarisTranslationImpl },\r\n TranslocoService,\r\n ]);\r\n}\r\n","export const SOLARIS_SERVICES_VERSION = '0.0.1';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"educarehq-solaris-services.mjs","sources":["../../../projects/solaris-services/src/lib/translation/api/token/solaris-translation.tokens.ts","../../../projects/solaris-services/src/lib/translation/pipe/solaris-translation.pipe.ts","../../../projects/solaris-services/src/lib/translation/api/providers/contributions/solaris-translation.contributions.ts","../../../projects/solaris-services/src/lib/translation/api/providers/contributions/provide-solaris-translation-contributions.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-route-title-adapter.ts","../../../projects/solaris-services/src/lib/translation/dictionaries/en-us/ui.ts","../../../projects/solaris-services/src/lib/translation/dictionaries/pt-br/ui.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-loader.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-adapter.ts","../../../projects/solaris-services/src/lib/translation/api/providers/translation/solaris-translation-provider.ts","../../../projects/solaris-services/src/lib/version.ts","../../../projects/solaris-services/src/educarehq-solaris-services.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nimport { SolarisTranslationInterface } from '../interface/solaris-translation-interface';\r\nimport { SolarisTranslationConfiguration } from '../model/solaris-translation.type';\r\n\r\nexport const SOLARIS_TRANSLATION_CONFIGURATION = new InjectionToken<SolarisTranslationConfiguration>('SOLARIS_TRANSLATION_CONFIGURATION');\r\nexport const SOLARIS_TRANSLATION = new InjectionToken<SolarisTranslationInterface>('SOLARIS_TRANSLATION');\r\n","import { inject, Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport { SolarisTranslationParams } from '../api/model/solaris-translation.type';\r\nimport { SOLARIS_TRANSLATION } from '../api/token/solaris-translation.tokens';\r\n\r\n@Pipe({\r\n name: 'translate',\r\n standalone: true,\r\n pure: false,\r\n})\r\nexport class SolarisTranslationPipe implements PipeTransform {\r\n private readonly translationService = inject(SOLARIS_TRANSLATION);\r\n\r\n public transform(key: string, params?: SolarisTranslationParams) {\r\n return this.translationService.translate(key, params);\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nimport { SolarisTranslationContributions } from 'solaris-services';\r\n\r\nexport const SOLARIS_TRANSLATION_CONTRIBUTIONS = new InjectionToken<SolarisTranslationContributions[]>(\r\n 'SOLARIS_TRANSLATION_CONTRIBUTIONS'\r\n);\r\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\r\n\r\nimport { SOLARIS_TRANSLATION_CONTRIBUTIONS } from './solaris-translation.contributions';\r\nimport { SolarisTranslationContributions } from '../../model/solaris-translation.type';\r\n\r\nexport function provideSolarisTranslationContributions(contributions: SolarisTranslationContributions): EnvironmentProviders {\r\n return makeEnvironmentProviders([\r\n { provide: SOLARIS_TRANSLATION_CONTRIBUTIONS, useValue: contributions, multi: true }\r\n ])\r\n}\r\n","import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { inject, Injectable } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { SolarisTranslationRouteTitleInterface } from '../../interface/solaris-translation-route-title-interface';\r\nimport { combineLatest, filter, startWith } from 'rxjs';\r\nimport { TranslocoService } from '@jsverse/transloco';\r\n\r\n@Injectable()\r\nexport class SolarisTranslationRouteTitleAdapter implements SolarisTranslationRouteTitleInterface {\r\n private readonly activatedRoute = inject(ActivatedRoute);\r\n private readonly transloco = inject(TranslocoService);\r\n private readonly router = inject(Router);\r\n private readonly title = inject(Title);\r\n\r\n public init(): void {\r\n const navEnd$ = this.router.events.pipe(\r\n filter((e): e is NavigationEnd => e instanceof NavigationEnd),\r\n startWith(null)\r\n );\r\n\r\n combineLatest([navEnd$, this.transloco.langChanges$.pipe(startWith(this.transloco.getActiveLang()))])\r\n .subscribe(() => {\r\n const deepest = this.getDeepestRoute(this.activatedRoute);\r\n const routeTitle = deepest.snapshot.title;\r\n if (routeTitle) this.title.setTitle(routeTitle);\r\n });\r\n }\r\n\r\n private getDeepestRoute(route: ActivatedRoute): ActivatedRoute {\r\n let r = route;\r\n while (r.firstChild) r = r.firstChild;\r\n return r;\r\n }\r\n}\r\n","export const SOLARIS_UI_DICTIONARY_EN_US = {\r\n solaris: {\r\n common: {\r\n examples: 'Examples',\r\n howToUse: 'How to use'\r\n },\r\n inputs: {\r\n email: {\r\n label: 'Email',\r\n placeholder: 'Enter your email'\r\n },\r\n password: {\r\n label: 'Password',\r\n placeholder: 'Enter your password'\r\n }\r\n },\r\n validation: {\r\n required: 'This field is required.',\r\n email: 'Invalid email.',\r\n invalid: 'Invalid value.',\r\n password: {\r\n invalid: 'Invalid password.',\r\n minLength: 'Password must be at least {requiredLength} characters.',\r\n uppercase: 'Password must contain at least 1 uppercase letter.',\r\n lowercase: 'Password must contain at least 1 lowercase letter.',\r\n number: 'Password must contain at least 1 number.',\r\n special: 'Password must contain at least 1 special character.',\r\n },\r\n },\r\n }\r\n} as const;\r\n","export const SOLARIS_UI_DICTIONARY_PT_BR = {\r\n solaris: {\r\n common: {\r\n examples: 'Exemplos',\r\n howToUse: 'Como usar',\r\n docs: 'Docs',\r\n api: 'API',\r\n preview: 'Prévia',\r\n usage: 'Uso',\r\n installation: 'Instalação',\r\n copy: 'Copiar',\r\n copied: 'Copiado',\r\n previous: 'Anterior',\r\n next: 'Próximo',\r\n },\r\n\r\n inputs: {\r\n email: {\r\n label: 'Email',\r\n placeholder: 'Digite seu e-mail',\r\n },\r\n password: {\r\n label: 'Senha',\r\n placeholder: 'Digite sua senha',\r\n },\r\n },\r\n\r\n validation: {\r\n required: 'Campo obrigatório.',\r\n email: 'E-mail inválido.',\r\n invalid: 'Valor inválido.',\r\n password: {\r\n invalid: 'Senha inválida.',\r\n minLength: 'A senha deve ter no mínimo {requiredLength} caracteres.',\r\n uppercase: 'A senha deve conter pelo menos 1 letra maiúscula.',\r\n lowercase: 'A senha deve conter pelo menos 1 letra minúscula.',\r\n number: 'A senha deve conter pelo menos 1 número.',\r\n special: 'A senha deve conter pelo menos 1 caractere especial.',\r\n },\r\n },\r\n },\r\n} as const;\r\n","import { TranslocoLoader } from '@jsverse/transloco';\r\nimport { inject, Injectable } from '@angular/core';\r\n\r\nimport { SOLARIS_TRANSLATION_CONTRIBUTIONS } from '../contributions/solaris-translation.contributions';\r\nimport { SOLARIS_TRANSLATION_CONFIGURATION } from '../../token/solaris-translation.tokens';\r\nimport { Dict, SolarisTranslationContributions } from '../../model/solaris-translation.type';\r\nimport { SOLARIS_UI_DICTIONARY_EN_US } from '../../../dictionaries/en-us/ui';\r\nimport { SOLARIS_UI_DICTIONARY_PT_BR } from '../../../dictionaries/pt-br/ui';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class SolarisTranslationLoader implements TranslocoLoader {\r\n private readonly contributions = inject(SOLARIS_TRANSLATION_CONTRIBUTIONS, { optional: true }) ?? [];\r\n private readonly configuration = inject(SOLARIS_TRANSLATION_CONFIGURATION);\r\n\r\n public getTranslation(language: string): Observable<Dict> {\r\n const uiScope = this.configuration.uiScope ?? 'ui';\r\n const norm = language.toLowerCase();\r\n const uiDict = norm.startsWith('en')\r\n ? SOLARIS_UI_DICTIONARY_EN_US : SOLARIS_UI_DICTIONARY_PT_BR;\r\n\r\n const base: Dict = { [uiScope]: uiDict };\r\n const stacks = Array.isArray(this.contributions) ? this.contributions : [];\r\n const picked = this.pickContributionsFor(language, stacks);\r\n\r\n const merged = deepMerge(base, picked);\r\n return of(merged);\r\n }\r\n\r\n private pickContributionsFor(lang: string, stacks: SolarisTranslationContributions[]): Dict {\r\n const out: Dict = {};\r\n const norm = lang.toLowerCase();\r\n\r\n for (const stack of stacks) {\r\n const exact = stack?.[lang];\r\n const normalized = stack?.[norm];\r\n\r\n if (exact) deepMerge(out, exact);\r\n if (normalized) deepMerge(out, normalized);\r\n }\r\n\r\n return out;\r\n }\r\n}\r\n\r\nfunction deepMerge<T extends Record<string, any>>(target: T, source: Record<string, any>): T {\r\n for (const key of Object.keys(source)) {\r\n const sv = source[key];\r\n const tv = (target as any)[key];\r\n\r\n if (isPlainObject(tv) && isPlainObject(sv)) {\r\n deepMerge(tv, sv);\r\n } else {\r\n (target as any)[key] = sv;\r\n }\r\n }\r\n return target;\r\n}\r\n\r\nfunction isPlainObject(v: unknown): v is Record<string, any> {\r\n return !!v && typeof v === 'object' && !Array.isArray(v);\r\n}\r\n","import { inject, Injectable } from '@angular/core';\r\n\r\nimport { SolarisTranslationInterface } from '../../interface/solaris-translation-interface';\r\nimport { SolarisTranslationParams } from '../../model/solaris-translation.type';\r\nimport { TranslocoService } from '@jsverse/transloco';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class SolarisTranslationImpl implements SolarisTranslationInterface {\r\n private readonly translocoService = inject(TranslocoService);\r\n\r\n public language(): string {\r\n return this.translocoService.getActiveLang();\r\n }\r\n\r\n public setLanguage(lang: string): void {\r\n this.translocoService.setActiveLang(lang);\r\n }\r\n\r\n public languageChanges(): Observable<string> {\r\n return this.translocoService.langChanges$;\r\n }\r\n\r\n public translate(key: string, params?: SolarisTranslationParams): string {\r\n return this.translocoService.translate(key, params);\r\n }\r\n\r\n public select(key: string, params?: SolarisTranslationParams): Observable<string> {\r\n return this.translocoService.selectTranslate(key, params);\r\n }\r\n\r\n public translate$(key: string, params?: SolarisTranslationParams): Observable<string> {\r\n return this.translocoService.selectTranslate(key, params);\r\n }\r\n}\r\n","import { EnvironmentProviders, inject, makeEnvironmentProviders, provideAppInitializer } from '@angular/core';\r\n\r\nimport { provideTransloco, provideTranslocoMissingHandler, TranslocoMissingHandler, TranslocoMissingHandlerData,\r\n TranslocoService } from '@jsverse/transloco';\r\nimport { SOLARIS_TRANSLATION, SOLARIS_TRANSLATION_CONFIGURATION } from '../../token/solaris-translation.tokens';\r\nimport { SolarisTranslationConfiguration } from '../../model/solaris-translation.type';\r\nimport { SolarisTranslationLoader } from './solaris-translation-loader';\r\nimport { SolarisTranslationImpl } from './solaris-translation-adapter';\r\nimport { firstValueFrom } from 'rxjs';\r\n\r\nclass SolarisMissingHandler implements TranslocoMissingHandler {\r\n handle(key: string, _data: TranslocoMissingHandlerData) {\r\n return key;\r\n }\r\n}\r\n\r\nexport function provideSolarisTranslation(config: SolarisTranslationConfiguration\r\n & { prodMode?: boolean }): EnvironmentProviders {\r\n return makeEnvironmentProviders([\r\n { provide: SOLARIS_TRANSLATION_CONFIGURATION, useValue: { ...config, uiScope: config.uiScope ?? 'ui' } },\r\n ...provideTransloco({\r\n config: {\r\n availableLangs: config.availableLanguages,\r\n defaultLang: config.defaultLanguage,\r\n fallbackLang: config.fallbackLanguage,\r\n prodMode: config.prodMode ?? false,\r\n },\r\n loader: SolarisTranslationLoader,\r\n }),\r\n provideTranslocoMissingHandler(SolarisMissingHandler),\r\n provideAppInitializer(() => {\r\n const transloco = inject(TranslocoService);\r\n const configuration = inject(SOLARIS_TRANSLATION_CONFIGURATION);\r\n transloco.setActiveLang(configuration.defaultLanguage);\r\n return firstValueFrom(transloco.load(configuration.defaultLanguage));\r\n }),\r\n\r\n SolarisTranslationImpl,\r\n { provide: SOLARIS_TRANSLATION, useExisting: SolarisTranslationImpl },\r\n ]);\r\n}\r\n","export const SOLARIS_SERVICES_VERSION = '0.0.1';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@educarehq/solaris-services",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.1.0",
6
6
  "@angular/core": "^21.1.0",
@@ -24,6 +24,21 @@ declare class SolarisTranslationPipe implements PipeTransform {
24
24
 
25
25
  declare function provideSolarisTranslationContributions(contributions: SolarisTranslationContributions): EnvironmentProviders;
26
26
 
27
+ interface SolarisTranslationRouteTitleInterface {
28
+ init(): void;
29
+ }
30
+
31
+ declare class SolarisTranslationRouteTitleAdapter implements SolarisTranslationRouteTitleInterface {
32
+ private readonly activatedRoute;
33
+ private readonly transloco;
34
+ private readonly router;
35
+ private readonly title;
36
+ init(): void;
37
+ private getDeepestRoute;
38
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisTranslationRouteTitleAdapter, never>;
39
+ static ɵprov: i0.ɵɵInjectableDeclaration<SolarisTranslationRouteTitleAdapter>;
40
+ }
41
+
27
42
  declare const SOLARIS_TRANSLATION_CONTRIBUTIONS: InjectionToken<SolarisTranslationContributions$1[]>;
28
43
 
29
44
  declare function provideSolarisTranslation(config: SolarisTranslationConfiguration & {
@@ -62,5 +77,5 @@ declare class SolarisTranslationLoader implements TranslocoLoader {
62
77
 
63
78
  declare const SOLARIS_SERVICES_VERSION = "0.0.1";
64
79
 
65
- export { SOLARIS_SERVICES_VERSION, SOLARIS_TRANSLATION_CONTRIBUTIONS, SolarisTranslationImpl, SolarisTranslationLoader, SolarisTranslationPipe, provideSolarisTranslation, provideSolarisTranslationContributions };
66
- export type { Dict, SolarisTranslationConfiguration, SolarisTranslationContributions, SolarisTranslationDictionary, SolarisTranslationInterface, SolarisTranslationParams };
80
+ export { SOLARIS_SERVICES_VERSION, SOLARIS_TRANSLATION_CONTRIBUTIONS, SolarisTranslationImpl, SolarisTranslationLoader, SolarisTranslationPipe, SolarisTranslationRouteTitleAdapter, provideSolarisTranslation, provideSolarisTranslationContributions };
81
+ export type { Dict, SolarisTranslationConfiguration, SolarisTranslationContributions, SolarisTranslationDictionary, SolarisTranslationInterface, SolarisTranslationParams, SolarisTranslationRouteTitleInterface };