diff --git a/package.json b/package.json
index be97cc107..3865bae88 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "2sxc-ui",
- "version": "14.07.00",
+ "version": "14.07.03",
"description": "2sxc UI - the JS UI of 2sxc",
"scripts": {
"release-all": "npm run js2sxc && npm run inpage && npm run snippets && npm run quickdialog && npm run turn-on",
diff --git a/projects/$2sxc/src/_/Window.ts b/projects/$2sxc/src/_/Window.ts
index 5476cde3d..3fbafcb78 100644
--- a/projects/$2sxc/src/_/Window.ts
+++ b/projects/$2sxc/src/_/Window.ts
@@ -5,15 +5,20 @@ import { SxcGlobal } from '../sxc-global';
* @public
*/
declare global {
- interface Window {
- /**
- * The global $2sxc object / function to generate Sxc instances
- */
- $2sxc: SxcGlobal;
+ interface Window {
+ /**
+ * The global $2sxc object / function to generate Sxc instances
+ */
+ $2sxc: SxcGlobal;
- /** @internal */
- $: any & DnnJQueryExtensions;
- }
+ /** @internal */
+ $: any & DnnJQueryExtensions;
+ }
+
+ /**
+ * The global $2sxc object / function to generate Sxc instances
+ */
+ const $2sxc: SxcGlobal;
}
/** @internal */
diff --git a/projects/$2sxc/src/cms/command-names.ts b/projects/$2sxc/src/cms/command-names.ts
index aa13f04c2..c90117567 100644
--- a/projects/$2sxc/src/cms/command-names.ts
+++ b/projects/$2sxc/src/cms/command-names.ts
@@ -11,7 +11,8 @@
* Names of commands known to 2sxc CMS - for use in toolbars and calling commands directly from code
* @public
*/
-export enum CommandNames {
+// IMPORTANT: this must be a `const enum`, otherwise it won't work in d.ts files
+export const enum CommandNames {
/**
* `add` adds another demo-item to a **list of items**.
* It does not open the edit-dialog.
@@ -114,6 +115,7 @@ export enum CommandNames {
* `code` will execute custom javascript.
*
🔘 This is mainly for toolbars, to add buttons with custom code.
*
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)
+ *
_this used to be called `custom` and had a different setup_
*/
code = 'code',
diff --git a/projects/$2sxc/src/cms/command-params.ts b/projects/$2sxc/src/cms/command-params.ts
index 973912498..086c7970c 100644
--- a/projects/$2sxc/src/cms/command-params.ts
+++ b/projects/$2sxc/src/cms/command-params.ts
@@ -2,73 +2,127 @@
import { TypeValue } from '../../../inpage/src/plumbing';
/**
- * Command parameters are handed over to a command for execution
+ * Command parameters are handed over to a command for execution.
+ * It contains all possible combinations of parameters that can be used in a command.
+ *
+ * We will try to improve how this is documented, but ATM it just has all parameters,
+ * even though you may need none, or just a few.
+ *
+ * _Note: For your specific commands, you can also pass other parameters._
+ *
+ * **Important for the docs**
+ *
+ * Most properties are actually not visible (you will get them in the types though).
+ * So actually you will usually create one of these:
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityById)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * * [](xref:Api.Js.SxcJs.CommandAddParams)
+ * * [](xref:Api.Js.SxcJs.CommandAddExistingParams)
+ * * [](xref:Api.Js.SxcJs.CommandDataParams)
+ * * [](xref:Api.Js.SxcJs.CommandCopyParams)
+ * * [](xref:Api.Js.SxcJs.CommandCodeParams)
+ * * [](xref:Api.Js.SxcJs.CommandDeleteParams)
+ * * [](xref:Api.Js.SxcJs.CommandMetadataParams)
+ * * [](xref:Api.Js.SxcJs.CommandNewParams)
+ *
+ * Because of this, most of the properties below are NOT documented, as their purpose can change depending on the command used.
* @public
*/
-export interface CommandParams {
+export interface CommandParams extends Record
+ // We cannot extend from the real parameters, because this won't make it into the documentation
+ // extends Partial, Partial
+ {
/**
* The action is used in scenarios where the command name must be included
+ * @internal - wait with publishing this, it shouldn't actually be here. we may need to create another type which includes it
*/
action?: CommandNames;
/** @internal */
items?: Array;
- /** @internal */
+
+ /**
+ * Special change of dialogs, for example to change the edit-dialog into a new-dialog.
+ * @internal - not sure how this matches / replaces dialog, probably internal only
+ */
mode?: string;
// both contentType and contentTypeName were used historically, so both variations may exist in Razor templaets
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
contentType?: string;
- /** @internal */
+ /** @internal old */
contentTypeName?: string;
/** @internal */
pipelineId?: number;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
filters?: string;
/** @internal */
dialog?: string;
/**
* @internal
- * @deprecated but probably still in use
+ * @deprecated but still in use
*/
sortOrder?: number;
/**
- * Position in a list (content-block or field of another entity)
- * index was added in v14.04 to replace the `sortOrder` which had a confusing name.
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
index?: number;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
entityId?: number;
- /**
- * The guid - for people creating custom toolbars before 10.27 or automatically added since 10.27
- * @internal
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
entityGuid?: string;
- /**
- * The manually added title from before 10.27 - automatically enabled the delete-button
- * @internal
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
entityTitle?: string;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
title?: string;
- /** @internal */
- useModuleList?: boolean;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ useModuleList?: true;
+
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
metadata?: CommandParamsMetadata;
/** @internal */
isPublished?: boolean;
- /** @internal */
- prefill?: Record;
+
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ prefill?: Record;
/**
* Custom Code in the previous V9 standard
@@ -76,9 +130,9 @@ export interface CommandParams {
*/
customCode?: string;
- /**
- * Custom Code function name only in the new V10.27 standard
- * @internal
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
call?: string;
@@ -89,14 +143,14 @@ export interface CommandParams {
*/
apps?: string;
- /**
- * Experimental in 10.27
- * @internal
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
parent?: string;
- /**
- * Experimental in 10.27
- * @internal
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
fields?: string;
diff --git a/projects/$2sxc/src/cms/run-params.ts b/projects/$2sxc/src/cms/run-params.ts
index 9878559e8..c819124b6 100644
--- a/projects/$2sxc/src/cms/run-params.ts
+++ b/projects/$2sxc/src/cms/run-params.ts
@@ -16,8 +16,7 @@ export interface RunParams {
/**
* The command params, like contentType, entityId etc.
- * Optional for many actions, but can themselves also contain the property `action`, in which case action can be ommited.
- * @internal
+ * Optional for many actions.
*/
params?: CommandParams;
diff --git a/projects/$2sxc/src/index.ts b/projects/$2sxc/src/index.ts
index 5fb9e4741..86c698e1b 100644
--- a/projects/$2sxc/src/index.ts
+++ b/projects/$2sxc/src/index.ts
@@ -21,5 +21,3 @@ export * from './cms';
export * from './sxc';
export * from './sxc-global';
-
-(window as any).beta = new ToolUrlObjects();
\ No newline at end of file
diff --git a/projects/inpage/src/commands/command/command-content-type.ts b/projects/inpage/src/commands/command/command-content-type.ts
index f8578e85a..36b983158 100644
--- a/projects/inpage/src/commands/command/command-content-type.ts
+++ b/projects/inpage/src/commands/command/command-content-type.ts
@@ -1,4 +1,4 @@
-import { Command, CommandContentTypeParams, CommandNames, Commands } from '..';
+import { Command, CommandContentTypeParams, CommandNames, CommandParams, Commands } from '..';
import { ContextComplete } from '../../context';
/**
@@ -23,7 +23,7 @@ Commands.addCommand(Command.clone(cmd, CommandNames.fields_old_contenttype));
/**
* @internal
*/
-export function createContentTypeParams(context: ContextComplete) {
+export function createContentTypeParams(context: ContextComplete): { contentType: string } {
const result: CommandContentTypeParams = {
contentType: context.button.command.params.contentType
|| context.contentBlock.contentTypeId,
diff --git a/projects/inpage/src/commands/command/command-params-entity.ts b/projects/inpage/src/commands/command/command-params-entity.ts
index 39cec1942..57e476488 100644
--- a/projects/inpage/src/commands/command/command-params-entity.ts
+++ b/projects/inpage/src/commands/command/command-params-entity.ts
@@ -21,6 +21,7 @@
export interface CommandParamsEntityInContentBlock {
/**
* Determins the position of the item in the list.
+ * index was added in v14.04 to replace the `sortOrder` which had a confusing name.
*/
index: number;
diff --git a/projects/inpage/src/commands/engine/cms-engine.ts b/projects/inpage/src/commands/engine/cms-engine.ts
index 7a491f16a..f57e65176 100644
--- a/projects/inpage/src/commands/engine/cms-engine.ts
+++ b/projects/inpage/src/commands/engine/cms-engine.ts
@@ -1,4 +1,5 @@
import { RunParams } from '../../../../$2sxc/src/cms';
+import { CommandParams } from '../../../../$2sxc/src/cms';
import { RunParamsHelpers } from '../../cms/run-params-helpers';
import { ContentBlockEditor } from '../../contentBlock/content-block-editor';
import { renderer } from '../../contentBlock/render';
@@ -11,9 +12,8 @@ import { ButtonCommand } from '../../toolbar/config';
import { InPageButtonJson } from '../../toolbar/config-loaders/config-formats/in-page-button';
import { WorkflowHelper, WorkflowPhases, WorkflowStepCodeArguments } from '../../workflow';
import { ToolbarWorkflowManager } from '../../workflow/toolbar-workflow-manager';
-import { CommandLinkGenerator } from '../command-link-generator';
-import { CommandParams } from '../../../../$2sxc/src/cms';
import { WorkflowStep } from '../../workflow/workflow-step';
+import { CommandLinkGenerator } from '../command-link-generator';
type CommandPromise = Promise;
@@ -75,12 +75,14 @@ export class CmsEngine extends HasLog {
const origEvent = event;
const name = cmdParams.action;
- const contentType = cmdParams.contentType;
- cl.add(`run command '${name}' for type ${contentType}`);
+ // 2dm 2022-07-05 #badContentTypeExtractAndRefill - we seem to extract it, just to put it back on the ButtonCommand
+ // const contentType = cmdParams.contentType;
+ // cl.add(`run command '${name}' for type ${contentType}`);
+ cl.add(`run command '${name}'`);
// Toolbar API v2
- const command = new ButtonCommand(name, contentType, cmdParams);
- const newButtonConfig = new Button(command, command.name);
+ const btnCommand = new ButtonCommand(name, /* contentType, */ cmdParams);
+ const newButtonConfig = new Button(btnCommand, btnCommand.name);
// merge conf & settings, but settings has higher priority
const button: Button = {
@@ -124,8 +126,7 @@ export class CmsEngine extends HasLog {
} else {
// if more than just a UI-action, then it needs to be sure the content-group is created first
cl.add('command might change data, wrap in pre-flight to ensure content-block');
- finalPromise = wrapperPromise.then(
- (wfArgs) => WorkflowHelper.isCancelled(wfArgs)
+ finalPromise = wrapperPromise.then((wfArgs) => WorkflowHelper.isCancelled(wfArgs)
? Promise.resolve(null)
: ContentBlockEditor.singleton()
.prepareToAddContent(context, cmdParams.useModuleList)
diff --git a/projects/inpage/src/sxc/sxc-cms-real.ts b/projects/inpage/src/sxc/sxc-cms-real.ts
index 6d318d92c..6cc353270 100644
--- a/projects/inpage/src/sxc/sxc-cms-real.ts
+++ b/projects/inpage/src/sxc/sxc-cms-real.ts
@@ -25,7 +25,7 @@ export class SxcCmsReal extends SxcCms {
*/
run(runParams: RunParams): Promise {
RunParamsHelpers.ensureRunParamsInstanceOrError(runParams);
- return new SxcGlobalCms().run({ ...runParams, context: this.sxc });
+ return new SxcGlobalCms().runInternal({ ...runParams, context: this.sxc });
}
// runTemplateDevelop() {
diff --git a/projects/inpage/src/toolbar/config-loaders/command-config-loader.ts b/projects/inpage/src/toolbar/config-loaders/command-config-loader.ts
index a5b0609f1..e9691af4e 100644
--- a/projects/inpage/src/toolbar/config-loaders/command-config-loader.ts
+++ b/projects/inpage/src/toolbar/config-loaders/command-config-loader.ts
@@ -1,5 +1,6 @@
import { ToolbarConfigLoader } from '.';
-import { InPageCommandJson, InPageCommandJsonWithTooMuchInfo } from '.';
+import { InPageCommandJsonWithTooMuchInfo } from '.';
+import { CommandParams } from '../../../../$2sxc/src/cms';
import { HasLog } from '../../core';
/**
@@ -16,23 +17,24 @@ export class CommandConfigLoader extends HasLog {
* because the target item could be specified directly, or in a complex internal object called entity
* @param actDef
*/
- updateToV9(actDef: InPageCommandJsonWithTooMuchInfo): InPageCommandJson {
+ updateToV9(actDef: InPageCommandJsonWithTooMuchInfo): CommandParams {
// doesn't have the pre-V9 properties, so we're fine
if (!actDef.entity || !actDef.entity._2sxcEditInformation)
- return actDef as InPageCommandJson;
+ return actDef as CommandParams;
const editInfo = actDef.entity._2sxcEditInformation;
// move up sortOrder property and set useModuleList
- actDef.useModuleList = (editInfo.sortOrder !== undefined); // has sort-order, so use list
+ if (editInfo.sortOrder !== undefined)
+ actDef.useModuleList = true; // has sort-order, so use list
if (editInfo.sortOrder !== undefined) actDef.sortOrder = editInfo.sortOrder;
// move up entityId and clean-up the old 'entity' property
if (actDef.entity.EntityId !== undefined) actDef.entityId = actDef.entity.EntityId;
delete actDef.entity;
- return actDef;
+ return actDef as unknown as CommandParams;
}
}
diff --git a/projects/inpage/src/toolbar/config-loaders/config-formats/in-page-command.ts b/projects/inpage/src/toolbar/config-loaders/config-formats/in-page-command.ts
index 2e836b544..9c010a3d1 100644
--- a/projects/inpage/src/toolbar/config-loaders/config-formats/in-page-command.ts
+++ b/projects/inpage/src/toolbar/config-loaders/config-formats/in-page-command.ts
@@ -26,7 +26,7 @@ export class InPageCommandJson {
contentType?: string;
/** determines that we should use a module list */
- useModuleList?: boolean;
+ useModuleList?: true;
/** index in the list */
sortOrder?: number;
diff --git a/projects/inpage/src/toolbar/config-loaders/group-config-loader.ts b/projects/inpage/src/toolbar/config-loaders/group-config-loader.ts
index 08ba2f1b0..69645f4f2 100644
--- a/projects/inpage/src/toolbar/config-loaders/group-config-loader.ts
+++ b/projects/inpage/src/toolbar/config-loaders/group-config-loader.ts
@@ -1,6 +1,7 @@
import { ToolbarWip } from '.';
import { InPageButtonJson, InPageCommandJson } from '.';
import { ButtonGroupWip } from '.';
+import { RunParams } from '../../../../$2sxc/src/cms';
import { CommandNames, CommandParams, Commands } from '../../commands';
import { HasLog } from '../../core';
import { TypeValue } from '../../plumbing';
@@ -72,10 +73,10 @@ export class ButtonGroupConfigLoader extends HasLog {
}
// first check if we already got params in the object - then we will use those, otherwise the main object
- const realParams = (btnCommand as ButtonCommand).params
- || InPageCommandJson.noAction(btnCommand);
+ const realParams = (btnCommand as RunParams).params || InPageCommandJson.noAction(btnCommand);
- const contentType = realParams.contentType;
+ // 2dm 2022-07-05 #badContentTypeExtractAndRefill - we seem to extract it, just to put it back on the ButtonCommand
+ // const contentType = realParams.contentType;
// if the button belongs to a content-item, move the specs up to the item into the settings-object
btnCommand = this.toolbar.command.updateToV9(btnCommand);
@@ -83,7 +84,7 @@ export class ButtonGroupConfigLoader extends HasLog {
// parameters adapter from v1 to v2
const params = { ...realParams, ...sharedParams };
// Toolbar API v2
- const command = new ButtonCommand(name, contentType, params);
+ const command = new ButtonCommand(name, /* contentType, */ params);
let newButtonConfig = new Button(command, identifier);
// settings adapter from v1 to v2
diff --git a/projects/inpage/src/toolbar/config/button-command.ts b/projects/inpage/src/toolbar/config/button-command.ts
index 530ad999e..67b09ba3b 100644
--- a/projects/inpage/src/toolbar/config/button-command.ts
+++ b/projects/inpage/src/toolbar/config/button-command.ts
@@ -9,9 +9,10 @@ export class ButtonCommand {
// customCode: string;
- constructor(public name: CommandNames, contentType?: string, public params?: CommandParams) {
+ constructor(public name: CommandNames, /* contentType?: string, */ public params?: CommandParams) {
if (!params) this.params = {};
- if (contentType) this.params.contentType = contentType;
+ // 2dm 2022-07-05 #badContentTypeExtractAndRefill - we seem to extract it, just to put it back on the ButtonCommand
+ // if (contentType) this.params.contentType = contentType;
this.command = Commands.singleton().get(name); // activate command for this
}
diff --git a/projects/sxc-angular/package-lock.json b/projects/sxc-angular/package-lock.json
index 530f76aab..060763e0d 100644
--- a/projects/sxc-angular/package-lock.json
+++ b/projects/sxc-angular/package-lock.json
@@ -21,7 +21,7 @@
"zone.js": "~0.11.6"
},
"devDependencies": {
- "@2sic.com/2sxc-typings": "^14.2.3",
+ "@2sic.com/2sxc-typings": "^14.7.1",
"@angular-devkit/build-angular": "^13.0.0",
"@angular/cli": "^13.0.0",
"@angular/compiler-cli": "^13.0.0",
@@ -46,9 +46,9 @@
}
},
"node_modules/@2sic.com/2sxc-typings": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@2sic.com/2sxc-typings/-/2sxc-typings-14.2.3.tgz",
- "integrity": "sha512-M8NNkzNIh3WmZUtxsFjG0NpMR+tSUkS5EzSHYz/uCnPLlBJTTpaJsXHpE/Y1H3bTxFklZUymnvNTcpdhFF2uGA==",
+ "version": "14.7.1",
+ "resolved": "https://registry.npmjs.org/@2sic.com/2sxc-typings/-/2sxc-typings-14.7.1.tgz",
+ "integrity": "sha512-0wcuVtt26zWbnLnMfskXm9bW0b19cd/BWAIbizNVkply0n18Stadm9KTNvjLBpdQ7Yhc+jScJAvjdc8RMnqY7A==",
"dev": true
},
"node_modules/@ampproject/remapping": {
@@ -207,64 +207,6 @@
}
}
},
- "node_modules/@angular-devkit/build-angular/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "node_modules/@angular-devkit/build-angular/node_modules/debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
"node_modules/@angular-devkit/build-angular/node_modules/esbuild": {
"version": "0.13.12",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.12.tgz",
@@ -315,15 +257,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/@angular-devkit/build-angular/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@angular-devkit/build-angular/node_modules/less": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz",
@@ -350,63 +283,6 @@
"source-map": "~0.6.0"
}
},
- "node_modules/@angular-devkit/build-angular/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
- "node_modules/@angular-devkit/build-angular/node_modules/nanoid": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
- "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
- "dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "dependencies": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/@angular-devkit/build-angular/node_modules/postcss": {
"version": "8.3.11",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
@@ -501,58 +377,6 @@
"source-map": "^0.6.0"
}
},
- "node_modules/@angular-devkit/build-angular/node_modules/stylus": {
- "version": "0.55.0",
- "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.55.0.tgz",
- "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
- "dev": true,
- "dependencies": {
- "css": "^3.0.0",
- "debug": "~3.1.0",
- "glob": "^7.1.6",
- "mkdirp": "~1.0.4",
- "safer-buffer": "^2.1.2",
- "sax": "~1.2.4",
- "semver": "^6.3.0",
- "source-map": "^0.7.3"
- },
- "bin": {
- "stylus": "bin/stylus"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/stylus/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/stylus/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@angular-devkit/build-angular/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@angular-devkit/build-angular/node_modules/terser": {
"version": "5.9.0",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz",
@@ -691,103 +515,6 @@
"yarn": ">= 1.13.0"
}
},
- "node_modules/@angular-devkit/schematics/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@angular-devkit/schematics/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@angular-devkit/schematics/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@angular-devkit/schematics/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "node_modules/@angular-devkit/schematics/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@angular-devkit/schematics/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@angular-devkit/schematics/node_modules/ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "dependencies": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/@angular-devkit/schematics/node_modules/rxjs": {
"version": "6.6.7",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
@@ -800,18 +527,6 @@
"npm": ">=2.0.0"
}
},
- "node_modules/@angular-devkit/schematics/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@angular-devkit/schematics/node_modules/tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
@@ -873,118 +588,21 @@
"yarn": ">= 1.13.0"
}
},
- "node_modules/@angular/cli/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@angular/cli/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/@angular/cli/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@angular/cli/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
"node_modules/@angular/cli/node_modules/debug": {
"version": "4.3.2",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
"integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
- "dev": true,
- "dependencies": {
- "ms": "2.1.2"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/@angular/cli/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@angular/cli/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@angular/cli/node_modules/ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "dependencies": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
+ "dev": true,
+ "dependencies": {
+ "ms": "2.1.2"
},
"engines": {
- "node": ">=10"
+ "node": ">=6.0"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
}
},
"node_modules/@angular/cli/node_modules/semver": {
@@ -1002,18 +620,6 @@
"node": ">=10"
}
},
- "node_modules/@angular/cli/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@angular/cli/node_modules/uuid": {
"version": "8.3.2",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
@@ -6411,18 +6017,6 @@
"node": ">=8"
}
},
- "node_modules/critters/node_modules/nanoid": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
- "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
- "dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
"node_modules/critters/node_modules/nth-check": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
@@ -6435,30 +6029,6 @@
"url": "https://github.com/fb55/nth-check?sponsor=1"
}
},
- "node_modules/critters/node_modules/postcss": {
- "version": "8.4.14",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
- "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
- "dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/postcss"
- }
- ],
- "dependencies": {
- "nanoid": "^3.3.4",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.2"
- },
- "engines": {
- "node": "^10 || ^12 || >=14"
- }
- },
"node_modules/critters/node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -6658,42 +6228,6 @@
"webpack": "^5.0.0"
}
},
- "node_modules/css-loader/node_modules/nanoid": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
- "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
- "dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "node_modules/css-loader/node_modules/postcss": {
- "version": "8.4.14",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
- "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
- "dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/postcss"
- }
- ],
- "dependencies": {
- "nanoid": "^3.3.4",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.2"
- },
- "engines": {
- "node": "^10 || ^12 || >=14"
- }
- },
"node_modules/css-loader/node_modules/semver": {
"version": "7.3.7",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
@@ -8866,12 +8400,6 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
- "node_modules/har-validator/node_modules/fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
"node_modules/has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
@@ -9507,45 +9035,6 @@
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
},
- "node_modules/inquirer/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/inquirer/node_modules/ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "dependencies": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/inquirer/node_modules/rxjs": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz",
@@ -10522,12 +10011,6 @@
"karma-jasmine": ">=1.1"
}
},
- "node_modules/karma-jasmine/node_modules/jasmine-core": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.6.0.tgz",
- "integrity": "sha512-8uQYa7zJN8hq9z+g8z1bqCfdC8eoDAeVnM5sfqs7KHv9/ifoJ500m018fpFc7RDaO6SWCLCXwo/wPSNcdYTgcw==",
- "dev": true
- },
"node_modules/karma-source-map-support": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz",
@@ -10552,15 +10035,6 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/karma/node_modules/camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/karma/node_modules/cliui": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
@@ -14575,18 +14049,6 @@
"node": ">=4"
}
},
- "node_modules/postcss-selector-parser/node_modules/cssesc": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
- "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
- "dev": true,
- "bin": {
- "cssesc": "bin/cssesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/postcss-url": {
"version": "10.1.3",
"resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz",
@@ -14773,15 +14235,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/protractor/node_modules/camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/protractor/node_modules/chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
@@ -17381,25 +16834,6 @@
"typescript": ">=2.0"
}
},
- "node_modules/ts-node/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ts-node/node_modules/source-map-support": {
- "version": "0.5.16",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz",
- "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==",
- "dev": true,
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
"node_modules/tslib": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz",
@@ -18557,9 +17991,9 @@
},
"dependencies": {
"@2sic.com/2sxc-typings": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@2sic.com/2sxc-typings/-/2sxc-typings-14.2.3.tgz",
- "integrity": "sha512-M8NNkzNIh3WmZUtxsFjG0NpMR+tSUkS5EzSHYz/uCnPLlBJTTpaJsXHpE/Y1H3bTxFklZUymnvNTcpdhFF2uGA==",
+ "version": "14.7.1",
+ "resolved": "https://registry.npmjs.org/@2sic.com/2sxc-typings/-/2sxc-typings-14.7.1.tgz",
+ "integrity": "sha512-0wcuVtt26zWbnLnMfskXm9bW0b19cd/BWAIbizNVkply0n18Stadm9KTNvjLBpdQ7Yhc+jScJAvjdc8RMnqY7A==",
"dev": true
},
"@ampproject/remapping": {
@@ -18637,84 +18071,41 @@
"https-proxy-agent": "5.0.0",
"inquirer": "8.2.0",
"karma-source-map-support": "1.4.0",
- "less": "4.1.2",
- "less-loader": "10.2.0",
- "license-webpack-plugin": "3.0.0",
- "loader-utils": "3.0.0",
- "mini-css-extract-plugin": "2.4.3",
- "minimatch": "3.0.4",
- "open": "8.4.0",
- "ora": "5.4.1",
- "parse5-html-rewriting-stream": "6.0.1",
- "piscina": "3.1.0",
- "postcss": "8.3.11",
- "postcss-import": "14.0.2",
- "postcss-loader": "6.2.0",
- "postcss-preset-env": "6.7.0",
- "regenerator-runtime": "0.13.9",
- "resolve-url-loader": "4.0.0",
- "rxjs": "6.6.7",
- "sass": "1.43.4",
- "sass-loader": "12.3.0",
- "semver": "7.3.5",
- "source-map-loader": "3.0.0",
- "source-map-support": "0.5.20",
- "stylus": "0.55.0",
- "stylus-loader": "6.2.0",
- "terser": "5.9.0",
- "text-table": "0.2.0",
- "tree-kill": "1.2.2",
- "tslib": "2.3.1",
- "webpack": "5.60.0",
- "webpack-dev-middleware": "5.2.1",
- "webpack-dev-server": "4.4.0",
- "webpack-merge": "5.8.0",
- "webpack-subresource-integrity": "5.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
+ "less": "4.1.2",
+ "less-loader": "10.2.0",
+ "license-webpack-plugin": "3.0.0",
+ "loader-utils": "3.0.0",
+ "mini-css-extract-plugin": "2.4.3",
+ "minimatch": "3.0.4",
+ "open": "8.4.0",
+ "ora": "5.4.1",
+ "parse5-html-rewriting-stream": "6.0.1",
+ "piscina": "3.1.0",
+ "postcss": "8.3.11",
+ "postcss-import": "14.0.2",
+ "postcss-loader": "6.2.0",
+ "postcss-preset-env": "6.7.0",
+ "regenerator-runtime": "0.13.9",
+ "resolve-url-loader": "4.0.0",
+ "rxjs": "6.6.7",
+ "sass": "1.43.4",
+ "sass-loader": "12.3.0",
+ "semver": "7.3.5",
+ "source-map-loader": "3.0.0",
+ "source-map-support": "0.5.20",
+ "stylus": "0.55.0",
+ "stylus-loader": "6.2.0",
+ "terser": "5.9.0",
+ "text-table": "0.2.0",
+ "tree-kill": "1.2.2",
+ "tslib": "2.3.1",
+ "webpack": "5.60.0",
+ "webpack-dev-middleware": "5.2.1",
+ "webpack-dev-server": "4.4.0",
+ "webpack-merge": "5.8.0",
+ "webpack-subresource-integrity": "5.0.0"
+ },
+ "dependencies": {
"esbuild": {
"version": "0.13.12",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.12.tgz",
@@ -18755,12 +18146,6 @@
"path-is-absolute": "^1.0.0"
}
},
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
"less": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz",
@@ -18779,45 +18164,6 @@
"tslib": "^2.3.0"
}
},
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
- "nanoid": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
- "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
- "dev": true
- },
- "ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "requires": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- }
- },
"postcss": {
"version": "8.3.11",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
@@ -18886,45 +18232,6 @@
"source-map": "^0.6.0"
}
},
- "stylus": {
- "version": "0.55.0",
- "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.55.0.tgz",
- "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
- "dev": true,
- "requires": {
- "css": "^3.0.0",
- "debug": "~3.1.0",
- "glob": "^7.1.6",
- "mkdirp": "~1.0.4",
- "safer-buffer": "^2.1.2",
- "sax": "~1.2.4",
- "semver": "^6.3.0",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
- }
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
"terser": {
"version": "5.9.0",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz",
@@ -19029,73 +18336,6 @@
"rxjs": "6.6.7"
},
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
- "ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "requires": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- }
- },
"rxjs": {
"version": "6.6.7",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
@@ -19105,15 +18345,6 @@
"tslib": "^1.9.0"
}
},
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
"tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
@@ -19164,40 +18395,6 @@
"uuid": "8.3.2"
},
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
"debug": {
"version": "4.3.2",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
@@ -19207,39 +18404,6 @@
"ms": "2.1.2"
}
},
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
- "ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "requires": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- }
- },
"semver": {
"version": "7.3.5",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
@@ -19249,15 +18413,6 @@
"lru-cache": "^6.0.0"
}
},
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
"uuid": {
"version": "8.3.2",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
@@ -23406,12 +22561,6 @@
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
- "nanoid": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
- "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
- "dev": true
- },
"nth-check": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
@@ -23421,17 +22570,6 @@
"boolbase": "^1.0.0"
}
},
- "postcss": {
- "version": "8.4.14",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
- "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
- "dev": true,
- "requires": {
- "nanoid": "^3.3.4",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.2"
- }
- },
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -23584,23 +22722,6 @@
"semver": "^7.3.5"
},
"dependencies": {
- "nanoid": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
- "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
- "dev": true
- },
- "postcss": {
- "version": "8.4.14",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
- "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
- "dev": true,
- "requires": {
- "nanoid": "^3.3.4",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.2"
- }
- },
"semver": {
"version": "7.3.7",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
@@ -25232,12 +24353,6 @@
"json-schema-traverse": "^0.4.1",
"uri-js": "^4.2.2"
}
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
}
}
},
@@ -25748,33 +24863,6 @@
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
},
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
- "ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "requires": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- }
- },
"rxjs": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz",
@@ -26500,12 +25588,6 @@
"color-convert": "^2.0.1"
}
},
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- },
"cliui": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
@@ -26624,14 +25706,6 @@
"dev": true,
"requires": {
"jasmine-core": "^3.6.0"
- },
- "dependencies": {
- "jasmine-core": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.6.0.tgz",
- "integrity": "sha512-8uQYa7zJN8hq9z+g8z1bqCfdC8eoDAeVnM5sfqs7KHv9/ifoJ500m018fpFc7RDaO6SWCLCXwo/wPSNcdYTgcw==",
- "dev": true
- }
}
},
"karma-jasmine-html-reporter": {
@@ -29544,14 +28618,6 @@
"indexes-of": "^1.0.1",
"uniq": "^1.0.1",
"util-deprecate": "^1.0.2"
- },
- "dependencies": {
- "cssesc": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
- "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
- "dev": true
- }
}
},
"postcss-url": {
@@ -29692,12 +28758,6 @@
"array-uniq": "^1.0.1"
}
},
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- },
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
@@ -31729,24 +30789,6 @@
"make-error": "^1.1.1",
"source-map-support": "^0.5.6",
"yn": "^3.0.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- },
- "source-map-support": {
- "version": "0.5.16",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz",
- "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- }
}
},
"tslib": {
diff --git a/projects/sxc-angular/package.json b/projects/sxc-angular/package.json
index 3b99d1cd9..ddeab0df1 100644
--- a/projects/sxc-angular/package.json
+++ b/projects/sxc-angular/package.json
@@ -6,6 +6,8 @@
"dsa-copy:dist": "cpx \"dist/sxc-angular/{,**/}*.**.*\" \"../../../app-dnn-sxc-angular-dev/node_modules/@2sic.com/dnn-sxc-angular\" -w",
"dsa-copy:2dm": "cpx \"dist/sxc-angular/{,**/}*.**.*\" \"../../../app-Directory/node_modules/@2sic.com/dnn-sxc-angular\" -w -v",
"dsa-copy:template-ng11": "cpx \"dist/sxc-angular/{,**/}*.*\" \"/Projects/2sxc/app-template-angular/ng/node_modules/@2sic.com/dnn-sxc-angular\" -v",
+ "pub-dry": "cd dist/sxc-angular && npm publish --dry-run",
+ "pub": "cd dist/sxc-angular && npm publish",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
@@ -25,7 +27,7 @@
"zone.js": "~0.11.6"
},
"devDependencies": {
- "@2sic.com/2sxc-typings": "^14.2.3",
+ "@2sic.com/2sxc-typings": "^14.7.1",
"@angular-devkit/build-angular": "^13.0.0",
"@angular/cli": "^13.0.0",
"@angular/compiler-cli": "^13.0.0",
diff --git a/projects/sxc-angular/projects/sxc-angular/package.json b/projects/sxc-angular/projects/sxc-angular/package.json
index 9e4a4f6d7..343bb2941 100644
--- a/projects/sxc-angular/projects/sxc-angular/package.json
+++ b/projects/sxc-angular/projects/sxc-angular/package.json
@@ -1,6 +1,6 @@
{
"name": "@2sic.com/sxc-angular",
- "version": "14.02.01",
+ "version": "14.07.00",
"author": "2sic.com - daniel mettler (iJungleboy)",
"bugs": {
"url": "https://github.com/2sic/2sxc-ui/issues"
diff --git a/projects/sxc-angular/projects/sxc-angular/src/lib/context/context-info.ts b/projects/sxc-angular/projects/sxc-angular/src/lib/context/context-info.ts
index 5a1528f99..49e95e3f0 100644
--- a/projects/sxc-angular/projects/sxc-angular/src/lib/context/context-info.ts
+++ b/projects/sxc-angular/projects/sxc-angular/src/lib/context/context-info.ts
@@ -1,4 +1,4 @@
-import { Sxc, SxcGlobal } from "@2sic.com/2sxc-typings";
+import { Sxc, SxcGlobal } from '@2sic.com/2sxc-typings';
// These are the parameters which make up the current context / state of this app.
// It's mainly needed to ensure that the Http Service is correctly set up.
@@ -27,7 +27,7 @@ export interface ContextInfo {
/**
* Replace app name in path; replaces /app/auto/
- */
+ */
appNameInPath: string;
/**
diff --git a/projects/sxc-typings/api-extractor-index.d.ts b/projects/sxc-typings/api-extractor-index.d.ts
new file mode 100644
index 000000000..8c47d5a33
--- /dev/null
+++ b/projects/sxc-typings/api-extractor-index.d.ts
@@ -0,0 +1,11 @@
+// type definitions for 2sxc
+// project: 2sxc typings
+// definitions by: Daniel Mettler, 2sic
+
+// This file must be manually maintained, it's used by the api-extractor to start
+
+export * from './parts/dist/$2sxc/src';
+
+export * from './parts/dist/core';
+
+export * from './parts/dist/inpage/src';
diff --git a/projects/sxc-typings/api-extractor.json b/projects/sxc-typings/api-extractor.json
index 472041683..fd7af99cd 100644
--- a/projects/sxc-typings/api-extractor.json
+++ b/projects/sxc-typings/api-extractor.json
@@ -45,7 +45,7 @@
*
* SUPPORTED TOKENS: , ,
*/
- "mainEntryPointFilePath": "./index.d.ts",
+ "mainEntryPointFilePath": "./api-extractor-index.d.ts",
/**
* A list of NPM package names whose exports should be treated as part of this package.
@@ -233,7 +233,7 @@
* SUPPORTED TOKENS: , ,
* DEFAULT VALUE: ""
*/
- "publicTrimmedFilePath": "./index-public-part.d.ts",
+ "publicTrimmedFilePath": "./index-public.d.ts",
/**
* When a declaration is trimmed, by default it will be replaced by a code comment such as
diff --git a/projects/sxc-typings/dist/2sxc-typings.d.ts b/projects/sxc-typings/dist/2sxc-typings.d.ts
index dc833fc08..b7c9cabef 100644
--- a/projects/sxc-typings/dist/2sxc-typings.d.ts
+++ b/projects/sxc-typings/dist/2sxc-typings.d.ts
@@ -269,7 +269,7 @@ declare class ButtonCommand {
name: CommandNames;
params?: CommandParams;
readonly command: Command;
- constructor(name: CommandNames, contentType?: string, params?: CommandParams);
+ constructor(name: CommandNames, /* contentType?: string, */ params?: CommandParams);
/** make static, as many ButtonCommand signatures are actually not objects */
static mergeAdditionalParams(command: ButtonCommand, additionalParams: Record): CommandParams;
}
@@ -496,7 +496,7 @@ declare class CommandConfigLoader extends HasLog {
* because the target item could be specified directly, or in a complex internal object called entity
* @param actDef
*/
- updateToV9(actDef: InPageCommandJsonWithTooMuchInfo): InPageCommandJson;
+ updateToV9(actDef: InPageCommandJsonWithTooMuchInfo): CommandParams;
}
/**
@@ -655,7 +655,7 @@ export declare interface CommandMetadataParams extends CommandContentTypeParams,
* Names of commands known to 2sxc CMS - for use in toolbars and calling commands directly from code
* @public
*/
-export declare enum CommandNames {
+export declare const enum CommandNames {
/**
* `add` adds another demo-item to a **list of items**.
* It does not open the edit-dialog.
@@ -745,6 +745,7 @@ export declare enum CommandNames {
* `code` will execute custom javascript.
*
🔘 This is mainly for toolbars, to add buttons with custom code.
*
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)
+ *
_this used to be called `custom` and had a different setup_
*/
code = "code",
/**
@@ -948,69 +949,117 @@ export declare interface CommandNewParams extends CommandContentTypeParams, Part
}
/**
- * Command parameters are handed over to a command for execution
+ * Command parameters are handed over to a command for execution.
+ * It contains all possible combinations of parameters that can be used in a command.
+ *
+ * We will try to improve how this is documented, but ATM it just has all parameters,
+ * even though you may need none, or just a few.
+ *
+ * _Note: For your specific commands, you can also pass other parameters._
+ *
+ * **Important for the docs**
+ *
+ * Most properties are actually not visible (you will get them in the types though).
+ * So actually you will usually create one of these:
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityById)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * * [](xref:Api.Js.SxcJs.CommandAddParams)
+ * * [](xref:Api.Js.SxcJs.CommandAddExistingParams)
+ * * [](xref:Api.Js.SxcJs.CommandDataParams)
+ * * [](xref:Api.Js.SxcJs.CommandCopyParams)
+ * * [](xref:Api.Js.SxcJs.CommandCodeParams)
+ * * [](xref:Api.Js.SxcJs.CommandDeleteParams)
+ * * [](xref:Api.Js.SxcJs.CommandMetadataParams)
+ * * [](xref:Api.Js.SxcJs.CommandNewParams)
+ *
+ * Because of this, most of the properties below are NOT documented, as their purpose can change depending on the command used.
* @public
*/
-export declare interface CommandParams {
+export declare interface CommandParams extends Record {
/**
* The action is used in scenarios where the command name must be included
+ * @internal - wait with publishing this, it shouldn't actually be here. we may need to create another type which includes it
*/
action?: CommandNames;
/** @internal */
items?: Array;
- /** @internal */
+ /**
+ * Special change of dialogs, for example to change the edit-dialog into a new-dialog.
+ * @internal - not sure how this matches / replaces dialog, probably internal only
+ */
mode?: string;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
contentType?: string;
- /** @internal */
+ /** @internal old */
contentTypeName?: string;
/** @internal */
pipelineId?: number;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
filters?: string;
/** @internal */
dialog?: string;
/**
* @internal
- * @deprecated but probably still in use
+ * @deprecated but still in use
*/
sortOrder?: number;
/**
- * Position in a list (content-block or field of another entity)
- * index was added in v14.04 to replace the `sortOrder` which had a confusing name.
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
index?: number;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
entityId?: number;
/**
- * The guid - for people creating custom toolbars before 10.27 or automatically added since 10.27
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
entityGuid?: string;
/**
- * The manually added title from before 10.27 - automatically enabled the delete-button
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
entityTitle?: string;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
title?: string;
- /** @internal */
- useModuleList?: boolean;
- /** @internal */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ useModuleList?: true;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
metadata?: CommandParamsMetadata;
/** @internal */
isPublished?: boolean;
- /** @internal */
- prefill?: Record;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ prefill?: Record;
/**
* Custom Code in the previous V9 standard
* @internal
*/
customCode?: string;
/**
- * Custom Code function name only in the new V10.27 standard
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
call?: string;
/**
@@ -1019,13 +1068,13 @@ export declare interface CommandParams {
*/
apps?: string;
/**
- * Experimental in 10.27
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
parent?: string;
/**
- * Experimental in 10.27
- * @internal
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
*/
fields?: string;
/**
@@ -1066,6 +1115,7 @@ export declare interface CommandParamsEntityById {
export declare interface CommandParamsEntityInContentBlock {
/**
* Determins the position of the item in the list.
+ * index was added in v14.04 to replace the `sortOrder` which had a confusing name.
*/
index: number;
/**
@@ -1618,7 +1668,7 @@ declare class InPageCommandJson {
/** the content-type for new items */
contentType?: string;
/** determines that we should use a module list */
- useModuleList?: boolean;
+ useModuleList?: true;
/** index in the list */
sortOrder?: number;
/** Experimental in 10.27 */
@@ -2588,8 +2638,7 @@ export declare interface RunParams {
action?: CommandNames;
/**
* The command params, like contentType, entityId etc.
- * Optional for many actions, but can themselves also contain the property `action`, in which case action can be ommited.
- * @internal
+ * Optional for many actions.
*/
params?: CommandParams;
/**
diff --git a/projects/sxc-typings/index-docs.ts b/projects/sxc-typings/docs-index.ts
similarity index 66%
rename from projects/sxc-typings/index-docs.ts
rename to projects/sxc-typings/docs-index.ts
index c5952fcad..18753b855 100644
--- a/projects/sxc-typings/index-docs.ts
+++ b/projects/sxc-typings/docs-index.ts
@@ -3,9 +3,9 @@
this has the definition of the augmented window object, because the api exporter doesn't support this.
*/
-import { SxcGlobal } from './index-public-part';
+import { SxcGlobal } from './docs-public';
-export * from "./index-public-part";
+export * from "./docs-public";
/**
* Make sure the code knows that $2sxc exists on window
@@ -17,4 +17,9 @@ declare global {
*/
$2sxc: SxcGlobal;
}
+
+ /**
+ * The global $2sxc object / function to generate Sxc instances
+ */
+ const $2sxc: SxcGlobal;
}
\ No newline at end of file
diff --git a/projects/sxc-typings/index-public-part.d.ts b/projects/sxc-typings/docs-public.ts
similarity index 95%
rename from projects/sxc-typings/index-public-part.d.ts
rename to projects/sxc-typings/docs-public.ts
index c4ce21621..28ca55946 100644
--- a/projects/sxc-typings/index-public-part.d.ts
+++ b/projects/sxc-typings/docs-public.ts
@@ -214,7 +214,7 @@ export declare interface CommandMetadataParams extends CommandContentTypeParams,
* Names of commands known to 2sxc CMS - for use in toolbars and calling commands directly from code
* @public
*/
-export declare enum CommandNames {
+export declare const enum CommandNames {
/**
* `add` adds another demo-item to a **list of items**.
* It does not open the edit-dialog.
@@ -296,6 +296,7 @@ export declare enum CommandNames {
* `code` will execute custom javascript.
*
🔘 This is mainly for toolbars, to add buttons with custom code.
*
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)
+ *
_this used to be called `custom` and had a different setup_
*/
code = "code",
/* Excluded from this release type: code_old_custom */
@@ -463,36 +464,109 @@ export declare interface CommandNewParams extends CommandContentTypeParams, Part
}
/**
- * Command parameters are handed over to a command for execution
+ * Command parameters are handed over to a command for execution.
+ * It contains all possible combinations of parameters that can be used in a command.
+ *
+ * We will try to improve how this is documented, but ATM it just has all parameters,
+ * even though you may need none, or just a few.
+ *
+ * _Note: For your specific commands, you can also pass other parameters._
+ *
+ * **Important for the docs**
+ *
+ * Most properties are actually not visible (you will get them in the types though).
+ * So actually you will usually create one of these:
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityById)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * * [](xref:Api.Js.SxcJs.CommandAddParams)
+ * * [](xref:Api.Js.SxcJs.CommandAddExistingParams)
+ * * [](xref:Api.Js.SxcJs.CommandDataParams)
+ * * [](xref:Api.Js.SxcJs.CommandCopyParams)
+ * * [](xref:Api.Js.SxcJs.CommandCodeParams)
+ * * [](xref:Api.Js.SxcJs.CommandDeleteParams)
+ * * [](xref:Api.Js.SxcJs.CommandMetadataParams)
+ * * [](xref:Api.Js.SxcJs.CommandNewParams)
+ *
+ * Because of this, most of the properties below are NOT documented, as their purpose can change depending on the command used.
* @public
*/
-export declare interface CommandParams {
- /**
- * The action is used in scenarios where the command name must be included
- */
- action?: CommandNames;
+export declare interface CommandParams extends Record {
+ /* Excluded from this release type: action */
/* Excluded from this release type: items */
/* Excluded from this release type: mode */
- /* Excluded from this release type: contentType */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ contentType?: string;
/* Excluded from this release type: contentTypeName */
/* Excluded from this release type: pipelineId */
- /* Excluded from this release type: filters */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ filters?: string;
/* Excluded from this release type: dialog */
/* Excluded from this release type: sortOrder */
- /* Excluded from this release type: index */
- /* Excluded from this release type: entityId */
- /* Excluded from this release type: entityGuid */
- /* Excluded from this release type: entityTitle */
- /* Excluded from this release type: title */
- /* Excluded from this release type: useModuleList */
- /* Excluded from this release type: metadata */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ index?: number;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ entityId?: number;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ entityGuid?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ entityTitle?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ title?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ useModuleList?: true;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ metadata?: CommandParamsMetadata;
/* Excluded from this release type: isPublished */
- /* Excluded from this release type: prefill */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ prefill?: Record;
/* Excluded from this release type: customCode */
- /* Excluded from this release type: call */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ call?: string;
/* Excluded from this release type: apps */
- /* Excluded from this release type: parent */
- /* Excluded from this release type: fields */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ parent?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ fields?: string;
/* Excluded from this release type: isshared */
}
@@ -527,6 +601,7 @@ export declare interface CommandParamsEntityById {
export declare interface CommandParamsEntityInContentBlock {
/**
* Determins the position of the item in the list.
+ * index was added in v14.04 to replace the `sortOrder` which had a confusing name.
*/
index: number;
/**
@@ -1130,7 +1205,11 @@ export declare interface RunParams {
* Required.
*/
action?: CommandNames;
- /* Excluded from this release type: params */
+ /**
+ * The command params, like contentType, entityId etc.
+ * Optional for many actions.
+ */
+ params?: CommandParams;
/**
* The event which triggered this command - sometimes useful internally further use.
* Optional in most cases, but in some cases it will improve the behavior of the code.
diff --git a/projects/sxc-typings/index-public-part.ts b/projects/sxc-typings/index-public-part.ts
deleted file mode 100644
index c4ce21621..000000000
--- a/projects/sxc-typings/index-public-part.ts
+++ /dev/null
@@ -1,2031 +0,0 @@
-/* Excluded from this release type: Actions */
-
-/* Excluded from this release type: AjaxPromise */
-
-/* Excluded from this release type: AntiForgeryTokenHeaderNameDnn */
-
-/* Excluded from this release type: ApiExtensionPlaceholder */
-
-/* Excluded from this release type: ApiUrlRoots */
-
-/* Excluded from this release type: AppApiMap */
-
-/* Excluded from this release type: AppApiMarker */
-
-/* Excluded from this release type: AssetsLoader */
-
-/* Excluded from this release type: AttrJsonContentGroup */
-
-/* Excluded from this release type: AttrJsonEditContext */
-
-/* Excluded from this release type: AttrJsonEntity */
-
-/* Excluded from this release type: AttrJsonEnvironment */
-
-/* Excluded from this release type: AttrJsonError */
-
-/* Excluded from this release type: AttrJsonLanguage */
-
-/* Excluded from this release type: AttrJsonUi */
-
-/* Excluded from this release type: AttrJsonUser */
-
-/* Excluded from this release type: BuildRule */
-
-/* Excluded from this release type: BuildSteps */
-
-/* Excluded from this release type: buildSxcRoot */
-
-/* Excluded from this release type: Button */
-
-/* Excluded from this release type: ButtonCommand */
-
-/* Excluded from this release type: ButtonConfigLoader */
-
-declare type ButtonGenOrProp = ButtonPropGen | T;
-
-/* Excluded from this release type: ButtonGroup */
-
-/* Excluded from this release type: ButtonGroupConfigLoader */
-
-/* Excluded from this release type: ButtonGroupsWip */
-
-/* Excluded from this release type: ButtonGroupWip */
-
-/**
- * This is the most common call signature on most ButtonConfig properties
- * @public
- */
-declare type ButtonPropGen = (context: ContextComplete) => T;
-
-/**
- * Structure for constants in the selectors, to guarantee we got everything
- */
-declare interface CbOrMod {
- id: string;
- class: string;
- selector: string;
- findAllLists: () => HTMLElement[];
- findClosestList: (element: HTMLElement) => HTMLElement;
- context: string;
- singleItem?: string;
-}
-
-/* Excluded from this release type: CmdParHlp */
-
-/* Excluded from this release type: CmsEngine */
-
-/* Excluded from this release type: Command */
-
-/**
- * Parameters used for the command `add-existing`.
- *
- * The contentType name determines what items will be shown in the dialog.
- * Depending on your use case, you will need to use the
- * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) or [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) parameters as well.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandAddExistingParams extends CommandAddParams {
-}
-
-/**
- * Parameters used for the command `add`.
- *
- * The `contentType` determines what items will be created, the `index` where.
- * Depending on your use case, you will need to use the
- * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) or [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) parameters as well.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandAddParams extends CommandContentTypeParams, Pick, Partial>, Partial> {
-}
-
-/* Excluded from this release type: CommandCode */
-
-/**
- * Parameters used for the command `code` on toolbars (new in v14.4).
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandCodeParams {
- /**
- * Name of the function to call - must be available in the context.
- * This is usually as a function window. Example:
- *
- * If `call` is `sayHello` you need a `window.sayHello(params, context, event)`.
- */
- call: string;
-}
-
-/* Excluded from this release type: CommandConfigLoader */
-
-/**
- * Parameters used for the command `contenttype`.
- *
- * The content-type name determines what items will be loaded to manage the fields.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandContentTypeParams {
- /**
- * The content-type name
- */
- contentType: string;
-}
-
-/**
- * Parameters used for the command `copy`.
- * Will copy the entity on `entityId`.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandCopyParams extends CommandContentTypeParams, CommandParamsEntityById {
-}
-
-/* Excluded from this release type: CommandCustomParams */
-
-/**
- * Parameters used for the command `data`.
- *
- * The content-type name determines what items will be managed.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandDataParams extends CommandContentTypeParams {
- /**
- * Filters to apply to the list of items.
- *
- * Each property targets a field.
- * The value is a string, number or array for filtering EntityIds or EntityGuids
- */
- filters?: Record;
-}
-
-/**
- * Parameters used for the command `delete`.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandDeleteParams {
- /**
- * ID of item to delete, usually detected from context.
- */
- entityId: number;
- /**
- * Guid of item to delete, usually detected from context.
- */
- entityGuid: string;
- /**
- * Title of item to delete, usually detected from context.
- * This is important to show the "Are you sure?" dialog.
- */
- entityTitle: string;
-}
-
-/* Excluded from this release type: CommandLinkGenerator */
-
-/**
- * Parameters used for the command `metadata`.
- *
- * Will do either one of these:
- * - if it has an `entityId`, will just open `edit` for that Entity
- * - if it has no `entityId`, will open `new` for the current `contentType`
- * and assign to the target specified by `metadata`:
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandMetadataParams extends CommandContentTypeParams, CommandParamsEntityById {
- /**
- * Target to assign the metadata to.
- */
- metadata: CommandParamsMetadata;
-}
-
-/**
- * Names of commands known to 2sxc CMS - for use in toolbars and calling commands directly from code
- * @public
- */
-export declare enum CommandNames {
- /**
- * `add` adds another demo-item to a **list of items**.
- * It does not open the edit-dialog.
- *
The new item is placed after the item the (+) was clicked on.
- *
💡
- * This is different than new, which opens a dialog to add something.
- *
🪜 Only appears on toolbars of items which are in a list.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandAddParams)
- */
- add = "add",
- /**
- * `add-existing` opens a dialog allowing the user to select an existing item to add to a **list of items**.
- *
The new item is placed after the item the (+) was clicked on.
- *
🪜 Only appears on toolbars of items which are in a list.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandAddExistingParams)
- *
🆕 in v11.01
- */
- addExisting = "add-existing",
- /**
- * `app` opens the app-admin dialog
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected from context)
- */
- app = "app",
- /**
- * `app-import` opens the dialog to import an App.
- *
🔘 This is not available on the toolbar.
- *
📩 No params required,
- * (auto-detected from context)
- */
- appImport = "app-import",
- /**
- * `app-resources` opens the edit dialog for app-resources (multi-language texts, labels etc.).
- *
🔘 It's disabled on the toolbar if the app doesn't have resource-values to configure.
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected from context)
- */
- appResources = "app-resources",
- /**
- * `app-settings` opens the edit dialog for the app-settings.
- *
🔘 It's disabled on the toolbar if the app doesn't have setting-values to configure
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected from context)
- */
- appSettings = "app-settings",
- /**
- * `apps` opens the manage all apps dialog.
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected based on toolbar)
- */
- apps = "apps",
- /**
- * `data` opens the list to manage all items of a specific content-type.
- *
🔘 Will use the settings of the current template to open.
- * It is only shown to elevated admins.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandDataParams)
- */
- data = "data",
- /* Excluded from this release type: data_old_contentItems */
- /**
- * `fields` opens the dialog to view or modify fields of a content-type.
- *
🔘 On a toolbar it will use the content-type of the current item.
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandContentTypeParams)
- */
- fields = "fields",
- /* Excluded from this release type: fields_old_contenttype */
- /**
- * `copy` opens the edit-dialog for the current item in copy-mode, so when saving it will be a new item.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandCopyParams)
- *
🆕 in v14.03
- */
- copy = "copy",
- /**
- * `code` will execute custom javascript.
- *
🔘 This is mainly for toolbars, to add buttons with custom code.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)
- */
- code = "code",
- /* Excluded from this release type: code_old_custom */
- /**
- * `delete` will delete (not just remove) a content-item.
- *
💡 This is similar to `remove` but really deletes the data from the DB.
- *
🔘 It only appears if the toolbar explicitly asks for it.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandDeleteParams)
- * (auto-detected from context)
- */
- delete = "delete",
- /**
- * `edit` opens an edit-dialog.
- *
- * In scenarios where the page is currently showing a _demo item_, this will have the same effect as `add`.
- * So instead of editing the _demo item_ it would trigger a dialog to add a new item.
- *
🔘 Only appears if `entityId` is known or item is in a list.
- *
📩 Parameters either one of these:
- * [Id](xref:Api.Js.SxcJs.CommandParamsEntityById),
- * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
- * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
- * (auto-detected from context)
- */
- edit = "edit",
- /* Excluded from this release type: image */
- /**
- * `insights` opens the insights logs page
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required.
- */
- insights = "insights",
- /* Excluded from this release type: insights_old_server */
- /**
- * `instance-list` opens a dialog to manually re-order **items in a list**.
- *
🪜 Only appears on toolbars of items which are in a list.
- *
📩 No params required,
- * (auto-detected from context)
- */
- list = "list",
- /* Excluded from this release type: list_old_instanceList */
- /**
- * `layout` opens the in-page dialog to change the layout of the current content.
- *
📩 No params required,
- * (auto-detected from context)
- */
- layout = "layout",
- /**
- * `metadata` opens the edit-dialog for the current metadata item.
- *
🔘 It only appears if the toolbar explicitly asks for it.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandMetadataParams)
- */
- metadata = "metadata",
- /**
- * `more` create a "…" (ellipsis) button which flips through the button groups of toolbars
- *
🔘 It only appears if the toolbar has `more`=`auto` and has multiple groups.
- *
📩 No params required,
- * (auto-detected based on toolbar)
- */
- more = "more",
- /**
- * `movedown` moves a content-item down one position in a **list of items**.
- *
🪜 Only appears on toolbars of items which are in a list.
- *
📩 Parameters either one of these:
- * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
- * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
- * (auto-detected from context)
- */
- moveDown = "movedown",
- /**
- * `moveup` moves a content-item up one position in a **list of items**.
- *
🪜 Only appears on toolbars of items which are in a list.
- *
📩 Parameters either one of these:
- * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
- * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
- * (auto-detected from context)
- */
- moveUp = "moveup",
- /**
- * `new` opens the edit-dialog to create a new item/entity.
- *
- * If the previous item is in a list, it will add it to that list _after_ the previous item with the toolbar.
- * Otherwise it just creates it and the visualization will differ depending on the App.
- *
🪜 It works differently for lists - in which case it also adds it to the list.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandNewParams)
- * (usually auto-detected from context)
- */
- new = "new",
- /* Excluded from this release type: newMode */
- /**
- * `publish` tells the system to update a content-items status to published. If there was a published and a draft before, the draft will replace the previous item
- *
🔘 Appears automatically if the item is in draft mode / not published.
- *
📩 Parameters either one of these:
- * [Id](xref:Api.Js.SxcJs.CommandParamsEntityById),
- * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
- * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
- * (auto-detected from context)
- */
- publish = "publish",
- /**
- * `remove` removes an item from a list of items.
- *
🪜 Only appears on toolbars of items which are in a list.
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandParamsEntityInList)
- * (auto-detected from context)
- */
- remove = "remove",
- /**
- * `replace` opens the dialog to assign a different content-item in this slot on module-assigned content items
- *
📩 [Parameters](xref:Api.Js.SxcJs.CommandParamsEntityInList)
- * (auto-detected from context)
- */
- replace = "replace",
- /**
- * `template-develop` opens the template-editor dialog in a new window.
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected from context)
- */
- template = "template",
- /* Excluded from this release type: template_old_develop */
- /**
- * `template-query` opens the pipeline/query-designer in a new window.
- *
🔘 It's not available on the simple Content App, only on full Apps.
- * It is disabled if no query is configured.
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected from context)
- */
- query = "query",
- /* Excluded from this release type: query_old_templateQuery */
- /**
- * `template-settings` will change settings on the template currently used
- *
🔐 Toolbar shows this automatically to elevated admins.
- */
- view = "view",
- /* Excluded from this release type: view_old_templateSettings */
- /**
- * `system` opens the system dialog for this zone/site.
- *
🔐 Toolbar shows this automatically to elevated admins.
- *
📩 No params required,
- * (auto-detected from context)
- */
- system = "system",
- /* Excluded from this release type: system_old_zone */
-}
-
-/**
- * Parameters used for the command `new`
- *
- * The ContentType name determines what kind of item will be created.
- *
- * Can also contain `prefill` to add values to the new item.
- *
- * Can also contain list-information, in which case it's added to that list.
- * Depending on your use case, you will need to use the
- * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) or [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) parameters as well.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandNewParams extends CommandContentTypeParams, Partial, Partial {
- /**
- * Optional values to prefill in the new-form
- */
- prefill?: Record;
-}
-
-/**
- * Command parameters are handed over to a command for execution
- * @public
- */
-export declare interface CommandParams {
- /**
- * The action is used in scenarios where the command name must be included
- */
- action?: CommandNames;
- /* Excluded from this release type: items */
- /* Excluded from this release type: mode */
- /* Excluded from this release type: contentType */
- /* Excluded from this release type: contentTypeName */
- /* Excluded from this release type: pipelineId */
- /* Excluded from this release type: filters */
- /* Excluded from this release type: dialog */
- /* Excluded from this release type: sortOrder */
- /* Excluded from this release type: index */
- /* Excluded from this release type: entityId */
- /* Excluded from this release type: entityGuid */
- /* Excluded from this release type: entityTitle */
- /* Excluded from this release type: title */
- /* Excluded from this release type: useModuleList */
- /* Excluded from this release type: metadata */
- /* Excluded from this release type: isPublished */
- /* Excluded from this release type: prefill */
- /* Excluded from this release type: customCode */
- /* Excluded from this release type: call */
- /* Excluded from this release type: apps */
- /* Excluded from this release type: parent */
- /* Excluded from this release type: fields */
- /* Excluded from this release type: isshared */
-}
-
-/**
- * Parameters used for commands which need an entity ID or a list-reference.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandParamsEntity extends CommandParamsEntityById, CommandParamsEntityInContentBlock, CommandParamsEntityInList {
-}
-
-/**
- * Parameters used for commands which address a specificy entity.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandParamsEntityById {
- /**
- * ID of item to edit.
- */
- entityId: number;
-}
-
-/**
- * Parameters used for command which expect an item from a list of a ContentBlock.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandParamsEntityInContentBlock {
- /**
- * Determins the position of the item in the list.
- */
- index: number;
- /**
- * Must be true, to work on the module list.
- */
- useModuleList: true;
-}
-
-/**
- * Parameters used for command which expect an item in a list (field) of a parent.
- *
- * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
- * @public
- */
-export declare interface CommandParamsEntityInList {
- /**
- * Determins the position of the item in the list of that entity-field.
- */
- index: number;
- /**
- * Parent Entity field(s) name(s).
- * Usually just one field, like `Authors`.
- * In field-sets it could be `Author,Award` or similar.
- */
- fields: string;
- /**
- * Parent entity _GUID_ which has the field referencing this item.
- */
- parent: string;
-}
-
-/**
- * Parameters on `metadata` for commands which have a metadata-target.
- * @public
- */
-export declare interface CommandParamsMetadata {
- /**
- * The key which identifies the target of this metadata item
- */
- key: string;
- /**
- * the key type, will default to 'string'
- */
- keyType?: string;
- /**
- * The target type, will default to 10 = CMS-Item
- */
- targetType?: MetadataTargetTypes;
-}
-
-declare type CommandPromise = Promise;
-
-/* Excluded from this release type: Commands */
-
-/* Excluded from this release type: ContentBlockReference */
-
-/* Excluded from this release type: ContentListActionParams */
-
-/* Excluded from this release type: ContentListActions */
-
-/**
- * @public
- */
-declare class ContextBundleContent extends ContextBundleInstance {
- /* Excluded from this release type: item */
- /* Excluded from this release type: contentBlockReference */
- /* Excluded from this release type: contentBlock */
- /* Excluded from this release type: __constructor */
-}
-
-/**
- * @public
- */
-declare class ContextBundleInstance {
- /**
- * instance of sxc object
- */
- sxc: Sxc;
- /* Excluded from this release type: instance */
- /* Excluded from this release type: app */
- /* Excluded from this release type: ui */
- /* Excluded from this release type: page */
- /* Excluded from this release type: system */
- /* Excluded from this release type: tenant */
- /* Excluded from this release type: user */
- _isContext: boolean;
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: is */
-}
-
-/**
- * @public
- */
-declare class ContextBundleToolbar extends ContextBundleContent {
- /* Excluded from this release type: toolbar */
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: forButton */
-}
-
-/**
- * @public
- */
-declare class ContextComplete extends ContextBundleToolbar {
- /* Excluded from this release type: _isCtxComplete */
- /* Excluded from this release type: button */
- /* Excluded from this release type: commandWorkflow */
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: findContext */
- /* Excluded from this release type: contextCopy */
- /* Excluded from this release type: getContextInstance */
- /* Excluded from this release type: is */
-}
-
-/**
- * ContextIdentifier is used to initialize a Sxc object outside of the default context.
- * @public
- */
-export declare class ContextIdentifier {
- /**
- * ZoneId of this Context
- * @requires zoneId
- */
- zoneId: number;
- /**
- * AppId of this Context
- * @requires appId
- */
- appId: number;
- /**
- * PageId of this Context (optional)
- * @optional
- */
- pageId?: number;
- /**
- * ModuleId of this Context (optional)
- * @optional
- */
- moduleId?: number;
- /* Excluded from this release type: _ignoreHeaders */
- /* Excluded from this release type: complete */
- /* Excluded from this release type: blockId */
- /* Excluded from this release type: is */
- /* Excluded from this release type: ensureCompleteOrThrow */
-}
-
-/* Excluded from this release type: ContextOfApp */
-
-/* Excluded from this release type: ContextOfContentBlock */
-
-/* Excluded from this release type: ContextOfInstance */
-
-/* Excluded from this release type: ContextOfItem */
-
-/* Excluded from this release type: ContextOfPage */
-
-/* Excluded from this release type: ContextOfSystem */
-
-/* Excluded from this release type: ContextOfTenant */
-
-/* Excluded from this release type: ContextOfUi */
-
-/* Excluded from this release type: ContextOfUser */
-
-/* Excluded from this release type: DnnUiRoot */
-
-/* Excluded from this release type: EnvironmentMetaLoader */
-
-/**
- * A context information for the current page, helping the JS talk with the backend
- * @public
- */
-export declare interface EnvironmentSpecs {
- /** Page ID */
- page: number;
- /** Optional API key - optional if set from external, because it's auto derived from root */
- api: string;
- /** Optional App API Root - required because in Oqtane we'll have a different root for appAPIs */
- appApi: string;
- /** Portal root path - used for various things incl. the API root */
- root: string;
- /** Request verification token header name */
- rvtHeader: string;
- /** Request verification token value */
- rvt: string;
- /* Excluded from this release type: uiRoot */
- /** The platform code like 'dnn' or 'oqt' */
- platform: string;
-}
-
-/**
- * Any object that has an own log object
- * @export
- * @interface HasLog
- * @public
- */
-export declare abstract class HasLog {
- /* Excluded from this release type: parentLog */
- /* Excluded from this release type: log */
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: initLog */
- /* Excluded from this release type: initLogInternal */
-}
-
-/* Excluded from this release type: HeaderNames */
-
-/* Excluded from this release type: InPageButtonGroupJson */
-
-/* Excluded from this release type: InPageButtonJson */
-
-/* Excluded from this release type: InPageCommandJson */
-
-/* Excluded from this release type: InPageCommandJsonWithTooMuchInfo */
-
-/* Excluded from this release type: InPageToolbarConfigVariations */
-
-/* Excluded from this release type: Insights */
-
-declare class InsightsLogSet {
- name: string;
- logs: LogList;
- constructor(name: string);
-}
-
-/* Excluded from this release type: InsightsSingleton */
-
-/* Excluded from this release type: ItemIdentifierCopy */
-
-/* Excluded from this release type: ItemIdentifierGroup */
-
-/* Excluded from this release type: ItemIdentifierInField */
-
-/* Excluded from this release type: ItemIdentifierParent */
-
-/* Excluded from this release type: ItemIdentifierShared */
-
-/* Excluded from this release type: ItemIdentifierSimple */
-
-/* Excluded from this release type: ListWithCursor */
-
-/**
- * A log object which will collect log entries for another ojbect
- * @export
- * @interface Log
- * @public
- */
-export declare class Log {
- /**
- * List of all entries added to this log
- */
- entries: LogEntry[];
- /* Excluded from this release type: depth */
- /* Excluded from this release type: callDepths */
- /* Excluded from this release type: startTime */
- /**
- * Maximum amount of entries to add - to prevent memory hoging
- */
- maxEntries: number;
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: liveDump */
- /* Excluded from this release type: _parentHasLiveDump */
- /* Excluded from this release type: keepData */
- /* Excluded from this release type: _parentHasKeepData */
- /* Excluded from this release type: fullIdentifier */
- /* Excluded from this release type: rename */
- /* Excluded from this release type: linkLog */
- /**
- * Add a simple message to the log
- * @param message
- *
- * preferred usage is with string parameter:
- * log.add(`description ${ parameter }`);
- *
- * in case that we experience error with normal string parameter, we can use arrow function to enclose parameter like this () => parameter
- * but use it very rarely, because there is certainly a performance implication!
- * log.add(`description ${() => parameter}`);
- */
- add(message: (() => string) | string, data?: unknown): string;
- /* Excluded from this release type: addData */
- /* Excluded from this release type: logData */
- /* Excluded from this release type: _prepareEntry */
- /* Excluded from this release type: _prepareMessage */
- /* Excluded from this release type: call */
- /* Excluded from this release type: _callDepthAdd */
- /* Excluded from this release type: _callDepthRemove */
- /* Excluded from this release type: dump */
- /* Excluded from this release type: dumpList */
- /* Excluded from this release type: dumpOne */
- /* Excluded from this release type: _addEntry */
- /* Excluded from this release type: randomString */
- /* Excluded from this release type: parent */
- /* Excluded from this release type: scope */
- /**
- * The name of this log, for scenarios where multiple loggers are mixed
- */
- name: string;
- /* Excluded from this release type: id */
- /* Excluded from this release type: idCache */
- /* Excluded from this release type: identifier */
-}
-
-/* Excluded from this release type: LogCall */
-
-/**
- * A log entry item
- * @export
- * @interface LogEntry
- * @public
- */
-export declare class LogEntry {
- /* Excluded from this release type: log */
- message: string;
- /* Excluded from this release type: depth */
- /** A timestamp for this entry to better see sequences of things happening */
- time: number;
- /* Excluded from this release type: result */
- /* Excluded from this release type: data */
- /* Excluded from this release type: data */
- /* Excluded from this release type: _data */
- /* Excluded from this release type: source */
- /* Excluded from this release type: __constructor */
-}
-
-/* Excluded from this release type: LogEntryOptions */
-
-/** @public */
-declare type LogList = Array<{
- key: string;
- log: Log;
-}>;
-
-/**
- * A Metadata-Target identifier to tell an entity that it describes something else.
- *
- * Usually used in Sxc instances with the [Data Service](xref:Api.Js.SxcJs.SxcData)
- *
- * Warning: There is another MetadataFor type and they are not fully consistent.
- * This is historical and not easy to correct, but we're working on it.
- * @public
- */
-export declare interface MetadataFor {
- /**
- * The target type identifier
- * - TODO: @2dm - THIS SHOULD probably be number only
- */
- Target: string | MetadataTargetTypes;
- /**
- * The number of the target, if it's identified by a number.
- */
- Number?: number;
- /**
- * The string-id of the target, if it's identified by a string.
- */
- String?: string;
- /**
- * The GUID of the target, if it's identified by a GUID.
- */
- Guid?: string;
- /* Excluded from this release type: Singleton */
-}
-
-/**
- * Metadata Target Types
- *
- * These are constants to determine what something is assigned to (e.g. it describes an Entity, a file, etc.)
- *
- * Use it for the @see MetadataFor objects
- * @public
- */
-export declare enum MetadataTargetTypes {
- /**
- * Undefined Type (0) - included for completeness.
- * Not usually used, actually None (1) is the default
- */
- Undefined = 0,
- /**
- * Things that are not used as Metadata (1). This is the default for most Entities.
- */
- None = 1,
- /**
- * Metadata of attributes / fields (2). This is used to store configuration like the field label, amount-of-rows, etc.
- * Remarks =
- * The key is always a number (int) pointing to the Attribute ID in the DB.
- */
- Attribute = 2,
- /**
- * App metadata (3). Used to give Apps additional properties.
- * Remarks =
- * The key should always be an int ID of the App.
- */
- App = 3,
- /**
- * Metadata of entities / data-items (4).
- * This lets us enhance entities with additional information.
- * Remarks =
- * The Key should always be a GUID
- */
- Entity = 4,
- /**
- * Metadata of a content-type / data-schema (5). Used to give it a description etc.
- */
- ContentType = 5,
- /**
- * Zone metadata (6) - used to give a Zone additional information.
- * Only used in very special cases, best not use.
- */
- Zone = 6,
- /**
- * Item / Object of the Platform, like a File or Folder etc. (10)
- * Remarks =
- * * The key is usually a string to further specify what it's describing, like "file:72"
- * * The text equivalent is CmsObject
- */
- CmsItem = 10,
- /**
- * The entire system / platform - so Metadata for the current Dnn/Oqtane installation (11).
- * Remarks =
- * This is not in use as of now, just added for completeness sakes.
- * New in v13
- */
- System = 11,
- /**
- * A Site - like the current site (12)
- * Remarks = New in v13
- */
- Site = 12,
- /**
- * A Site - like the current site (13)
- * Remarks = New in v13 / beta
- */
- SiteVariant = 13,
- /**
- * A Page - like the current page (14)
- * Remarks = New in v13
- */
- Page = 14,
- /**
- * A Page - like the current page (15)
- * Remarks = New in v13 / beta
- */
- PageVariant = 15,
- /**
- * A Module - like a module containing some content (16)
- * Remarks = New in v13
- */
- Module = 16,
- /**
- * A Module - like a module containing some content (17)
- * Remarks = New in v13 / beta
- */
- ModuleVariant = 17,
- /**
- * A User - like the admin-user (18)
- * Remarks = New in v13
- */
- User = 18,
- /** Custom target (90). This is what you should use for basic apps which have a custom target that's none of the other defaults. */
- Custom = 90,
- /** Custom target (91). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom1 = 91,
- /** Custom target (92). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom2 = 92,
- /** Custom target (93). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom3 = 93,
- /** Custom target (94). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom4 = 94,
- /** Custom target (95). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom5 = 95,
- /** Custom target (96). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom6 = 96,
- /** Custom target (97). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom7 = 97,
- /** Custom target (98). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom8 = 98,
- /** Custom target (99). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
- Custom9 = 99
-}
-
-/* Excluded from this release type: MetaHeaderJsApi */
-
-/* Excluded from this release type: ModifierBase */
-
-/* Excluded from this release type: ModifierContentBlock */
-
-/* Excluded from this release type: ModifierContentBlockInstance */
-
-/* Excluded from this release type: ModifierDnnModule */
-
-/* Excluded from this release type: ModifierDnnModuleInternal */
-
-/* Excluded from this release type: NoJQ */
-
-/* Excluded from this release type: NumberNotDefinedHuge */
-
-/* Excluded from this release type: Obj */
-
-/* Excluded from this release type: Operations */
-
-/* Excluded from this release type: PlatformDnn */
-
-/* Excluded from this release type: PlatformOqtane */
-
-/* Excluded from this release type: positionAndAlign */
-
-/* Excluded from this release type: PositionCoordinates */
-
-/* Excluded from this release type: Positioning */
-
-/* Excluded from this release type: PromiseFactory */
-
-/* Excluded from this release type: QeSelectors */
-
-/* Excluded from this release type: QuickE */
-
-/* Excluded from this release type: QuickEClipboard */
-
-/**
- * Quick Edit Configuration which has an `enable` and specific button configurations
- * @public
- */
-export declare class QuickEditConfig {
- /**
- * Determine whether this section is enabled.
- */
- enable?: boolean | 'auto';
- /**
- * Optional detailed configuration of the buttons.
- */
- buttons?: QuickEditConfigButtons;
-}
-
-/**
- * Buttons on a quick-edit toolbar
- * @public
- */
-export declare class QuickEditConfigButtons {
- /**
- * Enable the button to "Add Content"
- */
- addContent?: boolean;
- /**
- * Enable the button to "add App"
- */
- addApp?: boolean;
- /**
- * Enable the button "Select"
- */
- select?: boolean;
- /**
- * Enable the button "Paste"
- */
- paste?: boolean;
- /**
- * Enable the button "Delete"
- */
- delete?: boolean;
- /**
- * Enable the button "Move"
- */
- move?: boolean;
-}
-
-export declare const QuickEditConfigEnableAuto: string;
-
-/**
- * Quick Edit - Full configuration at root, with `enable` and rules for `modules` and `innerBlocks`
- * @public
- */
-export declare class QuickEditConfigRoot extends QuickEditConfig {
- /**
- * The buttons configuration on the root.
- * Will be used for the `modules` and `innerBlocks` if not specified there.
- * Note that if not specified, will always default to true for all buttons.
- */
- buttons?: QuickEditConfigButtons;
- /**
- * Optional configuration for the Inner Content Blocks.
- */
- innerBlocks?: QuickEditConfig;
- /**
- * Optional configuration for the Modules.
- */
- modules?: QuickEditConfig;
- /* Excluded from this release type: getDefault */
-}
-
-/* Excluded from this release type: QuickEditOverlay */
-
-/* Excluded from this release type: refresh */
-
-/* Excluded from this release type: RuleManager */
-
-/* Excluded from this release type: RuleParams */
-
-/**
- * Parameters for the Instance sxc.cms.run(...) command.
- * New in 13.03
- */
-export declare interface RunParams {
- /**
- * The action to perform.
- * Required.
- */
- action?: CommandNames;
- /* Excluded from this release type: params */
- /**
- * The event which triggered this command - sometimes useful internally further use.
- * Optional in most cases, but in some cases it will improve the behavior of the code.
- */
- event?: MouseEvent;
- /**
- * Workflows work the same way as with a toolbar, except that they are added here and not registered on init.
- * Because of limitations in automatic documentation, the type here is set to `unknown` but it's actually `WorkflowStep` | `WorkflowStep[]`
- */
- workflows?: unknown;
-}
-
-/* Excluded from this release type: RunParamsHelpers */
-
-/**
- * Parameters for the **Global** $2sxc.cms.run(...) command in Addition to the [RunParams](xref:Api.Js.SxcJs.RunParams).
- * It provides context to the run-params such as a Sxc instance or a tag which it started on.
- * New in 12.10
- * @public
- */
-export declare interface RunParamsWithContext extends RunParams {
- /**
- * The tag on which the run was triggered - it's used to give the command a context to start from
- * We always need the tag OR the context, but never both
- */
- tag?: HTMLElement;
- /**
- * The context to run in, basically containing module id, etc.
- * We always need the tag OR the context, but never both
- */
- context?: Sxc | ContextIdentifier;
-}
-
-/* Excluded from this release type: RunParamsWithWorkflows */
-
-/* Excluded from this release type: Selection_2 */
-
-/* Excluded from this release type: SharedLogic */
-
-/* Excluded from this release type: Stats */
-
-/**
- * The typical sxc-instance object for a specific DNN module or content-block
- * @public
- */
-export declare class Sxc extends HasLog {
- /** the sxc-instance ID, which is usually the DNN Module Id */
- id: number;
- /**
- * content-block ID, which is either the module ID, or the content-block definition entity ID
- * this is an advanced concept you usually don't care about, otherwise you should research it
- */
- cbid: number;
- /* Excluded from this release type: cacheKey */
- /* Excluded from this release type: root */
- /* Excluded from this release type: ctx */
- /* Excluded from this release type: _isSxcInstance */
- /**
- * Web API calls for this instance.
- * This is the pure call APIs system.
- * To get data or queries, best use the data or query services.
- */
- webApi: SxcWebApi;
- /* Excluded from this release type: manage */
- /**
- * CMS operations on this sxc-instance, such as opening the edit dialog etc.
- */
- cms: SxcCms;
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: is */
- /**
- * Get a data service for a specific content-type.
- *
- * @param contentType: name of the content type which this service will get
- */
- data(contentType: string): SxcData;
- /**
- *
- * @param query
- */
- query(query: string): SxcQuery;
- /* Excluded from this release type: resolveServiceUrl */
- /* Excluded from this release type: showDetailedHttpError */
- /**
- * Test if the current code is in edit-mode and additional javascripts have been loaded to make it work
- * @returns true if we are in edit-mode
- */
- isEditMode(): boolean;
- /* Excluded from this release type: recreate */
-}
-
-/* Excluded from this release type: SxcApiUrlRoot */
-
-/**
- * This is in charge of sxc.cms on the instance level.
- * ATM it just has the run command.
- * In future, it may also have dedicated command like `layout` etc.
- * @public
- */
-export declare class SxcCms extends SxcPart {
- /* Excluded from this release type: __constructor */
- /**
- * Run a command on this sxc-instance.
- * Requires edit mode to be on, which would enable the edit-JS parts.
- * To use, remember to activate `2sxc.JsCms` on the page
- * @param runParams - real type is actually RunParams
- */
- run(runParams: RunParams): Promise;
-}
-
-/* Excluded from this release type: SxcCmsReal */
-
-/**
- * Data Service for an App / Sxc-Instance to get/create data of a specific Content-Type
- * @public
- */
-export declare class SxcData extends SxcDataServiceBase {
- readonly name: string;
- /* Excluded from this release type: __constructor */
- /**
- * Get all items of this type.
- */
- getAll(): Promise;
- /**
- * Get the specific item with the ID. It will return null if not found
- */
- getOne(id: number): Promise | null;
- /* Excluded from this release type: getMany */
- /* Excluded from this release type: getInternal */
- /**
- * Create a new entity with the values supplied
- * @param values a simple object containing the values to create
- */
- create(values: Record): Promise>;
- /**
- * Create a new entity with the values supplied and also a metadata-for reference
- * @param values a simple object containing the values to create
- */
- create(values: Record, metadataFor: MetadataFor | string): Promise>;
- /**
- * Update an existing entity with the values supplied
- */
- update(id: number, values: Record): Promise>;
- /**
- * Delete an entity
- * @param id id of the item to delete
- */
- delete(id: number): Promise;
- /**
- * Delete an entity
- * @param guid GUID of the item to delete
- */
- delete(guid: string): Promise;
-}
-
-/**
- * Base class doing common checks.
- * This is internal and not important, but we can't keep it out of the docs.
- * @public
- */
-export declare abstract class SxcDataServiceBase extends SxcPart {
- readonly name: string;
- protected readonly webApi: SxcWebApi;
- /* Excluded from this release type: __constructor */
-}
-
-/**
- * This is the root global `window.$2sxc` function / object.
- *
- * It is both a function `window.$2sxc(...)` and object `window.$2sxc.insights...`
- *
- * If the page feature `2sxc.JsCms` is enabled, the `window.$2sxc` will also be a [SxcGlobalWithCms](xref:Api.Js.SxcJs.SxcGlobalWithCms)
- * @public
- */
-export declare interface SxcGlobal {
- /**
- * Get an Sxc Instance
- * @param id number: moduleId | HTMLElement: tag in the page | Sxc: an existing sxc - will just be returned | ContextIdentifier: an identifier in complex scenarios without a moduleId/context
- * @param cbid number
- * @returns SxcInstance
- */
- (id: number | HTMLElement | ContextIdentifier | Sxc, cbid?: number): Sxc;
- /**
- * Get an Sxc Instance using the moduleId.
- * Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
- * @param moduleId number: moduleId
- * @returns SxcInstance
- * @since v14.01
- */
- get(moduleId: number): Sxc;
- /**
- * Get an Sxc Instance using the moduleId and contentBlockId.
- * Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
- * @param moduleId number: moduleId
- * @param contentBlockId number: content-block ID
- * @returns Sxc
- * @since v14.01
- */
- get(moduleId: number, contentBlockId: number): Sxc;
- /**
- * Get an Sxc Instance using a tag / `HtmlElement`. Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
- * @param tag HTMLElement: tag in the page
- * @returns Sxc
- * @since v14.01
- */
- get(tag: HTMLElement): Sxc;
- /**
- * Get an Sxc Instance using a full context-identifier (advanced). Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
- * @param context ContextIdentifier: full context identifier
- * @returns Sxc
- * @since v14.01
- */
- get(context: ContextIdentifier): Sxc;
- /**
- * Get an Sxc Instance passing in an existing Sxc - just for cases where you're not sure what you aready have. Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
- * @param sxc Sxc: an existing sxc - will just be returned
- * @returns Sxc - the same Sxc as the one which was passed in
- * @since v14.01
- */
- get(sxc: Sxc): Sxc;
- /* Excluded from this release type: _controllers */
- /* Excluded from this release type: beta */
- /* Excluded from this release type: _manage */
- /* Excluded from this release type: _translateInit */
- /* Excluded from this release type: debug */
- /* Excluded from this release type: stats */
- /**
- * system information, mainly for checking which version of 2sxc is running
- * note: it's not always updated reliably, but it helps when debugging
- */
- sysinfo: {
- /** the version using the ##.##.## syntax */
- version: string;
- /** a short text description, for people who have no idea what this is */
- description: string;
- };
- /**
- * Environment information
- * @type {SxcGlobalEnvironment}
- */
- env: SxcGlobalEnvironment;
- /**
- * Http helper for API calls and such
- */
- http: SxcGlobalHttp;
- /**
- * The debugging / insights system.
- * Call the `$2sxc.insights()` without parameters to get instructions what the parameters could be.
- * @param partName optional name of a part of the system for which we want to see the logs
- * @param index optional index on that part for which log we want to see
- * @param start log start index - this is to skip the first few lines if there are too many
- * @param length amount of lines to show - in some cases will default to 25
- */
- insights(partName: string, index?: number, start?: number, length?: number): void;
- /* Excluded from this release type: _insights */
- /* Excluded from this release type: log */
- /**
- * Helper to work with url parameters behind ? or #
- */
- urlParams: UrlParams;
- /* Excluded from this release type: totalPopup */
-}
-
-/**
- * Global Content-Management System on the $2sxc.cms.
- *
- * It is only available if the page is in edit mode / the page feature `2sxc.JsCms` has been activated.
- * @public
- */
-export declare class SxcGlobalCms extends HasLog {
- /* Excluded from this release type: autoDump */
- /* Excluded from this release type: __constructor */
- /* Excluded from this release type: resetLog */
- /**
- * Run a command within a specific context - mostly for internal use.
- * @param runParams The complete run params with a context
- * @returns A promise which triggers when the command has completed.
- */
- run(runParams: RunParamsWithContext): Promise;
- /**
- * Run a command within a specific context.
- * @param tag The context providing tag - an HTML tag inside a module/content-block
- * @param action command-name (action)
- * @param event Optional mouse-event which allows the command to do some optimizations for that case - like a mouse-click
- * @returns A promise which triggers when the command has completed.
- */
- run(tag: HTMLElement, action: string, event?: MouseEvent): Promise;
- /**
- * Run a command within a specific context.
- * @param tag The context providing tag - an HTML tag inside a module/content-block
- * @param action command-name (action)
- * @param params an object containing the the command-params
- * @param event Optional mouse-event which allows the command to do some optimizations for that case - like a mouse-click
- * @returns A promise which triggers when the command has completed.
- */
- run(tag: HTMLElement, action: string, params?: CommandParams, event?: MouseEvent): Promise;
- /**
- * Run a command within a specific context.
- * @param tag The context providing tag - an HTML tag inside a module/content-block
- * @param commandParams an object containing the the command-params as well as the command-name (action)
- * @param event Optional mouse-event which allows the command to do some optimizations for that case - like a mouse-click
- * @returns A promise which triggers when the command has completed.
- */
- run(tag: HTMLElement, commandParams: CommandParams, event?: MouseEvent): Promise;
- /* Excluded from this release type: runInternal */
- /* Excluded from this release type: do */
-}
-
-/* Excluded from this release type: SxcGlobalDebug */
-
-/**
- * Provides environment information to $2sxc - usually page-id, api-root and stuff like that
- * @public
- */
-export declare class SxcGlobalEnvironment extends HasLog {
- /* Excluded from this release type: header */
- /**
- * Flag to determine if the environment information is available.
- */
- ready: boolean;
- /**
- * Where the environment information came from.
- */
- source: string;
- /* Excluded from this release type: metaLoader */
- /* Excluded from this release type: __constructor */
- /**
- * Manually load a new EnvironmentSpecs in cases where the page cannot provide them.
- * This is only used in scenarios outside of Dnn / Oqtane, you will usually not need this.
- * @param envSpecs new info to load
- * @param source _optional_ name where the data came from
- */
- load(envSpecs: EnvironmentSpecs, source?: string): void;
- /* Excluded from this release type: replacedRvt */
- /* Excluded from this release type: updateRvt */
- /**
- * The API endpoint url from the environment
- */
- api(): string;
- /* Excluded from this release type: appApi */
- /**
- * The current page ID - often needed in API calls
- */
- page(): number;
- /**
- * The request verification token header name for internal WebAPI calls
- */
- rvtHeader(): string;
- /**
- * The request-verification token for internal WebAPI calls
- */
- rvt(): string;
- /* Excluded from this release type: uiRoot */
- /**
- * The platform code like 'oqt' or 'dnn' in case the JS needs to know the difference
- */
- platform(): string;
- /* Excluded from this release type: ensureReadyOrThrow */
-}
-
-/**
- * Global HTTP Service for information and helpers on `$2sxc.http`
- * @public
- */
-export declare class SxcGlobalHttp extends HasLog {
- private env;
- /* Excluded from this release type: __constructor */
- /**
- * All the headers which are needed in an ajax call.
- * @returns Dictionary / Record of headers
- */
- headers(): Record;
- /**
- * All the headers which are needed in an ajax call - within a module context.
- * @param id _optional_ module ID
- * @returns Dictionary / Record of headers
- */
- headers(id: number): Record;
- /**
- * All the headers which are needed in an ajax call - within a module and content-block context.
- * @param id _optional_ module ID
- * @param cbid _optional_ content block ID
- * @returns Dictionary / Record of headers
- */
- headers(id: number, cbid: number): Record;
- /**
- * All the headers which are needed in an ajax call.
- * Uses a module and content-block context (but these could also be null)
- * and a full context identifier for advanced operations.
- * @param id _optional_ module ID
- * @param cbid _optional_ content block ID
- * @param ctx _optional_ context information to include in the header
- * @returns Dictionary / Record of headers
- */
- headers(id: number, cbid: number, ctx: ContextIdentifier): Record;
- /* Excluded from this release type: apiRoot */
- /* Excluded from this release type: appApiRoot */
- /**
- * Convert short urls like `app/auto/api/Posts/All` to the full URL needed.
- * Will ignore urls which clearly already are the full url.
- * @param url short URL like `app/auto/api/Posts/All`
- * @returns the converted, long url with the full endpoint
- */
- apiUrl(url: string): string;
- /**
- * Convert short urls like `app/auto/api/Posts/All` to the full URL needed.
- * Will ignore urls which clearly already are the full url.
- * @param url short URL like `app/auto/api/Posts/All`
- * @param endpointName _optional_ endpoint name if accessing a different exotic endpoint
- * @returns the converted, long url with the full endpoint
- */
- apiUrl(url: string, endpointName: string): string;
-}
-
-/* Excluded from this release type: SxcGlobalManage */
-
-/**
- * $2sxc global interface _extending_ the `SxcGlobal` when the page feature `JsCms` is enabled.
- *
- * If the page feature `2sxc.JsCms` is not enabled, the `window.$2sxc` will be a [SxcGlobal](xref:Api.Js.SxcJs.SxcGlobal)
- * @public
- */
-export declare interface SxcGlobalWithCms {
- /* Excluded from this release type: system */
- /**
- * Will retrieve a resource in the current language.
- * Mainly used for toolbars etc. to support localization.
- *
- * Only available when edit mode is on meaning the page feature JsCms is enabled
- * @param key the key of the resource to translate
- */
- translate(key: string): string;
- /* Excluded from this release type: context */
- /**
- * Content Management features on the $2sxc
- */
- cms: SxcGlobalCms;
-}
-
-/* Excluded from this release type: SxcManage */
-
-/**
- * Base class for anything attached to an sxc-instance.
- * This is internal and not important, but we can't keep it out of the docs.
- * @public
- */
-export declare abstract class SxcPart {
- /* Excluded from this release type: sxc */
- /* Excluded from this release type: partName */
- /* Excluded from this release type: __constructor */
-}
-
-/**
- * Instance Query Service
- * @public
- */
-export declare class SxcQuery extends SxcDataServiceBase {
- readonly name: string;
- /* Excluded from this release type: __constructor */
- getAll(): Promise;
- getAll(urlParams: string | Record): Promise;
- getAll(urlParams: string | Record, data: string | Record): Promise;
- /**
- * Get just one stream, returning an array of items in that stream
- *
- * @template T
- * @param stream
- * @returns {Promise} containing an array of items - or empty if stream not found or nothing returned
- */
- getStream(stream: string): Promise;
- getStream(stream: string, urlParams: string | Record): Promise;
- getStream(stream: string, urlParams: string | Record, data: string | Record): Promise;
- /**
- * Get a query but only the mentioned streams.
- * This will reduce the amount of data retrieved on queries that have many streams.
- * @template T The schema/interfaces of what will be returned
- * @returns {Promise} Promise containing a object with stream-names and items in the streams.
- * @public
- */
- getStreams(streams: string): Promise;
- /**
- * Get a query but only the mentioned streams.
- * This will reduce the amount of data retrieved on queries that have many streams.
- * @template T The schema/interfaces of what will be returned
- * @param streams name of streams to get, comma separated
- * @param urlParams additional parameters for the URL, either as a string or as a object
- * @returns {Promise} Promise containing a object with stream-names and items in the streams.
- * @public
- */
- getStreams(streams: string, urlParams: string | Record): Promise;
- /**
- * Get a query but only the mentioned streams.
- * This will reduce the amount of data retrieved on queries that have many streams.
- * @template T The schema/interfaces of what will be returned
- * @param streams name of streams to get, comma separated
- * @param urlParams additional parameters for the URL, either as a string or as a object
- * @param data data to include in case of a POST call - if this is provided, it will use a post
- * @returns {Promise} Promise containing a object with stream-names and items in the streams.
- * @public
- */
- getStreams(streams: string, urlParams: string | Record, data: string | Record): Promise;
- /* Excluded from this release type: getInternal */
-}
-
-/* Excluded from this release type: SxcTools */
-
-/* Excluded from this release type: SxcVersion */
-
-/**
- * helper API to run ajax / REST calls to the server
- * it will ensure that the headers etc. are set correctly
- * and that urls are rewritten
- * @public
- */
-export declare class SxcWebApi implements ZzzSxcWebApiDeprecated {
- private readonly sxc;
- /* Excluded from this release type: env */
- /* Excluded from this release type: __constructor */
- /**
- * **Deprecated** - docs in the separate interface
- * @deprecated use fetchJson instead
- */
- get(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated** - docs in the separate interface
- * @deprecated use fetchJson instead
- */
- post(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated** - docs in the separate interface
- * @deprecated use fetchJson instead
- */
- delete(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated** - docs in the separate interface
- * @deprecated use fetchJson instead
- */
- put(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated** - docs in the separate interface
- * @deprecated use fetchJson instead
- */
- request(settings: string | ZzzAjaxSettingsDeprecated, params: any, data: any, preventAutoFail: boolean, method: string): any;
- /**
- * Will retrieve data from the backend using a standard fetch.
- * @param url a full url or short-hand like `controller/method?params` `app/auto/api/controller/method?params`. Note that params would also be specified on the url.
- * @param data optional POST data
- * @param method optional method, defaults to `GET` unless it has data, in which case it defaults to `POST`
- * @returns a Promise containing a Response object, just like a normal fetch would.
- * example: webApi.fetchRaw('Rss/Feed');
- * example: webApi.fetchRaw(webApi.url('Rss/Feed', { id: 47 })); // url params
- * example: webApi.fetchRaw('Rss/Feed', { id: 47 }); // post params
- * example: webApi.fetchRaw(webApi.url('Rss/Feed', { id: 47 }), { something: 'this is a test' }); // url & post params
- * maybe: webApi.fetchRaw({url: 'Rss/Feed', params: { id: 47 }})
- * maybe: webApi.fetchRaw({url: ..., params: { ...}, body: { ...}, method: 'GET' })
- */
- fetchRaw(url: string, data?: string | Record, method?: string): Promise;
- /* Excluded from this release type: fetch */
- /**
- * Will retrieve data from the backend using a standard fetch and give you an object.
- * @param url a full url or short-hand like `controller/method?params` `app/auto/api/controller/method?params`. Note that params would also be specified on the url.
- * @param data optional POST data
- * @param method optional method, defaults to `GET` unless it has data, in which case it defaults to `POST`
- * @returns a Promise containing any object.
- */
- fetchJson(url: string, data?: string | Record, method?: string): Promise;
- /**
- * All the headers which are needed in an ajax call for this to work reliably.
- * Use this if you need to get a list of headers in another system
- */
- headers(method?: string): Record;
- /**
- *
- * @param url A short, medium or long url.
- * Short like `controller/method`,
- * medium like `app/auto/api/controller/method`
- * long like `https://xyz.
- * In all cases it can also have ?params etc.
- * @param params Optional parameters as string or object, will be added to url-params.
- * @returns In the cases of a short/medium url,
- * it will auto-expand to have the full url as needed for an API call.
- */
- url(url: string, params?: string | Record): string;
-}
-
-/* Excluded from this release type: SystemUpgrader */
-
-/* Excluded from this release type: TemplateEditor */
-
-/* Excluded from this release type: TemplateIdentifier */
-
-/* Excluded from this release type: Toolbar */
-
-/* Excluded from this release type: TOOLBAR_FOLLOW_ALWAYS */
-
-/* Excluded from this release type: TOOLBAR_FOLLOW_INITIAL */
-
-/* Excluded from this release type: TOOLBAR_FOLLOW_SCROLL */
-
-/* Excluded from this release type: TOOLBAR_SHOW_ALWAYS */
-
-/* Excluded from this release type: TOOLBAR_SHOW_HOVER */
-
-/* Excluded from this release type: ToolbarButtonSettings */
-
-/* Excluded from this release type: ToolbarConfigLoader */
-
-/* Excluded from this release type: ToolbarConfigLoaderV09 */
-
-/* Excluded from this release type: ToolbarConfigLoaderV10 */
-
-/* Excluded from this release type: ToolbarInitConfig */
-
-/* Excluded from this release type: ToolbarManager */
-
-/* Excluded from this release type: ToolbarSettings */
-
-/* Excluded from this release type: ToolbarTemplate */
-
-/* Excluded from this release type: ToolbarTemplateGroup */
-
-/* Excluded from this release type: ToolbarTemplateManager */
-
-/* Excluded from this release type: ToolbarWip */
-
-/* Excluded from this release type: ToolbarWithWorkflow */
-
-/**
- * A workflow manager _of a Toolbar_ which will run stuff before / after commands.
- * When toolbars are created, they will add a Manager and then raise an event for in-page code to add workflow steps.
- * Normally the toolbar with raise a `toolbar-init` event where you can then add steps.
- * @public
- */
-export declare class ToolbarWorkflowManager extends HasLog {
- private isDummy;
- /* Excluded from this release type: steps */
- /* Excluded from this release type: __constructor */
- /**
- * Register one or many [workflow-steps](xref:Api.Js.SxcJs.WorkflowStep) to the toolbar, to use if toolbar commands are executed.
- */
- add(steps: WorkflowStep | WorkflowStep[]): void;
- /* Excluded from this release type: addOne */
- /* Excluded from this release type: run */
- /* Excluded from this release type: attach */
- /* Excluded from this release type: runNextPromiseIfNotCancelled */
-}
-
-/* Excluded from this release type: ToSxcName */
-
-/* Excluded from this release type: TotalPopup */
-
-declare type TypeAutoAddMore = null | 'start' | 'end' | true;
-
-/* Excluded from this release type: TypeFollow */
-
-declare type TypeHover = 'left' | 'right' | 'none';
-
-/* Excluded from this release type: TypeShow */
-
-/* Excluded from this release type: TypeTbD */
-
-export declare type TypeValue = boolean | string | number | Date;
-
-/* Excluded from this release type: urlClean */
-
-declare interface UrlItemParams {
- prefill?: Record;
- items?: string;
- contentTypeName?: string;
- filters?: string;
-}
-
-/**
- * Helper object to read url params.
- * Available on `$2sxc.urlParams`
- * @public
- */
-export declare class UrlParams {
- /**
- * Get a param from the url, no matter if it's behind ? or #
- * If not found, will return an empty string `''`
- * @param name
- */
- get(name: string): string;
- /**
- * Get a required param from the url, no matter if it's behind ? or #
- * Will throw an error if not found
- * @param name
- */
- require(name: string): string;
- /**
- * Checks if debug is enabled in the URL
- * @returns
- */
- isDebug(): boolean;
- /* Excluded from this release type: toUrl */
- /* Excluded from this release type: toObj */
-}
-
-/* Excluded from this release type: WorkflowCommands */
-
-/* Excluded from this release type: WorkflowHelper */
-
-/**
- * Phases / events of a specific workflow.
- */
-export declare enum WorkflowPhases {
- /**
- * Run at every phase - before and after events/commands
- */
- all = "all",
- /**
- * Run before a specific event / command
- */
- before = "before",
- /**
- * Run after a specific event / command
- */
- after = "after"
-}
-
-/* Excluded from this release type: WorkflowPromiseFactory */
-
-/**
- * A workflow step (code-sequence) to run before/after specific events.
- * @public
- */
-export declare interface WorkflowStep {
- /**
- * The name of this step, in case it needs to be replaced or somehow controlled
- * Will be empty by default
- */
- name?: string;
- /**
- * The action this step is for, can be 'any', 'edit', etc.
- * Will be 'all' by default
- */
- command: string;
- /**
- * Action-phase being run, like 'all', 'before', 'after'
- * will be 'before' by default
- */
- phase?: WorkflowPhases;
- /**
- * Execution priority, higher comes first
- * Will be 1 by default.
- */
- priority?: number;
- /**
- * The code which is run, must be a promise-factory.
- * So it's a function that will return a promise.
- * Required.
- * See [](xref:Api.Js.SxcJs.WorkflowStepCode)
- */
- code: (args: WorkflowStepCodeArguments) => WorkflowStepCodeArguments;
-}
-
-/* Excluded from this release type: WorkflowStepCode */
-
-/**
- * Arguments for [WorkflowStepCode](xref:Api.Js.SxcJs.WorkflowStepCode).
- * Will be passed to your code and should also be returned by your code.
- * This also allows cancelling further execution.
- * @public
- */
-export declare class WorkflowStepCodeArguments {
- /**
- * Name this workflow is running for
- */
- command: string;
- /**
- * The phase it's in (before, after, etc.)
- */
- phase: WorkflowPhases;
- /**
- * Context of the current command / step being run
- */
- context: ContextComplete;
- /**
- * Result in after-phases of the workflow
- * BETA - never really tested this
- */
- result: unknown;
- /* Excluded from this release type: __constructor */
- /**
- * If the workflow should be cancelled.
- * Can be set by any workflow step.
- * If set to true, following steps / workflows will not run.
- */
- cancel: boolean;
-}
-
-/* Excluded from this release type: WorkflowStepHelper */
-
-/**
- * Deprecated parameters for old jQuery AJAX calls.
- * Shouldn't be used any more.
- * @public
- * @deprecated
- */
-export declare interface ZzzAjaxSettingsDeprecated {
- /* Excluded from this release type: endpoint */
- /**
- * Controller name, for controller/action calls
- */
- controller?: string;
- /**
- * action name, for controller/action calls
- */
- action?: string;
- /**
- * The params to be used in the url for the request
- */
- params?: any;
- /* Excluded from this release type: preventAutoFail */
-}
-
-/**
- * **Deprecated**
- * Old APIs on sxc.webApi.
- * They only exist if jQuery is included on the page, and we highly discourage their use.
- * @deprecated
- */
-export declare interface ZzzSxcWebApiDeprecated {
- /**
- * **Deprecated**
- * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
- * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
- *
- * Returns an http-get promise using jQuery
- * @param settingsOrUrl the url to get
- * @param params jQuery style ajax parameters
- * @param data jQuery style data for post/put requests
- * @param preventAutoFail
- * @returns jQuery ajax promise object
- * @deprecated use fetchJson instead
- */
- get(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated**
- * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
- * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
- *
- * Returns an http-post promise using jQuery
- * @param settingsOrUrl the url to get
- * @param params jQuery style ajax parameters
- * @param data jQuery style data for post/put requests
- * @param preventAutoFail
- * @returns jQuery ajax promise object
- * @deprecated use fetchJson instead
- */
- post(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated**
- * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
- * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
- *
- * Returns an http-delete promise using jQuery
- * @param settingsOrUrl the url to talk to
- * @param params jQuery style ajax parameters
- * @param data jQuery style data for post/put requests
- * @param preventAutoFail
- * @returns jQuery ajax promise object
- * @deprecated use fetchJson instead
- */
- delete(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated**
- * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
- * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
- *
- * Returns an http-put promise using jQuery
- * @param settingsOrUrl the url to put
- * @param params jQuery style ajax parameters
- * @param data jQuery style data for post/put requests
- * @param preventAutoFail
- * @returns jQuery ajax promise object
- * @deprecated use fetchJson instead
- */
- put(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
- /**
- * **Deprecated**
- * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
- * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
- *
- * Generic http request using jQuery
- * @param settingsOrUrl the url to get
- * @param params jQuery style ajax parameters
- * @param data jQuery style data for post/put requests
- * @param preventAutoFail
- * @param method the http verb name
- * @returns jQuery ajax promise object
- * @deprecated use fetchJson instead
- */
- request(settings: string | ZzzAjaxSettingsDeprecated, params: any, data: any, preventAutoFail: boolean, method: string): any;
-}
-
-export { }
diff --git a/projects/sxc-typings/index-public.d.ts b/projects/sxc-typings/index-public.d.ts
index 7bc33eebe..28ca55946 100644
--- a/projects/sxc-typings/index-public.d.ts
+++ b/projects/sxc-typings/index-public.d.ts
@@ -1,20 +1,2110 @@
-/*
- Special custom d.ts file
- this has the definition of the augmented window object, because the api exporter doesn't support this.
-*/
+/* Excluded from this release type: Actions */
-import { SxcGlobal } from './index-public-part.d';
+/* Excluded from this release type: AjaxPromise */
-export * from "./index-public-part.d";
+/* Excluded from this release type: AntiForgeryTokenHeaderNameDnn */
+
+/* Excluded from this release type: ApiExtensionPlaceholder */
+
+/* Excluded from this release type: ApiUrlRoots */
+
+/* Excluded from this release type: AppApiMap */
+
+/* Excluded from this release type: AppApiMarker */
+
+/* Excluded from this release type: AssetsLoader */
+
+/* Excluded from this release type: AttrJsonContentGroup */
+
+/* Excluded from this release type: AttrJsonEditContext */
+
+/* Excluded from this release type: AttrJsonEntity */
+
+/* Excluded from this release type: AttrJsonEnvironment */
+
+/* Excluded from this release type: AttrJsonError */
+
+/* Excluded from this release type: AttrJsonLanguage */
+
+/* Excluded from this release type: AttrJsonUi */
+
+/* Excluded from this release type: AttrJsonUser */
+
+/* Excluded from this release type: BuildRule */
+
+/* Excluded from this release type: BuildSteps */
+
+/* Excluded from this release type: buildSxcRoot */
+
+/* Excluded from this release type: Button */
+
+/* Excluded from this release type: ButtonCommand */
+
+/* Excluded from this release type: ButtonConfigLoader */
+
+declare type ButtonGenOrProp = ButtonPropGen | T;
+
+/* Excluded from this release type: ButtonGroup */
+
+/* Excluded from this release type: ButtonGroupConfigLoader */
+
+/* Excluded from this release type: ButtonGroupsWip */
+
+/* Excluded from this release type: ButtonGroupWip */
+
+/**
+ * This is the most common call signature on most ButtonConfig properties
+ * @public
+ */
+declare type ButtonPropGen = (context: ContextComplete) => T;
+
+/**
+ * Structure for constants in the selectors, to guarantee we got everything
+ */
+declare interface CbOrMod {
+ id: string;
+ class: string;
+ selector: string;
+ findAllLists: () => HTMLElement[];
+ findClosestList: (element: HTMLElement) => HTMLElement;
+ context: string;
+ singleItem?: string;
+}
+
+/* Excluded from this release type: CmdParHlp */
+
+/* Excluded from this release type: CmsEngine */
+
+/* Excluded from this release type: Command */
+
+/**
+ * Parameters used for the command `add-existing`.
+ *
+ * The contentType name determines what items will be shown in the dialog.
+ * Depending on your use case, you will need to use the
+ * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) or [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) parameters as well.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandAddExistingParams extends CommandAddParams {
+}
+
+/**
+ * Parameters used for the command `add`.
+ *
+ * The `contentType` determines what items will be created, the `index` where.
+ * Depending on your use case, you will need to use the
+ * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) or [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) parameters as well.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandAddParams extends CommandContentTypeParams, Pick, Partial>, Partial> {
+}
+
+/* Excluded from this release type: CommandCode */
+
+/**
+ * Parameters used for the command `code` on toolbars (new in v14.4).
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandCodeParams {
+ /**
+ * Name of the function to call - must be available in the context.
+ * This is usually as a function window. Example:
+ *
+ * If `call` is `sayHello` you need a `window.sayHello(params, context, event)`.
+ */
+ call: string;
+}
+
+/* Excluded from this release type: CommandConfigLoader */
+
+/**
+ * Parameters used for the command `contenttype`.
+ *
+ * The content-type name determines what items will be loaded to manage the fields.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandContentTypeParams {
+ /**
+ * The content-type name
+ */
+ contentType: string;
+}
+
+/**
+ * Parameters used for the command `copy`.
+ * Will copy the entity on `entityId`.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandCopyParams extends CommandContentTypeParams, CommandParamsEntityById {
+}
+
+/* Excluded from this release type: CommandCustomParams */
+
+/**
+ * Parameters used for the command `data`.
+ *
+ * The content-type name determines what items will be managed.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandDataParams extends CommandContentTypeParams {
+ /**
+ * Filters to apply to the list of items.
+ *
+ * Each property targets a field.
+ * The value is a string, number or array for filtering EntityIds or EntityGuids
+ */
+ filters?: Record;
+}
+
+/**
+ * Parameters used for the command `delete`.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandDeleteParams {
+ /**
+ * ID of item to delete, usually detected from context.
+ */
+ entityId: number;
+ /**
+ * Guid of item to delete, usually detected from context.
+ */
+ entityGuid: string;
+ /**
+ * Title of item to delete, usually detected from context.
+ * This is important to show the "Are you sure?" dialog.
+ */
+ entityTitle: string;
+}
+
+/* Excluded from this release type: CommandLinkGenerator */
+
+/**
+ * Parameters used for the command `metadata`.
+ *
+ * Will do either one of these:
+ * - if it has an `entityId`, will just open `edit` for that Entity
+ * - if it has no `entityId`, will open `new` for the current `contentType`
+ * and assign to the target specified by `metadata`:
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandMetadataParams extends CommandContentTypeParams, CommandParamsEntityById {
+ /**
+ * Target to assign the metadata to.
+ */
+ metadata: CommandParamsMetadata;
+}
+
+/**
+ * Names of commands known to 2sxc CMS - for use in toolbars and calling commands directly from code
+ * @public
+ */
+export declare const enum CommandNames {
+ /**
+ * `add` adds another demo-item to a **list of items**.
+ * It does not open the edit-dialog.
+ *
The new item is placed after the item the (+) was clicked on.
+ *
💡
+ * This is different than new, which opens a dialog to add something.
+ *
🪜 Only appears on toolbars of items which are in a list.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandAddParams)
+ */
+ add = "add",
+ /**
+ * `add-existing` opens a dialog allowing the user to select an existing item to add to a **list of items**.
+ *
The new item is placed after the item the (+) was clicked on.
+ *
🪜 Only appears on toolbars of items which are in a list.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandAddExistingParams)
+ *
🆕 in v11.01
+ */
+ addExisting = "add-existing",
+ /**
+ * `app` opens the app-admin dialog
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ app = "app",
+ /**
+ * `app-import` opens the dialog to import an App.
+ *
🔘 This is not available on the toolbar.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ appImport = "app-import",
+ /**
+ * `app-resources` opens the edit dialog for app-resources (multi-language texts, labels etc.).
+ *
🔘 It's disabled on the toolbar if the app doesn't have resource-values to configure.
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ appResources = "app-resources",
+ /**
+ * `app-settings` opens the edit dialog for the app-settings.
+ *
🔘 It's disabled on the toolbar if the app doesn't have setting-values to configure
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ appSettings = "app-settings",
+ /**
+ * `apps` opens the manage all apps dialog.
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected based on toolbar)
+ */
+ apps = "apps",
+ /**
+ * `data` opens the list to manage all items of a specific content-type.
+ *
🔘 Will use the settings of the current template to open.
+ * It is only shown to elevated admins.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandDataParams)
+ */
+ data = "data",
+ /* Excluded from this release type: data_old_contentItems */
+ /**
+ * `fields` opens the dialog to view or modify fields of a content-type.
+ *
🔘 On a toolbar it will use the content-type of the current item.
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandContentTypeParams)
+ */
+ fields = "fields",
+ /* Excluded from this release type: fields_old_contenttype */
+ /**
+ * `copy` opens the edit-dialog for the current item in copy-mode, so when saving it will be a new item.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandCopyParams)
+ *
🆕 in v14.03
+ */
+ copy = "copy",
+ /**
+ * `code` will execute custom javascript.
+ *
🔘 This is mainly for toolbars, to add buttons with custom code.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)
+ *
_this used to be called `custom` and had a different setup_
+ */
+ code = "code",
+ /* Excluded from this release type: code_old_custom */
+ /**
+ * `delete` will delete (not just remove) a content-item.
+ *
💡 This is similar to `remove` but really deletes the data from the DB.
+ *
🔘 It only appears if the toolbar explicitly asks for it.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandDeleteParams)
+ * (auto-detected from context)
+ */
+ delete = "delete",
+ /**
+ * `edit` opens an edit-dialog.
+ *
+ * In scenarios where the page is currently showing a _demo item_, this will have the same effect as `add`.
+ * So instead of editing the _demo item_ it would trigger a dialog to add a new item.
+ *
🔘 Only appears if `entityId` is known or item is in a list.
+ *
📩 Parameters either one of these:
+ * [Id](xref:Api.Js.SxcJs.CommandParamsEntityById),
+ * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
+ * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * (auto-detected from context)
+ */
+ edit = "edit",
+ /* Excluded from this release type: image */
+ /**
+ * `insights` opens the insights logs page
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required.
+ */
+ insights = "insights",
+ /* Excluded from this release type: insights_old_server */
+ /**
+ * `instance-list` opens a dialog to manually re-order **items in a list**.
+ *
🪜 Only appears on toolbars of items which are in a list.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ list = "list",
+ /* Excluded from this release type: list_old_instanceList */
+ /**
+ * `layout` opens the in-page dialog to change the layout of the current content.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ layout = "layout",
+ /**
+ * `metadata` opens the edit-dialog for the current metadata item.
+ *
🔘 It only appears if the toolbar explicitly asks for it.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandMetadataParams)
+ */
+ metadata = "metadata",
+ /**
+ * `more` create a "…" (ellipsis) button which flips through the button groups of toolbars
+ *
🔘 It only appears if the toolbar has `more`=`auto` and has multiple groups.
+ *
📩 No params required,
+ * (auto-detected based on toolbar)
+ */
+ more = "more",
+ /**
+ * `movedown` moves a content-item down one position in a **list of items**.
+ *
🪜 Only appears on toolbars of items which are in a list.
+ *
📩 Parameters either one of these:
+ * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
+ * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * (auto-detected from context)
+ */
+ moveDown = "movedown",
+ /**
+ * `moveup` moves a content-item up one position in a **list of items**.
+ *
🪜 Only appears on toolbars of items which are in a list.
+ *
📩 Parameters either one of these:
+ * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
+ * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * (auto-detected from context)
+ */
+ moveUp = "moveup",
+ /**
+ * `new` opens the edit-dialog to create a new item/entity.
+ *
+ * If the previous item is in a list, it will add it to that list _after_ the previous item with the toolbar.
+ * Otherwise it just creates it and the visualization will differ depending on the App.
+ *
🪜 It works differently for lists - in which case it also adds it to the list.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandNewParams)
+ * (usually auto-detected from context)
+ */
+ new = "new",
+ /* Excluded from this release type: newMode */
+ /**
+ * `publish` tells the system to update a content-items status to published. If there was a published and a draft before, the draft will replace the previous item
+ *
🔘 Appears automatically if the item is in draft mode / not published.
+ *
📩 Parameters either one of these:
+ * [Id](xref:Api.Js.SxcJs.CommandParamsEntityById),
+ * [In Block](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock),
+ * [In List](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * (auto-detected from context)
+ */
+ publish = "publish",
+ /**
+ * `remove` removes an item from a list of items.
+ *
🪜 Only appears on toolbars of items which are in a list.
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * (auto-detected from context)
+ */
+ remove = "remove",
+ /**
+ * `replace` opens the dialog to assign a different content-item in this slot on module-assigned content items
+ *
📩 [Parameters](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * (auto-detected from context)
+ */
+ replace = "replace",
+ /**
+ * `template-develop` opens the template-editor dialog in a new window.
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ template = "template",
+ /* Excluded from this release type: template_old_develop */
+ /**
+ * `template-query` opens the pipeline/query-designer in a new window.
+ *
🔘 It's not available on the simple Content App, only on full Apps.
+ * It is disabled if no query is configured.
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ query = "query",
+ /* Excluded from this release type: query_old_templateQuery */
+ /**
+ * `template-settings` will change settings on the template currently used
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ */
+ view = "view",
+ /* Excluded from this release type: view_old_templateSettings */
+ /**
+ * `system` opens the system dialog for this zone/site.
+ *
🔐 Toolbar shows this automatically to elevated admins.
+ *
📩 No params required,
+ * (auto-detected from context)
+ */
+ system = "system",
+ /* Excluded from this release type: system_old_zone */
+}
+
+/**
+ * Parameters used for the command `new`
+ *
+ * The ContentType name determines what kind of item will be created.
+ *
+ * Can also contain `prefill` to add values to the new item.
+ *
+ * Can also contain list-information, in which case it's added to that list.
+ * Depending on your use case, you will need to use the
+ * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) or [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) parameters as well.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandNewParams extends CommandContentTypeParams, Partial, Partial {
+ /**
+ * Optional values to prefill in the new-form
+ */
+ prefill?: Record;
+}
+
+/**
+ * Command parameters are handed over to a command for execution.
+ * It contains all possible combinations of parameters that can be used in a command.
+ *
+ * We will try to improve how this is documented, but ATM it just has all parameters,
+ * even though you may need none, or just a few.
+ *
+ * _Note: For your specific commands, you can also pass other parameters._
+ *
+ * **Important for the docs**
+ *
+ * Most properties are actually not visible (you will get them in the types though).
+ * So actually you will usually create one of these:
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityById)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock)
+ * * [](xref:Api.Js.SxcJs.CommandParamsEntityInList)
+ * * [](xref:Api.Js.SxcJs.CommandAddParams)
+ * * [](xref:Api.Js.SxcJs.CommandAddExistingParams)
+ * * [](xref:Api.Js.SxcJs.CommandDataParams)
+ * * [](xref:Api.Js.SxcJs.CommandCopyParams)
+ * * [](xref:Api.Js.SxcJs.CommandCodeParams)
+ * * [](xref:Api.Js.SxcJs.CommandDeleteParams)
+ * * [](xref:Api.Js.SxcJs.CommandMetadataParams)
+ * * [](xref:Api.Js.SxcJs.CommandNewParams)
+ *
+ * Because of this, most of the properties below are NOT documented, as their purpose can change depending on the command used.
+ * @public
+ */
+export declare interface CommandParams extends Record {
+ /* Excluded from this release type: action */
+ /* Excluded from this release type: items */
+ /* Excluded from this release type: mode */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ contentType?: string;
+ /* Excluded from this release type: contentTypeName */
+ /* Excluded from this release type: pipelineId */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ filters?: string;
+ /* Excluded from this release type: dialog */
+ /* Excluded from this release type: sortOrder */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ index?: number;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ entityId?: number;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ entityGuid?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ entityTitle?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ title?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ useModuleList?: true;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ metadata?: CommandParamsMetadata;
+ /* Excluded from this release type: isPublished */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ prefill?: Record;
+ /* Excluded from this release type: customCode */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ call?: string;
+ /* Excluded from this release type: apps */
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ parent?: string;
+ /**
+ * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).
+ * @public
+ */
+ fields?: string;
+ /* Excluded from this release type: isshared */
+}
+
+/**
+ * Parameters used for commands which need an entity ID or a list-reference.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandParamsEntity extends CommandParamsEntityById, CommandParamsEntityInContentBlock, CommandParamsEntityInList {
+}
+
+/**
+ * Parameters used for commands which address a specificy entity.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandParamsEntityById {
+ /**
+ * ID of item to edit.
+ */
+ entityId: number;
+}
+
+/**
+ * Parameters used for command which expect an item from a list of a ContentBlock.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandParamsEntityInContentBlock {
+ /**
+ * Determins the position of the item in the list.
+ * index was added in v14.04 to replace the `sortOrder` which had a confusing name.
+ */
+ index: number;
+ /**
+ * Must be true, to work on the module list.
+ */
+ useModuleList: true;
+}
+
+/**
+ * Parameters used for command which expect an item in a list (field) of a parent.
+ *
+ * ⤴️ back to [All Command Names](xref:Api.Js.SxcJs.CommandNames)
+ * @public
+ */
+export declare interface CommandParamsEntityInList {
+ /**
+ * Determins the position of the item in the list of that entity-field.
+ */
+ index: number;
+ /**
+ * Parent Entity field(s) name(s).
+ * Usually just one field, like `Authors`.
+ * In field-sets it could be `Author,Award` or similar.
+ */
+ fields: string;
+ /**
+ * Parent entity _GUID_ which has the field referencing this item.
+ */
+ parent: string;
+}
+
+/**
+ * Parameters on `metadata` for commands which have a metadata-target.
+ * @public
+ */
+export declare interface CommandParamsMetadata {
+ /**
+ * The key which identifies the target of this metadata item
+ */
+ key: string;
+ /**
+ * the key type, will default to 'string'
+ */
+ keyType?: string;
+ /**
+ * The target type, will default to 10 = CMS-Item
+ */
+ targetType?: MetadataTargetTypes;
+}
+
+declare type CommandPromise = Promise;
+
+/* Excluded from this release type: Commands */
+
+/* Excluded from this release type: ContentBlockReference */
+
+/* Excluded from this release type: ContentListActionParams */
+
+/* Excluded from this release type: ContentListActions */
+
+/**
+ * @public
+ */
+declare class ContextBundleContent extends ContextBundleInstance {
+ /* Excluded from this release type: item */
+ /* Excluded from this release type: contentBlockReference */
+ /* Excluded from this release type: contentBlock */
+ /* Excluded from this release type: __constructor */
+}
+
+/**
+ * @public
+ */
+declare class ContextBundleInstance {
+ /**
+ * instance of sxc object
+ */
+ sxc: Sxc;
+ /* Excluded from this release type: instance */
+ /* Excluded from this release type: app */
+ /* Excluded from this release type: ui */
+ /* Excluded from this release type: page */
+ /* Excluded from this release type: system */
+ /* Excluded from this release type: tenant */
+ /* Excluded from this release type: user */
+ _isContext: boolean;
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: is */
+}
+
+/**
+ * @public
+ */
+declare class ContextBundleToolbar extends ContextBundleContent {
+ /* Excluded from this release type: toolbar */
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: forButton */
+}
+
+/**
+ * @public
+ */
+declare class ContextComplete extends ContextBundleToolbar {
+ /* Excluded from this release type: _isCtxComplete */
+ /* Excluded from this release type: button */
+ /* Excluded from this release type: commandWorkflow */
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: findContext */
+ /* Excluded from this release type: contextCopy */
+ /* Excluded from this release type: getContextInstance */
+ /* Excluded from this release type: is */
+}
+
+/**
+ * ContextIdentifier is used to initialize a Sxc object outside of the default context.
+ * @public
+ */
+export declare class ContextIdentifier {
+ /**
+ * ZoneId of this Context
+ * @requires zoneId
+ */
+ zoneId: number;
+ /**
+ * AppId of this Context
+ * @requires appId
+ */
+ appId: number;
+ /**
+ * PageId of this Context (optional)
+ * @optional
+ */
+ pageId?: number;
+ /**
+ * ModuleId of this Context (optional)
+ * @optional
+ */
+ moduleId?: number;
+ /* Excluded from this release type: _ignoreHeaders */
+ /* Excluded from this release type: complete */
+ /* Excluded from this release type: blockId */
+ /* Excluded from this release type: is */
+ /* Excluded from this release type: ensureCompleteOrThrow */
+}
+
+/* Excluded from this release type: ContextOfApp */
+
+/* Excluded from this release type: ContextOfContentBlock */
+
+/* Excluded from this release type: ContextOfInstance */
+
+/* Excluded from this release type: ContextOfItem */
+
+/* Excluded from this release type: ContextOfPage */
+
+/* Excluded from this release type: ContextOfSystem */
+
+/* Excluded from this release type: ContextOfTenant */
+
+/* Excluded from this release type: ContextOfUi */
+
+/* Excluded from this release type: ContextOfUser */
+
+/* Excluded from this release type: DnnUiRoot */
+
+/* Excluded from this release type: EnvironmentMetaLoader */
+
+/**
+ * A context information for the current page, helping the JS talk with the backend
+ * @public
+ */
+export declare interface EnvironmentSpecs {
+ /** Page ID */
+ page: number;
+ /** Optional API key - optional if set from external, because it's auto derived from root */
+ api: string;
+ /** Optional App API Root - required because in Oqtane we'll have a different root for appAPIs */
+ appApi: string;
+ /** Portal root path - used for various things incl. the API root */
+ root: string;
+ /** Request verification token header name */
+ rvtHeader: string;
+ /** Request verification token value */
+ rvt: string;
+ /* Excluded from this release type: uiRoot */
+ /** The platform code like 'dnn' or 'oqt' */
+ platform: string;
+}
+
+/**
+ * Any object that has an own log object
+ * @export
+ * @interface HasLog
+ * @public
+ */
+export declare abstract class HasLog {
+ /* Excluded from this release type: parentLog */
+ /* Excluded from this release type: log */
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: initLog */
+ /* Excluded from this release type: initLogInternal */
+}
+
+/* Excluded from this release type: HeaderNames */
+
+/* Excluded from this release type: InPageButtonGroupJson */
+
+/* Excluded from this release type: InPageButtonJson */
+
+/* Excluded from this release type: InPageCommandJson */
+
+/* Excluded from this release type: InPageCommandJsonWithTooMuchInfo */
+
+/* Excluded from this release type: InPageToolbarConfigVariations */
+
+/* Excluded from this release type: Insights */
+
+declare class InsightsLogSet {
+ name: string;
+ logs: LogList;
+ constructor(name: string);
+}
+
+/* Excluded from this release type: InsightsSingleton */
+
+/* Excluded from this release type: ItemIdentifierCopy */
+
+/* Excluded from this release type: ItemIdentifierGroup */
+
+/* Excluded from this release type: ItemIdentifierInField */
+
+/* Excluded from this release type: ItemIdentifierParent */
+
+/* Excluded from this release type: ItemIdentifierShared */
+
+/* Excluded from this release type: ItemIdentifierSimple */
+
+/* Excluded from this release type: ListWithCursor */
+
+/**
+ * A log object which will collect log entries for another ojbect
+ * @export
+ * @interface Log
+ * @public
+ */
+export declare class Log {
+ /**
+ * List of all entries added to this log
+ */
+ entries: LogEntry[];
+ /* Excluded from this release type: depth */
+ /* Excluded from this release type: callDepths */
+ /* Excluded from this release type: startTime */
+ /**
+ * Maximum amount of entries to add - to prevent memory hoging
+ */
+ maxEntries: number;
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: liveDump */
+ /* Excluded from this release type: _parentHasLiveDump */
+ /* Excluded from this release type: keepData */
+ /* Excluded from this release type: _parentHasKeepData */
+ /* Excluded from this release type: fullIdentifier */
+ /* Excluded from this release type: rename */
+ /* Excluded from this release type: linkLog */
+ /**
+ * Add a simple message to the log
+ * @param message
+ *
+ * preferred usage is with string parameter:
+ * log.add(`description ${ parameter }`);
+ *
+ * in case that we experience error with normal string parameter, we can use arrow function to enclose parameter like this () => parameter
+ * but use it very rarely, because there is certainly a performance implication!
+ * log.add(`description ${() => parameter}`);
+ */
+ add(message: (() => string) | string, data?: unknown): string;
+ /* Excluded from this release type: addData */
+ /* Excluded from this release type: logData */
+ /* Excluded from this release type: _prepareEntry */
+ /* Excluded from this release type: _prepareMessage */
+ /* Excluded from this release type: call */
+ /* Excluded from this release type: _callDepthAdd */
+ /* Excluded from this release type: _callDepthRemove */
+ /* Excluded from this release type: dump */
+ /* Excluded from this release type: dumpList */
+ /* Excluded from this release type: dumpOne */
+ /* Excluded from this release type: _addEntry */
+ /* Excluded from this release type: randomString */
+ /* Excluded from this release type: parent */
+ /* Excluded from this release type: scope */
+ /**
+ * The name of this log, for scenarios where multiple loggers are mixed
+ */
+ name: string;
+ /* Excluded from this release type: id */
+ /* Excluded from this release type: idCache */
+ /* Excluded from this release type: identifier */
+}
+
+/* Excluded from this release type: LogCall */
+
+/**
+ * A log entry item
+ * @export
+ * @interface LogEntry
+ * @public
+ */
+export declare class LogEntry {
+ /* Excluded from this release type: log */
+ message: string;
+ /* Excluded from this release type: depth */
+ /** A timestamp for this entry to better see sequences of things happening */
+ time: number;
+ /* Excluded from this release type: result */
+ /* Excluded from this release type: data */
+ /* Excluded from this release type: data */
+ /* Excluded from this release type: _data */
+ /* Excluded from this release type: source */
+ /* Excluded from this release type: __constructor */
+}
+
+/* Excluded from this release type: LogEntryOptions */
+
+/** @public */
+declare type LogList = Array<{
+ key: string;
+ log: Log;
+}>;
+
+/**
+ * A Metadata-Target identifier to tell an entity that it describes something else.
+ *
+ * Usually used in Sxc instances with the [Data Service](xref:Api.Js.SxcJs.SxcData)
+ *
+ * Warning: There is another MetadataFor type and they are not fully consistent.
+ * This is historical and not easy to correct, but we're working on it.
+ * @public
+ */
+export declare interface MetadataFor {
+ /**
+ * The target type identifier
+ * - TODO: @2dm - THIS SHOULD probably be number only
+ */
+ Target: string | MetadataTargetTypes;
+ /**
+ * The number of the target, if it's identified by a number.
+ */
+ Number?: number;
+ /**
+ * The string-id of the target, if it's identified by a string.
+ */
+ String?: string;
+ /**
+ * The GUID of the target, if it's identified by a GUID.
+ */
+ Guid?: string;
+ /* Excluded from this release type: Singleton */
+}
+
+/**
+ * Metadata Target Types
+ *
+ * These are constants to determine what something is assigned to (e.g. it describes an Entity, a file, etc.)
+ *
+ * Use it for the @see MetadataFor objects
+ * @public
+ */
+export declare enum MetadataTargetTypes {
+ /**
+ * Undefined Type (0) - included for completeness.
+ * Not usually used, actually None (1) is the default
+ */
+ Undefined = 0,
+ /**
+ * Things that are not used as Metadata (1). This is the default for most Entities.
+ */
+ None = 1,
+ /**
+ * Metadata of attributes / fields (2). This is used to store configuration like the field label, amount-of-rows, etc.
+ * Remarks =
+ * The key is always a number (int) pointing to the Attribute ID in the DB.
+ */
+ Attribute = 2,
+ /**
+ * App metadata (3). Used to give Apps additional properties.
+ * Remarks =
+ * The key should always be an int ID of the App.
+ */
+ App = 3,
+ /**
+ * Metadata of entities / data-items (4).
+ * This lets us enhance entities with additional information.
+ * Remarks =
+ * The Key should always be a GUID
+ */
+ Entity = 4,
+ /**
+ * Metadata of a content-type / data-schema (5). Used to give it a description etc.
+ */
+ ContentType = 5,
+ /**
+ * Zone metadata (6) - used to give a Zone additional information.
+ * Only used in very special cases, best not use.
+ */
+ Zone = 6,
+ /**
+ * Item / Object of the Platform, like a File or Folder etc. (10)
+ * Remarks =
+ * * The key is usually a string to further specify what it's describing, like "file:72"
+ * * The text equivalent is CmsObject
+ */
+ CmsItem = 10,
+ /**
+ * The entire system / platform - so Metadata for the current Dnn/Oqtane installation (11).
+ * Remarks =
+ * This is not in use as of now, just added for completeness sakes.
+ * New in v13
+ */
+ System = 11,
+ /**
+ * A Site - like the current site (12)
+ * Remarks = New in v13
+ */
+ Site = 12,
+ /**
+ * A Site - like the current site (13)
+ * Remarks = New in v13 / beta
+ */
+ SiteVariant = 13,
+ /**
+ * A Page - like the current page (14)
+ * Remarks = New in v13
+ */
+ Page = 14,
+ /**
+ * A Page - like the current page (15)
+ * Remarks = New in v13 / beta
+ */
+ PageVariant = 15,
+ /**
+ * A Module - like a module containing some content (16)
+ * Remarks = New in v13
+ */
+ Module = 16,
+ /**
+ * A Module - like a module containing some content (17)
+ * Remarks = New in v13 / beta
+ */
+ ModuleVariant = 17,
+ /**
+ * A User - like the admin-user (18)
+ * Remarks = New in v13
+ */
+ User = 18,
+ /** Custom target (90). This is what you should use for basic apps which have a custom target that's none of the other defaults. */
+ Custom = 90,
+ /** Custom target (91). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom1 = 91,
+ /** Custom target (92). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom2 = 92,
+ /** Custom target (93). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom3 = 93,
+ /** Custom target (94). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom4 = 94,
+ /** Custom target (95). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom5 = 95,
+ /** Custom target (96). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom6 = 96,
+ /** Custom target (97). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom7 = 97,
+ /** Custom target (98). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom8 = 98,
+ /** Custom target (99). Use this for basic apps which need multiple different custom targets (advanced, rare use case) */
+ Custom9 = 99
+}
+
+/* Excluded from this release type: MetaHeaderJsApi */
+
+/* Excluded from this release type: ModifierBase */
+
+/* Excluded from this release type: ModifierContentBlock */
+
+/* Excluded from this release type: ModifierContentBlockInstance */
+
+/* Excluded from this release type: ModifierDnnModule */
+
+/* Excluded from this release type: ModifierDnnModuleInternal */
+
+/* Excluded from this release type: NoJQ */
+
+/* Excluded from this release type: NumberNotDefinedHuge */
+
+/* Excluded from this release type: Obj */
+
+/* Excluded from this release type: Operations */
+
+/* Excluded from this release type: PlatformDnn */
+
+/* Excluded from this release type: PlatformOqtane */
+
+/* Excluded from this release type: positionAndAlign */
+
+/* Excluded from this release type: PositionCoordinates */
+
+/* Excluded from this release type: Positioning */
+
+/* Excluded from this release type: PromiseFactory */
+
+/* Excluded from this release type: QeSelectors */
+
+/* Excluded from this release type: QuickE */
+
+/* Excluded from this release type: QuickEClipboard */
+
+/**
+ * Quick Edit Configuration which has an `enable` and specific button configurations
+ * @public
+ */
+export declare class QuickEditConfig {
+ /**
+ * Determine whether this section is enabled.
+ */
+ enable?: boolean | 'auto';
+ /**
+ * Optional detailed configuration of the buttons.
+ */
+ buttons?: QuickEditConfigButtons;
+}
+
+/**
+ * Buttons on a quick-edit toolbar
+ * @public
+ */
+export declare class QuickEditConfigButtons {
+ /**
+ * Enable the button to "Add Content"
+ */
+ addContent?: boolean;
+ /**
+ * Enable the button to "add App"
+ */
+ addApp?: boolean;
+ /**
+ * Enable the button "Select"
+ */
+ select?: boolean;
+ /**
+ * Enable the button "Paste"
+ */
+ paste?: boolean;
+ /**
+ * Enable the button "Delete"
+ */
+ delete?: boolean;
+ /**
+ * Enable the button "Move"
+ */
+ move?: boolean;
+}
+
+export declare const QuickEditConfigEnableAuto: string;
+
+/**
+ * Quick Edit - Full configuration at root, with `enable` and rules for `modules` and `innerBlocks`
+ * @public
+ */
+export declare class QuickEditConfigRoot extends QuickEditConfig {
+ /**
+ * The buttons configuration on the root.
+ * Will be used for the `modules` and `innerBlocks` if not specified there.
+ * Note that if not specified, will always default to true for all buttons.
+ */
+ buttons?: QuickEditConfigButtons;
+ /**
+ * Optional configuration for the Inner Content Blocks.
+ */
+ innerBlocks?: QuickEditConfig;
+ /**
+ * Optional configuration for the Modules.
+ */
+ modules?: QuickEditConfig;
+ /* Excluded from this release type: getDefault */
+}
+
+/* Excluded from this release type: QuickEditOverlay */
+
+/* Excluded from this release type: refresh */
+
+/* Excluded from this release type: RuleManager */
+
+/* Excluded from this release type: RuleParams */
+
+/**
+ * Parameters for the Instance sxc.cms.run(...) command.
+ * New in 13.03
+ */
+export declare interface RunParams {
+ /**
+ * The action to perform.
+ * Required.
+ */
+ action?: CommandNames;
+ /**
+ * The command params, like contentType, entityId etc.
+ * Optional for many actions.
+ */
+ params?: CommandParams;
+ /**
+ * The event which triggered this command - sometimes useful internally further use.
+ * Optional in most cases, but in some cases it will improve the behavior of the code.
+ */
+ event?: MouseEvent;
+ /**
+ * Workflows work the same way as with a toolbar, except that they are added here and not registered on init.
+ * Because of limitations in automatic documentation, the type here is set to `unknown` but it's actually `WorkflowStep` | `WorkflowStep[]`
+ */
+ workflows?: unknown;
+}
+
+/* Excluded from this release type: RunParamsHelpers */
+
+/**
+ * Parameters for the **Global** $2sxc.cms.run(...) command in Addition to the [RunParams](xref:Api.Js.SxcJs.RunParams).
+ * It provides context to the run-params such as a Sxc instance or a tag which it started on.
+ * New in 12.10
+ * @public
+ */
+export declare interface RunParamsWithContext extends RunParams {
+ /**
+ * The tag on which the run was triggered - it's used to give the command a context to start from
+ * We always need the tag OR the context, but never both
+ */
+ tag?: HTMLElement;
+ /**
+ * The context to run in, basically containing module id, etc.
+ * We always need the tag OR the context, but never both
+ */
+ context?: Sxc | ContextIdentifier;
+}
+
+/* Excluded from this release type: RunParamsWithWorkflows */
+
+/* Excluded from this release type: Selection_2 */
+
+/* Excluded from this release type: SharedLogic */
+
+/* Excluded from this release type: Stats */
+
+/**
+ * The typical sxc-instance object for a specific DNN module or content-block
+ * @public
+ */
+export declare class Sxc extends HasLog {
+ /** the sxc-instance ID, which is usually the DNN Module Id */
+ id: number;
+ /**
+ * content-block ID, which is either the module ID, or the content-block definition entity ID
+ * this is an advanced concept you usually don't care about, otherwise you should research it
+ */
+ cbid: number;
+ /* Excluded from this release type: cacheKey */
+ /* Excluded from this release type: root */
+ /* Excluded from this release type: ctx */
+ /* Excluded from this release type: _isSxcInstance */
+ /**
+ * Web API calls for this instance.
+ * This is the pure call APIs system.
+ * To get data or queries, best use the data or query services.
+ */
+ webApi: SxcWebApi;
+ /* Excluded from this release type: manage */
+ /**
+ * CMS operations on this sxc-instance, such as opening the edit dialog etc.
+ */
+ cms: SxcCms;
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: is */
+ /**
+ * Get a data service for a specific content-type.
+ *
+ * @param contentType: name of the content type which this service will get
+ */
+ data(contentType: string): SxcData;
+ /**
+ *
+ * @param query
+ */
+ query(query: string): SxcQuery;
+ /* Excluded from this release type: resolveServiceUrl */
+ /* Excluded from this release type: showDetailedHttpError */
+ /**
+ * Test if the current code is in edit-mode and additional javascripts have been loaded to make it work
+ * @returns true if we are in edit-mode
+ */
+ isEditMode(): boolean;
+ /* Excluded from this release type: recreate */
+}
+
+/* Excluded from this release type: SxcApiUrlRoot */
+
+/**
+ * This is in charge of sxc.cms on the instance level.
+ * ATM it just has the run command.
+ * In future, it may also have dedicated command like `layout` etc.
+ * @public
+ */
+export declare class SxcCms extends SxcPart {
+ /* Excluded from this release type: __constructor */
+ /**
+ * Run a command on this sxc-instance.
+ * Requires edit mode to be on, which would enable the edit-JS parts.
+ * To use, remember to activate `2sxc.JsCms` on the page
+ * @param runParams - real type is actually RunParams
+ */
+ run(runParams: RunParams): Promise;
+}
+
+/* Excluded from this release type: SxcCmsReal */
+
+/**
+ * Data Service for an App / Sxc-Instance to get/create data of a specific Content-Type
+ * @public
+ */
+export declare class SxcData extends SxcDataServiceBase {
+ readonly name: string;
+ /* Excluded from this release type: __constructor */
+ /**
+ * Get all items of this type.
+ */
+ getAll(): Promise;
+ /**
+ * Get the specific item with the ID. It will return null if not found
+ */
+ getOne(id: number): Promise | null;
+ /* Excluded from this release type: getMany */
+ /* Excluded from this release type: getInternal */
+ /**
+ * Create a new entity with the values supplied
+ * @param values a simple object containing the values to create
+ */
+ create(values: Record): Promise>;
+ /**
+ * Create a new entity with the values supplied and also a metadata-for reference
+ * @param values a simple object containing the values to create
+ */
+ create(values: Record, metadataFor: MetadataFor | string): Promise>;
+ /**
+ * Update an existing entity with the values supplied
+ */
+ update(id: number, values: Record): Promise>;
+ /**
+ * Delete an entity
+ * @param id id of the item to delete
+ */
+ delete(id: number): Promise;
+ /**
+ * Delete an entity
+ * @param guid GUID of the item to delete
+ */
+ delete(guid: string): Promise;
+}
+
+/**
+ * Base class doing common checks.
+ * This is internal and not important, but we can't keep it out of the docs.
+ * @public
+ */
+export declare abstract class SxcDataServiceBase extends SxcPart {
+ readonly name: string;
+ protected readonly webApi: SxcWebApi;
+ /* Excluded from this release type: __constructor */
+}
+
+/**
+ * This is the root global `window.$2sxc` function / object.
+ *
+ * It is both a function `window.$2sxc(...)` and object `window.$2sxc.insights...`
+ *
+ * If the page feature `2sxc.JsCms` is enabled, the `window.$2sxc` will also be a [SxcGlobalWithCms](xref:Api.Js.SxcJs.SxcGlobalWithCms)
+ * @public
+ */
+export declare interface SxcGlobal {
+ /**
+ * Get an Sxc Instance
+ * @param id number: moduleId | HTMLElement: tag in the page | Sxc: an existing sxc - will just be returned | ContextIdentifier: an identifier in complex scenarios without a moduleId/context
+ * @param cbid number
+ * @returns SxcInstance
+ */
+ (id: number | HTMLElement | ContextIdentifier | Sxc, cbid?: number): Sxc;
+ /**
+ * Get an Sxc Instance using the moduleId.
+ * Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
+ * @param moduleId number: moduleId
+ * @returns SxcInstance
+ * @since v14.01
+ */
+ get(moduleId: number): Sxc;
+ /**
+ * Get an Sxc Instance using the moduleId and contentBlockId.
+ * Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
+ * @param moduleId number: moduleId
+ * @param contentBlockId number: content-block ID
+ * @returns Sxc
+ * @since v14.01
+ */
+ get(moduleId: number, contentBlockId: number): Sxc;
+ /**
+ * Get an Sxc Instance using a tag / `HtmlElement`. Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
+ * @param tag HTMLElement: tag in the page
+ * @returns Sxc
+ * @since v14.01
+ */
+ get(tag: HTMLElement): Sxc;
+ /**
+ * Get an Sxc Instance using a full context-identifier (advanced). Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
+ * @param context ContextIdentifier: full context identifier
+ * @returns Sxc
+ * @since v14.01
+ */
+ get(context: ContextIdentifier): Sxc;
+ /**
+ * Get an Sxc Instance passing in an existing Sxc - just for cases where you're not sure what you aready have. Using `$2sxc.get(...)` is the same as using `$2sxc(...)`
+ * @param sxc Sxc: an existing sxc - will just be returned
+ * @returns Sxc - the same Sxc as the one which was passed in
+ * @since v14.01
+ */
+ get(sxc: Sxc): Sxc;
+ /* Excluded from this release type: _controllers */
+ /* Excluded from this release type: beta */
+ /* Excluded from this release type: _manage */
+ /* Excluded from this release type: _translateInit */
+ /* Excluded from this release type: debug */
+ /* Excluded from this release type: stats */
+ /**
+ * system information, mainly for checking which version of 2sxc is running
+ * note: it's not always updated reliably, but it helps when debugging
+ */
+ sysinfo: {
+ /** the version using the ##.##.## syntax */
+ version: string;
+ /** a short text description, for people who have no idea what this is */
+ description: string;
+ };
+ /**
+ * Environment information
+ * @type {SxcGlobalEnvironment}
+ */
+ env: SxcGlobalEnvironment;
+ /**
+ * Http helper for API calls and such
+ */
+ http: SxcGlobalHttp;
+ /**
+ * The debugging / insights system.
+ * Call the `$2sxc.insights()` without parameters to get instructions what the parameters could be.
+ * @param partName optional name of a part of the system for which we want to see the logs
+ * @param index optional index on that part for which log we want to see
+ * @param start log start index - this is to skip the first few lines if there are too many
+ * @param length amount of lines to show - in some cases will default to 25
+ */
+ insights(partName: string, index?: number, start?: number, length?: number): void;
+ /* Excluded from this release type: _insights */
+ /* Excluded from this release type: log */
+ /**
+ * Helper to work with url parameters behind ? or #
+ */
+ urlParams: UrlParams;
+ /* Excluded from this release type: totalPopup */
+}
+
+/**
+ * Global Content-Management System on the $2sxc.cms.
+ *
+ * It is only available if the page is in edit mode / the page feature `2sxc.JsCms` has been activated.
+ * @public
+ */
+export declare class SxcGlobalCms extends HasLog {
+ /* Excluded from this release type: autoDump */
+ /* Excluded from this release type: __constructor */
+ /* Excluded from this release type: resetLog */
+ /**
+ * Run a command within a specific context - mostly for internal use.
+ * @param runParams The complete run params with a context
+ * @returns A promise which triggers when the command has completed.
+ */
+ run(runParams: RunParamsWithContext): Promise;
+ /**
+ * Run a command within a specific context.
+ * @param tag The context providing tag - an HTML tag inside a module/content-block
+ * @param action command-name (action)
+ * @param event Optional mouse-event which allows the command to do some optimizations for that case - like a mouse-click
+ * @returns A promise which triggers when the command has completed.
+ */
+ run(tag: HTMLElement, action: string, event?: MouseEvent): Promise;
+ /**
+ * Run a command within a specific context.
+ * @param tag The context providing tag - an HTML tag inside a module/content-block
+ * @param action command-name (action)
+ * @param params an object containing the the command-params
+ * @param event Optional mouse-event which allows the command to do some optimizations for that case - like a mouse-click
+ * @returns A promise which triggers when the command has completed.
+ */
+ run(tag: HTMLElement, action: string, params?: CommandParams, event?: MouseEvent): Promise;
+ /**
+ * Run a command within a specific context.
+ * @param tag The context providing tag - an HTML tag inside a module/content-block
+ * @param commandParams an object containing the the command-params as well as the command-name (action)
+ * @param event Optional mouse-event which allows the command to do some optimizations for that case - like a mouse-click
+ * @returns A promise which triggers when the command has completed.
+ */
+ run(tag: HTMLElement, commandParams: CommandParams, event?: MouseEvent): Promise;
+ /* Excluded from this release type: runInternal */
+ /* Excluded from this release type: do */
+}
+
+/* Excluded from this release type: SxcGlobalDebug */
+
+/**
+ * Provides environment information to $2sxc - usually page-id, api-root and stuff like that
+ * @public
+ */
+export declare class SxcGlobalEnvironment extends HasLog {
+ /* Excluded from this release type: header */
+ /**
+ * Flag to determine if the environment information is available.
+ */
+ ready: boolean;
+ /**
+ * Where the environment information came from.
+ */
+ source: string;
+ /* Excluded from this release type: metaLoader */
+ /* Excluded from this release type: __constructor */
+ /**
+ * Manually load a new EnvironmentSpecs in cases where the page cannot provide them.
+ * This is only used in scenarios outside of Dnn / Oqtane, you will usually not need this.
+ * @param envSpecs new info to load
+ * @param source _optional_ name where the data came from
+ */
+ load(envSpecs: EnvironmentSpecs, source?: string): void;
+ /* Excluded from this release type: replacedRvt */
+ /* Excluded from this release type: updateRvt */
+ /**
+ * The API endpoint url from the environment
+ */
+ api(): string;
+ /* Excluded from this release type: appApi */
+ /**
+ * The current page ID - often needed in API calls
+ */
+ page(): number;
+ /**
+ * The request verification token header name for internal WebAPI calls
+ */
+ rvtHeader(): string;
+ /**
+ * The request-verification token for internal WebAPI calls
+ */
+ rvt(): string;
+ /* Excluded from this release type: uiRoot */
+ /**
+ * The platform code like 'oqt' or 'dnn' in case the JS needs to know the difference
+ */
+ platform(): string;
+ /* Excluded from this release type: ensureReadyOrThrow */
+}
+
+/**
+ * Global HTTP Service for information and helpers on `$2sxc.http`
+ * @public
+ */
+export declare class SxcGlobalHttp extends HasLog {
+ private env;
+ /* Excluded from this release type: __constructor */
+ /**
+ * All the headers which are needed in an ajax call.
+ * @returns Dictionary / Record of headers
+ */
+ headers(): Record;
+ /**
+ * All the headers which are needed in an ajax call - within a module context.
+ * @param id _optional_ module ID
+ * @returns Dictionary / Record of headers
+ */
+ headers(id: number): Record;
+ /**
+ * All the headers which are needed in an ajax call - within a module and content-block context.
+ * @param id _optional_ module ID
+ * @param cbid _optional_ content block ID
+ * @returns Dictionary / Record of headers
+ */
+ headers(id: number, cbid: number): Record;
+ /**
+ * All the headers which are needed in an ajax call.
+ * Uses a module and content-block context (but these could also be null)
+ * and a full context identifier for advanced operations.
+ * @param id _optional_ module ID
+ * @param cbid _optional_ content block ID
+ * @param ctx _optional_ context information to include in the header
+ * @returns Dictionary / Record of headers
+ */
+ headers(id: number, cbid: number, ctx: ContextIdentifier): Record;
+ /* Excluded from this release type: apiRoot */
+ /* Excluded from this release type: appApiRoot */
+ /**
+ * Convert short urls like `app/auto/api/Posts/All` to the full URL needed.
+ * Will ignore urls which clearly already are the full url.
+ * @param url short URL like `app/auto/api/Posts/All`
+ * @returns the converted, long url with the full endpoint
+ */
+ apiUrl(url: string): string;
+ /**
+ * Convert short urls like `app/auto/api/Posts/All` to the full URL needed.
+ * Will ignore urls which clearly already are the full url.
+ * @param url short URL like `app/auto/api/Posts/All`
+ * @param endpointName _optional_ endpoint name if accessing a different exotic endpoint
+ * @returns the converted, long url with the full endpoint
+ */
+ apiUrl(url: string, endpointName: string): string;
+}
+
+/* Excluded from this release type: SxcGlobalManage */
+
+/**
+ * $2sxc global interface _extending_ the `SxcGlobal` when the page feature `JsCms` is enabled.
+ *
+ * If the page feature `2sxc.JsCms` is not enabled, the `window.$2sxc` will be a [SxcGlobal](xref:Api.Js.SxcJs.SxcGlobal)
+ * @public
+ */
+export declare interface SxcGlobalWithCms {
+ /* Excluded from this release type: system */
+ /**
+ * Will retrieve a resource in the current language.
+ * Mainly used for toolbars etc. to support localization.
+ *
+ * Only available when edit mode is on meaning the page feature JsCms is enabled
+ * @param key the key of the resource to translate
+ */
+ translate(key: string): string;
+ /* Excluded from this release type: context */
+ /**
+ * Content Management features on the $2sxc
+ */
+ cms: SxcGlobalCms;
+}
+
+/* Excluded from this release type: SxcManage */
+
+/**
+ * Base class for anything attached to an sxc-instance.
+ * This is internal and not important, but we can't keep it out of the docs.
+ * @public
+ */
+export declare abstract class SxcPart {
+ /* Excluded from this release type: sxc */
+ /* Excluded from this release type: partName */
+ /* Excluded from this release type: __constructor */
+}
+
+/**
+ * Instance Query Service
+ * @public
+ */
+export declare class SxcQuery extends SxcDataServiceBase {
+ readonly name: string;
+ /* Excluded from this release type: __constructor */
+ getAll(): Promise;
+ getAll(urlParams: string | Record): Promise;
+ getAll(urlParams: string | Record, data: string | Record): Promise;
+ /**
+ * Get just one stream, returning an array of items in that stream
+ *
+ * @template T
+ * @param stream
+ * @returns {Promise} containing an array of items - or empty if stream not found or nothing returned
+ */
+ getStream(stream: string): Promise;
+ getStream(stream: string, urlParams: string | Record): Promise;
+ getStream(stream: string, urlParams: string | Record, data: string | Record): Promise;
+ /**
+ * Get a query but only the mentioned streams.
+ * This will reduce the amount of data retrieved on queries that have many streams.
+ * @template T The schema/interfaces of what will be returned
+ * @returns {Promise} Promise containing a object with stream-names and items in the streams.
+ * @public
+ */
+ getStreams(streams: string): Promise;
+ /**
+ * Get a query but only the mentioned streams.
+ * This will reduce the amount of data retrieved on queries that have many streams.
+ * @template T The schema/interfaces of what will be returned
+ * @param streams name of streams to get, comma separated
+ * @param urlParams additional parameters for the URL, either as a string or as a object
+ * @returns {Promise} Promise containing a object with stream-names and items in the streams.
+ * @public
+ */
+ getStreams(streams: string, urlParams: string | Record): Promise;
+ /**
+ * Get a query but only the mentioned streams.
+ * This will reduce the amount of data retrieved on queries that have many streams.
+ * @template T The schema/interfaces of what will be returned
+ * @param streams name of streams to get, comma separated
+ * @param urlParams additional parameters for the URL, either as a string or as a object
+ * @param data data to include in case of a POST call - if this is provided, it will use a post
+ * @returns {Promise} Promise containing a object with stream-names and items in the streams.
+ * @public
+ */
+ getStreams(streams: string, urlParams: string | Record, data: string | Record): Promise;
+ /* Excluded from this release type: getInternal */
+}
+
+/* Excluded from this release type: SxcTools */
+
+/* Excluded from this release type: SxcVersion */
+
+/**
+ * helper API to run ajax / REST calls to the server
+ * it will ensure that the headers etc. are set correctly
+ * and that urls are rewritten
+ * @public
+ */
+export declare class SxcWebApi implements ZzzSxcWebApiDeprecated {
+ private readonly sxc;
+ /* Excluded from this release type: env */
+ /* Excluded from this release type: __constructor */
+ /**
+ * **Deprecated** - docs in the separate interface
+ * @deprecated use fetchJson instead
+ */
+ get(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated** - docs in the separate interface
+ * @deprecated use fetchJson instead
+ */
+ post(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated** - docs in the separate interface
+ * @deprecated use fetchJson instead
+ */
+ delete(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated** - docs in the separate interface
+ * @deprecated use fetchJson instead
+ */
+ put(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated** - docs in the separate interface
+ * @deprecated use fetchJson instead
+ */
+ request(settings: string | ZzzAjaxSettingsDeprecated, params: any, data: any, preventAutoFail: boolean, method: string): any;
+ /**
+ * Will retrieve data from the backend using a standard fetch.
+ * @param url a full url or short-hand like `controller/method?params` `app/auto/api/controller/method?params`. Note that params would also be specified on the url.
+ * @param data optional POST data
+ * @param method optional method, defaults to `GET` unless it has data, in which case it defaults to `POST`
+ * @returns a Promise containing a Response object, just like a normal fetch would.
+ * example: webApi.fetchRaw('Rss/Feed');
+ * example: webApi.fetchRaw(webApi.url('Rss/Feed', { id: 47 })); // url params
+ * example: webApi.fetchRaw('Rss/Feed', { id: 47 }); // post params
+ * example: webApi.fetchRaw(webApi.url('Rss/Feed', { id: 47 }), { something: 'this is a test' }); // url & post params
+ * maybe: webApi.fetchRaw({url: 'Rss/Feed', params: { id: 47 }})
+ * maybe: webApi.fetchRaw({url: ..., params: { ...}, body: { ...}, method: 'GET' })
+ */
+ fetchRaw(url: string, data?: string | Record, method?: string): Promise;
+ /* Excluded from this release type: fetch */
+ /**
+ * Will retrieve data from the backend using a standard fetch and give you an object.
+ * @param url a full url or short-hand like `controller/method?params` `app/auto/api/controller/method?params`. Note that params would also be specified on the url.
+ * @param data optional POST data
+ * @param method optional method, defaults to `GET` unless it has data, in which case it defaults to `POST`
+ * @returns a Promise containing any object.
+ */
+ fetchJson(url: string, data?: string | Record, method?: string): Promise;
+ /**
+ * All the headers which are needed in an ajax call for this to work reliably.
+ * Use this if you need to get a list of headers in another system
+ */
+ headers(method?: string): Record;
+ /**
+ *
+ * @param url A short, medium or long url.
+ * Short like `controller/method`,
+ * medium like `app/auto/api/controller/method`
+ * long like `https://xyz.
+ * In all cases it can also have ?params etc.
+ * @param params Optional parameters as string or object, will be added to url-params.
+ * @returns In the cases of a short/medium url,
+ * it will auto-expand to have the full url as needed for an API call.
+ */
+ url(url: string, params?: string | Record): string;
+}
+
+/* Excluded from this release type: SystemUpgrader */
+
+/* Excluded from this release type: TemplateEditor */
+
+/* Excluded from this release type: TemplateIdentifier */
+
+/* Excluded from this release type: Toolbar */
+
+/* Excluded from this release type: TOOLBAR_FOLLOW_ALWAYS */
+
+/* Excluded from this release type: TOOLBAR_FOLLOW_INITIAL */
+
+/* Excluded from this release type: TOOLBAR_FOLLOW_SCROLL */
+
+/* Excluded from this release type: TOOLBAR_SHOW_ALWAYS */
+
+/* Excluded from this release type: TOOLBAR_SHOW_HOVER */
+
+/* Excluded from this release type: ToolbarButtonSettings */
+
+/* Excluded from this release type: ToolbarConfigLoader */
+
+/* Excluded from this release type: ToolbarConfigLoaderV09 */
+
+/* Excluded from this release type: ToolbarConfigLoaderV10 */
+
+/* Excluded from this release type: ToolbarInitConfig */
+
+/* Excluded from this release type: ToolbarManager */
+
+/* Excluded from this release type: ToolbarSettings */
+
+/* Excluded from this release type: ToolbarTemplate */
+
+/* Excluded from this release type: ToolbarTemplateGroup */
+
+/* Excluded from this release type: ToolbarTemplateManager */
+
+/* Excluded from this release type: ToolbarWip */
+
+/* Excluded from this release type: ToolbarWithWorkflow */
+
+/**
+ * A workflow manager _of a Toolbar_ which will run stuff before / after commands.
+ * When toolbars are created, they will add a Manager and then raise an event for in-page code to add workflow steps.
+ * Normally the toolbar with raise a `toolbar-init` event where you can then add steps.
+ * @public
+ */
+export declare class ToolbarWorkflowManager extends HasLog {
+ private isDummy;
+ /* Excluded from this release type: steps */
+ /* Excluded from this release type: __constructor */
+ /**
+ * Register one or many [workflow-steps](xref:Api.Js.SxcJs.WorkflowStep) to the toolbar, to use if toolbar commands are executed.
+ */
+ add(steps: WorkflowStep | WorkflowStep[]): void;
+ /* Excluded from this release type: addOne */
+ /* Excluded from this release type: run */
+ /* Excluded from this release type: attach */
+ /* Excluded from this release type: runNextPromiseIfNotCancelled */
+}
+
+/* Excluded from this release type: ToSxcName */
+
+/* Excluded from this release type: TotalPopup */
+
+declare type TypeAutoAddMore = null | 'start' | 'end' | true;
+
+/* Excluded from this release type: TypeFollow */
+
+declare type TypeHover = 'left' | 'right' | 'none';
+
+/* Excluded from this release type: TypeShow */
+
+/* Excluded from this release type: TypeTbD */
+
+export declare type TypeValue = boolean | string | number | Date;
+
+/* Excluded from this release type: urlClean */
+
+declare interface UrlItemParams {
+ prefill?: Record;
+ items?: string;
+ contentTypeName?: string;
+ filters?: string;
+}
+
+/**
+ * Helper object to read url params.
+ * Available on `$2sxc.urlParams`
+ * @public
+ */
+export declare class UrlParams {
+ /**
+ * Get a param from the url, no matter if it's behind ? or #
+ * If not found, will return an empty string `''`
+ * @param name
+ */
+ get(name: string): string;
+ /**
+ * Get a required param from the url, no matter if it's behind ? or #
+ * Will throw an error if not found
+ * @param name
+ */
+ require(name: string): string;
+ /**
+ * Checks if debug is enabled in the URL
+ * @returns
+ */
+ isDebug(): boolean;
+ /* Excluded from this release type: toUrl */
+ /* Excluded from this release type: toObj */
+}
+
+/* Excluded from this release type: WorkflowCommands */
+
+/* Excluded from this release type: WorkflowHelper */
+
+/**
+ * Phases / events of a specific workflow.
+ */
+export declare enum WorkflowPhases {
+ /**
+ * Run at every phase - before and after events/commands
+ */
+ all = "all",
+ /**
+ * Run before a specific event / command
+ */
+ before = "before",
+ /**
+ * Run after a specific event / command
+ */
+ after = "after"
+}
+
+/* Excluded from this release type: WorkflowPromiseFactory */
+
+/**
+ * A workflow step (code-sequence) to run before/after specific events.
+ * @public
+ */
+export declare interface WorkflowStep {
+ /**
+ * The name of this step, in case it needs to be replaced or somehow controlled
+ * Will be empty by default
+ */
+ name?: string;
+ /**
+ * The action this step is for, can be 'any', 'edit', etc.
+ * Will be 'all' by default
+ */
+ command: string;
+ /**
+ * Action-phase being run, like 'all', 'before', 'after'
+ * will be 'before' by default
+ */
+ phase?: WorkflowPhases;
+ /**
+ * Execution priority, higher comes first
+ * Will be 1 by default.
+ */
+ priority?: number;
+ /**
+ * The code which is run, must be a promise-factory.
+ * So it's a function that will return a promise.
+ * Required.
+ * See [](xref:Api.Js.SxcJs.WorkflowStepCode)
+ */
+ code: (args: WorkflowStepCodeArguments) => WorkflowStepCodeArguments;
+}
+
+/* Excluded from this release type: WorkflowStepCode */
/**
- * Make sure the code knows that $2sxc exists on window
+ * Arguments for [WorkflowStepCode](xref:Api.Js.SxcJs.WorkflowStepCode).
+ * Will be passed to your code and should also be returned by your code.
+ * This also allows cancelling further execution.
+ * @public
*/
-declare global {
- interface Window {
+export declare class WorkflowStepCodeArguments {
/**
- * The global $2sxc object / function to generate Sxc instances
+ * Name this workflow is running for
*/
- $2sxc: SxcGlobal;
- }
-}
\ No newline at end of file
+ command: string;
+ /**
+ * The phase it's in (before, after, etc.)
+ */
+ phase: WorkflowPhases;
+ /**
+ * Context of the current command / step being run
+ */
+ context: ContextComplete;
+ /**
+ * Result in after-phases of the workflow
+ * BETA - never really tested this
+ */
+ result: unknown;
+ /* Excluded from this release type: __constructor */
+ /**
+ * If the workflow should be cancelled.
+ * Can be set by any workflow step.
+ * If set to true, following steps / workflows will not run.
+ */
+ cancel: boolean;
+}
+
+/* Excluded from this release type: WorkflowStepHelper */
+
+/**
+ * Deprecated parameters for old jQuery AJAX calls.
+ * Shouldn't be used any more.
+ * @public
+ * @deprecated
+ */
+export declare interface ZzzAjaxSettingsDeprecated {
+ /* Excluded from this release type: endpoint */
+ /**
+ * Controller name, for controller/action calls
+ */
+ controller?: string;
+ /**
+ * action name, for controller/action calls
+ */
+ action?: string;
+ /**
+ * The params to be used in the url for the request
+ */
+ params?: any;
+ /* Excluded from this release type: preventAutoFail */
+}
+
+/**
+ * **Deprecated**
+ * Old APIs on sxc.webApi.
+ * They only exist if jQuery is included on the page, and we highly discourage their use.
+ * @deprecated
+ */
+export declare interface ZzzSxcWebApiDeprecated {
+ /**
+ * **Deprecated**
+ * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
+ * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
+ *
+ * Returns an http-get promise using jQuery
+ * @param settingsOrUrl the url to get
+ * @param params jQuery style ajax parameters
+ * @param data jQuery style data for post/put requests
+ * @param preventAutoFail
+ * @returns jQuery ajax promise object
+ * @deprecated use fetchJson instead
+ */
+ get(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated**
+ * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
+ * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
+ *
+ * Returns an http-post promise using jQuery
+ * @param settingsOrUrl the url to get
+ * @param params jQuery style ajax parameters
+ * @param data jQuery style data for post/put requests
+ * @param preventAutoFail
+ * @returns jQuery ajax promise object
+ * @deprecated use fetchJson instead
+ */
+ post(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated**
+ * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
+ * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
+ *
+ * Returns an http-delete promise using jQuery
+ * @param settingsOrUrl the url to talk to
+ * @param params jQuery style ajax parameters
+ * @param data jQuery style data for post/put requests
+ * @param preventAutoFail
+ * @returns jQuery ajax promise object
+ * @deprecated use fetchJson instead
+ */
+ delete(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated**
+ * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
+ * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
+ *
+ * Returns an http-put promise using jQuery
+ * @param settingsOrUrl the url to put
+ * @param params jQuery style ajax parameters
+ * @param data jQuery style data for post/put requests
+ * @param preventAutoFail
+ * @returns jQuery ajax promise object
+ * @deprecated use fetchJson instead
+ */
+ put(settingsOrUrl: string | ZzzAjaxSettingsDeprecated, params?: any, data?: any, preventAutoFail?: boolean): any;
+ /**
+ * **Deprecated**
+ * Please use [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchJson)
+ * or [fetchJson()](xref:Api.Js.SxcJs.SxcWebApi.fetchRaw) instead.
+ *
+ * Generic http request using jQuery
+ * @param settingsOrUrl the url to get
+ * @param params jQuery style ajax parameters
+ * @param data jQuery style data for post/put requests
+ * @param preventAutoFail
+ * @param method the http verb name
+ * @returns jQuery ajax promise object
+ * @deprecated use fetchJson instead
+ */
+ request(settings: string | ZzzAjaxSettingsDeprecated, params: any, data: any, preventAutoFail: boolean, method: string): any;
+}
+
+export { }
diff --git a/projects/sxc-typings/index.d.ts b/projects/sxc-typings/index.d.ts
index 8c47d5a33..5a8632983 100644
--- a/projects/sxc-typings/index.d.ts
+++ b/projects/sxc-typings/index.d.ts
@@ -1,11 +1,25 @@
-// type definitions for 2sxc
-// project: 2sxc typings
-// definitions by: Daniel Mettler, 2sic
+/*
+ Special custom d.ts file
+ this has the definition of the augmented window object, because the api exporter doesn't support this.
+*/
-// This file must be manually maintained, it's used by the api-extractor to start
+import { SxcGlobal } from './index-public';
-export * from './parts/dist/$2sxc/src';
+export * from "./index-public";
-export * from './parts/dist/core';
+/**
+ * Make sure the code knows that $2sxc exists on window and globally
+ */
+declare global {
+ interface Window {
+ /**
+ * The global $2sxc object / function to generate Sxc instances
+ */
+ $2sxc: SxcGlobal;
+ }
-export * from './parts/dist/inpage/src';
+ /**
+ * The global $2sxc object / function to generate Sxc instances
+ */
+ const $2sxc: SxcGlobal;
+}
diff --git a/projects/sxc-typings/input/typedoc.api.json b/projects/sxc-typings/input/typedoc.api.json
index 90ea2633d..14f3540e3 100644
--- a/projects/sxc-typings/input/typedoc.api.json
+++ b/projects/sxc-typings/input/typedoc.api.json
@@ -685,7 +685,7 @@
"excerptTokens": [
{
"kind": "Content",
- "text": "export declare enum CommandNames "
+ "text": "export declare const enum CommandNames "
}
],
"releaseTag": "Public",
@@ -841,7 +841,7 @@
{
"kind": "EnumMember",
"canonicalReference": "@2sic.com/2sxc-typings!CommandNames.code:member",
- "docComment": "/**\n * `code` will execute custom javascript.
🔘 This is mainly for toolbars, to add buttons with custom code.
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)\n */\n",
+ "docComment": "/**\n * `code` will execute custom javascript.
🔘 This is mainly for toolbars, to add buttons with custom code.
📩 [Parameters](xref:Api.Js.SxcJs.CommandCodeParams)
_this used to be called `custom` and had a different setup_\n */\n",
"excerptTokens": [
{
"kind": "Content",
@@ -1394,11 +1394,20 @@
{
"kind": "Interface",
"canonicalReference": "@2sic.com/2sxc-typings!CommandParams:interface",
- "docComment": "/**\n * Command parameters are handed over to a command for execution\n *\n * @public\n */\n",
+ "docComment": "/**\n * Command parameters are handed over to a command for execution. It contains all possible combinations of parameters that can be used in a command.\n *\n * We will try to improve how this is documented, but ATM it just has all parameters, even though you may need none, or just a few.\n *\n * _Note: For your specific commands, you can also pass other parameters._\n *\n * **Important for the docs**\n *\n * Most properties are actually not visible (you will get them in the types though). So actually you will usually create one of these: * [](xref:Api.Js.SxcJs.CommandParamsEntityById) * [](xref:Api.Js.SxcJs.CommandParamsEntityInContentBlock) * [](xref:Api.Js.SxcJs.CommandParamsEntityInList) * [](xref:Api.Js.SxcJs.CommandAddParams) * [](xref:Api.Js.SxcJs.CommandAddExistingParams) * [](xref:Api.Js.SxcJs.CommandDataParams) * [](xref:Api.Js.SxcJs.CommandCopyParams) * [](xref:Api.Js.SxcJs.CommandCodeParams) * [](xref:Api.Js.SxcJs.CommandDeleteParams) * [](xref:Api.Js.SxcJs.CommandMetadataParams) * [](xref:Api.Js.SxcJs.CommandNewParams)\n *\n * Because of this, most of the properties below are NOT documented, as their purpose can change depending on the command used.\n *\n * @public\n */\n",
"excerptTokens": [
{
"kind": "Content",
- "text": "export interface CommandParams "
+ "text": "export interface CommandParams extends "
+ },
+ {
+ "kind": "Reference",
+ "text": "Record",
+ "canonicalReference": "!Record:type"
+ },
+ {
+ "kind": "Content",
+ "text": " "
}
],
"releaseTag": "Public",
@@ -1406,17 +1415,233 @@
"members": [
{
"kind": "PropertySignature",
- "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#action:member",
- "docComment": "/**\n * The action is used in scenarios where the command name must be included\n */\n",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#call:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
"excerptTokens": [
{
"kind": "Content",
- "text": "action?: "
+ "text": "call?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "call",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#contentType:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "contentType?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "contentType",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#entityGuid:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "entityGuid?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "entityGuid",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#entityId:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "entityId?: "
+ },
+ {
+ "kind": "Content",
+ "text": "number"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "entityId",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#entityTitle:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "entityTitle?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "entityTitle",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#fields:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "fields?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "fields",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#filters:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "filters?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "filters",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#index:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "index?: "
+ },
+ {
+ "kind": "Content",
+ "text": "number"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "index",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#metadata:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "metadata?: "
},
{
"kind": "Reference",
- "text": "CommandNames",
- "canonicalReference": "@2sic.com/2sxc-typings!CommandNames:enum"
+ "text": "CommandParamsMetadata",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParamsMetadata:interface"
},
{
"kind": "Content",
@@ -1426,14 +1651,141 @@
"isReadonly": false,
"isOptional": true,
"releaseTag": "Public",
- "name": "action",
+ "name": "metadata",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#parent:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "parent?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "parent",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#prefill:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "prefill?: "
+ },
+ {
+ "kind": "Reference",
+ "text": "Record",
+ "canonicalReference": "!Record:type"
+ },
+ {
+ "kind": "Content",
+ "text": ""
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "prefill",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 5
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#title:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "title?: "
+ },
+ {
+ "kind": "Content",
+ "text": "string"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "title",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams#useModuleList:member",
+ "docComment": "/**\n * The purpose of this varies by [Command](xref:Api.Js.SxcJs.CommandNames).\n *\n * @public\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "useModuleList?: "
+ },
+ {
+ "kind": "Content",
+ "text": "true"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "useModuleList",
"propertyTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
- "extendsTokenRanges": []
+ "extendsTokenRanges": [
+ {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ ]
},
{
"kind": "Interface",
@@ -1549,7 +1901,7 @@
{
"kind": "PropertySignature",
"canonicalReference": "@2sic.com/2sxc-typings!CommandParamsEntityInContentBlock#index:member",
- "docComment": "/**\n * Determins the position of the item in the list.\n */\n",
+ "docComment": "/**\n * Determins the position of the item in the list. index was added in v14.04 to replace the `sortOrder` which had a confusing name.\n */\n",
"excerptTokens": [
{
"kind": "Content",
@@ -3560,6 +3912,34 @@
"endIndex": 2
}
},
+ {
+ "kind": "PropertySignature",
+ "canonicalReference": "@2sic.com/2sxc-typings!RunParams#params:member",
+ "docComment": "/**\n * The command params, like contentType, entityId etc. Optional for many actions.\n */\n",
+ "excerptTokens": [
+ {
+ "kind": "Content",
+ "text": "params?: "
+ },
+ {
+ "kind": "Reference",
+ "text": "CommandParams",
+ "canonicalReference": "@2sic.com/2sxc-typings!CommandParams:interface"
+ },
+ {
+ "kind": "Content",
+ "text": ";"
+ }
+ ],
+ "isReadonly": false,
+ "isOptional": true,
+ "releaseTag": "Public",
+ "name": "params",
+ "propertyTypeTokenRange": {
+ "startIndex": 1,
+ "endIndex": 2
+ }
+ },
{
"kind": "PropertySignature",
"canonicalReference": "@2sic.com/2sxc-typings!RunParams#workflows:member",
diff --git a/projects/sxc-typings/package.json b/projects/sxc-typings/package.json
index 688d52d8a..b880e0a10 100644
--- a/projects/sxc-typings/package.json
+++ b/projects/sxc-typings/package.json
@@ -1,7 +1,8 @@
{
"// notes": "The version is used in the final NPM. For beta releases, use pattern '14.02.0-beta.0'",
- "version": "14.07.00",
- "types": "./index-public.d.ts",
+ "version": "14.07.03",
+ "main": "./index.d.ts",
+ "types": "./index.d.ts",
"scripts": {
"generate": "typings.cmd \".\\parts\\dist\"",
"publish-dry": "npm publish --dry-run",
@@ -18,7 +19,8 @@
"url": "https://github.com/2sic/2sxc-ui/issues"
},
"files": [
- "index-public*.d.ts"
+ "index.d.ts",
+ "index-public.d.ts"
],
"description": "Typescript typings to work with core 2sxc objects",
"homepage": "https://github.com/2sic/2sxc-ui/tree/master/typings#readme",
@@ -37,7 +39,6 @@
"type": "git",
"url": "git+https://github.com/2sic/2sxc-ui.git"
},
- "main": "",
"devDependencies": {
"@microsoft/api-documenter": "^7.17.19",
"@microsoft/api-extractor": "^7.25.2",
diff --git a/projects/sxc-typings/readme.md b/projects/sxc-typings/readme.md
index 7b416b18a..abc5cfc07 100644
--- a/projects/sxc-typings/readme.md
+++ b/projects/sxc-typings/readme.md
@@ -1,6 +1,6 @@
-# 2sxc TypeScript Typings
+# 2sxc TypeScript Types / Typings
-This are the public typings for NPM, which should help you write type-safe code when working with the core 2sxc JavaScript APIs.
+This are the public types for NPM, which should help you write type-safe code when working with the core 2sxc JavaScript APIs.
Use this for your DNN/2sxc TypeScript and to create Angular, React, Vue etc. adaptors.
diff --git a/projects/sxc-typings/tsconfig.typedoc.json b/projects/sxc-typings/tsconfig.typedoc.json
index 8729ab15f..706169f75 100644
--- a/projects/sxc-typings/tsconfig.typedoc.json
+++ b/projects/sxc-typings/tsconfig.typedoc.json
@@ -2,17 +2,11 @@
"extends": "./tsconfig.json",
"include": [
- "./index-docs.ts",
- "./index-public-part.ts"
+ "./docs-index.ts",
+ "./docs-public.ts"
],
-
-
-
"typedocOptions": {
- // "entryPoints": [
- // "./index-docs.d.ts"
- // ],
// don't create out - "out": "./docs/typedoc",
"json": "./docs/typedoc/typedoc.json",
"name": "Api.Js.SxcJs",
diff --git a/projects/sxc-typings/typings.cmd b/projects/sxc-typings/typings.cmd
index 9f5df4aa9..1b01a7270 100644
--- a/projects/sxc-typings/typings.cmd
+++ b/projects/sxc-typings/typings.cmd
@@ -14,6 +14,6 @@ call api-extractor run --local --verbose
@Echo 4. Create the .ts files from the .d.ts because this is what is used by docFx
@REM can't copy this, as the reference to the file would be off with a ".d" instead of the ts
@REM copy index-public.d.ts index-docs.ts
-copy index-public-part.d.ts index-public-part.ts
+copy index-public.d.ts docs-public.ts
@REM return 0