playbook_ui_docs 15.7.0.pre.alpha.PLAY2675dropdownquickpickcustomquickpickdates13330 β†’ 15.7.0.pre.alpha.PLAY2678emojimask13284

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9413b5db7a69e4a0eea6552adc99acb08ecfd88437298aebd4b44d81bc9da222
4
- data.tar.gz: c6d4be0cee23406114597f73c231763e747467c03dacd73157f4a3cbc642fc9b
3
+ metadata.gz: 00f66eab6af4876a7710f5dcaf9b02be43446e49c7fb04af7ebebe1ca3d56bae
4
+ data.tar.gz: 147d85c32bd77c89f19abfff71856bd5a437611d44347ab7df3a51d30bfa75f4
5
5
  SHA512:
6
- metadata.gz: d4479f2205e53d256bd30d5acf0af85c4fc7e57c3f3286acb0a6ae9dce15f0c488f7065adb85e9ffdd3767d8f87621c0921c792b6708371266617c29ea6f565f
7
- data.tar.gz: f1f8da450a0ace228ee00fc0ded896afc2a95da5eb7f336b95fb8b76c5f737e3ff1186be1f9f18b0f5b7733556da1e94ac73c5d5d182233430ca7334e71c46b2
6
+ metadata.gz: c0bd1b1559cd5e7f561b78a4aae161f47fd20a812414c03edd8763e221fcc29010cc7ac1cfb781ebfb2bb04ba7624d939c91a0f310d8139e4822cdfa3b3ebb55
7
+ data.tar.gz: 07b84eed2e2a1afbbe86f158a8722e3816d83dbb57eac0b51e6090f57db425de4d04d10a5d8008446aa9c33fa1c4e4a275ed911e2a7c03b54c295bc4902ab549
@@ -25,7 +25,6 @@ examples:
25
25
  - dropdown_quickpick_rails: Quick Pick Variant
26
26
  - dropdown_quickpick_range_end_rails: Quick Pick Variant (Range Ends Today)
27
27
  - dropdown_quickpick_default_dates: Quick Pick Variant (Default Dates)
28
- - dropdown_quickpick_custom_rails: Quick Pick Variant (Custom Quick Pick Dates)
29
28
  - dropdown_quickpick_with_date_pickers_rails: Quick Pick with Date Pickers
30
29
  - dropdown_quickpick_with_date_pickers_default_rails: Quick Pick with Date Pickers (Default Value)
31
30
 
@@ -58,7 +57,6 @@ examples:
58
57
  - dropdown_quickpick: Quick Pick Variant
59
58
  - dropdown_quickpick_range_end: Quick Pick Variant (Range Ends Today)
60
59
  - dropdown_quickpick_default_dates: Quick Pick Variant (Default Dates)
61
- - dropdown_quickpick_custom: Quick Pick Variant (Custom Quick Pick Dates)
62
60
  - dropdown_quickpick_with_date_pickers: Quick Pick Variant with Date Pickers
63
61
 
64
62
 
@@ -26,5 +26,4 @@ export {default as DropdownWithCustomActiveStyleOptions} from './_dropdown_with_
26
26
  export { default as DropdownQuickpick } from './_dropdown_quickpick.jsx'
27
27
  export { default as DropdownQuickpickRangeEnd } from './_dropdown_quickpick_range_end.jsx'
28
28
  export { default as DropdownQuickpickDefaultDates } from './_dropdown_quickpick_default_dates.jsx'
29
- export { default as DropdownQuickpickWithDatePickers } from './_dropdown_quickpick_with_date_pickers.jsx'
30
- export { default as DropdownQuickpickCustom } from './_dropdown_quickpick_custom.jsx'
29
+ export { default as DropdownQuickpickWithDatePickers } from './_dropdown_quickpick_with_date_pickers.jsx'
@@ -90,7 +90,7 @@
90
90
 
91
91
  <%= pb_form_with(scope: :example, url: "", method: :get) do |form| %>
92
92
  <%= form.typeahead :example_typeahead, props: { data: { typeahead_example1: true, user: {} }, label: true, placeholder: "Search for a user" } %>
93
- <%= form.text_field :example_text_field, props: { label: true } %>
93
+ <%= form.text_field :example_text_field, props: { label: "emoji mask demo text input", emoji_mask: true } %>
94
94
  <%= form.text_field :example_text_field_2, props: { label: "Text Field Custom Label" } %>
95
95
  <%= form.phone_number_field :example_phone_number_field, props: { label: "Example phone field", hidden_inputs: true } %>
96
96
  <%= form.email_field :example_email_field, props: { label: true } %>
