register user picker
This commit is contained in:
@@ -4,6 +4,7 @@ import { customElement, state } from 'lit/decorators.js';
|
||||
import { UmbInputListBase } from '../input-list-base/input-list-base';
|
||||
import { UmbUserStore, UMB_USER_STORE_CONTEXT_TOKEN } from '../../../users/users/user.store';
|
||||
import type { UserEntity } from '@umbraco-cms/models';
|
||||
import { UMB_USER_PICKER_MODAL_TOKEN } from 'src/backoffice/users/users/modals/user-picker';
|
||||
|
||||
@customElement('umb-input-user')
|
||||
export class UmbPickerUserElement extends UmbInputListBase {
|
||||
@@ -38,7 +39,7 @@ export class UmbPickerUserElement extends UmbInputListBase {
|
||||
|
||||
connectedCallback(): void {
|
||||
super.connectedCallback();
|
||||
this.pickerLayout = 'umb-picker-layout-user';
|
||||
this.pickerToken = UMB_USER_PICKER_MODAL_TOKEN;
|
||||
this.consumeContext(UMB_USER_STORE_CONTEXT_TOKEN, (userStore) => {
|
||||
this._userStore = userStore;
|
||||
this._observeUser();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { manifests as workspaceManifests } from './workspace/manifests';
|
||||
import { manifests as modalManifests } from './modals/manifests';
|
||||
|
||||
export const manifests = [...workspaceManifests];
|
||||
export const manifests = [...workspaceManifests, ...modalManifests];
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
import type { ManifestModal } from '@umbraco-cms/extensions-registry';
|
||||
|
||||
const modals: Array<ManifestModal> = [
|
||||
{
|
||||
type: 'modal',
|
||||
alias: 'Umb.Modal.UserPicker',
|
||||
name: 'User Picker Modal',
|
||||
loader: () => import('./user-picker/user-picker-modal.element'),
|
||||
},
|
||||
];
|
||||
|
||||
export const manifests = [...modals];
|
||||
@@ -0,0 +1,8 @@
|
||||
import type { UserDetails } from '@umbraco-cms/models';
|
||||
import { UmbModalToken } from 'libs/modal';
|
||||
import type { UmbPickerModalData } from 'libs/modal/layouts/modal-layout-picker-base';
|
||||
|
||||
export const UMB_USER_PICKER_MODAL_TOKEN = new UmbModalToken<UmbPickerModalData<UserDetails>>('Umb.Modal.UserPicker', {
|
||||
type: 'sidebar',
|
||||
size: 'small',
|
||||
});
|
||||
@@ -5,8 +5,8 @@ import { UmbModalLayoutPickerBase } from '../../../../../../libs/modal/layouts/m
|
||||
import { UmbUserStore, UMB_USER_STORE_CONTEXT_TOKEN } from '../../user.store';
|
||||
import type { UserDetails } from '@umbraco-cms/models';
|
||||
|
||||
@customElement('umb-picker-layout-user')
|
||||
export class UmbPickerLayoutUserElement extends UmbModalLayoutPickerBase<UserDetails> {
|
||||
@customElement('umb-user-picker-modal')
|
||||
export class UmbUserPickerModalElement extends UmbModalLayoutPickerBase<UserDetails> {
|
||||
static styles = [
|
||||
UUITextStyles,
|
||||
css`
|
||||
@@ -105,8 +105,10 @@ export class UmbPickerLayoutUserElement extends UmbModalLayoutPickerBase<UserDet
|
||||
}
|
||||
}
|
||||
|
||||
export default UmbUserPickerModalElement;
|
||||
|
||||
declare global {
|
||||
interface HTMLElementTagNameMap {
|
||||
'umb-picker-layout-user': UmbPickerLayoutUserElement;
|
||||
'umb-user-picker-modal': UmbUserPickerModalElement;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user