@trudb/tru-common-lib 0.1.282 → 0.1.284
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/esm2022/lib/components/card-column/classes/tru-card-column-search-results-config-base.mjs +1 -1
- package/esm2022/lib/components/card-column/tru-card-column.mjs +73 -15
- package/fesm2022/trudb-tru-common-lib.mjs +72 -14
- package/fesm2022/trudb-tru-common-lib.mjs.map +1 -1
- package/lib/components/card-column/classes/tru-card-column-search-results-config-base.d.ts +1 -0
- package/lib/components/card-column/tru-card-column.d.ts +3 -3
- package/package.json +1 -1
|
@@ -2641,8 +2641,6 @@ class TruCardColumn {
|
|
|
2641
2641
|
childTablePluralLabel;
|
|
2642
2642
|
parentQuery = null;
|
|
2643
2643
|
lockProperty;
|
|
2644
|
-
unassignedVisible;
|
|
2645
|
-
unassignedName;
|
|
2646
2644
|
unassignedLocked;
|
|
2647
2645
|
unassignedDraggable;
|
|
2648
2646
|
unassignedDroppable;
|
|
@@ -2667,13 +2665,15 @@ class TruCardColumn {
|
|
|
2667
2665
|
color;
|
|
2668
2666
|
unassignedColor;
|
|
2669
2667
|
key;
|
|
2668
|
+
unassignedVisible;
|
|
2669
|
+
unassignedName;
|
|
2670
|
+
userHasParentTableRole = true; //parentTableModel.canDisplay;
|
|
2670
2671
|
constructor(dataContext, modelTypeLookup, searchViewEventHandler) {
|
|
2671
2672
|
this.dataContext = dataContext;
|
|
2672
2673
|
this.modelTypeLookup = modelTypeLookup;
|
|
2673
2674
|
this.searchViewEventHandler = searchViewEventHandler;
|
|
2674
2675
|
}
|
|
2675
2676
|
parentTableModel = null; //dataService.model.tables[parentTableName];
|
|
2676
|
-
userHasParentTableRole = null; //parentTableModel.canDisplay;
|
|
2677
2677
|
createDataForEntity = (entity) => {
|
|
2678
2678
|
var data = this.config.resultConfig.rowDataEnhancer();
|
|
2679
2679
|
return data;
|
|
@@ -3131,15 +3131,16 @@ class CardView {
|
|
|
3131
3131
|
}
|
|
3132
3132
|
class Column {
|
|
3133
3133
|
cardColumn;
|
|
3134
|
-
data;
|
|
3135
3134
|
cards = [];
|
|
3136
3135
|
locked;
|
|
3137
3136
|
parentElement;
|
|
3138
3137
|
columnElement;
|
|
3138
|
+
data;
|
|
3139
3139
|
cardScrollPortElement;
|
|
3140
3140
|
selectAllButton;
|
|
3141
3141
|
constructor(cardColumn, data, parentElement, locked, index) {
|
|
3142
3142
|
this.cardColumn = cardColumn;
|
|
3143
|
+
this.data = data;
|
|
3143
3144
|
this.locked = locked;
|
|
3144
3145
|
this.parentElement = parentElement;
|
|
3145
3146
|
let columnElement = document.createElement('div');
|
|
@@ -3151,7 +3152,7 @@ class Column {
|
|
|
3151
3152
|
this.columnElement = columnElement;
|
|
3152
3153
|
this.cardScrollPortElement = document.createElement('div');
|
|
3153
3154
|
this.cardScrollPortElement.classList.add('tru-card-portal-card-scroll-port');
|
|
3154
|
-
|
|
3155
|
+
new ColumnHeader(this.cardColumn, this);
|
|
3155
3156
|
this.columnElement.appendChild(this.cardScrollPortElement);
|
|
3156
3157
|
this.columnElement.addEventListener('filter-cards', (e) => {
|
|
3157
3158
|
this.updateDataByFilter();
|
|
@@ -3159,11 +3160,6 @@ class Column {
|
|
|
3159
3160
|
this.updateData();
|
|
3160
3161
|
this.parentElement.appendChild(this.columnElement);
|
|
3161
3162
|
}
|
|
3162
|
-
addCard = (card) => {
|
|
3163
|
-
card.data.$entity[this.cardColumn.key] = this.data.Ref;
|
|
3164
|
-
this.data.cards.unshift(card.data);
|
|
3165
|
-
this.cards.unshift(new Card(this.cardColumn, this, card.data, true));
|
|
3166
|
-
};
|
|
3167
3163
|
addEmptyCard = () => {
|
|
3168
3164
|
let emptyCards = _.filter(this.cards, function (card) { return !card.data; });
|
|
3169
3165
|
if (!emptyCards.length)
|
|
@@ -3199,10 +3195,6 @@ class Column {
|
|
|
3199
3195
|
this.addEmptyCard();
|
|
3200
3196
|
card = null;
|
|
3201
3197
|
};
|
|
3202
|
-
selectAll = (selectAll) => {
|
|
3203
|
-
for (var i = 0; i < this.cards.length; i++)
|
|
3204
|
-
this.cards[i].selectAll(selectAll);
|
|
3205
|
-
};
|
|
3206
3198
|
updateDataByFilter = () => {
|
|
3207
3199
|
let cardFilterStr = this.cardColumn.cardFilterStr;
|
|
3208
3200
|
if (cardFilterStr) {
|
|
@@ -3258,6 +3250,15 @@ class Column {
|
|
|
3258
3250
|
this.addEmptyCard();
|
|
3259
3251
|
}
|
|
3260
3252
|
};
|
|
3253
|
+
selectAll = (selectAll) => {
|
|
3254
|
+
for (var i = 0; i < this.cards.length; i++)
|
|
3255
|
+
this.cards[i].selectAll(selectAll);
|
|
3256
|
+
};
|
|
3257
|
+
addCard = (card) => {
|
|
3258
|
+
card.data.$entity[this.cardColumn.key] = this.data.Ref;
|
|
3259
|
+
this.data.cards.unshift(card.data);
|
|
3260
|
+
this.cards.unshift(new Card(this.cardColumn, this, card.data, true));
|
|
3261
|
+
};
|
|
3261
3262
|
}
|
|
3262
3263
|
class Card {
|
|
3263
3264
|
cardColumn;
|
|
@@ -3356,6 +3357,63 @@ class Card {
|
|
|
3356
3357
|
}
|
|
3357
3358
|
};
|
|
3358
3359
|
}
|
|
3360
|
+
class ColumnHeader {
|
|
3361
|
+
cardColumn;
|
|
3362
|
+
constructor(cardColumn, column) {
|
|
3363
|
+
this.cardColumn = cardColumn;
|
|
3364
|
+
let columnHeaderElement = document.createElement('div');
|
|
3365
|
+
columnHeaderElement.classList.add('tru-card-portal-column-header');
|
|
3366
|
+
new ColumnHeaderText(cardColumn, column, columnHeaderElement);
|
|
3367
|
+
new ColumnHeaderButton(column, columnHeaderElement);
|
|
3368
|
+
column.columnElement.insertBefore(columnHeaderElement, column.columnElement.firstChild);
|
|
3369
|
+
}
|
|
3370
|
+
}
|
|
3371
|
+
class ColumnHeaderText {
|
|
3372
|
+
cardColumn;
|
|
3373
|
+
data;
|
|
3374
|
+
constructor(cardColumn, column, parentElement) {
|
|
3375
|
+
this.cardColumn = cardColumn;
|
|
3376
|
+
this.data = column.data;
|
|
3377
|
+
let headerText = document.createElement('p');
|
|
3378
|
+
headerText.classList.add('tru-card-portal-column-headertext');
|
|
3379
|
+
if (this.cardColumn.userHasParentTableRole) {
|
|
3380
|
+
headerText.addEventListener('click', () => { alert('goToDetail'); });
|
|
3381
|
+
headerText.classList.add('tru-card-portal-column-headertext-hover');
|
|
3382
|
+
}
|
|
3383
|
+
if (!this.data?.unassigned) {
|
|
3384
|
+
let value = this.cardColumn.config.resultConfig.cardColumnId(column.data);
|
|
3385
|
+
if (value)
|
|
3386
|
+
headerText.innerHTML = value;
|
|
3387
|
+
}
|
|
3388
|
+
if (this.data?.unassigned && this.cardColumn.unassignedVisible)
|
|
3389
|
+
headerText.innerHTML = this.cardColumn.unassignedName ? this.cardColumn.unassignedName : 'Unassigned';
|
|
3390
|
+
parentElement.appendChild(headerText);
|
|
3391
|
+
}
|
|
3392
|
+
}
|
|
3393
|
+
class ColumnHeaderButton {
|
|
3394
|
+
column;
|
|
3395
|
+
selectAll = false;
|
|
3396
|
+
constructor(column, parentElement) {
|
|
3397
|
+
this.column = column;
|
|
3398
|
+
var linkButtonContainer = document.createElement('div');
|
|
3399
|
+
linkButtonContainer.classList.add('tru-card-portal-column-header-extras');
|
|
3400
|
+
let linkButton = document.createElement('a');
|
|
3401
|
+
linkButton.classList.add('tru-card-portal-column-header-extra-button');
|
|
3402
|
+
linkButton.classList.add('dark-hover');
|
|
3403
|
+
linkButton.href = '#';
|
|
3404
|
+
let linkButtonText = document.createElement('span');
|
|
3405
|
+
linkButtonText.classList.add('tru-card-icon-small');
|
|
3406
|
+
linkButtonText.classList.add('icon-check-square-o');
|
|
3407
|
+
linkButtonText.addEventListener('click', () => {
|
|
3408
|
+
this.selectAll = !this.selectAll;
|
|
3409
|
+
this.column.selectAll(this.selectAll);
|
|
3410
|
+
});
|
|
3411
|
+
linkButton.appendChild(linkButtonText);
|
|
3412
|
+
linkButtonContainer.appendChild(linkButton);
|
|
3413
|
+
this.column.selectAllButton = linkButtonContainer;
|
|
3414
|
+
parentElement.appendChild(linkButtonContainer);
|
|
3415
|
+
}
|
|
3416
|
+
}
|
|
3359
3417
|
|
|
3360
3418
|
class TruToolbar {
|
|
3361
3419
|
config = null;
|