@@ -98,7 +98,7 @@
98
98
  <%= form.search_field :example_search_field, props: { label: true } %>
99
99
  <%= form.password_field :example_password_field, props: { label: true } %>
100
100
  <%= form.url_field :example_url_field, props: { label: true } %>
101
- <%= form.text_area :example_text_area, props: { label: true } %>
101
+ <%= form.text_area :example_text_area, props: { label: "emoji mask demo textarea", emoji_mask: true } %>
102
102
  <%= form.dropdown_field :example_dropdown, props: { label: true, options: example_dropdown_options } %>
103
103
  <%= form.dropdown_field :example_dropdown_multi, props: { label: true, options: example_dropdown_options, multi_select: true } %>
104
104
  <%= form.select :example_select, [ ["Yes", 1], ["No", 2] ], props: { label: true } %>
@@ -0,0 +1,7 @@
1
+ <%= pb_rails("text_input", props: {
2
+ emoji_mask: true,
3
+ label: "Emoji Mask",
4
+ placeholder: "Try typing or pasting emojis...",
5
+ }) %>
6
+
7
+
@@ -0,0 +1,24 @@
1
+ import React, { useState } from 'react'
2
+
3
+ import TextInput from '../../pb_text_input/_text_input'
4
+
5
+ const TextInputEmojiMask = (props) => {
6
+ const [basicValue, setBasicValue] = useState('')
7
+
8
+ return (
9
+ <div>
10
+ <TextInput
11
+ emojiMask
12
+ label="Emoji Mask"
13
+ onChange={({ target }) => setBasicValue(target.value)}
14
+ placeholder="Try typing or pasting emojis..."
15
+ value={basicValue}
16
+ {...props}
17
+ />
18
+ </div>
19
+ )
20
+ }
21
+
22
+ export default TextInputEmojiMask
23
+
24
+
@@ -0,0 +1,2 @@
1
+ Use the `emojiMask` / `emoji_mask` prop to prevent users from entering emoji characters (🐸 🐈 πŸ„β€β™‚οΈ) in typed or pasted content. It allows accented characters and other non-ASCII letters (Γ©, ΓΌ, ζ–‡).
2
+
@@ -11,6 +11,7 @@ examples:
11
11
  - text_input_mask: Mask
12
12
  - text_input_autocomplete: Autocomplete
13
13
  - text_input_required_indicator: Required Indicator
14
+ - text_input_emoji_mask: Emoji Mask
14
15
 
15
16
 
16
17
  react:
@@ -25,6 +26,7 @@ examples:
25
26
  - text_input_sanitize: Sanitized Masked Input
26
27
  - text_input_autocomplete: Autocomplete
27
28
  - text_input_required_indicator: Required Indicator
29
+ - text_input_emoji_mask: Emoji Mask
28
30
 
29
31
 
30
32
  swift:
@@ -9,3 +9,4 @@ export { default as TextInputMask } from './_text_input_mask.jsx'
9
9
  export { default as TextInputSanitize } from './_text_input_sanitize.jsx'
10
10
  export { default as TextInputAutocomplete } from './_text_input_autocomplete.jsx'
11
11
  export { default as TextInputRequiredIndicator } from './_text_input_required_indicator.jsx'
12
+ export { default as TextInputEmojiMask } from './_text_input_emoji_mask.jsx'
@@ -0,0 +1,5 @@
1
+ <%= pb_rails("textarea", props: {
2
+ emoji_mask: true,
3
+ label: "Emoji Mask",
4
+ placeholder: "Try typing or pasting emojis...",
5
+ }) %>
@@ -0,0 +1,24 @@
1
+ import React, { useState } from 'react'
2
+
3
+ import Textarea from '../../pb_textarea/_textarea'
4
+
5
+ const TextareaEmojiMask = (props) => {
6
+ const [basicValue, setBasicValue] = useState('')
7
+
8
+ return (
9
+ <div>
10
+ <Textarea
11
+ emojiMask
12
+ label="Emoji Mask"
13
+ onChange={({ target }) => setBasicValue(target.value)}
14
+ placeholder="Try typing or pasting emojis..."
15
+ value={basicValue}
16
+ {...props}
17
+ />
18
+ </div>
19
+ )
20
+ }
21
+
22
+ export default TextareaEmojiMask
23
+
24
+
@@ -0,0 +1 @@
1
+ Use the `emojiMask` / `emoji_mask` prop to prevent users from entering emoji characters (🐸 🐈 πŸ„β€β™‚οΈ) in typed or pasted content. It allows accented characters and other non-ASCII letters (Γ©, ΓΌ, ζ–‡).
@@ -7,6 +7,7 @@ examples:
7
7
  - textarea_error: Textarea w/ Error
