{"version":3,"file":"nebular-date-fns.mjs","sources":["../../../src/framework/date-fns/services/date-fns-date.service.ts","../../../src/framework/date-fns/date-fns.module.ts","../../../src/framework/date-fns/public_api.ts","../../../src/framework/date-fns/nebular-date-fns.ts"],"sourcesContent":["/*\n * @license\n * Copyright Akveo. All Rights Reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n */\n\nimport { Inject, Injectable, LOCALE_ID, Optional } from '@angular/core';\n\nimport { NB_DATE_SERVICE_OPTIONS, NbNativeDateService } from '@nebular/theme';\n\nimport { default as parse } from 'date-fns/parse';\nimport { default as formatDate } from 'date-fns/format';\nimport { default as getWeek } from 'date-fns/getWeek';\n\nexport interface NbDateFnsOptions {\n  format: string;\n  parseOptions: {},\n  formatOptions: {},\n  getWeekOptions: {},\n}\n\n@Injectable()\nexport class NbDateFnsDateService extends NbNativeDateService {\n  protected options: Partial<NbDateFnsOptions>;\n\n  constructor(\n    @Inject(LOCALE_ID) locale: string,\n    @Optional() @Inject(NB_DATE_SERVICE_OPTIONS) options,\n  ) {\n    super(locale);\n    this.options = options || {};\n  }\n\n  format(date: Date, format: string): string {\n    if (date) {\n      return formatDate(date, format || this.options.format, this.options.formatOptions);\n    }\n\n    return '';\n  }\n\n  parse(date: string, format: string): Date {\n    return parse(date, format || this.options.format, new Date(), this.options.parseOptions);\n  }\n\n  getId(): string {\n    return 'date-fns';\n  }\n\n  getWeekNumber(date: Date): number {\n    return getWeek(date, this.options.getWeekOptions);\n  }\n\n  getDateFormat(): string {\n    return 'YYYY-MM-dd';\n  }\n}\n","/*\n * @license\n * Copyright Akveo. All Rights Reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n */\n\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { NB_DATE_SERVICE_OPTIONS, NbDateService } from '@nebular/theme';\nimport { NbDateFnsOptions, NbDateFnsDateService } from './services/date-fns-date.service';\n\nconst dateFnsServiceProvider = { provide: NbDateService, useClass: NbDateFnsDateService };\n\n@NgModule({\n  providers: [ dateFnsServiceProvider ],\n})\nexport class NbDateFnsDateModule {\n  static forRoot(options: Partial<NbDateFnsOptions>): ModuleWithProviders<NbDateFnsDateModule> {\n    return {\n      ngModule: NbDateFnsDateModule,\n      providers: [\n        dateFnsServiceProvider,\n        { provide: NB_DATE_SERVICE_OPTIONS, useValue: options },\n      ],\n    };\n  }\n\n  static forChild(options: Partial<NbDateFnsOptions>): ModuleWithProviders<NbDateFnsDateModule> {\n    return {\n      ngModule: NbDateFnsDateModule,\n      providers: [\n        dateFnsServiceProvider,\n        { provide: NB_DATE_SERVICE_OPTIONS, useValue: options },\n      ],\n    };\n  }\n}\n","/*\n * @license\n * Copyright Akveo. All Rights Reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n */\n\nexport * from './services/date-fns-date.service';\nexport * from './date-fns.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;AAAA;;;;AAIG;AAkBG,MAAO,oBAAqB,SAAQ,mBAAmB,CAAA;IAG3D,WAAA,CACqB,MAAc,EACY,OAAO,EAAA;QAEpD,KAAK,CAAC,MAAM,CAAC;AACb,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE;IAC9B;IAEA,MAAM,CAAC,IAAU,EAAE,MAAc,EAAA;QAC/B,IAAI,IAAI,EAAE;AACR,YAAA,OAAO,UAAU,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QACpF;AAEA,QAAA,OAAO,EAAE;IACX;IAEA,KAAK,CAAC,IAAY,EAAE,MAAc,EAAA;QAChC,OAAO,KAAK,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;IAC1F;IAEA,KAAK,GAAA;AACH,QAAA,OAAO,UAAU;IACnB;AAEA,IAAA,aAAa,CAAC,IAAU,EAAA;QACtB,OAAO,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;IACnD;IAEA,aAAa,GAAA;AACX,QAAA,OAAO,YAAY;IACrB;8GAjCW,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAIrB,SAAS,EAAA,EAAA,EAAA,KAAA,EACG,uBAAuB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHALlC,oBAAoB,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC;;0BAKI,MAAM;2BAAC,SAAS;;0BAChB;;0BAAY,MAAM;2BAAC,uBAAuB;;;AC3B/C;;;;AAIG;AAOH,MAAM,sBAAsB,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,oBAAoB,EAAE;MAK5E,mBAAmB,CAAA;IAC9B,OAAO,OAAO,CAAC,OAAkC,EAAA;QAC/C,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE;gBACT,sBAAsB;AACtB,gBAAA,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxD,aAAA;SACF;IACH;IAEA,OAAO,QAAQ,CAAC,OAAkC,EAAA;QAChD,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE;gBACT,sBAAsB;AACtB,gBAAA,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxD,aAAA;SACF;IACH;8GAnBW,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA;+GAAnB,mBAAmB,EAAA,SAAA,EAFnB,CAAE,sBAAsB,CAAE,EAAA,CAAA,CAAA;;2FAE1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,SAAS,EAAE,CAAE,sBAAsB,CAAE;AACtC,iBAAA;;;ACfD;;;;AAIG;;ACJH;;AAEG;;;;"}