playbook_ui_docs 13.14.0.pre.alpha.PLAY1109bugdisplaypropblocksfontcolor1784 → 13.14.0.pre.alpha.play1101betaicons1798

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_beta_icon/docs/_description.md +1 -0
  3. data/app/pb_kits/playbook/pb_beta_icon/docs/_footer.md +2 -0
  4. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_animate.html.erb +3 -0
  5. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_animate.jsx +35 -0
  6. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_animate.md +1 -0
  7. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_border.html.erb +1 -0
  8. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_border.jsx +19 -0
  9. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_border_swift.md +7 -0
  10. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_custom.html.erb +16 -0
  11. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_custom.jsx +34 -0
  12. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_custom.md +19 -0
  13. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_default.html.erb +1 -0
  14. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_default.jsx +17 -0
  15. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_default_swift.md +7 -0
  16. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_fa_kit.html.erb +1 -0
  17. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_fa_kit.jsx +21 -0
  18. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_fa_kit.md +7 -0
  19. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_flip.html.erb +3 -0
  20. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_flip.jsx +33 -0
  21. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_flip_swift.md +11 -0
  22. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_props_swift.md +8 -0
  23. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_pull.html.erb +2 -0
  24. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_pull.jsx +26 -0
  25. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_pull.md +1 -0
  26. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_rotate.html.erb +3 -0
  27. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_rotate.jsx +33 -0
  28. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_rotate_swift.md +11 -0
  29. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_sizes.html.erb +16 -0
  30. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_sizes.jsx +133 -0
  31. data/app/pb_kits/playbook/pb_beta_icon/docs/_icon_sizes_swift.md +46 -0
  32. data/app/pb_kits/playbook/pb_beta_icon/docs/example.yml +30 -0
  33. data/app/pb_kits/playbook/pb_beta_icon/docs/index.js +9 -0
  34. data/app/pb_kits/playbook/pb_button/docs/_button_props_swift.md +11 -0
  35. data/app/pb_kits/playbook/pb_button/docs/_button_reaction_swift.md +26 -0
  36. data/app/pb_kits/playbook/pb_button/docs/example.yml +1 -0
  37. data/app/pb_kits/playbook/pb_card/docs/_card_background.jsx +5 -4
  38. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_default_swift.md +11 -0
  39. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height.jsx +8 -4
  40. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height_placement.jsx +8 -4
  41. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_props_table.md +13 -0
  42. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_scrollable.jsx +4 -2
  43. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_sizes_swift.md +18 -0
  44. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status.jsx +1 -1
  45. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status_swift.md +14 -0
  46. data/app/pb_kits/playbook/pb_dialog/docs/example.yml +7 -0
  47. data/app/pb_kits/playbook/pb_select/docs/_select_default_swift.md +15 -0
  48. data/app/pb_kits/playbook/pb_select/docs/_select_error_swift.md +18 -0
  49. data/app/pb_kits/playbook/pb_select/docs/_select_props_table.md +8 -0
  50. data/app/pb_kits/playbook/pb_select/docs/example.yml +5 -0
  51. data/dist/playbook-doc.js +8 -8
  52. metadata +42 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 51b7bcf5678da511fa989e97e73af01a5ccd0e2e7fc9d996c5a4bbc2ad0f7649
4
- data.tar.gz: 4279f9fa236b5edadcf8bb1b250499c4065c127bc72dcfb26991f91c048c3d04
3
+ metadata.gz: 807255513e3c3df97b6943c90a7c97ee2d52a820772d1e6ffc6fe7e770def35f
4
+ data.tar.gz: b20c6dcb27a67ffb4c88a9b1ebccd07146efe47ca8fba78d56e3b2f02e8a12a4
5
5
  SHA512:
6
- metadata.gz: 9788b53df703883f69bd9624f3c1801f8bab4f8aefc2ea05c4903c15595df9808bd411d9619b1d96d6e5ddcafea011ed6cc5d7303bc79dbe67dde3e404163389
7
- data.tar.gz: 33c932b84109bb6cc9cd2b21fa9f52c276adf8cc70a09fcad8db64f9fa81f37f99af89bdfc03941f8dbe5fcf680a702b7734774679d06d21d08a47bd3cca705e
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,2 @@
1
+ ### Things to Avoid
2
+ Be careful of use cases where there should be a clickable area around the icon. Icon Circle Button may need to be used instead.
@@ -0,0 +1,3 @@
1
+ <p><%= pb_rails("icon", props: { icon: "spinner", spin: true, fixed_width: true, size: "2x" }) %> <span>Spin</span></p>
2
+ <br/>
3
+ <p><%= pb_rails("icon", props: { icon: "spinner", pulse: true, fixed_width: true, size: "2x" }) %> <span>Pulse</span></p>
@@ -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,7 @@
1
+ ![card-border](https://github.com/powerhome/playbook/assets/92755007/442640c8-1b4f-455d-8517-5ca5cd120664)
2
+
3
+ ```swift
4
+
5
+ PbBetaIcon(FontAwesome.user, border: true)
6
+
7
+ ```
@@ -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,17 @@
1
+ import React from 'react'
2
+
3
+ import Icon from '../_icon'
4
+
5
+ const IconDefault = (props) => {
6
+ return (
7
+ <div>
8
+ <Icon
9
+ fixedWidth
10
+ icon="user"
11
+ {...props}
12
+ />
13
+ </div>
14
+ )
15
+ }
16
+
17
+ export default IconDefault
@@ -0,0 +1,7 @@
1
+ ![card-default](https://github.com/powerhome/playbook/assets/92755007/8c7e5454-1d42-4d13-9107-ffc5773a136a)
2
+
3
+ ```swift
4
+
5
+ PbBetaIcon.fontAwesome(.user, size: .x1)
6
+
7
+ ```
@@ -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,2 @@
1
+ <%= pb_rails("icon", props: { icon: "arrow-left", pull: "left", fixed_width: true, size: "2x" }) %>
2
+ <%= pb_rails("icon", props: { icon: "arrow-right", pull: "right", fixed_width: true, size: "2x" }) %>
@@ -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
+