reneco-hierarchized-picker 0.4.3-beta.1 → 0.4.3-beta.10

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.
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-55df525c.js');
6
6
 
7
7
  function applyPickerTheme(theme, defaultTheme) {
8
+ var _a;
8
9
  const docstyle = document.documentElement.style;
9
10
  docstyle.setProperty('--hpicker-theme-palette-primary-main', (theme === null || theme === void 0 ? void 0 : theme.palette.primary.main) || defaultTheme.palette.primary.main);
10
11
  docstyle.setProperty('--hpicker-theme-palette-primary-light', (theme === null || theme === void 0 ? void 0 : theme.palette.primary.light) || defaultTheme.palette.primary.light);
@@ -12,9 +13,11 @@ function applyPickerTheme(theme, defaultTheme) {
12
13
  docstyle.setProperty('--hpicker-theme-palette-background-default', (theme === null || theme === void 0 ? void 0 : theme.palette.background.default) || defaultTheme.palette.background.default);
13
14
  docstyle.setProperty('--hpicker-theme-palette-background-light', (theme === null || theme === void 0 ? void 0 : theme.palette.background.light) || defaultTheme.palette.background.light);
14
15
  docstyle.setProperty('--hpicker-theme-palette-background-dark', (theme === null || theme === void 0 ? void 0 : theme.palette.background.dark) || defaultTheme.palette.background.dark);
16
+ docstyle.setProperty('--hpicker-theme-palette-input-background-color', (theme === null || theme === void 0 ? void 0 : theme.palette.input.background) || defaultTheme.palette.input.background);
17
+ docstyle.setProperty('--hpicker-theme-palette-input-border-style', (theme === null || theme === void 0 ? void 0 : theme.palette.input.borderStyle) || defaultTheme.palette.input.borderStyle);
15
18
  docstyle.setProperty('--hpicker-theme-typography-body-font-size', (theme === null || theme === void 0 ? void 0 : theme.typography.body.fontSize) || defaultTheme.typography.body.fontSize);
16
19
  docstyle.setProperty('--hpicker-theme-typography-body-font-weight', (theme === null || theme === void 0 ? void 0 : theme.typography.body.fontWeight) || defaultTheme.typography.body.fontWeight);
17
- docstyle.setProperty('--hpicker-theme-palette-font-color', (theme === null || theme === void 0 ? void 0 : theme.palette.text.primary) || defaultTheme.palette.text.primary);
20
+ docstyle.setProperty('--hpicker-theme-modal-height', ((_a = theme === null || theme === void 0 ? void 0 : theme.modale) === null || _a === void 0 ? void 0 : _a.height) || defaultTheme.modale.height);
18
21
  }
19
22
 
20
23
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
@@ -18099,6 +18102,10 @@ const defaultPickerTheme = {
18099
18102
  text: {
18100
18103
  primary: '#000',
18101
18104
  },
18105
+ input: {
18106
+ background: '#fff',
18107
+ borderStyle: 'none'
18108
+ }
18102
18109
  },
18103
18110
  typography: {
18104
18111
  body: {
@@ -18106,6 +18113,9 @@ const defaultPickerTheme = {
18106
18113
  fontWeight: '400',
18107
18114
  },
18108
18115
  },
18116
+ modale: {
18117
+ height: "200px",
18118
+ }
18109
18119
  };
18110
18120
  // const defaultPickerTheme = {
18111
18121
  // palette: {
@@ -18191,6 +18201,10 @@ class RawDataManager {
18191
18201
  async getFromClassification(endpoint, options, loader) {
18192
18202
  let pathSegment = '';
18193
18203
  const queryParams = [];
18204
+ if (options['Reach']) {
18205
+ queryParams.push(`id=${options['Reach'].join('&id=')}`);
18206
+ delete options['Reach'];
18207
+ }
18194
18208
  for (const key in options) {
18195
18209
  if (!options.hasOwnProperty(key))
18196
18210
  continue;
@@ -18628,73 +18642,74 @@ function focusOutSearchEvent(component, event) {
18628
18642
  manageFocusOut(component, event);
18629
18643
  }
18630
18644
 
18631
- function setupKeyboardNavigation(component) {
18645
+ function setupKeyboardNavigation(component, navigateInTree) {
18632
18646
  const treeArea = component.el.querySelector('.hierarchized-picker-tree-area');
18633
18647
  if (!treeArea)
18634
18648
  return;
18635
18649
  let focusedNodeIndex = 0;
18636
- const treeNodes = Array.from(treeArea.querySelectorAll('.treejs-node'));
18637
- function focusNode(index) {
18638
- treeNodes.forEach(node => node.classList.remove('treejs-node__checked'));
18639
- const targetNode = treeNodes[index];
18640
- if (targetNode) {
18641
- targetNode.classList.add('treejs-node__checked');
18642
- targetNode.scrollIntoView({ block: 'nearest' });
18643
- }
18650
+ function focusNode(allLiElements, liElementToFocus) {
18651
+ Object.values(allLiElements).forEach((liNode) => {
18652
+ liNode.classList.remove('treejs-node__focused');
18653
+ });
18654
+ liElementToFocus.classList.add('treejs-node__focused');
18644
18655
  }
18645
18656
  component.el.addEventListener('keydown', (event) => {
18646
- var _a, _b, _c;
18657
+ var _a, _b;
18647
18658
  event.stopPropagation();
18648
18659
  const tree = component.loadedTreeJs;
18649
- if (!tree || !treeNodes.length)
18660
+ const treeNodesFromTree = tree.treeNodes;
18661
+ if (!tree || !treeNodesFromTree.length)
18650
18662
  return;
18663
+ const spaceNode = treeNodesFromTree[focusedNodeIndex];
18664
+ const activeNode = treeNodesFromTree[focusedNodeIndex];
18665
+ const liElement = tree.liElementsById[activeNode.id];
18651
18666
  switch (event.key) {
18652
18667
  case 'Tab':
18668
+ case '0':
18653
18669
  event.preventDefault();
18654
- component.showTree('hide');
18655
- setTimeout(() => focusMainInput(), 10);
18670
+ { //(spaceNode?.nodeId) {
18671
+ component.setNodeAsSelected(spaceNode.nodeId, component.loadedTreeJs, true);
18672
+ component.showTree('hide');
18673
+ setTimeout(() => focusMainInput(), 100);
18674
+ }
18656
18675
  break;
18657
18676
  case 'ArrowUp':
18658
18677
  event.preventDefault();
18659
18678
  focusedNodeIndex = Math.max(focusedNodeIndex - 1, 0);
18660
- focusNode(focusedNodeIndex);
18679
+ const newActiveNodeUp = treeNodesFromTree[focusedNodeIndex];
18680
+ const newLiElementUp = tree.liElementsById[newActiveNodeUp.id];
18681
+ focusNode(tree.liElementsById, newLiElementUp);
18661
18682
  break;
18662
18683
  case 'ArrowDown':
18663
18684
  event.preventDefault();
18664
- focusedNodeIndex = Math.min(focusedNodeIndex + 1, treeNodes.length - 1);
18665
- focusNode(focusedNodeIndex);
18685
+ focusedNodeIndex = Math.min(focusedNodeIndex + 1, treeNodesFromTree.length - 1);
18686
+ const newActiveNodeDown = treeNodesFromTree[focusedNodeIndex];
18687
+ const newLiElementDown = tree.liElementsById[newActiveNodeDown.id];
18688
+ focusNode(tree.liElementsById, newLiElementDown);
18666
18689
  break;
18667
18690
  case 'ArrowLeft':
18668
18691
  event.preventDefault();
18669
- const leftSwitcher = (_a = treeNodes[focusedNodeIndex]) === null || _a === void 0 ? void 0 : _a.querySelector('.treejs-switcher');
18692
+ const leftSwitcher = liElement.querySelector('.treejs-switcher');
18670
18693
  if (leftSwitcher) {
18671
- (_b = component.loadedTreeJs) === null || _b === void 0 ? void 0 : _b.onSwitcherClick(leftSwitcher);
18694
+ (_a = component.loadedTreeJs) === null || _a === void 0 ? void 0 : _a.onSwitcherClick(leftSwitcher);
18672
18695
  component.showTree('hide');
18673
18696
  }
18674
18697
  break;
18675
18698
  case 'ArrowRight':
18676
18699
  event.preventDefault();
18677
- const activeNode = treeNodes[focusedNodeIndex];
18678
- const rightSwitcher = activeNode === null || activeNode === void 0 ? void 0 : activeNode.querySelector('.treejs-switcher');
18700
+ const rightSwitcher = liElement.querySelector('.treejs-switcher');
18679
18701
  if (rightSwitcher) {
18680
- (_c = component.loadedTreeJs) === null || _c === void 0 ? void 0 : _c.onSwitcherClick(rightSwitcher);
18681
- }
18682
- break;
18683
- case '0':
18684
- event.preventDefault();
18685
- const spaceNode = treeNodes[focusedNodeIndex];
18686
- if (spaceNode === null || spaceNode === void 0 ? void 0 : spaceNode.nodeId) {
18687
- component.setNodeAsSelected(spaceNode.nodeId, component.loadedTreeJs, true);
18688
- component.showTree('hide');
18689
- setTimeout(() => focusMainInput(), 10);
18702
+ (_b = component.loadedTreeJs) === null || _b === void 0 ? void 0 : _b.onSwitcherClick(rightSwitcher);
18690
18703
  }
18691
18704
  break;
18692
18705
  }
18706
+ navigateInTree.emit(event.key);
18693
18707
  });
18694
- focusNode(focusedNodeIndex);
18708
+ if (component && component.loadedTreeJs && component.loadedTreeJs.liElementsById && component.loadedTreeJs.treeNodes)
18709
+ setTimeout(() => focusNode(component.loadedTreeJs.liElementsById, component.loadedTreeJs.liElementsById[component.loadedTreeJs.treeNodes[focusedNodeIndex].id]), 100);
18695
18710
  }
18696
18711
 
18697
- 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 .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:inline;-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.readonly{pointer-events:none;cursor:initial}reneco-hierarchized-picker .hierarchized-picker-input.hierarchized-picker-icon{margin-left:8px}reneco-hierarchized-picker .hierarchized-picker-label{position:stacked;margin-left:5px}reneco-hierarchized-picker .hierarchized-picker-tree-area{width:333px !important;padding-top:48px}reneco-hierarchized-picker .hierarchized-picker-modal-area{background-color:var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF))) !important;position:absolute;z-index:10;padding-left:15px;overflow:scroll;top:20px;min-height:100px;max-height:200px;-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{display:inline-block;width:357px}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{padding:10px 15px}reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco:hover{cursor:pointer}reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco-close{-webkit-transform:translate(5px, -8px);transform:translate(5px, -8px);color:var(--ion-color-danger, red) !important}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}.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}";
18712
+ 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)}reneco-hierarchized-picker input:focus-visible{outline:none !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}";
18698
18713
 
