@nuralyui/timepicker 0.1.1

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 (43) hide show
  1. package/controllers/formatting.controller.d.ts +93 -0
  2. package/controllers/formatting.controller.d.ts.map +1 -0
  3. package/controllers/formatting.controller.js +195 -0
  4. package/controllers/formatting.controller.js.map +1 -0
  5. package/controllers/index.d.ts +9 -0
  6. package/controllers/index.d.ts.map +1 -0
  7. package/controllers/index.js +9 -0
  8. package/controllers/index.js.map +1 -0
  9. package/controllers/selection.controller.d.ts +72 -0
  10. package/controllers/selection.controller.d.ts.map +1 -0
  11. package/controllers/selection.controller.js +175 -0
  12. package/controllers/selection.controller.js.map +1 -0
  13. package/controllers/validation.controller.d.ts +88 -0
  14. package/controllers/validation.controller.d.ts.map +1 -0
  15. package/controllers/validation.controller.js +200 -0
  16. package/controllers/validation.controller.js.map +1 -0
  17. package/index.d.ts +12 -0
  18. package/index.js +12 -0
  19. package/interfaces/timepicker.interface.d.ts +103 -0
  20. package/interfaces/timepicker.interface.d.ts.map +1 -0
  21. package/interfaces/timepicker.interface.js +7 -0
  22. package/interfaces/timepicker.interface.js.map +1 -0
  23. package/package.json +63 -0
  24. package/test/timepicker.test.d.ts +7 -0
  25. package/test/timepicker.test.d.ts.map +1 -0
  26. package/test/timepicker.test.js +218 -0
  27. package/test/timepicker.test.js.map +1 -0
  28. package/timepicker.component.backup.d.ts +165 -0
  29. package/timepicker.component.backup.js +890 -0
  30. package/timepicker.component.clean.d.ts +95 -0
  31. package/timepicker.component.clean.js +471 -0
  32. package/timepicker.component.d.ts +117 -0
  33. package/timepicker.component.js +747 -0
  34. package/timepicker.constants.d.ts +85 -0
  35. package/timepicker.constants.js +85 -0
  36. package/timepicker.style.d.ts +7 -0
  37. package/timepicker.style.js +646 -0
  38. package/timepicker.types.d.ts +161 -0
  39. package/timepicker.types.js +125 -0
  40. package/utils/time.utils.d.ts +87 -0
  41. package/utils/time.utils.d.ts.map +1 -0
  42. package/utils/time.utils.js +235 -0
  43. package/utils/time.utils.js.map +1 -0
