@hachej/boring-ui-kit 0.4.40 → 0.4.42

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.
Files changed (52) hide show
  1. package/dist/task-board.d.ts +2 -0
  2. package/package.json +2 -2
  3. package/r/agent-target.json +4 -4
  4. package/r/app-shell.json +18 -24
  5. package/r/board-viewer.json +6 -6
  6. package/r/button.json +1 -1
  7. package/r/dock.json +1 -1
  8. package/r/documents.json +13 -13
  9. package/r/feedback-preview.json +1 -1
  10. package/r/feedback.json +6 -6
  11. package/r/file-tree.json +4 -4
  12. package/r/highlights.json +3 -3
  13. package/r/html-viewer.json +3 -3
  14. package/r/looks-viewer.json +2 -2
  15. package/r/maquette-viewer.json +1 -1
  16. package/r/markdown-editor.json +3 -3
  17. package/r/mockup-viewer.json +1 -1
  18. package/r/pi-ambient.json +8 -8
  19. package/r/pi-app-kinds.json +10 -10
  20. package/r/pi-app.json +13 -13
  21. package/r/pi-artifacts.json +2 -2
  22. package/r/pi-chat-approval.json +2 -2
  23. package/r/pi-chat-attachments.json +1 -1
  24. package/r/pi-chat-markdown.json +2 -2
  25. package/r/pi-chat-mentions.json +1 -1
  26. package/r/pi-chat-pickers.json +1 -1
  27. package/r/pi-chat-plugins.json +11 -11
  28. package/r/pi-chat-question.json +1 -1
  29. package/r/pi-chat-slash.json +2 -2
  30. package/r/pi-chat-subagent.json +1 -1
  31. package/r/pi-chat-voice.json +3 -3
  32. package/r/pi-chat.json +5 -5
  33. package/r/pi-workspace.json +4 -4
  34. package/r/placed-agent.json +4 -4
  35. package/r/pm-panel.json +42 -28
  36. package/r/provider-setup.json +1 -1
  37. package/r/registry.json +206 -194
  38. package/r/requests-board.json +1 -1
  39. package/r/shared-chat.json +6 -6
  40. package/r/task-board.json +6 -6
  41. package/r/task-list-viewer.json +2 -2
  42. package/r/task-mentions.json +4 -4
  43. package/r/utils.json +6 -0
  44. package/r/version-history.json +2 -2
  45. package/r/viewer-code.json +2 -2
  46. package/r/viewer-frame.json +6 -6
  47. package/r/viewer-html.json +4 -4
  48. package/r/viewer-image.json +2 -2
  49. package/r/viewer-markdown.json +5 -5
  50. package/r/viewer-pdf.json +3 -3
  51. package/r/viewers.json +6 -6
  52. package/r/windows.json +1 -1
package/r/registry.json CHANGED
@@ -210,6 +210,11 @@
210
210
  "react@^19.0.0"
211
211
  ],
212
212
  "files": [
213
+ {
214
+ "path": "registry/utils/back.ts",
215
+ "type": "registry:lib",
216
+ "target": "components/utils/back.ts"
217
+ },
213
218
  {
214
219
  "path": "registry/utils/use-draggable.ts",
215
220
  "type": "registry:hook",
@@ -248,7 +253,7 @@
248
253
  "lucide-react@^1.51.0"
249
254
  ],
250
255
  "registryDependencies": [
251
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
256
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
252
257
  ],
253
258
  "files": [
254
259
  {
@@ -269,8 +274,8 @@
269
274
  "title": "Markdown editor",
270
275
  "description": "A host-owned styled wrapper over the concrete borrowed Markdown controller.",
271
276
  "dependencies": [
272
- "@hachej/boring-ui-kit@^0.4.40",
273
- "@hachej/boring-files@^0.4.40",
277
+ "@hachej/boring-ui-kit@^0.4.42",
278
+ "@hachej/boring-files@^0.4.42",
274
279
  "react@^19.0.0",
275
280
  "react-dom@^19.0.0",
276
281
  "marked@^17.0.6",
@@ -426,7 +431,7 @@
426
431
  },
427
432
  "docs": "Create and own a MarkdownController from @hachej/boring-ui-kit/markdown. Pass it to MarkdownEditor. The wrapper does not acquire resources or dispose the controller. Check the repository release notes for available npm versions; local tarball tests do not establish registry availability.",
428
433
  "registryDependencies": [
429
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
434
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
430
435
  ]
431
436
  },
432
437
  {
@@ -435,8 +440,8 @@
435
440
  "title": "HTML source and passive preview",
436
441
  "description": "Exact HTML source editing with a reconstructed passive preview and borrowed controller. Browser security qualification remains separate.",
437
442
  "dependencies": [
438
- "@hachej/boring-ui-kit@^0.4.40",
439
- "@hachej/boring-files@^0.4.40",
443
+ "@hachej/boring-ui-kit@^0.4.42",
444
+ "@hachej/boring-files@^0.4.42",
440
445
  "react@^19.0.0",
441
446
  "react-dom@^19.0.0"
442
447
  ],
@@ -484,7 +489,7 @@
484
489
  }
485
490
  },
486
491
  "registryDependencies": [
487
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
492
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
488
493
  ]
489
494
  },
