recurring_select 1.2.4 → 3.0.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.
- checksums.yaml +5 -5
- data/README.md +2 -1
- data/app/assets/javascripts/jquery-mobile-rs.js.coffee +2 -2
- data/app/assets/javascripts/recurring_select.js.coffee +3 -2
- data/app/assets/javascripts/recurring_select/fr.js.coffee +1 -1
- data/app/assets/javascripts/recurring_select_dialog.js.coffee.erb +23 -18
- data/app/assets/stylesheets/{jquery-mobile-rs.css.scss.erb → jquery-mobile-rs.scss} +14 -0
- data/app/assets/stylesheets/{recurring_select.css.scss.erb → recurring_select.scss} +2 -2
- data/config/locales/nl.yml +8 -0
- data/{app → lib}/helpers/recurring_select_helper.rb +17 -46
- data/{app → lib}/middleware/recurring_select_middleware.rb +3 -1
- data/lib/recurring_select.rb +8 -8
- data/lib/recurring_select/engine.rb +7 -5
- data/lib/recurring_select/version.rb +1 -1
- metadata +15 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: d2a0200c05a91d2e53f9893103e3ee5259a0bd0917efaf373e0fff2ced38caa6
|
4
|
+
data.tar.gz: e950b6d4f120e420885e68c7d69192d3e65c241d9c90d139a44691f676ad41a8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2714208952ec80d4cecaf50f579a26ea06b7a1025803ace7486f31c7a307e57e965eb766b28ddfa478195c4557b9f8871a19c6b98125549df4825befc54082b
|
7
|
+
data.tar.gz: 679630c691151c92b59e98fcf08697f8f2ca5fccb6556e7737f9581aa319ce67ce02ceb9b948c3b86b8d9a8d3b37173b1eb15314e2e2bb5792c71cde4b0b1fc5
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Recurring Select
|
2
2
|
|
3
|
-
[](https://travis-ci.org/GetJobber/recurring_select) [](https://codeclimate.com/github/GetJobber/recurring_select)
|
4
4
|
|
5
5
|
This gem adds selectors and helpers for working with recurring schedules in a Rails app. It uses [ice_cube](https://github.com/seejohnrun/ice_cube) recurring scheduling gem.
|
6
6
|
|
@@ -101,6 +101,7 @@ For other languages include a JavaScript file like this:
|
|
101
101
|
|
102
102
|
```coffeescript
|
103
103
|
$.fn.recurring_select.texts = {
|
104
|
+
locale_iso_code: "fr"
|
104
105
|
repeat: "Repeat"
|
105
106
|
frequency: "Frequency"
|
106
107
|
daily: "Daily"
|
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
#= require recurring_select_dialog
|
2
|
+
#= require_self
|
3
3
|
|
4
4
|
$ = jQuery
|
5
5
|
$ ->
|
@@ -80,6 +80,7 @@ $.fn.recurring_select.options = {
|
|
80
80
|
}
|
81
81
|
|
82
82
|
$.fn.recurring_select.texts = {
|
83
|
+
locale_iso_code: "en"
|
83
84
|
repeat: "Repeat"
|
84
85
|
last_day: "Last Day"
|
85
86
|
frequency: "Frequency"
|
@@ -1,4 +1,5 @@
|
|
1
1
|
$.fn.recurring_select.texts = {
|
2
|
+
locale_iso_code: "fr"
|
2
3
|
repeat: "Récurrence"
|
3
4
|
last_day: "Dernier jour"
|
4
5
|
frequency: "Fréquence"
|
@@ -15,7 +16,6 @@ $.fn.recurring_select.texts = {
|
|
15
16
|
day_of_month: "Jour du mois"
|
16
17
|
day_of_week: "Jour de la semaine"
|
17
18
|
ok: "OK"
|
18
|
-
cancel: "Annuler"
|
19
19
|
summary: "Résumé"
|
20
20
|
first_day_of_week: 1
|
21
21
|
days_first_letter: ["D", "L", "M", "M", "J", "V", "S" ]
|
@@ -21,8 +21,8 @@ window.RecurringSelectDialog =
|
|
21
21
|
@mainEventInit()
|
22
22
|
@freqInit()
|
23
23
|
@summaryInit()
|
24
|
-
@freq_select.focus()
|
25
24
|
@outer_holder.trigger "recurring_select:dialog_opened"
|
25
|
+
@freq_select.focus()
|
26
26
|
|
27
27
|
positionDialogVert: (initial_positioning) =>
|
28
28
|
window_height = $(window).height()
|
@@ -43,7 +43,6 @@ window.RecurringSelectDialog =
|
|
43
43
|
@inner_holder.css new_style_hash
|
44
44
|
@inner_holder.trigger "recurring_select:dialog_positioned"
|
45
45
|
else
|
46
|
-
@content.css {"width": @content.width()+"px"}
|
47
46
|
@inner_holder.addClass "animated"
|
48
47
|
@inner_holder.animate new_style_hash, 200, =>
|
49
48
|
@inner_holder.removeClass "animated"
|
@@ -103,10 +102,15 @@ window.RecurringSelectDialog =
|
|
103
102
|
interval_input.val(@current_rule.hash.interval)
|
104
103
|
interval_input.on "change keyup", @intervalChanged
|
105
104
|
|
105
|
+
# clear selected days
|
106
|
+
section.find(".day_holder a").each (index, element) ->
|
107
|
+
$(element).removeClass("selected")
|
108
|
+
|
106
109
|
# connect the day fields
|
107
110
|
if @current_rule.hash.validations? && @current_rule.hash.validations.day?
|
108
111
|
$(@current_rule.hash.validations.day).each (index, val) ->
|
109
112
|
section.find(".day_holder a[data-value='"+val+"']").addClass("selected")
|
113
|
+
|
110
114
|
section.off('click', '.day_holder a').on "click", ".day_holder a", @daysChanged
|
111
115
|
|
112
116
|
section.show()
|
@@ -161,9 +165,9 @@ window.RecurringSelectDialog =
|
|
161
165
|
|
162
166
|
summaryFetch: ->
|
163
167
|
return if !(@current_rule.hash? && (rule_type = @current_rule.hash.rule_type)?)
|
164
|
-
@
|
168
|
+
@current_rule.hash['week_start'] = $.fn.recurring_select.texts["first_day_of_week"]
|
165
169
|
$.ajax
|
166
|
-
url: "
|
170
|
+
url: "<%= Rails.application.config.action_controller.relative_url_root %>/recurring_select/translate/#{$.fn.recurring_select.texts["locale_iso_code"]}",
|
167
171
|
type: "POST",
|
168
172
|
data: @current_rule.hash
|
169
173
|
success: @summaryFetchSuccess
|
@@ -198,12 +202,14 @@ window.RecurringSelectDialog =
|
|
198
202
|
|
199
203
|
for num, index in [1, 2, 3, 4, 5, -1]
|
200
204
|
if show_row[index]
|
201
|
-
monthly_calendar.append "<span>#{row_labels[
|
202
|
-
for day_of_week in [
|
203
|
-
|
205
|
+
monthly_calendar.append "<span>#{row_labels[num - 1]}</span>"
|
206
|
+
for day_of_week in [$.fn.recurring_select.texts["first_day_of_week"]...(7 + $.fn.recurring_select.texts["first_day_of_week"])]
|
207
|
+
day_of_week = day_of_week % 7
|
208
|
+
day_link = $("<a>", {text: cell_str[day_of_week] })
|
204
209
|
day_link.attr("day", day_of_week)
|
205
210
|
day_link.attr("instance", num)
|
206
211
|
monthly_calendar.append day_link
|
212
|
+
|
207
213
|
$.each @current_rule.hash.validations.day_of_week, (key, value) ->
|
208
214
|
$.each value, (index, instance) ->
|
209
215
|
section.find("a[day='#{key}'][instance='#{instance}']").addClass("selected")
|
@@ -252,7 +258,6 @@ window.RecurringSelectDialog =
|
|
252
258
|
@current_rule.hash.interval = parseInt($(event.currentTarget).val())
|
253
259
|
if @current_rule.hash.interval < 1 || isNaN(@current_rule.hash.interval)
|
254
260
|
@current_rule.hash.interval = 1
|
255
|
-
# $(event.currentTarget).val(@current_rule.hash.interval)
|
256
261
|
@summaryUpdate()
|
257
262
|
|
258
263
|
daysChanged: (event) =>
|
@@ -301,9 +306,9 @@ window.RecurringSelectDialog =
|
|
301
306
|
<div class='rs_dialog'>
|
302
307
|
<div class='rs_dialog_content'>
|
303
308
|
<h1>#{$.fn.recurring_select.texts["repeat"]} <a href='#' title='#{$.fn.recurring_select.texts["cancel"]}' Alt='#{$.fn.recurring_select.texts["cancel"]}'></a> </h1>
|
304
|
-
<p>
|
309
|
+
<p class='frequency-select-wrapper'>
|
305
310
|
<label for='rs_frequency'>#{$.fn.recurring_select.texts["frequency"]}:</label>
|
306
|
-
<select id='rs_frequency' class='rs_frequency' name='rs_frequency'>
|
311
|
+
<select data-wrapper-class='ui-recurring-select' id='rs_frequency' class='rs_frequency' name='rs_frequency'>
|
307
312
|
<option value='Daily'>#{$.fn.recurring_select.texts["daily"]}</option>
|
308
313
|
<option value='Weekly'>#{$.fn.recurring_select.texts["weekly"]}</option>
|
309
314
|
<option value='Monthly'>#{$.fn.recurring_select.texts["monthly"]}</option>
|
@@ -314,14 +319,14 @@ window.RecurringSelectDialog =
|
|
314
319
|
<div class='daily_options freq_option_section'>
|
315
320
|
<p>
|
316
321
|
#{$.fn.recurring_select.texts["every"]}
|
317
|
-
<input type='text' name='rs_daily_interval' class='rs_daily_interval rs_interval' value='1' size='2' />
|
322
|
+
<input type='text' data-wrapper-class='ui-recurring-select' name='rs_daily_interval' class='rs_daily_interval rs_interval' value='1' size='2' />
|
318
323
|
#{$.fn.recurring_select.texts["days"]}
|
319
324
|
</p>
|
320
325
|
</div>
|
321
326
|
<div class='weekly_options freq_option_section'>
|
322
327
|
<p>
|
323
328
|
#{$.fn.recurring_select.texts["every"]}
|
324
|
-
<input type='text' name='rs_weekly_interval' class='rs_weekly_interval rs_interval' value='1' size='2' />
|
329
|
+
<input type='text' data-wrapper-class='ui-recurring-select' name='rs_weekly_interval' class='rs_weekly_interval rs_interval' value='1' size='2' />
|
325
330
|
#{$.fn.recurring_select.texts["weeks_on"]}:
|
326
331
|
</p>
|
327
332
|
<div class='day_holder'>
|
@@ -337,12 +342,12 @@ window.RecurringSelectDialog =
|
|
337
342
|
<div class='monthly_options freq_option_section'>
|
338
343
|
<p>
|
339
344
|
#{$.fn.recurring_select.texts["every"]}
|
340
|
-
<input type='text' name='rs_monthly_interval' class='rs_monthly_interval rs_interval' value='1' size='2' />
|
345
|
+
<input type='text' data-wrapper-class='ui-recurring-select' name='rs_monthly_interval' class='rs_monthly_interval rs_interval' value='1' size='2' />
|
341
346
|
#{$.fn.recurring_select.texts["months"]}:
|
342
347
|
</p>
|
343
348
|
<p class='monthly_rule_type'>
|
344
|
-
<span>#{$.fn.recurring_select.texts["day_of_month"]}
|
345
|
-
<span>#{$.fn.recurring_select.texts["day_of_week"]}
|
349
|
+
<span><label for='monthly_rule_type_day'>#{$.fn.recurring_select.texts["day_of_month"]}</label><input type='radio' class='monthly_rule_type_day' name='monthly_rule_type' id='monthly_rule_type_day' value='true' /></span>
|
350
|
+
<span><label for='monthly_rule_type_week'>#{$.fn.recurring_select.texts["day_of_week"]}</label><input type='radio' class='monthly_rule_type_week' name='monthly_rule_type' id='monthly_rule_type_week' value='true' /></span>
|
346
351
|
</p>
|
347
352
|
<p class='rs_calendar_day'></p>
|
348
353
|
<p class='rs_calendar_week'></p>
|
@@ -350,7 +355,7 @@ window.RecurringSelectDialog =
|
|
350
355
|
<div class='yearly_options freq_option_section'>
|
351
356
|
<p>
|
352
357
|
#{$.fn.recurring_select.texts["every"]}
|
353
|
-
<input type='text' name='rs_yearly_interval' class='rs_yearly_interval rs_interval' value='1' size='2' />
|
358
|
+
<input type='text' data-wrapper-class='ui-recurring-select' name='rs_yearly_interval' class='rs_yearly_interval rs_interval' value='1' size='2' />
|
354
359
|
#{$.fn.recurring_select.texts["years"]}
|
355
360
|
</p>
|
356
361
|
</div>
|
@@ -358,8 +363,8 @@ window.RecurringSelectDialog =
|
|
358
363
|
<span></span>
|
359
364
|
</p>
|
360
365
|
<div class='controls'>
|
361
|
-
<input type='button' class='rs_save' value='#{$.fn.recurring_select.texts["ok"]}' />
|
362
|
-
<input type='button' class='rs_cancel' value='#{$.fn.recurring_select.texts["cancel"]}' />
|
366
|
+
<input type='button' data-wrapper-class='ui-recurring-select' class='rs_save' value='#{$.fn.recurring_select.texts["ok"]}' />
|
367
|
+
<input type='button' data-wrapper-class='ui-recurring-select' class='rs_cancel' value='#{$.fn.recurring_select.texts["cancel"]}' />
|
363
368
|
</div>
|
364
369
|
</div>
|
365
370
|
</div>
|
@@ -3,6 +3,20 @@
|
|
3
3
|
*= require_self
|
4
4
|
*/
|
5
5
|
|
6
|
+
/* Make the jQuery mobile wrapped input elements inline */
|
7
|
+
div.ui-recurring-select {
|
8
|
+
display:inline-block;
|
9
|
+
}
|
10
|
+
|
11
|
+
.frequency-select-wrapper label{
|
12
|
+
display:inline;
|
13
|
+
}
|
14
|
+
|
15
|
+
/* Make the jQuery mobile wrapped labels and radios remain inline elements inline */
|
16
|
+
p.monthly_rule_type label {
|
17
|
+
display:inline;
|
18
|
+
}
|
19
|
+
|
6
20
|
.rs_dialog_holder {padding-left:0px; background-color:#333; background-color:rgba(30,30,30,0.3); font-size:1em; position:absolute;
|
7
21
|
.rs_dialog { position:absolute; left:10px; right:10px; margin:0px; display:block; z-index:51;
|
8
22
|
|
@@ -33,7 +33,7 @@ select {
|
|
33
33
|
display:inline-block; min-width:200px; margin-left:-125px; overflow:hidden; position:relative;
|
34
34
|
.rs_dialog_content { padding:10px;
|
35
35
|
h1 { font-size:16px; padding:0px; margin:0 0 10px 0;
|
36
|
-
a {float:right; display:inline-block; height:16px; width:16px; background-image:url(
|
36
|
+
a {float:right; display:inline-block; height:16px; width:16px; background-image:image-url("recurring_select/cancel.png"); background-position:center; background-repeat:no-repeat;}
|
37
37
|
}
|
38
38
|
|
39
39
|
p { padding:5px 0; margin:0; line-height: 14px;
|
@@ -80,7 +80,7 @@ select {
|
|
80
80
|
.rs_summary { padding:0px; margin-top:15px; border-top:1px solid #ccc;
|
81
81
|
span {font-weight:bold; border-top:1px solid #fff; display:block; padding:10px 0 5px 0;}
|
82
82
|
&.fetching {color:#999;
|
83
|
-
span {background-image:url(
|
83
|
+
span {background-image:image-url("recurring_select/throbber_13x13.gif"); background-position:center; background-repeat:no-repeat; display:inline-block; height:13px; width:13px; margin-top:-4px; padding-right:5px;}
|
84
84
|
}
|
85
85
|
label {font-weight:normal;}
|
86
86
|
}
|
@@ -2,14 +2,8 @@ require "ice_cube"
|
|
2
2
|
|
3
3
|
module RecurringSelectHelper
|
4
4
|
module FormHelper
|
5
|
-
|
6
|
-
|
7
|
-
RecurringSelectTag.new(object, method, self, default_schedules, options, html_options).render
|
8
|
-
end
|
9
|
-
elsif Rails::VERSION::MAJOR == 3
|
10
|
-
def select_recurring(object, method, default_schedules = nil, options = {}, html_options = {})
|
11
|
-
InstanceTag.new(object, method, self, options.delete(:object)).to_recurring_select_tag(default_schedules, options, html_options)
|
12
|
-
end
|
5
|
+
def select_recurring(object, method, default_schedules = nil, options = {}, html_options = {})
|
6
|
+
RecurringSelectTag.new(object, method, self, default_schedules, options, html_options).render
|
13
7
|
end
|
14
8
|
end
|
15
9
|
|
@@ -96,47 +90,24 @@ module RecurringSelectHelper
|
|
96
90
|
end
|
97
91
|
end
|
98
92
|
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
include RecurringSelectHelper::FormOptionsHelper
|
103
|
-
include SelectHTMLOptions
|
104
|
-
|
105
|
-
def initialize(object, method, template_object, default_schedules = nil, options = {}, html_options = {})
|
106
|
-
@default_schedules = default_schedules
|
107
|
-
@choices = @choices.to_a if @choices.is_a?(Range)
|
108
|
-
@method_name = method.to_s
|
109
|
-
@object_name = object.to_s
|
110
|
-
@html_options = recurring_select_html_options(html_options)
|
111
|
-
add_default_name_and_id(@html_options)
|
112
|
-
|
113
|
-
super(object, method, template_object, options)
|
114
|
-
end
|
93
|
+
class RecurringSelectTag < ActionView::Helpers::Tags::Base
|
94
|
+
include RecurringSelectHelper::FormOptionsHelper
|
95
|
+
include SelectHTMLOptions
|
115
96
|
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
97
|
+
def initialize(object, method, template_object, default_schedules = nil, options = {}, html_options = {})
|
98
|
+
@default_schedules = default_schedules
|
99
|
+
@choices = @choices.to_a if @choices.is_a?(Range)
|
100
|
+
@method_name = method.to_s
|
101
|
+
@object_name = object.to_s
|
102
|
+
@html_options = recurring_select_html_options(html_options)
|
103
|
+
add_default_name_and_id(@html_options)
|
104
|
+
|
105
|
+
super(object, method, template_object, options)
|
120
106
|
end
|
121
107
|
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
include RecurringSelectHelper::FormOptionsHelper
|
126
|
-
include SelectHTMLOptions
|
127
|
-
|
128
|
-
def to_recurring_select_tag(default_schedules, options, html_options)
|
129
|
-
html_options = recurring_select_html_options(html_options)
|
130
|
-
add_default_name_and_id(html_options)
|
131
|
-
value = value(object)
|
132
|
-
options = add_options(
|
133
|
-
recurring_options_for_select(value, default_schedules, options),
|
134
|
-
options, value
|
135
|
-
)
|
136
|
-
content_tag("select", options, html_options)
|
137
|
-
end
|
108
|
+
def render
|
109
|
+
option_tags = add_options(recurring_options_for_select(value, @default_schedules, @options), @options, value)
|
110
|
+
select_content_tag(option_tags, @options, @html_options)
|
138
111
|
end
|
139
112
|
end
|
140
|
-
|
141
|
-
|
142
113
|
end
|
@@ -7,7 +7,9 @@ class RecurringSelectMiddleware
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def call(env)
|
10
|
-
|
10
|
+
regexp = /^\/recurring_select\/translate\/(.*)/
|
11
|
+
if env["PATH_INFO"] =~ regexp
|
12
|
+
I18n.locale = env["PATH_INFO"].scan(regexp).first.first
|
11
13
|
request = Rack::Request.new(env)
|
12
14
|
params = request.params
|
13
15
|
params.symbolize_keys!
|
data/lib/recurring_select.rb
CHANGED
@@ -7,14 +7,15 @@ module RecurringSelect
|
|
7
7
|
if params.is_a? IceCube::Rule
|
8
8
|
params
|
9
9
|
else
|
10
|
-
if params.is_a?(String)
|
11
|
-
|
10
|
+
params = JSON.parse(params, quirks_mode: true) if params.is_a?(String)
|
11
|
+
if params.nil?
|
12
|
+
nil
|
13
|
+
else
|
14
|
+
params = params.symbolize_keys
|
15
|
+
rules_hash = filter_params(params)
|
16
|
+
IceCube::Rule.from_hash(rules_hash)
|
12
17
|
end
|
13
18
|
|
14
|
-
params = params.symbolize_keys
|
15
|
-
rules_hash = filter_params(params)
|
16
|
-
|
17
|
-
IceCube::Rule.from_hash(rules_hash)
|
18
19
|
end
|
19
20
|
end
|
20
21
|
|
@@ -24,8 +25,7 @@ module RecurringSelect
|
|
24
25
|
|
25
26
|
if possible_rule.is_a?(String)
|
26
27
|
begin
|
27
|
-
JSON.parse(possible_rule)
|
28
|
-
return true
|
28
|
+
return JSON.parse(possible_rule).is_a?(Hash)
|
29
29
|
rescue JSON::ParserError
|
30
30
|
return false
|
31
31
|
end
|
@@ -1,16 +1,18 @@
|
|
1
|
+
require "helpers/recurring_select_helper"
|
2
|
+
require "middleware/recurring_select_middleware"
|
3
|
+
|
1
4
|
module RecurringSelect
|
2
5
|
class Engine < Rails::Engine
|
3
|
-
|
6
|
+
|
4
7
|
initializer "recurring_select.extending_form_builder" do |app|
|
5
|
-
# config.to_prepare do
|
6
8
|
ActionView::Helpers::FormHelper.send(:include, RecurringSelectHelper::FormHelper)
|
7
9
|
ActionView::Helpers::FormOptionsHelper.send(:include, RecurringSelectHelper::FormOptionsHelper)
|
8
10
|
ActionView::Helpers::FormBuilder.send(:include, RecurringSelectHelper::FormBuilder)
|
9
11
|
end
|
10
|
-
|
12
|
+
|
11
13
|
initializer "recurring_select.connecting_middleware" do |app|
|
12
|
-
app.middleware.use RecurringSelectMiddleware # insert_after ActionDispatch::ParamsParser,
|
14
|
+
app.middleware.use RecurringSelectMiddleware # insert_after ActionDispatch::ParamsParser,
|
13
15
|
end
|
14
|
-
|
16
|
+
|
15
17
|
end
|
16
18
|
end
|
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: recurring_select
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jobber
|
8
8
|
- Forrest Zeisler
|
9
9
|
- Nathan Youngman
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2020-08-31 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|
@@ -18,14 +18,14 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - ">="
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
21
|
+
version: '5.2'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - ">="
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: '
|
28
|
+
version: '5.2'
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: jquery-rails
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
@@ -60,14 +60,14 @@ dependencies:
|
|
60
60
|
requirements:
|
61
61
|
- - ">="
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version: '
|
63
|
+
version: '4.0'
|
64
64
|
type: :runtime
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
68
|
- - ">="
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version: '
|
70
|
+
version: '4.0'
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
72
|
name: coffee-rails
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
@@ -155,14 +155,15 @@ files:
|
|
155
155
|
- app/assets/javascripts/recurring_select.js.coffee
|
156
156
|
- app/assets/javascripts/recurring_select/fr.js.coffee
|
157
157
|
- app/assets/javascripts/recurring_select_dialog.js.coffee.erb
|
158
|
-
- app/assets/stylesheets/jquery-mobile-rs.
|
159
|
-
- app/assets/stylesheets/recurring_select.
|
158
|
+
- app/assets/stylesheets/jquery-mobile-rs.scss
|
159
|
+
- app/assets/stylesheets/recurring_select.scss
|
160
160
|
- app/assets/stylesheets/utilities.scss
|
161
|
-
- app/helpers/recurring_select_helper.rb
|
162
|
-
- app/middleware/recurring_select_middleware.rb
|
163
161
|
- config/locales/en.yml
|
164
162
|
- config/locales/fr.yml
|
163
|
+
- config/locales/nl.yml
|
165
164
|
- config/routes.rb
|
165
|
+
- lib/helpers/recurring_select_helper.rb
|
166
|
+
- lib/middleware/recurring_select_middleware.rb
|
166
167
|
- lib/recurring_select.rb
|
167
168
|
- lib/recurring_select/engine.rb
|
168
169
|
- lib/recurring_select/version.rb
|
@@ -170,7 +171,7 @@ homepage: http://github.com/getjobber/recurring_select
|
|
170
171
|
licenses:
|
171
172
|
- MIT
|
172
173
|
metadata: {}
|
173
|
-
post_install_message:
|
174
|
+
post_install_message:
|
174
175
|
rdoc_options: []
|
175
176
|
require_paths:
|
176
177
|
- lib
|
@@ -185,9 +186,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
186
|
- !ruby/object:Gem::Version
|
186
187
|
version: '0'
|
187
188
|
requirements: []
|
188
|
-
|
189
|
-
|
190
|
-
signing_key:
|
189
|
+
rubygems_version: 3.0.6
|
190
|
+
signing_key:
|
191
191
|
specification_version: 4
|
192
192
|
summary: A select helper which gives you magical powers to generate ice_cube rules.
|
193
193
|
test_files: []
|