Add document splitting functionality to the multi-tools page (#1808)

* Add a split button on top of the insert button in multitool viewer.

* Add placeholder splitFileButtonCallback method.

* Remove unused splitFileButtonContainer element.

* Add this binding to setActions for splitFileButtonCallback

* Add test log for adding separators.

* Add test log for adding separators.

* Remove test logs and add visual indicators to separators instead.

* Add splitting functionality to multi-tools.

* Prevent trying to split from index 0.

* Hide the split button for the first page to avoid confusion.

* Change the class name 'cutBefore' to 'split-before' to fall mroe in line with already existing classes.

* Add dummy methods for splitting and compressing documents.

* Remove form submission, begin work on client side splitting.

* Add client side document splitting.

* Add client side archiving for the split documents.

* Fix a bug that adds an empty page to splitted documents due to a sorting error.

* Add a 'Split All' button and the relevant functionality.

---------

Co-authored-by: kazandaki <ahmetfiratusta@gmail.com>
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
This commit is contained in:
FiratUsta
2024-09-07 13:25:39 +03:00
committed by GitHub
parent 7ccb4d59b0
commit 3c04486348
5 changed files with 159 additions and 30 deletions

View File

@@ -20,7 +20,7 @@ label {
display: flex;
gap: 10px;
align-items: start;
background-color: var(--md-sys-color-surface-5);
background-color: var(--md-sys-color-surface-5);
border: none;
backdrop-filter: blur(2px);
top: 10px;
@@ -127,6 +127,19 @@ label {
margin-bottom: 16px;
}
.page-container.split-before {
border-left: 1px dashed var(--md-sys-color-on-surface);
padding-left: -1px;
}
.page-container.split-before:first-child {
border-left: none;
}
.page-container:first-child .pdf-actions_split-file-button {
display: none;
}
/* Pushes the last item to the left */
.page-container:last-child {
margin-right: auto;
@@ -171,8 +184,9 @@ label {
.page-container:last-child:lang(nqo),
/* N'Ko */
.page-container:last-child:lang(bqi)
/* Bakhtiari */
{
{
margin-left: auto !important;
margin-right: 0 !important;
}
@@ -209,4 +223,4 @@ label {
.tool-header {
margin: 0.5rem 1rem 2rem;
}
}