playbook_ui 7.4.0.pre.alpha4 → 7.4.0.pre.test2

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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +3 -1
  3. data/app/pb_kits/playbook/data/menu.yml +2 -2
  4. data/app/pb_kits/playbook/index.js +2 -2
  5. data/app/pb_kits/playbook/pb_background/_background.html.erb +14 -0
  6. data/app/pb_kits/playbook/pb_background/_background.jsx +63 -0
  7. data/app/pb_kits/playbook/pb_background/_background.scss +35 -0
  8. data/app/pb_kits/playbook/pb_background/background.rb +35 -0
  9. data/app/pb_kits/playbook/pb_background/docs/_background_dark.html.erb +3 -0
  10. data/app/pb_kits/playbook/pb_background/docs/_background_dark.jsx +13 -0
  11. data/app/pb_kits/playbook/pb_background/docs/_background_gradient.html.erb +3 -0
  12. data/app/pb_kits/playbook/pb_background/docs/_background_gradient.jsx +13 -0
  13. data/app/pb_kits/playbook/pb_background/docs/_background_image.html.erb +13 -0
  14. data/app/pb_kits/playbook/pb_background/docs/_background_image.jsx +30 -0
  15. data/app/pb_kits/playbook/pb_background/docs/_background_light.html.erb +3 -0
  16. data/app/pb_kits/playbook/pb_background/docs/_background_light.jsx +13 -0
  17. data/app/pb_kits/playbook/pb_background/docs/_background_white.html.erb +3 -0
  18. data/app/pb_kits/playbook/pb_background/docs/_background_white.jsx +14 -0
  19. data/app/pb_kits/playbook/pb_background/docs/_description.md +1 -0
  20. data/app/pb_kits/playbook/pb_background/docs/example.yml +15 -0
  21. data/app/pb_kits/playbook/pb_background/docs/index.js +6 -0
  22. data/app/pb_kits/playbook/pb_checkbox/_checkbox.html.erb +2 -3
  23. data/app/pb_kits/playbook/pb_checkbox/_checkbox.jsx +1 -2
  24. data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +1 -4
  25. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_default.html.erb +2 -5
  26. data/app/pb_kits/playbook/pb_date/_date.html.erb +64 -8
  27. data/app/pb_kits/playbook/pb_date/_date.jsx +115 -66
  28. data/app/pb_kits/playbook/pb_date/_date.scss +30 -0
  29. data/app/pb_kits/playbook/pb_date/date.rb +20 -9
  30. data/app/pb_kits/playbook/pb_date/docs/_date_alignment.html.erb +24 -0
  31. data/app/pb_kits/playbook/pb_date/docs/_date_alignment.jsx +35 -0
  32. data/app/pb_kits/playbook/pb_date/docs/_date_default.html.erb +21 -6
  33. data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +43 -12
  34. data/app/pb_kits/playbook/pb_date/docs/_date_variants.html.erb +27 -0
  35. data/app/pb_kits/playbook/pb_date/docs/_date_variants.jsx +43 -0
  36. data/app/pb_kits/playbook/pb_date/docs/example.yml +4 -0
  37. data/app/pb_kits/playbook/pb_date/docs/index.js +2 -0
  38. data/app/pb_kits/playbook/pb_date_picker/_date_picker.html.erb +19 -14
  39. data/app/pb_kits/playbook/pb_date_time/_date_time.html.erb +31 -0
  40. data/app/pb_kits/playbook/pb_date_time/_date_time.jsx +73 -0
  41. data/app/pb_kits/playbook/pb_date_time/_date_time.scss +26 -0
  42. data/app/pb_kits/playbook/pb_date_time/date_time.rb +29 -0
  43. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_align.html.erb +17 -0
  44. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_align.jsx +35 -0
  45. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_default.html.erb +20 -0
  46. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_default.jsx +38 -0
  47. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_size.html.erb +26 -0
  48. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_size.jsx +75 -0
  49. data/app/pb_kits/playbook/pb_date_time/docs/_description.md +1 -0
  50. data/app/pb_kits/playbook/pb_date_time/docs/example.yml +11 -0
  51. data/app/pb_kits/playbook/pb_date_time/docs/index.js +3 -0
  52. data/app/pb_kits/playbook/pb_flex/_flex.jsx +1 -1
  53. data/app/pb_kits/playbook/pb_flex/_flex.scss +4 -0
  54. data/app/pb_kits/playbook/pb_flex/flex.rb +1 -1
  55. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +52 -1
  56. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -1
  57. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +1 -1
  58. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +1 -1
  59. data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +19 -1
  60. data/app/pb_kits/playbook/pb_home_address_street/home_address_street.rb +1 -1
  61. data/app/pb_kits/playbook/pb_list/_list.jsx +2 -9
  62. data/app/pb_kits/playbook/pb_progress_step/progress_step.rb +2 -2
  63. data/app/pb_kits/playbook/pb_radio/_radio.jsx +3 -0
  64. data/app/pb_kits/playbook/pb_tooltip/_tooltip.scss +46 -19
  65. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_default.html.erb +46 -10
  66. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_white.html.erb +4 -4
  67. data/app/pb_kits/playbook/pb_tooltip/tooltip.rb +3 -2
  68. data/app/pb_kits/playbook/pb_typeahead/_typeahead.jsx +2 -0
  69. data/app/pb_kits/playbook/pb_typeahead/components/ClearIndicator.jsx +19 -0
  70. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.html.erb +7 -1
  71. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.md +10 -1
  72. data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +2 -0
  73. data/lib/playbook/version.rb +1 -1
  74. metadata +41 -20
  75. data/app/pb_kits/playbook/pb_selectable_list/_item.jsx +0 -90
  76. data/app/pb_kits/playbook/pb_selectable_list/_selectable_list.html.erb +0 -11
  77. data/app/pb_kits/playbook/pb_selectable_list/_selectable_list.jsx +0 -47
  78. data/app/pb_kits/playbook/pb_selectable_list/_selectable_list.scss +0 -17
  79. data/app/pb_kits/playbook/pb_selectable_list/_selectable_list_item.html.erb +0 -18
  80. data/app/pb_kits/playbook/pb_selectable_list/docs/_description.md +0 -3
  81. data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_checkbox.html.erb +0 -44
  82. data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_checkbox.jsx +0 -44
  83. data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_radio.html.erb +0 -44
  84. data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_radio.jsx +0 -44
  85. data/app/pb_kits/playbook/pb_selectable_list/docs/example.yml +0 -12
  86. data/app/pb_kits/playbook/pb_selectable_list/docs/index.js +0 -2
  87. data/app/pb_kits/playbook/pb_selectable_list/selectable_list.rb +0 -24
  88. data/app/pb_kits/playbook/pb_selectable_list/selectable_list_item.rb +0 -28
