feat(FoMultipleSelect): First implementation#140
Conversation
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughThis change introduces a new FoMultipleSelect component for handling multiple selections in form inputs. It includes a new MultipleSelectProps interface with options and visibleOptions properties, the FoMultipleSelect Vue component implementation, updates to component exports and configuration, and documentation additions. The FoSelect component's ID generation mechanism was also updated to use useElementId instead of useId. Documentation examples and type definitions were added to support the new component. 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Deploying flyonui-vue-v3 with
|
| Latest commit: |
85d067e
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://ecc5f558.flyonui-vue-v3.pages.dev |
| Branch Preview URL: | https://feat-multiple-select.flyonui-vue-v3.pages.dev |
Deploying flyonui-vue with
|
| Latest commit: |
85d067e
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://c44ead32.flyonui-vue.pages.dev |
| Branch Preview URL: | https://feat-multiple-select.flyonui-vue.pages.dev |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
packages/core/src/UI/Forms/Select/UI/FoMultipleSelect.vue (1)
9-14: Consider addingaria-labelfor accessibility consistency.
FoSelectincludesaria-label="select"on its<select>element. For consistency and accessibility, consider adding a similar attribute here. When a visible label exists,aria-labelledbypointing to the label's ID might be preferable.♿ Suggested minimal fix
<select :id="id" v-model="selectedOptions" class="select h-auto" :size="visibleOptions" :disabled="isDisabled" + aria-label="multiple select" multiple >🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/core/src/UI/Forms/Select/UI/FoMultipleSelect.vue` around lines 9 - 14, The <select> in FoMultipleSelect.vue is missing an accessibility label; add aria-label="select" to the <select> element (or, if a visible label exists, add aria-labelledby pointing to that label's id) to match FoSelect and ensure accessibility consistency; update the template where the <select> uses v-model="selectedOptions" and props like id, visibleOptions and isDisabled so the ARIA attribute is included alongside those attributes.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@packages/core/src/UI/Forms/Select/Types/Select.ts`:
- Line 32: Fix the typo in the JSDoc comment that reads "The selects' options."
to the correct possessive "The select's options." in the Select.ts file (look
for the comment above the options type/prop declaration in
packages/core/src/UI/Forms/Select/Types/Select.ts).
---
Nitpick comments:
In `@packages/core/src/UI/Forms/Select/UI/FoMultipleSelect.vue`:
- Around line 9-14: The <select> in FoMultipleSelect.vue is missing an
accessibility label; add aria-label="select" to the <select> element (or, if a
visible label exists, add aria-labelledby pointing to that label's id) to match
FoSelect and ensure accessibility consistency; update the template where the
<select> uses v-model="selectedOptions" and props like id, visibleOptions and
isDisabled so the ARIA attribute is included alongside those attributes.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 882cc6d5-51d5-40e0-bb47-169e7061270f
⛔ Files ignored due to path filters (1)
packages/docs/tests/EndToEnd/Docs.browser.spec.ts-snapshots/forms-select-multiple-chromium-linux.pngis excluded by!**/*.png
📒 Files selected for processing (8)
packages/core/src/Lib/UseFlyonUIVueAppConfig/Types/ComponentName.tspackages/core/src/UI/Forms/Select/Types/Select.tspackages/core/src/UI/Forms/Select/UI/FoMultipleSelect.vuepackages/core/src/UI/Forms/Select/UI/FoSelect.vuepackages/core/src/UI/Forms/Select/UI/index.tspackages/docs/Forms/Select.mdpackages/docs/Forms/Select/MultipleSelect.vuepackages/docs/Forms/Select/SelectDocs.vue
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Summary by CodeRabbit
New Features
Documentation