Merge pull request #1151 from umbraco/chore/simplify-initial-loaded-components
Simplify what we load
This commit is contained in:
@@ -39,26 +39,31 @@
|
||||
"import/no-unresolved": "off",
|
||||
"import/order": "warn",
|
||||
"local-rules/bad-type-import": "error",
|
||||
"local-rules/enforce-element-suffix-on-element-class-name": "error",
|
||||
"local-rules/enforce-umb-prefix-on-element-name": "error",
|
||||
"local-rules/ensure-relative-import-use-js-extension": "error",
|
||||
"local-rules/no-direct-api-import": "warn",
|
||||
"local-rules/prefer-import-aliases": "error",
|
||||
"local-rules/enforce-element-suffix-on-element-class-name": "error",
|
||||
"local-rules/umb-class-prefix": "error",
|
||||
"local-rules/prefer-static-styles-last": "warn",
|
||||
"local-rules/ensure-relative-import-use-js-extension": "error",
|
||||
"local-rules/umb-class-prefix": "error",
|
||||
"local-rules/enforce-umbraco-external-imports": [
|
||||
"error",
|
||||
{
|
||||
"exceptions": ["@umbraco-cms", "@open-wc/testing", "@storybook", "msw", "."]
|
||||
}
|
||||
],
|
||||
"local-rules/exported-string-constant-naming": ["error",
|
||||
"local-rules/exported-string-constant-naming": [
|
||||
"error",
|
||||
{
|
||||
"excludedFileNames": ["umbraco-package", "input-tiny-mce.defaults"] // TODO: what to do about the tiny mce defaults?
|
||||
}
|
||||
],
|
||||
"@typescript-eslint/no-non-null-assertion": "off",
|
||||
"@typescript-eslint/no-explicit-any": "warn",
|
||||
"@typescript-eslint/no-unused-vars": "warn"
|
||||
"@typescript-eslint/no-unused-vars": "warn",
|
||||
"@typescript-eslint/consistent-type-exports": "error",
|
||||
"@typescript-eslint/consistent-type-imports": "error",
|
||||
"@typescript-eslint/no-import-type-side-effects": "warn"
|
||||
},
|
||||
"settings": {
|
||||
"import/parsers": {
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
/** @type {import('eslint').Rule.RuleModule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
type: 'suggestion',
|
||||
docs: {
|
||||
description: 'Enforce Custom Element names to start with "umb-".',
|
||||
category: 'Naming',
|
||||
recommended: true,
|
||||
},
|
||||
schema: [],
|
||||
},
|
||||
create: function (context) {
|
||||
return {
|
||||
CallExpression(node) {
|
||||
// check if the expression is @customElement decorator
|
||||
const isCustomElementDecorator =
|
||||
node.callee.type === 'Identifier' &&
|
||||
node.callee.name === 'customElement' &&
|
||||
node.arguments.length === 1 &&
|
||||
node.arguments[0].type === 'Literal' &&
|
||||
typeof node.arguments[0].value === 'string';
|
||||
|
||||
if (isCustomElementDecorator) {
|
||||
const elementName = node.arguments[0].value;
|
||||
|
||||
// check if the element name starts with 'umb-', or 'test-', to be allow tests to have custom elements:
|
||||
const isElementNameValid = elementName.startsWith('umb-') ? true : elementName.startsWith('test-');
|
||||
|
||||
if (!isElementNameValid) {
|
||||
context.report({
|
||||
node,
|
||||
message: 'Custom Element name should start with "umb-".',
|
||||
// There is no fixer on purpose because it's not safe to automatically rename the element name.
|
||||
// Renaming should be done manually with consideration of potential impacts.
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
},
|
||||
};
|
||||
@@ -2,8 +2,10 @@
|
||||
|
||||
const badTypeImportRule = require('./devops/eslint/rules/bad-type-import.cjs');
|
||||
const enforceElementSuffixOnElementClassNameRule = require('./devops/eslint/rules/enforce-element-suffix-on-element-class-name.cjs');
|
||||
const enforceUmbPrefixOnElementNameRule = require('./devops/eslint/rules/enforce-umb-prefix-on-element-name.cjs');
|
||||
const enforceUmbracoExternalImportsRule = require('./devops/eslint/rules/enforce-umbraco-external-imports.cjs');
|
||||
const ensureRelativeImportUseJsExtensionRule = require('./devops/eslint/rules/ensure-relative-import-use-js-extension.cjs');
|
||||
const exportedStringConstantNaming = require('./devops/eslint/rules/exported-string-constant-naming.cjs');
|
||||
const noDirectApiImportRule = require('./devops/eslint/rules/no-direct-api-import.cjs');
|
||||
const preferImportAliasesRule = require('./devops/eslint/rules/prefer-import-aliases.cjs');
|
||||
const preferStaticStylesLastRule = require('./devops/eslint/rules/prefer-static-styles-last.cjs');
|
||||
@@ -12,11 +14,12 @@ const umbClassPrefixRule = require('./devops/eslint/rules/umb-class-prefix.cjs')
|
||||
module.exports = {
|
||||
'bad-type-import': badTypeImportRule,
|
||||
'enforce-element-suffix-on-element-class-name': enforceElementSuffixOnElementClassNameRule,
|
||||
'enforce-umb-prefix-on-element-name': enforceUmbPrefixOnElementNameRule,
|
||||
'enforce-umbraco-external-imports': enforceUmbracoExternalImportsRule,
|
||||
'ensure-relative-import-use-js-extension': ensureRelativeImportUseJsExtensionRule,
|
||||
'exported-string-constant-naming': exportedStringConstantNaming,
|
||||
'no-direct-api-import': noDirectApiImportRule,
|
||||
'prefer-import-aliases': preferImportAliasesRule,
|
||||
'prefer-static-styles-last': preferStaticStylesLastRule,
|
||||
'umb-class-prefix': umbClassPrefixRule,
|
||||
'exported-string-constant-naming': require('./devops/eslint/rules/exported-string-constant-naming.cjs'),
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { UmbAppContextConfig } from './app-context-config.interface.js';
|
||||
import type { UmbAppContextConfig } from './app-context-config.interface.js';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
|
||||
|
||||
export class UmbAppContext extends UmbBaseController {
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import type { UmbAppErrorElement } from './app-error.element.js';
|
||||
import { UmbAppContext } from './app.context.js';
|
||||
import { UmbServerConnection } from './server-connection.js';
|
||||
import { UMB_AUTH_CONTEXT, UmbAuthContext } from '@umbraco-cms/backoffice/auth';
|
||||
import type { UMB_AUTH_CONTEXT} from '@umbraco-cms/backoffice/auth';
|
||||
import { UmbAuthContext } from '@umbraco-cms/backoffice/auth';
|
||||
import { css, html, customElement, property } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UUIIconRegistryEssential } from '@umbraco-cms/backoffice/external/uui';
|
||||
import { UmbIconRegistry } from '@umbraco-cms/backoffice/icon';
|
||||
|
||||
@@ -5,7 +5,7 @@ import {
|
||||
UmbExtensionsManifestInitializer,
|
||||
} from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbContextBase } from '@umbraco-cms/backoffice/class-api';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { type ManifestSection, umbExtensionsRegistry } from '@umbraco-cms/backoffice/extension-registry';
|
||||
|
||||
export class UmbBackofficeContext extends UmbContextBase<UmbBackofficeContext> {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
import type { UmbBackofficeElement } from './backoffice.element.js';
|
||||
import { html } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { css, CSSResultGroup, html, LitElement, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, LitElement, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
@customElement('umb-backoffice-header-apps')
|
||||
export class UmbBackofficeHeaderAppsElement extends LitElement {
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import { UMB_BACKOFFICE_CONTEXT } from '../backoffice.context.js';
|
||||
import type { UmbBackofficeContext } from '../backoffice.context.js';
|
||||
import { css, CSSResultGroup, html, customElement, state, repeat } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, customElement, state, repeat } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { ManifestSection } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
import { UmbExtensionManifestInitializer } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type { UmbExtensionManifestInitializer } from '@umbraco-cms/backoffice/extension-api';
|
||||
|
||||
@customElement('umb-backoffice-header-sections')
|
||||
export class UmbBackofficeHeaderSectionsElement extends UmbLitElement {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { css, CSSResultGroup, html, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
@customElement('umb-backoffice-header')
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
import { UmbBackofficeContext, UMB_BACKOFFICE_CONTEXT } from '../backoffice.context.js';
|
||||
import type { UmbBackofficeContext} from '../backoffice.context.js';
|
||||
import { UMB_BACKOFFICE_CONTEXT } from '../backoffice.context.js';
|
||||
import { css, html, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbSectionContext, UMB_SECTION_CONTEXT } from '@umbraco-cms/backoffice/section';
|
||||
import type { UmbRoute, UmbRouterSlotChangeEvent } from '@umbraco-cms/backoffice/router';
|
||||
import type { ManifestSection, UmbSectionElement } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import { UmbExtensionManifestInitializer, createExtensionElement } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type { UmbExtensionManifestInitializer} from '@umbraco-cms/backoffice/extension-api';
|
||||
import { createExtensionElement } from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
@customElement('umb-backoffice-main')
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import { PackageResource, OpenAPI } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbBackofficeExtensionRegistry } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbBackofficeExtensionRegistry } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import { tryExecuteAndNotify } from '@umbraco-cms/backoffice/resources';
|
||||
import { ManifestBase, isManifestBaseType } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type { ManifestBase} from '@umbraco-cms/backoffice/extension-api';
|
||||
import { isManifestBaseType } from '@umbraco-cms/backoffice/extension-api';
|
||||
|
||||
// TODO: consider if this can be replaced by the new extension controllers
|
||||
export class UmbServerExtensionRegistrator extends UmbBaseController {
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
import { UmbInstallerContext, UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import { css, CSSResultGroup, html, customElement, state, unsafeHTML } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { UmbInstallerContext} from '../installer.context.js';
|
||||
import { UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, customElement, state, unsafeHTML } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
import {
|
||||
import type {
|
||||
ConsentLevelPresentationModel,
|
||||
TelemetryResponseModel,
|
||||
TelemetryResponseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
TelemetryLevelModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
|
||||
import { installerContextProvider } from '../shared/utils.story-helpers.js';
|
||||
import type { UmbInstallerConsentElement } from './installer-consent.element.js';
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
import { UmbInstallerContext, UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import { UUIButtonElement } from '@umbraco-cms/backoffice/external/uui';
|
||||
import type { UmbInstallerContext} from '../installer.context.js';
|
||||
import { UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import type { UUIButtonElement } from '@umbraco-cms/backoffice/external/uui';
|
||||
import type {
|
||||
CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import {
|
||||
css,
|
||||
CSSResultGroup,
|
||||
html,
|
||||
nothing,
|
||||
customElement,
|
||||
@@ -11,12 +13,13 @@ import {
|
||||
state,
|
||||
} from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
import {
|
||||
ApiError,
|
||||
import type {
|
||||
DatabaseInstallResponseModel,
|
||||
DatabaseSettingsPresentationModel,
|
||||
InstallResource,
|
||||
ProblemDetails,
|
||||
ProblemDetails} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
ApiError,
|
||||
InstallResource
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
import { tryExecute } from '@umbraco-cms/backoffice/resources';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import './installer-database.element.js';
|
||||
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
|
||||
import { installerContextProvider } from '../shared/utils.story-helpers.js';
|
||||
import type { UmbInstallerDatabaseElement } from './installer-database.element.js';
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { UmbInstallerContext, UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import { css, CSSResultGroup, html, nothing, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { ProblemDetails } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { UmbInstallerContext} from '../installer.context.js';
|
||||
import { UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, nothing, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { ProblemDetails } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
@customElement('umb-installer-error')
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
|
||||
import { installerContextProvider } from '../shared/utils.story-helpers.js';
|
||||
import { UmbInstallerContext } from '../installer.context.js';
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import type { Observable } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import {
|
||||
import type {
|
||||
InstallVResponseModel,
|
||||
InstallResource,
|
||||
InstallSettingsResponseModel,
|
||||
ProblemDetails,
|
||||
ProblemDetails} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
InstallResource,
|
||||
TelemetryLevelModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
import { tryExecute } from '@umbraco-cms/backoffice/resources';
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { UmbInstallerContext, UMB_INSTALLER_CONTEXT } from './installer.context.js';
|
||||
import { css, CSSResultGroup, html, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
import './consent/installer-consent.element.js';
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta } from '@storybook/web-components';
|
||||
import type { Meta } from '@storybook/web-components';
|
||||
import { html } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
import './index.js';
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { css, CSSResultGroup, html, LitElement, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, LitElement, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
@customElement('umb-installer-installing')
|
||||
export class UmbInstallerInstallingElement extends LitElement {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
|
||||
import { installerContextProvider } from '../shared/utils.story-helpers.js';
|
||||
import type { UmbInstallerInstallingElement } from './installer-installing.element.js';
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { css, CSSResultGroup, html, LitElement, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, LitElement, customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
@customElement('umb-installer-layout')
|
||||
export class UmbInstallerLayoutElement extends LitElement {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
import type { UmbInstallerLayoutElement } from './installer-layout.element.js';
|
||||
import { html } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import { UmbInstallerContext, UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import { css, CSSResultGroup, html, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { UmbInstallerContext} from '../installer.context.js';
|
||||
import { UMB_INSTALLER_CONTEXT } from '../installer.context.js';
|
||||
import type { CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { css, html, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
@customElement('umb-installer-user')
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Meta, Story } from '@storybook/web-components';
|
||||
import type { Meta, Story } from '@storybook/web-components';
|
||||
|
||||
import { installerContextProvider } from '../shared/utils.story-helpers.js';
|
||||
import type { UmbInstallerUserElement } from './installer-user.element.js';
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
import type {
|
||||
CSSResultGroup} from '@umbraco-cms/backoffice/external/lit';
|
||||
import {
|
||||
css,
|
||||
CSSResultGroup,
|
||||
html,
|
||||
LitElement,
|
||||
customElement,
|
||||
property,
|
||||
ifDefined,
|
||||
} from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UpgradeSettingsResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { UpgradeSettingsResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
/**
|
||||
* @element umb-upgrader-view
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { html, customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UpgradeResource, UpgradeSettingsResponseModel, ApiError } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { UpgradeSettingsResponseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UpgradeResource, ApiError } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { tryExecute } from '@umbraco-cms/backoffice/resources';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { type UmbContextToken } from '../context-api/index.js';
|
||||
import { type UmbControllerHost } from '../controller-api/index.js';
|
||||
import type { UmbContextToken } from '../context-api/index.js';
|
||||
import type { UmbControllerHost } from '../controller-api/index.js';
|
||||
import { UmbBaseController } from './controller-base.class.js';
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { type UmbController } from '../controller-api/controller.interface.js';
|
||||
import type { UmbController } from '../controller-api/controller.interface.js';
|
||||
import { UmbClassMixin } from './index.js';
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { UmbContextToken } from '../token/context-token.js';
|
||||
import type { UmbContextToken } from '../token/context-token.js';
|
||||
import { UmbContextConsumer } from './context-consumer.js';
|
||||
import { UmbContextCallback } from './context-request.event.js';
|
||||
import type { UmbContextCallback } from './context-request.event.js';
|
||||
import type { UmbControllerHost, UmbController } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbContextConsumerController<BaseType = unknown, ResultType extends BaseType = BaseType>
|
||||
|
||||
@@ -2,7 +2,8 @@ import { expect, oneEvent } from '@open-wc/testing';
|
||||
import { UmbContextProvider } from '../provide/context-provider.js';
|
||||
import { UmbContextToken } from '../token/context-token.js';
|
||||
import { UmbContextConsumer } from './context-consumer.js';
|
||||
import { UmbContextRequestEventImplementation, UMB_CONTENT_REQUEST_EVENT_TYPE } from './context-request.event.js';
|
||||
import type { UmbContextRequestEventImplementation} from './context-request.event.js';
|
||||
import { UMB_CONTENT_REQUEST_EVENT_TYPE } from './context-request.event.js';
|
||||
|
||||
const testContextAlias = 'my-test-context';
|
||||
const testContextAliasAndApiAlias = 'my-test-context#testApi';
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
import { UmbContextDiscriminator, UmbContextToken } from '../token/context-token.js';
|
||||
import type { UmbContextDiscriminator, UmbContextToken } from '../token/context-token.js';
|
||||
import {
|
||||
isUmbContextProvideEventType,
|
||||
//isUmbContextUnprovidedEventType,
|
||||
UMB_CONTEXT_PROVIDE_EVENT_TYPE,
|
||||
//umbContextUnprovidedEventType,
|
||||
} from '../provide/context-provide.event.js';
|
||||
import { UmbContextRequestEventImplementation, UmbContextCallback } from './context-request.event.js';
|
||||
import type { UmbContextCallback } from './context-request.event.js';
|
||||
import { UmbContextRequestEventImplementation } from './context-request.event.js';
|
||||
|
||||
/**
|
||||
* @export
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { expect } from '@open-wc/testing';
|
||||
import { UmbContextRequestEventImplementation, UmbContextRequestEvent } from './context-request.event.js';
|
||||
import type { UmbContextRequestEvent } from './context-request.event.js';
|
||||
import { UmbContextRequestEventImplementation } from './context-request.event.js';
|
||||
|
||||
describe('UmbContextRequestEvent', () => {
|
||||
const contextRequestCallback = () => {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { expect } from '@open-wc/testing';
|
||||
import { UmbContextProvideEventImplementation, UmbContextProvideEvent } from './context-provide.event.js';
|
||||
import type { UmbContextProvideEvent } from './context-provide.event.js';
|
||||
import { UmbContextProvideEventImplementation } from './context-provide.event.js';
|
||||
|
||||
describe('UmbContextProvideEvent', () => {
|
||||
const event: UmbContextProvideEvent = new UmbContextProvideEventImplementation('my-test-context-alias');
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UmbContextToken } from '../token/context-token.js';
|
||||
import type { UmbContextToken } from '../token/context-token.js';
|
||||
|
||||
export const UMB_CONTEXT_PROVIDE_EVENT_TYPE = 'umb:context-provide';
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UmbContextToken } from '../token/context-token.js';
|
||||
import type { UmbContextToken } from '../token/context-token.js';
|
||||
import { UmbContextProvider } from './context-provider.js';
|
||||
import type { UmbControllerHost, UmbController } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbContextProviderController, UmbContextToken } from '@umbraco-cms/backoffice/context-api';
|
||||
import type { UmbControllerHostElement} from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
|
||||
import { UmbContextProviderController } from '@umbraco-cms/backoffice/context-api';
|
||||
|
||||
// TODO: There is some circular reference from this to Controller-api which is not good. We should move this elsewhere as we do not encourage the use of this element. Its only purpose is within Storybook and tests.
|
||||
/**
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import type {
|
||||
UmbContextRequestEvent} from '../consume/context-request.event.js';
|
||||
import {
|
||||
UmbContextRequestEvent,
|
||||
UMB_CONTENT_REQUEST_EVENT_TYPE,
|
||||
UMB_DEBUG_CONTEXT_EVENT_TYPE,
|
||||
} from '../consume/context-request.event.js';
|
||||
import { UmbContextToken } from '../token/context-token.js';
|
||||
import type { UmbContextToken } from '../token/context-token.js';
|
||||
import {
|
||||
UmbContextProvideEventImplementation,
|
||||
//UmbContextUnprovidedEventImplementation,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
import type { UmbControllerHostElement} from './controller-host-element.mixin.js';
|
||||
import { UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
|
||||
export class UmbControllerHostProviderElement
|
||||
extends UmbControllerHostElementMixin(HTMLElement)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { expect, fixture, html } from '@open-wc/testing';
|
||||
import { UmbControllerHostProviderElement } from './controller-host-provider.element.js';
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
import type { UmbControllerHostElement} from './controller-host-element.mixin.js';
|
||||
import { UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
import { customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbContextConsumerController, UmbContextProviderController } from '@umbraco-cms/backoffice/context-api';
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { UmbController } from './controller.interface.js';
|
||||
|
||||
export declare class UmbControllerHost {
|
||||
export interface UmbControllerHost {
|
||||
hasController(controller: UmbController): boolean;
|
||||
getControllers(filterMethod: (ctrl: UmbController) => boolean): UmbController[];
|
||||
addController(controller: UmbController): void;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { ClassConstructor } from '../extension-api/types/utils.js';
|
||||
import { UmbControllerHost } from './controller-host.interface.js';
|
||||
import type { UmbControllerHost } from './controller-host.interface.js';
|
||||
import type { UmbController } from './controller.interface.js';
|
||||
|
||||
declare class UmbControllerHostBaseDeclaration implements Omit<UmbControllerHost, 'getHostElement'> {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { expect } from '@open-wc/testing';
|
||||
import { type UmbControllerHostElement, UmbControllerHostElementMixin } from './controller-host-element.mixin.js';
|
||||
import { UmbControllerHostMixin } from './controller-host.mixin.js';
|
||||
import { type UmbControllerAlias } from './controller-alias.type.js';
|
||||
import { type UmbControllerHost } from './controller-host.interface.js';
|
||||
import type { UmbControllerAlias } from './controller-alias.type.js';
|
||||
import type { UmbControllerHost } from './controller-host.interface.js';
|
||||
import { customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
@customElement('test-my-controller-host')
|
||||
|
||||
@@ -1,15 +1,11 @@
|
||||
import { UmbLocalizeController } from '@umbraco-cms/backoffice/localization-api';
|
||||
import type { Observable } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import type { HTMLElementConstructor } from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api';
|
||||
import {
|
||||
UmbContextToken,
|
||||
UmbContextCallback,
|
||||
UmbContextConsumerController,
|
||||
UmbContextProviderController,
|
||||
} from '@umbraco-cms/backoffice/context-api';
|
||||
import { ObserverCallback, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
|
||||
import { UmbControllerHostElementMixin, type UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbContextToken, UmbContextCallback } from '@umbraco-cms/backoffice/context-api';
|
||||
import { UmbContextConsumerController, UmbContextProviderController } from '@umbraco-cms/backoffice/context-api';
|
||||
import type { ObserverCallback } from '@umbraco-cms/backoffice/observable-api';
|
||||
import { UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
|
||||
|
||||
export declare class UmbElement extends UmbControllerHostElement {
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UmbConditionConfigBase } from '../types/index.js';
|
||||
import type { UmbConditionConfigBase } from '../types/index.js';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export type UmbConditionControllerArguments<
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { UmbConditionConfigBase } from '../types/index.js';
|
||||
import { UmbController } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbController } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export interface UmbExtensionCondition extends UmbController {
|
||||
readonly permitted: boolean;
|
||||
|
||||
@@ -7,15 +7,16 @@ import type {
|
||||
} from '../types/index.js';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import type { UmbExtensionCondition } from '../condition/extension-condition.interface.js';
|
||||
import type {
|
||||
UmbControllerHostElement} from '../../controller-api/controller-host-element.mixin.js';
|
||||
import {
|
||||
UmbControllerHostElement,
|
||||
UmbControllerHostElementMixin,
|
||||
} from '../../controller-api/controller-host-element.mixin.js';
|
||||
import { UmbBaseExtensionInitializer } from './index.js';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { customElement, html } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbSwitchCondition } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
@customElement('umb-test-controller-host')
|
||||
export class UmbTestControllerHostElement extends UmbControllerHostElementMixin(HTMLElement) {}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import type { UmbExtensionCondition } from '../condition/extension-condition.interface.js';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import {
|
||||
type ManifestCondition,
|
||||
type ManifestWithDynamicConditions,
|
||||
type UmbExtensionRegistry,
|
||||
createExtensionApi,
|
||||
import { createExtensionApi } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type {
|
||||
UmbConditionConfigBase,
|
||||
ManifestCondition,
|
||||
ManifestWithDynamicConditions,
|
||||
UmbExtensionRegistry,
|
||||
} from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
|
||||
import type { UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
|
||||
|
||||
/**
|
||||
* This abstract Controller holds the core to manage a single Extension.
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
import { expect, fixture } from '@open-wc/testing';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { ManifestCondition, ManifestWithDynamicConditions, UmbConditionConfigBase } from '../types/index.js';
|
||||
import { UmbExtensionCondition } from '../condition/extension-condition.interface.js';
|
||||
import { PermittedControllerType, UmbBaseExtensionInitializer, UmbBaseExtensionsInitializer } from './index.js';
|
||||
import type { ManifestCondition, ManifestWithDynamicConditions, UmbConditionConfigBase } from '../types/index.js';
|
||||
import type { UmbExtensionCondition } from '../condition/extension-condition.interface.js';
|
||||
import type { PermittedControllerType} from './index.js';
|
||||
import { UmbBaseExtensionInitializer, UmbBaseExtensionsInitializer } from './index.js';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { UmbControllerHost, UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost} from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { customElement, html } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
@customElement('umb-test-controller-host')
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
||||
import type { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
||||
import { map } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import type {
|
||||
ManifestBase,
|
||||
@@ -6,7 +6,7 @@ import type {
|
||||
UmbExtensionRegistry,
|
||||
} from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export type PermittedControllerType<ControllerType extends { manifest: any }> = ControllerType & {
|
||||
manifest: Required<Pick<ControllerType, 'manifest'>>;
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { UmbApi } from '../models/api.interface.js';
|
||||
import type { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import type { ManifestApi, ManifestCondition } from '../types/index.js';
|
||||
import { UmbBaseExtensionInitializer } from './base-extension-initializer.controller.js';
|
||||
import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
/**
|
||||
* This Controller manages a single Extension and its API instance.
|
||||
|
||||
@@ -1,13 +1,10 @@
|
||||
import { expect, fixture } from '@open-wc/testing';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { ManifestApi, ManifestWithDynamicConditions } from '../types/index.js';
|
||||
import type { ManifestApi, ManifestWithDynamicConditions } from '../types/index.js';
|
||||
import { UmbExtensionApiInitializer } from './index.js';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import {
|
||||
type UmbControllerHost,
|
||||
UmbControllerHostElement,
|
||||
UmbControllerHostElementMixin,
|
||||
} from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHostElement, UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { customElement, html } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { type ManifestSection, UmbSwitchCondition } from '@umbraco-cms/backoffice/extension-registry';
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { createExtensionElement } from '../functions/create-extension-element.function.js';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { ManifestCondition, ManifestWithDynamicConditions } from '../types/index.js';
|
||||
import type { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import type { ManifestCondition, ManifestWithDynamicConditions } from '../types/index.js';
|
||||
import { UmbBaseExtensionInitializer } from './base-extension-initializer.controller.js';
|
||||
import { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
/**
|
||||
* This Controller manages a single Extension and its Element.
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { expect, fixture } from '@open-wc/testing';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { UmbExtensionElementInitializer } from './index.js';
|
||||
import { UmbControllerHostElement, UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHostElement} from '@umbraco-cms/backoffice/controller-api';
|
||||
import { UmbControllerHostElementMixin } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { customElement, html } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { type ManifestSection, UmbSwitchCondition } from '@umbraco-cms/backoffice/extension-registry';
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
||||
import type { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
||||
import {
|
||||
type PermittedControllerType,
|
||||
UmbBaseExtensionsInitializer,
|
||||
} from './base-extensions-initializer.controller.js';
|
||||
import { UmbExtensionApiInitializer } from './extension-api-initializer.controller.js';
|
||||
import { type UmbExtensionRegistry, ManifestApi, ManifestBase } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type { ManifestApi, ManifestBase, UmbExtensionRegistry } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,8 +4,8 @@ import {
|
||||
type PermittedControllerType,
|
||||
UmbBaseExtensionsInitializer,
|
||||
} from './base-extensions-initializer.controller.js';
|
||||
import { type ManifestBase, type UmbExtensionRegistry } from '@umbraco-cms/backoffice/extension-api';
|
||||
import { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { ManifestBase, UmbExtensionRegistry } from '@umbraco-cms/backoffice/extension-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
/**
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbApi } from '../models/api.interface.js';
|
||||
import { ManifestApi, ManifestElementAndApi } from '../types/base.types.js';
|
||||
import type { UmbApi } from '../models/api.interface.js';
|
||||
import type { ManifestApi, ManifestElementAndApi } from '../types/base.types.js';
|
||||
import { loadManifestApi } from './load-manifest-api.function.js';
|
||||
|
||||
export async function createExtensionApi<ApiType extends UmbApi = UmbApi>(
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { expect } from '@open-wc/testing';
|
||||
import { ManifestApi } from '../types/index.js';
|
||||
import { UmbApi } from '../models/api.interface.js';
|
||||
import type { ManifestApi } from '../types/index.js';
|
||||
import type { UmbApi } from '../models/api.interface.js';
|
||||
import { createExtensionApi } from './create-extension-api.function.js';
|
||||
|
||||
class UmbExtensionApiTrueTestClass implements UmbApi {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { ManifestElement, ManifestElementAndApi } from '../types/base.types.js';
|
||||
import type { ManifestElement, ManifestElementAndApi } from '../types/base.types.js';
|
||||
import { loadManifestElement } from './load-manifest-element.function.js';
|
||||
|
||||
export async function createExtensionElement<ElementType extends HTMLElement>(
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { expect } from '@open-wc/testing';
|
||||
import { ManifestElement, ManifestElementAndApi } from '../types/index.js';
|
||||
import type { ManifestElement, ManifestElementAndApi } from '../types/index.js';
|
||||
import { createExtensionElement } from './create-extension-element.function.js';
|
||||
import { customElement } from '@umbraco-cms/backoffice/external/lit';
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import type { ManifestBase, ManifestBundle } from '../types/index.js';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import type { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { loadManifestPlainJs } from '../functions/load-manifest-plain-js.function.js';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbBundleExtensionInitializer extends UmbBaseController {
|
||||
#extensionRegistry;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import type { ManifestEntryPoint } from '../types/index.js';
|
||||
import { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import type { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { hasInitExport, loadManifestPlainJs } from '../functions/index.js';
|
||||
import { UmbBaseController } from '@umbraco-cms/backoffice/class-api';
|
||||
import { UmbElement } from '@umbraco-cms/backoffice/element-api';
|
||||
import type { UmbElement } from '@umbraco-cms/backoffice/element-api';
|
||||
|
||||
export class UmbEntryPointExtensionInitializer extends UmbBaseController {
|
||||
#host;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { UmbExtensionRegistry } from '../registry/extension.registry.js';
|
||||
import { ManifestBase } from '../types/index.js';
|
||||
import type { ManifestBase } from '../types/index.js';
|
||||
import type { UmbElement } from '@umbraco-cms/backoffice/element-api';
|
||||
|
||||
export type UmbEntryPointOnInit = (host: UmbElement, extensionRegistry: UmbExtensionRegistry<ManifestBase>) => void;
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import type { ManifestBase, ManifestKind } from '../types/index.js';
|
||||
import { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
||||
import type { ManifestTypeMap, SpecificManifestTypeOrManifestBase } from '../types/map.types.js';
|
||||
import { UmbBasicState } from '@umbraco-cms/backoffice/observable-api';
|
||||
import type {
|
||||
Observable} from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import {
|
||||
map,
|
||||
Observable,
|
||||
distinctUntilChanged,
|
||||
combineLatest,
|
||||
of,
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import { aTimeout, elementUpdated, expect, fixture, html } from '@open-wc/testing';
|
||||
import { DefaultLocalizationSet, LocalizationSet, registerLocalization, localizations } from './manager.js';
|
||||
import type { DefaultLocalizationSet, LocalizationSet} from './manager.js';
|
||||
import { registerLocalization, localizations } from './manager.js';
|
||||
import { UmbLocalizeController } from './localize.controller.js';
|
||||
import { LitElement, customElement, property } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbElementMixin } from '@umbraco-cms/backoffice/element-api';
|
||||
import { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
@customElement('umb-localize-controller-host')
|
||||
class UmbLocalizeControllerHostElement extends UmbElementMixin(LitElement) {
|
||||
|
||||
@@ -11,17 +11,18 @@ The above copyright notice and this permission notice shall be included in all c
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
import {
|
||||
import type {
|
||||
DefaultLocalizationSet,
|
||||
FunctionParams,
|
||||
LocalizationSet,
|
||||
LocalizationSet} from './manager.js';
|
||||
import {
|
||||
connectedElements,
|
||||
documentDirection,
|
||||
documentLanguage,
|
||||
fallback,
|
||||
localizations,
|
||||
} from './manager.js';
|
||||
import { UmbController, UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbController, UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
const LocalizeControllerAlias = Symbol();
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Observable, Subscription } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import type { Observable, Subscription } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
|
||||
export type ObserverCallbackStack<T> = {
|
||||
next: (_value: T) => void;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { MemoizationFunction } from '../types/memoization-function.type.js';
|
||||
import { MappingFunction } from '../types/mapping-function.type.js';
|
||||
import type { MemoizationFunction } from '../types/memoization-function.type.js';
|
||||
import type { MappingFunction } from '../types/mapping-function.type.js';
|
||||
import { defaultMemoization } from './default-memoization.function.js';
|
||||
import { distinctUntilChanged, map, Observable, shareReplay } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import type { Observable} from '@umbraco-cms/backoffice/external/rxjs';
|
||||
import { distinctUntilChanged, map, shareReplay } from '@umbraco-cms/backoffice/external/rxjs';
|
||||
|
||||
/**
|
||||
* @export
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { data as userData } from './user/user.data.js';
|
||||
import { data as documentData } from './document.data.js';
|
||||
import {
|
||||
import type {
|
||||
AuditLogResponseModel,
|
||||
AuditLogWithUsernameResponseModel,
|
||||
AuditLogWithUsernameResponseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
AuditTypeModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import {
|
||||
import type {
|
||||
DataTypeItemResponseModel,
|
||||
DataTypeResponseModel,
|
||||
DataTypeTreeItemResponseModel,
|
||||
|
||||
@@ -4,9 +4,10 @@ import { UmbMockEntityTreeManager } from '../entity/entity-tree.manager.js';
|
||||
import { folderTreeItemMapper } from '../utils.js';
|
||||
import { UmbMockEntityItemManager } from '../entity/entity-item.manager.js';
|
||||
import { UmbMockEntityDetailManager } from '../entity/entity-detail.manager.js';
|
||||
import { UmbMockDataTypeModel, data } from './data-type.data.js';
|
||||
import type { UmbMockDataTypeModel} from './data-type.data.js';
|
||||
import { data } from './data-type.data.js';
|
||||
import { UmbId } from '@umbraco-cms/backoffice/id';
|
||||
import {
|
||||
import type {
|
||||
CreateDataTypeRequestModel,
|
||||
CreateFolderRequestModel,
|
||||
DataTypeItemResponseModel,
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import {
|
||||
ContentTypeCompositionTypeModel,
|
||||
import type {
|
||||
DocumentTypeItemResponseModel,
|
||||
DocumentTypeResponseModel,
|
||||
DocumentTypeTreeItemResponseModel,
|
||||
DocumentTypeTreeItemResponseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
ContentTypeCompositionTypeModel
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
export type UmbMockDocumentTypeModelHack = DocumentTypeResponseModel &
|
||||
|
||||
@@ -3,9 +3,10 @@ import { UmbMockEntityFolderManager } from '../entity/entity-folder.manager.js';
|
||||
import { UmbMockEntityTreeManager } from '../entity/entity-tree.manager.js';
|
||||
import { UmbMockEntityItemManager } from '../entity/entity-item.manager.js';
|
||||
import { UmbMockEntityDetailManager } from '../entity/entity-detail.manager.js';
|
||||
import { UmbMockDocumentTypeModel, data } from './document-type.data.js';
|
||||
import type { UmbMockDocumentTypeModel} from './document-type.data.js';
|
||||
import { data } from './document-type.data.js';
|
||||
import { UmbId } from '@umbraco-cms/backoffice/id';
|
||||
import {
|
||||
import type {
|
||||
CreateDocumentTypeRequestModel,
|
||||
CreateFolderRequestModel,
|
||||
DocumentTypeItemResponseModel,
|
||||
|
||||
@@ -2,9 +2,8 @@ import { umbDocumentTypeMockDb } from './document-type/document-type.db.js';
|
||||
import { umbUserPermissionData } from './user-permission.data.js';
|
||||
import { UmbEntityData } from './entity.data.js';
|
||||
import { createDocumentTreeItem } from './utils.js';
|
||||
import { UmbMockDocumentTypeModel } from './document-type/document-type.data.js';
|
||||
import {
|
||||
ContentStateModel,
|
||||
import type { UmbMockDocumentTypeModel } from './document-type/document-type.data.js';
|
||||
import type {
|
||||
DocumentItemResponseModel,
|
||||
DocumentResponseModel,
|
||||
DocumentTreeItemResponseModel,
|
||||
@@ -12,7 +11,9 @@ import {
|
||||
PagedDocumentTreeItemResponseModel,
|
||||
PagedDocumentTypeResponseModel,
|
||||
PagedRecycleBinItemResponseModel,
|
||||
PublishDocumentRequestModel,
|
||||
PublishDocumentRequestModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
ContentStateModel,
|
||||
PublishedStateModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UMB_DOCUMENT_ENTITY_TYPE } from '@umbraco-cms/backoffice/document';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbEntityData } from './entity.data.js';
|
||||
import { TreeItemPresentationModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { UmbEntityData } from './entity.data.js';
|
||||
import type { TreeItemPresentationModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UmbId } from '@umbraco-cms/backoffice/id';
|
||||
|
||||
export class UmbEntityTreeData<TreeItemType extends TreeItemPresentationModel> {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UmbEntityMockDbBase } from './entity-base.js';
|
||||
import type { UmbEntityMockDbBase } from './entity-base.js';
|
||||
|
||||
export class UmbMockEntityDetailManager<MockType extends { id: string }> {
|
||||
#db: UmbEntityMockDbBase<MockType>;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbEntityMockDbBase } from './entity-base.js';
|
||||
import {
|
||||
import type { UmbEntityMockDbBase } from './entity-base.js';
|
||||
import type {
|
||||
CreateFolderRequestModel,
|
||||
FolderResponseModel,
|
||||
FolderTreeItemResponseModel,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UmbData } from '../data.js';
|
||||
import type { UmbData } from '../data.js';
|
||||
|
||||
export class UmbMockEntityItemManager<T extends { id: string }> {
|
||||
#db: UmbData<T>;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { UmbEntityMockDbBase } from './entity-base.js';
|
||||
import type { UmbEntityMockDbBase } from './entity-base.js';
|
||||
import { UmbId } from '@umbraco-cms/backoffice/id';
|
||||
import { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
export class UmbMockEntityTreeManager<T extends Omit<EntityTreeItemResponseModel, 'type'>> {
|
||||
#db: UmbEntityMockDbBase<T>;
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import {
|
||||
HealthStatusModel,
|
||||
import type {
|
||||
IndexResponseModel,
|
||||
PagedIndexResponseModel,
|
||||
SearchResultResponseModel,
|
||||
SearchResultResponseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
HealthStatusModel
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
export function getIndexByName(indexName: string) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbData } from '../data.js';
|
||||
import { FileSystemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { FileSystemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
export abstract class UmbFileSystemMockDbBase<
|
||||
MockItemType extends FileSystemResponseModelBaseModel,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbFileSystemMockDbBase } from './file-system-base.js';
|
||||
import {
|
||||
import type { UmbFileSystemMockDbBase } from './file-system-base.js';
|
||||
import type {
|
||||
FileSystemFileCreateRequestModelBaseModel,
|
||||
FileSystemFileResponseModelBaseModel,
|
||||
FileSystemFileUpdateRequestModelBaseModel,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbFileSystemMockDbBase } from './file-system-base.js';
|
||||
import {
|
||||
import type { UmbFileSystemMockDbBase } from './file-system-base.js';
|
||||
import type {
|
||||
FileSystemCreateRequestModelBaseModel,
|
||||
FileSystemResponseModelBaseModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { UmbData } from '../data.js';
|
||||
import type { UmbData } from '../data.js';
|
||||
import { createFileItemResponseModelBaseModel } from '../utils.js';
|
||||
import { FileSystemItemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { FileSystemItemResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
export class UmbMockFileSystemItemManager<T extends FileSystemItemResponseModelBaseModel> {
|
||||
#db: UmbData<T>;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { UmbData } from '../data.js';
|
||||
import type { UmbData } from '../data.js';
|
||||
import { createFileSystemTreeItem } from '../utils.js';
|
||||
import type {
|
||||
FileSystemTreeItemPresentationModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
FileSystemTreeItemPresentationModel,
|
||||
PagedFileSystemTreeItemPresentationModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import {
|
||||
import type {
|
||||
HealthCheckGroupPresentationModel,
|
||||
HealthCheckGroupWithResultResponseModel,
|
||||
HealthCheckGroupWithResultResponseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
StatusResultTypeModel,
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbData } from './data.js';
|
||||
import { LanguageResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { LanguageResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
// Temp mocked database
|
||||
class UmbLanguagesData extends UmbData<LanguageResponseModel> {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { logs } from './logs.data.js';
|
||||
import { UmbData } from './data.js';
|
||||
import {
|
||||
import type {
|
||||
LogMessageResponseModel,
|
||||
LogTemplateResponseModel,
|
||||
SavedLogSearchResponseModel,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { LogLevelModel, LogMessageResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { LogMessageResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { LogLevelModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
const allLogs = [
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import {
|
||||
import type {
|
||||
MediaTypeItemResponseModel,
|
||||
MediaTypeResponseModel,
|
||||
MediaTypeTreeItemResponseModel,
|
||||
|
||||
@@ -3,9 +3,10 @@ import { UmbMockEntityFolderManager } from '../entity/entity-folder.manager.js';
|
||||
import { UmbMockEntityTreeManager } from '../entity/entity-tree.manager.js';
|
||||
import { UmbMockEntityItemManager } from '../entity/entity-item.manager.js';
|
||||
import { UmbMockEntityDetailManager } from '../entity/entity-detail.manager.js';
|
||||
import { UmbMockMediaTypeModel, data } from './media-type.data.js';
|
||||
import type { UmbMockMediaTypeModel} from './media-type.data.js';
|
||||
import { data } from './media-type.data.js';
|
||||
import { UmbId } from '@umbraco-cms/backoffice/id';
|
||||
import {
|
||||
import type {
|
||||
CreateFolderRequestModel,
|
||||
CreateMediaTypeRequestModel,
|
||||
MediaTypeItemResponseModel,
|
||||
|
||||
@@ -2,7 +2,7 @@ import type { UmbMediaDetailModel } from '../../packages/media/media/index.js';
|
||||
import { UmbEntityTreeData } from './entity-tree.data.js';
|
||||
import { UmbEntityData } from './entity.data.js';
|
||||
import { createContentTreeItem, createMediaTreeItem } from './utils.js';
|
||||
import {
|
||||
import type {
|
||||
ContentTreeItemResponseModel,
|
||||
MediaItemResponseModel,
|
||||
PagedMediaTreeItemResponseModel,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { UmbEntityData } from './entity.data.js';
|
||||
import { createEntityTreeItem } from './utils.js';
|
||||
import { EntityTreeItemResponseModel, PagedEntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { UmbMemberGroupDetailModel } from '@umbraco-cms/backoffice/member-group';
|
||||
import type { EntityTreeItemResponseModel, PagedEntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { UmbMemberGroupDetailModel } from '@umbraco-cms/backoffice/member-group';
|
||||
|
||||
export const data: Array<any> = [
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { MemberTypeDetails } from '../../packages/members/member-types/types.js';
|
||||
import { UmbData } from './data.js';
|
||||
import { createEntityTreeItem } from './utils.js';
|
||||
import { EntityTreeItemResponseModel, PagedEntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { EntityTreeItemResponseModel, PagedEntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
export const data: Array<MemberTypeDetails> = [
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import {
|
||||
import type {
|
||||
FileSystemTreeItemPresentationModel,
|
||||
PartialViewItemResponseModel,
|
||||
PartialViewResponseModel,
|
||||
|
||||
@@ -3,8 +3,9 @@ import { UmbMockFileSystemFolderManager } from '../file-system/file-system-folde
|
||||
import { UmbMockFileSystemItemManager } from '../file-system/file-system-item.manager.js';
|
||||
import { UmbMockFileSystemTreeManager } from '../file-system/file-system-tree.manager.js';
|
||||
import { UmbMockFileSystemDetailManager } from '../file-system/file-system-detail.manager.js';
|
||||
import { UmbMockPartialViewModel, data, snippets } from './partial-view.data.js';
|
||||
import {
|
||||
import type { UmbMockPartialViewModel} from './partial-view.data.js';
|
||||
import { data, snippets } from './partial-view.data.js';
|
||||
import type {
|
||||
PagedPartialViewSnippetItemResponseModel,
|
||||
PartialViewSnippetItemResponseModel,
|
||||
PartialViewSnippetResponseModel,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import {
|
||||
import type {
|
||||
FileSystemTreeItemPresentationModel,
|
||||
ScriptItemResponseModel,
|
||||
ScriptResponseModel,
|
||||
|
||||
@@ -3,7 +3,8 @@ import { UmbMockFileSystemFolderManager } from '../file-system/file-system-folde
|
||||
import { UmbMockFileSystemItemManager } from '../file-system/file-system-item.manager.js';
|
||||
import { UmbMockFileSystemTreeManager } from '../file-system/file-system-tree.manager.js';
|
||||
import { UmbMockFileSystemDetailManager } from '../file-system/file-system-detail.manager.js';
|
||||
import { UmbMockScriptModel, data as scriptData } from './script.data.js';
|
||||
import type { UmbMockScriptModel} from './script.data.js';
|
||||
import { data as scriptData } from './script.data.js';
|
||||
|
||||
class UmbScriptMockDB extends UmbFileSystemMockDbBase<UmbMockScriptModel> {
|
||||
tree = new UmbMockFileSystemTreeManager<UmbMockScriptModel>(this);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user