@@ -1,28 +1,59 @@
1
1
  import React from 'react'
2
- import { Date } from '../../'
2
+ import { Date as FormattedDate } from '../../'
3
3
 
4
- const DateDefault = () => {
4
+ const DateDefault = (props) => {
5
5
  return (
6
- <div>
7
- <Date
8
- size="lg"
9
- value="1995-12-25"
6
+ <>
7
+ <FormattedDate
8
+ size="sm"
9
+ value={new Date()}
10
+ {...props}
10
11
  />
11
12
 
12
13
  <br />
13
14
 
14
- <Date
15
- value="17 Mar 69"
15
+ <FormattedDate
16
+ size="sm"
17
+ value="2012-08-03"
18
+ {...props}
16
19
  />
17
20
 
18
21
  <br />
19
22
 
20
- <Date
21
- size="xs"
22
- value="2020-04-20T04:20:00.000Z"
23
+ <FormattedDate
24
+ showDayOfWeek
25
+ size="sm"
26
+ value="2017-12-03"
27
+ {...props}
23
28
  />
24
- </div>
29
+
30
+ <br />
31
+ <br />
32
+
33
+ <FormattedDate
34
+ value={new Date()}
35
+ {...props}
36
+ />
37
+
38
+ <br />
39
+
40
+ <FormattedDate
41
+ value="2012-08-03"
42
+ {...props}
43
+ />
44
+
45
+ <br />
46
+
47
+ <FormattedDate
48
+ showDayOfWeek
49
+ value="2017-12-03"
50
+ {...props}
51
+ />
52
+ </>
25
53
  )
26
54
  }
27
55
 
28
56
  export default DateDefault
57
+
58
+ // *Development Note* - We are reviewing this kit for a potential name change due to naming collisions when `new Date()` is used.
59
+ // To avoid this bug, please use name spacing as shown in the code examples. ie `import { Date as AliasedComponentName } from '../../'
@@ -0,0 +1,27 @@
1
+ <div>
2
+ <%= pb_rails("date", props: {
3
+ date: DateTime.now,
4
+ }) %>
5
+
6
+ <br>
7
+
8
+ <%= pb_rails("date", props: {
9
+ date: DateTime.now,
10
+ show_icon: true
11
+ }) %>
12
+
13
+ <br>
14
+
15
+ <%= pb_rails("date", props: {
16
+ date: DateTime.now,
17
+ show_day_of_week: true
18
+ }) %>
19
+
20
+ <br>
21
+
22
+ <%= pb_rails("date", props: {
23
+ date: DateTime.now,
24
+ show_icon: true,
25
+ show_day_of_week: true
26
+ }) %>
27
+ </div>
@@ -0,0 +1,43 @@
1
+ import React from 'react'
2
+ import { Date as FormattedDate } from '../..'
3
+
4
+ const DateVariants = (props) => {
5
+ return (
6
+ <div>
7
+ <FormattedDate
8
+ value="1995-12-25"
9
+ {...props}
10
+ />
11
+
12
+ <br />
13
+ <br />
14
+
15
+ <FormattedDate
16
+ showIcon
17
+ value="1995-12-25"
18
+ {...props}
19
+ />
20
+
21
+ <br />
22
+ <br />
23
+
24
+ <FormattedDate
25
+ showDayOfWeek
26
+ value="1995-12-25"
27
+ {...props}
28
+ />
29
+
30
+ <br />
31
+ <br />
32
+
33
+ <FormattedDate
34
+ showDayOfWeek
35
+ showIcon
36
+ value="1995-12-25"
37
+ {...props}
38
+ />
39
+ </div>
40
+ )
41
+ }
42
+
43
+ export default DateVariants
@@ -2,9 +2,13 @@ examples:
2
2
 
3
3
  rails:
4
4
  - date_default: Default
5
+ - date_variants: Variants
6
+ - date_alignment: Alignment
5
7
  - date_timezone: Timezones
6
8
 
7
9
 
8
10
  react:
9
11
  - date_default: Default
12
+ - date_variants: Variants
13
+ - date_alignment: Alignment
10
14
 
@@ -1 +1,3 @@
1
1
  export { default as DateDefault } from './_date_default.jsx'
2
+ export { default as DateVariants } from './_date_variants.jsx'
3
+ export { default as DateAlignment } from './_date_alignment.jsx'
@@ -3,20 +3,25 @@
3
3
  class: object.classname + object.error_class,
4
4
  data: object.data,
5
5
  id: object.id) do %>
