playbook_ui 10.27.0.pre.lazysizes1 → 11.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_background/_background.scss +8 -1
  3. data/app/pb_kits/playbook/pb_background/_background.tsx +9 -1
  4. data/app/pb_kits/playbook/pb_background/background.rb +76 -16
  5. data/app/pb_kits/playbook/pb_background/docs/_background_status.html.erb +14 -2
  6. data/app/pb_kits/playbook/pb_background/docs/_background_status.jsx +43 -2
  7. data/app/pb_kits/playbook/pb_background/docs/_background_status.md +1 -1
  8. data/app/pb_kits/playbook/pb_badge/_badge.tsx +1 -2
  9. data/app/pb_kits/playbook/pb_body/_body.scss +4 -4
  10. data/app/pb_kits/playbook/pb_body/_body.tsx +5 -4
  11. data/app/pb_kits/playbook/pb_body/_body_mixins.scss +7 -3
  12. data/app/pb_kits/playbook/pb_body/body.rb +4 -3
  13. data/app/pb_kits/playbook/pb_body/body.test.js +12 -9
  14. data/app/pb_kits/playbook/pb_body/docs/_body_light.html.erb +4 -4
  15. data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +4 -4
  16. data/app/pb_kits/playbook/pb_body/docs/_description.md +2 -2
  17. data/app/pb_kits/playbook/pb_body/docs/_footer.md +1 -1
  18. data/app/pb_kits/playbook/pb_button/button.rb +5 -5
  19. data/app/pb_kits/playbook/pb_caption/_caption.tsx +1 -1
  20. data/app/pb_kits/playbook/pb_caption/_caption_mixin.scss +3 -1
  21. data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.html.erb +2 -1
  22. data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.jsx +5 -0
  23. data/app/pb_kits/playbook/pb_card/_card.tsx +5 -5
  24. data/app/pb_kits/playbook/pb_checkbox/{_checkbox.jsx → _checkbox.tsx} +33 -29
  25. data/app/pb_kits/playbook/pb_date_picker/_date_picker.jsx +30 -18
  26. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +3 -0
  27. data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +12 -1
  28. data/app/pb_kits/playbook/pb_date_picker/date_picker.test.js +160 -0
  29. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.js +37 -11
  30. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.html.erb +1 -1
  31. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.html.erb +2 -2
  32. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.jsx +1 -1
  33. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.md +1 -1
  34. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_time.html.erb +6 -0
  35. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_time.jsx +21 -0
  36. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_time.md +1 -0
  37. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_week.html.erb +5 -0
  38. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_week.jsx +18 -0
  39. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_week.md +1 -0
  40. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +4 -0
  41. data/app/pb_kits/playbook/pb_date_picker/docs/index.js +2 -0
  42. data/app/pb_kits/playbook/pb_date_picker/plugins/timeSelect.js +137 -0
  43. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_day_styles.scss +27 -2
  44. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_flatpickr_styles.scss +1 -5
  45. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_time_selection_styles.scss +63 -0
  46. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_week_styles.scss +127 -0
  47. data/app/pb_kits/playbook/pb_dialog/_dialog.jsx +60 -14
  48. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_default.jsx +1 -1
  49. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_stacked_alert.jsx +153 -0
  50. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_stacked_alert.md +1 -0
  51. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status.jsx +130 -0
  52. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status.md +1 -0
  53. data/app/pb_kits/playbook/pb_dialog/docs/example.yml +2 -0
  54. data/app/pb_kits/playbook/pb_dialog/docs/index.js +2 -0
  55. data/app/pb_kits/playbook/pb_form/form.rb +1 -1
  56. data/app/pb_kits/playbook/pb_form_pill/{_form_pill.jsx → _form_pill.tsx} +16 -12
  57. data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_example.jsx +1 -1
  58. data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_size.jsx +1 -1
  59. data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_tag.jsx +1 -1
  60. data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_user.jsx +1 -1
  61. data/app/pb_kits/playbook/pb_hashtag/{_hashtag.jsx → _hashtag.tsx} +3 -4
  62. data/app/pb_kits/playbook/pb_image/_image.scss +4 -9
  63. data/app/pb_kits/playbook/pb_image/_image.tsx +10 -14
  64. data/app/pb_kits/playbook/pb_radio/_radio.tsx +86 -0
  65. data/app/pb_kits/playbook/pb_select/{_select.jsx → _select.tsx} +34 -38
  66. data/app/pb_kits/playbook/pb_text_input/{_text_input.jsx → _text_input.tsx} +42 -43
  67. data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +6 -3
  68. data/app/pb_kits/playbook/playbook-rails.js +0 -1
  69. data/app/pb_kits/playbook/tokens/_colors.scss +17 -1
  70. data/app/pb_kits/playbook/utilities/props.ts +2 -2
  71. data/dist/reset.css +1 -60
  72. data/lib/playbook/props.rb +1 -1
  73. data/lib/playbook/version.rb +1 -1
  74. metadata +27 -13
  75. data/app/pb_kits/playbook/pb_radio/_radio.jsx +0 -78
