@openremote/or-asset-tree 1.8.0 → 1.8.1

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/lib/index.d.ts CHANGED
@@ -98,7 +98,7 @@ export declare class OrAssetTreeFilter {
98
98
  assetType: string[];
99
99
  attribute: string[];
100
100
  attributeValue: string[];
101
- constructor();
101
+ constructor(asset?: string);
102
102
  }
103
103
  declare global {
104
104
  export interface HTMLElementEventMap {
@@ -192,6 +192,12 @@ export declare class OrAssetTree extends OrAssetTree_base {
192
192
  disconnectedCallback(): void;
193
193
  refresh(): void;
194
194
  isAncestorSelected(node: UiAssetTreeNode): boolean;
195
+ /**
196
+ * A setter function for updating the list of nodes (assets) shown in the UI.
197
+ * @param filter - The {@link OrAssetTreeFilter} to apply.
198
+ * @param reflect - If the changes should be reflected in the filtering UI. (default: false)
199
+ */
200
+ applyFilter(filter?: OrAssetTreeFilter | string, reflect?: boolean): void;
195
201
  protected mapDescriptors(descriptors: (AssetDescriptor)[], withNoneValue?: ListItem): ListItem[];
196
202
  protected getSelectHeader(): TemplateResult;
197
203
  protected getSelectedHeader(descriptor: AssetDescriptor): TemplateResult;
@@ -208,13 +214,13 @@ export declare class OrAssetTree extends OrAssetTree_base {
208
214
  private _findNodeFromAssetId;
209
215
  protected _onNodeClicked(evt: MouseEvent | null, node: UiAssetTreeNode | null): void;
210
216
  protected _onDeselectClicked(): void;
211
- protected parseFromInputFilter(inputValue?: string): OrAssetTreeFilter;
217
+ protected parseFromInputFilter(inputValue?: any): OrAssetTreeFilter;
212
218
  protected formatFilter(newFilter: OrAssetTreeFilter): string;
213
219
  protected _shouldEnableAttrTypeEvent(e: KeyboardEvent): void;
214
220
  protected _shouldEnableAttrType(value: string | undefined): void;
215
221
  protected applySettingFields(filter: OrAssetTreeFilter): OrAssetTreeFilter;
216
222
  protected _filterFromSettings(): void;
217
- protected _onFilterInputEvent(e: KeyboardEvent): void;
223
+ protected _onFilterInputEvent(_e: KeyboardEvent): void;
218
224
  protected _onFilterInput(newValue: string | undefined, force: boolean): void;
219
225
  protected _doFiltering(): Promise<void>;
220
226
  protected getMatcher(requireQuery: boolean): Promise<((asset: Asset) => boolean)>;
package/lib/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var OrAssetTree_1,FilterElementType,__decorate=this&&this.__decorate||function(e,t,s,i){var r,a=arguments.length,d=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,s):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)d=Reflect.decorate(e,t,s,i);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(d=(a<3?r(d):a>3?r(t,s,d):r(t,s))||d);return a>3&&d&&Object.defineProperty(t,s,d),d},__awaiter=this&&this.__awaiter||function(e,t,s,i){function r(e){return e instanceof s?e:new s(function(t){t(e)})}return new(s||(s=Promise))(function(s,a){function d(e){try{o(i.next(e))}catch(e){a(e)}}function n(e){try{o(i.throw(e))}catch(e){a(e)}}function o(e){e.done?s(e.value):r(e.value).then(d,n)}o((i=i.apply(e,t||[])).next())})};import{html,LitElement}from"lit";import{customElement,property,query,state}from"lit/decorators.js";import"@openremote/or-mwc-components/or-mwc-input";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import"@openremote/or-icon";import{AssetModelUtil}from"@openremote/model";import"@openremote/or-translate";import{style}from"./style";import manager,{subscribe,Util}from"@openremote/core";import Qs from"qs";import{getAssetDescriptorIconTemplate}from"@openremote/or-icon";import"@openremote/or-mwc-components/or-mwc-menu";import{getContentWithMenuTemplate}from"@openremote/or-mwc-components/or-mwc-menu";import"@openremote/or-mwc-components/or-mwc-list";import{i18next}from"@openremote/or-translate";import"@openremote/or-mwc-components/or-mwc-dialog";import{OrMwcDialog,showDialog,showErrorDialog,showOkCancelDialog}from"@openremote/or-mwc-components/or-mwc-dialog";import"./or-add-asset-dialog";import{showSnackbar}from"@openremote/or-mwc-components/or-mwc-snackbar";import{when}from"lit/directives/when.js";export class OrAssetTreeRequestSelectionEvent extends CustomEvent{constructor(e){super(OrAssetTreeRequestSelectionEvent.NAME,{bubbles:!0,composed:!0,detail:{allow:!0,detail:e}})}}OrAssetTreeRequestSelectionEvent.NAME="or-asset-tree-request-selection";export class OrAssetTreeSelectionEvent extends CustomEvent{constructor(e){super(OrAssetTreeSelectionEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeSelectionEvent.NAME="or-asset-tree-selection";export class OrAssetTreeChangeParentEvent extends CustomEvent{constructor(e,t){super(OrAssetTreeChangeParentEvent.NAME,{bubbles:!0,composed:!0,detail:{parentId:e,assetIds:t}})}}OrAssetTreeChangeParentEvent.NAME="or-asset-tree-change-parent";export class OrAssetTreeToggleExpandEvent extends CustomEvent{constructor(e){super(OrAssetTreeToggleExpandEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeToggleExpandEvent.NAME="or-asset-tree-expand",function(e){e[e.SEARCH_FILTER=0]="SEARCH_FILTER",e[e.ASSET_TYPE=1]="ASSET_TYPE",e[e.ATTRIBUTE_NAME=2]="ATTRIBUTE_NAME",e[e.ATTRIBUTE_VALUE=3]="ATTRIBUTE_VALUE"}(FilterElementType||(FilterElementType={}));export class OrAssetTreeRequestAddEvent extends CustomEvent{constructor(e){super(OrAssetTreeRequestAddEvent.NAME,{bubbles:!0,composed:!0,detail:{allow:!0,detail:e}})}}OrAssetTreeRequestAddEvent.NAME="or-asset-tree-request-add";export class OrAssetTreeAddEvent extends CustomEvent{constructor(e){super(OrAssetTreeAddEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeAddEvent.NAME="or-asset-tree-add";export class OrAssetTreeRequestDeleteEvent extends CustomEvent{constructor(e){super(OrAssetTreeRequestDeleteEvent.NAME,{bubbles:!0,composed:!0,detail:{allow:!0,detail:e}})}}OrAssetTreeRequestDeleteEvent.NAME="or-asset-tree-request-delete";export class OrAssetTreeAssetEvent extends CustomEvent{constructor(e){super(OrAssetTreeAssetEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeAssetEvent.NAME="or-asset-tree-asset-event";export class OrAssetTreeFilter{constructor(){this.asset=void 0,this.assetType=[],this.attribute=[],this.attributeValue=[]}}export const getAssetTypes=()=>__awaiter(void 0,void 0,void 0,function*(){let e=yield manager.rest.api.AssetResource.queryAssets({select:{attributes:[]},recursive:!0});if(e&&e.data)return e.data.map(e=>e.type)});let OrAssetTree=OrAssetTree_1=class OrAssetTree extends subscribe(manager)(LitElement){constructor(){super(...arguments),this.readonly=!1,this.disabled=!1,this.disableSubscribe=!1,this.showDeselectBtn=!0,this.showSortBtn=!0,this.showFilter=!0,this.sortBy="name",this.expandAllNodes=!1,this.expandedIds=[],this.checkboxes=!1,this._loading=!1,this._connected=!1,this._selectedNodes=[],this._expandedNodes=[],this._filter=new OrAssetTreeFilter,this._searchInputTimer=void 0,this._filterSettingOpen=!1,this._assetTypes=[],this._uniqueAssetTypes=[],this._dragDropParentId=null,this._expandTimer=void 0,this._latestSelected=void 0,this.assetsChildren={}}static get styles(){return[style]}get selectedNodes(){return this._selectedNodes?[...this._selectedNodes]:[]}set selectedNodes(e){this.selectedIds=e.map(e=>e.asset.id)}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this.requestUpdate()}refresh(){this._nodes=void 0}isAncestorSelected(e){if(!this.selectedIds||!e.parent)return!1;for(;e.parent;)if(e=e.parent,this.selectedIds.includes(e.asset.id))return!0;return!1}mapDescriptors(e,t){let s=e.map(e=>({styleMap:{"--or-icon-fill":e.colour?"#"+e.colour:"unset"},icon:e.icon,text:Util.getAssetTypeLabel(e),value:e.name,data:e})).sort(Util.sortByString(e=>e.text));return t&&s.splice(0,0,t),s}getSelectHeader(){return html`<or-mwc-input style="width:100%;" ?disabled="${this._loading}" type="${InputType.TEXT}" .label="${i18next.t("filter.assetTypeLabel")}" iconTrailing="menu-down" iconColor="rgba(0, 0, 0, 0.87)" icon="selection-ellipse" value="${i18next.t("filter.assetTypeNone")}"></or-mwc-input>`}getSelectedHeader(e){return html`<or-mwc-input style="width:100%;" ?disabled="${this._loading}" type="${InputType.TEXT}" .label="${i18next.t("filter.assetTypeLabel")}" .iconColor="${e.colour}" iconTrailing="menu-down" icon="${e.icon}" value="${Util.getAssetTypeLabel(e)}"></or-mwc-input>`}assetTypeSelect(){if(!this._assetTypeFilter)return this.getSelectHeader();{let e=this._assetTypes.find(e=>e.name===this._assetTypeFilter);return e?this.getSelectedHeader(e):this.getSelectHeader()}}atLeastOneNodeToBeShown(){var e;let t=!1;return null==(e=this._nodes)||e.forEach(e=>{e.hidden||(t=!0)}),t}render(){let e=this._canAdd();return html`
1
+ var OrAssetTree_1,FilterElementType,__decorate=this&&this.__decorate||function(e,t,s,i){var r,a=arguments.length,d=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,s):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)d=Reflect.decorate(e,t,s,i);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(d=(a<3?r(d):a>3?r(t,s,d):r(t,s))||d);return a>3&&d&&Object.defineProperty(t,s,d),d},__awaiter=this&&this.__awaiter||function(e,t,s,i){function r(e){return e instanceof s?e:new s(function(t){t(e)})}return new(s||(s=Promise))(function(s,a){function d(e){try{l(i.next(e))}catch(e){a(e)}}function n(e){try{l(i.throw(e))}catch(e){a(e)}}function l(e){e.done?s(e.value):r(e.value).then(d,n)}l((i=i.apply(e,t||[])).next())})};import{html,LitElement}from"lit";import{customElement,property,query,state}from"lit/decorators.js";import"@openremote/or-mwc-components/or-mwc-input";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import"@openremote/or-icon";import{AssetModelUtil}from"@openremote/model";import"@openremote/or-translate";import{style}from"./style";import manager,{subscribe,Util}from"@openremote/core";import Qs from"qs";import{getAssetDescriptorIconTemplate}from"@openremote/or-icon";import"@openremote/or-mwc-components/or-mwc-menu";import{getContentWithMenuTemplate}from"@openremote/or-mwc-components/or-mwc-menu";import"@openremote/or-mwc-components/or-mwc-list";import{i18next}from"@openremote/or-translate";import"@openremote/or-mwc-components/or-mwc-dialog";import{OrMwcDialog,showDialog,showErrorDialog,showOkCancelDialog}from"@openremote/or-mwc-components/or-mwc-dialog";import"./or-add-asset-dialog";import{showSnackbar}from"@openremote/or-mwc-components/or-mwc-snackbar";import{when}from"lit/directives/when.js";export class OrAssetTreeRequestSelectionEvent extends CustomEvent{constructor(e){super(OrAssetTreeRequestSelectionEvent.NAME,{bubbles:!0,composed:!0,detail:{allow:!0,detail:e}})}}OrAssetTreeRequestSelectionEvent.NAME="or-asset-tree-request-selection";export class OrAssetTreeSelectionEvent extends CustomEvent{constructor(e){super(OrAssetTreeSelectionEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeSelectionEvent.NAME="or-asset-tree-selection";export class OrAssetTreeChangeParentEvent extends CustomEvent{constructor(e,t){super(OrAssetTreeChangeParentEvent.NAME,{bubbles:!0,composed:!0,detail:{parentId:e,assetIds:t}})}}OrAssetTreeChangeParentEvent.NAME="or-asset-tree-change-parent";export class OrAssetTreeToggleExpandEvent extends CustomEvent{constructor(e){super(OrAssetTreeToggleExpandEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeToggleExpandEvent.NAME="or-asset-tree-expand",function(e){e[e.SEARCH_FILTER=0]="SEARCH_FILTER",e[e.ASSET_TYPE=1]="ASSET_TYPE",e[e.ATTRIBUTE_NAME=2]="ATTRIBUTE_NAME",e[e.ATTRIBUTE_VALUE=3]="ATTRIBUTE_VALUE"}(FilterElementType||(FilterElementType={}));export class OrAssetTreeRequestAddEvent extends CustomEvent{constructor(e){super(OrAssetTreeRequestAddEvent.NAME,{bubbles:!0,composed:!0,detail:{allow:!0,detail:e}})}}OrAssetTreeRequestAddEvent.NAME="or-asset-tree-request-add";export class OrAssetTreeAddEvent extends CustomEvent{constructor(e){super(OrAssetTreeAddEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeAddEvent.NAME="or-asset-tree-add";export class OrAssetTreeRequestDeleteEvent extends CustomEvent{constructor(e){super(OrAssetTreeRequestDeleteEvent.NAME,{bubbles:!0,composed:!0,detail:{allow:!0,detail:e}})}}OrAssetTreeRequestDeleteEvent.NAME="or-asset-tree-request-delete";export class OrAssetTreeAssetEvent extends CustomEvent{constructor(e){super(OrAssetTreeAssetEvent.NAME,{bubbles:!0,composed:!0,detail:e})}}OrAssetTreeAssetEvent.NAME="or-asset-tree-asset-event";export class OrAssetTreeFilter{constructor(e){this.asset=e,this.assetType=[],this.attribute=[],this.attributeValue=[]}}export const getAssetTypes=()=>__awaiter(void 0,void 0,void 0,function*(){let e=yield manager.rest.api.AssetResource.queryAssets({select:{attributes:[]},recursive:!0});if(e&&e.data)return e.data.map(e=>e.type)});let OrAssetTree=OrAssetTree_1=class OrAssetTree extends subscribe(manager)(LitElement){constructor(){super(...arguments),this.readonly=!1,this.disabled=!1,this.disableSubscribe=!1,this.showDeselectBtn=!0,this.showSortBtn=!0,this.showFilter=!0,this.sortBy="name",this.expandAllNodes=!1,this.expandedIds=[],this.checkboxes=!1,this._loading=!1,this._connected=!1,this._selectedNodes=[],this._expandedNodes=[],this._filter=new OrAssetTreeFilter,this._searchInputTimer=void 0,this._filterSettingOpen=!1,this._assetTypes=[],this._uniqueAssetTypes=[],this._dragDropParentId=null,this._expandTimer=void 0,this._latestSelected=void 0,this.assetsChildren={}}static get styles(){return[style]}get selectedNodes(){return this._selectedNodes?[...this._selectedNodes]:[]}set selectedNodes(e){this.selectedIds=e.map(e=>e.asset.id)}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this.requestUpdate()}refresh(){this._nodes=void 0}isAncestorSelected(e){if(!this.selectedIds||!e.parent)return!1;for(;e.parent;)if(e=e.parent,this.selectedIds.includes(e.asset.id))return!0;return!1}applyFilter(e,t=!1){if(e&&"string"!=typeof e||(e=this.parseFromInputFilter(e)),Util.objectsEqual(this._filter,e))return void console.debug("Tried to apply filter to the asset tree, but it was the same.",e);console.debug("Applying filter to the asset tree:",e),this._filter=e,t&&this.updateComplete.finally(()=>this._filterInput.value=this.formatFilter(e))}mapDescriptors(e,t){let s=e.map(e=>({styleMap:{"--or-icon-fill":e.colour?"#"+e.colour:"unset"},icon:e.icon,text:Util.getAssetTypeLabel(e),value:e.name,data:e})).sort(Util.sortByString(e=>e.text));return t&&s.splice(0,0,t),s}getSelectHeader(){return html`<or-mwc-input style="width:100%;" ?disabled="${this._loading}" type="${InputType.TEXT}" .label="${i18next.t("filter.assetTypeLabel")}" iconTrailing="menu-down" iconColor="rgba(0, 0, 0, 0.87)" icon="selection-ellipse" value="${i18next.t("filter.assetTypeNone")}"></or-mwc-input>`}getSelectedHeader(e){return html`<or-mwc-input style="width:100%;" ?disabled="${this._loading}" type="${InputType.TEXT}" .label="${i18next.t("filter.assetTypeLabel")}" .iconColor="${e.colour}" iconTrailing="menu-down" icon="${e.icon}" value="${Util.getAssetTypeLabel(e)}"></or-mwc-input>`}assetTypeSelect(){if(!this._assetTypeFilter)return this.getSelectHeader();{let e=this._assetTypes.find(e=>e.name===this._assetTypeFilter);return e?this.getSelectedHeader(e):this.getSelectHeader()}}atLeastOneNodeToBeShown(){var e;let t=!1;return null==(e=this._nodes)||e.forEach(e=>{e.hidden||(t=!0)}),t}render(){let e=this._canAdd();return html`
2
2
  <div id="header">
3
3
  <div id="title-container">
4
4
  <or-translate id="title" value="asset_plural"></or-translate>
@@ -44,7 +44,7 @@ var OrAssetTree_1,FilterElementType,__decorate=this&&this.__decorate||function(e
44
44
  style="margin-top: 10px;"
45
45
  disabled></or-mwc-input>
46
46
  <div style="margin-top: 10px;">
47
- <or-mwc-input style="float:left;" type="${InputType.BUTTON}" label="filter.clear" @or-mwc-input-changed="${()=>{this._filterInput.value=void 0,this._attributeValueFilter.value=void 0,this._attributeNameFilter.value=void 0,this._attributeValueFilter.disabled=!0,this._assetTypeFilter="",this._filter=new OrAssetTreeFilter,this._doFiltering()}}"></or-mwc-input>
47
+ <or-mwc-input style="float:left;" type="${InputType.BUTTON}" label="filter.clear" @or-mwc-input-changed="${()=>{this._filterInput.value=void 0,this._attributeValueFilter.value=void 0,this._attributeNameFilter.value=void 0,this._attributeValueFilter.disabled=!0,this._assetTypeFilter="",this.applyFilter(new OrAssetTreeFilter),this._doFiltering()}}"></or-mwc-input>
48
48
  <or-mwc-input style="float: right;" type="${InputType.BUTTON}" label="filter.action" raised @or-mwc-input-changed="${()=>{this._filterFromSettings()}}"></or-mwc-input>
49
49
  </div>
50
50
  </div>
@@ -66,15 +66,15 @@ var OrAssetTree_1,FilterElementType,__decorate=this&&this.__decorate||function(e
66
66
  <div id="footer">
67
67
 
68
68
  </div>
69
- `}_isReadonly(){return this.readonly||!manager.hasRole("write:assets")}shouldUpdate(e){let t=super.shouldUpdate(e);return((e.has("assets")||e.has("rootAssets")||e.has("rootAssetIds"))&&(this._nodes=void 0),this._nodes)?(e.has("selectedIds")&&!Util.objectsEqual(e.get("selectedIds"),this.selectedIds)&&this._updateSelectedNodes(),e.has("sortBy")&&this._updateSort(this._nodes,this._getSortFunction()),e.has("disabledSubscribe")&&this.disableSubscribe&&this._removeEventSubscriptions(),t):(this._loadAssets(),!0)}_updateSelectedNodes(){let e=[],t=[];OrAssetTree_1._forEachNodeRecursive(this._nodes,s=>{if(this.selectedIds&&this.selectedIds.indexOf(s.asset.id)>=0){e.push(s.asset.id),t.push(s),s.selected=!0;let i=s.parent;for(;i;)i.expanded=!0,i=i.parent}else s.selected=!1;if(this.checkboxes){let t=s.parent;for(;t;){let s=[];OrAssetTree_1._forEachNodeRecursive(t.children,e=>{s.push(e)}),t.someChildrenSelected=!1,t.allChildrenSelected=!1,s.every(t=>e.includes(t.asset.id))?t.allChildrenSelected=!0:s.some(t=>e.includes(t.asset.id))&&(t.someChildrenSelected=!0),t=t.parent}}}),this.selectedIds=e;let s=this._selectedNodes;this._selectedNodes=t,this.dispatchEvent(new OrAssetTreeSelectionEvent({oldNodes:s,newNodes:t}))}_updateSort(e,t){e&&(e.sort(t),e.forEach(e=>this._updateSort(e.children,t)))}_toggleExpander(e,t,s=!1){t&&t.expandable&&(t.expanded=!t.expanded,t.expanded?this._expandedNodes.push(t):this._expandedNodes=this._expandedNodes.filter(e=>e!==t),e.parentElement.parentElement.parentElement.toggleAttribute("data-expanded"),s||this.dispatchEvent(new OrAssetTreeToggleExpandEvent({node:t})),this.requestUpdate())}_buildPaths(e){let t=[];return e.asset&&e.asset.id?(t.push(e.asset.id),e.children.length>0&&e.expanded&&e.children.forEach(e=>{t=t.concat(this._buildPaths(e))}),t):[]}_findNode(e,t){if(e.asset&&e.asset.id){if(e.asset.id===t)return e;if(e.children.length>0&&e.expanded){let s;return e.children.forEach(e=>{s||(s=this._findNode(e,t))}),s}return}}_findNodeFromAssetId(e){if(this._nodes){let t;return this._nodes.forEach(s=>{t||(t=this._findNode(s,e))}),t}}_onNodeClicked(e,t){var s,i,r,a;if(e&&e.defaultPrevented)return;e&&e.preventDefault();let d=e&&e.target.className.indexOf("expander")>=0,n=e&&(null==(i=null==(s=e.target)?void 0:s.icon)?void 0:i.includes("checkbox-multiple"));if(d)this._toggleExpander(e.target,t);else{let s=!0;if(t&&this.config&&(null==(r=this.config.select)?void 0:r.types)&&(s=this.config.select.types.indexOf(t.asset.type)>=0),!s&&!n)return;let i=[];if(t){let s=this.selectedNodes.indexOf(t),r=!0,d=!0,o=!this._isReadonly()&&(!this.config||!this.config.select||!this.config.select.multiSelect);if((this.checkboxes||o&&e&&(e.ctrlKey||e.shiftKey||e.metaKey))&&(d=!1,s>=0&&this.selectedIds&&this.selectedIds.length>1&&(r=!1)),n){i=[...this.selectedNodes];let e=[];OrAssetTree_1._forEachNodeRecursive(t.children,t=>{var s,i;let r=!0;t&&(null==(i=null==(s=this.config)?void 0:s.select)?void 0:i.types)&&(r=this.config.select.types.indexOf(t.asset.type)>=0),r&&e.push(t)}),i=t.allChildrenSelected?i.filter(t=>!e.map(e=>e.asset.id).includes(t.asset.id)):i.concat(e)}else if(d)this._latestSelected=Object.assign({},t),i=[t];else if(r){if(s<0){if(e&&e.shiftKey){let e=[];if(null==(a=this._nodes)||a.forEach(t=>{e=e.concat(this._buildPaths(t))}),this._latestSelected&&this._latestSelected.asset&&this._latestSelected.asset.id&&t.asset&&t.asset.id){let s=this._latestSelected.asset.id,r=t.asset.id,a=e.findIndex(e=>e.includes(s)),d=e.findIndex(e=>e.includes(r)),n=-1,o=-1;a>d?(n=d,o=a):(n=a,o=d);let l=e.slice(n,o+1),c=[];l.forEach(e=>{let t=this._findNodeFromAssetId(e);t&&c.push(t)}),i=(i=[...this.selectedNodes]).concat(c)}}else(i=[...this.selectedNodes]).push(t);this._latestSelected=Object.assign({},t)}}else s>=0&&(1===(i=[...this.selectedNodes]).length&&(this._latestSelected=void 0),i.splice(s,1))}Util.dispatchCancellableEvent(this,new OrAssetTreeRequestSelectionEvent({oldNodes:this.selectedNodes,newNodes:i})).then(e=>{e.allow&&(this.selectedNodes=e.detail.newNodes)})}}_onDeselectClicked(){this._onNodeClicked(null,null)}parseFromInputFilter(e){let t=this._filterInput.value;e&&(t=e);let s=new OrAssetTreeFilter;if(t){let e=t,i=t.match(/(attribute\:)(\"[^"]+\")\S*/g);i&&(i.length>0&&i.forEach((t,i)=>{e=e.replace(t,"");let r=t.toString().indexOf("attribute:"),a=t.toString().substring(r+10+1,t.toString().length-1);s.attribute.push(a),s.attributeValue.push("")}),this._attributeValueFilter.disabled=!1),(i=t.match(/(type\:)\S+/g))&&i.length>0&&i.forEach((t,i)=>{e=e.replace(t,"");let r=t.toString().indexOf("type:"),a=t.toString().substring(r+5);s.assetType.push(a)}),(i=t.match(/(\"[^\"]+\")\:(([^\"\s]+)|(\"[^\"]+\"))/g))&&i.length>0&&i.forEach((t,i)=>{e=e.replace(t,"");let r=t.toString().indexOf('":'),a=t.toString().substring(r+2),d=t.toString().substring(1,r);'"'===a[0]&&'"'===a[a.length-1]&&(a=a.substring(1,a.length-1)),s.attribute.push(d),s.attributeValue.push(a)}),s.asset=e&&e.length>0?e.trim():void 0}return s}formatFilter(e){let t=e.asset?e.asset:"",s=e.asset?" ":"",i=[];return e.assetType.length>0&&e.assetType.forEach(e=>{t+=s+"type:"+e,s=" "}),e.attribute.length>0&&e.attributeValue.length>0&&e.attributeValue.forEach((r,a)=>{i.push(e.attribute[a]),t+=s+'"'+e.attribute[a]+'":'+r,s=" "}),e.attribute.length>0&&0===e.attributeValue.length&&e.attribute.forEach(e=>{i.includes(e)||(t+=s+'attribute:"'+e+'"',s=" ")}),t}_shouldEnableAttrTypeEvent(e){let t;e.composedPath()&&(t=e.composedPath()[0].value||void 0),this._shouldEnableAttrType(t)}_shouldEnableAttrType(e){e?this._attributeValueFilter.disabled=!1:this._attributeValueFilter.disabled=!0}applySettingFields(e){if(this._assetTypeFilter?e.assetType=[this._assetTypeFilter]:e.assetType=[],this._attributeNameFilter.value?e.attribute=[this._attributeNameFilter.value]:e.attribute=[],this._attributeNameFilter.value&&this._attributeValueFilter.value){let t=this._attributeValueFilter.value;t.includes(" ")&&(t='"'+t+'"'),e.attributeValue=[t]}else e.attributeValue=[];return e}_filterFromSettings(){let e=this.parseFromInputFilter(),t=this.applySettingFields(e);this._filter=t;let s=this.formatFilter(this._filter);this._filterInput.value=s,this._filterSettingOpen=!1,this._doFiltering()}_onFilterInputEvent(e){let t;e.composedPath()&&(t=e.composedPath()[0].value||void 0),this._onFilterInput(t,!1)}_onFilterInput(e,t){let s=this.parseFromInputFilter(e);Util.objectsEqual(this._filter,s,!0)||(this._filter=s,this._searchInputTimer&&clearTimeout(this._searchInputTimer),t?this._doFiltering():this._searchInputTimer=window.setTimeout(()=>{this._doFiltering()},350))}_doFiltering(){return __awaiter(this,void 0,void 0,function*(){if(this._searchInputTimer&&(clearTimeout(this._searchInputTimer),this._searchInputTimer=void 0),this.isConnected&&this._nodes){if(!this._filter.asset&&!this._filter.attribute&&!this._filter.assetType&&!this._filter.attributeValue){OrAssetTree_1._forEachNodeRecursive(this._nodes,e=>{e.notMatchingFilter=!1,e.hidden=!1}),this.requestUpdate("_nodes");return}if(this.disabled=!0,this._filter.asset||this._filter.assetType||this._filter.attribute){let e=!1;this._filter.attribute&&(e=!0),this.getMatcher(e).then(e=>{this._nodes&&(this._nodes.forEach(t=>{this.filterTreeNode(t,e)}),this.disabled=!1)})}}})}getMatcher(e){return e?this.getMatcherFromQuery():this.getSimpleNameMatcher()}getSimpleNameMatcher(){return __awaiter(this,void 0,void 0,function*(){return e=>{let t=!0;return this._filter.asset&&(t=t&&e.name.toLowerCase().includes(this._filter.asset.toLowerCase())),this._filter.assetType.length>0&&(t=t&&e.type.toLowerCase()===this._filter.assetType[0].toLowerCase()),t}})}getMatcherFromQuery(){return __awaiter(this,void 0,void 0,function*(){let response,foundAssetIds,assetCond,attributeCond,assetTypeCond;this._filter.asset&&(assetCond=[{predicateType:"string",match:"CONTAINS",value:this._filter.asset,caseSensitive:!1}]),this._filter.assetType.length>0&&(assetTypeCond=this._filter.assetType),this._filter.attribute.length>0&&(attributeCond={operator:"AND",items:this._filter.attribute.map(e=>({name:{predicateType:"string",match:"EXACT",value:Util.sentenceCaseToCamelCase(e),caseSensitive:!1}}))});let query={select:{attributes:attributeCond?void 0:[]},names:assetCond,types:assetTypeCond,attributes:attributeCond};try{foundAssetIds=(response=yield manager.rest.api.AssetResource.queryAssets(query)).data.map(e=>e.id)}catch(e){this._filter.assetType.forEach(e=>{-1===this._assetTypes.findIndex(t=>t.name===e)&&showSnackbar(void 0,"filter.assetTypeDoesNotExist","dismiss")}),foundAssetIds=[]}return asset=>{let attrValueCheck=!0;if(this._filter.attribute.length>0&&this._filter.attributeValue.length>0&&foundAssetIds.includes(asset.id)){let attributeVal=[];this._filter.attributeValue.forEach((e,t)=>{e.length>0&&attributeVal.push([this._filter.attribute[t],e])});let matchingAsset=response.data.find(e=>e.id===asset.id);if(matchingAsset&&matchingAsset.attributes)for(let attributeValIndex=0;attributeValIndex<attributeVal.length;attributeValIndex++){let currentAttributeVal=attributeVal[attributeValIndex],atLeastOneAttributeMatchValue=!1;Object.keys(matchingAsset.attributes).forEach(key=>{var _a,_b,_c;let attr=matchingAsset.attributes[key];if(attr.name.toLowerCase()===currentAttributeVal[0].toLowerCase())switch(attr.type){case"number":case"integer":case"long":case"bigInteger":case"bigNumber":case"positiveInteger":case"negativeInteger":case"positiveNumber":case"negativeNumber":{let normalizedValue=null==(_a=currentAttributeVal[1])?void 0:_a.replace(",",".");if(isNaN(Number(normalizedValue))){if(/\d/.test(normalizedValue)){normalizedValue.endsWith("%")&&(normalizedValue=null==normalizedValue?void 0:normalizedValue.replace("%","")),/^[0-9]/.test(normalizedValue)&&(normalizedValue="=="+normalizedValue);let func=attr.value+normalizedValue.replace(/[a-z]/gi,"");try{let resultNumberEval=eval(func);resultNumberEval&&(atLeastOneAttributeMatchValue=!0)}catch(_ignored){console.warn("Could not process filter on attribute number value;",func)}}}else(null!=(_b=attr.value)?_b:0)===Number(normalizedValue)&&(atLeastOneAttributeMatchValue=!0);break}case"boolean":{let value=currentAttributeVal[1];("false"===value||"true"===value)&&value===(null!=(_c=attr.value)&&_c).toString()&&(atLeastOneAttributeMatchValue=!0);break}case"text":if(attr.value){let unparsedValue=currentAttributeVal[1],multicharString="*",parsedValue=unparsedValue.replace(multicharString,".*");parsedValue=parsedValue.replace(/"/g,""),-1!=attr.value.toLowerCase().indexOf(parsedValue.toLowerCase())&&(atLeastOneAttributeMatchValue=!0)}}}),attrValueCheck=atLeastOneAttributeMatchValue}}return foundAssetIds.includes(asset.id)&&attrValueCheck}})}isAnyFilter(){return void 0!==this._filter.asset||this._filter.assetType.length>0||this._filter.attribute.length>0}filterTreeNode(e,t,s=!1){let i=t(e.asset);e.notMatchingFilter=!i;let r=e.children.map(e=>this.filterTreeNode(e,t,i)).some(e=>e);return i=i||r,e.expanded=r&&e.children.length>0&&this.isAnyFilter(),e.hidden=!i&&!s,i}_onCopyClicked(){return __awaiter(this,void 0,void 0,function*(){if(1===this._selectedNodes.length)try{let e=yield manager.rest.api.AssetResource.get(this._selectedNodes[0].asset.id);if(!e.data)throw Error("API returned an invalid response when retrieving the source asset");let t=JSON.parse(JSON.stringify(e.data));t.name+=" copy",delete t.id,delete t.path,delete t.createdOn,delete t.version,Util.dispatchCancellableEvent(this,new OrAssetTreeRequestAddEvent({sourceAsset:this._selectedNodes[0].asset,asset:t})).then(e=>{e.allow&&this.dispatchEvent(new OrAssetTreeAddEvent(e.detail))})}catch(e){console.error("Failed to copy asset",e),showErrorDialog("Failed to copy asset")}})}_onAddClicked(){let e,t=this._getAllowedChildTypes(this._selectedNodes[0]),s=t.filter(e=>"agent"===e.descriptorType),i=t.filter(e=>"asset"===e.descriptorType),r=this._selectedNodes&&1===this._selectedNodes.length?this._selectedNodes[0].asset:void 0,a=t=>{let s=!!t.detail.name&&t.detail.name.trim().length>0&&t.detail.name.trim().length<1024;e.shadowRoot.getElementById("add-btn").disabled=!t.detail.descriptor||!s};e=showDialog(new OrMwcDialog().setHeading(i18next.t("addAsset")).setContent(html`
69
+ `}_isReadonly(){return this.readonly||!manager.authenticated||!manager.hasRole("write:assets")}shouldUpdate(e){var t;let s=super.shouldUpdate(e);if((e.has("assets")||e.has("rootAssets")||e.has("rootAssetIds"))&&(this._nodes=void 0),!this._nodes)return this._loadAssets(),!0;if(e.has("selectedIds")){let s=e.get("selectedIds");!Util.objectsEqual(s,this.selectedIds)&&(this._updateSelectedNodes(),(null==s?void 0:s.length)===1&&this._filter.asset===s[0]&&(this.applyFilter(new OrAssetTreeFilter,!0),(null==(t=this.selectedIds)?void 0:t.length)||this._doFiltering()))}return e.has("sortBy")&&this._updateSort(this._nodes,this._getSortFunction()),e.has("disabledSubscribe")&&this.disableSubscribe&&this._removeEventSubscriptions(),s}_updateSelectedNodes(){let e=[],t=[];OrAssetTree_1._forEachNodeRecursive(this._nodes,s=>{if(this.selectedIds&&this.selectedIds.indexOf(s.asset.id)>=0){e.push(s.asset.id),t.push(s),s.selected=!0;let i=s.parent;for(;i;)i.expanded=!0,i=i.parent}else s.selected=!1;if(this.checkboxes){let t=s.parent;for(;t;){let s=[];OrAssetTree_1._forEachNodeRecursive(t.children,e=>{s.push(e)}),t.someChildrenSelected=!1,t.allChildrenSelected=!1,s.every(t=>e.includes(t.asset.id))?t.allChildrenSelected=!0:s.some(t=>e.includes(t.asset.id))&&(t.someChildrenSelected=!0),t=t.parent}}}),this.selectedIds=e;let s=this._selectedNodes;this._selectedNodes=t,this.dispatchEvent(new OrAssetTreeSelectionEvent({oldNodes:s,newNodes:t}))}_updateSort(e,t){e&&(e.sort(t),e.forEach(e=>this._updateSort(e.children,t)))}_toggleExpander(e,t,s=!1){t&&t.expandable&&(t.expanded=!t.expanded,t.expanded?this._expandedNodes.push(t):this._expandedNodes=this._expandedNodes.filter(e=>e!==t),e.parentElement.parentElement.parentElement.toggleAttribute("data-expanded"),s||this.dispatchEvent(new OrAssetTreeToggleExpandEvent({node:t})),this.requestUpdate())}_buildPaths(e){let t=[];return e.asset&&e.asset.id?(t.push(e.asset.id),e.children.length>0&&e.expanded&&e.children.forEach(e=>{t=t.concat(this._buildPaths(e))}),t):[]}_findNode(e,t){if(e.asset&&e.asset.id){if(e.asset.id===t)return e;if(e.children.length>0&&e.expanded){let s;return e.children.forEach(e=>{s||(s=this._findNode(e,t))}),s}return}}_findNodeFromAssetId(e){if(this._nodes){let t;return this._nodes.forEach(s=>{t||(t=this._findNode(s,e))}),t}}_onNodeClicked(e,t){var s,i,r,a;if(e&&e.defaultPrevented)return;e&&e.preventDefault();let d=e&&e.target.className.indexOf("expander")>=0,n=e&&(null==(i=null==(s=e.target)?void 0:s.icon)?void 0:i.includes("checkbox-multiple"));if(d)this._toggleExpander(e.target,t);else{let s=!0;if(t&&this.config&&(null==(r=this.config.select)?void 0:r.types)&&(s=this.config.select.types.indexOf(t.asset.type)>=0),!s&&!n)return;let i=[];if(t){let s=this.selectedNodes.indexOf(t),r=!0,d=!0,l=!this._isReadonly()&&(!this.config||!this.config.select||!this.config.select.multiSelect);if((this.checkboxes||l&&e&&(e.ctrlKey||e.shiftKey||e.metaKey))&&(d=!1,s>=0&&this.selectedIds&&this.selectedIds.length>1&&(r=!1)),n){i=[...this.selectedNodes];let e=[];OrAssetTree_1._forEachNodeRecursive(t.children,t=>{var s,i;let r=!0;t&&(null==(i=null==(s=this.config)?void 0:s.select)?void 0:i.types)&&(r=this.config.select.types.indexOf(t.asset.type)>=0),r&&e.push(t)}),i=t.allChildrenSelected?i.filter(t=>!e.map(e=>e.asset.id).includes(t.asset.id)):i.concat(e)}else if(d)this._latestSelected=Object.assign({},t),i=[t];else if(r){if(s<0){if(e&&e.shiftKey){let e=[];if(null==(a=this._nodes)||a.forEach(t=>{e=e.concat(this._buildPaths(t))}),this._latestSelected&&this._latestSelected.asset&&this._latestSelected.asset.id&&t.asset&&t.asset.id){let s=this._latestSelected.asset.id,r=t.asset.id,a=e.findIndex(e=>e.includes(s)),d=e.findIndex(e=>e.includes(r)),n=-1,l=-1;a>d?(n=d,l=a):(n=a,l=d);let o=e.slice(n,l+1),h=[];o.forEach(e=>{let t=this._findNodeFromAssetId(e);t&&h.push(t)}),i=(i=[...this.selectedNodes]).concat(h)}}else(i=[...this.selectedNodes]).push(t);this._latestSelected=Object.assign({},t)}}else s>=0&&(1===(i=[...this.selectedNodes]).length&&(this._latestSelected=void 0),i.splice(s,1))}Util.dispatchCancellableEvent(this,new OrAssetTreeRequestSelectionEvent({oldNodes:this.selectedNodes,newNodes:i})).then(e=>{e.allow&&(this.selectedNodes=e.detail.newNodes)})}}_onDeselectClicked(){this._onNodeClicked(null,null)}parseFromInputFilter(e){var t;void 0===e&&(e=null==(t=this._filterInput)?void 0:t.value);let s=new OrAssetTreeFilter;if(e){let t=e,i=e.match(/(attribute\:)(\"[^"]+\")\S*/g);i&&(i.length>0&&i.forEach((e,i)=>{t=t.replace(e,"");let r=e.toString().indexOf("attribute:"),a=e.toString().substring(r+10+1,e.toString().length-1);s.attribute.push(a),s.attributeValue.push("")}),this._attributeValueFilter.disabled=!1),(i=e.match(/(type\:)\S+/g))&&i.length>0&&i.forEach((e,i)=>{t=t.replace(e,"");let r=e.toString().indexOf("type:"),a=e.toString().substring(r+5);s.assetType.push(a)}),(i=e.match(/(\"[^\"]+\")\:(([^\"\s]+)|(\"[^\"]+\"))/g))&&i.length>0&&i.forEach((e,i)=>{t=t.replace(e,"");let r=e.toString().indexOf('":'),a=e.toString().substring(r+2),d=e.toString().substring(1,r);'"'===a[0]&&'"'===a[a.length-1]&&(a=a.substring(1,a.length-1)),s.attribute.push(d),s.attributeValue.push(a)}),s.asset=t&&t.length>0?t.trim():void 0}return s}formatFilter(e){let t=e.asset?e.asset:"",s=e.asset?" ":"",i=[];return e.assetType.length>0&&e.assetType.forEach(e=>{t+=s+"type:"+e,s=" "}),e.attribute.length>0&&e.attributeValue.length>0&&e.attributeValue.forEach((r,a)=>{i.push(e.attribute[a]),t+=s+'"'+e.attribute[a]+'":'+r,s=" "}),e.attribute.length>0&&0===e.attributeValue.length&&e.attribute.forEach(e=>{i.includes(e)||(t+=s+'attribute:"'+e+'"',s=" ")}),t}_shouldEnableAttrTypeEvent(e){let t;e.composedPath()&&(t=e.composedPath()[0].value||void 0),this._shouldEnableAttrType(t)}_shouldEnableAttrType(e){e?this._attributeValueFilter.disabled=!1:this._attributeValueFilter.disabled=!0}applySettingFields(e){if(this._assetTypeFilter?e.assetType=[this._assetTypeFilter]:e.assetType=[],this._attributeNameFilter.value?e.attribute=[this._attributeNameFilter.value]:e.attribute=[],this._attributeNameFilter.value&&this._attributeValueFilter.value){let t=this._attributeValueFilter.value;t.includes(" ")&&(t='"'+t+'"'),e.attributeValue=[t]}else e.attributeValue=[];return e}_filterFromSettings(){let e=this.parseFromInputFilter(),t=this.applySettingFields(e);this.applyFilter(t);let s=this.formatFilter(this._filter);this._filterInput.value=s,this._filterSettingOpen=!1,this._doFiltering()}_onFilterInputEvent(e){var t;this._onFilterInput(null==(t=this._filterInput)?void 0:t.nativeValue,!1)}_onFilterInput(e,t){this.applyFilter(e),this._searchInputTimer&&clearTimeout(this._searchInputTimer),t?this._doFiltering():this._searchInputTimer=window.setTimeout(()=>{this._doFiltering()},350)}_doFiltering(){return __awaiter(this,void 0,void 0,function*(){if(this._searchInputTimer&&(clearTimeout(this._searchInputTimer),this._searchInputTimer=void 0),this.isConnected&&this._nodes){if(!this._filter.asset&&!this._filter.attribute&&!this._filter.assetType&&!this._filter.attributeValue){OrAssetTree_1._forEachNodeRecursive(this._nodes,e=>{e.notMatchingFilter=!1,e.hidden=!1}),this.requestUpdate("_nodes");return}if(this.disabled=!0,this._filter.asset||this._filter.assetType||this._filter.attribute){let e=!1;this._filter.attribute&&(e=!0),this.getMatcher(e).then(e=>{this._nodes&&(this._nodes.forEach(t=>{this.filterTreeNode(t,e)}),this.disabled=!1)})}}})}getMatcher(e){return e?this.getMatcherFromQuery():this.getSimpleNameMatcher()}getSimpleNameMatcher(){return __awaiter(this,void 0,void 0,function*(){return e=>{let t=!0;return this._filter.asset&&(t=t&&e.name.toLowerCase().includes(this._filter.asset.toLowerCase())),this._filter.assetType.length>0&&(t=t&&e.type.toLowerCase()===this._filter.assetType[0].toLowerCase()),t}})}getMatcherFromQuery(){return __awaiter(this,void 0,void 0,function*(){let assetCond,attributeCond,assetTypeCond,foundAssets,foundAssetIds,assetQueries=[];this._filter.asset&&(assetCond=[{predicateType:"string",match:"CONTAINS",value:this._filter.asset,caseSensitive:!1}]),this._filter.assetType.length>0&&(assetTypeCond=this._filter.assetType),this._filter.attribute.length>0&&(attributeCond={operator:"AND",items:this._filter.attribute.map(e=>({name:{predicateType:"string",match:"EXACT",value:Util.sentenceCaseToCamelCase(e),caseSensitive:!1}}))}),assetQueries.push({select:{attributes:attributeCond?void 0:[]},names:assetCond,types:assetTypeCond,attributes:attributeCond}),this._filter.asset&&22===this._filter.asset.length&&assetQueries.push({select:{attributes:attributeCond?void 0:[]},types:assetTypeCond,attributes:attributeCond,ids:[this._filter.asset],limit:1});try{let promises=assetQueries.map(e=>manager.rest.api.AssetResource.queryAssets(e));foundAssetIds=(foundAssets=(yield Promise.all(promises)).flatMap(e=>e.data)).map(e=>e.id)}catch(e){console.error("Error querying Asset Tree assets with filter:",e),this._filter.assetType.forEach(e=>{-1===this._assetTypes.findIndex(t=>t.name===e)&&showSnackbar(void 0,"filter.assetTypeDoesNotExist","dismiss")}),foundAssetIds=[]}return asset=>{let attrValueCheck=!0;if(this._filter.attribute.length>0&&this._filter.attributeValue.length>0&&foundAssetIds.includes(asset.id)){let attributeVal=[];this._filter.attributeValue.forEach((e,t)=>{e.length>0&&attributeVal.push([this._filter.attribute[t],e])});let matchingAsset=foundAssets.find(e=>e.id===asset.id);if(matchingAsset&&matchingAsset.attributes)for(let attributeValIndex=0;attributeValIndex<attributeVal.length;attributeValIndex++){let currentAttributeVal=attributeVal[attributeValIndex],atLeastOneAttributeMatchValue=!1;Object.keys(matchingAsset.attributes).forEach(key=>{var _a,_b,_c;let attr=matchingAsset.attributes[key];if(attr.name.toLowerCase()===currentAttributeVal[0].toLowerCase())switch(attr.type){case"number":case"integer":case"long":case"bigInteger":case"bigNumber":case"positiveInteger":case"negativeInteger":case"positiveNumber":case"negativeNumber":{let normalizedValue=null==(_a=currentAttributeVal[1])?void 0:_a.replace(",",".");if(isNaN(Number(normalizedValue))){if(/\d/.test(normalizedValue)){normalizedValue.endsWith("%")&&(normalizedValue=null==normalizedValue?void 0:normalizedValue.replace("%","")),/^[0-9]/.test(normalizedValue)&&(normalizedValue="=="+normalizedValue);let func=attr.value+normalizedValue.replace(/[a-z]/gi,"");try{let resultNumberEval=eval(func);resultNumberEval&&(atLeastOneAttributeMatchValue=!0)}catch(_ignored){console.warn("Could not process filter on attribute number value;",func)}}}else(null!=(_b=attr.value)?_b:0)===Number(normalizedValue)&&(atLeastOneAttributeMatchValue=!0);break}case"boolean":{let value=currentAttributeVal[1];("false"===value||"true"===value)&&value===(null!=(_c=attr.value)&&_c).toString()&&(atLeastOneAttributeMatchValue=!0);break}case"text":if(attr.value){let unparsedValue=currentAttributeVal[1],multicharString="*",parsedValue=unparsedValue.replace(multicharString,".*");parsedValue=parsedValue.replace(/"/g,""),-1!=attr.value.toLowerCase().indexOf(parsedValue.toLowerCase())&&(atLeastOneAttributeMatchValue=!0)}}}),attrValueCheck=atLeastOneAttributeMatchValue}}return foundAssetIds.includes(asset.id)&&attrValueCheck}})}isAnyFilter(){return void 0!==this._filter.asset||this._filter.assetType.length>0||this._filter.attribute.length>0}filterTreeNode(e,t,s=!1){let i=t(e.asset);e.notMatchingFilter=!i;let r=e.children.map(e=>this.filterTreeNode(e,t,i)).some(e=>e);return i=i||r,e.expanded=r&&e.children.length>0&&this.isAnyFilter(),e.hidden=!i&&!s,i}_onCopyClicked(){return __awaiter(this,void 0,void 0,function*(){if(1===this._selectedNodes.length)try{let e=yield manager.rest.api.AssetResource.get(this._selectedNodes[0].asset.id);if(!e.data)throw Error("API returned an invalid response when retrieving the source asset");let t=JSON.parse(JSON.stringify(e.data));t.name+=" copy",delete t.id,delete t.path,delete t.createdOn,delete t.version,Util.dispatchCancellableEvent(this,new OrAssetTreeRequestAddEvent({sourceAsset:this._selectedNodes[0].asset,asset:t})).then(e=>{e.allow&&this.dispatchEvent(new OrAssetTreeAddEvent(e.detail))})}catch(e){console.error("Failed to copy asset",e),showErrorDialog("Failed to copy asset")}})}_onAddClicked(){let e,t=this._getAllowedChildTypes(this._selectedNodes[0]),s=t.filter(e=>"agent"===e.descriptorType),i=t.filter(e=>"asset"===e.descriptorType),r=this._selectedNodes&&1===this._selectedNodes.length?this._selectedNodes[0].asset:void 0,a=t=>{let s=!!t.detail.name&&t.detail.name.trim().length>0&&t.detail.name.trim().length<1024;e.shadowRoot.getElementById("add-btn").disabled=!t.detail.descriptor||!s};e=showDialog(new OrMwcDialog().setHeading(i18next.t("addAsset")).setContent(html`
70
70
  <or-add-asset-dialog id="add-panel" .config="${this.config}" .agentTypes="${s}" .assetTypes="${i}" .parent="${r}" @or-add-asset-changed="${a}"></or-add-asset-dialog>
71
- `).setActions([{actionName:"cancel",content:"cancel"},{actionName:"add",content:html`<or-mwc-input id="add-btn" class="button" .type="${InputType.BUTTON}" label="add" disabled></or-mwc-input>`,action:()=>{let t=e.shadowRoot.getElementById("add-panel"),s=t.selectedType,i=t.selectedAttributes,r=t.name.trim(),a=t.parent;if(!s)return;let d={name:r,type:s.name,realm:manager.displayRealm},n=AssetModelUtil.getAssetTypeInfo(s.name);if(!n)return;n.attributeDescriptors&&(d.attributes={},n.attributeDescriptors.filter(e=>!e.optional).forEach(e=>{d.attributes[e.name]={name:e.name,type:e.type,meta:e.meta?Object.assign({},e.meta):void 0}})),i&&(null==i||i.forEach(e=>{d.attributes[e.name]={name:e.name,type:e.type,meta:e.meta?Object.assign({},e.meta):void 0}})),this.selectedIds&&(d.parentId=a?a.id:void 0);let o={asset:d};Util.dispatchCancellableEvent(this,new OrAssetTreeRequestAddEvent(o)).then(e=>{e.allow&&this.dispatchEvent(new OrAssetTreeAddEvent(e.detail))})}}]).setStyles(html`
71
+ `).setActions([{actionName:"cancel",content:"cancel"},{actionName:"add",content:html`<or-mwc-input id="add-btn" class="button" .type="${InputType.BUTTON}" label="add" disabled></or-mwc-input>`,action:()=>{let t=e.shadowRoot.getElementById("add-panel"),s=t.selectedType,i=t.selectedAttributes,r=t.name.trim(),a=t.parent;if(!s)return;let d={name:r,type:s.name,realm:manager.displayRealm},n=AssetModelUtil.getAssetTypeInfo(s.name);if(!n)return;n.attributeDescriptors&&(d.attributes={},n.attributeDescriptors.filter(e=>!e.optional).forEach(e=>{d.attributes[e.name]={name:e.name,type:e.type,meta:e.meta?Object.assign({},e.meta):void 0}})),i&&(null==i||i.forEach(e=>{d.attributes[e.name]={name:e.name,type:e.type,meta:e.meta?Object.assign({},e.meta):void 0}})),this.selectedIds&&(d.parentId=a?a.id:void 0);let l={asset:d};Util.dispatchCancellableEvent(this,new OrAssetTreeRequestAddEvent(l)).then(e=>{e.allow&&this.dispatchEvent(new OrAssetTreeAddEvent(e.detail))})}}]).setStyles(html`
72
72
  <style>
73
73
  .mdc-dialog__content {
74
74
  padding: 0 !important;
75
75
  }
76
76
  </style>
77
- `).setDismissAction(null))}_gatewayDescendantIsSelected(){return this._selectedNodes.some(e=>{var t;let s=null==e?void 0:e.parent;for(;s;){if((null==(t=s.asset)?void 0:t.type)==="GatewayAsset")return!0;s=s.parent}return!1})}_onDeleteClicked(){this._selectedNodes.length>0&&Util.dispatchCancellableEvent(this,new OrAssetTreeRequestDeleteEvent(this._selectedNodes)).then(e=>{e.allow&&this._doDelete()})}_onSortClicked(e){this.sortBy=e}_doDelete(){if(!this._selectedNodes||0===this._selectedNodes.length)return;let e=new Set,t=this._selectedNodes.filter(t=>{var s;return(null==(s=t.asset)?void 0:s.type)!=="GatewayAsset"||(e.add(t.asset),!1)});OrAssetTree_1._forEachNodeRecursive(t,t=>{var s;let i=t.parent,r=!0;for(;i&&r;)"GatewayAsset"===(null==(s=null==i?void 0:i.asset)?void 0:s.type)&&(r=!1),i=i.parent;r&&e.add(t.asset)});let s=Array.from(e).map(e=>e.id),i=Array.from(e).map(e=>e.name),r=()=>{this.disabled=!0,manager.rest.api.AssetResource.delete({assetId:s},{paramsSerializer:e=>Qs.stringify(e,{arrayFormat:"repeat"})}).then(e=>{this.refresh(),this.disabled=!1,204!==e.status&&showErrorDialog(i18next.t("deleteAssetsFailed"))}).catch(e=>{this.refresh(),this.disabled=!1,showErrorDialog(i18next.t("deleteAssetsFailed"))})};showOkCancelDialog(i18next.t("deleteAssets"),i18next.t("deleteAssetsConfirm",{assetNames:i.join(",\n- ")}),i18next.t("delete")).then(e=>{e&&r()})}_canAdd(){var e;if(this._selectedNodes&&this._selectedNodes.length>1)return!1;let t=this._selectedNodes?this._selectedNodes[0]:void 0;return!((null==(e=null==t?void 0:t.asset)?void 0:e.type)==="GatewayAsset"||this._gatewayDescendantIsSelected())&&this._getAllowedChildTypes(t).length>0}_getAllowedChildTypes(e){let t,s;if(this.config&&this.config.add){if(this.config.add.typesProvider){let t=this.config.add.typesProvider(e);if(t)return t}if(this.config.add.typesParent){let i;!e&&this.config.add.typesParent.none?i=this.config.add.typesParent.none:e&&this.config.add.typesParent.assetTypes&&(i=this.config.add.typesParent.assetTypes[e.asset.type]),i||(i=this.config.add.typesParent.default),i&&(t=i.include,s=i.exclude||[])}}return AssetModelUtil.getAssetDescriptors().filter(e=>(!t||t.some(t=>Util.stringMatch(t,e.name)))&&(!s||!s.some(t=>Util.stringMatch(t,e.name))))}_getSortFunction(){return"createdOn"===this.sortBy?Util.sortByNumber(e=>e.asset[this.sortBy]):Util.sortByString(e=>e.asset[this.sortBy])}_loadAssets(){let e=this._getSortFunction();if(this.assets)this._loading=!1,this._buildTreeNodes(this.assets,e);else{if(!this._connected||this._loading)return;if(this._loading=!0,this.dataProvider)this.dataProvider().then(t=>{this._loading=!1,this._buildTreeNodes(t,e)});else{let t={realm:{name:manager.displayRealm},select:{attributes:[]}};this.assetIds?(t.ids=this.assetIds,t.recursive=!0):this.rootAssets?(t.ids=this.rootAssets.map(e=>e.id),t.recursive=!0):this.rootAssetIds&&(t.ids=this.rootAssetIds,t.recursive=!0),this._sendEventWithReply({eventType:"read-assets",assetQuery:t}).then(t=>{this._loading=!1,this._buildTreeNodes(t.assets,e)})}}}_addEventSubscriptions(){return __awaiter(this,void 0,void 0,function*(){this.disableSubscribe||(this._subscriptionIds=[(yield manager.getEventProvider().subscribeAssetEvents(void 0,!1,e=>this._onEvent(e)))])})}onEventsConnect(){this._connected=!0,this._loadAssets()}onEventsDisconnect(){this._connected=!1,this._nodes=void 0}getNodes(){return this._nodes||[]}_onEvent(e){if("assets"===e.eventType){let t=e;this._buildTreeNodes(t.assets,this._getSortFunction());return}if("asset"===e.eventType){let t=e;if("READ"===t.cause||"UPDATE"===t.cause&&!(t.updatedProperties.includes("name")||t.updatedProperties.includes("parentId")))return;let s=[];"DELETE"!==t.cause&&s.push(t.asset),this._nodes&&OrAssetTree_1._forEachNodeRecursive(this._nodes,e=>{e.asset.id!==t.asset.id&&s.push(e.asset)}),this._buildTreeNodes(s,this._getSortFunction()),this._filterInput.value&&this._doFiltering(),this.dispatchEvent(new OrAssetTreeAssetEvent(t))}}_buildTreeNodes(e,t){if(e&&0!==e.length){let s,i;manager.isRestrictedUser()&&e.forEach(t=>{if(t.parentId&&t.path&&void 0===e.find(e=>e.id===t.parentId)){let s=null;for(let i=0;i<t.path.length;i++){let r=t.path[i];t.id!==r&&void 0!==e.find(e=>e.id===r)&&(s=r)}t.reparentId=s}}),this.rootAssetIds?s=this.rootAssetIds:this.rootAssets&&(s=this.rootAssets.map(e=>e.id)),i=s?e.filter(e=>s.indexOf(e.id)>=0||null===e.reparentId).map(e=>({asset:e})):e.filter(e=>!e.parentId||null===e.reparentId).map(e=>({asset:e})),this.assetsChildren={},e.forEach(e=>{e.parentId&&(this.assetsChildren[e.parentId]||(this.assetsChildren[e.parentId]=[]),this.assetsChildren[e.parentId].push({asset:e})),e.reparentId&&(this.assetsChildren[e.reparentId]||(this.assetsChildren[e.reparentId]=[]),this.assetsChildren[e.reparentId].push({asset:e}))}),i.sort(t),i.forEach(s=>this._buildChildTreeNodes(s,e,t)),this._nodes=i;let r=[];this._expandedNodes.forEach(e=>{OrAssetTree_1._forEachNodeRecursive(this._nodes,t=>{if(t.asset&&e&&e.asset&&t.asset.id===e.asset.id){t.expanded=!0,r.push(t);let e=t.parent;for(;e;)e.expanded=!0,e=e.parent,0>r.indexOf(e)&&r.push(e)}})}),this._expandedNodes=r}else this._nodes=[];this.selectedIds&&this.selectedIds.length>0&&this._updateSelectedNodes(),this.expandAllNodes&&OrAssetTree_1._forEachNodeRecursive(this._nodes,e=>{e.children&&e.children.length>0&&(e.expanded=!0)})}_buildChildTreeNodes(e,t,s){let i=this.assetsChildren[e.asset.id];e.children=i?i.sort(s):[],e.children.length>0&&(e.expandable=!0),e.children.forEach(i=>{i.parent=e,this._buildChildTreeNodes(i,t,s)})}_onDragStart(e){this._dragDropParentId=null;let t=e.currentTarget.getAttribute("node-asset-id");this.selectedIds||(this.selectedIds=[]),t&&this.selectedIds&&!this.selectedIds.includes(t)&&(e.ctrlKey||e.shiftKey||(this.selectedIds=[]),this.selectedIds.push(t))}_onDragEnd(e){let t=e.x,s=e.y;if(null!==this.shadowRoot){let e=this.shadowRoot.getElementById("list");if(e){let i=e.getBoundingClientRect().top,r=e.getBoundingClientRect().bottom,a=e.getBoundingClientRect().left,d=e.getBoundingClientRect().right;if(t<a||t>d||s>r||s<i)return}}this.selectedIds&&this.dispatchEvent(new OrAssetTreeChangeParentEvent(!this._dragDropParentId?void 0:this._dragDropParentId,this.selectedIds))}isExpandable(e){return!!(this._nodes&&this.shadowRoot&&this.shadowRoot.querySelector('[node-asset-id="'+e+'"] > .node-name > [data-expandable]'))||!1}_onDragOver(e){let t=e.currentTarget;t.classList.add("over");let s=t.getAttribute("node-asset-id");s&&this.isExpandable(s)&&!this._expandTimer&&(this._expandTimer=window.setTimeout(()=>{this.expandNode(s)},1e3))}expandNode(e){var t;if(this.shadowRoot&&e&&e===this._dragDropParentId){let s=this._findNodeFromAssetId(e),i=null==(t=this.shadowRoot)?void 0:t.querySelector('[node-asset-id="'+e+'"]');i&&s&&!s.expanded&&this._toggleExpander(i.firstElementChild.firstElementChild,s,!0)}}_onDragEnter(e){let t=e.currentTarget;t.classList.add("over");let s=t.getAttribute("node-asset-id");this._dragDropParentId=s}_onDragLeave(e){e.currentTarget.classList.remove("over"),clearTimeout(this._expandTimer),this._expandTimer=void 0}_treeNodeTemplate(e,t){let s,i=AssetModelUtil.getAssetDescriptor(e.asset.type);if(s=e.allChildrenSelected?"checkbox-multiple-marked":e.someChildrenSelected?"checkbox-multiple-marked-outline":"checkbox-multiple-blank-outline",e.hidden)return html``;let r=!1;return e.asset&&e.notMatchingFilter&&(r=!0),e.expanded&&0===e.children.length&&(e.expanded=!1),this.expandedIds&&-1!==this.expandedIds.findIndex(t=>t===e.asset.id)&&(e.expanded=!0),html`
77
+ `).setDismissAction(null))}_gatewayDescendantIsSelected(){return this._selectedNodes.some(e=>{var t;let s=null==e?void 0:e.parent;for(;s;){if((null==(t=s.asset)?void 0:t.type)==="GatewayAsset")return!0;s=s.parent}return!1})}_onDeleteClicked(){this._selectedNodes.length>0&&Util.dispatchCancellableEvent(this,new OrAssetTreeRequestDeleteEvent(this._selectedNodes)).then(e=>{e.allow&&this._doDelete()})}_onSortClicked(e){this.sortBy=e}_doDelete(){if(!this._selectedNodes||0===this._selectedNodes.length)return;let e=new Set,t=this._selectedNodes.filter(t=>{var s;return(null==(s=t.asset)?void 0:s.type)!=="GatewayAsset"||(e.add(t.asset),!1)});OrAssetTree_1._forEachNodeRecursive(t,t=>{var s;let i=t.parent,r=!0;for(;i&&r;)"GatewayAsset"===(null==(s=null==i?void 0:i.asset)?void 0:s.type)&&(r=!1),i=i.parent;r&&e.add(t.asset)});let s=Array.from(e).map(e=>e.id),i=Array.from(e).map(e=>e.name),r=()=>{this.disabled=!0,manager.rest.api.AssetResource.delete({assetId:s},{paramsSerializer:e=>Qs.stringify(e,{arrayFormat:"repeat"})}).then(e=>{this.refresh(),this.disabled=!1,204!==e.status&&showErrorDialog(i18next.t("deleteAssetsFailed"))}).catch(e=>{this.refresh(),this.disabled=!1,showErrorDialog(i18next.t("deleteAssetsFailed"))})};showOkCancelDialog(i18next.t("deleteAssets"),i18next.t("deleteAssetsConfirm",{assetNames:i.join(",\n- ")}),i18next.t("delete")).then(e=>{e&&r()})}_canAdd(){var e;if(this._selectedNodes&&this._selectedNodes.length>1)return!1;let t=this._selectedNodes?this._selectedNodes[0]:void 0;return!((null==(e=null==t?void 0:t.asset)?void 0:e.type)==="GatewayAsset"||this._gatewayDescendantIsSelected())&&this._getAllowedChildTypes(t).length>0}_getAllowedChildTypes(e){let t,s;if(this.config&&this.config.add){if(this.config.add.typesProvider){let t=this.config.add.typesProvider(e);if(t)return t}if(this.config.add.typesParent){let i;!e&&this.config.add.typesParent.none?i=this.config.add.typesParent.none:e&&this.config.add.typesParent.assetTypes&&(i=this.config.add.typesParent.assetTypes[e.asset.type]),i||(i=this.config.add.typesParent.default),i&&(t=i.include,s=i.exclude||[])}}return AssetModelUtil.getAssetDescriptors().filter(e=>(!t||t.some(t=>Util.stringMatch(t,e.name)))&&(!s||!s.some(t=>Util.stringMatch(t,e.name))))}_getSortFunction(){return"createdOn"===this.sortBy?Util.sortByNumber(e=>e.asset[this.sortBy]):Util.sortByString(e=>e.asset[this.sortBy])}_loadAssets(){let e=this._getSortFunction();if(this.assets)this._loading=!1,this._buildTreeNodes(this.assets,e);else{if(!this._connected||this._loading)return;if(this._loading=!0,this.dataProvider)this.dataProvider().then(t=>{var s;this._loading=!1,this._buildTreeNodes(t,e),(null==(s=this._filterInput)?void 0:s.value)&&this._doFiltering()});else{let t={realm:{name:manager.displayRealm},select:{attributes:[]}};this.assetIds?(t.ids=this.assetIds,t.recursive=!0):this.rootAssets?(t.ids=this.rootAssets.map(e=>e.id),t.recursive=!0):this.rootAssetIds&&(t.ids=this.rootAssetIds,t.recursive=!0),this._sendEventWithReply({eventType:"read-assets",assetQuery:t}).then(t=>{var s;this._loading=!1,this._buildTreeNodes(t.assets,e),(null==(s=this._filterInput)?void 0:s.value)&&this._doFiltering()})}}}_addEventSubscriptions(){return __awaiter(this,void 0,void 0,function*(){this.disableSubscribe||(this._subscriptionIds=[(yield manager.getEventProvider().subscribeAssetEvents(void 0,!1,e=>this._onEvent(e)))])})}onEventsConnect(){this._connected=!0,this._loadAssets()}onEventsDisconnect(){this._connected=!1,this._nodes=void 0}getNodes(){return this._nodes||[]}_onEvent(e){var t;if("assets"===e.eventType){let t=e;this._buildTreeNodes(t.assets,this._getSortFunction());return}if("asset"===e.eventType){let s=e;if("READ"===s.cause||"UPDATE"===s.cause&&!(s.updatedProperties.includes("name")||s.updatedProperties.includes("parentId")))return;let i=[];"DELETE"!==s.cause&&i.push(s.asset),this._nodes&&OrAssetTree_1._forEachNodeRecursive(this._nodes,e=>{e.asset.id!==s.asset.id&&i.push(e.asset)}),this._buildTreeNodes(i,this._getSortFunction()),(null==(t=this._filterInput)?void 0:t.value)&&this._doFiltering(),this.dispatchEvent(new OrAssetTreeAssetEvent(s))}}_buildTreeNodes(e,t){if(e&&0!==e.length){let s,i;manager.isRestrictedUser()&&e.forEach(t=>{if(t.parentId&&t.path&&void 0===e.find(e=>e.id===t.parentId)){let s=null;for(let i=0;i<t.path.length;i++){let r=t.path[i];t.id!==r&&void 0!==e.find(e=>e.id===r)&&(s=r)}t.reparentId=s}}),this.rootAssetIds?s=this.rootAssetIds:this.rootAssets&&(s=this.rootAssets.map(e=>e.id)),i=s?e.filter(e=>s.indexOf(e.id)>=0||null===e.reparentId).map(e=>({asset:e})):e.filter(e=>!e.parentId||null===e.reparentId).map(e=>({asset:e})),this.assetsChildren={},e.forEach(e=>{e.parentId&&(this.assetsChildren[e.parentId]||(this.assetsChildren[e.parentId]=[]),this.assetsChildren[e.parentId].push({asset:e})),e.reparentId&&(this.assetsChildren[e.reparentId]||(this.assetsChildren[e.reparentId]=[]),this.assetsChildren[e.reparentId].push({asset:e}))}),i.sort(t),i.forEach(s=>this._buildChildTreeNodes(s,e,t)),this._nodes=i;let r=[];this._expandedNodes.forEach(e=>{OrAssetTree_1._forEachNodeRecursive(this._nodes,t=>{if(t.asset&&e&&e.asset&&t.asset.id===e.asset.id){t.expanded=!0,r.push(t);let e=t.parent;for(;e;)e.expanded=!0,e=e.parent,0>r.indexOf(e)&&r.push(e)}})}),this._expandedNodes=r}else this._nodes=[];this.selectedIds&&this.selectedIds.length>0&&this._updateSelectedNodes(),this.expandAllNodes&&OrAssetTree_1._forEachNodeRecursive(this._nodes,e=>{e.children&&e.children.length>0&&(e.expanded=!0)})}_buildChildTreeNodes(e,t,s){let i=this.assetsChildren[e.asset.id];e.children=i?i.sort(s):[],e.children.length>0&&(e.expandable=!0),e.children.forEach(i=>{i.parent=e,this._buildChildTreeNodes(i,t,s)})}_onDragStart(e){this._dragDropParentId=null;let t=e.currentTarget.getAttribute("node-asset-id");this.selectedIds||(this.selectedIds=[]),t&&this.selectedIds&&!this.selectedIds.includes(t)&&(e.ctrlKey||e.shiftKey||(this.selectedIds=[]),this.selectedIds.push(t))}_onDragEnd(e){let t=e.x,s=e.y;if(null!==this.shadowRoot){let e=this.shadowRoot.getElementById("list");if(e){let i=e.getBoundingClientRect().top,r=e.getBoundingClientRect().bottom,a=e.getBoundingClientRect().left,d=e.getBoundingClientRect().right;if(t<a||t>d||s>r||s<i)return}}this.selectedIds&&this.dispatchEvent(new OrAssetTreeChangeParentEvent(!this._dragDropParentId?void 0:this._dragDropParentId,this.selectedIds))}isExpandable(e){return!!(this._nodes&&this.shadowRoot&&this.shadowRoot.querySelector('[node-asset-id="'+e+'"] > .node-name > [data-expandable]'))||!1}_onDragOver(e){let t=e.currentTarget;t.classList.add("over");let s=t.getAttribute("node-asset-id");s&&this.isExpandable(s)&&!this._expandTimer&&(this._expandTimer=window.setTimeout(()=>{this.expandNode(s)},1e3))}expandNode(e){var t;if(this.shadowRoot&&e&&e===this._dragDropParentId){let s=this._findNodeFromAssetId(e),i=null==(t=this.shadowRoot)?void 0:t.querySelector('[node-asset-id="'+e+'"]');i&&s&&!s.expanded&&this._toggleExpander(i.firstElementChild.firstElementChild,s,!0)}}_onDragEnter(e){let t=e.currentTarget;t.classList.add("over");let s=t.getAttribute("node-asset-id");this._dragDropParentId=s}_onDragLeave(e){e.currentTarget.classList.remove("over"),clearTimeout(this._expandTimer),this._expandTimer=void 0}_treeNodeTemplate(e,t){let s,i=AssetModelUtil.getAssetDescriptor(e.asset.type);if(s=e.allChildrenSelected?"checkbox-multiple-marked":e.someChildrenSelected?"checkbox-multiple-marked-outline":"checkbox-multiple-blank-outline",e.hidden)return html``;let r=!1;return e.asset&&e.notMatchingFilter&&(r=!0),e.expanded&&0===e.children.length&&(e.expanded=!1),this.expandedIds&&-1!==this.expandedIds.findIndex(t=>t===e.asset.id)&&(e.expanded=!0),html`
78
78
  <li class="asset-list-element" ?data-selected="${e.selected}" ?data-expanded="${e.expanded}" @click="${t=>this._onNodeClicked(t,e)}">
79
79
  <div class="in-between-element" node-asset-id="${e.parent?e.parent.asset?e.parent.asset.id:"":void 0}" @dragleave=${e=>{this._onDragLeave(e)}} @dragenter="${e=>this._onDragEnter(e)}" @dragend="${e=>this._onDragEnd(e)}" @dragover="${e=>this._onDragOver(e)}"></div>
80
80
  <div class="node-container draggable" node-asset-id="${e.asset?e.asset.id:""}" draggable="${!this._isReadonly()}" @dragleave=${e=>{this._onDragLeave(e)}} @dragenter="${e=>this._onDragEnter(e)}" @dragstart="${e=>this._onDragStart(e)}" @dragend="${e=>this._onDragEnd(e)}" @dragover="${e=>this._onDragOver(e)}" style="padding-left: ${22*t}px">
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openremote/or-asset-tree",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "description": "OpenRemote Asset Tree",
5
5
  "customElements": "custom-elements.json",
6
6
  "main": "dist/umd/index.bundle.js",
@@ -19,17 +19,17 @@
19
19
  "license": "AGPL-3.0-or-later",
20
20
  "dependencies": {
21
21
  "@mdi/js": "^5.9.55",
22
- "@openremote/core": "1.8.0",
23
- "@openremote/model": "1.8.0",
24
- "@openremote/or-icon": "1.8.0",
25
- "@openremote/or-mwc-components": "1.8.0",
26
- "@openremote/or-translate": "1.8.0",
27
- "@openremote/rest": "1.8.0",
28
- "lit": "^2.0.2",
22
+ "@openremote/core": "1.8.1",
23
+ "@openremote/model": "1.8.1",
24
+ "@openremote/or-icon": "1.8.1",
25
+ "@openremote/or-mwc-components": "1.8.1",
26
+ "@openremote/or-translate": "1.8.1",
27
+ "@openremote/rest": "1.8.1",
28
+ "lit": "^3.3.1",
29
29
  "moment": "^2.29.4"
30
30
  },
31
31
  "devDependencies": {
32
- "@openremote/util": "1.8.0"
32
+ "@openremote/util": "1.8.1"
33
33
  },
34
34
  "publishConfig": {
35
35
  "access": "public"