playbook_ui_docs 13.13.0 → 13.14.0.pre.alpha.play1101betaicons1798
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/pb_beta_icon/docs/_description.md +1 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_footer.md +2 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_animate.html.erb +3 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_animate.jsx +35 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_animate.md +1 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_border.html.erb +1 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_border.jsx +19 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_border_swift.md +7 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_custom.html.erb +16 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_custom.jsx +34 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_custom.md +19 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_default.html.erb +1 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_default.jsx +17 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_default_swift.md +7 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_fa_kit.html.erb +1 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_fa_kit.jsx +21 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_fa_kit.md +7 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_flip.html.erb +3 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_flip.jsx +33 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_flip_swift.md +11 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_props_swift.md +8 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_pull.html.erb +2 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_pull.jsx +26 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_pull.md +1 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_rotate.html.erb +3 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_rotate.jsx +33 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_rotate_swift.md +11 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_sizes.html.erb +16 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_sizes.jsx +133 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_sizes_swift.md +46 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/example.yml +30 -0
- data/app/pb_kits/playbook/pb_beta_icon/docs/index.js +9 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_props_swift.md +11 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_reaction_swift.md +26 -0
- data/app/pb_kits/playbook/pb_button/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_card/docs/_card_background.jsx +5 -4
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default_swift.md +14 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_props_swift.md +6 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail_swift.md +14 -0
- data/app/pb_kits/playbook/pb_contact/docs/example.yml +6 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_alignment_swift.md +11 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_default_swift.md +16 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_props_swift.md +8 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_unstyled_swift.md +11 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_variants_swift.md +14 -0
- data/app/pb_kits/playbook/pb_date/docs/example.yml +7 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_custom.html.erb +29 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_custom.jsx +34 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_custom.md +7 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_custom_override.html.erb +28 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_custom_override.jsx +34 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_custom_override.md +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_react.jsx +2 -2
- data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +4 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_default_swift.md +11 -0
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height.jsx +8 -4
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height_placement.jsx +8 -4
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_props_table.md +13 -0
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_scrollable.jsx +4 -2
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_sizes_swift.md +18 -0
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status.jsx +1 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status_swift.md +14 -0
- data/app/pb_kits/playbook/pb_dialog/docs/example.yml +7 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_default_swift.md +18 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_emphasis_swift.md +34 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_link_swift.md +18 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_modified_swift.md +13 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_props_swift.md +14 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/example.yml +6 -0
- data/app/pb_kits/playbook/pb_person/docs/_person_default_swift.md +8 -0
- data/app/pb_kits/playbook/pb_person/docs/_person_props_swift.md +5 -0
- data/app/pb_kits/playbook/pb_person/docs/example.yml +4 -0
- data/app/pb_kits/playbook/pb_select/docs/_select_default_swift.md +15 -0
- data/app/pb_kits/playbook/pb_select/docs/_select_error_swift.md +18 -0
- data/app/pb_kits/playbook/pb_select/docs/_select_props_table.md +8 -0
- data/app/pb_kits/playbook/pb_select/docs/example.yml +5 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_background_options.html.erb +2 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_background_options.jsx +25 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_color_options.html.erb +3 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_color_options.jsx +31 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_default.html.erb +6 -8
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_default.jsx +19 -6
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_hide.html.erb +4 -1
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_hide.jsx +30 -5
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_number_config.html.erb +6 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_number_config.jsx +58 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_size_options.html.erb +16 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_size_options.jsx +60 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/example.yml +12 -5
- data/app/pb_kits/playbook/pb_star_rating/docs/index.js +8 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_horizontal_swift.md +37 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_props_table.md +10 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_size_swift.md +35 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_text_only_swift.md +27 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_vertical_size_swift.md +35 -0
- data/app/pb_kits/playbook/pb_user/docs/example.yml +7 -0
- data/dist/menu.yml +240 -168
- data/dist/playbook-doc.js +8 -8
- metadata +81 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 807255513e3c3df97b6943c90a7c97ee2d52a820772d1e6ffc6fe7e770def35f
|
4
|
+
data.tar.gz: b20c6dcb27a67ffb4c88a9b1ebccd07146efe47ca8fba78d56e3b2f02e8a12a4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '0793ef8c135f8a869c53f7a95972bfcf38aa0574128d2eb85f24b8a01ce9c13cb8da5b1b43779607cdfb41cef3414cc7c2ab2b91dea826e6caeb27aefa6a2ba8'
|
7
|
+
data.tar.gz: f10c164f35d866686a4d3467df8d85e5a7aeaa0dcb2568d22f4892358a5364fffe08fc36edb2b7072952d4f6e779c72611f7506a60516a2f3dc5768b7bc0dbff
|
@@ -0,0 +1 @@
|
|
1
|
+
An icon is a graphic symbol that represents an object (ie a file) or a function. They can be used to give the user feedback.
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
const IconAnimate = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<p>
|
9
|
+
<Icon
|
10
|
+
fixedWidth
|
11
|
+
icon="spinner"
|
12
|
+
size="2x"
|
13
|
+
spin
|
14
|
+
{...props}
|
15
|
+
/>
|
16
|
+
{' '}
|
17
|
+
<span>{'Spin'}</span>
|
18
|
+
</p>
|
19
|
+
<br />
|
20
|
+
<p>
|
21
|
+
<Icon
|
22
|
+
fixedWidth
|
23
|
+
icon="spinner"
|
24
|
+
pulse
|
25
|
+
size="2x"
|
26
|
+
{...props}
|
27
|
+
/>
|
28
|
+
{' '}
|
29
|
+
<span>{'Pulse'}</span>
|
30
|
+
</p>
|
31
|
+
</div>
|
32
|
+
)
|
33
|
+
}
|
34
|
+
|
35
|
+
export default IconAnimate
|
@@ -0,0 +1 @@
|
|
1
|
+
A spinner icon can show a user that something is loading or saving.
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= pb_rails("icon", props: { icon: "user", border: true, fixed_width: true, size: "2x" }) %>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
const IconBorder = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<Icon
|
9
|
+
border
|
10
|
+
fixedWidth
|
11
|
+
icon="user"
|
12
|
+
size="2x"
|
13
|
+
{...props}
|
14
|
+
/>
|
15
|
+
</div>
|
16
|
+
)
|
17
|
+
}
|
18
|
+
|
19
|
+
export default IconBorder
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<%# SVG fill color inherited from css color property %>
|
2
|
+
<div class="icon-wrapper">
|
3
|
+
|
4
|
+
<% svg_url = "https://upload.wikimedia.org/wikipedia/commons/3/3b/Wrench_font_awesome.svg" %>
|
5
|
+
<p><%= pb_rails("icon", props: { custom_icon: svg_url } ) %></p>
|
6
|
+
<p><%= pb_rails("icon", props: { rotation: 90, custom_icon: svg_url, size: "2x" } ) %></p>
|
7
|
+
<p><%= pb_rails("icon", props: { spin: true, custom_icon: svg_url, size: "3x" } ) %></p>
|
8
|
+
<p><%= pb_rails("icon", props: { size: "5x", custom_icon: svg_url } ) %></p>
|
9
|
+
<p><%= pb_rails("icon", props: { flip: "horizontal", size: "5x", custom_icon: svg_url } ) %></p>
|
10
|
+
|
11
|
+
<%= pb_rails("body", props: {
|
12
|
+
text: "Custom icons are compatible with other icon props (size, rotation,
|
13
|
+
spin, flip, etc). Their SVG fill colors will be inherited from
|
14
|
+
parent element's css color properties."
|
15
|
+
} ) %>
|
16
|
+
</div>
|
@@ -0,0 +1,34 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import { Icon } from '../../'
|
3
|
+
|
4
|
+
// import Icons as config from 'power-icons'
|
5
|
+
const config = {
|
6
|
+
moon: (
|
7
|
+
<svg
|
8
|
+
ariaHidden="true"
|
9
|
+
focusable="false"
|
10
|
+
role="img"
|
11
|
+
viewBox="0 0 512 512"
|
12
|
+
xmlns="http://www.w3.org/2000/svg"
|
13
|
+
>
|
14
|
+
<path
|
15
|
+
d="M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 7.1 5.8 12 12 12 2.4 0 4.9-.7 7.1-2.4L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm16 352c0 8.8-7.2 16-16 16H288l-12.8 9.6L208 428v-60H64c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16h384c8.8 0 16 7.2 16 16v288zM336 184h-56v-56c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16v56h-56c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h56v56c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-56h56c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16z"
|
16
|
+
fill="currentColor"
|
17
|
+
/>
|
18
|
+
</svg>
|
19
|
+
),
|
20
|
+
}
|
21
|
+
|
22
|
+
const IconCustom = (props) => {
|
23
|
+
return (
|
24
|
+
<div>
|
25
|
+
<Icon
|
26
|
+
customIcon={config.moon}
|
27
|
+
size="7x"
|
28
|
+
{...props}
|
29
|
+
/>
|
30
|
+
</div>
|
31
|
+
)
|
32
|
+
}
|
33
|
+
|
34
|
+
export default IconCustom
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# Tips for Custom Icons
|
2
|
+
|
3
|
+
When using custom icons it is important to introduce a "clean" SVG. In order to ensure these custom icons perform as intended within your kit(s), ensure these things have been modified from the original SVG markup:
|
4
|
+
|
5
|
+
Attributes must be React compatible e.g. <code>xmlns:xlink</code> should be <code>xmlnsXlink</code> and so on. <strong>There should be no hyphenated attributes and no semi-colons!.</strong>
|
6
|
+
|
7
|
+
Fill colors with regards to <code>g</code> or <code>path</code> nodes, e.g. <code>fill="black"</code>, should be replaced with <code>currentColor</code> ala <code>fill="currentColor"</code>. Your mileage may vary depending on the complexity of your SVG.
|
8
|
+
|
9
|
+
Pay attention to your custom icon's dimensions and `viewBox` attribute. It is best to use a `viewBox="0 0 512 512"` starting point __when designing instead of trying to retrofit the viewbox afterwards__!
|
10
|
+
|
11
|
+
You must source *your own SVG into component/view* you are working on. This can easily be done in programmatic and maintainable ways.
|
12
|
+
|
13
|
+
### React
|
14
|
+
|
15
|
+
So long as you have a valid React `<SVG>` node, you can send it as the `customIcon` prop and the kit will take care of the rest.
|
16
|
+
|
17
|
+
### Rails
|
18
|
+
|
19
|
+
Some Rails applications use only webpack(er) which means using `image_url` will be successful over `image_path` in most cases especially development where Webpack Dev Server is serving assets over HTTP. Rails applications still using Asset Pipeline may use `image_path` or `image_url`. Of course, YMMV depending on any custom configurations in your Rails application.
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= pb_rails("icon", props: { icon: "user", fixed_width: true }) %>
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= pb_rails("icon", props: { icon: "powergon", font_style: "fak", fixed_width: true, size: "5x" }) %>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
import '../../../../../../playbook-website/app/javascript/scripts/custom-icons'
|
6
|
+
|
7
|
+
const IconFaKit = (props) => {
|
8
|
+
return (
|
9
|
+
<div>
|
10
|
+
<Icon
|
11
|
+
{...props}
|
12
|
+
fixedWidth
|
13
|
+
fontStyle="fak"
|
14
|
+
icon="powergon"
|
15
|
+
size="5x"
|
16
|
+
/>
|
17
|
+
</div>
|
18
|
+
)
|
19
|
+
}
|
20
|
+
|
21
|
+
export default IconFaKit
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Our Icon kit allows integration with [FontAwesome's custom kit](https://fontawesome.com/v6/docs/web/setup/use-kit#contentHeader) functionality out-of-the-box.
|
2
|
+
|
3
|
+
All you need to do is 3 things:
|
4
|
+
1) Import your custom-icon.js file as outlined in the FontAwesome docs.
|
5
|
+
2) Use our fontStyle prop called "fak" so that our Icon component knows you are using a "fa-kit" icon.
|
6
|
+
3) Pass in your FaKit name as a string to our icon prop (This is the name that you designated when you uploaded the icon on their site).
|
7
|
+
|
@@ -0,0 +1,3 @@
|
|
1
|
+
<%= pb_rails("icon", props: { icon: "question-circle", fixed_width: true, flip: "horizontal", size: "2x" }) %>
|
2
|
+
<%= pb_rails("icon", props: { icon: "question-circle", fixed_width: true, flip: "vertical", size: "2x" }) %>
|
3
|
+
<%= pb_rails("icon", props: { icon: "question-circle", fixed_width: true, flip: "both", size: "2x" }) %>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
const IconFlip = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<Icon
|
9
|
+
fixedWidth
|
10
|
+
flip="horizontal"
|
11
|
+
icon="question-circle"
|
12
|
+
size="2x"
|
13
|
+
{...props}
|
14
|
+
/>
|
15
|
+
<Icon
|
16
|
+
fixedWidth
|
17
|
+
flip="vertical"
|
18
|
+
icon="question-circle"
|
19
|
+
size="2x"
|
20
|
+
{...props}
|
21
|
+
/>
|
22
|
+
<Icon
|
23
|
+
fixedWidth
|
24
|
+
flip="both"
|
25
|
+
icon="question-circle"
|
26
|
+
size="2x"
|
27
|
+
{...props}
|
28
|
+
/>
|
29
|
+
</div>
|
30
|
+
)
|
31
|
+
}
|
32
|
+
|
33
|
+
export default IconFlip
|
@@ -0,0 +1,11 @@
|
|
1
|
+
![icon-flipped](https://github.com/powerhome/playbook/assets/92755007/2776fb83-942d-4a38-9dff-9dcb73940dfe)
|
2
|
+
|
3
|
+
```swift
|
4
|
+
|
5
|
+
HStack(spacing: Spacing.xSmall) {
|
6
|
+
PbBetaIcon(FontAwesome.questionCircle, flipped: [.horizontal])
|
7
|
+
PbBetaIcon(FontAwesome.questionCircle, flipped: [.vertical])
|
8
|
+
PbBetaIcon(FontAwesome.questionCircle, flipped: [.horizontal, .vertical])
|
9
|
+
}
|
10
|
+
|
11
|
+
```
|
@@ -0,0 +1,8 @@
|
|
1
|
+
### Props
|
2
|
+
| Name | Type | Description | Default | Values |
|
3
|
+
| --- | ----------- | --------- | --------- | --------- |
|
4
|
+
| **Icon** | `PlaybookGenericIcon` | Sets the kit's Icon | | |
|
5
|
+
| **Size** | `IconSize` | Changes the size of the Icon | `.x1` | `xSmall` `small` `large` `x1` `x2` `x3` `x4` `x5` `x6` `x7` `x8` `x9` `x10` |
|
6
|
+
| **Rotation** | `IconRotation` | Rotates the Icon | `.zero` | `.zero` `.right` `.straight` `.obtuse` |
|
7
|
+
| **Border** | `Bool` | Adds a border | `false` | `true` `false` |
|
8
|
+
| **Flipped** | `[Axis]` | Flips the Icon | `nil` | `[.horizontal]` `[.vertical]` `[.horizontal, .vertical]` |
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
const IconPull = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<Icon
|
9
|
+
fixedWidth
|
10
|
+
icon="arrow-left"
|
11
|
+
pull="left"
|
12
|
+
size="2x"
|
13
|
+
{...props}
|
14
|
+
/>
|
15
|
+
<Icon
|
16
|
+
fixedWidth
|
17
|
+
icon="arrow-right"
|
18
|
+
pull="right"
|
19
|
+
size="2x"
|
20
|
+
{...props}
|
21
|
+
/>
|
22
|
+
</div>
|
23
|
+
)
|
24
|
+
}
|
25
|
+
|
26
|
+
export default IconPull
|
@@ -0,0 +1 @@
|
|
1
|
+
Icon Pull can be used to indicate that the user can perform a pull action.
|
@@ -0,0 +1,3 @@
|
|
1
|
+
<%= pb_rails("icon", props: { icon: "user", fixed_width: true, rotation: 90, size: "2x" }) %>
|
2
|
+
<%= pb_rails("icon", props: { icon: "user", fixed_width: true, rotation: 180, size: "2x" }) %>
|
3
|
+
<%= pb_rails("icon", props: { icon: "user", fixed_width: true, rotation: 270, size: "2x" }) %>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
const IconRotate = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<Icon
|
9
|
+
fixedWidth
|
10
|
+
icon="user"
|
11
|
+
rotation={90}
|
12
|
+
size="2x"
|
13
|
+
{...props}
|
14
|
+
/>
|
15
|
+
<Icon
|
16
|
+
fixedWidth
|
17
|
+
icon="user"
|
18
|
+
rotation={180}
|
19
|
+
size="2x"
|
20
|
+
{...props}
|
21
|
+
/>
|
22
|
+
<Icon
|
23
|
+
fixedWidth
|
24
|
+
icon="user"
|
25
|
+
rotation={270}
|
26
|
+
size="2x"
|
27
|
+
{...props}
|
28
|
+
/>
|
29
|
+
</div>
|
30
|
+
)
|
31
|
+
}
|
32
|
+
|
33
|
+
export default IconRotate
|
@@ -0,0 +1,11 @@
|
|
1
|
+
![icon-rotate](https://github.com/powerhome/playbook/assets/92755007/29a6c127-a8a0-4dd9-a8cb-6401f772f11e)
|
2
|
+
|
3
|
+
```swift
|
4
|
+
|
5
|
+
HStack(spacing: Spacing.xSmall) {
|
6
|
+
PbBetaIcon(FontAwesome.user, rotation: .right)
|
7
|
+
PbBetaIcon(FontAwesome.user, rotation: .zero)
|
8
|
+
PbBetaIcon(FontAwesome.user, rotation: .obtuse)
|
9
|
+
}
|
10
|
+
|
11
|
+
```
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "lg" }) %> <span>Large</span></p>
|
2
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "sm" }) %> <span>Small</span></p>
|
3
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "xs" }) %> <span>XSmall</span></p>
|
4
|
+
|
5
|
+
<br/><br/>
|
6
|
+
|
7
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "1x" }) %> <span>1x</span></p>
|
8
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "2x" }) %> <span>2x</span></p>
|
9
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "3x" }) %> <span>3x</span></p>
|
10
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "4x" }) %> <span>4x</span></p>
|
11
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "5x" }) %> <span>5x</span></p>
|
12
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "6x" }) %> <span>6x</span></p>
|
13
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "7x" }) %> <span>7x</span></p>
|
14
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "8x" }) %> <span>8x</span></p>
|
15
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "9x" }) %> <span>9x</span></p>
|
16
|
+
<p><%= pb_rails("icon", props: { icon: "user", size: "10x" }) %> <span>10x</span></p>
|
@@ -0,0 +1,133 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Icon from '../_icon'
|
4
|
+
|
5
|
+
const IconSizes = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<p>
|
9
|
+
<Icon
|
10
|
+
icon="user"
|
11
|
+
size="lg"
|
12
|
+
{...props}
|
13
|
+
/>
|
14
|
+
{' '}
|
15
|
+
<span>{'Large'}</span>
|
16
|
+
</p>
|
17
|
+
<p>
|
18
|
+
<Icon
|
19
|
+
icon="user"
|
20
|
+
size="sm"
|
21
|
+
{...props}
|
22
|
+
/>
|
23
|
+
{' '}
|
24
|
+
<span>{'Small'}</span>
|
25
|
+
</p>
|
26
|
+
<p>
|
27
|
+
<Icon
|
28
|
+
icon="user"
|
29
|
+
size="xs"
|
30
|
+
{...props}
|
31
|
+
/>
|
32
|
+
{' '}
|
33
|
+
<span>{'XSmall'}</span>
|
34
|
+
</p>
|
35
|
+
|
36
|
+
<br />
|
37
|
+
<br />
|
38
|
+
|
39
|
+
<p>
|
40
|
+
<Icon
|
41
|
+
icon="user"
|
42
|
+
size="1x"
|
43
|
+
{...props}
|
44
|
+
/>
|
45
|
+
{' '}
|
46
|
+
<span>{'1x'}</span>
|
47
|
+
</p>
|
48
|
+
<p>
|
49
|
+
<Icon
|
50
|
+
icon="user"
|
51
|
+
size="2x"
|
52
|
+
{...props}
|
53
|
+
/>
|
54
|
+
{' '}
|
55
|
+
<span>{'2x'}</span>
|
56
|
+
</p>
|
57
|
+
<p>
|
58
|
+
<Icon
|
59
|
+
icon="user"
|
60
|
+
size="3x"
|
61
|
+
{...props}
|
62
|
+
/>
|
63
|
+
{' '}
|
64
|
+
<span>{'3x'}</span>
|
65
|
+
</p>
|
66
|
+
<p>
|
67
|
+
<Icon
|
68
|
+
icon="user"
|
69
|
+
size="4x"
|
70
|
+
{...props}
|
71
|
+
/>
|
72
|
+
{' '}
|
73
|
+
<span>{'4x'}</span>
|
74
|
+
</p>
|
75
|
+
<p>
|
76
|
+
<Icon
|
77
|
+
icon="user"
|
78
|
+
size="5x"
|
79
|
+
{...props}
|
80
|
+
/>
|
81
|
+
{' '}
|
82
|
+
<span>{'5x'}</span>
|
83
|
+
</p>
|
84
|
+
<p>
|
85
|
+
<Icon
|
86
|
+
icon="user"
|
87
|
+
size="6x"
|
88
|
+
{...props}
|
89
|
+
/>
|
90
|
+
{' '}
|
91
|
+
<span>{'6x'}</span>
|
92
|
+
</p>
|
93
|
+
<p>
|
94
|
+
<Icon
|
95
|
+
icon="user"
|
96
|
+
size="7x"
|
97
|
+
{...props}
|
98
|
+
/>
|
99
|
+
{' '}
|
100
|
+
<span>{'7x'}</span>
|
101
|
+
</p>
|
102
|
+
<p>
|
103
|
+
<Icon
|
104
|
+
icon="user"
|
105
|
+
size="8x"
|
106
|
+
{...props}
|
107
|
+
/>
|
108
|
+
{' '}
|
109
|
+
<span>{'8x'}</span>
|
110
|
+
</p>
|
111
|
+
<p>
|
112
|
+
<Icon
|
113
|
+
icon="user"
|
114
|
+
size="9x"
|
115
|
+
{...props}
|
116
|
+
/>
|
117
|
+
{' '}
|
118
|
+
<span>{'9x'}</span>
|
119
|
+
</p>
|
120
|
+
<p>
|
121
|
+
<Icon
|
122
|
+
icon="user"
|
123
|
+
size="10x"
|
124
|
+
{...props}
|
125
|
+
/>
|
126
|
+
{' '}
|
127
|
+
<span>{'10x'}</span>
|
128
|
+
</p>
|
129
|
+
</div>
|
130
|
+
)
|
131
|
+
}
|
132
|
+
|
133
|
+
export default IconSizes
|
@@ -0,0 +1,46 @@
|
|
1
|
+
![icon-size](https://github.com/powerhome/playbook/assets/92755007/b3aa3933-56b1-4fe4-bb8b-00d786abb23a)
|
2
|
+
|
3
|
+
```swift
|
4
|
+
|
5
|
+
HStack(spacing: Spacing.xSmall) {
|
6
|
+
PbBetaIcon.fontAwesome(.atlas, size: .xSmall)
|
7
|
+
Text("xSmall")
|
8
|
+
|
9
|
+
PbBetaIcon.fontAwesome(.atlas, size: .small)
|
10
|
+
Text("small")
|
11
|
+
|
12
|
+
PbBetaIcon.fontAwesome(.atlas, size: .large)
|
13
|
+
Text("large")
|
14
|
+
|
15
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x1)
|
16
|
+
Text("x1")
|
17
|
+
|
18
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x2)
|
19
|
+
Text("x2")
|
20
|
+
|
21
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x3)
|
22
|
+
Text("x3")
|
23
|
+
|
24
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x4)
|
25
|
+
Text("x4")
|
26
|
+
|
27
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x5)
|
28
|
+
Text("x5")
|
29
|
+
|
30
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x6)
|
31
|
+
Text("x6")
|
32
|
+
|
33
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x7)
|
34
|
+
Text("x7")
|
35
|
+
|
36
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x8)
|
37
|
+
Text("x8")
|
38
|
+
|
39
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x9)
|
40
|
+
Text("x9")
|
41
|
+
|
42
|
+
PbBetaIcon.fontAwesome(.atlas, size: .x10)
|
43
|
+
Text("x10")
|
44
|
+
}
|
45
|
+
|
46
|
+
```
|
@@ -0,0 +1,30 @@
|
|
1
|
+
examples:
|
2
|
+
rails:
|
3
|
+
- icon_default: Icon Default
|
4
|
+
- icon_rotate: Icon Rotate
|
5
|
+
- icon_flip: Icon Flip
|
6
|
+
- icon_animate: Icon Animation
|
7
|
+
- icon_pull: Icon Pull
|
8
|
+
- icon_border: Icon Border
|
9
|
+
- icon_sizes: Icon Sizes
|
10
|
+
- icon_custom: Icon Custom
|
11
|
+
- icon_fa_kit: Icon with FontAwesome Kit
|
12
|
+
|
13
|
+
react:
|
14
|
+
- icon_default: Icon Default
|
15
|
+
- icon_rotate: Icon Rotate
|
16
|
+
- icon_flip: Icon Flip
|
17
|
+
- icon_animate: Icon Animation
|
18
|
+
- icon_pull: Icon Pull
|
19
|
+
- icon_border: Icon Border
|
20
|
+
- icon_sizes: Icon Sizes
|
21
|
+
- icon_custom: Icon Custom
|
22
|
+
- icon_fa_kit: Icon with FontAwesome Kit
|
23
|
+
|
24
|
+
swift:
|
25
|
+
- icon_default_swift: Icon Default
|
26
|
+
- icon_rotate_swift: Icon Rotate
|
27
|
+
- icon_flip_swift: Icon Flip
|
28
|
+
- icon_border_swift: Icon Border
|
29
|
+
- icon_sizes_swift: Icon Sizes
|
30
|
+
- icon_props_swift: Props
|
@@ -0,0 +1,9 @@
|
|
1
|
+
export { default as IconDefault } from './_icon_default.jsx'
|
2
|
+
export { default as IconRotate } from './_icon_rotate.jsx'
|
3
|
+
export { default as IconFlip } from './_icon_flip.jsx'
|
4
|
+
export { default as IconAnimate } from './_icon_animate.jsx'
|
5
|
+
export { default as IconPull } from './_icon_pull.jsx'
|
6
|
+
export { default as IconBorder } from './_icon_border.jsx'
|
7
|
+
export { default as IconSizes } from './_icon_sizes.jsx'
|
8
|
+
export { default as IconCustom } from './_icon_custom.jsx'
|
9
|
+
export { default as IconFaKit} from './_icon_fa_kit.jsx'
|
@@ -9,3 +9,14 @@
|
|
9
9
|
| **Icon** | `PBIcon` | Adds an icon to the Button | `nil` | |
|
10
10
|
| **Icon Position** | `IconPosition` | Adjusts the icon's position | `.left` | `.left` `.right` |
|
11
11
|
| **Action** | `(() -> Void)` | Adds an action for the Button to perform | `{}` | |
|
12
|
+
|
13
|
+
### Reaction Button Props
|
14
|
+
| Name | Type | Description | Default | Values |
|
15
|
+
| --- | ----------- | --------- | --------- | --------- |
|
16
|
+
| **count** | `Int` | Tracks number of times a reaction button has been pressed | `0` | |
|
17
|
+
| **isHighlighted** | `Bool` | Boolean for whether or not a reaction button has a highlight | ` false` | `true` `false` |
|
18
|
+
| **isHovering** | `Bool` | Boolean for whether or not a mouse is hovering over the reaction button | `false` | `true` `false` |
|
19
|
+
| **icon** | `String` | Allows user to use a unicode string for an emoji reaction button | | |
|
20
|
+
| **pbIcon** | `PBIcon` | A PlayBook Icon option for reaction button | | |
|
21
|
+
| **isInteractive** | `Bool` | Boolean for whether or not a reaction button is interactive | `false` | `true` `false` |
|
22
|
+
|