playbook_ui 12.24.0 → 12.25.0.pre.alpha.PLAY733DetailKit761
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.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/_playbook.scss +1 -0
- data/app/pb_kits/playbook/index.js +1 -0
- data/app/pb_kits/playbook/pb_date/_date.tsx +96 -42
- data/app/pb_kits/playbook/pb_date/date.html.erb +22 -2
- data/app/pb_kits/playbook/pb_date/date.rb +2 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_unstyled.html.erb +30 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_unstyled.jsx +47 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_unstyled.md +1 -0
- data/app/pb_kits/playbook/pb_date/docs/example.yml +4 -4
- data/app/pb_kits/playbook/pb_date/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_detail/_detail.scss +44 -0
- data/app/pb_kits/playbook/pb_detail/_detail.tsx +51 -0
- data/app/pb_kits/playbook/pb_detail/_detail_mixins.scss +29 -0
- data/app/pb_kits/playbook/pb_detail/detail.html.erb +7 -0
- data/app/pb_kits/playbook/pb_detail/detail.rb +23 -0
- data/app/pb_kits/playbook/pb_detail/detail.test.jsx +33 -0
- data/app/pb_kits/playbook/pb_detail/docs/_description.md +1 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_bolded.html.erb +33 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_bolded.jsx +47 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_default.html.erb +28 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_default.jsx +43 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_default.md +6 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_styled.html.erb +22 -0
- data/app/pb_kits/playbook/pb_detail/docs/_detail_styled.jsx +32 -0
- data/app/pb_kits/playbook/pb_detail/docs/example.yml +11 -0
- data/app/pb_kits/playbook/pb_detail/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_docs/kit_example.rb +0 -2
- data/app/pb_kits/playbook/pb_time/_time.tsx +71 -35
- data/app/pb_kits/playbook/pb_time/docs/_time_unstyled.html.erb +37 -0
- data/app/pb_kits/playbook/pb_time/docs/_time_unstyled.jsx +58 -0
- data/app/pb_kits/playbook/pb_time/docs/_time_unstyled.md +1 -0
- data/app/pb_kits/playbook/pb_time/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_time/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_time/time.html.erb +26 -7
- data/app/pb_kits/playbook/pb_time/time.rb +2 -0
- data/app/pb_kits/playbook/pb_title/_title.scss +2 -1
- data/app/pb_kits/playbook/pb_title/_title.tsx +3 -2
- data/app/pb_kits/playbook/pb_title/title.rb +10 -3
- data/app/pb_kits/playbook/pb_title/title.test.js +3 -3
- data/app/pb_kits/playbook/playbook-doc.js +2 -0
- data/dist/menu.yml +1 -0
- data/dist/playbook-rails.js +51 -0
- data/lib/playbook/version.rb +2 -2
- data/lib/playbook.rb +1 -2
- metadata +34 -41
- data/app/pb_kits/playbook/pb_docs/kit_api.html.erb +0 -311
- data/app/pb_kits/playbook/pb_docs/kit_api.rb +0 -149
- data/lib/playbook/markdown/helper.rb +0 -132
- data/lib/playbook/markdown.rb +0 -3
data/lib/playbook/version.rb
CHANGED
data/lib/playbook.rb
CHANGED
@@ -8,10 +8,9 @@ require "playbook/props"
|
|
8
8
|
require "playbook/forms"
|
9
9
|
require "playbook/pb_forms_helper"
|
10
10
|
require "playbook/pb_kit_helper"
|
11
|
-
require "playbook/pb_doc_helper"
|
11
|
+
require "playbook/pb_doc_helper" # Duplicated from website (Temp)
|
12
12
|
require "playbook/kit_base"
|
13
13
|
require "playbook/kit_resolver"
|
14
|
-
require "playbook/markdown"
|
15
14
|
|
16
15
|
module Playbook
|
17
16
|
ROOT_PATH = Pathname.new(File.join(__dir__, ".."))
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: playbook_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 12.
|
4
|
+
version: 12.25.0.pre.alpha.PLAY733DetailKit761
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Power UX
|
8
8
|
- Power Devs
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-06-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: actionpack
|
@@ -67,34 +67,6 @@ dependencies:
|
|
67
67
|
- - '='
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: 2.6.1
|
70
|
-
- !ruby/object:Gem::Dependency
|
71
|
-
name: redcarpet
|
72
|
-
requirement: !ruby/object:Gem::Requirement
|
73
|
-
requirements:
|
74
|
-
- - "~>"
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
version: '3.6'
|
77
|
-
type: :runtime
|
78
|
-
prerelease: false
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
80
|
-
requirements:
|
81
|
-
- - "~>"
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
version: '3.6'
|
84
|
-
- !ruby/object:Gem::Dependency
|
85
|
-
name: rouge
|
86
|
-
requirement: !ruby/object:Gem::Requirement
|
87
|
-
requirements:
|
88
|
-
- - "~>"
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
version: '3.15'
|
91
|
-
type: :runtime
|
92
|
-
prerelease: false
|
93
|
-
version_requirements: !ruby/object:Gem::Requirement
|
94
|
-
requirements:
|
95
|
-
- - "~>"
|
96
|
-
- !ruby/object:Gem::Version
|
97
|
-
version: '3.15'
|
98
70
|
- !ruby/object:Gem::Dependency
|
99
71
|
name: view_component
|
100
72
|
requirement: !ruby/object:Gem::Requirement
|
@@ -283,7 +255,9 @@ dependencies:
|
|
283
255
|
- - '='
|
284
256
|
- !ruby/object:Gem::Version
|
285
257
|
version: 3.3.1
|
286
|
-
description: Playbook
|
258
|
+
description: Playbook UI is built out in Ruby View Components and React Components.
|
259
|
+
Playbook takes a modern design approach and applies it in a way that makes it easy
|
260
|
+
to support bleeding edge or legacy systems.
|
287
261
|
email:
|
288
262
|
- nitroux@powerhrg.com
|
289
263
|
- dev@powerhrg.com
|
@@ -690,6 +664,9 @@ files:
|
|
690
664
|
- app/pb_kits/playbook/pb_date/docs/_date_default.jsx
|
691
665
|
- app/pb_kits/playbook/pb_date/docs/_date_timezone.html.erb
|
692
666
|
- app/pb_kits/playbook/pb_date/docs/_date_timezone.md
|
667
|
+
- app/pb_kits/playbook/pb_date/docs/_date_unstyled.html.erb
|
668
|
+
- app/pb_kits/playbook/pb_date/docs/_date_unstyled.jsx
|
669
|
+
- app/pb_kits/playbook/pb_date/docs/_date_unstyled.md
|
693
670
|
- app/pb_kits/playbook/pb_date/docs/_date_variants.html.erb
|
694
671
|
- app/pb_kits/playbook/pb_date/docs/_date_variants.jsx
|
695
672
|
- app/pb_kits/playbook/pb_date/docs/_description.md
|
@@ -846,6 +823,22 @@ files:
|
|
846
823
|
- app/pb_kits/playbook/pb_date_year_stacked/docs/_footer.md
|
847
824
|
- app/pb_kits/playbook/pb_date_year_stacked/docs/example.yml
|
848
825
|
- app/pb_kits/playbook/pb_date_year_stacked/docs/index.js
|
826
|
+
- app/pb_kits/playbook/pb_detail/_detail.scss
|
827
|
+
- app/pb_kits/playbook/pb_detail/_detail.tsx
|
828
|
+
- app/pb_kits/playbook/pb_detail/_detail_mixins.scss
|
829
|
+
- app/pb_kits/playbook/pb_detail/detail.html.erb
|
830
|
+
- app/pb_kits/playbook/pb_detail/detail.rb
|
831
|
+
- app/pb_kits/playbook/pb_detail/detail.test.jsx
|
832
|
+
- app/pb_kits/playbook/pb_detail/docs/_description.md
|
833
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_bolded.html.erb
|
834
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_bolded.jsx
|
835
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_default.html.erb
|
836
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_default.jsx
|
837
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_default.md
|
838
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_styled.html.erb
|
839
|
+
- app/pb_kits/playbook/pb_detail/docs/_detail_styled.jsx
|
840
|
+
- app/pb_kits/playbook/pb_detail/docs/example.yml
|
841
|
+
- app/pb_kits/playbook/pb_detail/docs/index.js
|
849
842
|
- app/pb_kits/playbook/pb_dialog/_close_icon.tsx
|
850
843
|
- app/pb_kits/playbook/pb_dialog/_dialog.scss
|
851
844
|
- app/pb_kits/playbook/pb_dialog/_dialog.tsx
|
@@ -905,8 +898,6 @@ files:
|
|
905
898
|
- app/pb_kits/playbook/pb_distribution_bar/docs/_distribution_bar_default.jsx
|
906
899
|
- app/pb_kits/playbook/pb_distribution_bar/docs/example.yml
|
907
900
|
- app/pb_kits/playbook/pb_distribution_bar/docs/index.js
|
908
|
-
- app/pb_kits/playbook/pb_docs/kit_api.html.erb
|
909
|
-
- app/pb_kits/playbook/pb_docs/kit_api.rb
|
910
901
|
- app/pb_kits/playbook/pb_docs/kit_example.html.erb
|
911
902
|
- app/pb_kits/playbook/pb_docs/kit_example.rb
|
912
903
|
- app/pb_kits/playbook/pb_enhanced_element/element_observer.ts
|
@@ -2084,6 +2075,9 @@ files:
|
|
2084
2075
|
- app/pb_kits/playbook/pb_time/docs/_time_timezone.html.erb
|
2085
2076
|
- app/pb_kits/playbook/pb_time/docs/_time_timezone.jsx
|
2086
2077
|
- app/pb_kits/playbook/pb_time/docs/_time_timezone.md
|
2078
|
+
- app/pb_kits/playbook/pb_time/docs/_time_unstyled.html.erb
|
2079
|
+
- app/pb_kits/playbook/pb_time/docs/_time_unstyled.jsx
|
2080
|
+
- app/pb_kits/playbook/pb_time/docs/_time_unstyled.md
|
2087
2081
|
- app/pb_kits/playbook/pb_time/docs/example.yml
|
2088
2082
|
- app/pb_kits/playbook/pb_time/docs/index.js
|
2089
2083
|
- app/pb_kits/playbook/pb_time/time.html.erb
|
@@ -2431,6 +2425,7 @@ files:
|
|
2431
2425
|
- app/pb_kits/playbook/utilities/test/globalProps/order.test.js
|
2432
2426
|
- app/pb_kits/playbook/utilities/text.ts
|
2433
2427
|
- dist/menu.yml
|
2428
|
+
- dist/playbook-rails.js
|
2434
2429
|
- dist/reset.css
|
2435
2430
|
- lib/playbook.rb
|
2436
2431
|
- lib/playbook/align_content.rb
|
@@ -2459,8 +2454,6 @@ files:
|
|
2459
2454
|
- lib/playbook/kit_base.rb
|
2460
2455
|
- lib/playbook/kit_resolver.rb
|
2461
2456
|
- lib/playbook/line_height.rb
|
2462
|
-
- lib/playbook/markdown.rb
|
2463
|
-
- lib/playbook/markdown/helper.rb
|
2464
2457
|
- lib/playbook/number_spacing.rb
|
2465
2458
|
- lib/playbook/order.rb
|
2466
2459
|
- lib/playbook/pagination_renderer.rb
|
@@ -2488,11 +2481,11 @@ files:
|
|
2488
2481
|
- lib/playbook/version.rb
|
2489
2482
|
- lib/playbook/z_index.rb
|
2490
2483
|
- lib/playbook_ui.rb
|
2491
|
-
homepage:
|
2484
|
+
homepage: https://playbook.powerapp.cloud/
|
2492
2485
|
licenses:
|
2493
2486
|
- ISC
|
2494
2487
|
metadata: {}
|
2495
|
-
post_install_message:
|
2488
|
+
post_install_message:
|
2496
2489
|
rdoc_options: []
|
2497
2490
|
require_paths:
|
2498
2491
|
- lib
|
@@ -2503,12 +2496,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
2503
2496
|
version: '0'
|
2504
2497
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
2505
2498
|
requirements:
|
2506
|
-
- - "
|
2499
|
+
- - ">"
|
2507
2500
|
- !ruby/object:Gem::Version
|
2508
|
-
version:
|
2501
|
+
version: 1.3.1
|
2509
2502
|
requirements: []
|
2510
2503
|
rubygems_version: 3.3.7
|
2511
|
-
signing_key:
|
2504
|
+
signing_key:
|
2512
2505
|
specification_version: 4
|
2513
2506
|
summary: Playbook Design System
|
2514
2507
|
test_files: []
|
@@ -1,311 +0,0 @@
|
|
1
|
-
<% if !local_prop_data.present? %>
|
2
|
-
<div data-action="toggle" data-togglable="prop_example" class="pb--propsTable">
|
3
|
-
<%= pb_rails("title", props: { text: "Available Props", size: 3, margin_bottom: "sm" }) %>
|
4
|
-
<%= pb_rails("card", props: { padding: "none" }) do %>
|
5
|
-
<%= pb_rails("card/card_body", props: { padding: "sm" }) do %>
|
6
|
-
<%= pb_rails("nav", props: { orientation: "horizontal", variant: "subtle" }) do %>
|
7
|
-
<%= pb_rails("nav/item", props: { text: "Global Props", link: "#", active: true }) %>
|
8
|
-
<% end %>
|
9
|
-
<% end %>
|
10
|
-
<%= pb_rails("section_separator") %>
|
11
|
-
<%= pb_rails("card/card_body", props: {}) do %>
|
12
|
-
<%= pb_rails("table", props: {container: false, disable_hover: true }) do %>
|
13
|
-
<thead>
|
14
|
-
<tr>
|
15
|
-
<th>Props</th>
|
16
|
-
<th>Type</th>
|
17
|
-
<th>Values</th>
|
18
|
-
</tr>
|
19
|
-
</thead>
|
20
|
-
<tbody>
|
21
|
-
<% global_prop_data.each do |key, value|%>
|
22
|
-
<tr>
|
23
|
-
<td>
|
24
|
-
<%= pb_rails("title", props: { text: key, tag: "h4", size: 4 }) %>
|
25
|
-
</td>
|
26
|
-
<td>
|
27
|
-
<%= pb_rails("card", props: {
|
28
|
-
classname: "card",
|
29
|
-
padding: "xxs",
|
30
|
-
background: "light",
|
31
|
-
border_none: true,
|
32
|
-
border_radius: "sm"
|
33
|
-
}) do %>
|
34
|
-
<%= pb_rails("body", props: {
|
35
|
-
classname: "kearning"
|
36
|
-
}) do %>
|
37
|
-
<% if key =~ /^padding|^margin/ %>
|
38
|
-
<%= "array" %>
|
39
|
-
<% else %>
|
40
|
-
<%= value[:type].to_s.downcase %>
|
41
|
-
<% end %>
|
42
|
-
<% end %>
|
43
|
-
<% end %>
|
44
|
-
</td>
|
45
|
-
<td>
|
46
|
-
<% if key =~ /^padding|^margin/ %>
|
47
|
-
<% padding_margin_values.each do |item| %>
|
48
|
-
<%= pb_rails("card", props: {
|
49
|
-
flex_direction: "row",
|
50
|
-
classname: "card",
|
51
|
-
padding: "xxs",
|
52
|
-
background: "light",
|
53
|
-
border_none: true,
|
54
|
-
border_radius: "sm",
|
55
|
-
margin: "xxs"
|
56
|
-
}) do %>
|
57
|
-
<%= pb_rails("body", props: {
|
58
|
-
classname: "kearning"
|
59
|
-
}) do %>
|
60
|
-
<%= item %>
|
61
|
-
<% end %>
|
62
|
-
<% end %>
|
63
|
-
<% end %>
|
64
|
-
<% else %>
|
65
|
-
<% if value[:values].present? %>
|
66
|
-
<% value[:values].each do |item| %>
|
67
|
-
<% if item != nil %>
|
68
|
-
<%= pb_rails("card", props: {
|
69
|
-
flex_direction: "row",
|
70
|
-
classname: "card",
|
71
|
-
padding: "xxs",
|
72
|
-
background: "light",
|
73
|
-
border_none: true,
|
74
|
-
border_radius: "sm",
|
75
|
-
margin: "xxs"
|
76
|
-
}) do %>
|
77
|
-
<%= pb_rails("body", props: {
|
78
|
-
classname: "kearning"
|
79
|
-
}) do %>
|
80
|
-
<%= item %>
|
81
|
-
<% end %>
|
82
|
-
<% end %>
|
83
|
-
<% end %>
|
84
|
-
<% end %>
|
85
|
-
<% end %>
|
86
|
-
<% end %>
|
87
|
-
</td>
|
88
|
-
</tr>
|
89
|
-
<% end %>
|
90
|
-
</tbody>
|
91
|
-
<% end %>
|
92
|
-
<% end %>
|
93
|
-
<% end %>
|
94
|
-
</div>
|
95
|
-
<% else %>
|
96
|
-
<div data-action="toggle" data-togglable="prop_example" class="pb--propsTable">
|
97
|
-
<%= pb_rails("title", props: { text: "Available Props", size: 3, margin_bottom: "sm" }) %>
|
98
|
-
<%= pb_rails("card", props: { padding: "none" }) do %>
|
99
|
-
<%= pb_rails("card/card_body", props: { padding: "sm" }) do %>
|
100
|
-
<%= pb_rails("nav", props: { orientation: "horizontal", variant: "subtle" }) do %>
|
101
|
-
<% if local_prop_data.present? %>
|
102
|
-
<%= pb_rails("nav/item", props: { text: "Kit Props", link: "#", active: true, id: "local-button-active", classname: "local-active" }) %>
|
103
|
-
<% end %>
|
104
|
-
<% if local_prop_data.present? %>
|
105
|
-
<%= pb_rails("nav/item", props: { text: "Kit Props", link: "#", id: "local-button", classname: "global-active" }) %>
|
106
|
-
<% end %>
|
107
|
-
<%= pb_rails("nav/item", props: { text: "Global Props", link: "#", active: true, id: "global-button-active", classname: "global-active" }) %>
|
108
|
-
<%= pb_rails("nav/item", props: { text: "Global Props", link: "#", id: "global-button", classname: "local-active" }) %>
|
109
|
-
<% end %>
|
110
|
-
<% end %>
|
111
|
-
<%= pb_rails("section_separator") %>
|
112
|
-
<%= pb_rails("card/card_body", props: {}) do %>
|
113
|
-
<%= pb_rails("table", props: {container: false, disable_hover: true, id: "global-prop-table", classname: "global-active"}) do %>
|
114
|
-
<thead>
|
115
|
-
<tr>
|
116
|
-
<th>Props</th>
|
117
|
-
<th>Type</th>
|
118
|
-
<th>Values</th>
|
119
|
-
</tr>
|
120
|
-
</thead>
|
121
|
-
<tbody>
|
122
|
-
<% global_prop_data.each do |key, value|%>
|
123
|
-
<tr>
|
124
|
-
<td>
|
125
|
-
<%= pb_rails("title", props: { text: key, tag: "h4", size: 4 }) %>
|
126
|
-
</td>
|
127
|
-
<td>
|
128
|
-
<%= pb_rails("card", props: {
|
129
|
-
classname: "card",
|
130
|
-
padding: "xxs",
|
131
|
-
background: "light",
|
132
|
-
border_none: true,
|
133
|
-
border_radius: "sm"
|
134
|
-
}) do %>
|
135
|
-
<%= pb_rails("body", props: {
|
136
|
-
classname: "kearning"
|
137
|
-
}) do %>
|
138
|
-
<% if key =~ /^padding|^margin/ %>
|
139
|
-
<%= "array" %>
|
140
|
-
<% else %>
|
141
|
-
<%= value[:type].to_s.downcase %>
|
142
|
-
<% end %>
|
143
|
-
<% end %>
|
144
|
-
<% end %>
|
145
|
-
</td>
|
146
|
-
<td>
|
147
|
-
<% if key =~ /^padding|^margin/ %>
|
148
|
-
<% padding_margin_values.each do |item| %>
|
149
|
-
<%= pb_rails("card", props: {
|
150
|
-
flex_direction: "row",
|
151
|
-
classname: "card",
|
152
|
-
padding: "xxs",
|
153
|
-
background: "light",
|
154
|
-
border_none: true,
|
155
|
-
border_radius: "sm",
|
156
|
-
margin: "xxs"
|
157
|
-
}) do %>
|
158
|
-
<%= pb_rails("body", props: {
|
159
|
-
classname: "kearning"
|
160
|
-
}) do %>
|
161
|
-
<%= item %>
|
162
|
-
<% end %>
|
163
|
-
<% end %>
|
164
|
-
<% end %>
|
165
|
-
<% else %>
|
166
|
-
<% if value[:values].present? %>
|
167
|
-
<% value[:values].each do |item| %>
|
168
|
-
<% if item != nil %>
|
169
|
-
<%= pb_rails("card", props: {
|
170
|
-
flex_direction: "row",
|
171
|
-
classname: "card",
|
172
|
-
padding: "xxs",
|
173
|
-
background: "light",
|
174
|
-
border_none: true,
|
175
|
-
border_radius: "sm",
|
176
|
-
margin: "xxs"
|
177
|
-
}) do %>
|
178
|
-
<%= pb_rails("body", props: {
|
179
|
-
classname: "kearning"
|
180
|
-
}) do %>
|
181
|
-
<%= item %>
|
182
|
-
<% end %>
|
183
|
-
<% end %>
|
184
|
-
<% end %>
|
185
|
-
<% end %>
|
186
|
-
<% end %>
|
187
|
-
<% end %>
|
188
|
-
</td>
|
189
|
-
</tr>
|
190
|
-
<% end %>
|
191
|
-
</tbody>
|
192
|
-
<% end %>
|
193
|
-
<%= pb_rails("table", props: {container: false, disable_hover: true, id: "local-prop-table", classname: "local-active"}) do %>
|
194
|
-
<thead>
|
195
|
-
<tr>
|
196
|
-
<th>Props</th>
|
197
|
-
<th>Type</th>
|
198
|
-
<th>Values</th>
|
199
|
-
<th>Default</th>
|
200
|
-
</tr>
|
201
|
-
</thead>
|
202
|
-
<tbody>
|
203
|
-
<% local_prop_data.each do |key, value|%>
|
204
|
-
<tr>
|
205
|
-
<td>
|
206
|
-
<%= pb_rails("title", props: { text: key, tag: "h4", size: 4 }) %>
|
207
|
-
</td>
|
208
|
-
<td>
|
209
|
-
<%= pb_rails("card", props: {
|
210
|
-
classname: "card",
|
211
|
-
padding: "xxs",
|
212
|
-
background: "light",
|
213
|
-
border_none: true,
|
214
|
-
border_radius: "sm"
|
215
|
-
}) do %>
|
216
|
-
<%= pb_rails("body", props: {
|
217
|
-
classname: "kearning"
|
218
|
-
}) do %>
|
219
|
-
<%= value[:type].downcase %>
|
220
|
-
<% end %>
|
221
|
-
<% end %>
|
222
|
-
</td>
|
223
|
-
<td>
|
224
|
-
<% if value[:values].present? %>
|
225
|
-
<% value[:values].each do |item| %>
|
226
|
-
<% if item != nil %>
|
227
|
-
<%= pb_rails("card", props: {
|
228
|
-
flex_direction: "row",
|
229
|
-
classname: "card",
|
230
|
-
padding: "xxs",
|
231
|
-
background: "light",
|
232
|
-
border_none: true,
|
233
|
-
border_radius: "sm",
|
234
|
-
margin: "xxs"
|
235
|
-
}) do %>
|
236
|
-
<%= pb_rails("body", props: {
|
237
|
-
classname: "kearning"
|
238
|
-
}) do %>
|
239
|
-
<%= item %>
|
240
|
-
<% end %>
|
241
|
-
<% end %>
|
242
|
-
<% end %>
|
243
|
-
<% end %>
|
244
|
-
<% end %>
|
245
|
-
</td>
|
246
|
-
<td>
|
247
|
-
<% if value[:default].present? || value[:default].is_a?(TrueClass) || value[:default].is_a?(FalseClass) %>
|
248
|
-
<%= pb_rails("card", props: {
|
249
|
-
classname: "card",
|
250
|
-
padding: "xxs",
|
251
|
-
background: "light",
|
252
|
-
border_none: true,
|
253
|
-
border_radius: "sm"
|
254
|
-
}) do %>
|
255
|
-
<%= pb_rails("body", props: {
|
256
|
-
classname: "kearning"
|
257
|
-
}) do %>
|
258
|
-
<%= value[:default] %>
|
259
|
-
<% end %>
|
260
|
-
<% end %>
|
261
|
-
<% end %>
|
262
|
-
</td>
|
263
|
-
</tr>
|
264
|
-
<% end %>
|
265
|
-
</tbody>
|
266
|
-
<% end %>
|
267
|
-
<% end %>
|
268
|
-
<% end %>
|
269
|
-
</div>
|
270
|
-
<% end %>
|
271
|
-
|
272
|
-
<script>
|
273
|
-
|
274
|
-
const globalNavAndTable = document.querySelectorAll('.global-active');
|
275
|
-
const localNavAndTable = document.querySelectorAll('.local-active');
|
276
|
-
|
277
|
-
globalNavAndTable.forEach(element => {
|
278
|
-
element.style.display = 'none';
|
279
|
-
});
|
280
|
-
|
281
|
-
const globalButton = document.getElementById("global-button");
|
282
|
-
if (globalButton) {
|
283
|
-
globalButton.addEventListener("click", showGlobal);
|
284
|
-
}
|
285
|
-
|
286
|
-
const localButton = document.getElementById("local-button");
|
287
|
-
if (localButton) {
|
288
|
-
localButton.addEventListener("click", showLocal);
|
289
|
-
}
|
290
|
-
|
291
|
-
function showGlobal() {
|
292
|
-
localNavAndTable.forEach(element => {
|
293
|
-
element.style.display = 'none';
|
294
|
-
});
|
295
|
-
|
296
|
-
globalNavAndTable.forEach(element => {
|
297
|
-
element.style.display = 'table';
|
298
|
-
});
|
299
|
-
}
|
300
|
-
|
301
|
-
function showLocal() {
|
302
|
-
localNavAndTable.forEach(element => {
|
303
|
-
element.style.display = 'table';
|
304
|
-
});
|
305
|
-
|
306
|
-
globalNavAndTable.forEach(element => {
|
307
|
-
element.style.display = 'none';
|
308
|
-
});
|
309
|
-
}
|
310
|
-
|
311
|
-
</script>
|
@@ -1,149 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Playbook
|
4
|
-
module PbDocs
|
5
|
-
class KitApi < Playbook::KitBase
|
6
|
-
prop :kit, type: Playbook::Props::String, required: true
|
7
|
-
|
8
|
-
def kit_local_props
|
9
|
-
local = []
|
10
|
-
kit_props.each do |key, value|
|
11
|
-
value.kit != Playbook::KitBase && local.push({ key: key, value: value })
|
12
|
-
end
|
13
|
-
local
|
14
|
-
end
|
15
|
-
|
16
|
-
def padding_margin_values
|
17
|
-
%w[none xxs xs sm md lg xl]
|
18
|
-
end
|
19
|
-
|
20
|
-
def local_prop_data
|
21
|
-
local_props = {}
|
22
|
-
|
23
|
-
kit_local_props.each do |key, _value|
|
24
|
-
name = key[:value].instance_variable_get(:@name)
|
25
|
-
type = key[:value].class.to_s.split("::").last
|
26
|
-
default = key[:value].instance_variable_get(:@default)
|
27
|
-
values = key[:value].instance_variable_get(:@values)
|
28
|
-
local_props[name.to_sym] = { "type": type, "default": default, "values": values }
|
29
|
-
end
|
30
|
-
local_props
|
31
|
-
end
|
32
|
-
|
33
|
-
def kit_global_props
|
34
|
-
global_props = {}
|
35
|
-
global_prop_names = []
|
36
|
-
global_prop_values = {}
|
37
|
-
global_props_with_values = {}
|
38
|
-
global_props_without_values = []
|
39
|
-
parent_child_object = {}
|
40
|
-
updated_global_props_with_values = {}
|
41
|
-
|
42
|
-
# extracts the modules from kit_base.rb, which is where we import all the global props that we inject into every rails kit
|
43
|
-
pb_module = Playbook::KitBase.included_modules.select { |mod| mod.to_s.include?("Playbook::") }
|
44
|
-
|
45
|
-
# loops through the kits and extracts each prop with its values and pushes that to the global_props hash
|
46
|
-
kit_props.each do |key, value|
|
47
|
-
value.kit == Playbook::KitBase && global_props[key.to_sym] = value
|
48
|
-
end
|
49
|
-
|
50
|
-
# loops through the global_props and extracts the name of each prop and pushes that to global_prop_names array
|
51
|
-
global_props.each do |name, _values|
|
52
|
-
global_prop_names.push(name)
|
53
|
-
end
|
54
|
-
|
55
|
-
# Loops through each module in pb_module and searches for methods that end in _values, as these methods hold the values for each prop
|
56
|
-
# we then save the values and type and push that to the values hash as a key value pair
|
57
|
-
pb_module.each do |mod|
|
58
|
-
mod.instance_methods.each do |method_name|
|
59
|
-
next unless method_name.to_s.end_with?("_values")
|
60
|
-
|
61
|
-
value = send(method_name)
|
62
|
-
type = value.class
|
63
|
-
global_prop_values[method_name.to_s.chomp("_values").to_sym] = { "type": type, "values": value }
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
# loops through the global_prop_names array
|
68
|
-
# then loops through the global_prop_values hash and extracts the values that have the same name found in global_prop_names
|
69
|
-
# this loop helps ensure only global props values are actually extracted, as there could be other methods that end in _values in the modules we are iterating over
|
70
|
-
# these verified global props with values are then pushed to the global_props_with_values hash
|
71
|
-
global_prop_names.each do |name, _prop|
|
72
|
-
global_prop_values.each do |key, value|
|
73
|
-
global_props_with_values[key] = value if key == name
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
# now we grab all the global_prop_names that do not have a matching key in global_prop_values.
|
78
|
-
# This gives us any global prop that did not have any predefined value. like classname and dark
|
79
|
-
global_props_without_values = global_prop_names - global_prop_values.keys
|
80
|
-
|
81
|
-
# Loops through each module in pb_module and searches for methods that end in _options, as these methods hold all the props in the module
|
82
|
-
# save the prop names prop values and and parent module name to parent_child_object hash
|
83
|
-
# this is a comprehensive list of all parent module and children props for edge cases like spacing.rb, that is not named after the props it represents
|
84
|
-
pb_module.each do |mod|
|
85
|
-
mod.instance_methods.each do |method_name|
|
86
|
-
next unless method_name.to_s.end_with?("_options")
|
87
|
-
|
88
|
-
props = send(method_name)
|
89
|
-
parent = mod.to_s.split("::").last
|
90
|
-
values = send("#{parent.underscore}_values")
|
91
|
-
parent_child_object[parent] = { "props": props, "values": values }
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
# loops through each object in parent_child_object and extracts its children (props and values)
|
96
|
-
# loops through each child and extracts the individual props
|
97
|
-
# Checks if the props match any of the props in global_props_without_values
|
98
|
-
# if it does, then we push that prop to global_props_with_values hash
|
99
|
-
# This extracts the props in the spacing.rb file and any file that is not named after the props it represents
|
100
|
-
parent_child_object.each do |_parent, children|
|
101
|
-
children.each do |_child, props|
|
102
|
-
props.each do |prop, _value|
|
103
|
-
type = children[:values].class
|
104
|
-
values = children[:values]
|
105
|
-
global_props_with_values[prop] = { "type": type, "values": values } if global_props_without_values.include?(prop)
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
109
|
-
|
110
|
-
# loop through the global_props hash and the global_props_with_values hash.
|
111
|
-
# extract the props from global_props that are not found in global_props_with_values into updated_global_props_with_values
|
112
|
-
# This is the last piece that grabs the global props that did not have values at all, like classname and dark, and adds it to our hash
|
113
|
-
global_props.each do |prop, value|
|
114
|
-
unless global_props_with_values.include?(prop)
|
115
|
-
type = value.class.to_s.split("::").last
|
116
|
-
updated_global_props_with_values[prop] = { "type": type }
|
117
|
-
end
|
118
|
-
end
|
119
|
-
|
120
|
-
# Merge updated_global_props_with_values into global_props_with_values
|
121
|
-
# global_props_with_values will now hold all the global props thier values and type
|
122
|
-
global_props_with_values.merge!(updated_global_props_with_values)
|
123
|
-
|
124
|
-
global_props_with_values
|
125
|
-
end
|
126
|
-
|
127
|
-
def global_prop_data
|
128
|
-
global_props = {}
|
129
|
-
|
130
|
-
kit_global_props.each do |key, value|
|
131
|
-
type = value[:type]
|
132
|
-
values = value[:values]
|
133
|
-
global_props[key] = { "type": type, "values": values }
|
134
|
-
end
|
135
|
-
global_props
|
136
|
-
end
|
137
|
-
|
138
|
-
def kit_props
|
139
|
-
kit_class.props
|
140
|
-
end
|
141
|
-
|
142
|
-
private
|
143
|
-
|
144
|
-
def kit_class
|
145
|
-
@kit_class ||= Playbook::KitResolver.resolve(kit.to_s)
|
146
|
-
end
|
147
|
-
end
|
148
|
-
end
|
149
|
-
end
|