@energinet/watt 4.3.51 → 4.3.52
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/fesm2022/energinet-watt-icon.mjs +1 -0
- package/fesm2022/energinet-watt-icon.mjs.map +1 -1
- package/fesm2022/energinet-watt-json-viewer.mjs +80 -57
- package/fesm2022/energinet-watt-json-viewer.mjs.map +1 -1
- package/package.json +1 -1
- package/types/energinet-watt-badge.d.ts +1 -1
- package/types/energinet-watt-button.d.ts +1 -1
- package/types/energinet-watt-chip.d.ts +1 -1
- package/types/energinet-watt-data.d.ts +1 -1
- package/types/energinet-watt-empty-state.d.ts +1 -1
- package/types/energinet-watt-icon.d.ts +2 -1
- package/types/energinet-watt-json-viewer.d.ts +7 -2
- package/types/energinet-watt-modal.d.ts +1 -1
- package/types/energinet-watt-text-field.d.ts +1 -1
- package/types/energinet-watt-validation-message.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energinet-watt-icon.mjs","sources":["../../../libs/watt/package/icon/icons.ts","../../../libs/watt/package/icon/icon.component.ts","../../../libs/watt/package/icon/index.ts","../../../libs/watt/package/icon/energinet-watt-icon.ts"],"sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport const WattIconMap = {\n search: 'search',\n filter: 'filter_list',\n plus: 'add',\n minus: 'remove',\n edit: 'edit',\n redo: 'redo',\n undo: 'undo',\n remove: 'delete',\n removeForever: 'delete_forever',\n close: 'close',\n cancel: 'cancel',\n checkmark: 'check',\n user: 'account_circle',\n settings: 'settings',\n contentCopy: 'content_copy',\n date: 'calendar_today',\n time: 'schedule',\n email: 'email',\n markEmailUnread: 'mark_email_unread',\n link: 'link',\n openInNew: 'open_in_new',\n monetization: 'monetization_on',\n payments: 'payments',\n forwardMessage: 'forward_to_inbox',\n forward: 'forward',\n menu: 'menu',\n moreVertical: 'more_vert',\n logout: 'logout',\n login: 'lock_open',\n help: 'help',\n alternateEmail: 'alternate_email',\n refresh: 'refresh',\n language: 'language',\n pendingActions: 'pending_actions',\n toggleOn: 'toggle_on',\n toggleOff: 'toggle_off',\n personCheck: 'person_check',\n send: 'send',\n // Navigation\n left: 'navigate_before',\n right: 'navigate_next',\n up: 'expand_less',\n down: 'expand_more',\n arrowDropDown: 'arrow_drop_down',\n arrowRightAlt: 'arrow_right_alt',\n arrowLeftAlt: 'arrow_left_alt',\n // Alerts\n danger: 'dangerous',\n warning: 'report_problem',\n success: 'check_circle',\n info: 'info',\n feedback: 'feedback',\n // Files\n save: 'save_alt',\n upload: 'upload',\n download: 'save_alt',\n fileDownload: 'download',\n fileUpload: 'upload',\n print: 'print',\n preview: 'preview',\n attachFile: 'attach_file',\n article: 'article',\n contract: 'contract',\n // Other\n power: 'power',\n location: 'location_on',\n smartDisplay: 'smart_display',\n windmill: 'energy',\n solarPower: 'solar_power',\n priorityHigh: 'priority_high',\n notifications: 'notifications',\n notificationsUnread: 'notifications_unread',\n horizontalRule: 'horizontal_rule',\n wrongLocation: 'wrong_location',\n heatPump: 'heat_pump',\n inventory: 'inventory',\n globe: 'globe',\n calculate: 'calculate',\n bar_chart_4_bars: 'bar_chart_4_bars',\n view_list: 'view_list',\n view_stream: 'view_stream',\n construction: 'construction',\n factory: 'factory',\n nest_eco_leaf: 'nest_eco_leaf',\n flash_on: 'flash_on',\n};\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { WattIconMap } from './icons';\n\nexport type WattIcon = keyof typeof WattIconMap;\nexport type WattIconSize = 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl';\nexport type WattIconState = 'default' | 'success' | 'danger' | 'warning' | 'info';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { '[class]': 'classNames()' },\n imports: [MatIcon],\n selector: 'watt-icon',\n styleUrls: ['./icon.component.scss'],\n template: `\n @if (icon()) {\n <mat-icon aria-hidden=\"false\" [attr.aria-label]=\"label()\" fontSet=\"material-symbols-sharp\">\n {{ icon() }}\n </mat-icon>\n } @else {\n <div class=\"watt-custom-icon\">\n <ng-content />\n </div>\n }\n `,\n})\nexport class WattIconComponent {\n /** Name of an icon within the font set. */\n name = input<WattIcon>();\n\n /** Accessible label for the icon. */\n label = input<string>();\n\n /** Size of the icon. */\n size = input<WattIconSize>('m');\n\n /** Color the icon to match a chosen state. */\n state = input<WattIconState>();\n\n icon = computed(() => {\n const name = this.name();\n if (!name) return null;\n return WattIconMap[name];\n });\n\n computedState = computed(() => {\n const name = this.name();\n const state = this.state();\n if (state) return state;\n switch (name) {\n case 'success':\n case 'danger':\n case 'warning':\n case 'info':\n return name;\n default:\n return 'default';\n }\n });\n\n classNames = computed(() => `icon-size-${this.size()} icon-state-${this.computedState()}`);\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport { WattIconComponent, WattIcon, WattIconSize, WattIconState } from './icon.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"energinet-watt-icon.mjs","sources":["../../../libs/watt/package/icon/icons.ts","../../../libs/watt/package/icon/icon.component.ts","../../../libs/watt/package/icon/index.ts","../../../libs/watt/package/icon/energinet-watt-icon.ts"],"sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport const WattIconMap = {\n search: 'search',\n filter: 'filter_list',\n plus: 'add',\n minus: 'remove',\n edit: 'edit',\n redo: 'redo',\n undo: 'undo',\n remove: 'delete',\n removeForever: 'delete_forever',\n close: 'close',\n cancel: 'cancel',\n checkmark: 'check',\n user: 'account_circle',\n settings: 'settings',\n contentCopy: 'content_copy',\n date: 'calendar_today',\n time: 'schedule',\n email: 'email',\n markEmailUnread: 'mark_email_unread',\n link: 'link',\n openInNew: 'open_in_new',\n monetization: 'monetization_on',\n payments: 'payments',\n forwardMessage: 'forward_to_inbox',\n forward: 'forward',\n menu: 'menu',\n moreVertical: 'more_vert',\n logout: 'logout',\n login: 'lock_open',\n help: 'help',\n alternateEmail: 'alternate_email',\n refresh: 'refresh',\n language: 'language',\n pendingActions: 'pending_actions',\n toggleOn: 'toggle_on',\n toggleOff: 'toggle_off',\n personCheck: 'person_check',\n send: 'send',\n // Navigation\n left: 'navigate_before',\n right: 'navigate_next',\n up: 'expand_less',\n down: 'expand_more',\n arrowDropDown: 'arrow_drop_down',\n arrowRightAlt: 'arrow_right_alt',\n arrowLeftAlt: 'arrow_left_alt',\n // Alerts\n danger: 'dangerous',\n warning: 'report_problem',\n success: 'check_circle',\n info: 'info',\n feedback: 'feedback',\n // Files\n save: 'save_alt',\n upload: 'upload',\n download: 'save_alt',\n fileDownload: 'download',\n fileUpload: 'upload',\n print: 'print',\n preview: 'preview',\n attachFile: 'attach_file',\n article: 'article',\n contract: 'contract',\n // Other\n power: 'power',\n location: 'location_on',\n smartDisplay: 'smart_display',\n windmill: 'energy',\n solarPower: 'solar_power',\n priorityHigh: 'priority_high',\n notifications: 'notifications',\n notificationsUnread: 'notifications_unread',\n horizontalRule: 'horizontal_rule',\n wrongLocation: 'wrong_location',\n heatPump: 'heat_pump',\n inventory: 'inventory',\n globe: 'globe',\n calculate: 'calculate',\n bar_chart_4_bars: 'bar_chart_4_bars',\n view_list: 'view_list',\n view_stream: 'view_stream',\n construction: 'construction',\n factory: 'factory',\n nest_eco_leaf: 'nest_eco_leaf',\n flash_on: 'flash_on',\n matchCase: 'match_case',\n};\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { WattIconMap } from './icons';\n\nexport type WattIcon = keyof typeof WattIconMap;\nexport type WattIconSize = 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl';\nexport type WattIconState = 'default' | 'success' | 'danger' | 'warning' | 'info';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { '[class]': 'classNames()' },\n imports: [MatIcon],\n selector: 'watt-icon',\n styleUrls: ['./icon.component.scss'],\n template: `\n @if (icon()) {\n <mat-icon aria-hidden=\"false\" [attr.aria-label]=\"label()\" fontSet=\"material-symbols-sharp\">\n {{ icon() }}\n </mat-icon>\n } @else {\n <div class=\"watt-custom-icon\">\n <ng-content />\n </div>\n }\n `,\n})\nexport class WattIconComponent {\n /** Name of an icon within the font set. */\n name = input<WattIcon>();\n\n /** Accessible label for the icon. */\n label = input<string>();\n\n /** Size of the icon. */\n size = input<WattIconSize>('m');\n\n /** Color the icon to match a chosen state. */\n state = input<WattIconState>();\n\n icon = computed(() => {\n const name = this.name();\n if (!name) return null;\n return WattIconMap[name];\n });\n\n computedState = computed(() => {\n const name = this.name();\n const state = this.state();\n if (state) return state;\n switch (name) {\n case 'success':\n case 'danger':\n case 'warning':\n case 'info':\n return name;\n default:\n return 'default';\n }\n });\n\n classNames = computed(() => `icon-size-${this.size()} icon-state-${this.computedState()}`);\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport { WattIconComponent, WattIcon, WattIconSize, WattIconState } from './icon.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -22,17 +22,21 @@ import { WattIconComponent } from '@energinet/watt/icon';
|
|
|
22
22
|
* limitations under the License.
|
|
23
23
|
*/
|
|
24
24
|
//#endregion
|
|
25
|
+
//
|
|
25
26
|
/** Compares two values. When deep is false, objects/arrays compare by type only. */
|
|
26
|
-
function isEqual(a, b, { deep }) {
|
|
27
|
+
function isEqual(a, b, { deep = true, ignoreCase = false } = {}) {
|
|
28
|
+
if (typeof a !== typeof b)
|
|
29
|
+
return false;
|
|
30
|
+
const eq = (a, b) => (ignoreCase ? a.toLowerCase() === b.toLowerCase() : a === b);
|
|
31
|
+
const replacer = (_, v) => {
|
|
32
|
+
if (Array.isArray(v))
|
|
33
|
+
return deep ? v : [];
|
|
34
|
+
if (v && typeof v === 'object')
|
|
35
|
+
return deep ? Object.fromEntries(Object.entries(v).sort()) : {};
|
|
36
|
+
return v;
|
|
37
|
+
};
|
|
27
38
|
try {
|
|
28
|
-
|
|
29
|
-
return false;
|
|
30
|
-
if (typeof a !== 'object')
|
|
31
|
-
return a === b;
|
|
32
|
-
if (a === null || b === null)
|
|
33
|
-
return a === b;
|
|
34
|
-
const replacer = !deep ? (_, v) => (Array.isArray(v) ? [] : {}) : undefined;
|
|
35
|
-
return JSON.stringify(a, replacer) === JSON.stringify(b, replacer);
|
|
39
|
+
return eq(JSON.stringify(a, replacer), JSON.stringify(b, replacer));
|
|
36
40
|
}
|
|
37
41
|
catch {
|
|
38
42
|
return a === b;
|
|
@@ -111,22 +115,24 @@ function* tokenize(value, budget) {
|
|
|
111
115
|
//#endregion
|
|
112
116
|
class WattJsonRow {
|
|
113
117
|
label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
|
|
114
|
-
|
|
118
|
+
isBaseline = input.required(...(ngDevMode ? [{ debugName: "isBaseline" }] : []));
|
|
115
119
|
isSame = input.required(...(ngDevMode ? [{ debugName: "isSame" }] : []));
|
|
116
120
|
expanded = input.required(...(ngDevMode ? [{ debugName: "expanded" }] : []));
|
|
117
121
|
value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
|
|
122
|
+
diff = input(false, ...(ngDevMode ? [{ debugName: "diff" }] : []));
|
|
118
123
|
expandable = computed(() => isNonEmpty(this.value()), ...(ngDevMode ? [{ debugName: "expandable" }] : []));
|
|
124
|
+
budget = computed(() => (this.diff() ? 40 : 80), ...(ngDevMode ? [{ debugName: "budget" }] : []));
|
|
119
125
|
tokens = computed(() => [
|
|
120
|
-
...tokenize(this.value(), this.expandable() ?
|
|
126
|
+
...tokenize(this.value(), this.expandable() ? this.budget() : Infinity),
|
|
121
127
|
], ...(ngDevMode ? [{ debugName: "tokens" }] : []));
|
|
122
128
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: WattJsonRow, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
123
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.6", type: WattJsonRow, isStandalone: true, selector: "watt-json-row", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null },
|
|
129
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.6", type: WattJsonRow, isStandalone: true, selector: "watt-json-row", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, isBaseline: { classPropertyName: "isBaseline", publicName: "isBaseline", isSignal: true, isRequired: true, transformFunction: null }, isSame: { classPropertyName: "isSame", publicName: "isSame", isSignal: true, isRequired: true, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, diff: { classPropertyName: "diff", publicName: "diff", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.watt-json-row-added": "!isBaseline() && !isSame()", "class.watt-json-row-removed": "isBaseline() && !isSame()" } }, ngImport: i0, template: `
|
|
124
130
|
@if (value() !== undefined) {
|
|
125
131
|
@if (expandable()) {
|
|
126
132
|
<watt-icon size="s" [name]="expanded() ? 'down' : 'right'" />
|
|
127
133
|
}
|
|
128
134
|
<span>{{ label() }}: </span>
|
|
129
|
-
<span [hidden]="expanded()">
|
|
135
|
+
<span [hidden]="expandable() && expanded()">
|
|
130
136
|
@for (token of tokens(); track $index) {
|
|
131
137
|
<span [class]="'watt-json-' + token.kind">{{ token.value }}</span>
|
|
132
138
|
}
|
|
@@ -137,22 +143,22 @@ class WattJsonRow {
|
|
|
137
143
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: WattJsonRow, decorators: [{
|
|
138
144
|
type: Component,
|
|
139
145
|
args: [{ selector: 'watt-json-row', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [WattIconComponent], host: {
|
|
140
|
-
'[class.watt-json-row-added]': '!
|
|
141
|
-
'[class.watt-json-row-removed]': '
|
|
146
|
+
'[class.watt-json-row-added]': '!isBaseline() && !isSame()',
|
|
147
|
+
'[class.watt-json-row-removed]': 'isBaseline() && !isSame()',
|
|
142
148
|
}, template: `
|
|
143
149
|
@if (value() !== undefined) {
|
|
144
150
|
@if (expandable()) {
|
|
145
151
|
<watt-icon size="s" [name]="expanded() ? 'down' : 'right'" />
|
|
146
152
|
}
|
|
147
153
|
<span>{{ label() }}: </span>
|
|
148
|
-
<span [hidden]="expanded()">
|
|
154
|
+
<span [hidden]="expandable() && expanded()">
|
|
149
155
|
@for (token of tokens(); track $index) {
|
|
150
156
|
<span [class]="'watt-json-' + token.kind">{{ token.value }}</span>
|
|
151
157
|
}
|
|
152
158
|
</span>
|
|
153
159
|
}
|
|
154
160
|
`, styles: ["watt-json-row{position:relative;padding-left:calc(var(--watt-json-level) * 20px);padding-right:calc(var(--watt-json-level) * 20px);color:var(--watt-color-primary)}watt-json-row>watt-icon{position:absolute;top:2px;transform:translate(-100%)}.watt-json-row-added:not(:empty){background-color:var(--watt-color-state-success-light)}.watt-json-row-removed:not(:empty){background-color:var(--watt-color-state-danger-light)}.watt-json-function,.watt-json-undefined{color:var(--watt-on-light-low-emphasis)}.watt-json-punctuation{color:var(--watt-on-light-medium-emphasis)}.watt-json-key{color:var(--watt-color-primary)}.watt-json-string{color:var(--watt-color-state-success)}.watt-json-number{color:var(--watt-color-state-warning)}.watt-json-boolean,.watt-json-null{color:var(--watt-color-state-danger)}\n"] }]
|
|
155
|
-
}], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }],
|
|
161
|
+
}], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], isBaseline: [{ type: i0.Input, args: [{ isSignal: true, alias: "isBaseline", required: true }] }], isSame: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSame", required: true }] }], expanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "expanded", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], diff: [{ type: i0.Input, args: [{ isSignal: true, alias: "diff", required: false }] }] } });
|
|
156
162
|
|
|
157
163
|
//#region License
|
|
158
164
|
/**
|
|
@@ -174,23 +180,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImpor
|
|
|
174
180
|
//#endregion
|
|
175
181
|
class WattJson {
|
|
176
182
|
label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
|
|
177
|
-
|
|
178
|
-
|
|
183
|
+
json = input(...(ngDevMode ? [undefined, { debugName: "json" }] : []));
|
|
184
|
+
baseline = input(...(ngDevMode ? [undefined, { debugName: "baseline" }] : []));
|
|
179
185
|
diff = input(false, ...(ngDevMode ? [{ debugName: "diff" }] : []));
|
|
186
|
+
ignoreCase = input(false, ...(ngDevMode ? [{ debugName: "ignoreCase" }] : []));
|
|
180
187
|
tree = input.required(...(ngDevMode ? [{ debugName: "tree" }] : []));
|
|
181
188
|
level = input(0, ...(ngDevMode ? [{ debugName: "level" }] : []));
|
|
182
189
|
toMap = (v) => new Map(Object.entries(isNonEmpty(v) ? v : []));
|
|
183
190
|
children = computed(() => {
|
|
184
|
-
const
|
|
185
|
-
const
|
|
186
|
-
const keys = new Set(interleave([...
|
|
187
|
-
return [...keys].map((key) => ({ key,
|
|
191
|
+
const json = this.toMap(this.json());
|
|
192
|
+
const baseline = this.toMap(this.baseline());
|
|
193
|
+
const keys = new Set(interleave([...json.keys()], [...baseline.keys()]));
|
|
194
|
+
return [...keys].map((key) => ({ key, json: json.get(key), baseline: baseline.get(key) }));
|
|
188
195
|
}, ...(ngDevMode ? [{ debugName: "children" }] : []));
|
|
189
196
|
isRoot = computed(() => this.level() === 0, ...(ngDevMode ? [{ debugName: "isRoot" }] : []));
|
|
190
197
|
isSame = computed(() => {
|
|
191
198
|
if (!this.diff())
|
|
192
199
|
return true;
|
|
193
|
-
return isEqual(this.
|
|
200
|
+
return isEqual(this.baseline(), this.json(), {
|
|
201
|
+
deep: !this.expanded(),
|
|
202
|
+
ignoreCase: this.ignoreCase(),
|
|
203
|
+
});
|
|
194
204
|
}, ...(ngDevMode ? [{ debugName: "isSame" }] : []));
|
|
195
205
|
expandable = computed(() => this.children().length > 0, ...(ngDevMode ? [{ debugName: "expandable" }] : []));
|
|
196
206
|
expanded = linkedSignal({ ...(ngDevMode ? { debugName: "expanded" } : {}), source: this.tree,
|
|
@@ -199,25 +209,27 @@ class WattJson {
|
|
|
199
209
|
// Prevent toggle when text is being selected
|
|
200
210
|
this.expanded.update((e) => (getSelection()?.isCollapsed && this.expandable() ? !e : e));
|
|
201
211
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: WattJson, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
202
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.6", type: WattJson, isStandalone: true, selector: "watt-json", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null },
|
|
212
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.6", type: WattJson, isStandalone: true, selector: "watt-json", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, json: { classPropertyName: "json", publicName: "json", isSignal: true, isRequired: false, transformFunction: null }, baseline: { classPropertyName: "baseline", publicName: "baseline", isSignal: true, isRequired: false, transformFunction: null }, diff: { classPropertyName: "diff", publicName: "diff", isSignal: true, isRequired: false, transformFunction: null }, ignoreCase: { classPropertyName: "ignoreCase", publicName: "ignoreCase", isSignal: true, isRequired: false, transformFunction: null }, tree: { classPropertyName: "tree", publicName: "tree", isSignal: true, isRequired: true, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--watt-json-level": "level()" } }, ngImport: i0, template: `
|
|
203
213
|
@if (!isRoot()) {
|
|
204
214
|
<vater-flex class="watt-json-row" direction="row" (click)="toggleExpanded()">
|
|
205
|
-
<watt-json-row
|
|
206
|
-
[label]="label()"
|
|
207
|
-
[isOriginal]="true"
|
|
208
|
-
[isSame]="isSame()"
|
|
209
|
-
[expanded]="expanded()"
|
|
210
|
-
[value]="left()"
|
|
211
|
-
/>
|
|
212
215
|
@if (diff()) {
|
|
213
216
|
<watt-json-row
|
|
214
217
|
[label]="label()"
|
|
215
|
-
[
|
|
218
|
+
[isBaseline]="true"
|
|
216
219
|
[isSame]="isSame()"
|
|
217
220
|
[expanded]="expanded()"
|
|
218
|
-
[value]="
|
|
221
|
+
[value]="baseline()"
|
|
222
|
+
[diff]="diff()"
|
|
219
223
|
/>
|
|
220
224
|
}
|
|
225
|
+
<watt-json-row
|
|
226
|
+
[label]="label()"
|
|
227
|
+
[isBaseline]="false"
|
|
228
|
+
[isSame]="isSame()"
|
|
229
|
+
[expanded]="expanded()"
|
|
230
|
+
[value]="json()"
|
|
231
|
+
[diff]="diff()"
|
|
232
|
+
/>
|
|
221
233
|
</vater-flex>
|
|
222
234
|
}
|
|
223
235
|
@defer (when expanded()) {
|
|
@@ -225,37 +237,40 @@ class WattJson {
|
|
|
225
237
|
<watt-json
|
|
226
238
|
[hidden]="!expanded()"
|
|
227
239
|
[label]="child.key"
|
|
228
|
-
[
|
|
229
|
-
[
|
|
240
|
+
[json]="child.json"
|
|
241
|
+
[baseline]="child.baseline"
|
|
230
242
|
[diff]="diff()"
|
|
243
|
+
[ignoreCase]="ignoreCase()"
|
|
231
244
|
[tree]="tree()"
|
|
232
245
|
[level]="level() + 1"
|
|
233
246
|
/>
|
|
234
247
|
}
|
|
235
248
|
}
|
|
236
|
-
`, isInline: true, styles: ["watt-json{cursor:default}.watt-json-row{position:relative}.watt-json-row:after{content:\"\";position:absolute;inset:0;border-radius:4px;background-color:#0000;pointer-events:none}.watt-json-row:hover:after{background-color:#0000001a;outline:1px solid var(--watt-color-neutral-grey-500);outline-offset:-1px}\n"], dependencies: [{ kind: "component", type: i1.VaterFlexComponent, selector: "vater-flex, [vater-flex]", inputs: ["autoSize"] }, { kind: "component", type: WattJsonRow, selector: "watt-json-row", inputs: ["label", "
|
|
249
|
+
`, isInline: true, styles: ["watt-json{cursor:default}.watt-json-row{position:relative}.watt-json-row:after{content:\"\";position:absolute;inset:0;border-radius:4px;background-color:#0000;pointer-events:none}.watt-json-row:hover:after{background-color:#0000001a;outline:1px solid var(--watt-color-neutral-grey-500);outline-offset:-1px}\n"], dependencies: [{ kind: "component", type: i1.VaterFlexComponent, selector: "vater-flex, [vater-flex]", inputs: ["autoSize"] }, { kind: "component", type: WattJsonRow, selector: "watt-json-row", inputs: ["label", "isBaseline", "isSame", "expanded", "value", "diff"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None, deferBlockDependencies: [() => [WattJson]] });
|
|
237
250
|
}
|
|
238
251
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: WattJson, decorators: [{
|
|
239
252
|
type: Component,
|
|
240
253
|
args: [{ selector: 'watt-json', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [VATER, WattJsonRow], host: { '[style.--watt-json-level]': 'level()' }, template: `
|
|
241
254
|
@if (!isRoot()) {
|
|
242
255
|
<vater-flex class="watt-json-row" direction="row" (click)="toggleExpanded()">
|
|
243
|
-
<watt-json-row
|
|
244
|
-
[label]="label()"
|
|
245
|
-
[isOriginal]="true"
|
|
246
|
-
[isSame]="isSame()"
|
|
247
|
-
[expanded]="expanded()"
|
|
248
|
-
[value]="left()"
|
|
249
|
-
/>
|
|
250
256
|
@if (diff()) {
|
|
251
257
|
<watt-json-row
|
|
252
258
|
[label]="label()"
|
|
253
|
-
[
|
|
259
|
+
[isBaseline]="true"
|
|
254
260
|
[isSame]="isSame()"
|
|
255
261
|
[expanded]="expanded()"
|
|
256
|
-
[value]="
|
|
262
|
+
[value]="baseline()"
|
|
263
|
+
[diff]="diff()"
|
|
257
264
|
/>
|
|
258
265
|
}
|
|
266
|
+
<watt-json-row
|
|
267
|
+
[label]="label()"
|
|
268
|
+
[isBaseline]="false"
|
|
269
|
+
[isSame]="isSame()"
|
|
270
|
+
[expanded]="expanded()"
|
|
271
|
+
[value]="json()"
|
|
272
|
+
[diff]="diff()"
|
|
273
|
+
/>
|
|
259
274
|
</vater-flex>
|
|
260
275
|
}
|
|
261
276
|
@defer (when expanded()) {
|
|
@@ -263,16 +278,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImpor
|
|
|
263
278
|
<watt-json
|
|
264
279
|
[hidden]="!expanded()"
|
|
265
280
|
[label]="child.key"
|
|
266
|
-
[
|
|
267
|
-
[
|
|
281
|
+
[json]="child.json"
|
|
282
|
+
[baseline]="child.baseline"
|
|
268
283
|
[diff]="diff()"
|
|
284
|
+
[ignoreCase]="ignoreCase()"
|
|
269
285
|
[tree]="tree()"
|
|
270
286
|
[level]="level() + 1"
|
|
271
287
|
/>
|
|
272
288
|
}
|
|
273
289
|
}
|
|
274
290
|
`, styles: ["watt-json{cursor:default}.watt-json-row{position:relative}.watt-json-row:after{content:\"\";position:absolute;inset:0;border-radius:4px;background-color:#0000;pointer-events:none}.watt-json-row:hover:after{background-color:#0000001a;outline:1px solid var(--watt-color-neutral-grey-500);outline-offset:-1px}\n"] }]
|
|
275
|
-
}], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }],
|
|
291
|
+
}], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], json: [{ type: i0.Input, args: [{ isSignal: true, alias: "json", required: false }] }], baseline: [{ type: i0.Input, args: [{ isSignal: true, alias: "baseline", required: false }] }], diff: [{ type: i0.Input, args: [{ isSignal: true, alias: "diff", required: false }] }], ignoreCase: [{ type: i0.Input, args: [{ isSignal: true, alias: "ignoreCase", required: false }] }], tree: [{ type: i0.Input, args: [{ isSignal: true, alias: "tree", required: true }] }], level: [{ type: i0.Input, args: [{ isSignal: true, alias: "level", required: false }] }] } });
|
|
276
292
|
|
|
277
293
|
//#region License
|
|
278
294
|
/**
|
|
@@ -298,9 +314,14 @@ class WattJsonViewer {
|
|
|
298
314
|
*/
|
|
299
315
|
json = input.required(...(ngDevMode ? [{ debugName: "json" }] : []));
|
|
300
316
|
/**
|
|
301
|
-
* Optional value to compare against. When provided, enables diff mode
|
|
317
|
+
* Optional baseline value to compare against. When provided, enables diff mode
|
|
318
|
+
* with the baseline on the left (red) and `json` on the right (green).
|
|
302
319
|
*/
|
|
303
320
|
compare = input(...(ngDevMode ? [undefined, { debugName: "compare" }] : []));
|
|
321
|
+
/**
|
|
322
|
+
* When true, string comparisons in diff mode are case-insensitive.
|
|
323
|
+
*/
|
|
324
|
+
ignoreCase = input(false, ...(ngDevMode ? [{ debugName: "ignoreCase" }] : []));
|
|
304
325
|
/**
|
|
305
326
|
* Maximum depth for `expandAll()`. Beyond this depth nodes start collapsed but can be
|
|
306
327
|
* expanded manually. Useful when dealing with large objects or circular references.
|
|
@@ -327,14 +348,15 @@ class WattJsonViewer {
|
|
|
327
348
|
maxDepth: this.maxDepth(),
|
|
328
349
|
}), ...(ngDevMode ? [{ debugName: "tree" }] : []));
|
|
329
350
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: WattJsonViewer, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
330
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.6", type: WattJsonViewer, isStandalone: true, selector: "watt-json-viewer", inputs: { json: { classPropertyName: "json", publicName: "json", isSignal: true, isRequired: true, transformFunction: null }, compare: { classPropertyName: "compare", publicName: "compare", isSignal: true, isRequired: false, transformFunction: null }, maxDepth: { classPropertyName: "maxDepth", publicName: "maxDepth", isSignal: true, isRequired: false, transformFunction: null }, initialExpanded: { classPropertyName: "initialExpanded", publicName: "initialExpanded", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
351
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.6", type: WattJsonViewer, isStandalone: true, selector: "watt-json-viewer", inputs: { json: { classPropertyName: "json", publicName: "json", isSignal: true, isRequired: true, transformFunction: null }, compare: { classPropertyName: "compare", publicName: "compare", isSignal: true, isRequired: false, transformFunction: null }, ignoreCase: { classPropertyName: "ignoreCase", publicName: "ignoreCase", isSignal: true, isRequired: false, transformFunction: null }, maxDepth: { classPropertyName: "maxDepth", publicName: "maxDepth", isSignal: true, isRequired: false, transformFunction: null }, initialExpanded: { classPropertyName: "initialExpanded", publicName: "initialExpanded", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
331
352
|
<watt-json
|
|
332
|
-
[
|
|
333
|
-
[
|
|
353
|
+
[baseline]="compare()"
|
|
354
|
+
[json]="json()"
|
|
334
355
|
[diff]="compare() !== undefined"
|
|
356
|
+
[ignoreCase]="ignoreCase()"
|
|
335
357
|
[tree]="tree()"
|
|
336
358
|
/>
|
|
337
|
-
`, isInline: true, dependencies: [{ kind: "component", type: WattJson, selector: "watt-json", inputs: ["label", "
|
|
359
|
+
`, isInline: true, dependencies: [{ kind: "component", type: WattJson, selector: "watt-json", inputs: ["label", "json", "baseline", "diff", "ignoreCase", "tree", "level"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
338
360
|
}
|
|
339
361
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: WattJsonViewer, decorators: [{
|
|
340
362
|
type: Component,
|
|
@@ -345,14 +367,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImpor
|
|
|
345
367
|
imports: [WattJson],
|
|
346
368
|
template: `
|
|
347
369
|
<watt-json
|
|
348
|
-
[
|
|
349
|
-
[
|
|
370
|
+
[baseline]="compare()"
|
|
371
|
+
[json]="json()"
|
|
350
372
|
[diff]="compare() !== undefined"
|
|
373
|
+
[ignoreCase]="ignoreCase()"
|
|
351
374
|
[tree]="tree()"
|
|
352
375
|
/>
|
|
353
376
|
`,
|
|
354
377
|
}]
|
|
355
|
-
}], propDecorators: { json: [{ type: i0.Input, args: [{ isSignal: true, alias: "json", required: true }] }], compare: [{ type: i0.Input, args: [{ isSignal: true, alias: "compare", required: false }] }], maxDepth: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxDepth", required: false }] }], initialExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialExpanded", required: false }] }] } });
|
|
378
|
+
}], propDecorators: { json: [{ type: i0.Input, args: [{ isSignal: true, alias: "json", required: true }] }], compare: [{ type: i0.Input, args: [{ isSignal: true, alias: "compare", required: false }] }], ignoreCase: [{ type: i0.Input, args: [{ isSignal: true, alias: "ignoreCase", required: false }] }], maxDepth: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxDepth", required: false }] }], initialExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialExpanded", required: false }] }] } });
|
|
356
379
|
|
|
357
380
|
//#region License
|
|
358
381
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energinet-watt-json-viewer.mjs","sources":["../../../libs/watt/package/json-viewer/watt-json.utils.ts","../../../libs/watt/package/json-viewer/watt-json-row.component.ts","../../../libs/watt/package/json-viewer/watt-json.component.ts","../../../libs/watt/package/json-viewer/watt-json-viewer.component.ts","../../../libs/watt/package/json-viewer/index.ts","../../../libs/watt/package/json-viewer/energinet-watt-json-viewer.ts"],"sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\n\n/** Compares two values. When deep is false, objects/arrays compare by type only. */\nexport function isEqual(a: unknown, b: unknown, { deep }: { deep: boolean }): boolean {\n try {\n if (typeof a !== typeof b) return false;\n if (typeof a !== 'object') return a === b;\n if (a === null || b === null) return a === b;\n const replacer = !deep ? (_: string, v: unknown) => (Array.isArray(v) ? [] : {}) : undefined;\n return JSON.stringify(a, replacer) === JSON.stringify(b, replacer);\n } catch {\n return a === b;\n }\n}\n\n/** Type guard that checks if a value is a non-empty array or object. */\nexport function isNonEmpty(value: unknown): value is Record<string, unknown> | unknown[] {\n return typeof value === 'object' && value !== null ? Object.keys(value).length > 0 : false;\n}\n\n/** Merges two arrays by alternating elements, preserving the order. */\nexport function interleave<T>(a: T[], b: T[]): T[] {\n return Array.from({ length: Math.max(a.length, b.length) })\n .flatMap((_, i) => [a[i], b[i]])\n .filter((k) => k !== undefined);\n}\n\n/** Truncates a string to maxLength, appending '…' if truncated. */\nexport function truncate(value: string, maxLength: number) {\n return value.length > maxLength ? value.slice(0, Math.max(maxLength - 1, 0)) + '…' : value;\n}\n\n/**\n * Generator that produces syntax-highlighted tokens for a JSON value.\n * Uses a character budget to limit output length, yielding tokens and\n * returning the remaining budget via the generator return value.\n */\nexport function* tokenize(\n value: unknown,\n budget: number\n): Generator<{ kind: string; value: string }, number> {\n /** Creates a token and deducts its length from the budget. */\n const token = (kind: string, value: string) => {\n budget -= value.length;\n return { kind, value };\n };\n\n if (typeof value === 'string') yield token('string', JSON.stringify(truncate(value, budget)));\n else if (typeof value !== 'object') yield token(typeof value, String(value));\n else if (value === null) yield token('null', String(null));\n else {\n const [firstKey] = Object.keys(value);\n const isArray = Array.isArray(value);\n yield token('punctuation', isArray ? '[' : '{');\n\n for (const [key, child] of Object.entries(value)) {\n if (key !== firstKey) yield token('punctuation', ', ');\n if (budget <= 0) {\n yield token('punctuation', '…');\n break;\n }\n\n if (!isArray) {\n yield token('key', key);\n yield token('punctuation', ': ');\n }\n\n budget = yield* tokenize(child, budget);\n }\n\n yield token('punctuation', isArray ? ']' : '}');\n }\n\n return budget;\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\nimport { WattIconComponent } from '@energinet/watt/icon';\nimport { isNonEmpty, tokenize } from './watt-json.utils';\n\n@Component({\n selector: 'watt-json-row',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [WattIconComponent],\n styles: `\n watt-json-row {\n position: relative;\n padding-left: calc(var(--watt-json-level) * 20px);\n padding-right: calc(var(--watt-json-level) * 20px);\n color: var(--watt-color-primary);\n }\n\n watt-json-row > watt-icon {\n position: absolute;\n top: 2px;\n transform: translateX(-100%);\n }\n\n .watt-json-row-added:not(:empty) {\n background-color: var(--watt-color-state-success-light);\n }\n\n .watt-json-row-removed:not(:empty) {\n background-color: var(--watt-color-state-danger-light);\n }\n\n .watt-json-function,\n .watt-json-undefined {\n color: var(--watt-on-light-low-emphasis);\n }\n\n .watt-json-punctuation {\n color: var(--watt-on-light-medium-emphasis);\n }\n\n .watt-json-key {\n color: var(--watt-color-primary);\n }\n\n .watt-json-string {\n color: var(--watt-color-state-success);\n }\n\n .watt-json-number {\n color: var(--watt-color-state-warning);\n }\n\n .watt-json-boolean,\n .watt-json-null {\n color: var(--watt-color-state-danger);\n }\n `,\n host: {\n '[class.watt-json-row-added]': '!isOriginal() && !isSame()',\n '[class.watt-json-row-removed]': 'isOriginal() && !isSame()',\n },\n template: `\n @if (value() !== undefined) {\n @if (expandable()) {\n <watt-icon size=\"s\" [name]=\"expanded() ? 'down' : 'right'\" />\n }\n <span>{{ label() }}: </span>\n <span [hidden]=\"expanded()\">\n @for (token of tokens(); track $index) {\n <span [class]=\"'watt-json-' + token.kind\">{{ token.value }}</span>\n }\n </span>\n }\n `,\n})\nexport class WattJsonRow {\n readonly label = input<string>();\n readonly isOriginal = input.required<boolean>();\n readonly isSame = input.required<boolean>();\n readonly expanded = input.required<boolean>();\n readonly value = input<unknown>();\n\n protected readonly expandable = computed(() => isNonEmpty(this.value()));\n protected readonly tokens = computed(() => [\n ...tokenize(this.value(), this.expandable() ? 80 : Infinity),\n ]);\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n linkedSignal,\n} from '@angular/core';\nimport { VATER } from '@energinet/watt/vater';\nimport { WattJsonRow } from './watt-json-row.component';\nimport { interleave, isNonEmpty, isEqual } from './watt-json.utils';\n\nexport type TreeState = {\n expanded: boolean;\n maxDepth: number;\n};\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'watt-json',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [VATER, WattJsonRow],\n styles: `\n watt-json {\n cursor: default;\n }\n\n .watt-json-row {\n position: relative;\n }\n\n .watt-json-row::after {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: 4px;\n background-color: rgba(0, 0, 0, 0);\n pointer-events: none;\n }\n\n .watt-json-row:hover::after {\n background-color: rgba(0, 0, 0, 0.1);\n outline: 1px solid var(--watt-color-neutral-grey-500);\n outline-offset: -1px;\n }\n `,\n host: { '[style.--watt-json-level]': 'level()' },\n template: `\n @if (!isRoot()) {\n <vater-flex class=\"watt-json-row\" direction=\"row\" (click)=\"toggleExpanded()\">\n <watt-json-row\n [label]=\"label()\"\n [isOriginal]=\"true\"\n [isSame]=\"isSame()\"\n [expanded]=\"expanded()\"\n [value]=\"left()\"\n />\n @if (diff()) {\n <watt-json-row\n [label]=\"label()\"\n [isOriginal]=\"false\"\n [isSame]=\"isSame()\"\n [expanded]=\"expanded()\"\n [value]=\"right()\"\n />\n }\n </vater-flex>\n }\n @defer (when expanded()) {\n @for (child of children(); track child.key) {\n <watt-json\n [hidden]=\"!expanded()\"\n [label]=\"child.key\"\n [left]=\"child.left\"\n [right]=\"child.right\"\n [diff]=\"diff()\"\n [tree]=\"tree()\"\n [level]=\"level() + 1\"\n />\n }\n }\n `,\n})\nexport class WattJson {\n readonly label = input<string>();\n readonly left = input<unknown>();\n readonly right = input<unknown>();\n readonly diff = input(false);\n readonly tree = input.required<TreeState>();\n readonly level = input(0);\n\n protected readonly toMap = (v: unknown) => new Map(Object.entries(isNonEmpty(v) ? v : []));\n protected readonly children = computed(() => {\n const left = this.toMap(this.left());\n const right = this.toMap(this.right());\n const keys = new Set(interleave([...left.keys()], [...right.keys()]));\n return [...keys].map((key) => ({ key, left: left.get(key), right: right.get(key) }));\n });\n\n protected readonly isRoot = computed(() => this.level() === 0);\n protected readonly isSame = computed(() => {\n if (!this.diff()) return true;\n return isEqual(this.left(), this.right(), { deep: !this.expanded() });\n });\n\n protected readonly expandable = computed(() => this.children().length > 0);\n protected readonly expanded = linkedSignal({\n source: this.tree,\n computation: (t) =>\n this.level() < t.maxDepth && t.expanded ? this.expandable() : this.isRoot(),\n });\n\n protected readonly toggleExpanded = () =>\n // Prevent toggle when text is being selected\n this.expanded.update((e) => (getSelection()?.isCollapsed && this.expandable() ? !e : e));\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport { ChangeDetectionStrategy, Component, computed, input, linkedSignal } from '@angular/core';\nimport { TreeState, WattJson } from './watt-json.component';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'watt-json-viewer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [WattJson],\n template: `\n <watt-json\n [left]=\"json()\"\n [right]=\"compare()\"\n [diff]=\"compare() !== undefined\"\n [tree]=\"tree()\"\n />\n `,\n})\nexport class WattJsonViewer {\n /**\n * The JSON data to display. Accepts any value that can be serialized by JSON.stringify.\n */\n readonly json = input.required<unknown>();\n\n /**\n * Optional value to compare against. When provided, enables diff mode with side-by-side view.\n */\n readonly compare = input<unknown>();\n\n /**\n * Maximum depth for `expandAll()`. Beyond this depth nodes start collapsed but can be\n * expanded manually. Useful when dealing with large objects or circular references.\n */\n readonly maxDepth = input(50);\n\n /**\n * Whether the tree starts expanded or collapsed.\n */\n readonly initialExpanded = input(false);\n\n /**\n * Expands all nodes up to `maxDepth`.\n */\n readonly expandAll = () => this.expanded.set(true);\n\n /**\n * Collapses all nodes.\n */\n readonly collapseAll = () => this.expanded.set(false);\n\n // Use equality function + computed object to always return a new reference, even\n // when `expanded` is \"updated\" to its current value. This ensures that \"Expand all\"\n // and \"Collapse all\" always works, regardless of the current state of `expanded`.\n protected readonly expanded = linkedSignal(this.initialExpanded, { equal: () => false });\n protected readonly tree = computed<TreeState>(() => ({\n expanded: this.expanded(),\n maxDepth: this.maxDepth(),\n }));\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport { WattJsonViewer } from './watt-json-viewer.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"energinet-watt-json-viewer.mjs","sources":["../../../libs/watt/package/json-viewer/watt-json.utils.ts","../../../libs/watt/package/json-viewer/watt-json-row.component.ts","../../../libs/watt/package/json-viewer/watt-json.component.ts","../../../libs/watt/package/json-viewer/watt-json-viewer.component.ts","../../../libs/watt/package/json-viewer/index.ts","../../../libs/watt/package/json-viewer/energinet-watt-json-viewer.ts"],"sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\n//\n\n/** Compares two values. When deep is false, objects/arrays compare by type only. */\nexport function isEqual(a: unknown, b: unknown, { deep = true, ignoreCase = false } = {}): boolean {\n if (typeof a !== typeof b) return false;\n const eq = (a: string, b: string) => (ignoreCase ? a.toLowerCase() === b.toLowerCase() : a === b);\n const replacer = (_: string, v: unknown) => {\n if (Array.isArray(v)) return deep ? v : [];\n if (v && typeof v === 'object') return deep ? Object.fromEntries(Object.entries(v).sort()) : {};\n return v;\n };\n try {\n return eq(JSON.stringify(a, replacer), JSON.stringify(b, replacer));\n } catch {\n return a === b;\n }\n}\n\n/** Type guard that checks if a value is a non-empty array or object. */\nexport function isNonEmpty(value: unknown): value is Record<string, unknown> | unknown[] {\n return typeof value === 'object' && value !== null ? Object.keys(value).length > 0 : false;\n}\n\n/** Merges two arrays by alternating elements, preserving the order. */\nexport function interleave<T>(a: T[], b: T[]): T[] {\n return Array.from({ length: Math.max(a.length, b.length) })\n .flatMap((_, i) => [a[i], b[i]])\n .filter((k) => k !== undefined);\n}\n\n/** Truncates a string to maxLength, appending '…' if truncated. */\nexport function truncate(value: string, maxLength: number) {\n return value.length > maxLength ? value.slice(0, Math.max(maxLength - 1, 0)) + '…' : value;\n}\n\n/**\n * Generator that produces syntax-highlighted tokens for a JSON value.\n * Uses a character budget to limit output length, yielding tokens and\n * returning the remaining budget via the generator return value.\n */\nexport function* tokenize(\n value: unknown,\n budget: number\n): Generator<{ kind: string; value: string }, number> {\n /** Creates a token and deducts its length from the budget. */\n const token = (kind: string, value: string) => {\n budget -= value.length;\n return { kind, value };\n };\n\n if (typeof value === 'string') yield token('string', JSON.stringify(truncate(value, budget)));\n else if (typeof value !== 'object') yield token(typeof value, String(value));\n else if (value === null) yield token('null', String(null));\n else {\n const [firstKey] = Object.keys(value);\n const isArray = Array.isArray(value);\n yield token('punctuation', isArray ? '[' : '{');\n\n for (const [key, child] of Object.entries(value)) {\n if (key !== firstKey) yield token('punctuation', ', ');\n if (budget <= 0) {\n yield token('punctuation', '…');\n break;\n }\n\n if (!isArray) {\n yield token('key', key);\n yield token('punctuation', ': ');\n }\n\n budget = yield* tokenize(child, budget);\n }\n\n yield token('punctuation', isArray ? ']' : '}');\n }\n\n return budget;\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\nimport { WattIconComponent } from '@energinet/watt/icon';\nimport { isNonEmpty, tokenize } from './watt-json.utils';\n\n@Component({\n selector: 'watt-json-row',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [WattIconComponent],\n styles: `\n watt-json-row {\n position: relative;\n padding-left: calc(var(--watt-json-level) * 20px);\n padding-right: calc(var(--watt-json-level) * 20px);\n color: var(--watt-color-primary);\n }\n\n watt-json-row > watt-icon {\n position: absolute;\n top: 2px;\n transform: translateX(-100%);\n }\n\n .watt-json-row-added:not(:empty) {\n background-color: var(--watt-color-state-success-light);\n }\n\n .watt-json-row-removed:not(:empty) {\n background-color: var(--watt-color-state-danger-light);\n }\n\n .watt-json-function,\n .watt-json-undefined {\n color: var(--watt-on-light-low-emphasis);\n }\n\n .watt-json-punctuation {\n color: var(--watt-on-light-medium-emphasis);\n }\n\n .watt-json-key {\n color: var(--watt-color-primary);\n }\n\n .watt-json-string {\n color: var(--watt-color-state-success);\n }\n\n .watt-json-number {\n color: var(--watt-color-state-warning);\n }\n\n .watt-json-boolean,\n .watt-json-null {\n color: var(--watt-color-state-danger);\n }\n `,\n host: {\n '[class.watt-json-row-added]': '!isBaseline() && !isSame()',\n '[class.watt-json-row-removed]': 'isBaseline() && !isSame()',\n },\n template: `\n @if (value() !== undefined) {\n @if (expandable()) {\n <watt-icon size=\"s\" [name]=\"expanded() ? 'down' : 'right'\" />\n }\n <span>{{ label() }}: </span>\n <span [hidden]=\"expandable() && expanded()\">\n @for (token of tokens(); track $index) {\n <span [class]=\"'watt-json-' + token.kind\">{{ token.value }}</span>\n }\n </span>\n }\n `,\n})\nexport class WattJsonRow {\n readonly label = input<string>();\n readonly isBaseline = input.required<boolean>();\n readonly isSame = input.required<boolean>();\n readonly expanded = input.required<boolean>();\n readonly value = input<unknown>();\n readonly diff = input(false);\n\n protected readonly expandable = computed(() => isNonEmpty(this.value()));\n protected readonly budget = computed(() => (this.diff() ? 40 : 80));\n protected readonly tokens = computed(() => [\n ...tokenize(this.value(), this.expandable() ? this.budget() : Infinity),\n ]);\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n linkedSignal,\n} from '@angular/core';\nimport { VATER } from '@energinet/watt/vater';\nimport { WattJsonRow } from './watt-json-row.component';\nimport { interleave, isNonEmpty, isEqual } from './watt-json.utils';\n\nexport type TreeState = {\n expanded: boolean;\n maxDepth: number;\n};\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'watt-json',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [VATER, WattJsonRow],\n styles: `\n watt-json {\n cursor: default;\n }\n\n .watt-json-row {\n position: relative;\n }\n\n .watt-json-row::after {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: 4px;\n background-color: rgba(0, 0, 0, 0);\n pointer-events: none;\n }\n\n .watt-json-row:hover::after {\n background-color: rgba(0, 0, 0, 0.1);\n outline: 1px solid var(--watt-color-neutral-grey-500);\n outline-offset: -1px;\n }\n `,\n host: { '[style.--watt-json-level]': 'level()' },\n template: `\n @if (!isRoot()) {\n <vater-flex class=\"watt-json-row\" direction=\"row\" (click)=\"toggleExpanded()\">\n @if (diff()) {\n <watt-json-row\n [label]=\"label()\"\n [isBaseline]=\"true\"\n [isSame]=\"isSame()\"\n [expanded]=\"expanded()\"\n [value]=\"baseline()\"\n [diff]=\"diff()\"\n />\n }\n <watt-json-row\n [label]=\"label()\"\n [isBaseline]=\"false\"\n [isSame]=\"isSame()\"\n [expanded]=\"expanded()\"\n [value]=\"json()\"\n [diff]=\"diff()\"\n />\n </vater-flex>\n }\n @defer (when expanded()) {\n @for (child of children(); track child.key) {\n <watt-json\n [hidden]=\"!expanded()\"\n [label]=\"child.key\"\n [json]=\"child.json\"\n [baseline]=\"child.baseline\"\n [diff]=\"diff()\"\n [ignoreCase]=\"ignoreCase()\"\n [tree]=\"tree()\"\n [level]=\"level() + 1\"\n />\n }\n }\n `,\n})\nexport class WattJson {\n readonly label = input<string>();\n readonly json = input<unknown>();\n readonly baseline = input<unknown>();\n readonly diff = input(false);\n readonly ignoreCase = input(false);\n readonly tree = input.required<TreeState>();\n readonly level = input(0);\n\n protected readonly toMap = (v: unknown) => new Map(Object.entries(isNonEmpty(v) ? v : []));\n protected readonly children = computed(() => {\n const json = this.toMap(this.json());\n const baseline = this.toMap(this.baseline());\n const keys = new Set(interleave([...json.keys()], [...baseline.keys()]));\n return [...keys].map((key) => ({ key, json: json.get(key), baseline: baseline.get(key) }));\n });\n\n protected readonly isRoot = computed(() => this.level() === 0);\n protected readonly isSame = computed(() => {\n if (!this.diff()) return true;\n return isEqual(this.baseline(), this.json(), {\n deep: !this.expanded(),\n ignoreCase: this.ignoreCase(),\n });\n });\n\n protected readonly expandable = computed(() => this.children().length > 0);\n protected readonly expanded = linkedSignal({\n source: this.tree,\n computation: (t) =>\n this.level() < t.maxDepth && t.expanded ? this.expandable() : this.isRoot(),\n });\n\n protected readonly toggleExpanded = () =>\n // Prevent toggle when text is being selected\n this.expanded.update((e) => (getSelection()?.isCollapsed && this.expandable() ? !e : e));\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport { ChangeDetectionStrategy, Component, computed, input, linkedSignal } from '@angular/core';\nimport { TreeState, WattJson } from './watt-json.component';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'watt-json-viewer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [WattJson],\n template: `\n <watt-json\n [baseline]=\"compare()\"\n [json]=\"json()\"\n [diff]=\"compare() !== undefined\"\n [ignoreCase]=\"ignoreCase()\"\n [tree]=\"tree()\"\n />\n `,\n})\nexport class WattJsonViewer {\n /**\n * The JSON data to display. Accepts any value that can be serialized by JSON.stringify.\n */\n readonly json = input.required<unknown>();\n\n /**\n * Optional baseline value to compare against. When provided, enables diff mode\n * with the baseline on the left (red) and `json` on the right (green).\n */\n readonly compare = input<unknown>();\n\n /**\n * When true, string comparisons in diff mode are case-insensitive.\n */\n readonly ignoreCase = input(false);\n\n /**\n * Maximum depth for `expandAll()`. Beyond this depth nodes start collapsed but can be\n * expanded manually. Useful when dealing with large objects or circular references.\n */\n readonly maxDepth = input(50);\n\n /**\n * Whether the tree starts expanded or collapsed.\n */\n readonly initialExpanded = input(false);\n\n /**\n * Expands all nodes up to `maxDepth`.\n */\n readonly expandAll = () => this.expanded.set(true);\n\n /**\n * Collapses all nodes.\n */\n readonly collapseAll = () => this.expanded.set(false);\n\n // Use equality function + computed object to always return a new reference, even\n // when `expanded` is \"updated\" to its current value. This ensures that \"Expand all\"\n // and \"Collapse all\" always works, regardless of the current state of `expanded`.\n protected readonly expanded = linkedSignal(this.initialExpanded, { equal: () => false });\n protected readonly tree = computed<TreeState>(() => ({\n expanded: this.expanded(),\n maxDepth: this.maxDepth(),\n }));\n}\n","//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport { WattJsonViewer } from './watt-json-viewer.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -10,7 +10,7 @@ type WattBadgeSize = 'normal' | 'large';
|
|
|
10
10
|
declare class WattBadgeComponent {
|
|
11
11
|
type: _angular_core.InputSignal<WattBadgeType>;
|
|
12
12
|
size: _angular_core.InputSignal<WattBadgeSize>;
|
|
13
|
-
icon: _angular_core.InputSignal<"warning" | "success" | "danger" | "info" | "search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | undefined>;
|
|
13
|
+
icon: _angular_core.InputSignal<"warning" | "success" | "danger" | "info" | "search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | undefined>;
|
|
14
14
|
badgeType: _angular_core.Signal<string>;
|
|
15
15
|
isLarge: _angular_core.Signal<boolean>;
|
|
16
16
|
iconSize: _angular_core.Signal<WattIconSize>;
|
|
@@ -3,7 +3,7 @@ import * as _angular_core from '@angular/core';
|
|
|
3
3
|
type WattButtonType = 'button' | 'reset' | 'submit';
|
|
4
4
|
type WattButtonSize = 'small' | 'medium';
|
|
5
5
|
declare class WattButtonComponent {
|
|
6
|
-
icon: _angular_core.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | undefined>;
|
|
6
|
+
icon: _angular_core.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | undefined>;
|
|
7
7
|
variant: _angular_core.InputSignal<"primary" | "secondary" | "text" | "icon" | "selection">;
|
|
8
8
|
size: _angular_core.InputSignal<WattButtonSize>;
|
|
9
9
|
type: _angular_core.InputSignal<WattButtonType>;
|
|
@@ -6,7 +6,7 @@ import { WattDatepickerIntlService } from '@energinet/watt/picker/datepicker';
|
|
|
6
6
|
|
|
7
7
|
declare class WattActionChipComponent {
|
|
8
8
|
disabled: _angular_core.InputSignal<boolean>;
|
|
9
|
-
icon: _angular_core.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on">;
|
|
9
|
+
icon: _angular_core.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase">;
|
|
10
10
|
action: _angular_core.OutputEmitterRef<void>;
|
|
11
11
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<WattActionChipComponent, never>;
|
|
12
12
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<WattActionChipComponent, "watt-action-chip", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": true; "isSignal": true; }; }, { "action": "action"; }, never, ["*"], true, never>;
|
|
@@ -46,7 +46,7 @@ declare class WattDataTableComponent {
|
|
|
46
46
|
count: _angular_core.InputSignal<number | undefined>;
|
|
47
47
|
autoSize: _angular_core.InputSignal<boolean>;
|
|
48
48
|
variant: _angular_core.InputSignal<WATT_CARD_VARIANT>;
|
|
49
|
-
emptyStateIcon: _angular_core.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "custom-power" | "custom-explore" | "custom-no-results">;
|
|
49
|
+
emptyStateIcon: _angular_core.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | "custom-power" | "custom-explore" | "custom-no-results">;
|
|
50
50
|
clear: _angular_core.OutputEmitterRef<void>;
|
|
51
51
|
pageChanged: _angular_core.OutputEmitterRef<PageEvent>;
|
|
52
52
|
retry: _angular_core.OutputEmitterRef<void>;
|
|
@@ -6,7 +6,7 @@ import { WattIconSize } from '@energinet/watt/icon';
|
|
|
6
6
|
* `import { WattEmptyStateComponent } from '@energinet/watt/empty-state';`
|
|
7
7
|
*/
|
|
8
8
|
declare class WattEmptyStateComponent {
|
|
9
|
-
icon: i0.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "custom-power" | "custom-explore" | "custom-no-results" | "custom-cooperation" | undefined>;
|
|
9
|
+
icon: i0.InputSignal<"search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | "custom-power" | "custom-explore" | "custom-no-results" | "custom-cooperation" | undefined>;
|
|
10
10
|
size: i0.InputSignal<"small" | "large">;
|
|
11
11
|
title: i0.InputSignal<string>;
|
|
12
12
|
message: i0.InputSignal<string>;
|
|
@@ -98,6 +98,7 @@ declare const WattIconMap: {
|
|
|
98
98
|
factory: string;
|
|
99
99
|
nest_eco_leaf: string;
|
|
100
100
|
flash_on: string;
|
|
101
|
+
matchCase: string;
|
|
101
102
|
};
|
|
102
103
|
|
|
103
104
|
type WattIcon = keyof typeof WattIconMap;
|
|
@@ -105,7 +106,7 @@ type WattIconSize = 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl';
|
|
|
105
106
|
type WattIconState = 'default' | 'success' | 'danger' | 'warning' | 'info';
|
|
106
107
|
declare class WattIconComponent {
|
|
107
108
|
/** Name of an icon within the font set. */
|
|
108
|
-
name: _angular_core.InputSignal<"search" | "remove" | "edit" | "redo" | "undo" | "close" | "cancel" | "settings" | "email" | "link" | "payments" | "forward" | "menu" | "logout" | "help" | "refresh" | "language" | "send" | "info" | "feedback" | "upload" | "download" | "print" | "preview" | "article" | "contract" | "power" | "notifications" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "success" | "danger" | "warning" | "filter" | "plus" | "minus" | "removeForever" | "checkmark" | "user" | "contentCopy" | "date" | "time" | "markEmailUnread" | "openInNew" | "monetization" | "forwardMessage" | "moreVertical" | "login" | "alternateEmail" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "save" | "fileDownload" | "fileUpload" | "attachFile" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | undefined>;
|
|
109
|
+
name: _angular_core.InputSignal<"search" | "remove" | "edit" | "redo" | "undo" | "close" | "cancel" | "settings" | "email" | "link" | "payments" | "forward" | "menu" | "logout" | "help" | "refresh" | "language" | "send" | "info" | "feedback" | "upload" | "download" | "print" | "preview" | "article" | "contract" | "power" | "notifications" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "success" | "danger" | "warning" | "filter" | "plus" | "minus" | "removeForever" | "checkmark" | "user" | "contentCopy" | "date" | "time" | "markEmailUnread" | "openInNew" | "monetization" | "forwardMessage" | "moreVertical" | "login" | "alternateEmail" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "save" | "fileDownload" | "fileUpload" | "attachFile" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "matchCase" | undefined>;
|
|
109
110
|
/** Accessible label for the icon. */
|
|
110
111
|
label: _angular_core.InputSignal<string | undefined>;
|
|
111
112
|
/** Size of the icon. */
|
|
@@ -11,9 +11,14 @@ declare class WattJsonViewer {
|
|
|
11
11
|
*/
|
|
12
12
|
readonly json: _angular_core.InputSignal<unknown>;
|
|
13
13
|
/**
|
|
14
|
-
* Optional value to compare against. When provided, enables diff mode
|
|
14
|
+
* Optional baseline value to compare against. When provided, enables diff mode
|
|
15
|
+
* with the baseline on the left (red) and `json` on the right (green).
|
|
15
16
|
*/
|
|
16
17
|
readonly compare: _angular_core.InputSignal<unknown>;
|
|
18
|
+
/**
|
|
19
|
+
* When true, string comparisons in diff mode are case-insensitive.
|
|
20
|
+
*/
|
|
21
|
+
readonly ignoreCase: _angular_core.InputSignal<boolean>;
|
|
17
22
|
/**
|
|
18
23
|
* Maximum depth for `expandAll()`. Beyond this depth nodes start collapsed but can be
|
|
19
24
|
* expanded manually. Useful when dealing with large objects or circular references.
|
|
@@ -34,7 +39,7 @@ declare class WattJsonViewer {
|
|
|
34
39
|
protected readonly expanded: _angular_core.WritableSignal<boolean>;
|
|
35
40
|
protected readonly tree: _angular_core.Signal<TreeState>;
|
|
36
41
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<WattJsonViewer, never>;
|
|
37
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<WattJsonViewer, "watt-json-viewer", never, { "json": { "alias": "json"; "required": true; "isSignal": true; }; "compare": { "alias": "compare"; "required": false; "isSignal": true; }; "maxDepth": { "alias": "maxDepth"; "required": false; "isSignal": true; }; "initialExpanded": { "alias": "initialExpanded"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
42
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<WattJsonViewer, "watt-json-viewer", never, { "json": { "alias": "json"; "required": true; "isSignal": true; }; "compare": { "alias": "compare"; "required": false; "isSignal": true; }; "ignoreCase": { "alias": "ignoreCase"; "required": false; "isSignal": true; }; "maxDepth": { "alias": "maxDepth"; "required": false; "isSignal": true; }; "initialExpanded": { "alias": "initialExpanded"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
38
43
|
}
|
|
39
44
|
|
|
40
45
|
export { WattJsonViewer };
|
|
@@ -35,7 +35,7 @@ declare class WattModalComponent {
|
|
|
35
35
|
/** Whether the dialog should restore focus to the previously-focused element, after it's closed. */
|
|
36
36
|
restoreFocus: _angular_core.InputSignal<boolean>;
|
|
37
37
|
/** Icon displayed next to the modal title. */
|
|
38
|
-
titleIcon: _angular_core.InputSignal<"filter" | "close" | "article" | "link" | "menu" | "search" | "time" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "email" | "markEmailUnread" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | undefined>;
|
|
38
|
+
titleIcon: _angular_core.InputSignal<"filter" | "close" | "article" | "link" | "menu" | "search" | "time" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "email" | "markEmailUnread" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | undefined>;
|
|
39
39
|
/** Whether the modal should open automatically when rendered. */
|
|
40
40
|
autoOpen: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
41
41
|
closed: _angular_core.OutputEmitterRef<boolean>;
|
|
@@ -10,7 +10,7 @@ declare class WattTextFieldComponent implements ControlValueAccessor, AfterViewI
|
|
|
10
10
|
placeholder: _angular_core.InputSignal<string>;
|
|
11
11
|
label: _angular_core.InputSignal<string>;
|
|
12
12
|
tooltip: _angular_core.InputSignal<string>;
|
|
13
|
-
prefix: _angular_core.InputSignal<"email" | "filter" | "search" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | undefined>;
|
|
13
|
+
prefix: _angular_core.InputSignal<"email" | "filter" | "search" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "danger" | "warning" | "success" | "info" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | undefined>;
|
|
14
14
|
size: _angular_core.InputSignal<string | number | null>;
|
|
15
15
|
maxLength: _angular_core.InputSignal<string | number | null>;
|
|
16
16
|
formControl: _angular_core.InputSignal<FormControl<any>>;
|
|
@@ -14,7 +14,7 @@ declare class WattValidationMessageComponent implements AfterViewInit {
|
|
|
14
14
|
private elementRef;
|
|
15
15
|
label: _angular_core.InputSignal<string>;
|
|
16
16
|
message: _angular_core.InputSignal<string>;
|
|
17
|
-
icon: _angular_core.InputSignal<"info" | "warning" | "success" | "danger" | "search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | undefined>;
|
|
17
|
+
icon: _angular_core.InputSignal<"info" | "warning" | "success" | "danger" | "search" | "filter" | "plus" | "minus" | "edit" | "redo" | "undo" | "remove" | "removeForever" | "close" | "cancel" | "checkmark" | "user" | "settings" | "contentCopy" | "date" | "time" | "email" | "markEmailUnread" | "link" | "openInNew" | "monetization" | "payments" | "forwardMessage" | "forward" | "menu" | "moreVertical" | "logout" | "login" | "help" | "alternateEmail" | "refresh" | "language" | "pendingActions" | "toggleOn" | "toggleOff" | "personCheck" | "send" | "left" | "right" | "up" | "down" | "arrowDropDown" | "arrowRightAlt" | "arrowLeftAlt" | "feedback" | "save" | "upload" | "download" | "fileDownload" | "fileUpload" | "print" | "preview" | "attachFile" | "article" | "contract" | "power" | "location" | "smartDisplay" | "windmill" | "solarPower" | "priorityHigh" | "notifications" | "notificationsUnread" | "horizontalRule" | "wrongLocation" | "heatPump" | "inventory" | "globe" | "calculate" | "bar_chart_4_bars" | "view_list" | "view_stream" | "construction" | "factory" | "nest_eco_leaf" | "flash_on" | "matchCase" | undefined>;
|
|
18
18
|
type: _angular_core.InputSignal<WattValidationMessageType>;
|
|
19
19
|
size: _angular_core.InputSignal<WattValidationMessageSize>;
|
|
20
20
|
autoScrollIntoView: _angular_core.InputSignal<boolean>;
|