@mmlogic/components 0.5.15 → 0.5.16

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 (48) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/mosterdcomponents.cjs.js +1 -1
  3. package/dist/cjs/mrd-boolean-field_28.cjs.entry.js +209 -42
  4. package/dist/collection/components/form/mrd-field/mrd-field.css +69 -0
  5. package/dist/collection/components/form/mrd-field/mrd-field.js +95 -25
  6. package/dist/collection/components/layout/mrd-layout-section/field-value.js +19 -2
  7. package/dist/collection/components/layout/mrd-layout-section/layout-helpers.js +10 -0
  8. package/dist/collection/components/layout/mrd-layout-section/mrd-layout-section.css +4 -3
  9. package/dist/collection/components/layout/mrd-layout-section/mrd-layout-section.js +48 -10
  10. package/dist/collection/components/memo/mrd-memo-container/mrd-memo-container.js +78 -3
  11. package/dist/collection/components/memo/mrd-memo-list/mrd-memo-list.css +14 -0
  12. package/dist/collection/components/memo/mrd-memo-list/mrd-memo-list.js +50 -2
  13. package/dist/collection/dev/app.js +13 -15
  14. package/dist/collection/dev/example-data.js +15 -1
  15. package/dist/components/mrd-field2.js +1 -1
  16. package/dist/components/mrd-layout-section.js +1 -1
  17. package/dist/components/mrd-memo-container2.js +1 -1
  18. package/dist/components/mrd-memo-list2.js +1 -1
  19. package/dist/esm/loader.js +1 -1
  20. package/dist/esm/mosterdcomponents.js +1 -1
  21. package/dist/esm/mrd-boolean-field_28.entry.js +209 -42
  22. package/dist/mosterdcomponents/cell-renderer-CMUxFREW.js.map +1 -0
  23. package/dist/mosterdcomponents/client-layout-BJkVeSq6.js.map +1 -0
  24. package/dist/mosterdcomponents/document-attachments-BufPmMRv.js.map +1 -0
  25. package/dist/mosterdcomponents/field-helpers-BWAp5fD8.js.map +1 -0
  26. package/dist/mosterdcomponents/file-upload-common-DDWuC9-3.js.map +1 -0
  27. package/dist/mosterdcomponents/format-gcecItcD.js.map +1 -0
  28. package/dist/mosterdcomponents/i18n-OzbszktW.js.map +1 -0
  29. package/dist/mosterdcomponents/index-1ayBojyN.js.map +1 -0
  30. package/dist/mosterdcomponents/index-CkcFwdPc.js.map +1 -0
  31. package/dist/mosterdcomponents/index.esm.js.map +1 -0
  32. package/dist/mosterdcomponents/mosterdcomponents.esm.js +1 -1
  33. package/dist/mosterdcomponents/mosterdcomponents.esm.js.map +1 -0
  34. package/dist/mosterdcomponents/p-8a7fa81d.entry.js +3 -0
  35. package/dist/mosterdcomponents/purify.es-_duHfPgC.js.map +1 -0
  36. package/dist/mosterdcomponents/query-params-3TXd5CUO.js.map +1 -0
  37. package/dist/mosterdcomponents/quill-C9pgw_k-.js.map +1 -0
  38. package/dist/mosterdcomponents/table-query-DJq1uKqJ.js.map +1 -0
  39. package/dist/mosterdcomponents/validation-B_0Lx9DE.js.map +1 -0
  40. package/dist/types/components/form/mrd-field/mrd-field.d.ts +16 -0
  41. package/dist/types/components/layout/mrd-layout-section/field-value.d.ts +4 -0
  42. package/dist/types/components/layout/mrd-layout-section/layout-helpers.d.ts +3 -0
  43. package/dist/types/components/layout/mrd-layout-section/mrd-layout-section.d.ts +5 -0
  44. package/dist/types/components/memo/mrd-memo-container/mrd-memo-container.d.ts +22 -1
  45. package/dist/types/components/memo/mrd-memo-list/mrd-memo-list.d.ts +12 -0
  46. package/dist/types/components.d.ts +43 -0
  47. package/package.json +1 -1
  48. package/dist/mosterdcomponents/p-d64ba1f2.entry.js +0 -3
@@ -121,6 +121,20 @@
121
121
  content: "·";
122
122
  margin-right: var(--mrd-space-2);
123
123
  }
