summaryrefslogtreecommitdiffhomepage
path: root/packages/web/src/components/share/part.module.css
diff options
context:
space:
mode:
authorDax <[email protected]>2025-07-07 15:53:43 -0400
committerGitHub <[email protected]>2025-07-07 15:53:43 -0400
commitf884766445bbf1fbce11f1db4bc6174e72d9baa5 (patch)
treee7d9e7b3d8efc8bed249f9d29e2d8fb838a275f2 /packages/web/src/components/share/part.module.css
parent76b2e4539cb97bae5812ed2d832ce49d02e70c64 (diff)
downloadopencode-f884766445bbf1fbce11f1db4bc6174e72d9baa5.tar.gz
opencode-f884766445bbf1fbce11f1db4bc6174e72d9baa5.zip
v2 message format and upgrade to ai sdk v5 (#743)
Co-authored-by: GitHub Action <[email protected]> Co-authored-by: Liang-Shih Lin <[email protected]> Co-authored-by: Dominik Engelhardt <[email protected]> Co-authored-by: Jay V <[email protected]> Co-authored-by: adamdottv <[email protected]>
Diffstat (limited to 'packages/web/src/components/share/part.module.css')
-rw-r--r--packages/web/src/components/share/part.module.css375
1 files changed, 375 insertions, 0 deletions
diff --git a/packages/web/src/components/share/part.module.css b/packages/web/src/components/share/part.module.css
new file mode 100644
index 000000000..9145cddf7
--- /dev/null
+++ b/packages/web/src/components/share/part.module.css
@@ -0,0 +1,375 @@
+.root {
+ display: flex;
+ gap: 0.625rem;
+
+ [data-component="decoration"] {
+ flex: 0 0 auto;
+ display: flex;
+ flex-direction: column;
+ gap: 0.625rem;
+ align-items: center;
+ justify-content: flex-start;
+
+ [data-slot="anchor"] {
+ position: relative;
+
+ a:first-child {
+ display: block;
+ flex: 0 0 auto;
+ width: 18px;
+ opacity: 0.65;
+
+ svg {
+ color: var(--sl-color-text-secondary);
+ display: block;
+
+ &:nth-child(3) {
+ color: var(--sl-color-green-high);
+ }
+ }
+
+ svg:nth-child(2),
+ svg:nth-child(3) {
+ display: none;
+ }
+
+ &:hover {
+ svg:nth-child(1) {
+ display: none;
+ }
+
+ svg:nth-child(2) {
+ display: block;
+ }
+ }
+ }
+
+ [data-copied] & {
+ a,
+ a:hover {
+ svg:nth-child(1),
+ svg:nth-child(2) {
+ display: none;
+ }
+
+ svg:nth-child(3) {
+ display: block;
+ }
+ }
+ }
+ }
+
+ [data-slot="bar"] {
+ width: 3px;
+ height: 100%;
+ border-radius: 1px;
+ background-color: var(--sl-color-hairline);
+ }
+
+ [data-slot="tooltip"] {
+ position: absolute;
+ top: 50%;
+ left: calc(100% + 12px);
+ transform: translate(0, -50%);
+ line-height: 1.1;
+ padding: 0.375em 0.5em calc(0.375em + 2px);
+ background: var(--sl-color-white);
+ color: var(--sl-color-text-invert);
+ font-size: 0.6875rem;
+ border-radius: 7px;
+ white-space: nowrap;
+
+ z-index: 1;
+ opacity: 0;
+ visibility: hidden;
+
+ &::after {
+ content: "";
+ position: absolute;
+ top: 50%;
+ left: -15px;
+ transform: translateY(-50%);
+ border: 8px solid transparent;
+ border-right-color: var(--sl-color-white);
+ }
+
+ [data-copied] & {
+ opacity: 1;
+ visibility: visible;
+ }
+ }
+ }
+
+ [data-component="content"] {
+ display: flex;
+ flex-direction: column;
+ gap: 1rem;
+ flex-grow: 1;
+ }
+
+ [data-component="spacer"] {
+ height: 0rem;
+ }
+
+ [data-component="content-footer"] {
+ align-self: flex-start;
+ font-size: 0.75rem;
+ color: var(--sl-color-text-dimmed);
+ }
+
+ [data-component="step-start"] {
+ display: flex;
+ flex-direction: column;
+ align-items: flex-start;
+ gap: 0.375rem;
+ padding-bottom: 1rem;
+
+ [data-slot="provider"] {
+ line-height: 18px;
+ font-size: 0.875rem;
+ text-transform: uppercase;
+ letter-spacing: -0.5px;
+ color: var(--sl-color-text-secondary);
+ }
+
+ [data-slot="model"] {
+ line-height: 1.5;
+ }
+ }
+
+ [data-component="button-text"] {
+ cursor: pointer;
+ appearance: none;
+ background-color: transparent;
+ border: none;
+ padding: 0;
+ color: var(--sl-color-text-secondary);
+ font-size: 0.75rem;
+
+ &:hover {
+ color: var(--sl-color-text);
+ }
+
+ &[data-more] {
+ display: flex;
+ align-items: center;
+ gap: 0.125rem;
+
+ span[data-slot="icon"] {
+ line-height: 1;
+ opacity: 0.85;
+
+ svg {
+ display: block;
+ }
+ }
+ }
+ }
+
+ [data-component="tool"] {
+ display: flex;
+ flex-direction: column;
+ align-items: flex-start;
+ gap: 0.375rem;
+ padding-bottom: 1rem;
+ }
+
+ [data-component="tool-title"] {
+ line-height: 18px;
+ font-size: 0.875rem;
+ color: var(--sl-color-text-secondary);
+ max-width: var(--md-tool-width);
+ display: flex;
+ align-items: flex-start;
+ gap: 0.375rem;
+
+ [data-slot="name"] {
+ text-transform: uppercase;
+ letter-spacing: -0.5px;
+ }
+
+ [data-slot="target"] {
+ color: var(--sl-color-text);
+ word-break: break-all;
+ font-weight: 500;
+ }
+ }
+
+ [data-component="tool-result"] {
+ display: flex;
+ flex-direction: column;
+ align-items: flex-start;
+ gap: 0.5rem;
+ }
+
+ [data-component="todos"] {
+ list-style-type: none;
+ padding: 0;
+ margin: 0;
+ width: 100%;
+ max-width: var(--sm-tool-width);
+ border: 1px solid var(--sl-color-divider);
+ border-radius: 0.25rem;
+
+ [data-slot="item"] {
+ margin: 0;
+ position: relative;
+ padding-left: 1.5rem;
+ font-size: 0.75rem;
+ padding: 0.375rem 0.625rem 0.375rem 1.75rem;
+ border-bottom: 1px solid var(--sl-color-divider);
+ line-height: 1.5;
+ word-break: break-word;
+
+ &:last-child {
+ border-bottom: none;
+ }
+
+ & > span {
+ position: absolute;
+ display: inline-block;
+ left: 0.5rem;
+ top: calc(0.5rem + 1px);
+ width: 0.75rem;
+ height: 0.75rem;
+ border: 1px solid var(--sl-color-divider);
+ border-radius: 0.15rem;
+
+ &::before {
+ }
+ }
+
+ &[data-status="pending"] {
+ color: var(--sl-color-text);
+ }
+
+ &[data-status="in_progress"] {
+ color: var(--sl-color-text);
+
+ & > span {
+ border-color: var(--sl-color-orange);
+ }
+
+ & > span::before {
+ content: "";
+ position: absolute;
+ top: 2px;
+ left: 2px;
+ width: calc(0.75rem - 2px - 4px);
+ height: calc(0.75rem - 2px - 4px);
+ box-shadow: inset 1rem 1rem var(--sl-color-orange-low);
+ }
+ }
+
+ &[data-status="completed"] {
+ color: var(--sl-color-text-secondary);
+
+ & > span {
+ border-color: var(--sl-color-green-low);
+ }
+
+ & > span::before {
+ content: "";
+ position: absolute;
+ top: 2px;
+ left: 2px;
+ width: calc(0.75rem - 2px - 4px);
+ height: calc(0.75rem - 2px - 4px);
+ box-shadow: inset 1rem 1rem var(--sl-color-green);
+
+ transform-origin: bottom left;
+ clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
+ }
+ }
+ }
+ }
+
+ [data-component="terminal"] {
+ width: 100%;
+ max-width: var(--sm-tool-width);
+
+ [data-slot="body"] {
+ display: flex;
+ flex-direction: column;
+ border: 1px solid var(--sl-color-divider);
+ border-radius: 0.25rem;
+ overflow: hidden;
+ }
+
+ [data-slot="header"] {
+ position: relative;
+ border-bottom: 1px solid var(--sl-color-divider);
+ width: 100%;
+ height: 1.625rem;
+ text-align: center;
+ padding: 0 3.25rem;
+
+ > span {
+ max-width: min(100%, 140ch);
+ display: inline-block;
+ white-space: nowrap;
+ overflow: hidden;
+ line-height: 1.625rem;
+ font-size: 0.75rem;
+ text-overflow: ellipsis;
+ color: var(--sl-color-text-dimmed);
+ }
+
+ &::before {
+ content: "";
+ position: absolute;
+ pointer-events: none;
+ top: 8px;
+ left: 10px;
+ width: 2rem;
+ height: 0.5rem;
+ line-height: 0;
+ background-color: var(--sl-color-hairline);
+ mask-image: var(--term-icon);
+ mask-repeat: no-repeat;
+ }
+ }
+
+ [data-slot="content"] {
+ display: flex;
+ flex-direction: column;
+ padding: 0.5rem calc(0.5rem + 3px);
+
+ pre {
+ --shiki-dark-bg: var(--sl-color-bg) !important;
+ background-color: var(--sl-color-bg) !important;
+ line-height: 1.6;
+ font-size: 0.75rem;
+ white-space: pre-wrap;
+ word-break: break-word;
+ }
+ }
+ }
+
+ [data-component="tool-args"] {
+ display: inline-grid;
+ align-items: center;
+ grid-template-columns: max-content max-content minmax(0, 1fr);
+ max-width: var(--md-tool-width);
+ gap: 0.25rem 0.375rem;
+
+ & > div:nth-child(3n + 1) {
+ width: 8px;
+ height: 2px;
+ border-radius: 1px;
+ background: var(--sl-color-divider);
+ }
+
+ & > div:nth-child(3n + 2),
+ & > div:nth-child(3n + 3) {
+ font-size: 0.75rem;
+ line-height: 1.5;
+ }
+
+ & > div:nth-child(3n + 3) {
+ padding-left: 0.125rem;
+ word-break: break-word;
+ color: var(--sl-color-text-secondary);
+ }
+ }
+}