@cortezaproject/corteza-vue 2022.9.0-dev.1 → 2022.9.0-dev.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { apiClients, system, eventbus as eventbus$1, corredor as corredor$1, NoID, compose, automation, fmt } from '@cortezaproject/corteza-js';
1
+ import { apiClients, system, eventbus as eventbus$1, corredor as corredor$1, NoID, compose, automation, shared, fmt } from '@cortezaproject/corteza-js';
2
2
  import qs from 'qs';
3
3
  import moment from 'moment';
4
4
  import i18next from 'i18next';
@@ -20,8 +20,6 @@ import { VueSelect } from 'vue-select';
20
20
  import { mapGetters, mapActions } from 'vuex';
21
21
  import { createPopper } from '@popperjs/core';
22
22
  import _, { debounce, throttle } from 'lodash';
23
- import colorschemes from 'chartjs-plugin-colorschemes';
24
- import Funnel from 'chartjs-plugin-funnel';
25
23
  import pino from 'pino';
26
24
  import fzy from 'fuzzysort';
27
25
 
@@ -71507,10 +71505,162 @@ var __vue_staticRenderFns__$b = [];
71507
71505
  undefined
71508
71506
  );
71509
71507
 
71508
+ //
71509
+ //
71510
+ //
71511
+ //
71512
+ //
71513
+ //
71514
+ //
71515
+ //
71516
+ //
71517
+ //
71518
+ //
71519
+ //
71520
+ //
71521
+ //
71522
+ //
71523
+ //
71524
+ //
71525
+ //
71526
+ //
71527
+ //
71528
+ //
71529
+ //
71530
+ //
71531
+ //
71532
+ //
71533
+ //
71534
+ //
71535
+ //
71536
+ //
71537
+ //
71538
+ //
71539
+ //
71540
+ //
71541
+ //
71542
+ //
71543
+ //
71544
+ //
71545
+ //
71546
+ //
71547
+ var script$d = {
71548
+ name: 'CInputSearch',
71549
+ props: {
71550
+ value: {
71551
+ type: String,
71552
+ default: ''
71553
+ },
71554
+ placeholder: {
71555
+ type: String,
71556
+ default: ''
71557
+ },
71558
+ size: {
71559
+ type: String
71560
+ },
71561
+ disabled: {
71562
+ type: Boolean
71563
+ },
71564
+ clearable: {
71565
+ type: Boolean,
71566
+ default: true
71567
+ },
71568
+ submittable: {
71569
+ type: Boolean
71570
+ },
71571
+ autocomplete: {
71572
+ type: String,
71573
+ default: 'on'
71574
+ },
71575
+ debounce: {
71576
+ type: Number,
71577
+ default: 0
71578
+ }
71579
+ },
71580
+ computed: {
71581
+ inputType() {
71582
+ return this.clearable ? 'search' : 'text';
71583
+ },
71584
+
71585
+ showSubmittable() {
71586
+ return !this.value || this.value && this.showSubmittableAndClearable;
71587
+ },
71588
+
71589
+ isSubmittable() {
71590
+ return this.submittable ? 'click' : null;
71591
+ },
71592
+
71593
+ showSubmittableAndClearable() {
71594
+ return this.clearable && this.submittable;
71595
+ }
71596
+
71597
+ },
71598
+ methods: {
71599
+ search(e) {
71600
+ if (!this.submittable) {
71601
+ this.$emit('input', e);
71602
+ }
71603
+ },
71604
+
71605
+ submitQuery() {
71606
+ if (this.submittable) {
71607
+ this.$emit('search', this.$refs.searchInput.localValue);
71608
+ }
71609
+ },
71610
+
71611
+ clearQuery() {
71612
+ this.$refs.searchInput.focus();
71613
+ this.$emit('input', '');
71614
+ }
71615
+
71616
+ }
71617
+ };
71618
+
71619
+ /* script */
71620
+ const __vue_script__$d = script$d;
71621
+
71622
+ /* template */
71623
+ var __vue_render__$c = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-input-group',[_c('b-input',{ref:"searchInput",staticClass:"h-100 pr-0 border-light border-right-0 text-truncate bg-white",attrs:{"data-test-id":"input-search","type":_vm.inputType,"name":"search","value":_vm.value,"debounce":_vm.debounce,"disabled":_vm.disabled,"placeholder":_vm.placeholder,"autocomplete":_vm.autocomplete,"size":_vm.size},on:{"input":_vm.search,"keyup":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }return _vm.submitQuery.apply(null, arguments)}}}),_vm._v(" "),_c('b-input-group-append',{staticClass:"bg-white border-light rounded-right append-group-border",class:{ 'border-left': _vm.showSubmittable }},[(_vm.showSubmittable)?_c('b-button',{class:{
71624
+ 'search-icon-border': _vm.showSubmittableAndClearable,
71625
+ 'cursor-default': !_vm.isSubmittable
71626
+ },attrs:{"variant":"link"},on:_vm._d({},[_vm.isSubmittable,_vm.submitQuery])},[_c('font-awesome-icon',{staticClass:"align-middle",attrs:{"icon":['fas', 'search']}})],1):_vm._e()],1)],1)};
71627
+ var __vue_staticRenderFns__$c = [];
71628
+
71629
+ /* style */
71630
+ const __vue_inject_styles__$e = function (inject) {
71631
+ if (!inject) return
71632
+ inject("data-v-795ab8d0_0", { source: "input[data-v-795ab8d0]:focus::placeholder{color:transparent}input[type=search][data-v-795ab8d0]::-webkit-search-cancel-button{height:13px;width:13px;padding-left:12px;cursor:pointer;background:url(\"data:image/svg+xml;charset=UTF-8,%3csvg viewPort='0 0 12 12' version='1.1' xmlns='http://www.w3.org/2000/svg'%3e%3cline x1='1' y1='11' x2='11' y2='1' stroke='black' stroke-width='2'/%3e%3cline x1='1' y1='1' x2='11' y2='11' stroke='black' stroke-width='2'/%3e%3c/svg%3e\")}.append-group-border[data-v-795ab8d0]{border:2px solid #e4e9ef}.search-icon-border[data-v-795ab8d0]{border-left:2px solid #e4e9ef}.cursor-default[data-v-795ab8d0]{cursor:default!important}", map: undefined, media: undefined });
71633
+
71634
+ };
71635
+ /* scoped */
71636
+ const __vue_scope_id__$e = "data-v-795ab8d0";
71637
+ /* module identifier */
71638
+ const __vue_module_identifier__$e = undefined;
71639
+ /* functional template */
71640
+ const __vue_is_functional_template__$e = false;
71641
+ /* style inject SSR */
71642
+
71643
+ /* style inject shadow dom */
71644
+
71645
+
71646
+
71647
+ const __vue_component__$e = /*#__PURE__*/normalizeComponent(
71648
+ { render: __vue_render__$c, staticRenderFns: __vue_staticRenderFns__$c },
71649
+ __vue_inject_styles__$e,
71650
+ __vue_script__$d,
71651
+ __vue_scope_id__$e,
71652
+ __vue_is_functional_template__$e,
71653
+ __vue_module_identifier__$e,
71654
+ false,
71655
+ createInjector,
71656
+ undefined,
71657
+ undefined
71658
+ );
71659
+
71510
71660
  /**
71511
71661
  * Defines common props, methods between different toolbar item types
71512
71662
  */
71513
- var script$d = {
71663
+ var script$e = {
71514
71664
  props: {
71515
71665
  format: {
71516
71666
  type: Object,
@@ -71563,18 +71713,18 @@ var script$d = {
71563
71713
  };
71564
71714
 
71565
71715
  /* script */
71566
- const __vue_script__$d = script$d;
71716
+ const __vue_script__$e = script$e;
71567
71717
 
71568
71718
  /* template */
71569
71719
 
71570
71720
  /* style */
71571
- const __vue_inject_styles__$e = undefined;
71721
+ const __vue_inject_styles__$f = undefined;
71572
71722
  /* scoped */
71573
- const __vue_scope_id__$e = undefined;
71723
+ const __vue_scope_id__$f = undefined;
71574
71724
  /* module identifier */
71575
- const __vue_module_identifier__$e = undefined;
71725
+ const __vue_module_identifier__$f = undefined;
71576
71726
  /* functional template */
71577
- const __vue_is_functional_template__$e = undefined;
71727
+ const __vue_is_functional_template__$f = undefined;
71578
71728
  /* style inject */
71579
71729
 
71580
71730
  /* style inject SSR */
@@ -71583,13 +71733,13 @@ const __vue_script__$d = script$d;
71583
71733
 
71584
71734
 
71585
71735
 
71586
- const __vue_component__$e = /*#__PURE__*/normalizeComponent(
71736
+ const __vue_component__$f = /*#__PURE__*/normalizeComponent(
71587
71737
  {},
71588
- __vue_inject_styles__$e,
71589
- __vue_script__$d,
71590
- __vue_scope_id__$e,
71591
- __vue_is_functional_template__$e,
71592
- __vue_module_identifier__$e,
71738
+ __vue_inject_styles__$f,
71739
+ __vue_script__$e,
71740
+ __vue_scope_id__$f,
71741
+ __vue_is_functional_template__$f,
71742
+ __vue_module_identifier__$f,
71593
71743
  false,
71594
71744
  undefined,
71595
71745
  undefined,
@@ -71607,12 +71757,12 @@ n(css,{});
71607
71757
  * input the URL that should be applied.
71608
71758
  */
71609
71759
 
71610
- var script$e = {
71760
+ var script$f = {
71611
71761
  name: 't-mark-color',
71612
71762
  components: {
71613
71763
  Swatches
71614
71764
  },
71615
- extends: __vue_component__$e,
71765
+ extends: __vue_component__$f,
71616
71766
  computed: {
71617
71767
  typeStyle() {
71618
71768
  return `${this.format.type}-icon`;
@@ -71622,38 +71772,38 @@ var script$e = {
71622
71772
  };
71623
71773
 
71624
71774
  /* script */
71625
- const __vue_script__$e = script$e;
71775
+ const __vue_script__$f = script$f;
71626
71776
 
71627
71777
  /* template */
71628
- var __vue_render__$c = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link","id":("color-popover-" + (_vm.format.type))}},[_c('span',{staticClass:"icon",class:_vm.typeStyle},[_vm._v("A")])]),_vm._v(" "),_c('b-popover',{ref:"popover",attrs:{"delay":0,"no-fade":"","custom-class":"tcl-popover","triggers":"focus","target":("color-popover-" + (_vm.format.type)),"placement":"bottom","container":null}},[_c('swatches',{attrs:{"swatch-size":"14","colors":"text-advanced","inline":""},on:{"input":function($event){return _vm.onClick(_vm.format.type, { color: $event })}}})],1)],1)};
71629
- var __vue_staticRenderFns__$c = [];
71778
+ var __vue_render__$d = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link","id":("color-popover-" + (_vm.format.type))}},[_c('span',{staticClass:"icon",class:_vm.typeStyle},[_vm._v("A")])]),_vm._v(" "),_c('b-popover',{ref:"popover",attrs:{"delay":0,"no-fade":"","custom-class":"tcl-popover","triggers":"focus","target":("color-popover-" + (_vm.format.type)),"placement":"bottom","container":null}},[_c('swatches',{attrs:{"swatch-size":"14","colors":"text-advanced","inline":""},on:{"input":function($event){return _vm.onClick(_vm.format.type, { color: $event })}}})],1)],1)};
71779
+ var __vue_staticRenderFns__$d = [];
71630
71780
 
71631
71781
  /* style */
71632
- const __vue_inject_styles__$f = function (inject) {
71782
+ const __vue_inject_styles__$g = function (inject) {
71633
71783
  if (!inject) return
71634
71784
  inject("data-v-90b60574_0", { source: ".icon[data-v-90b60574]{padding:0 2px}.icon.color-icon[data-v-90b60574]{border-bottom:1px solid #000}.icon.background-icon[data-v-90b60574]{background-color:rgba(0,0,0,.07);padding:2px 3px}", map: undefined, media: undefined })
71635
71785
  ,inject("data-v-90b60574_1", { source: ".tcl-popover .popover-body{padding:0!important}", map: undefined, media: undefined });
71636
71786
 
71637
71787
  };
71638
71788
  /* scoped */
71639
- const __vue_scope_id__$f = "data-v-90b60574";
71789
+ const __vue_scope_id__$g = "data-v-90b60574";
71640
71790
  /* module identifier */
71641
- const __vue_module_identifier__$f = undefined;
71791
+ const __vue_module_identifier__$g = undefined;
71642
71792
  /* functional template */
71643
- const __vue_is_functional_template__$f = false;
71793
+ const __vue_is_functional_template__$g = false;
71644
71794
  /* style inject SSR */
71645
71795
 
71646
71796
  /* style inject shadow dom */
71647
71797
 
71648
71798
 
71649
71799
 
71650
- const __vue_component__$f = /*#__PURE__*/normalizeComponent(
71651
- { render: __vue_render__$c, staticRenderFns: __vue_staticRenderFns__$c },
71652
- __vue_inject_styles__$f,
71653
- __vue_script__$e,
71654
- __vue_scope_id__$f,
71655
- __vue_is_functional_template__$f,
71656
- __vue_module_identifier__$f,
71800
+ const __vue_component__$g = /*#__PURE__*/normalizeComponent(
71801
+ { render: __vue_render__$d, staticRenderFns: __vue_staticRenderFns__$d },
71802
+ __vue_inject_styles__$g,
71803
+ __vue_script__$f,
71804
+ __vue_scope_id__$g,
71805
+ __vue_is_functional_template__$g,
71806
+ __vue_module_identifier__$g,
71657
71807
  false,
71658
71808
  createInjector,
71659
71809
  undefined,
@@ -71665,26 +71815,26 @@ var __vue_staticRenderFns__$c = [];
71665
71815
  * Component is used to display simple formatter options such as bold, italic, ...
71666
71816
  */
71667
71817
 
71668
- var script$f = {
71818
+ var script$g = {
71669
71819
  name: 't-mark-item',
71670
- extends: __vue_component__$e
71820
+ extends: __vue_component__$f
71671
71821
  };
71672
71822
 
71673
71823
  /* script */
71674
- const __vue_script__$f = script$f;
71824
+ const __vue_script__$g = script$g;
71675
71825
 
71676
71826
  /* template */
71677
- var __vue_render__$d = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link"},on:{"click":function($event){return _vm.onClick(_vm.format.type, _vm.format.attrs)}}},[_c('span',{class:_vm.activeClasses(_vm.format.attrs)},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":_vm.format.icon}}):_c('span',[_vm._v("\n "+_vm._s(_vm.format.label)+"\n ")])],1)])};
71678
- var __vue_staticRenderFns__$d = [];
71827
+ var __vue_render__$e = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link"},on:{"click":function($event){return _vm.onClick(_vm.format.type, _vm.format.attrs)}}},[_c('span',{class:_vm.activeClasses(_vm.format.attrs)},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":_vm.format.icon}}):_c('span',[_vm._v("\n "+_vm._s(_vm.format.label)+"\n ")])],1)])};
71828
+ var __vue_staticRenderFns__$e = [];
71679
71829
 
71680
71830
  /* style */
71681
- const __vue_inject_styles__$g = undefined;
71831
+ const __vue_inject_styles__$h = undefined;
71682
71832
  /* scoped */
71683
- const __vue_scope_id__$g = undefined;
71833
+ const __vue_scope_id__$h = undefined;
71684
71834
  /* module identifier */
71685
- const __vue_module_identifier__$g = undefined;
71835
+ const __vue_module_identifier__$h = undefined;
71686
71836
  /* functional template */
71687
- const __vue_is_functional_template__$g = false;
71837
+ const __vue_is_functional_template__$h = false;
71688
71838
  /* style inject */
71689
71839
 
71690
71840
  /* style inject SSR */
@@ -71693,13 +71843,13 @@ var __vue_staticRenderFns__$d = [];
71693
71843
 
71694
71844
 
71695
71845
 
71696
- const __vue_component__$g = /*#__PURE__*/normalizeComponent(
71697
- { render: __vue_render__$d, staticRenderFns: __vue_staticRenderFns__$d },
71698
- __vue_inject_styles__$g,
71699
- __vue_script__$f,
71700
- __vue_scope_id__$g,
71701
- __vue_is_functional_template__$g,
71702
- __vue_module_identifier__$g,
71846
+ const __vue_component__$h = /*#__PURE__*/normalizeComponent(
71847
+ { render: __vue_render__$e, staticRenderFns: __vue_staticRenderFns__$e },
71848
+ __vue_inject_styles__$h,
71849
+ __vue_script__$g,
71850
+ __vue_scope_id__$h,
71851
+ __vue_is_functional_template__$h,
71852
+ __vue_module_identifier__$h,
71703
71853
  false,
71704
71854
  undefined,
71705
71855
  undefined,
@@ -71712,9 +71862,9 @@ var __vue_staticRenderFns__$d = [];
71712
71862
  * input the URL that should be applied.
71713
71863
  */
71714
71864
 
71715
- var script$g = {
71865
+ var script$h = {
71716
71866
  name: 't-mark-link',
71717
- extends: __vue_component__$e,
71867
+ extends: __vue_component__$f,
71718
71868
  props: {
71719
71869
  labels: {
71720
71870
  type: Object,
@@ -71779,20 +71929,20 @@ var script$g = {
71779
71929
  };
71780
71930
 
71781
71931
  /* script */
71782
- const __vue_script__$g = script$g;
71932
+ const __vue_script__$h = script$h;
71783
71933
 
71784
71934
  /* template */
71785
- var __vue_render__$e = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{"id":"link-popover-container"}},[_c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link","id":"link-popover"},on:{"click":_vm.showPopover}},[_c('span',{class:_vm.activeClasses(_vm.format.attrs)},[_c('font-awesome-icon',{attrs:{"icon":"link"}})],1)]),_vm._v(" "),(_vm.currentValue)?_c('b-popover',{ref:"popover",attrs:{"triggers":"focus","target":"link-popover","placement":"auto","show":_vm.visible,"container":"link-popover-container"},on:{"update:show":function($event){_vm.visible=$event;}}},[_c('b-input-group',[_c('b-form-input',{attrs:{"type":"url","autofocus":"","state":_vm.urlValid ? null : false,"placeholder":_vm.labels.urlPlaceholder},on:{"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }$event.preventDefault();$event.stopPropagation();return _vm.link.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"esc",27,$event.key,["Esc","Escape"])){ return null; }$event.preventDefault();$event.stopPropagation();return _vm.close.apply(null, arguments)}]},model:{value:(_vm.attrs.href),callback:function ($$v) {_vm.$set(_vm.attrs, "href", $$v);},expression:"attrs.href"}}),_vm._v(" "),_c('b-input-group-append',[_c('b-button',{attrs:{"disabled":!_vm.urlValid,"variant":"outline-success"},on:{"click":_vm.link}},[_vm._v("\n "+_vm._s(_vm.labels.ok)+"\n ")])],1),_vm._v(" "),_c('b-checkbox',{staticClass:"py-1",attrs:{"value":"_blank","unchecked-value":"_self"},model:{value:(_vm.attrs.target),callback:function ($$v) {_vm.$set(_vm.attrs, "target", $$v);},expression:"attrs.target"}},[_vm._v("\n "+_vm._s(_vm.labels.openLinkInNewTab)+"\n ")])],1)],1):_vm._e()],1)};
71786
- var __vue_staticRenderFns__$e = [];
71935
+ var __vue_render__$f = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{"id":"link-popover-container"}},[_c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link","id":"link-popover"},on:{"click":_vm.showPopover}},[_c('span',{class:_vm.activeClasses(_vm.format.attrs)},[_c('font-awesome-icon',{attrs:{"icon":"link"}})],1)]),_vm._v(" "),(_vm.currentValue)?_c('b-popover',{ref:"popover",attrs:{"triggers":"focus","target":"link-popover","placement":"auto","show":_vm.visible,"container":"link-popover-container"},on:{"update:show":function($event){_vm.visible=$event;}}},[_c('b-input-group',[_c('b-form-input',{attrs:{"type":"url","autofocus":"","state":_vm.urlValid ? null : false,"placeholder":_vm.labels.urlPlaceholder},on:{"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }$event.preventDefault();$event.stopPropagation();return _vm.link.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"esc",27,$event.key,["Esc","Escape"])){ return null; }$event.preventDefault();$event.stopPropagation();return _vm.close.apply(null, arguments)}]},model:{value:(_vm.attrs.href),callback:function ($$v) {_vm.$set(_vm.attrs, "href", $$v);},expression:"attrs.href"}}),_vm._v(" "),_c('b-input-group-append',[_c('b-button',{attrs:{"disabled":!_vm.urlValid,"variant":"outline-success"},on:{"click":_vm.link}},[_vm._v("\n "+_vm._s(_vm.labels.ok)+"\n ")])],1),_vm._v(" "),_c('b-checkbox',{staticClass:"py-1",attrs:{"value":"_blank","unchecked-value":"_self"},model:{value:(_vm.attrs.target),callback:function ($$v) {_vm.$set(_vm.attrs, "target", $$v);},expression:"attrs.target"}},[_vm._v("\n "+_vm._s(_vm.labels.openLinkInNewTab)+"\n ")])],1)],1):_vm._e()],1)};
71936
+ var __vue_staticRenderFns__$f = [];
71787
71937
 
71788
71938
  /* style */
71789
- const __vue_inject_styles__$h = undefined;
71939
+ const __vue_inject_styles__$i = undefined;
71790
71940
  /* scoped */
71791
- const __vue_scope_id__$h = undefined;
71941
+ const __vue_scope_id__$i = undefined;
71792
71942
  /* module identifier */
71793
- const __vue_module_identifier__$h = undefined;
71943
+ const __vue_module_identifier__$i = undefined;
71794
71944
  /* functional template */
71795
- const __vue_is_functional_template__$h = false;
71945
+ const __vue_is_functional_template__$i = false;
71796
71946
  /* style inject */
71797
71947
 
71798
71948
  /* style inject SSR */
@@ -71801,13 +71951,13 @@ var __vue_staticRenderFns__$e = [];
71801
71951
 
71802
71952
 
71803
71953
 
