@anglr/datetime 5.0.0-beta.20221020182702 → 5.0.0-beta.20221021035527

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 (42) hide show
  1. package/changelog.md +5 -1
  2. package/es2015/src/legacy/picker/modules/picker.module.js +6 -2
  3. package/es2015/src/legacy/picker/modules/picker.module.js.map +1 -1
  4. package/es2015/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js +1 -1
  5. package/es2015/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +1 -1
  6. package/es2015/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js +2 -2
  7. package/es2015/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js.map +1 -1
  8. package/es2015/src/modules/dateTimePicker/components/index.js +2 -0
  9. package/es2015/src/modules/dateTimePicker/components/index.js.map +1 -1
  10. package/es2015/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js +138 -0
  11. package/es2015/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
  12. package/es2015/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js +347 -0
  13. package/es2015/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js.map +1 -0
  14. package/es2020/src/legacy/picker/modules/picker.module.js +6 -2
  15. package/es2020/src/legacy/picker/modules/picker.module.js.map +1 -1
  16. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js +1 -1
  17. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +1 -1
  18. package/es2020/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js +2 -2
  19. package/es2020/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js.map +1 -1
  20. package/es2020/src/modules/dateTimePicker/components/index.js +2 -0
  21. package/es2020/src/modules/dateTimePicker/components/index.js.map +1 -1
  22. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js +132 -0
  23. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
  24. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js +347 -0
  25. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js.map +1 -0
  26. package/package.json +1 -1
  27. package/src/legacy/picker/modules/picker.module.d.ts +1 -1
  28. package/src/legacy/picker/modules/picker.module.d.ts.map +1 -1
  29. package/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.d.ts.map +1 -1
  30. package/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.html +2 -2
  31. package/src/modules/dateTimePicker/components/index.d.ts +2 -0
  32. package/src/modules/dateTimePicker/components/index.d.ts.map +1 -1
  33. package/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.d.ts +61 -0
  34. package/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.d.ts.map +1 -0
  35. package/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.html +67 -0
  36. package/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.d.ts +10 -0
  37. package/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.d.ts.map +1 -0
  38. package/styles/components/_date-time-picker.scss +106 -30
  39. package/styles/core/_mixins.scss +14 -0
  40. package/styles/core/_theme.scss +38 -0
  41. package/styles/themes/dark.scss +10 -0
  42. package/version.bak +1 -1
@@ -0,0 +1,67 @@
1
+ <div class="flex-row" style="justify-content: center;">
2
+ <div [class.clickable]="canScaleUp" (mousedown)="displayDate && canScaleUp ? scaleUpSubject.next(displayDate.value) : undefined">{{displayDate?.value | dateFormat: 'date'}}</div>
3
+ </div>
4
+
5
+ <div class="time-area">
6
+ <div class="value-container"
7
+ [clickOutside]="true"
8
+ (clickOutsideChange)="hoursOpen = false"
9
+ [clickOutsideElement]="hoursScroll">
10
+ <div #hoursScroll
11
+ class="roller-scroll"
12
+ [class.open]="hoursOpen"
13
+ [loopScroll]="hour"
14
+ [open]="hoursOpen"
15
+ (loopScrollChange)="setHour(null, $event)"
16
+ (mousedown)="hoursOpen = !hoursOpen">
17
+ <div *ngFor="let hour of hours | slice: -14"
18
+ [loopScrollData]="hour?.data"
19
+ [clone]="true"
20
+ class="roller-item"
21
+ (mousedown)="setHour($event, hour?.data)">{{hour?.displayText}}</div>
22
+
23
+ <div *ngFor="let hour of hours"
24
+ [loopScrollData]="hour?.data"
25
+ class="roller-item"
26
+ (mousedown)="setHour($event, hour?.data)">{{hour?.displayText}}</div>
27
+
28
+ <div *ngFor="let hour of hours | slice: 0: 14"
29
+ [loopScrollData]="hour?.data"
30
+ [clone]="true"
31
+ class="roller-item"
32
+ (mousedown)="setHour($event, hour?.data)">{{hour?.displayText}}</div>
33
+ </div>
34
+ </div>
35
+
36
+ <div class="minute-second-separator">:</div>
37
+
38
+ <div class="value-container"
39
+ [clickOutside]="true"
40
+ (clickOutsideChange)="minutesOpen = false"
41
+ [clickOutsideElement]="minutesScroll">
42
+ <div #minutesScroll
43
+ class="roller-scroll"
44
+ [class.open]="minutesOpen"
45
+ [loopScroll]="minute"
46
+ [open]="minutesOpen"
47
+ (loopScrollChange)="setMinute(null, $event)"
48
+ (mousedown)="minutesOpen = !minutesOpen">
49
+ <div *ngFor="let minute of minutes | slice: -14"
50
+ [loopScrollData]="minute?.data"
51
+ [clone]="true"
52
+ class="roller-item"
53
+ (mousedown)="setMinute($event, minute?.data)">{{minute?.displayText}}</div>
54
+
55
+ <div *ngFor="let minute of minutes"
56
+ [loopScrollData]="minute?.data"
57
+ class="roller-item"
58
+ (mousedown)="setMinute($event, minute?.data)">{{minute?.displayText}}</div>
59
+
60
+ <div *ngFor="let minute of minutes | slice: 0: 14"
61
+ [loopScrollData]="minute?.data"
62
+ [clone]="true"
63
+ class="roller-item"
64
+ (mousedown)="setMinute($event, minute?.data)">{{minute?.displayText}}</div>
65
+ </div>
66
+ </div>
67
+ </div>
@@ -0,0 +1,10 @@
1
+ import { LoopScrollData } from '../../../../legacy/picker/directives/loopScroll/loopScroll.interface';
2
+ /**
3
+ * Loop scroll hours data
4
+ */
5
+ export declare const hours: LoopScrollData[];
6
+ /**
7
+ * Loop scroll minutes data
8
+ */
9
+ export declare const minutes: LoopScrollData[];
10
+ //# sourceMappingURL=rollerTimePicker.data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollerTimePicker.data.d.ts","sourceRoot":"","sources":["rollerTimePicker.data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,sEAAsE,CAAC;AAEpG;;GAEG;AACH,eAAO,MAAM,KAAK,EAAE,cAAc,EAkGjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,cAAc,EAkPnC,CAAC"}
@@ -5,8 +5,9 @@
5
5
  display: block;
