@sumaris-net/ngx-components 2.8.1-beta2 → 2.8.1-beta4
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/doc/changelog.md +6 -0
- package/esm2022/public_api.mjs +2 -1
- package/esm2022/src/app/core/account/account.page.mjs +5 -3
- package/esm2022/src/app/core/account/new-token.modal.mjs +7 -4
- package/esm2022/src/app/core/account/token.table.mjs +41 -24
- package/esm2022/src/app/core/form/properties/properties.table.mjs +6 -5
- package/esm2022/src/app/core/services/config/core.config.mjs +21 -1
- package/esm2022/src/app/core/table/row-field.component.mjs +116 -0
- package/esm2022/src/app/core/table/table.module.mjs +19 -21
- package/esm2022/src/app/shared/pipes/pipes.module.mjs +70 -127
- package/esm2022/src/app/shared/pipes/property.pipes.mjs +54 -26
- package/fesm2022/sumaris-net.ngx-components.mjs +298 -192
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
- package/src/app/core/account/account.page.d.ts +1 -0
- package/src/app/core/account/new-token.modal.d.ts +3 -1
- package/src/app/core/account/token.table.d.ts +8 -2
- package/src/app/core/form/properties/properties.table.d.ts +1 -0
- package/src/app/core/services/config/core.config.d.ts +3 -0
- package/src/app/core/table/row-field.component.d.ts +40 -0
- package/src/app/core/table/table.module.d.ts +6 -4
- package/src/app/shared/inputs.d.ts +1 -1
- package/src/app/shared/pipes/pipes.module.d.ts +1 -1
- package/src/app/shared/pipes/property.pipes.d.ts +14 -2
- package/src/assets/i18n/en-US.json +4 -1
- package/src/assets/i18n/en.json +4 -1
- package/src/assets/i18n/fr.json +4 -1
- package/src/theme/_ngx-components.table.scss +22 -18
package/package.json
CHANGED
package/public_api.d.ts
CHANGED
|
@@ -200,6 +200,7 @@ export * from './src/app/core/table/entities-table-datasource.class';
|
|
|
200
200
|
export * from './src/app/core/table/entities-async-table-datasource.class';
|
|
201
201
|
export * from './src/app/core/table/table-select-columns.component';
|
|
202
202
|
export * from './src/app/core/table/actions-column.component';
|
|
203
|
+
export * from './src/app/core/table/row-field.component';
|
|
203
204
|
export * from './src/app/core/icon/icon.component';
|
|
204
205
|
export * from './src/app/core/icon/icon.module';
|
|
205
206
|
export * from './src/app/core/home/home';
|
|
@@ -43,6 +43,7 @@ export declare class AccountPage extends AppForm<Account> implements OnInit, OnD
|
|
|
43
43
|
readonly mobile: boolean;
|
|
44
44
|
get valid(): boolean;
|
|
45
45
|
protected showApiTokens: boolean;
|
|
46
|
+
protected showLatLonFormat: boolean;
|
|
46
47
|
constructor(injector: Injector, formBuilder: UntypedFormBuilder, accountService: AccountService, network: NetworkService, navController: NavController, validatorService: AccountValidatorService, configService: ConfigService, cd: ChangeDetectorRef, locales: LocaleConfig[]);
|
|
47
48
|
ngOnInit(): void;
|
|
48
49
|
ngOnDestroy(): void;
|
|
@@ -8,6 +8,7 @@ import { IAppForm } from '../form/form.utils';
|
|
|
8
8
|
import { AccountService } from '../services/account.service';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export interface INewTokenModalOptions extends IEntityEditorModalOptions<UserToken> {
|
|
11
|
+
showScopes: boolean;
|
|
11
12
|
tokenScopes: TokenScope[];
|
|
12
13
|
existingNames: string[];
|
|
13
14
|
}
|
|
@@ -18,6 +19,7 @@ export declare class NewTokenModal extends AppEntityEditorModal<UserToken> imple
|
|
|
18
19
|
tokenForm: UntypedFormGroup;
|
|
19
20
|
tokenAppForm: IAppForm;
|
|
20
21
|
tokenConfig: MatAutocompleteFieldConfig;
|
|
22
|
+
showScopes: boolean;
|
|
21
23
|
tokenScopes: TokenScope[];
|
|
22
24
|
existingNames: string[];
|
|
23
25
|
private readonly platform;
|
|
@@ -35,5 +37,5 @@ export declare class NewTokenModal extends AppEntityEditorModal<UserToken> imple
|
|
|
35
37
|
copy(event: UIEvent): Promise<void>;
|
|
36
38
|
protected getFlags(scopes: TokenScope[]): number;
|
|
37
39
|
static ɵfac: i0.ɵɵFactoryDeclaration<NewTokenModal, never>;
|
|
38
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NewTokenModal, "app-new-token-modal", never, { "tokenScopes": { "alias": "tokenScopes"; "required": false; }; "existingNames": { "alias": "existingNames"; "required": false; }; }, {}, never, ["*"], false, never>;
|
|
40
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NewTokenModal, "app-new-token-modal", never, { "showScopes": { "alias": "showScopes"; "required": false; }; "tokenScopes": { "alias": "tokenScopes"; "required": false; }; "existingNames": { "alias": "existingNames"; "required": false; }; }, {}, never, ["*"], false, never>;
|
|
39
41
|
}
|
|
@@ -4,15 +4,20 @@ import { ValidatorService } from '@e-is/ngx-material-table';
|
|
|
4
4
|
import { TokenScope, UserToken } from '../services/model/token.model';
|
|
5
5
|
import { AppInMemoryTable } from '../table/memory-table.class';
|
|
6
6
|
import { Environment } from '../../../environments/environment.class';
|
|
7
|
+
import { ConfigService } from '../services/config.service';
|
|
8
|
+
import { Configuration } from '../services/model/config.model';
|
|
7
9
|
import * as i0 from "@angular/core";
|
|
8
10
|
export declare class UserTokenTable extends AppInMemoryTable<UserToken> implements OnInit {
|
|
9
11
|
protected injector: Injector;
|
|
10
12
|
protected formBuilder: UntypedFormBuilder;
|
|
11
13
|
protected validatorService: ValidatorService;
|
|
12
14
|
protected cd: ChangeDetectorRef;
|
|
15
|
+
protected configService: ConfigService;
|
|
13
16
|
protected tokenScopes: TokenScope[];
|
|
14
17
|
useSticky: boolean;
|
|
15
|
-
|
|
18
|
+
protected showScopes: boolean;
|
|
19
|
+
protected defaultScope: string;
|
|
20
|
+
constructor(injector: Injector, formBuilder: UntypedFormBuilder, validatorService: ValidatorService, cd: ChangeDetectorRef, configService: ConfigService, environment: Environment, tokenScopes: TokenScope[]);
|
|
16
21
|
ngOnInit(): void;
|
|
17
22
|
get value(): UserToken[];
|
|
18
23
|
set value(data: UserToken[]);
|
|
@@ -21,7 +26,8 @@ export declare class UserTokenTable extends AppInMemoryTable<UserToken> implemen
|
|
|
21
26
|
}): void;
|
|
22
27
|
addToken(event: UIEvent): Promise<void>;
|
|
23
28
|
display(scopes: TokenScope[]): string;
|
|
29
|
+
protected onConfigLoaded(config: Configuration): void;
|
|
24
30
|
protected markForCheck(): void;
|
|
25
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<UserTokenTable, [null, null, null, null, null, { optional: true; }]>;
|
|
31
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UserTokenTable, [null, null, null, null, null, null, { optional: true; }]>;
|
|
26
32
|
static ɵcmp: i0.ɵɵComponentDeclaration<UserTokenTable, "app-user-token-table", never, { "useSticky": { "alias": "useSticky"; "required": false; }; }, {}, never, never, false, never>;
|
|
27
33
|
}
|
|
@@ -55,6 +55,7 @@ export declare class AppPropertiesTable extends AppInMemoryTable<PropertyEntity,
|
|
|
55
55
|
ngOnInit(): void;
|
|
56
56
|
get value(): PropertyEntity[];
|
|
57
57
|
set value(data: PropertyEntity[]);
|
|
58
|
+
definitionByRow: (row: TableElement<PropertyEntity>) => FormFieldDefinition;
|
|
58
59
|
setValue(value: PropertyEntity[], opts?: {
|
|
59
60
|
emitEvent?: boolean;
|
|
60
61
|
}): void;
|
|
@@ -4,9 +4,12 @@ export declare const CORE_CONFIG_OPTIONS: Readonly<{
|
|
|
4
4
|
FAVICON: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
5
5
|
DEFAULT_LOCALE: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
6
6
|
DEFAULT_LAT_LONG_FORMAT: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
7
|
+
DEFAULT_LAT_LONG_FORMAT_ENABLED: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
7
8
|
REGISTRATION_ENABLE: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
8
9
|
AUTH_TOKEN_TYPE: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
9
10
|
AUTH_API_TOKEN_ENABLED: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
11
|
+
AUTH_API_TOKEN_SCOPE_ENABLED: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
12
|
+
DEFAULT_AUTH_API_TOKEN_SCOPE: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
10
13
|
GRAVATAR_ENABLE: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
11
14
|
GRAVATAR_URL: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
12
15
|
TESTING: FormFieldDefinition<string, import("../../../shared/form/field.model").FormFieldType, any>;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
import { ThemePalette } from '@angular/material/core';
|
|
3
|
+
import { PredefinedColors } from '@ionic/core';
|
|
4
|
+
import { MatFormFieldAppearance } from '@angular/material/form-field';
|
|
5
|
+
import { AppFloatLabelType, FormFieldDefinition } from '../../shared/form/field.model';
|
|
6
|
+
import { MatColumnDef, MatTable } from '@angular/material/table';
|
|
7
|
+
import { AsyncTableElement, TableElement } from '@e-is/ngx-material-table';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export declare class AppRowField implements OnInit, OnDestroy {
|
|
10
|
+
protected cd: ChangeDetectorRef;
|
|
11
|
+
matTable: MatTable<any>;
|
|
12
|
+
columnDef: MatColumnDef;
|
|
13
|
+
name: string;
|
|
14
|
+
definition: FormFieldDefinition;
|
|
15
|
+
definitionFn: (row: TableElement<any> | AsyncTableElement<any>) => FormFieldDefinition;
|
|
16
|
+
headerI18n: string;
|
|
17
|
+
sortable: boolean;
|
|
18
|
+
resizable: boolean;
|
|
19
|
+
required: boolean;
|
|
20
|
+
readonly: boolean;
|
|
21
|
+
sticky: boolean;
|
|
22
|
+
draggable: boolean;
|
|
23
|
+
disabled: boolean;
|
|
24
|
+
placeholder: string;
|
|
25
|
+
compact: boolean;
|
|
26
|
+
floatLabel: AppFloatLabelType;
|
|
27
|
+
appearance: MatFormFieldAppearance;
|
|
28
|
+
tabindex: number;
|
|
29
|
+
autofocus: boolean;
|
|
30
|
+
clearable: boolean;
|
|
31
|
+
chipColor: ThemePalette | PredefinedColors;
|
|
32
|
+
classList: string;
|
|
33
|
+
debug: boolean;
|
|
34
|
+
protected logPrefix: string;
|
|
35
|
+
constructor(cd: ChangeDetectorRef, matTable: MatTable<any>);
|
|
36
|
+
ngOnInit(): void;
|
|
37
|
+
ngOnDestroy(): void;
|
|
38
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppRowField, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppRowField, "app-row-field", never, { "name": { "alias": "name"; "required": false; }; "definition": { "alias": "definition"; "required": false; }; "definitionFn": { "alias": "definitionFn"; "required": false; }; "headerI18n": { "alias": "headerI18n"; "required": false; }; "sortable": { "alias": "sortable"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; "draggable": { "alias": "draggable"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "compact": { "alias": "compact"; "required": false; }; "floatLabel": { "alias": "floatLabel"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; "autofocus": { "alias": "autofocus"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "chipColor": { "alias": "chipColor"; "required": false; }; "classList": { "alias": "class"; "required": false; }; "debug": { "alias": "debug"; "required": false; }; }, {}, never, never, false, never>;
|
|
40
|
+
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
import * as i1 from "./table-select-columns.component";
|
|
3
3
|
import * as i2 from "./actions-column.component";
|
|
4
|
-
import * as i3 from "./
|
|
5
|
-
import * as i4 from "
|
|
6
|
-
import * as i5 from "
|
|
4
|
+
import * as i3 from "./row-field.component";
|
|
5
|
+
import * as i4 from "./table.pipes";
|
|
6
|
+
import * as i5 from "../../shared/shared.module";
|
|
7
|
+
import * as i6 from "@ngx-translate/core";
|
|
8
|
+
import * as i7 from "../../shared/directives/resizable/resizable.module";
|
|
7
9
|
export declare class AppTableModule {
|
|
8
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppTableModule, never>;
|
|
9
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AppTableModule, [typeof i1.TableSelectColumnsComponent, typeof i2.ActionsColumnComponent, typeof i3.IsAllSelectedPipe, typeof
|
|
11
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AppTableModule, [typeof i1.TableSelectColumnsComponent, typeof i2.ActionsColumnComponent, typeof i3.AppRowField, typeof i4.IsAllSelectedPipe, typeof i4.IsNotAllSelectedPipe], [typeof i5.SharedModule, typeof i6.TranslateModule, typeof i7.ResizableModule], [typeof i6.TranslateModule, typeof i1.TableSelectColumnsComponent, typeof i2.ActionsColumnComponent, typeof i3.AppRowField, typeof i4.IsAllSelectedPipe, typeof i4.IsNotAllSelectedPipe]>;
|
|
10
12
|
static ɵinj: i0.ɵɵInjectorDeclaration<AppTableModule>;
|
|
11
13
|
}
|
|
@@ -16,7 +16,7 @@ export interface InputElement extends FocusableElement {
|
|
|
16
16
|
}
|
|
17
17
|
export declare function isInputElement(object: any): object is InputElement;
|
|
18
18
|
export declare function asInputElement(object: ElementRef): InputElement | undefined;
|
|
19
|
-
export declare function tabindexComparator(a: InputElement, b: InputElement):
|
|
19
|
+
export declare function tabindexComparator(a: InputElement, b: InputElement): 1 | 0 | -1;
|
|
20
20
|
export interface CanGainFocusOptions {
|
|
21
21
|
minTabindex?: number;
|
|
22
22
|
maxTabindex?: number;
|
|
@@ -25,6 +25,6 @@ import * as i23 from "@ionic/angular";
|
|
|
25
25
|
import * as i24 from "@ngx-translate/core";
|
|
26
26
|
export declare class SharedPipesModule {
|
|
27
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedPipesModule, never>;
|
|
28
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedPipesModule, [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i14.TranslateContextPipe, typeof i14.TranslatablePipe, typeof i15.NgInitDirective, typeof i16.FormErrorTranslatePipe, typeof i16.FormGetPipe, typeof i16.FormGetControlPipe, typeof i16.FormGetArrayPipe, typeof i16.FormGetGroupPipe, typeof i16.FormGetValuePipe, typeof
|
|
28
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedPipesModule, [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i1.ValueFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i14.TranslateContextPipe, typeof i14.TranslatablePipe, typeof i15.NgInitDirective, typeof i16.FormErrorTranslatePipe, typeof i16.FormGetPipe, typeof i16.FormGetControlPipe, typeof i16.FormGetArrayPipe, typeof i16.FormGetGroupPipe, typeof i16.FormGetValuePipe, typeof i17.MatColorPipe, typeof i18.AsAnyPipe, typeof i18.AsArrayPipe, typeof i18.AsObservablePipe, typeof i18.AsFloatLabelTypePipe, typeof i19.MaskitoPlaceholderPipe, typeof i20.IsSelectedPipe, typeof i20.IsNotEmptySelectionPipe, typeof i20.IsEmptySelectionPipe, typeof i20.SelectionLengthPipe, typeof i20.IsMultipleSelectionPipe, typeof i20.IsSingleSelectionPipe, typeof i21.BadgeNumberPipe], [typeof i22.CommonModule, typeof i23.IonicModule, typeof i24.TranslateModule], [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i1.ValueFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i14.TranslateContextPipe, typeof i14.TranslatablePipe, typeof i15.NgInitDirective, typeof i16.FormErrorTranslatePipe, typeof i16.FormGetPipe, typeof i16.FormGetControlPipe, typeof i16.FormGetArrayPipe, typeof i16.FormGetGroupPipe, typeof i16.FormGetValuePipe, typeof i17.MatColorPipe, typeof i18.AsAnyPipe, typeof i18.AsArrayPipe, typeof i18.AsObservablePipe, typeof i18.AsFloatLabelTypePipe, typeof i19.MaskitoPlaceholderPipe, typeof i20.IsSelectedPipe, typeof i20.IsNotEmptySelectionPipe, typeof i20.IsEmptySelectionPipe, typeof i20.SelectionLengthPipe, typeof i20.IsMultipleSelectionPipe, typeof i20.IsSingleSelectionPipe, typeof i21.BadgeNumberPipe]>;
|
|
29
29
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedPipesModule>;
|
|
30
30
|
}
|
|
@@ -11,16 +11,28 @@ export declare class PropertyGetPipe implements PipeTransform {
|
|
|
11
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<PropertyGetPipe, never>;
|
|
12
12
|
static ɵpipe: i0.ɵɵPipeDeclaration<PropertyGetPipe, "propertyGet", false>;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
declare abstract class AbstractValuePipe {
|
|
15
15
|
private dateFormat;
|
|
16
16
|
private translate;
|
|
17
17
|
private _i18nYes;
|
|
18
18
|
private _i18nNo;
|
|
19
19
|
constructor(dateFormat: DateFormatService, translate: TranslateService);
|
|
20
|
-
transform(obj: any, keyOrDefinition: string | FormFieldDefinition): string | Promise<string>;
|
|
21
20
|
get i18nYes(): string;
|
|
22
21
|
get i18nNo(): string;
|
|
22
|
+
protected valueToString(value: any, definition?: FormFieldDefinition): string;
|
|
23
|
+
}
|
|
24
|
+
export declare class PropertyFormatPipe extends AbstractValuePipe implements PipeTransform {
|
|
25
|
+
constructor(dateFormat: DateFormatService, translate: TranslateService);
|
|
26
|
+
transform(obj: any, keyOrDefinition: string | FormFieldDefinition): string | Promise<string>;
|
|
23
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<PropertyFormatPipe, never>;
|
|
24
28
|
static ɵpipe: i0.ɵɵPipeDeclaration<PropertyFormatPipe, "propertyFormat", false>;
|
|
25
29
|
static ɵprov: i0.ɵɵInjectableDeclaration<PropertyFormatPipe>;
|
|
26
30
|
}
|
|
31
|
+
export declare class ValueFormatPipe extends AbstractValuePipe implements PipeTransform {
|
|
32
|
+
constructor(dateFormat: DateFormatService, translate: TranslateService);
|
|
33
|
+
transform(value: any, definition: FormFieldDefinition): string | Promise<string>;
|
|
34
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ValueFormatPipe, never>;
|
|
35
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<ValueFormatPipe, "valueFormat", false>;
|
|
36
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ValueFormatPipe>;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
@@ -152,6 +152,7 @@
|
|
|
152
152
|
"ENABLE_GRAVATAR": "User > Enable Gravatar?",
|
|
153
153
|
"DEFAULT_LOCALE": "Default Language",
|
|
154
154
|
"DEFAULT_LATLONG_FORMAT": "Default lat/lon format",
|
|
155
|
+
"ENABLE_DEFAULT_LATLONG_FORMAT": "Show default lat/lon format",
|
|
155
156
|
"APP_MIN_VERSION": "App > Minimal compatible version (x.y.z)",
|
|
156
157
|
"HELP_URL": "App > User manual (URL)",
|
|
157
158
|
"FORUM_URL": "App > Forum address (URL)",
|
|
@@ -203,7 +204,9 @@
|
|
|
203
204
|
"TOKEN": "Crypto",
|
|
204
205
|
"BASIC_AND_TOKEN": "Basic and crypto"
|
|
205
206
|
},
|
|
206
|
-
"ENABLE_AUTH_API_TOKENS": "API > Enable auth tokens"
|
|
207
|
+
"ENABLE_AUTH_API_TOKENS": "API > Enable auth tokens",
|
|
208
|
+
"ENABLE_AUTH_API_TOKENS_SCOPE": "API > Enable rights on auth tokens",
|
|
209
|
+
"DEFAULT_AUTH_API_TOKEN_SCOPE": "API > Default right on new auth token"
|
|
207
210
|
}
|
|
208
211
|
},
|
|
209
212
|
"MENU": {
|
package/src/assets/i18n/en.json
CHANGED
|
@@ -152,6 +152,7 @@
|
|
|
152
152
|
"ENABLE_GRAVATAR": "User > Enable Gravatar?",
|
|
153
153
|
"DEFAULT_LOCALE": "Default Language",
|
|
154
154
|
"DEFAULT_LATLONG_FORMAT": "Default lat/lon format",
|
|
155
|
+
"ENABLE_DEFAULT_LATLONG_FORMAT": "Show default lat/lon format",
|
|
155
156
|
"APP_MIN_VERSION": "App > Minimal compatible version (x.y.z)",
|
|
156
157
|
"HELP_URL": "App > User manual (URL)",
|
|
157
158
|
"FORUM_URL": "App > Forum address (URL)",
|
|
@@ -203,7 +204,9 @@
|
|
|
203
204
|
"TOKEN": "Crypto",
|
|
204
205
|
"BASIC_AND_TOKEN": "Basic and crypto"
|
|
205
206
|
},
|
|
206
|
-
"ENABLE_AUTH_API_TOKENS": "API > Enable auth tokens"
|
|
207
|
+
"ENABLE_AUTH_API_TOKENS": "API > Enable auth tokens",
|
|
208
|
+
"ENABLE_AUTH_API_TOKENS_SCOPE": "API > Enable rights on auth tokens",
|
|
209
|
+
"DEFAULT_AUTH_API_TOKEN_SCOPE": "API > Default right on new auth token"
|
|
207
210
|
}
|
|
208
211
|
},
|
|
209
212
|
"MENU": {
|
package/src/assets/i18n/fr.json
CHANGED
|
@@ -152,6 +152,7 @@
|
|
|
152
152
|
"ENABLE_GRAVATAR": "Utilisateur > Utiliser Gravatar ?",
|
|
153
153
|
"DEFAULT_LOCALE": "Langue par défaut",
|
|
154
154
|
"DEFAULT_LATLONG_FORMAT": "Format lat/lon par défaut",
|
|
155
|
+
"ENABLE_DEFAULT_LATLONG_FORMAT": "Affichage du format lat/lon par défaut",
|
|
155
156
|
"APP_MIN_VERSION": "App > Version minimale compatible (x.y.z)",
|
|
156
157
|
"HELP_URL": "App > Adresse du manuel utilisateur (URL)",
|
|
157
158
|
"FORUM_URL": "App > Adresse du forum (URL)",
|
|
@@ -203,7 +204,9 @@
|
|
|
203
204
|
"TOKEN": "Cryptographique",
|
|
204
205
|
"BASIC_AND_TOKEN": "Basique et cryptographique"
|
|
205
206
|
},
|
|
206
|
-
"ENABLE_AUTH_API_TOKENS": "API > Activer les jetons d'authentification"
|
|
207
|
+
"ENABLE_AUTH_API_TOKENS": "API > Activer les jetons d'authentification",
|
|
208
|
+
"ENABLE_AUTH_API_TOKENS_SCOPE": "API > Activer les droits des jetons d'authentification",
|
|
209
|
+
"DEFAULT_AUTH_API_TOKEN_SCOPE": "API > Droit par défaut d'un nouveau jeton d'authentification"
|
|
207
210
|
}
|
|
208
211
|
},
|
|
209
212
|
"MENU": {
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
transition: none !important;
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
-
.mat-sort-header-arrow:not([style*=
|
|
94
|
+
.mat-sort-header-arrow:not([style*='opacity: 1']) {
|
|
95
95
|
display: none;
|
|
96
96
|
}
|
|
97
97
|
}
|
|
@@ -108,7 +108,6 @@
|
|
|
108
108
|
.mat-mdc-header-cell,
|
|
109
109
|
.mat-mdc-cell,
|
|
110
110
|
.mat-mdc-footer-cell {
|
|
111
|
-
|
|
112
111
|
// Remove default padding
|
|
113
112
|
padding-inline: 0;
|
|
114
113
|
|
|
@@ -126,7 +125,6 @@
|
|
|
126
125
|
|
|
127
126
|
/* Add a start padding to content (but not the cell itself) (e.g. tables with odd/event style - like BatchGroupsTable) */
|
|
128
127
|
&.mat-mdc-cell-content-start-padding {
|
|
129
|
-
|
|
130
128
|
// Reset start padding here (only apply cell's content)
|
|
131
129
|
padding-inline-start: 0;
|
|
132
130
|
|
|
@@ -221,7 +219,7 @@
|
|
|
221
219
|
.mat-mdc-cell-computed,
|
|
222
220
|
.mat-cell-computed,
|
|
223
221
|
.mat-mdc-cell ion-text.computed,
|
|
224
|
-
.mat-mdc-cell ion-label.computed
|
|
222
|
+
.mat-mdc-cell ion-label.computed {
|
|
225
223
|
--ion-text-color: var(--app-form-color-computed, #{$app-form-color-computed}) !important;
|
|
226
224
|
color: var(--ion-text-color) !important;
|
|
227
225
|
font-style: italic;
|
|
@@ -229,7 +227,6 @@
|
|
|
229
227
|
}
|
|
230
228
|
|
|
231
229
|
.mat-mdc-row {
|
|
232
|
-
|
|
233
230
|
// Disabled row
|
|
234
231
|
&.mat-mdc-row-disabled *,
|
|
235
232
|
&.mat-row-disabled * {
|
|
@@ -250,7 +247,7 @@
|
|
|
250
247
|
&.mat-mdc-row-selected,
|
|
251
248
|
&.mat-row-selected {
|
|
252
249
|
--ion-text-color: var(--app-table-row-item-selected-text-color) !important;
|
|
253
|
-
--ion-background-color: var(--app-table-row-item-selected-background-color) !important
|
|
250
|
+
--ion-background-color: var(--app-table-row-item-selected-background-color) !important;
|
|
254
251
|
|
|
255
252
|
--mdc-filled-text-field-input-text-color: var(--ion-text-color);
|
|
256
253
|
--mat-select-enabled-trigger-text-color: var(--ion-text-color);
|
|
@@ -271,7 +268,6 @@
|
|
|
271
268
|
&.mat-row-disabled:hover {
|
|
272
269
|
background-color: var(--ion-background-color) !important;
|
|
273
270
|
}
|
|
274
|
-
|
|
275
271
|
}
|
|
276
272
|
|
|
277
273
|
// Dirty row
|
|
@@ -303,7 +299,7 @@
|
|
|
303
299
|
color: inherit;
|
|
304
300
|
|
|
305
301
|
.mdc-floating-label {
|
|
306
|
-
|
|
302
|
+
visibility: hidden;
|
|
307
303
|
}
|
|
308
304
|
}
|
|
309
305
|
|
|
@@ -343,7 +339,8 @@
|
|
|
343
339
|
.mat-mdc-form-field-icon-prefix {
|
|
344
340
|
padding: 0;
|
|
345
341
|
|
|
346
|
-
ion-icon,
|
|
342
|
+
ion-icon,
|
|
343
|
+
.mat-icon {
|
|
347
344
|
$font-size: calculateRem(18px);
|
|
348
345
|
$margin-vertical: calculateRem(4px);
|
|
349
346
|
height: $font-size;
|
|
@@ -375,13 +372,13 @@
|
|
|
375
372
|
white-space: nowrap;
|
|
376
373
|
}
|
|
377
374
|
|
|
378
|
-
input[type=number]::-webkit-outer-spin-button,
|
|
379
|
-
input[type=number]::-webkit-inner-spin-button {
|
|
375
|
+
input[type='number']::-webkit-outer-spin-button,
|
|
376
|
+
input[type='number']::-webkit-inner-spin-button {
|
|
380
377
|
-webkit-appearance: none;
|
|
381
378
|
margin: 0;
|
|
382
379
|
}
|
|
383
380
|
|
|
384
|
-
input[type=number] {
|
|
381
|
+
input[type='number'] {
|
|
385
382
|
//text-align: right;
|
|
386
383
|
-moz-appearance: textfield;
|
|
387
384
|
}
|
|
@@ -396,7 +393,8 @@
|
|
|
396
393
|
--mdc-icon-button-state-layer-size: 24px;
|
|
397
394
|
padding: 0;
|
|
398
395
|
|
|
399
|
-
ion-icon,
|
|
396
|
+
ion-icon,
|
|
397
|
+
.mat-icon {
|
|
400
398
|
$font-size: calculateRem(18px);
|
|
401
399
|
font-size: $font-size;
|
|
402
400
|
line-height: 1.125;
|
|
@@ -406,7 +404,6 @@
|
|
|
406
404
|
width: var(--mdc-icon-button-state-layer-size);
|
|
407
405
|
}
|
|
408
406
|
}
|
|
409
|
-
|
|
410
407
|
}
|
|
411
408
|
|
|
412
409
|
// Specific behavior for chips
|
|
@@ -427,7 +424,7 @@
|
|
|
427
424
|
visibility: hidden;
|
|
428
425
|
}
|
|
429
426
|
|
|
430
|
-
&.mat-form-field-hide-placeholder .mat-mdc-select-placeholder
|
|
427
|
+
&.mat-form-field-hide-placeholder .mat-mdc-select-placeholder {
|
|
431
428
|
/* TODO use variables select theme */
|
|
432
429
|
color: rgba(0, 0, 0, 0.6) !important;
|
|
433
430
|
-webkit-text-fill-color: rgba(0, 0, 0, 0.6) !important;
|
|
@@ -449,7 +446,6 @@
|
|
|
449
446
|
.mat-boolean-field-button.mat-mdc-form-field-appearance-fill .mat-mdc-form-field-infix,
|
|
450
447
|
.mat-boolean-field-button .mat-mdc-form-field-infix {
|
|
451
448
|
// Increase top border (because of button height)
|
|
452
|
-
|
|
453
449
|
}
|
|
454
450
|
|
|
455
451
|
mat-date-time-field {
|
|
@@ -555,16 +551,24 @@
|
|
|
555
551
|
--mdc-icon-button-state-layer-size: var(--mat-paginator-container-size) !important;
|
|
556
552
|
padding: 6px !important;
|
|
557
553
|
}
|
|
554
|
+
}
|
|
558
555
|
|
|
556
|
+
// -------------------------
|
|
557
|
+
// Specific Properties table
|
|
558
|
+
// -------------------------
|
|
559
|
+
app-properties-table {
|
|
560
|
+
.mat-column-value {
|
|
561
|
+
min-width: 50%;
|
|
562
|
+
max-width: 50%;
|
|
563
|
+
width: 50%;
|
|
564
|
+
}
|
|
559
565
|
}
|
|
560
566
|
|
|
561
567
|
html.plt-mobile {
|
|
562
|
-
|
|
563
568
|
// fixme: class mat-paginator-footer not used anymore, use .mat-mdc-paginator
|
|
564
569
|
.mat-paginator-footer {
|
|
565
570
|
.mat-paginator-outer-container {
|
|
566
571
|
.mat-paginator-container {
|
|
567
|
-
|
|
568
572
|
// Move paginator to the left,
|
|
569
573
|
// because floating button are on the right
|
|
570
574
|
margin-top: 0 !important;
|