mn-angular-lib 0.0.4 → 0.0.5
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.
- package/fesm2022/mn-angular-lib.mjs.map +1 -1
- package/index.d.ts +3 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mn-angular-lib.mjs","sources":["../../../projects/mn-angular-lib/src/lib/styles/themes.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.tokens.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.providers.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.store.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.service.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert-outlet/mn-alert-outlet.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert-outlet/mn-alert-outlet.html","../../../projects/mn-angular-lib/src/public-api.ts","../../../projects/mn-angular-lib/src/mn-angular-lib.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport interface MnTheme {\r\n primary: string;\r\n radius: string;\r\n padding: string;\r\n}\r\n\r\nexport const MN_THEME = new InjectionToken<MnTheme>('MN_THEME', {\r\n providedIn: 'root',\r\n factory: () => ({\r\n primary: '#0d6efd',\r\n radius: '0.375rem',\r\n padding: '0.5rem 0.75rem',\r\n }),\r\n});\r\n\r\nexport function provideMnTheme(partial: Partial<MnTheme>) {\r\n return {\r\n provide: MN_THEME,\r\n useFactory: (defaults: MnTheme) => ({ ...defaults, ...partial }),\r\n deps: [MN_THEME],\r\n } as const;\r\n}\r\n","// projects/mn-angular-lib/src/lib/mn-mn-alert/mn-mn-alert.tokens.ts\r\nimport { InjectionToken } from '@angular/core';\r\nimport { MnAlert } from './mn-alert.types';\r\n\r\nexport type MnAlertKind = 'success' | 'info' | 'warning' | 'error' | 'default';\r\n\r\nexport interface MnAlertConfig {\r\n durations?: Partial<Record<MnAlertKind, number | null>>;\r\n cssClasses?: Partial<Record<MnAlertKind, string>>;\r\n icons?: Partial<Record<MnAlertKind, unknown>>;\r\n defaultDuration?: number | null;\r\n finalize?: (a: MnAlert) => MnAlert;\r\n}\r\n\r\nexport const MN_ALERT_CONFIG = new InjectionToken<MnAlertConfig>('MN_ALERT_CONFIG');\r\n\r\nexport const DEFAULT_MN_ALERT_CONFIG: Required<MnAlertConfig> = {\r\n durations: { success: 3000, info: 4000, warning: 5000, error: 7000, default: 4000 },\r\n cssClasses: {\r\n success: 'mn-alert-success',\r\n info: 'mn-alert-info',\r\n warning: 'mn-alert-warning',\r\n error: 'mn-alert-error',\r\n default: 'alert'\r\n },\r\n icons: {},\r\n defaultDuration: 4000,\r\n finalize: (a) => a\r\n};\r\n","// projects/mn-angular-lib/src/lib/mn-mn-alert/mn-mn-alert.providers.ts\r\nimport { Provider } from '@angular/core';\r\nimport { MN_ALERT_CONFIG, MnAlertConfig, DEFAULT_MN_ALERT_CONFIG } from './mn-alert.tokens';\r\n\r\nexport function provideMnAlerts(config: MnAlertConfig = {}): Provider {\r\n const merged: MnAlertConfig = {\r\n ...DEFAULT_MN_ALERT_CONFIG,\r\n ...config,\r\n durations: { ...DEFAULT_MN_ALERT_CONFIG.durations, ...(config.durations ?? {}) },\r\n cssClasses: { ...DEFAULT_MN_ALERT_CONFIG.cssClasses, ...(config.cssClasses ?? {}) },\r\n icons: { ...DEFAULT_MN_ALERT_CONFIG.icons, ...(config.icons ?? {}) }\r\n };\r\n return { provide: MN_ALERT_CONFIG, useValue: merged };\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { MnAlert, MnAlertId } from './mn-alert.types';\r\nimport { DEFAULT_MN_ALERT_CONFIG } from './mn-alert.tokens';\r\n\r\nlet COUNTER = 0;\r\nconst uid = () => `mn_${++COUNTER}`;\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MnAlertStore {\r\n private readonly _alerts$ = new BehaviorSubject<MnAlert[]>([]);\r\n readonly alerts$ = this._alerts$.asObservable();\r\n\r\n show(partial: Omit<MnAlert, 'id'>): MnAlertId {\r\n // Ensure every alert has a numeric duration: use provided or fall back to per-kind default\r\n const computedDuration = (partial as any).duration ?? (DEFAULT_MN_ALERT_CONFIG.durations as any)[(partial as any).kind] ?? DEFAULT_MN_ALERT_CONFIG.defaultDuration;\r\n const a: MnAlert = { id: uid(), ...partial, duration: computedDuration } as MnAlert;\r\n this._alerts$.next([...this._alerts$.value, a]);\r\n\r\n if (typeof a.duration === 'number' && a.duration > 0) {\r\n setTimeout(() => this.dismiss(a.id), a.duration);\r\n }\r\n return a.id;\r\n }\r\n\r\n dismiss(id: MnAlertId) {\r\n const list = this._alerts$.value;\r\n if (list.some(x => x.id === id)) {\r\n this._alerts$.next(list.filter(x => x.id !== id));\r\n }\r\n }\r\n\r\n clear() {\r\n this._alerts$.next([]);\r\n }\r\n}\r\n","// projects/mn-angular-lib/src/lib/mn-mn-alert/mn-mn-alert.service.ts\r\nimport { Injectable, Inject, Optional } from '@angular/core';\r\nimport { MnAlertStore } from './mn-alert.store';\r\nimport { MnAlert, MnAlertId } from './mn-alert.types';\r\nimport { MN_ALERT_CONFIG, DEFAULT_MN_ALERT_CONFIG, MnAlertConfig, MnAlertKind } from './mn-alert.tokens';\r\n\r\nexport interface MnShowInput {\r\n title: string;\r\n subTitle?: string;\r\n duration?: number;\r\n icon?: unknown;\r\n cssClass?: string;\r\n meta?: Record<string, unknown>;\r\n kind: MnAlertKind;\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MnAlertService {\r\n private readonly cfg: Required<MnAlertConfig>;\r\n private readonly userDurations?: Partial<Record<MnAlertKind, number | null>>;\r\n private readonly hasUserDurations: boolean;\r\n\r\n constructor(\r\n private readonly store: MnAlertStore,\r\n @Optional() @Inject(MN_ALERT_CONFIG) cfg: MnAlertConfig | null\r\n ) {\r\n this.userDurations = cfg?.durations;\r\n this.hasUserDurations = !!cfg?.durations;\r\n this.cfg = {\r\n ...DEFAULT_MN_ALERT_CONFIG,\r\n ...(cfg ?? {}),\r\n // Do not pre-merge durations; keep defaults separate and use logic in kind()\r\n durations: DEFAULT_MN_ALERT_CONFIG.durations,\r\n cssClasses: { ...DEFAULT_MN_ALERT_CONFIG.cssClasses, ...(cfg?.cssClasses ?? {}) },\r\n icons: { ...DEFAULT_MN_ALERT_CONFIG.icons, ...(cfg?.icons ?? {}) }\r\n };\r\n }\r\n\r\n show(input: MnShowInput): MnAlertId {\r\n // Always ensure a numeric duration is set\r\n let duration = input.duration;\r\n if (duration == null) {\r\n // Prefer user defaultDuration if provided and not null, otherwise use library per-kind default\r\n const userDefault = this.cfg.defaultDuration;\r\n if (typeof userDefault === 'number') {\r\n duration = userDefault;\r\n } else {\r\n duration = DEFAULT_MN_ALERT_CONFIG.durations[input.kind as keyof typeof DEFAULT_MN_ALERT_CONFIG.durations] as number;\r\n }\r\n }\r\n\r\n const a: Omit<MnAlert, 'id'> = {\r\n title: input.title,\r\n subTitle: input.subTitle,\r\n duration,\r\n icon: input.icon,\r\n cssClass: input.cssClass,\r\n meta: input.meta,\r\n kind: input.kind\r\n };\r\n return this.store.show(this.cfg.finalize(a as MnAlert));\r\n }\r\n\r\n success(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('success', title, subTitle, extra);\r\n }\r\n info(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('info', title, subTitle, extra);\r\n }\r\n warning(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('warning', title, subTitle, extra);\r\n }\r\n error(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('error', title, subTitle, extra);\r\n }\r\n\r\n dismiss(id: MnAlertId) { this.store.dismiss(id); }\r\n clear() { this.store.clear(); }\r\n\r\n private kind(kind: MnAlertKind, title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n let duration: number | null | undefined = extra?.duration;\r\n\r\n if (duration == null) {\r\n if (this.hasUserDurations) {\r\n const userDur = this.userDurations?.[kind];\r\n if (typeof userDur === 'number') {\r\n duration = userDur;\r\n } else {\r\n // userDur is undefined or null -> fallback to user defaultDuration if numeric\r\n if (typeof this.cfg.defaultDuration === 'number') {\r\n duration = this.cfg.defaultDuration;\r\n } else {\r\n duration = this.cfg.durations[kind as keyof typeof this.cfg.durations];\r\n }\r\n }\r\n } else {\r\n // No user durations provided at all; use library defaults per kind\r\n duration = this.cfg.durations[kind as keyof typeof this.cfg.durations];\r\n }\r\n }\r\n\r\n const cssClass = extra?.cssClass ?? this.cfg.cssClasses[kind];\r\n const icon = (extra?.icon ?? this.cfg.icons[kind]) as unknown;\r\n\r\n return this.show({ title, subTitle, duration: duration as number, cssClass, icon, meta: extra?.meta , kind: kind});\r\n }\r\n}\r\n","\r\nimport {Component, Input, TemplateRef, ChangeDetectionStrategy, inject} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Observable } from 'rxjs';\r\nimport {MnAlertStore} from '../mn-alert.store';\r\nimport {MnAlert} from '../mn-alert.types';\r\n\r\nexport interface MnAlertTemplateContext {\r\n $implicit: MnAlert;\r\n alert: MnAlert;\r\n dismiss: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'mn-alert-outlet',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './mn-alert-outlet.html',\r\n styleUrl: './mn-alert-outlet.css',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class MnAlertOutletComponent {\r\n @Input({ required: true }) template!: TemplateRef<MnAlertTemplateContext>;\r\n\r\n private store = inject(MnAlertStore);\r\n alerts$: Observable<MnAlert[]> = this.store.alerts$;\r\n\r\n constructor() {}\r\n\r\n dismissAlert(id: string) {\r\n this.store.dismiss(id);\r\n }\r\n\r\n trackById = (_: number, a: MnAlert) => a.id;\r\n\r\n contextFor(a: MnAlert) {\r\n return {\r\n $implicit: a,\r\n alert: a,\r\n dismiss: () => this.dismissAlert(a.id)\r\n } as const;\r\n }\r\n\r\n}\r\n","@if (alerts$ | async; as alerts) {\r\n @for (a of alerts; track trackById) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"template\"\r\n [ngTemplateOutletContext]=\"contextFor(a)\">\r\n </ng-container>\r\n }\r\n}\r\n","/*\r\n * Public API Surface of mn-lib\r\n */\r\nexport * from './lib';\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":"mn-angular-lib.mjs","sources":["../../../projects/mn-angular-lib/src/lib/styles/themes.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.tokens.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.providers.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.store.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert.service.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert-outlet/mn-alert-outlet.ts","../../../projects/mn-angular-lib/src/lib/features/mn-alert/mn-alert-outlet/mn-alert-outlet.html","../../../projects/mn-angular-lib/src/public-api.ts","../../../projects/mn-angular-lib/src/mn-angular-lib.ts"],"sourcesContent":["import { InjectionToken, Provider } from '@angular/core';\r\n\r\nexport interface MnTheme {\r\n primary: string;\r\n radius: string;\r\n padding: string;\r\n}\r\n\r\nexport const MN_THEME = new InjectionToken<MnTheme>('MN_THEME', {\r\n providedIn: 'root',\r\n factory: () => ({\r\n primary: '#0d6efd',\r\n radius: '0.375rem',\r\n padding: '0.5rem 0.75rem',\r\n }),\r\n});\r\n\r\nexport function provideMnTheme(partial: Partial<MnTheme>) {\r\n return {\r\n provide: MN_THEME,\r\n useFactory: (defaults: MnTheme) => ({ ...defaults, ...partial }),\r\n deps: [MN_THEME],\r\n };\r\n}\r\n","// projects/mn-angular-lib/src/lib/mn-mn-alert/mn-mn-alert.tokens.ts\r\nimport { InjectionToken } from '@angular/core';\r\nimport { MnAlert } from './mn-alert.types';\r\n\r\nexport type MnAlertKind = 'success' | 'info' | 'warning' | 'error' | 'default';\r\n\r\nexport interface MnAlertConfig {\r\n durations?: Partial<Record<MnAlertKind, number | null>>;\r\n cssClasses?: Partial<Record<MnAlertKind, string>>;\r\n icons?: Partial<Record<MnAlertKind, unknown>>;\r\n defaultDuration?: number | null;\r\n finalize?: (a: MnAlert) => MnAlert;\r\n}\r\n\r\nexport const MN_ALERT_CONFIG = new InjectionToken<MnAlertConfig>('MN_ALERT_CONFIG');\r\n\r\nexport const DEFAULT_MN_ALERT_CONFIG: Required<MnAlertConfig> = {\r\n durations: { success: 3000, info: 4000, warning: 5000, error: 7000, default: 4000 },\r\n cssClasses: {\r\n success: 'mn-alert-success',\r\n info: 'mn-alert-info',\r\n warning: 'mn-alert-warning',\r\n error: 'mn-alert-error',\r\n default: 'alert'\r\n },\r\n icons: {},\r\n defaultDuration: 4000,\r\n finalize: (a) => a\r\n};\r\n","// projects/mn-angular-lib/src/lib/mn-mn-alert/mn-mn-alert.providers.ts\r\nimport { Provider } from '@angular/core';\r\nimport { MN_ALERT_CONFIG, MnAlertConfig, DEFAULT_MN_ALERT_CONFIG } from './mn-alert.tokens';\r\n\r\nexport function provideMnAlerts(config: MnAlertConfig = {}): Provider {\r\n const merged: MnAlertConfig = {\r\n ...DEFAULT_MN_ALERT_CONFIG,\r\n ...config,\r\n durations: { ...DEFAULT_MN_ALERT_CONFIG.durations, ...(config.durations ?? {}) },\r\n cssClasses: { ...DEFAULT_MN_ALERT_CONFIG.cssClasses, ...(config.cssClasses ?? {}) },\r\n icons: { ...DEFAULT_MN_ALERT_CONFIG.icons, ...(config.icons ?? {}) }\r\n };\r\n return { provide: MN_ALERT_CONFIG, useValue: merged };\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { MnAlert, MnAlertId } from './mn-alert.types';\r\nimport { DEFAULT_MN_ALERT_CONFIG } from './mn-alert.tokens';\r\n\r\nlet COUNTER = 0;\r\nconst uid = () => `mn_${++COUNTER}`;\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MnAlertStore {\r\n private readonly _alerts$ = new BehaviorSubject<MnAlert[]>([]);\r\n readonly alerts$ = this._alerts$.asObservable();\r\n\r\n show(partial: Omit<MnAlert, 'id'>): MnAlertId {\r\n // Ensure every alert has a numeric duration: use provided or fall back to per-kind default\r\n const computedDuration = (partial as any).duration ?? (DEFAULT_MN_ALERT_CONFIG.durations as any)[(partial as any).kind] ?? DEFAULT_MN_ALERT_CONFIG.defaultDuration;\r\n const a: MnAlert = { id: uid(), ...partial, duration: computedDuration } as MnAlert;\r\n this._alerts$.next([...this._alerts$.value, a]);\r\n\r\n if (typeof a.duration === 'number' && a.duration > 0) {\r\n setTimeout(() => this.dismiss(a.id), a.duration);\r\n }\r\n return a.id;\r\n }\r\n\r\n dismiss(id: MnAlertId) {\r\n const list = this._alerts$.value;\r\n if (list.some(x => x.id === id)) {\r\n this._alerts$.next(list.filter(x => x.id !== id));\r\n }\r\n }\r\n\r\n clear() {\r\n this._alerts$.next([]);\r\n }\r\n}\r\n","// projects/mn-angular-lib/src/lib/mn-mn-alert/mn-mn-alert.service.ts\r\nimport { Injectable, Inject, Optional } from '@angular/core';\r\nimport { MnAlertStore } from './mn-alert.store';\r\nimport { MnAlert, MnAlertId } from './mn-alert.types';\r\nimport { MN_ALERT_CONFIG, DEFAULT_MN_ALERT_CONFIG, MnAlertConfig, MnAlertKind } from './mn-alert.tokens';\r\n\r\nexport interface MnShowInput {\r\n title: string;\r\n subTitle?: string;\r\n duration?: number;\r\n icon?: unknown;\r\n cssClass?: string;\r\n meta?: Record<string, unknown>;\r\n kind: MnAlertKind;\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MnAlertService {\r\n private readonly cfg: Required<MnAlertConfig>;\r\n private readonly userDurations?: Partial<Record<MnAlertKind, number | null>>;\r\n private readonly hasUserDurations: boolean;\r\n\r\n constructor(\r\n private readonly store: MnAlertStore,\r\n @Optional() @Inject(MN_ALERT_CONFIG) cfg: MnAlertConfig | null\r\n ) {\r\n this.userDurations = cfg?.durations;\r\n this.hasUserDurations = !!cfg?.durations;\r\n this.cfg = {\r\n ...DEFAULT_MN_ALERT_CONFIG,\r\n ...(cfg ?? {}),\r\n // Do not pre-merge durations; keep defaults separate and use logic in kind()\r\n durations: DEFAULT_MN_ALERT_CONFIG.durations,\r\n cssClasses: { ...DEFAULT_MN_ALERT_CONFIG.cssClasses, ...(cfg?.cssClasses ?? {}) },\r\n icons: { ...DEFAULT_MN_ALERT_CONFIG.icons, ...(cfg?.icons ?? {}) }\r\n };\r\n }\r\n\r\n show(input: MnShowInput): MnAlertId {\r\n // Always ensure a numeric duration is set\r\n let duration = input.duration;\r\n if (duration == null) {\r\n // Prefer user defaultDuration if provided and not null, otherwise use library per-kind default\r\n const userDefault = this.cfg.defaultDuration;\r\n if (typeof userDefault === 'number') {\r\n duration = userDefault;\r\n } else {\r\n duration = DEFAULT_MN_ALERT_CONFIG.durations[input.kind as keyof typeof DEFAULT_MN_ALERT_CONFIG.durations] as number;\r\n }\r\n }\r\n\r\n const a: Omit<MnAlert, 'id'> = {\r\n title: input.title,\r\n subTitle: input.subTitle,\r\n duration,\r\n icon: input.icon,\r\n cssClass: input.cssClass,\r\n meta: input.meta,\r\n kind: input.kind\r\n };\r\n return this.store.show(this.cfg.finalize(a as MnAlert));\r\n }\r\n\r\n success(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('success', title, subTitle, extra);\r\n }\r\n info(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('info', title, subTitle, extra);\r\n }\r\n warning(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('warning', title, subTitle, extra);\r\n }\r\n error(title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n return this.kind('error', title, subTitle, extra);\r\n }\r\n\r\n dismiss(id: MnAlertId) { this.store.dismiss(id); }\r\n clear() { this.store.clear(); }\r\n\r\n private kind(kind: MnAlertKind, title: string, subTitle?: string, extra?: Partial<MnShowInput>) {\r\n let duration: number | null | undefined = extra?.duration;\r\n\r\n if (duration == null) {\r\n if (this.hasUserDurations) {\r\n const userDur = this.userDurations?.[kind];\r\n if (typeof userDur === 'number') {\r\n duration = userDur;\r\n } else {\r\n // userDur is undefined or null -> fallback to user defaultDuration if numeric\r\n if (typeof this.cfg.defaultDuration === 'number') {\r\n duration = this.cfg.defaultDuration;\r\n } else {\r\n duration = this.cfg.durations[kind as keyof typeof this.cfg.durations];\r\n }\r\n }\r\n } else {\r\n // No user durations provided at all; use library defaults per kind\r\n duration = this.cfg.durations[kind as keyof typeof this.cfg.durations];\r\n }\r\n }\r\n\r\n const cssClass = extra?.cssClass ?? this.cfg.cssClasses[kind];\r\n const icon = (extra?.icon ?? this.cfg.icons[kind]) as unknown;\r\n\r\n return this.show({ title, subTitle, duration: duration as number, cssClass, icon, meta: extra?.meta , kind: kind});\r\n }\r\n}\r\n","\r\nimport {Component, Input, TemplateRef, ChangeDetectionStrategy, inject} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Observable } from 'rxjs';\r\nimport {MnAlertStore} from '../mn-alert.store';\r\nimport {MnAlert} from '../mn-alert.types';\r\n\r\nexport interface MnAlertTemplateContext {\r\n $implicit: MnAlert;\r\n alert: MnAlert;\r\n dismiss: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'mn-alert-outlet',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './mn-alert-outlet.html',\r\n styleUrl: './mn-alert-outlet.css',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class MnAlertOutletComponent {\r\n @Input({ required: true }) template!: TemplateRef<MnAlertTemplateContext>;\r\n\r\n private store = inject(MnAlertStore);\r\n alerts$: Observable<MnAlert[]> = this.store.alerts$;\r\n\r\n constructor() {}\r\n\r\n dismissAlert(id: string) {\r\n this.store.dismiss(id);\r\n }\r\n\r\n trackById = (_: number, a: MnAlert) => a.id;\r\n\r\n contextFor(a: MnAlert) {\r\n return {\r\n $implicit: a,\r\n alert: a,\r\n dismiss: () => this.dismissAlert(a.id)\r\n } as const;\r\n }\r\n\r\n}\r\n","@if (alerts$ | async; as alerts) {\r\n @for (a of alerts; track trackById) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"template\"\r\n [ngTemplateOutletContext]=\"contextFor(a)\">\r\n </ng-container>\r\n }\r\n}\r\n","/*\r\n * Public API Surface of mn-lib\r\n */\r\nexport * from './lib';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -10,13 +10,13 @@ interface MnTheme {
|
|
|
10
10
|
}
|
|
11
11
|
declare const MN_THEME: InjectionToken<MnTheme>;
|
|
12
12
|
declare function provideMnTheme(partial: Partial<MnTheme>): {
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
provide: InjectionToken<MnTheme>;
|
|
14
|
+
useFactory: (defaults: MnTheme) => {
|
|
15
15
|
primary: string;
|
|
16
16
|
radius: string;
|
|
17
17
|
padding: string;
|
|
18
18
|
};
|
|
19
|
-
|
|
19
|
+
deps: InjectionToken<MnTheme>[];
|
|
20
20
|
};
|
|
21
21
|
|
|
22
22
|
type MnAlertId = string;
|