6
6
  position: absolute;
7
7
 
8
- background-color: #FFFFFF;
9
- border: 1px solid #333333;
8
+ background-color: var(--datetime-date-time-picker-background);
9
+ border: 1px solid var(--datetime-date-time-picker-border);
10
+ color: var(--datetime-date-time-picker-foreground);
10
11
  border-radius: 6px;
11
12
  z-index: 123;
12
13
  padding: 4px 8px;
@@ -43,12 +44,13 @@
43
44
  border-radius: 4px;
44
45
  border-width: 1px;
45
46
  border-style: solid;
46
- border-color: transparent;
47
+ border-color: var(--datetime-date-time-picker-period-datum-border);
47
48
  }
48
49
 
49
50
  .active
50
51
  {
51
- border-color: transparent;
52
+ border-color: var(--datetime-date-time-picker-active-border);
53
+ background-color: var(--datetime-date-time-picker-active-background);
52
54
  }
53
55
 
54
56
  .fas
@@ -63,43 +65,34 @@
63
65
  .clickable
64
66
  {
65
67
  transition: all 200ms;
66
- }
67
68
 
68
- .clickable:hover
69
- {
70
- border-color: transparent;
71
- cursor: pointer;
69
+ &:hover
70
+ {
71
+ border-color: var(--datetime-date-time-picker-clickable-hover-border);
72
+ cursor: pointer;
73
+ background-color: var(--datetime-date-time-picker-clickable-hover-background);
74
+ }
72
75
  }
73
76
 
74
77
  .disabled
75
78
  {
76
79
  opacity: 0.4;
77
80
  border-radius: 0;
78
- }
79
-
80
- .disabled:hover
81
- {
82
- cursor: not-allowed;
83
- }
84
81
 
85
- .today
86
- {
87
- border-color: #0077ff;
88
- }
89
-
90
- .active
91
- {
92
- background-color: #00c3ff;
93
- }
82
+ &:hover
83
+ {
84
+ cursor: not-allowed;
85
+ }
94
86
 
95
- .clickable:hover
96
- {
97
- background-color: #00e7ff;
87
+ &:not(.active)
88
+ {
89
+ background-color: var(--datetime-date-time-picker-disabled-background);
90
+ }
98
91
  }
99
92
 
100
- .disabled:not(.active)
93
+ .today
101
94
  {
102
- background-color: #CFCFCF;
95
+ border-color: var(--datetime-date-time-picker-today-border);
103
96
  }
104
97
  }
105
98
 
@@ -146,8 +139,91 @@
146
139
 
147
140
  .weekend
