playbook_ui_docs 16.12.0.pre.rc.3 → 16.12.0

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 (32) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/docs/_playground.json +1 -0
  3. data/app/pb_kits/playbook/pb_avatar/docs/_playground.json +1 -0
  4. data/app/pb_kits/playbook/pb_card/docs/_playground.json +1 -0
  5. data/app/pb_kits/playbook/pb_currency/docs/_playground.json +1 -0
  6. data/app/pb_kits/playbook/pb_date_picker/docs/_playground.json +1 -0
  7. data/app/pb_kits/playbook/pb_date_range_inline/docs/_playground.json +1 -0
  8. data/app/pb_kits/playbook/pb_date_range_stacked/docs/_playground.json +3 -1
  9. data/app/pb_kits/playbook/pb_date_stacked/docs/_playground.json +1 -0
  10. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_playground.json +1 -0
  11. data/app/pb_kits/playbook/pb_date_year_stacked/docs/_playground.json +2 -1
  12. data/app/pb_kits/playbook/pb_filter/docs/_playground.json +1 -1
  13. data/app/pb_kits/playbook/pb_home_address_street/docs/_playground.json +1 -0
  14. data/app/pb_kits/playbook/pb_icon/docs/_playground.json +1 -0
  15. data/app/pb_kits/playbook/pb_layout/docs/_playground.json +1 -0
  16. data/app/pb_kits/playbook/pb_list/docs/_playground.json +1 -0
  17. data/app/pb_kits/playbook/pb_loading_inline/docs/_playground.json +1 -0
  18. data/app/pb_kits/playbook/pb_multi_level_select/docs/_playground.json +1 -0
  19. data/app/pb_kits/playbook/pb_phone_number_input/docs/_playground.json +1 -0
  20. data/app/pb_kits/playbook/pb_progress_simple/docs/_playground.json +2 -2
  21. data/app/pb_kits/playbook/pb_section_separator/docs/_playground.json +1 -0
  22. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_playground.json +5 -4
  23. data/app/pb_kits/playbook/pb_time_picker/docs/_playground.json +1 -0
  24. data/app/pb_kits/playbook/pb_time_range_inline/docs/_playground.json +1 -0
  25. data/app/pb_kits/playbook/pb_timestamp/docs/_playground.json +1 -0
  26. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.html.erb +15 -0
  27. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.jsx +19 -0
  28. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.md +3 -1
  29. data/app/pb_kits/playbook/pb_typeahead/docs/_playground.json +2 -0
  30. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.html.erb +7 -0
  31. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.md +11 -1
  32. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e6152f7165b86f19ccbb087bfbdbdd7d05bf991a065712ba62034f1ffe09086a
4
- data.tar.gz: fdc04402f096f46a29e5f82937554e2fcac1693c56257aaba12643269f05c9c9
3
+ metadata.gz: ba427c3b062c21d8d9c069066221ab68fa72de61d6937e3e313345d421029fb6
4
+ data.tar.gz: f66101660a3b7c039581e1a1ac4e247f74eefda6b40c95770a04cdfe412e14bf
5
5
  SHA512:
6
- metadata.gz: 88825010c500667ac57be7ca4e2a465c6ead2bb49be580757278b3b1ab7ffc1284afde6e7859cd0cf252de75ba74db36160959ff9a3aa0cf20ac884d2ad25d83
7
- data.tar.gz: c5806106801117e349c6fe5872376568407354b945b900a7aac6b1eab8a0a762ae8cc04b3749a50dac0745f432997dbfba1a284c795e6d0ddb420aaa846ea8a4
6
+ metadata.gz: 6e03d16db06b90940db5466fa385ec172802424ac7edb7448de36618349bb6a5902946ed4449ee9329d996ec1c76b10a1648886bb18242d7ddc68102ccab45fd
7
+ data.tar.gz: d991b121f6619562605b96921fad2dbd7f5fce98e96d115c0d52e46dbb692b590a80d700c7ac41aff143395f7c1eeb10bc439750f0d48d3041f78d8cec0b222e
@@ -12,6 +12,7 @@
12
12
  "fullWidthCell": false,
