remove stylesheet overview logic
This commit is contained in:
@@ -3,14 +3,7 @@ import { UmbMockFileSystemDetailManager } from '../file-system/file-system-detai
|
||||
import { UmbMockFileSystemFolderManager } from '../file-system/file-system-folder.manager.js';
|
||||
import { UmbMockFileSystemItemManager } from '../file-system/file-system-item.manager.js';
|
||||
import { UmbMockFileSystemTreeManager } from '../file-system/file-system-tree.manager.js';
|
||||
import { textFileItemMapper } from '../utils.js';
|
||||
import { UmbMockStylesheetModel, data } from './stylesheet.data.js';
|
||||
import { PagedStylesheetOverviewResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
interface UmbMockPaginationModel {
|
||||
skip?: number;
|
||||
take?: number;
|
||||
}
|
||||
|
||||
class UmbStylesheetMockDb extends UmbFileSystemMockDbBase<UmbMockStylesheetModel> {
|
||||
tree = new UmbMockFileSystemTreeManager<UmbMockStylesheetModel>(this);
|
||||
@@ -21,20 +14,6 @@ class UmbStylesheetMockDb extends UmbFileSystemMockDbBase<UmbMockStylesheetModel
|
||||
constructor(data: Array<UmbMockStylesheetModel>) {
|
||||
super(data);
|
||||
}
|
||||
|
||||
getOverview(filterOptions: UmbMockPaginationModel = { skip: 0, take: 100 }): PagedStylesheetOverviewResponseModel {
|
||||
const mockItems = this.getData();
|
||||
const files = mockItems.filter((item) => item.isFolder === false);
|
||||
const paginatedFiles = files.slice(filterOptions.skip, filterOptions.skip! + filterOptions.take!);
|
||||
const responseItems = paginatedFiles.map((item) => {
|
||||
return {
|
||||
name: item.name,
|
||||
path: item.path,
|
||||
};
|
||||
});
|
||||
|
||||
return { items: responseItems, total: mockItems.length };
|
||||
}
|
||||
}
|
||||
|
||||
export const umbStylesheetMockDb = new UmbStylesheetMockDb(data);
|
||||
|
||||
@@ -2,14 +2,6 @@ import { folderHandlers } from './folder.handlers.js';
|
||||
import { treeHandlers } from './tree.handlers.js';
|
||||
import { detailHandlers } from './detail.handlers.js';
|
||||
import { itemHandlers } from './item.handlers.js';
|
||||
import { overviewHandlers } from './overview.handlers.js';
|
||||
import { renameHandlers } from './rename.handlers.js';
|
||||
|
||||
export const handlers = [
|
||||
...treeHandlers,
|
||||
...itemHandlers,
|
||||
...folderHandlers,
|
||||
...overviewHandlers,
|
||||
...renameHandlers,
|
||||
...detailHandlers,
|
||||
];
|
||||
export const handlers = [...treeHandlers, ...itemHandlers, ...folderHandlers, ...renameHandlers, ...detailHandlers];
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
const { rest } = window.MockServiceWorker;
|
||||
import { umbStylesheetMockDb } from '../../data/stylesheet/stylesheet.db.js';
|
||||
import { UMB_SLUG } from './slug.js';
|
||||
import { umbracoPath } from '@umbraco-cms/backoffice/utils';
|
||||
|
||||
export const overviewHandlers = [
|
||||
rest.get(umbracoPath(`${UMB_SLUG}/overview`), async (req, res, ctx) => {
|
||||
const skipParam = req.url.searchParams.get('skip');
|
||||
const takeParam = req.url.searchParams.get('take');
|
||||
const response = umbStylesheetMockDb.getOverview({
|
||||
skip: skipParam ? parseInt(skipParam) : undefined,
|
||||
take: takeParam ? parseInt(takeParam) : undefined,
|
||||
});
|
||||
return res(ctx.status(200), ctx.json(response));
|
||||
}),
|
||||
];
|
||||
@@ -1 +0,0 @@
|
||||
export * from './repository/index.js';
|
||||
@@ -1,3 +0,0 @@
|
||||
import { manifests as repositoryManifests } from './repository/manifests.js';
|
||||
|
||||
export const manifests = [...repositoryManifests];
|
||||
@@ -1 +0,0 @@
|
||||
export * from './stylesheet-collection.repository.js';
|
||||
@@ -1,13 +0,0 @@
|
||||
import { UmbStylesheetCollectionRepository } from './stylesheet-collection.repository.js';
|
||||
import { ManifestRepository } from '@umbraco-cms/backoffice/extension-registry';
|
||||
|
||||
export const UMB_STYLESHEET_COLLECTION_REPOSITORY_ALIAS = 'Umb.Repository.Stylesheet.Collection';
|
||||
|
||||
const repository: ManifestRepository = {
|
||||
type: 'repository',
|
||||
alias: UMB_STYLESHEET_COLLECTION_REPOSITORY_ALIAS,
|
||||
name: 'Stylesheet Collection Repository',
|
||||
api: UmbStylesheetCollectionRepository,
|
||||
};
|
||||
|
||||
export const manifests = [repository];
|
||||
@@ -1,24 +0,0 @@
|
||||
import { UmbStylesheetCollectionFilterModel, UmbStylesheetCollectionItemModel } from '../types.js';
|
||||
import { UmbStylesheetCollectionServerDataSource } from './stylesheet-collection.server.data-source.js';
|
||||
import { UmbCollectionDataSource, UmbCollectionRepository } from '@umbraco-cms/backoffice/repository';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
|
||||
export class UmbStylesheetCollectionRepository extends UmbBaseController implements UmbCollectionRepository {
|
||||
#collectionSource: UmbCollectionDataSource<UmbStylesheetCollectionItemModel>;
|
||||
|
||||
constructor(host: UmbControllerHost) {
|
||||
super(host);
|
||||
this.#collectionSource = new UmbStylesheetCollectionServerDataSource(this._host);
|
||||
}
|
||||
|
||||
/**
|
||||
* Requests the stylesheet collection
|
||||
* @param {UmbStylesheetCollectionFilterModel} [filter={ take: 100, skip: 0 }]
|
||||
* @return {*}
|
||||
* @memberof UmbStylesheetCollectionRepository
|
||||
*/
|
||||
requestCollection(filter: UmbStylesheetCollectionFilterModel = { take: 100, skip: 0 }) {
|
||||
return this.#collectionSource.getCollection(filter);
|
||||
}
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
import { UmbServerFilePathUniqueSerializer } from '@umbraco-cms/backoffice/server-file-system';
|
||||
import { UmbStylesheetCollectionFilterModel, UmbStylesheetCollectionItemModel } from '../types.js';
|
||||
import type { UmbCollectionDataSource } from '@umbraco-cms/backoffice/repository';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { tryExecuteAndNotify } from '@umbraco-cms/backoffice/resources';
|
||||
import { StylesheetResource } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
/**
|
||||
* A data source for the Stylesheet collection that fetches data from the server
|
||||
* @export
|
||||
* @class UmbStylesheetCollectionServerDataSource
|
||||
* @implements {RepositoryDetailDataSource}
|
||||
*/
|
||||
export class UmbStylesheetCollectionServerDataSource
|
||||
implements UmbCollectionDataSource<UmbStylesheetCollectionItemModel>
|
||||
{
|
||||
#host: UmbControllerHost;
|
||||
#serverFilePathUniqueSerializer = new UmbServerFilePathUniqueSerializer();
|
||||
|
||||
/**
|
||||
* Creates an instance of UmbStylesheetCollectionServerDataSource.
|
||||
* @param {UmbControllerHost} host
|
||||
* @memberof UmbStylesheetCollectionServerDataSource
|
||||
*/
|
||||
constructor(host: UmbControllerHost) {
|
||||
this.#host = host;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the stylesheet collection items from the server
|
||||
* @param {UmbStylesheetCollectionFilterModel} filter
|
||||
* @return {*}
|
||||
* @memberof UmbStylesheetCollectionServerDataSource
|
||||
*/
|
||||
async getCollection(filter: UmbStylesheetCollectionFilterModel) {
|
||||
const { data, error } = await tryExecuteAndNotify(this.#host, StylesheetResource.getStylesheetOverview(filter));
|
||||
|
||||
if (data) {
|
||||
const items: Array<UmbStylesheetCollectionItemModel> = data.items.map((item) => {
|
||||
return {
|
||||
name: item.name,
|
||||
unique: this.#serverFilePathUniqueSerializer.toUnique(item.path),
|
||||
};
|
||||
});
|
||||
|
||||
return { data: { items, total: data.total } };
|
||||
}
|
||||
|
||||
return { error };
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
export interface UmbStylesheetCollectionFilterModel {
|
||||
/**
|
||||
* The number of items to take.
|
||||
*/
|
||||
take?: number;
|
||||
|
||||
/**
|
||||
* The number of items to skip.
|
||||
*/
|
||||
skip?: number;
|
||||
}
|
||||
|
||||
export interface UmbStylesheetCollectionItemModel {
|
||||
name: string;
|
||||
unique: string;
|
||||
}
|
||||
@@ -3,7 +3,6 @@ import { manifests as menuItemManifests } from './menu-item/manifests.js';
|
||||
import { manifests as treeManifests } from './tree/manifests.js';
|
||||
import { manifests as workspaceManifests } from './workspace/manifests.js';
|
||||
import { manifests as entityActionManifests } from './entity-actions/manifests.js';
|
||||
import { manifests as collectionManifests } from './collection/manifests.js';
|
||||
import { manifests as componentManifests } from './components/manifests.js';
|
||||
|
||||
export const manifests = [
|
||||
@@ -12,6 +11,5 @@ export const manifests = [
|
||||
...treeManifests,
|
||||
...workspaceManifests,
|
||||
...entityActionManifests,
|
||||
...collectionManifests,
|
||||
...componentManifests,
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user