148
141
  {
149
- color: #850000;
142
+ color: var(--datetime-day-picker-weekend-foreground);
143
+ }
144
+
145
+ .go-down-button
146
+ {
147
+ display: flex;
148
+ flex-direction: row;
149
+ justify-content: center;
150
+ margin-top: 2px;
151
+
152
+ .clickable
153
+ {
154
+ padding: 2px 4px;
155
+ border-radius: 4px;
156
+ }
157
+ }
158
+ }
159
+
160
+ roller-time-picker
161
+ {
162
+ .time-area
163
+ {
164
+ display: flex;
165
+ flex-direction: row;
166
+ padding: 64px 64px;
167
+ font-size: 32px;
168
+ }
169
+
170
+ .value-container
171
+ {
172
+ position: relative;
173
+ height: 1em;
174
+ width: 2ch;
175
+ }
176
+
177
+ .roller-scroll
178
+ {
179
+ position: absolute;
180
+ line-height: 1em;
181
+ max-height: 1em;
182
+ overflow: scroll;
183
+ scrollbar-width: none;
184
+ top: 0;
185
+ transition: all 250ms;
186
+ border-radius: 4px;
187
+ scroll-snap-type: y mandatory;
188
+ contain: content;
189
+ }
190
+
191
+ .roller-scroll::-webkit-scrollbar
192
+ {
193
+ display: none;
194
+ }
195
+
196
+ .roller-scroll>div
197
+ {
198
+ scroll-snap-align: start;
199
+ }
200
+
201
+ .roller-item
202
+ {
203
+ opacity: 0.6;
204
+ transition: all 100ms;
205
+ font-weight: 300;
150
206
  }
207
+
208
+ .roller-item.selected
209
+ {
210
+ opacity: 1;
211
+ font-weight: bold;
212
+ }
213
+
214
+ .roller-scroll.open
215
+ {
216
+ max-height: 5em;
217
+ top: -2em;
218
+ }
219
+
220
+ .minute-second-separator
221
+ {
222
+ margin-left: 12px;
223
+ margin-right: 12px;
224
+ line-height: 1em;
225
+ }
226
+
151
227
  }
152
228
  }
153
229
  }
@@ -6,6 +6,20 @@
6
6
 
7
7
  @mixin buildThemeColors($theme)
8
8
  {
9
+ @if $theme
10
+ {
11
+ --datetime-date-time-picker-background: #{map.get(map.get($theme, 'dateTimePicker'), 'background')};
12
+ --datetime-date-time-picker-border: #{map.get(map.get($theme, 'dateTimePicker'), 'border')};
13
+ --datetime-date-time-picker-foreground: #{map.get(map.get($theme, 'dateTimePicker'), 'foreground')};
14
+ --datetime-date-time-picker-period-datum-border: #{map.get(map.get(map.get($theme, 'dateTimePicker'), 'periodDatum'), 'border')};
15
+ --datetime-date-time-picker-active-border: #{map.get(map.get(map.get($theme, 'dateTimePicker'), 'active'), 'border')};
16
+ --datetime-date-time-picker-active-background: #{map.get(map.get(map.get($theme, 'dateTimePicker'), 'active'), 'background')};
17
+ --datetime-date-time-picker-clickable-hover-background: #{map.get(map.get(map.get(map.get($theme, 'dateTimePicker'), 'clickable'), 'hover'), 'background')};
18
+ --datetime-date-time-picker-clickable-hover-border: #{map.get(map.get(map.get(map.get($theme, 'dateTimePicker'), 'clickable'), 'hover'), 'border')};
19
+ --datetime-date-time-picker-disabled-background: #{map.get(map.get(map.get($theme, 'dateTimePicker'), 'disabled'), 'background')};
20
+ --datetime-date-time-picker-today-border: #{map.get(map.get(map.get($theme, 'dateTimePicker'), 'today'), 'border')};
21
+ --datetime-day-picker-weekend-foreground: #{map.get(map.get(map.get($theme, 'dayPicker'), 'weekend'), 'foreground')};
22
+ }
9
23
  }
10
24
 
11
25
  @mixin buildThemeCss
@@ -1,3 +1,41 @@
1
1
  $defaultTheme:
2
2
  (
3
+ dateTimePicker:
4
+ (
5
+ background: #FFFFFF,
6
+ border: #333333,
7
+ foreground: #111111,
8
+ periodDatum:
9
+ (
10
+ border: transparent,
11
+ ),
12
+ active:
13
+ (
14
+ border: transparent,
15
+ background: #00c3ff,
16
+ ),
17
+ clickable:
18
+ (
19
+ hover:
20
+ (
21
+ background: #00e7ff,
22
+ border: transparent,
23
+ ),
24
+ ),
25
+ disabled:
26
+ (
27
+ background: #CFCFCF,
28
+ ),
29
+ today:
30
+ (
31
+ border: #0077ff,
32
+ ),
33
+ ),
34
+ dayPicker:
35
+ (
36
+ weekend:
37
+ (
38
+ foreground: #850000,
39
+ ),
40
+ ),
3
41
  );
@@ -4,6 +4,16 @@
4
4
 
5
5
  $_darkDefaultTheme:
6
6
  (
7
+ dateTimePicker:
8
+ (
9
+ background: #111111,
10
+ border: #EAEAEA,
11
+ foreground: #FAFAFA,
12
+ disabled:
13
+ (
14
+ background: #5B5B5B,
15
+ ),
16
+ ),
7
17
  );
8
18
 
9
19
  @function defineTheme($colors: (), $font: 'Inter')
package/version.bak CHANGED
@@ -1 +1 @@
1
- 5.0.0-beta.20221020182702
1
+ 5.0.0-beta.20221021035527