{"version":3,"file":"rxap-data-source-pagination-directives.mjs","sources":["../../../../../packages/angular/data-source/pagination/directives/src/lib/pagination-data-source.directive.ts","../../../../../packages/angular/data-source/pagination/directives/src/lib/to-pagination.pipe.ts","../../../../../packages/angular/data-source/pagination/directives/src/index.ts","../../../../../packages/angular/data-source/pagination/directives/src/rxap-data-source-pagination-directives.ts"],"sourcesContent":["import {\n  Directive,\n  Input,\n} from '@angular/core';\nimport { DataSourceCollectionDirective } from '@rxap/data-source/directive';\nimport {\n  AbstractPaginationDataSource,\n  PaginatorLike,\n  RxapPaginationDataSourceError,\n} from '@rxap/data-source/pagination';\nimport { Required } from '@rxap/utilities';\nimport { IdOrInstanceOrToken } from '@rxap/definition';\n\n@Directive({\n  selector: '[rxapPaginationDataSource]',\n  standalone: true,\n})\nexport class PaginationDataSourceDirective<Data> extends DataSourceCollectionDirective<Data> {\n\n  @Input('rxapPaginationDataSourcePaginator')\n  public paginator!: PaginatorLike;\n\n  // eslint-disable-next-line @angular-eslint/no-input-rename\n  @Input({\n    required: true,\n    alias: 'rxapPaginationDataSourceFrom',\n  })\n  public override dataSourceOrIdOrToken!: IdOrInstanceOrToken<AbstractPaginationDataSource<Data>>;\n\n  public override loadDataSource(): AbstractPaginationDataSource<Data> | null {\n    const dataSource = super.loadDataSource();\n\n    if (dataSource) {\n      if (!(dataSource instanceof AbstractPaginationDataSource)) {\n        throw new RxapPaginationDataSourceError('The data source is not a AbstractPaginationDataSource', '');\n      }\n      if (dataSource.paginator !== this.paginator) {\n        dataSource.paginator = this.paginator;\n      }\n    }\n\n    return dataSource;\n\n  }\n\n}\n\n\n","import {\n  Pipe,\n  PipeTransform,\n} from '@angular/core';\nimport {\n  BaseDataSource,\n  observableDataSource,\n  staticDataSource,\n} from '@rxap/data-source';\nimport {\n  PaginationDataSource,\n  PaginatorLike,\n} from '@rxap/data-source/pagination';\nimport {\n  isObservable,\n  Observable,\n} from 'rxjs';\n\n@Pipe({\n  name: 'toPagination',\n  standalone: true,\n})\nexport class ToPaginationPipe implements PipeTransform {\n\n  transform<Data>(\n    value: BaseDataSource<Data[]> | Data[] | Observable<Data[]>,\n    paginator: PaginatorLike | null = null,\n  ): PaginationDataSource<Data> {\n    let dataSource: BaseDataSource<Data[]>;\n    if (Array.isArray(value)) {\n      dataSource = staticDataSource(value, { id: 'auto-to-pagination' });\n    } else if (isObservable(value)) {\n      dataSource = observableDataSource(value, { id: 'auto-to-pagination' });\n    } else {\n      dataSource = value;\n    }\n    return new PaginationDataSource<Data>(dataSource, paginator);\n  }\n\n}\n\n\n","// region \nexport * from './lib/pagination-data-source.directive';\nexport * from './lib/to-pagination.pipe';\n// endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAiBM,MAAO,6BAAoC,SAAQ,6BAAmC,CAAA;IAY1E,cAAc,GAAA;AAC5B,QAAA,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,EAAE;QAEzC,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,EAAE,UAAU,YAAY,4BAA4B,CAAC,EAAE;AACzD,gBAAA,MAAM,IAAI,6BAA6B,CAAC,uDAAuD,EAAE,EAAE,CAAC;;YAEtG,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE;AAC3C,gBAAA,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;;;AAIzC,QAAA,OAAO,UAAU;;+GAxBR,6BAA6B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA7B,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,CAAA,mCAAA,EAAA,WAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,8BAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;8BAIQ,SAAS,EAAA,CAAA;sBADf,KAAK;uBAAC,mCAAmC;gBAQ1B,qBAAqB,EAAA,CAAA;sBAJpC,KAAK;AAAC,gBAAA,IAAA,EAAA,CAAA;AACL,wBAAA,QAAQ,EAAE,IAAI;AACd,wBAAA,KAAK,EAAE,8BAA8B;AACtC,qBAAA;;;MCJU,gBAAgB,CAAA;AAE3B,IAAA,SAAS,CACP,KAA2D,EAC3D,SAAA,GAAkC,IAAI,EAAA;AAEtC,QAAA,IAAI,UAAkC;AACtC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,UAAU,GAAG,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,CAAC;;AAC7D,aAAA,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE;YAC9B,UAAU,GAAG,oBAAoB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,CAAC;;aACjE;YACL,UAAU,GAAG,KAAK;;AAEpB,QAAA,OAAO,IAAI,oBAAoB,CAAO,UAAU,EAAE,SAAS,CAAC;;+GAdnD,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,cAAc;AACpB,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACrBD;AAGA;;ACHA;;AAEG;;;;"}