turbo_material 0.2.1 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/app/assets/dist/turbo_material/tailwind.css +1 -1
- data/app/assets/javascripts/turbo_material/material_chips_select_controller.js +1 -0
- data/app/assets/javascripts/turbo_material/material_data_table_controller.js +56 -0
- data/app/controllers/turbo_material/lookbook_controller.rb +7 -0
- data/app/helpers/turbo_material/data_table_helper.rb +21 -0
- data/app/views/common/_form.html.erb +7 -0
- data/app/views/common/_menu_contents.html.erb +13 -0
- data/app/views/common/_standalone.html.erb +1 -0
- data/app/views/components/_chips_input.html.erb +2 -2
- data/app/views/components/_chips_input_options.html.erb +2 -2
- data/app/views/components/_chips_select.html.erb +5 -22
- data/app/views/components/_material_data_table.html.erb +77 -0
- data/app/views/components/_select.html.erb +1 -18
- data/app/views/components/_select_dropdown_icon.html.erb +18 -0
- data/app/views/layouts/turbo_material/lookbook.html.erb +22 -0
- data/lib/lookbook/chips_input_preview.rb +2 -3
- data/lib/lookbook/chips_select_preview.rb +1 -1
- data/lib/lookbook/radio_preview.rb +1 -1
- data/lib/lookbook/textarea_preview.rb +1 -1
- data/lib/turbo_material/engine.rb +1 -0
- data/lib/turbo_material/version.rb +1 -1
- metadata +12 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b79c96b0690ef3379fdddd465a64014438d621d780b2396ba9cc1006ca412e8
|
4
|
+
data.tar.gz: 950df58f9b35ab7cc2db7ef9add65d2a4d280f7889a29fd461a243331a7c686c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9602d033c7a64925bd9b5dc8e90e1df79faa4887118ea051b33ed6fe4cc6bf2aad2aede44aeeddd3c8ac40cdd78220cd04e053801a3a5fd2216a447af6a52038
|
7
|
+
data.tar.gz: 99956d9f3c9d6668aadfc81d4be59278b2ef2dc67a673ac4b38117dc3c055e45a82f699d732334e9f677f07f7b2f82c48564b5ec2389158a986a53a648d7176a
|
data/README.md
CHANGED
@@ -238,6 +238,7 @@ Gem implements [Lookbook](https://lookbook.build) documentation for all componen
|
|
238
238
|
|
239
239
|
```ruby
|
240
240
|
config.lookbook.preview_paths = [TurboMaterial::Engine.root.join('lib/lookbook')]
|
241
|
+
config.lookbook.preview_controller = 'TurboMaterial::LookbookController'
|
241
242
|
```
|
242
243
|
|
243
244
|
Or extend your existing config for `lookbook.preview_paths` with same value.
|
@@ -1 +1 @@
|
|
1
|
-
/*! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter var,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where([class~=lead]):not(:where([class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose :where(a):not(:where([class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose] *)){list-style-type:decimal;margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose] *)){list-style-type:disc;margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose :where(ol>li):not(:where([class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(hr):not(:where([class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-bottom:3em;margin-top:3em}.prose :where(blockquote):not(:where([class~=not-prose] *)){border-left-color:var(--tw-prose-quote-borders);border-left-width:.25rem;color:var(--tw-prose-quotes);font-style:italic;font-weight:500;margin-bottom:1.6em;margin-top:1.6em;padding-left:1em;quotes:"\201C""\201D""\2018""\2019"}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-size:2.25em;font-weight:800;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose :where(h1 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.5em;font-weight:700;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose :where(h2 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.25em;font-weight:600;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose :where(h3 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose :where(h4 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(figcaption):not(:where([class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose :where(code):not(:where([class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose] *)){background-color:var(--tw-prose-pre-bg);border-radius:.375rem;color:var(--tw-prose-pre-code);font-size:.875em;font-weight:400;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;overflow-x:auto;padding:.8571429em 1.1428571em}.prose :where(pre code):not(:where([class~=not-prose] *)){background-color:initial;border-radius:0;border-width:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:0}.prose :where(pre code):not(:where([class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-bottom:2em;margin-top:2em;table-layout:auto;text-align:left;width:100%}.prose :where(thead):not(:where([class~=not-prose] *)){border-bottom-color:var(--tw-prose-th-borders);border-bottom-width:1px}.prose :where(thead th):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;padding-bottom:.5714286em;padding-left:.5714286em;padding-right:.5714286em;vertical-align:bottom}.prose :where(tbody tr):not(:where([class~=not-prose] *)){border-bottom-color:var(--tw-prose-td-borders);border-bottom-width:1px}.prose :where(tbody tr:last-child):not(:where([class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose] *)){vertical-align:initial}.prose :where(tfoot):not(:where([class~=not-prose] *)){border-top-color:var(--tw-prose-th-borders);border-top-width:1px}.prose :where(tfoot td):not(:where([class~=not-prose] *)){vertical-align:top}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(li):not(:where([class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.8888889em;margin-top:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose] *)){font-size:2.1428571em;line-height:1.2;margin-bottom:.8em;margin-top:0}.prose-sm :where(h2):not(:where([class~=not-prose] *)){font-size:1.4285714em;line-height:1.4;margin-bottom:.8em;margin-top:1.6em}.prose-sm :where(h3):not(:where([class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.5555556em}.prose-sm :where(h4):not(:where([class~=not-prose] *)){line-height:1.4285714;margin-bottom:.5714286em;margin-top:1.4285714em}.prose-sm :where(img):not(:where([class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(video):not(:where([class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(figure):not(:where([class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-sm :where(figcaption):not(:where([class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(code):not(:where([class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose] *)){border-radius:.25rem;font-size:.8571429em;line-height:1.6666667;margin-bottom:1.6666667em;margin-top:1.6666667em;padding:.6666667em 1em}.prose-sm :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-left:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-left:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose] *)){margin-bottom:.2857143em;margin-top:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4285714em}.prose-sm :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose] *)){margin-bottom:2.8571429em;margin-top:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.6666667em;padding-left:1em;padding-right:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.6666667em 1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-sm :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-base{font-size:1rem;line-height:1.75}.prose-base :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose-base :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose-base :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-left:1em}.prose-base :where(h1):not(:where([class~=not-prose] *)){font-size:2.25em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose-base :where(h2):not(:where([class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose-base :where(h3):not(:where([class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose-base :where(h4):not(:where([class~=not-prose] *)){line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose-base :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-base :where(figcaption):not(:where([class~=not-prose] *)){font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose-base :where(code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-base :where(h2 code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-base :where(h3 code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-base :where(pre):not(:where([class~=not-prose] *)){border-radius:.375rem;font-size:.875em;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;padding:.8571429em 1.1428571em}.prose-base :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose-base :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose-base :where(li):not(:where([class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose-base :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose-base :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose-base :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(hr):not(:where([class~=not-prose] *)){margin-bottom:3em;margin-top:3em}.prose-base :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(table):not(:where([class~=not-prose] *)){font-size:.875em;line-height:1.7142857}.prose-base :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.5714286em;padding-left:.5714286em;padding-right:.5714286em}.prose-base :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-base :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-base :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.5714286em}.prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-base :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-lg{font-size:1.125rem;line-height:1.7777778}.prose-lg :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-bottom:1.0909091em;margin-top:1.0909091em}.prose-lg :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.6666667em;margin-top:1.6666667em;padding-left:1em}.prose-lg :where(h1):not(:where([class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.8333333em;margin-top:0}.prose-lg :where(h2):not(:where([class~=not-prose] *)){font-size:1.6666667em;line-height:1.3333333;margin-bottom:1.0666667em;margin-top:1.8666667em}.prose-lg :where(h3):not(:where([class~=not-prose] *)){font-size:1.3333333em;line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-lg :where(h4):not(:where([class~=not-prose] *)){line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.7777778em}.prose-lg :where(img):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(video):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(figcaption):not(:where([class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.prose-lg :where(code):not(:where([class~=not-prose] *)){font-size:.8888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose] *)){font-size:.8666667em}.prose-lg :where(h3 code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose] *)){border-radius:.375rem;font-size:.8888889em;line-height:1.75;margin-bottom:2em;margin-top:2em;padding:1em 1.5em}.prose-lg :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5555556em}.prose-lg :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5555556em}.prose-lg :where(li):not(:where([class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4444444em}.prose-lg :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4444444em}.prose-lg :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(hr):not(:where([class~=not-prose] *)){margin-bottom:3.1111111em;margin-top:3.1111111em}.prose-lg :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.75em;padding-left:.75em;padding-right:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-lg :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-xl{font-size:1.25rem;line-height:1.8}.prose-xl :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em}.prose-xl :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.2em;line-height:1.5;margin-bottom:1em;margin-top:1em}.prose-xl :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-left:1.0666667em}.prose-xl :where(h1):not(:where([class~=not-prose] *)){font-size:2.8em;line-height:1;margin-bottom:.8571429em;margin-top:0}.prose-xl :where(h2):not(:where([class~=not-prose] *)){font-size:1.8em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:1.5555556em}.prose-xl :where(h3):not(:where([class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:.6666667em;margin-top:1.6em}.prose-xl :where(h4):not(:where([class~=not-prose] *)){line-height:1.6;margin-bottom:.6em;margin-top:1.8em}.prose-xl :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-xl :where(figcaption):not(:where([class~=not-prose] *)){font-size:.9em;line-height:1.5555556;margin-top:1em}.prose-xl :where(code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-xl :where(h2 code):not(:where([class~=not-prose] *)){font-size:.8611111em}.prose-xl :where(h3 code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-xl :where(pre):not(:where([class~=not-prose] *)){border-radius:.5rem;font-size:.9em;line-height:1.7777778;margin-bottom:2em;margin-top:2em;padding:1.1111111em 1.3333333em}.prose-xl :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-left:1.6em}.prose-xl :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-left:1.6em}.prose-xl :where(li):not(:where([class~=not-prose] *)){margin-bottom:.6em;margin-top:.6em}.prose-xl :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4em}.prose-xl :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4em}.prose-xl :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(hr):not(:where([class~=not-prose] *)){margin-bottom:2.8em;margin-top:2.8em}.prose-xl :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(table):not(:where([class~=not-prose] *)){font-size:.9em;line-height:1.5555556}.prose-xl :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.8888889em;padding-left:.6666667em;padding-right:.6666667em}.prose-xl :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-xl :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-xl :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.8888889em .6666667em}.prose-xl :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-xl :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-xl :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-2xl{font-size:1.5rem;line-height:1.6666667}.prose-2xl :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-2xl :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.25em;line-height:1.4666667;margin-bottom:1.0666667em;margin-top:1.0666667em}.prose-2xl :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em;padding-left:1.1111111em}.prose-2xl :where(h1):not(:where([class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.875em;margin-top:0}.prose-2xl :where(h2):not(:where([class~=not-prose] *)){font-size:2em;line-height:1.0833333;margin-bottom:.8333333em;margin-top:1.5em}.prose-2xl :where(h3):not(:where([class~=not-prose] *)){font-size:1.5em;line-height:1.2222222;margin-bottom:.6666667em;margin-top:1.5555556em}.prose-2xl :where(h4):not(:where([class~=not-prose] *)){line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-2xl :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-2xl :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-2xl :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-2xl :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-2xl :where(figcaption):not(:where([class~=not-prose] *)){font-size:.8333333em;line-height:1.6;margin-top:1em}.prose-2xl :where(code):not(:where([class~=not-prose] *)){font-size:.8333333em}.prose-2xl :where(h2 code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-2xl :where(h3 code):not(:where([class~=not-prose] *)){font-size:.8888889em}.prose-2xl :where(pre):not(:where([class~=not-prose] *)){border-radius:.5rem;font-size:.8333333em;line-height:1.8;margin-bottom:2em;margin-top:2em;padding:1.2em 1.6em}.prose-2xl :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5833333em}.prose-2xl :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5833333em}.prose-2xl :where(li):not(:where([class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose-2xl :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4166667em}.prose-2xl :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4166667em}.prose-2xl :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.8333333em;margin-top:.8333333em}.prose-2xl :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-2xl :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-2xl :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-2xl :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-2xl :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-2xl :where(hr):not(:where([class~=not-prose] *)){margin-bottom:3em;margin-top:3em}.prose-2xl :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(table):not(:where([class~=not-prose] *)){font-size:.8333333em;line-height:1.4}.prose-2xl :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.8em;padding-left:.6em;padding-right:.6em}.prose-2xl :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-2xl :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-2xl :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.8em .6em}.prose-2xl :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-2xl :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-2xl :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.prose-slate{--tw-prose-body:#334155;--tw-prose-headings:#0f172a;--tw-prose-lead:#475569;--tw-prose-links:#0f172a;--tw-prose-bold:#0f172a;--tw-prose-counters:#64748b;--tw-prose-bullets:#cbd5e1;--tw-prose-hr:#e2e8f0;--tw-prose-quotes:#0f172a;--tw-prose-quote-borders:#e2e8f0;--tw-prose-captions:#64748b;--tw-prose-code:#0f172a;--tw-prose-pre-code:#e2e8f0;--tw-prose-pre-bg:#1e293b;--tw-prose-th-borders:#cbd5e1;--tw-prose-td-borders:#e2e8f0;--tw-prose-invert-body:#cbd5e1;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#94a3b8;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#94a3b8;--tw-prose-invert-bullets:#475569;--tw-prose-invert-hr:#334155;--tw-prose-invert-quotes:#f1f5f9;--tw-prose-invert-quote-borders:#334155;--tw-prose-invert-captions:#94a3b8;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#cbd5e1;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#475569;--tw-prose-invert-td-borders:#334155}.prose-gray{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151}.prose-zinc{--tw-prose-body:#3f3f46;--tw-prose-headings:#18181b;--tw-prose-lead:#52525b;--tw-prose-links:#18181b;--tw-prose-bold:#18181b;--tw-prose-counters:#71717a;--tw-prose-bullets:#d4d4d8;--tw-prose-hr:#e4e4e7;--tw-prose-quotes:#18181b;--tw-prose-quote-borders:#e4e4e7;--tw-prose-captions:#71717a;--tw-prose-code:#18181b;--tw-prose-pre-code:#e4e4e7;--tw-prose-pre-bg:#27272a;--tw-prose-th-borders:#d4d4d8;--tw-prose-td-borders:#e4e4e7;--tw-prose-invert-body:#d4d4d8;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#a1a1aa;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#a1a1aa;--tw-prose-invert-bullets:#52525b;--tw-prose-invert-hr:#3f3f46;--tw-prose-invert-quotes:#f4f4f5;--tw-prose-invert-quote-borders:#3f3f46;--tw-prose-invert-captions:#a1a1aa;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d4d4d8;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#52525b;--tw-prose-invert-td-borders:#3f3f46}.prose-neutral{--tw-prose-body:#404040;--tw-prose-headings:#171717;--tw-prose-lead:#525252;--tw-prose-links:#171717;--tw-prose-bold:#171717;--tw-prose-counters:#737373;--tw-prose-bullets:#d4d4d4;--tw-prose-hr:#e5e5e5;--tw-prose-quotes:#171717;--tw-prose-quote-borders:#e5e5e5;--tw-prose-captions:#737373;--tw-prose-code:#171717;--tw-prose-pre-code:#e5e5e5;--tw-prose-pre-bg:#262626;--tw-prose-th-borders:#d4d4d4;--tw-prose-td-borders:#e5e5e5;--tw-prose-invert-body:#d4d4d4;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#a3a3a3;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#a3a3a3;--tw-prose-invert-bullets:#525252;--tw-prose-invert-hr:#404040;--tw-prose-invert-quotes:#f5f5f5;--tw-prose-invert-quote-borders:#404040;--tw-prose-invert-captions:#a3a3a3;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d4d4d4;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#525252;--tw-prose-invert-td-borders:#404040}.prose-stone{--tw-prose-body:#44403c;--tw-prose-headings:#1c1917;--tw-prose-lead:#57534e;--tw-prose-links:#1c1917;--tw-prose-bold:#1c1917;--tw-prose-counters:#78716c;--tw-prose-bullets:#d6d3d1;--tw-prose-hr:#e7e5e4;--tw-prose-quotes:#1c1917;--tw-prose-quote-borders:#e7e5e4;--tw-prose-captions:#78716c;--tw-prose-code:#1c1917;--tw-prose-pre-code:#e7e5e4;--tw-prose-pre-bg:#292524;--tw-prose-th-borders:#d6d3d1;--tw-prose-td-borders:#e7e5e4;--tw-prose-invert-body:#d6d3d1;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#a8a29e;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#a8a29e;--tw-prose-invert-bullets:#57534e;--tw-prose-invert-hr:#44403c;--tw-prose-invert-quotes:#f5f5f4;--tw-prose-invert-quote-borders:#44403c;--tw-prose-invert-captions:#a8a29e;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d6d3d1;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#57534e;--tw-prose-invert-td-borders:#44403c}.prose-red{--tw-prose-links:#dc2626;--tw-prose-invert-links:#ef4444}.prose-orange{--tw-prose-links:#ea580c;--tw-prose-invert-links:#f97316}.prose-amber{--tw-prose-links:#d97706;--tw-prose-invert-links:#f59e0b}.prose-yellow{--tw-prose-links:#ca8a04;--tw-prose-invert-links:#eab308}.prose-lime{--tw-prose-links:#65a30d;--tw-prose-invert-links:#84cc16}.prose-green{--tw-prose-links:#16a34a;--tw-prose-invert-links:#22c55e}.prose-emerald{--tw-prose-links:#059669;--tw-prose-invert-links:#10b981}.prose-teal{--tw-prose-links:#0d9488;--tw-prose-invert-links:#14b8a6}.prose-cyan{--tw-prose-links:#0891b2;--tw-prose-invert-links:#06b6d4}.prose-sky{--tw-prose-links:#0284c7;--tw-prose-invert-links:#0ea5e9}.prose-blue{--tw-prose-links:#2563eb;--tw-prose-invert-links:#3b82f6}.prose-indigo{--tw-prose-links:#4f46e5;--tw-prose-invert-links:#6366f1}.prose-violet{--tw-prose-links:#7c3aed;--tw-prose-invert-links:#8b5cf6}.prose-purple{--tw-prose-links:#9333ea;--tw-prose-invert-links:#a855f7}.prose-fuchsia{--tw-prose-links:#c026d3;--tw-prose-invert-links:#d946ef}.prose-pink{--tw-prose-links:#db2777;--tw-prose-invert-links:#ec4899}.prose-rose{--tw-prose-links:#e11d48;--tw-prose-invert-links:#f43f5e}.fixed{position:fixed}.relative{position:relative}.\!top-6{top:1.5rem!important}.flex{display:flex}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.\!h-full{height:100%!important}.\!h-max{height:-moz-max-content!important;height:max-content!important}.max-h-64{max-height:16rem}.\!min-h-\[14rem\]{min-height:14rem!important}.\!w-auto{width:auto!important}.\!w-full{width:100%!important}.w-full{width:100%}.\!min-w-\[36rem\]{min-width:36rem!important}.max-w-prose{max-width:65ch}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.overflow-y-auto{overflow-y:auto}.p-2{padding:.5rem}.\!pt-8{padding-top:2rem!important}.pb-1{padding-bottom:.25rem}.font-sans{font-family:Inter var,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.capitalize{text-transform:capitalize}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.mdc-text-field{background-color:initial!important}@media (min-width:1024px){.lg\:inline{display:inline}}
|
1
|
+
/*! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter var,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where([class~=lead]):not(:where([class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose :where(a):not(:where([class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose] *)){list-style-type:decimal;margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose] *)){list-style-type:disc;margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose :where(ol>li):not(:where([class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(hr):not(:where([class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-bottom:3em;margin-top:3em}.prose :where(blockquote):not(:where([class~=not-prose] *)){border-left-color:var(--tw-prose-quote-borders);border-left-width:.25rem;color:var(--tw-prose-quotes);font-style:italic;font-weight:500;margin-bottom:1.6em;margin-top:1.6em;padding-left:1em;quotes:"\201C""\201D""\2018""\2019"}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-size:2.25em;font-weight:800;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose :where(h1 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.5em;font-weight:700;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose :where(h2 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.25em;font-weight:600;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose :where(h3 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose :where(h4 strong):not(:where([class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(figcaption):not(:where([class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose :where(code):not(:where([class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose] *)){background-color:var(--tw-prose-pre-bg);border-radius:.375rem;color:var(--tw-prose-pre-code);font-size:.875em;font-weight:400;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;overflow-x:auto;padding:.8571429em 1.1428571em}.prose :where(pre code):not(:where([class~=not-prose] *)){background-color:initial;border-radius:0;border-width:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:0}.prose :where(pre code):not(:where([class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-bottom:2em;margin-top:2em;table-layout:auto;text-align:left;width:100%}.prose :where(thead):not(:where([class~=not-prose] *)){border-bottom-color:var(--tw-prose-th-borders);border-bottom-width:1px}.prose :where(thead th):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;padding-bottom:.5714286em;padding-left:.5714286em;padding-right:.5714286em;vertical-align:bottom}.prose :where(tbody tr):not(:where([class~=not-prose] *)){border-bottom-color:var(--tw-prose-td-borders);border-bottom-width:1px}.prose :where(tbody tr:last-child):not(:where([class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose] *)){vertical-align:initial}.prose :where(tfoot):not(:where([class~=not-prose] *)){border-top-color:var(--tw-prose-th-borders);border-top-width:1px}.prose :where(tfoot td):not(:where([class~=not-prose] *)){vertical-align:top}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(li):not(:where([class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.8888889em;margin-top:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose] *)){font-size:2.1428571em;line-height:1.2;margin-bottom:.8em;margin-top:0}.prose-sm :where(h2):not(:where([class~=not-prose] *)){font-size:1.4285714em;line-height:1.4;margin-bottom:.8em;margin-top:1.6em}.prose-sm :where(h3):not(:where([class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.5555556em}.prose-sm :where(h4):not(:where([class~=not-prose] *)){line-height:1.4285714;margin-bottom:.5714286em;margin-top:1.4285714em}.prose-sm :where(img):not(:where([class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(video):not(:where([class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(figure):not(:where([class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-sm :where(figcaption):not(:where([class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(code):not(:where([class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose] *)){border-radius:.25rem;font-size:.8571429em;line-height:1.6666667;margin-bottom:1.6666667em;margin-top:1.6666667em;padding:.6666667em 1em}.prose-sm :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-left:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-left:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose] *)){margin-bottom:.2857143em;margin-top:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4285714em}.prose-sm :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose] *)){margin-bottom:2.8571429em;margin-top:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.6666667em;padding-left:1em;padding-right:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.6666667em 1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-sm :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-base{font-size:1rem;line-height:1.75}.prose-base :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose-base :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose-base :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-left:1em}.prose-base :where(h1):not(:where([class~=not-prose] *)){font-size:2.25em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose-base :where(h2):not(:where([class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose-base :where(h3):not(:where([class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose-base :where(h4):not(:where([class~=not-prose] *)){line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose-base :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-base :where(figcaption):not(:where([class~=not-prose] *)){font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose-base :where(code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-base :where(h2 code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-base :where(h3 code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-base :where(pre):not(:where([class~=not-prose] *)){border-radius:.375rem;font-size:.875em;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;padding:.8571429em 1.1428571em}.prose-base :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose-base :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-left:1.625em}.prose-base :where(li):not(:where([class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose-base :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose-base :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.375em}.prose-base :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(hr):not(:where([class~=not-prose] *)){margin-bottom:3em;margin-top:3em}.prose-base :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(table):not(:where([class~=not-prose] *)){font-size:.875em;line-height:1.7142857}.prose-base :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.5714286em;padding-left:.5714286em;padding-right:.5714286em}.prose-base :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-base :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-base :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.5714286em}.prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-base :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-base :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-lg{font-size:1.125rem;line-height:1.7777778}.prose-lg :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-bottom:1.0909091em;margin-top:1.0909091em}.prose-lg :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.6666667em;margin-top:1.6666667em;padding-left:1em}.prose-lg :where(h1):not(:where([class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.8333333em;margin-top:0}.prose-lg :where(h2):not(:where([class~=not-prose] *)){font-size:1.6666667em;line-height:1.3333333;margin-bottom:1.0666667em;margin-top:1.8666667em}.prose-lg :where(h3):not(:where([class~=not-prose] *)){font-size:1.3333333em;line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-lg :where(h4):not(:where([class~=not-prose] *)){line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.7777778em}.prose-lg :where(img):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(video):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(figcaption):not(:where([class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.prose-lg :where(code):not(:where([class~=not-prose] *)){font-size:.8888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose] *)){font-size:.8666667em}.prose-lg :where(h3 code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose] *)){border-radius:.375rem;font-size:.8888889em;line-height:1.75;margin-bottom:2em;margin-top:2em;padding:1em 1.5em}.prose-lg :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5555556em}.prose-lg :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5555556em}.prose-lg :where(li):not(:where([class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4444444em}.prose-lg :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4444444em}.prose-lg :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(hr):not(:where([class~=not-prose] *)){margin-bottom:3.1111111em;margin-top:3.1111111em}.prose-lg :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.75em;padding-left:.75em;padding-right:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-lg :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-xl{font-size:1.25rem;line-height:1.8}.prose-xl :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em}.prose-xl :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.2em;line-height:1.5;margin-bottom:1em;margin-top:1em}.prose-xl :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-left:1.0666667em}.prose-xl :where(h1):not(:where([class~=not-prose] *)){font-size:2.8em;line-height:1;margin-bottom:.8571429em;margin-top:0}.prose-xl :where(h2):not(:where([class~=not-prose] *)){font-size:1.8em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:1.5555556em}.prose-xl :where(h3):not(:where([class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:.6666667em;margin-top:1.6em}.prose-xl :where(h4):not(:where([class~=not-prose] *)){line-height:1.6;margin-bottom:.6em;margin-top:1.8em}.prose-xl :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-xl :where(figcaption):not(:where([class~=not-prose] *)){font-size:.9em;line-height:1.5555556;margin-top:1em}.prose-xl :where(code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-xl :where(h2 code):not(:where([class~=not-prose] *)){font-size:.8611111em}.prose-xl :where(h3 code):not(:where([class~=not-prose] *)){font-size:.9em}.prose-xl :where(pre):not(:where([class~=not-prose] *)){border-radius:.5rem;font-size:.9em;line-height:1.7777778;margin-bottom:2em;margin-top:2em;padding:1.1111111em 1.3333333em}.prose-xl :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-left:1.6em}.prose-xl :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-left:1.6em}.prose-xl :where(li):not(:where([class~=not-prose] *)){margin-bottom:.6em;margin-top:.6em}.prose-xl :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4em}.prose-xl :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4em}.prose-xl :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(hr):not(:where([class~=not-prose] *)){margin-bottom:2.8em;margin-top:2.8em}.prose-xl :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(table):not(:where([class~=not-prose] *)){font-size:.9em;line-height:1.5555556}.prose-xl :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.8888889em;padding-left:.6666667em;padding-right:.6666667em}.prose-xl :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-xl :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-xl :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.8888889em .6666667em}.prose-xl :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-xl :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-xl :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-xl :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-2xl{font-size:1.5rem;line-height:1.6666667}.prose-2xl :where(p):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-2xl :where([class~=lead]):not(:where([class~=not-prose] *)){font-size:1.25em;line-height:1.4666667;margin-bottom:1.0666667em;margin-top:1.0666667em}.prose-2xl :where(blockquote):not(:where([class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em;padding-left:1.1111111em}.prose-2xl :where(h1):not(:where([class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.875em;margin-top:0}.prose-2xl :where(h2):not(:where([class~=not-prose] *)){font-size:2em;line-height:1.0833333;margin-bottom:.8333333em;margin-top:1.5em}.prose-2xl :where(h3):not(:where([class~=not-prose] *)){font-size:1.5em;line-height:1.2222222;margin-bottom:.6666667em;margin-top:1.5555556em}.prose-2xl :where(h4):not(:where([class~=not-prose] *)){line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-2xl :where(img):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-2xl :where(video):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-2xl :where(figure):not(:where([class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-2xl :where(figure>*):not(:where([class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-2xl :where(figcaption):not(:where([class~=not-prose] *)){font-size:.8333333em;line-height:1.6;margin-top:1em}.prose-2xl :where(code):not(:where([class~=not-prose] *)){font-size:.8333333em}.prose-2xl :where(h2 code):not(:where([class~=not-prose] *)){font-size:.875em}.prose-2xl :where(h3 code):not(:where([class~=not-prose] *)){font-size:.8888889em}.prose-2xl :where(pre):not(:where([class~=not-prose] *)){border-radius:.5rem;font-size:.8333333em;line-height:1.8;margin-bottom:2em;margin-top:2em;padding:1.2em 1.6em}.prose-2xl :where(ol):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5833333em}.prose-2xl :where(ul):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-left:1.5833333em}.prose-2xl :where(li):not(:where([class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose-2xl :where(ol>li):not(:where([class~=not-prose] *)){padding-left:.4166667em}.prose-2xl :where(ul>li):not(:where([class~=not-prose] *)){padding-left:.4166667em}.prose-2xl :where(.prose>ul>li p):not(:where([class~=not-prose] *)){margin-bottom:.8333333em;margin-top:.8333333em}.prose-2xl :where(.prose>ul>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-2xl :where(.prose>ul>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-2xl :where(.prose>ol>li>:first-child):not(:where([class~=not-prose] *)){margin-top:1.3333333em}.prose-2xl :where(.prose>ol>li>:last-child):not(:where([class~=not-prose] *)){margin-bottom:1.3333333em}.prose-2xl :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-2xl :where(hr):not(:where([class~=not-prose] *)){margin-bottom:3em;margin-top:3em}.prose-2xl :where(hr+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(h2+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(h3+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(h4+*):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(table):not(:where([class~=not-prose] *)){font-size:.8333333em;line-height:1.4}.prose-2xl :where(thead th):not(:where([class~=not-prose] *)){padding-bottom:.8em;padding-left:.6em;padding-right:.6em}.prose-2xl :where(thead th:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-2xl :where(thead th:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-2xl :where(tbody td,tfoot td):not(:where([class~=not-prose] *)){padding:.8em .6em}.prose-2xl :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose] *)){padding-left:0}.prose-2xl :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose] *)){padding-right:0}.prose-2xl :where(.prose>:first-child):not(:where([class~=not-prose] *)){margin-top:0}.prose-2xl :where(.prose>:last-child):not(:where([class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.prose-slate{--tw-prose-body:#334155;--tw-prose-headings:#0f172a;--tw-prose-lead:#475569;--tw-prose-links:#0f172a;--tw-prose-bold:#0f172a;--tw-prose-counters:#64748b;--tw-prose-bullets:#cbd5e1;--tw-prose-hr:#e2e8f0;--tw-prose-quotes:#0f172a;--tw-prose-quote-borders:#e2e8f0;--tw-prose-captions:#64748b;--tw-prose-code:#0f172a;--tw-prose-pre-code:#e2e8f0;--tw-prose-pre-bg:#1e293b;--tw-prose-th-borders:#cbd5e1;--tw-prose-td-borders:#e2e8f0;--tw-prose-invert-body:#cbd5e1;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#94a3b8;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#94a3b8;--tw-prose-invert-bullets:#475569;--tw-prose-invert-hr:#334155;--tw-prose-invert-quotes:#f1f5f9;--tw-prose-invert-quote-borders:#334155;--tw-prose-invert-captions:#94a3b8;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#cbd5e1;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#475569;--tw-prose-invert-td-borders:#334155}.prose-gray{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151}.prose-zinc{--tw-prose-body:#3f3f46;--tw-prose-headings:#18181b;--tw-prose-lead:#52525b;--tw-prose-links:#18181b;--tw-prose-bold:#18181b;--tw-prose-counters:#71717a;--tw-prose-bullets:#d4d4d8;--tw-prose-hr:#e4e4e7;--tw-prose-quotes:#18181b;--tw-prose-quote-borders:#e4e4e7;--tw-prose-captions:#71717a;--tw-prose-code:#18181b;--tw-prose-pre-code:#e4e4e7;--tw-prose-pre-bg:#27272a;--tw-prose-th-borders:#d4d4d8;--tw-prose-td-borders:#e4e4e7;--tw-prose-invert-body:#d4d4d8;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#a1a1aa;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#a1a1aa;--tw-prose-invert-bullets:#52525b;--tw-prose-invert-hr:#3f3f46;--tw-prose-invert-quotes:#f4f4f5;--tw-prose-invert-quote-borders:#3f3f46;--tw-prose-invert-captions:#a1a1aa;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d4d4d8;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#52525b;--tw-prose-invert-td-borders:#3f3f46}.prose-neutral{--tw-prose-body:#404040;--tw-prose-headings:#171717;--tw-prose-lead:#525252;--tw-prose-links:#171717;--tw-prose-bold:#171717;--tw-prose-counters:#737373;--tw-prose-bullets:#d4d4d4;--tw-prose-hr:#e5e5e5;--tw-prose-quotes:#171717;--tw-prose-quote-borders:#e5e5e5;--tw-prose-captions:#737373;--tw-prose-code:#171717;--tw-prose-pre-code:#e5e5e5;--tw-prose-pre-bg:#262626;--tw-prose-th-borders:#d4d4d4;--tw-prose-td-borders:#e5e5e5;--tw-prose-invert-body:#d4d4d4;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#a3a3a3;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#a3a3a3;--tw-prose-invert-bullets:#525252;--tw-prose-invert-hr:#404040;--tw-prose-invert-quotes:#f5f5f5;--tw-prose-invert-quote-borders:#404040;--tw-prose-invert-captions:#a3a3a3;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d4d4d4;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#525252;--tw-prose-invert-td-borders:#404040}.prose-stone{--tw-prose-body:#44403c;--tw-prose-headings:#1c1917;--tw-prose-lead:#57534e;--tw-prose-links:#1c1917;--tw-prose-bold:#1c1917;--tw-prose-counters:#78716c;--tw-prose-bullets:#d6d3d1;--tw-prose-hr:#e7e5e4;--tw-prose-quotes:#1c1917;--tw-prose-quote-borders:#e7e5e4;--tw-prose-captions:#78716c;--tw-prose-code:#1c1917;--tw-prose-pre-code:#e7e5e4;--tw-prose-pre-bg:#292524;--tw-prose-th-borders:#d6d3d1;--tw-prose-td-borders:#e7e5e4;--tw-prose-invert-body:#d6d3d1;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#a8a29e;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#a8a29e;--tw-prose-invert-bullets:#57534e;--tw-prose-invert-hr:#44403c;--tw-prose-invert-quotes:#f5f5f4;--tw-prose-invert-quote-borders:#44403c;--tw-prose-invert-captions:#a8a29e;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d6d3d1;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#57534e;--tw-prose-invert-td-borders:#44403c}.prose-red{--tw-prose-links:#dc2626;--tw-prose-invert-links:#ef4444}.prose-orange{--tw-prose-links:#ea580c;--tw-prose-invert-links:#f97316}.prose-amber{--tw-prose-links:#d97706;--tw-prose-invert-links:#f59e0b}.prose-yellow{--tw-prose-links:#ca8a04;--tw-prose-invert-links:#eab308}.prose-lime{--tw-prose-links:#65a30d;--tw-prose-invert-links:#84cc16}.prose-green{--tw-prose-links:#16a34a;--tw-prose-invert-links:#22c55e}.prose-emerald{--tw-prose-links:#059669;--tw-prose-invert-links:#10b981}.prose-teal{--tw-prose-links:#0d9488;--tw-prose-invert-links:#14b8a6}.prose-cyan{--tw-prose-links:#0891b2;--tw-prose-invert-links:#06b6d4}.prose-sky{--tw-prose-links:#0284c7;--tw-prose-invert-links:#0ea5e9}.prose-blue{--tw-prose-links:#2563eb;--tw-prose-invert-links:#3b82f6}.prose-indigo{--tw-prose-links:#4f46e5;--tw-prose-invert-links:#6366f1}.prose-violet{--tw-prose-links:#7c3aed;--tw-prose-invert-links:#8b5cf6}.prose-purple{--tw-prose-links:#9333ea;--tw-prose-invert-links:#a855f7}.prose-fuchsia{--tw-prose-links:#c026d3;--tw-prose-invert-links:#d946ef}.prose-pink{--tw-prose-links:#db2777;--tw-prose-invert-links:#ec4899}.prose-rose{--tw-prose-links:#e11d48;--tw-prose-invert-links:#f43f5e}.fixed{position:fixed}.\!relative{position:relative!important}.relative{position:relative}.\!top-6{top:1.5rem!important}.mx-auto{margin-left:auto;margin-right:auto}.flex{display:flex}.table{display:table}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.\!h-fit{height:-moz-fit-content!important;height:fit-content!important}.\!h-full{height:100%!important}.\!h-max{height:-moz-max-content!important;height:max-content!important}.\!max-h-0{max-height:0!important}.max-h-64{max-height:16rem}.\!min-h-\[14rem\]{min-height:14rem!important}.\!w-auto{width:auto!important}.\!w-full{width:100%!important}.w-full{width:100%}.\!min-w-\[36rem\]{min-width:36rem!important}.max-w-prose{max-width:65ch}.\!shrink{flex-shrink:1!important}.\!grow{flex-grow:1!important}.\!grow-0{flex-grow:0!important}.\!flex-row{flex-direction:row!important}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.\!flex-wrap{flex-wrap:wrap!important}.items-center{align-items:center}.justify-between{justify-content:space-between}.overflow-y-auto{overflow-y:auto}.p-2{padding:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.\!pt-8{padding-top:2rem!important}.pl-2{padding-left:.5rem}.font-sans{font-family:Inter var,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.capitalize{text-transform:capitalize}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.mdc-text-field{background-color:initial!important}@media (min-width:1024px){.lg\:inline{display:inline}}
|
@@ -0,0 +1,56 @@
|
|
1
|
+
import { Controller } from "@hotwired/stimulus";
|
2
|
+
import { Turbo } from "@hotwired/turbo-rails";
|
3
|
+
import { put } from "@rails/request.js";
|
4
|
+
|
5
|
+
export default class extends Controller {
|
6
|
+
dataTable = undefined;
|
7
|
+
static values = { url: String, selectUrl: String, queryString: String, body: String, selectionType: String };
|
8
|
+
|
9
|
+
connect() {
|
10
|
+
this.dataTable = mdc.dataTable.MDCDataTable.attachTo(this.element);
|
11
|
+
this.dataTable.listen('MDCDataTable:sorted', this.sort.bind(this));
|
12
|
+
this.dataTable.listen('MDCDataTable:rowSelectionChanged', this.select.bind(this));
|
13
|
+
this.dataTable.listen('MDCDataTable:selectedAll', this.selectAll.bind(this));
|
14
|
+
this.dataTable.listen('MDCDataTable:unselectedAll', this.unselectAll.bind(this));
|
15
|
+
}
|
16
|
+
|
17
|
+
sort(event) {
|
18
|
+
let params = new URLSearchParams(this.queryStringValue);
|
19
|
+
params.delete("order");
|
20
|
+
params.delete("reverse");
|
21
|
+
params.append("order", event.detail.columnId);
|
22
|
+
params.append("reverse", event.detail.sortValue === "descending" ? "true" : "false");
|
23
|
+
let frame = this.element.querySelector('turbo-frame#pupils-table-data');
|
24
|
+
Turbo.visit(`${this.urlValue}?${params.toString()}`);
|
25
|
+
// , { action: 'advance', frame: this.bodyValue }
|
26
|
+
// FIXME: get this back as soon as https://github.com/hotwired/turbo/issues/489 is fixed
|
27
|
+
}
|
28
|
+
|
29
|
+
select(event) {
|
30
|
+
put(`${this.selectUrlValue || this.urlValue}/${event.detail.rowId}/select`, {
|
31
|
+
body: {
|
32
|
+
type: this.selectionTypeValue,
|
33
|
+
selected: event.detail.selected,
|
34
|
+
},
|
35
|
+
responseKind: "turbo-stream",
|
36
|
+
});
|
37
|
+
}
|
38
|
+
|
39
|
+
selectAll(event, selected = true) {
|
40
|
+
let params = new URLSearchParams(this.queryStringValue);
|
41
|
+
put(`${this.selectUrlValue || this.urlValue}/select_all?${params.toString()}`, {
|
42
|
+
body: {
|
43
|
+
type: this.selectionTypeValue,
|
44
|
+
selected: selected,
|
45
|
+
},
|
46
|
+
responseKind: "turbo-stream",
|
47
|
+
});
|
48
|
+
}
|
49
|
+
|
50
|
+
unselectAll(event) {
|
51
|
+
this.selectAll(event, false);
|
52
|
+
}
|
53
|
+
|
54
|
+
disconnect() {
|
55
|
+
}
|
56
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module TurboMaterial
|
2
|
+
module DataTableHelper
|
3
|
+
def material_data_table(kwargs = {})
|
4
|
+
render "components/material_data_table", **kwargs
|
5
|
+
end
|
6
|
+
|
7
|
+
def aria_sort(key, default: false)
|
8
|
+
return 'none' unless (params[:order] == key) || (params[:order].blank? && default)
|
9
|
+
|
10
|
+
(params[:reverse] == 'true') || (params[:reverse].blank? && default) ? 'descending' : 'ascending'
|
11
|
+
end
|
12
|
+
|
13
|
+
def sort_arrow(aria_sort)
|
14
|
+
aria_sort == 'descending' ? 'arrow_downward' : 'arrow_upward'
|
15
|
+
end
|
16
|
+
|
17
|
+
def sort_class(aria_sort)
|
18
|
+
aria_sort == 'none' ? '' : ' mdc-data-table__header-cell--sorted'
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<div class="flex-col w-full p-2">
|
2
|
+
<div class="mx-auto px-6 py-3">
|
3
|
+
<%= form_with(url: '/', method: :get, html: { novalidate: true }) do |form| %>
|
4
|
+
<%= public_send local_assigns.delete(:helper_name).to_sym, **local_assigns.merge(form: form) %>
|
5
|
+
<%- end -%>
|
6
|
+
</div>
|
7
|
+
</div>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<ul class="mdc-deprecated-list mdc-deprecated-list--icon-list" role="menu" aria-hidden="true" aria-orientation="vertical" tabindex="-1">
|
2
|
+
<li class="mdc-deprecated-list-item" role="menuitem">
|
3
|
+
<span class="mdc-deprecated-list-item__ripple"></span>
|
4
|
+
<span class="mdc-deprecated-list-item__icon material-icons">person</span>
|
5
|
+
<span class="mdc-deprecated-list-item__text pl-2">My Profile</span>
|
6
|
+
</li>
|
7
|
+
<li class="mdc-list-divider" role="separator"></li>
|
8
|
+
<li class="mdc-deprecated-list-item" role="menuitem">
|
9
|
+
<span class="mdc-deprecated-list-item__ripple"></span>
|
10
|
+
<span class="mdc-deprecated-list-item__icon material-icons">logout</span>
|
11
|
+
<span class="mdc-deprecated-list-item__text pl-2">Logout</span>
|
12
|
+
</li>
|
13
|
+
</ul>
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= public_send local_assigns.delete(:helper_name).to_sym, **local_assigns %>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<%# locals: (form:, disabled: false, required: false, name:, label: nil, id:, frame: nil, suffix: nil, type: 'text', url: nil, selected: [], options: [], value: nil) %>
|
1
|
+
<%# locals: (form:, disabled: false, required: false, name:, label: nil, id:, frame: nil, suffix: nil, type: 'text', url: nil, selected: [], options: [], value: nil, fixed: false) %>
|
2
2
|
<%- id = [name, suffix].compact_blank.join('-') -%>
|
3
3
|
<div data-controller="material-chips-input"
|
4
4
|
data-material-chips-input-url-value="<%= url %>"
|
@@ -31,6 +31,6 @@
|
|
31
31
|
<span class="mdc-line-ripple"></span>
|
32
32
|
</label>
|
33
33
|
<div class="mdc-menu-surface--anchor">
|
34
|
-
<%= render partial: 'components/chips_input_options', locals: { options: options, suffix: suffix, name: name, label: label } %>
|
34
|
+
<%= render partial: 'components/chips_input_options', locals: { options: options, suffix: suffix, name: name, label: label, fixed: fixed } %>
|
35
35
|
</div>
|
36
36
|
</div>
|
@@ -1,7 +1,7 @@
|
|
1
|
-
<%# locals: (suffix:, options: [], label:, name:, opened: 'false') %>
|
1
|
+
<%# locals: (suffix:, options: [], label:, name:, opened: 'false', fixed: false) %>
|
2
2
|
<%- id = [name, suffix].compact_blank.join('-') -%>
|
3
3
|
<div id="<%= "#{id}-panel" %>"
|
4
|
-
class="mdc-menu-surface <%= (opened != 'true' || options.size.zero?) ? '' : 'mdc-menu-surface--open' %> !z-100 mdc-menu-surface--fullwidth"
|
4
|
+
class="mdc-menu-surface <%= (opened != 'true' || options.size.zero?) ? '' : 'mdc-menu-surface--open' %> !z-100 <%= fixed ? 'mdc-menu-surface--fixed' : 'mdc-menu-surface--fullwidth' %>"
|
5
5
|
data-controller="material-menu-surface"
|
6
6
|
data-material-chips-input-target="panel" data-size="<%= options.size %>">
|
7
7
|
<ul class="mdc-deprecated-list max-h-64 overflow-y-auto"
|
@@ -9,7 +9,7 @@
|
|
9
9
|
data-material-chips-select-modal-url-value="<%= modal_url %>"
|
10
10
|
data-material-chips-select-chip-css-value="<%= chip_css %>"
|
11
11
|
>
|
12
|
-
<div class="mdc-select__anchor"
|
12
|
+
<div class="mdc-select__anchor !h-fit !flex-row !flex-wrap"
|
13
13
|
role="button"
|
14
14
|
aria-haspopup="listbox"
|
15
15
|
aria-expanded="false"
|
@@ -19,27 +19,10 @@
|
|
19
19
|
<% if required %>aria-required="true"<% end %>
|
20
20
|
>
|
21
21
|
<span class="mdc-select__ripple"></span>
|
22
|
-
<span id="<%= id %>-label" class="mdc-floating-label
|
23
|
-
<div class="mdc-chip-set
|
24
|
-
|
25
|
-
<span class="mdc-
|
26
|
-
<svg
|
27
|
-
class="mdc-select__dropdown-icon-graphic"
|
28
|
-
viewBox="7 10 10 5" focusable="false">
|
29
|
-
<polygon
|
30
|
-
class="mdc-select__dropdown-icon-inactive"
|
31
|
-
stroke="none"
|
32
|
-
fill-rule="evenodd"
|
33
|
-
points="7 10 12 15 17 10">
|
34
|
-
</polygon>
|
35
|
-
<polygon
|
36
|
-
class="mdc-select__dropdown-icon-active"
|
37
|
-
stroke="none"
|
38
|
-
fill-rule="evenodd"
|
39
|
-
points="7 15 12 10 17 15">
|
40
|
-
</polygon>
|
41
|
-
</svg>
|
42
|
-
</span>
|
22
|
+
<span id="<%= id %>-label" class="mdc-floating-label !relative !w-full"><%= label || name.capitalize %></span>
|
23
|
+
<div class="mdc-chip-set !grow !flex-wrap" role="grid"></div>
|
24
|
+
<%= render 'components/select_dropdown_icon' %>
|
25
|
+
<span class="mdc-select__selected-text-container !grow-0 !max-h-0"><span id="<%= id %>-selected-text" class="mdc-select__selected-text !hidden"></span></span>
|
43
26
|
<span class="mdc-line-ripple"></span>
|
44
27
|
</div>
|
45
28
|
<%= form.hidden_field name.to_sym, value: value, data: { 'material-chips-select-target': 'hidden' } if form %>
|
@@ -0,0 +1,77 @@
|
|
1
|
+
<%# locals: (name:, table_body:, url:, table_params:, records:, pagy:, table_headers_partial:, table_contents_partial:) %>
|
2
|
+
<div class="mdc-data-table w-full" data-controller="material-data-table"
|
3
|
+
data-material-data-table-body-value="<%= table_body %>"
|
4
|
+
data-material-data-table-url-value="<%= url %>"
|
5
|
+
data-material-data-table-query-string-value="<%= table_params.to_query %>">
|
6
|
+
<div class="mdc-data-table__table-container">
|
7
|
+
<table class="mdc-data-table__table w-[calc(100vw - 16rem)]" aria-label="<%= name %>">
|
8
|
+
<thead>
|
9
|
+
<tr class="mdc-data-table__header-row">
|
10
|
+
<th class="mdc-data-table__header-cell mdc-data-table__header-cell--checkbox" role="columnheader" scope="col">
|
11
|
+
<div class="mdc-checkbox mdc-data-table__header-row-checkbox mdc-checkbox--selected">
|
12
|
+
<input type="checkbox" class="mdc-checkbox__native-control" aria-label="Toggle all rows"/>
|
13
|
+
<div class="mdc-checkbox__background">
|
14
|
+
<svg class="mdc-checkbox__checkmark" viewBox="0 0 24 24">
|
15
|
+
<path class="mdc-checkbox__checkmark-path" fill="none" d="M1.73,12.91 8.1,19.28 22.79,4.59"/>
|
16
|
+
</svg>
|
17
|
+
<div class="mdc-checkbox__mixedmark"></div>
|
18
|
+
</div>
|
19
|
+
<div class="mdc-checkbox__ripple"></div>
|
20
|
+
</div>
|
21
|
+
</th>
|
22
|
+
<%= render partial: table_headers_partial %>
|
23
|
+
</tr>
|
24
|
+
</thead>
|
25
|
+
<tbody class="mdc-data-table__content">
|
26
|
+
<%= render partial: table_contents_partial, locals: { records: records } %>
|
27
|
+
</tbody>
|
28
|
+
</table>
|
29
|
+
</div>
|
30
|
+
<div class="mdc-data-table__pagination">
|
31
|
+
<div class="mdc-data-table__pagination-trailing">
|
32
|
+
<div class="mdc-data-table__pagination-rows-per-page">
|
33
|
+
<div class="mdc-data-table__pagination-rows-per-page-label">
|
34
|
+
Rows per page
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<%= form_with(url: url, method: :get, data: {
|
38
|
+
turbo_frame: table_body,
|
39
|
+
turbo_action: 'advance',
|
40
|
+
controller: 'live-form',
|
41
|
+
action: 'input->live-form#submit submit-now->live-form#submitNow' }, autocomplete: 'off') do |form| %>
|
42
|
+
<% params.keys.select { |k| k.starts_with?('ransack') }.each do |key| -%>
|
43
|
+
<%= form.hidden_field key, value: params[key] %>
|
44
|
+
<%- end -%>
|
45
|
+
<%= material_select name: 'per_page', form: form, id: 'per-page', options: per_page_options,
|
46
|
+
value: pagy.items, outlined: true, additional_classes: 'mdc-data-table__pagination-rows-per-page-select mdc-data-table__pagination-rows-per-page-select--outlined' %>
|
47
|
+
<%- end -%>
|
48
|
+
|
49
|
+
<div class="mdc-data-table__pagination-navigation">
|
50
|
+
<div class="mdc-data-table__pagination-total">
|
51
|
+
<%= pagy.from %>‑<%= pagy.to %> of <%= pagy.count %>
|
52
|
+
</div>
|
53
|
+
<%= button_to url, method: :get, params: table_params.merge(page: 1),
|
54
|
+
data: { 'first-page' => "true", turbo_frame: table_body, turbo_action: 'advance' },
|
55
|
+
disabled: pagy.page == 1, class: "mdc-icon-button material-icons mdc-data-table__pagination-button" do %>
|
56
|
+
<div class="mdc-button__icon">first_page</div>
|
57
|
+
<% end %>
|
58
|
+
<%= button_to url, method: :get, params: table_params.merge(page: pagy.prev),
|
59
|
+
data: { 'prev-page' => "true", turbo_frame: table_body, turbo_action: 'advance' },
|
60
|
+
disabled: pagy.prev.nil?, class: "mdc-icon-button material-icons mdc-data-table__pagination-button" do %>
|
61
|
+
<div class="mdc-button__icon">chevron_left</div>
|
62
|
+
<% end %>
|
63
|
+
<%= button_to url, method: :get, params: table_params.merge(page: pagy.next),
|
64
|
+
data: { 'next-page' => "true", turbo_frame: table_body, turbo_action: 'advance' },
|
65
|
+
disabled: pagy.next.nil?, class: "mdc-icon-button material-icons mdc-data-table__pagination-button" do %>
|
66
|
+
<div class="mdc-button__icon">chevron_right</div>
|
67
|
+
<% end %>
|
68
|
+
<%= button_to url, method: :get, params: table_params.merge(page: pagy.last),
|
69
|
+
data: { 'last-page' => "true", turbo_frame: table_body, turbo_action: 'advance' },
|
70
|
+
disabled: pagy.page == pagy.last, class: "mdc-icon-button material-icons mdc-data-table__pagination-button" do %>
|
71
|
+
<div class="mdc-button__icon">last_page</div>
|
72
|
+
<% end %>
|
73
|
+
</div>
|
74
|
+
</div>
|
75
|
+
</div>
|
76
|
+
</div>
|
77
|
+
</div>
|
@@ -27,24 +27,7 @@
|
|
27
27
|
<%= selected_text || value %>
|
28
28
|
</span>
|
29
29
|
</span>
|
30
|
-
|
31
|
-
<svg
|
32
|
-
class="mdc-select__dropdown-icon-graphic"
|
33
|
-
viewBox="7 10 10 5" focusable="false">
|
34
|
-
<polygon
|
35
|
-
class="mdc-select__dropdown-icon-inactive"
|
36
|
-
stroke="none"
|
37
|
-
fill-rule="evenodd"
|
38
|
-
points="7 10 12 15 17 10">
|
39
|
-
</polygon>
|
40
|
-
<polygon
|
41
|
-
class="mdc-select__dropdown-icon-active"
|
42
|
-
stroke="none"
|
43
|
-
fill-rule="evenodd"
|
44
|
-
points="7 15 12 10 17 15">
|
45
|
-
</polygon>
|
46
|
-
</svg>
|
47
|
-
</span>
|
30
|
+
<%= render 'components/select_dropdown_icon' %>
|
48
31
|
<%- unless outlined -%><span class="mdc-line-ripple"></span><%- end -%>
|
49
32
|
</div>
|
50
33
|
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<span class="mdc-select__dropdown-icon">
|
2
|
+
<svg
|
3
|
+
class="mdc-select__dropdown-icon-graphic"
|
4
|
+
viewBox="7 10 10 5" focusable="false">
|
5
|
+
<polygon
|
6
|
+
class="mdc-select__dropdown-icon-inactive"
|
7
|
+
stroke="none"
|
8
|
+
fill-rule="evenodd"
|
9
|
+
points="7 10 12 15 17 10">
|
10
|
+
</polygon>
|
11
|
+
<polygon
|
12
|
+
class="mdc-select__dropdown-icon-active"
|
13
|
+
stroke="none"
|
14
|
+
fill-rule="evenodd"
|
15
|
+
points="7 15 12 10 17 15">
|
16
|
+
</polygon>
|
17
|
+
</svg>
|
18
|
+
</span>
|
@@ -0,0 +1,22 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>Turbo material</title>
|
5
|
+
<%= csrf_meta_tags %>
|
6
|
+
<%= csp_meta_tag %>
|
7
|
+
<link href="//cdn.jsdelivr.net/npm/material-components-web@latest/dist/material-components-web.min.css" rel="stylesheet">
|
8
|
+
<script src="//cdn.jsdelivr.net/npm/material-components-web@latest/dist/material-components-web.min.js"></script>
|
9
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
|
10
|
+
<%= stylesheet_link_tag "turbo_material/tailwind", "data-turbo-track": "reload" %>
|
11
|
+
<%= javascript_importmap_tags %>
|
12
|
+
<%= javascript_import_module_tag "turbo_material/application" %>
|
13
|
+
<%= stylesheet_link_tag "turbo_material/application", media: "all" %>
|
14
|
+
<style>
|
15
|
+
</style>
|
16
|
+
</head>
|
17
|
+
<body>
|
18
|
+
|
19
|
+
<%= yield %>
|
20
|
+
|
21
|
+
</body>
|
22
|
+
</html>
|
@@ -5,10 +5,9 @@ class ChipsInputPreview < Lookbook::Preview
|
|
5
5
|
# @param label text
|
6
6
|
# @param disabled toggle
|
7
7
|
# @param required toggle
|
8
|
-
def default(label: 'Input', disabled: false, required: false)
|
8
|
+
def default(label: 'Chips Input', disabled: false, required: false)
|
9
9
|
render 'common/form', helper_name: 'material_chips_input',
|
10
|
-
url: '/countries', name: 'countries', label:, id: 'Input', disabled:,
|
11
|
-
required:,
|
10
|
+
url: '/countries', name: 'countries', label:, id: 'Input', disabled:, required:,
|
12
11
|
options: Carmen::Country.all.map { |c| { id: c.alpha_3_code, label: c.name } }
|
13
12
|
end
|
14
13
|
end
|
@@ -3,7 +3,7 @@ class ChipsSelectPreview < Lookbook::Preview
|
|
3
3
|
# @param label text
|
4
4
|
# @param disabled toggle
|
5
5
|
# @param required toggle
|
6
|
-
def default(label: '
|
6
|
+
def default(label: 'Chips Select', disabled: false, required: false)
|
7
7
|
render 'common/form', helper_name: 'material_chips_select', label: label, name: 'checkbox',
|
8
8
|
id: 'Input', disabled: disabled, value: [],
|
9
9
|
options: [
|
@@ -3,7 +3,7 @@ class RadioPreview < Lookbook::Preview
|
|
3
3
|
# @param label text
|
4
4
|
# @param disabled toggle
|
5
5
|
# @param required toggle
|
6
|
-
def default(label: '
|
6
|
+
def default(label: 'Radio', disabled: false, required: false)
|
7
7
|
render 'common/form', helper_name: 'material_radio', label: label, name: 'checkbox', id: 'Input', disabled: disabled, required: required
|
8
8
|
end
|
9
9
|
end
|
@@ -3,7 +3,7 @@ class TextareaPreview < Lookbook::Preview
|
|
3
3
|
# @param label text
|
4
4
|
# @param disabled toggle
|
5
5
|
# @param required toggle
|
6
|
-
def default(label: '
|
6
|
+
def default(label: 'Textarea', disabled: false, required: false)
|
7
7
|
render 'common/form', helper_name: 'material_textarea', label: label, name: 'textarea', id: 'Text', disabled: disabled, required: required
|
8
8
|
end
|
9
9
|
end
|
@@ -11,6 +11,7 @@ module TurboMaterial
|
|
11
11
|
helper TurboMaterial::CheckboxHelper
|
12
12
|
helper TurboMaterial::ChipsInputHelper
|
13
13
|
helper TurboMaterial::ChipsSelectHelper
|
14
|
+
helper TurboMaterial::DataTableHelper
|
14
15
|
helper TurboMaterial::MenuButtonHelper
|
15
16
|
helper TurboMaterial::ModalHelper
|
16
17
|
helper TurboMaterial::RadioHelper
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: turbo_material
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergey Moiseev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-04-
|
11
|
+
date: 2024-04-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -93,6 +93,7 @@ files:
|
|
93
93
|
- app/assets/javascripts/turbo_material/material_checkbox_controller.js
|
94
94
|
- app/assets/javascripts/turbo_material/material_chips_input_controller.js
|
95
95
|
- app/assets/javascripts/turbo_material/material_chips_select_controller.js
|
96
|
+
- app/assets/javascripts/turbo_material/material_data_table_controller.js
|
96
97
|
- app/assets/javascripts/turbo_material/material_dialog_controller.js
|
97
98
|
- app/assets/javascripts/turbo_material/material_input_controller.js
|
98
99
|
- app/assets/javascripts/turbo_material/material_list_controller.js
|
@@ -105,10 +106,12 @@ files:
|
|
105
106
|
- app/assets/stylesheets/turbo_material/application.css
|
106
107
|
- app/assets/stylesheets/turbo_material/application.tailwind.css
|
107
108
|
- app/controllers/turbo_material/application_controller.rb
|
109
|
+
- app/controllers/turbo_material/lookbook_controller.rb
|
108
110
|
- app/helpers/turbo_material/application_helper.rb
|
109
111
|
- app/helpers/turbo_material/checkbox_helper.rb
|
110
112
|
- app/helpers/turbo_material/chips_input_helper.rb
|
111
113
|
- app/helpers/turbo_material/chips_select_helper.rb
|
114
|
+
- app/helpers/turbo_material/data_table_helper.rb
|
112
115
|
- app/helpers/turbo_material/input_helper.rb
|
113
116
|
- app/helpers/turbo_material/menu_button_helper.rb
|
114
117
|
- app/helpers/turbo_material/modal_helper.rb
|
@@ -119,18 +122,24 @@ files:
|
|
119
122
|
- app/jobs/turbo_material/application_job.rb
|
120
123
|
- app/mailers/turbo_material/application_mailer.rb
|
121
124
|
- app/models/turbo_material/application_record.rb
|
125
|
+
- app/views/common/_form.html.erb
|
126
|
+
- app/views/common/_menu_contents.html.erb
|
127
|
+
- app/views/common/_standalone.html.erb
|
122
128
|
- app/views/components/_checkbox.html.erb
|
123
129
|
- app/views/components/_chips_input.html.erb
|
124
130
|
- app/views/components/_chips_input_options.html.erb
|
125
131
|
- app/views/components/_chips_select.html.erb
|
126
132
|
- app/views/components/_input.html.erb
|
133
|
+
- app/views/components/_material_data_table.html.erb
|
127
134
|
- app/views/components/_menu_button.html.erb
|
128
135
|
- app/views/components/_modal.html.erb
|
129
136
|
- app/views/components/_radio.html.erb
|
130
137
|
- app/views/components/_select.html.erb
|
138
|
+
- app/views/components/_select_dropdown_icon.html.erb
|
131
139
|
- app/views/components/_switch.html.erb
|
132
140
|
- app/views/components/_textarea.html.erb
|
133
141
|
- app/views/layouts/turbo_material/application.html.erb
|
142
|
+
- app/views/layouts/turbo_material/lookbook.html.erb
|
134
143
|
- config/importmap.rb
|
135
144
|
- config/routes.rb
|
136
145
|
- config/tailwind.config.js
|
@@ -170,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
170
179
|
- !ruby/object:Gem::Version
|
171
180
|
version: '0'
|
172
181
|
requirements: []
|
173
|
-
rubygems_version: 3.
|
182
|
+
rubygems_version: 3.5.3
|
174
183
|
signing_key:
|
175
184
|
specification_version: 4
|
176
185
|
summary: Material Web Components for Hotwire Turbo.
|