@umbraco-cms/backoffice 14.0.0--preview007-2ee36857 → 14.0.0--preview007-63654dfd

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/dist-cms/custom-elements.json +57 -143
  2. package/dist-cms/packages/core/collection/default/collection-default.context.d.ts +6 -6
  3. package/dist-cms/packages/core/collection/types.d.ts +8 -1
  4. package/dist-cms/packages/core/components/table/table.element.d.ts +5 -0
  5. package/dist-cms/packages/core/components/table/table.element.js +6 -2
  6. package/dist-cms/packages/core/extension-registry/models/index.d.ts +3 -1
  7. package/dist-cms/packages/core/extension-registry/models/workspace-footer-app.model.d.ts +5 -0
  8. package/dist-cms/packages/core/extension-registry/models/workspace-footer-app.model.js +1 -0
  9. package/dist-cms/packages/core/modal/token/dictionary-item-picker-modal.token.js +1 -0
  10. package/dist-cms/packages/core/property-editor/uis/collection-view/config/column-configuration/property-editor-ui-collection-view-column-configuration.element.d.ts +2 -7
  11. package/dist-cms/packages/core/property-editor/uis/collection-view/config/column-configuration/property-editor-ui-collection-view-column-configuration.element.js +1 -1
  12. package/dist-cms/packages/core/workspace/components/workspace-footer/workspace-footer.element.js +1 -0
  13. package/dist-cms/packages/dictionary/tree/dictionary-tree.server.data-source.js +1 -0
  14. package/dist-cms/packages/documents/document-types/tree/document-type.tree.store.js +1 -0
  15. package/dist-cms/packages/documents/documents/breadcrumb/manifests.d.ts +2 -0
  16. package/dist-cms/packages/documents/documents/breadcrumb/manifests.js +15 -0
  17. package/dist-cms/packages/documents/documents/breadcrumb/workspace-breadcrumb.element.d.ts +11 -0
  18. package/dist-cms/packages/documents/documents/breadcrumb/workspace-breadcrumb.element.js +21 -0
  19. package/dist-cms/packages/documents/documents/collection/action/create-document-collection-action.element.d.ts +2 -0
  20. package/dist-cms/packages/documents/documents/collection/action/create-document-collection-action.element.js +29 -12
  21. package/dist-cms/packages/documents/documents/collection/views/grid/document-grid-collection-view.element.d.ts +1 -0
  22. package/dist-cms/packages/documents/documents/collection/views/grid/document-grid-collection-view.element.js +75 -8
  23. package/dist-cms/packages/documents/documents/collection/views/index.d.ts +2 -0
  24. package/dist-cms/packages/documents/documents/collection/views/index.js +20 -0
  25. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-table-column-name.element.d.ts +19 -0
  26. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-table-column-name.element.js +69 -0
  27. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-table-column-state.element.d.ts +15 -0
  28. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-table-column-state.element.js +39 -0
  29. package/dist-cms/packages/documents/documents/collection/views/table/document-table-collection-view.element.d.ts +3 -3
  30. package/dist-cms/packages/documents/documents/collection/views/table/document-table-collection-view.element.js +47 -44
  31. package/dist-cms/packages/documents/documents/manifests.js +12 -10
  32. package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view.element.js +1 -3
  33. package/dist-cms/packages/media/media-types/tree/media-type-tree.server.data-source.js +1 -0
  34. package/dist-cms/packages/media/media-types/tree/media-type-tree.store.js +1 -0
  35. package/dist-cms/packages/members/member-type/tree/member-type-tree.server.data-source.js +1 -0
  36. package/dist-cms/packages/members/member-type/tree/member-type-tree.store.js +1 -0
  37. package/dist-cms/packages/templating/components/templating-item-menu/templating-item-menu.element.d.ts +0 -1
  38. package/dist-cms/packages/templating/components/templating-item-menu/templating-item-menu.element.js +55 -64
  39. package/dist-cms/packages/templating/modals/index.d.ts +1 -0
  40. package/dist-cms/packages/templating/modals/index.js +1 -0
  41. package/dist-cms/packages/templating/modals/manifests.js +6 -0
  42. package/dist-cms/packages/templating/modals/templating-item-picker/templating-item-picker-modal.element.d.ts +1 -1
  43. package/dist-cms/packages/templating/modals/templating-item-picker/templating-item-picker-modal.element.js +37 -34
  44. package/dist-cms/packages/templating/modals/templating-item-picker/templating-item-picker-modal.token.d.ts +2 -2
  45. package/dist-cms/packages/templating/modals/templating-page-field-builder/index.d.ts +2 -0
  46. package/dist-cms/packages/templating/modals/templating-page-field-builder/index.js +2 -0
  47. package/dist-cms/packages/templating/modals/templating-page-field-builder/templating-page-field-builder-modal.element.d.ts +19 -0
  48. package/dist-cms/packages/templating/modals/templating-page-field-builder/templating-page-field-builder-modal.element.js +105 -0
  49. package/dist-cms/packages/templating/modals/templating-page-field-builder/templating-page-field-builder-modal.token.d.ts +7 -0
  50. package/dist-cms/packages/templating/modals/templating-page-field-builder/templating-page-field-builder-modal.token.js +7 -0
  51. package/dist-cms/packages/templating/modals/templating-section-picker/index.d.ts +1 -1
  52. package/dist-cms/packages/templating/modals/templating-section-picker/index.js +1 -1
  53. package/dist-cms/packages/templating/modals/templating-section-picker/templating-section-picker-modal.element.d.ts +4 -7
  54. package/dist-cms/packages/templating/modals/templating-section-picker/templating-section-picker-modal.element.js +133 -94
  55. package/dist-cms/packages/templating/partial-views/tree/partial-view-tree.server.data-source.js +1 -0
  56. package/dist-cms/packages/templating/partial-views/tree/partial-view-tree.store.js +1 -0
  57. package/dist-cms/packages/templating/scripts/tree/script-tree.server.data-source.js +1 -0
  58. package/dist-cms/packages/templating/scripts/tree/script-tree.store.js +1 -0
  59. package/dist-cms/packages/templating/stylesheets/tree/stylesheet-tree.server.data-source.js +1 -0
  60. package/dist-cms/packages/templating/stylesheets/tree/stylesheet-tree.store.js +1 -0
  61. package/dist-cms/packages/templating/templates/tree/template-tree.server.data-source.js +1 -0
  62. package/dist-cms/packages/templating/types.d.ts +7 -1
  63. package/dist-cms/packages/templating/types.js +7 -0
  64. package/dist-cms/packages/templating/utils/index.js +1 -1
  65. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  66. package/dist-cms/umbraco-package-schema.json +73 -0
  67. package/dist-cms/vscode-html-custom-data.json +27 -44
  68. package/package.json +1 -1
  69. package/dist-cms/packages/templating/modals/templating-section-picker/templating-section-picker-input.element.d.ts +0 -24
  70. package/dist-cms/packages/templating/modals/templating-section-picker/templating-section-picker-input.element.js +0 -157
