yarramate 0.20.0 → 0.22.0
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/dist/adapters/visual/protocol-contract.d.ts +13 -1
- package/dist/adapters/visual/protocol-contract.js +1 -1
- package/dist/adapters/visual/protocol.d.ts +11 -0
- package/dist/adapters/visual/protocol.js +12 -0
- package/dist/adapters/visual/request.js +1 -3
- package/dist/adapters/visual/session-server.js +55 -1
- package/dist/adapters/visual/wire.d.ts +7 -0
- package/dist/adapters/visual-graph-entry.d.ts +1 -0
- package/dist/adapters/visual-graph-entry.js +1 -0
- package/dist/apply-command.js +132 -13
- package/dist/compiler.d.ts +1 -19
- package/dist/compiler.js +2 -35
- package/dist/graph-claims.d.ts +18 -0
- package/dist/graph-claims.js +35 -0
- package/dist/graph-projection.d.ts +4 -3
- package/dist/graph-projection.js +1 -1
- package/dist/notation/archimate.d.ts +71 -0
- package/dist/notation/archimate.js +183 -0
- package/dist/operations.d.ts +18 -0
- package/dist/subject-references.d.ts +92 -0
- package/dist/subject-references.js +226 -0
- package/dist/visual-app/assets/index-CRd1Khma.js +354 -0
- package/dist/visual-app/assets/{index-dwA9AOr5.css → index-tZSHlU-a.css} +1 -1
- package/dist/visual-app/index.html +2 -2
- package/docs/CONSUMING-YARRAMATE.md +26 -1
- package/package.json +9 -1
- package/schema/yarramate-apply-result.schema.json +4 -0
- package/schema/yarramate-operations.schema.json +54 -3
- package/schema/yarramate-visual-event.schema.json +11 -1
- package/schema/yarramate-visual-graph.schema.json +27 -2
- package/schema/yarramate-visual-session-descriptor.schema.json +1 -1
- package/schema/yarramate-visual-session-started.schema.json +1 -1
- package/schema/yarramate-visual-status.schema.json +1 -1
- package/dist/visual-app/assets/index-6oSR9RGM.js +0 -354
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--paper:#e8eef0;--ink:#182228;--eucalyptus:#416f65;--ochre:#8c4d18;--cobalt:#2457a6;--failure:#a3403a;--sheet:color-mix(in oklab, var(--paper) 55%, white);--rule:color-mix(in oklab, var(--ink) 16%, transparent);--rule-firm:color-mix(in oklab, var(--ink) 34%, transparent);--quiet:color-mix(in oklab, var(--ink) 62%, var(--paper));--display:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--body:"Avenir Next", Avenir, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--utility:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--step:.5rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}.offscreen{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visual-shell{background:var(--paper);min-width:0;height:100dvh;color:var(--ink);grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.command-strip{z-index:10;justify-content:space-between;align-items:center;gap:calc(var(--step) * 2);min-height:48px;padding:calc(var(--step) * .75) calc(var(--step) * 2);border-bottom:1px solid var(--rule);background:var(--sheet);flex-wrap:wrap;display:flex;position:relative}.command-identity,.command-actions{align-items:center;gap:var(--step);min-width:0;display:flex}.command-identity{flex:10rem}.command-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end}.command-identity h1{min-width:8ch;font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;line-height:1.2;overflow:hidden}.command-actions select,.command-actions button,.command-actions .quick-filter{min-height:32px;font-family:var(--utility);letter-spacing:.08em;color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:0 .7rem;font-size:12px}.command-actions select{text-overflow:ellipsis;max-width:12rem}.command-actions .quick-filter{cursor:text;width:160px}.command-actions .quick-filter::placeholder{color:var(--quiet)}.command-actions select{padding-right:.35rem}.command-actions select:hover:enabled,.command-actions button:hover:enabled,.command-actions .quick-filter:hover,.command-actions .quick-filter:focus{border-color:var(--cobalt)}.command-actions select:disabled,.command-actions button:disabled{color:var(--quiet);border-color:var(--rule);cursor:not-allowed;background:0 0}.command-actions button[aria-expanded=true]{color:var(--paper);background:var(--cobalt);border-color:var(--cobalt)}.command-actions .end-session:hover:enabled{color:var(--paper);background:var(--failure);border-color:var(--failure)}.connection-state{font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;color:var(--quiet);flex:none;font-size:11px}.end-transition-status{max-width:28rem;font-family:var(--utility);color:var(--quiet);font-size:11px;line-height:1.25}.end-transition-status:empty{display:none}.direction-notice{max-width:16rem;font-family:var(--utility);color:var(--quiet);font-size:11px;line-height:1.25}.direction-notice:empty{display:none}.authority{white-space:nowrap;font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;color:var(--eucalyptus);flex:none;margin:0;font-size:11px}.authority:before{content:"";vertical-align:0;background:currentColor;width:.5rem;height:.5rem;margin-right:.5rem;display:inline-block}.beta-badge{font-family:var(--utility);letter-spacing:.1em;text-transform:uppercase;color:var(--ochre);border:1px solid var(--ochre);flex:none;padding:.05rem .4rem;font-size:10px;font-weight:600}.session-details{align-items:flex-start;gap:calc(var(--step) * 2);padding:var(--step) calc(var(--step) * 2) calc(var(--step) * 1.5);border-bottom:1px solid var(--rule);background:var(--sheet);display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 28px #1323391f}.session-details[hidden]{display:none}.session-details p{max-width:90ch;color:var(--quiet);margin:0}.details-close{min-height:28px;font-family:var(--utility);letter-spacing:.08em;color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;flex:none;margin-left:auto;padding:0 .6rem;font-size:11px}.details-close:hover{border-color:var(--cobalt)}.attention-count{background:var(--cobalt);color:#fff;text-align:center;border-radius:999px;min-width:1.25rem;padding:0 .35rem;font-size:11px}.workspace{min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-conversation-open{grid-template-columns:minmax(0, 1fr) auto var(--conversation-width)}.workspace-conversation-closed{grid-template-columns:minmax(0,1fr)}.diagram-workspace{background:var(--paper);min-width:0;min-height:0;position:relative;overflow:hidden}.canvas{width:100%;min-width:0;height:100%;min-height:0}.diagram-workspace>.faults{z-index:4;max-height:50%;position:absolute;inset:auto 0 0;overflow:auto}.diagram-workspace>.filter-pill{inset:var(--step) auto auto var(--step);z-index:4;align-items:center;gap:var(--step);max-width:min(52ch, calc(100% - var(--step) * 2));border:1px solid var(--rule-firm);background:var(--sheet);font-family:var(--utility);color:var(--ink);border-radius:999px;padding:.35rem .7rem;font-size:12px;display:flex;position:absolute}.filter-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filter-pill code{font-weight:700}.filter-pill button{color:var(--cobalt);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none;flex:none;padding:0;text-decoration:underline}.filter-pill button:hover{color:var(--ink)}.conversation-separator{z-index:3;cursor:col-resize;touch-action:none;width:10px;height:100%;position:relative}.conversation-separator:before{background:var(--rule);content:"";width:1px;position:absolute;inset:0 auto 0 4px}.conversation-separator:hover:before,.conversation-separator:focus-visible:before{background:var(--cobalt);width:2px}.waiting{padding:calc(var(--step) * 4);font-family:var(--utility);letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);margin:0;font-size:12px}.talk{border-left:1px solid var(--rule);background:var(--sheet);grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.talk[hidden]{display:none}.conversation-scroll{min-width:0;min-height:0;overflow:auto}.subject-inspector{min-width:0;padding:calc(var(--step) * 1.5);border-bottom:1px solid var(--rule);background:color-mix(in srgb, var(--sheet) 92%, var(--cobalt) 8%)}.subject-heading-row{justify-content:space-between;align-items:flex-start;gap:var(--step);min-width:0;display:flex}.subject-heading-row>:first-child,.subject-heading-row h2{min-width:0}.subject-type{margin:0 0 calc(var(--step) * .25);color:var(--quiet);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.subject-heading-row h2{font-family:var(--display);overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.25}.subject-facts{gap:calc(var(--step) * .5);margin:var(--step) 0;display:grid}.subject-facts>div{gap:var(--step);grid-template-columns:minmax(5.5rem,auto) minmax(0,1fr);display:grid}.subject-facts dt{color:var(--quiet);font-size:11px}.subject-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.subject-description p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.description-clamped{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.subject-description button,.subject-navigate,.subject-clear{margin-top:calc(var(--step) * .5);min-height:28px}.ledger{padding:calc(var(--step) * 2) calc(var(--step) * 2.5);min-height:0;margin:0;list-style:none;overflow:visible}.ledger .empty p{color:var(--quiet);font-family:var(--utility);margin:0;font-size:12px}.said{padding:0 0 calc(var(--step) * 1.75) calc(var(--step) * 1.5);border-left:2px solid var(--rule)}.said+.said{padding-top:calc(var(--step) * 1.75)}.said-reviewer{border-left-color:var(--cobalt)}.said-agent{border-left-color:var(--eucalyptus)}.said-session{border-left-color:var(--ochre)}.who{font-family:var(--utility);letter-spacing:.16em;text-transform:uppercase;color:var(--quiet);margin:0 0 .15rem;font-size:10px}.words{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.faults{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5);border-top:1px solid var(--failure);background:color-mix(in oklab, var(--failure) 8%, var(--sheet))}.faults-title{margin:0 0 var(--step);color:var(--failure);font-size:13px}.faults ul{font-family:var(--utility);margin:0;padding-left:1.1rem;font-size:11px;line-height:1.6}.faults .code{font-weight:700}.faults .where{color:var(--quiet);margin-left:.4rem}.choices{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5);border-top:1px solid var(--rule)}.question{margin:0 0 var(--step);font-family:var(--display);font-size:1.05rem}.choices ul{gap:var(--step);margin:0;padding:0;list-style:none;display:grid}.choices button{text-align:left;width:100%;font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:.5rem .7rem;font-size:14px;display:block}.choices button:hover:enabled{border-color:var(--cobalt)}.choices button:disabled{color:var(--quiet);cursor:not-allowed}.choices .detail{color:var(--quiet);font-size:12px;display:block}.composer{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5) calc(var(--step) * 2);border-top:1px solid var(--rule)}.composer textarea{resize:vertical;width:100%;font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);border-radius:0;padding:.55rem .65rem;font-size:14px;display:block}.composer textarea:disabled{color:var(--quiet);background:color-mix(in oklab, var(--paper) 70%, var(--sheet));cursor:not-allowed}.composer-foot{justify-content:space-between;align-items:center;gap:var(--step);margin-top:var(--step);display:flex}.agent-status{align-items:center;gap:calc(var(--step) * .5);font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;color:var(--quiet);margin:0;font-size:10px;display:flex}.agent-spinner{border:1px solid;border-right-color:#0000;border-radius:50%;flex:none;width:.75rem;height:.75rem;animation:.7s linear infinite agent-spinner-turn}@keyframes agent-spinner-turn{to{transform:rotate(1turn)}}.composer button{font-family:var(--utility);letter-spacing:.08em;color:var(--paper);background:var(--cobalt);border:1px solid var(--cobalt);cursor:pointer;border-radius:0;padding:.45rem 1.1rem;font-size:12px}.composer button:disabled{color:var(--quiet);border-color:var(--rule-firm);cursor:not-allowed;background:0 0}.subject-chip{justify-content:space-between;align-items:center;gap:var(--step);margin-bottom:calc(var(--step) * .75);padding:calc(var(--step) * .5) calc(var(--step) * .75);border:1px solid var(--cobalt);color:var(--cobalt);border-radius:999px;display:flex}.subject-chip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.subject-chip button{min-height:24px;padding:0 calc(var(--step) * .5);color:inherit;background:0 0;border:0;flex:none}.filter-panel{position:relative}.filter-panel>button{min-height:32px;font-family:var(--utility);letter-spacing:.08em;color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:0 .7rem;font-size:12px}.filter-panel>button:hover:enabled{border-color:var(--cobalt)}.filter-panel>button[aria-expanded=true]{color:var(--paper);background:var(--cobalt);border-color:var(--cobalt)}.filter-panel-body{z-index:9;min-width:320px;max-width:480px;padding:calc(var(--step) * 1.5);border:1px solid var(--rule-firm);background:var(--sheet);border-top:none;margin-top:-1px;position:absolute;top:100%;left:0;box-shadow:0 12px 28px #1323391f}.filter-panel-body[hidden]{display:none}.filter-grid{gap:calc(var(--step) * 1.5);grid-template-columns:1fr;display:grid}.filter-field{gap:calc(var(--step) * .75);flex-direction:column;display:flex}.filter-field>label,.filter-field legend{font-family:var(--utility);letter-spacing:.08em;text-transform:uppercase;color:var(--quiet);font-size:11px}.tag-input{align-items:center;gap:var(--step);padding:calc(var(--step) * .5);border:1px solid var(--rule-firm);background:var(--paper);border-radius:2px;flex-wrap:wrap;display:flex}.tag-input input{min-width:80px;font:inherit;background:0 0;border:none;flex:1;font-size:15px}.tag-input input:focus{outline:none}.tag-chip{background:var(--cobalt);color:var(--paper);border-radius:2px;align-items:center;gap:.4rem;padding:.2rem .6rem;font-size:13px;display:inline-flex}.tag-chip button{color:currentColor;cursor:pointer;background:0 0;border:none;min-width:0;min-height:0;margin:0;padding:0;font-size:16px;line-height:1;display:inline}.tag-chip button:hover{opacity:.8}.filter-field select{font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:.4rem .7rem;font-size:15px}.filter-field select:hover{border-color:var(--cobalt)}.filter-checkbox-group{border:none;margin:0;padding:0}.filter-checkbox-option{cursor:pointer;align-items:center;gap:.5rem;padding:.4rem 0;font-size:15px;display:flex}.filter-checkbox-option input{cursor:pointer}@media (max-width:899px){.command-strip{gap:calc(var(--step) * .5);padding-inline:var(--step)}.command-identity,.command-actions{gap:calc(var(--step) * .5)}.workspace{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:0}.conversation-separator{display:none}.talk{border-top:1px solid var(--rule);border-left:0;border-radius:18px 18px 0 0;max-height:56dvh;box-shadow:0 -12px 36px #13233924}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.save-view-control{display:contents}.save-view-toggle{padding:0 calc(var(--step) * .75rem);border:1px solid var(--rule-firm);background:var(--paper);height:32px;color:var(--ink);cursor:pointer;border-radius:2px;font-size:13px}.save-view-toggle:hover:not(:disabled){border-color:var(--rule);background:color-mix(in oklab, var(--paper) 90%, var(--ink))}.save-view-toggle:disabled{opacity:.5;cursor:not-allowed}.save-view-panel{background:var(--sheet);border:1px solid var(--rule-firm);z-index:10;border-radius:4px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 2px 8px #0000001f}.save-view-panel-body{padding:calc(var(--step) * 1.5);min-width:300px}.save-view-form{gap:calc(var(--step) * 1);flex-direction:column;display:flex}.save-view-form div{gap:calc(var(--step) * .5);flex-direction:column;display:flex}.save-view-form label{color:var(--ink);font-size:12px;font-weight:500}.save-view-form input,.save-view-form textarea{padding:calc(var(--step) * .5);border:1px solid var(--rule);font-family:var(--body);border-radius:2px;font-size:13px}.save-view-actions{gap:calc(var(--step) * 1);margin-top:calc(var(--step) * .5);display:flex}.save-view-actions button{padding:calc(var(--step) * .5) calc(var(--step) * 1);border:1px solid var(--rule-firm);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:2px;flex:1;font-size:13px}.save-view-actions button:hover:not(:disabled){background:color-mix(in oklab, var(--paper) 85%, var(--ink))}.save-view-notice{align-items:center;gap:calc(var(--step) * .75);padding:calc(var(--step) * .75) calc(var(--step) * 1.5);background:color-mix(in oklab, var(--eucalyptus) 15%, var(--sheet));border:1px solid var(--eucalyptus);color:var(--ink);border-radius:4px;font-size:13px;display:flex}.save-view-notice button{padding:0 calc(var(--step) * .5);color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:11px;text-decoration:underline}.confirm-dialog-backdrop{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{background:var(--sheet);border:1px solid var(--rule-firm);padding:calc(var(--step) * 2);text-align:center;border-radius:8px;max-width:400px;box-shadow:0 8px 24px #00000029}.confirm-dialog h2{margin:0 0 calc(var(--step) * 1) 0;font-size:16px}.confirm-dialog p{margin:0 0 calc(var(--step) * 1.5) 0;color:var(--quiet);font-size:13px}.confirm-dialog-actions{gap:calc(var(--step) * 1);display:flex}.confirm-dialog-actions button{padding:calc(var(--step) * .75);border:1px solid var(--rule-firm);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:2px;flex:1;font-size:13px}.confirm-dialog-actions button:hover{background:color-mix(in oklab, var(--paper) 85%, var(--ink))}.changeset-tray{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5);border-top:1px solid var(--rule);background:color-mix(in srgb, var(--sheet) 92%, var(--cobalt) 8%)}.changeset-heading-row{justify-content:space-between;align-items:baseline;gap:var(--step);display:flex}.changeset-heading-row h2{font-family:var(--display);margin:0;font-size:15px}.changeset-discard-all{color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.changeset-rows{margin:var(--step) 0 0;gap:calc(var(--step) * .75);padding:0;list-style:none;display:grid}.changeset-row{padding:calc(var(--step) * .75);border:1px solid var(--rule-firm);background:var(--paper);border-radius:2px}.changeset-row-line{justify-content:space-between;align-items:center;gap:var(--step);display:flex}.changeset-row-label{overflow-wrap:anywhere;min-width:0;font-family:var(--utility);color:var(--ink);font-size:12px}.changeset-row-discard{color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:11px;text-decoration:underline}.changeset-row-diagnostics,.changeset-batch-diagnostics{margin:calc(var(--step) * .5) 0 0;font-family:var(--utility);color:var(--failure);padding-left:1.1rem;font-size:11px}.changeset-batch-diagnostics{margin:0 0 var(--step)}.changeset-row-diagnostics .code,.changeset-batch-diagnostics .code{font-weight:700}.changeset-row-diagnostics .where,.changeset-batch-diagnostics .where{color:var(--quiet);margin-left:.4rem}.changeset-actions{margin-top:var(--step)}.changeset-commit{width:100%;padding:calc(var(--step) * .75);border:1px solid var(--cobalt);background:var(--cobalt);color:var(--paper);cursor:pointer;border-radius:2px;font-size:13px}.changeset-commit:disabled{border-color:var(--rule-firm);color:var(--quiet);cursor:not-allowed;background:0 0}.changeset-notice{margin-top:var(--step);padding:calc(var(--step) * .75) calc(var(--step) * 1);border:1px solid var(--eucalyptus);background:color-mix(in oklab, var(--eucalyptus) 15%, var(--sheet));color:var(--ink);border-radius:4px;font-size:12px}.changeset-notice p{margin:0 0 calc(var(--step) * .25);font-weight:700}.changeset-notice ul{font-family:var(--utility);margin:0;padding-left:1.1rem}.layout-notice-pill{inset:var(--step) var(--step) auto auto;z-index:4;align-items:center;gap:var(--step);max-width:calc(100% - var(--step) * 2);border:1px solid var(--rule-firm);background:var(--sheet);font-family:var(--utility);color:var(--ink);border-radius:999px;padding:.35rem .7rem;font-size:12px;display:flex;position:absolute}.layout-notice-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-form{gap:calc(var(--step) * 1.25);margin:calc(var(--step) * 1) 0;flex-direction:column;display:flex}.subject-form-field{gap:calc(var(--step) * .35);flex-direction:column;display:flex}.subject-form-label{font-family:var(--utility);letter-spacing:.02em;text-transform:uppercase;color:var(--quiet);font-size:11px}.subject-form-field input[type=text],.subject-form-field select{border:1px solid var(--rule-firm);border-radius:calc(var(--step) * .5);background:var(--paper);font-family:var(--body);color:var(--ink);padding:.35rem .5rem;font-size:13px}.subject-form-list{border-top:1px solid var(--rule);padding-top:calc(var(--step) * .75)}.subject-form-row{align-items:flex-start;gap:calc(var(--step) * .5);margin-bottom:calc(var(--step) * .5);display:flex}.subject-form-row-body{align-items:center;gap:calc(var(--step) * .5);flex-wrap:wrap;flex:1;display:flex}.subject-form-toggle{align-items:center;gap:calc(var(--step) * .35);font-family:var(--utility);color:var(--quiet);font-size:12px;display:flex}.subject-form-row-add,.subject-form-row-remove{border:1px solid var(--rule-firm);border-radius:calc(var(--step) * .5);background:var(--sheet);font-family:var(--utility);cursor:pointer;padding:.25rem .6rem;font-size:12px}
|
|
1
|
+
:root{--paper:#e8eef0;--ink:#182228;--eucalyptus:#416f65;--ochre:#8c4d18;--cobalt:#2457a6;--failure:#a3403a;--sheet:color-mix(in oklab, var(--paper) 55%, white);--rule:color-mix(in oklab, var(--ink) 16%, transparent);--rule-firm:color-mix(in oklab, var(--ink) 34%, transparent);--quiet:color-mix(in oklab, var(--ink) 62%, var(--paper));--display:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--body:"Avenir Next", Avenir, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--utility:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--step:.5rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}.offscreen{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visual-shell{background:var(--paper);min-width:0;height:100dvh;color:var(--ink);grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.command-strip{z-index:10;justify-content:space-between;align-items:center;gap:calc(var(--step) * 2);min-height:48px;padding:calc(var(--step) * .75) calc(var(--step) * 2);border-bottom:1px solid var(--rule);background:var(--sheet);flex-wrap:wrap;display:flex;position:relative}.command-identity,.command-actions{align-items:center;gap:var(--step);min-width:0;display:flex}.command-identity{flex:10rem}.command-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end}.command-identity h1{min-width:8ch;font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;line-height:1.2;overflow:hidden}.command-actions select,.command-actions button,.command-actions .quick-filter{min-height:32px;font-family:var(--utility);letter-spacing:.08em;color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:0 .7rem;font-size:12px}.command-actions select{text-overflow:ellipsis;max-width:12rem}.command-actions .quick-filter{cursor:text;width:160px}.command-actions .quick-filter::placeholder{color:var(--quiet)}.command-actions select{padding-right:.35rem}.command-actions select:hover:enabled,.command-actions button:hover:enabled,.command-actions .quick-filter:hover,.command-actions .quick-filter:focus{border-color:var(--cobalt)}.command-actions select:disabled,.command-actions button:disabled{color:var(--quiet);border-color:var(--rule);cursor:not-allowed;background:0 0}.command-actions button[aria-expanded=true]{color:var(--paper);background:var(--cobalt);border-color:var(--cobalt)}.command-actions .end-session:hover:enabled{color:var(--paper);background:var(--failure);border-color:var(--failure)}.connection-state{font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;color:var(--quiet);flex:none;font-size:11px}.end-transition-status{max-width:28rem;font-family:var(--utility);color:var(--quiet);font-size:11px;line-height:1.25}.end-transition-status:empty{display:none}.direction-notice{max-width:16rem;font-family:var(--utility);color:var(--quiet);font-size:11px;line-height:1.25}.direction-notice:empty{display:none}.authority{white-space:nowrap;font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;color:var(--eucalyptus);flex:none;margin:0;font-size:11px}.authority:before{content:"";vertical-align:0;background:currentColor;width:.5rem;height:.5rem;margin-right:.5rem;display:inline-block}.beta-badge{font-family:var(--utility);letter-spacing:.1em;text-transform:uppercase;color:var(--ochre);border:1px solid var(--ochre);flex:none;padding:.05rem .4rem;font-size:10px;font-weight:600}.session-details{align-items:flex-start;gap:calc(var(--step) * 2);padding:var(--step) calc(var(--step) * 2) calc(var(--step) * 1.5);border-bottom:1px solid var(--rule);background:var(--sheet);display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 28px #1323391f}.session-details[hidden]{display:none}.session-details p{max-width:90ch;color:var(--quiet);margin:0}.details-close{min-height:28px;font-family:var(--utility);letter-spacing:.08em;color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;flex:none;margin-left:auto;padding:0 .6rem;font-size:11px}.details-close:hover{border-color:var(--cobalt)}.attention-count{background:var(--cobalt);color:#fff;text-align:center;border-radius:999px;min-width:1.25rem;padding:0 .35rem;font-size:11px}.workspace{min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-conversation-open{grid-template-columns:minmax(0, 1fr) auto var(--conversation-width)}.workspace-conversation-closed{grid-template-columns:minmax(0,1fr)}.diagram-workspace{background:var(--paper);min-width:0;min-height:0;position:relative;overflow:hidden}.canvas{width:100%;min-width:0;height:100%;min-height:0}.diagram-workspace>.faults{z-index:4;max-height:50%;position:absolute;inset:auto 0 0;overflow:auto}.diagram-workspace>.filter-pill{inset:var(--step) auto auto var(--step);z-index:4;align-items:center;gap:var(--step);max-width:min(52ch, calc(100% - var(--step) * 2));border:1px solid var(--rule-firm);background:var(--sheet);font-family:var(--utility);color:var(--ink);border-radius:999px;padding:.35rem .7rem;font-size:12px;display:flex;position:absolute}.filter-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filter-pill code{font-weight:700}.filter-pill button{color:var(--cobalt);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none;flex:none;padding:0;text-decoration:underline}.filter-pill button:hover{color:var(--ink)}.conversation-separator{z-index:3;cursor:col-resize;touch-action:none;width:10px;height:100%;position:relative}.conversation-separator:before{background:var(--rule);content:"";width:1px;position:absolute;inset:0 auto 0 4px}.conversation-separator:hover:before,.conversation-separator:focus-visible:before{background:var(--cobalt);width:2px}.waiting{padding:calc(var(--step) * 4);font-family:var(--utility);letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);margin:0;font-size:12px}.talk{border-left:1px solid var(--rule);background:var(--sheet);grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.talk[hidden]{display:none}.conversation-scroll{min-width:0;min-height:0;overflow:auto}.subject-inspector{min-width:0;padding:calc(var(--step) * 1.5);border-bottom:1px solid var(--rule);background:color-mix(in srgb, var(--sheet) 92%, var(--cobalt) 8%)}.subject-heading-row{justify-content:space-between;align-items:flex-start;gap:var(--step);min-width:0;display:flex}.subject-heading-row>:first-child,.subject-heading-row h2{min-width:0}.subject-type{margin:0 0 calc(var(--step) * .25);color:var(--quiet);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.subject-heading-row h2{font-family:var(--display);overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.25}.subject-facts{gap:calc(var(--step) * .5);margin:var(--step) 0;display:grid}.subject-facts>div{gap:var(--step);grid-template-columns:minmax(5.5rem,auto) minmax(0,1fr);display:grid}.subject-facts dt{color:var(--quiet);font-size:11px}.subject-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.subject-description p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.description-clamped{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.subject-description button,.subject-navigate,.subject-clear{margin-top:calc(var(--step) * .5);min-height:28px}.ledger{padding:calc(var(--step) * 2) calc(var(--step) * 2.5);min-height:0;margin:0;list-style:none;overflow:visible}.ledger .empty p{color:var(--quiet);font-family:var(--utility);margin:0;font-size:12px}.said{padding:0 0 calc(var(--step) * 1.75) calc(var(--step) * 1.5);border-left:2px solid var(--rule)}.said+.said{padding-top:calc(var(--step) * 1.75)}.said-reviewer{border-left-color:var(--cobalt)}.said-agent{border-left-color:var(--eucalyptus)}.said-session{border-left-color:var(--ochre)}.who{font-family:var(--utility);letter-spacing:.16em;text-transform:uppercase;color:var(--quiet);margin:0 0 .15rem;font-size:10px}.words{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.faults{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5);border-top:1px solid var(--failure);background:color-mix(in oklab, var(--failure) 8%, var(--sheet))}.faults-title{margin:0 0 var(--step);color:var(--failure);font-size:13px}.faults ul{font-family:var(--utility);margin:0;padding-left:1.1rem;font-size:11px;line-height:1.6}.faults .code{font-weight:700}.faults .where{color:var(--quiet);margin-left:.4rem}.choices{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5);border-top:1px solid var(--rule)}.question{margin:0 0 var(--step);font-family:var(--display);font-size:1.05rem}.choices ul{gap:var(--step);margin:0;padding:0;list-style:none;display:grid}.choices button{text-align:left;width:100%;font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:.5rem .7rem;font-size:14px;display:block}.choices button:hover:enabled{border-color:var(--cobalt)}.choices button:disabled{color:var(--quiet);cursor:not-allowed}.choices .detail{color:var(--quiet);font-size:12px;display:block}.composer{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5) calc(var(--step) * 2);border-top:1px solid var(--rule)}.composer textarea{resize:vertical;width:100%;font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);border-radius:0;padding:.55rem .65rem;font-size:14px;display:block}.composer textarea:disabled{color:var(--quiet);background:color-mix(in oklab, var(--paper) 70%, var(--sheet));cursor:not-allowed}.composer-foot{justify-content:space-between;align-items:center;gap:var(--step);margin-top:var(--step);display:flex}.agent-status{align-items:center;gap:calc(var(--step) * .5);font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;color:var(--quiet);margin:0;font-size:10px;display:flex}.agent-spinner{border:1px solid;border-right-color:#0000;border-radius:50%;flex:none;width:.75rem;height:.75rem;animation:.7s linear infinite agent-spinner-turn}@keyframes agent-spinner-turn{to{transform:rotate(1turn)}}.composer button{font-family:var(--utility);letter-spacing:.08em;color:var(--paper);background:var(--cobalt);border:1px solid var(--cobalt);cursor:pointer;border-radius:0;padding:.45rem 1.1rem;font-size:12px}.composer button:disabled{color:var(--quiet);border-color:var(--rule-firm);cursor:not-allowed;background:0 0}.subject-chip{justify-content:space-between;align-items:center;gap:var(--step);margin-bottom:calc(var(--step) * .75);padding:calc(var(--step) * .5) calc(var(--step) * .75);border:1px solid var(--cobalt);color:var(--cobalt);border-radius:999px;display:flex}.subject-chip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.subject-chip button{min-height:24px;padding:0 calc(var(--step) * .5);color:inherit;background:0 0;border:0;flex:none}.filter-panel{position:relative}.filter-panel>button{min-height:32px;font-family:var(--utility);letter-spacing:.08em;color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:0 .7rem;font-size:12px}.filter-panel>button:hover:enabled{border-color:var(--cobalt)}.filter-panel>button[aria-expanded=true]{color:var(--paper);background:var(--cobalt);border-color:var(--cobalt)}.filter-panel-body{z-index:9;min-width:320px;max-width:480px;padding:calc(var(--step) * 1.5);border:1px solid var(--rule-firm);background:var(--sheet);border-top:none;margin-top:-1px;position:absolute;top:100%;left:0;box-shadow:0 12px 28px #1323391f}.filter-panel-body[hidden]{display:none}.filter-grid{gap:calc(var(--step) * 1.5);grid-template-columns:1fr;display:grid}.filter-field{gap:calc(var(--step) * .75);flex-direction:column;display:flex}.filter-field>label,.filter-field legend{font-family:var(--utility);letter-spacing:.08em;text-transform:uppercase;color:var(--quiet);font-size:11px}.tag-input{align-items:center;gap:var(--step);padding:calc(var(--step) * .5);border:1px solid var(--rule-firm);background:var(--paper);border-radius:2px;flex-wrap:wrap;display:flex}.tag-input input{min-width:80px;font:inherit;background:0 0;border:none;flex:1;font-size:15px}.tag-input input:focus{outline:none}.tag-chip{background:var(--cobalt);color:var(--paper);border-radius:2px;align-items:center;gap:.4rem;padding:.2rem .6rem;font-size:13px;display:inline-flex}.tag-chip button{color:currentColor;cursor:pointer;background:0 0;border:none;min-width:0;min-height:0;margin:0;padding:0;font-size:16px;line-height:1;display:inline}.tag-chip button:hover{opacity:.8}.filter-field select{font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--rule-firm);cursor:pointer;border-radius:0;padding:.4rem .7rem;font-size:15px}.filter-field select:hover{border-color:var(--cobalt)}.filter-checkbox-group{border:none;margin:0;padding:0}.filter-checkbox-option{cursor:pointer;align-items:center;gap:.5rem;padding:.4rem 0;font-size:15px;display:flex}.filter-checkbox-option input{cursor:pointer}@media (max-width:899px){.command-strip{gap:calc(var(--step) * .5);padding-inline:var(--step)}.command-identity,.command-actions{gap:calc(var(--step) * .5)}.workspace{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:0}.conversation-separator{display:none}.talk{border-top:1px solid var(--rule);border-left:0;border-radius:18px 18px 0 0;max-height:56dvh;box-shadow:0 -12px 36px #13233924}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.save-view-control{display:contents}.save-view-toggle{padding:0 calc(var(--step) * .75rem);border:1px solid var(--rule-firm);background:var(--paper);height:32px;color:var(--ink);cursor:pointer;border-radius:2px;font-size:13px}.save-view-toggle:hover:not(:disabled){border-color:var(--rule);background:color-mix(in oklab, var(--paper) 90%, var(--ink))}.save-view-toggle:disabled{opacity:.5;cursor:not-allowed}.save-view-panel{background:var(--sheet);border:1px solid var(--rule-firm);z-index:10;border-radius:4px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 2px 8px #0000001f}.save-view-panel-body{padding:calc(var(--step) * 1.5);min-width:300px}.save-view-form{gap:calc(var(--step) * 1);flex-direction:column;display:flex}.save-view-form div{gap:calc(var(--step) * .5);flex-direction:column;display:flex}.save-view-form label{color:var(--ink);font-size:12px;font-weight:500}.save-view-form input,.save-view-form textarea{padding:calc(var(--step) * .5);border:1px solid var(--rule);font-family:var(--body);border-radius:2px;font-size:13px}.save-view-actions{gap:calc(var(--step) * 1);margin-top:calc(var(--step) * .5);display:flex}.save-view-actions button{padding:calc(var(--step) * .5) calc(var(--step) * 1);border:1px solid var(--rule-firm);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:2px;flex:1;font-size:13px}.save-view-actions button:hover:not(:disabled){background:color-mix(in oklab, var(--paper) 85%, var(--ink))}.save-view-notice{align-items:center;gap:calc(var(--step) * .75);padding:calc(var(--step) * .75) calc(var(--step) * 1.5);background:color-mix(in oklab, var(--eucalyptus) 15%, var(--sheet));border:1px solid var(--eucalyptus);color:var(--ink);border-radius:4px;font-size:13px;display:flex}.save-view-notice button{padding:0 calc(var(--step) * .5);color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:11px;text-decoration:underline}.confirm-dialog-backdrop{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{background:var(--sheet);border:1px solid var(--rule-firm);padding:calc(var(--step) * 2);text-align:center;border-radius:8px;max-width:400px;box-shadow:0 8px 24px #00000029}.confirm-dialog h2{margin:0 0 calc(var(--step) * 1) 0;font-size:16px}.confirm-dialog p{margin:0 0 calc(var(--step) * 1.5) 0;color:var(--quiet);font-size:13px}.confirm-dialog-actions{gap:calc(var(--step) * 1);display:flex}.confirm-dialog-actions button{padding:calc(var(--step) * .75);border:1px solid var(--rule-firm);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:2px;flex:1;font-size:13px}.confirm-dialog-actions button:hover{background:color-mix(in oklab, var(--paper) 85%, var(--ink))}.changeset-tray{padding:calc(var(--step) * 1.5) calc(var(--step) * 2.5);border-top:1px solid var(--rule);background:color-mix(in srgb, var(--sheet) 92%, var(--cobalt) 8%)}.changeset-heading-row{justify-content:space-between;align-items:baseline;gap:var(--step);display:flex}.changeset-heading-row h2{font-family:var(--display);margin:0;font-size:15px}.changeset-discard-all{color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.changeset-history-controls{align-items:baseline;gap:var(--step);display:flex}.changeset-undo,.changeset-redo{color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.changeset-undo:disabled,.changeset-redo:disabled{color:var(--quiet);cursor:not-allowed;text-decoration:none}.changeset-rows{margin:var(--step) 0 0;gap:calc(var(--step) * .75);padding:0;list-style:none;display:grid}.changeset-row{padding:calc(var(--step) * .75);border:1px solid var(--rule-firm);background:var(--paper);border-radius:2px}.changeset-row.conflicted{border-color:var(--ochre);background:color-mix(in oklab, var(--ochre) 6%, var(--paper))}.changeset-row-conflict{margin:calc(var(--step) * .5) 0 0;font-family:var(--utility);color:var(--ochre);font-size:11px}.changeset-row-line{justify-content:space-between;align-items:center;gap:var(--step);display:flex}.changeset-row-label{overflow-wrap:anywhere;min-width:0;font-family:var(--utility);color:var(--ink);font-size:12px}.changeset-row-discard{color:var(--eucalyptus);cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:11px;text-decoration:underline}.changeset-row-diagnostics,.changeset-batch-diagnostics{margin:calc(var(--step) * .5) 0 0;font-family:var(--utility);color:var(--failure);padding-left:1.1rem;font-size:11px}.changeset-batch-diagnostics{margin:0 0 var(--step)}.changeset-row-diagnostics .code,.changeset-batch-diagnostics .code{font-weight:700}.changeset-row-diagnostics .where,.changeset-batch-diagnostics .where{color:var(--quiet);margin-left:.4rem}.changeset-actions{margin-top:var(--step)}.changeset-commit{width:100%;padding:calc(var(--step) * .75);border:1px solid var(--cobalt);background:var(--cobalt);color:var(--paper);cursor:pointer;border-radius:2px;font-size:13px}.changeset-commit:disabled{border-color:var(--rule-firm);color:var(--quiet);cursor:not-allowed;background:0 0}.changeset-notice{margin-top:var(--step);padding:calc(var(--step) * .75) calc(var(--step) * 1);border:1px solid var(--eucalyptus);background:color-mix(in oklab, var(--eucalyptus) 15%, var(--sheet));color:var(--ink);border-radius:4px;font-size:12px}.changeset-notice p{margin:0 0 calc(var(--step) * .25);font-weight:700}.changeset-notice ul{font-family:var(--utility);margin:0;padding-left:1.1rem}.layout-notice-pill{inset:var(--step) var(--step) auto auto;z-index:4;align-items:center;gap:var(--step);max-width:calc(100% - var(--step) * 2);border:1px solid var(--rule-firm);background:var(--sheet);font-family:var(--utility);color:var(--ink);border-radius:999px;padding:.35rem .7rem;font-size:12px;display:flex;position:absolute}.layout-notice-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-form{gap:calc(var(--step) * 1.25);margin:calc(var(--step) * 1) 0;flex-direction:column;display:flex}.subject-form-field{gap:calc(var(--step) * .35);flex-direction:column;display:flex}.subject-form-label{font-family:var(--utility);letter-spacing:.02em;text-transform:uppercase;color:var(--quiet);font-size:11px}.subject-form-field input[type=text],.subject-form-field select{border:1px solid var(--rule-firm);border-radius:calc(var(--step) * .5);background:var(--paper);font-family:var(--body);color:var(--ink);padding:.35rem .5rem;font-size:13px}.subject-form-list{border-top:1px solid var(--rule);padding-top:calc(var(--step) * .75)}.subject-form-row{align-items:flex-start;gap:calc(var(--step) * .5);margin-bottom:calc(var(--step) * .5);display:flex}.subject-form-row-body{align-items:center;gap:calc(var(--step) * .5);flex-wrap:wrap;flex:1;display:flex}.subject-form-toggle{align-items:center;gap:calc(var(--step) * .35);font-family:var(--utility);color:var(--quiet);font-size:12px;display:flex}.subject-form-row-add,.subject-form-row-remove{border:1px solid var(--rule-firm);border-radius:calc(var(--step) * .5);background:var(--sheet);font-family:var(--utility);cursor:pointer;padding:.25rem .6rem;font-size:12px}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
6
|
<meta name="referrer" content="no-referrer" />
|
|
7
7
|
<title>YarraMate visual session</title>
|
|
8
|
-
<script type="module" crossorigin src="./assets/index-
|
|
9
|
-
<link rel="stylesheet" crossorigin href="./assets/index-
|
|
8
|
+
<script type="module" crossorigin src="./assets/index-CRd1Khma.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="./assets/index-tZSHlU-a.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
12
12
|
<div id="visual-session"></div>
|
|
@@ -52,7 +52,7 @@ pnpm pack --pack-destination /tmp/yarramate-package
|
|
|
52
52
|
In a consuming project:
|
|
53
53
|
|
|
54
54
|
```sh
|
|
55
|
-
npm install --save-dev /tmp/yarramate-package/yarramate
|
|
55
|
+
npm install --save-dev /tmp/yarramate-package/yarramate-<version>.tgz
|
|
56
56
|
npx yarramate init .
|
|
57
57
|
npx yarramate check .yarramate/workspace.yaml --json
|
|
58
58
|
```
|
|
@@ -206,6 +206,31 @@ Consumers validating the protocol can import the versioned documents directly,
|
|
|
206
206
|
for example `yarramate/schema/visual-handoff` or
|
|
207
207
|
`yarramate/schema/visual-session-request`.
|
|
208
208
|
|
|
209
|
+
## Hosted or browser rendering of the visual graph
|
|
210
|
+
|
|
211
|
+
Consumers that compile a workspace themselves (or receive a compiled
|
|
212
|
+
`SemanticGraph` and profile context) and render with their own cytoscape (or
|
|
213
|
+
other) host can import the pure projection and notation surfaces — without
|
|
214
|
+
starting `yarramate-visual`:
|
|
215
|
+
|
|
216
|
+
```ts
|
|
217
|
+
import { projectGraphForCanvas } from 'yarramate/adapter/visual-graph'
|
|
218
|
+
import {
|
|
219
|
+
conceptNotationOf,
|
|
220
|
+
relationshipNotationOf,
|
|
221
|
+
kindGlyphDataUriOf,
|
|
222
|
+
LAYER_COLORS,
|
|
223
|
+
} from 'yarramate/notation/archimate'
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
These subpaths are Workers/browser-safe: no Node built-ins, no `ws`, and no
|
|
227
|
+
visual session server. The local `yarramate-visual` runtime remains the
|
|
228
|
+
optional loopback conversation product and is not required for projection.
|
|
229
|
+
`presentation.notation: 'archimate'` is still a rendering mode only
|
|
230
|
+
([ADR 0087](adr/0087-archimate-notation-is-a-rendering-mode-not-a-vocabulary.md));
|
|
231
|
+
the notation module is descriptive vocabulary for that mode, not an ArchiMate
|
|
232
|
+
conformance package.
|
|
233
|
+
|
|
209
234
|
## MCP server for agent harnesses
|
|
210
235
|
|
|
211
236
|
Harnesses that load MCP servers can connect the bundled read-only adapter:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "yarramate",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.22.0",
|
|
4
4
|
"description": "Tool-neutral semantic architecture engine and guided methodology",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -45,6 +45,14 @@
|
|
|
45
45
|
"types": "./dist/adapters/graphify-entry.d.ts",
|
|
46
46
|
"import": "./dist/adapters/graphify-entry.js"
|
|
47
47
|
},
|
|
48
|
+
"./adapter/visual-graph": {
|
|
49
|
+
"types": "./dist/adapters/visual-graph-entry.d.ts",
|
|
50
|
+
"import": "./dist/adapters/visual-graph-entry.js"
|
|
51
|
+
},
|
|
52
|
+
"./notation/archimate": {
|
|
53
|
+
"types": "./dist/notation/archimate.d.ts",
|
|
54
|
+
"import": "./dist/notation/archimate.js"
|
|
55
|
+
},
|
|
48
56
|
"./schema/document": "./schema/yarramate-document.schema.json",
|
|
49
57
|
"./schema/profile": "./schema/yarramate-profile.schema.json",
|
|
50
58
|
"./schema/projection": "./schema/yarramate-projection.schema.json",
|
|
@@ -18,6 +18,8 @@
|
|
|
18
18
|
"updatedRelationships",
|
|
19
19
|
"deletedConcepts",
|
|
20
20
|
"deletedRelationships",
|
|
21
|
+
"renamedConcepts",
|
|
22
|
+
"renamedRelationships",
|
|
21
23
|
"addedObservations",
|
|
22
24
|
"updatedObservations",
|
|
23
25
|
"deletedObservations"
|
|
@@ -29,6 +31,8 @@
|
|
|
29
31
|
"updatedRelationships": { "type": "integer", "minimum": 0 },
|
|
30
32
|
"deletedConcepts": { "type": "integer", "minimum": 0 },
|
|
31
33
|
"deletedRelationships": { "type": "integer", "minimum": 0 },
|
|
34
|
+
"renamedConcepts": { "type": "integer", "minimum": 0 },
|
|
35
|
+
"renamedRelationships": { "type": "integer", "minimum": 0 },
|
|
32
36
|
"addedObservations": { "type": "integer", "minimum": 0 },
|
|
33
37
|
"updatedObservations": { "type": "integer", "minimum": 0 },
|
|
34
38
|
"deletedObservations": { "type": "integer", "minimum": 0 }
|
|
@@ -235,7 +235,8 @@
|
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
237
|
},
|
|
238
|
-
"
|
|
238
|
+
"subjectTarget": {
|
|
239
|
+
"description": "A subject already declared in the named document, addressed by its local id. Deletes and renames name what is there rather than restating it.",
|
|
239
240
|
"type": "object",
|
|
240
241
|
"additionalProperties": false,
|
|
241
242
|
"required": [
|
|
@@ -563,7 +564,7 @@
|
|
|
563
564
|
"$ref": "#/$defs/nonEmptyText"
|
|
564
565
|
},
|
|
565
566
|
"concept": {
|
|
566
|
-
"$ref": "#/$defs/
|
|
567
|
+
"$ref": "#/$defs/subjectTarget"
|
|
567
568
|
}
|
|
568
569
|
}
|
|
569
570
|
},
|
|
@@ -583,7 +584,57 @@
|
|
|
583
584
|
"$ref": "#/$defs/nonEmptyText"
|
|
584
585
|
},
|
|
585
586
|
"relationship": {
|
|
586
|
-
"$ref": "#/$defs/
|
|
587
|
+
"$ref": "#/$defs/subjectTarget"
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
"type": "object",
|
|
593
|
+
"additionalProperties": false,
|
|
594
|
+
"required": [
|
|
595
|
+
"op",
|
|
596
|
+
"document",
|
|
597
|
+
"concept",
|
|
598
|
+
"to"
|
|
599
|
+
],
|
|
600
|
+
"properties": {
|
|
601
|
+
"op": {
|
|
602
|
+
"const": "rename-concept"
|
|
603
|
+
},
|
|
604
|
+
"document": {
|
|
605
|
+
"$ref": "#/$defs/nonEmptyText"
|
|
606
|
+
},
|
|
607
|
+
"concept": {
|
|
608
|
+
"$ref": "#/$defs/subjectTarget"
|
|
609
|
+
},
|
|
610
|
+
"to": {
|
|
611
|
+
"description": "The local id this subject should have had. Every declarative reference to the old address is re-pointed in the same batch; prose is left exactly as written.",
|
|
612
|
+
"$ref": "#/$defs/nonEmptyText"
|
|
613
|
+
}
|
|
614
|
+
}
|
|
615
|
+
},
|
|
616
|
+
{
|
|
617
|
+
"type": "object",
|
|
618
|
+
"additionalProperties": false,
|
|
619
|
+
"required": [
|
|
620
|
+
"op",
|
|
621
|
+
"document",
|
|
622
|
+
"relationship",
|
|
623
|
+
"to"
|
|
624
|
+
],
|
|
625
|
+
"properties": {
|
|
626
|
+
"op": {
|
|
627
|
+
"const": "rename-relationship"
|
|
628
|
+
},
|
|
629
|
+
"document": {
|
|
630
|
+
"$ref": "#/$defs/nonEmptyText"
|
|
631
|
+
},
|
|
632
|
+
"relationship": {
|
|
633
|
+
"$ref": "#/$defs/subjectTarget"
|
|
634
|
+
},
|
|
635
|
+
"to": {
|
|
636
|
+
"description": "The local id this subject should have had. Sits at the operation level because a relationship's own `to` field is an endpoint.",
|
|
637
|
+
"$ref": "#/$defs/nonEmptyText"
|
|
587
638
|
}
|
|
588
639
|
}
|
|
589
640
|
},
|
|
@@ -219,7 +219,7 @@
|
|
|
219
219
|
"changesetCommitPayload": {
|
|
220
220
|
"type": "object",
|
|
221
221
|
"additionalProperties": false,
|
|
222
|
-
"required": ["operations"],
|
|
222
|
+
"required": ["operations", "sourceDigests"],
|
|
223
223
|
"properties": {
|
|
224
224
|
"operations": {
|
|
225
225
|
"type": "array",
|
|
@@ -227,6 +227,16 @@
|
|
|
227
227
|
"items": {
|
|
228
228
|
"$ref": "https://yarrasys.dev/schema/yarramate-operations.schema.json#/$defs/operation"
|
|
229
229
|
}
|
|
230
|
+
},
|
|
231
|
+
"sourceDigests": {
|
|
232
|
+
"type": "object",
|
|
233
|
+
"maxProperties": 4096,
|
|
234
|
+
"propertyNames": {
|
|
235
|
+
"$ref": "https://yarramate.org/schema/visual-model/v1#/$defs/relativePath"
|
|
236
|
+
},
|
|
237
|
+
"additionalProperties": {
|
|
238
|
+
"$ref": "https://yarramate.org/schema/visual-model/v1#/$defs/digest"
|
|
239
|
+
}
|
|
230
240
|
}
|
|
231
241
|
}
|
|
232
242
|
},
|
|
@@ -63,10 +63,35 @@
|
|
|
63
63
|
"type": "string"
|
|
64
64
|
},
|
|
65
65
|
"layer": {
|
|
66
|
-
"
|
|
66
|
+
"anyOf": [
|
|
67
|
+
{
|
|
68
|
+
"enum": [
|
|
69
|
+
"motivation",
|
|
70
|
+
"strategy",
|
|
71
|
+
"business",
|
|
72
|
+
"application",
|
|
73
|
+
"technology",
|
|
74
|
+
"physical",
|
|
75
|
+
"implementation",
|
|
76
|
+
"composite"
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
{ "type": "null" }
|
|
80
|
+
]
|
|
67
81
|
},
|
|
68
82
|
"aspect": {
|
|
69
|
-
"
|
|
83
|
+
"anyOf": [
|
|
84
|
+
{
|
|
85
|
+
"enum": [
|
|
86
|
+
"motivation",
|
|
87
|
+
"active-structure",
|
|
88
|
+
"behavior",
|
|
89
|
+
"passive-structure",
|
|
90
|
+
"composite"
|
|
91
|
+
]
|
|
92
|
+
},
|
|
93
|
+
{ "type": "null" }
|
|
94
|
+
]
|
|
70
95
|
},
|
|
71
96
|
"name": {
|
|
72
97
|
"type": "string"
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"const": "yarramate/visual-session-descriptor/v1"
|
|
21
21
|
},
|
|
22
22
|
"protocolVersion": {
|
|
23
|
-
"const": "yarramate/visual-protocol/
|
|
23
|
+
"const": "yarramate/visual-protocol/v3"
|
|
24
24
|
},
|
|
25
25
|
"sessionId": {
|
|
26
26
|
"$ref": "https://yarramate.org/schema/visual-event/v1#/$defs/identifier"
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"const": "yarramate/visual-session-started/v1"
|
|
26
26
|
},
|
|
27
27
|
"protocolVersion": {
|
|
28
|
-
"const": "yarramate/visual-protocol/
|
|
28
|
+
"const": "yarramate/visual-protocol/v3"
|
|
29
29
|
},
|
|
30
30
|
"sessionId": {
|
|
31
31
|
"$ref": "https://yarramate.org/schema/visual-event/v1#/$defs/identifier"
|