playbook_ui 13.3.0 → 13.4.0.pre.alpha.play961turnoffdeprecationwarnings1171

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +1 -0
  3. data/app/pb_kits/playbook/pb_body/_body.tsx +1 -1
  4. data/app/pb_kits/playbook/pb_button/button.html.erb +2 -2
  5. data/app/pb_kits/playbook/pb_button/button.rb +3 -0
  6. data/app/pb_kits/playbook/pb_caption/_caption.tsx +1 -1
  7. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleMain.tsx +5 -1
  8. data/app/pb_kits/playbook/pb_date_picker/_date_picker.tsx +1 -1
  9. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.tsx +1 -1
  10. data/app/pb_kits/playbook/pb_kit/dateTime.ts +54 -23
  11. data/app/pb_kits/playbook/pb_table/docs/_table_two_actions.jsx +3 -3
  12. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.tsx +1 -1
  13. data/app/pb_kits/playbook/pb_timestamp/_timestamp.tsx +14 -7
  14. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.html.erb +21 -0
  15. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.jsx +36 -0
  16. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.md +1 -0
  17. data/app/pb_kits/playbook/pb_timestamp/docs/example.yml +3 -1
  18. data/app/pb_kits/playbook/pb_timestamp/docs/index.js +1 -0
  19. data/app/pb_kits/playbook/pb_timestamp/timestamp.html.erb +5 -1
  20. data/app/pb_kits/playbook/pb_timestamp/timestamp.rb +3 -1
  21. data/app/pb_kits/playbook/pb_title/_title.scss +3 -4
  22. data/app/pb_kits/playbook/pb_title/_title.tsx +1 -1
  23. data/app/pb_kits/playbook/tokens/_spacing.scss +1 -1
  24. data/app/pb_kits/playbook/tokens/_text_align.scss +18 -0
  25. data/app/pb_kits/playbook/utilities/_hover.scss +4 -0
  26. data/app/pb_kits/playbook/utilities/_max_width.scss +4 -0
  27. data/app/pb_kits/playbook/utilities/_spacing.scss +92 -49
  28. data/app/pb_kits/playbook/utilities/_text_align.scss +3 -0
  29. data/app/pb_kits/playbook/utilities/globalProps.ts +37 -9
  30. data/dist/playbook-rails.js +5 -5
  31. data/lib/playbook/classnames.rb +1 -0
  32. data/lib/playbook/hover.rb +6 -2
  33. data/lib/playbook/kit_base.rb +2 -0
  34. data/lib/playbook/props/base.rb +1 -1
  35. data/lib/playbook/spacing.rb +13 -4
  36. data/lib/playbook/text_align.rb +37 -0
  37. data/lib/playbook/version.rb +2 -2
  38. metadata +13 -7
