Skip to content
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

Implemented delete feature #89

Merged
merged 2 commits into from
Apr 16, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ export namespace Components {
interface DnnActionCreateFolder {
"parentFolderId": number;
}
interface DnnActionDeleteItems {
"items": Item[];
}
interface DnnActionEditItem {
"item": Item;
}
Expand All @@ -27,6 +30,12 @@ export namespace Components {
}
interface DnnRmCreateFolder {
}
interface DnnRmDeleteItems {
/**
* The list of items to delete.
*/
"items": Item[];
}
interface DnnRmEditFile {
/**
* The ID of the folder to edit.
Expand Down Expand Up @@ -121,6 +130,12 @@ declare global {
prototype: HTMLDnnActionCreateFolderElement;
new (): HTMLDnnActionCreateFolderElement;
};
interface HTMLDnnActionDeleteItemsElement extends Components.DnnActionDeleteItems, HTMLStencilElement {
}
var HTMLDnnActionDeleteItemsElement: {
prototype: HTMLDnnActionDeleteItemsElement;
new (): HTMLDnnActionDeleteItemsElement;
};
interface HTMLDnnActionEditItemElement extends Components.DnnActionEditItem, HTMLStencilElement {
}
var HTMLDnnActionEditItemElement: {
Expand Down Expand Up @@ -151,6 +166,12 @@ declare global {
prototype: HTMLDnnRmCreateFolderElement;
new (): HTMLDnnRmCreateFolderElement;
};
interface HTMLDnnRmDeleteItemsElement extends Components.DnnRmDeleteItems, HTMLStencilElement {
}
var HTMLDnnRmDeleteItemsElement: {
prototype: HTMLDnnRmDeleteItemsElement;
new (): HTMLDnnRmDeleteItemsElement;
};
interface HTMLDnnRmEditFileElement extends Components.DnnRmEditFile, HTMLStencilElement {
}
var HTMLDnnRmEditFileElement: {
Expand Down Expand Up @@ -243,11 +264,13 @@ declare global {
};
interface HTMLElementTagNameMap {
"dnn-action-create-folder": HTMLDnnActionCreateFolderElement;
"dnn-action-delete-items": HTMLDnnActionDeleteItemsElement;
"dnn-action-edit-item": HTMLDnnActionEditItemElement;
"dnn-action-move-items": HTMLDnnActionMoveItemsElement;
"dnn-resource-manager": HTMLDnnResourceManagerElement;
"dnn-rm-actions-bar": HTMLDnnRmActionsBarElement;
"dnn-rm-create-folder": HTMLDnnRmCreateFolderElement;
"dnn-rm-delete-items": HTMLDnnRmDeleteItemsElement;
"dnn-rm-edit-file": HTMLDnnRmEditFileElement;
"dnn-rm-edit-folder": HTMLDnnRmEditFolderElement;
"dnn-rm-file-context-menu": HTMLDnnRmFileContextMenuElement;
Expand All @@ -269,6 +292,9 @@ declare namespace LocalJSX {
interface DnnActionCreateFolder {
"parentFolderId"?: number;
}
interface DnnActionDeleteItems {
"items": Item[];
}
interface DnnActionEditItem {
"item": Item;
}
Expand All @@ -289,6 +315,16 @@ declare namespace LocalJSX {
*/
"onDnnRmFoldersChanged"?: (event: CustomEvent<void>) => void;
}
interface DnnRmDeleteItems {
/**
* The list of items to delete.
*/
"items": Item[];
/**
* Fires when there is a possibility that some folders have changed. Can be used to force parts of the UI to refresh.
*/
"onDnnRmFoldersChanged"?: (event: CustomEvent<void>) => void;
}
interface DnnRmEditFile {
/**
* The ID of the folder to edit.
Expand Down Expand Up @@ -401,11 +437,13 @@ declare namespace LocalJSX {
}
interface IntrinsicElements {
"dnn-action-create-folder": DnnActionCreateFolder;
"dnn-action-delete-items": DnnActionDeleteItems;
"dnn-action-edit-item": DnnActionEditItem;
"dnn-action-move-items": DnnActionMoveItems;
"dnn-resource-manager": DnnResourceManager;
"dnn-rm-actions-bar": DnnRmActionsBar;
"dnn-rm-create-folder": DnnRmCreateFolder;
"dnn-rm-delete-items": DnnRmDeleteItems;
"dnn-rm-edit-file": DnnRmEditFile;
"dnn-rm-edit-folder": DnnRmEditFolder;
"dnn-rm-file-context-menu": DnnRmFileContextMenu;
Expand All @@ -428,11 +466,13 @@ declare module "@stencil/core" {
export namespace JSX {
interface IntrinsicElements {
"dnn-action-create-folder": LocalJSX.DnnActionCreateFolder & JSXBase.HTMLAttributes<HTMLDnnActionCreateFolderElement>;
"dnn-action-delete-items": LocalJSX.DnnActionDeleteItems & JSXBase.HTMLAttributes<HTMLDnnActionDeleteItemsElement>;
"dnn-action-edit-item": LocalJSX.DnnActionEditItem & JSXBase.HTMLAttributes<HTMLDnnActionEditItemElement>;
"dnn-action-move-items": LocalJSX.DnnActionMoveItems & JSXBase.HTMLAttributes<HTMLDnnActionMoveItemsElement>;
"dnn-resource-manager": LocalJSX.DnnResourceManager & JSXBase.HTMLAttributes<HTMLDnnResourceManagerElement>;
"dnn-rm-actions-bar": LocalJSX.DnnRmActionsBar & JSXBase.HTMLAttributes<HTMLDnnRmActionsBarElement>;
"dnn-rm-create-folder": LocalJSX.DnnRmCreateFolder & JSXBase.HTMLAttributes<HTMLDnnRmCreateFolderElement>;
"dnn-rm-delete-items": LocalJSX.DnnRmDeleteItems & JSXBase.HTMLAttributes<HTMLDnnRmDeleteItemsElement>;
"dnn-rm-edit-file": LocalJSX.DnnRmEditFile & JSXBase.HTMLAttributes<HTMLDnnRmEditFileElement>;
"dnn-rm-edit-folder": LocalJSX.DnnRmEditFolder & JSXBase.HTMLAttributes<HTMLDnnRmEditFolderElement>;
"dnn-rm-file-context-menu": LocalJSX.DnnRmFileContextMenu & JSXBase.HTMLAttributes<HTMLDnnRmFileContextMenuElement>;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import { Component, Host, h, Prop } from '@stencil/core';
import { Item } from '../../../services/ItemsClient';
import state from "../../../store/store";

@Component({
tag: 'dnn-action-delete-items',
styleUrl: '../dnn-action.scss',
shadow: true,
})
export class DnnActionDeleteItems {

@Prop() items!: Item[];

private handleClick(): void {
this.showModal();
}

private showModal(){
const modal = document.createElement("dnn-modal");
modal.backdropDismiss = false;
modal.showCloseButton = false;
const editor = document.createElement("dnn-rm-delete-items") as HTMLDnnRmDeleteItemsElement;
editor.items = this.items;
modal.appendChild(editor);
document.body.appendChild(modal);
modal.show();
}

render() {
return (
<Host>
<button onClick={() => this.handleClick()}>
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z"/></svg>
<span>{state.localization.Delete}</span>
</button>
</Host>
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# dnn-action-move-items



<!-- Auto Generated Below -->


## Properties

| Property | Attribute | Description | Type | Default |
| -------------------- | --------- | ----------- | -------- | ----------- |
| `items` _(required)_ | -- | | `Item[]` | `undefined` |


## Dependencies

### Used by

- [dnn-rm-actions-bar](../../dnn-rm-actions-bar)
- [dnn-rm-file-context-menu](../../context-menus/dnn-rm-file-context-menu)
- [dnn-rm-folder-context-menu](../../context-menus/dnn-rm-folder-context-menu)

### Depends on

- dnn-modal
- [dnn-rm-delete-items](../../dnn-rm-delete-items)

### Graph
```mermaid
graph TD;
dnn-action-delete-items --> dnn-modal
dnn-action-delete-items --> dnn-rm-delete-items
dnn-rm-delete-items --> dnn-rm-progress-bar
dnn-rm-delete-items --> dnn-button
dnn-button --> dnn-modal
dnn-button --> dnn-button
dnn-rm-actions-bar --> dnn-action-delete-items
dnn-rm-file-context-menu --> dnn-action-delete-items
dnn-rm-folder-context-menu --> dnn-action-delete-items
style dnn-action-delete-items fill:#f9f,stroke:#333,stroke-width:4px
```

----------------------------------------------

*Built with [StencilJS](https://stenciljs.com/)*
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
### Used by

- [dnn-rm-actions-bar](../../dnn-rm-actions-bar)
- [dnn-rm-file-context-menu](../../context-menus/dnn-rm-folder-context-menu)
- [dnn-rm-file-context-menu](../../context-menus/dnn-rm-file-context-menu)
- [dnn-rm-folder-context-menu](../../context-menus/dnn-rm-folder-context-menu)

### Depends on
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
### Used by

- [dnn-rm-actions-bar](../../dnn-rm-actions-bar)
- [dnn-rm-file-context-menu](../../context-menus/dnn-rm-folder-context-menu)
- [dnn-rm-file-context-menu](../../context-menus/dnn-rm-file-context-menu)
- [dnn-rm-folder-context-menu](../../context-menus/dnn-rm-folder-context-menu)

### Depends on
Expand Down Expand Up @@ -58,6 +58,10 @@ graph TD;
dnn-rm-edit-file --> dnn-tabs
dnn-rm-edit-file --> dnn-tab
dnn-rm-edit-file --> dnn-button
dnn-action-delete-items --> dnn-modal
dnn-action-delete-items --> dnn-rm-delete-items
dnn-rm-delete-items --> dnn-rm-progress-bar
dnn-rm-delete-items --> dnn-button
dnn-treeview-item --> dnn-collapsible
dnn-rm-actions-bar --> dnn-action-move-items
dnn-rm-file-context-menu --> dnn-action-move-items
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,11 @@ export class DnnRmFileContextMenu {
<dnn-action-edit-item item={this.item} />
}
{state.currentItems?.hasDeletePermission &&
[
<dnn-action-move-items items={[this.item]} />
,
<dnn-action-delete-items items={[this.item]} />
]
}
</Host>
);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# dnn-rm-file-context-menu



<!-- Auto Generated Below -->


## Properties

| Property | Attribute | Description | Type | Default |
| ------------------- | --------- | ---------------------------------- | ------ | ----------- |
| `item` _(required)_ | -- | The item that triggered this menu. | `Item` | `undefined` |


## Dependencies

### Used by

- [dnn-rm-items-cardview](../../dnn-rm-items-cardview)
- [dnn-rm-items-listview](../../dnn-rm-items-listview)

### Depends on

- [dnn-action-edit-item](../../actions/dnn-action-edit-item)
- [dnn-action-move-items](../../actions/dnn-action-move-items)
- [dnn-action-delete-items](../../actions/dnn-action-delete-items)

### Graph
```mermaid
graph TD;
dnn-rm-file-context-menu --> dnn-action-edit-item
dnn-rm-file-context-menu --> dnn-action-move-items
dnn-rm-file-context-menu --> dnn-action-delete-items
dnn-action-edit-item --> dnn-modal
dnn-action-edit-item --> dnn-rm-edit-folder
dnn-action-edit-item --> dnn-rm-edit-file
dnn-rm-edit-folder --> dnn-tabs
dnn-rm-edit-folder --> dnn-tab
dnn-rm-edit-folder --> dnn-permissions-grid
dnn-rm-edit-folder --> dnn-button
dnn-permissions-grid --> dnn-checkbox
dnn-permissions-grid --> dnn-button
dnn-permissions-grid --> dnn-searchbox
dnn-permissions-grid --> dnn-collapsible
dnn-button --> dnn-modal
dnn-button --> dnn-button
dnn-rm-edit-file --> dnn-tabs
dnn-rm-edit-file --> dnn-tab
dnn-rm-edit-file --> dnn-button
dnn-action-move-items --> dnn-modal
dnn-action-move-items --> dnn-rm-move-items
dnn-rm-move-items --> dnn-rm-folder-list
dnn-rm-move-items --> dnn-rm-progress-bar
dnn-rm-move-items --> dnn-button
dnn-rm-folder-list --> dnn-rm-folder-list-item
dnn-rm-folder-list-item --> dnn-collapsible
dnn-rm-folder-list-item --> dnn-rm-folder-context-menu
dnn-rm-folder-list-item --> dnn-treeview-item
dnn-rm-folder-list-item --> dnn-rm-folder-list-item
dnn-rm-folder-context-menu --> dnn-action-create-folder
dnn-rm-folder-context-menu --> dnn-action-edit-item
dnn-rm-folder-context-menu --> dnn-action-move-items
dnn-rm-folder-context-menu --> dnn-action-delete-items
dnn-action-create-folder --> dnn-modal
dnn-action-create-folder --> dnn-rm-create-folder
dnn-rm-create-folder --> dnn-button
dnn-action-delete-items --> dnn-modal
dnn-action-delete-items --> dnn-rm-delete-items
dnn-rm-delete-items --> dnn-rm-progress-bar
dnn-rm-delete-items --> dnn-button
dnn-treeview-item --> dnn-collapsible
dnn-rm-items-cardview --> dnn-rm-file-context-menu
dnn-rm-items-listview --> dnn-rm-file-context-menu
style dnn-rm-file-context-menu fill:#f9f,stroke:#333,stroke-width:4px
```

----------------------------------------------

*Built with [StencilJS](https://stenciljs.com/)*
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,11 @@ export class DnnRmFolderContextMenu {
<dnn-action-edit-item item={this.item} />
}
{state.currentItems?.hasDeletePermission &&
[
<dnn-action-move-items items={[this.item]} />
,
<dnn-action-delete-items items={[this.item]} />
]
}
</Host>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,15 @@
- [dnn-action-create-folder](../../actions/dnn-action-create-folder)
- [dnn-action-edit-item](../../actions/dnn-action-edit-item)
- [dnn-action-move-items](../../actions/dnn-action-move-items)
- [dnn-action-delete-items](../../actions/dnn-action-delete-items)

### Graph
```mermaid
graph TD;
dnn-rm-folder-context-menu --> dnn-action-create-folder
dnn-rm-folder-context-menu --> dnn-action-edit-item
dnn-rm-folder-context-menu --> dnn-action-move-items
dnn-rm-folder-context-menu --> dnn-action-delete-items
dnn-action-create-folder --> dnn-modal
dnn-action-create-folder --> dnn-rm-create-folder
dnn-rm-create-folder --> dnn-button
Expand Down Expand Up @@ -59,6 +61,10 @@ graph TD;
dnn-rm-folder-list --> dnn-rm-folder-list-item
dnn-rm-folder-list-item --> dnn-rm-folder-context-menu
dnn-treeview-item --> dnn-collapsible
dnn-action-delete-items --> dnn-modal
dnn-action-delete-items --> dnn-rm-delete-items
dnn-rm-delete-items --> dnn-rm-progress-bar
dnn-rm-delete-items --> dnn-button
dnn-rm-items-cardview --> dnn-rm-folder-context-menu
dnn-rm-items-listview --> dnn-rm-folder-context-menu
style dnn-rm-folder-context-menu fill:#f9f,stroke:#333,stroke-width:4px
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ graph TD;
dnn-rm-folder-context-menu --> dnn-action-create-folder
dnn-rm-folder-context-menu --> dnn-action-edit-item
dnn-rm-folder-context-menu --> dnn-action-move-items
dnn-rm-folder-context-menu --> dnn-action-delete-items
dnn-action-create-folder --> dnn-modal
dnn-action-create-folder --> dnn-rm-create-folder
dnn-rm-create-folder --> dnn-button
Expand All @@ -62,6 +63,10 @@ graph TD;
dnn-rm-move-items --> dnn-rm-folder-list
dnn-rm-move-items --> dnn-rm-progress-bar
dnn-rm-move-items --> dnn-button
dnn-action-delete-items --> dnn-modal
dnn-action-delete-items --> dnn-rm-delete-items
dnn-rm-delete-items --> dnn-rm-progress-bar
dnn-rm-delete-items --> dnn-button
dnn-treeview-item --> dnn-collapsible
dnn-rm-right-pane --> dnn-rm-actions-bar
dnn-rm-right-pane --> dnn-rm-files-pane
Expand All @@ -70,6 +75,7 @@ graph TD;
dnn-rm-actions-bar --> dnn-action-create-folder
dnn-rm-actions-bar --> dnn-action-edit-item
dnn-rm-actions-bar --> dnn-action-move-items
dnn-rm-actions-bar --> dnn-action-delete-items
dnn-rm-actions-bar --> dnn-collapsible
dnn-rm-files-pane --> dnn-rm-items-listview
dnn-rm-files-pane --> dnn-rm-items-cardview
Expand All @@ -78,6 +84,7 @@ graph TD;
dnn-rm-items-listview --> dnn-collapsible
dnn-rm-file-context-menu --> dnn-action-edit-item
dnn-rm-file-context-menu --> dnn-action-move-items
dnn-rm-file-context-menu --> dnn-action-delete-items
dnn-rm-items-cardview --> dnn-collapsible
dnn-rm-items-cardview --> dnn-rm-folder-context-menu
dnn-rm-items-cardview --> dnn-rm-file-context-menu
Expand Down
Loading