@webiny/app-trash-bin 0.0.0-unstable.e53eceafb5 → 0.0.0-unstable.eb196ccd2f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Domain/Models/TrashBinItem/TrashBinItem.d.ts +2 -0
- package/Domain/Models/TrashBinItem/TrashBinItem.js.map +1 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemMapper.d.ts +0 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemMapper.js +0 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemMapper.js.map +1 -1
- package/Presentation/TrashBin/TrashBinPresenter.d.ts +1 -1
- package/Presentation/TrashBin/TrashBinPresenter.js +7 -5
- package/Presentation/TrashBin/TrashBinPresenter.js.map +1 -1
- package/Presentation/TrashBin/controllers/GetRestoredItemById/GetRestoredItemByIdController.d.ts +0 -1
- package/Presentation/components/Cells/CellActions/CellActions.js +1 -1
- package/Presentation/components/Cells/CellActions/CellActions.js.map +1 -1
- package/Presentation/components/Cells/CellCreatedBy/CellCreatedBy.js +1 -1
- package/Presentation/components/Cells/CellCreatedBy/CellCreatedBy.js.map +1 -1
- package/Presentation/components/Cells/CellDeletedBy/CellDeletedBy.js +1 -1
- package/Presentation/components/Cells/CellDeletedBy/CellDeletedBy.js.map +1 -1
- package/Presentation/components/Cells/CellDeletedOn/CellDeletedOn.js +1 -1
- package/Presentation/components/Cells/CellDeletedOn/CellDeletedOn.js.map +1 -1
- package/Presentation/components/Cells/CellTitle/CellTitle.js +1 -1
- package/Presentation/components/Cells/CellTitle/CellTitle.js.map +1 -1
- package/Presentation/components/Table/Table.js +10 -4
- package/Presentation/components/Table/Table.js.map +1 -1
- package/Presentation/configs/list/Browser/BulkAction.js +1 -1
- package/Presentation/configs/list/Browser/BulkAction.js.map +1 -1
- package/Presentation/configs/list/Browser/EntryAction.d.ts +2 -2
- package/Presentation/configs/list/Browser/EntryAction.js +1 -2
- package/Presentation/configs/list/Browser/EntryAction.js.map +1 -1
- package/Presentation/configs/list/Browser/Table/Column.d.ts +10 -5
- package/Presentation/configs/list/Browser/Table/Column.js +1 -2
- package/Presentation/configs/list/Browser/Table/Column.js.map +1 -1
- package/Presentation/configs/list/Browser/Table/Sorting.d.ts +2 -2
- package/Presentation/configs/list/Browser/Table/Sorting.js +1 -2
- package/Presentation/configs/list/Browser/Table/Sorting.js.map +1 -1
- package/Presentation/configs/list/Browser/Table/index.d.ts +7 -2
- package/Presentation/configs/list/Browser/index.d.ts +7 -2
- package/Presentation/configs/list/TrashBinListConfig.d.ts +7 -2
- package/Presentation/hooks/useTrashBin.d.ts +2 -2
- package/Presentation/hooks/useTrashBin.js +1 -1
- package/Presentation/hooks/useTrashBin.js.map +1 -1
- package/package.json +11 -11
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { TrashBinIdentity, TrashBinLocation } from "../../../types";
|
|
2
|
+
import type { TableRow } from "@webiny/app-aco";
|
|
2
3
|
export interface TrashBinItemDTO {
|
|
3
4
|
id: string;
|
|
4
5
|
title: string;
|
|
@@ -8,6 +9,7 @@ export interface TrashBinItemDTO {
|
|
|
8
9
|
location: TrashBinLocation;
|
|
9
10
|
[key: string]: any;
|
|
10
11
|
}
|
|
12
|
+
export type TrashBinTableRow = TableRow<TrashBinItemDTO>;
|
|
11
13
|
export declare class TrashBinItem {
|
|
12
14
|
id: string;
|
|
13
15
|
title: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TrashBinItem","constructor","item","id","title","location","createdBy","deletedOn","deletedBy","create"],"sources":["TrashBinItem.ts"],"sourcesContent":["import type { TrashBinIdentity, TrashBinLocation } from \"~/types\";\n\nexport interface TrashBinItemDTO {\n id: string;\n title: string;\n createdBy: TrashBinIdentity;\n deletedBy: TrashBinIdentity;\n deletedOn: string;\n location: TrashBinLocation;\n [key: string]: any;\n}\n\nexport class TrashBinItem {\n public id: string;\n public title: string;\n public location: TrashBinLocation;\n public createdBy: TrashBinIdentity;\n public deletedOn: string;\n public deletedBy: TrashBinIdentity;\n\n protected constructor(item: TrashBinItemDTO) {\n this.id = item.id;\n this.title = item.title;\n this.location = item.location;\n this.createdBy = item.createdBy;\n this.deletedOn = item.deletedOn;\n this.deletedBy = item.deletedBy;\n }\n\n static create(item: TrashBinItemDTO) {\n return new TrashBinItem(item);\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["TrashBinItem","constructor","item","id","title","location","createdBy","deletedOn","deletedBy","create"],"sources":["TrashBinItem.ts"],"sourcesContent":["import type { TrashBinIdentity, TrashBinLocation } from \"~/types\";\nimport type { TableRow } from \"@webiny/app-aco\";\n\nexport interface TrashBinItemDTO {\n id: string;\n title: string;\n createdBy: TrashBinIdentity;\n deletedBy: TrashBinIdentity;\n deletedOn: string;\n location: TrashBinLocation;\n [key: string]: any;\n}\n\nexport type TrashBinTableRow = TableRow<TrashBinItemDTO>;\n\nexport class TrashBinItem {\n public id: string;\n public title: string;\n public location: TrashBinLocation;\n public createdBy: TrashBinIdentity;\n public deletedOn: string;\n public deletedBy: TrashBinIdentity;\n\n protected constructor(item: TrashBinItemDTO) {\n this.id = item.id;\n this.title = item.title;\n this.location = item.location;\n this.createdBy = item.createdBy;\n this.deletedOn = item.deletedOn;\n this.deletedBy = item.deletedBy;\n }\n\n static create(item: TrashBinItemDTO) {\n return new TrashBinItem(item);\n }\n}\n"],"mappings":"AAeA,OAAO,MAAMA,YAAY,CAAC;EAQZC,WAAWA,CAACC,IAAqB,EAAE;IACzC,IAAI,CAACC,EAAE,GAAGD,IAAI,CAACC,EAAE;IACjB,IAAI,CAACC,KAAK,GAAGF,IAAI,CAACE,KAAK;IACvB,IAAI,CAACC,QAAQ,GAAGH,IAAI,CAACG,QAAQ;IAC7B,IAAI,CAACC,SAAS,GAAGJ,IAAI,CAACI,SAAS;IAC/B,IAAI,CAACC,SAAS,GAAGL,IAAI,CAACK,SAAS;IAC/B,IAAI,CAACC,SAAS,GAAGN,IAAI,CAACM,SAAS;EACnC;EAEA,OAAOC,MAAMA,CAACP,IAAqB,EAAE;IACjC,OAAO,IAAIF,YAAY,CAACE,IAAI,CAAC;EACjC;AACJ","ignoreList":[]}
|
|
@@ -2,7 +2,6 @@ import type { ITrashBinItemMapper, TrashBinItem } from "../..";
|
|
|
2
2
|
export declare class TrashBinItemMapper implements ITrashBinItemMapper<TrashBinItem> {
|
|
3
3
|
toDTO(data: TrashBinItem): {
|
|
4
4
|
id: string;
|
|
5
|
-
$selectable: boolean;
|
|
6
5
|
title: string;
|
|
7
6
|
location: import("../../../types").TrashBinLocation;
|
|
8
7
|
createdBy: import("../../../types").TrashBinIdentity;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TrashBinItemMapper","toDTO","data","id","
|
|
1
|
+
{"version":3,"names":["TrashBinItemMapper","toDTO","data","id","title","location","createdBy","deletedBy","displayName","type","deletedOn"],"sources":["TrashBinItemMapper.ts"],"sourcesContent":["import type { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\n\nexport class TrashBinItemMapper implements ITrashBinItemMapper<TrashBinItem> {\n toDTO(data: TrashBinItem) {\n return {\n id: data.id,\n title: data.title,\n location: data.location,\n createdBy: data.createdBy,\n deletedBy: {\n id: data.deletedBy?.id || \"\",\n displayName: data.deletedBy?.displayName || \"\",\n type: data.deletedBy?.type || \"\"\n },\n deletedOn: data.deletedOn || \"\"\n };\n }\n}\n"],"mappings":"AAEA,OAAO,MAAMA,kBAAkB,CAA8C;EACzEC,KAAKA,CAACC,IAAkB,EAAE;IACtB,OAAO;MACHC,EAAE,EAAED,IAAI,CAACC,EAAE;MACXC,KAAK,EAAEF,IAAI,CAACE,KAAK;MACjBC,QAAQ,EAAEH,IAAI,CAACG,QAAQ;MACvBC,SAAS,EAAEJ,IAAI,CAACI,SAAS;MACzBC,SAAS,EAAE;QACPJ,EAAE,EAAED,IAAI,CAACK,SAAS,EAAEJ,EAAE,IAAI,EAAE;QAC5BK,WAAW,EAAEN,IAAI,CAACK,SAAS,EAAEC,WAAW,IAAI,EAAE;QAC9CC,IAAI,EAAEP,IAAI,CAACK,SAAS,EAAEE,IAAI,IAAI;MAClC,CAAC;MACDC,SAAS,EAAER,IAAI,CAACQ,SAAS,IAAI;IACjC,CAAC;EACL;AACJ","ignoreList":[]}
|
|
@@ -15,9 +15,9 @@ export class TrashBinPresenter {
|
|
|
15
15
|
}
|
|
16
16
|
get vm() {
|
|
17
17
|
return {
|
|
18
|
-
items: this.
|
|
19
|
-
restoredItems: this.
|
|
20
|
-
selectedItems: this.
|
|
18
|
+
items: this.mapItemsToDto(this.itemsRepository.getItems()),
|
|
19
|
+
restoredItems: this.mapItemsToDto(this.itemsRepository.getRestoredItems()),
|
|
20
|
+
selectedItems: this.mapItemsToDto(this.selectedRepository.getSelectedItems()),
|
|
21
21
|
allowSelectAll: this.getAllowSelectAll(),
|
|
22
22
|
isSelectedAll: this.selectedRepository.getSelectedAllItems(),
|
|
23
23
|
meta: MetaMapper.toDto(this.itemsRepository.getMeta()),
|
|
@@ -31,8 +31,10 @@ export class TrashBinPresenter {
|
|
|
31
31
|
retentionPeriod: this.getRetentionPeriod()
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
|
-
|
|
35
|
-
return items.map(item =>
|
|
34
|
+
mapItemsToDto(items) {
|
|
35
|
+
return items.map(item => {
|
|
36
|
+
return this.itemMapper.toDTO(item);
|
|
37
|
+
});
|
|
36
38
|
}
|
|
37
39
|
getIsEmptyView() {
|
|
38
40
|
const loading = this.itemsRepository.getLoading();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["makeAutoObservable","MetaMapper","SortingMapper","TrashBinItemMapper","LoadingActions","TrashBinPresenter","constructor","itemsRepository","selectedRepository","sortingRepository","searchRepository","retentionPeriod","nameColumnId","itemMapper","vm","items","
|
|
1
|
+
{"version":3,"names":["makeAutoObservable","MetaMapper","SortingMapper","TrashBinItemMapper","LoadingActions","TrashBinPresenter","constructor","itemsRepository","selectedRepository","sortingRepository","searchRepository","retentionPeriod","nameColumnId","itemMapper","vm","items","mapItemsToDto","getItems","restoredItems","getRestoredItems","selectedItems","getSelectedItems","allowSelectAll","getAllowSelectAll","isSelectedAll","getSelectedAllItems","meta","toDto","getMeta","sorting","get","map","sort","fromDTOtoColumn","loading","getLoading","isEmptyView","getIsEmptyView","isSearchView","getIsSearchView","searchQuery","searchLabel","getRetentionPeriod","item","toDTO","list","length","hasMoreItems"],"sources":["TrashBinPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport type { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\nimport type { ISortingRepository } from \"@webiny/app-utils\";\nimport { MetaMapper, SortingMapper } from \"@webiny/app-utils\";\nimport type {\n ITrashBinItemsRepository,\n ISelectedItemsRepository,\n ISearchRepository\n} from \"~/Domain/Repositories\";\nimport { TrashBinItemMapper } from \"~/Domain/Repositories\";\nimport { LoadingActions } from \"~/types\";\n\nexport class TrashBinPresenter {\n private itemsRepository: ITrashBinItemsRepository;\n private selectedRepository: ISelectedItemsRepository;\n private sortingRepository: ISortingRepository;\n private searchRepository: ISearchRepository;\n private itemMapper: ITrashBinItemMapper<TrashBinItem>;\n private readonly retentionPeriod: number;\n private readonly nameColumnId: string | undefined;\n\n constructor(\n itemsRepository: ITrashBinItemsRepository,\n selectedRepository: ISelectedItemsRepository,\n sortingRepository: ISortingRepository,\n searchRepository: ISearchRepository,\n retentionPeriod: number,\n nameColumnId?: string\n ) {\n this.itemsRepository = itemsRepository;\n this.selectedRepository = selectedRepository;\n this.sortingRepository = sortingRepository;\n this.searchRepository = searchRepository;\n this.itemMapper = new TrashBinItemMapper();\n this.retentionPeriod = retentionPeriod;\n this.nameColumnId = nameColumnId;\n makeAutoObservable(this);\n }\n\n get vm() {\n return {\n items: this.mapItemsToDto(this.itemsRepository.getItems()),\n restoredItems: this.mapItemsToDto(this.itemsRepository.getRestoredItems()),\n selectedItems: this.mapItemsToDto(this.selectedRepository.getSelectedItems()),\n allowSelectAll: this.getAllowSelectAll(),\n isSelectedAll: this.selectedRepository.getSelectedAllItems(),\n meta: MetaMapper.toDto(this.itemsRepository.getMeta()),\n sorting: this.sortingRepository.get().map(sort => SortingMapper.fromDTOtoColumn(sort)),\n loading: this.itemsRepository.getLoading(),\n isEmptyView: this.getIsEmptyView(),\n isSearchView: this.getIsSearchView(),\n searchQuery: this.searchRepository.get(),\n searchLabel: \"Search all items\",\n nameColumnId: this.nameColumnId || \"id\",\n retentionPeriod: this.getRetentionPeriod()\n };\n }\n\n private mapItemsToDto(items: TrashBinItem[]) {\n return items.map(item => {\n return this.itemMapper.toDTO(item);\n });\n }\n\n private getIsEmptyView() {\n const loading = this.itemsRepository.getLoading();\n const items = this.itemsRepository.getItems();\n return !loading[LoadingActions.list] && !items.length;\n }\n\n private getIsSearchView() {\n const loading = this.itemsRepository.getLoading();\n const items = this.itemsRepository.getItems();\n const searchQuery = this.searchRepository.get();\n return !loading[LoadingActions.list] && !items.length && !!searchQuery;\n }\n\n private getRetentionPeriod() {\n if (this.retentionPeriod === 1) {\n return \"1 day\";\n }\n return `${this.retentionPeriod} days`;\n }\n\n private getAllowSelectAll() {\n return (\n this.itemsRepository.getMeta().hasMoreItems &&\n !!this.itemsRepository.getItems().length &&\n this.selectedRepository.getSelectedItems().length ===\n this.itemsRepository.getItems().length\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/Presentation/TrashBin/controllers/GetRestoredItemById/GetRestoredItemByIdController.d.ts
CHANGED
|
@@ -6,7 +6,6 @@ export declare class GetRestoredItemByIdController implements IGetRestoredItemBy
|
|
|
6
6
|
constructor(useCaseFactory: () => IGetRestoredItemUseCase);
|
|
7
7
|
execute(id: string): Promise<{
|
|
8
8
|
id: string;
|
|
9
|
-
$selectable: boolean;
|
|
10
9
|
title: string;
|
|
11
10
|
location: import("../../../../types").TrashBinLocation;
|
|
12
11
|
createdBy: import("../../../../types").TrashBinIdentity;
|
|
@@ -14,7 +14,7 @@ export const CellActions = () => {
|
|
|
14
14
|
record: recordConfig
|
|
15
15
|
} = useAcoConfig();
|
|
16
16
|
return /*#__PURE__*/React.createElement(TrashBinItemProvider, {
|
|
17
|
-
item: row
|
|
17
|
+
item: row.data
|
|
18
18
|
}, /*#__PURE__*/React.createElement(OptionsMenu, {
|
|
19
19
|
actions: recordConfig.actions,
|
|
20
20
|
"data-testid": "table.row.trash.entry.menu-action"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useAcoConfig","OptionsMenu","TrashBinListConfig","TrashBinItemProvider","CellActions","useTableRow","Browser","Table","Column","row","record","recordConfig","createElement","item","actions"],"sources":["CellActions.tsx"],"sourcesContent":["import React from \"react\";\nimport { useAcoConfig } from \"@webiny/app-aco\";\nimport { OptionsMenu } from \"@webiny/app-admin\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\nimport { TrashBinItemProvider } from \"~/Presentation/hooks\";\n\nexport const CellActions = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n const { record: recordConfig } = useAcoConfig();\n\n return (\n <TrashBinItemProvider item={row}>\n <OptionsMenu\n actions={recordConfig.actions}\n data-testid={\"table.row.trash.entry.menu-action\"}\n />\n </TrashBinItemProvider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,kBAAkB;AAC3B,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,MAAM;IAAEC;EAAY,CAAC,GAAGH,kBAAkB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAC7B,MAAM;IAAEK,MAAM,EAAEC;EAAa,CAAC,GAAGX,YAAY,CAAC,CAAC;EAE/C,oBACID,KAAA,CAAAa,aAAA,CAACT,oBAAoB;IAACU,IAAI,EAAEJ;
|
|
1
|
+
{"version":3,"names":["React","useAcoConfig","OptionsMenu","TrashBinListConfig","TrashBinItemProvider","CellActions","useTableRow","Browser","Table","Column","row","record","recordConfig","createElement","item","data","actions"],"sources":["CellActions.tsx"],"sourcesContent":["import React from \"react\";\nimport { useAcoConfig } from \"@webiny/app-aco\";\nimport { OptionsMenu } from \"@webiny/app-admin\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\nimport { TrashBinItemProvider } from \"~/Presentation/hooks\";\n\nexport const CellActions = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n const { record: recordConfig } = useAcoConfig();\n\n return (\n <TrashBinItemProvider item={row.data}>\n <OptionsMenu\n actions={recordConfig.actions}\n data-testid={\"table.row.trash.entry.menu-action\"}\n />\n </TrashBinItemProvider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,kBAAkB;AAC3B,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,MAAM;IAAEC;EAAY,CAAC,GAAGH,kBAAkB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAC7B,MAAM;IAAEK,MAAM,EAAEC;EAAa,CAAC,GAAGX,YAAY,CAAC,CAAC;EAE/C,oBACID,KAAA,CAAAa,aAAA,CAACT,oBAAoB;IAACU,IAAI,EAAEJ,GAAG,CAACK;EAAK,gBACjCf,KAAA,CAAAa,aAAA,CAACX,WAAW;IACRc,OAAO,EAAEJ,YAAY,CAACI,OAAQ;IAC9B,eAAa;EAAoC,CACpD,CACiB,CAAC;AAE/B,CAAC","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ export const CellCreatedBy = () => {
|
|
|
7
7
|
const {
|
|
8
8
|
row
|
|
9
9
|
} = useTableRow();
|
|
10
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, row.createdBy.displayName);
|
|
10
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, row.data.createdBy.displayName);
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
//# sourceMappingURL=CellCreatedBy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TrashBinListConfig","CellCreatedBy","useTableRow","Browser","Table","Column","row","createElement","Fragment","createdBy","displayName"],"sources":["CellCreatedBy.tsx"],"sourcesContent":["import React from \"react\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\n\nexport const CellCreatedBy = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <>{row.createdBy.displayName}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAY,CAAC,GAAGF,kBAAkB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOH,KAAA,CAAAQ,aAAA,CAAAR,KAAA,CAAAS,QAAA,QAAGF,GAAG,CAACG,SAAS,CAACC,WAAc,CAAC;
|
|
1
|
+
{"version":3,"names":["React","TrashBinListConfig","CellCreatedBy","useTableRow","Browser","Table","Column","row","createElement","Fragment","data","createdBy","displayName"],"sources":["CellCreatedBy.tsx"],"sourcesContent":["import React from \"react\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\n\nexport const CellCreatedBy = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <>{row.data.createdBy.displayName}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAY,CAAC,GAAGF,kBAAkB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOH,KAAA,CAAAQ,aAAA,CAAAR,KAAA,CAAAS,QAAA,QAAGF,GAAG,CAACG,IAAI,CAACC,SAAS,CAACC,WAAc,CAAC;AAChD,CAAC","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ export const CellDeletedBy = () => {
|
|
|
7
7
|
const {
|
|
8
8
|
row
|
|
9
9
|
} = useTableRow();
|
|
10
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, row.deletedBy.displayName);
|
|
10
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, row.data.deletedBy.displayName);
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
//# sourceMappingURL=CellDeletedBy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TrashBinListConfig","CellDeletedBy","useTableRow","Browser","Table","Column","row","createElement","Fragment","deletedBy","displayName"],"sources":["CellDeletedBy.tsx"],"sourcesContent":["import React from \"react\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\n\nexport const CellDeletedBy = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <>{row.deletedBy.displayName}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAY,CAAC,GAAGF,kBAAkB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOH,KAAA,CAAAQ,aAAA,CAAAR,KAAA,CAAAS,QAAA,QAAGF,GAAG,CAACG,SAAS,CAACC,WAAc,CAAC;
|
|
1
|
+
{"version":3,"names":["React","TrashBinListConfig","CellDeletedBy","useTableRow","Browser","Table","Column","row","createElement","Fragment","data","deletedBy","displayName"],"sources":["CellDeletedBy.tsx"],"sourcesContent":["import React from \"react\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\n\nexport const CellDeletedBy = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <>{row.data.deletedBy.displayName}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAY,CAAC,GAAGF,kBAAkB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOH,KAAA,CAAAQ,aAAA,CAAAR,KAAA,CAAAS,QAAA,QAAGF,GAAG,CAACG,IAAI,CAACC,SAAS,CAACC,WAAc,CAAC;AAChD,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TimeAgo","TrashBinListConfig","CellDeletedOn","useTableRow","Browser","Table","Column","row","createElement","datetime","deletedOn"],"sources":["CellDeletedOn.tsx"],"sourcesContent":["import React from \"react\";\nimport { TimeAgo } from \"@webiny/ui/TimeAgo\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\n\nexport const CellDeletedOn = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <TimeAgo datetime={row.deletedOn} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAY,CAAC,GAAGF,kBAAkB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOJ,KAAA,CAAAS,aAAA,CAACR,OAAO;IAACS,QAAQ,EAAEF,GAAG,CAACG;EAAU,CAAE,CAAC;
|
|
1
|
+
{"version":3,"names":["React","TimeAgo","TrashBinListConfig","CellDeletedOn","useTableRow","Browser","Table","Column","row","createElement","datetime","data","deletedOn"],"sources":["CellDeletedOn.tsx"],"sourcesContent":["import React from \"react\";\nimport { TimeAgo } from \"@webiny/ui/TimeAgo\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\n\nexport const CellDeletedOn = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <TimeAgo datetime={row.data.deletedOn} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAY,CAAC,GAAGF,kBAAkB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOJ,KAAA,CAAAS,aAAA,CAACR,OAAO;IAACS,QAAQ,EAAEF,GAAG,CAACG,IAAI,CAACC;EAAU,CAAE,CAAC;AACpD,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ReactComponent","File","TrashBinListConfig","Icon","Text","CellTitle","useTableRow","Browser","Table","Column","row","createElement","className","size","color","icon","label","title"],"sources":["CellTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { ReactComponent as File } from \"@webiny/icons/description.svg\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\nimport { Icon, Text } from \"@webiny/admin-ui\";\n\nexport const CellTitle = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return (\n <div className={\"wby-flex wby-items-center wby-gap-sm wby-truncate\"}>\n <Icon size={\"sm\"} color={\"neutral-strong\"} icon={<File />} label={\"Item\"} />\n <Text className={\"wby-truncate wby-min-w-0 wby-flex-shrink\"}>{row.title}</Text>\n </div>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,IAAIC,IAAI,QAAQ,+BAA+B;AACtE,SAASC,kBAAkB;AAC3B,SAASC,IAAI,EAAEC,IAAI,QAAQ,kBAAkB;AAE7C,OAAO,MAAMC,SAAS,GAAGA,CAAA,KAAM;EAC3B,MAAM;IAAEC;EAAY,CAAC,GAAGJ,kBAAkB,CAACK,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBACIP,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAE;EAAoD,gBAChEb,KAAA,CAAAY,aAAA,CAACR,IAAI;IAACU,IAAI,EAAE,IAAK;IAACC,KAAK,EAAE,gBAAiB;IAACC,IAAI,eAAEhB,KAAA,CAAAY,aAAA,CAACV,IAAI,MAAE,CAAE;IAACe,KAAK,EAAE;EAAO,CAAE,CAAC,eAC5EjB,KAAA,CAAAY,aAAA,CAACP,IAAI;IAACQ,SAAS,EAAE;EAA2C,GAAEF,GAAG,CAACO,KAAY,
|
|
1
|
+
{"version":3,"names":["React","ReactComponent","File","TrashBinListConfig","Icon","Text","CellTitle","useTableRow","Browser","Table","Column","row","createElement","className","size","color","icon","label","data","title"],"sources":["CellTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { ReactComponent as File } from \"@webiny/icons/description.svg\";\nimport { TrashBinListConfig } from \"~/Presentation/configs\";\nimport { Icon, Text } from \"@webiny/admin-ui\";\n\nexport const CellTitle = () => {\n const { useTableRow } = TrashBinListConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return (\n <div className={\"wby-flex wby-items-center wby-gap-sm wby-truncate\"}>\n <Icon size={\"sm\"} color={\"neutral-strong\"} icon={<File />} label={\"Item\"} />\n <Text className={\"wby-truncate wby-min-w-0 wby-flex-shrink\"}>{row.data.title}</Text>\n </div>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,IAAIC,IAAI,QAAQ,+BAA+B;AACtE,SAASC,kBAAkB;AAC3B,SAASC,IAAI,EAAEC,IAAI,QAAQ,kBAAkB;AAE7C,OAAO,MAAMC,SAAS,GAAGA,CAAA,KAAM;EAC3B,MAAM;IAAEC;EAAY,CAAC,GAAGJ,kBAAkB,CAACK,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/D,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBACIP,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAE;EAAoD,gBAChEb,KAAA,CAAAY,aAAA,CAACR,IAAI;IAACU,IAAI,EAAE,IAAK;IAACC,KAAK,EAAE,gBAAiB;IAACC,IAAI,eAAEhB,KAAA,CAAAY,aAAA,CAACV,IAAI,MAAE,CAAE;IAACe,KAAK,EAAE;EAAO,CAAE,CAAC,eAC5EjB,KAAA,CAAAY,aAAA,CAACP,IAAI;IAACQ,SAAS,EAAE;EAA2C,GAAEF,GAAG,CAACO,IAAI,CAACC,KAAY,CAClF,CAAC;AAEd,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { Table as AcoTable } from "@webiny/app-aco";
|
|
1
|
+
import React, { useMemo } from "react";
|
|
2
|
+
import { createRecordsData, Table as AcoTable } from "@webiny/app-aco";
|
|
3
3
|
import { useTrashBin } from "../../hooks";
|
|
4
4
|
import { LoadingActions } from "../../../types";
|
|
5
5
|
export const Table = () => {
|
|
@@ -8,13 +8,19 @@ export const Table = () => {
|
|
|
8
8
|
selectItems,
|
|
9
9
|
sortItems
|
|
10
10
|
} = useTrashBin();
|
|
11
|
+
const data = useMemo(() => {
|
|
12
|
+
return createRecordsData(vm.items);
|
|
13
|
+
}, [vm.items]);
|
|
14
|
+
const selected = useMemo(() => {
|
|
15
|
+
return createRecordsData(vm.selectedItems);
|
|
16
|
+
}, [vm.selectedItems]);
|
|
11
17
|
return /*#__PURE__*/React.createElement(AcoTable, {
|
|
12
|
-
data:
|
|
18
|
+
data: data,
|
|
13
19
|
loading: vm.loading[LoadingActions.list],
|
|
14
20
|
onSelectRow: entries => selectItems(entries),
|
|
15
21
|
sorting: vm.sorting,
|
|
16
22
|
onSortingChange: sort => sortItems(sort),
|
|
17
|
-
selected:
|
|
23
|
+
selected: selected,
|
|
18
24
|
nameColumnId: vm.nameColumnId,
|
|
19
25
|
namespace: "trash-bin"
|
|
20
26
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Table","AcoTable","useTrashBin","LoadingActions","vm","selectItems","sortItems","
|
|
1
|
+
{"version":3,"names":["React","useMemo","createRecordsData","Table","AcoTable","useTrashBin","LoadingActions","vm","selectItems","sortItems","data","items","selected","selectedItems","createElement","loading","list","onSelectRow","entries","sorting","onSortingChange","sort","nameColumnId","namespace"],"sources":["Table.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { createRecordsData, Table as AcoTable } from \"@webiny/app-aco\";\nimport { useTrashBin } from \"~/Presentation/hooks\";\nimport type { TrashBinTableRow } from \"~/Domain\";\nimport { LoadingActions } from \"~/types\";\n\nexport const Table = () => {\n const { vm, selectItems, sortItems } = useTrashBin();\n\n const data = useMemo<TrashBinTableRow[]>(() => {\n return createRecordsData(vm.items);\n }, [vm.items]);\n\n const selected = useMemo<TrashBinTableRow[]>(() => {\n return createRecordsData(vm.selectedItems);\n }, [vm.selectedItems]);\n\n return (\n <AcoTable<TrashBinTableRow>\n data={data}\n loading={vm.loading[LoadingActions.list]}\n onSelectRow={entries => selectItems(entries)}\n sorting={vm.sorting}\n onSortingChange={sort => sortItems(sort)}\n selected={selected}\n nameColumnId={vm.nameColumnId}\n namespace={\"trash-bin\"}\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,iBAAiB,EAAEC,KAAK,IAAIC,QAAQ,QAAQ,iBAAiB;AACtE,SAASC,WAAW;AAEpB,SAASC,cAAc;AAEvB,OAAO,MAAMH,KAAK,GAAGA,CAAA,KAAM;EACvB,MAAM;IAAEI,EAAE;IAAEC,WAAW;IAAEC;EAAU,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAEpD,MAAMK,IAAI,GAAGT,OAAO,CAAqB,MAAM;IAC3C,OAAOC,iBAAiB,CAACK,EAAE,CAACI,KAAK,CAAC;EACtC,CAAC,EAAE,CAACJ,EAAE,CAACI,KAAK,CAAC,CAAC;EAEd,MAAMC,QAAQ,GAAGX,OAAO,CAAqB,MAAM;IAC/C,OAAOC,iBAAiB,CAACK,EAAE,CAACM,aAAa,CAAC;EAC9C,CAAC,EAAE,CAACN,EAAE,CAACM,aAAa,CAAC,CAAC;EAEtB,oBACIb,KAAA,CAAAc,aAAA,CAACV,QAAQ;IACLM,IAAI,EAAEA,IAAK;IACXK,OAAO,EAAER,EAAE,CAACQ,OAAO,CAACT,cAAc,CAACU,IAAI,CAAE;IACzCC,WAAW,EAAEC,OAAO,IAAIV,WAAW,CAACU,OAAO,CAAE;IAC7CC,OAAO,EAAEZ,EAAE,CAACY,OAAQ;IACpBC,eAAe,EAAEC,IAAI,IAAIZ,SAAS,CAACY,IAAI,CAAE;IACzCT,QAAQ,EAAEA,QAAS;IACnBU,YAAY,EAAEf,EAAE,CAACe,YAAa;IAC9BC,SAAS,EAAE;EAAY,CAC1B,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -41,7 +41,7 @@ const useWorker = () => {
|
|
|
41
41
|
current: worker
|
|
42
42
|
} = useRef(new Worker());
|
|
43
43
|
useEffect(() => {
|
|
44
|
-
worker.items = vm.selectedItems;
|
|
44
|
+
worker.items = vm.selectedItems.map(item => item.data);
|
|
45
45
|
}, [vm.selectedItems.length]);
|
|
46
46
|
|
|
47
47
|
// Reset selected items in both repository and Worker
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useEffect","useRef","useButtons","useDialogWithReport","Worker","Property","useIdGenerator","useTrashBin","BaseBulkAction","name","after","undefined","before","remove","element","getId","placeAfter","placeBefore","createElement","id","array","value","useWorker","vm","selectItems","current","worker","items","selectedItems","length","resetItems","process","callback","processInSeries","chunkSize","processInBulk","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useRef","useButtons","useDialogWithReport","Worker","Property","useIdGenerator","useTrashBin","BaseBulkAction","name","after","undefined","before","remove","element","getId","placeAfter","placeBefore","createElement","id","array","value","useWorker","vm","selectItems","current","worker","items","selectedItems","map","item","data","length","resetItems","process","callback","processInSeries","chunkSize","processInBulk","search","searchQuery","results","isSelectedAll","BulkAction","Object","assign","useDialog"],"sources":["BulkAction.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport type { CallbackParams } from \"@webiny/app-admin\";\nimport { useButtons, useDialogWithReport, Worker } from \"@webiny/app-admin\";\nimport { Property, useIdGenerator } from \"@webiny/react-properties\";\nimport { useTrashBin } from \"~/Presentation/hooks\";\nimport type { TrashBinItemDTO } from \"~/Domain\";\nimport type { TrashBinBulkActionsParams } from \"~/types\";\n\nexport interface BulkActionConfig {\n name: string;\n element: React.ReactElement;\n}\n\nexport interface BulkActionProps {\n name: string;\n remove?: boolean;\n before?: string;\n after?: string;\n element?: React.ReactElement;\n}\n\nexport const BaseBulkAction = ({\n name,\n after = undefined,\n before = undefined,\n remove = false,\n element\n}: BulkActionProps) => {\n const getId = useIdGenerator(\"bulkAction\");\n\n const placeAfter = after !== undefined ? getId(after) : undefined;\n const placeBefore = before !== undefined ? getId(before) : undefined;\n\n return (\n <Property id=\"browser\" name={\"browser\"}>\n <Property\n id={getId(name)}\n name={\"bulkActions\"}\n remove={remove}\n array={true}\n before={placeBefore}\n after={placeAfter}\n >\n <Property id={getId(name, \"name\")} name={\"name\"} value={name} />\n {element ? (\n <Property id={getId(name, \"element\")} name={\"element\"} value={element} />\n ) : null}\n </Property>\n </Property>\n );\n};\n\nconst useWorker = () => {\n const { vm, selectItems } = useTrashBin();\n const { current: worker } = useRef(new Worker<TrashBinItemDTO>());\n\n useEffect(() => {\n worker.items = vm.selectedItems.map(item => item.data);\n }, [vm.selectedItems.length]);\n\n // Reset selected items in both repository and Worker\n const resetItems = useCallback(() => {\n worker.items = [];\n selectItems([]);\n }, []);\n\n return {\n items: vm.selectedItems,\n process: (callback: (items: TrashBinItemDTO[]) => void) => worker.process(callback),\n processInSeries: async (\n callback: ({\n item,\n allItems,\n report\n }: CallbackParams<TrashBinItemDTO>) => Promise<void>,\n chunkSize?: number\n ) => worker.processInSeries(callback, chunkSize),\n processInBulk: async (\n callback: (params: TrashBinBulkActionsParams) => Promise<void>,\n data?: Record<string, any>\n ) => {\n await callback({ search: vm.searchQuery, data });\n },\n resetItems: resetItems,\n results: worker.results,\n isSelectedAll: vm.isSelectedAll\n };\n};\n\nexport const BulkAction = Object.assign(BaseBulkAction, {\n useButtons,\n useWorker,\n useDialog: useDialogWithReport\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig, RecordActionConfig } from "@webiny/app-aco";
|
|
3
|
-
export { RecordActionConfig as EntryActionConfig };
|
|
2
|
+
import { AcoConfig, type RecordActionConfig } from "@webiny/app-aco";
|
|
3
|
+
export type { RecordActionConfig as EntryActionConfig };
|
|
4
4
|
type EntryActionProps = React.ComponentProps<typeof AcoConfig.Record.Action>;
|
|
5
5
|
export declare const EntryAction: ((props: EntryActionProps) => React.JSX.Element) & {
|
|
6
6
|
OptionsMenuItem: (props: import("@webiny/app-admin").OptionsMenuItemProps) => React.JSX.Element;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { CompositionScope } from "@webiny/react-composition";
|
|
3
|
-
import { AcoConfig
|
|
3
|
+
import { AcoConfig } from "@webiny/app-aco";
|
|
4
4
|
const {
|
|
5
5
|
Record
|
|
6
6
|
} = AcoConfig;
|
|
7
|
-
export { RecordActionConfig as EntryActionConfig };
|
|
8
7
|
const BaseEntryAction = props => {
|
|
9
8
|
return /*#__PURE__*/React.createElement(CompositionScope, {
|
|
10
9
|
name: "trash"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","CompositionScope","AcoConfig","
|
|
1
|
+
{"version":3,"names":["React","CompositionScope","AcoConfig","Record","BaseEntryAction","props","createElement","name","Action","EntryAction","Object","assign","OptionsMenuItem"],"sources":["EntryAction.tsx"],"sourcesContent":["import React from \"react\";\nimport { CompositionScope } from \"@webiny/react-composition\";\nimport { AcoConfig, type RecordActionConfig } from \"@webiny/app-aco\";\n\nconst { Record } = AcoConfig;\n\nexport type { RecordActionConfig as EntryActionConfig };\n\ntype EntryActionProps = React.ComponentProps<typeof AcoConfig.Record.Action>;\n\nconst BaseEntryAction = (props: EntryActionProps) => {\n return (\n <CompositionScope name={\"trash\"}>\n <AcoConfig>\n <Record.Action {...props} />\n </AcoConfig>\n </CompositionScope>\n );\n};\n\nexport const EntryAction = Object.assign(BaseEntryAction, {\n OptionsMenuItem: Record.Action.OptionsMenuItem\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,QAAQ,2BAA2B;AAC5D,SAASC,SAAS,QAAiC,iBAAiB;AAEpE,MAAM;EAAEC;AAAO,CAAC,GAAGD,SAAS;AAM5B,MAAME,eAAe,GAAIC,KAAuB,IAAK;EACjD,oBACIL,KAAA,CAAAM,aAAA,CAACL,gBAAgB;IAACM,IAAI,EAAE;EAAQ,gBAC5BP,KAAA,CAAAM,aAAA,CAACJ,SAAS,qBACNF,KAAA,CAAAM,aAAA,CAACH,MAAM,CAACK,MAAM,EAAKH,KAAQ,CACpB,CACG,CAAC;AAE3B,CAAC;AAED,OAAO,MAAMI,WAAW,GAAGC,MAAM,CAACC,MAAM,CAACP,eAAe,EAAE;EACtDQ,eAAe,EAAET,MAAM,CAACK,MAAM,CAACI;AACnC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig, TableColumnConfig as ColumnConfig } from "@webiny/app-aco";
|
|
3
|
-
import type {
|
|
4
|
-
export { ColumnConfig };
|
|
2
|
+
import { AcoConfig, type TableColumnConfig as ColumnConfig } from "@webiny/app-aco";
|
|
3
|
+
import type { TrashBinTableRow } from "../../../../../Domain";
|
|
4
|
+
export type { ColumnConfig };
|
|
5
5
|
type ColumnProps = React.ComponentProps<typeof AcoConfig.Table.Column>;
|
|
6
6
|
export declare const Column: ((props: ColumnProps) => React.JSX.Element) & {
|
|
7
|
-
useTableRow:
|
|
8
|
-
|
|
7
|
+
useTableRow: {
|
|
8
|
+
(): import("@webiny/app-aco").TableRowContextData<TrashBinTableRow>;
|
|
9
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<TrashBinTableRow & {
|
|
10
|
+
data: TUserRow;
|
|
11
|
+
}>;
|
|
12
|
+
};
|
|
13
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
9
14
|
};
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig
|
|
2
|
+
import { AcoConfig } from "@webiny/app-aco";
|
|
3
3
|
const {
|
|
4
4
|
Table
|
|
5
5
|
} = AcoConfig;
|
|
6
|
-
export { ColumnConfig };
|
|
7
6
|
const BaseColumn = props => {
|
|
8
7
|
return /*#__PURE__*/React.createElement(AcoConfig, null, /*#__PURE__*/React.createElement(Table.Column, props));
|
|
9
8
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AcoConfig","
|
|
1
|
+
{"version":3,"names":["React","AcoConfig","Table","BaseColumn","props","createElement","Column","Object","assign","useTableRow","createUseTableRow","isFolderRow"],"sources":["Column.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig, type TableColumnConfig as ColumnConfig } from \"@webiny/app-aco\";\nimport type { TrashBinTableRow } from \"~/Domain\";\n\nconst { Table } = AcoConfig;\n\nexport type { ColumnConfig };\n\ntype ColumnProps = React.ComponentProps<typeof AcoConfig.Table.Column>;\n\nconst BaseColumn = (props: ColumnProps) => {\n return (\n <AcoConfig>\n <Table.Column {...props} />\n </AcoConfig>\n );\n};\n\nexport const Column = Object.assign(BaseColumn, {\n useTableRow: Table.Column.createUseTableRow<TrashBinTableRow>(),\n isFolderRow: Table.Column.isFolderRow\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAgD,iBAAiB;AAGnF,MAAM;EAAEC;AAAM,CAAC,GAAGD,SAAS;AAM3B,MAAME,UAAU,GAAIC,KAAkB,IAAK;EACvC,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,SAAS,qBACND,KAAA,CAAAK,aAAA,CAACH,KAAK,CAACI,MAAM,EAAKF,KAAQ,CACnB,CAAC;AAEpB,CAAC;AAED,OAAO,MAAME,MAAM,GAAGC,MAAM,CAACC,MAAM,CAACL,UAAU,EAAE;EAC5CM,WAAW,EAAEP,KAAK,CAACI,MAAM,CAACI,iBAAiB,CAAmB,CAAC;EAC/DC,WAAW,EAAET,KAAK,CAACI,MAAM,CAACK;AAC9B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig, TableSortingConfig as SortingConfig } from "@webiny/app-aco";
|
|
3
|
-
export { SortingConfig };
|
|
2
|
+
import { AcoConfig, type TableSortingConfig as SortingConfig } from "@webiny/app-aco";
|
|
3
|
+
export type { SortingConfig };
|
|
4
4
|
type SortingProps = React.ComponentProps<typeof AcoConfig.Table.Sorting>;
|
|
5
5
|
export declare const Sorting: (props: SortingProps) => React.JSX.Element;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig
|
|
2
|
+
import { AcoConfig } from "@webiny/app-aco";
|
|
3
3
|
const {
|
|
4
4
|
Table
|
|
5
5
|
} = AcoConfig;
|
|
6
|
-
export { SortingConfig };
|
|
7
6
|
export const Sorting = props => {
|
|
8
7
|
return /*#__PURE__*/React.createElement(AcoConfig, null, /*#__PURE__*/React.createElement(Table.Sorting, props));
|
|
9
8
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AcoConfig","
|
|
1
|
+
{"version":3,"names":["React","AcoConfig","Table","Sorting","props","createElement"],"sources":["Sorting.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig, type TableSortingConfig as SortingConfig } from \"@webiny/app-aco\";\n\nconst { Table } = AcoConfig;\n\nexport type { SortingConfig };\n\ntype SortingProps = React.ComponentProps<typeof AcoConfig.Table.Sorting>;\n\nexport const Sorting = (props: SortingProps) => {\n return (\n <AcoConfig>\n <Table.Sorting {...props} />\n </AcoConfig>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAkD,iBAAiB;AAErF,MAAM;EAAEC;AAAM,CAAC,GAAGD,SAAS;AAM3B,OAAO,MAAME,OAAO,GAAIC,KAAmB,IAAK;EAC5C,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,SAAS,qBACND,KAAA,CAAAK,aAAA,CAACH,KAAK,CAACC,OAAO,EAAKC,KAAQ,CACpB,CAAC;AAEpB,CAAC","ignoreList":[]}
|
|
@@ -7,8 +7,13 @@ export interface TableConfig {
|
|
|
7
7
|
}
|
|
8
8
|
export declare const Table: {
|
|
9
9
|
Column: ((props: import("@webiny/app-aco/config/table/Column").ColumnProps) => import("react").JSX.Element) & {
|
|
10
|
-
useTableRow:
|
|
11
|
-
|
|
10
|
+
useTableRow: {
|
|
11
|
+
(): import("@webiny/app-aco").TableRowContextData<import("../../../../..").TrashBinTableRow>;
|
|
12
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<import("../../../../..").TrashBinTableRow & {
|
|
13
|
+
data: TUserRow;
|
|
14
|
+
}>;
|
|
15
|
+
};
|
|
16
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
12
17
|
};
|
|
13
18
|
Sorting: (props: import("@webiny/app-aco/config/table/Sorting").SortingProps) => import("react").JSX.Element;
|
|
14
19
|
};
|
|
@@ -26,8 +26,13 @@ export declare const Browser: {
|
|
|
26
26
|
};
|
|
27
27
|
Table: {
|
|
28
28
|
Column: ((props: import("@webiny/app-aco/config/table/Column").ColumnProps) => import("react").JSX.Element) & {
|
|
29
|
-
useTableRow:
|
|
30
|
-
|
|
29
|
+
useTableRow: {
|
|
30
|
+
(): import("@webiny/app-aco").TableRowContextData<import("../../../..").TrashBinTableRow>;
|
|
31
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<import("../../../..").TrashBinTableRow & {
|
|
32
|
+
data: TUserRow;
|
|
33
|
+
}>;
|
|
34
|
+
};
|
|
35
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
31
36
|
};
|
|
32
37
|
Sorting: (props: import("@webiny/app-aco/config/table/Sorting").SortingProps) => import("react").JSX.Element;
|
|
33
38
|
};
|
|
@@ -24,8 +24,13 @@ export declare const TrashBinListConfig: {
|
|
|
24
24
|
};
|
|
25
25
|
Table: {
|
|
26
26
|
Column: ((props: import("@webiny/app-aco/config/table/Column").ColumnProps) => React.JSX.Element) & {
|
|
27
|
-
useTableRow:
|
|
28
|
-
|
|
27
|
+
useTableRow: {
|
|
28
|
+
(): import("@webiny/app-aco").TableRowContextData<import("../../..").TrashBinTableRow>;
|
|
29
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<import("../../..").TrashBinTableRow & {
|
|
30
|
+
data: TUserRow;
|
|
31
|
+
}>;
|
|
32
|
+
};
|
|
33
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
29
34
|
};
|
|
30
35
|
Sorting: (props: import("@webiny/app-aco/config/table/Sorting").SortingProps) => React.JSX.Element;
|
|
31
36
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { ITrashBinControllers, ITrashBinPresenter } from "../abstractions";
|
|
3
|
-
import type { TrashBinItemDTO } from "../../Domain";
|
|
3
|
+
import type { TrashBinItemDTO, TrashBinTableRow } from "../../Domain";
|
|
4
4
|
import type { TrashBinBulkActionsParams } from "../../types";
|
|
5
5
|
export interface TrashBinContext {
|
|
6
6
|
controllers: ITrashBinControllers;
|
|
@@ -15,7 +15,7 @@ export declare const useTrashBin: () => {
|
|
|
15
15
|
listItems: () => Promise<void>;
|
|
16
16
|
listMoreItems: () => Promise<void>;
|
|
17
17
|
searchItems: (query: string) => Promise<void>;
|
|
18
|
-
selectItems: (items:
|
|
18
|
+
selectItems: (items: TrashBinTableRow[]) => Promise<void>;
|
|
19
19
|
selectAllItems: () => Promise<void>;
|
|
20
20
|
unselectAllItems: () => Promise<void>;
|
|
21
21
|
sortItems: import("@webiny/admin-ui/DataTable/DataTable").OnDataTableSortingChange;
|
|
@@ -22,7 +22,7 @@ export const useTrashBin = () => {
|
|
|
22
22
|
const listItems = useCallback(() => context.controllers.listItems.execute(), [context.controllers.listItems]);
|
|
23
23
|
const listMoreItems = useCallback(() => context.controllers.listMoreItems.execute(), [context.controllers.listMoreItems]);
|
|
24
24
|
const searchItems = useCallback(query => context.controllers.searchItems.execute(query), [context.controllers.searchItems]);
|
|
25
|
-
const selectItems = useCallback(items => context.controllers.selectItems.execute(items), [context.controllers.selectItems]);
|
|
25
|
+
const selectItems = useCallback(items => context.controllers.selectItems.execute(items.map(item => item.data)), [context.controllers.selectItems]);
|
|
26
26
|
const selectAllItems = useCallback(() => context.controllers.selectAllItems.execute(), [context.controllers.selectAllItems]);
|
|
27
27
|
const unselectAllItems = useCallback(() => context.controllers.unselectAllItems.execute(), [context.controllers.unselectAllItems]);
|
|
28
28
|
const sortItems = useMemo(() => context.controllers.sortItems.execute, [context.controllers.sortItems]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useMemo","useState","useCallback","autorun","createGenericContext","Provider","useHook","useTrashBin","context","vm","setVm","presenter","newState","onItemAfterRestore","item","deleteItem","id","controllers","execute","restoreItem","restoreBulkAction","params","deleteBulkAction","listItems","listMoreItems","searchItems","query","selectItems","items","selectAllItems","unselectAllItems","sortItems","getRestoredItemById","TrashBinProvider"],"sources":["useTrashBin.tsx"],"sourcesContent":["import { useEffect, useMemo, useState, useCallback } from \"react\";\nimport { autorun } from \"mobx\";\nimport { createGenericContext } from \"@webiny/app-admin\";\nimport type { ITrashBinControllers, ITrashBinPresenter } from \"~/Presentation/abstractions\";\nimport type { TrashBinItemDTO } from \"~/Domain\";\nimport type { TrashBinBulkActionsParams } from \"~/types\";\n\nexport interface TrashBinContext {\n controllers: ITrashBinControllers;\n presenter: ITrashBinPresenter;\n onItemAfterRestore: (item: TrashBinItemDTO) => Promise<void>;\n}\n\nconst { Provider, useHook } = createGenericContext<TrashBinContext>(\"TrashBinContext\");\n\nexport const useTrashBin = () => {\n const context = useHook();\n const [vm, setVm] = useState(context.presenter.vm);\n\n useEffect(() => {\n return autorun(() => {\n const newState = context.presenter.vm;\n setVm(newState);\n });\n }, [context.presenter]);\n\n const onItemAfterRestore = useCallback(\n (item: TrashBinItemDTO) => context.onItemAfterRestore(item),\n [context.onItemAfterRestore]\n );\n\n const deleteItem = useCallback(\n (id: string) => context.controllers.deleteItem.execute(id),\n [context.controllers.deleteItem]\n );\n\n const restoreItem = useCallback(\n (id: string) => context.controllers.restoreItem.execute(id),\n [context.controllers.restoreItem]\n );\n\n const restoreBulkAction = useCallback(\n (params: TrashBinBulkActionsParams) =>\n context.controllers.restoreBulkAction.execute(params),\n [context.controllers.restoreBulkAction]\n );\n\n const deleteBulkAction = useCallback(\n (params: TrashBinBulkActionsParams) => context.controllers.deleteBulkAction.execute(params),\n [context.controllers.deleteBulkAction]\n );\n\n const listItems = useCallback(\n () => context.controllers.listItems.execute(),\n [context.controllers.listItems]\n );\n\n const listMoreItems = useCallback(\n () => context.controllers.listMoreItems.execute(),\n [context.controllers.listMoreItems]\n );\n\n const searchItems = useCallback(\n (query: string) => context.controllers.searchItems.execute(query),\n [context.controllers.searchItems]\n );\n\n const selectItems = useCallback(\n (items:
|
|
1
|
+
{"version":3,"names":["useEffect","useMemo","useState","useCallback","autorun","createGenericContext","Provider","useHook","useTrashBin","context","vm","setVm","presenter","newState","onItemAfterRestore","item","deleteItem","id","controllers","execute","restoreItem","restoreBulkAction","params","deleteBulkAction","listItems","listMoreItems","searchItems","query","selectItems","items","map","data","selectAllItems","unselectAllItems","sortItems","getRestoredItemById","TrashBinProvider"],"sources":["useTrashBin.tsx"],"sourcesContent":["import { useEffect, useMemo, useState, useCallback } from \"react\";\nimport { autorun } from \"mobx\";\nimport { createGenericContext } from \"@webiny/app-admin\";\nimport type { ITrashBinControllers, ITrashBinPresenter } from \"~/Presentation/abstractions\";\nimport type { TrashBinItemDTO, TrashBinTableRow } from \"~/Domain\";\nimport type { TrashBinBulkActionsParams } from \"~/types\";\n\nexport interface TrashBinContext {\n controllers: ITrashBinControllers;\n presenter: ITrashBinPresenter;\n onItemAfterRestore: (item: TrashBinItemDTO) => Promise<void>;\n}\n\nconst { Provider, useHook } = createGenericContext<TrashBinContext>(\"TrashBinContext\");\n\nexport const useTrashBin = () => {\n const context = useHook();\n const [vm, setVm] = useState(context.presenter.vm);\n\n useEffect(() => {\n return autorun(() => {\n const newState = context.presenter.vm;\n setVm(newState);\n });\n }, [context.presenter]);\n\n const onItemAfterRestore = useCallback(\n (item: TrashBinItemDTO) => context.onItemAfterRestore(item),\n [context.onItemAfterRestore]\n );\n\n const deleteItem = useCallback(\n (id: string) => context.controllers.deleteItem.execute(id),\n [context.controllers.deleteItem]\n );\n\n const restoreItem = useCallback(\n (id: string) => context.controllers.restoreItem.execute(id),\n [context.controllers.restoreItem]\n );\n\n const restoreBulkAction = useCallback(\n (params: TrashBinBulkActionsParams) =>\n context.controllers.restoreBulkAction.execute(params),\n [context.controllers.restoreBulkAction]\n );\n\n const deleteBulkAction = useCallback(\n (params: TrashBinBulkActionsParams) => context.controllers.deleteBulkAction.execute(params),\n [context.controllers.deleteBulkAction]\n );\n\n const listItems = useCallback(\n () => context.controllers.listItems.execute(),\n [context.controllers.listItems]\n );\n\n const listMoreItems = useCallback(\n () => context.controllers.listMoreItems.execute(),\n [context.controllers.listMoreItems]\n );\n\n const searchItems = useCallback(\n (query: string) => context.controllers.searchItems.execute(query),\n [context.controllers.searchItems]\n );\n\n const selectItems = useCallback(\n (items: TrashBinTableRow[]) =>\n context.controllers.selectItems.execute(items.map(item => item.data)),\n [context.controllers.selectItems]\n );\n\n const selectAllItems = useCallback(\n () => context.controllers.selectAllItems.execute(),\n [context.controllers.selectAllItems]\n );\n\n const unselectAllItems = useCallback(\n () => context.controllers.unselectAllItems.execute(),\n [context.controllers.unselectAllItems]\n );\n\n const sortItems = useMemo(\n () => context.controllers.sortItems.execute,\n [context.controllers.sortItems]\n );\n\n const getRestoredItemById = useCallback(\n (id: string) => context.controllers.getRestoredItemById.execute(id),\n [context.controllers.getRestoredItemById]\n );\n\n return {\n vm,\n onItemAfterRestore,\n deleteItem,\n restoreItem,\n listItems,\n listMoreItems,\n searchItems,\n selectItems,\n selectAllItems,\n unselectAllItems,\n sortItems,\n getRestoredItemById,\n restoreBulkAction,\n deleteBulkAction\n };\n};\n\nexport const TrashBinProvider = Provider;\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/app-trash-bin",
|
|
3
|
-
"version": "0.0.0-unstable.
|
|
3
|
+
"version": "0.0.0-unstable.eb196ccd2f",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
"author": "Webiny Ltd.",
|
|
12
12
|
"license": "MIT",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@webiny/admin-ui": "0.0.0-unstable.
|
|
15
|
-
"@webiny/app-aco": "0.0.0-unstable.
|
|
16
|
-
"@webiny/app-admin": "0.0.0-unstable.
|
|
17
|
-
"@webiny/app-utils": "0.0.0-unstable.
|
|
18
|
-
"@webiny/icons": "0.0.0-unstable.
|
|
19
|
-
"@webiny/react-composition": "0.0.0-unstable.
|
|
20
|
-
"@webiny/react-properties": "0.0.0-unstable.
|
|
21
|
-
"@webiny/ui": "0.0.0-unstable.
|
|
14
|
+
"@webiny/admin-ui": "0.0.0-unstable.eb196ccd2f",
|
|
15
|
+
"@webiny/app-aco": "0.0.0-unstable.eb196ccd2f",
|
|
16
|
+
"@webiny/app-admin": "0.0.0-unstable.eb196ccd2f",
|
|
17
|
+
"@webiny/app-utils": "0.0.0-unstable.eb196ccd2f",
|
|
18
|
+
"@webiny/icons": "0.0.0-unstable.eb196ccd2f",
|
|
19
|
+
"@webiny/react-composition": "0.0.0-unstable.eb196ccd2f",
|
|
20
|
+
"@webiny/react-properties": "0.0.0-unstable.eb196ccd2f",
|
|
21
|
+
"@webiny/ui": "0.0.0-unstable.eb196ccd2f",
|
|
22
22
|
"graphql": "15.9.0",
|
|
23
23
|
"lodash": "4.17.21",
|
|
24
24
|
"mobx": "6.9.0",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@types/react": "18.2.79",
|
|
31
|
-
"@webiny/project-utils": "0.0.0-unstable.
|
|
31
|
+
"@webiny/project-utils": "0.0.0-unstable.eb196ccd2f",
|
|
32
32
|
"apollo-client": "2.6.10",
|
|
33
33
|
"apollo-link": "1.2.14",
|
|
34
34
|
"rimraf": "6.0.1",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"build": "node ../cli/bin.js run build",
|
|
43
43
|
"watch": "node ../cli/bin.js run watch"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "eb196ccd2f32296e10f7add6dd7220d4e3abece4"
|
|
46
46
|
}
|