@@ -9,14 +9,9 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
13
- if (kind === "m") throw new TypeError("Private method is not writable");
14
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
15
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
16
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
17
- };
18
- var _UmbTemplatingInsertMenuElement_instances, _UmbTemplatingInsertMenuElement_openModal, _UmbTemplatingInsertMenuElement_dictionaryDetailRepository, _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet, _UmbTemplatingInsertMenuElement_getPartialViewSnippet, _UmbTemplatingInsertMenuElement_openChooseTypeModal, _UmbTemplatingInsertMenuElement_openInsertPageFieldSidebar, _UmbTemplatingInsertMenuElement_openInsertPartialViewSidebar, _UmbTemplatingInsertMenuElement_openInsertDictionaryItemModal, _UmbTemplatingInsertMenuElement_dispatchInsertEvent;
19
- import { UMB_PARTIAL_VIEW_PICKER_MODAL, } from '../../modals/partial-view-picker/partial-view-picker-modal.token.js';
12
+ var _UmbTemplatingInsertMenuElement_instances, _UmbTemplatingInsertMenuElement_dictionaryDetailRepository, _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet, _UmbTemplatingInsertMenuElement_openTemplatingItemPickerModal, _UmbTemplatingInsertMenuElement_openPartialViewPickerModal, _UmbTemplatingInsertMenuElement_openDictionaryItemPickerModal, _UmbTemplatingInsertMenuElement_openPageFieldBuilderModal, _UmbTemplatingInsertMenuElement_dispatchInsertEvent;
13
+ import { UMB_PARTIAL_VIEW_PICKER_MODAL } from '../../modals/partial-view-picker/partial-view-picker-modal.token.js';
14
+ import { UMB_TEMPLATING_PAGE_FIELD_BUILDER_MODAL } from '../../modals/templating-page-field-builder/templating-page-field-builder-modal.token.js';
20
15
  import { CodeSnippetType } from '../../types.js';
21
16
  import { UMB_TEMPLATING_ITEM_PICKER_MODAL, } from '../../modals/templating-item-picker/templating-item-picker-modal.token.js';
22
17
  import { getInsertDictionarySnippet, getInsertPartialSnippet } from '../../utils/index.js';
@@ -30,29 +25,7 @@ let UmbTemplatingInsertMenuElement = class UmbTemplatingInsertMenuElement extend
30
25
  super();
31
26
  _UmbTemplatingInsertMenuElement_instances.add(this);
32
27
  this.value = '';
33
- _UmbTemplatingInsertMenuElement_openModal.set(this, void 0);
34
28
  _UmbTemplatingInsertMenuElement_dictionaryDetailRepository.set(this, new UmbDictionaryDetailRepository(this));