18699
18714
  const HierarchizedPickerComponent = class {
18700
18715
  /**
@@ -18878,6 +18893,9 @@ const HierarchizedPickerComponent = class {
18878
18893
  this.itemDropped = index.createEvent(this, "itemDropped", 7);
18879
18894
  this.itemContextMenuItemClick = index.createEvent(this, "itemContextMenuItemClick", 7);
18880
18895
  this.searchResult = index.createEvent(this, "searchResult", 7);
18896
+ this.navigateInTree = index.createEvent(this, "navigateInTree", 7);
18897
+ this.modaleHeight = 200;
18898
+ this.modalePosition = 'bottom';
18881
18899
  this.canload = true; // Determines wether the component may be loaded
18882
18900
  this.ready = false; // State to determine if all the elements of the component have been loaded
18883
18901
  this.searchToDisplay = 0; // Counter to trigger the research on proper time
@@ -18885,6 +18903,33 @@ const HierarchizedPickerComponent = class {
18885
18903
  this.lastSearchMatchCounter = 0; // Counter of number of matches for last search
18886
18904
  this.setValueOnClick = true; // Tells wether we edit the picker value on click in the tree
18887
18905
  this.mylog = console.log; // Custom log function for debug purposes
18906
+ this.getShortenedFullpath = (realFullpath) => {
18907
+ var _a, _b, _c, _d;
18908
+ let toret = realFullpath;
18909
+ try {
18910
+ const property_nodeid = (this.optionsManager.getOptions().origin == 'classification' ? "startNode" : "StartNodeID");
18911
+ const property_value = this.optionsManager.getOptions().options[property_nodeid];
18912
+ if (property_value in ["0", 0])
18913
+ return toret;
18914
+ if (isNumeric(property_value)) {
18915
+ if (this.optionsManager.getOptions().origin == 'classification') {
18916
+ const { Translations, Properties } = this.rawDataManager.getData();
18917
+ const currentLanguage = this.optionsManager.getOptions().language;
18918
+ 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), "");
18919
+ }
18920
+ else {
18921
+ const { fullpath, fullpathTranslated, title, valueTranslated } = this.rawDataManager.getData();
18922
+ toret = (valueTranslated !== null && valueTranslated !== void 0 ? valueTranslated : title) + realFullpath.replace((fullpathTranslated !== null && fullpathTranslated !== void 0 ? fullpathTranslated : fullpath), "");
18923
+ }
18924
+ }
18925
+ else
18926
+ this.errorToLog = "Error in getFullpath : startnode is not number";
18927
+ }
18928
+ catch (error) {
18929
+ this.errorToLog = "Error in getFullpath " + error.toString();
18930
+ }
18931
+ return toret;
18932
+ };
18888
18933
  this.options = undefined;
18889
18934
  this.valueChangeCallback = undefined;
18890
18935
  this.disabled = undefined;
@@ -18933,7 +18978,7 @@ const HierarchizedPickerComponent = class {
18933
18978
  }
18934
18979
  componentDidLoad() {
18935
18980
  this.mylog('----- componentDidLoad beginning -----');
18936
- setupKeyboardNavigation(this);
18981
+ setupKeyboardNavigation(this, this.navigateInTree);
18937
18982
  focusMainInput();
18938
18983
  }
18939
18984
  displayWhenLoaded() {
@@ -19054,7 +19099,9 @@ const HierarchizedPickerComponent = class {
19054
19099
  this.canload = result.toret;
19055
19100
  this.errorToLog = result.errorToLog;
19056
19101
  await this.initComponent();
19057
- applyPickerTheme(this.optionsManager.getOptions().theme, defaultPickerTheme);
19102
+ let defaultPickerThemeForInit = defaultPickerTheme;
19103
+ defaultPickerTheme.modale.height = this.modaleHeight + "px";
19104
+ applyPickerTheme(this.optionsManager.getOptions().theme, defaultPickerThemeForInit);
19058
19105
  // Displays option values
19059
19106
  this.mylog(this.optionsManager.getOptions());
19060
19107
  window.addEventListener('click', (evt) => {
@@ -19158,7 +19205,7 @@ const HierarchizedPickerComponent = class {
19158
19205
  let dynamicType = pathSegments[pathSegments.length - 2];
19159
19206
  if (['thesaurus', 'position'].indexOf(dynamicType) == -1)
19160
19207
  dynamicType = pathSegments[pathSegments.length - 1];
19161
- const newPathname = `/api/v1/classification/reach/${dynamicType}/${options.Reach}`;
19208
+ const newPathname = `/api/v1/classification/reach/${dynamicType}`;
19162
19209
  return `${parsedUrl.origin}${newPathname}`;
19163
19210
  }
19164
19211
  return url;
@@ -19170,7 +19217,6 @@ const HierarchizedPickerComponent = class {
19170
19217
  if (!init)
19171
19218
  delete optionsToReturn.Reach;
19172
19219
  if (optionsToReturn.Reach) {
19173
- delete optionsToReturn.Reach;
19174
19220
  if ("startNode" in optionsToReturn) {
19175
19221
  optionsToReturn.startingnode = optionsToReturn.startNode;
19176
19222
  delete optionsToReturn.startNode;
@@ -19335,9 +19381,11 @@ const HierarchizedPickerComponent = class {
19335
19381
  this.ignoreOptionsChanges = false;
19336
19382
  },
19337
19383
  });
19338
- Object.values(myTree.liElementsById).forEach((el) => {
19339
- el.classList.remove('treejs-node__searchmatch');
19340
- });
19384
+ if (this.searchResultData.length == 0) {
19385
+ Object.values(myTree.liElementsById).forEach((el) => {
19386
+ el.classList.remove('treejs-node__searchmatch');
19387
+ });
19388
+ }
19341
19389
  this.loadedTreeJs = myTree;
19342
19390
  this.collapseAllNodes();
19343
19391
  // TODO Make something that makes sense, this is a temporary quick fix :
@@ -19475,6 +19523,14 @@ const HierarchizedPickerComponent = class {
19475
19523
  const previousShownTree = this.shownTree;
19476
19524
  this.shownTree = this.hasFocus.length > 0;
19477
19525
  if (this.shownTree && !previousShownTree) {
19526
+ console.log("component value", document.querySelector('#hierarchized-picker-input-' + this.componentID));
19527
+ console.log("shouldOpenModalAbove", this.shouldOpenModalAbove(document.querySelector('#hierarchized-picker-input-' + this.componentID), this.modaleHeight));
19528
+ if (this.shouldOpenModalAbove(document.querySelector('#hierarchized-picker-input-' + this.componentID), this.modaleHeight)) {
19529
+ this.modalePosition = 'top';
19530
+ }
19531
+ else {
19532
+ this.modalePosition = 'bottom';
19533
+ }
19478
19534
  focusSearchInput(this);
19479
19535
  }
19480
19536
  }
@@ -19520,8 +19576,8 @@ const HierarchizedPickerComponent = class {
19520
19576
  if (!value)
19521
19577
  value = this.value;
19522
19578
  this.displayedValue = value.map(item => {
19523
- var _a;
19524
- return (_a = (this.optionsManager.getOptions().isFullpath ? item.fullpathTranslated : item.shortpathTranslated)) !== null && _a !== void 0 ? _a : `Node ${item.nodeid}`;
19579
+ var _a, _b;
19580
+ 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}`;
19525
19581
  }).join(';');
19526
19582
  }
19527
19583
  // Search a value in the tree and triggers a search when necessary
@@ -19708,9 +19764,14 @@ const HierarchizedPickerComponent = class {
19708
19764
  return "No selection";
19709
19765
  }
19710
19766
  return this.value
19711
- .map(item => { var _a, _b, _c; return (_c = (_b = (_a = item.fullpath) !== null && _a !== void 0 ? _a : item.fullpathTranslated) !== null && _b !== void 0 ? _b : item.shortpathTranslated) !== null && _c !== void 0 ? _c : `Node ${item.nodeid}`; })
19767
+ .map(item => { var _a, _b; return (_b = (_a = this.getShortenedFullpath(item.fullpathTranslated)) !== null && _a !== void 0 ? _a : item.fullpath) !== null && _b !== void 0 ? _b : `Node ${item.nodeid}`; })
19712
19768
  .join('; ');
19713
19769
  }
19770
+ shouldOpenModalAbove(inputElement, modaleHeight) {
19771
+ const inputRect = inputElement.getBoundingClientRect();
19772
+ const spaceLeft = window.innerHeight - inputRect.y;
19773
+ return spaceLeft < modaleHeight;
19774
+ }
19714
19775
  render() {
19715
19776
  return this.optionsManager.getOptions() ? (index.h("div", { id: 'hierarchized-picker-' + this.componentID, class: 'hierarchized-picker ' + (this.isDisabled ? 'readonly-mode' : '') }, this.optionsManager.getOptions().mode == 'input' ? (index.h("div", { class: "hierarchized-picker-container" }, index.h("div", { style: { display: 'none' }, ref: el => {
19716
19777
  this.loader = el;
@@ -19726,11 +19787,11 @@ const HierarchizedPickerComponent = class {
19726
19787
  } }, index.h("input", { class: "native-input sc-ion-input-md", "aria-labelledby": "ion-input-13-lbl", autocapitalize: "off", autocomplete: "off", autocorrect: "off", name: "ion-input-13", placeholder: "", readonly: "", spellcheck: "false", type: "text", value: this.displayedValue, title: this.getFullpathTooltip() })), this.displayedValue && !this.isDisabled && this.canload ? index.h("span", { class: "reneco reneco-close", onClick: () => this.clearPicker() }) : ''), index.h("div", { ref: el => {
19727
19788
  // Uncomment if you want the modale of picker in input mode to scroll to selected node on openning >>>
19728
19789
  this.scrollable = el;
19729
- }, class: 'hierarchized-picker-modal-area ' + (!this.shownTree ? ' hidden ' : ''), onClick: event => {
19790
+ }, class: `hierarchized-picker-modal-area ${!this.shownTree ? ' hidden ' : ''} ${this.modalePosition == 'top' ? "display-modale-top" : ""}`, onClick: event => {
19730
19791
  clickPickerModalArea(this);
19731
19792
  } }, index.h("div", { class: "loader", ref: el => {
19732
19793
  this.loader = el;
19733
- } }, index.h("div", { class: "loader-inner" }, "Loading...")), index.h("div", { class: 'hierarchized-picker-modal ' + (!this.ready ? 'hidden' : '') }, index.h("search-input", { placeholder: getLanguageValue(this.optionsManager.getOptions().searchPlaceholder, this.optionsManager.getOptions().language, defaultLanguage), onInputFocus: () => focusInSearchEvent(this), onInputBlur: () => focusOutSearchEvent(this, event), onSearch: (event) => this.search(event.detail) }), index.h("ul", { id: "autocomplete-results-area" }), index.h("div", { id: 'tree-area-' + this.componentID, class: 'hierarchized-picker-tree hierarchized-picker-tree-area ' + this.pickerClass }))))) : (index.h("div", { class: 'hierarchized-picker-raw-tree-area' + (this.isDisabled ? ' readonly' : ''), onClick: event => {
19794
+ } }, index.h("div", { class: "loader-inner" }, "Loading...")), index.h("div", { class: `hierarchized-picker-modal ${!this.ready ? 'hidden' : ''}` }, index.h("search-input", { placeholder: getLanguageValue(this.optionsManager.getOptions().searchPlaceholder, this.optionsManager.getOptions().language, defaultLanguage), onInputFocus: () => focusInSearchEvent(this), onInputBlur: () => focusOutSearchEvent(this, event), onSearch: (event) => this.search(event.detail) }), index.h("ul", { id: "autocomplete-results-area" }), index.h("div", { id: 'tree-area-' + this.componentID, class: 'hierarchized-picker-tree hierarchized-picker-tree-area ' + this.pickerClass }))))) : (index.h("div", { class: 'hierarchized-picker-raw-tree-area' + (this.isDisabled ? ' readonly' : ''), onClick: event => {
19734
19795
  clickPickerModalArea(this);
19735
19796
  } }, index.h("div", { class: "loader", ref: el => {
19736
19797
  this.loader = el;
@@ -19750,7 +19811,7 @@ const HierarchizedPickerComponent = class {
19750
19811
  };
19751
19812
  HierarchizedPickerComponent.style = hierarchizedPickerCss;
19752
19813
 
19753
- const searchInputCss = ".search-input-container{width:100%;margin:0}.search-input{width:100%;border:none}.search-input:focus{border:none !important;outline:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker .hierarchized-picker-input-area .input-wrapper{padding-left:10px !important}reneco-hierarchized-picker .hierarchized-picker-input input,reneco-hierarchized-picker .hierarchized-picker-search input{padding-left:5px !important;text-overflow:ellipsis !important;border:0;background:transparent;outline:none;font-size:var(--hpicker-theme-typography-body-font-size, var(--mui-typography-body-font-size, 14px)) !important;font-weight:var(--hpicker-theme-typography-body-font-weight, var(--mui-typography-body-font-weight, 400)) !important}reneco-hierarchized-picker .hierarchized-picker-search input{width:90%;color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, var(--ion-color-light-tint, #fff))) !important}reneco-hierarchized-picker .hierarchized-picker-search{background-color:var(--hpicker-theme-palette-background-light, var(--mui-palette-background-light, var(--ion-color-medium-tint, #E0E0E0)));position:absolute !important;width:333px !important;margin-top:10px;border-radius:4px;padding:8.5px}reneco-hierarchized-picker #searchInTree{padding:8.5px 8px;background:var(--hpicker-theme-palette-background-default, var(--mui-palette-background-default, var(--ion-color-background, rgba(221, 169, 37, 0.18))));border:none !important;border-radius:4px}reneco-hierarchized-picker #searchInTree:focus{border:none !important;outline:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}";
19814
+ const searchInputCss = ".search-input-container{display:-ms-flexbox;display:flex;gap:8px;margin-top:10px}.search-input-container .reneco-search{margin-top:3px}.search-input-container input{border-radius:4px;padding:5px}.search-input{width:100%;border:none}.search-input:focus{border:none !important;outline:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}reneco-hierarchized-picker .hierarchized-picker-input-area .input-wrapper{padding-left:10px !important}reneco-hierarchized-picker .hierarchized-picker-input input,reneco-hierarchized-picker .hierarchized-picker-search input{font-size:var(--hpicker-theme-typography-body-font-size, var(--mui-typography-body-font-size, 14px)) !important;font-weight:var(--hpicker-theme-typography-body-font-weight, var(--mui-typography-body-font-weight, 400)) !important}reneco-hierarchized-picker .hierarchized-picker-search input{color:var(--hpicker-theme-palette-font-color, var(--mui-palette-font-color, var(--ion-color-light-tint, #fff))) !important}reneco-hierarchized-picker #searchInTree{padding:8.5px 8px;background:var(--hpicker-theme-palette-background-default, var(--mui-palette-background-default, var(--ion-color-background, rgba(221, 169, 37, 0.18))));border:none !important;border-radius:4px}reneco-hierarchized-picker #searchInTree:focus{border:none !important;outline:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}";
19754
19815
 
19755
19816
  const SearchInput = class {
19756
19817
  constructor(hostRef) {
@@ -19786,9 +19847,11 @@ const SearchInput = class {
19786
19847
  }
19787
19848
  }
19788
19849
  render() {
19789
- return (index.h("div", { id: "hierarchized-picker-input-search-",
19850
+ return (index.h("div", { id: "hierarchized-picker-input-search",
19790
19851
  // TODO: need component ID ?
19791
- class: "search-input-container reneco reneco-search", ref: (el) => (this.rootElement = el) }, index.h("input", { ref: (el) => (this.inputElement = el), type: "text", class: "native-input search-input hierarchized-picker-search reneco reneco-search sc-ion-input-md-h sc-ion-input-md-s md", placeholder: this.placeholder, onFocus: () => this.handleFocus(), onBlur: (event) => this.handleBlur(event), onInput: (event) => this.handleInput(event) })));
19852
+ class: "search-input-container", ref: (el) => (this.rootElement = el) }, index.h("div", { class: "reneco reneco-search" }), index.h("input", { ref: (el) => (this.inputElement = el), type: "text", class: "native-input sc-ion-input-md-h sc-ion-input-md-s md search-input hierarchized-picker-search",
19853
+ //class="native-input search-input hierarchized-picker-search sc-ion-input-md-h sc-ion-input-md-s md"
19854
+ placeholder: this.placeholder, onFocus: () => this.handleFocus(), onBlur: (event) => this.handleBlur(event), onInput: (event) => this.handleInput(event) })));
19792
19855
  }
19793
19856
  };
19794
19857
  SearchInput.style = searchInputCss;
@@ -91,6 +91,11 @@ reneco-hierarchized-picker .treejs {
91
91
  reneco-hierarchized-picker .treejs-node__checked > .treejs-switcher:before {
92
92
  border-top: 4px solid var(--hpicker-theme-palette-primary-contrastText) !important;
93
93
  }
94
+ reneco-hierarchized-picker .treejs-node__focused {
95
+ text-decoration: underline;
96
+ text-decoration-thickness: 2px;
97
+ text-underline-offset: 2px;
98
+ }
94
99
  reneco-hierarchized-picker .treejs .treejs-node__close > .treejs-switcher {
95
100
  -webkit-transform: rotate(-90deg);
96
101
  -ms-transform: rotate(-90deg);
@@ -332,7 +337,8 @@ reneco-hierarchized-picker .hierarchized-picker-container{
332
337
 
333
338
  reneco-hierarchized-picker .hierarchized-picker-input-area {
334
339
  background-color: transparent !important;
335
- display: inline;
340
+ display: flex;
341
+ width: 100%;
336
342
  flex-direction : row;
337
343
  align-items : center
338
344
  }
@@ -345,36 +351,36 @@ reneco-hierarchized-picker .hierarchized-picker-input{
345
351
  flex: 2;
346
352
  }
347
353
 
354
+ reneco-hierarchized-picker .hierarchized-picker-input input{
355
+ width: 100%;
356
+ }
357
+
348
358
  reneco-hierarchized-picker .hierarchized-picker-input.readonly{
349
359
  pointer-events: none;
350
360
  cursor: initial;
351
361
  }
352
362
 
353
- reneco-hierarchized-picker .hierarchized-picker-input.hierarchized-picker-icon{
354
- margin-left: 8px;
355
- }
356
-
357
363
  reneco-hierarchized-picker .hierarchized-picker-label{
358
364
  position: stacked;
359
365
  margin-left: 5px;
360
366
  }
361
367
 
362
368
  reneco-hierarchized-picker .hierarchized-picker-tree-area{
363
- width: 333px !important;
364
- padding-top: 48px;
369
+ padding-top: 10px;
365
370
  }
366
371
 
367
372
  reneco-hierarchized-picker .hierarchized-picker-modal-area{
368
- background-color: var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF))) !important;
369
373
  position: absolute;
374
+ width: 100%;
375
+
376
+ background-color: var(--hpicker-theme-palette-background-dark, var(--mui-palette-background-dark, var(--ion-color-light-tint, #FFF))) !important;
370
377
  z-index: 10;
371
- padding-left: 15px;
372
378
  overflow: scroll;
373
379
 
374
380
  top: 20px;
375
381
 
376
382
  min-height: 100px;
377
- max-height: 200px;
383
+ max-height: var(--hpicker-theme-modal-height, "200px") !important;
378
384
 
379
385
  box-shadow: 0 0px 15px 0 rgba(0, 0, 0, 0.2);
380
386
  border-radius: 4px;
@@ -382,9 +388,13 @@ reneco-hierarchized-picker .hierarchized-picker-modal-area{
382
388
  margin-right: 0px !important;
383
389
  }
384
390
 
391
+ reneco-hierarchized-picker .hierarchized-picker-modal-area.display-modale-top{
392
+ bottom: 30px !important;
393
+ top: unset !important;
394
+ }
395
+
385
396
  reneco-hierarchized-picker .hierarchized-picker-modal{
386
- display: inline-block;
387
- width : 357px
397
+ padding: 0px 15px;
388
398
  }
389
399
 
390
400
  reneco-hierarchized-picker .hierarchized-picker{
@@ -402,16 +412,12 @@ reneco-hierarchized-picker .reneco:before{
402
412
  top: 1px;
403
413
  }
404
414
 
405
- /* ICON BUTTONS */
406
- reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco{
407
- padding: 10px 15px;
408
- }
409
415
  reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco:hover{
410
416
  cursor: pointer;
411
417
  }
412
418
  reneco-hierarchized-picker .hierarchized-picker-input-area span.reneco-close{
413
- transform: translate(5px, -8px);
414
419
  color : var(--ion-color-danger, red) !important;
420
+ padding-left: 10px;
415
421
  }
416
422
 
417
423
  /* ICON DROPDOWN */
@@ -465,6 +471,15 @@ reneco-hierarchized-picker input[title] {
465
471
  white-space: nowrap;
466
472
  }
467
473
 
474
+ reneco-hierarchized-picker input {
475
+ background-color: var(--hpicker-theme-palette-input-background-color, #eeeeee);
476
+ border-style: var(--hpicker-theme-palette-input-border-style, solid);
477
+ }
478
+
479
+ reneco-hierarchized-picker input:focus-visible {
480
+ outline: none !important;
481
+ }
482
+
468
483
  /* TODO For now, the readonly status is ignored for the mode tree, probably need a rework sometime */
469
484
  /* .hierarchized-picker-raw-tree-area.readonly li.treejs-node{
470
485
  cursor: initial;