{"id":19042005,"url":"https://github.com/writetome51/page-load-access","last_synced_at":"2026-05-16T00:31:20.745Z","repository":{"id":122062451,"uuid":"184670457","full_name":"writetome51/page-load-access","owner":"writetome51","description":"A TypeScript/Javascript class that loads a batch (array) of data from a larger set too big to be loaded all at once.","archived":false,"fork":false,"pushed_at":"2020-07-05T07:46:23.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-20T13:20:05.602Z","etag":null,"topics":["batch","class","data","javascript","load","loader","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/writetome51.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-05-02T23:35:18.000Z","updated_at":"2020-07-05T07:46:26.000Z","dependencies_parsed_at":"2023-07-25T06:51:52.150Z","dependency_job_id":null,"html_url":"https://github.com/writetome51/page-load-access","commit_stats":null,"previous_names":["writetome51/batch-loader","writetome51/get-page-batch"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/writetome51%2Fpage-load-access","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/writetome51%2Fpage-load-access/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/writetome51%2Fpage-load-access/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/writetome51%2Fpage-load-access/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/writetome51","download_url":"https://codeload.github.com/writetome51/page-load-access/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239841767,"owners_count":19705983,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["batch","class","data","javascript","load","loader","typescript"],"created_at":"2024-11-08T22:33:49.643Z","updated_at":"2026-05-08T19:30:16.903Z","avatar_url":"https://github.com/writetome51.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PageLoadAccess\n\nA TypeScript/Javascript class intended to be used by a paginator. Its methods  \nreturn a load (array) of data from a larger set that is too big to be loaded  \nall at once. Each load can contain multiple pages of data.\n\n\n## Constructor\n\u003cdetails\u003e\n\u003csummary\u003eview constructor\u003c/summary\u003e\n\n```ts\nconstructor(\n    __dataSource: {\n\n        // The number of items `getLoad()` returns must match `itemsPerLoad`.\n        // If `isLastLoad` is true, it must only return the remaining items \n        // in the dataset and ignore itemsPerLoad.\n\n        getLoad: (\n            loadNumber: number, itemsPerLoad: number, isLastLoad: boolean\n        ) =\u003e Promise\u003cany[]\u003e\n    },\n\n    __loadInfo: {\n        getCurrentLoadNumber: () =\u003e number,\n        setCurrentLoadNumber: (num: number) =\u003e void,\n        getItemsPerLoad: () =\u003e number,\n        currentLoadIsLast: () =\u003e boolean\n    },\n\n    __load2pgTranslator: LoadToPageTranslator\n)\n```\n\u003c/details\u003e\n\n\n## Methods\n\u003cdetails\u003e\n\u003csummary\u003eview methods\u003c/summary\u003e\n\n```ts\nasync getLoadContainingPage(pageNumber): Promise\u003cany[]\u003e\n\nasync getRefreshedLoadContainingPage(pageNumber): Promise\u003cany[]\u003e \n    // Even if the current load already contains requested \n    // `pageNumber`, that load is re-retrieved from the data source.\n```\n\u003c/details\u003e  \n\n\n## Installation\n\n`npm i  @writetome51/page-load-access`\n\n## Loading\n```ts\n// if using TypeScript:\nimport { PageLoadAccess } from '@writetome51/page-load-access';\n// if using ES5 JavaScript:\nvar PageLoadAccess = require('@writetome51/page-load-access').PageLoadAccess;\n```\n\n## License\n[MIT](https://choosealicense.com/licenses/mit/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwritetome51%2Fpage-load-access","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwritetome51%2Fpage-load-access","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwritetome51%2Fpage-load-access/lists"}