@mgdis/mg-components 4.0.1 → 4.1.0

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 (120) hide show
  1. package/dist/.storybook/utils.js +24 -0
  2. package/dist/cjs/{index-a39c5567.js → index-179621c8.js} +11 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{mg-badge_21.cjs.entry.js → mg-badge_24.cjs.entry.js} +2362 -213
  5. package/dist/cjs/mg-components.cjs.js +2 -2
  6. package/dist/cjs/mg-modal.cjs.entry.js +1 -1
  7. package/dist/collection/collection-manifest.json +3 -1
  8. package/dist/collection/components/atoms/mg-badge/doc/mg-badge.stories.js +9 -5
  9. package/dist/collection/components/atoms/mg-button/doc/mg-button.stories.js +15 -12
  10. package/dist/collection/components/atoms/mg-button/mg-button.conf.js +4 -0
  11. package/dist/collection/components/atoms/mg-button/mg-button.js +46 -20
  12. package/dist/collection/components/atoms/mg-character-left/doc/mg-character-left.stories.js +9 -12
  13. package/dist/collection/components/atoms/mg-icon/doc/mg-icon.stories.js +11 -3
  14. package/dist/collection/components/atoms/mg-icon/mg-icon.conf.js +13 -0
  15. package/dist/collection/components/atoms/mg-input-title/doc/mg-input-title.stories.js +9 -9
  16. package/dist/collection/components/atoms/mg-tag/doc/mg-tag.stories.js +9 -7
  17. package/dist/collection/components/atoms/mg-tooltip/doc/mg-tooltip.stories.js +27 -8
  18. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js +6 -0
  19. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +64 -11
  20. package/dist/collection/components/molecules/inputs/mg-input-checkbox/doc/mg-input-checkbox.stories.js +3 -15
  21. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.css +4 -3
  22. package/dist/collection/components/molecules/inputs/mg-input-date/doc/mg-input-date.stories.js +3 -12
  23. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.css +4 -3
  24. package/dist/collection/components/molecules/inputs/mg-input-numeric/doc/mg-input-numeric.stories.js +3 -14
  25. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.css +4 -3
  26. package/dist/collection/components/molecules/inputs/mg-input-password/doc/mg-input-password.stories.js +3 -14
  27. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.css +4 -3
  28. package/dist/collection/components/molecules/inputs/mg-input-radio/doc/mg-input-radio.stories.js +3 -14
  29. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.css +4 -3
  30. package/dist/collection/components/molecules/inputs/mg-input-select/doc/mg-input-select.stories.js +3 -16
  31. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.css +4 -3
  32. package/dist/collection/components/molecules/inputs/mg-input-text/doc/mg-input-text.stories.js +11 -22
  33. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.css +4 -3
  34. package/dist/collection/components/molecules/inputs/mg-input-textarea/doc/mg-input-textarea.stories.js +4 -13
  35. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.css +4 -3
  36. package/dist/collection/components/molecules/inputs/mg-input-toggle/doc/mg-input-toggle.stories.js +17 -38
  37. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.css +4 -3
  38. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +16 -7
  39. package/dist/collection/components/molecules/mg-details/doc/mg-details.stories.js +25 -0
  40. package/dist/collection/components/molecules/mg-details/mg-details.css +14 -0
  41. package/dist/collection/components/molecules/mg-details/mg-details.js +141 -0
  42. package/dist/collection/components/molecules/mg-form/doc/mg-form.stories.js +9 -6
  43. package/dist/collection/components/molecules/mg-form/mg-form.css +1 -1
  44. package/dist/collection/components/molecules/mg-form/mg-form.js +48 -4
  45. package/dist/collection/components/molecules/mg-illustrated-message/doc/mg-illustrated-message.stories.js +22 -0
  46. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.css +37 -0
  47. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +74 -0
  48. package/dist/collection/components/molecules/mg-message/doc/mg-message.stories.js +9 -15
  49. package/dist/collection/components/molecules/mg-modal/doc/mg-modal.stories.js +23 -31
  50. package/dist/collection/components/molecules/mg-pagination/doc/mg-pagination.stories.js +7 -11
  51. package/dist/collection/components/molecules/mg-panel/doc/mg-panel.stories.js +16 -26
  52. package/dist/collection/components/molecules/mg-panel/mg-panel.js +1 -6
  53. package/dist/collection/components/molecules/mg-popover/doc/mg-popover.stories.js +13 -17
  54. package/dist/collection/components/molecules/mg-popover/mg-popover.css +1 -1
  55. package/dist/collection/components/molecules/mg-popover/mg-popover.js +24 -8
  56. package/dist/collection/components/molecules/mg-tabs/doc/mg-tabs.stories.js +11 -12
  57. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +14 -14
  58. package/dist/collection/stories/helpers.stories.js +11 -3
  59. package/dist/collection/stories/icons.stories.js +10 -2
  60. package/dist/collection/stories/typography.stories.js +8 -1
  61. package/dist/collection/utils/components.utils.js +10 -0
  62. package/dist/components/components.utils.js +11 -1
  63. package/dist/components/index.d.ts +25 -23
  64. package/dist/components/index.js +2 -0
  65. package/dist/components/mg-button2.js +6 -14
  66. package/dist/components/mg-details.d.ts +11 -0
  67. package/dist/components/mg-details.js +87 -0
  68. package/dist/components/mg-form.js +35 -5
  69. package/dist/components/mg-icon2.js +13 -0
  70. package/dist/components/mg-illustrated-message.d.ts +11 -0
  71. package/dist/components/mg-illustrated-message.js +68 -0
  72. package/dist/components/mg-input-checkbox.js +1 -1
  73. package/dist/components/mg-input-date.js +1 -1
  74. package/dist/components/mg-input-numeric.js +1 -1
  75. package/dist/components/mg-input-password.js +1 -1
  76. package/dist/components/mg-input-radio.js +1 -1
  77. package/dist/components/mg-input-select2.js +1 -1
  78. package/dist/components/mg-input-text2.js +1 -1
  79. package/dist/components/mg-input-textarea.js +1 -1
  80. package/dist/components/mg-input-toggle.js +17 -8
  81. package/dist/components/mg-panel.js +0 -4
  82. package/dist/components/mg-popover.js +10 -9
  83. package/dist/components/mg-tabs.js +5 -4
  84. package/dist/components/mg-tooltip2.js +73 -11
  85. package/dist/esm/{index-e51ae032.js → index-7efedd97.js} +11 -1
  86. package/dist/esm/loader.js +2 -2
  87. package/dist/esm/{mg-badge_21.entry.js → mg-badge_24.entry.js} +2359 -213
  88. package/dist/esm/mg-components.js +2 -2
  89. package/dist/esm/mg-modal.entry.js +1 -1
  90. package/dist/mg-components/mg-components.css +1 -1
  91. package/dist/mg-components/mg-components.esm.js +1 -1
  92. package/dist/mg-components/p-5f89600c.js +1 -0
  93. package/dist/mg-components/{p-462d648a.entry.js → p-a2883dc7.entry.js} +1 -1
  94. package/dist/mg-components/p-cffe0519.entry.js +1 -0
  95. package/dist/types/components/atoms/mg-button/doc/mg-button.stories.d.ts +6 -0
  96. package/dist/types/components/atoms/mg-button/mg-button.conf.d.ts +8 -0
  97. package/dist/types/components/atoms/mg-button/mg-button.d.ts +11 -0
  98. package/dist/types/components/atoms/mg-character-left/doc/mg-character-left.stories.d.ts +0 -10
  99. package/dist/types/components/atoms/mg-tooltip/doc/mg-tooltip.stories.d.ts +1 -6
  100. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.conf.d.ts +5 -0
  101. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +25 -1
  102. package/dist/types/components/molecules/mg-details/doc/mg-details.stories.d.ts +11 -0
  103. package/dist/types/components/molecules/mg-details/mg-details.d.ts +49 -0
  104. package/dist/types/components/molecules/mg-form/mg-form.d.ts +13 -0
  105. package/dist/types/components/molecules/mg-illustrated-message/doc/mg-illustrated-message.stories.d.ts +6 -0
  106. package/dist/types/components/molecules/mg-illustrated-message/mg-illustrated-message.d.ts +28 -0
  107. package/dist/types/components/molecules/mg-popover/doc/mg-popover.stories.d.ts +4 -1
  108. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +6 -1
  109. package/dist/types/components.d.ts +95 -0
  110. package/dist/types/home/runner/work/mg-components/mg-components/.stencil/.storybook/utils.d.ts +1 -0
  111. package/dist/types/utils/components.utils.d.ts +8 -0
  112. package/package.json +11 -11
  113. package/dist/cjs/mg-popover.cjs.entry.js +0 -170
  114. package/dist/cjs/popper-71bf3058.js +0 -1790
  115. package/dist/esm/mg-popover.entry.js +0 -166
  116. package/dist/esm/popper-93ecb064.js +0 -1788
  117. package/dist/mg-components/p-4c66f794.js +0 -1
  118. package/dist/mg-components/p-5126ab10.entry.js +0 -1
  119. package/dist/mg-components/p-766c918b.entry.js +0 -1
  120. package/dist/mg-components/p-780bd52d.js +0 -1
