@jskit-ai/jskit-catalog 0.1.72 → 0.1.74
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/catalog/packages.json +630 -253
- package/package.json +1 -1
package/catalog/packages.json
CHANGED
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
"packages": [
|
|
7
7
|
{
|
|
8
8
|
"packageId": "@jskit-ai/assistant",
|
|
9
|
-
"version": "0.1.
|
|
9
|
+
"version": "0.1.75",
|
|
10
10
|
"descriptor": {
|
|
11
11
|
"packageVersion": 1,
|
|
12
12
|
"packageId": "@jskit-ai/assistant",
|
|
13
|
-
"version": "0.1.
|
|
13
|
+
"version": "0.1.75",
|
|
14
14
|
"kind": "generator",
|
|
15
15
|
"description": "Install assistant runtime/config for one surface and scaffold assistant pages at explicit target files.",
|
|
16
16
|
"options": {
|
|
@@ -58,14 +58,7 @@
|
|
|
58
58
|
"inputType": "text",
|
|
59
59
|
"defaultValue": "",
|
|
60
60
|
"promptLabel": "Link placement",
|
|
61
|
-
"promptHint": "Optional target for the generated page link placement (format:
|
|
62
|
-
},
|
|
63
|
-
"link-component-token": {
|
|
64
|
-
"required": false,
|
|
65
|
-
"inputType": "text",
|
|
66
|
-
"defaultValue": "",
|
|
67
|
-
"promptLabel": "Link component token",
|
|
68
|
-
"promptHint": "Optional component token override for the generated page link placement."
|
|
61
|
+
"promptHint": "Optional semantic target for the generated page link placement (format: area.slot)."
|
|
69
62
|
},
|
|
70
63
|
"link-to": {
|
|
71
64
|
"required": false,
|
|
@@ -185,7 +178,6 @@
|
|
|
185
178
|
"optionNames": [
|
|
186
179
|
"name",
|
|
187
180
|
"link-placement",
|
|
188
|
-
"link-component-token",
|
|
189
181
|
"link-to",
|
|
190
182
|
"force"
|
|
191
183
|
],
|
|
@@ -208,7 +200,7 @@
|
|
|
208
200
|
"npx jskit generate assistant page \\",
|
|
209
201
|
" admin/ops/copilot/index.vue \\",
|
|
210
202
|
" --name \"Copilot\" \\",
|
|
211
|
-
" --link-placement shell
|
|
203
|
+
" --link-placement shell.status"
|
|
212
204
|
]
|
|
213
205
|
}
|
|
214
206
|
]
|
|
@@ -229,7 +221,6 @@
|
|
|
229
221
|
"surface",
|
|
230
222
|
"name",
|
|
231
223
|
"link-placement",
|
|
232
|
-
"link-component-token",
|
|
233
224
|
"link-to",
|
|
234
225
|
"force"
|
|
235
226
|
],
|
|
@@ -356,11 +347,11 @@
|
|
|
356
347
|
},
|
|
357
348
|
{
|
|
358
349
|
"packageId": "@jskit-ai/assistant-core",
|
|
359
|
-
"version": "0.1.
|
|
350
|
+
"version": "0.1.42",
|
|
360
351
|
"descriptor": {
|
|
361
352
|
"packageVersion": 1,
|
|
362
353
|
"packageId": "@jskit-ai/assistant-core",
|
|
363
|
-
"version": "0.1.
|
|
354
|
+
"version": "0.1.42",
|
|
364
355
|
"kind": "runtime",
|
|
365
356
|
"description": "Reusable assistant client/server/shared primitives without surface-specific routes or settings ownership.",
|
|
366
357
|
"dependsOn": [
|
|
@@ -408,11 +399,11 @@
|
|
|
408
399
|
"mutations": {
|
|
409
400
|
"dependencies": {
|
|
410
401
|
"runtime": {
|
|
411
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
412
|
-
"@jskit-ai/kernel": "0.1.
|
|
413
|
-
"@jskit-ai/resource-core": "0.1.
|
|
414
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
415
|
-
"@jskit-ai/users-core": "0.1.
|
|
402
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
403
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
404
|
+
"@jskit-ai/resource-core": "0.1.11",
|
|
405
|
+
"@jskit-ai/resource-crud-core": "0.1.11",
|
|
406
|
+
"@jskit-ai/users-core": "0.1.76",
|
|
416
407
|
"@tanstack/vue-query": "^5.90.5",
|
|
417
408
|
"dompurify": "^3.3.3",
|
|
418
409
|
"json-rest-schema": "1.x.x",
|
|
@@ -433,11 +424,11 @@
|
|
|
433
424
|
},
|
|
434
425
|
{
|
|
435
426
|
"packageId": "@jskit-ai/assistant-runtime",
|
|
436
|
-
"version": "0.1.
|
|
427
|
+
"version": "0.1.37",
|
|
437
428
|
"descriptor": {
|
|
438
429
|
"packageVersion": 1,
|
|
439
430
|
"packageId": "@jskit-ai/assistant-runtime",
|
|
440
|
-
"version": "0.1.
|
|
431
|
+
"version": "0.1.37",
|
|
441
432
|
"kind": "runtime",
|
|
442
433
|
"description": "Shared assistant runtime with per-surface assistant registration.",
|
|
443
434
|
"dependsOn": [
|
|
@@ -533,13 +524,13 @@
|
|
|
533
524
|
"mutations": {
|
|
534
525
|
"dependencies": {
|
|
535
526
|
"runtime": {
|
|
536
|
-
"@jskit-ai/assistant-core": "0.1.
|
|
537
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
538
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
539
|
-
"@jskit-ai/kernel": "0.1.
|
|
540
|
-
"@jskit-ai/shell-web": "0.1.
|
|
541
|
-
"@jskit-ai/users-core": "0.1.
|
|
542
|
-
"@jskit-ai/users-web": "0.1.
|
|
527
|
+
"@jskit-ai/assistant-core": "0.1.42",
|
|
528
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
529
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
530
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
531
|
+
"@jskit-ai/shell-web": "0.1.65",
|
|
532
|
+
"@jskit-ai/users-core": "0.1.76",
|
|
533
|
+
"@jskit-ai/users-web": "0.1.81",
|
|
543
534
|
"@tanstack/vue-query": "^5.90.5",
|
|
544
535
|
"vuetify": "^4.0.0"
|
|
545
536
|
},
|
|
@@ -596,11 +587,11 @@
|
|
|
596
587
|
},
|
|
597
588
|
{
|
|
598
589
|
"packageId": "@jskit-ai/auth-core",
|
|
599
|
-
"version": "0.1.
|
|
590
|
+
"version": "0.1.65",
|
|
600
591
|
"descriptor": {
|
|
601
592
|
"packageVersion": 1,
|
|
602
593
|
"packageId": "@jskit-ai/auth-core",
|
|
603
|
-
"version": "0.1.
|
|
594
|
+
"version": "0.1.65",
|
|
604
595
|
"kind": "runtime",
|
|
605
596
|
"dependsOn": [
|
|
606
597
|
"@jskit-ai/value-app-config-shared"
|
|
@@ -668,7 +659,7 @@
|
|
|
668
659
|
"mutations": {
|
|
669
660
|
"dependencies": {
|
|
670
661
|
"runtime": {
|
|
671
|
-
"@jskit-ai/kernel": "0.1.
|
|
662
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
672
663
|
"@fastify/cookie": "^11.0.2",
|
|
673
664
|
"@fastify/csrf-protection": "^7.1.0",
|
|
674
665
|
"@fastify/rate-limit": "^10.3.0"
|
|
@@ -686,11 +677,11 @@
|
|
|
686
677
|
},
|
|
687
678
|
{
|
|
688
679
|
"packageId": "@jskit-ai/auth-provider-supabase-core",
|
|
689
|
-
"version": "0.1.
|
|
680
|
+
"version": "0.1.65",
|
|
690
681
|
"descriptor": {
|
|
691
682
|
"packageVersion": 1,
|
|
692
683
|
"packageId": "@jskit-ai/auth-provider-supabase-core",
|
|
693
|
-
"version": "0.1.
|
|
684
|
+
"version": "0.1.65",
|
|
694
685
|
"kind": "runtime",
|
|
695
686
|
"options": {
|
|
696
687
|
"auth-supabase-url": {
|
|
@@ -772,8 +763,8 @@
|
|
|
772
763
|
"mutations": {
|
|
773
764
|
"dependencies": {
|
|
774
765
|
"runtime": {
|
|
775
|
-
"@jskit-ai/auth-core": "0.1.
|
|
776
|
-
"@jskit-ai/kernel": "0.1.
|
|
766
|
+
"@jskit-ai/auth-core": "0.1.65",
|
|
767
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
777
768
|
"dotenv": "^16.4.5",
|
|
778
769
|
"@supabase/supabase-js": "^2.57.4",
|
|
779
770
|
"jose": "^6.1.0"
|
|
@@ -838,11 +829,11 @@
|
|
|
838
829
|
},
|
|
839
830
|
{
|
|
840
831
|
"packageId": "@jskit-ai/auth-web",
|
|
841
|
-
"version": "0.1.
|
|
832
|
+
"version": "0.1.67",
|
|
842
833
|
"descriptor": {
|
|
843
834
|
"packageVersion": 1,
|
|
844
835
|
"packageId": "@jskit-ai/auth-web",
|
|
845
|
-
"version": "0.1.
|
|
836
|
+
"version": "0.1.67",
|
|
846
837
|
"kind": "runtime",
|
|
847
838
|
"description": "Auth web module: Fastify auth routes plus web login/sign-out scaffolds.",
|
|
848
839
|
"dependsOn": [
|
|
@@ -1019,17 +1010,48 @@
|
|
|
1019
1010
|
"outlets": [
|
|
1020
1011
|
{
|
|
1021
1012
|
"target": "auth-profile-menu:primary-menu",
|
|
1022
|
-
"defaultLinkComponentToken": "auth.web.profile.menu.link-item",
|
|
1023
1013
|
"surfaces": [
|
|
1024
1014
|
"*"
|
|
1025
1015
|
],
|
|
1026
1016
|
"source": "src/client/views/AuthProfileWidget.vue"
|
|
1027
1017
|
}
|
|
1028
1018
|
],
|
|
1019
|
+
"topology": {
|
|
1020
|
+
"placements": [
|
|
1021
|
+
{
|
|
1022
|
+
"id": "auth.profile-menu",
|
|
1023
|
+
"description": "Authenticated profile menu actions.",
|
|
1024
|
+
"surfaces": [
|
|
1025
|
+
"*"
|
|
1026
|
+
],
|
|
1027
|
+
"variants": {
|
|
1028
|
+
"compact": {
|
|
1029
|
+
"outlet": "auth-profile-menu:primary-menu",
|
|
1030
|
+
"renderers": {
|
|
1031
|
+
"link": "auth.web.profile.menu.link-item"
|
|
1032
|
+
}
|
|
1033
|
+
},
|
|
1034
|
+
"medium": {
|
|
1035
|
+
"outlet": "auth-profile-menu:primary-menu",
|
|
1036
|
+
"renderers": {
|
|
1037
|
+
"link": "auth.web.profile.menu.link-item"
|
|
1038
|
+
}
|
|
1039
|
+
},
|
|
1040
|
+
"expanded": {
|
|
1041
|
+
"outlet": "auth-profile-menu:primary-menu",
|
|
1042
|
+
"renderers": {
|
|
1043
|
+
"link": "auth.web.profile.menu.link-item"
|
|
1044
|
+
}
|
|
1045
|
+
}
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
1048
|
+
]
|
|
1049
|
+
},
|
|
1029
1050
|
"contributions": [
|
|
1030
1051
|
{
|
|
1031
1052
|
"id": "auth.profile.widget",
|
|
1032
|
-
"target": "shell
|
|
1053
|
+
"target": "shell.status",
|
|
1054
|
+
"kind": "component",
|
|
1033
1055
|
"surfaces": [
|
|
1034
1056
|
"*"
|
|
1035
1057
|
],
|
|
@@ -1039,23 +1061,23 @@
|
|
|
1039
1061
|
},
|
|
1040
1062
|
{
|
|
1041
1063
|
"id": "auth.profile.menu.sign-in",
|
|
1042
|
-
"target": "auth
|
|
1064
|
+
"target": "auth.profile-menu",
|
|
1065
|
+
"kind": "link",
|
|
1043
1066
|
"surfaces": [
|
|
1044
1067
|
"*"
|
|
1045
1068
|
],
|
|
1046
1069
|
"order": 200,
|
|
1047
|
-
"componentToken": "auth.web.profile.menu.link-item",
|
|
1048
1070
|
"when": "auth.authenticated !== true",
|
|
1049
1071
|
"source": "mutations.text#auth-web-placement-block"
|
|
1050
1072
|
},
|
|
1051
1073
|
{
|
|
1052
1074
|
"id": "auth.profile.menu.sign-out",
|
|
1053
|
-
"target": "auth
|
|
1075
|
+
"target": "auth.profile-menu",
|
|
1076
|
+
"kind": "link",
|
|
1054
1077
|
"surfaces": [
|
|
1055
1078
|
"*"
|
|
1056
1079
|
],
|
|
1057
1080
|
"order": 1000,
|
|
1058
|
-
"componentToken": "auth.web.profile.menu.link-item",
|
|
1059
1081
|
"when": "auth.authenticated === true",
|
|
1060
1082
|
"source": "mutations.text#auth-web-placement-block"
|
|
1061
1083
|
}
|
|
@@ -1068,10 +1090,10 @@
|
|
|
1068
1090
|
"runtime": {
|
|
1069
1091
|
"@tanstack/vue-query": "5.92.12",
|
|
1070
1092
|
"@mdi/js": "^7.4.47",
|
|
1071
|
-
"@jskit-ai/auth-core": "0.1.
|
|
1072
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
1073
|
-
"@jskit-ai/kernel": "0.1.
|
|
1074
|
-
"@jskit-ai/shell-web": "0.1.
|
|
1093
|
+
"@jskit-ai/auth-core": "0.1.65",
|
|
1094
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
1095
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
1096
|
+
"@jskit-ai/shell-web": "0.1.65",
|
|
1075
1097
|
"vuetify": "^4.0.0"
|
|
1076
1098
|
},
|
|
1077
1099
|
"dev": {}
|
|
@@ -1130,10 +1152,20 @@
|
|
|
1130
1152
|
"file": "src/placement.js",
|
|
1131
1153
|
"position": "bottom",
|
|
1132
1154
|
"skipIfContains": "id: \"auth.profile.widget\"",
|
|
1133
|
-
"value": "\naddPlacement({\n id: \"auth.profile.widget\",\n target: \"shell
|
|
1155
|
+
"value": "\naddPlacement({\n id: \"auth.profile.widget\",\n target: \"shell.status\",\n kind: \"component\",\n surfaces: [\"*\"],\n order: 1000,\n componentToken: \"auth.web.profile.widget\"\n});\n\naddPlacement({\n id: \"auth.profile.menu.sign-in\",\n target: \"auth.profile-menu\",\n kind: \"link\",\n surfaces: [\"*\"],\n order: 200,\n props: {\n label: \"Sign in\",\n to: \"/auth/login\"\n },\n when: ({ auth }) => auth?.authenticated !== true\n});\n\naddPlacement({\n id: \"auth.profile.menu.sign-out\",\n target: \"auth.profile-menu\",\n kind: \"link\",\n surfaces: [\"*\"],\n order: 1000,\n props: {\n label: \"Sign out\",\n to: \"/auth/signout\"\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n",
|
|
1134
1156
|
"reason": "Append auth profile placement entries into app-owned placement registry.",
|
|
1135
1157
|
"category": "auth-web",
|
|
1136
1158
|
"id": "auth-web-placement-block"
|
|
1159
|
+
},
|
|
1160
|
+
{
|
|
1161
|
+
"op": "append-text",
|
|
1162
|
+
"file": "src/placementTopology.js",
|
|
1163
|
+
"position": "bottom",
|
|
1164
|
+
"skipIfContains": "id: \"auth.profile-menu\"",
|
|
1165
|
+
"value": "\naddPlacementTopology({\n id: \"auth.profile-menu\",\n description: \"Authenticated profile menu actions.\",\n surfaces: [\"*\"],\n variants: {\n compact: {\n outlet: \"auth-profile-menu:primary-menu\",\n renderers: {\n link: \"auth.web.profile.menu.link-item\"\n }\n },\n medium: {\n outlet: \"auth-profile-menu:primary-menu\",\n renderers: {\n link: \"auth.web.profile.menu.link-item\"\n }\n },\n expanded: {\n outlet: \"auth-profile-menu:primary-menu\",\n renderers: {\n link: \"auth.web.profile.menu.link-item\"\n }\n }\n }\n});\n",
|
|
1166
|
+
"reason": "Append auth profile menu topology into the app-owned placement topology.",
|
|
1167
|
+
"category": "auth-web",
|
|
1168
|
+
"id": "auth-web-profile-menu-topology"
|
|
1137
1169
|
}
|
|
1138
1170
|
]
|
|
1139
1171
|
}
|
|
@@ -1141,11 +1173,11 @@
|
|
|
1141
1173
|
},
|
|
1142
1174
|
{
|
|
1143
1175
|
"packageId": "@jskit-ai/console-core",
|
|
1144
|
-
"version": "0.1.
|
|
1176
|
+
"version": "0.1.29",
|
|
1145
1177
|
"descriptor": {
|
|
1146
1178
|
"packageVersion": 1,
|
|
1147
1179
|
"packageId": "@jskit-ai/console-core",
|
|
1148
|
-
"version": "0.1.
|
|
1180
|
+
"version": "0.1.29",
|
|
1149
1181
|
"kind": "runtime",
|
|
1150
1182
|
"description": "Console runtime: console settings schema, bootstrap flags, actions, and HTTP routes.",
|
|
1151
1183
|
"dependsOn": [
|
|
@@ -1229,12 +1261,12 @@
|
|
|
1229
1261
|
"mutations": {
|
|
1230
1262
|
"dependencies": {
|
|
1231
1263
|
"runtime": {
|
|
1232
|
-
"@jskit-ai/auth-core": "0.1.
|
|
1233
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
1234
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
1235
|
-
"@jskit-ai/kernel": "0.1.
|
|
1236
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
1237
|
-
"@jskit-ai/users-core": "0.1.
|
|
1264
|
+
"@jskit-ai/auth-core": "0.1.65",
|
|
1265
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
1266
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
1267
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
1268
|
+
"@jskit-ai/resource-crud-core": "0.1.11",
|
|
1269
|
+
"@jskit-ai/users-core": "0.1.76"
|
|
1238
1270
|
},
|
|
1239
1271
|
"dev": {}
|
|
1240
1272
|
},
|
|
@@ -1259,11 +1291,11 @@
|
|
|
1259
1291
|
},
|
|
1260
1292
|
{
|
|
1261
1293
|
"packageId": "@jskit-ai/console-web",
|
|
1262
|
-
"version": "0.1.
|
|
1294
|
+
"version": "0.1.34",
|
|
1263
1295
|
"descriptor": {
|
|
1264
1296
|
"packageVersion": 1,
|
|
1265
1297
|
"packageId": "@jskit-ai/console-web",
|
|
1266
|
-
"version": "0.1.
|
|
1298
|
+
"version": "0.1.34",
|
|
1267
1299
|
"kind": "runtime",
|
|
1268
1300
|
"description": "Authenticated console surface scaffold and surface policy wiring.",
|
|
1269
1301
|
"dependsOn": [
|
|
@@ -1305,33 +1337,64 @@
|
|
|
1305
1337
|
"outlets": [
|
|
1306
1338
|
{
|
|
1307
1339
|
"target": "console-settings:primary-menu",
|
|
1308
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
1309
1340
|
"surfaces": [
|
|
1310
1341
|
"console"
|
|
1311
1342
|
],
|
|
1312
1343
|
"source": "templates/src/pages/console/settings.vue"
|
|
1313
1344
|
}
|
|
1314
1345
|
],
|
|
1346
|
+
"topology": {
|
|
1347
|
+
"placements": [
|
|
1348
|
+
{
|
|
1349
|
+
"id": "page.section-nav",
|
|
1350
|
+
"owner": "console-settings",
|
|
1351
|
+
"description": "Navigation between console settings child pages.",
|
|
1352
|
+
"surfaces": [
|
|
1353
|
+
"console"
|
|
1354
|
+
],
|
|
1355
|
+
"variants": {
|
|
1356
|
+
"compact": {
|
|
1357
|
+
"outlet": "console-settings:primary-menu",
|
|
1358
|
+
"renderers": {
|
|
1359
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
1360
|
+
}
|
|
1361
|
+
},
|
|
1362
|
+
"medium": {
|
|
1363
|
+
"outlet": "console-settings:primary-menu",
|
|
1364
|
+
"renderers": {
|
|
1365
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
1366
|
+
}
|
|
1367
|
+
},
|
|
1368
|
+
"expanded": {
|
|
1369
|
+
"outlet": "console-settings:primary-menu",
|
|
1370
|
+
"renderers": {
|
|
1371
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
1372
|
+
}
|
|
1373
|
+
}
|
|
1374
|
+
}
|
|
1375
|
+
}
|
|
1376
|
+
]
|
|
1377
|
+
},
|
|
1315
1378
|
"contributions": [
|
|
1316
1379
|
{
|
|
1317
1380
|
"id": "console.web.profile.menu.console",
|
|
1318
|
-
"target": "auth
|
|
1381
|
+
"target": "auth.profile-menu",
|
|
1382
|
+
"kind": "link",
|
|
1319
1383
|
"surfaces": [
|
|
1320
1384
|
"*"
|
|
1321
1385
|
],
|
|
1322
1386
|
"order": 600,
|
|
1323
|
-
"componentToken": "auth.web.profile.menu.link-item",
|
|
1324
1387
|
"when": "auth.authenticated === true && surfaceAccess.consoleowner === true && surface !== \"console\"",
|
|
1325
1388
|
"source": "mutations.text#console-web-profile-menu-console-placement"
|
|
1326
1389
|
},
|
|
1327
1390
|
{
|
|
1328
1391
|
"id": "console.web.menu.settings",
|
|
1329
|
-
"target": "shell
|
|
1392
|
+
"target": "shell.primary-nav",
|
|
1393
|
+
"kind": "link",
|
|
1330
1394
|
"surfaces": [
|
|
1331
1395
|
"console"
|
|
1332
1396
|
],
|
|
1333
1397
|
"order": 100,
|
|
1334
|
-
"componentToken": "local.main.ui.menu-link-item",
|
|
1335
1398
|
"when": "auth.authenticated === true",
|
|
1336
1399
|
"source": "mutations.text#console-web-console-settings-placement"
|
|
1337
1400
|
}
|
|
@@ -1342,9 +1405,9 @@
|
|
|
1342
1405
|
"mutations": {
|
|
1343
1406
|
"dependencies": {
|
|
1344
1407
|
"runtime": {
|
|
1345
|
-
"@jskit-ai/auth-web": "0.1.
|
|
1346
|
-
"@jskit-ai/console-core": "0.1.
|
|
1347
|
-
"@jskit-ai/shell-web": "0.1.
|
|
1408
|
+
"@jskit-ai/auth-web": "0.1.67",
|
|
1409
|
+
"@jskit-ai/console-core": "0.1.29",
|
|
1410
|
+
"@jskit-ai/shell-web": "0.1.65"
|
|
1348
1411
|
},
|
|
1349
1412
|
"dev": {}
|
|
1350
1413
|
},
|
|
@@ -1420,7 +1483,7 @@
|
|
|
1420
1483
|
"file": "src/placement.js",
|
|
1421
1484
|
"position": "bottom",
|
|
1422
1485
|
"skipIfContains": "id: \"console.web.profile.menu.console\"",
|
|
1423
|
-
"value": "\naddPlacement({\n id: \"console.web.profile.menu.console\",\n target: \"auth
|
|
1486
|
+
"value": "\naddPlacement({\n id: \"console.web.profile.menu.console\",\n target: \"auth.profile-menu\",\n kind: \"link\",\n surfaces: [\"*\"],\n order: 600,\n props: {\n label: \"Go to console\",\n to: \"/console\",\n icon: \"mdi-console-network-outline\"\n },\n when: ({ auth, surfaceAccess, surface }) => {\n return auth?.authenticated === true && surfaceAccess?.consoleowner === true && surface !== \"console\";\n }\n});\n",
|
|
1424
1487
|
"reason": "Append owner-only console navigation entry into the authenticated profile menu outside the console surface.",
|
|
1425
1488
|
"category": "console-web",
|
|
1426
1489
|
"id": "console-web-profile-menu-console-placement"
|
|
@@ -1430,10 +1493,20 @@
|
|
|
1430
1493
|
"file": "src/placement.js",
|
|
1431
1494
|
"position": "bottom",
|
|
1432
1495
|
"skipIfContains": "id: \"console.web.menu.settings\"",
|
|
1433
|
-
"value": "\naddPlacement({\n id: \"console.web.menu.settings\",\n target: \"shell
|
|
1496
|
+
"value": "\naddPlacement({\n id: \"console.web.menu.settings\",\n target: \"shell.primary-nav\",\n kind: \"link\",\n surfaces: [\"console\"],\n order: 100,\n props: {\n label: \"Settings\",\n to: \"/console/settings\",\n icon: \"mdi-cog-outline\"\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n",
|
|
1434
1497
|
"reason": "Append console-web settings menu placement into app-owned placement registry.",
|
|
1435
1498
|
"category": "console-web",
|
|
1436
1499
|
"id": "console-web-console-settings-placement"
|
|
1500
|
+
},
|
|
1501
|
+
{
|
|
1502
|
+
"op": "append-text",
|
|
1503
|
+
"file": "src/placementTopology.js",
|
|
1504
|
+
"position": "bottom",
|
|
1505
|
+
"skipIfContains": "owner: \"console-settings\"",
|
|
1506
|
+
"value": "\naddPlacementTopology({\n id: \"page.section-nav\",\n owner: \"console-settings\",\n description: \"Navigation between console settings child pages.\",\n surfaces: [\"console\"],\n variants: {\n compact: {\n outlet: \"console-settings:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n medium: {\n outlet: \"console-settings:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n expanded: {\n outlet: \"console-settings:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n }\n }\n});\n",
|
|
1507
|
+
"reason": "Append console settings semantic topology into app-owned placement topology.",
|
|
1508
|
+
"category": "console-web",
|
|
1509
|
+
"id": "console-web-settings-placement-topology"
|
|
1437
1510
|
}
|
|
1438
1511
|
]
|
|
1439
1512
|
}
|
|
@@ -1441,11 +1514,11 @@
|
|
|
1441
1514
|
},
|
|
1442
1515
|
{
|
|
1443
1516
|
"packageId": "@jskit-ai/crud-core",
|
|
1444
|
-
"version": "0.1.
|
|
1517
|
+
"version": "0.1.74",
|
|
1445
1518
|
"descriptor": {
|
|
1446
1519
|
"packageVersion": 1,
|
|
1447
1520
|
"packageId": "@jskit-ai/crud-core",
|
|
1448
|
-
"version": "0.1.
|
|
1521
|
+
"version": "0.1.74",
|
|
1449
1522
|
"kind": "runtime",
|
|
1450
1523
|
"description": "Shared CRUD helpers used by CRUD modules.",
|
|
1451
1524
|
"dependsOn": [
|
|
@@ -1474,7 +1547,7 @@
|
|
|
1474
1547
|
"mutations": {
|
|
1475
1548
|
"dependencies": {
|
|
1476
1549
|
"runtime": {
|
|
1477
|
-
"@jskit-ai/crud-core": "0.1.
|
|
1550
|
+
"@jskit-ai/crud-core": "0.1.74"
|
|
1478
1551
|
},
|
|
1479
1552
|
"dev": {}
|
|
1480
1553
|
},
|
|
@@ -1488,11 +1561,11 @@
|
|
|
1488
1561
|
},
|
|
1489
1562
|
{
|
|
1490
1563
|
"packageId": "@jskit-ai/crud-server-generator",
|
|
1491
|
-
"version": "0.1.
|
|
1564
|
+
"version": "0.1.74",
|
|
1492
1565
|
"descriptor": {
|
|
1493
1566
|
"packageVersion": 1,
|
|
1494
1567
|
"packageId": "@jskit-ai/crud-server-generator",
|
|
1495
|
-
"version": "0.1.
|
|
1568
|
+
"version": "0.1.74",
|
|
1496
1569
|
"kind": "generator",
|
|
1497
1570
|
"description": "CRUD server generator with routes, actions, and persistence scaffolding.",
|
|
1498
1571
|
"options": {
|
|
@@ -1659,14 +1732,14 @@
|
|
|
1659
1732
|
"mutations": {
|
|
1660
1733
|
"dependencies": {
|
|
1661
1734
|
"runtime": {
|
|
1662
|
-
"@jskit-ai/auth-core": "0.1.
|
|
1663
|
-
"@jskit-ai/crud-core": "0.1.
|
|
1664
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
1665
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
1666
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
1667
|
-
"@jskit-ai/kernel": "0.1.
|
|
1668
|
-
"@jskit-ai/realtime": "0.1.
|
|
1669
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
1735
|
+
"@jskit-ai/auth-core": "0.1.65",
|
|
1736
|
+
"@jskit-ai/crud-core": "0.1.74",
|
|
1737
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
1738
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
1739
|
+
"@jskit-ai/json-rest-api-core": "0.1.11",
|
|
1740
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
1741
|
+
"@jskit-ai/realtime": "0.1.65",
|
|
1742
|
+
"@jskit-ai/resource-crud-core": "0.1.11",
|
|
1670
1743
|
"@local/${option:namespace|kebab}": "file:packages/${option:namespace|kebab}"
|
|
1671
1744
|
},
|
|
1672
1745
|
"dev": {}
|
|
@@ -1798,11 +1871,11 @@
|
|
|
1798
1871
|
},
|
|
1799
1872
|
{
|
|
1800
1873
|
"packageId": "@jskit-ai/crud-ui-generator",
|
|
1801
|
-
"version": "0.1.
|
|
1874
|
+
"version": "0.1.49",
|
|
1802
1875
|
"descriptor": {
|
|
1803
1876
|
"packageVersion": 1,
|
|
1804
1877
|
"packageId": "@jskit-ai/crud-ui-generator",
|
|
1805
|
-
"version": "0.1.
|
|
1878
|
+
"version": "0.1.49",
|
|
1806
1879
|
"kind": "generator",
|
|
1807
1880
|
"description": "Generate CRUD route trees from resource validators at an explicit route root relative to src/pages/.",
|
|
1808
1881
|
"options": {
|
|
@@ -1873,14 +1946,7 @@
|
|
|
1873
1946
|
"inputType": "text",
|
|
1874
1947
|
"defaultValue": "",
|
|
1875
1948
|
"promptLabel": "Link placement",
|
|
1876
|
-
"promptHint": "Optional target override for the generated list-page link placement (format:
|
|
1877
|
-
},
|
|
1878
|
-
"link-component-token": {
|
|
1879
|
-
"required": false,
|
|
1880
|
-
"inputType": "text",
|
|
1881
|
-
"defaultValue": "",
|
|
1882
|
-
"promptLabel": "Link component token",
|
|
1883
|
-
"promptHint": "Optional component token override for the generated list-page link placement (example: local.main.ui.tab-link-item)."
|
|
1949
|
+
"promptHint": "Optional semantic target override for the generated list-page link placement (format: area.slot)."
|
|
1884
1950
|
},
|
|
1885
1951
|
"namespace": {
|
|
1886
1952
|
"required": false,
|
|
@@ -1929,7 +1995,6 @@
|
|
|
1929
1995
|
"id-param",
|
|
1930
1996
|
"parent-title",
|
|
1931
1997
|
"link-placement",
|
|
1932
|
-
"link-component-token",
|
|
1933
1998
|
"namespace",
|
|
1934
1999
|
"force"
|
|
1935
2000
|
],
|
|
@@ -1992,7 +2057,7 @@
|
|
|
1992
2057
|
"mutations": {
|
|
1993
2058
|
"dependencies": {
|
|
1994
2059
|
"runtime": {
|
|
1995
|
-
"@jskit-ai/users-web": "0.1.
|
|
2060
|
+
"@jskit-ai/users-web": "0.1.81"
|
|
1996
2061
|
},
|
|
1997
2062
|
"dev": {}
|
|
1998
2063
|
},
|
|
@@ -2204,7 +2269,7 @@
|
|
|
2204
2269
|
"file": "src/placement.js",
|
|
2205
2270
|
"position": "bottom",
|
|
2206
2271
|
"skipIfContains": "__JSKIT_UI_MENU_MARKER__",
|
|
2207
|
-
"value": "\n// __JSKIT_UI_MENU_MARKER__\n{\n addPlacement({\n id: \"__JSKIT_UI_MENU_PLACEMENT_ID__\",\n target: \"__JSKIT_UI_MENU_PLACEMENT_TARGET__\",\n surfaces: [\"__JSKIT_UI_SURFACE_ID__\"],\n order: 155,\n
|
|
2272
|
+
"value": "\n// __JSKIT_UI_MENU_MARKER__\n{\n addPlacement({\n id: \"__JSKIT_UI_MENU_PLACEMENT_ID__\",\n target: \"__JSKIT_UI_MENU_PLACEMENT_TARGET__\",\n__JSKIT_UI_MENU_OWNER_LINE__ kind: \"link\",\n surfaces: [\"__JSKIT_UI_SURFACE_ID__\"],\n order: 155,\n props: {\n label: \"__JSKIT_UI_MENU_LABEL__\",\n icon: \"__JSKIT_UI_MENU_ICON__\",\n surface: \"__JSKIT_UI_SURFACE_ID__\",\n scopedSuffix: \"__JSKIT_UI_MENU_WORKSPACE_SUFFIX__\",\n unscopedSuffix: \"__JSKIT_UI_MENU_NON_WORKSPACE_SUFFIX__\",\n__JSKIT_UI_MENU_TO_PROP_LINE__ },\n__JSKIT_UI_MENU_WHEN_LINE__ });\n}\n",
|
|
2208
2273
|
"reason": "Append generated CRUD list-page placement.",
|
|
2209
2274
|
"category": "crud-ui-generator",
|
|
2210
2275
|
"id": "crud-ui-placement-menu",
|
|
@@ -2225,11 +2290,11 @@
|
|
|
2225
2290
|
},
|
|
2226
2291
|
{
|
|
2227
2292
|
"packageId": "@jskit-ai/database-runtime",
|
|
2228
|
-
"version": "0.1.
|
|
2293
|
+
"version": "0.1.66",
|
|
2229
2294
|
"descriptor": {
|
|
2230
2295
|
"packageVersion": 1,
|
|
2231
2296
|
"packageId": "@jskit-ai/database-runtime",
|
|
2232
|
-
"version": "0.1.
|
|
2297
|
+
"version": "0.1.66",
|
|
2233
2298
|
"kind": "runtime",
|
|
2234
2299
|
"dependsOn": [
|
|
2235
2300
|
"@jskit-ai/kernel"
|
|
@@ -2286,7 +2351,7 @@
|
|
|
2286
2351
|
"mutations": {
|
|
2287
2352
|
"dependencies": {
|
|
2288
2353
|
"runtime": {
|
|
2289
|
-
"@jskit-ai/kernel": "0.1.
|
|
2354
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
2290
2355
|
"dotenv": "^16.4.5",
|
|
2291
2356
|
"knex": "^3.1.0"
|
|
2292
2357
|
},
|
|
@@ -2321,11 +2386,11 @@
|
|
|
2321
2386
|
},
|
|
2322
2387
|
{
|
|
2323
2388
|
"packageId": "@jskit-ai/database-runtime-mysql",
|
|
2324
|
-
"version": "0.1.
|
|
2389
|
+
"version": "0.1.65",
|
|
2325
2390
|
"descriptor": {
|
|
2326
2391
|
"packageVersion": 1,
|
|
2327
2392
|
"packageId": "@jskit-ai/database-runtime-mysql",
|
|
2328
|
-
"version": "0.1.
|
|
2393
|
+
"version": "0.1.65",
|
|
2329
2394
|
"kind": "runtime",
|
|
2330
2395
|
"options": {
|
|
2331
2396
|
"db-host": {
|
|
@@ -2415,7 +2480,7 @@
|
|
|
2415
2480
|
"mutations": {
|
|
2416
2481
|
"dependencies": {
|
|
2417
2482
|
"runtime": {
|
|
2418
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
2483
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
2419
2484
|
"mysql2": "^3.11.2"
|
|
2420
2485
|
},
|
|
2421
2486
|
"dev": {}
|
|
@@ -2486,11 +2551,11 @@
|
|
|
2486
2551
|
},
|
|
2487
2552
|
{
|
|
2488
2553
|
"packageId": "@jskit-ai/database-runtime-postgres",
|
|
2489
|
-
"version": "0.1.
|
|
2554
|
+
"version": "0.1.65",
|
|
2490
2555
|
"descriptor": {
|
|
2491
2556
|
"packageVersion": 1,
|
|
2492
2557
|
"packageId": "@jskit-ai/database-runtime-postgres",
|
|
2493
|
-
"version": "0.1.
|
|
2558
|
+
"version": "0.1.65",
|
|
2494
2559
|
"kind": "runtime",
|
|
2495
2560
|
"options": {
|
|
2496
2561
|
"db-host": {
|
|
@@ -2580,7 +2645,7 @@
|
|
|
2580
2645
|
"mutations": {
|
|
2581
2646
|
"dependencies": {
|
|
2582
2647
|
"runtime": {
|
|
2583
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
2648
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
2584
2649
|
"pg": "^8.13.1"
|
|
2585
2650
|
},
|
|
2586
2651
|
"dev": {}
|
|
@@ -2651,11 +2716,11 @@
|
|
|
2651
2716
|
},
|
|
2652
2717
|
{
|
|
2653
2718
|
"packageId": "@jskit-ai/feature-server-generator",
|
|
2654
|
-
"version": "0.1.
|
|
2719
|
+
"version": "0.1.8",
|
|
2655
2720
|
"descriptor": {
|
|
2656
2721
|
"packageVersion": 1,
|
|
2657
2722
|
"packageId": "@jskit-ai/feature-server-generator",
|
|
2658
|
-
"version": "0.1.
|
|
2723
|
+
"version": "0.1.8",
|
|
2659
2724
|
"kind": "generator",
|
|
2660
2725
|
"description": "Scaffold substantial non-CRUD server feature packages with provider, actions, service, and optional persistence seams.",
|
|
2661
2726
|
"options": {
|
|
@@ -2819,10 +2884,10 @@
|
|
|
2819
2884
|
"mutations": {
|
|
2820
2885
|
"dependencies": {
|
|
2821
2886
|
"runtime": {
|
|
2822
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
2823
|
-
"@jskit-ai/database-runtime-mysql": "0.1.
|
|
2824
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
2825
|
-
"@jskit-ai/kernel": "0.1.
|
|
2887
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
2888
|
+
"@jskit-ai/database-runtime-mysql": "0.1.65",
|
|
2889
|
+
"@jskit-ai/json-rest-api-core": "0.1.11",
|
|
2890
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
2826
2891
|
"json-rest-schema": "1.x.x",
|
|
2827
2892
|
"@local/${option:feature-name|kebab}": "file:packages/${option:feature-name|kebab}"
|
|
2828
2893
|
},
|
|
@@ -2935,11 +3000,11 @@
|
|
|
2935
3000
|
},
|
|
2936
3001
|
{
|
|
2937
3002
|
"packageId": "@jskit-ai/google-rewarded-core",
|
|
2938
|
-
"version": "0.1.
|
|
3003
|
+
"version": "0.1.3",
|
|
2939
3004
|
"descriptor": {
|
|
2940
3005
|
"packageVersion": 1,
|
|
2941
3006
|
"packageId": "@jskit-ai/google-rewarded-core",
|
|
2942
|
-
"version": "0.1.
|
|
3007
|
+
"version": "0.1.3",
|
|
2943
3008
|
"kind": "runtime",
|
|
2944
3009
|
"description": "Google rewarded workflow runtime plus internal CRUD providers for rules, provider configs, watch sessions, and unlock receipts.",
|
|
2945
3010
|
"dependsOn": [
|
|
@@ -3066,14 +3131,14 @@
|
|
|
3066
3131
|
"mutations": {
|
|
3067
3132
|
"dependencies": {
|
|
3068
3133
|
"runtime": {
|
|
3069
|
-
"@jskit-ai/auth-core": "0.1.
|
|
3070
|
-
"@jskit-ai/crud-core": "0.1.
|
|
3071
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
3072
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
3073
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
3074
|
-
"@jskit-ai/kernel": "0.1.
|
|
3075
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
3076
|
-
"@jskit-ai/workspaces-core": "0.1.
|
|
3134
|
+
"@jskit-ai/auth-core": "0.1.65",
|
|
3135
|
+
"@jskit-ai/crud-core": "0.1.74",
|
|
3136
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
3137
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
3138
|
+
"@jskit-ai/json-rest-api-core": "0.1.11",
|
|
3139
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
3140
|
+
"@jskit-ai/resource-crud-core": "0.1.11",
|
|
3141
|
+
"@jskit-ai/workspaces-core": "0.1.42"
|
|
3077
3142
|
},
|
|
3078
3143
|
"dev": {}
|
|
3079
3144
|
},
|
|
@@ -3125,11 +3190,11 @@
|
|
|
3125
3190
|
},
|
|
3126
3191
|
{
|
|
3127
3192
|
"packageId": "@jskit-ai/google-rewarded-web",
|
|
3128
|
-
"version": "0.1.
|
|
3193
|
+
"version": "0.1.3",
|
|
3129
3194
|
"descriptor": {
|
|
3130
3195
|
"packageVersion": 1,
|
|
3131
3196
|
"packageId": "@jskit-ai/google-rewarded-web",
|
|
3132
|
-
"version": "0.1.
|
|
3197
|
+
"version": "0.1.3",
|
|
3133
3198
|
"kind": "runtime",
|
|
3134
3199
|
"description": "Google rewarded client runtime with a fullscreen gate host and GPT orchestration.",
|
|
3135
3200
|
"dependsOn": [
|
|
@@ -3176,10 +3241,10 @@
|
|
|
3176
3241
|
"mutations": {
|
|
3177
3242
|
"dependencies": {
|
|
3178
3243
|
"runtime": {
|
|
3179
|
-
"@jskit-ai/google-rewarded-core": "0.1.
|
|
3180
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
3181
|
-
"@jskit-ai/kernel": "0.1.
|
|
3182
|
-
"@jskit-ai/shell-web": "0.1.
|
|
3244
|
+
"@jskit-ai/google-rewarded-core": "0.1.3",
|
|
3245
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
3246
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
3247
|
+
"@jskit-ai/shell-web": "0.1.65"
|
|
3183
3248
|
},
|
|
3184
3249
|
"dev": {}
|
|
3185
3250
|
},
|
|
@@ -3197,11 +3262,11 @@
|
|
|
3197
3262
|
},
|
|
3198
3263
|
{
|
|
3199
3264
|
"packageId": "@jskit-ai/http-runtime",
|
|
3200
|
-
"version": "0.1.
|
|
3265
|
+
"version": "0.1.65",
|
|
3201
3266
|
"descriptor": {
|
|
3202
3267
|
"packageVersion": 1,
|
|
3203
3268
|
"packageId": "@jskit-ai/http-runtime",
|
|
3204
|
-
"version": "0.1.
|
|
3269
|
+
"version": "0.1.65",
|
|
3205
3270
|
"kind": "runtime",
|
|
3206
3271
|
"dependsOn": [],
|
|
3207
3272
|
"capabilities": {
|
|
@@ -3267,7 +3332,7 @@
|
|
|
3267
3332
|
"mutations": {
|
|
3268
3333
|
"dependencies": {
|
|
3269
3334
|
"runtime": {
|
|
3270
|
-
"@jskit-ai/kernel": "0.1.
|
|
3335
|
+
"@jskit-ai/kernel": "0.1.66"
|
|
3271
3336
|
},
|
|
3272
3337
|
"dev": {}
|
|
3273
3338
|
},
|
|
@@ -3281,11 +3346,11 @@
|
|
|
3281
3346
|
},
|
|
3282
3347
|
{
|
|
3283
3348
|
"packageId": "@jskit-ai/json-rest-api-core",
|
|
3284
|
-
"version": "0.1.
|
|
3349
|
+
"version": "0.1.11",
|
|
3285
3350
|
"descriptor": {
|
|
3286
3351
|
"packageVersion": 1,
|
|
3287
3352
|
"packageId": "@jskit-ai/json-rest-api-core",
|
|
3288
|
-
"version": "0.1.
|
|
3353
|
+
"version": "0.1.11",
|
|
3289
3354
|
"kind": "runtime",
|
|
3290
3355
|
"description": "Shared internal json-rest-api host runtime for JSKIT server packages.",
|
|
3291
3356
|
"dependsOn": [
|
|
@@ -3345,11 +3410,11 @@
|
|
|
3345
3410
|
},
|
|
3346
3411
|
{
|
|
3347
3412
|
"packageId": "@jskit-ai/mobile-capacitor",
|
|
3348
|
-
"version": "0.1.
|
|
3413
|
+
"version": "0.1.3",
|
|
3349
3414
|
"descriptor": {
|
|
3350
3415
|
"packageVersion": 1,
|
|
3351
3416
|
"packageId": "@jskit-ai/mobile-capacitor",
|
|
3352
|
-
"version": "0.1.
|
|
3417
|
+
"version": "0.1.3",
|
|
3353
3418
|
"kind": "runtime",
|
|
3354
3419
|
"description": "Thin Capacitor client integration for JSKIT mobile-shell launch routing and auth callback completion.",
|
|
3355
3420
|
"dependsOn": [
|
|
@@ -3412,8 +3477,8 @@
|
|
|
3412
3477
|
"@capacitor/app": "^7.1.0",
|
|
3413
3478
|
"@capacitor/browser": "^7.0.1",
|
|
3414
3479
|
"@capacitor/core": "^7.4.3",
|
|
3415
|
-
"@jskit-ai/kernel": "0.1.
|
|
3416
|
-
"@jskit-ai/shell-web": "0.1.
|
|
3480
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
3481
|
+
"@jskit-ai/shell-web": "0.1.65"
|
|
3417
3482
|
},
|
|
3418
3483
|
"dev": {
|
|
3419
3484
|
"@capacitor/cli": "^7.4.3"
|
|
@@ -3421,14 +3486,14 @@
|
|
|
3421
3486
|
},
|
|
3422
3487
|
"packageJson": {
|
|
3423
3488
|
"scripts": {
|
|
3424
|
-
"mobile:dev:android": "jskit mobile dev
|
|
3425
|
-
"mobile:devices:android": "jskit mobile devices
|
|
3426
|
-
"mobile:sync:android": "jskit mobile sync
|
|
3427
|
-
"mobile:tunnel:android": "jskit mobile tunnel
|
|
3428
|
-
"mobile:restart:android": "jskit mobile restart
|
|
3429
|
-
"mobile:run:android": "jskit mobile run
|
|
3489
|
+
"mobile:dev:android": "jskit mobile android dev",
|
|
3490
|
+
"mobile:devices:android": "jskit mobile android devices",
|
|
3491
|
+
"mobile:sync:android": "jskit mobile android sync",
|
|
3492
|
+
"mobile:tunnel:android": "jskit mobile android tunnel",
|
|
3493
|
+
"mobile:restart:android": "jskit mobile android restart",
|
|
3494
|
+
"mobile:run:android": "jskit mobile android run",
|
|
3430
3495
|
"mobile:build:web": "npm run build",
|
|
3431
|
-
"mobile:build:android": "jskit mobile build
|
|
3496
|
+
"mobile:build:android": "jskit mobile android build"
|
|
3432
3497
|
}
|
|
3433
3498
|
},
|
|
3434
3499
|
"procfile": {},
|
|
@@ -3465,11 +3530,11 @@
|
|
|
3465
3530
|
},
|
|
3466
3531
|
{
|
|
3467
3532
|
"packageId": "@jskit-ai/realtime",
|
|
3468
|
-
"version": "0.1.
|
|
3533
|
+
"version": "0.1.65",
|
|
3469
3534
|
"descriptor": {
|
|
3470
3535
|
"packageVersion": 1,
|
|
3471
3536
|
"packageId": "@jskit-ai/realtime",
|
|
3472
|
-
"version": "0.1.
|
|
3537
|
+
"version": "0.1.65",
|
|
3473
3538
|
"kind": "runtime",
|
|
3474
3539
|
"description": "Thin, generic realtime runtime wrappers for socket.io server and client.",
|
|
3475
3540
|
"options": {
|
|
@@ -3549,7 +3614,8 @@
|
|
|
3549
3614
|
"contributions": [
|
|
3550
3615
|
{
|
|
3551
3616
|
"id": "realtime.connection.indicator",
|
|
3552
|
-
"target": "shell
|
|
3617
|
+
"target": "shell.status",
|
|
3618
|
+
"kind": "component",
|
|
3553
3619
|
"surfaces": [
|
|
3554
3620
|
"*"
|
|
3555
3621
|
],
|
|
@@ -3564,7 +3630,7 @@
|
|
|
3564
3630
|
"mutations": {
|
|
3565
3631
|
"dependencies": {
|
|
3566
3632
|
"runtime": {
|
|
3567
|
-
"@jskit-ai/kernel": "0.1.
|
|
3633
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
3568
3634
|
"@socket.io/redis-adapter": "^8.3.0",
|
|
3569
3635
|
"redis": "^5.8.2",
|
|
3570
3636
|
"socket.io": "^4.8.3",
|
|
@@ -3602,7 +3668,7 @@
|
|
|
3602
3668
|
"file": "src/placement.js",
|
|
3603
3669
|
"position": "bottom",
|
|
3604
3670
|
"skipIfContains": "id: \"realtime.connection.indicator\"",
|
|
3605
|
-
"value": "\naddPlacement({\n id: \"realtime.connection.indicator\",\n target: \"shell
|
|
3671
|
+
"value": "\naddPlacement({\n id: \"realtime.connection.indicator\",\n target: \"shell.status\",\n kind: \"component\",\n surfaces: [\"*\"],\n order: 950,\n componentToken: \"realtime.web.connection.indicator\"\n});\n",
|
|
3606
3672
|
"reason": "Append realtime connection indicator placement into app-owned placement registry.",
|
|
3607
3673
|
"category": "realtime-web",
|
|
3608
3674
|
"id": "realtime-placement-indicator"
|
|
@@ -3613,11 +3679,11 @@
|
|
|
3613
3679
|
},
|
|
3614
3680
|
{
|
|
3615
3681
|
"packageId": "@jskit-ai/resource-core",
|
|
3616
|
-
"version": "0.1.
|
|
3682
|
+
"version": "0.1.11",
|
|
3617
3683
|
"descriptor": {
|
|
3618
3684
|
"packageVersion": 1,
|
|
3619
3685
|
"packageId": "@jskit-ai/resource-core",
|
|
3620
|
-
"version": "0.1.
|
|
3686
|
+
"version": "0.1.11",
|
|
3621
3687
|
"kind": "runtime",
|
|
3622
3688
|
"description": "Generic resource-definition helpers and schema-definition normalization.",
|
|
3623
3689
|
"dependsOn": [
|
|
@@ -3640,7 +3706,7 @@
|
|
|
3640
3706
|
"mutations": {
|
|
3641
3707
|
"dependencies": {
|
|
3642
3708
|
"runtime": {
|
|
3643
|
-
"@jskit-ai/resource-core": "0.1.
|
|
3709
|
+
"@jskit-ai/resource-core": "0.1.11"
|
|
3644
3710
|
},
|
|
3645
3711
|
"dev": {}
|
|
3646
3712
|
},
|
|
@@ -3655,11 +3721,11 @@
|
|
|
3655
3721
|
},
|
|
3656
3722
|
{
|
|
3657
3723
|
"packageId": "@jskit-ai/resource-crud-core",
|
|
3658
|
-
"version": "0.1.
|
|
3724
|
+
"version": "0.1.11",
|
|
3659
3725
|
"descriptor": {
|
|
3660
3726
|
"packageVersion": 1,
|
|
3661
3727
|
"packageId": "@jskit-ai/resource-crud-core",
|
|
3662
|
-
"version": "0.1.
|
|
3728
|
+
"version": "0.1.11",
|
|
3663
3729
|
"kind": "runtime",
|
|
3664
3730
|
"description": "CRUD-specific resource-definition helpers and namespace support.",
|
|
3665
3731
|
"dependsOn": [
|
|
@@ -3683,7 +3749,7 @@
|
|
|
3683
3749
|
"mutations": {
|
|
3684
3750
|
"dependencies": {
|
|
3685
3751
|
"runtime": {
|
|
3686
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
3752
|
+
"@jskit-ai/resource-crud-core": "0.1.11"
|
|
3687
3753
|
},
|
|
3688
3754
|
"dev": {}
|
|
3689
3755
|
},
|
|
@@ -3698,11 +3764,11 @@
|
|
|
3698
3764
|
},
|
|
3699
3765
|
{
|
|
3700
3766
|
"packageId": "@jskit-ai/shell-web",
|
|
3701
|
-
"version": "0.1.
|
|
3767
|
+
"version": "0.1.65",
|
|
3702
3768
|
"descriptor": {
|
|
3703
3769
|
"packageVersion": 1,
|
|
3704
3770
|
"packageId": "@jskit-ai/shell-web",
|
|
3705
|
-
"version": "0.1.
|
|
3771
|
+
"version": "0.1.65",
|
|
3706
3772
|
"kind": "runtime",
|
|
3707
3773
|
"description": "Web shell layout runtime with outlet-based placement contributions.",
|
|
3708
3774
|
"dependsOn": [],
|
|
@@ -3776,7 +3842,6 @@
|
|
|
3776
3842
|
},
|
|
3777
3843
|
{
|
|
3778
3844
|
"target": "shell-layout:primary-menu",
|
|
3779
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
3780
3845
|
"surfaces": [
|
|
3781
3846
|
"*"
|
|
3782
3847
|
],
|
|
@@ -3784,7 +3849,6 @@
|
|
|
3784
3849
|
},
|
|
3785
3850
|
{
|
|
3786
3851
|
"target": "shell-layout:secondary-menu",
|
|
3787
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
3788
3852
|
"surfaces": [
|
|
3789
3853
|
"*"
|
|
3790
3854
|
],
|
|
@@ -3792,42 +3856,165 @@
|
|
|
3792
3856
|
},
|
|
3793
3857
|
{
|
|
3794
3858
|
"target": "home-settings:primary-menu",
|
|
3795
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
3796
3859
|
"surfaces": [
|
|
3797
3860
|
"home"
|
|
3798
3861
|
],
|
|
3799
3862
|
"source": "templates/src/pages/home/settings.vue"
|
|
3800
3863
|
}
|
|
3801
3864
|
],
|
|
3865
|
+
"topology": {
|
|
3866
|
+
"placements": [
|
|
3867
|
+
{
|
|
3868
|
+
"id": "shell.primary-nav",
|
|
3869
|
+
"description": "Primary top-level navigation for the current surface.",
|
|
3870
|
+
"surfaces": [
|
|
3871
|
+
"*"
|
|
3872
|
+
],
|
|
3873
|
+
"default": true,
|
|
3874
|
+
"variants": {
|
|
3875
|
+
"compact": {
|
|
3876
|
+
"outlet": "shell-layout:primary-menu",
|
|
3877
|
+
"renderers": {
|
|
3878
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3879
|
+
}
|
|
3880
|
+
},
|
|
3881
|
+
"medium": {
|
|
3882
|
+
"outlet": "shell-layout:primary-menu",
|
|
3883
|
+
"renderers": {
|
|
3884
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3885
|
+
}
|
|
3886
|
+
},
|
|
3887
|
+
"expanded": {
|
|
3888
|
+
"outlet": "shell-layout:primary-menu",
|
|
3889
|
+
"renderers": {
|
|
3890
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3891
|
+
}
|
|
3892
|
+
}
|
|
3893
|
+
}
|
|
3894
|
+
},
|
|
3895
|
+
{
|
|
3896
|
+
"id": "shell.status",
|
|
3897
|
+
"description": "Surface status, connection, and utility indicators.",
|
|
3898
|
+
"surfaces": [
|
|
3899
|
+
"*"
|
|
3900
|
+
],
|
|
3901
|
+
"variants": {
|
|
3902
|
+
"compact": {
|
|
3903
|
+
"outlet": "shell-layout:top-right"
|
|
3904
|
+
},
|
|
3905
|
+
"medium": {
|
|
3906
|
+
"outlet": "shell-layout:top-right"
|
|
3907
|
+
},
|
|
3908
|
+
"expanded": {
|
|
3909
|
+
"outlet": "shell-layout:top-right"
|
|
3910
|
+
}
|
|
3911
|
+
}
|
|
3912
|
+
},
|
|
3913
|
+
{
|
|
3914
|
+
"id": "shell.secondary-nav",
|
|
3915
|
+
"description": "Secondary navigation for lower-priority shell links.",
|
|
3916
|
+
"surfaces": [
|
|
3917
|
+
"*"
|
|
3918
|
+
],
|
|
3919
|
+
"variants": {
|
|
3920
|
+
"compact": {
|
|
3921
|
+
"outlet": "shell-layout:secondary-menu",
|
|
3922
|
+
"renderers": {
|
|
3923
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3924
|
+
}
|
|
3925
|
+
},
|
|
3926
|
+
"medium": {
|
|
3927
|
+
"outlet": "shell-layout:secondary-menu",
|
|
3928
|
+
"renderers": {
|
|
3929
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3930
|
+
}
|
|
3931
|
+
},
|
|
3932
|
+
"expanded": {
|
|
3933
|
+
"outlet": "shell-layout:secondary-menu",
|
|
3934
|
+
"renderers": {
|
|
3935
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3936
|
+
}
|
|
3937
|
+
}
|
|
3938
|
+
}
|
|
3939
|
+
},
|
|
3940
|
+
{
|
|
3941
|
+
"id": "shell.identity",
|
|
3942
|
+
"description": "Current user, workspace, and surface identity controls.",
|
|
3943
|
+
"surfaces": [
|
|
3944
|
+
"*"
|
|
3945
|
+
],
|
|
3946
|
+
"variants": {
|
|
3947
|
+
"compact": {
|
|
3948
|
+
"outlet": "shell-layout:top-left"
|
|
3949
|
+
},
|
|
3950
|
+
"medium": {
|
|
3951
|
+
"outlet": "shell-layout:top-left"
|
|
3952
|
+
},
|
|
3953
|
+
"expanded": {
|
|
3954
|
+
"outlet": "shell-layout:top-left"
|
|
3955
|
+
}
|
|
3956
|
+
}
|
|
3957
|
+
},
|
|
3958
|
+
{
|
|
3959
|
+
"id": "page.section-nav",
|
|
3960
|
+
"owner": "home-settings",
|
|
3961
|
+
"description": "Navigation between child pages in the home settings section.",
|
|
3962
|
+
"surfaces": [
|
|
3963
|
+
"home"
|
|
3964
|
+
],
|
|
3965
|
+
"variants": {
|
|
3966
|
+
"compact": {
|
|
3967
|
+
"outlet": "home-settings:primary-menu",
|
|
3968
|
+
"renderers": {
|
|
3969
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3970
|
+
}
|
|
3971
|
+
},
|
|
3972
|
+
"medium": {
|
|
3973
|
+
"outlet": "home-settings:primary-menu",
|
|
3974
|
+
"renderers": {
|
|
3975
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3976
|
+
}
|
|
3977
|
+
},
|
|
3978
|
+
"expanded": {
|
|
3979
|
+
"outlet": "home-settings:primary-menu",
|
|
3980
|
+
"renderers": {
|
|
3981
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
3982
|
+
}
|
|
3983
|
+
}
|
|
3984
|
+
}
|
|
3985
|
+
}
|
|
3986
|
+
]
|
|
3987
|
+
},
|
|
3802
3988
|
"contributions": [
|
|
3803
3989
|
{
|
|
3804
3990
|
"id": "shell-web.home.menu.home",
|
|
3805
|
-
"target": "shell
|
|
3991
|
+
"target": "shell.primary-nav",
|
|
3992
|
+
"kind": "link",
|
|
3806
3993
|
"surfaces": [
|
|
3807
3994
|
"home"
|
|
3808
3995
|
],
|
|
3809
3996
|
"order": 50,
|
|
3810
|
-
"componentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
3811
3997
|
"source": "templates/src/placement.js"
|
|
3812
3998
|
},
|
|
3813
3999
|
{
|
|
3814
4000
|
"id": "shell-web.home.menu.settings",
|
|
3815
|
-
"target": "shell
|
|
4001
|
+
"target": "shell.primary-nav",
|
|
4002
|
+
"kind": "link",
|
|
3816
4003
|
"surfaces": [
|
|
3817
4004
|
"home"
|
|
3818
4005
|
],
|
|
3819
4006
|
"order": 100,
|
|
3820
|
-
"componentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
3821
4007
|
"source": "templates/src/placement.js"
|
|
3822
4008
|
},
|
|
3823
4009
|
{
|
|
3824
4010
|
"id": "shell-web.home.settings.general",
|
|
3825
|
-
"target": "
|
|
4011
|
+
"target": "page.section-nav",
|
|
4012
|
+
"owner": "home-settings",
|
|
4013
|
+
"kind": "link",
|
|
3826
4014
|
"surfaces": [
|
|
3827
4015
|
"home"
|
|
3828
4016
|
],
|
|
3829
4017
|
"order": 100,
|
|
3830
|
-
"componentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
3831
4018
|
"source": "templates/src/placement.js"
|
|
3832
4019
|
}
|
|
3833
4020
|
]
|
|
@@ -3839,7 +4026,7 @@
|
|
|
3839
4026
|
"runtime": {
|
|
3840
4027
|
"@mdi/js": "^7.4.47",
|
|
3841
4028
|
"@tanstack/vue-query": "^5.90.5",
|
|
3842
|
-
"@jskit-ai/kernel": "0.1.
|
|
4029
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
3843
4030
|
"vuetify": "^4.0.0"
|
|
3844
4031
|
},
|
|
3845
4032
|
"dev": {}
|
|
@@ -3971,6 +4158,14 @@
|
|
|
3971
4158
|
"category": "shell-web",
|
|
3972
4159
|
"id": "shell-web-placement-registry"
|
|
3973
4160
|
},
|
|
4161
|
+
{
|
|
4162
|
+
"from": "templates/src/placementTopology.js",
|
|
4163
|
+
"to": "src/placementTopology.js",
|
|
4164
|
+
"ownership": "app",
|
|
4165
|
+
"reason": "Install app-owned semantic placement topology used by shell-web placement runtime.",
|
|
4166
|
+
"category": "shell-web",
|
|
4167
|
+
"id": "shell-web-placement-topology"
|
|
4168
|
+
},
|
|
3974
4169
|
{
|
|
3975
4170
|
"from": "templates/src/pages/home.vue",
|
|
3976
4171
|
"toSurface": "home",
|
|
@@ -4024,11 +4219,11 @@
|
|
|
4024
4219
|
},
|
|
4025
4220
|
{
|
|
4026
4221
|
"packageId": "@jskit-ai/storage-runtime",
|
|
4027
|
-
"version": "0.1.
|
|
4222
|
+
"version": "0.1.65",
|
|
4028
4223
|
"descriptor": {
|
|
4029
4224
|
"packageVersion": 1,
|
|
4030
4225
|
"packageId": "@jskit-ai/storage-runtime",
|
|
4031
|
-
"version": "0.1.
|
|
4226
|
+
"version": "0.1.65",
|
|
4032
4227
|
"kind": "runtime",
|
|
4033
4228
|
"dependsOn": [
|
|
4034
4229
|
"@jskit-ai/kernel"
|
|
@@ -4077,7 +4272,7 @@
|
|
|
4077
4272
|
"mutations": {
|
|
4078
4273
|
"dependencies": {
|
|
4079
4274
|
"runtime": {
|
|
4080
|
-
"@jskit-ai/kernel": "0.1.
|
|
4275
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
4081
4276
|
"unstorage": "^1.17.3"
|
|
4082
4277
|
},
|
|
4083
4278
|
"dev": {}
|
|
@@ -4093,11 +4288,11 @@
|
|
|
4093
4288
|
},
|
|
4094
4289
|
{
|
|
4095
4290
|
"packageId": "@jskit-ai/ui-generator",
|
|
4096
|
-
"version": "0.1.
|
|
4291
|
+
"version": "0.1.49",
|
|
4097
4292
|
"descriptor": {
|
|
4098
4293
|
"packageVersion": 1,
|
|
4099
4294
|
"packageId": "@jskit-ai/ui-generator",
|
|
4100
|
-
"version": "0.1.
|
|
4295
|
+
"version": "0.1.49",
|
|
4101
4296
|
"kind": "generator",
|
|
4102
4297
|
"description": "Create non-CRUD pages, reusable UI elements, and subpage hosts.",
|
|
4103
4298
|
"options": {
|
|
@@ -4135,21 +4330,35 @@
|
|
|
4135
4330
|
"inputType": "text",
|
|
4136
4331
|
"defaultValue": "",
|
|
4137
4332
|
"promptLabel": "Placement target",
|
|
4138
|
-
"promptHint": "
|
|
4333
|
+
"promptHint": "Semantic placement target for placed-element and outlet mapping (format: area.slot, default for placed-element: shell.status)."
|
|
4139
4334
|
},
|
|
4140
|
-
"
|
|
4335
|
+
"owner": {
|
|
4141
4336
|
"required": false,
|
|
4142
4337
|
"inputType": "text",
|
|
4143
4338
|
"defaultValue": "",
|
|
4144
|
-
"promptLabel": "
|
|
4145
|
-
"promptHint": "Optional
|
|
4339
|
+
"promptLabel": "Placement owner",
|
|
4340
|
+
"promptHint": "Optional owner id for semantic topology mappings. Page/settings placements default to the outlet host."
|
|
4146
4341
|
},
|
|
4147
|
-
"
|
|
4342
|
+
"description": {
|
|
4148
4343
|
"required": false,
|
|
4149
4344
|
"inputType": "text",
|
|
4150
4345
|
"defaultValue": "",
|
|
4151
|
-
"promptLabel": "
|
|
4152
|
-
"promptHint": "Optional
|
|
4346
|
+
"promptLabel": "Description",
|
|
4347
|
+
"promptHint": "Optional description for generated semantic topology mappings."
|
|
4348
|
+
},
|
|
4349
|
+
"link-renderer": {
|
|
4350
|
+
"required": false,
|
|
4351
|
+
"inputType": "text",
|
|
4352
|
+
"defaultValue": "local.main.ui.surface-aware-menu-link-item",
|
|
4353
|
+
"promptLabel": "Link renderer",
|
|
4354
|
+
"promptHint": "Default link renderer token for generated topology variants."
|
|
4355
|
+
},
|
|
4356
|
+
"link-placement": {
|
|
4357
|
+
"required": false,
|
|
4358
|
+
"inputType": "text",
|
|
4359
|
+
"defaultValue": "",
|
|
4360
|
+
"promptLabel": "Link placement",
|
|
4361
|
+
"promptHint": "Optional semantic target for the generated page link placement (format: area.slot)."
|
|
4153
4362
|
},
|
|
4154
4363
|
"link-to": {
|
|
4155
4364
|
"required": false,
|
|
@@ -4218,12 +4427,11 @@
|
|
|
4218
4427
|
"optionNames": [
|
|
4219
4428
|
"name",
|
|
4220
4429
|
"link-placement",
|
|
4221
|
-
"link-component-token",
|
|
4222
4430
|
"link-to",
|
|
4223
4431
|
"force"
|
|
4224
4432
|
],
|
|
4225
4433
|
"notes": [
|
|
4226
|
-
"If a nearest parent subpages target is found, placement
|
|
4434
|
+
"If a nearest parent subpages target is found, semantic placement and props.to are inferred automatically.",
|
|
4227
4435
|
"If the parent target page is index.vue, child pages belong under index/...",
|
|
4228
4436
|
"If the target page file already exists, rerun with --force to overwrite it."
|
|
4229
4437
|
],
|
|
@@ -4257,13 +4465,14 @@
|
|
|
4257
4465
|
"surface",
|
|
4258
4466
|
"path",
|
|
4259
4467
|
"placement",
|
|
4468
|
+
"owner",
|
|
4260
4469
|
"force"
|
|
4261
4470
|
],
|
|
4262
4471
|
"requiredOptionNames": [
|
|
4263
4472
|
"name"
|
|
4264
4473
|
],
|
|
4265
4474
|
"notes": [
|
|
4266
|
-
"If --placement is omitted, the placed element is added at shell
|
|
4475
|
+
"If --placement is omitted, the placed element is added at shell.status.",
|
|
4267
4476
|
"If the placement target belongs to a page-owned outlet, JSKIT infers the surface automatically.",
|
|
4268
4477
|
"If the target is shared and the app has multiple enabled surfaces, pass --surface explicitly.",
|
|
4269
4478
|
"If the component file already exists, rerun with --force to overwrite it."
|
|
@@ -4283,7 +4492,7 @@
|
|
|
4283
4492
|
" --name \"Ops Panel\" \\",
|
|
4284
4493
|
" --surface admin \\",
|
|
4285
4494
|
" --path src/widgets \\",
|
|
4286
|
-
" --placement shell
|
|
4495
|
+
" --placement shell.status \\",
|
|
4287
4496
|
" --force"
|
|
4288
4497
|
]
|
|
4289
4498
|
}
|
|
@@ -4340,9 +4549,9 @@
|
|
|
4340
4549
|
"export": "runGeneratorSubcommand",
|
|
4341
4550
|
"description": "Inject a generic ShellOutlet block into an existing Vue page/component.",
|
|
4342
4551
|
"longDescription": [
|
|
4343
|
-
"A ShellOutlet creates a
|
|
4344
|
-
"
|
|
4345
|
-
"
|
|
4552
|
+
"A ShellOutlet creates a concrete placement recipient inside a Vue file.",
|
|
4553
|
+
"The command also appends the semantic topology mapping for that outlet, so `jskit list-placements` exposes the public `area.slot` placement instead of leaving the concrete recipient unused.",
|
|
4554
|
+
"Generated topology includes compact, medium, and expanded variants. By default all three point at the inserted outlet; hand-edit `src/placementTopology.js` if the adaptive layout uses different concrete outlets."
|
|
4346
4555
|
],
|
|
4347
4556
|
"positionalArgs": [
|
|
4348
4557
|
{
|
|
@@ -4352,13 +4561,20 @@
|
|
|
4352
4561
|
}
|
|
4353
4562
|
],
|
|
4354
4563
|
"optionNames": [
|
|
4355
|
-
"target"
|
|
4564
|
+
"target",
|
|
4565
|
+
"placement",
|
|
4566
|
+
"owner",
|
|
4567
|
+
"surface",
|
|
4568
|
+
"description",
|
|
4569
|
+
"link-renderer"
|
|
4356
4570
|
],
|
|
4357
4571
|
"requiredOptionNames": [
|
|
4358
|
-
"target"
|
|
4572
|
+
"target",
|
|
4573
|
+
"placement"
|
|
4359
4574
|
],
|
|
4360
4575
|
"notes": [
|
|
4361
|
-
"Use --target host:position."
|
|
4576
|
+
"Use --target host:position for the concrete outlet and --placement area.slot for the public semantic placement.",
|
|
4577
|
+
"The generated topology maps compact, medium, and expanded to the new concrete outlet."
|
|
4362
4578
|
],
|
|
4363
4579
|
"examples": [
|
|
4364
4580
|
{
|
|
@@ -4366,7 +4582,8 @@
|
|
|
4366
4582
|
"lines": [
|
|
4367
4583
|
"npx jskit generate ui-generator outlet \\",
|
|
4368
4584
|
" src/components/ContactSummaryCard.vue \\",
|
|
4369
|
-
" --target contact-view:sub-pages"
|
|
4585
|
+
" --target contact-view:sub-pages \\",
|
|
4586
|
+
" --placement page.section-nav"
|
|
4370
4587
|
]
|
|
4371
4588
|
},
|
|
4372
4589
|
{
|
|
@@ -4374,7 +4591,9 @@
|
|
|
4374
4591
|
"lines": [
|
|
4375
4592
|
"npx jskit generate ui-generator outlet \\",
|
|
4376
4593
|
" src/pages/admin/customers/[customerId]/index.vue \\",
|
|
4377
|
-
" --target customer-view:summary-actions"
|
|
4594
|
+
" --target customer-view:summary-actions \\",
|
|
4595
|
+
" --placement page.actions \\",
|
|
4596
|
+
" --surface admin"
|
|
4378
4597
|
]
|
|
4379
4598
|
}
|
|
4380
4599
|
]
|
|
@@ -4396,7 +4615,7 @@
|
|
|
4396
4615
|
"mutations": {
|
|
4397
4616
|
"dependencies": {
|
|
4398
4617
|
"runtime": {
|
|
4399
|
-
"@jskit-ai/users-web": "0.1.
|
|
4618
|
+
"@jskit-ai/users-web": "0.1.81"
|
|
4400
4619
|
},
|
|
4401
4620
|
"dev": {}
|
|
4402
4621
|
},
|
|
@@ -4411,11 +4630,11 @@
|
|
|
4411
4630
|
},
|
|
4412
4631
|
{
|
|
4413
4632
|
"packageId": "@jskit-ai/uploads-image-web",
|
|
4414
|
-
"version": "0.1.
|
|
4633
|
+
"version": "0.1.44",
|
|
4415
4634
|
"descriptor": {
|
|
4416
4635
|
"packageVersion": 1,
|
|
4417
4636
|
"packageId": "@jskit-ai/uploads-image-web",
|
|
4418
|
-
"version": "0.1.
|
|
4637
|
+
"version": "0.1.44",
|
|
4419
4638
|
"kind": "runtime",
|
|
4420
4639
|
"description": "Reusable client-side image upload runtime with pre-upload image editing.",
|
|
4421
4640
|
"dependsOn": [
|
|
@@ -4479,7 +4698,7 @@
|
|
|
4479
4698
|
"mutations": {
|
|
4480
4699
|
"dependencies": {
|
|
4481
4700
|
"runtime": {
|
|
4482
|
-
"@jskit-ai/uploads-runtime": "0.1.
|
|
4701
|
+
"@jskit-ai/uploads-runtime": "0.1.44",
|
|
4483
4702
|
"@uppy/compressor": "^3.1.0",
|
|
4484
4703
|
"@uppy/core": "^5.2.0",
|
|
4485
4704
|
"@uppy/dashboard": "^5.1.1",
|
|
@@ -4499,11 +4718,11 @@
|
|
|
4499
4718
|
},
|
|
4500
4719
|
{
|
|
4501
4720
|
"packageId": "@jskit-ai/uploads-runtime",
|
|
4502
|
-
"version": "0.1.
|
|
4721
|
+
"version": "0.1.44",
|
|
4503
4722
|
"descriptor": {
|
|
4504
4723
|
"packageVersion": 1,
|
|
4505
4724
|
"packageId": "@jskit-ai/uploads-runtime",
|
|
4506
|
-
"version": "0.1.
|
|
4725
|
+
"version": "0.1.44",
|
|
4507
4726
|
"kind": "runtime",
|
|
4508
4727
|
"description": "Reusable upload runtime primitives for multipart parsing, policy validation, and blob storage.",
|
|
4509
4728
|
"dependsOn": [
|
|
@@ -4573,7 +4792,7 @@
|
|
|
4573
4792
|
"dependencies": {
|
|
4574
4793
|
"runtime": {
|
|
4575
4794
|
"@fastify/multipart": "^9.4.0",
|
|
4576
|
-
"@jskit-ai/kernel": "0.1.
|
|
4795
|
+
"@jskit-ai/kernel": "0.1.66"
|
|
4577
4796
|
},
|
|
4578
4797
|
"dev": {}
|
|
4579
4798
|
},
|
|
@@ -4588,11 +4807,11 @@
|
|
|
4588
4807
|
},
|
|
4589
4808
|
{
|
|
4590
4809
|
"packageId": "@jskit-ai/users-core",
|
|
4591
|
-
"version": "0.1.
|
|
4810
|
+
"version": "0.1.76",
|
|
4592
4811
|
"descriptor": {
|
|
4593
4812
|
"packageVersion": 1,
|
|
4594
4813
|
"packageId": "@jskit-ai/users-core",
|
|
4595
|
-
"version": "0.1.
|
|
4814
|
+
"version": "0.1.76",
|
|
4596
4815
|
"kind": "runtime",
|
|
4597
4816
|
"description": "Users/account runtime plus HTTP routes for account features.",
|
|
4598
4817
|
"dependsOn": [
|
|
@@ -4733,16 +4952,16 @@
|
|
|
4733
4952
|
"mutations": {
|
|
4734
4953
|
"dependencies": {
|
|
4735
4954
|
"runtime": {
|
|
4736
|
-
"@jskit-ai/auth-core": "0.1.
|
|
4737
|
-
"@jskit-ai/crud-core": "0.1.
|
|
4738
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
4739
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
4740
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
4741
|
-
"@jskit-ai/kernel": "0.1.
|
|
4742
|
-
"@jskit-ai/resource-core": "0.1.
|
|
4743
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
4955
|
+
"@jskit-ai/auth-core": "0.1.65",
|
|
4956
|
+
"@jskit-ai/crud-core": "0.1.74",
|
|
4957
|
+
"@jskit-ai/database-runtime": "0.1.66",
|
|
4958
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
4959
|
+
"@jskit-ai/json-rest-api-core": "0.1.11",
|
|
4960
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
4961
|
+
"@jskit-ai/resource-core": "0.1.11",
|
|
4962
|
+
"@jskit-ai/resource-crud-core": "0.1.11",
|
|
4744
4963
|
"@local/users": "file:packages/users",
|
|
4745
|
-
"@jskit-ai/uploads-runtime": "0.1.
|
|
4964
|
+
"@jskit-ai/uploads-runtime": "0.1.44"
|
|
4746
4965
|
},
|
|
4747
4966
|
"dev": {}
|
|
4748
4967
|
},
|
|
@@ -4959,11 +5178,11 @@
|
|
|
4959
5178
|
},
|
|
4960
5179
|
{
|
|
4961
5180
|
"packageId": "@jskit-ai/users-web",
|
|
4962
|
-
"version": "0.1.
|
|
5181
|
+
"version": "0.1.81",
|
|
4963
5182
|
"descriptor": {
|
|
4964
5183
|
"packageVersion": 1,
|
|
4965
5184
|
"packageId": "@jskit-ai/users-web",
|
|
4966
|
-
"version": "0.1.
|
|
5185
|
+
"version": "0.1.81",
|
|
4967
5186
|
"kind": "runtime",
|
|
4968
5187
|
"description": "Users web module: account/profile UI plus shared users web widgets.",
|
|
4969
5188
|
"dependsOn": [
|
|
@@ -5072,7 +5291,6 @@
|
|
|
5072
5291
|
"outlets": [
|
|
5073
5292
|
{
|
|
5074
5293
|
"target": "home-cog:primary-menu",
|
|
5075
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
5076
5294
|
"surfaces": [
|
|
5077
5295
|
"home"
|
|
5078
5296
|
],
|
|
@@ -5086,21 +5304,72 @@
|
|
|
5086
5304
|
"source": "src/client/components/AccountSettingsClientElement.vue"
|
|
5087
5305
|
}
|
|
5088
5306
|
],
|
|
5307
|
+
"topology": {
|
|
5308
|
+
"placements": [
|
|
5309
|
+
{
|
|
5310
|
+
"id": "home.tools-menu",
|
|
5311
|
+
"description": "Home surface tools menu actions.",
|
|
5312
|
+
"surfaces": [
|
|
5313
|
+
"home"
|
|
5314
|
+
],
|
|
5315
|
+
"variants": {
|
|
5316
|
+
"compact": {
|
|
5317
|
+
"outlet": "home-cog:primary-menu",
|
|
5318
|
+
"renderers": {
|
|
5319
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
5320
|
+
}
|
|
5321
|
+
},
|
|
5322
|
+
"medium": {
|
|
5323
|
+
"outlet": "home-cog:primary-menu",
|
|
5324
|
+
"renderers": {
|
|
5325
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
5326
|
+
}
|
|
5327
|
+
},
|
|
5328
|
+
"expanded": {
|
|
5329
|
+
"outlet": "home-cog:primary-menu",
|
|
5330
|
+
"renderers": {
|
|
5331
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
5332
|
+
}
|
|
5333
|
+
}
|
|
5334
|
+
}
|
|
5335
|
+
},
|
|
5336
|
+
{
|
|
5337
|
+
"id": "settings.sections",
|
|
5338
|
+
"owner": "account-settings",
|
|
5339
|
+
"description": "Account settings content sections.",
|
|
5340
|
+
"surfaces": [
|
|
5341
|
+
"account"
|
|
5342
|
+
],
|
|
5343
|
+
"variants": {
|
|
5344
|
+
"compact": {
|
|
5345
|
+
"outlet": "account-settings:sections"
|
|
5346
|
+
},
|
|
5347
|
+
"medium": {
|
|
5348
|
+
"outlet": "account-settings:sections"
|
|
5349
|
+
},
|
|
5350
|
+
"expanded": {
|
|
5351
|
+
"outlet": "account-settings:sections"
|
|
5352
|
+
}
|
|
5353
|
+
}
|
|
5354
|
+
}
|
|
5355
|
+
]
|
|
5356
|
+
},
|
|
5089
5357
|
"contributions": [
|
|
5090
5358
|
{
|
|
5091
5359
|
"id": "users.profile.menu.settings",
|
|
5092
|
-
"target": "auth
|
|
5360
|
+
"target": "auth.profile-menu",
|
|
5361
|
+
"kind": "link",
|
|
5093
5362
|
"surfaces": [
|
|
5094
5363
|
"*"
|
|
5095
5364
|
],
|
|
5096
5365
|
"order": 500,
|
|
5097
|
-
"componentToken": "auth.web.profile.menu.link-item",
|
|
5098
5366
|
"when": "auth.authenticated === true",
|
|
5099
5367
|
"source": "mutations.text#users-web-profile-settings-placement"
|
|
5100
5368
|
},
|
|
5101
5369
|
{
|
|
5102
5370
|
"id": "users.home.tools.widget",
|
|
5103
|
-
"target": "shell
|
|
5371
|
+
"target": "shell.status",
|
|
5372
|
+
"kind": "component",
|
|
5104
5373
|
"surfaces": [
|
|
5105
5374
|
"home"
|
|
5106
5375
|
],
|
|
@@ -5111,18 +5380,20 @@
|
|
|
5111
5380
|
},
|
|
5112
5381
|
{
|
|
5113
5382
|
"id": "users.home.menu.settings",
|
|
5114
|
-
"target": "home-
|
|
5383
|
+
"target": "home.tools-menu",
|
|
5384
|
+
"kind": "link",
|
|
5115
5385
|
"surfaces": [
|
|
5116
5386
|
"home"
|
|
5117
5387
|
],
|
|
5118
5388
|
"order": 100,
|
|
5119
|
-
"componentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
5120
5389
|
"when": "auth.authenticated === true",
|
|
5121
5390
|
"source": "mutations.text#users-web-home-tools-placement"
|
|
5122
5391
|
},
|
|
5123
5392
|
{
|
|
5124
5393
|
"id": "users.account.settings.profile",
|
|
5125
|
-
"target": "
|
|
5394
|
+
"target": "settings.sections",
|
|
5395
|
+
"owner": "account-settings",
|
|
5396
|
+
"kind": "component",
|
|
5126
5397
|
"surfaces": [
|
|
5127
5398
|
"account"
|
|
5128
5399
|
],
|
|
@@ -5132,7 +5403,9 @@
|
|
|
5132
5403
|
},
|
|
5133
5404
|
{
|
|
5134
5405
|
"id": "users.account.settings.preferences",
|
|
5135
|
-
"target": "
|
|
5406
|
+
"target": "settings.sections",
|
|
5407
|
+
"owner": "account-settings",
|
|
5408
|
+
"kind": "component",
|
|
5136
5409
|
"surfaces": [
|
|
5137
5410
|
"account"
|
|
5138
5411
|
],
|
|
@@ -5142,7 +5415,9 @@
|
|
|
5142
5415
|
},
|
|
5143
5416
|
{
|
|
5144
5417
|
"id": "users.account.settings.notifications",
|
|
5145
|
-
"target": "
|
|
5418
|
+
"target": "settings.sections",
|
|
5419
|
+
"owner": "account-settings",
|
|
5420
|
+
"kind": "component",
|
|
5146
5421
|
"surfaces": [
|
|
5147
5422
|
"account"
|
|
5148
5423
|
],
|
|
@@ -5159,12 +5434,12 @@
|
|
|
5159
5434
|
"runtime": {
|
|
5160
5435
|
"@tanstack/vue-query": "5.92.12",
|
|
5161
5436
|
"@mdi/js": "^7.4.47",
|
|
5162
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
5163
|
-
"@jskit-ai/realtime": "0.1.
|
|
5164
|
-
"@jskit-ai/kernel": "0.1.
|
|
5165
|
-
"@jskit-ai/shell-web": "0.1.
|
|
5166
|
-
"@jskit-ai/uploads-image-web": "0.1.
|
|
5167
|
-
"@jskit-ai/users-core": "0.1.
|
|
5437
|
+
"@jskit-ai/http-runtime": "0.1.65",
|
|
5438
|
+
"@jskit-ai/realtime": "0.1.65",
|
|
5439
|
+
"@jskit-ai/kernel": "0.1.66",
|
|
5440
|
+
"@jskit-ai/shell-web": "0.1.65",
|
|
5441
|
+
"@jskit-ai/uploads-image-web": "0.1.44",
|
|
5442
|
+
"@jskit-ai/users-core": "0.1.76",
|
|
5168
5443
|
"vuetify": "^4.0.0"
|
|
5169
5444
|
},
|
|
5170
5445
|
"dev": {}
|
|
@@ -5223,7 +5498,7 @@
|
|
|
5223
5498
|
"file": "src/placement.js",
|
|
5224
5499
|
"position": "bottom",
|
|
5225
5500
|
"skipIfContains": "id: \"users.profile.menu.settings\"",
|
|
5226
|
-
"value": "\naddPlacement({\n id: \"users.profile.menu.settings\",\n target: \"auth
|
|
5501
|
+
"value": "\naddPlacement({\n id: \"users.profile.menu.settings\",\n target: \"auth.profile-menu\",\n kind: \"link\",\n surfaces: [\"*\"],\n order: 500,\n props: {\n label: \"Settings\",\n to: \"/account\"\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n",
|
|
5227
5502
|
"reason": "Append users-web profile settings menu placement into app-owned placement registry.",
|
|
5228
5503
|
"category": "users-web",
|
|
5229
5504
|
"id": "users-web-profile-settings-placement"
|
|
@@ -5233,21 +5508,41 @@
|
|
|
5233
5508
|
"file": "src/placement.js",
|
|
5234
5509
|
"position": "bottom",
|
|
5235
5510
|
"skipIfContains": "id: \"users.home.tools.widget\"",
|
|
5236
|
-
"value": "\naddPlacement({\n id: \"users.home.tools.widget\",\n target: \"shell
|
|
5511
|
+
"value": "\naddPlacement({\n id: \"users.home.tools.widget\",\n target: \"shell.status\",\n kind: \"component\",\n surfaces: [\"home\"],\n order: 900,\n componentToken: \"users.web.home.tools.widget\",\n when: ({ auth }) => auth?.authenticated === true\n});\n\naddPlacement({\n id: \"users.home.menu.settings\",\n target: \"home.tools-menu\",\n kind: \"link\",\n surfaces: [\"home\"],\n order: 100,\n props: {\n label: \"Settings\",\n surface: \"home\",\n scopedSuffix: \"/settings\",\n unscopedSuffix: \"/settings\"\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n",
|
|
5237
5512
|
"reason": "Append users-web home tools widget and settings menu placements into app-owned placement registry.",
|
|
5238
5513
|
"category": "users-web",
|
|
5239
5514
|
"id": "users-web-home-tools-placement"
|
|
5240
5515
|
},
|
|
5516
|
+
{
|
|
5517
|
+
"op": "append-text",
|
|
5518
|
+
"file": "src/placementTopology.js",
|
|
5519
|
+
"position": "bottom",
|
|
5520
|
+
"skipIfContains": "id: \"home.tools-menu\"",
|
|
5521
|
+
"value": "\naddPlacementTopology({\n id: \"home.tools-menu\",\n description: \"Home surface tools menu actions.\",\n surfaces: [\"home\"],\n variants: {\n compact: {\n outlet: \"home-cog:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n medium: {\n outlet: \"home-cog:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n expanded: {\n outlet: \"home-cog:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n }\n }\n});\n",
|
|
5522
|
+
"reason": "Append users-web home tools semantic topology into app-owned placement topology.",
|
|
5523
|
+
"category": "users-web",
|
|
5524
|
+
"id": "users-web-home-tools-topology"
|
|
5525
|
+
},
|
|
5241
5526
|
{
|
|
5242
5527
|
"op": "append-text",
|
|
5243
5528
|
"file": "src/placement.js",
|
|
5244
5529
|
"position": "bottom",
|
|
5245
5530
|
"skipIfContains": "id: \"users.account.settings.profile\"",
|
|
5246
|
-
"value": "\naddPlacement({\n id: \"users.account.settings.profile\",\n target: \"account-settings:
|
|
5531
|
+
"value": "\naddPlacement({\n id: \"users.account.settings.profile\",\n target: \"settings.sections\",\n owner: \"account-settings\",\n kind: \"component\",\n surfaces: [\"account\"],\n order: 100,\n componentToken: \"local.main.account-settings.section.profile\",\n props: {\n title: \"Profile\",\n value: \"profile\",\n usesSharedRuntime: true\n }\n});\n\naddPlacement({\n id: \"users.account.settings.preferences\",\n target: \"settings.sections\",\n owner: \"account-settings\",\n kind: \"component\",\n surfaces: [\"account\"],\n order: 200,\n componentToken: \"local.main.account-settings.section.preferences\",\n props: {\n title: \"Preferences\",\n value: \"preferences\",\n usesSharedRuntime: true\n }\n});\n\naddPlacement({\n id: \"users.account.settings.notifications\",\n target: \"settings.sections\",\n owner: \"account-settings\",\n kind: \"component\",\n surfaces: [\"account\"],\n order: 300,\n componentToken: \"local.main.account-settings.section.notifications\",\n props: {\n title: \"Notifications\",\n value: \"notifications\",\n usesSharedRuntime: true\n }\n});\n",
|
|
5247
5532
|
"reason": "Append users-web account settings section placements into the app-owned placement registry.",
|
|
5248
5533
|
"category": "users-web",
|
|
5249
5534
|
"id": "users-web-account-settings-sections-placement"
|
|
5250
5535
|
},
|
|
5536
|
+
{
|
|
5537
|
+
"op": "append-text",
|
|
5538
|
+
"file": "src/placementTopology.js",
|
|
5539
|
+
"position": "bottom",
|
|
5540
|
+
"skipIfContains": "id: \"settings.sections\"",
|
|
5541
|
+
"value": "\naddPlacementTopology({\n id: \"settings.sections\",\n owner: \"account-settings\",\n description: \"Account settings content sections.\",\n surfaces: [\"account\"],\n variants: {\n compact: {\n outlet: \"account-settings:sections\"\n },\n medium: {\n outlet: \"account-settings:sections\"\n },\n expanded: {\n outlet: \"account-settings:sections\"\n }\n }\n});\n",
|
|
5542
|
+
"reason": "Append users-web account settings semantic topology into app-owned placement topology.",
|
|
5543
|
+
"category": "users-web",
|
|
5544
|
+
"id": "users-web-account-settings-topology"
|
|
5545
|
+
},
|
|
5251
5546
|
{
|
|
5252
5547
|
"op": "append-text",
|
|
5253
5548
|
"file": "packages/main/src/client/providers/MainClientProvider.js",
|
|
@@ -5314,11 +5609,11 @@
|
|
|
5314
5609
|
},
|
|
5315
5610
|
{
|
|
5316
5611
|
"packageId": "@jskit-ai/workspaces-core",
|
|
5317
|
-
"version": "0.1.
|
|
5612
|
+
"version": "0.1.42",
|
|
5318
5613
|
"descriptor": {
|
|
5319
5614
|
"packageVersion": 1,
|
|
5320
5615
|
"packageId": "@jskit-ai/workspaces-core",
|
|
5321
|
-
"version": "0.1.
|
|
5616
|
+
"version": "0.1.42",
|
|
5322
5617
|
"kind": "runtime",
|
|
5323
5618
|
"description": "Workspace tenancy runtime plus HTTP routes, role catalog, and workspace config scaffolding.",
|
|
5324
5619
|
"dependsOn": [
|
|
@@ -5459,10 +5754,10 @@
|
|
|
5459
5754
|
"mutations": {
|
|
5460
5755
|
"dependencies": {
|
|
5461
5756
|
"runtime": {
|
|
5462
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
5463
|
-
"@jskit-ai/resource-core": "0.1.
|
|
5464
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
5465
|
-
"@jskit-ai/users-core": "0.1.
|
|
5757
|
+
"@jskit-ai/json-rest-api-core": "0.1.11",
|
|
5758
|
+
"@jskit-ai/resource-core": "0.1.11",
|
|
5759
|
+
"@jskit-ai/resource-crud-core": "0.1.11",
|
|
5760
|
+
"@jskit-ai/users-core": "0.1.76"
|
|
5466
5761
|
},
|
|
5467
5762
|
"dev": {}
|
|
5468
5763
|
},
|
|
@@ -5634,11 +5929,11 @@
|
|
|
5634
5929
|
},
|
|
5635
5930
|
{
|
|
5636
5931
|
"packageId": "@jskit-ai/workspaces-web",
|
|
5637
|
-
"version": "0.1.
|
|
5932
|
+
"version": "0.1.42",
|
|
5638
5933
|
"descriptor": {
|
|
5639
5934
|
"packageVersion": 1,
|
|
5640
5935
|
"packageId": "@jskit-ai/workspaces-web",
|
|
5641
|
-
"version": "0.1.
|
|
5936
|
+
"version": "0.1.42",
|
|
5642
5937
|
"kind": "runtime",
|
|
5643
5938
|
"description": "Workspace web module: workspace selector, tools widget, workspace surfaces, and members/settings UI.",
|
|
5644
5939
|
"dependsOn": [
|
|
@@ -5706,7 +6001,6 @@
|
|
|
5706
6001
|
"outlets": [
|
|
5707
6002
|
{
|
|
5708
6003
|
"target": "admin-settings:primary-menu",
|
|
5709
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
5710
6004
|
"surfaces": [
|
|
5711
6005
|
"admin"
|
|
5712
6006
|
],
|
|
@@ -5714,39 +6008,98 @@
|
|
|
5714
6008
|
},
|
|
5715
6009
|
{
|
|
5716
6010
|
"target": "admin-cog:primary-menu",
|
|
5717
|
-
"defaultLinkComponentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
5718
6011
|
"surfaces": [
|
|
5719
6012
|
"admin"
|
|
5720
6013
|
],
|
|
5721
6014
|
"source": "src/client/components/UsersWorkspaceToolsWidget.vue"
|
|
5722
6015
|
}
|
|
5723
6016
|
],
|
|
6017
|
+
"topology": {
|
|
6018
|
+
"placements": [
|
|
6019
|
+
{
|
|
6020
|
+
"id": "page.section-nav",
|
|
6021
|
+
"owner": "admin-settings",
|
|
6022
|
+
"description": "Navigation between workspace admin settings child pages.",
|
|
6023
|
+
"surfaces": [
|
|
6024
|
+
"admin"
|
|
6025
|
+
],
|
|
6026
|
+
"variants": {
|
|
6027
|
+
"compact": {
|
|
6028
|
+
"outlet": "admin-settings:primary-menu",
|
|
6029
|
+
"renderers": {
|
|
6030
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
6031
|
+
}
|
|
6032
|
+
},
|
|
6033
|
+
"medium": {
|
|
6034
|
+
"outlet": "admin-settings:primary-menu",
|
|
6035
|
+
"renderers": {
|
|
6036
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
6037
|
+
}
|
|
6038
|
+
},
|
|
6039
|
+
"expanded": {
|
|
6040
|
+
"outlet": "admin-settings:primary-menu",
|
|
6041
|
+
"renderers": {
|
|
6042
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
6043
|
+
}
|
|
6044
|
+
}
|
|
6045
|
+
}
|
|
6046
|
+
},
|
|
6047
|
+
{
|
|
6048
|
+
"id": "admin.tools-menu",
|
|
6049
|
+
"description": "Admin surface tools menu actions.",
|
|
6050
|
+
"surfaces": [
|
|
6051
|
+
"admin"
|
|
6052
|
+
],
|
|
6053
|
+
"variants": {
|
|
6054
|
+
"compact": {
|
|
6055
|
+
"outlet": "admin-cog:primary-menu",
|
|
6056
|
+
"renderers": {
|
|
6057
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
6058
|
+
}
|
|
6059
|
+
},
|
|
6060
|
+
"medium": {
|
|
6061
|
+
"outlet": "admin-cog:primary-menu",
|
|
6062
|
+
"renderers": {
|
|
6063
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
6064
|
+
}
|
|
6065
|
+
},
|
|
6066
|
+
"expanded": {
|
|
6067
|
+
"outlet": "admin-cog:primary-menu",
|
|
6068
|
+
"renderers": {
|
|
6069
|
+
"link": "local.main.ui.surface-aware-menu-link-item"
|
|
6070
|
+
}
|
|
6071
|
+
}
|
|
6072
|
+
}
|
|
6073
|
+
}
|
|
6074
|
+
]
|
|
6075
|
+
},
|
|
5724
6076
|
"contributions": [
|
|
5725
6077
|
{
|
|
5726
6078
|
"id": "workspaces.workspace.menu.app",
|
|
5727
|
-
"target": "shell
|
|
6079
|
+
"target": "shell.primary-nav",
|
|
6080
|
+
"kind": "link",
|
|
5728
6081
|
"surfaces": [
|
|
5729
6082
|
"app"
|
|
5730
6083
|
],
|
|
5731
6084
|
"order": 50,
|
|
5732
|
-
"componentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
5733
6085
|
"when": "auth.authenticated === true",
|
|
5734
6086
|
"source": "mutations.text#workspaces-web-placement-block"
|
|
5735
6087
|
},
|
|
5736
6088
|
{
|
|
5737
6089
|
"id": "workspaces.workspace.menu.admin",
|
|
5738
|
-
"target": "shell
|
|
6090
|
+
"target": "shell.primary-nav",
|
|
6091
|
+
"kind": "link",
|
|
5739
6092
|
"surfaces": [
|
|
5740
6093
|
"admin"
|
|
5741
6094
|
],
|
|
5742
6095
|
"order": 60,
|
|
5743
|
-
"componentToken": "local.main.ui.surface-aware-menu-link-item",
|
|
5744
6096
|
"when": "auth.authenticated === true",
|
|
5745
6097
|
"source": "mutations.text#workspaces-web-placement-block"
|
|
5746
6098
|
},
|
|
5747
6099
|
{
|
|
5748
6100
|
"id": "workspaces.profile.menu.surface-switch",
|
|
5749
|
-
"target": "auth
|
|
6101
|
+
"target": "auth.profile-menu",
|
|
6102
|
+
"kind": "component",
|
|
5750
6103
|
"surfaces": [
|
|
5751
6104
|
"*"
|
|
5752
6105
|
],
|
|
@@ -5757,7 +6110,8 @@
|
|
|
5757
6110
|
},
|
|
5758
6111
|
{
|
|
5759
6112
|
"id": "workspaces.workspace.selector",
|
|
5760
|
-
"target": "shell
|
|
6113
|
+
"target": "shell.identity",
|
|
6114
|
+
"kind": "component",
|
|
5761
6115
|
"surfaces": [
|
|
5762
6116
|
"*"
|
|
5763
6117
|
],
|
|
@@ -5768,7 +6122,8 @@
|
|
|
5768
6122
|
},
|
|
5769
6123
|
{
|
|
5770
6124
|
"id": "workspaces.account.invites.cue",
|
|
5771
|
-
"target": "shell
|
|
6125
|
+
"target": "shell.status",
|
|
6126
|
+
"kind": "component",
|
|
5772
6127
|
"surfaces": [
|
|
5773
6128
|
"*"
|
|
5774
6129
|
],
|
|
@@ -5779,7 +6134,9 @@
|
|
|
5779
6134
|
},
|
|
5780
6135
|
{
|
|
5781
6136
|
"id": "workspaces.account.settings.invites",
|
|
5782
|
-
"target": "
|
|
6137
|
+
"target": "settings.sections",
|
|
6138
|
+
"owner": "account-settings",
|
|
6139
|
+
"kind": "component",
|
|
5783
6140
|
"surfaces": [
|
|
5784
6141
|
"account"
|
|
5785
6142
|
],
|
|
@@ -5790,7 +6147,8 @@
|
|
|
5790
6147
|
},
|
|
5791
6148
|
{
|
|
5792
6149
|
"id": "workspaces.workspace.tools.widget",
|
|
5793
|
-
"target": "shell
|
|
6150
|
+
"target": "shell.status",
|
|
6151
|
+
"kind": "component",
|
|
5794
6152
|
"surfaces": [
|
|
5795
6153
|
"admin"
|
|
5796
6154
|
],
|
|
@@ -5800,7 +6158,8 @@
|
|
|
5800
6158
|
},
|
|
5801
6159
|
{
|
|
5802
6160
|
"id": "workspaces.workspace.menu.workspace-settings",
|
|
5803
|
-
"target": "admin-
|
|
6161
|
+
"target": "admin.tools-menu",
|
|
6162
|
+
"kind": "component",
|
|
5804
6163
|
"surfaces": [
|
|
5805
6164
|
"admin"
|
|
5806
6165
|
],
|
|
@@ -5810,7 +6169,8 @@
|
|
|
5810
6169
|
},
|
|
5811
6170
|
{
|
|
5812
6171
|
"id": "workspaces.workspace.menu.members",
|
|
5813
|
-
"target": "admin-
|
|
6172
|
+
"target": "admin.tools-menu",
|
|
6173
|
+
"kind": "component",
|
|
5814
6174
|
"surfaces": [
|
|
5815
6175
|
"admin"
|
|
5816
6176
|
],
|
|
@@ -5825,8 +6185,8 @@
|
|
|
5825
6185
|
"mutations": {
|
|
5826
6186
|
"dependencies": {
|
|
5827
6187
|
"runtime": {
|
|
5828
|
-
"@jskit-ai/workspaces-core": "0.1.
|
|
5829
|
-
"@jskit-ai/users-web": "0.1.
|
|
6188
|
+
"@jskit-ai/workspaces-core": "0.1.42",
|
|
6189
|
+
"@jskit-ai/users-web": "0.1.81",
|
|
5830
6190
|
"vuetify": "^4.0.0"
|
|
5831
6191
|
},
|
|
5832
6192
|
"dev": {}
|
|
@@ -5995,7 +6355,7 @@
|
|
|
5995
6355
|
"file": "src/placement.js",
|
|
5996
6356
|
"position": "bottom",
|
|
5997
6357
|
"skipIfContains": "id: \"workspaces.profile.menu.surface-switch\"",
|
|
5998
|
-
"value": "\naddPlacement({\n id: \"workspaces.profile.menu.surface-switch\",\n target: \"auth
|
|
6358
|
+
"value": "\naddPlacement({\n id: \"workspaces.profile.menu.surface-switch\",\n target: \"auth.profile-menu\",\n kind: \"component\",\n surfaces: [\"*\"],\n order: 100,\n componentToken: \"workspaces.web.profile.menu.surface-switch-item\",\n when: ({ auth }) => auth?.authenticated === true\n});\n",
|
|
5999
6359
|
"reason": "Append workspaces-web profile surface switch placement into app-owned placement registry.",
|
|
6000
6360
|
"category": "workspaces-web",
|
|
6001
6361
|
"id": "workspaces-web-profile-surface-switch-placement",
|
|
@@ -6012,7 +6372,7 @@
|
|
|
6012
6372
|
"file": "src/placement.js",
|
|
6013
6373
|
"position": "bottom",
|
|
6014
6374
|
"skipIfContains": "id: \"workspaces.workspace.selector\"",
|
|
6015
|
-
"value": "\naddPlacement({\n id: \"workspaces.workspace.menu.app\",\n target: \"shell
|
|
6375
|
+
"value": "\naddPlacement({\n id: \"workspaces.workspace.menu.app\",\n target: \"shell.primary-nav\",\n kind: \"link\",\n surfaces: [\"app\"],\n order: 50,\n props: {\n label: \"Home\",\n surface: \"app\",\n scopedSuffix: \"/\",\n unscopedSuffix: \"/\",\n exact: true\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n\naddPlacement({\n id: \"workspaces.workspace.menu.admin\",\n target: \"shell.primary-nav\",\n kind: \"link\",\n surfaces: [\"admin\"],\n order: 60,\n props: {\n label: \"Home\",\n surface: \"admin\",\n scopedSuffix: \"/\",\n unscopedSuffix: \"/\",\n exact: true\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n\naddPlacement({\n id: \"workspaces.workspace.selector\",\n target: \"shell.identity\",\n kind: \"component\",\n surfaces: [\"*\"],\n order: 200,\n componentToken: \"workspaces.web.workspace.selector\",\n props: {\n allowOnNonWorkspaceSurface: true,\n targetSurfaceId: \"app\"\n },\n when: ({ auth }) => auth?.authenticated === true\n});\n\naddPlacement({\n id: \"workspaces.account.invites.cue\",\n target: \"shell.status\",\n kind: \"component\",\n surfaces: [\"*\"],\n order: 850,\n componentToken: \"local.main.account.pending-invites.cue\",\n when: ({ auth }) => auth?.authenticated === true\n});\n\naddPlacement({\n id: \"workspaces.workspace.tools.widget\",\n target: \"shell.status\",\n kind: \"component\",\n surfaces: [\"admin\"],\n order: 900,\n componentToken: \"workspaces.web.workspace.tools.widget\"\n});\n\naddPlacement({\n id: \"workspaces.workspace.menu.workspace-settings\",\n target: \"admin.tools-menu\",\n kind: \"component\",\n surfaces: [\"admin\"],\n order: 100,\n componentToken: \"workspaces.web.workspace-settings.menu-item\"\n});\n\naddPlacement({\n id: \"workspaces.workspace.menu.members\",\n target: \"admin.tools-menu\",\n kind: \"component\",\n surfaces: [\"admin\"],\n order: 200,\n componentToken: \"workspaces.web.workspace-members.menu-item\"\n});\n",
|
|
6016
6376
|
"reason": "Append workspace placement entries into app-owned placement registry.",
|
|
6017
6377
|
"category": "workspaces-web",
|
|
6018
6378
|
"id": "workspaces-web-placement-block",
|
|
@@ -6024,12 +6384,29 @@
|
|
|
6024
6384
|
]
|
|
6025
6385
|
}
|
|
6026
6386
|
},
|
|
6387
|
+
{
|
|
6388
|
+
"op": "append-text",
|
|
6389
|
+
"file": "src/placementTopology.js",
|
|
6390
|
+
"position": "bottom",
|
|
6391
|
+
"skipIfContains": "id: \"admin.tools-menu\"",
|
|
6392
|
+
"value": "\naddPlacementTopology({\n id: \"page.section-nav\",\n owner: \"admin-settings\",\n description: \"Navigation between workspace admin settings child pages.\",\n surfaces: [\"admin\"],\n variants: {\n compact: {\n outlet: \"admin-settings:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n medium: {\n outlet: \"admin-settings:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n expanded: {\n outlet: \"admin-settings:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n }\n }\n});\n\naddPlacementTopology({\n id: \"admin.tools-menu\",\n description: \"Admin surface tools menu actions.\",\n surfaces: [\"admin\"],\n variants: {\n compact: {\n outlet: \"admin-cog:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n medium: {\n outlet: \"admin-cog:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n },\n expanded: {\n outlet: \"admin-cog:primary-menu\",\n renderers: {\n link: \"local.main.ui.surface-aware-menu-link-item\"\n }\n }\n }\n});\n",
|
|
6393
|
+
"reason": "Append workspaces-web admin semantic topology into app-owned placement topology.",
|
|
6394
|
+
"category": "workspaces-web",
|
|
6395
|
+
"id": "workspaces-web-admin-placement-topology",
|
|
6396
|
+
"when": {
|
|
6397
|
+
"config": "tenancyMode",
|
|
6398
|
+
"in": [
|
|
6399
|
+
"personal",
|
|
6400
|
+
"workspaces"
|
|
6401
|
+
]
|
|
6402
|
+
}
|
|
6403
|
+
},
|
|
6027
6404
|
{
|
|
6028
6405
|
"op": "append-text",
|
|
6029
6406
|
"file": "src/placement.js",
|
|
6030
6407
|
"position": "bottom",
|
|
6031
6408
|
"skipIfContains": "id: \"workspaces.account.settings.invites\"",
|
|
6032
|
-
"value": "\naddPlacement({\n id: \"workspaces.account.settings.invites\",\n target: \"account-settings:
|
|
6409
|
+
"value": "\naddPlacement({\n id: \"workspaces.account.settings.invites\",\n target: \"settings.sections\",\n owner: \"account-settings\",\n kind: \"component\",\n surfaces: [\"account\"],\n order: 400,\n componentToken: \"local.main.account-settings.section.invites\",\n props: {\n title: \"Invites\",\n value: \"invites\",\n usesSharedRuntime: false\n },\n when: ({ auth, workspaceInvitesEnabled }) => auth?.authenticated === true && workspaceInvitesEnabled === true\n});\n",
|
|
6033
6410
|
"reason": "Append workspaces-web account settings invites section placement into app-owned placement registry.",
|
|
6034
6411
|
"category": "workspaces-web",
|
|
6035
6412
|
"id": "workspaces-web-account-settings-placement",
|