playbook_ui 4.11.0.pre.alpha.pre.2 → 4.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/playbook/pages_controller.rb +1 -1
  3. data/app/helpers/playbook/pb_doc_helper.rb +55 -7
  4. data/app/pb_kits/playbook/_playbook.scss +4 -1
  5. data/app/pb_kits/playbook/data/menu.yml +3 -0
  6. data/app/pb_kits/playbook/index.js +3 -0
  7. data/app/pb_kits/playbook/packs/examples.js +6 -0
  8. data/app/pb_kits/playbook/packs/site_styles/docs/_flex_examples.scss +8 -5
  9. data/app/pb_kits/playbook/pb_button/_button_mixins.scss +1 -0
  10. data/app/pb_kits/playbook/pb_card/_card.html.erb +2 -1
  11. data/app/pb_kits/playbook/pb_card/_card.jsx +3 -0
  12. data/app/pb_kits/playbook/pb_card/_card.scss +2 -0
  13. data/app/pb_kits/playbook/pb_card/card.rb +8 -1
  14. data/app/pb_kits/playbook/pb_card/docs/_card_content.html.erb +1 -1
  15. data/app/pb_kits/playbook/pb_card/docs/_card_dark.html.erb +3 -0
  16. data/app/pb_kits/playbook/pb_card/docs/_card_dark.jsx +12 -0
  17. data/app/pb_kits/playbook/pb_card/docs/example.yml +2 -0
  18. data/app/pb_kits/playbook/pb_card/docs/index.js +1 -0
  19. data/app/pb_kits/playbook/pb_filter/_filter.jsx +192 -56
  20. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.html.erb +2 -1
  21. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.jsx +47 -5
  22. data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.html.erb +1 -1
  23. data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.jsx +52 -0
  24. data/app/pb_kits/playbook/pb_filter/docs/_filter_only.html.erb +40 -0
  25. data/app/pb_kits/playbook/pb_filter/docs/_filter_only.jsx +48 -0
  26. data/app/pb_kits/playbook/pb_filter/docs/_filter_single.jsx +51 -0
  27. data/app/pb_kits/playbook/pb_filter/docs/_sort_only.html.erb +18 -0
  28. data/app/pb_kits/playbook/pb_filter/docs/_sort_only.jsx +48 -0
  29. data/app/pb_kits/playbook/pb_filter/docs/example.yml +6 -0
  30. data/app/pb_kits/playbook/pb_filter/docs/index.js +4 -0
  31. data/app/pb_kits/playbook/pb_filter/filter.rb +12 -1
  32. data/app/pb_kits/playbook/pb_filter/templates/_core.html.erb +37 -26
  33. data/app/pb_kits/playbook/pb_filter/templates/_default.html.erb +13 -9
  34. data/app/pb_kits/playbook/pb_flex/docs/_flex_default.html.erb +19 -15
  35. data/app/pb_kits/playbook/pb_flex/docs/_flex_default.jsx +46 -45
  36. data/app/pb_kits/playbook/pb_flex/docs/_flex_horizontal.html.erb +54 -50
  37. data/app/pb_kits/playbook/pb_flex/docs/_flex_horizontal.jsx +172 -171
  38. data/app/pb_kits/playbook/pb_flex/docs/_flex_inline.html.erb +19 -15
  39. data/app/pb_kits/playbook/pb_flex/docs/_flex_inline.jsx +48 -47
  40. data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.html.erb +19 -15
  41. data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.jsx +51 -50
  42. data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.html.erb +27 -23
  43. data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.jsx +93 -92
  44. data/app/pb_kits/playbook/pb_flex/docs/_flex_vertical.html.erb +68 -64
  45. data/app/pb_kits/playbook/pb_flex/docs/_flex_vertical.jsx +192 -191
  46. data/app/pb_kits/playbook/pb_flex/docs/_flex_wrap.html.erb +31 -27
  47. data/app/pb_kits/playbook/pb_flex/docs/_flex_wrap.jsx +83 -82
  48. data/app/pb_kits/playbook/pb_kit/dateTime.js +23 -1
  49. data/app/pb_kits/playbook/pb_kit/pb_date_time.rb +17 -0
  50. data/app/pb_kits/playbook/pb_logistic/_logistic.html.erb +19 -0
  51. data/app/pb_kits/playbook/pb_logistic/_logistic.jsx +96 -0
  52. data/app/pb_kits/playbook/pb_logistic/_logistic.scss +7 -0
  53. data/app/pb_kits/playbook/pb_logistic/docs/_logistic_dark.html.erb +27 -0
  54. data/app/pb_kits/playbook/pb_logistic/docs/_logistic_dark.jsx +39 -0
  55. data/app/pb_kits/playbook/pb_logistic/docs/_logistic_default.html.erb +24 -0
  56. data/app/pb_kits/playbook/pb_logistic/docs/_logistic_default.jsx +35 -0
  57. data/app/pb_kits/playbook/pb_logistic/docs/example.yml +11 -0
  58. data/app/pb_kits/playbook/pb_logistic/docs/index.js +2 -0
  59. data/app/pb_kits/playbook/pb_logistic/logistic.rb +31 -0
  60. data/app/pb_kits/playbook/pb_text_input/_text_input.scss +8 -2
  61. data/app/pb_kits/playbook/pb_textarea/_textarea_mixin.scss +9 -1
  62. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.html.erb +16 -0
  63. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.jsx +134 -0
  64. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.scss +33 -0
  65. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_dark.html.erb +72 -0
  66. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_dark.jsx +81 -0
  67. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_default.html.erb +64 -0
  68. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_default.jsx +73 -0
  69. data/app/pb_kits/playbook/pb_time_range_inline/docs/example.yml +11 -0
  70. data/app/pb_kits/playbook/pb_time_range_inline/docs/index.js +2 -0
  71. data/app/pb_kits/playbook/pb_time_range_inline/time_range_inline.rb +72 -0
  72. data/app/pb_kits/playbook/pb_typeahead/_typeahead.html.erb +2 -1
  73. data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +30 -9
  74. data/app/pb_kits/playbook/pb_typeahead/docs/{_typeahead_with_context.html.erb → _typeahead_with_context_dark.html.erb} +2 -1
  75. data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +1 -1
  76. data/app/pb_kits/playbook/pb_typeahead/index.js +6 -4
  77. data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +10 -2
  78. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.html.erb +7 -0
  79. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.jsx +66 -0
  80. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.scss +11 -0
  81. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_compact.html.erb +9 -0
  82. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_compact.jsx +48 -0
  83. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_dark.html.erb +1 -0
  84. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_dark.jsx +14 -0
  85. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_day_only.html.erb +1 -0
  86. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_day_only.jsx +14 -0
  87. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_default.html.erb +3 -0
  88. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_default.jsx +14 -0
  89. data/app/pb_kits/playbook/pb_weekday_stacked/docs/example.yml +15 -0
  90. data/app/pb_kits/playbook/pb_weekday_stacked/docs/index.js +4 -0
  91. data/app/pb_kits/playbook/pb_weekday_stacked/weekday_stacked.rb +61 -0
  92. data/app/pb_kits/playbook/tokens/_colors.scss +2 -2
  93. data/app/views/layouts/playbook/_sidebar.html.erb +26 -10
  94. data/app/views/playbook/pages/kit_category_show.html.erb +14 -0
  95. data/app/views/playbook/pages/kit_show.html.erb +33 -0
  96. data/app/views/playbook/pages/kits.html.erb +12 -0
  97. data/lib/playbook/version.rb +1 -1
  98. metadata +52 -24
  99. data/app/views/playbook/pages/kit_category_show.html.slim +0 -10
  100. data/app/views/playbook/pages/kit_show.html.slim +0 -23
  101. data/app/views/playbook/pages/kits.html.slim +0 -10