@@ -62,6 +62,7 @@ type FlexWrap = {
62
62
 
63
63
  type Hover = Shadow & {
64
64
  background?: string,
65
+ color?: string,
65
66
  scale?: "sm" | "md" | "lg"
66
67
  }
67
68
 
@@ -85,6 +86,8 @@ type Margin = {
85
86
  marginX?: AllSizes,
86
87
  marginY?: AllSizes,
87
88
  margin?: AllSizes,
89
+ break?: string,
90
+ default?: string
88
91
  }
89
92
 
90
93
  type MaxWidth = {
@@ -107,6 +110,8 @@ type Padding = {
107
110
  paddingX?: AllSizes,
108
111
  paddingY?: AllSizes,
109
112
  padding?: AllSizes,
113
+ break?: string,
114
+ default?: string
110
115
  }
111
116
 
112
117
  type Position = {
@@ -119,6 +124,10 @@ type Shadow = {
119
124
 
120
125
  type Space = "spaceBetween" | "spaceAround" | "spaceEvenly"
121
126
 
127
+ type TextAlign = {
128
+ textAlign?: "start" | "end" | "left" | "right" | "center" | "justify" | "justifyAll" | "matchParent",
129
+ }
130
+
122
131
  type ZIndexType = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
123
132
  type ZIndexResponsiveType = {[key: string]: ZIndexType}
124
133
  type ZIndex = {
@@ -130,7 +139,7 @@ export type GlobalProps = AlignContent & AlignItems & AlignSelf &
130
139
  BorderRadius & Cursor & Dark & Display & DisplaySizes & Flex & FlexDirection &
131
140
  FlexGrow & FlexShrink & FlexWrap & JustifyContent & JustifySelf &
132
141
  LineHeight & Margin & MaxWidth & NumberSpacing & Order & Padding &
133
- Position & Shadow & ZIndex & { hover?: string };
142
+ Position & Shadow & TextAlign & ZIndex & { hover?: string };
134
143
 
135
144
  const getResponsivePropClasses = (prop: {[key: string]: string}, classPrefix: string) => {
136
145
  const keys: string[] = Object.keys(prop)
@@ -149,6 +158,7 @@ const PROP_CATEGORIES: {[key:string]: (props: {[key: string]: any}) => string} =
149
158
  css += hover.shadow ? `hover_shadow_${hover.shadow} ` : '';
150
159
  css += hover.background ? `hover_background_${hover.background } ` : '';
151
160
  css += hover.scale ? `hover_scale_${hover.scale} ` : '';
161
+ css += hover.color ? `hover_color_${hover.color } ` : '';
152
162
  return css;
153
163
  },
154
164
 
@@ -186,13 +196,24 @@ const PROP_CATEGORIES: {[key:string]: (props: {[key: string]: any}) => string} =
186
196
  padding,
187
197
  };
188
198
 
199
+ const screenSizeValues = ["xs", "sm", "md", "lg", "xl"]
200
+
189
201
  function handleObjectValue(properties: Margin | Padding, prefix: string) {
190
202
  let classResult = '';
191
203
 
204
+ const breakValue = properties.break || "on";
205
+ const defaultValue = properties.default || null;
206
+
192
207
  Object.entries(properties).forEach(([key, value]) => {
193
- classResult += `${prefix}_${key}_${value} `;
208
+ if (screenSizeValues.includes(key)) {
209
+ classResult += `break_${breakValue}_${key}:${prefix}_${value} `;
210
+ }
194
211
  });
195
212
 
213
+ if (defaultValue) {
214
+ classResult += `${prefix}_${defaultValue} `;
215
+ }
216
+
196
217
  return classResult;
197
218
  }
198
219
 
@@ -377,6 +398,13 @@ const PROP_CATEGORIES: {[key:string]: (props: {[key: string]: any}) => string} =
377
398
  css += position && position !== 'static' ? `position_${position}` : ''
378
399
  return css
379
400
  },
401
+ textAlignProps: ({ textAlign }: TextAlign) => {
402
+ if (typeof textAlign === 'object') {
403
+ return getResponsivePropClasses(textAlign, 'text_align')
404
+ } else {
405
+ return textAlign ? `text_align_${textAlign} ` : ''
406
+ }
407
+ }
380
408
  }
381
409
 
382
410
  type DefaultProps = {[key: string]: string} | Record<string, unknown>
@@ -389,13 +417,13 @@ export const globalProps = (props: GlobalProps, defaultProps: DefaultProps = {})
389
417
  }
390
418
 
391
419
 
392
- export const deprecatedProps = (kit: string, props: string[] = []): void => {
393
- if (process.env.NODE_ENV === 'development') {
394
- /* eslint no-console: ["error", { allow: ["warn", "error"] }] */
395
- props.forEach((prop) => {
396
- console.warn(`${kit} Kit: The prop '${prop}' is deprecated and will be removed in a future release!`)
397
- })
398
- }
420
+ export const deprecatedProps = (): void => {
421
+ // if (process.env.NODE_ENV === 'development') {
422
+ // /* eslint no-console: ["error", { allow: ["warn", "error"] }] */
423
+ // props.forEach((prop) => {
424
+ // console.warn(`${kit} Kit: The prop '${prop}' is deprecated and will be removed in a future release!`)
425
+ // })
426
+ // }
399
427
  }
400
428
 
401
429
  export const domSafeProps = (props: {[key: string]: string}): {[key: string]: string} => {