@esri/solutions-components 5.1.0-next.70 → 5.1.0-next.72

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.
@@ -1,7 +1,10 @@
1
- Built 04/03/2026 19:48:29.02
1
+ Built 04/06/2026 8:42:34.58
2
2
  develop
3
- commit 3fe96396fc17247085997de011ecc5b2d4124726
4
- Author: Previn Wong <PWong@esri.com>
5
- Date: Fri Apr 3 09:24:42 2026 -0700
3
+ commit 1544c2f1c8cec127b19666ff784d925411e87e73
4
+ Merge: fb8f04f90 451f37921
5
+ Author: Ryan Cosby <rcosby@esri.com>
6
+ Date: Mon Apr 6 09:25:29 2026 -0600
6
7
 
7
- Update package.json
8
+ Merge pull request #2248 from Esri/ryan9313-fix-build
9
+
10
+ fix typescript errors in build
@@ -977,6 +977,7 @@ export interface ISolutionDesignFeatureLayer {
977
977
  /** Feature layer or table specification */
978
978
  export interface ISolutionDesignLayerOrTable {
979
979
  name: string;
980
+ description?: string;
980
981
  readonly id?: string;
981
982
  type: "Point" | "Polyline" | "Polygon" | "Table";
982
983
  readonly geometryType?: "esriGeometryPoint" | "esriGeometryPolyline" | "esriGeometryPolygon" | "esriGeometryNull";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/solutions-components",
3
- "version": "5.1.0-next.70",
3
+ "version": "5.1.0-next.72",
4
4
  "description": "Web Components for Esri's Solutions Applications",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,2 +0,0 @@
1
- /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{a as b}from"./GSODQ7Y6.js";import{c as m}from"./2B4SGB3I.js";import{b as u}from"./PAJG7ACM.js";import{a as g}from"./SHFWVVGY.js";import{b as h}from"./2MOSXHFG.js";import{G as p,K as o,h as d,i as a}from"./7MSBIQLE.js";var v=d`.builder-content{display:flex;flex-direction:column;flex:1;overflow:auto}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--calcite-spacing-xxl);text-align:center;color:var(--calcite-color-text-3)}.empty-state calcite-icon{margin-bottom:var(--calcite-spacing-md);color:var(--calcite-color-text-3)}.empty-state p{margin:0;font-size:var(--calcite-font-size--1)}.header-container{display:flex;align-items:stretch;gap:var(--calcite-spacing-lg);padding-bottom:var(--calcite-spacing-lg)}.header-container calcite-notice{flex:1;margin:0}calcite-action-bar{flex-shrink:0;background:var(--calcite-color-brand);border-left:1px solid var(--calcite-color-brand-dark)}.content-container{display:flex;gap:var(--calcite-spacing-xl);margin-bottom:var(--calcite-spacing-lg)}.solution-item-section{flex:1;min-width:0;background:var(--calcite-color-foreground-1);padding:var(--calcite-spacing-lg)}.solution-item-inputs{display:flex;flex-direction:column;gap:var(--calcite-spacing-md)}.thumbnail-inputs-row{display:flex;gap:var(--calcite-spacing-md);align-items:flex-start}.thumbnail-container{flex-shrink:0;width:253px;aspect-ratio:200 / 133;border:1px solid var(--calcite-color-border-2);border-radius:var(--calcite-border-radius);overflow:hidden;background:var(--calcite-color-foreground-2)}.thumbnail-container img{width:100%;height:100%;object-fit:cover}.stacked-inputs{flex:1;display:flex;flex-direction:column;gap:var(--calcite-spacing-md);min-width:0}.stacked-inputs calcite-label{min-width:0}.stacked-inputs calcite-input-text,.stacked-inputs calcite-text-area{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.stacked-inputs calcite-text-area{max-height:150px}.tags-row{width:100%;min-width:0}.tags-row calcite-combobox{width:100%}.actions-section{flex-shrink:0;width:200px;background:var(--calcite-color-foreground-1);padding:var(--calcite-spacing-lg)}.action-buttons{display:flex;flex-direction:column;gap:var(--calcite-spacing-md)}.tabs-section{flex:1;display:flex;flex-direction:column;min-height:0}.tabs-section calcite-tabs{height:100%}.feature-layer-placeholder{padding:var(--calcite-spacing-lg);color:var(--calcite-color-text-3)}.popover-content{padding:var(--calcite-spacing-lg);min-width:300px}.popover-field{margin-top:var(--calcite-spacing-md)}.popover-actions{display:flex;justify-content:flex-end;gap:var(--calcite-spacing-sm);margin-top:var(--calcite-spacing-lg)}`,r=class extends p{constructor(){super(),this.design=null,this._design=null,this._translations=g({name:"solution-builder-assistant",blocking:!0}),this._isDirty=!1,this._openPopoverId=null,this._editingItemTitle="",this._editingItemDescription="",this._designContextConsumer=u({context:m,subscribe:!0,callback:t=>{t?.design&&(this._design=t.design)}}),this._handleUndo=()=>{console.log("Undo clicked - to be implemented")},this._handleRedo=()=>{console.log("Redo clicked - to be implemented")},this._handleTitleChange=t=>{if(!this._design)return;let i={...this._design,solution:{...this._design.solution,title:t}};this._design=i,this._isDirty=!0},this._handleDescriptionChange=t=>{if(!this._design)return;let i={...this._design,solution:{...this._design.solution,description:t}};this._design=i,this._isDirty=!0},this._handleTagsChange=t=>{if(!this._design)return;let i=Array.from(t.target.selectedItems).map(e=>e.value);this._design={...this._design,solution:{...this._design.solution,tags:i}},this._isDirty=!0},this._handleItemPopoverOpen=t=>{this._openPopoverId=t.id,this._editingItemTitle=t.title||"",this._editingItemDescription=t.description||"",this.requestUpdate()},this._handleCloseItemPopover=()=>{this._openPopoverId=null,this._editingItemTitle="",this._editingItemDescription=""},this._handleClosePopover=async t=>{let i=this.renderRoot.querySelector(`#${t}`);i&&(i.open=!1,await i.updateComplete),this._handleCloseItemPopover()},this._handleApplyItemChanges=t=>{if(!this._design)return;let i=this._design.items.map(c=>c.id===t?{...c,title:this._editingItemTitle,description:this._editingItemDescription}:c),e={...this._design,items:i};this._design=e,this._isDirty=!0},this._handleDeploy=async()=>{this._design&&console.log("Deploy design:",this._design)},this._designContextConsumer}static{this.properties={design:[1,{type:Object}],_design:16,_translations:16,_isDirty:16,_openPopoverId:16,_editingItemTitle:16,_editingItemDescription:16}}static{this.styles=v}willUpdate(t){t.has("design")&&(this._design=this.design)}render(){return this._translations?this._design?a`<calcite-panel><div class="header-container">${this._renderNoticeBar()}${this._renderActionBar()}</div><div class="builder-content">${this._renderMainContent()}${this._renderTabsSection()}</div></calcite-panel>`:this._renderEmptyState():a`<div>Loading...</div>`}_renderEmptyState(){return a`<calcite-panel><div class="empty-state"><calcite-icon icon=layer scale=l></calcite-icon><p>No solution design loaded</p></div></calcite-panel>`}_renderNoticeBar(){let t=this._translations;return a`<calcite-notice open kind=brand icon=pencil-square><div slot=title>${t.noticeTitle}</div><div slot=message>${t.noticeMessage}</div></calcite-notice>`}_renderActionBar(){let t=this._translations;return a`<calcite-action-bar layout=horizontal expand-disabled><calcite-action .text=${t.undo} text-enabled icon=undo disabled @click=${this._handleUndo}></calcite-action><calcite-action .text=${t.redo} text-enabled icon=redo disabled @click=${this._handleRedo}></calcite-action></calcite-action-bar>`}_renderMainContent(){return a`<div class="content-container"><div class="solution-item-section">${this._renderSolutionItemInputs()}</div><div class="actions-section">${this._renderActionButtons()}</div></div>`}_renderSolutionItemInputs(){let t=this._translations,i=this._design?.solution?.thumbnailUrl||"",e=this._design?.solution?.title||"",c=this._design?.solution?.description||"",s=this._design?.solution?.tags||[];return a`<div class="solution-item-inputs"><div class="thumbnail-inputs-row"><div class="thumbnail-container"><img src=${(i||'data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="200" height="133"%3E%3Crect fill="%23ddd" width="200" height="133"/%3E%3C/svg%3E')??o} alt=${t.solutionThumbnail??o}></div><div class="stacked-inputs"><calcite-label>${t.name}<calcite-input-text .placeholder=${t.namePlaceholder} .value=${e} @input=${n=>this._handleTitleChange(n.target.value)}></calcite-input-text></calcite-label><calcite-label>${t.description}<calcite-text-area .placeholder=${t.descriptionPlaceholder} .value=${c} resize=none @input=${n=>this._handleDescriptionChange(n.target.value)}></calcite-text-area></calcite-label></div></div><div class="tags-row"><calcite-label>${t.tags}${b(s.join(","),a`<calcite-combobox .label=${t.tags} .placeholder=${t.tagsPlaceholder} selection-mode=multiple allow-custom-values @calciteComboboxChange=${n=>this._handleTagsChange(n)}>${s.map(n=>a`<calcite-combobox-item .value=${n} .heading=${n} selected></calcite-combobox-item>`)}</calcite-combobox>`)}</calcite-label></div></div>`}_renderActionButtons(){let t=this._translations;return a`<div class="action-buttons"><calcite-button appearance=solid width=full icon-start=launch>${t.deploy}</calcite-button><calcite-button appearance=outline kind=neutral width=full icon-start=diagram>${t.viewDiagram}</calcite-button><calcite-button appearance=outline kind=neutral width=full icon-start=information>${t.openHelp}</calcite-button><calcite-button appearance=outline kind=danger width=full icon-start=trash>${t.discard}</calcite-button></div>`}_renderTabsSection(){let t=this._translations;return a`<div class="tabs-section"><calcite-tabs bordered layout=center><calcite-tab-nav slot=title-group><calcite-tab-title>${t.contents}</calcite-tab-title><calcite-tab-title icon-start=layers>${t.featureLayer}</calcite-tab-title></calcite-tab-nav><calcite-tab>${this._renderContentsTab()}</calcite-tab><calcite-tab>${this._renderFeatureLayerTab()}</calcite-tab></calcite-tabs></div>`}_renderContentsTab(){let t=this._translations,i=this._design?.items||[];return a`<div><calcite-list .label=${t.solutionContentItems}>${i.map(e=>{let c=`edit-action-${e.id}`;return a`<calcite-list-item .label=${e.title} .description=${e.description||""}><solution-item-icon slot=content-start .designType=${e.type}></solution-item-icon><calcite-action slot=actions-end id=${c??o} icon=edit-attributes .text=${t.edit} scale=s></calcite-action></calcite-list-item>`})}</calcite-list>${i.map(e=>{let c=`edit-action-${e.id}`,s=`edit-popover-${e.id}`,n=this._openPopoverId===e.id;return a`<calcite-popover id=${s??o} .label=${t.editItemContent} .referenceElement=${c} placement=auto @calcitePopoverBeforeOpen=${()=>this._handleItemPopoverOpen(e)} @calcitePopoverClose=${()=>this._handleCloseItemPopover()}><div class="popover-content"><calcite-label>${t.title}<calcite-input-text .value=${n?this._editingItemTitle:e.title} @input=${l=>{this._editingItemTitle=l.target.value}}></calcite-input-text></calcite-label><calcite-label class="popover-field">${t.description}<calcite-text-area .value=${n?this._editingItemDescription:e.description} resize=none rows=4 @input=${l=>{this._editingItemDescription=l.target.value}}></calcite-text-area></calcite-label><div class="popover-actions"><calcite-button appearance=solid @click=${l=>{l.stopPropagation(),this._handleApplyItemChanges(e.id)}}>${t.apply}</calcite-button><calcite-button appearance=outline @click=${async l=>{l.stopPropagation(),await this._handleClosePopover(s)}}>${t.close}</calcite-button></div></div></calcite-popover>`})}</div>`}_renderFeatureLayerTab(){return a`<div class="feature-layer-placeholder">\r\n Feature Layer configuration will go here</div>`}};h("solution-builder-assistant",r);export{r as a};