playbook_ui 6.0.1 → 6.1.0.pre.alpha1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (205) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +4 -1
  3. data/app/pb_kits/playbook/data/menu.yml +5 -2
  4. data/app/pb_kits/playbook/index.js +4 -0
  5. data/app/pb_kits/playbook/packs/examples.js +7 -0
  6. data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +2 -2
  7. data/app/pb_kits/playbook/pb_badge/_badge.jsx +2 -5
  8. data/app/pb_kits/playbook/pb_badge/_badge.scss +1 -1
  9. data/app/pb_kits/playbook/pb_badge/badge.rb +1 -6
  10. data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +2 -2
  11. data/app/pb_kits/playbook/pb_body/_body.jsx +3 -6
  12. data/app/pb_kits/playbook/pb_body/_body.scss +6 -0
  13. data/app/pb_kits/playbook/pb_body/body.rb +2 -8
  14. data/app/pb_kits/playbook/pb_button/_button.jsx +2 -5
  15. data/app/pb_kits/playbook/pb_button/_button.scss +1 -1
  16. data/app/pb_kits/playbook/pb_button/button.rb +1 -7
  17. data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +2 -0
  18. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.html.erb +7 -0
  19. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.jsx +52 -0
  20. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.scss +101 -0
  21. data/app/pb_kits/playbook/pb_button_toolbar/button_toolbar.rb +29 -0
  22. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.html.erb +7 -0
  23. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.jsx +29 -0
  24. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.html.erb +7 -0
  25. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.jsx +34 -0
  26. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical.html.erb +11 -0
  27. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical.jsx +29 -0
  28. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.html.erb +11 -0
  29. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.jsx +34 -0
  30. data/app/pb_kits/playbook/pb_button_toolbar/docs/_description.md +1 -0
  31. data/app/pb_kits/playbook/pb_button_toolbar/docs/example.yml +15 -0
  32. data/app/pb_kits/playbook/pb_button_toolbar/docs/index.js +4 -0
  33. data/app/pb_kits/playbook/pb_caption/_caption.jsx +3 -7
  34. data/app/pb_kits/playbook/pb_caption/_caption.scss +0 -4
  35. data/app/pb_kits/playbook/pb_caption/caption.rb +1 -8
  36. data/app/pb_kits/playbook/pb_card/_card.jsx +17 -14
  37. data/app/pb_kits/playbook/pb_card/_card.scss +4 -1
  38. data/app/pb_kits/playbook/pb_card/card.rb +2 -9
  39. data/app/pb_kits/playbook/pb_card/docs/_card_dark.html.erb +1 -1
  40. data/app/pb_kits/playbook/pb_checkbox/_checkbox.jsx +2 -2
  41. data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +1 -8
  42. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.jsx +2 -2
  43. data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.rb +0 -2
  44. data/app/pb_kits/playbook/pb_contact/_contact.jsx +2 -2
  45. data/app/pb_kits/playbook/pb_currency/_currency.jsx +2 -2
  46. data/app/pb_kits/playbook/pb_dashboard/pbChartsLightTheme.js +26 -0
  47. data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +2 -2
  48. data/app/pb_kits/playbook/pb_date/_date.jsx +4 -4
  49. data/app/pb_kits/playbook/pb_date_picker/_date_picker.html.erb +38 -0
  50. data/app/pb_kits/playbook/pb_date_picker/_date_picker.jsx +101 -0
  51. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +846 -0
  52. data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +41 -0
  53. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.js +91 -0
  54. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.html.erb +1 -0
  55. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.jsx +12 -0
  56. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.html.erb +24 -0
  57. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.jsx +30 -0
  58. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_disabled.html.erb +43 -0
  59. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_disabled.jsx +48 -0
  60. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.html.erb +4 -0
  61. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.jsx +13 -0
  62. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.html.erb +19 -0
  63. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.jsx +25 -0
  64. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.html.erb +4 -0
  65. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.jsx +13 -0
  66. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_min_max.html.erb +14 -0
  67. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_min_max.jsx +22 -0
  68. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.html.erb +4 -0
  69. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.jsx +13 -0
  70. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +23 -0
  71. data/app/pb_kits/playbook/pb_date_picker/docs/index.js +8 -0
  72. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.jsx +2 -2
  73. data/app/pb_kits/playbook/pb_date_range_stacked/_date_range_stacked.jsx +2 -2
  74. data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.jsx +2 -2
  75. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.jsx +2 -2
  76. data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.jsx +2 -2
  77. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.jsx +2 -2
  78. data/app/pb_kits/playbook/pb_file_upload/_file_upload.jsx +2 -2
  79. data/app/pb_kits/playbook/pb_filter/Filter/FilterBackground.jsx +2 -2
  80. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.html.erb +2 -1
  81. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.jsx +2 -2
  82. data/app/pb_kits/playbook/pb_flex/_flex.jsx +2 -2
  83. data/app/pb_kits/playbook/pb_flex/_flex_item.jsx +2 -2
  84. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +2 -1
  85. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +2 -1
  86. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +3 -1
  87. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +3 -1
  88. data/app/pb_kits/playbook/pb_form/form_builder.rb +1 -0
  89. data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +41 -0
  90. data/app/pb_kits/playbook/pb_form_pill/_form_pill.jsx +2 -2
  91. data/app/pb_kits/playbook/pb_gauge/_gauge.html.erb +12 -0
  92. data/app/pb_kits/playbook/pb_gauge/_gauge.jsx +110 -0
  93. data/app/pb_kits/playbook/pb_gauge/_gauge.scss +11 -0
  94. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.html.erb +11 -0
  95. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.jsx +17 -0
  96. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.html.erb +12 -0
  97. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.jsx +18 -0
  98. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.html.erb +14 -0
  99. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.jsx +20 -0
  100. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.html.erb +15 -0
  101. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.jsx +23 -0
  102. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_live_data.jsx +40 -0
  103. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.html.erb +15 -0
  104. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.jsx +21 -0
  105. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.md +1 -0
  106. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.html.erb +26 -0
  107. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.jsx +37 -0
  108. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.md +1 -0
  109. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.html.erb +14 -0
  110. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.jsx +20 -0
  111. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.html.erb +29 -0
  112. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.jsx +29 -0
  113. data/app/pb_kits/playbook/pb_gauge/docs/example.yml +24 -0
  114. data/app/pb_kits/playbook/pb_gauge/docs/index.js +9 -0
  115. data/app/pb_kits/playbook/pb_gauge/gauge.rb +57 -0
  116. data/app/pb_kits/playbook/pb_hashtag/_hashtag.jsx +2 -2
  117. data/app/pb_kits/playbook/pb_highlight/_highlight.jsx +2 -2
  118. data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.jsx +2 -2
  119. data/app/pb_kits/playbook/pb_icon/_icon.jsx +2 -2
  120. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.jsx +2 -2
  121. data/app/pb_kits/playbook/pb_icon_value/_icon_value.jsx +2 -2
  122. data/app/pb_kits/playbook/pb_image/_image.jsx +2 -2
  123. data/app/pb_kits/playbook/pb_kit/dateTime.js +5 -1
  124. data/app/pb_kits/playbook/pb_label_pill/_label_pill.jsx +2 -2
  125. data/app/pb_kits/playbook/pb_label_value/_label_value.jsx +2 -2
  126. data/app/pb_kits/playbook/pb_layout/_layout.jsx +6 -6
  127. data/app/pb_kits/playbook/pb_legend/_legend.jsx +2 -2
  128. data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +2 -2
  129. data/app/pb_kits/playbook/pb_list/_list.jsx +2 -2
  130. data/app/pb_kits/playbook/pb_list/_list_item.jsx +2 -2
  131. data/app/pb_kits/playbook/pb_loading_inline/_loading_inline.jsx +2 -2
  132. data/app/pb_kits/playbook/pb_logistic/_logistic.jsx +111 -0
  133. data/app/pb_kits/playbook/pb_message/_message.jsx +2 -2
  134. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.jsx +2 -2
  135. data/app/pb_kits/playbook/pb_multiple_users_stacked/_multiple_users_stacked.jsx +2 -2
  136. data/app/pb_kits/playbook/pb_nav/_nav.jsx +2 -2
  137. data/app/pb_kits/playbook/pb_online_status/_online_status.jsx +2 -2
  138. data/app/pb_kits/playbook/pb_person/_person.jsx +2 -2
  139. data/app/pb_kits/playbook/pb_person_contact/_person_contact.jsx +2 -2
  140. data/app/pb_kits/playbook/pb_pill/_pill.jsx +2 -2
  141. data/app/pb_kits/playbook/pb_popover/_popover.jsx +2 -2
  142. data/app/pb_kits/playbook/pb_popover/docs/_popover_list.jsx +5 -5
  143. data/app/pb_kits/playbook/pb_progress_pills/_progress_pills.jsx +2 -2
  144. data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.jsx +2 -2
  145. data/app/pb_kits/playbook/pb_progress_step/_progress_step.jsx +2 -2
  146. data/app/pb_kits/playbook/pb_radio/_radio.jsx +2 -2
  147. data/app/pb_kits/playbook/pb_section_separator/_section_separator.jsx +2 -2
  148. data/app/pb_kits/playbook/pb_select/_select.jsx +2 -2
  149. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.jsx +12 -16
  150. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +1 -1
  151. data/app/pb_kits/playbook/pb_selectable_card/selectable_card.rb +1 -7
  152. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.jsx +26 -26
  153. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.scss +1 -1
  154. data/app/pb_kits/playbook/pb_selectable_card_icon/selectable_card_icon.rb +1 -8
  155. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.jsx +8 -10
  156. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.scss +1 -1
  157. data/app/pb_kits/playbook/pb_selectable_icon/selectable_icon.rb +1 -7
  158. data/app/pb_kits/playbook/pb_stat_change/_stat_change.jsx +2 -2
  159. data/app/pb_kits/playbook/pb_stat_value/_stat_value.jsx +2 -2
  160. data/app/pb_kits/playbook/pb_table/_table.jsx +2 -2
  161. data/app/pb_kits/playbook/pb_table/_table_row.jsx +2 -2
  162. data/app/pb_kits/playbook/pb_text_input/_text_input.jsx +2 -2
  163. data/app/pb_kits/playbook/pb_textarea/_textarea.html.erb +1 -1
  164. data/app/pb_kits/playbook/pb_textarea/_textarea.jsx +2 -2
  165. data/app/pb_kits/playbook/pb_textarea/_textarea.scss +2 -1
  166. data/app/pb_kits/playbook/pb_time/_time.jsx +57 -14
  167. data/app/pb_kits/playbook/pb_time/_time.scss +17 -0
  168. data/app/pb_kits/playbook/pb_time/docs/_time_align.jsx +27 -0
  169. data/app/pb_kits/playbook/pb_time/docs/_time_dark.jsx +28 -0
  170. data/app/pb_kits/playbook/pb_time/docs/_time_default.jsx +28 -0
  171. data/app/pb_kits/playbook/pb_time/docs/_time_timestamp.jsx +32 -0
  172. data/app/pb_kits/playbook/pb_time/docs/example.yml +4 -0
  173. data/app/pb_kits/playbook/pb_time/docs/index.js +4 -0
  174. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.jsx +2 -2
  175. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.jsx +2 -2
  176. data/app/pb_kits/playbook/pb_timestamp/_timestamp.jsx +2 -2
  177. data/app/pb_kits/playbook/pb_title/_title.jsx +3 -6
  178. data/app/pb_kits/playbook/pb_title/_title.scss +1 -1
  179. data/app/pb_kits/playbook/pb_title/title.rb +1 -9
  180. data/app/pb_kits/playbook/pb_title_count/_title_count.jsx +2 -2
  181. data/app/pb_kits/playbook/pb_title_detail/_title_detail.jsx +2 -2
  182. data/app/pb_kits/playbook/pb_toggle/_toggle.jsx +39 -31
  183. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom.jsx +31 -0
  184. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom_radio.html.erb +6 -6
  185. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom_radio.jsx +72 -0
  186. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.html.erb +1 -3
  187. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.jsx +6 -19
  188. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_name.jsx +57 -0
  189. data/app/pb_kits/playbook/pb_toggle/docs/{_toggle_checked.html.erb → _toggle_size.html.erb} +2 -2
  190. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_size.jsx +44 -0
  191. data/app/pb_kits/playbook/pb_toggle/docs/example.yml +8 -5
  192. data/app/pb_kits/playbook/pb_toggle/docs/index.js +4 -2
  193. data/app/pb_kits/playbook/pb_user/_user.jsx +2 -2
  194. data/app/pb_kits/playbook/pb_user_badge/_user_badge.jsx +2 -2
  195. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.jsx +2 -2
  196. data/app/pb_kits/playbook/plugins/pb_chart.js +74 -0
  197. data/app/pb_kits/playbook/props.rb +6 -0
  198. data/app/pb_kits/playbook/utilities/{spacing.js → globalProps.js} +14 -1
  199. data/app/pb_kits/playbook/utilities/props.js +1 -0
  200. data/app/pb_kits/playbook/vendor.js +6 -0
  201. data/lib/generators/kit/templates/kit_jsx.erb.tt +2 -2
  202. data/lib/playbook/version.rb +1 -1
  203. metadata +81 -9
  204. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_accessibility.jsx +0 -12
  205. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_data.jsx +0 -15
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Playbook
4
+ module PbDatePicker
5
+ class DatePicker
6
+ include Playbook::Props
7
+
8
+ partial "pb_date_picker/date_picker"
9
+
10
+ prop :default_date, type: Playbook::Props::String,
11
+ default: ""
12
+ prop :disable_date, type: Playbook::Props::Array,
13
+ default: []
14
+ prop :disable_range, type: Playbook::Props::Array,
15
+ default: []
16
+ prop :disable_weekdays, type: Playbook::Props::Array,
17
+ default: []
18
+ prop :error, type: Playbook::Props::String
19
+ prop :format, type: Playbook::Props::String,
20
+ default: "m/d/Y"
21
+ prop :label, type: Playbook::Props::String,
22
+ default: "Date Picker"
23
+ prop :max_date, type: Playbook::Props::String
24
+ prop :min_date, type: Playbook::Props::String
25
+ prop :name, type: Playbook::Props::String
26
+ prop :mode, type: Playbook::Props::String,
27
+ default: "single"
28
+ prop :picker_id, type: Playbook::Props::String
29
+ prop :required, type: Playbook::Props::Boolean,
30
+ default: false
31
+
32
+ def classname
33
+ generate_classname("pb_date_picker_kit")
34
+ end
35
+
36
+ def error_class
37
+ error ? "error" : ""
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,91 @@
1
+ import flatpickr from 'flatpickr'
2
+
3
+ const datePickerHelper = (config) => {
4
+ const {
5
+ defaultDate,
6
+ disableDate,
7
+ disableRange,
8
+ disableWeekdays,
9
+ format,
10
+ maxDate,
11
+ minDate,
12
+ mode,
13
+ pickerId,
14
+ propModel,
15
+ } = config
16
+
17
+ const defaultDateGetter = () => {
18
+ if (defaultDate !== '') {
19
+ if (propModel === 'rails' && defaultDate.includes('[') == true) {
20
+ return JSON.parse(defaultDate.replace(/"/g, '"'))
21
+ } else if (defaultDate === 'blank') {
22
+ return ''
23
+ } else {
24
+ return defaultDate
25
+ }
26
+ }
27
+ if (mode === 'single' && defaultDate === '') {
28
+ return new Date()
29
+ } else if (mode === 'range' && defaultDate === '') {
30
+ const today = new Date()
31
+ const tomorrow = new Date(today)
32
+ tomorrow.setDate(tomorrow.getDate() + 1)
33
+ return [today, tomorrow]
34
+ }
35
+ }
36
+ const disabledParser = () => {
37
+ if (disableDate && disableDate.length > 0) {
38
+ return disableDate
39
+ } else if (disableRange && disableRange.length > 0) {
40
+ return disableRange
41
+ } else {
42
+ return []
43
+ }
44
+ }
45
+
46
+ flatpickr(`#${pickerId}`, {
47
+ allowInput: true,
48
+ dateFormat: format,
49
+ defaultDate: defaultDateGetter(),
50
+ disable: disableWeekdays && disableWeekdays.length > 0 ? [
51
+ (date) => {
52
+ const weekdayObj = {
53
+ Sunday: 0,
54
+ Monday: 1,
55
+ Tuesday: 2,
56
+ Wednesday: 3,
57
+ Thursday: 4,
58
+ Friday: 5,
59
+ Saturday: 6,
60
+ }
61
+ return (
62
+ // try to refactor with for loop
63
+ date.getDay() === weekdayObj[disableWeekdays[0]] ||
64
+ date.getDay() === weekdayObj[disableWeekdays[1]] ||
65
+ date.getDay() === weekdayObj[disableWeekdays[2]] ||
66
+ date.getDay() === weekdayObj[disableWeekdays[3]] ||
67
+ date.getDay() === weekdayObj[disableWeekdays[4]] ||
68
+ date.getDay() === weekdayObj[disableWeekdays[5]] ||
69
+ date.getDay() === weekdayObj[disableWeekdays[6]]
70
+ )
71
+ },
72
+ ] : disabledParser(),
73
+ maxDate: maxDate,
74
+ minDate: minDate,
75
+ mode: mode,
76
+ static: true,
77
+ })
78
+
79
+ document.querySelector(`#${pickerId}`).addEventListener('input', (e) => {
80
+ const picker = document.querySelector(`#${pickerId}`)._flatpickr
81
+ picker.input.setAttribute('value', e.target.value)
82
+ const variant = picker.config.mode
83
+ if (variant === 'single' && e.target.value.split('').length === 10) {
84
+ picker.setDate(e.target.value)
85
+ } else if (variant === 'range' && e.target.value.split('').length === 24) {
86
+ picker.setDate(e.target.value)
87
+ }
88
+ })
89
+ }
90
+
91
+ export default datePickerHelper
@@ -0,0 +1 @@
1
+ <%= pb_rails("date_picker", props: { picker_id: "date-picker-default" }) %>
@@ -0,0 +1,12 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerDefault = () => (
5
+ <div>
6
+ <DatePicker
7
+ pickerId="date-picker-default"
8
+ />
9
+ </div>
10
+ )
11
+
12
+ export default DatePickerDefault
@@ -0,0 +1,24 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ default_date: "07/31/2020",
3
+ label: "Default Date String",
4
+ picker_id: "date-picker-default-date1"
5
+ }) %>
6
+
7
+ <%= pb_rails("date_picker", props: {
8
+ default_date: (Date.today + 2).httpdate,
9
+ label: "Default Date Dynamic",
10
+ picker_id: "date-picker-default-date2"
11
+ }) %>
12
+
13
+ <%= pb_rails("date_picker", props: {
14
+ default_date: [(Date.today).httpdate, (Date.today + 7).httpdate],
15
+ label: "Default Date Range",
16
+ mode: "range",
17
+ picker_id: "date-picker-default-date3"
18
+ }) %>
19
+
20
+ <%= pb_rails("date_picker", props: {
21
+ default_date: "blank",
22
+ label: "Blank",
23
+ picker_id: "date-picker-default-date4"
24
+ }) %>
@@ -0,0 +1,30 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerDefaultDate = () => (
5
+ <div>
6
+ <DatePicker
7
+ defaultDate="07/31/2020"
8
+ label="Default Date String"
9
+ pickerId="date-picker-default-date1"
10
+ />
11
+ <DatePicker
12
+ defaultDate={new Date().fp_incr(1)}
13
+ label="Default Date Dynamic"
14
+ pickerId="date-picker-default-date2"
15
+ />
16
+ <DatePicker
17
+ defaultDate={[new Date().fp_incr(1), new Date().fp_incr(3)]}
18
+ label="Default Date Range"
19
+ mode="range"
20
+ pickerId="date-picker-default-date3"
21
+ />
22
+ <DatePicker
23
+ defaultDate="blank"
24
+ label="Blank"
25
+ pickerId="date-picker-default-date4"
26
+ />
27
+ </div>
28
+ )
29
+
30
+ export default DatePickerDefaultDate
@@ -0,0 +1,43 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ disable_date: [(Date.today + 1).httpdate],
3
+ label: "Disable Single Date",
4
+ picker_id: "single-disabled-date"
5
+ }) %>
6
+
7
+ <%= pb_rails("date_picker", props: {
8
+ disable_date: [(Date.today + 1).httpdate, (Date.today + 3).httpdate],
9
+ label: "Disable Multiple Dates",
10
+ picker_id: "multiple-disabled-dates"
11
+ }) %>
12
+
13
+ <%= pb_rails("date_picker", props: {
14
+ disable_range: [
15
+ {
16
+ from: (Date.today + 1).httpdate,
17
+ to: (Date.today + 7).httpdate,
18
+ },
19
+ ],
20
+ label: "Disable Single Range",
21
+ picker_id: "single-date-range"
22
+ }) %>
23
+
24
+ <%= pb_rails("date_picker", props: {
25
+ disable_range: [
26
+ {
27
+ from: (Date.today + 1).httpdate,
28
+ to: (Date.today + 3).httpdate,
29
+ },
30
+ {
31
+ from: (Date.today + 7).httpdate,
32
+ to: (Date.today + 14).httpdate,
33
+ },
34
+ ],
35
+ label: "Disable Multiple Ranges",
36
+ picker_id: "multiple-date-ranges"
37
+ }) %>
38
+
39
+ <%= pb_rails("date_picker", props: {
40
+ disable_weekdays: ['Sunday', 'Saturday'],
41
+ label: "Disable Weekdays",
42
+ picker_id: "disabled-weekdays"
43
+ }) %>
@@ -0,0 +1,48 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerDisabled = () => (
5
+ <div>
6
+ <DatePicker
7
+ disableDate={[new Date().fp_incr(1)]}
8
+ label="Disable Single Date"
9
+ pickerId="single-disabled-date"
10
+ />
11
+ <DatePicker
12
+ disableDate={[new Date().fp_incr(1), new Date().fp_incr(3)]}
13
+ label="Disable Multiple Dates"
14
+ pickerId="multiple-disabled-dates"
15
+ />
16
+ <DatePicker
17
+ disableRange={[
18
+ {
19
+ from: new Date().fp_incr(1),
20
+ to: new Date().fp_incr(7),
21
+ },
22
+ ]}
23
+ label="Disable Single Range"
24
+ pickerId="single-date-range"
25
+ />
26
+ <DatePicker
27
+ disableRange={[
28
+ {
29
+ from: new Date().fp_incr(1),
30
+ to: new Date().fp_incr(3),
31
+ },
32
+ {
33
+ from: new Date().fp_incr(7),
34
+ to: new Date().fp_incr(14),
35
+ },
36
+ ]}
37
+ label="Disable Multiple Ranges"
38
+ pickerId="multiple-date-ranges"
39
+ />
40
+ <DatePicker
41
+ disableWeekdays={['Sunday', 'Saturday']}
42
+ label="Disable Weekdays"
43
+ pickerId="disabled-weekdays"
44
+ />
45
+ </div>
46
+ )
47
+
48
+ export default DatePickerDisabled
@@ -0,0 +1,4 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ error: "Invalid date. Please pick a valid date.",
3
+ picker_id: "date-picker-error"
4
+ }) %>
@@ -0,0 +1,13 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerError = () => (
5
+ <div>
6
+ <DatePicker
7
+ error="Invalid date. Please pick a valid date."
8
+ pickerId="date-picker-error"
9
+ />
10
+ </div>
11
+ )
12
+
13
+ export default DatePickerError
@@ -0,0 +1,19 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ format: "m-d-Y",
3
+ picker_id: "date-picker-format1"
4
+ }) %>
5
+
6
+ <%= pb_rails("date_picker", props: {
7
+ format: "m/d/y",
8
+ picker_id: "date-picker-format2"
9
+ }) %>
10
+
11
+ <%= pb_rails("date_picker", props: {
12
+ format: "n-j-y",
13
+ picker_id: "date-picker-format3"
14
+ }) %>
15
+
16
+ <%= pb_rails("date_picker", props: {
17
+ format: "Y-d-m",
18
+ picker_id: "date-picker-format4"
19
+ }) %>
@@ -0,0 +1,25 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerFormat = () => (
5
+ <div>
6
+ <DatePicker
7
+ format="m-d-Y"
8
+ pickerId="date-picker-format1"
9
+ />
10
+ <DatePicker
11
+ format="m/d/y"
12
+ pickerId="date-picker-format2"
13
+ />
14
+ <DatePicker
15
+ format="n-j-y"
16
+ pickerId="date-picker-format3"
17
+ />
18
+ <DatePicker
19
+ format="Y-d-m"
20
+ pickerId="date-picker-format4"
21
+ />
22
+ </div>
23
+ )
24
+
25
+ export default DatePickerFormat
@@ -0,0 +1,4 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ label: "Your Label Here",
3
+ picker_id: "date-picker-label"
4
+ }) %>
@@ -0,0 +1,13 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerLabel = () => (
5
+ <div>
6
+ <DatePicker
7
+ label="Your Label Here"
8
+ pickerId="date-picker-label"
9
+ />
10
+ </div>
11
+ )
12
+
13
+ export default DatePickerLabel
@@ -0,0 +1,14 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ label: "Dynamic dates.",
3
+ max_date: (Date.today + 3).httpdate,
4
+ min_date: (Date.today - 3).httpdate,
5
+ picker_id: "date-picker-min-max1"
6
+ }) %>
7
+
8
+ <%= pb_rails("date_picker", props: {
9
+ format: "m/d/Y",
10
+ label: "Absolute formatted dates.",
11
+ max_date: "10/20/2020",
12
+ min_date: "10/10/2020",
13
+ picker_id: "date-picker-min-max2"
14
+ }) %>
@@ -0,0 +1,22 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerMinMax = () => (
5
+ <div>
6
+ <DatePicker
7
+ label="Dynamic dates using flatpickr increment function."
8
+ maxDate={new Date().fp_incr(3)}
9
+ minDate={new Date().fp_incr(-3)}
10
+ pickerId="date-picker-min-max1"
11
+ />
12
+ <DatePicker
13
+ format="m/d/Y"
14
+ label="Absolute formatted dates."
15
+ maxDate="10/20/2020"
16
+ minDate="10/10/2020"
17
+ pickerId="date-picker-min-max2"
18
+ />
19
+ </div>
20
+ )
21
+
22
+ export default DatePickerMinMax
@@ -0,0 +1,4 @@
1
+ <%= pb_rails("date_picker", props: {
2
+ mode: "range",
3
+ picker_id: "date-picker-range"
4
+ }) %>
@@ -0,0 +1,13 @@
1
+ import React from 'react'
2
+ import { DatePicker } from '../../'
3
+
4
+ const DatePickerRange = () => (
5
+ <div>
6
+ <DatePicker
7
+ mode="range"
8
+ pickerId="date-picker-range"
9
+ />
10
+ </div>
11
+ )
12
+
13
+ export default DatePickerRange