@esri/solutions-components 5.1.0-next.135 → 5.1.0-next.136

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.
@@ -21,7 +21,7 @@ import { g as F, d as se, r as ie, t as Be, T as L } from "../../chunks/template
21
21
  import Ue from "@arcgis/core/portal/Portal.js";
22
22
  import qe from "@arcgis/core/portal/PortalItem.js";
23
23
  const ze = ke`:host{display:block;height:100%}.margin-lg{margin:var(--calcite-spacing-lg)}.display-flex-row{display:flex;flex-direction:row}.assistant-split-container{display:flex;width:100%;height:calc(100vh - 78px);overflow:hidden;border-radius:10px}.assistant-panel{display:flex;flex-direction:column;height:100%;border:1px solid var(--calcite-color-surface-3);background-color:var(--calcite-color-surface-2);overflow:hidden}.chat-panel{min-width:320px}.builder-panel{min-width:320px;max-width:100%;border-left:1px solid var(--calcite-color-surface-3)}.panel-actions{display:flex;gap:8px;padding:6px;align-items:center}.builder-header,.builder-footer{padding:10px;background:var(--calcite-color-surface-1);border-bottom:1px solid var(--calcite-color-surface-3)}.builder-content{flex:1;overflow:auto;padding:12px}.builder-content pre{white-space:pre-wrap;word-wrap:break-word;max-height:100%;overflow:auto}.builder-actions{display:flex;gap:6px;align-items:center}.padding-left-10{padding-left:10px}.chat-container{display:flex;flex-direction:column;gap:0px;max-width:600px;height:75%;background-color:var(--calcite-color-surface-4);padding:1px}.chat-container_expanded{display:flex;flex-direction:column;gap:0px;max-width:100%;height:95%;background-color:var(--calcite-color-surface-1);border-radius:10px;padding:10px}.chat-panel{--calcite-color-focus: var(--calcite-color-brand);--calcite-panel-border-color: var(--calcite-color-border-2);--calcite-internal-panel-header-vertical-padding: 0px;--calcite-panel-header-content-space: 0px;border:var(--calcite-border-width-sm) solid var(--calcite-color-border-2);height:100%}.header-content{display:flex;align-items:center;gap:var(--calcite-spacing-sm);height:65px;box-sizing:border-box;padding-inline-start:var(--calcite-space-2xl)}.header-title{font-size:var(--calcite-font-size-md);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1)}.beta-chip{--calcite-chip-corner-radius: var(--calcite-corner-radius-half)}.chat-panel calcite-card,.chat-panel calcite-text-area,.chat-panel calcite-button,.chat-panel .chat-messages,.chat-panel .chat-input{--calcite-color-focus: var(--calcite-color-brand)}.assistant-followup-chip:focus{outline:2px solid var(--calcite-color-brand)}.chat-panel-heading{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-surface-1, var(--calcite-color-text-1))}.chat-messages{display:flex;flex-direction:column;gap:20px;padding:4px;height:100%;overflow-y:auto}.user-message{align-self:flex-end;background:var(--calcite-color-brand);border-radius:8px;max-width:90%;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-brand);--calcite-card-border-color: var(--calcite-color-brand);color:var(--calcite-color-text-inverse);text-align:left}.system-message{align-self:flex-start;background:var(--calcite-color-surface-3);border-radius:8px;max-width:90%;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-surface-4);--calcite-card-border-color: var(--calcite-color-surface-4);color:var(--calcite-color-inverse);text-align:left}.loader-message{align-self:flex-start;background:var(--calcite-color-surface-4);border-radius:8px;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-surface-4);--calcite-card-border-color: var(--calcite-color-surface-4)}.message-content{padding:0;font-size:14px}.response-message.message-content>p:first-of-type{margin-top:0}.message-content img{max-width:100%;height:auto;display:block;object-fit:contain}.message-content-pad{padding-bottom:10px;font-size:14px}.message-content-summary{padding-bottom:14px}.message-content-alignment{display:flex;align-items:center;gap:var(--calcite-spacing-md);font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-1)}.padding-top-10{padding-top:10px}.padding-right-8{padding-right:8px}.padding-left-right-5{padding-right:5px;padding-left:5px}.chip-content{padding:5px 5px 5px 0}.chat-input{display:flex;flex-direction:row;flex-grow:1}.table-cell{--calcite-table-cell-background: var(--calcite-color-surface-4)}.cursor-pointer{cursor:pointer}.notice-border-color{--temp-initial-brand: var(--calcite-color-brand)}.notice-border-color calcite-notice{--calcite-color-brand: #ddd;--calcite-icon-color: var(--temp-initial-brand)}.notice-border-color calcite-notice *{--calcite-color-brand: var(--temp-initial-brand)}.solution-card{padding:5px 0;text-decoration:none;display:block;width:100%;cursor:pointer}.solution-card calcite-card{display:flex;flex-direction:column;max-width:520px;overflow:hidden;--calcite-card-corner-radius: var(--calcite-corner-radius-round) !important;--calcite-card-shadow: var(--calcite-shadow-sm);--calcite-card-background-color: var(--calcite-card-background-color) }.solution-card div[slot=thumbnail]{max-height:100%;width:100%;position:relative;&:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;transition:all .15s ease-in-out}}.solution-card div[slot=thumbnail] img{max-height:100%;width:100%;object-fit:cover}.solution-card span[slot=description]{padding-top:10px}.solution-card calcite-chip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);visibility:hidden;pointer-events:none;opacity:0;transition:all .15s ease-in-out;z-index:9999}.solution-card:hover calcite-chip{visibility:visible;opacity:1}.solution-card:hover div[slot=thumbnail]:after{background-color:#00000080}.solution-card:hover h3{text-decoration:underline}.solution-card:focus{outline:2px solid var(--calcite-color-brand)}.references-container{padding-top:10px;display:block}.references-container.collapsed{display:none}.width-100{width:100%}.disclaimer-div{display:flex;align-items:center;gap:var(--calcite-spacing-sm);font-size:var(--calcite-font-size--0);color:var(--calcite-color-text-1)}.display-none{display:none}.chat-messages calcite-fab{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:999}.icon-color-background{--calcite-button-icon-color: var(--calcite-color-surface-1)}#closeAssistantButton{--calcite-action-text-color: var(--calcite-color-text-1)}.icon-color-background:focus{--calcite-color-focus: var(--calcite-color-surface-1)}@media(max-width:430px){.solution-card .solution-snippet{display:none}}.height-32-flex-auto{height:32px;flex:0 0 auto}.margin-top-0.message-content>p:first-of-type{margin-top:0}a:not(.solution-card){color:var(--calcite-link-text-color, var(--calcite-color-text-link));cursor:pointer;text-decoration:none;line-height:inherit;background-image:linear-gradient(currentColor,currentColor),linear-gradient(var(--calcite-color-brand-underline),var(--calcite-color-brand-underline));background-position-x:0%,100%;background-position-y:min(1.5em,100%);background-repeat:no-repeat,no-repeat;background-size:0% 1px,100% 1px;transition-property:background-size,color;transition-duration:var(--calcite-animation-timing, .15s);transition-timing-function:ease-in-out;outline-color:transparent;position:relative}a:not(.solution-card):hover{background-size:100% 1px,100% 1px}a:not(.solution-card):focus{outline:2px solid var(--calcite-color-brand);outline-offset:2px;outline-color:var(--calcite-color-brand)}a:not(.solution-card):active{color:var(--calcite-color-brand-press)}`;
