@descope/web-components-ui 1.0.236 → 1.0.238

Sign up to get free protection for your applications and to get access to all the features.
Files changed (26) hide show
  1. package/dist/cjs/index.cjs.js +20 -12
  2. package/dist/cjs/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js +66 -27
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/umd/7044.js +1 -0
  6. package/dist/umd/descope-badge-index-js.js +1 -1
  7. package/dist/umd/descope-grid-descope-grid-custom-column-index-js.js +1 -0
  8. package/dist/umd/descope-grid-descope-grid-selection-column-index-js.js +1 -1
  9. package/dist/umd/descope-grid-descope-grid-text-column-index-js.js +1 -1
  10. package/dist/umd/descope-grid-index-js.js +1 -1
  11. package/dist/umd/index.js +1 -1
  12. package/package.json +1 -1
  13. package/src/components/descope-badge/BadgeClass.js +1 -1
  14. package/src/components/descope-grid/GridClass.js +7 -0
  15. package/src/components/descope-grid/descope-grid-custom-column/GridCustomColumnClass.js +31 -0
  16. package/src/components/descope-grid/descope-grid-custom-column/index.js +7 -0
  17. package/src/components/descope-grid/descope-grid-selection-column/GridSelectionColumnClass.js +57 -0
  18. package/src/components/descope-grid/descope-grid-selection-column/index.js +1 -56
  19. package/src/components/descope-grid/descope-grid-text-column/GridTextColumnClass.js +18 -0
  20. package/src/components/descope-grid/descope-grid-text-column/index.js +1 -10
  21. package/src/components/descope-grid/index.js +1 -1
  22. package/src/theme/components/badge.js +3 -3
  23. package/src/theme/components/grid.js +6 -5
  24. package/src/theme/components/notificationCard.js +3 -3
  25. package/dist/umd/descope-grid-descope-grid-status-column-index-js.js +0 -1
  26. package/src/components/descope-grid/descope-grid-status-column/index.js +0 -25
