Skip to content

Commit 975ef7e

Browse files
committed
[CST-3782] Style refinements and qualdrop moves fixed
1 parent 8e7fad4 commit 975ef7e

5 files changed

Lines changed: 20 additions & 19 deletions

File tree

src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.html

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,15 @@
1111
'd-none': value?.isVirtual && (model.hasSelectableMetadata || context?.index > 0)}">
1212
<div [ngClass]="getClass('grid', 'control')">
1313
<ng-container #componentViewContainer></ng-container>
14-
<!-- In case of repeatable fields show hint only for first element -->
15-
<small *ngIf="hasHint && (model.repeatable === false || context?.index === 0) && (!showErrorMessages || errorMessages.length === 0)"
16-
class="text-muted" [innerHTML]="model.hint | translate" [ngClass]="getClass('element', 'hint')"></small>
17-
<!-- In case of repeatable fields show empty space for all elements except the first -->
18-
<div *ngIf="context?.index > 0
14+
<small *ngIf="hasHint && (model.repeatable === false || context?.index === context?.context?.groups?.length - 1) && (!showErrorMessages || errorMessages.length === 0)"
15+
class="text-muted ds-hint" [innerHTML]="model.hint | translate" [ngClass]="getClass('element', 'hint')"></small>
16+
<!-- In case of repeatable fields show empty space for all elements except the first -->
17+
<div *ngIf="context?.index !== null
1918
&& (!showErrorMessages || errorMessages.length === 0)" class="clearfix w-100 mb-2"></div>
2019

21-
<div *ngIf="showErrorMessages" [ngClass]="[getClass('element', 'errors'), getClass('grid', 'errors')]">
22-
<small *ngFor="let message of errorMessages" class="invalid-feedback d-block">{{ message | translate: model.validators }}</small>
23-
</div>
20+
<div *ngIf="showErrorMessages" [ngClass]="[getClass('element', 'errors'), getClass('grid', 'errors')]">
21+
<small *ngFor="let message of errorMessages" class="invalid-feedback d-block">{{ message | translate: model.validators }}</small>
22+
</div>
2423

2524
</div>
2625
<div *ngIf="model.languageCodes && model.languageCodes.length > 0" class="col-xs-2" >

src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@
1212
[ngClass]="[getClass('element', 'group'), getClass('grid', 'group')]"
1313
cdkDrag cdkDragHandle>
1414
<!-- Item content -->
15+
<div *cdkDragPreview>
16+
<div class="alert alert-info">
17+
<i class="fas fa-sort"></i> {{ 'form.repeatable.sort.tip' | translate }}
18+
</div>
19+
</div>
20+
1521
<i class="drag-icon fas fa-grip-vertical fa-fw" [class.invisible]="model.groups.length === 1"></i>
1622
<ng-container *ngTemplateOutlet="startTemplate?.templateRef; context: groupModel"></ng-container>
1723
<ds-dynamic-form-control-container *ngFor="let _model of groupModel.group"

src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.scss

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
}
66

77
.cdk-drag {
8-
margin-left: -(2 * $spacer);
8+
margin-left: -(2.3 * $spacer);
99
margin-right: -(0.5 * $spacer);
1010
padding-right: (0.5 * $spacer);
1111
.drag-icon {
@@ -37,17 +37,11 @@
3737
}
3838

3939
.cdk-drag-preview {
40-
background-color: white;
41-
border-radius: $border-radius-sm;
42-
margin-left: 0;
43-
box-shadow: 0 5px 5px 0px rgba(0, 0, 0, 0.2),
44-
0 8px 10px 1px rgba(0, 0, 0, 0.14),
45-
0 3px 14px 2px rgba(0, 0, 0, 0.12);
46-
.drag-icon {
47-
visibility: visible;
48-
}
40+
margin: 0px;
41+
padding: 0px;
4942
}
5043

44+
5145
.cdk-drag-placeholder {
5246
opacity: 0;
5347
}

src/app/submission/sections/form/section-form-operations.service.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,8 @@ export class SectionFormOperationsService {
349349
const segmentedPath = this.getFieldPathSegmentedFromChangeEvent(event);
350350
const value = this.getFieldValueFromChangeEvent(event);
351351
// Detect which operation must be dispatched
352-
if (this.formBuilder.isQualdropGroup(event.model.parent as DynamicFormControlModel)) {
352+
if (this.formBuilder.isQualdropGroup(event.model.parent as DynamicFormControlModel)
353+
|| this.formBuilder.isQualdropGroup(event.model as DynamicFormControlModel)) {
353354
// It's a qualdrup model
354355
this.dispatchOperationsFromMap(this.getQualdropValueMap(event), pathCombiner, event, previousValue);
355356
} else if (this.formBuilder.isRelationGroup(event.model)) {

src/assets/i18n/en.json5

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1309,6 +1309,7 @@
13091309

13101310
"form.submit": "Submit",
13111311

1312+
"form.repeatable.sort.tip": "Drop the item in the new position",
13121313

13131314

13141315
"home.description": "",

0 commit comments

Comments
 (0)