-
-
Notifications
You must be signed in to change notification settings - Fork 158
docs(BTable): parity pass #2669
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
WalkthroughThis update enhances the table component documentation and metadata by introducing detailed event argument definitions, scoped slot properties, and descriptive prop explanations for Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant BTable
participant BTableLite
participant EventHandler
participant SlotConsumer
User->>BTable: Interacts (e.g., selects row, sorts)
BTable->>EventHandler: Emits event (e.g., rowSelected, sorted) with detailed args
BTable->>SlotConsumer: Provides slot with scoped properties
User->>BTableLite: Interacts (e.g., clicks head, hovers row)
BTableLite->>EventHandler: Emits event (e.g., headClicked, rowHovered) with detailed args
BTableLite->>SlotConsumer: Provides slot with scoped properties
Suggested reviewers
Poem
✨ Finishing Touches
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
commit: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
🧹 Nitpick comments (6)
apps/docs/src/docs/migration-guide.md (3)
625-629
: Clarify bullet-list punctuationThe first bullet reads naturally when the trailing word “props” is outside the back-ticks, but the hanging comma before props renders as “props props” once Markdown is parsed. Consider rewriting:
-- `filter-debounce`, `fixed`, `no-border-collapse`, `selected-variant`, `table-footer-sorting` props +- Props `filter-debounce`, `fixed`, `no-border-collapse`, `selected-variant`, and `table-footer-sorting`🧰 Tools
🪛 LanguageTool
[uncategorized] ~625-~625: Loose punctuation mark.
Context: ...tYetImplemented/> - -filter-debounce
,fixed
,no-border-collapse
, `selecte...(UNLIKELY_OPENING_PUNCTUATION)
633-633
: Missing comma after introductory phrase“By default sortability …” should read “By default, sortability …” to avoid a run-on.
-By default sortability +By default, sortability🧰 Tools
🪛 LanguageTool
[uncategorized] ~633-~633: Did you mean: “By default,”?
Context: ...-resetis deprecated. Use
must-sort`. By default sortability can be reset by clicking (3...(BY_DEFAULT_COMMA)
639-639
: Comma after conjunctive adverbInsert a comma after “Similarly” for correct grammar:
-Similarly the `sort-changed` +Similarly, the `sort-changed`apps/docs/src/data/components/table.data.ts (3)
875-879
: Typo: “colum” ➜ “column”-'If this will be a sticky colum. Must be set on all cells in this column. table must be in sticky-header or responsive mode to work', +'If this will be a sticky column. Must be set on all cells in this column. Table must be in sticky-header or responsive mode to work',
684-687
: Spelling—“diplayed” ➜ “displayed”- description: 'Array of items diplayed in the table', + description: 'Array of items displayed in the table',
649-649
: Minor typo—“seleted” ➜ “selected”-like the BSV `row-selected` event, emitting an array of all seleted rows. +like the BSV `row-selected` event, emitting an array of all selected rows.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
apps/docs/src/data/components/table.data.ts
(15 hunks)apps/docs/src/docs/migration-guide.md
(1 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (1)
apps/docs/src/data/components/table.data.ts (4)
apps/docs/src/types/index.ts (2)
ComponentReference
(45-66)PropertyReference
(11-16)apps/docs/src/utils/index.ts (2)
pick
(4-4)buildCommonProps
(3-3)packages/bootstrap-vue-next/src/types/index.ts (1)
BvnComponentProps
(39-39)packages/bootstrap-vue-next/src/types/BootstrapVueOptions.ts (1)
BvnComponentProps
(302-304)
🪛 LanguageTool
apps/docs/src/docs/migration-guide.md
[uncategorized] ~625-~625: Loose punctuation mark.
Context: ...tYetImplemented/> - - filter-debounce
, fixed
, no-border-collapse
, `selecte...
(UNLIKELY_OPENING_PUNCTUATION)
[uncategorized] ~633-~633: Did you mean: “By default,”?
Context: ...-resetis deprecated. Use
must-sort`. By default sortability can be reset by clicking (3...
(BY_DEFAULT_COMMA)
[uncategorized] ~638-~638: A comma may be missing after the conjunctive/linking adverb ‘Similarly’.
Context: ...ocs/components/table#sorting) instead. Similarly the sort-changed
event is replaced by...
(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: build
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (1)
apps/docs/src/data/components/table.data.ts (1)
334-336
:⚠️ Potential issueIncorrect slot prop type—
item
is a single record, not an arrayThe type for the
item
prop inside thecell({key})
slot is incorrect. It should be a single record, not an array, as it represents the current row's item data object.- prop: 'item', - type: 'readonly Items[]', + prop: 'item', + type: 'Items',This type mismatch could mislead developers when they're interacting with the slot props.
🧹 Nitpick comments (2)
apps/docs/src/data/components/table.data.ts (2)
147-152
: Add description for thealign
propThe
align
prop is missing a description. Consider adding a description to provide context for what this prop does and its possible values, similar to other props in this file.align: { type: 'VerticalAlign', default: undefined, + description: 'Vertically align the content within cells (possible values: top, middle, bottom)', },
162-166
: Add description forfieldColumnClass
propThe
fieldColumnClass
prop is missing a description that would help users understand its purpose and usage.fieldColumnClass: { type: '(field: TableField) => Record<string, any>[] | string | Record<PropertyKey, any> | any[]', default: undefined, + description: 'Function that returns classes to apply to the column based on the field definition', },
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
apps/docs/src/data/components/table.data.ts
(15 hunks)apps/docs/src/docs/migration-guide.md
(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- apps/docs/src/docs/migration-guide.md
🧰 Additional context used
🧠 Learnings (1)
apps/docs/src/data/components/table.data.ts (4)
Learnt from: dwgray
PR: bootstrap-vue-next/bootstrap-vue-next#2669
File: apps/docs/src/data/components/table.data.ts:334-336
Timestamp: 2025-04-24T20:35:48.579Z
Learning: The generic type parameter for table items should use the singular form `Item` rather than the plural `Items` to improve readability and follow TypeScript conventions. This change would primarily affect two files: `packages/bootstrap-vue-next/src/types/ComponentProps.ts` and `apps/docs/src/data/components/table.data.ts`.
Learnt from: dwgray
PR: bootstrap-vue-next/bootstrap-vue-next#2669
File: apps/docs/src/data/components/table.data.ts:334-336
Timestamp: 2025-04-24T20:35:48.579Z
Learning: The generic type for table items should use the singular form `Item` rather than the plural `Items` to follow TypeScript conventions and improve readability. This makes expressions like `item: Item` and `items: Item[]` more intuitive than `item: Items` and `items: Items[]`.
Learnt from: dwgray
PR: bootstrap-vue-next/bootstrap-vue-next#2669
File: apps/docs/src/data/components/table.data.ts:334-336
Timestamp: 2025-04-24T20:35:48.578Z
Learning: The generic type for table items should be named in singular form (`Item`) rather than plural (`Items`) to follow TypeScript conventions and improve readability in type definitions.
Learnt from: dwgray
PR: bootstrap-vue-next/bootstrap-vue-next#2669
File: apps/docs/src/data/components/table.data.ts:334-336
Timestamp: 2025-04-24T20:35:48.579Z
Learning: The generic type for table items should use the singular form `Item` rather than the plural `Items` to follow TypeScript conventions and improve readability in type definitions.
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: build
🔇 Additional comments (5)
apps/docs/src/data/components/table.data.ts (5)
291-294
: Consider consistent event naming caseFor consistency, consider using the same casing pattern for all event names. For example, the
row-dblclicked
event uses kebab-case, while other row events use kebab-case withrow-
prefix. This is an improvement over the previously inconsistent casing mentioned in past reviews.
7-51
: Great job on comprehensive documentationThe addition of helper constants for event arguments and slot scopes, along with detailed documentation for events, props, and slots greatly improves the developer experience. This approach ensures consistency and provides clear guidance for developers using the table components.
Also applies to: 252-523, 747-750
541-542
: Clearly marked unimplemented propGood job marking the
busyLoadingText
prop as not yet implemented. This transparency helps users understand the current state of the component API.
780-782
: Slot name correctly updated to kebab-caseThe slot name has been properly updated to
empty-filtered
from the previously usedemptyfiltered
, which aligns with the migration guide information.
286-289
: Properly renamed duplicate eventThe previous issue with duplicate
rowClicked
events has been fixed by correctly naming this eventrow-contextmenu
, which better reflects its purpose and avoids the duplicate key problem.
* upstream/main: chore: release main (bootstrap-vue-next#2690) docs(BProgress): Parity pass (bootstrap-vue-next#2689) fix(BTableSimple): fixed and nobordercollapse to work fixes bootstrap-vue-next#2685 docs: fix incorrect references and missed script sections (bootstrap-vue-next#2686) docs: implement on this page expand/collapse with useScrollspy (bootstrap-vue-next#2679) chore: release main (bootstrap-vue-next#2683) feat(BTable): implement 'fixed' and 'noBorderCollapse' props (bootstrap-vue-next#2681) chore: release main (bootstrap-vue-next#2678) Update package.json fix(BFormSelect): prevent options with label from being treated as groups (bootstrap-vue-next#2666) fix: patch regression issue in bootstrap-vue-next#2665 (bootstrap-vue-next#2670) Update release-main.yaml chore: release main (bootstrap-vue-next#2660) chore: update depencies fix(BTabs): corrent classes on ssr (bootstrap-vue-next#2664) Changes to public composables (bootstrap-vue-next#2425) docs(BTable): parity pass (bootstrap-vue-next#2669)
commit 2a9e30b Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Thu May 15 18:24:07 2025 +0300 doc data commit 08c89fd Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Thu May 15 17:57:29 2025 +0300 feat(BPopover): add titleClass and bodyClass, remove unneeded customClass prop since class is inherited to the same place commit 90b578d Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Wed May 14 11:39:42 2025 +0300 feat(BToast): add noProgress prop, make progress show as default if modelValue is number. fix(useToastController): if using the deprecated show method the countdown didn't start. commit dc85d94 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun May 11 09:53:25 2025 -0500 chore: release main (bootstrap-vue-next#2690) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit 070cb8c Author: David W. Gray <dwgray67@hotmail.com> Date: Sun May 11 07:52:30 2025 -0700 docs(BProgress): Parity pass (bootstrap-vue-next#2689) commit c61f532 Author: Thierry Blind <tbl0605@gmail.com> Date: Sun May 11 16:52:14 2025 +0200 fix(BTableSimple): fixed and nobordercollapse to work fixes bootstrap-vue-next#2685 commit beae36f Author: David W. Gray <dwgray67@hotmail.com> Date: Sun May 11 07:43:58 2025 -0700 docs: fix incorrect references and missed script sections (bootstrap-vue-next#2686) commit 34432d9 Author: David W. Gray <dwgray67@hotmail.com> Date: Sun May 11 07:42:02 2025 -0700 docs: implement on this page expand/collapse with useScrollspy (bootstrap-vue-next#2679) commit ce869f0 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed May 7 11:16:08 2025 -0500 chore: release main (bootstrap-vue-next#2683) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit 9486276 Author: Mohamed Nasri <51300752+mhn147@users.noreply.github.com> Date: Wed May 7 09:44:38 2025 -0600 feat(BTable): implement 'fixed' and 'noBorderCollapse' props (bootstrap-vue-next#2681) commit a4a9294 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon May 5 09:16:09 2025 -0500 chore: release main (bootstrap-vue-next#2678) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit 0165e94 Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Mon May 5 16:24:04 2025 +0300 Update package.json commit c1645a9 Author: Rajitha <rajithaeye@gmail.com> Date: Wed Apr 30 23:49:23 2025 +0530 fix(BFormSelect): prevent options with label from being treated as groups (bootstrap-vue-next#2666) commit 59ddc39 Author: Thierry Blind <tbl0605@gmail.com> Date: Wed Apr 30 20:17:34 2025 +0200 fix: patch regression issue in bootstrap-vue-next#2665 (bootstrap-vue-next#2670) commit d82091b Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Wed Apr 30 06:01:10 2025 +0300 Update release-main.yaml commit 31cb4bf Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed Apr 30 04:51:31 2025 +0300 chore: release main (bootstrap-vue-next#2660) Co-Authored-By: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit 6733770 Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Wed Apr 30 05:15:02 2025 +0300 chore: update depencies commit 2b37c18 Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Wed Apr 30 04:36:46 2025 +0300 fix(BTabs): corrent classes on ssr (bootstrap-vue-next#2664) fix(BTabs): corrent classes on ssr fix(BTabs): fix another recursion error commit 99718eb Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Wed Apr 30 04:20:00 2025 +0300 Changes to public composables (bootstrap-vue-next#2425) feat(BAlert)!: make act like toast, useShowHide. feat(useShowHide): create triggerRegistry for adding external triggers (like in vBToggle) fix: type popoverController fix(useShowHide): focustrap off at the begining of leave, pass down the trigger to other hide emits. fix(vBToggle): keep track of targets fix(BPopover)!: change prop content to body to align with other components fix(BTooltip)!: change prop content to body to align with other components feat(usePopoverController): allow more options fix(vBToggle): find late components, ie. inside ClientOnly fix(useModalController)!: move props to main level, add slots feat(usePopoverController): add slots feat(useToastController)!: remove props obj, the parameters are flat now. Add slots, rename pos -> position feat(useShowHide): show returns a promise, resolve on show or hide. feat(useToggle): toggle any show/hide component feat!: controller composables functions return promise, with chainable functions feat(useModalController): add support for using syntax in ts feat(BModal): add okClass and cancelClass to add classes to the buttons. feat(useModalController)!: change of api, check the docs fix: inline functional style to show toast,modal and dropdown feat(useToggle): add trigger to promise resolve on hide. fix(BCarousel): fix v-for updates commit 340edfd Author: David W. Gray <dwgray67@hotmail.com> Date: Mon Apr 28 18:39:44 2025 -0700 docs(BTable): parity pass (bootstrap-vue-next#2669) commit 4dd6c89 Author: Jukka Raimovaara <roska@mentalhouse.fi> Date: Mon Apr 28 22:46:31 2025 +0300 fix(BDropdown): don't calulcate the position when dropdown is not shown.
Describe the PR
Small replication
N/A
PR checklist
What kind of change does this PR introduce? (check at least one)
fix(...)
feat(...)
fix(...)
docs(...)
The PR fulfills these requirements:
CHANGELOG
is generated from these messages, and determines the next version type. Pull requests that do not follow conventional commits or do not have an override will be deniedSummary by CodeRabbit
Documentation
New Features
BTable
andBTableLite
.Style