35
- _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet.set(this, async (modalValue) => {
36
- const unique = modalValue.selection[0];
37
- if (unique === null)
38
- return;
39
- const { data } = await __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_dictionaryDetailRepository, "f").requestByUnique(unique);
40
- this.value = getInsertDictionarySnippet(data?.name ?? '');
41
- });
42
- _UmbTemplatingInsertMenuElement_getPartialViewSnippet.set(this, async (modalValue) => {
43
- this.value = getInsertPartialSnippet(modalValue.selection?.[0] ?? '');
44
- });
45
- _UmbTemplatingInsertMenuElement_openChooseTypeModal.set(this, () => {
46
- __classPrivateFieldSet(this, _UmbTemplatingInsertMenuElement_openModal, this._modalContext?.open(UMB_TEMPLATING_ITEM_PICKER_MODAL, {
47
- data: {
48
- hidePartialViews: this.hidePartialView,
49
- },
50
- }), "f");
51
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_openModal, "f")?.onSubmit().then((closedModal) => {
52
- this.determineInsertValue(closedModal);
53
- });
54
- });
55
- this.hidePartialView = false;
56
29
  this.consumeContext(UMB_MODAL_MANAGER_CONTEXT, (instance) => {
57
30
  this._modalContext = instance;
58
31
  });
@@ -61,11 +34,17 @@ let UmbTemplatingInsertMenuElement = class UmbTemplatingInsertMenuElement extend
61
34
  const { type, value } = modalValue;
62
35
  switch (type) {
63
36
  case CodeSnippetType.partialView: {
64
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_getPartialViewSnippet, "f").call(this, value);
37
+ this.value = getInsertPartialSnippet(value);
38
+ __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_dispatchInsertEvent).call(this);
65
39
  break;
66
40
  }
67
41
  case CodeSnippetType.dictionaryItem: {
68
- await __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet, "f").call(this, value);
42
+ await __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet).call(this, value);
43
+ __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_dispatchInsertEvent).call(this);
44
+ break;
45
+ }
46
+ case CodeSnippetType.pageField: {
47
+ this.value = value;
69
48
  __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_dispatchInsertEvent).call(this);
70
49
  break;
71
50
  }
@@ -74,7 +53,10 @@ let UmbTemplatingInsertMenuElement = class UmbTemplatingInsertMenuElement extend
74
53
  render() {
75
54
  return html `
76
55
  <uui-button-group>
77
- <uui-button look="secondary" @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_openChooseTypeModal, "f")} label=${this.localize.term('template_insert')}>
56
+ <uui-button
57
+ look="secondary"
58
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openTemplatingItemPickerModal)}
59
+ label=${this.localize.term('template_insert')}>
78
60
  <uui-icon name="icon-add"></uui-icon>${this.localize.term('template_insert')}
79
61
  </uui-button>
80
62
  <umb-dropdown
@@ -87,53 +69,65 @@ let UmbTemplatingInsertMenuElement = class UmbTemplatingInsertMenuElement extend
87
69
  class="insert-menu-item"
88
70
  label=${this.localize.term('template_insertPageField')}
89
71
  title=${this.localize.term('template_insertPageField')}
90
- @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openInsertPageFieldSidebar)}></uui-menu-item>
72
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openPageFieldBuilderModal)}></uui-menu-item>
91
73
  <uui-menu-item
92
74
  class="insert-menu-item"
93
75
  label=${this.localize.term('template_insertPartialView')}
94
76
  title=${this.localize.term('template_insertPartialView')}
95
- @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openInsertPartialViewSidebar)}>
77
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openPartialViewPickerModal)}>
96
78
  </uui-menu-item>
97
79
  <uui-menu-item
98
80
  class="insert-menu-item"
99
81
  label=${this.localize.term('template_insertDictionaryItem')}
100
82
  title=${this.localize.term('template_insertDictionaryItem')}
101
- @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openInsertDictionaryItemModal)}>
83
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_openDictionaryItemPickerModal)}>
102
84
  </uui-menu-item>
103
85
  </umb-dropdown>
104
86
  </uui-button-group>
105
87
  `;
106
88
  }
107
89
  };
108
- _UmbTemplatingInsertMenuElement_openModal = new WeakMap();
109
90
  _UmbTemplatingInsertMenuElement_dictionaryDetailRepository = new WeakMap();
110
- _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet = new WeakMap();
111
- _UmbTemplatingInsertMenuElement_getPartialViewSnippet = new WeakMap();
112
- _UmbTemplatingInsertMenuElement_openChooseTypeModal = new WeakMap();
113
91
  _UmbTemplatingInsertMenuElement_instances = new WeakSet();
114
- _UmbTemplatingInsertMenuElement_openInsertPageFieldSidebar = function _UmbTemplatingInsertMenuElement_openInsertPageFieldSidebar() {
115
- //this.#openModel = this._modalContext?.open();
92
+ _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet = async function _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet(unique) {
93
+ if (unique === null)
94
+ return;
95
+ const { data } = await __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_dictionaryDetailRepository, "f").requestByUnique(unique);
96
+ this.value = getInsertDictionarySnippet(data?.name ?? '');
116
97
  };