@@ -1,166 +0,0 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-bca81100.js';
2
- import { c as createID, i as initLocales } from './index-e51ae032.js';
3
- import { c as createPopper } from './popper-93ecb064.js';
4
-
5
- const mgPopoverCss = "mg-popover.sc-mg-popover{display:contents}mg-popover.sc-mg-popover-s>*{display:inline-block}.mg-popover.sc-mg-popover{display:none;padding:1.5rem;z-index:9999;border-radius:0.5rem;background-color:hsl(var(--mg-popover-background-color));box-shadow:var(--box-shadow);color:hsl(var(--mg-popover-font-color))}.mg-popover[data-show].sc-mg-popover{display:block}.mg-popover.sc-mg-popover mg-button.sc-mg-popover{float:right;margin-right:calc(0rem - (var(--default-size) - var(--mg-icon-regular-size)) / 2);margin-top:calc(0rem - (var(--default-size) - var(--mg-popover-title-font-size) * var(--line-height)) / 2);margin-left:3rem}.mg-popover.sc-mg-popover .mg-popover__arrow.sc-mg-popover,.mg-popover.sc-mg-popover .mg-popover__arrow.sc-mg-popover::before{position:absolute;width:2rem;height:2rem;z-index:-1;background:inherit}.mg-popover.sc-mg-popover .mg-popover__arrow.sc-mg-popover{visibility:hidden}.mg-popover.sc-mg-popover .mg-popover__arrow.sc-mg-popover::before{visibility:visible;content:\"\";transform:rotate(45deg)}.mg-popover[data-popper-placement^=top].sc-mg-popover>.mg-popover__arrow.sc-mg-popover{bottom:-6px}.mg-popover[data-popper-placement^=bottom].sc-mg-popover>.mg-popover__arrow.sc-mg-popover{top:-6px}.mg-popover[data-popper-placement^=left].sc-mg-popover>.mg-popover__arrow.sc-mg-popover{right:-6px}.mg-popover[data-popper-placement^=right].sc-mg-popover>.mg-popover__arrow.sc-mg-popover{left:-6px}.mg-popover__title.sc-mg-popover-s>*,.mg-popover__title .sc-mg-popover-s>*{margin:0 0 1rem;font-size:var(--mg-popover-title-font-size);font-weight:600}";
6
-
7
- const MgPopover = class {
8
- constructor(hostRef) {
9
- registerInstance(this, hostRef);
10
- this.closeButtonId = '';
11
- /**
12
- * Sets an `id` attribute.
13
- * Needed by the input for accessibility `aria-decribedby`.
14
- */
15
- this.identifier = createID('mg-popover');
16
- /**
17
- * Popover placement
18
- */
19
- this.placement = 'bottom';
20
- /**
21
- * Define if popover has a cross button
22
- */
23
- this.closeButton = false;
24
- /**
25
- * Display popover
26
- */
27
- this.display = false;
28
- /**
29
- * Disable popover
30
- */
31
- this.disabled = false;
32
- /**
33
- * Check if clicked outside of component
34
- *
35
- * @param {MouseEvent} event mouse event
36
- * @returns {void}
37
- */
38
- this.clickOutside = (event) => {
39
- var _a;
40
- if (!this.disabled && ((_a = event.target.closest(`#${this.identifier}`)) === null || _a === void 0 ? void 0 : _a.parentElement.nodeName) !== 'MG-POPOVER') {
41
- this.display = false;
42
- }
43
- };
44
- /**
45
- * Show popover
46
- *
47
- * @returns {void}
48
- */
49
- this.show = () => {
50
- // Make the popover visible
51
- this.popover.setAttribute('data-show', '');
52
- // Enable the event listeners
53
- this.popper.setOptions(options => (Object.assign(Object.assign({}, options), { modifiers: [...options.modifiers, { name: 'eventListeners', enabled: true }] })));
54
- // Update its position
55
- this.popper.update();
56
- // hide when click outside
57
- // setTimeout is used to prevent event to trigger after creation
58
- setTimeout(() => {
59
- document.addEventListener('click', this.clickOutside, false);
60
- }, 0);
61
- };
62
- /**
63
- * Hide popover
64
- *
65
- * @returns {void}
66
- */
67
- this.hide = () => {
68
- // Hide the popover
69
- this.popover.removeAttribute('data-show');
70
- // Disable the event listeners
71
- this.popper.setOptions(options => (Object.assign(Object.assign({}, options), { modifiers: [...options.modifiers, { name: 'eventListeners', enabled: false }] })));
72
- // Remove event listener
73
- document.removeEventListener('click', this.clickOutside, false);
74
- };
75
- /**
76
- * Handle action for close button
77
- *
78
- * @returns {void}
79
- */
80
- this.handleCloseButton = () => {
81
- this.display = false;
82
- };
83
- }
84
- handleDisplay(newVal) {
85
- if (newVal) {
86
- this.show();
87
- }
88
- else {
89
- this.hide();
90
- }
91
- }
92
- /*************
93
- * Lifecycle *
94
- *************/
95
- /**
96
- * Check if component props are well configured on init
97
- *
98
- * @returns {void} timeout
99
- */
100
- componentWillLoad() {
101
- // Get locales
102
- this.messages = initLocales(this.element).messages;
103
- }
104
- /**
105
- * Check if component props are well configured on init
106
- *
107
- * @returns {void}
108
- */
109
- componentDidLoad() {
110
- //Check if slotted title is a heading
111
- const headingElements = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
112
- const slotedTitleElement = this.element.querySelector('[slot="title"]');
113
- if (slotedTitleElement !== null && !headingElements.includes(slotedTitleElement.tagName.toLowerCase())) {
114
- throw new Error(`<mg-popover> Slotted title must be a heading: ${headingElements.join(', ')}.`);
115
- }
116
- // Set close button id
117
- if (this.closeButton) {
118
- this.closeButtonId = `${this.identifier}-close-button`;
119
- }
120
- // Get popover content
121
- this.popover = this.element.querySelector(`#${this.identifier}`);
122
- //Get interactive element
123
- const interactiveElement = this.element.firstElementChild;
124
- // Add aria attributes
125
- interactiveElement.setAttribute('aria-controls', this.identifier);
126
- interactiveElement.setAttribute('aria-expanded', `${this.display}`);
127
- // Create popperjs popover
128
- this.popper = createPopper(interactiveElement, this.popover, {
129
- placement: this.placement,
130
- modifiers: [
131
- {
132
- name: 'offset',
133
- options: {
134
- offset: [0, 10],
135
- },
136
- },
137
- ],
138
- });
139
- // Add events to toggle display
140
- interactiveElement.addEventListener('click', () => {
141
- if (!this.disabled)
142
- this.display = !this.display;
143
- });
144
- // Add events to hide popover
145
- this.element.addEventListener('keydown', e => {
146
- if (!this.disabled && e.code === 'Escape')
147
- this.display = false;
148
- });
149
- this.handleDisplay(this.display);
150
- }
151
- /**
152
- * Render
153
- *
154
- * @returns {HTMLElement} HTML Element
155
- */
156
- render() {
157
- return (h(Host, null, h("slot", null), h("div", { id: this.identifier, class: "mg-popover" }, !this.disabled && this.closeButton && (h("mg-button", { identifier: this.closeButtonId, "is-icon": true, variant: "flat", label: this.messages.general.close, onClick: this.handleCloseButton }, h("mg-icon", { icon: "cross" }))), h("div", { class: "mg-popover__title" }, h("slot", { name: "title" })), h("slot", { name: "content" }), h("div", { class: "mg-popover__arrow", "data-popper-arrow": true }))));
158
- }
159
- get element() { return getElement(this); }
160
- static get watchers() { return {
161
- "display": ["handleDisplay"]
162
- }; }
163
- };
164
- MgPopover.style = mgPopoverCss;
165
-
166
- export { MgPopover as mg_popover };