playbook_ui_docs 12.36.0 → 12.37.0.pre.alpha.svgiconmethods1064

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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_badge/docs/_badge_colors_swift.md +33 -0
  3. data/app/pb_kits/playbook/pb_badge/docs/_badge_default_swift.md +9 -0
  4. data/app/pb_kits/playbook/pb_badge/docs/_badge_notification_swift.md +9 -0
  5. data/app/pb_kits/playbook/pb_badge/docs/_badge_props_swift.md +6 -0
  6. data/app/pb_kits/playbook/pb_badge/docs/_badge_rounded_swift.md +9 -0
  7. data/app/pb_kits/playbook/pb_badge/docs/example.yml +7 -0
  8. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_icons.jsx +15 -4
  9. data/app/pb_kits/playbook/pb_collapsible/docs/example.yml +1 -1
  10. data/app/pb_kits/playbook/pb_icon/docs/_icon_animate.html.erb +1 -0
  11. data/app/pb_kits/playbook/pb_icon/docs/_icon_custom.html.erb +2 -0
  12. data/app/pb_kits/playbook/pb_icon/docs/_icon_svg.html.erb +5 -0
  13. data/app/pb_kits/playbook/pb_icon/docs/example.yml +10 -9
  14. data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav.jsx +59 -79
  15. data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_custom_icons.jsx +4 -6
  16. data/app/pb_kits/playbook/pb_nav/docs/example.yml +1 -1
  17. data/app/pb_kits/playbook/pb_pill/docs/_pill_default_swift.md +5 -0
  18. data/app/pb_kits/playbook/pb_pill/docs/_pill_props_swift.md +5 -0
  19. data/app/pb_kits/playbook/pb_pill/docs/_pill_variants_swift.md +10 -0
  20. data/app/pb_kits/playbook/pb_pill/docs/example.yml +5 -0
  21. data/app/pb_kits/playbook/pb_radio/docs/_radio_alignment_swift.md +16 -0
  22. data/app/pb_kits/playbook/pb_radio/docs/_radio_custom_swift.md +18 -0
  23. data/app/pb_kits/playbook/pb_radio/docs/_radio_default_swift.md +15 -0
  24. data/app/pb_kits/playbook/pb_radio/docs/_radio_error_swift.md +14 -0
  25. data/app/pb_kits/playbook/pb_radio/docs/_radio_orientation_swift.md +15 -0
  26. data/app/pb_kits/playbook/pb_radio/docs/_radio_padding_swift.md +31 -0
  27. data/app/pb_kits/playbook/pb_radio/docs/_radio_props_swift.md +10 -0
  28. data/app/pb_kits/playbook/pb_radio/docs/_radio_spacing_swift.md +36 -0
  29. data/app/pb_kits/playbook/pb_radio/docs/_radio_subtitle_swift.md +13 -0
  30. data/app/pb_kits/playbook/pb_radio/docs/example.yml +11 -0
  31. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_options.html.erb +12 -0
  32. data/app/pb_kits/playbook/pb_text_input/docs/example.yml +1 -0
  33. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align_swift.md +45 -0
  34. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default_swift.md +26 -0
  35. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed_swift.md +25 -0
  36. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_props_swift.md +10 -0
  37. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones_swift.md +67 -0
  38. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_swift.md +19 -0
  39. data/app/pb_kits/playbook/pb_timestamp/docs/example.yml +8 -0
  40. data/dist/playbook-doc.js +9 -9
  41. metadata +32 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 34fca519f08d4f8e30e7a05705bbdfcd2d2e959e5a7afefb4a35ad12a980a0b8
4
- data.tar.gz: 4cc96859dead44d39bb79b69e07a857fcd1701fb06ada07b1dd53267045242c2
3
+ metadata.gz: 320dcb176e88572a505020f6bf955296b12c6022f85165cbeed887d080537ec1
4
+ data.tar.gz: e6660216f9587db018ed8bbfabed4034d2a25e31860df48b247fd85a2715c6c8
5
5
  SHA512:
