{"id":24159300,"url":"https://github.com/jamalhassouni/semantic-multi-cascader","last_synced_at":"2026-01-24T22:04:57.772Z","repository":{"id":57356567,"uuid":"457299693","full_name":"jamalhassouni/semantic-multi-cascader","owner":"jamalhassouni","description":"A multiple cascader component for semantic ui","archived":false,"fork":false,"pushed_at":"2022-04-19T14:23:31.000Z","size":591,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-03T08:53:03.481Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/jamalhassouni.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-09T09:54:15.000Z","updated_at":"2022-02-15T22:50:45.000Z","dependencies_parsed_at":"2022-09-05T06:51:45.508Z","dependency_job_id":null,"html_url":"https://github.com/jamalhassouni/semantic-multi-cascader","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jamalhassouni/semantic-multi-cascader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamalhassouni%2Fsemantic-multi-cascader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamalhassouni%2Fsemantic-multi-cascader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamalhassouni%2Fsemantic-multi-cascader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamalhassouni%2Fsemantic-multi-cascader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jamalhassouni","download_url":"https://codeload.github.com/jamalhassouni/semantic-multi-cascader/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamalhassouni%2Fsemantic-multi-cascader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276040587,"owners_count":25574830,"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","status":"online","status_checked_at":"2025-09-20T02:00:10.207Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2025-01-12T15:16:03.060Z","updated_at":"2025-09-20T03:31:20.565Z","avatar_url":"https://github.com/jamalhassouni.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# semantic-multi-cascader\n\n![PRs Welcome](https://img.shields.io/badge/PRs-welcome-ff69b4.svg) ![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)\n![Codecov Coverage](https://img.shields.io/codecov/c/github/HelKyle/semantic-multi-cascader/master.svg)\n[![npm](https://img.shields.io/npm/v/semantic-multi-cascader)](https://www.npmjs.com/package/semantic-multi-cascader)\n\nA multiple cascader component for semantic\n\n[![semantic-multi-cascader](https://nodei.co/npm/semantic-multi-cascader.png)](https://npmjs.org/package/semantic-multi-cascader)\n\n\u003cdiv style=\"max-width: 420px\"\u003e\n  \u003cimg src=\"demo.png\" alt=\"demo\" /\u003e\n\u003c/div\u003e\n\n## How to use?\n\n```shell\nnpm install semantic-multi-cascader\n```\n\nor\n\n```shell\n\nyarn add semantic-multi-cascader\n```\n\n```js\nimport MultiCascader from \"semantic-multi-cascader\";\nimport  \"semantic-multi-cascader/dist/semantic-multi-cascader.min.css\";\nconst [value, setValue] = React.useState([]);\nconst options = [\n  { text: \"CSS\", value: \"css\" },\n  { text: \"Graphic Design\", value: \"design\" },\n  { text: \"HTML\", value: \"html\" },\n  {\n    text: \"Javascript Frameworks\",\n    value: \"javascript frameworks\",\n    children: [\n      {\n        text: \"Angular \",\n        value: \"angular \",\n        children: [\n          { text: \"Angular v1 \", value: \"angular v1 \" },\n          { text: \"Angular v2 \", value: \"angular v2 \" },\n        ],\n      },\n      { text: \"React js \", value: \"React js\" },\n      { text: \"Vue js \", value: \"Vue js\" },\n      { text: \"Ember js \", value: \"Ember js\" },\n    ],\n  },\n];\nreturn (\n  \u003cMultiCascader\n    value={value}\n    onChange={setValue}\n    options={options}\n    cancelText={\"no\"}\n    cancelBtnClass=\"cancel-btn\"\n    confirmBtnClass=\"confirm-btn\"\n    okText=\"ok\"\n    selectAll={false}\n    isSingle={true}\n    placeholder=\"Select Skills\"\n  /\u003e\n)\n```\n\n### Props\n\n| Props               | Type                                                                                | Description                                                                                                                                                           |\n| ------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| value               | string[]                                                                            | Selected value                                                                                                                                                        |\n| options                | TreeNode[]  (required)                                                                        | Cascader options TreeNode  see [Options Props](#options-props)                                                                      |\n| allowClear          | boolean    (optional)                                                                         | Whether allow clear                                                                                                                                                   |\n| placeholder         | string    (required)                                                                          | The input placeholder                                                                                                                                                 |\n| onChange            | (newVal) =\u003e void (required)                                                                   | Callback when finishing value select                                                                                                                                  |\n| selectAll           | boolean       (optional)                                                                      | Whether allow select all                                                                                                                                              |\n| isSingle           | boolean       (optional)                                                                      | Enable Single Selection                                                                                                                                             |\n| className           | string    (optional)                                                                          | The additional css class                                                                                                                                              |\n| cancelBtnClass           | string    (optional)                                                                          | The additional css class for cancel button                                                                                                                                             |\n| confirmBtnClass           | string    (optional)                                                                          | The additional css class for ok button                                                                                                                                             |\n| style               | React.CSSProperties (optional)                                                                | The additional style                                                                                                                                                  |\n| disabled            | boolean        (optional)                                                                     | Whether disabled select                                                                                                                                               |\n| okText              | string      (optional)                                                                        | The text of the Confirm button                                                                                                                                        |\n| cancelText          | string       (optional)                                                                       | The text of the Cancel button                                                                                                                                         |\n| selectAllText       | string    (optional)                                                                          | The text of the SelectAll radio                                                                                                                                       |\n| maxTagCount         | number \\| responsive (optional)                      |  Max tag count to show. responsive will cost render performance                                                                                                                                          |\n\n### Options Props\n\n| Props               | Type                                                                                | Description                                                                                                                                                           |\n| ------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| text               | string    (required)                                                                      |  Displayed text                                                                                                                  |\n| value               | string   (required)                                                                       | Selected value                                                                                                                                                        |\n| children?               | TreeNode  (optional)                                                                          |  Nested children  (same options props )                                                                                                                                                       |\n| isLeaf?               | boolean  (optional)                                                                          |  Tell component this node is a leaf node                                                                                                                                                        |\n\n## Contributing\n\nThe people who contribute to semantic-multi-cascader do so for the love of open source, our users and ecosystem, and most importantly, pushing the web forward together.Developers like you can help by contributing to rich and vibrant documentation, issuing pull requests to help us cover niche use cases, and to help sustain what you love about semantic-multi-cascader. Anybody can help by doing any of the following: use semantic-multi-cascader in projects,Contribute to the core repository.\n\nAll pull requests are welcome !\n\n## Changelog\n\nPlease see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.\n\n## License\n\nsemantic-multi-cascader uses the MIT license. See [LICENSE](LICENSE.md) for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamalhassouni%2Fsemantic-multi-cascader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjamalhassouni%2Fsemantic-multi-cascader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamalhassouni%2Fsemantic-multi-cascader/lists"}