angular-toolbox 1.4.0 → 1.4.2
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/README.md +1 -1
- package/esm2022/lib/component/layout/border-layout/border-layout.component.mjs +15 -11
- package/esm2022/lib/component/layout/border-layout/util/border-layout-renderer.mjs +48 -15
- package/esm2022/lib/component/layout/border-layout-container/border-layout-container.component.mjs +2 -2
- package/esm2022/lib/framework/index.mjs +2 -1
- package/esm2022/lib/framework/mock/documentation/component/atx-mock-description/atx-mock-description.component.mjs +27 -0
- package/esm2022/lib/framework/mock/documentation/component/atx-mock-documentation/atx-mock-documentation.component.mjs +77 -0
- package/esm2022/lib/framework/mock/documentation/component/atx-mock-full-description/atx-mock-full-description.component.mjs +27 -0
- package/esm2022/lib/framework/mock/documentation/component/atx-mock-methods/atx-mock-methods.component.mjs +71 -0
- package/esm2022/lib/framework/mock/documentation/component/atx-mock-param/atx-mock-param.component.mjs +27 -0
- package/esm2022/lib/framework/mock/documentation/index.mjs +2 -0
- package/esm2022/lib/framework/mock/documentation/model/business/full-description.type.mjs +9 -0
- package/esm2022/lib/framework/mock/documentation/model/business/method-doc-descriptor.type.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-method-mock.mjs +1 -1
- package/esm2022/lib/model/business/mock/http/http-mock-config.mjs +1 -1
- package/esm2022/lib/model/business/mock/http/http-mock-endpoint-descriptor.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-mock-endpoint.mjs +1 -1
- package/esm2022/lib/model/business/mock/http/http-mock-interceptor.mjs +1 -1
- package/esm2022/lib/model/business/mock/http/http-mock-method-descriptor.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-mock-parameter-descriptor.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/index.mjs +4 -1
- package/esm2022/lib/model/service/version/angular-toolbox-version.service.mjs +3 -3
- package/fesm2022/angular-toolbox.mjs +297 -28
- package/fesm2022/angular-toolbox.mjs.map +1 -1
- package/lib/component/layout/border-layout/border-layout.component.d.ts +1 -1
- package/lib/component/layout/border-layout/util/border-layout-renderer.d.ts +17 -1
- package/lib/framework/index.d.ts +1 -0
- package/lib/framework/mock/documentation/component/atx-mock-description/atx-mock-description.component.d.ts +14 -0
- package/lib/framework/mock/documentation/component/atx-mock-documentation/atx-mock-documentation.component.d.ts +43 -0
- package/lib/framework/mock/documentation/component/atx-mock-full-description/atx-mock-full-description.component.d.ts +15 -0
- package/lib/framework/mock/documentation/component/atx-mock-methods/atx-mock-methods.component.d.ts +29 -0
- package/lib/framework/mock/documentation/component/atx-mock-param/atx-mock-param.component.d.ts +15 -0
- package/lib/framework/mock/documentation/index.d.ts +1 -0
- package/lib/framework/mock/documentation/model/business/full-description.type.d.ts +21 -0
- package/lib/framework/mock/documentation/model/business/method-doc-descriptor.type.d.ts +22 -0
- package/lib/model/business/mock/http/http-method-mock.d.ts +5 -0
- package/lib/model/business/mock/http/http-mock-config.d.ts +4 -0
- package/lib/model/business/mock/http/http-mock-endpoint-descriptor.d.ts +21 -0
- package/lib/model/business/mock/http/http-mock-endpoint.d.ts +5 -0
- package/lib/model/business/mock/http/http-mock-interceptor.d.ts +4 -0
- package/lib/model/business/mock/http/http-mock-method-descriptor.d.ts +29 -0
- package/lib/model/business/mock/http/http-mock-parameter-descriptor.d.ts +20 -0
- package/lib/model/business/mock/http/index.d.ts +3 -0
- package/package.json +1 -1
|
@@ -586,8 +586,8 @@ class AbstractVersionManager {
|
|
|
586
586
|
const ATX_VERSION_CONFIG = {
|
|
587
587
|
major: 1,
|
|
588
588
|
minor: 4,
|
|
589
|
-
patch:
|
|
590
|
-
buildTimestamp:
|
|
589
|
+
patch: 2,
|
|
590
|
+
buildTimestamp: 1728546812271
|
|
591
591
|
};
|
|
592
592
|
/**
|
|
593
593
|
* The public service that exposes the current version of the Angular Toolbox library.
|
|
@@ -1332,6 +1332,30 @@ var DropdownEventType;
|
|
|
1332
1332
|
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
1333
1333
|
*/
|
|
1334
1334
|
|
|
1335
|
+
/**
|
|
1336
|
+
* @license
|
|
1337
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
1338
|
+
*
|
|
1339
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
1340
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
1341
|
+
*/
|
|
1342
|
+
|
|
1343
|
+
/**
|
|
1344
|
+
* @license
|
|
1345
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
1346
|
+
*
|
|
1347
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
1348
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
1349
|
+
*/
|
|
1350
|
+
|
|
1351
|
+
/**
|
|
1352
|
+
* @license
|
|
1353
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
1354
|
+
*
|
|
1355
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
1356
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
1357
|
+
*/
|
|
1358
|
+
|
|
1335
1359
|
/**
|
|
1336
1360
|
* @license
|
|
1337
1361
|
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
@@ -7835,6 +7859,215 @@ const httpMockFactory = () => {
|
|
|
7835
7859
|
return new XhrProxyFactoryImpl(inject(HttpMockService), inject(HttpMockLoggingService));
|
|
7836
7860
|
};
|
|
7837
7861
|
|
|
7862
|
+
/**
|
|
7863
|
+
* @license
|
|
7864
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
7865
|
+
*
|
|
7866
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7867
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7868
|
+
*/
|
|
7869
|
+
/**
|
|
7870
|
+
* @private
|
|
7871
|
+
* Displays documentation for HTTP fragment parameters, or query parameters.
|
|
7872
|
+
*/
|
|
7873
|
+
class AtxMockParamComponent {
|
|
7874
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockParamComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7875
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: AtxMockParamComponent, isStandalone: true, selector: "atx-mock-param", inputs: { params: "params" }, ngImport: i0, template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n\r\n@if (params) {\r\n <div class=\"atx-mock-param-container\">\r\n @for (param of params; track param) {\r\n <dl class=\"param\">\r\n <dt><code>{{ param.ref }}</code></dt>\r\n <dd [innerHTML]=\"param.description | safeHtml\"></dd>\r\n </dl>\r\n }\r\n </div>\r\n}\r\n", styles: [".param dt{font-weight:400;min-width:70px}.param dt:before{padding-right:.2em;content:\"-\"}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"], dependencies: [{ kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
|
|
7876
|
+
}
|
|
7877
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockParamComponent, decorators: [{
|
|
7878
|
+
type: Component,
|
|
7879
|
+
args: [{ selector: 'atx-mock-param', standalone: true, imports: [
|
|
7880
|
+
SafeHtmlPipe
|
|
7881
|
+
], template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n\r\n@if (params) {\r\n <div class=\"atx-mock-param-container\">\r\n @for (param of params; track param) {\r\n <dl class=\"param\">\r\n <dt><code>{{ param.ref }}</code></dt>\r\n <dd [innerHTML]=\"param.description | safeHtml\"></dd>\r\n </dl>\r\n }\r\n </div>\r\n}\r\n", styles: [".param dt{font-weight:400;min-width:70px}.param dt:before{padding-right:.2em;content:\"-\"}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }]
|
|
7882
|
+
}], propDecorators: { params: [{
|
|
7883
|
+
type: Input
|
|
7884
|
+
}] } });
|
|
7885
|
+
|
|
7886
|
+
/**
|
|
7887
|
+
* @license
|
|
7888
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
7889
|
+
*
|
|
7890
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7891
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7892
|
+
*/
|
|
7893
|
+
/**
|
|
7894
|
+
* @private
|
|
7895
|
+
* A conmponent that renders mock config description ppoperties.
|
|
7896
|
+
*/
|
|
7897
|
+
class AtxMockDescriptionComponent {
|
|
7898
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockDescriptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7899
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: AtxMockDescriptionComponent, isStandalone: true, selector: "atx-mock-description", inputs: { description: "description" }, ngImport: i0, template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n\r\n<div [innerHTML]=\"description | safeHtml\"></div>\r\n", dependencies: [{ kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
|
|
7900
|
+
}
|
|
7901
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockDescriptionComponent, decorators: [{
|
|
7902
|
+
type: Component,
|
|
7903
|
+
args: [{ selector: 'atx-mock-description', standalone: true, imports: [
|
|
7904
|
+
SafeHtmlPipe
|
|
7905
|
+
], template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n\r\n<div [innerHTML]=\"description | safeHtml\"></div>\r\n" }]
|
|
7906
|
+
}], propDecorators: { description: [{
|
|
7907
|
+
type: Input
|
|
7908
|
+
}] } });
|
|
7909
|
+
|
|
7910
|
+
/**
|
|
7911
|
+
* @license
|
|
7912
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
7913
|
+
*
|
|
7914
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7915
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7916
|
+
*/
|
|
7917
|
+
/**
|
|
7918
|
+
* @private
|
|
7919
|
+
* A convenient component that displays the description and the origin of a mock config section.
|
|
7920
|
+
*/
|
|
7921
|
+
class AtxMockFullDescriptionComponent {
|
|
7922
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockFullDescriptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7923
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: AtxMockFullDescriptionComponent, isStandalone: true, selector: "atx-mock-full-description", inputs: { config: "config" }, ngImport: i0, template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n \r\n@if (config) {\r\n <div class=\"description\">\r\n @if (config.description) {\r\n <atx-mock-description [description]=\"config.description\"/>\r\n }\r\n @if (config.origin) {\r\n <dl>\r\n <dt>origin:</dt>\r\n <dd><a [href]=\"config.origin\" [title]=\"config.origin\"><code>{{ config.origin }}</code></a></dd>\r\n </dl>\r\n }\r\n </div>\r\n}\r\n", dependencies: [{ kind: "component", type: AtxMockDescriptionComponent, selector: "atx-mock-description", inputs: ["description"] }] }); }
|
|
7924
|
+
}
|
|
7925
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockFullDescriptionComponent, decorators: [{
|
|
7926
|
+
type: Component,
|
|
7927
|
+
args: [{ selector: 'atx-mock-full-description', standalone: true, imports: [
|
|
7928
|
+
AtxMockDescriptionComponent
|
|
7929
|
+
], template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n \r\n@if (config) {\r\n <div class=\"description\">\r\n @if (config.description) {\r\n <atx-mock-description [description]=\"config.description\"/>\r\n }\r\n @if (config.origin) {\r\n <dl>\r\n <dt>origin:</dt>\r\n <dd><a [href]=\"config.origin\" [title]=\"config.origin\"><code>{{ config.origin }}</code></a></dd>\r\n </dl>\r\n }\r\n </div>\r\n}\r\n" }]
|
|
7930
|
+
}], propDecorators: { config: [{
|
|
7931
|
+
type: Input
|
|
7932
|
+
}] } });
|
|
7933
|
+
|
|
7934
|
+
/**
|
|
7935
|
+
* @license
|
|
7936
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
7937
|
+
*
|
|
7938
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7939
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7940
|
+
*/
|
|
7941
|
+
/**
|
|
7942
|
+
* @private
|
|
7943
|
+
*/
|
|
7944
|
+
const ROUTE = "route";
|
|
7945
|
+
/**
|
|
7946
|
+
* @private
|
|
7947
|
+
*/
|
|
7948
|
+
const DESCRIPTOR = "descriptor";
|
|
7949
|
+
/**
|
|
7950
|
+
* @private
|
|
7951
|
+
* A convenient component that allows to display documentation for HTTP methods of an endpoint.
|
|
7952
|
+
*/
|
|
7953
|
+
class AtxMockMethodsComponent {
|
|
7954
|
+
constructor() {
|
|
7955
|
+
/**
|
|
7956
|
+
* @private
|
|
7957
|
+
*/
|
|
7958
|
+
this.methods = [];
|
|
7959
|
+
}
|
|
7960
|
+
/**
|
|
7961
|
+
* @private
|
|
7962
|
+
* The endpoint for which to show HTTP methods documentation.
|
|
7963
|
+
*/
|
|
7964
|
+
set endpoint(value) {
|
|
7965
|
+
this._endpoint = value;
|
|
7966
|
+
this.methods = this.initMethodList(value);
|
|
7967
|
+
}
|
|
7968
|
+
get endpoint() {
|
|
7969
|
+
return this._endpoint;
|
|
7970
|
+
}
|
|
7971
|
+
/**
|
|
7972
|
+
* @private
|
|
7973
|
+
*/
|
|
7974
|
+
initMethodList(endpoint) {
|
|
7975
|
+
const keys = Object.keys(endpoint);
|
|
7976
|
+
const methods = [];
|
|
7977
|
+
keys.forEach(key => {
|
|
7978
|
+
if (key !== ROUTE && key !== DESCRIPTOR) {
|
|
7979
|
+
const mock = endpoint[key];
|
|
7980
|
+
methods.push({
|
|
7981
|
+
method: key,
|
|
7982
|
+
descriptor: mock.descriptor
|
|
7983
|
+
});
|
|
7984
|
+
}
|
|
7985
|
+
});
|
|
7986
|
+
return methods;
|
|
7987
|
+
}
|
|
7988
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockMethodsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7989
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: AtxMockMethodsComponent, isStandalone: true, selector: "atx-mock-methods", inputs: { endpoint: "endpoint" }, ngImport: i0, template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n \r\n@if (methods.length) {\r\n <h3>Methods</h3>\r\n <ul>\r\n @for (item of methods; track item; let last = $last) {\r\n <li>\r\n <span>{{ item.method }}</span>\r\n @if (item.descriptor) {\r\n <div class=\"method-descriptor\">\r\n @if (item.descriptor.description) {\r\n <atx-mock-description [description]=\"item.descriptor.description\"/>\r\n }\r\n @if (item.descriptor.payload) {\r\n <dl>\r\n <dt>payload:</dt>\r\n <dd [innerHTML]=\"item.descriptor.payload\"></dd>\r\n </dl>\r\n }\r\n @if (item.descriptor.body) {\r\n <dl>\r\n <dt>body:</dt>\r\n <dd [innerHTML]=\"item.descriptor.body\"></dd>\r\n </dl>\r\n }\r\n @if (item.descriptor.queryParams) {\r\n <h4>Query Parameters</h4>\r\n <atx-mock-param [params]=\"item.descriptor.queryParams\"/>\r\n }\r\n </div>\r\n \r\n }\r\n </li>\r\n @if (!last) {\r\n <hr>\r\n }\r\n }\r\n </ul>\r\n}\r\n", dependencies: [{ kind: "component", type: AtxMockParamComponent, selector: "atx-mock-param", inputs: ["params"] }, { kind: "component", type: AtxMockDescriptionComponent, selector: "atx-mock-description", inputs: ["description"] }] }); }
|
|
7990
|
+
}
|
|
7991
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockMethodsComponent, decorators: [{
|
|
7992
|
+
type: Component,
|
|
7993
|
+
args: [{ selector: 'atx-mock-methods', standalone: true, imports: [
|
|
7994
|
+
AtxMockParamComponent,
|
|
7995
|
+
AtxMockDescriptionComponent
|
|
7996
|
+
], template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n \r\n@if (methods.length) {\r\n <h3>Methods</h3>\r\n <ul>\r\n @for (item of methods; track item; let last = $last) {\r\n <li>\r\n <span>{{ item.method }}</span>\r\n @if (item.descriptor) {\r\n <div class=\"method-descriptor\">\r\n @if (item.descriptor.description) {\r\n <atx-mock-description [description]=\"item.descriptor.description\"/>\r\n }\r\n @if (item.descriptor.payload) {\r\n <dl>\r\n <dt>payload:</dt>\r\n <dd [innerHTML]=\"item.descriptor.payload\"></dd>\r\n </dl>\r\n }\r\n @if (item.descriptor.body) {\r\n <dl>\r\n <dt>body:</dt>\r\n <dd [innerHTML]=\"item.descriptor.body\"></dd>\r\n </dl>\r\n }\r\n @if (item.descriptor.queryParams) {\r\n <h4>Query Parameters</h4>\r\n <atx-mock-param [params]=\"item.descriptor.queryParams\"/>\r\n }\r\n </div>\r\n \r\n }\r\n </li>\r\n @if (!last) {\r\n <hr>\r\n }\r\n }\r\n </ul>\r\n}\r\n" }]
|
|
7997
|
+
}], propDecorators: { endpoint: [{
|
|
7998
|
+
type: Input
|
|
7999
|
+
}] } });
|
|
8000
|
+
|
|
8001
|
+
/**
|
|
8002
|
+
* @license
|
|
8003
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8004
|
+
*
|
|
8005
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8006
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8007
|
+
*/
|
|
8008
|
+
/**
|
|
8009
|
+
* @private
|
|
8010
|
+
*/
|
|
8011
|
+
const OPEN = "open";
|
|
8012
|
+
/**
|
|
8013
|
+
* @private
|
|
8014
|
+
*/
|
|
8015
|
+
const DETAILS = "details";
|
|
8016
|
+
/**
|
|
8017
|
+
* An easy-to-use component that displays the documentation of a `HttpMockConfig` object.
|
|
8018
|
+
*/
|
|
8019
|
+
class AtxMockDocumentation {
|
|
8020
|
+
/**
|
|
8021
|
+
* Gets or sets the `HttpMockConfig` object for which to display documentation.
|
|
8022
|
+
*/
|
|
8023
|
+
set config(value) {
|
|
8024
|
+
this.configApi = value;
|
|
8025
|
+
this.expanded = false;
|
|
8026
|
+
}
|
|
8027
|
+
get config() {
|
|
8028
|
+
return this.configApi;
|
|
8029
|
+
}
|
|
8030
|
+
/**
|
|
8031
|
+
* @private
|
|
8032
|
+
*/
|
|
8033
|
+
constructor(elmRef) {
|
|
8034
|
+
this.elmRef = elmRef;
|
|
8035
|
+
/**
|
|
8036
|
+
* @private
|
|
8037
|
+
*/
|
|
8038
|
+
this.expanded = false;
|
|
8039
|
+
/**
|
|
8040
|
+
* Specifies the title of the current display.
|
|
8041
|
+
*/
|
|
8042
|
+
this.title = "HTTP Mock API";
|
|
8043
|
+
}
|
|
8044
|
+
/**
|
|
8045
|
+
* @private
|
|
8046
|
+
*/
|
|
8047
|
+
toggleExpandState() {
|
|
8048
|
+
const details = this.elmRef.nativeElement.querySelectorAll(DETAILS);
|
|
8049
|
+
this.expanded = !this.expanded;
|
|
8050
|
+
if (this.expanded)
|
|
8051
|
+
return details.forEach((elm) => elm.setAttribute(OPEN, EMPTY_STRING));
|
|
8052
|
+
details.forEach((elm) => elm.removeAttribute(OPEN));
|
|
8053
|
+
}
|
|
8054
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockDocumentation, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8055
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: AtxMockDocumentation, isStandalone: true, selector: "atx-mock-documentation", inputs: { title: "title", config: "config" }, ngImport: i0, template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n \r\n@if (configApi) {\r\n <section>\r\n <h1>{{ title }}</h1>\r\n <h2>Description</h2>\r\n @if (configApi.description || configApi.origin) {\r\n <atx-mock-full-description [config]=\"configApi\"/>\r\n }\r\n </section>\r\n <section>\r\n <h2>Interceptors</h2>\r\n <button (click)=\"toggleExpandState()\">{{ expanded ? 'Collapse' : 'Expand' }} all</button>\r\n @if (configApi.interceptors) {\r\n @for (inteceptor of configApi.interceptors; track inteceptor) {\r\n <details>\r\n <summary>\r\n {{ inteceptor.id }}\r\n </summary>\r\n @if (inteceptor.description || inteceptor.origin) {\r\n <atx-mock-full-description [config]=\"inteceptor\"/>\r\n }\r\n @for (endpoint of inteceptor.endpoints; track endpoint; let last = $last) {\r\n <section class=\"endpoint\">\r\n <dl>\r\n <dt>route:</dt>\r\n <dd><code>{{ endpoint.route }}</code></dd>\r\n </dl>\r\n @if (endpoint.descriptor) {\r\n @if (endpoint.descriptor.description) {\r\n <atx-mock-description [description]=\"endpoint.descriptor.description\"/>\r\n }\r\n @if (endpoint.descriptor.params) {\r\n <h3>Parameters</h3>\r\n <atx-mock-param [params]=\"endpoint.descriptor.params\"/>\r\n }\r\n }\r\n <atx-mock-methods [endpoint]=\"endpoint\"/>\r\n </section>\r\n @if (!last) {\r\n <hr>\r\n }\r\n }\r\n </details>\r\n }\r\n }\r\n </section>\r\n}\r\n", styles: [":host,:host::ng-deep{font-family:Arial,Helvetica,sans-serif;line-height:1.5;-webkit-text-size-adjust:100%;margin:0;font-size:.95em}:host h1,:host h2,:host h3,:host h4,:host::ng-deep h1,:host::ng-deep h2,:host::ng-deep h3,:host::ng-deep h4{font-weight:700}:host h1,:host::ng-deep h1{font-size:1.5em;margin:.67em 0}:host h2,:host::ng-deep h2{font-size:1.25em}:host h3,:host::ng-deep h3{font-size:1em;text-decoration:underline}:host h4,:host::ng-deep h4{font-size:1em;margin:1em 0 0}:host hr,:host::ng-deep hr{box-sizing:content-box;height:0;overflow:visible}:host div,:host::ng-deep div{margin-top:1em;margin-bottom:1em}:host a,:host::ng-deep a{background-color:transparent}:host code,:host::ng-deep code{font-family:monospace,monospace;font-size:1.05em;color:orchid}:host button,:host::ng-deep button{font-family:inherit;font-size:.9em;line-height:1.15;margin:-45px 0 0;text-transform:none;padding:5px 10px;border:1px solid #aaa;border-radius:5px;float:right}:host details,:host::ng-deep details{display:block;border:1px solid #aaa;border-radius:4px;padding:.5em .5em 0;margin-bottom:.5em}:host summary,:host::ng-deep summary{display:list-item;font-weight:700;margin:-.5em -.5em 0;padding:.5em}:host details[open],:host::ng-deep details[open]{padding:.5em 1.5em}:host details[open] summary,:host::ng-deep details[open] summary{border-bottom:1px solid #aaa;margin-bottom:1em;padding:.5em 0}:host dl,:host::ng-deep dl{display:flex;margin:.5em 0}:host dt,:host::ng-deep dt{margin:0;font-weight:700}:host dd,:host::ng-deep dd{margin:0;margin-inline-start:10px}:host ul,:host::ng-deep ul{margin:0;padding-inline-start:40px;margin-block-start:1em;margin-block-end:1em}:host li,:host::ng-deep li{margin:0;display:flex;align-items:baseline}:host .endpoint,:host::ng-deep .endpoint{padding:.25em 1em;background-color:#eee;color:#000}:host .description,:host::ng-deep .description{margin-bottom:1em}:host span,:host::ng-deep span{text-transform:uppercase;display:inline-block;width:80px}:host .method-descriptor,:host::ng-deep .method-descriptor{line-height:.95em;margin:0}:host .method-descriptor dt,:host::ng-deep .method-descriptor dt{width:80px}:host .atx-mock-param-container,:host::ng-deep .atx-mock-param-container{padding-inline-start:40px;line-height:.95em}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"], dependencies: [{ kind: "component", type: AtxMockParamComponent, selector: "atx-mock-param", inputs: ["params"] }, { kind: "component", type: AtxMockDescriptionComponent, selector: "atx-mock-description", inputs: ["description"] }, { kind: "component", type: AtxMockFullDescriptionComponent, selector: "atx-mock-full-description", inputs: ["config"] }, { kind: "component", type: AtxMockMethodsComponent, selector: "atx-mock-methods", inputs: ["endpoint"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8056
|
+
}
|
|
8057
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AtxMockDocumentation, decorators: [{
|
|
8058
|
+
type: Component,
|
|
8059
|
+
args: [{ selector: 'atx-mock-documentation', standalone: true, imports: [
|
|
8060
|
+
AtxMockParamComponent,
|
|
8061
|
+
AtxMockDescriptionComponent,
|
|
8062
|
+
AtxMockFullDescriptionComponent,
|
|
8063
|
+
AtxMockMethodsComponent
|
|
8064
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\r\n * LICENSE\r\n * Copyright Pascal ECHEMANN. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\r\n-->\r\n \r\n@if (configApi) {\r\n <section>\r\n <h1>{{ title }}</h1>\r\n <h2>Description</h2>\r\n @if (configApi.description || configApi.origin) {\r\n <atx-mock-full-description [config]=\"configApi\"/>\r\n }\r\n </section>\r\n <section>\r\n <h2>Interceptors</h2>\r\n <button (click)=\"toggleExpandState()\">{{ expanded ? 'Collapse' : 'Expand' }} all</button>\r\n @if (configApi.interceptors) {\r\n @for (inteceptor of configApi.interceptors; track inteceptor) {\r\n <details>\r\n <summary>\r\n {{ inteceptor.id }}\r\n </summary>\r\n @if (inteceptor.description || inteceptor.origin) {\r\n <atx-mock-full-description [config]=\"inteceptor\"/>\r\n }\r\n @for (endpoint of inteceptor.endpoints; track endpoint; let last = $last) {\r\n <section class=\"endpoint\">\r\n <dl>\r\n <dt>route:</dt>\r\n <dd><code>{{ endpoint.route }}</code></dd>\r\n </dl>\r\n @if (endpoint.descriptor) {\r\n @if (endpoint.descriptor.description) {\r\n <atx-mock-description [description]=\"endpoint.descriptor.description\"/>\r\n }\r\n @if (endpoint.descriptor.params) {\r\n <h3>Parameters</h3>\r\n <atx-mock-param [params]=\"endpoint.descriptor.params\"/>\r\n }\r\n }\r\n <atx-mock-methods [endpoint]=\"endpoint\"/>\r\n </section>\r\n @if (!last) {\r\n <hr>\r\n }\r\n }\r\n </details>\r\n }\r\n }\r\n </section>\r\n}\r\n", styles: [":host,:host::ng-deep{font-family:Arial,Helvetica,sans-serif;line-height:1.5;-webkit-text-size-adjust:100%;margin:0;font-size:.95em}:host h1,:host h2,:host h3,:host h4,:host::ng-deep h1,:host::ng-deep h2,:host::ng-deep h3,:host::ng-deep h4{font-weight:700}:host h1,:host::ng-deep h1{font-size:1.5em;margin:.67em 0}:host h2,:host::ng-deep h2{font-size:1.25em}:host h3,:host::ng-deep h3{font-size:1em;text-decoration:underline}:host h4,:host::ng-deep h4{font-size:1em;margin:1em 0 0}:host hr,:host::ng-deep hr{box-sizing:content-box;height:0;overflow:visible}:host div,:host::ng-deep div{margin-top:1em;margin-bottom:1em}:host a,:host::ng-deep a{background-color:transparent}:host code,:host::ng-deep code{font-family:monospace,monospace;font-size:1.05em;color:orchid}:host button,:host::ng-deep button{font-family:inherit;font-size:.9em;line-height:1.15;margin:-45px 0 0;text-transform:none;padding:5px 10px;border:1px solid #aaa;border-radius:5px;float:right}:host details,:host::ng-deep details{display:block;border:1px solid #aaa;border-radius:4px;padding:.5em .5em 0;margin-bottom:.5em}:host summary,:host::ng-deep summary{display:list-item;font-weight:700;margin:-.5em -.5em 0;padding:.5em}:host details[open],:host::ng-deep details[open]{padding:.5em 1.5em}:host details[open] summary,:host::ng-deep details[open] summary{border-bottom:1px solid #aaa;margin-bottom:1em;padding:.5em 0}:host dl,:host::ng-deep dl{display:flex;margin:.5em 0}:host dt,:host::ng-deep dt{margin:0;font-weight:700}:host dd,:host::ng-deep dd{margin:0;margin-inline-start:10px}:host ul,:host::ng-deep ul{margin:0;padding-inline-start:40px;margin-block-start:1em;margin-block-end:1em}:host li,:host::ng-deep li{margin:0;display:flex;align-items:baseline}:host .endpoint,:host::ng-deep .endpoint{padding:.25em 1em;background-color:#eee;color:#000}:host .description,:host::ng-deep .description{margin-bottom:1em}:host span,:host::ng-deep span{text-transform:uppercase;display:inline-block;width:80px}:host .method-descriptor,:host::ng-deep .method-descriptor{line-height:.95em;margin:0}:host .method-descriptor dt,:host::ng-deep .method-descriptor dt{width:80px}:host .atx-mock-param-container,:host::ng-deep .atx-mock-param-container{padding-inline-start:40px;line-height:.95em}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }]
|
|
8065
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { title: [{
|
|
8066
|
+
type: Input
|
|
8067
|
+
}], config: [{
|
|
8068
|
+
type: Input
|
|
8069
|
+
}] } });
|
|
8070
|
+
|
|
7838
8071
|
/**
|
|
7839
8072
|
* @license
|
|
7840
8073
|
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
@@ -8556,11 +8789,11 @@ class BorderLayoutContainer {
|
|
|
8556
8789
|
this.resizable = true;
|
|
8557
8790
|
}
|
|
8558
8791
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayoutContainer, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8559
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: BorderLayoutContainer, isStandalone: true, selector: "atx-border-layout-container", inputs: { constraints: "constraints" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<ng-content></ng-content>\n@if (resizable) {\n <div class=\"atx-handle\" [class.atx-handle-selected]=\"selected\" (mousedown)=\"resizetart()\"></div>\n}\n", styles: [":host{box-sizing:border-box;padding:0;margin:0}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }); }
|
|
8792
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: BorderLayoutContainer, isStandalone: true, selector: "atx-border-layout-container", inputs: { constraints: "constraints" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<ng-content></ng-content>\n@if (resizable) {\n <div class=\"atx-handle\" [class.atx-handle-selected]=\"selected\" (mousedown)=\"resizetart()\"></div>\n}\n", styles: [":host{box-sizing:border-box;padding:0;margin:0}:host.north{position:absolute;z-index:10;top:0;left:0;right:0}:host.north>.atx-handle{left:0;right:0;bottom:0;height:4px;cursor:ns-resize}:host.west{position:absolute;z-index:5;left:0;height:unset!important}:host.west>.atx-handle{right:0;bottom:0;top:0;width:4px;cursor:ew-resize}:host.east{position:absolute;z-index:5;right:0;height:unset!important}:host.east>.atx-handle{left:0;bottom:0;top:0;width:4px;cursor:ew-resize}:host.south{position:absolute;z-index:10;bottom:0;left:0;right:0}:host.south>.atx-handle{left:0;right:0;top:0;height:4px;cursor:ns-resize}:host.center{position:absolute}.atx-handle{position:absolute}.atx-handle:hover,.atx-handle.atx-handle-selected{background-color:var(--atx-handle-color, #469afa)}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }); }
|
|
8560
8793
|
}
|
|
8561
8794
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayoutContainer, decorators: [{
|
|
8562
8795
|
type: Component,
|
|
8563
|
-
args: [{ selector: 'atx-border-layout-container', standalone: true, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<ng-content></ng-content>\n@if (resizable) {\n <div class=\"atx-handle\" [class.atx-handle-selected]=\"selected\" (mousedown)=\"resizetart()\"></div>\n}\n", styles: [":host{box-sizing:border-box;padding:0;margin:0}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }]
|
|
8796
|
+
args: [{ selector: 'atx-border-layout-container', standalone: true, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<ng-content></ng-content>\n@if (resizable) {\n <div class=\"atx-handle\" [class.atx-handle-selected]=\"selected\" (mousedown)=\"resizetart()\"></div>\n}\n", styles: [":host{box-sizing:border-box;padding:0;margin:0}:host.north{position:absolute;z-index:10;top:0;left:0;right:0}:host.north>.atx-handle{left:0;right:0;bottom:0;height:4px;cursor:ns-resize}:host.west{position:absolute;z-index:5;left:0;height:unset!important}:host.west>.atx-handle{right:0;bottom:0;top:0;width:4px;cursor:ew-resize}:host.east{position:absolute;z-index:5;right:0;height:unset!important}:host.east>.atx-handle{left:0;bottom:0;top:0;width:4px;cursor:ew-resize}:host.south{position:absolute;z-index:10;bottom:0;left:0;right:0}:host.south>.atx-handle{left:0;right:0;top:0;height:4px;cursor:ns-resize}:host.center{position:absolute}.atx-handle{position:absolute}.atx-handle:hover,.atx-handle.atx-handle-selected{background-color:var(--atx-handle-color, #469afa)}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }]
|
|
8564
8797
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { class: [{
|
|
8565
8798
|
type: HostBinding,
|
|
8566
8799
|
args: ['class']
|
|
@@ -8809,17 +9042,26 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
8809
9042
|
/**
|
|
8810
9043
|
* @private
|
|
8811
9044
|
*/
|
|
8812
|
-
constructor(subscribeSvc) {
|
|
9045
|
+
constructor(subscribeSvc, document) {
|
|
8813
9046
|
super();
|
|
8814
9047
|
this.subscribeSvc = subscribeSvc;
|
|
9048
|
+
this.document = document;
|
|
8815
9049
|
/**
|
|
8816
9050
|
* Emits events each time the user starts, or stops dragging handle.
|
|
8817
9051
|
*/
|
|
8818
|
-
this.userAction = new EventEmitter(
|
|
9052
|
+
this.userAction = new EventEmitter();
|
|
8819
9053
|
/**
|
|
8820
9054
|
* @private
|
|
8821
9055
|
*/
|
|
8822
9056
|
this.containerList = [];
|
|
9057
|
+
/**
|
|
9058
|
+
* @private
|
|
9059
|
+
*/
|
|
9060
|
+
this.storedStopHandler = null;
|
|
9061
|
+
/**
|
|
9062
|
+
* @private
|
|
9063
|
+
*/
|
|
9064
|
+
this.storedMoveHandler = null;
|
|
8823
9065
|
this.boundsManager = new BorderLayoutBoundsManager();
|
|
8824
9066
|
}
|
|
8825
9067
|
/**
|
|
@@ -8866,12 +9108,17 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
8866
9108
|
* Makes this object elligible for garbage collection.
|
|
8867
9109
|
*/
|
|
8868
9110
|
destroy() {
|
|
9111
|
+
if (this.storedStopHandler) {
|
|
9112
|
+
this.document.removeEventListener(MOUSEMOVE, this.storedMoveHandler);
|
|
9113
|
+
this.document.removeEventListener(MOUSEUP, this.storedStopHandler);
|
|
9114
|
+
this.deleteStoredHandlers();
|
|
9115
|
+
}
|
|
8869
9116
|
this.subscribeSvc.clearAll(this);
|
|
8870
|
-
this.containerList.length = 0;
|
|
8871
|
-
this.containerList = null;
|
|
8872
9117
|
this.lytContainerElm = null;
|
|
8873
9118
|
this.boundsManager.destroy();
|
|
8874
9119
|
this.boundsManager = null;
|
|
9120
|
+
this.containerList.length = 0;
|
|
9121
|
+
this.containerList = null;
|
|
8875
9122
|
}
|
|
8876
9123
|
/**
|
|
8877
9124
|
* Forces the layout of all `BorderLayoutContainer` objects associated with the main container.
|
|
@@ -8914,32 +9161,36 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
8914
9161
|
const region = constraints.region;
|
|
8915
9162
|
const minSize = constraints.minSize;
|
|
8916
9163
|
const maxSize = constraints.maxSize;
|
|
9164
|
+
const doc = this.document;
|
|
8917
9165
|
let size = 0;
|
|
8918
9166
|
this.boundsManager.setOrigin(bounds.x, bounds.y);
|
|
8919
9167
|
let resizeMethod = this.boundsManager.getResizeMethod(region);
|
|
8920
9168
|
container.selected = true;
|
|
8921
9169
|
const onMoveHandler = (event) => {
|
|
8922
|
-
event.preventDefault();
|
|
8923
9170
|
event.stopPropagation();
|
|
9171
|
+
event.preventDefault();
|
|
8924
9172
|
size = resizeMethod(event, width, height, minSize, maxSize);
|
|
8925
9173
|
container.setSize(size);
|
|
8926
9174
|
this.render(width);
|
|
8927
9175
|
this.fireEvent(container, LayoutDragEventType.DRAGGING);
|
|
8928
9176
|
};
|
|
8929
9177
|
const onStopHandler = (event) => {
|
|
8930
|
-
event.preventDefault();
|
|
8931
9178
|
event.stopPropagation();
|
|
8932
|
-
|
|
8933
|
-
|
|
9179
|
+
event.preventDefault();
|
|
9180
|
+
doc.removeEventListener(MOUSEMOVE, onMoveHandler);
|
|
9181
|
+
doc.removeEventListener(MOUSEUP, onStopHandler);
|
|
9182
|
+
this.deleteStoredHandlers();
|
|
8934
9183
|
container.selected = false;
|
|
8935
9184
|
size = resizeMethod(event, width, height, minSize, maxSize);
|
|
8936
9185
|
container.setSize(size);
|
|
8937
9186
|
this.render(width);
|
|
8938
9187
|
this.fireEvent(container, LayoutDragEventType.DRAG_STOP);
|
|
8939
9188
|
};
|
|
8940
|
-
|
|
8941
|
-
|
|
9189
|
+
this.storedMoveHandler = onMoveHandler;
|
|
9190
|
+
this.storedStopHandler = onStopHandler;
|
|
8942
9191
|
this.fireEvent(container, LayoutDragEventType.DRAG_START);
|
|
9192
|
+
doc.addEventListener(MOUSEMOVE, onMoveHandler);
|
|
9193
|
+
doc.addEventListener(MOUSEUP, onStopHandler);
|
|
8943
9194
|
}
|
|
8944
9195
|
/**
|
|
8945
9196
|
* @private
|
|
@@ -8957,32 +9208,47 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
8957
9208
|
const bottom = bounds.bottom;
|
|
8958
9209
|
const left = bounds.left;
|
|
8959
9210
|
const right = bounds.right;
|
|
8960
|
-
this.containerList
|
|
9211
|
+
const cList = this.containerList;
|
|
9212
|
+
let cursor = cList.length - 1;
|
|
9213
|
+
while (cursor >= 0) {
|
|
9214
|
+
const cont = cList[cursor];
|
|
8961
9215
|
const r = cont.constraints.region;
|
|
9216
|
+
cursor--;
|
|
8962
9217
|
if (r === LayoutRegion.WEST) {
|
|
8963
9218
|
cont.setTopPos(top);
|
|
8964
9219
|
cont.setRightPos(width - left);
|
|
8965
9220
|
cont.setBottomPos(bottom - top);
|
|
8966
|
-
|
|
9221
|
+
continue;
|
|
8967
9222
|
}
|
|
8968
9223
|
if (r === LayoutRegion.CENTER) {
|
|
8969
9224
|
cont.setTopPos(top);
|
|
8970
9225
|
cont.setLeftPos(left);
|
|
8971
9226
|
cont.setRightPos(right - left);
|
|
8972
9227
|
cont.setBottomPos(bottom - top);
|
|
8973
|
-
|
|
9228
|
+
continue;
|
|
8974
9229
|
}
|
|
8975
9230
|
if (r === LayoutRegion.EAST) {
|
|
8976
9231
|
cont.setTopPos(top);
|
|
8977
9232
|
cont.setLeftPos(width - (right - left));
|
|
8978
9233
|
cont.setBottomPos(bottom - top);
|
|
9234
|
+
continue;
|
|
8979
9235
|
}
|
|
8980
|
-
}
|
|
9236
|
+
}
|
|
9237
|
+
;
|
|
8981
9238
|
}
|
|
9239
|
+
/**
|
|
9240
|
+
* @private
|
|
9241
|
+
*/
|
|
8982
9242
|
checkLytContainer() {
|
|
8983
9243
|
if (!this.lytContainerElm)
|
|
8984
9244
|
throw new ReferenceError(LAYOUT_ERR_MSG);
|
|
8985
9245
|
}
|
|
9246
|
+
/**
|
|
9247
|
+
* @private
|
|
9248
|
+
*/
|
|
9249
|
+
deleteStoredHandlers() {
|
|
9250
|
+
this.storedMoveHandler = this.storedStopHandler = null;
|
|
9251
|
+
}
|
|
8986
9252
|
}
|
|
8987
9253
|
|
|
8988
9254
|
/**
|
|
@@ -9014,22 +9280,22 @@ class BorderLayout extends IdentifiableComponent {
|
|
|
9014
9280
|
/**
|
|
9015
9281
|
* @private
|
|
9016
9282
|
*/
|
|
9017
|
-
constructor(subscribeSvc) {
|
|
9283
|
+
constructor(subscribeSvc, document) {
|
|
9018
9284
|
super();
|
|
9019
9285
|
this.subscribeSvc = subscribeSvc;
|
|
9020
9286
|
/**
|
|
9021
9287
|
* Emits events each time the user starts dragging a region handle.
|
|
9022
9288
|
*/
|
|
9023
|
-
this.dragStart = new EventEmitter(
|
|
9289
|
+
this.dragStart = new EventEmitter();
|
|
9024
9290
|
/**
|
|
9025
9291
|
* Emits events each time the user stops dragging a region handle.
|
|
9026
9292
|
*/
|
|
9027
|
-
this.dragStop = new EventEmitter(
|
|
9293
|
+
this.dragStop = new EventEmitter();
|
|
9028
9294
|
/**
|
|
9029
9295
|
* Emits events each time the user is dragging a region handle.
|
|
9030
9296
|
*/
|
|
9031
|
-
this.dragging = new EventEmitter(
|
|
9032
|
-
this.renderer = new BorderLayoutRenderer(subscribeSvc);
|
|
9297
|
+
this.dragging = new EventEmitter();
|
|
9298
|
+
this.renderer = new BorderLayoutRenderer(subscribeSvc, document);
|
|
9033
9299
|
subscribeSvc.register(this, this.renderer.userAction.subscribe((event) => {
|
|
9034
9300
|
event.layout = this;
|
|
9035
9301
|
if (event.type === LayoutDragEventType.DRAGGING) {
|
|
@@ -9081,13 +9347,16 @@ class BorderLayout extends IdentifiableComponent {
|
|
|
9081
9347
|
resizeRegion(region, size) {
|
|
9082
9348
|
this.renderer.resizeRegion(region, size);
|
|
9083
9349
|
}
|
|
9084
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayout, deps: [{ token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9085
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: BorderLayout, isStandalone: true, selector: "atx-border-layout", outputs: { dragStart: "dragStart", dragStop: "dragStop", dragging: "dragging" }, host: { listeners: { "window:resize": "onResize()" } }, queries: [{ propertyName: "__containers__", predicate: BorderLayoutContainer }], viewQueries: [{ propertyName: "layoutContainer", first: true, predicate: ["atxLayoutContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<div #atxLayoutContainer class=\"atx-border-layout\">\n <ng-content></ng-content>\n</div>", styles: [".atx-border-layout{position:relative;height:100%;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.atx-border-layout
|
|
9350
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayout, deps: [{ token: SubscriptionService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9351
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: BorderLayout, isStandalone: true, selector: "atx-border-layout", outputs: { dragStart: "dragStart", dragStop: "dragStop", dragging: "dragging" }, host: { listeners: { "window:resize": "onResize()" } }, queries: [{ propertyName: "__containers__", predicate: BorderLayoutContainer }], viewQueries: [{ propertyName: "layoutContainer", first: true, predicate: ["atxLayoutContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<div #atxLayoutContainer class=\"atx-border-layout\">\n <ng-content></ng-content>\n</div>", styles: [".atx-border-layout{position:relative;height:100%;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.atx-border-layout{box-sizing:border-box}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }); }
|
|
9086
9352
|
}
|
|
9087
9353
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayout, decorators: [{
|
|
9088
9354
|
type: Component,
|
|
9089
|
-
args: [{ selector: 'atx-border-layout', standalone: true, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<div #atxLayoutContainer class=\"atx-border-layout\">\n <ng-content></ng-content>\n</div>", styles: [".atx-border-layout{position:relative;height:100%;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.atx-border-layout
|
|
9090
|
-
}], ctorParameters: () => [{ type: SubscriptionService }
|
|
9355
|
+
args: [{ selector: 'atx-border-layout', standalone: true, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<div #atxLayoutContainer class=\"atx-border-layout\">\n <ng-content></ng-content>\n</div>", styles: [".atx-border-layout{position:relative;height:100%;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.atx-border-layout{box-sizing:border-box}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }]
|
|
9356
|
+
}], ctorParameters: () => [{ type: SubscriptionService }, { type: Document, decorators: [{
|
|
9357
|
+
type: Inject,
|
|
9358
|
+
args: [DOCUMENT]
|
|
9359
|
+
}] }], propDecorators: { dragStart: [{
|
|
9091
9360
|
type: Output
|
|
9092
9361
|
}], dragStop: [{
|
|
9093
9362
|
type: Output
|
|
@@ -9406,5 +9675,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
9406
9675
|
* Generated bundle index. Do not edit.
|
|
9407
9676
|
*/
|
|
9408
9677
|
|
|
9409
|
-
export { APP_PRIDGE_REF, ATX_LOGGER_CONFIG, AbstractLogger, AbstractSubscriptionManager, AbstractVersionManager, AbstractWindowService, AnchorLinklDirective, AngularToolboxLogoComponent, AngularToolboxModule, AngularToolboxVersionService, AppBridgeError, AppBridgeService, ArrayList, ArrayListEvent, ArrayListEventType, AtxHttpMockConsoleService, AtxMonitoringConsoleComponent, BIGINT, BOOLEAN, BUTTON_ROLE, BorderLayout, BorderLayoutContainer, ButtonRoleDirective, CSS_PROP, ConsoleLogConnector, ContentRendererDirective, DARK_MODE_CONFIG, DEFAULT_LOG_CONNECTOR, DarkModeService, DefaultLogConnector, DropdownComponent, DropdownEvent, DropdownEventType, EMPTY_STRING, FEATURES, FUNCTION, FetchClient, FetchClientBuilder, FetchClientResponseType, HTTP_MOCKING_FRAMEWORK_CONFIG, HTTP_MOCK_MAX_DELAY, HTTP_MOCK_SERVICE, HtmlLogConnector, HttpHeadersMockBuilder, HttpMock, HttpMockLoggingService, HttpMockProductionPolicy, HttpMockService, HttpMockServiceError, HttpResponseMockBuilder, HttpStatusText, HttpStatusTextFinder, IdentifiableComponent, IntegrityError, LINK_ROLE, LOG_CONFIG_STRING, LOG_ERROR_STRING, LOG_INFO_STRING, LOG_WARNING_STRING, LayoutDragEvent, LayoutDragEventType, LayoutRegion, LogBuilder, LogImpl, LogLevel, LogUtil, LoggerService, NUMBER, NavigateToUrlDirective, OBJECT, STORAGE_KEY, STRING, SYMBOL, SafeHtmlPipe, ScrollService, SubscriptionError, SubscriptionService, UNDEFINED, Uuid, VERSION_CONFIG, VersionService, VersionUtil, WindowFeatureState, WindowService, WindowTarget, httpHeadersMock, httpMockFactory, httpResponseMock };
|
|
9678
|
+
export { APP_PRIDGE_REF, ATX_LOGGER_CONFIG, AbstractLogger, AbstractSubscriptionManager, AbstractVersionManager, AbstractWindowService, AnchorLinklDirective, AngularToolboxLogoComponent, AngularToolboxModule, AngularToolboxVersionService, AppBridgeError, AppBridgeService, ArrayList, ArrayListEvent, ArrayListEventType, AtxHttpMockConsoleService, AtxMockDocumentation, AtxMonitoringConsoleComponent, BIGINT, BOOLEAN, BUTTON_ROLE, BorderLayout, BorderLayoutContainer, ButtonRoleDirective, CSS_PROP, ConsoleLogConnector, ContentRendererDirective, DARK_MODE_CONFIG, DEFAULT_LOG_CONNECTOR, DarkModeService, DefaultLogConnector, DropdownComponent, DropdownEvent, DropdownEventType, EMPTY_STRING, FEATURES, FUNCTION, FetchClient, FetchClientBuilder, FetchClientResponseType, HTTP_MOCKING_FRAMEWORK_CONFIG, HTTP_MOCK_MAX_DELAY, HTTP_MOCK_SERVICE, HtmlLogConnector, HttpHeadersMockBuilder, HttpMock, HttpMockLoggingService, HttpMockProductionPolicy, HttpMockService, HttpMockServiceError, HttpResponseMockBuilder, HttpStatusText, HttpStatusTextFinder, IdentifiableComponent, IntegrityError, LINK_ROLE, LOG_CONFIG_STRING, LOG_ERROR_STRING, LOG_INFO_STRING, LOG_WARNING_STRING, LayoutDragEvent, LayoutDragEventType, LayoutRegion, LogBuilder, LogImpl, LogLevel, LogUtil, LoggerService, NUMBER, NavigateToUrlDirective, OBJECT, STORAGE_KEY, STRING, SYMBOL, SafeHtmlPipe, ScrollService, SubscriptionError, SubscriptionService, UNDEFINED, Uuid, VERSION_CONFIG, VersionService, VersionUtil, WindowFeatureState, WindowService, WindowTarget, httpHeadersMock, httpMockFactory, httpResponseMock };
|
|
9410
9679
|
//# sourceMappingURL=angular-toolbox.mjs.map
|