@pstdio/ui 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chat-ui.js +691 -637
- package/dist/chat-ui.js.map +1 -1
- package/dist/components/chat-ui/agent-types.d.ts +1 -0
- package/dist/components/chat-ui/components/ai-conversation.d.ts +21 -579
- package/dist/components/chat-ui/components/ai-conversation.test.d.ts +1 -0
- package/dist/components/chat-ui/components/ai-message.d.ts +8 -8
- package/dist/components/chat-ui/components/chat-panel.d.ts +2 -0
- package/dist/components/chat-ui/components/message-parts-renderer.stories.d.ts +1 -0
- package/dist/components/chat-ui/components/message-types.d.ts +8 -0
- package/dist/components/menu-item.d.ts +3 -1
- package/dist/components/menu-item.stories.d.ts +1 -1
- package/dist/components/rich-text/rich-message/rich-message.d.ts +1 -0
- package/dist/components/rich-text/shared/plugins/CodePlugin/CodeNode.d.ts +2 -0
- package/dist/components/rich-text/shared/plugins/CodePlugin/CodeNode.test.d.ts +1 -0
- package/dist/components/scroll-area.d.ts +1 -0
- package/dist/components/sidebar-next/sidebar-next-header.d.ts +1 -1
- package/dist/components/sidebar-next/sidebar-next.types.d.ts +3 -1
- package/dist/components/sidebar-tree/sidebar-tree.d.ts +2 -1
- package/dist/components/sidebar-tree/sidebar-tree.types.d.ts +9 -1
- package/dist/components/tickets/display-menu.d.ts +15 -0
- package/dist/components/tickets/display-menu.stories.d.ts +6 -0
- package/dist/components/tickets/filter-menu.d.ts +11 -0
- package/dist/components/tickets/filter-menu.stories.d.ts +6 -0
- package/dist/components/tickets/ticket-board.d.ts +7 -0
- package/dist/components/tickets/ticket-grouping.d.ts +22 -0
- package/dist/components/tickets/ticket-grouping.test.d.ts +1 -0
- package/dist/components/tickets/tickets-workspace.d.ts +29 -0
- package/dist/components/tickets/tickets-workspace.stories.d.ts +10 -0
- package/dist/components/tickets/types.d.ts +49 -0
- package/dist/components/tickets/use-workspace-store.d.ts +51 -0
- package/dist/components/tickets/use-workspace-store.test.d.ts +1 -0
- package/dist/index.d.ts +8 -1
- package/dist/index.js +2077 -1211
- package/dist/index.js.map +1 -1
- package/dist/{rich-message-B2gxL8oy.js → rich-message-C0_i-4Ux.js} +323 -308
- package/dist/rich-message-C0_i-4Ux.js.map +1 -0
- package/dist/rich-text.js +89 -88
- package/dist/rich-text.js.map +1 -1
- package/dist/scroll-area-DZs-GiIp.js +267 -0
- package/dist/scroll-area-DZs-GiIp.js.map +1 -0
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/dist/empty-state-B8mbv7ZH.js +0 -128
- package/dist/empty-state-B8mbv7ZH.js.map +0 -1
- package/dist/rich-message-B2gxL8oy.js.map +0 -1
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.rich-text__ltr{text-align:left}.rich-text__rtl{text-align:right}.rich-text{--rich-text-font-scale: 1;font-size:calc(1rem * var(--rich-text-font-scale))}.rich-text[data-rich-message=true]{--rich-text-font-scale: .8}.rich-text__paragraph{margin:0;position:relative}.rich-text__quote{margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-left:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem);font-size:calc(15px * var(--rich-text-font-scale));color:var(--chakra-colors-fg-muted);border-left:4px solid var(--chakra-colors-border);padding-left:16px}.rich-text__indent{--lexical-indent-base-value: 40px}.rich-text__textBold{font-weight:700}.rich-text__reference{font:inherit;border-bottom:1px dotted currentColor;opacity:.9;white-space:nowrap}.rich-text__textStrikethrough{text-decoration:line-through}.rich-text__textUnderlineStrikethrough{text-decoration:underline line-through}.rich-text__textSubscript{font-size:.8em;vertical-align:sub}.rich-text__textSuperscript{font-size:.8em;vertical-align:super}.rich-text__textCode{background-color:var(--chakra-colors-bg-code);padding:1px .25rem;font-family:var(--chakra-fonts-mono);font-size:.94em}.rich-text__link{color:var(--chakra-colors-blue-600);text-decoration:none;cursor:pointer}.rich-text__link:hover{text-decoration:underline}.rich-text__code{background-color:var(--chakra-colors-bg-muted);font-family:var(--chakra-fonts-mono);display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--rich-text-font-scale));margin:8px 0;overflow-x:auto;position:relative;tab-size:2}.rich-text__code:before{content:attr(data-gutter);position:absolute;background-color:var(--chakra-colors-bg-subtle);left:0;top:0;bottom:0;border-right:1px solid var(--chakra-colors-border);padding:8px;color:var(--chakra-colors-fg-muted);white-space:pre-wrap;text-align:right;min-width:25px}.rich-text__table{border-collapse:collapse;border-spacing:0;color:var(--chakra-colors-fg);font-size:calc(var(--chakra-font-sizes-sm) * var(--rich-text-font-scale));line-height:21px;overflow-y:auto;overflow-x:auto;table-layout:fixed;width:max-content}.rich-text__tableSelection *::selection{background-color:transparent}.rich-text__tableSelected{outline:2px solid var(--chakra-colors-blue-500)}.rich-text__tableCell{border:1px solid var(--chakra-colors-border);vertical-align:top;text-align:start;padding:6px 8px;position:relative;outline:none}.rich-text__tableCellSortedIndicator{display:block;opacity:.5;position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:var(--chakra-colors-bg)}.rich-text__tableCellResizer{position:absolute;right:-4px;height:100%;width:8px;cursor:ew-resize;z-index:10;top:0}.rich-text__tableCellHeader{background-color:var(--chakra-colors-bg-muted);font-weight:400;text-align:start}.rich-text__tableCellSelected{background-color:var(--chakra-colors-blue-100)}.rich-text__tableCellPrimarySelected{border:2px solid var(--chakra-colors-blue-500);display:block;height:calc(100% - 2px);position:absolute;width:calc(100% - 2px);left:-1px;top:-1px;z-index:2}.rich-text__tableCellEditing{box-shadow:var(--chakra-shadows-sm);border-radius:3px}.rich-text__tableAddColumns,.rich-text__tableAddRows{position:absolute;background-color:var(--chakra-colors-bg-muted);animation:table-controls .2s ease;border:0;cursor:pointer}.rich-text__tableAddColumns{top:0;width:20px;height:100%;right:-25px}.rich-text__tableAddColumns:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddRows{bottom:-25px;width:calc(100% - 25px);height:20px;left:0}.rich-text__tableAddRows:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddColumns:hover,.rich-text__tableAddRows:hover{background-color:var(--chakra-colors-blue-100)}@keyframes table-controls{0%{opacity:0}to{opacity:1}}.rich-text__tableCellResizeRuler{display:block;position:absolute;width:1px;background-color:var(--chakra-colors-blue-500);height:100%;top:0}.rich-text__tableCellActionButtonContainer{display:block;right:5px;top:6px;position:absolute;z-index:4;width:20px;height:20px}.rich-text__tableCellActionButton{background-color:var(--chakra-colors-bg-muted);display:block;border:0;border-radius:20px;width:20px;height:20px;color:var(--chakra-colors-fg);cursor:pointer}.rich-text__tableCellActionButton:hover{background-color:var(--chakra-colors-bg-subtle)}.rich-text__characterLimit{display:inline;background-color:var(--chakra-colors-red-100)}ul.rich-text__ul,ol.rich-text__ol,ol.rich-text__ol1,ol.rich-text__ol2,ol.rich-text__ol3,ol.rich-text__ol4,ol.rich-text__ol5{--rt-indent: var(--chakra-spacing-sm, .5rem);--rt-level: 1;list-style-position:outside;padding-inline-start:calc(var(--rt-indent) * var(--rt-level));margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}ul.rich-text__ul{list-style-type:disc}ol.rich-text__ol,ol.rich-text__ol1{list-style-type:decimal}ol.rich-text__ol2{list-style-type:upper-alpha}ol.rich-text__ol3{list-style-type:lower-alpha}ol.rich-text__ol4{list-style-type:upper-roman}ol.rich-text__ol5{list-style-type:lower-roman}li.rich-text__listItem{display:list-item;list-style-position:outside;margin-inline:var(--chakra-spacing-1, .25rem)}li.rich-text__listItemUnchecked,li.rich-text__listItemChecked{display:list-item;list-style-type:none}ul.rich-text__ul :where(ul,ol),ol.rich-text__ol :where(ul,ol),ol.rich-text__ol1 :where(ul,ol),ol.rich-text__ol2 :where(ul,ol),ol.rich-text__ol3 :where(ul,ol),ol.rich-text__ol4 :where(ul,ol),ol.rich-text__ol5 :where(ul,ol){--rt-level: calc(var(--rt-level) + 1);padding-inline-start:calc(var(--rt-indent) * var(--rt-level))}.rich-text__listItemUnchecked:before,.rich-text__listItemChecked:before{content:"";width:16px;height:16px;top:2px;left:0;cursor:pointer;display:block;background-size:cover;position:absolute}.rich-text__listItemUnchecked[dir=rtl]:before,.rich-text__listItemChecked[dir=rtl]:before{left:auto;right:0}.rich-text__listItemUnchecked:focus:before,.rich-text__listItemChecked:focus:before{box-shadow:0 0 0 2px var(--chakra-colors-blue-200);border-radius:2px}.rich-text__listItemUnchecked:before{border:1px solid var(--chakra-colors-gray-400);border-radius:2px}.rich-text__listItemChecked:before{border:1px solid var(--chakra-colors-blue-500);border-radius:2px;background-color:var(--chakra-colors-blue-500);background-repeat:no-repeat}.rich-text__listItemChecked:after{content:"";cursor:pointer;border-color:var(--chakra-colors-bg, var(--chakra-colors-bg));border-style:solid;position:absolute;display:block;top:6px;width:3px;left:7px;right:7px;height:6px;transform:rotate(45deg);border-width:0 2px 2px 0}.rich-text__nestedListItem{list-style-type:inherit}.rich-text__nestedListItem:before,.rich-text__nestedListItem:after{display:none}.rich-text__tokenComment{color:var(--chakra-colors-gray-500)}.rich-text__tokenPunctuation{color:var(--chakra-colors-gray-400)}.rich-text__tokenProperty{color:var(--chakra-colors-purple-600)}.rich-text__tokenSelector{color:var(--chakra-colors-green-600)}.rich-text__tokenOperator{color:var(--chakra-colors-orange-600)}.rich-text__tokenAttr{color:var(--chakra-colors-blue-600)}.rich-text__tokenVariable{color:var(--chakra-colors-yellow-600)}.rich-text__tokenFunction{color:var(--chakra-colors-pink-600)}.rich-text__mark{background:var(--chakra-colors-yellow-100);border-bottom:2px solid var(--chakra-colors-yellow-200);padding-bottom:2px}.rich-text__markOverlap{background:var(--chakra-colors-yellow-200);border-bottom:2px solid var(--chakra-colors-yellow-300)}.rich-text__mark.selected{background:var(--chakra-colors-yellow-300);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__markOverlap.selected{background:var(--chakra-colors-yellow-400);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__layoutContainer{display:grid;gap:var(--chakra-spacing-2, .5rem)}.rich-text__layoutItem{border-radius:var(--chakra-radii-sm)}.rich-text__layoutItem>:first-child{margin-top:0;margin-bottom:0}.draggable-block-demo__row{display:flex;gap:var(--chakra-spacing-3, .75rem);padding-block:var(--chakra-spacing-2, .5rem);padding-inline:var(--chakra-spacing-4, 1rem);position:relative;transition:box-shadow .14s ease}.rich-text__row{border-radius:var(--chakra-radii-lg)}.draggable-block-demo__row:focus-within{box-shadow:0 0 0 2px var(--chakra-colors-blue-200)}.draggable-block-demo__content,.rich-text__content{position:relative;flex:1 1 0;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.draggable-block-demo__content--empty{color:var(--chakra-colors-fg-muted);border-style:dashed;background:var(--chakra-colors-bg-subtle)}.draggable-block-demo__handle-slot{position:absolute;inset:0;width:0;height:0;pointer-events:none}.draggable-block-demo__handle-controls{position:absolute;pointer-events:none;opacity:0;transform:translate(-10000px,-10000px);z-index:11;display:flex;flex-direction:column;align-items:center;gap:8px}.draggable-block-demo__floating-handle,.draggable-block-demo__delete-button{pointer-events:auto}.draggable-block-demo__floating-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-sm);cursor:grab;transition:box-shadow .12s ease,transform .12s ease}.draggable-block-demo__floating-handle:active{cursor:grabbing}.draggable-block-demo__handle-icon{margin-left:-4px;display:inline-block;font-size:calc(12px * var(--rich-text-font-scale));letter-spacing:-4px;-webkit-user-select:none;user-select:none}.draggable-block-demo__delete-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-red-200);background:var(--chakra-colors-red-50);color:var(--chakra-colors-red-600);cursor:pointer;box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,border-color .12s ease}.draggable-block-demo__delete-button:hover{background:var(--chakra-colors-red-100);border-color:var(--chakra-colors-red-300)}.draggable-block-demo__delete-icon{font-size:calc(16px * var(--rich-text-font-scale));line-height:1;-webkit-user-select:none;user-select:none}.draggable-block-demo__gap{position:absolute;left:0;width:100%;height:28px;display:flex;justify-content:center;align-items:center;pointer-events:auto;opacity:0;transition:opacity .12s ease}.draggable-block-demo__gap-line{width:100%;border-top:1px dashed var(--chakra-colors-border);position:absolute;top:50%;transform:translateY(-50%)}.draggable-block-demo__gap-button{pointer-events:auto;border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);border-radius:999px;width:20px;height:20px;font-size:calc(18px * var(--rich-text-font-scale));line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,color .12s ease}.draggable-block-demo__gap:hover,.draggable-block-demo__gap.is-active{opacity:1}.draggable-block-demo__gap-button:hover{background:var(--chakra-colors-bg-subtle);color:var(--chakra-colors-fg)}.draggable-block-demo__indicator{position:absolute;background:var(--chakra-colors-blue-500);pointer-events:none;border-radius:2px;z-index:12}.draggable-block-demo__indicator--horizontal{height:2px}.draggable-block-demo__indicator--vertical{width:2px}.rich-text__h1{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-5, 1.5rem);margin-bottom:var(--chakra-spacing-4, 1rem)}.rich-text__h1_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-2, .5rem)}.rich-text__h2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h2_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem);margin-bottom:var(--chakra-spacing-1, .125rem)}.rich-text__h3{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h3_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem)}.rich-text__p{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p:first-child{margin-top:0}.rich-text__p:only-child{margin-bottom:0}.rich-text__p2{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0}.rich-text__textUnderline{text-decoration:underline}.rich-text__textItalic{font-style:italic}span.editor-equation{display:inline-block}.editor-equation span{cursor:inherit}.editor-equation{-webkit-user-select:none;user-select:none}.katex-display{overflow-x:auto;overflow-y:hidden}.floating-text-format-toolbar{display:flex;position:absolute;top:0;left:0;z-index:1000;opacity:0;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a;transition:opacity .2s;will-change:transform;padding:4px;gap:2px}.floating-text-format-toolbar.active{opacity:1}.floating-text-format-toolbar button[data-active]{background-color:var(--chakra-colors-bg-accent-primary-medium);color:var(--chakra-colors-text-selectable-primary)}.rich-text__p--no-margin{margin:0}
|
|
1
|
+
.rich-text__ltr{text-align:left}.rich-text__rtl{text-align:right}.rich-text{--rich-text-font-scale: 1;font-size:calc(1rem * var(--rich-text-font-scale))}.rich-text[data-rich-message=true]{--rich-text-font-scale: .8}.rich-text[data-rich-message=true] .rich-text__p:last-child{margin-bottom:0}.rich-text__paragraph{margin:0;position:relative}.rich-text__quote{margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-left:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem);font-size:calc(15px * var(--rich-text-font-scale));color:var(--chakra-colors-fg-muted);border-left:4px solid var(--chakra-colors-border);padding-left:16px}.rich-text__indent{--lexical-indent-base-value: 40px}.rich-text__textBold{font-weight:700}.rich-text__reference{font:inherit;border-bottom:1px dotted currentColor;opacity:.9;white-space:nowrap}.rich-text__textStrikethrough{text-decoration:line-through}.rich-text__textUnderlineStrikethrough{text-decoration:underline line-through}.rich-text__textSubscript{font-size:.8em;vertical-align:sub}.rich-text__textSuperscript{font-size:.8em;vertical-align:super}.rich-text__textCode{background-color:var(--chakra-colors-bg-code);padding:1px .25rem;font-family:var(--chakra-fonts-mono);font-size:.94em}.rich-text__link{color:var(--chakra-colors-blue-600);text-decoration:none;cursor:pointer}.rich-text__link:hover{text-decoration:underline}.rich-text__code{background-color:var(--chakra-colors-bg-muted);font-family:var(--chakra-fonts-mono);display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--rich-text-font-scale));margin:8px 0;overflow-x:auto;position:relative;tab-size:2}.rich-text__code:before{content:attr(data-gutter);position:absolute;background-color:var(--chakra-colors-bg-subtle);left:0;top:0;bottom:0;border-right:1px solid var(--chakra-colors-border);padding:8px;color:var(--chakra-colors-fg-muted);white-space:pre-wrap;text-align:right;min-width:25px}.rich-text__table{border-collapse:collapse;border-spacing:0;color:var(--chakra-colors-fg);font-size:calc(var(--chakra-font-sizes-sm) * var(--rich-text-font-scale));line-height:21px;overflow-y:auto;overflow-x:auto;table-layout:fixed;width:max-content}.rich-text__tableSelection *::selection{background-color:transparent}.rich-text__tableSelected{outline:2px solid var(--chakra-colors-blue-500)}.rich-text__tableCell{border:1px solid var(--chakra-colors-border);vertical-align:top;text-align:start;padding:6px 8px;position:relative;outline:none}.rich-text__tableCellSortedIndicator{display:block;opacity:.5;position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:var(--chakra-colors-bg)}.rich-text__tableCellResizer{position:absolute;right:-4px;height:100%;width:8px;cursor:ew-resize;z-index:10;top:0}.rich-text__tableCellHeader{background-color:var(--chakra-colors-bg-muted);font-weight:400;text-align:start}.rich-text__tableCellSelected{background-color:var(--chakra-colors-blue-100)}.rich-text__tableCellPrimarySelected{border:2px solid var(--chakra-colors-blue-500);display:block;height:calc(100% - 2px);position:absolute;width:calc(100% - 2px);left:-1px;top:-1px;z-index:2}.rich-text__tableCellEditing{box-shadow:var(--chakra-shadows-sm);border-radius:3px}.rich-text__tableAddColumns,.rich-text__tableAddRows{position:absolute;background-color:var(--chakra-colors-bg-muted);animation:table-controls .2s ease;border:0;cursor:pointer}.rich-text__tableAddColumns{top:0;width:20px;height:100%;right:-25px}.rich-text__tableAddColumns:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddRows{bottom:-25px;width:calc(100% - 25px);height:20px;left:0}.rich-text__tableAddRows:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddColumns:hover,.rich-text__tableAddRows:hover{background-color:var(--chakra-colors-blue-100)}@keyframes table-controls{0%{opacity:0}to{opacity:1}}.rich-text__tableCellResizeRuler{display:block;position:absolute;width:1px;background-color:var(--chakra-colors-blue-500);height:100%;top:0}.rich-text__tableCellActionButtonContainer{display:block;right:5px;top:6px;position:absolute;z-index:4;width:20px;height:20px}.rich-text__tableCellActionButton{background-color:var(--chakra-colors-bg-muted);display:block;border:0;border-radius:20px;width:20px;height:20px;color:var(--chakra-colors-fg);cursor:pointer}.rich-text__tableCellActionButton:hover{background-color:var(--chakra-colors-bg-subtle)}.rich-text__characterLimit{display:inline;background-color:var(--chakra-colors-red-100)}ul.rich-text__ul,ol.rich-text__ol,ol.rich-text__ol1,ol.rich-text__ol2,ol.rich-text__ol3,ol.rich-text__ol4,ol.rich-text__ol5{--rt-indent: var(--chakra-spacing-sm, .5rem);--rt-level: 1;list-style-position:outside;padding-inline-start:calc(var(--rt-indent) * var(--rt-level));margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}ul.rich-text__ul{list-style-type:disc}ol.rich-text__ol,ol.rich-text__ol1{list-style-type:decimal}ol.rich-text__ol2{list-style-type:upper-alpha}ol.rich-text__ol3{list-style-type:lower-alpha}ol.rich-text__ol4{list-style-type:upper-roman}ol.rich-text__ol5{list-style-type:lower-roman}li.rich-text__listItem{display:list-item;list-style-position:outside;margin-inline:var(--chakra-spacing-1, .25rem)}li.rich-text__listItemUnchecked,li.rich-text__listItemChecked{display:list-item;list-style-type:none}ul.rich-text__ul :where(ul,ol),ol.rich-text__ol :where(ul,ol),ol.rich-text__ol1 :where(ul,ol),ol.rich-text__ol2 :where(ul,ol),ol.rich-text__ol3 :where(ul,ol),ol.rich-text__ol4 :where(ul,ol),ol.rich-text__ol5 :where(ul,ol){--rt-level: calc(var(--rt-level) + 1);padding-inline-start:calc(var(--rt-indent) * var(--rt-level))}.rich-text__listItemUnchecked:before,.rich-text__listItemChecked:before{content:"";width:16px;height:16px;top:2px;left:0;cursor:pointer;display:block;background-size:cover;position:absolute}.rich-text__listItemUnchecked[dir=rtl]:before,.rich-text__listItemChecked[dir=rtl]:before{left:auto;right:0}.rich-text__listItemUnchecked:focus:before,.rich-text__listItemChecked:focus:before{box-shadow:0 0 0 2px var(--chakra-colors-blue-200);border-radius:2px}.rich-text__listItemUnchecked:before{border:1px solid var(--chakra-colors-gray-400);border-radius:2px}.rich-text__listItemChecked:before{border:1px solid var(--chakra-colors-blue-500);border-radius:2px;background-color:var(--chakra-colors-blue-500);background-repeat:no-repeat}.rich-text__listItemChecked:after{content:"";cursor:pointer;border-color:var(--chakra-colors-bg, var(--chakra-colors-bg));border-style:solid;position:absolute;display:block;top:6px;width:3px;left:7px;right:7px;height:6px;transform:rotate(45deg);border-width:0 2px 2px 0}.rich-text__nestedListItem{list-style-type:inherit}.rich-text__nestedListItem:before,.rich-text__nestedListItem:after{display:none}.rich-text__tokenComment{color:var(--chakra-colors-gray-500)}.rich-text__tokenPunctuation{color:var(--chakra-colors-gray-400)}.rich-text__tokenProperty{color:var(--chakra-colors-purple-600)}.rich-text__tokenSelector{color:var(--chakra-colors-green-600)}.rich-text__tokenOperator{color:var(--chakra-colors-orange-600)}.rich-text__tokenAttr{color:var(--chakra-colors-blue-600)}.rich-text__tokenVariable{color:var(--chakra-colors-yellow-600)}.rich-text__tokenFunction{color:var(--chakra-colors-pink-600)}.rich-text__mark{background:var(--chakra-colors-yellow-100);border-bottom:2px solid var(--chakra-colors-yellow-200);padding-bottom:2px}.rich-text__markOverlap{background:var(--chakra-colors-yellow-200);border-bottom:2px solid var(--chakra-colors-yellow-300)}.rich-text__mark.selected{background:var(--chakra-colors-yellow-300);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__markOverlap.selected{background:var(--chakra-colors-yellow-400);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__layoutContainer{display:grid;gap:var(--chakra-spacing-2, .5rem)}.rich-text__layoutItem{border-radius:var(--chakra-radii-sm)}.rich-text__layoutItem>:first-child{margin-top:0;margin-bottom:0}.draggable-block-demo__row{display:flex;gap:var(--chakra-spacing-3, .75rem);padding-block:var(--chakra-spacing-2, .5rem);padding-inline:var(--chakra-spacing-4, 1rem);position:relative;transition:box-shadow .14s ease}.rich-text__row{border-radius:var(--chakra-radii-lg)}.draggable-block-demo__row:focus-within{box-shadow:0 0 0 2px var(--chakra-colors-blue-200)}.draggable-block-demo__content,.rich-text__content{position:relative;flex:1 1 0;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.draggable-block-demo__content--empty{color:var(--chakra-colors-fg-muted);border-style:dashed;background:var(--chakra-colors-bg-subtle)}.draggable-block-demo__handle-slot{position:absolute;inset:0;width:0;height:0;pointer-events:none}.draggable-block-demo__handle-controls{position:absolute;pointer-events:none;opacity:0;transform:translate(-10000px,-10000px);z-index:11;display:flex;flex-direction:column;align-items:center;gap:8px}.draggable-block-demo__floating-handle,.draggable-block-demo__delete-button{pointer-events:auto}.draggable-block-demo__floating-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-sm);cursor:grab;transition:box-shadow .12s ease,transform .12s ease}.draggable-block-demo__floating-handle:active{cursor:grabbing}.draggable-block-demo__handle-icon{margin-left:-4px;display:inline-block;font-size:calc(12px * var(--rich-text-font-scale));letter-spacing:-4px;-webkit-user-select:none;user-select:none}.draggable-block-demo__delete-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-red-200);background:var(--chakra-colors-red-50);color:var(--chakra-colors-red-600);cursor:pointer;box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,border-color .12s ease}.draggable-block-demo__delete-button:hover{background:var(--chakra-colors-red-100);border-color:var(--chakra-colors-red-300)}.draggable-block-demo__delete-icon{font-size:calc(16px * var(--rich-text-font-scale));line-height:1;-webkit-user-select:none;user-select:none}.draggable-block-demo__gap{position:absolute;left:0;width:100%;height:28px;display:flex;justify-content:center;align-items:center;pointer-events:auto;opacity:0;transition:opacity .12s ease}.draggable-block-demo__gap-line{width:100%;border-top:1px dashed var(--chakra-colors-border);position:absolute;top:50%;transform:translateY(-50%)}.draggable-block-demo__gap-button{pointer-events:auto;border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);border-radius:999px;width:20px;height:20px;font-size:calc(18px * var(--rich-text-font-scale));line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,color .12s ease}.draggable-block-demo__gap:hover,.draggable-block-demo__gap.is-active{opacity:1}.draggable-block-demo__gap-button:hover{background:var(--chakra-colors-bg-subtle);color:var(--chakra-colors-fg)}.draggable-block-demo__indicator{position:absolute;background:var(--chakra-colors-blue-500);pointer-events:none;border-radius:2px;z-index:12}.draggable-block-demo__indicator--horizontal{height:2px}.draggable-block-demo__indicator--vertical{width:2px}.rich-text__h1{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-5, 1.5rem);margin-bottom:var(--chakra-spacing-4, 1rem)}.rich-text__h1_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-2, .5rem)}.rich-text__h2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h2_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem);margin-bottom:var(--chakra-spacing-1, .125rem)}.rich-text__h3{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h3_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem)}.rich-text__p{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p:first-child{margin-top:0}.rich-text__p:only-child{margin-bottom:0}.rich-text__p2{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0}.rich-text__textUnderline{text-decoration:underline}.rich-text__textItalic{font-style:italic}span.editor-equation{display:inline-block}.editor-equation span{cursor:inherit}.editor-equation{-webkit-user-select:none;user-select:none}.katex-display{overflow-x:auto;overflow-y:hidden}.floating-text-format-toolbar{display:flex;position:absolute;top:0;left:0;z-index:1000;opacity:0;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a;transition:opacity .2s;will-change:transform;padding:4px;gap:2px}.floating-text-format-toolbar.active{opacity:1}.floating-text-format-toolbar button[data-active]{background-color:var(--chakra-colors-bg-accent-primary-medium);color:var(--chakra-colors-text-selectable-primary)}.rich-text__p--no-margin{margin:0}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pstdio/ui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/pufflyai/prompt-studio"
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"visualize-bundle": "bunx vite-bundle-visualizer",
|
|
38
38
|
"lint": "bunx biome check .",
|
|
39
39
|
"typegen:tokens": "chakra typegen ./src/theme/theme.ts",
|
|
40
|
-
"test": "
|
|
40
|
+
"test": "bun test --silent",
|
|
41
41
|
"test-storybook": "test-storybook",
|
|
42
42
|
"storybook": "storybook dev -p 6006",
|
|
43
43
|
"build-storybook": "storybook build",
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import { jsx as u, jsxs as D } from "react/jsx-runtime";
|
|
2
|
-
import { c as $ } from "react/compiler-runtime";
|
|
3
|
-
import { Span as k, EmptyState as x, VStack as W } from "@chakra-ui/react";
|
|
4
|
-
import { DiffEditor as z } from "@monaco-editor/react";
|
|
5
|
-
import * as R from "react";
|
|
6
|
-
const F = (h) => {
|
|
7
|
-
const e = $(18), {
|
|
8
|
-
fileName: s,
|
|
9
|
-
additions: t,
|
|
10
|
-
deletions: f,
|
|
11
|
-
label: n,
|
|
12
|
-
variant: d,
|
|
13
|
-
size: a,
|
|
14
|
-
onClick: i,
|
|
15
|
-
onClickFileLink: o
|
|
16
|
-
} = h, l = d === void 0 ? "outline" : d, c = (a === void 0 ? "default" : a) === "small", g = l === "outline" ? "1px solid" : "none", m = l === "outline" ? c ? "3xs" : "2xs" : "2px", B = c ? "label/S/regular" : void 0, _ = i ? "pointer" : "default";
|
|
17
|
-
let v;
|
|
18
|
-
e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (v = {
|
|
19
|
-
background: "bg.muted"
|
|
20
|
-
}, e[0] = v) : v = e[0];
|
|
21
|
-
let p;
|
|
22
|
-
e[1] !== s || e[2] !== o ? (p = s && /* @__PURE__ */ u(k, { display: "inline-block", maxW: "24ch", truncate: !0, mr: "xs", title: s, onClick: (w) => {
|
|
23
|
-
w.stopPropagation(), o?.();
|
|
24
|
-
}, cursor: o ? "pointer" : "default", _hover: {
|
|
25
|
-
textDecoration: o ? "underline" : "none",
|
|
26
|
-
color: o ? "fg.blue-dark" : "fg.muted"
|
|
27
|
-
}, children: s }), e[1] = s, e[2] = o, e[3] = p) : p = e[3];
|
|
28
|
-
const C = `+${t}`;
|
|
29
|
-
let b;
|
|
30
|
-
e[4] !== C ? (b = /* @__PURE__ */ u(k, { color: "fg.success", children: C }), e[4] = C, e[5] = b) : b = e[5];
|
|
31
|
-
const E = `-${f}`;
|
|
32
|
-
let S;
|
|
33
|
-
e[6] !== E ? (S = /* @__PURE__ */ u(k, { color: "fg.error", children: E }), e[6] = E, e[7] = S) : S = e[7];
|
|
34
|
-
let y;
|
|
35
|
-
return e[8] !== n || e[9] !== i || e[10] !== S || e[11] !== g || e[12] !== m || e[13] !== B || e[14] !== _ || e[15] !== p || e[16] !== b ? (y = /* @__PURE__ */ D(k, { display: "inline-flex", alignItems: "center", gap: "2xs", border: g, borderColor: "border.muted", color: "fg.muted", paddingX: m, paddingY: "1px", borderRadius: "xs", textStyle: B, cursor: _, onClick: i, _hover: v, children: [
|
|
36
|
-
n,
|
|
37
|
-
p,
|
|
38
|
-
b,
|
|
39
|
-
S
|
|
40
|
-
] }), e[8] = n, e[9] = i, e[10] = S, e[11] = g, e[12] = m, e[13] = B, e[14] = _, e[15] = p, e[16] = b, e[17] = y) : y = e[17], y;
|
|
41
|
-
}, T = {
|
|
42
|
-
base: "vs-dark",
|
|
43
|
-
inherit: !0,
|
|
44
|
-
rules: [],
|
|
45
|
-
colors: {
|
|
46
|
-
"editor.background": "#0a0d15",
|
|
47
|
-
"editor.foreground": "#f5f5f5",
|
|
48
|
-
"editor.lineHighlightBackground": "#22252C",
|
|
49
|
-
"editorCursor.foreground": "#A7A7A7",
|
|
50
|
-
"editorWhitespace.foreground": "#3B3B3B",
|
|
51
|
-
"editorIndentGuide.background": "#404040",
|
|
52
|
-
"editorIndentGuide.activeBackground": "#707070"
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
function H(h) {
|
|
56
|
-
const e = $(11), {
|
|
57
|
-
original: s,
|
|
58
|
-
modified: t,
|
|
59
|
-
language: f,
|
|
60
|
-
sideBySide: n,
|
|
61
|
-
disableScroll: d
|
|
62
|
-
} = h, a = f === void 0 ? "plaintext" : f, i = n === void 0 ? !1 : n, o = d === void 0 ? !0 : d;
|
|
63
|
-
let l;
|
|
64
|
-
e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (l = {
|
|
65
|
-
enabled: !1
|
|
66
|
-
}, e[0] = l) : l = e[0];
|
|
67
|
-
let r;
|
|
68
|
-
e[1] !== o ? (r = o ? {
|
|
69
|
-
scrollbar: {
|
|
70
|
-
vertical: "hidden",
|
|
71
|
-
horizontal: "hidden",
|
|
72
|
-
useShadows: !1,
|
|
73
|
-
alwaysConsumeMouseWheel: !1
|
|
74
|
-
},
|
|
75
|
-
overviewRulerLanes: 0
|
|
76
|
-
} : {}, e[1] = o, e[2] = r) : r = e[2];
|
|
77
|
-
let c;
|
|
78
|
-
e[3] !== i || e[4] !== r ? (c = {
|
|
79
|
-
renderSideBySide: i,
|
|
80
|
-
readOnly: !0,
|
|
81
|
-
fontSize: 11,
|
|
82
|
-
minimap: l,
|
|
83
|
-
wordWrap: "on",
|
|
84
|
-
scrollBeyondLastLine: !1,
|
|
85
|
-
...r
|
|
86
|
-
}, e[3] = i, e[4] = r, e[5] = c) : c = e[5];
|
|
87
|
-
const g = c;
|
|
88
|
-
let m;
|
|
89
|
-
return e[6] !== a || e[7] !== t || e[8] !== g || e[9] !== s ? (m = /* @__PURE__ */ u(z, { width: "100%", height: "100%", original: s, modified: t, language: a, theme: "ps-theme", options: g, beforeMount: I, onMount: A }), e[6] = a, e[7] = t, e[8] = g, e[9] = s, e[10] = m) : m = e[10], m;
|
|
90
|
-
}
|
|
91
|
-
function A(h, e) {
|
|
92
|
-
e.editor.setTheme("ps-theme");
|
|
93
|
-
}
|
|
94
|
-
function I(h) {
|
|
95
|
-
h.editor.defineTheme("ps-theme", T);
|
|
96
|
-
}
|
|
97
|
-
const N = R.forwardRef(function(e, s) {
|
|
98
|
-
const t = $(19);
|
|
99
|
-
let f, n, d, a, i;
|
|
100
|
-
t[0] !== e ? ({
|
|
101
|
-
title: i,
|
|
102
|
-
description: n,
|
|
103
|
-
icon: d,
|
|
104
|
-
children: f,
|
|
105
|
-
...a
|
|
106
|
-
} = e, t[0] = e, t[1] = f, t[2] = n, t[3] = d, t[4] = a, t[5] = i) : (f = t[1], n = t[2], d = t[3], a = t[4], i = t[5]);
|
|
107
|
-
let o;
|
|
108
|
-
t[6] !== d ? (o = d && /* @__PURE__ */ u(x.Indicator, { children: d }), t[6] = d, t[7] = o) : o = t[7];
|
|
109
|
-
let l;
|
|
110
|
-
t[8] !== n || t[9] !== i ? (l = n ? /* @__PURE__ */ D(W, { textAlign: "center", children: [
|
|
111
|
-
/* @__PURE__ */ u(x.Title, { fontWeight: "normal", children: i }),
|
|
112
|
-
/* @__PURE__ */ u(x.Description, { children: n })
|
|
113
|
-
] }) : /* @__PURE__ */ u(x.Title, { fontWeight: "normal", children: i }), t[8] = n, t[9] = i, t[10] = l) : l = t[10];
|
|
114
|
-
let r;
|
|
115
|
-
t[11] !== f || t[12] !== o || t[13] !== l ? (r = /* @__PURE__ */ D(x.Content, { children: [
|
|
116
|
-
o,
|
|
117
|
-
l,
|
|
118
|
-
f
|
|
119
|
-
] }), t[11] = f, t[12] = o, t[13] = l, t[14] = r) : r = t[14];
|
|
120
|
-
let c;
|
|
121
|
-
return t[15] !== s || t[16] !== a || t[17] !== r ? (c = /* @__PURE__ */ u(x.Root, { ref: s, ...a, children: r }), t[15] = s, t[16] = a, t[17] = r, t[18] = c) : c = t[18], c;
|
|
122
|
-
});
|
|
123
|
-
export {
|
|
124
|
-
H as D,
|
|
125
|
-
N as E,
|
|
126
|
-
F as a
|
|
127
|
-
};
|
|
128
|
-
//# sourceMappingURL=empty-state-B8mbv7ZH.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"empty-state-B8mbv7ZH.js","sources":["../src/components/diff-bubble.tsx","../src/components/code-editor.tsx","../src/components/diff-editor.tsx","../src/components/empty-state.tsx"],"sourcesContent":["import { Span } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { ComponentProps, MouseEvent } from \"react\";\n\ninterface DiffBubbleProps extends Omit<ComponentProps<typeof Span>, \"onClick\"> {\n fileName?: string;\n additions: number;\n deletions: number;\n label?: React.ReactNode;\n variant?: \"outline\" | \"ghost\";\n size?: \"default\" | \"small\";\n onClick?: (event: MouseEvent<HTMLSpanElement>) => void;\n onClickFileLink?: () => void;\n}\n\nexport const DiffBubble = (props: DiffBubbleProps) => {\n const {\n fileName,\n additions,\n deletions,\n label,\n variant = \"outline\",\n size = \"default\",\n onClick,\n onClickFileLink,\n } = props;\n\n const isSmall = size === \"small\";\n\n return (\n <Span\n display=\"inline-flex\"\n alignItems=\"center\"\n gap={\"2xs\"}\n border={variant === \"outline\" ? \"1px solid\" : \"none\"}\n borderColor=\"border.muted\"\n color=\"fg.muted\"\n paddingX={variant === \"outline\" ? (isSmall ? \"3xs\" : \"2xs\") : \"2px\"}\n paddingY=\"1px\"\n borderRadius=\"xs\"\n textStyle={isSmall ? \"label/S/regular\" : undefined}\n cursor={onClick ? \"pointer\" : \"default\"}\n onClick={onClick}\n _hover={{\n background: \"bg.muted\",\n }}\n >\n {label}\n {fileName && (\n <Span\n display=\"inline-block\"\n maxW=\"24ch\"\n truncate\n mr=\"xs\"\n title={fileName}\n onClick={(e) => {\n e.stopPropagation();\n onClickFileLink?.();\n }}\n cursor={onClickFileLink ? \"pointer\" : \"default\"}\n _hover={{\n textDecoration: onClickFileLink ? \"underline\" : \"none\",\n color: onClickFileLink ? \"fg.blue-dark\" : \"fg.muted\",\n }}\n >\n {fileName}\n </Span>\n )}\n <Span color=\"fg.success\">{`+${additions}`}</Span>\n <Span color=\"fg.error\">{`-${deletions}`}</Span>\n </Span>\n );\n};\n","import { DiffEditor, Editor } from \"@monaco-editor/react\";\n\nexport const customTheme = {\n base: \"vs-dark\" as const,\n inherit: true,\n rules: [],\n colors: {\n \"editor.background\": \"#0a0d15\",\n \"editor.foreground\": \"#f5f5f5\",\n \"editor.lineHighlightBackground\": \"#22252C\",\n \"editorCursor.foreground\": \"#A7A7A7\",\n \"editorWhitespace.foreground\": \"#3B3B3B\",\n \"editorIndentGuide.background\": \"#404040\",\n \"editorIndentGuide.activeBackground\": \"#707070\",\n },\n};\n\ninterface CodeEditorProps {\n language: string;\n defaultCode?: string;\n code?: string;\n isEditable: boolean;\n showLineNumbers?: boolean;\n onChange?: (code: string) => void;\n disableScroll?: boolean;\n}\n\nexport const CodeEditor = (props: CodeEditorProps) => {\n const { defaultCode, code, showLineNumbers, isEditable, language = \"javascript\", onChange, disableScroll } = props;\n\n const options = {\n tabSize: 2,\n minimap: {\n enabled: false,\n },\n fontSize: 12,\n readOnly: !isEditable,\n lineNumbers: showLineNumbers ? \"on\" : \"off\",\n ...(disableScroll\n ? {\n scrollbar: {\n vertical: \"hidden\" as const,\n horizontal: \"hidden\" as const,\n useShadows: false,\n alwaysConsumeMouseWheel: false,\n },\n scrollBeyondLastLine: false,\n mouseWheelScrollSensitivity: 0,\n overviewRulerLanes: 0,\n }\n : {}),\n } as const;\n\n return (\n <Editor\n width=\"100%\"\n height=\"100%\"\n language={language}\n defaultValue={defaultCode}\n value={code}\n theme={\"ps-theme\"}\n options={options}\n onChange={(value) => {\n onChange?.(value || \"\");\n }}\n beforeMount={(monaco) => {\n monaco.editor.defineTheme(\"ps-theme\", customTheme);\n }}\n onMount={async (editor, monaco) => {\n monaco.editor.setTheme(\"ps-theme\");\n\n // Add JSX support\n monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n jsx: monaco.languages.typescript.JsxEmit.React,\n });\n\n // Format on cmd+s\n editor.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyS, async () => {\n await editor.getAction(\"editor.action.formatDocument\")?.run();\n });\n\n // Run format on the initial value\n await editor.getAction(\"editor.action.formatDocument\")?.run();\n }}\n />\n );\n};\n\ninterface CodeDiffEditorProps {\n language: string;\n original: string;\n modified: string;\n showLineNumbers?: boolean;\n disableScroll?: boolean;\n}\n\nexport const CodeDiffEditor = (props: CodeDiffEditorProps) => {\n const { original, modified, showLineNumbers, language = \"javascript\", disableScroll } = props;\n\n const options = {\n tabSize: 2,\n minimap: {\n enabled: false,\n },\n fontSize: 12,\n readOnly: true,\n originalEditable: false,\n renderSideBySide: true,\n useInlineViewWhenSpaceIsTooSmall: true,\n lineNumbers: showLineNumbers ? \"on\" : \"off\",\n ...(disableScroll\n ? {\n scrollbar: {\n vertical: \"hidden\" as const,\n horizontal: \"hidden\" as const,\n useShadows: false,\n alwaysConsumeMouseWheel: false,\n },\n scrollBeyondLastLine: false,\n mouseWheelScrollSensitivity: 0,\n overviewRulerLanes: 0,\n }\n : {}),\n } as const;\n\n return (\n <DiffEditor\n width=\"100%\"\n height=\"100%\"\n language={language}\n original={original}\n modified={modified}\n theme={\"ps-theme\"}\n options={options}\n beforeMount={(monaco) => {\n monaco.editor.defineTheme(\"ps-theme\", customTheme);\n }}\n onMount={(_, monaco) => {\n monaco.editor.setTheme(\"ps-theme\");\n\n monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n jsx: monaco.languages.typescript.JsxEmit.React,\n });\n }}\n />\n );\n};\n","import { DiffEditor as MonacoDiffEditor } from \"@monaco-editor/react\";\nimport { customTheme } from \"./code-editor\";\n\ninterface DiffEditorProps {\n original: string;\n modified: string;\n language?: string;\n sideBySide?: boolean;\n disableScroll?: boolean;\n}\n\nexport function DiffEditor(props: DiffEditorProps) {\n const { original, modified, language = \"plaintext\", sideBySide = false, disableScroll = true } = props;\n\n const options = {\n renderSideBySide: sideBySide,\n readOnly: true,\n fontSize: 11,\n minimap: { enabled: false },\n wordWrap: \"on\" as const,\n scrollBeyondLastLine: false,\n ...(disableScroll\n ? {\n scrollbar: {\n vertical: \"hidden\" as const,\n horizontal: \"hidden\" as const,\n useShadows: false,\n alwaysConsumeMouseWheel: false,\n },\n overviewRulerLanes: 0,\n }\n : {}),\n } as const;\n\n return (\n <MonacoDiffEditor\n width=\"100%\"\n height=\"100%\"\n original={original}\n modified={modified}\n language={language}\n theme=\"ps-theme\"\n options={options}\n beforeMount={(monaco) => {\n monaco.editor.defineTheme(\"ps-theme\", customTheme);\n }}\n onMount={(_editor, monaco) => {\n monaco.editor.setTheme(\"ps-theme\");\n }}\n />\n );\n}\n","import { EmptyState as ChakraEmptyState, VStack } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface EmptyStateProps extends ChakraEmptyState.RootProps {\n title: string;\n description?: string;\n icon?: React.ReactNode;\n}\n\nexport const EmptyState = React.forwardRef<HTMLDivElement, EmptyStateProps>(function EmptyState(props, ref) {\n const { title, description, icon, children, ...rest } = props;\n return (\n <ChakraEmptyState.Root ref={ref} {...rest}>\n <ChakraEmptyState.Content>\n {icon && <ChakraEmptyState.Indicator>{icon}</ChakraEmptyState.Indicator>}\n {description ? (\n <VStack textAlign=\"center\">\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n <ChakraEmptyState.Description>{description}</ChakraEmptyState.Description>\n </VStack>\n ) : (\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n )}\n {children}\n </ChakraEmptyState.Content>\n </ChakraEmptyState.Root>\n );\n});\n"],"names":["DiffBubble","props","$","_c","fileName","additions","deletions","label","variant","t0","size","t1","onClick","onClickFileLink","undefined","isSmall","t2","t3","t4","t5","t6","Symbol","for","background","t7","jsx","Span","e","stopPropagation","textDecoration","color","t8","t9","t10","t11","t12","customTheme","base","inherit","rules","colors","DiffEditor","original","modified","language","sideBySide","disableScroll","enabled","scrollbar","vertical","horizontal","useShadows","alwaysConsumeMouseWheel","overviewRulerLanes","renderSideBySide","readOnly","fontSize","minimap","wordWrap","scrollBeyondLastLine","options","MonacoDiffEditor","_temp","_temp2","_editor","monaco_0","monaco","editor","setTheme","defineTheme","EmptyState","React","forwardRef","ref","children","description","icon","rest","title","ChakraEmptyState","jsxs","VStack"],"mappings":"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"}
|