pi-studio 0.9.38 → 0.9.39
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 +8 -0
- package/README.md +4 -1
- package/client/studio-client.js +537 -16
- package/client/studio.css +253 -0
- package/index.ts +470 -1
- package/package.json +1 -1
- package/shared/studio-quarto-preview.js +169 -0
package/client/studio.css
CHANGED
|
@@ -91,6 +91,10 @@
|
|
|
91
91
|
overflow: visible;
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
.export-preview-controls[hidden] {
|
|
95
|
+
display: none !important;
|
|
96
|
+
}
|
|
97
|
+
|
|
94
98
|
.export-preview-trigger {
|
|
95
99
|
display: inline-flex;
|
|
96
100
|
align-items: center;
|
|
@@ -2932,6 +2936,10 @@
|
|
|
2932
2936
|
gap: 8px;
|
|
2933
2937
|
}
|
|
2934
2938
|
|
|
2939
|
+
.response-wrap[hidden] {
|
|
2940
|
+
display: none !important;
|
|
2941
|
+
}
|
|
2942
|
+
|
|
2935
2943
|
.response-actions {
|
|
2936
2944
|
display: flex;
|
|
2937
2945
|
flex-direction: column;
|
|
@@ -2967,6 +2975,251 @@
|
|
|
2967
2975
|
padding: 0;
|
|
2968
2976
|
}
|
|
2969
2977
|
|
|
2978
|
+
#critiqueView.quarto-preview-host {
|
|
2979
|
+
flex: 1 1 auto;
|
|
2980
|
+
min-height: 0;
|
|
2981
|
+
display: flex;
|
|
2982
|
+
flex-direction: column;
|
|
2983
|
+
overflow: hidden;
|
|
2984
|
+
padding: 0;
|
|
2985
|
+
font-family: var(--font-ui);
|
|
2986
|
+
}
|
|
2987
|
+
|
|
2988
|
+
.quarto-preview-shell {
|
|
2989
|
+
flex: 1 1 auto;
|
|
2990
|
+
min-width: 0;
|
|
2991
|
+
min-height: 0;
|
|
2992
|
+
display: flex;
|
|
2993
|
+
flex-direction: column;
|
|
2994
|
+
background: var(--panel);
|
|
2995
|
+
}
|
|
2996
|
+
|
|
2997
|
+
.quarto-preview-toolbar {
|
|
2998
|
+
flex: 0 0 auto;
|
|
2999
|
+
display: flex;
|
|
3000
|
+
align-items: center;
|
|
3001
|
+
justify-content: space-between;
|
|
3002
|
+
gap: 12px;
|
|
3003
|
+
padding: 8px 10px;
|
|
3004
|
+
border-bottom: 1px solid var(--panel-border);
|
|
3005
|
+
background: var(--panel-2);
|
|
3006
|
+
color: var(--studio-info-text, var(--muted));
|
|
3007
|
+
font-size: 12px;
|
|
3008
|
+
line-height: 1.3;
|
|
3009
|
+
}
|
|
3010
|
+
|
|
3011
|
+
.quarto-preview-title-group {
|
|
3012
|
+
min-width: 0;
|
|
3013
|
+
display: flex;
|
|
3014
|
+
align-items: baseline;
|
|
3015
|
+
gap: 8px;
|
|
3016
|
+
overflow: hidden;
|
|
3017
|
+
}
|
|
3018
|
+
|
|
3019
|
+
.quarto-preview-title {
|
|
3020
|
+
min-width: 0;
|
|
3021
|
+
overflow: hidden;
|
|
3022
|
+
text-overflow: ellipsis;
|
|
3023
|
+
white-space: nowrap;
|
|
3024
|
+
color: var(--text);
|
|
3025
|
+
font-weight: 700;
|
|
3026
|
+
}
|
|
3027
|
+
|
|
3028
|
+
.quarto-preview-subtitle {
|
|
3029
|
+
flex: 0 0 auto;
|
|
3030
|
+
color: var(--studio-info-text, var(--muted));
|
|
3031
|
+
white-space: nowrap;
|
|
3032
|
+
}
|
|
3033
|
+
|
|
3034
|
+
.quarto-preview-actions,
|
|
3035
|
+
.quarto-preview-card-actions {
|
|
3036
|
+
display: flex;
|
|
3037
|
+
align-items: center;
|
|
3038
|
+
justify-content: center;
|
|
3039
|
+
gap: 8px;
|
|
3040
|
+
flex-wrap: wrap;
|
|
3041
|
+
}
|
|
3042
|
+
|
|
3043
|
+
.quarto-preview-actions {
|
|
3044
|
+
flex: 0 0 auto;
|
|
3045
|
+
justify-content: flex-end;
|
|
3046
|
+
}
|
|
3047
|
+
|
|
3048
|
+
.quarto-preview-actions button,
|
|
3049
|
+
.quarto-preview-card-actions button {
|
|
3050
|
+
min-height: 28px;
|
|
3051
|
+
padding: 5px 8px;
|
|
3052
|
+
font-size: 12px;
|
|
3053
|
+
}
|
|
3054
|
+
|
|
3055
|
+
.quarto-preview-card-actions .quarto-preview-primary {
|
|
3056
|
+
background: var(--accent);
|
|
3057
|
+
border-color: var(--accent);
|
|
3058
|
+
color: var(--accent-contrast);
|
|
3059
|
+
font-weight: 650;
|
|
3060
|
+
}
|
|
3061
|
+
|
|
3062
|
+
.quarto-preview-card-actions .quarto-preview-primary:not(:disabled):hover {
|
|
3063
|
+
filter: brightness(0.95);
|
|
3064
|
+
background: var(--accent);
|
|
3065
|
+
}
|
|
3066
|
+
|
|
3067
|
+
.quarto-preview-frame {
|
|
3068
|
+
display: block;
|
|
3069
|
+
flex: 1 1 auto;
|
|
3070
|
+
width: 100%;
|
|
3071
|
+
min-width: 0;
|
|
3072
|
+
min-height: 360px;
|
|
3073
|
+
border: 0;
|
|
3074
|
+
background: #fff;
|
|
3075
|
+
}
|
|
3076
|
+
|
|
3077
|
+
.quarto-preview-dirty-warning,
|
|
3078
|
+
.quarto-preview-error,
|
|
3079
|
+
.quarto-preview-note,
|
|
3080
|
+
.quarto-preview-safety-note {
|
|
3081
|
+
border: 1px solid var(--control-border);
|
|
3082
|
+
border-radius: 8px;
|
|
3083
|
+
padding: 9px 11px;
|
|
3084
|
+
font-size: 12px;
|
|
3085
|
+
line-height: 1.45;
|
|
3086
|
+
}
|
|
3087
|
+
|
|
3088
|
+
.quarto-preview-dirty-warning {
|
|
3089
|
+
flex: 0 0 auto;
|
|
3090
|
+
border-color: color-mix(in srgb, var(--warn) 48%, var(--control-border));
|
|
3091
|
+
background: color-mix(in srgb, var(--warn) 10%, var(--panel));
|
|
3092
|
+
color: var(--text);
|
|
3093
|
+
}
|
|
3094
|
+
|
|
3095
|
+
.quarto-preview-shell > .quarto-preview-dirty-warning {
|
|
3096
|
+
border-width: 0 0 1px;
|
|
3097
|
+
border-radius: 0;
|
|
3098
|
+
padding: 7px 10px;
|
|
3099
|
+
}
|
|
3100
|
+
|
|
3101
|
+
.quarto-preview-error {
|
|
3102
|
+
border-color: color-mix(in srgb, var(--error) 50%, var(--control-border));
|
|
3103
|
+
background: color-mix(in srgb, var(--error) 9%, var(--panel));
|
|
3104
|
+
color: var(--text);
|
|
3105
|
+
}
|
|
3106
|
+
|
|
3107
|
+
.quarto-preview-note,
|
|
3108
|
+
.quarto-preview-safety-note {
|
|
3109
|
+
background: var(--panel-2);
|
|
3110
|
+
color: var(--studio-info-text, var(--muted));
|
|
3111
|
+
}
|
|
3112
|
+
|
|
3113
|
+
.quarto-preview-card {
|
|
3114
|
+
width: min(100%, 720px);
|
|
3115
|
+
max-height: 100%;
|
|
3116
|
+
margin: auto;
|
|
3117
|
+
padding: clamp(20px, 5vw, 42px);
|
|
3118
|
+
overflow: auto;
|
|
3119
|
+
color: var(--text);
|
|
3120
|
+
font-size: 13px;
|
|
3121
|
+
line-height: 1.5;
|
|
3122
|
+
}
|
|
3123
|
+
|
|
3124
|
+
.quarto-preview-card-centered {
|
|
3125
|
+
text-align: center;
|
|
3126
|
+
}
|
|
3127
|
+
|
|
3128
|
+
.quarto-preview-card h2 {
|
|
3129
|
+
margin: 0 0 10px;
|
|
3130
|
+
color: var(--text);
|
|
3131
|
+
font-size: 18px;
|
|
3132
|
+
}
|
|
3133
|
+
|
|
3134
|
+
.quarto-preview-card p {
|
|
3135
|
+
margin: 8px 0 14px;
|
|
3136
|
+
}
|
|
3137
|
+
|
|
3138
|
+
.quarto-preview-card > .quarto-preview-dirty-warning,
|
|
3139
|
+
.quarto-preview-card > .quarto-preview-error,
|
|
3140
|
+
.quarto-preview-card > .quarto-preview-note,
|
|
3141
|
+
.quarto-preview-card > .quarto-preview-safety-note {
|
|
3142
|
+
margin: 12px 0;
|
|
3143
|
+
text-align: left;
|
|
3144
|
+
}
|
|
3145
|
+
|
|
3146
|
+
.quarto-preview-log-details {
|
|
3147
|
+
margin-top: 14px;
|
|
3148
|
+
text-align: left;
|
|
3149
|
+
color: var(--studio-info-text, var(--muted));
|
|
3150
|
+
}
|
|
3151
|
+
|
|
3152
|
+
.quarto-preview-log-details summary {
|
|
3153
|
+
cursor: pointer;
|
|
3154
|
+
font-size: 12px;
|
|
3155
|
+
font-weight: 600;
|
|
3156
|
+
}
|
|
3157
|
+
|
|
3158
|
+
.quarto-preview-log-details pre,
|
|
3159
|
+
.quarto-preview-live-log pre {
|
|
3160
|
+
margin: 8px 0 0;
|
|
3161
|
+
padding: 10px;
|
|
3162
|
+
overflow: auto;
|
|
3163
|
+
border: 1px solid var(--panel-border);
|
|
3164
|
+
border-radius: 8px;
|
|
3165
|
+
background: var(--editor-bg, var(--panel-2));
|
|
3166
|
+
color: var(--text);
|
|
3167
|
+
font-family: var(--font-mono);
|
|
3168
|
+
font-size: 11px;
|
|
3169
|
+
line-height: 1.4;
|
|
3170
|
+
text-align: left;
|
|
3171
|
+
white-space: pre-wrap;
|
|
3172
|
+
overflow-wrap: anywhere;
|
|
3173
|
+
}
|
|
3174
|
+
|
|
3175
|
+
.quarto-preview-log-details pre {
|
|
3176
|
+
max-height: min(34vh, 360px);
|
|
3177
|
+
}
|
|
3178
|
+
|
|
3179
|
+
.quarto-preview-live-log {
|
|
3180
|
+
flex: 0 1 34%;
|
|
3181
|
+
min-height: 100px;
|
|
3182
|
+
padding: 0 10px 10px;
|
|
3183
|
+
overflow: auto;
|
|
3184
|
+
border-top: 1px solid var(--panel-border);
|
|
3185
|
+
background: var(--panel-2);
|
|
3186
|
+
}
|
|
3187
|
+
|
|
3188
|
+
.quarto-preview-live-log pre {
|
|
3189
|
+
height: 100%;
|
|
3190
|
+
max-height: 100%;
|
|
3191
|
+
}
|
|
3192
|
+
|
|
3193
|
+
.quarto-preview-spinner {
|
|
3194
|
+
width: 24px;
|
|
3195
|
+
height: 24px;
|
|
3196
|
+
margin: 0 auto 14px;
|
|
3197
|
+
border: 3px solid var(--control-border);
|
|
3198
|
+
border-top-color: var(--accent);
|
|
3199
|
+
border-radius: 999px;
|
|
3200
|
+
animation: quarto-preview-spin 0.8s linear infinite;
|
|
3201
|
+
}
|
|
3202
|
+
|
|
3203
|
+
@keyframes quarto-preview-spin {
|
|
3204
|
+
to { transform: rotate(360deg); }
|
|
3205
|
+
}
|
|
3206
|
+
|
|
3207
|
+
@container (max-width: 620px) {
|
|
3208
|
+
.quarto-preview-toolbar,
|
|
3209
|
+
.quarto-preview-title-group {
|
|
3210
|
+
align-items: stretch;
|
|
3211
|
+
flex-direction: column;
|
|
3212
|
+
}
|
|
3213
|
+
|
|
3214
|
+
.quarto-preview-actions {
|
|
3215
|
+
justify-content: flex-start;
|
|
3216
|
+
}
|
|
3217
|
+
|
|
3218
|
+
.quarto-preview-subtitle {
|
|
3219
|
+
white-space: normal;
|
|
3220
|
+
}
|
|
3221
|
+
}
|
|
3222
|
+
|
|
2970
3223
|
.git-changes-panel {
|
|
2971
3224
|
display: flex;
|
|
2972
3225
|
flex-direction: column;
|