UNPKG

@asadi/angular-date-components

Version:

`Angular Date Components` is a comprehensive angular library of date-related components designed to meet the needs of applications that require localization based on various calendar systems. While the package currently includes two powerful components (S

79 lines (78 loc) 7.38 kB
import { InjectionToken } from "@angular/core"; /** * Injection token for providing date adapter for `Angular Date Components`. * Date Adapter is a class that implements `ADCIDateAdapter` interface. * implement methods of this interface to customize `Angular Date Components` for your calendar type. */ export const ADC_DATE_ADAPTER = new InjectionToken(''); /** * Injection token for providing some global options for `Angular Date Components`. * Use it to do some customization for `Angular Date Components` components. * It needs a class that implements `ADCIOptions` interface. */ export const ADC_OPTIONS = new InjectionToken(''); /** * Injection token for providing date formats for Angular Date Components. * Use this token to provide a class that implements `ADCIDateFormatter` interface. * * @example * // Example usage * * ```typescript * export class DateFormatterPersian implements ADCIDateFormatter { get DateSplitter(): ADCDateSplitter { return ADCDateSplitter.slash } } * @NgModule({ * providers: [ * { provide: ADC_DATE_FORMATTER, useClass: new DateFormatterPersian()} * ] * }) * export class AppModule {} * ``` */ export const ADC_DATE_FORMATTER = new InjectionToken(''); /** * Injection token for providing custom labels used across Angular Date Components. * Use this token to override the default labels by supplying an object that implements the `ADCILabels` interface. * `monthsOfYear` record keys must be exact values of months provided in `ADCIDateAapter` interface * * @example * // Example usage in an Angular module: * * ```typescript * const customLabels: ADCILabels = { * week: 'هفته', * year: 'سال', * day: 'روز', * today: 'امروز', * month: 'ماه', * daysOfWeek: ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چهارشنبه', 'پنج‌شنبه', 'جمعه', 'شنبه'], * monthsOfYear: { * 'January': 'ژانویه', * 'February': 'فوریه', * 'March': 'مارس', * 'April': 'اوریل', * 'May': 'مه', * 'June': 'ژوئن', * 'July': 'ژوئیه', * 'August': 'اوت', * 'September': 'سپتامبر', * 'October': 'اکتبر', * 'November': 'نوامبر', * 'December': 'دسامبر' * } * }; * * @NgModule({ * providers: [ * { provide: ADC_LABELS, useValue: customLabels } * ] * }) * export class AppModule {} * ``` */ export const ADC_LABELS = new InjectionToken(''); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0aW9uLXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXNhZGkvYW5ndWxhci1kYXRlLWNvbXBvbmVudHMvY29yZS9zcmMvaW5qZWN0aW9uLXRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJL0M7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFxQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUV6Rjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFnQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUcvRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFzQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUU1Rjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUNHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUErQixJQUFJLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQURDSURhdGVBZGFwdGVyLCBBRENJT3B0aW9ucywgQURDSURhdGVGb3JtYXR0ZXIsIEFEQ0lMYWJlbHMgfSBmcm9tIFwiLi9pbnRlcmZhY2VcIjtcclxuXHJcblxyXG4vKipcclxuICogSW5qZWN0aW9uIHRva2VuIGZvciBwcm92aWRpbmcgZGF0ZSBhZGFwdGVyIGZvciBgQW5ndWxhciBEYXRlIENvbXBvbmVudHNgLlxyXG4gKiBEYXRlIEFkYXB0ZXIgaXMgYSBjbGFzcyB0aGF0IGltcGxlbWVudHMgYEFEQ0lEYXRlQWRhcHRlcmAgaW50ZXJmYWNlLlxyXG4gKiBpbXBsZW1lbnQgbWV0aG9kcyBvZiB0aGlzIGludGVyZmFjZSB0byBjdXN0b21pemUgYEFuZ3VsYXIgRGF0ZSBDb21wb25lbnRzYCBmb3IgeW91ciBjYWxlbmRhciB0eXBlLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IEFEQ19EQVRFX0FEQVBURVIgOiBJbmplY3Rpb25Ub2tlbjxBRENJRGF0ZUFkYXB0ZXI+ID0gbmV3IEluamVjdGlvblRva2VuKCcnKTtcclxuXHJcbi8qKlxyXG4gKiBJbmplY3Rpb24gdG9rZW4gZm9yIHByb3ZpZGluZyBzb21lIGdsb2JhbCBvcHRpb25zIGZvciBgQW5ndWxhciBEYXRlIENvbXBvbmVudHNgLlxyXG4gKiBVc2UgaXQgdG8gZG8gc29tZSBjdXN0b21pemF0aW9uIGZvciBgQW5ndWxhciBEYXRlIENvbXBvbmVudHNgIGNvbXBvbmVudHMuXHJcbiAqIEl0IG5lZWRzIGEgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGBBRENJT3B0aW9uc2AgaW50ZXJmYWNlLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IEFEQ19PUFRJT05TOiBJbmplY3Rpb25Ub2tlbjxBRENJT3B0aW9ucz4gPSBuZXcgSW5qZWN0aW9uVG9rZW4oJycpO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBJbmplY3Rpb24gdG9rZW4gZm9yIHByb3ZpZGluZyBkYXRlIGZvcm1hdHMgZm9yIEFuZ3VsYXIgRGF0ZSBDb21wb25lbnRzLlxyXG4gKiBVc2UgdGhpcyB0b2tlbiB0byBwcm92aWRlIGEgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGBBRENJRGF0ZUZvcm1hdHRlcmAgaW50ZXJmYWNlLlxyXG4gKiBcclxuICogQGV4YW1wbGVcclxuICogLy8gRXhhbXBsZSB1c2FnZVxyXG4gKiBcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBleHBvcnQgY2xhc3MgRGF0ZUZvcm1hdHRlclBlcnNpYW4gaW1wbGVtZW50cyBBRENJRGF0ZUZvcm1hdHRlclxyXG4gICAge1xyXG4gICAgICAgIGdldCBEYXRlU3BsaXR0ZXIoKTogQURDRGF0ZVNwbGl0dGVyIHtcclxuICAgICAgICAgICAgcmV0dXJuIEFEQ0RhdGVTcGxpdHRlci5zbGFzaFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAqIEBOZ01vZHVsZSh7XHJcbiAqICAgcHJvdmlkZXJzOiBbXHJcbiAqICAgICB7IHByb3ZpZGU6IEFEQ19EQVRFX0ZPUk1BVFRFUiwgdXNlQ2xhc3M6IG5ldyBEYXRlRm9ybWF0dGVyUGVyc2lhbigpfVxyXG4gKiAgIF1cclxuICogfSlcclxuICogZXhwb3J0IGNsYXNzIEFwcE1vZHVsZSB7fVxyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBjb25zdCBBRENfREFURV9GT1JNQVRURVI6IEluamVjdGlvblRva2VuPEFEQ0lEYXRlRm9ybWF0dGVyPiA9IG5ldyBJbmplY3Rpb25Ub2tlbignJyk7XHJcblxyXG4vKipcclxuICogSW5qZWN0aW9uIHRva2VuIGZvciBwcm92aWRpbmcgY3VzdG9tIGxhYmVscyB1c2VkIGFjcm9zcyBBbmd1bGFyIERhdGUgQ29tcG9uZW50cy5cclxuICogVXNlIHRoaXMgdG9rZW4gdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgbGFiZWxzIGJ5IHN1cHBseWluZyBhbiBvYmplY3QgdGhhdCBpbXBsZW1lbnRzIHRoZSBgQURDSUxhYmVsc2AgaW50ZXJmYWNlLlxyXG4gKiBgbW9udGhzT2ZZZWFyYCByZWNvcmQga2V5cyBtdXN0IGJlIGV4YWN0IHZhbHVlcyBvZiBtb250aHMgcHJvdmlkZWQgaW4gYEFEQ0lEYXRlQWFwdGVyYCBpbnRlcmZhY2VcclxuICogXHJcbiAqIEBleGFtcGxlXHJcbiAqIC8vIEV4YW1wbGUgdXNhZ2UgaW4gYW4gQW5ndWxhciBtb2R1bGU6XHJcbiAqIFxyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIGNvbnN0IGN1c3RvbUxhYmVsczogQURDSUxhYmVscyA9IHtcclxuICogICB3ZWVrOiAn2YfZgdiq2YcnLFxyXG4gKiAgIHllYXI6ICfYs9in2YQnLFxyXG4gKiAgIGRheTogJ9ix2YjYsicsXHJcbiAqICAgdG9kYXk6ICfYp9mF2LHZiNiyJyxcclxuICogICBtb250aDogJ9mF2KfZhycsXHJcbiAqICAgZGF5c09mV2VlazogWyfbjNqp2LTZhtio2YcnLCAn2K/ZiNi02YbYqNmHJywgJ9iz2YfigIzYtNmG2KjZhycsICfahtmH2KfYsdi02YbYqNmHJywgJ9m+2YbYrOKAjNi02YbYqNmHJywgJ9is2YXYudmHJywgJ9i02YbYqNmHJ10sXHJcbiAqICAgbW9udGhzT2ZZZWFyOiB7XHJcbiAqICAgICAnSmFudWFyeSc6ICfamNin2YbZiNuM2YcnLFxyXG4gKiAgICAgJ0ZlYnJ1YXJ5JzogJ9mB2YjYsduM2YcnLFxyXG4gKiAgICAgJ01hcmNoJzogJ9mF2KfYsdizJyxcclxuICogICAgICdBcHJpbCc6ICfYp9mI2LHbjNmEJyxcclxuICogICAgICdNYXknOiAn2YXZhycsXHJcbiAqICAgICAnSnVuZSc6ICfamNmI2KbZhicsXHJcbiAqICAgICAnSnVseSc6ICfamNmI2KbbjNmHJyxcclxuICogICAgICdBdWd1c3QnOiAn2KfZiNiqJyxcclxuICogICAgICdTZXB0ZW1iZXInOiAn2LPZvtiq2KfZhdio2LEnLFxyXG4gKiAgICAgJ09jdG9iZXInOiAn2Kfaqdiq2KjYsScsXHJcbiAqICAgICAnTm92ZW1iZXInOiAn2YbZiNin2YXYqNixJyxcclxuICogICAgICdEZWNlbWJlcic6ICfYr9iz2KfZhdio2LEnXHJcbiAqICAgfVxyXG4gKiB9O1xyXG4gKiBcclxuICogQE5nTW9kdWxlKHtcclxuICogICBwcm92aWRlcnM6IFtcclxuICogICAgIHsgcHJvdmlkZTogQURDX0xBQkVMUywgdXNlVmFsdWU6IGN1c3RvbUxhYmVscyB9XHJcbiAqICAgXVxyXG4gKiB9KVxyXG4gKiBleHBvcnQgY2xhc3MgQXBwTW9kdWxlIHt9XHJcbiAqIGBgYFxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IEFEQ19MQUJFTFM6IEluamVjdGlvblRva2VuPEFEQ0lMYWJlbHM+ID0gbmV3IEluamVjdGlvblRva2VuKCcnKTsiXX0=