package/dist/index.esm.js CHANGED
@@ -6797,37 +6797,63 @@ const ButtonSelectionGroupItemClass = compose(
6797
6797
 
6798
6798
  customElements.define(componentName$8, ButtonSelectionGroupItemClass);
6799
6799
 
6800
- const componentName$7 = getComponentName('grid-text-column');
6800
+ class GridTextColumnClass extends GridSortColumn {
6801
+ get sortable() {
6802
+ return this.getAttribute('sortable') === 'true';
6803
+ }
6804
+
6805
+ _defaultHeaderRenderer(root, _column) {
6806
+ if (this.sortable) {
6807
+ super._defaultHeaderRenderer(root, _column);
6808
+
6809
+ return;
6810
+ }
6801
6811
 
6802
- class GridTextColumnClass extends GridSortColumn {}
6812
+ // eslint-disable-next-line no-param-reassign
6813
+ root.innerHTML = this.__getHeader(this.header, this.path);
6814
+ }
6815
+ }
6816
+
6817
+ const componentName$7 = getComponentName('grid-text-column');
6803
6818
 
6804
6819
  customElements.define(componentName$7, GridTextColumnClass);
6805
6820
 
6806
6821
  /* eslint-disable no-param-reassign */
6807
6822
 
6808
- const componentName$6 = getComponentName('grid-status-column');
6809
- class GridStatusColumnClass extends GridSortColumn {
6823
+ class GridCustomColumnClass extends GridTextColumnClass {
6810
6824
  _defaultRenderer(cell, _col, model) {
6811
- const contentAttr = this.getAttribute('status');
6812
- if (!contentAttr) {
6825
+ const content = model.item[this.path];
6826
+
6827
+ // we get a list of elements that can be used to render the content
6828
+ // each element can have a "pattern" attribute which contains regex expression
6829
+ // we are going over the elements, and when finding an element which is pattern matches the data,
6830
+ // we are cloning this element, and injecting the data as its child
6831
+ const contentEle = Array.from(this.children).find((child) => {
6832
+ const pattern = child.getAttribute('pattern');
6833
+ if (!pattern) return true;
6834
+
6835
+ const regEx = new RegExp(pattern);
6836
+ return regEx.test(content);
6837
+ });
6838
+
6839
+ if (!contentEle) {
6813
6840
  cell.innerHTML = model.item[this.path];
6841
+
6814
6842
  return;
6815
6843
  }
6816
6844
 
6817
- const [active, inactive] = contentAttr.split(',');
6818
- const label = model.item[this.path] ? active : inactive;
6819
-
6820
- cell.innerHTML = `<div style="padding:0 0.25em; border-radius:4px; background:${
6821
- model.item[this.path] ? 'lightgreen' : 'pink'
6822
- };">${label}</div>`;
6845
+ const newEle = contentEle.cloneNode(true);
6846
+ newEle.innerHTML = content;
6847
+ cell.innerHTML = '';
6848
+ cell.append(newEle);
6823
6849
  }
6824
6850
  }
6825
6851
 
6826
- customElements.define(componentName$6, GridStatusColumnClass);
6852
+ /* eslint-disable no-param-reassign */
6827
6853
 
6828
- /* eslint-disable class-methods-use-this */
6854
+ const componentName$6 = getComponentName('grid-custom-column');
6829
6855
 
6830
- const componentName$5 = getComponentName('grid-selection-column');
6856
+ customElements.define(componentName$6, GridCustomColumnClass);
6831
6857
 
6832
6858
  const createCheckboxEle = () => {
6833
6859
  const checkbox = document.createElement('descope-checkbox');
@@ -6841,8 +6867,10 @@ const createCheckboxEle = () => {
6841
6867
  const getIsAllItemsSelected = (grid) => grid.selectedItems.length === grid.items?.length;
6842
6868
 
6843
6869
  class GridSelectionColumnClass extends GridSelectionColumn {
6870
+ // eslint-disable-next-line class-methods-use-this
6844
6871
  _onHeaderRendererOrBindingChanged() {}
6845
6872
 
6873
+ // eslint-disable-next-line class-methods-use-this
6846
6874
  _headerRenderer(cell) {
6847
6875
  const grid = cell.parentNode;
6848
6876
 
@@ -6865,6 +6893,7 @@ class GridSelectionColumnClass extends GridSelectionColumn {
6865
6893
  checkbox.setAttribute('checked', getIsAllItemsSelected(grid));
6866
6894
  }
6867
6895
 
6896
+ // eslint-disable-next-line class-methods-use-this
6868
6897
  _defaultRenderer(cell, col, model) {
6869
6898
  const grid = cell.parentNode;
6870
6899
 
@@ -6882,6 +6911,8 @@ class GridSelectionColumnClass extends GridSelectionColumn {
6882
6911
  }
6883
6912
  }
6884
6913
 
6914
+ const componentName$5 = getComponentName('grid-selection-column');
6915
+
6885
6916
  customElements.define(componentName$5, GridSelectionColumnClass);
6886
6917
 
6887
6918
  const isValidDataType = (data) => {
@@ -7056,6 +7087,7 @@ const GridMixin = (superclass) =>
7056
7087
  const {
7057
7088
  host,
7058
7089
  headerRow,
7090
+ headerRowCell,
7059
7091
  contentRow,
7060
7092
  firstRow,
7061
7093
  sortIndicators,
@@ -7066,6 +7098,7 @@ const {
7066
7098
  } = {
7067
7099
  host: { selector: () => 'vaadin-grid' },
7068
7100
  headerRow: { selector: () => '::part(header-cell)' },
7101
+ headerRowCell: { selector: () => 'vaadin-grid::part(header-cell)' },
7069
7102
  contentRow: { selector: () => '::part(cell)' },
7070
7103
  firstRow: { selector: () => '::part(first-header-row-cell)' },
7071
7104
  selectedRow: { selector: () => '::part(selected-row-cell)' },
@@ -7086,6 +7119,10 @@ const GridClass = compose(
7086
7119
  fontSize: [{ ...headerRow }, { ...contentRow }],
7087
7120
  fontWeight: { ...contentRow },
7088
7121
  valueTextColor: { ...contentRow, property: 'color' },
7122
+ backgroundColor: [
7123
+ { ...host, property: 'background-color' },
7124
+ { ...contentRow, property: 'background-color' },
7125
+ ],
7089
7126
  sortIndicatorsColor: { ...sortIndicators, property: 'color' },
7090
7127
  activeSortIndicator: { ...activeSortIndicator, property: 'color' },
7091
7128
  inputBorderColor: { ...host, property: 'border-color' },
@@ -7094,6 +7131,7 @@ const GridClass = compose(
7094
7131
  inputBorderRadius: { ...host, property: 'border-radius' },
7095
7132
  selectedBackgroundColor: { ...selectedRow, property: 'background-color' },
7096
7133
  selectedTextColor: { ...selectedRow, property: 'color' },
7134
+ headerRowTextColor: { ...headerRowCell, property: 'color' },
7097
7135
  separatorColor: [
7098
7136
  { ...firstRow, property: 'border-bottom-color' },
7099
7137
  { ...rowSeparator, property: 'border-top-color' },
@@ -8782,12 +8820,13 @@ const grid = {
8782
8820
  [vars$3.hostWidth]: '100%',
8783
8821
  [vars$3.hostHeight]: '100%',
8784
8822
  [vars$3.hostMinHeight]: '400px',
8823
+ [vars$3.backgroundColor]: globalRefs$2.colors.surface.light,
8785
8824
 
8786
8825
  [vars$3.fontSize]: refs.fontSize,
8787
8826
  [vars$3.fontFamily]: refs.fontFamily,
8788
8827
 
8789
- [vars$3.sortIndicatorsColor]: globalRefs$2.colors.primary.main,
8790
- [vars$3.activeSortIndicator]: globalRefs$2.colors.primary.main,
8828
+ [vars$3.sortIndicatorsColor]: globalRefs$2.colors.surface.main,
8829
+ [vars$3.activeSortIndicator]: globalRefs$2.colors.surface.dark,
8791
8830
  [vars$3.resizeHandleColor]: globalRefs$2.colors.surface.main,
8792
8831
 
8793
8832
  [vars$3.inputBorderWidth]: refs.borderWidth,
@@ -8795,11 +8834,11 @@ const grid = {
8795
8834
  [vars$3.inputBorderRadius]: refs.borderRadius,
8796
8835
  [vars$3.inputBorderColor]: 'transparent',
8797
8836
 
8798
- [vars$3.separatorColor]: refs.borderColor,
8837
+ [vars$3.headerRowTextColor]: globalRefs$2.colors.surface.dark,
8838
+ [vars$3.separatorColor]: globalRefs$2.colors.surface.main,
8799
8839
 
8800
8840
  [vars$3.valueTextColor]: globalRefs$2.colors.surface.contrast,
8801
- [vars$3.selectedBackgroundColor]: globalRefs$2.colors.primary.main,
8802
- [vars$3.selectedTextColor]: globalRefs$2.colors.primary.contrast,
8841
+ [vars$3.selectedBackgroundColor]: globalRefs$2.colors.primary.contrast,
8803
8842
 
8804
8843
  _bordered: {
8805
8844
  [vars$3.inputBorderColor]: refs.borderColor,
@@ -8937,9 +8976,9 @@ const notification = {
8937
8976
  [vars$2.backgroundColor]: globalRefs$1.colors.surface.main,
8938
8977
  [vars$2.textColor]: globalRefs$1.colors.surface.contrast,
8939
8978
  [vars$2.boxShadow]: `${globalRefs$1.shadow.wide.xl} ${shadowColor}, ${globalRefs$1.shadow.narrow.xl} ${shadowColor}`,
8940
- [vars$2.verticalPadding]: '0.45em',
8941
- [vars$2.horizontalPadding]: '1em',
8942
- [vars$2.borderRadius]: globalRefs$1.radius.md,
8979
+ [vars$2.verticalPadding]: '0.625em',
8980
+ [vars$2.horizontalPadding]: '1.5em',
8981
+ [vars$2.borderRadius]: globalRefs$1.radius.xs,
8943
8982
 
8944
8983
  _bordered: {
8945
8984
  [vars$2.borderWidth]: globalRefs$1.border.sm,
@@ -9010,7 +9049,7 @@ const BadgeClass = compose(
9010
9049
  fontFamily: {},
9011
9050
  fontSize: {},
9012
9051
  fontWeight: {},
9013
-
9052
+ textTransform: {},
9014
9053
  verticalPadding: [{ property: 'padding-top' }, { property: 'padding-bottom' }],
9015
9054
  horizontalPadding: [{ property: 'padding-left' }, { property: 'padding-right' }],
9016
9055
 
@@ -9045,7 +9084,7 @@ const badge = {
9045
9084
  [vars$1.horizontalPadding]: '0.5em',
9046
9085
 
9047
9086
  [vars$1.borderWidth]: globalRefs.border.xs,
9048
- [vars$1.borderRadius]: globalRefs.radius.sm,
9087
+ [vars$1.borderRadius]: globalRefs.radius.xs,
9049
9088
  [vars$1.borderColor]: 'transparent',
9050
9089
  [vars$1.borderStyle]: 'solid',
9051
9090
 
@@ -9080,9 +9119,9 @@ const badge = {
9080
9119
  },
9081
9120
  },
9082
9121
  error: {
9083
- [vars$1.borderColor]: globalRefs.colors.error.light,
9122
+ [vars$1.textColor]: globalRefs.colors.error.main,
9084
9123
  _bordered: {
9085
- [vars$1.textColor]: globalRefs.colors.error.main,
9124
+ [vars$1.borderColor]: globalRefs.colors.error.light,
9086
9125
  },
9087
9126
  },
9088
9127
  success: {