@melodicdev/components 1.5.13 → 1.6.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.
- package/assets/melodic-components.js +741 -423
- package/assets/melodic-components.js.map +1 -1
- package/assets/melodic-components.min.js +2081 -1760
- package/lib/components/data-display/badge/badge.styles.d.ts.map +1 -1
- package/lib/components/data-display/badge/badge.styles.js +11 -0
- package/lib/components/forms/autocomplete/autocomplete.component.d.ts.map +1 -1
- package/lib/components/forms/autocomplete/autocomplete.component.js +17 -0
- package/lib/components/forms/checkbox/checkbox.component.d.ts.map +1 -1
- package/lib/components/forms/checkbox/checkbox.component.js +8 -0
- package/lib/components/forms/date-picker/date-picker.component.d.ts.map +1 -1
- package/lib/components/forms/date-picker/date-picker.component.js +8 -0
- package/lib/components/forms/date-time-picker/date-time-picker.component.d.ts.map +1 -1
- package/lib/components/forms/date-time-picker/date-time-picker.component.js +8 -0
- package/lib/components/forms/input/input.component.d.ts.map +1 -1
- package/lib/components/forms/input/input.component.js +8 -0
- package/lib/components/forms/radio/radio-group.component.d.ts.map +1 -1
- package/lib/components/forms/radio/radio-group.component.js +8 -0
- package/lib/components/forms/select/select.component.d.ts.map +1 -1
- package/lib/components/forms/select/select.component.js +17 -0
- package/lib/components/forms/slider/slider.component.d.ts.map +1 -1
- package/lib/components/forms/slider/slider.component.js +8 -0
- package/lib/components/forms/textarea/textarea.component.d.ts.map +1 -1
- package/lib/components/forms/textarea/textarea.component.js +8 -0
- package/lib/components/forms/time-picker/time-picker.component.d.ts.map +1 -1
- package/lib/components/forms/time-picker/time-picker.component.js +8 -0
- package/lib/components/forms/toggle/toggle.component.d.ts.map +1 -1
- package/lib/components/forms/toggle/toggle.component.js +8 -0
- package/lib/forms-adapters.d.ts +2 -0
- package/lib/forms-adapters.d.ts.map +1 -0
- package/lib/forms-adapters.js +105 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"badge.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/badge/badge.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"badge.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/badge/badge.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,iDAwHvB,CAAC"}
|
|
@@ -14,6 +14,7 @@ export const badgeStyles = () => css `
|
|
|
14
14
|
|
|
15
15
|
/* ── Badge: dot ── */
|
|
16
16
|
--ml-badge-dot-size: 0.375rem;
|
|
17
|
+
--ml-badge-dot-size-xs: 0.3125rem;
|
|
17
18
|
--ml-badge-dot-size-lg: 0.5rem;
|
|
18
19
|
|
|
19
20
|
/* ── Badge: secondary variant ── */
|
|
@@ -51,6 +52,16 @@ export const badgeStyles = () => css `
|
|
|
51
52
|
height: var(--ml-badge-dot-size-lg);
|
|
52
53
|
}
|
|
53
54
|
|
|
55
|
+
.ml-badge--xs .ml-badge__dot {
|
|
56
|
+
width: var(--ml-badge-dot-size-xs);
|
|
57
|
+
height: var(--ml-badge-dot-size-xs);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.ml-badge--xs {
|
|
61
|
+
padding: 1px var(--ml-space-1-5);
|
|
62
|
+
font-size: 0.6875rem;
|
|
63
|
+
}
|
|
64
|
+
|
|
54
65
|
.ml-badge--sm {
|
|
55
66
|
padding: 2px var(--ml-space-2);
|
|
56
67
|
font-size: var(--ml-text-xs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/autocomplete/autocomplete.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"autocomplete.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/autocomplete/autocomplete.component.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,26 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { computePosition, offset, flip, shift } from '../../../utils/positioning/index.js';
|
|
9
10
|
import { autocompleteTemplate } from './autocomplete.template.js';
|
|
10
11
|
import { autocompleteStyles } from './autocomplete.styles.js';
|
|
12
|
+
registerAdapter((el) => el.tagName === 'ML-AUTOCOMPLETE', {
|
|
13
|
+
inputEvent: 'ml:change',
|
|
14
|
+
blurEvent: 'focusout',
|
|
15
|
+
getValue: (el) => {
|
|
16
|
+
const e = el;
|
|
17
|
+
return e.multiple ? (e.values ?? []) : (e.value ?? '');
|
|
18
|
+
},
|
|
19
|
+
setValue: (el, value) => {
|
|
20
|
+
const e = el;
|
|
21
|
+
if (Array.isArray(value))
|
|
22
|
+
e.values = value;
|
|
23
|
+
else
|
|
24
|
+
e.value = value !== null && value !== undefined ? String(value) : '';
|
|
25
|
+
},
|
|
26
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
27
|
+
});
|
|
11
28
|
/**
|
|
12
29
|
* ml-autocomplete - Typeahead/autocomplete form component
|
|
13
30
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/checkbox/checkbox.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"checkbox.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/checkbox/checkbox.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAYpD;;;;;;;;;;;GAWG;AACH,qBAMa,iBAAkB,YAAW,WAAW;IAC7C,UAAU,EAAG,WAAW,CAAC;IAEhC,qBAAqB;IACd,KAAK,SAAM;IAElB,mCAAmC;IAC5B,IAAI,SAAM;IAEjB,oBAAoB;IACb,IAAI,EAAE,IAAI,CAAQ;IAEzB,oBAAoB;IACb,OAAO,UAAS;IAEvB,0BAA0B;IACnB,aAAa,UAAS;IAE7B,qBAAqB;IACd,QAAQ,UAAS;IAEjB,YAAY,GAAI,OAAO,KAAK,KAAG,IAAI,CAiBxC;CACF"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { checkboxTemplate } from './checkbox.template.js';
|
|
9
10
|
import { checkboxStyles } from './checkbox.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-CHECKBOX', {
|
|
12
|
+
inputEvent: 'ml:change',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => Boolean(el.checked),
|
|
15
|
+
setValue: (el, value) => { el.checked = Boolean(value); },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
/**
|
|
11
19
|
* ml-checkbox - Checkbox input component
|
|
12
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-picker.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/date-picker/date-picker.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"date-picker.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/date-picker/date-picker.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAczE;;;;;;;;;;;;GAYG;AACH,qBAMa,mBAAoB,YAAW,WAAW,EAAE,QAAQ,EAAE,SAAS;IACpE,UAAU,EAAG,WAAW,CAAC;IAEhC,+CAA+C;IACxC,KAAK,SAAM;IAElB,uBAAuB;IAChB,WAAW,SAAiB;IAEnC,kBAAkB;IACX,KAAK,SAAM;IAElB,gBAAgB;IACT,IAAI,SAAM;IAEjB,oBAAoB;IACb,KAAK,SAAM;IAElB,iBAAiB;IACV,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAEvC,qBAAqB;IACd,QAAQ,UAAS;IAExB,qBAAqB;IACd,QAAQ,UAAS;IAExB,2CAA2C;IACpC,GAAG,SAAM;IAEhB,2CAA2C;IACpC,GAAG,SAAM;IAEhB,iFAAiF;IAC1E,OAAO,EAAE,MAAM,GAAG,MAAM,CAAM;IAErC,8EAA8E;IACvE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAM;IAErC,2CAA2C;IACpC,MAAM,UAAS;IAEtB,OAAO,CAAC,kBAAkB,CAA6B;IAEhD,QAAQ,IAAI,IAAI;IAOhB,SAAS,IAAI,IAAI;IAQjB,cAAc,QAAO,IAAI,CAM9B;IAEF,uDAAuD;IAChD,WAAW,GAAI,OAAO,KAAK,KAAG,IAAI,CAGvC;IAEF,4CAA4C;IACrC,gBAAgB,QAAO,IAAI,CAIhC;IAEF,oFAAoF;IAC7E,gBAAgB,GAAI,OAAO,KAAK,KAAG,IAAI,CAK5C;IAEK,aAAa,GAAI,OAAO,aAAa,KAAG,IAAI,CAmBjD;IAEF,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAW5B;IAEF,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,YAAY;CAGpB"}
|
|
@@ -5,9 +5,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { computePosition, autoUpdate, offset, flip, shift } from '../../../utils/positioning/index.js';
|
|
9
10
|
import { datePickerTemplate } from './date-picker.template.js';
|
|
10
11
|
import { datePickerStyles } from './date-picker.styles.js';
|
|
12
|
+
registerAdapter((el) => el.tagName === 'ML-DATE-PICKER', {
|
|
13
|
+
inputEvent: 'ml:select',
|
|
14
|
+
blurEvent: 'focusout',
|
|
15
|
+
getValue: (el) => el.value ?? '',
|
|
16
|
+
setValue: (el, value) => { el.value = value !== null && value !== undefined ? String(value) : ''; },
|
|
17
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
18
|
+
});
|
|
11
19
|
/**
|
|
12
20
|
* ml-date-picker - Date input with calendar dropdown
|
|
13
21
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-time-picker.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/date-time-picker/date-time-picker.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"date-time-picker.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/date-time-picker/date-time-picker.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAczE,OAAO,yCAAyC,CAAC;AACjD,OAAO,yCAAyC,CAAC;AAiCjD;;;;;;;;;;;;;GAaG;AACH,qBAMa,uBAAwB,YAAW,WAAW,EAAE,QAAQ,EAAE,SAAS;IACxE,UAAU,EAAG,WAAW,CAAC;IAEhC,yDAAyD;IAClD,KAAK,SAAM;IAElB,uBAAuB;IAChB,WAAW,SAA0B;IAE5C,kBAAkB;IACX,KAAK,SAAM;IAElB,gBAAgB;IACT,IAAI,SAAM;IAEjB,oBAAoB;IACb,KAAK,SAAM;IAElB,iBAAiB;IACV,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAEvC,qBAAqB;IACd,QAAQ,UAAS;IAExB,qBAAqB;IACd,QAAQ,UAAS;IAExB,2CAA2C;IACpC,OAAO,SAAM;IAEpB,2CAA2C;IACpC,OAAO,SAAM;IAEpB,sCAAsC;IAC/B,OAAO,SAAM;IAEpB,sCAAsC;IAC/B,OAAO,SAAM;IAEpB,2BAA2B;IACpB,IAAI,SAAM;IAEjB,yCAAyC;IAClC,UAAU,UAAQ;IAEzB,4BAA4B;IACrB,SAAS,SAAM;IAEtB,4BAA4B;IACrB,SAAS,SAAM;IAEtB,OAAO,CAAC,UAAU,CAAyB;IAE3C,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAEM,QAAQ,IAAI,IAAI;IAKhB,SAAS,IAAI,IAAI;IAKxB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,oBAAoB;IA+E5B,OAAO,CAAC,UAAU;CAqBlB"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { dateTimePickerTemplate } from './date-time-picker.template.js';
|
|
9
10
|
import { dateTimePickerStyles } from './date-time-picker.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-DATE-TIME-PICKER', {
|
|
12
|
+
inputEvent: 'ml:change',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => el.value ?? '',
|
|
15
|
+
setValue: (el, value) => { el.value = value !== null && value !== undefined ? String(value) : ''; },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
// Ensure sub-components are registered
|
|
11
19
|
import '../date-picker/date-picker.component.js';
|
|
12
20
|
import '../time-picker/time-picker.component.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/input/input.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"input.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/input/input.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAYlD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAMa,cAAe,YAAW,WAAW,EAAE,MAAM;IAClD,UAAU,EAAG,WAAW,CAAC;IAEhC,iBAAiB;IACV,IAAI,EAAE,SAAS,CAAU;IAEhC,oBAAoB;IACb,KAAK,SAAM;IAElB,uBAAuB;IAChB,WAAW,SAAM;IAExB,iBAAiB;IACV,KAAK,SAAM;IAElB,kCAAkC;IAC3B,IAAI,SAAM;IAEjB,iDAAiD;IAC1C,KAAK,SAAM;IAElB,iBAAiB;IACV,IAAI,EAAE,IAAI,CAAQ;IAEzB,wBAAwB;IACjB,QAAQ,UAAS;IAExB,0BAA0B;IACnB,QAAQ,UAAS;IAExB,uBAAuB;IAChB,QAAQ,UAAS;IAExB,6BAA6B;IACtB,YAAY,SAAS;IAE5B,2BAA2B;IACpB,OAAO,UAAS;IAEhB,MAAM,IAAI,IAAI;IAOd,WAAW,GAAI,OAAO,KAAK,KAAG,IAAI,CAWvC;IAEK,YAAY,GAAI,OAAO,KAAK,KAAG,IAAI,CAWxC;IAEK,WAAW,QAAO,IAAI,CAQ3B;IAEK,UAAU,QAAO,IAAI,CAQ1B;CACF"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { inputTemplate } from './input.template.js';
|
|
9
10
|
import { inputStyles } from './input.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-INPUT', {
|
|
12
|
+
inputEvent: 'ml:input',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => el.value ?? '',
|
|
15
|
+
setValue: (el, value) => { el.value = value !== null && value !== undefined ? String(value) : ''; },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
/**
|
|
11
19
|
* ml-input - Text input component with label, hint, and error states
|
|
12
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio-group.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio/radio-group.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"radio-group.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio/radio-group.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAY3D;;;;;;;;;;;;GAYG;AACH,qBAMa,mBAAoB,YAAW,WAAW,EAAE,MAAM;IACvD,UAAU,EAAG,WAAW,CAAC;IAEhC,kBAAkB;IACX,KAAK,SAAM;IAElB,sBAAsB;IACf,IAAI,SAAM;IAEjB,6BAA6B;IACtB,KAAK,SAAM;IAElB,gBAAgB;IACT,IAAI,SAAM;IAEjB,oBAAoB;IACb,KAAK,SAAM;IAElB,yBAAyB;IAClB,WAAW,EAAE,WAAW,CAAc;IAE7C,qBAAqB;IACd,QAAQ,UAAS;IAExB,qBAAqB;IACd,QAAQ,UAAS;IAEjB,MAAM,IAAI,IAAI;IAQrB,OAAO,CAAC,iBAAiB,CAmBvB;IAEF,OAAO,CAAC,iBAAiB;CAuBzB"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { radioGroupTemplate } from './radio-group.template.js';
|
|
9
10
|
import { radioGroupStyles } from './radio-group.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-RADIO-GROUP', {
|
|
12
|
+
inputEvent: 'ml:change',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => el.value ?? '',
|
|
15
|
+
setValue: (el, value) => { el.value = value !== null && value !== undefined ? String(value) : ''; },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
/**
|
|
11
19
|
* ml-radio-group - Container for radio buttons
|
|
12
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/select/select.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"select.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/select/select.component.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,26 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { computePosition, offset, flip, shift } from '../../../utils/positioning/index.js';
|
|
9
10
|
import { selectTemplate } from './select.template.js';
|
|
10
11
|
import { selectStyles } from './select.styles.js';
|
|
12
|
+
registerAdapter((el) => el.tagName === 'ML-SELECT', {
|
|
13
|
+
inputEvent: 'ml:change',
|
|
14
|
+
blurEvent: 'focusout',
|
|
15
|
+
getValue: (el) => {
|
|
16
|
+
const e = el;
|
|
17
|
+
return e.multiple ? (e.values ?? []) : (e.value ?? '');
|
|
18
|
+
},
|
|
19
|
+
setValue: (el, value) => {
|
|
20
|
+
const e = el;
|
|
21
|
+
if (Array.isArray(value))
|
|
22
|
+
e.values = value;
|
|
23
|
+
else
|
|
24
|
+
e.value = value !== null && value !== undefined ? String(value) : '';
|
|
25
|
+
},
|
|
26
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
27
|
+
});
|
|
11
28
|
/**
|
|
12
29
|
* ml-select - Custom select/dropdown component
|
|
13
30
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/slider/slider.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"slider.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/slider/slider.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAYpD;;;;;;;;;;;GAWG;AACH,qBAMa,eAAgB,YAAW,WAAW;IAC3C,UAAU,EAAG,WAAW,CAAC;IAEhC,iBAAiB;IACV,KAAK,SAAM;IAElB,oBAAoB;IACb,KAAK,SAAM;IAElB,oBAAoB;IACb,GAAG,SAAK;IAEf,oBAAoB;IACb,GAAG,SAAO;IAEjB,qBAAqB;IACd,IAAI,SAAK;IAEhB,kBAAkB;IACX,IAAI,EAAE,IAAI,CAAQ;IAEzB,yBAAyB;IAClB,QAAQ,UAAS;IAExB,yBAAyB;IAClB,SAAS,UAAS;IAEzB,gBAAgB;IACT,IAAI,SAAM;IAEjB,oBAAoB;IACb,KAAK,SAAM;IAElB,+BAA+B;IAC/B,IAAW,KAAK,IAAI,MAAM,CAIzB;IAED,4DAA4D;IAC5D,IAAW,SAAS,IAAI,MAAM,CAG7B;IAEM,WAAW,GAAI,OAAO,KAAK,KAAG,IAAI,CAWvC;IAEK,YAAY,GAAI,OAAO,KAAK,KAAG,IAAI,CAWxC;CACF"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { sliderTemplate } from './slider.template.js';
|
|
9
10
|
import { sliderStyles } from './slider.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-SLIDER', {
|
|
12
|
+
inputEvent: 'ml:input',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => Number(el.value) || 0,
|
|
15
|
+
setValue: (el, value) => { el.value = Number(value) || 0; },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
/**
|
|
11
19
|
* ml-slider - Range slider input
|
|
12
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/textarea/textarea.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"textarea.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/textarea/textarea.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAYpD;;;;;;;;;;;;;;GAcG;AACH,qBAMa,iBAAkB,YAAW,WAAW,EAAE,MAAM;IACrD,UAAU,EAAG,WAAW,CAAC;IAEhC,oBAAoB;IACb,KAAK,SAAM;IAElB,uBAAuB;IAChB,WAAW,SAAM;IAExB,iBAAiB;IACV,KAAK,SAAM;IAElB,qCAAqC;IAC9B,IAAI,SAAM;IAEjB,iDAAiD;IAC1C,KAAK,SAAM;IAElB,iBAAiB;IACV,IAAI,EAAE,IAAI,CAAQ;IAEzB,mCAAmC;IAC5B,IAAI,SAAK;IAEhB,+BAA+B;IACxB,SAAS,SAAK;IAErB,2BAA2B;IACpB,QAAQ,UAAS;IAExB,6BAA6B;IACtB,QAAQ,UAAS;IAExB,uBAAuB;IAChB,QAAQ,UAAS;IAExB,4BAA4B;IACrB,MAAM,UAAS;IAEtB,2BAA2B;IACpB,OAAO,UAAS;IAEhB,MAAM,IAAI,IAAI;IAMd,WAAW,GAAI,OAAO,KAAK,KAAG,IAAI,CAWvC;IAEK,YAAY,GAAI,OAAO,KAAK,KAAG,IAAI,CAWxC;IAEK,WAAW,QAAO,IAAI,CAQ3B;IAEK,UAAU,QAAO,IAAI,CAQ1B;CACF"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { textareaTemplate } from './textarea.template.js';
|
|
9
10
|
import { textareaStyles } from './textarea.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-TEXTAREA', {
|
|
12
|
+
inputEvent: 'ml:input',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => el.value ?? '',
|
|
15
|
+
setValue: (el, value) => { el.value = value !== null && value !== undefined ? String(value) : ''; },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
/**
|
|
11
19
|
* ml-textarea - Multi-line text input component
|
|
12
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-picker.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/time-picker/time-picker.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"time-picker.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/time-picker/time-picker.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAuCzE;;;;;;;;;;;GAWG;AACH,qBAMa,mBAAoB,YAAW,WAAW,EAAE,QAAQ,EAAE,SAAS;IACpE,UAAU,EAAG,WAAW,CAAC;IAEhC,gDAAgD;IACzC,KAAK,SAAM;IAElB,uBAAuB;IAChB,WAAW,SAAiB;IAEnC,kBAAkB;IACX,KAAK,SAAM;IAElB,gBAAgB;IACT,IAAI,SAAM;IAEjB,oBAAoB;IACb,KAAK,SAAM;IAElB,iBAAiB;IACV,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAEvC,qBAAqB;IACd,QAAQ,UAAS;IAExB,qBAAqB;IACd,QAAQ,UAAS;IAExB,sCAAsC;IAC/B,GAAG,SAAM;IAEhB,sCAAsC;IAC/B,GAAG,SAAM;IAEhB,uFAAuF;IAChF,IAAI,SAAM;IAEjB,oDAAoD;IAC7C,UAAU,UAAQ;IAEzB,kCAAkC;IAC3B,MAAM,UAAS;IAEtB,2BAA2B;IACpB,QAAQ,SAAK;IAEpB,6BAA6B;IACtB,UAAU,SAAK;IAEtB,6BAA6B;IACtB,UAAU,SAAK;IAEtB,oCAAoC;IAC7B,UAAU,EAAE,IAAI,GAAG,IAAI,CAAQ;IAEtC,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED,IAAW,WAAW,IAAI,OAAO,CAEhC;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,WAAW,IAAI,MAAM,CAQ/B;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAEM,QAAQ,IAAI,IAAI;IAOhB,SAAS,IAAI,IAAI;IAQjB,aAAa,QAAO,IAAI,CAM7B;IAEK,aAAa,QAAO,IAAI,CAS7B;IAEK,aAAa,QAAO,IAAI,CAQ7B;IAEK,eAAe,QAAO,IAAI,CAE/B;IAEK,eAAe,QAAO,IAAI,CAE/B;IAEK,eAAe,QAAO,IAAI,CAE/B;IAEK,eAAe,QAAO,IAAI,CAE/B;IAEK,YAAY,QAAO,IAAI,CAI5B;IAEK,gBAAgB,QAAO,IAAI,CAOhC;IAEK,cAAc,QAAO,IAAI,CAM9B;IAEF,uDAAuD;IAChD,eAAe,GAAI,OAAO,KAAK,KAAG,IAAI,CAG3C;IAEF,2CAA2C;IACpC,gBAAgB,QAAO,IAAI,CAIhC;IAEK,aAAa,GAAI,OAAO,aAAa,KAAG,IAAI,CAmBjD;IAEK,eAAe,GAAI,OAAO,KAAK,KAAG,IAAI,CAa3C;IAEK,iBAAiB,GAAI,OAAO,KAAK,KAAG,IAAI,CAO7C;IAEK,iBAAiB,GAAI,OAAO,KAAK,KAAG,IAAI,CAO7C;IAEK,cAAc,QAAO,IAAI,CAK9B;IAEK,gBAAgB,QAAO,IAAI,CAEhC;IAEK,gBAAgB,QAAO,IAAI,CAEhC;IAEK,gBAAgB,GAAI,OAAO,KAAK,KAAG,IAAI,CAE5C;IAEK,oBAAoB,GAAI,OAAO,aAAa,KAAG,IAAI,CAkBxD;IAEF,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAY5B;IAEF,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,YAAY;CAGpB"}
|
|
@@ -5,9 +5,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { computePosition, autoUpdate, offset, flip, shift } from '../../../utils/positioning/index.js';
|
|
9
10
|
import { timePickerTemplate } from './time-picker.template.js';
|
|
10
11
|
import { timePickerStyles } from './time-picker.styles.js';
|
|
12
|
+
registerAdapter((el) => el.tagName === 'ML-TIME-PICKER', {
|
|
13
|
+
inputEvent: 'ml:change',
|
|
14
|
+
blurEvent: 'focusout',
|
|
15
|
+
getValue: (el) => el.value ?? '',
|
|
16
|
+
setValue: (el, value) => { el.value = value !== null && value !== undefined ? String(value) : ''; },
|
|
17
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
18
|
+
});
|
|
11
19
|
function pad(n) {
|
|
12
20
|
return String(n).padStart(2, '0');
|
|
13
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/toggle/toggle.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"toggle.component.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/toggle/toggle.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAYpD;;;;;;;;;;;GAWG;AACH,qBAMa,eAAgB,YAAW,WAAW;IAC3C,UAAU,EAAG,WAAW,CAAC;IAEhC,mBAAmB;IACZ,KAAK,SAAM;IAElB,gBAAgB;IACT,IAAI,SAAM;IAEjB,kBAAkB;IACX,IAAI,EAAE,IAAI,CAAQ;IAEzB,oBAAoB;IACb,OAAO,UAAS;IAEvB,qBAAqB;IACd,QAAQ,UAAS;IAEjB,YAAY,GAAI,OAAO,KAAK,KAAG,IAAI,CAgBxC;CACF"}
|
|
@@ -5,8 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { MelodicComponent } from '@melodicdev/core';
|
|
8
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
8
9
|
import { toggleTemplate } from './toggle.template.js';
|
|
9
10
|
import { toggleStyles } from './toggle.styles.js';
|
|
11
|
+
registerAdapter((el) => el.tagName === 'ML-TOGGLE', {
|
|
12
|
+
inputEvent: 'ml:change',
|
|
13
|
+
blurEvent: 'focusout',
|
|
14
|
+
getValue: (el) => Boolean(el.checked),
|
|
15
|
+
setValue: (el, value) => { el.checked = Boolean(value); },
|
|
16
|
+
setDisabled: (el, disabled) => { el.disabled = disabled; }
|
|
17
|
+
});
|
|
10
18
|
/**
|
|
11
19
|
* ml-toggle - Toggle/switch component
|
|
12
20
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"forms-adapters.d.ts","sourceRoot":"","sources":["../src/forms-adapters.ts"],"names":[],"mappings":"AA+FA,wBAAgB,2BAA2B,IAAI,IAAI,CAiBlD"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { registerAdapter } from '@melodicdev/core/forms';
|
|
2
|
+
const valueTextInputAdapter = {
|
|
3
|
+
inputEvent: 'ml:input',
|
|
4
|
+
blurEvent: 'focusout',
|
|
5
|
+
getValue(element) {
|
|
6
|
+
return element.value ?? '';
|
|
7
|
+
},
|
|
8
|
+
setValue(element, value) {
|
|
9
|
+
element.value = value !== null && value !== undefined ? String(value) : '';
|
|
10
|
+
},
|
|
11
|
+
setDisabled(element, disabled) {
|
|
12
|
+
element.disabled = disabled;
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
const valueChangeInputAdapter = {
|
|
16
|
+
inputEvent: 'ml:change',
|
|
17
|
+
blurEvent: 'focusout',
|
|
18
|
+
getValue(element) {
|
|
19
|
+
return element.value ?? '';
|
|
20
|
+
},
|
|
21
|
+
setValue(element, value) {
|
|
22
|
+
element.value = value !== null && value !== undefined ? String(value) : '';
|
|
23
|
+
},
|
|
24
|
+
setDisabled(element, disabled) {
|
|
25
|
+
element.disabled = disabled;
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const selectInputAdapter = {
|
|
29
|
+
inputEvent: 'ml:change',
|
|
30
|
+
blurEvent: 'focusout',
|
|
31
|
+
getValue(element) {
|
|
32
|
+
const el = element;
|
|
33
|
+
return el.multiple ? (el.values ?? []) : (el.value ?? '');
|
|
34
|
+
},
|
|
35
|
+
setValue(element, value) {
|
|
36
|
+
const el = element;
|
|
37
|
+
if (Array.isArray(value)) {
|
|
38
|
+
el.values = value;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
el.value = value !== null && value !== undefined ? String(value) : '';
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
setDisabled(element, disabled) {
|
|
45
|
+
element.disabled = disabled;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const booleanCheckedAdapter = {
|
|
49
|
+
inputEvent: 'ml:change',
|
|
50
|
+
blurEvent: 'focusout',
|
|
51
|
+
getValue(element) {
|
|
52
|
+
return Boolean(element.checked);
|
|
53
|
+
},
|
|
54
|
+
setValue(element, value) {
|
|
55
|
+
element.checked = Boolean(value);
|
|
56
|
+
},
|
|
57
|
+
setDisabled(element, disabled) {
|
|
58
|
+
element.disabled = disabled;
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
const numberValueAdapter = {
|
|
62
|
+
inputEvent: 'ml:input',
|
|
63
|
+
blurEvent: 'focusout',
|
|
64
|
+
getValue(element) {
|
|
65
|
+
return Number(element.value) || 0;
|
|
66
|
+
},
|
|
67
|
+
setValue(element, value) {
|
|
68
|
+
element.value = Number(value) || 0;
|
|
69
|
+
},
|
|
70
|
+
setDisabled(element, disabled) {
|
|
71
|
+
element.disabled = disabled;
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
const datePickerAdapter = {
|
|
75
|
+
inputEvent: 'ml:select',
|
|
76
|
+
blurEvent: 'focusout',
|
|
77
|
+
getValue(element) {
|
|
78
|
+
return element.value ?? '';
|
|
79
|
+
},
|
|
80
|
+
setValue(element, value) {
|
|
81
|
+
element.value = value !== null && value !== undefined ? String(value) : '';
|
|
82
|
+
},
|
|
83
|
+
setDisabled(element, disabled) {
|
|
84
|
+
element.disabled = disabled;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
let registered = false;
|
|
88
|
+
export function registerMelodicFormAdapters() {
|
|
89
|
+
if (registered)
|
|
90
|
+
return;
|
|
91
|
+
registered = true;
|
|
92
|
+
const tagMatcher = (tag) => (el) => el.tagName === tag;
|
|
93
|
+
registerAdapter(tagMatcher('ML-INPUT'), valueTextInputAdapter);
|
|
94
|
+
registerAdapter(tagMatcher('ML-TEXTAREA'), valueTextInputAdapter);
|
|
95
|
+
registerAdapter(tagMatcher('ML-SLIDER'), numberValueAdapter);
|
|
96
|
+
registerAdapter(tagMatcher('ML-SELECT'), selectInputAdapter);
|
|
97
|
+
registerAdapter(tagMatcher('ML-AUTOCOMPLETE'), selectInputAdapter);
|
|
98
|
+
registerAdapter(tagMatcher('ML-CHECKBOX'), booleanCheckedAdapter);
|
|
99
|
+
registerAdapter(tagMatcher('ML-TOGGLE'), booleanCheckedAdapter);
|
|
100
|
+
registerAdapter(tagMatcher('ML-RADIO-GROUP'), valueChangeInputAdapter);
|
|
101
|
+
registerAdapter(tagMatcher('ML-DATE-PICKER'), datePickerAdapter);
|
|
102
|
+
registerAdapter(tagMatcher('ML-TIME-PICKER'), valueChangeInputAdapter);
|
|
103
|
+
registerAdapter(tagMatcher('ML-DATE-TIME-PICKER'), valueChangeInputAdapter);
|
|
104
|
+
}
|
|
105
|
+
registerMelodicFormAdapters();
|