@maggioli-design-system/mds-modal 5.5.1 → 5.5.3

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.
@@ -65,6 +65,23 @@ export class FloatingController {
65
65
  return { transformOrigin: 'center top' };
66
66
  }
67
67
  };
68
+ this.convertToTransformOrigin = (position) => {
69
+ const positions = {
70
+ top: 'center bottom',
71
+ right: 'left center',
72
+ bottom: 'center top',
73
+ left: 'right center',
74
+ 'bottom-end': 'top right',
75
+ 'bottom-start': 'top left',
76
+ 'left-end': 'right bottom',
77
+ 'left-start': 'right top',
78
+ 'right-end': 'left bottom',
79
+ 'right-start': 'left top',
80
+ 'top-end': 'bottom right',
81
+ 'top-start': 'bottom left',
82
+ };
83
+ return positions[position];
84
+ };
68
85
  this.calculatePosition = () => {
69
86
  if (!this._caller)
70
87
  return;
@@ -99,6 +116,7 @@ export class FloatingController {
99
116
  Object.assign(this._host.style, {
100
117
  left: `${x}px`,
101
118
  top: `${y}px`,
119
+ transformOrigin: this.convertToTransformOrigin(placement),
102
120
  });
103
121
  const arrowStyle = {};
104
122
  const arrowPosition = {
@@ -22,8 +22,9 @@ export class KeyboardManager {
22
22
  this.elements.delete(name);
23
23
  };
24
24
  this.attachClickBehavior = (name = 'element') => {
25
- var _a;
26
- (_a = this.elements.get(name)) === null || _a === void 0 ? void 0 : _a.addEventListener('keydown', this.handleClickBehaviorDispatchEvent);
25
+ var _a, _b;
26
+ (_a = this.elements.get(name)) === null || _a === void 0 ? void 0 : _a.removeEventListener('keydown', this.handleClickBehaviorDispatchEvent);
27
+ (_b = this.elements.get(name)) === null || _b === void 0 ? void 0 : _b.addEventListener('keydown', this.handleClickBehaviorDispatchEvent);
27
28
  };
28
29
  this.detachClickBehavior = (name = 'element') => {
29
30
  var _a;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-03-10T13:20:30",
2
+ "timestamp": "2025-03-17T18:14:03",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.27.2",
package/dist/stats.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-03-10T13:20:31",
2
+ "timestamp": "2025-03-17T18:14:04",
3
3
  "compiler": {
4
4
  "name": "node",
5
5
  "version": "22.11.0"
@@ -9,11 +9,11 @@
9
9
  "fsNamespace": "mds-modal",
10
10
  "components": 1,
11
11
  "entries": 1,
12
- "bundles": 104,
12
+ "bundles": 105,
13
13
  "outputs": [
14
14
  {
15
15
  "name": "dist-collection",
16
- "files": 56,
16
+ "files": 57,
17
17
  "generatedFiles": [
18
18
  "./dist/collection/common/aria.js",
19
19
  "./dist/collection/common/browser.js",
@@ -62,6 +62,7 @@
62
62
  "./dist/collection/type/floating-ui.js",
63
63
  "./dist/collection/type/form-rel.js",
64
64
  "./dist/collection/type/header-bar.js",
65
+ "./dist/collection/type/input-tip.js",
65
66
  "./dist/collection/type/input.js",
66
67
  "./dist/collection/type/keyboard.js",
67
68
  "./dist/collection/type/loading.js",
@@ -864,6 +865,7 @@
864
865
  "./src/type/floating-ui.ts": [],
865
866
  "./src/type/form-rel.ts": [],
866
867
  "./src/type/header-bar.ts": [],
868
+ "./src/type/input-tip.ts": [],
867
869
  "./src/type/input.ts": [],
868
870
  "./src/type/keyboard.ts": [],
869
871
  "./src/type/loading.ts": [],
@@ -27,6 +27,7 @@ export declare class FloatingController {
27
27
  private readonly arrowInset;
28
28
  private readonly arrowTransform;
29
29
  private readonly arrowTransformOrigin;
30
+ private convertToTransformOrigin;
30
31
  private readonly calculatePosition;
31
32
  updatePosition(): void;
32
33
  dismiss(): void;
@@ -0,0 +1 @@
1
+ export type InputTipItemVariantType = 'count-almost' | 'count-almost-full' | 'count-empty' | 'count-full' | 'count-incomplete' | 'disabled' | 'readonly' | 'required' | 'required-success' | 'text';
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-03-10T10:32:58",
2
+ "timestamp": "2025-03-17T17:10:07",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.27.2",
@@ -643,10 +643,10 @@
643
643
  "docstring": "",
644
644
  "path": "src/components/mds-input-tip/meta/types.ts"
645
645
  },
646
- "src/components/mds-input-tip-item/meta/types.ts::InputTipItemVariantType": {
647
- "declaration": "export type InputTipItemVariantType =\n | 'required'\n | 'required-success'\n | 'disabled'\n | 'readonly'\n | 'text'",
646
+ "src/type/input-tip.ts::InputTipItemVariantType": {
647
+ "declaration": "export type InputTipItemVariantType =\n | 'count-almost'\n | 'count-almost-full'\n | 'count-empty'\n | 'count-full'\n | 'count-incomplete'\n | 'disabled'\n | 'readonly'\n | 'required'\n | 'required-success'\n | 'text'",
648
648
  "docstring": "",
649
- "path": "src/components/mds-input-tip-item/meta/types.ts"
649
+ "path": "src/type/input-tip.ts"
650
650
  },
651
651
  "src/components/mds-input-upload/meta/types.ts::AttachmentSort": {
652
652
  "declaration": "type AttachmentSort =\n 'status' |\n 'date'",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maggioli-design-system/mds-modal",
3
- "version": "5.5.1",
3
+ "version": "5.5.3",
4
4
  "description": "mds-modal is a web-component from Magma Design System, built with StencilJS, TypeScript, Storybook. It's based on the web-component standard and it's designed to be agnostic from the JavaScript framework you are using.",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -24,7 +24,7 @@
24
24
  "test": "stencil test --spec --e2e"
25
25
  },
26
26
  "dependencies": {
27
- "@maggioli-design-system/mds-button": "6.4.1",
27
+ "@maggioli-design-system/mds-button": "6.4.3",
28
28
  "@maggioli-design-system/styles": "15.9.0",
29
29
  "@stencil/core": "4.27.2",
30
30
  "clsx": "2.1.0"
@@ -7,6 +7,7 @@ import {
7
7
  Middleware,
8
8
  MiddlewareData,
9
9
  offset,
10
+ Placement,
10
11
  shift,
11
12
  } from '@floating-ui/dom'
12
13
  import { FloatingUIPlacement, FloatingUIStrategy } from '@type/floating-ui'
@@ -138,6 +139,24 @@ export class FloatingController {
138
139
  }
139
140
  }
140
141
 
142
+ private convertToTransformOrigin = (position: Placement): string => {
143
+ const positions = {
144
+ top: 'center bottom',
145
+ right: 'left center',
146
+ bottom: 'center top',
147
+ left: 'right center',
148
+ 'bottom-end': 'top right',
149
+ 'bottom-start': 'top left',
150
+ 'left-end': 'right bottom',
151
+ 'left-start': 'right top',
152
+ 'right-end': 'left bottom',
153
+ 'right-start': 'left top',
154
+ 'top-end': 'bottom right',
155
+ 'top-start': 'bottom left',
156
+ }
157
+ return positions[position]
158
+ }
159
+
141
160
  private readonly calculatePosition = (): void => {
142
161
  if (!this._caller) return
143
162
 
@@ -181,6 +200,7 @@ export class FloatingController {
181
200
  Object.assign(this._host.style, {
182
201
  left: `${x}px`,
183
202
  top: `${y}px`,
203
+ transformOrigin: this.convertToTransformOrigin(placement),
184
204
  })
185
205
 
186
206
  const arrowStyle = {}
@@ -27,6 +27,7 @@ export class KeyboardManager {
27
27
  }
28
28
 
29
29
  attachClickBehavior = (name = 'element'): void => {
30
+ this.elements.get(name)?.removeEventListener('keydown', this.handleClickBehaviorDispatchEvent)
30
31
  this.elements.get(name)?.addEventListener('keydown', this.handleClickBehaviorDispatchEvent)
31
32
  }
32
33
 
@@ -0,0 +1,11 @@
1
+ export type InputTipItemVariantType =
2
+ | 'count-almost'
3
+ | 'count-almost-full'
4
+ | 'count-empty'
5
+ | 'count-full'
6
+ | 'count-incomplete'
7
+ | 'disabled'
8
+ | 'readonly'
9
+ | 'required'
10
+ | 'required-success'
11
+ | 'text'