@acorex/platform 19.1.12 → 19.1.14
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/common/lib/common.module.d.ts +2 -1
- package/fesm2022/acorex-platform-common.mjs +18 -7
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +51 -4
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-filters.mjs +46 -4
- package/fesm2022/acorex-platform-layout-filters.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BDjcOo6R.mjs → acorex-platform-themes-default-entity-master-list-view.component-CWnQBjEa.mjs} +3 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CWnQBjEa.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +2 -2
- package/fesm2022/acorex-platform-widgets.mjs +1278 -1060
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +4 -3
- package/layout/filters/lib/filters.viewmodel.d.ts +1 -0
- package/package.json +5 -5
- package/widgets/lib/properties/layout.props.d.ts +1 -0
- package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +3 -1
- package/widgets/lib/widgets/filters/boolean-filter/boolean-filter-widget-edit.component.d.ts +2 -1
- package/widgets/lib/widgets/filters/string-filter/string-filter-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/index.d.ts +1 -0
- package/widgets/lib/widgets/layout/advanced-grid/advanced-grid-widget-designer.component.d.ts +10 -16
- package/widgets/lib/widgets/layout/advanced-grid/advanced-grid-widget-types.component.d.ts +10 -0
- package/widgets/lib/widgets/layout/grid/grid-widget-designer.component.d.ts +1 -0
- package/widgets/lib/widgets/property-editors/advanced-grid-options/advanced-grid-options-widget-editor.component.d.ts +32 -0
- package/widgets/lib/widgets/property-editors/advanced-grid-options/advanced-grid-options-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/property-editors/advanced-grid-options/advanced-grid-options-widget.type.d.ts +6 -0
- package/widgets/lib/widgets/property-editors/advanced-grid-options/index.d.ts +2 -0
- package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget-editor.component.d.ts +1 -1
- package/widgets/lib/widgets/property-editors/grid-options/grid-options-widget-editor.component.d.ts +1 -1
- package/widgets/lib/widgets/property-editors/grid-options/grid-options-widget.type.d.ts +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BDjcOo6R.mjs.map +0 -1
|
@@ -12,7 +12,7 @@ import { AXLoadingModule } from '@acorex/components/loading';
|
|
|
12
12
|
import * as i1$1 from '@angular/common';
|
|
13
13
|
import { CommonModule } from '@angular/common';
|
|
14
14
|
import * as i0 from '@angular/core';
|
|
15
|
-
import { computed, EventEmitter, Component, ChangeDetectionStrategy, inject, HostBinding, signal, effect, ViewEncapsulation, InjectionToken, ViewChild, untracked, ChangeDetectorRef, ElementRef, viewChild,
|
|
15
|
+
import { computed, EventEmitter, Component, ChangeDetectionStrategy, inject, HostBinding, signal, effect, ViewEncapsulation, InjectionToken, ViewChild, untracked, ChangeDetectorRef, ElementRef, viewChild, afterNextRender, afterRender, NgZone, model, input, HostListener, NgModule } from '@angular/core';
|
|
16
16
|
import * as i1 from '@acorex/components/check-box';
|
|
17
17
|
import { AXCheckBoxModule } from '@acorex/components/check-box';
|
|
18
18
|
import * as i3$1 from '@acorex/components/form';
|
|
@@ -65,20 +65,20 @@ import * as i1$4 from '@acorex/components/map';
|
|
|
65
65
|
import { AXMapModule } from '@acorex/components/map';
|
|
66
66
|
import * as i1$5 from '@acorex/components/grid-layout-builder';
|
|
67
67
|
import { AXGridLayoutContainerComponent, AXGridLayoutBuilderModule } from '@acorex/components/grid-layout-builder';
|
|
68
|
-
import { AXPDesignerService, AXPWidgetDesignerRendererDirective,
|
|
69
|
-
import * as
|
|
68
|
+
import { AXPDesignerService, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent, AXPDesignerGridDrawerComponent } from '@acorex/platform/layout/designer';
|
|
69
|
+
import * as i1$7 from '@acorex/components/button-group';
|
|
70
70
|
import { AXButtonGroupModule } from '@acorex/components/button-group';
|
|
71
|
-
import * as i2$6 from '@acorex/components/color-box';
|
|
72
|
-
import { AXColorBoxModule } from '@acorex/components/color-box';
|
|
73
|
-
import * as i3$6 from '@acorex/components/range-slider';
|
|
74
|
-
import { AXRangeSliderModule } from '@acorex/components/range-slider';
|
|
75
71
|
import * as i6 from '@acorex/components/dropdown';
|
|
76
72
|
import { AXDropdownModule } from '@acorex/components/dropdown';
|
|
77
|
-
import * as
|
|
73
|
+
import * as i7$1 from '@acorex/components/range-slider';
|
|
74
|
+
import { AXRangeSliderModule } from '@acorex/components/range-slider';
|
|
75
|
+
import * as i2$6 from '@acorex/components/color-box';
|
|
76
|
+
import { AXColorBoxModule } from '@acorex/components/color-box';
|
|
77
|
+
import * as i1$8 from '@acorex/components/popover';
|
|
78
78
|
import { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';
|
|
79
|
-
import * as i1$
|
|
79
|
+
import * as i1$9 from '@acorex/components/cron-job';
|
|
80
80
|
import { AXCronJobModule } from '@acorex/components/cron-job';
|
|
81
|
-
import * as i1$
|
|
81
|
+
import * as i1$a from '@acorex/components/qrcode';
|
|
82
82
|
import { AXQrcodeModule } from '@acorex/components/qrcode';
|
|
83
83
|
import { AXColorUtil } from '@acorex/core/utils';
|
|
84
84
|
import { DomSanitizer } from '@angular/platform-browser';
|
|
@@ -852,7 +852,7 @@ const AXP_LAYOUT_FLEX_PROPERTY = {
|
|
|
852
852
|
const AXP_LAYOUT_GRID_PROPERTY = {
|
|
853
853
|
name: 'gridOptions',
|
|
854
854
|
title: 'Grid Options',
|
|
855
|
-
group:
|
|
855
|
+
group: AXP_LAYOUT_GRID_PROPERTY_GROUP,
|
|
856
856
|
schema: {
|
|
857
857
|
dataType: 'object',
|
|
858
858
|
interface: {
|
|
@@ -864,6 +864,21 @@ const AXP_LAYOUT_GRID_PROPERTY = {
|
|
|
864
864
|
},
|
|
865
865
|
visible: true,
|
|
866
866
|
};
|
|
867
|
+
const AXP_LAYOUT_ADVANCED_GRID_PROPERTY = {
|
|
868
|
+
name: 'advancedGridOptions',
|
|
869
|
+
title: 'Advanced Grid Options',
|
|
870
|
+
group: AXP_LAYOUT_GRID_PROPERTY_GROUP,
|
|
871
|
+
schema: {
|
|
872
|
+
dataType: 'object',
|
|
873
|
+
interface: {
|
|
874
|
+
name: 'advancedGridOptions',
|
|
875
|
+
path: 'options.advancedGridOptions',
|
|
876
|
+
type: AXPWidgetsCatalog.advancedGridOptions,
|
|
877
|
+
options: {},
|
|
878
|
+
},
|
|
879
|
+
},
|
|
880
|
+
visible: true,
|
|
881
|
+
};
|
|
867
882
|
|
|
868
883
|
const AXP_TABLE_COLUMN_WIDTH_PROPERTY = {
|
|
869
884
|
name: 'width',
|
|
@@ -4719,6 +4734,12 @@ class AXPSelectBoxWidgetEditComponent extends AXPDataListWidgetComponent {
|
|
|
4719
4734
|
this.placeholder = computed(() => this.options()['placeholder'] ?? '');
|
|
4720
4735
|
this.hasClearButton = computed(() => this.options()['hasClearButton']);
|
|
4721
4736
|
this.allowSearch = computed(() => this.options()['allowSearch'] ?? false);
|
|
4737
|
+
this.filter = computed(() => this.options()['filter'] ?? {});
|
|
4738
|
+
this.#effect = effect(() => {
|
|
4739
|
+
if (this.filter()) {
|
|
4740
|
+
this.dataSource().filter(this.filter());
|
|
4741
|
+
}
|
|
4742
|
+
});
|
|
4722
4743
|
}
|
|
4723
4744
|
outputs() {
|
|
4724
4745
|
return ['selectedItems'];
|
|
@@ -4739,6 +4760,7 @@ class AXPSelectBoxWidgetEditComponent extends AXPDataListWidgetComponent {
|
|
|
4739
4760
|
}
|
|
4740
4761
|
}
|
|
4741
4762
|
}
|
|
4763
|
+
#effect;
|
|
4742
4764
|
refresh() {
|
|
4743
4765
|
this.selectbox?.refresh();
|
|
4744
4766
|
}
|
|
@@ -5372,12 +5394,12 @@ var textBoxWidgetView_component = /*#__PURE__*/Object.freeze({
|
|
|
5372
5394
|
class AXPTextBoxWidgetEditComponent extends AXPWidgetComponent {
|
|
5373
5395
|
constructor() {
|
|
5374
5396
|
super(...arguments);
|
|
5375
|
-
this.multiple = computed(() => this.options()[
|
|
5397
|
+
this.multiple = computed(() => this.options()['multiple']);
|
|
5376
5398
|
this.hasClearButton = computed(() => this.options()['hasClearButton']);
|
|
5377
|
-
this.disabled = computed(() => this.options()[
|
|
5378
|
-
this.placeholder = computed(() => this.options()[
|
|
5379
|
-
this.validationRules = computed(() => this.options()[
|
|
5380
|
-
this.internalValue = computed(() =>
|
|
5399
|
+
this.disabled = computed(() => this.options()['disabled']);
|
|
5400
|
+
this.placeholder = computed(() => this.options()['placeholder']);
|
|
5401
|
+
this.validationRules = computed(() => this.options()['validationRules'] ?? []);
|
|
5402
|
+
this.internalValue = computed(() => Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]);
|
|
5381
5403
|
}
|
|
5382
5404
|
handleValueChange(e, i) {
|
|
5383
5405
|
if (e.isUserInteraction) {
|
|
@@ -5408,11 +5430,21 @@ class AXPTextBoxWidgetEditComponent extends AXPWidgetComponent {
|
|
|
5408
5430
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPTextBoxWidgetEditComponent, isStandalone: true, selector: "axp-text-box-widget", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
|
|
5409
5431
|
<div class="ax-grid ax-grid-cols-12 ax-gap-4">
|
|
5410
5432
|
@for (text of internalValue(); track $index) {
|
|
5411
|
-
<ax-text-box
|
|
5433
|
+
<ax-text-box
|
|
5434
|
+
class="ax-col-span-12"
|
|
5435
|
+
[ngModel]="text"
|
|
5436
|
+
[type]="'text'"
|
|
5437
|
+
(onValueChanged)="handleValueChange($event, $index)"
|
|
5438
|
+
[disabled]="disabled()"
|
|
5439
|
+
[placeholder]="placeholder()"
|
|
5440
|
+
>
|
|
5412
5441
|
@for (validation of validationRules(); track $index) {
|
|
5413
|
-
|
|
5414
|
-
|
|
5415
|
-
|
|
5442
|
+
<ax-validation-rule
|
|
5443
|
+
[rule]="validation.rule"
|
|
5444
|
+
[message]="validation.options?.message"
|
|
5445
|
+
[options]="validation.options"
|
|
5446
|
+
></ax-validation-rule>
|
|
5447
|
+
} @if(hasClearButton()){
|
|
5416
5448
|
<ax-clear-button></ax-clear-button>
|
|
5417
5449
|
} @if(multiple()){
|
|
5418
5450
|
<ax-suffix>
|
|
@@ -5445,11 +5477,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
5445
5477
|
template: `
|
|
5446
5478
|
<div class="ax-grid ax-grid-cols-12 ax-gap-4">
|
|
5447
5479
|
@for (text of internalValue(); track $index) {
|
|
5448
|
-
<ax-text-box
|
|
5480
|
+
<ax-text-box
|
|
5481
|
+
class="ax-col-span-12"
|
|
5482
|
+
[ngModel]="text"
|
|
5483
|
+
[type]="'text'"
|
|
5484
|
+
(onValueChanged)="handleValueChange($event, $index)"
|
|
5485
|
+
[disabled]="disabled()"
|
|
5486
|
+
[placeholder]="placeholder()"
|
|
5487
|
+
>
|
|
5449
5488
|
@for (validation of validationRules(); track $index) {
|
|
5450
|
-
|
|
5451
|
-
|
|
5452
|
-
|
|
5489
|
+
<ax-validation-rule
|
|
5490
|
+
[rule]="validation.rule"
|
|
5491
|
+
[message]="validation.options?.message"
|
|
5492
|
+
[options]="validation.options"
|
|
5493
|
+
></ax-validation-rule>
|
|
5494
|
+
} @if(hasClearButton()){
|
|
5453
5495
|
<ax-clear-button></ax-clear-button>
|
|
5454
5496
|
} @if(multiple()){
|
|
5455
5497
|
<ax-suffix>
|
|
@@ -5475,8 +5517,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
5475
5517
|
</div>
|
|
5476
5518
|
`,
|
|
5477
5519
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
5478
|
-
imports: [
|
|
5479
|
-
|
|
5520
|
+
imports: [
|
|
5521
|
+
CommonModule,
|
|
5522
|
+
AXTextBoxModule,
|
|
5523
|
+
FormsModule,
|
|
5524
|
+
AXFormModule,
|
|
5525
|
+
AXDecoratorModule,
|
|
5526
|
+
AXValidationModule,
|
|
5527
|
+
AXButtonModule,
|
|
5528
|
+
],
|
|
5529
|
+
inputs: [],
|
|
5480
5530
|
}]
|
|
5481
5531
|
}], propDecorators: { __class: [{
|
|
5482
5532
|
type: HostBinding,
|
|
@@ -7490,376 +7540,119 @@ const AXPSignatureWidget = {
|
|
|
7490
7540
|
},
|
|
7491
7541
|
};
|
|
7492
7542
|
|
|
7493
|
-
|
|
7494
|
-
|
|
7495
|
-
|
|
7496
|
-
|
|
7497
|
-
|
|
7498
|
-
|
|
7499
|
-
|
|
7500
|
-
|
|
7501
|
-
|
|
7502
|
-
|
|
7503
|
-
|
|
7504
|
-
|
|
7505
|
-
|
|
7506
|
-
|
|
7507
|
-
|
|
7508
|
-
|
|
7509
|
-
return [values[0], values[1], values[2], values[1]];
|
|
7510
|
-
case 4:
|
|
7511
|
-
return values;
|
|
7512
|
-
default:
|
|
7513
|
-
throw new Error(`Invalid shorthand value count. Input: ${values}`);
|
|
7514
|
-
}
|
|
7515
|
-
}
|
|
7516
|
-
/**
|
|
7517
|
-
* @param values An array of four values to condense.
|
|
7518
|
-
* @returns A condensed string representation of the values.
|
|
7519
|
-
*/
|
|
7520
|
-
static condenseShorthand(values) {
|
|
7521
|
-
if (values.length !== 4) {
|
|
7522
|
-
throw new Error('Expected 4 values for condensation.');
|
|
7523
|
-
}
|
|
7524
|
-
if (values[0] === values[1] && values[1] === values[2] && values[2] === values[3]) {
|
|
7525
|
-
return `${values[0]}`;
|
|
7526
|
-
}
|
|
7527
|
-
else if (values[0] === values[2] && values[1] === values[3]) {
|
|
7528
|
-
return `${values[0]} ${values[1]}`;
|
|
7529
|
-
}
|
|
7530
|
-
else if (values[1] === values[3]) {
|
|
7531
|
-
return `${values[0]} ${values[1]} ${values[2]}`;
|
|
7532
|
-
}
|
|
7533
|
-
else {
|
|
7534
|
-
return `${values[0]} ${values[1]} ${values[2]} ${values[3]}`;
|
|
7535
|
-
}
|
|
7536
|
-
}
|
|
7537
|
-
/**
|
|
7538
|
-
* Parses sides (top, left, bottom, right) from a string.
|
|
7539
|
-
* @param input - Input string.
|
|
7540
|
-
* @returns Parsed sides object.
|
|
7541
|
-
*/
|
|
7542
|
-
static parseSides(input) {
|
|
7543
|
-
const values = this.expandShorthand(input.match(/(?:rgb\([^)]+\)|[^ ]+)/g)?.map((value) => value.trim()) || []);
|
|
7544
|
-
return { top: values[0], right: values[1], bottom: values[2], left: values[3] };
|
|
7545
|
-
}
|
|
7546
|
-
static parseSidesWithUnits(input) {
|
|
7547
|
-
const values = this.expandShorthand(input.match(/(?:rgb\([^)]+\)|[^ ]+)/g)?.map((value) => value.trim()) || []);
|
|
7548
|
-
return {
|
|
7549
|
-
top: AXPPropertyEditorHelper.getValueWithUnit(values[0]).value,
|
|
7550
|
-
right: AXPPropertyEditorHelper.getValueWithUnit(values[1]).value,
|
|
7551
|
-
bottom: AXPPropertyEditorHelper.getValueWithUnit(values[2]).value,
|
|
7552
|
-
left: AXPPropertyEditorHelper.getValueWithUnit(values[3]).value,
|
|
7553
|
-
};
|
|
7554
|
-
}
|
|
7555
|
-
/**
|
|
7556
|
-
* Parses corners (top-left, top-right, bottom-left, bottom-right) from a string.
|
|
7557
|
-
* @param input - Input string.
|
|
7558
|
-
* @returns Parsed corners object.
|
|
7559
|
-
*/
|
|
7560
|
-
static parseCorners(input) {
|
|
7561
|
-
const values = this.expandShorthand(input.split(' ').map((value) => value.trim()));
|
|
7562
|
-
return {
|
|
7563
|
-
'top-left': AXPPropertyEditorHelper.getValueWithUnit(values[0]).value,
|
|
7564
|
-
'top-right': AXPPropertyEditorHelper.getValueWithUnit(values[1]).value,
|
|
7565
|
-
'bottom-left': AXPPropertyEditorHelper.getValueWithUnit(values[2]).value,
|
|
7566
|
-
'bottom-right': AXPPropertyEditorHelper.getValueWithUnit(values[3]).value,
|
|
7543
|
+
class AXPAdvancedGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
7544
|
+
constructor() {
|
|
7545
|
+
super();
|
|
7546
|
+
this.isRendered = signal(false);
|
|
7547
|
+
this.el = inject(ElementRef);
|
|
7548
|
+
this.designerService = inject(AXPDesignerService);
|
|
7549
|
+
this.container = viewChild(AXGridLayoutContainerComponent);
|
|
7550
|
+
this.gridOptions = {
|
|
7551
|
+
column: 6,
|
|
7552
|
+
cellHeight: 100,
|
|
7553
|
+
margin: 5,
|
|
7554
|
+
minRow: 1,
|
|
7555
|
+
removable: '.grid-stack-trash',
|
|
7556
|
+
acceptWidgets: true,
|
|
7557
|
+
// float: true,
|
|
7558
|
+
// rtl: true,
|
|
7567
7559
|
};
|
|
7560
|
+
this.itemsCount = computed(() => this.options()['advancedGridOptions']?.itemsCount);
|
|
7561
|
+
this.columns = computed(() => this.options()['advancedGridOptions']?.columns);
|
|
7562
|
+
this.justifyItems = computed(() => this.options()['advancedGridOptions']?.justifyItems);
|
|
7563
|
+
this.alignItems = computed(() => this.options()['advancedGridOptions']?.alignItems);
|
|
7564
|
+
this.#eff = effect(() => console.log(this.options()['advancedGridOptions']));
|
|
7565
|
+
this.#initValues = afterNextRender(() => {
|
|
7566
|
+
this.initValues();
|
|
7567
|
+
this.isRendered.set(true);
|
|
7568
|
+
});
|
|
7569
|
+
this.#rowOrColumnChangeEffect = effect(() => {
|
|
7570
|
+
const deferent = this.itemsCount() - this.children().length;
|
|
7571
|
+
untracked(() => {
|
|
7572
|
+
if (deferent > 0) {
|
|
7573
|
+
Array.from({ length: deferent })
|
|
7574
|
+
.map(() => ({
|
|
7575
|
+
type: AXPWidgetsCatalog.gridItem,
|
|
7576
|
+
}))
|
|
7577
|
+
.forEach((node) => {
|
|
7578
|
+
this.designerService.addWidget(this.node, node);
|
|
7579
|
+
});
|
|
7580
|
+
//debugger;
|
|
7581
|
+
const save = this.container()?.save();
|
|
7582
|
+
const layout = save?.children?.map((child) => {
|
|
7583
|
+
if (child && child.id) {
|
|
7584
|
+
return {
|
|
7585
|
+
...child,
|
|
7586
|
+
data: this.children()[Number.parseInt(child.id)],
|
|
7587
|
+
};
|
|
7588
|
+
}
|
|
7589
|
+
return { ...child, data: undefined };
|
|
7590
|
+
});
|
|
7591
|
+
const value = {
|
|
7592
|
+
data: {
|
|
7593
|
+
alignItems: this.alignItems(),
|
|
7594
|
+
justifyItems: this.justifyItems(),
|
|
7595
|
+
columns: this.columns(),
|
|
7596
|
+
itemsCount: this.itemsCount(),
|
|
7597
|
+
},
|
|
7598
|
+
layout: { ...save, children: layout },
|
|
7599
|
+
};
|
|
7600
|
+
this.setValue(value);
|
|
7601
|
+
}
|
|
7602
|
+
else if (deferent < 0) {
|
|
7603
|
+
this.children()
|
|
7604
|
+
.slice(deferent)
|
|
7605
|
+
.forEach((node) => this.designerService.removeWidget(node));
|
|
7606
|
+
}
|
|
7607
|
+
});
|
|
7608
|
+
});
|
|
7609
|
+
this.#setJustifyAndAlign = afterRender(() => {
|
|
7610
|
+
const els = this.el.nativeElement.querySelectorAll('ax-grid-layout-widget > .grid-stack-item-content');
|
|
7611
|
+
if (els.length) {
|
|
7612
|
+
els.forEach((item) => {
|
|
7613
|
+
if (item instanceof HTMLElement) {
|
|
7614
|
+
item.style.padding = '0.5rem';
|
|
7615
|
+
item.style.removeProperty('justify-content');
|
|
7616
|
+
item.style.justifyContent = this.justifyItems();
|
|
7617
|
+
item.style.removeProperty('align-items');
|
|
7618
|
+
item.style.alignItems = this.alignItems();
|
|
7619
|
+
}
|
|
7620
|
+
else {
|
|
7621
|
+
console.warn('Found a non-HTMLElement within the selected elements:', item);
|
|
7622
|
+
}
|
|
7623
|
+
});
|
|
7624
|
+
}
|
|
7625
|
+
});
|
|
7626
|
+
window.ag = this; //debug purpose
|
|
7568
7627
|
}
|
|
7569
|
-
|
|
7570
|
-
* Parses a spacing box from strings for margin and padding.
|
|
7571
|
-
* @param input - Spacing box string input.
|
|
7572
|
-
* @returns Parsed spacing box.
|
|
7573
|
-
*/
|
|
7574
|
-
static parseSpacingBox(input) {
|
|
7628
|
+
calcWidgetOption(id) {
|
|
7575
7629
|
return {
|
|
7576
|
-
|
|
7577
|
-
|
|
7630
|
+
h: 1,
|
|
7631
|
+
w: 1,
|
|
7632
|
+
id: id,
|
|
7578
7633
|
};
|
|
7579
7634
|
}
|
|
7580
|
-
|
|
7581
|
-
|
|
7582
|
-
|
|
7583
|
-
|
|
7584
|
-
|
|
7585
|
-
|
|
7586
|
-
|
|
7587
|
-
|
|
7588
|
-
|
|
7589
|
-
|
|
7590
|
-
|
|
7591
|
-
|
|
7635
|
+
#eff;
|
|
7636
|
+
#initValues;
|
|
7637
|
+
initValues() {
|
|
7638
|
+
//TODO update values from
|
|
7639
|
+
const data = this.getValue();
|
|
7640
|
+
if (data?.layout) {
|
|
7641
|
+
}
|
|
7642
|
+
else {
|
|
7643
|
+
Array.from({ length: this.itemsCount() }).map(() => ({
|
|
7644
|
+
type: AXPWidgetsCatalog.gridItem,
|
|
7645
|
+
}));
|
|
7646
|
+
const layout = this.container()?.save();
|
|
7647
|
+
}
|
|
7592
7648
|
}
|
|
7593
|
-
|
|
7594
|
-
|
|
7595
|
-
|
|
7596
|
-
* @param units - Units for margin and padding.
|
|
7597
|
-
* @returns String representation of the spacing box.
|
|
7598
|
-
*/
|
|
7599
|
-
static parseSpacingBoxReverse(input, units) {
|
|
7600
|
-
const format = (value, unit) => `${value}${unit}`;
|
|
7649
|
+
#rowOrColumnChangeEffect;
|
|
7650
|
+
#setJustifyAndAlign;
|
|
7651
|
+
get __class() {
|
|
7601
7652
|
return {
|
|
7602
|
-
|
|
7603
|
-
|
|
7604
|
-
|
|
7605
|
-
format(input.margin.bottom, units.margin.bottom),
|
|
7606
|
-
format(input.margin.left, units.margin.left),
|
|
7607
|
-
]),
|
|
7608
|
-
padding: AXPPropertyEditorHelper.condenseShorthand([
|
|
7609
|
-
format(input.padding.top, units.padding.top),
|
|
7610
|
-
format(input.padding.right, units.padding.right),
|
|
7611
|
-
format(input.padding.bottom, units.padding.bottom),
|
|
7612
|
-
format(input.padding.left, units.padding.left),
|
|
7613
|
-
]),
|
|
7614
|
-
};
|
|
7615
|
-
}
|
|
7616
|
-
/**
|
|
7617
|
-
* Reverses a border box object into a string representation.
|
|
7618
|
-
* @param input - Border box object.
|
|
7619
|
-
* @param units - Units for width, radius, color, and style.
|
|
7620
|
-
* @returns String representation of the border box.
|
|
7621
|
-
*/
|
|
7622
|
-
static parseBorderBoxReverse(input, units) {
|
|
7623
|
-
const format = (value, unit) => `${value}${unit}`;
|
|
7624
|
-
return {
|
|
7625
|
-
width: AXPPropertyEditorHelper.condenseShorthand([
|
|
7626
|
-
format(input.width.top, units.width.top),
|
|
7627
|
-
format(input.width.right, units.width.right),
|
|
7628
|
-
format(input.width.bottom, units.width.bottom),
|
|
7629
|
-
format(input.width.left, units.width.left),
|
|
7630
|
-
]),
|
|
7631
|
-
radius: AXPPropertyEditorHelper.condenseShorthand([
|
|
7632
|
-
format(input.radius['top-left'], units.radius['top-left']),
|
|
7633
|
-
format(input.radius['top-right'], units.radius['top-right']),
|
|
7634
|
-
format(input.radius['bottom-right'], units.radius['bottom-right']),
|
|
7635
|
-
format(input.radius['bottom-left'], units.radius['bottom-left']),
|
|
7636
|
-
]),
|
|
7637
|
-
color: AXPPropertyEditorHelper.condenseShorthand([
|
|
7638
|
-
`${input.color.top}${units.color.top}`,
|
|
7639
|
-
`${input.color.right}${units.color.right}`,
|
|
7640
|
-
`${input.color.bottom}${units.color.bottom}`,
|
|
7641
|
-
`${input.color.left}${units.color.left}`,
|
|
7642
|
-
]),
|
|
7643
|
-
style: AXPPropertyEditorHelper.condenseShorthand([
|
|
7644
|
-
`${input.style.top}${units.style.top}`,
|
|
7645
|
-
`${input.style.right}${units.style.right}`,
|
|
7646
|
-
`${input.style.bottom}${units.style.bottom}`,
|
|
7647
|
-
`${input.style.left}${units.style.left}`,
|
|
7648
|
-
]),
|
|
7649
|
-
};
|
|
7650
|
-
}
|
|
7651
|
-
/**
|
|
7652
|
-
* Parses a value with a unit (e.g., "20px") and returns its numeric value and unit.
|
|
7653
|
-
* @param input - Input string or number.
|
|
7654
|
-
* @returns Object with value and unit.
|
|
7655
|
-
*/
|
|
7656
|
-
static getValueWithUnit(input) {
|
|
7657
|
-
if (typeof input === 'number')
|
|
7658
|
-
return { value: input, unit: 'px' };
|
|
7659
|
-
if (input === 'auto')
|
|
7660
|
-
return { value: 0, unit: 'px' };
|
|
7661
|
-
const match = input.match(/^([0-9.]+)([a-z%]*)$/i);
|
|
7662
|
-
if (!match)
|
|
7663
|
-
throw new Error(`Invalid unit format: ${input}`);
|
|
7664
|
-
return { value: parseFloat(match[1]), unit: match[2] || '' };
|
|
7665
|
-
}
|
|
7666
|
-
/**
|
|
7667
|
-
* Reverses a numeric value and unit into a single string.
|
|
7668
|
-
* @param value - Numeric value.
|
|
7669
|
-
* @param unit - Unit string.
|
|
7670
|
-
* @returns Combined string.
|
|
7671
|
-
*/
|
|
7672
|
-
static getValueFromUnit(value, unit) {
|
|
7673
|
-
return unit ? `${value}${unit}` : `${value}`;
|
|
7674
|
-
}
|
|
7675
|
-
/**
|
|
7676
|
-
* Parses a gap string into x and y values and units.
|
|
7677
|
-
*
|
|
7678
|
-
* @param gapString The gap string to parse (e.g., "10px", "10px 20px").
|
|
7679
|
-
* @returns An object containing the x and y values and units.
|
|
7680
|
-
* @throws Error If the gap string is invalid.
|
|
7681
|
-
*/
|
|
7682
|
-
static parseGap(gap) {
|
|
7683
|
-
// Split the gap string into parts
|
|
7684
|
-
const parts = gap.split(/\s+/);
|
|
7685
|
-
// Extract the first value and unit using a regex
|
|
7686
|
-
const match = parts[0].match(/^(\d+\.?\d*)([a-z%]+)$/);
|
|
7687
|
-
if (!match) {
|
|
7688
|
-
throw new Error('Invalid gap format');
|
|
7689
|
-
}
|
|
7690
|
-
const [, xValue, unit] = match;
|
|
7691
|
-
// Determine the y value
|
|
7692
|
-
let yValue = parseFloat(xValue); // Default to the same as x
|
|
7693
|
-
if (parts.length === 2) {
|
|
7694
|
-
const secondMatch = parts[1].match(/^(\d+\.?\d*)[a-z%]+$/);
|
|
7695
|
-
if (!secondMatch) {
|
|
7696
|
-
throw new Error('Invalid gap format');
|
|
7697
|
-
}
|
|
7698
|
-
yValue = parseFloat(secondMatch[1]);
|
|
7699
|
-
}
|
|
7700
|
-
return {
|
|
7701
|
-
values: {
|
|
7702
|
-
x: parseFloat(xValue),
|
|
7703
|
-
y: yValue,
|
|
7704
|
-
},
|
|
7705
|
-
unit,
|
|
7706
|
-
};
|
|
7707
|
-
}
|
|
7708
|
-
/**
|
|
7709
|
-
* Extracts the repetition count from a CSS grid template string of the format "repeat(N, 1fr)".
|
|
7710
|
-
*
|
|
7711
|
-
* @param gridTemplate - The CSS grid template string, e.g., "repeat(5, 1fr)".
|
|
7712
|
-
* @returns The number of repetitions as a number.
|
|
7713
|
-
*/
|
|
7714
|
-
static parseGridTemplate(gridTemplate) {
|
|
7715
|
-
const match = gridTemplate.match(/^repeat\((\d+),\s*1fr\)$/);
|
|
7716
|
-
if (!match) {
|
|
7717
|
-
throw new Error("Invalid grid template format. Expected 'repeat(N, 1fr)'.");
|
|
7718
|
-
}
|
|
7719
|
-
return parseInt(match[1], 10);
|
|
7720
|
-
}
|
|
7721
|
-
/**
|
|
7722
|
-
* Creates a CSS grid template string of the format "repeat(N, 1fr)"
|
|
7723
|
-
* based on the provided repetition count.
|
|
7724
|
-
*
|
|
7725
|
-
* @param repetitionCount - The number of repetitions.
|
|
7726
|
-
* @returns The CSS grid template string, e.g., "repeat(5, 1fr)".
|
|
7727
|
-
*/
|
|
7728
|
-
static createGridTemplate(repetitionCount) {
|
|
7729
|
-
if (repetitionCount <= 0) {
|
|
7730
|
-
throw new Error('Repetition count must be a positive integer.');
|
|
7731
|
-
}
|
|
7732
|
-
return `repeat(${repetitionCount}, 1fr)`;
|
|
7733
|
-
}
|
|
7734
|
-
}
|
|
7735
|
-
|
|
7736
|
-
class AXPAdvancedGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
7737
|
-
constructor() {
|
|
7738
|
-
super();
|
|
7739
|
-
this.el = inject(ElementRef);
|
|
7740
|
-
this.designerService = inject(AXPDesignerService);
|
|
7741
|
-
this.container = viewChild(AXGridLayoutContainerComponent);
|
|
7742
|
-
this.widgetOption = {
|
|
7743
|
-
h: 1,
|
|
7744
|
-
w: 1,
|
|
7745
|
-
content: '',
|
|
7746
|
-
};
|
|
7747
|
-
this.gridOptions = {
|
|
7748
|
-
column: 6,
|
|
7749
|
-
cellHeight: 100,
|
|
7750
|
-
margin: 5,
|
|
7751
|
-
minRow: 1,
|
|
7752
|
-
removable: '.grid-stack-trash',
|
|
7753
|
-
acceptWidgets: true,
|
|
7754
|
-
// float: true,
|
|
7755
|
-
// rtl: true,
|
|
7756
|
-
};
|
|
7757
|
-
this.cols = computed(() => {
|
|
7758
|
-
const value = this.calcGridRowOrColumn(this.options()['gridOptions']?.default?.gridTemplateColumns ?? 'repeat(1, 1fr)');
|
|
7759
|
-
this.container()?.setColumn(value);
|
|
7760
|
-
return value;
|
|
7761
|
-
});
|
|
7762
|
-
this.rows = computed(() => this.calcGridRowOrColumn(this.options()['gridOptions']?.default?.gridTemplateRows ?? 'repeat(1, 1fr)'));
|
|
7763
|
-
this.align = computed(() => this.options()['gridOptions']?.default?.alignItems ?? 'stretch');
|
|
7764
|
-
this.justify = computed(() => this.options()['gridOptions']?.default?.justifyItems ?? 'stretch');
|
|
7765
|
-
this.gap = computed(() => this.options()['gridOptions']?.default?.gap ?? '1px');
|
|
7766
|
-
this.cells = computed(() => this.calcTotalCells(this.options()['gridOptions']?.default?.gridTemplateRows ?? 'repeat(1, 1fr)', this.options()['gridOptions']?.default?.gridTemplateColumns ?? 'repeat(1, 1fr)'));
|
|
7767
|
-
this.settled = computed(() => this.cols() * this.rows() > 1 && this.children().length);
|
|
7768
|
-
// eff = effect(() => console.log(this.options()['gridOptions']));
|
|
7769
|
-
// #columnsChangeEffect = effect(() => {
|
|
7770
|
-
// debugger;
|
|
7771
|
-
// this.cols();
|
|
7772
|
-
// this.container();
|
|
7773
|
-
// untracked(() =>);
|
|
7774
|
-
// });
|
|
7775
|
-
this.#rowOrColumnChangeEffect = effect(() => {
|
|
7776
|
-
const deferent = this.cells() - this.children().length;
|
|
7777
|
-
untracked(() => {
|
|
7778
|
-
if (deferent > 0) {
|
|
7779
|
-
Array.from({ length: deferent })
|
|
7780
|
-
.map(() => ({
|
|
7781
|
-
type: AXPWidgetsCatalog.gridItem,
|
|
7782
|
-
}))
|
|
7783
|
-
.forEach((node) => {
|
|
7784
|
-
this.designerService.addWidget(this.node, node);
|
|
7785
|
-
});
|
|
7786
|
-
}
|
|
7787
|
-
else if (deferent < 0) {
|
|
7788
|
-
this.children()
|
|
7789
|
-
.slice(deferent)
|
|
7790
|
-
.forEach((node) => this.designerService.removeWidget(node));
|
|
7791
|
-
}
|
|
7792
|
-
});
|
|
7793
|
-
});
|
|
7794
|
-
this.#af = afterRender(() => {
|
|
7795
|
-
if (this.settled()) {
|
|
7796
|
-
{
|
|
7797
|
-
const els = this.el.nativeElement.querySelectorAll('ax-grid-layout-widget > .grid-stack-item-content');
|
|
7798
|
-
if (els.length) {
|
|
7799
|
-
els.forEach((item) => {
|
|
7800
|
-
if (item instanceof HTMLElement) {
|
|
7801
|
-
item.style.removeProperty('justify-content');
|
|
7802
|
-
item.style.justifyContent = this.justify();
|
|
7803
|
-
item.style.removeProperty('align-items');
|
|
7804
|
-
item.style.alignItems = this.align();
|
|
7805
|
-
}
|
|
7806
|
-
else {
|
|
7807
|
-
console.warn('Found a non-HTMLElement within the selected elements:', item);
|
|
7808
|
-
}
|
|
7809
|
-
});
|
|
7810
|
-
}
|
|
7811
|
-
else {
|
|
7812
|
-
console.warn('No grid-stack-item-content elements found in the afterRender hook.');
|
|
7813
|
-
}
|
|
7814
|
-
}
|
|
7815
|
-
}
|
|
7816
|
-
});
|
|
7817
|
-
window.ag = this;
|
|
7818
|
-
}
|
|
7819
|
-
handleDrawerSelect(e) {
|
|
7820
|
-
this.designerService.update({
|
|
7821
|
-
values: {
|
|
7822
|
-
// options: e,
|
|
7823
|
-
options: {
|
|
7824
|
-
gridOptions: {
|
|
7825
|
-
default: {
|
|
7826
|
-
gridTemplateColumns: `repeat(${e.cols}, 1fr)`,
|
|
7827
|
-
gridTemplateRows: `repeat(${e.rows}, 1fr)`,
|
|
7828
|
-
gap: '10px',
|
|
7829
|
-
},
|
|
7830
|
-
},
|
|
7831
|
-
},
|
|
7832
|
-
},
|
|
7833
|
-
mode: 'update',
|
|
7834
|
-
widget: this.node,
|
|
7835
|
-
});
|
|
7836
|
-
const list = Array.from({ length: this.cells() }).map(() => ({
|
|
7837
|
-
type: AXPWidgetsCatalog.gridItem,
|
|
7838
|
-
}));
|
|
7839
|
-
list.forEach((node) => {
|
|
7840
|
-
this.designerService.addWidget(this.node, node);
|
|
7841
|
-
});
|
|
7842
|
-
}
|
|
7843
|
-
// eff = effect(() => console.log(this.options()['gridOptions']));
|
|
7844
|
-
// #columnsChangeEffect = effect(() => {
|
|
7845
|
-
// debugger;
|
|
7846
|
-
// this.cols();
|
|
7847
|
-
// this.container();
|
|
7848
|
-
// untracked(() =>);
|
|
7849
|
-
// });
|
|
7850
|
-
#rowOrColumnChangeEffect;
|
|
7851
|
-
calcTotalCells(rows, cols) {
|
|
7852
|
-
return AXPPropertyEditorHelper.parseGridTemplate(rows) * AXPPropertyEditorHelper.parseGridTemplate(cols);
|
|
7853
|
-
}
|
|
7854
|
-
calcGridRowOrColumn(value) {
|
|
7855
|
-
return AXPPropertyEditorHelper.parseGridTemplate(value);
|
|
7856
|
-
}
|
|
7857
|
-
#af;
|
|
7858
|
-
get __class() {
|
|
7859
|
-
return {
|
|
7860
|
-
'ax-widget-container': true,
|
|
7861
|
-
'ax-block': true,
|
|
7862
|
-
'ax-w-full': true,
|
|
7653
|
+
'ax-widget-container': true,
|
|
7654
|
+
'ax-block': true,
|
|
7655
|
+
'ax-w-full': true,
|
|
7863
7656
|
};
|
|
7864
7657
|
}
|
|
7865
7658
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAdvancedGridWidgetDesignerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -7869,10 +7662,9 @@ class AXPAdvancedGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
7869
7662
|
useExisting: AXPAdvancedGridWidgetDesignerComponent,
|
|
7870
7663
|
},
|
|
7871
7664
|
], viewQueries: [{ propertyName: "container", first: true, predicate: AXGridLayoutContainerComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
|
|
7872
|
-
@if(settled()) {
|
|
7873
7665
|
<ax-grid-layout-container [options]="gridOptions">
|
|
7874
7666
|
@for (child of children(); track $index) {
|
|
7875
|
-
<ax-grid-layout-widget [options]="
|
|
7667
|
+
<ax-grid-layout-widget [options]="calcWidgetOption($index)">
|
|
7876
7668
|
<ng-container
|
|
7877
7669
|
axp-widget-designer-renderer
|
|
7878
7670
|
[node]="child"
|
|
@@ -7887,9 +7679,6 @@ class AXPAdvancedGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
7887
7679
|
<div class="ax-p-2">
|
|
7888
7680
|
<div class="grid-stack-trash ax-w-full ax-rounded-lg ax-border-2 ax-border-dashed ax-border-danger-400/50"></div>
|
|
7889
7681
|
</div>
|
|
7890
|
-
} @else {
|
|
7891
|
-
<axp-designer-grid-drawer (onSelect)="handleDrawerSelect($event)"></axp-designer-grid-drawer>
|
|
7892
|
-
}
|
|
7893
7682
|
<!--TO BE SURE ALL DYNAMIC TAILWIND CLASSES WORK WELL!-->
|
|
7894
7683
|
@if(false){
|
|
7895
7684
|
<div class="ax-hidden">
|
|
@@ -7897,17 +7686,16 @@ class AXPAdvancedGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
7897
7686
|
ax-justify-items-end ax-justify-items-stretch
|
|
7898
7687
|
</div>
|
|
7899
7688
|
}
|
|
7900
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXGridLayoutBuilderModule }, { kind: "component", type: i1$5.AXGridLayoutContainerComponent, selector: "ax-grid-layout-container", inputs: ["options", "isEmpty"], outputs: ["onAdded", "onChange", "onDisable", "onDrag", "onDragStart", "onDragStop", "onDropped", "onEnable", "onRemoved", "onResize", "onResizeStart", "onResizeStop", "isRendered", "isEmptyChange"] }, { kind: "component", type: i1$5.AXGridLayoutWidgetComponent, selector: "ax-grid-layout-widget", inputs: ["options"] }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "index", "locked", "mode", "node"] }
|
|
7689
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXGridLayoutBuilderModule }, { kind: "component", type: i1$5.AXGridLayoutContainerComponent, selector: "ax-grid-layout-container", inputs: ["options", "isEmpty"], outputs: ["onAdded", "onChange", "onDisable", "onDrag", "onDragStart", "onDragStop", "onDropped", "onEnable", "onRemoved", "onResize", "onResizeStart", "onResizeStop", "isRendered", "isEmptyChange"] }, { kind: "component", type: i1$5.AXGridLayoutWidgetComponent, selector: "ax-grid-layout-widget", inputs: ["options"] }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "index", "locked", "mode", "node"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7901
7690
|
}
|
|
7902
7691
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAdvancedGridWidgetDesignerComponent, decorators: [{
|
|
7903
7692
|
type: Component,
|
|
7904
7693
|
args: [{
|
|
7905
7694
|
selector: 'axp-advanced-grid-layout-widget',
|
|
7906
7695
|
template: `
|
|
7907
|
-
@if(settled()) {
|
|
7908
7696
|
<ax-grid-layout-container [options]="gridOptions">
|
|
7909
7697
|
@for (child of children(); track $index) {
|
|
7910
|
-
<ax-grid-layout-widget [options]="
|
|
7698
|
+
<ax-grid-layout-widget [options]="calcWidgetOption($index)">
|
|
7911
7699
|
<ng-container
|
|
7912
7700
|
axp-widget-designer-renderer
|
|
7913
7701
|
[node]="child"
|
|
@@ -7922,9 +7710,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
7922
7710
|
<div class="ax-p-2">
|
|
7923
7711
|
<div class="grid-stack-trash ax-w-full ax-rounded-lg ax-border-2 ax-border-dashed ax-border-danger-400/50"></div>
|
|
7924
7712
|
</div>
|
|
7925
|
-
} @else {
|
|
7926
|
-
<axp-designer-grid-drawer (onSelect)="handleDrawerSelect($event)"></axp-designer-grid-drawer>
|
|
7927
|
-
}
|
|
7928
7713
|
<!--TO BE SURE ALL DYNAMIC TAILWIND CLASSES WORK WELL!-->
|
|
7929
7714
|
@if(false){
|
|
7930
7715
|
<div class="ax-hidden">
|
|
@@ -7939,7 +7724,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
7939
7724
|
AXGridLayoutBuilderModule,
|
|
7940
7725
|
AXPLayoutBuilderModule,
|
|
7941
7726
|
AXPWidgetDesignerRendererDirective,
|
|
7942
|
-
AXPDesignerGridDrawerComponent,
|
|
7727
|
+
// AXPDesignerGridDrawerComponent,
|
|
7943
7728
|
],
|
|
7944
7729
|
providers: [
|
|
7945
7730
|
{
|
|
@@ -8003,7 +7788,11 @@ const AXPAdvancedGridWidget = {
|
|
|
8003
7788
|
type: 'container',
|
|
8004
7789
|
group: AXP_WIDGETS_LAYOUT_GROUP,
|
|
8005
7790
|
icon: 'fa-solid fa-grid-2',
|
|
8006
|
-
properties: [
|
|
7791
|
+
properties: [
|
|
7792
|
+
AXP_NAME_PROPERTY,
|
|
7793
|
+
// AXP_LAYOUT_GRID_PROPERTY,
|
|
7794
|
+
AXP_LAYOUT_ADVANCED_GRID_PROPERTY,
|
|
7795
|
+
],
|
|
8007
7796
|
components: {
|
|
8008
7797
|
view: {
|
|
8009
7798
|
component: () => Promise.resolve().then(function () { return advancedGridWidgetView_component; }).then((c) => c.AXPAdvancedGridWidgetViewComponent),
|
|
@@ -8735,331 +8524,608 @@ const AXPRepeaterWidget = {
|
|
|
8735
8524
|
},
|
|
8736
8525
|
};
|
|
8737
8526
|
|
|
8738
|
-
|
|
8739
|
-
|
|
8740
|
-
|
|
8741
|
-
|
|
8742
|
-
|
|
8743
|
-
|
|
8744
|
-
|
|
8745
|
-
|
|
8746
|
-
|
|
8747
|
-
|
|
8748
|
-
|
|
8749
|
-
|
|
8750
|
-
|
|
8751
|
-
|
|
8752
|
-
|
|
8753
|
-
|
|
8754
|
-
|
|
8755
|
-
|
|
8756
|
-
|
|
8757
|
-
|
|
8758
|
-
|
|
8759
|
-
const breakpoints = ['default', 'sm', 'md', 'lg', 'xl', '2xl', '3xl'];
|
|
8760
|
-
const nonEmptyBreakpoints = [];
|
|
8761
|
-
for (const breakpoint of breakpoints) {
|
|
8762
|
-
if (values[breakpoint] !== undefined) {
|
|
8763
|
-
nonEmptyBreakpoints.push(breakpoint);
|
|
8527
|
+
/**
|
|
8528
|
+
* Utility class for parsing and handling property editor values like borders, spacing, and units.
|
|
8529
|
+
*/
|
|
8530
|
+
class AXPPropertyEditorHelper {
|
|
8531
|
+
/**
|
|
8532
|
+
* Expands shorthand input values into full sets for sides or corners.
|
|
8533
|
+
* @param values - Array of input values.
|
|
8534
|
+
* @returns Expanded array of values.
|
|
8535
|
+
*/
|
|
8536
|
+
static expandShorthand(values) {
|
|
8537
|
+
switch (values.length) {
|
|
8538
|
+
case 1:
|
|
8539
|
+
return [values[0], values[0], values[0], values[0]];
|
|
8540
|
+
case 2:
|
|
8541
|
+
return [values[0], values[1], values[0], values[1]];
|
|
8542
|
+
case 3:
|
|
8543
|
+
return [values[0], values[1], values[2], values[1]];
|
|
8544
|
+
case 4:
|
|
8545
|
+
return values;
|
|
8546
|
+
default:
|
|
8547
|
+
throw new Error(`Invalid shorthand value count. Input: ${values}`);
|
|
8764
8548
|
}
|
|
8765
8549
|
}
|
|
8766
|
-
|
|
8550
|
+
/**
|
|
8551
|
+
* @param values An array of four values to condense.
|
|
8552
|
+
* @returns A condensed string representation of the values.
|
|
8553
|
+
*/
|
|
8554
|
+
static condenseShorthand(values) {
|
|
8555
|
+
if (values.length !== 4) {
|
|
8556
|
+
throw new Error('Expected 4 values for condensation.');
|
|
8557
|
+
}
|
|
8558
|
+
if (values[0] === values[1] && values[1] === values[2] && values[2] === values[3]) {
|
|
8559
|
+
return `${values[0]}`;
|
|
8560
|
+
}
|
|
8561
|
+
else if (values[0] === values[2] && values[1] === values[3]) {
|
|
8562
|
+
return `${values[0]} ${values[1]}`;
|
|
8563
|
+
}
|
|
8564
|
+
else if (values[1] === values[3]) {
|
|
8565
|
+
return `${values[0]} ${values[1]} ${values[2]}`;
|
|
8566
|
+
}
|
|
8567
|
+
else {
|
|
8568
|
+
return `${values[0]} ${values[1]} ${values[2]} ${values[3]}`;
|
|
8569
|
+
}
|
|
8570
|
+
}
|
|
8571
|
+
/**
|
|
8572
|
+
* Parses sides (top, left, bottom, right) from a string.
|
|
8573
|
+
* @param input - Input string.
|
|
8574
|
+
* @returns Parsed sides object.
|
|
8575
|
+
*/
|
|
8576
|
+
static parseSides(input) {
|
|
8577
|
+
const values = this.expandShorthand(input.match(/(?:rgb\([^)]+\)|[^ ]+)/g)?.map((value) => value.trim()) || []);
|
|
8578
|
+
return { top: values[0], right: values[1], bottom: values[2], left: values[3] };
|
|
8579
|
+
}
|
|
8580
|
+
static parseSidesWithUnits(input) {
|
|
8581
|
+
const values = this.expandShorthand(input.match(/(?:rgb\([^)]+\)|[^ ]+)/g)?.map((value) => value.trim()) || []);
|
|
8582
|
+
return {
|
|
8583
|
+
top: AXPPropertyEditorHelper.getValueWithUnit(values[0]).value,
|
|
8584
|
+
right: AXPPropertyEditorHelper.getValueWithUnit(values[1]).value,
|
|
8585
|
+
bottom: AXPPropertyEditorHelper.getValueWithUnit(values[2]).value,
|
|
8586
|
+
left: AXPPropertyEditorHelper.getValueWithUnit(values[3]).value,
|
|
8587
|
+
};
|
|
8588
|
+
}
|
|
8589
|
+
/**
|
|
8590
|
+
* Parses corners (top-left, top-right, bottom-left, bottom-right) from a string.
|
|
8591
|
+
* @param input - Input string.
|
|
8592
|
+
* @returns Parsed corners object.
|
|
8593
|
+
*/
|
|
8594
|
+
static parseCorners(input) {
|
|
8595
|
+
const values = this.expandShorthand(input.split(' ').map((value) => value.trim()));
|
|
8596
|
+
return {
|
|
8597
|
+
'top-left': AXPPropertyEditorHelper.getValueWithUnit(values[0]).value,
|
|
8598
|
+
'top-right': AXPPropertyEditorHelper.getValueWithUnit(values[1]).value,
|
|
8599
|
+
'bottom-left': AXPPropertyEditorHelper.getValueWithUnit(values[2]).value,
|
|
8600
|
+
'bottom-right': AXPPropertyEditorHelper.getValueWithUnit(values[3]).value,
|
|
8601
|
+
};
|
|
8602
|
+
}
|
|
8603
|
+
/**
|
|
8604
|
+
* Parses a spacing box from strings for margin and padding.
|
|
8605
|
+
* @param input - Spacing box string input.
|
|
8606
|
+
* @returns Parsed spacing box.
|
|
8607
|
+
*/
|
|
8608
|
+
static parseSpacingBox(input) {
|
|
8609
|
+
return {
|
|
8610
|
+
margin: this.parseSidesWithUnits(input.margin),
|
|
8611
|
+
padding: this.parseSidesWithUnits(input.padding),
|
|
8612
|
+
};
|
|
8613
|
+
}
|
|
8614
|
+
/**
|
|
8615
|
+
* Parses a border box from strings for width, radius, color, and style.
|
|
8616
|
+
* @param input - Border box string input.
|
|
8617
|
+
* @returns Parsed border box.
|
|
8618
|
+
*/
|
|
8619
|
+
static parseBorderBox(input) {
|
|
8620
|
+
return {
|
|
8621
|
+
width: this.parseSidesWithUnits(input.width),
|
|
8622
|
+
radius: this.parseCorners(input.radius),
|
|
8623
|
+
color: this.parseSides(input.color),
|
|
8624
|
+
style: this.parseSides(input.style),
|
|
8625
|
+
};
|
|
8626
|
+
}
|
|
8627
|
+
/**
|
|
8628
|
+
* Reverses a spacing box object into a string representation.
|
|
8629
|
+
* @param input - Spacing box object.
|
|
8630
|
+
* @param units - Units for margin and padding.
|
|
8631
|
+
* @returns String representation of the spacing box.
|
|
8632
|
+
*/
|
|
8633
|
+
static parseSpacingBoxReverse(input, units) {
|
|
8634
|
+
const format = (value, unit) => `${value}${unit}`;
|
|
8635
|
+
return {
|
|
8636
|
+
margin: AXPPropertyEditorHelper.condenseShorthand([
|
|
8637
|
+
format(input.margin.top, units.margin.top),
|
|
8638
|
+
format(input.margin.right, units.margin.right),
|
|
8639
|
+
format(input.margin.bottom, units.margin.bottom),
|
|
8640
|
+
format(input.margin.left, units.margin.left),
|
|
8641
|
+
]),
|
|
8642
|
+
padding: AXPPropertyEditorHelper.condenseShorthand([
|
|
8643
|
+
format(input.padding.top, units.padding.top),
|
|
8644
|
+
format(input.padding.right, units.padding.right),
|
|
8645
|
+
format(input.padding.bottom, units.padding.bottom),
|
|
8646
|
+
format(input.padding.left, units.padding.left),
|
|
8647
|
+
]),
|
|
8648
|
+
};
|
|
8649
|
+
}
|
|
8650
|
+
/**
|
|
8651
|
+
* Reverses a border box object into a string representation.
|
|
8652
|
+
* @param input - Border box object.
|
|
8653
|
+
* @param units - Units for width, radius, color, and style.
|
|
8654
|
+
* @returns String representation of the border box.
|
|
8655
|
+
*/
|
|
8656
|
+
static parseBorderBoxReverse(input, units) {
|
|
8657
|
+
const format = (value, unit) => `${value}${unit}`;
|
|
8658
|
+
return {
|
|
8659
|
+
width: AXPPropertyEditorHelper.condenseShorthand([
|
|
8660
|
+
format(input.width.top, units.width.top),
|
|
8661
|
+
format(input.width.right, units.width.right),
|
|
8662
|
+
format(input.width.bottom, units.width.bottom),
|
|
8663
|
+
format(input.width.left, units.width.left),
|
|
8664
|
+
]),
|
|
8665
|
+
radius: AXPPropertyEditorHelper.condenseShorthand([
|
|
8666
|
+
format(input.radius['top-left'], units.radius['top-left']),
|
|
8667
|
+
format(input.radius['top-right'], units.radius['top-right']),
|
|
8668
|
+
format(input.radius['bottom-right'], units.radius['bottom-right']),
|
|
8669
|
+
format(input.radius['bottom-left'], units.radius['bottom-left']),
|
|
8670
|
+
]),
|
|
8671
|
+
color: AXPPropertyEditorHelper.condenseShorthand([
|
|
8672
|
+
`${input.color.top}${units.color.top}`,
|
|
8673
|
+
`${input.color.right}${units.color.right}`,
|
|
8674
|
+
`${input.color.bottom}${units.color.bottom}`,
|
|
8675
|
+
`${input.color.left}${units.color.left}`,
|
|
8676
|
+
]),
|
|
8677
|
+
style: AXPPropertyEditorHelper.condenseShorthand([
|
|
8678
|
+
`${input.style.top}${units.style.top}`,
|
|
8679
|
+
`${input.style.right}${units.style.right}`,
|
|
8680
|
+
`${input.style.bottom}${units.style.bottom}`,
|
|
8681
|
+
`${input.style.left}${units.style.left}`,
|
|
8682
|
+
]),
|
|
8683
|
+
};
|
|
8684
|
+
}
|
|
8685
|
+
/**
|
|
8686
|
+
* Parses a value with a unit (e.g., "20px") and returns its numeric value and unit.
|
|
8687
|
+
* @param input - Input string or number.
|
|
8688
|
+
* @returns Object with value and unit.
|
|
8689
|
+
*/
|
|
8690
|
+
static getValueWithUnit(input) {
|
|
8691
|
+
if (typeof input === 'number')
|
|
8692
|
+
return { value: input, unit: 'px' };
|
|
8693
|
+
if (input === 'auto')
|
|
8694
|
+
return { value: 0, unit: 'px' };
|
|
8695
|
+
const match = input.match(/^([0-9.]+)([a-z%]*)$/i);
|
|
8696
|
+
if (!match)
|
|
8697
|
+
throw new Error(`Invalid unit format: ${input}`);
|
|
8698
|
+
return { value: parseFloat(match[1]), unit: match[2] || '' };
|
|
8699
|
+
}
|
|
8700
|
+
/**
|
|
8701
|
+
* Reverses a numeric value and unit into a single string.
|
|
8702
|
+
* @param value - Numeric value.
|
|
8703
|
+
* @param unit - Unit string.
|
|
8704
|
+
* @returns Combined string.
|
|
8705
|
+
*/
|
|
8706
|
+
static getValueFromUnit(value, unit) {
|
|
8707
|
+
return unit ? `${value}${unit}` : `${value}`;
|
|
8708
|
+
}
|
|
8709
|
+
/**
|
|
8710
|
+
* Parses a gap string into x and y values and units.
|
|
8711
|
+
*
|
|
8712
|
+
* @param gapString The gap string to parse (e.g., "10px", "10px 20px").
|
|
8713
|
+
* @returns An object containing the x and y values and units.
|
|
8714
|
+
* @throws Error If the gap string is invalid.
|
|
8715
|
+
*/
|
|
8716
|
+
static parseGap(gap) {
|
|
8717
|
+
// Split the gap string into parts
|
|
8718
|
+
const parts = gap.split(/\s+/);
|
|
8719
|
+
// Extract the first value and unit using a regex
|
|
8720
|
+
const match = parts[0].match(/^(\d+\.?\d*)([a-z%]+)$/);
|
|
8721
|
+
if (!match) {
|
|
8722
|
+
throw new Error('Invalid gap format');
|
|
8723
|
+
}
|
|
8724
|
+
const [, xValue, unit] = match;
|
|
8725
|
+
// Determine the y value
|
|
8726
|
+
let yValue = parseFloat(xValue); // Default to the same as x
|
|
8727
|
+
if (parts.length === 2) {
|
|
8728
|
+
const secondMatch = parts[1].match(/^(\d+\.?\d*)[a-z%]+$/);
|
|
8729
|
+
if (!secondMatch) {
|
|
8730
|
+
throw new Error('Invalid gap format');
|
|
8731
|
+
}
|
|
8732
|
+
yValue = parseFloat(secondMatch[1]);
|
|
8733
|
+
}
|
|
8734
|
+
return {
|
|
8735
|
+
values: {
|
|
8736
|
+
x: parseFloat(xValue),
|
|
8737
|
+
y: yValue,
|
|
8738
|
+
},
|
|
8739
|
+
unit,
|
|
8740
|
+
};
|
|
8741
|
+
}
|
|
8742
|
+
/**
|
|
8743
|
+
* Extracts the repetition count from a CSS grid template string of the format "repeat(N, 1fr)".
|
|
8744
|
+
*
|
|
8745
|
+
* @param gridTemplate - The CSS grid template string, e.g., "repeat(5, 1fr)".
|
|
8746
|
+
* @returns The number of repetitions as a number.
|
|
8747
|
+
*/
|
|
8748
|
+
static parseGridTemplate(gridTemplate) {
|
|
8749
|
+
const match = gridTemplate.match(/^repeat\((\d+),\s*1fr\)$/);
|
|
8750
|
+
if (!match) {
|
|
8751
|
+
throw new Error("Invalid grid template format. Expected 'repeat(N, 1fr)'.");
|
|
8752
|
+
}
|
|
8753
|
+
return parseInt(match[1], 10);
|
|
8754
|
+
}
|
|
8755
|
+
/**
|
|
8756
|
+
* Creates a CSS grid template string of the format "repeat(N, 1fr)"
|
|
8757
|
+
* based on the provided repetition count.
|
|
8758
|
+
*
|
|
8759
|
+
* @param repetitionCount - The number of repetitions.
|
|
8760
|
+
* @returns The CSS grid template string, e.g., "repeat(5, 1fr)".
|
|
8761
|
+
*/
|
|
8762
|
+
static createGridTemplate(repetitionCount) {
|
|
8763
|
+
if (repetitionCount <= 0) {
|
|
8764
|
+
throw new Error('Repetition count must be a positive integer.');
|
|
8765
|
+
}
|
|
8766
|
+
return `repeat(${repetitionCount}, 1fr)`;
|
|
8767
|
+
}
|
|
8767
8768
|
}
|
|
8768
8769
|
|
|
8769
|
-
|
|
8770
|
-
|
|
8771
|
-
|
|
8772
|
-
|
|
8773
|
-
|
|
8774
|
-
|
|
8775
|
-
|
|
8776
|
-
|
|
8777
|
-
|
|
8778
|
-
|
|
8779
|
-
|
|
8780
|
-
|
|
8781
|
-
|
|
8782
|
-
|
|
8783
|
-
|
|
8784
|
-
|
|
8785
|
-
|
|
8786
|
-
|
|
8787
|
-
|
|
8788
|
-
|
|
8789
|
-
|
|
8790
|
-
|
|
8791
|
-
|
|
8792
|
-
|
|
8793
|
-
|
|
8794
|
-
|
|
8795
|
-
|
|
8796
|
-
|
|
8797
|
-
|
|
8798
|
-
|
|
8799
|
-
|
|
8800
|
-
|
|
8801
|
-
|
|
8802
|
-
|
|
8803
|
-
|
|
8804
|
-
|
|
8770
|
+
const AXP_default_Border_Box_Value = {
|
|
8771
|
+
width: { top: 0, left: 0, bottom: 0, right: 0 },
|
|
8772
|
+
radius: { 'top-left': 0, 'top-right': 0, 'bottom-left': 0, 'bottom-right': 0 },
|
|
8773
|
+
color: { top: '#000000', left: '#000000', bottom: '#000000', right: '#000000' },
|
|
8774
|
+
style: { top: 'none', left: 'none', bottom: 'none', right: 'none' },
|
|
8775
|
+
};
|
|
8776
|
+
const AXP_default_Border_Box_Units = {
|
|
8777
|
+
width: { top: 'px', left: 'px', bottom: 'px', right: 'px' },
|
|
8778
|
+
radius: { 'top-left': 'px', 'top-right': 'px', 'bottom-left': 'px', 'bottom-right': 'px' },
|
|
8779
|
+
color: { top: '', left: '', bottom: '', right: '' },
|
|
8780
|
+
style: { top: '', left: '', bottom: '', right: '' },
|
|
8781
|
+
};
|
|
8782
|
+
const AXP_default_Spacing_Box_Value = {
|
|
8783
|
+
padding: { top: 0, left: 0, bottom: 0, right: 0 },
|
|
8784
|
+
margin: { top: 0, left: 0, bottom: 0, right: 0 },
|
|
8785
|
+
};
|
|
8786
|
+
const AXP_default_Spacing_Box_Units = {
|
|
8787
|
+
padding: { top: 'px', left: 'px', bottom: 'px', right: 'px' },
|
|
8788
|
+
margin: { top: 'px', left: 'px', bottom: 'px', right: 'px' },
|
|
8789
|
+
};
|
|
8790
|
+
function findNonEmptyBreakpoints(values) {
|
|
8791
|
+
const breakpoints = ['default', 'sm', 'md', 'lg', 'xl', '2xl', '3xl'];
|
|
8792
|
+
const nonEmptyBreakpoints = [];
|
|
8793
|
+
for (const breakpoint of breakpoints) {
|
|
8794
|
+
if (values[breakpoint] !== undefined) {
|
|
8795
|
+
nonEmptyBreakpoints.push(breakpoint);
|
|
8796
|
+
}
|
|
8797
|
+
}
|
|
8798
|
+
return nonEmptyBreakpoints;
|
|
8799
|
+
}
|
|
8800
|
+
|
|
8801
|
+
const AXP_Grid_Box_Alignments = [
|
|
8802
|
+
{ value: 'top-left', label: 'Top Left', alignItems: 'start', justifyItems: 'start' },
|
|
8803
|
+
{ value: 'top-center', label: 'Top Center', alignItems: 'start', justifyItems: 'center' },
|
|
8804
|
+
{ value: 'top-right', label: 'Top Right', alignItems: 'start', justifyItems: 'end' },
|
|
8805
|
+
{ value: 'middle-left', label: 'Middle Left', alignItems: 'center', justifyItems: 'start' },
|
|
8806
|
+
{ value: 'middle-center', label: 'Middle Center', alignItems: 'center', justifyItems: 'center' },
|
|
8807
|
+
{ value: 'middle-right', label: 'Middle Right', alignItems: 'center', justifyItems: 'end' },
|
|
8808
|
+
{ value: 'bottom-left', label: 'Bottom Left', alignItems: 'end', justifyItems: 'start' },
|
|
8809
|
+
{ value: 'bottom-center', label: 'Bottom Center', alignItems: 'end', justifyItems: 'center' },
|
|
8810
|
+
{ value: 'bottom-right', label: 'Bottom Right', alignItems: 'end', justifyItems: 'end' },
|
|
8811
|
+
];
|
|
8812
|
+
const AXP_Grid_Box_Align_Items_Options = [
|
|
8813
|
+
{ value: 'start', label: 'Start' },
|
|
8814
|
+
{ value: 'end', label: 'End' },
|
|
8815
|
+
{ value: 'center', label: 'Center' },
|
|
8816
|
+
{ value: 'stretch', label: 'Stretch' },
|
|
8817
|
+
];
|
|
8818
|
+
const AXP_Grid_Box_Justify_Items_Options = [
|
|
8819
|
+
{ value: 'start', label: 'Start' },
|
|
8820
|
+
{ value: 'end', label: 'End' },
|
|
8821
|
+
{ value: 'center', label: 'Center' },
|
|
8822
|
+
{ value: 'stretch', label: 'Stretch' },
|
|
8823
|
+
];
|
|
8824
|
+
|
|
8825
|
+
class AXPGridOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
8826
|
+
constructor() {
|
|
8827
|
+
super(...arguments);
|
|
8828
|
+
this.rendered = signal(false);
|
|
8829
|
+
this.gridSides = AXP_Grid_Box_Alignments;
|
|
8830
|
+
this.currentBreakpoint = signal('default');
|
|
8831
|
+
this.lastBreakpoint = signal('default');
|
|
8832
|
+
this.isBreakpointConfigured = signal({
|
|
8833
|
+
default: true,
|
|
8834
|
+
sm: false,
|
|
8835
|
+
md: false,
|
|
8836
|
+
lg: false,
|
|
8837
|
+
xl: false,
|
|
8838
|
+
'2xl': false,
|
|
8839
|
+
'3xl': false,
|
|
8840
|
+
});
|
|
8841
|
+
this.selectionItems = [
|
|
8842
|
+
{ id: 'default', text: 'Default' },
|
|
8843
|
+
{ id: 'sm', text: 'Sm' },
|
|
8844
|
+
{ id: 'md', text: 'Md' },
|
|
8845
|
+
{ id: 'lg', text: 'Lg' },
|
|
8846
|
+
{ id: 'xl', text: 'Xl' },
|
|
8847
|
+
{ id: '2xl', text: '2Xl' },
|
|
8848
|
+
{ id: '3xl', text: '3Xl' },
|
|
8849
|
+
];
|
|
8850
|
+
this.gridTemplateColumns = signal(1);
|
|
8851
|
+
this.gridTemplateRows = signal(1);
|
|
8852
|
+
this.gridDirection = signal('row');
|
|
8853
|
+
this.gapUnit = signal('px');
|
|
8854
|
+
this.gap = signal({ x: 0, y: 0 });
|
|
8855
|
+
this.gapMode = signal('single');
|
|
8856
|
+
this.lastGap = signal(0);
|
|
8857
|
+
this.selectedJustify = signal({ value: 'stretch', label: 'Stretch' });
|
|
8858
|
+
this.selectedAlign = signal({ value: 'stretch', label: 'Stretch' });
|
|
8859
|
+
this.hoveredAlign = signal(null);
|
|
8860
|
+
this.hoveredJustify = signal(null);
|
|
8861
|
+
this.clickedAlign = signal('stretch');
|
|
8862
|
+
this.clickedJustify = signal('stretch');
|
|
8863
|
+
this.justifyDataSource = new AXDataSource({
|
|
8864
|
+
pageSize: 99,
|
|
8865
|
+
load: async (e) => {
|
|
8866
|
+
return {
|
|
8867
|
+
items: AXP_Grid_Box_Justify_Items_Options,
|
|
8868
|
+
total: AXP_Grid_Box_Justify_Items_Options.length,
|
|
8869
|
+
};
|
|
8870
|
+
},
|
|
8871
|
+
});
|
|
8872
|
+
this.alignDataSource = new AXDataSource({
|
|
8873
|
+
pageSize: 99,
|
|
8874
|
+
load: async (e) => {
|
|
8875
|
+
return {
|
|
8876
|
+
items: AXP_Grid_Box_Align_Items_Options,
|
|
8877
|
+
total: AXP_Grid_Box_Align_Items_Options.length,
|
|
8878
|
+
};
|
|
8879
|
+
},
|
|
8880
|
+
});
|
|
8881
|
+
this.findAlignNameById = (value) => {
|
|
8882
|
+
const side = AXP_Grid_Box_Align_Items_Options.find((side) => side.value === value);
|
|
8883
|
+
return side.label;
|
|
8884
|
+
};
|
|
8885
|
+
this.findJustifyNameById = (value) => {
|
|
8886
|
+
const side = AXP_Grid_Box_Justify_Items_Options.find((side) => side.value === value);
|
|
8887
|
+
return side.label;
|
|
8888
|
+
};
|
|
8889
|
+
this.#firstInitialize = afterNextRender(() => {
|
|
8890
|
+
this.initialValues();
|
|
8805
8891
|
this.rendered.set(true);
|
|
8806
8892
|
});
|
|
8893
|
+
this.#trackChange = effect(() => {
|
|
8894
|
+
this.getValue();
|
|
8895
|
+
untracked(() => this.initialValues());
|
|
8896
|
+
});
|
|
8807
8897
|
}
|
|
8808
|
-
|
|
8809
|
-
|
|
8810
|
-
|
|
8898
|
+
setGridDirection(value) {
|
|
8899
|
+
this.gridDirection.set(value);
|
|
8900
|
+
this.saveValue({ gridAutoFlow: value });
|
|
8901
|
+
}
|
|
8902
|
+
setRowOrColumn(value, type) {
|
|
8903
|
+
if (type === 'column') {
|
|
8904
|
+
this.gridTemplateColumns.set(value);
|
|
8905
|
+
this.saveValue({ gridTemplateColumns: `repeat(${value}, 1fr)` });
|
|
8811
8906
|
}
|
|
8812
|
-
|
|
8813
|
-
|
|
8814
|
-
this.
|
|
8907
|
+
else {
|
|
8908
|
+
this.gridTemplateRows.set(value);
|
|
8909
|
+
this.saveValue({ gridTemplateRows: `repeat(${value}, 1fr)` });
|
|
8815
8910
|
}
|
|
8816
|
-
|
|
8817
|
-
|
|
8818
|
-
|
|
8819
|
-
|
|
8820
|
-
[type]: this.getUpdatedAllValues(type, value),
|
|
8821
|
-
});
|
|
8911
|
+
}
|
|
8912
|
+
toggleGapMode() {
|
|
8913
|
+
if (this.gapMode() === 'single') {
|
|
8914
|
+
this.gapMode.set('multiple');
|
|
8822
8915
|
}
|
|
8823
8916
|
else {
|
|
8824
|
-
this.
|
|
8825
|
-
|
|
8826
|
-
[type]: { ...currentValue[type], [side]: value },
|
|
8827
|
-
});
|
|
8917
|
+
this.gapMode.set('single');
|
|
8918
|
+
this.setGap(this.lastGap(), 'both');
|
|
8828
8919
|
}
|
|
8829
|
-
const data = AXPPropertyEditorHelper.parseBorderBoxReverse(this.calculatedValues(), this.units());
|
|
8830
|
-
this.setValue(data);
|
|
8831
|
-
}
|
|
8832
|
-
updateAllValues(type, value) {
|
|
8833
|
-
if (type === 'width')
|
|
8834
|
-
this.allwidth.set(value);
|
|
8835
|
-
if (type === 'color')
|
|
8836
|
-
this.allcolor.set(value);
|
|
8837
|
-
if (type === 'radius')
|
|
8838
|
-
this.allRadius.set(value);
|
|
8839
|
-
if (type === 'style')
|
|
8840
|
-
this.allstyle.set(value);
|
|
8841
8920
|
}
|
|
8842
|
-
|
|
8843
|
-
|
|
8844
|
-
|
|
8845
|
-
|
|
8921
|
+
setGap(size, side) {
|
|
8922
|
+
this.lastGap.set(size);
|
|
8923
|
+
if (side === 'both') {
|
|
8924
|
+
this.gap.set({ x: size, y: size });
|
|
8925
|
+
const gapString = this.gap().x + this.gapUnit();
|
|
8926
|
+
this.saveValue({ gap: gapString });
|
|
8927
|
+
}
|
|
8928
|
+
else {
|
|
8929
|
+
this.gap.update((i) => ({ ...i, [side]: size }));
|
|
8930
|
+
const gapString = this.gap().x + this.gapUnit() + ' ' + this.gap().y + this.gapUnit();
|
|
8931
|
+
this.saveValue({ gap: gapString });
|
|
8932
|
+
}
|
|
8846
8933
|
}
|
|
8847
|
-
|
|
8848
|
-
|
|
8849
|
-
|
|
8850
|
-
this.currentActiveBorderEl.style.backgroundColor = 'transparent';
|
|
8934
|
+
onClick(data) {
|
|
8935
|
+
if (this.clickedAlign() === 'stretch' && this.clickedJustify() === 'stretch') {
|
|
8936
|
+
return;
|
|
8851
8937
|
}
|
|
8852
|
-
this.
|
|
8853
|
-
|
|
8854
|
-
|
|
8855
|
-
|
|
8856
|
-
|
|
8857
|
-
|
|
8858
|
-
|
|
8859
|
-
|
|
8860
|
-
|
|
8861
|
-
|
|
8862
|
-
|
|
8863
|
-
|
|
8864
|
-
|
|
8865
|
-
|
|
8866
|
-
this.
|
|
8867
|
-
this.
|
|
8868
|
-
this.allstyle.set(lastStyle);
|
|
8869
|
-
this.units.set({
|
|
8870
|
-
width: this.createUniformValues(lastWidthUnit),
|
|
8871
|
-
color: this.createUniformValues(lastColorUnit),
|
|
8872
|
-
style: this.createUniformValues(lastStyleUnit),
|
|
8873
|
-
radius: lastRadiusObjectUnit,
|
|
8874
|
-
});
|
|
8875
|
-
this.calculatedValues.set({
|
|
8876
|
-
width: this.createUniformValues(lastWidth),
|
|
8877
|
-
color: this.createUniformValues(lastColor),
|
|
8878
|
-
style: this.createUniformValues(lastStyle),
|
|
8879
|
-
radius: lastRadiusObject,
|
|
8880
|
-
});
|
|
8881
|
-
const data = AXPPropertyEditorHelper.parseBorderBoxReverse(this.calculatedValues(), this.units());
|
|
8882
|
-
this.setValue(data);
|
|
8938
|
+
else if (this.clickedAlign() === 'stretch') {
|
|
8939
|
+
this.clickedJustify.set(data.justifyItems);
|
|
8940
|
+
this.selectedJustify.set({ value: data.justifyItems, label: this.findJustifyNameById(data.justifyItems) });
|
|
8941
|
+
this.saveValue({ justifyItems: data.justifyItems });
|
|
8942
|
+
}
|
|
8943
|
+
else if (this.clickedJustify() === 'stretch') {
|
|
8944
|
+
this.clickedAlign.set(data.alignItems);
|
|
8945
|
+
this.selectedAlign.set({ value: data.alignItems, label: this.findAlignNameById(data.alignItems) });
|
|
8946
|
+
this.saveValue({ alignItems: data.alignItems });
|
|
8947
|
+
}
|
|
8948
|
+
else {
|
|
8949
|
+
this.clickedAlign.set(data.alignItems);
|
|
8950
|
+
this.clickedJustify.set(data.justifyItems);
|
|
8951
|
+
this.selectedAlign.set({ value: data.alignItems, label: this.findAlignNameById(data.alignItems) });
|
|
8952
|
+
this.selectedJustify.set({ value: data.justifyItems, label: this.findJustifyNameById(data.justifyItems) });
|
|
8953
|
+
this.saveValue({ alignItems: data.alignItems, justifyItems: data.justifyItems });
|
|
8883
8954
|
}
|
|
8884
|
-
this.currentActiveSide.set(newActiveSide);
|
|
8885
|
-
this.currentActiveBorderEl.style.backgroundColor = 'var(--focus-color)';
|
|
8886
8955
|
}
|
|
8887
|
-
|
|
8888
|
-
|
|
8889
|
-
|
|
8890
|
-
|
|
8956
|
+
onHover(data) {
|
|
8957
|
+
this.hoveredAlign.set(data.alignItems);
|
|
8958
|
+
this.hoveredJustify.set(data.justifyItems);
|
|
8959
|
+
}
|
|
8960
|
+
onHoverLeave() {
|
|
8961
|
+
this.hoveredAlign.set(null);
|
|
8962
|
+
this.hoveredJustify.set(null);
|
|
8963
|
+
}
|
|
8964
|
+
onJustifyChange(event) {
|
|
8965
|
+
if (event.isUserInteraction) {
|
|
8966
|
+
this.selectedJustify.set({ value: event.value, label: this.findJustifyNameById(event.value) });
|
|
8967
|
+
this.clickedJustify.set(event.value);
|
|
8891
8968
|
}
|
|
8892
|
-
this.
|
|
8893
|
-
|
|
8894
|
-
|
|
8895
|
-
|
|
8896
|
-
|
|
8897
|
-
|
|
8898
|
-
'bottom-left': this.lastRadius(),
|
|
8899
|
-
'bottom-right': this.lastRadius(),
|
|
8900
|
-
'top-left': this.lastRadius(),
|
|
8901
|
-
'top-right': this.lastRadius(),
|
|
8902
|
-
},
|
|
8903
|
-
}));
|
|
8904
|
-
this.allRadius.set(this.lastRadius());
|
|
8905
|
-
const data = AXPPropertyEditorHelper.parseBorderBoxReverse(this.calculatedValues(), this.units());
|
|
8906
|
-
this.setValue(data);
|
|
8969
|
+
this.saveValue({ justifyItems: this.clickedJustify() });
|
|
8970
|
+
}
|
|
8971
|
+
onAlignChange(event) {
|
|
8972
|
+
if (event.isUserInteraction) {
|
|
8973
|
+
this.selectedAlign.set({ value: event.value, label: this.findAlignNameById(event.value) });
|
|
8974
|
+
this.clickedAlign.set(event.value);
|
|
8907
8975
|
}
|
|
8908
|
-
this.
|
|
8909
|
-
this.currentActiveRadiusEl.style.backgroundColor = 'var(--focus-color)';
|
|
8976
|
+
this.saveValue({ alignItems: this.clickedAlign() });
|
|
8910
8977
|
}
|
|
8911
|
-
|
|
8912
|
-
|
|
8913
|
-
|
|
8914
|
-
|
|
8915
|
-
|
|
8916
|
-
|
|
8917
|
-
|
|
8918
|
-
|
|
8919
|
-
|
|
8920
|
-
|
|
8921
|
-
|
|
8922
|
-
|
|
8923
|
-
this.allwidth.set(firstWidthValue);
|
|
8924
|
-
this.currentActiveSide.set('all');
|
|
8925
|
-
this.currentActiveBorderEl = this.allBorderEl()?.nativeElement;
|
|
8926
|
-
if (this.currentActiveBorderEl) {
|
|
8927
|
-
this.currentActiveBorderEl.style.backgroundColor = 'var(--focus-color)';
|
|
8978
|
+
changeBreakPoint(event) {
|
|
8979
|
+
if (event.isUserInteraction) {
|
|
8980
|
+
const value = this.getValue();
|
|
8981
|
+
const newBreakpoint = (typeof event.value === 'object' ? event.value.id : event.value);
|
|
8982
|
+
const currentBreakpoint = this.currentBreakpoint();
|
|
8983
|
+
if (newBreakpoint === currentBreakpoint) {
|
|
8984
|
+
return;
|
|
8985
|
+
}
|
|
8986
|
+
this.lastBreakpoint.set(currentBreakpoint);
|
|
8987
|
+
this.currentBreakpoint.set(newBreakpoint);
|
|
8988
|
+
if (value[currentBreakpoint] && value[newBreakpoint] === undefined) {
|
|
8989
|
+
this.setValue({ ...value, [newBreakpoint]: value[currentBreakpoint] });
|
|
8928
8990
|
}
|
|
8991
|
+
this.initialValues();
|
|
8992
|
+
}
|
|
8993
|
+
}
|
|
8994
|
+
resetBreakpoint() {
|
|
8995
|
+
if (this.currentBreakpoint() === 'default') {
|
|
8996
|
+
return;
|
|
8929
8997
|
}
|
|
8930
8998
|
else {
|
|
8931
|
-
const
|
|
8932
|
-
|
|
8933
|
-
|
|
8934
|
-
|
|
8935
|
-
|
|
8936
|
-
|
|
8937
|
-
|
|
8938
|
-
|
|
8939
|
-
|
|
8940
|
-
|
|
8941
|
-
|
|
8999
|
+
const value = cloneDeep(this.getValue());
|
|
9000
|
+
delete value[this.currentBreakpoint()];
|
|
9001
|
+
const newBreakpoint = this.lastBreakpoint();
|
|
9002
|
+
const otherBreakpoints = findNonEmptyBreakpoints(value);
|
|
9003
|
+
this.currentBreakpoint.set(newBreakpoint);
|
|
9004
|
+
const filteredOtherBreakpoints = otherBreakpoints.filter((i) => i !== newBreakpoint);
|
|
9005
|
+
if (filteredOtherBreakpoints.length === 0) {
|
|
9006
|
+
this.lastBreakpoint.set(newBreakpoint);
|
|
9007
|
+
}
|
|
9008
|
+
else {
|
|
9009
|
+
this.lastBreakpoint.set(filteredOtherBreakpoints[filteredOtherBreakpoints.length - 1]);
|
|
8942
9010
|
}
|
|
9011
|
+
this.setValue({ ...value });
|
|
9012
|
+
this.initialValues();
|
|
9013
|
+
this.getValue();
|
|
8943
9014
|
}
|
|
8944
9015
|
}
|
|
8945
|
-
|
|
8946
|
-
const
|
|
8947
|
-
|
|
8948
|
-
|
|
8949
|
-
|
|
8950
|
-
|
|
8951
|
-
|
|
8952
|
-
|
|
8953
|
-
|
|
8954
|
-
|
|
9016
|
+
detectConfiguredBreakpoints() {
|
|
9017
|
+
const value = this.getValue();
|
|
9018
|
+
let newBreakpointConfigured = {};
|
|
9019
|
+
Object.keys(value).forEach((key) => {
|
|
9020
|
+
newBreakpointConfigured[key] = true;
|
|
9021
|
+
});
|
|
9022
|
+
this.isBreakpointConfigured.set(newBreakpointConfigured);
|
|
9023
|
+
}
|
|
9024
|
+
saveValue(item) {
|
|
9025
|
+
const value = this.getValue();
|
|
9026
|
+
const breakpoint = this.currentBreakpoint();
|
|
9027
|
+
if (value) {
|
|
9028
|
+
const existingBreakpointValue = value[breakpoint];
|
|
9029
|
+
const newValue = {
|
|
9030
|
+
...value,
|
|
9031
|
+
[breakpoint]: existingBreakpointValue ? { ...existingBreakpointValue, ...item } : item,
|
|
9032
|
+
};
|
|
9033
|
+
this.setValue(newValue);
|
|
8955
9034
|
}
|
|
8956
9035
|
else {
|
|
8957
|
-
|
|
8958
|
-
|
|
8959
|
-
|
|
8960
|
-
this.currentActiveRadiusEl = element;
|
|
8961
|
-
element.style.backgroundColor = 'var(--focus-color)';
|
|
8962
|
-
}
|
|
9036
|
+
this.setValue({
|
|
9037
|
+
[breakpoint]: item,
|
|
9038
|
+
});
|
|
8963
9039
|
}
|
|
8964
9040
|
}
|
|
8965
|
-
|
|
8966
|
-
|
|
8967
|
-
|
|
8968
|
-
|
|
8969
|
-
|
|
8970
|
-
|
|
8971
|
-
|
|
9041
|
+
#firstInitialize;
|
|
9042
|
+
#trackChange;
|
|
9043
|
+
// #eff1 = effect(() => console.log(this.getValue()));
|
|
9044
|
+
// #eff2 = effect(() => console.log(this.currentBreakpoint(), this.clickedAlign(), this.clickedJustify()));
|
|
9045
|
+
initialValues() {
|
|
9046
|
+
const value = this.getValue();
|
|
9047
|
+
if (value) {
|
|
9048
|
+
if (!this.rendered()) {
|
|
9049
|
+
const keys = findNonEmptyBreakpoints(value);
|
|
9050
|
+
this.currentBreakpoint.set(keys.length === 0 ? 'default' : keys[keys.length - 1]);
|
|
9051
|
+
}
|
|
9052
|
+
const justify = value[this.currentBreakpoint()]?.justifyItems ?? 'stretch';
|
|
9053
|
+
const align = value[this.currentBreakpoint()]?.alignItems ?? 'stretch';
|
|
9054
|
+
this.clickedJustify.set(justify);
|
|
9055
|
+
this.clickedAlign.set(align);
|
|
9056
|
+
this.selectedJustify.set({ value: justify, label: this.findJustifyNameById(justify) });
|
|
9057
|
+
this.selectedAlign.set({ value: align, label: this.findAlignNameById(align) });
|
|
9058
|
+
const rows = AXPPropertyEditorHelper.parseGridTemplate(value[this.currentBreakpoint()]?.gridTemplateRows ?? 'repeat(1, 1fr)');
|
|
9059
|
+
const cols = AXPPropertyEditorHelper.parseGridTemplate(value[this.currentBreakpoint()]?.gridTemplateColumns ?? 'repeat(1, 1fr)');
|
|
9060
|
+
this.gridTemplateRows.set(rows);
|
|
9061
|
+
this.gridTemplateColumns.set(cols);
|
|
9062
|
+
const { values, unit } = AXPPropertyEditorHelper.parseGap(value[this.currentBreakpoint()]?.gap ?? '0px');
|
|
9063
|
+
this.setGap(values.x, 'x');
|
|
9064
|
+
this.setGap(values.y, 'y');
|
|
9065
|
+
this.gapUnit.set(unit);
|
|
9066
|
+
this.detectConfiguredBreakpoints();
|
|
9067
|
+
}
|
|
8972
9068
|
}
|
|
8973
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
8974
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPBorderWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "allBorderEl", first: true, predicate: ["allBorderEl"], descendants: true, isSignal: true }, { propertyName: "allRadiusEl", first: true, predicate: ["allRadiusEl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-pt-2 axp-border-container\">\n <div class=\"ax-radius-box ax-flex ax-justify-between ax-items-center ax-gap-2 ax-h-[26px]\">\n <span class=\"ax-text-sm ax-font-light\">Radius</span>\n <div class=\"ax-flex ax-gap-2 ax-items-center\">\n <button\n #allRadiusEl\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M2.5 5.5C2.5 3.84315 3.84315 2.5 5.5 2.5H10.5C12.1569 2.5 13.5 3.84315 13.5 5.5V10.5C13.5 12.1569 12.1569 13.5 10.5 13.5H5.5C3.84315 13.5 2.5 12.1569 2.5 10.5V5.5Z\"\n stroke=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n <button\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"sides\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 2C3.11929 2 2 3.11929 2 4.5V7H3V4.5C3 3.67157 3.67157 3 4.5 3H7V2H4.5Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M9 2V3H11.5C12.3284 3 13 3.67157 13 4.5V7H14V4.5C14 3.11929 12.8807 2 11.5 2H9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M7 14V13H4.5C3.67157 13 3 12.3284 3 11.5V9H2V11.5C2 12.8807 3.11929 14 4.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n @if(currentActiveRadiusSide() ==='all'){\n <div class=\"ax-flex ax-justify-center ax-items-center ax-flex-shrink\">\n <ax-range-slider\n [values]=\"allRadius()\"\n [min]=\"0\"\n [max]=\"100\"\n (valuesChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-28\"\n ></ax-range-slider>\n </div>\n <div class=\"ax-flex ax-justify-start ax-items-center\">\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"100\"\n [value]=\"allRadius()\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-8\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }@else{\n <div class=\"ax-w-48\"></div>\n }\n </div>\n </div>\n\n <div\n class=\"axp-border-radius-sides ax-flex ax-justify-end ax-items-center ax-overflow-y-hidden ax-transition-[height] ax-duration-300 ax-ease-in-out\"\n [class]=\"currentActiveRadiusSide() === 'all' ? '!ax-h-0' : '!ax-h-[56px]'\"\n >\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-2\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M14 14V9H13V13H9V14H14Z\" fill=\"currentColor\"></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n <path d=\"M2 7H3V6.5C3 4.567 4.567 3 6.5 3H7V2H6.5C4.01472 2 2 4.01472 2 6.5V7Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M2.5 7V6.5C2.5 4.29086 4.29086 2.5 6.5 2.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 14V9H3V13H7V14H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 14V13H13V9H14V14H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 7H13V6.5C13 4.567 11.433 3 9.5 3H9V2H9.5C11.9853 2 14 4.01472 14 6.5V7Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 2V3H3V7H2V2H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 7V6.5C13.5 4.29086 11.7091 2.5 9.5 2.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path d=\"M14 9H13V13H9V14H14V9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M7 14V13H6.5C4.567 13 3 11.433 3 9.5V9H2V9.5C2 11.9853 4.01472 14 6.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </g>\n <path d=\"M2.5 9V9.5C2.5 11.7091 4.29086 13.5 6.5 13.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 9V9.5C13.5 11.7091 11.7091 13.5 9.5 13.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"ax-flex ax-justify-between ax-items-center ax-py-1\">\n <span class=\"ax-text-sm ax-font-light\">Borders</span>\n </div>\n\n <div class=\"ax-border-box ax-flex ax-justify-between ax-items-center ax-gap-4\">\n <div class=\"ax-grid ax-grid-cols-3 ax-grid-rows-3 ax-gap-1 ax-flex-shrink-0\">\n <!-- Top Border -->\n <div class=\"ax-border-box-top ax-col-start-2 ax-row-start-1\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"top\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 13C2 13.5523 2.44772 14 3 14H13C13.5523 14 14 13.5523 14 13V5H13V13H3V5H2V13Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 3H14V2H2V3Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Right Border -->\n <div class=\"ax-border-box-right ax-col-start-3 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"right\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 2C2.44772 2 2 2.44772 2 3L2 13C2 13.5523 2.44772 14 3 14L11 14L11 13L3 13L3 3L11 3L11 2L3 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 2L13 14L14 14L14 2L13 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Bottom Border -->\n <div class=\"ax-border-box-bottom ax-col-start-2 ax-row-start-3\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"bottom\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V11H13V3H3V11H2V3Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 13H14V14H2V13Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Left Border -->\n <div class=\"ax-border-box-left ax-col-start-1 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"left\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 2C13.5523 2 14 2.44772 14 3L14 13C14 13.5523 13.5523 14 13 14L5 14L5 13L13 13L13 3L5 3L5 2L13 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 2L3 14L2 14L2 2L3 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- All -->\n <div class=\"ax-border-box-all ax-col-start-2 ax-row-start-2\">\n <button\n #allBorderEl\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V13C14 13.5523 13.5523 14 13 14H3C2.44772 14 2 13.5523 2 13V3ZM13 3L3 3V13H13V3Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-gap-x-2 ax-gap-y-2\">\n <div class=\"ax-text-sm ax-font-light\">Style</div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item\n (onClick)=\"setBorder('none', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'none'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.70714 8.00004L12.3536 4.35359L11.6465 3.64648L8.00004 7.29293L4.35359 3.64648L3.64648 4.35359L7.29293 8.00004L3.64648 11.6465L4.35359 12.3536L8.00004 8.70714L11.6465 12.3536L12.3536 11.6465L8.70714 8.00004Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('solid', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'solid'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2 7.5H14\" stroke=\"currentColor\"></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dashed', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dashed'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7H2V8H5V7ZM11 8H12H14V7H12H11V8ZM9.5 7H6.5V8H9.5V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dotted', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dotted'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 7H3V8H4V7ZM6 7H5V8H6V7ZM7 7H8V8H7V7ZM10 7H9V8H10V7ZM11 7H12V8H11V7ZM14 7H13V8H14V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n <div class=\"ax-contents\" [class]=\"shownStyle() === 'none' ? 'ax-invisible' : 'ax-visible'\">\n <div class=\"ax-text-sm ax-font-light\">Width</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"shownWidth()\"\n (valueChange)=\"setBorder($event ?? 0, 'width', currentActiveSide())\"\n class=\"ax-min-w-8 ax-exclude\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text>PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n\n <div class=\"ax-text-sm ax-font-light\">Color</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36 ax-overflow-hidden\">\n <ax-color-box\n [value]=\"shownColor()\"\n (valueChange)=\"setBorder($event, 'color', currentActiveSide())\"\n ></ax-color-box>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".axp-border-container{--hover-effect: #404040;--focus-color: rgba(0, 106, 204, .18);--ax-range-slider-base-thickness: .15rem}.axp-border-container ax-range-slider{padding:.5rem!important}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child{height:1.5rem!important;border-radius:.25rem!important;font-size:12px}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-border-container ax-button-group ax-button-group-item{padding:.2rem .55rem!important}\n"], dependencies: [{ kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i3$6.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i4$2.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange"] }, { kind: "component", type: i4$2.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i2$6.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9069
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPGridOptionsWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9070
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPGridOptionsWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"axp-grid-breakpoints ax-pb-4\">\n <ax-selection-list\n [direction]=\"'horizontal'\"\n [items]=\"selectionItems\"\n [look]=\"'card'\"\n [customTemplate]=\"customTemplate\"\n [showControl]=\"false\"\n [ngModel]=\"currentBreakpoint()\"\n (onValueChanged)=\"changeBreakPoint($event)\"\n ></ax-selection-list>\n</div>\n<ng-template #customTemplate let-item>\n @let data = item.data;\n <div [class]=\"isBreakpointConfigured()[data.id] ? 'ax-text-primary-300' : ''\">\n {{ data.text }}\n </div>\n</ng-template>\n<ax-button\n color=\"primary\"\n text=\"Reset\"\n [disabled]=\"currentBreakpoint() === 'default'\"\n (click)=\"resetBreakpoint()\"\n></ax-button>\n\n<div class=\"axp-grid-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span> Direction </span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item class=\"ax-w-24\" (onClick)=\"setGridDirection('row')\" [selected]=\"gridDirection() === 'row'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 4H11V3H3V4ZM13.8536 11.1464L10.8536 8.14645L10.1464 8.85355L12.2929 11H3V12H12.2929L10.1464 14.1464L10.8536 14.8536L13.8536 11.8536L14.2071 11.5L13.8536 11.1464Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 10.7929L9.79289 4H11V4.20711L4.20711 11H3V10.7929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item class=\"ax-w-24\" (onClick)=\"setGridDirection('col')\" [selected]=\"gridDirection() === 'col'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowColumnWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 3L4 11L3 11L3 3L4 3ZM11.1464 13.8536L8.14645 10.8536L8.85355 10.1464L11 12.2929L11 3L12 3L12 12.2929L14.1464 10.1464L14.8536 10.8536L11.8536 13.8536L11.5 14.2071L11.1464 13.8536Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M10.7929 3L4 9.79289L4 11L4.20711 11L11 4.20711L11 3L10.7929 3Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n </div>\n <span>Grid</span>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateRows()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'row')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateColumns()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'column')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <!-- <button>\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 3.29289C7.18754 3.10536 7.44189 3 7.70711 3H10.5C10.7022 3 10.8845 3.12182 10.9619 3.30866C11.0393 3.4955 10.9966 3.71055 10.8536 3.85355L9 5.70711V7H10.2929L12.1464 5.14645C12.2894 5.00345 12.5045 4.96067 12.6913 5.03806C12.8782 5.11545 13 5.29777 13 5.5V8.29289C13 8.55811 12.8946 8.81246 12.7071 9L11 10.7071C10.8125 10.8946 10.5581 11 10.2929 11H7.70711L4.85355 13.8536C4.65829 14.0488 4.34171 14.0488 4.14645 13.8536L2.14645 11.8536C1.95118 11.6583 1.95118 11.3417 2.14645 11.1464L5 8.29289V5.70711C5 5.44189 5.10536 5.18754 5.29289 5L7 3.29289ZM9.29289 4H7.70711L6 5.70711L6 8.29289C6 8.55811 5.89464 8.81246 5.70711 9L3.20711 11.5L4.5 12.7929L7 10.2929C7.18754 10.1054 7.44189 10 7.70711 10H10.2929L12 8.29289V6.70711L10.8536 7.85355C10.7598 7.94732 10.6326 8 10.5 8H8.5C8.22386 8 8 7.77614 8 7.5V5.5C8 5.36739 8.05268 5.24021 8.14645 5.14645L9.29289 4Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button> -->\n </div>\n\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of gridSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n @if(hoveredJustify() && hoveredAlign()){\n <div\n class=\"axp-grid-option-hover ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {} @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"stroke-opacity: 0.25; fill-opacity: 0.07\"\n class=\"hover:fill-opacity-20\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n }\n\n <div\n class=\"axp-grid-option-active ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {\n <svg\n width=\"60\"\n height=\"60\"\n viewBox=\"0 0 60 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M55.5 55.48a.02.02 0 0 1-.02.02H4.52a.02.02 0 0 1-.02-.02V4.52a.02.02 0 0 1 .02-.02h50.96a.02.02 0 0 1 .02.02v50.96Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n <path\n d=\"m26.354 20.354 3.146-3.147V29.5h-3v1h3v12.293l-3.146-3.147-.707.708L30 44.707l4.354-4.353-.707-.708-3.147 3.147V30.5h12.293l-3.147 3.147.708.707L44.707 30l-4.353-4.354-.708.708 3.147 3.146H30.5V17.207l3.146 3.147.707-.707L30 15.293l-4.354 4.354.707.707Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n <path\n d=\"m17.207 30.5 3.146 3.147-.707.707L15.293 30l4.353-4.354.707.708-3.146 3.146H26.5v1h-9.293Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill: #cebcbc; fill-opacity: 0.16\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span>X:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [value]=\"selectedJustify()\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span>Y:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [value]=\"selectedAlign()\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='single') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [values]=\"gap().x\"\n (valuesChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'both')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'x')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"toggleGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='single'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>\n", styles: [".axp-grid-breakpoints{font-size:.25rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul{gap:.5rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul>li>label{padding:.25rem!important}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .5rem!important}.axp-grid-option ax-range-slider:not(.ax-exclude){--ax-range-slider-base-thickness: .1rem}.axp-grid-option ax-range-slider:not(.ax-exclude) .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i1$7.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange"] }, { kind: "component", type: i1$7.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i7$1.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i2$3.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
8975
9071
|
}
|
|
8976
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
9072
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPGridOptionsWidgetEditComponent, decorators: [{
|
|
8977
9073
|
type: Component,
|
|
8978
9074
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
9075
|
+
CommonModule,
|
|
9076
|
+
AXButtonGroupModule,
|
|
9077
|
+
AXDecoratorModule,
|
|
9078
|
+
AXSelectBoxModule,
|
|
8979
9079
|
AXNumberBoxModule,
|
|
8980
|
-
|
|
8981
|
-
AXCheckBoxModule,
|
|
9080
|
+
AXDropdownModule,
|
|
8982
9081
|
AXButtonModule,
|
|
8983
|
-
|
|
9082
|
+
FormsModule,
|
|
8984
9083
|
AXRangeSliderModule,
|
|
8985
|
-
|
|
8986
|
-
|
|
8987
|
-
], template: "<div class=\"ax-pt-2 axp-border-container\">\n <div class=\"ax-radius-box ax-flex ax-justify-between ax-items-center ax-gap-2 ax-h-[26px]\">\n <span class=\"ax-text-sm ax-font-light\">Radius</span>\n <div class=\"ax-flex ax-gap-2 ax-items-center\">\n <button\n #allRadiusEl\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M2.5 5.5C2.5 3.84315 3.84315 2.5 5.5 2.5H10.5C12.1569 2.5 13.5 3.84315 13.5 5.5V10.5C13.5 12.1569 12.1569 13.5 10.5 13.5H5.5C3.84315 13.5 2.5 12.1569 2.5 10.5V5.5Z\"\n stroke=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n <button\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"sides\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 2C3.11929 2 2 3.11929 2 4.5V7H3V4.5C3 3.67157 3.67157 3 4.5 3H7V2H4.5Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M9 2V3H11.5C12.3284 3 13 3.67157 13 4.5V7H14V4.5C14 3.11929 12.8807 2 11.5 2H9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M7 14V13H4.5C3.67157 13 3 12.3284 3 11.5V9H2V11.5C2 12.8807 3.11929 14 4.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n @if(currentActiveRadiusSide() ==='all'){\n <div class=\"ax-flex ax-justify-center ax-items-center ax-flex-shrink\">\n <ax-range-slider\n [values]=\"allRadius()\"\n [min]=\"0\"\n [max]=\"100\"\n (valuesChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-28\"\n ></ax-range-slider>\n </div>\n <div class=\"ax-flex ax-justify-start ax-items-center\">\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"100\"\n [value]=\"allRadius()\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-8\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }@else{\n <div class=\"ax-w-48\"></div>\n }\n </div>\n </div>\n\n <div\n class=\"axp-border-radius-sides ax-flex ax-justify-end ax-items-center ax-overflow-y-hidden ax-transition-[height] ax-duration-300 ax-ease-in-out\"\n [class]=\"currentActiveRadiusSide() === 'all' ? '!ax-h-0' : '!ax-h-[56px]'\"\n >\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-2\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M14 14V9H13V13H9V14H14Z\" fill=\"currentColor\"></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n <path d=\"M2 7H3V6.5C3 4.567 4.567 3 6.5 3H7V2H6.5C4.01472 2 2 4.01472 2 6.5V7Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M2.5 7V6.5C2.5 4.29086 4.29086 2.5 6.5 2.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 14V9H3V13H7V14H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 14V13H13V9H14V14H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 7H13V6.5C13 4.567 11.433 3 9.5 3H9V2H9.5C11.9853 2 14 4.01472 14 6.5V7Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 2V3H3V7H2V2H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 7V6.5C13.5 4.29086 11.7091 2.5 9.5 2.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path d=\"M14 9H13V13H9V14H14V9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M7 14V13H6.5C4.567 13 3 11.433 3 9.5V9H2V9.5C2 11.9853 4.01472 14 6.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </g>\n <path d=\"M2.5 9V9.5C2.5 11.7091 4.29086 13.5 6.5 13.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 9V9.5C13.5 11.7091 11.7091 13.5 9.5 13.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"ax-flex ax-justify-between ax-items-center ax-py-1\">\n <span class=\"ax-text-sm ax-font-light\">Borders</span>\n </div>\n\n <div class=\"ax-border-box ax-flex ax-justify-between ax-items-center ax-gap-4\">\n <div class=\"ax-grid ax-grid-cols-3 ax-grid-rows-3 ax-gap-1 ax-flex-shrink-0\">\n <!-- Top Border -->\n <div class=\"ax-border-box-top ax-col-start-2 ax-row-start-1\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"top\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 13C2 13.5523 2.44772 14 3 14H13C13.5523 14 14 13.5523 14 13V5H13V13H3V5H2V13Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 3H14V2H2V3Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Right Border -->\n <div class=\"ax-border-box-right ax-col-start-3 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"right\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 2C2.44772 2 2 2.44772 2 3L2 13C2 13.5523 2.44772 14 3 14L11 14L11 13L3 13L3 3L11 3L11 2L3 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 2L13 14L14 14L14 2L13 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Bottom Border -->\n <div class=\"ax-border-box-bottom ax-col-start-2 ax-row-start-3\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"bottom\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V11H13V3H3V11H2V3Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 13H14V14H2V13Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Left Border -->\n <div class=\"ax-border-box-left ax-col-start-1 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"left\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 2C13.5523 2 14 2.44772 14 3L14 13C14 13.5523 13.5523 14 13 14L5 14L5 13L13 13L13 3L5 3L5 2L13 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 2L3 14L2 14L2 2L3 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- All -->\n <div class=\"ax-border-box-all ax-col-start-2 ax-row-start-2\">\n <button\n #allBorderEl\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V13C14 13.5523 13.5523 14 13 14H3C2.44772 14 2 13.5523 2 13V3ZM13 3L3 3V13H13V3Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-gap-x-2 ax-gap-y-2\">\n <div class=\"ax-text-sm ax-font-light\">Style</div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item\n (onClick)=\"setBorder('none', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'none'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.70714 8.00004L12.3536 4.35359L11.6465 3.64648L8.00004 7.29293L4.35359 3.64648L3.64648 4.35359L7.29293 8.00004L3.64648 11.6465L4.35359 12.3536L8.00004 8.70714L11.6465 12.3536L12.3536 11.6465L8.70714 8.00004Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('solid', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'solid'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2 7.5H14\" stroke=\"currentColor\"></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dashed', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dashed'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7H2V8H5V7ZM11 8H12H14V7H12H11V8ZM9.5 7H6.5V8H9.5V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dotted', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dotted'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 7H3V8H4V7ZM6 7H5V8H6V7ZM7 7H8V8H7V7ZM10 7H9V8H10V7ZM11 7H12V8H11V7ZM14 7H13V8H14V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n <div class=\"ax-contents\" [class]=\"shownStyle() === 'none' ? 'ax-invisible' : 'ax-visible'\">\n <div class=\"ax-text-sm ax-font-light\">Width</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"shownWidth()\"\n (valueChange)=\"setBorder($event ?? 0, 'width', currentActiveSide())\"\n class=\"ax-min-w-8 ax-exclude\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text>PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n\n <div class=\"ax-text-sm ax-font-light\">Color</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36 ax-overflow-hidden\">\n <ax-color-box\n [value]=\"shownColor()\"\n (valueChange)=\"setBorder($event, 'color', currentActiveSide())\"\n ></ax-color-box>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".axp-border-container{--hover-effect: #404040;--focus-color: rgba(0, 106, 204, .18);--ax-range-slider-base-thickness: .15rem}.axp-border-container ax-range-slider{padding:.5rem!important}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child{height:1.5rem!important;border-radius:.25rem!important;font-size:12px}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-border-container ax-button-group ax-button-group-item{padding:.2rem .55rem!important}\n"] }]
|
|
9084
|
+
AXSelectionListModule,
|
|
9085
|
+
FormsModule,
|
|
9086
|
+
], template: "<div class=\"axp-grid-breakpoints ax-pb-4\">\n <ax-selection-list\n [direction]=\"'horizontal'\"\n [items]=\"selectionItems\"\n [look]=\"'card'\"\n [customTemplate]=\"customTemplate\"\n [showControl]=\"false\"\n [ngModel]=\"currentBreakpoint()\"\n (onValueChanged)=\"changeBreakPoint($event)\"\n ></ax-selection-list>\n</div>\n<ng-template #customTemplate let-item>\n @let data = item.data;\n <div [class]=\"isBreakpointConfigured()[data.id] ? 'ax-text-primary-300' : ''\">\n {{ data.text }}\n </div>\n</ng-template>\n<ax-button\n color=\"primary\"\n text=\"Reset\"\n [disabled]=\"currentBreakpoint() === 'default'\"\n (click)=\"resetBreakpoint()\"\n></ax-button>\n\n<div class=\"axp-grid-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span> Direction </span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item class=\"ax-w-24\" (onClick)=\"setGridDirection('row')\" [selected]=\"gridDirection() === 'row'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 4H11V3H3V4ZM13.8536 11.1464L10.8536 8.14645L10.1464 8.85355L12.2929 11H3V12H12.2929L10.1464 14.1464L10.8536 14.8536L13.8536 11.8536L14.2071 11.5L13.8536 11.1464Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 10.7929L9.79289 4H11V4.20711L4.20711 11H3V10.7929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item class=\"ax-w-24\" (onClick)=\"setGridDirection('col')\" [selected]=\"gridDirection() === 'col'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowColumnWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 3L4 11L3 11L3 3L4 3ZM11.1464 13.8536L8.14645 10.8536L8.85355 10.1464L11 12.2929L11 3L12 3L12 12.2929L14.1464 10.1464L14.8536 10.8536L11.8536 13.8536L11.5 14.2071L11.1464 13.8536Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M10.7929 3L4 9.79289L4 11L4.20711 11L11 4.20711L11 3L10.7929 3Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n </div>\n <span>Grid</span>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateRows()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'row')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateColumns()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'column')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <!-- <button>\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 3.29289C7.18754 3.10536 7.44189 3 7.70711 3H10.5C10.7022 3 10.8845 3.12182 10.9619 3.30866C11.0393 3.4955 10.9966 3.71055 10.8536 3.85355L9 5.70711V7H10.2929L12.1464 5.14645C12.2894 5.00345 12.5045 4.96067 12.6913 5.03806C12.8782 5.11545 13 5.29777 13 5.5V8.29289C13 8.55811 12.8946 8.81246 12.7071 9L11 10.7071C10.8125 10.8946 10.5581 11 10.2929 11H7.70711L4.85355 13.8536C4.65829 14.0488 4.34171 14.0488 4.14645 13.8536L2.14645 11.8536C1.95118 11.6583 1.95118 11.3417 2.14645 11.1464L5 8.29289V5.70711C5 5.44189 5.10536 5.18754 5.29289 5L7 3.29289ZM9.29289 4H7.70711L6 5.70711L6 8.29289C6 8.55811 5.89464 8.81246 5.70711 9L3.20711 11.5L4.5 12.7929L7 10.2929C7.18754 10.1054 7.44189 10 7.70711 10H10.2929L12 8.29289V6.70711L10.8536 7.85355C10.7598 7.94732 10.6326 8 10.5 8H8.5C8.22386 8 8 7.77614 8 7.5V5.5C8 5.36739 8.05268 5.24021 8.14645 5.14645L9.29289 4Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button> -->\n </div>\n\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of gridSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n @if(hoveredJustify() && hoveredAlign()){\n <div\n class=\"axp-grid-option-hover ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {} @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"stroke-opacity: 0.25; fill-opacity: 0.07\"\n class=\"hover:fill-opacity-20\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n }\n\n <div\n class=\"axp-grid-option-active ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {\n <svg\n width=\"60\"\n height=\"60\"\n viewBox=\"0 0 60 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M55.5 55.48a.02.02 0 0 1-.02.02H4.52a.02.02 0 0 1-.02-.02V4.52a.02.02 0 0 1 .02-.02h50.96a.02.02 0 0 1 .02.02v50.96Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n <path\n d=\"m26.354 20.354 3.146-3.147V29.5h-3v1h3v12.293l-3.146-3.147-.707.708L30 44.707l4.354-4.353-.707-.708-3.147 3.147V30.5h12.293l-3.147 3.147.708.707L44.707 30l-4.353-4.354-.708.708 3.147 3.146H30.5V17.207l3.146 3.147.707-.707L30 15.293l-4.354 4.354.707.707Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n <path\n d=\"m17.207 30.5 3.146 3.147-.707.707L15.293 30l4.353-4.354.707.708-3.146 3.146H26.5v1h-9.293Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill: #cebcbc; fill-opacity: 0.16\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span>X:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [value]=\"selectedJustify()\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span>Y:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [value]=\"selectedAlign()\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='single') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [values]=\"gap().x\"\n (valuesChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'both')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'x')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"toggleGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='single'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>\n", styles: [".axp-grid-breakpoints{font-size:.25rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul{gap:.5rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul>li>label{padding:.25rem!important}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .5rem!important}.axp-grid-option ax-range-slider:not(.ax-exclude){--ax-range-slider-base-thickness: .1rem}.axp-grid-option ax-range-slider:not(.ax-exclude) .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}\n"] }]
|
|
8988
9087
|
}] });
|
|
8989
9088
|
|
|
8990
|
-
var
|
|
9089
|
+
var gridOptionsWidgetEditor_component = /*#__PURE__*/Object.freeze({
|
|
8991
9090
|
__proto__: null,
|
|
8992
|
-
|
|
9091
|
+
AXPGridOptionsWidgetEditComponent: AXPGridOptionsWidgetEditComponent
|
|
8993
9092
|
});
|
|
8994
9093
|
|
|
8995
|
-
const
|
|
8996
|
-
name: '
|
|
8997
|
-
title: '
|
|
8998
|
-
description: '
|
|
9094
|
+
const AXPGridOptionsWidget = {
|
|
9095
|
+
name: 'grid-options',
|
|
9096
|
+
title: 'Grid Options',
|
|
9097
|
+
description: 'Make an Elements Grid',
|
|
8999
9098
|
group: AXP_WIDGETS_EDITOR_GROUP,
|
|
9000
|
-
icon: 'fa-solid fa-
|
|
9099
|
+
icon: 'fa-solid fa-th',
|
|
9001
9100
|
type: 'editor',
|
|
9002
9101
|
properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY],
|
|
9003
9102
|
components: {
|
|
9004
9103
|
edit: {
|
|
9005
|
-
component: () => Promise.resolve().then(function () { return
|
|
9104
|
+
component: () => Promise.resolve().then(function () { return gridOptionsWidgetEditor_component; }).then((c) => c.AXPGridOptionsWidgetEditComponent),
|
|
9006
9105
|
},
|
|
9007
9106
|
},
|
|
9008
9107
|
visible: false,
|
|
9009
9108
|
};
|
|
9010
9109
|
|
|
9011
|
-
|
|
9012
|
-
{ value: 'top-left', label: 'Top Left', alignItems: 'flex-start', justifyContent: 'flex-start' },
|
|
9013
|
-
{ value: 'top-center', label: 'Top Center', alignItems: 'flex-start', justifyContent: 'center' },
|
|
9014
|
-
{ value: 'top-right', label: 'Top Right', alignItems: 'flex-start', justifyContent: 'flex-end' },
|
|
9015
|
-
{ value: 'middle-left', label: 'Middle Left', alignItems: 'center', justifyContent: 'flex-start' },
|
|
9016
|
-
{ value: 'middle-center', label: 'Middle Center', alignItems: 'center', justifyContent: 'center' },
|
|
9017
|
-
{ value: 'middle-right', label: 'Middle Right', alignItems: 'center', justifyContent: 'flex-end' },
|
|
9018
|
-
{ value: 'bottom-left', label: 'Bottom Left', alignItems: 'flex-end', justifyContent: 'flex-start' },
|
|
9019
|
-
{ value: 'bottom-center', label: 'Bottom Center', alignItems: 'flex-end', justifyContent: 'center' },
|
|
9020
|
-
{ value: 'bottom-right', label: 'Bottom Right', alignItems: 'flex-end', justifyContent: 'flex-end' },
|
|
9021
|
-
];
|
|
9022
|
-
const AXP_Flex_Box_Justify_Options = [
|
|
9023
|
-
{ value: 'flex-start', label: 'Start' },
|
|
9024
|
-
{ value: 'flex-end', label: 'End' },
|
|
9025
|
-
{ value: 'center', label: 'Center' },
|
|
9026
|
-
{ value: 'space-between', label: 'Space Between' },
|
|
9027
|
-
{ value: 'space-around', label: 'Space Around' },
|
|
9028
|
-
];
|
|
9029
|
-
const AXP_Flex_Box_Align_Options = [
|
|
9030
|
-
{ value: 'flex-start', label: 'Start' },
|
|
9031
|
-
{ value: 'flex-end', label: 'End' },
|
|
9032
|
-
{ value: 'center', label: 'Center' },
|
|
9033
|
-
{ value: 'stretch', label: 'Stretch' },
|
|
9034
|
-
{ value: 'baseline', label: 'Baseline' },
|
|
9035
|
-
];
|
|
9036
|
-
|
|
9037
|
-
class AXPFlexOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
9110
|
+
class AXPAdvancedGridOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
9038
9111
|
constructor() {
|
|
9039
9112
|
super(...arguments);
|
|
9113
|
+
this.gridSides = AXP_Grid_Box_Alignments;
|
|
9040
9114
|
this.rendered = signal(false);
|
|
9041
|
-
this.
|
|
9042
|
-
this.
|
|
9043
|
-
this.flexWrap = signal('nowrap');
|
|
9044
|
-
this.flexDirectionIsColumn = computed(() => this.flexDirection().startsWith('column'));
|
|
9045
|
-
this.flexDirectionIsReverse = computed(() => this.flexDirection().endsWith('reverse'));
|
|
9046
|
-
this.flexDirectionWithoutReverse = computed(() => this.flexDirection().replace('-reverse', ''));
|
|
9047
|
-
this.gapMode = signal('both');
|
|
9048
|
-
this.gapUnit = signal('px');
|
|
9049
|
-
this.gap = signal({ both: 0, x: 0, y: 0 });
|
|
9050
|
-
this.lastGap = signal(0);
|
|
9051
|
-
this.selectedJustify = signal({ value: 'flex-start', label: 'Start' });
|
|
9052
|
-
this.selectedAlign = signal({ value: 'flex-start', label: 'Start' });
|
|
9115
|
+
this.selectedJustify = signal({ value: 'stretch', label: 'Stretch' });
|
|
9116
|
+
this.selectedAlign = signal({ value: 'stretch', label: 'Stretch' });
|
|
9053
9117
|
this.hoveredAlign = signal(null);
|
|
9054
9118
|
this.hoveredJustify = signal(null);
|
|
9055
|
-
this.clickedAlign = signal('
|
|
9056
|
-
this.clickedJustify = signal('
|
|
9119
|
+
this.clickedAlign = signal('stretch');
|
|
9120
|
+
this.clickedJustify = signal('stretch');
|
|
9121
|
+
this.columns = signal(6);
|
|
9122
|
+
this.items = signal(1);
|
|
9057
9123
|
this.justifyDataSource = new AXDataSource({
|
|
9058
9124
|
pageSize: 99,
|
|
9059
9125
|
load: async (e) => {
|
|
9060
9126
|
return {
|
|
9061
|
-
items:
|
|
9062
|
-
total:
|
|
9127
|
+
items: AXP_Grid_Box_Justify_Items_Options,
|
|
9128
|
+
total: AXP_Grid_Box_Justify_Items_Options.length,
|
|
9063
9129
|
};
|
|
9064
9130
|
},
|
|
9065
9131
|
});
|
|
@@ -9067,150 +9133,67 @@ class AXPFlexOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9067
9133
|
pageSize: 99,
|
|
9068
9134
|
load: async (e) => {
|
|
9069
9135
|
return {
|
|
9070
|
-
items:
|
|
9071
|
-
total:
|
|
9136
|
+
items: AXP_Grid_Box_Align_Items_Options,
|
|
9137
|
+
total: AXP_Grid_Box_Align_Items_Options.length,
|
|
9072
9138
|
};
|
|
9073
9139
|
},
|
|
9074
9140
|
});
|
|
9075
9141
|
this.findAlignNameById = (value) => {
|
|
9076
|
-
const side =
|
|
9077
|
-
return side
|
|
9142
|
+
const side = AXP_Grid_Box_Align_Items_Options.find((side) => side.value === value);
|
|
9143
|
+
return side.label;
|
|
9078
9144
|
};
|
|
9079
9145
|
this.findJustifyNameById = (value) => {
|
|
9080
|
-
const side =
|
|
9081
|
-
return side
|
|
9146
|
+
const side = AXP_Grid_Box_Justify_Items_Options.find((side) => side.value === value);
|
|
9147
|
+
return side.label;
|
|
9082
9148
|
};
|
|
9083
|
-
this.#
|
|
9149
|
+
this.#initValues = afterNextRender(() => {
|
|
9084
9150
|
const value = this.getValue();
|
|
9085
|
-
|
|
9086
|
-
this.
|
|
9087
|
-
|
|
9088
|
-
|
|
9089
|
-
|
|
9090
|
-
this.
|
|
9091
|
-
const { values, unit } = AXPPropertyEditorHelper.parseGap(value?.gap ?? '0px');
|
|
9092
|
-
this.gapUnit.set(unit);
|
|
9093
|
-
if (values.x === values.y) {
|
|
9094
|
-
this.gapMode.set('both');
|
|
9095
|
-
this.setGap(values.x, 'both');
|
|
9096
|
-
}
|
|
9097
|
-
else {
|
|
9098
|
-
this.gapMode.set('single');
|
|
9099
|
-
this.setGap(values.x, 'x');
|
|
9100
|
-
this.setGap(values.y, 'y');
|
|
9101
|
-
}
|
|
9151
|
+
this.columns.set(value?.columns ?? 1);
|
|
9152
|
+
this.items.set(value?.itemsCount ?? 1);
|
|
9153
|
+
});
|
|
9154
|
+
//eff = effect(() => console.log(this.getValue()));
|
|
9155
|
+
this.#firstInitialize = afterNextRender(() => {
|
|
9156
|
+
this.initialValues();
|
|
9102
9157
|
this.rendered.set(true);
|
|
9103
9158
|
});
|
|
9159
|
+
this.#trackChange = effect(() => {
|
|
9160
|
+
this.getValue();
|
|
9161
|
+
untracked(() => this.initialValues());
|
|
9162
|
+
});
|
|
9104
9163
|
}
|
|
9105
|
-
|
|
9106
|
-
|
|
9107
|
-
|
|
9108
|
-
}
|
|
9109
|
-
setGapMode() {
|
|
9110
|
-
if (this.gapMode() === 'single') {
|
|
9111
|
-
this.gapMode.set('both');
|
|
9112
|
-
// this.gap.set({ ...this.gap(), both: this.lastGap() });
|
|
9113
|
-
this.setGap(this.lastGap(), 'both');
|
|
9114
|
-
}
|
|
9115
|
-
else {
|
|
9116
|
-
this.gapMode.set('single');
|
|
9117
|
-
// this.gap.set({ ...this.gap(), x: this.lastGap(), y: this.lastGap() });
|
|
9118
|
-
this.setGap(this.lastGap(), 'x');
|
|
9119
|
-
this.setGap(this.lastGap(), 'y');
|
|
9120
|
-
}
|
|
9121
|
-
}
|
|
9122
|
-
setFlexDirection(type) {
|
|
9123
|
-
this.flexDirection.set(type);
|
|
9124
|
-
this.saveValue({ flexDirection: type });
|
|
9125
|
-
}
|
|
9126
|
-
setGap(size, side) {
|
|
9127
|
-
this.gap.set({ ...this.gap(), [side]: size });
|
|
9128
|
-
if (this.gapMode() === 'both') {
|
|
9129
|
-
const gap = this.gap().both + this.gapUnit();
|
|
9130
|
-
this.saveValue({ gap });
|
|
9131
|
-
}
|
|
9132
|
-
else {
|
|
9133
|
-
const gap = this.gap().x + this.gapUnit() + ' ' + this.gap().y + this.gapUnit();
|
|
9134
|
-
this.saveValue({ gap });
|
|
9135
|
-
}
|
|
9136
|
-
this.lastGap.set(size);
|
|
9137
|
-
}
|
|
9138
|
-
onClick(data) {
|
|
9139
|
-
// const directionAlign = this.flexDirectionIsReverse() === true ? 'flex-start' : 'flex-end';
|
|
9140
|
-
const directionAlign = 'flex-start';
|
|
9141
|
-
let calcAlign = this.calculateAlign(data.alignItems);
|
|
9142
|
-
let calcJustify = this.calculateJustify(data.justifyContent);
|
|
9143
|
-
if (this.flexDirectionIsColumn() &&
|
|
9144
|
-
(calcAlign === 'flex-end' || calcAlign === 'flex-start') &&
|
|
9145
|
-
(calcJustify === 'flex-end' || calcJustify === 'flex-start')) {
|
|
9146
|
-
[calcAlign, calcJustify] = [calcJustify, calcAlign];
|
|
9164
|
+
changeValue(event, type) {
|
|
9165
|
+
if (typeof event === 'number') {
|
|
9166
|
+
this.saveValue({ [type]: event });
|
|
9147
9167
|
}
|
|
9148
|
-
if (
|
|
9149
|
-
|
|
9150
|
-
return;
|
|
9151
|
-
}
|
|
9152
|
-
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9153
|
-
return;
|
|
9154
|
-
}
|
|
9155
|
-
this.clickedAlign.set(calcAlign);
|
|
9156
|
-
this.selectedAlign.set({ value: calcAlign, label: this.findAlignNameById(calcAlign) });
|
|
9168
|
+
else if (event.isUserInteraction) {
|
|
9169
|
+
this.saveValue({ [type]: event.value });
|
|
9157
9170
|
}
|
|
9158
|
-
|
|
9159
|
-
|
|
9160
|
-
|
|
9161
|
-
|
|
9162
|
-
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9163
|
-
return;
|
|
9164
|
-
}
|
|
9165
|
-
this.clickedAlign.set(calcAlign);
|
|
9166
|
-
this.selectedAlign.set({ value: calcAlign, label: this.findAlignNameById(calcAlign) });
|
|
9171
|
+
}
|
|
9172
|
+
onClick(data) {
|
|
9173
|
+
if (this.clickedAlign() === 'stretch' && this.clickedJustify() === 'stretch') {
|
|
9174
|
+
return;
|
|
9167
9175
|
}
|
|
9168
9176
|
else if (this.clickedAlign() === 'stretch') {
|
|
9169
|
-
this.clickedJustify.set(
|
|
9170
|
-
this.selectedJustify.set({ value:
|
|
9177
|
+
this.clickedJustify.set(data.justifyItems);
|
|
9178
|
+
this.selectedJustify.set({ value: data.justifyItems, label: this.findJustifyNameById(data.justifyItems) });
|
|
9179
|
+
this.saveValue({ justifyItems: data.justifyItems });
|
|
9171
9180
|
}
|
|
9172
|
-
else if (this.
|
|
9173
|
-
this.
|
|
9174
|
-
this.
|
|
9181
|
+
else if (this.clickedJustify() === 'stretch') {
|
|
9182
|
+
this.clickedAlign.set(data.alignItems);
|
|
9183
|
+
this.selectedAlign.set({ value: data.alignItems, label: this.findAlignNameById(data.alignItems) });
|
|
9184
|
+
this.saveValue({ alignItems: data.alignItems });
|
|
9175
9185
|
}
|
|
9176
9186
|
else {
|
|
9177
|
-
this.clickedAlign.set(
|
|
9178
|
-
this.clickedJustify.set(
|
|
9179
|
-
this.
|
|
9180
|
-
this.
|
|
9187
|
+
this.clickedAlign.set(data.alignItems);
|
|
9188
|
+
this.clickedJustify.set(data.justifyItems);
|
|
9189
|
+
this.selectedAlign.set({ value: data.alignItems, label: this.findAlignNameById(data.alignItems) });
|
|
9190
|
+
this.selectedJustify.set({ value: data.justifyItems, label: this.findJustifyNameById(data.justifyItems) });
|
|
9191
|
+
this.saveValue({ alignItems: data.alignItems, justifyItems: data.justifyItems });
|
|
9181
9192
|
}
|
|
9182
|
-
this.saveValue({ alignItems: this.clickedAlign(), justifyContent: this.clickedJustify() });
|
|
9183
9193
|
}
|
|
9184
9194
|
onHover(data) {
|
|
9185
|
-
|
|
9186
|
-
|
|
9187
|
-
let calcAlign = this.calculateAlign(data.alignItems);
|
|
9188
|
-
let calcJustify = this.calculateJustify(data.justifyContent);
|
|
9189
|
-
if (this.flexDirectionIsColumn() &&
|
|
9190
|
-
(calcAlign === 'flex-end' || calcAlign === 'flex-start') &&
|
|
9191
|
-
(calcJustify === 'flex-end' || calcJustify === 'flex-start')) {
|
|
9192
|
-
[calcAlign, calcJustify] = [calcJustify, calcAlign];
|
|
9193
|
-
}
|
|
9194
|
-
if (this.clickedJustify() === 'space-between') {
|
|
9195
|
-
this.hoveredAlign.set(calcAlign);
|
|
9196
|
-
this.hoveredJustify.set('space-between');
|
|
9197
|
-
}
|
|
9198
|
-
else if (this.clickedJustify() === 'space-around') {
|
|
9199
|
-
this.hoveredAlign.set(calcAlign);
|
|
9200
|
-
this.hoveredJustify.set('space-around');
|
|
9201
|
-
}
|
|
9202
|
-
else if (this.clickedAlign() === 'stretch') {
|
|
9203
|
-
this.hoveredAlign.set('stretch');
|
|
9204
|
-
this.hoveredJustify.set(calcJustify);
|
|
9205
|
-
}
|
|
9206
|
-
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9207
|
-
this.hoveredAlign.set('baseline');
|
|
9208
|
-
this.hoveredJustify.set(calcJustify);
|
|
9209
|
-
}
|
|
9210
|
-
else {
|
|
9211
|
-
this.hoveredAlign.set(calcAlign);
|
|
9212
|
-
this.hoveredJustify.set(calcJustify);
|
|
9213
|
-
}
|
|
9195
|
+
this.hoveredAlign.set(data.alignItems);
|
|
9196
|
+
this.hoveredJustify.set(data.justifyItems);
|
|
9214
9197
|
}
|
|
9215
9198
|
onHoverLeave() {
|
|
9216
9199
|
this.hoveredAlign.set(null);
|
|
@@ -9218,10 +9201,10 @@ class AXPFlexOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9218
9201
|
}
|
|
9219
9202
|
onJustifyChange(event) {
|
|
9220
9203
|
if (event.isUserInteraction) {
|
|
9221
|
-
this.selectedJustify.set({ value: event.value, label: this.
|
|
9204
|
+
this.selectedJustify.set({ value: event.value, label: this.findJustifyNameById(event.value) });
|
|
9222
9205
|
this.clickedJustify.set(event.value);
|
|
9223
9206
|
}
|
|
9224
|
-
this.saveValue({
|
|
9207
|
+
this.saveValue({ justifyItems: this.clickedJustify() });
|
|
9225
9208
|
}
|
|
9226
9209
|
onAlignChange(event) {
|
|
9227
9210
|
if (event.isUserInteraction) {
|
|
@@ -9230,144 +9213,356 @@ class AXPFlexOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9230
9213
|
}
|
|
9231
9214
|
this.saveValue({ alignItems: this.clickedAlign() });
|
|
9232
9215
|
}
|
|
9233
|
-
|
|
9234
|
-
|
|
9235
|
-
|
|
9236
|
-
|
|
9216
|
+
saveValue(item) {
|
|
9217
|
+
const value = this.getValue();
|
|
9218
|
+
const newValue = {
|
|
9219
|
+
...value,
|
|
9220
|
+
...item,
|
|
9221
|
+
};
|
|
9222
|
+
this.setValue(newValue);
|
|
9223
|
+
}
|
|
9224
|
+
#initValues;
|
|
9225
|
+
//eff = effect(() => console.log(this.getValue()));
|
|
9226
|
+
#firstInitialize;
|
|
9227
|
+
#trackChange;
|
|
9228
|
+
initialValues() {
|
|
9229
|
+
const value = this.getValue();
|
|
9230
|
+
const justify = value?.justifyItems ?? 'stretch';
|
|
9231
|
+
const align = value?.alignItems ?? 'stretch';
|
|
9232
|
+
const col = value?.columns ?? 6;
|
|
9233
|
+
const items = value?.itemsCount ?? 1;
|
|
9234
|
+
this.changeValue(col, 'columns');
|
|
9235
|
+
this.changeValue(items, 'itemsCount');
|
|
9236
|
+
this.clickedJustify.set(justify);
|
|
9237
|
+
this.clickedAlign.set(align);
|
|
9238
|
+
this.selectedJustify.set({ value: justify, label: this.findJustifyNameById(justify) });
|
|
9239
|
+
this.selectedAlign.set({ value: align, label: this.findAlignNameById(align) });
|
|
9240
|
+
}
|
|
9241
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAdvancedGridOptionsWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9242
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPAdvancedGridOptionsWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"axp-advanced-grid ax-w-11/12\">\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-x-3 ax-items-center ax-pb-2\">\n <span>Columns</span>\n <span>Items</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"columns()\"\n (onValueChanged)=\"changeValue($event, 'columns')\"\n ></ax-number-box>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"99\"\n [value]=\"items()\"\n (onValueChanged)=\"changeValue($event, 'itemsCount')\"\n ></ax-number-box>\n </div>\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of gridSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n @if(hoveredJustify() && hoveredAlign()){\n <div\n class=\"axp-grid-option-hover ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {} @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"stroke-opacity: 0.25; fill-opacity: 0.07\"\n class=\"hover:fill-opacity-20\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n }\n\n <div\n class=\"axp-grid-option-active ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {\n <svg\n width=\"60\"\n height=\"60\"\n viewBox=\"0 0 60 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M55.5 55.48a.02.02 0 0 1-.02.02H4.52a.02.02 0 0 1-.02-.02V4.52a.02.02 0 0 1 .02-.02h50.96a.02.02 0 0 1 .02.02v50.96Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n <path\n d=\"m26.354 20.354 3.146-3.147V29.5h-3v1h3v12.293l-3.146-3.147-.707.708L30 44.707l4.354-4.353-.707-.708-3.147 3.147V30.5h12.293l-3.147 3.147.708.707L44.707 30l-4.353-4.354-.708.708 3.147 3.146H30.5V17.207l3.146 3.147.707-.707L30 15.293l-4.354 4.354.707.707Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n <path\n d=\"m17.207 30.5 3.146 3.147-.707.707L15.293 30l4.353-4.354.707.708-3.146 3.146H26.5v1h-9.293Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill: #cebcbc; fill-opacity: 0.16\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span>X:</span>\n <div class=\"ax-w-36\">\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [value]=\"selectedJustify()\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span>Y:</span>\n <div class=\"ax-w-36\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [value]=\"selectedAlign()\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9243
|
+
}
|
|
9244
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAdvancedGridOptionsWidgetEditComponent, decorators: [{
|
|
9245
|
+
type: Component,
|
|
9246
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXDecoratorModule, AXButtonModule, AXNumberBoxModule, FormsModule, AXLabelModule, AXSelectBoxModule], template: "<div class=\"axp-advanced-grid ax-w-11/12\">\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-x-3 ax-items-center ax-pb-2\">\n <span>Columns</span>\n <span>Items</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"columns()\"\n (onValueChanged)=\"changeValue($event, 'columns')\"\n ></ax-number-box>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"99\"\n [value]=\"items()\"\n (onValueChanged)=\"changeValue($event, 'itemsCount')\"\n ></ax-number-box>\n </div>\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of gridSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n @if(hoveredJustify() && hoveredAlign()){\n <div\n class=\"axp-grid-option-hover ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {} @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"stroke-opacity: 0.25; fill-opacity: 0.07\"\n class=\"hover:fill-opacity-20\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n }\n\n <div\n class=\"axp-grid-option-active ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {\n <svg\n width=\"60\"\n height=\"60\"\n viewBox=\"0 0 60 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M55.5 55.48a.02.02 0 0 1-.02.02H4.52a.02.02 0 0 1-.02-.02V4.52a.02.02 0 0 1 .02-.02h50.96a.02.02 0 0 1 .02.02v50.96Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n <path\n d=\"m26.354 20.354 3.146-3.147V29.5h-3v1h3v12.293l-3.146-3.147-.707.708L30 44.707l4.354-4.353-.707-.708-3.147 3.147V30.5h12.293l-3.147 3.147.708.707L44.707 30l-4.353-4.354-.708.708 3.147 3.146H30.5V17.207l3.146 3.147.707-.707L30 15.293l-4.354 4.354.707.707Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n <path\n d=\"m17.207 30.5 3.146 3.147-.707.707L15.293 30l4.353-4.354.707.708-3.146 3.146H26.5v1h-9.293Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill: #cebcbc; fill-opacity: 0.16\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span>X:</span>\n <div class=\"ax-w-36\">\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [value]=\"selectedJustify()\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span>Y:</span>\n <div class=\"ax-w-36\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [value]=\"selectedAlign()\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
9247
|
+
}] });
|
|
9248
|
+
|
|
9249
|
+
var advancedGridOptionsWidgetEditor_component = /*#__PURE__*/Object.freeze({
|
|
9250
|
+
__proto__: null,
|
|
9251
|
+
AXPAdvancedGridOptionsWidgetEditComponent: AXPAdvancedGridOptionsWidgetEditComponent
|
|
9252
|
+
});
|
|
9253
|
+
|
|
9254
|
+
const AXPAdvancedGridOptionsWidget = {
|
|
9255
|
+
name: 'advanced-grid-options',
|
|
9256
|
+
title: 'Advanced Grid Options',
|
|
9257
|
+
description: 'options of Advanced Grid',
|
|
9258
|
+
group: AXP_WIDGETS_EDITOR_GROUP,
|
|
9259
|
+
icon: 'fa-solid fa-th',
|
|
9260
|
+
type: 'editor',
|
|
9261
|
+
properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY],
|
|
9262
|
+
components: {
|
|
9263
|
+
edit: {
|
|
9264
|
+
component: () => Promise.resolve().then(function () { return advancedGridOptionsWidgetEditor_component; }).then((c) => c.AXPAdvancedGridOptionsWidgetEditComponent),
|
|
9265
|
+
},
|
|
9266
|
+
},
|
|
9267
|
+
visible: false,
|
|
9268
|
+
};
|
|
9269
|
+
|
|
9270
|
+
// export * from './advanced-grid-options-widget.type';
|
|
9271
|
+
|
|
9272
|
+
class AXPBorderWidgetEditComponent extends AXPWidgetComponent {
|
|
9273
|
+
constructor() {
|
|
9274
|
+
super(...arguments);
|
|
9275
|
+
this.el = inject(ElementRef);
|
|
9276
|
+
this.allwidth = signal(0);
|
|
9277
|
+
this.allcolor = signal('rgba(0, 0, 0, 1)');
|
|
9278
|
+
this.allstyle = signal('none');
|
|
9279
|
+
this.allRadius = signal(0);
|
|
9280
|
+
this.units = signal(AXP_default_Border_Box_Units);
|
|
9281
|
+
this.lastRadius = signal(null);
|
|
9282
|
+
this.rendered = signal(false);
|
|
9283
|
+
this.currentActiveSide = signal('all');
|
|
9284
|
+
this.currentActiveRadiusSide = signal('all');
|
|
9285
|
+
this.allBorderEl = viewChild('allBorderEl');
|
|
9286
|
+
this.allRadiusEl = viewChild('allRadiusEl');
|
|
9287
|
+
this.calculatedValues = signal(AXP_default_Border_Box_Value);
|
|
9288
|
+
this.shownWidth = computed(() => this.currentActiveSide() === 'all'
|
|
9289
|
+
? this.allwidth()
|
|
9290
|
+
: this.calculatedValues().width[this.currentActiveSide()]);
|
|
9291
|
+
// protected shownRadius = computed(() => {
|
|
9292
|
+
// return this.currentActiveRadiusSide() === 'all'
|
|
9293
|
+
// ? this.allRadius()
|
|
9294
|
+
// : (this.calculatedValues().radius[this.currentActiveRadiusSide() as AXPPropertyEditorCornerValues] as number);
|
|
9295
|
+
// });
|
|
9296
|
+
this.shownColor = computed(() => this.currentActiveSide() === 'all'
|
|
9297
|
+
? this.allcolor()
|
|
9298
|
+
: this.calculatedValues().color[this.currentActiveSide()]);
|
|
9299
|
+
this.shownStyle = computed(() => this.currentActiveSide() === 'all'
|
|
9300
|
+
? this.allstyle()
|
|
9301
|
+
: this.calculatedValues().style[this.currentActiveSide()]);
|
|
9302
|
+
this.afterRender = afterNextRender(() => {
|
|
9303
|
+
if (this.getValue()) {
|
|
9304
|
+
this.calculatedValues.set(AXPPropertyEditorHelper.parseBorderBox(this.getValue()));
|
|
9237
9305
|
}
|
|
9238
|
-
|
|
9239
|
-
|
|
9306
|
+
this.initializeBorder();
|
|
9307
|
+
this.initializeRadius();
|
|
9308
|
+
this.rendered.set(true);
|
|
9309
|
+
});
|
|
9310
|
+
}
|
|
9311
|
+
setBorder(value, type, side) {
|
|
9312
|
+
if (!this.rendered()) {
|
|
9313
|
+
return;
|
|
9314
|
+
}
|
|
9315
|
+
const currentValue = this.calculatedValues();
|
|
9316
|
+
if (type === 'radius') {
|
|
9317
|
+
this.lastRadius.set(value);
|
|
9318
|
+
}
|
|
9319
|
+
if (side === 'all') {
|
|
9320
|
+
this.updateAllValues(type, value);
|
|
9321
|
+
this.calculatedValues.set({
|
|
9322
|
+
...currentValue,
|
|
9323
|
+
[type]: this.getUpdatedAllValues(type, value),
|
|
9324
|
+
});
|
|
9325
|
+
}
|
|
9326
|
+
else {
|
|
9327
|
+
this.calculatedValues.set({
|
|
9328
|
+
...currentValue,
|
|
9329
|
+
[type]: { ...currentValue[type], [side]: value },
|
|
9330
|
+
});
|
|
9331
|
+
}
|
|
9332
|
+
const data = AXPPropertyEditorHelper.parseBorderBoxReverse(this.calculatedValues(), this.units());
|
|
9333
|
+
this.setValue(data);
|
|
9334
|
+
}
|
|
9335
|
+
updateAllValues(type, value) {
|
|
9336
|
+
if (type === 'width')
|
|
9337
|
+
this.allwidth.set(value);
|
|
9338
|
+
if (type === 'color')
|
|
9339
|
+
this.allcolor.set(value);
|
|
9340
|
+
if (type === 'radius')
|
|
9341
|
+
this.allRadius.set(value);
|
|
9342
|
+
if (type === 'style')
|
|
9343
|
+
this.allstyle.set(value);
|
|
9344
|
+
}
|
|
9345
|
+
getUpdatedAllValues(type, value) {
|
|
9346
|
+
return type === 'radius'
|
|
9347
|
+
? { 'top-left': value, 'top-right': value, 'bottom-left': value, 'bottom-right': value }
|
|
9348
|
+
: { top: value, left: value, bottom: value, right: value };
|
|
9349
|
+
}
|
|
9350
|
+
handleActiveBorderSide(event) {
|
|
9351
|
+
event.stopPropagation();
|
|
9352
|
+
if (this.currentActiveBorderEl) {
|
|
9353
|
+
this.currentActiveBorderEl.style.backgroundColor = 'transparent';
|
|
9354
|
+
}
|
|
9355
|
+
this.currentActiveBorderEl = event.currentTarget;
|
|
9356
|
+
const newActiveSide = this.currentActiveBorderEl.name;
|
|
9357
|
+
const previousActiveSide = this.currentActiveSide();
|
|
9358
|
+
if (newActiveSide === 'all' && previousActiveSide !== 'all') {
|
|
9359
|
+
const lastValues = this.calculatedValues();
|
|
9360
|
+
const lastUnits = this.units();
|
|
9361
|
+
const lastWidth = lastValues.width[previousActiveSide];
|
|
9362
|
+
const lastColor = lastValues.color[previousActiveSide];
|
|
9363
|
+
const lastStyle = lastValues.style[previousActiveSide];
|
|
9364
|
+
const lastRadiusObject = lastValues.radius;
|
|
9365
|
+
const lastWidthUnit = lastUnits.width[previousActiveSide];
|
|
9366
|
+
const lastColorUnit = lastUnits.color[previousActiveSide];
|
|
9367
|
+
const lastStyleUnit = lastUnits.style[previousActiveSide];
|
|
9368
|
+
const lastRadiusObjectUnit = lastUnits.radius;
|
|
9369
|
+
this.allwidth.set(lastWidth);
|
|
9370
|
+
this.allcolor.set(lastColor);
|
|
9371
|
+
this.allstyle.set(lastStyle);
|
|
9372
|
+
this.units.set({
|
|
9373
|
+
width: this.createUniformValues(lastWidthUnit),
|
|
9374
|
+
color: this.createUniformValues(lastColorUnit),
|
|
9375
|
+
style: this.createUniformValues(lastStyleUnit),
|
|
9376
|
+
radius: lastRadiusObjectUnit,
|
|
9377
|
+
});
|
|
9378
|
+
this.calculatedValues.set({
|
|
9379
|
+
width: this.createUniformValues(lastWidth),
|
|
9380
|
+
color: this.createUniformValues(lastColor),
|
|
9381
|
+
style: this.createUniformValues(lastStyle),
|
|
9382
|
+
radius: lastRadiusObject,
|
|
9383
|
+
});
|
|
9384
|
+
const data = AXPPropertyEditorHelper.parseBorderBoxReverse(this.calculatedValues(), this.units());
|
|
9385
|
+
this.setValue(data);
|
|
9386
|
+
}
|
|
9387
|
+
this.currentActiveSide.set(newActiveSide);
|
|
9388
|
+
this.currentActiveBorderEl.style.backgroundColor = 'var(--focus-color)';
|
|
9389
|
+
}
|
|
9390
|
+
handleActiveRadiusSide(event) {
|
|
9391
|
+
event.stopPropagation();
|
|
9392
|
+
if (this.currentActiveRadiusEl) {
|
|
9393
|
+
this.currentActiveRadiusEl.style.backgroundColor = 'transparent';
|
|
9394
|
+
}
|
|
9395
|
+
this.currentActiveRadiusEl = event.currentTarget;
|
|
9396
|
+
const newActiveRadiusSide = this.currentActiveRadiusEl.name;
|
|
9397
|
+
if (newActiveRadiusSide === 'all' && this.lastRadius() !== null) {
|
|
9398
|
+
this.calculatedValues.update((old) => ({
|
|
9399
|
+
...old,
|
|
9400
|
+
radius: {
|
|
9401
|
+
'bottom-left': this.lastRadius(),
|
|
9402
|
+
'bottom-right': this.lastRadius(),
|
|
9403
|
+
'top-left': this.lastRadius(),
|
|
9404
|
+
'top-right': this.lastRadius(),
|
|
9405
|
+
},
|
|
9406
|
+
}));
|
|
9407
|
+
this.allRadius.set(this.lastRadius());
|
|
9408
|
+
const data = AXPPropertyEditorHelper.parseBorderBoxReverse(this.calculatedValues(), this.units());
|
|
9409
|
+
this.setValue(data);
|
|
9410
|
+
}
|
|
9411
|
+
this.currentActiveRadiusSide.set(newActiveRadiusSide);
|
|
9412
|
+
this.currentActiveRadiusEl.style.backgroundColor = 'var(--focus-color)';
|
|
9413
|
+
}
|
|
9414
|
+
initializeBorder() {
|
|
9415
|
+
const widthValue = this.calculatedValues().width;
|
|
9416
|
+
const widthColor = this.calculatedValues().color;
|
|
9417
|
+
const widthStyle = this.calculatedValues().style;
|
|
9418
|
+
const [firstWidthValue, ...restWidthValues] = Object.values(widthValue);
|
|
9419
|
+
const [firstColorValue, ...restColorValues] = Object.values(widthColor);
|
|
9420
|
+
const [firstStyleValue, ...restStyleValues] = Object.values(widthStyle);
|
|
9421
|
+
if (restWidthValues.every((value) => value === firstWidthValue) &&
|
|
9422
|
+
restColorValues.every((value) => value === firstColorValue) &&
|
|
9423
|
+
restStyleValues.every((value) => value === firstStyleValue)) {
|
|
9424
|
+
this.allcolor.set(firstColorValue);
|
|
9425
|
+
this.allstyle.set(firstStyleValue);
|
|
9426
|
+
this.allwidth.set(firstWidthValue);
|
|
9427
|
+
this.currentActiveSide.set('all');
|
|
9428
|
+
this.currentActiveBorderEl = this.allBorderEl()?.nativeElement;
|
|
9429
|
+
if (this.currentActiveBorderEl) {
|
|
9430
|
+
this.currentActiveBorderEl.style.backgroundColor = 'var(--focus-color)';
|
|
9240
9431
|
}
|
|
9241
|
-
|
|
9242
|
-
|
|
9432
|
+
}
|
|
9433
|
+
else {
|
|
9434
|
+
const sides = ['top', 'right', 'bottom', 'left'];
|
|
9435
|
+
for (const side of sides) {
|
|
9436
|
+
if (widthValue[side]) {
|
|
9437
|
+
this.currentActiveSide.set(side);
|
|
9438
|
+
const element = this.el.nativeElement.querySelector(`button[name="${side}"]`);
|
|
9439
|
+
if (element) {
|
|
9440
|
+
this.currentActiveBorderEl = element;
|
|
9441
|
+
element.style.backgroundColor = 'var(--focus-color)';
|
|
9442
|
+
}
|
|
9443
|
+
break;
|
|
9444
|
+
}
|
|
9243
9445
|
}
|
|
9244
9446
|
}
|
|
9245
|
-
return value;
|
|
9246
9447
|
}
|
|
9247
|
-
|
|
9248
|
-
|
|
9249
|
-
|
|
9250
|
-
|
|
9251
|
-
|
|
9252
|
-
|
|
9253
|
-
|
|
9448
|
+
initializeRadius() {
|
|
9449
|
+
const values = this.calculatedValues().radius;
|
|
9450
|
+
const [firstValue, ...restValues] = Object.values(values);
|
|
9451
|
+
if (restValues.every((value) => value === firstValue)) {
|
|
9452
|
+
this.currentActiveRadiusSide.set('all');
|
|
9453
|
+
this.currentActiveRadiusEl = this.allRadiusEl()?.nativeElement;
|
|
9454
|
+
if (this.currentActiveRadiusEl) {
|
|
9455
|
+
this.currentActiveRadiusEl.style.backgroundColor = 'var(--focus-color)';
|
|
9456
|
+
this.allRadius.set(firstValue);
|
|
9254
9457
|
}
|
|
9255
|
-
|
|
9256
|
-
|
|
9458
|
+
}
|
|
9459
|
+
else {
|
|
9460
|
+
const element = this.el.nativeElement.querySelector(`button[name="sides"]`);
|
|
9461
|
+
if (element) {
|
|
9462
|
+
this.currentActiveRadiusSide.set('sides');
|
|
9463
|
+
this.currentActiveRadiusEl = element;
|
|
9464
|
+
element.style.backgroundColor = 'var(--focus-color)';
|
|
9257
9465
|
}
|
|
9258
9466
|
}
|
|
9259
|
-
return value;
|
|
9260
9467
|
}
|
|
9261
|
-
|
|
9262
|
-
|
|
9468
|
+
createUniformValues(value) {
|
|
9469
|
+
return {
|
|
9470
|
+
top: value,
|
|
9471
|
+
right: value,
|
|
9472
|
+
bottom: value,
|
|
9473
|
+
left: value,
|
|
9474
|
+
};
|
|
9263
9475
|
}
|
|
9264
|
-
|
|
9265
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFlexOptionsWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9266
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPFlexOptionsWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"axp-flex-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span>Direction</span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item (onClick)=\"setFlexDirection('row')\" [selected]=\"flexDirection() === 'row'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('row-reverse')\" [selected]=\"flexDirection() === 'row-reverse'\"\n ><ax-prefix\n ><svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"transform: rotate(180deg)\"\n >\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('column')\" [selected]=\"flexDirection() === 'column'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M8.00001 12.2929L4.85356 9.14645L4.14645 9.85355L8.50001 14.2071L12.8536 9.85355L12.1465 9.14645L9.00001 12.2929L9.00001 3H8.00001L8.00001 12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setFlexDirection('column-reverse')\"\n [selected]=\"flexDirection() === 'column-reverse'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M9.00004 3.70721L12.1465 6.85363L12.8536 6.14652L8.50001 1.79297L4.14645 6.14652L4.85356 6.85363L8.00004 3.70715L8.00004 13.0001H9.00004L9.00004 3.70721Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item color=\"primary\">\n <ax-dropdown-panel>\n <ax-button-item-list>\n <ax-button-item text=\"Wrap\" (click)=\"setWrapMode('wrap')\" [class]=\"\" >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-bars\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item text=\"No Wrap\" (click)=\"setWrapMode('nowrap')\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-minus\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n <ax-suffix>\n <ax-icon icon=\"fa-solid fa-chevron-down\"></ax-icon>\n </ax-suffix>\n </ax-button-group-item>\n </ax-button-group>\n </div>\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of flexSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\" [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(hoveredJustify()==='space-between'){ @if(clickedAlign()==='stretch'){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredJustify()==='space-around'){ @if(clickedAlign()==='stretch' ){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }@else if (hoveredAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if(hoveredAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\"\n [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(clickedJustify()==='space-between'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11 53.5C11 53.7761 10.7761 54 10.5 54H9.5C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6H10.5C10.7761 6 11 6.22386 11 6.5L11 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM50.5 54C50.7761 54 51 53.7761 51 53.5L51 6.5C51 6.22386 50.7761 6 50.5 6H49.5C49.2239 6 49 6.22386 49 6.5L49 53.5C49 53.7761 49.2239 54 49.5 54H50.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='baseline'){\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M50.5996 4V10.2929L52.246 8.64645L52.9531 9.35355L50.0996 12.2071L47.246 9.35355L47.9531 8.64645L49.5996 10.2929V4H50.5996Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9.35294 4H11.1012L13.4542 12H12.4119L11.8236 9.99994H8.63061L8.04236 12H7L9.35294 4ZM11.5295 8.99994L10.353 4.9999H10.1012L8.92473 8.99994H11.5295Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else{\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedJustify()==='space-around'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8 30L5 32L5 28L8 30Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 53.5C13 53.7761 12.7761 54 12.5 54H11.5C11.2239 54 11 53.7761 11 53.5L11 6.5C11 6.22386 11.2239 6 11.5 6H12.5C12.7761 6 13 6.22386 13 6.5L13 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM48.5 54C48.7761 54 49 53.7761 49 53.5L49 6.5C49 6.22386 48.7761 6 48.5 6H47.5C47.2239 6 47 6.22386 47 6.5L47 53.5C47 53.7761 47.2239 54 47.5 54H48.5Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M52 30L55 28L55 32L52 30Z\" fill=\"currentColor\"></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg\n data-wf-icon=\"NineBoxAlignItemsRowSpaceAroundBaselineIcon\"\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M40.8529 4V10.2929L42.4993 8.64645L43.2064 9.35355L40.3529 12.2071L37.4993 9.35355L38.2064 8.64645L39.8529 10.2929V4H40.8529Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M19.3523 4H21.1006L23.4536 12H22.4112L21.8229 9.99994H18.6299L18.0417 12H16.9993L19.3523 4ZM21.5288 8.99994L20.3523 4.9999H20.1005L18.924 8.99994H21.5288Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if (clickedAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span class=\"ax-order-1\">X:</span>\n <div class=\"ax-w-32\"\n [style.order]=\"flexDirectionIsColumn()?'4':'2'\">\n <!-- <ax-select-box\n [dataSource]=\"flexDirectionIsColumn()? alignDataSource : justifyDataSource\"\n [ngModel]=\"flexDirectionIsColumn()? selectedAlign : selectedJustify\"\n (ngModelChange)=\"flexDirectionIsColumn()? selectedAlign = $event : selectedJustify = $event\"\n (onValueChanged)=\"flexDirectionIsColumn()? onAlignChange($event) :onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box> -->\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [(ngModel)]=\"selectedJustify\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span class=\"ax-order-3\">Y:</span>\n <div class=\"ax-w-32\" [style.order]=\"flexDirectionIsColumn()?'2':'4'\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [(ngModel)]=\"selectedAlign\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='both') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [ngModel]=\"gap().both\"\n (ngModelChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().both\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'both')\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'x')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"setGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='both'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>", styles: [".axp-flex-option ax-range-slider{padding:.25rem!important}.axp-flex-option ax-range-slider .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-flex-option ax-button-group>ax-button-group-item{width:2.62rem}\n"], dependencies: [{ kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i4$2.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange"] }, { kind: "component", type: i4$2.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i3$6.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i6.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i5.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9476
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPBorderWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9477
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPBorderWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "allBorderEl", first: true, predicate: ["allBorderEl"], descendants: true, isSignal: true }, { propertyName: "allRadiusEl", first: true, predicate: ["allRadiusEl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-pt-2 axp-border-container\">\n <div class=\"ax-radius-box ax-flex ax-justify-between ax-items-center ax-gap-2 ax-h-[26px]\">\n <span class=\"ax-text-sm ax-font-light\">Radius</span>\n <div class=\"ax-flex ax-gap-2 ax-items-center\">\n <button\n #allRadiusEl\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M2.5 5.5C2.5 3.84315 3.84315 2.5 5.5 2.5H10.5C12.1569 2.5 13.5 3.84315 13.5 5.5V10.5C13.5 12.1569 12.1569 13.5 10.5 13.5H5.5C3.84315 13.5 2.5 12.1569 2.5 10.5V5.5Z\"\n stroke=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n <button\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"sides\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 2C3.11929 2 2 3.11929 2 4.5V7H3V4.5C3 3.67157 3.67157 3 4.5 3H7V2H4.5Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M9 2V3H11.5C12.3284 3 13 3.67157 13 4.5V7H14V4.5C14 3.11929 12.8807 2 11.5 2H9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M7 14V13H4.5C3.67157 13 3 12.3284 3 11.5V9H2V11.5C2 12.8807 3.11929 14 4.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n @if(currentActiveRadiusSide() ==='all'){\n <div class=\"ax-flex ax-justify-center ax-items-center ax-flex-shrink\">\n <ax-range-slider\n [values]=\"allRadius()\"\n [min]=\"0\"\n [max]=\"100\"\n (valuesChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-28\"\n ></ax-range-slider>\n </div>\n <div class=\"ax-flex ax-justify-start ax-items-center\">\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"100\"\n [value]=\"allRadius()\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-8\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }@else{\n <div class=\"ax-w-48\"></div>\n }\n </div>\n </div>\n\n <div\n class=\"axp-border-radius-sides ax-flex ax-justify-end ax-items-center ax-overflow-y-hidden ax-transition-[height] ax-duration-300 ax-ease-in-out\"\n [class]=\"currentActiveRadiusSide() === 'all' ? '!ax-h-0' : '!ax-h-[56px]'\"\n >\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-2\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M14 14V9H13V13H9V14H14Z\" fill=\"currentColor\"></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n <path d=\"M2 7H3V6.5C3 4.567 4.567 3 6.5 3H7V2H6.5C4.01472 2 2 4.01472 2 6.5V7Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M2.5 7V6.5C2.5 4.29086 4.29086 2.5 6.5 2.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 14V9H3V13H7V14H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 14V13H13V9H14V14H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 7H13V6.5C13 4.567 11.433 3 9.5 3H9V2H9.5C11.9853 2 14 4.01472 14 6.5V7Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 2V3H3V7H2V2H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 7V6.5C13.5 4.29086 11.7091 2.5 9.5 2.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path d=\"M14 9H13V13H9V14H14V9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M7 14V13H6.5C4.567 13 3 11.433 3 9.5V9H2V9.5C2 11.9853 4.01472 14 6.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </g>\n <path d=\"M2.5 9V9.5C2.5 11.7091 4.29086 13.5 6.5 13.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 9V9.5C13.5 11.7091 11.7091 13.5 9.5 13.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"ax-flex ax-justify-between ax-items-center ax-py-1\">\n <span class=\"ax-text-sm ax-font-light\">Borders</span>\n </div>\n\n <div class=\"ax-border-box ax-flex ax-justify-between ax-items-center ax-gap-4\">\n <div class=\"ax-grid ax-grid-cols-3 ax-grid-rows-3 ax-gap-1 ax-flex-shrink-0\">\n <!-- Top Border -->\n <div class=\"ax-border-box-top ax-col-start-2 ax-row-start-1\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"top\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 13C2 13.5523 2.44772 14 3 14H13C13.5523 14 14 13.5523 14 13V5H13V13H3V5H2V13Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 3H14V2H2V3Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Right Border -->\n <div class=\"ax-border-box-right ax-col-start-3 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"right\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 2C2.44772 2 2 2.44772 2 3L2 13C2 13.5523 2.44772 14 3 14L11 14L11 13L3 13L3 3L11 3L11 2L3 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 2L13 14L14 14L14 2L13 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Bottom Border -->\n <div class=\"ax-border-box-bottom ax-col-start-2 ax-row-start-3\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"bottom\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V11H13V3H3V11H2V3Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 13H14V14H2V13Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Left Border -->\n <div class=\"ax-border-box-left ax-col-start-1 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"left\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 2C13.5523 2 14 2.44772 14 3L14 13C14 13.5523 13.5523 14 13 14L5 14L5 13L13 13L13 3L5 3L5 2L13 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 2L3 14L2 14L2 2L3 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- All -->\n <div class=\"ax-border-box-all ax-col-start-2 ax-row-start-2\">\n <button\n #allBorderEl\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V13C14 13.5523 13.5523 14 13 14H3C2.44772 14 2 13.5523 2 13V3ZM13 3L3 3V13H13V3Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-gap-x-2 ax-gap-y-2\">\n <div class=\"ax-text-sm ax-font-light\">Style</div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item\n (onClick)=\"setBorder('none', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'none'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.70714 8.00004L12.3536 4.35359L11.6465 3.64648L8.00004 7.29293L4.35359 3.64648L3.64648 4.35359L7.29293 8.00004L3.64648 11.6465L4.35359 12.3536L8.00004 8.70714L11.6465 12.3536L12.3536 11.6465L8.70714 8.00004Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('solid', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'solid'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2 7.5H14\" stroke=\"currentColor\"></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dashed', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dashed'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7H2V8H5V7ZM11 8H12H14V7H12H11V8ZM9.5 7H6.5V8H9.5V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dotted', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dotted'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 7H3V8H4V7ZM6 7H5V8H6V7ZM7 7H8V8H7V7ZM10 7H9V8H10V7ZM11 7H12V8H11V7ZM14 7H13V8H14V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n <div class=\"ax-contents\" [class]=\"shownStyle() === 'none' ? 'ax-invisible' : 'ax-visible'\">\n <div class=\"ax-text-sm ax-font-light\">Width</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"shownWidth()\"\n (valueChange)=\"setBorder($event ?? 0, 'width', currentActiveSide())\"\n class=\"ax-min-w-8 ax-exclude\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text>PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n\n <div class=\"ax-text-sm ax-font-light\">Color</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36 ax-overflow-hidden\">\n <ax-color-box\n [value]=\"shownColor()\"\n (valueChange)=\"setBorder($event, 'color', currentActiveSide())\"\n ></ax-color-box>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".axp-border-container{--hover-effect: #404040;--focus-color: rgba(0, 106, 204, .18);--ax-range-slider-base-thickness: .15rem}.axp-border-container ax-range-slider{padding:.5rem!important}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child{height:1.5rem!important;border-radius:.25rem!important;font-size:12px}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-border-container ax-button-group ax-button-group-item{padding:.2rem .55rem!important}\n"], dependencies: [{ kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i7$1.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i1$7.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange"] }, { kind: "component", type: i1$7.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i2$6.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9267
9478
|
}
|
|
9268
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
9479
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPBorderWidgetEditComponent, decorators: [{
|
|
9269
9480
|
type: Component,
|
|
9270
9481
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
9271
|
-
AXButtonGroupModule,
|
|
9272
|
-
AXDecoratorModule,
|
|
9273
|
-
AXSelectBoxModule,
|
|
9274
|
-
AXRangeSliderModule,
|
|
9275
9482
|
AXNumberBoxModule,
|
|
9276
|
-
AXDropdownModule,
|
|
9277
|
-
AXButtonModule,
|
|
9278
9483
|
FormsModule,
|
|
9279
|
-
], template: "<div class=\"axp-flex-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span>Direction</span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item (onClick)=\"setFlexDirection('row')\" [selected]=\"flexDirection() === 'row'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('row-reverse')\" [selected]=\"flexDirection() === 'row-reverse'\"\n ><ax-prefix\n ><svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"transform: rotate(180deg)\"\n >\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('column')\" [selected]=\"flexDirection() === 'column'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M8.00001 12.2929L4.85356 9.14645L4.14645 9.85355L8.50001 14.2071L12.8536 9.85355L12.1465 9.14645L9.00001 12.2929L9.00001 3H8.00001L8.00001 12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setFlexDirection('column-reverse')\"\n [selected]=\"flexDirection() === 'column-reverse'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M9.00004 3.70721L12.1465 6.85363L12.8536 6.14652L8.50001 1.79297L4.14645 6.14652L4.85356 6.85363L8.00004 3.70715L8.00004 13.0001H9.00004L9.00004 3.70721Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item color=\"primary\">\n <ax-dropdown-panel>\n <ax-button-item-list>\n <ax-button-item text=\"Wrap\" (click)=\"setWrapMode('wrap')\" [class]=\"\" >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-bars\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item text=\"No Wrap\" (click)=\"setWrapMode('nowrap')\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-minus\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n <ax-suffix>\n <ax-icon icon=\"fa-solid fa-chevron-down\"></ax-icon>\n </ax-suffix>\n </ax-button-group-item>\n </ax-button-group>\n </div>\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of flexSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\" [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(hoveredJustify()==='space-between'){ @if(clickedAlign()==='stretch'){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredJustify()==='space-around'){ @if(clickedAlign()==='stretch' ){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }@else if (hoveredAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if(hoveredAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\"\n [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(clickedJustify()==='space-between'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11 53.5C11 53.7761 10.7761 54 10.5 54H9.5C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6H10.5C10.7761 6 11 6.22386 11 6.5L11 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM50.5 54C50.7761 54 51 53.7761 51 53.5L51 6.5C51 6.22386 50.7761 6 50.5 6H49.5C49.2239 6 49 6.22386 49 6.5L49 53.5C49 53.7761 49.2239 54 49.5 54H50.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='baseline'){\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M50.5996 4V10.2929L52.246 8.64645L52.9531 9.35355L50.0996 12.2071L47.246 9.35355L47.9531 8.64645L49.5996 10.2929V4H50.5996Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9.35294 4H11.1012L13.4542 12H12.4119L11.8236 9.99994H8.63061L8.04236 12H7L9.35294 4ZM11.5295 8.99994L10.353 4.9999H10.1012L8.92473 8.99994H11.5295Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else{\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedJustify()==='space-around'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8 30L5 32L5 28L8 30Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 53.5C13 53.7761 12.7761 54 12.5 54H11.5C11.2239 54 11 53.7761 11 53.5L11 6.5C11 6.22386 11.2239 6 11.5 6H12.5C12.7761 6 13 6.22386 13 6.5L13 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM48.5 54C48.7761 54 49 53.7761 49 53.5L49 6.5C49 6.22386 48.7761 6 48.5 6H47.5C47.2239 6 47 6.22386 47 6.5L47 53.5C47 53.7761 47.2239 54 47.5 54H48.5Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M52 30L55 28L55 32L52 30Z\" fill=\"currentColor\"></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg\n data-wf-icon=\"NineBoxAlignItemsRowSpaceAroundBaselineIcon\"\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M40.8529 4V10.2929L42.4993 8.64645L43.2064 9.35355L40.3529 12.2071L37.4993 9.35355L38.2064 8.64645L39.8529 10.2929V4H40.8529Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M19.3523 4H21.1006L23.4536 12H22.4112L21.8229 9.99994H18.6299L18.0417 12H16.9993L19.3523 4ZM21.5288 8.99994L20.3523 4.9999H20.1005L18.924 8.99994H21.5288Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if (clickedAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span class=\"ax-order-1\">X:</span>\n <div class=\"ax-w-32\"\n [style.order]=\"flexDirectionIsColumn()?'4':'2'\">\n <!-- <ax-select-box\n [dataSource]=\"flexDirectionIsColumn()? alignDataSource : justifyDataSource\"\n [ngModel]=\"flexDirectionIsColumn()? selectedAlign : selectedJustify\"\n (ngModelChange)=\"flexDirectionIsColumn()? selectedAlign = $event : selectedJustify = $event\"\n (onValueChanged)=\"flexDirectionIsColumn()? onAlignChange($event) :onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box> -->\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [(ngModel)]=\"selectedJustify\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span class=\"ax-order-3\">Y:</span>\n <div class=\"ax-w-32\" [style.order]=\"flexDirectionIsColumn()?'2':'4'\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [(ngModel)]=\"selectedAlign\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='both') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [ngModel]=\"gap().both\"\n (ngModelChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().both\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'both')\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'x')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"setGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='both'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>", styles: [".axp-flex-option ax-range-slider{padding:.25rem!important}.axp-flex-option ax-range-slider .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-flex-option ax-button-group>ax-button-group-item{width:2.62rem}\n"] }]
|
|
9484
|
+
AXCheckBoxModule,
|
|
9485
|
+
AXButtonModule,
|
|
9486
|
+
AXDecoratorModule,
|
|
9487
|
+
AXRangeSliderModule,
|
|
9488
|
+
AXButtonGroupModule,
|
|
9489
|
+
AXColorBoxModule,
|
|
9490
|
+
], template: "<div class=\"ax-pt-2 axp-border-container\">\n <div class=\"ax-radius-box ax-flex ax-justify-between ax-items-center ax-gap-2 ax-h-[26px]\">\n <span class=\"ax-text-sm ax-font-light\">Radius</span>\n <div class=\"ax-flex ax-gap-2 ax-items-center\">\n <button\n #allRadiusEl\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M2.5 5.5C2.5 3.84315 3.84315 2.5 5.5 2.5H10.5C12.1569 2.5 13.5 3.84315 13.5 5.5V10.5C13.5 12.1569 12.1569 13.5 10.5 13.5H5.5C3.84315 13.5 2.5 12.1569 2.5 10.5V5.5Z\"\n stroke=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n <button\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"sides\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 2C3.11929 2 2 3.11929 2 4.5V7H3V4.5C3 3.67157 3.67157 3 4.5 3H7V2H4.5Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M9 2V3H11.5C12.3284 3 13 3.67157 13 4.5V7H14V4.5C14 3.11929 12.8807 2 11.5 2H9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M7 14V13H4.5C3.67157 13 3 12.3284 3 11.5V9H2V11.5C2 12.8807 3.11929 14 4.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n @if(currentActiveRadiusSide() ==='all'){\n <div class=\"ax-flex ax-justify-center ax-items-center ax-flex-shrink\">\n <ax-range-slider\n [values]=\"allRadius()\"\n [min]=\"0\"\n [max]=\"100\"\n (valuesChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-28\"\n ></ax-range-slider>\n </div>\n <div class=\"ax-flex ax-justify-start ax-items-center\">\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"100\"\n [value]=\"allRadius()\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-8\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }@else{\n <div class=\"ax-w-48\"></div>\n }\n </div>\n </div>\n\n <div\n class=\"axp-border-radius-sides ax-flex ax-justify-end ax-items-center ax-overflow-y-hidden ax-transition-[height] ax-duration-300 ax-ease-in-out\"\n [class]=\"currentActiveRadiusSide() === 'all' ? '!ax-h-0' : '!ax-h-[56px]'\"\n >\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-2\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M14 14V9H13V13H9V14H14Z\" fill=\"currentColor\"></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n <path d=\"M2 7H3V6.5C3 4.567 4.567 3 6.5 3H7V2H6.5C4.01472 2 2 4.01472 2 6.5V7Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M2.5 7V6.5C2.5 4.29086 4.29086 2.5 6.5 2.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 14V9H3V13H7V14H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 14V13H13V9H14V14H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 7H13V6.5C13 4.567 11.433 3 9.5 3H9V2H9.5C11.9853 2 14 4.01472 14 6.5V7Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 2V3H3V7H2V2H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 7V6.5C13.5 4.29086 11.7091 2.5 9.5 2.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path d=\"M14 9H13V13H9V14H14V9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M7 14V13H6.5C4.567 13 3 11.433 3 9.5V9H2V9.5C2 11.9853 4.01472 14 6.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </g>\n <path d=\"M2.5 9V9.5C2.5 11.7091 4.29086 13.5 6.5 13.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 9V9.5C13.5 11.7091 11.7091 13.5 9.5 13.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"ax-flex ax-justify-between ax-items-center ax-py-1\">\n <span class=\"ax-text-sm ax-font-light\">Borders</span>\n </div>\n\n <div class=\"ax-border-box ax-flex ax-justify-between ax-items-center ax-gap-4\">\n <div class=\"ax-grid ax-grid-cols-3 ax-grid-rows-3 ax-gap-1 ax-flex-shrink-0\">\n <!-- Top Border -->\n <div class=\"ax-border-box-top ax-col-start-2 ax-row-start-1\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"top\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 13C2 13.5523 2.44772 14 3 14H13C13.5523 14 14 13.5523 14 13V5H13V13H3V5H2V13Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 3H14V2H2V3Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Right Border -->\n <div class=\"ax-border-box-right ax-col-start-3 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"right\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 2C2.44772 2 2 2.44772 2 3L2 13C2 13.5523 2.44772 14 3 14L11 14L11 13L3 13L3 3L11 3L11 2L3 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 2L13 14L14 14L14 2L13 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Bottom Border -->\n <div class=\"ax-border-box-bottom ax-col-start-2 ax-row-start-3\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"bottom\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V11H13V3H3V11H2V3Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 13H14V14H2V13Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Left Border -->\n <div class=\"ax-border-box-left ax-col-start-1 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"left\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 2C13.5523 2 14 2.44772 14 3L14 13C14 13.5523 13.5523 14 13 14L5 14L5 13L13 13L13 3L5 3L5 2L13 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 2L3 14L2 14L2 2L3 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- All -->\n <div class=\"ax-border-box-all ax-col-start-2 ax-row-start-2\">\n <button\n #allBorderEl\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V13C14 13.5523 13.5523 14 13 14H3C2.44772 14 2 13.5523 2 13V3ZM13 3L3 3V13H13V3Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-gap-x-2 ax-gap-y-2\">\n <div class=\"ax-text-sm ax-font-light\">Style</div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item\n (onClick)=\"setBorder('none', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'none'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.70714 8.00004L12.3536 4.35359L11.6465 3.64648L8.00004 7.29293L4.35359 3.64648L3.64648 4.35359L7.29293 8.00004L3.64648 11.6465L4.35359 12.3536L8.00004 8.70714L11.6465 12.3536L12.3536 11.6465L8.70714 8.00004Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('solid', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'solid'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2 7.5H14\" stroke=\"currentColor\"></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dashed', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dashed'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7H2V8H5V7ZM11 8H12H14V7H12H11V8ZM9.5 7H6.5V8H9.5V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dotted', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dotted'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 7H3V8H4V7ZM6 7H5V8H6V7ZM7 7H8V8H7V7ZM10 7H9V8H10V7ZM11 7H12V8H11V7ZM14 7H13V8H14V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n <div class=\"ax-contents\" [class]=\"shownStyle() === 'none' ? 'ax-invisible' : 'ax-visible'\">\n <div class=\"ax-text-sm ax-font-light\">Width</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"shownWidth()\"\n (valueChange)=\"setBorder($event ?? 0, 'width', currentActiveSide())\"\n class=\"ax-min-w-8 ax-exclude\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text>PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n\n <div class=\"ax-text-sm ax-font-light\">Color</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36 ax-overflow-hidden\">\n <ax-color-box\n [value]=\"shownColor()\"\n (valueChange)=\"setBorder($event, 'color', currentActiveSide())\"\n ></ax-color-box>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".axp-border-container{--hover-effect: #404040;--focus-color: rgba(0, 106, 204, .18);--ax-range-slider-base-thickness: .15rem}.axp-border-container ax-range-slider{padding:.5rem!important}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child{height:1.5rem!important;border-radius:.25rem!important;font-size:12px}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-border-container ax-button-group ax-button-group-item{padding:.2rem .55rem!important}\n"] }]
|
|
9280
9491
|
}] });
|
|
9281
9492
|
|
|
9282
|
-
var
|
|
9493
|
+
var borderWidgetEditor_component = /*#__PURE__*/Object.freeze({
|
|
9283
9494
|
__proto__: null,
|
|
9284
|
-
|
|
9495
|
+
AXPBorderWidgetEditComponent: AXPBorderWidgetEditComponent
|
|
9285
9496
|
});
|
|
9286
9497
|
|
|
9287
|
-
const
|
|
9288
|
-
name: '
|
|
9289
|
-
title: '
|
|
9290
|
-
description: '
|
|
9498
|
+
const AXPBorderWidget = {
|
|
9499
|
+
name: 'border',
|
|
9500
|
+
title: 'Box Border',
|
|
9501
|
+
description: 'Editing Elements Border',
|
|
9291
9502
|
group: AXP_WIDGETS_EDITOR_GROUP,
|
|
9292
|
-
icon: 'fa-solid fa-
|
|
9503
|
+
icon: 'fa-solid fa-border',
|
|
9293
9504
|
type: 'editor',
|
|
9294
9505
|
properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY],
|
|
9295
9506
|
components: {
|
|
9296
9507
|
edit: {
|
|
9297
|
-
component: () => Promise.resolve().then(function () { return
|
|
9508
|
+
component: () => Promise.resolve().then(function () { return borderWidgetEditor_component; }).then((c) => c.AXPBorderWidgetEditComponent),
|
|
9298
9509
|
},
|
|
9299
9510
|
},
|
|
9300
9511
|
visible: false,
|
|
9301
9512
|
};
|
|
9302
9513
|
|
|
9303
|
-
const
|
|
9304
|
-
{ value: 'top-left', label: 'Top Left', alignItems: 'start',
|
|
9305
|
-
{ value: 'top-center', label: 'Top Center', alignItems: 'start',
|
|
9306
|
-
{ value: 'top-right', label: 'Top Right', alignItems: 'start',
|
|
9307
|
-
{ value: 'middle-left', label: 'Middle Left', alignItems: 'center',
|
|
9308
|
-
{ value: 'middle-center', label: 'Middle Center', alignItems: 'center',
|
|
9309
|
-
{ value: 'middle-right', label: 'Middle Right', alignItems: 'center',
|
|
9310
|
-
{ value: 'bottom-left', label: 'Bottom Left', alignItems: 'end',
|
|
9311
|
-
{ value: 'bottom-center', label: 'Bottom Center', alignItems: 'end',
|
|
9312
|
-
{ value: 'bottom-right', label: 'Bottom Right', alignItems: 'end',
|
|
9514
|
+
const AXP_Flex_Box_Alignments = [
|
|
9515
|
+
{ value: 'top-left', label: 'Top Left', alignItems: 'flex-start', justifyContent: 'flex-start' },
|
|
9516
|
+
{ value: 'top-center', label: 'Top Center', alignItems: 'flex-start', justifyContent: 'center' },
|
|
9517
|
+
{ value: 'top-right', label: 'Top Right', alignItems: 'flex-start', justifyContent: 'flex-end' },
|
|
9518
|
+
{ value: 'middle-left', label: 'Middle Left', alignItems: 'center', justifyContent: 'flex-start' },
|
|
9519
|
+
{ value: 'middle-center', label: 'Middle Center', alignItems: 'center', justifyContent: 'center' },
|
|
9520
|
+
{ value: 'middle-right', label: 'Middle Right', alignItems: 'center', justifyContent: 'flex-end' },
|
|
9521
|
+
{ value: 'bottom-left', label: 'Bottom Left', alignItems: 'flex-end', justifyContent: 'flex-start' },
|
|
9522
|
+
{ value: 'bottom-center', label: 'Bottom Center', alignItems: 'flex-end', justifyContent: 'center' },
|
|
9523
|
+
{ value: 'bottom-right', label: 'Bottom Right', alignItems: 'flex-end', justifyContent: 'flex-end' },
|
|
9313
9524
|
];
|
|
9314
|
-
const
|
|
9315
|
-
{ value: 'start', label: 'Start' },
|
|
9316
|
-
{ value: 'end', label: 'End' },
|
|
9525
|
+
const AXP_Flex_Box_Justify_Options = [
|
|
9526
|
+
{ value: 'flex-start', label: 'Start' },
|
|
9527
|
+
{ value: 'flex-end', label: 'End' },
|
|
9317
9528
|
{ value: 'center', label: 'Center' },
|
|
9318
|
-
{ value: '
|
|
9529
|
+
{ value: 'space-between', label: 'Space Between' },
|
|
9530
|
+
{ value: 'space-around', label: 'Space Around' },
|
|
9319
9531
|
];
|
|
9320
|
-
const
|
|
9321
|
-
{ value: 'start', label: 'Start' },
|
|
9322
|
-
{ value: 'end', label: 'End' },
|
|
9532
|
+
const AXP_Flex_Box_Align_Options = [
|
|
9533
|
+
{ value: 'flex-start', label: 'Start' },
|
|
9534
|
+
{ value: 'flex-end', label: 'End' },
|
|
9323
9535
|
{ value: 'center', label: 'Center' },
|
|
9324
9536
|
{ value: 'stretch', label: 'Stretch' },
|
|
9537
|
+
{ value: 'baseline', label: 'Baseline' },
|
|
9325
9538
|
];
|
|
9326
9539
|
|
|
9327
|
-
class
|
|
9540
|
+
class AXPFlexOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
9328
9541
|
constructor() {
|
|
9329
9542
|
super(...arguments);
|
|
9330
9543
|
this.rendered = signal(false);
|
|
9331
|
-
this.
|
|
9332
|
-
this.
|
|
9333
|
-
this.
|
|
9334
|
-
this.
|
|
9335
|
-
|
|
9336
|
-
|
|
9337
|
-
|
|
9338
|
-
lg: false,
|
|
9339
|
-
xl: false,
|
|
9340
|
-
'2xl': false,
|
|
9341
|
-
'3xl': false,
|
|
9342
|
-
});
|
|
9343
|
-
this.selectionItems = [
|
|
9344
|
-
{ id: 'default', text: 'Default' },
|
|
9345
|
-
{ id: 'sm', text: 'Sm' },
|
|
9346
|
-
{ id: 'md', text: 'Md' },
|
|
9347
|
-
{ id: 'lg', text: 'Lg' },
|
|
9348
|
-
{ id: 'xl', text: 'Xl' },
|
|
9349
|
-
{ id: '2xl', text: '2Xl' },
|
|
9350
|
-
{ id: '3xl', text: '3Xl' },
|
|
9351
|
-
];
|
|
9352
|
-
this.gridTemplateColumns = signal(1);
|
|
9353
|
-
this.gridTemplateRows = signal(1);
|
|
9354
|
-
this.gridDirection = signal('row');
|
|
9544
|
+
this.flexSides = AXP_Flex_Box_Alignments;
|
|
9545
|
+
this.flexDirection = signal('row');
|
|
9546
|
+
this.flexWrap = signal('nowrap');
|
|
9547
|
+
this.flexDirectionIsColumn = computed(() => this.flexDirection().startsWith('column'));
|
|
9548
|
+
this.flexDirectionIsReverse = computed(() => this.flexDirection().endsWith('reverse'));
|
|
9549
|
+
this.flexDirectionWithoutReverse = computed(() => this.flexDirection().replace('-reverse', ''));
|
|
9550
|
+
this.gapMode = signal('both');
|
|
9355
9551
|
this.gapUnit = signal('px');
|
|
9356
|
-
this.gap = signal({ x: 0, y: 0 });
|
|
9357
|
-
this.gapMode = signal('single');
|
|
9552
|
+
this.gap = signal({ both: 0, x: 0, y: 0 });
|
|
9358
9553
|
this.lastGap = signal(0);
|
|
9359
|
-
this.selectedJustify = signal({ value: '
|
|
9360
|
-
this.selectedAlign = signal({ value: '
|
|
9554
|
+
this.selectedJustify = signal({ value: 'flex-start', label: 'Start' });
|
|
9555
|
+
this.selectedAlign = signal({ value: 'flex-start', label: 'Start' });
|
|
9361
9556
|
this.hoveredAlign = signal(null);
|
|
9362
9557
|
this.hoveredJustify = signal(null);
|
|
9363
|
-
this.clickedAlign = signal('
|
|
9364
|
-
this.clickedJustify = signal('
|
|
9558
|
+
this.clickedAlign = signal('flex-start');
|
|
9559
|
+
this.clickedJustify = signal('flex-start');
|
|
9365
9560
|
this.justifyDataSource = new AXDataSource({
|
|
9366
9561
|
pageSize: 99,
|
|
9367
9562
|
load: async (e) => {
|
|
9368
9563
|
return {
|
|
9369
|
-
items:
|
|
9370
|
-
total:
|
|
9564
|
+
items: AXP_Flex_Box_Justify_Options,
|
|
9565
|
+
total: AXP_Flex_Box_Justify_Options.length,
|
|
9371
9566
|
};
|
|
9372
9567
|
},
|
|
9373
9568
|
});
|
|
@@ -9375,89 +9570,150 @@ class AXPGridOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9375
9570
|
pageSize: 99,
|
|
9376
9571
|
load: async (e) => {
|
|
9377
9572
|
return {
|
|
9378
|
-
items:
|
|
9379
|
-
total:
|
|
9573
|
+
items: AXP_Flex_Box_Align_Options,
|
|
9574
|
+
total: AXP_Flex_Box_Align_Options.length,
|
|
9380
9575
|
};
|
|
9381
9576
|
},
|
|
9382
9577
|
});
|
|
9383
9578
|
this.findAlignNameById = (value) => {
|
|
9384
|
-
const side =
|
|
9385
|
-
return side
|
|
9579
|
+
const side = AXP_Flex_Box_Align_Options.find((side) => side.value === value);
|
|
9580
|
+
return side?.label;
|
|
9386
9581
|
};
|
|
9387
9582
|
this.findJustifyNameById = (value) => {
|
|
9388
|
-
const side =
|
|
9389
|
-
return side
|
|
9583
|
+
const side = AXP_Flex_Box_Justify_Options.find((side) => side.value === value);
|
|
9584
|
+
return side?.label;
|
|
9390
9585
|
};
|
|
9391
|
-
this.#
|
|
9392
|
-
this.
|
|
9586
|
+
this.#af = afterNextRender(() => {
|
|
9587
|
+
const value = this.getValue();
|
|
9588
|
+
//this.flexDirection.set(value?.flexDirection ?? 'row');
|
|
9589
|
+
this.setFlexDirection(value?.flexDirection ?? 'row');
|
|
9590
|
+
// this.flexWrap.set(value?.flexWrap ?? 'nowrap');
|
|
9591
|
+
this.setWrapMode(value?.flexWrap ?? 'nowrap');
|
|
9592
|
+
this.clickedJustify.set(value?.justifyContent ?? 'flex-start');
|
|
9593
|
+
this.clickedAlign.set(value?.alignItems ?? 'flex-start');
|
|
9594
|
+
const { values, unit } = AXPPropertyEditorHelper.parseGap(value?.gap ?? '0px');
|
|
9595
|
+
this.gapUnit.set(unit);
|
|
9596
|
+
if (values.x === values.y) {
|
|
9597
|
+
this.gapMode.set('both');
|
|
9598
|
+
this.setGap(values.x, 'both');
|
|
9599
|
+
}
|
|
9600
|
+
else {
|
|
9601
|
+
this.gapMode.set('single');
|
|
9602
|
+
this.setGap(values.x, 'x');
|
|
9603
|
+
this.setGap(values.y, 'y');
|
|
9604
|
+
}
|
|
9393
9605
|
this.rendered.set(true);
|
|
9394
9606
|
});
|
|
9395
|
-
this.#trackChange = effect(() => {
|
|
9396
|
-
this.getValue();
|
|
9397
|
-
untracked(() => this.initialValues());
|
|
9398
|
-
});
|
|
9399
|
-
}
|
|
9400
|
-
setGridDirection(value) {
|
|
9401
|
-
this.gridDirection.set(value);
|
|
9402
|
-
this.saveValue({ gridAutoFlow: value });
|
|
9403
9607
|
}
|
|
9404
|
-
|
|
9405
|
-
|
|
9406
|
-
|
|
9407
|
-
this.saveValue({ gridTemplateColumns: `repeat(${value}, 1fr)` });
|
|
9408
|
-
}
|
|
9409
|
-
else {
|
|
9410
|
-
this.gridTemplateRows.set(value);
|
|
9411
|
-
this.saveValue({ gridTemplateRows: `repeat(${value}, 1fr)` });
|
|
9412
|
-
}
|
|
9608
|
+
setWrapMode(type) {
|
|
9609
|
+
this.flexWrap.set(type);
|
|
9610
|
+
this.saveValue({ flexWrap: type });
|
|
9413
9611
|
}
|
|
9414
|
-
|
|
9612
|
+
setGapMode() {
|
|
9415
9613
|
if (this.gapMode() === 'single') {
|
|
9416
|
-
this.gapMode.set('
|
|
9614
|
+
this.gapMode.set('both');
|
|
9615
|
+
// this.gap.set({ ...this.gap(), both: this.lastGap() });
|
|
9616
|
+
this.setGap(this.lastGap(), 'both');
|
|
9417
9617
|
}
|
|
9418
9618
|
else {
|
|
9419
9619
|
this.gapMode.set('single');
|
|
9420
|
-
this.
|
|
9620
|
+
// this.gap.set({ ...this.gap(), x: this.lastGap(), y: this.lastGap() });
|
|
9621
|
+
this.setGap(this.lastGap(), 'x');
|
|
9622
|
+
this.setGap(this.lastGap(), 'y');
|
|
9421
9623
|
}
|
|
9422
9624
|
}
|
|
9625
|
+
setFlexDirection(type) {
|
|
9626
|
+
this.flexDirection.set(type);
|
|
9627
|
+
this.saveValue({ flexDirection: type });
|
|
9628
|
+
}
|
|
9423
9629
|
setGap(size, side) {
|
|
9424
|
-
this.
|
|
9425
|
-
if (
|
|
9426
|
-
this.gap.
|
|
9427
|
-
|
|
9428
|
-
this.saveValue({ gap: gapString });
|
|
9630
|
+
this.gap.set({ ...this.gap(), [side]: size });
|
|
9631
|
+
if (this.gapMode() === 'both') {
|
|
9632
|
+
const gap = this.gap().both + this.gapUnit();
|
|
9633
|
+
this.saveValue({ gap });
|
|
9429
9634
|
}
|
|
9430
9635
|
else {
|
|
9431
|
-
this.gap
|
|
9432
|
-
|
|
9433
|
-
this.saveValue({ gap: gapString });
|
|
9636
|
+
const gap = this.gap().x + this.gapUnit() + ' ' + this.gap().y + this.gapUnit();
|
|
9637
|
+
this.saveValue({ gap });
|
|
9434
9638
|
}
|
|
9639
|
+
this.lastGap.set(size);
|
|
9435
9640
|
}
|
|
9436
9641
|
onClick(data) {
|
|
9437
|
-
|
|
9438
|
-
|
|
9642
|
+
// const directionAlign = this.flexDirectionIsReverse() === true ? 'flex-start' : 'flex-end';
|
|
9643
|
+
const directionAlign = 'flex-start';
|
|
9644
|
+
let calcAlign = this.calculateAlign(data.alignItems);
|
|
9645
|
+
let calcJustify = this.calculateJustify(data.justifyContent);
|
|
9646
|
+
if (this.flexDirectionIsColumn() &&
|
|
9647
|
+
(calcAlign === 'flex-end' || calcAlign === 'flex-start') &&
|
|
9648
|
+
(calcJustify === 'flex-end' || calcJustify === 'flex-start')) {
|
|
9649
|
+
[calcAlign, calcJustify] = [calcJustify, calcAlign];
|
|
9650
|
+
}
|
|
9651
|
+
if (this.clickedJustify() === 'space-between') {
|
|
9652
|
+
if (this.clickedAlign() === 'stretch') {
|
|
9653
|
+
return;
|
|
9654
|
+
}
|
|
9655
|
+
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9656
|
+
return;
|
|
9657
|
+
}
|
|
9658
|
+
this.clickedAlign.set(calcAlign);
|
|
9659
|
+
this.selectedAlign.set({ value: calcAlign, label: this.findAlignNameById(calcAlign) });
|
|
9660
|
+
}
|
|
9661
|
+
else if (this.clickedJustify() === 'space-around') {
|
|
9662
|
+
if (this.clickedAlign() === 'stretch') {
|
|
9663
|
+
return;
|
|
9664
|
+
}
|
|
9665
|
+
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9666
|
+
return;
|
|
9667
|
+
}
|
|
9668
|
+
this.clickedAlign.set(calcAlign);
|
|
9669
|
+
this.selectedAlign.set({ value: calcAlign, label: this.findAlignNameById(calcAlign) });
|
|
9439
9670
|
}
|
|
9440
9671
|
else if (this.clickedAlign() === 'stretch') {
|
|
9441
|
-
this.clickedJustify.set(
|
|
9442
|
-
this.selectedJustify.set({ value:
|
|
9443
|
-
this.saveValue({ justifyItems: data.justifyItems });
|
|
9672
|
+
this.clickedJustify.set(calcJustify);
|
|
9673
|
+
this.selectedJustify.set({ value: calcJustify, label: this.findJustifyNameById(calcJustify) });
|
|
9444
9674
|
}
|
|
9445
|
-
else if (this.
|
|
9446
|
-
this.
|
|
9447
|
-
this.
|
|
9448
|
-
this.saveValue({ alignItems: data.alignItems });
|
|
9675
|
+
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9676
|
+
this.clickedJustify.set(calcJustify);
|
|
9677
|
+
this.selectedJustify.set({ value: calcJustify, label: this.findJustifyNameById(calcJustify) });
|
|
9449
9678
|
}
|
|
9450
9679
|
else {
|
|
9451
|
-
this.clickedAlign.set(
|
|
9452
|
-
this.clickedJustify.set(
|
|
9453
|
-
this.
|
|
9454
|
-
this.
|
|
9455
|
-
this.saveValue({ alignItems: data.alignItems, justifyItems: data.justifyItems });
|
|
9680
|
+
this.clickedAlign.set(calcAlign);
|
|
9681
|
+
this.clickedJustify.set(calcJustify);
|
|
9682
|
+
this.selectedJustify.set({ value: calcJustify, label: this.findJustifyNameById(calcJustify) });
|
|
9683
|
+
this.selectedAlign.set({ value: calcAlign, label: this.findAlignNameById(calcAlign) });
|
|
9456
9684
|
}
|
|
9685
|
+
this.saveValue({ alignItems: this.clickedAlign(), justifyContent: this.clickedJustify() });
|
|
9457
9686
|
}
|
|
9458
9687
|
onHover(data) {
|
|
9459
|
-
this.
|
|
9460
|
-
|
|
9688
|
+
// const directionAlign = this.flexDirectionIsReverse() === true ? 'flex-start' : 'flex-end';
|
|
9689
|
+
const directionAlign = 'flex-start';
|
|
9690
|
+
let calcAlign = this.calculateAlign(data.alignItems);
|
|
9691
|
+
let calcJustify = this.calculateJustify(data.justifyContent);
|
|
9692
|
+
if (this.flexDirectionIsColumn() &&
|
|
9693
|
+
(calcAlign === 'flex-end' || calcAlign === 'flex-start') &&
|
|
9694
|
+
(calcJustify === 'flex-end' || calcJustify === 'flex-start')) {
|
|
9695
|
+
[calcAlign, calcJustify] = [calcJustify, calcAlign];
|
|
9696
|
+
}
|
|
9697
|
+
if (this.clickedJustify() === 'space-between') {
|
|
9698
|
+
this.hoveredAlign.set(calcAlign);
|
|
9699
|
+
this.hoveredJustify.set('space-between');
|
|
9700
|
+
}
|
|
9701
|
+
else if (this.clickedJustify() === 'space-around') {
|
|
9702
|
+
this.hoveredAlign.set(calcAlign);
|
|
9703
|
+
this.hoveredJustify.set('space-around');
|
|
9704
|
+
}
|
|
9705
|
+
else if (this.clickedAlign() === 'stretch') {
|
|
9706
|
+
this.hoveredAlign.set('stretch');
|
|
9707
|
+
this.hoveredJustify.set(calcJustify);
|
|
9708
|
+
}
|
|
9709
|
+
else if (this.clickedAlign() === 'baseline' && calcAlign === directionAlign) {
|
|
9710
|
+
this.hoveredAlign.set('baseline');
|
|
9711
|
+
this.hoveredJustify.set(calcJustify);
|
|
9712
|
+
}
|
|
9713
|
+
else {
|
|
9714
|
+
this.hoveredAlign.set(calcAlign);
|
|
9715
|
+
this.hoveredJustify.set(calcJustify);
|
|
9716
|
+
}
|
|
9461
9717
|
}
|
|
9462
9718
|
onHoverLeave() {
|
|
9463
9719
|
this.hoveredAlign.set(null);
|
|
@@ -9465,10 +9721,10 @@ class AXPGridOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9465
9721
|
}
|
|
9466
9722
|
onJustifyChange(event) {
|
|
9467
9723
|
if (event.isUserInteraction) {
|
|
9468
|
-
this.selectedJustify.set({ value: event.value, label: this.
|
|
9724
|
+
this.selectedJustify.set({ value: event.value, label: this.findAlignNameById(event.value) });
|
|
9469
9725
|
this.clickedJustify.set(event.value);
|
|
9470
9726
|
}
|
|
9471
|
-
this.saveValue({
|
|
9727
|
+
this.saveValue({ justifyContent: this.clickedJustify() });
|
|
9472
9728
|
}
|
|
9473
9729
|
onAlignChange(event) {
|
|
9474
9730
|
if (event.isUserInteraction) {
|
|
@@ -9477,133 +9733,71 @@ class AXPGridOptionsWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9477
9733
|
}
|
|
9478
9734
|
this.saveValue({ alignItems: this.clickedAlign() });
|
|
9479
9735
|
}
|
|
9480
|
-
|
|
9481
|
-
if (
|
|
9482
|
-
|
|
9483
|
-
|
|
9484
|
-
const currentBreakpoint = this.currentBreakpoint();
|
|
9485
|
-
if (newBreakpoint === currentBreakpoint) {
|
|
9486
|
-
return;
|
|
9736
|
+
calculateAlign(value) {
|
|
9737
|
+
if (this.flexDirection() === 'column-reverse') {
|
|
9738
|
+
if (value === 'flex-end') {
|
|
9739
|
+
return 'flex-start';
|
|
9487
9740
|
}
|
|
9488
|
-
|
|
9489
|
-
|
|
9490
|
-
|
|
9491
|
-
|
|
9741
|
+
else if (value === 'flex-start') {
|
|
9742
|
+
return 'flex-end';
|
|
9743
|
+
}
|
|
9744
|
+
else {
|
|
9745
|
+
return value;
|
|
9492
9746
|
}
|
|
9493
|
-
this.initialValues();
|
|
9494
9747
|
}
|
|
9748
|
+
return value;
|
|
9495
9749
|
}
|
|
9496
|
-
|
|
9497
|
-
if (this.
|
|
9498
|
-
|
|
9499
|
-
|
|
9500
|
-
|
|
9501
|
-
|
|
9502
|
-
|
|
9503
|
-
const newBreakpoint = this.lastBreakpoint();
|
|
9504
|
-
const otherBreakpoints = findNonEmptyBreakpoints(value);
|
|
9505
|
-
this.currentBreakpoint.set(newBreakpoint);
|
|
9506
|
-
const filteredOtherBreakpoints = otherBreakpoints.filter((i) => i !== newBreakpoint);
|
|
9507
|
-
if (filteredOtherBreakpoints.length === 0) {
|
|
9508
|
-
this.lastBreakpoint.set(newBreakpoint);
|
|
9750
|
+
calculateJustify(value) {
|
|
9751
|
+
if (this.flexDirection() === 'row-reverse') {
|
|
9752
|
+
if (value === 'flex-end') {
|
|
9753
|
+
return 'flex-start';
|
|
9754
|
+
}
|
|
9755
|
+
else if (value === 'flex-start') {
|
|
9756
|
+
return 'flex-end';
|
|
9509
9757
|
}
|
|
9510
9758
|
else {
|
|
9511
|
-
|
|
9759
|
+
return value;
|
|
9512
9760
|
}
|
|
9513
|
-
this.setValue({ ...value });
|
|
9514
|
-
this.initialValues();
|
|
9515
|
-
this.getValue();
|
|
9516
9761
|
}
|
|
9517
|
-
|
|
9518
|
-
detectConfiguredBreakpoints() {
|
|
9519
|
-
const value = this.getValue();
|
|
9520
|
-
let newBreakpointConfigured = {};
|
|
9521
|
-
Object.keys(value).forEach((key) => {
|
|
9522
|
-
newBreakpointConfigured[key] = true;
|
|
9523
|
-
});
|
|
9524
|
-
this.isBreakpointConfigured.set(newBreakpointConfigured);
|
|
9762
|
+
return value;
|
|
9525
9763
|
}
|
|
9526
9764
|
saveValue(item) {
|
|
9527
|
-
|
|
9528
|
-
const breakpoint = this.currentBreakpoint();
|
|
9529
|
-
if (value) {
|
|
9530
|
-
const existingBreakpointValue = value[breakpoint];
|
|
9531
|
-
const newValue = {
|
|
9532
|
-
...value,
|
|
9533
|
-
[breakpoint]: existingBreakpointValue ? { ...existingBreakpointValue, ...item } : item,
|
|
9534
|
-
};
|
|
9535
|
-
this.setValue(newValue);
|
|
9536
|
-
}
|
|
9537
|
-
else {
|
|
9538
|
-
this.setValue({
|
|
9539
|
-
[breakpoint]: item,
|
|
9540
|
-
});
|
|
9541
|
-
}
|
|
9542
|
-
}
|
|
9543
|
-
#firstInitialize;
|
|
9544
|
-
#trackChange;
|
|
9545
|
-
// #eff1 = effect(() => console.log(this.getValue()));
|
|
9546
|
-
// #eff2 = effect(() => console.log(this.currentBreakpoint(), this.clickedAlign(), this.clickedJustify()));
|
|
9547
|
-
initialValues() {
|
|
9548
|
-
const value = this.getValue();
|
|
9549
|
-
if (value) {
|
|
9550
|
-
if (!this.rendered()) {
|
|
9551
|
-
const keys = findNonEmptyBreakpoints(value);
|
|
9552
|
-
this.currentBreakpoint.set(keys.length === 0 ? 'default' : keys[keys.length - 1]);
|
|
9553
|
-
}
|
|
9554
|
-
const justify = value[this.currentBreakpoint()]?.justifyItems ?? 'stretch';
|
|
9555
|
-
const align = value[this.currentBreakpoint()]?.alignItems ?? 'stretch';
|
|
9556
|
-
this.clickedJustify.set(justify);
|
|
9557
|
-
this.clickedAlign.set(align);
|
|
9558
|
-
this.selectedJustify.set({ value: justify, label: this.findJustifyNameById(justify) });
|
|
9559
|
-
this.selectedAlign.set({ value: align, label: this.findAlignNameById(align) });
|
|
9560
|
-
const rows = AXPPropertyEditorHelper.parseGridTemplate(value[this.currentBreakpoint()]?.gridTemplateRows ?? 'repeat(1, 1fr)');
|
|
9561
|
-
const cols = AXPPropertyEditorHelper.parseGridTemplate(value[this.currentBreakpoint()]?.gridTemplateColumns ?? 'repeat(1, 1fr)');
|
|
9562
|
-
this.gridTemplateRows.set(rows);
|
|
9563
|
-
this.gridTemplateColumns.set(cols);
|
|
9564
|
-
const { values, unit } = AXPPropertyEditorHelper.parseGap(value[this.currentBreakpoint()]?.gap ?? '0px');
|
|
9565
|
-
this.setGap(values.x, 'x');
|
|
9566
|
-
this.setGap(values.y, 'y');
|
|
9567
|
-
this.gapUnit.set(unit);
|
|
9568
|
-
this.detectConfiguredBreakpoints();
|
|
9569
|
-
}
|
|
9765
|
+
this.setValue({ ...this.getValue(), ...item });
|
|
9570
9766
|
}
|
|
9571
|
-
|
|
9572
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPGridOptionsWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"axp-grid-breakpoints ax-pb-4\">\n <ax-selection-list\n [direction]=\"'horizontal'\"\n [items]=\"selectionItems\"\n [look]=\"'card'\"\n [customTemplate]=\"customTemplate\"\n [showControl]=\"false\"\n [ngModel]=\"currentBreakpoint()\"\n (onValueChanged)=\"changeBreakPoint($event)\"\n ></ax-selection-list>\n</div>\n<ng-template #customTemplate let-item>\n @let data = item.data;\n <div [class]=\"isBreakpointConfigured()[data.id] ? 'ax-text-primary-300' : ''\">\n {{ data.text }}\n </div>\n</ng-template>\n<ax-button\n color=\"primary\"\n text=\"Reset\"\n [disabled]=\"currentBreakpoint() === 'default'\"\n (click)=\"resetBreakpoint()\"\n></ax-button>\n\n<div class=\"axp-grid-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span>Grid</span>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateRows()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'row')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateColumns()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'column')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <!-- <button>\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 3.29289C7.18754 3.10536 7.44189 3 7.70711 3H10.5C10.7022 3 10.8845 3.12182 10.9619 3.30866C11.0393 3.4955 10.9966 3.71055 10.8536 3.85355L9 5.70711V7H10.2929L12.1464 5.14645C12.2894 5.00345 12.5045 4.96067 12.6913 5.03806C12.8782 5.11545 13 5.29777 13 5.5V8.29289C13 8.55811 12.8946 8.81246 12.7071 9L11 10.7071C10.8125 10.8946 10.5581 11 10.2929 11H7.70711L4.85355 13.8536C4.65829 14.0488 4.34171 14.0488 4.14645 13.8536L2.14645 11.8536C1.95118 11.6583 1.95118 11.3417 2.14645 11.1464L5 8.29289V5.70711C5 5.44189 5.10536 5.18754 5.29289 5L7 3.29289ZM9.29289 4H7.70711L6 5.70711L6 8.29289C6 8.55811 5.89464 8.81246 5.70711 9L3.20711 11.5L4.5 12.7929L7 10.2929C7.18754 10.1054 7.44189 10 7.70711 10H10.2929L12 8.29289V6.70711L10.8536 7.85355C10.7598 7.94732 10.6326 8 10.5 8H8.5C8.22386 8 8 7.77614 8 7.5V5.5C8 5.36739 8.05268 5.24021 8.14645 5.14645L9.29289 4Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button> -->\n </div>\n <!-- <span> Direction </span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item class=\"ax-w-24\" (onClick)=\"setGridDirection('row')\" [selected]=\"gridDirection() === 'row'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 4H11V3H3V4ZM13.8536 11.1464L10.8536 8.14645L10.1464 8.85355L12.2929 11H3V12H12.2929L10.1464 14.1464L10.8536 14.8536L13.8536 11.8536L14.2071 11.5L13.8536 11.1464Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 10.7929L9.79289 4H11V4.20711L4.20711 11H3V10.7929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n class=\"ax-w-24\"\n (onClick)=\"setGridDirection('column')\"\n [selected]=\"gridDirection() === 'column'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowColumnWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 3L4 11L3 11L3 3L4 3ZM11.1464 13.8536L8.14645 10.8536L8.85355 10.1464L11 12.2929L11 3L12 3L12 12.2929L14.1464 10.1464L14.8536 10.8536L11.8536 13.8536L11.5 14.2071L11.1464 13.8536Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M10.7929 3L4 9.79289L4 11L4.20711 11L11 4.20711L11 3L10.7929 3Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n </div> -->\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of gridSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n @if(hoveredJustify() && hoveredAlign()){\n <div\n class=\"axp-grid-option-hover ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {} @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"stroke-opacity: 0.25; fill-opacity: 0.07\"\n class=\"hover:fill-opacity-20\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n }\n\n <div\n class=\"axp-grid-option-active ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {\n <svg\n width=\"60\"\n height=\"60\"\n viewBox=\"0 0 60 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M55.5 55.48a.02.02 0 0 1-.02.02H4.52a.02.02 0 0 1-.02-.02V4.52a.02.02 0 0 1 .02-.02h50.96a.02.02 0 0 1 .02.02v50.96Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n <path\n d=\"m26.354 20.354 3.146-3.147V29.5h-3v1h3v12.293l-3.146-3.147-.707.708L30 44.707l4.354-4.353-.707-.708-3.147 3.147V30.5h12.293l-3.147 3.147.708.707L44.707 30l-4.353-4.354-.708.708 3.147 3.146H30.5V17.207l3.146 3.147.707-.707L30 15.293l-4.354 4.354.707.707Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n <path\n d=\"m17.207 30.5 3.146 3.147-.707.707L15.293 30l4.353-4.354.707.708-3.146 3.146H26.5v1h-9.293Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill: #cebcbc; fill-opacity: 0.16\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span>X:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [value]=\"selectedJustify()\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span>Y:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [value]=\"selectedAlign()\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='single') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [values]=\"gap().x\"\n (valuesChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'both')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'x')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"toggleGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='single'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>\n", styles: [".axp-grid-breakpoints{font-size:.25rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul{gap:.5rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul>li>label{padding:.25rem!important}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .5rem!important}.axp-grid-option ax-range-slider:not(.ax-exclude){--ax-range-slider-base-thickness: .1rem}.axp-grid-option ax-range-slider:not(.ax-exclude) .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i3$6.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i2$3.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9767
|
+
#af;
|
|
9768
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFlexOptionsWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9769
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPFlexOptionsWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"axp-flex-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span>Direction</span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item (onClick)=\"setFlexDirection('row')\" [selected]=\"flexDirection() === 'row'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('row-reverse')\" [selected]=\"flexDirection() === 'row-reverse'\"\n ><ax-prefix\n ><svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"transform: rotate(180deg)\"\n >\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('column')\" [selected]=\"flexDirection() === 'column'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M8.00001 12.2929L4.85356 9.14645L4.14645 9.85355L8.50001 14.2071L12.8536 9.85355L12.1465 9.14645L9.00001 12.2929L9.00001 3H8.00001L8.00001 12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setFlexDirection('column-reverse')\"\n [selected]=\"flexDirection() === 'column-reverse'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M9.00004 3.70721L12.1465 6.85363L12.8536 6.14652L8.50001 1.79297L4.14645 6.14652L4.85356 6.85363L8.00004 3.70715L8.00004 13.0001H9.00004L9.00004 3.70721Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item color=\"primary\">\n <ax-dropdown-panel>\n <ax-button-item-list>\n <ax-button-item text=\"Wrap\" (click)=\"setWrapMode('wrap')\" [class]=\"\" >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-bars\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item text=\"No Wrap\" (click)=\"setWrapMode('nowrap')\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-minus\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n <ax-suffix>\n <ax-icon icon=\"fa-solid fa-chevron-down\"></ax-icon>\n </ax-suffix>\n </ax-button-group-item>\n </ax-button-group>\n </div>\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of flexSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\" [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(hoveredJustify()==='space-between'){ @if(clickedAlign()==='stretch'){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredJustify()==='space-around'){ @if(clickedAlign()==='stretch' ){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }@else if (hoveredAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if(hoveredAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\"\n [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(clickedJustify()==='space-between'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11 53.5C11 53.7761 10.7761 54 10.5 54H9.5C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6H10.5C10.7761 6 11 6.22386 11 6.5L11 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM50.5 54C50.7761 54 51 53.7761 51 53.5L51 6.5C51 6.22386 50.7761 6 50.5 6H49.5C49.2239 6 49 6.22386 49 6.5L49 53.5C49 53.7761 49.2239 54 49.5 54H50.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='baseline'){\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M50.5996 4V10.2929L52.246 8.64645L52.9531 9.35355L50.0996 12.2071L47.246 9.35355L47.9531 8.64645L49.5996 10.2929V4H50.5996Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9.35294 4H11.1012L13.4542 12H12.4119L11.8236 9.99994H8.63061L8.04236 12H7L9.35294 4ZM11.5295 8.99994L10.353 4.9999H10.1012L8.92473 8.99994H11.5295Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else{\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedJustify()==='space-around'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8 30L5 32L5 28L8 30Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 53.5C13 53.7761 12.7761 54 12.5 54H11.5C11.2239 54 11 53.7761 11 53.5L11 6.5C11 6.22386 11.2239 6 11.5 6H12.5C12.7761 6 13 6.22386 13 6.5L13 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM48.5 54C48.7761 54 49 53.7761 49 53.5L49 6.5C49 6.22386 48.7761 6 48.5 6H47.5C47.2239 6 47 6.22386 47 6.5L47 53.5C47 53.7761 47.2239 54 47.5 54H48.5Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M52 30L55 28L55 32L52 30Z\" fill=\"currentColor\"></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg\n data-wf-icon=\"NineBoxAlignItemsRowSpaceAroundBaselineIcon\"\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M40.8529 4V10.2929L42.4993 8.64645L43.2064 9.35355L40.3529 12.2071L37.4993 9.35355L38.2064 8.64645L39.8529 10.2929V4H40.8529Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M19.3523 4H21.1006L23.4536 12H22.4112L21.8229 9.99994H18.6299L18.0417 12H16.9993L19.3523 4ZM21.5288 8.99994L20.3523 4.9999H20.1005L18.924 8.99994H21.5288Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if (clickedAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span class=\"ax-order-1\">X:</span>\n <div class=\"ax-w-32\"\n [style.order]=\"flexDirectionIsColumn()?'4':'2'\">\n <!-- <ax-select-box\n [dataSource]=\"flexDirectionIsColumn()? alignDataSource : justifyDataSource\"\n [ngModel]=\"flexDirectionIsColumn()? selectedAlign : selectedJustify\"\n (ngModelChange)=\"flexDirectionIsColumn()? selectedAlign = $event : selectedJustify = $event\"\n (onValueChanged)=\"flexDirectionIsColumn()? onAlignChange($event) :onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box> -->\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [(ngModel)]=\"selectedJustify\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span class=\"ax-order-3\">Y:</span>\n <div class=\"ax-w-32\" [style.order]=\"flexDirectionIsColumn()?'2':'4'\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [(ngModel)]=\"selectedAlign\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='both') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [ngModel]=\"gap().both\"\n (ngModelChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().both\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'both')\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'x')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"setGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='both'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>", styles: [".axp-flex-option ax-range-slider{padding:.25rem!important}.axp-flex-option ax-range-slider .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-flex-option ax-button-group>ax-button-group-item{width:2.62rem}\n"], dependencies: [{ kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i1$7.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange"] }, { kind: "component", type: i1$7.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i7$1.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i6.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i5.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9573
9770
|
}
|
|
9574
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
9771
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFlexOptionsWidgetEditComponent, decorators: [{
|
|
9575
9772
|
type: Component,
|
|
9576
9773
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
9577
|
-
CommonModule,
|
|
9578
9774
|
AXButtonGroupModule,
|
|
9579
9775
|
AXDecoratorModule,
|
|
9580
9776
|
AXSelectBoxModule,
|
|
9777
|
+
AXRangeSliderModule,
|
|
9581
9778
|
AXNumberBoxModule,
|
|
9582
9779
|
AXDropdownModule,
|
|
9583
9780
|
AXButtonModule,
|
|
9584
9781
|
FormsModule,
|
|
9585
|
-
AXRangeSliderModule,
|
|
9586
|
-
AXSelectionListModule,
|
|
9587
|
-
FormsModule,
|
|
9588
|
-
], template: "<div class=\"axp-grid-breakpoints ax-pb-4\">\n <ax-selection-list\n [direction]=\"'horizontal'\"\n [items]=\"selectionItems\"\n [look]=\"'card'\"\n [customTemplate]=\"customTemplate\"\n [showControl]=\"false\"\n [ngModel]=\"currentBreakpoint()\"\n (onValueChanged)=\"changeBreakPoint($event)\"\n ></ax-selection-list>\n</div>\n<ng-template #customTemplate let-item>\n @let data = item.data;\n <div [class]=\"isBreakpointConfigured()[data.id] ? 'ax-text-primary-300' : ''\">\n {{ data.text }}\n </div>\n</ng-template>\n<ax-button\n color=\"primary\"\n text=\"Reset\"\n [disabled]=\"currentBreakpoint() === 'default'\"\n (click)=\"resetBreakpoint()\"\n></ax-button>\n\n<div class=\"axp-grid-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span>Grid</span>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateRows()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'row')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"1\"\n [maxValue]=\"12\"\n [value]=\"gridTemplateColumns()\"\n (onValueChanged)=\"setRowOrColumn($event.value, 'column')\"\n [changeOnScroll]=\"true\"\n [showSpinButtons]=\"false\"\n class=\"ax-max-w-[4.45rem]\"\n ></ax-number-box>\n <!-- <button>\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 3.29289C7.18754 3.10536 7.44189 3 7.70711 3H10.5C10.7022 3 10.8845 3.12182 10.9619 3.30866C11.0393 3.4955 10.9966 3.71055 10.8536 3.85355L9 5.70711V7H10.2929L12.1464 5.14645C12.2894 5.00345 12.5045 4.96067 12.6913 5.03806C12.8782 5.11545 13 5.29777 13 5.5V8.29289C13 8.55811 12.8946 8.81246 12.7071 9L11 10.7071C10.8125 10.8946 10.5581 11 10.2929 11H7.70711L4.85355 13.8536C4.65829 14.0488 4.34171 14.0488 4.14645 13.8536L2.14645 11.8536C1.95118 11.6583 1.95118 11.3417 2.14645 11.1464L5 8.29289V5.70711C5 5.44189 5.10536 5.18754 5.29289 5L7 3.29289ZM9.29289 4H7.70711L6 5.70711L6 8.29289C6 8.55811 5.89464 8.81246 5.70711 9L3.20711 11.5L4.5 12.7929L7 10.2929C7.18754 10.1054 7.44189 10 7.70711 10H10.2929L12 8.29289V6.70711L10.8536 7.85355C10.7598 7.94732 10.6326 8 10.5 8H8.5C8.22386 8 8 7.77614 8 7.5V5.5C8 5.36739 8.05268 5.24021 8.14645 5.14645L9.29289 4Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button> -->\n </div>\n <!-- <span> Direction </span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item class=\"ax-w-24\" (onClick)=\"setGridDirection('row')\" [selected]=\"gridDirection() === 'row'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 4H11V3H3V4ZM13.8536 11.1464L10.8536 8.14645L10.1464 8.85355L12.2929 11H3V12H12.2929L10.1464 14.1464L10.8536 14.8536L13.8536 11.8536L14.2071 11.5L13.8536 11.1464Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 10.7929L9.79289 4H11V4.20711L4.20711 11H3V10.7929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n class=\"ax-w-24\"\n (onClick)=\"setGridDirection('column')\"\n [selected]=\"gridDirection() === 'column'\"\n ><ax-prefix\n ><svg\n data-wf-icon=\"FlexFlowColumnWrapIcon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 3L4 11L3 11L3 3L4 3ZM11.1464 13.8536L8.14645 10.8536L8.85355 10.1464L11 12.2929L11 3L12 3L12 12.2929L14.1464 10.1464L14.8536 10.8536L11.8536 13.8536L11.5 14.2071L11.1464 13.8536Z\"\n fill=\"currentColor\"\n ></path>\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M10.7929 3L4 9.79289L4 11L4.20711 11L11 4.20711L11 3L10.7929 3Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n </div> -->\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of gridSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n @if(hoveredJustify() && hoveredAlign()){\n <div\n class=\"axp-grid-option-hover ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {} @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.07; stroke-opacity: 0.25\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"stroke-opacity: 0.25; fill-opacity: 0.07\"\n class=\"hover:fill-opacity-20\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n }\n\n <div\n class=\"axp-grid-option-active ax-absolute ax-inset-0 ax-grid ax-pointer-events-none ax-transition-all\"\n [style.justify-items]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\">\n @if(clickedJustify()==='stretch' && clickedAlign()==='stretch') {\n <svg\n width=\"60\"\n height=\"60\"\n viewBox=\"0 0 60 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M55.5 55.48a.02.02 0 0 1-.02.02H4.52a.02.02 0 0 1-.02-.02V4.52a.02.02 0 0 1 .02-.02h50.96a.02.02 0 0 1 .02.02v50.96Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n <path\n d=\"m26.354 20.354 3.146-3.147V29.5h-3v1h3v12.293l-3.146-3.147-.707.708L30 44.707l4.354-4.353-.707-.708-3.147 3.147V30.5h12.293l-3.147 3.147.708.707L44.707 30l-4.353-4.354-.708.708 3.147 3.146H30.5V17.207l3.146 3.147.707-.707L30 15.293l-4.354 4.354.707.707Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n <path\n d=\"m17.207 30.5 3.146 3.147-.707.707L15.293 30l4.353-4.354.707.708-3.146 3.146H26.5v1h-9.293Z\"\n fill=\"currentColor\"\n style=\"fill-opacity: 0.25\"\n ></path>\n </svg>\n } @else if(clickedJustify()==='stretch'){\n <svg\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.5 4.6a.15.15 0 0 1 .033-.1h50.934l.003.003a.15.15 0 0 1 .03.097v10.8a.15.15 0 0 1-.03.097l-.003.003H4.533l-.003-.003a.15.15 0 0 1-.03-.097V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='stretch'){\n <svg\n width=\"20\"\n height=\"60\"\n viewBox=\"0 0 20 60\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: white\"\n >\n <path\n d=\"M4.6 4.5h10.8a.15.15 0 0 1 .097.03l.003.003v50.934l-.003.003a.15.15 0 0 1-.097.03H4.6a.15.15 0 0 1-.1-.033V4.533l.003-.003A.15.15 0 0 1 4.6 4.5Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill-opacity: 0.16; stroke: white\"\n ></path>\n </svg>\n } @else{\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"color: #efeaea\"\n >\n <path\n d=\"M4.5 4.6a.1.1 0 0 1 .1-.1h10.8a.1.1 0 0 1 .1.1v10.8a.1.1 0 0 1-.1.1H4.6a.1.1 0 0 1-.1-.1V4.6Z\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n style=\"fill: #cebcbc; fill-opacity: 0.16\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span>X:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [value]=\"selectedJustify()\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span>Y:</span>\n <div class=\"ax-w-32\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [value]=\"selectedAlign()\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='single') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [values]=\"gap().x\"\n (valuesChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'both')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n (onValueChanged)=\"setGap($event.value ?? 0, 'x')\"\n [changeOnScroll]=\"true\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"toggleGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='single'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>\n", styles: [".axp-grid-breakpoints{font-size:.25rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul{gap:.5rem!important}.axp-grid-breakpoints>ax-selection-list:not(.ax-exclude)>ul>li>label{padding:.25rem!important}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-grid-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .5rem!important}.axp-grid-option ax-range-slider:not(.ax-exclude){--ax-range-slider-base-thickness: .1rem}.axp-grid-option ax-range-slider:not(.ax-exclude) .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}\n"] }]
|
|
9782
|
+
], template: "<div class=\"axp-flex-option ax-grid ax-grid-cols-[auto_1fr] ax-pt-2 ax-gap-2 ax-items-center ax-justify-items-start\">\n <span>Direction</span>\n <div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item (onClick)=\"setFlexDirection('row')\" [selected]=\"flexDirection() === 'row'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('row-reverse')\" [selected]=\"flexDirection() === 'row-reverse'\"\n ><ax-prefix\n ><svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"transform: rotate(180deg)\"\n >\n <path\n d=\"M12.2929 7.00004L9.14645 3.85359L9.85355 3.14648L14.2071 7.50004L9.85355 11.8536L9.14645 11.1465L12.2929 8.00004H3V7.00004H12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item (onClick)=\"setFlexDirection('column')\" [selected]=\"flexDirection() === 'column'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M8.00001 12.2929L4.85356 9.14645L4.14645 9.85355L8.50001 14.2071L12.8536 9.85355L12.1465 9.14645L9.00001 12.2929L9.00001 3H8.00001L8.00001 12.2929Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setFlexDirection('column-reverse')\"\n [selected]=\"flexDirection() === 'column-reverse'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M9.00004 3.70721L12.1465 6.85363L12.8536 6.14652L8.50001 1.79297L4.14645 6.14652L4.85356 6.85363L8.00004 3.70715L8.00004 13.0001H9.00004L9.00004 3.70721Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item color=\"primary\">\n <ax-dropdown-panel>\n <ax-button-item-list>\n <ax-button-item text=\"Wrap\" (click)=\"setWrapMode('wrap')\" [class]=\"\" >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-bars\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item text=\"No Wrap\" (click)=\"setWrapMode('nowrap')\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-minus\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n <ax-suffix>\n <ax-icon icon=\"fa-solid fa-chevron-down\"></ax-icon>\n </ax-suffix>\n </ax-button-group-item>\n </ax-button-group>\n </div>\n <span>Align</span>\n <div class=\"ax-flex ax-justify-between ax-gap-2 ax-items-center\">\n <div\n class=\"ax-relative ax-size-[62px] ax-bg-[rgb(30,30,30)] ax-border ax-border-white ax-border-opacity-15 ax-rounded\"\n >\n <div class=\"ax-absolute ax-inset-0 ax-grid ax-grid-cols-3 ax-grid-rows-3\">\n @for(side of flexSides; track side.value){\n <div\n [attr.aria-label]=\"side.label\"\n [attr.aria-value]=\"side.value\"\n class=\"ax-grid ax-place-content-center\"\n (mouseenter)=\"onHover(side)\"\n (mouseleave)=\"onHoverLeave()\"\n (click)=\"onClick(side)\"\n >\n @if (true) {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"7\" y=\"7\" width=\"2\" height=\"2\" rx=\"1\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n </svg>\n }\n </div>\n }\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"hoveredJustify()\"\n [style.align-items]=\"hoveredAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[1] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\" [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(hoveredJustify()==='space-between'){ @if(clickedAlign()==='stretch'){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredJustify()==='space-around'){ @if(clickedAlign()==='stretch' ){ } @else if(clickedAlign()==='baseline' && hoveredAlign()==='flex-start' ){ } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\" fill-opacity=\"0.3\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } } @else if(hoveredAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }@else if (hoveredAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if (hoveredAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n } @else if(hoveredAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n fill-opacity=\"0.3\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n <div\n class=\"ax-absolute ax-inset-0 ax-flex ax-pointer-events-none ax-transition-all\"\n [style.justify-content]=\"clickedJustify()\"\n [style.align-items]=\"clickedAlign()\"\n [style.flex-direction]=\"flexDirection()\"\n\n >\n <div class=\"ax-flex ax-justify-center ax-items-center ax-min-w-5 ax-min-h-5\">\n <div class=\"ax-size-auto ax-z-[2] ax-rounded-lg ax-bg-[rgb(30,30,30)] ax-flex-none\"\n [class]=\"flexDirectionIsColumn()? '-ax-rotate-90': ''\">\n @if(clickedJustify()==='space-between'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11 53.5C11 53.7761 10.7761 54 10.5 54H9.5C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6H10.5C10.7761 6 11 6.22386 11 6.5L11 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM50.5 54C50.7761 54 51 53.7761 51 53.5L51 6.5C51 6.22386 50.7761 6 50.5 6H49.5C49.2239 6 49 6.22386 49 6.5L49 53.5C49 53.7761 49.2239 54 49.5 54H50.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if(clickedAlign()==='baseline'){\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M50.5996 4V10.2929L52.246 8.64645L52.9531 9.35355L50.0996 12.2071L47.246 9.35355L47.9531 8.64645L49.5996 10.2929V4H50.5996Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9.35294 4H11.1012L13.4542 12H12.4119L11.8236 9.99994H8.63061L8.04236 12H7L9.35294 4ZM11.5295 8.99994L10.353 4.9999H10.1012L8.92473 8.99994H11.5295Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else{\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5V15.5C31 15.7761 30.7761 16 30.5 16H29.5C29.2239 16 29 15.7761 29 15.5V6.5ZM9 8.5C9 8.22386 9.22386 8 9.5 8H10.5C10.7761 8 11 8.22386 11 8.5V12.5C11 12.7761 10.7761 13 10.5 13H9.5C9.22386 13 9 12.7761 9 12.5V8.5ZM49.5 8C49.2239 8 49 8.22386 49 8.5V14.5C49 14.7761 49.2239 15 49.5 15H50.5C50.7761 15 51 14.7761 51 14.5V8.5C51 8.22386 50.7761 8 50.5 8H49.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedJustify()==='space-around'){ @if(clickedAlign()==='stretch'){\n <svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8 30L5 32L5 28L8 30Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 53.5C13 53.7761 12.7761 54 12.5 54H11.5C11.2239 54 11 53.7761 11 53.5L11 6.5C11 6.22386 11.2239 6 11.5 6H12.5C12.7761 6 13 6.22386 13 6.5L13 53.5ZM31 53.5C31 53.7761 30.7761 54 30.5 54H29.5C29.2239 54 29 53.7761 29 53.5L29 6.5C29 6.22386 29.2239 6 29.5 6H30.5C30.7761 6 31 6.22386 31 6.5L31 53.5ZM48.5 54C48.7761 54 49 53.7761 49 53.5L49 6.5C49 6.22386 48.7761 6 48.5 6H47.5C47.2239 6 47 6.22386 47 6.5L47 53.5C47 53.7761 47.2239 54 47.5 54H48.5Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M52 30L55 28L55 32L52 30Z\" fill=\"currentColor\"></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg\n data-wf-icon=\"NineBoxAlignItemsRowSpaceAroundBaselineIcon\"\n width=\"60\"\n height=\"20\"\n viewBox=\"0 0 60 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M40.8529 4V10.2929L42.4993 8.64645L43.2064 9.35355L40.3529 12.2071L37.4993 9.35355L38.2064 8.64645L39.8529 10.2929V4H40.8529Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M19.3523 4H21.1006L23.4536 12H22.4112L21.8229 9.99994H18.6299L18.0417 12H16.9993L19.3523 4ZM21.5288 8.99994L20.3523 4.9999H20.1005L18.924 8.99994H21.5288Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M6 14H54V15H6V14Z\" fill=\"currentColor\"></path>\n </svg>\n } @else {\n <svg width=\"60\" height=\"20\" viewBox=\"0 0 60 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"11\" y=\"9\" width=\"2\" height=\"5\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"29\" y=\"6\" width=\"2\" height=\"10\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <rect x=\"47\" y=\"8\" width=\"2\" height=\"7\" rx=\"0.5\" fill=\"currentColor\"></rect>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 13L8 11L5 9V13ZM55 9L52 11L55 13V9Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } } @else if(clickedAlign()==='flex-start'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3.5 7C3.22386 7 3 6.77614 3 6.5V3.5C3 3.22386 3.22386 3 3.5 3H4.5C4.77614 3 5 3.22386 5 3.5V6.5C5 6.77614 4.77614 7 4.5 7H3.5ZM7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM11.5 3C11.2239 3 11 3.22386 11 3.5V8.5C11 8.77614 11.2239 9 11.5 9H12.5C12.7761 9 13 8.77614 13 8.5V3.5C13 3.22386 12.7761 3 12.5 3H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if (clickedAlign()==='center') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.5 13C7.22386 13 7 12.7761 7 12.5V3.5C7 3.22386 7.22386 3 7.5 3H8.5C8.77614 3 9 3.22386 9 3.5V12.5C9 12.7761 8.77614 13 8.5 13H7.5ZM3.5 10C3.22386 10 3 9.77614 3 9.5V6.5C3 6.22386 3.22386 6 3.5 6H4.5C4.77614 6 5 6.22386 5 6.5V9.5C5 9.77614 4.77614 10 4.5 10H3.5ZM11.5 5C11.2239 5 11 5.22386 11 5.5V10.5C11 10.7761 11.2239 11 11.5 11H12.5C12.7761 11 13 10.7761 13 10.5V5.5C13 5.22386 12.7761 5 12.5 5H11.5Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='flex-end') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.5 7C11.2239 7 11 7.22386 11 7.5L11 12.5C11 12.7761 11.2239 13 11.5 13L12.5 13C12.7761 13 13 12.7761 13 12.5L13 7.5C13 7.22386 12.7761 7 12.5 7L11.5 7ZM7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.5C7 3.22386 7.22386 3 7.5 3L8.5 3C8.77614 3 9 3.22386 9 3.5L9 12.5C9 12.7761 8.77614 13 8.5 13L7.5 13ZM3.5 13C3.22386 13 3 12.7761 3 12.5L3 9.5C3 9.22386 3.22386 9 3.5 9L4.5 9C4.77614 9 5 9.22386 5 9.5L5 12.5C5 12.7761 4.77614 13 4.5 13L3.5 13Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n } @else if (clickedAlign()==='stretch') {\n <svg width=\"20\" height=\"60\" viewBox=\"0 0 20 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7 53.5C7 53.7761 6.77614 54 6.5 54L5.5 54C5.22386 54 5 53.7761 5 53.5L5 6.5C5 6.22386 5.22386 6 5.5 6L6.5 6C6.77614 6 7 6.22386 7 6.5L7 53.5ZM11 53.5C11 53.7761 10.7761 54 10.5 54L9.5 54C9.22386 54 9 53.7761 9 53.5L9 6.5C9 6.22386 9.22386 6 9.5 6L10.5 6C10.7761 6 11 6.22386 11 6.5L11 53.5ZM14.5 54C14.7761 54 15 53.7761 15 53.5L15 6.5C15 6.22386 14.7761 6 14.5 6L13.5 6C13.2239 6 13 6.22386 13 6.5L13 53.5C13 53.7761 13.2239 54 13.5 54L14.5 54Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }@else if(clickedAlign()==='baseline'){\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 2V8.29289L14.6464 6.64645L15.3536 7.35355L12.5 10.2071L9.64645 7.35355L10.3536 6.64645L12 8.29289V2H13Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M16 12L1 12V13L16 13V12Z\" fill=\"currentColor\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.62582 2H6.37412L8.72712 10H7.68476L7.09649 7.99994H3.90349L3.31524 10H2.27288L4.62582 2ZM6.80237 6.99994L5.62585 2.9999H5.37409L4.19761 6.99994H6.80237Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n }\n </div>\n </div>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-justify-items-start ax-gap-2\">\n <span class=\"ax-order-1\">X:</span>\n <div class=\"ax-w-32\"\n [style.order]=\"flexDirectionIsColumn()?'4':'2'\">\n <!-- <ax-select-box\n [dataSource]=\"flexDirectionIsColumn()? alignDataSource : justifyDataSource\"\n [ngModel]=\"flexDirectionIsColumn()? selectedAlign : selectedJustify\"\n (ngModelChange)=\"flexDirectionIsColumn()? selectedAlign = $event : selectedJustify = $event\"\n (onValueChanged)=\"flexDirectionIsColumn()? onAlignChange($event) :onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box> -->\n <ax-select-box\n [dataSource]=\"justifyDataSource\"\n [(ngModel)]=\"selectedJustify\"\n (onValueChanged)=\"onJustifyChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n <span class=\"ax-order-3\">Y:</span>\n <div class=\"ax-w-32\" [style.order]=\"flexDirectionIsColumn()?'2':'4'\">\n <ax-select-box\n [dataSource]=\"alignDataSource\"\n [(ngModel)]=\"selectedAlign\"\n (onValueChanged)=\"onAlignChange($event)\"\n textField=\"label\"\n valueField=\"value\"\n placeholder=\"Choose...\"\n >\n </ax-select-box>\n </div>\n </div>\n </div>\n <span>Gap</span>\n <div class=\"ax-flex ax-gap-2 ax-justify-between\">\n @if(gapMode()==='both') {\n <ax-range-slider\n class=\"ax-w-32\"\n color=\"neutral\"\n [ngModel]=\"gap().both\"\n (ngModelChange)=\"setGap($event ?? 0, 'both')\"\n ></ax-range-slider>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().both\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'both')\"\n class=\"ax-min-w-6\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n } @else {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span class=\"ax-text-xs\">Row</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().x\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'x')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n <span class=\"ax-text-xs\">Column</span>\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"999\"\n [value]=\"gap().y\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setGap($event ?? 0, 'y')\"\n class=\"ax-min-w-5\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }\n <button (click)=\"setGapMode()\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n @if(gapMode()==='both'){\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7L5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V7C11.5523 7 12 7.44772 12 8V12C12 12.5523 11.5523 13 11 13H5C4.44772 13 4 12.5523 4 12V8C4 7.44771 4.44772 7 5 7ZM6 5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5V7H6V5ZM5 12V8H11V12H5Z\"\n fill=\"currentColor\"\n ></path>\n }@else {\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9 5C9 3.89543 9.89543 3 11 3C12.1046 3 13 3.89543 13 5V6H14V5C14 3.34315 12.6569 2 11 2C9.34315 2 8 3.34315 8 5V7H3C2.44772 7 2 7.44771 2 8V12C2 12.5523 2.44772 13 3 13H9C9.55228 13 10 12.5523 10 12V8C10 7.44772 9.55228 7 9 7V5ZM3 8H9V12H3V8Z\"\n fill=\"currentColor\"\n ></path>\n }\n </svg>\n </button>\n </div>\n</div>", styles: [".axp-flex-option ax-range-slider{padding:.25rem!important}.axp-flex-option ax-range-slider .ax-range-slider-handler{width:.75rem!important;height:.75rem!important}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child{height:2rem!important;border-radius:.3rem!important;font-size:12px}.axp-flex-option ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}.axp-flex-option ax-button-group>ax-button-group-item{width:2.62rem}\n"] }]
|
|
9589
9783
|
}] });
|
|
9590
9784
|
|
|
9591
|
-
var
|
|
9785
|
+
var flexOptionsWidgetEditor_component = /*#__PURE__*/Object.freeze({
|
|
9592
9786
|
__proto__: null,
|
|
9593
|
-
|
|
9787
|
+
AXPFlexOptionsWidgetEditComponent: AXPFlexOptionsWidgetEditComponent
|
|
9594
9788
|
});
|
|
9595
9789
|
|
|
9596
|
-
const
|
|
9597
|
-
name: '
|
|
9598
|
-
title: '
|
|
9599
|
-
description: 'Make an Elements
|
|
9790
|
+
const AXPFlexOptionsWidget = {
|
|
9791
|
+
name: 'flex-options',
|
|
9792
|
+
title: 'Flex Options',
|
|
9793
|
+
description: 'Make an Elements Flex',
|
|
9600
9794
|
group: AXP_WIDGETS_EDITOR_GROUP,
|
|
9601
|
-
icon: 'fa-solid fa-
|
|
9795
|
+
icon: 'fa-solid fa-ellipsis-h',
|
|
9602
9796
|
type: 'editor',
|
|
9603
9797
|
properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY],
|
|
9604
9798
|
components: {
|
|
9605
9799
|
edit: {
|
|
9606
|
-
component: () => Promise.resolve().then(function () { return
|
|
9800
|
+
component: () => Promise.resolve().then(function () { return flexOptionsWidgetEditor_component; }).then((c) => c.AXPFlexOptionsWidgetEditComponent),
|
|
9607
9801
|
},
|
|
9608
9802
|
},
|
|
9609
9803
|
visible: false,
|
|
@@ -9714,7 +9908,7 @@ class AXPSpacingWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9714
9908
|
return { clientX: touch.clientX, clientY: touch.clientY };
|
|
9715
9909
|
}
|
|
9716
9910
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSpacingWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9717
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPSpacingWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"axp-spacing-box ax-flex ax-justify-center ax-items-center ax-pt-4 ax-pb-2\">\n <div class=\"axp-spacing-inner-box\">\n <div class=\"axp-spacing-margin-box\">\n <!--MARGIN SVG DEFINE-->\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"224\" height=\"112\" class=\"area\">\n <mask id=\"margin-mask\" width=\"224\" height=\"112\">\n <rect fill=\"#000\" height=\"112\" width=\"224\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#fff\" height=\"112\" rx=\"4\" width=\"224\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#000\" height=\"66\" rx=\"4\" width=\"154\" x=\"35\" y=\"23\"></rect>\n </mask>\n <defs>\n <linearGradient id=\"FuseLinearGradient\" x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop stop-color=\"white\"></stop>\n <stop offset=\"1\" stop-color=\"white\" stop-opacity=\"0\"></stop>\n </linearGradient>\n </defs>\n\n <!--MARGIN TOP SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'top')\"\n (mousedown)=\"listenToMove($event, 'margin', 'top')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n h224\n l-36,24\n h-152\n l-36,-24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n h224\n l-36,24\n h-152\n l-36,-24z\n \"\n fill-opacity=\"0.12\"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"url(#FuseLinearGradient)\"\n d=\"\n m0,0\n h224\n l-36,24\n h-152\n l-36,-24z\n \"\n fill-opacity=\"0.02\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n <!--MARGIN RIGHT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'right')\"\n (mousedown)=\"listenToMove($event, 'margin', 'right')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m224,0\n v112\n l-36,-24\n v-64\n l36,-24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m224,0\n v112\n l-36,-24\n v-64\n l36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n <!--MARGIN BOTTOM SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'bottom')\"\n (mousedown)=\"listenToMove($event, 'margin', 'bottom')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,112\n h224\n l-36,-24\n h-152\n l-36,24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,112\n h224\n l-36,-24\n h-152\n l-36,24z\n \"\n fill-opacity=\"0.064\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n <!--MARGIN LEFT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'left')\"\n (mousedown)=\"listenToMove($event, 'margin', 'left')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n v112\n l36,-24\n v-64\n l-36,-24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n v112\n l36,-24\n v-64\n l-36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n </svg>\n\n <!--MARGIN TOP VALUE-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <span>{{ calculatedValues().margin.top + ' ' + units().margin.top }}</span>\n </div>\n </div>\n\n <!--MARGIN RIGHT VALUE-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <span>{{ calculatedValues().margin.right + ' ' + units().margin.right }}</span>\n </div>\n </div>\n\n <!--MARGIN BOTTOM VALUE-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <span>{{ calculatedValues().margin.bottom + ' ' + units().margin.bottom }}</span>\n </div>\n </div>\n\n <!--MARGIN LEFT VALUE-->\n <div tabindex=\"0\" style=\"grid-area: 2 / 1 / 3 / 2\" class=\"axp-spacing-value-container\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 1 / 3 / 2\">\n <span>{{ calculatedValues().margin.left + ' ' + units().margin.left }}</span>\n </div>\n </div>\n </div>\n\n <div class=\"axp-spacing-padding-box\">\n <!--SVG DEFINE-->\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"150\" height=\"62\" class=\"area\">\n <mask id=\"padding-mask\" width=\"150\" height=\"62\">\n <rect fill=\"#000\" height=\"60\" width=\"150\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#fff\" height=\"60\" rx=\"2\" width=\"150\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#000\" height=\"14\" rx=\"2\" width=\"80\" x=\"35\" y=\"23\"></rect>\n </mask>\n\n <!--PADDING TOP SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'top')\"\n (mousedown)=\"listenToMove($event, 'padding', 'top')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n h150\n l-36,24\n h-78\n l-36,-24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n h150\n l-36,24\n h-78\n l-36,-24z\n \"\n fill-opacity=\"0.064\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n\n <!--PADDING RIGHT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'right')\"\n (mousedown)=\"listenToMove($event, 'padding', 'right')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m150,0\n v60\n l-36,-24\n v-12\n l36,-24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m150,0\n v60\n l-36,-24\n v-12\n l36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n\n <!--PADDING BOTTOM SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'bottom')\"\n (mousedown)=\"listenToMove($event, 'padding', 'bottom')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,60\n h150\n l-36,-24\n h-78\n l-36,24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,60\n h150\n l-36,-24\n h-78\n l-36,24z\n \"\n fill-opacity=\"0.12\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n\n <!--PADDING LEFT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'left')\"\n (mousedown)=\"listenToMove($event, 'padding', 'left')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n v60\n l36,-24\n v-12\n l-36,-24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n v60\n l36,-24\n v-12\n l-36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n </svg>\n\n <!--PADDING TOP SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <span>{{ this.calculatedValues().padding.top + ' ' + units().padding.top }}</span>\n </div>\n </div>\n\n <!--PADDING RIGHT SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <span>{{ this.calculatedValues().padding.right + ' ' + units().padding.right }}</span>\n </div>\n </div>\n\n <!--PADDING BOTTOM SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <span>{{ this.calculatedValues().padding.bottom + ' ' + units().padding.bottom }}</span>\n </div>\n </div>\n\n <!--PADDING LEFT SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 2 / 1 / 3 / 2\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 1 / 3 / 2\">\n <span>{{ this.calculatedValues().padding.left + ' ' + units().padding.left }}</span>\n </div>\n </div>\n </div>\n\n <!--PADDING TEXT-->\n <svg class=\"axp-spacing-padding-text\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\">\n <text x=\"5\" y=\"10\" fill=\"white\" font-weight=\"500\" font-size=\"7\">PADDING</text>\n </svg>\n\n <!--MARGIN TEXT-->\n <svg class=\"axp-spacing-margin-text\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\">\n <text x=\"5\" y=\"10\" fill=\"white\" font-weight=\"500\" font-size=\"7\">MARGIN</text>\n </svg>\n </div>\n</div>\n\n<ng-template #template let-type=\"type\" let-side=\"side\" let-value=\"value\">\n <div\n class=\"axp-spacing-popup-container\"\n (keydown.control.b)=\"setSpacing(originalValues()[this.current().type][this.current().side], type, side)\"\n >\n <div class=\"axp-spacing-popover\">\n <!--SET EMPTY-->\n <div class=\"ax-size-4 ax-cursor-pointer\" (click)=\"setSpacing(0, type, side)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path opacity=\"0.4\" d=\"M14 2L14 13L10 13L10 2L14 2Z\" fill=\"currentColor\" fill-opacity=\"0.67\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.99995 7L7.99995 1H8.99995L8.99995 14H7.99995L7.99995 8L3.70706 8L5.85351 10.1464L5.1464 10.8536L1.79285 7.5L5.1464 4.14645L5.85351 4.85355L3.70706 7L7.99995 7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </div>\n\n <div class=\"ax-flex ax-justify-center ax-h-6 ax-flex-col\">\n <input\n type=\"range\"\n name=\"range\"\n [min]=\"0\"\n [max]=\"200\"\n [value]=\"this.calculatedValues()[this.current().type][this.current().side]\"\n (input)=\"setSpacing($event, type, side)\"\n />\n </div>\n <div>\n <!--INPUT NUMBER-->\n <div style=\"--local-gap: 8px\">\n <div\n style=\"\n gap: 8px;\n height: auto;\n display: flex;\n flex-flow: column;\n -webkit-box-align: stretch;\n align-items: stretch;\n -webkit-box-pack: start;\n position: relative;\n justify-content: stretch;\n width: 100%;\n -webkit-box-flex: 1;\n flex-grow: 1;\n \"\n >\n <div style=\"display: grid; grid-template-columns: 1fr auto; transform: translate3d(0px, 0px, 0px)\">\n <div\n data-legacy-styled=\"true\"\n style=\"\n grid-area: 1 / 1 / 2 / -1;\n align-items: stretch;\n background-color: var(--color-ui-input-background);\n border-color: var(--color-border-2);\n border-radius: 4px;\n border-style: solid;\n border-width: 1px;\n display: flex;\n flex: 0 1 auto;\n height: 24px;\n position: relative;\n \"\n >\n <input\n autocomplete=\"off\"\n data-wf-text-input=\"true\"\n name=\"spacing\"\n placeholder=\"\"\n aria-label=\"Edit spacing input\"\n type=\"text\"\n aria-disabled=\"false\"\n [value]=\"value\"\n (input)=\"setSpacing($event, type, side)\"\n style=\"\n padding-right: 20px;\n background-color: transparent;\n border-color: transparent;\n border-radius: 4px;\n border-style: solid;\n border-width: 0px;\n box-sizing: border-box;\n color: var(--color-text-primary);\n cursor: auto;\n display: block;\n font-family: inherit;\n font-size: inherit;\n height: 100%;\n line-height: 1;\n outline: transparent solid 2px;\n padding: 0px 4px;\n width: 100%;\n \"\n />\n </div>\n <div\n id=\"spacing-UnitSelect\"\n data-prevent-global-event-handlers=\"true\"\n tabindex=\"-1\"\n data-legacy-styled=\"true\"\n aria-expanded=\"false\"\n aria-haspopup=\"listbox\"\n data-focus=\"false\"\n style=\"\n border-color: transparent;\n outline: 0px;\n cursor: default;\n user-select: none;\n font-size: 9px;\n font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu,\n Cantarell, 'Helvetica Neue', Helvetica, Arial, 'Apple Color Emoji', 'Segoe UI Emoji',\n 'Segoe UI Symbol', sans-serif;\n line-height: 12px;\n letter-spacing: -0.115px;\n text-transform: none;\n color: var(--color-text-primary);\n place-self: center stretch;\n grid-area: 1 / 2 / 2 / 3;\n z-index: 1;\n min-width: 16px;\n border-radius: 1px;\n height: calc(100% - 2px);\n text-align: center;\n background: transparent;\n box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px;\n border-width: 0px;\n margin: 1px;\n position: relative;\n right: 2px;\n display: grid;\n grid-template-columns: auto;\n grid-auto-flow: column;\n justify-content: unset;\n width: 100%;\n flex-grow: unset;\n padding: 0px;\n box-sizing: border-box;\n --component-icon-color: var(--color-text-secondary);\n align-items: center;\n border-style: solid;\n \"\n >\n <div\n data-legacy-styled=\"true\"\n style=\"\n justify-self: start;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n \"\n >\n PX\n <!--PX-->\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"axp-spacing-template-values\">\n @for(i of FixedValues; track $index){\n <div\n (click)=\"setSpacing(i.value, type, side)\"\n class=\"hover:!ax-bg-gradient-to-b hover:!ax-from-white/20 hover:!ax-to-white/5 !ax-cursor-pointer\"\n [class]=\"i.colspan ? 'ax-col-span-' + i.colspan : ''\"\n [class]=\"i.rowspan ? 'ax-row-span-' + i.rowspan : ''\"\n tabindex=\"0\"\n style=\"\n border-bottom-color: var(--color-border-1);\n border-left-color: var(--color-border-1);\n border-right-color: var(--color-border-1);\n border-top-color: var(--color-border-1);\n outline: 0px;\n cursor: default;\n user-select: none;\n padding: 0px;\n box-sizing: border-box;\n font-family: inherit;\n font-size: inherit;\n --component-icon-color: var(--color-text-secondary);\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n border-radius: 4px;\n color: var(--color-action-secondary-text);\n background: var(--color-action-secondary-background);\n border-width: 0px;\n border-style: solid;\n box-shadow: var(--box-shadows-action-secondary);\n align-self: center;\n \"\n >\n <div class=\"ax-truncate\">\n {{ i.label }}\n <span class=\"ax-text-xs ax-text-neutral-400\"> {{ units()[this.current().type][this.current().side] }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n\n <div class=\"ax-h-[1px] ax-mt-1 ax-mb-1 ax-bg-border-1 ax-pointer-events-none\"></div>\n\n <div\n [class.ax-opacity-50]=\"\n originalValues()[this.current().type][this.current().side] ===\n calculatedValues()[this.current().type][this.current().side]\n \"\n (click)=\"setSpacing(originalValues()[this.current().type][this.current().side], type, side)\"\n tabindex=\"0\"\n class=\"ax-outline-none ax-select-none ax-py-1 ax-px-2 ax-my-1 ax-min-h-6 ax-cursor-pointer hover:!ax-bg-[#404040]\"\n >\n <div class=\"ax-flex ax-flex-row ax-items-center\">\n <div class=\"ax-min-w-6 ax-self-center ax-grow ax-basis-0\">\n <div class=\"ax-items-center ax-box-border ax-grid ax-grid-cols-[16px_1fr_auto] ax-gap-x-2 ax-gap-y-1\">\n <div class=\"ax-size-4\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M3.70712 5.00004L6.35357 2.35359L5.64646 1.64648L1.79291 5.50004L5.64646 9.35359L6.35357 8.64648L3.70712 6.00004H10C11.6569 6.00004 13 7.34318 13 9.00004C13 10.6569 11.6569 12 10 12H8.00001V13H10C12.2092 13 14 11.2092 14 9.00004C14 6.7909 12.2092 5.00004 10 5.00004H3.70712Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </div>\n <div>Reset</div>\n </div>\n </div>\n <div class=\"ax-self-center\">\n <div\n class=\"ax-cursor-default ax-select-none ax-text-[11.5px] ax-font-normal ax-leading-4 ax-tracking-tight ax-text-secondary ax-justify-self-end ax-ml-[1px]\"\n >\n <span><kbd>Ctrl</kbd> + <kbd>B</kbd></span>\n </div>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ax-popover #popover [openOn]=\"'click'\" [offsetY]=\"10\" [closeOn]=\"'clickOut'\">\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{\n type: this.current().type,\n side: this.current().side,\n value: this.calculatedValues()[this.current().type][this.current().side]\n }\"\n ></ng-container>\n</ax-popover>\n", styles: [".axp-spacing-box{--color-text-secondary: rgba(255, 255, 255, .67);--color-ui-scrollbar-thumb: rgba(255, 255, 255, .67);--color-background-1: #292929;--color-text-secondary: white;--color-border-2: rgba(255, 255, 255, .16);--color-changed: rgb(167, 209, 255);--color-background: rgba(0, 106, 204, .18)}.axp-spacing-box .axp-spacing-inner-box{transform:scale(1.2);position:relative;display:grid;width:224px;height:112px;grid-template-columns:36px 1px 36px 1fr 36px 1px 36px;grid-template-rows:24px 2px 24px 1fr 24px 2px 24px;outline-style:none;cursor:default;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-value-container{pointer-events:none;border:none;outline:0px;cursor:default;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;place-self:center;padding:2px;height:auto;width:auto;font-family:inherit;font-size:inherit;position:relative;border-radius:4px;color:var(--color-text-secondary);background:transparent;box-sizing:border-box;box-shadow:none}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-value-container .axp-spacing-value-field{cursor:default;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:10px;letter-spacing:-.115px;display:flex;color:var(--color-text-secondary);background:transparent;padding:2px;margin:0;border-radius:2px;max-width:100%;box-sizing:content-box;place-self:center;position:relative;opacity:1;align-items:center;justify-content:center}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-margin-box{border-radius:4px;grid-area:1/1/-1/-1;display:grid;grid-template-columns:36px 1fr 36px;grid-template-rows:24px minmax(8px,1fr) 24px;justify-items:center;width:224px;height:112px}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-padding-box{border-radius:4px;grid-area:3/3/span 3/span 3;display:grid;grid-template-columns:36px 1fr 36px;grid-template-rows:24px minmax(8px,1fr) 24px;justify-items:center;width:150px;height:60px}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-padding-text{grid-area:3/3/span 3/span 3;pointer-events:none;position:relative}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-margin-text{grid-area:1/1/-1/-1;pointer-events:none;position:relative}.axp-spacing-popup-container{--color-action-secondary-text: white;--color-action-secondary-background: linear-gradient( 180deg, rgba(255, 255, 255, .13) 0%, rgba(255, 255, 255, .11) 100% );--box-shadows-action-secondary: 0px .5px 1px rgba(0, 0, 0, .8), inset 0px .5px .5px rgba(255, 255, 255, .12);--color-border-1: rgba(255, 255, 255, .13);max-width:239px;min-width:201px;background:#353535;border-radius:.5rem;color:var(--color-text-secondary, white);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,Helvetica,Arial,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,sans-serif;font-size:11.5px;line-height:16px}.axp-spacing-popup-container .axp-spacing-popover{display:grid;grid-template-columns:16px 1fr 56px;grid-template-rows:24px 1fr;align-items:center;gap:8px;width:241px;padding:8px}.axp-spacing-popup-container .axp-spacing-popover .axp-spacing-template-values{display:grid;grid-area:2/1/3/-1;grid-template-columns:repeat(5,1fr);grid-template-rows:24px 24px;gap:4px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;cursor:pointer;outline:none;overflow:hidden;border-radius:12px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-webkit-slider-runnable-track{height:10px;background:#ccc;border-radius:12px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-moz-range-track{height:10px;background:#ccc;border-radius:12px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:10px;width:10px;background-color:#fff;border-radius:50%;border:1px solid #353535;box-shadow:-407px 0 0 400px rgba(41,41,41,.44)}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-moz-range-thumb{height:10px;width:10px;background-color:#fff;border-radius:50%;border:1px solid #353535;box-shadow:-407px 0 0 400px rgba(41,41,41,.44)}.area{grid-area:1/1/-1/-1;overflow:hidden;border-radius:2px;filter:drop-shadow(rgba(255,255,255,.2) 0px -.5px 0px) drop-shadow(rgba(0,0,0,.4) 0px 0px 1px) drop-shadow(rgba(0,0,0,.2) 0px 1px 0px)}\n"], dependencies: [{ kind: "ngmodule", type: AXNumberBoxModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i1$7.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXRangeSliderModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9911
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPSpacingWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"axp-spacing-box ax-flex ax-justify-center ax-items-center ax-pt-4 ax-pb-2\">\n <div class=\"axp-spacing-inner-box\">\n <div class=\"axp-spacing-margin-box\">\n <!--MARGIN SVG DEFINE-->\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"224\" height=\"112\" class=\"area\">\n <mask id=\"margin-mask\" width=\"224\" height=\"112\">\n <rect fill=\"#000\" height=\"112\" width=\"224\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#fff\" height=\"112\" rx=\"4\" width=\"224\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#000\" height=\"66\" rx=\"4\" width=\"154\" x=\"35\" y=\"23\"></rect>\n </mask>\n <defs>\n <linearGradient id=\"FuseLinearGradient\" x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop stop-color=\"white\"></stop>\n <stop offset=\"1\" stop-color=\"white\" stop-opacity=\"0\"></stop>\n </linearGradient>\n </defs>\n\n <!--MARGIN TOP SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'top')\"\n (mousedown)=\"listenToMove($event, 'margin', 'top')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n h224\n l-36,24\n h-152\n l-36,-24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n h224\n l-36,24\n h-152\n l-36,-24z\n \"\n fill-opacity=\"0.12\"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"url(#FuseLinearGradient)\"\n d=\"\n m0,0\n h224\n l-36,24\n h-152\n l-36,-24z\n \"\n fill-opacity=\"0.02\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n <!--MARGIN RIGHT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'right')\"\n (mousedown)=\"listenToMove($event, 'margin', 'right')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m224,0\n v112\n l-36,-24\n v-64\n l36,-24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m224,0\n v112\n l-36,-24\n v-64\n l36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n <!--MARGIN BOTTOM SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'bottom')\"\n (mousedown)=\"listenToMove($event, 'margin', 'bottom')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,112\n h224\n l-36,-24\n h-152\n l-36,24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,112\n h224\n l-36,-24\n h-152\n l-36,24z\n \"\n fill-opacity=\"0.064\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n <!--MARGIN LEFT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'margin', 'left')\"\n (mousedown)=\"listenToMove($event, 'margin', 'left')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n v112\n l36,-24\n v-64\n l-36,-24z\n \"\n mask=\"url(#margin-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n v112\n l36,-24\n v-64\n l-36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#margin-mask)\"\n ></path>\n </g>\n </g>\n </svg>\n\n <!--MARGIN TOP VALUE-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <span>{{ calculatedValues().margin.top + ' ' + units().margin.top }}</span>\n </div>\n </div>\n\n <!--MARGIN RIGHT VALUE-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <span>{{ calculatedValues().margin.right + ' ' + units().margin.right }}</span>\n </div>\n </div>\n\n <!--MARGIN BOTTOM VALUE-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <span>{{ calculatedValues().margin.bottom + ' ' + units().margin.bottom }}</span>\n </div>\n </div>\n\n <!--MARGIN LEFT VALUE-->\n <div tabindex=\"0\" style=\"grid-area: 2 / 1 / 3 / 2\" class=\"axp-spacing-value-container\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 1 / 3 / 2\">\n <span>{{ calculatedValues().margin.left + ' ' + units().margin.left }}</span>\n </div>\n </div>\n </div>\n\n <div class=\"axp-spacing-padding-box\">\n <!--SVG DEFINE-->\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"150\" height=\"62\" class=\"area\">\n <mask id=\"padding-mask\" width=\"150\" height=\"62\">\n <rect fill=\"#000\" height=\"60\" width=\"150\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#fff\" height=\"60\" rx=\"2\" width=\"150\" x=\"0\" y=\"0\"></rect>\n <rect fill=\"#000\" height=\"14\" rx=\"2\" width=\"80\" x=\"35\" y=\"23\"></rect>\n </mask>\n\n <!--PADDING TOP SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'top')\"\n (mousedown)=\"listenToMove($event, 'padding', 'top')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n h150\n l-36,24\n h-78\n l-36,-24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n h150\n l-36,24\n h-78\n l-36,-24z\n \"\n fill-opacity=\"0.064\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n\n <!--PADDING RIGHT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'right')\"\n (mousedown)=\"listenToMove($event, 'padding', 'right')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m150,0\n v60\n l-36,-24\n v-12\n l36,-24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m150,0\n v60\n l-36,-24\n v-12\n l36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n\n <!--PADDING BOTTOM SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'bottom')\"\n (mousedown)=\"listenToMove($event, 'padding', 'bottom')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,60\n h150\n l-36,-24\n h-78\n l-36,24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,60\n h150\n l-36,-24\n h-78\n l-36,24z\n \"\n fill-opacity=\"0.12\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n\n <!--PADDING LEFT SVG-->\n <g\n class=\"hover:ax-brightness-75\"\n style=\"cursor: s-resize\"\n (click)=\"openPopUp($event, 'padding', 'left')\"\n (mousedown)=\"listenToMove($event, 'padding', 'left')\"\n >\n <g>\n <path\n mode=\"delta\"\n fill=\"var(--color-background-1)\"\n d=\"\n m0,0\n v60\n l36,-24\n v-12\n l-36,-24z\n \"\n mask=\"url(#padding-mask)\"\n ></path>\n <path\n mode=\"delta\"\n fill=\"white\"\n d=\"\n m0,0\n v60\n l36,-24\n v-12\n l-36,-24z\n \"\n fill-opacity=\"0.094\"\n mask=\"url(#padding-mask)\"\n ></path>\n </g>\n </g>\n </svg>\n\n <!--PADDING TOP SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 1 / 2 / 2 / 3\">\n <span>{{ this.calculatedValues().padding.top + ' ' + units().padding.top }}</span>\n </div>\n </div>\n\n <!--PADDING RIGHT SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 3 / 3 / 4\">\n <span>{{ this.calculatedValues().padding.right + ' ' + units().padding.right }}</span>\n </div>\n </div>\n\n <!--PADDING BOTTOM SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 3 / 2 / 4 / 3\">\n <span>{{ this.calculatedValues().padding.bottom + ' ' + units().padding.bottom }}</span>\n </div>\n </div>\n\n <!--PADDING LEFT SVG-->\n <div tabindex=\"0\" class=\"axp-spacing-value-container\" style=\"grid-area: 2 / 1 / 3 / 2\">\n <div class=\"axp-spacing-value-field\" style=\"grid-area: 2 / 1 / 3 / 2\">\n <span>{{ this.calculatedValues().padding.left + ' ' + units().padding.left }}</span>\n </div>\n </div>\n </div>\n\n <!--PADDING TEXT-->\n <svg class=\"axp-spacing-padding-text\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\">\n <text x=\"5\" y=\"10\" fill=\"white\" font-weight=\"500\" font-size=\"7\">PADDING</text>\n </svg>\n\n <!--MARGIN TEXT-->\n <svg class=\"axp-spacing-margin-text\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\">\n <text x=\"5\" y=\"10\" fill=\"white\" font-weight=\"500\" font-size=\"7\">MARGIN</text>\n </svg>\n </div>\n</div>\n\n<ng-template #template let-type=\"type\" let-side=\"side\" let-value=\"value\">\n <div\n class=\"axp-spacing-popup-container\"\n (keydown.control.b)=\"setSpacing(originalValues()[this.current().type][this.current().side], type, side)\"\n >\n <div class=\"axp-spacing-popover\">\n <!--SET EMPTY-->\n <div class=\"ax-size-4 ax-cursor-pointer\" (click)=\"setSpacing(0, type, side)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path opacity=\"0.4\" d=\"M14 2L14 13L10 13L10 2L14 2Z\" fill=\"currentColor\" fill-opacity=\"0.67\"></path>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.99995 7L7.99995 1H8.99995L8.99995 14H7.99995L7.99995 8L3.70706 8L5.85351 10.1464L5.1464 10.8536L1.79285 7.5L5.1464 4.14645L5.85351 4.85355L3.70706 7L7.99995 7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </div>\n\n <div class=\"ax-flex ax-justify-center ax-h-6 ax-flex-col\">\n <input\n type=\"range\"\n name=\"range\"\n [min]=\"0\"\n [max]=\"200\"\n [value]=\"this.calculatedValues()[this.current().type][this.current().side]\"\n (input)=\"setSpacing($event, type, side)\"\n />\n </div>\n <div>\n <!--INPUT NUMBER-->\n <div style=\"--local-gap: 8px\">\n <div\n style=\"\n gap: 8px;\n height: auto;\n display: flex;\n flex-flow: column;\n -webkit-box-align: stretch;\n align-items: stretch;\n -webkit-box-pack: start;\n position: relative;\n justify-content: stretch;\n width: 100%;\n -webkit-box-flex: 1;\n flex-grow: 1;\n \"\n >\n <div style=\"display: grid; grid-template-columns: 1fr auto; transform: translate3d(0px, 0px, 0px)\">\n <div\n data-legacy-styled=\"true\"\n style=\"\n grid-area: 1 / 1 / 2 / -1;\n align-items: stretch;\n background-color: var(--color-ui-input-background);\n border-color: var(--color-border-2);\n border-radius: 4px;\n border-style: solid;\n border-width: 1px;\n display: flex;\n flex: 0 1 auto;\n height: 24px;\n position: relative;\n \"\n >\n <input\n autocomplete=\"off\"\n data-wf-text-input=\"true\"\n name=\"spacing\"\n placeholder=\"\"\n aria-label=\"Edit spacing input\"\n type=\"text\"\n aria-disabled=\"false\"\n [value]=\"value\"\n (input)=\"setSpacing($event, type, side)\"\n style=\"\n padding-right: 20px;\n background-color: transparent;\n border-color: transparent;\n border-radius: 4px;\n border-style: solid;\n border-width: 0px;\n box-sizing: border-box;\n color: var(--color-text-primary);\n cursor: auto;\n display: block;\n font-family: inherit;\n font-size: inherit;\n height: 100%;\n line-height: 1;\n outline: transparent solid 2px;\n padding: 0px 4px;\n width: 100%;\n \"\n />\n </div>\n <div\n id=\"spacing-UnitSelect\"\n data-prevent-global-event-handlers=\"true\"\n tabindex=\"-1\"\n data-legacy-styled=\"true\"\n aria-expanded=\"false\"\n aria-haspopup=\"listbox\"\n data-focus=\"false\"\n style=\"\n border-color: transparent;\n outline: 0px;\n cursor: default;\n user-select: none;\n font-size: 9px;\n font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu,\n Cantarell, 'Helvetica Neue', Helvetica, Arial, 'Apple Color Emoji', 'Segoe UI Emoji',\n 'Segoe UI Symbol', sans-serif;\n line-height: 12px;\n letter-spacing: -0.115px;\n text-transform: none;\n color: var(--color-text-primary);\n place-self: center stretch;\n grid-area: 1 / 2 / 2 / 3;\n z-index: 1;\n min-width: 16px;\n border-radius: 1px;\n height: calc(100% - 2px);\n text-align: center;\n background: transparent;\n box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px;\n border-width: 0px;\n margin: 1px;\n position: relative;\n right: 2px;\n display: grid;\n grid-template-columns: auto;\n grid-auto-flow: column;\n justify-content: unset;\n width: 100%;\n flex-grow: unset;\n padding: 0px;\n box-sizing: border-box;\n --component-icon-color: var(--color-text-secondary);\n align-items: center;\n border-style: solid;\n \"\n >\n <div\n data-legacy-styled=\"true\"\n style=\"\n justify-self: start;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n \"\n >\n PX\n <!--PX-->\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"axp-spacing-template-values\">\n @for(i of FixedValues; track $index){\n <div\n (click)=\"setSpacing(i.value, type, side)\"\n class=\"hover:!ax-bg-gradient-to-b hover:!ax-from-white/20 hover:!ax-to-white/5 !ax-cursor-pointer\"\n [class]=\"i.colspan ? 'ax-col-span-' + i.colspan : ''\"\n [class]=\"i.rowspan ? 'ax-row-span-' + i.rowspan : ''\"\n tabindex=\"0\"\n style=\"\n border-bottom-color: var(--color-border-1);\n border-left-color: var(--color-border-1);\n border-right-color: var(--color-border-1);\n border-top-color: var(--color-border-1);\n outline: 0px;\n cursor: default;\n user-select: none;\n padding: 0px;\n box-sizing: border-box;\n font-family: inherit;\n font-size: inherit;\n --component-icon-color: var(--color-text-secondary);\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n border-radius: 4px;\n color: var(--color-action-secondary-text);\n background: var(--color-action-secondary-background);\n border-width: 0px;\n border-style: solid;\n box-shadow: var(--box-shadows-action-secondary);\n align-self: center;\n \"\n >\n <div class=\"ax-truncate\">\n {{ i.label }}\n <span class=\"ax-text-xs ax-text-neutral-400\"> {{ units()[this.current().type][this.current().side] }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n\n <div class=\"ax-h-[1px] ax-mt-1 ax-mb-1 ax-bg-border-1 ax-pointer-events-none\"></div>\n\n <div\n [class.ax-opacity-50]=\"\n originalValues()[this.current().type][this.current().side] ===\n calculatedValues()[this.current().type][this.current().side]\n \"\n (click)=\"setSpacing(originalValues()[this.current().type][this.current().side], type, side)\"\n tabindex=\"0\"\n class=\"ax-outline-none ax-select-none ax-py-1 ax-px-2 ax-my-1 ax-min-h-6 ax-cursor-pointer hover:!ax-bg-[#404040]\"\n >\n <div class=\"ax-flex ax-flex-row ax-items-center\">\n <div class=\"ax-min-w-6 ax-self-center ax-grow ax-basis-0\">\n <div class=\"ax-items-center ax-box-border ax-grid ax-grid-cols-[16px_1fr_auto] ax-gap-x-2 ax-gap-y-1\">\n <div class=\"ax-size-4\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M3.70712 5.00004L6.35357 2.35359L5.64646 1.64648L1.79291 5.50004L5.64646 9.35359L6.35357 8.64648L3.70712 6.00004H10C11.6569 6.00004 13 7.34318 13 9.00004C13 10.6569 11.6569 12 10 12H8.00001V13H10C12.2092 13 14 11.2092 14 9.00004C14 6.7909 12.2092 5.00004 10 5.00004H3.70712Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </div>\n <div>Reset</div>\n </div>\n </div>\n <div class=\"ax-self-center\">\n <div\n class=\"ax-cursor-default ax-select-none ax-text-[11.5px] ax-font-normal ax-leading-4 ax-tracking-tight ax-text-secondary ax-justify-self-end ax-ml-[1px]\"\n >\n <span><kbd>Ctrl</kbd> + <kbd>B</kbd></span>\n </div>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ax-popover #popover [openOn]=\"'click'\" [offsetY]=\"10\" [closeOn]=\"'clickOut'\">\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{\n type: this.current().type,\n side: this.current().side,\n value: this.calculatedValues()[this.current().type][this.current().side]\n }\"\n ></ng-container>\n</ax-popover>\n", styles: [".axp-spacing-box{--color-text-secondary: rgba(255, 255, 255, .67);--color-ui-scrollbar-thumb: rgba(255, 255, 255, .67);--color-background-1: #292929;--color-text-secondary: white;--color-border-2: rgba(255, 255, 255, .16);--color-changed: rgb(167, 209, 255);--color-background: rgba(0, 106, 204, .18)}.axp-spacing-box .axp-spacing-inner-box{transform:scale(1.2);position:relative;display:grid;width:224px;height:112px;grid-template-columns:36px 1px 36px 1fr 36px 1px 36px;grid-template-rows:24px 2px 24px 1fr 24px 2px 24px;outline-style:none;cursor:default;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-value-container{pointer-events:none;border:none;outline:0px;cursor:default;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;place-self:center;padding:2px;height:auto;width:auto;font-family:inherit;font-size:inherit;position:relative;border-radius:4px;color:var(--color-text-secondary);background:transparent;box-sizing:border-box;box-shadow:none}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-value-container .axp-spacing-value-field{cursor:default;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:10px;letter-spacing:-.115px;display:flex;color:var(--color-text-secondary);background:transparent;padding:2px;margin:0;border-radius:2px;max-width:100%;box-sizing:content-box;place-self:center;position:relative;opacity:1;align-items:center;justify-content:center}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-margin-box{border-radius:4px;grid-area:1/1/-1/-1;display:grid;grid-template-columns:36px 1fr 36px;grid-template-rows:24px minmax(8px,1fr) 24px;justify-items:center;width:224px;height:112px}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-padding-box{border-radius:4px;grid-area:3/3/span 3/span 3;display:grid;grid-template-columns:36px 1fr 36px;grid-template-rows:24px minmax(8px,1fr) 24px;justify-items:center;width:150px;height:60px}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-padding-text{grid-area:3/3/span 3/span 3;pointer-events:none;position:relative}.axp-spacing-box .axp-spacing-inner-box .axp-spacing-margin-text{grid-area:1/1/-1/-1;pointer-events:none;position:relative}.axp-spacing-popup-container{--color-action-secondary-text: white;--color-action-secondary-background: linear-gradient( 180deg, rgba(255, 255, 255, .13) 0%, rgba(255, 255, 255, .11) 100% );--box-shadows-action-secondary: 0px .5px 1px rgba(0, 0, 0, .8), inset 0px .5px .5px rgba(255, 255, 255, .12);--color-border-1: rgba(255, 255, 255, .13);max-width:239px;min-width:201px;background:#353535;border-radius:.5rem;color:var(--color-text-secondary, white);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,Helvetica,Arial,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,sans-serif;font-size:11.5px;line-height:16px}.axp-spacing-popup-container .axp-spacing-popover{display:grid;grid-template-columns:16px 1fr 56px;grid-template-rows:24px 1fr;align-items:center;gap:8px;width:241px;padding:8px}.axp-spacing-popup-container .axp-spacing-popover .axp-spacing-template-values{display:grid;grid-area:2/1/3/-1;grid-template-columns:repeat(5,1fr);grid-template-rows:24px 24px;gap:4px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;cursor:pointer;outline:none;overflow:hidden;border-radius:12px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-webkit-slider-runnable-track{height:10px;background:#ccc;border-radius:12px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-moz-range-track{height:10px;background:#ccc;border-radius:12px}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:10px;width:10px;background-color:#fff;border-radius:50%;border:1px solid #353535;box-shadow:-407px 0 0 400px rgba(41,41,41,.44)}.axp-spacing-popup-container .axp-spacing-popover input[type=range]::-moz-range-thumb{height:10px;width:10px;background-color:#fff;border-radius:50%;border:1px solid #353535;box-shadow:-407px 0 0 400px rgba(41,41,41,.44)}.area{grid-area:1/1/-1/-1;overflow:hidden;border-radius:2px;filter:drop-shadow(rgba(255,255,255,.2) 0px -.5px 0px) drop-shadow(rgba(0,0,0,.4) 0px 0px 1px) drop-shadow(rgba(0,0,0,.2) 0px 1px 0px)}\n"], dependencies: [{ kind: "ngmodule", type: AXNumberBoxModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i1$8.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXRangeSliderModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9718
9912
|
}
|
|
9719
9913
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSpacingWidgetEditComponent, decorators: [{
|
|
9720
9914
|
type: Component,
|
|
@@ -9769,7 +9963,7 @@ class AXPCronJobWidgetEditComponent extends AXPWidgetComponent {
|
|
|
9769
9963
|
this.setValue(e.data);
|
|
9770
9964
|
}
|
|
9771
9965
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPCronJobWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9772
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPCronJobWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container > </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i1$
|
|
9966
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPCronJobWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container > </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i1$9.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9773
9967
|
}
|
|
9774
9968
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPCronJobWidgetEditComponent, decorators: [{
|
|
9775
9969
|
type: Component,
|
|
@@ -9917,7 +10111,7 @@ class AXPQrcodeWidgetViewComponent extends AXPWidgetComponent {
|
|
|
9917
10111
|
>
|
|
9918
10112
|
</ax-qrcode>
|
|
9919
10113
|
}
|
|
9920
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXQrcodeModule }, { kind: "component", type: i1$
|
|
10114
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXQrcodeModule }, { kind: "component", type: i1$a.AXQrcodeComponent, selector: "ax-qrcode", inputs: ["content", "size", "level", "color", "backgroundColor", "outputType"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9921
10115
|
}
|
|
9922
10116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPQrcodeWidgetViewComponent, decorators: [{
|
|
9923
10117
|
type: Component,
|
|
@@ -10221,6 +10415,7 @@ class AXPBooleanFilterWidgetEditComponent extends AXPWidgetComponent {
|
|
|
10221
10415
|
this.value = computed(() => this.getValue()?.value);
|
|
10222
10416
|
this.trulyText = computed(() => this.options()['trulyText']);
|
|
10223
10417
|
this.falsyText = computed(() => this.options()['falsyText']);
|
|
10418
|
+
this.translateService = inject(AXTranslationService);
|
|
10224
10419
|
this.items = [];
|
|
10225
10420
|
this.dataSource = new AXDataSource({
|
|
10226
10421
|
load: () => {
|
|
@@ -10230,16 +10425,17 @@ class AXPBooleanFilterWidgetEditComponent extends AXPWidgetComponent {
|
|
|
10230
10425
|
});
|
|
10231
10426
|
},
|
|
10232
10427
|
byKey: (id) => {
|
|
10233
|
-
const item = this.items.find((c) => c.value
|
|
10428
|
+
const item = this.items.find((c) => c.value?.toString() == id);
|
|
10234
10429
|
return Promise.resolve(item);
|
|
10235
10430
|
},
|
|
10236
10431
|
pageSize: 10,
|
|
10237
10432
|
key: 'value',
|
|
10238
10433
|
});
|
|
10239
|
-
this.#effect = effect(() => {
|
|
10434
|
+
this.#effect = effect(async () => {
|
|
10240
10435
|
this.items = [
|
|
10241
|
-
{ text: this.
|
|
10242
|
-
{ text: this.
|
|
10436
|
+
{ text: await this.translateService.translateAsync('unknown'), value: 'unknown' },
|
|
10437
|
+
{ text: this.trulyText() || (await this.translateService.translateAsync('yes')), value: true },
|
|
10438
|
+
{ text: this.falsyText() || (await this.translateService.translateAsync('no')), value: false },
|
|
10243
10439
|
];
|
|
10244
10440
|
});
|
|
10245
10441
|
}
|
|
@@ -10262,9 +10458,11 @@ class AXPBooleanFilterWidgetEditComponent extends AXPWidgetComponent {
|
|
|
10262
10458
|
[dataSource]="dataSource"
|
|
10263
10459
|
[ngModel]="value()"
|
|
10264
10460
|
(onValueChanged)="handleValueChange($event)"
|
|
10265
|
-
|
|
10461
|
+
>
|
|
10462
|
+
<ax-clear-button></ax-clear-button>
|
|
10463
|
+
</ax-select-box>
|
|
10266
10464
|
</div>
|
|
10267
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i5$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
10465
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i5$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
10268
10466
|
}
|
|
10269
10467
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPBooleanFilterWidgetEditComponent, decorators: [{
|
|
10270
10468
|
type: Component,
|
|
@@ -10278,7 +10476,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
10278
10476
|
[dataSource]="dataSource"
|
|
10279
10477
|
[ngModel]="value()"
|
|
10280
10478
|
(onValueChanged)="handleValueChange($event)"
|
|
10281
|
-
|
|
10479
|
+
>
|
|
10480
|
+
<ax-clear-button></ax-clear-button>
|
|
10481
|
+
</ax-select-box>
|
|
10282
10482
|
</div>
|
|
10283
10483
|
`,
|
|
10284
10484
|
standalone: true,
|
|
@@ -10471,10 +10671,18 @@ class AXPDateTimeFilterWidgetEditComponent extends AXPWidgetComponent {
|
|
|
10471
10671
|
this.setValue({ operation, value: e.value?.toISOString() });
|
|
10472
10672
|
break;
|
|
10473
10673
|
case 'to':
|
|
10474
|
-
|
|
10674
|
+
const from = this.value().from || undefined;
|
|
10675
|
+
this.setValue({
|
|
10676
|
+
operation,
|
|
10677
|
+
value: { from: from?.toISOString(), to: e.value?.toISOString() },
|
|
10678
|
+
});
|
|
10475
10679
|
break;
|
|
10476
10680
|
case 'from':
|
|
10477
|
-
|
|
10681
|
+
const to = this.value().to || undefined;
|
|
10682
|
+
this.setValue({
|
|
10683
|
+
operation,
|
|
10684
|
+
value: { from: e.value?.toISOString(), to: to?.toISOString() },
|
|
10685
|
+
});
|
|
10478
10686
|
break;
|
|
10479
10687
|
default:
|
|
10480
10688
|
break;
|
|
@@ -10489,7 +10697,9 @@ class AXPDateTimeFilterWidgetEditComponent extends AXPWidgetComponent {
|
|
|
10489
10697
|
[placeholder]="('select' | translate | async) ?? ''"
|
|
10490
10698
|
[ngModel]="filterTypeSelectedItem()"
|
|
10491
10699
|
(onValueChanged)="handleFilterTypeSelectedItemChange($event)"
|
|
10492
|
-
|
|
10700
|
+
>
|
|
10701
|
+
<ax-clear-button></ax-clear-button>
|
|
10702
|
+
</ax-select-box>
|
|
10493
10703
|
@if(filterTypeSelectedItem()==='Between'){
|
|
10494
10704
|
<div class="ax-flex ax-gap-2 ax-mt-2">
|
|
10495
10705
|
<ax-datetime-box
|
|
@@ -10529,7 +10739,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
10529
10739
|
[placeholder]="('select' | translate | async) ?? ''"
|
|
10530
10740
|
[ngModel]="filterTypeSelectedItem()"
|
|
10531
10741
|
(onValueChanged)="handleFilterTypeSelectedItemChange($event)"
|
|
10532
|
-
|
|
10742
|
+
>
|
|
10743
|
+
<ax-clear-button></ax-clear-button>
|
|
10744
|
+
</ax-select-box>
|
|
10533
10745
|
@if(filterTypeSelectedItem()==='Between'){
|
|
10534
10746
|
<div class="ax-flex ax-gap-2 ax-mt-2">
|
|
10535
10747
|
<ax-datetime-box
|
|
@@ -10604,7 +10816,7 @@ class AXPFilterOperationsComponent {
|
|
|
10604
10816
|
}
|
|
10605
10817
|
}
|
|
10606
10818
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFilterOperationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10607
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPFilterOperationsComponent, isStandalone: true, selector: "axp-filter-operations", inputs: { selectedOperation: { classPropertyName: "selectedOperation", publicName: "selectedOperation", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedOperation: "selectedOperationChange" }, ngImport: i0, template: "@if(operations().length){\n<ax-button #changeOperator look=\"blank\" color=\"default\" class=\"ax-sm\">\n <ax-icon class=\"fa-solid fa-ellipsis-vertical\"></ax-icon>\n</ax-button>\n<ax-popover\n #operatorsPopover\n [target]=\"changeOperator\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\"\n>\n <div\n class=\"ax-max-h-max ax-overflow-auto ax-bg-surface ax-py-5 ax-px-3 ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-[250px]\"\n >\n <ax-selection-list\n class=\"\"\n [valueField]=\"'name'\"\n [textField]=\"'title'\"\n [(ngModel)]=\"selectedOperation\"\n (ngModelChange)=\"operatorsPopover.close()\"\n [direction]=\"'vertical'\"\n [items]=\"operations()\"\n [multiple]=\"false\"\n ></ax-selection-list>\n </div>\n</ax-popover>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i1$
|
|
10819
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPFilterOperationsComponent, isStandalone: true, selector: "axp-filter-operations", inputs: { selectedOperation: { classPropertyName: "selectedOperation", publicName: "selectedOperation", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedOperation: "selectedOperationChange" }, ngImport: i0, template: "@if(operations().length){\n<ax-button #changeOperator look=\"blank\" color=\"default\" class=\"ax-sm\">\n <ax-icon class=\"fa-solid fa-ellipsis-vertical\"></ax-icon>\n</ax-button>\n<ax-popover\n #operatorsPopover\n [target]=\"changeOperator\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\"\n>\n <div\n class=\"ax-max-h-max ax-overflow-auto ax-bg-surface ax-py-5 ax-px-3 ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-[250px]\"\n >\n <ax-selection-list\n class=\"\"\n [valueField]=\"'name'\"\n [textField]=\"'title'\"\n [(ngModel)]=\"selectedOperation\"\n (ngModelChange)=\"operatorsPopover.close()\"\n [direction]=\"'vertical'\"\n [items]=\"operations()\"\n [multiple]=\"false\"\n ></ax-selection-list>\n </div>\n</ax-popover>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i1$8.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i2$3.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
10608
10820
|
}
|
|
10609
10821
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFilterOperationsComponent, decorators: [{
|
|
10610
10822
|
type: Component,
|
|
@@ -10874,6 +11086,7 @@ class AXPStringWidgetFilterComponent extends AXPWidgetComponent {
|
|
|
10874
11086
|
this.operation = computed(() => this.getValue()?.operation || 'equal');
|
|
10875
11087
|
this.value = computed(() => this.getValue()?.value);
|
|
10876
11088
|
this.placeholder = computed(() => this.options()['placeholder']);
|
|
11089
|
+
this.hasClearButton = computed(() => this.options()['hasClearButton']);
|
|
10877
11090
|
}
|
|
10878
11091
|
handleValueChange(e) {
|
|
10879
11092
|
if (e.isUserInteraction) {
|
|
@@ -10890,7 +11103,7 @@ class AXPStringWidgetFilterComponent extends AXPWidgetComponent {
|
|
|
10890
11103
|
});
|
|
10891
11104
|
}
|
|
10892
11105
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPStringWidgetFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
10893
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
11106
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPStringWidgetFilterComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
10894
11107
|
<div class="ax-flex ax-items-center">
|
|
10895
11108
|
<ax-text-box
|
|
10896
11109
|
class="ax-flex-1"
|
|
@@ -10899,7 +11112,9 @@ class AXPStringWidgetFilterComponent extends AXPWidgetComponent {
|
|
|
10899
11112
|
[ngModel]="value()"
|
|
10900
11113
|
(onValueChanged)="handleValueChange($event)"
|
|
10901
11114
|
>
|
|
11115
|
+
@if(hasClearButton()){
|
|
10902
11116
|
<ax-clear-button></ax-clear-button>
|
|
11117
|
+
}
|
|
10903
11118
|
</ax-text-box>
|
|
10904
11119
|
<axp-filter-operations
|
|
10905
11120
|
[type]="'string'"
|
|
@@ -10921,7 +11136,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
10921
11136
|
[ngModel]="value()"
|
|
10922
11137
|
(onValueChanged)="handleValueChange($event)"
|
|
10923
11138
|
>
|
|
11139
|
+
@if(hasClearButton()){
|
|
10924
11140
|
<ax-clear-button></ax-clear-button>
|
|
11141
|
+
}
|
|
10925
11142
|
</ax-text-box>
|
|
10926
11143
|
<axp-filter-operations
|
|
10927
11144
|
[type]="'string'"
|
|
@@ -11169,10 +11386,11 @@ class AXPGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
11169
11386
|
this.rows = computed(() => this.calcGridRowOrColumn(this.options()['gridOptions']?.default?.gridTemplateRows ?? 'repeat(1, 1fr)'));
|
|
11170
11387
|
this.align = computed(() => this.options()['gridOptions']?.default?.alignItems ?? 'stretch');
|
|
11171
11388
|
this.justify = computed(() => this.options()['gridOptions']?.default?.justifyItems ?? 'stretch');
|
|
11389
|
+
this.autoFlow = computed(() => this.options()['gridOptions']?.default?.gridAutoFlow ?? 'row');
|
|
11172
11390
|
this.gap = computed(() => this.options()['gridOptions']?.default?.gap ?? '1px');
|
|
11173
11391
|
this.cells = computed(() => this.calcTotalCells(this.options()['gridOptions']?.default?.gridTemplateRows ?? 'repeat(1, 1fr)', this.options()['gridOptions']?.default?.gridTemplateColumns ?? 'repeat(1, 1fr)'));
|
|
11174
11392
|
this.settled = computed(() => this.cols() * this.rows() > 1 && this.children().length);
|
|
11175
|
-
//
|
|
11393
|
+
//eff = effect(() => console.log(this.options()['gridOptions']));
|
|
11176
11394
|
this.#rowOrColumnChangeEffect = effect(() => {
|
|
11177
11395
|
const deferent = this.cells() - this.children().length;
|
|
11178
11396
|
untracked(() => {
|
|
@@ -11217,7 +11435,7 @@ class AXPGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
11217
11435
|
this.designerService.addWidget(this.node, node);
|
|
11218
11436
|
});
|
|
11219
11437
|
}
|
|
11220
|
-
//
|
|
11438
|
+
//eff = effect(() => console.log(this.options()['gridOptions']));
|
|
11221
11439
|
#rowOrColumnChangeEffect;
|
|
11222
11440
|
calcTotalCells(rows, cols) {
|
|
11223
11441
|
return AXPPropertyEditorHelper.parseGridTemplate(rows) * AXPPropertyEditorHelper.parseGridTemplate(cols);
|
|
@@ -11241,9 +11459,9 @@ class AXPGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
11241
11459
|
], usesInheritance: true, ngImport: i0, template: `
|
|
11242
11460
|
@if(settled()) {
|
|
11243
11461
|
<div
|
|
11244
|
-
class="ax-grid ax-grid-
|
|
11245
|
-
|
|
11246
|
-
}} "
|
|
11462
|
+
class="ax-grid ax-grid-flow-{{ autoFlow() }} ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-items-{{
|
|
11463
|
+
align()
|
|
11464
|
+
}} ax-justify-items-{{ justify() }} "
|
|
11247
11465
|
[style]="{ gap: gap() }"
|
|
11248
11466
|
>
|
|
11249
11467
|
@for (child of children(); track $index) {
|
|
@@ -11264,7 +11482,7 @@ class AXPGridWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
11264
11482
|
@if(false){
|
|
11265
11483
|
<div class="ax-hidden">
|
|
11266
11484
|
ax-items-start ax-items-center ax-items-end ax-items-stretch ax-justify-items-start ax-justify-items-center
|
|
11267
|
-
ax-justify-items-end ax-justify-items-stretch
|
|
11485
|
+
ax-justify-items-end ax-justify-items-stretch ax-grid-flow-row ax-grid-flow-col
|
|
11268
11486
|
</div>
|
|
11269
11487
|
}
|
|
11270
11488
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "index", "locked", "mode", "node"] }, { kind: "component", type: AXPDesignerGridDrawerComponent, selector: "axp-designer-grid-drawer", inputs: ["rows", "columns"], outputs: ["rowsChange", "columnsChange", "onSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
@@ -11276,9 +11494,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
11276
11494
|
template: `
|
|
11277
11495
|
@if(settled()) {
|
|
11278
11496
|
<div
|
|
11279
|
-
class="ax-grid ax-grid-
|
|
11280
|
-
|
|
11281
|
-
}} "
|
|
11497
|
+
class="ax-grid ax-grid-flow-{{ autoFlow() }} ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-items-{{
|
|
11498
|
+
align()
|
|
11499
|
+
}} ax-justify-items-{{ justify() }} "
|
|
11282
11500
|
[style]="{ gap: gap() }"
|
|
11283
11501
|
>
|
|
11284
11502
|
@for (child of children(); track $index) {
|
|
@@ -11299,7 +11517,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
11299
11517
|
@if(false){
|
|
11300
11518
|
<div class="ax-hidden">
|
|
11301
11519
|
ax-items-start ax-items-center ax-items-end ax-items-stretch ax-justify-items-start ax-justify-items-center
|
|
11302
|
-
ax-justify-items-end ax-justify-items-stretch
|
|
11520
|
+
ax-justify-items-end ax-justify-items-stretch ax-grid-flow-row ax-grid-flow-col
|
|
11303
11521
|
</div>
|
|
11304
11522
|
}
|
|
11305
11523
|
`,
|
|
@@ -11466,8 +11684,6 @@ class AXPGridItemWidgetDesignerComponent extends AXPWidgetComponent {
|
|
|
11466
11684
|
get __class() {
|
|
11467
11685
|
const cls = {};
|
|
11468
11686
|
//
|
|
11469
|
-
cls[`ax-m-4`] = true;
|
|
11470
|
-
//
|
|
11471
11687
|
cls[`ax-widget-container`] = true;
|
|
11472
11688
|
cls[`ax-flex`] = true;
|
|
11473
11689
|
cls[`ax-gap-${this.gap()}`] = true;
|
|
@@ -11889,6 +12105,7 @@ class AXPWidgetsModule {
|
|
|
11889
12105
|
AXPSelectFilterWidget,
|
|
11890
12106
|
AXPFlexOptionsWidget,
|
|
11891
12107
|
AXPGridOptionsWidget,
|
|
12108
|
+
AXPAdvancedGridOptionsWidget,
|
|
11892
12109
|
],
|
|
11893
12110
|
})] }); }
|
|
11894
12111
|
}
|
|
@@ -11942,6 +12159,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
11942
12159
|
AXPSelectFilterWidget,
|
|
11943
12160
|
AXPFlexOptionsWidget,
|
|
11944
12161
|
AXPGridOptionsWidget,
|
|
12162
|
+
AXPAdvancedGridOptionsWidget,
|
|
11945
12163
|
],
|
|
11946
12164
|
}),
|
|
11947
12165
|
],
|
|
@@ -11955,5 +12173,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
11955
12173
|
* Generated bundle index. Do not edit.
|
|
11956
12174
|
*/
|
|
11957
12175
|
|
|
11958
|
-
export { AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetPrintComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetFilterComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPFileBoxWidget, AXPFileBoxWidgetColumnComponent, AXPFileBoxWidgetEditComponent, AXPFileBoxWidgetFilterComponent, AXPFileBoxWidgetPrintComponent, AXPFileBoxWidgetViewComponent, AXPFileManagementService, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPGalleryWidget, AXPGalleryWidgetColumnComponent, AXPGalleryWidgetEditComponent, AXPGalleryWidgetFilterComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPPropertyEditorHelper, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetFilterComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTY, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ALIGN_CONTENT_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_COL_END_PROPERTY, AXP_LAYOUT_COL_SPAN_PROPERTY, AXP_LAYOUT_COL_START_PROPERTY, AXP_LAYOUT_FLEX_ALIGN_PROPERTY, AXP_LAYOUT_FLEX_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY, AXP_LAYOUT_FLEX_PROPERTIES, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_FLEX_WRAP_PROPERTY, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTIES, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
|
|
12176
|
+
export { AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetPrintComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetFilterComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPFileBoxWidget, AXPFileBoxWidgetColumnComponent, AXPFileBoxWidgetEditComponent, AXPFileBoxWidgetFilterComponent, AXPFileBoxWidgetPrintComponent, AXPFileBoxWidgetViewComponent, AXPFileManagementService, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPGalleryWidget, AXPGalleryWidgetColumnComponent, AXPGalleryWidgetEditComponent, AXPGalleryWidgetFilterComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPPropertyEditorHelper, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetFilterComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTY, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_ALIGN_CONTENT_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_COL_END_PROPERTY, AXP_LAYOUT_COL_SPAN_PROPERTY, AXP_LAYOUT_COL_START_PROPERTY, AXP_LAYOUT_FLEX_ALIGN_PROPERTY, AXP_LAYOUT_FLEX_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY, AXP_LAYOUT_FLEX_PROPERTIES, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_FLEX_WRAP_PROPERTY, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTIES, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
|
|
11959
12177
|
//# sourceMappingURL=acorex-platform-widgets.mjs.map
|