Document input: Find variant name (#20853)
* ability to override get name * implement document name method
This commit is contained in:
@@ -82,6 +82,12 @@ export class UmbPickerInputContext<
|
||||
getSelection() {
|
||||
return this.#itemManager.getUniques();
|
||||
}
|
||||
getSelectedItems() {
|
||||
return this.#itemManager.getItems();
|
||||
}
|
||||
getSelectedItemByUnique(unique: string) {
|
||||
return this.#itemManager.getItems().find((item) => item.unique === unique);
|
||||
}
|
||||
|
||||
setSelection(selection: Array<string | null>) {
|
||||
// Note: Currently we do not support picking root item. So we filter out null values:
|
||||
@@ -111,10 +117,12 @@ export class UmbPickerInputContext<
|
||||
this.getHostElement().dispatchEvent(new UmbChangeEvent());
|
||||
}
|
||||
|
||||
async requestRemoveItem(unique: string) {
|
||||
const item = this.#itemManager.getItems().find((item) => item.unique === unique);
|
||||
protected async _requestItemName(unique: string) {
|
||||
return this.getSelectedItemByUnique(unique)?.name ?? '#general_notFound';
|
||||
}
|
||||
|
||||
const name = item?.name ?? '#general_notFound';
|
||||
async requestRemoveItem(unique: string) {
|
||||
const name = await this._requestItemName(unique);
|
||||
await umbConfirmModal(this, {
|
||||
color: 'danger',
|
||||
headline: `#actions_remove ${name}?`,
|
||||
|
||||
@@ -7,6 +7,7 @@ import { UmbPickerInputContext } from '@umbraco-cms/backoffice/picker-input';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbDocumentTypeEntityType } from '@umbraco-cms/backoffice/document-type';
|
||||
import { UMB_VARIANT_CONTEXT } from '@umbraco-cms/backoffice/variant';
|
||||
import { UmbDocumentItemDataResolver } from '../../item/index.js';
|
||||
|
||||
interface UmbDocumentPickerInputContextOpenArgs {
|
||||
allowedContentTypes?: Array<{ unique: string; entityType: UmbDocumentTypeEntityType }>;
|
||||
@@ -56,6 +57,15 @@ export class UmbDocumentPickerInputContext extends UmbPickerInputContext<
|
||||
await super.openPicker(combinedPickerData);
|
||||
}
|
||||
|
||||
protected override async _requestItemName(unique: string): Promise<string> {
|
||||
const item = this.getSelectedItemByUnique(unique);
|
||||
const resolver = new UmbDocumentItemDataResolver(this);
|
||||
resolver.setData(item);
|
||||
const name = await resolver.getName();
|
||||
this.removeUmbController(resolver);
|
||||
return name ?? '#general_notFound';
|
||||
}
|
||||
|
||||
#pickableFilter = (
|
||||
item: UmbDocumentItemModel,
|
||||
allowedContentTypes?: Array<{ unique: string; entityType: UmbDocumentTypeEntityType }>,
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"@umbraco/json-models-builders": "^2.0.41",
|
||||
"@umbraco/playwright-testhelpers": "^17.0.0-beta.11",
|
||||
"@umbraco/playwright-testhelpers": "^17.0.0-beta.13",
|
||||
"camelize": "^1.0.0",
|
||||
"dotenv": "^16.3.1",
|
||||
"node-fetch": "^2.6.7"
|
||||
@@ -67,9 +67,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@umbraco/playwright-testhelpers": {
|
||||
"version": "17.0.0-beta.11",
|
||||
"resolved": "https://registry.npmjs.org/@umbraco/playwright-testhelpers/-/playwright-testhelpers-17.0.0-beta.11.tgz",
|
||||
"integrity": "sha512-HZMdtees5o5FLFsSRQ02BzO+Kxhm1iZop/2Sys/5MzIZkz1pbJIPUvudeK7LbbpJON5piJzI9yCyrZYaF5usiw==",
|
||||
"version": "17.0.0-beta.13",
|
||||
"resolved": "https://registry.npmjs.org/@umbraco/playwright-testhelpers/-/playwright-testhelpers-17.0.0-beta.13.tgz",
|
||||
"integrity": "sha512-a4E/uGko0TiGMvuPthfa3KMDz+UYoFzj6zqVFl2g+mKdXqRJLHh++6/YQuXlHdxdN/KSAlvF8yCYZ6+2F5HDWw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@umbraco/json-models-builders": "2.0.41",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@umbraco/json-models-builders": "^2.0.41",
|
||||
"@umbraco/playwright-testhelpers": "^17.0.0-beta.11",
|
||||
"@umbraco/playwright-testhelpers": "^17.0.0-beta.13",
|
||||
"camelize": "^1.0.0",
|
||||
"dotenv": "^16.3.1",
|
||||
"node-fetch": "^2.6.7"
|
||||
|
||||
Reference in New Issue
Block a user