117
- _UmbTemplatingInsertMenuElement_openInsertPartialViewSidebar = function _UmbTemplatingInsertMenuElement_openInsertPartialViewSidebar() {
118
- __classPrivateFieldSet(this, _UmbTemplatingInsertMenuElement_openModal, this._modalContext?.open(UMB_PARTIAL_VIEW_PICKER_MODAL), "f");
119
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_openModal, "f")?.onSubmit().then((value) => {
120
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_getPartialViewSnippet, "f").call(this, value).then(() => {
121
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_dispatchInsertEvent).call(this);
122
- });
123
- });
98
+ _UmbTemplatingInsertMenuElement_openTemplatingItemPickerModal = async function _UmbTemplatingInsertMenuElement_openTemplatingItemPickerModal() {
99
+ const itemPickerContext = this._modalContext?.open(UMB_TEMPLATING_ITEM_PICKER_MODAL);
100
+ await itemPickerContext?.onSubmit();
101
+ const value = itemPickerContext?.getValue();
102
+ if (!value)
103
+ return;
104
+ this.determineInsertValue(value);
124
105
  };
125
- _UmbTemplatingInsertMenuElement_openInsertDictionaryItemModal = function _UmbTemplatingInsertMenuElement_openInsertDictionaryItemModal() {
126
- __classPrivateFieldSet(this, _UmbTemplatingInsertMenuElement_openModal, this._modalContext?.open(UMB_DICTIONARY_ITEM_PICKER_MODAL, {
127
- data: {
128
- pickableFilter: (item) => item.unique !== null,
129
- hideTreeRoot: true,
130
- },
131
- }), "f");
132
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_openModal, "f")?.onSubmit().then((value) => {
133
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_getDictionaryItemSnippet, "f").call(this, value).then(() => {
134
- __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_dispatchInsertEvent).call(this);
135
- });
136
- });
106
+ _UmbTemplatingInsertMenuElement_openPartialViewPickerModal = async function _UmbTemplatingInsertMenuElement_openPartialViewPickerModal() {
107
+ const partialViewPickerContext = this._modalContext?.open(UMB_PARTIAL_VIEW_PICKER_MODAL);
108
+ await partialViewPickerContext?.onSubmit();
109
+ const path = partialViewPickerContext?.getValue().selection[0];
110
+ if (!path)
111
+ return;
112
+ this.determineInsertValue({ type: CodeSnippetType.partialView, value: path });
113
+ };
114
+ _UmbTemplatingInsertMenuElement_openDictionaryItemPickerModal = async function _UmbTemplatingInsertMenuElement_openDictionaryItemPickerModal() {
115
+ const dictionaryItemPickerContext = this._modalContext?.open(UMB_DICTIONARY_ITEM_PICKER_MODAL);
116
+ await dictionaryItemPickerContext?.onSubmit();
117
+ const item = dictionaryItemPickerContext?.getValue().selection[0];
118
+ if (!item)
119
+ return;
120
+ this.determineInsertValue({ type: CodeSnippetType.dictionaryItem, value: item });
121
+ };
122
+ _UmbTemplatingInsertMenuElement_openPageFieldBuilderModal = async function _UmbTemplatingInsertMenuElement_openPageFieldBuilderModal() {
123
+ const pageFieldBuilderContext = this._modalContext?.open(UMB_TEMPLATING_PAGE_FIELD_BUILDER_MODAL);
124
+ await pageFieldBuilderContext?.onSubmit();
125
+ const output = pageFieldBuilderContext?.getValue().output;
126
+ if (!output)
127
+ return;
128
+ // The output is already built due to the preview in the modal. Can insert it directly now.
129
+ this.value = output;
130
+ __classPrivateFieldGet(this, _UmbTemplatingInsertMenuElement_instances, "m", _UmbTemplatingInsertMenuElement_dispatchInsertEvent).call(this);
137
131
  };