@@ -1,10 +1,8 @@
1
- /* @flow */
2
-
3
1
  import React, { forwardRef } from 'react'
4
2
  import classnames from 'classnames'
5
3
 
6
4
  import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
7
- import { globalProps, domSafeProps } from '../utilities/globalProps'
5
+ import { globalProps, GlobalProps, domSafeProps } from '../utilities/globalProps'
8
6
  import type { InputCallback } from '../types'
9
7
 
10
8
  import Body from '../pb_body/_body'
@@ -18,16 +16,14 @@ type SelectOption = {
18
16
  }
19
17
 
20
18
  type SelectProps = {
21
- aria?: object,
19
+ aria?: { [key: string]: string },
22
20
  blankSelection?: string,
23
- children?: React.Node,
24
- compact?: boolean,
21
+ children?: Node,
25
22
  className?: string,
26
- data?: object,
23
+ compact?: boolean,
24
+ data?: { [key: string]: string },
27
25
  disabled?: boolean,
28
26
  error?: string,
29
- onChange: InputCallback<HTMLSelectElement>,
30
- options: SelectOption[],
31
27
  id?: string,
32
28
  includeBlank?: string,
33
29
  inline?: boolean,
@@ -36,9 +32,11 @@ type SelectProps = {
36
32
  marginBottom: string,
37
33
  multiple?: boolean,
38
34
  name?: string,
35
+ onChange: InputCallback<HTMLSelectElement>,
36
+ options: SelectOption[],
39
37
  required?: boolean,
40
38
  value?: string,
41
- }
39
+ } & GlobalProps
42
40
 