71804
- const __vue_component__$h = /*#__PURE__*/normalizeComponent(
71805
- { render: __vue_render__$e, staticRenderFns: __vue_staticRenderFns__$e },
71806
- __vue_inject_styles__$h,
71807
- __vue_script__$g,
71808
- __vue_scope_id__$h,
71809
- __vue_is_functional_template__$h,
71810
- __vue_module_identifier__$h,
71954
+ const __vue_component__$i = /*#__PURE__*/normalizeComponent(
71955
+ { render: __vue_render__$f, staticRenderFns: __vue_staticRenderFns__$f },
71956
+ __vue_inject_styles__$i,
71957
+ __vue_script__$h,
71958
+ __vue_scope_id__$i,
71959
+ __vue_is_functional_template__$i,
71960
+ __vue_module_identifier__$i,
71811
71961
  false,
71812
71962
  undefined,
71813
71963
  undefined,
@@ -71815,9 +71965,9 @@ var __vue_staticRenderFns__$e = [];
71815
71965
  );
71816
71966
 
71817
71967
  var mark = {
71818
- Color: __vue_component__$f,
71819
- Item: __vue_component__$g,
71820
- Link: __vue_component__$h
71968
+ Color: __vue_component__$g,
71969
+ Item: __vue_component__$h,
71970
+ Link: __vue_component__$i
71821
71971
  };
71822
71972
 
71823
71973
  function findDiffStart(a, b, pos) {
@@ -78637,7 +78787,7 @@ const nodeTypes = getToolbar().filter(({
78637
78787
  * Defines common props, methods between different toolbar item types
78638
78788
  */
78639
78789
 
78640
- var script$h = {
78790
+ var script$i = {
78641
78791
  props: {
78642
78792
  format: {
78643
78793
  type: Object,
@@ -78752,18 +78902,18 @@ var script$h = {
78752
78902
  };
78753
78903
 
78754
78904
  /* script */
78755
- const __vue_script__$h = script$h;
78905
+ const __vue_script__$i = script$i;
78756
78906
 
78757
78907
  /* template */
78758
78908
 
78759
78909
  /* style */
78760
- const __vue_inject_styles__$i = undefined;
78910
+ const __vue_inject_styles__$j = undefined;
78761
78911
  /* scoped */
78762
- const __vue_scope_id__$i = undefined;
78912
+ const __vue_scope_id__$j = undefined;
78763
78913
  /* module identifier */
78764
- const __vue_module_identifier__$i = undefined;
78914
+ const __vue_module_identifier__$j = undefined;
78765
78915
  /* functional template */
78766
- const __vue_is_functional_template__$i = undefined;
78916
+ const __vue_is_functional_template__$j = undefined;
78767
78917
  /* style inject */
78768
78918
 
78769
78919
  /* style inject SSR */
@@ -78772,13 +78922,13 @@ const __vue_script__$h = script$h;
78772
78922
 
78773
78923
 
78774
78924
 
78775
- const __vue_component__$i = /*#__PURE__*/normalizeComponent(
78925
+ const __vue_component__$j = /*#__PURE__*/normalizeComponent(
78776
78926
  {},
78777
- __vue_inject_styles__$i,
78778
- __vue_script__$h,
78779
- __vue_scope_id__$i,
78780
- __vue_is_functional_template__$i,
78781
- __vue_module_identifier__$i,
78927
+ __vue_inject_styles__$j,
78928
+ __vue_script__$i,
78929
+ __vue_scope_id__$j,
78930
+ __vue_is_functional_template__$j,
78931
+ __vue_module_identifier__$j,
78782
78932
  false,
78783
78933
  undefined,
78784
78934
  undefined,
@@ -78790,26 +78940,26 @@ const __vue_script__$h = script$h;
78790
78940
  * Component is used to display node types; paragraph, headding, ...
78791
78941
  */
78792
78942
 
78793
- var script$i = {
78943
+ var script$j = {
78794
78944
  name: 't-node-item',
78795
- extends: __vue_component__$i
78945
+ extends: __vue_component__$j
78796
78946
  };
78797
78947
 
78798
78948
  /* script */
78799
- const __vue_script__$i = script$i;
78949
+ const __vue_script__$j = script$j;
78800
78950
 
78801
78951
  /* template */
78802
- var __vue_render__$f = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link"},on:{"click":function($event){return _vm.onClick(_vm.format.type, _vm.format.attrs)}}},[_c('span',{class:_vm.activeClasses(_vm.format.attrs)},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":_vm.format.icon}}):_c('span',[_vm._v("\n "+_vm._s(_vm.format.label)+"\n ")])],1)])};
78803
- var __vue_staticRenderFns__$f = [];
78952
+ var __vue_render__$g = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-button',{staticClass:"text-dark font-weight-bold text-decoration-none",attrs:{"variant":"link"},on:{"click":function($event){return _vm.onClick(_vm.format.type, _vm.format.attrs)}}},[_c('span',{class:_vm.activeClasses(_vm.format.attrs)},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":_vm.format.icon}}):_c('span',[_vm._v("\n "+_vm._s(_vm.format.label)+"\n ")])],1)])};
78953
+ var __vue_staticRenderFns__$g = [];
78804
78954
 
78805
78955
  /* style */
78806
- const __vue_inject_styles__$j = undefined;
78956
+ const __vue_inject_styles__$k = undefined;
78807
78957
  /* scoped */
78808
- const __vue_scope_id__$j = undefined;
78958
+ const __vue_scope_id__$k = undefined;
78809
78959
  /* module identifier */
78810
- const __vue_module_identifier__$j = undefined;
78960
+ const __vue_module_identifier__$k = undefined;
78811
78961
  /* functional template */
78812
- const __vue_is_functional_template__$j = false;
78962
+ const __vue_is_functional_template__$k = false;
78813
78963
  /* style inject */
78814
78964
 
78815
78965
  /* style inject SSR */
@@ -78818,13 +78968,13 @@ var __vue_staticRenderFns__$f = [];
78818
78968
 
78819
78969
 
78820
78970
 
78821
- const __vue_component__$j = /*#__PURE__*/normalizeComponent(
78822
- { render: __vue_render__$f, staticRenderFns: __vue_staticRenderFns__$f },
78823
- __vue_inject_styles__$j,
78824
- __vue_script__$i,
78825
- __vue_scope_id__$j,
78826
- __vue_is_functional_template__$j,
78827
- __vue_module_identifier__$j,
78971
+ const __vue_component__$k = /*#__PURE__*/normalizeComponent(
78972
+ { render: __vue_render__$g, staticRenderFns: __vue_staticRenderFns__$g },
78973
+ __vue_inject_styles__$k,
78974
+ __vue_script__$j,
78975
+ __vue_scope_id__$k,
78976
+ __vue_is_functional_template__$k,
78977
+ __vue_module_identifier__$k,
78828
78978
  false,
78829
78979
  undefined,
78830
78980
  undefined,
@@ -78832,7 +78982,7 @@ var __vue_staticRenderFns__$f = [];
78832
78982
  );
78833
78983
 
78834
78984
  var node = {
78835
- Item: __vue_component__$j
78985
+ Item: __vue_component__$k
78836
78986
  };
78837
78987
 
78838
78988
  //
@@ -78840,9 +78990,9 @@ var node = {
78840
78990
  * Component is used to display node alignment formatting
78841
78991
  */
78842
78992
 
78843
- var script$j = {
78993
+ var script$k = {
78844
78994
  name: 't-nattr-alignment',
78845
- extends: __vue_component__$i,
78995
+ extends: __vue_component__$j,
78846
78996
  props: {
78847
78997
  isActive: {
78848
78998
  type: Object,
@@ -78906,20 +79056,20 @@ var script$j = {
78906
79056
  };
78907
79057
 
78908
79058
  /* script */
78909
- const __vue_script__$j = script$j;
79059
+ const __vue_script__$k = script$k;
78910
79060
 
78911
79061
  /* template */
78912
- var __vue_render__$g = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown',{attrs:{"menu-class":"text-center","variant":"link"}},[_c('template',{slot:"button-content"},[_c('span',{staticClass:"text-dark font-weight-bold"},[_c('span',{class:_vm.rootActiveClasses()},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":_vm.format.icon}}):_c('span',[_vm._v("\n "+_vm._s(_vm.format.label)+"\n ")])],1)])]),_vm._v(" "),_vm._l((_vm.format.variants),function(v){return _c('b-dropdown-item',{key:v.variant,on:{"click":function($event){return _vm.dispatchTransaction(v)}}},[_c('b-button',{staticClass:"text-dark font-weight-bold",attrs:{"variant":"link"}},[_c('span',{class:_vm.activeClasses(v.attrs)},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":v.icon}}):_c('span',[_vm._v("\n "+_vm._s(v.label)+"\n ")])],1)])],1)})],2)};
78913
- var __vue_staticRenderFns__$g = [];
79062
+ var __vue_render__$h = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown',{attrs:{"menu-class":"text-center","variant":"link"}},[_c('template',{slot:"button-content"},[_c('span',{staticClass:"text-dark font-weight-bold"},[_c('span',{class:_vm.rootActiveClasses()},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":_vm.format.icon}}):_c('span',[_vm._v("\n "+_vm._s(_vm.format.label)+"\n ")])],1)])]),_vm._v(" "),_vm._l((_vm.format.variants),function(v){return _c('b-dropdown-item',{key:v.variant,on:{"click":function($event){return _vm.dispatchTransaction(v)}}},[_c('b-button',{staticClass:"text-dark font-weight-bold",attrs:{"variant":"link"}},[_c('span',{class:_vm.activeClasses(v.attrs)},[(_vm.format.icon)?_c('font-awesome-icon',{attrs:{"icon":v.icon}}):_c('span',[_vm._v("\n "+_vm._s(v.label)+"\n ")])],1)])],1)})],2)};
79063
+ var __vue_staticRenderFns__$h = [];
78914
79064
 
78915
79065
  /* style */
78916
- const __vue_inject_styles__$k = undefined;
79066
+ const __vue_inject_styles__$l = undefined;
78917
79067
  /* scoped */
78918
- const __vue_scope_id__$k = undefined;
79068
+ const __vue_scope_id__$l = undefined;
78919
79069
  /* module identifier */
78920
- const __vue_module_identifier__$k = undefined;
79070
+ const __vue_module_identifier__$l = undefined;
78921
79071
  /* functional template */
78922
- const __vue_is_functional_template__$k = false;
79072
+ const __vue_is_functional_template__$l = false;
78923
79073
  /* style inject */
78924
79074
 
78925
79075
  /* style inject SSR */
@@ -78928,13 +79078,13 @@ var __vue_staticRenderFns__$g = [];
78928
79078
 
78929
79079
 
78930
79080
 
78931
- const __vue_component__$k = /*#__PURE__*/normalizeComponent(
78932
- { render: __vue_render__$g, staticRenderFns: __vue_staticRenderFns__$g },
78933
- __vue_inject_styles__$k,
78934
- __vue_script__$j,
78935
- __vue_scope_id__$k,
78936
- __vue_is_functional_template__$k,
78937
- __vue_module_identifier__$k,
79081
+ const __vue_component__$l = /*#__PURE__*/normalizeComponent(
79082
+ { render: __vue_render__$h, staticRenderFns: __vue_staticRenderFns__$h },
79083
+ __vue_inject_styles__$l,
79084
+ __vue_script__$k,
79085
+ __vue_scope_id__$l,
79086
+ __vue_is_functional_template__$l,
79087
+ __vue_module_identifier__$l,
78938
79088
  false,
78939
79089
  undefined,
78940
79090
  undefined,
@@ -78942,7 +79092,7 @@ var __vue_staticRenderFns__$g = [];
78942
79092
  );
78943
79093
 
78944
79094
  var nodeAttr = {
78945
- Alignment: __vue_component__$k
79095
+ Alignment: __vue_component__$l
78946
79096
  };
78947
79097
 
78948
79098
  var cc = {
@@ -78952,7 +79102,7 @@ var cc = {
78952
79102
  };
78953
79103
 
78954
79104
  //
78955
- var script$k = {
79105
+ var script$l = {
78956
79106
  inheritAttrs: true,
78957
79107
  props: {
78958
79108
  editor: {
@@ -79035,20 +79185,20 @@ var script$k = {
79035
79185
  };
79036
79186
 
79037
79187
  /* script */
79038
- const __vue_script__$k = script$k;
79188
+ const __vue_script__$l = script$l;
79039
79189
 
79040
79190
  /* template */
79041
- var __vue_render__$h = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"d-flex flex-wrap"},[_vm._l((_vm.formats),function(f,i){return _c(_vm.getItem(f),_vm._b({key:("" + (f.name) + i + "}"),tag:"component",attrs:{"format":f,"labels":_vm.labels,"current-value":_vm.currentValue},on:{"click":function($event){(_vm.commands[$event.type])($event.attrs);}}},'component',_vm.$props,false))}),_vm._v(" "),_c('b-button',{staticClass:"text-dark font-weight-bold",attrs:{"variant":"link"},on:{"click":_vm.removeMarks}},[_c('font-awesome-icon',{attrs:{"icon":"remove-format"}})],1)],2)};
79042
- var __vue_staticRenderFns__$h = [];
79191
+ var __vue_render__$i = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"d-flex flex-wrap"},[_vm._l((_vm.formats),function(f,i){return _c(_vm.getItem(f),_vm._b({key:("" + (f.name) + i + "}"),tag:"component",attrs:{"format":f,"labels":_vm.labels,"current-value":_vm.currentValue},on:{"click":function($event){(_vm.commands[$event.type])($event.attrs);}}},'component',_vm.$props,false))}),_vm._v(" "),_c('b-button',{staticClass:"text-dark font-weight-bold",attrs:{"variant":"link"},on:{"click":_vm.removeMarks}},[_c('font-awesome-icon',{attrs:{"icon":"remove-format"}})],1)],2)};
79192
+ var __vue_staticRenderFns__$i = [];
79043
79193
 
79044
79194
  /* style */
79045
- const __vue_inject_styles__$l = undefined;
79195
+ const __vue_inject_styles__$m = undefined;
79046
79196
  /* scoped */
79047
- const __vue_scope_id__$l = undefined;
79197
+ const __vue_scope_id__$m = undefined;
79048
79198
  /* module identifier */
79049
- const __vue_module_identifier__$l = undefined;
79199
+ const __vue_module_identifier__$m = undefined;
79050
79200
  /* functional template */
79051
- const __vue_is_functional_template__$l = false;
79201
+ const __vue_is_functional_template__$m = false;
79052
79202
  /* style inject */
79053
79203
 
79054
79204
  /* style inject SSR */
@@ -79057,13 +79207,13 @@ var __vue_staticRenderFns__$h = [];
79057
79207
 
79058
79208
 
79059
79209
 
79060
- const __vue_component__$l = /*#__PURE__*/normalizeComponent(
79061
- { render: __vue_render__$h, staticRenderFns: __vue_staticRenderFns__$h },
79062
- __vue_inject_styles__$l,
79063
- __vue_script__$k,
79064
- __vue_scope_id__$l,
79065
- __vue_is_functional_template__$l,
79066
- __vue_module_identifier__$l,
79210
+ const __vue_component__$m = /*#__PURE__*/normalizeComponent(
79211
+ { render: __vue_render__$i, staticRenderFns: __vue_staticRenderFns__$i },
79212
+ __vue_inject_styles__$m,
79213
+ __vue_script__$l,
79214
+ __vue_scope_id__$m,
79215
+ __vue_is_functional_template__$m,
79216
+ __vue_module_identifier__$m,
79067
79217
  false,
79068
79218
  undefined,
79069
79219
  undefined,
@@ -79071,11 +79221,11 @@ var __vue_staticRenderFns__$h = [];
79071
79221
  );
79072
79222
 
79073
79223
  //
79074
- var script$l = {
79224
+ var script$m = {
79075
79225
  name: 'CRichTextInput',
79076
79226
  components: {
79077
79227
  EditorContent,
79078
- RToolbar: __vue_component__$l,
79228
+ RToolbar: __vue_component__$m,
79079
79229
  EditorMenuBar
79080
79230
  },
79081
79231
  props: {
@@ -79161,25 +79311,25 @@ var script$l = {
79161
79311
  };
79162
79312
 
79163
79313
  /* script */
79164
- const __vue_script__$l = script$l;
79314
+ const __vue_script__$m = script$m;
79165
79315
 
79166
79316
  /* template */
79167
- var __vue_render__$i = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{staticClass:"editor rt-content",attrs:{"no-body":""}},[(_vm.editor)?[_c('b-card-header',{attrs:{"header-class":"p-0 rounded-sm"}},[_c('editor-menu-bar',{attrs:{"editor":_vm.editor},scopedSlots:_vm._u([{key:"default",fn:function(ref){
79317
+ var __vue_render__$j = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{staticClass:"editor rt-content",attrs:{"no-body":""}},[(_vm.editor)?[_c('b-card-header',{attrs:{"header-class":"p-0 rounded-sm"}},[_c('editor-menu-bar',{attrs:{"editor":_vm.editor},scopedSlots:_vm._u([{key:"default",fn:function(ref){
79168
79318
  var commands = ref.commands;
79169
79319
  var isActive = ref.isActive;
79170
79320
  var getMarkAttrs = ref.getMarkAttrs;
79171
79321
  var getNodeAttrs = ref.getNodeAttrs;
79172
79322
  return [_c('r-toolbar',{attrs:{"editor":_vm.editor,"formats":_vm.toolbar,"commands":commands,"is-active":isActive,"get-mark-attrs":getMarkAttrs,"get-node-attrs":getNodeAttrs,"labels":_vm.labels,"current-value":_vm.currentValue}})]}}],null,false,2342935495)})],1),_vm._v(" "),_c('b-card-body',[_c('editor-content',{staticClass:"editor__content",attrs:{"editor":_vm.editor}})],1)]:_vm._e()],2)};
79173
- var __vue_staticRenderFns__$i = [];
79323
+ var __vue_staticRenderFns__$j = [];
79174
79324
 
79175
79325
  /* style */
79176
- const __vue_inject_styles__$m = undefined;
79326
+ const __vue_inject_styles__$n = undefined;
79177
79327
  /* scoped */
79178
- const __vue_scope_id__$m = undefined;
79328
+ const __vue_scope_id__$n = undefined;
79179
79329
  /* module identifier */
79180
- const __vue_module_identifier__$m = undefined;
79330
+ const __vue_module_identifier__$n = undefined;
79181
79331
  /* functional template */
79182
- const __vue_is_functional_template__$m = false;
79332
+ const __vue_is_functional_template__$n = false;
79183
79333
  /* style inject */
79184
79334
 
79185
79335
  /* style inject SSR */
@@ -79188,13 +79338,13 @@ var __vue_staticRenderFns__$i = [];
79188
79338
 
79189
79339
 
79190
79340
 
79191
- const __vue_component__$m = /*#__PURE__*/normalizeComponent(
79192
- { render: __vue_render__$i, staticRenderFns: __vue_staticRenderFns__$i },
79193
- __vue_inject_styles__$m,
79194
- __vue_script__$l,
79195
- __vue_scope_id__$m,
79196
- __vue_is_functional_template__$m,
79197
- __vue_module_identifier__$m,
79341
+ const __vue_component__$n = /*#__PURE__*/normalizeComponent(
79342
+ { render: __vue_render__$j, staticRenderFns: __vue_staticRenderFns__$j },
79343
+ __vue_inject_styles__$n,
79344
+ __vue_script__$m,
79345
+ __vue_scope_id__$n,
79346
+ __vue_is_functional_template__$n,
79347
+ __vue_module_identifier__$n,
79198
79348
  false,
79199
79349
  undefined,
79200
79350
  undefined,
@@ -79219,7 +79369,7 @@ function split(input) {
79219
79369
  }
79220
79370
 
79221
79371
  library.add(faLock);
79222
- var script$m = {
79372
+ var script$n = {
79223
79373
  props: {
79224
79374
  link: {
79225
79375
  type: Boolean
@@ -79257,6 +79407,10 @@ var script$m = {
79257
79407
  allSpecific: {
79258
79408
  type: Boolean,
79259
79409
  default: false
79410
+ },
79411
+ tooltip: {
79412
+ type: String,
79413
+ default: ''
79260
79414
  }
79261
79415
  },
79262
79416
  methods: {
@@ -79273,44 +79427,44 @@ var script$m = {
79273
79427
  };
79274
79428
 
79275
79429
  /* script */
79276
- const __vue_script__$m = script$m;
79430
+ const __vue_script__$n = script$n;
79277
79431
 
79278
79432
  /* template */
79279
- var __vue_render__$j = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.link)?_c('a',{staticClass:"pointer",attrs:{"data-test-id":"link-permissions"},on:{"click":_vm.onClick}},[_c('font-awesome-icon',{attrs:{"icon":['fas', 'lock']}})],1):_c('b-button',{attrs:{"data-test-id":"button-permissions","variant":_vm.buttonVariant},on:{"click":_vm.onClick}},[_vm._t("default",function(){return [(_vm.showButtonIcon)?_c('font-awesome-icon',{attrs:{"icon":['fas', 'lock']}}):_vm._e(),_vm._v(" "),(_vm.buttonLabel)?_c('span',[_vm._v("\n "+_vm._s(_vm.buttonLabel)+"\n ")]):_vm._e()]})],2)};
79280
- var __vue_staticRenderFns__$j = [];
79433
+ var __vue_render__$k = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.link)?_c('a',{staticClass:"pointer",attrs:{"data-test-id":"link-permissions","title":_vm.tooltip},on:{"click":_vm.onClick}},[_c('font-awesome-icon',{attrs:{"icon":['fas', 'lock']}})],1):_c('b-button',{attrs:{"data-test-id":"button-permissions","title":_vm.tooltip,"variant":_vm.buttonVariant},on:{"click":_vm.onClick}},[_vm._t("default",function(){return [(_vm.showButtonIcon)?_c('font-awesome-icon',{attrs:{"icon":['fas', 'lock']}}):_vm._e(),_vm._v(" "),(_vm.buttonLabel)?_c('span',[_vm._v("\n "+_vm._s(_vm.buttonLabel)+"\n ")]):_vm._e()]})],2)};
79434
+ var __vue_staticRenderFns__$k = [];
79281
79435
 
79282
79436
  /* style */
79283
- const __vue_inject_styles__$n = function (inject) {
79437
+ const __vue_inject_styles__$o = function (inject) {
79284
79438
  if (!inject) return
79285
- inject("data-v-f7d1d1dc_0", { source: ".pointer[data-v-f7d1d1dc]{cursor:pointer}", map: undefined, media: undefined });
79439
+ inject("data-v-66ae6703_0", { source: ".pointer[data-v-66ae6703]{cursor:pointer}", map: undefined, media: undefined });
79286
79440
 
79287
79441
  };
79288
79442
  /* scoped */
79289
- const __vue_scope_id__$n = "data-v-f7d1d1dc";
79443
+ const __vue_scope_id__$o = "data-v-66ae6703";
79290
79444
  /* module identifier */
79291
- const __vue_module_identifier__$n = undefined;
79445
+ const __vue_module_identifier__$o = undefined;
79292
79446
  /* functional template */
79293
- const __vue_is_functional_template__$n = false;
79447
+ const __vue_is_functional_template__$o = false;
79294
79448
  /* style inject SSR */
79295
79449
 
79296
79450
  /* style inject shadow dom */
79297
79451
 
79298
79452
 
79299
79453
 
79300
- const __vue_component__$n = /*#__PURE__*/normalizeComponent(
79301
- { render: __vue_render__$j, staticRenderFns: __vue_staticRenderFns__$j },
79302
- __vue_inject_styles__$n,
79303
- __vue_script__$m,
79304
- __vue_scope_id__$n,
79305
- __vue_is_functional_template__$n,
79306
- __vue_module_identifier__$n,
79454
+ const __vue_component__$o = /*#__PURE__*/normalizeComponent(
79455
+ { render: __vue_render__$k, staticRenderFns: __vue_staticRenderFns__$k },
79456
+ __vue_inject_styles__$o,
79457
+ __vue_script__$n,
79458
+ __vue_scope_id__$o,
79459
+ __vue_is_functional_template__$o,
79460
+ __vue_module_identifier__$o,
79307
79461
  false,
79308
79462
  createInjector,
79309
79463
  undefined,
79310
79464
  undefined
79311
79465
  );
79312
79466
 
79313
- var script$n = {
79467
+ var script$o = {
79314
79468
  props: {
79315
79469
  enabled: {
79316
79470
  type: Boolean,
@@ -79361,47 +79515,49 @@ var script$n = {
79361
79515
  };
79362
79516
 
79363
79517
  /* script */
79364
- const __vue_script__$n = script$n;
79518
+ const __vue_script__$o = script$o;
79365
79519
 
79366
79520
  /* template */
79367
- var __vue_render__$k = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-radio-group',{attrs:{"buttons":"","disabled":!_vm.enabled,"button-variant":_vm.variant,"options":_vm.options},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v;},expression:"selected"}})};
79368
- var __vue_staticRenderFns__$k = [];
79521
+ var __vue_render__$l = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-radio-group',{staticClass:"access rounded",attrs:{"data-test-id":"toggle-role-permissions","buttons":"","disabled":!_vm.enabled,"button-variant":_vm.variant,"options":_vm.options},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v;},expression:"selected"}})};
79522
+ var __vue_staticRenderFns__$l = [];
79369
79523
 
79370
79524
  /* style */
79371
- const __vue_inject_styles__$o = undefined;
79525
+ const __vue_inject_styles__$p = function (inject) {
79526
+ if (!inject) return
79527
+ inject("data-v-11e55e3b_0", { source: ".access .btn{background-color:#e4e9ef;border:none}.access .btn:nth-child(2),.access .btn:nth-child(3){margin-left:.2rem!important}", map: undefined, media: undefined });
79528
+
79529
+ };
79372
79530
  /* scoped */
79373
- const __vue_scope_id__$o = undefined;
79531
+ const __vue_scope_id__$p = undefined;
79374
79532
  /* module identifier */
79375
- const __vue_module_identifier__$o = undefined;
79533
+ const __vue_module_identifier__$p = undefined;
79376
79534
  /* functional template */
79377
- const __vue_is_functional_template__$o = false;
79378
- /* style inject */
79379
-
79535
+ const __vue_is_functional_template__$p = false;
79380
79536
  /* style inject SSR */
79381
79537
 
79382
79538
  /* style inject shadow dom */
79383
79539
 
79384
79540
 
79385
79541
 
79386
- const __vue_component__$o = /*#__PURE__*/normalizeComponent(
79387
- { render: __vue_render__$k, staticRenderFns: __vue_staticRenderFns__$k },
79388
- __vue_inject_styles__$o,
79389
- __vue_script__$n,
79390
- __vue_scope_id__$o,
79391
- __vue_is_functional_template__$o,
79392
- __vue_module_identifier__$o,
79542
+ const __vue_component__$p = /*#__PURE__*/normalizeComponent(
79543
+ { render: __vue_render__$l, staticRenderFns: __vue_staticRenderFns__$l },
79544
+ __vue_inject_styles__$p,
79545
+ __vue_script__$o,
79546
+ __vue_scope_id__$p,
79547
+ __vue_is_functional_template__$p,
79548
+ __vue_module_identifier__$p,
79393
79549
  false,
79394
- undefined,
79550
+ createInjector,
79395
79551
  undefined,
79396
79552
  undefined
79397
79553
  );
79398
79554
 
79399
- var script$o = {
79555
+ var script$p = {
79400
79556
  i18nOptions: {
79401
79557
  namespaces: 'permissions'
79402
79558
  },
79403
79559
  components: {
79404
- Access: __vue_component__$o
79560
+ Access: __vue_component__$p
79405
79561
  },
79406
79562
  props: {
79407
79563
  resource: {
@@ -79464,20 +79620,20 @@ var script$o = {
79464
79620
  };
79465
79621
 
79466
79622
  /* script */
79467
- const __vue_script__$o = script$o;
79623
+ const __vue_script__$p = script$p;
79468
79624
 
79469
79625
  /* template */
79470
- var __vue_render__$l = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-row',{staticClass:"mb-lg-1",attrs:{"no-gutters":""}},[_c('b-col',{attrs:{"cols":"12","lg":"6","order":"2","order-lg":"1"}},[_c('access',{attrs:{"access":_vm.access,"current":_vm.current,"enabled":_vm.enabled},on:{"update":_vm.onUpdate}}),_vm._v(" "),_c('b-button',{directives:[{name:"show",rawName:"v-show",value:(_vm.isChanged),expression:"isChanged"}],staticClass:"pl-0",attrs:{"variant":"link"},on:{"click":_vm.onReset}},[_vm._v("\n "+_vm._s(_vm.$t('ui.reset-back', {current: _vm.current}))+"\n ")])],1),_vm._v(" "),_c('b-col',{staticClass:"mb-lg-4 text-wrap",attrs:{"cols":"12","lg":"6","order":"1","order-lg":"2"}},[_c('b',{domProps:{"innerHTML":_vm._s(_vm.title || (_vm.operation + " on " + _vm.resource))}}),_vm._v(" "),_c('div',[_vm._v(_vm._s(_vm.description || ' '))])])],1)};
79471
- var __vue_staticRenderFns__$l = [];
79626
+ var __vue_render__$m = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{"data-test-id":_vm.title || (_vm.operation + " on " + _vm.resource)}},[_c('p',{staticClass:"mb-1",attrs:{"title":_vm.title || (_vm.operation + " on " + _vm.resource)}},[_vm._v("\n "+_vm._s(_vm.title || (_vm.operation + " on " + _vm.resource))+"\n ")]),_vm._v(" "),_c('access',{staticClass:"w-100",attrs:{"access":_vm.access,"current":_vm.current,"enabled":_vm.enabled},on:{"update":_vm.onUpdate}})],1)};
79627
+ var __vue_staticRenderFns__$m = [];
79472
79628
 
79473
79629
  /* style */
79474
- const __vue_inject_styles__$p = undefined;
79630
+ const __vue_inject_styles__$q = undefined;
79475
79631
  /* scoped */
79476
- const __vue_scope_id__$p = undefined;
79632
+ const __vue_scope_id__$q = undefined;
79477
79633
  /* module identifier */
79478
- const __vue_module_identifier__$p = undefined;
79634
+ const __vue_module_identifier__$q = undefined;
79479
79635
  /* functional template */
79480
- const __vue_is_functional_template__$p = false;
79636
+ const __vue_is_functional_template__$q = false;
79481
79637
  /* style inject */
79482
79638
 
79483
79639
  /* style inject SSR */
@@ -79486,22 +79642,22 @@ var __vue_staticRenderFns__$l = [];
79486
79642
 
79487
79643
 
79488
79644
 
79489
- const __vue_component__$p = /*#__PURE__*/normalizeComponent(
79490
- { render: __vue_render__$l, staticRenderFns: __vue_staticRenderFns__$l },
79491
- __vue_inject_styles__$p,
79492
- __vue_script__$o,
79493
- __vue_scope_id__$p,
79494
- __vue_is_functional_template__$p,
79495
- __vue_module_identifier__$p,
79645
+ const __vue_component__$q = /*#__PURE__*/normalizeComponent(
79646
+ { render: __vue_render__$m, staticRenderFns: __vue_staticRenderFns__$m },
79647
+ __vue_inject_styles__$q,
79648
+ __vue_script__$p,
79649
+ __vue_scope_id__$q,
79650
+ __vue_is_functional_template__$q,
79651
+ __vue_module_identifier__$q,
79496
79652
  false,
79497
79653
  undefined,
79498
79654
  undefined,
79499
79655
  undefined
79500
79656
  );
79501
79657
 
79502
- var script$p = {
79658
+ var script$q = {
79503
79659
  components: {
79504
- Rule: __vue_component__$p
79660
+ Rule: __vue_component__$q
79505
79661
  },
79506
79662
  props: {
79507
79663
  rules: {
@@ -79528,20 +79684,20 @@ var script$p = {
79528
79684
  };
79529
79685
 
79530
79686
  /* script */
79531
- const __vue_script__$p = script$p;
79687
+ const __vue_script__$q = script$q;
79532
79688
 
79533
79689
  /* template */
79534
- var __vue_render__$m = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-container',_vm._l((_vm.rules),function(p,i){return _c('rule',_vm._b({key:p.resource + p.operation,class:{ 'mt-4': i > 0 },on:{"update":_vm.onUpdate}},'rule',p,false))}),1)};
79535
- var __vue_staticRenderFns__$m = [];
79690
+ var __vue_render__$n = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{"data-test-id":"role-permissions-list"}},_vm._l((_vm.rules),function(p,i){return _c('rule',_vm._b({key:p.resource + p.operation,class:{ 'mt-4': i > 0 },on:{"update":_vm.onUpdate}},'rule',p,false))}),1)};
79691
+ var __vue_staticRenderFns__$n = [];
79536
79692
 
79537
79693
  /* style */
79538
- const __vue_inject_styles__$q = undefined;
79694
+ const __vue_inject_styles__$r = undefined;
79539
79695
  /* scoped */
79540
- const __vue_scope_id__$q = undefined;
79696
+ const __vue_scope_id__$r = undefined;
79541
79697
  /* module identifier */
79542
- const __vue_module_identifier__$q = undefined;
79698
+ const __vue_module_identifier__$r = undefined;
79543
79699
  /* functional template */
79544
- const __vue_is_functional_template__$q = false;
79700
+ const __vue_is_functional_template__$r = false;
79545
79701
  /* style inject */
79546
79702
 
79547
79703
  /* style inject SSR */
@@ -79550,65 +79706,44 @@ var __vue_staticRenderFns__$m = [];
79550
79706
 
79551
79707
 
79552
79708
 
79553
- const __vue_component__$q = /*#__PURE__*/normalizeComponent(
79554
- { render: __vue_render__$m, staticRenderFns: __vue_staticRenderFns__$m },
79555
- __vue_inject_styles__$q,
79556
- __vue_script__$p,
79557
- __vue_scope_id__$q,
79558
- __vue_is_functional_template__$q,
79559
- __vue_module_identifier__$q,
79709
+ const __vue_component__$r = /*#__PURE__*/normalizeComponent(
79710
+ { render: __vue_render__$n, staticRenderFns: __vue_staticRenderFns__$n },
79711
+ __vue_inject_styles__$r,
79712
+ __vue_script__$q,
79713
+ __vue_scope_id__$r,
79714
+ __vue_is_functional_template__$r,
79715
+ __vue_module_identifier__$r,
79560
79716
  false,
79561
79717
  undefined,
79562
79718
  undefined,
79563
79719
  undefined
79564
79720
  );
79565
79721
 
79566
- var script$q = {
79722
+ var script$r = {
79567
79723
  i18nOptions: {
79568
- /**
79569
- * Using both, implicit (here) and explicit (at $t()) namespace setting.
79570
- * If we only use implicit the behaviour is flaky.
79571
- */
79572
79724
  namespaces: 'permissions'
79573
79725
  },
79574
79726
  components: {
79575
- Rules: __vue_component__$q,
79727
+ Rules: __vue_component__$r,
79576
79728
  VueSelect
79577
79729
  },
79578
79730
  props: {
79579
- resource: {
79580
- type: String,
79581
- required: true
79582
- },
79583
- target: {
79584
- type: String,
79731
+ labels: {
79585
79732
  required: false,
79586
- default: undefined
79587
- },
79588
- allSpecific: {
79589
- type: Boolean,
79590
- default: false
79591
- },
79592
- backendComponentName: {
79593
- type: String,
79594
-
79595
- default() {
79596
- // Assuming backend service will
79597
- // be equal to (first part of) resource
79598
- if (!this.resource.startsWith('corteza::')) {
79599
- throw Error('unrecognized resource type schema');
79600
- } // <schema>::<backend-component-name>:...
79601
-
79602
-
79603
- return this.resource.split(':')[2];
79604
- }
79605
-
79733
+ type: Object,
79734
+ default: () => ({})
79606
79735
  }
79607
79736
  },
79608
79737
 
79609
79738
  data() {
79610
79739
  return {
79611
79740
  processing: false,
79741
+ backendComponentName: undefined,
79742
+ resource: undefined,
79743
+ title: undefined,
79744
+ target: undefined,
79745
+ allSpecific: false,
79746
+ userOptions: [],
79612
79747
  // List of available permissions (for a specific resource)
79613
79748
  permissions: [],
79614
79749
  // List of rules for the current role
@@ -79616,35 +79751,148 @@ var script$q = {
79616
79751
  // List of all available roles
79617
79752
  roles: [],
79618
79753
  // Current role object
79619
- currentRole: undefined
79754
+ currentRole: undefined,
79755
+ evaluate: [],
79756
+ add: {
79757
+ roleID: [],
79758
+ userID: undefined
79759
+ }
79620
79760
  };
79621
79761
  },
79622
79762
 
79623
79763
  computed: {
79764
+ api() {
79765
+ const s = this.backendComponentName;
79766
+ return s ? this['$' + s.charAt(0).toUpperCase() + s.slice(1) + 'API'] : undefined;
79767
+ },
79768
+
79769
+ showModal() {
79770
+ return !!(this.resource && this.api);
79771
+ },
79772
+
79624
79773
  dirty() {
79625
79774
  return this.collectChangedRules().length > 0;
79626
79775
  },
79627
79776
 
79628
- disabled() {
79777
+ submitDisabled() {
79629
79778
  return !this.dirty;
79630
79779
  },
79631
79780
 
79632
- api() {
79633
- const s = this.backendComponentName;
79634
- return this['$' + s.charAt(0).toUpperCase() + s.slice(1) + 'API'];
79781
+ addEnabled() {
79782
+ const {
79783
+ roleID = [],
79784
+ userID
79785
+ } = this.add;
79786
+ return roleID && roleID.length || userID;
79787
+ },
79788
+
79789
+ translatedTitle() {
79790
+ if (this.resource) {
79791
+ const {
79792
+ i18nPrefix
79793
+ } = split(this.resource);
79794
+ let target;
79795
+
79796
+ if (this.allSpecific) {
79797
+ target = this.$t(`permissions:${i18nPrefix}.all-specific`, {
79798
+ target: this.title,
79799
+ interpolation: {
79800
+ escapeValue: false
79801
+ }
79802
+ });
79803
+ } else if (this.title) {
79804
+ target = this.$t(`permissions:${i18nPrefix}.specific`, {
79805
+ target: this.title,
79806
+ interpolation: {
79807
+ escapeValue: false
79808
+ }
79809
+ });
79810
+ } else {
79811
+ target = this.$t(`permissions:${i18nPrefix}.all`);
79812
+ }
79813
+
79814
+ return this.$t('permissions:ui.set-for', {
79815
+ target: target,
79816
+ interpolation: {
79817
+ escapeValue: false
79818
+ }
79819
+ });
79820
+ }
79821
+
79822
+ return undefined;
79635
79823
  }
79636
79824
 
79637
79825
  },
79638
79826
 
79639
- created() {
79640
- this.fetchPermissions();
79641
- this.fetchRoles();
79827
+ mounted() {
79828
+ this.searchUsers('', () => {});
79829
+ this.$root.$on(modalOpenEventName, ({
79830
+ resource,
79831
+ title,
79832
+ target,
79833
+ allSpecific
79834
+ }) => {
79835
+ this.resource = resource;
79836
+ this.title = title;
79837
+ this.target = target;
79838
+ this.allSpecific = allSpecific; // <schema>::<backend-component-name>:...
79839
+
79840
+ this.backendComponentName = resource.split(':')[2];
79841
+ this.fetchPermissions().then(() => {
79842
+ if (!this.roles.length) {
79843
+ return this.fetchRoles();
79844
+ } else if (this.currentRole) {
79845
+ const {
79846
+ roleID
79847
+ } = this.currentRole;
79848
+ this.processing = true;
79849
+ return this.fetchRules(roleID).then(() => {
79850
+ return Promise.all(this.evaluate.map(e => {
79851
+ const {
79852
+ userID
79853
+ } = e.userID || {};
79854
+ let {
79855
+ roleID = []
79856
+ } = e;
79857
+ roleID = roleID.map(({
79858
+ roleID
79859
+ }) => roleID);
79860
+ return this.evaluatePermissions({
79861
+ roleID,
79862
+ userID
79863
+ }).then(rules => {
79864
+ return { ...e,
79865
+ rules
79866
+ };
79867
+ });
79868
+ })).then(evaluate => {
79869
+ this.evaluate = evaluate;
79870
+ });
79871
+ });
79872
+ }
79873
+ });
79874
+ });
79875
+ },
79876
+
79877
+ destroyed() {
79878
+ this.$root.$off(modalOpenEventName);
79642
79879
  },
79643
79880
 
79644
79881
  methods: {
79645
- onRoleChange(role) {
79646
- this.currentRole = role;
79647
- this.fetchRules(role.roleID);
79882
+ onHide() {
79883
+ this.clear();
79884
+ },
79885
+
79886
+ clear() {
79887
+ this.resource = undefined;
79888
+ this.title = undefined;
79889
+ this.target = undefined;
79890
+ },
79891
+
79892
+ onRoleChange({
79893
+ roleID
79894
+ }) {
79895
+ this.fetchRules(roleID);
79648
79896
  },
79649
79897
 
79650
79898
  onSubmit() {
@@ -79658,17 +79906,19 @@ var script$q = {
79658
79906
  rules
79659
79907
  }).then(() => {
79660
79908
  this.fetchRules(roleID);
79909
+ }).finally(() => {
79661
79910
  this.processing = false;
79662
79911
  });
79663
79912
  },
79664
79913
 
79665
79914
  async fetchPermissions() {
79666
- // clean loaded rules
79915
+ this.processing = true; // clean loaded rules
79916
+
79667
79917
  this.rules = [];
79668
79918
  this.permissions = [];
79669
- this.processing = true;
79670
79919
  return this.api.permissionsList().then(pp => {
79671
79920
  this.permissions = this.filterPermissions(pp);
79921
+ }).finally(() => {
79672
79922
  this.processing = false;
79673
79923
  });
79674
79924
  },
@@ -79676,9 +79926,11 @@ var script$q = {
79676
79926
  async fetchRules(roleID) {
79677
79927
  this.processing = true;
79678
79928
  return this.api.permissionsRead({
79679
- roleID
79929
+ roleID,
79930
+ resource: this.resource
79680
79931
  }).then(rules => {
79681
79932
  this.rules = this.normalizeRules(rules);
79933
+ }).finally(() => {
79682
79934
  this.processing = false;
79683
79935
  });
79684
79936
  },
@@ -79694,13 +79946,99 @@ var script$q = {
79694
79946
  }) => !isBypass).sort((a, b) => a.roleID.localeCompare(b.roleID));
79695
79947
 
79696
79948
  if (this.roles.length > 0) {
79697
- this.onRoleChange(this.roles[0]);
79949
+ this.currentRole = this.roles[0];
79950
+ this.onRoleChange(this.currentRole);
79698
79951
  }
79952
+ }).finally(() => {
79953
+ this.processing = false;
79954
+ });
79955
+ },
79699
79956
 
79957
+ async evaluatePermissions({
79958
+ resource = this.resource,
79959
+ roleID,
79960
+ userID
79961
+ }) {
79962
+ this.processing = true;
79963
+ return this.api.permissionsTrace({
79964
+ resource,
79965
+ roleID,
79966
+ userID
79967
+ }).then(this.normalizeRules).finally(() => {
79700
79968
  this.processing = false;
79701
79969
  });
79702
79970
  },
79703
79971
 
79972
+ searchUsers(query = '', loading) {
79973
+ loading(true);
79974
+ this.$SystemAPI.userList({
79975
+ query,
79976
+ limit: 15
79977
+ }).then(({
79978
+ set
79979
+ }) => {
79980
+ this.userOptions = set.map(m => Object.freeze(m));
79981
+ }).finally(() => {
79982
+ loading(false);
79983
+ });
79984
+ },
79985
+
79986
+ getUserLabel({
79987
+ userID,
79988
+ email,
79989
+ name,
79990
+ username
79991
+ }) {
79992
+ return name || username || email || `<@${userID}>`;
79993
+ },
79994
+
79995
+ onAddEval() {
79996
+ const {
79997
+ userID
79998
+ } = this.add.userID || {};
79999
+ let {
80000
+ roleID = []
80001
+ } = this.add;
80002
+ roleID = roleID.map(({
80003
+ roleID
80004
+ }) => roleID);
80005
+ this.evaluatePermissions({
80006
+ roleID,
80007
+ userID
80008
+ }).then(rules => {
80009
+ this.evaluate.push({ ...this.add,
80010
+ rules
80011
+ });
80012
+ this.add = {
80013
+ roleID: [],
80014
+ userID: undefined
80015
+ };
80016
+ });
80017
+ },
80018
+
80019
+ onHideEval(i) {
80020
+ this.evaluate.splice(i, 1);
80021
+ },
80022
+
80023
+ getEvalName({
80024
+ roleID,
80025
+ userID
80026
+ }) {
80027
+ if (userID) {
80028
+ const {
80029
+ name,
80030
+ username,
80031
+ email,
80032
+ handle
80033
+ } = userID;
80034
+ return [name || username || email || handle || userID || ''];
80035
+ } else {
80036
+ return roleID.map(({
80037
+ name
80038
+ }) => name);
80039
+ }
80040
+ },
80041
+
79704
80042
  normalizeRules(rr) {
79705
80043
  const inherit = 'inherit'; // merges roleRules (subset) with list of all permissions
79706
80044
 
@@ -79712,7 +80050,18 @@ var script$q = {
79712
80050
  return inherit;
79713
80051
  }
79714
80052
 
79715
- return (rr.find(r => r.resource === resource && r.operation === operation) || {}).access || inherit;
80053
+ let {
80054
+ resolution,
80055
+ access = 'inherit'
80056
+ } = rr.find(r => r.resource === resource && r.operation === operation) || {};
80057
+
80058
+ if (resolution === 'unknown-context') {
80059
+ access = 'unknown-context';
80060
+ } else if (access === 'inherit') {
80061
+ access = 'deny';
80062
+ }
80063
+
80064
+ return access;
79716
80065
  };
79717
80066
 
79718
80067
  return this.permissions.map(p => {
@@ -79788,145 +80137,14 @@ var script$q = {
79788
80137
  title,
79789
80138
  description: this.$t(`permissions:${i18nPrefix}.description`)
79790
80139
  };
79791
- }
79792
-
79793
- }
79794
- };
79795
-
79796
- /* script */
79797
- const __vue_script__$q = script$q;
79798
-
79799
- /* template */
79800
- var __vue_render__$n = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form',{on:{"submit":function($event){$event.preventDefault();return _vm.onSubmit.apply(null, arguments)}}},[_c('b-row',[_c('b-col',{staticClass:"role-list",attrs:{"cols":"12","lg":"3"}},[_c('b-list-group',{staticClass:"d-none d-lg-block"},_vm._l((_vm.roles),function(r){return _c('b-list-group-item',{key:r.roleID,staticClass:"text-break pointer",attrs:{"active":r.roleID === _vm.currentRole.roleID,"active-class":"primary","variant":"outline-primary"},on:{"click":function($event){return _vm.onRoleChange(r)}}},[_vm._v("\n "+_vm._s(r.name || r.handle || r.roleID)+"\n ")])}),1),_vm._v(" "),_c('vue-select',{key:"roleID",staticClass:"mb-4 d-block d-lg-none",attrs:{"label":"name","clearable":false,"options":_vm.roles},on:{"input":_vm.onRoleChange},model:{value:(_vm.currentRole),callback:function ($$v) {_vm.currentRole=$$v;},expression:"currentRole"}})],1),_vm._v(" "),_c('b-col',{staticClass:"rule-list",attrs:{"cols":"12","lg":"9"}},[_c('rules',{attrs:{"rules":_vm.rules},on:{"update:rules":function($event){_vm.rules=$event;}}})],1)],1),_vm._v(" "),_c('b-row',{staticClass:"footer mt-3"},[_c('b-col',{staticClass:"rule-list text-right mb-3",attrs:{"cols":"9","offset":"3"}},[_c('b-button',{attrs:{"type":"submit","variant":"primary","disabled":_vm.disabled}},[_vm._v("\n "+_vm._s(_vm.$t('permissions:ui.save-changes'))+"\n ")])],1)],1)],1)};
79801
- var __vue_staticRenderFns__$n = [];
79802
-
79803
- /* style */
79804
- const __vue_inject_styles__$r = function (inject) {
79805
- if (!inject) return
79806
- inject("data-v-6a9b0cab_0", { source: ".pointer[data-v-6a9b0cab]{cursor:pointer}", map: undefined, media: undefined });
79807
-
79808
- };
79809
- /* scoped */
79810
- const __vue_scope_id__$r = "data-v-6a9b0cab";
79811
- /* module identifier */
79812
- const __vue_module_identifier__$r = undefined;
79813
- /* functional template */
79814
- const __vue_is_functional_template__$r = false;
79815
- /* style inject SSR */
79816
-
79817
- /* style inject shadow dom */
79818
-
79819
-
79820
-
79821
- const __vue_component__$r = /*#__PURE__*/normalizeComponent(
79822
- { render: __vue_render__$n, staticRenderFns: __vue_staticRenderFns__$n },
79823
- __vue_inject_styles__$r,
79824
- __vue_script__$q,
79825
- __vue_scope_id__$r,
79826
- __vue_is_functional_template__$r,
79827
- __vue_module_identifier__$r,
79828
- false,
79829
- createInjector,
79830
- undefined,
79831
- undefined
79832
- );
79833
-
79834
- var script$r = {
79835
- i18nOptions: {
79836
- namespaces: 'permissions'
79837
- },
79838
- components: {
79839
- CPermissionsForm: __vue_component__$r
79840
- },
79841
-
79842
- data() {
79843
- return {
79844
- resource: undefined,
79845
- title: undefined,
79846
- target: undefined,
79847
- allSpecific: false
79848
- };
79849
- },
79850
-
79851
- computed: {
79852
- showModal: {
79853
- get() {
79854
- return !!this.resource;
79855
- },
79856
-
79857
- set(open) {
79858
- if (!open) {
79859
- this.clear();
79860
- }
79861
- }
79862
-
79863
80140
  },
79864
80141
 
79865
- translatedTitle() {
79866
- if (this.resource) {
79867
- const {
79868
- i18nPrefix
79869
- } = split(this.resource);
79870
- let target;
79871
-
79872
- if (this.allSpecific) {
79873
- target = this.$t(`permissions:${i18nPrefix}.all-specific`, {
79874
- target: this.title,
79875
- interpolation: {
79876
- escapeValue: false
79877
- }
79878
- });
79879
- } else if (this.title) {
79880
- target = this.$t(`permissions:${i18nPrefix}.specific`, {
79881
- target: this.title,
79882
- interpolation: {
79883
- escapeValue: false
79884
- }
79885
- });
79886
- } else {
79887
- target = this.$t(`permissions:${i18nPrefix}.all`);
79888
- }
79889
-
79890
- return this.$t('permissions:ui.set-for', {
79891
- target: target,
79892
- interpolation: {
79893
- escapeValue: false
79894
- }
79895
- });
80142
+ getRuleTooltip(isUnknown = false, isUser) {
80143
+ if (!isUnknown) {
80144
+ return '';
79896
80145
  }
79897
80146
 
79898
- return undefined;
79899
- }
79900
-
79901
- },
79902
-
79903
- mounted() {
79904
- this.$root.$on(modalOpenEventName, ({
79905
- resource,
79906
- title,
79907
- target,
79908
- allSpecific
79909
- }) => {
79910
- this.resource = resource;
79911
- this.title = title;
79912
- this.target = target;
79913
- this.allSpecific = allSpecific;
79914
- });
79915
- },
79916
-
79917
- destroyed() {
79918
- this.$root.$off(modalOpenEventName);
79919
- },
79920
-
79921
- methods: {
79922
- onHide() {
79923
- this.clear();
79924
- },
79925
-
79926
- clear() {
79927
- this.resource = undefined;
79928
- this.title = undefined;
79929
- this.target = undefined;
80147
+ return this.$t(`permissions:ui.tooltip.unknown-context.${isUser ? 'user' : 'role'}`);
79930
80148
  }
79931
80149
 
79932
80150
  }
@@ -79936,19 +80154,22 @@ var script$r = {
79936
80154
  const __vue_script__$r = script$r;
79937
80155
 
79938
80156
  /* template */
79939
- var __vue_render__$o = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-modal',{staticClass:"overflow-hidden",attrs:{"hide-footer":"","size":"xl","title":_vm.translatedTitle,"lazy":"","scrollable":""},on:{"hide":_vm.onHide},model:{value:(_vm.showModal),callback:function ($$v) {_vm.showModal=$$v;},expression:"showModal"}},[(_vm.resource)?_c('c-permissions-form',{staticClass:"h-100",attrs:{"resource":_vm.resource,"target":_vm.target,"all-specific":_vm.allSpecific}}):_vm._e()],1)],1)};
80157
+ var __vue_render__$o = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-modal',{staticClass:"h-100 overflow-hidden",attrs:{"id":"permissions-modal","visible":_vm.showModal,"size":"xl","title":_vm.translatedTitle,"lazy":"","scrollable":"","ok-disabled":_vm.submitDisabled,"ok-title":_vm.labels.save,"cancel-title":_vm.labels.cancel,"cancel-variant":"light","body-class":"d-flex flex-column p-0"},on:{"hide":_vm.onHide,"ok":_vm.onSubmit}},[_c('b-row',{staticClass:"bg-extra-light border-bottom",attrs:{"no-gutters":""}},[_c('b-col',{staticClass:"p-3",attrs:{"lg":"4"}},[_vm._v("\n "+_vm._s(_vm.labels.edit.description)+"\n ")]),_vm._v(" "),_c('b-col',{staticClass:"d-none d-lg-block border-left p-3"},[_vm._v("\n "+_vm._s(_vm.labels.evaluate.description)+"\n ")])],1),_vm._v(" "),_c('b-row',{staticClass:"bg-extra-light",attrs:{"no-gutters":"","align-v":"stretch"}},[_c('b-col',{staticClass:"d-flex align-items-center p-3 border-bottom",attrs:{"lg":"4"}},[_c('b-form-group',{staticClass:"mb-0 w-100",attrs:{"label":_vm.labels.edit.label,"label-class":"text-primary"}},[_c('vue-select',{key:"roleID",staticClass:"h-100 bg-white",attrs:{"data-test-id":"select-user-list-roles","label":"name","clearable":false,"options":_vm.roles,"append-to-body":""},on:{"input":_vm.onRoleChange},model:{value:(_vm.currentRole),callback:function ($$v) {_vm.currentRole=$$v;},expression:"currentRole"}})],1)],1),_vm._v(" "),_vm._l((_vm.evaluate),function(e,i){return _c('b-col',{key:i,staticClass:"pointer hide-eval border-bottom d-none d-lg-flex flex-column align-items-center justify-content-center overflow-hidden border-left p-3",attrs:{"data-test-id":"icon-remove","lg":"2"},on:{"click":function($event){return _vm.onHideEval(i)}}},[_vm._l((_vm.getEvalName(e)),function(n,index){return _c('label',{key:index,staticClass:"pointer text-center text-primary text-break mb-1",attrs:{"title":n}},[_vm._v("\n "+_vm._s(n)+"\n ")])}),_vm._v(" "),_c('font-awesome-icon',{staticClass:"text-secondary rotate mt-1",attrs:{"icon":['fas', 'plus']}})],2)}),_vm._v(" "),(_vm.evaluate.length < 4)?_c('b-col',{directives:[{name:"b-modal",rawName:"v-b-modal.permissions-modal-eval",modifiers:{"permissions-modal-eval":true}}],staticClass:"d-none d-lg-flex pointer border-bottom flex-column align-items-center justify-content-center overflow-hidden border-left p-3",attrs:{"data-test-id":"icon-add"}},[_c('label',{staticClass:"pointer text-center text-primary text-break mb-1"},[_vm._v("\n "+_vm._s(_vm.labels.add.label)+"\n ")]),_vm._v(" "),_c('font-awesome-icon',{staticClass:"text-success d-block mx-auto mt-1",attrs:{"icon":['fas', 'plus']}})],1):_vm._e()],2),_vm._v(" "),(_vm.processing)?_c('div',{staticClass:"d-flex flex-column align-items-center justify-content-center h-100 py-4",staticStyle:{"min-height":"50vh"}},[_c('b-spinner'),_vm._v(" "),_c('div',[_vm._v("\n "+_vm._s(_vm.labels.loading)+"\n ")])],1):_c('b-row',{attrs:{"no-gutters":""}},[_c('b-col',{staticClass:"p-3",attrs:{"lg":"4"}},[_c('rules',{attrs:{"rules":_vm.rules},on:{"update:rules":function($event){_vm.rules=$event;}}})],1),_vm._v(" "),_vm._l((_vm.evaluate),function(e,i){return _c('b-col',{key:i,staticClass:"d-none d-lg-flex border-left p-3 bg-extra-light not-allowed",attrs:{"lg":"2"}},[_c('div',{staticClass:"d-flex flex-column align-items-center justify-content-between mt-4 w-100"},_vm._l((e.rules),function(r){return _c('h5',{key:r.operation,staticClass:"text-center mb-1 mt-2 w-100",attrs:{"title":_vm.getRuleTooltip(r.access === 'unknown-context', !!e.userID)}},[(r.access === 'unknown-context')?_c('font-awesome-icon',{staticClass:"text-secondary",attrs:{"icon":['fas', 'question']}}):(r.access === 'allow')?_c('font-awesome-icon',{staticClass:"text-success",attrs:{"icon":['fas', 'check']}}):_c('font-awesome-icon',{staticClass:"text-danger",attrs:{"icon":['fas', 'times']}})],1)}),0)])}),_vm._v(" "),_c('b-col',{staticClass:"d-none d-lg-block pt-4 border-left"})],2)],1),_vm._v(" "),_c('b-modal',{attrs:{"id":"permissions-modal-eval","title":_vm.labels.add.title,"centered":"","ok-only":"","ok-title":_vm.labels.add.save,"ok-disabled":!_vm.addEnabled},on:{"ok":_vm.onAddEval}},[_c('b-form-group',{staticClass:"mb-0",attrs:{"label":_vm.labels.add.role.label,"label-class":"text-primary"}},[_c('vue-select',{key:"roleID",staticClass:"bg-white",attrs:{"data-test-id":"select-role","options":_vm.roles,"label":"name","multiple":"","clearable":"","disabled":!!_vm.add.userID,"placeholder":_vm.labels.add.role.placeholder},model:{value:(_vm.add.roleID),callback:function ($$v) {_vm.$set(_vm.add, "roleID", $$v);},expression:"add.roleID"}})],1),_vm._v(" "),_c('b-form-group',{staticClass:"mt-3 mb-0",attrs:{"label":_vm.labels.add.user.label,"label-class":"text-primary"}},[_c('vue-select',{key:"userID",staticClass:"bg-white",attrs:{"data-test-id":"select-user","disabled":!!_vm.add.roleID.length,"options":_vm.userOptions,"get-option-label":_vm.getUserLabel,"label":"name","clearable":"","placeholder":_vm.labels.add.user.placeholder},on:{"search":_vm.searchUsers},model:{value:(_vm.add.userID),callback:function ($$v) {_vm.$set(_vm.add, "userID", $$v);},expression:"add.userID"}})],1)],1)],1)};
79940
80158
  var __vue_staticRenderFns__$o = [];
79941
80159
 
79942
80160
  /* style */
79943
- const __vue_inject_styles__$s = undefined;
80161
+ const __vue_inject_styles__$s = function (inject) {
80162
+ if (!inject) return
80163
+ inject("data-v-36f5897c_0", { source: ".not-allowed[data-v-36f5897c]{cursor:not-allowed}.bg-extra-light[data-v-36f5897c]{background-color:#f3f5f7}.pointer[data-v-36f5897c]{cursor:pointer}.rotate[data-v-36f5897c]{transform:rotate(45deg)}.hide-eval:hover .rotate[data-v-36f5897c]{color:#162425!important}", map: undefined, media: undefined })
80164
+ ,inject("data-v-36f5897c_1", { source: "#permissions-modal .v-select,#permissions-modal-eval .v-select{min-width:100%}#permissions-modal .v-select .vs__selected-options,#permissions-modal-eval .v-select .vs__selected-options{flex-wrap:wrap}", map: undefined, media: undefined });
80165
+
80166
+ };
79944
80167
  /* scoped */
79945
- const __vue_scope_id__$s = undefined;
80168
+ const __vue_scope_id__$s = "data-v-36f5897c";
79946
80169
  /* module identifier */
79947
80170
  const __vue_module_identifier__$s = undefined;
79948
80171
  /* functional template */
79949
80172
  const __vue_is_functional_template__$s = false;
79950
- /* style inject */
79951
-
79952
80173
  /* style inject SSR */
79953
80174
 
79954
80175
  /* style inject shadow dom */
@@ -79963,7 +80184,7 @@ var __vue_staticRenderFns__$o = [];
79963
80184
  __vue_is_functional_template__$s,
79964
80185
  __vue_module_identifier__$s,
79965
80186
  false,
79966
- undefined,
80187
+ createInjector,
79967
80188
  undefined,
79968
80189
  undefined
79969
80190
  );
@@ -81326,6 +81547,7 @@ const prompts = Object.freeze([
81326
81547
  ref: 'redirect',
81327
81548
  meta: { short: 'Redirect user to an outside URL' },
81328
81549
  parameters: [
81550
+ { name: 'owner', types: ['User', 'ID'], required: false },
81329
81551
  { name: 'url', types: ['String'], required: true },
81330
81552
  { name: 'delay', types: ['Integer'], meta: { description: 'Redirection delay in seconds' } },
81331
81553
  ],
@@ -81334,6 +81556,7 @@ const prompts = Object.freeze([
81334
81556
  ref: 'reroute',
81335
81557
  meta: { short: 'Redirect user to an internal application route' },
81336
81558
  parameters: [
81559
+ { name: 'owner', types: ['User', 'ID'], required: false },
81337
81560
  { name: 'name', types: ['String'], required: true },
81338
81561
  { name: 'params', types: ['KV'] },
81339
81562
  { name: 'query', types: ['KV'] },
@@ -81347,6 +81570,7 @@ const prompts = Object.freeze([
81347
81570
  webapps: ['compose'],
81348
81571
  },
81349
81572
  parameters: [
81573
+ { name: 'owner', types: ['User', 'ID'], required: false },
81350
81574
  { name: 'module', types: ['ID', 'Handle', 'ComposeModule'] },
81351
81575
  { name: 'namespace', types: ['ID', 'Handle', 'ComposeNamespace'] },
81352
81576
  { name: 'record', types: ['ID', 'ComposeRecord'] },
@@ -81362,6 +81586,7 @@ const prompts = Object.freeze([
81362
81586
  ref: 'notification',
81363
81587
  meta: { short: 'Show non-blocking message to user' },
81364
81588
  parameters: [
81589
+ { name: 'owner', types: ['User', 'ID'], required: false },
81365
81590
  { name: 'title', types: ['String'] },
81366
81591
  { name: 'message', types: ['String'], required: true },
81367
81592
  { name: 'variant', types: ['String'], meta: { visual: { input: { type: 'select', properties: { options: variants } } } } },
@@ -81372,6 +81597,7 @@ const prompts = Object.freeze([
81372
81597
  ref: 'alert',
81373
81598
  meta: { short: 'Prompt user with an alert' },
81374
81599
  parameters: [
81600
+ { name: 'owner', types: ['User', 'ID'], required: false },
81375
81601
  { name: 'title', types: ['String'] },
81376
81602
  { name: 'message', types: ['String'], required: true },
81377
81603
  { name: 'buttonLabel', types: ['String'] },
@@ -81383,6 +81609,7 @@ const prompts = Object.freeze([
81383
81609
  ref: 'choice',
81384
81610
  meta: { short: 'Prompt user with choice' },
81385
81611
  parameters: [
81612
+ { name: 'owner', types: ['User', 'ID'], required: false },
81386
81613
  { name: 'title', types: ['String'] },
81387
81614
  { name: 'message', types: ['String'], required: true },
81388
81615
  { name: 'confirmButtonLabel', types: ['String'] },
@@ -81400,6 +81627,7 @@ const prompts = Object.freeze([
81400
81627
  ref: 'composeRecordPicker',
81401
81628
  meta: { short: 'Prompt user to select a Compose Record' },
81402
81629
  parameters: [
81630
+ { name: 'owner', types: ['User', 'ID'], required: false },
81403
81631
  { name: 'title', types: ['String'] },
81404
81632
  { name: 'message', types: ['String'], required: true },
81405
81633
  { name: 'namespace', types: ['ID', 'Handle', 'ComposeNamespace'], required: true },
@@ -81416,6 +81644,7 @@ const prompts = Object.freeze([
81416
81644
  ref: 'input',
81417
81645
  meta: { short: 'Prompt user with a single input' },
81418
81646
  parameters: [
81647
+ { name: 'owner', types: ['User', 'ID'], required: false },
81419
81648
  { name: 'title', types: ['String'] },
81420
81649
  { name: 'variant', types: ['String'], meta: { visual: { input: { type: 'select', properties: { options: variants } } } } },
81421
81650
  { name: 'message', types: ['String'], required: true },
@@ -81447,6 +81676,7 @@ const prompts = Object.freeze([
81447
81676
  ref: 'options',
81448
81677
  meta: { short: 'Prompt user with options' },
81449
81678
  parameters: [
81679
+ { name: 'owner', types: ['User', 'ID'], required: false },
81450
81680
  { name: 'title', types: ['String'] },
81451
81681
  { name: 'variant', types: ['String'], meta: { visual: { input: { type: 'select', properties: { options: variants } } } } },
81452
81682
  { name: 'message', types: ['String'], required: true },
@@ -81797,17 +82027,18 @@ const __vue_script__$E = script$E;
81797
82027
  /* template */
81798
82028
  var __vue_render__$A = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"header-navigation d-flex align-items-center justify-content-between sticky-top pr-3 pl-5 "},[_c('div',{staticClass:"d-flex text-nowrap flex-grow-1 align-items-center header h-100 w-100"},[[_c('div',{staticClass:"spacer",class:{
81799
82029
  'expanded': _vm.sidebarPinned,
81800
- }})],_vm._v(" "),_c('div',{staticClass:"d-flex align-items-center ml-2 text-truncate mr-auto h-100"},[_c('h2',{staticClass:"d-none d-sm-block mb-0"},[_vm._t("title")],2)]),_vm._v(" "),_c('div',{staticClass:"ml-3"},[_vm._t("tools")],2),_vm._v(" "),(!_vm.hideAppSelector && !_vm.settings.hideAppSelector)?_c('b-button',{staticClass:"d-flex align-items-center justify-content-center text-dark border-0 nav-icon rounded-circle ml-2",attrs:{"variant":"outline-light","href":_vm.appSelectorURL,"size":"lg"}},[_c('font-awesome-icon',{staticClass:"m-0 h5",attrs:{"icon":['fas', 'grip-horizontal']}})],1):_vm._e(),_vm._v(" "),(!_vm.settings.hideHelp)?_c('b-dropdown',{staticClass:"nav-icon mx-1",attrs:{"data-test-id":"dropdown-helper","size":"lg","variant":"outline-light","toggle-class":"text-decoration-none text-dark rounded-circle border-0 w-100","menu-class":"topbar-dropdown-menu border-0 shadow-sm text-dark font-weight-bold mt-2","right":"","no-caret":""},scopedSlots:_vm._u([{key:"button-content",fn:function(){return [_c('div',{staticClass:"d-flex align-items-center justify-content-center"},[_c('font-awesome-icon',{staticClass:"m-0 h5",attrs:{"icon":['far', 'question-circle']}}),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("\n "+_vm._s(_vm.labels.helpForum)+"\n ")])],1)]},proxy:true}],null,false,1129756517)},[_vm._v(" "),_c('div',[_vm._t("help-dropdown")],2),_vm._v(" "),_vm._l((_vm.helpLinks),function(helpLink,index){return _c('b-dropdown-item',{key:index,attrs:{"href":helpLink.url,"target":helpLink.newTab ? '_blank' : ''}},[_vm._v("\n "+_vm._s(helpLink.handle)+"\n ")])}),_vm._v(" "),(!_vm.settings.hideForumLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-helper-forum","href":"https://forum.cortezaproject.org/","target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.helpForum)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.settings.hideDocumentationLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-helper-docs","href":_vm.documentationURL,"target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.helpDocumentation)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.settings.hideFeedbackLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-helper-feedback","href":"mailto:info@crust.tech","target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.helpFeedback)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.onlyVersion)?_c('b-dropdown-divider'):_vm._e(),_vm._v(" "),_c('b-dropdown-item',{staticClass:"small",attrs:{"disabled":""}},[_vm._v("\n "+_vm._s(_vm.labels.helpVersion)+"\n "),_c('br'),_vm._v("\n "+_vm._s(_vm.frontendVersion)+"\n ")])],2):_vm._e(),_vm._v(" "),(!_vm.settings.hideProfile)?_c('b-dropdown',{staticClass:"nav-user-icon",attrs:{"data-test-id":"dropdown-profile","data-v-onboarding":"profile","size":"lg","variant":"outline-light","toggle-class":"nav-icon text-decoration-none text-dark rounded-circle border","menu-class":"topbar-dropdown-menu border-0 shadow-sm text-dark font-weight-bold mt-2","right":"","no-caret":""},scopedSlots:_vm._u([{key:"button-content",fn:function(){return [_c('div',{staticClass:"d-flex align-items-center justify-content-center"},[_c('font-awesome-icon',{staticClass:"m-0 h5",attrs:{"icon":['far', 'user']}}),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("\n "+_vm._s(_vm.labels.helpForum)+"\n ")])],1)]},proxy:true}],null,false,2199786693)},[_vm._v(" "),_c('b-dropdown-text',{staticClass:"text-muted mb-2"},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsLoggedInAs)+"\n ")]),_vm._v(" "),_c('div',[_vm._t("avatar-dropdown")],2),_vm._v(" "),_vm._l((_vm.profileLinks),function(profileLink,index){return _c('b-dropdown-item',{key:index,attrs:{"href":profileLink.url,"target":profileLink.newTab ? '_blank' : ''}},[_vm._v("\n "+_vm._s(profileLink.handle)+"\n ")])}),_vm._v(" "),(!_vm.settings.hideProfileLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-profile-user","href":_vm.userProfileURL,"target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsProfile)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.settings.hideChangePasswordLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-profile-change-password","href":_vm.changePasswordURL,"target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsChangePassword)+"\n ")]):_vm._e(),_vm._v(" "),_c('b-dropdown-divider'),_vm._v(" "),_c('b-dropdown-item',{staticClass:"mt-2",attrs:{"data-test-id":"dropdown-profile-logout","href":""},on:{"click":function($event){return _vm.$auth.logout()}}},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsLogout)+"\n ")])],2):_vm._e()],2)])};
82030
+ }})],_vm._v(" "),_c('div',{staticClass:"d-flex align-items-center ml-2 text-truncate mr-auto h-100"},[_c('h2',{staticClass:"d-none d-sm-block mb-0"},[_vm._t("title")],2)]),_vm._v(" "),_c('div',{staticClass:"topbar-tools ml-3"},[_vm._t("tools")],2),_vm._v(" "),(!_vm.hideAppSelector && !_vm.settings.hideAppSelector)?_c('b-button',{staticClass:"d-flex align-items-center justify-content-center text-dark border-0 nav-icon rounded-circle ml-2",attrs:{"variant":"outline-light","href":_vm.appSelectorURL,"size":"lg"}},[_c('font-awesome-icon',{staticClass:"m-0 h5",attrs:{"icon":['fas', 'grip-horizontal']}})],1):_vm._e(),_vm._v(" "),(!_vm.settings.hideHelp)?_c('b-dropdown',{staticClass:"nav-icon mx-1",attrs:{"data-test-id":"dropdown-helper","size":"lg","variant":"outline-light","toggle-class":"text-decoration-none text-dark rounded-circle border-0 w-100","menu-class":"topbar-dropdown-menu border-0 shadow-sm text-dark font-weight-bold mt-2","right":"","no-caret":""},scopedSlots:_vm._u([{key:"button-content",fn:function(){return [_c('div',{staticClass:"d-flex align-items-center justify-content-center"},[_c('font-awesome-icon',{staticClass:"m-0 h5",attrs:{"icon":['far', 'question-circle']}}),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("\n "+_vm._s(_vm.labels.helpForum)+"\n ")])],1)]},proxy:true}],null,false,1129756517)},[_vm._v(" "),_c('div',[_vm._t("help-dropdown")],2),_vm._v(" "),_vm._l((_vm.helpLinks),function(helpLink,index){return _c('b-dropdown-item',{key:index,attrs:{"href":helpLink.url,"target":helpLink.newTab ? '_blank' : ''}},[_vm._v("\n "+_vm._s(helpLink.handle)+"\n ")])}),_vm._v(" "),(!_vm.settings.hideForumLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-helper-forum","href":"https://forum.cortezaproject.org/","target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.helpForum)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.settings.hideDocumentationLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-helper-docs","href":_vm.documentationURL,"target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.helpDocumentation)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.settings.hideFeedbackLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-helper-feedback","href":"mailto:info@crust.tech","target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.helpFeedback)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.onlyVersion)?_c('b-dropdown-divider'):_vm._e(),_vm._v(" "),_c('b-dropdown-item',{staticClass:"small",attrs:{"disabled":""}},[_vm._v("\n "+_vm._s(_vm.labels.helpVersion)+"\n "),_c('br'),_vm._v("\n "+_vm._s(_vm.frontendVersion)+"\n ")])],2):_vm._e(),_vm._v(" "),(!_vm.settings.hideProfile)?_c('b-dropdown',{staticClass:"nav-user-icon",attrs:{"data-test-id":"dropdown-profile","data-v-onboarding":"profile","size":"lg","variant":"outline-light","toggle-class":"nav-icon text-decoration-none text-dark rounded-circle border","menu-class":"topbar-dropdown-menu border-0 shadow-sm text-dark font-weight-bold mt-2","right":"","no-caret":""},scopedSlots:_vm._u([{key:"button-content",fn:function(){return [_c('div',{staticClass:"d-flex align-items-center justify-content-center"},[_c('font-awesome-icon',{staticClass:"m-0 h5",attrs:{"icon":['far', 'user']}}),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("\n "+_vm._s(_vm.labels.helpForum)+"\n ")])],1)]},proxy:true}],null,false,2199786693)},[_vm._v(" "),_c('b-dropdown-text',{staticClass:"text-muted mb-2"},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsLoggedInAs)+"\n ")]),_vm._v(" "),_c('div',[_vm._t("avatar-dropdown")],2),_vm._v(" "),_vm._l((_vm.profileLinks),function(profileLink,index){return _c('b-dropdown-item',{key:index,attrs:{"href":profileLink.url,"target":profileLink.newTab ? '_blank' : ''}},[_vm._v("\n "+_vm._s(profileLink.handle)+"\n ")])}),_vm._v(" "),(!_vm.settings.hideProfileLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-profile-user","href":_vm.userProfileURL,"target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsProfile)+"\n ")]):_vm._e(),_vm._v(" "),(!_vm.settings.hideChangePasswordLink)?_c('b-dropdown-item',{attrs:{"data-test-id":"dropdown-profile-change-password","href":_vm.changePasswordURL,"target":"_blank"}},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsChangePassword)+"\n ")]):_vm._e(),_vm._v(" "),_c('b-dropdown-divider'),_vm._v(" "),_c('b-dropdown-item',{staticClass:"mt-2",attrs:{"data-test-id":"dropdown-profile-logout","href":""},on:{"click":function($event){return _vm.$auth.logout()}}},[_vm._v("\n "+_vm._s(_vm.labels.userSettingsLogout)+"\n ")])],2):_vm._e()],2)])};
81801
82031
  var __vue_staticRenderFns__$A = [];
81802
82032
 
81803
82033
  /* style */
81804
82034
  const __vue_inject_styles__$F = function (inject) {
81805
82035
  if (!inject) return
81806
- inject("data-v-2ccaa89e_0", { source: ".icon-logo[data-v-2ccaa89e]{height:calc(64px / 2);background-repeat:no-repeat;background-position:center}.nav-icon[data-v-2ccaa89e]{width:40px;height:40px}.nav-user-icon[data-v-2ccaa89e]{width:50px;height:50px}.header-navigation[data-v-2ccaa89e]{width:100vw;height:64px;background-color:#f3f3f5!important}.header-navigation h2[data-v-2ccaa89e]{padding-left:calc(.5rem + 2px)}.topbar-dropdown-menu[data-v-2ccaa89e]{max-height:80vh;overflow-y:auto}.spacer[data-v-2ccaa89e]{min-width:0;-webkit-transition:min-width .15s ease-in-out;-moz-transition:min-width .15s ease-in-out;-o-transition:min-width .15s ease-in-out;transition:min-width .15s ease-in-out}.spacer.expanded[data-v-2ccaa89e]{min-width:calc(320px - 42px);-webkit-transition:min-width .2s ease-in-out;-moz-transition:min-width .2s ease-in-out;-o-transition:min-width .2s ease-in-out;transition:min-width .2s ease-in-out}", map: undefined, media: undefined });
82036
+ inject("data-v-13dcc283_0", { source: ".icon-logo[data-v-13dcc283]{height:calc(64px / 2);background-repeat:no-repeat;background-position:center}.nav-icon[data-v-13dcc283]{width:40px;height:40px}.nav-user-icon[data-v-13dcc283]{width:50px;height:50px}.header-navigation[data-v-13dcc283]{width:100vw;height:64px;background-color:#f3f3f5!important}.header-navigation h2[data-v-13dcc283]{padding-left:calc(.5rem + 2px)}.topbar-dropdown-menu[data-v-13dcc283]{max-height:80vh;overflow-y:auto}.spacer[data-v-13dcc283]{min-width:0;-webkit-transition:min-width .15s ease-in-out;-moz-transition:min-width .15s ease-in-out;-o-transition:min-width .15s ease-in-out;transition:min-width .15s ease-in-out}.spacer.expanded[data-v-13dcc283]{min-width:calc(320px - 42px);-webkit-transition:min-width .2s ease-in-out;-moz-transition:min-width .2s ease-in-out;-o-transition:min-width .2s ease-in-out;transition:min-width .2s ease-in-out}", map: undefined, media: undefined })
82037
+ ,inject("data-v-13dcc283_1", { source: ".topbar-tools .vue-portal-target{display:flex;align-items:center}", map: undefined, media: undefined });
81807
82038
 
81808
82039
  };
81809
82040
  /* scoped */
81810
- const __vue_scope_id__$F = "data-v-2ccaa89e";
82041
+ const __vue_scope_id__$F = "data-v-13dcc283";
81811
82042
  /* module identifier */
81812
82043
  const __vue_module_identifier__$F = undefined;
81813
82044
  /* functional template */
@@ -82816,21 +83047,10 @@ var actions = /*#__PURE__*/Object.freeze({
82816
83047
 
82817
83048
  var script$N = {
82818
83049
  props: {
82819
- toast: {
83050
+ link: {
82820
83051
  type: Object,
82821
- required: true,
82822
- default: () => ({})
82823
- }
82824
- },
82825
- methods: {
82826
- fallbackLabel(resource = '') {
82827
- if (resource.toLowerCase().startsWith('compose:record')) {
82828
- return 'Record View';
82829
- }
82830
-
82831
- return 'Link';
83052
+ required: true
82832
83053
  }
82833
-
82834
83054
  }
82835
83055
  };
82836
83056
 
@@ -82838,7 +83058,7 @@ var script$N = {
82838
83058
  const __vue_script__$N = script$N;
82839
83059
 
82840
83060
  /* template */
82841
- var __vue_render__$I = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.toast.link)?_c('a',_vm._b({domProps:{"innerHTML":_vm._s(_vm.toast.linkLabel)}},'a',_vm.toast.linkOpts,false)):(_vm.toast.routerLink)?_c('router-link',_vm._b({attrs:{"to":_vm.toast.routerLink}},'router-link',_vm.toast.linkOpts,false),[_c('span',{domProps:{"innerHTML":_vm._s(_vm.toast.linkLabel)}})]):_vm._e()],1)};
83061
+ var __vue_render__$I = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('router-link',{attrs:{"to":_vm.link}},[_vm._v("\n "+_vm._s(_vm.link.label)+"\n ")])],1)};
82842
83062
  var __vue_staticRenderFns__$I = [];
82843
83063
 
82844
83064
  /* style */
@@ -82913,7 +83133,7 @@ var script$O = {
82913
83133
  const __vue_script__$O = script$O;
82914
83134
 
82915
83135
  /* template */
82916
- var __vue_render__$J = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.toasts),function(t){return _c('b-toast',_vm._b({key:t.id,attrs:{"visible":"","title":t.payload.title,"no-close-button":!t.actions.hide,"toast-class":"overflow-unset"},on:{"hide":function($event){t.actions.hide ? t.actions.hide.cb(t) : _vm.evtSink;}}},'b-toast',t.options || {},false),[_c('b-card',{staticClass:"border-0",attrs:{"header-bg-variant":"transparent","bg-variant":"transparent","body-class":"p-0"}},[_c('b-card-text',[_vm._v("\n "+_vm._s(t.payload.notes)+"\n ")]),_vm._v(" "),(t.payload.link)?_c('b-card-text',[_c('c-toaster-link',{attrs:{"toast":t}})],1):_vm._e(),_vm._v(" "),_vm._l((_vm.extraActions(t)),function(ref){
83136
+ var __vue_render__$J = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.toasts),function(t){return _c('b-toast',_vm._b({key:t.id,attrs:{"visible":"","title":t.payload.title,"no-close-button":!t.actions.hide,"toast-class":"overflow-unset"},on:{"hide":function($event){t.actions.hide ? t.actions.hide.cb(t) : _vm.evtSink;}}},'b-toast',t.options || {},false),[_c('b-card',{staticClass:"border-0",attrs:{"header-bg-variant":"transparent","bg-variant":"transparent","body-class":"p-0"}},[_c('b-card-text',[_vm._v("\n "+_vm._s(t.payload.notes)+"\n ")]),_vm._v(" "),(t.payload.link)?_c('b-card-text',[_c('c-toaster-link',{attrs:{"link":t.payload.link}})],1):_vm._e(),_vm._v(" "),_vm._l((_vm.extraActions(t)),function(ref){
82917
83137
  var name = ref[0];
82918
83138
  var act = ref[1];
82919
83139
  return _c(_vm.actComponent(act),_vm._b({key:name,tag:"component",staticClass:"mr-1",on:{"action":function($event){act.cb ? act.cb(t, $event) : _vm.evtSink;}}},'component',act,false))})],2)],1)}),1)};
@@ -82922,7 +83142,7 @@ var __vue_staticRenderFns__$J = [];
82922
83142
  /* style */
82923
83143
  const __vue_inject_styles__$P = function (inject) {
82924
83144
  if (!inject) return
82925
- inject("data-v-09d66b04_0", { source: ".toast.overflow-unset{overflow:unset!important}", map: undefined, media: undefined });
83145
+ inject("data-v-6fbe9c62_0", { source: ".toast.overflow-unset{overflow:unset!important}", map: undefined, media: undefined });
82926
83146
 
82927
83147
  };
82928
83148
  /* scoped */
@@ -83134,7 +83354,8 @@ var script$R = {
83134
83354
  name: 'CItemPicker',
83135
83355
  components: {
83136
83356
  draggable: Draggable,
83137
- CItemPickerItem: __vue_component__$R
83357
+ CItemPickerItem: __vue_component__$R,
83358
+ CInputSearch: __vue_component__$e
83138
83359
  },
83139
83360
  props: {
83140
83361
  /**
@@ -83391,7 +83612,7 @@ var script$R = {
83391
83612
  const __vue_script__$R = script$R;
83392
83613
 
83393
83614
  /* template */
83394
- var __vue_render__$M = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"overflow-hidden d-flex flex-column w-100 vh-100"},[_c('b-card',{staticClass:"h-100",attrs:{"no-body":""}},[_c('b-card-header',{staticClass:"bg-white p-0"},[(!_vm.hideFilter)?_c('b-input-group',[_c('b-input',{staticClass:"text-truncate",attrs:{"type":"search","disabled":_vm._disabledFilter,"placeholder":_vm.labels.searchPlaceholder},model:{value:(_vm.query),callback:function ($$v) {_vm.query=(typeof $$v === 'string'? $$v.trim(): $$v);},expression:"query"}}),_vm._v(" "),_c('b-input-group-append',[_c('b-input-group-text',{staticClass:"text-primary bg-white border-left-0"},[_c('font-awesome-icon',{attrs:{"icon":['fas', 'search']}})],1)],1)],1):_vm._e()],1),_vm._v(" "),_c('b-card-body',{staticClass:"d-flex p-0"},[_c('b-card',{staticClass:"col-sm-6 col-12 h-100 p-0",attrs:{"no-body":""}},[_c('b-card-header',{staticClass:"bg-white py-2 pl-0 pr-2"},[_c('div',{staticClass:"d-flex align-items-center"},[_c('label',{staticClass:"text-primary mb-1 mt-2"},[_vm._v("\n "+_vm._s(_vm.labels.availableItems)+"\n ")]),_vm._v(" "),_c('b-button',{directives:[{name:"show",rawName:"v-show",value:(_vm.filteredAvailable.length && !_vm.disabled),expression:"filteredAvailable.length && !disabled"}],staticClass:"ml-auto px-0 text-muted",attrs:{"variant":"link"},on:{"click":function($event){return _vm.selectAll()}}},[_vm._v("\n "+_vm._s(_vm.labels.selectAllItems)+"\n ")])],1)]),_vm._v(" "),_c('b-card-body',{staticClass:"overflow-auto py-0 pl-0 pr-2"},[_c('b-list-group',{staticClass:"h-100",attrs:{"vertical":""}},[_c('draggable',{staticClass:"overflow-auto h-100",attrs:{"sort":!_vm._disabledSorting,"move":_vm._disableDragging,"draggable":".item","group":"items"},scopedSlots:_vm._u([{key:"footer",fn:function(){return [(!_vm.filteredAvailable.length && _vm.query)?_c('h6',{staticClass:"text-center my-4"},[_vm._v("\n "+_vm._s(_vm.labels.noItemsFound)+"\n ")]):_vm._e()]},proxy:true}]),model:{value:(_vm.filteredAvailable),callback:function ($$v) {_vm.filteredAvailable=$$v;},expression:"filteredAvailable"}},_vm._l((_vm.filteredAvailable),function(item){return _c('b-list-group-item',{key:item.value,staticClass:"item mb-3 border rounded",on:{"dblclick":function($event){return _vm.select(item)}}},[_c('c-item-picker-item',{attrs:{"item":item,"disabled":_vm.disabled,"disabled-dragging":_vm.disabledDragging,"disabled-sorting":_vm.disabledSorting,"hide-icons":_vm.hideIcons},on:{"select":function($event){return _vm.select(item)}},scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,slot){return {key:slot,fn:function(scope){return [_vm._t(slot,null,{"textField":_vm.textField,"disabled":_vm.disabled,"disabledDragging":_vm.disabledDragging,"disabledSorting":_vm.disabledSorting,"hideIcons":_vm.hideIcons},scope)]}}})],null,true)})],1)}),1)],1)],1)],1),_vm._v(" "),_c('b-card',{staticClass:"h-100 pl-sm-0 col-sm-6 col-12 p-0",attrs:{"no-body":""}},[_c('b-card-header',{staticClass:"bg-white py-2 pl-2 pr-0"},[_c('div',{staticClass:"d-flex align-items-center"},[_c('label',{staticClass:"text-primary mb-2 mt-1"},[_vm._v("\n "+_vm._s(_vm.labels.selectedItems)+"\n ")]),_vm._v(" "),_c('b-button',{directives:[{name:"show",rawName:"v-show",value:(_vm.filteredSelected.length && !_vm.disabled),expression:"filteredSelected.length && !disabled"}],staticClass:"ml-auto px-0 text-muted",attrs:{"variant":"link"},on:{"click":function($event){return _vm.unselectAll()}}},[_vm._v("\n "+_vm._s(_vm.labels.unselectAllItems)+"\n ")])],1)]),_vm._v(" "),_c('b-card-body',{staticClass:"overflow-auto py-0 pl-2 pr-0"},[_c('b-list-group',{staticClass:"h-100",attrs:{"vertical":""}},[_c('draggable',{staticClass:"overflow-auto h-100",attrs:{"sort":!_vm._disabledSorting,"move":_vm._disableDragging,"draggable":".item","group":"items"},scopedSlots:_vm._u([{key:"footer",fn:function(){return [(!_vm.filteredSelected.length && _vm.query)?_c('h6',{staticClass:"text-center my-4"},[_vm._v("\n "+_vm._s(_vm.labels.noItemsFound)+"\n ")]):_vm._e()]},proxy:true}]),model:{value:(_vm.filteredSelected),callback:function ($$v) {_vm.filteredSelected=$$v;},expression:"filteredSelected"}},_vm._l((_vm.filteredSelected),function(item){return _c('b-list-group-item',{key:item.value,staticClass:"item mb-3 border rounded",on:{"dblclick":function($event){return _vm.unselect(item)}}},[_c('c-item-picker-item',{attrs:{"item":item,"disabled":_vm.disabled,"disabled-dragging":_vm.disabledDragging,"disabled-sorting":_vm.disabledSorting,"hide-icons":_vm.hideIcons,"selected":""},on:{"unselect":function($event){return _vm.unselect(item)}},scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,slot){return {key:slot,fn:function(scope){return [_vm._t(slot,null,{"textField":_vm.textField,"disabled":_vm.disabled,"disabledDragging":_vm.disabledDragging,"disabledSorting":_vm.disabledSorting,"hideIcons":_vm.hideIcons},scope)]}}})],null,true)})],1)}),1)],1)],1)],1)],1)],1)],1)};
83615
+ var __vue_render__$M = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"overflow-hidden d-flex flex-column w-100 vh-100"},[_c('b-card',{staticClass:"h-100",attrs:{"no-body":""}},[_c('b-card-header',{staticClass:"bg-white p-0"},[(!_vm.hideFilter)?_c('c-input-search',{attrs:{"disabled":_vm._disabledFilter,"placeholder":_vm.labels.searchPlaceholder},model:{value:(_vm.query),callback:function ($$v) {_vm.query=(typeof $$v === 'string'? $$v.trim(): $$v);},expression:"query"}}):_vm._e()],1),_vm._v(" "),_c('b-card-body',{staticClass:"d-flex p-0"},[_c('b-card',{staticClass:"col-sm-6 col-12 h-100 p-0",attrs:{"no-body":""}},[_c('b-card-header',{staticClass:"bg-white py-2 pl-0 pr-2"},[_c('div',{staticClass:"d-flex align-items-center"},[_c('label',{staticClass:"text-primary mb-1 mt-2"},[_vm._v("\n "+_vm._s(_vm.labels.availableItems)+"\n ")]),_vm._v(" "),_c('b-button',{directives:[{name:"show",rawName:"v-show",value:(_vm.filteredAvailable.length && !_vm.disabled),expression:"filteredAvailable.length && !disabled"}],staticClass:"ml-auto px-0 text-muted",attrs:{"variant":"link"},on:{"click":function($event){return _vm.selectAll()}}},[_vm._v("\n "+_vm._s(_vm.labels.selectAllItems)+"\n ")])],1)]),_vm._v(" "),_c('b-card-body',{staticClass:"overflow-auto py-0 pl-0 pr-2"},[_c('b-list-group',{staticClass:"h-100",attrs:{"vertical":""}},[_c('draggable',{staticClass:"overflow-auto h-100",attrs:{"sort":!_vm._disabledSorting,"move":_vm._disableDragging,"draggable":".item","group":"items"},scopedSlots:_vm._u([{key:"footer",fn:function(){return [(!_vm.filteredAvailable.length && _vm.query)?_c('h6',{staticClass:"text-center my-4"},[_vm._v("\n "+_vm._s(_vm.labels.noItemsFound)+"\n ")]):_vm._e()]},proxy:true}]),model:{value:(_vm.filteredAvailable),callback:function ($$v) {_vm.filteredAvailable=$$v;},expression:"filteredAvailable"}},_vm._l((_vm.filteredAvailable),function(item){return _c('b-list-group-item',{key:item.value,staticClass:"item mb-3 border rounded",on:{"dblclick":function($event){return _vm.select(item)}}},[_c('c-item-picker-item',{attrs:{"item":item,"disabled":_vm.disabled,"disabled-dragging":_vm.disabledDragging,"disabled-sorting":_vm.disabledSorting,"hide-icons":_vm.hideIcons},on:{"select":function($event){return _vm.select(item)}},scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,slot){return {key:slot,fn:function(scope){return [_vm._t(slot,null,{"textField":_vm.textField,"disabled":_vm.disabled,"disabledDragging":_vm.disabledDragging,"disabledSorting":_vm.disabledSorting,"hideIcons":_vm.hideIcons},scope)]}}})],null,true)})],1)}),1)],1)],1)],1),_vm._v(" "),_c('b-card',{staticClass:"h-100 pl-sm-0 col-sm-6 col-12 p-0",attrs:{"no-body":""}},[_c('b-card-header',{staticClass:"bg-white py-2 pl-2 pr-0"},[_c('div',{staticClass:"d-flex align-items-center"},[_c('label',{staticClass:"text-primary mb-2 mt-1"},[_vm._v("\n "+_vm._s(_vm.labels.selectedItems)+"\n ")]),_vm._v(" "),_c('b-button',{directives:[{name:"show",rawName:"v-show",value:(_vm.filteredSelected.length && !_vm.disabled),expression:"filteredSelected.length && !disabled"}],staticClass:"ml-auto px-0 text-muted",attrs:{"variant":"link"},on:{"click":function($event){return _vm.unselectAll()}}},[_vm._v("\n "+_vm._s(_vm.labels.unselectAllItems)+"\n ")])],1)]),_vm._v(" "),_c('b-card-body',{staticClass:"overflow-auto py-0 pl-2 pr-0"},[_c('b-list-group',{staticClass:"h-100",attrs:{"vertical":""}},[_c('draggable',{staticClass:"overflow-auto h-100",attrs:{"sort":!_vm._disabledSorting,"move":_vm._disableDragging,"draggable":".item","group":"items"},scopedSlots:_vm._u([{key:"footer",fn:function(){return [(!_vm.filteredSelected.length && _vm.query)?_c('h6',{staticClass:"text-center my-4"},[_vm._v("\n "+_vm._s(_vm.labels.noItemsFound)+"\n ")]):_vm._e()]},proxy:true}]),model:{value:(_vm.filteredSelected),callback:function ($$v) {_vm.filteredSelected=$$v;},expression:"filteredSelected"}},_vm._l((_vm.filteredSelected),function(item){return _c('b-list-group-item',{key:item.value,staticClass:"item mb-3 border rounded",on:{"dblclick":function($event){return _vm.unselect(item)}}},[_c('c-item-picker-item',{attrs:{"item":item,"disabled":_vm.disabled,"disabled-dragging":_vm.disabledDragging,"disabled-sorting":_vm.disabledSorting,"hide-icons":_vm.hideIcons,"selected":""},on:{"unselect":function($event){return _vm.unselect(item)}},scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,slot){return {key:slot,fn:function(scope){return [_vm._t(slot,null,{"textField":_vm.textField,"disabled":_vm.disabled,"disabledDragging":_vm.disabledDragging,"disabledSorting":_vm.disabledSorting,"hideIcons":_vm.hideIcons},scope)]}}})],null,true)})],1)}),1)],1)],1)],1)],1)],1)],1)};
83395
83616
  var __vue_staticRenderFns__$M = [];
83396
83617
 
83397
83618
  /* style */
@@ -83482,61 +83703,18 @@ const __vue_script__$S = script$S;
83482
83703
 
83483
83704
  //
83484
83705
  var script$T = {
83485
- extends: __vue_component__$T,
83486
-
83487
- data() {
83488
- return {
83489
- chart: undefined,
83490
- plugins: [Funnel, colorschemes]
83491
- };
83492
- },
83493
-
83494
- computed: {
83495
- localDataframe() {
83496
- return this.dataframes[0];
83497
- },
83498
-
83499
- size() {
83500
- return this.displayElement ? this.displayElement.meta.size || 100 : 100;
83501
- }
83502
-
83503
- },
83504
- watch: {
83505
- dataframes: {
83506
- deep: true,
83507
-
83508
- handler(dataframes = []) {
83509
- if (dataframes.length) {
83510
- this.$nextTick(() => {
83511
- this.renderChart();
83512
- });
83513
- }
83514
- }
83515
-
83516
- },
83517
- size: {
83518
- immediate: true,
83519
- deep: true,
83520
-
83521
- handler() {
83522
- this.$nextTick(() => {
83523
- this.renderChart();
83524
- });
83525
- }
83526
-
83706
+ props: {
83707
+ chart: {
83708
+ type: shared.Chart,
83709
+ required: true
83527
83710
  }
83528
83711
  },
83529
- methods: {
83530
- renderChart() {
83531
- if (this.chart) {
83532
- this.chart.destroy();
83533
- }
83534
-
83535
- const ctx = this.$refs.chart.getContext('2d');
83536
- const chartConfig = this.options.getChartConfiguration(this.dataframes);
83537
- this.chart = new Chart(ctx, { ...chartConfig,
83538
- plugins: this.plugins
83539
- });
83712
+ computed: {
83713
+ theme() {
83714
+ const {
83715
+ darkMode
83716
+ } = this.chart || {};
83717
+ return darkMode ? 'dark' : 'light';
83540
83718
  }
83541
83719
 
83542
83720
  }
@@ -83546,7 +83724,7 @@ var script$T = {
83546
83724
  const __vue_script__$T = script$T;
83547
83725
 
83548
83726
  /* template */
83549
- var __vue_render__$N = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"position-relative h-100 w-100 p-2"},[_c('canvas',{ref:"chart"})])};
83727
+ var __vue_render__$N = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('e-charts',{staticClass:"w-100 h-100",attrs:{"option":_vm.chart,"theme":_vm.theme,"autoresize":""}})};
83550
83728
  var __vue_staticRenderFns__$N = [];
83551
83729
 
83552
83730
  /* style */
@@ -83581,80 +83759,33 @@ var __vue_staticRenderFns__$N = [];
83581
83759
  //
83582
83760
  var script$U = {
83583
83761
  extends: __vue_component__$T,
83762
+ title: 'CReportChart',
83763
+ components: {
83764
+ CChart: __vue_component__$U
83765
+ },
83584
83766
 
83585
83767
  data() {
83586
83768
  return {
83587
- vvb: ['0', '0', '0', '0']
83769
+ chart: undefined
83588
83770
  };
83589
83771
  },
83590
83772
 
83591
- computed: {
83592
- viewbox() {
83593
- return this.vvb.join(' ');
83594
- },
83595
-
83596
- style() {
83597
- return {
83598
- fill: this.options.color || '#000000',
83599
- backgroundColor: this.options.backgroundColor || '#ffffff'
83600
- };
83601
- },
83602
-
83603
- value() {
83604
- if (this.dataframes.length) {
83605
- const {
83606
- rows = [],
83607
- columns = []
83608
- } = this.dataframes[0];
83609
-
83610
- if (columns.length) {
83611
- const columnIndex = columns.findIndex(({
83612
- name
83613
- }) => name === this.options.valueColumn);
83614
-
83615
- if (rows.length) {
83616
- return rows[0] ? rows[0][columnIndex] || '' : '';
83617
- }
83618
- }
83619
- }
83620
-
83621
- return '';
83622
- },
83623
-
83624
- displayedMetric() {
83625
- const {
83626
- prefix = '',
83627
- suffix = ''
83628
- } = this.options;
83629
-
83630
- if (this.value) {
83631
- return `${prefix}${this.value}${suffix}`;
83632
- }
83633
-
83634
- return '';
83635
- }
83636
-
83637
- },
83638
83773
  watch: {
83639
- value: {
83774
+ dataframes: {
83775
+ deep: true,
83640
83776
  immediate: true,
83641
- handler: function () {
83642
- this.update();
83777
+
83778
+ handler() {
83779
+ this.$nextTick(() => {
83780
+ this.renderChart();
83781
+ });
83643
83782
  }
83783
+
83644
83784
  }
83645
83785
  },
83646
83786
  methods: {
83647
- update() {
83648
- this.$nextTick(function () {
83649
- const {
83650
- width,
83651
- height
83652
- } = this.$refs.metricItem.getBBox();
83653
- const tmp = [...this.vvb];
83654
- tmp[2] = parseInt(Math.ceil(width));
83655
- tmp[3] = parseInt(Math.ceil(height));
83656
- this.vvb = tmp;
83657
- });
83787
+ renderChart() {
83788
+ this.chart = this.options.getChartConfiguration(this.dataframes);
83658
83789
  }
83659
83790
 
83660
83791
  }
@@ -83664,7 +83795,7 @@ var script$U = {
83664
83795
  const __vue_script__$U = script$U;
83665
83796
 
83666
83797
  /* template */
83667
- var __vue_render__$O = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.options)?_c('div',{staticClass:"d-flex align-items-center justify-content-center overflow-hidden h-100 px-2 rounded",style:(_vm.style)},[_c('svg',{staticClass:"h-100 w-100 align-items-end d-flex",attrs:{"viewBox":_vm.viewbox,"width":"100%","height":"100%"}},[_c('text',{ref:"metricItem",attrs:{"y":"50%","x":"50%","text-anchor":"middle","dominant-baseline":"central","text-rendering":"geometricPrecision"}},[_vm._v("\n "+_vm._s(_vm.displayedMetric)+"\n ")])])]):_vm._e()};
83798
+ var __vue_render__$O = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.chart)?_c('c-chart',{staticClass:"p-1",attrs:{"chart":_vm.chart}}):_vm._e()};
83668
83799
  var __vue_staticRenderFns__$O = [];
83669
83800
 
83670
83801
  /* style */
@@ -83700,6 +83831,124 @@ var __vue_staticRenderFns__$O = [];
83700
83831
  var script$V = {
83701
83832
  extends: __vue_component__$T,
83702
83833
 
83834
+ data() {
83835
+ return {
83836
+ vvb: ['0', '0', '0', '0']
83837
+ };
83838
+ },
83839
+
83840
+ computed: {
83841
+ viewbox() {
83842
+ return this.vvb.join(' ');
83843
+ },
83844
+
83845
+ style() {
83846
+ return {
83847
+ fill: this.options.color || '#000000',
83848
+ backgroundColor: this.options.backgroundColor || '#ffffff'
83849
+ };
83850
+ },
83851
+
83852
+ value() {
83853
+ if (this.dataframes.length) {
83854
+ const {
83855
+ rows = [],
83856
+ columns = []
83857
+ } = this.dataframes[0];
83858
+
83859
+ if (columns.length) {
83860
+ const columnIndex = columns.findIndex(({
83861
+ name
83862
+ }) => name === this.options.valueColumn);
83863
+
83864
+ if (rows.length) {
83865
+ return rows[0] ? rows[0][columnIndex] || '' : '';
83866
+ }
83867
+ }
83868
+ }
83869
+
83870
+ return '';
83871
+ },
83872
+
83873
+ displayedMetric() {
83874
+ const {
83875
+ prefix = '',
83876
+ suffix = ''
83877
+ } = this.options;
83878
+
83879
+ if (this.value) {
83880
+ return `${prefix}${this.value}${suffix}`;
83881
+ }
83882
+
83883
+ return '';
83884
+ }
83885
+
83886
+ },
83887
+ watch: {
83888
+ value: {
83889
+ immediate: true,
83890
+ handler: function () {
83891
+ this.update();
83892
+ }
83893
+ }
83894
+ },
83895
+ methods: {
83896
+ update() {
83897
+ this.$nextTick(function () {
83898
+ const {
83899
+ width,
83900
+ height
83901
+ } = this.$refs.metricItem.getBBox();
83902
+ const tmp = [...this.vvb];
83903
+ tmp[2] = parseInt(Math.ceil(width));
83904
+ tmp[3] = parseInt(Math.ceil(height));
83905
+ this.vvb = tmp;
83906
+ });
83907
+ }
83908
+
83909
+ }
83910
+ };
83911
+
83912
+ /* script */
83913
+ const __vue_script__$V = script$V;
83914
+
83915
+ /* template */
83916
+ var __vue_render__$P = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.options)?_c('div',{staticClass:"d-flex align-items-center justify-content-center overflow-hidden h-100 px-2 rounded",style:(_vm.style)},[_c('svg',{staticClass:"h-100 w-100 align-items-end d-flex",attrs:{"viewBox":_vm.viewbox,"width":"100%","height":"100%"}},[_c('text',{ref:"metricItem",attrs:{"y":"50%","x":"50%","text-anchor":"middle","dominant-baseline":"central","text-rendering":"geometricPrecision"}},[_vm._v("\n "+_vm._s(_vm.displayedMetric)+"\n ")])])]):_vm._e()};
83917
+ var __vue_staticRenderFns__$P = [];
83918
+
83919
+ /* style */
83920
+ const __vue_inject_styles__$W = undefined;
83921
+ /* scoped */
83922
+ const __vue_scope_id__$W = undefined;
83923
+ /* module identifier */
83924
+ const __vue_module_identifier__$W = undefined;
83925
+ /* functional template */
83926
+ const __vue_is_functional_template__$W = false;
83927
+ /* style inject */
83928
+
83929
+ /* style inject SSR */
83930
+
83931
+ /* style inject shadow dom */
83932
+
83933
+
83934
+
83935
+ const __vue_component__$W = /*#__PURE__*/normalizeComponent(
83936
+ { render: __vue_render__$P, staticRenderFns: __vue_staticRenderFns__$P },
83937
+ __vue_inject_styles__$W,
83938
+ __vue_script__$V,
83939
+ __vue_scope_id__$W,
83940
+ __vue_is_functional_template__$W,
83941
+ __vue_module_identifier__$W,
83942
+ false,
83943
+ undefined,
83944
+ undefined,
83945
+ undefined
83946
+ );
83947
+
83948
+ //
83949
+ var script$W = {
83950
+ extends: __vue_component__$T,
83951
+
83703
83952
  data() {
83704
83953
  return {
83705
83954
  sort: {
@@ -83836,11 +84085,12 @@ var script$V = {
83836
84085
  const hSeanFrames = {};
83837
84086
  const outHeader = [...selectedCols].map(index => {
83838
84087
  const column = frame.columns[index];
84088
+ const columnName = column ? column.name : '';
83839
84089
  return {
83840
84090
  column,
83841
84091
  meta: {
83842
84092
  ref: frame.ref,
83843
- sortKey: isLocal ? column.name : `${frame.ref}.${column.name}`
84093
+ sortKey: isLocal ? columnName : `${frame.ref}.${columnName}`
83844
84094
  }
83845
84095
  };
83846
84096
  });
@@ -83868,7 +84118,7 @@ var script$V = {
83868
84118
  // const refColumnIndexes = (this.options.columns[rf.ref] || []).map(({ name }) => {
83869
84119
  // return frame.columns.findIndex(fc => fc.name === name)
83870
84120
  // })
83871
- const aux = this.tabelifyFrame(rf, Math.max(rf.rows.length)); // Optionally append header
84121
+ const aux = this.tabelifyFrame(rf); // Optionally append header
83872
84122
 
83873
84123
  if (!hSeanFrames[rf.ref]) {
83874
84124
  const x = [...aux.header];
@@ -83901,7 +84151,10 @@ var script$V = {
83901
84151
  };
83902
84152
  }
83903
84153
 
83904
- row[0].separator = true;
84154
+ if (row.length) {
84155
+ row[0].separator = true;
84156
+ }
84157
+
83905
84158
  const merged = this.mergeRows(auxRows).pop();
83906
84159
  row.push(...merged[0]);
83907
84160
  outRows.push(row);
@@ -83913,7 +84166,6 @@ var script$V = {
83913
84166
 
83914
84167
  return {
83915
84168
  rows: outRows,
83916
- maxSize,
83917
84169
  header: outHeader,
83918
84170
  colgroups: outColgroups
83919
84171
  };
@@ -84068,43 +84320,43 @@ var script$V = {
84068
84320
  };
84069
84321
 
84070
84322
  /* script */
84071
- const __vue_script__$V = script$V;
84323
+ const __vue_script__$W = script$W;
84072
84324
 
84073
84325
  /* template */
84074
- var __vue_render__$P = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{staticClass:"h-100 rounded-0",attrs:{"no-body":""}},[_c('b-table-simple',{staticClass:"flex-grow-1 mh-100 mb-0",attrs:{"table-variant":_vm.options.tableVariant,"dark":_vm.options.dark,"bordered":_vm.options.bordered,"borderless":_vm.options.borderless,"outlined":_vm.options.outlined,"striped":_vm.options.striped,"responsive":_vm.options.responsive,"fixed":_vm.options.fixed,"hover":_vm.options.hover,"small":_vm.options.small,"no-border-collapse":_vm.options.noCollapse,"sticky-header":""}},[_vm._l((_vm.tabelify.colgroups),function(cg,i){return _c('colgroup',{key:i,class:{ local: cg.isLocal, foreign: !cg.isLocal },attrs:{"span":cg.size}})}),_vm._v(" "),_c('b-thead',{attrs:{"head-variant":_vm.options.headVariant}},[(_vm.dataframes.length > 1)?_c('b-tr',_vm._l((_vm.tabelify.header),function(c,i){return _c('b-th',_vm._b({key:i,staticClass:"border-0"},'b-th',c.column.attrs || {},false),[(c.sourceName)?_c('p',{staticClass:"m-0"},[_vm._v("\n "+_vm._s(c.sourceName)+"\n ")]):_vm._e()])}),1):_vm._e(),_vm._v(" "),_c('b-tr',_vm._l((_vm.tabelify.header),function(c,i){return _c('b-th',{key:i,staticClass:"border-0",class:{ 'pointer': !c.meta.sortKey.includes('.') },on:{"click":function($event){return _vm.handleSort(c.meta.sortKey)}}},[_c('div',{staticClass:"d-flex align-items-center"},[_c('div',{staticClass:"d-flex text-nowrap"},[_vm._v("\n "+_vm._s(c.column.label)+"\n ")]),_vm._v(" "),(!c.meta.sortKey.includes('.'))?_c('font-awesome-layers',{staticClass:"ml-2"},[_c('font-awesome-icon',{staticClass:"mb-1",style:({
84326
+ var __vue_render__$Q = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{staticClass:"h-100 rounded-0",attrs:{"no-body":""}},[_c('b-table-simple',{staticClass:"flex-grow-1 mh-100 mb-0",attrs:{"table-variant":_vm.options.tableVariant,"dark":_vm.options.dark,"bordered":_vm.options.bordered,"borderless":_vm.options.borderless,"outlined":_vm.options.outlined,"striped":_vm.options.striped,"responsive":_vm.options.responsive,"fixed":_vm.options.fixed,"hover":_vm.options.hover,"small":_vm.options.small,"no-border-collapse":_vm.options.noCollapse,"sticky-header":""}},[_vm._l((_vm.tabelify.colgroups),function(cg,i){return _c('colgroup',{key:i,class:{ local: cg.isLocal, foreign: !cg.isLocal },attrs:{"span":cg.size}})}),_vm._v(" "),_c('b-thead',{attrs:{"head-variant":_vm.options.headVariant}},[(_vm.dataframes.length > 1)?_c('b-tr',_vm._l((_vm.tabelify.header),function(c,i){return _c('b-th',_vm._b({key:i,staticClass:"border-0"},'b-th',c.column ? c.column.attrs : {},false),[(c.sourceName)?_c('p',{staticClass:"m-0"},[_vm._v("\n "+_vm._s(c.sourceName)+"\n ")]):_vm._e()])}),1):_vm._e(),_vm._v(" "),_c('b-tr',_vm._l((_vm.tabelify.header),function(c,i){return _c('b-th',{key:i,staticClass:"border-0",class:{ 'pointer': !c.meta.sortKey.includes('.') },on:{"click":function($event){return _vm.handleSort(c.meta.sortKey)}}},[_c('div',{staticClass:"d-flex align-items-center"},[(c.column ? c.column.label : '')?_c('div',{staticClass:"d-flex text-nowrap"},[_vm._v("\n "+_vm._s(c.column.label)+"\n ")]):_vm._e(),_vm._v(" "),(!c.meta.sortKey.includes('.'))?_c('font-awesome-layers',{staticClass:"ml-2"},[_c('font-awesome-icon',{staticClass:"mb-1",style:({
84075
84327
  color: _vm.sort.field === c.meta.sortKey && !_vm.sort.descending ? 'black' : 'grey',
84076
84328
  }),attrs:{"icon":['fas', 'angle-up']}}),_vm._v(" "),_c('font-awesome-icon',{staticClass:"mt-1",style:({
84077
84329
  color: _vm.sort.field === c.meta.sortKey && _vm.sort.descending ? 'black' : 'grey',
84078
84330
  }),attrs:{"icon":['fas', 'angle-down']}})],1):_vm._e()],1)])}),1)],1),_vm._v(" "),_c('b-tbody',{staticClass:"h-100"},_vm._l((_vm.tabelify.rows),function(r,i){return _c('b-tr',{key:i,class:{
84079
84331
  separator: !!(r[0] || {}).separator,
84080
84332
  }},_vm._l((r),function(c,j){return _c('b-td',_vm._b({key:j},'b-td',c.attrs || {},false),[_vm._v("\n "+_vm._s(c.value)+"\n ")])}),1)}),1)],2),_vm._v(" "),_c('b-card-footer',{staticClass:"d-flex p-1 rounded-0"},[_c('b-button-group',{staticClass:"ml-auto"},[_c('b-button',{staticClass:"d-flex align-items-center text-dark px-1",attrs:{"disabled":!_vm.hasPrevPage,"variant":"link"},on:{"click":function($event){return _vm.goToPage()}}},[_c('font-awesome-icon',{attrs:{"icon":['fas', 'angle-double-left']}})],1),_vm._v(" "),_c('b-button',{staticClass:"d-flex align-items-center text-dark",attrs:{"disabled":!_vm.hasPrevPage,"variant":"link"},on:{"click":function($event){return _vm.goToPage('prevPage')}}},[_c('font-awesome-icon',{staticClass:"mr-1",attrs:{"icon":['fas', 'angle-left']}}),_vm._v("\n "+_vm._s(_vm.labels.previous)+"\n ")],1),_vm._v(" "),_c('b-button',{staticClass:"d-flex align-items-center text-dark",attrs:{"disabled":!_vm.hasNextPage,"variant":"link"},on:{"click":function($event){return _vm.goToPage('nextPage')}}},[_vm._v("\n "+_vm._s(_vm.labels.next)+"\n "),_c('font-awesome-icon',{staticClass:"ml-1",attrs:{"icon":['fas', 'angle-right']}})],1)],1)],1)],1)};
84081
- var __vue_staticRenderFns__$P = [];
84333
+ var __vue_staticRenderFns__$Q = [];
84082
84334
 
84083
84335
  /* style */
84084
- const __vue_inject_styles__$W = function (inject) {
84336
+ const __vue_inject_styles__$X = function (inject) {
84085
84337
  if (!inject) return
84086
- inject("data-v-54580af2_0", { source: ".foreign[data-v-54580af2]{border:1px solid rgba(22,36,37,.8);border-top:0;border-bottom:0}.separator[data-v-54580af2]{border-top:2px solid rgba(22,36,37,.5)}.card-rounded[data-v-54580af2]{border-radius:1rem 1rem 0 0}", map: undefined, media: undefined });
84338
+ inject("data-v-1a305c88_0", { source: ".foreign[data-v-1a305c88]{border:1px solid rgba(22,36,37,.8);border-top:0;border-bottom:0}.separator[data-v-1a305c88]{border-top:2px solid rgba(22,36,37,.5)}.card-rounded[data-v-1a305c88]{border-radius:1rem 1rem 0 0}", map: undefined, media: undefined });
84087
84339
 
84088
84340
  };
84089
84341
  /* scoped */
84090
- const __vue_scope_id__$W = "data-v-54580af2";
84342
+ const __vue_scope_id__$X = "data-v-1a305c88";
84091
84343
  /* module identifier */
84092
- const __vue_module_identifier__$W = undefined;
84344
+ const __vue_module_identifier__$X = undefined;
84093
84345
  /* functional template */
84094
- const __vue_is_functional_template__$W = false;
84346
+ const __vue_is_functional_template__$X = false;
84095
84347
  /* style inject SSR */
84096
84348
 
84097
84349
  /* style inject shadow dom */
84098
84350
 
84099
84351
 
84100
84352
 
84101
- const __vue_component__$W = /*#__PURE__*/normalizeComponent(
84102
- { render: __vue_render__$P, staticRenderFns: __vue_staticRenderFns__$P },
84103
- __vue_inject_styles__$W,
84104
- __vue_script__$V,
84105
- __vue_scope_id__$W,
84106
- __vue_is_functional_template__$W,
84107
- __vue_module_identifier__$W,
84353
+ const __vue_component__$X = /*#__PURE__*/normalizeComponent(
84354
+ { render: __vue_render__$Q, staticRenderFns: __vue_staticRenderFns__$Q },
84355
+ __vue_inject_styles__$X,
84356
+ __vue_script__$W,
84357
+ __vue_scope_id__$X,
84358
+ __vue_is_functional_template__$X,
84359
+ __vue_module_identifier__$X,
84108
84360
  false,
84109
84361
  createInjector,
84110
84362
  undefined,
@@ -84112,25 +84364,25 @@ var __vue_staticRenderFns__$P = [];
84112
84364
  );
84113
84365
 
84114
84366
  //
84115
- var script$W = {
84367
+ var script$X = {
84116
84368
  extends: __vue_component__$T
84117
84369
  };
84118
84370
 
84119
84371
  /* script */
84120
- const __vue_script__$W = script$W;
84372
+ const __vue_script__$X = script$X;
84121
84373
 
84122
84374
  /* template */
84123
- var __vue_render__$Q = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.options)?_c('div',{staticClass:"p-2",domProps:{"innerHTML":_vm._s(_vm.options.value)}}):_vm._e()};
84124
- var __vue_staticRenderFns__$Q = [];
84375
+ var __vue_render__$R = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.options)?_c('div',{staticClass:"p-2",domProps:{"innerHTML":_vm._s(_vm.options.value)}}):_vm._e()};
84376
+ var __vue_staticRenderFns__$R = [];
84125
84377
 
84126
84378
  /* style */
84127
- const __vue_inject_styles__$X = undefined;
84379
+ const __vue_inject_styles__$Y = undefined;
84128
84380
  /* scoped */
84129
- const __vue_scope_id__$X = undefined;
84381
+ const __vue_scope_id__$Y = undefined;
84130
84382
  /* module identifier */
84131
- const __vue_module_identifier__$X = undefined;
84383
+ const __vue_module_identifier__$Y = undefined;
84132
84384
  /* functional template */
84133
- const __vue_is_functional_template__$X = false;
84385
+ const __vue_is_functional_template__$Y = false;
84134
84386
  /* style inject */
84135
84387
 
84136
84388
  /* style inject SSR */
@@ -84139,13 +84391,358 @@ var __vue_staticRenderFns__$Q = [];
84139
84391
 
84140
84392
 
84141
84393
 
84142
- const __vue_component__$X = /*#__PURE__*/normalizeComponent(
84143
- { render: __vue_render__$Q, staticRenderFns: __vue_staticRenderFns__$Q },
84144
- __vue_inject_styles__$X,
84145
- __vue_script__$W,
84146
- __vue_scope_id__$X,
84147
- __vue_is_functional_template__$X,
84148
- __vue_module_identifier__$X,
84394
+ const __vue_component__$Y = /*#__PURE__*/normalizeComponent(
84395
+ { render: __vue_render__$R, staticRenderFns: __vue_staticRenderFns__$R },
84396
+ __vue_inject_styles__$Y,
84397
+ __vue_script__$X,
84398
+ __vue_scope_id__$Y,
84399
+ __vue_is_functional_template__$Y,
84400
+ __vue_module_identifier__$Y,
84401
+ false,
84402
+ undefined,
84403
+ undefined,
84404
+ undefined
84405
+ );
84406
+
84407
+ //
84408
+ var script$Y = {
84409
+ components: {
84410
+ VueSelect
84411
+ },
84412
+ props: {
84413
+ value: {
84414
+ type: String,
84415
+ default: ''
84416
+ },
84417
+ options: {
84418
+ type: Array,
84419
+ required: true
84420
+ },
84421
+ placeholder: {
84422
+ type: String,
84423
+ default: ''
84424
+ },
84425
+ // ID of sensitivityLevel with the maximum allowed level
84426
+ maxLevel: {
84427
+ type: String,
84428
+ default: undefined
84429
+ },
84430
+ disabled: {
84431
+ type: Boolean,
84432
+ default: false
84433
+ }
84434
+ },
84435
+ computed: {
84436
+ _value() {
84437
+ return this.value === NoID ? undefined : this.value;
84438
+ },
84439
+
84440
+ _disabled() {
84441
+ return this.disabled || this.maxLevel === NoID;
84442
+ },
84443
+
84444
+ sensitivityLevels() {
84445
+ if (this.maxLevel === NoID) {
84446
+ return [];
84447
+ }
84448
+
84449
+ if (this.maxLevel) {
84450
+ const maxLevelConnection = this.options.find(({
84451
+ sensitivityLevelID
84452
+ }) => sensitivityLevelID === this.maxLevel);
84453
+
84454
+ if (maxLevelConnection) {
84455
+ return this.options.filter(({
84456
+ level
84457
+ }) => level <= maxLevelConnection.level);
84458
+ }
84459
+ }
84460
+
84461
+ return this.options;
84462
+ }
84463
+
84464
+ },
84465
+ watch: {
84466
+ // If sensitivityLevels change because of maxLevel change, then assert if value is still allowed, otherwise reset it
84467
+ sensitivityLevels: {
84468
+ immediate: true,
84469
+
84470
+ handler() {
84471
+ const isValueCompatible = this.sensitivityLevels.some(({
84472
+ sensitivityLevelID
84473
+ }) => sensitivityLevelID === this.value);
84474
+
84475
+ if (!isValueCompatible) {
84476
+ this.$emit('input', NoID);
84477
+ }
84478
+ }
84479
+
84480
+ }
84481
+ },
84482
+ methods: {
84483
+ getLabel({
84484
+ handle,
84485
+ meta = {}
84486
+ }) {
84487
+ return meta.name || handle;
84488
+ },
84489
+
84490
+ onInput(event) {
84491
+ this.$emit('input', event ? event : NoID);
84492
+ }
84493
+
84494
+ }
84495
+ };
84496
+
84497
+ /* script */
84498
+ const __vue_script__$Y = script$Y;
84499
+
84500
+ /* template */
84501
+ var __vue_render__$S = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('vue-select',{key:"type",staticClass:"bg-white",attrs:{"value":_vm._value,"disabled":_vm._disabled,"options":_vm.sensitivityLevels,"get-option-label":_vm.getLabel,"placeholder":_vm.placeholder,"reduce":function (l) { return l.sensitivityLevelID; },"append-to-body":""},on:{"input":_vm.onInput}})};
84502
+ var __vue_staticRenderFns__$S = [];
84503
+
84504
+ /* style */
84505
+ const __vue_inject_styles__$Z = undefined;
84506
+ /* scoped */
84507
+ const __vue_scope_id__$Z = undefined;
84508
+ /* module identifier */
84509
+ const __vue_module_identifier__$Z = undefined;
84510
+ /* functional template */
84511
+ const __vue_is_functional_template__$Z = false;
84512
+ /* style inject */
84513
+
84514
+ /* style inject SSR */
84515
+
84516
+ /* style inject shadow dom */
84517
+
84518
+
84519
+
84520
+ const __vue_component__$Z = /*#__PURE__*/normalizeComponent(
84521
+ { render: __vue_render__$S, staticRenderFns: __vue_staticRenderFns__$S },
84522
+ __vue_inject_styles__$Z,
84523
+ __vue_script__$Y,
84524
+ __vue_scope_id__$Z,
84525
+ __vue_is_functional_template__$Z,
84526
+ __vue_module_identifier__$Z,
84527
+ false,
84528
+ undefined,
84529
+ undefined,
84530
+ undefined
84531
+ );
84532
+
84533
+ //
84534
+ var script$Z = {
84535
+ name: 'ResourceList',
84536
+ components: {
84537
+ CInputSearch: __vue_component__$e
84538
+ },
84539
+ props: {
84540
+ primaryKey: {
84541
+ type: String,
84542
+ required: true
84543
+ },
84544
+ filter: {
84545
+ type: Object,
84546
+ required: true
84547
+ },
84548
+ sorting: {
84549
+ type: Object,
84550
+ required: true
84551
+ },
84552
+ pagination: {
84553
+ type: Object,
84554
+ required: true
84555
+ },
84556
+ fields: {
84557
+ type: Array,
84558
+ required: true
84559
+ },
84560
+ // Promise that resolves with an array
84561
+ items: {
84562
+ type: Function,
84563
+ required: true
84564
+ },
84565
+ hideSearch: {
84566
+ type: Boolean
84567
+ },
84568
+ hideTotal: {
84569
+ type: Boolean
84570
+ },
84571
+ hidePagination: {
84572
+ type: Boolean
84573
+ },
84574
+ // Are rows clickable
84575
+ clickable: {
84576
+ type: Boolean,
84577
+ default: false
84578
+ },
84579
+ selectable: {
84580
+ type: Boolean,
84581
+ default: false
84582
+ },
84583
+ isItemSelectable: {
84584
+ type: Function,
84585
+ default: () => true
84586
+ },
84587
+ rowClass: {
84588
+ type: Function,
84589
+ default: () => {}
84590
+ },
84591
+ translations: {
84592
+ type: Object,
84593
+ required: true
84594
+ },
84595
+ queryField: {
84596
+ type: String,
84597
+ default: 'query'
84598
+ }
84599
+ },
84600
+
84601
+ data() {
84602
+ return {
84603
+ selected: [],
84604
+ selectableItemIDs: []
84605
+ };
84606
+ },
84607
+
84608
+ computed: {
84609
+ _fields() {
84610
+ const select = this.selectable ? [{
84611
+ key: 'select',
84612
+ label: '',
84613
+ thStyle: 'width: 0; white-space: nowrap;'
84614
+ }] : [];
84615
+ return [...select, ...this.fields].map(f => {
84616
+ return { ...f,
84617
+ thClass: `${f.thClass || 'border-0'}`
84618
+ };
84619
+ });
84620
+ },
84621
+
84622
+ customFieldSlots() {
84623
+ return [...Object.keys(this.$slots), ...Object.keys(this.$scopedSlots)].filter(s => s !== 'header');
84624
+ },
84625
+
84626
+ disableSelectAll() {
84627
+ return !this.selectableItemIDs.length;
84628
+ },
84629
+
84630
+ allRowsSelected() {
84631
+ return this.selected.length === this.selectableItemIDs.length;
84632
+ },
84633
+
84634
+ getPagination() {
84635
+ const {
84636
+ page = 1,
84637
+ count = 0,
84638
+ limit = 10
84639
+ } = this.pagination;
84640
+ return {
84641
+ from: (page - 1) * limit + 1,
84642
+ to: Math.min(page * limit, count),
84643
+ count
84644
+ };
84645
+ },
84646
+
84647
+ hasPrevPage() {
84648
+ return !this.pagination.prevPage;
84649
+ },
84650
+
84651
+ hasNextPage() {
84652
+ return !this.pagination.nextPage;
84653
+ }
84654
+
84655
+ },
84656
+ methods: {
84657
+ tableRowClasses(item = {}) {
84658
+ return {
84659
+ 'pointer': this.clickable,
84660
+ ...this.rowClass(item)
84661
+ };
84662
+ },
84663
+
84664
+ _items() {
84665
+ this.selected = [];
84666
+ this.selectableItemIDs = [];
84667
+ return this.items().then((items = []) => {
84668
+ this.selectableItemIDs = items.filter(this.isItemSelectable).map(i => i[this.primaryKey]);
84669
+ return items;
84670
+ });
84671
+ },
84672
+
84673
+ onSelectRow(selected, itemID) {
84674
+ if (selected) {
84675
+ if (this.selected.includes(itemID)) {
84676
+ return;
84677
+ }
84678
+
84679
+ this.selected.push(itemID);
84680
+ } else {
84681
+ const i = this.selected.indexOf(itemID);
84682
+
84683
+ if (i < 0) {
84684
+ return;
84685
+ }
84686
+
84687
+ this.selected.splice(i, 1);
84688
+ }
84689
+ },
84690
+
84691
+ selectAllRows(allSelected = false) {
84692
+ if (allSelected) {
84693
+ this.selected = this.selectableItemIDs;
84694
+ } else {
84695
+ this.selected = [];
84696
+ }
84697
+ },
84698
+
84699
+ goToPage(page) {
84700
+ const pageCursor = this.pagination[page] || '';
84701
+ this.$router.push({
84702
+ path: this.$route.path,
84703
+ query: { ...this.$route.query,
84704
+ pageCursor
84705
+ }
84706
+ });
84707
+ }
84708
+
84709
+ }
84710
+ };
84711
+
84712
+ /* script */
84713
+ const __vue_script__$Z = script$Z;
84714
+
84715
+ /* template */
84716
+ var __vue_render__$T = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{staticClass:"shadow-sm",attrs:{"no-body":"","header-bg-variant":"white"},scopedSlots:_vm._u([{key:"header",fn:function(){return [_c('b-container',{staticClass:"p-0",attrs:{"fluid":"","align-v":"center"}},[_c('b-row',[_c('b-col',{attrs:{"lg":"8"}},[_vm._t("header",null,{"selected":_vm.selected})],2),_vm._v(" "),(!_vm.hideSearch)?_c('b-col',[_c('c-input-search',{attrs:{"placeholder":_vm.translations.searchPlaceholder,"debounce":300},on:{"input":function($event){return _vm.$emit('search')}},model:{value:(_vm.filter[_vm.queryField]),callback:function ($$v) {_vm.$set(_vm.filter, _vm.queryField, (typeof $$v === 'string'? $$v.trim(): $$v));},expression:"filter[queryField]"}})],1):_vm._e()],1)],1)]},proxy:true},{key:"footer",fn:function(){return [_c('div',{staticClass:"d-flex align-items-center justify-content-between"},[_c('div',{staticClass:"text-truncate"},[(!_vm.hideTotal)?_c('div',{staticClass:"text-nowrap font-weight-bold"},[(_vm.pagination.count > 1)?_c('span',[_vm._v("\n "+_vm._s(_vm.$t(("" + (_vm.translations.showingPagination)), _vm.getPagination))+"\n ")]):_c('span',[_vm._v("\n "+_vm._s(_vm.$t(("" + (_vm.translations.singlePluralPagination)), _vm.getPagination))+"\n ")])]):_vm._e()]),_vm._v(" "),(!_vm.hidePagination)?_c('b-button-group',[_c('b-button',{staticClass:"text-dark",attrs:{"disabled":_vm.hasPrevPage,"variant":"link"},on:{"click":function($event){return _vm.goToPage()}}},[_c('font-awesome-icon',{attrs:{"icon":['fas', 'angle-double-left']}})],1),_vm._v(" "),_c('b-button',{staticClass:"text-dark",attrs:{"disabled":_vm.hasPrevPage,"variant":"link"},on:{"click":function($event){return _vm.goToPage('prevPage')}}},[_c('font-awesome-icon',{attrs:{"icon":['fas', 'angle-left']}}),_vm._v("\n "+_vm._s(_vm.translations.prevPagination)+"\n ")],1),_vm._v(" "),_c('b-button',{staticClass:"text-dark",attrs:{"disabled":_vm.hasNextPage,"variant":"link"},on:{"click":function($event){return _vm.goToPage('nextPage')}}},[_vm._v("\n "+_vm._s(_vm.translations.nextPagination)+"\n "),_c('font-awesome-icon',{attrs:{"icon":['fas', 'angle-right']}})],1)],1):_vm._e()],1)]},proxy:true}],null,true)},[_vm._v(" "),_c('b-card-body',{staticClass:"p-0"},[_c('b-table',{ref:"resourceList",staticClass:"mb-0",attrs:{"id":"resource-list","hover":"","responsive":"","head-variant":"light","primary-key":_vm.primaryKey,"sort-by":_vm.sorting.sortBy,"sort-desc":_vm.sorting.sortDesc,"items":_vm._items,"fields":_vm._fields,"show-empty":"","no-sort-reset":"","tbody-tr-class":_vm.tableRowClasses,"no-local-sorting":""},on:{"update:sortBy":function($event){return _vm.$set(_vm.sorting, "sortBy", $event)},"update:sort-by":function($event){return _vm.$set(_vm.sorting, "sortBy", $event)},"update:sortDesc":function($event){return _vm.$set(_vm.sorting, "sortDesc", $event)},"update:sort-desc":function($event){return _vm.$set(_vm.sorting, "sortDesc", $event)},"row-clicked":function($event){return _vm.$emit('row-clicked', $event)}},scopedSlots:_vm._u([{key:"empty",fn:function(){return [_c('p',{staticClass:"text-center text-dark",staticStyle:{"margin-top":"1vh"},attrs:{"data-test-id":"no-matches"}},[_vm._v("\n "+_vm._s(_vm.translations.noItems)+"\n ")])]},proxy:true},{key:"table-busy",fn:function(){return [_c('div',{staticClass:"text-center"},[_c('b-spinner'),_vm._v(" "),_c('h5',{staticClass:"mt-2 text-dark"},[_vm._v("\n "+_vm._s(_vm.translations.loading)+"\n ")])],1)]},proxy:true},(_vm.selectable)?{key:"head(select)",fn:function(){return [_c('b-checkbox',{staticClass:"ml-1",attrs:{"disabled":_vm.disableSelectAll,"checked":_vm.allRowsSelected && !_vm.disableSelectAll},on:{"change":_vm.selectAllRows}})]},proxy:true}:null,{key:"cell(select)",fn:function(ref){
84717
+ var item = ref.item;
84718
+ return [(_vm.isItemSelectable(item))?_c('b-form-checkbox',{staticClass:"ml-1",attrs:{"checked":_vm.selected.includes(item[_vm.primaryKey])},on:{"change":function($event){return _vm.onSelectRow($event, item[_vm.primaryKey])}}}):_vm._e()]}},_vm._l((_vm.customFieldSlots),function(field){return {key:("cell(" + field + ")"),fn:function(ref){
84719
+ var item = ref.item;
84720
+ return [_vm._t(field,null,{"item":item})]}}})],null,true)})],1)],1)};
84721
+ var __vue_staticRenderFns__$T = [];
84722
+
84723
+ /* style */
84724
+ const __vue_inject_styles__$_ = undefined;
84725
+ /* scoped */
84726
+ const __vue_scope_id__$_ = undefined;
84727
+ /* module identifier */
84728
+ const __vue_module_identifier__$_ = undefined;
84729
+ /* functional template */
84730
+ const __vue_is_functional_template__$_ = false;
84731
+ /* style inject */
84732
+
84733
+ /* style inject SSR */
84734
+
84735
+ /* style inject shadow dom */
84736
+
84737
+
84738
+
84739
+ const __vue_component__$_ = /*#__PURE__*/normalizeComponent(
84740
+ { render: __vue_render__$T, staticRenderFns: __vue_staticRenderFns__$T },
84741
+ __vue_inject_styles__$_,
84742
+ __vue_script__$Z,
84743
+ __vue_scope_id__$_,
84744
+ __vue_is_functional_template__$_,
84745
+ __vue_module_identifier__$_,
84149
84746
  false,
84150
84747
  undefined,
84151
84748
  undefined,
@@ -84192,7 +84789,7 @@ function ExtractComponents(cat, ...path) {
84192
84789
  }
84193
84790
 
84194
84791
  //
84195
- var script$X = {
84792
+ var script$_ = {
84196
84793
  name: 'ComponentList',
84197
84794
  props: {
84198
84795
  catalogue: {
@@ -84229,37 +84826,37 @@ var script$X = {
84229
84826
  };
84230
84827
 
84231
84828
  /* script */
84232
- const __vue_script__$X = script$X;
84829
+ const __vue_script__$_ = script$_;
84233
84830
 
84234
84831
  /* template */
84235
- var __vue_render__$R = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(!_vm.root)?_c('h5',{staticClass:"mb-0"},[_vm._v("\n "+_vm._s(_vm.group)+"\n ")]):_vm._e(),_vm._v(" "),(_vm.subgroups.length > 0 || _vm.components.length > 0)?_c('div',[_vm._l((_vm.components),function(cmp,i){return _c('div',{key:i,staticClass:"component ml-2",on:{"click":function($event){return _vm.$emit('select', cmp)}}},[_vm._v("\n "+_vm._s(cmp.name || cmp.component.name || 'Untitled')+"\n "),(cmp.wip)?_c('b-badge',{staticClass:"float-right",attrs:{"variant":"warning"}},[_vm._v("\n wip\n ")]):_vm._e()],1)}),_vm._v(" "),_vm._l((_vm.subgroups),function(group){return _c('component-list',{key:group,staticClass:"my-3",attrs:{"catalogue":_vm.catalogue,"path":_vm.path.concat( [group])},on:{"select":function($event){return _vm.$emit('select', $event)}}})})],2):_vm._e()])};
84236
- var __vue_staticRenderFns__$R = [];
84832
+ var __vue_render__$U = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(!_vm.root)?_c('h5',{staticClass:"mb-0"},[_vm._v("\n "+_vm._s(_vm.group)+"\n ")]):_vm._e(),_vm._v(" "),(_vm.subgroups.length > 0 || _vm.components.length > 0)?_c('div',[_vm._l((_vm.components),function(cmp,i){return _c('div',{key:i,staticClass:"component ml-2",on:{"click":function($event){return _vm.$emit('select', cmp)}}},[_vm._v("\n "+_vm._s(cmp.name || cmp.component.name || 'Untitled')+"\n "),(cmp.wip)?_c('b-badge',{staticClass:"float-right",attrs:{"variant":"warning"}},[_vm._v("\n wip\n ")]):_vm._e()],1)}),_vm._v(" "),_vm._l((_vm.subgroups),function(group){return _c('component-list',{key:group,staticClass:"my-3",attrs:{"catalogue":_vm.catalogue,"path":_vm.path.concat( [group])},on:{"select":function($event){return _vm.$emit('select', $event)}}})})],2):_vm._e()])};
84833
+ var __vue_staticRenderFns__$U = [];
84237
84834
 
84238
84835
  /* style */
84239
- const __vue_inject_styles__$Y = function (inject) {
84836
+ const __vue_inject_styles__$$ = function (inject) {
84240
84837
  if (!inject) return
84241
84838
  inject("data-v-8b2b254e_0", { source: ".component[data-v-8b2b254e]{cursor:pointer}", map: undefined, media: undefined });
84242
84839
 
84243
84840
  };
84244
84841
  /* scoped */
84245
- const __vue_scope_id__$Y = "data-v-8b2b254e";
84842
+ const __vue_scope_id__$$ = "data-v-8b2b254e";
84246
84843
  /* module identifier */
84247
- const __vue_module_identifier__$Y = undefined;
84844
+ const __vue_module_identifier__$$ = undefined;
84248
84845
  /* functional template */
84249
- const __vue_is_functional_template__$Y = false;
84846
+ const __vue_is_functional_template__$$ = false;
84250
84847
  /* style inject SSR */
84251
84848
 
84252
84849
  /* style inject shadow dom */
84253
84850
 
84254
84851
 
84255
84852
 
84256
- const __vue_component__$Y = /*#__PURE__*/normalizeComponent(
84257
- { render: __vue_render__$R, staticRenderFns: __vue_staticRenderFns__$R },
84258
- __vue_inject_styles__$Y,
84259
- __vue_script__$X,
84260
- __vue_scope_id__$Y,
84261
- __vue_is_functional_template__$Y,
84262
- __vue_module_identifier__$Y,
84853
+ const __vue_component__$$ = /*#__PURE__*/normalizeComponent(
84854
+ { render: __vue_render__$U, staticRenderFns: __vue_staticRenderFns__$U },
84855
+ __vue_inject_styles__$$,
84856
+ __vue_script__$_,
84857
+ __vue_scope_id__$$,
84858
+ __vue_is_functional_template__$$,
84859
+ __vue_module_identifier__$$,
84263
84860
  false,
84264
84861
  createInjector,
84265
84862
  undefined,
@@ -84267,10 +84864,10 @@ var __vue_staticRenderFns__$R = [];
84267
84864
  );
84268
84865
 
84269
84866
  //
84270
- var script$Y = {
84867
+ var script$$ = {
84271
84868
  name: 'C3',
84272
84869
  components: {
84273
- ComponentList: __vue_component__$Y
84870
+ ComponentList: __vue_component__$$
84274
84871
  },
84275
84872
  props: {
84276
84873
  catalogue: {
@@ -84331,37 +84928,37 @@ var script$Y = {
84331
84928
  };
84332
84929
 
84333
84930
  /* script */
84334
- const __vue_script__$Y = script$Y;
84931
+ const __vue_script__$$ = script$$;
84335
84932
 
84336
84933
  /* template */
84337
- var __vue_render__$S = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"layout"},[_c('aside',{staticClass:"sidebar p-2"},[_c('h5',{staticClass:"border-bottom"},[_vm._v("\n C3: Component Catalogue\n ")]),_vm._v(" "),_c('component-list',{attrs:{"catalogue":_vm.catalogue},on:{"select":function($event){return _vm.setCurrent($event)}}})],1),_vm._v(" "),_c('main',{staticClass:"p-5"},[(_vm.current)?_c(_vm.current.component,_vm._b({tag:"component"},'component',_vm.current.props,false)):_c('p',{staticClass:"text-center"},[_vm._v("\n Select a component from the C3 Catalogue and start hacking :)\n ")])],1),_vm._v(" "),(_vm.current)?_c('div',{staticClass:"controls px-5 py-2 mt-2"},[_vm._l((_vm.controlGroups),function(cg,g){return _c('div',{key:("control-group-" + g),staticClass:"control-group mr-2"},[_c('h3',[_vm._v("\n Controls\n ")]),_vm._v(" "),_vm._l((cg),function(c,i){return _c(c.component,_vm._b({key:i,tag:"component",attrs:{"value":c.value(_vm.current.props)},on:{"update":function($event){return c.update(_vm.current.props, $event)}}},'component',c.props,false))})],2)}),_vm._v(" "),(_vm.current.scenarios)?_c('div',{staticClass:"control-group float-right"},[_c('h3',[_vm._v("\n Pre-set controls\n ")]),_vm._v(" "),_c('ul',{staticClass:"pl-0"},_vm._l((_vm.current.scenarios),function(s,i){return _c('li',{key:i,staticClass:"list-unstyled scenario",on:{"click":function($event){return _vm.setScenario(s)}}},[_vm._v("\n "+_vm._s(s.label)+"\n ")])}),0)]):_vm._e()],2):_vm._e()])};
84338
- var __vue_staticRenderFns__$S = [];
84934
+ var __vue_render__$V = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"layout"},[_c('aside',{staticClass:"sidebar p-2"},[_c('h5',{staticClass:"border-bottom"},[_vm._v("\n C3: Component Catalogue\n ")]),_vm._v(" "),_c('component-list',{attrs:{"catalogue":_vm.catalogue},on:{"select":function($event){return _vm.setCurrent($event)}}})],1),_vm._v(" "),_c('main',{staticClass:"p-5"},[(_vm.current)?_c(_vm.current.component,_vm._b({tag:"component"},'component',_vm.current.props,false)):_c('p',{staticClass:"text-center"},[_vm._v("\n Select a component from the C3 Catalogue and start hacking :)\n ")])],1),_vm._v(" "),(_vm.current)?_c('div',{staticClass:"controls px-5 py-2 mt-2"},[_vm._l((_vm.controlGroups),function(cg,g){return _c('div',{key:("control-group-" + g),staticClass:"control-group mr-2"},[_c('h3',[_vm._v("\n Controls\n ")]),_vm._v(" "),_vm._l((cg),function(c,i){return _c(c.component,_vm._b({key:i,tag:"component",attrs:{"value":c.value(_vm.current.props)},on:{"update":function($event){return c.update(_vm.current.props, $event)}}},'component',c.props,false))})],2)}),_vm._v(" "),(_vm.current.scenarios)?_c('div',{staticClass:"control-group float-right"},[_c('h3',[_vm._v("\n Pre-set controls\n ")]),_vm._v(" "),_c('ul',{staticClass:"pl-0"},_vm._l((_vm.current.scenarios),function(s,i){return _c('li',{key:i,staticClass:"list-unstyled scenario",on:{"click":function($event){return _vm.setScenario(s)}}},[_vm._v("\n "+_vm._s(s.label)+"\n ")])}),0)]):_vm._e()],2):_vm._e()])};
84935
+ var __vue_staticRenderFns__$V = [];
84339
84936
 
84340
84937
  /* style */
84341
- const __vue_inject_styles__$Z = function (inject) {
84938
+ const __vue_inject_styles__$10 = function (inject) {
84342
84939
  if (!inject) return
84343
84940
  inject("data-v-2c86815c_0", { source: ".layout{height:100vh;width:100vw;display:grid;grid-template-rows:auto 400px;grid-template-columns:300px auto;align-content:stretch;grid-template-areas:\"side main\" \"side controls\"}.layout aside{grid-area:side;overflow:auto}.layout main{grid-area:main;background-image:linear-gradient(135deg,#f3f3f5 21.43%,#fff 21.43%,#fff 50%,#f3f3f5 50%,#f3f3f5 71.43%,#fff 71.43%,#fff 100%);background-size:35px 35px;overflow:auto}.layout .controls{grid-area:controls;overflow:auto}.layout .controls .control-group{float:left}.layout .scenario{cursor:pointer}", map: undefined, media: undefined });
84344
84941
 
84345
84942
  };
84346
84943
  /* scoped */
84347
- const __vue_scope_id__$Z = undefined;
84944
+ const __vue_scope_id__$10 = undefined;
84348
84945
  /* module identifier */
84349
- const __vue_module_identifier__$Z = undefined;
84946
+ const __vue_module_identifier__$10 = undefined;
84350
84947
  /* functional template */
84351
- const __vue_is_functional_template__$Z = false;
84948
+ const __vue_is_functional_template__$10 = false;
84352
84949
  /* style inject SSR */
84353
84950
 
84354
84951
  /* style inject shadow dom */
84355
84952
 
84356
84953
 
84357
84954
 
84358
- const __vue_component__$Z = /*#__PURE__*/normalizeComponent(
84359
- { render: __vue_render__$S, staticRenderFns: __vue_staticRenderFns__$S },
84360
- __vue_inject_styles__$Z,
84361
- __vue_script__$Y,
84362
- __vue_scope_id__$Z,
84363
- __vue_is_functional_template__$Z,
84364
- __vue_module_identifier__$Z,
84955
+ const __vue_component__$10 = /*#__PURE__*/normalizeComponent(
84956
+ { render: __vue_render__$V, staticRenderFns: __vue_staticRenderFns__$V },
84957
+ __vue_inject_styles__$10,
84958
+ __vue_script__$$,
84959
+ __vue_scope_id__$10,
84960
+ __vue_is_functional_template__$10,
84961
+ __vue_module_identifier__$10,
84365
84962
  false,
84366
84963
  createInjector,
84367
84964
  undefined,
@@ -84379,7 +84976,7 @@ var __vue_staticRenderFns__$S = [];
84379
84976
  //
84380
84977
  //
84381
84978
  //
84382
- var script$Z = {
84979
+ var script$10 = {
84383
84980
  props: {
84384
84981
  label: {
84385
84982
  required: true,
@@ -84393,20 +84990,20 @@ var script$Z = {
84393
84990
  };
84394
84991
 
84395
84992
  /* script */
84396
- const __vue_script__$Z = script$Z;
84993
+ const __vue_script__$10 = script$10;
84397
84994
 
84398
84995
  /* template */
84399
- var __vue_render__$T = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',{attrs:{"label":_vm.label}},[_c('b-form-input',{attrs:{"value":_vm.value},on:{"update":function($event){return _vm.$emit('update', $event)}}})],1)};
84400
- var __vue_staticRenderFns__$T = [];
84996
+ var __vue_render__$W = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',{attrs:{"label":_vm.label}},[_c('b-form-input',{attrs:{"value":_vm.value},on:{"update":function($event){return _vm.$emit('update', $event)}}})],1)};
84997
+ var __vue_staticRenderFns__$W = [];
84401
84998
 
84402
84999
  /* style */
84403
- const __vue_inject_styles__$_ = undefined;
85000
+ const __vue_inject_styles__$11 = undefined;
84404
85001
  /* scoped */
84405
- const __vue_scope_id__$_ = undefined;
85002
+ const __vue_scope_id__$11 = undefined;
84406
85003
  /* module identifier */
84407
- const __vue_module_identifier__$_ = undefined;
85004
+ const __vue_module_identifier__$11 = undefined;
84408
85005
  /* functional template */
84409
- const __vue_is_functional_template__$_ = false;
85006
+ const __vue_is_functional_template__$11 = false;
84410
85007
  /* style inject */
84411
85008
 
84412
85009
  /* style inject SSR */
@@ -84415,13 +85012,13 @@ var __vue_staticRenderFns__$T = [];
84415
85012
 
84416
85013
 
84417
85014
 
84418
- const __vue_component__$_ = /*#__PURE__*/normalizeComponent(
84419
- { render: __vue_render__$T, staticRenderFns: __vue_staticRenderFns__$T },
84420
- __vue_inject_styles__$_,
84421
- __vue_script__$Z,
84422
- __vue_scope_id__$_,
84423
- __vue_is_functional_template__$_,
84424
- __vue_module_identifier__$_,
85015
+ const __vue_component__$11 = /*#__PURE__*/normalizeComponent(
85016
+ { render: __vue_render__$W, staticRenderFns: __vue_staticRenderFns__$W },
85017
+ __vue_inject_styles__$11,
85018
+ __vue_script__$10,
85019
+ __vue_scope_id__$11,
85020
+ __vue_is_functional_template__$11,
85021
+ __vue_module_identifier__$11,
84425
85022
  false,
84426
85023
  undefined,
84427
85024
  undefined,
@@ -84439,7 +85036,7 @@ var __vue_staticRenderFns__$T = [];
84439
85036
  //
84440
85037
  //
84441
85038
  //
84442
- var script$_ = {
85039
+ var script$11 = {
84443
85040
  props: {
84444
85041
  label: {
84445
85042
  required: true,
@@ -84453,20 +85050,20 @@ var script$_ = {
84453
85050
  };
84454
85051
 
84455
85052
  /* script */
84456
- const __vue_script__$_ = script$_;
85053
+ const __vue_script__$11 = script$11;
84457
85054
 
84458
85055
  /* template */
84459
- var __vue_render__$U = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',{attrs:{"label":_vm.label}},[_c('b-form-textarea',{attrs:{"value":_vm.value},on:{"update":function($event){return _vm.$emit('update', $event)}}})],1)};
84460
- var __vue_staticRenderFns__$U = [];
85056
+ var __vue_render__$X = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',{attrs:{"label":_vm.label}},[_c('b-form-textarea',{attrs:{"value":_vm.value},on:{"update":function($event){return _vm.$emit('update', $event)}}})],1)};
85057
+ var __vue_staticRenderFns__$X = [];
84461
85058
 
84462
85059
  /* style */
84463
- const __vue_inject_styles__$$ = undefined;
85060
+ const __vue_inject_styles__$12 = undefined;
84464
85061
  /* scoped */
84465
- const __vue_scope_id__$$ = undefined;
85062
+ const __vue_scope_id__$12 = undefined;
84466
85063
  /* module identifier */
84467
- const __vue_module_identifier__$$ = undefined;
85064
+ const __vue_module_identifier__$12 = undefined;
84468
85065
  /* functional template */
84469
- const __vue_is_functional_template__$$ = false;
85066
+ const __vue_is_functional_template__$12 = false;
84470
85067
  /* style inject */
84471
85068
 
84472
85069
  /* style inject SSR */
@@ -84475,13 +85072,13 @@ var __vue_staticRenderFns__$U = [];
84475
85072
 
84476
85073
 
84477
85074
 
84478
- const __vue_component__$$ = /*#__PURE__*/normalizeComponent(
84479
- { render: __vue_render__$U, staticRenderFns: __vue_staticRenderFns__$U },
84480
- __vue_inject_styles__$$,
84481
- __vue_script__$_,
84482
- __vue_scope_id__$$,
84483
- __vue_is_functional_template__$$,
84484
- __vue_module_identifier__$$,
85075
+ const __vue_component__$12 = /*#__PURE__*/normalizeComponent(
85076
+ { render: __vue_render__$X, staticRenderFns: __vue_staticRenderFns__$X },
85077
+ __vue_inject_styles__$12,
85078
+ __vue_script__$11,
85079
+ __vue_scope_id__$12,
85080
+ __vue_is_functional_template__$12,
85081
+ __vue_module_identifier__$12,
84485
85082
  false,
84486
85083
  undefined,
84487
85084
  undefined,
@@ -84498,7 +85095,7 @@ var __vue_staticRenderFns__$U = [];
84498
85095
  //
84499
85096
  //
84500
85097
  //
84501
- var script$$ = {
85098
+ var script$12 = {
84502
85099
  props: {
84503
85100
  label: {
84504
85101
  required: true,
@@ -84512,20 +85109,20 @@ var script$$ = {
84512
85109
  };
84513
85110
 
84514
85111
  /* script */
84515
- const __vue_script__$$ = script$$;
85112
+ const __vue_script__$12 = script$12;
84516
85113
 
84517
85114
  /* template */
84518
- var __vue_render__$V = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',[_c('b-form-checkbox',{attrs:{"checked":_vm.value},on:{"change":function($event){return _vm.$emit('update', $event)}}},[_vm._v("\n "+_vm._s(_vm.label)+"\n ")])],1)};
84519
- var __vue_staticRenderFns__$V = [];
85115
+ var __vue_render__$Y = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',[_c('b-form-checkbox',{attrs:{"checked":_vm.value},on:{"change":function($event){return _vm.$emit('update', $event)}}},[_vm._v("\n "+_vm._s(_vm.label)+"\n ")])],1)};
85116
+ var __vue_staticRenderFns__$Y = [];
84520
85117
 
84521
85118
  /* style */
84522
- const __vue_inject_styles__$10 = undefined;
85119
+ const __vue_inject_styles__$13 = undefined;
84523
85120
  /* scoped */
84524
- const __vue_scope_id__$10 = undefined;
85121
+ const __vue_scope_id__$13 = undefined;
84525
85122
  /* module identifier */
84526
- const __vue_module_identifier__$10 = undefined;
85123
+ const __vue_module_identifier__$13 = undefined;
84527
85124
  /* functional template */
84528
- const __vue_is_functional_template__$10 = false;
85125
+ const __vue_is_functional_template__$13 = false;
84529
85126
  /* style inject */
84530
85127
 
84531
85128
  /* style inject SSR */
@@ -84534,13 +85131,13 @@ var __vue_staticRenderFns__$V = [];
84534
85131
 
84535
85132
 
84536
85133
 
84537
- const __vue_component__$10 = /*#__PURE__*/normalizeComponent(
84538
- { render: __vue_render__$V, staticRenderFns: __vue_staticRenderFns__$V },
84539
- __vue_inject_styles__$10,
84540
- __vue_script__$$,
84541
- __vue_scope_id__$10,
84542
- __vue_is_functional_template__$10,
84543
- __vue_module_identifier__$10,
85134
+ const __vue_component__$13 = /*#__PURE__*/normalizeComponent(
85135
+ { render: __vue_render__$Y, staticRenderFns: __vue_staticRenderFns__$Y },
85136
+ __vue_inject_styles__$13,
85137
+ __vue_script__$12,
85138
+ __vue_scope_id__$13,
85139
+ __vue_is_functional_template__$13,
85140
+ __vue_module_identifier__$13,
84544
85141
  false,
84545
85142
  undefined,
84546
85143
  undefined,
@@ -84559,7 +85156,7 @@ var __vue_staticRenderFns__$V = [];
84559
85156
  //
84560
85157
  //
84561
85158
  //
84562
- var script$10 = {
85159
+ var script$13 = {
84563
85160
  props: {
84564
85161
  label: {
84565
85162
  required: true,
@@ -84577,20 +85174,20 @@ var script$10 = {
84577
85174
  };
84578
85175
 
84579
85176
  /* script */
84580
- const __vue_script__$10 = script$10;
85177
+ const __vue_script__$13 = script$13;
84581
85178
 
84582
85179
  /* template */
84583
- var __vue_render__$W = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',{attrs:{"label":_vm.label}},[_c('b-form-select',{attrs:{"value":_vm.value,"options":_vm.options},on:{"input":function($event){return _vm.$emit('update', $event)}}})],1)};
84584
- var __vue_staticRenderFns__$W = [];
85180
+ var __vue_render__$Z = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-form-group',{attrs:{"label":_vm.label}},[_c('b-form-select',{attrs:{"value":_vm.value,"options":_vm.options},on:{"input":function($event){return _vm.$emit('update', $event)}}})],1)};
85181
+ var __vue_staticRenderFns__$Z = [];
84585
85182
 
84586
85183
  /* style */
84587
- const __vue_inject_styles__$11 = undefined;
85184
+ const __vue_inject_styles__$14 = undefined;
84588
85185
  /* scoped */
84589
- const __vue_scope_id__$11 = undefined;
85186
+ const __vue_scope_id__$14 = undefined;
84590
85187
  /* module identifier */
84591
- const __vue_module_identifier__$11 = undefined;
85188
+ const __vue_module_identifier__$14 = undefined;
84592
85189
  /* functional template */
84593
- const __vue_is_functional_template__$11 = false;
85190
+ const __vue_is_functional_template__$14 = false;
84594
85191
  /* style inject */
84595
85192
 
84596
85193
  /* style inject SSR */
@@ -84599,13 +85196,13 @@ var __vue_staticRenderFns__$W = [];
84599
85196
 
84600
85197
 
84601
85198
 
84602
- const __vue_component__$11 = /*#__PURE__*/normalizeComponent(
84603
- { render: __vue_render__$W, staticRenderFns: __vue_staticRenderFns__$W },
84604
- __vue_inject_styles__$11,
84605
- __vue_script__$10,
84606
- __vue_scope_id__$11,
84607
- __vue_is_functional_template__$11,
84608
- __vue_module_identifier__$11,
85199
+ const __vue_component__$14 = /*#__PURE__*/normalizeComponent(
85200
+ { render: __vue_render__$Z, staticRenderFns: __vue_staticRenderFns__$Z },
85201
+ __vue_inject_styles__$14,
85202
+ __vue_script__$13,
85203
+ __vue_scope_id__$14,
85204
+ __vue_is_functional_template__$14,
85205
+ __vue_module_identifier__$14,
84609
85206
  false,
84610
85207
  undefined,
84611
85208
  undefined,
@@ -84627,16 +85224,16 @@ function generic(component, { handler, props }) {
84627
85224
  props }, handler);
84628
85225
  }
84629
85226
  function input(label, handler) {
84630
- return generic(__vue_component__$_, { handler, props: { label } });
85227
+ return generic(__vue_component__$11, { handler, props: { label } });
84631
85228
  }
84632
85229
  function textarea(label, handler) {
84633
- return generic(__vue_component__$$, { handler, props: { label } });
85230
+ return generic(__vue_component__$12, { handler, props: { label } });
84634
85231
  }
84635
85232
  function checkbox(label, handler) {
84636
- return generic(__vue_component__$10, { handler, props: { label } });
85233
+ return generic(__vue_component__$13, { handler, props: { label } });
84637
85234
  }
84638
85235
  function select(label, handler, options) {
84639
- return generic(__vue_component__$11, {
85236
+ return generic(__vue_component__$14, {
84640
85237
  handler,
84641
85238
  props: {
84642
85239
  label,
@@ -84655,7 +85252,7 @@ var controls = /*#__PURE__*/Object.freeze({
84655
85252
  });
84656
85253
 
84657
85254
  var index$2 = {
84658
- View: __vue_component__$Z,
85255
+ View: __vue_component__$10,
84659
85256
  controls,
84660
85257
  };
84661
85258
 
@@ -84672,10 +85269,10 @@ var index$3 = /*#__PURE__*/Object.freeze({
84672
85269
  CInputDateTime: __vue_component__$b,
84673
85270
  CInputPresort: __vue_component__$c,
84674
85271
  CInputCron: __vue_component__$d,
84675
- CRichTextInput: __vue_component__$m,
85272
+ CInputSearch: __vue_component__$e,
85273
+ CRichTextInput: __vue_component__$n,
84676
85274
  CLightbox: __vue_component__$5,
84677
- CPermissionsButton: __vue_component__$n,
84678
- CPermissionsForm: __vue_component__$r,
85275
+ CPermissionsButton: __vue_component__$o,
84679
85276
  CPermissionsModal: __vue_component__$s,
84680
85277
  CLoaderLogo: __vue_component__$E,
84681
85278
  CTopbar: __vue_component__$F,
@@ -84688,10 +85285,13 @@ var index$3 = /*#__PURE__*/Object.freeze({
84688
85285
  CReminderSidebar: __vue_component__$Q,
84689
85286
  CItemPicker: __vue_component__$S,
84690
85287
  CItemPickerItem: __vue_component__$R,
84691
- CReportChart: __vue_component__$U,
84692
- CReportMetric: __vue_component__$V,
84693
- CReportTable: __vue_component__$W,
84694
- CReportText: __vue_component__$X,
85288
+ CReportChart: __vue_component__$V,
85289
+ CReportMetric: __vue_component__$W,
85290
+ CReportTable: __vue_component__$X,
85291
+ CReportText: __vue_component__$Y,
85292
+ CSensitivityLevelPicker: __vue_component__$Z,
85293
+ CResourceList: __vue_component__$_,
85294
+ CChart: __vue_component__$U,
84695
85295
  C3: index$2,
84696
85296
  CPrompts: __vue_component__$D,
84697
85297
  CPromptModal: __vue_component__$C,
@@ -84927,7 +85527,7 @@ function resumeState(api, { sessionID, stateID }, input) {
84927
85527
  }
84928
85528
  function cancelState(api, { sessionID, stateID }) {
84929
85529
  return __awaiter(this, void 0, void 0, function* () {
84930
- return api.sessionDeleteState({ sessionID, stateID });
85530
+ return api.sessionCancel({ sessionID, stateID });
84931
85531
  });
84932
85532
  }
84933
85533
  function onlyFresh(existing, fresh) {