@rizom/site-rizom-ai 0.2.0-alpha.266 → 0.2.0-alpha.268

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/index.js CHANGED
@@ -38319,6 +38319,11 @@ var story_default = `/* The story pages: chapters beside one drawing, under the
38319
38319
  min-height: calc(100svh - var(--bar-height, 4.6rem));
38320
38320
  max-width: var(--words);
38321
38321
  }
38322
+ /* The opening (and the Ask room's first chapter, which follows its drawing in
38323
+ the column) is the words' width, so the drawing has its room beside it. */
38324
+ .chapter--opening {
38325
+ max-width: var(--words);
38326
+ }
38322
38327
  /* A chapter's eyebrow is the site's label: mono, small, tracked, in the room's accent. */
38323
38328
  .chapter .eyebrow {
38324
38329
  margin: 0 0 1.4rem;
@@ -39058,23 +39063,20 @@ var story_default = `/* The story pages: chapters beside one drawing, under the
39058
39063
  width: min(100%, calc(100svh - var(--bar-height, 4.6rem) - 2rem));
39059
39064
  aspect-ratio: 1;
39060
39065
  }
39061
- /* On a wide screen the opening's drawing holds the figure's place: it stands
39062
- before the opening in the chapters column and sticks at the figure's centre
39063
- line down the whole story (the story is a size container, so nothing in it
39064
- can be fixed to the screen). It stays while the opening is read, an answer
39065
- included, and the words scroll past it. The handover to the figure follows
39066
- the scroll (--handover, set by the runtime from the science's top on the
39067
- screen): as the science comes up the network draws into its centre point,
39068
- and past the reading line the figure's first drawing opens out of that same
39069
- point; scrolling back runs it backwards. */
39066
+ /* The Ask room page (/ask, told as a story without a figure) brings its own
39067
+ drawing: it stands before the words in the chapters column and sticks at
39068
+ the figure's centre line down the page (the story is a size container, so
39069
+ nothing in it can be fixed to the screen), while the words scroll within
39070
+ the screen beside it. The homepage's opening keeps its drawing in the
39071
+ opening (the rule above), which leaves with it. */
39070
39072
  @media not all and (max-width: 60rem) {
39071
39073
  /* The words are the room's column (the kit scrolls it within the screen);
39072
- the bar and the opening's 4rem of padding above and below stay clear, so
39074
+ the bar and the chapter's 4rem of padding above and below stay clear, so
39073
39075
  the composer is on the first screen. */
39074
39076
  .chapter--opening .opening__words {
39075
39077
  --ask-column-clear: calc(8rem + var(--bar-height, 4.6rem));
39076
39078
  }
39077
- :where(.chapters) > .net-layer {
39079
+ .story--room :where(.chapters) > .net-layer {
39078
39080
  position: sticky;
39079
39081
  top: calc(
39080
39082
  var(--bar-height, 4.6rem) + (100svh - var(--bar-height, 4.6rem)) / 2
@@ -39088,54 +39090,83 @@ var story_default = `/* The story pages: chapters beside one drawing, under the
39088
39090
  var(--words) - var(--words-gap) - clamp(1rem, 6vw, 7rem)
39089
39091
  );
39090
39092
  }
39091
- :where(.chapters) > .net-layer > * {
39093
+ .story--room :where(.chapters) > .net-layer > * {
39092
39094
  translate: 0 -50%;
39093
- scale: calc(1 - clamp(0, var(--handover, 0), 1));
39094
- }
39095
- .net-leads {
39096
- opacity: calc(1 - clamp(0, var(--handover, 0) * 2, 1));
39097
- }
39098
- /* The figure's first drawing opens out of the point the network drew into;
39099
- the figure draws back into the point as the Asked-before chapter arrives
39100
- with its own drawing, and opens again as the chapter after it does. */
39101
- .living-org .o-box {
39102
- scale: min(
39103
- clamp(0, var(--handover, 0) - 1, 1),
39104
- max(
39105
- 1 - clamp(0, var(--asked, 0), 1),
39106
- clamp(0, (var(--leaving, 0) - 1) * 2, 1)
39107
- )
39108
- );
39109
- }
39110
- /* The Asked-before chapter's drawing holds the figure's centre line while
39111
- the chapter is read: first in the chapter's flow, so it is at the line
39112
- from the moment the chapter reaches it. It opens out of the point as the
39113
- chapter arrives, in half the line's distance so a short chapter still
39114
- shows it whole, and draws back in as the next chapter does. */
39115
- .asked > .net-layer {
39116
- position: sticky;
39117
- order: -1;
39118
- top: calc(
39119
- var(--bar-height, 4.6rem) + (100svh - var(--bar-height, 4.6rem)) / 2
39120
- );
39121
- left: auto;
39122
- right: auto;
39123
- height: 0;
39124
- margin-left: calc(100% + var(--words-gap));
39125
- width: calc(
39126
- 100cqi - max(0px, (100cqi - 80rem) / 2) - clamp(1rem, 5vw, 5rem) -
39127
- var(--words) - var(--words-gap) - clamp(1rem, 6vw, 7rem)
39128
- );
39129
- translate: none;
39130
- }
39131
- .asked > .net-layer > * {
39132
- translate: 0 -50%;
39133
- scale: calc(
39134
- clamp(0, (var(--asked, 0) - 1) * 2, 1) *
39135
- (1 - clamp(0, var(--leaving, 0), 1))
39136
- );
39137
39095
  }
39138
39096
  }
39097
+ /* The opening's organism art: one brain, a team and a network in the rooms'
39098
+ lights, joined by one thread (see ./story/organism-art). A wide picture, it
39099
+ runs the full width of the opening under the words and the door, and
39100
+ leaves with the opening. */
39101
+ .opening__art {
39102
+ width: calc(min(100cqi, 80rem) - 2 * clamp(1rem, 5vw, 5rem));
39103
+ max-width: none;
39104
+ margin-top: 3rem;
39105
+ }
39106
+ .opening__art .organism-defs {
39107
+ position: absolute;
39108
+ width: 0;
39109
+ height: 0;
39110
+ overflow: hidden;
39111
+ }
39112
+ .opening__art > .organism-map {
39113
+ display: block;
39114
+ width: 100%;
39115
+ height: auto;
39116
+ overflow: visible;
39117
+ }
39118
+ .opening__art .organism-ray {
39119
+ fill: none;
39120
+ stroke: url(#org-thread);
39121
+ stroke-width: 1.5;
39122
+ stroke-linecap: round;
39123
+ }
39124
+ .opening__art .organism-ray-soft {
39125
+ fill: none;
39126
+ stroke: url(#org-thread);
39127
+ stroke-width: 6;
39128
+ opacity: 0.16;
39129
+ filter: url(#org-blur);
39130
+ }
39131
+ .opening__art .organism-ray-fine {
39132
+ stroke-width: 0.8;
39133
+ opacity: 0.45;
39134
+ }
39135
+ .opening__art .organism-wire {
39136
+ fill: none;
39137
+ stroke: currentColor;
39138
+ stroke-width: 1.45;
39139
+ stroke-linecap: round;
39140
+ stroke-linejoin: round;
39141
+ opacity: 0.7;
39142
+ }
39143
+ .opening__art .organism-wire-faint {
39144
+ stroke-width: 0.8;
39145
+ opacity: 0.28;
39146
+ }
39147
+ .opening__art .organism-peer {
39148
+ fill: var(--color-bg);
39149
+ stroke: currentColor;
39150
+ stroke-width: 1.4;
39151
+ }
39152
+ .opening__art .organism-hot {
39153
+ fill: var(--color-text);
39154
+ }
39155
+ .opening__art .organism-halo {
39156
+ fill: none;
39157
+ stroke: currentColor;
39158
+ stroke-width: 0.7;
39159
+ opacity: 0.38;
39160
+ }
39161
+ .opening__art .organism-brain {
39162
+ color: var(--palette-brass);
39163
+ }
39164
+ .opening__art .organism-team {
39165
+ color: var(--palette-ruby-soft);
39166
+ }
39167
+ .opening__art .organism-network {
39168
+ color: var(--palette-moss);
39169
+ }
39139
39170
  .net-svg {
39140
39171
  overflow: visible;
39141
39172
  }
@@ -39610,6 +39641,14 @@ var story_default = `/* The story pages: chapters beside one drawing, under the
39610
39641
  --words: 34rem;
39611
39642
  --strip-h: 34svh;
39612
39643
  }
39644
+ /* The room page has no figure to hold the strip's height in the flow. */
39645
+ .story--room .chapters {
39646
+ padding-top: var(--strip-h);
39647
+ }
39648
+ .opening__art {
39649
+ width: 100%;
39650
+ margin-top: 2rem;
39651
+ }
39613
39652
  .chapter.chapter--opening {
39614
39653
  min-height: auto;
39615
39654
  justify-content: flex-start;
@@ -39752,8 +39791,6 @@ var story_default = `/* The story pages: chapters beside one drawing, under the
39752
39791
  color: var(--color-text-muted);
39753
39792
  quotes: "\u201C" "\u201D";
39754
39793
  }
39755
- /* The chapter's drawing stands where the organism stood, beside the words
39756
- (placed in the wide-screen block above; on a phone it takes the strip). */
39757
39794
  /* The Ask room's lead layer (the room script draws into it; the kit styles
39758
39795
  the leads): leads join words to the drawing across the page, so the
39759
39796
  viewport is their frame. On a phone the opening's drawing joins the open
@@ -39784,29 +39821,17 @@ var story_default = `/* The story pages: chapters beside one drawing, under the
39784
39821
  border-bottom: 1px solid var(--color-border);
39785
39822
  }
39786
39823
  }
39787
- /* The chapter's drawing is the network at rest: no pulse travels it and no
39788
- brain blinks on its own; only the open question's brains answer. */
39789
- .asked .net-pulse,
39790
- .asked .net-reply:not(.is-lit) .net-echo,
39791
- .asked .net-reply:not(.is-lit) .net-spark {
39824
+ /* While the Asked-before questions are read, the page's drawing is the
39825
+ network at rest: no pulse travels it and no brain blinks on its own; only
39826
+ the open question's brains answer. */
39827
+ .story.is-asked .net-pulse,
39828
+ .story.is-asked .net-reply:not(.is-lit) .net-echo,
39829
+ .story.is-asked .net-reply:not(.is-lit) .net-spark {
39792
39830
  display: none;
39793
39831
  }
39794
- .asked .net-mark i {
39832
+ .story.is-asked .net-mark i {
39795
39833
  animation: none;
39796
39834
  }
39797
- @media (max-width: 60rem) {
39798
- /* On a phone the chapter's drawing takes the strip while the chapter is read. */
39799
- .asked .net-layer {
39800
- top: var(--bar-height, 4.6rem);
39801
- translate: none;
39802
- left: 0;
39803
- right: 0;
39804
- width: auto;
39805
- }
39806
- .story.is-asked .asked .net-layer {
39807
- opacity: 1;
39808
- z-index: 3;
39809
- }
39810
39835
  }
39811
39836
 
39812
39837
  @media (prefers-reduced-motion: reduce) {
@@ -40521,10 +40546,6 @@ var livingOrganism = organism({
40521
40546
  ...Object.fromEntries(Object.entries(one).map(([k, v2]) => [k, shrink(v2)])),
40522
40547
  ...Object.fromEntries(economy.map((p, i) => [`E${i + 1}`, at(p, i % 3 === 0 ? 6 : 4)]))
40523
40548
  },
40524
- {
40525
- ...Object.fromEntries(Object.entries(one).map(([k, v2]) => [k, shrink(v2)])),
40526
- ...Object.fromEntries(economy.map((p, i) => [`E${i + 1}`, at(p, i % 3 === 0 ? 6 : 4)]))
40527
- },
40528
40549
  { L: [C3, C3, 13, 1] }
40529
40550
  ],
40530
40551
  links: [
@@ -40583,8 +40604,7 @@ var livingOrganism = organism({
40583
40604
  "core-e2",
40584
40605
  "core-e3",
40585
40606
  ...uniqueEconomyLinks.map((l3) => l3[0])
40586
- ],
40587
- []
40607
+ ]
40588
40608
  ],
40589
40609
  flowing: [
40590
40610
  [],
@@ -40598,8 +40618,7 @@ var livingOrganism = organism({
40598
40618
  "core-e2",
40599
40619
  "core-e3",
40600
40620
  ...uniqueEconomyLinks.filter((_2, i) => i % 2 === 0).map((l3) => l3[0])
40601
- ],
40602
- []
40621
+ ]
40603
40622
  ],
40604
40623
  labels: [
40605
40624
  [],
@@ -41885,32 +41904,15 @@ function readingLine(viewportHeight, stripBottom) {
41885
41904
  const beside = 0.45;
41886
41905
  return stripBottom === null ? viewportHeight * beside : stripBottom + 1;
41887
41906
  }
41888
- function handoverProgress(nextTop, scrolled, viewportHeight, line) {
41889
- if (nextTop > line) {
41890
- return scrolled <= 0 ? 0 : scrolled / (scrolled + nextTop - line);
41891
- }
41892
- const span = viewportHeight - line;
41893
- return span <= 0 ? 2 : 1 + Math.min(1, (line - nextTop) / span);
41894
- }
41895
- function arrivalProgress(top, viewportHeight, line) {
41896
- const span = viewportHeight - line;
41897
- if (span <= 0)
41898
- return top <= line ? 2 : 0;
41899
- return Math.min(2, Math.max(0, (viewportHeight - top) / span));
41900
- }
41901
41907
  var storyRuntimeScript = ASK_ROOM_SCRIPT + `(function () {
41902
41908
  ${currentChapter.toString()}
41903
41909
  ${readingLine.toString()}
41904
- ${handoverProgress.toString()}
41905
- ${arrivalProgress.toString()}
41906
41910
  function init() {
41907
41911
  var story = document.querySelector(".story");
41908
41912
  if (!story) return;
41909
41913
  var chapters = Array.prototype.slice.call(story.querySelectorAll(".chapter"));
41910
41914
  if (!chapters.length) return;
41911
41915
  var figure = story.querySelector(".figure");
41912
- // The chapter that takes the figure's place with its own drawing, and the one after it.
41913
- var lights = chapters.findIndex(function (chapter) { return chapter.hasAttribute("data-lights-network"); });
41914
41916
  var stageCount = figure ? Number(figure.dataset.stages || chapters.length) : chapters.length;
41915
41917
  var rail = document.querySelector(".rail");
41916
41918
  var railNodes = [];
@@ -41957,11 +41959,6 @@ var storyRuntimeScript = ASK_ROOM_SCRIPT + `(function () {
41957
41959
  var current = currentChapter(tops, line);
41958
41960
  var stage = currentChapter(tops, line, stageCount);
41959
41961
  if (figure) figure.dataset.stage = String(stage);
41960
- if (tops.length > 1) story.style.setProperty("--handover", handoverProgress(tops[1], scrollY, innerHeight, line).toFixed(4));
41961
- if (lights >= 0) {
41962
- story.style.setProperty("--asked", arrivalProgress(tops[lights], innerHeight, line).toFixed(4));
41963
- story.style.setProperty("--leaving", (lights + 1 < tops.length ? arrivalProgress(tops[lights + 1], innerHeight, line) : 0).toFixed(4));
41964
- }
41965
41962
  chapters.forEach(function (chapter, i) { chapter.classList.toggle("is-current", i === current); });
41966
41963
  // A chapter that lights the network keeps the live drawing in view while it is read.
41967
41964
  story.classList.toggle("is-asked", !!(chapters[current] && chapters[current].hasAttribute("data-lights-network")));
@@ -55279,14 +55276,14 @@ function StoryPage({
55279
55276
  }),
55280
55277
  /* @__PURE__ */ jsx49(ReadingThread, {}),
55281
55278
  /* @__PURE__ */ jsxs35("div", {
55282
- className: "story",
55279
+ className: figure ? "story" : "story story--room",
55283
55280
  ...{ [ASK_ROOM_ATTRIBUTE]: "" },
55284
55281
  children: [
55285
55282
  /* @__PURE__ */ jsx49("div", {
55286
55283
  className: "chapters",
55287
55284
  children
55288
55285
  }),
55289
- /* @__PURE__ */ jsx49("figure", {
55286
+ figure && /* @__PURE__ */ jsx49("figure", {
55290
55287
  className: `figure ${figure.className}`,
55291
55288
  "data-stage": "0",
55292
55289
  "data-stages": figure.organism.stageCount,
@@ -55305,7 +55302,8 @@ var BAR_LINKS = [
55305
55302
  { label: "Brain", href: "/brain", room: "brain" },
55306
55303
  { label: "Work", href: "/work", room: "work" },
55307
55304
  { label: "Foundation", href: "/foundation", room: "foundation" },
55308
- { label: "Writing", href: "/writing" }
55305
+ { label: "Writing", href: "/writing" },
55306
+ { label: "Ask", href: "/ask" }
55309
55307
  ];
55310
55308
  var AUDIT = { label: "Book an audit", href: "/work#audit" };
55311
55309
  function activeRoom(path) {
@@ -55457,7 +55455,8 @@ var STORY_FIGURES = {
55457
55455
  "/": { className: "living-org", organism: livingOrganism },
55458
55456
  "/brain": { className: "brain-org", organism: brainOrganism },
55459
55457
  "/work": { className: "work-org", organism: workOrganism },
55460
- "/foundation": { className: "foundation-org", organism: foundationOrganism }
55458
+ "/foundation": { className: "foundation-org", organism: foundationOrganism },
55459
+ "/ask": null
55461
55460
  };
55462
55461
  function RizomAiChrome({
55463
55462
  path,
@@ -55475,7 +55474,7 @@ function RizomAiChrome({
55475
55474
  path
55476
55475
  }),
55477
55476
  /* @__PURE__ */ jsx50("main", {
55478
- children: figure ? /* @__PURE__ */ jsx50(StoryPage, {
55477
+ children: figure !== undefined ? /* @__PURE__ */ jsx50(StoryPage, {
55479
55478
  figure,
55480
55479
  children
55481
55480
  }) : children
@@ -55614,7 +55613,7 @@ var growthSchema = exports_external.object({
55614
55613
  var ROOMS = {
55615
55614
  You: "/brain",
55616
55615
  Team: "/work",
55617
- Network: "#hero"
55616
+ Network: "/ask"
55618
55617
  };
55619
55618
  function GrowthSection({
55620
55619
  cap,
@@ -56569,42 +56568,441 @@ var BuildResultSchema = exports_external.object({
56569
56568
  errors: exports_external.array(exports_external.string()).optional(),
56570
56569
  warnings: exports_external.array(exports_external.string()).optional()
56571
56570
  });
56572
- // src/story/network.ts
56573
- var DISC = { x: 50, y: 50, radius: 44 };
56574
- var CHARACTER = 1.45;
56575
- var GAP = 3;
56576
- var r12 = (v2) => Math.round(v2 * 10) / 10;
56577
- function placeNetwork(map6) {
56578
- const shown = map6.nodes.filter((node2) => node2.status !== "archived");
56579
- const max = proximityMaxDistance({ ...map6, nodes: shown });
56580
- const placed2 = shown.map((node2) => {
56581
- const point3 = proximityPoint(node2.distance, node2.bearing, max, DISC);
56582
- return {
56583
- id: node2.id,
56584
- name: node2.name,
56585
- x: r12(point3.x),
56586
- y: r12(point3.y),
56587
- reach: proximityReach(node2.distance, max)
56588
- };
56571
+ // src/story/organism-art.tsx
56572
+ import { jsx as jsx56, jsxs as jsxs39, Fragment as Fragment21 } from "react/jsx-runtime";
56573
+ function OrganismDefs() {
56574
+ return /* @__PURE__ */ jsx56("svg", {
56575
+ className: "organism-defs",
56576
+ "aria-hidden": "true",
56577
+ xmlns: "http://www.w3.org/2000/svg",
56578
+ children: /* @__PURE__ */ jsxs39("defs", {
56579
+ children: [
56580
+ /* @__PURE__ */ jsx56("filter", {
56581
+ id: "org-blur",
56582
+ x: "-50%",
56583
+ y: "-50%",
56584
+ width: "200%",
56585
+ height: "200%",
56586
+ children: /* @__PURE__ */ jsx56("feGaussianBlur", {
56587
+ stdDeviation: "3"
56588
+ })
56589
+ }),
56590
+ /* @__PURE__ */ jsxs39("radialGradient", {
56591
+ id: "org-brain-light",
56592
+ children: [
56593
+ /* @__PURE__ */ jsx56("stop", {
56594
+ stopColor: "var(--palette-brass)",
56595
+ stopOpacity: ".36"
56596
+ }),
56597
+ /* @__PURE__ */ jsx56("stop", {
56598
+ offset: ".3",
56599
+ stopColor: "var(--palette-brass)",
56600
+ stopOpacity: ".13"
56601
+ }),
56602
+ /* @__PURE__ */ jsx56("stop", {
56603
+ offset: "1",
56604
+ stopColor: "var(--palette-brass)",
56605
+ stopOpacity: "0"
56606
+ })
56607
+ ]
56608
+ }),
56609
+ /* @__PURE__ */ jsxs39("radialGradient", {
56610
+ id: "org-team-light",
56611
+ children: [
56612
+ /* @__PURE__ */ jsx56("stop", {
56613
+ stopColor: "var(--palette-ruby-soft)",
56614
+ stopOpacity: ".38"
56615
+ }),
56616
+ /* @__PURE__ */ jsx56("stop", {
56617
+ offset: ".3",
56618
+ stopColor: "var(--palette-ruby-soft)",
56619
+ stopOpacity: ".12"
56620
+ }),
56621
+ /* @__PURE__ */ jsx56("stop", {
56622
+ offset: "1",
56623
+ stopColor: "var(--palette-ruby-soft)",
56624
+ stopOpacity: "0"
56625
+ })
56626
+ ]
56627
+ }),
56628
+ /* @__PURE__ */ jsxs39("radialGradient", {
56629
+ id: "org-net-light",
56630
+ children: [
56631
+ /* @__PURE__ */ jsx56("stop", {
56632
+ stopColor: "var(--palette-moss)",
56633
+ stopOpacity: ".4"
56634
+ }),
56635
+ /* @__PURE__ */ jsx56("stop", {
56636
+ offset: ".3",
56637
+ stopColor: "var(--palette-moss)",
56638
+ stopOpacity: ".13"
56639
+ }),
56640
+ /* @__PURE__ */ jsx56("stop", {
56641
+ offset: "1",
56642
+ stopColor: "var(--palette-moss)",
56643
+ stopOpacity: "0"
56644
+ })
56645
+ ]
56646
+ }),
56647
+ /* @__PURE__ */ jsxs39("linearGradient", {
56648
+ id: "org-thread",
56649
+ gradientUnits: "userSpaceOnUse",
56650
+ x1: "180",
56651
+ y1: "0",
56652
+ x2: "940",
56653
+ y2: "0",
56654
+ children: [
56655
+ /* @__PURE__ */ jsx56("stop", {
56656
+ stopColor: "var(--palette-brass)",
56657
+ stopOpacity: ".85"
56658
+ }),
56659
+ /* @__PURE__ */ jsx56("stop", {
56660
+ offset: ".5",
56661
+ stopColor: "var(--palette-ruby-soft)",
56662
+ stopOpacity: ".6"
56663
+ }),
56664
+ /* @__PURE__ */ jsx56("stop", {
56665
+ offset: "1",
56666
+ stopColor: "var(--palette-moss)",
56667
+ stopOpacity: ".65"
56668
+ })
56669
+ ]
56670
+ }),
56671
+ /* @__PURE__ */ jsxs39("symbol", {
56672
+ id: "org-brain",
56673
+ viewBox: "-90 -90 180 180",
56674
+ overflow: "visible",
56675
+ children: [
56676
+ /* @__PURE__ */ jsx56("circle", {
56677
+ r: "85",
56678
+ fill: "url(#org-brain-light)"
56679
+ }),
56680
+ /* @__PURE__ */ jsx56("circle", {
56681
+ r: "38",
56682
+ fill: "url(#org-brain-light)"
56683
+ }),
56684
+ /* @__PURE__ */ jsx56("circle", {
56685
+ r: "23",
56686
+ className: "organism-halo"
56687
+ }),
56688
+ /* @__PURE__ */ jsx56("circle", {
56689
+ r: "10",
56690
+ fill: "currentColor",
56691
+ opacity: ".18"
56692
+ }),
56693
+ /* @__PURE__ */ jsx56("circle", {
56694
+ r: "6.5",
56695
+ fill: "currentColor"
56696
+ }),
56697
+ /* @__PURE__ */ jsx56("circle", {
56698
+ r: "3.6",
56699
+ className: "organism-hot"
56700
+ })
56701
+ ]
56702
+ }),
56703
+ /* @__PURE__ */ jsxs39("symbol", {
56704
+ id: "org-team",
56705
+ viewBox: "-90 -90 180 180",
56706
+ overflow: "visible",
56707
+ children: [
56708
+ /* @__PURE__ */ jsx56("circle", {
56709
+ cx: "0",
56710
+ cy: "-52",
56711
+ r: "73",
56712
+ fill: "url(#org-team-light)"
56713
+ }),
56714
+ /* @__PURE__ */ jsx56("path", {
56715
+ d: "M0 -52 L48 30 L-48 30 Z",
56716
+ fill: "color-mix(in srgb, var(--palette-ruby-soft) 3%, transparent)"
56717
+ }),
56718
+ /* @__PURE__ */ jsx56("path", {
56719
+ className: "organism-wire",
56720
+ d: "M-48 30 L0 -52 L48 30 Z"
56721
+ }),
56722
+ /* @__PURE__ */ jsx56("path", {
56723
+ className: "organism-wire",
56724
+ d: "M-48 30 L0 -52 L48 30",
56725
+ filter: "url(#org-blur)",
56726
+ opacity: ".4"
56727
+ }),
56728
+ /* @__PURE__ */ jsx56("circle", {
56729
+ cx: "-48",
56730
+ cy: "30",
56731
+ r: "20",
56732
+ fill: "url(#org-team-light)"
56733
+ }),
56734
+ /* @__PURE__ */ jsx56("circle", {
56735
+ cx: "48",
56736
+ cy: "30",
56737
+ r: "20",
56738
+ fill: "url(#org-team-light)"
56739
+ }),
56740
+ /* @__PURE__ */ jsx56("circle", {
56741
+ cx: "-48",
56742
+ cy: "30",
56743
+ r: "3.7",
56744
+ className: "organism-peer"
56745
+ }),
56746
+ /* @__PURE__ */ jsx56("circle", {
56747
+ cx: "48",
56748
+ cy: "30",
56749
+ r: "3.7",
56750
+ className: "organism-peer"
56751
+ }),
56752
+ /* @__PURE__ */ jsx56("circle", {
56753
+ cx: "0",
56754
+ cy: "-52",
56755
+ r: "16",
56756
+ className: "organism-halo"
56757
+ }),
56758
+ /* @__PURE__ */ jsx56("circle", {
56759
+ cx: "0",
56760
+ cy: "-52",
56761
+ r: "23",
56762
+ fill: "url(#org-team-light)"
56763
+ }),
56764
+ /* @__PURE__ */ jsx56("circle", {
56765
+ cx: "0",
56766
+ cy: "-52",
56767
+ r: "4.5",
56768
+ fill: "currentColor"
56769
+ }),
56770
+ /* @__PURE__ */ jsx56("circle", {
56771
+ cx: "0",
56772
+ cy: "-52",
56773
+ r: "2.4",
56774
+ className: "organism-hot"
56775
+ })
56776
+ ]
56777
+ }),
56778
+ /* @__PURE__ */ jsxs39("symbol", {
56779
+ id: "org-network",
56780
+ viewBox: "-90 -90 180 180",
56781
+ overflow: "visible",
56782
+ children: [
56783
+ /* @__PURE__ */ jsx56("circle", {
56784
+ r: "89",
56785
+ fill: "url(#org-net-light)",
56786
+ opacity: ".35"
56787
+ }),
56788
+ /* @__PURE__ */ jsx56("path", {
56789
+ className: "organism-wire organism-wire-faint",
56790
+ d: "M-33 12 Q-2 -14 22 -8 M-33 12 Q-13 42 9 36 M22 -8 Q51 3 65 24 M-45 -30 Q-9 -63 32 -58 M-70 -8 L-70 64 M67 -24 L78 3 M-45 -30 L-60 -68"
56791
+ }),
56792
+ /* @__PURE__ */ jsx56("path", {
56793
+ className: "organism-wire",
56794
+ d: "M-45 -30 L-70 -8 L-33 12 Z M32 -58 L67 -24 L22 -8 Z M9 36 L48 68 L65 24 Z"
56795
+ }),
56796
+ /* @__PURE__ */ jsx56("path", {
56797
+ className: "organism-wire",
56798
+ d: "M-33 12 Q-2 -14 22 -8 M22 -8 Q51 3 65 24",
56799
+ filter: "url(#org-blur)"
56800
+ }),
56801
+ /* @__PURE__ */ jsx56("circle", {
56802
+ cx: "-45",
56803
+ cy: "-30",
56804
+ r: "32",
56805
+ fill: "url(#org-net-light)"
56806
+ }),
56807
+ /* @__PURE__ */ jsx56("circle", {
56808
+ cx: "32",
56809
+ cy: "-58",
56810
+ r: "27",
56811
+ fill: "url(#org-net-light)"
56812
+ }),
56813
+ /* @__PURE__ */ jsx56("circle", {
56814
+ cx: "9",
56815
+ cy: "36",
56816
+ r: "29",
56817
+ fill: "url(#org-net-light)"
56818
+ }),
56819
+ /* @__PURE__ */ jsx56("circle", {
56820
+ cx: "-45",
56821
+ cy: "-30",
56822
+ r: "4",
56823
+ fill: "currentColor"
56824
+ }),
56825
+ /* @__PURE__ */ jsx56("circle", {
56826
+ cx: "-45",
56827
+ cy: "-30",
56828
+ r: "2",
56829
+ className: "organism-hot"
56830
+ }),
56831
+ /* @__PURE__ */ jsx56("circle", {
56832
+ cx: "32",
56833
+ cy: "-58",
56834
+ r: "3.8",
56835
+ fill: "currentColor"
56836
+ }),
56837
+ /* @__PURE__ */ jsx56("circle", {
56838
+ cx: "32",
56839
+ cy: "-58",
56840
+ r: "1.8",
56841
+ className: "organism-hot"
56842
+ }),
56843
+ /* @__PURE__ */ jsx56("circle", {
56844
+ cx: "9",
56845
+ cy: "36",
56846
+ r: "3.8",
56847
+ fill: "currentColor"
56848
+ }),
56849
+ /* @__PURE__ */ jsx56("circle", {
56850
+ cx: "9",
56851
+ cy: "36",
56852
+ r: "1.8",
56853
+ className: "organism-hot"
56854
+ }),
56855
+ /* @__PURE__ */ jsx56("circle", {
56856
+ cx: "-70",
56857
+ cy: "-8",
56858
+ r: "2.8",
56859
+ className: "organism-peer"
56860
+ }),
56861
+ /* @__PURE__ */ jsx56("circle", {
56862
+ cx: "-33",
56863
+ cy: "12",
56864
+ r: "3",
56865
+ className: "organism-peer"
56866
+ }),
56867
+ /* @__PURE__ */ jsx56("circle", {
56868
+ cx: "67",
56869
+ cy: "-24",
56870
+ r: "3",
56871
+ className: "organism-peer"
56872
+ }),
56873
+ /* @__PURE__ */ jsx56("circle", {
56874
+ cx: "22",
56875
+ cy: "-8",
56876
+ r: "2.8",
56877
+ className: "organism-peer"
56878
+ }),
56879
+ /* @__PURE__ */ jsx56("circle", {
56880
+ cx: "48",
56881
+ cy: "68",
56882
+ r: "3",
56883
+ className: "organism-peer"
56884
+ }),
56885
+ /* @__PURE__ */ jsx56("circle", {
56886
+ cx: "65",
56887
+ cy: "24",
56888
+ r: "2.8",
56889
+ className: "organism-peer"
56890
+ }),
56891
+ /* @__PURE__ */ jsxs39("g", {
56892
+ opacity: ".4",
56893
+ children: [
56894
+ /* @__PURE__ */ jsx56("circle", {
56895
+ cx: "-70",
56896
+ cy: "64",
56897
+ r: "2.6",
56898
+ className: "organism-peer"
56899
+ }),
56900
+ /* @__PURE__ */ jsx56("circle", {
56901
+ cx: "78",
56902
+ cy: "3",
56903
+ r: "2.6",
56904
+ className: "organism-peer"
56905
+ }),
56906
+ /* @__PURE__ */ jsx56("circle", {
56907
+ cx: "-60",
56908
+ cy: "-68",
56909
+ r: "2.6",
56910
+ className: "organism-peer"
56911
+ })
56912
+ ]
56913
+ })
56914
+ ]
56915
+ })
56916
+ ]
56917
+ })
56589
56918
  });
56590
- const span = (name) => name.length * CHARACTER + GAP;
56591
- const room2 = (brain, dir) => (dir < 0 ? brain.x - GAP : 100 - brain.x - GAP) >= span(brain.name);
56592
- const blocked = (brain, dir) => placed2.some((other) => other !== brain && Math.abs(other.y - brain.y) < 4 && (dir < 0 ? other.x < brain.x && brain.x - other.x < span(brain.name) : other.x > brain.x && other.x - brain.x < span(brain.name)));
56593
- const brains = placed2.map((brain) => {
56594
- const sides = brain.x < DISC.x ? [-1, 1] : [1, -1];
56595
- const dir = sides.find((candidate) => room2(brain, candidate) && !blocked(brain, candidate));
56596
- return {
56597
- ...brain,
56598
- side: dir === undefined ? "above" : dir < 0 ? "left" : "right"
56599
- };
56919
+ }
56920
+ function OrganismMap() {
56921
+ return /* @__PURE__ */ jsxs39("svg", {
56922
+ className: "organism-map",
56923
+ viewBox: "0 0 1080 280",
56924
+ role: "img",
56925
+ "aria-labelledby": "organism-map-title organism-map-desc",
56926
+ children: [
56927
+ /* @__PURE__ */ jsx56("title", {
56928
+ id: "organism-map-title",
56929
+ children: "One brain becomes a team, then a network"
56930
+ }),
56931
+ /* @__PURE__ */ jsx56("desc", {
56932
+ id: "organism-map-desc",
56933
+ children: "A brass light branches into a ruby triangle of people, then into three connected moss-green clusters. The same triangular form grows from the team's memory into a wider network."
56934
+ }),
56935
+ /* @__PURE__ */ jsx56("path", {
56936
+ className: "organism-ray-soft",
56937
+ d: "M180 142 C302 81 403 54 540 90 M588 172 C702 165 754 88 855 112"
56938
+ }),
56939
+ /* @__PURE__ */ jsx56("path", {
56940
+ className: "organism-ray",
56941
+ d: "M180 142 C302 81 403 54 540 90 M588 172 C702 165 754 88 855 112"
56942
+ }),
56943
+ /* @__PURE__ */ jsx56("path", {
56944
+ className: "organism-ray organism-ray-fine",
56945
+ d: "M180 142 C284 177 391 208 492 172 M540 90 C665 32 793 29 932 84 M492 172 C621 240 791 239 909 178"
56946
+ }),
56947
+ /* @__PURE__ */ jsx56("circle", {
56948
+ cx: "180",
56949
+ cy: "142",
56950
+ r: "126",
56951
+ fill: "url(#org-brain-light)",
56952
+ opacity: ".35"
56953
+ }),
56954
+ /* @__PURE__ */ jsx56("circle", {
56955
+ cx: "540",
56956
+ cy: "142",
56957
+ r: "112",
56958
+ fill: "url(#org-team-light)",
56959
+ opacity: ".24"
56960
+ }),
56961
+ /* @__PURE__ */ jsx56("circle", {
56962
+ cx: "900",
56963
+ cy: "142",
56964
+ r: "126",
56965
+ fill: "url(#org-net-light)",
56966
+ opacity: ".25"
56967
+ }),
56968
+ /* @__PURE__ */ jsx56("use", {
56969
+ href: "#org-brain",
56970
+ className: "organism-brain",
56971
+ x: "90",
56972
+ y: "52",
56973
+ width: "180",
56974
+ height: "180"
56975
+ }),
56976
+ /* @__PURE__ */ jsx56("use", {
56977
+ href: "#org-team",
56978
+ className: "organism-team",
56979
+ x: "450",
56980
+ y: "52",
56981
+ width: "180",
56982
+ height: "180"
56983
+ }),
56984
+ /* @__PURE__ */ jsx56("use", {
56985
+ href: "#org-network",
56986
+ className: "organism-network",
56987
+ x: "810",
56988
+ y: "52",
56989
+ width: "180",
56990
+ height: "180"
56991
+ })
56992
+ ]
56993
+ });
56994
+ }
56995
+ function OrganismArt() {
56996
+ return /* @__PURE__ */ jsxs39(Fragment21, {
56997
+ children: [
56998
+ /* @__PURE__ */ jsx56(OrganismDefs, {}),
56999
+ /* @__PURE__ */ jsx56(OrganismMap, {})
57000
+ ]
56600
57001
  });
56601
- const ids3 = new Set(brains.map((brain) => brain.id));
56602
- const kin = map6.clusters.flatMap((cluster) => cluster.links.filter((link2) => ids3.has(link2.sourceId) && ids3.has(link2.targetId)).map((link2) => ({ from: link2.sourceId, to: link2.targetId })));
56603
- return { brains, kin };
56604
57002
  }
56605
57003
 
56606
57004
  // src/opening.tsx
56607
- import { jsx as jsx56, jsxs as jsxs39, Fragment as Fragment21 } from "react/jsx-runtime";
57005
+ import { jsx as jsx57, jsxs as jsxs40, Fragment as Fragment23 } from "react/jsx-runtime";
56608
57006
  var openingSchema = proximityMapDataSchema.extend({
56609
57007
  topics: exports_external.array(exports_external.string()).default([]),
56610
57008
  askBox: exports_external.boolean().default(false),
@@ -56624,16 +57022,16 @@ function NetworkLayer({
56624
57022
  if (brains.length === 0)
56625
57023
  return null;
56626
57024
  const byId = new Map(brains.map((brain) => [brain.id, brain]));
56627
- return /* @__PURE__ */ jsxs39("div", {
57025
+ return /* @__PURE__ */ jsxs40("div", {
56628
57026
  className: "net-layer",
56629
57027
  "aria-hidden": "true",
56630
57028
  ...lendable ? { [ASK_DRAWING_ATTRIBUTE]: "" } : {},
56631
57029
  children: [
56632
- /* @__PURE__ */ jsxs39("svg", {
57030
+ /* @__PURE__ */ jsxs40("svg", {
56633
57031
  className: "net-svg",
56634
57032
  viewBox: "0 0 100 100",
56635
57033
  children: [
56636
- [14.7, 29.3, 44].map((r) => /* @__PURE__ */ jsx56("circle", {
57034
+ [14.7, 29.3, 44].map((r) => /* @__PURE__ */ jsx57("circle", {
56637
57035
  className: "net-ring",
56638
57036
  cx: "50",
56639
57037
  cy: "50",
@@ -56642,7 +57040,7 @@ function NetworkLayer({
56642
57040
  kin.map((link2) => {
56643
57041
  const from = byId.get(link2.from);
56644
57042
  const to = byId.get(link2.to);
56645
- return from && to ? /* @__PURE__ */ jsx56("line", {
57043
+ return from && to ? /* @__PURE__ */ jsx57("line", {
56646
57044
  className: "net-kin",
56647
57045
  x1: from.x,
56648
57046
  y1: from.y,
@@ -56650,7 +57048,7 @@ function NetworkLayer({
56650
57048
  y2: to.y
56651
57049
  }, `${link2.from}-${link2.to}`) : null;
56652
57050
  }),
56653
- brains.map((brain) => /* @__PURE__ */ jsx56("line", {
57051
+ brains.map((brain) => /* @__PURE__ */ jsx57("line", {
56654
57052
  className: "net-thread",
56655
57053
  "data-brain": brain.id,
56656
57054
  x1: "50",
@@ -56658,17 +57056,17 @@ function NetworkLayer({
56658
57056
  x2: brain.x,
56659
57057
  y2: brain.y
56660
57058
  }, `thread-${brain.id}`)),
56661
- /* @__PURE__ */ jsx56("circle", {
57059
+ /* @__PURE__ */ jsx57("circle", {
56662
57060
  className: "net-pulse",
56663
57061
  cx: "50",
56664
57062
  cy: "50",
56665
57063
  r: "46"
56666
57064
  }),
56667
- brains.map((brain) => /* @__PURE__ */ jsxs39("g", {
57065
+ brains.map((brain) => /* @__PURE__ */ jsxs40("g", {
56668
57066
  className: "net-reply",
56669
57067
  "data-brain": brain.id,
56670
57068
  children: [
56671
- /* @__PURE__ */ jsx56("circle", {
57069
+ /* @__PURE__ */ jsx57("circle", {
56672
57070
  className: "net-echo",
56673
57071
  cx: brain.x,
56674
57072
  cy: brain.y,
@@ -56678,7 +57076,7 @@ function NetworkLayer({
56678
57076
  animationDelay: replyDelay(brain.reach)
56679
57077
  }
56680
57078
  }),
56681
- /* @__PURE__ */ jsx56("line", {
57079
+ /* @__PURE__ */ jsx57("line", {
56682
57080
  className: "net-spark",
56683
57081
  pathLength: 1,
56684
57082
  x1: "50",
@@ -56689,19 +57087,19 @@ function NetworkLayer({
56689
57087
  })
56690
57088
  ]
56691
57089
  }, `reply-${brain.id}`)),
56692
- /* @__PURE__ */ jsx56("circle", {
57090
+ /* @__PURE__ */ jsx57("circle", {
56693
57091
  className: "net-corona",
56694
57092
  cx: "50",
56695
57093
  cy: "50",
56696
57094
  r: "5.5"
56697
57095
  }),
56698
- /* @__PURE__ */ jsx56("circle", {
57096
+ /* @__PURE__ */ jsx57("circle", {
56699
57097
  className: "net-corona net-corona--outer",
56700
57098
  cx: "50",
56701
57099
  cy: "50",
56702
57100
  r: "8.5"
56703
57101
  }),
56704
- /* @__PURE__ */ jsx56("circle", {
57102
+ /* @__PURE__ */ jsx57("circle", {
56705
57103
  className: "net-lantern",
56706
57104
  cx: "50",
56707
57105
  cy: "50",
@@ -56709,25 +57107,25 @@ function NetworkLayer({
56709
57107
  })
56710
57108
  ]
56711
57109
  }),
56712
- /* @__PURE__ */ jsx56("ul", {
57110
+ /* @__PURE__ */ jsx57("ul", {
56713
57111
  className: "net-marks",
56714
- children: brains.map((brain) => /* @__PURE__ */ jsx56("li", {
57112
+ children: brains.map((brain) => /* @__PURE__ */ jsx57("li", {
56715
57113
  className: "net-mark",
56716
57114
  "data-brain": brain.id,
56717
57115
  ...{ [ASK_MARK_ATTRIBUTE]: brain.id },
56718
57116
  style: { left: `${brain.x}%`, top: `${brain.y}%` },
56719
- children: /* @__PURE__ */ jsx56("a", {
57117
+ children: /* @__PURE__ */ jsx57("a", {
56720
57118
  href: `/agents/${brain.id}`,
56721
57119
  "aria-label": brain.name,
56722
- children: /* @__PURE__ */ jsx56("i", {
57120
+ children: /* @__PURE__ */ jsx57("i", {
56723
57121
  style: { animationDelay: replyDelay(brain.reach) }
56724
57122
  })
56725
57123
  })
56726
57124
  }, brain.id))
56727
57125
  }),
56728
- /* @__PURE__ */ jsx56("ol", {
57126
+ /* @__PURE__ */ jsx57("ol", {
56729
57127
  className: "net-names",
56730
- children: brains.map((brain) => /* @__PURE__ */ jsx56("li", {
57128
+ children: brains.map((brain) => /* @__PURE__ */ jsx57("li", {
56731
57129
  className: `net-name net-name--${brain.side}`,
56732
57130
  "data-brain": brain.id,
56733
57131
  style: { left: `${brain.x}%`, top: `${brain.y}%` },
@@ -56740,76 +57138,41 @@ function NetworkLayer({
56740
57138
  function Opening(data) {
56741
57139
  const headingLead = data.headingLead ?? DEFAULT_COPY.headingLead;
56742
57140
  const lede = data.lede ?? DEFAULT_COPY.lede;
56743
- return /* @__PURE__ */ jsxs39(Fragment21, {
57141
+ return /* @__PURE__ */ jsxs40("section", {
57142
+ id: "hero",
57143
+ className: "chapter chapter--opening",
57144
+ "data-title": "Top",
56744
57145
  children: [
56745
- /* @__PURE__ */ jsx56(NetworkLayer, {
56746
- ...placeNetwork(data),
56747
- lendable: data.askBox
57146
+ data.kicker && /* @__PURE__ */ jsx57("p", {
57147
+ className: "eyebrow",
57148
+ children: data.kicker
56748
57149
  }),
56749
- data.askBox && /* @__PURE__ */ jsx56("svg", {
56750
- className: "net-leads",
56751
- ...{ [ASK_LEADS_ATTRIBUTE]: "" },
56752
- "aria-hidden": "true"
57150
+ /* @__PURE__ */ jsxs40("h1", {
57151
+ children: [
57152
+ headingLead,
57153
+ data.headingAccent && /* @__PURE__ */ jsxs40(Fragment23, {
57154
+ children: [
57155
+ " ",
57156
+ /* @__PURE__ */ jsx57("em", {
57157
+ children: data.headingAccent
57158
+ })
57159
+ ]
57160
+ })
57161
+ ]
56753
57162
  }),
56754
- /* @__PURE__ */ jsx56("section", {
56755
- id: "hero",
56756
- className: "chapter chapter--opening",
56757
- "data-title": "Top",
56758
- children: /* @__PURE__ */ jsxs39("div", {
56759
- className: "opening__words",
56760
- ...data.askBox ? { [ASK_COLUMN_ATTRIBUTE]: "" } : {},
56761
- children: [
56762
- data.kicker && /* @__PURE__ */ jsx56("p", {
56763
- className: "eyebrow",
56764
- children: data.kicker
56765
- }),
56766
- /* @__PURE__ */ jsxs39("h1", {
56767
- children: [
56768
- headingLead,
56769
- data.headingAccent && /* @__PURE__ */ jsxs39(Fragment21, {
56770
- children: [
56771
- " ",
56772
- /* @__PURE__ */ jsx56("em", {
56773
- children: data.headingAccent
56774
- })
56775
- ]
56776
- })
56777
- ]
56778
- }),
56779
- /* @__PURE__ */ jsx56("p", {
56780
- className: "lede",
56781
- children: lede
56782
- }),
56783
- data.askBox ? /* @__PURE__ */ jsxs39("div", {
56784
- className: "ask",
56785
- children: [
56786
- /* @__PURE__ */ jsx56(AskBoxHost, {
56787
- prefix: "opening",
56788
- placeholder: data.prompt ?? undefined
56789
- }),
56790
- data.topics.length > 0 && /* @__PURE__ */ jsx56("ul", {
56791
- className: "ask__topics",
56792
- "aria-label": "Suggested questions",
56793
- children: data.topics.map((topic) => /* @__PURE__ */ jsx56("li", {
56794
- children: /* @__PURE__ */ jsx56("button", {
56795
- type: "button",
56796
- "data-atlas-fill": topic,
56797
- children: topic
56798
- })
56799
- }, topic))
56800
- }),
56801
- /* @__PURE__ */ jsx56("script", {
56802
- src: ASK_BOX_SCRIPT_PATH,
56803
- defer: true
56804
- })
56805
- ]
56806
- }) : data.ctaHref && data.ctaLabel && /* @__PURE__ */ jsx56("a", {
56807
- className: "opening__door",
56808
- href: data.ctaHref,
56809
- children: data.ctaLabel
56810
- })
56811
- ]
56812
- })
57163
+ /* @__PURE__ */ jsx57("p", {
57164
+ className: "lede",
57165
+ children: lede
57166
+ }),
57167
+ data.ctaHref && data.ctaLabel && /* @__PURE__ */ jsx57("a", {
57168
+ className: "opening__door",
57169
+ href: data.ctaHref,
57170
+ children: data.ctaLabel
57171
+ }),
57172
+ /* @__PURE__ */ jsx57("div", {
57173
+ className: "opening__art",
57174
+ "aria-hidden": "true",
57175
+ children: /* @__PURE__ */ jsx57(OrganismArt, {})
56813
57176
  })
56814
57177
  ]
56815
57178
  });
@@ -56828,7 +57191,7 @@ var openingCopyFormatter = new StructuredContentFormatter(proximityMapCopySchema
56828
57191
  });
56829
57192
  var openingTemplate = createTemplate({
56830
57193
  name: "opening",
56831
- description: "The homepage opening: the authored words over the live network, with the Ask box",
57194
+ description: "The homepage opening: the authored words over the live network, with the door",
56832
57195
  schema: openingSchema,
56833
57196
  dataSourceId: "rizom:opening",
56834
57197
  overlayFormatter: openingCopyFormatter,
@@ -56880,7 +57243,7 @@ function openingDataSource(shell) {
56880
57243
  }
56881
57244
 
56882
57245
  // src/asked.tsx
56883
- import { jsx as jsx57, jsxs as jsxs40, Fragment as Fragment23 } from "react/jsx-runtime";
57246
+ import { jsx as jsx58, jsxs as jsxs41, Fragment as Fragment25 } from "react/jsx-runtime";
56884
57247
  var askedSourceSchema = exports_external.object({
56885
57248
  id: exports_external.string(),
56886
57249
  title: exports_external.string(),
@@ -56926,40 +57289,40 @@ function Sources({ sources }) {
56926
57289
  if (sources.length === 0)
56927
57290
  return null;
56928
57291
  const brains = sources.flatMap((source) => source.brain ? [source.brain.name] : []);
56929
- return /* @__PURE__ */ jsxs40(Fragment23, {
57292
+ return /* @__PURE__ */ jsxs41(Fragment25, {
56930
57293
  children: [
56931
- brains.length > 0 && /* @__PURE__ */ jsx57("p", {
57294
+ brains.length > 0 && /* @__PURE__ */ jsx58("p", {
56932
57295
  className: "asked__by",
56933
57296
  children: answeredBy(OWNER, brains)
56934
57297
  }),
56935
- /* @__PURE__ */ jsx57("ul", {
57298
+ /* @__PURE__ */ jsx58("ul", {
56936
57299
  className: "asked__sources",
56937
57300
  "aria-label": "Sources",
56938
- children: sources.map((source) => /* @__PURE__ */ jsxs40("li", {
57301
+ children: sources.map((source) => /* @__PURE__ */ jsxs41("li", {
56939
57302
  "data-ask-source": source.id,
56940
57303
  ...source.brain ? { "data-ask-brain": source.brain.name } : {},
56941
57304
  children: [
56942
- /* @__PURE__ */ jsx57("span", {
57305
+ /* @__PURE__ */ jsx58("span", {
56943
57306
  className: "asked__mark",
56944
57307
  "aria-hidden": "true"
56945
57308
  }),
56946
- /* @__PURE__ */ jsxs40("span", {
57309
+ /* @__PURE__ */ jsxs41("span", {
56947
57310
  className: "asked__piece",
56948
57311
  children: [
56949
- source.brain && /* @__PURE__ */ jsx57("b", {
57312
+ source.brain && /* @__PURE__ */ jsx58("b", {
56950
57313
  children: source.brain.name
56951
57314
  }),
56952
- source.url ? /* @__PURE__ */ jsx57("a", {
57315
+ source.url ? /* @__PURE__ */ jsx58("a", {
56953
57316
  href: source.url,
56954
57317
  target: "_blank",
56955
57318
  rel: "noopener noreferrer",
56956
57319
  children: source.title
56957
- }) : /* @__PURE__ */ jsx57("span", {
57320
+ }) : /* @__PURE__ */ jsx58("span", {
56958
57321
  children: source.title
56959
57322
  })
56960
57323
  ]
56961
57324
  }),
56962
- source.excerpt && /* @__PURE__ */ jsx57("q", {
57325
+ source.excerpt && /* @__PURE__ */ jsx58("q", {
56963
57326
  children: source.excerpt
56964
57327
  })
56965
57328
  ]
@@ -56971,42 +57334,39 @@ function Sources({ sources }) {
56971
57334
  function Asked(data) {
56972
57335
  const { faqs } = data;
56973
57336
  if (faqs.length === 0)
56974
- return /* @__PURE__ */ jsx57(Fragment23, {});
56975
- return /* @__PURE__ */ jsxs40("section", {
57337
+ return /* @__PURE__ */ jsx58(Fragment25, {});
57338
+ return /* @__PURE__ */ jsxs41("section", {
56976
57339
  id: "asked",
56977
57340
  className: "chapter asked",
56978
57341
  "data-title": "Asked before",
56979
57342
  "data-lights-network": "",
56980
57343
  children: [
56981
- /* @__PURE__ */ jsx57("p", {
57344
+ /* @__PURE__ */ jsx58("p", {
56982
57345
  className: "eyebrow",
56983
57346
  children: data.cap ?? DEFAULT_COPY2.cap
56984
57347
  }),
56985
- /* @__PURE__ */ jsx57("h2", {
57348
+ /* @__PURE__ */ jsx58("h2", {
56986
57349
  children: data.claim ?? DEFAULT_COPY2.claim
56987
57350
  }),
56988
- /* @__PURE__ */ jsx57("p", {
57351
+ /* @__PURE__ */ jsx58("p", {
56989
57352
  children: data.body ?? DEFAULT_COPY2.body
56990
57353
  }),
56991
- /* @__PURE__ */ jsx57(NetworkLayer, {
56992
- ...placeNetwork(data)
56993
- }),
56994
- /* @__PURE__ */ jsx57("div", {
57354
+ /* @__PURE__ */ jsx58("div", {
56995
57355
  className: "asked__list",
56996
- children: faqs.map((faq) => /* @__PURE__ */ jsxs40("details", {
57356
+ children: faqs.map((faq) => /* @__PURE__ */ jsxs41("details", {
56997
57357
  name: "asked",
56998
57358
  "data-ask-answer": forDrawing(faq.sources),
56999
57359
  children: [
57000
- /* @__PURE__ */ jsx57("summary", {
57360
+ /* @__PURE__ */ jsx58("summary", {
57001
57361
  children: faq.question
57002
57362
  }),
57003
- /* @__PURE__ */ jsxs40("div", {
57363
+ /* @__PURE__ */ jsxs41("div", {
57004
57364
  className: "asked__answer",
57005
57365
  children: [
57006
- /* @__PURE__ */ jsx57(MarkdownContent, {
57366
+ /* @__PURE__ */ jsx58(MarkdownContent, {
57007
57367
  markdown: faq.answer
57008
57368
  }),
57009
- /* @__PURE__ */ jsx57(Sources, {
57369
+ /* @__PURE__ */ jsx58(Sources, {
57010
57370
  sources: faq.sources
57011
57371
  })
57012
57372
  ]
@@ -57035,6 +57395,137 @@ var askedTemplate = createTemplate({
57035
57395
  layout: { component: Asked }
57036
57396
  });
57037
57397
 
57398
+ // src/story/network.ts
57399
+ var DISC = { x: 50, y: 50, radius: 44 };
57400
+ var CHARACTER = 1.45;
57401
+ var GAP = 3;
57402
+ var r12 = (v2) => Math.round(v2 * 10) / 10;
57403
+ function placeNetwork(map6) {
57404
+ const shown = map6.nodes.filter((node2) => node2.status !== "archived");
57405
+ const max = proximityMaxDistance({ ...map6, nodes: shown });
57406
+ const placed2 = shown.map((node2) => {
57407
+ const point3 = proximityPoint(node2.distance, node2.bearing, max, DISC);
57408
+ return {
57409
+ id: node2.id,
57410
+ name: node2.name,
57411
+ x: r12(point3.x),
57412
+ y: r12(point3.y),
57413
+ reach: proximityReach(node2.distance, max)
57414
+ };
57415
+ });
57416
+ const span = (name) => name.length * CHARACTER + GAP;
57417
+ const room2 = (brain, dir) => (dir < 0 ? brain.x - GAP : 100 - brain.x - GAP) >= span(brain.name);
57418
+ const blocked = (brain, dir) => placed2.some((other) => other !== brain && Math.abs(other.y - brain.y) < 4 && (dir < 0 ? other.x < brain.x && brain.x - other.x < span(brain.name) : other.x > brain.x && other.x - brain.x < span(brain.name)));
57419
+ const brains = placed2.map((brain) => {
57420
+ const sides = brain.x < DISC.x ? [-1, 1] : [1, -1];
57421
+ const dir = sides.find((candidate) => room2(brain, candidate) && !blocked(brain, candidate));
57422
+ return {
57423
+ ...brain,
57424
+ side: dir === undefined ? "above" : dir < 0 ? "left" : "right"
57425
+ };
57426
+ });
57427
+ const ids3 = new Set(brains.map((brain) => brain.id));
57428
+ const kin = map6.clusters.flatMap((cluster) => cluster.links.filter((link2) => ids3.has(link2.sourceId) && ids3.has(link2.targetId)).map((link2) => ({ from: link2.sourceId, to: link2.targetId })));
57429
+ return { brains, kin };
57430
+ }
57431
+
57432
+ // src/ask-room.tsx
57433
+ import { jsx as jsx59, jsxs as jsxs43, Fragment as Fragment26 } from "react/jsx-runtime";
57434
+ var askRoomCopySchema = exports_external.object({
57435
+ cap: exports_external.string().nullable().default(null),
57436
+ claim: exports_external.string().nullable().default(null),
57437
+ body: exports_external.string().nullable().default(null)
57438
+ });
57439
+ var DEFAULT_COPY3 = {
57440
+ cap: "Ask",
57441
+ claim: "Ask the network",
57442
+ body: "Put a question to Rizom. It answers from what the connected brains have published, and the brains it drew on light up."
57443
+ };
57444
+ var askRoomSchema = proximityMapDataSchema.extend({
57445
+ ...askRoomCopySchema.shape,
57446
+ topics: exports_external.array(exports_external.string()).default([]),
57447
+ prompt: exports_external.string().nullable().default(null),
57448
+ askBox: exports_external.boolean().default(false)
57449
+ });
57450
+ function AskRoom(data) {
57451
+ return /* @__PURE__ */ jsxs43(Fragment26, {
57452
+ children: [
57453
+ /* @__PURE__ */ jsx59(NetworkLayer, {
57454
+ ...placeNetwork(data),
57455
+ lendable: true
57456
+ }),
57457
+ /* @__PURE__ */ jsx59("svg", {
57458
+ className: "net-leads",
57459
+ ...{ [ASK_LEADS_ATTRIBUTE]: "" },
57460
+ "aria-hidden": "true"
57461
+ }),
57462
+ /* @__PURE__ */ jsx59("section", {
57463
+ id: "ask",
57464
+ className: "chapter chapter--opening",
57465
+ "data-title": "Ask",
57466
+ children: /* @__PURE__ */ jsxs43("div", {
57467
+ className: "opening__words",
57468
+ ...{ [ASK_COLUMN_ATTRIBUTE]: "" },
57469
+ children: [
57470
+ /* @__PURE__ */ jsx59("p", {
57471
+ className: "eyebrow",
57472
+ children: data.cap ?? DEFAULT_COPY3.cap
57473
+ }),
57474
+ /* @__PURE__ */ jsx59("h1", {
57475
+ children: data.claim ?? DEFAULT_COPY3.claim
57476
+ }),
57477
+ /* @__PURE__ */ jsx59("p", {
57478
+ className: "lede",
57479
+ children: data.body ?? DEFAULT_COPY3.body
57480
+ }),
57481
+ /* @__PURE__ */ jsxs43("div", {
57482
+ className: "ask",
57483
+ children: [
57484
+ /* @__PURE__ */ jsx59(AskBoxHost, {
57485
+ prefix: "opening",
57486
+ placeholder: data.prompt ?? undefined
57487
+ }),
57488
+ data.topics.length > 0 && /* @__PURE__ */ jsx59("ul", {
57489
+ className: "ask__topics",
57490
+ "aria-label": "Suggested questions",
57491
+ children: data.topics.map((topic) => /* @__PURE__ */ jsx59("li", {
57492
+ children: /* @__PURE__ */ jsx59("button", {
57493
+ type: "button",
57494
+ "data-atlas-fill": topic,
57495
+ children: topic
57496
+ })
57497
+ }, topic))
57498
+ }),
57499
+ /* @__PURE__ */ jsx59("script", {
57500
+ src: ASK_BOX_SCRIPT_PATH,
57501
+ defer: true
57502
+ })
57503
+ ]
57504
+ })
57505
+ ]
57506
+ })
57507
+ })
57508
+ ]
57509
+ });
57510
+ }
57511
+ var askRoomCopyFormatter = new StructuredContentFormatter(askRoomCopySchema, {
57512
+ title: "Ask",
57513
+ mappings: [
57514
+ { key: "cap", label: "Cap", type: "string" },
57515
+ { key: "claim", label: "Claim", type: "string" },
57516
+ { key: "body", label: "Body", type: "string" }
57517
+ ]
57518
+ });
57519
+ var askRoomTemplate = createTemplate({
57520
+ name: "ask-room",
57521
+ description: "The Ask room: the guest box beside the live network, which an answer lights",
57522
+ schema: askRoomSchema,
57523
+ dataSourceId: "rizom:opening",
57524
+ overlayFormatter: askRoomCopyFormatter,
57525
+ requiredPermission: "public",
57526
+ layout: { component: AskRoom }
57527
+ });
57528
+
57038
57529
  // src/asked-datasource.ts
57039
57530
  var LIMIT = 12;
57040
57531
  var MAP_SOURCE_ID2 = "agent-discovery:proximity-map";
@@ -57075,7 +57566,7 @@ function askedDataSource(shell) {
57075
57566
  }
57076
57567
 
57077
57568
  // src/writing.tsx
57078
- import { jsx as jsx58, jsxs as jsxs41, Fragment as Fragment25 } from "react/jsx-runtime";
57569
+ import { jsx as jsx60, jsxs as jsxs45, Fragment as Fragment27 } from "react/jsx-runtime";
57079
57570
  var linked = {
57080
57571
  id: exports_external.string(),
57081
57572
  entityType: exports_external.string(),
@@ -57138,19 +57629,19 @@ function pieces({ posts, decks }) {
57138
57629
  ].sort((a, b2) => b2.date.localeCompare(a.date));
57139
57630
  }
57140
57631
  function PieceBody({ piece }) {
57141
- return /* @__PURE__ */ jsxs41(Fragment25, {
57632
+ return /* @__PURE__ */ jsxs45(Fragment27, {
57142
57633
  children: [
57143
- /* @__PURE__ */ jsxs41("small", {
57634
+ /* @__PURE__ */ jsxs45("small", {
57144
57635
  children: [
57145
57636
  LABEL[piece.kind],
57146
57637
  " \xB7 ",
57147
57638
  day.format(new Date(piece.date))
57148
57639
  ]
57149
57640
  }),
57150
- /* @__PURE__ */ jsx58("b", {
57641
+ /* @__PURE__ */ jsx60("b", {
57151
57642
  children: piece.title
57152
57643
  }),
57153
- piece.text && /* @__PURE__ */ jsx58("span", {
57644
+ piece.text && /* @__PURE__ */ jsx60("span", {
57154
57645
  children: piece.text
57155
57646
  })
57156
57647
  ]
@@ -57158,38 +57649,38 @@ function PieceBody({ piece }) {
57158
57649
  }
57159
57650
  function WritingArchive(data) {
57160
57651
  const thread = pieces(data);
57161
- return /* @__PURE__ */ jsxs41("section", {
57652
+ return /* @__PURE__ */ jsxs45("section", {
57162
57653
  id: "writing",
57163
57654
  className: "archive",
57164
57655
  children: [
57165
- /* @__PURE__ */ jsx58("link", {
57656
+ /* @__PURE__ */ jsx60("link", {
57166
57657
  rel: "stylesheet",
57167
57658
  href: "/styles/writing.css",
57168
57659
  precedence: "page"
57169
57660
  }),
57170
- /* @__PURE__ */ jsxs41("header", {
57661
+ /* @__PURE__ */ jsxs45("header", {
57171
57662
  className: "archive__head",
57172
57663
  children: [
57173
- /* @__PURE__ */ jsx58("p", {
57664
+ /* @__PURE__ */ jsx60("p", {
57174
57665
  className: "eyebrow",
57175
57666
  children: "Writing"
57176
57667
  }),
57177
- /* @__PURE__ */ jsx58("h1", {
57668
+ /* @__PURE__ */ jsx60("h1", {
57178
57669
  children: "Essays and presentations."
57179
57670
  }),
57180
- /* @__PURE__ */ jsx58("p", {
57671
+ /* @__PURE__ */ jsx60("p", {
57181
57672
  className: "lede",
57182
57673
  children: "A working bibliography; new entries land roughly monthly."
57183
57674
  }),
57184
- /* @__PURE__ */ jsxs41("fieldset", {
57675
+ /* @__PURE__ */ jsxs45("fieldset", {
57185
57676
  className: "archive__filter",
57186
57677
  children: [
57187
- /* @__PURE__ */ jsx58("legend", {
57678
+ /* @__PURE__ */ jsx60("legend", {
57188
57679
  children: "Show"
57189
57680
  }),
57190
- FILTERS.map((filter) => /* @__PURE__ */ jsxs41("label", {
57681
+ FILTERS.map((filter) => /* @__PURE__ */ jsxs45("label", {
57191
57682
  children: [
57192
- /* @__PURE__ */ jsx58("input", {
57683
+ /* @__PURE__ */ jsx60("input", {
57193
57684
  type: "radio",
57194
57685
  name: "show",
57195
57686
  value: filter.value,
@@ -57202,28 +57693,28 @@ function WritingArchive(data) {
57202
57693
  })
57203
57694
  ]
57204
57695
  }),
57205
- thread.length === 0 ? /* @__PURE__ */ jsx58("p", {
57696
+ thread.length === 0 ? /* @__PURE__ */ jsx60("p", {
57206
57697
  className: "archive__empty",
57207
57698
  children: "Nothing published yet."
57208
- }) : /* @__PURE__ */ jsx58("ol", {
57699
+ }) : /* @__PURE__ */ jsx60("ol", {
57209
57700
  className: "thread-list",
57210
- children: thread.map((piece, i) => /* @__PURE__ */ jsxs41("li", {
57701
+ children: thread.map((piece, i) => /* @__PURE__ */ jsxs45("li", {
57211
57702
  className: `piece piece--${piece.kind}`,
57212
57703
  style: {
57213
57704
  animationDelay: `${Math.round((0.4 + Math.min(i, 8) * 0.15) * 100) / 100}s`
57214
57705
  },
57215
57706
  children: [
57216
- /* @__PURE__ */ jsx58("span", {
57707
+ /* @__PURE__ */ jsx60("span", {
57217
57708
  className: "piece__mark",
57218
57709
  "aria-hidden": "true"
57219
57710
  }),
57220
- piece.url ? /* @__PURE__ */ jsx58("a", {
57711
+ piece.url ? /* @__PURE__ */ jsx60("a", {
57221
57712
  href: piece.url,
57222
- children: /* @__PURE__ */ jsx58(PieceBody, {
57713
+ children: /* @__PURE__ */ jsx60(PieceBody, {
57223
57714
  piece
57224
57715
  })
57225
- }) : /* @__PURE__ */ jsx58("div", {
57226
- children: /* @__PURE__ */ jsx58(PieceBody, {
57716
+ }) : /* @__PURE__ */ jsx60("div", {
57717
+ children: /* @__PURE__ */ jsx60(PieceBody, {
57227
57718
  piece
57228
57719
  })
57229
57720
  })
@@ -57274,7 +57765,7 @@ function writingDataSource(shell) {
57274
57765
  }
57275
57766
 
57276
57767
  // src/work.tsx
57277
- import { jsx as jsx59, jsxs as jsxs43 } from "react/jsx-runtime";
57768
+ import { jsx as jsx61, jsxs as jsxs46 } from "react/jsx-runtime";
57278
57769
  var heroSchema2 = exports_external.object({
57279
57770
  eyebrow: exports_external.string(),
57280
57771
  headline: exports_external.string(),
@@ -57289,29 +57780,29 @@ function WorkHeroSection({
57289
57780
  primaryCta,
57290
57781
  secondaryCta
57291
57782
  }) {
57292
- return /* @__PURE__ */ jsxs43("section", {
57783
+ return /* @__PURE__ */ jsxs46("section", {
57293
57784
  id: "work-hero",
57294
57785
  className: "chapter",
57295
57786
  children: [
57296
- /* @__PURE__ */ jsx59("p", {
57787
+ /* @__PURE__ */ jsx61("p", {
57297
57788
  className: "eyebrow",
57298
57789
  children: eyebrow
57299
57790
  }),
57300
- /* @__PURE__ */ jsx59("h1", {
57791
+ /* @__PURE__ */ jsx61("h1", {
57301
57792
  children: emphasize(headline)
57302
57793
  }),
57303
- /* @__PURE__ */ jsx59("p", {
57794
+ /* @__PURE__ */ jsx61("p", {
57304
57795
  className: "lede",
57305
57796
  children: standfirst
57306
57797
  }),
57307
- /* @__PURE__ */ jsxs43("p", {
57798
+ /* @__PURE__ */ jsxs46("p", {
57308
57799
  className: "doors-in",
57309
57800
  children: [
57310
- /* @__PURE__ */ jsx59("a", {
57801
+ /* @__PURE__ */ jsx61("a", {
57311
57802
  href: primaryCta.href,
57312
57803
  children: primaryCta.label
57313
57804
  }),
57314
- /* @__PURE__ */ jsx59("a", {
57805
+ /* @__PURE__ */ jsx61("a", {
57315
57806
  href: secondaryCta.href,
57316
57807
  children: secondaryCta.label
57317
57808
  })
@@ -57330,18 +57821,18 @@ function WorkProblemSection({
57330
57821
  headline,
57331
57822
  intro
57332
57823
  }) {
57333
- return /* @__PURE__ */ jsxs43("section", {
57824
+ return /* @__PURE__ */ jsxs46("section", {
57334
57825
  id: "work-problem",
57335
57826
  className: "chapter",
57336
57827
  children: [
57337
- /* @__PURE__ */ jsx59("p", {
57828
+ /* @__PURE__ */ jsx61("p", {
57338
57829
  className: "eyebrow",
57339
57830
  children: cap
57340
57831
  }),
57341
- /* @__PURE__ */ jsx59("h2", {
57832
+ /* @__PURE__ */ jsx61("h2", {
57342
57833
  children: emphasize(headline)
57343
57834
  }),
57344
- /* @__PURE__ */ jsx59("p", {
57835
+ /* @__PURE__ */ jsx61("p", {
57345
57836
  children: intro
57346
57837
  })
57347
57838
  ]
@@ -57359,35 +57850,35 @@ function WorkAuditSection({
57359
57850
  steps,
57360
57851
  ctas
57361
57852
  }) {
57362
- return /* @__PURE__ */ jsxs43("section", {
57853
+ return /* @__PURE__ */ jsxs46("section", {
57363
57854
  id: "audit",
57364
57855
  className: "chapter",
57365
57856
  "data-title": "The Knowledge Audit",
57366
57857
  children: [
57367
- /* @__PURE__ */ jsx59("p", {
57858
+ /* @__PURE__ */ jsx61("p", {
57368
57859
  className: "eyebrow",
57369
57860
  children: cap
57370
57861
  }),
57371
- /* @__PURE__ */ jsx59("h2", {
57862
+ /* @__PURE__ */ jsx61("h2", {
57372
57863
  children: emphasize(headline)
57373
57864
  }),
57374
- /* @__PURE__ */ jsx59("p", {
57865
+ /* @__PURE__ */ jsx61("p", {
57375
57866
  children: intro
57376
57867
  }),
57377
- /* @__PURE__ */ jsx59("ol", {
57868
+ /* @__PURE__ */ jsx61("ol", {
57378
57869
  className: "steps",
57379
- children: steps.map((step) => /* @__PURE__ */ jsxs43("li", {
57870
+ children: steps.map((step) => /* @__PURE__ */ jsxs46("li", {
57380
57871
  children: [
57381
- /* @__PURE__ */ jsx59("b", {
57872
+ /* @__PURE__ */ jsx61("b", {
57382
57873
  children: step.lead
57383
57874
  }),
57384
- /* @__PURE__ */ jsx59("span", {
57875
+ /* @__PURE__ */ jsx61("span", {
57385
57876
  children: step.text
57386
57877
  })
57387
57878
  ]
57388
57879
  }, step.lead))
57389
57880
  }),
57390
- ctas.map((cta) => /* @__PURE__ */ jsx59("a", {
57881
+ ctas.map((cta) => /* @__PURE__ */ jsx61("a", {
57391
57882
  className: "cta",
57392
57883
  href: cta.href,
57393
57884
  children: cta.label
@@ -57403,24 +57894,24 @@ function WorkPersonasSection({
57403
57894
  cap,
57404
57895
  personas
57405
57896
  }) {
57406
- return /* @__PURE__ */ jsxs43("section", {
57897
+ return /* @__PURE__ */ jsxs46("section", {
57407
57898
  id: "personas",
57408
57899
  className: "chapter",
57409
57900
  "data-title": cap,
57410
57901
  children: [
57411
- /* @__PURE__ */ jsx59("p", {
57902
+ /* @__PURE__ */ jsx61("p", {
57412
57903
  className: "eyebrow",
57413
57904
  children: cap
57414
57905
  }),
57415
- /* @__PURE__ */ jsx59("div", {
57906
+ /* @__PURE__ */ jsx61("div", {
57416
57907
  className: "voices",
57417
- children: personas.map((persona) => /* @__PURE__ */ jsxs43("blockquote", {
57908
+ children: personas.map((persona) => /* @__PURE__ */ jsxs46("blockquote", {
57418
57909
  children: [
57419
- /* @__PURE__ */ jsx59("small", {
57910
+ /* @__PURE__ */ jsx61("small", {
57420
57911
  children: persona.role
57421
57912
  }),
57422
57913
  persona.quote,
57423
- /* @__PURE__ */ jsx59("p", {
57914
+ /* @__PURE__ */ jsx61("p", {
57424
57915
  children: persona.text
57425
57916
  })
57426
57917
  ]
@@ -57437,21 +57928,21 @@ function WorkQuotesSection({
57437
57928
  cap,
57438
57929
  quotes
57439
57930
  }) {
57440
- return /* @__PURE__ */ jsxs43("section", {
57931
+ return /* @__PURE__ */ jsxs46("section", {
57441
57932
  id: "proof",
57442
57933
  className: "chapter",
57443
57934
  "data-title": cap,
57444
57935
  children: [
57445
- /* @__PURE__ */ jsx59("p", {
57936
+ /* @__PURE__ */ jsx61("p", {
57446
57937
  className: "eyebrow",
57447
57938
  children: cap
57448
57939
  }),
57449
- /* @__PURE__ */ jsx59("div", {
57940
+ /* @__PURE__ */ jsx61("div", {
57450
57941
  className: "voices",
57451
- children: quotes.map((quote) => /* @__PURE__ */ jsxs43("blockquote", {
57942
+ children: quotes.map((quote) => /* @__PURE__ */ jsxs46("blockquote", {
57452
57943
  children: [
57453
57944
  quote.text,
57454
- /* @__PURE__ */ jsx59("cite", {
57945
+ /* @__PURE__ */ jsx61("cite", {
57455
57946
  children: quote.by
57456
57947
  })
57457
57948
  ]
@@ -57468,30 +57959,30 @@ function WorkRosterSection({
57468
57959
  cap,
57469
57960
  people
57470
57961
  }) {
57471
- return /* @__PURE__ */ jsxs43("section", {
57962
+ return /* @__PURE__ */ jsxs46("section", {
57472
57963
  id: "people",
57473
57964
  className: "chapter",
57474
57965
  children: [
57475
- /* @__PURE__ */ jsx59("p", {
57966
+ /* @__PURE__ */ jsx61("p", {
57476
57967
  className: "eyebrow",
57477
57968
  children: cap
57478
57969
  }),
57479
- /* @__PURE__ */ jsx59("ul", {
57970
+ /* @__PURE__ */ jsx61("ul", {
57480
57971
  className: "people",
57481
- children: people.map((person) => /* @__PURE__ */ jsxs43("li", {
57972
+ children: people.map((person) => /* @__PURE__ */ jsxs46("li", {
57482
57973
  children: [
57483
- /* @__PURE__ */ jsx59("b", {
57974
+ /* @__PURE__ */ jsx61("b", {
57484
57975
  children: person.name
57485
57976
  }),
57486
- /* @__PURE__ */ jsx59("span", {
57977
+ /* @__PURE__ */ jsx61("span", {
57487
57978
  children: person.role
57488
57979
  })
57489
57980
  ]
57490
57981
  }, person.name))
57491
57982
  }),
57492
- /* @__PURE__ */ jsx59("p", {
57983
+ /* @__PURE__ */ jsx61("p", {
57493
57984
  className: "onward",
57494
- children: /* @__PURE__ */ jsx59("a", {
57985
+ children: /* @__PURE__ */ jsx61("a", {
57495
57986
  href: "/foundation",
57496
57987
  children: "The research arm, at the Foundation"
57497
57988
  })
@@ -57509,22 +58000,22 @@ function WorkCloserSection({
57509
58000
  primaryCta,
57510
58001
  secondaryCta
57511
58002
  }) {
57512
- return /* @__PURE__ */ jsxs43("section", {
58003
+ return /* @__PURE__ */ jsxs46("section", {
57513
58004
  id: "closer",
57514
58005
  className: "chapter",
57515
58006
  "data-title": "Your team type",
57516
58007
  children: [
57517
- /* @__PURE__ */ jsx59("h2", {
58008
+ /* @__PURE__ */ jsx61("h2", {
57518
58009
  children: emphasize(quote)
57519
58010
  }),
57520
- /* @__PURE__ */ jsxs43("p", {
58011
+ /* @__PURE__ */ jsxs46("p", {
57521
58012
  className: "doors-in",
57522
58013
  children: [
57523
- /* @__PURE__ */ jsx59("a", {
58014
+ /* @__PURE__ */ jsx61("a", {
57524
58015
  href: primaryCta.href,
57525
58016
  children: primaryCta.label
57526
58017
  }),
57527
- /* @__PURE__ */ jsx59("a", {
58018
+ /* @__PURE__ */ jsx61("a", {
57528
58019
  href: secondaryCta.href,
57529
58020
  children: secondaryCta.label
57530
58021
  })
@@ -57565,7 +58056,7 @@ var workSections = sectionGroup("work", {
57565
58056
  });
57566
58057
 
57567
58058
  // src/foundation.tsx
57568
- import { jsx as jsx60, jsxs as jsxs45, Fragment as Fragment26 } from "react/jsx-runtime";
58059
+ import { jsx as jsx63, jsxs as jsxs47, Fragment as Fragment28 } from "react/jsx-runtime";
57569
58060
  var EMPHASIS_CLS = "italic font-[400] text-accent";
57570
58061
  var heroSchema3 = exports_external.object({
57571
58062
  volume: exports_external.string(),
@@ -57581,29 +58072,29 @@ function FoundationHeroSection({
57581
58072
  primaryCta,
57582
58073
  secondaryCta
57583
58074
  }) {
57584
- return /* @__PURE__ */ jsxs45("section", {
58075
+ return /* @__PURE__ */ jsxs47("section", {
57585
58076
  id: "foundation-hero",
57586
58077
  className: "chapter",
57587
58078
  children: [
57588
- /* @__PURE__ */ jsx60("p", {
58079
+ /* @__PURE__ */ jsx63("p", {
57589
58080
  className: "eyebrow",
57590
58081
  children: "Foundation"
57591
58082
  }),
57592
- /* @__PURE__ */ jsx60("h1", {
58083
+ /* @__PURE__ */ jsx63("h1", {
57593
58084
  children: renderHighlightedText(headline, EMPHASIS_CLS)
57594
58085
  }),
57595
- /* @__PURE__ */ jsx60("p", {
58086
+ /* @__PURE__ */ jsx63("p", {
57596
58087
  className: "lede",
57597
58088
  children: standfirst
57598
58089
  }),
57599
- /* @__PURE__ */ jsxs45("p", {
58090
+ /* @__PURE__ */ jsxs47("p", {
57600
58091
  className: "doors-in",
57601
58092
  children: [
57602
- /* @__PURE__ */ jsx60("a", {
58093
+ /* @__PURE__ */ jsx63("a", {
57603
58094
  href: primaryCta.href,
57604
58095
  children: primaryCta.label
57605
58096
  }),
57606
- /* @__PURE__ */ jsx60("a", {
58097
+ /* @__PURE__ */ jsx63("a", {
57607
58098
  href: secondaryCta.href,
57608
58099
  children: secondaryCta.label
57609
58100
  })
@@ -57627,24 +58118,24 @@ var indexSchema = exports_external.object({
57627
58118
  items: exports_external.array(indexRowSchema)
57628
58119
  });
57629
58120
  function Entry({ row }) {
57630
- const body = /* @__PURE__ */ jsxs45(Fragment26, {
58121
+ const body = /* @__PURE__ */ jsxs47(Fragment28, {
57631
58122
  children: [
57632
- /* @__PURE__ */ jsx60("small", {
58123
+ /* @__PURE__ */ jsx63("small", {
57633
58124
  children: row.kicker
57634
58125
  }),
57635
- /* @__PURE__ */ jsx60("b", {
58126
+ /* @__PURE__ */ jsx63("b", {
57636
58127
  children: row.title
57637
58128
  }),
57638
- /* @__PURE__ */ jsx60("span", {
58129
+ /* @__PURE__ */ jsx63("span", {
57639
58130
  children: [row.text, row.metaSub].filter(Boolean).join(" ")
57640
58131
  })
57641
58132
  ]
57642
58133
  });
57643
- return /* @__PURE__ */ jsx60("li", {
57644
- children: row.href ? /* @__PURE__ */ jsx60("a", {
58134
+ return /* @__PURE__ */ jsx63("li", {
58135
+ children: row.href ? /* @__PURE__ */ jsx63("a", {
57645
58136
  href: row.href,
57646
58137
  children: body
57647
- }) : /* @__PURE__ */ jsx60("div", {
58138
+ }) : /* @__PURE__ */ jsx63("div", {
57648
58139
  children: body
57649
58140
  })
57650
58141
  });
@@ -57655,20 +58146,20 @@ function EntriesChapter({
57655
58146
  title,
57656
58147
  items
57657
58148
  }) {
57658
- return /* @__PURE__ */ jsxs45("section", {
58149
+ return /* @__PURE__ */ jsxs47("section", {
57659
58150
  id,
57660
58151
  className: "chapter",
57661
58152
  children: [
57662
- /* @__PURE__ */ jsx60("p", {
58153
+ /* @__PURE__ */ jsx63("p", {
57663
58154
  className: "eyebrow",
57664
58155
  children: cap
57665
58156
  }),
57666
- /* @__PURE__ */ jsx60("h2", {
58157
+ /* @__PURE__ */ jsx63("h2", {
57667
58158
  children: title
57668
58159
  }),
57669
- /* @__PURE__ */ jsx60("ul", {
58160
+ /* @__PURE__ */ jsx63("ul", {
57670
58161
  className: "entries",
57671
- children: items.map((row) => /* @__PURE__ */ jsx60(Entry, {
58162
+ children: items.map((row) => /* @__PURE__ */ jsx63(Entry, {
57672
58163
  row
57673
58164
  }, row.title))
57674
58165
  })
@@ -57679,7 +58170,7 @@ function FoundationResearchSection({
57679
58170
  cap,
57680
58171
  items
57681
58172
  }) {
57682
- return /* @__PURE__ */ jsx60(EntriesChapter, {
58173
+ return /* @__PURE__ */ jsx63(EntriesChapter, {
57683
58174
  id: "research",
57684
58175
  cap,
57685
58176
  title: "A working bibliography.",
@@ -57690,7 +58181,7 @@ function FoundationChaptersSection({
57690
58181
  cap,
57691
58182
  items
57692
58183
  }) {
57693
- return /* @__PURE__ */ jsx60(EntriesChapter, {
58184
+ return /* @__PURE__ */ jsx63(EntriesChapter, {
57694
58185
  id: "events",
57695
58186
  cap,
57696
58187
  title: "Twenty to forty people, city by city.",
@@ -57705,16 +58196,16 @@ function FoundationPullquoteSection({
57705
58196
  quote,
57706
58197
  attribution
57707
58198
  }) {
57708
- return /* @__PURE__ */ jsxs45("section", {
58199
+ return /* @__PURE__ */ jsxs47("section", {
57709
58200
  id: "pullquote",
57710
58201
  className: "chapter",
57711
58202
  "data-title": "The pattern",
57712
58203
  children: [
57713
- /* @__PURE__ */ jsx60("p", {
58204
+ /* @__PURE__ */ jsx63("p", {
57714
58205
  className: "pull",
57715
58206
  children: renderHighlightedText(quote, EMPHASIS_CLS)
57716
58207
  }),
57717
- /* @__PURE__ */ jsx60("p", {
58208
+ /* @__PURE__ */ jsx63("p", {
57718
58209
  children: attribution
57719
58210
  })
57720
58211
  ]
@@ -57733,32 +58224,32 @@ function FoundationSupportSection({
57733
58224
  cap,
57734
58225
  options: options3
57735
58226
  }) {
57736
- return /* @__PURE__ */ jsxs45("section", {
58227
+ return /* @__PURE__ */ jsxs47("section", {
57737
58228
  id: "support",
57738
58229
  className: "chapter",
57739
58230
  children: [
57740
- /* @__PURE__ */ jsx60("p", {
58231
+ /* @__PURE__ */ jsx63("p", {
57741
58232
  className: "eyebrow",
57742
58233
  children: cap
57743
58234
  }),
57744
- /* @__PURE__ */ jsx60("h2", {
58235
+ /* @__PURE__ */ jsx63("h2", {
57745
58236
  children: "Two ways the work gets funded."
57746
58237
  }),
57747
- /* @__PURE__ */ jsx60("dl", {
58238
+ /* @__PURE__ */ jsx63("dl", {
57748
58239
  className: "parts",
57749
- children: options3.map((option) => /* @__PURE__ */ jsxs45("div", {
58240
+ children: options3.map((option) => /* @__PURE__ */ jsxs47("div", {
57750
58241
  children: [
57751
- /* @__PURE__ */ jsxs45("dt", {
58242
+ /* @__PURE__ */ jsxs47("dt", {
57752
58243
  children: [
57753
58244
  option.kicker,
57754
58245
  " ",
57755
- /* @__PURE__ */ jsx60("span", {
58246
+ /* @__PURE__ */ jsx63("span", {
57756
58247
  className: "status",
57757
58248
  children: option.amount
57758
58249
  })
57759
58250
  ]
57760
58251
  }),
57761
- /* @__PURE__ */ jsx60("dd", {
58252
+ /* @__PURE__ */ jsx63("dd", {
57762
58253
  children: option.text
57763
58254
  })
57764
58255
  ]
@@ -57775,18 +58266,18 @@ function FoundationFollowSection({
57775
58266
  claim,
57776
58267
  links
57777
58268
  }) {
57778
- return /* @__PURE__ */ jsxs45("section", {
58269
+ return /* @__PURE__ */ jsxs47("section", {
57779
58270
  id: "follow",
57780
58271
  className: "chapter",
57781
58272
  "data-title": "Follow the research",
57782
58273
  children: [
57783
- /* @__PURE__ */ jsx60("p", {
58274
+ /* @__PURE__ */ jsx63("p", {
57784
58275
  className: "pull",
57785
58276
  children: renderHighlightedText(claim, "not-italic font-medium text-theme")
57786
58277
  }),
57787
- /* @__PURE__ */ jsx60("p", {
58278
+ /* @__PURE__ */ jsx63("p", {
57788
58279
  className: "follow",
57789
- children: links.map((link2) => /* @__PURE__ */ jsx60("a", {
58280
+ children: links.map((link2) => /* @__PURE__ */ jsx63("a", {
57790
58281
  href: link2.href,
57791
58282
  children: link2.label
57792
58283
  }, link2.href + link2.label))
@@ -57836,7 +58327,6 @@ var aiRoutes = [
57836
58327
  { id: "turn", template: "living-memory:turn" },
57837
58328
  { id: "growth", template: "living-memory:growth" },
57838
58329
  { id: "arc", template: "living-memory:arc" },
57839
- { id: "asked", template: "rizom:asked", dataQuery: {} },
57840
58330
  { id: "doors", template: "living-memory:doors" }
57841
58331
  ]
57842
58332
  },
@@ -57860,12 +58350,13 @@ var aiRoutes = [
57860
58350
  {
57861
58351
  id: "public-ask",
57862
58352
  path: "/ask",
57863
- title: "Ask Rizom AI",
58353
+ title: "Ask the network",
57864
58354
  description: "Ask a question of Rizom's public Brain knowledge",
57865
58355
  layout: "default",
57866
58356
  navigation: { show: false },
57867
58357
  sections: [
57868
- { id: "conversation", template: "public-ask:conversation", content: {} }
58358
+ { id: "ask", template: "rizom:ask-room", dataQuery: {} },
58359
+ { id: "asked", template: "rizom:asked", dataQuery: {} }
57869
58360
  ]
57870
58361
  },
57871
58362
  {
@@ -57912,48 +58403,6 @@ var aiRoutes = [
57912
58403
  }
57913
58404
  ];
57914
58405
 
57915
- // src/public-ask.tsx
57916
- import { jsx as jsx61, jsxs as jsxs46, Fragment as Fragment27 } from "react/jsx-runtime";
57917
- function PublicAsk() {
57918
- return /* @__PURE__ */ jsxs46(Fragment27, {
57919
- children: [
57920
- /* @__PURE__ */ jsx61("link", {
57921
- rel: "stylesheet",
57922
- href: "/ask/assets/ask.css"
57923
- }),
57924
- /* @__PURE__ */ jsx61("link", {
57925
- rel: "stylesheet",
57926
- href: "/ask/assets/page.css"
57927
- }),
57928
- /* @__PURE__ */ jsxs46("div", {
57929
- "data-web-chat-root": "",
57930
- "data-guest-chat": "",
57931
- "data-guest-name": "Rizom AI",
57932
- "data-guest-label": "Rizom AI",
57933
- "data-chat-api-path": "/api/chat/guest",
57934
- children: [
57935
- /* @__PURE__ */ jsx61("p", {
57936
- children: "Connecting to public Ask\u2026"
57937
- }),
57938
- /* @__PURE__ */ jsx61("noscript", {
57939
- children: "JavaScript is needed to ask a question. No question has been sent."
57940
- })
57941
- ]
57942
- }),
57943
- /* @__PURE__ */ jsx61("script", {
57944
- type: "module",
57945
- src: "/ask/assets/ask.js"
57946
- })
57947
- ]
57948
- });
57949
- }
57950
- var publicAskSections = sectionGroup("public-ask", {
57951
- conversation: defineSection(exports_external.object({}), PublicAsk, {
57952
- title: "Public Ask",
57953
- description: "The shared guest conversation inside the site's own layout"
57954
- })
57955
- });
57956
-
57957
58406
  // src/site.ts
57958
58407
  var rizomAiSite = createRizomSite({
57959
58408
  packageName: "@rizom/site-rizom-ai",
@@ -57964,7 +58413,8 @@ var rizomAiSite = createRizomSite({
57964
58413
  templates: {
57965
58414
  opening: openingTemplate,
57966
58415
  writing: writingTemplate,
57967
- asked: askedTemplate
58416
+ asked: askedTemplate,
58417
+ "ask-room": askRoomTemplate
57968
58418
  },
57969
58419
  dataSourceFactories: [
57970
58420
  openingDataSource,
@@ -57975,7 +58425,6 @@ var rizomAiSite = createRizomSite({
57975
58425
  sections: [
57976
58426
  livingMemorySections,
57977
58427
  brainSections,
57978
- publicAskSections,
57979
58428
  workSections,
57980
58429
  foundationSections
57981
58430
  ],
@@ -58015,4 +58464,4 @@ export {
58015
58464
  workSections
58016
58465
  };
58017
58466
 
58018
- //# debugId=B1F5BE6FAAA7D59664756E2164756E21
58467
+ //# debugId=E7C051CF4A01231464756E2164756E21