alchemy_cms 6.0.0.pre.rc3 → 6.0.0.pre.rc4
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.
Potentially problematic release.
This version of alchemy_cms might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/alchemy_cms.gemspec +1 -1
- data/app/assets/javascripts/alchemy/admin.js +0 -1
- data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +2 -2
- data/app/assets/stylesheets/alchemy/_extends.scss +4 -4
- data/app/assets/stylesheets/alchemy/flatpickr.scss +182 -232
- data/app/controllers/alchemy/admin/base_controller.rb +9 -3
- data/lib/alchemy/engine.rb +7 -0
- data/lib/alchemy/error_tracking/airbrake_handler.rb +13 -0
- data/lib/alchemy/error_tracking.rb +14 -0
- data/lib/alchemy/version.rb +1 -1
- data/lib/alchemy_cms.rb +1 -0
- data/package/admin.js +3 -1
- data/package/src/datepicker.js +39 -0
- data/package.json +2 -1
- metadata +9 -7
- data/app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee +0 -29
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: da8076b5e01533899e6c3003841940160335389c6e8a961bedec1b08839f61ba
|
4
|
+
data.tar.gz: dfcd49629458243d86cb4bb49615da876b3e5bfb1b69de121f90fe6e98bb964c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a25f6e26595f7b7e218200a0a7dbc1e69ac175c1daa3736b443501f80c8f1012215c69ab2f17addeb61b397cb3288b018b87f8e175d1ec9c1399e38101018d7f
|
7
|
+
data.tar.gz: 1c8cee2a1c08c70581945e25dc0745ba9bf2dea83e44220e00a096fce531df941bea97405836dcc4cf650ede4e12162e7ab6b9dc18a8e297f4ac6f71a18643d6
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## 6.0.0-rc4 (2022-01-16)
|
2
|
+
|
3
|
+
### Changes
|
4
|
+
|
5
|
+
- Allow ransack 2.5.0 [#2223](https://github.com/AlchemyCMS/alchemy_cms/pull/2223) ([depfu](https://github.com/apps/depfu))
|
6
|
+
- make the admin error tracker customizable [#2220](https://github.com/AlchemyCMS/alchemy_cms/pull/2220) ([DarkSwoop](https://github.com/DarkSwoop))
|
7
|
+
- Update Flatpickr to 4.6.9 [#2197](https://github.com/AlchemyCMS/alchemy_cms/pull/2197) ([tvdeyen](https://github.com/tvdeyen))
|
8
|
+
|
1
9
|
## 6.0.0-rc3 (2021-11-24)
|
2
10
|
|
3
11
|
### Changes
|
data/alchemy_cms.gemspec
CHANGED
@@ -46,7 +46,7 @@ Gem::Specification.new do |gem|
|
|
46
46
|
gem.add_runtime_dependency "kaminari", ["~> 1.1"]
|
47
47
|
gem.add_runtime_dependency "originator", ["~> 3.1"]
|
48
48
|
gem.add_runtime_dependency "non-stupid-digest-assets", ["~> 1.0.8"]
|
49
|
-
gem.add_runtime_dependency "ransack", [">= 1.8", "
|
49
|
+
gem.add_runtime_dependency "ransack", [">= 1.8", "<= 2.5.0"] # 2.4.2 dropped Ruby 2.5 support in a patch level release
|
50
50
|
gem.add_runtime_dependency "request_store", ["~> 1.2"]
|
51
51
|
gem.add_runtime_dependency "responders", [">= 2.0", "< 4.0"]
|
52
52
|
gem.add_runtime_dependency "sassc-rails", ["~> 2.1"]
|
@@ -22,7 +22,6 @@
|
|
22
22
|
//= require alchemy/alchemy.dialog
|
23
23
|
//= require alchemy/alchemy.char_counter
|
24
24
|
//= require alchemy/alchemy.confirm_dialog
|
25
|
-
//= require alchemy/alchemy.datepicker
|
26
25
|
//= require alchemy/alchemy.dirty
|
27
26
|
//= require alchemy/alchemy.dragndrop
|
28
27
|
//= require alchemy/alchemy.element_editors
|
@@ -6,7 +6,7 @@ Alchemy.GUI =
|
|
6
6
|
# Initializes all Alchemy GUI elements in given scope
|
7
7
|
init: (scope) ->
|
8
8
|
Alchemy.SelectBox(scope)
|
9
|
-
Alchemy.Datepicker(scope)
|
9
|
+
Alchemy.Datepicker(scope && scope.selector)
|
10
10
|
Alchemy.Tooltips(scope)
|
11
11
|
Alchemy.Buttons.observe(scope)
|
12
12
|
# Dialog links use event delegation and therefore do not
|
@@ -21,7 +21,7 @@ Alchemy.GUI =
|
|
21
21
|
|
22
22
|
initElement: ($el) ->
|
23
23
|
Alchemy.ElementDirtyObserver($el)
|
24
|
-
Alchemy.GUI.init($el)
|
24
|
+
Alchemy.GUI.init($el && $el.selector)
|
25
25
|
Alchemy.ImageLoader($el[0])
|
26
26
|
Alchemy.fileEditors($el.find(".essence_file, .essence_video, .essence_audio, .ingredient-editor.file, .ingredient-editor.audio, .ingredient-editor.video").selector)
|
27
27
|
Alchemy.pictureEditors($el.find(".essence_picture, .ingredient-editor.picture").selector)
|
@@ -37,8 +37,8 @@
|
|
37
37
|
|
38
38
|
&[disabled],
|
39
39
|
&.disabled,
|
40
|
-
|
41
|
-
|
40
|
+
&:not(.flatpickr-input)[readonly],
|
41
|
+
&:not(.flatpickr-input).readonly {
|
42
42
|
color: $form-field-disabled-text-color;
|
43
43
|
background-color: $form-field-disabled-bg-color;
|
44
44
|
cursor: default;
|
@@ -49,8 +49,8 @@
|
|
49
49
|
cursor: not-allowed;
|
50
50
|
}
|
51
51
|
|
52
|
-
|
53
|
-
|
52
|
+
&:not(.flatpickr-input)[readonly],
|
53
|
+
&:not(.flatpickr-input).readonly {
|
54
54
|
pointer-events: none;
|
55
55
|
}
|
56
56
|
}
|
@@ -19,148 +19,137 @@
|
|
19
19
|
-ms-touch-action: manipulation;
|
20
20
|
touch-action: manipulation;
|
21
21
|
background: $white;
|
22
|
-
-webkit-box-shadow: 1px 0 0 $medium-gray, -1px 0 0 $medium-gray,
|
23
|
-
|
22
|
+
-webkit-box-shadow: 1px 0 0 $medium-gray, -1px 0 0 $medium-gray,
|
23
|
+
0 1px 0 $medium-gray, 0 -1px 0 $medium-gray, 0 3px 13px rgba(0, 0, 0, 0.08);
|
24
|
+
box-shadow: 1px 0 0 $medium-gray, -1px 0 0 $medium-gray, 0 1px 0 $medium-gray,
|
25
|
+
0 -1px 0 $medium-gray, 0 3px 13px rgba(0, 0, 0, 0.08);
|
24
26
|
}
|
25
|
-
|
26
27
|
.flatpickr-calendar.open,
|
27
28
|
.flatpickr-calendar.inline {
|
28
29
|
opacity: 1;
|
29
30
|
max-height: 640px;
|
30
|
-
visibility: visible
|
31
|
+
visibility: visible;
|
31
32
|
}
|
32
|
-
|
33
33
|
.flatpickr-calendar.open {
|
34
34
|
display: inline-block;
|
35
|
-
z-index: 99999
|
35
|
+
z-index: 99999;
|
36
36
|
}
|
37
|
-
|
38
37
|
.flatpickr-calendar.animate.open {
|
39
|
-
-webkit-animation: fpFadeInDown 300ms cubic-bezier(.23, 1, .32, 1);
|
40
|
-
animation: fpFadeInDown 300ms cubic-bezier(.23, 1, .32, 1)
|
38
|
+
-webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
|
39
|
+
animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
|
41
40
|
}
|
42
|
-
|
43
41
|
.flatpickr-calendar.inline {
|
44
42
|
display: block;
|
45
43
|
position: relative;
|
46
|
-
top: 2px
|
44
|
+
top: 2px;
|
47
45
|
}
|
48
|
-
|
49
46
|
.flatpickr-calendar.static {
|
50
47
|
position: absolute;
|
51
48
|
top: calc(100% + 2px);
|
52
49
|
}
|
53
|
-
|
54
50
|
.flatpickr-calendar.static.open {
|
55
51
|
z-index: 999;
|
56
|
-
display: block
|
52
|
+
display: block;
|
57
53
|
}
|
58
|
-
|
59
|
-
.flatpickr-
|
54
|
+
.flatpickr-calendar.multiMonth
|
55
|
+
.flatpickr-days
|
56
|
+
.dayContainer:nth-child(n + 1)
|
57
|
+
.flatpickr-day.inRange:nth-child(7n + 7) {
|
60
58
|
-webkit-box-shadow: none !important;
|
61
|
-
box-shadow: none !important
|
59
|
+
box-shadow: none !important;
|
62
60
|
}
|
63
|
-
|
64
|
-
.flatpickr-
|
61
|
+
.flatpickr-calendar.multiMonth
|
62
|
+
.flatpickr-days
|
63
|
+
.dayContainer:nth-child(n + 2)
|
64
|
+
.flatpickr-day.inRange:nth-child(7n + 1) {
|
65
65
|
-webkit-box-shadow: -2px 0 0 $medium-gray, 5px 0 0 $medium-gray;
|
66
|
-
box-shadow: -2px 0 0 $medium-gray, 5px 0 0 $medium-gray
|
66
|
+
box-shadow: -2px 0 0 $medium-gray, 5px 0 0 $medium-gray;
|
67
67
|
}
|
68
|
-
|
69
68
|
.flatpickr-calendar .hasWeeks .dayContainer,
|
70
69
|
.flatpickr-calendar .hasTime .dayContainer {
|
71
70
|
border-bottom: 0;
|
72
71
|
border-bottom-right-radius: 0;
|
73
|
-
border-bottom-left-radius: 0
|
72
|
+
border-bottom-left-radius: 0;
|
74
73
|
}
|
75
|
-
|
76
74
|
.flatpickr-calendar .hasWeeks .dayContainer {
|
77
|
-
border-left: 0
|
75
|
+
border-left: 0;
|
78
76
|
}
|
79
|
-
|
80
|
-
.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
|
77
|
+
.flatpickr-calendar.hasTime .flatpickr-time {
|
81
78
|
height: 40px;
|
82
|
-
border-top: 1px solid $medium-gray
|
79
|
+
border-top: 1px solid $medium-gray;
|
83
80
|
}
|
84
|
-
|
85
81
|
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
|
86
|
-
height: auto
|
82
|
+
height: auto;
|
87
83
|
}
|
88
|
-
|
89
84
|
.flatpickr-calendar:before,
|
90
85
|
.flatpickr-calendar:after {
|
91
86
|
position: absolute;
|
92
87
|
display: block;
|
93
88
|
pointer-events: none;
|
94
89
|
border: solid transparent;
|
95
|
-
content:
|
90
|
+
content: "";
|
96
91
|
height: 0;
|
97
92
|
width: 0;
|
98
|
-
left: 22px
|
93
|
+
left: 22px;
|
99
94
|
}
|
100
|
-
|
101
95
|
.flatpickr-calendar.rightMost:before,
|
102
|
-
.flatpickr-calendar.
|
96
|
+
.flatpickr-calendar.arrowRight:before,
|
97
|
+
.flatpickr-calendar.rightMost:after,
|
98
|
+
.flatpickr-calendar.arrowRight:after {
|
103
99
|
left: auto;
|
104
|
-
right: 22px
|
100
|
+
right: 22px;
|
101
|
+
}
|
102
|
+
.flatpickr-calendar.arrowCenter:before,
|
103
|
+
.flatpickr-calendar.arrowCenter:after {
|
104
|
+
left: 50%;
|
105
|
+
right: 50%;
|
105
106
|
}
|
106
|
-
|
107
107
|
.flatpickr-calendar:before {
|
108
108
|
border-width: 5px;
|
109
|
-
margin: 0 -5px
|
109
|
+
margin: 0 -5px;
|
110
110
|
}
|
111
|
-
|
112
111
|
.flatpickr-calendar:after {
|
113
112
|
border-width: 4px;
|
114
|
-
margin: 0 -4px
|
113
|
+
margin: 0 -4px;
|
115
114
|
}
|
116
|
-
|
117
115
|
.flatpickr-calendar.arrowTop:before,
|
118
116
|
.flatpickr-calendar.arrowTop:after {
|
119
|
-
bottom: 100
|
117
|
+
bottom: 100%;
|
120
118
|
}
|
121
|
-
|
122
119
|
.flatpickr-calendar.arrowTop:before {
|
123
|
-
border-bottom-color: $medium-gray
|
120
|
+
border-bottom-color: $medium-gray;
|
124
121
|
}
|
125
|
-
|
126
122
|
.flatpickr-calendar.arrowTop:after {
|
127
|
-
border-bottom-color: $white
|
123
|
+
border-bottom-color: $white;
|
128
124
|
}
|
129
|
-
|
130
125
|
.flatpickr-calendar.arrowBottom:before,
|
131
126
|
.flatpickr-calendar.arrowBottom:after {
|
132
|
-
top: 100
|
127
|
+
top: 100%;
|
133
128
|
}
|
134
|
-
|
135
129
|
.flatpickr-calendar.arrowBottom:before {
|
136
|
-
border-top-color: $medium-gray
|
130
|
+
border-top-color: $medium-gray;
|
137
131
|
}
|
138
|
-
|
139
132
|
.flatpickr-calendar.arrowBottom:after {
|
140
|
-
border-top-color: $white
|
133
|
+
border-top-color: $white;
|
141
134
|
}
|
142
|
-
|
143
135
|
.flatpickr-calendar:focus {
|
144
|
-
outline: 0
|
136
|
+
outline: 0;
|
145
137
|
}
|
146
|
-
|
147
138
|
.flatpickr-wrapper {
|
148
139
|
position: relative;
|
149
|
-
display: inline-block
|
140
|
+
display: inline-block;
|
150
141
|
}
|
151
|
-
|
152
142
|
.flatpickr-months {
|
153
143
|
display: -webkit-box;
|
154
144
|
display: -webkit-flex;
|
155
145
|
display: -ms-flexbox;
|
156
146
|
display: flex;
|
157
147
|
}
|
158
|
-
|
159
148
|
.flatpickr-months .flatpickr-month {
|
160
149
|
background: transparent;
|
161
150
|
color: rgba(0, 0, 0, 0.9);
|
162
151
|
fill: rgba(0, 0, 0, 0.9);
|
163
|
-
height:
|
152
|
+
height: 34px;
|
164
153
|
line-height: 1;
|
165
154
|
text-align: center;
|
166
155
|
position: relative;
|
@@ -172,43 +161,35 @@
|
|
172
161
|
-webkit-box-flex: 1;
|
173
162
|
-webkit-flex: 1;
|
174
163
|
-ms-flex: 1;
|
175
|
-
flex: 1
|
164
|
+
flex: 1;
|
176
165
|
}
|
177
|
-
|
178
166
|
.flatpickr-months .flatpickr-prev-month,
|
179
167
|
.flatpickr-months .flatpickr-next-month {
|
180
168
|
text-decoration: none;
|
181
169
|
cursor: pointer;
|
182
170
|
position: absolute;
|
183
171
|
top: 0;
|
184
|
-
|
185
|
-
height: 28px;
|
172
|
+
height: 34px;
|
186
173
|
padding: 10px;
|
187
174
|
z-index: 3;
|
188
175
|
color: rgba(0, 0, 0, 0.9);
|
189
176
|
fill: rgba(0, 0, 0, 0.9);
|
190
177
|
}
|
191
|
-
|
192
|
-
.flatpickr-months .flatpickr-
|
193
|
-
|
194
|
-
display: none
|
178
|
+
.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
|
179
|
+
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
|
180
|
+
display: none;
|
195
181
|
}
|
196
|
-
|
197
182
|
.flatpickr-months .flatpickr-prev-month i,
|
198
183
|
.flatpickr-months .flatpickr-next-month i {
|
199
|
-
position: relative
|
184
|
+
position: relative;
|
200
185
|
}
|
201
|
-
|
202
186
|
.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
|
203
187
|
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
|
204
188
|
/*
|
205
189
|
/*rtl:begin:ignore*/
|
206
|
-
left: 0;
|
207
|
-
/*
|
190
|
+
left: 0; /*
|
208
191
|
/*rtl:end:ignore*/
|
209
|
-
}
|
210
|
-
|
211
|
-
/*
|
192
|
+
} /*
|
212
193
|
/*rtl:begin:ignore*/
|
213
194
|
/*
|
214
195
|
/*rtl:end:ignore*/
|
@@ -216,12 +197,9 @@
|
|
216
197
|
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
|
217
198
|
/*
|
218
199
|
/*rtl:begin:ignore*/
|
219
|
-
right: 0;
|
220
|
-
/*
|
200
|
+
right: 0; /*
|
221
201
|
/*rtl:end:ignore*/
|
222
|
-
}
|
223
|
-
|
224
|
-
/*
|
202
|
+
} /*
|
225
203
|
/*rtl:begin:ignore*/
|
226
204
|
/*
|
227
205
|
/*rtl:end:ignore*/
|
@@ -229,43 +207,40 @@
|
|
229
207
|
.flatpickr-months .flatpickr-next-month:hover {
|
230
208
|
color: $dark-gray;
|
231
209
|
}
|
232
|
-
|
233
210
|
.flatpickr-months .flatpickr-prev-month:hover svg,
|
234
211
|
.flatpickr-months .flatpickr-next-month:hover svg {
|
235
212
|
fill: $dark-orange;
|
236
213
|
}
|
237
|
-
|
238
214
|
.flatpickr-months .flatpickr-prev-month svg,
|
239
215
|
.flatpickr-months .flatpickr-next-month svg {
|
240
216
|
width: 14px;
|
241
217
|
height: 14px;
|
242
218
|
}
|
243
|
-
|
244
219
|
.flatpickr-months .flatpickr-prev-month svg path,
|
245
220
|
.flatpickr-months .flatpickr-next-month svg path {
|
246
|
-
-webkit-transition: fill .1s;
|
247
|
-
transition: fill .1s;
|
248
|
-
fill: inherit
|
221
|
+
-webkit-transition: fill 0.1s;
|
222
|
+
transition: fill 0.1s;
|
223
|
+
fill: inherit;
|
249
224
|
}
|
250
|
-
|
251
225
|
.numInputWrapper {
|
252
226
|
position: relative;
|
253
227
|
height: auto;
|
254
228
|
}
|
255
|
-
|
256
229
|
.numInputWrapper input,
|
257
230
|
.numInputWrapper span {
|
258
|
-
display: inline-block
|
231
|
+
display: inline-block;
|
259
232
|
}
|
260
|
-
|
261
233
|
.numInputWrapper input {
|
262
234
|
width: 100%;
|
263
235
|
}
|
264
|
-
|
265
236
|
.numInputWrapper input::-ms-clear {
|
266
|
-
display: none
|
237
|
+
display: none;
|
238
|
+
}
|
239
|
+
.numInputWrapper input::-webkit-outer-spin-button,
|
240
|
+
.numInputWrapper input::-webkit-inner-spin-button {
|
241
|
+
margin: 0;
|
242
|
+
-webkit-appearance: none;
|
267
243
|
}
|
268
|
-
|
269
244
|
.numInputWrapper span {
|
270
245
|
position: absolute;
|
271
246
|
right: 0;
|
@@ -275,119 +250,101 @@
|
|
275
250
|
line-height: 50%;
|
276
251
|
opacity: 0;
|
277
252
|
cursor: pointer;
|
278
|
-
border:
|
253
|
+
border: $default-border;
|
279
254
|
-webkit-box-sizing: border-box;
|
280
255
|
box-sizing: border-box;
|
281
256
|
}
|
282
|
-
|
283
257
|
.numInputWrapper span:hover {
|
284
|
-
background: rgba(0, 0, 0, 0.1)
|
258
|
+
background: rgba(0, 0, 0, 0.1);
|
285
259
|
}
|
286
|
-
|
287
260
|
.numInputWrapper span:active {
|
288
|
-
background: rgba(0, 0, 0, 0.2)
|
261
|
+
background: rgba(0, 0, 0, 0.2);
|
289
262
|
}
|
290
|
-
|
291
263
|
.numInputWrapper span:after {
|
292
264
|
display: block;
|
293
265
|
content: "";
|
294
|
-
position: absolute
|
266
|
+
position: absolute;
|
295
267
|
}
|
296
|
-
|
297
268
|
.numInputWrapper span.arrowUp {
|
298
269
|
top: 0;
|
299
270
|
border-bottom: 0;
|
300
271
|
}
|
301
|
-
|
302
272
|
.numInputWrapper span.arrowUp:after {
|
303
273
|
border-left: 4px solid transparent;
|
304
274
|
border-right: 4px solid transparent;
|
305
|
-
border-bottom: 4px solid
|
306
|
-
top: 26
|
275
|
+
border-bottom: 4px solid $default-border-color;
|
276
|
+
top: 26%;
|
307
277
|
}
|
308
|
-
|
309
278
|
.numInputWrapper span.arrowDown {
|
310
279
|
top: 50%;
|
311
280
|
}
|
312
|
-
|
313
281
|
.numInputWrapper span.arrowDown:after {
|
314
282
|
border-left: 4px solid transparent;
|
315
283
|
border-right: 4px solid transparent;
|
316
|
-
border-top: 4px solid
|
317
|
-
top: 40
|
284
|
+
border-top: 4px solid $default-border-color;
|
285
|
+
top: 40%;
|
318
286
|
}
|
319
|
-
|
320
287
|
.numInputWrapper span svg {
|
321
288
|
width: inherit;
|
322
289
|
height: auto;
|
323
290
|
}
|
324
|
-
|
325
291
|
.numInputWrapper span svg path {
|
326
|
-
fill: rgba(0, 0, 0, 0.5)
|
292
|
+
fill: rgba(0, 0, 0, 0.5);
|
327
293
|
}
|
328
|
-
|
329
294
|
.numInputWrapper:hover {
|
330
295
|
background: rgba(0, 0, 0, 0.05);
|
331
296
|
}
|
332
|
-
|
333
297
|
.numInputWrapper:hover span {
|
334
|
-
opacity: 1
|
298
|
+
opacity: 1;
|
335
299
|
}
|
336
|
-
|
337
300
|
.flatpickr-current-month {
|
338
|
-
font-size:
|
301
|
+
font-size: 135%;
|
339
302
|
line-height: inherit;
|
340
303
|
font-weight: 300;
|
341
304
|
color: inherit;
|
342
305
|
position: absolute;
|
343
306
|
width: 75%;
|
344
307
|
left: 12.5%;
|
345
|
-
padding:
|
308
|
+
padding: 7.48px 0 0 0;
|
346
309
|
line-height: 1;
|
347
|
-
height:
|
310
|
+
height: 34px;
|
348
311
|
display: inline-block;
|
349
312
|
text-align: center;
|
350
313
|
-webkit-transform: translate3d(0, 0, 0);
|
351
314
|
transform: translate3d(0, 0, 0);
|
352
315
|
}
|
353
|
-
|
354
316
|
.flatpickr-current-month span.cur-month {
|
355
317
|
font-family: inherit;
|
356
318
|
font-weight: 700;
|
357
319
|
color: inherit;
|
358
320
|
display: inline-block;
|
359
|
-
margin-left: .5ch;
|
321
|
+
margin-left: 0.5ch;
|
360
322
|
padding: 0;
|
361
323
|
}
|
362
|
-
|
363
324
|
.flatpickr-current-month span.cur-month:hover {
|
364
|
-
background: rgba(0, 0, 0, 0.05)
|
325
|
+
background: rgba(0, 0, 0, 0.05);
|
365
326
|
}
|
366
|
-
|
367
327
|
.flatpickr-current-month .numInputWrapper {
|
368
328
|
width: 6ch;
|
369
329
|
width: 7ch\0;
|
370
330
|
display: inline-block;
|
371
331
|
}
|
372
|
-
|
373
332
|
.flatpickr-current-month .numInputWrapper span.arrowUp:after {
|
374
|
-
border-bottom-color: rgba(0, 0, 0, 0.9)
|
333
|
+
border-bottom-color: rgba(0, 0, 0, 0.9);
|
375
334
|
}
|
376
|
-
|
377
335
|
.flatpickr-current-month .numInputWrapper span.arrowDown:after {
|
378
|
-
border-top-color: rgba(0, 0, 0, 0.9)
|
336
|
+
border-top-color: rgba(0, 0, 0, 0.9);
|
379
337
|
}
|
380
|
-
|
381
338
|
.flatpickr-current-month input.cur-year {
|
382
339
|
background: transparent;
|
383
340
|
-webkit-box-sizing: border-box;
|
384
341
|
box-sizing: border-box;
|
385
342
|
color: inherit;
|
386
343
|
cursor: text;
|
387
|
-
padding: 0 0 0 .5ch;
|
344
|
+
padding: 0 0 0 0.5ch;
|
388
345
|
margin: 0;
|
389
346
|
display: inline-block;
|
390
|
-
font-size:
|
347
|
+
font-size: inherit;
|
391
348
|
font-family: inherit;
|
392
349
|
font-weight: 300;
|
393
350
|
line-height: inherit;
|
@@ -395,19 +352,57 @@
|
|
395
352
|
border: 0;
|
396
353
|
border-radius: 0;
|
397
354
|
vertical-align: initial;
|
355
|
+
-webkit-appearance: textfield;
|
356
|
+
-moz-appearance: textfield;
|
357
|
+
appearance: textfield;
|
398
358
|
}
|
399
|
-
|
400
359
|
.flatpickr-current-month input.cur-year:focus {
|
401
|
-
outline: 0
|
360
|
+
outline: 0;
|
402
361
|
}
|
403
|
-
|
404
362
|
.flatpickr-current-month input.cur-year[disabled],
|
405
363
|
.flatpickr-current-month input.cur-year[disabled]:hover {
|
364
|
+
font-size: 100%;
|
406
365
|
color: rgba(0, 0, 0, 0.5);
|
407
366
|
background: transparent;
|
408
|
-
pointer-events: none
|
367
|
+
pointer-events: none;
|
368
|
+
}
|
369
|
+
.flatpickr-current-month .flatpickr-monthDropdown-months {
|
370
|
+
appearance: menulist;
|
371
|
+
background: transparent;
|
372
|
+
border: none;
|
373
|
+
border-radius: 0;
|
374
|
+
box-sizing: border-box;
|
375
|
+
color: inherit;
|
376
|
+
cursor: pointer;
|
377
|
+
font-size: inherit;
|
378
|
+
font-family: inherit;
|
379
|
+
font-weight: 300;
|
380
|
+
height: auto;
|
381
|
+
line-height: inherit;
|
382
|
+
margin: -1px 0 0 0;
|
383
|
+
outline: none;
|
384
|
+
padding: 0 0 0 0.5ch;
|
385
|
+
position: relative;
|
386
|
+
vertical-align: initial;
|
387
|
+
-webkit-box-sizing: border-box;
|
388
|
+
-webkit-appearance: menulist;
|
389
|
+
-moz-appearance: menulist;
|
390
|
+
width: auto;
|
391
|
+
}
|
392
|
+
.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
|
393
|
+
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
|
394
|
+
outline: none;
|
395
|
+
}
|
396
|
+
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
|
397
|
+
background: rgba(0, 0, 0, 0.05);
|
398
|
+
}
|
399
|
+
.flatpickr-current-month
|
400
|
+
.flatpickr-monthDropdown-months
|
401
|
+
.flatpickr-monthDropdown-month {
|
402
|
+
background-color: transparent;
|
403
|
+
outline: none;
|
404
|
+
padding: 0;
|
409
405
|
}
|
410
|
-
|
411
406
|
.flatpickr-weekdays {
|
412
407
|
background: transparent;
|
413
408
|
text-align: center;
|
@@ -423,7 +418,6 @@
|
|
423
418
|
align-items: center;
|
424
419
|
height: 28px;
|
425
420
|
}
|
426
|
-
|
427
421
|
.flatpickr-weekdays .flatpickr-weekdaycontainer {
|
428
422
|
display: -webkit-box;
|
429
423
|
display: -webkit-flex;
|
@@ -432,11 +426,11 @@
|
|
432
426
|
-webkit-box-flex: 1;
|
433
427
|
-webkit-flex: 1;
|
434
428
|
-ms-flex: 1;
|
435
|
-
flex: 1
|
429
|
+
flex: 1;
|
436
430
|
}
|
437
|
-
|
438
431
|
span.flatpickr-weekday {
|
439
432
|
cursor: default;
|
433
|
+
font-size: 90%;
|
440
434
|
background: transparent;
|
441
435
|
color: rgba(0, 0, 0, 0.54);
|
442
436
|
line-height: 1;
|
@@ -447,14 +441,12 @@ span.flatpickr-weekday {
|
|
447
441
|
-webkit-flex: 1;
|
448
442
|
-ms-flex: 1;
|
449
443
|
flex: 1;
|
450
|
-
font-weight: bolder
|
444
|
+
font-weight: bolder;
|
451
445
|
}
|
452
|
-
|
453
446
|
.dayContainer,
|
454
447
|
.flatpickr-weeks {
|
455
|
-
padding: 1px 0 0 0
|
448
|
+
padding: 1px 0 0 0;
|
456
449
|
}
|
457
|
-
|
458
450
|
.flatpickr-days {
|
459
451
|
position: relative;
|
460
452
|
overflow: hidden;
|
@@ -468,11 +460,9 @@ span.flatpickr-weekday {
|
|
468
460
|
align-items: flex-start;
|
469
461
|
width: 307.875px;
|
470
462
|
}
|
471
|
-
|
472
463
|
.flatpickr-days:focus {
|
473
|
-
outline: 0
|
464
|
+
outline: 0;
|
474
465
|
}
|
475
|
-
|
476
466
|
.dayContainer {
|
477
467
|
padding: 0;
|
478
468
|
outline: 0;
|
@@ -497,16 +487,14 @@ span.flatpickr-weekday {
|
|
497
487
|
transform: translate3d(0, 0, 0);
|
498
488
|
opacity: 1;
|
499
489
|
}
|
500
|
-
|
501
|
-
.dayContainer+.dayContainer {
|
490
|
+
.dayContainer + .dayContainer {
|
502
491
|
-webkit-box-shadow: -1px 0 0 $medium-gray;
|
503
|
-
box-shadow: -1px 0 0 $medium-gray
|
492
|
+
box-shadow: -1px 0 0 $medium-gray;
|
504
493
|
}
|
505
|
-
|
506
494
|
.flatpickr-day {
|
507
495
|
background: none;
|
508
496
|
border: 1px solid transparent;
|
509
|
-
border-radius:
|
497
|
+
border-radius: 150px;
|
510
498
|
-webkit-box-sizing: border-box;
|
511
499
|
box-sizing: border-box;
|
512
500
|
color: #393939;
|
@@ -528,7 +516,6 @@ span.flatpickr-weekday {
|
|
528
516
|
justify-content: center;
|
529
517
|
text-align: center;
|
530
518
|
}
|
531
|
-
|
532
519
|
.flatpickr-day.inRange,
|
533
520
|
.flatpickr-day.prevMonthDay.inRange,
|
534
521
|
.flatpickr-day.nextMonthDay.inRange,
|
@@ -544,20 +531,17 @@ span.flatpickr-weekday {
|
|
544
531
|
cursor: pointer;
|
545
532
|
outline: 0;
|
546
533
|
background: $medium-gray;
|
547
|
-
border-color: $medium-gray
|
534
|
+
border-color: $medium-gray;
|
548
535
|
}
|
549
|
-
|
550
536
|
.flatpickr-day.today {
|
551
537
|
border-color: $dark-gray;
|
552
538
|
}
|
553
|
-
|
554
539
|
.flatpickr-day.today:hover,
|
555
540
|
.flatpickr-day.today:focus {
|
556
541
|
border-color: $dark-gray;
|
557
542
|
background: $dark-gray;
|
558
|
-
color: $white
|
543
|
+
color: $white;
|
559
544
|
}
|
560
|
-
|
561
545
|
.flatpickr-day.selected,
|
562
546
|
.flatpickr-day.startRange,
|
563
547
|
.flatpickr-day.endRange,
|
@@ -580,42 +564,36 @@ span.flatpickr-weekday {
|
|
580
564
|
-webkit-box-shadow: none;
|
581
565
|
box-shadow: none;
|
582
566
|
color: $white;
|
583
|
-
border-color: $blue
|
567
|
+
border-color: $blue;
|
584
568
|
}
|
585
|
-
|
586
569
|
.flatpickr-day.selected.startRange,
|
587
570
|
.flatpickr-day.startRange.startRange,
|
588
571
|
.flatpickr-day.endRange.startRange {
|
589
|
-
border-radius: 50px 0 0 50px
|
572
|
+
border-radius: 50px 0 0 50px;
|
590
573
|
}
|
591
|
-
|
592
574
|
.flatpickr-day.selected.endRange,
|
593
575
|
.flatpickr-day.startRange.endRange,
|
594
576
|
.flatpickr-day.endRange.endRange {
|
595
|
-
border-radius: 0 50px 50px 0
|
577
|
+
border-radius: 0 50px 50px 0;
|
596
578
|
}
|
597
|
-
|
598
|
-
.flatpickr-day.
|
599
|
-
.flatpickr-day.startRange.
|
600
|
-
.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)) {
|
579
|
+
.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n + 1)),
|
580
|
+
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n + 1)),
|
581
|
+
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n + 1)) {
|
601
582
|
-webkit-box-shadow: -10px 0 0 $blue;
|
602
|
-
box-shadow: -10px 0 0 $blue
|
583
|
+
box-shadow: -10px 0 0 $blue;
|
603
584
|
}
|
604
|
-
|
605
585
|
.flatpickr-day.selected.startRange.endRange,
|
606
586
|
.flatpickr-day.startRange.startRange.endRange,
|
607
587
|
.flatpickr-day.endRange.startRange.endRange {
|
608
|
-
border-radius: 50px
|
588
|
+
border-radius: 50px;
|
609
589
|
}
|
610
|
-
|
611
590
|
.flatpickr-day.inRange {
|
612
591
|
border-radius: 0;
|
613
592
|
-webkit-box-shadow: -5px 0 0 $medium-gray, 5px 0 0 $medium-gray;
|
614
|
-
box-shadow: -5px 0 0 $medium-gray, 5px 0 0 $medium-gray
|
593
|
+
box-shadow: -5px 0 0 $medium-gray, 5px 0 0 $medium-gray;
|
615
594
|
}
|
616
|
-
|
617
|
-
.flatpickr-day.disabled,
|
618
|
-
.flatpickr-day.disabled:hover,
|
595
|
+
.flatpickr-day.flatpickr-disabled,
|
596
|
+
.flatpickr-day.flatpickr-disabled:hover,
|
619
597
|
.flatpickr-day.prevMonthDay,
|
620
598
|
.flatpickr-day.nextMonthDay,
|
621
599
|
.flatpickr-day.notAllowed,
|
@@ -624,46 +602,37 @@ span.flatpickr-weekday {
|
|
624
602
|
color: rgba(57, 57, 57, 0.3);
|
625
603
|
background: transparent;
|
626
604
|
border-color: transparent;
|
627
|
-
cursor: default
|
605
|
+
cursor: default;
|
628
606
|
}
|
629
|
-
|
630
|
-
.flatpickr-day.disabled
|
631
|
-
.flatpickr-day.disabled:hover {
|
607
|
+
.flatpickr-day.flatpickr-disabled,
|
608
|
+
.flatpickr-day.flatpickr-disabled:hover {
|
632
609
|
cursor: not-allowed;
|
633
|
-
color: rgba(57, 57, 57, 0.1)
|
610
|
+
color: rgba(57, 57, 57, 0.1);
|
634
611
|
}
|
635
|
-
|
636
612
|
.flatpickr-day.week.selected {
|
637
613
|
border-radius: 0;
|
638
614
|
-webkit-box-shadow: -5px 0 0 $blue, 5px 0 0 $blue;
|
639
|
-
box-shadow: -5px 0 0 $blue, 5px 0 0 $blue
|
615
|
+
box-shadow: -5px 0 0 $blue, 5px 0 0 $blue;
|
640
616
|
}
|
641
|
-
|
642
617
|
.flatpickr-day.hidden {
|
643
|
-
visibility: hidden
|
618
|
+
visibility: hidden;
|
644
619
|
}
|
645
|
-
|
646
620
|
.rangeMode .flatpickr-day {
|
647
|
-
margin-top: 1px
|
621
|
+
margin-top: 1px;
|
648
622
|
}
|
649
|
-
|
650
623
|
.flatpickr-weekwrapper {
|
651
|
-
display: inline-block;
|
652
624
|
float: left;
|
653
625
|
}
|
654
|
-
|
655
626
|
.flatpickr-weekwrapper .flatpickr-weeks {
|
656
627
|
padding: 0 12px;
|
657
628
|
-webkit-box-shadow: 1px 0 0 $medium-gray;
|
658
|
-
box-shadow: 1px 0 0 $medium-gray
|
629
|
+
box-shadow: 1px 0 0 $medium-gray;
|
659
630
|
}
|
660
|
-
|
661
631
|
.flatpickr-weekwrapper .flatpickr-weekday {
|
662
632
|
float: none;
|
663
633
|
width: 100%;
|
664
|
-
line-height: 28px
|
634
|
+
line-height: 28px;
|
665
635
|
}
|
666
|
-
|
667
636
|
.flatpickr-weekwrapper span.flatpickr-day,
|
668
637
|
.flatpickr-weekwrapper span.flatpickr-day:hover {
|
669
638
|
display: block;
|
@@ -672,9 +641,8 @@ span.flatpickr-weekday {
|
|
672
641
|
color: rgba(57, 57, 57, 0.3);
|
673
642
|
background: transparent;
|
674
643
|
cursor: default;
|
675
|
-
border: none
|
644
|
+
border: none;
|
676
645
|
}
|
677
|
-
|
678
646
|
.flatpickr-innerContainer {
|
679
647
|
display: block;
|
680
648
|
display: -webkit-box;
|
@@ -685,14 +653,12 @@ span.flatpickr-weekday {
|
|
685
653
|
box-sizing: border-box;
|
686
654
|
overflow: hidden;
|
687
655
|
}
|
688
|
-
|
689
656
|
.flatpickr-rContainer {
|
690
657
|
display: inline-block;
|
691
658
|
padding: 0;
|
692
659
|
-webkit-box-sizing: border-box;
|
693
|
-
box-sizing: border-box
|
660
|
+
box-sizing: border-box;
|
694
661
|
}
|
695
|
-
|
696
662
|
.flatpickr-time {
|
697
663
|
text-align: center;
|
698
664
|
outline: 0;
|
@@ -708,13 +674,11 @@ span.flatpickr-weekday {
|
|
708
674
|
display: -ms-flexbox;
|
709
675
|
display: flex;
|
710
676
|
}
|
711
|
-
|
712
677
|
.flatpickr-time:after {
|
713
678
|
content: "";
|
714
679
|
display: table;
|
715
|
-
clear: both
|
680
|
+
clear: both;
|
716
681
|
}
|
717
|
-
|
718
682
|
.flatpickr-time .numInputWrapper {
|
719
683
|
-webkit-box-flex: 1;
|
720
684
|
-webkit-flex: 1;
|
@@ -724,23 +688,18 @@ span.flatpickr-weekday {
|
|
724
688
|
height: 40px;
|
725
689
|
float: left;
|
726
690
|
}
|
727
|
-
|
728
691
|
.flatpickr-time .numInputWrapper span.arrowUp:after {
|
729
|
-
border-bottom-color: #393939
|
692
|
+
border-bottom-color: #393939;
|
730
693
|
}
|
731
|
-
|
732
694
|
.flatpickr-time .numInputWrapper span.arrowDown:after {
|
733
|
-
border-top-color: #393939
|
695
|
+
border-top-color: #393939;
|
734
696
|
}
|
735
|
-
|
736
697
|
.flatpickr-time.hasSeconds .numInputWrapper {
|
737
|
-
width: 26
|
698
|
+
width: 26%;
|
738
699
|
}
|
739
|
-
|
740
700
|
.flatpickr-time.time24hr .numInputWrapper {
|
741
|
-
width: 49
|
701
|
+
width: 49%;
|
742
702
|
}
|
743
|
-
|
744
703
|
.flatpickr-time input {
|
745
704
|
background: transparent;
|
746
705
|
-webkit-box-shadow: none;
|
@@ -752,31 +711,29 @@ span.flatpickr-weekday {
|
|
752
711
|
padding: 0;
|
753
712
|
height: inherit;
|
754
713
|
line-height: inherit;
|
755
|
-
color:
|
756
|
-
font-size:
|
714
|
+
color: $form-field-text-color;
|
715
|
+
font-size: 14px;
|
757
716
|
position: relative;
|
758
717
|
-webkit-box-sizing: border-box;
|
759
718
|
box-sizing: border-box;
|
719
|
+
-webkit-appearance: textfield;
|
720
|
+
-moz-appearance: textfield;
|
721
|
+
appearance: textfield;
|
760
722
|
}
|
761
|
-
|
762
723
|
.flatpickr-time input.flatpickr-hour {
|
763
|
-
font-weight: bold
|
724
|
+
font-weight: bold;
|
764
725
|
}
|
765
|
-
|
766
726
|
.flatpickr-time input.flatpickr-minute,
|
767
727
|
.flatpickr-time input.flatpickr-second {
|
768
|
-
font-weight: 400
|
728
|
+
font-weight: 400;
|
769
729
|
}
|
770
|
-
|
771
730
|
.flatpickr-time input:focus {
|
772
731
|
outline: 0;
|
773
|
-
border: 0
|
732
|
+
border: 0;
|
774
733
|
}
|
775
|
-
|
776
734
|
.flatpickr-time .flatpickr-time-separator,
|
777
735
|
.flatpickr-time .flatpickr-am-pm {
|
778
736
|
height: inherit;
|
779
|
-
display: inline-block;
|
780
737
|
float: left;
|
781
738
|
line-height: inherit;
|
782
739
|
color: #393939;
|
@@ -788,52 +745,45 @@ span.flatpickr-weekday {
|
|
788
745
|
user-select: none;
|
789
746
|
-webkit-align-self: center;
|
790
747
|
-ms-flex-item-align: center;
|
791
|
-
align-self: center
|
748
|
+
align-self: center;
|
792
749
|
}
|
793
|
-
|
794
750
|
.flatpickr-time .flatpickr-am-pm {
|
795
751
|
outline: 0;
|
796
752
|
width: 18%;
|
797
753
|
cursor: pointer;
|
798
754
|
text-align: center;
|
799
|
-
font-weight: 400
|
755
|
+
font-weight: 400;
|
800
756
|
}
|
801
|
-
|
802
757
|
.flatpickr-time input:hover,
|
803
758
|
.flatpickr-time .flatpickr-am-pm:hover,
|
804
759
|
.flatpickr-time input:focus,
|
805
760
|
.flatpickr-time .flatpickr-am-pm:focus {
|
806
|
-
background: $light-gray
|
761
|
+
background: $light-gray;
|
807
762
|
}
|
808
|
-
|
809
763
|
.flatpickr-input[readonly] {
|
810
|
-
cursor: pointer
|
764
|
+
cursor: pointer;
|
811
765
|
}
|
812
|
-
|
813
766
|
@-webkit-keyframes fpFadeInDown {
|
814
767
|
from {
|
815
768
|
opacity: 0;
|
816
769
|
-webkit-transform: translate3d(0, -20px, 0);
|
817
|
-
transform: translate3d(0, -20px, 0)
|
770
|
+
transform: translate3d(0, -20px, 0);
|
818
771
|
}
|
819
|
-
|
820
772
|
to {
|
821
773
|
opacity: 1;
|
822
774
|
-webkit-transform: translate3d(0, 0, 0);
|
823
|
-
transform: translate3d(0, 0, 0)
|
775
|
+
transform: translate3d(0, 0, 0);
|
824
776
|
}
|
825
777
|
}
|
826
|
-
|
827
778
|
@keyframes fpFadeInDown {
|
828
779
|
from {
|
829
780
|
opacity: 0;
|
830
781
|
-webkit-transform: translate3d(0, -20px, 0);
|
831
|
-
transform: translate3d(0, -20px, 0)
|
782
|
+
transform: translate3d(0, -20px, 0);
|
832
783
|
}
|
833
|
-
|
834
784
|
to {
|
835
785
|
opacity: 1;
|
836
786
|
-webkit-transform: translate3d(0, 0, 0);
|
837
|
-
transform: translate3d(0, 0, 0)
|
787
|
+
transform: translate3d(0, 0, 0);
|
838
788
|
}
|
839
789
|
}
|
@@ -40,9 +40,7 @@ module Alchemy
|
|
40
40
|
def exception_handler(error)
|
41
41
|
exception_logger(error)
|
42
42
|
show_error_notice(error)
|
43
|
-
|
44
|
-
notify_airbrake(error) unless Rails.env.development? || Rails.env.test?
|
45
|
-
end
|
43
|
+
notify_error_tracker(error)
|
46
44
|
end
|
47
45
|
|
48
46
|
# Displays an error notice in the Alchemy backend.
|
@@ -146,6 +144,14 @@ module Alchemy
|
|
146
144
|
site
|
147
145
|
end
|
148
146
|
end
|
147
|
+
|
148
|
+
def notify_error_tracker(exception)
|
149
|
+
if ::Alchemy::ErrorTracking.notification_handler.respond_to?(:call)
|
150
|
+
::Alchemy::ErrorTracking.notification_handler.call(exception)
|
151
|
+
else
|
152
|
+
Rails.logger.warn("To use the Alchemy::ErrorTracking.notification_handler, it must respond to #call.")
|
153
|
+
end
|
154
|
+
end
|
149
155
|
end
|
150
156
|
end
|
151
157
|
end
|
data/lib/alchemy/engine.rb
CHANGED
@@ -44,5 +44,12 @@ module Alchemy
|
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
47
|
+
|
48
|
+
initializer "alchemy.error_tracking" do
|
49
|
+
if defined?(Airbrake)
|
50
|
+
require_relative "error_tracking/airbrake_handler"
|
51
|
+
Alchemy::ErrorTracking.notification_handler = Alchemy::ErrorTracking::AirbrakeHandler
|
52
|
+
end
|
53
|
+
end
|
47
54
|
end
|
48
55
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Alchemy
|
4
|
+
module ErrorTracking
|
5
|
+
class BaseHandler
|
6
|
+
def self.call(exception)
|
7
|
+
# implement your own notification method
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
mattr_accessor :notification_handler
|
12
|
+
@@notification_handler = BaseHandler
|
13
|
+
end
|
14
|
+
end
|
data/lib/alchemy/version.rb
CHANGED
data/lib/alchemy_cms.rb
CHANGED
@@ -37,6 +37,7 @@ require_relative "alchemy/controller_actions"
|
|
37
37
|
require_relative "alchemy/deprecation"
|
38
38
|
require_relative "alchemy/element_definition"
|
39
39
|
require_relative "alchemy/elements_finder"
|
40
|
+
require_relative "alchemy/error_tracking"
|
40
41
|
require_relative "alchemy/errors"
|
41
42
|
require_relative "alchemy/essence"
|
42
43
|
require_relative "alchemy/filetypes"
|
data/package/admin.js
CHANGED
@@ -5,6 +5,7 @@ import fileEditors from "./src/file_editors"
|
|
5
5
|
import pictureEditors from "./src/picture_editors"
|
6
6
|
import ImageLoader from "./src/image_loader"
|
7
7
|
import ImageCropper from "./src/image_cropper"
|
8
|
+
import Datepicker from "./src/datepicker"
|
8
9
|
|
9
10
|
// Global Alchemy object
|
10
11
|
if (typeof window.Alchemy === "undefined") {
|
@@ -20,5 +21,6 @@ Object.assign(Alchemy, {
|
|
20
21
|
fileEditors,
|
21
22
|
pictureEditors,
|
22
23
|
ImageLoader: ImageLoader.init,
|
23
|
-
ImageCropper
|
24
|
+
ImageCropper,
|
25
|
+
Datepicker
|
24
26
|
})
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import flatpickr from "flatpickr"
|
2
|
+
|
3
|
+
export default function Datepicker(scope = document) {
|
4
|
+
if (scope === "") {
|
5
|
+
scope = document
|
6
|
+
} else if (scope instanceof String) {
|
7
|
+
scope = document.querySelectorAll(scope)
|
8
|
+
}
|
9
|
+
|
10
|
+
const datepickerInputs = scope.querySelectorAll("input[data-datepicker-type]")
|
11
|
+
|
12
|
+
// Initializes the datepickers on the text inputs and sets the proper type
|
13
|
+
// to enable browsers default datepicker if the current OS is iOS.
|
14
|
+
if (Alchemy.isiOS) {
|
15
|
+
datepickerInputs.forEach((input) => {
|
16
|
+
input.attributes.type = input.dataset.datepickerType
|
17
|
+
})
|
18
|
+
} else {
|
19
|
+
datepickerInputs.forEach((input) => {
|
20
|
+
const type = input.dataset.datepickerType
|
21
|
+
const options = {
|
22
|
+
// alchemy_i18n supports `zh_CN` etc., but flatpickr only has two-letter codes (`zh`)
|
23
|
+
locale: Alchemy.locale.slice(0, 2),
|
24
|
+
altInput: true,
|
25
|
+
altFormat: Alchemy.t(`formats.${type}`),
|
26
|
+
altInputClass: "flatpickr-input",
|
27
|
+
enableTime: /time/.test(type),
|
28
|
+
noCalendar: type === "time",
|
29
|
+
time_24hr: Alchemy.t("formats.time_24hr"),
|
30
|
+
onValueUpdate(_selectedDates, _dateStr, instance) {
|
31
|
+
return Alchemy.setElementDirty(
|
32
|
+
instance.element.closest(".element-editor")
|
33
|
+
)
|
34
|
+
}
|
35
|
+
}
|
36
|
+
flatpickr(input, options)
|
37
|
+
})
|
38
|
+
}
|
39
|
+
}
|
data/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@alchemy_cms/admin",
|
3
|
-
"version": "6.0.0-
|
3
|
+
"version": "6.0.0-rc4",
|
4
4
|
"description": "AlchemyCMS",
|
5
5
|
"browser": "package/admin.js",
|
6
6
|
"files": [
|
@@ -24,6 +24,7 @@
|
|
24
24
|
},
|
25
25
|
"homepage": "https://github.com/AlchemyCMS/alchemy_cms#readme",
|
26
26
|
"dependencies": {
|
27
|
+
"flatpickr": "^4.6.9",
|
27
28
|
"lodash-es": "^4.17.21",
|
28
29
|
"sortablejs": "^1.10.2"
|
29
30
|
},
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alchemy_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.0.0.pre.
|
4
|
+
version: 6.0.0.pre.rc4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas von Deyen
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date:
|
16
|
+
date: 2022-01-16 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: actionmailer
|
@@ -408,9 +408,9 @@ dependencies:
|
|
408
408
|
- - ">="
|
409
409
|
- !ruby/object:Gem::Version
|
410
410
|
version: '1.8'
|
411
|
-
- - "
|
411
|
+
- - "<="
|
412
412
|
- !ruby/object:Gem::Version
|
413
|
-
version: 2.
|
413
|
+
version: 2.5.0
|
414
414
|
type: :runtime
|
415
415
|
prerelease: false
|
416
416
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -418,9 +418,9 @@ dependencies:
|
|
418
418
|
- - ">="
|
419
419
|
- !ruby/object:Gem::Version
|
420
420
|
version: '1.8'
|
421
|
-
- - "
|
421
|
+
- - "<="
|
422
422
|
- !ruby/object:Gem::Version
|
423
|
-
version: 2.
|
423
|
+
version: 2.5.0
|
424
424
|
- !ruby/object:Gem::Dependency
|
425
425
|
name: request_store
|
426
426
|
requirement: !ruby/object:Gem::Requirement
|
@@ -757,7 +757,6 @@ files:
|
|
757
757
|
- app/assets/javascripts/alchemy/alchemy.buttons.js.coffee
|
758
758
|
- app/assets/javascripts/alchemy/alchemy.char_counter.js.coffee
|
759
759
|
- app/assets/javascripts/alchemy/alchemy.confirm_dialog.js.coffee
|
760
|
-
- app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee
|
761
760
|
- app/assets/javascripts/alchemy/alchemy.dialog.js.coffee
|
762
761
|
- app/assets/javascripts/alchemy/alchemy.dirty.js.coffee
|
763
762
|
- app/assets/javascripts/alchemy/alchemy.dragndrop.js.coffee
|
@@ -1308,6 +1307,8 @@ files:
|
|
1308
1307
|
- lib/alchemy/element_definition.rb
|
1309
1308
|
- lib/alchemy/elements_finder.rb
|
1310
1309
|
- lib/alchemy/engine.rb
|
1310
|
+
- lib/alchemy/error_tracking.rb
|
1311
|
+
- lib/alchemy/error_tracking/airbrake_handler.rb
|
1311
1312
|
- lib/alchemy/errors.rb
|
1312
1313
|
- lib/alchemy/essence.rb
|
1313
1314
|
- lib/alchemy/filetypes.rb
|
@@ -1424,6 +1425,7 @@ files:
|
|
1424
1425
|
- package.json
|
1425
1426
|
- package/admin.js
|
1426
1427
|
- package/src/__tests__/i18n.spec.js
|
1428
|
+
- package/src/datepicker.js
|
1427
1429
|
- package/src/file_editors.js
|
1428
1430
|
- package/src/i18n.js
|
1429
1431
|
- package/src/image_cropper.js
|
@@ -1,29 +0,0 @@
|
|
1
|
-
window.Alchemy = {} if typeof(window.Alchemy) is 'undefined'
|
2
|
-
|
3
|
-
$.extend Alchemy,
|
4
|
-
|
5
|
-
Datepicker: (scope) ->
|
6
|
-
$datepicker_inputs = $('input[data-datepicker-type]', scope)
|
7
|
-
|
8
|
-
# Initializes the datepickers on the text inputs and sets the proper type
|
9
|
-
# to enable browsers default datepicker if the current OS is iOS.
|
10
|
-
if Alchemy.isiOS
|
11
|
-
$datepicker_inputs.prop "type", ->
|
12
|
-
return $(this).data('datepicker-type')
|
13
|
-
else
|
14
|
-
$datepicker_inputs.each ->
|
15
|
-
type = $(this).data('datepicker-type')
|
16
|
-
options =
|
17
|
-
# alchemy_i18n supports `zh_CN` etc., but flatpickr only has two-letter codes (`zh`)
|
18
|
-
locale: Alchemy.locale.slice(0, 2)
|
19
|
-
altInput: true
|
20
|
-
altFormat: Alchemy.t("formats.#{type}")
|
21
|
-
altInputClass: ""
|
22
|
-
enableTime: /time/.test(type)
|
23
|
-
noCalendar: type == "time"
|
24
|
-
time_24hr: Alchemy.t("formats.time_24hr")
|
25
|
-
onValueUpdate: (_selectedDates, _dateStr, instance) ->
|
26
|
-
Alchemy.setElementDirty $(instance.element).closest(".element-editor")
|
27
|
-
$(this).flatpickr(options)
|
28
|
-
|
29
|
-
return
|