6
- metadata.gz: b583873803438a86347ba44a611b0404a5a416fcf8265c7c7c3063211a9f88a1becd5061b1e9a5210d7219703da65ae5869578ce420e22a59144972748e6ebb3
7
- data.tar.gz: '079e6a9fd20de83803a6789389029137a611e12675f2066c6f603b3187fd83c684fb0db71dabfc51a95d8358b54bf27ac9f9ac857a58960e1717b33bf1703d39'
6
+ metadata.gz: 24047b8470b70e24cc0ae9a1b019a469d6fc5106616bad904308daabe52a4be068822ae61f5fd3bcf18340c3060d753e2143fa0ac9111cacf2aa2b5d5ef00afe
7
+ data.tar.gz: 7ae61482f5fde0baa7326febb425392ea4b811c772d33d66f5dced9ad80fed507eb333f8fec42f2649cc5de640c183730371befa0b59f090e04f0cb19744ef4f
@@ -0,0 +1,33 @@
1
+ ![badge-colors](https://github.com/powerhome/playbook/assets/92755007/52ce34ef-eb0d-48c0-9232-89edfff60cef)
2
+
3
+ ```swift
4
+ HStack {
5
+ PBBadge(text: "1", rounded: true, variant: .chat)
6
+ PBBadge(text: "4", variant: .chat)
7
+ PBBadge(text: "1000", variant: .chat)
8
+
9
+ PBBadge(text: "1", rounded: true, variant: .error)
10
+ PBBadge(text: "4", variant: .error)
11
+ PBBadge(text: "1000", variant: .error)
12
+
13
+ PBBadge(text: "1", rounded: true, variant: .info)
14
+ PBBadge(text: "4", variant: .info)
15
+ PBBadge(text: "1000", variant: .info)
16
+
17
+ PBBadge(text: "1", rounded: true, variant: .neutral)
18
+ PBBadge(text: "4", variant: .neutral)
19
+ PBBadge(text: "1000", variant: .neutral)
20
+
21
+ PBBadge(text: "1", rounded: true, variant: .primary)
22
+ PBBadge(text: "4", variant: .primary)
23
+ PBBadge(text: "1000", variant: .primary)
24
+
25
+ PBBadge(text: "1", rounded: true, variant: .success)
26
+ PBBadge(text: "4", variant: .success)
27
+ PBBadge(text: "1000", variant: .success)
28
+
29
+ PBBadge(text: "1", rounded: true, variant: .warning)
30
+ PBBadge(text: "4", variant: .warning)
31
+ PBBadge(text: "1000", variant: .warning)
32
+ }
33
+ ```
@@ -0,0 +1,9 @@
1
+ ![badge-rectangle](https://github.com/powerhome/playbook/assets/92755007/04188c68-84f0-475b-9764-7b9a325f73da)
2
+
3
+ ```swift
4
+ HStack {
5
+ PBBadge(text: "+1", variant: .primary)
6
+ PBBadge(text: "+4", variant: .primary)
7
+ PBBadge(text: "+1000", variant: .primary)
8
+ }
9
+ ```
@@ -0,0 +1,9 @@
1
+ ![badge-chat-notification](https://github.com/powerhome/playbook/assets/92755007/f769c3bc-6a63-465d-8538-3efb5f3ec0d3)
2
+
3
+ ```swift
4
+ HStack {
5
+ PBBadge(text: "1", rounded: true, variant: .chat)
6
+ PBBadge(text: "4", variant: .chat)
7
+ PBBadge(text: "1000", variant: .chat)
8
+ }
9
+ ```
@@ -0,0 +1,6 @@
1
+ ### Props
2
+ | Name | Type | Description | Default | Values |
3
+ | --- | ----------- | --------- | --------- | --------- |
4
+ | **text** | `String` | Specifies the value of the Badge | | |
5
+ | **rounded** | `Bool` | Displays the rounded variant | `false` | |
6
+ | **variant** | `Variant` | Changes the color of the Badge | `.primary` | `.chat` `.error` `.info` `.neutral` `.primary` `.success` `.warning` |
@@ -0,0 +1,9 @@
1
+ ![badge-rounded](https://github.com/powerhome/playbook/assets/92755007/775a906f-0108-4ee1-a277-e7b9f2715a2b)
2
+
3
+ ```swift
4
+ HStack {
5
+ PBBadge(text: "+1", rounded: true, variant: .primary)
6
+ PBBadge(text: "+4", rounded: true, variant: .primary)
7
+ PBBadge(text: "+1000", rounded: true, variant: .primary)
8
+ }
9
+ ```
@@ -10,3 +10,10 @@ examples:
10
10
  - badge_rounded: Rounded
11
11
  - badge_colors: Colors
12
12
  - badge_notification: Notification
13
+
14
+ swift:
15
+ - badge_default_swift: Rectangle
16
+ - badge_rounded_swift: Rounded
17
+ - badge_colors_swift: Colors
18
+ - badge_notification_swift: Notification
19
+ - badge_props_swift: ""
@@ -1,8 +1,17 @@
1
1
  import React from 'react'
2
- import { Collapsible } from '../..'
2
+ import { Collapsible, useCollapsible, Button } from '../..'
3
3
 
4
- const CollapsibleIcons = () => (
5
- <Collapsible icon={['plus','minus']}>
4
+ const CollapsibleIcons = () => {
5
+ const [isCollapsed, setIsCollapsed] = useCollapsible(true)
6
+
7
+ return (
8
+ <>
9
+ <Button onClick={()=> setIsCollapsed(!isCollapsed)}>
10
+ {isCollapsed ? "Expand" : "Collapse"}
11
+ </Button>
12
+ <Collapsible collapsed={isCollapsed}
13
+ icon={['plus','minus']}
14
+ >
6
15
  <Collapsible.Main>
7
16
  <div>{'Main Section'}</div>
8
17
  </Collapsible.Main>
@@ -14,6 +23,8 @@ const CollapsibleIcons = () => (
14
23
  </div>
15
24
  </Collapsible.Content>
16
25
  </Collapsible>
17
- )
26
+ </>
27
+ )
28
+ }
18
29
 
19
30
  export default CollapsibleIcons
@@ -10,4 +10,4 @@ examples:
10
10
  - collapsible_default: Default
11
11
  - collapsible_size: Size
12
12
  - collapsible_color: Color
13
- # - collapsible_icons: Custom Icons
13
+ # - collapsible_icons: Custom Icons
@@ -1,3 +1,4 @@
1
1
  <p><%= pb_rails("icon", props: { icon: "spinner", spin: true, fixed_width: true, size: "2x" }) %> <span>Spin</span></p>
2
2
  <br/>
3
3
  <p><%= pb_rails("icon", props: { icon: "spinner", pulse: true, fixed_width: true, size: "2x" }) %> <span>Pulse</span></p>
4
+
@@ -14,3 +14,5 @@
14
14
  parent element's css color properties."
15
15
  } ) %>
16
16
  </div>
17
+
18
+
@@ -0,0 +1,5 @@
1
+ <%= pb_rails("icon", props: { size: "5x", custom_icon: "copilot", padding_left: "xl" } ) %>
2
+ <%= pb_rails("icon", props: { size: "5x", custom_icon: "squirrel", padding_left: "xl" } ) %>
3
+
4
+
5
+
@@ -1,14 +1,15 @@
1
1
  examples:
2
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
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
+ - icon_svg: Icon SVG
12
13
 
13
14
  react:
14
15
  - icon_default: Icon Default
@@ -1,83 +1,63 @@
1
- import React from "react";
2
-
3
- import Nav from "../_nav";
4
- import NavItem from "../_item";
1
+ import React from "react"
2
+ import { Nav, NavItem, useCollapsible } from "../.."
5
3
 
6
4
  const CollapsibleNav = (props) => {
5
+ const navItems = ["Overview", "Albums", "Similar Artists"]
6
+ // eslint-disable-next-line react-hooks/rules-of-hooks
7
+ const collapsibles = navItems.map(() => useCollapsible(true))
8
+
9
+ const handleMainClick = (index) => {
10
+ collapsibles.forEach(([, , setCollapsed], idx) => {
11
+ if (idx === index) {
12
+ setCollapsed(false)
13
+ } else {
14
+ setCollapsed(true)
15
+ }
16
+ })
17
+ }
18
+
19
+
20
+ const handleIconRightClick = (index) => {
21
+ const [isCollapsed, setCollapsed] = collapsibles[index]
22
+ setCollapsed(!isCollapsed)
23
+ }
24
+
7
25
  return (
8
- <Nav variant="subtle">
9
- <NavItem
10
- collapsible
11
- iconLeft="city"
12
- link="#"
13
- text="Overview"
14
- {...props}
15
- >
16
- <NavItem
17
- link="#"
18
- text="City"
19
- {...props}
20
- />
21
- <NavItem
22
- link="#"
23
- text="People"
24
- {...props}
25
- />
26
- <NavItem
27
- link="#"
28
- text="Business"
29
- {...props}
30
- />
31
- </NavItem>
32
- <NavItem
33
- active
34
- collapsible
35
- iconLeft="theater-masks"
36
- link="#"
37
- text="Albums"
38
- {...props}
39
- >
40
- <NavItem
41
- link="#"
42
- text="Entertainment"
43
- {...props}
44
- />
45
- <NavItem
46
- link="#"
47
- text="Food"
48
- {...props}
49
- />
50
- <NavItem
51
- link="#"
52
- text="Style"
53
- {...props}
54
- />
55
- </NavItem>
56
- <NavItem
57
- collapsible
58
- iconLeft="city"
59
- link="#"
60
- text="Similar Artists"
61
- {...props}
62
- >
63
- <NavItem
64
- link="#"
65
- text="City"
66
- {...props}
67
- />
68
- <NavItem
69
- link="#"
70
- text="People"
71
- {...props}
72
- />
73
- <NavItem
74
- link="#"
75
- text="Business"
76
- {...props}
77
- />
78
- </NavItem>
79
- </Nav>
80
- );
81
- };
26
+ <>
27
+ <Nav variant='subtle'>
28
+ {navItems.map((text, index) => {
29
+ const [collapsed] = collapsibles[index]
30
+ return (
31
+ <NavItem
32
+ collapsible
33
+ collapsibleClick={() => handleMainClick(index)}
34
+ iconLeft="chevron-down"
35
+ iconRightClick={() => handleIconRightClick(index)}
36
+ id={`collapsible-nav-item-${index + 1}`}
37
+ key={index}
38
+ link="#"
39
+ text={text}
40
+ toggleCollapsed={collapsed}
41
+ {...props}
42
+ >
43
+ <NavItem link="#"
44
+ text="City"
45
+ {...props}
46
+ />
47
+ <NavItem link="#"
48
+ text="People"
49
+ {...props}
50
+ />
51
+ <NavItem link="#"
52
+ text="Business"
53
+ {...props}
54
+ />
55
+ </NavItem>
56
+ );
57
+ })}
58
+ </Nav>
59
+ </>
60
+ )
61
+ }
82
62
 
83
- export default CollapsibleNav;
63
+ export default CollapsibleNav
@@ -1,7 +1,5 @@
1
1
  import React from "react";
2
-
3
- import Nav from "../_nav";
4
- import NavItem from "../_item";
2
+ import { Nav, NavItem } from '../..'
5
3
 
6
4
  const CollapsibleNavCustomIcons = (props) => {
7
5
  return (
@@ -9,7 +7,7 @@ const CollapsibleNavCustomIcons = (props) => {
9
7
  <NavItem
10
8
  collapsible
11
9
  iconLeft="city"
12
- iconRight={["chevron-down", "chevron-up"]}
10
+ iconRight={["plus", "minus"]}
13
11
  link="#"
14
12
  text="Overview"
15
13
  {...props}
@@ -34,7 +32,7 @@ const CollapsibleNavCustomIcons = (props) => {
34
32
  active
35
33
  collapsible
36
34
  iconLeft="theater-masks"
37
- iconRight={["chevron-down", "chevron-up"]}
35
+ iconRight={["plus", "minus"]}
38
36
  link="#"
39
37
  text="Albums"
40
38
  {...props}
@@ -58,7 +56,7 @@ const CollapsibleNavCustomIcons = (props) => {
58
56
  <NavItem
59
57
  collapsible
60
58
  iconLeft="city"
61
- iconRight={["chevron-down", "chevron-up"]}
59
+ iconRight={["plus", "minus"]}
62
60
  link="#"
63
61
  text="Similar Artists"
64
62
  {...props}
@@ -26,7 +26,7 @@ examples:
26
26
  - subtle_nav: Subtle Variant
27
27
  - subtle_with_icons_nav: Subtle With Icons
28
28
  # - collapsible_nav: Subtle With Collapsible
29
- # - collapsible_nav_custom_icons: Subtle With Collapsible (Custom Toggle Icons)
29
+ # - collapsible_nav_custom_icons: Subtle With Collapsible (No custom toggling)
30
30
  - subtle_no_highlight_nav: Subtle No Highlight
31
31
  - bold_vertical_nav: Bold Variant
32
32
  - horizontal_nav: Horizontal Nav
@@ -0,0 +1,5 @@
1
+ ![pill-default](https://github.com/powerhome/playbook/assets/92755007/608cb5dd-9400-45f4-afb2-ac1bbd972c3d)
2
+
3
+ ```swift
4
+ PBPill("default")
5
+ ```
@@ -0,0 +1,5 @@
1
+ ### Props
2
+ | Name | Type | Description | Default | Values |
3
+ | --- | ----------- | --------- | --------- | --------- |
4
+ | **title** | `String` | Specifies the value of the Pill | | |
5
+ | **variant** | `Variant` | Changes the color of the Pill | `.neutral` | `.error` `.info` `.neutral` `.primary` `.success` `.warning` |
@@ -0,0 +1,10 @@
1
+ ![pill-variants](https://github.com/powerhome/playbook/assets/92755007/79ac4260-633e-4429-8b1f-0a97b8178a86)
2
+
3
+ ```swift
4
+ PBPill("success", variant: .success)
5
+ PBPill("error", variant: .error)
6
+ PBPill("warning", variant: .warning)
7
+ PBPill("info", variant: .info)
8
+ PBPill("neutral", variant: .neutral)
9
+ PBPill("primary", variant: .primary)
10
+ ```
@@ -11,3 +11,8 @@ examples:
11
11
  - pill_default: Default
12
12
  - pill_variants: Variants
13
13
  - pill_example: Example
14
+
15
+ swift:
16
+ - pill_default_swift: Default
17
+ - pill_variants_swift: Variants
18
+ - pill_props_swift: ""
@@ -0,0 +1,16 @@
1
+ ![radio-alignment](https://github.com/powerhome/playbook/assets/92755007/04b84035-8391-4de1-a33e-8964999d5c0f)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Power"),
8
+ .init("Nitro"),
9
+ .init("Google")
10
+ ],
11
+ orientation: .horizontal,
12
+ textAlignment: .vertical,
13
+ selected: $selectedAlignment
14
+ )
15
+ }
16
+ ```
@@ -0,0 +1,18 @@
1
+ ![radio-custom](https://github.com/powerhome/playbook/assets/92755007/3eab180b-0550-4d7e-b562-84a007690218)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ if let selectedCustom = selectedCustom {
6
+ Text("Your choice is: \(selectedCustom.title)")
7
+ }
8
+ PBRadio(
9
+ items: [
10
+ PBRadioItem("Custom Power"),
11
+ .init("Custom Nitro"),
12
+ .init("Custom Google")
13
+ ],
14
+ orientation: .vertical,
15
+ selected: $selectedCustom
16
+ )
17
+ }
18
+ ```
@@ -0,0 +1,15 @@
1
+ ![radio-default](https://github.com/powerhome/playbook/assets/92755007/be32852e-de70-4ae0-b8bb-c091f8cfa34b)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Power"),
8
+ .init("Nitro"),
9
+ .init("Google")
10
+ ],
11
+ orientation: .vertical,
12
+ selected: $selectedDefault
13
+ )
14
+ }
15
+ ```
@@ -0,0 +1,14 @@
1
+ ![radio-error](https://github.com/powerhome/playbook/assets/92755007/425f499b-4daf-4093-82a7-230b01723287)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Power")
8
+ ],
9
+ orientation: .vertical,
10
+ selected: $selectedError,
11
+ errorState: true
12
+ )
13
+ }
14
+ ```
@@ -0,0 +1,15 @@
1
+ ![radio-orientation](https://github.com/powerhome/playbook/assets/92755007/f1f8dac7-a7d5-43cf-ba93-92bd624a1016)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Power"),
8
+ .init("Nitro"),
9
+ .init("Google")
10
+ ],
11
+ orientation: .horizontal,
12
+ selected: $selectedOrientation
13
+ )
14
+ }
15
+ ```
@@ -0,0 +1,31 @@
1
+ ![radio-padding](https://github.com/powerhome/playbook/assets/92755007/5cb123fb-791b-43f7-a57e-336f93c1bb3a)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Small")
8
+ ],
9
+ orientation: .vertical,
10
+ padding: Spacing.small,
11
+ selected: $selectedPadding
12
+ )
13
+ PBRadio(
14
+ items: [
15
+ PBRadioItem("Medium")
16
+ ],
17
+ orientation: .vertical,
18
+ padding: Spacing.medium,
19
+ selected: $selectedPadding
20
+ )
21
+ PBRadio(
22
+ items: [
23
+ PBRadioItem("Large")
24
+ ],
25
+ orientation: .vertical,
26
+ padding: Spacing.large,
27
+ selected: $selectedPadding
28
+ )
29
+ }
30
+
31
+ ```
@@ -0,0 +1,10 @@
1
+ ### Props
2
+ | Name | Type | Description | Default | Values |
3
+ | --- | ----------- | --------- | --------- | --------- |
4
+ | **items** | `PBRadioItem` | Specifies the value of the Radio buttons | | |
5
+ | **orientation** | `Orientation` | Changes between stacked or inline Radio items | `.vertical` | |
6
+ | **textAlignment** | `Orientation` | Changes lable position | `.horizontal` | |
7
+ | **spacing** | `CGFloat` | Applies padding around Radio and lable | `Spacing.xSmall` | `Spacing.none` `Spacing.xxSmall` `Spacing.xSmall` `Spacing.small` `Spacing.medium` `Spacing.large` `Spacing.xLarge` |
8
+ | **padding** | `CGFloat` | Applies padding between Radio and lable | `Spacing.xSmall` | `Spacing.none` `Spacing.xxSmall` `Spacing.xSmall` `Spacing.small` `Spacing.medium` `Spacing.large` `Spacing.xLarge` |
9
+ | **errorState** | `Bool` | Changes Radio to error styling | | |
10
+ | **selected** | `PBRadioItem?` | Sets selected Radio item | | |
@@ -0,0 +1,36 @@
1
+ ![radio-spacing](https://github.com/powerhome/playbook/assets/92755007/58d1bf02-0c79-4526-9e5c-ba2f631d1dfe)
2
+
3
+ ```swift
4
+ HStack(alignment: .top) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Small"),
8
+ .init("Small Spacing"),
9
+ .init("Small Power")
10
+ ],
11
+ orientation: .vertical,
12
+ spacing: Spacing.small,
13
+ selected: $selectedSpacing
14
+ )
15
+ PBRadio(
16
+ items: [
17
+ PBRadioItem("Medium"),
18
+ .init("Medium Spacing"),
19
+ .init("Medium Power")
20
+ ],
21
+ orientation: .vertical,
22
+ spacing: Spacing.medium,
23
+ selected: $selectedSpacing
24
+ )
25
+ PBRadio(
26
+ items: [
27
+ PBRadioItem("Large"),
28
+ .init("Large Spacing"),
29
+ .init("Large Power")
30
+ ],
31
+ orientation: .vertical,
32
+ spacing: Spacing.large,
33
+ selected: $selectedSpacing
34
+ )
35
+ }
36
+ ```
@@ -0,0 +1,13 @@
1
+ ![radio-subtitle](https://github.com/powerhome/playbook/assets/92755007/1244f4d4-0e87-4b5a-9b20-ac2223866321)
2
+
3
+ ```swift
4
+ VStack(alignment: .leading) {
5
+ PBRadio(
6
+ items: [
7
+ PBRadioItem("Power", subtitle: "subtitle")
8
+ ],
9
+ selected: $selectedSubtitle
10
+ )
11
+ }
12
+
13
+ ```
@@ -12,3 +12,14 @@ examples:
12
12
  - radio_custom: Custom
13
13
  - radio_error: With Error
14
14
  - radio_alignment: Alignment
15
+
16
+ swift:
17
+ - radio_default_swift: Default
18
+ - radio_custom_swift: Custom
19
+ - radio_error_swift: With Error
20
+ - radio_orientation_swift: Orientation
21
+ - radio_alignment_swift: Alignment
22
+ - radio_spacing_swift: Spacing
23
+ - radio_padding_swift: Padding
24
+ - radio_subtitle_swift: Subtitle
25
+ - radio_props_swift: ""
@@ -0,0 +1,12 @@
1
+ <%= pb_rails("text_input", props: {
2
+ placeholder: "Placeholder",
3
+ input_options: {
4
+ id: "testing-one-time-code",
5
+ autocomplete: "one-time-code",
6
+ name:"auth-token",
7
+ inputmode:"numeric",
8
+ pattern:"[0-9]*",
9
+ type: "text"
10
+ }
11
+ }) %>
12
+
@@ -7,6 +7,7 @@ examples:
7
7
  - text_input_add_on: Add On
8
8
  - text_input_inline: Inline
9
9
  - text_input_no_label: No Label
10
+ - text_input_options: Input Options
10
11
  react:
11
12
  - text_input_default: Default
12
13
  - text_input_error: With Error