@trudb/tru-common-lib 0.1.282 → 0.1.283
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 +72 -15
- package/fesm2022/trudb-tru-common-lib.mjs +71 -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,11 +3131,11 @@ 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) {
|
|
@@ -3151,7 +3151,7 @@ class Column {
|
|
|
3151
3151
|
this.columnElement = columnElement;
|
|
3152
3152
|
this.cardScrollPortElement = document.createElement('div');
|
|
3153
3153
|
this.cardScrollPortElement.classList.add('tru-card-portal-card-scroll-port');
|
|
3154
|
-
|
|
3154
|
+
new ColumnHeader(this.cardColumn, this);
|
|
3155
3155
|
this.columnElement.appendChild(this.cardScrollPortElement);
|
|
3156
3156
|
this.columnElement.addEventListener('filter-cards', (e) => {
|
|
3157
3157
|
this.updateDataByFilter();
|
|
@@ -3159,11 +3159,6 @@ class Column {
|
|
|
3159
3159
|
this.updateData();
|
|
3160
3160
|
this.parentElement.appendChild(this.columnElement);
|
|
3161
3161
|
}
|
|
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
3162
|
addEmptyCard = () => {
|
|
3168
3163
|
let emptyCards = _.filter(this.cards, function (card) { return !card.data; });
|
|
3169
3164
|
if (!emptyCards.length)
|
|
@@ -3199,10 +3194,6 @@ class Column {
|
|
|
3199
3194
|
this.addEmptyCard();
|
|
3200
3195
|
card = null;
|
|
3201
3196
|
};
|
|
3202
|
-
selectAll = (selectAll) => {
|
|
3203
|
-
for (var i = 0; i < this.cards.length; i++)
|
|
3204
|
-
this.cards[i].selectAll(selectAll);
|
|
3205
|
-
};
|
|
3206
3197
|
updateDataByFilter = () => {
|
|
3207
3198
|
let cardFilterStr = this.cardColumn.cardFilterStr;
|
|
3208
3199
|
if (cardFilterStr) {
|
|
@@ -3258,6 +3249,15 @@ class Column {
|
|
|
3258
3249
|
this.addEmptyCard();
|
|
3259
3250
|
}
|
|
3260
3251
|
};
|
|
3252
|
+
selectAll = (selectAll) => {
|
|
3253
|
+
for (var i = 0; i < this.cards.length; i++)
|
|
3254
|
+
this.cards[i].selectAll(selectAll);
|
|
3255
|
+
};
|
|
3256
|
+
addCard = (card) => {
|
|
3257
|
+
card.data.$entity[this.cardColumn.key] = this.data.Ref;
|
|
3258
|
+
this.data.cards.unshift(card.data);
|
|
3259
|
+
this.cards.unshift(new Card(this.cardColumn, this, card.data, true));
|
|
3260
|
+
};
|
|
3261
3261
|
}
|
|
3262
3262
|
class Card {
|
|
3263
3263
|
cardColumn;
|
|
@@ -3356,6 +3356,63 @@ class Card {
|
|
|
3356
3356
|
}
|
|
3357
3357
|
};
|
|
3358
3358
|
}
|
|
3359
|
+
class ColumnHeader {
|
|
3360
|
+
cardColumn;
|
|
3361
|
+
constructor(cardColumn, column) {
|
|
3362
|
+
this.cardColumn = cardColumn;
|
|
3363
|
+
let columnHeaderElement = document.createElement('div');
|
|
3364
|
+
columnHeaderElement.classList.add('tru-card-portal-column-header');
|
|
3365
|
+
new ColumnHeaderText(cardColumn, column, columnHeaderElement);
|
|
3366
|
+
new ColumnHeaderButton(column, columnHeaderElement);
|
|
3367
|
+
column.columnElement.insertBefore(columnHeaderElement, column.columnElement.firstChild);
|
|
3368
|
+
}
|
|
3369
|
+
}
|
|
3370
|
+
class ColumnHeaderText {
|
|
3371
|
+
cardColumn;
|
|
3372
|
+
data;
|
|
3373
|
+
constructor(cardColumn, column, parentElement) {
|
|
3374
|
+
this.cardColumn = cardColumn;
|
|
3375
|
+
this.data = column.data;
|
|
3376
|
+
let headerText = document.createElement('p');
|
|
3377
|
+
headerText.classList.add('tru-card-portal-column-headertext');
|
|
3378
|
+
if (this.cardColumn.userHasParentTableRole) {
|
|
3379
|
+
headerText.addEventListener('click', () => { alert('goToDetail'); });
|
|
3380
|
+
headerText.classList.add('tru-card-portal-column-headertext-hover');
|
|
3381
|
+
}
|
|
3382
|
+
if (!this.data?.unassigned) {
|
|
3383
|
+
let value = this.cardColumn.config.resultConfig.cardColumnId(column.data);
|
|
3384
|
+
if (value)
|
|
3385
|
+
headerText.innerHTML = value;
|
|
3386
|
+
}
|
|
3387
|
+
if (this.data?.unassigned && this.cardColumn.unassignedVisible)
|
|
3388
|
+
headerText.innerHTML = this.cardColumn.unassignedName ? this.cardColumn.unassignedName : 'Unassigned';
|
|
3389
|
+
parentElement.appendChild(headerText);
|
|
3390
|
+
}
|
|
3391
|
+
}
|
|
3392
|
+
class ColumnHeaderButton {
|
|
3393
|
+
column;
|
|
3394
|
+
selectAll = false;
|
|
3395
|
+
constructor(column, parentElement) {
|
|
3396
|
+
this.column = column;
|
|
3397
|
+
var linkButtonContainer = document.createElement('div');
|
|
3398
|
+
linkButtonContainer.classList.add('tru-card-portal-column-header-extras');
|
|
3399
|
+
let linkButton = document.createElement('a');
|
|
3400
|
+
linkButton.classList.add('tru-card-portal-column-header-extra-button');
|
|
3401
|
+
linkButton.classList.add('dark-hover');
|
|
3402
|
+
linkButton.href = '#';
|
|
3403
|
+
let linkButtonText = document.createElement('span');
|
|
3404
|
+
linkButtonText.classList.add('tru-card-icon-small');
|
|
3405
|
+
linkButtonText.classList.add('icon-check-square-o');
|
|
3406
|
+
linkButtonText.addEventListener('click', () => {
|
|
3407
|
+
this.selectAll = !this.selectAll;
|
|
3408
|
+
this.column.selectAll(this.selectAll);
|
|
3409
|
+
});
|
|
3410
|
+
linkButton.appendChild(linkButtonText);
|
|
3411
|
+
linkButtonContainer.appendChild(linkButton);
|
|
3412
|
+
this.column.selectAllButton = linkButtonContainer;
|
|
3413
|
+
parentElement.appendChild(linkButtonContainer);
|
|
3414
|
+
}
|
|
3415
|
+
}
|
|
3359
3416
|
|
|
3360
3417
|
class TruToolbar {
|
|
3361
3418
|
config = null;
|