490
495
  {
@@ -493,9 +498,9 @@
493
498
  "title": "Pi chat",
494
499
  "description": "A complete Tailwind chat over the borrowed native chat controller: composer, messages, one collapsible activity block per turn (tool calls and reasoning), message queue, history and feedback cards for the opt-in feedback tool (lists, and Show offers that the host page resolves). Chat only: no layout. Owned, editable source; no AI SDK. The question, approval, sub-agent and artifact cards are separate items (pi-chat-question, pi-chat-approval, pi-chat-subagent, pi-artifacts); without them a question or an approval shows a \"waiting for your answer\" notice, a sub-agent call is an ordinary tool step and no artifact is offered. The optional pi-ambient and pi-workspace blocks build on it.",
495
500
  "dependencies": [
496
- "@hachej/boring-ui-kit@^0.4.40",
497
- "@hachej/boring-files@^0.4.40",
498
- "@hachej/boring-feedback@^0.4.40",
501
+ "@hachej/boring-ui-kit@^0.4.42",
502
+ "@hachej/boring-files@^0.4.42",
503
+ "@hachej/boring-feedback@^0.4.42",
499
504
  "react@^19.0.0",
500
505
  "react-dom@^19.0.0",
501
506
  "@base-ui/react@1.9.0",
@@ -508,8 +513,8 @@
508
513
  "zod@^4.6.5"
509
514
  ],
510
515
  "registryDependencies": [
511
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
512
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
516
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
517
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
513
518
  ],
514
519
  "files": [
515
520
  {
@@ -716,13 +721,13 @@
716
721
  "title": "Pi chat Markdown",
717
722
  "description": "Markdown for the chat's assistant replies: safe token-by-token rendering (raw HTML shown as text, no images fetched, http(s) links only), code blocks, tables, task lists and /command buttons. Plug it in with `renderText={markdownText}`; without it pi-chat shows replies as plain text.",
718
723
  "dependencies": [
719
- "@hachej/boring-ui-kit@^0.4.40",
724
+ "@hachej/boring-ui-kit@^0.4.42",
720
725
  "react@^19.0.0",
721
726
  "marked@^17.0.6",
722
727
  "entities@^8.1.0"
723
728
  ],
724
729
  "registryDependencies": [
725
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
730
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
726
731
  ],
727
732
  "files": [
728
733
  {
@@ -738,12 +743,12 @@
738
743
  "title": "Pi chat slash menu",
739
744
  "description": "The composer's `/` menu of commands and skills (and the Commands entry of the + menu). Plug it in with `slash={{ ...config, Picker: SlashPicker }}`; without it pi-chat has no `/` menu.",
740
745
  "dependencies": [
741
- "@hachej/boring-ui-kit@^0.4.40",
746
+ "@hachej/boring-ui-kit@^0.4.42",
742
747
  "react@^19.0.0",
743
748
  "lucide-react@^1.51.0"
744
749
  ],
745
750
  "registryDependencies": [
746
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
751
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
747
752
  ],
748
753
  "files": [
749
754
  {
@@ -763,7 +768,7 @@
763
768
  "lucide-react@^1.51.0"
764
769
  ],
765
770
  "registryDependencies": [
766
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
771
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
767
772
  ],
768
773
  "files": [
769
774
  {
@@ -783,7 +788,7 @@
783
788
  "lucide-react@^1.51.0"
784
789
  ],
785
790
  "registryDependencies": [
786
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
791
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
787
792
  ],
788
793
  "files": [
789
794
  {
@@ -799,13 +804,13 @@
799
804
  "title": "Pi chat voice messages",
800
805
  "description": "Tap-to-record voice messages: a compatibility export of the kit's chat-react/voice recorder hook, the composer's record button and the pending voice bubble, plus useHoldToRecord. Plug it in with `voiceMessage={{ ...config, ...voiceMessagePlugin }}`; without it pi-chat has no voice button.",
801
806
  "dependencies": [
802
- "@hachej/boring-ui-kit@^0.4.40",
807
+ "@hachej/boring-ui-kit@^0.4.42",
803
808
  "react@^19.0.0",
804
809
  "lucide-react@^1.51.0"
805
810
  ],
806
811
  "registryDependencies": [
807
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
808
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
812
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
813
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
809
814
  ],
810
815
  "files": [
811
816
  {
@@ -836,7 +841,7 @@
836
841
  "lucide-react@^1.51.0"
837
842
  ],
838
843
  "registryDependencies": [
839
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
844
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
840
845
  ],
841
846
  "files": [
842
847
  {
@@ -857,7 +862,7 @@
857
862
  "@earendil-works/pi-ai@~1.4.0"
858
863
  ],
859
864
  "registryDependencies": [
860
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
865
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
861
866
  ],
862
867
  "files": [
863
868
  {
@@ -873,13 +878,13 @@
873
878
  "title": "Pi chat approval card",
874
879
  "description": "The Approve / Deny card for host tools wrapped with `requireApproval`. Plug it in with `cards={{ approval: ApprovalCard }}`; without it pi-chat shows a \"waiting for your answer\" notice with no answer UI.",
875
880
  "dependencies": [
876
- "@hachej/boring-ui-kit@^0.4.40",
881
+ "@hachej/boring-ui-kit@^0.4.42",
877
882
  "react@^19.0.0",
878
883
  "lucide-react@^1.51.0",
879
884
  "@earendil-works/pi-ai@~1.4.0"
880
885
  ],
881
886
  "registryDependencies": [
882
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
887
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
883
888
  ],
884
889
  "files": [
885
890
  {
@@ -900,7 +905,7 @@
900
905
  "@earendil-works/pi-ai@~1.4.0"
901
906
  ],
902
907
  "registryDependencies": [
903
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
908
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
904
909
  ],
905
910
  "files": [
906
911
  {
@@ -921,14 +926,14 @@
921
926
  "title": "Pi artifacts",
922
927
  "description": "Artifact descriptors, kinds and the artifact card that opens generated content in the host's panel. Plug it in with `artifacts={{ ...artifactCards, open, isOpen, kinds }}`; without it pi-chat offers no artifact. pi-app and the viewers import their artifact kinds and types from it.",
923
928
  "dependencies": [
924
- "@hachej/boring-ui-kit@^0.4.40",
929
+ "@hachej/boring-ui-kit@^0.4.42",
925
930
  "react@^19.0.0",
926
931
  "lucide-react@^1.51.0",
927
932
  "@earendil-works/pi-ai@~1.4.0",
928
933
  "@earendil-works/pi-durable@~1.4.0"
929
934
  ],
930
935
  "registryDependencies": [
931
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
936
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
932
937
  ],
933
938
  "files": [
934
939
  {
@@ -952,17 +957,17 @@
952
957
  "react@^19.0.0"
953
958
  ],
954
959
  "registryDependencies": [
955
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
956
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-markdown.json",
957
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-slash.json",
958
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-mentions.json",
959
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-pickers.json",
960
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-voice.json",
961
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-attachments.json",
962
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-question.json",
963
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-approval.json",
964
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-subagent.json",
965
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-artifacts.json"
960
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
961
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-markdown.json",
962
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-slash.json",
963
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-mentions.json",
964
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-pickers.json",
965
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-voice.json",
966
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-attachments.json",
967
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-question.json",
968
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-approval.json",
969
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-subagent.json",
970
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-artifacts.json"
966
971
  ],
967
972
  "files": [
968
973
  {
@@ -978,7 +983,7 @@
978
983
  "title": "Pi ambient agent",
979
984
  "description": "AmbientChat, a compact floating agent bar that grows into a chat window over an existing page, and AgentNotifications, toasts over the kit's shared chat-react run notifications (with the one guarded browser Notification helper). A block over the pi-chat item; its in-window artifact panel uses the pi-workspace layout.",
980
985
  "dependencies": [
981
- "@hachej/boring-ui-kit@^0.4.40",
986
+ "@hachej/boring-ui-kit@^0.4.42",
982
987
  "react@^19.0.0",
983
988
  "react-dom@^19.0.0",
984
989
  "@earendil-works/pi-durable@~1.4.0",
@@ -986,13 +991,13 @@
986
991
  "lucide-react@^1.51.0"
987
992
  ],
988
993
  "registryDependencies": [
989
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
990
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-plugins.json",
991
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-question.json",
992
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-artifacts.json",
993
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-workspace.json",
994
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
995
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
994
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
995
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-plugins.json",
996
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-question.json",
997
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-artifacts.json",
998
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-workspace.json",
999
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
1000
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
996
1001
  ],
997
1002
  "files": [
998
1003
  {
@@ -1021,7 +1026,7 @@
1021
1026
  "react@^19.0.0"
1022
1027
  ],
1023
1028
  "registryDependencies": [
1024
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
1029
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
1025
1030
  ],
1026
1031
  "files": [
1027
1032
  {
@@ -1041,9 +1046,9 @@
1041
1046
  "react-dom@^19.0.0"
1042
1047
  ],
1043
1048
  "registryDependencies": [
1044
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
1045
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
1046
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/dock.json"
1049
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
1050
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
1051
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/dock.json"
1047
1052
  ],
1048
1053
  "files": [
1049
1054
  {
@@ -1070,7 +1075,7 @@
1070
1075
  "zod@^4.6.5"
1071
1076
  ],
1072
1077
  "registryDependencies": [
1073
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json"
1078
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json"
1074
1079
  ],
1075
1080
  "files": [
1076
1081
  {
@@ -1115,8 +1120,8 @@
1115
1120
  "lucide-react@^1.51.0"
1116
1121
  ],
1117
1122
  "registryDependencies": [
1118
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/mockup-viewer.json",
1119
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
1123
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/mockup-viewer.json",
1124
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
1120
1125
  ],
1121
1126
  "files": [
1122
1127
  {
@@ -1215,7 +1220,7 @@
1215
1220
  "lucide-react@^1.51.0"
1216
1221
  ],
1217
1222
  "registryDependencies": [
1218
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/diagram-viewer.json"
1223
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/diagram-viewer.json"
1219
1224
  ],
1220
1225
  "files": [
1221
1226
  {
@@ -1280,17 +1285,17 @@
1280
1285
  "title": "Board viewer",
1281
1286
  "description": "A board@1 artifact kind for *.board.json. Lazy native tldraw projection of maquette screens, sandboxed HTML mock-ups, goto arrows and notes. Conditional board-file autosave; phone viewing without accidental frame edits. Hosts supply their resource client, asset URLs and license key.",
1282
1287
  "dependencies": [
1283
- "@hachej/boring-ui-kit@^0.4.40",
1284
- "@hachej/boring-files@^0.4.40",
1288
+ "@hachej/boring-ui-kit@^0.4.42",
1289
+ "@hachej/boring-files@^0.4.42",
1285
1290
  "react@^19.0.0",
1286
1291
  "lucide-react@1.51.0",
1287
1292
  "tldraw@5.5.2"
1288
1293
  ],
1289
1294
  "registryDependencies": [
1290
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/maquette-viewer.json",
1291
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/mockup-viewer.json",
1292
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-artifacts.json",
1293
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
1295
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/maquette-viewer.json",
1296
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/mockup-viewer.json",
1297
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-artifacts.json",
1298
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
1294
1299
  ],
1295
1300
  "files": [
1296
1301
  {
@@ -1326,16 +1331,16 @@
1326
1331
  "title": "Shared chat",
1327
1332
  "description": "Optional multi-party host log presentation over PiChat's generic composition seams. No agent runtime or speaking policy.",
1328
1333
  "dependencies": [
1329
- "@hachej/boring-ui-kit@^0.4.40",
1334
+ "@hachej/boring-ui-kit@^0.4.42",
1330
1335
  "react@^19.0.0",
1331
1336
  "lucide-react@^1.51.0"
1332
1337
  ],
1333
1338
  "registryDependencies": [
1334
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
1335
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-plugins.json",
1336
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-markdown.json",
1337
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-mentions.json",
1338
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
1339
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
1340
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-plugins.json",
1341
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-markdown.json",
1342
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-mentions.json",
1343
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
1339
1344
  ],
1340
1345
  "files": [
1341
1346
  {
@@ -1391,21 +1396,21 @@
1391
1396
  "title": "Pi agent app",
1392
1397
  "description": "AgentWorkspace: a whole agent page in one component. Left: the sessions pane (search, New, rename, archive, delete; collapsible, a drawer on a narrow screen). Center: PiChat. Right: the artifact panel (versions, file viewer, auto-open of new artifacts) in the ArtifactWorkspace panel, a full-screen sheet on a phone; it draws files with the kinds the app passes in artifactKinds (defaultKinds of the pi-app-kinds item is the default list). layout=\"embedded\" drops the left column for one compact top bar (title, History, Library, New) that joins an app-shell screen header. Props are data and callbacks; hooks for the conversations handler (useConversations), the chat transport (useRemoteChat) and saved resources (useSaved).",
1393
1398
  "dependencies": [
1394
- "@hachej/boring-ui-kit@^0.4.40",
1395
- "@hachej/boring-files@^0.4.40",
1399
+ "@hachej/boring-ui-kit@^0.4.42",
1400
+ "@hachej/boring-files@^0.4.42",
1396
1401
  "react@^19.0.0",
1397
1402
  "react-dom@^19.0.0",
1398
1403
  "lucide-react@^1.51.0"
1399
1404
  ],
1400
1405
  "registryDependencies": [
1401
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
1402
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-plugins.json",
1403
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-artifacts.json",
1404
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-workspace.json",
1405
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
1406
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
1407
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json",
1408
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/file-tree.json"
1406
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
1407
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-plugins.json",
1408
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-artifacts.json",
1409
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-workspace.json",
1410
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
1411
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
1412
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json",
1413
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/file-tree.json"
1409
1414
  ],
1410
1415
  "files": [
1411
1416
  {
@@ -1491,16 +1496,16 @@
1491
1496
  "title": "Pi agent app default kinds",
1492
1497
  "description": "defaultKinds({ locale, comments }): the artifact kinds the pi-app item draws with by default, in order: maquette, diagram, mock-up and records, then Markdown, HTML, SVG, CSV, image and PDF (documentKinds). Pass it as AgentWorkspace's artifactKinds (or ViewerOptions.kinds), with an app's own kinds before it. Each kind loads its viewer on first open.",
1493
1498
  "registryDependencies": [
1494
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-app.json",
1495
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-markdown.json",
1496
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-html.json",
1497
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-image.json",
1498
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-pdf.json",
1499
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-code.json",
1500
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/maquette-viewer.json",
1501
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/diagram-viewer.json",
1502
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/mockup-viewer.json",
1503
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/record-viewer.json"
1499
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-app.json",
1500
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-markdown.json",
1501
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-html.json",
1502
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-image.json",
1503
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-pdf.json",
1504
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-code.json",
1505
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/maquette-viewer.json",
1506
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/diagram-viewer.json",
1507
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/mockup-viewer.json",
1508
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/record-viewer.json"
1504
1509
  ],
1505
1510
  "files": [
1506
1511
  {
@@ -1521,10 +1526,10 @@
1521
1526
  "lucide-react@^1.51.0"
1522
1527
  ],
1523
1528
  "registryDependencies": [
1524
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-app.json",
1525
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-ambient.json",
1526
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/app-shell.json",
1527
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
1529
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-app.json",
1530
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-ambient.json",
1531
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/app-shell.json",
1532
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
1528
1533
  ],
1529
1534
  "files": [
1530
1535
  {
@@ -1540,22 +1545,22 @@
1540
1545
  "title": "App shell: layouts, list/detail and agent layer",
1541
1546
  "description": "AppShell with three layouts. B \"workspace\" puts a ListDetail on a screen (phone: the list, then the detail as a stack step with Back; wide: a 20rem list and the detail side by side, sidebar as an icon rail). C \"chat\" wraps the app's own AgentWorkspace (untouched, passed as the nav item's render; install the pi-app item yourself) in the same sidebar, account menu and header; it takes no shell agent. A \"screen\": one screen at a time, every screen kept mounted. On a phone bottom tabs (at most four; more give three plus a « Plus » sheet) and an avatar button that opens the account sheet; on a wide screen the shadcn sidebar (icon rail, NavUser). One header per screen through useScreenHeader (title, subtitle, back, up to two actions, the rest behind « … »). The account menu holds « Améliorer l'app » (the improve agent), the app's own entries and sign out. AppSheet is the one bottom sheet (one open at a time, Back closes it). It mounts the AgentLayer: one agent's PiChat above the app (phone: a drawer with peek, half and full snap points; wide: a right panel), the improve agent in the same layer, optional push-to-talk and point mode. Also useAgentContext and readAgentContext (the screen on show travels as `context` with each submit) and useBackLayer, the one Back manager. Built on explicitly pinned Base UI drawer and dropdown-menu recipes, plus the sidebar and avatar of the host's own shadcn style.",
1542
1547
  "dependencies": [
1543
- "@hachej/boring-feedback@^0.4.40",
1544
- "@hachej/boring-ui-kit@^0.4.40",
1548
+ "@hachej/boring-feedback@^0.4.42",
1549
+ "@hachej/boring-ui-kit@^0.4.42",
1545
1550
  "@base-ui/react@^1.9.0",
1546
1551
  "react@^19.0.0",
1547
1552
  "react-dom@^19.0.0",
1548
1553
  "lucide-react@^1.51.0"
1549
1554
  ],
1550
1555
  "registryDependencies": [
1551
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
1552
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-plugins.json",
1553
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-voice.json",
1554
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/dock.json",
1555
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pm-panel.json",
1556
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/feedback.json",
1557
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
1558
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
1556
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
1557
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-plugins.json",
1558
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-voice.json",
1559
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/dock.json",
1560
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pm-panel.json",
1561
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/feedback.json",
1562
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
1563
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
1559
1564
  ],
1560
1565
  "css": {
1561
1566
  "@layer base": {
@@ -1601,11 +1606,6 @@
1601
1606
  "type": "registry:lib",
1602
1607
  "target": "components/app-shell/agent-link.ts"
1603
1608
  },
1604
- {
1605
- "path": "registry/app-shell/back.ts",
1606
- "type": "registry:lib",
1607
- "target": "components/app-shell/back.ts"
1608
- },
1609
1609
  {
1610
1610
  "path": "registry/app-shell/use-visual-viewport.ts",
1611
1611
  "type": "registry:hook",
@@ -1684,15 +1684,15 @@
1684
1684
  "title": "Viewer frame",
1685
1685
  "description": "The standard viewer top bar every viewer draws in (title, status, viewer controls, Refresh, Share, Copy, Download, Open in new tab, Close, overflow menu), its window labels, download, share and media helpers and the sandboxed interactive HTML frame. The viewers' styles live here. Each viewer is its own item (viewer-markdown, viewer-html, viewer-image, viewer-pdf, viewer-code) with a cheap kind module and a view loaded on first open.",
1686
1686
  "dependencies": [
1687
- "@hachej/boring-ui-kit@^0.4.40",
1687
+ "@hachej/boring-ui-kit@^0.4.42",
1688
1688
  "react@^19.0.0",
1689
1689
  "react-dom@^19.0.0",
1690
1690
  "lucide-react@^1.51.0"
1691
1691
  ],
1692
1692
  "registryDependencies": [
1693
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
1694
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json",
1695
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/version-history.json"
1693
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
1694
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json",
1695
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/version-history.json"
1696
1696
  ],
1697
1697
  "files": [
1698
1698
  {
@@ -2114,7 +2114,7 @@
2114
2114
  "title": "Markdown viewer",
2115
2115
  "description": "The Markdown kind: `markdownKind` (match, loader) and `MarkdownPane`, the tiptap editor with a formatting toolbar and prose styling over the kit's revisioned Markdown controller, in the viewer frame. The pane and tiptap load the first time a Markdown file opens.",
2116
2116
  "dependencies": [
2117
- "@hachej/boring-ui-kit@^0.4.40",
2117
+ "@hachej/boring-ui-kit@^0.4.42",
2118
2118
  "react@^19.0.0",
2119
2119
  "lucide-react@^1.51.0",
2120
2120
  "marked@^17.0.6",
@@ -2132,10 +2132,10 @@
2132
2132
  "@tiptap/extension-floating-menu@^3.31.4"
2133
2133
  ],
2134
2134
  "registryDependencies": [
2135
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2136
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/markdown-editor.json",
2137
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
2138
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
2135
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2136
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/markdown-editor.json",
2137
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
2138
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
2139
2139
  ],
2140
2140
  "files": [
2141
2141
  {
@@ -2156,14 +2156,14 @@
2156
2156
  "title": "HTML viewer",
2157
2157
  "description": "The HTML kind: `htmlKind` (match, loader) and `HtmlPane`, the passive HTML preview (sandboxed when the host opts in) and source editor, in the viewer frame. The pane loads the first time an HTML file opens.",
2158
2158
  "dependencies": [
2159
- "@hachej/boring-ui-kit@^0.4.40",
2159
+ "@hachej/boring-ui-kit@^0.4.42",
2160
2160
  "react@^19.0.0",
2161
2161
  "lucide-react@^1.51.0"
2162
2162
  ],
2163
2163
  "registryDependencies": [
2164
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2165
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
2166
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
2164
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2165
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
2166
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
2167
2167
  ],
2168
2168
  "files": [
2169
2169
  {
@@ -2188,8 +2188,8 @@
2188
2188
  "lucide-react@^1.51.0"
2189
2189
  ],
2190
2190
  "registryDependencies": [
2191
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2192
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
2191
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2192
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
2193
2193
  ],
2194
2194
  "files": [
2195
2195
  {
@@ -2215,14 +2215,14 @@
2215
2215
  "title": "PDF viewer",
2216
2216
  "description": "The PDF kind: `pdfKind` (match, loader) and `PdfPane` in the viewer frame (the browser's viewer, or pdf.js pages where there is none), and LocalFileViewer for browser-only files. The pane loads the first time a PDF opens.",
2217
2217
  "dependencies": [
2218
- "@hachej/boring-files@^0.4.40",
2218
+ "@hachej/boring-files@^0.4.42",
2219
2219
  "react@^19.0.0",
2220
2220
  "lucide-react@^1.51.0",
2221
2221
  "pdfjs-dist@6.4.299"
2222
2222
  ],
2223
2223
  "registryDependencies": [
2224
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2225
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-image.json"
2224
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2225
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-image.json"
2226
2226
  ],
2227
2227
  "files": [
2228
2228
  {
@@ -2257,8 +2257,8 @@
2257
2257
  "lucide-react@^1.51.0"
2258
2258
  ],
2259
2259
  "registryDependencies": [
2260
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2261
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
2260
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2261
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
2262
2262
  ],
2263
2263
  "files": [
2264
2264
  {
@@ -2285,12 +2285,12 @@
2285
2285
  "description": "Deprecated aggregate: installs every viewer item (viewer-frame, viewer-markdown, viewer-html, viewer-image, viewer-pdf, viewer-code). Add the items you use instead.",
2286
2286
  "files": [],
2287
2287
  "registryDependencies": [
2288
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2289
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-markdown.json",
2290
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-html.json",
2291
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-image.json",
2292
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-pdf.json",
2293
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-code.json"
2288
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2289
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-markdown.json",
2290
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-html.json",
2291
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-image.json",
2292
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-pdf.json",
2293
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-code.json"
2294
2294
  ]
2295
2295
  },
2296
2296
  {
@@ -2304,7 +2304,7 @@
2304
2304
  "lucide-react@^1.51.0"
2305
2305
  ],
2306
2306
  "registryDependencies": [
2307
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
2307
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
2308
2308
  ],
2309
2309
  "files": [
2310
2310
  {
@@ -2320,9 +2320,9 @@
2320
2320
  "title": "Feedback",
2321
2321
  "description": "Feedback from the chat composer: one Feedback button starts feedback mode on the application page (hover, click to pin a numbered note, hold ⌥ to use the app, optional voice), and one chip carries the notes to the next message. FeedbackBar, NoteBubble, FeedbackChip with its review, useComposerFeedback for the pi-chat composer, and PickerOverlay styles. Optional, not mounted by default: PointButton, AnnotateSheet, FeedbackList and FeedbackReport. Picking, masking, anchoring and placement stay in @hachej/boring-feedback/page and /ui, so restyling cannot weaken them.",
2322
2322
  "dependencies": [
2323
- "@hachej/boring-feedback@^0.4.40",
2324
- "@hachej/boring-ui-kit@^0.4.40",
2325
- "@hachej/boring-files@^0.4.40",
2323
+ "@hachej/boring-feedback@^0.4.42",
2324
+ "@hachej/boring-ui-kit@^0.4.42",
2325
+ "@hachej/boring-files@^0.4.42",
2326
2326
  "react@^19.0.0",
2327
2327
  "react-dom@^19.0.0",
2328
2328
  "lucide-react@^1.51.0"
@@ -2790,9 +2790,9 @@
2790
2790
  }
2791
2791
  },
2792
2792
  "registryDependencies": [
2793
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
2794
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-voice.json",
2795
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
2793
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
2794
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-voice.json",
2795
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
2796
2796
  ]
2797
2797
  },
2798
2798
  {
@@ -2801,7 +2801,7 @@
2801
2801
  "title": "Feedback preview",
2802
2802
  "description": "PreviewBanner: a live, reversible preview of a change in the page (Approve / Discard) over `@hachej/boring-feedback/preview`, whose subagent calls models through a host gateway. Separate from `feedback` so annotation-only apps do not install the model SDK; install `feedback` first (its styles cover the banner).",
2803
2803
  "dependencies": [
2804
- "@hachej/boring-feedback@^0.4.40",
2804
+ "@hachej/boring-feedback@^0.4.42",
2805
2805
  "@earendil-works/pi-ai@~1.4.0",
2806
2806
  "react@^19.0.0"
2807
2807
  ],
@@ -2819,8 +2819,8 @@
2819
2819
  "title": "Consumer task-list viewer",
2820
2820
  "description": "A consumer-defined task-list schema and controller over the shared text buffer, with a restylable borrowed React renderer.",
2821
2821
  "dependencies": [
2822
- "@hachej/boring-ui-kit@^0.4.40",
2823
- "@hachej/boring-files@^0.4.40",
2822
+ "@hachej/boring-ui-kit@^0.4.42",
2823
+ "@hachej/boring-files@^0.4.42",
2824
2824
  "react@^19.0.0",
2825
2825
  "react-dom@^19.0.0",
2826
2826
  "zod@^4.6.5"
@@ -2870,11 +2870,11 @@
2870
2870
  "title": "Version history rows",
2871
2871
  "description": "Shared view-only version rows and menu metadata with relative time, provenance and Current. No file reads, publication or restoration.",
2872
2872
  "dependencies": [
2873
- "@hachej/boring-files@^0.4.40",
2873
+ "@hachej/boring-files@^0.4.42",
2874
2874
  "react@^19.0.0"
2875
2875
  ],
2876
2876
  "registryDependencies": [
2877
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json"
2877
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json"
2878
2878
  ],
2879
2879
  "files": [
2880
2880
  {
@@ -2890,14 +2890,14 @@
2890
2890
  "title": "File tree",
2891
2891
  "description": "Browse, search, upload, rename, move, delete and inspect retained versions through one revisionProvider binding. Uses the consumer's shadcn Button, dropdown-menu and dialog with shared version-history rows; Base UI style only.",
2892
2892
  "dependencies": [
2893
- "@hachej/boring-ui-kit@^0.4.40",
2894
- "@hachej/boring-files@^0.4.40",
2893
+ "@hachej/boring-ui-kit@^0.4.42",
2894
+ "@hachej/boring-files@^0.4.42",
2895
2895
  "react@^19.0.0",
2896
2896
  "lucide-react@^1.51.0"
2897
2897
  ],
2898
2898
  "registryDependencies": [
2899
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
2900
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/version-history.json"
2899
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
2900
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/version-history.json"
2901
2901
  ],
2902
2902
  "files": [
2903
2903
  {
@@ -2914,22 +2914,22 @@
2914
2914
  "title": "Documents: the Library, a file and its revisions",
2915
2915
  "description": "The workspace's Library as the list, the chosen file in its viewer and its retained revisions beside it (an older one opens read-only). DocumentSheet opens one document over the app for a host's « Voir la fiche », with an optional « Toutes les fiches ». Every read goes through one revisionProvider binding.",
2916
2916
  "dependencies": [
2917
- "@hachej/boring-ui-kit@^0.4.40",
2918
- "@hachej/boring-files@^0.4.40",
2917
+ "@hachej/boring-ui-kit@^0.4.42",
2918
+ "@hachej/boring-files@^0.4.42",
2919
2919
  "react@^19.0.0",
2920
2920
  "lucide-react@^1.51.0"
2921
2921
  ],
2922
2922
  "registryDependencies": [
2923
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
2924
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/button.json",
2925
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-artifacts.json",
2926
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-app.json",
2927
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-app-kinds.json",
2928
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/app-shell.json",
2929
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/file-tree.json",
2930
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json",
2931
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-image.json",
2932
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-pdf.json"
2923
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
2924
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/button.json",
2925
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-artifacts.json",
2926
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-app.json",
2927
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-app-kinds.json",
2928
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/app-shell.json",
2929
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/file-tree.json",
2930
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json",
2931
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-image.json",
2932
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-pdf.json"
2933
2933
  ],
2934
2934
  "files": [
2935
2935
  {
@@ -2965,15 +2965,15 @@
2965
2965
  "title": "Point and dictate on app data",
2966
2966
  "description": "Tap explicitly marked JSON app context, dictate once and show the same app agent’s native reply without opening chat. Host-controlled presentation; no feedback report or second controller.",
2967
2967
  "dependencies": [
2968
- "@hachej/boring-ui-kit@^0.4.40",
2969
- "@hachej/boring-feedback@^0.4.40",
2968
+ "@hachej/boring-ui-kit@^0.4.42",
2969
+ "@hachej/boring-feedback@^0.4.42",
2970
2970
  "@earendil-works/pi-durable@~1.4.0",
2971
2971
  "react@^19.0.0",
2972
2972
  "react-dom@^19.0.0"
2973
2973
  ],
2974
2974
  "registryDependencies": [
2975
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/app-shell.json",
2976
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json"
2975
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/app-shell.json",
2976
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json"
2977
2977
  ],
2978
2978
  "files": [
2979
2979
  {
@@ -2992,23 +2992,25 @@
2992
2992
  "name": "pm-panel",
2993
2993
  "type": "registry:block",
2994
2994
  "title": "Shared PM composer and in-app panel",
2995
- "description": "« Améliorer l'app »: one PmComposer (touch and desktop presets, FR/EN strings) with « Montrer », the point strip, numbered pins and timestamped chips; AppShell improve composes the in-flow sheet, strip and the full panel, and PmChat gives Studio the same conversation. Pins and chips come from the public feedback picker; the request card and « Mes demandes » render through StudioTaskBoardSeam (D-417).",
2995
+ "description": "« Améliorer l'app »: the embedded AgentWorkspace chat, History, read-only Library and host Tasks panel, with the shared pointing strip, numbered pins and timestamped chips. Docked beside the app on desktop and full screen on phones; PmChat gives Studio the same component.",
2996
2996
  "registryDependencies": [
2997
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
2998
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-markdown.json",
2999
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-plugins.json",
3000
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-voice.json",
3001
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/feedback.json",
3002
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/task-board.json",
3003
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/task-mentions.json",
3004
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json",
3005
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-artifacts.json",
3006
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/viewer-frame.json"
2997
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-app.json",
2998
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-app-kinds.json",
2999
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
3000
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-markdown.json",
3001
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-plugins.json",
3002
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-voice.json",
3003
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/feedback.json",
3004
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/task-board.json",
3005
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/task-mentions.json",
3006
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json",
3007
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-artifacts.json",
3008
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/viewer-frame.json"
3007
3009
  ],
3008
3010
  "dependencies": [
3009
- "@hachej/boring-ui-kit@^0.4.40",
3010
- "@hachej/boring-feedback@^0.4.40",
3011
- "@hachej/boring-files@^0.4.40",
3011
+ "@hachej/boring-ui-kit@^0.4.42",
3012
+ "@hachej/boring-feedback@^0.4.42",
3013
+ "@hachej/boring-files@^0.4.42",
3012
3014
  "@earendil-works/pi-durable@~1.4.0",
3013
3015
  "lucide-react@^1.51.0",
3014
3016
  "react@^19.0.0",
@@ -3035,6 +3037,21 @@
3035
3037
  "type": "registry:lib",
3036
3038
  "target": "components/pm-panel/point-state.ts"
3037
3039
  },
3040
+ {
3041
+ "path": "registry/pm-panel/use-point-page.ts",
3042
+ "type": "registry:hook",
3043
+ "target": "components/pm-panel/use-point-page.ts"
3044
+ },
3045
+ {
3046
+ "path": "registry/pm-panel/point-frames.ts",
3047
+ "type": "registry:hook",
3048
+ "target": "components/pm-panel/point-frames.ts"
3049
+ },
3050
+ {
3051
+ "path": "registry/pm-panel/pm-host-theme.ts",
3052
+ "type": "registry:hook",
3053
+ "target": "components/pm-panel/pm-host-theme.ts"
3054
+ },
3038
3055
  {
3039
3056
  "path": "registry/pm-panel/capture.ts",
3040
3057
  "type": "registry:lib",
@@ -3074,11 +3091,6 @@
3074
3091
  "path": "registry/pm-panel/use-improve-agent.ts",
3075
3092
  "type": "registry:hook",
3076
3093
  "target": "components/pm-panel/use-improve-agent.ts"
3077
- },
3078
- {
3079
- "path": "registry/pm-panel/pm-mockups.tsx",
3080
- "type": "registry:component",
3081
- "target": "components/pm-panel/pm-mockups.tsx"
3082
3094
  }
3083
3095
  ]
3084
3096
  },
@@ -3088,7 +3100,7 @@
3088
3100
  "title": "Requests board",
3089
3101
  "description": "Host-fed compact requests and responsive list/detail with questions and decisions.",
3090
3102
  "registryDependencies": [
3091
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
3103
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
3092
3104
  ],
3093
3105
  "files": [
3094
3106
  {
@@ -3117,13 +3129,13 @@
3117
3129
  "title": "Anchored highlights",
3118
3130
  "description": "Exact Markdown highlights and comments in a conditional workspace sidecar.",
3119
3131
  "dependencies": [
3120
- "@hachej/boring-ui-kit@^0.4.40",
3121
- "@hachej/boring-files@^0.4.40",
3132
+ "@hachej/boring-ui-kit@^0.4.42",
3133
+ "@hachej/boring-files@^0.4.42",
3122
3134
  "react@^19.0.0",
3123
3135
  "react-dom@^19.0.0"
3124
3136
  ],
3125
3137
  "registryDependencies": [
3126
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/markdown-editor.json"
3138
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/markdown-editor.json"
3127
3139
  ],
3128
3140
  "files": [
3129
3141
  {
@@ -3144,7 +3156,7 @@
3144
3156
  "lucide-react@^1.51.0"
3145
3157
  ],
3146
3158
  "registryDependencies": [
3147
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
3159
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
3148
3160
  ],
3149
3161
  "files": [
3150
3162
  {
@@ -3160,14 +3172,14 @@
3160
3172
  "title": "Task mentions",
3161
3173
  "description": "Optional authorized task catalog for the existing PM composer, composed with host file search.",
3162
3174
  "dependencies": [
3163
- "@hachej/boring-ui-kit@^0.4.40",
3175
+ "@hachej/boring-ui-kit@^0.4.42",
3164
3176
  "react@^19.0.0",
3165
3177
  "lucide-react@^1.51.0"
3166
3178
  ],
3167
3179
  "registryDependencies": [
3168
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/task-board.json",
3169
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat.json",
3170
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/pi-chat-mentions.json"
3180
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/task-board.json",
3181
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat.json",
3182
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/pi-chat-mentions.json"
3171
3183
  ],
3172
3184
  "files": [
3173
3185
  {
@@ -3183,12 +3195,12 @@
3183
3195
  "title": "Task board",
3184
3196
  "description": "Host-owned business requests: board, stacked task/file overlays and compact own-request rows. No agent or task backend required.",
3185
3197
  "dependencies": [
3186
- "@hachej/boring-ui-kit@^0.4.40",
3198
+ "@hachej/boring-ui-kit@^0.4.42",
3187
3199
  "react@^19.0.0",
3188
3200
  "lucide-react@^1.51.0"
3189
3201
  ],
3190
3202
  "registryDependencies": [
3191
- "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.40/r/utils.json"
3203
+ "https://cdn.jsdelivr.net/npm/@hachej/boring-ui-kit@0.4.42/r/utils.json"
3192
3204
  ],
3193
3205
  "files": [
3194
3206
  {