playbook_ui 14.15.0.pre.alpha.PBNTR617addgriddisplayglobalprop6700 → 14.15.0.pre.alpha.PBNTR900phonenumberinputhidden6593

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +0 -7
  3. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +1 -2
  4. data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +1 -2
  5. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hooks.md +1 -3
  6. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +0 -2
  7. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +1 -1
  8. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -1
  9. data/app/pb_kits/playbook/pb_icon_button/_icon_button.tsx +1 -1
  10. data/app/pb_kits/playbook/pb_icon_button/icon_button.html.erb +1 -1
  11. data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.tsx +5 -32
  12. data/app/pb_kits/playbook/pb_multi_level_select/docs/example.yml +0 -1
  13. data/app/pb_kits/playbook/pb_multi_level_select/docs/index.js +0 -1
  14. data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.rb +1 -1
  15. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.tsx +2 -4
  16. data/app/pb_kits/playbook/pb_phone_number_input/docs/{_phone_number_input_default.html.erb → _phone_number_input_default_rails.html.erb} +1 -1
  17. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default_rails.md +2 -0
  18. data/app/pb_kits/playbook/pb_phone_number_input/docs/example.yml +2 -4
  19. data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.rb +0 -3
  20. data/app/pb_kits/playbook/pb_popover/_popover.tsx +1 -1
  21. data/app/pb_kits/playbook/pb_popover/popover.test.js +1 -1
  22. data/app/pb_kits/playbook/pb_text_input/inputMask.ts +3 -2
  23. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.erb +10 -0
  24. data/app/pb_kits/playbook/pb_tooltip/docs/example.yml +0 -1
  25. data/app/pb_kits/playbook/pb_typeahead/_typeahead.tsx +4 -16
  26. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_custom_options.jsx +1 -1
  27. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.jsx +1 -1
  28. data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +0 -1
  29. data/app/pb_kits/playbook/pb_typeahead/docs/index.js +0 -1
  30. data/app/pb_kits/playbook/tokens/_display.scss +1 -3
  31. data/app/pb_kits/playbook/utilities/_display.scss +1 -6
  32. data/app/pb_kits/playbook/utilities/test/globalProps/display.test.js +1 -1
  33. data/dist/chunks/_typeahead-Cu4WtFsC.js +36 -0
  34. data/dist/chunks/{_weekday_stacked-BVO5G6au.js → _weekday_stacked-iCkVKLxW.js} +2 -2
  35. data/dist/chunks/vendor.js +1 -1
  36. data/dist/menu.yml +1 -1
  37. data/dist/playbook-doc.js +1 -1
  38. data/dist/playbook-rails-react-bindings.js +1 -1
  39. data/dist/playbook-rails.js +1 -1
  40. data/dist/playbook.css +1 -1
  41. data/lib/playbook/display.rb +2 -2
  42. data/lib/playbook/version.rb +1 -1
  43. metadata +7 -16
  44. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_editing.jsx +0 -102
  45. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_editing.md +0 -4
  46. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.html.erb +0 -39
  47. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.html.erb +0 -39
  48. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.jsx +0 -91
  49. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.md +0 -1
  50. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_hidden_inputs.html.erb +0 -5
  51. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_hidden_inputs.md +0 -1
  52. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon_rails.html.erb +0 -22
  53. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.jsx +0 -66
  54. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.md +0 -1
  55. data/dist/chunks/_typeahead-B8f4HM8I.js +0 -36
@@ -18,7 +18,7 @@ module Playbook
18
18
  else
19
19
  selected_props.each do |k|
20
20
  display_value = send(k)
21
- css += "display_#{display_value} " if display_values.include?(display_value)
21
+ css += "display_#{display_value}" if display_values.include? display_value
22
22
  end
23
23
  end
24
24
  css unless css.blank?
@@ -35,7 +35,7 @@ module Playbook
35
35
  end
36
36
 
37
37
  def display_values
38
- %w[block inline_block inline flex inline_flex none grid]
38
+ %w[block inline_block inline flex inline_flex none]
39
39
  end
40
40
  end
41
41
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Playbook
4
4
  PREVIOUS_VERSION = "14.15.0"
5
- VERSION = "14.15.0.pre.alpha.PBNTR617addgriddisplayglobalprop6700"
5
+ VERSION = "14.15.0.pre.alpha.PBNTR900phonenumberinputhidden6593"
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: playbook_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.15.0.pre.alpha.PBNTR617addgriddisplayglobalprop6700
4
+ version: 14.15.0.pre.alpha.PBNTR900phonenumberinputhidden6593
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: 2025-03-14 00:00:00.000000000 Z
12
+ date: 2025-03-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
@@ -310,8 +310,6 @@ files:
310
310
  - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expanded_control.jsx