138
132
  _UmbTemplatingInsertMenuElement_dispatchInsertEvent = function _UmbTemplatingInsertMenuElement_dispatchInsertEvent() {
139
133
  this.dispatchEvent(new CustomEvent('insert', { bubbles: false, cancelable: true, composed: false }));
@@ -157,9 +151,6 @@ UmbTemplatingInsertMenuElement.styles = [
157
151
  __decorate([
158
152
  property()
159
153
  ], UmbTemplatingInsertMenuElement.prototype, "value", void 0);
160
- __decorate([
161
- property({ type: Boolean })
162
- ], UmbTemplatingInsertMenuElement.prototype, "hidePartialView", void 0);
163
154
  UmbTemplatingInsertMenuElement = __decorate([
164
155
  customElement('umb-templating-insert-menu')
165
156
  ], UmbTemplatingInsertMenuElement);
@@ -1,3 +1,4 @@
1
1
  export * from './templating-section-picker/index.js';
2
2
  export * from './templating-item-picker/index.js';
3
3
  export * from './partial-view-picker/index.js';
4
+ export * from './templating-page-field-builder/index.js';
@@ -1,3 +1,4 @@
1
1
  export * from './templating-section-picker/index.js';
2
2
  export * from './templating-item-picker/index.js';
3
3
  export * from './partial-view-picker/index.js';
4
+ export * from './templating-page-field-builder/index.js';
@@ -11,5 +11,11 @@ const modals = [
11
11
  name: 'Templating Section Picker Modal',
12
12
  js: () => import('./templating-section-picker/templating-section-picker-modal.element.js'),
13
13
  },
14
+ {
15
+ type: 'modal',
16
+ alias: 'Umb.Modal.TemplatingPageFieldBuilder',
17
+ name: 'Templating Page Field Builder Modal',
18
+ js: () => import('./templating-page-field-builder/templating-page-field-builder-modal.element.js'),
19
+ },
14
20
  ];
15
21
  export const manifests = [...modals];
@@ -3,7 +3,7 @@ import { UmbModalBaseElement } from '../../../core/modal/index.js';
3
3
  export declare class UmbTemplatingItemPickerModalElement extends UmbModalBaseElement<UmbTemplatingItemPickerModalData, UmbTemplatingItemPickerModalValue> {
4
4
  #private;
5
5
  private _close;
6
- private _modalContext?;
6
+ private _itemModalContext?;
7
7
  constructor();
8
8
  render(): import("lit-html").TemplateResult<1>;
9
9
  static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
@@ -4,20 +4,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
- if (kind === "m") throw new TypeError("Private method is not writable");
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
- };
13
7
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
14
8
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
15
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
16
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
17
11
  };
18
- var _UmbTemplatingItemPickerModalElement_instances, _UmbTemplatingItemPickerModalElement_openModal, _UmbTemplatingItemPickerModalElement_openInsertPartialViewSidebar, _UmbTemplatingItemPickerModalElement_openInsertDictionaryItemModal, _UmbTemplatingItemPickerModalElement_renderItems;
12
+ var _UmbTemplatingItemPickerModalElement_instances, _UmbTemplatingItemPickerModalElement_openTemplatingPageFieldModal, _UmbTemplatingItemPickerModalElement_openPartialViewPickerModal, _UmbTemplatingItemPickerModalElement_openDictionaryItemPickerModal, _UmbTemplatingItemPickerModalElement_renderItems;
19
13
  import { CodeSnippetType } from '../../types.js';
20
14
  import { UMB_PARTIAL_VIEW_PICKER_MODAL } from '../partial-view-picker/partial-view-picker-modal.token.js';
15
+ import { UMB_TEMPLATING_PAGE_FIELD_BUILDER_MODAL } from '../templating-page-field-builder/templating-page-field-builder-modal.token.js';
21
16
  import { UmbTextStyles } from '../../../../shared/style/index.js';
22
17
  import { css, html, customElement } from '../../../../external/lit/index.js';
23
18
  import { UMB_MODAL_MANAGER_CONTEXT, UMB_DICTIONARY_ITEM_PICKER_MODAL, UmbModalBaseElement, } from '../../../core/modal/index.js';
@@ -28,9 +23,8 @@ let UmbTemplatingItemPickerModalElement = class UmbTemplatingItemPickerModalElem
28
23
  constructor() {
29
24
  super();
30
25
  _UmbTemplatingItemPickerModalElement_instances.add(this);
31
- _UmbTemplatingItemPickerModalElement_openModal.set(this, void 0);
32
26
  this.consumeContext(UMB_MODAL_MANAGER_CONTEXT, (instance) => {
33
- this._modalContext = instance;
27
+ this._itemModalContext = instance;
34
28
  });
35
29
  }