6
- <div class="input_wrapper">
7
- <%= pb_rails("text_input", props: {
8
- aria: object.input_aria,
9
- autocomplete: false,
10
- dark: object.dark,
11
- data: object.input_data,
12
- disabled: object.disable_input,
13
- error: object.error,
14
- id: object.picker_id,
15
- label: object.hide_label ? nil : object.label,
16
- name: object.name,
17
- placeholder: object.placeholder,
18
- required: object.required
19
- }) %>
6
+ <% if object.children %>
7
+ <div class="input_wrapper">
8
+ <%= capture(&object.children) %>
9
+ <% else %>
10
+ <div class="input_wrapper">
11
+ <%= pb_rails("text_input", props: {
12
+ aria: object.input_aria,
13
+ autocomplete: false,
14
+ dark: object.dark,
15
+ data: object.input_data,
16
+ disabled: object.disable_input,
17
+ error: object.error,
18
+ id: object.picker_id,
19
+ label: object.hide_label ? nil : object.label,
20
+ name: object.name,
21
+ placeholder: object.placeholder,
22
+ required: object.required,
23
+ }) %>
24
+ <% end %>
20
25
  <% if !object.hide_icon %>
21
26
  <div
22
27
  class="<%= object.icon_wrapper_class %>"
@@ -0,0 +1,31 @@
1
+ <%= content_tag(:div,
2
+ aria: object.aria,
3
+ id: object.id,
4
+ data: object.data,
5
+ class: object.classname) do %>
6
+
7
+ <%= pb_rails("flex", props: {
8
+ orientation: "row",
9
+ horizontal: object.align,
10
+ vertical: "baseline" }) do %>
11
+
12
+ <%= pb_rails("date", props: {
13
+ dark: object.dark,
14
+ date: object.date,
15
+ show_day_of_week: object.show_day_of_week,
16
+ size: object.size,
17
+ timezone: object.timezone,
18
+ }) %>
19
+
20
+ <%= pb_rails("time", props: {
21
+ margin_left: "sm",
22
+ show_icon: object.show_icon,
23
+ size: object.size,
24
+ tag: "caption",
25
+ time: object.date,
26
+ timezone: object.timezone,
27
+ }) %>
28
+
29
+ <% end %>
30
+
31
+ <% end %>
@@ -0,0 +1,73 @@
1
+ /* @flow */
2
+
3
+ import React from 'react'
4
+ import classnames from 'classnames'
5
+ import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
6
+ import { globalProps } from '../utilities/globalProps.js'
7
+ import { Flex, Date as FormattedDate, Time } from '../'
8
+
9
+ type DateTimeProps = {
10
+ align?: "left" | "center" | "right",
11
+ aria?: object,
12
+ className?: string,
13
+ data?: object,
14
+ datetime: string,
15
+ id?: string,
16
+ size?: "sm" | "md",
17
+ showDayOfWeek: boolean,
18
+ showIcon?: boolean,
19
+ timeZone?: string
20
+ }
21
+
22
+ const DateTime = (props: DateTimeProps) => {
23
+ const {
24
+ align = 'left',
25
+ aria = {},
26
+ className,
27
+ data = {},
28
+ showDayOfWeek = false,
29
+ datetime,
30
+ id,
31
+ showIcon = false,
32
+ size = 'md',
33
+ timeZone = 'America/New_York',
34
+ } = props
35
+
36
+ const ariaProps = buildAriaProps(aria)
37
+ const dataProps = buildDataProps(data)
38
+ const classes = classnames(
39
+ buildCss('pb_date_time', size),
40
+ globalProps(props),
41
+ className
42
+ )
43
+
44
+ return (
45
+ <div
46
+ {...ariaProps}
47
+ {...dataProps}
48
+ className={classes}
49
+ id={id}
50
+ >
51
+ <Flex
52
+ horizontal={align}
53
+ vertical="baseline"
54
+ >
55
+ <FormattedDate
56
+ datetime={datetime}
57
+ showDayOfWeek={showDayOfWeek}
58
+ size={size}
59
+ timeZone={timeZone}
60
+ />
61
+ <Time
62
+ date={new Date()}
63
+ marginLeft="sm"
64
+ showIcon={showIcon}
65
+ size={size}
66
+ timeZone={timeZone}
67
+ />
68
+ </Flex>
69
+ </div>
70
+ )
71
+ }
72
+
73
+ export default DateTime
@@ -0,0 +1,26 @@
1
+ [class^=pb_date_time] {
2
+ [class*=pb_date_kit] > div:last-child {
3
+ margin-right: 0 !important;
4
+ }
5
+ &[class*=_center] {
6
+ display: flex;
7
+ justify-content: center;
8
+ text-align: center;
9
+ }
10
+ &[class*=_right] {
11
+ display: flex;
12
+ justify-content: flex-end;
13
+ text-align: right;
14
+ }
15
+ &[class*=dark] {
16
+ [class^=pb_title_kit] {
17
+ color: $text_dk_default !important;
18
+ }
19
+ & * {
20
+ @include caption_dark;
21
+ }
22
+ .pb_time {
23
+ color: $text_dk_default;
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Playbook
4
+ module PbDateTime
5
+ class DateTime
6
+ include Playbook::Props
7
+
8
+ partial "pb_date_time/date_time"
9
+
10
+ prop :date, type: Playbook::Props::Date,
11
+ default: ::DateTime.current
12
+ prop :align, type: Playbook::Props::Enum,
13
+ values: %w[left center right],
14
+ default: "left"
15
+ prop :timezone, type: Playbook::Props::String,
16
+ default: "America/New_York"
17
+ prop :size, type: Playbook::Props::Enum,
18
+ values: %w[sm md],
19
+ default: "md"
20
+ prop :dark, type: Playbook::Props::Boolean, default: false
21
+ prop :show_icon, type: Playbook::Props::Boolean, default: false
22
+ prop :show_day_of_week, type: Playbook::Props::Boolean, default: false
23
+
24
+ def classname
25
+ generate_classname("pb_date_time_kit", align)
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,17 @@
1
+ <%= pb_rails("date_time", props: {
2
+ date: DateTime.now
3
+ }) %>
4
+
5
+ <br />
6
+
7
+ <%= pb_rails("date_time", props: {
8
+ date: DateTime.now,
9
+ align:"center"
10
+ }) %>
11
+
12
+ <br />
13
+
14
+ <%= pb_rails("date_time", props: {
15
+ date: DateTime.now,
16
+ align:"right"
17
+ }) %>
@@ -0,0 +1,35 @@
1
+ import React from 'react'
2
+ import DateTime from '../_date_time.jsx'
3
+
4
+ const DateTimeAlign = (props) => (
5
+ <div>
6
+ <DateTime
7
+ datetime={new Date()}
8
+ dayOfWeek
9
+ icon
10
+ {...props}
11
+ />
12
+
13
+ <br />
14
+
15
+ <DateTime
16
+ align="center"
17
+ datetime={new Date()}
18
+ dayOfWeek
19
+ icon
20
+ {...props}
21
+ />
22
+
23
+ <br />
24
+
25
+ <DateTime
26
+ align="right"
27
+ datetime={new Date()}
28
+ dayOfWeek
29
+ icon
30
+ {...props}
31
+ />
32
+ </div>
33
+ )
34
+
35
+ export default DateTimeAlign
@@ -0,0 +1,20 @@
1
+ <%= pb_rails("date_time", props: {
2
+ date: DateTime.now,
3
+ show_icon: true,
4
+ show_day_of_week: true
5
+ }) %>
6
+ <br />
7
+ <%= pb_rails("date_time", props: {
8
+ date: DateTime.now,
9
+ show_day_of_week: true
10
+ }) %>
11
+ <br />
12
+ <%= pb_rails("date_time", props: {
13
+ date: DateTime.now,
14
+ show_icon: true
15
+ }) %>
16
+ <br />
17
+ <%= pb_rails("date_time", props: {
18
+ date: DateTime.now,
19
+ timezone: "Asia/Tokyo"
20
+ }) %>
@@ -0,0 +1,38 @@
1
+ import React from 'react'
2
+ import DateTime from '../_date_time.jsx'
3
+
4
+ const DateTimeDefault = (props) => (
5
+ <div>
6
+ <DateTime
7
+ datetime={new Date()}
8
+ showDayOfWeek
9
+ showIcon
10
+ {...props}
11
+ />
12
+
13
+ <br />
14
+
15
+ <DateTime
16
+ datetime={new Date()}
17
+ showDayOfWeek
18
+ {...props}
19
+ />
20
+
21
+ <br />
22
+
23
+ <DateTime
24
+ datetime={new Date()}
25
+ showIcon
26
+ {...props}
27
+ />
28
+
29
+ <br />
30
+
31
+ <DateTime
32
+ datetime={new Date()}
33
+ {...props}
34
+ />
35
+ </div>
36
+ )
37
+
38
+ export default DateTimeDefault