@@ -11,20 +11,28 @@ module Playbook
11
11
  prop :placeholder
12
12
  prop :search_term_minimum_length, default: 3
13
13
  prop :search_debounce_timeout, default: 250
14
+ prop :dark, type: Playbook::Props::Boolean,
15
+ default: false
14
16
 
15
17
  partial "pb_typeahead/typeahead"
16
18
 
17
19
  def classname
18
- generate_classname("pb_typeahead_kit")
20
+ generate_classname("pb_typeahead_kit", dark_class)
19
21
  end
20
22
 
21
23
  def data
22
24
  Hash(values[:data]).merge(
23
25
  pb_typeahead_kit: true,
24
26
  pb_typeahead_kit_search_term_minimum_length: search_term_minimum_length,
25
- pb_typeahead_kit_search_debounce_timeout: search_debounce_timeout,
27
+ pb_typeahead_kit_search_debounce_timeout: search_debounce_timeout
26
28
  )
27
29
  end
30
+
31
+ private
32
+
33
+ def dark_class
34
+ dark ? "dark" : nil
35
+ end
28
36
  end
29
37
  end
30
38
  end
@@ -0,0 +1,7 @@
1
+ <%= content_tag(:div,
2
+ id: object.id,
3
+ data: object.data,
4
+ class: object.classname) do %>
5
+ <%= pb_rails("caption", props: {dark: object.dark, text: object.day_of_week}) %>
6
+ <%= pb_rails("title", props: {dark: object.dark, size: 4, tag: "span", text: object.formatted_month_and_day}) %>
7
+ <% end %>
@@ -0,0 +1,66 @@
1
+ /* @flow */
2
+
3
+ import React from 'react'
4
+ import classnames from 'classnames'
5
+
6
+ import {
7
+ buildCss,
8
+ } from '../utilities/props'
9
+
10
+ import {
11
+ Caption,
12
+ Title,
13
+ } from '../'
14
+
15
+ import DateTime from '../pb_kit/dateTime.js'
16
+
17
+ type WeekdayStackedProps = {
18
+ align?: 'left' | 'center' | 'right',
19
+ className?: String,
20
+ compact?: Boolean,
21
+ dark?: Boolean,
22
+ date: Date,
23
+ dayOnly?: Boolean,
24
+ id?: String,
25
+ }
26
+
27
+ const getDayOfWeek = (date, compact) => {
28
+ const dateTime = new DateTime({ value: date })
29
+ if (compact) {
30
+ return dateTime.toDayAbbr()
31
+ } else {
32
+ return dateTime.toWeekday()
33
+ }
34
+ }
35
+
36
+ const getFormattedDate = (date, dayOnly) => {
37
+ const dateTime = new DateTime({ value: date })
38
+ if (dayOnly) {
39
+ return dateTime.toDay()
40
+ } else {
41
+ return `${dateTime.toMonthNum()}/${dateTime.toDay()}`
42
+ }
43
+ }
44
+
45
+ const WeekdayStacked = ({
46
+ align = 'left',
47
+ className,
48
+ compact = false,
49
+ dark = false,
50
+ date = new Date(),
51
+ dayOnly = false,
52
+ }: WeekdayStackedProps) => (
53
+ <div
54
+ className={classnames(buildCss('pb_weekday_stacked_kit', align), className)}
55
+ >
56
+ <Caption dark={dark}>{getDayOfWeek(date, compact)}</Caption>
57
+ <Title
58
+ dark={dark}
59
+ size={4}
60
+ tag="span"
61
+ text={getFormattedDate(date, dayOnly)}
62
+ />
63
+ </div>
64
+ )
65
+
66
+ export default WeekdayStacked
@@ -0,0 +1,11 @@
1
+ [class^='pb_weekday_stacked'] {
2
+ &[class*='_left'] {
3
+ text-align: left;
4
+ }
5
+ &[class*='_center'] {
6
+ text-align: center;
7
+ }
8
+ &[class*='_right'] {
9
+ text-align: right;
10
+ }
11
+ }
@@ -0,0 +1,9 @@
1
+ <%= pb_rails("flex", props: {spacing: "evenly"}) do %>
2
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/4")}) %>
3
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/5")}) %>
4
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/6")}) %>
5
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/7")}) %>
6
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/8")}) %>
7
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/9")}) %>
8
+ <%= pb_rails("weekday_stacked", props: {compact: true, date: Date.parse("2019/11/10")}) %>
9
+ <% end %>
@@ -0,0 +1,48 @@
1
+ import React from 'react'
2
+ import {
3
+ Flex,
4
+ // FlexItem,
5
+ WeekdayStacked,
6
+ } from '../..'
7
+
8
+ const WeekdayStackedCompact = () => (
9
+ <Flex spacing="evenly">
10
+ <WeekdayStacked
11
+ compact
12
+ date={new Date('2019/11/4')}
13
+ dayOnly
14
+ />
15
+ <WeekdayStacked
16
+ compact
17
+ date={new Date('2019/11/5')}
18
+ dayOnly
19
+ />
20
+ <WeekdayStacked
21
+ compact
22
+ date={new Date('2019/11/6')}
23
+ dayOnly
24
+ />
25
+ <WeekdayStacked
26
+ compact
27
+ date={new Date('2019/11/7')}
28
+ dayOnly
29
+ />
30
+ <WeekdayStacked
31
+ compact
32
+ date={new Date('2019/11/8')}
33
+ dayOnly
34
+ />
35
+ <WeekdayStacked
36
+ compact
37
+ date={new Date('2019/11/9')}
38
+ dayOnly
39
+ />
40
+ <WeekdayStacked
41
+ compact
42
+ date={new Date('2019/11/10')}
43
+ dayOnly
44
+ />
45
+ </Flex>
46
+ )
47
+
48
+ export default WeekdayStackedCompact
@@ -0,0 +1 @@
1
+ <%= pb_rails("weekday_stacked", props: {dark: true}) %>
@@ -0,0 +1,14 @@
1
+ import React from 'react'
2
+ import {
3
+ WeekdayStacked,
4
+ } from '../../'
5
+
6
+ const WeekdayStackedDark = () => (
7
+ <div>
8
+ <WeekdayStacked
9
+ dark
10
+ />
11
+ </div>
12
+ )
13
+
14
+ export default WeekdayStackedDark
@@ -0,0 +1 @@
1
+ <%= pb_rails("weekday_stacked", props: {day_only: true}) %>
@@ -0,0 +1,14 @@
1
+ import React from 'react'
2
+ import {
3
+ WeekdayStacked,
4
+ } from '../..'
5
+
6
+ const WeekdayStackedDayOnly = () => (
7
+ <div>
8
+ <WeekdayStacked
9
+ dayOnly
10
+ />
11
+ </div>
12
+ )
13
+
14
+ export default WeekdayStackedDayOnly
@@ -0,0 +1,3 @@
1
+ <%= pb_rails("weekday_stacked") %>
2
+ <%= pb_rails("weekday_stacked", props: {align: 'center'}) %>
3
+ <%= pb_rails("weekday_stacked", props: {align: 'right'}) %>
@@ -0,0 +1,14 @@
1
+ import React from 'react'
2
+ import {
3
+ WeekdayStacked,
4
+ } from '../../'
5
+
6
+ const WeekdayStackedDefault = () => (
7
+ <div>
8
+ <WeekdayStacked className="test" />
9
+ <WeekdayStacked align="center" />
10
+ <WeekdayStacked align="right" />
11
+ </div>
12
+ )
13
+
14
+ export default WeekdayStackedDefault
@@ -0,0 +1,15 @@
1
+ examples:
2
+
3
+ rails:
4
+ - weekday_stacked_default: Default
5
+ - weekday_stacked_day_only: Day Only
6
+ - weekday_stacked_compact: Day Only - Compact
7
+ - weekday_stacked_dark: Dark
8
+
9
+
10
+ react:
11
+ - weekday_stacked_default: Default
12
+ - weekday_stacked_day_only: Day Only
13
+ - weekday_stacked_compact: Day Only - Compact
14
+ - weekday_stacked_dark: Dark
15
+
@@ -0,0 +1,4 @@
1
+ export { default as WeekdayStackedDefault } from './_weekday_stacked_default.jsx'
2
+ export { default as WeekdayStackedDayOnly } from './_weekday_stacked_day_only.jsx'
3
+ export { default as WeekdayStackedCompact } from './_weekday_stacked_compact.jsx'
4
+ export { default as WeekdayStackedDark } from './_weekday_stacked_dark.jsx'
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Playbook
4
+ module PbWeekdayStacked
5
+ class WeekdayStacked
6
+ include ActionView::Helpers::TagHelper
7
+ include ActionView::Context
8
+ include Playbook::Props
9
+
10
+ partial "pb_weekday_stacked/weekday_stacked"
11
+
12
+ prop :align, type: Playbook::Props::Enum,
13
+ values: %w[left center right],
14
+ default: "left"
15
+
16
+ prop :compact, type: Playbook::Props::Boolean,
17
+ default: false
18
+
19
+ prop :dark, type: Playbook::Props::Boolean,
20
+ default: false
21
+
22
+ prop :date, type: Playbook::Props::Date,
23
+ default: ::Date.current
24
+
25
+ prop :day_only, type: Playbook::Props::Boolean,
26
+ default: false
27
+
28
+ def classname
29
+ generate_classname("pb_weekday_stacked_kit", align)
30
+ end
31
+
32
+ def day_of_week
33
+ day = Playbook::PbKit::PbDateTime.new(date)
34
+ formatted_day = compact ? day.to_day_of_week_compact : day.to_day_of_week
35
+ content_tag(:time, datetime: day.to_iso) do
36
+ formatted_day
37
+ end
38
+ end
39
+
40
+ def formatted_month_and_day
41
+ compact || day_only ? day : month_and_day
42
+ end
43
+
44
+ private
45
+
46
+ def month_and_day
47
+ month_and_day = Playbook::PbKit::PbDateTime.new(date)
48
+ content_tag(:time, datetime: month_and_day.to_iso) do
49
+ "#{month_and_day.to_unpadded_month_number}/#{month_and_day.to_unpadded_day}"
50
+ end
51
+ end
52
+
53
+ def day
54
+ day = Playbook::PbKit::PbDateTime.new(date)
55
+ content_tag(:time, datetime: day.to_iso) do
56
+ day.to_unpadded_day
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -87,8 +87,8 @@ $hover_colors: (
87
87
  );