43
41
  const createOptions = (options: SelectOption[]) => options.map((option, index) => (
44
42
  <option
@@ -68,7 +66,7 @@ const Select = ({
68
66
  required = false,
69
67
  value,
70
68
  ...props
71
- }: SelectProps, ref: React.ElementRef<"select">) => {
69
+ }: SelectProps, ref: React.LegacyRef<HTMLSelectElement>) => {
72
70
  const ariaProps = buildAriaProps(aria)
73
71
  const dataProps = buildDataProps(data)
74
72
  const optionsList = createOptions(options)
@@ -87,6 +85,25 @@ const Select = ({
87
85
  )
88
86
 
89
87
  const selectWrapperClass = classnames(buildCss('pb_select_kit_wrapper'), { error }, className)
88
+ const selectBody =(() =>{
89
+ if (children) return children
90
+ return (
91
+ <select
92
+ {...domSafeProps(props)}
93
+ disabled={disabled}
94
+ id={name}
95
+ multiple={multiple}
96
+ name={name}
97
+ onChange={onChange}
98
+ ref={ref}
99
+ required={required}
100
+ value={value}
101
+ >
102
+ {blankSelection && <option value="">{blankSelection}</option>}
103
+ {optionsList}
104
+ </select>
105
+ )
106
+ })()
90
107
 
91
108
  return (
92
109
  <div
@@ -94,51 +111,30 @@ const Select = ({
94
111
  {...dataProps}
95
112
  className={classes}
96
113
  >
97
- <If condition={label}>
114
+ {label &&
98
115
  <label
99
116
  className="pb_select_kit_label"
100
117
  htmlFor={name}
101
118
  >
102
- <Caption
103
- text={label}
104
- />
119
+ <Caption text={label} />
105
120
  </label>
106
- </If>
121
+ }
107
122
  <label
108
123
  className={selectWrapperClass}
109
124
  htmlFor={name}
110
125
  >
111
- <If condition={children}>
112
- {children}
113
- <Else />
114
- <select
115
- {...domSafeProps(props)}
116
- disabled={disabled}
117
- id={name}
118
- multiple={multiple}
119
- name={name}
120
- onChange={onChange}
121
- ref={ref}
122
- required={required}
123
- value={value}
124
- >
125
- <If condition={blankSelection}>
126
- <option value="">{blankSelection}</option>
127
- </If>
128
- {optionsList}
129
- </select>
130
- </If>
126
+ {selectBody}
131
127
  <Icon
132
128
  className="pb_select_kit_caret"
133
129
  fixedWidth
134
130
  icon="angle-down"
135
131
  />
136
- <If condition={error}>
132
+ {error &&
137
133
  <Body
138
134
  status="negative"
139
135
  text={error}
140
136
  />
141
- </If>
137
+ }
142
138
  </label>
143
139
  </div>
144
140
  )
@@ -1,8 +1,7 @@
1
- /* @flow */
2
1
  import React, { forwardRef } from 'react'
3
2
  import classnames from 'classnames'
4
3
 
5
- import { globalProps, domSafeProps } from '../utilities/globalProps'
4
+ import { globalProps, GlobalProps, domSafeProps } from '../utilities/globalProps'
6
5
  import { buildAriaProps, buildDataProps } from '../utilities/props'
7
6
 
8
7
  import Flex from '../pb_flex/_flex'
@@ -12,9 +11,9 @@ import Body from '../pb_body/_body'
12
11
  import Icon from '../pb_icon/_icon'
13
12
 
14
13
  type TextInputProps = {
15
- aria?: object,
16
- className: string,
17
- data?: object,
14
+ aria?: { [key: string]: string },
15
+ className?: string,
16
+ data?: { [key: string]: string },
18
17
  dark?: boolean,
19
18
  disabled?: boolean,
20
19
  error?: string,
@@ -22,7 +21,7 @@ type TextInputProps = {
22
21
  inline?: boolean,
23
22
  name: string,
24
23
  label: string,
25
- onChange: (String) => void,
24
+ onChange: (e: React.FormEvent<HTMLInputElement>) => void,
26
25
  placeholder: string,
27
26
  required?: boolean,
28
27
  type: string,
@@ -33,9 +32,9 @@ type TextInputProps = {
33
32
  alignment?: "right" | "left",
34
33
  border?: boolean,
35
34
  },
36
- }
35
+ } & GlobalProps
37
36
 
38
- const TextInput = (props: TextInputProps, ref: React.ElementRef<"input">) => {
37
+ const TextInput = (props: TextInputProps, ref: React.LegacyRef<HTMLInputElement>) => {
39
38
  const {
40
39
  addOn = { icon: null, alignment: 'right', border: true },
41
40
  aria = {},
@@ -48,7 +47,7 @@ const TextInput = (props: TextInputProps, ref: React.ElementRef<"input">) => {
48
47
  inline = false,
49
48
  name,
50
49
  label,
51
- onChange = () => {},
50
+ onChange = () => { void 0 },
52
51
  placeholder,
53
52
  required,
54
53
  type = 'text',
@@ -104,34 +103,38 @@ const TextInput = (props: TextInputProps, ref: React.ElementRef<"input">) => {
104
103
  <React.Fragment>
105
104
  <Flex
106
105
  className={`add-on-${addOnAlignment} ${borderCss}`}
107
- inline="flex-container"
106
+ inline
108
107
  vertical="center"
109
108
  >
110
- <If condition={addOnAlignment == 'left'}>
111
- <>
112
- <Card
113
- className={`${addOnDarkModeCardCss} add-on-card card-left-aligned`}
114
- dark={dark}
115
- >
116
- {addOnIcon}
117
- </Card>
118
- {textInput}
119
- </>
120
- <Else />
121
- <>
122
- {textInput}
123
- <Card
124
- className={`${addOnDarkModeCardCss} add-on-card card-right-aligned`}
125
- dark={dark}
126
- >
127
- {addOnIcon}
128
- </Card>
129
- </>
130
- </If>
109
+ {addOnAlignment == 'left' && <>
110
+ <Card
111
+ className={`${addOnDarkModeCardCss} add-on-card card-left-aligned`}
112
+ dark={dark}
113
+ >
114
+ {addOnIcon}
115
+ </Card>
116
+ {textInput}
117
+ </> }
118
+ {addOnAlignment != 'left' && <>
119
+ {textInput}
120
+ <Card
121
+ className={`${addOnDarkModeCardCss} add-on-card card-right-aligned`}
122
+ dark={dark}
123
+ >
124
+ {addOnIcon}
125
+ </Card>
126
+ </> }
131
127
  </Flex>
132
128
  </React.Fragment>
133
129
  )
134
130
 
131
+ const render = (() => {
132
+ if(children) return children
133
+ if (shouldShowAddOn) return addOnInput
134
+
135
+ return textInput
136
+ })()
137
+
135
138
  return (
136
139
  <div
137
140
  {...ariaProps}
@@ -140,21 +143,17 @@ const TextInput = (props: TextInputProps, ref: React.ElementRef<"input">) => {
140
143
  >
141
144
  <Caption
142
145
  className="pb_text_input_kit_label"
143
- dark={dark}
144
146
  text={label}
145
147
  />
146
148
  <div className={`${addOnCss} text_input_wrapper`}>
147
- <Choose>
148
- <When condition={children}>{children}</When>
149
- <When condition={shouldShowAddOn}>{addOnInput}</When>
150
- <Otherwise>{textInput}</Otherwise>
151
- </Choose>
152
- <If condition={error}>
153
- <Body
154
- status="negative"
155
- text={error}
156
- />
157
- </If>
149
+ {render}
150
+
151
+ {error && <Body
152
+ status="negative"
153
+ text={error}
154
+ variant={null}
155
+ />
156
+ }
158
157
  </div>
159
158
  </div>
160
159
  )
@@ -60,9 +60,12 @@ module Playbook
60
60
  plusIcon: plus_icon,
61
61
  }
62
62
 
63
- base_options.merge!({ getOptionLabel: get_option_label }) if get_option_label.present?
64
- base_options.merge!({ getOptionValue: get_option_value }) if get_option_value.present?
65
- base_options.merge!({ async: true, loadOptions: load_options }) if async
63
+ base_options[:getOptionLabel] = get_option_label if get_option_label.present?
64
+ base_options[:getOptionValue] = get_option_value if get_option_value.present?
65
+ if async
66
+ base_options[:async] = true
67
+ base_options[:loadOptions] = load_options
68
+ end
66
69
  base_options
67
70
  end
68
71
  end
@@ -11,7 +11,6 @@ window.datePickerHelper = datePickerHelper
11
11
 
12
12
  // Lazy image loading
13
13
  import 'lazysizes'
14
- import 'lazysizes/plugins/blur-up/ls.blur-up'
15
14
 
16
15
  import PbCollapsible from './pb_collapsible'
17
16
  PbCollapsible.start()
@@ -153,21 +153,37 @@ $data_colors: (
153
153
 
154
154
  /* Status colors ----------------------*/
155
155
  $success: $green;
156
+ $success_secondary: lighten($success, 10%);
156
157
  $warning: $yellow;
158
+ $warning_secondary: lighten($warning, 10%);
157
159
  $error: $red;
158
160
  $error_dark: $red_dark;
159
161
  $error_dark_body: lighten($error_dark, 2%);
162
+ $error_secondary: lighten($error, 10%);
160
163
  $info: $teal;
164
+ $info_secondary : lighten($info, 10%);
161
165
  $neutral: $slate;
166
+ $neutral_secondary: lighten($neutral, 10%);
167
+ $primary: $primary;
168
+ $primary_secondary: lighten($primary, 10%);
169
+
162
170
  $status_colors: (
163
171
  success: $success,
172
+ success_secondary: $success_secondary,
164
173
  warning: $warning,
174
+ warning_secondary: $warning_secondary,
165
175
  error: $error,
176
+ error_secondary: $error_secondary,
166
177
  info: $info,
178
+ info_secondary: $info_secondary,
167
179
  neutral: $neutral,
168
- primary: $primary
180
+ neutral_secondary: $neutral_secondary,
181
+ primary: $primary,
182
+ primary_secondary: $primary_secondary
169
183
  );
170
184
 
185
+
186
+
171
187
  $status_color_text: (
172
188
  success: $success,
173
189
  warning: darken($warning, 10%),
@@ -22,7 +22,7 @@ const buildPrefixedProps = (prefix: string, data: {[key: string]: any}) =>
22
22
  *
23
23
  * @returns {() => {}} the noop function.
24
24
  */
25
- export const noop = () => {}
25
+ export const noop = (): void => { void 0 }
26
26
 
27
27
  /**
28
28
  * Maps a given aria object into HTML valid aria attribtues and their values.
@@ -47,5 +47,5 @@ export const buildDataProps = (data: {[key: string]: any}) => buildPrefixedProps
47
47
  * @param {Object} rules a 'classnames' compliant rules object, used to derive the root className.
48
48
  * @returns {String} the derived root className value.
49
49
  */
50
- export const buildCss = (...rules: string[]) => classnames(rules).replace(/\s/g, '_')
50
+ export const buildCss = (...rules: (string | { [x: string]: string; })[]): string => classnames(rules).replace(/\s/g, '_')
51
51
 
data/dist/reset.css CHANGED
@@ -1,61 +1,2 @@
1
- /* CLEAN UP AND REMOVE */
2
- /* Headings */
3
- /* Standard Font Weights */
4
- /* Non_Standard Font Weights */
5
- /*=====================================
6
- Base colors should not be documented.
7
- Only document color use.
8
-
9
- Colors -----------------------------*/
10
- /* Specialty Gradient -----------------*/
11
- /* Interface colors -------------------*/
12
- /* Main colors ------------------------*/
13
- /*=====================================
14
-
15
- Background colors ------------------*/
16
- /* Card colors ------------------*/
17
- /* Active colors ----------------------*/
18
- /* Hover colors -----------------------*/
19
- /* Focus colors -----------------------*/
20
- /* Border colors ----------------------*/
21
- /* Shadow colors ----------------------*/
22
- /* Text colors ------------------------*/
23
- /* Data colors ------------------------*/
24
- /* Status colors ----------------------*/
25
- /* Link colors ------------------------*/
26
- /* Product colors ---------------------*/
27
- /* Category colors ---------------------*/
28
- * {
29
- box-sizing: border-box;
30
- margin: 0;
31
- padding: 0; }
32
- *:before, *:after {
33
- box-sizing: border-box; }
34
-
35
- html {
36
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
37
- height: 100vh;
38
- overflow-x: hidden; }
39
-
40
- body {
41
- font-family: "Proxima Nova", "Helvetica Neue", Helvetica, Arial, sans_serif;
42
- font-size: 16px;
43
- line-height: 1.5;
44
- background-color: #F3F7FB;
45
- height: 100%;
46
- letter-spacing: 0;
47
- font-weight: 400;
48
- font-style: normal;
49
- text-rendering: optimizeLegibility;
50
- -moz-font-feature-settings: "liga" on;
51
- color: #242B42;
52
- margin: 0 !important;
53
- padding: 0 !important;
54
- box-sizing: border-box;
55
- min-height: 100vh;
56
- padding: 50px; }
57
-
58
- a {
59
- text-decoration: none;
60
- color: #0056CF; }
1
+ *{box-sizing:border-box;margin:0;padding:0}*:before,*:after{box-sizing:border-box}html{-webkit-tap-highlight-color:rgba(0,0,0,0);height:100vh;overflow-x:hidden}body{font-family:"Proxima Nova","Helvetica Neue",Helvetica,Arial,sans_serif;font-size:16px;line-height:1.5;background-color:#F3F7FB;height:100%;letter-spacing:0;font-weight:400;font-style:normal;text-rendering:optimizeLegibility;-moz-font-feature-settings:"liga" on;color:#242B42;margin:0 !important;padding:0 !important;box-sizing:border-box;min-height:100vh;padding:50px}a{text-decoration:none;color:#0056CF}
61
2
 
@@ -48,7 +48,7 @@ module Playbook
48
48
  end
49
49
 
50
50
  def prop(name, type: Playbook::Props::String, **options)
51
- self.props = props.merge(name => type.new(options.merge(name: name, kit: self)))
51
+ self.props = props.merge(name => type.new(**options.merge(name: name, kit: self)))
52
52
 
53
53
  define_method(name) { prop(name) }
54
54
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Playbook
4
4
  PREVIOUS_VERSION = "10.26.0"
5
- VERSION = "10.27.0.pre.lazysizes1"
5
+ VERSION = "11.0.0"
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: playbook_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.27.0.pre.lazysizes1
4
+ version: 11.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Power UX
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-05-25 00:00:00.000000000 Z
12
+ date: 2022-06-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
@@ -205,14 +205,14 @@ dependencies:
205
205
  requirements:
206
206
  - - '='
207
207
  - !ruby/object:Gem::Version
208
- version: 1.20.0
208
+ version: 1.23.0
209
209
  type: :development
210
210
  prerelease: false
211
211
  version_requirements: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - '='
214
214
  - !ruby/object:Gem::Version
215
- version: 1.20.0
215
+ version: 1.23.0
216
216
  - !ruby/object:Gem::Dependency
217
217
  name: rubocop-performance
218
218
  requirement: !ruby/object:Gem::Requirement
@@ -510,8 +510,8 @@ files:
510
510
  - app/pb_kits/playbook/pb_card/docs/_card_tag.jsx
511
511
  - app/pb_kits/playbook/pb_card/docs/example.yml
512
512
  - app/pb_kits/playbook/pb_card/docs/index.js
513
- - app/pb_kits/playbook/pb_checkbox/_checkbox.jsx
514
513
  - app/pb_kits/playbook/pb_checkbox/_checkbox.scss
514
+ - app/pb_kits/playbook/pb_checkbox/_checkbox.tsx
515
515
  - app/pb_kits/playbook/pb_checkbox/checkbox.html.erb
516
516
  - app/pb_kits/playbook/pb_checkbox/checkbox.rb
517
517
  - app/pb_kits/playbook/pb_checkbox/checkbox.test.js
@@ -648,6 +648,7 @@ files:
648
648
  - app/pb_kits/playbook/pb_date_picker/_date_picker.scss
649
649
  - app/pb_kits/playbook/pb_date_picker/date_picker.html.erb
650
650
  - app/pb_kits/playbook/pb_date_picker/date_picker.rb
651
+ - app/pb_kits/playbook/pb_date_picker/date_picker.test.js
651
652
  - app/pb_kits/playbook/pb_date_picker/date_picker_helper.js
652
653
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_anti_patterns.html.erb
653
654
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.html.erb
@@ -686,12 +687,19 @@ files:
686
687
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.md
687
688
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.html.erb
688
689
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.jsx
690
+ - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_time.html.erb
691
+ - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_time.jsx
692
+ - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_time.md
693
+ - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_week.html.erb
694
+ - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_week.jsx
695
+ - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_week.md
689
696
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_range.html.erb
690
697
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_range.jsx
691
698
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_range.md
692
699
  - app/pb_kits/playbook/pb_date_picker/docs/_description.md
693
700
  - app/pb_kits/playbook/pb_date_picker/docs/example.yml
694
701
  - app/pb_kits/playbook/pb_date_picker/docs/index.js
702
+ - app/pb_kits/playbook/pb_date_picker/plugins/timeSelect.js
695
703
  - app/pb_kits/playbook/pb_date_picker/sass_partials/_calendar_input_icon.scss
696
704
  - app/pb_kits/playbook/pb_date_picker/sass_partials/_day_styles.scss
697
705
  - app/pb_kits/playbook/pb_date_picker/sass_partials/_flatpickr_styles.scss
@@ -699,6 +707,8 @@ files:
699
707
  - app/pb_kits/playbook/pb_date_picker/sass_partials/_inline_styles.scss
700
708
  - app/pb_kits/playbook/pb_date_picker/sass_partials/_month_and_year_styles.scss
701
709
  - app/pb_kits/playbook/pb_date_picker/sass_partials/_overrides.scss
710
+ - app/pb_kits/playbook/pb_date_picker/sass_partials/_time_selection_styles.scss
711
+ - app/pb_kits/playbook/pb_date_picker/sass_partials/_week_styles.scss
702
712
  - app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.jsx
703
713
  - app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.scss
704
714
  - app/pb_kits/playbook/pb_date_range_inline/date_range_inline.html.erb
@@ -790,6 +800,10 @@ files:
790
800
  - app/pb_kits/playbook/pb_dialog/docs/_dialog_should_close_on_overlay.jsx
791
801
  - app/pb_kits/playbook/pb_dialog/docs/_dialog_should_close_on_overlay.md
792
802
  - app/pb_kits/playbook/pb_dialog/docs/_dialog_sizes.jsx
803
+ - app/pb_kits/playbook/pb_dialog/docs/_dialog_stacked_alert.jsx
804
+ - app/pb_kits/playbook/pb_dialog/docs/_dialog_stacked_alert.md
805
+ - app/pb_kits/playbook/pb_dialog/docs/_dialog_status.jsx
806
+ - app/pb_kits/playbook/pb_dialog/docs/_dialog_status.md
793
807
  - app/pb_kits/playbook/pb_dialog/docs/example.yml
794
808
  - app/pb_kits/playbook/pb_dialog/docs/index.js
795
809
  - app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.jsx
@@ -944,8 +958,8 @@ files:
944
958
  - app/pb_kits/playbook/pb_form_group/docs/index.js
945
959
  - app/pb_kits/playbook/pb_form_group/form_group.html.erb
946
960
  - app/pb_kits/playbook/pb_form_group/form_group.rb
947
- - app/pb_kits/playbook/pb_form_pill/_form_pill.jsx
948
961
  - app/pb_kits/playbook/pb_form_pill/_form_pill.scss
962
+ - app/pb_kits/playbook/pb_form_pill/_form_pill.tsx
949
963
  - app/pb_kits/playbook/pb_form_pill/docs/_form_pill_example.html.erb
950
964
  - app/pb_kits/playbook/pb_form_pill/docs/_form_pill_example.jsx
951
965
  - app/pb_kits/playbook/pb_form_pill/docs/_form_pill_example.md
@@ -987,8 +1001,8 @@ files:
987
1001
  - app/pb_kits/playbook/pb_gauge/docs/index.js
988
1002
  - app/pb_kits/playbook/pb_gauge/gauge.html.erb
989
1003
  - app/pb_kits/playbook/pb_gauge/gauge.rb
990
- - app/pb_kits/playbook/pb_hashtag/_hashtag.jsx
991
1004
  - app/pb_kits/playbook/pb_hashtag/_hashtag.scss
1005
+ - app/pb_kits/playbook/pb_hashtag/_hashtag.tsx
992
1006
  - app/pb_kits/playbook/pb_hashtag/docs/_description.md
993
1007
  - app/pb_kits/playbook/pb_hashtag/docs/_footer.md
994
1008
  - app/pb_kits/playbook/pb_hashtag/docs/_hashtag_default.html.erb
@@ -1477,8 +1491,8 @@ files:
1477
1491
  - app/pb_kits/playbook/pb_progress_step/progress_step.rb
1478
1492
  - app/pb_kits/playbook/pb_progress_step/progress_step_item.html.erb
1479
1493
  - app/pb_kits/playbook/pb_progress_step/progress_step_item.rb
1480
- - app/pb_kits/playbook/pb_radio/_radio.jsx
1481
1494
  - app/pb_kits/playbook/pb_radio/_radio.scss
1495
+ - app/pb_kits/playbook/pb_radio/_radio.tsx
1482
1496
  - app/pb_kits/playbook/pb_radio/docs/_description.md
1483
1497
  - app/pb_kits/playbook/pb_radio/docs/_footer.md
1484
1498
  - app/pb_kits/playbook/pb_radio/docs/_radio_alignment.html.erb
@@ -1542,8 +1556,8 @@ files:
1542
1556
  - app/pb_kits/playbook/pb_section_separator/docs/index.js
1543
1557
  - app/pb_kits/playbook/pb_section_separator/section_separator.html.erb
1544
1558
  - app/pb_kits/playbook/pb_section_separator/section_separator.rb
1545
- - app/pb_kits/playbook/pb_select/_select.jsx
1546
1559
  - app/pb_kits/playbook/pb_select/_select.scss
1560
+ - app/pb_kits/playbook/pb_select/_select.tsx
1547
1561
  - app/pb_kits/playbook/pb_select/docs/_description.md
1548
1562
  - app/pb_kits/playbook/pb_select/docs/_footer.md
1549
1563
  - app/pb_kits/playbook/pb_select/docs/_select_blank.html.erb
@@ -1769,8 +1783,8 @@ files:
1769
1783
  - app/pb_kits/playbook/pb_table/table.test.js
1770
1784
  - app/pb_kits/playbook/pb_table/table_row.html.erb
1771
1785
  - app/pb_kits/playbook/pb_table/table_row.rb
1772
- - app/pb_kits/playbook/pb_text_input/_text_input.jsx
1773
1786
  - app/pb_kits/playbook/pb_text_input/_text_input.scss
1787
+ - app/pb_kits/playbook/pb_text_input/_text_input.tsx
1774
1788
  - app/pb_kits/playbook/pb_text_input/add_on.html.erb
1775
1789
  - app/pb_kits/playbook/pb_text_input/add_on.rb
1776
1790
  - app/pb_kits/playbook/pb_text_input/docs/_description.md
@@ -2208,11 +2222,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
2208
2222
  version: '0'
2209
2223
  required_rubygems_version: !ruby/object:Gem::Requirement
2210
2224
  requirements:
2211
- - - ">"
2225
+ - - ">="
2212
2226
  - !ruby/object:Gem::Version
2213
- version: 1.3.1
2227
+ version: '0'
2214
2228
  requirements: []
2215
- rubygems_version: 3.1.6
2229
+ rubygems_version: 3.3.7
2216
2230
  signing_key:
2217
2231
  specification_version: 4
2218
2232
  summary: Playbook Design System
@@ -1,78 +0,0 @@
1
- /* @flow */
2
- /*eslint-disable react/no-multi-comp, flowtype/space-before-type-colon */
3
-
4
- import React, { forwardRef } from 'react'
5
- import Body from '../pb_body/_body'
6
- import classnames from 'classnames'
7
- import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
8
- import { globalProps } from '../utilities/globalProps'
9
-
10
- type RadioProps = {
11
- aria?: object,
12
- alignment?: String,
13
- checked?: Boolean,
14
- children?: Node,
15
- className?: String,
16
- dark?: boolean,
17
- data?: object,
18
- error?: Boolean,
19
- id?: String,
20
- label: String,
21
- name: String,
22
- value: String,
23
- text: String,
24
- onChange: (Boolean)=>void,
25
- }
26
-
27
- const Radio = ({
28
- aria = {},
29
- alignment = '',
30
- children,
31
- className,
32
- dark = false,
33
- data = {},
34
- error = false,
35
- id,
36
- label,
37
- name = 'radio_name',
38
- text = 'Radio Text',
39
- value = 'radio_text',
40
- onChange = () => {},
41
- ...props
42
- }: RadioProps, ref) => {
43
- const ariaProps = buildAriaProps(aria)
44
- const dataProps = buildDataProps(data)
45
- const classes = classnames(buildCss('pb_radio_kit'), { error }, { dark }, globalProps(props), alignment, className)
46
-
47
- return (
48
- <label
49
- {...ariaProps}
50
- {...dataProps}
51
- className={classes}
52
- htmlFor={id}
53
- >
54
- <If condition={children}>
55
- {children}
56
- <Else />
57
- <input
58
- {...props}
59
- id={id}
60
- name={name}
61
- onChange={onChange}
62
- ref={ref}
63
- text={text}
64
- type="radio"
65
- value={value}
66
- />
67
- </If>
68
- <span className="pb_radio_button" />
69
- <Body
70
- dark={dark}
71
- status={error ? 'negative' : null}
72
- text={label}
73
- />
74
- </label>
75
- )
76
- }
77
-
78
- export default forwardRef(Radio)