8
8
  - textarea_character_counter: Character Counter
9
9
  - textarea_inline: Inline
10
+ - textarea_emoji_mask: Emoji Mask
10
11
 
11
12
  react:
12
13
  - textarea_default: Default
@@ -15,6 +16,7 @@ examples:
15
16
  - textarea_error: Textarea w/ Error
16
17
  - textarea_character_counter: Character Counter
17
18
  - textarea_inline: Inline
19
+ - textarea_emoji_mask: Emoji Mask
18
20
 
19
21
  swift:
20
22
  - textarea_default_swift: Default
@@ -4,3 +4,4 @@ export { default as TextareaCustom } from './_textarea_custom.jsx'
4
4
  export { default as TextareaError } from './_textarea_error.jsx'
5
5
  export { default as TextareaCharacterCounter } from './_textarea_character_counter.jsx'
6
6
  export { default as TextareaInline } from './_textarea_inline.jsx'
7
+ export { default as TextareaEmojiMask } from './_textarea_emoji_mask.jsx'
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: 15.7.0.pre.alpha.PLAY2675dropdownquickpickcustomquickpickdates13330
4
+ version: 15.7.0.pre.alpha.PLAY2678emojimask13284
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-01-06 00:00:00.000000000 Z
12
+ date: 2026-01-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: playbook_ui
@@ -924,10 +924,6 @@ files:
924
924
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_multi_select_with_default.jsx
925
925
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick.jsx
926
926
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick.md
927
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_custom.jsx
928
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_custom.md
929
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_custom_rails.html.erb
930
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_custom_rails.md
931
927
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_default_dates.html.erb
932
928
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_default_dates.jsx
933
929
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_default_dates.md
@@ -2384,6 +2380,9 @@ files:
2384
2380
  - app/pb_kits/playbook/pb_text_input/docs/_text_input_disabled.html.erb
2385
2381
  - app/pb_kits/playbook/pb_text_input/docs/_text_input_disabled.jsx
2386
2382
  - app/pb_kits/playbook/pb_text_input/docs/_text_input_disabled_swift.md
2383
+ - app/pb_kits/playbook/pb_text_input/docs/_text_input_emoji_mask.html.erb
2384
+ - app/pb_kits/playbook/pb_text_input/docs/_text_input_emoji_mask.jsx
2385
+ - app/pb_kits/playbook/pb_text_input/docs/_text_input_emoji_mask.md
2387
2386
  - app/pb_kits/playbook/pb_text_input/docs/_text_input_error.html.erb
2388
2387
  - app/pb_kits/playbook/pb_text_input/docs/_text_input_error.jsx
2389
2388
  - app/pb_kits/playbook/pb_text_input/docs/_text_input_error.md
@@ -2413,6 +2412,9 @@ files:
2413
2412
  - app/pb_kits/playbook/pb_textarea/docs/_textarea_default.html.erb
2414
2413
  - app/pb_kits/playbook/pb_textarea/docs/_textarea_default.jsx
2415
2414
  - app/pb_kits/playbook/pb_textarea/docs/_textarea_default_swift.md
2415
+ - app/pb_kits/playbook/pb_textarea/docs/_textarea_emoji_mask.html.erb
2416
+ - app/pb_kits/playbook/pb_textarea/docs/_textarea_emoji_mask.jsx
2417
+ - app/pb_kits/playbook/pb_textarea/docs/_textarea_emoji_mask.md
2416
2418
  - app/pb_kits/playbook/pb_textarea/docs/_textarea_error.html.erb
2417
2419
  - app/pb_kits/playbook/pb_textarea/docs/_textarea_error.jsx
2418
2420
  - app/pb_kits/playbook/pb_textarea/docs/_textarea_error.md
