@mmlogic/components 0.3.6 → 0.3.8

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 (161) hide show
  1. package/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
  2. package/dist/cjs/index-BPj2cBXs.js +1570 -0
  3. package/dist/cjs/index.cjs.js +66 -0
  4. package/dist/cjs/loader.cjs.js +13 -0
  5. package/dist/cjs/mosterdcomponents.cjs.js +25 -0
  6. package/dist/cjs/mrd-boolean-field_20.cjs.entry.js +3961 -0
  7. package/dist/cjs/quill-DmFfnC1f.js +16272 -0
  8. package/dist/collection/collection-manifest.json +32 -0
  9. package/dist/collection/components/mrd-boolean-field/mrd-boolean-field.js +199 -0
  10. package/dist/collection/components/mrd-boolean-field/mrd-boolean-field.scss +77 -0
  11. package/dist/collection/components/mrd-currency-field/mrd-currency-field.js +248 -0
  12. package/dist/collection/components/mrd-currency-field/mrd-currency-field.scss +100 -0
  13. package/dist/collection/components/mrd-date-field/mrd-date-field.js +206 -0
  14. package/dist/collection/components/mrd-date-field/mrd-date-field.scss +66 -0
  15. package/dist/collection/components/mrd-datetime-field/mrd-datetime-field.js +240 -0
  16. package/dist/collection/components/mrd-datetime-field/mrd-datetime-field.scss +66 -0
  17. package/dist/collection/components/mrd-email-field/mrd-email-field.js +230 -0
  18. package/dist/collection/components/mrd-email-field/mrd-email-field.scss +69 -0
  19. package/dist/{mosterdcomponents/mrd-field.entry.js → collection/components/mrd-field/mrd-field.js} +179 -28
  20. package/dist/collection/components/mrd-field/mrd-field.scss +118 -0
  21. package/dist/collection/components/mrd-file-field/mrd-file-field.js +341 -0
  22. package/dist/collection/components/mrd-file-field/mrd-file-field.scss +153 -0
  23. package/dist/{mosterdcomponents/mrd-form.entry.js → collection/components/mrd-form/mrd-form.js} +308 -31
  24. package/dist/collection/components/mrd-form/mrd-form.scss +148 -0
  25. package/dist/collection/components/mrd-hyperlink-field/mrd-hyperlink-field.js +291 -0
  26. package/dist/collection/components/mrd-hyperlink-field/mrd-hyperlink-field.scss +91 -0
  27. package/dist/collection/components/mrd-image-field/mrd-image-field.js +356 -0
  28. package/dist/collection/components/mrd-image-field/mrd-image-field.scss +190 -0
  29. package/dist/{mosterdcomponents/mrd-layout-section.entry.js → collection/components/mrd-layout-section/mrd-layout-section.js} +420 -33
  30. package/dist/collection/components/mrd-layout-section/mrd-layout-section.scss +445 -0
  31. package/dist/collection/components/mrd-list-field/mrd-list-field.js +313 -0
  32. package/dist/collection/components/mrd-list-field/mrd-list-field.scss +109 -0
  33. package/dist/collection/components/mrd-longtext-field/mrd-longtext-field.js +227 -0
  34. package/dist/collection/components/mrd-longtext-field/mrd-longtext-field.scss +78 -0
  35. package/dist/collection/components/mrd-number-field/mrd-number-field.js +316 -0
  36. package/dist/collection/components/mrd-number-field/mrd-number-field.scss +77 -0
  37. package/dist/collection/components/mrd-relation-field/mrd-relation-field.js +707 -0
  38. package/dist/collection/components/mrd-relation-field/mrd-relation-field.scss +266 -0
  39. package/dist/collection/components/mrd-secret-field/mrd-secret-field.js +229 -0
  40. package/dist/collection/components/mrd-secret-field/mrd-secret-field.scss +73 -0
  41. package/dist/{mosterdcomponents/mrd-table.entry.js → collection/components/mrd-table/mrd-table.js} +394 -32
  42. package/dist/collection/components/mrd-table/mrd-table.scss +809 -0
  43. package/dist/collection/components/mrd-text-field/mrd-text-field.js +227 -0
  44. package/dist/collection/components/mrd-text-field/mrd-text-field.scss +69 -0
  45. package/dist/collection/components/mrd-textarea-field/mrd-textarea-field.js +267 -0
  46. package/dist/collection/components/mrd-textarea-field/mrd-textarea-field.scss +79 -0
  47. package/dist/collection/components/mrd-time-field/mrd-time-field.js +206 -0
  48. package/dist/collection/components/mrd-time-field/mrd-time-field.scss +66 -0
  49. package/dist/collection/dev/api.js +145 -0
  50. package/dist/collection/dev/app.js +890 -0
  51. package/dist/collection/dev/auth.js +156 -0
  52. package/dist/collection/dev/example-data.js +403 -0
  53. package/dist/collection/dev/sprites.svg +55 -0
  54. package/dist/collection/index.js +1 -0
  55. package/dist/collection/types/client-layout.js +64 -0
  56. package/dist/collection/types/index.js +1 -0
  57. package/dist/{mosterdcomponents/cell-renderer-CbRwLOo8.js → collection/utils/cell-renderer.js} +3 -9
  58. package/dist/{mosterdcomponents/format-BAfsQfy1.js → collection/utils/format.js} +7 -12
  59. package/dist/{mosterdcomponents/i18n-hoGGKbKU.js → collection/utils/i18n.js} +1 -6
  60. package/dist/{mosterdcomponents/validation-ixb43cqU.js → collection/utils/validation.js} +5 -12
  61. package/dist/components/client-layout.js +1 -0
  62. package/dist/components/format.js +1 -0
  63. package/dist/components/i18n.js +1 -0
  64. package/dist/components/index.js +1 -0
  65. package/dist/components/mrd-boolean-field.js +1 -0
  66. package/dist/components/mrd-boolean-field2.js +1 -0
  67. package/dist/components/mrd-currency-field.js +1 -0
  68. package/dist/components/mrd-currency-field2.js +1 -0
  69. package/dist/components/mrd-date-field.js +1 -0
  70. package/dist/components/mrd-date-field2.js +1 -0
  71. package/dist/components/mrd-datetime-field.js +1 -0
  72. package/dist/components/mrd-datetime-field2.js +1 -0
  73. package/dist/components/mrd-email-field.js +1 -0
  74. package/dist/components/mrd-email-field2.js +1 -0
  75. package/dist/components/mrd-field.js +1 -0
  76. package/dist/components/mrd-field2.js +1 -0
  77. package/dist/components/mrd-file-field.js +1 -0
  78. package/dist/components/mrd-file-field2.js +1 -0
  79. package/dist/components/mrd-form.js +1 -0
  80. package/dist/components/mrd-hyperlink-field.js +1 -0
  81. package/dist/components/mrd-hyperlink-field2.js +1 -0
  82. package/dist/components/mrd-image-field.js +1 -0
  83. package/dist/components/mrd-image-field2.js +1 -0
  84. package/dist/components/mrd-layout-section.js +1 -0
  85. package/dist/components/mrd-list-field.js +1 -0
  86. package/dist/components/mrd-list-field2.js +1 -0
  87. package/dist/components/mrd-longtext-field.js +1 -0
  88. package/dist/components/mrd-longtext-field2.js +1 -0
  89. package/dist/components/mrd-number-field.js +1 -0
  90. package/dist/components/mrd-number-field2.js +1 -0
  91. package/dist/components/mrd-relation-field.js +1 -0
  92. package/dist/components/mrd-relation-field2.js +1 -0
  93. package/dist/components/mrd-secret-field.js +1 -0
  94. package/dist/components/mrd-secret-field2.js +1 -0
  95. package/dist/components/mrd-table.js +1 -0
  96. package/dist/components/mrd-table2.js +1 -0
  97. package/dist/components/mrd-text-field.js +1 -0
  98. package/dist/components/mrd-text-field2.js +1 -0
  99. package/dist/components/mrd-textarea-field.js +1 -0
  100. package/dist/components/mrd-textarea-field2.js +1 -0
  101. package/dist/components/mrd-time-field.js +1 -0
  102. package/dist/components/mrd-time-field2.js +1 -0
  103. package/dist/components/quill.js +1 -0
  104. package/dist/components/validation.js +1 -0
  105. package/dist/esm/app-globals-DQuL1Twl.js +3 -0
  106. package/dist/esm/index-_tsCCkAi.js +1561 -0
  107. package/dist/{mosterdcomponents/client-layout-D88nn5zf.js → esm/index.js} +1 -4
  108. package/dist/esm/loader.js +11 -0
  109. package/dist/esm/mosterdcomponents.js +21 -0
  110. package/dist/esm/mrd-boolean-field_20.entry.js +3940 -0
  111. package/dist/{mosterdcomponents/quill-C9pgw_k-.js → esm/quill-CiuCgGz_.js} +1347 -16232
  112. package/dist/index.cjs.js +1 -0
  113. package/dist/index.js +1 -0
  114. package/dist/mosterdcomponents/index-6yQUNVww.js.map +1 -0
  115. package/dist/mosterdcomponents/index.esm.js +1 -5
  116. package/dist/mosterdcomponents/mosterdcomponents.css +1 -180
  117. package/dist/mosterdcomponents/mosterdcomponents.esm.js +1 -50
  118. package/dist/mosterdcomponents/p-7bfaee51.entry.js +1 -0
  119. package/dist/mosterdcomponents/p-CiuCgGz_.js +1 -0
  120. package/dist/mosterdcomponents/p-DQuL1Twl.js +1 -0
  121. package/dist/mosterdcomponents/p-_tsCCkAi.js +2 -0
  122. package/package.json +1 -1
  123. package/dist/mosterdcomponents/index-B_tPFIvS.js +0 -4585
  124. package/dist/mosterdcomponents/index-B_tPFIvS.js.map +0 -1
  125. package/dist/mosterdcomponents/index-I5SuYv7a.js +0 -4
  126. package/dist/mosterdcomponents/mrd-boolean-field.entry.js +0 -37
  127. package/dist/mosterdcomponents/mrd-boolean-field.entry.js.map +0 -1
  128. package/dist/mosterdcomponents/mrd-currency-field.entry.js +0 -67
  129. package/dist/mosterdcomponents/mrd-currency-field.entry.js.map +0 -1
  130. package/dist/mosterdcomponents/mrd-date-field.entry.js +0 -46
  131. package/dist/mosterdcomponents/mrd-date-field.entry.js.map +0 -1
  132. package/dist/mosterdcomponents/mrd-datetime-field.entry.js +0 -78
  133. package/dist/mosterdcomponents/mrd-datetime-field.entry.js.map +0 -1
  134. package/dist/mosterdcomponents/mrd-email-field.entry.js +0 -50
  135. package/dist/mosterdcomponents/mrd-email-field.entry.js.map +0 -1
  136. package/dist/mosterdcomponents/mrd-field.entry.js.map +0 -1
  137. package/dist/mosterdcomponents/mrd-file-field.entry.js +0 -108
  138. package/dist/mosterdcomponents/mrd-file-field.entry.js.map +0 -1
  139. package/dist/mosterdcomponents/mrd-form.entry.js.map +0 -1
  140. package/dist/mosterdcomponents/mrd-hyperlink-field.entry.js +0 -87
  141. package/dist/mosterdcomponents/mrd-hyperlink-field.entry.js.map +0 -1
  142. package/dist/mosterdcomponents/mrd-image-field.entry.js +0 -122
  143. package/dist/mosterdcomponents/mrd-image-field.entry.js.map +0 -1
  144. package/dist/mosterdcomponents/mrd-layout-section.entry.js.map +0 -1
  145. package/dist/mosterdcomponents/mrd-list-field.entry.js +0 -107
  146. package/dist/mosterdcomponents/mrd-list-field.entry.js.map +0 -1
  147. package/dist/mosterdcomponents/mrd-longtext-field.entry.js +0 -47
  148. package/dist/mosterdcomponents/mrd-longtext-field.entry.js.map +0 -1
  149. package/dist/mosterdcomponents/mrd-number-field.entry.js +0 -87
  150. package/dist/mosterdcomponents/mrd-number-field.entry.js.map +0 -1
  151. package/dist/mosterdcomponents/mrd-relation-field.entry.js +0 -267
  152. package/dist/mosterdcomponents/mrd-relation-field.entry.js.map +0 -1
  153. package/dist/mosterdcomponents/mrd-secret-field.entry.js +0 -49
  154. package/dist/mosterdcomponents/mrd-secret-field.entry.js.map +0 -1
  155. package/dist/mosterdcomponents/mrd-table.entry.js.map +0 -1
  156. package/dist/mosterdcomponents/mrd-text-field.entry.js +0 -47
  157. package/dist/mosterdcomponents/mrd-text-field.entry.js.map +0 -1
  158. package/dist/mosterdcomponents/mrd-textarea-field.entry.js +0 -86
  159. package/dist/mosterdcomponents/mrd-textarea-field.entry.js.map +0 -1
  160. package/dist/mosterdcomponents/mrd-time-field.entry.js +0 -46
  161. package/dist/mosterdcomponents/mrd-time-field.entry.js.map +0 -1
