@povio/ui 5.0.0-rc.11 → 5.0.0-rc.12

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.
@@ -18,12 +18,12 @@
18
18
  .povio-app-canvas * {
19
19
  box-sizing: border-box;
20
20
  }
21
- .povio-app-canvas button,
22
- .povio-app-canvas select,
23
- .povio-app-canvas input {
21
+ .povio-app-canvas button:not(:where(.povio-canvas-workspace-select *)),
22
+ .povio-app-canvas select:not(:where(.povio-canvas-workspace-select *)),
23
+ .povio-app-canvas input:not(:where(.povio-canvas-workspace-select *)) {
24
24
  font: inherit;
25
25
  }
26
- .povio-app-canvas button {
26
+ .povio-app-canvas button:not(:where(.povio-canvas-workspace-select *)) {
27
27
  cursor: pointer;
28
28
  background: #fff;
29
29
  color: #45454d;
@@ -31,25 +31,25 @@
31
31
  border-radius: 5px;
32
32
  padding: 4px 6px;
33
33
  }
34
- .povio-app-canvas button:hover {
34
+ .povio-app-canvas button:not(:where(.povio-canvas-workspace-select *)):hover {
35
35
  background: #f1f1f4;
36
36
  }
37
- .povio-app-canvas button:disabled {
37
+ .povio-app-canvas button:not(:where(.povio-canvas-workspace-select *)):disabled {
38
38
  opacity: 0.45;
39
39
  cursor: default;
40
40
  }
41
- .povio-app-canvas button:focus-visible,
42
- .povio-app-canvas input:focus-visible,
43
- .povio-app-canvas select:focus-visible {
41
+ .povio-app-canvas button:not(:where(.povio-canvas-workspace-select *)):focus-visible,
42
+ .povio-app-canvas input:not(:where(.povio-canvas-workspace-select *)):focus-visible,
43
+ .povio-app-canvas select:not(:where(.povio-canvas-workspace-select *)):focus-visible {
44
44
  outline: 2px solid var(--canvas-accent);
45
45
  outline-offset: 2px;
46
46
  }
47
- .povio-app-canvas button[aria-pressed="true"] {
47
+ .povio-app-canvas button:not(:where(.povio-canvas-workspace-select *))[aria-pressed="true"] {
48
48
  background: #eee8ff;
49
49
  color: #6540c2;
50
50
  }
51
- .povio-app-canvas input,
52
- .povio-app-canvas select {
51
+ .povio-app-canvas input:not(:where(.povio-canvas-workspace-select *)),
52
+ .povio-app-canvas select:not(:where(.povio-canvas-workspace-select *)) {
53
53
  border: 1px solid var(--canvas-border);
54
54
  border-radius: 5px;
55
55
  padding: 4px 6px;
@@ -198,7 +198,7 @@
198
198
  overflow-y: auto;
199
199
  padding: 0 8px 8px;
200
200
  }
201
- .povio-canvas-page-list > button {
201
+ .povio-canvas-page-entry > button {
202
202
  display: flex;
203
203
  align-items: flex-start;
204
204
  gap: 6px;
@@ -207,7 +207,7 @@
207
207
  margin-bottom: 1px;
208
208
  padding: 4px 8px;
209
209
  }
210
- .povio-canvas-page-list > button > svg {
210
+ .povio-canvas-page-entry > button > svg {
211
211
  flex-shrink: 0;
212
212
  margin-top: 2px;
213
213
  color: #8d859b;
@@ -303,6 +303,8 @@
303
303
  }
304
304
  /* The header keeps its 48px slot in world space; its label divides by the zoom to stay 10px on screen. */
305
305
  .povio-canvas-node-header {
306
+ user-select: none;
307
+ -webkit-user-select: none;
306
308
  position: relative;
307
309
  display: flex;
308
310
  align-items: flex-end;
@@ -830,3 +832,412 @@
830
832
  .povio-canvas-catalog > .povio-canvas-sidebar-actions {
831
833
  margin-top: auto;
832
834
  }
835
+
836
+ .povio-canvas-workspaces {
837
+ margin: 0;
838
+ border: 0;
839
+ padding: 12px 10px;
840
+ border-bottom: 1px solid var(--canvas-border);
841
+ min-width: 0;
842
+ }
843
+ .povio-canvas-workspace-picker,
844
+ .povio-canvas-workspace-actions {
845
+ display: flex;
846
+ align-items: center;
847
+ gap: 3px;
848
+ }
849
+ .povio-canvas-workspace-select {
850
+ flex: 1;
851
+ min-width: 0;
852
+ font-weight: 600;
853
+ }
854
+ .povio-canvas-workspace-picker > button {
855
+ display: grid;
856
+ place-items: center;
857
+ padding: 6px;
858
+ }
859
+ .povio-canvas-workspace-actions {
860
+ margin-top: 8px;
861
+ }
862
+ .povio-canvas-workspace-actions > button:first-child {
863
+ flex: 1;
864
+ display: flex;
865
+ justify-content: space-between;
866
+ font-size: 11px;
867
+ }
868
+ .povio-canvas-workspace-actions span {
869
+ color: #77717e;
870
+ }
871
+ .povio-canvas-storage-status {
872
+ padding: 0 12px 12px;
873
+ font-size: 10px;
874
+ color: #77717e;
875
+ overflow-wrap: anywhere;
876
+ }
877
+ .povio-canvas-storage-status p {
878
+ color: #9a461b;
879
+ margin: 6px 0;
880
+ }
881
+ .povio-canvas-storage-status button {
882
+ font-size: 10px;
883
+ border-color: var(--canvas-border);
884
+ }
885
+ .povio-canvas-inline-layers {
886
+ position: relative;
887
+ margin: 4px 0 12px 12px;
888
+ border-left: 1px solid var(--canvas-border);
889
+ }
890
+ .povio-canvas-inline-layers .povio-canvas-layers {
891
+ margin: 0;
892
+ border: 0;
893
+ padding-top: 0;
894
+ }
895
+ .povio-canvas-inline-layers .povio-canvas-layers > header {
896
+ padding-right: 28px;
897
+ }
898
+ .povio-canvas-inline-layers .povio-canvas-layers-close {
899
+ position: absolute;
900
+ top: 3px;
901
+ right: 0;
902
+ padding: 3px;
903
+ display: grid;
904
+ place-items: center;
905
+ }
906
+ .povio-canvas-empty {
907
+ position: absolute;
908
+ left: 50%;
909
+ top: 40%;
910
+ transform: translate(-50%, -50%);
911
+ max-width: 320px;
912
+ color: #77717e;
913
+ text-align: center;
914
+ font-size: 13px;
915
+ }
916
+
917
+ .povio-canvas-save-theme {
918
+ margin-top: 6px;
919
+ }
920
+ .povio-canvas-save-theme > button {
921
+ width: 100%;
922
+ }
923
+ .povio-canvas-save-theme > p {
924
+ margin: 6px 0 0;
925
+ overflow-wrap: anywhere;
926
+ }
927
+
928
+ /* Keep the workspace input aligned with the compact canvas controls. */
929
+ .povio-canvas-workspace-select .povio-canvas-workspace-input {
930
+ border: 1px solid var(--canvas-border);
931
+ border-radius: 6px;
932
+ min-height: 30px;
933
+ height: 30px;
934
+ font:
935
+ 500 11px/1.4 Inter,
936
+ system-ui,
937
+ sans-serif;
938
+ }
939
+ .povio-canvas-workspace-select .povio-canvas-workspace-input > div {
940
+ padding: 0 8px;
941
+ font: inherit;
942
+ min-width: 0;
943
+ }
944
+ .povio-canvas-workspace-select .povio-canvas-workspace-input button {
945
+ color: inherit;
946
+ font: inherit;
947
+ background: transparent;
948
+ }
949
+ .povio-canvas-workspace-select .povio-canvas-workspace-input[data-focused] {
950
+ border-color: var(--canvas-accent);
951
+ }
952
+
953
+ .povio-canvas-camera .povio-canvas-breakpoint {
954
+ flex: 0 1 155px;
955
+ width: 155px;
956
+ min-width: 120px;
957
+ }
958
+ .povio-canvas-workspace-select .povio-canvas-workspace-input > div {
959
+ gap: 6px;
960
+ }
961
+ .povio-canvas-workspace-select .povio-canvas-workspace-input > button {
962
+ flex: 0 0 24px;
963
+ width: 24px;
964
+ padding: 0 4px;
965
+ justify-content: center;
966
+ }
967
+ .povio-canvas-workspace-select .povio-canvas-workspace-input > button > span {
968
+ width: 16px;
969
+ height: 16px;
970
+ }
971
+ .povio-canvas-breakpoint .povio-canvas-workspace-input > div > div {
972
+ margin-left: 0;
973
+ }
974
+ .povio-canvas-camera .povio-canvas-breakpoint {
975
+ flex-shrink: 0;
976
+ width: 160px;
977
+ }
978
+
979
+ .povio-canvas-workspaces {
980
+ padding: 8px;
981
+ }
982
+ .povio-canvas-workspace-picker .povio-canvas-workspace-input {
983
+ height: 24px;
984
+ min-height: 24px;
985
+ font-size: 10px;
986
+ }
987
+ .povio-canvas-workspace-picker > button {
988
+ padding: 4px;
989
+ }
990
+ .povio-canvas-workspace-actions {
991
+ margin-top: 4px;
992
+ }
993
+ .povio-canvas-workspace-actions > button:first-child {
994
+ font-size: 10px;
995
+ }
996
+ .povio-canvas-workspaces {
997
+ padding: 6px 8px;
998
+ }
999
+ .povio-canvas-workspace-actions {
1000
+ margin-top: 2px;
1001
+ gap: 2px;
1002
+ }
1003
+ .povio-canvas-workspace-actions > button {
1004
+ min-height: 20px;
1005
+ padding: 3px 4px;
1006
+ line-height: 1.2;
1007
+ }
1008
+ .povio-canvas-workspace-picker > button {
1009
+ padding: 4px;
1010
+ }
1011
+
1012
+ .povio-canvas-workspace-picker .povio-canvas-workspace-input {
1013
+ height: 22px;
1014
+ min-height: 22px;
1015
+ }
1016
+
1017
+ .povio-canvas-workspace-popover {
1018
+ width: 240px;
1019
+ max-width: calc(100vw - 16px);
1020
+ padding: 10px;
1021
+ background: #fff;
1022
+ color: #45454d;
1023
+ border: 1px solid #e8e8eb;
1024
+ border-radius: 8px;
1025
+ box-shadow: 0 6px 24px #24202d20;
1026
+ font:
1027
+ 11px/1.4 Inter,
1028
+ system-ui,
1029
+ sans-serif;
1030
+ z-index: 10000;
1031
+ }
1032
+ .povio-canvas-workspace-popover [role="dialog"],
1033
+ .povio-canvas-workspace-popover [role="alertdialog"] {
1034
+ outline: none;
1035
+ }
1036
+ .povio-canvas-workspace-popover label {
1037
+ display: grid;
1038
+ gap: 5px;
1039
+ }
1040
+ .povio-canvas-workspace-popover input {
1041
+ width: 100%;
1042
+ min-width: 0;
1043
+ box-sizing: border-box;
1044
+ padding: 5px 7px;
1045
+ border: 1px solid #e8e8eb;
1046
+ border-radius: 5px;
1047
+ background: #fafafa;
1048
+ color: inherit;
1049
+ font: inherit;
1050
+ }
1051
+ .povio-canvas-workspace-popover-actions {
1052
+ display: flex;
1053
+ align-items: center;
1054
+ justify-content: flex-end;
1055
+ gap: 6px;
1056
+ margin-top: 8px;
1057
+ }
1058
+ .povio-canvas-workspace-popover button {
1059
+ display: inline-flex;
1060
+ align-items: center;
1061
+ gap: 4px;
1062
+ border: 1px solid #e8e8eb;
1063
+ border-radius: 5px;
1064
+ padding: 4px 7px;
1065
+ background: #fff;
1066
+ color: inherit;
1067
+ font: inherit;
1068
+ cursor: pointer;
1069
+ }
1070
+ .povio-canvas-workspace-popover button:disabled {
1071
+ opacity: 0.4;
1072
+ cursor: default;
1073
+ }
1074
+ .povio-canvas-workspace-popover .povio-canvas-workspace-delete {
1075
+ margin-right: auto;
1076
+ padding-left: 0;
1077
+ border: 0;
1078
+ color: #b52c39;
1079
+ }
1080
+ .povio-canvas-workspace-popover .is-primary {
1081
+ background: #7650cc;
1082
+ color: white;
1083
+ border-color: #7650cc;
1084
+ }
1085
+ .povio-canvas-workspace-popover .is-danger {
1086
+ background: #b52c39;
1087
+ color: white;
1088
+ border-color: #b52c39;
1089
+ }
1090
+ .povio-canvas-workspace-popover :focus-visible {
1091
+ outline: 2px solid #7650cc;
1092
+ outline-offset: 1px;
1093
+ }
1094
+ /* Reserve room for the 2px focus outline plus its 2px offset. */
1095
+ .povio-canvas-workspace-picker {
1096
+ gap: 6px;
1097
+ padding-bottom: 4px;
1098
+ }
1099
+ .povio-canvas-workspace-actions {
1100
+ gap: 6px;
1101
+ }
1102
+ .povio-canvas-workspace-popover {
1103
+ width: 260px;
1104
+ max-height: calc(100dvh - 24px);
1105
+ overflow: auto;
1106
+ }
1107
+ .povio-canvas-workspace-popover-heading {
1108
+ display: flex;
1109
+ align-items: center;
1110
+ justify-content: space-between;
1111
+ margin-bottom: 8px;
1112
+ }
1113
+ .povio-canvas-workspace-popover-heading h2 {
1114
+ margin: 0;
1115
+ font-size: 11px;
1116
+ font-weight: 600;
1117
+ }
1118
+ .povio-canvas-workspace-popover-heading button {
1119
+ padding: 2px;
1120
+ border: 0;
1121
+ }
1122
+ .povio-canvas-popover-pages {
1123
+ margin-top: 8px;
1124
+ }
1125
+ .povio-canvas-popover-page-tools {
1126
+ display: flex;
1127
+ align-items: center;
1128
+ gap: 4px;
1129
+ margin-bottom: 6px;
1130
+ }
1131
+ .povio-canvas-popover-page-tools > span {
1132
+ margin-right: auto;
1133
+ color: #77717e;
1134
+ }
1135
+ .povio-canvas-popover-page-tools button {
1136
+ border: 0;
1137
+ padding: 2px;
1138
+ font-size: 10px;
1139
+ }
1140
+ .povio-canvas-workspace-popover .povio-canvas-popover-search {
1141
+ position: relative;
1142
+ display: flex;
1143
+ align-items: center;
1144
+ }
1145
+ .povio-canvas-popover-search svg {
1146
+ position: absolute;
1147
+ left: 7px;
1148
+ color: #77717e;
1149
+ }
1150
+ .povio-canvas-workspace-popover .povio-canvas-popover-search input {
1151
+ padding-left: 24px;
1152
+ }
1153
+ .povio-canvas-popover-page-list {
1154
+ max-height: min(200px, 35dvh);
1155
+ overflow: auto;
1156
+ padding: 4px 3px;
1157
+ margin: 3px -3px 0;
1158
+ }
1159
+ .povio-canvas-workspace-popover .povio-canvas-popover-page-list label {
1160
+ display: flex;
1161
+ align-items: center;
1162
+ gap: 6px;
1163
+ padding: 4px 2px;
1164
+ }
1165
+ .povio-canvas-workspace-popover .povio-canvas-popover-page-list input {
1166
+ width: 12px;
1167
+ height: 12px;
1168
+ padding: 0;
1169
+ margin: 0;
1170
+ flex-shrink: 0;
1171
+ accent-color: #7650cc;
1172
+ }
1173
+ .povio-canvas-popover-page-list label span {
1174
+ overflow-wrap: anywhere;
1175
+ }
1176
+
1177
+ .povio-canvas-page-entry > button {
1178
+ margin-bottom: 6px;
1179
+ }
1180
+ .povio-canvas-page-list {
1181
+ padding: 4px 8px 8px;
1182
+ }
1183
+ .povio-canvas-search:has(input:focus-visible) {
1184
+ outline: 2px solid var(--canvas-accent);
1185
+ outline-offset: 2px;
1186
+ }
1187
+ .povio-app-canvas .povio-canvas-search input:focus-visible {
1188
+ outline: none;
1189
+ }
1190
+ .povio-canvas-layer-row {
1191
+ margin: 4px;
1192
+ }
1193
+ .povio-canvas-layer-row:has(> button:focus-visible) {
1194
+ outline: 2px solid var(--canvas-accent);
1195
+ outline-offset: 2px;
1196
+ }
1197
+ .povio-app-canvas .povio-canvas-layer-row > button:focus-visible {
1198
+ outline: none;
1199
+ }
1200
+ .povio-canvas-page-list {
1201
+ scroll-padding-block: 4px;
1202
+ }
1203
+ .povio-canvas-page-entry > button,
1204
+ .povio-canvas-layer-row > button {
1205
+ scroll-margin-block: 4px;
1206
+ }
1207
+ .povio-canvas-layer-row {
1208
+ min-height: 20px;
1209
+ margin: 1px 4px;
1210
+ }
1211
+ .povio-canvas-layer-row:has(> button:focus-visible) {
1212
+ outline-offset: -1px;
1213
+ }
1214
+ .povio-canvas-layer-row .povio-canvas-layer-select {
1215
+ height: 20px;
1216
+ min-height: 0;
1217
+ padding: 1px 2px;
1218
+ line-height: 16px;
1219
+ }
1220
+ .povio-canvas-layer-row .povio-canvas-layer-toggle {
1221
+ height: 18px;
1222
+ min-height: 0;
1223
+ padding: 1px;
1224
+ }
1225
+ .povio-canvas-layer-row {
1226
+ height: 22px;
1227
+ min-height: 22px;
1228
+ margin: 0 4px;
1229
+ font-size: 10px;
1230
+ }
1231
+ .povio-canvas-layer-row:has(> button:focus-visible) {
1232
+ outline-offset: -2px;
1233
+ }
1234
+ .povio-canvas-layer-row .povio-canvas-layer-select {
1235
+ height: 22px;
1236
+ font-size: 10px;
1237
+ }
1238
+ .povio-canvas-layer-highlight {
1239
+ z-index: 4;
1240
+ }
1241
+ .povio-canvas-layer-highlight .studio-hover-outline {
1242
+ background: #7655d71a;
1243
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@povio/ui",
3
- "version": "5.0.0-rc.11",
3
+ "version": "5.0.0-rc.12",
4
4
  "type": "module",
5
5
  "module": "dist/index.js",
6
6
  "types": "dist/index.d.ts",