88
88
 
89
89
  // Focus colors -----------------------
90
- $focus_input_light: rgba($active_light, $opacity_2);
91
- $focus_input_dark: rgba($active_dark, $opacity_2);
90
+ $focus_input_light: rgba($active_light, $opacity_5);
91
+ $focus_input_dark: rgba($active_dark, $opacity_5);
92
92
  $focus_input_colors: (
93
93
  focus_input_light: $focus_input_light,
94
94
  focus_input_dark: $focus_input_dark
@@ -1,25 +1,41 @@
1
1
  <br>
2
- <%= pb_rails("nav", props: {title: "Kits", link: kits_path, variant: "subtle"}) do %>
3
- <% all_active = (controller_name == 'pages' && action_name == 'kits') ? true : false %>
4
- <% pb_rails("nav/item", props: { text: "All", link: kits_path, active: all_active }) %>
5
-
2
+ <%= pb_rails("nav", props: {
3
+ title: "Kits",
4
+ link: all_link(@type),
5
+ variant: "subtle"
6
+ }) do %>
7
+ <% pb_rails("nav/item", props: {
8
+ text: "All",
9
+ link: all_link(@type),
10
+ active: all_active(controller_name, action_name)
11
+ }) %>
6
12
  <% MENU["kits"].each do |link| %>
7
- <% active = !@kit.nil? && @kit == link ? true : false %>
8
13
  <% if link.is_a?(Hash) %>
9
14
  <div class="category_section">
10
- <% active = !@category.nil? && @category == nav_hash_category(link) ? true : false %>
11
- <%= pb_rails("nav/item", props: { active: active, classname: "category", icon_right: "angle-down", link: kit_category_show_path(nav_hash_category(link)) }) do %>
15
+ <%= pb_rails("nav/item", props: {
16
+ active: category_active(@category, link),
17
+ classname: "category",
18
+ icon_right: "angle-down",
19
+ link: category_link(@type, link)
20
+ }) do %>
12
21
  <%= pb_kit_title(nav_hash_category(link)) %>
13
22
  <% end %>
14
23
  <%= pb_rails("nav", props: { variant: "subtle", classname: "sub_category"}) do %>
15
24
  <% nav_hash_array(link).each do |sub_link| %>
16
- <% sub_active = !@kit.nil? && @kit == sub_link ? true : false %>
17
- <%= pb_rails("nav/item", props: { text: pb_kit_title(sub_link), link: kit_show_path(sub_link), active: sub_active }) %>
25
+ <%= pb_rails("nav/item", props: {
26
+ text: pb_kit_title(sub_link),
27
+ link: sub_category_link(@type, sub_link),
28
+ active: sub_category_active(@kit, sub_link)
29
+ }) %>
18
30
  <% end %>
19
31
  <% end %>
20
32
  </div>
21
33
  <% else %>
22
- <%= pb_rails("nav/item", props: { text: pb_kit_title(link), link: kit_show_path(link), active: active }) %>
34
+ <%= pb_rails("nav/item", props: {
35
+ text: pb_kit_title(link),
36
+ link: kit_link(@type, link),
37
+ active: kit_active(@kit, link)
38
+ }) %>
23
39
  <% end %>
24
40
  <% end %>
25
41
  <% end %>
@@ -0,0 +1,14 @@
1
+ <div class="pb--kits">
2
+ <%= pb_rails("title", props: { text: pb_kit_title(@category), tag: "h1", size: 1 }) %>
3
+ <br>
4
+ <div class="pb--kit-type-nav">
5
+ <%= pb_rails("nav", props: { orientation: "horizontal" }) do %>
6
+ <%= pb_rails("nav/item", props: { text: "Rails", link: kit_category_show_path(@category, type: 'rails'), active: @type == 'rails' }) %>
7
+ <%= pb_rails("nav/item", props: { text: "React", link: kit_category_show_path(@category, type: 'react'), active: @type == 'react' }) %>
8
+ <% end %>
9
+ <%= pb_rails("section_separator") %>
10
+ </div>
11
+ <br>
12
+ <br>
13
+ <%= pb_category_kits(category_kits: @category_kits, type: @type) %>
14
+ </div>
@@ -0,0 +1,33 @@
1
+ <div class="pb--kit-show #{@kit}-kit">
2
+ <%= pb_rails("title", props: { text: pb_kit_title(@kit), tag: "h1", size: 1 }) %>
3
+ <div class="markdown">
4
+ <%= markdown(get_kit_description(@kit)) %>
5
+ </div>
6
+ </div>
7
+ <div>
8
+ <div class="pb--kit-type-nav">
9
+ <%= pb_rails("nav", props: { orientation: "horizontal" }) do %>
10
+ <% if has_kit_type?(@kit, "rails") %>
11
+ <%= pb_rails("nav/item", props: { text: "Rails", link: kit_show_rails_path(@kit), active: action_name == 'kit_show_rails' }) %>
12
+ <% end %>
13
+ <% if has_kit_type?(@kit, "react") %>
14
+ <%= pb_rails("nav/item", props: { text: "React", link: kit_show_reacts_path(@kit), active: action_name == 'kit_show_react' }) %>
15
+ <% end %>
16
+ <% end %>
17
+ <%= pb_rails("section_separator") %>
18
+ </div>
19
+ <% if (action_name == "kit_show_rails") %>
20
+ <%= pb_kit(kit: @kit) %>
21
+ <div class="markdown">
22
+ <br>
23
+ <%= markdown(get_kit_footer(@kit)) %>
24
+ </div>
25
+ <%= pb_kit_api(@kit) %>
26
+ <% else %>
27
+ <%= pb_kit(kit: @kit, type: "react") %>
28
+ <div class="markdown">
29
+ <br>
30
+ <%= markdown(get_kit_footer(@kit)) %>
31
+ </div>
32
+ <% end %>
33
+ </div>
@@ -0,0 +1,12 @@
1
+ <div class="pb--kits">
2
+ <%= pb_rails("title", props: { text: "Kits", tag: "h1", size: 1 }) %>
3
+ <br>
4
+ <%= pb_rails("nav", props: { orientation: "horizontal" }) do %>
5
+ <%= pb_rails("nav/item", props: { text: "Rails", link: kits_path('', type: 'rails'), active: @type == 'rails' }) %>
6
+ <%= pb_rails("nav/item", props: { text: "React", link: kits_path('', type: 'react'), active: @type == 'react' }) %>
7
+ <% end %>
8
+ <%= pb_rails("section_separator") %>
9
+ <br>
10
+ <br>
11
+ <%= pb_kits(type: @type) %>
12
+ </div>