@@ -1,56 +0,0 @@
1
- import React from "react"
2
- import Dropdown from "../_dropdown"
3
-
4
- const DropdownQuickpickCustom = (props) => (
5
- <div>
6
- <Dropdown
7
- customQuickPickDates={{
8
- dates: [
9
- // Allow Playbook to handle the logic...
10
- {
11
- label: "Last 15 months",
12
- value: {
13
- timePeriod: "months",
14
- amount: 15,
15
- },
16
- },
17
- // Or, be explicit with an exact date range for more control...
18
- {
19
- label: "First Week of June 2022",
20
- value: ["06/01/2022", "06/07/2022"],
21
- },
22
- ],
23
- }}
24
- label="Date Range"
25
- marginBottom="sm"
26
- onSelect={(selectedItem) => console.log(selectedItem)}
27
- variant="quickpick"
28
- {...props}
29
- />
30
- <Dropdown
31
- customQuickPickDates={{
32
- dates: [
33
- {
34
- label: "Last 15 months",
35
- value: {
36
- timePeriod: "months",
37
- amount: 15,
38
- },
39
- },
40
- {
41
- label: "First Week of June 2022",
42
- value: ["06/01/2022", "06/07/2022"],
43
- },
44
- ],
45
- override: false,
46
- }}
47
- label="Date Range - Append to Defaults"
48
- onSelect={(selectedItem) => console.log(selectedItem)}
49
- variant="quickpick"
50
- {...props}
51
- />
52
- </div>
53
- )
54
-
55
- export default DropdownQuickpickCustom
56
-
@@ -1,10 +0,0 @@
1
- The `customQuickPickDates` prop allows for defining custom quick pick date options for the dropdown. The prop accepts an object with two properties: `dates` and `override`.
2
-
3
- **The `dates` property** accepts an array of objects. Each object has `label` and `value` properties. The `label` is what will be displayed in the dropdown menu. The `value` property defines the date range that will be selected, and can be:
4
- - An array of two date strings representing a specific range (e.g., `["06/01/2022", "06/07/2022"]`)
5
- - An object with `timePeriod` and `amount` properties for dynamic date calculations:
6
- - The `timePeriod` property accepts `"days"`, `"weeks"`, `"months"`, `"quarters"`, or `"years"`, representing past time periods calculated from today.
7
- - The `amount` property accepts any number.
8
-
9
- **The `override` property** is a boolean that controls whether custom dates replace or append to the default quick pick options. Default is `true` (replaces defaults). Set to `false` to append your custom dates to the default quick pick options.
10
-
@@ -1,64 +0,0 @@
1
- <%= pb_rails("dropdown", props: {
2
- custom_quick_pick_dates: {
3
- dates: [
4
- # Allow Playbook to handle the logic...
5
- {
6
- label: "Last 15 months",
7
- value: {
8
- time_period: "months",
9
- amount: 15
10
- }
11
- },
12
- # Or, be explicit with an exact date range for more control...
13
- {
14
- label: "First Week of June 2022",
15
- value: ["06/01/2022", "06/07/2022"]
16
- }
17
- ]
18
- },
19
- id: "date-range-quickpick-custom",
20
- label: "Date Range",
21
- margin_bottom: "sm",
22
- variant: "quickpick"
23
- }) %>
24
-
25
- <%= pb_rails("dropdown", props: {
26
- custom_quick_pick_dates: {
27
- override: false,
28
- dates: [
29
- {
30
- label: "Last 15 months",
31
- value: {
32
- time_period: "months",
33
- amount: 15
34
- }
35
- },
36
- {
37
- label: "First Week of June 2022",
38
- value: ["06/01/2022", "06/07/2022"]
39
- }
40
- ]
41
- },
42
- id: "date-range-quickpick-custom-append-to-defaults",
43
- label: "Date Range - Append to Defaults",
44
- variant: "quickpick"
45
- }) %>
46
-
47
- <script>
48
- const dropdown1 = document.getElementById("date-range-quickpick-custom");
49
- if (dropdown1) {
50
- dropdown1.addEventListener("pb:dropdown:selected", (e) => {
51
- const option = e.detail;
52
- console.log("Selected option:", option);
53
- });
54
- }
55
-
56
- const dropdown2 = document.getElementById("date-range-quickpick-custom-append-to-defaults");
57
- if (dropdown2) {
58
- dropdown2.addEventListener("pb:dropdown:selected", (e) => {
59
- const option = e.detail;
60
- console.log("Selected option:", option);
61
- });
62
- }
63
- </script>
64
-
@@ -1,10 +0,0 @@
1
- The `custom_quick_pick_dates` prop allows for defining custom quick pick date options for the dropdown. The prop accepts an object with two properties: `dates` and `override`.
2
-
3
- **The `dates` property** accepts an array of objects. Each object has `label` and `value` properties. The `label` is what will be displayed in the dropdown menu. The `value` property defines the date range that will be selected, and can be:
4
- - An array of two date strings representing a specific range (e.g., `["06/01/2022", "06/07/2022"]`)
5
- - An object with `time_period` and `amount` properties for dynamic date calculations:
6
- - The `time_period` property accepts `"days"`, `"weeks"`, `"months"`, `"quarters"`, or `"years"`, representing past time periods calculated from today.
7
- - The `amount` property accepts any number.
8
-
9
- **The `override` property** is a boolean that controls whether custom dates replace or append to the default quick pick options. Default is `true` (replaces defaults). Set to `false` to append your custom dates to the default quick pick options.
10
-