reneco-hierarchized-picker 0.4.3-beta.14 → 0.4.3-beta.16

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.
@@ -18619,19 +18619,6 @@ function handleFocusEvent(component, type) {
18619
18619
  component.showTree('hide');
18620
18620
  }
18621
18621
  }
18622
- function manageFocusOut(component, event) {
18623
- const relatedTarget = event.relatedTarget;
18624
- if (!isInsidePicker(component, relatedTarget)) {
18625
- setTimeout(() => {
18626
- if (!isInsidePicker(component, document.activeElement)) {
18627
- handleFocusEvent(component, 'hide');
18628
- }
18629
- }, 100);
18630
- }
18631
- else {
18632
- handleFocusEvent(component, 'search');
18633
- }
18634
- }
18635
18622
  function clickPickerModalArea(component, _event) {
18636
18623
  if (component.pickerClass === 'fieldError') {
18637
18624
  component.showTree('hide');
@@ -18648,7 +18635,6 @@ function focusInSearchEvent(component) {
18648
18635
  handleFocusEvent(component, 'search');
18649
18636
  }
18650
18637
  function focusOutSearchEvent(component, event) {
18651
- manageFocusOut(component, event);
18652
18638
  }
18653
18639
 
18654
18640
  let focusedNodeIndex = 0;
@@ -18742,7 +18728,7 @@ function setupKeyboardNavigation(component, optionsManager, navigateInTree) {
18742
18728
  });
18743
18729
  }
18744
18730
 