36
30
  render() {
@@ -46,41 +40,50 @@ let UmbTemplatingItemPickerModalElement = class UmbTemplatingItemPickerModalElem
46
40
  `;
47
41
  }
48
42
  };
49
- _UmbTemplatingItemPickerModalElement_openModal = new WeakMap();
50
43
  _UmbTemplatingItemPickerModalElement_instances = new WeakSet();
51
- _UmbTemplatingItemPickerModalElement_openInsertPartialViewSidebar = function _UmbTemplatingItemPickerModalElement_openInsertPartialViewSidebar() {
52
- __classPrivateFieldSet(this, _UmbTemplatingItemPickerModalElement_openModal, this._modalContext?.open(UMB_PARTIAL_VIEW_PICKER_MODAL), "f");
53
- __classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_openModal, "f")?.onSubmit().then((partialViewPickerModalValue) => {
54
- if (partialViewPickerModalValue) {
55
- this.value = {
56
- type: CodeSnippetType.partialView,
57
- value: partialViewPickerModalValue.selection[0],
58
- };
59
- this.modalContext?.submit();
60
- }
61
- });
44
+ _UmbTemplatingItemPickerModalElement_openTemplatingPageFieldModal = async function _UmbTemplatingItemPickerModalElement_openTemplatingPageFieldModal() {
45
+ const pageFieldBuilderContext = this._itemModalContext?.open(UMB_TEMPLATING_PAGE_FIELD_BUILDER_MODAL);
46
+ await pageFieldBuilderContext?.onSubmit();
47
+ const output = pageFieldBuilderContext?.getValue().output;
48
+ if (output) {
49
+ this.value = { value: output, type: CodeSnippetType.pageField };
50
+ this.modalContext?.submit();
51
+ }
62
52
  };
63
- _UmbTemplatingItemPickerModalElement_openInsertDictionaryItemModal = function _UmbTemplatingItemPickerModalElement_openInsertDictionaryItemModal() {
64
- __classPrivateFieldSet(this, _UmbTemplatingItemPickerModalElement_openModal, this._modalContext?.open(UMB_DICTIONARY_ITEM_PICKER_MODAL, {
53
+ _UmbTemplatingItemPickerModalElement_openPartialViewPickerModal = async function _UmbTemplatingItemPickerModalElement_openPartialViewPickerModal() {
54
+ const partialViewPickerContext = this._itemModalContext?.open(UMB_PARTIAL_VIEW_PICKER_MODAL);
55
+ await partialViewPickerContext?.onSubmit();
56
+ const path = partialViewPickerContext?.getValue().selection[0];
57
+ if (path) {
58
+ const regex = /^%2F|%25dot%25cshtml$/g;
59
+ const prettyPath = path.replace(regex, '').replace(/%2F/g, '/');
60
+ this.value = {
61
+ value: prettyPath,
62
+ type: CodeSnippetType.partialView,
63
+ };
64
+ this.modalContext?.submit();
65
+ }
66
+ };
67
+ _UmbTemplatingItemPickerModalElement_openDictionaryItemPickerModal = async function _UmbTemplatingItemPickerModalElement_openDictionaryItemPickerModal() {
68
+ const dictionaryItemPickerModal = this._itemModalContext?.open(UMB_DICTIONARY_ITEM_PICKER_MODAL, {
65
69
  data: {
66
- hideTreeRoot: true,
67
70
  pickableFilter: (item) => item.unique !== null,
68
71
  },
69
- }), "f");
70
- __classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_openModal, "f")?.onSubmit().then((dictionaryItemPickerModalValue) => {
71
- if (dictionaryItemPickerModalValue) {
72
- this.value = { value: dictionaryItemPickerModalValue, type: CodeSnippetType.dictionaryItem };
73
- this.modalContext?.submit();
74
- }
75
72
  });
73
+ await dictionaryItemPickerModal?.onSubmit();
74
+ const dictionaryItem = dictionaryItemPickerModal?.getValue().selection[0];
75
+ if (dictionaryItem) {
76
+ this.value = { value: dictionaryItem, type: CodeSnippetType.dictionaryItem };
77
+ this.modalContext?.submit();
78
+ }
76
79
  };
77
80
  _UmbTemplatingItemPickerModalElement_renderItems = function _UmbTemplatingItemPickerModalElement_renderItems() {
78
81
  return html `<div id="main">
79
82
  <uui-button
80
- @click=${() => console.log('to be continued')}
83
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_instances, "m", _UmbTemplatingItemPickerModalElement_openTemplatingPageFieldModal)}
81
84
  look="placeholder"
82
85
  label=${this.localize.term('template_insert')}>
83
- <h3><umb-localize key="template_insertPageField">Value</umb-localize> (Not implemented)</h3>
86
+ <h3><umb-localize key="template_insertPageField">Value</umb-localize></h3>
84
87
  <p>
85
88
  <umb-localize key="template_insertPageFieldDesc">
86
89
  Displays the value of a named field from the current page, with options to modify the value or fallback to
@@ -89,7 +92,7 @@ _UmbTemplatingItemPickerModalElement_renderItems = function _UmbTemplatingItemPi
89
92
  </p>
90
93
  </uui-button>
91
94
  <uui-button
92
- @click=${__classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_instances, "m", _UmbTemplatingItemPickerModalElement_openInsertPartialViewSidebar)}
95
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_instances, "m", _UmbTemplatingItemPickerModalElement_openPartialViewPickerModal)}
93
96
  look="placeholder"
94
97
  label=${this.localize.term('template_insert')}>
95
98
  <h3><umb-localize key="template_insertPartialView">Partial view</umb-localize></h3>
@@ -101,7 +104,7 @@ _UmbTemplatingItemPickerModalElement_renderItems = function _UmbTemplatingItemPi
101
104
  </p>
102
105
  </uui-button>
103
106
  <uui-button
104
- @click=${__classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_instances, "m", _UmbTemplatingItemPickerModalElement_openInsertDictionaryItemModal)}
107
+ @click=${__classPrivateFieldGet(this, _UmbTemplatingItemPickerModalElement_instances, "m", _UmbTemplatingItemPickerModalElement_openDictionaryItemPickerModal)}
105
108
  look="placeholder"
