This commit is contained in:
Julia Gru
2023-09-06 13:17:44 +02:00
committed by Jacob Overgaard
parent 863372a995
commit a968aff382
7 changed files with 39 additions and 16 deletions

View File

@@ -2,16 +2,33 @@ import { ScriptResponseModel } from '@umbraco-cms/backoffice/backend-api';
export type ScriptDetails = ScriptResponseModel;
//ENTITY TYPES
export const SCRIPTS_ENTITY_TYPE = 'script';
export const SCRIPTS_ROOT_ENTITY_TYPE = 'script-root';
export const SCRIPTS_FOLDER_ENTITY_TYPE = 'script-folder';
export const SCRIPTS_FOLDER_EMPTY_ENTITY_TYPE = 'script-folder-empty';
export const SCRIPTS_REPOSITORY_ALIAS = 'Umb.Repository.Scripts';
export const SCRIPTS_TREE_ALIAS = 'Umb.Tree.Scripts';
export const SCRIPTS_STORE_ALIAS = 'Umb.Store.Scripts';
export const SCRIPTS_TREE_STORE_ALIAS = 'Umb.Store.Scripts.Tree';
export const UMB_SCRIPTS_TREE_STORE_CONTEXT_TOKEN_ALIAS = 'Umb.Store.Scripts.Tree.Context.Token';
export const UMB_SCRIPTS_STORE_CONTEXT_TOKEN_ALIAS = 'Umb.Store.Scripts.Context.Token';
export const SCRIPTS_REPOSITORY_ALIAS = 'Umb.Repository.Scripts';
export const SCRIPTS_MENU_ITEM_ALIAS = 'Umb.MenuItem.Scripts';
//TREE
export const SCRIPTS_TREE_ALIAS = 'Umb.Tree.Scripts';
export const SCRIPTS_TREE_ITEM_ALIAS = 'Umb.TreeItem.Scripts';
export const SCRIPTS_TREE_STORE_ALIAS = 'Umb.Store.Scripts.Tree';
export const UMB_SCRIPTS_TREE_STORE_CONTEXT_TOKEN_ALIAS = 'Umb.Store.Scripts.Tree.Context.Token';
//ENTITY (tree) ACTIONS
export const SCRIPTS_ENTITY_ACTION_DELETE_ALIAS = 'Umb.EntityAction.Scripts.Delete';
export const SCRIPTS_ENTITY_ACTION_CREATE_NEW_ALIAS = 'Umb.EntityAction.ScriptsFolder.Create.New';
export const SCRIPTS_ENTITY_ACTION_DELETE_FOLDER_ALIAS = 'Umb.EntityAction.ScriptsFolder.DeleteFolder';
export const SCRIPTS_ENTITY_ACTION_CREATE_FOLDER_NEW_ALIAS = 'Umb.EntityAction.ScriptsFolder.CreateFolder';
//WORKSPACE
export const SCRIPTS_WORKSPACE_ALIAS = 'Umb.Workspace.Scripts';
export const SCRIPTS_WORKSPACE_ACTION_SAVE_ALIAS = 'Umb.WorkspaceAction.Scripts.Save';

View File