24
- async function w(t, e) {
24
+ async function S(t, e) {
25
25
  const s = Object.entries(t).find(
26
26
  ([i]) => i.endsWith(`/${e}.md`)
27
27
  );
@@ -80,7 +80,7 @@ const ae = /* @__PURE__ */ Object.assign({
80
80
  { text: s?.executingSolutionsAssistantAgent || "Preparing a response..." },
81
81
  e
82
82
  );
83
- const i = await w(ae, "solutions_assistant_prompts"), n = t.agentExecutionContext.messages.slice(-11), o = await Pe({
83
+ const i = await S(ae, "solutions_assistant_prompts"), n = t.agentExecutionContext.messages.slice(-11), o = await Pe({
84
84
  promptText: i,
85
85
  modelTier: "fast",
86
86
  temperature: 0,
@@ -91,7 +91,7 @@ const ae = /* @__PURE__ */ Object.assign({
91
91
  detail: !1
92
92
  });
93
93
  return window.dispatchEvent(l), { outputMessage: o, summary: o, status: "success" };
94
- }, je = () => new U(re).addNode("assistantLLM", Oe).addEdge(q, "assistantLLM").addEdge("assistantLLM", E), Je = await w(ae, "solutions_assistant_description"), Ge = {
94
+ }, je = () => new U(re).addNode("assistantLLM", Oe).addEdge(q, "assistantLLM").addEdge("assistantLLM", E), Je = await S(ae, "solutions_assistant_description"), Ge = {
95
95
  id: "solutionsAssistant",
96
96
  name: "Solutions Assistant Agent",
97
97
  description: Je,
@@ -534,7 +534,7 @@ Description: ${e.description}`).join(`
534
534
  } catch {
535
535
  return null;
536
536
  }
537
- }, I = (t) => {
537
+ }, w = (t) => {
538
538
  const e = new CustomEvent("assistantProcessing", {
539
539
  detail: t
540
540
  });
@@ -572,7 +572,7 @@ Description: ${e.description}`).join(`
572
572
  }, It = async (t, e) => {
573
573
  await C({ text: f("understandingRequest", e) }, e), await he(e);
574
574
  const s = t.agentExecutionContext.userRequest, i = xt(), n = t.agentExecutionContext.messages.slice(-11), o = await R({
575
- promptText: await w(D, "initialAssessment"),
575
+ promptText: await S(D, "initialAssessment"),
576
576
  modelTier: "advanced",
577
577
  temperature: 0,
578
578
  schema: rt,
@@ -591,7 +591,7 @@ Description: ${e.description}`).join(`
591
591
  };
592
592
  }, Ct = (t) => {
593
593
  const e = t.assessment?.assistantResponse ?? "";
594
- return I(!1), {
594
+ return w(!1), {
595
595
  outputMessage: e,
596
596
  summary: e,
597
597
  status: "success"
@@ -635,7 +635,7 @@ Description: ${c.description}`).join(`
635
635
 
636
636
  `), u = t.agentExecutionContext.messages.slice(-11);
637
637
  return { existingMatches: (await R({
638
- promptText: await w(D, "findExistingSolution"),
638
+ promptText: await S(D, "findExistingSolution"),
639
639
  modelTier: "fast",
640
640
  temperature: 0,
641
641
  schema: ot,
@@ -671,7 +671,7 @@ Description: ${c.description}`).join(`
671
671
  params: s?.params ?? n.initialTemplate.params ?? null
672
672
  }
673
673
  ), r = t.agentExecutionContext.messages.slice(-11), l = await R({
674
- promptText: await w(D, "designSolution"),
674
+ promptText: await S(D, "designSolution"),
675
675
  modelTier: "advanced",
676
676
  temperature: 0,
677
677
  schema: J,
@@ -706,14 +706,14 @@ Description: ${c.description}`).join(`
706
706
  "[SolutionBuilder] designSolution Esri JSON conversion failed:",
707
707
  { error: b.error, llmResponse: l, design: c }
708
708
  );
709
- const S = f("createDesignFailed", e);
709
+ const I = f("createDesignFailed", e);
710
710
  return {
711
- outputMessage: S,
712
- summary: S,
711
+ outputMessage: I,
712
+ summary: I,
713
713
  status: "success"
714
714
  };
715
715
  }
716
- return I(!1), de(c), {
716
+ return w(!1), de(c), {
717
717
  outputMessage: d,
718
718
  summary: d,
719
719
  status: "success",
@@ -726,7 +726,7 @@ Description: ${c.description}`).join(`
726
726
  const i = t.agentExecutionContext.userRequest, n = t.agentExecutionContext.messages.slice(-11);
727
727
  await C({ text: f("updatingDesign", e) }, e);
728
728
  const o = await R({
729
- promptText: await w(D, "updateDesign"),
729
+ promptText: await S(D, "updateDesign"),
730
730
  modelTier: "advanced",
731
731
  temperature: 0,
732
732
  schema: nt,
@@ -735,7 +735,14 @@ Description: ${c.description}`).join(`
735
735
  currentDesign: JSON.stringify(Be(s)),
736
736
  query: i
737
737
  }
738
- }), { response: r, patches: l } = o, u = [...l.map((p) => ({
738
+ }), { response: r, patches: l } = o;
739
+ if (!l || l.length === 0)
740
+ return w(!1), {
741
+ outputMessage: r,
742
+ summary: r,
743
+ status: "success"
744
+ };
745
+ const u = [...l.map((p) => ({
739
746
  op: p.op,
740
747
  path: p.path.replace(/\/+$/, ""),
741
748
  ...p.value != null && p.value !== "" ? { value: JSON.parse(p.value) } : {},
@@ -749,7 +756,7 @@ Description: ${c.description}`).join(`
749
756
  console.warn(
750
757
  "[SolutionBuilder] updateDesign JSON patch failed:",
751
758
  { error: p, llmResponse: o, patches: u, patchTarget: m }
752
- ), I(!1);
759
+ ), w(!1);
753
760
  const A = f("applyChangeFailed", e);
754
761
  return {
755
762
  outputMessage: A,
@@ -765,7 +772,7 @@ Description: ${c.description}`).join(`
765
772
  console.warn(
766
773
  "[SolutionBuilder] updateDesign schema validation failed:",
767
774
  { errors: c.error.issues, llmResponse: o, patchedDesign: h }
768
- ), I(!1);
775
+ ), w(!1);
769
776
  const p = f("applyChangeFailed", e);
770
777
  return {
771
778
  outputMessage: p,
@@ -773,11 +780,11 @@ Description: ${c.description}`).join(`
773
780
  status: "success"
774
781
  };
775
782
  }
776
- const { response: g, featureLayer: x, ...b } = c.data, S = ie(
783
+ const { response: g, featureLayer: x, ...b } = c.data, I = ie(
777
784
  x,
778
785
  s.featureLayer
779
786
  ), v = _(
780
- { ...b, featureLayer: S },
787
+ { ...b, featureLayer: I },
781
788
  {
782
789
  itemId: s.solution?.itemId,
783
790
  sourceBuildSolution: s.sourceBuildSolution,
@@ -793,7 +800,7 @@ Description: ${c.description}`).join(`
793
800
  return console.warn(
794
801
  "[SolutionBuilder] updateDesign validation failed:",
795
802
  { issues: Q.issues, llmResponse: o, patchedDesign: v }
796
- ), I(!1), {
803
+ ), w(!1), {
797
804
  outputMessage: f("applyChangeFailed", e)
798
805
  };
799
806
  const Se = v.sourceBuildSolution, V = ue(v, Se);
@@ -803,13 +810,13 @@ Description: ${c.description}`).join(`
803
810
  { error: V.error, llmResponse: o, design: v }
804
811
  );
805
812
  const p = f("applyChangeFailed", e);
806
- return I(!1), {
813
+ return w(!1), {
807
814
  outputMessage: p,
808
815
  summary: p,
809
816
  status: "success"
810
817
  };
811
818
  }
812
- return I(!1), de(v), {
819
+ return w(!1), de(v), {
813
820
  outputMessage: r,
814
821
  summary: r,
815
822
  status: "success",
@@ -825,7 +832,7 @@ Description: ${c.description}`).join(`
825
832
  }).addEdge("invalidUseCaseExit", E).addEdge("selectTemplateHIL", "findExistingSolutions").addConditionalEdges("findExistingSolutions", Dt, {
826
833
  confirmContinueBuildingHIL: "confirmContinueBuildingHIL",
827
834
  designSolution: "designSolution"
828
- }).addEdge("confirmContinueBuildingHIL", "designSolution").addEdge("designSolution", E).addEdge("updateDesign", E), $t = await w(D, "description"), Pt = {
835
+ }).addEdge("confirmContinueBuildingHIL", "designSolution").addEdge("designSolution", E).addEdge("updateDesign", E), $t = await S(D, "description"), Pt = {
829
836
  id: "solutionsBuilder",
830
837
  name: "Solutions Builder Agent",
831
838
  description: $t,
@@ -940,10 +947,10 @@ const Ut = (t) => new Promise((e) => setTimeout(e, t)), xe = y.Root({
940
947
  const u = async (c) => {
941
948
  const g = c.context?.results?.[0]?.reply ?? "";
942
949
  if (g !== "") {
943
- const b = Rt(g), S = Nt(b, e);
944
- l = S.source, n = [
950
+ const b = Rt(g), I = Nt(b, e);
951
+ l = I.source, n = [
945
952
  ...n,
946
- ...S.allMatches.filter(
953
+ ...I.allMatches.filter(
947
954
  (v) => !n.some((k) => k.solution.id === v.solution.id)
948
955
  )
949
956
  ];
@@ -991,7 +998,7 @@ const Ut = (t) => new Promise((e) => setTimeout(e, t)), xe = y.Root({
991
998
  return t.documentSkillUrl === null && e?.configurable?.context?.portal && (s = Bt(e.configurable.context.portal)), {
992
999
  documentSkillUrl: s
993
1000
  };
994
- }, jt = await w(Ft, "solutions_explorer_description"), Jt = {
1001
+ }, jt = await S(Ft, "solutions_explorer_description"), Jt = {
995
1002
  id: "solutionsExplorer",
996
1003
  name: "Solutions Explorer Agent",
997
1004
  description: jt,