@mmlogic/components 0.3.2 → 0.3.4
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/dist/cjs/index.cjs.js +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mosterdcomponents.cjs.js +1 -1
- package/dist/cjs/{mrd-boolean-field_19.cjs.entry.js → mrd-boolean-field_20.cjs.entry.js} +594 -67
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/mrd-field/mrd-field.js +142 -27
- package/dist/collection/components/mrd-field/mrd-field.scss +118 -0
- package/dist/collection/components/mrd-form/mrd-form.js +3 -3
- package/dist/collection/components/mrd-hyperlink-field/mrd-hyperlink-field.js +79 -18
- package/dist/collection/components/mrd-hyperlink-field/mrd-hyperlink-field.scss +22 -0
- package/dist/collection/components/mrd-image-field/mrd-image-field.js +1 -1
- package/dist/collection/components/mrd-layout-section/mrd-layout-section.js +54 -15
- package/dist/collection/components/mrd-layout-section/mrd-layout-section.scss +76 -0
- package/dist/collection/components/mrd-longtext-field/mrd-longtext-field.js +1 -1
- package/dist/collection/components/mrd-number-field/mrd-number-field.js +2 -2
- package/dist/collection/components/mrd-secret-field/mrd-secret-field.js +229 -0
- package/dist/collection/components/mrd-secret-field/mrd-secret-field.scss +73 -0
- package/dist/collection/components/mrd-table/mrd-table.js +46 -6
- package/dist/collection/components/mrd-table/mrd-table.scss +36 -0
- package/dist/collection/components/mrd-text-field/mrd-text-field.js +1 -1
- package/dist/collection/components/mrd-textarea-field/mrd-textarea-field.js +1 -1
- package/dist/collection/components/mrd-time-field/mrd-time-field.js +1 -1
- package/dist/collection/dev/api.js +1 -1
- package/dist/collection/dev/app.js +9 -4
- package/dist/collection/dev/example-data.js +12 -2
- package/dist/collection/types/client-layout.js +1 -0
- package/dist/collection/utils/cell-renderer.js +2 -0
- package/dist/collection/utils/i18n.js +269 -1
- package/dist/collection/utils/validation.js +6 -2
- package/dist/components/client-layout.js +1 -1
- package/dist/components/format.js +1 -1
- package/dist/components/i18n.js +1 -1
- package/dist/components/mrd-field2.js +1 -1
- package/dist/components/mrd-form.js +1 -1
- package/dist/components/mrd-hyperlink-field2.js +1 -1
- package/dist/components/mrd-image-field2.js +1 -1
- package/dist/components/mrd-layout-section.js +1 -1
- package/dist/components/mrd-longtext-field2.js +1 -1
- package/dist/components/mrd-number-field2.js +1 -1
- package/dist/components/mrd-secret-field.d.ts +11 -0
- package/dist/components/mrd-secret-field.js +1 -0
- package/dist/components/mrd-secret-field2.js +1 -0
- package/dist/components/mrd-table2.js +1 -1
- package/dist/components/mrd-text-field2.js +1 -1
- package/dist/components/mrd-textarea-field2.js +1 -1
- package/dist/components/mrd-time-field2.js +1 -1
- package/dist/components/validation.js +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/mosterdcomponents.js +1 -1
- package/dist/esm/{mrd-boolean-field_19.entry.js → mrd-boolean-field_20.entry.js} +594 -68
- package/dist/mosterdcomponents/index.esm.js +1 -1
- package/dist/mosterdcomponents/mosterdcomponents.esm.js +1 -1
- package/dist/mosterdcomponents/p-c9839596.entry.js +1 -0
- package/dist/types/components/mrd-field/mrd-field.d.ts +14 -0
- package/dist/types/components/mrd-hyperlink-field/mrd-hyperlink-field.d.ts +12 -4
- package/dist/types/components/mrd-layout-section/mrd-layout-section.d.ts +5 -0
- package/dist/types/components/mrd-secret-field/mrd-secret-field.d.ts +22 -0
- package/dist/types/components/mrd-table/mrd-table.d.ts +6 -0
- package/dist/types/components.d.ts +109 -13
- package/dist/types/types/client-layout.d.ts +14 -1
- package/dist/types/utils/cell-renderer.d.ts +1 -0
- package/package.json +1 -1
- package/dist/mosterdcomponents/p-2a099635.entry.js +0 -1
|
@@ -1,22 +1,30 @@
|
|
|
1
1
|
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import { HyperlinkValue } from '../../types/client-layout';
|
|
2
3
|
export declare class MrdHyperlinkField {
|
|
3
4
|
name: string;
|
|
4
5
|
label: string;
|
|
5
|
-
value: string;
|
|
6
|
+
value: HyperlinkValue | string;
|
|
6
7
|
placeholder: string;
|
|
7
8
|
required: boolean;
|
|
8
9
|
disabled: boolean;
|
|
9
10
|
locale: string;
|
|
11
|
+
internalHref: string;
|
|
12
|
+
internalName: string;
|
|
10
13
|
error: string;
|
|
11
14
|
mrdChange: EventEmitter<{
|
|
12
15
|
name: string;
|
|
13
|
-
value:
|
|
16
|
+
value: HyperlinkValue;
|
|
14
17
|
}>;
|
|
15
18
|
mrdBlur: EventEmitter<{
|
|
16
19
|
name: string;
|
|
17
|
-
value:
|
|
20
|
+
value: HyperlinkValue;
|
|
18
21
|
}>;
|
|
19
|
-
|
|
22
|
+
componentWillLoad(): void;
|
|
23
|
+
valueChanged(val: HyperlinkValue | string): void;
|
|
24
|
+
private parseValue;
|
|
25
|
+
private buildValue;
|
|
26
|
+
private handleHrefInput;
|
|
27
|
+
private handleNameInput;
|
|
20
28
|
private handleBlur;
|
|
21
29
|
render(): any;
|
|
22
30
|
}
|
|
@@ -17,6 +17,8 @@ export declare class MrdLayoutSection {
|
|
|
17
17
|
private searchResultsMap;
|
|
18
18
|
private imagePreviewUrl;
|
|
19
19
|
private imagePreviews;
|
|
20
|
+
private openHistoryField;
|
|
21
|
+
private historyClickOutside;
|
|
20
22
|
mrdNavigate: EventEmitter<{
|
|
21
23
|
href?: string;
|
|
22
24
|
label: string;
|
|
@@ -51,6 +53,7 @@ export declare class MrdLayoutSection {
|
|
|
51
53
|
path?: string;
|
|
52
54
|
qs?: string;
|
|
53
55
|
parentPath?: string | null;
|
|
56
|
+
basicType?: string;
|
|
54
57
|
}>;
|
|
55
58
|
/** Re-emitted from an embedded mrd-table's mrdLoadAggregations; host calls setViewAggregations() with the result. */
|
|
56
59
|
mrdLoadViewAggregations: EventEmitter<{
|
|
@@ -62,6 +65,7 @@ export declare class MrdLayoutSection {
|
|
|
62
65
|
}>;
|
|
63
66
|
private searchTimers;
|
|
64
67
|
componentDidLoad(): void;
|
|
68
|
+
disconnectedCallback(): void;
|
|
65
69
|
dataChanged(newVal: Record<string, unknown>): void;
|
|
66
70
|
private initEmbeddedTables;
|
|
67
71
|
private viewKeyFor;
|
|
@@ -86,6 +90,7 @@ export declare class MrdLayoutSection {
|
|
|
86
90
|
private handleSearchInput;
|
|
87
91
|
private renderSingleFieldValue;
|
|
88
92
|
private renderFieldValue;
|
|
93
|
+
private renderHistoryBadge;
|
|
89
94
|
private renderField;
|
|
90
95
|
private renderRelation;
|
|
91
96
|
private renderSearch;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
export declare class MrdSecretField {
|
|
3
|
+
name: string;
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
placeholder: string;
|
|
7
|
+
required: boolean;
|
|
8
|
+
disabled: boolean;
|
|
9
|
+
locale: string;
|
|
10
|
+
error: string;
|
|
11
|
+
mrdChange: EventEmitter<{
|
|
12
|
+
name: string;
|
|
13
|
+
value: string;
|
|
14
|
+
}>;
|
|
15
|
+
mrdBlur: EventEmitter<{
|
|
16
|
+
name: string;
|
|
17
|
+
value: string;
|
|
18
|
+
}>;
|
|
19
|
+
private handleInput;
|
|
20
|
+
private handleBlur;
|
|
21
|
+
render(): any;
|
|
22
|
+
}
|
|
@@ -7,6 +7,7 @@ export declare class MrdTable {
|
|
|
7
7
|
private debounceTimer;
|
|
8
8
|
private outsideClickHandler;
|
|
9
9
|
private keydownHandler;
|
|
10
|
+
private createPickerClickHandler;
|
|
10
11
|
/** The VIEW or RELATED_VIEW layout item. Contains view config, dataClass, fromClass, actions etc. */
|
|
11
12
|
item: ClientLayoutItem | null;
|
|
12
13
|
/** Parent record id — required for RELATED_VIEW to build /{fromClass}/{parentId}/{dataClass}. */
|
|
@@ -48,6 +49,8 @@ export declare class MrdTable {
|
|
|
48
49
|
top: number;
|
|
49
50
|
left: number;
|
|
50
51
|
};
|
|
52
|
+
/** Whether the create-type picker dropdown is open. */
|
|
53
|
+
createPickerOpen: boolean;
|
|
51
54
|
/** Current scroll offset of the scroll container — drives pagination footer. */
|
|
52
55
|
scrollTop: number;
|
|
53
56
|
/** Full text shown in the TEXTBLOCK expand modal (null = closed). */
|
|
@@ -81,6 +84,7 @@ export declare class MrdTable {
|
|
|
81
84
|
qs?: string;
|
|
82
85
|
dataClass?: string;
|
|
83
86
|
parentPath?: string | null;
|
|
87
|
+
basicType?: string;
|
|
84
88
|
}>;
|
|
85
89
|
/** Fired when a FILE or IMAGE cell is clicked. Host resolves the href to a signed download URL. */
|
|
86
90
|
mrdDownload: EventEmitter<{
|
|
@@ -136,6 +140,8 @@ export declare class MrdTable {
|
|
|
136
140
|
private buildQueryParams;
|
|
137
141
|
private get columns();
|
|
138
142
|
private get tableActions();
|
|
143
|
+
private toggleCreatePicker;
|
|
144
|
+
private closeCreatePicker;
|
|
139
145
|
private colName;
|
|
140
146
|
private colDataType;
|
|
141
147
|
/** True when we have a reliable total: either from the aggregations response or because
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
|
|
8
8
|
import { ClientLayout, ClientLayoutItem, ClientLayoutItemFieldDataType, ClientLayoutItemRelationDisplayType, ClientLayoutItemRelationEditBehavior, ClientListValue, CurrencyValue, RelationSearchResult as RelationSearchResult1 } from "./types";
|
|
9
|
-
import { AggregationResult, ClientLayoutItem as ClientLayoutItem1, ClientLayoutItemNavigate, ClientViewMetadata, RelationSearchResult } from "./types/client-layout";
|
|
9
|
+
import { AggregationResult, ClientLayoutItem as ClientLayoutItem1, ClientLayoutItemNavigate, ClientViewMetadata, HyperlinkValue, RelationSearchResult } from "./types/client-layout";
|
|
10
10
|
export { ClientLayout, ClientLayoutItem, ClientLayoutItemFieldDataType, ClientLayoutItemRelationDisplayType, ClientLayoutItemRelationEditBehavior, ClientListValue, CurrencyValue, RelationSearchResult as RelationSearchResult1 } from "./types";
|
|
11
|
-
export { AggregationResult, ClientLayoutItem as ClientLayoutItem1, ClientLayoutItemNavigate, ClientViewMetadata, RelationSearchResult } from "./types/client-layout";
|
|
11
|
+
export { AggregationResult, ClientLayoutItem as ClientLayoutItem1, ClientLayoutItemNavigate, ClientViewMetadata, HyperlinkValue, RelationSearchResult } from "./types/client-layout";
|
|
12
12
|
export namespace Components {
|
|
13
13
|
interface MrdBooleanField {
|
|
14
14
|
/**
|
|
@@ -241,7 +241,7 @@ export namespace Components {
|
|
|
241
241
|
/**
|
|
242
242
|
* @default ''
|
|
243
243
|
*/
|
|
244
|
-
"value": string;
|
|
244
|
+
"value": HyperlinkValue | string;
|
|
245
245
|
}
|
|
246
246
|
interface MrdImageField {
|
|
247
247
|
/**
|
|
@@ -479,6 +479,36 @@ export namespace Components {
|
|
|
479
479
|
*/
|
|
480
480
|
"value": string | string[] | RelationSearchResult1 | RelationSearchResult1[] | null;
|
|
481
481
|
}
|
|
482
|
+
interface MrdSecretField {
|
|
483
|
+
/**
|
|
484
|
+
* @default false
|
|
485
|
+
*/
|
|
486
|
+
"disabled": boolean;
|
|
487
|
+
/**
|
|
488
|
+
* @default ''
|
|
489
|
+
*/
|
|
490
|
+
"label": string;
|
|
491
|
+
/**
|
|
492
|
+
* @default navigator.language
|
|
493
|
+
*/
|
|
494
|
+
"locale": string;
|
|
495
|
+
/**
|
|
496
|
+
* @default ''
|
|
497
|
+
*/
|
|
498
|
+
"name": string;
|
|
499
|
+
/**
|
|
500
|
+
* @default ''
|
|
501
|
+
*/
|
|
502
|
+
"placeholder": string;
|
|
503
|
+
/**
|
|
504
|
+
* @default false
|
|
505
|
+
*/
|
|
506
|
+
"required": boolean;
|
|
507
|
+
/**
|
|
508
|
+
* @default ''
|
|
509
|
+
*/
|
|
510
|
+
"value": string;
|
|
511
|
+
}
|
|
482
512
|
interface MrdTable {
|
|
483
513
|
/**
|
|
484
514
|
* Initialise (or reset) the virtual scroll. Call after setting all props and registering the mrdLoadPage listener, but before calling setPage(0, rows).
|
|
@@ -679,6 +709,10 @@ export interface MrdRelationFieldCustomEvent<T> extends CustomEvent<T> {
|
|
|
679
709
|
detail: T;
|
|
680
710
|
target: HTMLMrdRelationFieldElement;
|
|
681
711
|
}
|
|
712
|
+
export interface MrdSecretFieldCustomEvent<T> extends CustomEvent<T> {
|
|
713
|
+
detail: T;
|
|
714
|
+
target: HTMLMrdSecretFieldElement;
|
|
715
|
+
}
|
|
682
716
|
export interface MrdTableCustomEvent<T> extends CustomEvent<T> {
|
|
683
717
|
detail: T;
|
|
684
718
|
target: HTMLMrdTableElement;
|
|
@@ -848,8 +882,8 @@ declare global {
|
|
|
848
882
|
new (): HTMLMrdFormElement;
|
|
849
883
|
};
|
|
850
884
|
interface HTMLMrdHyperlinkFieldElementEventMap {
|
|
851
|
-
"mrdChange": { name: string; value:
|
|
852
|
-
"mrdBlur": { name: string; value:
|
|
885
|
+
"mrdChange": { name: string; value: HyperlinkValue };
|
|
886
|
+
"mrdBlur": { name: string; value: HyperlinkValue };
|
|
853
887
|
}
|
|
854
888
|
interface HTMLMrdHyperlinkFieldElement extends Components.MrdHyperlinkField, HTMLStencilElement {
|
|
855
889
|
addEventListener<K extends keyof HTMLMrdHyperlinkFieldElementEventMap>(type: K, listener: (this: HTMLMrdHyperlinkFieldElement, ev: MrdHyperlinkFieldCustomEvent<HTMLMrdHyperlinkFieldElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
@@ -890,7 +924,7 @@ declare global {
|
|
|
890
924
|
"mrdDownload": { href: string; fileName: string };
|
|
891
925
|
"mrdLoadViewPage": { name: string; page: number; sort: string; path: string; qs: string };
|
|
892
926
|
"mrdLoadImage": { fieldName: string; href: string };
|
|
893
|
-
"mrdViewAction": { name: string; action: string; dataClass: string; path?: string; qs?: string; parentPath?: string | null };
|
|
927
|
+
"mrdViewAction": { name: string; action: string; dataClass: string; path?: string; qs?: string; parentPath?: string | null; basicType?: string };
|
|
894
928
|
"mrdLoadViewAggregations": { name: string; dataClass: string; path: string; qs: string; aggQs: string };
|
|
895
929
|
}
|
|
896
930
|
interface HTMLMrdLayoutSectionElement extends Components.MrdLayoutSection, HTMLStencilElement {
|
|
@@ -981,10 +1015,28 @@ declare global {
|
|
|
981
1015
|
prototype: HTMLMrdRelationFieldElement;
|
|
982
1016
|
new (): HTMLMrdRelationFieldElement;
|
|
983
1017
|
};
|
|
1018
|
+
interface HTMLMrdSecretFieldElementEventMap {
|
|
1019
|
+
"mrdChange": { name: string; value: string };
|
|
1020
|
+
"mrdBlur": { name: string; value: string };
|
|
1021
|
+
}
|
|
1022
|
+
interface HTMLMrdSecretFieldElement extends Components.MrdSecretField, HTMLStencilElement {
|
|
1023
|
+
addEventListener<K extends keyof HTMLMrdSecretFieldElementEventMap>(type: K, listener: (this: HTMLMrdSecretFieldElement, ev: MrdSecretFieldCustomEvent<HTMLMrdSecretFieldElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1024
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1025
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1026
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
1027
|
+
removeEventListener<K extends keyof HTMLMrdSecretFieldElementEventMap>(type: K, listener: (this: HTMLMrdSecretFieldElement, ev: MrdSecretFieldCustomEvent<HTMLMrdSecretFieldElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
1028
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1029
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1030
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
1031
|
+
}
|
|
1032
|
+
var HTMLMrdSecretFieldElement: {
|
|
1033
|
+
prototype: HTMLMrdSecretFieldElement;
|
|
1034
|
+
new (): HTMLMrdSecretFieldElement;
|
|
1035
|
+
};
|
|
984
1036
|
interface HTMLMrdTableElementEventMap {
|
|
985
1037
|
"mrdLoadPage": { page: number; sort: string; path: string; qs: string };
|
|
986
1038
|
"mrdRowClick": Record<string, any>;
|
|
987
|
-
"mrdAction": { action: string; path?: string; qs?: string; dataClass?: string; parentPath?: string | null };
|
|
1039
|
+
"mrdAction": { action: string; path?: string; qs?: string; dataClass?: string; parentPath?: string | null; basicType?: string };
|
|
988
1040
|
"mrdDownload": { href: string; fileName: string };
|
|
989
1041
|
"mrdLoadAggregations": { path: string; qs: string; aggQs: string };
|
|
990
1042
|
}
|
|
@@ -1072,6 +1124,7 @@ declare global {
|
|
|
1072
1124
|
"mrd-longtext-field": HTMLMrdLongtextFieldElement;
|
|
1073
1125
|
"mrd-number-field": HTMLMrdNumberFieldElement;
|
|
1074
1126
|
"mrd-relation-field": HTMLMrdRelationFieldElement;
|
|
1127
|
+
"mrd-secret-field": HTMLMrdSecretFieldElement;
|
|
1075
1128
|
"mrd-table": HTMLMrdTableElement;
|
|
1076
1129
|
"mrd-text-field": HTMLMrdTextFieldElement;
|
|
1077
1130
|
"mrd-textarea-field": HTMLMrdTextareaFieldElement;
|
|
@@ -1324,8 +1377,8 @@ declare namespace LocalJSX {
|
|
|
1324
1377
|
* @default ''
|
|
1325
1378
|
*/
|
|
1326
1379
|
"name"?: string;
|
|
1327
|
-
"onMrdBlur"?: (event: MrdHyperlinkFieldCustomEvent<{ name: string; value:
|
|
1328
|
-
"onMrdChange"?: (event: MrdHyperlinkFieldCustomEvent<{ name: string; value:
|
|
1380
|
+
"onMrdBlur"?: (event: MrdHyperlinkFieldCustomEvent<{ name: string; value: HyperlinkValue }>) => void;
|
|
1381
|
+
"onMrdChange"?: (event: MrdHyperlinkFieldCustomEvent<{ name: string; value: HyperlinkValue }>) => void;
|
|
1329
1382
|
/**
|
|
1330
1383
|
* @default ''
|
|
1331
1384
|
*/
|
|
@@ -1337,7 +1390,7 @@ declare namespace LocalJSX {
|
|
|
1337
1390
|
/**
|
|
1338
1391
|
* @default ''
|
|
1339
1392
|
*/
|
|
1340
|
-
"value"?: string;
|
|
1393
|
+
"value"?: HyperlinkValue | string;
|
|
1341
1394
|
}
|
|
1342
1395
|
interface MrdImageField {
|
|
1343
1396
|
/**
|
|
@@ -1417,7 +1470,7 @@ declare namespace LocalJSX {
|
|
|
1417
1470
|
/**
|
|
1418
1471
|
* Re-emitted from an embedded mrd-table's mrdAction; host builds the target URL from dataClass.
|
|
1419
1472
|
*/
|
|
1420
|
-
"onMrdViewAction"?: (event: MrdLayoutSectionCustomEvent<{ name: string; action: string; dataClass: string; path?: string; qs?: string; parentPath?: string | null }>) => void;
|
|
1473
|
+
"onMrdViewAction"?: (event: MrdLayoutSectionCustomEvent<{ name: string; action: string; dataClass: string; path?: string; qs?: string; parentPath?: string | null; basicType?: string }>) => void;
|
|
1421
1474
|
/**
|
|
1422
1475
|
* Legacy: view metadata map (ClientDashboardMetadata.views). Not needed in new flat format.
|
|
1423
1476
|
* @default {}
|
|
@@ -1587,6 +1640,38 @@ declare namespace LocalJSX {
|
|
|
1587
1640
|
*/
|
|
1588
1641
|
"value"?: string | string[] | RelationSearchResult1 | RelationSearchResult1[] | null;
|
|
1589
1642
|
}
|
|
1643
|
+
interface MrdSecretField {
|
|
1644
|
+
/**
|
|
1645
|
+
* @default false
|
|
1646
|
+
*/
|
|
1647
|
+
"disabled"?: boolean;
|
|
1648
|
+
/**
|
|
1649
|
+
* @default ''
|
|
1650
|
+
*/
|
|
1651
|
+
"label"?: string;
|
|
1652
|
+
/**
|
|
1653
|
+
* @default navigator.language
|
|
1654
|
+
*/
|
|
1655
|
+
"locale"?: string;
|
|
1656
|
+
/**
|
|
1657
|
+
* @default ''
|
|
1658
|
+
*/
|
|
1659
|
+
"name"?: string;
|
|
1660
|
+
"onMrdBlur"?: (event: MrdSecretFieldCustomEvent<{ name: string; value: string }>) => void;
|
|
1661
|
+
"onMrdChange"?: (event: MrdSecretFieldCustomEvent<{ name: string; value: string }>) => void;
|
|
1662
|
+
/**
|
|
1663
|
+
* @default ''
|
|
1664
|
+
*/
|
|
1665
|
+
"placeholder"?: string;
|
|
1666
|
+
/**
|
|
1667
|
+
* @default false
|
|
1668
|
+
*/
|
|
1669
|
+
"required"?: boolean;
|
|
1670
|
+
/**
|
|
1671
|
+
* @default ''
|
|
1672
|
+
*/
|
|
1673
|
+
"value"?: string;
|
|
1674
|
+
}
|
|
1590
1675
|
interface MrdTable {
|
|
1591
1676
|
/**
|
|
1592
1677
|
* The VIEW or RELATED_VIEW layout item. Contains view config, dataClass, fromClass, actions etc.
|
|
@@ -1600,7 +1685,7 @@ declare namespace LocalJSX {
|
|
|
1600
1685
|
/**
|
|
1601
1686
|
* Fired when a toolbar action button is clicked. For 'export': includes `path` (relative excel path) and `qs` (current sort+filter params). For 'create': includes `dataClass` (target type) and `parentPath` (e.g. /buyers/123 for RELATED_VIEW).
|
|
1602
1687
|
*/
|
|
1603
|
-
"onMrdAction"?: (event: MrdTableCustomEvent<{ action: string; path?: string; qs?: string; dataClass?: string; parentPath?: string | null }>) => void;
|
|
1688
|
+
"onMrdAction"?: (event: MrdTableCustomEvent<{ action: string; path?: string; qs?: string; dataClass?: string; parentPath?: string | null; basicType?: string }>) => void;
|
|
1604
1689
|
/**
|
|
1605
1690
|
* Fired when a FILE or IMAGE cell is clicked. Host resolves the href to a signed download URL.
|
|
1606
1691
|
*/
|
|
@@ -1802,7 +1887,7 @@ declare namespace LocalJSX {
|
|
|
1802
1887
|
interface MrdHyperlinkFieldAttributes {
|
|
1803
1888
|
"name": string;
|
|
1804
1889
|
"label": string;
|
|
1805
|
-
"value": string;
|
|
1890
|
+
"value": HyperlinkValue | string;
|
|
1806
1891
|
"placeholder": string;
|
|
1807
1892
|
"required": boolean;
|
|
1808
1893
|
"disabled": boolean;
|
|
@@ -1863,6 +1948,15 @@ declare namespace LocalJSX {
|
|
|
1863
1948
|
"multiple": boolean;
|
|
1864
1949
|
"value": string | string[] | RelationSearchResult | RelationSearchResult[] | null;
|
|
1865
1950
|
}
|
|
1951
|
+
interface MrdSecretFieldAttributes {
|
|
1952
|
+
"name": string;
|
|
1953
|
+
"label": string;
|
|
1954
|
+
"value": string;
|
|
1955
|
+
"placeholder": string;
|
|
1956
|
+
"required": boolean;
|
|
1957
|
+
"disabled": boolean;
|
|
1958
|
+
"locale": string;
|
|
1959
|
+
}
|
|
1866
1960
|
interface MrdTableAttributes {
|
|
1867
1961
|
"parentId": string;
|
|
1868
1962
|
"locale": string;
|
|
@@ -1914,6 +2008,7 @@ declare namespace LocalJSX {
|
|
|
1914
2008
|
"mrd-longtext-field": Omit<MrdLongtextField, keyof MrdLongtextFieldAttributes> & { [K in keyof MrdLongtextField & keyof MrdLongtextFieldAttributes]?: MrdLongtextField[K] } & { [K in keyof MrdLongtextField & keyof MrdLongtextFieldAttributes as `attr:${K}`]?: MrdLongtextFieldAttributes[K] } & { [K in keyof MrdLongtextField & keyof MrdLongtextFieldAttributes as `prop:${K}`]?: MrdLongtextField[K] };
|
|
1915
2009
|
"mrd-number-field": Omit<MrdNumberField, keyof MrdNumberFieldAttributes> & { [K in keyof MrdNumberField & keyof MrdNumberFieldAttributes]?: MrdNumberField[K] } & { [K in keyof MrdNumberField & keyof MrdNumberFieldAttributes as `attr:${K}`]?: MrdNumberFieldAttributes[K] } & { [K in keyof MrdNumberField & keyof MrdNumberFieldAttributes as `prop:${K}`]?: MrdNumberField[K] };
|
|
1916
2010
|
"mrd-relation-field": Omit<MrdRelationField, keyof MrdRelationFieldAttributes> & { [K in keyof MrdRelationField & keyof MrdRelationFieldAttributes]?: MrdRelationField[K] } & { [K in keyof MrdRelationField & keyof MrdRelationFieldAttributes as `attr:${K}`]?: MrdRelationFieldAttributes[K] } & { [K in keyof MrdRelationField & keyof MrdRelationFieldAttributes as `prop:${K}`]?: MrdRelationField[K] };
|
|
2011
|
+
"mrd-secret-field": Omit<MrdSecretField, keyof MrdSecretFieldAttributes> & { [K in keyof MrdSecretField & keyof MrdSecretFieldAttributes]?: MrdSecretField[K] } & { [K in keyof MrdSecretField & keyof MrdSecretFieldAttributes as `attr:${K}`]?: MrdSecretFieldAttributes[K] } & { [K in keyof MrdSecretField & keyof MrdSecretFieldAttributes as `prop:${K}`]?: MrdSecretField[K] };
|
|
1917
2012
|
"mrd-table": Omit<MrdTable, keyof MrdTableAttributes> & { [K in keyof MrdTable & keyof MrdTableAttributes]?: MrdTable[K] } & { [K in keyof MrdTable & keyof MrdTableAttributes as `attr:${K}`]?: MrdTableAttributes[K] } & { [K in keyof MrdTable & keyof MrdTableAttributes as `prop:${K}`]?: MrdTable[K] };
|
|
1918
2013
|
"mrd-text-field": Omit<MrdTextField, keyof MrdTextFieldAttributes> & { [K in keyof MrdTextField & keyof MrdTextFieldAttributes]?: MrdTextField[K] } & { [K in keyof MrdTextField & keyof MrdTextFieldAttributes as `attr:${K}`]?: MrdTextFieldAttributes[K] } & { [K in keyof MrdTextField & keyof MrdTextFieldAttributes as `prop:${K}`]?: MrdTextField[K] };
|
|
1919
2014
|
"mrd-textarea-field": Omit<MrdTextareaField, keyof MrdTextareaFieldAttributes> & { [K in keyof MrdTextareaField & keyof MrdTextareaFieldAttributes]?: MrdTextareaField[K] } & { [K in keyof MrdTextareaField & keyof MrdTextareaFieldAttributes as `attr:${K}`]?: MrdTextareaFieldAttributes[K] } & { [K in keyof MrdTextareaField & keyof MrdTextareaFieldAttributes as `prop:${K}`]?: MrdTextareaField[K] };
|
|
@@ -1939,6 +2034,7 @@ declare module "@stencil/core" {
|
|
|
1939
2034
|
"mrd-longtext-field": LocalJSX.IntrinsicElements["mrd-longtext-field"] & JSXBase.HTMLAttributes<HTMLMrdLongtextFieldElement>;
|
|
1940
2035
|
"mrd-number-field": LocalJSX.IntrinsicElements["mrd-number-field"] & JSXBase.HTMLAttributes<HTMLMrdNumberFieldElement>;
|
|
1941
2036
|
"mrd-relation-field": LocalJSX.IntrinsicElements["mrd-relation-field"] & JSXBase.HTMLAttributes<HTMLMrdRelationFieldElement>;
|
|
2037
|
+
"mrd-secret-field": LocalJSX.IntrinsicElements["mrd-secret-field"] & JSXBase.HTMLAttributes<HTMLMrdSecretFieldElement>;
|
|
1942
2038
|
"mrd-table": LocalJSX.IntrinsicElements["mrd-table"] & JSXBase.HTMLAttributes<HTMLMrdTableElement>;
|
|
1943
2039
|
"mrd-text-field": LocalJSX.IntrinsicElements["mrd-text-field"] & JSXBase.HTMLAttributes<HTMLMrdTextFieldElement>;
|
|
1944
2040
|
"mrd-textarea-field": LocalJSX.IntrinsicElements["mrd-textarea-field"] & JSXBase.HTMLAttributes<HTMLMrdTextareaFieldElement>;
|
|
@@ -35,7 +35,8 @@ export declare enum ClientLayoutItemFieldDataType {
|
|
|
35
35
|
FILE = "FILE",
|
|
36
36
|
IMAGE = "IMAGE",
|
|
37
37
|
LONGTEXT = "LONGTEXT",
|
|
38
|
-
JSON = "JSON"
|
|
38
|
+
JSON = "JSON",
|
|
39
|
+
SECRET = "SECRET"
|
|
39
40
|
}
|
|
40
41
|
export declare enum ClientLayoutItemRelationDisplayType {
|
|
41
42
|
SEARCH = "SEARCH",
|
|
@@ -71,6 +72,10 @@ export interface CurrencyValue {
|
|
|
71
72
|
currency: string;
|
|
72
73
|
decimals?: number;
|
|
73
74
|
}
|
|
75
|
+
export interface HyperlinkValue {
|
|
76
|
+
href: string;
|
|
77
|
+
name?: string;
|
|
78
|
+
}
|
|
74
79
|
export interface RelationSearchResult {
|
|
75
80
|
id: string;
|
|
76
81
|
label: string;
|
|
@@ -93,6 +98,7 @@ export interface ClientLayoutItemField {
|
|
|
93
98
|
currencyCode?: string;
|
|
94
99
|
/** Aggregate function to render in the table totals row. */
|
|
95
100
|
aggregate?: 'sum' | 'avg' | 'count' | null;
|
|
101
|
+
historyEnabled?: boolean;
|
|
96
102
|
}
|
|
97
103
|
/** Response shape from the /aggregations endpoint.
|
|
98
104
|
* `count` is a plain number (total record count) when returned at the top level. */
|
|
@@ -136,6 +142,10 @@ export interface ClientLayoutItemSearch {
|
|
|
136
142
|
dataClass: string;
|
|
137
143
|
showTitle: boolean;
|
|
138
144
|
}
|
|
145
|
+
export interface ClientCreateType {
|
|
146
|
+
type: string;
|
|
147
|
+
label: string;
|
|
148
|
+
}
|
|
139
149
|
/**
|
|
140
150
|
* A single item in a ClientLayout. The `type` discriminator determines which
|
|
141
151
|
* optional fields are present. Components should only act on types they
|
|
@@ -164,6 +174,8 @@ export interface ClientLayoutItem {
|
|
|
164
174
|
}>;
|
|
165
175
|
/** Toolbar buttons for embedded views. null/omitted = ["NEW","EXPORT"]; [] = none. */
|
|
166
176
|
actions?: string[] | null;
|
|
177
|
+
/** Concrete subtypes available for create. When set, the NEW button expands into one button per entry. */
|
|
178
|
+
createTypes?: ClientCreateType[] | null;
|
|
167
179
|
dataType?: ClientLayoutItemFieldDataType;
|
|
168
180
|
required?: boolean;
|
|
169
181
|
disabled?: boolean;
|
|
@@ -177,6 +189,7 @@ export interface ClientLayoutItem {
|
|
|
177
189
|
maxSize?: number;
|
|
178
190
|
decimalPrecision?: number;
|
|
179
191
|
currencyCode?: string;
|
|
192
|
+
historyEnabled?: boolean;
|
|
180
193
|
relatedClass?: string;
|
|
181
194
|
mostSignificantClass?: string;
|
|
182
195
|
displayType?: ClientLayoutItemRelationDisplayType;
|
|
@@ -21,6 +21,7 @@ export interface TableAction {
|
|
|
21
21
|
/** Button style variant. Defaults to 'secondary'. */
|
|
22
22
|
variant?: 'primary' | 'secondary' | 'danger';
|
|
23
23
|
disabled?: boolean;
|
|
24
|
+
basicType?: string;
|
|
24
25
|
}
|
|
25
26
|
/** Represents an active filter on a single column. */
|
|
26
27
|
export interface ColumnFilter {
|