From 24d5de0afa56cf671bd295f6284622d6ad424c0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jesper=20M=C3=B8ller=20Jensen?= <26099018+JesmoDev@users.noreply.github.com> Date: Fri, 5 Jan 2024 10:52:53 +1300 Subject: [PATCH] move handlers to new relations folder --- .../src/mocks/browser-handlers.ts | 4 +- .../mocks/handlers/relation-type.handlers.ts | 76 ------------------- .../src/mocks/handlers/relations/index.ts | 1 + .../relation-types/detail.handlers.ts | 47 ++++++++++++ .../relations/relation-types/index.ts | 4 + .../handlers/relations/relation-types/slug.ts | 1 + .../relations/relation-types/tree.handlers.ts | 36 +++++++++ 7 files changed, 91 insertions(+), 78 deletions(-) delete mode 100644 src/Umbraco.Web.UI.Client/src/mocks/handlers/relation-type.handlers.ts create mode 100644 src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/index.ts create mode 100644 src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/detail.handlers.ts create mode 100644 src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/index.ts create mode 100644 src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/slug.ts create mode 100644 src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/tree.handlers.ts diff --git a/src/Umbraco.Web.UI.Client/src/mocks/browser-handlers.ts b/src/Umbraco.Web.UI.Client/src/mocks/browser-handlers.ts index cac7ae809b..cc6544084a 100644 --- a/src/Umbraco.Web.UI.Client/src/mocks/browser-handlers.ts +++ b/src/Umbraco.Web.UI.Client/src/mocks/browser-handlers.ts @@ -1,5 +1,4 @@ import { handlers as dataTypeHandlers } from './handlers/data-type/index.js'; -import { handlers as relationTypeHandlers } from './handlers/relation-type.handlers.js'; import { handlers as documentTypeHandlers } from './handlers/document-type/index.js'; import { handlers as installHandlers } from './handlers/install.handlers.js'; import * as manifestsHandlers from './handlers/manifests.handlers.js'; @@ -11,6 +10,7 @@ import { handlers as telemetryHandlers } from './handlers/telemetry.handlers.js' import { handlers as userGroupsHandlers } from './handlers/user-group/index.js'; import { handlers as examineManagementHandlers } from './handlers/examine-management.handlers.js'; import { handlers as modelsBuilderHandlers } from './handlers/modelsbuilder.handlers.js'; +import { handlers as relationHandlers } from './handlers/relations/index.js'; import { handlers as healthCheckHandlers } from './handlers/health-check.handlers.js'; import { handlers as profilingHandlers } from './handlers/performance-profiling.handlers.js'; import { handlers as documentHandlers } from './handlers/document/index.js'; @@ -58,7 +58,7 @@ const handlers = [ ...profilingHandlers, ...publishedStatusHandlers, ...redirectManagementHandlers, - ...relationTypeHandlers, + ...relationHandlers, ...rteEmbedHandlers, ...scriptHandlers, ...staticFileHandlers, diff --git a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relation-type.handlers.ts b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relation-type.handlers.ts deleted file mode 100644 index ad208e5d65..0000000000 --- a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relation-type.handlers.ts +++ /dev/null @@ -1,76 +0,0 @@ -const { rest } = window.MockServiceWorker; -import { umbRelationTypeData } from '../data/relation-type.data.js'; -import { umbracoPath } from '@umbraco-cms/backoffice/utils'; - -// TODO: add schema -export const handlers = [ - rest.delete('/umbraco/backoffice/relation-type/:id', async (req, res, ctx) => { - const id = req.params.id as string; - if (!id) return; - - umbRelationTypeData.delete([id]); - - return res(ctx.status(200)); - }), - - rest.get('/umbraco/management/api/v1/tree/relation-type/root', (req, res, ctx) => { - const rootItems = umbRelationTypeData.getTreeRoot(); - const response = { - total: rootItems.length, - items: rootItems, - }; - return res(ctx.status(200), ctx.json(response)); - }), - - rest.get('/umbraco/management/api/v1/tree/relation-type/children', (req, res, ctx) => { - const parentId = req.url.searchParams.get('parentId'); - if (!parentId) return; - - const children = umbRelationTypeData.getTreeItemChildren(parentId); - - const response = { - total: children.length, - items: children, - }; - - return res(ctx.status(200), ctx.json(response)); - }), - - rest.get('/umbraco/management/api/v1/tree/relation-type/item', (req, res, ctx) => { - const ids = req.url.searchParams.getAll('id'); - if (!ids) return; - const items = umbRelationTypeData.getTreeItem(ids); - return res(ctx.status(200), ctx.json(items)); - }), - - rest.get(umbracoPath('/relation-type/:id'), (req, res, ctx) => { - const id = req.params.id as string; - if (!id) return; - - const RelationType = umbRelationTypeData.getById(id); - - return res(ctx.status(200), ctx.json(RelationType)); - }), - - rest.post(umbracoPath('/relation-type/:id'), async (req, res, ctx) => { - const id = req.params.id as string; - if (!id) return; - const data = await req.json(); - if (!data) return; - - umbRelationTypeData.insert(data); - - return res(ctx.status(200)); - }), - - rest.put(umbracoPath('/relation-type/:id'), async (req, res, ctx) => { - const id = req.params.id as string; - if (!id) return; - const data = await req.json(); - if (!data) return; - - umbRelationTypeData.save(id, data); - - return res(ctx.status(200)); - }), -]; diff --git a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/index.ts b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/index.ts new file mode 100644 index 0000000000..4903a21656 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/index.ts @@ -0,0 +1 @@ +export * from './relation-types/index.js'; diff --git a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/detail.handlers.ts b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/detail.handlers.ts new file mode 100644 index 0000000000..4f7cf607ba --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/detail.handlers.ts @@ -0,0 +1,47 @@ +const { rest } = window.MockServiceWorker; +import { umbRelationTypeData } from '../../../data/relation-type.data.js'; +import { UMB_SLUG } from './slug.js'; +import { umbracoPath } from '@umbraco-cms/backoffice/utils'; + +// TODO: add schema +export const handlers = [ + rest.delete(umbracoPath(`${UMB_SLUG}/:id`), async (req, res, ctx) => { + const id = req.params.id as string; + if (!id) return; + + umbRelationTypeData.delete([id]); + + return res(ctx.status(200)); + }), + + rest.get(umbracoPath(`${UMB_SLUG}/:id`), (req, res, ctx) => { + const id = req.params.id as string; + if (!id) return; + + const RelationType = umbRelationTypeData.getById(id); + + return res(ctx.status(200), ctx.json(RelationType)); + }), + + rest.post(umbracoPath(`${UMB_SLUG}/:id`), async (req, res, ctx) => { + const id = req.params.id as string; + if (!id) return; + const data = await req.json(); + if (!data) return; + + umbRelationTypeData.insert(data); + + return res(ctx.status(200)); + }), + + rest.put(umbracoPath(`${UMB_SLUG}/:id`), async (req, res, ctx) => { + const id = req.params.id as string; + if (!id) return; + const data = await req.json(); + if (!data) return; + + umbRelationTypeData.save(id, data); + + return res(ctx.status(200)); + }), +]; diff --git a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/index.ts b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/index.ts new file mode 100644 index 0000000000..865bbcb066 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/index.ts @@ -0,0 +1,4 @@ +import { handlers as detailHandlers } from './detail.handlers.js'; +import { handlers as treeHandlers } from './tree.handlers.js'; + +export const handlers = [...detailHandlers, ...treeHandlers]; diff --git a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/slug.ts b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/slug.ts new file mode 100644 index 0000000000..16aae5847e --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/slug.ts @@ -0,0 +1 @@ +export const UMB_SLUG = '/relation-type'; diff --git a/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/tree.handlers.ts b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/tree.handlers.ts new file mode 100644 index 0000000000..c33fae2727 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/mocks/handlers/relations/relation-types/tree.handlers.ts @@ -0,0 +1,36 @@ +const { rest } = window.MockServiceWorker; +import { umbRelationTypeData } from '../../../data/relation-type.data.js'; +import { UMB_SLUG } from './slug.js'; +import { umbracoPath } from '@umbraco-cms/backoffice/utils'; + +export const handlers = [ + rest.get(umbracoPath(`/tree${UMB_SLUG}/root`), (req, res, ctx) => { + const rootItems = umbRelationTypeData.getTreeRoot(); + const response = { + total: rootItems.length, + items: rootItems, + }; + return res(ctx.status(200), ctx.json(response)); + }), + + rest.get(umbracoPath(`/tree${UMB_SLUG}/children`), (req, res, ctx) => { + const parentId = req.url.searchParams.get('parentId'); + if (!parentId) return; + + const children = umbRelationTypeData.getTreeItemChildren(parentId); + + const response = { + total: children.length, + items: children, + }; + + return res(ctx.status(200), ctx.json(response)); + }), + + rest.get(umbracoPath(`/tree${UMB_SLUG}/item`), (req, res, ctx) => { + const ids = req.url.searchParams.getAll('id'); + if (!ids) return; + const items = umbRelationTypeData.getTreeItem(ids); + return res(ctx.status(200), ctx.json(items)); + }), +];