106
109
  label=${this.localize.term('template_insertDictionaryItem')}>
107
110
  <h3><umb-localize key="template_insertDictionaryItem">Dictionary Item</umb-localize></h3>
@@ -1,10 +1,10 @@
1
1
  import type { CodeSnippetType } from '../../types.js';
2
- import { type UmbDictionaryItemPickerModalValue, UmbModalToken } from '../../../core/modal/index.js';
2
+ import { UmbModalToken } from '../../../core/modal/index.js';
3
3
  export interface UmbTemplatingItemPickerModalData {
4
4
  hidePartialViews?: boolean;
5
5
  }
6
6
  export type UmbTemplatingItemPickerModalValue = {
7
- value: string | UmbDictionaryItemPickerModalValue;
7
+ value: string;
8
8
  type: CodeSnippetType;
9
9
  };
10
10
  export declare const UMB_TEMPLATING_ITEM_PICKER_MODAL: UmbModalToken<UmbTemplatingItemPickerModalData, UmbTemplatingItemPickerModalValue>;
@@ -0,0 +1,2 @@
1
+ export * from './templating-page-field-builder-modal.element.js';
2
+ export * from './templating-page-field-builder-modal.token.js';
@@ -0,0 +1,2 @@
1
+ export * from './templating-page-field-builder-modal.element.js';
2
+ export * from './templating-page-field-builder-modal.token.js';
@@ -0,0 +1,19 @@
1
+ import type { UmbTemplatingPageFieldBuilderModalData, UmbTemplatingPageFieldBuilderModalValue } from './templating-page-field-builder-modal.token.js';
2
+ import { UmbModalBaseElement } from '../../../core/modal/index.js';
3
+ export declare class UmbTemplatingPageFieldBuilderModalElement extends UmbModalBaseElement<UmbTemplatingPageFieldBuilderModalData, UmbTemplatingPageFieldBuilderModalValue> {
4
+ private _close;
5
+ private _submit;
6
+ private _field?;
7
+ private _haveDefault;
8
+ private _default?;
9
+ private _recursive;
10
+ /** TODO: Implement "Choose field" */
11
+ render(): import("lit-html").TemplateResult<1>;
12
+ static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
13
+ }
14
+ export default UmbTemplatingPageFieldBuilderModalElement;
15
+ declare global {
16
+ interface HTMLElementTagNameMap {
17
+ 'umb-templating-page-field-builder-modal': UmbTemplatingPageFieldBuilderModalElement;
18
+ }
19
+ }
@@ -0,0 +1,105 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { getUmbracoFieldSnippet } from '../../utils/index.js';
8
+ import { UmbTextStyles } from '../../../../shared/style/index.js';
9
+ import { css, html, customElement, state } from '../../../../external/lit/index.js';
10
+ import { UmbModalBaseElement } from '../../../core/modal/index.js';
11
+ let UmbTemplatingPageFieldBuilderModalElement = class UmbTemplatingPageFieldBuilderModalElement extends UmbModalBaseElement {
12
+ constructor() {
13
+ super(...arguments);
14
+ this._haveDefault = false;
15
+ this._recursive = false;
16
+ }
17
+ _close() {
18
+ this.modalContext?.reject();
19
+ }
20
+ _submit() {
21
+ if (!this._field)
22
+ return;
23
+ this.value = { output: getUmbracoFieldSnippet(this._field, this._default, this._recursive) };
24
+ this.modalContext?.submit();
25
+ }
26
+ /** TODO: Implement "Choose field" */
27
+ render() {
28
+ return html `
29
+ <umb-body-layout headline=${this.localize.term('template_insert')}>
30
+ <uui-box>
31
+ <div>
32
+ <uui-label for="page-field-value">
33
+ <umb-localize key="templateEditor_chooseField">Choose field</umb-localize>
34
+ </uui-label>
35
+ (Not implemented yet)
36
+
37
+ <uui-label for="page-field-default-value">
38
+ <umb-localize key="templateEditor_defaultValue">Default value</umb-localize>
39
+ </uui-label>
40
+ ${!this._haveDefault
41
+ ? html `<uui-button
42
+ label=${this.localize.term('templateEditor_addDefaultValue')}
43
+ look="placeholder"
44
+ @click=${() => (this._haveDefault = true)}></uui-button>`
45
+ : html `<uui-input
46
+ id="page-field-default-value"
47
+ label=${this.localize.term('templateEditor_defaultValue')}></uui-input>`}
48
+
49
+ <uui-label for="recursive"><umb-localize key="templateEditor_recursive">Recursive</umb-localize></uui-label>
50
+ <uui-checkbox
51
+ id="recursive"
52
+ label=${this.localize.term('templateEditor_recursiveDescr')}
53
+ ?disabled=${this._field ? false : true}></uui-checkbox>
54
+
55
+ <uui-label><umb-localize key="templateEditor_outputSample">Output sample</umb-localize></uui-label>
56
+ <umb-code-block language="C#" copy
57
+ >${this._field ? getUmbracoFieldSnippet(this._field, this._default, this._recursive) : ''}</umb-code-block
58
+ >
59
+ </div>
60
+ </uui-box>
61
+ <uui-button
62
+ slot="actions"
63
+ @click=${this._close}
64
+ look="secondary"
65
+ label=${this.localize.term('general_close')}></uui-button>
66
+ <uui-button
67
+ slot="actions"
68
+ @click=${this._submit}
69
+ color="positive"
70
+ look="primary"
71
+ label=${this.localize.term('general_submit')}></uui-button>
72
+ </umb-body-layout>
73
+ `;
74
+ }
75
+ };
76
+ UmbTemplatingPageFieldBuilderModalElement.styles = [
77
+ UmbTextStyles,
78
+ css `
79
+ uui-box > div {
80
+ display: grid;
81
+ gap: var(--uui-size-space-2);
82
+ }
83
+
84
+ uui-label:not(:first-child) {
85
+ margin-top: var(--uui-size-space-6);
86
+ }
87
+ `,
88
+ ];
89
+ __decorate([
90
+ state()
91
+ ], UmbTemplatingPageFieldBuilderModalElement.prototype, "_field", void 0);
92
+ __decorate([
93
+ state()
94
+ ], UmbTemplatingPageFieldBuilderModalElement.prototype, "_haveDefault", void 0);
95
+ __decorate([
96
+ state()
97
+ ], UmbTemplatingPageFieldBuilderModalElement.prototype, "_default", void 0);
98
+ __decorate([
99
+ state()
100
+ ], UmbTemplatingPageFieldBuilderModalElement.prototype, "_recursive", void 0);
101
+ UmbTemplatingPageFieldBuilderModalElement = __decorate([
102
+ customElement('umb-templating-page-field-builder-modal')
103
+ ], UmbTemplatingPageFieldBuilderModalElement);
104
+ export { UmbTemplatingPageFieldBuilderModalElement };
105
+ export default UmbTemplatingPageFieldBuilderModalElement;
@@ -0,0 +1,7 @@
1
+ import { UmbModalToken } from '../../../core/modal/index.js';
2
+ export interface UmbTemplatingPageFieldBuilderModalData {
3
+ }
4
+ export type UmbTemplatingPageFieldBuilderModalValue = {
5
+ output: string;
6
+ };
7
+ export declare const UMB_TEMPLATING_PAGE_FIELD_BUILDER_MODAL: UmbModalToken<UmbTemplatingPageFieldBuilderModalData, UmbTemplatingPageFieldBuilderModalValue>;
@@ -0,0 +1,7 @@
1
+ import { UmbModalToken } from '../../../core/modal/index.js';
2
+ export const UMB_TEMPLATING_PAGE_FIELD_BUILDER_MODAL = new UmbModalToken('Umb.Modal.TemplatingPageFieldBuilder', {
3
+ modal: {
4
+ type: 'sidebar',
5
+ size: 'small',
6
+ },
7
+ });
@@ -1,2 +1,2 @@
1
- export * from './templating-section-picker-input.element.js';
2
1
  export * from './templating-section-picker-modal.element.js';