@@ -0,0 +1,85 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Nuraly, Laabidi Aymen
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ import { TimeFormat, TimeStep } from './timepicker.types.js';
7
+ /**
8
+ * Default time picker configuration
9
+ */
10
+ export declare const DEFAULT_TIME_CONFIG: {
11
+ readonly format: TimeFormat.TwentyFourHour;
12
+ readonly showSeconds: false;
13
+ readonly minuteInterval: 1;
14
+ readonly secondInterval: 1;
15
+ readonly use12HourClock: false;
16
+ };
17
+ /**
18
+ * Default time display formats
19
+ */
20
+ export declare const DEFAULT_TIME_FORMAT = "HH:mm";
21
+ export declare const DEFAULT_TIME_FORMAT_WITH_SECONDS = "HH:mm:ss";
22
+ export declare const DEFAULT_12H_TIME_FORMAT = "hh:mm A";
23
+ export declare const DEFAULT_12H_TIME_FORMAT_WITH_SECONDS = "hh:mm:ss A";
24
+ /**
25
+ * Time input field ID
26
+ */
27
+ export declare const TIME_INPUT_FIELD_ID = "time-input-field";
28
+ /**
29
+ * Clock container CSS class
30
+ */
31
+ export declare const CLOCK_CONTAINER_CLASS = "time-picker-clock-container";
32
+ /**
33
+ * Time validation patterns
34
+ */
35
+ export declare const TIME_VALIDATION_PATTERNS: {
36
+ readonly TWENTY_FOUR_HOUR: RegExp;
37
+ readonly TWELVE_HOUR: RegExp;
38
+ };
39
+ /**
40
+ * Time boundaries
41
+ */
42
+ export declare const TIME_BOUNDARIES: {
43
+ readonly MIN_HOUR_24: 0;
44
+ readonly MAX_HOUR_24: 23;
45
+ readonly MIN_HOUR_12: 1;
46
+ readonly MAX_HOUR_12: 12;
47
+ readonly MIN_MINUTE: 0;
48
+ readonly MAX_MINUTE: 59;
49
+ readonly MIN_SECOND: 0;
50
+ readonly MAX_SECOND: 59;
51
+ };
52
+ /**
53
+ * Default step values
54
+ */
55
+ export declare const DEFAULT_STEPS: {
56
+ readonly HOURS: TimeStep.One;
57
+ readonly MINUTES: TimeStep.One;
58
+ readonly SECONDS: TimeStep.One;
59
+ };
60
+ /**
61
+ * Time picker CSS classes
62
+ */
63
+ export declare const TIME_PICKER_CLASSES: {
64
+ readonly CONTAINER: "time-picker";
65
+ readonly INPUT: "time-picker__input";
66
+ readonly CLOCK: "time-picker__clock";
67
+ readonly DROPDOWN: "time-picker__dropdown";
68
+ readonly HOUR: "time-picker__hour";
69
+ readonly MINUTE: "time-picker__minute";
70
+ readonly SECOND: "time-picker__second";
71
+ readonly PERIOD: "time-picker__period";
72
+ readonly BUTTON: "time-picker__button";
73
+ readonly SEPARATOR: "time-picker__separator";
74
+ };
75
+ /**
76
+ * Clock face constants
77
+ */
78
+ export declare const CLOCK_FACE: {
79
+ readonly RADIUS: 100;
80
+ readonly CENTER: 50;
81
+ readonly HOUR_HAND_LENGTH: 30;
82
+ readonly MINUTE_HAND_LENGTH: 40;
83
+ readonly SECOND_HAND_LENGTH: 45;
84
+ };
85
+ //# sourceMappingURL=timepicker.constants.d.ts.map
@@ -0,0 +1,85 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Nuraly, Laabidi Aymen
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ import { TimeFormat, TimeStep } from './timepicker.types.js';
7
+ /**
8
+ * Default time picker configuration
9
+ */
10
+ export const DEFAULT_TIME_CONFIG = {
11
+ format: TimeFormat.TwentyFourHour,
12
+ showSeconds: false,
13
+ minuteInterval: 1,
14
+ secondInterval: 1,
15
+ use12HourClock: false,
16
+ };
17
+ /**
18
+ * Default time display formats
19
+ */
20
+ export const DEFAULT_TIME_FORMAT = 'HH:mm';
21
+ export const DEFAULT_TIME_FORMAT_WITH_SECONDS = 'HH:mm:ss';
22
+ export const DEFAULT_12H_TIME_FORMAT = 'hh:mm A';
23
+ export const DEFAULT_12H_TIME_FORMAT_WITH_SECONDS = 'hh:mm:ss A';
24
+ /**
25
+ * Time input field ID
26
+ */
27
+ export const TIME_INPUT_FIELD_ID = 'time-input-field';
28
+ /**
29
+ * Clock container CSS class
30
+ */
31
+ export const CLOCK_CONTAINER_CLASS = 'time-picker-clock-container';
32
+ /**
33
+ * Time validation patterns
34
+ */
35
+ export const TIME_VALIDATION_PATTERNS = {
36
+ TWENTY_FOUR_HOUR: /^([01]?[0-9]|2[0-3]):([0-5]?[0-9])(:([0-5]?[0-9]))?$/,
37
+ TWELVE_HOUR: /^(0?[1-9]|1[0-2]):([0-5]?[0-9])(:([0-5]?[0-9]))?\s?(AM|PM|am|pm)$/,
38
+ };
39
+ /**
40
+ * Time boundaries
41
+ */
42
+ export const TIME_BOUNDARIES = {
43
+ MIN_HOUR_24: 0,
44
+ MAX_HOUR_24: 23,
45
+ MIN_HOUR_12: 1,
46
+ MAX_HOUR_12: 12,
47
+ MIN_MINUTE: 0,
48
+ MAX_MINUTE: 59,
49
+ MIN_SECOND: 0,
50
+ MAX_SECOND: 59,
51
+ };
52
+ /**
53
+ * Default step values
54
+ */
55
+ export const DEFAULT_STEPS = {
56
+ HOURS: TimeStep.One,
57
+ MINUTES: TimeStep.One,
58
+ SECONDS: TimeStep.One,
59
+ };
60
+ /**
61
+ * Time picker CSS classes
62
+ */
63
+ export const TIME_PICKER_CLASSES = {
64
+ CONTAINER: 'time-picker',
65
+ INPUT: 'time-picker__input',
66
+ CLOCK: 'time-picker__clock',
67
+ DROPDOWN: 'time-picker__dropdown',
68
+ HOUR: 'time-picker__hour',
69
+ MINUTE: 'time-picker__minute',
70
+ SECOND: 'time-picker__second',
71
+ PERIOD: 'time-picker__period',
72
+ BUTTON: 'time-picker__button',
73
+ SEPARATOR: 'time-picker__separator',
74
+ };
75
+ /**
76
+ * Clock face constants
77
+ */
78
+ export const CLOCK_FACE = {
79
+ RADIUS: 100,
80
+ CENTER: 50,
81
+ HOUR_HAND_LENGTH: 30,
82
+ MINUTE_HAND_LENGTH: 40,
83
+ SECOND_HAND_LENGTH: 45,
84
+ };
85
+ //# sourceMappingURL=timepicker.constants.js.map
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Nuraly, Laabidi Aymen
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ export declare const styles: import("lit").CSSResult;
7
+ //# sourceMappingURL=timepicker.style.d.ts.map