corteza
corteza copied to clipboard
Add support for Compose page block tabs [PlanID:2023.3/8/2.6]
Integrators can configure Tabs block on Compose page. This is accomplished by linking existing record page blocks of any other type. Each linked block represents one tab in the tab block.
The implementation is based on Bootstrap's tabs.
- [ ] Prepare mockups that demonstrate this feature @darh
- [x] Page can have multiple tab blocks
- [x] For now, nested tabs are not allowed (block tab with a block tab)
- [x] Tabs are configured right of the "General" tab in the block configuration
- [x] Integrator can use pre-existing blocks (show warning where there are no blocks available)
- [x] New blocks can be added via tab block
- [x] Integrator can change the order of tabs by reordering linked blocks
- [x] Page block rendering logic must be corrected to omit linked blocks when rendering a page
- [x] [When tab block is deleted, page blocks should render those blocks again.
- [x] Blocks can be duplicated via tab block's configurator
- [x] Checkboxes are shown
- [x] Duplicate button should not be disabled once a box is checked
- [x] Tab should be duplicated and block should be duplicated for all checked boxes
- [x] Implement bootstrap's properties for
<b-tabs>
: align, fill, justified, small, pulls, vertical - [x] By default, 1st tab is active
- [x] When changed, the active tab must be preserved after refresh (store it in URL)
- [x] Linked's block title is used as a tab title
Tab blocks have their dimensions pre-determined just as other blocks xywh You link existing blocks to the tabs via a dropdown (try drag and drop later) data structure should stay as is for page Number of blocks determine number of tabs Block title determines tab name
UI preview for Tab configurator
Note: Block duplication, for now, will not be allowed for tabbed blocks. We can discuss more on why this is.
TabBase UI Preview
UI Update
This may not be ready for this milestone as it is still pending fixes from me based on review updates.
Editing this issue to have a phase 2 which would include logic refactoring and some flow changes. The changes would help to simplify the approach currently used to better circumvent structural and architectural restrictions in compose's builder component. This phase 2 update will also bring about some UX flow changes in the way this feature was originally intended to work. The issue shall be updated with new requirements for this to be considered DONE.
For today: take care of two more things discussed with Jože and then, if time today, address the comments in the PR.
For today: resolve remaining comments in PR and a couple of minor things found along the way. To be ready for code review by 1pm latest.
For today: address the remaining comments on PR. Time-box blocker for two hours and if can't resolve, sync with Jože.
Should all be finished by dev release tuesday
This was tested and confirming that it works as intended. The only thing left now is the CL entry @EmmyMay
Changelog Entry
Added
What was added?
Added support for the Tabs PageBlock
Why was it added
To make pageblock organizing much easier for users.
Added CL