18745
- const hierarchizedPickerCss = "reneco-hierarchized-picker .hierarchized-picker-raw-tree-area{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .loader{position:absolute;z-index:1;min-width:100%;min-height:100%;background:#FFFFFF99;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:10px;-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .loader .loader-inner{background:#FFF;padding:20px;-webkit-box-shadow:0 0 5px #000;box-shadow:0 0 5px #000;-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .loader:not(.loading){display:none}reneco-hierarchized-picker .scrollable{overflow-y:auto;position:relative}reneco-hierarchized-picker .treejs{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:var(--hpicker-theme-typography-tree-font-size, 14px) !important;font-weight:var(--hpicker-theme-typography-tree-font-weight, 400) !important}reneco-hierarchized-picker .treejs *:after,reneco-hierarchized-picker .treejs *:before{-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .treejs>.treejs-node{padding-left:0}reneco-hierarchized-picker .treejs .treejs-nodes{list-style:none;padding-left:20px;overflow:hidden;-webkit-transition:height 150ms ease-out, opacity 150ms ease-out;-o-transition:height 150ms ease-out, opacity 150ms ease-out;transition:height 150ms ease-out, opacity 150ms ease-out}reneco-hierarchized-picker .treejs .treejs-node{cursor:pointer;overflow:hidden;position:relative}reneco-hierarchized-picker .treejs .treejs-node.treejs-placeholder{padding-left:20px}reneco-hierarchized-picker .treejs .treejs-switcher{display:inline-block;vertical-align:middle;width:20px;height:20px;cursor:pointer;position:relative;-webkit-transition:-webkit-transform 150ms ease-out;transition:-webkit-transform 150ms ease-out;-o-transition:transform 150ms ease-out;transition:transform 150ms ease-out;transition:transform 150ms ease-out, -webkit-transform 150ms ease-out}reneco-hierarchized-picker .treejs .treejs-switcher:before{position:absolute;top:8px;left:6px;display:block;content:' ';border:4px solid transparent;border-top:4px solid rgba(0, 0, 0, 0.4);-webkit-transition:border-color 150ms;-o-transition:border-color 150ms;transition:border-color 150ms}reneco-hierarchized-picker .treejs .treejs-switcher:hover:before{border-top:4px solid var(--hpicker-theme-palette-font-color)}reneco-hierarchized-picker .treejs-node__checked>.treejs-switcher:before{border-top:4px solid var(--hpicker-theme-palette-primary-contrastText) !important}reneco-hierarchized-picker .treejs-node__focused{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}reneco-hierarchized-picker .treejs .treejs-node__close>.treejs-switcher{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}reneco-hierarchized-picker .treejs .treejs-node__close>.treejs-nodes{height:0}reneco-hierarchized-picker .treejs .treejs-checkbox{display:inline-block;vertical-align:middle;width:20px;height:20px;cursor:pointer;position:relative}reneco-hierarchized-picker .treejs .treejs-checkbox:before{-webkit-transition:all 0.3s;-o-transition:all 0.3s;transition:all 0.3s;cursor:pointer;position:absolute;top:2px;content:' ';display:block;width:16px;height:16px;border:1px solid #d9d9d9;border-radius:2px}reneco-hierarchized-picker .treejs .treejs-checkbox:hover:before{-webkit-box-shadow:0 0 2px 1px #1890ff;box-shadow:0 0 2px 1px #1890ff}reneco-hierarchized-picker .treejs .treejs-node__checked>.treejs-checkbox:before{background-color:#1890ff;border-color:#1890ff}reneco-hierarchized-picker .treejs .treejs-node__checked>.treejs-checkbox:after{position:absolute;content:' ';display:block;top:4px;left:5px;width:5px;height:9px;border:2px solid #fff;border-top:none;border-left:none;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}reneco-hierarchized-picker .treejs .treejs-node__halfchecked{background-color:var(--hpicker-theme-palette-background-default, var(--mui-palette-background-default, #e8a86c))}reneco-hierarchized-picker .treejs .treejs-node__halfchecked>.treejs-checkbox:before{background-color:#1890ff;border-color:#1890ff}reneco-hierarchized-picker .treejs .treejs-node__halfchecked>.treejs-checkbox:after{position:absolute;content:' ';display:block;top:9px;left:3px;width:10px;height:2px;background-color:#fff}reneco-hierarchized-picker .treejs .treejs-node__disabled{cursor:not-allowed;color:rgba(0, 0, 0, 0.25)}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-checkbox{cursor:not-allowed}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-checkbox:before{cursor:not-allowed;border-color:#d9d9d9 !important;background-color:#f5f5f5 !important}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-checkbox:hover:before{-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-node__checked>.treejs-checkbox:after{border-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-node__halfchecked>.treejs-checkbox:after{background-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-node__disabled.treejs-node__checked>.treejs-checkbox:after{border-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-node__disabled.treejs-node__halfchecked>.treejs-checkbox:after{background-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-label{vertical-align:middle}reneco-hierarchized-picker .treejs .treejs-node__deprecated>.treejs-label{text-decoration:line-through}reneco-hierarchized-picker .treejs .treejs-node__desaturated>.treejs-label{opacity:.5}reneco-hierarchized-picker .treejs .treejs-node__searchmatch>.treejs-label{font-weight:bolder}reneco-hierarchized-picker .treejs .dragging{background:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, #e8a86c));display:inline;opacity:.9;padding:11px 0px;display:block}reneco-hierarchized-picker .treejs .dragover{background:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, #e8a86c))}reneco-hierarchized-picker .treejs .dragover-over::after{content:\"\";display:block;width:2px;height:100%;position:absolute;top:0;left:0;background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, #d58433))}reneco-hierarchized-picker .treejs .dragover-before::after{content:\"\";display:block;height:2px;width:100%;position:absolute;top:0;left:0;background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, #d58433))}reneco-hierarchized-picker .treejs .dragover-after::after{content:\"\";display:block;height:2px;width:100%;position:absolute;bottom:0;left:0;background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, #d58433))}reneco-hierarchized-picker .fieldError{color:red !important}reneco-hierarchized-picker .hidden{display:none;opacity:0}reneco-hierarchized-picker ul.treejs-nodes:first-child{padding-left:0px !important;margin-top:0px !important;margin-left:0px !important;background-color:var(--hpicker-theme-palette-background-dark)}reneco-hierarchized-picker ul.treejs-nodes:not(:first-child){margin:0 !important;padding-left:15px !important;background-color:var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF)))}reneco-hierarchized-picker ul.treejs-nodes{margin-left:15px !important;padding-left:0px !important}reneco-hierarchized-picker .hierarchized-picker-raw-tree li.treejs-node ul.treejs-nodes{margin:11px 0 0 0 !important}reneco-hierarchized-picker .hierarchized-picker-raw-tree li.treejs-node__close ul.treejs-nodes{margin:0 !important}reneco-hierarchized-picker li.treejs-node__close{background-color:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, var(--ion-color-light, #FAFAFA)))}reneco-hierarchized-picker li:not(.treejs-node__close){background-color:var(--hpicker-theme-palette-background-default, var(--mui-palette-background-default, #e8a86c));padding-bottom:0px !important}reneco-hierarchized-picker li:not(.treejs-node__close) ul.treejs-nodes li{margin-top:2px !important}reneco-hierarchized-picker ul li:last-child{margin-bottom:0px !important}reneco-hierarchized-picker li.treejs-node__checked{background-color:var(--hpicker-theme-palette-primary-light) !important;color:var(--hpicker-theme-palette-primary-contrastText, var(--mui-palette-primary-ContrastText, var(--ion-color-primary-contrast, #000)))!important}reneco-hierarchized-picker li.treejs-node{padding:2px 0px;margin-bottom:2px}reneco-hierarchized-picker .treejs-node.readonly_node{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:darkgrey}reneco-hierarchized-picker .treejs-node:not(.readonly_node){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, black))}reneco-hierarchized-picker .hierarchized-picker-container{position:relative;width:100%}reneco-hierarchized-picker .hierarchized-picker-input-area{background-color:transparent !important;display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}reneco-hierarchized-picker .hierarchized-picker-input-area .input-wrapper{padding-left:10px !important}reneco-hierarchized-picker .hierarchized-picker-input{-ms-flex:2;flex:2}reneco-hierarchized-picker .hierarchized-picker-input input{width:100%}reneco-hierarchized-picker .hierarchized-picker-input.readonly{pointer-events:none;cursor:initial}reneco-hierarchized-picker .hierarchized-picker-label{position:stacked;margin-left:5px}reneco-hierarchized-picker .hierarchized-picker-tree-area{padding-top:10px}reneco-hierarchized-picker .hierarchized-picker-modal-area{position:absolute;width:100%;background-color:var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF))) !important;z-index:10;overflow:scroll;top:20px;min-height:100px;max-height:var(--hpicker-theme-modal-height, \"200px\") !important;-webkit-box-shadow:0 0px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 0px 15px 0 rgba(0, 0, 0, 0.2);border-radius:4px;margin-right:0px !important}reneco-hierarchized-picker .hierarchized-picker-modal-area.display-modale-top{bottom:30px !important;top:unset !important}reneco-hierarchized-picker .hierarchized-picker-modal{padding:0px 15px}reneco-hierarchized-picker .hierarchized-picker{display:-ms-flexbox;display:flex;width:100%;font-family:'Roboto', sans-serif}reneco-hierarchized-picker .hierarchized-picker-spinner{margin:35px 0px 0px 145px}reneco-hierarchized-picker .reneco:before{position:relative;top:1px}reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco:hover{cursor:pointer}reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco-close{color:var(--ion-color-danger, red) !important;padding-left:10px}reneco-hierarchized-picker .treejs .treejs-switcher:before{border-top:4px solid var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, var(--ion-color-dark-shade, #121212)))}reneco-hierarchized-picker .treejs .treejs-checkbox:before{-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker .treejs .treejs-node__checked>.treejs-checkbox:before,reneco-hierarchized-picker .treejs .treejs-node__halfchecked>.treejs-checkbox:before{background-color:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, var(--ion-color-primary, #d58433))) !important;border-color:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, var(--ion-color-primary, #d58433))) !important;-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker #autocomplete-results-area{position:absolute;margin-top:48px;background-color:white;left:15px;z-index:10;padding:0px 5px;max-width:340px;max-height:110px;overflow:auto}reneco-hierarchized-picker #autocomplete-results-area li{list-style-type:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;margin:1px}reneco-hierarchized-picker .hierarchized-picker-raw-tree-area li.treejs-node{padding:11px 0px;display:block}reneco-hierarchized-picker input[title]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}reneco-hierarchized-picker input{background-color:var(--hpicker-theme-palette-input-background-color, #eeeeee);border-style:var(--hpicker-theme-palette-input-border-style, solid);color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, black))}reneco-hierarchized-picker input:focus-visible{outline:unset !important;outline-color:unset !important;outline-style:unset !important}.hierarchized-picker-raw-tree-area.readonly li.treejs-node .treejs-switcher{pointer-events:all}::-webkit-scrollbar-thumb{background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, var(--ion-color-primary, #d58433)));width:8px;margin:5px;border-radius:5px}::-webkit-scrollbar{background:var(--ion-color-medium-tint, #E0E0E0);width:8px;height:8px;margin:5px;cursor:pointer;border-radius:5px}::-webkit-scrollbar-corner{background-color:var(--ion-color-light-tint, #FFF)}[class$=\"-dark\"] reneco-hierarchized-picker li.treejs-node__close{background-color:var(--ion-color-dark-tint, #424242);color:var(--ion-color-dark-contrast, #fff)}[class$=\"-dark\"] reneco-hierarchized-picker li:not(.treejs-node__close){background-color:var(--ion-color-dark, #212121);color:var(--ion-color-dark-contrast, #fff)}[class$=\"-dark\"] reneco-hierarchized-picker li.treejs-node__checked{background-color:var(--ion-color-background, var(--hpicker-theme-palette-background-default, rgba(221, 169, 37, 0.18)));color:var(--ion-color-primary-contrast, #fff) !important}[class$=\"-dark\"] reneco-hierarchized-picker .treejs-switcher:before{border-top-color:var(--ion-color-dark-contrast, #fff) !important}[class$=\"-dark\"] reneco-hierarchized-picker li.treejs-node__checked .treejs-switcher:before{color:var(--ion-color-light-contrast, #111111) !important}[class$=\"-dark\"] reneco-hierarchized-picker ul.treejs-nodes:not(:first-child){background-color:var(--ion-color-light-contrast, #111111) !important}";
18731
+ const hierarchizedPickerCss = "reneco-hierarchized-picker .hierarchized-picker-raw-tree-area{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .loader{color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, black)) !important;position:absolute;z-index:1;min-width:100%;min-height:100%;background:#FFFFFF99;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:10px;-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .loader .loader-inner{background:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, var(--ion-color-light, #FAFAFA))) !important;padding:20px;-webkit-box-shadow:0 0 5px #000;box-shadow:0 0 5px #000;-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .loader:not(.loading){display:none}reneco-hierarchized-picker .scrollable{overflow-y:auto;position:relative}reneco-hierarchized-picker .treejs{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:var(--hpicker-theme-typography-tree-font-size, 14px) !important;font-weight:var(--hpicker-theme-typography-tree-font-weight, 400) !important}reneco-hierarchized-picker .treejs *:after,reneco-hierarchized-picker .treejs *:before{-webkit-box-sizing:border-box;box-sizing:border-box}reneco-hierarchized-picker .treejs>.treejs-node{padding-left:0}reneco-hierarchized-picker .treejs .treejs-nodes{list-style:none;padding-left:20px;overflow:hidden;-webkit-transition:height 150ms ease-out, opacity 150ms ease-out;-o-transition:height 150ms ease-out, opacity 150ms ease-out;transition:height 150ms ease-out, opacity 150ms ease-out}reneco-hierarchized-picker .treejs .treejs-node{cursor:pointer;overflow:hidden;position:relative}reneco-hierarchized-picker .treejs .treejs-node.treejs-placeholder{padding-left:20px}reneco-hierarchized-picker .treejs .treejs-switcher{display:inline-block;vertical-align:middle;width:20px;height:20px;cursor:pointer;position:relative;-webkit-transition:-webkit-transform 150ms ease-out;transition:-webkit-transform 150ms ease-out;-o-transition:transform 150ms ease-out;transition:transform 150ms ease-out;transition:transform 150ms ease-out, -webkit-transform 150ms ease-out}reneco-hierarchized-picker .treejs .treejs-switcher:before{position:absolute;top:8px;left:6px;display:block;content:' ';border:4px solid transparent;border-top:4px solid rgba(0, 0, 0, 0.4);-webkit-transition:border-color 150ms;-o-transition:border-color 150ms;transition:border-color 150ms}reneco-hierarchized-picker .treejs .treejs-switcher:hover:before{border-top:4px solid var(--hpicker-theme-palette-font-color)}reneco-hierarchized-picker .treejs-node__checked>.treejs-switcher:before{border-top:4px solid var(--hpicker-theme-palette-primary-contrastText) !important}reneco-hierarchized-picker .treejs-node__focused{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}reneco-hierarchized-picker .treejs .treejs-node__close>.treejs-switcher{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}reneco-hierarchized-picker .treejs .treejs-node__close>.treejs-nodes{height:0}reneco-hierarchized-picker .treejs .treejs-checkbox{display:inline-block;vertical-align:middle;width:20px;height:20px;cursor:pointer;position:relative}reneco-hierarchized-picker .treejs .treejs-checkbox:before{-webkit-transition:all 0.3s;-o-transition:all 0.3s;transition:all 0.3s;cursor:pointer;position:absolute;top:2px;content:' ';display:block;width:16px;height:16px;border:1px solid #d9d9d9;border-radius:2px}reneco-hierarchized-picker .treejs .treejs-checkbox:hover:before{-webkit-box-shadow:0 0 2px 1px #1890ff;box-shadow:0 0 2px 1px #1890ff}reneco-hierarchized-picker .treejs .treejs-node__checked>.treejs-checkbox:before{background-color:#1890ff;border-color:#1890ff}reneco-hierarchized-picker .treejs .treejs-node__checked>.treejs-checkbox:after{position:absolute;content:' ';display:block;top:4px;left:5px;width:5px;height:9px;border:2px solid #fff;border-top:none;border-left:none;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}reneco-hierarchized-picker .treejs .treejs-node__halfchecked{background-color:var(--hpicker-theme-palette-background-default, var(--mui-palette-background-default, #e8a86c))}reneco-hierarchized-picker .treejs .treejs-node__halfchecked>.treejs-checkbox:before{background-color:#1890ff;border-color:#1890ff}reneco-hierarchized-picker .treejs .treejs-node__halfchecked>.treejs-checkbox:after{position:absolute;content:' ';display:block;top:9px;left:3px;width:10px;height:2px;background-color:#fff}reneco-hierarchized-picker .treejs .treejs-node__disabled{cursor:not-allowed;color:rgba(0, 0, 0, 0.25)}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-checkbox{cursor:not-allowed}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-checkbox:before{cursor:not-allowed;border-color:#d9d9d9 !important;background-color:#f5f5f5 !important}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-checkbox:hover:before{-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-node__checked>.treejs-checkbox:after{border-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-node__disabled .treejs-node__halfchecked>.treejs-checkbox:after{background-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-node__disabled.treejs-node__checked>.treejs-checkbox:after{border-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-node__disabled.treejs-node__halfchecked>.treejs-checkbox:after{background-color:#d9d9d9}reneco-hierarchized-picker .treejs .treejs-label{vertical-align:middle}reneco-hierarchized-picker .treejs .treejs-node__deprecated>.treejs-label{text-decoration:line-through}reneco-hierarchized-picker .treejs .treejs-node__desaturated>.treejs-label{opacity:.5}reneco-hierarchized-picker .treejs .treejs-node__searchmatch>.treejs-label{font-weight:bolder}reneco-hierarchized-picker .treejs .dragging{background:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, #e8a86c));display:inline;opacity:.9;padding:11px 0px;display:block}reneco-hierarchized-picker .treejs .dragover{background:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, #e8a86c))}reneco-hierarchized-picker .treejs .dragover-over::after{content:\"\";display:block;width:2px;height:100%;position:absolute;top:0;left:0;background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, #d58433))}reneco-hierarchized-picker .treejs .dragover-before::after{content:\"\";display:block;height:2px;width:100%;position:absolute;top:0;left:0;background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, #d58433))}reneco-hierarchized-picker .treejs .dragover-after::after{content:\"\";display:block;height:2px;width:100%;position:absolute;bottom:0;left:0;background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, #d58433))}reneco-hierarchized-picker .fieldError{color:red !important}reneco-hierarchized-picker .hidden{display:none;opacity:0}reneco-hierarchized-picker ul.treejs-nodes:first-child{padding-left:0px !important;margin-top:0px !important;margin-left:0px !important;background-color:var(--hpicker-theme-palette-background-dark)}reneco-hierarchized-picker ul.treejs-nodes:not(:first-child){margin:0 !important;padding-left:15px !important;background-color:var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF)))}reneco-hierarchized-picker ul.treejs-nodes{margin-left:15px !important;padding-left:0px !important}reneco-hierarchized-picker .hierarchized-picker-raw-tree li.treejs-node ul.treejs-nodes{margin:11px 0 0 0 !important}reneco-hierarchized-picker .hierarchized-picker-raw-tree li.treejs-node__close ul.treejs-nodes{margin:0 !important}reneco-hierarchized-picker li.treejs-node__close{background-color:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, var(--ion-color-light, #FAFAFA)))}reneco-hierarchized-picker li:not(.treejs-node__close){background-color:var(--hpicker-theme-palette-background-default, var(--mui-palette-background-default, #e8a86c));padding-bottom:0px !important}reneco-hierarchized-picker li:not(.treejs-node__close) ul.treejs-nodes li{margin-top:2px !important}reneco-hierarchized-picker ul li:last-child{margin-bottom:0px !important}reneco-hierarchized-picker li.treejs-node__checked{background-color:var(--hpicker-theme-palette-primary-light) !important;color:var(--hpicker-theme-palette-primary-contrastText, var(--mui-palette-primary-ContrastText, var(--ion-color-primary-contrast, #000)))!important}reneco-hierarchized-picker li.treejs-node{padding:2px 0px;margin-bottom:2px}reneco-hierarchized-picker .treejs-node.readonly_node{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:darkgrey}reneco-hierarchized-picker .treejs-node:not(.readonly_node){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, black))}reneco-hierarchized-picker .hierarchized-picker-container{position:relative;width:100%}reneco-hierarchized-picker .hierarchized-picker-input-area{background-color:transparent !important;display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}reneco-hierarchized-picker .hierarchized-picker-input-area .input-wrapper{padding-left:10px !important}reneco-hierarchized-picker .hierarchized-picker-input{-ms-flex:2;flex:2}reneco-hierarchized-picker .hierarchized-picker-input input{width:100%}reneco-hierarchized-picker .hierarchized-picker-input.readonly{pointer-events:none;cursor:initial}reneco-hierarchized-picker .hierarchized-picker-label{position:stacked;margin-left:5px}reneco-hierarchized-picker .hierarchized-picker-tree-area{padding-top:10px}reneco-hierarchized-picker .hierarchized-picker-modal-area{position:absolute;width:100%;background-color:var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF))) !important;z-index:10;overflow:scroll;top:20px;min-height:100px;max-height:var(--hpicker-theme-modal-height, \"200px\") !important;-webkit-box-shadow:0 0px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 0px 15px 0 rgba(0, 0, 0, 0.2);border-radius:4px;margin-right:0px !important}reneco-hierarchized-picker .hierarchized-picker-modal-area.display-modale-top{bottom:30px !important;top:unset !important}reneco-hierarchized-picker .hierarchized-picker-modal{padding:0px 15px}reneco-hierarchized-picker .hierarchized-picker{display:-ms-flexbox;display:flex;width:100%;font-family:'Roboto', sans-serif}reneco-hierarchized-picker .hierarchized-picker-spinner{margin:35px 0px 0px 145px}reneco-hierarchized-picker .reneco:before{position:relative;top:1px}reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco:hover{cursor:pointer}reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco-close{color:var(--ion-color-danger, red) !important;padding-left:10px}reneco-hierarchized-picker .treejs .treejs-switcher:before{border-top:4px solid var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, var(--ion-color-dark-shade, #121212)))}reneco-hierarchized-picker .treejs .treejs-checkbox:before{-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker .treejs .treejs-node__checked>.treejs-checkbox:before,reneco-hierarchized-picker .treejs .treejs-node__halfchecked>.treejs-checkbox:before{background-color:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, var(--ion-color-primary, #d58433))) !important;border-color:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, var(--ion-color-primary, #d58433))) !important;-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker #autocomplete-results-area{position:absolute;margin-top:48px;background-color:white;left:15px;z-index:10;padding:0px 5px;max-width:340px;max-height:110px;overflow:auto}reneco-hierarchized-picker #autocomplete-results-area li{list-style-type:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;margin:1px}reneco-hierarchized-picker .hierarchized-picker-raw-tree-area li.treejs-node{padding:11px 0px;display:block}reneco-hierarchized-picker input[title]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}reneco-hierarchized-picker input{background-color:var(--hpicker-theme-palette-input-background-color, #eeeeee);border-style:var(--hpicker-theme-palette-input-border-style, solid);color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, black))}reneco-hierarchized-picker input:focus-visible{outline:unset !important;outline-color:unset !important;outline-style:unset !important}.hierarchized-picker-raw-tree-area.readonly li.treejs-node .treejs-switcher{pointer-events:all}::-webkit-scrollbar-thumb{background:var(--hpicker-theme-palette-primary-main, var(--mui-palette-primary-main, var(--ion-color-primary, #d58433)));width:8px;margin:5px;border-radius:5px}::-webkit-scrollbar{background:var(--ion-color-medium-tint, #E0E0E0);width:8px;height:8px;margin:5px;cursor:pointer;border-radius:5px}::-webkit-scrollbar-corner{background-color:var(--ion-color-light-tint, #FFF)}[class$=\"-dark\"] reneco-hierarchized-picker li.treejs-node__close{background-color:var(--ion-color-dark-tint, #424242);color:var(--ion-color-dark-contrast, #fff)}[class$=\"-dark\"] reneco-hierarchized-picker li:not(.treejs-node__close){background-color:var(--ion-color-dark, #212121);color:var(--ion-color-dark-contrast, #fff)}[class$=\"-dark\"] reneco-hierarchized-picker li.treejs-node__checked{background-color:var(--ion-color-background, var(--hpicker-theme-palette-background-default, rgba(221, 169, 37, 0.18)));color:var(--ion-color-primary-contrast, #fff) !important}[class$=\"-dark\"] reneco-hierarchized-picker .treejs-switcher:before{border-top-color:var(--ion-color-dark-contrast, #fff) !important}[class$=\"-dark\"] reneco-hierarchized-picker li.treejs-node__checked .treejs-switcher:before{color:var(--ion-color-light-contrast, #111111) !important}[class$=\"-dark\"] reneco-hierarchized-picker ul.treejs-nodes:not(:first-child){background-color:var(--ion-color-light-contrast, #111111) !important}";
18746
18732
 
