pi-studio 0.9.22 → 0.9.24
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/CHANGELOG.md +18 -0
- package/README.md +9 -1
- package/client/studio-client.js +334 -71
- package/client/studio.css +364 -28
- package/index.ts +437 -33
- package/package.json +1 -1
package/client/studio.css
CHANGED
|
@@ -350,31 +350,34 @@
|
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
.pane-focus-btn.is-active {
|
|
353
|
-
background: var(--
|
|
354
|
-
border-color: var(--
|
|
355
|
-
color: var(--accent
|
|
353
|
+
background: var(--panel);
|
|
354
|
+
border-color: var(--control-border);
|
|
355
|
+
color: var(--accent);
|
|
356
356
|
font-weight: 600;
|
|
357
357
|
}
|
|
358
358
|
|
|
359
359
|
button.pane-focus-btn.is-active:not(:disabled):hover {
|
|
360
|
-
background: var(--
|
|
361
|
-
border-color: var(--
|
|
362
|
-
color: var(--accent
|
|
363
|
-
filter: brightness(0.95);
|
|
360
|
+
background: var(--panel-2);
|
|
361
|
+
border-color: var(--control-border);
|
|
362
|
+
color: var(--accent);
|
|
364
363
|
}
|
|
365
364
|
|
|
366
365
|
#scratchpadBtn.has-content,
|
|
367
366
|
#reviewNotesBtn.has-content,
|
|
368
367
|
#reviewNotesBtn.is-active,
|
|
369
368
|
#outlineBtn.is-active {
|
|
370
|
-
|
|
369
|
+
background: var(--panel);
|
|
370
|
+
border-color: var(--control-border);
|
|
371
371
|
color: var(--accent);
|
|
372
372
|
font-weight: 600;
|
|
373
373
|
}
|
|
374
374
|
|
|
375
|
-
#
|
|
376
|
-
#
|
|
377
|
-
|
|
375
|
+
#scratchpadBtn.has-content:not(:disabled):hover,
|
|
376
|
+
#reviewNotesBtn.has-content:not(:disabled):hover,
|
|
377
|
+
#reviewNotesBtn.is-active:not(:disabled):hover,
|
|
378
|
+
#outlineBtn.is-active:not(:disabled):hover {
|
|
379
|
+
background: var(--panel-2);
|
|
380
|
+
color: var(--accent);
|
|
378
381
|
}
|
|
379
382
|
|
|
380
383
|
.section-header select {
|
|
@@ -2529,9 +2532,10 @@
|
|
|
2529
2532
|
|
|
2530
2533
|
.rendered-markdown .studio-html-artifact-comment-btn.is-active,
|
|
2531
2534
|
.rendered-markdown .studio-html-artifact-shell.is-comment-mode .studio-html-artifact-comment-btn.is-active {
|
|
2532
|
-
background: var(--
|
|
2533
|
-
border-color: var(--accent);
|
|
2535
|
+
background: var(--panel);
|
|
2536
|
+
border-color: var(--accent-soft-strong);
|
|
2534
2537
|
color: var(--accent);
|
|
2538
|
+
font-weight: 600;
|
|
2535
2539
|
}
|
|
2536
2540
|
|
|
2537
2541
|
.rendered-markdown .studio-html-artifact-zoom-controls {
|
|
@@ -2920,6 +2924,295 @@
|
|
|
2920
2924
|
flex: 0 0 auto;
|
|
2921
2925
|
}
|
|
2922
2926
|
|
|
2927
|
+
#critiqueView.git-changes-host {
|
|
2928
|
+
flex: 1 1 auto;
|
|
2929
|
+
min-height: 0;
|
|
2930
|
+
display: flex;
|
|
2931
|
+
flex-direction: column;
|
|
2932
|
+
overflow: hidden;
|
|
2933
|
+
padding: 0;
|
|
2934
|
+
}
|
|
2935
|
+
|
|
2936
|
+
.git-changes-panel {
|
|
2937
|
+
display: flex;
|
|
2938
|
+
flex-direction: column;
|
|
2939
|
+
flex: 1 1 auto;
|
|
2940
|
+
min-height: 0;
|
|
2941
|
+
height: 100%;
|
|
2942
|
+
gap: 0;
|
|
2943
|
+
color: var(--text);
|
|
2944
|
+
font-family: var(--font-ui);
|
|
2945
|
+
font-size: var(--studio-response-font-size);
|
|
2946
|
+
}
|
|
2947
|
+
|
|
2948
|
+
.git-changes-toolbar {
|
|
2949
|
+
display: flex;
|
|
2950
|
+
align-items: flex-start;
|
|
2951
|
+
justify-content: space-between;
|
|
2952
|
+
gap: 14px;
|
|
2953
|
+
padding: 10px 12px;
|
|
2954
|
+
border-bottom: 1px solid var(--panel-border);
|
|
2955
|
+
background: var(--panel-2);
|
|
2956
|
+
}
|
|
2957
|
+
|
|
2958
|
+
.git-changes-title-group {
|
|
2959
|
+
min-width: 0;
|
|
2960
|
+
display: grid;
|
|
2961
|
+
gap: 3px;
|
|
2962
|
+
}
|
|
2963
|
+
|
|
2964
|
+
.git-changes-title {
|
|
2965
|
+
color: var(--text);
|
|
2966
|
+
font-size: 13px;
|
|
2967
|
+
font-weight: 700;
|
|
2968
|
+
}
|
|
2969
|
+
|
|
2970
|
+
.git-changes-subtitle,
|
|
2971
|
+
.git-changes-root {
|
|
2972
|
+
color: var(--studio-info-text, var(--muted));
|
|
2973
|
+
font-size: 12px;
|
|
2974
|
+
line-height: 1.35;
|
|
2975
|
+
overflow: hidden;
|
|
2976
|
+
text-overflow: ellipsis;
|
|
2977
|
+
white-space: nowrap;
|
|
2978
|
+
}
|
|
2979
|
+
|
|
2980
|
+
.git-changes-actions {
|
|
2981
|
+
display: inline-flex;
|
|
2982
|
+
gap: 8px;
|
|
2983
|
+
flex-wrap: wrap;
|
|
2984
|
+
justify-content: flex-end;
|
|
2985
|
+
flex: 0 0 auto;
|
|
2986
|
+
}
|
|
2987
|
+
|
|
2988
|
+
.git-changes-actions button {
|
|
2989
|
+
padding: 6px 10px;
|
|
2990
|
+
font-size: 12px;
|
|
2991
|
+
}
|
|
2992
|
+
|
|
2993
|
+
.git-changes-notice {
|
|
2994
|
+
margin: 10px 12px 0;
|
|
2995
|
+
padding: 8px 10px;
|
|
2996
|
+
border: 1px solid var(--control-border);
|
|
2997
|
+
border-radius: 10px;
|
|
2998
|
+
color: var(--studio-info-text, var(--muted));
|
|
2999
|
+
background: var(--panel);
|
|
3000
|
+
font-size: 12px;
|
|
3001
|
+
}
|
|
3002
|
+
|
|
3003
|
+
.git-changes-notice-error {
|
|
3004
|
+
color: var(--error);
|
|
3005
|
+
border-color: var(--error);
|
|
3006
|
+
background: var(--error-soft);
|
|
3007
|
+
}
|
|
3008
|
+
|
|
3009
|
+
.git-changes-body {
|
|
3010
|
+
display: grid;
|
|
3011
|
+
grid-template-columns: minmax(150px, clamp(170px, 28%, 260px)) minmax(0, 1fr);
|
|
3012
|
+
min-height: 0;
|
|
3013
|
+
flex: 1 1 auto;
|
|
3014
|
+
overflow: hidden;
|
|
3015
|
+
}
|
|
3016
|
+
|
|
3017
|
+
.git-changes-file-list {
|
|
3018
|
+
min-width: 0;
|
|
3019
|
+
min-height: 0;
|
|
3020
|
+
overflow: auto;
|
|
3021
|
+
overscroll-behavior: contain;
|
|
3022
|
+
padding: 12px;
|
|
3023
|
+
display: grid;
|
|
3024
|
+
align-content: start;
|
|
3025
|
+
gap: 8px;
|
|
3026
|
+
border-right: 1px solid var(--panel-border);
|
|
3027
|
+
background: var(--panel);
|
|
3028
|
+
}
|
|
3029
|
+
|
|
3030
|
+
.git-changes-file {
|
|
3031
|
+
width: 100%;
|
|
3032
|
+
min-width: 0;
|
|
3033
|
+
display: grid;
|
|
3034
|
+
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
3035
|
+
grid-template-areas:
|
|
3036
|
+
"icon name status"
|
|
3037
|
+
"icon stats status";
|
|
3038
|
+
gap: 3px 10px;
|
|
3039
|
+
align-items: center;
|
|
3040
|
+
text-align: left;
|
|
3041
|
+
padding: 9px 10px;
|
|
3042
|
+
border-radius: 10px;
|
|
3043
|
+
border-color: var(--border-subtle);
|
|
3044
|
+
background: var(--panel-2);
|
|
3045
|
+
}
|
|
3046
|
+
|
|
3047
|
+
.git-changes-file.is-selected {
|
|
3048
|
+
border-color: var(--accent-soft-strong);
|
|
3049
|
+
color: var(--accent);
|
|
3050
|
+
background: var(--panel-2);
|
|
3051
|
+
}
|
|
3052
|
+
|
|
3053
|
+
.git-changes-file-icon {
|
|
3054
|
+
grid-area: icon;
|
|
3055
|
+
min-width: 28px;
|
|
3056
|
+
height: 22px;
|
|
3057
|
+
display: inline-flex;
|
|
3058
|
+
align-items: center;
|
|
3059
|
+
justify-content: center;
|
|
3060
|
+
border: 1px solid var(--control-border);
|
|
3061
|
+
border-radius: 7px;
|
|
3062
|
+
color: var(--studio-info-text, var(--muted));
|
|
3063
|
+
font-size: 11px;
|
|
3064
|
+
font-family: var(--font-mono);
|
|
3065
|
+
font-weight: 700;
|
|
3066
|
+
}
|
|
3067
|
+
|
|
3068
|
+
.git-changes-file-name {
|
|
3069
|
+
grid-area: name;
|
|
3070
|
+
min-width: 0;
|
|
3071
|
+
overflow: hidden;
|
|
3072
|
+
text-overflow: ellipsis;
|
|
3073
|
+
white-space: nowrap;
|
|
3074
|
+
color: var(--text);
|
|
3075
|
+
font-weight: 600;
|
|
3076
|
+
}
|
|
3077
|
+
|
|
3078
|
+
.git-changes-file.is-selected .git-changes-file-name {
|
|
3079
|
+
color: var(--accent);
|
|
3080
|
+
}
|
|
3081
|
+
|
|
3082
|
+
.git-changes-file-status {
|
|
3083
|
+
grid-area: status;
|
|
3084
|
+
justify-self: end;
|
|
3085
|
+
padding: 2px 8px;
|
|
3086
|
+
border: 1px solid var(--control-border);
|
|
3087
|
+
border-radius: 999px;
|
|
3088
|
+
color: var(--studio-info-text, var(--muted));
|
|
3089
|
+
font-size: 11px;
|
|
3090
|
+
line-height: 1.2;
|
|
3091
|
+
background: var(--panel);
|
|
3092
|
+
}
|
|
3093
|
+
|
|
3094
|
+
.git-changes-stats {
|
|
3095
|
+
grid-area: stats;
|
|
3096
|
+
display: inline-flex;
|
|
3097
|
+
gap: 8px;
|
|
3098
|
+
font-family: var(--font-mono);
|
|
3099
|
+
font-size: 11px;
|
|
3100
|
+
}
|
|
3101
|
+
|
|
3102
|
+
.git-changes-additions {
|
|
3103
|
+
color: color-mix(in srgb, var(--ok) 72%, var(--text));
|
|
3104
|
+
}
|
|
3105
|
+
|
|
3106
|
+
.git-changes-deletions {
|
|
3107
|
+
color: color-mix(in srgb, var(--error) 72%, var(--text));
|
|
3108
|
+
}
|
|
3109
|
+
|
|
3110
|
+
.git-changes-diff-pane {
|
|
3111
|
+
min-width: 0;
|
|
3112
|
+
min-height: 0;
|
|
3113
|
+
overflow-x: hidden;
|
|
3114
|
+
overflow-y: auto;
|
|
3115
|
+
overscroll-behavior: contain;
|
|
3116
|
+
background: var(--panel);
|
|
3117
|
+
}
|
|
3118
|
+
|
|
3119
|
+
#critiqueView.git-changes-host .git-changes-diff {
|
|
3120
|
+
margin: 0;
|
|
3121
|
+
padding: 8px 0 10px;
|
|
3122
|
+
border: 0;
|
|
3123
|
+
border-radius: 0;
|
|
3124
|
+
min-height: 100%;
|
|
3125
|
+
overflow: visible;
|
|
3126
|
+
background: var(--panel);
|
|
3127
|
+
color: var(--text);
|
|
3128
|
+
font-family: var(--font-mono);
|
|
3129
|
+
font-size: var(--studio-response-raw-font-size);
|
|
3130
|
+
line-height: 1.45;
|
|
3131
|
+
white-space: pre-wrap;
|
|
3132
|
+
overflow-wrap: anywhere;
|
|
3133
|
+
word-break: break-word;
|
|
3134
|
+
}
|
|
3135
|
+
|
|
3136
|
+
#critiqueView.git-changes-host .git-changes-diff code,
|
|
3137
|
+
#critiqueView.git-changes-host .git-changes-diff code > span {
|
|
3138
|
+
color: inherit;
|
|
3139
|
+
font-size: inherit;
|
|
3140
|
+
white-space: inherit;
|
|
3141
|
+
}
|
|
3142
|
+
|
|
3143
|
+
.git-changes-line {
|
|
3144
|
+
display: block;
|
|
3145
|
+
padding: 0 18px;
|
|
3146
|
+
min-height: 1.45em;
|
|
3147
|
+
}
|
|
3148
|
+
|
|
3149
|
+
.git-changes-line-meta {
|
|
3150
|
+
color: var(--studio-link, var(--accent));
|
|
3151
|
+
font-weight: 600;
|
|
3152
|
+
}
|
|
3153
|
+
|
|
3154
|
+
.git-changes-line-add {
|
|
3155
|
+
color: color-mix(in srgb, var(--ok) 62%, var(--text));
|
|
3156
|
+
background: var(--diff-added-bg);
|
|
3157
|
+
}
|
|
3158
|
+
|
|
3159
|
+
.git-changes-line-del {
|
|
3160
|
+
color: color-mix(in srgb, var(--error) 62%, var(--text));
|
|
3161
|
+
background: var(--diff-removed-bg);
|
|
3162
|
+
}
|
|
3163
|
+
|
|
3164
|
+
.git-changes-empty {
|
|
3165
|
+
padding: 18px;
|
|
3166
|
+
color: var(--studio-info-text, var(--muted));
|
|
3167
|
+
font-size: 13px;
|
|
3168
|
+
}
|
|
3169
|
+
|
|
3170
|
+
@container (max-width: 780px) {
|
|
3171
|
+
.git-changes-toolbar {
|
|
3172
|
+
gap: 10px;
|
|
3173
|
+
}
|
|
3174
|
+
.git-changes-actions {
|
|
3175
|
+
gap: 6px;
|
|
3176
|
+
}
|
|
3177
|
+
.git-changes-actions button {
|
|
3178
|
+
padding: 5px 8px;
|
|
3179
|
+
}
|
|
3180
|
+
.git-changes-body {
|
|
3181
|
+
grid-template-columns: minmax(130px, 180px) minmax(0, 1fr);
|
|
3182
|
+
}
|
|
3183
|
+
.git-changes-file-list {
|
|
3184
|
+
padding: 10px 8px;
|
|
3185
|
+
}
|
|
3186
|
+
.git-changes-file {
|
|
3187
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
3188
|
+
grid-template-areas:
|
|
3189
|
+
"icon name"
|
|
3190
|
+
"icon stats";
|
|
3191
|
+
gap: 3px 8px;
|
|
3192
|
+
padding: 8px;
|
|
3193
|
+
}
|
|
3194
|
+
.git-changes-file-status {
|
|
3195
|
+
display: none;
|
|
3196
|
+
}
|
|
3197
|
+
.git-changes-file-icon {
|
|
3198
|
+
min-width: 24px;
|
|
3199
|
+
height: 20px;
|
|
3200
|
+
font-size: 10px;
|
|
3201
|
+
}
|
|
3202
|
+
}
|
|
3203
|
+
|
|
3204
|
+
@container (max-width: 480px) {
|
|
3205
|
+
.git-changes-body {
|
|
3206
|
+
grid-template-columns: 1fr;
|
|
3207
|
+
grid-template-rows: minmax(120px, 0.34fr) minmax(0, 0.66fr);
|
|
3208
|
+
}
|
|
3209
|
+
.git-changes-file-list {
|
|
3210
|
+
max-height: none;
|
|
3211
|
+
border-right: 0;
|
|
3212
|
+
border-bottom: 1px solid var(--panel-border);
|
|
3213
|
+
}
|
|
3214
|
+
}
|
|
3215
|
+
|
|
2923
3216
|
.files-panel {
|
|
2924
3217
|
display: flex;
|
|
2925
3218
|
flex-direction: column;
|
|
@@ -3108,9 +3401,9 @@
|
|
|
3108
3401
|
}
|
|
3109
3402
|
|
|
3110
3403
|
.trace-filter-btn.is-active {
|
|
3111
|
-
border-color: var(--
|
|
3112
|
-
background: var(--
|
|
3113
|
-
color: var(--
|
|
3404
|
+
border-color: var(--control-border);
|
|
3405
|
+
background: var(--panel-2);
|
|
3406
|
+
color: var(--text);
|
|
3114
3407
|
font-weight: 600;
|
|
3115
3408
|
}
|
|
3116
3409
|
|
|
@@ -3148,16 +3441,16 @@
|
|
|
3148
3441
|
|
|
3149
3442
|
.trace-entry-status.trace-entry-status-streaming,
|
|
3150
3443
|
.trace-entry-status.trace-entry-status-pending {
|
|
3151
|
-
color: var(--accent);
|
|
3152
|
-
border-color: var(--
|
|
3153
|
-
background:
|
|
3444
|
+
color: color-mix(in srgb, var(--accent) 72%, var(--text));
|
|
3445
|
+
border-color: var(--control-border);
|
|
3446
|
+
background: transparent;
|
|
3154
3447
|
}
|
|
3155
3448
|
|
|
3156
3449
|
.trace-summary-status.trace-status-complete,
|
|
3157
3450
|
.trace-entry-status.trace-entry-status-complete {
|
|
3158
|
-
color: var(--ok);
|
|
3159
|
-
border-color: var(--
|
|
3160
|
-
background:
|
|
3451
|
+
color: color-mix(in srgb, var(--ok) 68%, var(--text));
|
|
3452
|
+
border-color: var(--control-border);
|
|
3453
|
+
background: transparent;
|
|
3161
3454
|
}
|
|
3162
3455
|
|
|
3163
3456
|
.trace-entry-status.trace-entry-status-error {
|
|
@@ -4081,6 +4374,39 @@
|
|
|
4081
4374
|
display: none !important;
|
|
4082
4375
|
}
|
|
4083
4376
|
|
|
4377
|
+
.scratchpad-recent-header {
|
|
4378
|
+
display: flex;
|
|
4379
|
+
align-items: flex-start;
|
|
4380
|
+
justify-content: space-between;
|
|
4381
|
+
gap: 12px;
|
|
4382
|
+
margin-bottom: 10px;
|
|
4383
|
+
}
|
|
4384
|
+
|
|
4385
|
+
.scratchpad-recent-heading-group {
|
|
4386
|
+
min-width: 0;
|
|
4387
|
+
}
|
|
4388
|
+
|
|
4389
|
+
.scratchpad-recent-heading {
|
|
4390
|
+
color: var(--text);
|
|
4391
|
+
font-size: 12px;
|
|
4392
|
+
font-weight: 700;
|
|
4393
|
+
line-height: 1.25;
|
|
4394
|
+
}
|
|
4395
|
+
|
|
4396
|
+
.scratchpad-recent-subtitle {
|
|
4397
|
+
margin-top: 2px;
|
|
4398
|
+
color: var(--studio-info-text, var(--muted));
|
|
4399
|
+
font-size: 11px;
|
|
4400
|
+
line-height: 1.35;
|
|
4401
|
+
}
|
|
4402
|
+
|
|
4403
|
+
.scratchpad-recent-hide-btn {
|
|
4404
|
+
flex: 0 0 auto;
|
|
4405
|
+
padding: 4px 8px;
|
|
4406
|
+
font-size: 11px;
|
|
4407
|
+
line-height: 1.1;
|
|
4408
|
+
}
|
|
4409
|
+
|
|
4084
4410
|
.scratchpad-recent-empty,
|
|
4085
4411
|
.scratchpad-recent-loading {
|
|
4086
4412
|
color: var(--studio-info-text, var(--muted));
|
|
@@ -4750,9 +5076,9 @@
|
|
|
4750
5076
|
|
|
4751
5077
|
body.studio-ui-refresh #leftFocusBtn.is-active,
|
|
4752
5078
|
body.studio-ui-refresh #rightFocusBtn.is-active {
|
|
4753
|
-
background: var(--
|
|
4754
|
-
border-color: var(--
|
|
4755
|
-
color: var(--accent
|
|
5079
|
+
background: var(--studio-header-action-bg, transparent);
|
|
5080
|
+
border-color: var(--studio-header-action-border, transparent);
|
|
5081
|
+
color: var(--accent);
|
|
4756
5082
|
}
|
|
4757
5083
|
|
|
4758
5084
|
body.studio-ui-refresh #sourceBadge,
|
|
@@ -4878,9 +5204,18 @@
|
|
|
4878
5204
|
body.studio-ui-refresh #outlineBtn.is-active,
|
|
4879
5205
|
body.studio-ui-refresh #scratchpadBtn.has-content,
|
|
4880
5206
|
body.studio-ui-refresh #reviewNotesBtn.has-content {
|
|
4881
|
-
background: var(--
|
|
5207
|
+
background: var(--studio-header-action-bg, transparent);
|
|
5208
|
+
color: var(--accent);
|
|
5209
|
+
border-color: var(--studio-header-action-border, transparent);
|
|
5210
|
+
font-weight: 600;
|
|
5211
|
+
}
|
|
5212
|
+
|
|
5213
|
+
body.studio-ui-refresh #reviewNotesBtn.is-active:not(:disabled):hover,
|
|
5214
|
+
body.studio-ui-refresh #outlineBtn.is-active:not(:disabled):hover,
|
|
5215
|
+
body.studio-ui-refresh #scratchpadBtn.has-content:not(:disabled):hover,
|
|
5216
|
+
body.studio-ui-refresh #reviewNotesBtn.has-content:not(:disabled):hover {
|
|
5217
|
+
background: var(--studio-header-action-hover-bg, var(--panel-2));
|
|
4882
5218
|
color: var(--accent);
|
|
4883
|
-
border-color: transparent;
|
|
4884
5219
|
}
|
|
4885
5220
|
|
|
4886
5221
|
body.studio-ui-refresh .source-wrap {
|
|
@@ -5176,7 +5511,8 @@
|
|
|
5176
5511
|
font-weight: 450;
|
|
5177
5512
|
}
|
|
5178
5513
|
|
|
5179
|
-
body.studio-ui-refresh .studio-refresh-menu-item > .source-origin-summary
|
|
5514
|
+
body.studio-ui-refresh .studio-refresh-menu-item > .source-origin-summary,
|
|
5515
|
+
body.studio-ui-refresh .studio-refresh-menu-item > .source-session-summary {
|
|
5180
5516
|
width: 100%;
|
|
5181
5517
|
border-color: var(--border-subtle);
|
|
5182
5518
|
background: var(--panel-2);
|