playbook_ui 16.1.0.pre.alpha.play274314102 → 16.1.0.pre.alpha.play276813969
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 +4 -4
- data/app/pb_kits/playbook/pb_advanced_table/Components/RegularTableView.tsx +2 -12
- data/app/pb_kits/playbook/pb_advanced_table/advanced_table.test.jsx +0 -33
- data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +0 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +1 -2
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.scss +1 -1
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.tsx +0 -17
- data/app/pb_kits/playbook/pb_checkbox/checkbox.html.erb +1 -10
- data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +0 -2
- data/app/pb_kits/playbook/pb_checkbox/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_checkbox/docs/index.js +0 -1
- data/app/pb_kits/playbook/pb_date_picker/_date_picker.tsx +5 -14
- data/app/pb_kits/playbook/pb_form/docs/_form_with_required_indicator.html.erb +3 -6
- data/app/pb_kits/playbook/pb_form/pb_form_validation.js +2 -9
- data/app/pb_kits/playbook/pb_passphrase/_passphrase.tsx +2 -20
- data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.tsx +34 -71
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_required_indicator.jsx +0 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_attributes.html.erb +5 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_attributes.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_default.html.erb +1 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_default.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_focus.html.erb +3 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_focus.jsx +0 -5
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_inline.html.erb +6 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_inline.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_preview.html.erb +35 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_preview.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_required_indicator.html.erb +10 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_required_indicator.jsx +0 -5
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_simple.html.erb +1 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_simple.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_sticky.html.erb +1 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_sticky.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_templates.html.erb +115 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_templates.jsx +0 -4
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_toolbar_bottom.html.erb +4 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_toolbar_bottom.jsx +14 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/example.yml +20 -23
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/index.js +1 -2
- data/app/pb_kits/playbook/pb_rich_text_editor/rich_text_editor.html.erb +5 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/rich_text_editor.rb +63 -0
- data/app/pb_kits/playbook/pb_table/index.ts +27 -29
- data/app/pb_kits/playbook/pb_text_input/text_input.html.erb +10 -10
- data/app/pb_kits/playbook/pb_textarea/_textarea.tsx +0 -10
- data/app/pb_kits/playbook/pb_textarea/docs/_textarea_default.html.erb +3 -3
- data/app/pb_kits/playbook/pb_textarea/docs/_textarea_default.jsx +0 -3
- data/app/pb_kits/playbook/pb_textarea/textarea.html.erb +9 -25
- data/app/pb_kits/playbook/pb_textarea/textarea.rb +1 -7
- data/app/pb_kits/playbook/pb_time_picker/_time_picker.tsx +11 -97
- data/app/pb_kits/playbook/pb_time_picker/docs/_time_picker_on_handler.jsx +2 -5
- data/app/pb_kits/playbook/pb_time_picker/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_time_picker/docs/index.js +0 -1
- data/app/pb_kits/playbook/pb_time_picker/time_picker.rb +0 -3
- data/app/pb_kits/playbook/pb_time_picker/time_picker.test.jsx +1 -47
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.tsx +323 -410
- data/app/pb_kits/playbook/pb_typeahead/components/Control.tsx +0 -2
- data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_typeahead/docs/index.js +21 -22
- data/app/pb_kits/playbook/pb_typeahead/typeahead.html.erb +2 -3
- data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +1 -3
- data/dist/chunks/{_pb_line_graph-DuJNCf7N.js → _pb_line_graph-BgKF_zz1.js} +1 -1
- data/dist/chunks/_typeahead-C4YsbA48.js +1 -0
- data/dist/chunks/{globalProps-Bc-FVsRt.js → globalProps-BhVYCqRf.js} +1 -1
- data/dist/chunks/lib-DD34ZrWL.js +29 -0
- data/dist/chunks/vendor.js +3 -3
- data/dist/menu.yml +2 -2
- data/dist/playbook-rails-react-bindings.js +1 -1
- data/dist/playbook-rails.js +1 -1
- data/lib/playbook/forms/builder/form_field_builder.rb +1 -1
- data/lib/playbook/forms/builder/typeahead_field.rb +1 -15
- data/lib/playbook/forms/builder.rb +2 -2
- data/lib/playbook/version.rb +1 -1
- metadata +19 -23
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_styling_background_custom.jsx +0 -71
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_styling_background_custom.md +0 -4
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.html.erb +0 -6
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.jsx +0 -17
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.md +0 -3
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.md +0 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_label.jsx +0 -44
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_label.md +0 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_label.jsx +0 -33
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_label.md +0 -1
- data/app/pb_kits/playbook/pb_textarea/docs/_textarea_default.md +0 -1
- data/app/pb_kits/playbook/pb_time_picker/docs/_time_picker_required_indicator.html.erb +0 -6
- data/app/pb_kits/playbook/pb_time_picker/docs/_time_picker_required_indicator.jsx +0 -16
- data/app/pb_kits/playbook/pb_time_picker/docs/_time_picker_required_indicator.md +0 -3
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.html.erb +0 -16
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.jsx +0 -23
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.md +0 -3
- data/dist/chunks/_typeahead-Cx2lp7TD.js +0 -1
- data/dist/chunks/lib-BwX82vim.js +0 -29
|
@@ -2,9 +2,6 @@ import React, { useState } from 'react'
|
|
|
2
2
|
import RichTextEditor from '../../pb_rich_text_editor/_rich_text_editor'
|
|
3
3
|
import Button from '../../pb_button/_button'
|
|
4
4
|
import Card from '../../pb_card/_card'
|
|
5
|
-
import { TrixEditor } from 'react-trix'
|
|
6
|
-
// eslint-disable-next-line no-unused-vars
|
|
7
|
-
import Trix from 'trix'
|
|
8
5
|
|
|
9
6
|
const RichTextEditorPreview = (props) => {
|
|
10
7
|
const [showPreview, setShowPreview] = useState(false)
|
|
@@ -18,7 +15,6 @@ const RichTextEditorPreview = (props) => {
|
|
|
18
15
|
return (
|
|
19
16
|
<div>
|
|
20
17
|
<RichTextEditor
|
|
21
|
-
TrixEditor={TrixEditor}
|
|
22
18
|
id="content-preview-editor"
|
|
23
19
|
onChange={handleChange}
|
|
24
20
|
{...props}
|
data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_required_indicator.html.erb
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<%= pb_rails("rich_text_editor", props: {
|
|
2
|
+
id: "required-indicator",
|
|
3
|
+
input_options: {
|
|
4
|
+
id: 'hidden_input_id',
|
|
5
|
+
name: "hidden_input_name"
|
|
6
|
+
},
|
|
7
|
+
label: "Label",
|
|
8
|
+
required_indicator: true,
|
|
9
|
+
value: "Add your text here. You can format your text, add links, quotes, and bullets."
|
|
10
|
+
}) %>
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import React, { useState } from 'react'
|
|
2
2
|
import RichTextEditor from '../../pb_rich_text_editor/_rich_text_editor'
|
|
3
|
-
import { TrixEditor } from 'react-trix'
|
|
4
|
-
// eslint-disable-next-line no-unused-vars
|
|
5
|
-
import Trix from 'trix'
|
|
6
3
|
|
|
7
4
|
const RichTextEditorRequiredIndicator = (props) => {
|
|
8
5
|
const [value, setValue] = useState('Add your text here. You can format your text, add links, quotes, and bullets.'),
|
|
@@ -11,8 +8,6 @@ const RichTextEditorRequiredIndicator = (props) => {
|
|
|
11
8
|
return (
|
|
12
9
|
<div>
|
|
13
10
|
<RichTextEditor
|
|
14
|
-
TrixEditor={TrixEditor}
|
|
15
|
-
inputOptions = {{ id: "required" }}
|
|
16
11
|
label="Label"
|
|
17
12
|
onChange={handleOnChange}
|
|
18
13
|
requiredIndicator
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= pb_rails("rich_text_editor", props: {simple: true, id: "simple"}) %>
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import RichTextEditor from '../../pb_rich_text_editor/_rich_text_editor'
|
|
3
|
-
import { TrixEditor } from 'react-trix'
|
|
4
|
-
// eslint-disable-next-line no-unused-vars
|
|
5
|
-
import Trix from 'trix'
|
|
6
3
|
|
|
7
4
|
const RichTextEditorSimple = (props) => (
|
|
8
5
|
<div>
|
|
9
6
|
<RichTextEditor
|
|
10
|
-
TrixEditor={TrixEditor}
|
|
11
7
|
simple
|
|
12
8
|
{...props}
|
|
13
9
|
/>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= pb_rails("rich_text_editor", props: {id: "sticky", sticky: true, value: "In this example, when you scroll down, the rich text editor's toolbar will scroll along with the page and it will no longer be visible at the top of the page. Dummy text to enable scroll.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis."}) %>
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import RichTextEditor from '../../pb_rich_text_editor/_rich_text_editor'
|
|
3
|
-
import { TrixEditor } from 'react-trix'
|
|
4
|
-
// eslint-disable-next-line no-unused-vars
|
|
5
|
-
import Trix from 'trix'
|
|
6
3
|
|
|
7
4
|
const RichTextEditorSticky = (props) => (
|
|
8
5
|
<div>
|
|
9
6
|
<RichTextEditor
|
|
10
|
-
TrixEditor={TrixEditor}
|
|
11
7
|
id="sticky"
|
|
12
8
|
sticky
|
|
13
9
|
value="In this example, when you scroll down, the rich text editor's toolbar will scroll along with the page and it will no longer be visible at the top of the page. Dummy text to enable scroll.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ornare lorem ut pellentesque tempor. Vivamus ut ex vestibulum velit rich text editor eleifend fringilla. Sed non metus dictum, elementum mauris wysiwyg html editor non, sagittis odio. Nullam pellentesque leo sit amet ante suscipit wysiwyg html editor sagittis. Donec tempus vulputate suscipit. Ut non felis rich text editor ac dolor pulvinar lacinia eu eget urna. Sed tincidunt sapien vulputate tellus fringilla sodales. Morbi accumsan dui wysiwyg html editor sed massa pellentesque, quis vestibulum lectus scelerisque. Nulla ultrices mi id felis luctus aliquet. Donec nec ligula wysiwyg html editor pretium sapien semper dictum eu id quam. Etiam ut sollicitudin nibh. Quisque eu ultrices dui. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus rich text editor mi eu consequat. Nullam tincidunt erat et placerat mattis. Nunc rich text editor congue, enim vitae dictum dignissim, libero nisl sagittis augue, non aliquet nibh tortor sit amet ex. Aliquam cursus maximus mi eu consequat. Nullam tincidunt erat et placerat mattis."
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
<% changelog = "<div>
|
|
2
|
+
<strong>Changelog:<br></strong>
|
|
3
|
+
[INSERT LINK]<br><br>
|
|
4
|
+
You can test the normal spots of Playbook rails and react on
|
|
5
|
+
dev docs plus the following:
|
|
6
|
+
</div>
|
|
7
|
+
<div>
|
|
8
|
+
<br>
|
|
9
|
+
</div>" %>
|
|
10
|
+
|
|
11
|
+
<% release = "<div>
|
|
12
|
+
<div>
|
|
13
|
+
<strong>Story Background</strong>
|
|
14
|
+
</div>
|
|
15
|
+
<div>
|
|
16
|
+
Follow the{' '}
|
|
17
|
+
<a href='https://github.com/powerhome/playbook/wiki/Release-Team-Guide'>
|
|
18
|
+
release process
|
|
19
|
+
</a>{' '}
|
|
20
|
+
to create a new version, create a gem, and package. Create a Ninja testing
|
|
21
|
+
plan, then update Nitro with the new version.
|
|
22
|
+
</div>
|
|
23
|
+
<div>
|
|
24
|
+
<br />
|
|
25
|
+
</div>
|
|
26
|
+
<div>
|
|
27
|
+
<strong>Timeline / Due Date</strong>
|
|
28
|
+
</div>
|
|
29
|
+
<div>
|
|
30
|
+
<em>Release End of business Thursday</em>
|
|
31
|
+
</div>
|
|
32
|
+
<div>
|
|
33
|
+
<em>Testing on Nitro End of business Friday</em>
|
|
34
|
+
</div>
|
|
35
|
+
<div>
|
|
36
|
+
<br />
|
|
37
|
+
</div>
|
|
38
|
+
<div>
|
|
39
|
+
<strong>Definition of done</strong>
|
|
40
|
+
</div>
|
|
41
|
+
<ol>
|
|
42
|
+
<li>Merge all PR’s</li>
|
|
43
|
+
<li>Update the final CHANGELOG</li>
|
|
44
|
+
<li>Version up and generate NPM, and RubyGem</li>
|
|
45
|
+
<li>Create next version branch and milestone</li>
|
|
46
|
+
<li>Update default branch and branch protection rules </li>
|
|
47
|
+
<li>Notify Everyone of new version</li>
|
|
48
|
+
<li>
|
|
49
|
+
Generate testing plan and pages to test for Ninjas (update runway
|
|
50
|
+
ticket)
|
|
51
|
+
</li>
|
|
52
|
+
<li>Update version on Nitro and get on Demo</li>
|
|
53
|
+
<li>Send Ninjas demo and runway ticket for testing</li>
|
|
54
|
+
<li>Ninja Approved + PR Approved</li>
|
|
55
|
+
</ol>
|
|
56
|
+
<div>
|
|
57
|
+
<br />
|
|
58
|
+
</div>
|
|
59
|
+
<div>
|
|
60
|
+
<strong>Stakeholders / Sign-off</strong>
|
|
61
|
+
</div>
|
|
62
|
+
<ul>
|
|
63
|
+
<li>Code Owners</li>
|
|
64
|
+
</ul>
|
|
65
|
+
<div>
|
|
66
|
+
<br />
|
|
67
|
+
<strong>Cadence</strong>
|
|
68
|
+
<br />
|
|
69
|
+
Jason, Jon, Stephen, Jasper, Brendan, Cole
|
|
70
|
+
</div>
|
|
71
|
+
</div>" %>
|
|
72
|
+
|
|
73
|
+
<%= pb_rails("select", props: {
|
|
74
|
+
id: "rails-select-dropdown",
|
|
75
|
+
label: "",
|
|
76
|
+
name: "",
|
|
77
|
+
blank_selection: "Select a template",
|
|
78
|
+
options: [
|
|
79
|
+
{
|
|
80
|
+
value: release,
|
|
81
|
+
value_text: "Playbook Release",
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
value: changelog,
|
|
85
|
+
value_text: "Changelog",
|
|
86
|
+
},
|
|
87
|
+
]
|
|
88
|
+
}) %>
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
<%= pb_rails("rich_text_editor", props: {classname: 'template-test', id: "template", template: '' }) %>
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
<script>
|
|
98
|
+
const updateContent = (template) => {
|
|
99
|
+
const trix = document.querySelector('.template-test trix-editor');
|
|
100
|
+
const editor = trix.editor;
|
|
101
|
+
console.log(editor)
|
|
102
|
+
editor.loadHTML("")
|
|
103
|
+
editor.setSelectedRange([0, 0])
|
|
104
|
+
editor.insertHTML(template)
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
window.addEventListener('DOMContentLoaded', () => {
|
|
108
|
+
const editor = document.querySelector("#rails-select-dropdown")
|
|
109
|
+
editor.addEventListener('change', function() {
|
|
110
|
+
console.log('You selected: ', this.value);
|
|
111
|
+
const template = this.value
|
|
112
|
+
updateContent(template);
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
</script>
|
|
@@ -2,9 +2,6 @@ import React, { useState } from 'react'
|
|
|
2
2
|
import RichTextEditor from '../../pb_rich_text_editor/_rich_text_editor'
|
|
3
3
|
import Select from '../../pb_select/_select'
|
|
4
4
|
import { changelog, release } from './templates.js'
|
|
5
|
-
import { TrixEditor } from 'react-trix'
|
|
6
|
-
// eslint-disable-next-line no-unused-vars
|
|
7
|
-
import Trix from 'trix'
|
|
8
5
|
|
|
9
6
|
const RichTextEditorTemplates = (props) => {
|
|
10
7
|
const [editorContent, setEditorContent] = useState('')
|
|
@@ -34,7 +31,6 @@ const RichTextEditorTemplates = (props) => {
|
|
|
34
31
|
{...props}
|
|
35
32
|
/>
|
|
36
33
|
<RichTextEditor
|
|
37
|
-
TrixEditor={TrixEditor}
|
|
38
34
|
id="template"
|
|
39
35
|
template={editorContent}
|
|
40
36
|
{...props}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import RichTextEditor from '../../pb_rich_text_editor/_rich_text_editor'
|
|
3
|
+
|
|
4
|
+
const RichTextEditorToolbarBottom = (props) => (
|
|
5
|
+
<div>
|
|
6
|
+
<RichTextEditor
|
|
7
|
+
id="bottom-toolbar"
|
|
8
|
+
toolbarBottom
|
|
9
|
+
{...props}
|
|
10
|
+
/>
|
|
11
|
+
</div>
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
export default RichTextEditorToolbarBottom
|
|
@@ -1,41 +1,38 @@
|
|
|
1
1
|
examples:
|
|
2
2
|
|
|
3
3
|
rails:
|
|
4
|
+
- rich_text_editor_default: Default
|
|
5
|
+
- rich_text_editor_simple: Simple
|
|
6
|
+
- rich_text_editor_attributes: Attributes
|
|
7
|
+
- rich_text_editor_focus: Focus
|
|
8
|
+
- rich_text_editor_sticky: Sticky
|
|
9
|
+
- rich_text_editor_templates: Templates
|
|
10
|
+
# - rich_text_editor_toolbar_bottom: Toolbar Bottom
|
|
11
|
+
- rich_text_editor_inline: Inline
|
|
12
|
+
- rich_text_editor_required_indicator: Required Indicator
|
|
13
|
+
- rich_text_editor_preview: Preview
|
|
4
14
|
|
|
5
15
|
react:
|
|
16
|
+
- rich_text_editor_default: Default
|
|
6
17
|
- rich_text_editor_advanced_default: Advanced Default
|
|
7
18
|
- rich_text_editor_more_extensions: Advanced (Extra Extensions)
|
|
8
19
|
- rich_text_editor_toolbar_disabled: Advanced (Toolbar disabled)
|
|
20
|
+
- rich_text_editor_simple: Simple
|
|
9
21
|
- rich_text_editor_advanced_simple: Advanced (Simple)
|
|
22
|
+
- rich_text_editor_attributes: Attributes
|
|
10
23
|
- rich_text_editor_advanced_attributes: Advanced (Attributes)
|
|
24
|
+
- rich_text_editor_focus: Focus
|
|
11
25
|
- rich_text_editor_advanced_focus: Advanced (Focus)
|
|
26
|
+
- rich_text_editor_sticky: Sticky
|
|
12
27
|
- rich_text_editor_advanced_sticky: Advanced (Sticky)
|
|
28
|
+
- rich_text_editor_templates: Templates
|
|
13
29
|
- rich_text_editor_advanced_templates: Advanced (Templates)
|
|
30
|
+
# - rich_text_editor_toolbar_bottom: Toolbar Bottom
|
|
31
|
+
- rich_text_editor_inline: Inline
|
|
14
32
|
- rich_text_editor_advanced_inline: Advanced (Inline)
|
|
15
33
|
- rich_text_editor_advanced_height: Advanced Height
|
|
16
34
|
- rich_text_editor_advanced_min_height: Advanced Min Height
|
|
17
|
-
-
|
|
35
|
+
- rich_text_editor_required_indicator: Required Indicator
|
|
18
36
|
- rich_text_editor_advanced_required_indicator: Advanced Required Indicator
|
|
37
|
+
- rich_text_editor_preview: Preview
|
|
19
38
|
- rich_text_editor_advanced_preview: Advanced Preview
|
|
20
|
-
- rich_text_editor_default: Legacy Default (Trix)
|
|
21
|
-
- rich_text_editor_simple: Legacy Simple (Trix)
|
|
22
|
-
- rich_text_editor_attributes: Legacy Attributes (Trix)
|
|
23
|
-
- rich_text_editor_focus: Legacy Focus (Trix)
|
|
24
|
-
- rich_text_editor_sticky: Legacy Sticky (Trix)
|
|
25
|
-
- rich_text_editor_templates: Legacy Templates (Trix)
|
|
26
|
-
- rich_text_editor_inline: Legacy Inline (Trix)
|
|
27
|
-
- rich_text_editor_label: Legacy Label (Trix)
|
|
28
|
-
- rich_text_editor_required_indicator: Legacy Required Indicator (Trix)
|
|
29
|
-
- rich_text_editor_preview: Legacy Preview (Trix)
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
@@ -4,6 +4,7 @@ export { default as RichTextEditorAttributes } from './_rich_text_editor_attribu
|
|
|
4
4
|
export { default as RichTextEditorFocus } from './_rich_text_editor_focus.jsx'
|
|
5
5
|
export { default as RichTextEditorSticky } from './_rich_text_editor_sticky.jsx'
|
|
6
6
|
export { default as RichTextEditorTemplates } from './_rich_text_editor_templates.jsx'
|
|
7
|
+
export { default as RichTextEditorToolbarBottom } from './_rich_text_editor_toolbar_bottom.jsx'
|
|
7
8
|
export { default as RichTextEditorInline } from './_rich_text_editor_inline.jsx'
|
|
8
9
|
export { default as RichTextEditorPreview } from './_rich_text_editor_preview.jsx'
|
|
9
10
|
export { default as RichTextEditorAdvancedDefault } from './_rich_text_editor_advanced_default.jsx'
|
|
@@ -20,5 +21,3 @@ export { default as RichTextEditorAdvancedHeight } from './_rich_text_editor_adv
|
|
|
20
21
|
export { default as RichTextEditorAdvancedMinHeight } from './_rich_text_editor_advanced_min_height.jsx'
|
|
21
22
|
export { default as RichTextEditorRequiredIndicator } from './_rich_text_editor_required_indicator.jsx'
|
|
22
23
|
export { default as RichTextEditorAdvancedRequiredIndicator } from './_rich_text_editor_advanced_required_indicator.jsx'
|
|
23
|
-
export { default as RichTextEditorLabel } from './_rich_text_editor_label.jsx'
|
|
24
|
-
export { default as RichTextEditorAdvancedLabel } from './_rich_text_editor_advanced_label.jsx'
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Playbook
|
|
4
|
+
module PbRichTextEditor
|
|
5
|
+
class RichTextEditor < Playbook::KitBase
|
|
6
|
+
prop :focus, type: Playbook::Props::Boolean,
|
|
7
|
+
default: false
|
|
8
|
+
|
|
9
|
+
prop :inline, type: Playbook::Props::Boolean,
|
|
10
|
+
default: false
|
|
11
|
+
|
|
12
|
+
prop :simple, type: Playbook::Props::Boolean,
|
|
13
|
+
default: false
|
|
14
|
+
|
|
15
|
+
prop :sticky, type: Playbook::Props::Boolean,
|
|
16
|
+
default: false
|
|
17
|
+
prop :toolbar_bottom, type: Playbook::Props::Boolean,
|
|
18
|
+
default: false
|
|
19
|
+
|
|
20
|
+
prop :value
|
|
21
|
+
prop :template
|
|
22
|
+
prop :placeholder
|
|
23
|
+
prop :input_options
|
|
24
|
+
prop :label
|
|
25
|
+
prop :required_indicator, type: Playbook::Props::Boolean,
|
|
26
|
+
default: false
|
|
27
|
+
|
|
28
|
+
def classname
|
|
29
|
+
generate_classname("pb_rich_text_editor_kit", simple_class, focus_class, sticky_class, separator: " ")
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def focus_class
|
|
33
|
+
focus ? "focus-editor-targets" : nil
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def simple_class
|
|
37
|
+
simple ? "simple" : nil
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def sticky_class
|
|
41
|
+
sticky ? "sticky" : nil
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def rich_text_options
|
|
45
|
+
{
|
|
46
|
+
id: id,
|
|
47
|
+
inline: inline,
|
|
48
|
+
className: classname,
|
|
49
|
+
focus: focus,
|
|
50
|
+
simple: simple,
|
|
51
|
+
sticky: sticky,
|
|
52
|
+
toolbarBottom: toolbar_bottom,
|
|
53
|
+
value: value,
|
|
54
|
+
template: template,
|
|
55
|
+
placeholder: placeholder,
|
|
56
|
+
inputOptions: input_options,
|
|
57
|
+
label: label,
|
|
58
|
+
requiredIndicator: required_indicator,
|
|
59
|
+
}
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
@@ -79,22 +79,21 @@ export default class PbTable extends PbEnhancedElement {
|
|
|
79
79
|
header.classList.add('sticky-left-shadow');
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
|
|
83
|
-
accumulatedWidth += headerWidth;
|
|
84
|
-
|
|
85
|
-
cells.forEach((cell) => {
|
|
86
|
-
cell.classList.add('sticky');
|
|
87
|
-
(cell as HTMLElement).style.left = `${accumulatedWidth - headerWidth}px`;
|
|
88
|
-
|
|
89
|
-
if (!isLastColumn) {
|
|
90
|
-
cell.classList.add('with-border-right');
|
|
91
|
-
cell.classList.remove('sticky-left-shadow');
|
|
92
|
-
} else {
|
|
93
|
-
cell.classList.remove('with-border-right');
|
|
94
|
-
cell.classList.add('sticky-left-shadow');
|
|
95
|
-
}
|
|
96
|
-
});
|
|
82
|
+
accumulatedWidth += (header as HTMLElement).offsetWidth;
|
|
97
83
|
}
|
|
84
|
+
|
|
85
|
+
cells.forEach((cell) => {
|
|
86
|
+
cell.classList.add('sticky');
|
|
87
|
+
(cell as HTMLElement).style.left = `${accumulatedWidth - (header as HTMLElement).offsetWidth}px`;
|
|
88
|
+
|
|
89
|
+
if (!isLastColumn) {
|
|
90
|
+
cell.classList.add('with-border-right');
|
|
91
|
+
cell.classList.remove('sticky-left-shadow');
|
|
92
|
+
} else {
|
|
93
|
+
cell.classList.remove('with-border-right');
|
|
94
|
+
cell.classList.add('sticky-left-shadow');
|
|
95
|
+
}
|
|
96
|
+
});
|
|
98
97
|
});
|
|
99
98
|
}
|
|
100
99
|
|
|
@@ -141,22 +140,21 @@ export default class PbTable extends PbEnhancedElement {
|
|
|
141
140
|
header.classList.add('sticky-right-shadow');
|
|
142
141
|
}
|
|
143
142
|
|
|
144
|
-
|
|
145
|
-
|
|
143
|
+
accumulatedWidth += (header as HTMLElement).offsetWidth;
|
|
144
|
+
}
|
|
146
145
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
146
|
+
cells.forEach((cell) => {
|
|
147
|
+
cell.classList.add('sticky');
|
|
148
|
+
(cell as HTMLElement).style.right = `${accumulatedWidth - (header as HTMLElement).offsetWidth}px`;
|
|
150
149
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
}
|
|
150
|
+
if (!isLastColumn) {
|
|
151
|
+
cell.classList.add('with-border-left');
|
|
152
|
+
cell.classList.remove('sticky-right-shadow');
|
|
153
|
+
} else {
|
|
154
|
+
cell.classList.remove('with-border-left');
|
|
155
|
+
cell.classList.add('sticky-right-shadow');
|
|
156
|
+
}
|
|
157
|
+
});
|
|
160
158
|
});
|
|
161
159
|
}
|
|
162
160
|
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
<%= pb_content_tag(:div, id: nil) do
|
|
1
|
+
<%= pb_content_tag(:div, id: nil ) do %>
|
|
2
2
|
<% if object.label.present? %>
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
<% end %>
|
|
8
|
-
<% else %>
|
|
9
|
-
<%= pb_rails("caption", props: { text: object.label, dark: object.dark, classname: "pb_text_input_kit_label" }) %>
|
|
3
|
+
<label for="<%= object.input_options[:id] || object.id %>" >
|
|
4
|
+
<% if object.required_indicator %>
|
|
5
|
+
<%= pb_rails("caption", props: { dark: object.dark, classname: "pb_text_input_kit_label" }) do %>
|
|
6
|
+
<%= object.label %><span style="color: #DA0014;"> *</span>
|
|
10
7
|
<% end %>
|
|
11
|
-
|
|
8
|
+
<% else %>
|
|
9
|
+
<%= pb_rails("caption", props: { text: object.label, dark: object.dark, classname: "pb_text_input_kit_label" }) %>
|
|
10
|
+
<% end %>
|
|
11
|
+
</label>
|
|
12
12
|
<% end %>
|
|
13
|
-
|
|
14
13
|
<%= content_tag(:div, class: "#{add_on_class} text_input_wrapper") do %>
|
|
15
14
|
<% if content.present? %>
|
|
16
15
|
<%= content %>
|
|
@@ -27,3 +26,4 @@
|
|
|
27
26
|
<%= pb_rails("body", props: {dark: object.dark, status: "negative", text: object.error, id: object.error_id, aria: { atomic: "true", live: "polite" }, html_options: { role: "alert" }}) if object.error %>
|
|
28
27
|
<% end %>
|
|
29
28
|
<% end %>
|
|
29
|
+
|
|
@@ -120,7 +120,6 @@ const Textarea = ({
|
|
|
120
120
|
const characterCounter = () => {
|
|
121
121
|
return maxCharacters && characterCount ? `${checkIfZero(characterCount)} / ${maxCharacters}` : `${checkIfZero(characterCount)}`
|
|
122
122
|
}
|
|
123
|
-
const errorId = error ? `${id}-error` : undefined
|
|
124
123
|
|
|
125
124
|
return (
|
|
126
125
|
<div
|
|
@@ -146,10 +145,7 @@ const Textarea = ({
|
|
|
146
145
|
)}
|
|
147
146
|
{children || (
|
|
148
147
|
<textarea
|
|
149
|
-
aria-describedby={errorId}
|
|
150
|
-
aria-invalid={!!error}
|
|
151
148
|
disabled={disabled}
|
|
152
|
-
id={id}
|
|
153
149
|
name={name}
|
|
154
150
|
onChange={emojiMask ? handleChange : onChange}
|
|
155
151
|
onPaste={emojiMask ? handlePaste : undefined}
|
|
@@ -171,9 +167,6 @@ const Textarea = ({
|
|
|
171
167
|
>
|
|
172
168
|
<FlexItem>
|
|
173
169
|
<Body
|
|
174
|
-
aria={{ atomic: "true", live: "polite" }}
|
|
175
|
-
htmlOptions={{ role: "alert" }}
|
|
176
|
-
id={errorId}
|
|
177
170
|
margin="none"
|
|
178
171
|
status="negative"
|
|
179
172
|
text={error}
|
|
@@ -189,9 +182,6 @@ const Textarea = ({
|
|
|
189
182
|
</Flex>
|
|
190
183
|
) : (
|
|
191
184
|
<Body
|
|
192
|
-
aria={{ atomic: "true", live: "polite" }}
|
|
193
|
-
htmlOptions={{ role: "alert" }}
|
|
194
|
-
id={errorId}
|
|
195
185
|
status="negative"
|
|
196
186
|
text={error}
|
|
197
187
|
/>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
<%= pb_rails("textarea", props: { label: "Label", rows: 4
|
|
1
|
+
<%= pb_rails("textarea", props: { label: "Label", rows: 4}) %>
|
|
2
2
|
|
|
3
3
|
<br/>
|
|
4
4
|
|
|
5
|
-
<%= pb_rails("textarea", props: { label: "Label", placeholder: "Placeholder text"
|
|
5
|
+
<%= pb_rails("textarea", props: { label: "Label", placeholder: "Placeholder text" }) %>
|
|
6
6
|
|
|
7
7
|
<br/>
|
|
8
8
|
|
|
9
|
-
<%= pb_rails("textarea", props: { label: "Label", name: "comment", value: "Default value text"
|
|
9
|
+
<%= pb_rails("textarea", props: { label: "Label", name: "comment", value: "Default value text" }) %>
|
|
@@ -13,7 +13,6 @@ const TextareaDefault = (props) => {
|
|
|
13
13
|
label="Label"
|
|
14
14
|
rows={4}
|
|
15
15
|
{...props}
|
|
16
|
-
id="default-example-1"
|
|
17
16
|
/>
|
|
18
17
|
|
|
19
18
|
<br />
|
|
@@ -22,7 +21,6 @@ const TextareaDefault = (props) => {
|
|
|
22
21
|
label="Label"
|
|
23
22
|
placeholder="Placeholder text"
|
|
24
23
|
{...props}
|
|
25
|
-
id="default-example-2"
|
|
26
24
|
/>
|
|
27
25
|
|
|
28
26
|
<br />
|
|
@@ -34,7 +32,6 @@ const TextareaDefault = (props) => {
|
|
|
34
32
|
placeholder="Placeholder text"
|
|
35
33
|
value={value}
|
|
36
34
|
{...props}
|
|
37
|
-
id="default-example-3"
|
|
38
35
|
/>
|
|
39
36
|
|
|
40
37
|
</div>
|