@@ -4,6 +4,10 @@ import {
SCRIPTS_FOLDER_ENTITY_TYPE,
SCRIPTS_ROOT_ENTITY_TYPE,
SCRIPTS_FOLDER_EMPTY_ENTITY_TYPE,
SCRIPTS_ENTITY_ACTION_DELETE_ALIAS,
SCRIPTS_ENTITY_ACTION_CREATE_NEW_ALIAS,
SCRIPTS_ENTITY_ACTION_DELETE_FOLDER_ALIAS,
SCRIPTS_ENTITY_ACTION_CREATE_FOLDER_NEW_ALIAS,
} from '../config.js';
import { UmbCreateScriptAction } from './create/create-empty.action.js';
import {
@@ -16,7 +20,7 @@ import { ManifestEntityAction } from '@umbraco-cms/backoffice/extension-registry
const scriptsViewActions: Array<ManifestEntityAction> = [
{
type: 'entityAction',
alias: 'Umb.EntityAction.Scripts.Delete',
alias: SCRIPTS_ENTITY_ACTION_DELETE_ALIAS,
name: 'Delete Scripts Entity Action',
meta: {
icon: 'umb:trash',
@@ -31,7 +35,7 @@ const scriptsViewActions: Array<ManifestEntityAction> = [
const scriptsFolderActions: Array<ManifestEntityAction> = [
{
type: 'entityAction',
alias: 'Umb.EntityAction.ScriptsFolder.Create.New',
alias: SCRIPTS_ENTITY_ACTION_CREATE_NEW_ALIAS,
name: 'Create Scripts Entity Under Directory Action',
meta: {
icon: 'umb:article',
@@ -43,7 +47,7 @@ const scriptsFolderActions: Array<ManifestEntityAction> = [
},
{
type: 'entityAction',
alias: 'Umb.EntityAction.ScriptsFolder.DeleteFolder',
alias: SCRIPTS_ENTITY_ACTION_DELETE_FOLDER_ALIAS,
name: 'Remove empty folder',
meta: {
icon: 'umb:trash',
@@ -55,7 +59,7 @@ const scriptsFolderActions: Array<ManifestEntityAction> = [
},
{
type: 'entityAction',
alias: 'Umb.EntityAction.ScriptsFolder.CreateFolder',
alias: SCRIPTS_ENTITY_ACTION_CREATE_FOLDER_NEW_ALIAS,
name: 'Create empty folder',
meta: {
icon: 'umb:add',

View File

@@ -1 +1,2 @@
export * from './repository/index.js';
export * from './config.js';

View File

@@ -1,10 +1,10 @@
import { SCRIPTS_ENTITY_TYPE, SCRIPTS_TREE_ALIAS } from '../config.js';
import { SCRIPTS_ENTITY_TYPE, SCRIPTS_MENU_ITEM_ALIAS, SCRIPTS_TREE_ALIAS } from '../config.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
const menuItem: ManifestTypes = {
type: 'menuItem',
kind: 'tree',
alias: 'Umb.MenuItem.Scripts',
alias: SCRIPTS_MENU_ITEM_ALIAS,
name: 'Scripts Menu Item',
weight: 10,
meta: {

View File

@@ -1,3 +1,4 @@
import { SCRIPTS_ROOT_ENTITY_TYPE } from '../config.js';
import { UmbScriptsTreeServerDataSource } from './sources/scripts.tree.server.data.js';
import { UmbScriptsServerDataSource } from './sources/scripts.detail.server.data.js';
import { ScriptsGetFolderResponse, UmbScriptsFolderServerDataSource } from './sources/scripts.folder.server.data.js';
@@ -24,7 +25,6 @@ import {
import { UmbContextConsumerController } from '@umbraco-cms/backoffice/context-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api';
import { Observable } from '@umbraco-cms/backoffice/external/rxjs';
import { SCRIPTS_ROOT_ENTITY_TYPE } from '../config.js';
export class UmbScriptsRepository
implements

View File

@@ -3,6 +3,7 @@ import {
SCRIPTS_REPOSITORY_ALIAS,
SCRIPTS_ROOT_ENTITY_TYPE,
SCRIPTS_TREE_ALIAS,
SCRIPTS_TREE_ITEM_ALIAS,
} from '../config.js';
import type { ManifestTree, ManifestTreeItem } from '@umbraco-cms/backoffice/extension-registry';
@@ -19,7 +20,7 @@ const tree: ManifestTree = {
const treeItem: ManifestTreeItem = {
type: 'treeItem',
kind: 'fileSystem',
alias: 'Umb.TreeItem.Scripts',
alias: SCRIPTS_TREE_ITEM_ALIAS,
name: 'Scripts Tree Item',
meta: {
entityTypes: [SCRIPTS_ROOT_ENTITY_TYPE, SCRIPTS_ENTITY_TYPE],

View File

@@ -1,10 +1,10 @@
import { SCRIPTS_ENTITY_TYPE } from '../config.js';
import { SCRIPTS_ENTITY_TYPE, SCRIPTS_WORKSPACE_ACTION_SAVE_ALIAS, SCRIPTS_WORKSPACE_ALIAS } from '../config.js';
import { UmbSaveWorkspaceAction } from '@umbraco-cms/backoffice/workspace';
import type { ManifestWorkspace, ManifestWorkspaceAction } from '@umbraco-cms/backoffice/extension-registry';
const workspace: ManifestWorkspace = {
type: 'workspace',
alias: 'Umb.Workspace.Scripts',
alias: SCRIPTS_WORKSPACE_ALIAS,
name: 'Scripts Workspace',
loader: () => import('./scripts-workspace.element.js'),
meta: {
@@ -15,7 +15,7 @@ const workspace: ManifestWorkspace = {
const workspaceActions: Array<ManifestWorkspaceAction> = [
{
type: 'workspaceAction',
alias: 'Umb.WorkspaceAction.Scripts.Save',
alias: SCRIPTS_WORKSPACE_ACTION_SAVE_ALIAS,
name: 'Save Scripts Workspace Action',
weight: 70,
meta: {