@@ -1,4 +0,0 @@
1
- import './client-layout-D88nn5zf.js';
2
- //# sourceMappingURL=index-I5SuYv7a.js.map
3
-
4
- //# sourceMappingURL=index-I5SuYv7a.js.map
@@ -1,37 +0,0 @@
1
- import { r as registerInstance, a as createEvent, h, d as Host } from './index-B_tPFIvS.js';
2
-
3
- const mrdBooleanFieldScss = () => `.sc-mrd-boolean-field-h{display:block}.mrd-boolean-field.sc-mrd-boolean-field{display:flex;align-items:center;width:100%}.mrd-boolean-field__toggle-label.sc-mrd-boolean-field{display:flex;align-items:center;gap:var(--mrd-space-3);cursor:pointer;user-select:none}.mrd-boolean-field__checkbox.sc-mrd-boolean-field{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.mrd-boolean-field__checkbox.sc-mrd-boolean-field:checked+.mrd-boolean-field__toggle.sc-mrd-boolean-field{background-color:var(--mrd-color-primary)}.mrd-boolean-field__checkbox.sc-mrd-boolean-field:checked+.mrd-boolean-field__toggle.sc-mrd-boolean-field::after{transform:translateX(20px)}.mrd-boolean-field__checkbox.sc-mrd-boolean-field:focus+.mrd-boolean-field__toggle.sc-mrd-boolean-field{box-shadow:var(--mrd-shadow-focus)}.mrd-boolean-field__checkbox.sc-mrd-boolean-field:disabled+.mrd-boolean-field__toggle.sc-mrd-boolean-field{opacity:0.5;cursor:not-allowed}.mrd-boolean-field__toggle.sc-mrd-boolean-field{position:relative;display:inline-block;width:44px;height:24px;background-color:var(--mrd-color-neutral-300);border-radius:var(--mrd-border-radius-full);transition:background-color var(--mrd-transition);flex-shrink:0}.mrd-boolean-field__toggle.sc-mrd-boolean-field::after{content:'';position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:var(--mrd-color-white);border-radius:50%;transition:transform var(--mrd-transition);box-shadow:var(--mrd-shadow-sm)}.mrd-boolean-field__text.sc-mrd-boolean-field{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-800)}.mrd-boolean-field__text--required.sc-mrd-boolean-field::after{content:' *';color:var(--mrd-color-danger)}`;
4
-
5
- const MrdBooleanField = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.mrdChange = createEvent(this, "mrdChange", 7);
9
- this.mrdBlur = createEvent(this, "mrdBlur", 7);
10
- this.name = '';
11
- this.label = '';
12
- this.value = false;
13
- this.required = false;
14
- this.disabled = false;
15
- this.locale = navigator.language;
16
- this.checked = false;
17
- this.handleChange = (e) => {
18
- this.checked = e.target.checked;
19
- this.mrdChange.emit({ name: this.name, value: this.checked });
20
- };
21
- this.handleBlur = () => {
22
- this.mrdBlur.emit({ name: this.name, value: this.checked });
23
- };
24
- }
25
- componentWillLoad() {
26
- this.checked = !!this.value;
27
- }
28
- render() {
29
- return (h(Host, { key: 'aed1d936d686870114a12aad9fc4cccb76ecd31e' }, h("div", { key: '5cc8aaa0f12d4195d02fce8a810d7d993e2e8c99', class: "mrd-boolean-field" }, h("label", { key: '41c3b3e0f01778fc2654ba86e3fe4e5a07c8537a', class: "mrd-boolean-field__toggle-label" }, h("input", { key: 'c261e6903e050d2f3d8df8abb90c74d99ed20161', class: "mrd-boolean-field__checkbox", type: "checkbox", name: this.name, checked: this.checked, disabled: this.disabled, onChange: this.handleChange, onBlur: this.handleBlur }), h("span", { key: '079ee220fe692536af15a7fb4286626102ae940e', class: "mrd-boolean-field__toggle", "aria-hidden": "true" }), this.label && (h("span", { key: '1f4f52a41f0bd6ba4c61cf9d4db74ab2f1aa8877', class: `mrd-boolean-field__text${this.required ? ' mrd-boolean-field__text--required' : ''}` }, this.label))))));
30
- }
31
- };
32
- MrdBooleanField.style = mrdBooleanFieldScss();
33
-
34
- export { MrdBooleanField as mrd_boolean_field };
35
- //# sourceMappingURL=mrd-boolean-field.entry.esm.js.map
36
-
37
- //# sourceMappingURL=mrd-boolean-field.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"mrd-boolean-field.entry.js","mappings":";;AAAA,MAAM,mBAAmB,GAAG,MAAM,CAAC,yrDAAyrD,CAAC;;MCOhtD,eAAe,GAAA,MAAA;AAL5B,IAAA,WAAA,CAAA,OAAA,EAAA;;;;AAMU,QAAA,IAAA,CAAA,IAAI,GAAW,EAAE;AACjB,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAClB,QAAA,IAAA,CAAA,KAAK,GAAY,KAAK;AACtB,QAAA,IAAA,CAAA,QAAQ,GAAY,KAAK;AACzB,QAAA,IAAA,CAAA,QAAQ,GAAY,KAAK;AACzB,QAAA,IAAA,CAAA,MAAM,GAAW,SAAS,CAAC,QAAQ;AAElC,QAAA,IAAA,CAAA,OAAO,GAAY,KAAK;AASzB,QAAA,IAAA,CAAA,YAAY,GAAG,CAAC,CAAQ,KAAI;YAClC,IAAI,CAAC,OAAO,GAAI,CAAC,CAAC,MAA2B,CAAC,OAAO;AACrD,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;AAC/D,SAAC;AAEO,QAAA,IAAA,CAAA,UAAU,GAAG,MAAK;AACxB,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;AAC7D,SAAC;AA2BF;IAtCC,iBAAiB,GAAA;QACf,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;;IAY7B,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,mBAAmB,EAAA,EAC5B,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAO,KAAK,EAAC,iCAAiC,EAAA,EAC5C,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,6BAA6B,EACnC,IAAI,EAAC,UAAU,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAA,CACvB,EACF,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,2BAA2B,EAAA,aAAA,EAAa,MAAM,EAAA,CAAQ,EACjE,IAAI,CAAC,KAAK,KACT,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAE,CAAA,uBAAA,EAA0B,IAAI,CAAC,QAAQ,GAAG,oCAAoC,GAAG,EAAE,CAAA,CAAE,EAAA,EAC/F,IAAI,CAAC,KAAK,CACN,CACR,CACK,CACJ,CACD;;;;;;;","names":[],"sources":["src/components/mrd-boolean-field/mrd-boolean-field.scss?tag=mrd-boolean-field&encapsulation=scoped","src/components/mrd-boolean-field/mrd-boolean-field.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.mrd-boolean-field {\n display: flex;\n align-items: center;\n width: 100%;\n}\n\n.mrd-boolean-field__toggle-label {\n display: flex;\n align-items: center;\n gap: var(--mrd-space-3);\n cursor: pointer;\n user-select: none;\n}\n\n.mrd-boolean-field__checkbox {\n position: absolute;\n opacity: 0;\n width: 0;\n height: 0;\n pointer-events: none;\n}\n\n.mrd-boolean-field__checkbox:checked + .mrd-boolean-field__toggle {\n background-color: var(--mrd-color-primary);\n}\n\n.mrd-boolean-field__checkbox:checked + .mrd-boolean-field__toggle::after {\n transform: translateX(20px);\n}\n\n.mrd-boolean-field__checkbox:focus + .mrd-boolean-field__toggle {\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-boolean-field__checkbox:disabled + .mrd-boolean-field__toggle {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mrd-boolean-field__toggle {\n position: relative;\n display: inline-block;\n width: 44px;\n height: 24px;\n background-color: var(--mrd-color-neutral-300);\n border-radius: var(--mrd-border-radius-full);\n transition: background-color var(--mrd-transition);\n flex-shrink: 0;\n}\n\n.mrd-boolean-field__toggle::after {\n content: '';\n position: absolute;\n top: 2px;\n left: 2px;\n width: 20px;\n height: 20px;\n background-color: var(--mrd-color-white);\n border-radius: 50%;\n transition: transform var(--mrd-transition);\n box-shadow: var(--mrd-shadow-sm);\n}\n\n.mrd-boolean-field__text {\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-base);\n color: var(--mrd-color-neutral-800);\n}\n\n.mrd-boolean-field__text--required::after {\n content: ' *';\n color: var(--mrd-color-danger);\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'mrd-boolean-field',\n styleUrl: 'mrd-boolean-field.scss',\n scoped: true,\n})\nexport class MrdBooleanField {\n @Prop() name: string = '';\n @Prop() label: string = '';\n @Prop() value: boolean = false;\n @Prop() required: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() locale: string = navigator.language;\n\n @State() checked: boolean = false;\n\n @Event() mrdChange!: EventEmitter<{ name: string; value: boolean }>;\n @Event() mrdBlur!: EventEmitter<{ name: string; value: boolean }>;\n\n componentWillLoad() {\n this.checked = !!this.value;\n }\n\n private handleChange = (e: Event) => {\n this.checked = (e.target as HTMLInputElement).checked;\n this.mrdChange.emit({ name: this.name, value: this.checked });\n };\n\n private handleBlur = () => {\n this.mrdBlur.emit({ name: this.name, value: this.checked });\n };\n\n render() {\n return (\n <Host>\n <div class=\"mrd-boolean-field\">\n <label class=\"mrd-boolean-field__toggle-label\">\n <input\n class=\"mrd-boolean-field__checkbox\"\n type=\"checkbox\"\n name={this.name}\n checked={this.checked}\n disabled={this.disabled}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n />\n <span class=\"mrd-boolean-field__toggle\" aria-hidden=\"true\"></span>\n {this.label && (\n <span class={`mrd-boolean-field__text${this.required ? ' mrd-boolean-field__text--required' : ''}`}>\n {this.label}\n </span>\n )}\n </label>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,67 +0,0 @@
1
- import { r as registerInstance, a as createEvent, h, d as Host } from './index-B_tPFIvS.js';
2
- import { t } from './i18n-hoGGKbKU.js';
3
- import { v as validateRequired } from './validation-ixb43cqU.js';
4
- import { p as parseLocalizedNumber } from './format-BAfsQfy1.js';
5
- import './index-I5SuYv7a.js';
6
- import './client-layout-D88nn5zf.js';
7
-
8
- const mrdCurrencyFieldScss = () => `.sc-mrd-currency-field-h{display:block}.mrd-currency-field.sc-mrd-currency-field{display:flex;flex-direction:column;gap:var(--mrd-space-1);width:100%}.mrd-currency-field__label.sc-mrd-currency-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-currency-field__label--required.sc-mrd-currency-field::after{content:' *';color:var(--mrd-color-danger)}.mrd-currency-field__row.sc-mrd-currency-field{display:flex;gap:var(--mrd-space-2);align-items:stretch}.mrd-currency-field__amount.sc-mrd-currency-field{flex:1;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x);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);transition:border-color var(--mrd-transition), box-shadow var(--mrd-transition);outline:none;appearance:none;text-align:right;box-sizing:border-box}.mrd-currency-field__amount.sc-mrd-currency-field:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-currency-field__amount.sc-mrd-currency-field:disabled{background-color:var(--mrd-input-bg-disabled);cursor:not-allowed;opacity:0.7}.mrd-currency-field__amount--error.sc-mrd-currency-field{border-color:var(--mrd-border-color-error)}.mrd-currency-field__amount--error.sc-mrd-currency-field:focus{box-shadow:var(--mrd-shadow-focus-error)}.mrd-currency-field__currency.sc-mrd-currency-field{width:90px;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-space-2);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-input-color);background-color:var(--mrd-color-neutral-50);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);outline:none;cursor:pointer;box-sizing:border-box;appearance:none;text-align:center}.mrd-currency-field__currency.sc-mrd-currency-field:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-currency-field__currency.sc-mrd-currency-field:disabled{background-color:var(--mrd-input-bg-disabled);cursor:not-allowed;opacity:0.7}.mrd-currency-field__error.sc-mrd-currency-field{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}`;
9
-
10
- const COMMON_CURRENCIES = [
11
- 'EUR', 'USD', 'GBP', 'CHF', 'JPY', 'CNY', 'AUD', 'CAD',
12
- 'SEK', 'NOK', 'DKK', 'NZD', 'SGD', 'HKD', 'PLN', 'CZK',
13
- 'HUF', 'MXN', 'BRL', 'INR', 'TRY', 'ZAR', 'AED', 'SAR',
14
- ];
15
- const MrdCurrencyField = class {
16
- constructor(hostRef) {
17
- registerInstance(this, hostRef);
18
- this.mrdChange = createEvent(this, "mrdChange", 7);
19
- this.mrdBlur = createEvent(this, "mrdBlur", 7);
20
- this.name = '';
21
- this.label = '';
22
- this.value = { amount: null, currency: 'EUR' };
23
- this.required = false;
24
- this.disabled = false;
25
- this.locale = navigator.language;
26
- this.amountDisplay = '';
27
- this.currency = 'EUR';
28
- this.error = '';
29
- this.handleAmountInput = (e) => {
30
- this.amountDisplay = e.target.value;
31
- };
32
- this.handleAmountBlur = (e) => {
33
- const raw = e.target.value;
34
- const parsed = parseLocalizedNumber(raw, this.locale);
35
- if (this.required && !validateRequired(raw)) {
36
- this.error = t('required', this.locale);
37
- }
38
- else {
39
- this.error = '';
40
- }
41
- const val = { amount: parsed, currency: this.currency };
42
- this.mrdChange.emit({ name: this.name, value: val });
43
- this.mrdBlur.emit({ name: this.name, value: val });
44
- };
45
- this.handleCurrencyChange = (e) => {
46
- this.currency = e.target.value;
47
- const parsed = parseLocalizedNumber(this.amountDisplay, this.locale);
48
- this.mrdChange.emit({ name: this.name, value: { amount: parsed, currency: this.currency } });
49
- };
50
- }
51
- componentWillLoad() {
52
- if (this.value) {
53
- this.currency = this.value.currency || 'EUR';
54
- this.amountDisplay = this.value.amount !== null ? String(this.value.amount) : '';
55
- }
56
- }
57
- render() {
58
- const hasError = !!this.error;
59
- return (h(Host, { key: 'd3450e9c26b1a755d3e6a5a3561d93b2ac566a28' }, h("div", { key: 'b66942cc1953daff728504deef8a9cc1330ef549', class: "mrd-currency-field" }, this.label && (h("label", { key: '3d3f2f06e9ffea944552f0f7cf3150d0246c54f0', class: `mrd-currency-field__label${this.required ? ' mrd-currency-field__label--required' : ''}` }, this.label)), h("div", { key: 'd30a2adfceefdbefef2d4fe6633a163a753b15d0', class: "mrd-currency-field__row" }, h("input", { key: '9af09b19b6cbe24498d6ca8edf7b28f675afdec5', class: `mrd-currency-field__amount${hasError ? ' mrd-currency-field__amount--error' : ''}`, type: "text", inputMode: "decimal", name: `${this.name}_amount`, value: this.amountDisplay, placeholder: "0.00", required: this.required, disabled: this.disabled, onInput: this.handleAmountInput, onBlur: this.handleAmountBlur }), h("select", { key: '21e55b04b7bf16586b5cfaa82d77db45c6dedf21', class: "mrd-currency-field__currency", disabled: this.disabled, onChange: this.handleCurrencyChange }, COMMON_CURRENCIES.map(c => (h("option", { key: c, value: c, selected: c === this.currency }, c))))), hasError && h("span", { key: '7a0006d4230557cf9c58f82f21de73b5d12f7e17', class: "mrd-currency-field__error" }, this.error))));
60
- }
61
- };
62
- MrdCurrencyField.style = mrdCurrencyFieldScss();
63
-
64
- export { MrdCurrencyField as mrd_currency_field };
65
- //# sourceMappingURL=mrd-currency-field.entry.esm.js.map
66
-
67
- //# sourceMappingURL=mrd-currency-field.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"mrd-currency-field.entry.js","mappings":"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","names":[],"sources":["src/components/mrd-currency-field/mrd-currency-field.scss?tag=mrd-currency-field&encapsulation=scoped","src/components/mrd-currency-field/mrd-currency-field.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.mrd-currency-field {\n display: flex;\n flex-direction: column;\n gap: var(--mrd-space-1);\n width: 100%;\n}\n\n.mrd-currency-field__label {\n display: block;\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-label-font-size);\n font-weight: var(--mrd-label-font-weight);\n color: var(--mrd-label-color);\n}\n\n.mrd-currency-field__label--required::after {\n content: ' *';\n color: var(--mrd-color-danger);\n}\n\n.mrd-currency-field__row {\n display: flex;\n gap: var(--mrd-space-2);\n align-items: stretch;\n}\n\n.mrd-currency-field__amount {\n flex: 1;\n height: var(--mrd-input-height);\n padding: var(--mrd-input-padding-y) var(--mrd-input-padding-x);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-base);\n color: var(--mrd-input-color);\n background-color: var(--mrd-input-bg);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius);\n transition: border-color var(--mrd-transition), box-shadow var(--mrd-transition);\n outline: none;\n appearance: none;\n text-align: right;\n box-sizing: border-box;\n}\n\n.mrd-currency-field__amount:focus {\n border-color: var(--mrd-border-color-focus);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-currency-field__amount:disabled {\n background-color: var(--mrd-input-bg-disabled);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n.mrd-currency-field__amount--error {\n border-color: var(--mrd-border-color-error);\n}\n\n.mrd-currency-field__amount--error:focus {\n box-shadow: var(--mrd-shadow-focus-error);\n}\n\n.mrd-currency-field__currency {\n width: 90px;\n height: var(--mrd-input-height);\n padding: var(--mrd-input-padding-y) var(--mrd-space-2);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-sm);\n font-weight: var(--mrd-font-weight-medium);\n color: var(--mrd-input-color);\n background-color: var(--mrd-color-neutral-50);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius);\n outline: none;\n cursor: pointer;\n box-sizing: border-box;\n appearance: none;\n text-align: center;\n}\n\n.mrd-currency-field__currency:focus {\n border-color: var(--mrd-border-color-focus);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-currency-field__currency:disabled {\n background-color: var(--mrd-input-bg-disabled);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n.mrd-currency-field__error {\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-error-font-size);\n color: var(--mrd-error-color);\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport { t } from '../../utils/i18n';\nimport { validateRequired } from '../../utils/validation';\nimport { parseLocalizedNumber } from '../../utils/format';\nimport { CurrencyValue } from '../../types';\n\nconst COMMON_CURRENCIES = [\n 'EUR', 'USD', 'GBP', 'CHF', 'JPY', 'CNY', 'AUD', 'CAD',\n 'SEK', 'NOK', 'DKK', 'NZD', 'SGD', 'HKD', 'PLN', 'CZK',\n 'HUF', 'MXN', 'BRL', 'INR', 'TRY', 'ZAR', 'AED', 'SAR',\n];\n\n@Component({\n tag: 'mrd-currency-field',\n styleUrl: 'mrd-currency-field.scss',\n scoped: true,\n})\nexport class MrdCurrencyField {\n @Prop() name: string = '';\n @Prop() label: string = '';\n @Prop() value: CurrencyValue = { amount: null, currency: 'EUR' };\n @Prop() required: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() locale: string = navigator.language;\n\n @State() amountDisplay: string = '';\n @State() currency: string = 'EUR';\n @State() error: string = '';\n\n @Event() mrdChange!: EventEmitter<{ name: string; value: CurrencyValue }>;\n @Event() mrdBlur!: EventEmitter<{ name: string; value: CurrencyValue }>;\n\n componentWillLoad() {\n if (this.value) {\n this.currency = this.value.currency || 'EUR';\n this.amountDisplay = this.value.amount !== null ? String(this.value.amount) : '';\n }\n }\n\n private handleAmountInput = (e: Event) => {\n this.amountDisplay = (e.target as HTMLInputElement).value;\n };\n\n private handleAmountBlur = (e: Event) => {\n const raw = (e.target as HTMLInputElement).value;\n const parsed = parseLocalizedNumber(raw, this.locale);\n\n if (this.required && !validateRequired(raw)) {\n this.error = t('required', this.locale);\n } else {\n this.error = '';\n }\n\n const val: CurrencyValue = { amount: parsed, currency: this.currency };\n this.mrdChange.emit({ name: this.name, value: val });\n this.mrdBlur.emit({ name: this.name, value: val });\n };\n\n private handleCurrencyChange = (e: Event) => {\n this.currency = (e.target as HTMLSelectElement).value;\n const parsed = parseLocalizedNumber(this.amountDisplay, this.locale);\n this.mrdChange.emit({ name: this.name, value: { amount: parsed, currency: this.currency } });\n };\n\n render() {\n const hasError = !!this.error;\n return (\n <Host>\n <div class=\"mrd-currency-field\">\n {this.label && (\n <label class={`mrd-currency-field__label${this.required ? ' mrd-currency-field__label--required' : ''}`}>\n {this.label}\n </label>\n )}\n <div class=\"mrd-currency-field__row\">\n <input\n class={`mrd-currency-field__amount${hasError ? ' mrd-currency-field__amount--error' : ''}`}\n type=\"text\"\n inputMode=\"decimal\"\n name={`${this.name}_amount`}\n value={this.amountDisplay}\n placeholder=\"0.00\"\n required={this.required}\n disabled={this.disabled}\n onInput={this.handleAmountInput}\n onBlur={this.handleAmountBlur}\n />\n <select\n class=\"mrd-currency-field__currency\"\n disabled={this.disabled}\n onChange={this.handleCurrencyChange}\n >\n {COMMON_CURRENCIES.map(c => (\n <option key={c} value={c} selected={c === this.currency}>\n {c}\n </option>\n ))}\n </select>\n </div>\n {hasError && <span class=\"mrd-currency-field__error\">{this.error}</span>}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,46 +0,0 @@
1
- import { r as registerInstance, a as createEvent, h, d as Host } from './index-B_tPFIvS.js';
2
- import { t } from './i18n-hoGGKbKU.js';
3
- import { v as validateRequired } from './validation-ixb43cqU.js';
4
- import './index-I5SuYv7a.js';
5
- import './client-layout-D88nn5zf.js';
6
-
7
- const mrdDateFieldScss = () => `.sc-mrd-date-field-h{display:block}.mrd-date-field.sc-mrd-date-field{display:flex;flex-direction:column;gap:var(--mrd-space-1);width:100%}.mrd-date-field__label.sc-mrd-date-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-date-field__label--required.sc-mrd-date-field::after{content:' *';color:var(--mrd-color-danger)}.mrd-date-field__input.sc-mrd-date-field{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x);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);transition:border-color var(--mrd-transition), box-shadow var(--mrd-transition);outline:none;appearance:none;box-sizing:border-box;cursor:pointer}.mrd-date-field__input.sc-mrd-date-field:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-date-field__input.sc-mrd-date-field:disabled{background-color:var(--mrd-input-bg-disabled);cursor:not-allowed;opacity:0.7}.mrd-date-field__input--error.sc-mrd-date-field{border-color:var(--mrd-border-color-error)}.mrd-date-field__input--error.sc-mrd-date-field:focus{box-shadow:var(--mrd-shadow-focus-error)}.mrd-date-field__error.sc-mrd-date-field{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}`;
8
-
9
- const MrdDateField = class {
10
- constructor(hostRef) {
11
- registerInstance(this, hostRef);
12
- this.mrdChange = createEvent(this, "mrdChange", 7);
13
- this.mrdBlur = createEvent(this, "mrdBlur", 7);
14
- this.name = '';
15
- this.label = '';
16
- this.value = '';
17
- this.required = false;
18
- this.disabled = false;
19
- this.locale = navigator.language;
20
- this.error = '';
21
- this.handleChange = (e) => {
22
- const val = e.target.value;
23
- if (this.required && !validateRequired(val)) {
24
- this.error = t('required', this.locale);
25
- }
26
- else {
27
- this.error = '';
28
- }
29
- this.mrdChange.emit({ name: this.name, value: val });
30
- };
31
- this.handleBlur = (e) => {
32
- const val = e.target.value;
33
- this.mrdBlur.emit({ name: this.name, value: val });
34
- };
35
- }
36
- render() {
37
- const hasError = !!this.error;
38
- return (h(Host, { key: '84c777fc68a95e0b1ceb08d61e3af7afa199ce94' }, h("div", { key: '6653d94ab79c74342ce792792547018e4464a814', class: "mrd-date-field" }, this.label && (h("label", { key: '2fa7b7ec50c784f9410ca48b93d50e39dc6e0bee', class: `mrd-date-field__label${this.required ? ' mrd-date-field__label--required' : ''}` }, this.label)), h("input", { key: 'f79ebbaf0e28ad7668a5400d1df514b66457b72d', class: `mrd-date-field__input${hasError ? ' mrd-date-field__input--error' : ''}`, type: "date", name: this.name, value: this.value, required: this.required, disabled: this.disabled, onChange: this.handleChange, onBlur: this.handleBlur }), hasError && h("span", { key: 'e52f0b720d76e8ba0586fb40395b6875860762db', class: "mrd-date-field__error" }, this.error))));
39
- }
40
- };
41
- MrdDateField.style = mrdDateFieldScss();
42
-
43
- export { MrdDateField as mrd_date_field };
44
- //# sourceMappingURL=mrd-date-field.entry.esm.js.map
45
-
46
- //# sourceMappingURL=mrd-date-field.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"mrd-date-field.entry.js","mappings":";;;;;;AAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,shDAAshD,CAAC;;MCS1iD,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;;AAMU,QAAA,IAAA,CAAA,IAAI,GAAW,EAAE;AACjB,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAClB,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAClB,QAAA,IAAA,CAAA,QAAQ,GAAY,KAAK;AACzB,QAAA,IAAA,CAAA,QAAQ,GAAY,KAAK;AACzB,QAAA,IAAA,CAAA,MAAM,GAAW,SAAS,CAAC,QAAQ;AAElC,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAKnB,QAAA,IAAA,CAAA,YAAY,GAAG,CAAC,CAAQ,KAAI;AAClC,YAAA,MAAM,GAAG,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK;YAChD,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;gBAC3C,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;;iBAClC;AACL,gBAAA,IAAI,CAAC,KAAK,GAAG,EAAE;;AAEjB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACtD,SAAC;AAEO,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAQ,KAAI;AAChC,YAAA,MAAM,GAAG,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK;AAChD,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACpD,SAAC;AA2BF;IAzBC,MAAM,GAAA;AACJ,QAAA,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AAC7B,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,gBAAgB,EAAA,EACxB,IAAI,CAAC,KAAK,KACT,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAO,KAAK,EAAE,CAAA,qBAAA,EAAwB,IAAI,CAAC,QAAQ,GAAG,kCAAkC,GAAG,EAAE,CAAA,CAAE,EAAA,EAC5F,IAAI,CAAC,KAAK,CACL,CACT,EACD,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,CAAA,qBAAA,EAAwB,QAAQ,GAAG,+BAA+B,GAAG,EAAE,CAAA,CAAE,EAChF,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAA,CACvB,EACD,QAAQ,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,uBAAuB,EAAA,EAAE,IAAI,CAAC,KAAK,CAAQ,CAChE,CACD;;;;;;;","names":[],"sources":["src/components/mrd-date-field/mrd-date-field.scss?tag=mrd-date-field&encapsulation=scoped","src/components/mrd-date-field/mrd-date-field.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.mrd-date-field {\n display: flex;\n flex-direction: column;\n gap: var(--mrd-space-1);\n width: 100%;\n}\n\n.mrd-date-field__label {\n display: block;\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-label-font-size);\n font-weight: var(--mrd-label-font-weight);\n color: var(--mrd-label-color);\n}\n\n.mrd-date-field__label--required::after {\n content: ' *';\n color: var(--mrd-color-danger);\n}\n\n.mrd-date-field__input {\n display: block;\n width: 100%;\n height: var(--mrd-input-height);\n padding: var(--mrd-input-padding-y) var(--mrd-input-padding-x);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-base);\n color: var(--mrd-input-color);\n background-color: var(--mrd-input-bg);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius);\n transition: border-color var(--mrd-transition), box-shadow var(--mrd-transition);\n outline: none;\n appearance: none;\n box-sizing: border-box;\n cursor: pointer;\n}\n\n.mrd-date-field__input:focus {\n border-color: var(--mrd-border-color-focus);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-date-field__input:disabled {\n background-color: var(--mrd-input-bg-disabled);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n.mrd-date-field__input--error {\n border-color: var(--mrd-border-color-error);\n}\n\n.mrd-date-field__input--error:focus {\n box-shadow: var(--mrd-shadow-focus-error);\n}\n\n.mrd-date-field__error {\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-error-font-size);\n color: var(--mrd-error-color);\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport { t } from '../../utils/i18n';\nimport { validateRequired } from '../../utils/validation';\n\n@Component({\n tag: 'mrd-date-field',\n styleUrl: 'mrd-date-field.scss',\n scoped: true,\n})\nexport class MrdDateField {\n @Prop() name: string = '';\n @Prop() label: string = '';\n @Prop() value: string = '';\n @Prop() required: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() locale: string = navigator.language;\n\n @State() error: string = '';\n\n @Event() mrdChange!: EventEmitter<{ name: string; value: string }>;\n @Event() mrdBlur!: EventEmitter<{ name: string; value: string }>;\n\n private handleChange = (e: Event) => {\n const val = (e.target as HTMLInputElement).value;\n if (this.required && !validateRequired(val)) {\n this.error = t('required', this.locale);\n } else {\n this.error = '';\n }\n this.mrdChange.emit({ name: this.name, value: val });\n };\n\n private handleBlur = (e: Event) => {\n const val = (e.target as HTMLInputElement).value;\n this.mrdBlur.emit({ name: this.name, value: val });\n };\n\n render() {\n const hasError = !!this.error;\n return (\n <Host>\n <div class=\"mrd-date-field\">\n {this.label && (\n <label class={`mrd-date-field__label${this.required ? ' mrd-date-field__label--required' : ''}`}>\n {this.label}\n </label>\n )}\n <input\n class={`mrd-date-field__input${hasError ? ' mrd-date-field__input--error' : ''}`}\n type=\"date\"\n name={this.name}\n value={this.value}\n required={this.required}\n disabled={this.disabled}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n />\n {hasError && <span class=\"mrd-date-field__error\">{this.error}</span>}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,78 +0,0 @@
1
- import { r as registerInstance, a as createEvent, h, d as Host } from './index-B_tPFIvS.js';
2
- import { t } from './i18n-hoGGKbKU.js';
3
- import { v as validateRequired } from './validation-ixb43cqU.js';
4
- import './index-I5SuYv7a.js';
5
- import './client-layout-D88nn5zf.js';
6
-
7
- const mrdDatetimeFieldScss = () => `.sc-mrd-datetime-field-h{display:block}.mrd-datetime-field.sc-mrd-datetime-field{display:flex;flex-direction:column;gap:var(--mrd-space-1);width:100%}.mrd-datetime-field__label.sc-mrd-datetime-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-datetime-field__label--required.sc-mrd-datetime-field::after{content:' *';color:var(--mrd-color-danger)}.mrd-datetime-field__input.sc-mrd-datetime-field{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x);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);transition:border-color var(--mrd-transition), box-shadow var(--mrd-transition);outline:none;appearance:none;box-sizing:border-box;cursor:pointer}.mrd-datetime-field__input.sc-mrd-datetime-field:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-datetime-field__input.sc-mrd-datetime-field:disabled{background-color:var(--mrd-input-bg-disabled);cursor:not-allowed;opacity:0.7}.mrd-datetime-field__input--error.sc-mrd-datetime-field{border-color:var(--mrd-border-color-error)}.mrd-datetime-field__input--error.sc-mrd-datetime-field:focus{box-shadow:var(--mrd-shadow-focus-error)}.mrd-datetime-field__error.sc-mrd-datetime-field{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}`;
8
-
9
- const MrdDatetimeField = class {
10
- constructor(hostRef) {
11
- registerInstance(this, hostRef);
12
- this.mrdChange = createEvent(this, "mrdChange", 7);
13
- this.mrdBlur = createEvent(this, "mrdBlur", 7);
14
- this.name = '';
15
- this.label = '';
16
- this.value = '';
17
- this.required = false;
18
- this.disabled = false;
19
- this.locale = navigator.language;
20
- this.error = '';
21
- this.localValue = '';
22
- this.handleChange = (e) => {
23
- const localVal = e.target.value;
24
- this.localValue = localVal;
25
- if (this.required && !validateRequired(localVal)) {
26
- this.error = t('required', this.locale);
27
- }
28
- else {
29
- this.error = '';
30
- }
31
- this.mrdChange.emit({ name: this.name, value: this.localToUtc(localVal) });
32
- };
33
- this.handleBlur = (e) => {
34
- const localVal = e.target.value;
35
- this.mrdBlur.emit({ name: this.name, value: this.localToUtc(localVal) });
36
- };
37
- }
38
- componentWillLoad() {
39
- this.localValue = this.utcToLocal(this.value);
40
- }
41
- valueChanged(newVal) {
42
- this.localValue = this.utcToLocal(newVal);
43
- }
44
- // UTC ISO string → "YYYY-MM-DDTHH:mm" in local timezone (for datetime-local input)
45
- utcToLocal(utcStr) {
46
- if (!utcStr)
47
- return '';
48
- const d = new Date(utcStr);
49
- if (isNaN(d.getTime()))
50
- return '';
51
- const pad = (n) => String(n).padStart(2, '0');
52
- return `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())}T${pad(d.getHours())}:${pad(d.getMinutes())}`;
53
- }
54
- // "YYYY-MM-DDTHH:mm" local time → UTC ISO string (for API)
55
- localToUtc(localStr) {
56
- if (!localStr)
57
- return '';
58
- const d = new Date(localStr);
59
- if (isNaN(d.getTime()))
60
- return '';
61
- return d.toISOString().replace(/\.\d{3}Z$/, 'Z');
62
- }
63
- render() {
64
- const hasError = !!this.error;
65
- return (h(Host, { key: '6052b08238484bee345ae4bb9b3025c7f2474c35' }, h("div", { key: 'f9073be4496e35a7d40405ae4e6a27a5c1607626', class: "mrd-datetime-field" }, this.label && (h("label", { key: '5933c3b2dfcae9bfad378441210ada6b625657a2', class: `mrd-datetime-field__label${this.required ? ' mrd-datetime-field__label--required' : ''}` }, this.label)), h("input", { key: '7a947b104c38960d2326a4877e4ca52db9fd9d84', class: `mrd-datetime-field__input${hasError ? ' mrd-datetime-field__input--error' : ''}`, type: "datetime-local", name: this.name, value: this.localValue, required: this.required, disabled: this.disabled, onChange: this.handleChange, onBlur: this.handleBlur }), hasError && h("span", { key: 'cea3dba7e14e18a3a08394ef3027b661f1808969', class: "mrd-datetime-field__error" }, this.error))));
66
- }
67
- static get watchers() { return {
68
- "value": [{
69
- "valueChanged": 0
70
- }]
71
- }; }
72
- };
73
- MrdDatetimeField.style = mrdDatetimeFieldScss();
74
-
75
- export { MrdDatetimeField as mrd_datetime_field };
76
- //# sourceMappingURL=mrd-datetime-field.entry.esm.js.map
77
-
78
- //# sourceMappingURL=mrd-datetime-field.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"mrd-datetime-field.entry.js","mappings":"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","names":[],"sources":["src/components/mrd-datetime-field/mrd-datetime-field.scss?tag=mrd-datetime-field&encapsulation=scoped","src/components/mrd-datetime-field/mrd-datetime-field.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.mrd-datetime-field {\n display: flex;\n flex-direction: column;\n gap: var(--mrd-space-1);\n width: 100%;\n}\n\n.mrd-datetime-field__label {\n display: block;\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-label-font-size);\n font-weight: var(--mrd-label-font-weight);\n color: var(--mrd-label-color);\n}\n\n.mrd-datetime-field__label--required::after {\n content: ' *';\n color: var(--mrd-color-danger);\n}\n\n.mrd-datetime-field__input {\n display: block;\n width: 100%;\n height: var(--mrd-input-height);\n padding: var(--mrd-input-padding-y) var(--mrd-input-padding-x);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-base);\n color: var(--mrd-input-color);\n background-color: var(--mrd-input-bg);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius);\n transition: border-color var(--mrd-transition), box-shadow var(--mrd-transition);\n outline: none;\n appearance: none;\n box-sizing: border-box;\n cursor: pointer;\n}\n\n.mrd-datetime-field__input:focus {\n border-color: var(--mrd-border-color-focus);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-datetime-field__input:disabled {\n background-color: var(--mrd-input-bg-disabled);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n.mrd-datetime-field__input--error {\n border-color: var(--mrd-border-color-error);\n}\n\n.mrd-datetime-field__input--error:focus {\n box-shadow: var(--mrd-shadow-focus-error);\n}\n\n.mrd-datetime-field__error {\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-error-font-size);\n color: var(--mrd-error-color);\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter, Watch } from '@stencil/core';\nimport { t } from '../../utils/i18n';\nimport { validateRequired } from '../../utils/validation';\n\n@Component({\n tag: 'mrd-datetime-field',\n styleUrl: 'mrd-datetime-field.scss',\n scoped: true,\n})\nexport class MrdDatetimeField {\n @Prop() name: string = '';\n @Prop() label: string = '';\n @Prop() value: string = '';\n @Prop() required: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() locale: string = navigator.language;\n\n @State() error: string = '';\n @State() localValue: string = '';\n\n @Event() mrdChange!: EventEmitter<{ name: string; value: string }>;\n @Event() mrdBlur!: EventEmitter<{ name: string; value: string }>;\n\n componentWillLoad() {\n this.localValue = this.utcToLocal(this.value);\n }\n\n @Watch('value')\n valueChanged(newVal: string) {\n this.localValue = this.utcToLocal(newVal);\n }\n\n // UTC ISO string → \"YYYY-MM-DDTHH:mm\" in local timezone (for datetime-local input)\n private utcToLocal(utcStr: string): string {\n if (!utcStr) return '';\n const d = new Date(utcStr);\n if (isNaN(d.getTime())) return '';\n const pad = (n: number) => String(n).padStart(2, '0');\n return `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())}T${pad(d.getHours())}:${pad(d.getMinutes())}`;\n }\n\n // \"YYYY-MM-DDTHH:mm\" local time → UTC ISO string (for API)\n private localToUtc(localStr: string): string {\n if (!localStr) return '';\n const d = new Date(localStr);\n if (isNaN(d.getTime())) return '';\n return d.toISOString().replace(/\\.\\d{3}Z$/, 'Z');\n }\n\n private handleChange = (e: Event) => {\n const localVal = (e.target as HTMLInputElement).value;\n this.localValue = localVal;\n if (this.required && !validateRequired(localVal)) {\n this.error = t('required', this.locale);\n } else {\n this.error = '';\n }\n this.mrdChange.emit({ name: this.name, value: this.localToUtc(localVal) });\n };\n\n private handleBlur = (e: Event) => {\n const localVal = (e.target as HTMLInputElement).value;\n this.mrdBlur.emit({ name: this.name, value: this.localToUtc(localVal) });\n };\n\n render() {\n const hasError = !!this.error;\n return (\n <Host>\n <div class=\"mrd-datetime-field\">\n {this.label && (\n <label class={`mrd-datetime-field__label${this.required ? ' mrd-datetime-field__label--required' : ''}`}>\n {this.label}\n </label>\n )}\n <input\n class={`mrd-datetime-field__input${hasError ? ' mrd-datetime-field__input--error' : ''}`}\n type=\"datetime-local\"\n name={this.name}\n value={this.localValue}\n required={this.required}\n disabled={this.disabled}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n />\n {hasError && <span class=\"mrd-datetime-field__error\">{this.error}</span>}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,50 +0,0 @@
1
- import { r as registerInstance, a as createEvent, h, d as Host } from './index-B_tPFIvS.js';
2
- import { t } from './i18n-hoGGKbKU.js';
3
- import { v as validateRequired, a as validateEmail } from './validation-ixb43cqU.js';
4
- import './index-I5SuYv7a.js';
5
- import './client-layout-D88nn5zf.js';
6
-
7
- const mrdEmailFieldScss = () => `.sc-mrd-email-field-h{display:block}.mrd-email-field.sc-mrd-email-field{display:flex;flex-direction:column;gap:var(--mrd-space-1);width:100%}.mrd-email-field__label.sc-mrd-email-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-email-field__label--required.sc-mrd-email-field::after{content:' *';color:var(--mrd-color-danger)}.mrd-email-field__input.sc-mrd-email-field{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x);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);transition:border-color var(--mrd-transition), box-shadow var(--mrd-transition);outline:none;appearance:none;box-sizing:border-box}.mrd-email-field__input.sc-mrd-email-field::placeholder{color:var(--mrd-input-placeholder-color)}.mrd-email-field__input.sc-mrd-email-field:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-email-field__input.sc-mrd-email-field:disabled{background-color:var(--mrd-input-bg-disabled);cursor:not-allowed;opacity:0.7}.mrd-email-field__input--error.sc-mrd-email-field{border-color:var(--mrd-border-color-error)}.mrd-email-field__input--error.sc-mrd-email-field:focus{box-shadow:var(--mrd-shadow-focus-error)}.mrd-email-field__error.sc-mrd-email-field{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}`;
8
-
9
- const MrdEmailField = class {
10
- constructor(hostRef) {
11
- registerInstance(this, hostRef);
12
- this.mrdChange = createEvent(this, "mrdChange", 7);
13
- this.mrdBlur = createEvent(this, "mrdBlur", 7);
14
- this.name = '';
15
- this.label = '';
16
- this.value = '';
17
- this.placeholder = '';
18
- this.required = false;
19
- this.disabled = false;
20
- this.locale = navigator.language;
21
- this.error = '';
22
- this.handleInput = (e) => {
23
- const val = e.target.value;
24
- this.mrdChange.emit({ name: this.name, value: val });
25
- };
26
- this.handleBlur = (e) => {
27
- const val = e.target.value;
28
- if (this.required && !validateRequired(val)) {
29
- this.error = t('required', this.locale);
30
- }
31
- else if (val && !validateEmail(val)) {
32
- this.error = t('invalid_email', this.locale);
33
- }
34
- else {
35
- this.error = '';
36
- }
37
- this.mrdBlur.emit({ name: this.name, value: val });
38
- };
39
- }
40
- render() {
41
- const hasError = !!this.error;
42
- return (h(Host, { key: '851ec092957ab86e811b292eaabe29d04a600fe0' }, h("div", { key: '2d8969d60378f3161656369494549d682de8ec0e', class: "mrd-email-field" }, this.label && (h("label", { key: '7a35cc60d4804097e1a54f984c7da1829f6bbd11', class: `mrd-email-field__label${this.required ? ' mrd-email-field__label--required' : ''}` }, this.label)), h("input", { key: '1fc20e860aa021886f7ed522c3a0c8dd2cb1e093', class: `mrd-email-field__input${hasError ? ' mrd-email-field__input--error' : ''}`, type: "email", name: this.name, value: this.value, placeholder: this.placeholder || 'name@example.com', required: this.required, disabled: this.disabled, onInput: this.handleInput, onBlur: this.handleBlur }), hasError && h("span", { key: 'a44b3b41b7cd6b8c643cc64e6aadd884a2ba4961', class: "mrd-email-field__error" }, this.error))));
43
- }
44
- };
45
- MrdEmailField.style = mrdEmailFieldScss();
46
-
47
- export { MrdEmailField as mrd_email_field };
48
- //# sourceMappingURL=mrd-email-field.entry.esm.js.map
49
-
50
- //# sourceMappingURL=mrd-email-field.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"mrd-email-field.entry.js","mappings":";;;;;;AAAA,MAAM,iBAAiB,GAAG,MAAM,CAAC,2nDAA2nD,CAAC;;MCShpD,aAAa,GAAA,MAAA;AAL1B,IAAA,WAAA,CAAA,OAAA,EAAA;;;;AAMU,QAAA,IAAA,CAAA,IAAI,GAAW,EAAE;AACjB,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAClB,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAClB,QAAA,IAAA,CAAA,WAAW,GAAW,EAAE;AACxB,QAAA,IAAA,CAAA,QAAQ,GAAY,KAAK;AACzB,QAAA,IAAA,CAAA,QAAQ,GAAY,KAAK;AACzB,QAAA,IAAA,CAAA,MAAM,GAAW,SAAS,CAAC,QAAQ;AAElC,QAAA,IAAA,CAAA,KAAK,GAAW,EAAE;AAKnB,QAAA,IAAA,CAAA,WAAW,GAAG,CAAC,CAAQ,KAAI;AACjC,YAAA,MAAM,GAAG,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK;AAChD,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACtD,SAAC;AAEO,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAQ,KAAI;AAChC,YAAA,MAAM,GAAG,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK;YAChD,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;gBAC3C,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;;iBAClC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE;gBACrC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC;;iBACvC;AACL,gBAAA,IAAI,CAAC,KAAK,GAAG,EAAE;;AAEjB,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACpD,SAAC;AA4BF;IA1BC,MAAM,GAAA;AACJ,QAAA,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK;AAC7B,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,iBAAiB,EAAA,EACzB,IAAI,CAAC,KAAK,KACT,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAO,KAAK,EAAE,CAAA,sBAAA,EAAyB,IAAI,CAAC,QAAQ,GAAG,mCAAmC,GAAG,EAAE,CAAA,CAAE,EAAA,EAC9F,IAAI,CAAC,KAAK,CACL,CACT,EACD,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,yBAAyB,QAAQ,GAAG,gCAAgC,GAAG,EAAE,CAAA,CAAE,EAClF,IAAI,EAAC,OAAO,EACZ,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,kBAAkB,EACnD,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,MAAM,EAAE,IAAI,CAAC,UAAU,EAAA,CACvB,EACD,QAAQ,IAAI,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,wBAAwB,EAAA,EAAE,IAAI,CAAC,KAAK,CAAQ,CACjE,CACD;;;;;;;","names":[],"sources":["src/components/mrd-email-field/mrd-email-field.scss?tag=mrd-email-field&encapsulation=scoped","src/components/mrd-email-field/mrd-email-field.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.mrd-email-field {\n display: flex;\n flex-direction: column;\n gap: var(--mrd-space-1);\n width: 100%;\n}\n\n.mrd-email-field__label {\n display: block;\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-label-font-size);\n font-weight: var(--mrd-label-font-weight);\n color: var(--mrd-label-color);\n}\n\n.mrd-email-field__label--required::after {\n content: ' *';\n color: var(--mrd-color-danger);\n}\n\n.mrd-email-field__input {\n display: block;\n width: 100%;\n height: var(--mrd-input-height);\n padding: var(--mrd-input-padding-y) var(--mrd-input-padding-x);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-base);\n color: var(--mrd-input-color);\n background-color: var(--mrd-input-bg);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius);\n transition: border-color var(--mrd-transition), box-shadow var(--mrd-transition);\n outline: none;\n appearance: none;\n box-sizing: border-box;\n}\n\n.mrd-email-field__input::placeholder {\n color: var(--mrd-input-placeholder-color);\n}\n\n.mrd-email-field__input:focus {\n border-color: var(--mrd-border-color-focus);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-email-field__input:disabled {\n background-color: var(--mrd-input-bg-disabled);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n.mrd-email-field__input--error {\n border-color: var(--mrd-border-color-error);\n}\n\n.mrd-email-field__input--error:focus {\n box-shadow: var(--mrd-shadow-focus-error);\n}\n\n.mrd-email-field__error {\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-error-font-size);\n color: var(--mrd-error-color);\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport { t } from '../../utils/i18n';\nimport { validateRequired, validateEmail } from '../../utils/validation';\n\n@Component({\n tag: 'mrd-email-field',\n styleUrl: 'mrd-email-field.scss',\n scoped: true,\n})\nexport class MrdEmailField {\n @Prop() name: string = '';\n @Prop() label: string = '';\n @Prop() value: string = '';\n @Prop() placeholder: string = '';\n @Prop() required: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() locale: string = navigator.language;\n\n @State() error: string = '';\n\n @Event() mrdChange!: EventEmitter<{ name: string; value: string }>;\n @Event() mrdBlur!: EventEmitter<{ name: string; value: string }>;\n\n private handleInput = (e: Event) => {\n const val = (e.target as HTMLInputElement).value;\n this.mrdChange.emit({ name: this.name, value: val });\n };\n\n private handleBlur = (e: Event) => {\n const val = (e.target as HTMLInputElement).value;\n if (this.required && !validateRequired(val)) {\n this.error = t('required', this.locale);\n } else if (val && !validateEmail(val)) {\n this.error = t('invalid_email', this.locale);\n } else {\n this.error = '';\n }\n this.mrdBlur.emit({ name: this.name, value: val });\n };\n\n render() {\n const hasError = !!this.error;\n return (\n <Host>\n <div class=\"mrd-email-field\">\n {this.label && (\n <label class={`mrd-email-field__label${this.required ? ' mrd-email-field__label--required' : ''}`}>\n {this.label}\n </label>\n )}\n <input\n class={`mrd-email-field__input${hasError ? ' mrd-email-field__input--error' : ''}`}\n type=\"email\"\n name={this.name}\n value={this.value}\n placeholder={this.placeholder || 'name@example.com'}\n required={this.required}\n disabled={this.disabled}\n onInput={this.handleInput}\n onBlur={this.handleBlur}\n />\n {hasError && <span class=\"mrd-email-field__error\">{this.error}</span>}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"mrd-field.entry.js","mappings":"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","names":[],"sources":["src/components/mrd-field/mrd-field.scss?tag=mrd-field&encapsulation=scoped","src/components/mrd-field/mrd-field.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.mrd-field__inner {\n display: block;\n width: 100%;\n}\n\n.mrd-field__history-editor {\n margin-top: var(--mrd-space-2);\n display: flex;\n flex-direction: column;\n gap: var(--mrd-space-1);\n}\n\n.mrd-field__history-editor-label {\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-xs);\n font-weight: var(--mrd-font-weight-medium);\n color: var(--mrd-color-neutral-500);\n}\n\n.mrd-field__history-editor-row {\n display: flex;\n align-items: center;\n gap: var(--mrd-space-2);\n}\n\n.mrd-field__history-editor-sep {\n flex-shrink: 0;\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-xs);\n color: var(--mrd-color-neutral-500);\n}\n\n.mrd-field__history-editor-value {\n flex: 1 1 0;\n min-width: 0;\n height: var(--mrd-input-height);\n padding: 0 var(--mrd-space-3);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-sm);\n color: var(--mrd-color-neutral-800);\n background-color: var(--mrd-color-white);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius-md);\n outline: none;\n transition: border-color var(--mrd-transition-fast), box-shadow var(--mrd-transition-fast);\n}\n\n.mrd-field__history-editor-value:focus {\n border-color: var(--mrd-color-primary);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-field__history-editor-until {\n flex: 0 0 10rem;\n height: var(--mrd-input-height);\n padding: 0 var(--mrd-space-3);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-sm);\n color: var(--mrd-color-neutral-800);\n background-color: var(--mrd-color-white);\n border: var(--mrd-border-width) solid var(--mrd-border-color);\n border-radius: var(--mrd-border-radius-md);\n outline: none;\n transition: border-color var(--mrd-transition-fast), box-shadow var(--mrd-transition-fast);\n}\n\n.mrd-field__history-editor-until:focus {\n border-color: var(--mrd-color-primary);\n box-shadow: var(--mrd-shadow-focus);\n}\n\n.mrd-field__history-editor-remove {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: 2rem;\n height: 2rem;\n padding: 0;\n background: transparent;\n border: none;\n border-radius: var(--mrd-border-radius-sm);\n color: var(--mrd-color-neutral-400);\n cursor: pointer;\n transition: color var(--mrd-transition-fast), background-color var(--mrd-transition-fast);\n}\n\n.mrd-field__history-editor-remove:hover {\n color: var(--mrd-color-danger);\n background-color: var(--mrd-color-danger-light);\n}\n\n.mrd-field__history-editor-remove svg {\n width: 1rem;\n height: 1rem;\n}\n\n.mrd-field__history-editor-add {\n align-self: flex-start;\n padding: var(--mrd-space-1) var(--mrd-space-3);\n font-family: var(--mrd-font-family);\n font-size: var(--mrd-font-size-xs);\n font-weight: var(--mrd-font-weight-medium);\n color: var(--mrd-color-primary);\n background: transparent;\n border: var(--mrd-border-width) solid var(--mrd-color-primary);\n border-radius: var(--mrd-border-radius-md);\n cursor: pointer;\n transition: background-color var(--mrd-transition-fast), color var(--mrd-transition-fast);\n}\n\n.mrd-field__history-editor-add:hover {\n background-color: var(--mrd-color-primary-light);\n}\n","import { Component, Host, h, Prop, Event, EventEmitter, State, Element, Watch } from '@stencil/core';\nimport {\n ClientLayoutItem,\n ClientLayoutItemType,\n ClientLayoutItemFieldDataType,\n ClientLayoutItemRelationDisplayType,\n} from '../../types';\nimport { t } from '../../utils/i18n';\n\n@Component({\n tag: 'mrd-field',\n styleUrl: 'mrd-field.scss',\n scoped: true,\n})\nexport class MrdField {\n @Element() el!: HTMLElement;\n\n @Prop() item!: ClientLayoutItem;\n @Prop() locale: string = navigator.language;\n @Prop() value: unknown;\n\n @Event() mrdChange!: EventEmitter<{ name: string; value: unknown }>;\n @Event() mrdBlur!: EventEmitter<{ name: string; value: unknown }>;\n @Event() mrdSearch!: EventEmitter<{ name: string; query: string; relatedClass: string }>;\n @Event() mrdFetchAll!: EventEmitter<{ name: string; relatedClass: string; mostSignificantClass?: string; commonRelation?: string; filter?: string; filterValue?: string }>;\n @Event() mrdUpload!: EventEmitter<{ name: string; file: File }>;\n\n @State() historyEntries: Array<{ value: string; until: string }> = [];\n @State() currentValue: unknown = undefined;\n\n componentWillLoad() {\n this.initHistoryState();\n }\n\n @Watch('value')\n valueChanged() {\n this.initHistoryState();\n }\n\n private initHistoryState() {\n const hist = this.item?.historyEnabled ?? this.item?.field?.historyEnabled;\n if (!hist) return;\n const raw = this.value as any;\n this.currentValue = raw?.current ?? raw;\n this.historyEntries = Array.isArray(raw?.history) ? [...raw.history] : [];\n }\n\n private handleChange = (e: CustomEvent<{ name: string; value: unknown }>) => {\n e.stopPropagation();\n const hist = this.item?.historyEnabled ?? this.item?.field?.historyEnabled;\n if (hist) {\n this.currentValue = e.detail.value;\n this.mrdChange.emit({\n name: e.detail.name,\n value: { current: e.detail.value, history: this.historyEntries },\n });\n } else {\n this.mrdChange.emit(e.detail);\n }\n };\n\n private handleBlur = (e: CustomEvent<{ name: string; value: unknown }>) => {\n e.stopPropagation();\n const hist = this.item?.historyEnabled ?? this.item?.field?.historyEnabled;\n if (hist) {\n this.mrdBlur.emit({\n name: e.detail.name,\n value: { current: this.currentValue, history: this.historyEntries },\n });\n } else {\n this.mrdBlur.emit(e.detail);\n }\n };\n\n private handleSearch = (e: CustomEvent<{ name: string; query: string; relatedClass: string }>) => {\n e.stopPropagation();\n this.mrdSearch.emit(e.detail);\n };\n\n private handleFetchAll = (e: CustomEvent<{ name: string; relatedClass: string; mostSignificantClass?: string; commonRelation?: string; filter?: string; filterValue?: string }>) => {\n e.stopPropagation();\n this.mrdFetchAll.emit(e.detail);\n };\n\n private handleUpload = (e: CustomEvent<{ name: string; file: File }>) => {\n e.stopPropagation();\n this.mrdUpload.emit(e.detail);\n };\n\n private getDisplayValue(): unknown {\n const hist = this.item?.historyEnabled ?? this.item?.field?.historyEnabled;\n if (hist && this.value !== null && typeof this.value === 'object' && 'current' in (this.value as object)) {\n return (this.value as any).current;\n }\n return this.value;\n }\n\n private historyValueInputType(): string {\n switch (this.item?.dataType) {\n case ClientLayoutItemFieldDataType.DATE: return 'date';\n case ClientLayoutItemFieldDataType.DATETIME: return 'datetime-local';\n case ClientLayoutItemFieldDataType.TIME: return 'time';\n case ClientLayoutItemFieldDataType.INTEGER:\n case ClientLayoutItemFieldDataType.DECIMAL:\n case ClientLayoutItemFieldDataType.PERCENTAGE: return 'number';\n case ClientLayoutItemFieldDataType.EMAIL: return 'email';\n default: return 'text';\n }\n }\n\n private emitHistoryChange(entries: Array<{ value: string; until: string }>) {\n this.historyEntries = entries;\n this.mrdChange.emit({\n name: this.item.name!,\n value: { current: this.currentValue, history: entries },\n });\n }\n\n private renderHistoryEditor(): any {\n const hist = this.item?.historyEnabled ?? this.item?.field?.historyEnabled;\n if (!hist) return null;\n const { locale } = this;\n const valueType = this.historyValueInputType();\n\n const updateEntry = (i: number, field: 'value' | 'until', val: string) => {\n const updated = this.historyEntries.map((e, idx) => idx === i ? { ...e, [field]: val } : e);\n this.emitHistoryChange(updated);\n };\n\n const removeEntry = (i: number) => {\n this.emitHistoryChange(this.historyEntries.filter((_, idx) => idx !== i));\n };\n\n const addEntry = () => {\n this.emitHistoryChange([...this.historyEntries, { value: '', until: '' }]);\n };\n\n return (\n <div class=\"mrd-field__history-editor\">\n {this.historyEntries.length > 0 && (\n <span class=\"mrd-field__history-editor-label\">{t('history_badge_tooltip', locale)}</span>\n )}\n {this.historyEntries.map((entry, i) => (\n <div key={String(i)} class=\"mrd-field__history-editor-row\">\n <input\n class=\"mrd-field__history-editor-value\"\n type={valueType}\n value={entry.value}\n onInput={(e) => updateEntry(i, 'value', (e.target as HTMLInputElement).value)}\n />\n <span class=\"mrd-field__history-editor-sep\">{t('history_until', locale)}</span>\n <input\n class=\"mrd-field__history-editor-until\"\n type=\"date\"\n value={entry.until}\n onInput={(e) => updateEntry(i, 'until', (e.target as HTMLInputElement).value)}\n />\n <button\n type=\"button\"\n class=\"mrd-field__history-editor-remove\"\n onClick={() => removeEntry(i)}\n aria-label={t('remove', locale)}\n >\n <svg viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\n <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\"/>\n </svg>\n </button>\n </div>\n ))}\n <button type=\"button\" class=\"mrd-field__history-editor-add\" onClick={addEntry}>\n + {t('add', locale)}\n </button>\n </div>\n );\n }\n\n private renderLeafField(displayValue: unknown): any {\n const { item, locale } = this;\n const commonProps = {\n name: item.name,\n label: item.label,\n required: item.required,\n disabled: item.disabled ?? false,\n locale,\n onMrdChange: this.handleChange,\n onMrdBlur: this.handleBlur,\n };\n\n switch (item.dataType) {\n case ClientLayoutItemFieldDataType.TEXT:\n return (\n <mrd-text-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.TEXTBLOCK:\n return (\n <mrd-textarea-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.INTEGER:\n case ClientLayoutItemFieldDataType.DECIMAL:\n case ClientLayoutItemFieldDataType.PERCENTAGE:\n return (\n <mrd-number-field\n {...commonProps}\n value={(displayValue as number) ?? null}\n dataType={item.dataType}\n decimalPrecision={item.decimalPrecision ?? 2}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.CURRENCY:\n return (\n <mrd-currency-field\n {...commonProps}\n value={(displayValue as { amount: number | null; currency: string }) ?? { amount: null, currency: item.currencyCode ?? 'EUR' }}\n />\n );\n\n case ClientLayoutItemFieldDataType.BOOLEAN:\n return (\n <mrd-boolean-field\n {...commonProps}\n value={(displayValue as boolean) ?? false}\n />\n );\n\n case ClientLayoutItemFieldDataType.DATE:\n return (\n <mrd-date-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.DATETIME:\n return (\n <mrd-datetime-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.TIME:\n return (\n <mrd-time-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.EMAIL:\n return (\n <mrd-email-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.HYPERLINK:\n return (\n <mrd-hyperlink-field\n {...commonProps}\n value={(displayValue as any) ?? ''}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.LIST:\n return (\n <mrd-list-field\n {...commonProps}\n value={(displayValue as string | string[]) ?? ''}\n multiple={item.multiple ?? false}\n listItems={item.listItems ?? []}\n />\n );\n\n case ClientLayoutItemFieldDataType.FILE:\n return (\n <mrd-file-field\n {...commonProps}\n value={displayValue}\n accept={item.accept ?? ''}\n maxSize={item.maxSize ?? 0}\n onMrdUpload={this.handleUpload}\n />\n );\n\n case ClientLayoutItemFieldDataType.IMAGE:\n return (\n <mrd-image-field\n {...commonProps}\n value={displayValue}\n accept={item.accept ?? 'image/*'}\n maxSize={item.maxSize ?? 0}\n onMrdUpload={this.handleUpload}\n />\n );\n\n case ClientLayoutItemFieldDataType.LONGTEXT:\n return (\n <mrd-longtext-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n case ClientLayoutItemFieldDataType.SECRET:\n return (\n <mrd-secret-field\n {...commonProps}\n value={(displayValue as string) ?? ''}\n placeholder={item.placeholder ?? ''}\n />\n );\n\n default:\n return null;\n }\n }\n\n render() {\n const { item, locale, value } = this;\n\n if (item.type === ClientLayoutItemType.RELATION) {\n return (\n <Host>\n <mrd-relation-field\n name={item.name}\n label={item.label}\n required={item.required}\n disabled={item.disabled ?? false}\n locale={locale}\n relatedClass={item.relatedClass}\n mostSignificantClass={item.mostSignificantClass ?? ''}\n displayType={item.displayType ?? ClientLayoutItemRelationDisplayType.SEARCH}\n editBehavior={item.editBehavior ?? null}\n commonRelation={item.commonRelation}\n multiple={item.multiple ?? false}\n dropdownValues={item.dropdownValues ?? []}\n value={value as any}\n onMrdChange={this.handleChange}\n onMrdBlur={this.handleBlur}\n onMrdSearch={this.handleSearch}\n onMrdFetchAll={this.handleFetchAll}\n />\n </Host>\n );\n }\n\n if (item.type !== ClientLayoutItemType.FIELD) {\n return <Host></Host>;\n }\n\n const displayValue = this.getDisplayValue();\n return (\n <Host>\n <div class=\"mrd-field__inner\">\n {this.renderLeafField(displayValue)}\n {this.renderHistoryEditor()}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,108 +0,0 @@
1
- import { r as registerInstance, a as createEvent, h, d as Host } from './index-B_tPFIvS.js';
2
- import { t } from './i18n-hoGGKbKU.js';
3
-
4
- const mrdFileFieldScss = () => `.sc-mrd-file-field-h{display:block}.mrd-file-field.sc-mrd-file-field{display:flex;flex-direction:column;gap:var(--mrd-space-1);width:100%}.mrd-file-field__label.sc-mrd-file-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-file-field__label--required.sc-mrd-file-field::after{content:' *';color:var(--mrd-color-danger)}.mrd-file-field__zone.sc-mrd-file-field{display:flex;align-items:center;justify-content:center;padding:var(--mrd-space-6);border:2px dashed var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);background-color:var(--mrd-color-neutral-50);cursor:pointer;transition:border-color var(--mrd-transition), background-color var(--mrd-transition);min-height:100px;position:relative}.mrd-file-field__zone.sc-mrd-file-field:hover{border-color:var(--mrd-color-primary);background-color:var(--mrd-color-primary-light)}.mrd-file-field__zone--dragging.sc-mrd-file-field{border-color:var(--mrd-color-primary);background-color:var(--mrd-color-primary-light)}.mrd-file-field__zone--error.sc-mrd-file-field{border-color:var(--mrd-border-color-error)}.mrd-file-field__zone--disabled.sc-mrd-file-field{opacity:0.6;cursor:not-allowed}.mrd-file-field__zone--disabled.sc-mrd-file-field:hover{border-color:var(--mrd-border-color);background-color:var(--mrd-color-neutral-50)}.mrd-file-field__input.sc-mrd-file-field{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;pointer-events:none}.mrd-file-field__prompt.sc-mrd-file-field{display:flex;flex-direction:column;align-items:center;gap:var(--mrd-space-2);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-500);text-align:center}.mrd-file-field__upload-icon.sc-mrd-file-field{width:32px;height:32px;color:var(--mrd-color-neutral-400)}.mrd-file-field__browse.sc-mrd-file-field{color:var(--mrd-color-primary);font-weight:var(--mrd-font-weight-medium);text-decoration:underline}.mrd-file-field__selected.sc-mrd-file-field{display:flex;align-items:center;gap:var(--mrd-space-2);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-700)}.mrd-file-field__icon.sc-mrd-file-field{width:20px;height:20px;color:var(--mrd-color-primary);flex-shrink:0}.mrd-file-field__filename.sc-mrd-file-field{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.mrd-file-field__clear.sc-mrd-file-field{background:none;border:none;cursor:pointer;color:var(--mrd-color-neutral-400);font-size:var(--mrd-font-size-sm);padding:var(--mrd-space-1);border-radius:var(--mrd-border-radius-sm);line-height:1}.mrd-file-field__clear.sc-mrd-file-field:hover{color:var(--mrd-color-danger);background-color:var(--mrd-color-danger-light)}.mrd-file-field__spinner.sc-mrd-file-field{display:inline-block;flex-shrink:0;width:18px;height:18px;border:2px solid var(--mrd-color-neutral-300);border-top-color:var(--mrd-color-primary);border-radius:50%;animation:mrd-file-spin 0.6s linear infinite}@keyframes mrd-file-spin{to{transform:rotate(360deg)}}.mrd-file-field__error.sc-mrd-file-field{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}`;
5
-
6
- const MrdFileField = class {
7
- constructor(hostRef) {
8
- registerInstance(this, hostRef);
9
- this.mrdChange = createEvent(this, "mrdChange", 7);
10
- this.mrdBlur = createEvent(this, "mrdBlur", 7);
11
- this.mrdUpload = createEvent(this, "mrdUpload", 7);
12
- this.name = '';
13
- this.label = '';
14
- this.value = null;
15
- this.required = false;
16
- this.disabled = false;
17
- this.locale = navigator.language;
18
- this.accept = '';
19
- this.maxSize = 0; // bytes, 0 = no limit
20
- this.fileName = '';
21
- this.isDragging = false;
22
- this.uploading = false;
23
- this.error = '';
24
- this.handleInputChange = (e) => {
25
- var _a;
26
- const files = e.target.files;
27
- this.handleFile((_a = files === null || files === void 0 ? void 0 : files[0]) !== null && _a !== void 0 ? _a : null);
28
- };
29
- this.handleDragOver = (e) => {
30
- e.preventDefault();
31
- this.isDragging = true;
32
- };
33
- this.handleDragLeave = () => {
34
- this.isDragging = false;
35
- };
36
- this.handleDrop = (e) => {
37
- var _a, _b, _c;
38
- e.preventDefault();
39
- this.isDragging = false;
40
- const file = (_c = (_b = (_a = e.dataTransfer) === null || _a === void 0 ? void 0 : _a.files) === null || _b === void 0 ? void 0 : _b[0]) !== null && _c !== void 0 ? _c : null;
41
- this.handleFile(file);
42
- };
43
- this.handleZoneClick = () => {
44
- var _a;
45
- if (!this.disabled && !this.uploading) {
46
- (_a = this.fileInputRef) === null || _a === void 0 ? void 0 : _a.click();
47
- }
48
- };
49
- this.handleClear = (e) => {
50
- e.stopPropagation();
51
- this.fileName = '';
52
- this.error = '';
53
- this.uploading = false;
54
- if (this.fileInputRef)
55
- this.fileInputRef.value = '';
56
- this.mrdChange.emit({ name: this.name, value: null });
57
- };
58
- }
59
- /** When the host provides a URI back via setFieldValue, the upload is done. */
60
- valueChanged(newVal) {
61
- if (typeof newVal === 'string' && newVal) {
62
- this.uploading = false;
63
- }
64
- else if (!newVal) {
65
- this.uploading = false;
66
- this.fileName = '';
67
- }
68
- }
69
- handleFile(file) {
70
- if (!file) {
71
- this.fileName = '';
72
- this.uploading = false;
73
- this.mrdChange.emit({ name: this.name, value: null });
74
- return;
75
- }
76
- if (this.maxSize > 0 && file.size > this.maxSize) {
77
- this.error = t('file_too_large', this.locale);
78
- return;
79
- }
80
- this.error = '';
81
- this.fileName = file.name;
82
- this.uploading = true;
83
- this.mrdChange.emit({ name: this.name, value: file });
84
- this.mrdUpload.emit({ name: this.name, file });
85
- }
86
- render() {
87
- const hasFile = this.uploading || (typeof this.value === 'string' && this.value) || this.fileName;
88
- const hasError = !!this.error;
89
- const zoneClass = [
90
- 'mrd-file-field__zone',
91
- this.isDragging ? 'mrd-file-field__zone--dragging' : '',
92
- hasError ? 'mrd-file-field__zone--error' : '',
93
- this.disabled || this.uploading ? 'mrd-file-field__zone--disabled' : '',
94
- ].filter(Boolean).join(' ');
95
- return (h(Host, { key: '2090102df8169226c1e66f87cbc837296e4b55d4' }, h("div", { key: '7a37a09df1bfa2eaf28ed04c806ad5f7c0337bb0', class: "mrd-file-field" }, this.label && (h("label", { key: '8f1fcb8adbb66b792be902c7c548e50db99b6a53', class: `mrd-file-field__label${this.required ? ' mrd-file-field__label--required' : ''}` }, this.label)), h("div", { key: '66d992298f537b24d69ce3ead3dd229f6d124f3d', class: zoneClass, onClick: this.handleZoneClick, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, onDrop: this.handleDrop }, h("input", { key: '95ba6560e71ee08c6b2526802727b29a18cdc454', ref: el => (this.fileInputRef = el), class: "mrd-file-field__input", type: "file", name: this.name, accept: this.accept, disabled: this.disabled || this.uploading, required: this.required && !hasFile, onChange: this.handleInputChange }), hasFile ? (h("div", { class: "mrd-file-field__selected" }, this.uploading ? (h("span", { class: "mrd-file-field__spinner", "aria-label": t('loading', this.locale) })) : (h("svg", { class: "mrd-file-field__icon", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2" }, h("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }), h("polyline", { points: "14 2 14 8 20 8" }))), h("span", { class: "mrd-file-field__filename" }, this.fileName), !this.uploading && (h("button", { class: "mrd-file-field__clear", type: "button", onClick: this.handleClear, "aria-label": t('clear', this.locale) }, "\u2715")))) : (h("div", { class: "mrd-file-field__prompt" }, h("svg", { class: "mrd-file-field__upload-icon", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2" }, h("polyline", { points: "16 16 12 12 8 16" }), h("line", { x1: "12", y1: "12", x2: "12", y2: "21" }), h("path", { d: "M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3" })), h("span", null, t('drop_file_here', this.locale), ' ', h("span", { class: "mrd-file-field__browse" }, t('browse', this.locale)))))), hasError && h("span", { key: 'a6020e63bebb01e31a980a903f81badd486585aa', class: "mrd-file-field__error" }, this.error))));
96
- }
97
- static get watchers() { return {
98
- "value": [{
99
- "valueChanged": 0
100
- }]
101
- }; }
102
- };
103
- MrdFileField.style = mrdFileFieldScss();
104
-
105
- export { MrdFileField as mrd_file_field };
106
- //# sourceMappingURL=mrd-file-field.entry.esm.js.map
107
-
108
- //# sourceMappingURL=mrd-file-field.entry.js.map