UNPKG

@rxap/data-source

Version:

Provides a set of classes and decorators for creating and managing data sources in Angular applications, including base classes, static data sources, observable data sources, and method data sources. It also includes a component for displaying data source

1 lines 4.84 kB
{"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;;8GAxBR,6BAA6B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA7B,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;;2FAA7B,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;;8GAdnD,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,CAAA;;2FAAhB,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;;;;"}