@sumaris-net/ngx-components 18.17.7-rc4 → 18.18.1
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 +4 -2
- package/esm2022/src/app/admin/users/users-select.modal.mjs +1 -1
- package/esm2022/src/app/admin/users/users.mjs +1 -1
- package/esm2022/src/app/core/about/about.modal.mjs +1 -1
- package/esm2022/src/app/core/account/account.page.mjs +1 -1
- package/esm2022/src/app/core/account/new-token.form.mjs +1 -1
- package/esm2022/src/app/core/account/new-token.modal.mjs +1 -1
- package/esm2022/src/app/core/account/password/change-password.form.mjs +1 -1
- package/esm2022/src/app/core/account/password/change-password.page.mjs +1 -1
- package/esm2022/src/app/core/account/token.table.mjs +1 -1
- package/esm2022/src/app/core/auth/auth.form.mjs +1 -1
- package/esm2022/src/app/core/auth/auth.modal.mjs +1 -1
- package/esm2022/src/app/core/auth/reset-password.modal.mjs +1 -1
- package/esm2022/src/app/core/form/array/testing/form-array.test.mjs +1 -1
- package/esm2022/src/app/core/form/buttons/form-buttons-bar.component.mjs +1 -1
- package/esm2022/src/app/core/form/entity/entity-metadata.component.mjs +1 -1
- package/esm2022/src/app/core/form/list/list.form.mjs +1 -1
- package/esm2022/src/app/core/form/properties/properties-file.service.mjs +133 -0
- package/esm2022/src/app/core/form/properties/properties.form.mjs +97 -19
- package/esm2022/src/app/core/form/properties/properties.module.mjs +53 -5
- package/esm2022/src/app/core/form/properties/properties.table.mjs +1 -1
- package/esm2022/src/app/core/form/properties/testing/properties-form.test.mjs +4 -5
- package/esm2022/src/app/core/form/text-popover/testing/text-popover.testing.mjs +1 -1
- package/esm2022/src/app/core/form/text-popover/text-popover.component.mjs +1 -1
- package/esm2022/src/app/core/form/username/username.form.mjs +1 -1
- package/esm2022/src/app/core/home/home.mjs +1 -1
- package/esm2022/src/app/core/icon/icon.component.mjs +1 -1
- package/esm2022/src/app/core/install/install-upgrade-card.component.mjs +1 -1
- package/esm2022/src/app/core/menu/menu.component.mjs +1 -1
- package/esm2022/src/app/core/menu/sub-menu-tab.directive.mjs +1 -1
- package/esm2022/src/app/core/menu/testing/menu-other.testing.mjs +1 -1
- package/esm2022/src/app/core/menu/testing/menu.testing.mjs +1 -1
- package/esm2022/src/app/core/offline/update-offline-mode-card.component.mjs +1 -1
- package/esm2022/src/app/core/peer/select-peer.modal.mjs +1 -1
- package/esm2022/src/app/core/register/register-confirm.page.mjs +1 -1
- package/esm2022/src/app/core/register/register.form.mjs +1 -1
- package/esm2022/src/app/core/register/register.modal.mjs +1 -1
- package/esm2022/src/app/core/services/account.service.mjs +2 -2
- package/esm2022/src/app/core/services/local-settings.service.mjs +48 -42
- package/esm2022/src/app/core/services/model/config.model.mjs +1 -1
- package/esm2022/src/app/core/services/pipes/account.pipes.mjs +1 -1
- package/esm2022/src/app/core/services/pipes/department-to-string.pipe.mjs +1 -1
- package/esm2022/src/app/core/services/pipes/person-to-string.pipe.mjs +1 -1
- package/esm2022/src/app/core/services/pipes/referential-to-string.pipe.mjs +1 -1
- package/esm2022/src/app/core/services/pipes/usage-mode.pipes.mjs +1 -1
- package/esm2022/src/app/core/settings/settings.page.mjs +2 -2
- package/esm2022/src/app/core/table/async-table.class.mjs +3 -3
- package/esm2022/src/app/core/table/column/actions-column.component.mjs +1 -1
- package/esm2022/src/app/core/table/column/nav-actions-column.component.mjs +1 -1
- package/esm2022/src/app/core/table/column/row-field.component.mjs +1 -1
- package/esm2022/src/app/core/table/table-select-columns.component.mjs +1 -1
- package/esm2022/src/app/core/table/table.class.mjs +3 -3
- package/esm2022/src/app/core/table/table.pipes.mjs +1 -1
- package/esm2022/src/app/core/table/table.utils.mjs +1 -1
- package/esm2022/src/app/core/table/testing/table.testing.mjs +1 -1
- package/esm2022/src/app/core/table/testing/table2.testing.mjs +1 -1
- package/esm2022/src/app/shared/audio/audio.testing.mjs +1 -1
- package/esm2022/src/app/shared/debug/debug.component.mjs +1 -1
- package/esm2022/src/app/shared/directives/autofocus.directive.mjs +1 -1
- package/esm2022/src/app/shared/directives/autoresize.directive.mjs +1 -1
- package/esm2022/src/app/shared/directives/autotitle.directive.mjs +1 -1
- package/esm2022/src/app/shared/directives/drag-and-drop.directive.mjs +1 -1
- package/esm2022/src/app/shared/directives/ng-var.directive.mjs +1 -1
- package/esm2022/src/app/shared/directives/resizable/resizable.component.mjs +1 -1
- package/esm2022/src/app/shared/directives/resizable/resizable.directive.mjs +1 -1
- package/esm2022/src/app/shared/directives/throttled-click.directive.mjs +1 -1
- package/esm2022/src/app/shared/form/field.component.mjs +1 -1
- package/esm2022/src/app/shared/form/loading-spinner.mjs +11 -11
- package/esm2022/src/app/shared/hotkeys/dialog/hotkeys-dialog.component.mjs +1 -1
- package/esm2022/src/app/shared/image/gallery/image-gallery.component.mjs +3 -3
- package/esm2022/src/app/shared/image/gallery/testing/gallery.testing.mjs +1 -1
- package/esm2022/src/app/shared/markdown/markdown.component.mjs +17 -17
- package/esm2022/src/app/shared/markdown/markdown.directive.mjs +1 -1
- package/esm2022/src/app/shared/markdown/markdown.modal.mjs +1 -1
- package/esm2022/src/app/shared/markdown/markdown.service.mjs +1 -1
- package/esm2022/src/app/shared/markdown/testing/markdown.test.mjs +1 -1
- package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +1 -1
- package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +1 -1
- package/esm2022/src/app/shared/material/badge/badge.directive.mjs +1 -1
- package/esm2022/src/app/shared/material/badge/badge.test.mjs +3 -3
- package/esm2022/src/app/shared/material/boolean/material.boolean.mjs +1 -1
- package/esm2022/src/app/shared/material/boolean/testing/boolean.test.page.mjs +1 -1
- package/esm2022/src/app/shared/material/chips/material.chips.mjs +1 -1
- package/esm2022/src/app/shared/material/chips/testing/chips.test.mjs +1 -1
- package/esm2022/src/app/shared/material/datetime/material.date.mjs +1 -1
- package/esm2022/src/app/shared/material/datetime/material.dateshort.mjs +1 -1
- package/esm2022/src/app/shared/material/datetime/material.datetime.mjs +3 -3
- package/esm2022/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +1 -1
- package/esm2022/src/app/shared/material/datetime/testing/mat-date.test.mjs +1 -1
- package/esm2022/src/app/shared/material/datetime/testing/mat-dateshort.test.mjs +1 -1
- package/esm2022/src/app/shared/material/duration/material.duration.mjs +1 -1
- package/esm2022/src/app/shared/material/duration/testing/mat-duration.test.mjs +1 -1
- package/esm2022/src/app/shared/material/latlong/material.latlong-input.mjs +1 -1
- package/esm2022/src/app/shared/material/latlong/material.latlong.mjs +1 -1
- package/esm2022/src/app/shared/material/latlong/testing/latlong.test.mjs +1 -1
- package/esm2022/src/app/shared/material/swipe/material.swipe.mjs +1 -1
- package/esm2022/src/app/shared/material/swipe/testing/swipe.test.mjs +1 -1
- package/esm2022/src/app/shared/material/test/test-component.mjs +43 -43
- package/esm2022/src/app/shared/material/testing/common.test.mjs +1 -1
- package/esm2022/src/app/shared/material/text/testing/text-form.testing.mjs +1 -1
- package/esm2022/src/app/shared/material/text/text-form.component.mjs +1 -1
- package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +1 -1
- package/esm2022/src/app/shared/named-filter/testing/named-filter-selector.testing.mjs +1 -1
- package/esm2022/src/app/shared/pipes/arrays.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/badge.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/colors.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/date-diff-duration.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/date-format.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/date-from-now.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/dates.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/display-with.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/duration.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/file-size.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/form.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/highlight.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/html.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/latlong-format.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/maps.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/maskito.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/math.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/ng-init.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/number-format.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/observable.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/pipes.module.mjs +2 -5
- package/esm2022/src/app/shared/pipes/property.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/selection.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/string.pipes.mjs +2 -15
- package/esm2022/src/app/shared/pipes/translate-context.pipe.mjs +1 -1
- package/esm2022/src/app/shared/pipes/types.pipes.mjs +1 -1
- package/esm2022/src/app/shared/pipes/url.pipes.mjs +1 -1
- package/esm2022/src/app/shared/storage/storage-explorer.component.mjs +1 -1
- package/esm2022/src/app/shared/testing/maskito.test.mjs +1 -1
- package/esm2022/src/app/shared/testing/observable.test.mjs +1 -1
- package/esm2022/src/app/shared/testing/tests.page.mjs +1 -1
- package/esm2022/src/app/shared/toast/toast.testing.mjs +1 -1
- package/esm2022/src/app/shared/toolbar/modal-toolbar.mjs +1 -1
- package/esm2022/src/app/shared/toolbar/toolbar.mjs +1 -1
- package/esm2022/src/app/shared/upload-file/testing/upload-file.testing.mjs +1 -1
- package/esm2022/src/app/shared/upload-file/upload-file-popover.component.mjs +1 -1
- package/esm2022/src/app/shared/upload-file/upload-file.component.mjs +1 -1
- package/esm2022/src/app/social/feed/feed.component.mjs +3 -3
- package/esm2022/src/app/social/feed/feed.directive.mjs +1 -1
- package/esm2022/src/app/social/feed/feed.page.mjs +1 -1
- package/esm2022/src/app/social/feed/testing/feed.testing.mjs +1 -1
- package/esm2022/src/app/social/job/progression/job-progression.component.mjs +1 -1
- package/esm2022/src/app/social/job/progression/job-progression.icon.mjs +1 -1
- package/esm2022/src/app/social/job/progression/job-progression.list.mjs +1 -1
- package/esm2022/src/app/social/job/testing/job-progression.testing.mjs +1 -1
- package/esm2022/src/app/social/message/message.form.mjs +1 -1
- package/esm2022/src/app/social/message/message.modal.mjs +1 -1
- package/esm2022/src/app/social/user-event/notification/user-event-notification.icon.mjs +1 -1
- package/esm2022/src/app/social/user-event/notification/user-event-notification.list.mjs +1 -1
- package/esm2022/src/app/social/user-event/notification/user-event-notification.modal.mjs +1 -1
- package/esm2022/src/app/social/user-event/testing/user-event.testing.mjs +1 -1
- package/fesm2022/sumaris-net.ngx-components.mjs +428 -201
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/src/app/core/form/properties/properties-file.service.d.ts +26 -0
- package/src/app/core/form/properties/properties.form.d.ts +18 -2
- package/src/app/core/form/properties/properties.module.d.ts +8 -1
- package/src/app/core/services/local-settings.service.d.ts +11 -8
- package/src/app/core/table/async-table.class.d.ts +3 -1
- package/src/app/core/table/table.class.d.ts +3 -1
- package/src/app/shared/pipes/pipes.module.d.ts +1 -1
- package/src/app/shared/pipes/string.pipes.d.ts +0 -5
- package/src/assets/i18n/en-US.json +32 -3
- package/src/assets/i18n/en.json +32 -3
- package/src/assets/i18n/fr.json +34 -4
- package/src/assets/manifest.json +1 -1
- package/src/theme/_ngx-components.scss +1009 -1009
package/package.json
CHANGED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Injector } from '@angular/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { Property } from '../../../shared/types';
|
|
4
|
+
import { FileEvent } from '../../../shared/upload-file/upload-file.model';
|
|
5
|
+
import { ShowToastOptions } from '../../../shared/toast/toasts';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export declare type ReferentialImportPolicy = 'insert-update' | 'insert-only' | 'update-only' | 'delete-only';
|
|
8
|
+
export declare const IMPORT_POLICIES: ReferentialImportPolicy[];
|
|
9
|
+
export declare class PropertiesFileService {
|
|
10
|
+
private readonly logPrefix;
|
|
11
|
+
private readonly translate;
|
|
12
|
+
private readonly toastController;
|
|
13
|
+
private readonly popoverController;
|
|
14
|
+
i18nColumnPrefix: string;
|
|
15
|
+
importPolicy: ReferentialImportPolicy;
|
|
16
|
+
constructor(injector: Injector);
|
|
17
|
+
exportToCsv(data: Property[], opts?: {
|
|
18
|
+
context?: any;
|
|
19
|
+
}): void;
|
|
20
|
+
importFromCsv(event?: Event): Promise<Property[]>;
|
|
21
|
+
protected readPropertiesCsvFile(file: File): Observable<FileEvent<Property[]>>;
|
|
22
|
+
protected parsePropertiesCsvRows(rows: string[][], separator: string): Property[];
|
|
23
|
+
protected showToast(opts: ShowToastOptions): Promise<import("@ionic/core").OverlayEventDetail<any>>;
|
|
24
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PropertiesFileService, never>;
|
|
25
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<PropertiesFileService, never, never, { "i18nColumnPrefix": { "alias": "i18nColumnPrefix"; "required": false; }; "importPolicy": { "alias": "importPolicy"; "required": false; }; }, {}, never, never, false, never>;
|
|
26
|
+
}
|
|
@@ -13,6 +13,7 @@ import { MatAutocompleteFieldConfig } from '../../../shared/material/autocomplet
|
|
|
13
13
|
import { LoadResult } from '../../../shared/services/entity-service.class';
|
|
14
14
|
import { RxState } from '@rx-angular/state';
|
|
15
15
|
import { SortDirection } from '@angular/material/sort';
|
|
16
|
+
import { PropertiesFileService, ReferentialImportPolicy } from './properties-file.service';
|
|
16
17
|
import * as i0 from "@angular/core";
|
|
17
18
|
export interface AppPropertiesFormState {
|
|
18
19
|
definitions: FormFieldDefinition[];
|
|
@@ -26,6 +27,7 @@ export declare class AppPropertiesForm<O = any, T extends Property<O> = Property
|
|
|
26
27
|
protected validator: PropertyValidator;
|
|
27
28
|
private formGroupDir;
|
|
28
29
|
protected readonly _state: RxState<S>;
|
|
30
|
+
protected readonly _importPolicies: ReferentialImportPolicy[];
|
|
29
31
|
protected _definitions$: import("rxjs").Observable<S["definitions"]>;
|
|
30
32
|
protected _definitionKeys$: import("rxjs").Observable<S["definitionKeys"]>;
|
|
31
33
|
protected set _definitionKeys(value: Property[]);
|
|
@@ -35,8 +37,10 @@ export declare class AppPropertiesForm<O = any, T extends Property<O> = Property
|
|
|
35
37
|
[index: number]: FormFieldDefinition;
|
|
36
38
|
};
|
|
37
39
|
protected _helper: FormArrayHelper<Property>;
|
|
40
|
+
protected _propertiesFileService: PropertiesFileService;
|
|
38
41
|
protected _autocompleteConfig: MatAutocompleteFieldConfig;
|
|
39
42
|
protected _focusedControlIndex: number;
|
|
43
|
+
showToolbar: boolean;
|
|
40
44
|
formArrayName: string;
|
|
41
45
|
formArray: UntypedFormArray;
|
|
42
46
|
options: FormArrayHelperOptions;
|
|
@@ -52,6 +56,8 @@ export declare class AppPropertiesForm<O = any, T extends Property<O> = Property
|
|
|
52
56
|
showAddButton: boolean;
|
|
53
57
|
panelClass: string;
|
|
54
58
|
panelWidth: string;
|
|
59
|
+
canDownload: boolean;
|
|
60
|
+
canImport: boolean;
|
|
55
61
|
/**
|
|
56
62
|
* @deprecated Use addButtonTitle instead
|
|
57
63
|
* @param value
|
|
@@ -64,6 +70,8 @@ export declare class AppPropertiesForm<O = any, T extends Property<O> = Property
|
|
|
64
70
|
get value(): T[];
|
|
65
71
|
get length(): number;
|
|
66
72
|
get fieldForms(): UntypedFormGroup[];
|
|
73
|
+
set importPolicy(value: ReferentialImportPolicy);
|
|
74
|
+
get importPolicy(): ReferentialImportPolicy;
|
|
67
75
|
constructor(injector: Injector, formBuilder: UntypedFormBuilder, dateAdapter: DateAdapter<Moment>, cd: ChangeDetectorRef, validator: PropertyValidator, formGroupDir: FormGroupDirective);
|
|
68
76
|
ngOnInit(): void;
|
|
69
77
|
protected processDefinitions(definitions: FormFieldDefinition[]): any[];
|
|
@@ -72,21 +80,29 @@ export declare class AppPropertiesForm<O = any, T extends Property<O> = Property
|
|
|
72
80
|
emitEvent?: boolean;
|
|
73
81
|
}): FormFieldDefinition;
|
|
74
82
|
removeAt(index: number): void;
|
|
75
|
-
setValue(data: PropertyMap | T[]
|
|
83
|
+
setValue(data: PropertyMap | T[], opts?: {
|
|
84
|
+
emitEvent?: boolean;
|
|
85
|
+
}): Promise<void>;
|
|
76
86
|
getValueAsJson(): PropertyMap;
|
|
77
87
|
clear(): void;
|
|
88
|
+
protected toggleShowHintKeys(): void;
|
|
78
89
|
protected clearTemplateCache(): void;
|
|
79
90
|
protected suggestDefinitionKeys(value: any, filter?: any, sortBy?: string | keyof Property, sortDirection?: SortDirection, opts?: {
|
|
80
91
|
offset?: number;
|
|
81
92
|
size?: number;
|
|
82
93
|
[key: string]: any;
|
|
83
94
|
}): Promise<LoadResult<Property>>;
|
|
95
|
+
protected exportToCsv(label?: string): Promise<void>;
|
|
96
|
+
protected importFromCsv(event?: Event): Promise<void>;
|
|
84
97
|
protected markForCheck(): void;
|
|
85
98
|
protected isEmptyProperty(obj: Property): boolean;
|
|
86
99
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppPropertiesForm<any, any, any>, [null, null, null, null, null, { optional: true; }]>;
|
|
87
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppPropertiesForm<any, any, any>, "app-properties-form", never, { "formArrayName": { "alias": "formArrayName"; "required": false; }; "formArray": { "alias": "formArray"; "required": false; }; "options": { "alias": "options"; "required": false; }; "chipColor": { "alias": "chipColor"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "showHintKey": { "alias": "showHintKey"; "required": false; }; "hintKeyPrefix": { "alias": "hintKeyPrefix"; "required": false; }; "showMoreButton": { "alias": "showMoreButton"; "required": false; }; "addButtonText": { "alias": "addButtonText"; "required": false; }; "addButtonTitle": { "alias": "addButtonTitle"; "required": false; }; "showAddButton": { "alias": "showAddButton"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "showMoreButtonTitle": { "alias": "showMoreButtonTitle"; "required": false; }; "definitions": { "alias": "definitions"; "required": false; }; }, {}, never, never, false, never>;
|
|
100
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppPropertiesForm<any, any, any>, "app-properties-form", never, { "showToolbar": { "alias": "showToolbar"; "required": false; }; "formArrayName": { "alias": "formArrayName"; "required": false; }; "formArray": { "alias": "formArray"; "required": false; }; "options": { "alias": "options"; "required": false; }; "chipColor": { "alias": "chipColor"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "showHintKey": { "alias": "showHintKey"; "required": false; }; "hintKeyPrefix": { "alias": "hintKeyPrefix"; "required": false; }; "showMoreButton": { "alias": "showMoreButton"; "required": false; }; "addButtonText": { "alias": "addButtonText"; "required": false; }; "addButtonTitle": { "alias": "addButtonTitle"; "required": false; }; "showAddButton": { "alias": "showAddButton"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "canDownload": { "alias": "canDownload"; "required": false; }; "canImport": { "alias": "canImport"; "required": false; }; "showMoreButtonTitle": { "alias": "showMoreButtonTitle"; "required": false; }; "definitions": { "alias": "definitions"; "required": false; }; "importPolicy": { "alias": "importPolicy"; "required": false; }; }, {}, never, never, false, never>;
|
|
101
|
+
static ngAcceptInputType_showToolbar: unknown;
|
|
88
102
|
static ngAcceptInputType_mobile: unknown;
|
|
89
103
|
static ngAcceptInputType_showHintKey: unknown;
|
|
90
104
|
static ngAcceptInputType_showMoreButton: unknown;
|
|
91
105
|
static ngAcceptInputType_showAddButton: unknown;
|
|
106
|
+
static ngAcceptInputType_canDownload: unknown;
|
|
107
|
+
static ngAcceptInputType_canImport: unknown;
|
|
92
108
|
}
|
|
@@ -4,8 +4,15 @@ import * as i2 from "./properties.table";
|
|
|
4
4
|
import * as i3 from "../../../shared/shared.module";
|
|
5
5
|
import * as i4 from "@ngx-translate/core";
|
|
6
6
|
import * as i5 from "../../table/table.module";
|
|
7
|
+
import * as i6 from "@ionic/angular";
|
|
8
|
+
import * as i7 from "@angular/material/divider";
|
|
9
|
+
import * as i8 from "@angular/material/icon";
|
|
10
|
+
import * as i9 from "@angular/material/menu";
|
|
11
|
+
import * as i10 from "@angular/material/button";
|
|
12
|
+
import * as i11 from "@angular/material/toolbar";
|
|
13
|
+
import * as i12 from "@angular/common";
|
|
7
14
|
export declare class AppPropertiesFormModule {
|
|
8
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppPropertiesFormModule, never>;
|
|
9
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AppPropertiesFormModule, [typeof i1.AppPropertiesForm, typeof i2.AppPropertiesTable], [typeof i3.SharedModule, typeof i4.TranslateModule, typeof i5.AppTableModule], [typeof i4.TranslateModule, typeof i1.AppPropertiesForm, typeof i2.AppPropertiesTable]>;
|
|
16
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AppPropertiesFormModule, [typeof i1.AppPropertiesForm, typeof i2.AppPropertiesTable], [typeof i3.SharedModule, typeof i4.TranslateModule, typeof i5.AppTableModule, typeof i6.IonicModule, typeof i7.MatDivider, typeof i8.MatIcon, typeof i9.MatMenu, typeof i9.MatMenuContent, typeof i9.MatMenuItem, typeof i4.TranslateDirective, typeof i6.IonicModule, typeof i8.MatIcon, typeof i10.MatIconButton, typeof i11.MatToolbar, typeof i12.NgIf, typeof i4.TranslatePipe], [typeof i4.TranslateModule, typeof i1.AppPropertiesForm, typeof i2.AppPropertiesTable]>;
|
|
10
17
|
static ɵinj: i0.ɵɵInjectorDeclaration<AppPropertiesFormModule>;
|
|
11
18
|
}
|
|
@@ -16,6 +16,7 @@ export declare const SETTINGS_TRANSIENT_PROPERTIES: string[];
|
|
|
16
16
|
export interface LocalSettingsOptions {
|
|
17
17
|
serializeAsString?: boolean;
|
|
18
18
|
options: FormFieldDefinitionMap;
|
|
19
|
+
skipEmitChangeKeys?: (keyof LocalSettings | string)[];
|
|
19
20
|
}
|
|
20
21
|
export declare interface AddToPageHistoryOptions {
|
|
21
22
|
/**
|
|
@@ -54,13 +55,14 @@ export declare class LocalSettingsService extends StartableService<LocalSettings
|
|
|
54
55
|
private storage;
|
|
55
56
|
protected readonly environment: Environment;
|
|
56
57
|
private readonly defaultSettings;
|
|
57
|
-
onChange: Subject<LocalSettings>;
|
|
58
|
-
darkMode$: import("rxjs").Observable<boolean>;
|
|
59
|
-
locale$: import("rxjs").Observable<string>;
|
|
60
58
|
private readonly _optionDefs;
|
|
61
59
|
private readonly _serializeAsString;
|
|
62
|
-
private
|
|
63
|
-
|
|
60
|
+
private readonly _skipEmitChangeKeys;
|
|
61
|
+
private _$storeLocallyEventEmitter;
|
|
62
|
+
readonly onChange: Subject<LocalSettings>;
|
|
63
|
+
readonly onStoredLocally: EventEmitter<LocalSettings>;
|
|
64
|
+
darkMode$: import("rxjs").Observable<boolean>;
|
|
65
|
+
locale$: import("rxjs").Observable<string>;
|
|
64
66
|
get settings(): LocalSettings;
|
|
65
67
|
get locale(): string;
|
|
66
68
|
get latLongFormat(): LatLongPattern;
|
|
@@ -96,7 +98,9 @@ export declare class LocalSettingsService extends StartableService<LocalSettings
|
|
|
96
98
|
persistImmediate?: boolean;
|
|
97
99
|
}): Promise<void>;
|
|
98
100
|
getPageSettings<T = any>(pageId: string, propertyName?: string): T;
|
|
99
|
-
savePageSetting(pageId: string, value: any, propertyName?: string
|
|
101
|
+
savePageSetting(pageId: string, value: any, propertyName?: string, opts?: {
|
|
102
|
+
emitEvent?: boolean;
|
|
103
|
+
}): Promise<void>;
|
|
100
104
|
getOfflineFeature<F = any>(featureName: string): OfflineFeature<F>;
|
|
101
105
|
getOfflineFeatureLastSyncDate(featureName: string): Moment;
|
|
102
106
|
hasOfflineFeature(featureName?: string): boolean;
|
|
@@ -119,8 +123,7 @@ export declare class LocalSettingsService extends StartableService<LocalSettings
|
|
|
119
123
|
clearPageHistory(): Promise<void>;
|
|
120
124
|
protected ngOnStop(): Promise<void>;
|
|
121
125
|
private resetData;
|
|
122
|
-
private
|
|
123
|
-
private persistLocally;
|
|
126
|
+
private storeLocally;
|
|
124
127
|
private fillPageHistoryDefaults;
|
|
125
128
|
static ɵfac: i0.ɵɵFactoryDeclaration<LocalSettingsService, [null, null, null, null, { optional: true; }, { optional: true; }]>;
|
|
126
129
|
static ɵprov: i0.ɵɵInjectableDeclaration<LocalSettingsService>;
|
|
@@ -370,7 +370,9 @@ export declare abstract class AppAsyncTable<T extends IEntity<T, ID>, F = any, I
|
|
|
370
370
|
emitEVent?: boolean;
|
|
371
371
|
}): void;
|
|
372
372
|
protected getPageSettings<T = any>(propertyName?: string): T;
|
|
373
|
-
protected savePageSettings(value: any, propertyName?: string
|
|
373
|
+
protected savePageSettings(value: any, propertyName?: string, opts?: {
|
|
374
|
+
emitEvent?: boolean;
|
|
375
|
+
}): Promise<void>;
|
|
374
376
|
protected emitRefresh(value?: any): void;
|
|
375
377
|
/**
|
|
376
378
|
* Initialize the permanent selection model
|
|
@@ -375,7 +375,9 @@ export declare abstract class AppTable<T extends IEntity<T, ID>, F = any, ID = n
|
|
|
375
375
|
emitEVent?: boolean;
|
|
376
376
|
}): void;
|
|
377
377
|
protected getPageSettings<T = any>(propertyName?: string): T;
|
|
378
|
-
protected savePageSettings(value: any, propertyName?: string
|
|
378
|
+
protected savePageSettings(value: any, propertyName?: string, opts?: {
|
|
379
|
+
emitEvent?: boolean;
|
|
380
|
+
}): Promise<void>;
|
|
379
381
|
protected emitRefresh(value?: any): void;
|
|
380
382
|
/**
|
|
381
383
|
* Initialize the permanent selection model
|
|
@@ -30,6 +30,6 @@ import * as i28 from "@ionic/angular";
|
|
|
30
30
|
import * as i29 from "@ngx-translate/core";
|
|
31
31
|
export declare class SharedPipesModule {
|
|
32
32
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedPipesModule, never>;
|
|
33
|
-
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 i10.RoundPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i11.ArrayDistinctPipe, typeof i11.ArrayFindByPropertyPipe, typeof i11.SplitArrayInChunksPipe, typeof i11.ArrayMapPipe, 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 i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.
|
|
33
|
+
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 i10.RoundPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i11.ArrayDistinctPipe, typeof i11.ArrayFindByPropertyPipe, typeof i11.SplitArrayInChunksPipe, typeof i11.ArrayMapPipe, 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 i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i13.StrReplacePipe, typeof i13.TruncHtmlPipe, typeof i13.TruncTextPipe, typeof i15.AppendQueryParamsPipePipe, typeof i1.BooleanFormatPipe, typeof i1.MapToPipe, typeof i16.TranslateContextPipe, typeof i16.TranslatablePipe, typeof i17.NgInitDirective, typeof i18.FormErrorPipe, typeof i18.FormErrorTranslatePipe, typeof i18.FormGetPipe, typeof i18.FormGetControlPipe, typeof i18.FormGetArrayPipe, typeof i18.FormGetGroupPipe, typeof i18.FormGetValuePipe, typeof i19.MatColorPipe, typeof i20.AsAnyPipe, typeof i20.AsArrayPipe, typeof i20.AsObservablePipe, typeof i20.AsFloatLabelTypePipe, typeof i21.MaskitoPlaceholderPipe, typeof i22.IsSelectedPipe, typeof i22.IsNotEmptySelectionPipe, typeof i22.IsEmptySelectionPipe, typeof i22.SelectionLengthPipe, typeof i22.IsMultipleSelectionPipe, typeof i22.IsSingleSelectionPipe, typeof i23.BadgeNumberPipe, typeof i20.AsBooleanPipe, typeof i24.SafeHtmlPipe, typeof i24.SafeStylePipe, typeof i24.NoHtmlPipe, typeof i24.TruncateHtmlPipe, typeof i25.DisplayWithPipe, typeof i26.FirstTruePipe, typeof i26.FirstFalsePipe, typeof i26.FirstPipe, typeof i26.MapPipe], [typeof i27.CommonModule, typeof i28.IonicModule, typeof i29.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 i10.RoundPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i11.ArrayDistinctPipe, typeof i11.ArrayFindByPropertyPipe, typeof i11.SplitArrayInChunksPipe, typeof i11.ArrayMapPipe, 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 i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i13.StrReplacePipe, typeof i13.TruncHtmlPipe, typeof i13.TruncTextPipe, typeof i15.AppendQueryParamsPipePipe, typeof i1.BooleanFormatPipe, typeof i1.MapToPipe, typeof i16.TranslateContextPipe, typeof i16.TranslatablePipe, typeof i17.NgInitDirective, typeof i18.FormErrorPipe, typeof i18.FormErrorTranslatePipe, typeof i18.FormGetPipe, typeof i18.FormGetControlPipe, typeof i18.FormGetArrayPipe, typeof i18.FormGetGroupPipe, typeof i18.FormGetValuePipe, typeof i19.MatColorPipe, typeof i20.AsAnyPipe, typeof i20.AsArrayPipe, typeof i20.AsObservablePipe, typeof i20.AsFloatLabelTypePipe, typeof i21.MaskitoPlaceholderPipe, typeof i22.IsSelectedPipe, typeof i22.IsNotEmptySelectionPipe, typeof i22.IsEmptySelectionPipe, typeof i22.SelectionLengthPipe, typeof i22.IsMultipleSelectionPipe, typeof i22.IsSingleSelectionPipe, typeof i23.BadgeNumberPipe, typeof i20.AsBooleanPipe, typeof i24.SafeHtmlPipe, typeof i24.SafeStylePipe, typeof i24.NoHtmlPipe, typeof i24.TruncateHtmlPipe, typeof i25.DisplayWithPipe, typeof i26.FirstTruePipe, typeof i26.FirstFalsePipe, typeof i26.FirstPipe, typeof i26.MapPipe]>;
|
|
34
34
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedPipesModule>;
|
|
35
35
|
}
|
|
@@ -41,11 +41,6 @@ export declare class CapitalizePipe implements PipeTransform {
|
|
|
41
41
|
static ɵfac: i0.ɵɵFactoryDeclaration<CapitalizePipe, never>;
|
|
42
42
|
static ɵpipe: i0.ɵɵPipeDeclaration<CapitalizePipe, "capitalize", false>;
|
|
43
43
|
}
|
|
44
|
-
export declare class UnCapitalizePipe implements PipeTransform {
|
|
45
|
-
transform(value: string): string;
|
|
46
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<UnCapitalizePipe, never>;
|
|
47
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<UnCapitalizePipe, "unCapitalize", false>;
|
|
48
|
-
}
|
|
49
44
|
export declare class StrLengthPipe implements PipeTransform {
|
|
50
45
|
transform(value: string): number;
|
|
51
46
|
static ɵfac: i0.ɵɵFactoryDeclaration<StrLengthPipe, never>;
|
|
@@ -16,7 +16,11 @@
|
|
|
16
16
|
"BTN_COMPACT_ROWS": "Compact rows",
|
|
17
17
|
"BTN_DONE": "Done",
|
|
18
18
|
"BTN_DOWNLOAD": "Download",
|
|
19
|
+
"BTN_DOWNLOAD_DOTS": "Download...",
|
|
20
|
+
"BTN_DOWNLOAD_JSON": "Download (JSON)",
|
|
21
|
+
"BTN_DOWNLOAD_CSV": "Download (CSV)",
|
|
19
22
|
"BTN_IMPORT": "Import",
|
|
23
|
+
"BTN_IMPORT_FROM_FILE_DOTS": "Import from file...",
|
|
20
24
|
"BTN_DUPLICATE": "Duplicate",
|
|
21
25
|
"BTN_DELETE": "Delete",
|
|
22
26
|
"BTN_DELETE_FOREVER": "Delete forever",
|
|
@@ -423,7 +427,6 @@
|
|
|
423
427
|
"BTN_DARK_MODE": "Dark theme?",
|
|
424
428
|
"BTN_SHOW_ACCOUNT": "Show my account",
|
|
425
429
|
"BTN_SHOW_MORE_HELP": "Show more parameters",
|
|
426
|
-
"BTN_SHOW_OPTION_KEY": "Show options code?",
|
|
427
430
|
"BTN_CLEAR_CACHE": "Clear data cache",
|
|
428
431
|
"OFFLINE_MODE": "Force offline mode? (experimental)",
|
|
429
432
|
"DATA_ENTRY_DIVIDER": "Data entry settings",
|
|
@@ -598,18 +601,44 @@
|
|
|
598
601
|
"FILE": {
|
|
599
602
|
"JSON": {
|
|
600
603
|
"ENCODING": "UTF-8",
|
|
604
|
+
"FORMAT": "JSON",
|
|
601
605
|
"BTN_DOWNLOAD_HELP": "Download data (JSON)"
|
|
602
606
|
},
|
|
603
607
|
"CSV": {
|
|
604
608
|
"SEPARATOR": ",",
|
|
605
609
|
"ENCODING": "UTF-8",
|
|
606
|
-
"
|
|
610
|
+
"FORMAT": "CSV",
|
|
611
|
+
"BTN_DOWNLOAD_HELP": "Download data (CSV)",
|
|
612
|
+
"ERROR": {
|
|
613
|
+
"EMPTY_FILE": "Empty file, or no header row",
|
|
614
|
+
"NO_HEADER_OR_INVALID_SEPARATOR": "Invalid header row. Please check that the separator '{{separator}}' has been used.",
|
|
615
|
+
"UNKNOWN_HEADERS": "Invalid row's header(s): {{headers}}"
|
|
616
|
+
}
|
|
617
|
+
},
|
|
618
|
+
"PROPERTIES": {
|
|
619
|
+
"CSV_FILENAME": "{{label}}-options.csv",
|
|
620
|
+
"LABEL_HEADER": "Code",
|
|
621
|
+
"VALUE_HEADER": "Value",
|
|
622
|
+
"DESCRIPTION_HEADER": "Description",
|
|
623
|
+
"BTN_SHOW_HINT_KEY": "Show options code?",
|
|
624
|
+
"BTN_DOWNLOAD_AS_CSV": "Download options (CSV)",
|
|
625
|
+
"BTN_IMPORT_FROM_CSV": "Upload options (CSV)...",
|
|
626
|
+
"ERROR": {
|
|
627
|
+
"IMPORT_ERROR": "Import failed:<br/>{{error}}"
|
|
628
|
+
}
|
|
607
629
|
},
|
|
608
630
|
"UPLOAD": {
|
|
609
631
|
"DRAG_AND_DROP": "Drag and drop a file{{ extension }} here<br/>or",
|
|
610
632
|
"BROWSE": "Browse",
|
|
611
633
|
"IMPORTING": "Import in progress",
|
|
612
|
-
"
|
|
634
|
+
"BTN_IMPORT_POLICY_DOTS": "Import policy...",
|
|
635
|
+
"ERROR": "Error while uploading file",
|
|
636
|
+
"IMPORT_POLICY": {
|
|
637
|
+
"TITLE": "Import options",
|
|
638
|
+
"INSERT-ONLY": "Inserts only",
|
|
639
|
+
"UPDATE-ONLY": "Updates only",
|
|
640
|
+
"INSERT-UPDATE": "Insertions or updates"
|
|
641
|
+
}
|
|
613
642
|
}
|
|
614
643
|
},
|
|
615
644
|
"IMAGE": {
|
package/src/assets/i18n/en.json
CHANGED
|
@@ -16,7 +16,11 @@
|
|
|
16
16
|
"BTN_COMPACT_ROWS": "Compact rows",
|
|
17
17
|
"BTN_DONE": "Done",
|
|
18
18
|
"BTN_DOWNLOAD": "Download",
|
|
19
|
+
"BTN_DOWNLOAD_DOTS": "Download...",
|
|
20
|
+
"BTN_DOWNLOAD_JSON": "Download (JSON)",
|
|
21
|
+
"BTN_DOWNLOAD_CSV": "Download (CSV)",
|
|
19
22
|
"BTN_IMPORT": "Import",
|
|
23
|
+
"BTN_IMPORT_FROM_FILE_DOTS": "Import from file...",
|
|
20
24
|
"BTN_DUPLICATE": "Duplicate",
|
|
21
25
|
"BTN_DELETE": "Delete",
|
|
22
26
|
"BTN_DELETE_FOREVER": "Delete forever",
|
|
@@ -423,7 +427,6 @@
|
|
|
423
427
|
"BTN_DARK_MODE": "Dark theme?",
|
|
424
428
|
"BTN_SHOW_ACCOUNT": "Show my account",
|
|
425
429
|
"BTN_SHOW_MORE_HELP": "Show more parameters",
|
|
426
|
-
"BTN_SHOW_OPTION_KEY": "Show options code?",
|
|
427
430
|
"BTN_CLEAR_CACHE": "Clear data cache",
|
|
428
431
|
"OFFLINE_MODE": "Force offline mode? (experimental)",
|
|
429
432
|
"DATA_ENTRY_DIVIDER": "Data entry settings",
|
|
@@ -598,18 +601,44 @@
|
|
|
598
601
|
"FILE": {
|
|
599
602
|
"JSON": {
|
|
600
603
|
"ENCODING": "UTF-8",
|
|
604
|
+
"FORMAT": "JSON",
|
|
601
605
|
"BTN_DOWNLOAD_HELP": "Download data (JSON)"
|
|
602
606
|
},
|
|
603
607
|
"CSV": {
|
|
604
608
|
"SEPARATOR": ",",
|
|
605
609
|
"ENCODING": "UTF-8",
|
|
606
|
-
"
|
|
610
|
+
"FORMAT": "CSV",
|
|
611
|
+
"BTN_DOWNLOAD_HELP": "Download data (CSV)",
|
|
612
|
+
"ERROR": {
|
|
613
|
+
"EMPTY_FILE": "Empty file, or no header row",
|
|
614
|
+
"NO_HEADER_OR_INVALID_SEPARATOR": "Invalid header row. Please check that the separator '{{separator}}' has been used.",
|
|
615
|
+
"UNKNOWN_HEADERS": "Invalid row's header(s): {{headers}}"
|
|
616
|
+
}
|
|
617
|
+
},
|
|
618
|
+
"PROPERTIES": {
|
|
619
|
+
"CSV_FILENAME": "{{label}}-options.csv",
|
|
620
|
+
"LABEL_HEADER": "Code",
|
|
621
|
+
"VALUE_HEADER": "Value",
|
|
622
|
+
"DESCRIPTION_HEADER": "Description",
|
|
623
|
+
"BTN_SHOW_HINT_KEY": "Show options code?",
|
|
624
|
+
"BTN_DOWNLOAD_AS_CSV": "Download options (CSV)",
|
|
625
|
+
"BTN_IMPORT_FROM_CSV": "Upload options (CSV)...",
|
|
626
|
+
"ERROR": {
|
|
627
|
+
"IMPORT_ERROR": "Import failed:<br/>{{error}}"
|
|
628
|
+
}
|
|
607
629
|
},
|
|
608
630
|
"UPLOAD": {
|
|
609
631
|
"DRAG_AND_DROP": "Drag and drop a file{{ extension }} here<br/>or",
|
|
610
632
|
"BROWSE": "Browse",
|
|
611
633
|
"IMPORTING": "Import in progress",
|
|
612
|
-
"
|
|
634
|
+
"BTN_IMPORT_POLICY_DOTS": "Import policy...",
|
|
635
|
+
"ERROR": "Error while uploading file",
|
|
636
|
+
"IMPORT_POLICY": {
|
|
637
|
+
"TITLE": "Import options",
|
|
638
|
+
"INSERT-ONLY": "Inserts only",
|
|
639
|
+
"UPDATE-ONLY": "Updates only",
|
|
640
|
+
"INSERT-UPDATE": "Insertions or updates"
|
|
641
|
+
}
|
|
613
642
|
}
|
|
614
643
|
},
|
|
615
644
|
"IMAGE": {
|
package/src/assets/i18n/fr.json
CHANGED
|
@@ -16,7 +16,11 @@
|
|
|
16
16
|
"BTN_COMPACT_ROWS": "Compacter les lignes",
|
|
17
17
|
"BTN_DONE": "Terminer",
|
|
18
18
|
"BTN_DOWNLOAD": "Télécharger",
|
|
19
|
+
"BTN_DOWNLOAD_DOTS": "Télécharger...",
|
|
20
|
+
"BTN_DOWNLOAD_JSON": "Télécharger (JSON)",
|
|
21
|
+
"BTN_DOWNLOAD_CSV": "Télécharger (CSV)",
|
|
19
22
|
"BTN_IMPORT": "Importer",
|
|
23
|
+
"BTN_IMPORT_FROM_FILE_DOTS": "Importer depuis un fichier...",
|
|
20
24
|
"BTN_DUPLICATE": "Dupliquer",
|
|
21
25
|
"BTN_DELETE": "Supprimer",
|
|
22
26
|
"BTN_DELETE_FOREVER": "Supprimer définitivement",
|
|
@@ -425,7 +429,6 @@
|
|
|
425
429
|
"BTN_DARK_MODE": "Thème sombre ? (expérimental)",
|
|
426
430
|
"BTN_SHOW_ACCOUNT": "Voir mon compte",
|
|
427
431
|
"BTN_SHOW_MORE_HELP": "Afficher plus de paramètres",
|
|
428
|
-
"BTN_SHOW_OPTION_KEY": "Afficher le code des options ?",
|
|
429
432
|
"BTN_CLEAR_CACHE": "Vider le cache",
|
|
430
433
|
"OFFLINE_MODE": "Forcer le mode hors-ligne ?",
|
|
431
434
|
"DATA_ENTRY_DIVIDER": "Paramètres de saisie",
|
|
@@ -600,18 +603,45 @@
|
|
|
600
603
|
},
|
|
601
604
|
"FILE": {
|
|
602
605
|
"JSON": {
|
|
603
|
-
"ENCODING": "UTF-8"
|
|
606
|
+
"ENCODING": "UTF-8",
|
|
607
|
+
"FORMAT": "JSON",
|
|
608
|
+
"BTN_DOWNLOAD_HELP": "Télécharger les données (JSON)"
|
|
604
609
|
},
|
|
605
610
|
"CSV": {
|
|
606
611
|
"SEPARATOR": ";",
|
|
607
612
|
"ENCODING": "UTF-8",
|
|
608
|
-
"
|
|
613
|
+
"FORMAT": "CSV",
|
|
614
|
+
"BTN_DOWNLOAD_HELP": "Télécharger les données (CSV)",
|
|
615
|
+
"ERROR": {
|
|
616
|
+
"EMPTY_FILE": "Fichier vide, ou ligne d'entête manquante",
|
|
617
|
+
"NO_HEADER_OR_INVALID_SEPARATOR": "Ligne d'entête invalide. vérifier que le séparateur '{{separator}}' est utilisé.",
|
|
618
|
+
"UNKNOWN_HEADERS": "Entête(s) de colonne invalide(s): {{headers}}"
|
|
619
|
+
}
|
|
620
|
+
},
|
|
621
|
+
"PROPERTIES": {
|
|
622
|
+
"CSV_FILENAME": "{{label}}-options.csv",
|
|
623
|
+
"LABEL_HEADER": "Code",
|
|
624
|
+
"VALUE_HEADER": "Valeur",
|
|
625
|
+
"DESCRIPTION_HEADER": "Description",
|
|
626
|
+
"BTN_DOWNLOAD_AS_CSV": "Télécharger les options (CSV)",
|
|
627
|
+
"BTN_IMPORT_FROM_CSV": "Importer des options (CSV)...",
|
|
628
|
+
"BTN_SHOW_HINT_KEY": "Afficher le code des options ?",
|
|
629
|
+
"ERROR": {
|
|
630
|
+
"IMPORT_ERROR": "Échec de l'importation:<br/>{{error}}"
|
|
631
|
+
}
|
|
609
632
|
},
|
|
610
633
|
"UPLOAD": {
|
|
611
634
|
"DRAG_AND_DROP": "Glisser et déposer un fichier{{ extension }} ici<br/>ou",
|
|
612
635
|
"BROWSE": "Parcourir",
|
|
613
636
|
"IMPORTING": "Importation en cours",
|
|
614
|
-
"
|
|
637
|
+
"BTN_IMPORT_POLICY_DOTS": "Stratégie d'importation...",
|
|
638
|
+
"ERROR": "Erreur durant l'envoi de fichier",
|
|
639
|
+
"IMPORT_POLICY": {
|
|
640
|
+
"TITLE": "Stratégie d'importation",
|
|
641
|
+
"INSERT-ONLY": "Insertions uniquement",
|
|
642
|
+
"UPDATE-ONLY": "Mises à jour uniquement",
|
|
643
|
+
"INSERT-UPDATE": "Insertions et mises à jour"
|
|
644
|
+
}
|
|
615
645
|
}
|
|
616
646
|
},
|
|
617
647
|
"IMAGE": {
|
package/src/assets/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "ngx-sumaris-components",
|
|
3
3
|
"short_name": "ngx-sumaris-components",
|
|
4
4
|
"manifest_version": 1,
|
|
5
|
-
"version": "18.
|
|
5
|
+
"version": "18.18.1",
|
|
6
6
|
"default_locale": "fr",
|
|
7
7
|
"description": "Angular components for building beautiful and responsive Apps",
|
|
8
8
|
"icons": [{
|