311
311
  - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expanded_control.md
312
312
  - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_infinite_scroll.jsx
313
- - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_editing.jsx
314
- - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_editing.md
315
313
  - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.jsx
316
314
  - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.md
317
315
  - app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_loading.html.erb
@@ -939,10 +937,8 @@ files:
939
937
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.html.erb
940
938
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.jsx
941
939
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.md
942
- - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.html.erb
943
940
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.jsx
944
941
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.md
945
- - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.html.erb
946
942
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.jsx
947
943
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.md
948
944
  - app/pb_kits/playbook/pb_date_picker/docs/_date_picker_positions.html.erb
@@ -1985,8 +1981,6 @@ files:
1985
1981
  - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_default.md
1986
1982
  - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled.html.erb
1987
1983
  - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled.jsx
1988
- - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.jsx
1989
- - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.md
1990
1984
  - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_reset.html.erb
1991
1985
  - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_reset.md
1992
1986
  - app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_return_all_selected.html.erb
@@ -2252,14 +2246,13 @@ files:
2252
2246
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_access_input_element.md
2253
2247
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_clear_field.jsx
2254
2248
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_clear_field.md
2255
- - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default.html.erb
2256
2249
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default.jsx
2257
2250
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default.md
2251
+ - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default_rails.html.erb
2252
+ - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default_rails.md
2258
2253
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_format.html.erb
2259
2254
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_format.jsx
2260
2255
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_format.md
2261
- - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_hidden_inputs.html.erb
2262
- - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_hidden_inputs.md
2263
2256
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_initial_country.html.erb
2264
2257
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_initial_country.jsx
2265
2258
  - app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_initial_country.md
@@ -3134,9 +3127,9 @@ files:
3134
3127
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_delay.md
3135
3128
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_delay_rails.html.erb
3136
3129
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_delay_rails.md
3130
+ - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.erb
3137
3131
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.jsx
3138
3132
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.md
3139
- - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon_rails.html.erb
3140
3133
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_interaction.html.erb
3141
3134
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_interaction.jsx
3142
3135
  - app/pb_kits/playbook/pb_tooltip/docs/_tooltip_interaction.md
@@ -3213,8 +3206,6 @@ files:
3213
3206
  - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_margin_bottom.jsx
3214
3207
  - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_multi_kit.html.erb
3215
3208
  - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_multi_kit.jsx
3216
- - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.jsx
3217
- - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.md
3218
3209
  - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.html.erb
3219
3210
  - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.jsx
3220
3211
  - app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.md
@@ -3413,8 +3404,8 @@ files:
3413
3404
  - app/pb_kits/playbook/utilities/test/globalProps/truncate.test.js
3414
3405
  - app/pb_kits/playbook/utilities/text.ts
3415
3406
  - app/pb_kits/playbook/utilities/validEmojiChecker.ts
3416
- - dist/chunks/_typeahead-B8f4HM8I.js
3417
- - dist/chunks/_weekday_stacked-BVO5G6au.js
3407
+ - dist/chunks/_typeahead-Cu4WtFsC.js
3408
+ - dist/chunks/_weekday_stacked-iCkVKLxW.js
3418
3409
  - dist/chunks/lazysizes-B7xYodB-.js
3419
3410
  - dist/chunks/lib-5OzNgeeu.js
3420
3411
  - dist/chunks/pb_form_validation-DGhKbZtO.js
