@maggioli-design-system/mds-input-range 2.5.2 → 2.5.4

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.
@@ -19,15 +19,17 @@ export class Locale {
19
19
  };
20
20
  this.update = (doc) => {
21
21
  const context = doc !== null && doc !== void 0 ? doc : this.element.shadowRoot;
22
- context && context.querySelectorAll('*').forEach(el => {
23
- if (el.tagName.toLowerCase().startsWith('mds-')) {
24
- // eslint-disable-next-line no-restricted-syntax
25
- if (el && 'updateLang' in el) {
26
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
- el.updateLang();
22
+ if (context) {
23
+ context.querySelectorAll('*').forEach(el => {
24
+ if (el.tagName.toLowerCase().startsWith('mds-')) {
25
+ // eslint-disable-next-line no-restricted-syntax
26
+ if (el && 'updateLang' in el) {
27
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
+ el.updateLang();
29
+ }
28
30
  }
29
- }
30
- });
31
+ });
32
+ }
31
33
  };
32
34
  this.pluralize = (tag, context) => {
33
35
  const languagePhrase = this.config[this.language] ? this.config[this.language][tag] : this.config[this.rollbackLanguage][tag];
@@ -0,0 +1,5 @@
1
+ const randomNumber = (min, max, integer = false) => {
2
+ const num = Math.random() * (max - min) + min;
3
+ return integer ? Math.floor(num) : num;
4
+ };
5
+ export { randomNumber, };
@@ -25,4 +25,13 @@ const hasSlotted = (el, name) => {
25
25
  }
26
26
  return false;
27
27
  };
28
- export { hasSlottedElements, hasSlottedNodes, hasSlotted, };
28
+ const hasSlottedContent = (el, name) => {
29
+ var _a;
30
+ const query = name ? `slot[name="${name}"]` : 'slot:not([name])';
31
+ const slot = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(query);
32
+ if (!slot)
33
+ return false;
34
+ const assignedNodes = slot.assignedNodes({ flatten: true });
35
+ return assignedNodes.some(node => { var _a; return node.nodeType === Node.TEXT_NODE && ((_a = node.textContent) === null || _a === void 0 ? void 0 : _a.trim()) !== ''; });
36
+ };
37
+ export { hasSlottedElements, hasSlottedNodes, hasSlottedContent, hasSlotted, };
@@ -7,6 +7,15 @@ const cssDurationToMilliseconds = (duration, defaultValue = 1000) => {
7
7
  }
8
8
  return defaultValue;
9
9
  };
10
+ const cssDurationToSeconds = (duration, defaultValue = 1000) => {
11
+ if (duration.includes('ms')) {
12
+ return Number(duration.replace('ms', '')) / 1000;
13
+ }
14
+ if (duration.includes('s')) {
15
+ return Number(duration.replace('s', ''));
16
+ }
17
+ return defaultValue;
18
+ };
10
19
  const cssSizeToNumber = (size, defaultValue = 0) => {
11
20
  if (size.includes('px')) {
12
21
  return Number(size.replace('px', ''));
@@ -19,4 +28,10 @@ const cssSizeToNumber = (size, defaultValue = 0) => {
19
28
  }
20
29
  return defaultValue;
21
30
  };
22
- export { cssDurationToMilliseconds, cssSizeToNumber, };
31
+ const cssRotationToNumber = (size, defaultValue = 0) => {
32
+ if (size.includes('deg')) {
33
+ return Number(size.replace('deg', ''));
34
+ }
35
+ return defaultValue;
36
+ };
37
+ export { cssDurationToMilliseconds, cssDurationToSeconds, cssRotationToNumber, cssSizeToNumber, };
@@ -25,7 +25,7 @@ export default {
25
25
  },
26
26
  },
27
27
  };