124
+ .mrd-memo-list__card-container {
125
+ align-self: flex-start;
126
+ background: none;
127
+ border: none;
128
+ padding: 0;
129
+ font-family: var(--mrd-font-family);
130
+ font-size: var(--mrd-font-size-xs);
131
+ font-weight: var(--mrd-font-weight-semibold);
132
+ color: var(--mrd-color-primary);
133
+ cursor: pointer;
134
+ }
135
+ .mrd-memo-list__card-container:hover {
136
+ text-decoration: underline;
137
+ }
124
138
  .mrd-memo-list__empty {
125
139
  padding: var(--mrd-space-6);
126
140
  text-align: center;
@@ -37,6 +37,11 @@ export class MrdMemoList {
37
37
  /** listItems of the FIELD bound to the `labels` slot, resolved by mrd-layout-section
38
38
  * from its own items array, same reason mrd-memo-view needs it. */
39
39
  this.labelsListItems = null;
40
+ /** False when the list is already scoped to its own container (a company's own
41
+ * memo tab) — showing "belongs to: <this same company>" on every card there
42
+ * would be redundant. True everywhere else (top-level VIEW, or a RELATED_VIEW
43
+ * scoped by a different relation, e.g. a person's authored-memos list). */
44
+ this.showContainerLink = true;
40
45
  this.rows = [];
41
46
  this.loading = false;
42
47
  this.exhausted = false;
@@ -138,6 +143,14 @@ export class MrdMemoList {
138
143
  return 0;
139
144
  return String(raw).replace(/<[^>]*>/g, ' ').replace(/\s+/g, ' ').trim().length;
140
145
  }
146
+ renderContainer(row) {
147
+ if (!this.showContainerLink)
148
+ return null;
149
+ const link = this.slotLink(row, 'container');
150
+ if (!(link === null || link === void 0 ? void 0 : link.href) || !link.name)
151
+ return null;
152
+ return (h("button", { type: "button", class: "mrd-memo-list__card-container", onClick: e => { e.stopPropagation(); this.mrdNavigate.emit({ href: link.href, label: link.name }); } }, link.name));
153
+ }
141
154
  renderLabels(row) {
142
155
  const raw = this.slotValue(row, 'labels');
143
156
  const keys = Array.isArray(raw) ? raw.map(String) : (raw != null && raw !== '' ? [String(raw)] : []);
@@ -182,10 +195,10 @@ export class MrdMemoList {
182
195
  e.preventDefault();
183
196
  this.mrdEdit.emit({ row });
184
197
  }
185
- } }, h("div", { class: "mrd-memo-list__card-header" }, title && h("span", { class: "mrd-memo-list__card-title" }, title), important && (h("span", { class: "mrd-memo-list__card-important", title: t('memo_important', this.locale) }, h("svg", { viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true" }, h("path", { d: "M12 2l2.9 6.26L22 9.27l-5 4.87L18.18 21 12 17.27 5.82 21 7 14.14l-5-4.87 7.1-1.01z" }))))), this.renderBody(row, href), this.renderLabels(row), h("div", { class: "mrd-memo-list__card-meta" }, (author === null || author === void 0 ? void 0 : author.name) && h("span", { class: "mrd-memo-list__card-author" }, author.name), dateRaw != null && dateRaw !== '' && (h("span", { class: "mrd-memo-list__card-date" }, formatDateTime(dateRaw, this.locale))))));
198
+ } }, h("div", { class: "mrd-memo-list__card-header" }, title && h("span", { class: "mrd-memo-list__card-title" }, title), important && (h("span", { class: "mrd-memo-list__card-important", title: t('memo_important', this.locale) }, h("svg", { viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true" }, h("path", { d: "M12 2l2.9 6.26L22 9.27l-5 4.87L18.18 21 12 17.27 5.82 21 7 14.14l-5-4.87 7.1-1.01z" }))))), this.renderBody(row, href), this.renderLabels(row), h("div", { class: "mrd-memo-list__card-meta" }, (author === null || author === void 0 ? void 0 : author.name) && h("span", { class: "mrd-memo-list__card-author" }, author.name), dateRaw != null && dateRaw !== '' && (h("span", { class: "mrd-memo-list__card-date" }, formatDateTime(dateRaw, this.locale)))), this.renderContainer(row)));
186
199
  }
187
200
  render() {
188
- return (h(Host, { key: 'c4c5ce4e96bf2aa754d85b260db8920fdde9311d' }, h("div", { key: '0db49511231edbf946f98734e0bab91cbdf31795', class: "mrd-memo-list" }, this.rows.map((row, i) => this.renderCard(row, i)), this.started && !this.loading && this.rows.length === 0 && (h("div", { key: '2a7a027673d01d63523ce252fe2fbff8ba0515fd', class: "mrd-memo-list__empty" }, t('no_results', this.locale))), !this.exhausted && this.rows.length > 0 && (h("button", { key: '45dfd4a9ccab721d422935c48509d46989c9a360', type: "button", class: "mrd-memo-list__load-more", disabled: this.loading, onClick: this.loadMore }, t('load_more', this.locale))))));
201
+ return (h(Host, { key: '18294fc609b741d38f9933d3ae01d20d6dda5ec5' }, h("div", { key: 'ac6c1adc6575ae1edb2cd507c8ac31b1f28ea35c', class: "mrd-memo-list" }, this.rows.map((row, i) => this.renderCard(row, i)), this.started && !this.loading && this.rows.length === 0 && (h("div", { key: '271281b2e087f8fd55dc51b32b1fe4cce387cdcb', class: "mrd-memo-list__empty" }, t('no_results', this.locale))), !this.exhausted && this.rows.length > 0 && (h("button", { key: '24861c35323d759d69bfd4f358657fe201ca7727', type: "button", class: "mrd-memo-list__load-more", disabled: this.loading, onClick: this.loadMore }, t('load_more', this.locale))))));
189
202
  }
190
203
  static get is() { return "mrd-memo-list"; }
191
204
  static get encapsulation() { return "scoped"; }
@@ -354,6 +367,26 @@ export class MrdMemoList {
354
367
  "getter": false,
355
368
  "setter": false,
356
369
  "defaultValue": "null"
370
+ },
371
+ "showContainerLink": {
372
+ "type": "boolean",
373
+ "mutable": false,
374
+ "complexType": {
375
+ "original": "boolean",
376
+ "resolved": "boolean",
377
+ "references": {}
378
+ },
379
+ "required": false,
380
+ "optional": false,
381
+ "docs": {
382
+ "tags": [],
383
+ "text": "False when the list is already scoped to its own container (a company's own\nmemo tab) \u2014 showing \"belongs to: <this same company>\" on every card there\nwould be redundant. True everywhere else (top-level VIEW, or a RELATED_VIEW\nscoped by a different relation, e.g. a person's authored-memos list)."
384
+ },
385
+ "getter": false,
386
+ "setter": false,
387
+ "reflect": false,
388
+ "attribute": "show-container-link",
389
+ "defaultValue": "true"
357
390
  }
358
391
  };
359
392
  }
@@ -402,6 +435,21 @@ export class MrdMemoList {
402
435
  }
403
436
  }
404
437
  }
438
+ }, {
439
+ "method": "mrdNavigate",
440
+ "name": "mrdNavigate",
441
+ "bubbles": true,
442
+ "cancelable": true,
443
+ "composed": true,
444
+ "docs": {
445
+ "tags": [],
446
+ "text": "The container link on a card was clicked \u2014 this is real navigation (to the\ncontainer record), unrelated to mrdEdit."
447
+ },
448
+ "complexType": {
449
+ "original": "{ href?: string; label: string }",
450
+ "resolved": "{ href?: string | undefined; label: string; }",
451
+ "references": {}
452
+ }
405
453
  }];
406
454
  }
407
455
  static get methods() {
@@ -1173,8 +1173,20 @@ customElements.whenDefined('mrd-form').then(() => {
1173
1173
  form.values = window.EXAMPLE_VALUES;
1174
1174
 
1175
1175
  form.addEventListener('mrdSubmit', (e) => { console.log('[mrdSubmit]', e.detail); logEvent('mrdSubmit', e.detail); });
1176
- form.addEventListener('mrdSearch', (e) => { console.log('[mrdSearch]', e.detail); logEvent('mrdSearch', e.detail); });
1177
1176
  form.addEventListener('mrdFetchAll', (e) => { console.log('[mrdFetchAll]', e.detail); logEvent('mrdFetchAll', e.detail); });
1177
+
1178
+ // No live API backs this tab, so simulate the "Employee" lookup behind the
1179
+ // required projectManager SEARCH relation against EXAMPLE_EMPLOYEES —
1180
+ // mirrors the live-API tab's mrdSearch handler further down this file.
1181
+ form.addEventListener('mrdSearch', (e) => {
1182
+ console.log('[mrdSearch]', e.detail);
1183
+ logEvent('mrdSearch', e.detail);
1184
+ const { name, query } = e.detail;
1185
+ if (!query || query.length < 2) return;
1186
+ const mock = window.EXAMPLE_EMPLOYEES.filter(r => r.label.toLowerCase().includes(query.toLowerCase()));
1187
+ const host = Array.from(form.querySelectorAll('mrd-relation-field')).find(el => el.name === name);
1188
+ if (host && typeof host.setSearchResults === 'function') host.setSearchResults(mock);
1189
+ });
1178
1190
  });
1179
1191
 
1180
1192
  /* =====================================================================
@@ -1229,20 +1241,6 @@ function initLocaleControl() {
1229
1241
 
1230
1242
  initLocaleControl();
1231
1243
 
1232
- document.getElementById('btn-inject-results').addEventListener('click', () => {
1233
- const relationField = document.querySelector('mrd-relation-field');
1234
- if (relationField && typeof relationField.setSearchResults === 'function') {
1235
- relationField.setSearchResults([
1236
- { id: '1', label: 'Alice Johnson', description: 'Senior Engineer' },
1237
- { id: '2', label: 'Bob van der Berg', description: 'Product Manager' },
1238
- { id: '3', label: 'Carol Martínez', description: 'UX Designer' },
1239
- { id: '4', label: 'David Müller', description: 'DevOps Lead' },
1240
- ]);
1241
- } else {
1242
- logEvent('info', 'Type 2+ chars in the Project Manager field first, then click this');
1243
- }
1244
- });
1245
-
1246
1244
  /* =====================================================================
1247
1245
  BOOT
1248
1246
  ===================================================================== */
@@ -52,7 +52,10 @@ window.EXAMPLE_LAYOUT = {
52
52
  label: "Contact & Links",
53
53
  items: [
54
54
  { type: "FIELD", name: "contactEmail", label: "Contact Email", dataType: "EMAIL", required: true, placeholder: "project@company.com" },
55
- { type: "FIELD", name: "repositoryUrl", label: "Repository URL", dataType: "HYPERLINK", required: false, placeholder: "https://github.com/..." }
55
+ { type: "FIELD", name: "repositoryUrl", label: "Repository URL", dataType: "HYPERLINK", required: false, placeholder: "https://github.com/..." },
56
+ // multiple on a scalar dataType (TASK-0274): mrd-field renders a
57
+ // repeatable row per array entry instead of a single input.
58
+ { type: "FIELD", name: "stakeholderEmails", label: "Stakeholder Emails (multiple)", dataType: "EMAIL", required: false, multiple: true, placeholder: "name@company.com" }
56
59
  ]
57
60
  },
58
61
  {
@@ -92,6 +95,7 @@ window.EXAMPLE_VALUES = {
92
95
  isPublic: true,
93
96
  startDate: "2026-01-15",
94
97
  contactEmail: "team@mosterd.nl",
98
+ stakeholderEmails: ["sponsor@acme.com", "steering-committee@acme.com"],
95
99
  // FILE/IMAGE values from the API are { href, fileName } — same shape as everywhere
96
100
  // else in this library (mrd-table, mrd-document-view) — so the field shows the real
97
101
  // filename instead of the href's UUID.
@@ -102,6 +106,16 @@ window.EXAMPLE_VALUES = {
102
106
  ],
103
107
  };
104
108
 
109
+ /** Mock "database" behind the Embedded Form tab's `projectManager` SEARCH
110
+ * relation — there is no live API there, so app.js filters this list itself
111
+ * in response to mrdSearch and feeds it back via setSearchResults(). */
112
+ window.EXAMPLE_EMPLOYEES = [
113
+ { id: '/data/demo/employees/1', label: 'Alice Johnson', description: 'Senior Engineer' },
114
+ { id: '/data/demo/employees/2', label: 'Bob van der Berg', description: 'Product Manager' },
115
+ { id: '/data/demo/employees/3', label: 'Carol Martínez', description: 'UX Designer' },
116
+ { id: '/data/demo/employees/4', label: 'David Müller', description: 'DevOps Lead' },
117
+ ];
118
+
105
119
  // ─── Companies detail view demo ────────────────────────────────────────────────
106
120
 
107
121
  /** Column definitions for the companies list table. */
@@ -1 +1 @@
1
- import{proxyCustomElement as r,HTMLElement as e,createEvent as i,h as d,Host as l,transformTag as t}from"@stencil/core/internal/client";import{b as o,a,c as s}from"./client-layout.js";import{t as n}from"./i18n.js";import{d as m}from"./mrd-boolean-field2.js";import{d as c}from"./mrd-currency-field2.js";import{d as u}from"./mrd-date-field2.js";import{d as f}from"./mrd-datetime-field2.js";import{d as v}from"./mrd-email-field2.js";import{d as h}from"./mrd-file-field2.js";import{d as p}from"./mrd-hyperlink-field2.js";import{d as b}from"./mrd-image-field2.js";import{d as y}from"./mrd-list-field2.js";import{d as g}from"./mrd-longtext-field2.js";import{d as _}from"./mrd-number-field2.js";import{d as j}from"./mrd-relation-field2.js";import{d as k}from"./mrd-secret-field2.js";import{d as x}from"./mrd-text-field2.js";import{d as w}from"./mrd-textarea-field2.js";import{d as E}from"./mrd-time-field2.js";const O=r(class extends e{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdChange=i(this,"mrdChange",7),this.mrdBlur=i(this,"mrdBlur",7),this.mrdSearch=i(this,"mrdSearch",7),this.mrdFetchAll=i(this,"mrdFetchAll",7),this.mrdUpload=i(this,"mrdUpload",7),this.locale=navigator.language,this.historyEntries=[],this.currentValue=void 0,this.handleChange=r=>{var e,i,d,l;r.stopPropagation(),(null!==(i=null===(e=this.item)||void 0===e?void 0:e.historyEnabled)&&void 0!==i?i:null===(l=null===(d=this.item)||void 0===d?void 0:d.field)||void 0===l?void 0:l.historyEnabled)?(this.currentValue=r.detail.value,this.mrdChange.emit({name:r.detail.name,value:{current:r.detail.value,history:this.historyEntries}})):this.mrdChange.emit(r.detail)},this.handleBlur=r=>{var e,i,d,l;r.stopPropagation();const t=null!==(i=null===(e=this.item)||void 0===e?void 0:e.historyEnabled)&&void 0!==i?i:null===(l=null===(d=this.item)||void 0===d?void 0:d.field)||void 0===l?void 0:l.historyEnabled;this.mrdBlur.emit(t?{name:r.detail.name,value:{current:this.currentValue,history:this.historyEntries}}:r.detail)},this.handleSearch=r=>{r.stopPropagation(),this.mrdSearch.emit(r.detail)},this.handleFetchAll=r=>{r.stopPropagation(),this.mrdFetchAll.emit(r.detail)},this.handleUpload=r=>{r.stopPropagation(),this.mrdUpload.emit(r.detail)}}componentWillLoad(){this.initHistoryState()}valueChanged(){this.initHistoryState()}initHistoryState(){var r,e,i,d,l;if(!(null!==(e=null===(r=this.item)||void 0===r?void 0:r.historyEnabled)&&void 0!==e?e:null===(d=null===(i=this.item)||void 0===i?void 0:i.field)||void 0===d?void 0:d.historyEnabled))return;const t=this.value;this.currentValue=null!==(l=null==t?void 0:t.current)&&void 0!==l?l:t,this.historyEntries=Array.isArray(null==t?void 0:t.history)?[...t.history]:[]}getDisplayValue(){var r,e,i,d;return(null!==(e=null===(r=this.item)||void 0===r?void 0:r.historyEnabled)&&void 0!==e?e:null===(d=null===(i=this.item)||void 0===i?void 0:i.field)||void 0===d?void 0:d.historyEnabled)&&null!==this.value&&"object"==typeof this.value&&"current"in this.value?this.value.current:this.value}historyValueInputType(){var r;switch(null===(r=this.item)||void 0===r?void 0:r.dataType){case o.DATE:return"date";case o.DATETIME:return"datetime-local";case o.TIME:return"time";case o.INTEGER:case o.DECIMAL:case o.PERCENTAGE:return"number";case o.EMAIL:return"email";default:return"text"}}emitHistoryChange(r){this.historyEntries=r,this.mrdChange.emit({name:this.item.name,value:{current:this.currentValue,history:r}})}renderHistoryEditor(){var r,e,i,l;if(!(null!==(e=null===(r=this.item)||void 0===r?void 0:r.historyEnabled)&&void 0!==e?e:null===(l=null===(i=this.item)||void 0===i?void 0:i.field)||void 0===l?void 0:l.historyEnabled))return null;const{locale:t}=this,o=this.historyValueInputType(),a=(r,e,i)=>{const d=this.historyEntries.map(((d,l)=>l===r?Object.assign(Object.assign({},d),{[e]:i}):d));this.emitHistoryChange(d)},s=r=>{this.emitHistoryChange(this.historyEntries.filter(((e,i)=>i!==r)))};return d("div",{class:"mrd-field__history-editor"},this.historyEntries.length>0&&d("span",{class:"mrd-field__history-editor-label"},n("history_badge_tooltip",t)),this.historyEntries.map(((r,e)=>d("div",{key:String(e),class:"mrd-field__history-editor-row"},d("input",{class:"mrd-field__history-editor-value",type:o,value:r.value,onInput:r=>a(e,"value",r.target.value)}),d("span",{class:"mrd-field__history-editor-sep"},n("history_until",t)),d("input",{class:"mrd-field__history-editor-until",type:"date",value:r.until,onInput:r=>a(e,"until",r.target.value)}),d("button",{type:"button",class:"mrd-field__history-editor-remove",onClick:()=>s(e),"aria-label":n("remove",t)},d("svg",{viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},d("path",{"fill-rule":"evenodd",d:"M8.75 1A2.75 2.75 0 006 3.75v.443c-.795.077-1.584.176-2.365.298a.75.75 0 10.23 1.482l.149-.022.841 10.518A2.75 2.75 0 007.596 19h4.807a2.75 2.75 0 002.742-2.53l.841-10.52.149.023a.75.75 0 00.23-1.482A41.03 41.03 0 0014 4.193V3.75A2.75 2.75 0 0011.25 1h-2.5zM10 4c.84 0 1.673.025 2.5.075V3.75c0-.69-.56-1.25-1.25-1.25h-2.5c-.69 0-1.25.56-1.25 1.25v.325C8.327 4.025 9.16 4 10 4zM8.58 7.72a.75.75 0 00-1.5.06l.3 7.5a.75.75 0 101.5-.06l-.3-7.5zm4.34.06a.75.75 0 10-1.5-.06l-.3 7.5a.75.75 0 101.5.06l.3-7.5z","clip-rule":"evenodd"})))))),d("button",{type:"button",class:"mrd-field__history-editor-add",onClick:()=>{this.emitHistoryChange([...this.historyEntries,{value:"",until:""}])}},"+ ",n("add",t)))}renderLeafField(r){var e,i,l,t,a,s,n,m,c,u,f,v,h,p,b,y,g,_,j,k,x,w,E,O,z,C,M,A,S,V,B;const{item:I,locale:U}=this,F={name:I.name,label:I.label,required:I.required,disabled:null!==(e=I.disabled)&&void 0!==e&&e,locale:U,onMrdChange:this.handleChange,onMrdBlur:this.handleBlur};switch(I.dataType){case o.TEXT:return d("mrd-text-field",Object.assign({},F,{value:null!==(i=r)&&void 0!==i?i:"",placeholder:null!==(l=I.placeholder)&&void 0!==l?l:""}));case o.TEXTBLOCK:return d("mrd-textarea-field",Object.assign({},F,{value:null!==(t=r)&&void 0!==t?t:"",placeholder:null!==(a=I.placeholder)&&void 0!==a?a:""}));case o.INTEGER:case o.DECIMAL:case o.PERCENTAGE:return d("mrd-number-field",Object.assign({},F,{value:null!==(s=r)&&void 0!==s?s:null,dataType:I.dataType,decimalPrecision:null!==(n=I.decimalPrecision)&&void 0!==n?n:2,placeholder:null!==(m=I.placeholder)&&void 0!==m?m:""}));case o.CURRENCY:return d("mrd-currency-field",Object.assign({},F,{value:null!==(c=r)&&void 0!==c?c:{amount:null,currency:null!==(u=I.currencyCode)&&void 0!==u?u:"EUR"}}));case o.BOOLEAN:return d("mrd-boolean-field",Object.assign({},F,{value:null!==(f=r)&&void 0!==f&&f}));case o.DATE:return d("mrd-date-field",Object.assign({},F,{value:null!==(v=r)&&void 0!==v?v:""}));case o.DATETIME:return d("mrd-datetime-field",Object.assign({},F,{value:null!==(h=r)&&void 0!==h?h:""}));case o.TIME:return d("mrd-time-field",Object.assign({},F,{value:null!==(p=r)&&void 0!==p?p:""}));case o.EMAIL:return d("mrd-email-field",Object.assign({},F,{value:null!==(b=r)&&void 0!==b?b:"",placeholder:null!==(y=I.placeholder)&&void 0!==y?y:""}));case o.HYPERLINK:return d("mrd-hyperlink-field",Object.assign({},F,{value:null!==(g=r)&&void 0!==g?g:"",placeholder:null!==(_=I.placeholder)&&void 0!==_?_:""}));case o.LIST:return d("mrd-list-field",Object.assign({},F,{value:null!==(j=r)&&void 0!==j?j:"",multiple:null!==(k=I.multiple)&&void 0!==k&&k,listItems:null!==(x=I.listItems)&&void 0!==x?x:[]}));case o.FILE:return d("mrd-file-field",Object.assign({},F,{value:r,accept:null!==(w=I.accept)&&void 0!==w?w:"",maxSize:null!==(E=I.maxSize)&&void 0!==E?E:0,multiple:null!==(O=I.multiple)&&void 0!==O&&O,onMrdUpload:this.handleUpload}));case o.IMAGE:return d("mrd-image-field",Object.assign({},F,{value:r,accept:null!==(z=I.accept)&&void 0!==z?z:"image/*",maxSize:null!==(C=I.maxSize)&&void 0!==C?C:0,multiple:null!==(M=I.multiple)&&void 0!==M&&M,onMrdUpload:this.handleUpload}));case o.LONGTEXT:return d("mrd-longtext-field",Object.assign({},F,{value:null!==(A=r)&&void 0!==A?A:"",placeholder:null!==(S=I.placeholder)&&void 0!==S?S:""}));case o.SECRET:return d("mrd-secret-field",Object.assign({},F,{value:null!==(V=r)&&void 0!==V?V:"",placeholder:null!==(B=I.placeholder)&&void 0!==B?B:""}));default:return null}}render(){var r,e,i,t,o,n;const{item:m,locale:c,value:u}=this;if(m.type===a.RELATION)return d(l,null,d("mrd-relation-field",{name:m.name,label:m.label,required:m.required,disabled:null!==(r=m.disabled)&&void 0!==r&&r,locale:c,relatedClass:m.relatedClass,mostSignificantClass:null!==(e=m.mostSignificantClass)&&void 0!==e?e:"",displayType:null!==(i=m.displayType)&&void 0!==i?i:s.SEARCH,editBehavior:null!==(t=m.editBehavior)&&void 0!==t?t:null,commonRelation:m.commonRelation,multiple:null!==(o=m.multiple)&&void 0!==o&&o,dropdownValues:null!==(n=m.dropdownValues)&&void 0!==n?n:[],value:u,onMrdChange:this.handleChange,onMrdBlur:this.handleBlur,onMrdSearch:this.handleSearch,onMrdFetchAll:this.handleFetchAll}));if(m.type!==a.FIELD)return d(l,null);const f=this.getDisplayValue();return d(l,null,d("div",{class:"mrd-field__inner"},this.renderLeafField(f),this.renderHistoryEditor()))}get el(){return this}static get watchers(){return{value:[{valueChanged:0}]}}static get style(){return".sc-mrd-field-h{display:block}.mrd-field__inner.sc-mrd-field{display:block;width:100%}.mrd-field__history-editor.sc-mrd-field{margin-top:var(--mrd-space-2);display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-field__history-editor-label.sc-mrd-field{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-500)}.mrd-field__history-editor-row.sc-mrd-field{display:flex;align-items:center;gap:var(--mrd-space-2)}.mrd-field__history-editor-sep.sc-mrd-field{flex-shrink:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500)}.mrd-field__history-editor-value.sc-mrd-field{flex:1 1 0;min-width:0;height:var(--mrd-input-height);padding:0 var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-800);background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);outline:none;transition:border-color var(--mrd-transition-fast), box-shadow var(--mrd-transition-fast)}.mrd-field__history-editor-value.sc-mrd-field:focus{border-color:var(--mrd-color-primary);box-shadow:var(--mrd-shadow-focus)}.mrd-field__history-editor-until.sc-mrd-field{flex:0 0 10rem;height:var(--mrd-input-height);padding:0 var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-800);background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);outline:none;transition:border-color var(--mrd-transition-fast), box-shadow var(--mrd-transition-fast)}.mrd-field__history-editor-until.sc-mrd-field:focus{border-color:var(--mrd-color-primary);box-shadow:var(--mrd-shadow-focus)}.mrd-field__history-editor-remove.sc-mrd-field{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:2rem;padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-field__history-editor-remove.sc-mrd-field:hover{color:var(--mrd-color-danger);background-color:var(--mrd-color-danger-light)}.mrd-field__history-editor-remove.sc-mrd-field svg.sc-mrd-field{width:1rem;height:1rem}.mrd-field__history-editor-add.sc-mrd-field{align-self:flex-start;padding:var(--mrd-space-1) var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-primary);background:transparent;border:var(--mrd-border-width) solid var(--mrd-color-primary);border-radius:var(--mrd-border-radius-md);cursor:pointer;transition:background-color var(--mrd-transition-fast), color var(--mrd-transition-fast)}.mrd-field__history-editor-add.sc-mrd-field:hover{background-color:var(--mrd-color-primary-light)}"}},[2,"mrd-field",{item:[16],locale:[1],value:[16],historyEntries:[32],currentValue:[32]},void 0,{value:[{valueChanged:0}]}]);function z(){"undefined"!=typeof customElements&&["mrd-field","mrd-boolean-field","mrd-currency-field","mrd-date-field","mrd-datetime-field","mrd-email-field","mrd-file-field","mrd-hyperlink-field","mrd-image-field","mrd-list-field","mrd-longtext-field","mrd-number-field","mrd-relation-field","mrd-secret-field","mrd-text-field","mrd-textarea-field","mrd-time-field"].forEach((r=>{switch(r){case"mrd-field":customElements.get(t(r))||customElements.define(t(r),O);break;case"mrd-boolean-field":customElements.get(t(r))||m();break;case"mrd-currency-field":customElements.get(t(r))||c();break;case"mrd-date-field":customElements.get(t(r))||u();break;case"mrd-datetime-field":customElements.get(t(r))||f();break;case"mrd-email-field":customElements.get(t(r))||v();break;case"mrd-file-field":customElements.get(t(r))||h();break;case"mrd-hyperlink-field":customElements.get(t(r))||p();break;case"mrd-image-field":customElements.get(t(r))||b();break;case"mrd-list-field":customElements.get(t(r))||y();break;case"mrd-longtext-field":customElements.get(t(r))||g();break;case"mrd-number-field":customElements.get(t(r))||_();break;case"mrd-relation-field":customElements.get(t(r))||j();break;case"mrd-secret-field":customElements.get(t(r))||k();break;case"mrd-text-field":customElements.get(t(r))||x();break;case"mrd-textarea-field":customElements.get(t(r))||w();break;case"mrd-time-field":customElements.get(t(r))||E()}}))}export{O as M,z as d}
1
+ import{proxyCustomElement as r,HTMLElement as e,createEvent as i,h as d,Host as l,transformTag as t}from"@stencil/core/internal/client";import{a as o,b as a,c as s}from"./client-layout.js";import{t as m}from"./i18n.js";import{r as n,F as u,a as c}from"./field-helpers.js";import{d as f}from"./mrd-boolean-field2.js";import{d as v}from"./mrd-currency-field2.js";import{d as h}from"./mrd-date-field2.js";import{d as p}from"./mrd-datetime-field2.js";import{d as b}from"./mrd-email-field2.js";import{d as y}from"./mrd-file-field2.js";import{d as _}from"./mrd-hyperlink-field2.js";import{d as g}from"./mrd-image-field2.js";import{d as k}from"./mrd-list-field2.js";import{d as x}from"./mrd-longtext-field2.js";import{d as w}from"./mrd-number-field2.js";import{d as j}from"./mrd-relation-field2.js";import{d as E}from"./mrd-secret-field2.js";import{d as z}from"./mrd-text-field2.js";import{d as O}from"./mrd-textarea-field2.js";import{d as C}from"./mrd-time-field2.js";const M=r(class extends e{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdChange=i(this,"mrdChange",7),this.mrdBlur=i(this,"mrdBlur",7),this.mrdSearch=i(this,"mrdSearch",7),this.mrdFetchAll=i(this,"mrdFetchAll",7),this.mrdUpload=i(this,"mrdUpload",7),this.locale=navigator.language,this.historyEntries=[],this.currentValue=void 0,this.multiValues=[],this.multiError="",this.handleMultiRowBlur=()=>{var r;this.multiError=n(this.multiValues,null!==(r=this.item.required)&&void 0!==r&&r,this.locale),this.mrdBlur.emit({name:this.item.name,value:this.multiValues})},this.handleChange=r=>{var e,i,d,l;r.stopPropagation(),(null!==(i=null===(e=this.item)||void 0===e?void 0:e.historyEnabled)&&void 0!==i?i:null===(l=null===(d=this.item)||void 0===d?void 0:d.field)||void 0===l?void 0:l.historyEnabled)?(this.currentValue=r.detail.value,this.mrdChange.emit({name:r.detail.name,value:{current:r.detail.value,history:this.historyEntries}})):this.mrdChange.emit(r.detail)},this.handleBlur=r=>{var e,i,d,l;r.stopPropagation();const t=null!==(i=null===(e=this.item)||void 0===e?void 0:e.historyEnabled)&&void 0!==i?i:null===(l=null===(d=this.item)||void 0===d?void 0:d.field)||void 0===l?void 0:l.historyEnabled;this.mrdBlur.emit(t?{name:r.detail.name,value:{current:this.currentValue,history:this.historyEntries}}:r.detail)},this.handleSearch=r=>{r.stopPropagation(),this.mrdSearch.emit(r.detail)},this.handleFetchAll=r=>{r.stopPropagation(),this.mrdFetchAll.emit(r.detail)},this.handleUpload=r=>{r.stopPropagation(),this.mrdUpload.emit(r.detail)}}componentWillLoad(){this.initHistoryState(),this.initMultiState()}valueChanged(){this.initHistoryState(),this.initMultiState()}initHistoryState(){var r,e,i,d,l;if(!(null!==(e=null===(r=this.item)||void 0===r?void 0:r.historyEnabled)&&void 0!==e?e:null===(d=null===(i=this.item)||void 0===i?void 0:i.field)||void 0===d?void 0:d.historyEnabled))return;const t=this.value;this.currentValue=null!==(l=null==t?void 0:t.current)&&void 0!==l?l:t,this.historyEntries=Array.isArray(null==t?void 0:t.history)?[...t.history]:[]}isMultiScalar(){var r,e;if((null===(r=this.item)||void 0===r?void 0:r.type)!==o.FIELD||!(null===(e=this.item)||void 0===e?void 0:e.multiple))return!1;const i=this.item.dataType;return i!==a.LIST&&i!==a.FILE&&i!==a.IMAGE}initMultiState(){if(!this.isMultiScalar())return;const r=this.value;this.multiValues=Array.isArray(r)?[...r]:null!=r&&""!==r?[r]:[]}emptyRowValue(){var r;switch(this.item.dataType){case a.INTEGER:case a.DECIMAL:case a.PERCENTAGE:return null;case a.CURRENCY:return{amount:null,currency:null!==(r=this.item.currencyCode)&&void 0!==r?r:"EUR"};case a.BOOLEAN:return!1;default:return""}}emitMultiChange(r){this.multiValues=r,this.mrdChange.emit({name:this.item.name,value:r})}getDisplayValue(){var r,e,i,d;return(null!==(e=null===(r=this.item)||void 0===r?void 0:r.historyEnabled)&&void 0!==e?e:null===(d=null===(i=this.item)||void 0===i?void 0:i.field)||void 0===d?void 0:d.historyEnabled)&&null!==this.value&&"object"==typeof this.value&&"current"in this.value?this.value.current:this.value}historyValueInputType(){var r;switch(null===(r=this.item)||void 0===r?void 0:r.dataType){case a.DATE:return"date";case a.DATETIME:return"datetime-local";case a.TIME:return"time";case a.INTEGER:case a.DECIMAL:case a.PERCENTAGE:return"number";case a.EMAIL:return"email";default:return"text"}}emitHistoryChange(r){this.historyEntries=r,this.mrdChange.emit({name:this.item.name,value:{current:this.currentValue,history:r}})}renderRemoveIcon(){return d("svg",{viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},d("path",{"fill-rule":"evenodd",d:"M8.75 1A2.75 2.75 0 006 3.75v.443c-.795.077-1.584.176-2.365.298a.75.75 0 10.23 1.482l.149-.022.841 10.518A2.75 2.75 0 007.596 19h4.807a2.75 2.75 0 002.742-2.53l.841-10.52.149.023a.75.75 0 00.23-1.482A41.03 41.03 0 0014 4.193V3.75A2.75 2.75 0 0011.25 1h-2.5zM10 4c.84 0 1.673.025 2.5.075V3.75c0-.69-.56-1.25-1.25-1.25h-2.5c-.69 0-1.25.56-1.25 1.25v.325C8.327 4.025 9.16 4 10 4zM8.58 7.72a.75.75 0 00-1.5.06l.3 7.5a.75.75 0 101.5-.06l-.3-7.5zm4.34.06a.75.75 0 10-1.5-.06l-.3 7.5a.75.75 0 101.5.06l.3-7.5z","clip-rule":"evenodd"}))}renderHistoryEditor(){var r,e,i,l;if(!(null!==(e=null===(r=this.item)||void 0===r?void 0:r.historyEnabled)&&void 0!==e?e:null===(l=null===(i=this.item)||void 0===i?void 0:i.field)||void 0===l?void 0:l.historyEnabled))return null;const{locale:t}=this,o=this.historyValueInputType(),a=(r,e,i)=>{const d=this.historyEntries.map(((d,l)=>l===r?Object.assign(Object.assign({},d),{[e]:i}):d));this.emitHistoryChange(d)},s=r=>{this.emitHistoryChange(this.historyEntries.filter(((e,i)=>i!==r)))};return d("div",{class:"mrd-field__history-editor"},this.historyEntries.length>0&&d("span",{class:"mrd-field__history-editor-label"},m("history_badge_tooltip",t)),this.historyEntries.map(((r,e)=>d("div",{key:String(e),class:"mrd-field__history-editor-row"},d("input",{class:"mrd-field__history-editor-value",type:o,value:r.value,onInput:r=>a(e,"value",r.target.value)}),d("span",{class:"mrd-field__history-editor-sep"},m("history_until",t)),d("input",{class:"mrd-field__history-editor-until",type:"date",value:r.until,onInput:r=>a(e,"until",r.target.value)}),d("button",{type:"button",class:"mrd-field__history-editor-remove",onClick:()=>s(e),"aria-label":m("remove",t)},this.renderRemoveIcon())))),d("button",{type:"button",class:"mrd-field__history-editor-add",onClick:()=>{this.emitHistoryChange([...this.historyEntries,{value:"",until:""}])}},"+ ",m("add",t)))}renderLeafField(r,e=this.handleChange,i=this.handleBlur,l={}){var t,o,s,m,n,u,c,f,v,h,p,b,y,_,g,k,x,w,j,E,z,O,C,M,S,A,V,q,B,F,I,R,U;const{item:H,locale:T}=this,L={name:H.name,label:null!==(t=l.label)&&void 0!==t?t:H.label,required:null!==(o=l.required)&&void 0!==o?o:H.required,disabled:null!==(s=H.disabled)&&void 0!==s&&s,locale:T,onMrdChange:e,onMrdBlur:i};switch(H.dataType){case a.TEXT:return d("mrd-text-field",Object.assign({},L,{value:null!==(m=r)&&void 0!==m?m:"",placeholder:null!==(n=H.placeholder)&&void 0!==n?n:""}));case a.TEXTBLOCK:return d("mrd-textarea-field",Object.assign({},L,{value:null!==(u=r)&&void 0!==u?u:"",placeholder:null!==(c=H.placeholder)&&void 0!==c?c:""}));case a.INTEGER:case a.DECIMAL:case a.PERCENTAGE:return d("mrd-number-field",Object.assign({},L,{value:null!==(f=r)&&void 0!==f?f:null,dataType:H.dataType,decimalPrecision:null!==(v=H.decimalPrecision)&&void 0!==v?v:2,placeholder:null!==(h=H.placeholder)&&void 0!==h?h:""}));case a.CURRENCY:return d("mrd-currency-field",Object.assign({},L,{value:null!==(p=r)&&void 0!==p?p:{amount:null,currency:null!==(b=H.currencyCode)&&void 0!==b?b:"EUR"}}));case a.BOOLEAN:return d("mrd-boolean-field",Object.assign({},L,{value:null!==(y=r)&&void 0!==y&&y}));case a.DATE:return d("mrd-date-field",Object.assign({},L,{value:null!==(_=r)&&void 0!==_?_:""}));case a.DATETIME:return d("mrd-datetime-field",Object.assign({},L,{value:null!==(g=r)&&void 0!==g?g:""}));case a.TIME:return d("mrd-time-field",Object.assign({},L,{value:null!==(k=r)&&void 0!==k?k:""}));case a.EMAIL:return d("mrd-email-field",Object.assign({},L,{value:null!==(x=r)&&void 0!==x?x:"",placeholder:null!==(w=H.placeholder)&&void 0!==w?w:""}));case a.HYPERLINK:return d("mrd-hyperlink-field",Object.assign({},L,{value:null!==(j=r)&&void 0!==j?j:"",placeholder:null!==(E=H.placeholder)&&void 0!==E?E:""}));case a.LIST:return d("mrd-list-field",Object.assign({},L,{value:null!==(z=r)&&void 0!==z?z:"",multiple:null!==(O=H.multiple)&&void 0!==O&&O,listItems:null!==(C=H.listItems)&&void 0!==C?C:[]}));case a.FILE:return d("mrd-file-field",Object.assign({},L,{value:r,accept:null!==(M=H.accept)&&void 0!==M?M:"",maxSize:null!==(S=H.maxSize)&&void 0!==S?S:0,multiple:null!==(A=H.multiple)&&void 0!==A&&A,onMrdUpload:this.handleUpload}));case a.IMAGE:return d("mrd-image-field",Object.assign({},L,{value:r,accept:null!==(V=H.accept)&&void 0!==V?V:"image/*",maxSize:null!==(q=H.maxSize)&&void 0!==q?q:0,multiple:null!==(B=H.multiple)&&void 0!==B&&B,onMrdUpload:this.handleUpload}));case a.LONGTEXT:return d("mrd-longtext-field",Object.assign({},L,{value:null!==(F=r)&&void 0!==F?F:"",placeholder:null!==(I=H.placeholder)&&void 0!==I?I:""}));case a.SECRET:return d("mrd-secret-field",Object.assign({},L,{value:null!==(R=r)&&void 0!==R?R:"",placeholder:null!==(U=H.placeholder)&&void 0!==U?U:""}));default:return null}}renderMultiScalarField(){var r,e;const{item:i,locale:l}=this,t=(r,e)=>{this.emitMultiChange(this.multiValues.map(((i,d)=>d===r?e:i)))},o=r=>{this.emitMultiChange(this.multiValues.filter(((e,i)=>i!==r)))};return d("div",{class:"mrd-field__multi"},d(u,{base:"mrd-field__multi",label:null!==(r=i.label)&&void 0!==r?r:"",required:null!==(e=i.required)&&void 0!==e&&e}),this.multiValues.map(((r,e)=>d("div",{key:String(e),class:"mrd-field__multi-row"},d("div",{class:"mrd-field__multi-row-input"},this.renderLeafField(r,(r=>{r.stopPropagation(),t(e,r.detail.value)}),(r=>{r.stopPropagation(),this.handleMultiRowBlur()}),{label:"",required:!1})),d("button",{type:"button",class:"mrd-field__multi-remove",onClick:()=>o(e),"aria-label":m("remove",l)},this.renderRemoveIcon())))),d("button",{type:"button",class:"mrd-field__multi-add",onClick:()=>{this.emitMultiChange([...this.multiValues,this.emptyRowValue()])}},"+ ",m("add",l)),d(c,{base:"mrd-field__multi",error:this.multiError}))}render(){var r,e,i,t,a,m;const{item:n,locale:u,value:c}=this;if(n.type===o.RELATION)return d(l,null,d("mrd-relation-field",{name:n.name,label:n.label,required:n.required,disabled:null!==(r=n.disabled)&&void 0!==r&&r,locale:u,relatedClass:n.relatedClass,mostSignificantClass:null!==(e=n.mostSignificantClass)&&void 0!==e?e:"",displayType:null!==(i=n.displayType)&&void 0!==i?i:s.SEARCH,editBehavior:null!==(t=n.editBehavior)&&void 0!==t?t:null,commonRelation:n.commonRelation,multiple:null!==(a=n.multiple)&&void 0!==a&&a,dropdownValues:null!==(m=n.dropdownValues)&&void 0!==m?m:[],value:c,onMrdChange:this.handleChange,onMrdBlur:this.handleBlur,onMrdSearch:this.handleSearch,onMrdFetchAll:this.handleFetchAll}));if(n.type!==o.FIELD)return d(l,null);const f=this.getDisplayValue();return d(l,null,d("div",{class:"mrd-field__inner"},this.isMultiScalar()?this.renderMultiScalarField():this.renderLeafField(f),this.renderHistoryEditor()))}get el(){return this}static get watchers(){return{value:[{valueChanged:0}]}}static get style(){return'.sc-mrd-field-h{display:block}.mrd-field__inner.sc-mrd-field{display:block;width:100%}.mrd-field__history-editor.sc-mrd-field{margin-top:var(--mrd-space-2);display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-field__history-editor-label.sc-mrd-field{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-500)}.mrd-field__history-editor-row.sc-mrd-field{display:flex;align-items:center;gap:var(--mrd-space-2)}.mrd-field__history-editor-sep.sc-mrd-field{flex-shrink:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500)}.mrd-field__history-editor-value.sc-mrd-field{flex:1 1 0;min-width:0;height:var(--mrd-input-height);padding:0 var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-800);background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);outline:none;transition:border-color var(--mrd-transition-fast), box-shadow var(--mrd-transition-fast)}.mrd-field__history-editor-value.sc-mrd-field:focus{border-color:var(--mrd-color-primary);box-shadow:var(--mrd-shadow-focus)}.mrd-field__history-editor-until.sc-mrd-field{flex:0 0 10rem;height:var(--mrd-input-height);padding:0 var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-800);background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);outline:none;transition:border-color var(--mrd-transition-fast), box-shadow var(--mrd-transition-fast)}.mrd-field__history-editor-until.sc-mrd-field:focus{border-color:var(--mrd-color-primary);box-shadow:var(--mrd-shadow-focus)}.mrd-field__history-editor-remove.sc-mrd-field{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:2rem;padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-field__history-editor-remove.sc-mrd-field:hover{color:var(--mrd-color-danger);background-color:var(--mrd-color-danger-light)}.mrd-field__history-editor-remove.sc-mrd-field svg.sc-mrd-field{width:1rem;height:1rem}.mrd-field__history-editor-add.sc-mrd-field{align-self:flex-start;padding:var(--mrd-space-1) var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-primary);background:transparent;border:var(--mrd-border-width) solid var(--mrd-color-primary);border-radius:var(--mrd-border-radius-md);cursor:pointer;transition:background-color var(--mrd-transition-fast), color var(--mrd-transition-fast)}.mrd-field__history-editor-add.sc-mrd-field:hover{background-color:var(--mrd-color-primary-light)}.mrd-field__multi.sc-mrd-field{display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-field__multi__label.sc-mrd-field{display:block;font-family:var(--mrd-font-family);font-size:var(--mrd-label-font-size);font-weight:var(--mrd-label-font-weight);color:var(--mrd-label-color)}.mrd-field__multi__label--required.sc-mrd-field::after{content:" *";color:var(--mrd-color-danger)}.mrd-field__multi__error.sc-mrd-field{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}.mrd-field__multi-row.sc-mrd-field{display:flex;align-items:flex-start;gap:var(--mrd-space-2)}.mrd-field__multi-row-input.sc-mrd-field{flex:1 1 0;min-width:0}.mrd-field__multi-remove.sc-mrd-field{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:var(--mrd-input-height);padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-field__multi-remove.sc-mrd-field:hover{color:var(--mrd-color-danger);background-color:var(--mrd-color-danger-light)}.mrd-field__multi-remove.sc-mrd-field svg.sc-mrd-field{width:1rem;height:1rem}.mrd-field__multi-add.sc-mrd-field{align-self:flex-start;padding:var(--mrd-space-1) var(--mrd-space-3);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-primary);background:transparent;border:var(--mrd-border-width) solid var(--mrd-color-primary);border-radius:var(--mrd-border-radius-md);cursor:pointer;transition:background-color var(--mrd-transition-fast), color var(--mrd-transition-fast)}.mrd-field__multi-add.sc-mrd-field:hover{background-color:var(--mrd-color-primary-light)}'}},[2,"mrd-field",{item:[16],locale:[1],value:[16],historyEntries:[32],currentValue:[32],multiValues:[32],multiError:[32]},void 0,{value:[{valueChanged:0}]}]);function S(){"undefined"!=typeof customElements&&["mrd-field","mrd-boolean-field","mrd-currency-field","mrd-date-field","mrd-datetime-field","mrd-email-field","mrd-file-field","mrd-hyperlink-field","mrd-image-field","mrd-list-field","mrd-longtext-field","mrd-number-field","mrd-relation-field","mrd-secret-field","mrd-text-field","mrd-textarea-field","mrd-time-field"].forEach((r=>{switch(r){case"mrd-field":customElements.get(t(r))||customElements.define(t(r),M);break;case"mrd-boolean-field":customElements.get(t(r))||f();break;case"mrd-currency-field":customElements.get(t(r))||v();break;case"mrd-date-field":customElements.get(t(r))||h();break;case"mrd-datetime-field":customElements.get(t(r))||p();break;case"mrd-email-field":customElements.get(t(r))||b();break;case"mrd-file-field":customElements.get(t(r))||y();break;case"mrd-hyperlink-field":customElements.get(t(r))||_();break;case"mrd-image-field":customElements.get(t(r))||g();break;case"mrd-list-field":customElements.get(t(r))||k();break;case"mrd-longtext-field":customElements.get(t(r))||x();break;case"mrd-number-field":customElements.get(t(r))||w();break;case"mrd-relation-field":customElements.get(t(r))||j();break;case"mrd-secret-field":customElements.get(t(r))||E();break;case"mrd-text-field":customElements.get(t(r))||z();break;case"mrd-textarea-field":customElements.get(t(r))||O();break;case"mrd-time-field":customElements.get(t(r))||C()}}))}export{M,S as d}
@@ -1 +1 @@
1
- import{h as t,proxyCustomElement as r,HTMLElement as e,createEvent as o,Host as i,transformTag as a}from"@stencil/core/internal/client";import{a as s,b as n,r as l,A as d,i as c,e as m,h as u,f as v,g as h}from"./client-layout.js";import{t as y}from"./i18n.js";import{C as f}from"./cell-renderer.js";import{a as p}from"./format.js";import{d as b}from"./mrd-boolean-field2.js";import{d as _}from"./mrd-document-container2.js";import{d as g}from"./mrd-document-list2.js";import{d as w}from"./mrd-document-view2.js";import{d as x}from"./mrd-email-view2.js";import{d as k}from"./mrd-invoice-view2.js";import{d as j}from"./mrd-list-field2.js";import{d as z}from"./mrd-memo-container2.js";import{d as M}from"./mrd-memo-list2.js";import{d as C}from"./mrd-memo-view2.js";import{d as O}from"./mrd-table2.js";import{d as L}from"./mrd-text-field2.js";import{d as A}from"./mrd-textarea-field2.js";function V(t){var r,e,o,i,a;return null!==(a=null!==(o=null!==(r=t.showEmpty)&&void 0!==r?r:null===(e=t.field)||void 0===e?void 0:e.showEmpty)&&void 0!==o?o:null===(i=t.relation)||void 0===i?void 0:i.showEmpty)&&void 0!==a&&a}function E(t){const r=[];for(const e of t)r.push(e),e.items&&r.push(...E(e.items));return r}function I(r,e,o,i){return t("button",{class:"mrd-layout-section__download-link",onClick:()=>e&&r.on.download({href:e,fileName:o})},t("svg",{class:"mrd-layout-section__file-icon",viewBox:"0 0 24 24","aria-hidden":"true"},t("path",{fill:"currentColor",d:"M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm-1 7V3.5L18.5 9H13zm-3 8l-3-3 1.41-1.41L10 14.17l4.59-4.58L16 11l-6 6z"})),i)}function P(r,e,o){var i,a,s,l,d,c,m,u,v,h,p;const b=e.dataType;switch(b){case n.HYPERLINK:{const r=null!==(i=null==o?void 0:o.href)&&void 0!==i?i:o+"",e=null!==(l=null!==(s=null!==(a=null==o?void 0:o.name)&&void 0!==a?a:null==o?void 0:o.text)&&void 0!==s?s:null==o?void 0:o.label)&&void 0!==l?l:r;return t("a",{class:"mrd-layout-section__link",href:r,target:"_blank",rel:"noopener noreferrer"},e)}case n.TEXTBLOCK:return t("div",{class:"mrd-layout-section__prose",innerHTML:o+""});case n.LONGTEXT:return t("pre",{class:"mrd-layout-section__pre"},o+"");case n.JSON:return t("pre",{class:"mrd-layout-section__pre",innerHTML:f.formatJson(o)});case n.FILE:{const t=null!==(d=null==o?void 0:o.fileName)&&void 0!==d?d:o+"",e=null!==(c=null==o?void 0:o.href)&&void 0!==c?c:"";return I(r,e,t,t||y("download",r.locale))}case n.IMAGE:{const i=null!==(m=null==o?void 0:o.href)&&void 0!==m?m:"",a=null!==(u=null==o?void 0:o.fileName)&&void 0!==u?u:"",s=r.imagePreviews[e.name];return s?t("button",{class:"mrd-layout-section__image-thumb-btn",onClick:()=>r.on.openImage(s),title:a||void 0},t("img",{class:"mrd-layout-section__image-thumb",src:s,alt:a})):I(r,i,a,a||i)}case n.BOOLEAN:return t("span",{class:"mrd-layout-section__boolean mrd-layout-section__boolean--"+(o?"true":"false")},y(o?"yes":"no",r.locale));case n.LIST:{const r=(null!==(v=e.listItems)&&void 0!==v?v:[]).find((t=>t.key===o+"")),i=null!==(h=null==r?void 0:r.label)&&void 0!==h?h:o+"",a=null==r?void 0:r.color,s=null==r?void 0:r.backgroundColor;return a&&s?t("span",{class:"mrd-layout-section__badge",style:{color:a,backgroundColor:s}},i):a?t("span",{class:"mrd-layout-section__badge-dot-row"},t("span",{class:"mrd-layout-section__badge-dot",style:{backgroundColor:a}}),i):i}case n.SECRET:return o?t("span",{class:"mrd-layout-section__secret-masked"},"••••••••"):null;default:return f.renderValue(b,o,null!==(p=e.listItems)&&void 0!==p?p:[],r.locale)||null}}const $=r(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.mrdNavigate=o(this,"mrdNavigate",7),this.mrdSearch=o(this,"mrdSearch",7),this.mrdDownload=o(this,"mrdDownload",7),this.mrdLoadViewPage=o(this,"mrdLoadViewPage",7),this.mrdLoadImage=o(this,"mrdLoadImage",7),this.mrdAttachments=o(this,"mrdAttachments",7),this.mrdViewAction=o(this,"mrdViewAction",7),this.mrdLoadViewAggregations=o(this,"mrdLoadViewAggregations",7),this.mrdLoadViewDistinct=o(this,"mrdLoadViewDistinct",7),this.mrdUpdateObject=o(this,"mrdUpdateObject",7),this.mrdDeleteObject=o(this,"mrdDeleteObject",7),this.mrdViewUpload=o(this,"mrdViewUpload",7),this.mrdCreateObject=o(this,"mrdCreateObject",7),this.items=[],this.data={},this.views={},this.links={},this.locale=navigator.language,this.archetypes=[],this.readOnly=!1,this.me=null,this.searchQueryMap={},this.searchResultsMap={},this.imagePreviewUrl=null,this.imagePreviews={},this.openHistoryField=null,this.historyClickOutside=null,this.searchTimers={},this.handleViewLoadPage=(t,r)=>{t.stopPropagation(),this.mrdLoadViewPage.emit({name:r,page:t.detail.page,sort:t.detail.sort,path:t.detail.path,qs:t.detail.qs})},this.handleSearchInput=(t,r)=>{this.searchQueryMap=Object.assign(Object.assign({},this.searchQueryMap),{[t]:r}),this.searchTimers[t]&&clearTimeout(this.searchTimers[t]),r.length<2?this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[t]:[]}):this.searchTimers[t]=setTimeout((()=>{this.mrdSearch.emit({query:r,dataClass:t})}),300)}}componentDidLoad(){setTimeout((()=>{this.initEmbeddedTables(),this.emitLoadImages()}),0),this.historyClickOutside=t=>{this.el.contains(t.target)||(this.openHistoryField=null)},document.addEventListener("mousedown",this.historyClickOutside)}disconnectedCallback(){this.historyClickOutside&&(document.removeEventListener("mousedown",this.historyClickOutside),this.historyClickOutside=null)}dataChanged(t){t&&Object.keys(t).length>0&&setTimeout((()=>this.initEmbeddedTables()),0)}async initEmbeddedTables(){const t=this.el.querySelectorAll("mrd-table[data-view]");for(const r of Array.from(t))"function"==typeof r.init&&await r.init();const r=this.el.querySelectorAll("mrd-memo-list[data-view]");for(const t of Array.from(r))"function"==typeof t.init&&await t.init()}emitLoadImages(){for(const t of E(this.items))if(t.type===s.FIELD&&t.dataType===n.IMAGE){const r=t.name,e=this.data[r],o=null==e?void 0:e.href;o&&this.mrdLoadImage.emit({fieldName:r,href:o})}}async setSearchResults(t,r){const e=null!=r?r:this.resolveSearchKey();e&&(this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[e]:t}))}async setViewPage(t,r,e,o,i,a){if(a){const r=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);return void((null==r?void 0:r.setDocuments)&&await r.setDocuments(a,e))}const s=this.el.querySelector(`mrd-table[data-view="${t}"]`);if(s)return void 0!==o&&(s.totalElements=o),void await s.setPage(r,e,i);const n=this.el.querySelector(`mrd-memo-list[data-view="${t}"]`);n&&await n.setPage(r,e,i)}async setViewAggregations(t,r){const e=this.el.querySelector(`mrd-table[data-view="${t}"]`);e&&await e.setAggregations(r)}async setViewDistinct(t,r,e){const o=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==o?void 0:o.setDistinct)&&await o.setDistinct(r,e)}async setViewFileReference(t,r){const e=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==e?void 0:e.setFileReference)&&await e.setFileReference(r)}async setViewCreatedObject(t,r){const e=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);if(null==e?void 0:e.setCreatedHref)return void await e.setCreatedHref(r);const o=this.el.querySelector(`mrd-memo-container[data-view="${t}"]`);(null==o?void 0:o.refresh)&&await o.refresh()}async setImagePreview(t,r){this.imagePreviews=Object.assign(Object.assign({},this.imagePreviews),{[t]:r})}async openImagePreview(t){this.imagePreviewUrl=t}resolveSearchKey(){var t;const r=E(this.items).filter((t=>t.type===s.SEARCH));return 1===r.length&&null!==(t=r[0].dataClass)&&void 0!==t?t:null}fieldCtx(){return{locale:this.locale,data:this.data,imagePreviews:this.imagePreviews,openHistoryField:this.openHistoryField,on:{download:t=>this.mrdDownload.emit(t),openImage:t=>{this.imagePreviewUrl=t},toggleHistory:t=>{this.openHistoryField=t}}}}renderField(r){return function(r,e){var o,i;if(!e.name)return null;const a=r.data[e.name],s=(null!==(o=e.historyEnabled)&&void 0!==o?o:null===(i=e.field)||void 0===i?void 0:i.historyEnabled)&&null!==a&&"object"==typeof a&&"current"in a?a.current:a,l=function(r,e,o){if(null==o||""===o)return null;if(e.multiple&&Array.isArray(o)){if(e.dataType===n.FILE||e.dataType===n.IMAGE)return t("div",{class:"mrd-layout-section__file-list"},o.map(((o,i)=>t("div",{class:"mrd-layout-section__file-list-item",key:i+""},P(r,e,o)))));const i=o.map((t=>P(r,e,t)));return i.every((t=>"string"==typeof t||null==t))?i.filter(Boolean).join(", ")||null:t("span",null,i.map(((r,e)=>t("span",{key:e+""},r,e<i.length-1?", ":""))))}return P(r,e,o)}(r,e,s);if(e.header)return t("h1",{class:"mrd-layout-section__field-header",key:e.name},"string"==typeof l?l:null!=s?s+"":e.label);const d=null==l;return d&&!V(e)?null:t("div",{class:`mrd-layout-section__field${e.dataType===n.TEXTBLOCK||e.dataType===n.LONGTEXT||e.dataType===n.JSON?" mrd-layout-section__field--block":""}${d?" mrd-layout-section__field--empty":""}`,key:e.name},t("span",{class:"mrd-layout-section__field-label"},e.label),t("span",{class:"mrd-layout-section__field-value"},d?y("value_empty",r.locale):l,function(r,e,o){var i,a,s;if(!(null!==(i=e.historyEnabled)&&void 0!==i?i:null===(a=e.field)||void 0===a?void 0:a.historyEnabled)||!e.name)return null;const n=null!==(s=null==o?void 0:o.history)&&void 0!==s?s:[];if(!n.length)return null;const l=[...n].sort(((t,r)=>r.until.localeCompare(t.until))),d=r.openHistoryField===e.name;return t("span",{class:"mrd-layout-section__history-wrap"},t("button",{type:"button",class:"mrd-layout-section__history-btn",title:y("history_badge_tooltip",r.locale),"aria-label":y("history_badge_tooltip",r.locale),onClick:t=>{t.stopPropagation(),r.on.toggleHistory(d?null:e.name)}},t("svg",{class:"mrd-layout-section__history-icon",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .207.085.394.22.53l2.5 2.5a.75.75 0 101.06-1.06L10.75 9.69V5z","clip-rule":"evenodd"}))),d&&t("div",{class:"mrd-layout-section__history-popover",role:"listbox"},l.map(((e,o)=>t("div",{key:o+"",class:"mrd-layout-section__history-entry"},e.value," (",y("history_until",r.locale)," ",p(e.until,r.locale),")")))))}(r,e,a)))}(this.fieldCtx(),r)}renderRelation(r){var e,o,i;if(!r.name)return null;const a=(null!==(o=null===(e=this.data)||void 0===e?void 0:e._links)&&void 0!==o?o:{})[r.name],s=(r,e)=>t("button",{key:r,class:"mrd-layout-section__relation-link",onClick:()=>this.mrdNavigate.emit({href:r,label:e})},e);let n;(null===(i=null==a?void 0:a.values)||void 0===i?void 0:i.length)?n=a.values.map((t=>s(t.href,t.name))):(null==a?void 0:a.name)&&(n=s(a.href,a.name));const l=!n;return l&&!V(r)?null:t("div",{class:"mrd-layout-section__field"+(l?" mrd-layout-section__field--empty":""),key:r.name},t("span",{class:"mrd-layout-section__field-label"},r.label),t("span",{class:"mrd-layout-section__field-value"},l?y("value_empty",this.locale):n))}renderSearch(r){var e,o,i;if(!r.dataClass)return null;const a=r.dataClass,s=null!==(e=this.searchQueryMap[a])&&void 0!==e?e:"",n=null!==(o=this.searchResultsMap[a])&&void 0!==o?o:[];return t("div",{class:"mrd-layout-section__search",key:"search-"+a},t("div",{class:"mrd-layout-section__search-wrap"},t("svg",{class:"mrd-layout-section__search-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a.75.75 0 11-1.06 1.06l-3.329-3.328A7 7 0 012 9z","clip-rule":"evenodd"})),t("input",{class:"mrd-layout-section__search-input",type:"text",value:s,placeholder:null!==(i=r.label)&&void 0!==i?i:"",onInput:t=>this.handleSearchInput(a,t.target.value)})),n.length>0&&t("ul",{class:"mrd-layout-section__search-results"},n.map((r=>t("li",{key:r.id,class:"mrd-layout-section__search-result"},t("button",{class:"mrd-layout-section__search-result-btn",onClick:()=>this.mrdNavigate.emit({href:r.id,label:r.label})},t("span",{class:"mrd-layout-section__search-result-label"},r.label),r.description&&t("span",{class:"mrd-layout-section__search-result-desc"},r.description)))))))}renderRelatedView(r){var e,o,i,a,n,m,u,v,h,y;const f=function(t){var r,e,o,i;return t.type===s.RELATED_VIEW?null!==(e=null!==(r=t.relatedClass)&&void 0!==r?r:t.name)&&void 0!==e?e:"":null!==(i=null!==(o=t.dataClass)&&void 0!==o?o:t.name)&&void 0!==i?i:""}(r);if(!f)return null;if(!r.view)return null;const p=null!==(e=r.showTitle)&&void 0!==e&&e,b=null!==(n=null===(a=null===(i=null===(o=this.data)||void 0===o?void 0:o._links)||void 0===i?void 0:i.self)||void 0===a?void 0:a.href)&&void 0!==n?n:"",_=null!==(m=b.split("/").filter(Boolean).pop())&&void 0!==m?m:"",g=l(null!==(u=r.archetypes)&&void 0!==u?u:null===(v=r.view)||void 0===v?void 0:v.archetypes,d),w=g?void 0:l(null!==(h=r.archetypes)&&void 0!==h?h:null===(y=r.view)||void 0===y?void 0:y.archetypes,c),x=function(t,r,e){if(t.type!==s.RELATED_VIEW||!t.fromClass||!e)return"";const o=r.split("/").filter(Boolean);if(o.length<2)return"";const[i,a]=o;return`/${i}/${a}/${t.fromClass}/${e}`}(r,b,_);return t("div",{class:"mrd-layout-section__related-view",key:"view-"+f},p&&r.label&&t("h3",{class:"mrd-layout-section__related-view-title"},r.label),g&&this.renderDocumentContainer(r,f,_,g,x),w&&this.renderMemoContainer(r,f,_,w,x),!g&&!w&&this.renderTable(r,f,_))}renderDocumentContainer(r,e,o,i,a){return t("mrd-document-container",{item:r,archetype:i,parentId:o,containerHref:a,viewKey:e,locale:this.locale,readOnly:this.readOnly,onMrdLoadDistinct:t=>{t.stopPropagation(),this.mrdLoadViewDistinct.emit(Object.assign({name:e},t.detail))},onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadViewPage.emit(Object.assign({name:e},t.detail))},onMrdLoadAggregations:t=>{var o;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdAction:t=>{var o;t.stopPropagation(),this.mrdViewAction.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdUpload:t=>{t.stopPropagation(),this.mrdViewUpload.emit(Object.assign({name:e},t.detail))},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(Object.assign({name:e},t.detail))}})}renderMemoContainer(r,e,o,i,a){var s,n,l,d;const c=null!==(d=null===(l=null===(n=null===(s=r.view)||void 0===s?void 0:s.values)||void 0===n?void 0:n.find((t=>{var r;return t.name===(null===(r=i.slots)||void 0===r?void 0:r.labels)})))||void 0===l?void 0:l.listItems)&&void 0!==d?d:null;return t("mrd-memo-container",{"data-view":e,item:r,archetype:i,parentId:o,containerHref:a,viewKey:e,locale:this.locale,readOnly:this.readOnly,me:this.me,labelsListItems:c,onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadViewPage.emit(Object.assign({name:e},t.detail))},onMrdLoadAggregations:t=>{var o;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdAction:t=>{var o;t.stopPropagation(),this.mrdViewAction.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(Object.assign({name:e},t.detail))},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdDeleteObject:t=>{t.stopPropagation(),this.mrdDeleteObject.emit(t.detail)}})}renderTable(r,e,o){return t("mrd-table",{"data-view":e,item:r,parentId:o,locale:this.locale,readOnly:this.readOnly,onMrdLoadPage:t=>this.handleViewLoadPage(t,e),onMrdLoadAggregations:t=>{var o;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdRowClick:t=>{var e,o,i,a;t.stopPropagation();const{row:s,listContext:n}=t.detail;this.mrdNavigate.emit({href:null===(o=null===(e=null==s?void 0:s._links)||void 0===e?void 0:e.self)||void 0===o?void 0:o.href,label:null!==(i=null==s?void 0:s.name)&&void 0!==i?i:"",navigateBehaviour:null!==(a=r.navigateBehaviour)&&void 0!==a?a:m.PAGE,listContext:n})},onMrdAction:t=>{var o;t.stopPropagation(),this.mrdViewAction.emit({name:e,action:t.detail.action,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e,path:t.detail.path,qs:t.detail.qs,parentPath:t.detail.parentPath,basicType:t.detail.basicType})}})}renderItem(r){var e,o;switch(r.type){case s.FIELD:return this.renderField(r);case s.RELATION:return this.renderRelation(r);case s.HEADER:return t("h2",{class:"mrd-layout-section__header",key:"header-"+r.label},r.label);case s.TEXT:return t("div",{class:"mrd-layout-section__text",key:"text-"+r.label,innerHTML:null!==(e=r.label)&&void 0!==e?e:""});case s.NAVIGATE:return t("button",{class:"mrd-layout-section__navigate",key:"nav-"+r.label,onClick:()=>{var t,e,o;return this.mrdNavigate.emit({label:null!==(t=r.label)&&void 0!==t?t:"",navigate:null!==(e=r.navigate)&&void 0!==e?e:{dataClass:null!==(o=r.dataClass)&&void 0!==o?o:"",icon:r.icon,navigationType:r.navigationType}})}},r.label);case s.SEARCH:return this.renderSearch(r);case s.SECTION:case s.GROUP:return t("div",{class:"mrd-layout-section__group",key:"group-"+r.label},r.label&&t("h3",{class:"mrd-layout-section__group-title"},r.label),(null!==(o=r.items)&&void 0!==o?o:[]).map((t=>this.renderItem(t))));case s.RELATED_VIEW:case s.VIEW:return this.renderRelatedView(r);default:return null}}renderImageModal(){return this.imagePreviewUrl?t("div",{class:"mrd-layout-section__modal-backdrop",onClick:()=>{this.imagePreviewUrl=null}},t("div",{class:"mrd-layout-section__modal",onClick:t=>t.stopPropagation()},t("button",{class:"mrd-layout-section__modal-close",onClick:()=>{this.imagePreviewUrl=null}},"✕"),t("img",{class:"mrd-layout-section__modal-image",src:this.imagePreviewUrl,alt:""}))):null}relatedItems(t){return this.items.filter((r=>r!==t&&(r.type===s.VIEW||r.type===s.RELATED_VIEW||r.type===s.SEARCH)))}renderDocumentObject(r){return[t("mrd-document-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}renderInvoiceObject(r){var e,o,i;const a=null!==(e=this.items.find((t=>{var r,e;return(t.type===s.VIEW||t.type===s.RELATED_VIEW)&&!!l(null!==(r=t.archetypes)&&void 0!==r?r:null===(e=t.view)||void 0===e?void 0:e.archetypes,u)})))&&void 0!==e?e:null,n=null!==(i=null===(o=this.items.find((t=>{var e;return t.name===(null===(e=r.slots)||void 0===e?void 0:e.status)})))||void 0===o?void 0:o.listItems)&&void 0!==i?i:null;return[t("mrd-invoice-view",{archetype:r,data:this.data,locale:this.locale,statusListItems:n,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}},a&&t("div",{slot:"lines"},this.renderRelatedView(a))),...this.relatedItems(a).map((t=>this.renderItem(t)))]}renderEmailObject(r){return[t("mrd-email-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}renderMemoObject(r){var e,o;const i=null!==(o=null===(e=this.items.find((t=>{var e;return t.name===(null===(e=r.slots)||void 0===e?void 0:e.labels)})))||void 0===e?void 0:e.listItems)&&void 0!==o?o:null;return[t("mrd-memo-view",{archetype:r,data:this.data,locale:this.locale,labelsListItems:i,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}render(){const r=l(this.archetypes,d),e=r?void 0:l(this.archetypes,v),o=r||e?void 0:l(this.archetypes,h),a=r||e||o?void 0:l(this.archetypes,c),s=r||e||o||a;return t(i,{key:"730654d745992b9607f15fcaf2bb54a725429e4d"},t("div",{key:"72a2e7bb767992aa6f206a10f8b2a3a572e86115",class:"mrd-layout-section"},r&&this.renderDocumentObject(r),e&&this.renderInvoiceObject(e),o&&this.renderEmailObject(o),a&&this.renderMemoObject(a),!s&&this.items.map((t=>this.renderItem(t)))),this.renderImageModal())}get el(){return this}static get watchers(){return{data:[{dataChanged:0}]}}static get style(){return".sc-mrd-layout-section-h{display:block;width:100%}.mrd-layout-section.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-800)}.mrd-layout-section__field.sc-mrd-layout-section{display:grid;grid-template-columns:200px 1fr;align-items:baseline;gap:0 var(--mrd-space-2);padding:var(--mrd-space-1) 0}.mrd-layout-section__field--block.sc-mrd-layout-section{grid-template-columns:1fr}.mrd-layout-section__field-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-500);padding-top:1px}.mrd-layout-section__field-value.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800);word-break:break-word;display:inline-flex;align-items:center;gap:var(--mrd-space-1)}.mrd-layout-section__field--empty.sc-mrd-layout-section .mrd-layout-section__field-value.sc-mrd-layout-section{color:var(--mrd-color-neutral-400);font-weight:var(--mrd-font-weight-normal)}.mrd-layout-section__history-wrap.sc-mrd-layout-section{position:relative;display:inline-flex;align-items:center}.mrd-layout-section__history-btn.sc-mrd-layout-section{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;flex-shrink:0;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-layout-section__history-btn.sc-mrd-layout-section:hover{color:var(--mrd-color-neutral-700);background-color:var(--mrd-color-neutral-100)}.mrd-layout-section__history-btn.sc-mrd-layout-section:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__history-icon.sc-mrd-layout-section{width:0.875rem;height:0.875rem}.mrd-layout-section__history-popover.sc-mrd-layout-section{position:absolute;top:calc(100% + 0.25rem);left:0;min-width:24rem;max-width:24rem;background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);box-shadow:var(--mrd-shadow-md);padding:var(--mrd-space-1) 0;z-index:var(--mrd-z-dropdown)}.mrd-layout-section__history-entry.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-700);padding:var(--mrd-space-2) var(--mrd-space-3);line-height:var(--mrd-line-height-normal)}.mrd-layout-section__history-entry.sc-mrd-layout-section:not(:last-child){border-bottom:var(--mrd-border-width) solid var(--mrd-color-neutral-100)}.mrd-layout-section__field-header.sc-mrd-layout-section{font-size:var(--mrd-font-size-2xl);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0 0 var(--mrd-space-4) 0;padding:0}.mrd-layout-section__header.sc-mrd-layout-section{font-size:var(--mrd-font-size-xl);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:var(--mrd-space-4) 0 var(--mrd-space-2) 0;padding:0}.mrd-layout-section__text.sc-mrd-layout-section{font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-700);line-height:var(--mrd-line-height-relaxed);margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2);padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:1px solid var(--mrd-color-neutral-300);border-radius:var(--mrd-border-radius);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light);border-color:var(--mrd-color-primary)}.mrd-layout-section__link.sc-mrd-layout-section{color:var(--mrd-color-primary);text-decoration:none}.mrd-layout-section__link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__relation-link.sc-mrd-layout-section{background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__relation-link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__download-link.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-1);background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__download-link.sc-mrd-layout-section:hover{text-decoration:underline;color:var(--mrd-color-primary-dark)}.mrd-layout-section__file-icon.sc-mrd-layout-section{flex-shrink:0;width:1rem;height:1rem}.mrd-layout-section__file-list.sc-mrd-layout-section{display:flex;flex-direction:column;align-items:flex-start;gap:var(--mrd-space-1)}.mrd-layout-section__file-list-item.sc-mrd-layout-section{min-width:0;max-width:100%}.mrd-layout-section__boolean--true.sc-mrd-layout-section{color:var(--mrd-color-success);font-weight:var(--mrd-font-weight-semibold)}.mrd-layout-section__boolean--false.sc-mrd-layout-section{color:var(--mrd-color-neutral-400)}.mrd-layout-section__badge.sc-mrd-layout-section{display:inline-block;font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);padding:2px var(--mrd-space-3);border-radius:10px}.mrd-layout-section__badge-dot-row.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2)}.mrd-layout-section__badge-dot.sc-mrd-layout-section{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.mrd-layout-section__secret-masked.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-label-color);letter-spacing:0.15em;user-select:none;pointer-events:none}.mrd-layout-section__pre.sc-mrd-layout-section{font-family:var(--mrd-font-family-mono);font-size:var(--mrd-font-size-xs);background-color:var(--mrd-color-neutral-50);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);margin:0;max-height:calc(15 * var(--mrd-font-size-xs));overflow-x:auto;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.mrd-layout-section__group.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__group-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);margin:0 0 var(--mrd-space-2) 0;padding-bottom:0;letter-spacing:0.01em}.mrd-layout-section__related-view.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__related-view-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-lg);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:0 0 var(--mrd-space-3) 0}.mrd-layout-section__search.sc-mrd-layout-section{position:relative;margin:var(--mrd-space-2) 0}.mrd-layout-section__search-wrap.sc-mrd-layout-section{position:relative}.mrd-layout-section__search-icon.sc-mrd-layout-section{position:absolute;left:var(--mrd-input-padding-x);top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--mrd-color-neutral-400);pointer-events:none}.mrd-layout-section__search-input.sc-mrd-layout-section{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x) var(--mrd-input-padding-y) calc(var(--mrd-input-padding-x) + 1rem + var(--mrd-space-2));font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-input-color);background-color:var(--mrd-input-bg);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);outline:none;appearance:none;box-sizing:border-box}.mrd-layout-section__search-input.sc-mrd-layout-section:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__search-input.sc-mrd-layout-section::placeholder{color:var(--mrd-input-placeholder-color)}.mrd-layout-section__search-results.sc-mrd-layout-section{position:absolute;top:100%;left:0;right:0;background-color:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-300);border-top:none;border-radius:0 0 var(--mrd-border-radius) var(--mrd-border-radius);box-shadow:var(--mrd-shadow-sm);z-index:100;max-height:300px;overflow-y:auto;list-style:none;margin:0;padding:var(--mrd-space-1) 0}.mrd-layout-section__search-result.sc-mrd-layout-section{margin:0;padding:0}.mrd-layout-section__search-result-btn.sc-mrd-layout-section{display:flex;flex-direction:column;width:100%;padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:none;text-align:left;cursor:pointer;font-family:var(--mrd-font-family)}.mrd-layout-section__search-result-btn.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light)}.mrd-layout-section__search-result-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800)}.mrd-layout-section__search-result-desc.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500);margin-top:var(--mrd-space-1)}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section{background:none;border:none;padding:0;cursor:pointer;display:inline-block;border-radius:var(--mrd-border-radius);overflow:hidden;line-height:0}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section:hover .mrd-layout-section__image-thumb.sc-mrd-layout-section{opacity:0.85}.mrd-layout-section__image-thumb.sc-mrd-layout-section{display:block;max-width:160px;max-height:100px;border-radius:var(--mrd-border-radius);object-fit:cover;transition:opacity 0.15s}.mrd-layout-section__modal-backdrop.sc-mrd-layout-section{position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);z-index:300;display:flex;align-items:center;justify-content:center}.mrd-layout-section__modal.sc-mrd-layout-section{position:relative;background:var(--mrd-color-white);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);max-width:min(90vw, 900px);max-height:90vh;display:flex;align-items:center;justify-content:center;box-shadow:var(--mrd-shadow-lg)}.mrd-layout-section__modal-close.sc-mrd-layout-section{position:absolute;top:var(--mrd-space-2);right:var(--mrd-space-2);background:rgba(0, 0, 0, 0.5);border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--mrd-color-white);cursor:pointer;font-size:var(--mrd-font-size-sm);line-height:1;z-index:1}.mrd-layout-section__modal-close.sc-mrd-layout-section:hover{background:rgba(0, 0, 0, 0.8)}.mrd-layout-section__modal-image.sc-mrd-layout-section{display:block;max-width:100%;max-height:calc(90vh - 2rem);border-radius:var(--mrd-border-radius);object-fit:contain}"}},[2,"mrd-layout-section",{items:[16],data:[16],views:[16],links:[16],locale:[1],archetypes:[16],readOnly:[4,"read-only"],me:[16],searchQueryMap:[32],searchResultsMap:[32],imagePreviewUrl:[32],imagePreviews:[32],openHistoryField:[32],setSearchResults:[64],setViewPage:[64],setViewAggregations:[64],setViewDistinct:[64],setViewFileReference:[64],setViewCreatedObject:[64],setImagePreview:[64],openImagePreview:[64]},void 0,{data:[{dataChanged:0}]}]),D=$,T=function(){"undefined"!=typeof customElements&&["mrd-layout-section","mrd-boolean-field","mrd-document-container","mrd-document-list","mrd-document-view","mrd-email-view","mrd-invoice-view","mrd-list-field","mrd-memo-container","mrd-memo-list","mrd-memo-view","mrd-table","mrd-text-field","mrd-textarea-field"].forEach((t=>{switch(t){case"mrd-layout-section":customElements.get(a(t))||customElements.define(a(t),$);break;case"mrd-boolean-field":customElements.get(a(t))||b();break;case"mrd-document-container":customElements.get(a(t))||_();break;case"mrd-document-list":customElements.get(a(t))||g();break;case"mrd-document-view":customElements.get(a(t))||w();break;case"mrd-email-view":customElements.get(a(t))||x();break;case"mrd-invoice-view":customElements.get(a(t))||k();break;case"mrd-list-field":customElements.get(a(t))||j();break;case"mrd-memo-container":customElements.get(a(t))||z();break;case"mrd-memo-list":customElements.get(a(t))||M();break;case"mrd-memo-view":customElements.get(a(t))||C();break;case"mrd-table":customElements.get(a(t))||O();break;case"mrd-text-field":customElements.get(a(t))||L();break;case"mrd-textarea-field":customElements.get(a(t))||A()}}))};export{D as MrdLayoutSection,T as defineCustomElement}
1
+ import{h as t,proxyCustomElement as r,HTMLElement as e,createEvent as o,Host as i,transformTag as a}from"@stencil/core/internal/client";import{a as n,b as s,r as l,A as d,i as c,e as m,h as u,f as v,g as h}from"./client-layout.js";import{t as y}from"./i18n.js";import{C as f}from"./cell-renderer.js";import{a as p}from"./format.js";import{d as b}from"./mrd-boolean-field2.js";import{d as _}from"./mrd-document-container2.js";import{d as g}from"./mrd-document-list2.js";import{d as w}from"./mrd-document-view2.js";import{d as k}from"./mrd-email-view2.js";import{d as x}from"./mrd-invoice-view2.js";import{d as j}from"./mrd-list-field2.js";import{d as z}from"./mrd-memo-container2.js";import{d as M}from"./mrd-memo-list2.js";import{d as O}from"./mrd-memo-view2.js";import{d as C}from"./mrd-table2.js";import{d as L}from"./mrd-text-field2.js";import{d as V}from"./mrd-textarea-field2.js";function E(t){var r,e,o,i,a;return null!==(a=null!==(o=null!==(r=t.showEmpty)&&void 0!==r?r:null===(e=t.field)||void 0===e?void 0:e.showEmpty)&&void 0!==o?o:null===(i=t.relation)||void 0===i?void 0:i.showEmpty)&&void 0!==a&&a}function A(t,r){var e,o;if(!t.name)return!1;const i=(null!==(e=null==r?void 0:r._links)&&void 0!==e?e:{})[t.name];return!(!(null===(o=null==i?void 0:i.values)||void 0===o?void 0:o.length)&&!(null==i?void 0:i.name))}function I(t){const r=[];for(const e of t)r.push(e),e.items&&r.push(...I(e.items));return r}function P(r,e,o,i){return t("button",{class:"mrd-layout-section__download-link",onClick:()=>e&&r.on.download({href:e,fileName:o})},t("svg",{class:"mrd-layout-section__file-icon",viewBox:"0 0 24 24","aria-hidden":"true"},t("path",{fill:"currentColor",d:"M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm-1 7V3.5L18.5 9H13zm-3 8l-3-3 1.41-1.41L10 14.17l4.59-4.58L16 11l-6 6z"})),i)}function $(r,e,o){var i,a,n,l,d,c,m,u,v,h,p;const b=e.dataType;switch(b){case s.HYPERLINK:{const r=null!==(i=null==o?void 0:o.href)&&void 0!==i?i:o+"",e=null!==(l=null!==(n=null!==(a=null==o?void 0:o.name)&&void 0!==a?a:null==o?void 0:o.text)&&void 0!==n?n:null==o?void 0:o.label)&&void 0!==l?l:r;return t("a",{class:"mrd-layout-section__link",href:r,target:"_blank",rel:"noopener noreferrer"},e)}case s.TEXTBLOCK:return t("div",{class:"mrd-layout-section__prose",innerHTML:o+""});case s.LONGTEXT:return t("pre",{class:"mrd-layout-section__pre"},o+"");case s.JSON:return t("pre",{class:"mrd-layout-section__pre",innerHTML:f.formatJson(o)});case s.FILE:{const t=null!==(d=null==o?void 0:o.fileName)&&void 0!==d?d:o+"",e=null!==(c=null==o?void 0:o.href)&&void 0!==c?c:"";return P(r,e,t,t||y("download",r.locale))}case s.IMAGE:{const i=null!==(m=null==o?void 0:o.href)&&void 0!==m?m:"",a=null!==(u=null==o?void 0:o.fileName)&&void 0!==u?u:"",n=r.imagePreviews[e.name];return n?t("button",{class:"mrd-layout-section__image-thumb-btn",onClick:()=>r.on.openImage(n),title:a||void 0},t("img",{class:"mrd-layout-section__image-thumb",src:n,alt:a})):P(r,i,a,a||i)}case s.BOOLEAN:return t("span",{class:"mrd-layout-section__boolean mrd-layout-section__boolean--"+(o?"true":"false")},y(o?"yes":"no",r.locale));case s.LIST:{const r=(null!==(v=e.listItems)&&void 0!==v?v:[]).find((t=>t.key===o+"")),i=null!==(h=null==r?void 0:r.label)&&void 0!==h?h:o+"",a=null==r?void 0:r.color,n=null==r?void 0:r.backgroundColor;return a&&n?t("span",{class:"mrd-layout-section__badge",style:{color:a,backgroundColor:n}},i):a?t("span",{class:"mrd-layout-section__badge-dot-row"},t("span",{class:"mrd-layout-section__badge-dot",style:{backgroundColor:a}}),i):i}case s.SECRET:return o?t("span",{class:"mrd-layout-section__secret-masked"},"••••••••"):null;default:return f.renderValue(b,o,null!==(p=e.listItems)&&void 0!==p?p:[],r.locale)||null}}function D(r,e){var o,i;if(!e.name)return null;const a=r.data[e.name],n=(null!==(o=e.historyEnabled)&&void 0!==o?o:null===(i=e.field)||void 0===i?void 0:i.historyEnabled)&&null!==a&&"object"==typeof a&&"current"in a?a.current:a,l=function(r,e,o){if(null==o||""===o)return null;if(e.multiple&&Array.isArray(o)){if(e.dataType===s.FILE||e.dataType===s.IMAGE)return t("div",{class:"mrd-layout-section__file-list"},o.map(((o,i)=>t("div",{class:"mrd-layout-section__file-list-item",key:i+""},$(r,e,o)))));const i=o.map((t=>$(r,e,t)));return i.every((t=>"string"==typeof t||null==t))?i.filter(Boolean).join(", ")||null:t("span",null,i.map(((r,e)=>t("span",{key:e+""},r,e<i.length-1?", ":""))))}return $(r,e,o)}(r,e,n);return{raw:a,rawValue:n,renderedValue:l,isEmpty:null==l}}function H(t,r){if(r.header)return!0;const e=D(t,r);return!!e&&(!e.isEmpty||E(r))}const T=r(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.mrdNavigate=o(this,"mrdNavigate",7),this.mrdSearch=o(this,"mrdSearch",7),this.mrdDownload=o(this,"mrdDownload",7),this.mrdLoadViewPage=o(this,"mrdLoadViewPage",7),this.mrdLoadImage=o(this,"mrdLoadImage",7),this.mrdAttachments=o(this,"mrdAttachments",7),this.mrdViewAction=o(this,"mrdViewAction",7),this.mrdLoadViewAggregations=o(this,"mrdLoadViewAggregations",7),this.mrdLoadViewDistinct=o(this,"mrdLoadViewDistinct",7),this.mrdUpdateObject=o(this,"mrdUpdateObject",7),this.mrdDeleteObject=o(this,"mrdDeleteObject",7),this.mrdViewUpload=o(this,"mrdViewUpload",7),this.mrdCreateObject=o(this,"mrdCreateObject",7),this.items=[],this.data={},this.views={},this.links={},this.locale=navigator.language,this.archetypes=[],this.readOnly=!1,this.me=null,this.searchQueryMap={},this.searchResultsMap={},this.imagePreviewUrl=null,this.imagePreviews={},this.openHistoryField=null,this.historyClickOutside=null,this.searchTimers={},this.handleViewLoadPage=(t,r)=>{t.stopPropagation(),this.mrdLoadViewPage.emit({name:r,page:t.detail.page,sort:t.detail.sort,path:t.detail.path,qs:t.detail.qs})},this.handleSearchInput=(t,r)=>{this.searchQueryMap=Object.assign(Object.assign({},this.searchQueryMap),{[t]:r}),this.searchTimers[t]&&clearTimeout(this.searchTimers[t]),r.length<2?this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[t]:[]}):this.searchTimers[t]=setTimeout((()=>{this.mrdSearch.emit({query:r,dataClass:t})}),300)}}componentDidLoad(){setTimeout((()=>{this.initEmbeddedTables(),this.emitLoadImages()}),0),this.historyClickOutside=t=>{this.el.contains(t.target)||(this.openHistoryField=null)},document.addEventListener("mousedown",this.historyClickOutside)}disconnectedCallback(){this.historyClickOutside&&(document.removeEventListener("mousedown",this.historyClickOutside),this.historyClickOutside=null)}dataChanged(t){t&&Object.keys(t).length>0&&setTimeout((()=>this.initEmbeddedTables()),0)}async initEmbeddedTables(){const t=this.el.querySelectorAll("mrd-table[data-view]");for(const r of Array.from(t))"function"==typeof r.init&&await r.init();const r=this.el.querySelectorAll("mrd-memo-list[data-view]");for(const t of Array.from(r))"function"==typeof t.init&&await t.init()}emitLoadImages(){for(const t of I(this.items))if(t.type===n.FIELD&&t.dataType===s.IMAGE){const r=t.name,e=this.data[r],o=null==e?void 0:e.href;o&&this.mrdLoadImage.emit({fieldName:r,href:o})}}async setSearchResults(t,r){const e=null!=r?r:this.resolveSearchKey();e&&(this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[e]:t}))}async setViewPage(t,r,e,o,i,a){if(a){const r=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);return void((null==r?void 0:r.setDocuments)&&await r.setDocuments(a,e))}const n=this.el.querySelector(`mrd-table[data-view="${t}"]`);if(n)return void 0!==o&&(n.totalElements=o),void await n.setPage(r,e,i);const s=this.el.querySelector(`mrd-memo-list[data-view="${t}"]`);s&&await s.setPage(r,e,i)}async setViewAggregations(t,r){const e=this.el.querySelector(`mrd-table[data-view="${t}"]`);e&&await e.setAggregations(r)}async setViewDistinct(t,r,e){const o=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==o?void 0:o.setDistinct)&&await o.setDistinct(r,e)}async setViewFileReference(t,r){const e=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==e?void 0:e.setFileReference)&&await e.setFileReference(r)}async setViewCreatedObject(t,r){const e=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);if(null==e?void 0:e.setCreatedHref)return void await e.setCreatedHref(r);const o=this.el.querySelector(`mrd-memo-container[data-view="${t}"]`);(null==o?void 0:o.refresh)&&await o.refresh()}async setImagePreview(t,r){this.imagePreviews=Object.assign(Object.assign({},this.imagePreviews),{[t]:r})}async openImagePreview(t){this.imagePreviewUrl=t}resolveSearchKey(){var t;const r=I(this.items).filter((t=>t.type===n.SEARCH));return 1===r.length&&null!==(t=r[0].dataClass)&&void 0!==t?t:null}fieldCtx(){return{locale:this.locale,data:this.data,imagePreviews:this.imagePreviews,openHistoryField:this.openHistoryField,on:{download:t=>this.mrdDownload.emit(t),openImage:t=>{this.imagePreviewUrl=t},toggleHistory:t=>{this.openHistoryField=t}}}}renderField(r){return function(r,e){const o=D(r,e);if(!o)return null;const{raw:i,rawValue:a,renderedValue:n,isEmpty:l}=o;return e.header?t("h1",{class:"mrd-layout-section__field-header",key:e.name},"string"==typeof n?n:null!=a?a+"":e.label):l&&!E(e)?null:t("div",{class:`mrd-layout-section__field${e.dataType===s.TEXTBLOCK||e.dataType===s.LONGTEXT||e.dataType===s.JSON?" mrd-layout-section__field--block":""}${l?" mrd-layout-section__field--empty":""}`,key:e.name},t("span",{class:"mrd-layout-section__field-label"},e.label),t("span",{class:"mrd-layout-section__field-value"},l?y("value_empty",r.locale):n,function(r,e,o){var i,a,n;if(!(null!==(i=e.historyEnabled)&&void 0!==i?i:null===(a=e.field)||void 0===a?void 0:a.historyEnabled)||!e.name)return null;const s=null!==(n=null==o?void 0:o.history)&&void 0!==n?n:[];if(!s.length)return null;const l=[...s].sort(((t,r)=>r.until.localeCompare(t.until))),d=r.openHistoryField===e.name;return t("span",{class:"mrd-layout-section__history-wrap"},t("button",{type:"button",class:"mrd-layout-section__history-btn",title:y("history_badge_tooltip",r.locale),"aria-label":y("history_badge_tooltip",r.locale),onClick:t=>{t.stopPropagation(),r.on.toggleHistory(d?null:e.name)}},t("svg",{class:"mrd-layout-section__history-icon",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .207.085.394.22.53l2.5 2.5a.75.75 0 101.06-1.06L10.75 9.69V5z","clip-rule":"evenodd"}))),d&&t("div",{class:"mrd-layout-section__history-popover",role:"listbox"},l.map(((e,o)=>t("div",{key:o+"",class:"mrd-layout-section__history-entry"},e.value," (",y("history_until",r.locale)," ",p(e.until,r.locale),")")))))}(r,e,i)))}(this.fieldCtx(),r)}renderRelation(r){var e,o,i;if(!r.name)return null;const a=(null!==(o=null===(e=this.data)||void 0===e?void 0:e._links)&&void 0!==o?o:{})[r.name],n=(r,e)=>t("button",{key:r,class:"mrd-layout-section__relation-link",onClick:()=>this.mrdNavigate.emit({href:r,label:e})},e);let s;(null===(i=null==a?void 0:a.values)||void 0===i?void 0:i.length)?s=a.values.map((t=>n(t.href,t.name))):(null==a?void 0:a.name)&&(s=n(a.href,a.name));const l=!A(r,this.data);return l&&!E(r)?null:t("div",{class:"mrd-layout-section__field"+(l?" mrd-layout-section__field--empty":""),key:r.name},t("span",{class:"mrd-layout-section__field-label"},r.label),t("span",{class:"mrd-layout-section__field-value"},l?y("value_empty",this.locale):s))}renderSearch(r){var e,o,i;if(!r.dataClass)return null;const a=r.dataClass,n=null!==(e=this.searchQueryMap[a])&&void 0!==e?e:"",s=null!==(o=this.searchResultsMap[a])&&void 0!==o?o:[];return t("div",{class:"mrd-layout-section__search",key:"search-"+a},t("div",{class:"mrd-layout-section__search-wrap"},t("svg",{class:"mrd-layout-section__search-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a.75.75 0 11-1.06 1.06l-3.329-3.328A7 7 0 012 9z","clip-rule":"evenodd"})),t("input",{class:"mrd-layout-section__search-input",type:"text",value:n,placeholder:null!==(i=r.label)&&void 0!==i?i:"",onInput:t=>this.handleSearchInput(a,t.target.value)})),s.length>0&&t("ul",{class:"mrd-layout-section__search-results"},s.map((r=>t("li",{key:r.id,class:"mrd-layout-section__search-result"},t("button",{class:"mrd-layout-section__search-result-btn",onClick:()=>this.mrdNavigate.emit({href:r.id,label:r.label})},t("span",{class:"mrd-layout-section__search-result-label"},r.label),r.description&&t("span",{class:"mrd-layout-section__search-result-desc"},r.description)))))))}renderRelatedView(r){var e,o,i,a,s,m,u,v,h,y,f;const p=function(t){var r,e,o,i;return t.type===n.RELATED_VIEW?null!==(e=null!==(r=t.relatedClass)&&void 0!==r?r:t.name)&&void 0!==e?e:"":null!==(i=null!==(o=t.dataClass)&&void 0!==o?o:t.name)&&void 0!==i?i:""}(r);if(!p)return null;if(!r.view)return null;const b=null!==(e=r.showTitle)&&void 0!==e&&e,_=null!==(s=null===(a=null===(i=null===(o=this.data)||void 0===o?void 0:o._links)||void 0===i?void 0:i.self)||void 0===a?void 0:a.href)&&void 0!==s?s:"",g=null!==(m=_.split("/").filter(Boolean).pop())&&void 0!==m?m:"",w=l(null!==(u=r.archetypes)&&void 0!==u?u:null===(v=r.view)||void 0===v?void 0:v.archetypes,d),k=w?void 0:l(null!==(h=r.archetypes)&&void 0!==h?h:null===(y=r.view)||void 0===y?void 0:y.archetypes,c),x=function(t,r,e){if(t.type!==n.RELATED_VIEW||!t.fromClass||!e)return"";const o=r.split("/").filter(Boolean);if(o.length<2)return"";const[i,a]=o;return`/${i}/${a}/${t.fromClass}/${e}`}(r,_,g),j=r.type!==n.RELATED_VIEW||r.inverseRelation===(null===(f=null==k?void 0:k.slots)||void 0===f?void 0:f.container),z=j?x:"",M=r.type===n.RELATED_VIEW&&j;return t("div",{class:"mrd-layout-section__related-view",key:"view-"+p},b&&r.label&&t("h3",{class:"mrd-layout-section__related-view-title"},r.label),w&&this.renderDocumentContainer(r,p,g,w,x),k&&this.renderMemoContainer(r,p,g,k,z,j,!M),!w&&!k&&this.renderTable(r,p,g))}renderDocumentContainer(r,e,o,i,a){return t("mrd-document-container",{item:r,archetype:i,parentId:o,containerHref:a,viewKey:e,locale:this.locale,readOnly:this.readOnly,onMrdLoadDistinct:t=>{t.stopPropagation(),this.mrdLoadViewDistinct.emit(Object.assign({name:e},t.detail))},onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadViewPage.emit(Object.assign({name:e},t.detail))},onMrdLoadAggregations:t=>{var o;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdAction:t=>{var o;t.stopPropagation(),this.mrdViewAction.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdUpload:t=>{t.stopPropagation(),this.mrdViewUpload.emit(Object.assign({name:e},t.detail))},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(Object.assign({name:e},t.detail))}})}renderMemoContainer(r,e,o,i,a,n,s){var l,d,c,u;const v=null!==(u=null===(c=null===(d=null===(l=r.view)||void 0===l?void 0:l.values)||void 0===d?void 0:d.find((t=>{var r;return t.name===(null===(r=i.slots)||void 0===r?void 0:r.labels)})))||void 0===c?void 0:c.listItems)&&void 0!==u?u:null;return t("mrd-memo-container",{"data-view":e,item:r,archetype:i,parentId:o,containerHref:a,containerRelated:n,showContainerLink:s,viewKey:e,locale:this.locale,readOnly:this.readOnly,me:this.me,labelsListItems:v,onMrdNavigate:t=>{var e;t.stopPropagation(),this.mrdNavigate.emit(Object.assign(Object.assign({},t.detail),{navigateBehaviour:null!==(e=r.navigateBehaviour)&&void 0!==e?e:m.PAGE}))},onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadViewPage.emit(Object.assign({name:e},t.detail))},onMrdLoadAggregations:t=>{var o;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdAction:t=>{var o;t.stopPropagation(),this.mrdViewAction.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(Object.assign({name:e},t.detail))},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdDeleteObject:t=>{t.stopPropagation(),this.mrdDeleteObject.emit(t.detail)}})}renderTable(r,e,o){return t("mrd-table",{"data-view":e,item:r,parentId:o,locale:this.locale,readOnly:this.readOnly,onMrdLoadPage:t=>this.handleViewLoadPage(t,e),onMrdLoadAggregations:t=>{var o;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:e,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e},t.detail))},onMrdRowClick:t=>{var e,o,i,a;t.stopPropagation();const{row:n,listContext:s}=t.detail;this.mrdNavigate.emit({href:null===(o=null===(e=null==n?void 0:n._links)||void 0===e?void 0:e.self)||void 0===o?void 0:o.href,label:null!==(i=null==n?void 0:n.name)&&void 0!==i?i:"",navigateBehaviour:null!==(a=r.navigateBehaviour)&&void 0!==a?a:m.PAGE,listContext:s})},onMrdAction:t=>{var o;t.stopPropagation(),this.mrdViewAction.emit({name:e,action:t.detail.action,dataClass:null!==(o=r.dataClass)&&void 0!==o?o:e,path:t.detail.path,qs:t.detail.qs,parentPath:t.detail.parentPath,basicType:t.detail.basicType})}})}isHeaderBlockEmpty(t,r){const e=this.fieldCtx();for(let o=r+1;o<t.length;o++){const r=t[o];if(r.type===n.HEADER||r.type===n.SECTION||r.type===n.GROUP)break;if(r.type===n.FIELD&&H(e,r))return!1;if(r.type===n.RELATION&&(A(r,this.data)||E(r)))return!1;if(r.type!==n.FIELD&&r.type!==n.RELATION)return!1}return!0}renderItem(r,e=this.items,o=-1){var i,a;switch(r.type){case n.FIELD:return this.renderField(r);case n.RELATION:return this.renderRelation(r);case n.HEADER:return o>=0&&this.isHeaderBlockEmpty(e,o)?null:t("h2",{class:"mrd-layout-section__header",key:"header-"+r.label},r.label);case n.TEXT:return t("div",{class:"mrd-layout-section__text",key:"text-"+r.label,innerHTML:null!==(i=r.label)&&void 0!==i?i:""});case n.NAVIGATE:return t("button",{class:"mrd-layout-section__navigate",key:"nav-"+r.label,onClick:()=>{var t,e,o;return this.mrdNavigate.emit({label:null!==(t=r.label)&&void 0!==t?t:"",navigate:null!==(e=r.navigate)&&void 0!==e?e:{dataClass:null!==(o=r.dataClass)&&void 0!==o?o:"",icon:r.icon,navigationType:r.navigationType}})}},r.label);case n.SEARCH:return this.renderSearch(r);case n.SECTION:case n.GROUP:return t("div",{class:"mrd-layout-section__group",key:"group-"+r.label},r.label&&t("h3",{class:"mrd-layout-section__group-title"},r.label),(null!==(a=r.items)&&void 0!==a?a:[]).map(((t,e)=>{var o;return this.renderItem(t,null!==(o=r.items)&&void 0!==o?o:[],e)})));case n.RELATED_VIEW:case n.VIEW:return this.renderRelatedView(r);default:return null}}renderImageModal(){return this.imagePreviewUrl?t("div",{class:"mrd-layout-section__modal-backdrop",onClick:()=>{this.imagePreviewUrl=null}},t("div",{class:"mrd-layout-section__modal",onClick:t=>t.stopPropagation()},t("button",{class:"mrd-layout-section__modal-close",onClick:()=>{this.imagePreviewUrl=null}},"✕"),t("img",{class:"mrd-layout-section__modal-image",src:this.imagePreviewUrl,alt:""}))):null}relatedItems(t){return this.items.filter((r=>r!==t&&(r.type===n.VIEW||r.type===n.RELATED_VIEW||r.type===n.SEARCH)))}renderDocumentObject(r){return[t("mrd-document-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}renderInvoiceObject(r){var e,o,i;const a=null!==(e=this.items.find((t=>{var r,e;return(t.type===n.VIEW||t.type===n.RELATED_VIEW)&&!!l(null!==(r=t.archetypes)&&void 0!==r?r:null===(e=t.view)||void 0===e?void 0:e.archetypes,u)})))&&void 0!==e?e:null,s=null!==(i=null===(o=this.items.find((t=>{var e;return t.name===(null===(e=r.slots)||void 0===e?void 0:e.status)})))||void 0===o?void 0:o.listItems)&&void 0!==i?i:null;return[t("mrd-invoice-view",{archetype:r,data:this.data,locale:this.locale,statusListItems:s,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}},a&&t("div",{slot:"lines"},this.renderRelatedView(a))),...this.relatedItems(a).map((t=>this.renderItem(t)))]}renderEmailObject(r){return[t("mrd-email-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}renderMemoObject(r){var e,o;const i=null!==(o=null===(e=this.items.find((t=>{var e;return t.name===(null===(e=r.slots)||void 0===e?void 0:e.labels)})))||void 0===e?void 0:e.listItems)&&void 0!==o?o:null;return[t("mrd-memo-view",{archetype:r,data:this.data,locale:this.locale,labelsListItems:i,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}render(){const r=l(this.archetypes,d),e=r?void 0:l(this.archetypes,v),o=r||e?void 0:l(this.archetypes,h),a=r||e||o?void 0:l(this.archetypes,c),n=r||e||o||a;return t(i,{key:"057d145da172e68f84b6ff34f71ae649d6d6bf92"},t("div",{key:"e03a1761dc6bcd9ff54b264fee56130270bddc2f",class:"mrd-layout-section"},r&&this.renderDocumentObject(r),e&&this.renderInvoiceObject(e),o&&this.renderEmailObject(o),a&&this.renderMemoObject(a),!n&&this.items.map(((t,r)=>this.renderItem(t,this.items,r)))),this.renderImageModal())}get el(){return this}static get watchers(){return{data:[{dataChanged:0}]}}static get style(){return".sc-mrd-layout-section-h{display:block;width:100%}.mrd-layout-section.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-800)}.mrd-layout-section__field.sc-mrd-layout-section{display:grid;grid-template-columns:200px 1fr;align-items:baseline;gap:0 var(--mrd-space-2);padding:var(--mrd-space-1) 0}.mrd-layout-section__field--block.sc-mrd-layout-section{grid-template-columns:1fr}.mrd-layout-section__field-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-500);padding-top:1px}.mrd-layout-section__field-value.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800);word-break:break-word;display:inline-flex;align-items:center;gap:var(--mrd-space-1)}.mrd-layout-section__field--empty.sc-mrd-layout-section .mrd-layout-section__field-value.sc-mrd-layout-section{color:var(--mrd-color-neutral-400);font-weight:var(--mrd-font-weight-normal)}.mrd-layout-section__history-wrap.sc-mrd-layout-section{position:relative;display:inline-flex;align-items:center}.mrd-layout-section__history-btn.sc-mrd-layout-section{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;flex-shrink:0;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-layout-section__history-btn.sc-mrd-layout-section:hover{color:var(--mrd-color-neutral-700);background-color:var(--mrd-color-neutral-100)}.mrd-layout-section__history-btn.sc-mrd-layout-section:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__history-icon.sc-mrd-layout-section{width:0.875rem;height:0.875rem}.mrd-layout-section__history-popover.sc-mrd-layout-section{position:absolute;top:calc(100% + 0.25rem);left:0;min-width:24rem;max-width:24rem;background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);box-shadow:var(--mrd-shadow-md);padding:var(--mrd-space-1) 0;z-index:var(--mrd-z-dropdown)}.mrd-layout-section__history-entry.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-700);padding:var(--mrd-space-2) var(--mrd-space-3);line-height:var(--mrd-line-height-normal)}.mrd-layout-section__history-entry.sc-mrd-layout-section:not(:last-child){border-bottom:var(--mrd-border-width) solid var(--mrd-color-neutral-100)}.mrd-layout-section__field-header.sc-mrd-layout-section{font-size:var(--mrd-font-size-2xl);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0 0 var(--mrd-space-4) 0;padding:0}.mrd-layout-section__header.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);letter-spacing:0.01em;margin:var(--mrd-space-5) 0 var(--mrd-space-2) 0;padding:0}.mrd-layout-section__text.sc-mrd-layout-section{font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-700);line-height:var(--mrd-line-height-relaxed);margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2);padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:1px solid var(--mrd-color-neutral-300);border-radius:var(--mrd-border-radius);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light);border-color:var(--mrd-color-primary)}.mrd-layout-section__link.sc-mrd-layout-section{color:var(--mrd-color-primary);text-decoration:none}.mrd-layout-section__link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__relation-link.sc-mrd-layout-section{background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__relation-link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__download-link.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-1);background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__download-link.sc-mrd-layout-section:hover{text-decoration:underline;color:var(--mrd-color-primary-dark)}.mrd-layout-section__file-icon.sc-mrd-layout-section{flex-shrink:0;width:1rem;height:1rem}.mrd-layout-section__file-list.sc-mrd-layout-section{display:flex;flex-direction:column;align-items:flex-start;gap:var(--mrd-space-1)}.mrd-layout-section__file-list-item.sc-mrd-layout-section{min-width:0;max-width:100%}.mrd-layout-section__boolean--true.sc-mrd-layout-section{color:var(--mrd-color-success);font-weight:var(--mrd-font-weight-semibold)}.mrd-layout-section__boolean--false.sc-mrd-layout-section{color:var(--mrd-color-neutral-400)}.mrd-layout-section__badge.sc-mrd-layout-section{display:inline-block;font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);padding:2px var(--mrd-space-3);border-radius:10px}.mrd-layout-section__badge-dot-row.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2)}.mrd-layout-section__badge-dot.sc-mrd-layout-section{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.mrd-layout-section__secret-masked.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-label-color);letter-spacing:0.15em;user-select:none;pointer-events:none}.mrd-layout-section__pre.sc-mrd-layout-section{font-family:var(--mrd-font-family-mono);font-size:var(--mrd-font-size-xs);background-color:var(--mrd-color-neutral-50);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);margin:0;max-height:calc(15 * var(--mrd-font-size-xs));overflow-x:auto;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.mrd-layout-section__group.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__group-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);margin:0 0 var(--mrd-space-2) 0;padding-bottom:0;letter-spacing:0.01em}.mrd-layout-section__related-view.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__related-view-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-lg);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:0 0 var(--mrd-space-3) 0}.mrd-layout-section__search.sc-mrd-layout-section{position:relative;margin:var(--mrd-space-2) 0}.mrd-layout-section__search-wrap.sc-mrd-layout-section{position:relative}.mrd-layout-section__search-icon.sc-mrd-layout-section{position:absolute;left:var(--mrd-input-padding-x);top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--mrd-color-neutral-400);pointer-events:none}.mrd-layout-section__search-input.sc-mrd-layout-section{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x) var(--mrd-input-padding-y) calc(var(--mrd-input-padding-x) + 1rem + var(--mrd-space-2));font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-input-color);background-color:var(--mrd-input-bg);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);outline:none;appearance:none;box-sizing:border-box}.mrd-layout-section__search-input.sc-mrd-layout-section:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__search-input.sc-mrd-layout-section::placeholder{color:var(--mrd-input-placeholder-color)}.mrd-layout-section__search-results.sc-mrd-layout-section{position:absolute;top:100%;left:0;right:0;background-color:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-300);border-top:none;border-radius:0 0 var(--mrd-border-radius) var(--mrd-border-radius);box-shadow:var(--mrd-shadow-sm);z-index:100;max-height:300px;overflow-y:auto;list-style:none;margin:0;padding:var(--mrd-space-1) 0}.mrd-layout-section__search-result.sc-mrd-layout-section{margin:0;padding:0}.mrd-layout-section__search-result-btn.sc-mrd-layout-section{display:flex;flex-direction:column;width:100%;padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:none;text-align:left;cursor:pointer;font-family:var(--mrd-font-family)}.mrd-layout-section__search-result-btn.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light)}.mrd-layout-section__search-result-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800)}.mrd-layout-section__search-result-desc.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500);margin-top:var(--mrd-space-1)}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section{background:none;border:none;padding:0;cursor:pointer;display:inline-block;border-radius:var(--mrd-border-radius);overflow:hidden;line-height:0}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section:hover .mrd-layout-section__image-thumb.sc-mrd-layout-section{opacity:0.85}.mrd-layout-section__image-thumb.sc-mrd-layout-section{display:block;max-width:160px;max-height:100px;border-radius:var(--mrd-border-radius);object-fit:cover;transition:opacity 0.15s}.mrd-layout-section__modal-backdrop.sc-mrd-layout-section{position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);z-index:300;display:flex;align-items:center;justify-content:center}.mrd-layout-section__modal.sc-mrd-layout-section{position:relative;background:var(--mrd-color-white);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);max-width:min(90vw, 900px);max-height:90vh;display:flex;align-items:center;justify-content:center;box-shadow:var(--mrd-shadow-lg)}.mrd-layout-section__modal-close.sc-mrd-layout-section{position:absolute;top:var(--mrd-space-2);right:var(--mrd-space-2);background:rgba(0, 0, 0, 0.5);border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--mrd-color-white);cursor:pointer;font-size:var(--mrd-font-size-sm);line-height:1;z-index:1}.mrd-layout-section__modal-close.sc-mrd-layout-section:hover{background:rgba(0, 0, 0, 0.8)}.mrd-layout-section__modal-image.sc-mrd-layout-section{display:block;max-width:100%;max-height:calc(90vh - 2rem);border-radius:var(--mrd-border-radius);object-fit:contain}"}},[2,"mrd-layout-section",{items:[16],data:[16],views:[16],links:[16],locale:[1],archetypes:[16],readOnly:[4,"read-only"],me:[16],searchQueryMap:[32],searchResultsMap:[32],imagePreviewUrl:[32],imagePreviews:[32],openHistoryField:[32],setSearchResults:[64],setViewPage:[64],setViewAggregations:[64],setViewDistinct:[64],setViewFileReference:[64],setViewCreatedObject:[64],setImagePreview:[64],openImagePreview:[64]},void 0,{data:[{dataChanged:0}]}]),B=T,N=function(){"undefined"!=typeof customElements&&["mrd-layout-section","mrd-boolean-field","mrd-document-container","mrd-document-list","mrd-document-view","mrd-email-view","mrd-invoice-view","mrd-list-field","mrd-memo-container","mrd-memo-list","mrd-memo-view","mrd-table","mrd-text-field","mrd-textarea-field"].forEach((t=>{switch(t){case"mrd-layout-section":customElements.get(a(t))||customElements.define(a(t),T);break;case"mrd-boolean-field":customElements.get(a(t))||b();break;case"mrd-document-container":customElements.get(a(t))||_();break;case"mrd-document-list":customElements.get(a(t))||g();break;case"mrd-document-view":customElements.get(a(t))||w();break;case"mrd-email-view":customElements.get(a(t))||k();break;case"mrd-invoice-view":customElements.get(a(t))||x();break;case"mrd-list-field":customElements.get(a(t))||j();break;case"mrd-memo-container":customElements.get(a(t))||z();break;case"mrd-memo-list":customElements.get(a(t))||M();break;case"mrd-memo-view":customElements.get(a(t))||O();break;case"mrd-table":customElements.get(a(t))||C();break;case"mrd-text-field":customElements.get(a(t))||L();break;case"mrd-textarea-field":customElements.get(a(t))||V()}}))};export{B as MrdLayoutSection,N as defineCustomElement}
@@ -1 +1 @@
1
- import{proxyCustomElement as r,HTMLElement as t,createEvent as e,h as i,Host as o,transformTag as n}from"@stencil/core/internal/client";import{a}from"./client-layout.js";import{t as d}from"./i18n.js";import{b as s}from"./query-params.js";import{d as m}from"./mrd-boolean-field2.js";import{d as l}from"./mrd-list-field2.js";import{d as c}from"./mrd-memo-list2.js";import{d as h}from"./mrd-table2.js";import{d as u}from"./mrd-text-field2.js";import{d as v}from"./mrd-textarea-field2.js";const f=r(class extends t{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdLoadPage=e(this,"mrdLoadPage",7),this.mrdLoadAggregations=e(this,"mrdLoadAggregations",7),this.mrdAction=e(this,"mrdAction",7),this.mrdCreateObject=e(this,"mrdCreateObject",7),this.mrdUpdateObject=e(this,"mrdUpdateObject",7),this.mrdDeleteObject=e(this,"mrdDeleteObject",7),this.item=null,this.parentId="",this.containerHref="",this.viewKey="",this.locale=navigator.language,this.labelsListItems=null,this.readOnly=!1,this.me=null,this.mode="cards",this.dialogOpen=!1,this.editingHref=null,this.dialogBody="",this.dialogTitle="",this.dialogLabels=[],this.dialogImportant=!1,this.dialogTouched=!1,this.deleteConfirmOpen=!1,this.listInited=!1,this.tableInited=!1,this.escapeHandler=null,this.openCreate=()=>{this.canAdd&&(this.editingHref=null,this.dialogBody="",this.dialogTitle="",this.dialogLabels=[],this.dialogImportant=!1,this.dialogTouched=!1,this.deleteConfirmOpen=!1,this.dialogOpen=!0)},this.openEdit=r=>{var t,e;if(this.readOnly)return;const i=null===(e=null===(t=null==r?void 0:r._links)||void 0===t?void 0:t.self)||void 0===e?void 0:e.href;if(!i)return;this.editingHref=i;const o=this.slotValue(r,"body");this.dialogBody=null!=o?String(o):"";const n=this.slotValue(r,"title");this.dialogTitle=null!=n?String(n):"";const a=this.slotValue(r,"labels");this.dialogLabels=Array.isArray(a)?a.map(String):null!=a&&""!==a?[String(a)]:[],this.dialogImportant=!!this.slotValue(r,"important"),this.dialogTouched=!1,this.deleteConfirmOpen=!1,this.dialogOpen=!0},this.closeDialog=()=>{this.dialogOpen=!1,this.deleteConfirmOpen=!1},this.openDeleteConfirm=()=>{this.deleteConfirmOpen=!0},this.cancelDeleteConfirm=()=>{this.deleteConfirmOpen=!1},this.confirmDelete=()=>{var r;if(!this.editingHref)return;const t=this.editingHref;this.mrdDeleteObject.emit({href:t}),"cards"===this.mode?null===(r=this.listEl)||void 0===r||r.removeRow(t):this.refresh(),this.deleteConfirmOpen=!1,this.dialogOpen=!1},this.submitDialog=()=>{var r,t,e,i,o,n,a,d,s,m,l,c,h,u,v,f;if(this.dialogTouched=!0,!this.dialogBody.trim())return;const g=null!==(t=null===(r=this.archetype)||void 0===r?void 0:r.slots)&&void 0!==t?t:{};if(this.editingHref){const r={[null!==(e=g.body)&&void 0!==e?e:"body"]:this.dialogBody};this.hasTitleSlot&&(r[null!==(i=g.title)&&void 0!==i?i:"title"]=this.dialogTitle.trim()||null),(null!==(o=this.labelsListItems)&&void 0!==o?o:[]).length&&(r[null!==(n=g.labels)&&void 0!==n?n:"labels"]=this.dialogLabels),this.hasImportantSlot&&(r[null!==(a=g.important)&&void 0!==a?a:"important"]=this.dialogImportant),this.mrdUpdateObject.emit({href:this.editingHref,values:r}),"cards"===this.mode?null===(d=this.listEl)||void 0===d||d.patchRow(this.editingHref,r):this.refresh()}else{if(!this.canAdd)return;const r={[null!==(s=g.body)&&void 0!==s?s:"body"]:this.dialogBody,[null!==(m=g.date)&&void 0!==m?m:"date"]:(new Date).toISOString().replace(/\.\d{3}Z$/,"Z")};this.hasTitleSlot&&this.dialogTitle.trim()&&(r[null!==(l=g.title)&&void 0!==l?l:"title"]=this.dialogTitle.trim()),(null!==(c=this.labelsListItems)&&void 0!==c?c:[]).length&&this.dialogLabels.length&&(r[null!==(h=g.labels)&&void 0!==h?h:"labels"]=this.dialogLabels),this.hasImportantSlot&&this.dialogImportant&&(r[null!==(u=g.important)&&void 0!==u?u:"important"]=!0),this.meHref()&&(r[null!==(v=g.author)&&void 0!==v?v:"author"]=this.meHref()),r[null!==(f=g.container)&&void 0!==f?f:"container"]=this.effectiveContainerHref,this.mrdCreateObject.emit({path:this.buildCreatePath(),values:r})}this.dialogOpen=!1}}disconnectedCallback(){this.unbindEscape()}dialogOpenChanged(r){r?(this.escapeHandler=r=>{"Escape"===r.key&&(this.deleteConfirmOpen?this.cancelDeleteConfirm():this.closeDialog())},document.addEventListener("keydown",this.escapeHandler)):this.unbindEscape()}unbindEscape(){this.escapeHandler&&(document.removeEventListener("keydown",this.escapeHandler),this.escapeHandler=null)}componentDidRender(){var r,t;if("cards"===this.mode&&this.listEl&&!this.listInited){this.listInited=!0;const t=this.listEl;Promise.resolve(null===(r=t.componentOnReady)||void 0===r?void 0:r.call(t)).then((()=>t.init()))}if("table"===this.mode&&this.tableEl&&!this.tableInited){this.tableInited=!0;const r=this.tableEl;Promise.resolve(null===(t=r.componentOnReady)||void 0===t?void 0:t.call(r)).then((()=>r.init()))}}setMode(r){r!==this.mode&&(this.listInited=!1,this.tableInited=!1,this.mode=r)}async refresh(){"cards"===this.mode&&this.listEl?await this.listEl.init():"table"===this.mode&&this.tableEl&&await this.tableEl.init()}meHref(){var r,t;const e=this.me;return null!==(t=null!==(r=null==e?void 0:e.id)&&void 0!==r?r:null==e?void 0:e.href)&&void 0!==t?t:""}slotValue(r,t){var e,i;const o=null===(i=null===(e=this.archetype)||void 0===e?void 0:e.slots)||void 0===i?void 0:i[t];if(o)return r[o]}get hasTitleSlot(){var r,t;return!!(null===(t=null===(r=this.archetype)||void 0===r?void 0:r.slots)||void 0===t?void 0:t.title)}get hasImportantSlot(){var r,t;return!!(null===(t=null===(r=this.archetype)||void 0===r?void 0:r.slots)||void 0===t?void 0:t.important)}get effectiveContainerHref(){return this.containerHref||this.meHref()}get canAdd(){return!this.readOnly&&!!this.meHref()&&!!this.effectiveContainerHref}buildCreatePath(){var r,t,e,i,o,n,d;return s({isRelatedView:(null===(r=this.item)||void 0===r?void 0:r.type)===a.RELATED_VIEW,fromClass:null===(t=this.item)||void 0===t?void 0:t.fromClass,parentId:this.parentId,dataClass:null!==(n=null!==(i=null===(e=this.item)||void 0===e?void 0:e.filterClass)&&void 0!==i?i:null===(o=this.item)||void 0===o?void 0:o.dataClass)&&void 0!==n?n:null===(d=this.item)||void 0===d?void 0:d.relatedClass})}renderToolbar(){return i("div",{class:"mrd-memo-container__toolbar"},"cards"===this.mode&&i("button",{type:"button",class:"mrd-memo-container__action",disabled:!this.canAdd,title:this.readOnly?d("readonly_access",this.locale):void 0,onClick:this.openCreate},i("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},i("path",{d:"M12 5v14M5 12h14"})),d("memo_new",this.locale)),i("div",{class:"mrd-memo-container__seg",role:"group","aria-label":d("doc_view_switch",this.locale)},i("button",{class:"mrd-memo-container__seg-btn","aria-pressed":String("cards"===this.mode),title:d("memo_view_cards",this.locale),"aria-label":d("memo_view_cards",this.locale),onClick:()=>this.setMode("cards")},i("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},i("rect",{x:"3",y:"4",width:"7",height:"7",rx:"1"}),i("rect",{x:"14",y:"4",width:"7",height:"7",rx:"1"}),i("rect",{x:"3",y:"15",width:"7",height:"5",rx:"1"}),i("rect",{x:"14",y:"15",width:"7",height:"5",rx:"1"}))),i("button",{class:"mrd-memo-container__seg-btn","aria-pressed":String("table"===this.mode),title:d("memo_view_table",this.locale),"aria-label":d("memo_view_table",this.locale),onClick:()=>this.setMode("table")},i("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},i("path",{d:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"})))))}renderDeleteConfirm(){return i("div",null,i("h2",{class:"mrd-memo-container__modal-title"},d("memo_delete_confirm_title",this.locale)),i("p",{class:"mrd-memo-container__modal-warning"},d("memo_delete_confirm_body",this.locale)),i("div",{class:"mrd-memo-container__modal-actions"},i("button",{type:"button",class:"mrd-memo-container__modal-cancel",onClick:this.cancelDeleteConfirm},d("cancel",this.locale)),i("button",{type:"button",class:"mrd-memo-container__modal-delete-confirm",onClick:this.confirmDelete},d("delete",this.locale))))}renderForm(){var r,t,e;const o=this.dialogTouched&&!this.dialogBody.trim();return[i("h2",{class:"mrd-memo-container__modal-title"},d(this.editingHref?"memo_edit":"memo_new",this.locale)),i("div",{class:"mrd-memo-container__modal-field"},i("mrd-textarea-field",{key:null!==(r=this.editingHref)&&void 0!==r?r:"new",name:"body",value:this.dialogBody,required:!0,autofocus:!0,locale:this.locale,onMrdChange:r=>{this.dialogBody=r.detail.value}}),o&&i("span",{class:"mrd-memo-container__modal-error"},d("required",this.locale))),this.hasTitleSlot&&i("div",{class:"mrd-memo-container__modal-field"},i("mrd-text-field",{name:"title",label:d("memo_field_title",this.locale),value:this.dialogTitle,locale:this.locale,onMrdChange:r=>{this.dialogTitle=r.detail.value}})),!!(null!==(t=this.labelsListItems)&&void 0!==t?t:[]).length&&i("div",{class:"mrd-memo-container__modal-field"},i("mrd-list-field",{name:"labels",label:d("memo_field_labels",this.locale),value:this.dialogLabels,multiple:!0,listItems:null!==(e=this.labelsListItems)&&void 0!==e?e:[],locale:this.locale,onMrdChange:r=>{this.dialogLabels=Array.isArray(r.detail.value)?r.detail.value:[r.detail.value].filter(Boolean)}})),this.hasImportantSlot&&i("div",{class:"mrd-memo-container__modal-field"},i("mrd-boolean-field",{name:"important",label:d("memo_important",this.locale),value:this.dialogImportant,locale:this.locale,onMrdChange:r=>{this.dialogImportant=r.detail.value}})),i("div",{class:"mrd-memo-container__modal-actions"},this.editingHref&&i("button",{type:"button",class:"mrd-memo-container__modal-delete",onClick:this.openDeleteConfirm},d("delete",this.locale)),i("button",{type:"button",class:"mrd-memo-container__modal-cancel",onClick:this.closeDialog},d("cancel",this.locale)),i("button",{type:"button",class:"mrd-memo-container__modal-submit",onClick:this.submitDialog},d("submit",this.locale)))]}renderDialog(){return this.dialogOpen?i("div",{class:"mrd-memo-container__modal-backdrop",onClick:this.closeDialog},i("div",{class:"mrd-memo-container__modal",onClick:r=>r.stopPropagation()},this.deleteConfirmOpen?this.renderDeleteConfirm():this.renderForm())):null}renderCards(){return i("mrd-memo-list",{"data-view":this.viewKey,ref:r=>this.listEl=r,item:this.item,archetype:this.archetype,parentId:this.parentId,locale:this.locale,readOnly:this.readOnly,labelsListItems:this.labelsListItems,onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdEdit:r=>{r.stopPropagation(),this.openEdit(r.detail.row)}})}renderTable(){return i("mrd-table",{"data-view":this.viewKey,ref:r=>this.tableEl=r,item:this.item,parentId:this.parentId,locale:this.locale,readOnly:this.readOnly,onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdLoadAggregations:r=>{r.stopPropagation(),this.mrdLoadAggregations.emit(r.detail)},onMrdRowClick:r=>{r.stopPropagation(),this.openEdit(r.detail.row)},onMrdAction:r=>{r.stopPropagation(),this.mrdAction.emit(r.detail)}})}render(){return i(o,{key:"cf5e9a23e1e8496d061c00218029ec49d92700fe"},this.renderToolbar(),i("div",{key:"5a15a60ea4cc68c77a8928068f7d6d6c3cb91434",class:"mrd-memo-container__body"},"cards"===this.mode?this.renderCards():this.renderTable()),this.renderDialog())}static get watchers(){return{dialogOpen:[{dialogOpenChanged:0}]}}static get style(){return".sc-mrd-memo-container-h{display:block}.mrd-memo-container__toolbar.sc-mrd-memo-container{display:flex;align-items:center;justify-content:flex-end;gap:var(--mrd-space-2);padding:var(--mrd-space-2) 0;border-bottom:1px solid var(--mrd-color-neutral-100)}.mrd-memo-container__action.sc-mrd-memo-container{display:inline-flex;align-items:center;gap:var(--mrd-space-2);height:1.625rem;padding:0 var(--mrd-space-3);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-700);background:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background var(--mrd-transition-fast), border-color var(--mrd-transition-fast)}.mrd-memo-container__action.sc-mrd-memo-container svg.sc-mrd-memo-container{width:1rem;height:1rem}.mrd-memo-container__action.sc-mrd-memo-container:hover:not(:disabled){background:var(--mrd-color-neutral-50);border-color:var(--mrd-color-neutral-300)}.mrd-memo-container__action.sc-mrd-memo-container:disabled{opacity:0.5;cursor:not-allowed}.mrd-memo-container__seg.sc-mrd-memo-container{display:inline-flex;gap:2px;padding:2px;background:var(--mrd-color-neutral-100);border-radius:var(--mrd-border-radius)}.mrd-memo-container__seg-btn.sc-mrd-memo-container{width:1.875rem;height:1.625rem;display:grid;place-items:center;border:none;background:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-500);cursor:pointer;transition:color var(--mrd-transition-fast), background var(--mrd-transition-fast)}.mrd-memo-container__seg-btn.sc-mrd-memo-container:hover{color:var(--mrd-color-neutral-800)}.mrd-memo-container__seg-btn[aria-pressed=true].sc-mrd-memo-container{background:var(--mrd-color-white);color:var(--mrd-color-primary-dark);box-shadow:var(--mrd-shadow-sm)}.mrd-memo-container__seg-btn.sc-mrd-memo-container svg.sc-mrd-memo-container{width:1rem;height:1rem}.mrd-memo-container__body.sc-mrd-memo-container{padding-top:var(--mrd-space-3)}.mrd-memo-container__modal-backdrop.sc-mrd-memo-container{position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);z-index:300;display:flex;align-items:center;justify-content:center;padding:var(--mrd-space-4)}.mrd-memo-container__modal.sc-mrd-memo-container{width:100%;max-width:960px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--mrd-space-4);background:var(--mrd-color-white);border-radius:var(--mrd-border-radius-md);padding:var(--mrd-space-5);box-shadow:var(--mrd-shadow-lg)}.mrd-memo-container__modal-title.sc-mrd-memo-container{font-size:var(--mrd-font-size-lg);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0}.mrd-memo-container__modal-field.sc-mrd-memo-container{display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-memo-container__modal-error.sc-mrd-memo-container{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}.mrd-memo-container__modal-warning.sc-mrd-memo-container{margin:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-600)}.mrd-memo-container__modal-actions.sc-mrd-memo-container{display:flex;justify-content:flex-end;gap:var(--mrd-space-3);margin-top:var(--mrd-space-2);padding-top:var(--mrd-space-4);border-top:var(--mrd-border-width) solid var(--mrd-border-color)}.mrd-memo-container__modal-delete.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);margin-right:auto;background-color:transparent;color:var(--mrd-color-danger);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:var(--mrd-border-width) solid var(--mrd-color-danger);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition), color var(--mrd-transition)}.mrd-memo-container__modal-delete.sc-mrd-memo-container:hover{background-color:var(--mrd-color-danger-light);color:var(--mrd-color-danger-dark)}.mrd-memo-container__modal-delete-confirm.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:var(--mrd-color-danger);color:var(--mrd-color-white);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:none;border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition)}.mrd-memo-container__modal-delete-confirm.sc-mrd-memo-container:hover{background-color:var(--mrd-color-danger-dark)}.mrd-memo-container__modal-cancel.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:transparent;color:var(--mrd-color-neutral-600);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition), color var(--mrd-transition)}.mrd-memo-container__modal-cancel.sc-mrd-memo-container:hover{background-color:var(--mrd-color-neutral-100);color:var(--mrd-color-neutral-800)}.mrd-memo-container__modal-submit.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:var(--mrd-color-primary);color:var(--mrd-color-white);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:none;border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition)}.mrd-memo-container__modal-submit.sc-mrd-memo-container:hover{background-color:var(--mrd-color-primary-hover)}"}},[2,"mrd-memo-container",{item:[16],archetype:[16],parentId:[1,"parent-id"],containerHref:[1,"container-href"],viewKey:[1,"view-key"],locale:[1],labelsListItems:[16],readOnly:[4,"read-only"],me:[16],mode:[32],dialogOpen:[32],editingHref:[32],dialogBody:[32],dialogTitle:[32],dialogLabels:[32],dialogImportant:[32],dialogTouched:[32],deleteConfirmOpen:[32],refresh:[64]},void 0,{dialogOpen:[{dialogOpenChanged:0}]}]);function g(){"undefined"!=typeof customElements&&["mrd-memo-container","mrd-boolean-field","mrd-list-field","mrd-memo-list","mrd-table","mrd-text-field","mrd-textarea-field"].forEach((r=>{switch(r){case"mrd-memo-container":customElements.get(n(r))||customElements.define(n(r),f);break;case"mrd-boolean-field":customElements.get(n(r))||m();break;case"mrd-list-field":customElements.get(n(r))||l();break;case"mrd-memo-list":customElements.get(n(r))||c();break;case"mrd-table":customElements.get(n(r))||h();break;case"mrd-text-field":customElements.get(n(r))||u();break;case"mrd-textarea-field":customElements.get(n(r))||v()}}))}export{f as M,g as d}
1
+ import{proxyCustomElement as r,HTMLElement as t,createEvent as i,h as e,Host as o,transformTag as n}from"@stencil/core/internal/client";import{a}from"./client-layout.js";import{t as d}from"./i18n.js";import{b as s}from"./query-params.js";import{d as m}from"./mrd-boolean-field2.js";import{d as l}from"./mrd-list-field2.js";import{d as c}from"./mrd-memo-list2.js";import{d as h}from"./mrd-table2.js";import{d as u}from"./mrd-text-field2.js";import{d as v}from"./mrd-textarea-field2.js";const f=r(class extends t{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdLoadPage=i(this,"mrdLoadPage",7),this.mrdLoadAggregations=i(this,"mrdLoadAggregations",7),this.mrdNavigate=i(this,"mrdNavigate",7),this.mrdAction=i(this,"mrdAction",7),this.mrdCreateObject=i(this,"mrdCreateObject",7),this.mrdUpdateObject=i(this,"mrdUpdateObject",7),this.mrdDeleteObject=i(this,"mrdDeleteObject",7),this.item=null,this.parentId="",this.containerHref="",this.containerRelated=!0,this.showContainerLink=!0,this.viewKey="",this.locale=navigator.language,this.labelsListItems=null,this.readOnly=!1,this.me=null,this.mode="cards",this.dialogOpen=!1,this.editingHref=null,this.dialogBody="",this.dialogTitle="",this.dialogLabels=[],this.dialogImportant=!1,this.dialogTouched=!1,this.deleteConfirmOpen=!1,this.listInited=!1,this.tableInited=!1,this.escapeHandler=null,this.openCreate=()=>{this.canAdd&&(this.editingHref=null,this.dialogBody="",this.dialogTitle="",this.dialogLabels=[],this.dialogImportant=!1,this.dialogTouched=!1,this.deleteConfirmOpen=!1,this.dialogOpen=!0)},this.openEdit=r=>{var t,i;if(this.readOnly)return;const e=null===(i=null===(t=null==r?void 0:r._links)||void 0===t?void 0:t.self)||void 0===i?void 0:i.href;if(!e)return;this.editingHref=e;const o=this.slotValue(r,"body");this.dialogBody=null!=o?String(o):"";const n=this.slotValue(r,"title");this.dialogTitle=null!=n?String(n):"";const a=this.slotValue(r,"labels");this.dialogLabels=Array.isArray(a)?a.map(String):null!=a&&""!==a?[String(a)]:[],this.dialogImportant=!!this.slotValue(r,"important"),this.dialogTouched=!1,this.deleteConfirmOpen=!1,this.dialogOpen=!0},this.closeDialog=()=>{this.dialogOpen=!1,this.deleteConfirmOpen=!1},this.openDeleteConfirm=()=>{this.deleteConfirmOpen=!0},this.cancelDeleteConfirm=()=>{this.deleteConfirmOpen=!1},this.confirmDelete=()=>{var r;if(!this.editingHref)return;const t=this.editingHref;this.mrdDeleteObject.emit({href:t}),"cards"===this.mode?null===(r=this.listEl)||void 0===r||r.removeRow(t):this.refresh(),this.deleteConfirmOpen=!1,this.dialogOpen=!1},this.submitDialog=()=>{var r,t,i,e,o,n,a,d,s,m,l,c,h,u,v,f;if(this.dialogTouched=!0,!this.dialogBody.trim())return;const b=null!==(t=null===(r=this.archetype)||void 0===r?void 0:r.slots)&&void 0!==t?t:{};if(this.editingHref){const r={[null!==(i=b.body)&&void 0!==i?i:"body"]:this.dialogBody};this.hasTitleSlot&&(r[null!==(e=b.title)&&void 0!==e?e:"title"]=this.dialogTitle.trim()||null),(null!==(o=this.labelsListItems)&&void 0!==o?o:[]).length&&(r[null!==(n=b.labels)&&void 0!==n?n:"labels"]=this.dialogLabels),this.hasImportantSlot&&(r[null!==(a=b.important)&&void 0!==a?a:"important"]=this.dialogImportant),this.mrdUpdateObject.emit({href:this.editingHref,values:r}),"cards"===this.mode?null===(d=this.listEl)||void 0===d||d.patchRow(this.editingHref,r):this.refresh()}else{if(!this.canAdd)return;const r={[null!==(s=b.body)&&void 0!==s?s:"body"]:this.dialogBody,[null!==(m=b.date)&&void 0!==m?m:"date"]:(new Date).toISOString().replace(/\.\d{3}Z$/,"Z")};this.hasTitleSlot&&this.dialogTitle.trim()&&(r[null!==(l=b.title)&&void 0!==l?l:"title"]=this.dialogTitle.trim()),(null!==(c=this.labelsListItems)&&void 0!==c?c:[]).length&&this.dialogLabels.length&&(r[null!==(h=b.labels)&&void 0!==h?h:"labels"]=this.dialogLabels),this.hasImportantSlot&&this.dialogImportant&&(r[null!==(u=b.important)&&void 0!==u?u:"important"]=!0),this.meHref()&&(r[null!==(v=b.author)&&void 0!==v?v:"author"]=this.meHref()),r[null!==(f=b.container)&&void 0!==f?f:"container"]=this.effectiveContainerHref,this.mrdCreateObject.emit({path:this.buildCreatePath(),values:r})}this.dialogOpen=!1}}disconnectedCallback(){this.unbindEscape()}dialogOpenChanged(r){r?(this.escapeHandler=r=>{"Escape"===r.key&&(this.deleteConfirmOpen?this.cancelDeleteConfirm():this.closeDialog())},document.addEventListener("keydown",this.escapeHandler)):this.unbindEscape()}unbindEscape(){this.escapeHandler&&(document.removeEventListener("keydown",this.escapeHandler),this.escapeHandler=null)}componentDidRender(){var r,t;if("cards"===this.mode&&this.listEl&&!this.listInited){this.listInited=!0;const t=this.listEl;Promise.resolve(null===(r=t.componentOnReady)||void 0===r?void 0:r.call(t)).then((()=>t.init()))}if("table"===this.mode&&this.tableEl&&!this.tableInited){this.tableInited=!0;const r=this.tableEl;Promise.resolve(null===(t=r.componentOnReady)||void 0===t?void 0:t.call(r)).then((()=>r.init()))}}setMode(r){r!==this.mode&&(this.listInited=!1,this.tableInited=!1,this.mode=r)}async refresh(){"cards"===this.mode&&this.listEl?await this.listEl.init():"table"===this.mode&&this.tableEl&&await this.tableEl.init()}meHref(){var r,t;const i=this.me;return null!==(t=null!==(r=null==i?void 0:i.id)&&void 0!==r?r:null==i?void 0:i.href)&&void 0!==t?t:""}slotValue(r,t){var i,e;const o=null===(e=null===(i=this.archetype)||void 0===i?void 0:i.slots)||void 0===e?void 0:e[t];if(o)return r[o]}get hasTitleSlot(){var r,t;return!!(null===(t=null===(r=this.archetype)||void 0===r?void 0:r.slots)||void 0===t?void 0:t.title)}get hasImportantSlot(){var r,t;return!!(null===(t=null===(r=this.archetype)||void 0===r?void 0:r.slots)||void 0===t?void 0:t.important)}get effectiveContainerHref(){return this.containerRelated?this.containerHref||this.meHref():""}get canAdd(){return!this.readOnly&&!!this.meHref()&&!!this.effectiveContainerHref}buildCreatePath(){var r,t,i,e,o,n,d;return s({isRelatedView:(null===(r=this.item)||void 0===r?void 0:r.type)===a.RELATED_VIEW,fromClass:null===(t=this.item)||void 0===t?void 0:t.fromClass,parentId:this.parentId,dataClass:null!==(n=null!==(e=null===(i=this.item)||void 0===i?void 0:i.filterClass)&&void 0!==e?e:null===(o=this.item)||void 0===o?void 0:o.dataClass)&&void 0!==n?n:null===(d=this.item)||void 0===d?void 0:d.relatedClass})}renderToolbar(){return e("div",{class:"mrd-memo-container__toolbar"},"cards"===this.mode&&e("button",{type:"button",class:"mrd-memo-container__action",disabled:!this.canAdd,title:this.readOnly?d("readonly_access",this.locale):void 0,onClick:this.openCreate},e("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},e("path",{d:"M12 5v14M5 12h14"})),d("memo_new",this.locale)),e("div",{class:"mrd-memo-container__seg",role:"group","aria-label":d("doc_view_switch",this.locale)},e("button",{class:"mrd-memo-container__seg-btn","aria-pressed":String("cards"===this.mode),title:d("memo_view_cards",this.locale),"aria-label":d("memo_view_cards",this.locale),onClick:()=>this.setMode("cards")},e("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},e("rect",{x:"3",y:"4",width:"7",height:"7",rx:"1"}),e("rect",{x:"14",y:"4",width:"7",height:"7",rx:"1"}),e("rect",{x:"3",y:"15",width:"7",height:"5",rx:"1"}),e("rect",{x:"14",y:"15",width:"7",height:"5",rx:"1"}))),e("button",{class:"mrd-memo-container__seg-btn","aria-pressed":String("table"===this.mode),title:d("memo_view_table",this.locale),"aria-label":d("memo_view_table",this.locale),onClick:()=>this.setMode("table")},e("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},e("path",{d:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"})))))}renderDeleteConfirm(){return e("div",null,e("h2",{class:"mrd-memo-container__modal-title"},d("memo_delete_confirm_title",this.locale)),e("p",{class:"mrd-memo-container__modal-warning"},d("memo_delete_confirm_body",this.locale)),e("div",{class:"mrd-memo-container__modal-actions"},e("button",{type:"button",class:"mrd-memo-container__modal-cancel",onClick:this.cancelDeleteConfirm},d("cancel",this.locale)),e("button",{type:"button",class:"mrd-memo-container__modal-delete-confirm",onClick:this.confirmDelete},d("delete",this.locale))))}renderForm(){var r,t,i;const o=this.dialogTouched&&!this.dialogBody.trim();return[e("h2",{class:"mrd-memo-container__modal-title"},d(this.editingHref?"memo_edit":"memo_new",this.locale)),e("div",{class:"mrd-memo-container__modal-field"},e("mrd-textarea-field",{key:null!==(r=this.editingHref)&&void 0!==r?r:"new",name:"body",value:this.dialogBody,required:!0,autofocus:!0,locale:this.locale,onMrdChange:r=>{this.dialogBody=r.detail.value}}),o&&e("span",{class:"mrd-memo-container__modal-error"},d("required",this.locale))),this.hasTitleSlot&&e("div",{class:"mrd-memo-container__modal-field"},e("mrd-text-field",{name:"title",label:d("memo_field_title",this.locale),value:this.dialogTitle,locale:this.locale,onMrdChange:r=>{this.dialogTitle=r.detail.value}})),!!(null!==(t=this.labelsListItems)&&void 0!==t?t:[]).length&&e("div",{class:"mrd-memo-container__modal-field"},e("mrd-list-field",{name:"labels",label:d("memo_field_labels",this.locale),value:this.dialogLabels,multiple:!0,listItems:null!==(i=this.labelsListItems)&&void 0!==i?i:[],locale:this.locale,onMrdChange:r=>{this.dialogLabels=Array.isArray(r.detail.value)?r.detail.value:[r.detail.value].filter(Boolean)}})),this.hasImportantSlot&&e("div",{class:"mrd-memo-container__modal-field"},e("mrd-boolean-field",{name:"important",label:d("memo_important",this.locale),value:this.dialogImportant,locale:this.locale,onMrdChange:r=>{this.dialogImportant=r.detail.value}})),e("div",{class:"mrd-memo-container__modal-actions"},this.editingHref&&e("button",{type:"button",class:"mrd-memo-container__modal-delete",onClick:this.openDeleteConfirm},d("delete",this.locale)),e("button",{type:"button",class:"mrd-memo-container__modal-cancel",onClick:this.closeDialog},d("cancel",this.locale)),e("button",{type:"button",class:"mrd-memo-container__modal-submit",onClick:this.submitDialog},d("submit",this.locale)))]}renderDialog(){return this.dialogOpen?e("div",{class:"mrd-memo-container__modal-backdrop",onClick:this.closeDialog},e("div",{class:"mrd-memo-container__modal",onClick:r=>r.stopPropagation()},this.deleteConfirmOpen?this.renderDeleteConfirm():this.renderForm())):null}renderCards(){return e("mrd-memo-list",{"data-view":this.viewKey,ref:r=>this.listEl=r,item:this.item,archetype:this.archetype,parentId:this.parentId,locale:this.locale,readOnly:this.readOnly,labelsListItems:this.labelsListItems,showContainerLink:this.showContainerLink,onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdEdit:r=>{r.stopPropagation(),this.openEdit(r.detail.row)},onMrdNavigate:r=>{r.stopPropagation(),this.mrdNavigate.emit(r.detail)}})}renderTable(){return e("mrd-table",{"data-view":this.viewKey,ref:r=>this.tableEl=r,item:this.item,parentId:this.parentId,locale:this.locale,readOnly:this.readOnly,onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdLoadAggregations:r=>{r.stopPropagation(),this.mrdLoadAggregations.emit(r.detail)},onMrdRowClick:r=>{r.stopPropagation(),this.openEdit(r.detail.row)},onMrdAction:r=>{r.stopPropagation(),this.mrdAction.emit(r.detail)}})}render(){return e(o,{key:"a000221db6b1ba12351f38619f319b277b791f68"},this.renderToolbar(),e("div",{key:"712951c8e391ed693bf6e4263c4f1076172b0451",class:"mrd-memo-container__body"},"cards"===this.mode?this.renderCards():this.renderTable()),this.renderDialog())}static get watchers(){return{dialogOpen:[{dialogOpenChanged:0}]}}static get style(){return".sc-mrd-memo-container-h{display:block}.mrd-memo-container__toolbar.sc-mrd-memo-container{display:flex;align-items:center;justify-content:flex-end;gap:var(--mrd-space-2);padding:var(--mrd-space-2) 0;border-bottom:1px solid var(--mrd-color-neutral-100)}.mrd-memo-container__action.sc-mrd-memo-container{display:inline-flex;align-items:center;gap:var(--mrd-space-2);height:1.625rem;padding:0 var(--mrd-space-3);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-700);background:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background var(--mrd-transition-fast), border-color var(--mrd-transition-fast)}.mrd-memo-container__action.sc-mrd-memo-container svg.sc-mrd-memo-container{width:1rem;height:1rem}.mrd-memo-container__action.sc-mrd-memo-container:hover:not(:disabled){background:var(--mrd-color-neutral-50);border-color:var(--mrd-color-neutral-300)}.mrd-memo-container__action.sc-mrd-memo-container:disabled{opacity:0.5;cursor:not-allowed}.mrd-memo-container__seg.sc-mrd-memo-container{display:inline-flex;gap:2px;padding:2px;background:var(--mrd-color-neutral-100);border-radius:var(--mrd-border-radius)}.mrd-memo-container__seg-btn.sc-mrd-memo-container{width:1.875rem;height:1.625rem;display:grid;place-items:center;border:none;background:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-500);cursor:pointer;transition:color var(--mrd-transition-fast), background var(--mrd-transition-fast)}.mrd-memo-container__seg-btn.sc-mrd-memo-container:hover{color:var(--mrd-color-neutral-800)}.mrd-memo-container__seg-btn[aria-pressed=true].sc-mrd-memo-container{background:var(--mrd-color-white);color:var(--mrd-color-primary-dark);box-shadow:var(--mrd-shadow-sm)}.mrd-memo-container__seg-btn.sc-mrd-memo-container svg.sc-mrd-memo-container{width:1rem;height:1rem}.mrd-memo-container__body.sc-mrd-memo-container{padding-top:var(--mrd-space-3)}.mrd-memo-container__modal-backdrop.sc-mrd-memo-container{position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);z-index:300;display:flex;align-items:center;justify-content:center;padding:var(--mrd-space-4)}.mrd-memo-container__modal.sc-mrd-memo-container{width:100%;max-width:960px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--mrd-space-4);background:var(--mrd-color-white);border-radius:var(--mrd-border-radius-md);padding:var(--mrd-space-5);box-shadow:var(--mrd-shadow-lg)}.mrd-memo-container__modal-title.sc-mrd-memo-container{font-size:var(--mrd-font-size-lg);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0}.mrd-memo-container__modal-field.sc-mrd-memo-container{display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-memo-container__modal-error.sc-mrd-memo-container{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}.mrd-memo-container__modal-warning.sc-mrd-memo-container{margin:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-600)}.mrd-memo-container__modal-actions.sc-mrd-memo-container{display:flex;justify-content:flex-end;gap:var(--mrd-space-3);margin-top:var(--mrd-space-2);padding-top:var(--mrd-space-4);border-top:var(--mrd-border-width) solid var(--mrd-border-color)}.mrd-memo-container__modal-delete.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);margin-right:auto;background-color:transparent;color:var(--mrd-color-danger);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:var(--mrd-border-width) solid var(--mrd-color-danger);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition), color var(--mrd-transition)}.mrd-memo-container__modal-delete.sc-mrd-memo-container:hover{background-color:var(--mrd-color-danger-light);color:var(--mrd-color-danger-dark)}.mrd-memo-container__modal-delete-confirm.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:var(--mrd-color-danger);color:var(--mrd-color-white);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:none;border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition)}.mrd-memo-container__modal-delete-confirm.sc-mrd-memo-container:hover{background-color:var(--mrd-color-danger-dark)}.mrd-memo-container__modal-cancel.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:transparent;color:var(--mrd-color-neutral-600);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition), color var(--mrd-transition)}.mrd-memo-container__modal-cancel.sc-mrd-memo-container:hover{background-color:var(--mrd-color-neutral-100);color:var(--mrd-color-neutral-800)}.mrd-memo-container__modal-submit.sc-mrd-memo-container{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:var(--mrd-color-primary);color:var(--mrd-color-white);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:none;border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition)}.mrd-memo-container__modal-submit.sc-mrd-memo-container:hover{background-color:var(--mrd-color-primary-hover)}"}},[2,"mrd-memo-container",{item:[16],archetype:[16],parentId:[1,"parent-id"],containerHref:[1,"container-href"],containerRelated:[4,"container-related"],showContainerLink:[4,"show-container-link"],viewKey:[1,"view-key"],locale:[1],labelsListItems:[16],readOnly:[4,"read-only"],me:[16],mode:[32],dialogOpen:[32],editingHref:[32],dialogBody:[32],dialogTitle:[32],dialogLabels:[32],dialogImportant:[32],dialogTouched:[32],deleteConfirmOpen:[32],refresh:[64]},void 0,{dialogOpen:[{dialogOpenChanged:0}]}]);function b(){"undefined"!=typeof customElements&&["mrd-memo-container","mrd-boolean-field","mrd-list-field","mrd-memo-list","mrd-table","mrd-text-field","mrd-textarea-field"].forEach((r=>{switch(r){case"mrd-memo-container":customElements.get(n(r))||customElements.define(n(r),f);break;case"mrd-boolean-field":customElements.get(n(r))||m();break;case"mrd-list-field":customElements.get(n(r))||l();break;case"mrd-memo-list":customElements.get(n(r))||c();break;case"mrd-table":customElements.get(n(r))||h();break;case"mrd-text-field":customElements.get(n(r))||u();break;case"mrd-textarea-field":customElements.get(n(r))||v()}}))}export{f as M,b as d}