@@ -1,102 +0,0 @@
1
- import React, { useState } from "react";
2
- import { AdvancedTable, TextInput, Body } from "playbook-ui";
3
- import MOCK_DATA from "./advanced_table_mock_data.json";
4
-
5
- const AdvancedTableInlineEditing = (props) => {
6
- const [editedValues, setEditedValues] = useState({});
7
-
8
- const EditableCell = ({ rowId, originalValue, onSave }) => {
9
- const [localValue, setLocalValue] = useState(originalValue);
10
-
11
- const handleChange = (e) => setLocalValue(e.target.value);
12
-
13
- const handleBlur = () => {
14
- originalValue !== localValue && onSave(rowId, localValue);
15
- };
16
-
17
- return (
18
- <TextInput inline
19
- marginBottom="none"
20
- {...props}
21
- >
22
- <input
23
- onBlur={handleBlur}
24
- onChange={handleChange}
25
- onKeyDown={(e) => e.key === 'Enter' && handleBlur()}
26
- value={localValue}
27
- />
28
- </TextInput>
29
- );
30
- };
31
-
32
- const columnDefinitions = [
33
- {
34
- accessor: "year",
35
- label: "Year",
36
- cellAccessors: ["quarter", "month", "day"],
37
- },
38
- {
39
- accessor: "newEnrollments",
40
- label: "New Enrollments",
41
- },
42
- {
43
- accessor: "scheduledMeetings",
44
- label: "Scheduled Meetings",
45
- editable: true,
46
- customRenderer: (row) => {
47
- return (
48
- <EditableCell
49
- onSave={(id, val) => {
50
- setEditedValues((prev) => ({ ...prev, [id]: val }));
51
- }}
52
- originalValue={
53
- editedValues[row.id] ?? row.original.scheduledMeetings
54
- }
55
- rowId={row.id}
56
- />
57
- );
58
- },
59
- },
60
- {
61
- accessor: "attendanceRate",
62
- label: "Attendance Rate",
63
- },
64
- {
65
- accessor: "completedClasses",
66
- label: "Completed Classes",
67
- },
68
- {
69
- accessor: "classCompletionRate",
70
- label: "Class Completion Rate",
71
- },
72
- {
73
- accessor: "graduatedStudents",
74
- label: "Graduated Students",
75
- },
76
- ];
77
-
78
- return (
79
- <div className="App">
80
- <AdvancedTable
81
- columnDefinitions={columnDefinitions}
82
- tableData={MOCK_DATA}
83
- {...props}
84
- />
85
- {
86
- editedValues && Object.keys(editedValues).length > 0 && (
87
- <>
88
- <Body
89
- marginTop="md"
90
- {...props}
91
- >
92
- Edited Values by Row Id:
93
- </Body>
94
- <pre style={{color: 'white'}}>{JSON.stringify(editedValues, null, 2)}</pre>
95
- </>
96
- )
97
- }
98
- </div>
99
- );
100
- };
101
-
102
- export default AdvancedTableInlineEditing;
@@ -1,4 +0,0 @@
1
- Inline Cell Editing can be achieved with a combination of our `TextInput` kit and the `customRenderer` method available through columnDefinitions.
2
-
3
- Hover over any cell within the 'Scheduled Meetings' column to see the TextInput and type in to change values. Values can be saved by clicking away from the TextInput or by hitting 'Enter'.
4
- See the code snippet below to see how this was achieved. Devs must manage state themselves as shown.
@@ -1,39 +0,0 @@
1
- <%= pb_rails("date_picker", props: {
2
- label: "Date Picker",
3
- picker_id: "date-picker-onchange",
4
- margin_bottom: "lg"
5
- }) %>
6
- <%= pb_rails("caption", props: { text: "Date Object" }) %>
7
- <%= pb_rails("body", props: {
8
- label: "Date Object",
9
- text: "Select Date",
10
- margin_bottom: "lg",
11
- id: "date-picker-onchange-object",
12
- }) %>
13
- <%= pb_rails("caption", props: { text: "Date String" }) %>
14
- <%= pb_rails("body", props: {
15
- label: "Date String",
16
- text: "Select Date",
17
- margin_bottom: "lg",
18
- id: "date-picker-onchange-string",
19
- }) %>
20
-
21
-
22
- <%= javascript_tag do %>
23
- window.addEventListener("DOMContentLoaded", () => {
24
- <%# Access flatpickr instance with picker id and assign it a variable %>
25
- const fp = document.querySelector("#date-picker-onchange")._flatpickr
26
-
27
- <%# Define Hook %>
28
- const changeHook = (selectedDates, dateStr) => {
29
- const object = document.querySelector('#date-picker-onchange-object')
30
- object.textContent = selectedDates[0] ? selectedDates[0].toString() : ''
31
-
32
- const string = document.querySelector('#date-picker-onchange-string')
33
- string.textContent = dateStr
34
- }
35
-
36
- <%# Push one or more hooks to onChange config array %>
37
- fp.config.onChange.push(changeHook)
38
- })
39
- <% end %>
@@ -1,39 +0,0 @@
1
- <%= pb_rails("date_picker", props: {
2
- label: "Date Picker",
3
- picker_id: "date-picker-onclose",
4
- margin_bottom: "lg"
5
- }) %>
6
- <%= pb_rails("caption", props: { text: "Date Object" }) %>
7
- <%= pb_rails("body", props: {
8
- label: "Date Object",
9
- text: "Select Date",
10
- margin_bottom: "lg",
11
- id: "date-picker-onclose-object",
12
- }) %>
13
- <%= pb_rails("caption", props: { text: "Date String" }) %>
14
- <%= pb_rails("body", props: {
15
- label: "Date String",
16
- text: "Select Date",
17
- margin_bottom: "lg",
18
- id: "date-picker-onclose-string",
19
- }) %>
20
-
21
-
22
- <%= javascript_tag do %>
23
- window.addEventListener("DOMContentLoaded", () => {
24
- <%# Access flatpickr instance with picker id and assign it a variable %>
25
- const fp = document.querySelector("#date-picker-onclose")._flatpickr
26
-
27
- <%# Define Hook %>
28
- const closeHook = (selectedDates, dateStr) => {
29
- const object = document.querySelector('#date-picker-onclose-object')
30
- object.textContent = selectedDates[0] ? selectedDates[0].toString() : ''
31
-
32
- const string = document.querySelector('#date-picker-onclose-string')
33
- string.textContent = dateStr
34
- }
35
-
36
- <%# Push one or more hooks to onClose config array %>
37
- fp.config.onClose.push(closeHook)
38
- })
39
- <% end %>
@@ -1,91 +0,0 @@
1
- import React from "react"
2
- import MultiLevelSelect from "../_multi_level_select"
3
- import { useForm } from "react-hook-form"
4
-
5
- const treeData = [
6
- {
7
- label: "Power Home Remodeling",
8
- value: "Power Home Remodeling",
9
- id: "powerhome1",
10
- expanded: true,
11
- children: [
12
- {
13
- label: "People",
14
- value: "People",
15
- id: "people1",
16
- expanded: true,
17
- children: [
18
- {
19
- label: "Talent Acquisition",
20
- value: "Talent Acquisition",
21
- id: "talent1",
22
- },
23
- {
24
- label: "Business Affairs",
25
- value: "Business Affairs",
26
- id: "business1",
27
- children: [
28
- {
29
- label: "Initiatives",
30
- value: "Initiatives",
31
- id: "initiative1",
32
- },
33
- {
34
- label: "Learning & Development",
35
- value: "Learning & Development",
36
- id: "development1",
37
- },
38
- ],
39
- },
40
- {
41
- label: "People Experience",
42
- value: "People Experience",
43
- id: "experience1",
44
- },
45
- ],
46
- },
47
- {
48
- label: "Contact Center",
49
- value: "Contact Center",
50
- id: "contact1",
51
- children: [
52
- {
53
- label: "Appointment Management",
54
- value: "Appointment Management",
55
- id: "appointment1",
56
- },
57
- {
58
- label: "Customer Service",
59
- value: "Customer Service",
60
- id: "customer1",
61
- },
62
- {
63
- label: "Energy",
64
- value: "Energy",
65
- id: "energy1",
66
- },
67
- ],
68
- },
69
- ],
70
- },
71
- ]
72
-
73
- const MultiLevelSelectReactHook = (props) => {
74
- const { register, watch } = useForm()
75
- const selectedItems = watch("departments")
76
- selectedItems && console.log("Selected Items", selectedItems)
77
-
78
- return (
79
- <div>
80
- <MultiLevelSelect
81
- id="multiselect-default"
82
- marginBottom="md"
83
- treeData={treeData}
84
- {...register("departments")}
85
- {...props}
86
- />
87
- </div>
88
- )
89
- }
90
-
91
- export default MultiLevelSelectReactHook
@@ -1 +0,0 @@
1
- You can pass `react-hook-form` props to the MultiLevelSelect kit. Check your console to see the full data selected from this example.
@@ -1,5 +0,0 @@
1
- <%= pb_rails("phone_number_input", props: {
2
- hidden_inputs: true,
3
- id: "hidden_inputs",
4
- name: "hidden_inputs",
5
- }) %>
@@ -1 +0,0 @@
1
- The `hidden_inputs` boolean prop generates two hidden input fields, {field_name}_full and {field_name}_country_code. The value passed when the form is submitted contains the full phone number including the country code. Because it requires the submission of a form to function, only use this prop on Rails phone number elements within html form tags `<form>/<form>` or [pb_forms](https://playbook.powerapp.cloud/kits/form). Read the [intl-tel-input](https://intl-tel-input.com/examples/hidden-input.html) docs for more information.
@@ -1,22 +0,0 @@
1
- <%= pb_rails "flex", props: { flex_direction: "row", gap: "md", wrap: true } do %>
2
- <%= pb_rails "button", props: { id: "tool-tip-with-icon-1", text: "Tooltip With Icon" } %>
3
- <%= pb_rails "tooltip", props: { trigger_element_selector: "#tool-tip-with-icon-1", tooltip_id: "tool-tip-with-icon-1", position: "top" } do %>
4
- <%= pb_rails("icon", props: { icon: "paper-plane", fixed_width: true, color: "white", size: "1x", padding_right: "xxs" }) %>
5
- Send Email
6
- <% end %>
7
- <%= pb_rails "button", props: { id: "tool-tip-with-icon-2", text: "Tooltip With Icon" } %>
8
- <%= pb_rails "tooltip", props: { trigger_element_selector: "#tool-tip-with-icon-2", tooltip_id: "tool-tip-with-icon-2", position: "bottom" } do %>
9
- <%= pb_rails("icon", props: { icon: "paper-plane", fixed_width: true, color: "white", size: "1x", padding_right: "xxs" }) %>
10
- Send Email
11
- <% end %>
12
- <%= pb_rails "button", props: { id: "tool-tip-with-icon-3", text: "Tooltip With Icon" } %>
13
- <%= pb_rails "tooltip", props: { trigger_element_selector: "#tool-tip-with-icon-3", tooltip_id: "tool-tip-with-icon-3", position: "left" } do %>
14
- <%= pb_rails("icon", props: { icon: "paper-plane", fixed_width: true, color: "white", size: "1x", padding_right: "xxs" }) %>
15
- Send Email
16
- <% end %>
17
- <%= pb_rails "button", props: { id: "tool-tip-with-icon-4", text: "Tooltip With Icon" } %>
18
- <%= pb_rails "tooltip", props: { trigger_element_selector: "#tool-tip-with-icon-4", tooltip_id: "tool-tip-with-icon-4", position: "right" } do %>
19
- <%= pb_rails("icon", props: { icon: "paper-plane", fixed_width: true, color: "white", size: "1x", padding_right: "xxs" }) %>
20
- Send Email
21
- <% end %>
22
- <% end %>
@@ -1,66 +0,0 @@
1
- import React from 'react'
2
-
3
- import { Typeahead, Title } from 'playbook-ui'
4
- import { useForm } from 'react-hook-form'
5
-
6
- const languages = [
7
- { label: 'JavaScript', value: '1995', category: 'Web Development' },
8
- { label: 'Python', value: '1991', category: 'General Purpose' },
9
- { label: 'Java', value: '1995', category: 'Enterprise' },
10
- { label: 'C++', value: '1985', category: 'Systems Programming' },
11
- { label: 'Go', value: '2009', category: 'Systems Programming' },
12
- { label: 'Rust', value: '2010', category: 'Systems Programming' },
13
- { label: 'Swift', value: '2014', category: 'Mobile Development' },
14
- { label: 'Kotlin', value: '2011', category: 'Mobile Development' },
15
- { label: 'Ruby', value: '1995', category: 'General Purpose' },
16
- { label: 'PHP', value: '1995', category: 'Web Development' },
17
- ]
18
-
19
- const colors = [
20
- { label: 'Orange', value: '#FFA500' },
21
- { label: 'Red', value: '#FF0000' },
22
- { label: 'Green', value: '#00FF00' },
23
- { label: 'Blue', value: '#0000FF' },
24
- ]
25
-
26
- const TypeaheadReactHook = (props) => {
27
- const { register, watch } = useForm()
28
-
29
- const selectedLanguages = watch('languages')
30
- const selectedColor = watch('color')
31
-
32
- return (
33
- <>
34
- <Typeahead
35
- isMulti
36
- label="Multi Select Languages"
37
- multiKit="language"
38
- options={languages}
39
- {...props}
40
- {...register('languages')}
41
- />
42
- <Title
43
- size={4}
44
- text='Selected Languages'
45
- />
46
- {selectedLanguages && selectedLanguages.map(language => (
47
- <p key={language.label}>{`${language.label} - ${language.value} - ${language.category}`}</p>
48
- ))}
49
-
50
- <Typeahead
51
- label="Colors"
52
- marginTop="lg"
53
- options={colors}
54
- {...props}
55
- {...register('color')}
56
- />
57
- <Title
58
- size={4}
59
- text='Selected Color'
60
- />
61
- <p>{ selectedColor && `${selectedColor.label} - ${selectedColor.value}`}</p>
62
- </>
63
- )
64
- }
65
-
66
- export default TypeaheadReactHook
@@ -1 +0,0 @@
1
- You can pass `react-hook-form` props to the Typeahead kit.