2
+ export * from './templating-section-picker-modal.token.js';
@@ -1,2 +1,2 @@
1
- export * from './templating-section-picker-input.element.js';
2
1
  export * from './templating-section-picker-modal.element.js';
2
+ export * from './templating-section-picker-modal.token.js';
@@ -1,14 +1,11 @@
1
1
  import type { UmbTemplatingSectionPickerModalData, UmbTemplatingSectionPickerModalValue } from './templating-section-picker-modal.token.js';
2
- import type { UmbInsertSectionCheckboxElement } from './templating-section-picker-input.element.js';
3
2
  import { UmbModalBaseElement } from '../../../core/modal/index.js';
4
- import './templating-section-picker-input.element.js';
5
3
  export declare class UmbTemplatingSectionPickerModalElement extends UmbModalBaseElement<UmbTemplatingSectionPickerModalData, UmbTemplatingSectionPickerModalValue> {
6
4
  #private;
7
- checkboxes: NodeListOf<UmbInsertSectionCheckboxElement>;
8
- selectedCheckbox?: UmbInsertSectionCheckboxElement | null;
9
- snippet: string;
10
- firstUpdated(): void;
11
- snippetMethods: ((sectionName: string, isMandatory: boolean) => string)[];
5
+ private _renderNamedSectionNameInput?;
6
+ private _defineNamedSectionNameInput?;
7
+ private _renderNamedSectionIsMandatoryCheckbox?;
8
+ private _pickedSection;
12
9
  render(): import("lit-html").TemplateResult<1>;
13
10
  static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
14
11
  }