@taiga-ui/core
Version:
Core library for creating Angular components and applications using Taiga UI
20 lines • 3.74 kB
JavaScript
import { InjectionToken, Optional, SkipSelf } from '@angular/core';
import { map, of } from 'rxjs';
export const TUI_DEFAULT_DATE_FORMAT = {
mode: 'DMY',
separator: '.',
};
/**
* Formatting configuration for displayed dates
*/
export const TUI_DATE_FORMAT = new InjectionToken(ngDevMode ? 'TUI_DATE_FORMAT' : '', {
factory: () => of(TUI_DEFAULT_DATE_FORMAT),
});
export function tuiDateFormatProvider(options) {
return {
provide: TUI_DATE_FORMAT,
deps: [[new Optional(), new SkipSelf(), TUI_DATE_FORMAT]],
useFactory: (parent) => (parent || of(TUI_DEFAULT_DATE_FORMAT)).pipe(map((format) => ({ ...format, ...options }))),
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1mb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy9kYXRlLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFFLFFBQVEsRUFBaUIsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWhGLE9BQU8sRUFBQyxHQUFHLEVBQW1CLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQWlCOUMsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQTBCO0lBQzFELElBQUksRUFBRSxLQUFLO0lBQ1gsU0FBUyxFQUFFLEdBQUc7Q0FDakIsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUM3QyxTQUFTLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQ2xDO0lBQ0ksT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztDQUM3QyxDQUNKLENBQUM7QUFFRixNQUFNLFVBQVUscUJBQXFCLENBQUMsT0FBdUM7SUFDekUsT0FBTztRQUNILE9BQU8sRUFBRSxlQUFlO1FBQ3hCLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxJQUFJLFFBQVEsRUFBRSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQ3pELFVBQVUsRUFBRSxDQUNSLE1BQWdELEVBQ2YsRUFBRSxDQUNuQyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDeEMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBRyxNQUFNLEVBQUUsR0FBRyxPQUFPLEVBQUMsQ0FBQyxDQUFDLENBQzdDO0tBQ1IsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VuLCBPcHRpb25hbCwgdHlwZSBQcm92aWRlciwgU2tpcFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0eXBlIFR1aURhdGVNb2RlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge21hcCwgdHlwZSBPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogRm9ybWF0dGluZyBjb25maWd1cmF0aW9uIGZvciBkaXNwbGF5ZWQgZGF0ZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUdWlEYXRlRm9ybWF0U2V0dGluZ3Mge1xuICAgIC8qKlxuICAgICAqIERhdGUgZm9ybWF0IG1vZGUuXG4gICAgICovXG4gICAgcmVhZG9ubHkgbW9kZTogVHVpRGF0ZU1vZGU7XG4gICAgLyoqXG4gICAgICogU2VwYXJhdG9yIGJldHdlZW4gZGF0ZSBzZWdtZW50c1xuICAgICAqIEBleGFtcGxlIDEwLjAyICgnLicgYnkgZGVmYXVsdClcbiAgICAgKi9cbiAgICByZWFkb25seSBzZXBhcmF0b3I6IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9ERUZBVUxUX0RBVEVfRk9STUFUOiBUdWlEYXRlRm9ybWF0U2V0dGluZ3MgPSB7XG4gICAgbW9kZTogJ0RNWScsXG4gICAgc2VwYXJhdG9yOiAnLicsXG59O1xuXG4vKipcbiAqIEZvcm1hdHRpbmcgY29uZmlndXJhdGlvbiBmb3IgZGlzcGxheWVkIGRhdGVzXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfREFURV9GT1JNQVQgPSBuZXcgSW5qZWN0aW9uVG9rZW48T2JzZXJ2YWJsZTxUdWlEYXRlRm9ybWF0U2V0dGluZ3M+PihcbiAgICBuZ0Rldk1vZGUgPyAnVFVJX0RBVEVfRk9STUFUJyA6ICcnLFxuICAgIHtcbiAgICAgICAgZmFjdG9yeTogKCkgPT4gb2YoVFVJX0RFRkFVTFRfREFURV9GT1JNQVQpLFxuICAgIH0sXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpRGF0ZUZvcm1hdFByb3ZpZGVyKG9wdGlvbnM6IFBhcnRpYWw8VHVpRGF0ZUZvcm1hdFNldHRpbmdzPik6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcm92aWRlOiBUVUlfREFURV9GT1JNQVQsXG4gICAgICAgIGRlcHM6IFtbbmV3IE9wdGlvbmFsKCksIG5ldyBTa2lwU2VsZigpLCBUVUlfREFURV9GT1JNQVRdXSxcbiAgICAgICAgdXNlRmFjdG9yeTogKFxuICAgICAgICAgICAgcGFyZW50OiBPYnNlcnZhYmxlPFR1aURhdGVGb3JtYXRTZXR0aW5ncz4gfCBudWxsLFxuICAgICAgICApOiBPYnNlcnZhYmxlPFR1aURhdGVGb3JtYXRTZXR0aW5ncz4gPT5cbiAgICAgICAgICAgIChwYXJlbnQgfHwgb2YoVFVJX0RFRkFVTFRfREFURV9GT1JNQVQpKS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoZm9ybWF0KSA9PiAoey4uLmZvcm1hdCwgLi4ub3B0aW9uc30pKSxcbiAgICAgICAgICAgICksXG4gICAgfTtcbn1cbiJdfQ==