28
- const Template = args => h("mds-input-range", Object.assign({}, args), "Range label");
28
+ const Template = args => (h("mds-input-range", Object.assign({}, args), "Range label"));
29
29
  const TemplateFormatLabel = args => {
30
30
  useEffect(() => {
31
31
  document.querySelector('#custom-labeled').formatValue = formatValue;
@@ -42,34 +42,50 @@ const TemplateFormatLabel = args => {
42
42
  const value = parseFloat((bytes / Math.pow(k, i)).toFixed(decimals));
43
43
  return `${value} ${sizes[i]}`;
44
44
  };
45
- return h("div", null, h("mds-input-range", Object.assign({ id: "custom-labeled" }, args, { step: "1048576", min: "0", max: "1073741824" }), "File size"));
45
+ return (h("div", null, h("mds-input-range", Object.assign({ id: "custom-labeled" }, args, { step: "1048576", min: "0", max: "1073741824" }), "File size")));
46
46
  };
47
47
  const hideHeaderCss = `
48
48
  mds-input-range::part(header) {
49
49
  display: none;
50
50
  }
51
51
  `;
52
- const HideHeaderTemplate = args => h("div", null, h("style", null, hideHeaderCss), h("mds-input-range", Object.assign({}, args), "This shouldn't be visible"));
53
- export const Default = Template.bind({});
54
- export const Disabled = Template.bind({});
55
- Disabled.args = {
56
- disabled: true,
52
+ const HideHeaderTemplate = args => (h("div", null, h("style", null, hideHeaderCss), h("mds-input-range", Object.assign({}, args), "This shouldn't be visible")));
53
+ export const Default = {
54
+ render: Template,
57
55
  };
58
- export const Min = Template.bind({});
59
- Min.args = {
60
- min: -100,
56
+ export const Disabled = {
57
+ render: Template,
58
+ args: {
59
+ disabled: true,
60
+ },
61
+ };
62
+ export const Min = {
63
+ render: Template,
64
+ args: {
65
+ min: -100,
66
+ },
67
+ };
68
+ export const Max = {
69
+ render: Template,
70
+ args: {
71
+ max: 200,
72
+ },
73
+ };
74
+ export const Step = {
75
+ render: Template,
76
+ args: {
77
+ step: 10,
78
+ },
61
79
  };
62
- export const Max = Template.bind({});
63
- Max.args = {
64
- max: 200,
80
+ export const Value = {
81
+ render: Template,
82
+ args: {
83
+ value: 90,
84
+ },
65
85
  };
66
- export const Step = Template.bind({});
67
- Step.args = {
68
- step: 10,
86
+ export const FormatLabel = {
87
+ render: TemplateFormatLabel,
69
88
  };
70
- export const Value = Template.bind({});
71
- Value.args = {
72
- value: 90,
89
+ export const HideHeader = {
90
+ render: HideHeaderTemplate,
73
91
  };
74
- export const FormatLabel = TemplateFormatLabel.bind({});
75
- export const HideHeader = HideHeaderTemplate.bind({});
@@ -11,12 +11,27 @@ const buttonVariantDictionary = [
11
11
  'success',
12
12
  'warning',
13
13
  ];
14
+ const buttonDropdownVariantDictionary = [
15
+ 'ai',
16
+ 'dark',
17
+ 'error',
18
+ 'info',
19
+ 'light',
20
+ 'primary',
21
+ 'secondary',
22
+ 'success',
23
+ 'warning',
24
+ ];
14
25
  const buttonToneVariantDictionary = [
15
26
  'strong',
16
27
  'weak',
17
28
  'ghost',
18
29
  'quiet',
19
30
  ];
31
+ const buttonToneMinimalVariantDictionary = [
32
+ 'strong',
33
+ 'weak',
34
+ ];
20
35
  const buttonTargetDictionary = [
21
36
  'blank',
22
37
  'self',
@@ -27,6 +42,10 @@ const buttonSizeDictionary = [
27
42
  'lg',
28
43
  'xl',
29
44
  ];
45
+ const tabSizeDictionary = [
46
+ 'sm',
47
+ 'md',
48
+ ];
30
49
  const buttonIconPositionDictionary = [
31
50
  'left',
32
51
  'right',
@@ -36,4 +55,4 @@ const buttonTypeDictionary = [
36
55
  'submit',
37
56
  'reset',
38
57
  ];
39
- export { buttonIconPositionDictionary, buttonSizeDictionary, buttonTargetDictionary, buttonToneVariantDictionary, buttonTypeDictionary, buttonVariantDictionary, };
58
+ export { buttonDropdownVariantDictionary, buttonIconPositionDictionary, buttonSizeDictionary, buttonTargetDictionary, buttonToneMinimalVariantDictionary, buttonToneVariantDictionary, buttonTypeDictionary, buttonVariantDictionary, tabSizeDictionary, };
@@ -1,5 +1,5 @@
1
1
  import jsonIconsDictionary from "../fixtures/icons.json";
2
- import jsonMggIconsDictionary from "../fixtures/iconsauce.json";
2
+ import jsonMggIconsDictionary from "@maggioli-design-system/svg-icons/dist/iconsauce.json";
3
3
  const iconsDictionary = jsonIconsDictionary;
4
4
  const mggIconsDictionary = jsonMggIconsDictionary;
5
5
  const svgIconsDictionary = [
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-06-03T13:05:00",
2
+ "timestamp": "2026-02-19T19:22:33",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.27.2",
package/dist/stats.json CHANGED
@@ -1,19 +1,19 @@
1
1
  {
2
- "timestamp": "2025-06-03T13:05:01",
2
+ "timestamp": "2026-02-19T19:22:34",
3
3
  "compiler": {
4
4
  "name": "node",
5
- "version": "22.11.0"
5
+ "version": "22.15.0"
6
6
  },
7
7
  "app": {
8
8
  "namespace": "MdsInputRange",
9
9
  "fsNamespace": "mds-input-range",
10
10
  "components": 1,
11
11
  "entries": 1,
12
- "bundles": 103,
12
+ "bundles": 104,
13
13
  "outputs": [
14
14
  {
15
15
  "name": "dist-collection",
16
- "files": 55,
16
+ "files": 56,
17
17
  "generatedFiles": [
18
18
  "./dist/collection/common/aria.js",
19
19
  "./dist/collection/common/browser.js",
@@ -24,6 +24,7 @@
24
24
  "./dist/collection/common/icon.js",
25
25
  "./dist/collection/common/keyboard-manager.js",
26
26
  "./dist/collection/common/locale.js",
27
+ "./dist/collection/common/number.js",
27
28
  "./dist/collection/common/slot.js",
28
29
  "./dist/collection/common/string.js",
29
30
  "./dist/collection/common/unit.js",
@@ -767,6 +768,7 @@
767
768
  "./src/common/icon.ts": [],
768
769
  "./src/common/keyboard-manager.ts": [],
769
770
  "./src/common/locale.ts": [],
771
+ "./src/common/number.ts": [],
770
772
  "./src/common/slot.ts": [],
771
773
  "./src/common/string.ts": [],
772
774
  "./src/common/unit.ts": [],
@@ -795,8 +797,7 @@
795
797
  "./src/dictionary/file-extensions.ts": [],
796
798
  "./src/dictionary/floating-ui.ts": [],
797
799
  "./src/dictionary/icon.ts": [
798
- "./src/fixtures/icons.json",
799
- "./src/fixtures/iconsauce.json"
800
+ "./src/fixtures/icons.json"
800
801
  ],
801
802
  "./src/dictionary/input.ts": [],
802
803
  "./src/dictionary/keyboard.ts": [],
@@ -0,0 +1,2 @@
1
+ declare const randomNumber: (min: number, max: number, integer?: boolean) => number;
2
+ export { randomNumber, };
@@ -1,4 +1,5 @@
1
1
  declare const hasSlottedElements: (el: HTMLElement, name?: string) => boolean;
2
2
  declare const hasSlottedNodes: (el: HTMLElement, name?: string) => boolean;
3
3
  declare const hasSlotted: (el: HTMLElement, name?: string) => boolean;
4
- export { hasSlottedElements, hasSlottedNodes, hasSlotted, };
4
+ declare const hasSlottedContent: (el: HTMLElement, name?: string) => boolean;
5
+ export { hasSlottedElements, hasSlottedNodes, hasSlottedContent, hasSlotted, };
@@ -1,3 +1,5 @@
1
1
  declare const cssDurationToMilliseconds: (duration: string, defaultValue?: number) => number;
2
+ declare const cssDurationToSeconds: (duration: string, defaultValue?: number) => number;
2
3
  declare const cssSizeToNumber: (size: string, defaultValue?: number) => number;
3
- export { cssDurationToMilliseconds, cssSizeToNumber, };
4
+ declare const cssRotationToNumber: (size: string, defaultValue?: number) => number;
5
+ export { cssDurationToMilliseconds, cssDurationToSeconds, cssRotationToNumber, cssSizeToNumber, };
@@ -34,11 +34,42 @@ declare const _default: {
34
34
  };
35
35
  };
36
36
  export default _default;
37
- export declare const Default: any;
38
- export declare const Disabled: any;
39
- export declare const Min: any;
40
- export declare const Max: any;
41
- export declare const Step: any;
42
- export declare const Value: any;
43
- export declare const FormatLabel: any;
44
- export declare const HideHeader: any;
37
+ export declare const Default: {
38
+ render: (args: any) => any;
39
+ };
40
+ export declare const Disabled: {
41
+ render: (args: any) => any;
42
+ args: {
43
+ disabled: boolean;
44
+ };
45
+ };
46
+ export declare const Min: {
47
+ render: (args: any) => any;
48
+ args: {
49
+ min: number;
50
+ };
51
+ };
52
+ export declare const Max: {
53
+ render: (args: any) => any;
54
+ args: {
55
+ max: number;
56
+ };
57
+ };
58
+ export declare const Step: {
59
+ render: (args: any) => any;
60
+ args: {
61
+ step: number;
62
+ };
63
+ };
64
+ export declare const Value: {
65
+ render: (args: any) => any;
66
+ args: {
67
+ value: number;
68
+ };
69
+ };
70
+ export declare const FormatLabel: {
71
+ render: (args: any) => any;
72
+ };
73
+ export declare const HideHeader: {
74
+ render: (args: any) => any;
75
+ };
@@ -1,7 +1,10 @@
1
1
  declare const buttonVariantDictionary: string[];
2
+ declare const buttonDropdownVariantDictionary: string[];
2
3
  declare const buttonToneVariantDictionary: string[];
4
+ declare const buttonToneMinimalVariantDictionary: string[];
3
5
  declare const buttonTargetDictionary: string[];
4
6
  declare const buttonSizeDictionary: string[];
7
+ declare const tabSizeDictionary: string[];
5
8
  declare const buttonIconPositionDictionary: string[];
6
9
  declare const buttonTypeDictionary: string[];
7
- export { buttonIconPositionDictionary, buttonSizeDictionary, buttonTargetDictionary, buttonToneVariantDictionary, buttonTypeDictionary, buttonVariantDictionary, };
10
+ export { buttonDropdownVariantDictionary, buttonIconPositionDictionary, buttonSizeDictionary, buttonTargetDictionary, buttonToneMinimalVariantDictionary, buttonToneVariantDictionary, buttonTypeDictionary, buttonVariantDictionary, tabSizeDictionary, };
@@ -1,5 +1,7 @@
1
1
  export type ButtonType = 'a' | 'button' | 'reset' | 'submit';
2
2
  export type ButtonTargetType = 'self' | 'blank';
3
3
  export type ButtonSizeType = 'sm' | 'md' | 'lg' | 'xl';
4
+ export type TabSizeType = 'sm' | 'md';
4
5
  export type ButtonIconPositionType = 'left' | 'right';
5
6
  export type ButtonVariantType = 'ai' | 'apple' | 'dark' | 'error' | 'google' | 'info' | 'light' | 'primary' | 'secondary' | 'success' | 'warning';
7
+ export type ButtonDropdownVariantType = 'ai' | 'dark' | 'error' | 'info' | 'light' | 'primary' | 'secondary' | 'success' | 'warning';
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-06-03T08:10:23",
2
+ "timestamp": "2026-02-19T16:41:28",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.27.2",
@@ -366,6 +366,11 @@
366
366
  "docstring": "",
367
367
  "path": "src/type/text.ts"
368
368
  },
369
+ "src/type/button.ts::ButtonDropdownVariantType": {
370
+ "declaration": "export type ButtonDropdownVariantType =\n | 'ai'\n | 'dark'\n | 'error'\n | 'info'\n | 'light'\n | 'primary'\n | 'secondary'\n | 'success'\n | 'warning'",
371
+ "docstring": "",
372
+ "path": "src/type/button.ts"
373
+ },
369
374
  "src/components/mds-calendar-cell/meta/types.ts::CalendarCellType": {
370
375
  "declaration": "export type CalendarCellType =\n | 'other'\n | 'current'\n | 'weekend'",
371
376
  "docstring": "",
@@ -387,7 +392,7 @@
387
392
  "path": "src/type/variant.ts"
388
393
  },
389
394
  "src/components/mds-chip/meta/interface.ts::MdsChipEvent": {
390
- "declaration": "interface MdsChipEvent {\n event: Event\n element: HTMLMdsChipElement\n}",
395
+ "declaration": "interface MdsChipEvent {\n event: Event\n selected?: boolean\n element: HTMLMdsChipElement\n}",
391
396
  "docstring": "",
392
397
  "path": "src/components/mds-chip/meta/interface.ts"
393
398
  },
@@ -596,6 +601,11 @@
596
601
  "docstring": "",
597
602
  "path": "src/type/typography.ts"
598
603
  },
604
+ "src/components/mds-mention/meta/type.ts::MentionSize": {
605
+ "declaration": "export type MentionSize =\n | 'sm'\n | 'md'\n | 'lg'",
606
+ "docstring": "",
607
+ "path": "src/components/mds-mention/meta/type.ts"
608
+ },
599
609
  "src/components/mds-modal/meta/types.ts::ModalPositionType": {
600
610
  "declaration": "export type ModalPositionType =\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'center'\n | 'left'\n | 'right'\n | 'top'\n | 'top-left'\n | 'top-right'",
601
611
  "docstring": "",
@@ -636,6 +646,11 @@
636
646
  "docstring": "",
637
647
  "path": "src/components/mds-policy-ai/meta/types.ts"
638
648
  },
649
+ "src/type/button.ts::TabSizeType": {
650
+ "declaration": "export type TabSizeType =\n | 'sm'\n | 'md'",
651
+ "docstring": "",
652
+ "path": "src/type/button.ts"
653
+ },
639
654
  "src/components/mds-pref-animation/meta/types.ts::AnimationModeType": {
640
655
  "declaration": "export type AnimationModeType =\n | 'reduce'\n | 'no-preference'\n | 'system'",
641
656
  "docstring": "",
@@ -716,6 +731,16 @@
716
731
  "docstring": "",
717
732
  "path": "src/components/mds-radial-menu/meta/types.ts"
718
733
  },
734
+ "src/components.d.ts::ModalOverflowType": {
735
+ "declaration": "any",
736
+ "docstring": "",
737
+ "path": "src/components.d.ts"
738
+ },
739
+ "src/components/mds-status-bar/meta/types.ts::StatusBarPositionType": {
740
+ "declaration": "export type StatusBarPositionType =\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'",
741
+ "docstring": "",
742
+ "path": "src/components/mds-status-bar/meta/types.ts"
743
+ },
719
744
  "src/components/mds-stepper-bar/meta/event-detail.ts::MdsStepperBarEventDetail": {
720
745
  "declaration": "export interface MdsStepperBarEventDetail {\n step: number\n value: string\n}",
721
746
  "docstring": "",
@@ -726,6 +751,11 @@
726
751
  "docstring": "",
727
752
  "path": "src/components/mds-stepper-bar-item/meta/event-detail.ts"
728
753
  },
754
+ "src/components/mds-tab/meta/type.ts::DirectionType": {
755
+ "declaration": "export type DirectionType =\n | 'horizontal'\n | 'vertical'",
756
+ "docstring": "",
757
+ "path": "src/components/mds-tab/meta/type.ts"
758
+ },
729
759
  "src/type/animation.ts::HorizontalActionsAnimationType": {
730
760
  "declaration": "export type HorizontalActionsAnimationType =\n | 'fade'\n | 'slide'",
731
761
  "docstring": "",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maggioli-design-system/mds-input-range",
3
- "version": "2.5.2",
3
+ "version": "2.5.4",
4
4
  "description": "mds-input-range 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",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@maggioli-design-system/styles": "15.11.0",
28
- "@maggioli-design-system/mds-text": "4.7.4",
28
+ "@maggioli-design-system/mds-text": "4.7.6",
29
29
  "@stencil/core": "4.27.2"
30
30
  },
31
31
  "license": "MIT",
@@ -41,15 +41,17 @@ export class Locale {
41
41
 
42
42
  update = (doc?: Document | ShadowRoot): void => {
43
43
  const context = doc ?? this.element.shadowRoot
44
- context && context.querySelectorAll('*').forEach(el => {
45
- if (el.tagName.toLowerCase().startsWith('mds-')) {
46
- // eslint-disable-next-line no-restricted-syntax
47
- if (el && 'updateLang' in el) {
48
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
49
- (el as any).updateLang()
44
+ if (context) {
45
+ context.querySelectorAll('*').forEach(el => {
46
+ if (el.tagName.toLowerCase().startsWith('mds-')) {
47
+ // eslint-disable-next-line no-restricted-syntax
48
+ if (el && 'updateLang' in el) {
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
+ (el as any).updateLang()
51
+ }
50
52
  }
51
- }
52
- })
53
+ })
54
+ }
53
55
  }
54
56
 
55
57
  private pluralize = (tag: string | string[], context: Record<string, string | number | boolean>): string => {
@@ -0,0 +1,8 @@
1
+ const randomNumber = (min: number, max: number, integer: boolean = false): number => {
2
+ const num = Math.random() * (max - min) + min
3
+ return integer ? Math.floor(num) : num
4
+ }
5
+
6
+ export {
7
+ randomNumber,
8
+ }
@@ -28,8 +28,20 @@ const hasSlotted = (el: HTMLElement, name?: string): boolean => {
28
28
  return false
29
29
  }
30
30
 
31
+ const hasSlottedContent = (el: HTMLElement, name?: string): boolean => {
32
+ const query = name ? `slot[name="${name}"]` : 'slot:not([name])'
33
+ const slot: HTMLSlotElement = el.shadowRoot?.querySelector(query) as HTMLSlotElement
34
+ if (!slot) return false
35
+
36
+ const assignedNodes = slot.assignedNodes({ flatten: true })
37
+ return assignedNodes.some(node =>
38
+ node.nodeType === Node.TEXT_NODE && node.textContent?.trim() !== '',
39
+ )
40
+ }
41
+
31
42
  export {
32
43
  hasSlottedElements,
33
44
  hasSlottedNodes,
45
+ hasSlottedContent,
34
46
  hasSlotted,
35
47
  }
@@ -11,6 +11,19 @@ const cssDurationToMilliseconds = (duration: string, defaultValue = 1000): numbe
11
11
  return defaultValue
12
12
  }
13
13
 
14
+ const cssDurationToSeconds = (duration: string, defaultValue = 1000): number => {
15
+
16
+ if (duration.includes('ms')) {
17
+ return Number(duration.replace('ms', '')) / 1000
18
+ }
19
+
20
+ if (duration.includes('s')) {
21
+ return Number(duration.replace('s', ''))
22
+ }
23
+
24
+ return defaultValue
25
+ }
26
+
14
27
  const cssSizeToNumber = (size: string, defaultValue = 0): number => {
15
28
  if (size.includes('px')) {
16
29
  return Number(size.replace('px', ''))
@@ -27,7 +40,17 @@ const cssSizeToNumber = (size: string, defaultValue = 0): number => {
27
40
  return defaultValue
28
41
  }
29
42
 
43
+ const cssRotationToNumber = (size: string, defaultValue = 0): number => {
44
+ if (size.includes('deg')) {
45
+ return Number(size.replace('deg', ''))
46
+ }
47
+
48
+ return defaultValue
49
+ }
50
+
30
51
  export {
31
52
  cssDurationToMilliseconds,
53
+ cssDurationToSeconds,
54
+ cssRotationToNumber,
32
55
  cssSizeToNumber,
33
56
  }
@@ -18,23 +18,26 @@ export default {
18
18
  },
19
19
  step: {
20
20
  type: { name: 'number' },
21
- description: 'The step attribute is a number that specifies the granularity that the value must adhere to, or the special value any, which is described below',
21
+ description:
22
+ 'The step attribute is a number that specifies the granularity that the value must adhere to, or the special value any, which is described below',
22
23
  },
23
24
  value: {
24
25
  type: { name: 'number' },
25
- description: 'The value attribute contains a number which contains a representation of the selected number',
26
+ description:
27
+ 'The value attribute contains a number which contains a representation of the selected number',
26
28
  },
27
29
  },
28
30
  }
29
31
 
30
- const Template = args =>
31
- <mds-input-range {...args}>
32
- Range label
33
- </mds-input-range>
32
+ const Template = args => (
33
+ <mds-input-range {...args}>Range label</mds-input-range>
34
+ )
34
35
 
35
36
  const TemplateFormatLabel = args => {
36
37
  useEffect(() => {
37
- (document.querySelector('#custom-labeled') as HTMLMdsInputRangeElement).formatValue = formatValue
38
+ (
39
+ document.querySelector('#custom-labeled') as HTMLMdsInputRangeElement
40
+ ).formatValue = formatValue
38
41
  }, [])
39
42
  function formatValue (v: number) {
40
43
  return formatBytes(v)
@@ -51,11 +54,19 @@ const TemplateFormatLabel = args => {
51
54
  return `${value} ${sizes[i]}`
52
55
  }
53
56
 
54
- return <div>
55
- <mds-input-range id="custom-labeled" {...args} step="1048576" min="0" max="1073741824">
56
- File size
57
- </mds-input-range>
58
- </div>
57
+ return (
58
+ <div>
59
+ <mds-input-range
60
+ id="custom-labeled"
61
+ {...args}
62
+ step="1048576"
63
+ min="0"
64
+ max="1073741824"
65
+ >
66
+ File size
67
+ </mds-input-range>
68
+ </div>
69
+ )
59
70
  }
60
71
 
61
72
  const hideHeaderCss = `
@@ -64,42 +75,61 @@ const hideHeaderCss = `
64
75
  }
65
76
  `
66
77
 
67
- const HideHeaderTemplate = args =>
78
+ const HideHeaderTemplate = args => (
68
79
  <div>
69
80
  <style>{hideHeaderCss}</style>
70
- <mds-input-range {...args}>
71
- This shouldn't be visible
72
- </mds-input-range>
81
+ <mds-input-range {...args}>This shouldn't be visible</mds-input-range>
73
82
  </div>
83
+ )
74
84
 
85
+ export const Default = {
86
+ render: Template,
87
+ }
75
88
 
76
- export const Default = Template.bind({})
89
+ export const Disabled = {
90
+ render: Template,
77
91
 
78
- export const Disabled = Template.bind({})
79
- Disabled.args = {
80
- disabled: true,
92
+ args: {
93
+ disabled: true,
94
+ },
81
95
  }
82
96
 
83
- export const Min = Template.bind({})
84
- Min.args = {
85
- min: -100,
97
+ export const Min = {
98
+ render: Template,
99
+
100
+ args: {
101
+ min: -100,
102
+ },
86
103
  }
87
104
 
88
- export const Max = Template.bind({})
89
- Max.args = {
90
- max: 200,
105
+ export const Max = {
106
+ render: Template,
107
+
108
+ args: {
109
+ max: 200,
110
+ },
91
111
  }
92
112
 
93
- export const Step = Template.bind({})
94
- Step.args = {
95
- step: 10,
113
+ export const Step = {
114
+ render: Template,
115
+
116
+ args: {
117
+ step: 10,
118
+ },
96
119
  }
97
120
 
98
- export const Value = Template.bind({})
99
- Value.args = {
100
- value: 90,
121
+ export const Value = {
122
+ render: Template,
123
+
124
+ args: {
125
+ value: 90,
126
+ },
101
127
  }
102
128
 
103
- export const FormatLabel = TemplateFormatLabel.bind({})
129
+ export const FormatLabel = {
130
+ render: TemplateFormatLabel,
131
+ }
104
132
 
105
- export const HideHeader = HideHeaderTemplate.bind({})
133
+ export const HideHeader = {
134
+ render: HideHeaderTemplate,
135
+ }
@@ -12,6 +12,18 @@ const buttonVariantDictionary = [
12
12
  'warning',
13
13
  ]
14
14
 
15
+ const buttonDropdownVariantDictionary = [
16
+ 'ai',
17
+ 'dark',
18
+ 'error',
19
+ 'info',
20
+ 'light',
21
+ 'primary',
22
+ 'secondary',
23
+ 'success',
24
+ 'warning',
25
+ ]
26
+
15
27
  const buttonToneVariantDictionary = [
16
28
  'strong',
17
29
  'weak',
@@ -19,6 +31,11 @@ const buttonToneVariantDictionary = [
19
31
  'quiet',
20
32
  ]
21
33
 
34
+ const buttonToneMinimalVariantDictionary = [
35
+ 'strong',
36
+ 'weak',
37
+ ]
38
+
22
39
  const buttonTargetDictionary = [
23
40
  'blank',
24
41
  'self',
@@ -31,6 +48,11 @@ const buttonSizeDictionary = [
31
48
  'xl',
32
49
  ]
33
50
 
51
+ const tabSizeDictionary = [
52
+ 'sm',
53
+ 'md',
54
+ ]
55
+
34
56
  const buttonIconPositionDictionary = [
35
57
  'left',
36
58
  'right',
@@ -43,10 +65,13 @@ const buttonTypeDictionary = [
43
65
  ]
44
66
 
45
67
  export {
68
+ buttonDropdownVariantDictionary,
46
69
  buttonIconPositionDictionary,
47
70
  buttonSizeDictionary,
48
71
  buttonTargetDictionary,
72
+ buttonToneMinimalVariantDictionary,
49
73
  buttonToneVariantDictionary,
50
74
  buttonTypeDictionary,
51
75
  buttonVariantDictionary,
76
+ tabSizeDictionary,
52
77
  }
@@ -1,5 +1,6 @@
1
1
  import jsonIconsDictionary from '../fixtures/icons.json'
2
- import jsonMggIconsDictionary from '../fixtures/iconsauce.json'
2
+ import jsonMggIconsDictionary from '@maggioli-design-system/svg-icons/dist/iconsauce.json'
3
+
3
4
  const iconsDictionary = jsonIconsDictionary
4
5
  const mggIconsDictionary = jsonMggIconsDictionary
5
6
  const svgIconsDictionary = [
@@ -6,7 +6,6 @@
6
6
  "mdi/baseball",
7
7
  "mdi/crown",
8
8
  "mdi/delete",
9
- "mdi/dots-vertical",
10
9
  "mdi/email",
11
10
  "mdi/eye-off-outline",
12
11
  "mdi/file-document-remove-outline",
@@ -343,6 +342,7 @@
343
342
  "mi/baseline/add-circle",
344
343
  "mi/baseline/adobe",
345
344
  "mi/baseline/agriculture",
345
+ "mi/baseline/alternate-email",
346
346
  "mi/baseline/animation",
347
347
  "mi/baseline/arrow-back",
348
348
  "mi/baseline/arrow-back-ios-new",
@@ -376,6 +376,7 @@
376
376
  "mi/baseline/directions-run",
377
377
  "mi/baseline/directions-walk",
378
378
  "mi/baseline/done",
379
+ "mi/baseline/done-all",
379
380
  "mi/baseline/downhill-skiing",
380
381
  "mi/baseline/draw",
381
382
  "mi/baseline/eco",
@@ -426,6 +427,7 @@
426
427
  "mi/baseline/remove-circle",
427
428
  "mi/baseline/remove-red-eye",
428
429
  "mi/baseline/route",
430
+ "mi/baseline/search",
429
431
  "mi/baseline/send",
430
432
  "mi/baseline/settings",
431
433
  "mi/baseline/south",
@@ -433,6 +435,8 @@
433
435
  "mi/baseline/sports-soccer",
434
436
  "mi/baseline/stadium",
435
437
  "mi/baseline/terminal",
438
+ "mi/baseline/text-format",
439
+ "mi/baseline/text-rotate-up",
436
440
  "mi/baseline/timer",
437
441
  "mi/baseline/tv",
438
442
  "mi/baseline/undo",
@@ -446,16 +450,20 @@
446
450
  "mi/baseline/warning",
447
451
  "mi/baseline/warning-amber",
448
452
  "mi/baseline/web",
453
+ "mi/baseline/wrap-text",
449
454
  "mi/baseline/wysiwyg",
450
455
  "mi/outline/auto-awesome",
451
456
  "mi/outline/backspace",
452
457
  "mi/outline/circle",
453
458
  "mi/outline/dark-mode",
454
459
  "mi/outline/help-outline",
460
+ "mi/outline/ios-share",
455
461
  "mi/outline/mic",
456
462
  "mi/outline/mic-off",
457
463
  "mi/outline/policy",
458
464
  "mi/outline/schedule",
465
+ "mi/outline/thumb-down",
466
+ "mi/outline/thumb-up",
459
467
  "mi/round/arrow-circle-down",
460
468
  "mi/round/email",
461
469
  "mi/round/menu",
@@ -21,7 +21,7 @@
21
21
  pointer-events: none;
22
22
  position: absolute;
23
23
  transition-behavior: allow-discrete;
24
- transition-property: display opacity;
24
+ transition-property: display, opacity;
25
25
  }
26
26
 
27
27
  .contrast-area-50 {
@@ -14,6 +14,10 @@ export type ButtonSizeType =
14
14
  | 'lg'
15
15
  | 'xl'
16
16
 
17
+ export type TabSizeType =
18
+ | 'sm'
19
+ | 'md'
20
+
17
21
  export type ButtonIconPositionType =
18
22
  | 'left'
19
23
  | 'right'
@@ -30,3 +34,14 @@ export type ButtonVariantType =
30
34
  | 'secondary'
31
35
  | 'success'
32
36
  | 'warning'
37
+
38
+ export type ButtonDropdownVariantType =
39
+ | 'ai'
40
+ | 'dark'
41
+ | 'error'
42
+ | 'info'
43
+ | 'light'
44
+ | 'primary'
45
+ | 'secondary'
46
+ | 'success'
47
+ | 'warning'
@@ -1,310 +0,0 @@
1
- [
2
- "mgg/abitazione-principale",
3
- "mgg/action-email-overlay-progress-10",
4
- "mgg/action-email-overlay-progress-90",
5
- "mgg/action-email-send-wait",
6
- "mgg/action-email-send-warning",
7
- "mgg/action-hide-down-side",
8
- "mgg/action-hide-left-side",
9
- "mgg/action-hide-right-side",
10
- "mgg/action-hide-sidebar-left",
11
- "mgg/action-hide-sidebar-right",
12
- "mgg/action-show-down-side",
13
- "mgg/action-show-left-side",
14
- "mgg/action-show-right-side",
15
- "mgg/action-show-sidebar-left",
16
- "mgg/action-show-sidebar-right",
17
- "mgg/activation-key",
18
- "mgg/activity-list",
19
- "mgg/add-document-settings",
20
- "mgg/additional-contents",
21
- "mgg/address-book-off",
22
- "mgg/address-book-on",
23
- "mgg/adv-denied",
24
- "mgg/ai-brain-outline",
25
- "mgg/ai-brain",
26
- "mgg/ai-chatbot-outline",
27
- "mgg/ai-chatbot",
28
- "mgg/ai-human",
29
- "mgg/ai-message",
30
- "mgg/ai-outline",
31
- "mgg/ai-status-completed",
32
- "mgg/ai-status-error",
33
- "mgg/ai-status-processing",
34
- "mgg/ai-status-suspended",
35
- "mgg/alerts-pagopa",
36
- "mgg/anagrafe-nazionale",
37
- "mgg/anist",
38
- "mgg/anpr",
39
- "mgg/ansc",
40
- "mgg/area-edificabile",
41
- "mgg/area-weather",
42
- "mgg/assignments-accept-rejection",
43
- "mgg/assignments-acceptance-accepted",
44
- "mgg/assignments-assignment",
45
- "mgg/assignments-competence",
46
- "mgg/assignments-completed",
47
- "mgg/assignments-rejected",
48
- "mgg/assignments-sorted",
49
- "mgg/auto-awesome-motion",
50
- "mgg/back-to-document",
51
- "mgg/balance",
52
- "mgg/bill",
53
- "mgg/box-multiple",
54
- "mgg/breadcrumb",
55
- "mgg/bus-stops",
56
- "mgg/calendar-euro",
57
- "mgg/calendar-multiple",
58
- "mgg/calendar-schedule",
59
- "mgg/cancelled-sheet",
60
- "mgg/car-license",
61
- "mgg/card-stamping",
62
- "mgg/cash-register-settings",
63
- "mgg/check-small",
64
- "mgg/checklist-settings",
65
- "mgg/checklist",
66
- "mgg/citizenship",
67
- "mgg/city-bin",
68
- "mgg/classic-permission",
69
- "mgg/consumption-high",
70
- "mgg/consumption-low",
71
- "mgg/consumption-medium",
72
- "mgg/copy-paste",
73
- "mgg/d-instrumental-buildings",
74
- "mgg/data-analytics-alt",
75
- "mgg/data-analytics-search",
76
- "mgg/data-analytics-time",
77
- "mgg/data-category-alt",
78
- "mgg/data-civil-union",
79
- "mgg/data-cleaning",
80
- "mgg/data-death-civil-union",
81
- "mgg/data-death-marriage",
82
- "mgg/data-end-civil-union",
83
- "mgg/data-end-marriage",
84
- "mgg/dataset",
85
- "mgg/delivered-to-the-recipient",
86
- "mgg/document-euro",
87
- "mgg/document-less",
88
- "mgg/document-magic",
89
- "mgg/document-rename",
90
- "mgg/download-csv",
91
- "mgg/download-html",
92
- "mgg/download-json",
93
- "mgg/edit-article",
94
- "mgg/electronic-document",
95
- "mgg/email-assigned",
96
- "mgg/email-open-blocked",
97
- "mgg/email-open-check",
98
- "mgg/email-open-lock",
99
- "mgg/email-open-off",
100
- "mgg/email-open-play",
101
- "mgg/email-open-stop",
102
- "mgg/email-open-user",
103
- "mgg/email-open-view",
104
- "mgg/email-to-assign",
105
- "mgg/face-to-face-meeting",
106
- "mgg/factory",
107
- "mgg/farmer",
108
- "mgg/field",
109
- "mgg/file-certificate",
110
- "mgg/file-clock",
111
- "mgg/file-download",
112
- "mgg/file-folder-tree-open",
113
- "mgg/file-folder-tree",
114
- "mgg/file-html",
115
- "mgg/file-import",
116
- "mgg/file-odt",
117
- "mgg/file-rtf",
118
- "mgg/file-settings-alt",
119
- "mgg/file-stack-alt",
120
- "mgg/file-stack",
121
- "mgg/file-sub",
122
- "mgg/file-type-document-attachment",
123
- "mgg/file-type-document-multiple-attachment",
124
- "mgg/file-type-document-rubber-stamp",
125
- "mgg/file-type-home",
126
- "mgg/file-type-pdf",
127
- "mgg/file-type-success",
128
- "mgg/file-type-warning",
129
- "mgg/file-xml",
130
- "mgg/finance-euro-cashback",
131
- "mgg/fit-horizontal",
132
- "mgg/fit-vertical",
133
- "mgg/fontawesome-torii-gate",
134
- "mgg/forwarded-with-a-single-sending",
135
- "mgg/fullscreen-on-alt",
136
- "mgg/google-book-closed-outline",
137
- "mgg/google-book-closed",
138
- "mgg/google-book-large-outline",
139
- "mgg/google-book-large",
140
- "mgg/google-book-opening-outline",
141
- "mgg/google-book-opening",
142
- "mgg/google-check-small",
143
- "mgg/google-drag-pan",
144
- "mgg/google-experiment",
145
- "mgg/google-face-retouching-off",
146
- "mgg/google-hub",
147
- "mgg/google-keyboard-double-arrow-down",
148
- "mgg/google-keyboard-double-arrow-up",
149
- "mgg/google-newsstand",
150
- "mgg/google-place-item",
151
- "mgg/group-assigned-automatically-system",
152
- "mgg/group-ceased",
153
- "mgg/group-inherited",
154
- "mgg/heart-outline",
155
- "mgg/heart",
156
- "mgg/historic-building-unusable",
157
- "mgg/historic-building",
158
- "mgg/home-hammer",
159
- "mgg/home-link",
160
- "mgg/home-number",
161
- "mgg/inad",
162
- "mgg/inagibile",
163
- "mgg/inps",
164
- "mgg/input-calendar-costs",
165
- "mgg/input-calendar-period",
166
- "mgg/input-calendar-time",
167
- "mgg/instrumental-buildings",
168
- "mgg/internationalization-add",
169
- "mgg/internationalization-check",
170
- "mgg/internationalization-delete",
171
- "mgg/isbn",
172
- "mgg/judge-hammer",
173
- "mgg/land-registry",
174
- "mgg/layers",
175
- "mgg/liquidated-document",
176
- "mgg/list-dot",
177
- "mgg/logo-girasole-camuno",
178
- "mgg/logo-gpl",
179
- "mgg/logo-ilibro",
180
- "mgg/map-marker-settings",
181
- "mgg/masks-office",
182
- "mgg/mdi-binoculars",
183
- "mgg/mdi-graph-outline",
184
- "mgg/mdi-microscope",
185
- "mgg/mdi-telescope",
186
- "mgg/military-draft",
187
- "mgg/money-bag-settings",
188
- "mgg/money-on-hand",
189
- "mgg/money-paid",
190
- "mgg/move-down",
191
- "mgg/move-left",
192
- "mgg/move-right",
193
- "mgg/move-row-down",
194
- "mgg/move-row-up",
195
- "mgg/move-up",
196
- "mgg/multiple-payments",
197
- "mgg/national-document-off",
198
- "mgg/national-document",
199
- "mgg/not-instrumental-d-buildings",
200
- "mgg/not-sent-yet",
201
- "mgg/office-off",
202
- "mgg/order-return-down-left-to-right",
203
- "mgg/order-return-down-left-to-up",
204
- "mgg/order-return-down-right-to-left",
205
- "mgg/order-return-down-right-to-up",
206
- "mgg/order-return-up-left-to-down",
207
- "mgg/order-return-up-left-to-right",
208
- "mgg/order-return-up-right-to-down",
209
- "mgg/order-return-up-right-to-left",
210
- "mgg/order-zigzag-down-left-to-right",
211
- "mgg/order-zigzag-down-left-to-up",
212
- "mgg/order-zigzag-down-right-to-left",
213
- "mgg/order-zigzag-down-right-to-up",
214
- "mgg/order-zigzag-up-left-to-down",
215
- "mgg/order-zigzag-up-left-to-right",
216
- "mgg/order-zigzag-up-right-to-down",
217
- "mgg/order-zigzag-up-right-to-left",
218
- "mgg/other-properties-off",
219
- "mgg/other-properties",
220
- "mgg/other-residential-buildings",
221
- "mgg/pagopa",
222
- "mgg/partial-wall",
223
- "mgg/payment-settings",
224
- "mgg/pec-handshake",
225
- "mgg/pec-ok",
226
- "mgg/pec-sent-to-the-not-pec-recipient",
227
- "mgg/places-green-doc",
228
- "mgg/places-green-history",
229
- "mgg/places-green-info",
230
- "mgg/places-green",
231
- "mgg/places-holiday-beach",
232
- "mgg/places-market",
233
- "mgg/places-park-alt",
234
- "mgg/places-park",
235
- "mgg/places-store-access-denied",
236
- "mgg/pos",
237
- "mgg/property-owner",
238
- "mgg/registro-imprese",
239
- "mgg/relevance",
240
- "mgg/reporting-abuse",
241
- "mgg/residency-permit",
242
- "mgg/robot",
243
- "mgg/roles-permission",
244
- "mgg/rubber-stamp",
245
- "mgg/rurale",
246
- "mgg/search-maggioli",
247
- "mgg/send-progress",
248
- "mgg/sending-error",
249
- "mgg/session",
250
- "mgg/settings-attachment",
251
- "mgg/sign-shop",
252
- "mgg/square-viewfinder",
253
- "mgg/stacked-documents",
254
- "mgg/stamp",
255
- "mgg/status-progress-a-quarter",
256
- "mgg/status-progress-complete",
257
- "mgg/status-progress-half",
258
- "mgg/status-progress-three-quarter",
259
- "mgg/stuck-codes",
260
- "mgg/subtractive-permission",
261
- "mgg/tea-light",
262
- "mgg/terminal",
263
- "mgg/tie",
264
- "mgg/to-single-document",
265
- "mgg/to-stacked-documents",
266
- "mgg/todo-action-businessman-view",
267
- "mgg/todo-action-certificate",
268
- "mgg/todo-action-contract",
269
- "mgg/todo-action-currency-euro",
270
- "mgg/todo-action-graduate",
271
- "mgg/todo-action-graduation-hat",
272
- "mgg/todo-action-judge",
273
- "mgg/todo-action-money",
274
- "mgg/todo-action-protocol",
275
- "mgg/todo-action-upload",
276
- "mgg/todo-action-wkf-document-checked",
277
- "mgg/todo-action-wkf-people-checked",
278
- "mgg/todo-action-wkf-set-pub-date",
279
- "mgg/todo-completed-re-executable",
280
- "mgg/todo-completed",
281
- "mgg/todo-in-charge-by-me",
282
- "mgg/todo-in-charge-by-others",
283
- "mgg/todo-in-evaluation-by-others",
284
- "mgg/todo-in-evaluation",
285
- "mgg/todo-incoming-in-charge",
286
- "mgg/todo-incoming-rejected",
287
- "mgg/todo-pause",
288
- "mgg/todo-running-completed",
289
- "mgg/todo-suspended",
290
- "mgg/todo",
291
- "mgg/touchpoint-laptop-info",
292
- "mgg/touchpoint-laptop-search",
293
- "mgg/traffic-cone",
294
- "mgg/trending-down",
295
- "mgg/tribute",
296
- "mgg/tributes",
297
- "mgg/urban-city",
298
- "mgg/user-dead",
299
- "mgg/user-family",
300
- "mgg/user-location-off",
301
- "mgg/user-location",
302
- "mgg/user-signed-out",
303
- "mgg/user-substitution",
304
- "mgg/view-chart-gantt",
305
- "mgg/view-side-by-side",
306
- "mgg/vote",
307
- "mgg/warning-superscript",
308
- "mgg/web-app-ansc",
309
- "mgg/work-book"
310
- ]