18747
18733
  const HierarchizedPickerComponent = class {
18748
18734
  /**
@@ -18845,6 +18831,7 @@ const HierarchizedPickerComponent = class {
18845
18831
  newValue = JSON.parse(newValue);
18846
18832
  if (typeof oldValue == 'string')
18847
18833
  oldValue = JSON.parse(oldValue);
18834
+ this.value = [];
18848
18835
  this.optionsManager.updateOptions(newValue);
18849
18836
  this.setDisplayedValue(this.value);
18850
18837
  const originOrNodeIdAreDifferent = !oldValue || (newValue.origin != oldValue.origin || newValue.options.StartNodeID != oldValue.options.StartNodeID);
@@ -18939,27 +18926,30 @@ const HierarchizedPickerComponent = class {
18939
18926
  this.getShortenedFullpath = (realFullpath) => {
18940
18927
  var _a, _b, _c, _d;
18941
18928
  let toret = realFullpath;
18942
- try {
18943
- const property_nodeid = (this.optionsManager.getOptions().origin == 'classification' ? "startNode" : "StartNodeID");
18944
- const property_value = this.optionsManager.getOptions().options[property_nodeid];
18945
- if (property_value in ["0", 0])
18946
- return toret;
18947
- if (isNumeric(property_value)) {
18948
- if (this.optionsManager.getOptions().origin == 'classification') {
18949
- const { Translations, Properties } = this.rawDataManager.getData();
18950
- const currentLanguage = this.optionsManager.getOptions().language;
18951
- toret = ((_b = (_a = Translations[currentLanguage]) === null || _a === void 0 ? void 0 : _a.translated_name) !== null && _b !== void 0 ? _b : Properties === null || Properties === void 0 ? void 0 : Properties.System_Name) + realFullpath.replace(((_d = (_c = Translations[currentLanguage]) === null || _c === void 0 ? void 0 : _c.translated_fullpath) !== null && _d !== void 0 ? _d : Properties === null || Properties === void 0 ? void 0 : Properties.System_Fullpath), "");
18952
- }
18953
- else {
18954
- const { fullpath, fullpathTranslated, title, valueTranslated } = this.rawDataManager.getData();
18955
- toret = (valueTranslated !== null && valueTranslated !== void 0 ? valueTranslated : title) + realFullpath.replace((fullpathTranslated !== null && fullpathTranslated !== void 0 ? fullpathTranslated : fullpath), "");
18929
+ const rdmdata = this.rawDataManager.getData();
18930
+ if (rdmdata) {
18931
+ try {
18932
+ const property_nodeid = (this.optionsManager.getOptions().origin == 'classification' ? "startNode" : "StartNodeID");
18933
+ const property_value = this.optionsManager.getOptions().options[property_nodeid];
18934
+ if (property_value in ["0", 0])
18935
+ return toret;
18936
+ if (isNumeric(property_value)) {
18937
+ if (this.optionsManager.getOptions().origin == 'classification') {
18938
+ const { Translations, Properties } = rdmdata;
18939
+ const currentLanguage = this.optionsManager.getOptions().language;
18940
+ toret = ((_b = (_a = Translations[currentLanguage]) === null || _a === void 0 ? void 0 : _a.translated_name) !== null && _b !== void 0 ? _b : Properties === null || Properties === void 0 ? void 0 : Properties.System_Name) + realFullpath.replace(((_d = (_c = Translations[currentLanguage]) === null || _c === void 0 ? void 0 : _c.translated_fullpath) !== null && _d !== void 0 ? _d : Properties === null || Properties === void 0 ? void 0 : Properties.System_Fullpath), "");
18941
+ }
18942
+ else {
18943
+ const { fullpath, fullpathTranslated, title, valueTranslated } = rdmdata;
18944
+ toret = (valueTranslated !== null && valueTranslated !== void 0 ? valueTranslated : title) + realFullpath.replace((fullpathTranslated !== null && fullpathTranslated !== void 0 ? fullpathTranslated : fullpath), "");
18945
+ }
18956
18946
  }
18947
+ else
18948
+ this.errorToLog = "Error in getFullpath : startnode is not number";
18949
+ }
18950
+ catch (error) {
18951
+ this.errorToLog = "Error in getFullpath " + error.toString();
18957
18952
  }
18958
- else
18959
- this.errorToLog = "Error in getFullpath : startnode is not number";
18960
- }
18961
- catch (error) {
18962
- this.errorToLog = "Error in getFullpath " + error.toString();
18963
18953
  }
18964
18954
  return toret;
18965
18955
  };
@@ -19237,14 +19227,14 @@ const HierarchizedPickerComponent = class {
19237
19227
  getContextualApiURL(init = false) {
19238
19228
  const { options, url } = this.optionsManager.getOptions();
19239
19229
  if (init && options.Reach) {
19240
- // Use a base URL for relative paths
19241
- const base = window.location.origin; // fallback for relative URLs
19230
+ const base = window.location.origin;
19242
19231
  const parsedUrl = new URL(url, base);
19243
- const pathSegments = parsedUrl.pathname.split('/');
19244
- let dynamicType = pathSegments[pathSegments.length - 2];
19245
- if (['thesaurus', 'position'].indexOf(dynamicType) == -1)
19246
- dynamicType = pathSegments[pathSegments.length - 1];
19247
- const newPathname = `/api/v1/classification/reach/${dynamicType}`;
19232
+ const pathSegments = parsedUrl.pathname.split('/').filter(Boolean);
19233
+ const idx = pathSegments.indexOf("getTree");
19234
+ if (idx !== -1) {
19235
+ pathSegments[idx] = "reach";
19236
+ }
19237
+ const newPathname = "/" + pathSegments.join("/");
19248
19238
  return `${parsedUrl.origin}${newPathname}`;
19249
19239
  }
19250
19240
  return url;
@@ -19451,7 +19441,7 @@ const HierarchizedPickerComponent = class {
19451
19441
  (this.loadedTreeJs.liElementsById[id] && this.loadedTreeJs.liElementsById[id].classList.value && this.loadedTreeJs.liElementsById[id].classList.value.indexOf('readonly_node') != -1)) {
19452
19442
  return;
19453
19443
  }
19454
- if (treeToUpdate.getValues().indexOf(id.toString()) != -1)
19444
+ if (!userClick && treeToUpdate.getValues().indexOf(id.toString()) != -1)
19455
19445
  return;
19456
19446
  this.ignoreOptionsChanges = true;
19457
19447
  // Override of treejs normal workaround =>> DONT EDIT IT!
@@ -19489,13 +19479,13 @@ const HierarchizedPickerComponent = class {
19489
19479
  * This method display the current selected node to the user by expanding all it's parent nodes and scrolling inside the tree
19490
19480
  */
19491
19481
  async showSelectedNodes(addDelay = false) {
19492
- if (this.optionsManager.getOptions().multiple) {
19493
- console.warn('You are not allowed to scroll to selected nodes in multiple mode');
19494
- return;
19495
- }
19482
+ // if (this.optionsManager.getOptions().multiple) {
19483
+ // console.warn('You are not allowed to scroll to selected nodes in multiple mode');
19484
+ // return;
19485
+ // }
19496
19486
  const scrollToNode = () => {
19497
19487
  let scrollToValue = 0;
19498
- let removeClosedAndLookUp = (element) => {
19488
+ let removeClosedAndLookUp = (element, editScroll = false) => {
19499
19489
  var _a, _b, _c, _d;
19500
19490
  const nodeId = element === null || element === void 0 ? void 0 : element.nodeId;
19501
19491
  if (!element || !nodeId) {
@@ -19505,18 +19495,20 @@ const HierarchizedPickerComponent = class {
19505
19495
  if ((_b = (_a = node === null || node === void 0 ? void 0 : node.children) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.id) {
19506
19496
  (_c = element.classList) === null || _c === void 0 ? void 0 : _c.remove('treejs-node__close');
19507
19497
  }
19508
- scrollToValue += element.offsetTop;
19498
+ if (editScroll) {
19499
+ scrollToValue += element.offsetTop;
19500
+ }
19509
19501
  const parent = (_d = element.parentNode) === null || _d === void 0 ? void 0 : _d.closest('.treejs-node');
19510
19502
  if (parent) {
19511
- removeClosedAndLookUp(parent);
19503
+ removeClosedAndLookUp(parent, editScroll);
19512
19504
  }
19513
19505
  };
19514
19506
  try {
19515
19507
  const checkeds = document.querySelectorAll('#tree-area-' + this.componentID + ' .treejs-node__checked');
19516
- checkeds.forEach((item) => removeClosedAndLookUp(item));
19508
+ checkeds.forEach((item) => removeClosedAndLookUp(item, scrollToValue == 0));
19517
19509
  }
19518
19510
  catch (err) {
19519
- // console.error("Error in showSelectedNodes", err);
19511
+ console.error("Error in showSelectedNodes", err);
19520
19512
  }
19521
19513
  if (scrollToValue && this.scrollable) {
19522
19514
  this.scrollable.scrollTop = scrollToValue;
@@ -19583,9 +19575,12 @@ const HierarchizedPickerComponent = class {
19583
19575
  return item.nodeid == node.id;
19584
19576
  });
19585
19577
  // If the passed node already exists in the array of values, remove it
19586
- if (userClick && result > -1) {
19587
- this.value.splice(result, 1);
19588
- } // Else, add the node to the array of values
19578
+ if (result > -1) {
19579
+ if (userClick)
19580
+ this.value.splice(result, 1);
19581
+ else
19582
+ return;
19583
+ }
19589
19584
  else {
19590
19585
  if (this.optionsManager.getOptions().multiple) {
19591
19586
  this.value = [
@@ -19614,10 +19609,11 @@ const HierarchizedPickerComponent = class {
19614
19609
  setDisplayedValue(value = null) {
19615
19610
  if (!value)
19616
19611
  value = this.value;
19617
- this.displayedValue = value.map(item => {
19612
+ const toDisplay = value.map(item => {
19618
19613
  var _a, _b;
19619
19614
  return (_b = (this.optionsManager.getOptions().isFullpath ? this.getShortenedFullpath((_a = item.fullpathTranslated) !== null && _a !== void 0 ? _a : item.fullpath) : item.shortpathTranslated)) !== null && _b !== void 0 ? _b : `Node ${item.nodeid}`;
19620
19615
  }).join(';');
19616
+ this.displayedValue = toDisplay;
19621
19617
  }
19622
19618
  // Search a value in the tree and triggers a search when necessary
19623
19619
  search(searched) {
@@ -19684,6 +19680,7 @@ const HierarchizedPickerComponent = class {
19684
19680
  if (init) {
19685
19681
  this.formatDefaultValue();
19686
19682
  this.showSelectedNodes();
19683
+ this.checkFields(this.value);
19687
19684
  }
19688
19685
  })
19689
19686
  .catch(error => {
@@ -19721,7 +19718,7 @@ const HierarchizedPickerComponent = class {
19721
19718
  let enrichedValues = [];
19722
19719
  if (values) {
19723
19720
  values.forEach(element => {
19724
- var _a, _b;
19721
+ var _a, _b, _c;
19725
19722
  let intNodeid = element.nodeid || element.ID || element.key || undefined;
19726
19723
  if (typeof intNodeid === 'string' && isNumeric(intNodeid)) {
19727
19724
  intNodeid = parseInt(intNodeid);
@@ -19731,7 +19728,8 @@ const HierarchizedPickerComponent = class {
19731
19728
  enrichedValues.push({
19732
19729
  nodeid: intNodeid,
19733
19730
  shortpathTranslated: (_a = treeNode.text) !== null && _a !== void 0 ? _a : `Node ${intNodeid}`,
19734
- fullpathTranslated: (_b = treeNode.fullpath) !== null && _b !== void 0 ? _b : null,
19731
+ fullpathTranslated: (_b = treeNode.fullpathTranslated) !== null && _b !== void 0 ? _b : null,
19732
+ fullpath: (_c = treeNode.fullpath) !== null && _c !== void 0 ? _c : null,
19735
19733
  hasChildren: treeNode.children && treeNode.children.length > 0
19736
19734
  });
19737
19735
  this.setNodeAsSelected(intNodeid, this.loadedTreeJs, false);
@@ -19749,8 +19747,19 @@ const HierarchizedPickerComponent = class {
19749
19747
  formatDefaultValue() {
19750
19748
  let found = 0;
19751
19749
  let that = this;
19750
+ let fieldsToCheck = [];
19751
+ function addToFieldsToCheck(item) {
19752
+ if (Array.isArray(item)) {
19753
+ item.forEach(el => addToFieldsToCheck(el));
19754
+ }
19755
+ else {
19756
+ const exists = fieldsToCheck.some(el => (el.nodeid || el.ID) == (item.nodeid || item.ID));
19757
+ if (!exists) {
19758
+ fieldsToCheck.push(item);
19759
+ }
19760
+ }
19761
+ }
19752
19762
  let recursive = function (children) {
19753
- //158424
19754
19763
  children.forEach(element => {
19755
19764
  that.theOptions.defaultValue.forEach(dfValue => {
19756
19765
  if (typeof dfValue == 'string' && isNumeric(dfValue)) {
@@ -19760,7 +19769,7 @@ const HierarchizedPickerComponent = class {
19760
19769
  if ((typeof dfValue == 'string' && getPropertyFromNode(element, 'Properties').FullPath == dfValue) ||
19761
19770
  (typeof dfValue == 'number' && getPropertyFromNode(element, 'ID') == dfValue)) {
19762
19771
  element.nodeid = element.id;
19763
- that.checkFields([element]);
19772
+ addToFieldsToCheck([element]);
19764
19773
  found++;
19765
19774
  }
19766
19775
  }
@@ -19770,7 +19779,7 @@ const HierarchizedPickerComponent = class {
19770
19779
  (typeof dfValue == 'string' && getPropertyFromNode(element, 'fullpathTranslated') == dfValue) ||
19771
19780
  (typeof dfValue == 'number' && getPropertyFromNode(element, 'key') == dfValue)) {
19772
19781
  element.nodeid = element.key;
19773
- that.checkFields([element]);
19782
+ addToFieldsToCheck([element]);
19774
19783
  found++;
19775
19784
  }
19776
19785
  }
@@ -19782,6 +19791,7 @@ const HierarchizedPickerComponent = class {
19782
19791
  if (this.rawDataManager.getData()) {
19783
19792
  recursive([this.rawDataManager.getData()]);
19784
19793
  }
19794
+ that.checkFields(fieldsToCheck);
19785
19795
  if (this.theOptions.defaultValue.length != found) {
19786
19796
  if (found == 0) {
19787
19797
  try {
@@ -4,6 +4,7 @@ reneco-hierarchized-picker .hierarchized-picker-raw-tree-area {
4
4
  }
5
5
 
6
6
  reneco-hierarchized-picker .loader {
7
+ color: var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, black)) !important;
7
8
  position: absolute;
8
9
  z-index: 1;
9
10
  min-width: 100%;
@@ -16,7 +17,7 @@ reneco-hierarchized-picker .loader {
16
17
  box-sizing: border-box;
17
18
  }
18
19
  reneco-hierarchized-picker .loader .loader-inner {
19
- background: #FFF;
20
+ background: var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, var(--ion-color-light, #FAFAFA))) !important;
20
21
  padding: 20px;
21
22
  box-shadow: 0 0 5px #000;
22
23
  box-sizing: border-box;
@@ -112,6 +112,7 @@ export class HierarchizedPickerComponent {
112
112
  newValue = JSON.parse(newValue);
113
113
  if (typeof oldValue == 'string')
114
114
  oldValue = JSON.parse(oldValue);
115
+ this.value = [];
115
116
  this.optionsManager.updateOptions(newValue);
116
117
  this.setDisplayedValue(this.value);
117
118
  const originOrNodeIdAreDifferent = !oldValue || (newValue.origin != oldValue.origin || newValue.options.StartNodeID != oldValue.options.StartNodeID);
@@ -200,27 +201,30 @@ export class HierarchizedPickerComponent {
200
201
  this.getShortenedFullpath = (realFullpath) => {
201
202
  var _a, _b, _c, _d;
202
203
  let toret = realFullpath;
203
- try {
204
- const property_nodeid = (this.optionsManager.getOptions().origin == 'classification' ? "startNode" : "StartNodeID");
205
- const property_value = this.optionsManager.getOptions().options[property_nodeid];
206
- if (property_value in ["0", 0])
207
- return toret;
208
- if (isNumeric(property_value)) {
209
- if (this.optionsManager.getOptions().origin == 'classification') {
210
- const { Translations, Properties } = this.rawDataManager.getData();
211
- const currentLanguage = this.optionsManager.getOptions().language;
212
- toret = ((_b = (_a = Translations[currentLanguage]) === null || _a === void 0 ? void 0 : _a.translated_name) !== null && _b !== void 0 ? _b : Properties === null || Properties === void 0 ? void 0 : Properties.System_Name) + realFullpath.replace(((_d = (_c = Translations[currentLanguage]) === null || _c === void 0 ? void 0 : _c.translated_fullpath) !== null && _d !== void 0 ? _d : Properties === null || Properties === void 0 ? void 0 : Properties.System_Fullpath), "");
213
- }
214
- else {
215
- const { fullpath, fullpathTranslated, title, valueTranslated } = this.rawDataManager.getData();
216
- toret = (valueTranslated !== null && valueTranslated !== void 0 ? valueTranslated : title) + realFullpath.replace((fullpathTranslated !== null && fullpathTranslated !== void 0 ? fullpathTranslated : fullpath), "");
204
+ const rdmdata = this.rawDataManager.getData();
205
+ if (rdmdata) {
206
+ try {
207
+ const property_nodeid = (this.optionsManager.getOptions().origin == 'classification' ? "startNode" : "StartNodeID");
208
+ const property_value = this.optionsManager.getOptions().options[property_nodeid];
209
+ if (property_value in ["0", 0])
210
+ return toret;
211
+ if (isNumeric(property_value)) {
212
+ if (this.optionsManager.getOptions().origin == 'classification') {
213
+ const { Translations, Properties } = rdmdata;
214
+ const currentLanguage = this.optionsManager.getOptions().language;
215
+ toret = ((_b = (_a = Translations[currentLanguage]) === null || _a === void 0 ? void 0 : _a.translated_name) !== null && _b !== void 0 ? _b : Properties === null || Properties === void 0 ? void 0 : Properties.System_Name) + realFullpath.replace(((_d = (_c = Translations[currentLanguage]) === null || _c === void 0 ? void 0 : _c.translated_fullpath) !== null && _d !== void 0 ? _d : Properties === null || Properties === void 0 ? void 0 : Properties.System_Fullpath), "");
216
+ }
217
+ else {
218
+ const { fullpath, fullpathTranslated, title, valueTranslated } = rdmdata;
219
+ toret = (valueTranslated !== null && valueTranslated !== void 0 ? valueTranslated : title) + realFullpath.replace((fullpathTranslated !== null && fullpathTranslated !== void 0 ? fullpathTranslated : fullpath), "");
220
+ }
217
221
  }
222
+ else
223
+ this.errorToLog = "Error in getFullpath : startnode is not number";
224
+ }
225
+ catch (error) {
226
+ this.errorToLog = "Error in getFullpath " + error.toString();
218
227
  }
219
- else
220
- this.errorToLog = "Error in getFullpath : startnode is not number";
221
- }
222
- catch (error) {
223
- this.errorToLog = "Error in getFullpath " + error.toString();
224
228
  }
225
229
  return toret;
226
230
  };
@@ -501,14 +505,14 @@ export class HierarchizedPickerComponent {
501
505
  getContextualApiURL(init = false) {
502
506
  const { options, url } = this.optionsManager.getOptions();
503
507
  if (init && options.Reach) {
504
- // Use a base URL for relative paths
505
- const base = window.location.origin; // fallback for relative URLs
508
+ const base = window.location.origin;
506
509
  const parsedUrl = new URL(url, base);
507
- const pathSegments = parsedUrl.pathname.split('/');
508
- let dynamicType = pathSegments[pathSegments.length - 2];
509
- if (['thesaurus', 'position'].indexOf(dynamicType) == -1)
510
- dynamicType = pathSegments[pathSegments.length - 1];
511
- const newPathname = `/api/v1/classification/reach/${dynamicType}`;
510
+ const pathSegments = parsedUrl.pathname.split('/').filter(Boolean);
511
+ const idx = pathSegments.indexOf("getTree");
512
+ if (idx !== -1) {
513
+ pathSegments[idx] = "reach";
514
+ }
515
+ const newPathname = "/" + pathSegments.join("/");
512
516
  return `${parsedUrl.origin}${newPathname}`;
513
517
  }
514
518
  return url;
@@ -715,7 +719,7 @@ export class HierarchizedPickerComponent {
715
719
  (this.loadedTreeJs.liElementsById[id] && this.loadedTreeJs.liElementsById[id].classList.value && this.loadedTreeJs.liElementsById[id].classList.value.indexOf('readonly_node') != -1)) {
716
720
  return;
717
721
  }
718
- if (treeToUpdate.getValues().indexOf(id.toString()) != -1)
722
+ if (!userClick && treeToUpdate.getValues().indexOf(id.toString()) != -1)
719
723
  return;
720
724
  this.ignoreOptionsChanges = true;
721
725
  // Override of treejs normal workaround =>> DONT EDIT IT!
@@ -753,13 +757,13 @@ export class HierarchizedPickerComponent {
753
757
  * This method display the current selected node to the user by expanding all it's parent nodes and scrolling inside the tree
754
758
  */
755
759
  async showSelectedNodes(addDelay = false) {
756
- if (this.optionsManager.getOptions().multiple) {
757
- console.warn('You are not allowed to scroll to selected nodes in multiple mode');
758
- return;
759
- }
760
+ // if (this.optionsManager.getOptions().multiple) {
761
+ // console.warn('You are not allowed to scroll to selected nodes in multiple mode');
762
+ // return;
763
+ // }
760
764
  const scrollToNode = () => {
761
765
  let scrollToValue = 0;
762
- let removeClosedAndLookUp = (element) => {
766
+ let removeClosedAndLookUp = (element, editScroll = false) => {
763
767
  var _a, _b, _c, _d;
764
768
  const nodeId = element === null || element === void 0 ? void 0 : element.nodeId;
765
769
  if (!element || !nodeId) {
@@ -769,18 +773,20 @@ export class HierarchizedPickerComponent {
769
773
  if ((_b = (_a = node === null || node === void 0 ? void 0 : node.children) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.id) {
770
774
  (_c = element.classList) === null || _c === void 0 ? void 0 : _c.remove('treejs-node__close');
771
775
  }
772
- scrollToValue += element.offsetTop;
776
+ if (editScroll) {
777
+ scrollToValue += element.offsetTop;
778
+ }
773
779
  const parent = (_d = element.parentNode) === null || _d === void 0 ? void 0 : _d.closest('.treejs-node');
774
780
  if (parent) {
775
- removeClosedAndLookUp(parent);
781
+ removeClosedAndLookUp(parent, editScroll);
776
782
  }
777
783
  };
778
784
  try {
779
785
  const checkeds = document.querySelectorAll('#tree-area-' + this.componentID + ' .treejs-node__checked');
780
- checkeds.forEach((item) => removeClosedAndLookUp(item));
786
+ checkeds.forEach((item) => removeClosedAndLookUp(item, scrollToValue == 0));
781
787
  }
782
788
  catch (err) {
783
- // console.error("Error in showSelectedNodes", err);
789
+ console.error("Error in showSelectedNodes", err);
784
790
  }
785
791
  if (scrollToValue && this.scrollable) {
786
792
  this.scrollable.scrollTop = scrollToValue;
@@ -847,9 +853,12 @@ export class HierarchizedPickerComponent {
847
853
  return item.nodeid == node.id;
848
854
  });
849
855
  // If the passed node already exists in the array of values, remove it
850
- if (userClick && result > -1) {
851
- this.value.splice(result, 1);
852
- } // Else, add the node to the array of values
856
+ if (result > -1) {
857
+ if (userClick)
858
+ this.value.splice(result, 1);
859
+ else
860
+ return;
861
+ }
853
862
  else {
854
863
  if (this.optionsManager.getOptions().multiple) {
855
864
  this.value = [
@@ -878,10 +887,11 @@ export class HierarchizedPickerComponent {
878
887
  setDisplayedValue(value = null) {
879
888
  if (!value)
880
889
  value = this.value;
881
- this.displayedValue = value.map(item => {
890
+ const toDisplay = value.map(item => {
882
891
  var _a, _b;
883
892
  return (_b = (this.optionsManager.getOptions().isFullpath ? this.getShortenedFullpath((_a = item.fullpathTranslated) !== null && _a !== void 0 ? _a : item.fullpath) : item.shortpathTranslated)) !== null && _b !== void 0 ? _b : `Node ${item.nodeid}`;
884
893
  }).join(';');
894
+ this.displayedValue = toDisplay;
885
895
  }
886
896
  // Search a value in the tree and triggers a search when necessary
887
897
  search(searched) {
@@ -948,6 +958,7 @@ export class HierarchizedPickerComponent {
948
958
  if (init) {
949
959
  this.formatDefaultValue();
950
960
  this.showSelectedNodes();
961
+ this.checkFields(this.value);
951
962
  }
952
963
  })
953
964
  .catch(error => {
@@ -985,7 +996,7 @@ export class HierarchizedPickerComponent {
985
996
  let enrichedValues = [];
986
997
  if (values) {
987
998
  values.forEach(element => {
988
- var _a, _b;
999
+ var _a, _b, _c;
989
1000
  let intNodeid = element.nodeid || element.ID || element.key || undefined;
990
1001
  if (typeof intNodeid === 'string' && isNumeric(intNodeid)) {
991
1002
  intNodeid = parseInt(intNodeid);
@@ -995,7 +1006,8 @@ export class HierarchizedPickerComponent {
995
1006
  enrichedValues.push({
996
1007
  nodeid: intNodeid,
997
1008
  shortpathTranslated: (_a = treeNode.text) !== null && _a !== void 0 ? _a : `Node ${intNodeid}`,
998
- fullpathTranslated: (_b = treeNode.fullpath) !== null && _b !== void 0 ? _b : null,
1009
+ fullpathTranslated: (_b = treeNode.fullpathTranslated) !== null && _b !== void 0 ? _b : null,
1010
+ fullpath: (_c = treeNode.fullpath) !== null && _c !== void 0 ? _c : null,
999
1011
  hasChildren: treeNode.children && treeNode.children.length > 0
1000
1012
  });
1001
1013
  this.setNodeAsSelected(intNodeid, this.loadedTreeJs, false);
@@ -1013,8 +1025,19 @@ export class HierarchizedPickerComponent {
1013
1025
  formatDefaultValue() {
1014
1026
  let found = 0;
1015
1027
  let that = this;
1028
+ let fieldsToCheck = [];
1029
+ function addToFieldsToCheck(item) {
1030
+ if (Array.isArray(item)) {
1031
+ item.forEach(el => addToFieldsToCheck(el));
1032
+ }
1033
+ else {
1034
+ const exists = fieldsToCheck.some(el => (el.nodeid || el.ID) == (item.nodeid || item.ID));
1035
+ if (!exists) {
1036
+ fieldsToCheck.push(item);
1037
+ }
1038
+ }
1039
+ }
1016
1040
  let recursive = function (children) {
1017
- //158424
1018
1041
  children.forEach(element => {
1019
1042
  that.theOptions.defaultValue.forEach(dfValue => {
1020
1043
  if (typeof dfValue == 'string' && isNumeric(dfValue)) {
@@ -1024,7 +1047,7 @@ export class HierarchizedPickerComponent {
1024
1047
  if ((typeof dfValue == 'string' && getPropertyFromNode(element, 'Properties').FullPath == dfValue) ||
1025
1048
  (typeof dfValue == 'number' && getPropertyFromNode(element, 'ID') == dfValue)) {
1026
1049
  element.nodeid = element.id;
1027
- that.checkFields([element]);
1050
+ addToFieldsToCheck([element]);
1028
1051
  found++;
1029
1052
  }
1030
1053
  }
@@ -1034,7 +1057,7 @@ export class HierarchizedPickerComponent {
1034
1057
  (typeof dfValue == 'string' && getPropertyFromNode(element, 'fullpathTranslated') == dfValue) ||
1035
1058
  (typeof dfValue == 'number' && getPropertyFromNode(element, 'key') == dfValue)) {
1036
1059
  element.nodeid = element.key;
1037
- that.checkFields([element]);
1060
+ addToFieldsToCheck([element]);
1038
1061
  found++;
1039
1062
  }
1040
1063
  }
@@ -1046,6 +1069,7 @@ export class HierarchizedPickerComponent {
1046
1069
  if (this.rawDataManager.getData()) {
1047
1070
  recursive([this.rawDataManager.getData()]);
1048
1071
  }
1072
+ that.checkFields(fieldsToCheck);
1049
1073
  if (this.theOptions.defaultValue.length != found) {
1050
1074
  if (found == 0) {
1051
1075
  try {
@@ -36,17 +36,17 @@ export function handleFocusEvent(component, type) {
36
36
  }
37
37
  }
38
38
  export function manageFocusOut(component, event) {
39
- const relatedTarget = event.relatedTarget;
40
- if (!isInsidePicker(component, relatedTarget)) {
41
- setTimeout(() => {
42
- if (!isInsidePicker(component, document.activeElement)) {
43
- handleFocusEvent(component, 'hide');
44
- }
45
- }, 100);
46
- }
47
- else {
48
- handleFocusEvent(component, 'search');
49
- }
39
+ // TODO > REVIEW THIS, IT SEEMS TO PREVENT PROPER FOCUS MANAGEMENT RATHER THAN IMPROVING IT
40
+ // const relatedTarget = (event.relatedTarget || event.target) as HTMLElement;
41
+ // if (!isInsidePicker(component, relatedTarget)) {
42
+ // setTimeout(() => {
43
+ // if (!isInsidePicker(component, document.activeElement)) {
44
+ // handleFocusEvent(component, 'hide');
45
+ // }
46
+ // }, 100);
47
+ // } else {
48
+ // handleFocusEvent(component, 'search');
49
+ // }
50
50
  }
51
51
  export function clickPickerModalArea(component, _event) {
52
52
  if (component.pickerClass === 'fieldError') {