@webiny/app-trash-bin 5.41.4 → 5.42.0-beta.1
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.js.map +1 -1
- package/Domain/Repositories/Search/SearchRepository.js.map +1 -1
- package/Domain/Repositories/Search/SearchRepositoryFactory.js.map +1 -1
- package/Domain/Repositories/SelectedItems/SelectedItemsRepository.js.map +1 -1
- package/Domain/Repositories/SelectedItems/SelectedItemsRepositoryFactory.js.map +1 -1
- package/Domain/Repositories/Sorting/SortingRepositoryWithDefaults.js.map +1 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemMapper.js.map +1 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemsRepository.js.map +1 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemsRepositoryFactory.js.map +1 -1
- package/Domain/Repositories/TrashBinItems/TrashBinItemsRepositoryWithLoading.js.map +1 -1
- package/Presentation/TrashBin/TrashBin.test.js.map +1 -1
- package/Presentation/TrashBin/TrashBinControllers.js.map +1 -1
- package/Presentation/TrashBin/TrashBinPresenter.js.map +1 -1
- package/Presentation/TrashBin/controllers/BulkAction/BulkActionsController.js.map +1 -1
- package/Presentation/TrashBin/controllers/DeleteItem/DeleteItemController.js.map +1 -1
- package/Presentation/TrashBin/controllers/GetRestoredItemById/GetRestoredItemByIdController.js.map +1 -1
- package/Presentation/TrashBin/controllers/ListItems/ListItemsController.js.map +1 -1
- package/Presentation/TrashBin/controllers/ListMoreItems/ListMoreItemsController.js.map +1 -1
- package/Presentation/TrashBin/controllers/RestoreItem/RestoreItemController.js.map +1 -1
- package/Presentation/TrashBin/controllers/SearchItems/SearchItemsController.js.map +1 -1
- package/Presentation/TrashBin/controllers/SelectAllItems/SelectAllItemsController.js.map +1 -1
- package/Presentation/TrashBin/controllers/SelectItems/SelectItemsController.js.map +1 -1
- package/Presentation/TrashBin/controllers/UnselectAllItems/UnselectAllItemsController.js.map +1 -1
- package/Presentation/components/BulkActions/BulkActions/BulkActions.js.map +1 -1
- package/Presentation/components/BulkActions/DeleteItems/DeleteItems.js.map +1 -1
- package/Presentation/components/BulkActions/RestoreItems/RestoreItems.js.map +1 -1
- package/Presentation/components/BulkActions/RestoreItems/RestoreItemsReportMessage.js.map +1 -1
- package/Presentation/components/SearchInput/SearchInput.js.map +1 -1
- package/Presentation/components/Table/Table.js.map +1 -1
- package/Presentation/components/TrashBinOverlay/TrashBinOverlay.js.map +1 -1
- package/Presentation/configs/list/Browser/BulkAction.js.map +1 -1
- package/Presentation/hooks/useRestoreTrashBinItem.js.map +1 -1
- package/UseCases/BulkAction/BulkActionUseCase.js.map +1 -1
- package/UseCases/DeleteItem/DeleteItemUseCase.js.map +1 -1
- package/UseCases/GetRestoredItem/GetRestoredItemUseCase.js.map +1 -1
- package/UseCases/ListItems/ListItemsUseCase.js.map +1 -1
- package/UseCases/ListItems/ListItemsUseCaseWithSearch.js.map +1 -1
- package/UseCases/ListItems/ListItemsUseCaseWithSorting.js.map +1 -1
- package/UseCases/ListMoreItems/ListMoreItemsUseCase.js.map +1 -1
- package/UseCases/RestoreItem/RestoreItemUseCase.js.map +1 -1
- package/UseCases/SearchItems/SearchItemsUseCase.js.map +1 -1
- package/UseCases/SelectAllItems/SelectAllItemsUseCase.js.map +1 -1
- package/UseCases/SelectItems/SelectItemsUseCase.js.map +1 -1
- package/UseCases/SortItems/SortItemsUseCase.js.map +1 -1
- package/UseCases/UnSelectAllItems/UnselectAllItemsUseCase.js.map +1 -1
- package/package.json +12 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TrashBinItem","exports","item","_classCallCheck2","default","id","title","location","createdBy","deletedOn","deletedBy","_createClass2","key","value","create"],"sources":["TrashBinItem.ts"],"sourcesContent":["import { 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":";;;;;;;;;IAYaA,YAAY,GAAAC,OAAA,CAAAD,YAAA;EAQrB,SAAAA,aAAsBE,IAAqB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAJ,YAAA;IACzC,IAAI,CAACK,EAAE,GAAGH,IAAI,CAACG,EAAE;IACjB,IAAI,CAACC,KAAK,GAAGJ,IAAI,CAACI,KAAK;IACvB,IAAI,CAACC,QAAQ,GAAGL,IAAI,CAACK,QAAQ;IAC7B,IAAI,CAACC,SAAS,GAAGN,IAAI,CAACM,SAAS;IAC/B,IAAI,CAACC,SAAS,GAAGP,IAAI,CAACO,SAAS;IAC/B,IAAI,CAACC,SAAS,GAAGR,IAAI,CAACQ,SAAS;EACnC;EAAC,WAAAC,aAAA,CAAAP,OAAA,EAAAJ,YAAA;IAAAY,GAAA;IAAAC,KAAA,EAED,
|
|
1
|
+
{"version":3,"names":["TrashBinItem","exports","item","_classCallCheck2","default","id","title","location","createdBy","deletedOn","deletedBy","_createClass2","key","value","create"],"sources":["TrashBinItem.ts"],"sourcesContent":["import { 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":";;;;;;;;;IAYaA,YAAY,GAAAC,OAAA,CAAAD,YAAA;EAQrB,SAAAA,aAAsBE,IAAqB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAJ,YAAA;IACzC,IAAI,CAACK,EAAE,GAAGH,IAAI,CAACG,EAAE;IACjB,IAAI,CAACC,KAAK,GAAGJ,IAAI,CAACI,KAAK;IACvB,IAAI,CAACC,QAAQ,GAAGL,IAAI,CAACK,QAAQ;IAC7B,IAAI,CAACC,SAAS,GAAGN,IAAI,CAACM,SAAS;IAC/B,IAAI,CAACC,SAAS,GAAGP,IAAI,CAACO,SAAS;IAC/B,IAAI,CAACC,SAAS,GAAGR,IAAI,CAACQ,SAAS;EACnC;EAAC,WAAAC,aAAA,CAAAP,OAAA,EAAAJ,YAAA;IAAAY,GAAA;IAAAC,KAAA,EAED,SAAOC,MAAMA,CAACZ,IAAqB,EAAE;MACjC,OAAO,IAAIF,YAAY,CAACE,IAAI,CAAC;IACjC;EAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","SearchRepository","exports","_classCallCheck2","default","_defineProperty2","makeAutoObservable","_createClass2","key","value","get","query","set"],"sources":["SearchRepository.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { ISearchRepository } from \"./ISearchRepository\";\n\nexport class SearchRepository implements ISearchRepository {\n private query = \"\";\n\n constructor() {\n makeAutoObservable(this);\n }\n\n get() {\n return this.query;\n }\n\n async set(query: string) {\n this.query = query;\n }\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAA0C,IAG7BC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA;EAGzB,SAAAA,iBAAA,EAAc;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,gBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBAFE,EAAE;IAGd,IAAAE,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAH,OAAA,EAAAH,gBAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,SAAAC,
|
|
1
|
+
{"version":3,"names":["_mobx","require","SearchRepository","exports","_classCallCheck2","default","_defineProperty2","makeAutoObservable","_createClass2","key","value","get","query","set"],"sources":["SearchRepository.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { ISearchRepository } from \"./ISearchRepository\";\n\nexport class SearchRepository implements ISearchRepository {\n private query = \"\";\n\n constructor() {\n makeAutoObservable(this);\n }\n\n get() {\n return this.query;\n }\n\n async set(query: string) {\n this.query = query;\n }\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAA0C,IAG7BC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA;EAGzB,SAAAA,iBAAA,EAAc;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,gBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBAFE,EAAE;IAGd,IAAAE,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAH,OAAA,EAAAH,gBAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,SAAAC,GAAGA,CAAA,EAAG;MACF,OAAO,IAAI,CAACC,KAAK;IACrB;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,eAAMG,GAAGA,CAACD,KAAa,EAAE;MACrB,IAAI,CAACA,KAAK,GAAGA,KAAK;IACtB;EAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_SearchRepository","require","SearchRepositoryFactory","exports","_classCallCheck2","default","_defineProperty2","Map","_createClass2","key","value","getRepository","cacheKey","getCacheKey","cache","has","set","SearchRepository","get","Date","now","toString","searchRepositoryFactory"],"sources":["SearchRepositoryFactory.ts"],"sourcesContent":["import { SearchRepository } from \"./SearchRepository\";\n\nexport class SearchRepositoryFactory {\n private cache: Map<string, SearchRepository> = new Map();\n\n getRepository() {\n const cacheKey = this.getCacheKey();\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new SearchRepository());\n }\n\n return this.cache.get(cacheKey) as SearchRepository;\n }\n\n private getCacheKey() {\n return Date.now().toString();\n }\n}\n\nexport const searchRepositoryFactory = new SearchRepositoryFactory();\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAAsD,IAEzCC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA;EAAA,SAAAA,wBAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,uBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBACe,IAAIE,GAAG,CAAC,CAAC;EAAA;EAAA,WAAAC,aAAA,CAAAH,OAAA,EAAAH,uBAAA;IAAAO,GAAA;IAAAC,KAAA,EAExD,SAAAC,
|
|
1
|
+
{"version":3,"names":["_SearchRepository","require","SearchRepositoryFactory","exports","_classCallCheck2","default","_defineProperty2","Map","_createClass2","key","value","getRepository","cacheKey","getCacheKey","cache","has","set","SearchRepository","get","Date","now","toString","searchRepositoryFactory"],"sources":["SearchRepositoryFactory.ts"],"sourcesContent":["import { SearchRepository } from \"./SearchRepository\";\n\nexport class SearchRepositoryFactory {\n private cache: Map<string, SearchRepository> = new Map();\n\n getRepository() {\n const cacheKey = this.getCacheKey();\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new SearchRepository());\n }\n\n return this.cache.get(cacheKey) as SearchRepository;\n }\n\n private getCacheKey() {\n return Date.now().toString();\n }\n}\n\nexport const searchRepositoryFactory = new SearchRepositoryFactory();\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAAsD,IAEzCC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA;EAAA,SAAAA,wBAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,uBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBACe,IAAIE,GAAG,CAAC,CAAC;EAAA;EAAA,WAAAC,aAAA,CAAAH,OAAA,EAAAH,uBAAA;IAAAO,GAAA;IAAAC,KAAA,EAExD,SAAAC,aAAaA,CAAA,EAAG;MACZ,IAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAAC,CAAC;MAEnC,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,GAAG,CAACH,QAAQ,CAAC,EAAE;QAC3B,IAAI,CAACE,KAAK,CAACE,GAAG,CAACJ,QAAQ,EAAE,IAAIK,kCAAgB,CAAC,CAAC,CAAC;MACpD;MAEA,OAAO,IAAI,CAACH,KAAK,CAACI,GAAG,CAACN,QAAQ,CAAC;IACnC;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAQG,WAAWA,CAAA,EAAG;MAClB,OAAOM,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;IAChC;EAAC;AAAA;AAGE,IAAMC,uBAAuB,GAAAnB,OAAA,CAAAmB,uBAAA,GAAG,IAAIpB,uBAAuB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","SelectedItemsRepository","exports","_classCallCheck2","default","_defineProperty2","makeAutoObservable","_createClass2","key","value","getSelectedItems","items","getSelectedAllItems","selectedAll","selectItems","selectAllItems","unselectAllItems"],"sources":["SelectedItemsRepository.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { TrashBinItem } from \"~/Domain\";\nimport { ISelectedItemsRepository } from \"./ISelectedItemsRepository\";\n\nexport class SelectedItemsRepository implements ISelectedItemsRepository {\n private items: TrashBinItem[] = [];\n private selectedAll = false;\n\n constructor() {\n makeAutoObservable(this);\n }\n\n getSelectedItems() {\n return this.items;\n }\n\n getSelectedAllItems() {\n return this.selectedAll;\n }\n\n async selectItems(items: TrashBinItem[]) {\n this.items = items;\n this.selectedAll = false;\n }\n\n async selectAllItems() {\n this.selectedAll = true;\n }\n\n async unselectAllItems() {\n this.items = [];\n this.selectedAll = false;\n }\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAA0C,IAI7BC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA;EAIhC,SAAAA,wBAAA,EAAc;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,uBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBAHkB,EAAE;IAAA,IAAAC,gBAAA,CAAAD,OAAA,uBACZ,KAAK;IAGvB,IAAAE,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAH,OAAA,EAAAH,uBAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,SAAAC,
|
|
1
|
+
{"version":3,"names":["_mobx","require","SelectedItemsRepository","exports","_classCallCheck2","default","_defineProperty2","makeAutoObservable","_createClass2","key","value","getSelectedItems","items","getSelectedAllItems","selectedAll","selectItems","selectAllItems","unselectAllItems"],"sources":["SelectedItemsRepository.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { TrashBinItem } from \"~/Domain\";\nimport { ISelectedItemsRepository } from \"./ISelectedItemsRepository\";\n\nexport class SelectedItemsRepository implements ISelectedItemsRepository {\n private items: TrashBinItem[] = [];\n private selectedAll = false;\n\n constructor() {\n makeAutoObservable(this);\n }\n\n getSelectedItems() {\n return this.items;\n }\n\n getSelectedAllItems() {\n return this.selectedAll;\n }\n\n async selectItems(items: TrashBinItem[]) {\n this.items = items;\n this.selectedAll = false;\n }\n\n async selectAllItems() {\n this.selectedAll = true;\n }\n\n async unselectAllItems() {\n this.items = [];\n this.selectedAll = false;\n }\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAA0C,IAI7BC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA;EAIhC,SAAAA,wBAAA,EAAc;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,uBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBAHkB,EAAE;IAAA,IAAAC,gBAAA,CAAAD,OAAA,uBACZ,KAAK;IAGvB,IAAAE,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAH,OAAA,EAAAH,uBAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,SAAAC,gBAAgBA,CAAA,EAAG;MACf,OAAO,IAAI,CAACC,KAAK;IACrB;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAG,mBAAmBA,CAAA,EAAG;MAClB,OAAO,IAAI,CAACC,WAAW;IAC3B;EAAC;IAAAL,GAAA;IAAAC,KAAA,EAED,eAAMK,WAAWA,CAACH,KAAqB,EAAE;MACrC,IAAI,CAACA,KAAK,GAAGA,KAAK;MAClB,IAAI,CAACE,WAAW,GAAG,KAAK;IAC5B;EAAC;IAAAL,GAAA;IAAAC,KAAA,EAED,eAAMM,cAAcA,CAAA,EAAG;MACnB,IAAI,CAACF,WAAW,GAAG,IAAI;IAC3B;EAAC;IAAAL,GAAA;IAAAC,KAAA,EAED,eAAMO,gBAAgBA,CAAA,EAAG;MACrB,IAAI,CAACL,KAAK,GAAG,EAAE;MACf,IAAI,CAACE,WAAW,GAAG,KAAK;IAC5B;EAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_SelectedItemsRepository","require","SelectedItemsRepositoryFactory","exports","_classCallCheck2","default","_defineProperty2","Map","_createClass2","key","value","getRepository","cacheKey","getCacheKey","cache","has","set","SelectedItemsRepository","get","Date","now","toString","selectedItemsRepositoryFactory"],"sources":["SelectedItemsRepositoryFactory.ts"],"sourcesContent":["import { SelectedItemsRepository } from \"./SelectedItemsRepository\";\n\nexport class SelectedItemsRepositoryFactory {\n private cache: Map<string, SelectedItemsRepository> = new Map();\n\n getRepository() {\n const cacheKey = this.getCacheKey();\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new SelectedItemsRepository());\n }\n\n return this.cache.get(cacheKey) as SelectedItemsRepository;\n }\n\n private getCacheKey() {\n return Date.now().toString();\n }\n}\n\nexport const selectedItemsRepositoryFactory = new SelectedItemsRepositoryFactory();\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,wBAAA,GAAAC,OAAA;AAAoE,IAEvDC,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA;EAAA,SAAAA,+BAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,8BAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBACe,IAAIE,GAAG,CAAC,CAAC;EAAA;EAAA,WAAAC,aAAA,CAAAH,OAAA,EAAAH,8BAAA;IAAAO,GAAA;IAAAC,KAAA,EAE/D,SAAAC,
|
|
1
|
+
{"version":3,"names":["_SelectedItemsRepository","require","SelectedItemsRepositoryFactory","exports","_classCallCheck2","default","_defineProperty2","Map","_createClass2","key","value","getRepository","cacheKey","getCacheKey","cache","has","set","SelectedItemsRepository","get","Date","now","toString","selectedItemsRepositoryFactory"],"sources":["SelectedItemsRepositoryFactory.ts"],"sourcesContent":["import { SelectedItemsRepository } from \"./SelectedItemsRepository\";\n\nexport class SelectedItemsRepositoryFactory {\n private cache: Map<string, SelectedItemsRepository> = new Map();\n\n getRepository() {\n const cacheKey = this.getCacheKey();\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new SelectedItemsRepository());\n }\n\n return this.cache.get(cacheKey) as SelectedItemsRepository;\n }\n\n private getCacheKey() {\n return Date.now().toString();\n }\n}\n\nexport const selectedItemsRepositoryFactory = new SelectedItemsRepositoryFactory();\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,wBAAA,GAAAC,OAAA;AAAoE,IAEvDC,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA;EAAA,SAAAA,+BAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,8BAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBACe,IAAIE,GAAG,CAAC,CAAC;EAAA;EAAA,WAAAC,aAAA,CAAAH,OAAA,EAAAH,8BAAA;IAAAO,GAAA;IAAAC,KAAA,EAE/D,SAAAC,aAAaA,CAAA,EAAG;MACZ,IAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAAC,CAAC;MAEnC,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,GAAG,CAACH,QAAQ,CAAC,EAAE;QAC3B,IAAI,CAACE,KAAK,CAACE,GAAG,CAACJ,QAAQ,EAAE,IAAIK,gDAAuB,CAAC,CAAC,CAAC;MAC3D;MAEA,OAAO,IAAI,CAACH,KAAK,CAACI,GAAG,CAACN,QAAQ,CAAC;IACnC;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAQG,WAAWA,CAAA,EAAG;MAClB,OAAOM,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;IAChC;EAAC;AAAA;AAGE,IAAMC,8BAA8B,GAAAnB,OAAA,CAAAmB,8BAAA,GAAG,IAAIpB,8BAA8B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","SortingRepositoryWithDefaults","exports","defaults","repository","_classCallCheck2","default","makeAutoObservable","_createClass2","key","value","get","_this","existingSort","length","runInAction","set","sorts"],"sources":["SortingRepositoryWithDefaults.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport { ISortingRepository, Sorting } from \"@webiny/app-utils\";\n\nexport class SortingRepositoryWithDefaults implements ISortingRepository {\n private defaults: Sorting[];\n private repository: ISortingRepository;\n\n constructor(defaults: Sorting[], repository: ISortingRepository) {\n this.defaults = defaults;\n this.repository = repository;\n makeAutoObservable(this);\n }\n\n get() {\n const existingSort = this.repository.get();\n\n if (existingSort.length === 0) {\n runInAction(() => {\n this.set(this.defaults);\n });\n }\n\n return this.repository.get();\n }\n\n set(sorts: Sorting[]) {\n return this.repository.set(sorts);\n }\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAuD,IAG1CC,6BAA6B,GAAAC,OAAA,CAAAD,6BAAA;EAItC,SAAAA,8BAAYE,QAAmB,EAAEC,UAA8B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,6BAAA;IAC7D,IAAI,CAACE,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,UAAU,GAAGA,UAAU;IAC5B,IAAAG,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAF,OAAA,EAAAL,6BAAA;IAAAQ,GAAA;IAAAC,KAAA,EAED,SAAAC,
|
|
1
|
+
{"version":3,"names":["_mobx","require","SortingRepositoryWithDefaults","exports","defaults","repository","_classCallCheck2","default","makeAutoObservable","_createClass2","key","value","get","_this","existingSort","length","runInAction","set","sorts"],"sources":["SortingRepositoryWithDefaults.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport { ISortingRepository, Sorting } from \"@webiny/app-utils\";\n\nexport class SortingRepositoryWithDefaults implements ISortingRepository {\n private defaults: Sorting[];\n private repository: ISortingRepository;\n\n constructor(defaults: Sorting[], repository: ISortingRepository) {\n this.defaults = defaults;\n this.repository = repository;\n makeAutoObservable(this);\n }\n\n get() {\n const existingSort = this.repository.get();\n\n if (existingSort.length === 0) {\n runInAction(() => {\n this.set(this.defaults);\n });\n }\n\n return this.repository.get();\n }\n\n set(sorts: Sorting[]) {\n return this.repository.set(sorts);\n }\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAuD,IAG1CC,6BAA6B,GAAAC,OAAA,CAAAD,6BAAA;EAItC,SAAAA,8BAAYE,QAAmB,EAAEC,UAA8B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,6BAAA;IAC7D,IAAI,CAACE,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,UAAU,GAAGA,UAAU;IAC5B,IAAAG,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAF,OAAA,EAAAL,6BAAA;IAAAQ,GAAA;IAAAC,KAAA,EAED,SAAAC,GAAGA,CAAA,EAAG;MAAA,IAAAC,KAAA;MACF,IAAMC,YAAY,GAAG,IAAI,CAACT,UAAU,CAACO,GAAG,CAAC,CAAC;MAE1C,IAAIE,YAAY,CAACC,MAAM,KAAK,CAAC,EAAE;QAC3B,IAAAC,iBAAW,EAAC,YAAM;UACdH,KAAI,CAACI,GAAG,CAACJ,KAAI,CAACT,QAAQ,CAAC;QAC3B,CAAC,CAAC;MACN;MAEA,OAAO,IAAI,CAACC,UAAU,CAACO,GAAG,CAAC,CAAC;IAChC;EAAC;IAAAF,GAAA;IAAAC,KAAA,EAED,SAAAM,GAAGA,CAACC,KAAgB,EAAE;MAClB,OAAO,IAAI,CAACb,UAAU,CAACY,GAAG,CAACC,KAAK,CAAC;IACrC;EAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TrashBinItemMapper","exports","_classCallCheck2","default","_createClass2","key","value","toDTO","data","id","$selectable","title","location","createdBy","deletedBy","displayName","type","deletedOn"],"sources":["TrashBinItemMapper.ts"],"sourcesContent":["import { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\n\nexport class TrashBinItemMapper implements ITrashBinItemMapper<TrashBinItem> {\n toDTO(data: TrashBinItem) {\n return {\n id: data.id,\n $selectable: true,\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":";;;;;;;;;IAEaA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA;EAAA,SAAAA,mBAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,kBAAA;EAAA;EAAA,WAAAI,aAAA,CAAAD,OAAA,EAAAH,kBAAA;IAAAK,GAAA;IAAAC,KAAA,EAC3B,SAAAC,
|
|
1
|
+
{"version":3,"names":["TrashBinItemMapper","exports","_classCallCheck2","default","_createClass2","key","value","toDTO","data","id","$selectable","title","location","createdBy","deletedBy","displayName","type","deletedOn"],"sources":["TrashBinItemMapper.ts"],"sourcesContent":["import { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\n\nexport class TrashBinItemMapper implements ITrashBinItemMapper<TrashBinItem> {\n toDTO(data: TrashBinItem) {\n return {\n id: data.id,\n $selectable: true,\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":";;;;;;;;;IAEaA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA;EAAA,SAAAA,mBAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,kBAAA;EAAA;EAAA,WAAAI,aAAA,CAAAD,OAAA,EAAAH,kBAAA;IAAAK,GAAA;IAAAC,KAAA,EAC3B,SAAAC,KAAKA,CAACC,IAAkB,EAAE;MACtB,OAAO;QACHC,EAAE,EAAED,IAAI,CAACC,EAAE;QACXC,WAAW,EAAE,IAAI;QACjBC,KAAK,EAAEH,IAAI,CAACG,KAAK;QACjBC,QAAQ,EAAEJ,IAAI,CAACI,QAAQ;QACvBC,SAAS,EAAEL,IAAI,CAACK,SAAS;QACzBC,SAAS,EAAE;UACPL,EAAE,EAAED,IAAI,CAACM,SAAS,EAAEL,EAAE,IAAI,EAAE;UAC5BM,WAAW,EAAEP,IAAI,CAACM,SAAS,EAAEC,WAAW,IAAI,EAAE;UAC9CC,IAAI,EAAER,IAAI,CAACM,SAAS,EAAEE,IAAI,IAAI;QAClC,CAAC;QACDC,SAAS,EAAET,IAAI,CAACS,SAAS,IAAI;MACjC,CAAC;IACL;EAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_uniqBy","_interopRequireDefault","_","_appUtils","TrashBinItemsRepository","exports","metaRepository","listGateway","deleteGateway","restoreGateway","bulkActionsGateway","entryMapper","_classCallCheck2","default","_defineProperty2","itemMapper","params","makeAutoObservable","_createClass2","key","value","getItems","items","getRestoredItems","restoredItems","getMeta","get","getLoading","listItems","_this","response","execute","_objectSpread2","runInAction","_response","_slicedToArray2","meta","map","entry","TrashBinItem","create","toDTO","set","Meta","listMoreItems","_this2","_this$metaRepository$","cursor","after","_response2","itemsDTO","uniqBy","concat","_toConsumableArray2","deleteItem","id","_this3","filter","item","decreaseTotalCount","restoreItem","_this4","bulkAction","action","where","search","data"],"sources":["TrashBinItemsRepository.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport uniqBy from \"lodash/uniqBy\";\nimport { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\nimport {\n ITrashBinListGateway,\n ITrashBinDeleteItemGateway,\n ITrashBinRestoreItemGateway,\n ITrashBinBulkActionsGateway\n} from \"~/Gateways\";\nimport { IMetaRepository, Meta } from \"@webiny/app-utils\";\nimport { TrashBinBulkActionsParams, TrashBinListQueryVariables } from \"~/types\";\nimport { ITrashBinItemsRepository } from \"./ITrashBinItemsRepository\";\n\nexport class TrashBinItemsRepository<TItem extends Record<string, any>>\n implements ITrashBinItemsRepository\n{\n private metaRepository: IMetaRepository;\n private listGateway: ITrashBinListGateway<TItem>;\n private deleteGateway: ITrashBinDeleteItemGateway;\n private restoreGateway: ITrashBinRestoreItemGateway<TItem>;\n private bulkActionsGateway: ITrashBinBulkActionsGateway;\n private itemMapper: ITrashBinItemMapper<TItem>;\n private items: TrashBinItem[] = [];\n private restoredItems: TrashBinItem[] = [];\n private params: TrashBinListQueryVariables = {};\n\n constructor(\n metaRepository: IMetaRepository,\n listGateway: ITrashBinListGateway<TItem>,\n deleteGateway: ITrashBinDeleteItemGateway,\n restoreGateway: ITrashBinRestoreItemGateway<TItem>,\n bulkActionsGateway: ITrashBinBulkActionsGateway,\n entryMapper: ITrashBinItemMapper<TItem>\n ) {\n this.metaRepository = metaRepository;\n this.listGateway = listGateway;\n this.deleteGateway = deleteGateway;\n this.restoreGateway = restoreGateway;\n this.bulkActionsGateway = bulkActionsGateway;\n this.itemMapper = entryMapper;\n this.params = {};\n makeAutoObservable(this);\n }\n\n getItems() {\n return this.items;\n }\n\n getRestoredItems() {\n return this.restoredItems;\n }\n\n getMeta() {\n return this.metaRepository.get();\n }\n\n getLoading() {\n return {};\n }\n\n async listItems(params?: TrashBinListQueryVariables) {\n this.params = params || {};\n\n const response = await this.listGateway.execute({ ...params });\n\n if (!response) {\n return;\n }\n\n runInAction(() => {\n const [items, meta] = response;\n this.items = items.map(entry => TrashBinItem.create(this.itemMapper.toDTO(entry)));\n this.metaRepository.set(Meta.create(meta));\n });\n }\n\n async listMoreItems() {\n const { cursor } = this.metaRepository.get();\n\n if (!cursor) {\n return;\n }\n\n const response = await this.listGateway.execute({ ...this.params, after: cursor });\n\n if (!response) {\n return;\n }\n\n runInAction(() => {\n const [items, meta] = response;\n const itemsDTO = items.map(entry => TrashBinItem.create(this.itemMapper.toDTO(entry)));\n this.items = uniqBy([...this.items, ...itemsDTO], \"id\");\n this.metaRepository.set(Meta.create(meta));\n });\n }\n\n async deleteItem(id: string) {\n const response = await this.deleteGateway.execute(id);\n\n if (!response) {\n return;\n }\n\n runInAction(() => {\n this.items = this.items.filter(item => item.id !== id);\n this.metaRepository.decreaseTotalCount(1);\n });\n }\n\n async restoreItem(id: string) {\n const item = await this.restoreGateway.execute(id);\n\n if (!item) {\n return;\n }\n\n runInAction(() => {\n this.items = this.items.filter(item => item.id !== id);\n this.restoredItems = [\n ...this.restoredItems,\n TrashBinItem.create(this.itemMapper.toDTO(item))\n ];\n this.metaRepository.decreaseTotalCount(1);\n });\n }\n\n async bulkAction(action: string, params: TrashBinBulkActionsParams) {\n const { where, search, data } = params;\n await this.bulkActionsGateway.execute({ action, where, search, data });\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,CAAA,GAAAH,OAAA;AAOA,IAAAI,SAAA,GAAAJ,OAAA;AAA0D,IAI7CK,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA;EAahC,SAAAA,wBACIE,cAA+B,EAC/BC,WAAwC,EACxCC,aAAyC,EACzCC,cAAkD,EAClDC,kBAA+C,EAC/CC,WAAuC,EACzC;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAT,uBAAA;IAAA,IAAAU,gBAAA,CAAAD,OAAA,iBAX8B,EAAE;IAAA,IAAAC,gBAAA,CAAAD,OAAA,yBACM,EAAE;IAAA,IAAAC,gBAAA,CAAAD,OAAA,kBACG,CAAC,CAAC;IAU3C,IAAI,CAACP,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACC,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,kBAAkB,GAAGA,kBAAkB;IAC5C,IAAI,CAACK,UAAU,GAAGJ,WAAW;IAC7B,IAAI,CAACK,MAAM,GAAG,CAAC,CAAC;IAChB,IAAAC,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAL,OAAA,EAAAT,uBAAA;IAAAe,GAAA;IAAAC,KAAA,EAED,SAAAC,
|
|
1
|
+
{"version":3,"names":["_mobx","require","_uniqBy","_interopRequireDefault","_","_appUtils","TrashBinItemsRepository","exports","metaRepository","listGateway","deleteGateway","restoreGateway","bulkActionsGateway","entryMapper","_classCallCheck2","default","_defineProperty2","itemMapper","params","makeAutoObservable","_createClass2","key","value","getItems","items","getRestoredItems","restoredItems","getMeta","get","getLoading","listItems","_this","response","execute","_objectSpread2","runInAction","_response","_slicedToArray2","meta","map","entry","TrashBinItem","create","toDTO","set","Meta","listMoreItems","_this2","_this$metaRepository$","cursor","after","_response2","itemsDTO","uniqBy","concat","_toConsumableArray2","deleteItem","id","_this3","filter","item","decreaseTotalCount","restoreItem","_this4","bulkAction","action","where","search","data"],"sources":["TrashBinItemsRepository.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport uniqBy from \"lodash/uniqBy\";\nimport { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\nimport {\n ITrashBinListGateway,\n ITrashBinDeleteItemGateway,\n ITrashBinRestoreItemGateway,\n ITrashBinBulkActionsGateway\n} from \"~/Gateways\";\nimport { IMetaRepository, Meta } from \"@webiny/app-utils\";\nimport { TrashBinBulkActionsParams, TrashBinListQueryVariables } from \"~/types\";\nimport { ITrashBinItemsRepository } from \"./ITrashBinItemsRepository\";\n\nexport class TrashBinItemsRepository<TItem extends Record<string, any>>\n implements ITrashBinItemsRepository\n{\n private metaRepository: IMetaRepository;\n private listGateway: ITrashBinListGateway<TItem>;\n private deleteGateway: ITrashBinDeleteItemGateway;\n private restoreGateway: ITrashBinRestoreItemGateway<TItem>;\n private bulkActionsGateway: ITrashBinBulkActionsGateway;\n private itemMapper: ITrashBinItemMapper<TItem>;\n private items: TrashBinItem[] = [];\n private restoredItems: TrashBinItem[] = [];\n private params: TrashBinListQueryVariables = {};\n\n constructor(\n metaRepository: IMetaRepository,\n listGateway: ITrashBinListGateway<TItem>,\n deleteGateway: ITrashBinDeleteItemGateway,\n restoreGateway: ITrashBinRestoreItemGateway<TItem>,\n bulkActionsGateway: ITrashBinBulkActionsGateway,\n entryMapper: ITrashBinItemMapper<TItem>\n ) {\n this.metaRepository = metaRepository;\n this.listGateway = listGateway;\n this.deleteGateway = deleteGateway;\n this.restoreGateway = restoreGateway;\n this.bulkActionsGateway = bulkActionsGateway;\n this.itemMapper = entryMapper;\n this.params = {};\n makeAutoObservable(this);\n }\n\n getItems() {\n return this.items;\n }\n\n getRestoredItems() {\n return this.restoredItems;\n }\n\n getMeta() {\n return this.metaRepository.get();\n }\n\n getLoading() {\n return {};\n }\n\n async listItems(params?: TrashBinListQueryVariables) {\n this.params = params || {};\n\n const response = await this.listGateway.execute({ ...params });\n\n if (!response) {\n return;\n }\n\n runInAction(() => {\n const [items, meta] = response;\n this.items = items.map(entry => TrashBinItem.create(this.itemMapper.toDTO(entry)));\n this.metaRepository.set(Meta.create(meta));\n });\n }\n\n async listMoreItems() {\n const { cursor } = this.metaRepository.get();\n\n if (!cursor) {\n return;\n }\n\n const response = await this.listGateway.execute({ ...this.params, after: cursor });\n\n if (!response) {\n return;\n }\n\n runInAction(() => {\n const [items, meta] = response;\n const itemsDTO = items.map(entry => TrashBinItem.create(this.itemMapper.toDTO(entry)));\n this.items = uniqBy([...this.items, ...itemsDTO], \"id\");\n this.metaRepository.set(Meta.create(meta));\n });\n }\n\n async deleteItem(id: string) {\n const response = await this.deleteGateway.execute(id);\n\n if (!response) {\n return;\n }\n\n runInAction(() => {\n this.items = this.items.filter(item => item.id !== id);\n this.metaRepository.decreaseTotalCount(1);\n });\n }\n\n async restoreItem(id: string) {\n const item = await this.restoreGateway.execute(id);\n\n if (!item) {\n return;\n }\n\n runInAction(() => {\n this.items = this.items.filter(item => item.id !== id);\n this.restoredItems = [\n ...this.restoredItems,\n TrashBinItem.create(this.itemMapper.toDTO(item))\n ];\n this.metaRepository.decreaseTotalCount(1);\n });\n }\n\n async bulkAction(action: string, params: TrashBinBulkActionsParams) {\n const { where, search, data } = params;\n await this.bulkActionsGateway.execute({ action, where, search, data });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_TrashBinItemsRepository","require","TrashBinItemsRepositoryFactory","exports","_classCallCheck2","default","_defineProperty2","Map","_createClass2","key","value","getRepository","metaRepository","listGateway","deleteGateway","restoreGateway","bulkActionsGateway","itemMapper","cacheKey","getCacheKey","cache","has","set","TrashBinItemsRepository","get","Date","now","toString","trashBinItemsRepositoryFactory"],"sources":["TrashBinItemsRepositoryFactory.ts"],"sourcesContent":["import { IMetaRepository } from \"@webiny/app-utils\";\nimport { ITrashBinItemMapper } from \"~/Domain\";\nimport {\n ITrashBinBulkActionsGateway,\n ITrashBinDeleteItemGateway,\n ITrashBinListGateway,\n ITrashBinRestoreItemGateway\n} from \"~/Gateways\";\nimport { TrashBinItemsRepository } from \"./TrashBinItemsRepository\";\n\nexport class TrashBinItemsRepositoryFactory<TEntry extends Record<string, any>> {\n private cache: Map<string, TrashBinItemsRepository<TEntry>> = new Map();\n\n getRepository(\n metaRepository: IMetaRepository,\n listGateway: ITrashBinListGateway<TEntry>,\n deleteGateway: ITrashBinDeleteItemGateway,\n restoreGateway: ITrashBinRestoreItemGateway<TEntry>,\n bulkActionsGateway: ITrashBinBulkActionsGateway,\n itemMapper: ITrashBinItemMapper<TEntry>\n ) {\n const cacheKey = this.getCacheKey();\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(\n cacheKey,\n new TrashBinItemsRepository(\n metaRepository,\n listGateway,\n deleteGateway,\n restoreGateway,\n bulkActionsGateway,\n itemMapper\n )\n );\n }\n\n return this.cache.get(cacheKey) as TrashBinItemsRepository<TEntry>;\n }\n\n private getCacheKey() {\n return Date.now().toString();\n }\n}\n\nexport const trashBinItemsRepositoryFactory = new TrashBinItemsRepositoryFactory();\n"],"mappings":";;;;;;;;;;AAQA,IAAAA,wBAAA,GAAAC,OAAA;AAAoE,IAEvDC,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA;EAAA,SAAAA,+BAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,8BAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBACuB,IAAIE,GAAG,CAAC,CAAC;EAAA;EAAA,WAAAC,aAAA,CAAAH,OAAA,EAAAH,8BAAA;IAAAO,GAAA;IAAAC,KAAA,EAEvE,SAAAC,
|
|
1
|
+
{"version":3,"names":["_TrashBinItemsRepository","require","TrashBinItemsRepositoryFactory","exports","_classCallCheck2","default","_defineProperty2","Map","_createClass2","key","value","getRepository","metaRepository","listGateway","deleteGateway","restoreGateway","bulkActionsGateway","itemMapper","cacheKey","getCacheKey","cache","has","set","TrashBinItemsRepository","get","Date","now","toString","trashBinItemsRepositoryFactory"],"sources":["TrashBinItemsRepositoryFactory.ts"],"sourcesContent":["import { IMetaRepository } from \"@webiny/app-utils\";\nimport { ITrashBinItemMapper } from \"~/Domain\";\nimport {\n ITrashBinBulkActionsGateway,\n ITrashBinDeleteItemGateway,\n ITrashBinListGateway,\n ITrashBinRestoreItemGateway\n} from \"~/Gateways\";\nimport { TrashBinItemsRepository } from \"./TrashBinItemsRepository\";\n\nexport class TrashBinItemsRepositoryFactory<TEntry extends Record<string, any>> {\n private cache: Map<string, TrashBinItemsRepository<TEntry>> = new Map();\n\n getRepository(\n metaRepository: IMetaRepository,\n listGateway: ITrashBinListGateway<TEntry>,\n deleteGateway: ITrashBinDeleteItemGateway,\n restoreGateway: ITrashBinRestoreItemGateway<TEntry>,\n bulkActionsGateway: ITrashBinBulkActionsGateway,\n itemMapper: ITrashBinItemMapper<TEntry>\n ) {\n const cacheKey = this.getCacheKey();\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(\n cacheKey,\n new TrashBinItemsRepository(\n metaRepository,\n listGateway,\n deleteGateway,\n restoreGateway,\n bulkActionsGateway,\n itemMapper\n )\n );\n }\n\n return this.cache.get(cacheKey) as TrashBinItemsRepository<TEntry>;\n }\n\n private getCacheKey() {\n return Date.now().toString();\n }\n}\n\nexport const trashBinItemsRepositoryFactory = new TrashBinItemsRepositoryFactory();\n"],"mappings":";;;;;;;;;;AAQA,IAAAA,wBAAA,GAAAC,OAAA;AAAoE,IAEvDC,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA;EAAA,SAAAA,+BAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,8BAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,iBACuB,IAAIE,GAAG,CAAC,CAAC;EAAA;EAAA,WAAAC,aAAA,CAAAH,OAAA,EAAAH,8BAAA;IAAAO,GAAA;IAAAC,KAAA,EAEvE,SAAAC,aAAaA,CACTC,cAA+B,EAC/BC,WAAyC,EACzCC,aAAyC,EACzCC,cAAmD,EACnDC,kBAA+C,EAC/CC,UAAuC,EACzC;MACE,IAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAAC,CAAC;MAEnC,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,GAAG,CAACH,QAAQ,CAAC,EAAE;QAC3B,IAAI,CAACE,KAAK,CAACE,GAAG,CACVJ,QAAQ,EACR,IAAIK,gDAAuB,CACvBX,cAAc,EACdC,WAAW,EACXC,aAAa,EACbC,cAAc,EACdC,kBAAkB,EAClBC,UACJ,CACJ,CAAC;MACL;MAEA,OAAO,IAAI,CAACG,KAAK,CAACI,GAAG,CAACN,QAAQ,CAAC;IACnC;EAAC;IAAAT,GAAA;IAAAC,KAAA,EAED,SAAQS,WAAWA,CAAA,EAAG;MAClB,OAAOM,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;IAChC;EAAC;AAAA;AAGE,IAAMC,8BAA8B,GAAAzB,OAAA,CAAAyB,8BAAA,GAAG,IAAI1B,8BAA8B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_types","TrashBinItemsRepositoryWithLoading","exports","loadingRepository","trashBinItemsRepository","_classCallCheck2","default","makeAutoObservable","_createClass2","key","value","getItems","getRestoredItems","getMeta","getLoading","get","listItems","params","runCallBack","LoadingActions","list","listMoreItems","listMore","deleteItem","id","delete","restoreItem","restore","bulkAction","action"],"sources":["TrashBinItemsRepositoryWithLoading.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { ILoadingRepository } from \"@webiny/app-utils\";\nimport { ITrashBinItemsRepository } from \"./ITrashBinItemsRepository\";\nimport { LoadingActions, TrashBinBulkActionsParams, TrashBinListQueryVariables } from \"~/types\";\n\nexport class TrashBinItemsRepositoryWithLoading implements ITrashBinItemsRepository {\n private loadingRepository: ILoadingRepository;\n private trashBinItemsRepository: ITrashBinItemsRepository;\n\n constructor(\n loadingRepository: ILoadingRepository,\n trashBinItemsRepository: ITrashBinItemsRepository\n ) {\n this.loadingRepository = loadingRepository;\n this.trashBinItemsRepository = trashBinItemsRepository;\n makeAutoObservable(this);\n }\n\n getItems() {\n return this.trashBinItemsRepository.getItems();\n }\n\n getRestoredItems() {\n return this.trashBinItemsRepository.getRestoredItems();\n }\n\n getMeta() {\n return this.trashBinItemsRepository.getMeta();\n }\n\n getLoading() {\n return this.loadingRepository.get();\n }\n\n async listItems(params?: TrashBinListQueryVariables) {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.listItems(params),\n LoadingActions.list\n );\n }\n\n async listMoreItems() {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.listMoreItems(),\n LoadingActions.listMore\n );\n }\n\n async deleteItem(id: string) {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.deleteItem(id),\n LoadingActions.delete\n );\n }\n\n async restoreItem(id: string) {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.restoreItem(id),\n LoadingActions.restore\n );\n }\n\n async bulkAction(action: string, params: TrashBinBulkActionsParams) {\n await this.trashBinItemsRepository.bulkAction(action, params);\n }\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAAgG,IAEnFE,kCAAkC,GAAAC,OAAA,CAAAD,kCAAA;EAI3C,SAAAA,mCACIE,iBAAqC,EACrCC,uBAAiD,EACnD;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,kCAAA;IACE,IAAI,CAACE,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,uBAAuB,GAAGA,uBAAuB;IACtD,IAAAG,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAF,OAAA,EAAAL,kCAAA;IAAAQ,GAAA;IAAAC,KAAA,EAED,SAAAC,
|
|
1
|
+
{"version":3,"names":["_mobx","require","_types","TrashBinItemsRepositoryWithLoading","exports","loadingRepository","trashBinItemsRepository","_classCallCheck2","default","makeAutoObservable","_createClass2","key","value","getItems","getRestoredItems","getMeta","getLoading","get","listItems","params","runCallBack","LoadingActions","list","listMoreItems","listMore","deleteItem","id","delete","restoreItem","restore","bulkAction","action"],"sources":["TrashBinItemsRepositoryWithLoading.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { ILoadingRepository } from \"@webiny/app-utils\";\nimport { ITrashBinItemsRepository } from \"./ITrashBinItemsRepository\";\nimport { LoadingActions, TrashBinBulkActionsParams, TrashBinListQueryVariables } from \"~/types\";\n\nexport class TrashBinItemsRepositoryWithLoading implements ITrashBinItemsRepository {\n private loadingRepository: ILoadingRepository;\n private trashBinItemsRepository: ITrashBinItemsRepository;\n\n constructor(\n loadingRepository: ILoadingRepository,\n trashBinItemsRepository: ITrashBinItemsRepository\n ) {\n this.loadingRepository = loadingRepository;\n this.trashBinItemsRepository = trashBinItemsRepository;\n makeAutoObservable(this);\n }\n\n getItems() {\n return this.trashBinItemsRepository.getItems();\n }\n\n getRestoredItems() {\n return this.trashBinItemsRepository.getRestoredItems();\n }\n\n getMeta() {\n return this.trashBinItemsRepository.getMeta();\n }\n\n getLoading() {\n return this.loadingRepository.get();\n }\n\n async listItems(params?: TrashBinListQueryVariables) {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.listItems(params),\n LoadingActions.list\n );\n }\n\n async listMoreItems() {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.listMoreItems(),\n LoadingActions.listMore\n );\n }\n\n async deleteItem(id: string) {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.deleteItem(id),\n LoadingActions.delete\n );\n }\n\n async restoreItem(id: string) {\n await this.loadingRepository.runCallBack(\n this.trashBinItemsRepository.restoreItem(id),\n LoadingActions.restore\n );\n }\n\n async bulkAction(action: string, params: TrashBinBulkActionsParams) {\n await this.trashBinItemsRepository.bulkAction(action, params);\n }\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAAgG,IAEnFE,kCAAkC,GAAAC,OAAA,CAAAD,kCAAA;EAI3C,SAAAA,mCACIE,iBAAqC,EACrCC,uBAAiD,EACnD;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,kCAAA;IACE,IAAI,CAACE,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,uBAAuB,GAAGA,uBAAuB;IACtD,IAAAG,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAF,OAAA,EAAAL,kCAAA;IAAAQ,GAAA;IAAAC,KAAA,EAED,SAAAC,QAAQA,CAAA,EAAG;MACP,OAAO,IAAI,CAACP,uBAAuB,CAACO,QAAQ,CAAC,CAAC;IAClD;EAAC;IAAAF,GAAA;IAAAC,KAAA,EAED,SAAAE,gBAAgBA,CAAA,EAAG;MACf,OAAO,IAAI,CAACR,uBAAuB,CAACQ,gBAAgB,CAAC,CAAC;IAC1D;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAG,OAAOA,CAAA,EAAG;MACN,OAAO,IAAI,CAACT,uBAAuB,CAACS,OAAO,CAAC,CAAC;IACjD;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAI,UAAUA,CAAA,EAAG;MACT,OAAO,IAAI,CAACX,iBAAiB,CAACY,GAAG,CAAC,CAAC;IACvC;EAAC;IAAAN,GAAA;IAAAC,KAAA,EAED,eAAMM,SAASA,CAACC,MAAmC,EAAE;MACjD,MAAM,IAAI,CAACd,iBAAiB,CAACe,WAAW,CACpC,IAAI,CAACd,uBAAuB,CAACY,SAAS,CAACC,MAAM,CAAC,EAC9CE,qBAAc,CAACC,IACnB,CAAC;IACL;EAAC;IAAAX,GAAA;IAAAC,KAAA,EAED,eAAMW,aAAaA,CAAA,EAAG;MAClB,MAAM,IAAI,CAAClB,iBAAiB,CAACe,WAAW,CACpC,IAAI,CAACd,uBAAuB,CAACiB,aAAa,CAAC,CAAC,EAC5CF,qBAAc,CAACG,QACnB,CAAC;IACL;EAAC;IAAAb,GAAA;IAAAC,KAAA,EAED,eAAMa,UAAUA,CAACC,EAAU,EAAE;MACzB,MAAM,IAAI,CAACrB,iBAAiB,CAACe,WAAW,CACpC,IAAI,CAACd,uBAAuB,CAACmB,UAAU,CAACC,EAAE,CAAC,EAC3CL,qBAAc,CAACM,MACnB,CAAC;IACL;EAAC;IAAAhB,GAAA;IAAAC,KAAA,EAED,eAAMgB,WAAWA,CAACF,EAAU,EAAE;MAC1B,MAAM,IAAI,CAACrB,iBAAiB,CAACe,WAAW,CACpC,IAAI,CAACd,uBAAuB,CAACsB,WAAW,CAACF,EAAE,CAAC,EAC5CL,qBAAc,CAACQ,OACnB,CAAC;IACL;EAAC;IAAAlB,GAAA;IAAAC,KAAA,EAED,eAAMkB,UAAUA,CAACC,MAAc,EAAEZ,MAAiC,EAAE;MAChE,MAAM,IAAI,CAACb,uBAAuB,CAACwB,UAAU,CAACC,MAAM,EAAEZ,MAAM,CAAC;IACjE;EAAC;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_TrashBinPresenter","require","_appUtils","_types","_TrashBinControllers","_Search","_SelectedItems","_Sorting","_TrashBinItems","identity1","id","displayName","type","identity2","createBinListGateway","_ref","execute","createBinDeleteItemGateway","_ref2","createBinRestoreItemGateway","_ref3","createBinBulkActionsGateway","_ref4","CustomItemMapper","_classCallCheck2","default","_createClass2","key","value","toDTO","data","title","location","createdBy","deletedOn","deletedBy","defaultSorting","field","order","describe","item1","folderId","Date","toString","custom","item2","item3","item4","listGateway","jest","fn","mockImplementation","Promise","resolve","totalCount","cursor","hasMoreItems","deleteItemGateway","restoreItemGateway","bulkActionGateway","itemMapper","BulkActionDeleteItems","BulkActionRestoreItems","init","retentionPeriod","arguments","length","undefined","selectedRepo","SelectedItemsRepository","loadingRepo","LoadingRepository","sortRepo","SortingRepository","sortRepoWithDefaults","SortingRepositoryWithDefaults","metaRepo","MetaRepository","searchRepo","SearchRepository","trashBinItemsRepo","TrashBinItemsRepository","itemsRepo","TrashBinItemsRepositoryWithLoading","presenter","TrashBinPresenter","controllers","TrashBinControllers","getControllers","beforeEach","clearAllMocks","it","_init","listPromise","listItems","expect","vm","toMatchObject","items","loading","_defineProperty2","LoadingActions","list","toHaveBeenCalledTimes","toHaveBeenCalledWith","sort","$selectable","any","String","mockImplementationOnce","_init2","listMorePromise","listMoreItems","listMore","after","search","sortListGateway","_init3","toHaveBeenNthCalledWith","sortItems","desc","sorting","searchItemsGateway","_init4","searchItems","searchQuery","isEmptyView","_init5","selectedItems","selectItems","_init6","deletePromise","deleteItem","delete","_init7","restorePromise","restoreItem","restore","restoredItems","restoredItem","getRestoredItemById","each","input","output","_init8","_init9","restoreBulkActionPromise","restoreBulkAction","where","action","_init10","deleteBulkActionPromise","deleteBulkAction","_init11","toBe","allowSelectAll","toBeFalsy","isSelectedAll","toBeTruthy","selectAllItems","unselectAllItems","_init12"],"sources":["TrashBin.test.ts"],"sourcesContent":["import { TrashBinPresenter } from \"./TrashBinPresenter\";\nimport { LoadingRepository, MetaRepository, Sorting, SortingRepository } from \"@webiny/app-utils\";\nimport { LoadingActions, TrashBinIdentity, TrashBinLocation } from \"~/types\";\nimport { TrashBinControllers } from \"~/Presentation/TrashBin/TrashBinControllers\";\nimport {\n ITrashBinBulkActionsGateway,\n ITrashBinDeleteItemGateway,\n ITrashBinListGateway,\n ITrashBinRestoreItemGateway\n} from \"~/Gateways\";\nimport { ITrashBinItemMapper } from \"~/Domain/Models/TrashBinItem\";\nimport { SearchRepository } from \"~/Domain/Repositories/Search\";\nimport { SelectedItemsRepository } from \"~/Domain/Repositories/SelectedItems\";\nimport { SortingRepositoryWithDefaults } from \"~/Domain/Repositories/Sorting\";\nimport {\n TrashBinItemsRepository,\n TrashBinItemsRepositoryWithLoading\n} from \"~/Domain/Repositories/TrashBinItems\";\n\ninterface Item {\n id: string;\n title: string;\n location: TrashBinLocation;\n createdBy: TrashBinIdentity;\n deletedOn: string;\n deletedBy: TrashBinIdentity;\n custom: string;\n}\n\nconst identity1: TrashBinIdentity = {\n id: \"1234\",\n displayName: \"John Doe\",\n type: \"admin\"\n};\n\nconst identity2: TrashBinIdentity = {\n id: \"5678\",\n displayName: \"Jane Doe\",\n type: \"admin\"\n};\n\nconst createBinListGateway = ({\n execute\n}: ITrashBinListGateway<Item>): ITrashBinListGateway<Item> => ({\n execute\n});\n\nconst createBinDeleteItemGateway = ({\n execute\n}: ITrashBinDeleteItemGateway): ITrashBinDeleteItemGateway => ({\n execute\n});\n\nconst createBinRestoreItemGateway = ({\n execute\n}: ITrashBinRestoreItemGateway<Item>): ITrashBinRestoreItemGateway<Item> => ({\n execute\n});\n\nconst createBinBulkActionsGateway = ({\n execute\n}: ITrashBinBulkActionsGateway): ITrashBinBulkActionsGateway => ({\n execute\n});\n\nclass CustomItemMapper implements ITrashBinItemMapper<Item> {\n toDTO(data: Item) {\n return {\n id: data.id,\n title: data.title,\n location: data.location,\n createdBy: data.createdBy,\n deletedOn: data.deletedOn,\n deletedBy: data.deletedBy\n };\n }\n}\n\nconst defaultSorting: Sorting[] = [{ field: \"deletedOn\", order: \"desc\" }];\n\ndescribe(\"TrashBin\", () => {\n const item1: Item = {\n id: \"item-1\",\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const item2: Item = {\n id: \"item-2\",\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const item3: Item = {\n id: \"item-3\",\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const item4: Item = {\n id: \"item-4\",\n title: \"Item 4\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const listGateway = createBinListGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const deleteItemGateway = createBinDeleteItemGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve(true);\n })\n });\n\n const restoreItemGateway = createBinRestoreItemGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve(item1);\n })\n });\n\n const bulkActionGateway = createBinBulkActionsGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve({ id: \"123456789\" });\n })\n });\n\n const itemMapper = new CustomItemMapper();\n\n const BulkActionDeleteItems = \"BulkDeleteItems\";\n const BulkActionRestoreItems = \"BulkRestoreItems\";\n\n const init = (\n listGateway: ITrashBinListGateway<Item>,\n deleteItemGateway: ITrashBinDeleteItemGateway,\n restoreItemGateway: ITrashBinRestoreItemGateway<Item>,\n retentionPeriod = 90\n ) => {\n const selectedRepo = new SelectedItemsRepository();\n const loadingRepo = new LoadingRepository();\n const sortRepo = new SortingRepository();\n const sortRepoWithDefaults = new SortingRepositoryWithDefaults(defaultSorting, sortRepo);\n const metaRepo = new MetaRepository();\n const searchRepo = new SearchRepository();\n const trashBinItemsRepo = new TrashBinItemsRepository(\n metaRepo,\n listGateway,\n deleteItemGateway,\n restoreItemGateway,\n bulkActionGateway,\n itemMapper\n );\n\n const itemsRepo = new TrashBinItemsRepositoryWithLoading(loadingRepo, trashBinItemsRepo);\n\n return {\n presenter: new TrashBinPresenter(\n itemsRepo,\n selectedRepo,\n sortRepoWithDefaults,\n searchRepo,\n retentionPeriod\n ),\n controllers: new TrashBinControllers(\n itemsRepo,\n selectedRepo,\n sortRepoWithDefaults,\n searchRepo,\n BulkActionDeleteItems,\n BulkActionRestoreItems\n ).getControllers()\n };\n };\n\n beforeEach(() => {\n jest.clearAllMocks();\n });\n\n it(\"should create a presenter and list trash bin entries from the gateway\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n const listPromise = controllers.listItems.execute();\n\n // Let's check the transition to loading state\n expect(presenter.vm).toMatchObject({\n items: [],\n loading: {\n [LoadingActions.list]: true\n }\n });\n\n await listPromise;\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n expect(listGateway.execute).toHaveBeenCalledWith({\n sort: [\"deletedOn_DESC\"]\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.list]: false\n }\n });\n });\n\n it(\"should list more items from the gateway\", async () => {\n const listGateway = createBinListGateway({\n execute: jest\n .fn()\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 4, cursor: \"IjMi\", hasMoreItems: true }\n ]);\n })\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item4],\n { totalCount: 4, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // Let's list some initial entries\n await controllers.listItems.execute();\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n // Let's list more items from the gateway\n const listMorePromise = controllers.listMoreItems.execute();\n\n expect(presenter.vm).toMatchObject({\n loading: {\n [LoadingActions.listMore]: true\n }\n });\n\n await listMorePromise;\n\n expect(listGateway.execute).toHaveBeenCalledTimes(2);\n expect(listGateway.execute).toHaveBeenCalledWith({\n after: \"IjMi\",\n search: undefined,\n sort: [\"deletedOn_DESC\"]\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-4\",\n $selectable: true,\n title: \"Item 4\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.listMore]: false\n }\n });\n });\n\n it(\"should be able to sort items\", async () => {\n const sortListGateway = createBinListGateway({\n execute: jest\n .fn()\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n .mockImplementation(() => {\n return Promise.resolve([\n [item3, item2, item1],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n sortListGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(sortListGateway.execute).toHaveBeenNthCalledWith(1, {\n sort: [\"deletedOn_DESC\"]\n });\n\n // Let's sort items, it should call back the list gateway to retrieve the items sorted\n await controllers.sortItems.execute(() => [{ id: \"deletedOn\", desc: false }]);\n\n expect(sortListGateway.execute).toHaveBeenNthCalledWith(2, {\n sort: [\"deletedOn_ASC\"]\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.list]: false\n },\n sorting: [{ id: \"deletedOn\", desc: false }]\n });\n });\n\n it(\"should be able to search items\", async () => {\n const searchItemsGateway = createBinListGateway({\n execute: jest\n .fn()\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1],\n { totalCount: 1, cursor: null, hasMoreItems: false }\n ]);\n })\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [],\n { totalCount: 0, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n searchItemsGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(searchItemsGateway.execute).toHaveBeenNthCalledWith(1, {\n sort: [\"deletedOn_DESC\"]\n });\n\n // Let's search for items, it should return items from the gateway\n await controllers.searchItems.execute(\"Item 1\");\n\n expect(searchItemsGateway.execute).toHaveBeenNthCalledWith(2, {\n sort: [\"deletedOn_DESC\"],\n search: \"Item 1\"\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.list]: false\n },\n searchQuery: \"Item 1\"\n });\n\n // Let's search for items, it should return no items from the gateway\n await controllers.searchItems.execute(\"Not found query\");\n\n expect(searchItemsGateway.execute).toHaveBeenNthCalledWith(3, {\n sort: [\"deletedOn_DESC\"],\n search: \"Not found query\"\n });\n\n expect(presenter.vm).toMatchObject({\n items: [],\n loading: {\n [LoadingActions.list]: false\n },\n searchQuery: \"Not found query\",\n isEmptyView: true\n });\n });\n\n it(\"should be able to select items\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n // No selected items found by default\n expect(presenter.vm).toMatchObject({\n selectedItems: []\n });\n\n // Let's select the first Item\n await controllers.selectItems.execute([\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: new Date().toString()\n }\n ]);\n\n expect(presenter.vm).toMatchObject({\n selectedItems: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n // Let's select the second item\n await controllers.selectItems.execute([\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: new Date().toString()\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: new Date().toString()\n }\n ]);\n\n expect(presenter.vm).toMatchObject({\n selectedItems: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n }\n ]\n });\n });\n\n it(\"should delete an item, removing it from the list\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n const deletePromise = controllers.deleteItem.execute(item1.id);\n\n // Let's check the transition to loading state\n expect(presenter.vm).toMatchObject({\n loading: {\n [LoadingActions.delete]: true\n }\n });\n\n await deletePromise;\n\n expect(deleteItemGateway.execute).toHaveBeenCalledTimes(1);\n expect(deleteItemGateway.execute).toHaveBeenCalledWith(item1.id);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n });\n\n it(\"should restore an item, removing it from the list\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n const restorePromise = controllers.restoreItem.execute(item1.id);\n\n // Let's check the transition to loading state\n expect(presenter.vm).toMatchObject({\n loading: {\n [LoadingActions.restore]: true\n }\n });\n\n await restorePromise;\n\n expect(restoreItemGateway.execute).toHaveBeenCalledTimes(1);\n expect(restoreItemGateway.execute).toHaveBeenCalledWith(item1.id);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n restoredItems: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n // We should be able to get the restored item by id\n const restoredItem = await controllers.getRestoredItemById.execute(\"item-1\");\n expect(restoredItem).toMatchObject({\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n });\n });\n\n it.each([\n [0, \"0 days\"],\n [1, \"1 day\"],\n [2, \"2 days\"]\n ])(\"should set the retention period to `%s` when input is `%i`\", (input, output) => {\n const { presenter } = init(listGateway, deleteItemGateway, restoreItemGateway, input);\n\n expect(presenter.vm).toMatchObject({\n retentionPeriod: output\n });\n });\n\n it(\"should be able to perform bulk action - RESTORE\", async () => {\n const { controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n const restoreBulkActionPromise = controllers.restoreBulkAction.execute({\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n\n await restoreBulkActionPromise;\n\n expect(bulkActionGateway.execute).toHaveBeenCalledTimes(1);\n expect(bulkActionGateway.execute).toHaveBeenCalledWith({\n action: BulkActionRestoreItems,\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n });\n\n it(\"should be able to perform bulk action - DELETE\", async () => {\n const { controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n const deleteBulkActionPromise = controllers.deleteBulkAction.execute({\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n\n await deleteBulkActionPromise;\n\n expect(bulkActionGateway.execute).toHaveBeenCalledTimes(1);\n expect(bulkActionGateway.execute).toHaveBeenCalledWith({\n action: BulkActionDeleteItems,\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n });\n\n it(\"should be able to `selectAll` and `unselectAll` items\", async () => {\n {\n // let's test the functionality by listing items that span multiple pages.\n const listGateway = createBinListGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 4, cursor: \"IjMi\", hasMoreItems: true }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n listGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n // let's check the initial vm state\n expect(presenter.vm.items.length).toBe(3);\n expect(presenter.vm.selectedItems.length).toBe(0);\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n\n // let's check the vm state after selecting all items on the page\n await controllers.selectItems.execute([item1, item2, item3]);\n expect(presenter.vm.selectedItems.length).toBe(3);\n expect(presenter.vm.allowSelectAll).toBeTruthy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n\n // let's check the vm state after selecting all items\n await controllers.selectAllItems.execute();\n expect(presenter.vm.selectedItems.length).toBe(3);\n expect(presenter.vm.allowSelectAll).toBeTruthy();\n expect(presenter.vm.isSelectedAll).toBeTruthy();\n\n // let's check the vm state after unselecting all items\n await controllers.unselectAllItems.execute();\n expect(presenter.vm.selectedItems.length).toBe(0);\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n\n // let's check the vm state after unselecting one item\n await controllers.selectItems.execute([item1, item2, item3]);\n expect(presenter.vm.selectedItems.length).toBe(3);\n await controllers.selectAllItems.execute();\n expect(presenter.vm.isSelectedAll).toBeTruthy();\n await controllers.selectItems.execute([item1, item2]);\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n }\n\n {\n // let's test the functionality by listing items that span only one page.\n const listGateway = createBinListGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n listGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n // let's check the initial vm state\n expect(presenter.vm.items.length).toBe(3);\n\n // let's check the vm state after selecting all items in the page\n await controllers.selectItems.execute([item1, item2, item3]);\n expect(presenter.vm.selectedItems.length).toBe(3);\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n }\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_TrashBinPresenter","require","_appUtils","_types","_TrashBinControllers","_Search","_SelectedItems","_Sorting","_TrashBinItems","identity1","id","displayName","type","identity2","createBinListGateway","_ref","execute","createBinDeleteItemGateway","_ref2","createBinRestoreItemGateway","_ref3","createBinBulkActionsGateway","_ref4","CustomItemMapper","_classCallCheck2","default","_createClass2","key","value","toDTO","data","title","location","createdBy","deletedOn","deletedBy","defaultSorting","field","order","describe","item1","folderId","Date","toString","custom","item2","item3","item4","listGateway","jest","fn","mockImplementation","Promise","resolve","totalCount","cursor","hasMoreItems","deleteItemGateway","restoreItemGateway","bulkActionGateway","itemMapper","BulkActionDeleteItems","BulkActionRestoreItems","init","retentionPeriod","arguments","length","undefined","selectedRepo","SelectedItemsRepository","loadingRepo","LoadingRepository","sortRepo","SortingRepository","sortRepoWithDefaults","SortingRepositoryWithDefaults","metaRepo","MetaRepository","searchRepo","SearchRepository","trashBinItemsRepo","TrashBinItemsRepository","itemsRepo","TrashBinItemsRepositoryWithLoading","presenter","TrashBinPresenter","controllers","TrashBinControllers","getControllers","beforeEach","clearAllMocks","it","_init","listPromise","listItems","expect","vm","toMatchObject","items","loading","_defineProperty2","LoadingActions","list","toHaveBeenCalledTimes","toHaveBeenCalledWith","sort","$selectable","any","String","mockImplementationOnce","_init2","listMorePromise","listMoreItems","listMore","after","search","sortListGateway","_init3","toHaveBeenNthCalledWith","sortItems","desc","sorting","searchItemsGateway","_init4","searchItems","searchQuery","isEmptyView","_init5","selectedItems","selectItems","_init6","deletePromise","deleteItem","delete","_init7","restorePromise","restoreItem","restore","restoredItems","restoredItem","getRestoredItemById","each","input","output","_init8","_init9","restoreBulkActionPromise","restoreBulkAction","where","action","_init10","deleteBulkActionPromise","deleteBulkAction","_init11","toBe","allowSelectAll","toBeFalsy","isSelectedAll","toBeTruthy","selectAllItems","unselectAllItems","_init12"],"sources":["TrashBin.test.ts"],"sourcesContent":["import { TrashBinPresenter } from \"./TrashBinPresenter\";\nimport { LoadingRepository, MetaRepository, Sorting, SortingRepository } from \"@webiny/app-utils\";\nimport { LoadingActions, TrashBinIdentity, TrashBinLocation } from \"~/types\";\nimport { TrashBinControllers } from \"~/Presentation/TrashBin/TrashBinControllers\";\nimport {\n ITrashBinBulkActionsGateway,\n ITrashBinDeleteItemGateway,\n ITrashBinListGateway,\n ITrashBinRestoreItemGateway\n} from \"~/Gateways\";\nimport { ITrashBinItemMapper } from \"~/Domain/Models/TrashBinItem\";\nimport { SearchRepository } from \"~/Domain/Repositories/Search\";\nimport { SelectedItemsRepository } from \"~/Domain/Repositories/SelectedItems\";\nimport { SortingRepositoryWithDefaults } from \"~/Domain/Repositories/Sorting\";\nimport {\n TrashBinItemsRepository,\n TrashBinItemsRepositoryWithLoading\n} from \"~/Domain/Repositories/TrashBinItems\";\n\ninterface Item {\n id: string;\n title: string;\n location: TrashBinLocation;\n createdBy: TrashBinIdentity;\n deletedOn: string;\n deletedBy: TrashBinIdentity;\n custom: string;\n}\n\nconst identity1: TrashBinIdentity = {\n id: \"1234\",\n displayName: \"John Doe\",\n type: \"admin\"\n};\n\nconst identity2: TrashBinIdentity = {\n id: \"5678\",\n displayName: \"Jane Doe\",\n type: \"admin\"\n};\n\nconst createBinListGateway = ({\n execute\n}: ITrashBinListGateway<Item>): ITrashBinListGateway<Item> => ({\n execute\n});\n\nconst createBinDeleteItemGateway = ({\n execute\n}: ITrashBinDeleteItemGateway): ITrashBinDeleteItemGateway => ({\n execute\n});\n\nconst createBinRestoreItemGateway = ({\n execute\n}: ITrashBinRestoreItemGateway<Item>): ITrashBinRestoreItemGateway<Item> => ({\n execute\n});\n\nconst createBinBulkActionsGateway = ({\n execute\n}: ITrashBinBulkActionsGateway): ITrashBinBulkActionsGateway => ({\n execute\n});\n\nclass CustomItemMapper implements ITrashBinItemMapper<Item> {\n toDTO(data: Item) {\n return {\n id: data.id,\n title: data.title,\n location: data.location,\n createdBy: data.createdBy,\n deletedOn: data.deletedOn,\n deletedBy: data.deletedBy\n };\n }\n}\n\nconst defaultSorting: Sorting[] = [{ field: \"deletedOn\", order: \"desc\" }];\n\ndescribe(\"TrashBin\", () => {\n const item1: Item = {\n id: \"item-1\",\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const item2: Item = {\n id: \"item-2\",\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const item3: Item = {\n id: \"item-3\",\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const item4: Item = {\n id: \"item-4\",\n title: \"Item 4\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: new Date().toString(),\n custom: \"any custom data\"\n };\n\n const listGateway = createBinListGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const deleteItemGateway = createBinDeleteItemGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve(true);\n })\n });\n\n const restoreItemGateway = createBinRestoreItemGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve(item1);\n })\n });\n\n const bulkActionGateway = createBinBulkActionsGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve({ id: \"123456789\" });\n })\n });\n\n const itemMapper = new CustomItemMapper();\n\n const BulkActionDeleteItems = \"BulkDeleteItems\";\n const BulkActionRestoreItems = \"BulkRestoreItems\";\n\n const init = (\n listGateway: ITrashBinListGateway<Item>,\n deleteItemGateway: ITrashBinDeleteItemGateway,\n restoreItemGateway: ITrashBinRestoreItemGateway<Item>,\n retentionPeriod = 90\n ) => {\n const selectedRepo = new SelectedItemsRepository();\n const loadingRepo = new LoadingRepository();\n const sortRepo = new SortingRepository();\n const sortRepoWithDefaults = new SortingRepositoryWithDefaults(defaultSorting, sortRepo);\n const metaRepo = new MetaRepository();\n const searchRepo = new SearchRepository();\n const trashBinItemsRepo = new TrashBinItemsRepository(\n metaRepo,\n listGateway,\n deleteItemGateway,\n restoreItemGateway,\n bulkActionGateway,\n itemMapper\n );\n\n const itemsRepo = new TrashBinItemsRepositoryWithLoading(loadingRepo, trashBinItemsRepo);\n\n return {\n presenter: new TrashBinPresenter(\n itemsRepo,\n selectedRepo,\n sortRepoWithDefaults,\n searchRepo,\n retentionPeriod\n ),\n controllers: new TrashBinControllers(\n itemsRepo,\n selectedRepo,\n sortRepoWithDefaults,\n searchRepo,\n BulkActionDeleteItems,\n BulkActionRestoreItems\n ).getControllers()\n };\n };\n\n beforeEach(() => {\n jest.clearAllMocks();\n });\n\n it(\"should create a presenter and list trash bin entries from the gateway\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n const listPromise = controllers.listItems.execute();\n\n // Let's check the transition to loading state\n expect(presenter.vm).toMatchObject({\n items: [],\n loading: {\n [LoadingActions.list]: true\n }\n });\n\n await listPromise;\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n expect(listGateway.execute).toHaveBeenCalledWith({\n sort: [\"deletedOn_DESC\"]\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.list]: false\n }\n });\n });\n\n it(\"should list more items from the gateway\", async () => {\n const listGateway = createBinListGateway({\n execute: jest\n .fn()\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 4, cursor: \"IjMi\", hasMoreItems: true }\n ]);\n })\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item4],\n { totalCount: 4, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // Let's list some initial entries\n await controllers.listItems.execute();\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n // Let's list more items from the gateway\n const listMorePromise = controllers.listMoreItems.execute();\n\n expect(presenter.vm).toMatchObject({\n loading: {\n [LoadingActions.listMore]: true\n }\n });\n\n await listMorePromise;\n\n expect(listGateway.execute).toHaveBeenCalledTimes(2);\n expect(listGateway.execute).toHaveBeenCalledWith({\n after: \"IjMi\",\n search: undefined,\n sort: [\"deletedOn_DESC\"]\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-4\",\n $selectable: true,\n title: \"Item 4\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.listMore]: false\n }\n });\n });\n\n it(\"should be able to sort items\", async () => {\n const sortListGateway = createBinListGateway({\n execute: jest\n .fn()\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n .mockImplementation(() => {\n return Promise.resolve([\n [item3, item2, item1],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n sortListGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(sortListGateway.execute).toHaveBeenNthCalledWith(1, {\n sort: [\"deletedOn_DESC\"]\n });\n\n // Let's sort items, it should call back the list gateway to retrieve the items sorted\n await controllers.sortItems.execute(() => [{ id: \"deletedOn\", desc: false }]);\n\n expect(sortListGateway.execute).toHaveBeenNthCalledWith(2, {\n sort: [\"deletedOn_ASC\"]\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.list]: false\n },\n sorting: [{ id: \"deletedOn\", desc: false }]\n });\n });\n\n it(\"should be able to search items\", async () => {\n const searchItemsGateway = createBinListGateway({\n execute: jest\n .fn()\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [item1],\n { totalCount: 1, cursor: null, hasMoreItems: false }\n ]);\n })\n .mockImplementationOnce(() => {\n return Promise.resolve([\n [],\n { totalCount: 0, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n searchItemsGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(searchItemsGateway.execute).toHaveBeenNthCalledWith(1, {\n sort: [\"deletedOn_DESC\"]\n });\n\n // Let's search for items, it should return items from the gateway\n await controllers.searchItems.execute(\"Item 1\");\n\n expect(searchItemsGateway.execute).toHaveBeenNthCalledWith(2, {\n sort: [\"deletedOn_DESC\"],\n search: \"Item 1\"\n });\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n loading: {\n [LoadingActions.list]: false\n },\n searchQuery: \"Item 1\"\n });\n\n // Let's search for items, it should return no items from the gateway\n await controllers.searchItems.execute(\"Not found query\");\n\n expect(searchItemsGateway.execute).toHaveBeenNthCalledWith(3, {\n sort: [\"deletedOn_DESC\"],\n search: \"Not found query\"\n });\n\n expect(presenter.vm).toMatchObject({\n items: [],\n loading: {\n [LoadingActions.list]: false\n },\n searchQuery: \"Not found query\",\n isEmptyView: true\n });\n });\n\n it(\"should be able to select items\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n // No selected items found by default\n expect(presenter.vm).toMatchObject({\n selectedItems: []\n });\n\n // Let's select the first Item\n await controllers.selectItems.execute([\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: new Date().toString()\n }\n ]);\n\n expect(presenter.vm).toMatchObject({\n selectedItems: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n // Let's select the second item\n await controllers.selectItems.execute([\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: new Date().toString()\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: new Date().toString()\n }\n ]);\n\n expect(presenter.vm).toMatchObject({\n selectedItems: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n }\n ]\n });\n });\n\n it(\"should delete an item, removing it from the list\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n const deletePromise = controllers.deleteItem.execute(item1.id);\n\n // Let's check the transition to loading state\n expect(presenter.vm).toMatchObject({\n loading: {\n [LoadingActions.delete]: true\n }\n });\n\n await deletePromise;\n\n expect(deleteItemGateway.execute).toHaveBeenCalledTimes(1);\n expect(deleteItemGateway.execute).toHaveBeenCalledWith(item1.id);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n });\n\n it(\"should restore an item, removing it from the list\", async () => {\n const { presenter, controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n const restorePromise = controllers.restoreItem.execute(item1.id);\n\n // Let's check the transition to loading state\n expect(presenter.vm).toMatchObject({\n loading: {\n [LoadingActions.restore]: true\n }\n });\n\n await restorePromise;\n\n expect(restoreItemGateway.execute).toHaveBeenCalledTimes(1);\n expect(restoreItemGateway.execute).toHaveBeenCalledWith(item1.id);\n\n expect(presenter.vm).toMatchObject({\n items: [\n {\n id: \"item-2\",\n $selectable: true,\n title: \"Item 2\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity1,\n deletedOn: expect.any(String)\n },\n {\n id: \"item-3\",\n $selectable: true,\n title: \"Item 3\",\n location: {\n folderId: \"folder-b\"\n },\n createdBy: identity2,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ],\n restoredItems: [\n {\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n }\n ]\n });\n\n // We should be able to get the restored item by id\n const restoredItem = await controllers.getRestoredItemById.execute(\"item-1\");\n expect(restoredItem).toMatchObject({\n id: \"item-1\",\n $selectable: true,\n title: \"Item 1\",\n location: {\n folderId: \"folder-a\"\n },\n createdBy: identity1,\n deletedBy: identity2,\n deletedOn: expect.any(String)\n });\n });\n\n it.each([\n [0, \"0 days\"],\n [1, \"1 day\"],\n [2, \"2 days\"]\n ])(\"should set the retention period to `%s` when input is `%i`\", (input, output) => {\n const { presenter } = init(listGateway, deleteItemGateway, restoreItemGateway, input);\n\n expect(presenter.vm).toMatchObject({\n retentionPeriod: output\n });\n });\n\n it(\"should be able to perform bulk action - RESTORE\", async () => {\n const { controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n const restoreBulkActionPromise = controllers.restoreBulkAction.execute({\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n\n await restoreBulkActionPromise;\n\n expect(bulkActionGateway.execute).toHaveBeenCalledTimes(1);\n expect(bulkActionGateway.execute).toHaveBeenCalledWith({\n action: BulkActionRestoreItems,\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n });\n\n it(\"should be able to perform bulk action - DELETE\", async () => {\n const { controllers } = init(listGateway, deleteItemGateway, restoreItemGateway);\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n const deleteBulkActionPromise = controllers.deleteBulkAction.execute({\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n\n await deleteBulkActionPromise;\n\n expect(bulkActionGateway.execute).toHaveBeenCalledTimes(1);\n expect(bulkActionGateway.execute).toHaveBeenCalledWith({\n action: BulkActionDeleteItems,\n search: \"Custom search\",\n where: {\n title: \"Item title\"\n },\n data: {\n any: 1\n }\n });\n });\n\n it(\"should be able to `selectAll` and `unselectAll` items\", async () => {\n {\n // let's test the functionality by listing items that span multiple pages.\n const listGateway = createBinListGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 4, cursor: \"IjMi\", hasMoreItems: true }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n listGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n // let's check the initial vm state\n expect(presenter.vm.items.length).toBe(3);\n expect(presenter.vm.selectedItems.length).toBe(0);\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n\n // let's check the vm state after selecting all items on the page\n await controllers.selectItems.execute([item1, item2, item3]);\n expect(presenter.vm.selectedItems.length).toBe(3);\n expect(presenter.vm.allowSelectAll).toBeTruthy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n\n // let's check the vm state after selecting all items\n await controllers.selectAllItems.execute();\n expect(presenter.vm.selectedItems.length).toBe(3);\n expect(presenter.vm.allowSelectAll).toBeTruthy();\n expect(presenter.vm.isSelectedAll).toBeTruthy();\n\n // let's check the vm state after unselecting all items\n await controllers.unselectAllItems.execute();\n expect(presenter.vm.selectedItems.length).toBe(0);\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n\n // let's check the vm state after unselecting one item\n await controllers.selectItems.execute([item1, item2, item3]);\n expect(presenter.vm.selectedItems.length).toBe(3);\n await controllers.selectAllItems.execute();\n expect(presenter.vm.isSelectedAll).toBeTruthy();\n await controllers.selectItems.execute([item1, item2]);\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n }\n\n {\n // let's test the functionality by listing items that span only one page.\n const listGateway = createBinListGateway({\n execute: jest.fn().mockImplementation(() => {\n return Promise.resolve([\n [item1, item2, item3],\n { totalCount: 3, cursor: null, hasMoreItems: false }\n ]);\n })\n });\n\n const { presenter, controllers } = init(\n listGateway,\n deleteItemGateway,\n restoreItemGateway\n );\n\n // let's list some entries from the gateway\n await controllers.listItems.execute();\n\n expect(listGateway.execute).toHaveBeenCalledTimes(1);\n\n // let's check the initial vm state\n expect(presenter.vm.items.length).toBe(3);\n\n // let's check the vm state after selecting all items in the page\n await controllers.selectItems.execute([item1, item2, item3]);\n expect(presenter.vm.selectedItems.length).toBe(3);\n expect(presenter.vm.allowSelectAll).toBeFalsy();\n expect(presenter.vm.isSelectedAll).toBeFalsy();\n }\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_controllers","require","_UseCases","TrashBinControllers","exports","itemsRepository","selectedRepository","sortingRepository","searchRepository","deleteBulkActionName","restoreBulkActionName","_classCallCheck2","default","_createClass2","key","value","getControllers","_this","selectItemsUseCase","SelectItemsUseCase","selectAllItemsUseCase","SelectAllItemsUseCase","unselectAllItemsUseCase","UnselectAllItemsUseCase","sortItemsUseCase","SortItemsUseCase","searchItemsUseCase","SearchItemsUseCase","listItemsUseCase","baseListItemsUseCase","ListItemsUseCase","listItemsWithSearch","ListItemsUseCaseWithSearch","ListItemsUseCaseWithSorting","listMoreItemsUseCase","ListMoreItemsUseCase","deleteItemUseCase","DeleteItemUseCase","restoreItemUseCase","RestoreItemUseCase","getRestoredItemUseCase","GetRestoredItemUseCase","bulkActionUseCase","BulkActionUseCase","listItems","ListItemsController","listMoreItems","ListMoreItemsController","deleteItem","DeleteItemController","restoreItem","RestoreItemController","selectItems","SelectItemsController","selectAllItems","SelectAllItemsController","unselectAllItems","UnselectAllItemsController","sortItems","SortItemsController","searchItems","SearchItemsController","getRestoredItemById","GetRestoredItemByIdController","restoreBulkAction","BulkActionsController","deleteBulkAction"],"sources":["TrashBinControllers.ts"],"sourcesContent":["import { ISortingRepository } from \"@webiny/app-utils\";\nimport { ISearchRepository, ISelectedItemsRepository, ITrashBinItemsRepository } from \"~/Domain\";\nimport {\n BulkActionsController,\n DeleteItemController,\n GetRestoredItemByIdController,\n ListItemsController,\n ListMoreItemsController,\n RestoreItemController,\n SearchItemsController,\n SelectAllItemsController,\n SelectItemsController,\n SortItemsController,\n UnselectAllItemsController\n} from \"~/Presentation/TrashBin/controllers\";\nimport {\n BulkActionUseCase,\n DeleteItemUseCase,\n GetRestoredItemUseCase,\n ListItemsUseCase,\n ListItemsUseCaseWithSearch,\n ListItemsUseCaseWithSorting,\n ListMoreItemsUseCase,\n RestoreItemUseCase,\n SearchItemsUseCase,\n SelectAllItemsUseCase,\n SelectItemsUseCase,\n SortItemsUseCase,\n UnselectAllItemsUseCase\n} from \"~/UseCases\";\n\nexport class TrashBinControllers {\n private readonly itemsRepository: ITrashBinItemsRepository;\n private readonly selectedRepository: ISelectedItemsRepository;\n private readonly sortingRepository: ISortingRepository;\n private readonly searchRepository: ISearchRepository;\n private readonly deleteBulkActionName: string;\n private readonly restoreBulkActionName: string;\n\n constructor(\n itemsRepository: ITrashBinItemsRepository,\n selectedRepository: ISelectedItemsRepository,\n sortingRepository: ISortingRepository,\n searchRepository: ISearchRepository,\n deleteBulkActionName: string,\n restoreBulkActionName: string\n ) {\n this.itemsRepository = itemsRepository;\n this.selectedRepository = selectedRepository;\n this.sortingRepository = sortingRepository;\n this.searchRepository = searchRepository;\n this.deleteBulkActionName = deleteBulkActionName;\n this.restoreBulkActionName = restoreBulkActionName;\n }\n\n getControllers() {\n // Select Items UseCase\n const selectItemsUseCase = () => new SelectItemsUseCase(this.selectedRepository);\n\n // Select All Items UseCase\n const selectAllItemsUseCase = () => new SelectAllItemsUseCase(this.selectedRepository);\n\n // Unselect All Items UseCase\n const unselectAllItemsUseCase = () => new UnselectAllItemsUseCase(this.selectedRepository);\n\n // Sort Items UseCase\n const sortItemsUseCase = () => new SortItemsUseCase(this.sortingRepository);\n\n // Search Items UseCase\n const searchItemsUseCase = () => new SearchItemsUseCase(this.searchRepository);\n\n // List Items UseCase\n const listItemsUseCase = () => {\n const baseListItemsUseCase = new ListItemsUseCase(this.itemsRepository);\n const listItemsWithSearch = new ListItemsUseCaseWithSearch(\n this.searchRepository,\n baseListItemsUseCase\n );\n return new ListItemsUseCaseWithSorting(this.sortingRepository, listItemsWithSearch);\n };\n\n // List More Items UseCase\n const listMoreItemsUseCase = () => new ListMoreItemsUseCase(this.itemsRepository);\n\n // Delete Item UseCase\n const deleteItemUseCase = () => new DeleteItemUseCase(this.itemsRepository);\n\n // Restore Item UseCase\n const restoreItemUseCase = () => new RestoreItemUseCase(this.itemsRepository);\n\n // Get RestoredItem UseCase\n const getRestoredItemUseCase = () => new GetRestoredItemUseCase(this.itemsRepository);\n\n // Bulk Action UseCase\n const bulkActionUseCase = () => new BulkActionUseCase(this.itemsRepository);\n\n // Create controllers\n const listItems = new ListItemsController(listItemsUseCase);\n const listMoreItems = new ListMoreItemsController(listMoreItemsUseCase);\n const deleteItem = new DeleteItemController(deleteItemUseCase);\n const restoreItem = new RestoreItemController(restoreItemUseCase);\n const selectItems = new SelectItemsController(selectItemsUseCase);\n const selectAllItems = new SelectAllItemsController(selectAllItemsUseCase);\n const unselectAllItems = new UnselectAllItemsController(unselectAllItemsUseCase);\n const sortItems = new SortItemsController(listItemsUseCase, sortItemsUseCase);\n const searchItems = new SearchItemsController(listItemsUseCase, searchItemsUseCase);\n const getRestoredItemById = new GetRestoredItemByIdController(getRestoredItemUseCase);\n const restoreBulkAction = new BulkActionsController(\n bulkActionUseCase,\n this.restoreBulkActionName\n );\n const deleteBulkAction = new BulkActionsController(\n bulkActionUseCase,\n this.deleteBulkActionName\n );\n\n return {\n listItems,\n listMoreItems,\n deleteItem,\n restoreItem,\n restoreBulkAction,\n deleteBulkAction,\n selectItems,\n selectAllItems,\n unselectAllItems,\n sortItems,\n searchItems,\n getRestoredItemById\n };\n }\n}\n"],"mappings":";;;;;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AAaA,IAAAC,SAAA,GAAAD,OAAA;AAcoB,IAEPE,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA;EAQ5B,SAAAA,oBACIE,eAAyC,EACzCC,kBAA4C,EAC5CC,iBAAqC,EACrCC,gBAAmC,EACnCC,oBAA4B,EAC5BC,qBAA6B,EAC/B;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAT,mBAAA;IACE,IAAI,CAACE,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,kBAAkB,GAAGA,kBAAkB;IAC5C,IAAI,CAACC,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACC,oBAAoB,GAAGA,oBAAoB;IAChD,IAAI,CAACC,qBAAqB,GAAGA,qBAAqB;EACtD;EAAC,WAAAG,aAAA,CAAAD,OAAA,EAAAT,mBAAA;IAAAW,GAAA;IAAAC,KAAA,EAED,SAAAC,
|
|
1
|
+
{"version":3,"names":["_controllers","require","_UseCases","TrashBinControllers","exports","itemsRepository","selectedRepository","sortingRepository","searchRepository","deleteBulkActionName","restoreBulkActionName","_classCallCheck2","default","_createClass2","key","value","getControllers","_this","selectItemsUseCase","SelectItemsUseCase","selectAllItemsUseCase","SelectAllItemsUseCase","unselectAllItemsUseCase","UnselectAllItemsUseCase","sortItemsUseCase","SortItemsUseCase","searchItemsUseCase","SearchItemsUseCase","listItemsUseCase","baseListItemsUseCase","ListItemsUseCase","listItemsWithSearch","ListItemsUseCaseWithSearch","ListItemsUseCaseWithSorting","listMoreItemsUseCase","ListMoreItemsUseCase","deleteItemUseCase","DeleteItemUseCase","restoreItemUseCase","RestoreItemUseCase","getRestoredItemUseCase","GetRestoredItemUseCase","bulkActionUseCase","BulkActionUseCase","listItems","ListItemsController","listMoreItems","ListMoreItemsController","deleteItem","DeleteItemController","restoreItem","RestoreItemController","selectItems","SelectItemsController","selectAllItems","SelectAllItemsController","unselectAllItems","UnselectAllItemsController","sortItems","SortItemsController","searchItems","SearchItemsController","getRestoredItemById","GetRestoredItemByIdController","restoreBulkAction","BulkActionsController","deleteBulkAction"],"sources":["TrashBinControllers.ts"],"sourcesContent":["import { ISortingRepository } from \"@webiny/app-utils\";\nimport { ISearchRepository, ISelectedItemsRepository, ITrashBinItemsRepository } from \"~/Domain\";\nimport {\n BulkActionsController,\n DeleteItemController,\n GetRestoredItemByIdController,\n ListItemsController,\n ListMoreItemsController,\n RestoreItemController,\n SearchItemsController,\n SelectAllItemsController,\n SelectItemsController,\n SortItemsController,\n UnselectAllItemsController\n} from \"~/Presentation/TrashBin/controllers\";\nimport {\n BulkActionUseCase,\n DeleteItemUseCase,\n GetRestoredItemUseCase,\n ListItemsUseCase,\n ListItemsUseCaseWithSearch,\n ListItemsUseCaseWithSorting,\n ListMoreItemsUseCase,\n RestoreItemUseCase,\n SearchItemsUseCase,\n SelectAllItemsUseCase,\n SelectItemsUseCase,\n SortItemsUseCase,\n UnselectAllItemsUseCase\n} from \"~/UseCases\";\n\nexport class TrashBinControllers {\n private readonly itemsRepository: ITrashBinItemsRepository;\n private readonly selectedRepository: ISelectedItemsRepository;\n private readonly sortingRepository: ISortingRepository;\n private readonly searchRepository: ISearchRepository;\n private readonly deleteBulkActionName: string;\n private readonly restoreBulkActionName: string;\n\n constructor(\n itemsRepository: ITrashBinItemsRepository,\n selectedRepository: ISelectedItemsRepository,\n sortingRepository: ISortingRepository,\n searchRepository: ISearchRepository,\n deleteBulkActionName: string,\n restoreBulkActionName: string\n ) {\n this.itemsRepository = itemsRepository;\n this.selectedRepository = selectedRepository;\n this.sortingRepository = sortingRepository;\n this.searchRepository = searchRepository;\n this.deleteBulkActionName = deleteBulkActionName;\n this.restoreBulkActionName = restoreBulkActionName;\n }\n\n getControllers() {\n // Select Items UseCase\n const selectItemsUseCase = () => new SelectItemsUseCase(this.selectedRepository);\n\n // Select All Items UseCase\n const selectAllItemsUseCase = () => new SelectAllItemsUseCase(this.selectedRepository);\n\n // Unselect All Items UseCase\n const unselectAllItemsUseCase = () => new UnselectAllItemsUseCase(this.selectedRepository);\n\n // Sort Items UseCase\n const sortItemsUseCase = () => new SortItemsUseCase(this.sortingRepository);\n\n // Search Items UseCase\n const searchItemsUseCase = () => new SearchItemsUseCase(this.searchRepository);\n\n // List Items UseCase\n const listItemsUseCase = () => {\n const baseListItemsUseCase = new ListItemsUseCase(this.itemsRepository);\n const listItemsWithSearch = new ListItemsUseCaseWithSearch(\n this.searchRepository,\n baseListItemsUseCase\n );\n return new ListItemsUseCaseWithSorting(this.sortingRepository, listItemsWithSearch);\n };\n\n // List More Items UseCase\n const listMoreItemsUseCase = () => new ListMoreItemsUseCase(this.itemsRepository);\n\n // Delete Item UseCase\n const deleteItemUseCase = () => new DeleteItemUseCase(this.itemsRepository);\n\n // Restore Item UseCase\n const restoreItemUseCase = () => new RestoreItemUseCase(this.itemsRepository);\n\n // Get RestoredItem UseCase\n const getRestoredItemUseCase = () => new GetRestoredItemUseCase(this.itemsRepository);\n\n // Bulk Action UseCase\n const bulkActionUseCase = () => new BulkActionUseCase(this.itemsRepository);\n\n // Create controllers\n const listItems = new ListItemsController(listItemsUseCase);\n const listMoreItems = new ListMoreItemsController(listMoreItemsUseCase);\n const deleteItem = new DeleteItemController(deleteItemUseCase);\n const restoreItem = new RestoreItemController(restoreItemUseCase);\n const selectItems = new SelectItemsController(selectItemsUseCase);\n const selectAllItems = new SelectAllItemsController(selectAllItemsUseCase);\n const unselectAllItems = new UnselectAllItemsController(unselectAllItemsUseCase);\n const sortItems = new SortItemsController(listItemsUseCase, sortItemsUseCase);\n const searchItems = new SearchItemsController(listItemsUseCase, searchItemsUseCase);\n const getRestoredItemById = new GetRestoredItemByIdController(getRestoredItemUseCase);\n const restoreBulkAction = new BulkActionsController(\n bulkActionUseCase,\n this.restoreBulkActionName\n );\n const deleteBulkAction = new BulkActionsController(\n bulkActionUseCase,\n this.deleteBulkActionName\n );\n\n return {\n listItems,\n listMoreItems,\n deleteItem,\n restoreItem,\n restoreBulkAction,\n deleteBulkAction,\n selectItems,\n selectAllItems,\n unselectAllItems,\n sortItems,\n searchItems,\n getRestoredItemById\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_appUtils","_Repositories","_types","TrashBinPresenter","exports","itemsRepository","selectedRepository","sortingRepository","searchRepository","retentionPeriod","nameColumnId","_classCallCheck2","default","itemMapper","TrashBinItemMapper","makeAutoObservable","_createClass2","key","get","items","mapItemsToDTOs","getItems","restoredItems","getRestoredItems","selectedItems","getSelectedItems","allowSelectAll","getAllowSelectAll","isSelectedAll","getSelectedAllItems","meta","MetaMapper","toDto","getMeta","sorting","map","sort","SortingMapper","fromDTOtoColumn","loading","getLoading","isEmptyView","getIsEmptyView","isSearchView","getIsSearchView","searchQuery","searchLabel","getRetentionPeriod","value","_this","item","toDTO","LoadingActions","list","length","concat","hasMoreItems"],"sources":["TrashBinPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\nimport { ISortingRepository, MetaMapper, SortingMapper } from \"@webiny/app-utils\";\nimport {\n TrashBinItemMapper,\n ITrashBinItemsRepository,\n ISelectedItemsRepository,\n ISearchRepository\n} 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.mapItemsToDTOs(this.itemsRepository.getItems()),\n restoredItems: this.mapItemsToDTOs(this.itemsRepository.getRestoredItems()),\n selectedItems: this.mapItemsToDTOs(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 mapItemsToDTOs(items: TrashBinItem[]) {\n return items.map(item => this.itemMapper.toDTO(item));\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":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAMA,IAAAG,MAAA,GAAAH,OAAA;AAAyC,IAE5BI,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA;EAS1B,SAAAA,kBACIE,eAAyC,EACzCC,kBAA4C,EAC5CC,iBAAqC,EACrCC,gBAAmC,EACnCC,eAAuB,EACvBC,YAAqB,EACvB;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAT,iBAAA;IACE,IAAI,CAACE,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,kBAAkB,GAAGA,kBAAkB;IAC5C,IAAI,CAACC,iBAAiB,GAAGA,iBAAiB;IAC1C,IAAI,CAACC,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACK,UAAU,GAAG,IAAIC,gCAAkB,CAAC,CAAC;IAC1C,IAAI,CAACL,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,YAAY,GAAGA,YAAY;IAChC,IAAAK,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAJ,OAAA,EAAAT,iBAAA;IAAAc,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAS;MACL,OAAO;QACHC,KAAK,EAAE,IAAI,CAACC,cAAc,CAAC,IAAI,CAACf,eAAe,CAACgB,QAAQ,CAAC,CAAC,CAAC;QAC3DC,aAAa,EAAE,IAAI,CAACF,cAAc,CAAC,IAAI,CAACf,eAAe,CAACkB,gBAAgB,CAAC,CAAC,CAAC;QAC3EC,aAAa,EAAE,IAAI,CAACJ,cAAc,CAAC,IAAI,CAACd,kBAAkB,CAACmB,gBAAgB,CAAC,CAAC,CAAC;QAC9EC,cAAc,EAAE,IAAI,CAACC,iBAAiB,CAAC,CAAC;QACxCC,aAAa,EAAE,IAAI,CAACtB,kBAAkB,CAACuB,mBAAmB,CAAC,CAAC;QAC5DC,IAAI,EAAEC,oBAAU,CAACC,KAAK,CAAC,IAAI,CAAC3B,eAAe,CAAC4B,OAAO,CAAC,CAAC,CAAC;QACtDC,OAAO,EAAE,IAAI,CAAC3B,iBAAiB,CAACW,GAAG,CAAC,CAAC,CAACiB,GAAG,CAAC,UAAAC,IAAI;UAAA,OAAIC,uBAAa,CAACC,eAAe,CAACF,IAAI,CAAC;QAAA,EAAC;QACtFG,OAAO,EAAE,IAAI,CAAClC,eAAe,CAACmC,UAAU,CAAC,CAAC;QAC1CC,WAAW,EAAE,IAAI,CAACC,cAAc,CAAC,CAAC;QAClCC,YAAY,EAAE,IAAI,CAACC,eAAe,CAAC,CAAC;QACpCC,WAAW,EAAE,IAAI,CAACrC,gBAAgB,CAACU,GAAG,CAAC,CAAC;QACxC4B,WAAW,EAAE,kBAAkB;QAC/BpC,YAAY,EAAE,IAAI,CAACA,YAAY,IAAI,IAAI;QACvCD,eAAe,EAAE,IAAI,CAACsC,kBAAkB,CAAC;MAC7C,CAAC;IACL;EAAC;IAAA9B,GAAA;IAAA+B,KAAA,EAED,
|
|
1
|
+
{"version":3,"names":["_mobx","require","_appUtils","_Repositories","_types","TrashBinPresenter","exports","itemsRepository","selectedRepository","sortingRepository","searchRepository","retentionPeriod","nameColumnId","_classCallCheck2","default","itemMapper","TrashBinItemMapper","makeAutoObservable","_createClass2","key","get","items","mapItemsToDTOs","getItems","restoredItems","getRestoredItems","selectedItems","getSelectedItems","allowSelectAll","getAllowSelectAll","isSelectedAll","getSelectedAllItems","meta","MetaMapper","toDto","getMeta","sorting","map","sort","SortingMapper","fromDTOtoColumn","loading","getLoading","isEmptyView","getIsEmptyView","isSearchView","getIsSearchView","searchQuery","searchLabel","getRetentionPeriod","value","_this","item","toDTO","LoadingActions","list","length","concat","hasMoreItems"],"sources":["TrashBinPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { ITrashBinItemMapper, TrashBinItem } from \"~/Domain\";\nimport { ISortingRepository, MetaMapper, SortingMapper } from \"@webiny/app-utils\";\nimport {\n TrashBinItemMapper,\n ITrashBinItemsRepository,\n ISelectedItemsRepository,\n ISearchRepository\n} 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.mapItemsToDTOs(this.itemsRepository.getItems()),\n restoredItems: this.mapItemsToDTOs(this.itemsRepository.getRestoredItems()),\n selectedItems: this.mapItemsToDTOs(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 mapItemsToDTOs(items: TrashBinItem[]) {\n return items.map(item => this.itemMapper.toDTO(item));\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":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BulkActionsController","exports","useCaseFactory","action","_classCallCheck2","default","_createClass2","key","value","execute","params","bulkActionUseCase"],"sources":["BulkActionsController.ts"],"sourcesContent":["import { IBulkActionUseCase } from \"~/UseCases\";\nimport { IBulkActionsController } from \"./IBulkActionsController\";\nimport { TrashBinBulkActionsParams } from \"~/types\";\n\nexport class BulkActionsController implements IBulkActionsController {\n private readonly useCaseFactory: () => IBulkActionUseCase;\n private readonly action: string;\n\n constructor(useCaseFactory: () => IBulkActionUseCase, action: string) {\n this.useCaseFactory = useCaseFactory;\n this.action = action;\n }\n\n async execute(params: TrashBinBulkActionsParams) {\n const bulkActionUseCase = this.useCaseFactory();\n await bulkActionUseCase.execute(this.action, params);\n }\n}\n"],"mappings":";;;;;;;;;IAIaA,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA;EAI9B,SAAAA,sBAAYE,cAAwC,EAAEC,MAAc,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,qBAAA;IAClE,IAAI,CAACE,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,MAAM,GAAGA,MAAM;EACxB;EAAC,WAAAG,aAAA,CAAAD,OAAA,EAAAL,qBAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,
|
|
1
|
+
{"version":3,"names":["BulkActionsController","exports","useCaseFactory","action","_classCallCheck2","default","_createClass2","key","value","execute","params","bulkActionUseCase"],"sources":["BulkActionsController.ts"],"sourcesContent":["import { IBulkActionUseCase } from \"~/UseCases\";\nimport { IBulkActionsController } from \"./IBulkActionsController\";\nimport { TrashBinBulkActionsParams } from \"~/types\";\n\nexport class BulkActionsController implements IBulkActionsController {\n private readonly useCaseFactory: () => IBulkActionUseCase;\n private readonly action: string;\n\n constructor(useCaseFactory: () => IBulkActionUseCase, action: string) {\n this.useCaseFactory = useCaseFactory;\n this.action = action;\n }\n\n async execute(params: TrashBinBulkActionsParams) {\n const bulkActionUseCase = this.useCaseFactory();\n await bulkActionUseCase.execute(this.action, params);\n }\n}\n"],"mappings":";;;;;;;;;IAIaA,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA;EAI9B,SAAAA,sBAAYE,cAAwC,EAAEC,MAAc,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,qBAAA;IAClE,IAAI,CAACE,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,MAAM,GAAGA,MAAM;EACxB;EAAC,WAAAG,aAAA,CAAAD,OAAA,EAAAL,qBAAA;IAAAO,GAAA;IAAAC,KAAA,EAED,eAAMC,OAAOA,CAACC,MAAiC,EAAE;MAC7C,IAAMC,iBAAiB,GAAG,IAAI,CAACT,cAAc,CAAC,CAAC;MAC/C,MAAMS,iBAAiB,CAACF,OAAO,CAAC,IAAI,CAACN,MAAM,EAAEO,MAAM,CAAC;IACxD;EAAC;AAAA","ignoreList":[]}
|