{"id":15785769,"url":"https://github.com/js2me/mobx-shared-entities","last_synced_at":"2025-03-14T11:30:25.961Z","repository":{"id":249056304,"uuid":"830509792","full_name":"js2me/mobx-shared-entities","owner":"js2me","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-31T06:39:25.000Z","size":143,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-06T09:09:14.240Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/js2me.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-18T12:16:22.000Z","updated_at":"2024-12-31T06:39:29.000Z","dependencies_parsed_at":"2024-10-26T02:38:11.308Z","dependency_job_id":"af5d5aad-ccd3-49dc-bfa2-b0cc58bf42c0","html_url":"https://github.com/js2me/mobx-shared-entities","commit_stats":null,"previous_names":["js2me/mobx-shared-entities"],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fmobx-shared-entities","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fmobx-shared-entities/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fmobx-shared-entities/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fmobx-shared-entities/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/js2me","download_url":"https://codeload.github.com/js2me/mobx-shared-entities/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243568994,"owners_count":20312344,"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":[],"created_at":"2024-10-04T20:41:27.659Z","updated_at":"2025-03-14T11:30:25.953Z","avatar_url":"https://github.com/js2me.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mobx-shared-entities  \n\n# [Paginator](src/paginator/model.ts)  \n\nModel which helps to use pagination with tables  \n\n## usage  \n```ts\nimport { Paginator } from 'mobx-shared-entities/paginator';\n\nclass SomeModel {\n  paginator = new Paginator({\n    disposer: this.disposer,\n  });\n}\n\nsomeModel.paginator.toNextPage()\nsomeModel.paginator.toPreviousPage()\n\nsomeModel.paginator.inputData;\n```\n\n# [Socket](src/socket/model.ts)  \n\nModel which helps to create ws connection with sending\\receiving data from ws  \n\n## usage  \n```ts\nimport { Socket } from 'mobx-shared-entities/socket';\n\nclass SomeModel {\n  socket = new Socket({\n    url: 'ws//localhost:8081',\n    reconnect: { enabled: true },\n  });\n}\n\nsomeModel.socket.open();\n\nreaction(\n  () =\u003e someModel.socker.message,\n  (message) =\u003e {\n    console.info('message', message);\n  },\n);\n```\n\n# [Stepper](src/stepper/model.ts)  \n\nModel which helps to create step mechanism  \n\n## usage  \n```ts\nimport { Stepper } from 'mobx-shared-entities/stepper';\n\nclass SomeModel {\n  stepper = new Stepper({\n    steps: [1, 2, 3],\n  });\n}\n\nsomeModel.stepper.nextStep()\nsomeModel.stepper.isLastStep;\n\nsomeModel.stepper.activeStep;\n```\n\n# [Ticker](src/ticker/model.ts)  \n\nModel with counter and start timer  \n\n## usage  \n```ts\nimport { Ticker } from 'mobx-shared-entities/ticker';\n\nclass SomeModel {\n  ticker = new Ticker({\n    ticksPer: 1_000,\n  });\n}\n\nsomeModel.ticker.start();\n\nreaction(\n  () =\u003e someModel.ticker.ticks,\n  (ticks) =\u003e {\n    console.info('ticks', ticks);\n  },\n);\n```\n\n# [TabManager](src/tab-manager/model.ts)  \n\nShared code for UI tabs  \n\n## usage  \n```ts\nimport { TabManager } from 'mobx-shared-entities/tab-manager';\n\nclass SomeModel {\n  tabs = new TabManager({\n    tabs: [\n      { id: '1' },\n      { id: '2' },\n    ]\n  });\n}\n\nsomeModel.tabs.setActiveTab('1');\n\nreaction(\n  () =\u003e someModel.tabs.activeTabData,\n  (activeTabData) =\u003e {\n    console.info('activeTabData', activeTabData);\n  },\n);\n```\n\n# [TwoColor]","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjs2me%2Fmobx-shared-entities","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjs2me%2Fmobx-shared-entities","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjs2me%2Fmobx-shared-entities/lists"}