13
13
  "inlineRowLoading": false,
14
14
  "loading": false,
15
+ "maxHeight": "auto",
15
16
  "responsive": "scroll",
16
17
  "scrollBarNone": false,
17
18
  "selectableRows": false,
@@ -2,6 +2,7 @@
2
2
  "template": "<Avatar{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
+ "dark": false,
5
6
  "grayscale": false,
6
7
  "imageAlt": "",
7
8
  "name": "",
@@ -7,6 +7,7 @@
7
7
  "defaults": {
8
8
  "background": "none",
9
9
  "borderNone": false,
10
+ "borderRadius": "md",
10
11
  "draggableItem": false,
11
12
  "dragHandle": true,
12
13
  "selected": false,
@@ -4,6 +4,7 @@
4
4
  "defaults": {
5
5
  "abbreviate": false,
6
6
  "align": "left",
7
+ "dark": false,
7
8
  "decimals": "default",
8
9
  "emphasized": true,
9
10
  "label": "Balance",
@@ -3,6 +3,7 @@
3
3
  "propTargets": {},
4
4
  "defaults": {
5
5
  "allowInput": false,
6
+ "dark": false,
6
7
  "defaultDate": "",
7
8
  "disableInput": false,
8
9
  "enableTime": false,
@@ -3,6 +3,7 @@
3
3
  "propTargets": {},
4
4
  "defaults": {
5
5
  "align": "left",
6
+ "dark": false,
6
7
  "size": "sm",
7
8
  "showCurrentYear": false
8
9
  },
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "template": "<DateRangeStacked{{props}} />",
3
3
  "propTargets": {},
4
- "defaults": {},
4
+ "defaults": {
5
+ "dark": false
6
+ },
5
7
  "groups": [
6
8
  {
7
9
  "name": "Content",
@@ -4,6 +4,7 @@
4
4
  "defaults": {
5
5
  "align": "left",
6
6
  "bold": false,
7
+ "dark": false,
7
8
  "size": "sm",
8
9
  "reverse": false,
9
10
  "showCurrentYear": false
@@ -2,6 +2,7 @@
2
2
  "template": "<DateTimeStacked{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
+ "dark": false,
5
6
  "showCurrentYear": false
6
7
  },
7
8
  "groups": [
@@ -2,7 +2,8 @@
2
2
  "template": "<DateYearStacked{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
- "align": "left"
5
+ "align": "left",
6
+ "dark": false
6
7
  },
7
8
  "groups": [
8
9
  {
@@ -3,6 +3,7 @@
3
3
  "propTargets": {},
4
4
  "defaults": {
5
5
  "background": true,
6
+ "minWidth": "360px",
6
7
  "placement": "bottom-start",
7
8
  "double": false,
8
9
  "filters": {
@@ -10,7 +11,6 @@
10
11
  "City": "San Francisco"
11
12
  },
12
13
  "isCollapsed": false,
13
- "minWidth": "360px",
14
14
  "onCollapse": "() => {}",
15
15
  "onSortChange": "() => {}",
16
16
  "popoverProps": {},
@@ -2,6 +2,7 @@
2
2
  "template": "<HomeAddressStreet{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
+ "dark": false,
5
6
  "preserveCase": false,
6
7
  "emphasis": "street",
7
8
  "newWindow": false,
@@ -2,6 +2,7 @@
2
2
  "template": "<Icon{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
+ "border": false,
5
6
  "fixedWidth": true,
6
7
  "inverse": false,
7
8
  "listItem": false,
@@ -4,6 +4,7 @@
4
4
  "defaults": {
5
5
  "collapse": "xs",
6
6
  "full": false,
7
+ "position": "left",
7
8
  "responsive": false,
8
9
  "size": {
9
10
  "react": "sm",
@@ -3,6 +3,7 @@
3
3
  "propTargets": {},
4
4
  "defaults": {
5
5
  "borderless": false,
6
+ "dark": false,
6
7
  "enableDrag": false,
7
8
  "layout": "",
8
9
  "ordered": false,
@@ -4,6 +4,7 @@
4
4
  "defaults": {
5
5
  "align": "left",
6
6
  "color": "light",
7
+ "dark": false,
7
8
  "text": "Loading",
8
9
  "variant": "dotted"
9
10
  },
@@ -14,6 +14,7 @@
14
14
  "placeholder": "Start typing...",
15
15
  "variant": "multi",
16
16
  "wrapped": false,
17
+ "pillColor": "primary",
17
18
  "selectedIds": [
18
19
  "talent1",
19
20
  "initiative1"
@@ -2,6 +2,7 @@
2
2
  "template": "<PhoneNumberInput{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
+ "dark": false,
5
6
  "disabled": false,
6
7
  "error": "",
7
8
  "hiddenInputs": false,
@@ -5,8 +5,8 @@
5
5
  "align": "left",
6
6
  "muted": false,
7
7
  "variant": "default",
8
- "percent": "50",
9
- "width": "100%"
8
+ "width": "100%",
9
+ "percent": "50"
10
10
  },
11
11
  "groups": [
12
12
  {
@@ -3,6 +3,7 @@
3
3
  "propTargets": {},
4
4
  "defaults": {
5
5
  "color": "default",
6
+ "dark": false,
6
7
  "lineStyle": "solid",
7
8
  "orientation": "horizontal",
8
9
  "variant": "card"
@@ -2,12 +2,13 @@
2
2
  "template": "<SkeletonLoading{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
- "stack": 1,
6
- "color": "default",
5
+ "height": "16px",
6
+ "width": "100%",
7
7
  "borderRadius": "sm",
8
8
  "gap": "xxs",
9
- "height": "16px",
10
- "width": "100%"
9
+ "stack": 1,
10
+ "color": "default",
11
+ "dark": false
11
12
  },
12
13
  "groups": [
13
14
  {
@@ -2,6 +2,7 @@
2
2
  "template": "<TimePicker{{props}} />",
3
3
  "propTargets": {},
4
4
  "defaults": {
5
+ "dark": false,
5
6
  "disabled": false,
6
7
  "label": "Time Picker",
7
8
  "required": false,
@@ -4,6 +4,7 @@
4
4
  "defaults": {
5
5
  "alignment": "left",
6
6
  "size": "sm",
7
+ "dark": false,
7
8
  "icon": false,
8
9
  "timezone": false
9
10
  },
@@ -3,6 +3,7 @@
3
3
  "propTargets": {},
4
4
  "defaults": {
5
5
  "align": "left",
6
+ "dark": false,
6
7
  "timezone": "America/New_York",
7
8
  "showCurrentYear": false,
8
9
  "showDate": true,
@@ -63,3 +63,18 @@
63
63
  }) %>
64
64
 
65
65
  <br>
66
+
67
+ <%= pb_rails("timestamp", props: {
68
+ timestamp: DateTime.now,
69
+ show_date: false,
70
+ show_timezone: true,
71
+ timezone: "Eastern Time (US & Canada)",
72
+ }) %>
73
+
74
+ <br>
75
+
76
+ <%= pb_rails("timestamp", props: {
77
+ timestamp: DateTime.now,
78
+ show_timezone: true,
79
+ timezone: "Pacific Time (US & Canada)",
80
+ }) %>
@@ -85,6 +85,25 @@ const TimestampTimezones = (props) => {
85
85
  timezone="Asia/Hong_Kong"
86
86
  {...props}
87
87
  />
88
+
89
+ <br />
90
+
91
+ <Timestamp
92
+ showDate={false}
93
+ showTimezone
94
+ timestamp={todaysDate}
95
+ timezone="Eastern Time (US & Canada)"
96
+ {...props}
97
+ />
98
+
99
+ <br />
100
+
101
+ <Timestamp
102
+ showTimezone
103
+ timestamp={todaysDate}
104
+ timezone="Pacific Time (US & Canada)"
105
+ {...props}
106
+ />
88
107
  </div>
89
108
  )
90
109
  }
@@ -1 +1,3 @@
1
- The `showTimezone`/`show_timezone` prop can be used to show the timezone as well. This is set to false by default. **NOTE**: This prop must be used in conjunction with the `timezone` prop to specify which timezone to display.
1
+ The `showTimezone`/`show_timezone` prop can be used to show the timezone as well. This is set to false by default. **NOTE**: This prop must be used in conjunction with the `timezone` prop to specify which timezone to display.
2
+
3
+ The `timezone` prop accepts both IANA timezone identifiers (e.g. `America/New_York`) and ActiveSupport timezone names (e.g. `Eastern Time (US & Canada)`).
@@ -7,6 +7,8 @@
7
7
  "disabled": false,
8
8
  "error": "",
9
9
  "inputDisplay": "pills",
10
+ "marginBottom": "sm",
11
+ "pillColor": "primary",
10
12
  "required": false,
11
13
  "requiredIndicator": false,
12
14
  "clearOnContextChange": true,
@@ -10,6 +10,7 @@
10
10
  <%= pb_rails("typeahead", props: { id: "typeahead-pills-example1", default_options: [options.first], options: options, label: "Products", name: :foo, pills: true }) %>
11
11
 
12
12
  <%= pb_rails("button", props: {id: "clear-pills", text: "Clear All Options", variant: "secondary"}) %>
13
+ <%= pb_rails("button", props: {id: "set-pills", text: "Restore Default Options", variant: "secondary"}) %>
13
14
 
14
15
  <!-- This section is an example of the available JavaScript event hooks -->
15
16
  <%= javascript_tag defer: "defer" do %>
@@ -28,4 +29,10 @@
28
29
  document.querySelector('#clear-pills').addEventListener('click', function() {
29
30
  document.dispatchEvent(new CustomEvent('pb-typeahead-kit-typeahead-pills-example1:clear'))
30
31
  })
32
+
33
+ document.querySelector('#set-pills').addEventListener('click', function() {
34
+ document.dispatchEvent(new CustomEvent('pb-typeahead-kit-typeahead-pills-example1:set', {
35
+ detail: [{ label: 'Windows', value: '#FFA500' }]
36
+ }))
37
+ })
31
38
  <% end %>
@@ -8,6 +8,8 @@ You can also pass `default_options` which will populate the initial pill selecti
8
8
 
9
9
  `default_options: [{ label: 'Windows', value: '#FFA500' }]`
10
10
 
11
+ When present, the kit root gets `data-default-value` (JSON of `{ label, value }` only) for restore-after-clear via `:set`. Extra option fields are omitted; if serialization fails, the attribute is left off so the kit still mounts.
12
+
11
13
  #### Rails: Subscribing to JS Events
12
14
 
13
15
  JavaScript events are triggered based on actions you take within the kit such as selection, removal and clearing.
@@ -21,4 +23,12 @@ This kit utilizes a default `id` prop named `react-select-input`. It is **highly
21
23
 
22
24
  The same rule regarding the `id` prop applies to publishing JS events. The examples below will use the unique `id` prop named `typeahead-pills-example1`:
23
25
 
24
- `pb-typeahead-kit-typeahead-pills-example1:clear` event to clear all options.
26
+ `pb-typeahead-kit-typeahead-pills-example1:clear` event to clear all options.
27
+
28
+ `pb-typeahead-kit-typeahead-pills-example1:set` event to set options without treating it as a user click (no `result-option-select`). Pass `detail` as `[{ label, value }, ...]` (or a single object for single-select):
29
+
30
+ ```js
31
+ document.dispatchEvent(new CustomEvent('pb-typeahead-kit-typeahead-pills-example1:set', {
32
+ detail: [{ label: 'Windows', value: '#FFA500' }]
33
+ }))
34
+ ```
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: playbook_ui_docs
3
3
  version: !ruby/object:Gem::Version
4
- version: 16.12.0.pre.rc.3
4
+ version: 16.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Power UX
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2026-07-24 00:00:00.000000000 Z
12
+ date: 2026-07-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: playbook_ui